4runr-os 2.0.60 → 2.0.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ui/v5/index.d.ts.map +1 -1
- package/dist/ui/v5/index.js +63 -21
- package/dist/ui/v5/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/v5/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;GAoBG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/v5/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;GAoBG;AAeH,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,2BAA2B,EAAE,OAAO,GAAG,SAAS,CAAC;CACtD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAyQlD"}
|
package/dist/ui/v5/index.js
CHANGED
|
@@ -28,6 +28,7 @@ import { UIKernel } from './kernel/kernel.js';
|
|
|
28
28
|
import { ResizeController } from './resize/resizeController.js';
|
|
29
29
|
import { safeRender, getLayoutVersion } from './renderGate.js';
|
|
30
30
|
import { handleDebugCommand } from './debug/debugCommands.js';
|
|
31
|
+
import { getViewport } from './viewport/getViewport.js';
|
|
31
32
|
/**
|
|
32
33
|
* Start V5 TUI Display Kernel
|
|
33
34
|
*/
|
|
@@ -55,7 +56,7 @@ export async function startV5Shell() {
|
|
|
55
56
|
if (process.stdin.isTTY && !process.stdin.isRaw) {
|
|
56
57
|
process.stdin.setRawMode(true);
|
|
57
58
|
}
|
|
58
|
-
// Create screen
|
|
59
|
+
// Create screen - blessed will detect terminal size automatically
|
|
59
60
|
screen = blessed.screen({
|
|
60
61
|
smartCSR: true,
|
|
61
62
|
fastCSR: false,
|
|
@@ -64,12 +65,23 @@ export async function startV5Shell() {
|
|
|
64
65
|
autoPadding: false,
|
|
65
66
|
dockBorders: false,
|
|
66
67
|
});
|
|
68
|
+
// CRITICAL: Override blessed's program.cols/rows to force safe dimensions
|
|
69
|
+
// This prevents blessed from rendering beyond safe bounds
|
|
70
|
+
const vp = getViewport(screen);
|
|
71
|
+
const screenProgram = screen.program;
|
|
72
|
+
if (screenProgram) {
|
|
73
|
+
// Override the actual terminal dimensions that blessed uses
|
|
74
|
+
const originalCols = screenProgram.cols;
|
|
75
|
+
const originalRows = screenProgram.rows;
|
|
76
|
+
screenProgram.cols = vp.safeCols;
|
|
77
|
+
screenProgram.rows = vp.safeRows;
|
|
78
|
+
process.stderr.write(`[V5] Forced screen dimensions: ${vp.safeCols}x${vp.safeRows} (was ${originalCols}x${originalRows})\n`);
|
|
79
|
+
}
|
|
67
80
|
// CRITICAL: Attach runtime keep-alive AFTER screen creation
|
|
68
81
|
attachRuntime(screen);
|
|
69
82
|
// Hide cursor initially
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
program.hideCursor();
|
|
83
|
+
if (screenProgram && typeof screenProgram.hideCursor === 'function') {
|
|
84
|
+
screenProgram.hideCursor();
|
|
73
85
|
}
|
|
74
86
|
// Wait a tick for screen to initialize
|
|
75
87
|
await new Promise(resolve => setImmediate(resolve));
|
|
@@ -96,20 +108,37 @@ export async function startV5Shell() {
|
|
|
96
108
|
cleanup();
|
|
97
109
|
process.exit(0);
|
|
98
110
|
});
|
|
99
|
-
// Handle command input via
|
|
100
|
-
// Use screen.key() to capture all keys when command widget is focused
|
|
111
|
+
// Handle command input via raw stdin (like V3) - more reliable in browser terminals
|
|
101
112
|
let commandBuffer = '';
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
if (!
|
|
113
|
+
const PROMPT = '4runr> ';
|
|
114
|
+
// Ensure stdin is ready
|
|
115
|
+
if (process.stdin.isTTY) {
|
|
116
|
+
if (!process.stdin.isRaw) {
|
|
117
|
+
process.stdin.setRawMode(true);
|
|
118
|
+
}
|
|
119
|
+
process.stdin.setEncoding('utf8');
|
|
120
|
+
if (process.stdin.isPaused()) {
|
|
121
|
+
process.stdin.resume();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Handle stdin data directly (more reliable than blessed keypress in browser terminals)
|
|
125
|
+
const stdinHandler = (data) => {
|
|
126
|
+
const input = data.toString();
|
|
127
|
+
// Ctrl+C
|
|
128
|
+
if (input === '\x03') {
|
|
129
|
+
process.stderr.write('\n[V5] Ctrl+C pressed - exiting...\n');
|
|
130
|
+
cleanup();
|
|
131
|
+
process.exit(0);
|
|
106
132
|
return;
|
|
107
|
-
|
|
108
|
-
|
|
133
|
+
}
|
|
134
|
+
// Enter key
|
|
135
|
+
if (input === '\r' || input === '\n') {
|
|
109
136
|
const command = commandBuffer.trim();
|
|
110
137
|
commandBuffer = '';
|
|
111
|
-
// Update command widget display
|
|
112
|
-
widgets
|
|
138
|
+
// Update command widget display
|
|
139
|
+
if (widgets?.command) {
|
|
140
|
+
widgets.command.setContent(PROMPT);
|
|
141
|
+
}
|
|
113
142
|
// Handle debug commands
|
|
114
143
|
if (command && handleDebugCommand(command, debugContext)) {
|
|
115
144
|
// Command handled
|
|
@@ -123,25 +152,38 @@ export async function startV5Shell() {
|
|
|
123
152
|
return;
|
|
124
153
|
}
|
|
125
154
|
// Backspace
|
|
126
|
-
if (
|
|
155
|
+
if (input === '\x7f' || input === '\x08') {
|
|
127
156
|
if (commandBuffer.length > 0) {
|
|
128
157
|
commandBuffer = commandBuffer.slice(0, -1);
|
|
129
|
-
widgets
|
|
158
|
+
if (widgets?.command) {
|
|
159
|
+
widgets.command.setContent(PROMPT + commandBuffer);
|
|
160
|
+
}
|
|
130
161
|
}
|
|
131
162
|
else {
|
|
132
|
-
widgets
|
|
163
|
+
if (widgets?.command) {
|
|
164
|
+
widgets.command.setContent(PROMPT);
|
|
165
|
+
}
|
|
133
166
|
}
|
|
134
167
|
const currentVersion = getLayoutVersion();
|
|
135
168
|
safeRender(screen, currentVersion);
|
|
136
169
|
return;
|
|
137
170
|
}
|
|
138
|
-
// Printable characters
|
|
139
|
-
if (
|
|
140
|
-
commandBuffer +=
|
|
141
|
-
widgets
|
|
171
|
+
// Printable characters (ASCII 32-126)
|
|
172
|
+
if (input.length === 1 && input >= ' ' && input <= '~') {
|
|
173
|
+
commandBuffer += input;
|
|
174
|
+
if (widgets?.command) {
|
|
175
|
+
widgets.command.setContent(PROMPT + commandBuffer);
|
|
176
|
+
}
|
|
142
177
|
const currentVersion = getLayoutVersion();
|
|
143
178
|
safeRender(screen, currentVersion);
|
|
144
179
|
}
|
|
180
|
+
};
|
|
181
|
+
// Remove any existing listeners first
|
|
182
|
+
process.stdin.removeAllListeners('data');
|
|
183
|
+
process.stdin.on('data', stdinHandler);
|
|
184
|
+
// Cleanup on exit
|
|
185
|
+
process.on('exit', () => {
|
|
186
|
+
process.stdin.removeListener('data', stdinHandler);
|
|
145
187
|
});
|
|
146
188
|
// Focus command input immediately and set initial prompt
|
|
147
189
|
// Use setImmediate to ensure screen is fully rendered first
|
package/dist/ui/v5/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/v5/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,OAAO,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/v5/index.ts"],"names":[],"mappings":"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"}
|