4runr-os 2.1.4 → 2.1.6
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/index.js +16 -1
- package/dist/index.js.map +1 -1
- package/dist/tui_mk1/kernel.d.ts.map +1 -1
- package/dist/tui_mk1/kernel.js +107 -4
- package/dist/tui_mk1/kernel.js.map +1 -1
- package/dist/tui_mk1/layout/layoutEngine.d.ts +38 -19
- package/dist/tui_mk1/layout/layoutEngine.d.ts.map +1 -1
- package/dist/tui_mk1/layout/layoutEngine.js +521 -228
- package/dist/tui_mk1/layout/layoutEngine.js.map +1 -1
- package/dist/tui_mk1/log.d.ts +23 -0
- package/dist/tui_mk1/log.d.ts.map +1 -0
- package/dist/tui_mk1/log.js +125 -0
- package/dist/tui_mk1/log.js.map +1 -0
- package/dist/tui_mk1/logger.d.ts.map +1 -1
- package/dist/tui_mk1/logger.js +20 -10
- package/dist/tui_mk1/logger.js.map +1 -1
- package/dist/tui_mk1/mk1App.d.ts +13 -18
- package/dist/tui_mk1/mk1App.d.ts.map +1 -1
- package/dist/tui_mk1/mk1App.js +334 -157
- package/dist/tui_mk1/mk1App.js.map +1 -1
- package/dist/tui_mk1/resizeController.d.ts.map +1 -1
- package/dist/tui_mk1/resizeController.js +15 -1
- package/dist/tui_mk1/resizeController.js.map +1 -1
- package/dist/tui_mk1/stdoutGuard.d.ts.map +1 -1
- package/dist/tui_mk1/stdoutGuard.js +7 -0
- package/dist/tui_mk1/stdoutGuard.js.map +1 -1
- package/dist/tui_mk1/terminalRestore.d.ts.map +1 -1
- package/dist/tui_mk1/terminalRestore.js +19 -1
- package/dist/tui_mk1/terminalRestore.js.map +1 -1
- package/dist/tui_mk1/ui/offenderScanner.d.ts +31 -0
- package/dist/tui_mk1/ui/offenderScanner.d.ts.map +1 -0
- package/dist/tui_mk1/ui/offenderScanner.js +80 -0
- package/dist/tui_mk1/ui/offenderScanner.js.map +1 -0
- package/dist/tui_mk1/ui/safe.d.ts +9 -0
- package/dist/tui_mk1/ui/safe.d.ts.map +1 -0
- package/dist/tui_mk1/ui/safe.js +29 -0
- package/dist/tui_mk1/ui/safe.js.map +1 -0
- package/dist/tui_mk1/ui/safeText.d.ts +22 -0
- package/dist/tui_mk1/ui/safeText.d.ts.map +1 -0
- package/dist/tui_mk1/ui/safeText.js +50 -0
- package/dist/tui_mk1/ui/safeText.js.map +1 -0
- package/dist/tui_mk1/ui/uiBuilder.d.ts +44 -0
- package/dist/tui_mk1/ui/uiBuilder.d.ts.map +1 -0
- package/dist/tui_mk1/ui/uiBuilder.js +467 -0
- package/dist/tui_mk1/ui/uiBuilder.js.map +1 -0
- package/dist/tui_mk1/viewport/safeViewport.d.ts +10 -1
- package/dist/tui_mk1/viewport/safeViewport.d.ts.map +1 -1
- package/dist/tui_mk1/viewport/safeViewport.js +47 -15
- package/dist/tui_mk1/viewport/safeViewport.js.map +1 -1
- package/dist/tui_mk2/kernel.d.ts +28 -0
- package/dist/tui_mk2/kernel.d.ts.map +1 -0
- package/dist/tui_mk2/kernel.js +138 -0
- package/dist/tui_mk2/kernel.js.map +1 -0
- package/dist/tui_mk2/mk2App.d.ts +33 -0
- package/dist/tui_mk2/mk2App.d.ts.map +1 -0
- package/dist/tui_mk2/mk2App.js +135 -0
- package/dist/tui_mk2/mk2App.js.map +1 -0
- package/package.json +8 -7
- package/dist/tui_mk1/ui/panels/createSection.d.ts +0 -18
- package/dist/tui_mk1/ui/panels/createSection.d.ts.map +0 -1
- package/dist/tui_mk1/ui/panels/createSection.js +0 -42
- package/dist/tui_mk1/ui/panels/createSection.js.map +0 -1
- package/dist/tui_mk1/ui/panels.d.ts +0 -23
- package/dist/tui_mk1/ui/panels.d.ts.map +0 -1
- package/dist/tui_mk1/ui/panels.js +0 -108
- package/dist/tui_mk1/ui/panels.js.map +0 -1
- package/dist/tui_mk1/ui/render/sectionRenderer.d.ts +0 -21
- package/dist/tui_mk1/ui/render/sectionRenderer.d.ts.map +0 -1
- package/dist/tui_mk1/ui/render/sectionRenderer.js +0 -32
- package/dist/tui_mk1/ui/render/sectionRenderer.js.map +0 -1
- package/dist/tui_mk1/ui/widgetManager.d.ts +0 -58
- package/dist/tui_mk1/ui/widgetManager.d.ts.map +0 -1
- package/dist/tui_mk1/ui/widgetManager.js +0 -197
- package/dist/tui_mk1/ui/widgetManager.js.map +0 -1
- package/dist/ui/boot/sequence.d.ts +0 -10
- package/dist/ui/boot/sequence.d.ts.map +0 -1
- package/dist/ui/boot/sequence.js +0 -171
- package/dist/ui/boot/sequence.js.map +0 -1
- package/dist/ui/constraints/layoutSpec.d.ts +0 -47
- package/dist/ui/constraints/layoutSpec.d.ts.map +0 -1
- package/dist/ui/constraints/layoutSpec.js +0 -60
- package/dist/ui/constraints/layoutSpec.js.map +0 -1
- package/dist/ui/constraints/unknownHandling.d.ts +0 -29
- package/dist/ui/constraints/unknownHandling.d.ts.map +0 -1
- package/dist/ui/constraints/unknownHandling.js +0 -60
- package/dist/ui/constraints/unknownHandling.js.map +0 -1
- package/dist/ui/drilldowns/feed.d.ts +0 -11
- package/dist/ui/drilldowns/feed.d.ts.map +0 -1
- package/dist/ui/drilldowns/feed.js +0 -68
- package/dist/ui/drilldowns/feed.js.map +0 -1
- package/dist/ui/drilldowns/index.d.ts +0 -7
- package/dist/ui/drilldowns/index.d.ts.map +0 -1
- package/dist/ui/drilldowns/index.js +0 -8
- package/dist/ui/drilldowns/index.js.map +0 -1
- package/dist/ui/drilldowns/posture.d.ts +0 -11
- package/dist/ui/drilldowns/posture.d.ts.map +0 -1
- package/dist/ui/drilldowns/posture.js +0 -74
- package/dist/ui/drilldowns/posture.js.map +0 -1
- package/dist/ui/intelligence-posture-view.d.ts +0 -22
- package/dist/ui/intelligence-posture-view.d.ts.map +0 -1
- package/dist/ui/intelligence-posture-view.js +0 -169
- package/dist/ui/intelligence-posture-view.js.map +0 -1
- package/dist/ui/navigation/keymaps.d.ts +0 -26
- package/dist/ui/navigation/keymaps.d.ts.map +0 -1
- package/dist/ui/navigation/keymaps.js +0 -135
- package/dist/ui/navigation/keymaps.js.map +0 -1
- package/dist/ui/navigation/palette.d.ts +0 -10
- package/dist/ui/navigation/palette.d.ts.map +0 -1
- package/dist/ui/navigation/palette.js +0 -133
- package/dist/ui/navigation/palette.js.map +0 -1
- package/dist/ui/navigation/state.d.ts +0 -47
- package/dist/ui/navigation/state.d.ts.map +0 -1
- package/dist/ui/navigation/state.js +0 -84
- package/dist/ui/navigation/state.js.map +0 -1
- package/dist/ui/navigation/types.d.ts +0 -38
- package/dist/ui/navigation/types.d.ts.map +0 -1
- package/dist/ui/navigation/types.js +0 -36
- package/dist/ui/navigation/types.js.map +0 -1
- package/dist/ui/panels/active-assets.d.ts +0 -12
- package/dist/ui/panels/active-assets.d.ts.map +0 -1
- package/dist/ui/panels/active-assets.js +0 -83
- package/dist/ui/panels/active-assets.js.map +0 -1
- package/dist/ui/panels/capability-flags.d.ts +0 -12
- package/dist/ui/panels/capability-flags.d.ts.map +0 -1
- package/dist/ui/panels/capability-flags.js +0 -59
- package/dist/ui/panels/capability-flags.js.map +0 -1
- package/dist/ui/panels/command-surface.d.ts +0 -12
- package/dist/ui/panels/command-surface.d.ts.map +0 -1
- package/dist/ui/panels/command-surface.js +0 -55
- package/dist/ui/panels/command-surface.js.map +0 -1
- package/dist/ui/panels/network-origin.d.ts +0 -12
- package/dist/ui/panels/network-origin.d.ts.map +0 -1
- package/dist/ui/panels/network-origin.js +0 -79
- package/dist/ui/panels/network-origin.js.map +0 -1
- package/dist/ui/panels/operations-feed.d.ts +0 -12
- package/dist/ui/panels/operations-feed.d.ts.map +0 -1
- package/dist/ui/panels/operations-feed.js +0 -90
- package/dist/ui/panels/operations-feed.js.map +0 -1
- package/dist/ui/panels/posture.d.ts +0 -12
- package/dist/ui/panels/posture.d.ts.map +0 -1
- package/dist/ui/panels/posture.js +0 -84
- package/dist/ui/panels/posture.js.map +0 -1
- package/dist/ui/panels/resources.d.ts +0 -11
- package/dist/ui/panels/resources.d.ts.map +0 -1
- package/dist/ui/panels/resources.js +0 -88
- package/dist/ui/panels/resources.js.map +0 -1
- package/dist/ui/primitives/Panel.d.ts +0 -25
- package/dist/ui/primitives/Panel.d.ts.map +0 -1
- package/dist/ui/primitives/Panel.js +0 -59
- package/dist/ui/primitives/Panel.js.map +0 -1
- package/dist/ui/rendering/metricRenderer.d.ts +0 -24
- package/dist/ui/rendering/metricRenderer.d.ts.map +0 -1
- package/dist/ui/rendering/metricRenderer.js +0 -86
- package/dist/ui/rendering/metricRenderer.js.map +0 -1
- package/dist/ui/runtime/hub.d.ts +0 -12
- package/dist/ui/runtime/hub.d.ts.map +0 -1
- package/dist/ui/runtime/hub.js +0 -486
- package/dist/ui/runtime/hub.js.map +0 -1
- package/dist/ui/runtime/hubValidation.d.ts +0 -23
- package/dist/ui/runtime/hubValidation.d.ts.map +0 -1
- package/dist/ui/runtime/hubValidation.js +0 -90
- package/dist/ui/runtime/hubValidation.js.map +0 -1
- package/dist/ui/runtime/index.d.ts +0 -29
- package/dist/ui/runtime/index.d.ts.map +0 -1
- package/dist/ui/runtime/index.js +0 -297
- package/dist/ui/runtime/index.js.map +0 -1
- package/dist/ui/runtime/no-tui.d.ts +0 -12
- package/dist/ui/runtime/no-tui.d.ts.map +0 -1
- package/dist/ui/runtime/no-tui.js +0 -77
- package/dist/ui/runtime/no-tui.js.map +0 -1
- package/dist/ui/runtime/state-builder.d.ts +0 -13
- package/dist/ui/runtime/state-builder.d.ts.map +0 -1
- package/dist/ui/runtime/state-builder.js +0 -114
- package/dist/ui/runtime/state-builder.js.map +0 -1
- package/dist/ui/runtime/terminalSizeCheck.d.ts +0 -10
- package/dist/ui/runtime/terminalSizeCheck.d.ts.map +0 -1
- package/dist/ui/runtime/terminalSizeCheck.js +0 -51
- package/dist/ui/runtime/terminalSizeCheck.js.map +0 -1
- package/dist/ui/runtime/tuiLogGate.d.ts +0 -22
- package/dist/ui/runtime/tuiLogGate.d.ts.map +0 -1
- package/dist/ui/runtime/tuiLogGate.js +0 -68
- package/dist/ui/runtime/tuiLogGate.js.map +0 -1
- package/dist/ui/state/types.d.ts +0 -72
- package/dist/ui/state/types.d.ts.map +0 -1
- package/dist/ui/state/types.js +0 -6
- package/dist/ui/state/types.js.map +0 -1
- package/dist/ui/theme/borders.d.ts +0 -20
- package/dist/ui/theme/borders.d.ts.map +0 -1
- package/dist/ui/theme/borders.js +0 -55
- package/dist/ui/theme/borders.js.map +0 -1
- package/dist/ui/theme/tokens.d.ts +0 -28
- package/dist/ui/theme/tokens.d.ts.map +0 -1
- package/dist/ui/theme/tokens.js +0 -50
- package/dist/ui/theme/tokens.js.map +0 -1
- package/dist/ui/theme/typography.d.ts +0 -14
- package/dist/ui/theme/typography.d.ts.map +0 -1
- package/dist/ui/theme/typography.js +0 -30
- package/dist/ui/theme/typography.js.map +0 -1
- package/dist/ui/v3/collectors/assets.collector.d.ts +0 -20
- package/dist/ui/v3/collectors/assets.collector.d.ts.map +0 -1
- package/dist/ui/v3/collectors/assets.collector.js +0 -80
- package/dist/ui/v3/collectors/assets.collector.js.map +0 -1
- package/dist/ui/v3/collectors/capabilities.collector.d.ts +0 -18
- package/dist/ui/v3/collectors/capabilities.collector.d.ts.map +0 -1
- package/dist/ui/v3/collectors/capabilities.collector.js +0 -113
- package/dist/ui/v3/collectors/capabilities.collector.js.map +0 -1
- package/dist/ui/v3/collectors/network.collector.d.ts +0 -18
- package/dist/ui/v3/collectors/network.collector.d.ts.map +0 -1
- package/dist/ui/v3/collectors/network.collector.js +0 -37
- package/dist/ui/v3/collectors/network.collector.js.map +0 -1
- package/dist/ui/v3/collectors/posture.derive.d.ts +0 -24
- package/dist/ui/v3/collectors/posture.derive.d.ts.map +0 -1
- package/dist/ui/v3/collectors/posture.derive.js +0 -57
- package/dist/ui/v3/collectors/posture.derive.js.map +0 -1
- package/dist/ui/v3/collectors/resources.d.ts +0 -23
- package/dist/ui/v3/collectors/resources.d.ts.map +0 -1
- package/dist/ui/v3/collectors/resources.js +0 -136
- package/dist/ui/v3/collectors/resources.js.map +0 -1
- package/dist/ui/v3/commands/commandEngine.d.ts +0 -77
- package/dist/ui/v3/commands/commandEngine.d.ts.map +0 -1
- package/dist/ui/v3/commands/commandEngine.js +0 -3289
- package/dist/ui/v3/commands/commandEngine.js.map +0 -1
- package/dist/ui/v3/commands/commandResult.d.ts +0 -25
- package/dist/ui/v3/commands/commandResult.d.ts.map +0 -1
- package/dist/ui/v3/commands/commandResult.js +0 -19
- package/dist/ui/v3/commands/commandResult.js.map +0 -1
- package/dist/ui/v3/commands/diagnose.d.ts +0 -17
- package/dist/ui/v3/commands/diagnose.d.ts.map +0 -1
- package/dist/ui/v3/commands/diagnose.js +0 -62
- package/dist/ui/v3/commands/diagnose.js.map +0 -1
- package/dist/ui/v3/commands/errorClassifier.d.ts +0 -23
- package/dist/ui/v3/commands/errorClassifier.d.ts.map +0 -1
- package/dist/ui/v3/commands/errorClassifier.js +0 -63
- package/dist/ui/v3/commands/errorClassifier.js.map +0 -1
- package/dist/ui/v3/commands/parser.d.ts +0 -14
- package/dist/ui/v3/commands/parser.d.ts.map +0 -1
- package/dist/ui/v3/commands/parser.js +0 -29
- package/dist/ui/v3/commands/parser.js.map +0 -1
- package/dist/ui/v3/commands/router.d.ts +0 -13
- package/dist/ui/v3/commands/router.d.ts.map +0 -1
- package/dist/ui/v3/commands/router.js +0 -150
- package/dist/ui/v3/commands/router.js.map +0 -1
- package/dist/ui/v3/config/gateway.d.ts +0 -40
- package/dist/ui/v3/config/gateway.d.ts.map +0 -1
- package/dist/ui/v3/config/gateway.js +0 -113
- package/dist/ui/v3/config/gateway.js.map +0 -1
- package/dist/ui/v3/core/event.d.ts +0 -19
- package/dist/ui/v3/core/event.d.ts.map +0 -1
- package/dist/ui/v3/core/event.js +0 -7
- package/dist/ui/v3/core/event.js.map +0 -1
- package/dist/ui/v3/core/eventBus.d.ts +0 -39
- package/dist/ui/v3/core/eventBus.d.ts.map +0 -1
- package/dist/ui/v3/core/eventBus.js +0 -79
- package/dist/ui/v3/core/eventBus.js.map +0 -1
- package/dist/ui/v3/core/feedStore.d.ts +0 -34
- package/dist/ui/v3/core/feedStore.d.ts.map +0 -1
- package/dist/ui/v3/core/feedStore.js +0 -46
- package/dist/ui/v3/core/feedStore.js.map +0 -1
- package/dist/ui/v3/core/logger.d.ts +0 -40
- package/dist/ui/v3/core/logger.d.ts.map +0 -1
- package/dist/ui/v3/core/logger.js +0 -191
- package/dist/ui/v3/core/logger.js.map +0 -1
- package/dist/ui/v3/core/opEvent.d.ts +0 -15
- package/dist/ui/v3/core/opEvent.d.ts.map +0 -1
- package/dist/ui/v3/core/opEvent.js +0 -7
- package/dist/ui/v3/core/opEvent.js.map +0 -1
- package/dist/ui/v3/index.d.ts +0 -8
- package/dist/ui/v3/index.d.ts.map +0 -1
- package/dist/ui/v3/index.js +0 -51
- package/dist/ui/v3/index.js.map +0 -1
- package/dist/ui/v3/runtime/moduleConfig.d.ts +0 -21
- package/dist/ui/v3/runtime/moduleConfig.d.ts.map +0 -1
- package/dist/ui/v3/runtime/moduleConfig.js +0 -41
- package/dist/ui/v3/runtime/moduleConfig.js.map +0 -1
- package/dist/ui/v3/section0/index.d.ts +0 -22
- package/dist/ui/v3/section0/index.d.ts.map +0 -1
- package/dist/ui/v3/section0/index.js +0 -88
- package/dist/ui/v3/section0/index.js.map +0 -1
- package/dist/ui/v3/section0/runtime/createScreen.d.ts +0 -27
- package/dist/ui/v3/section0/runtime/createScreen.d.ts.map +0 -1
- package/dist/ui/v3/section0/runtime/createScreen.js +0 -55
- package/dist/ui/v3/section0/runtime/createScreen.js.map +0 -1
- package/dist/ui/v3/section0/runtime/lifecycle.d.ts +0 -53
- package/dist/ui/v3/section0/runtime/lifecycle.d.ts.map +0 -1
- package/dist/ui/v3/section0/runtime/lifecycle.js +0 -172
- package/dist/ui/v3/section0/runtime/lifecycle.js.map +0 -1
- package/dist/ui/v3/section1/index.d.ts +0 -19
- package/dist/ui/v3/section1/index.d.ts.map +0 -1
- package/dist/ui/v3/section1/index.js +0 -413
- package/dist/ui/v3/section1/index.js.map +0 -1
- package/dist/ui/v3/section1/runtime/commandLine.d.ts +0 -49
- package/dist/ui/v3/section1/runtime/commandLine.d.ts.map +0 -1
- package/dist/ui/v3/section1/runtime/commandLine.js +0 -183
- package/dist/ui/v3/section1/runtime/commandLine.js.map +0 -1
- package/dist/ui/v3/section1/runtime/focusLock.d.ts +0 -24
- package/dist/ui/v3/section1/runtime/focusLock.d.ts.map +0 -1
- package/dist/ui/v3/section1/runtime/focusLock.js +0 -44
- package/dist/ui/v3/section1/runtime/focusLock.js.map +0 -1
- package/dist/ui/v3/state/assertUiState.d.ts +0 -27
- package/dist/ui/v3/state/assertUiState.d.ts.map +0 -1
- package/dist/ui/v3/state/assertUiState.js +0 -89
- package/dist/ui/v3/state/assertUiState.js.map +0 -1
- package/dist/ui/v3/state/capabilitiesStore.d.ts +0 -54
- package/dist/ui/v3/state/capabilitiesStore.d.ts.map +0 -1
- package/dist/ui/v3/state/capabilitiesStore.js +0 -76
- package/dist/ui/v3/state/capabilitiesStore.js.map +0 -1
- package/dist/ui/v3/state/defaultState.d.ts +0 -19
- package/dist/ui/v3/state/defaultState.d.ts.map +0 -1
- package/dist/ui/v3/state/defaultState.js +0 -28
- package/dist/ui/v3/state/defaultState.js.map +0 -1
- package/dist/ui/v3/state/gatewayConnectionStore.d.ts +0 -72
- package/dist/ui/v3/state/gatewayConnectionStore.d.ts.map +0 -1
- package/dist/ui/v3/state/gatewayConnectionStore.js +0 -108
- package/dist/ui/v3/state/gatewayConnectionStore.js.map +0 -1
- package/dist/ui/v3/state/initializePostureState.d.ts +0 -23
- package/dist/ui/v3/state/initializePostureState.d.ts.map +0 -1
- package/dist/ui/v3/state/initializePostureState.js +0 -41
- package/dist/ui/v3/state/initializePostureState.js.map +0 -1
- package/dist/ui/v3/state/panelStore.d.ts +0 -80
- package/dist/ui/v3/state/panelStore.d.ts.map +0 -1
- package/dist/ui/v3/state/panelStore.js +0 -131
- package/dist/ui/v3/state/panelStore.js.map +0 -1
- package/dist/ui/v3/state/resourcesData.d.ts +0 -15
- package/dist/ui/v3/state/resourcesData.d.ts.map +0 -1
- package/dist/ui/v3/state/resourcesData.js +0 -7
- package/dist/ui/v3/state/resourcesData.js.map +0 -1
- package/dist/ui/v3/state/uiState.d.ts +0 -22
- package/dist/ui/v3/state/uiState.d.ts.map +0 -1
- package/dist/ui/v3/state/uiState.js +0 -13
- package/dist/ui/v3/state/uiState.js.map +0 -1
- package/dist/ui/v3/state/uiStateBuilder.d.ts +0 -32
- package/dist/ui/v3/state/uiStateBuilder.d.ts.map +0 -1
- package/dist/ui/v3/state/uiStateBuilder.js +0 -73
- package/dist/ui/v3/state/uiStateBuilder.js.map +0 -1
- package/dist/ui/v3/state/uiStateTypes.d.ts +0 -59
- package/dist/ui/v3/state/uiStateTypes.d.ts.map +0 -1
- package/dist/ui/v3/state/uiStateTypes.js +0 -8
- package/dist/ui/v3/state/uiStateTypes.js.map +0 -1
- package/dist/ui/v3/state/value.d.ts +0 -80
- package/dist/ui/v3/state/value.d.ts.map +0 -1
- package/dist/ui/v3/state/value.js +0 -96
- package/dist/ui/v3/state/value.js.map +0 -1
- package/dist/ui/v3/tui/geometry.d.ts +0 -83
- package/dist/ui/v3/tui/geometry.d.ts.map +0 -1
- package/dist/ui/v3/tui/geometry.js +0 -201
- package/dist/ui/v3/tui/geometry.js.map +0 -1
- package/dist/ui/v3/tui/startTui.d.ts +0 -37
- package/dist/ui/v3/tui/startTui.d.ts.map +0 -1
- package/dist/ui/v3/tui/startTui.js +0 -61
- package/dist/ui/v3/tui/startTui.js.map +0 -1
- package/dist/ui/v3/tui/terminalMode.d.ts +0 -31
- package/dist/ui/v3/tui/terminalMode.d.ts.map +0 -1
- package/dist/ui/v3/tui/terminalMode.js +0 -76
- package/dist/ui/v3/tui/terminalMode.js.map +0 -1
- package/dist/ui/v3/ui/debugUtils.d.ts +0 -67
- package/dist/ui/v3/ui/debugUtils.d.ts.map +0 -1
- package/dist/ui/v3/ui/debugUtils.js +0 -238
- package/dist/ui/v3/ui/debugUtils.js.map +0 -1
- package/dist/ui/v3/ui/focus.d.ts +0 -28
- package/dist/ui/v3/ui/focus.d.ts.map +0 -1
- package/dist/ui/v3/ui/focus.js +0 -38
- package/dist/ui/v3/ui/focus.js.map +0 -1
- package/dist/ui/v3/ui/layout/hubLayout.d.ts +0 -43
- package/dist/ui/v3/ui/layout/hubLayout.d.ts.map +0 -1
- package/dist/ui/v3/ui/layout/hubLayout.js +0 -170
- package/dist/ui/v3/ui/layout/hubLayout.js.map +0 -1
- package/dist/ui/v3/ui/layout/phase1Layout.d.ts +0 -63
- package/dist/ui/v3/ui/layout/phase1Layout.d.ts.map +0 -1
- package/dist/ui/v3/ui/layout/phase1Layout.js +0 -274
- package/dist/ui/v3/ui/layout/phase1Layout.js.map +0 -1
- package/dist/ui/v3/ui/layout/phase1Layout.test.d.ts +0 -5
- package/dist/ui/v3/ui/layout/phase1Layout.test.d.ts.map +0 -1
- package/dist/ui/v3/ui/layout/phase1Layout.test.js +0 -120
- package/dist/ui/v3/ui/layout/phase1Layout.test.js.map +0 -1
- package/dist/ui/v3/ui/minimalRuntime.d.ts +0 -14
- package/dist/ui/v3/ui/minimalRuntime.d.ts.map +0 -1
- package/dist/ui/v3/ui/minimalRuntime.js +0 -111
- package/dist/ui/v3/ui/minimalRuntime.js.map +0 -1
- package/dist/ui/v3/ui/panels/AssetsPanel.d.ts +0 -17
- package/dist/ui/v3/ui/panels/AssetsPanel.d.ts.map +0 -1
- package/dist/ui/v3/ui/panels/AssetsPanel.js +0 -53
- package/dist/ui/v3/ui/panels/AssetsPanel.js.map +0 -1
- package/dist/ui/v3/ui/panels/CapabilitiesPanel.d.ts +0 -20
- package/dist/ui/v3/ui/panels/CapabilitiesPanel.d.ts.map +0 -1
- package/dist/ui/v3/ui/panels/CapabilitiesPanel.js +0 -67
- package/dist/ui/v3/ui/panels/CapabilitiesPanel.js.map +0 -1
- package/dist/ui/v3/ui/panels/NetworkPanel.d.ts +0 -31
- package/dist/ui/v3/ui/panels/NetworkPanel.d.ts.map +0 -1
- package/dist/ui/v3/ui/panels/NetworkPanel.js +0 -153
- package/dist/ui/v3/ui/panels/NetworkPanel.js.map +0 -1
- package/dist/ui/v3/ui/panels/PosturePanel.d.ts +0 -16
- package/dist/ui/v3/ui/panels/PosturePanel.d.ts.map +0 -1
- package/dist/ui/v3/ui/panels/PosturePanel.js +0 -60
- package/dist/ui/v3/ui/panels/PosturePanel.js.map +0 -1
- package/dist/ui/v3/ui/panels/ResourcesPanel.d.ts +0 -20
- package/dist/ui/v3/ui/panels/ResourcesPanel.d.ts.map +0 -1
- package/dist/ui/v3/ui/panels/ResourcesPanel.js +0 -66
- package/dist/ui/v3/ui/panels/ResourcesPanel.js.map +0 -1
- package/dist/ui/v3/ui/phase1Runtime.d.ts +0 -29
- package/dist/ui/v3/ui/phase1Runtime.d.ts.map +0 -1
- package/dist/ui/v3/ui/phase1Runtime.js +0 -1648
- package/dist/ui/v3/ui/phase1Runtime.js.map +0 -1
- package/dist/ui/v3/ui/phase1RuntimeClean.d.ts +0 -34
- package/dist/ui/v3/ui/phase1RuntimeClean.d.ts.map +0 -1
- package/dist/ui/v3/ui/phase1RuntimeClean.js +0 -1841
- package/dist/ui/v3/ui/phase1RuntimeClean.js.map +0 -1
- package/dist/ui/v3/ui/primitives/Panel.d.ts +0 -39
- package/dist/ui/v3/ui/primitives/Panel.d.ts.map +0 -1
- package/dist/ui/v3/ui/primitives/Panel.js +0 -105
- package/dist/ui/v3/ui/primitives/Panel.js.map +0 -1
- package/dist/ui/v3/ui/theme.d.ts +0 -37
- package/dist/ui/v3/ui/theme.d.ts.map +0 -1
- package/dist/ui/v3/ui/theme.js +0 -40
- package/dist/ui/v3/ui/theme.js.map +0 -1
- package/dist/ui/v3/ui/uiRuntime.d.ts +0 -40
- package/dist/ui/v3/ui/uiRuntime.d.ts.map +0 -1
- package/dist/ui/v3/ui/uiRuntime.js +0 -60
- package/dist/ui/v3/ui/uiRuntime.js.map +0 -1
- package/dist/ui/v3/ui/widgets/CommandLine.d.ts +0 -26
- package/dist/ui/v3/ui/widgets/CommandLine.d.ts.map +0 -1
- package/dist/ui/v3/ui/widgets/CommandLine.js +0 -67
- package/dist/ui/v3/ui/widgets/CommandLine.js.map +0 -1
- package/dist/ui/v3/v1Adapters/agents.d.ts +0 -72
- package/dist/ui/v3/v1Adapters/agents.d.ts.map +0 -1
- package/dist/ui/v3/v1Adapters/agents.js +0 -182
- package/dist/ui/v3/v1Adapters/agents.js.map +0 -1
- package/dist/ui/v3/v1Adapters/config.d.ts +0 -67
- package/dist/ui/v3/v1Adapters/config.d.ts.map +0 -1
- package/dist/ui/v3/v1Adapters/config.js +0 -78
- package/dist/ui/v3/v1Adapters/config.js.map +0 -1
- package/dist/ui/v3/v1Adapters/connect.d.ts +0 -77
- package/dist/ui/v3/v1Adapters/connect.d.ts.map +0 -1
- package/dist/ui/v3/v1Adapters/connect.js +0 -576
- package/dist/ui/v3/v1Adapters/connect.js.map +0 -1
- package/dist/ui/v3/v1Adapters/httpDebug.d.ts +0 -19
- package/dist/ui/v3/v1Adapters/httpDebug.d.ts.map +0 -1
- package/dist/ui/v3/v1Adapters/httpDebug.js +0 -60
- package/dist/ui/v3/v1Adapters/httpDebug.js.map +0 -1
- package/dist/ui/v3/v1Adapters/runs.d.ts +0 -77
- package/dist/ui/v3/v1Adapters/runs.d.ts.map +0 -1
- package/dist/ui/v3/v1Adapters/runs.js +0 -339
- package/dist/ui/v3/v1Adapters/runs.js.map +0 -1
- package/dist/ui/v4/engine/renderFrame.d.ts +0 -47
- package/dist/ui/v4/engine/renderFrame.d.ts.map +0 -1
- package/dist/ui/v4/engine/renderFrame.js +0 -653
- package/dist/ui/v4/engine/renderFrame.js.map +0 -1
- package/dist/ui/v4/engine/resizeController.d.ts +0 -48
- package/dist/ui/v4/engine/resizeController.d.ts.map +0 -1
- package/dist/ui/v4/engine/resizeController.js +0 -285
- package/dist/ui/v4/engine/resizeController.js.map +0 -1
- package/dist/ui/v4/engine/safeViewport.d.ts +0 -47
- package/dist/ui/v4/engine/safeViewport.d.ts.map +0 -1
- package/dist/ui/v4/engine/safeViewport.js +0 -123
- package/dist/ui/v4/engine/safeViewport.js.map +0 -1
- package/dist/ui/v4/engine/terminalProfile.d.ts +0 -56
- package/dist/ui/v4/engine/terminalProfile.d.ts.map +0 -1
- package/dist/ui/v4/engine/terminalProfile.js +0 -115
- package/dist/ui/v4/engine/terminalProfile.js.map +0 -1
- package/dist/ui/v4/index.d.ts +0 -28
- package/dist/ui/v4/index.d.ts.map +0 -1
- package/dist/ui/v4/index.js +0 -993
- package/dist/ui/v4/index.js.map +0 -1
- package/dist/ui/v4/layout/layoutEngine.d.ts +0 -62
- package/dist/ui/v4/layout/layoutEngine.d.ts.map +0 -1
- package/dist/ui/v4/layout/layoutEngine.js +0 -294
- package/dist/ui/v4/layout/layoutEngine.js.map +0 -1
- package/dist/ui/v4/runtime/keepAlive.d.ts +0 -21
- package/dist/ui/v4/runtime/keepAlive.d.ts.map +0 -1
- package/dist/ui/v4/runtime/keepAlive.js +0 -149
- package/dist/ui/v4/runtime/keepAlive.js.map +0 -1
- package/dist/ui/v4/runtime/logger.d.ts +0 -35
- package/dist/ui/v4/runtime/logger.d.ts.map +0 -1
- package/dist/ui/v4/runtime/logger.js +0 -109
- package/dist/ui/v4/runtime/logger.js.map +0 -1
- package/dist/ui/v5/debug/assertNoOverflow.d.ts +0 -28
- package/dist/ui/v5/debug/assertNoOverflow.d.ts.map +0 -1
- package/dist/ui/v5/debug/assertNoOverflow.js +0 -63
- package/dist/ui/v5/debug/assertNoOverflow.js.map +0 -1
- package/dist/ui/v5/debug/debugCommands.d.ts +0 -20
- package/dist/ui/v5/debug/debugCommands.d.ts.map +0 -1
- package/dist/ui/v5/debug/debugCommands.js +0 -461
- package/dist/ui/v5/debug/debugCommands.js.map +0 -1
- package/dist/ui/v5/debugCommands.d.ts +0 -20
- package/dist/ui/v5/debugCommands.d.ts.map +0 -1
- package/dist/ui/v5/debugCommands.js +0 -81
- package/dist/ui/v5/debugCommands.js.map +0 -1
- package/dist/ui/v5/guardrails/stdoutGuard.d.ts +0 -23
- package/dist/ui/v5/guardrails/stdoutGuard.d.ts.map +0 -1
- package/dist/ui/v5/guardrails/stdoutGuard.js +0 -94
- package/dist/ui/v5/guardrails/stdoutGuard.js.map +0 -1
- package/dist/ui/v5/guardrails/terminalRestore.d.ts +0 -17
- package/dist/ui/v5/guardrails/terminalRestore.d.ts.map +0 -1
- package/dist/ui/v5/guardrails/terminalRestore.js +0 -47
- package/dist/ui/v5/guardrails/terminalRestore.js.map +0 -1
- package/dist/ui/v5/index.d.ts +0 -30
- package/dist/ui/v5/index.d.ts.map +0 -1
- package/dist/ui/v5/index.js +0 -243
- package/dist/ui/v5/index.js.map +0 -1
- package/dist/ui/v5/kernel/kernel.d.ts +0 -81
- package/dist/ui/v5/kernel/kernel.d.ts.map +0 -1
- package/dist/ui/v5/kernel/kernel.js +0 -339
- package/dist/ui/v5/kernel/kernel.js.map +0 -1
- package/dist/ui/v5/kernel.d.ts +0 -75
- package/dist/ui/v5/kernel.d.ts.map +0 -1
- package/dist/ui/v5/kernel.js +0 -289
- package/dist/ui/v5/kernel.js.map +0 -1
- package/dist/ui/v5/layout/clampRect.d.ts +0 -28
- package/dist/ui/v5/layout/clampRect.d.ts.map +0 -1
- package/dist/ui/v5/layout/clampRect.js +0 -45
- package/dist/ui/v5/layout/clampRect.js.map +0 -1
- package/dist/ui/v5/layout/layoutEngine.d.ts +0 -16
- package/dist/ui/v5/layout/layoutEngine.d.ts.map +0 -1
- package/dist/ui/v5/layout/layoutEngine.js +0 -99
- package/dist/ui/v5/layout/layoutEngine.js.map +0 -1
- package/dist/ui/v5/renderGate.d.ts +0 -19
- package/dist/ui/v5/renderGate.d.ts.map +0 -1
- package/dist/ui/v5/renderGate.js +0 -36
- package/dist/ui/v5/renderGate.js.map +0 -1
- package/dist/ui/v5/resize/resizeController.d.ts +0 -62
- package/dist/ui/v5/resize/resizeController.d.ts.map +0 -1
- package/dist/ui/v5/resize/resizeController.js +0 -141
- package/dist/ui/v5/resize/resizeController.js.map +0 -1
- package/dist/ui/v5/resizeController.d.ts +0 -55
- package/dist/ui/v5/resizeController.d.ts.map +0 -1
- package/dist/ui/v5/resizeController.js +0 -124
- package/dist/ui/v5/resizeController.js.map +0 -1
- package/dist/ui/v5/runtime/keepAlive.d.ts +0 -37
- package/dist/ui/v5/runtime/keepAlive.d.ts.map +0 -1
- package/dist/ui/v5/runtime/keepAlive.js +0 -122
- package/dist/ui/v5/runtime/keepAlive.js.map +0 -1
- package/dist/ui/v5/runtime/restoreTerminal.d.ts +0 -34
- package/dist/ui/v5/runtime/restoreTerminal.d.ts.map +0 -1
- package/dist/ui/v5/runtime/restoreTerminal.js +0 -100
- package/dist/ui/v5/runtime/restoreTerminal.js.map +0 -1
- package/dist/ui/v5/runtime/stdoutGuard.d.ts +0 -42
- package/dist/ui/v5/runtime/stdoutGuard.d.ts.map +0 -1
- package/dist/ui/v5/runtime/stdoutGuard.js +0 -156
- package/dist/ui/v5/runtime/stdoutGuard.js.map +0 -1
- package/dist/ui/v5/viewport/getViewport.d.ts +0 -23
- package/dist/ui/v5/viewport/getViewport.d.ts.map +0 -1
- package/dist/ui/v5/viewport/getViewport.js +0 -117
- package/dist/ui/v5/viewport/getViewport.js.map +0 -1
- package/dist/ui/v5/viewport.d.ts +0 -41
- package/dist/ui/v5/viewport.d.ts.map +0 -1
- package/dist/ui/v5/viewport.js +0 -90
- package/dist/ui/v5/viewport.js.map +0 -1
- package/dist/ui/widgets/flagRow.d.ts +0 -25
- package/dist/ui/widgets/flagRow.d.ts.map +0 -1
- package/dist/ui/widgets/flagRow.js +0 -57
- package/dist/ui/widgets/flagRow.js.map +0 -1
- package/dist/ui/widgets/index.d.ts +0 -9
- package/dist/ui/widgets/index.d.ts.map +0 -1
- package/dist/ui/widgets/index.js +0 -9
- package/dist/ui/widgets/index.js.map +0 -1
- package/dist/ui/widgets/meter.d.ts +0 -18
- package/dist/ui/widgets/meter.d.ts.map +0 -1
- package/dist/ui/widgets/meter.js +0 -38
- package/dist/ui/widgets/meter.js.map +0 -1
- package/dist/ui/widgets/miniMap.d.ts +0 -26
- package/dist/ui/widgets/miniMap.d.ts.map +0 -1
- package/dist/ui/widgets/miniMap.js +0 -94
- package/dist/ui/widgets/miniMap.js.map +0 -1
- package/dist/ui/widgets/sparkline.d.ts +0 -17
- package/dist/ui/widgets/sparkline.d.ts.map +0 -1
- package/dist/ui/widgets/sparkline.js +0 -65
- package/dist/ui/widgets/sparkline.js.map +0 -1
package/dist/ui/v4/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ui/v4/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* V4 Layout Engine - Safe Viewport with Integer Allocation
|
|
3
|
-
*
|
|
4
|
-
* ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
|
|
5
|
-
* DO NOT MODIFY. Development moved to V5.
|
|
6
|
-
* See FROZEN.md in v4 directory.
|
|
7
|
-
*
|
|
8
|
-
* Rule 2: No percent positioning for outer edges - use left+right anchoring
|
|
9
|
-
* Rule 3: Integer column width allocation with remainder to center
|
|
10
|
-
*
|
|
11
|
-
* Uses safe viewport (cols - 1) to prevent overflow.
|
|
12
|
-
*/
|
|
13
|
-
import { type SafeViewport } from '../engine/safeViewport.js';
|
|
14
|
-
export type LayoutMode = 'normal' | 'narrow';
|
|
15
|
-
/**
|
|
16
|
-
* Column layout spec (pixels, integer allocation)
|
|
17
|
-
* Rule 3: Integer widths that sum exactly to safeCols
|
|
18
|
-
*/
|
|
19
|
-
export type ColumnSpec = {
|
|
20
|
-
left: number;
|
|
21
|
-
width: number;
|
|
22
|
-
};
|
|
23
|
-
/**
|
|
24
|
-
* Layout specification (percentage-based)
|
|
25
|
-
*/
|
|
26
|
-
export type LayoutSpec = {
|
|
27
|
-
mode: LayoutMode;
|
|
28
|
-
columns: {
|
|
29
|
-
left: ColumnSpec;
|
|
30
|
-
center: ColumnSpec;
|
|
31
|
-
right: ColumnSpec;
|
|
32
|
-
};
|
|
33
|
-
rows: {
|
|
34
|
-
mainTop: number;
|
|
35
|
-
mainBottom: number;
|
|
36
|
-
cmdTop: number;
|
|
37
|
-
cmdHeight: number;
|
|
38
|
-
};
|
|
39
|
-
raw: {
|
|
40
|
-
cols: number;
|
|
41
|
-
rows: number;
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* Validate layout spec satisfies hard invariant: no widget draws at x >= safeCols
|
|
46
|
-
*
|
|
47
|
-
* Returns violations array if any panel violates
|
|
48
|
-
*/
|
|
49
|
-
export declare function validateLayoutInvariant(spec: LayoutSpec, safeCols: number, safeRows: number): Array<{
|
|
50
|
-
panel: string;
|
|
51
|
-
violation: string;
|
|
52
|
-
}>;
|
|
53
|
-
/**
|
|
54
|
-
* Compute layout for given safe viewport
|
|
55
|
-
*
|
|
56
|
-
* HARD INVARIANT: No widget may draw at x >= safeCols
|
|
57
|
-
*
|
|
58
|
-
* @param viewport - Safe viewport (from getSafeViewport)
|
|
59
|
-
* @returns Layout spec with integer pixel positions (guaranteed to satisfy invariant)
|
|
60
|
-
*/
|
|
61
|
-
export declare function computeLayout(viewport: SafeViewport): LayoutSpec;
|
|
62
|
-
//# sourceMappingURL=layoutEngine.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layoutEngine.d.ts","sourceRoot":"","sources":["../../../../src/ui/v4/layout/layoutEngine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE;QACP,IAAI,EAAE,UAAU,CAAC;QACjB,MAAM,EAAE,UAAU,CAAC;QACnB,KAAK,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,CAAC;AAsMF;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAoCzI;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,UAAU,CAkEhE"}
|
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* V4 Layout Engine - Safe Viewport with Integer Allocation
|
|
3
|
-
*
|
|
4
|
-
* ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
|
|
5
|
-
* DO NOT MODIFY. Development moved to V5.
|
|
6
|
-
* See FROZEN.md in v4 directory.
|
|
7
|
-
*
|
|
8
|
-
* Rule 2: No percent positioning for outer edges - use left+right anchoring
|
|
9
|
-
* Rule 3: Integer column width allocation with remainder to center
|
|
10
|
-
*
|
|
11
|
-
* Uses safe viewport (cols - 1) to prevent overflow.
|
|
12
|
-
*/
|
|
13
|
-
import { tuiError } from '../runtime/logger.js';
|
|
14
|
-
/**
|
|
15
|
-
* Mode selection constants
|
|
16
|
-
*/
|
|
17
|
-
const NARROW_THRESHOLD_COLS = 140;
|
|
18
|
-
const MIN_ROWS = 28;
|
|
19
|
-
/**
|
|
20
|
-
* Mode selection (only real "math")
|
|
21
|
-
*
|
|
22
|
-
* normal if cols >= 140 && rows >= 28
|
|
23
|
-
* else narrow
|
|
24
|
-
*/
|
|
25
|
-
function selectMode(cols, rows) {
|
|
26
|
-
if (cols >= NARROW_THRESHOLD_COLS && rows >= MIN_ROWS) {
|
|
27
|
-
return 'normal';
|
|
28
|
-
}
|
|
29
|
-
return 'narrow';
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Compute normal mode layout (3 columns, integer allocation)
|
|
33
|
-
*
|
|
34
|
-
* HARD INVARIANT: No widget may draw at x >= safeCols
|
|
35
|
-
*
|
|
36
|
-
* Blessed borders add:
|
|
37
|
-
* - Left border: +1 char on the left
|
|
38
|
-
* - Right border: +1 char on the right (if present)
|
|
39
|
-
*
|
|
40
|
-
* So for a panel with both borders: actualRightEdge = x + w + 2
|
|
41
|
-
* For rightmost panel (no right border): actualRightEdge = x + w + 1
|
|
42
|
-
*
|
|
43
|
-
* Rule: actualRightEdge <= safeCols for ALL panels
|
|
44
|
-
*/
|
|
45
|
-
function computeNormalSpec(safeCols, rows) {
|
|
46
|
-
const cmdHeight = 3;
|
|
47
|
-
const mainBottom = rows - cmdHeight;
|
|
48
|
-
// Border accounting:
|
|
49
|
-
// - Left panel: has both borders, so actualRightEdge = left + width + 2
|
|
50
|
-
// - Center panel: has both borders, so actualRightEdge = left + width + 2
|
|
51
|
-
// - Right panel: has only left border, so actualRightEdge = left + width + 1
|
|
52
|
-
const LEFT_BORDER_PAD = 1; // Blessed adds 1 char for left border
|
|
53
|
-
const RIGHT_BORDER_PAD = 1; // Blessed adds 1 char for right border (if present)
|
|
54
|
-
// CRITICAL FIX: Right panel calculation bug
|
|
55
|
-
// If we do: centerW = safeCols - leftW - rightW, then rightLeft = leftW + centerW = safeCols - rightW
|
|
56
|
-
// So: rightActualRight = (safeCols - rightW) + rightW + 1 = safeCols + 1 (ALWAYS VIOLATES!)
|
|
57
|
-
//
|
|
58
|
-
// Solution: We must ensure right panel's right edge accounts for the border BEFORE calculating widths
|
|
59
|
-
// Target widths (percentage-based, will be clamped)
|
|
60
|
-
const targetLeftW = Math.floor(safeCols * 0.22);
|
|
61
|
-
const targetRightW = Math.floor(safeCols * 0.28);
|
|
62
|
-
// HARD INVARIANT: Right panel must satisfy: rightLeft + rightW + LEFT_BORDER_PAD <= safeCols
|
|
63
|
-
// We need to work backwards: ensure right panel fits, then allocate remaining to left/center
|
|
64
|
-
// Strategy: Start with left panel, then center, then ensure right fits
|
|
65
|
-
// Left panel constraint: 0 + leftW + 2 (borders) <= safeCols, so leftW <= safeCols - 2
|
|
66
|
-
const maxLeftW = safeCols - LEFT_BORDER_PAD - RIGHT_BORDER_PAD;
|
|
67
|
-
const finalLeftW = Math.min(targetLeftW, maxLeftW);
|
|
68
|
-
const finalLeftLeft = 0;
|
|
69
|
-
// Center panel constraint: centerLeft + centerW + 2 (borders) <= safeCols
|
|
70
|
-
// But centerLeft = finalLeftW, so: centerW <= safeCols - finalLeftW - 2
|
|
71
|
-
const centerLeftPos = finalLeftW;
|
|
72
|
-
const maxCenterW = safeCols - centerLeftPos - LEFT_BORDER_PAD - RIGHT_BORDER_PAD;
|
|
73
|
-
// Right panel constraint: rightLeft + rightW + 1 (left border only) <= safeCols
|
|
74
|
-
// rightLeft = centerLeftPos + centerW
|
|
75
|
-
// So: (centerLeftPos + centerW) + rightW + 1 <= safeCols
|
|
76
|
-
// Therefore: centerW + rightW <= safeCols - centerLeftPos - 1
|
|
77
|
-
// And we want: centerW as large as possible, rightW >= targetRightW
|
|
78
|
-
// So: centerW <= safeCols - centerLeftPos - 1 - targetRightW
|
|
79
|
-
// Calculate maximum center width that allows right panel to fit
|
|
80
|
-
// Right panel needs: rightLeftPos + rightW + 1 <= safeCols
|
|
81
|
-
// Where rightLeftPos = centerLeftPos + centerW
|
|
82
|
-
// So: (centerLeftPos + centerW) + targetRightW + 1 <= safeCols
|
|
83
|
-
// Therefore: centerW <= safeCols - centerLeftPos - targetRightW - 1
|
|
84
|
-
const maxCenterWForRight = safeCols - centerLeftPos - targetRightW - LEFT_BORDER_PAD;
|
|
85
|
-
const actualMaxCenterW = Math.min(maxCenterW, maxCenterWForRight);
|
|
86
|
-
// Target center width (remainder after left, but clamped)
|
|
87
|
-
const targetCenterW = safeCols - finalLeftW - targetRightW;
|
|
88
|
-
const finalCenterW = Math.max(10, Math.min(targetCenterW, actualMaxCenterW)); // Min 10 for visibility
|
|
89
|
-
// Right panel position and width
|
|
90
|
-
const rightLeftPos = centerLeftPos + finalCenterW;
|
|
91
|
-
// Right panel: rightLeftPos + rightW + 1 <= safeCols
|
|
92
|
-
// CRITICAL: We need rightEdge < safeCols, not <=, to prevent scrollbar
|
|
93
|
-
// So: rightW <= safeCols - rightLeftPos - LEFT_BORDER_PAD - 1 (extra -1 for safety)
|
|
94
|
-
const maxRightW = safeCols - rightLeftPos - LEFT_BORDER_PAD - 1; // Extra -1 to ensure rightEdge < safeCols
|
|
95
|
-
const finalRightW = Math.max(10, Math.min(targetRightW, maxRightW)); // Min 10 for visibility
|
|
96
|
-
// Ensure widths are reasonable (at least 20 chars for left/right, 30 for center)
|
|
97
|
-
// But allow smaller if absolutely necessary (don't force narrow mode unless critically small)
|
|
98
|
-
if (finalLeftW < 5 || finalCenterW < 5 || finalRightW < 5) {
|
|
99
|
-
// Only force narrow mode if panels are critically small
|
|
100
|
-
return computeNarrowSpec(safeCols, rows);
|
|
101
|
-
}
|
|
102
|
-
// Verify all panels satisfy invariant (STRICT: rightEdge < safeCols, not <=)
|
|
103
|
-
const leftActualRight = finalLeftLeft + finalLeftW + LEFT_BORDER_PAD + RIGHT_BORDER_PAD;
|
|
104
|
-
const centerActualRight = centerLeftPos + finalCenterW + LEFT_BORDER_PAD + RIGHT_BORDER_PAD;
|
|
105
|
-
const rightActualRight = rightLeftPos + finalRightW + LEFT_BORDER_PAD;
|
|
106
|
-
// CRITICAL: Must be strictly < safeCols to prevent scrollbar (not <=)
|
|
107
|
-
if (leftActualRight >= safeCols || centerActualRight >= safeCols || rightActualRight >= safeCols) {
|
|
108
|
-
// Force narrow mode as fallback
|
|
109
|
-
return computeNarrowSpec(safeCols, rows);
|
|
110
|
-
}
|
|
111
|
-
return {
|
|
112
|
-
mode: 'normal',
|
|
113
|
-
columns: {
|
|
114
|
-
left: {
|
|
115
|
-
left: finalLeftLeft,
|
|
116
|
-
width: finalLeftW,
|
|
117
|
-
},
|
|
118
|
-
center: {
|
|
119
|
-
left: centerLeftPos,
|
|
120
|
-
width: finalCenterW,
|
|
121
|
-
},
|
|
122
|
-
right: {
|
|
123
|
-
left: rightLeftPos,
|
|
124
|
-
width: finalRightW,
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
rows: {
|
|
128
|
-
mainTop: 0,
|
|
129
|
-
mainBottom,
|
|
130
|
-
cmdTop: rows - cmdHeight,
|
|
131
|
-
cmdHeight,
|
|
132
|
-
},
|
|
133
|
-
raw: {
|
|
134
|
-
cols: safeCols,
|
|
135
|
-
rows: rows,
|
|
136
|
-
},
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Compute narrow mode layout (vertical stack)
|
|
141
|
-
*
|
|
142
|
-
* HARD INVARIANT: No widget may draw at x >= safeCols
|
|
143
|
-
*
|
|
144
|
-
* Operations takes full safe width, but must account for borders:
|
|
145
|
-
* - Operations has both borders: actualRightEdge = x + w + 2
|
|
146
|
-
* - Command line has only left border: actualRightEdge = x + w + 1
|
|
147
|
-
*/
|
|
148
|
-
function computeNarrowSpec(safeCols, rows) {
|
|
149
|
-
const cmdHeight = 3;
|
|
150
|
-
const mainBottom = rows - cmdHeight;
|
|
151
|
-
const LEFT_BORDER_PAD = 1;
|
|
152
|
-
const RIGHT_BORDER_PAD = 1;
|
|
153
|
-
// Operations panel: has both borders
|
|
154
|
-
// CRITICAL: We need rightEdge < safeCols, not <=, to prevent scrollbar
|
|
155
|
-
// actualRightEdge = left + width + LEFT_BORDER_PAD + RIGHT_BORDER_PAD < safeCols
|
|
156
|
-
// So: width <= safeCols - left - LEFT_BORDER_PAD - RIGHT_BORDER_PAD - 1 (extra -1 for safety)
|
|
157
|
-
const maxOperationsW = safeCols - LEFT_BORDER_PAD - RIGHT_BORDER_PAD - 1; // Extra -1 to ensure rightEdge < safeCols
|
|
158
|
-
const operationsW = Math.max(1, maxOperationsW);
|
|
159
|
-
// Command line: has only left border (no right border)
|
|
160
|
-
// Will be handled in renderFrame to ensure it doesn't overflow
|
|
161
|
-
return {
|
|
162
|
-
mode: 'narrow',
|
|
163
|
-
columns: {
|
|
164
|
-
left: {
|
|
165
|
-
left: 0,
|
|
166
|
-
width: 0, // Collapsed in narrow mode
|
|
167
|
-
},
|
|
168
|
-
center: {
|
|
169
|
-
left: 0,
|
|
170
|
-
width: operationsW, // Operations takes safe width (accounting for borders)
|
|
171
|
-
},
|
|
172
|
-
right: {
|
|
173
|
-
left: 0,
|
|
174
|
-
width: 0, // Collapsed in narrow mode
|
|
175
|
-
},
|
|
176
|
-
},
|
|
177
|
-
rows: {
|
|
178
|
-
mainTop: 0,
|
|
179
|
-
mainBottom,
|
|
180
|
-
cmdTop: rows - cmdHeight,
|
|
181
|
-
cmdHeight,
|
|
182
|
-
},
|
|
183
|
-
raw: {
|
|
184
|
-
cols: safeCols,
|
|
185
|
-
rows,
|
|
186
|
-
},
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
* Validate layout spec satisfies hard invariant: no widget draws at x >= safeCols
|
|
191
|
-
*
|
|
192
|
-
* Returns violations array if any panel violates
|
|
193
|
-
*/
|
|
194
|
-
export function validateLayoutInvariant(spec, safeCols, safeRows) {
|
|
195
|
-
const violations = [];
|
|
196
|
-
const LEFT_BORDER_PAD = 1;
|
|
197
|
-
const RIGHT_BORDER_PAD = 1;
|
|
198
|
-
// Check each column (left, center, right panels)
|
|
199
|
-
const panels = [
|
|
200
|
-
{ name: 'left', spec: spec.columns.left, hasRightBorder: true },
|
|
201
|
-
{ name: 'center', spec: spec.columns.center, hasRightBorder: true },
|
|
202
|
-
{ name: 'right', spec: spec.columns.right, hasRightBorder: false }, // No right border
|
|
203
|
-
];
|
|
204
|
-
for (const panel of panels) {
|
|
205
|
-
if (panel.spec.width > 0) {
|
|
206
|
-
const rightEdgePadding = LEFT_BORDER_PAD + (panel.hasRightBorder ? RIGHT_BORDER_PAD : 0);
|
|
207
|
-
const actualRightEdge = panel.spec.left + panel.spec.width + rightEdgePadding;
|
|
208
|
-
if (actualRightEdge > safeCols) {
|
|
209
|
-
violations.push({
|
|
210
|
-
panel: panel.name,
|
|
211
|
-
violation: `rightEdge=${actualRightEdge} > safeCols=${safeCols} (x=${panel.spec.left}, w=${panel.spec.width}, borderPad=${rightEdgePadding})`,
|
|
212
|
-
});
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
// Check command line (handled separately in renderFrame, but check spec)
|
|
217
|
-
const cmdRightEdge = safeCols; // Command line uses safeCols - 1 width, left=0, no right border
|
|
218
|
-
if (cmdRightEdge > safeCols) {
|
|
219
|
-
violations.push({
|
|
220
|
-
panel: 'command',
|
|
221
|
-
violation: `rightEdge=${cmdRightEdge} > safeCols=${safeCols}`,
|
|
222
|
-
});
|
|
223
|
-
}
|
|
224
|
-
return violations;
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Compute layout for given safe viewport
|
|
228
|
-
*
|
|
229
|
-
* HARD INVARIANT: No widget may draw at x >= safeCols
|
|
230
|
-
*
|
|
231
|
-
* @param viewport - Safe viewport (from getSafeViewport)
|
|
232
|
-
* @returns Layout spec with integer pixel positions (guaranteed to satisfy invariant)
|
|
233
|
-
*/
|
|
234
|
-
export function computeLayout(viewport) {
|
|
235
|
-
const { cols: safeCols, rows, rawCols } = viewport;
|
|
236
|
-
// Validate minimum size (use rawCols for mode selection)
|
|
237
|
-
if (rawCols < 80 || rows < 24) {
|
|
238
|
-
// Too small - return minimal layout
|
|
239
|
-
return computeNarrowSpec(Math.max(60, safeCols), Math.max(20, rows));
|
|
240
|
-
}
|
|
241
|
-
// Select mode based on raw columns
|
|
242
|
-
const mode = selectMode(rawCols, rows);
|
|
243
|
-
// Compute spec based on mode (using safeCols)
|
|
244
|
-
let spec;
|
|
245
|
-
if (mode === 'normal') {
|
|
246
|
-
spec = computeNormalSpec(safeCols, rows);
|
|
247
|
-
}
|
|
248
|
-
else {
|
|
249
|
-
spec = computeNarrowSpec(safeCols, rows);
|
|
250
|
-
}
|
|
251
|
-
// E) Enforce invariant checks after computing layout
|
|
252
|
-
const violations = validateLayoutInvariant(spec, safeCols, rows);
|
|
253
|
-
if (violations.length > 0) {
|
|
254
|
-
// Log the first offender and refuse to render
|
|
255
|
-
const firstViolation = violations[0];
|
|
256
|
-
const errorMsg = `[LayoutEngine] INVARIANT VIOLATION: ${firstViolation.panel} - ${firstViolation.violation}`;
|
|
257
|
-
// Step 1: Use tuiError for layout violations
|
|
258
|
-
tuiError(errorMsg);
|
|
259
|
-
tuiError(`[LayoutEngine] Refusing to render to prevent screen corruption.`);
|
|
260
|
-
tuiError(`[LayoutEngine] Layout: mode=${spec.mode}, safeCols=${safeCols}, safeRows=${rows}`);
|
|
261
|
-
// In debug mode, log all violations
|
|
262
|
-
if (process.env.DEBUG_V4 === '1') {
|
|
263
|
-
for (const violation of violations) {
|
|
264
|
-
tuiError(` - ${violation.panel}: ${violation.violation}`);
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
// Return minimal safe layout instead of corrupting screen
|
|
268
|
-
return computeNarrowSpec(safeCols, rows);
|
|
269
|
-
}
|
|
270
|
-
// E) Additional checks: no negative widths/heights
|
|
271
|
-
const { columns, rows: layoutRows } = spec;
|
|
272
|
-
const checks = [];
|
|
273
|
-
// Check column widths
|
|
274
|
-
if (columns.left.width < 0)
|
|
275
|
-
checks.push(`left.width=${columns.left.width} < 0`);
|
|
276
|
-
if (columns.center.width < 0)
|
|
277
|
-
checks.push(`center.width=${columns.center.width} < 0`);
|
|
278
|
-
if (columns.right.width < 0)
|
|
279
|
-
checks.push(`right.width=${columns.right.width} < 0`);
|
|
280
|
-
// Check row heights
|
|
281
|
-
if (layoutRows.mainBottom - layoutRows.mainTop < 0) {
|
|
282
|
-
checks.push(`mainHeight=${layoutRows.mainBottom - layoutRows.mainTop} < 0`);
|
|
283
|
-
}
|
|
284
|
-
if (layoutRows.cmdHeight < 0)
|
|
285
|
-
checks.push(`cmdHeight=${layoutRows.cmdHeight} < 0`);
|
|
286
|
-
if (checks.length > 0) {
|
|
287
|
-
const errorMsg = `[LayoutEngine] NEGATIVE DIMENSIONS: ${checks.join(', ')}`;
|
|
288
|
-
tuiError(errorMsg);
|
|
289
|
-
tuiError(`[LayoutEngine] Returning minimal safe layout.`);
|
|
290
|
-
return computeNarrowSpec(safeCols, rows);
|
|
291
|
-
}
|
|
292
|
-
return spec;
|
|
293
|
-
}
|
|
294
|
-
//# sourceMappingURL=layoutEngine.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layoutEngine.js","sourceRoot":"","sources":["../../../../src/ui/v4/layout/layoutEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
|
|
3
|
-
* DO NOT MODIFY. Development moved to V5.
|
|
4
|
-
* See FROZEN.md in v4 directory.
|
|
5
|
-
*
|
|
6
|
-
* Step 2: V4 TUI Runtime - Keep-Alive & Terminal Management
|
|
7
|
-
*
|
|
8
|
-
* Ensures process stays alive in weak terminals (AWS EC2 Instance Connect, etc.)
|
|
9
|
-
* and handles proper terminal cleanup on exit.
|
|
10
|
-
*/
|
|
11
|
-
import type { Widgets } from 'neo-blessed';
|
|
12
|
-
/**
|
|
13
|
-
* Step 2: Clean "TUI Owns stdin" Keep-Alive
|
|
14
|
-
*
|
|
15
|
-
* Responsibilities:
|
|
16
|
-
* - Ensure stdin is resumed and in raw mode when possible
|
|
17
|
-
* - Ensure Ctrl+C always exits cleanly via screen.destroy()
|
|
18
|
-
* - Keep-alive interval only when needed (browser terminals)
|
|
19
|
-
*/
|
|
20
|
-
export declare function attachTuiRuntime(screen: Widgets.Screen): void;
|
|
21
|
-
//# sourceMappingURL=keepAlive.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keepAlive.d.ts","sourceRoot":"","sources":["../../../../src/ui/v4/runtime/keepAlive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAqB3C;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAuH7D"}
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ⚠️ FROZEN: This file is part of V4 TUI which is FROZEN.
|
|
3
|
-
* DO NOT MODIFY. Development moved to V5.
|
|
4
|
-
* See FROZEN.md in v4 directory.
|
|
5
|
-
*
|
|
6
|
-
* Step 2: V4 TUI Runtime - Keep-Alive & Terminal Management
|
|
7
|
-
*
|
|
8
|
-
* Ensures process stays alive in weak terminals (AWS EC2 Instance Connect, etc.)
|
|
9
|
-
* and handles proper terminal cleanup on exit.
|
|
10
|
-
*/
|
|
11
|
-
import { tuiDebug, tuiError } from './logger.js';
|
|
12
|
-
/**
|
|
13
|
-
* Detect if we're in a browser terminal (AWS CloudShell, EC2 Instance Connect, etc.)
|
|
14
|
-
*/
|
|
15
|
-
function isBrowserTerminal() {
|
|
16
|
-
// Check explicit flag
|
|
17
|
-
if (process.env.TUI_BROWSER === '1') {
|
|
18
|
-
return true;
|
|
19
|
-
}
|
|
20
|
-
// Auto-detect browser terminals
|
|
21
|
-
const term = process.env.TERM || '';
|
|
22
|
-
const hasSSH = process.env.SSH_CONNECTION !== undefined;
|
|
23
|
-
const hasAWS = process.env.AWS_EXECUTION_ENV !== undefined;
|
|
24
|
-
const isCloudShell = /cloudshell|web|browser/i.test(term) || hasSSH || hasAWS;
|
|
25
|
-
return isCloudShell;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Step 2: Clean "TUI Owns stdin" Keep-Alive
|
|
29
|
-
*
|
|
30
|
-
* Responsibilities:
|
|
31
|
-
* - Ensure stdin is resumed and in raw mode when possible
|
|
32
|
-
* - Ensure Ctrl+C always exits cleanly via screen.destroy()
|
|
33
|
-
* - Keep-alive interval only when needed (browser terminals)
|
|
34
|
-
*/
|
|
35
|
-
export function attachTuiRuntime(screen) {
|
|
36
|
-
tuiDebug('Attaching TUI runtime...');
|
|
37
|
-
// 1) Always resume stdin (keeps event loop alive)
|
|
38
|
-
process.stdin.resume();
|
|
39
|
-
// 2) Ensure raw mode so keypresses actually arrive
|
|
40
|
-
try {
|
|
41
|
-
if (process.stdin.isTTY && typeof process.stdin.setRawMode === 'function') {
|
|
42
|
-
process.stdin.setRawMode(true);
|
|
43
|
-
tuiDebug('stdin set to raw mode');
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
catch (err) {
|
|
47
|
-
tuiError('Failed to set raw mode:', err);
|
|
48
|
-
}
|
|
49
|
-
// 3) Always handle Ctrl+C inside blessed (clean exit)
|
|
50
|
-
screen.key(['C-c'], () => {
|
|
51
|
-
tuiDebug('Ctrl+C pressed - exiting cleanly');
|
|
52
|
-
try {
|
|
53
|
-
const interval = screen.__keepAliveInterval;
|
|
54
|
-
if (interval) {
|
|
55
|
-
clearInterval(interval);
|
|
56
|
-
}
|
|
57
|
-
// Step 6: Clean exit - restore terminal
|
|
58
|
-
try {
|
|
59
|
-
screen.program?.showCursor();
|
|
60
|
-
}
|
|
61
|
-
catch {
|
|
62
|
-
// Ignore
|
|
63
|
-
}
|
|
64
|
-
screen.destroy();
|
|
65
|
-
}
|
|
66
|
-
catch (err) {
|
|
67
|
-
tuiError('Error during cleanup:', err);
|
|
68
|
-
}
|
|
69
|
-
process.exit(0);
|
|
70
|
-
});
|
|
71
|
-
// 4) Keep-alive interval ONLY when needed (browser terminals)
|
|
72
|
-
const needsKeepAlive = isBrowserTerminal();
|
|
73
|
-
if (needsKeepAlive) {
|
|
74
|
-
tuiDebug('Browser terminal detected - enabling keep-alive interval');
|
|
75
|
-
// CRITICAL: Use a shorter interval (10s) and ensure it's not unref'd
|
|
76
|
-
// This keeps the event loop alive in browser terminals where stdin might not hold it
|
|
77
|
-
const interval = setInterval(() => {
|
|
78
|
-
// Heartbeat to keep event loop alive in browser terminals
|
|
79
|
-
// This ensures process doesn't exit even if stdin isn't holding it
|
|
80
|
-
tuiDebug('Keep-alive heartbeat'); // Log to file to verify it's running
|
|
81
|
-
}, 10_000); // Every 10 seconds (faster for better reliability)
|
|
82
|
-
// CRITICAL: DO NOT call interval.unref() - we need this to block exit
|
|
83
|
-
// Store interval handle on screen so it can be cleared on destroy
|
|
84
|
-
screen.__keepAliveInterval = interval;
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
tuiDebug('Normal terminal - keep-alive interval not needed');
|
|
88
|
-
}
|
|
89
|
-
// 5) CRITICAL: Ensure blessed screen has stdin listeners active
|
|
90
|
-
// In browser terminals, blessed might not properly attach stdin listeners
|
|
91
|
-
// Force a dummy listener if needed to keep stdin active
|
|
92
|
-
if (needsKeepAlive && process.stdin.listeners('data').length === 0) {
|
|
93
|
-
tuiDebug('No stdin listeners detected - adding keep-alive listener');
|
|
94
|
-
process.stdin.on('data', (data) => {
|
|
95
|
-
// Blessed should handle actual input, but we need to keep stdin active
|
|
96
|
-
// Don't interfere with blessed's input handling
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
// 5) Ensure stdin has listeners (blessed should handle this, but ensure it does)
|
|
100
|
-
if (process.stdin.listeners('data').length === 0) {
|
|
101
|
-
// Blessed should attach listeners, but if it doesn't, we'll at least have stdin open
|
|
102
|
-
process.stdin.on('data', () => {
|
|
103
|
-
// Blessed handles the actual input, we just need to keep stdin active
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
// 6) Handle other exit signals
|
|
107
|
-
const cleanup = () => {
|
|
108
|
-
try {
|
|
109
|
-
const interval = screen.__keepAliveInterval;
|
|
110
|
-
if (interval) {
|
|
111
|
-
clearInterval(interval);
|
|
112
|
-
}
|
|
113
|
-
// Deliverable 4: Terminal recovery on exit
|
|
114
|
-
try {
|
|
115
|
-
screen.program?.showCursor();
|
|
116
|
-
}
|
|
117
|
-
catch {
|
|
118
|
-
// Ignore
|
|
119
|
-
}
|
|
120
|
-
try {
|
|
121
|
-
screen.destroy();
|
|
122
|
-
}
|
|
123
|
-
catch {
|
|
124
|
-
// Ignore
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
catch {
|
|
128
|
-
// Ignore cleanup errors
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
-
process.on('SIGINT', cleanup);
|
|
132
|
-
process.on('SIGTERM', cleanup);
|
|
133
|
-
// Handle uncaught exceptions
|
|
134
|
-
process.on('uncaughtException', (error) => {
|
|
135
|
-
// Log to stderr (not stdout - it will corrupt the terminal)
|
|
136
|
-
process.stderr.write(`\n[V4 FATAL ERROR] ${error.message}\n`);
|
|
137
|
-
if (error.stack) {
|
|
138
|
-
process.stderr.write(`Stack: ${error.stack.split('\n').slice(0, 5).join('\n')}\n`);
|
|
139
|
-
}
|
|
140
|
-
cleanup();
|
|
141
|
-
process.exit(1);
|
|
142
|
-
});
|
|
143
|
-
process.on('unhandledRejection', (reason) => {
|
|
144
|
-
process.stderr.write(`\n[V4 UNHANDLED REJECTION] ${reason}\n`);
|
|
145
|
-
cleanup();
|
|
146
|
-
process.exit(1);
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
//# sourceMappingURL=keepAlive.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keepAlive.js","sourceRoot":"","sources":["../../../../src/ui/v4/runtime/keepAlive.ts"],"names":[],"mappings":"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"}
|