4runr-os 1.3.61 → 1.4.0

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.
@@ -4,5 +4,5 @@
4
4
  *
5
5
  * Phase 1: Layout Skeleton + Dedicated Command Line
6
6
  */
7
- export { startPhase1Runtime } from './ui/phase1Runtime.js';
7
+ export { startPhase1Runtime } from './ui/phase1RuntimeClean.js';
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/v3/index.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/v3/index.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * Phase 1: Layout Skeleton + Dedicated Command Line
6
6
  */
7
7
  // Export for use as a library
8
- export { startPhase1Runtime } from './ui/phase1Runtime.js';
8
+ export { startPhase1Runtime } from './ui/phase1RuntimeClean.js';
9
9
  // If run directly (not imported), start the TUI
10
10
  const isMainModule = import.meta.url === `file://${process.argv[1]?.replace(/\\/g, '/')}` ||
11
11
  process.argv[1]?.endsWith('index.js') ||
@@ -20,7 +20,7 @@ if (isMainModule) {
20
20
  }
21
21
  else {
22
22
  // TUI mode (Phase 1)
23
- const { startPhase1Runtime } = await import('./ui/phase1Runtime.js');
23
+ const { startPhase1Runtime } = await import('./ui/phase1RuntimeClean.js');
24
24
  startPhase1Runtime().catch((error) => {
25
25
  console.error('FATAL: TUI failed to start:', error);
26
26
  process.exit(1);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/v3/index.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,gDAAgD;AAChD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;IACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAE3D,IAAI,YAAY,EAAE,CAAC;IACjB,wBAAwB;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAElF,IAAI,KAAK,EAAE,CAAC;QACV,oCAAoC;QACpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACrE,kBAAkB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/v3/index.ts"],"names":[],"mappings":";AACA;;;;GAIG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,gDAAgD;AAChD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;IACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAE3D,IAAI,YAAY,EAAE,CAAC;IACjB,wBAAwB;IACxB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAElF,IAAI,KAAK,EAAE,CAAC;QACV,oCAAoC;QACpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;QAC1E,kBAAkB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"phase1Runtime.d.ts","sourceRoot":"","sources":["../../../../src/ui/v3/ui/phase1Runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAqoBH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAIhC;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAw2CxD"}
1
+ {"version":3,"file":"phase1Runtime.d.ts","sourceRoot":"","sources":["../../../../src/ui/v3/ui/phase1Runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAqoBH;;GAEG;AACH;;GAEG;AACH;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAIhC;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqrCxD"}
@@ -18,7 +18,7 @@
18
18
  import blessed from 'neo-blessed';
19
19
  // Type assertion for blessed (textbox not in types)
20
20
  const blessedLib = blessed;
21
- import { computePhase1Layout, MIN_WIDTH, MIN_HEIGHT } from './layout/phase1Layout.js';
21
+ import { computePhase1Layout } from './layout/phase1Layout.js';
22
22
  import { feedStore } from '../core/feedStore.js';
23
23
  import { eventBus } from '../core/eventBus.js';
24
24
  import { logger, enableTuiMode, disableBootPhase } from '../core/logger.js';
@@ -624,6 +624,17 @@ export async function startPhase1Runtime() {
624
624
  level: 'INFO'
625
625
  });
626
626
  }
627
+ // CRITICAL: Block SIGWINCH (resize signal) BEFORE creating screen
628
+ // This prevents blessed from ever detecting resize events
629
+ // User will need to restart TUI after resizing terminal
630
+ if (process.stdout.isTTY) {
631
+ // Remove all existing SIGWINCH listeners
632
+ process.removeAllListeners('SIGWINCH');
633
+ // Add a no-op handler to block the signal
634
+ process.on('SIGWINCH', () => {
635
+ // Do nothing - block blessed from seeing this signal
636
+ });
637
+ }
627
638
  // Create screen
628
639
  screen = blessedLib.screen({
629
640
  smartCSR: false, // CRITICAL: Disable smartCSR - it can cause duplicate rendering on resize
@@ -1344,181 +1355,10 @@ export async function startPhase1Runtime() {
1344
1355
  // Note: We don't use 'keypress' here as it can cause double-typing issues
1345
1356
  // The textbox handles input automatically, we just need to track when user types
1346
1357
  // We'll reset history index on submit instead
1347
- // CRITICAL: Resize handler - DESTROY and RECREATE everything to prevent blessed artifacts
1348
- // This is the nuclear option but the only way to guarantee clean resize with blessed
1349
- const currentScreen = screen;
1350
- if (currentScreen) {
1351
- // Hard guard - resize handler bound exactly once
1352
- if (currentScreen._resizeHandlerBound) {
1353
- // Already bound - hard stop
1354
- }
1355
- else {
1356
- currentScreen._resizeHandlerBound = true;
1357
- // Resize debounce state
1358
- const RESIZE_DEBOUNCE_MS = 150; // 150ms debounce for stability
1359
- currentScreen.on('resize', () => {
1360
- if (!currentScreen || !inputHandlersBound)
1361
- return;
1362
- // Get current dimensions
1363
- const newWidth = currentScreen.width;
1364
- const newHeight = currentScreen.height;
1365
- // Ignore no-op resizes
1366
- if (newWidth === lastResizeWidth && newHeight === lastResizeHeight) {
1367
- return;
1368
- }
1369
- // Clear previous debounce timer
1370
- if (currentScreen._resizeDebounceTimer) {
1371
- clearTimeout(currentScreen._resizeDebounceTimer);
1372
- }
1373
- // Debounce: Wait for resize to settle
1374
- currentScreen._resizeDebounceTimer = setTimeout(() => {
1375
- currentScreen._resizeDebounceTimer = null;
1376
- // Re-check dimensions (might have changed again)
1377
- const currentWidth = currentScreen.width;
1378
- const currentHeight = currentScreen.height;
1379
- if (currentWidth === lastResizeWidth && currentHeight === lastResizeHeight) {
1380
- return; // No change
1381
- }
1382
- // Update tracked dimensions
1383
- lastResizeWidth = currentWidth;
1384
- lastResizeHeight = currentHeight;
1385
- // NUCLEAR OPTION: Destroy ALL widgets and recreate from scratch
1386
- // This is the only reliable way to prevent blessed's internal state corruption
1387
- // Step 1: Destroy all existing widgets
1388
- const allWidgets = [...panels];
1389
- if (statusStrip)
1390
- allWidgets.push(statusStrip);
1391
- if (commandLine)
1392
- allWidgets.push(commandLine);
1393
- for (const widget of allWidgets) {
1394
- try {
1395
- currentScreen.remove(widget);
1396
- if (widget.destroy) {
1397
- widget.destroy();
1398
- }
1399
- }
1400
- catch (e) {
1401
- // Ignore errors
1402
- }
1403
- }
1404
- // Step 2: Clear blessed's internal state
1405
- if (currentScreen.children) {
1406
- currentScreen.children = [];
1407
- }
1408
- if (currentScreen.lines) {
1409
- currentScreen.lines = [];
1410
- }
1411
- if (currentScreen.olines) {
1412
- currentScreen.olines = [];
1413
- }
1414
- // Step 3: Clear the physical screen
1415
- if (currentScreen.program && currentScreen.program.clear) {
1416
- currentScreen.program.clear();
1417
- }
1418
- if (process.stdout.isTTY) {
1419
- process.stdout.write('\x1b[2J\x1b[H'); // Clear screen
1420
- }
1421
- // Step 4: Compute new layout
1422
- const newLayoutResult = computePhase1Layout(currentWidth, currentHeight);
1423
- if (!newLayoutResult.ok || !newLayoutResult.layout) {
1424
- // Terminal too small - just show error
1425
- eventBus.emit({
1426
- tag: 'SYS',
1427
- msg: `Terminal too small (${currentWidth}x${currentHeight}). Need at least ${MIN_WIDTH}x${MIN_HEIGHT}.`,
1428
- level: 'ERROR'
1429
- });
1430
- return;
1431
- }
1432
- const newLayout = newLayoutResult.layout;
1433
- // Step 5: Recreate all widgets with new layout
1434
- panels = [];
1435
- panels.push(createPanel(currentScreen, newLayout.posture, 'POSTURE'));
1436
- panels.push(createPanel(currentScreen, newLayout.resources, 'RESOURCES'));
1437
- panels.push(createPanel(currentScreen, newLayout.assets, 'ASSETS'));
1438
- panels.push(createPanel(currentScreen, newLayout.operations, 'OPERATIONS', formatFeedEntries));
1439
- panels.push(createPanel(currentScreen, newLayout.network, 'NETWORK'));
1440
- panels.push(createPanel(currentScreen, newLayout.capabilities, 'CAPABILITIES'));
1441
- // Recreate status strip
1442
- const newStatusWidth = Math.floor(newLayout.commandLine.width * 0.2);
1443
- statusStrip = blessedLib.box({
1444
- top: newLayout.commandLine.top,
1445
- left: newLayout.commandLine.left,
1446
- width: newStatusWidth,
1447
- height: newLayout.commandLine.height,
1448
- border: { type: 'line' },
1449
- tags: true,
1450
- content: ' MODE: OFFLINE | CONNECT: NO | POSTURE: UNKNOWN ',
1451
- style: {
1452
- border: { fg: 'grey' },
1453
- fg: 'grey',
1454
- },
1455
- clickable: false,
1456
- keys: false,
1457
- mouse: false,
1458
- input: false,
1459
- });
1460
- statusStrip.setLabel(' {grey-fg}STATUS{/}');
1461
- // Recreate command line
1462
- const newCommandWidth = newLayout.commandLine.width - newStatusWidth - 1;
1463
- commandLine = blessedLib.box({
1464
- top: newLayout.commandLine.top,
1465
- left: newLayout.commandLine.left + newStatusWidth + 1,
1466
- width: newCommandWidth,
1467
- height: newLayout.commandLine.height,
1468
- border: { type: 'line' },
1469
- tags: true,
1470
- content: PROMPT,
1471
- style: {
1472
- border: { fg: 'cyan' },
1473
- fg: 'white',
1474
- focus: {
1475
- border: { fg: 'green' },
1476
- fg: 'white',
1477
- },
1478
- },
1479
- focusable: true,
1480
- keyable: true,
1481
- input: false,
1482
- keys: false,
1483
- mouse: false,
1484
- scrollable: false,
1485
- alwaysScroll: false,
1486
- });
1487
- commandLine.setLabel(' {cyan-fg}COMMAND LINE{/}');
1488
- // Step 6: Append all widgets
1489
- for (const panel of panels) {
1490
- currentScreen.append(panel);
1491
- panel.focusable = false;
1492
- panel.keyable = false;
1493
- }
1494
- if (statusStrip) {
1495
- currentScreen.append(statusStrip);
1496
- }
1497
- if (commandLine) {
1498
- currentScreen.append(commandLine);
1499
- }
1500
- // Step 7: Update all content
1501
- updateOperationsPanel();
1502
- updatePosturePanel();
1503
- updateResourcesPanel();
1504
- updateAssetsPanel();
1505
- updateNetworkPanel();
1506
- updateCapabilitiesPanel();
1507
- updateStatusStrip();
1508
- // Step 8: Reassert focus
1509
- reassertFocus();
1510
- // Step 9: Render
1511
- currentScreen.render();
1512
- // Log resize
1513
- eventBus.emit({
1514
- tag: 'SYS',
1515
- msg: `Terminal resized to ${currentWidth}x${currentHeight}`,
1516
- level: 'INFO'
1517
- });
1518
- }, RESIZE_DEBOUNCE_MS);
1519
- });
1520
- }
1521
- }
1358
+ // CRITICAL: NO RESIZE HANDLING
1359
+ // We've blocked SIGWINCH above, so blessed will never detect resize
1360
+ // User must restart TUI after resizing terminal
1361
+ // This is the ONLY way to prevent blessed's duplication bugs
1522
1362
  // Prevent Tab from moving focus to panels (single handler only, bound once)
1523
1363
  // Note: Tab handler is already bound above with other keys, so we don't need this
1524
1364
  // But keeping it as a safety guard (only if somehow handlers weren't bound)
@@ -1 +1 @@
1
- {"version":3,"file":"phase1Runtime.js","sourceRoot":"","sources":["../../../../src/ui/v3/ui/phase1Runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phase1Runtime.js","sourceRoot":"","sources":["../../../../src/ui/v3/ui/phase1Runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Phase 1 Runtime - CLEAN IMPLEMENTATION
3
+ *
4
+ * Following strict lifecycle rules:
5
+ * - Single instance guard
6
+ * - Resize updates layout only (no recreate)
7
+ * - Zero stdout writes
8
+ * - Clean unbinding
9
+ */
10
+ /**
11
+ * Step 1: Single instance guard
12
+ */
13
+ export declare function startPhase1Runtime(): Promise<void>;
14
+ //# sourceMappingURL=phase1RuntimeClean.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phase1RuntimeClean.d.ts","sourceRoot":"","sources":["../../../../src/ui/v3/ui/phase1RuntimeClean.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA+CH;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAsJxD"}
@@ -0,0 +1,578 @@
1
+ /**
2
+ * Phase 1 Runtime - CLEAN IMPLEMENTATION
3
+ *
4
+ * Following strict lifecycle rules:
5
+ * - Single instance guard
6
+ * - Resize updates layout only (no recreate)
7
+ * - Zero stdout writes
8
+ * - Clean unbinding
9
+ */
10
+ import blessed from 'neo-blessed';
11
+ import { computePhase1Layout, MIN_WIDTH, MIN_HEIGHT } from './layout/phase1Layout.js';
12
+ import { isUIMounted, setUIRuntime, getUIRuntime, destroyUIRuntime } from './uiRuntime.js';
13
+ import { feedStore } from '../core/feedStore.js';
14
+ import { eventBus } from '../core/eventBus.js';
15
+ import { logger, enableTuiMode, disableBootPhase } from '../core/logger.js';
16
+ import { buildUiState } from '../state/uiStateBuilder.js';
17
+ import { defaultUiState } from '../state/defaultState.js';
18
+ import { initializePostureState } from '../state/initializePostureState.js';
19
+ import { renderResourcesPanel } from './panels/ResourcesPanel.js';
20
+ import { renderPosturePanel } from './panels/PosturePanel.js';
21
+ import { renderAssetsPanel } from './panels/AssetsPanel.js';
22
+ import { renderNetworkPanel } from './panels/NetworkPanel.js';
23
+ import { renderCapabilitiesPanel } from './panels/CapabilitiesPanel.js';
24
+ import { isAvailable } from '../state/value.js';
25
+ import { parse, execute, UiAction } from '../commands/commandEngine.js';
26
+ const blessedLib = blessed;
27
+ const PROMPT = '4runr> ';
28
+ // Current UI state
29
+ let currentUiState = {
30
+ ...defaultUiState,
31
+ posture: initializePostureState()
32
+ };
33
+ // Command history
34
+ const commandHistory = [];
35
+ let historyIndex = -1;
36
+ // Input state
37
+ let commandInputValue = PROMPT;
38
+ let cursorPosition = PROMPT.length;
39
+ let scrollOffset = 0;
40
+ // Resize debounce
41
+ let resizeDebounceTimer = null;
42
+ const RESIZE_DEBOUNCE_MS = 100;
43
+ let lastResizeWidth = 0;
44
+ let lastResizeHeight = 0;
45
+ /**
46
+ * Step 1: Single instance guard
47
+ */
48
+ export async function startPhase1Runtime() {
49
+ // HARD GUARD: If UI already mounted, return immediately
50
+ if (isUIMounted()) {
51
+ logger.error('UI already mounted - cannot mount twice');
52
+ return;
53
+ }
54
+ // Step 5: Enable TUI mode (routes console.log to eventBus)
55
+ enableTuiMode();
56
+ // Set up raw input
57
+ if (process.stdin.isTTY) {
58
+ process.stdin.setRawMode(true);
59
+ process.stdin.resume();
60
+ process.stdin.setEncoding('utf8');
61
+ }
62
+ // Create screen (ONCE)
63
+ const screen = blessedLib.screen({
64
+ smartCSR: false,
65
+ fastCSR: false,
66
+ title: '4Runr OS',
67
+ fullUnicode: true,
68
+ sendFocus: false,
69
+ warnings: false,
70
+ autoPadding: false,
71
+ dockBorders: false,
72
+ });
73
+ if (!screen) {
74
+ throw new Error('Failed to create screen');
75
+ }
76
+ // Hide cursor
77
+ if (screen.program?.hideCursor) {
78
+ screen.program.hideCursor();
79
+ }
80
+ // Check terminal size
81
+ const width = screen.width;
82
+ const height = screen.height;
83
+ const layoutResult = computePhase1Layout(width, height);
84
+ if (!layoutResult.ok || !layoutResult.layout) {
85
+ const errorMsg = layoutResult.errorMessage || 'Terminal too small';
86
+ screen.destroy();
87
+ throw new Error(errorMsg);
88
+ }
89
+ const layout = layoutResult.layout;
90
+ // Create all widgets ONCE
91
+ const widgets = {
92
+ posture: createPanel(screen, layout.posture, 'POSTURE'),
93
+ resources: createPanel(screen, layout.resources, 'RESOURCES'),
94
+ assets: createPanel(screen, layout.assets, 'ASSETS'),
95
+ operations: createPanel(screen, layout.operations, 'OPERATIONS'),
96
+ network: createPanel(screen, layout.network, 'NETWORK'),
97
+ capabilities: createPanel(screen, layout.capabilities, 'CAPABILITIES'),
98
+ statusStrip: createStatusStrip(screen, layout),
99
+ commandLine: createCommandLine(screen, layout),
100
+ };
101
+ // Append all widgets ONCE
102
+ screen.append(widgets.posture);
103
+ screen.append(widgets.resources);
104
+ screen.append(widgets.assets);
105
+ screen.append(widgets.operations);
106
+ screen.append(widgets.network);
107
+ screen.append(widgets.capabilities);
108
+ screen.append(widgets.statusStrip);
109
+ screen.append(widgets.commandLine);
110
+ // Store unbind functions
111
+ const unbindFns = [];
112
+ // Step 6: Error handlers
113
+ const uncaughtHandler = (error) => {
114
+ eventBus.emit({
115
+ tag: 'ERR',
116
+ msg: `Uncaught: ${error.message}`,
117
+ level: 'ERROR'
118
+ });
119
+ };
120
+ const unhandledHandler = (reason) => {
121
+ eventBus.emit({
122
+ tag: 'ERR',
123
+ msg: `Unhandled rejection: ${reason}`,
124
+ level: 'ERROR'
125
+ });
126
+ };
127
+ process.on('uncaughtException', uncaughtHandler);
128
+ process.on('unhandledRejection', unhandledHandler);
129
+ unbindFns.push(() => {
130
+ process.removeListener('uncaughtException', uncaughtHandler);
131
+ process.removeListener('unhandledRejection', unhandledHandler);
132
+ });
133
+ // Setup input handling
134
+ setupInputHandling(screen, widgets.commandLine, unbindFns);
135
+ // Step 2 & 3: Setup resize handling (layout update only)
136
+ setupResizeHandling(screen, widgets, unbindFns);
137
+ // Setup signal handlers
138
+ const sigintHandler = () => cleanExit(0);
139
+ const sigtermHandler = () => cleanExit(0);
140
+ process.on('SIGINT', sigintHandler);
141
+ process.on('SIGTERM', sigtermHandler);
142
+ unbindFns.push(() => {
143
+ process.removeListener('SIGINT', sigintHandler);
144
+ process.removeListener('SIGTERM', sigtermHandler);
145
+ });
146
+ // Store runtime
147
+ const runtime = {
148
+ screen,
149
+ widgets,
150
+ isMounted: true,
151
+ unbindFns,
152
+ };
153
+ setUIRuntime(runtime);
154
+ // Subscribe to eventBus for Operations panel
155
+ eventBus.subscribe((event) => {
156
+ feedStore.push(event);
157
+ updateOperationsPanel(widgets.operations);
158
+ screen.render();
159
+ });
160
+ // Initial content update
161
+ updateAllPanels(widgets);
162
+ // Initial render
163
+ lastResizeWidth = width;
164
+ lastResizeHeight = height;
165
+ screen.render();
166
+ // Disable boot phase (enable strict stdout blocking)
167
+ disableBootPhase();
168
+ // Start background state updates
169
+ startBackgroundUpdates(widgets, screen);
170
+ // Log boot
171
+ eventBus.emit({
172
+ tag: 'SYS',
173
+ msg: 'TUI initialized',
174
+ level: 'INFO'
175
+ });
176
+ }
177
+ /**
178
+ * Step 2: Resize handler - UPDATE LAYOUT ONLY
179
+ */
180
+ function setupResizeHandling(screen, widgets, unbindFns) {
181
+ const resizeHandler = () => {
182
+ const newWidth = screen.width;
183
+ const newHeight = screen.height;
184
+ // Step 3: Ignore no-op resizes
185
+ if (newWidth === lastResizeWidth && newHeight === lastResizeHeight) {
186
+ return;
187
+ }
188
+ // Step 3: Debounce
189
+ if (resizeDebounceTimer) {
190
+ clearTimeout(resizeDebounceTimer);
191
+ }
192
+ resizeDebounceTimer = setTimeout(() => {
193
+ resizeDebounceTimer = null;
194
+ // Double-check dimensions
195
+ const currentWidth = screen.width;
196
+ const currentHeight = screen.height;
197
+ if (currentWidth === lastResizeWidth && currentHeight === lastResizeHeight) {
198
+ return;
199
+ }
200
+ lastResizeWidth = currentWidth;
201
+ lastResizeHeight = currentHeight;
202
+ // Recompute layout
203
+ const newLayoutResult = computePhase1Layout(currentWidth, currentHeight);
204
+ if (!newLayoutResult.ok || !newLayoutResult.layout) {
205
+ eventBus.emit({
206
+ tag: 'SYS',
207
+ msg: `Terminal too small: ${currentWidth}x${currentHeight} (need ${MIN_WIDTH}x${MIN_HEIGHT})`,
208
+ level: 'WARN'
209
+ });
210
+ return;
211
+ }
212
+ const newLayout = newLayoutResult.layout;
213
+ // Step 2: Update widget positions/sizes ONLY (no recreate, no re-append)
214
+ updateWidgetLayout(widgets.posture, newLayout.posture);
215
+ updateWidgetLayout(widgets.resources, newLayout.resources);
216
+ updateWidgetLayout(widgets.assets, newLayout.assets);
217
+ updateWidgetLayout(widgets.operations, newLayout.operations);
218
+ updateWidgetLayout(widgets.network, newLayout.network);
219
+ updateWidgetLayout(widgets.capabilities, newLayout.capabilities);
220
+ // Update status strip and command line
221
+ const statusWidth = Math.floor(newLayout.commandLine.width * 0.2);
222
+ updateWidgetLayout(widgets.statusStrip, {
223
+ top: newLayout.commandLine.top,
224
+ left: newLayout.commandLine.left,
225
+ width: statusWidth,
226
+ height: newLayout.commandLine.height,
227
+ });
228
+ updateWidgetLayout(widgets.commandLine, {
229
+ top: newLayout.commandLine.top,
230
+ left: newLayout.commandLine.left + statusWidth + 1,
231
+ width: newLayout.commandLine.width - statusWidth - 1,
232
+ height: newLayout.commandLine.height,
233
+ });
234
+ // Update all panel content (may need to reflow for new width)
235
+ updateAllPanels(widgets);
236
+ // Render
237
+ screen.render();
238
+ eventBus.emit({
239
+ tag: 'SYS',
240
+ msg: `Resized to ${currentWidth}x${currentHeight}`,
241
+ level: 'INFO'
242
+ });
243
+ }, RESIZE_DEBOUNCE_MS);
244
+ };
245
+ screen.on('resize', resizeHandler);
246
+ unbindFns.push(() => {
247
+ // Use off() method (EventEmitter API) instead of removeListener
248
+ screen.off('resize', resizeHandler);
249
+ if (resizeDebounceTimer) {
250
+ clearTimeout(resizeDebounceTimer);
251
+ }
252
+ });
253
+ }
254
+ /**
255
+ * Update widget layout (geometry only)
256
+ */
257
+ function updateWidgetLayout(widget, rect) {
258
+ widget.top = rect.top;
259
+ widget.left = rect.left;
260
+ widget.width = rect.width;
261
+ widget.height = rect.height;
262
+ }
263
+ /**
264
+ * Create a read-only panel
265
+ */
266
+ function createPanel(screen, rect, title) {
267
+ const panel = blessedLib.box({
268
+ top: rect.top,
269
+ left: rect.left,
270
+ width: rect.width,
271
+ height: rect.height,
272
+ border: { type: 'line' },
273
+ tags: true,
274
+ content: '',
275
+ style: {
276
+ border: { fg: 'cyan' },
277
+ },
278
+ wrap: false,
279
+ scrollable: false,
280
+ clickable: false,
281
+ keys: false,
282
+ mouse: false,
283
+ input: false,
284
+ focusable: false,
285
+ });
286
+ panel.setLabel(` {cyan-fg}${title}{/}`);
287
+ return panel;
288
+ }
289
+ /**
290
+ * Create status strip
291
+ */
292
+ function createStatusStrip(screen, layout) {
293
+ const statusWidth = Math.floor(layout.commandLine.width * 0.2);
294
+ const strip = blessedLib.box({
295
+ top: layout.commandLine.top,
296
+ left: layout.commandLine.left,
297
+ width: statusWidth,
298
+ height: layout.commandLine.height,
299
+ border: { type: 'line' },
300
+ tags: true,
301
+ content: ' OFFLINE',
302
+ style: {
303
+ border: { fg: 'grey' },
304
+ fg: 'grey',
305
+ },
306
+ clickable: false,
307
+ keys: false,
308
+ mouse: false,
309
+ input: false,
310
+ focusable: false,
311
+ });
312
+ strip.setLabel(' {grey-fg}STATUS{/}');
313
+ return strip;
314
+ }
315
+ /**
316
+ * Create command line
317
+ */
318
+ function createCommandLine(screen, layout) {
319
+ const statusWidth = Math.floor(layout.commandLine.width * 0.2);
320
+ const cmdLine = blessedLib.box({
321
+ top: layout.commandLine.top,
322
+ left: layout.commandLine.left + statusWidth + 1,
323
+ width: layout.commandLine.width - statusWidth - 1,
324
+ height: layout.commandLine.height,
325
+ border: { type: 'line' },
326
+ tags: true,
327
+ content: PROMPT,
328
+ style: {
329
+ border: { fg: 'cyan' },
330
+ fg: 'white',
331
+ },
332
+ focusable: true,
333
+ keyable: true,
334
+ input: false,
335
+ keys: false,
336
+ });
337
+ cmdLine.setLabel(' {cyan-fg}COMMAND LINE{/}');
338
+ return cmdLine;
339
+ }
340
+ /**
341
+ * Setup input handling
342
+ */
343
+ function setupInputHandling(screen, commandLine, unbindFns) {
344
+ const updateDisplay = () => {
345
+ const availableWidth = commandLine.width - 4;
346
+ const fullText = commandInputValue;
347
+ const cursorIndex = cursorPosition;
348
+ if (cursorIndex - scrollOffset >= availableWidth - 1) {
349
+ scrollOffset = cursorIndex - availableWidth + 2;
350
+ }
351
+ if (cursorIndex < scrollOffset) {
352
+ scrollOffset = Math.max(0, cursorIndex - 5);
353
+ }
354
+ const visibleStart = scrollOffset;
355
+ const visibleEnd = Math.min(fullText.length, visibleStart + availableWidth - 1);
356
+ let visibleText = fullText.substring(visibleStart, visibleEnd);
357
+ const cursorPosInVisible = cursorIndex - visibleStart;
358
+ const beforeCursor = visibleText.substring(0, cursorPosInVisible);
359
+ const afterCursor = visibleText.substring(cursorPosInVisible);
360
+ const displayValue = beforeCursor + '{inverse} {/}' + afterCursor;
361
+ commandLine.setContent(displayValue);
362
+ screen.render();
363
+ };
364
+ const handleSubmit = async (value) => {
365
+ const commandPart = value.startsWith(PROMPT) ? value.slice(PROMPT.length).trim() : value.trim();
366
+ if (!commandPart) {
367
+ return;
368
+ }
369
+ // Add to history
370
+ commandHistory.push(commandPart);
371
+ if (commandHistory.length > 100) {
372
+ commandHistory.shift();
373
+ }
374
+ historyIndex = -1;
375
+ // Clear input
376
+ commandInputValue = PROMPT;
377
+ cursorPosition = PROMPT.length;
378
+ scrollOffset = 0;
379
+ updateDisplay();
380
+ // Emit command event
381
+ eventBus.emit({
382
+ tag: 'CMD',
383
+ msg: commandPart,
384
+ level: 'INFO'
385
+ });
386
+ // Execute command
387
+ const parsed = parse(commandPart);
388
+ if (!parsed.name)
389
+ return;
390
+ const ctx = {};
391
+ try {
392
+ const result = await execute(parsed, ctx);
393
+ // Emit result events
394
+ for (const event of result.events) {
395
+ eventBus.emit(event);
396
+ }
397
+ // Handle UI state update
398
+ if (result.uiStateUpdate) {
399
+ currentUiState = result.uiStateUpdate(currentUiState);
400
+ const runtime = getUIRuntime();
401
+ updateAllPanels(runtime.widgets);
402
+ runtime.screen.render();
403
+ }
404
+ // Handle actions
405
+ if (result.action === UiAction.EXIT) {
406
+ cleanExit(0);
407
+ }
408
+ else if (result.action === UiAction.CLEAR_FEED) {
409
+ feedStore.clear();
410
+ }
411
+ }
412
+ catch (error) {
413
+ eventBus.emit({
414
+ tag: 'ERR',
415
+ msg: `Command error: ${error.message}`,
416
+ level: 'ERROR'
417
+ });
418
+ }
419
+ };
420
+ const stdinListener = (data) => {
421
+ const input = data.toString();
422
+ if (input === '\x03') { // Ctrl+C
423
+ cleanExit(0);
424
+ return;
425
+ }
426
+ if (input === '\r' || input === '\n') { // Enter
427
+ const cmd = commandInputValue.startsWith(PROMPT)
428
+ ? commandInputValue.slice(PROMPT.length).trim()
429
+ : commandInputValue.trim();
430
+ if (cmd) {
431
+ handleSubmit(commandInputValue).catch(err => {
432
+ eventBus.emit({
433
+ tag: 'ERR',
434
+ msg: `Handler error: ${err.message}`,
435
+ level: 'ERROR'
436
+ });
437
+ });
438
+ }
439
+ else {
440
+ commandInputValue = PROMPT;
441
+ cursorPosition = PROMPT.length;
442
+ updateDisplay();
443
+ }
444
+ return;
445
+ }
446
+ if (input === '\x7f' || input === '\x08') { // Backspace
447
+ if (cursorPosition > PROMPT.length) {
448
+ commandInputValue = commandInputValue.substring(0, cursorPosition - 1) + commandInputValue.substring(cursorPosition);
449
+ cursorPosition--;
450
+ updateDisplay();
451
+ }
452
+ return;
453
+ }
454
+ if (input === '\x1b[D') { // Left arrow
455
+ if (cursorPosition > PROMPT.length) {
456
+ cursorPosition--;
457
+ updateDisplay();
458
+ }
459
+ return;
460
+ }
461
+ if (input === '\x1b[C') { // Right arrow
462
+ if (cursorPosition < commandInputValue.length) {
463
+ cursorPosition++;
464
+ updateDisplay();
465
+ }
466
+ return;
467
+ }
468
+ // Printable characters
469
+ if (input.length === 1 && input >= ' ' && input <= '~') {
470
+ commandInputValue = commandInputValue.substring(0, cursorPosition) + input + commandInputValue.substring(cursorPosition);
471
+ cursorPosition++;
472
+ updateDisplay();
473
+ }
474
+ };
475
+ process.stdin.on('data', stdinListener);
476
+ unbindFns.push(() => {
477
+ process.stdin.removeListener('data', stdinListener);
478
+ });
479
+ // Focus command line
480
+ commandLine.focus();
481
+ screen.focused = commandLine;
482
+ }
483
+ /**
484
+ * Update all panel content
485
+ */
486
+ function updateAllPanels(widgets) {
487
+ updatePanel(widgets.posture, renderPosturePanel(currentUiState.posture));
488
+ updatePanel(widgets.resources, renderResourcesPanel(currentUiState.resources));
489
+ updatePanel(widgets.assets, renderAssetsPanel(currentUiState.assets));
490
+ updateOperationsPanel(widgets.operations);
491
+ updatePanel(widgets.network, renderNetworkPanel(currentUiState.network));
492
+ updatePanel(widgets.capabilities, renderCapabilitiesPanel(currentUiState.capabilities));
493
+ // Update status strip
494
+ const statusValue = currentUiState.statusStrip;
495
+ if (isAvailable(statusValue)) {
496
+ const data = statusValue.value;
497
+ widgets.statusStrip.setContent(` ${data.left} | ${data.right} `);
498
+ }
499
+ else {
500
+ widgets.statusStrip.setContent(' OFFLINE');
501
+ }
502
+ }
503
+ /**
504
+ * Update a panel with content lines
505
+ */
506
+ function updatePanel(panel, lines) {
507
+ const panelWidth = panel.width;
508
+ const panelHeight = panel.height;
509
+ const innerWidth = Math.max(1, panelWidth - 4);
510
+ const innerHeight = Math.max(1, panelHeight - 2);
511
+ const truncatedLines = lines.slice(0, innerHeight).map(line => {
512
+ if (line.length > innerWidth) {
513
+ return line.substring(0, innerWidth - 3) + '...';
514
+ }
515
+ return line;
516
+ });
517
+ const content = '\n ' + truncatedLines.join('\n ');
518
+ panel.setContent(content);
519
+ }
520
+ /**
521
+ * Update operations panel
522
+ */
523
+ function updateOperationsPanel(panel) {
524
+ const panelHeight = panel.height;
525
+ const panelWidth = panel.width;
526
+ const innerHeight = Math.max(1, panelHeight - 2);
527
+ const innerWidth = Math.max(1, panelWidth - 2);
528
+ const events = feedStore.getLatest(innerHeight);
529
+ const lines = [];
530
+ if (events.length === 0) {
531
+ lines.push('No operations yet');
532
+ }
533
+ else {
534
+ for (const event of events.slice(-innerHeight)) {
535
+ const time = new Date(event.ts).toLocaleTimeString();
536
+ const line = `${time} [${event.tag}] ${event.msg}`;
537
+ if (line.length > innerWidth) {
538
+ lines.push(line.substring(0, innerWidth - 3) + '...');
539
+ }
540
+ else {
541
+ lines.push(line);
542
+ }
543
+ }
544
+ }
545
+ const content = '\n ' + lines.join('\n ');
546
+ panel.setContent(content);
547
+ }
548
+ /**
549
+ * Start background state updates
550
+ */
551
+ function startBackgroundUpdates(widgets, screen) {
552
+ const interval = setInterval(async () => {
553
+ try {
554
+ const newState = await buildUiState(currentUiState);
555
+ currentUiState = newState;
556
+ updateAllPanels(widgets);
557
+ screen.render();
558
+ }
559
+ catch (error) {
560
+ // Ignore errors
561
+ }
562
+ }, 1500);
563
+ const runtime = getUIRuntime();
564
+ runtime.unbindFns.push(() => clearInterval(interval));
565
+ }
566
+ /**
567
+ * Step 4: Clean exit
568
+ */
569
+ function cleanExit(code) {
570
+ destroyUIRuntime();
571
+ // Restore terminal
572
+ if (process.stdout.isTTY) {
573
+ process.stdout.write('\x1b[?25h'); // Show cursor
574
+ process.stdout.write('\x1b[?1049l'); // Exit alternate screen
575
+ }
576
+ process.exit(code);
577
+ }
578
+ //# sourceMappingURL=phase1RuntimeClean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phase1RuntimeClean.js","sourceRoot":"","sources":["../../../../src/ui/v3/ui/phase1RuntimeClean.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,OAAO,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAkC,MAAM,gBAAgB,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAGxE,MAAM,UAAU,GAAG,OAAc,CAAC;AAClC,MAAM,MAAM,GAAG,SAAS,CAAC;AAEzB,mBAAmB;AACnB,IAAI,cAAc,GAAY;IAC5B,GAAG,cAAc;IACjB,OAAO,EAAE,sBAAsB,EAAE;CAClC,CAAC;AAEF,kBAAkB;AAClB,MAAM,cAAc,GAAa,EAAE,CAAC;AACpC,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;AAEtB,cAAc;AACd,IAAI,iBAAiB,GAAG,MAAM,CAAC;AAC/B,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;AACnC,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB,kBAAkB;AAClB,IAAI,mBAAmB,GAA0B,IAAI,CAAC;AACtD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,IAAI,eAAe,GAAG,CAAC,CAAC;AACxB,IAAI,gBAAgB,GAAG,CAAC,CAAC;AAEzB;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,wDAAwD;IACxD,IAAI,WAAW,EAAE,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACxD,OAAO;IACT,CAAC;IAED,2DAA2D;IAC3D,aAAa,EAAE,CAAC;IAEhB,mBAAmB;IACnB,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,uBAAuB;IACvB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAC/B,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,KAAK;KACnB,CAAmB,CAAC;IAErB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,cAAc;IACd,IAAK,MAAc,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;QACvC,MAAc,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IAED,sBAAsB;IACtB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAExD,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,IAAI,oBAAoB,CAAC;QACnE,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IAEnC,0BAA0B;IAC1B,MAAM,OAAO,GAAc;QACzB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC;QACvD,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC;QAC7D,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC;QACpD,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC;QAChE,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC;QACvD,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC;QACtE,WAAW,EAAE,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC;QAC9C,WAAW,EAAE,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC;KAC/C,CAAC;IAEF,0BAA0B;IAC1B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACjC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAClC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACnC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEnC,yBAAyB;IACzB,MAAM,SAAS,GAAsB,EAAE,CAAC;IAExC,yBAAyB;IACzB,MAAM,eAAe,GAAG,CAAC,KAAY,EAAE,EAAE;QACvC,QAAQ,CAAC,IAAI,CAAC;YACZ,GAAG,EAAE,KAAK;YACV,GAAG,EAAE,aAAa,KAAK,CAAC,OAAO,EAAE;YACjC,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,gBAAgB,GAAG,CAAC,MAAW,EAAE,EAAE;QACvC,QAAQ,CAAC,IAAI,CAAC;YACZ,GAAG,EAAE,KAAK;YACV,GAAG,EAAE,wBAAwB,MAAM,EAAE;YACrC,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC,CAAC;IACF,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;IACnD,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;QAC7D,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,uBAAuB;IACvB,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAE3D,yDAAyD;IACzD,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAEhD,wBAAwB;IACxB,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACtC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAChD,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,gBAAgB;IAChB,MAAM,OAAO,GAAc;QACzB,MAAM;QACN,OAAO;QACP,SAAS,EAAE,IAAI;QACf,SAAS;KACV,CAAC;IACF,YAAY,CAAC,OAAO,CAAC,CAAC;IAEtB,6CAA6C;IAC7C,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAc,EAAE,EAAE;QACpC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,qBAAqB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,yBAAyB;IACzB,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzB,iBAAiB;IACjB,eAAe,GAAG,KAAK,CAAC;IACxB,gBAAgB,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,MAAM,EAAE,CAAC;IAEhB,qDAAqD;IACrD,gBAAgB,EAAE,CAAC;IAEnB,iCAAiC;IACjC,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAExC,WAAW;IACX,QAAQ,CAAC,IAAI,CAAC;QACZ,GAAG,EAAE,KAAK;QACV,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,MAAM;KACd,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,MAAsB,EACtB,OAAkB,EAClB,SAA4B;IAE5B,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QAEhC,+BAA+B;QAC/B,IAAI,QAAQ,KAAK,eAAe,IAAI,SAAS,KAAK,gBAAgB,EAAE,CAAC;YACnE,OAAO;QACT,CAAC;QAED,mBAAmB;QACnB,IAAI,mBAAmB,EAAE,CAAC;YACxB,YAAY,CAAC,mBAAmB,CAAC,CAAC;QACpC,CAAC;QAED,mBAAmB,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,mBAAmB,GAAG,IAAI,CAAC;YAE3B,0BAA0B;YAC1B,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;YAClC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;YAEpC,IAAI,YAAY,KAAK,eAAe,IAAI,aAAa,KAAK,gBAAgB,EAAE,CAAC;gBAC3E,OAAO;YACT,CAAC;YAED,eAAe,GAAG,YAAY,CAAC;YAC/B,gBAAgB,GAAG,aAAa,CAAC;YAEjC,mBAAmB;YACnB,MAAM,eAAe,GAAG,mBAAmB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YAEzE,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;gBACnD,QAAQ,CAAC,IAAI,CAAC;oBACZ,GAAG,EAAE,KAAK;oBACV,GAAG,EAAE,uBAAuB,YAAY,IAAI,aAAa,UAAU,SAAS,IAAI,UAAU,GAAG;oBAC7F,KAAK,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC;YAEzC,yEAAyE;YACzE,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;YACvD,kBAAkB,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;YAC3D,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACrD,kBAAkB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YAC7D,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;YACvD,kBAAkB,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;YAEjE,uCAAuC;YACvC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;YAClE,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE;gBACtC,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG;gBAC9B,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,IAAI;gBAChC,KAAK,EAAE,WAAW;gBAClB,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM;aACrC,CAAC,CAAC;YACH,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE;gBACtC,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG;gBAC9B,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,IAAI,GAAG,WAAW,GAAG,CAAC;gBAClD,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,KAAK,GAAG,WAAW,GAAG,CAAC;gBACpD,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM;aACrC,CAAC,CAAC;YAEH,8DAA8D;YAC9D,eAAe,CAAC,OAAO,CAAC,CAAC;YAEzB,SAAS;YACT,MAAM,CAAC,MAAM,EAAE,CAAC;YAEhB,QAAQ,CAAC,IAAI,CAAC;gBACZ,GAAG,EAAE,KAAK;gBACV,GAAG,EAAE,cAAc,YAAY,IAAI,aAAa,EAAE;gBAClD,KAAK,EAAE,MAAM;aACd,CAAC,CAAC;QACL,CAAC,EAAE,kBAAkB,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACnC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,gEAAgE;QAC/D,MAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC7C,IAAI,mBAAmB,EAAE,CAAC;YACxB,YAAY,CAAC,mBAAmB,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,MAAmB,EACnB,IAAkE;IAElE,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACtB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,MAAsB,EACtB,IAAkE,EAClE,KAAa;IAEb,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAC3B,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACxB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,EAAE;QACX,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;SACvB;QACD,IAAI,EAAE,KAAK;QACX,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,KAAK;KACjB,CAAgB,CAAC;IAElB,KAAK,CAAC,QAAQ,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,MAAsB,EACtB,MAAW;IAEX,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC;QAC3B,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG;QAC3B,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;QAC7B,KAAK,EAAE,WAAW;QAClB,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM;QACjC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACxB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,UAAU;QACnB,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACtB,EAAE,EAAE,MAAM;SACX;QACD,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE,KAAK;KACjB,CAAgB,CAAC;IAElB,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,MAAsB,EACtB,MAAW;IAEX,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC;QAC7B,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG;QAC3B,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,GAAG,WAAW,GAAG,CAAC;QAC/C,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,WAAW,GAAG,CAAC;QACjD,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM;QACjC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACxB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,MAAM;QACf,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACtB,EAAE,EAAE,OAAO;SACZ;QACD,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,KAAK;KACZ,CAAgB,CAAC;IAElB,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,MAAsB,EACtB,WAAwB,EACxB,SAA4B;IAE5B,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,cAAc,GAAI,WAAW,CAAC,KAAgB,GAAG,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,iBAAiB,CAAC;QACnC,MAAM,WAAW,GAAG,cAAc,CAAC;QAEnC,IAAI,WAAW,GAAG,YAAY,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACrD,YAAY,GAAG,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,WAAW,GAAG,YAAY,EAAE,CAAC;YAC/B,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC;QAChF,IAAI,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAE/D,MAAM,kBAAkB,GAAG,WAAW,GAAG,YAAY,CAAC;QACtD,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAClE,MAAM,WAAW,GAAG,WAAW,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAC9D,MAAM,YAAY,GAAG,YAAY,GAAG,eAAe,GAAG,WAAW,CAAC;QAElE,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;QAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAEhG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,iBAAiB;QACjB,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,cAAc,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAChC,cAAc,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;QACD,YAAY,GAAG,CAAC,CAAC,CAAC;QAElB,cAAc;QACd,iBAAiB,GAAG,MAAM,CAAC;QAC3B,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;QAC/B,YAAY,GAAG,CAAC,CAAC;QACjB,aAAa,EAAE,CAAC;QAEhB,qBAAqB;QACrB,QAAQ,CAAC,IAAI,CAAC;YACZ,GAAG,EAAE,KAAK;YACV,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QAEH,kBAAkB;QAClB,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO;QAEzB,MAAM,GAAG,GAAmB,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAE1C,qBAAqB;YACrB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YAED,yBAAyB;YACzB,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;gBACtD,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;gBAC/B,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACjC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YAED,iBAAiB;YACjB,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACpC,SAAS,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;iBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjD,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC;gBACZ,GAAG,EAAE,KAAK;gBACV,GAAG,EAAE,kBAAkB,KAAK,CAAC,OAAO,EAAE;gBACtC,KAAK,EAAE,OAAO;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,IAAqB,EAAE,EAAE;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9B,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC,SAAS;YAC/B,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ;YAC9C,MAAM,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC;gBAC9C,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;gBAC/C,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,GAAG,EAAE,CAAC;gBACR,YAAY,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAC1C,QAAQ,CAAC,IAAI,CAAC;wBACZ,GAAG,EAAE,KAAK;wBACV,GAAG,EAAE,kBAAkB,GAAG,CAAC,OAAO,EAAE;wBACpC,KAAK,EAAE,OAAO;qBACf,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,iBAAiB,GAAG,MAAM,CAAC;gBAC3B,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC/B,aAAa,EAAE,CAAC;YAClB,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC,YAAY;YACtD,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnC,iBAAiB,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,GAAG,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;gBACrH,cAAc,EAAE,CAAC;gBACjB,aAAa,EAAE,CAAC;YAClB,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC,CAAC,aAAa;YACrC,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnC,cAAc,EAAE,CAAC;gBACjB,aAAa,EAAE,CAAC;YAClB,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC,CAAC,cAAc;YACtC,IAAI,cAAc,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC9C,cAAc,EAAE,CAAC;gBACjB,aAAa,EAAE,CAAC;YAClB,CAAC;YACD,OAAO;QACT,CAAC;QAED,uBAAuB;QACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;YACvD,iBAAiB,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,KAAK,GAAG,iBAAiB,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YACzH,cAAc,EAAE,CAAC;YACjB,aAAa,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,qBAAqB;IACrB,WAAW,CAAC,KAAK,EAAE,CAAC;IACpB,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,OAAkB;IACzC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACzE,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/E,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IACtE,qBAAqB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1C,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACzE,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,uBAAuB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;IAExF,sBAAsB;IACtB,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC;IAC/C,IAAI,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QAC/B,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,KAAkB,EAAE,KAAe;IACtD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAe,CAAC;IACzC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAgB,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;IAEjD,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAC5D,IAAI,IAAI,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,KAAkB;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,MAAgB,CAAC;IAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAe,CAAC;IACzC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAClC,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,kBAAkB,EAAE,CAAC;YACrD,MAAM,IAAI,GAAG,GAAG,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,EAAE,CAAC;YACnD,IAAI,IAAI,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;gBAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,OAAkB,EAAE,MAAsB;IACxE,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACtC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,CAAC;YACpD,cAAc,GAAG,QAAQ,CAAC;YAC1B,eAAe,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gBAAgB;QAClB,CAAC;IACH,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;IAC/B,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,IAAY;IAC7B,gBAAgB,EAAE,CAAC;IAEnB,mBAAmB;IACnB,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc;QACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB;IAC/D,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * UI Runtime Singleton
3
+ *
4
+ * Single instance guard and lifecycle management for the TUI.
5
+ * Ensures only one UI instance exists and handles clean shutdown.
6
+ */
7
+ import type { Widgets } from 'neo-blessed';
8
+ export interface UIWidgets {
9
+ posture: Widgets.Box;
10
+ resources: Widgets.Box;
11
+ assets: Widgets.Box;
12
+ operations: Widgets.Box;
13
+ network: Widgets.Box;
14
+ capabilities: Widgets.Box;
15
+ statusStrip: Widgets.Box;
16
+ commandLine: Widgets.Box;
17
+ }
18
+ export interface UIRuntime {
19
+ screen: Widgets.Screen;
20
+ widgets: UIWidgets;
21
+ isMounted: boolean;
22
+ unbindFns: Array<() => void>;
23
+ }
24
+ /**
25
+ * Check if UI is already mounted
26
+ */
27
+ export declare function isUIMounted(): boolean;
28
+ /**
29
+ * Get the current UI runtime (throws if not mounted)
30
+ */
31
+ export declare function getUIRuntime(): UIRuntime;
32
+ /**
33
+ * Set the UI runtime (only allowed once)
34
+ */
35
+ export declare function setUIRuntime(runtime: UIRuntime): void;
36
+ /**
37
+ * Destroy the UI runtime and reset singleton
38
+ */
39
+ export declare function destroyUIRuntime(): void;
40
+ //# sourceMappingURL=uiRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uiRuntime.d.ts","sourceRoot":"","sources":["../../../../src/ui/v3/ui/uiRuntime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;CAC9B;AAKD;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAKxC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAKrD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAuBvC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * UI Runtime Singleton
3
+ *
4
+ * Single instance guard and lifecycle management for the TUI.
5
+ * Ensures only one UI instance exists and handles clean shutdown.
6
+ */
7
+ // Global singleton guard
8
+ let uiRuntime = null;
9
+ /**
10
+ * Check if UI is already mounted
11
+ */
12
+ export function isUIMounted() {
13
+ return uiRuntime !== null && uiRuntime.isMounted;
14
+ }
15
+ /**
16
+ * Get the current UI runtime (throws if not mounted)
17
+ */
18
+ export function getUIRuntime() {
19
+ if (!uiRuntime || !uiRuntime.isMounted) {
20
+ throw new Error('UI not mounted');
21
+ }
22
+ return uiRuntime;
23
+ }
24
+ /**
25
+ * Set the UI runtime (only allowed once)
26
+ */
27
+ export function setUIRuntime(runtime) {
28
+ if (uiRuntime !== null) {
29
+ throw new Error('UI already mounted - cannot mount twice');
30
+ }
31
+ uiRuntime = runtime;
32
+ }
33
+ /**
34
+ * Destroy the UI runtime and reset singleton
35
+ */
36
+ export function destroyUIRuntime() {
37
+ if (!uiRuntime)
38
+ return;
39
+ // Call all unbind functions
40
+ for (const unbind of uiRuntime.unbindFns) {
41
+ try {
42
+ unbind();
43
+ }
44
+ catch (e) {
45
+ // Ignore errors during cleanup
46
+ }
47
+ }
48
+ // Destroy screen
49
+ try {
50
+ if (uiRuntime.screen) {
51
+ uiRuntime.screen.destroy();
52
+ }
53
+ }
54
+ catch (e) {
55
+ // Ignore errors
56
+ }
57
+ // Reset singleton
58
+ uiRuntime = null;
59
+ }
60
+ //# sourceMappingURL=uiRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uiRuntime.js","sourceRoot":"","sources":["../../../../src/ui/v3/ui/uiRuntime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAsBH,yBAAyB;AACzB,IAAI,SAAS,GAAqB,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,SAAS,KAAK,IAAI,IAAI,SAAS,CAAC,SAAS,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,OAAkB;IAC7C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IACD,SAAS,GAAG,OAAO,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,4BAA4B;IAC5B,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,+BAA+B;QACjC,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,IAAI,CAAC;QACH,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,gBAAgB;IAClB,CAAC;IAED,kBAAkB;IAClB,SAAS,GAAG,IAAI,CAAC;AACnB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "4runr-os",
3
- "version": "1.3.61",
3
+ "version": "1.4.0",
4
4
  "type": "module",
5
5
  "description": "4Runr AI Agent OS - Interactive terminal for managing AI agents",
6
6
  "main": "dist/index.js",