feat(tui): removed cursor positioning and refactored TUI rendering with explicit env defaults

- Removed getCursorPosition() method from Component interface and implementations, eliminating hardware cursor positioning support.
- Changed PI_HARDWARE_CURSOR environment variable default from implicit true to explicit '1' with fallback pattern.
- Changed PI_CLEAR_ON_SHRINK environment variable default from implicit false to explicit '0' with fallback pattern.
- Added screen clearing on TUI startup to prevent shell prompts from bleeding into first rendered frame.
- Refactored full-render logic into reusable fullRender() helper function.
This commit is contained in:
can1357
2026-02-06 04:35:16 +01:00
parent 3240318338
commit 7222bc1eae
23 changed files with 282 additions and 398 deletions
+7
View File
@@ -5,6 +5,13 @@ export { Ellipsis, extractSegments, sliceWithWidth, truncateToWidth, wrapTextWit
// Pre-allocated space buffer for padding
const SPACE_BUFFER = " ".repeat(512);
/*
* Replace tabs with 3 spaces for consistent rendering.
*/
export function replaceTabs(text: string): string {
return text.replaceAll("\t", " ");
}
/**
* Returns a string of n spaces. Uses a pre-allocated buffer for efficiency.
*/