jumbo-cli 3.5.0 → 3.6.1
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/assets/agent-files/json/claude-settings.fragment.json +41 -0
- package/assets/agent-files/json/codex-hooks.fragment.json +36 -0
- package/assets/agent-files/json/copilot-hooks.fragment.json +14 -0
- package/assets/agent-files/json/cursor-hooks.fragment.json +11 -0
- package/assets/agent-files/json/gemini-settings.fragment.json +41 -0
- package/assets/agent-files/markdown/AGENTS.md +6 -0
- package/assets/agent-files/markdown/CLAUDE.md +6 -0
- package/assets/agent-files/markdown/GEMINI.md +6 -0
- package/assets/agent-files/markdown/JUMBO.md +7 -0
- package/assets/agent-files/markdown/copilot-instructions.md +6 -0
- package/assets/agent-files/markdown/cursor-rules.mdc +10 -0
- package/assets/skills/jumbo-bootstrap-session/SKILL.md +11 -0
- package/assets/skills/jumbo-command-discovery/SKILL.md +11 -0
- package/assets/skills/jumbo-context-maintenance/SKILL.md +11 -0
- package/assets/skills/jumbo-correction-capture/SKILL.md +11 -0
- package/dist/application/context/architecture/get/GetArchitectureRequest.d.ts +1 -2
- package/dist/application/context/architecture/get/GetArchitectureRequest.d.ts.map +1 -1
- package/dist/application/context/audience-pains/list/GetAudiencePainsRequest.d.ts +1 -2
- package/dist/application/context/audience-pains/list/GetAudiencePainsRequest.d.ts.map +1 -1
- package/dist/application/context/audiences/list/ListAudiencesRequest.d.ts +1 -2
- package/dist/application/context/audiences/list/ListAudiencesRequest.d.ts.map +1 -1
- package/dist/application/context/host/workers/view/ViewWorkerRequest.d.ts +1 -2
- package/dist/application/context/host/workers/view/ViewWorkerRequest.d.ts.map +1 -1
- package/dist/application/context/invariants/get/GetAllInvariantsRequest.d.ts +1 -2
- package/dist/application/context/invariants/get/GetAllInvariantsRequest.d.ts.map +1 -1
- package/dist/application/context/search/SearchIndexRebuildRequest.d.ts +1 -2
- package/dist/application/context/search/SearchIndexRebuildRequest.d.ts.map +1 -1
- package/dist/application/context/sessions/start/SessionStartRequest.d.ts +1 -2
- package/dist/application/context/sessions/start/SessionStartRequest.d.ts.map +1 -1
- package/dist/application/context/sessions/start/StartSessionCommand.d.ts +1 -2
- package/dist/application/context/sessions/start/StartSessionCommand.d.ts.map +1 -1
- package/dist/application/context/telemetry/get/GetTelemetryStatusRequest.d.ts +1 -2
- package/dist/application/context/telemetry/get/GetTelemetryStatusRequest.d.ts.map +1 -1
- package/dist/application/context/value-propositions/get/GetValuePropositionsRequest.d.ts +1 -2
- package/dist/application/context/value-propositions/get/GetValuePropositionsRequest.d.ts.map +1 -1
- package/dist/application/context/work/pause/PauseWorkCommand.d.ts +1 -2
- package/dist/application/context/work/pause/PauseWorkCommand.d.ts.map +1 -1
- package/dist/application/context/work/pause/PauseWorkRequest.d.ts +1 -2
- package/dist/application/context/work/pause/PauseWorkRequest.d.ts.map +1 -1
- package/dist/application/context/work/resume/ResumeWorkRequest.d.ts +1 -2
- package/dist/application/context/work/resume/ResumeWorkRequest.d.ts.map +1 -1
- package/dist/domain/project/AgentFileAssetContent.d.ts +7 -0
- package/dist/domain/project/AgentFileAssetContent.d.ts.map +1 -0
- package/dist/domain/project/AgentFileAssetContent.js +25 -0
- package/dist/domain/project/AgentFileAssetContent.js.map +1 -0
- package/dist/domain/project/AgentFileReferenceContent.d.ts +1 -6
- package/dist/domain/project/AgentFileReferenceContent.d.ts.map +1 -1
- package/dist/domain/project/AgentFileReferenceContent.js +3 -12
- package/dist/domain/project/AgentFileReferenceContent.js.map +1 -1
- package/dist/domain/project/AgentsMdContent.d.ts +1 -7
- package/dist/domain/project/AgentsMdContent.d.ts.map +1 -1
- package/dist/domain/project/AgentsMdContent.js +4 -14
- package/dist/domain/project/AgentsMdContent.js.map +1 -1
- package/dist/domain/project/CopilotInstructionsContent.d.ts +5 -6
- package/dist/domain/project/CopilotInstructionsContent.d.ts.map +1 -1
- package/dist/domain/project/CopilotInstructionsContent.js +10 -17
- package/dist/domain/project/CopilotInstructionsContent.js.map +1 -1
- package/dist/domain/project/CursorRulesContent.d.ts +1 -7
- package/dist/domain/project/CursorRulesContent.d.ts.map +1 -1
- package/dist/domain/project/CursorRulesContent.js +4 -23
- package/dist/domain/project/CursorRulesContent.js.map +1 -1
- package/dist/domain/project/JumboMdContent.d.ts +1 -10
- package/dist/domain/project/JumboMdContent.d.ts.map +1 -1
- package/dist/domain/project/JumboMdContent.js +4 -117
- package/dist/domain/project/JumboMdContent.js.map +1 -1
- package/dist/infrastructure/context/project/init/ClaudeConfigurer.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/ClaudeConfigurer.js +2 -40
- package/dist/infrastructure/context/project/init/ClaudeConfigurer.js.map +1 -1
- package/dist/infrastructure/context/project/init/CodexConfigurer.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/CodexConfigurer.js +2 -35
- package/dist/infrastructure/context/project/init/CodexConfigurer.js.map +1 -1
- package/dist/infrastructure/context/project/init/CopilotConfigurer.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/CopilotConfigurer.js +4 -26
- package/dist/infrastructure/context/project/init/CopilotConfigurer.js.map +1 -1
- package/dist/infrastructure/context/project/init/CursorConfigurer.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/CursorConfigurer.js +2 -10
- package/dist/infrastructure/context/project/init/CursorConfigurer.js.map +1 -1
- package/dist/infrastructure/context/project/init/GeminiConfigurer.d.ts.map +1 -1
- package/dist/infrastructure/context/project/init/GeminiConfigurer.js +2 -40
- package/dist/infrastructure/context/project/init/GeminiConfigurer.js.map +1 -1
- package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts +0 -4
- package/dist/infrastructure/messaging/ProjectionBusFactory.d.ts.map +1 -1
- package/dist/infrastructure/messaging/ProjectionBusFactory.js +89 -68
- package/dist/infrastructure/messaging/ProjectionBusFactory.js.map +1 -1
- package/dist/presentation/cli/commands/index/rebuild/index.rebuild.d.ts +1 -2
- package/dist/presentation/cli/commands/index/rebuild/index.rebuild.d.ts.map +1 -1
- package/dist/presentation/cli/rendering/StyleConfig.d.ts.map +1 -1
- package/dist/presentation/cli/rendering/StyleConfig.js +1 -0
- package/dist/presentation/cli/rendering/StyleConfig.js.map +1 -1
- package/dist/presentation/tui/cockpit/AnimatedBanner.d.ts +0 -1
- package/dist/presentation/tui/cockpit/AnimatedBanner.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/AnimatedBanner.js +24 -121
- package/dist/presentation/tui/cockpit/AnimatedBanner.js.map +1 -1
- package/dist/presentation/tui/cockpit/AnimatedBannerColorGradient.d.ts +2 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerColorGradient.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerColorGradient.js +31 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerColorGradient.js.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerLineColorSegments.d.ts +7 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerLineColorSegments.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerLineColorSegments.js +69 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerLineColorSegments.js.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerTiming.d.ts +9 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerTiming.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerTiming.js +11 -0
- package/dist/presentation/tui/cockpit/AnimatedBannerTiming.js.map +1 -0
- package/dist/presentation/tui/cockpit/CenteredPrompt.d.ts +1 -2
- package/dist/presentation/tui/cockpit/CenteredPrompt.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonAgentConfigCycler.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonAgentConfigCycler.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonAgentConfigCycler.js +9 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonAgentConfigCycler.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfigsUpdater.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfigsUpdater.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfigsUpdater.js +7 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfigsUpdater.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEventSnapshot.d.ts +5 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEventSnapshot.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEventSnapshot.js +2 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEventSnapshot.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.d.ts +6 -13
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.js +9 -153
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.js.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonFocusOrder.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFocusOrder.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFocusOrder.js +8 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFocusOrder.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.d.ts +30 -36
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.js +37 -174
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.js.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.d.ts +0 -3
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.js +3 -42
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.js.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonPollConfigCycler.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPollConfigCycler.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPollConfigCycler.js +9 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPollConfigCycler.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonRetryConfigCycler.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonRetryConfigCycler.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonRetryConfigCycler.js +9 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonRetryConfigCycler.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonSnapshot.d.ts +1 -4
- package/dist/presentation/tui/cockpit/CockpitDaemonSnapshot.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitLaunchAnimationSize.d.ts +6 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchAnimationSize.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchAnimationSize.js +7 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchAnimationSize.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonDefinitions.d.ts +45 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonDefinitions.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonDefinitions.js +25 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonDefinitions.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonPanels.d.ts +17 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonPanels.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonPanels.js +17 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadDaemonPanels.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadEventLog.d.ts +8 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadEventLog.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadEventLog.js +11 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadEventLog.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.d.ts +3 -3
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.js +30 -144
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.js.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitScreen.d.ts +1 -2
- package/dist/presentation/tui/cockpit/CockpitScreen.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitScreen.js +8 -38
- package/dist/presentation/tui/cockpit/CockpitScreen.js.map +1 -1
- package/dist/presentation/tui/cockpit/CockpitScreenBanner.d.ts +12 -0
- package/dist/presentation/tui/cockpit/CockpitScreenBanner.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreenBanner.js +14 -0
- package/dist/presentation/tui/cockpit/CockpitScreenBanner.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreenContent.d.ts +17 -0
- package/dist/presentation/tui/cockpit/CockpitScreenContent.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreenContent.js +18 -0
- package/dist/presentation/tui/cockpit/CockpitScreenContent.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreenInfoBoxLines.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitScreenInfoBoxLines.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreenInfoBoxLines.js +31 -0
- package/dist/presentation/tui/cockpit/CockpitScreenInfoBoxLines.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitState.d.ts +4 -0
- package/dist/presentation/tui/cockpit/CockpitState.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitState.js +3 -0
- package/dist/presentation/tui/cockpit/CockpitState.js.map +1 -0
- package/dist/presentation/tui/cockpit/CodifierFrameFactory.d.ts +9 -0
- package/dist/presentation/tui/cockpit/CodifierFrameFactory.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CodifierFrameFactory.js +45 -0
- package/dist/presentation/tui/cockpit/CodifierFrameFactory.js.map +1 -0
- package/dist/presentation/tui/cockpit/CodifierGlyphDaemonFrame.d.ts +11 -0
- package/dist/presentation/tui/cockpit/CodifierGlyphDaemonFrame.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CodifierGlyphDaemonFrame.js +11 -0
- package/dist/presentation/tui/cockpit/CodifierGlyphDaemonFrame.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonActionLine.d.ts +8 -0
- package/dist/presentation/tui/cockpit/DaemonActionLine.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonActionLine.js +21 -0
- package/dist/presentation/tui/cockpit/DaemonActionLine.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonConfigWizard.d.ts +8 -0
- package/dist/presentation/tui/cockpit/DaemonConfigWizard.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonConfigWizard.js +24 -0
- package/dist/presentation/tui/cockpit/DaemonConfigWizard.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRow.d.ts +9 -0
- package/dist/presentation/tui/cockpit/DaemonEventRow.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRow.js +2 -0
- package/dist/presentation/tui/cockpit/DaemonEventRow.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowFormatter.d.ts +7 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowFormatter.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowFormatter.js +17 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowFormatter.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.d.ts +7 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.js +35 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowNormalizer.d.ts +8 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowNormalizer.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowNormalizer.js +95 -0
- package/dist/presentation/tui/cockpit/DaemonEventRowNormalizer.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRows.d.ts +10 -0
- package/dist/presentation/tui/cockpit/DaemonEventRows.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonEventRows.js +22 -0
- package/dist/presentation/tui/cockpit/DaemonEventRows.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameDimensions.d.ts +13 -0
- package/dist/presentation/tui/cockpit/DaemonFrameDimensions.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameDimensions.js +13 -0
- package/dist/presentation/tui/cockpit/DaemonFrameDimensions.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameGlyphTypes.d.ts +11 -0
- package/dist/presentation/tui/cockpit/DaemonFrameGlyphTypes.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameGlyphTypes.js +2 -0
- package/dist/presentation/tui/cockpit/DaemonFrameGlyphTypes.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusColor.d.ts +2 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusColor.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusColor.js +3 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusColor.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusOverlay.d.ts +15 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusOverlay.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusOverlay.js +42 -0
- package/dist/presentation/tui/cockpit/DaemonFrameStatusOverlay.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonInfoOverlay.d.ts +6 -0
- package/dist/presentation/tui/cockpit/DaemonInfoOverlay.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonInfoOverlay.js +12 -0
- package/dist/presentation/tui/cockpit/DaemonInfoOverlay.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonShortcutBadgeColor.d.ts +2 -0
- package/dist/presentation/tui/cockpit/DaemonShortcutBadgeColor.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonShortcutBadgeColor.js +5 -0
- package/dist/presentation/tui/cockpit/DaemonShortcutBadgeColor.js.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonStatusFinder.d.ts +7 -0
- package/dist/presentation/tui/cockpit/DaemonStatusFinder.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/DaemonStatusFinder.js +16 -0
- package/dist/presentation/tui/cockpit/DaemonStatusFinder.js.map +1 -0
- package/dist/presentation/tui/cockpit/GlyphCellDaemonFrame.d.ts +10 -0
- package/dist/presentation/tui/cockpit/GlyphCellDaemonFrame.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/GlyphCellDaemonFrame.js +11 -0
- package/dist/presentation/tui/cockpit/GlyphCellDaemonFrame.js.map +1 -0
- package/dist/presentation/tui/cockpit/GlyphCellSegments.d.ts +7 -0
- package/dist/presentation/tui/cockpit/GlyphCellSegments.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/GlyphCellSegments.js +21 -0
- package/dist/presentation/tui/cockpit/GlyphCellSegments.js.map +1 -0
- package/dist/presentation/tui/cockpit/RandomGlyphFrameFactory.d.ts +11 -0
- package/dist/presentation/tui/cockpit/RandomGlyphFrameFactory.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/RandomGlyphFrameFactory.js +67 -0
- package/dist/presentation/tui/cockpit/RandomGlyphFrameFactory.js.map +1 -0
- package/dist/presentation/tui/cockpit/RenderedDaemonFrame.d.ts +9 -0
- package/dist/presentation/tui/cockpit/RenderedDaemonFrame.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/RenderedDaemonFrame.js +13 -0
- package/dist/presentation/tui/cockpit/RenderedDaemonFrame.js.map +1 -0
- package/dist/presentation/tui/cockpit/StyledGlyphSegments.d.ts +6 -0
- package/dist/presentation/tui/cockpit/StyledGlyphSegments.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/StyledGlyphSegments.js +41 -0
- package/dist/presentation/tui/cockpit/StyledGlyphSegments.js.map +1 -0
- package/dist/presentation/tui/cockpit/daemons/CodifierDaemonFrame.js +2 -2
- package/dist/presentation/tui/cockpit/daemons/CodifierDaemonFrame.js.map +1 -1
- package/dist/presentation/tui/cockpit/daemons/IDaemonFrame.d.ts +4 -4
- package/dist/presentation/tui/cockpit/daemons/IDaemonFrame.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/daemons/RefinerDaemonFrame.js +1 -1
- package/dist/presentation/tui/cockpit/daemons/RefinerDaemonFrame.js.map +1 -1
- package/dist/presentation/tui/cockpit/daemons/ReviewerDaemonFrame.js +1 -1
- package/dist/presentation/tui/cockpit/daemons/ReviewerDaemonFrame.js.map +1 -1
- package/dist/presentation/tui/cockpit/toggleCockpitDaemon.d.ts +4 -0
- package/dist/presentation/tui/cockpit/toggleCockpitDaemon.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/toggleCockpitDaemon.js +15 -0
- package/dist/presentation/tui/cockpit/toggleCockpitDaemon.js.map +1 -0
- package/dist/presentation/tui/cockpit/useCockpitLaunchpadWelcomeVisibility.d.ts +6 -0
- package/dist/presentation/tui/cockpit/useCockpitLaunchpadWelcomeVisibility.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/useCockpitLaunchpadWelcomeVisibility.js +50 -0
- package/dist/presentation/tui/cockpit/useCockpitLaunchpadWelcomeVisibility.js.map +1 -0
- package/dist/presentation/tui/cockpit/useDaemonAnimationFrames.d.ts +14 -0
- package/dist/presentation/tui/cockpit/useDaemonAnimationFrames.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/useDaemonAnimationFrames.js +29 -0
- package/dist/presentation/tui/cockpit/useDaemonAnimationFrames.js.map +1 -0
- package/dist/presentation/tui/cockpit/useDaemonStatusPolling.d.ts +10 -0
- package/dist/presentation/tui/cockpit/useDaemonStatusPolling.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/useDaemonStatusPolling.js +21 -0
- package/dist/presentation/tui/cockpit/useDaemonStatusPolling.js.map +1 -0
- package/package.json +1 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.d.ts +0 -7
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.d.ts.map +0 -1
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.js +0 -32
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.js.map +0 -1
- package/dist/presentation/tui/cockpit/DaemonFrameViews.d.ts +0 -17
- package/dist/presentation/tui/cockpit/DaemonFrameViews.d.ts.map +0 -1
- package/dist/presentation/tui/cockpit/DaemonFrameViews.js +0 -20
- package/dist/presentation/tui/cockpit/DaemonFrameViews.js.map +0 -1
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { Box
|
|
2
|
+
import { Box } from "ink";
|
|
3
3
|
import { BaseColors } from "../../shared/DesignTokens.js";
|
|
4
4
|
import { Panel } from "../ui-primitives/Panel.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { DAEMON_PANEL_CONTENT_WIDTH } from "./CockpitDaemonFrames.js";
|
|
8
|
-
import { CockpitDaemonPanelCopy } from "./CockpitDaemonPanelCopy.js";
|
|
5
|
+
import { DaemonActionLine } from "./DaemonActionLine.js";
|
|
6
|
+
import { DaemonConfigWizard } from "./DaemonConfigWizard.js";
|
|
9
7
|
export function CockpitDaemonPanel({ daemonConstants, snapshot, pendingConfig, selected, configuring, infoVisible, children, }) {
|
|
10
8
|
return (React.createElement(Panel, { title: daemonConstants.title, titleColor: selected ? BaseColors.brandBlue : BaseColors.shade3, borderColor: selected ? BaseColors.brandBlue : BaseColors.shade5, flexGrow: 3, flexBasis: 0, height: "100%", bordered: false },
|
|
11
9
|
React.createElement(Box, { alignItems: "center", flexDirection: "column" },
|
|
@@ -13,41 +11,4 @@ export function CockpitDaemonPanel({ daemonConstants, snapshot, pendingConfig, s
|
|
|
13
11
|
React.createElement(DaemonActionLine, { snapshot: snapshot, selected: selected, infoVisible: infoVisible }),
|
|
14
12
|
configuring && (React.createElement(DaemonConfigWizard, { snapshot: snapshot, pendingConfig: pendingConfig, selected: selected })))));
|
|
15
13
|
}
|
|
16
|
-
export function DaemonInfoOverlay({ daemonConstants, }) {
|
|
17
|
-
const info = daemonConstants.info;
|
|
18
|
-
return (React.createElement(Box, { borderStyle: "round", borderColor: BaseColors.brandBlue, flexDirection: "column", marginBottom: 1, paddingX: 1, width: "100%" },
|
|
19
|
-
React.createElement(Text, { color: BaseColors.brandBlue, bold: true }, info.title),
|
|
20
|
-
info.lines.map((line) => (React.createElement(Text, { key: line, color: BaseColors.shade2 }, line))),
|
|
21
|
-
React.createElement(Text, { color: BaseColors.shade4 }, CockpitDaemonPanelCopy.closeInfoLabel)));
|
|
22
|
-
}
|
|
23
|
-
function DaemonActionLine({ snapshot, selected, infoVisible, }) {
|
|
24
|
-
const action = snapshot.status === TuiSubprocessStatus.RUNNING
|
|
25
|
-
? CockpitDaemonPanelCopy.action.stop
|
|
26
|
-
: CockpitDaemonPanelCopy.action.start;
|
|
27
|
-
const badgeColor = getDaemonShortcutBadgeColor(selected);
|
|
28
|
-
return (React.createElement(Box, { width: DAEMON_PANEL_CONTENT_WIDTH, marginTop: 1, gap: 1 },
|
|
29
|
-
React.createElement(KeyBadge, { char: "s", label: action, color: badgeColor, labelColor: BaseColors.shade4 }),
|
|
30
|
-
React.createElement(KeyBadge, { char: "@", label: CockpitDaemonPanelCopy.action.config, color: badgeColor, labelColor: BaseColors.shade4 }),
|
|
31
|
-
React.createElement(KeyBadge, { char: "i", label: infoVisible
|
|
32
|
-
? CockpitDaemonPanelCopy.action.infoOpen
|
|
33
|
-
: CockpitDaemonPanelCopy.action.info, color: badgeColor, labelColor: BaseColors.shade4 })));
|
|
34
|
-
}
|
|
35
|
-
function DaemonConfigWizard({ snapshot, pendingConfig, selected, }) {
|
|
36
|
-
const config = snapshot.status === TuiSubprocessStatus.RUNNING
|
|
37
|
-
? snapshot.config
|
|
38
|
-
: pendingConfig;
|
|
39
|
-
const badgeColor = getDaemonShortcutBadgeColor(selected);
|
|
40
|
-
return (React.createElement(Box, { width: DAEMON_PANEL_CONTENT_WIDTH, flexDirection: "column" },
|
|
41
|
-
React.createElement(Text, { color: BaseColors.shade4 },
|
|
42
|
-
CockpitDaemonPanelCopy.pidLabel,
|
|
43
|
-
" ",
|
|
44
|
-
snapshot.pid ?? "-"),
|
|
45
|
-
React.createElement(Box, { gap: 1 },
|
|
46
|
-
React.createElement(KeyBadge, { char: "a", label: config.agentId, color: badgeColor, labelColor: BaseColors.shade4 }),
|
|
47
|
-
React.createElement(KeyBadge, { char: "p", label: `${Math.round(config.pollIntervalMs / 1000)}s`, color: badgeColor, labelColor: BaseColors.shade4 }),
|
|
48
|
-
React.createElement(KeyBadge, { char: "x", label: String(config.maxRetries), color: badgeColor, labelColor: BaseColors.shade4 }))));
|
|
49
|
-
}
|
|
50
|
-
function getDaemonShortcutBadgeColor(selected) {
|
|
51
|
-
return selected ? BaseColors.brandBlue : BaseColors.shade4;
|
|
52
|
-
}
|
|
53
14
|
//# sourceMappingURL=CockpitDaemonPanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CockpitDaemonPanel.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"CockpitDaemonPanel.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D,MAAM,UAAU,kBAAkB,CAAC,EACjC,eAAe,EACf,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,WAAW,EACX,WAAW,EACX,QAAQ,GAST;IACC,OAAO,CACL,oBAAC,KAAK,IACJ,KAAK,EAAE,eAAe,CAAC,KAAK,EAC5B,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAC/D,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,EAChE,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,CAAC,EACZ,MAAM,EAAC,MAAM,EACb,QAAQ,EAAE,KAAK;QAEf,oBAAC,GAAG,IAAC,UAAU,EAAC,QAAQ,EAAC,aAAa,EAAC,QAAQ;YAC5C,QAAQ;YACT,oBAAC,gBAAgB,IACf,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,GACxB;YACD,WAAW,IAAI,CACd,oBAAC,kBAAkB,IACjB,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,QAAQ,GAClB,CACH,CACG,CACA,CACT,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitDaemonPollConfigCycler.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonPollConfigCycler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAIpF,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CASvF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const COCKPIT_DAEMON_POLL_INTERVAL_OPTIONS_MS = [10000, 30000, 60000, 120000];
|
|
2
|
+
export function getNextCockpitDaemonPollConfig(config) {
|
|
3
|
+
const currentIndex = COCKPIT_DAEMON_POLL_INTERVAL_OPTIONS_MS.indexOf(config.pollIntervalMs);
|
|
4
|
+
const nextIndex = currentIndex === -1
|
|
5
|
+
? 0
|
|
6
|
+
: (currentIndex + 1) % COCKPIT_DAEMON_POLL_INTERVAL_OPTIONS_MS.length;
|
|
7
|
+
return { ...config, pollIntervalMs: COCKPIT_DAEMON_POLL_INTERVAL_OPTIONS_MS[nextIndex] };
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=CockpitDaemonPollConfigCycler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitDaemonPollConfigCycler.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonPollConfigCycler.ts"],"names":[],"mappings":"AAEA,MAAM,uCAAuC,GAAG,CAAC,KAAM,EAAE,KAAM,EAAE,KAAM,EAAE,MAAO,CAAU,CAAC;AAE3F,MAAM,UAAU,8BAA8B,CAAC,MAAuB;IACpE,MAAM,YAAY,GAAG,uCAAuC,CAAC,OAAO,CAClE,MAAM,CAAC,cAAwE,CAChF,CAAC;IACF,MAAM,SAAS,GAAG,YAAY,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,uCAAuC,CAAC,MAAM,CAAC;IAExE,OAAO,EAAE,GAAG,MAAM,EAAE,cAAc,EAAE,uCAAuC,CAAC,SAAS,CAAC,EAAE,CAAC;AAC3F,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitDaemonRetryConfigCycler.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonRetryConfigCycler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAIpF,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CASxF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const COCKPIT_DAEMON_RETRY_OPTIONS = [1, 2, 3, 5];
|
|
2
|
+
export function getNextCockpitDaemonRetryConfig(config) {
|
|
3
|
+
const currentIndex = COCKPIT_DAEMON_RETRY_OPTIONS.indexOf(config.maxRetries);
|
|
4
|
+
const nextIndex = currentIndex === -1
|
|
5
|
+
? 0
|
|
6
|
+
: (currentIndex + 1) % COCKPIT_DAEMON_RETRY_OPTIONS.length;
|
|
7
|
+
return { ...config, maxRetries: COCKPIT_DAEMON_RETRY_OPTIONS[nextIndex] };
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=CockpitDaemonRetryConfigCycler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitDaemonRetryConfigCycler.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonRetryConfigCycler.ts"],"names":[],"mappings":"AAEA,MAAM,4BAA4B,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAC;AAE3D,MAAM,UAAU,+BAA+B,CAAC,MAAuB;IACrE,MAAM,YAAY,GAAG,4BAA4B,CAAC,OAAO,CACvD,MAAM,CAAC,UAAyD,CACjE,CAAC;IACF,MAAM,SAAS,GAAG,YAAY,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,4BAA4B,CAAC,MAAM,CAAC;IAE7D,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,4BAA4B,CAAC,SAAS,CAAC,EAAE,CAAC;AAC5E,CAAC"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CockpitDaemonEventSnapshot } from "./CockpitDaemonEventSnapshot.js";
|
|
2
2
|
import type { TuiSubprocessStatusValue } from "../daemon-subprocesses/TuiSubprocessStatus.js";
|
|
3
3
|
export interface CockpitDaemonSnapshot {
|
|
4
4
|
readonly status: TuiSubprocessStatusValue;
|
|
5
5
|
readonly events: readonly CockpitDaemonEventSnapshot[];
|
|
6
6
|
}
|
|
7
|
-
export interface CockpitDaemonEventSnapshot {
|
|
8
|
-
readonly status: TuiDaemonEventStatusValue | (string & {});
|
|
9
|
-
}
|
|
10
7
|
//# sourceMappingURL=CockpitDaemonSnapshot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CockpitDaemonSnapshot.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"CockpitDaemonSnapshot.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitDaemonSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,+CAA+C,CAAC;AAEvD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACxD"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export interface CockpitLaunchAnimationSize {
|
|
2
|
+
readonly width: number;
|
|
3
|
+
readonly height: number;
|
|
4
|
+
}
|
|
5
|
+
export declare function getCockpitLaunchAnimationSize(terminalWidth: number, terminalHeight: number): CockpitLaunchAnimationSize;
|
|
6
|
+
//# sourceMappingURL=CockpitLaunchAnimationSize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchAnimationSize.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchAnimationSize.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,6BAA6B,CAC3C,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACrB,0BAA0B,CAK5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchAnimationSize.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchAnimationSize.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,6BAA6B,CAC3C,aAAqB,EACrB,cAAsB;IAEtB,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC/C,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;KAC9C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { TuiDaemonName } from "../daemon-subprocesses/ISubprocessManager.js";
|
|
2
|
+
import { CodifierDaemonFrame } from "./daemons/CodifierDaemonFrame.js";
|
|
3
|
+
import { RefinerDaemonFrame } from "./daemons/RefinerDaemonFrame.js";
|
|
4
|
+
import { ReviewerDaemonFrame } from "./daemons/ReviewerDaemonFrame.js";
|
|
5
|
+
export declare const CockpitLaunchpadDaemonDefinitions: {
|
|
6
|
+
readonly all: readonly [{
|
|
7
|
+
readonly constants: {
|
|
8
|
+
readonly name: "refiner";
|
|
9
|
+
readonly title: "REFINER//";
|
|
10
|
+
readonly activeVerb: "refining";
|
|
11
|
+
readonly idleVerb: "foraging";
|
|
12
|
+
readonly info: {
|
|
13
|
+
readonly title: "REFINER//";
|
|
14
|
+
readonly lines: readonly ["Automatically apply relevant memories to build goal context for the implementing agent.", "", "Goals are submitted when finished and ready for implementation."];
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
readonly Frame: typeof RefinerDaemonFrame;
|
|
18
|
+
}, {
|
|
19
|
+
readonly constants: {
|
|
20
|
+
readonly name: "reviewer";
|
|
21
|
+
readonly title: "REVIEWER//";
|
|
22
|
+
readonly activeVerb: "reviewing";
|
|
23
|
+
readonly idleVerb: "awaiting submissions";
|
|
24
|
+
readonly info: {
|
|
25
|
+
readonly title: "REVIEWER//";
|
|
26
|
+
readonly lines: readonly ["Orchestrate background agents to automatically review goal implementations as soon as they submitted.", "", "Approved goals will get picked up by the codifier (if running).", "Rejected goals will get requeued with documented issues to be resolved."];
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
readonly Frame: typeof ReviewerDaemonFrame;
|
|
30
|
+
}, {
|
|
31
|
+
readonly constants: {
|
|
32
|
+
readonly name: "codifier";
|
|
33
|
+
readonly title: "CODIFIER//";
|
|
34
|
+
readonly activeVerb: "codifying";
|
|
35
|
+
readonly idleVerb: "awaiting approvals";
|
|
36
|
+
readonly info: {
|
|
37
|
+
readonly title: "CODIFIER//";
|
|
38
|
+
readonly lines: readonly ["Codify implementation results automatically as soon as goals are approved.", "", "Missing decisions, components and documentation will be updated before goals are finally closed."];
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
readonly Frame: typeof CodifierDaemonFrame;
|
|
42
|
+
}];
|
|
43
|
+
readonly focusOrder: readonly TuiDaemonName[];
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=CockpitLaunchpadDaemonDefinitions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadDaemonDefinitions.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadDaemonDefinitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAElF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAGvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAiBvE,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAIvC,SAAS,aAAa,EAAE;CACrB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { CodifierDaemonConstants } from "./daemons/CodifierDaemonConstants.js";
|
|
2
|
+
import { CodifierDaemonFrame } from "./daemons/CodifierDaemonFrame.js";
|
|
3
|
+
import { RefinerDaemonConstants } from "./daemons/RefinerDaemonConstants.js";
|
|
4
|
+
import { RefinerDaemonFrame } from "./daemons/RefinerDaemonFrame.js";
|
|
5
|
+
import { ReviewerDaemonConstants } from "./daemons/ReviewerDaemonConstants.js";
|
|
6
|
+
import { ReviewerDaemonFrame } from "./daemons/ReviewerDaemonFrame.js";
|
|
7
|
+
const daemonUiDefinitions = [
|
|
8
|
+
{
|
|
9
|
+
constants: RefinerDaemonConstants,
|
|
10
|
+
Frame: RefinerDaemonFrame,
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
constants: ReviewerDaemonConstants,
|
|
14
|
+
Frame: ReviewerDaemonFrame,
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
constants: CodifierDaemonConstants,
|
|
18
|
+
Frame: CodifierDaemonFrame,
|
|
19
|
+
},
|
|
20
|
+
];
|
|
21
|
+
export const CockpitLaunchpadDaemonDefinitions = {
|
|
22
|
+
all: daemonUiDefinitions,
|
|
23
|
+
focusOrder: daemonUiDefinitions.map((daemonUiDefinition) => daemonUiDefinition.constants.name),
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=CockpitLaunchpadDaemonDefinitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadDaemonDefinitions.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadDaemonDefinitions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAEvE,MAAM,mBAAmB,GAAG;IAC1B;QACE,SAAS,EAAE,sBAAsB;QACjC,KAAK,EAAE,kBAAkB;KAC1B;IACD;QACE,SAAS,EAAE,uBAAuB;QAClC,KAAK,EAAE,mBAAmB;KAC3B;IACD;QACE,SAAS,EAAE,uBAAuB;QAClC,KAAK,EAAE,mBAAmB;KAC3B;CACgD,CAAC;AAEpD,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,GAAG,EAAE,mBAAmB;IACxB,UAAU,EAAE,mBAAmB,CAAC,GAAG,CACjC,CAAC,kBAAkB,EAAE,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAC9B;CACrB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { GlyphColorMap, GlyphPalette } from "./CockpitDaemonFrames.js";
|
|
3
|
+
import type { TuiDaemonConfigs, TuiDaemonName, TuiSubprocessSnapshot } from "../daemon-subprocesses/ISubprocessManager.js";
|
|
4
|
+
interface CockpitLaunchpadDaemonPanelsProps {
|
|
5
|
+
readonly selectedDaemon: TuiDaemonName;
|
|
6
|
+
readonly configuredDaemon: TuiDaemonName | undefined;
|
|
7
|
+
readonly infoDaemon: TuiDaemonName | undefined;
|
|
8
|
+
readonly daemonStatuses: readonly TuiSubprocessSnapshot[];
|
|
9
|
+
readonly daemonConfigs: TuiDaemonConfigs;
|
|
10
|
+
readonly daemonFrameIndexByName: Record<TuiDaemonName, number>;
|
|
11
|
+
readonly refinerGlyphPalette: GlyphPalette;
|
|
12
|
+
readonly reviewerGlyphPalette: GlyphPalette;
|
|
13
|
+
readonly codifierGlyphColors: GlyphColorMap;
|
|
14
|
+
}
|
|
15
|
+
export declare function CockpitLaunchpadDaemonPanels({ selectedDaemon, configuredDaemon, infoDaemon, daemonStatuses, daemonConfigs, daemonFrameIndexByName, refinerGlyphPalette, reviewerGlyphPalette, codifierGlyphColors, }: CockpitLaunchpadDaemonPanelsProps): React.ReactElement;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=CockpitLaunchpadDaemonPanels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadDaemonPanels.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadDaemonPanels.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAK5E,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACtB,MAAM,8CAA8C,CAAC;AAEtD,UAAU,iCAAiC;IACzC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,gBAAgB,EAAE,aAAa,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,UAAU,EAAE,aAAa,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1D,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;IACzC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC/D,QAAQ,CAAC,mBAAmB,EAAE,YAAY,CAAC;IAC3C,QAAQ,CAAC,oBAAoB,EAAE,YAAY,CAAC;IAC5C,QAAQ,CAAC,mBAAmB,EAAE,aAAa,CAAC;CAC7C;AAED,wBAAgB,4BAA4B,CAAC,EAC3C,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,GACpB,EAAE,iCAAiC,GAAG,KAAK,CAAC,YAAY,CAgCxD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Box } from "ink";
|
|
3
|
+
import { CockpitDaemonEvents } from "./CockpitDaemonEvents.js";
|
|
4
|
+
import { CockpitDaemonPanel } from "./CockpitDaemonPanel.js";
|
|
5
|
+
import { getDaemonPanelStatusLabel } from "./DaemonPanelStatusLabel.js";
|
|
6
|
+
import { CockpitLaunchpadDaemonDefinitions } from "./CockpitLaunchpadDaemonDefinitions.js";
|
|
7
|
+
export function CockpitLaunchpadDaemonPanels({ selectedDaemon, configuredDaemon, infoDaemon, daemonStatuses, daemonConfigs, daemonFrameIndexByName, refinerGlyphPalette, reviewerGlyphPalette, codifierGlyphColors, }) {
|
|
8
|
+
return (React.createElement(Box, { flexDirection: "row", flexShrink: 0, height: 13, width: "100%", gap: 1, marginY: 1 }, CockpitLaunchpadDaemonDefinitions.all.map((daemonUiDefinition) => {
|
|
9
|
+
const { constants: daemonConstants, Frame } = daemonUiDefinition;
|
|
10
|
+
const name = daemonConstants.name;
|
|
11
|
+
const snapshot = CockpitDaemonEvents.findStatus(daemonStatuses, name);
|
|
12
|
+
const statusLabel = getDaemonPanelStatusLabel(snapshot, daemonConstants);
|
|
13
|
+
return (React.createElement(CockpitDaemonPanel, { key: name, daemonConstants: daemonConstants, selected: selectedDaemon === name, configuring: configuredDaemon === name, infoVisible: infoDaemon === name, snapshot: snapshot, pendingConfig: daemonConfigs[name] },
|
|
14
|
+
React.createElement(Frame, { frameIndex: daemonFrameIndexByName[name], snapshot: snapshot, statusLabel: statusLabel, refinerGlyphPalette: refinerGlyphPalette, reviewerGlyphPalette: reviewerGlyphPalette, codifierGlyphColors: codifierGlyphColors })));
|
|
15
|
+
})));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=CockpitLaunchpadDaemonPanels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadDaemonPanels.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadDaemonPanels.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,iCAAiC,EAAE,MAAM,wCAAwC,CAAC;AAmB3F,MAAM,UAAU,4BAA4B,CAAC,EAC3C,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,GACe;IAClC,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAC,MAAM,EAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,IAChF,iCAAiC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,kBAAkB,EAAE,EAAE;QAChE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC;QACjE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;QAClC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,UAAU,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,yBAAyB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAEzE,OAAO,CACL,oBAAC,kBAAkB,IACjB,GAAG,EAAE,IAAI,EACT,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,cAAc,KAAK,IAAI,EACjC,WAAW,EAAE,gBAAgB,KAAK,IAAI,EACtC,WAAW,EAAE,UAAU,KAAK,IAAI,EAChC,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,aAAa,CAAC,IAAI,CAAC;YAElC,oBAAC,KAAK,IACJ,UAAU,EAAE,sBAAsB,CAAC,IAAI,CAAC,EACxC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,mBAAmB,EAAE,mBAAmB,EACxC,oBAAoB,EAAE,oBAAoB,EAC1C,mBAAmB,EAAE,mBAAmB,GACxC,CACiB,CACtB,CAAC;IACJ,CAAC,CAAC,CACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { DaemonEventRow } from "./DaemonEventRow.js";
|
|
3
|
+
interface CockpitLaunchpadEventLogProps {
|
|
4
|
+
readonly rows: readonly DaemonEventRow[];
|
|
5
|
+
}
|
|
6
|
+
export declare function CockpitLaunchpadEventLog({ rows, }: CockpitLaunchpadEventLogProps): React.ReactElement;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=CockpitLaunchpadEventLog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadEventLog.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadEventLog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,UAAU,6BAA6B;IACrC,QAAQ,CAAC,IAAI,EAAE,SAAS,cAAc,EAAE,CAAC;CAC1C;AAED,wBAAgB,wBAAwB,CAAC,EACvC,IAAI,GACL,EAAE,6BAA6B,GAAG,KAAK,CAAC,YAAY,CAepD"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Box, Text } from "ink";
|
|
3
|
+
import { BaseColors } from "../../shared/DesignTokens.js";
|
|
4
|
+
import { CockpitDaemonEvents } from "./CockpitDaemonEvents.js";
|
|
5
|
+
import { CockpitLaunchpadCopy } from "./CockpitLaunchpadCopy.js";
|
|
6
|
+
export function CockpitLaunchpadEventLog({ rows, }) {
|
|
7
|
+
return (React.createElement(Box, { flexDirection: "column" },
|
|
8
|
+
React.createElement(Text, { color: BaseColors.shade2, bold: true }, CockpitLaunchpadCopy.eventsHeading),
|
|
9
|
+
React.createElement(Box, { flexDirection: "column", marginTop: 1 }, rows.map((row) => (React.createElement(Text, { key: row.key, color: row.color }, CockpitDaemonEvents.formatRow(row)))))));
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=CockpitLaunchpadEventLog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadEventLog.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadEventLog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAMjE,MAAM,UAAU,wBAAwB,CAAC,EACvC,IAAI,GAC0B;IAC9B,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,oBAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,UACjC,oBAAoB,CAAC,aAAa,CAC9B;QACP,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,IACrC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjB,oBAAC,IAAI,IAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,IACjC,mBAAmB,CAAC,SAAS,CAAC,GAAG,CAAC,CAC9B,CACR,CAAC,CACE,CACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type { AnimatedBillboardTriggerInput } from "../billboard/AnimatedBillboard.js";
|
|
3
2
|
import type { ISettingsReader } from "../../../application/settings/ISettingsReader.js";
|
|
4
|
-
import
|
|
3
|
+
import type { AnimatedBillboardTriggerInput } from "../billboard/AnimatedBillboard.js";
|
|
4
|
+
import { type GlyphColorMap, type GlyphPalette } from "./CockpitDaemonFrames.js";
|
|
5
5
|
interface LaunchAnimationSize {
|
|
6
6
|
readonly width: number;
|
|
7
7
|
readonly height: number;
|
|
@@ -20,6 +20,6 @@ interface CockpitLaunchpadViewProps {
|
|
|
20
20
|
codifierFrameDurationMs?: number;
|
|
21
21
|
settingsReader?: Pick<ISettingsReader, "read" | "write">;
|
|
22
22
|
}
|
|
23
|
-
export { getCodifierFrame, getReviewerFrame };
|
|
24
23
|
export declare function CockpitLaunchpadView({ shortcutsEnabled, launchAnimationSize, onLaunchAnimationDone, launchAnimationRenderer, refinerGlyphPalette, reviewerGlyphPalette, codifierGlyphColors, refinerFrameDurationMs, reviewerFrameDurationMs, codifierFrameDurationMs, settingsReader, }?: CockpitLaunchpadViewProps): React.ReactElement;
|
|
24
|
+
export {};
|
|
25
25
|
//# sourceMappingURL=CockpitLaunchpadView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CockpitLaunchpadView.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAGhE,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"CockpitLaunchpadView.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/CockpitLaunchpadView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAGhE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AAExF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAavF,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,0BAA0B,CAAC;AAWlC,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,uBAAuB,GAAG,CACpC,KAAK,EAAE,6BAA6B,KACjC,KAAK,CAAC,YAAY,CAAC;AAExB,UAAU,yBAAyB;IACjC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC,oBAAoB,CAAC,EAAE,YAAY,CAAC;IACpC,mBAAmB,CAAC,EAAE,aAAa,CAAC;IACpC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;CAC1D;AAED,wBAAgB,oBAAoB,CAAC,EACnC,gBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAmD,EACnD,mBAAiD,EACjD,oBAAkD,EAClD,mBAAmD,EACnD,sBAA0D,EAC1D,uBAA4D,EAC5D,uBAA4D,EAC5D,cAAc,GACf,GAAE,yBAA8B,GAAG,KAAK,CAAC,YAAY,CA+LrD"}
|
|
@@ -1,39 +1,24 @@
|
|
|
1
1
|
import React, { useCallback, useEffect, useState } from "react";
|
|
2
|
-
import { Box,
|
|
2
|
+
import { Box, useInput } from "ink";
|
|
3
|
+
import { DEFAULT_WORKER_DAEMON_CONFIGS } from "../../../application/daemons/WorkerDaemonCatalog.js";
|
|
3
4
|
import AnimatedBillboard from "../billboard/AnimatedBillboard.js";
|
|
4
|
-
import { BaseColors } from "../../shared/DesignTokens.js";
|
|
5
5
|
import { useSubprocessManager } from "../daemon-subprocesses/useSubprocessManager.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
6
|
+
import { CockpitDaemonEvents } from "./CockpitDaemonEvents.js";
|
|
7
|
+
import { getNextCockpitDaemonAgentConfig } from "./CockpitDaemonAgentConfigCycler.js";
|
|
8
|
+
import { updateSelectedCockpitDaemonConfig } from "./CockpitDaemonConfigsUpdater.js";
|
|
9
|
+
import { getNextFocusedCockpitDaemon } from "./CockpitDaemonFocusOrder.js";
|
|
10
|
+
import { getNextCockpitDaemonPollConfig } from "./CockpitDaemonPollConfigCycler.js";
|
|
11
|
+
import { getNextCockpitDaemonRetryConfig } from "./CockpitDaemonRetryConfigCycler.js";
|
|
12
|
+
import { DEFAULT_CODIFIER_FRAME_DURATION_MS, DEFAULT_CODIFIER_GLYPH_COLORS, DEFAULT_RANDOM_GLYPH_COLORS, DEFAULT_REFINER_FRAME_DURATION_MS, DEFAULT_REVIEWER_FRAME_DURATION_MS, getRenderedFrameIndex, } from "./CockpitDaemonFrames.js";
|
|
13
|
+
import { CockpitLaunchpadDaemonDefinitions } from "./CockpitLaunchpadDaemonDefinitions.js";
|
|
14
|
+
import { CockpitLaunchpadDaemonPanels } from "./CockpitLaunchpadDaemonPanels.js";
|
|
15
|
+
import { CockpitLaunchpadEventLog } from "./CockpitLaunchpadEventLog.js";
|
|
13
16
|
import { CockpitLaunchpadWelcome } from "./CockpitLaunchpadWelcome.js";
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import { ReviewerDaemonConstants } from "./daemons/ReviewerDaemonConstants.js";
|
|
20
|
-
import { ReviewerDaemonFrame } from "./daemons/ReviewerDaemonFrame.js";
|
|
21
|
-
const DAEMON_UI_DEFINITIONS = [
|
|
22
|
-
{
|
|
23
|
-
constants: RefinerDaemonConstants,
|
|
24
|
-
Frame: RefinerDaemonFrame,
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
constants: ReviewerDaemonConstants,
|
|
28
|
-
Frame: ReviewerDaemonFrame,
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
constants: CodifierDaemonConstants,
|
|
32
|
-
Frame: CodifierDaemonFrame,
|
|
33
|
-
},
|
|
34
|
-
];
|
|
35
|
-
const DAEMON_FOCUS_ORDER = DAEMON_UI_DEFINITIONS.map((daemonUiDefinition) => daemonUiDefinition.constants.name);
|
|
36
|
-
export { getCodifierFrame, getReviewerFrame };
|
|
17
|
+
import { DaemonInfoOverlay } from "./DaemonInfoOverlay.js";
|
|
18
|
+
import { toggleCockpitDaemon } from "./toggleCockpitDaemon.js";
|
|
19
|
+
import { useCockpitLaunchpadWelcomeVisibility } from "./useCockpitLaunchpadWelcomeVisibility.js";
|
|
20
|
+
import { useDaemonAnimationFrames } from "./useDaemonAnimationFrames.js";
|
|
21
|
+
import { useDaemonStatusPolling } from "./useDaemonStatusPolling.js";
|
|
37
22
|
export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationSize, onLaunchAnimationDone, launchAnimationRenderer = AnimatedBillboard.trigger, refinerGlyphPalette = DEFAULT_RANDOM_GLYPH_COLORS, reviewerGlyphPalette = DEFAULT_RANDOM_GLYPH_COLORS, codifierGlyphColors = DEFAULT_CODIFIER_GLYPH_COLORS, refinerFrameDurationMs = DEFAULT_REFINER_FRAME_DURATION_MS, reviewerFrameDurationMs = DEFAULT_REVIEWER_FRAME_DURATION_MS, codifierFrameDurationMs = DEFAULT_CODIFIER_FRAME_DURATION_MS, settingsReader, } = {}) {
|
|
38
23
|
const subprocessManager = useSubprocessManager();
|
|
39
24
|
const [launchAnimationDone, setLaunchAnimationDone] = useState(launchAnimationSize === undefined);
|
|
@@ -43,10 +28,9 @@ export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationS
|
|
|
43
28
|
const [selectedDaemon, setSelectedDaemon] = useState("refiner");
|
|
44
29
|
const [configuredDaemon, setConfiguredDaemon] = useState(undefined);
|
|
45
30
|
const [infoDaemon, setInfoDaemon] = useState(undefined);
|
|
46
|
-
const [welcomeVisible, setWelcomeVisible] = useState(settingsReader === undefined ? true : undefined);
|
|
47
31
|
const [daemonConfigs, setDaemonConfigs] = useState(DEFAULT_WORKER_DAEMON_CONFIGS);
|
|
48
|
-
const
|
|
49
|
-
const
|
|
32
|
+
const { welcomeVisible, hideWelcome } = useCockpitLaunchpadWelcomeVisibility(settingsReader);
|
|
33
|
+
const { daemonStatuses, daemonEventRows, setDaemonStatuses, setDaemonEventRows, } = useDaemonStatusPolling(subprocessManager);
|
|
50
34
|
const launchAnimationActive = launchAnimationSize !== undefined && !launchAnimationDone;
|
|
51
35
|
useEffect(() => {
|
|
52
36
|
if (launchAnimationSize === undefined) {
|
|
@@ -57,49 +41,6 @@ export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationS
|
|
|
57
41
|
setLaunchAnimationDone(true);
|
|
58
42
|
onLaunchAnimationDone?.();
|
|
59
43
|
}, [onLaunchAnimationDone]);
|
|
60
|
-
useEffect(() => {
|
|
61
|
-
let mounted = true;
|
|
62
|
-
if (settingsReader === undefined) {
|
|
63
|
-
setWelcomeVisible(true);
|
|
64
|
-
return () => {
|
|
65
|
-
mounted = false;
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
setWelcomeVisible(undefined);
|
|
69
|
-
void settingsReader.read()
|
|
70
|
-
.then((settings) => {
|
|
71
|
-
if (mounted) {
|
|
72
|
-
setWelcomeVisible(settings.tui?.showLaunchpadWelcome ?? true);
|
|
73
|
-
}
|
|
74
|
-
})
|
|
75
|
-
.catch(() => {
|
|
76
|
-
if (mounted) {
|
|
77
|
-
setWelcomeVisible(true);
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
return () => {
|
|
81
|
-
mounted = false;
|
|
82
|
-
};
|
|
83
|
-
}, [settingsReader]);
|
|
84
|
-
const hideWelcome = useCallback(async () => {
|
|
85
|
-
setWelcomeVisible(false);
|
|
86
|
-
if (settingsReader === undefined) {
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
try {
|
|
90
|
-
const settings = await settingsReader.read();
|
|
91
|
-
await settingsReader.write({
|
|
92
|
-
...settings,
|
|
93
|
-
tui: {
|
|
94
|
-
...settings.tui,
|
|
95
|
-
showLaunchpadWelcome: false,
|
|
96
|
-
},
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
catch {
|
|
100
|
-
// Keep the in-memory dismissal even if persistence is unavailable.
|
|
101
|
-
}
|
|
102
|
-
}, [settingsReader]);
|
|
103
44
|
useDaemonAnimationFrames({
|
|
104
45
|
reviewerFrameDurationMs,
|
|
105
46
|
refinerFrameDurationMs,
|
|
@@ -108,24 +49,16 @@ export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationS
|
|
|
108
49
|
setRefinerFrameIndex,
|
|
109
50
|
setCodifierFrameIndex,
|
|
110
51
|
});
|
|
111
|
-
useEffect(() => {
|
|
112
|
-
const timer = setInterval(() => {
|
|
113
|
-
const snapshots = subprocessManager.getAllStatuses();
|
|
114
|
-
setDaemonStatuses(snapshots);
|
|
115
|
-
setDaemonEventRows((currentRows) => appendDaemonEventRows(currentRows, getDaemonEventRows(snapshots, Date.now())));
|
|
116
|
-
}, 500);
|
|
117
|
-
return () => clearInterval(timer);
|
|
118
|
-
}, [subprocessManager]);
|
|
119
52
|
useInput((input, key) => {
|
|
120
53
|
if (key.tab || input === "\t") {
|
|
121
54
|
setSelectedDaemon((currentDaemon) => {
|
|
122
|
-
const nextDaemon =
|
|
55
|
+
const nextDaemon = getNextFocusedCockpitDaemon(currentDaemon, CockpitLaunchpadDaemonDefinitions.focusOrder);
|
|
123
56
|
setInfoDaemon((currentInfoDaemon) => currentInfoDaemon === undefined ? undefined : nextDaemon);
|
|
124
57
|
return nextDaemon;
|
|
125
58
|
});
|
|
126
59
|
}
|
|
127
60
|
if (input === "s" || input === "S") {
|
|
128
|
-
void
|
|
61
|
+
void toggleCockpitDaemon(selectedDaemon, subprocessManager, daemonConfigs[selectedDaemon], setDaemonStatuses, setDaemonEventRows);
|
|
129
62
|
}
|
|
130
63
|
if (input === "@") {
|
|
131
64
|
setConfiguredDaemon((currentDaemon) => currentDaemon === selectedDaemon ? undefined : selectedDaemon);
|
|
@@ -141,23 +74,23 @@ export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationS
|
|
|
141
74
|
}
|
|
142
75
|
if (input === "a" || input === "A") {
|
|
143
76
|
if (configuredDaemon !== undefined) {
|
|
144
|
-
setDaemonConfigs((configs) =>
|
|
77
|
+
setDaemonConfigs((configs) => updateSelectedCockpitDaemonConfig(configs, configuredDaemon, getNextCockpitDaemonAgentConfig));
|
|
145
78
|
}
|
|
146
79
|
}
|
|
147
80
|
if (input === "p" || input === "P") {
|
|
148
81
|
if (configuredDaemon !== undefined) {
|
|
149
|
-
setDaemonConfigs((configs) =>
|
|
82
|
+
setDaemonConfigs((configs) => updateSelectedCockpitDaemonConfig(configs, configuredDaemon, getNextCockpitDaemonPollConfig));
|
|
150
83
|
}
|
|
151
84
|
}
|
|
152
85
|
if (input === "x" || input === "X") {
|
|
153
86
|
if (configuredDaemon !== undefined) {
|
|
154
|
-
setDaemonConfigs((configs) =>
|
|
87
|
+
setDaemonConfigs((configs) => updateSelectedCockpitDaemonConfig(configs, configuredDaemon, getNextCockpitDaemonRetryConfig));
|
|
155
88
|
}
|
|
156
89
|
}
|
|
157
90
|
}, { isActive: shortcutsEnabled });
|
|
158
|
-
const daemonStatusByName = Object.fromEntries(
|
|
91
|
+
const daemonStatusByName = Object.fromEntries(CockpitLaunchpadDaemonDefinitions.all.map((daemonUiDefinition) => [
|
|
159
92
|
daemonUiDefinition.constants.name,
|
|
160
|
-
|
|
93
|
+
CockpitDaemonEvents.findStatus(daemonStatuses, daemonUiDefinition.constants.name),
|
|
161
94
|
]));
|
|
162
95
|
const daemonFrameIndexByName = {
|
|
163
96
|
refiner: getRenderedFrameIndex(daemonStatusByName.refiner, refinerFrameIndex),
|
|
@@ -166,7 +99,7 @@ export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationS
|
|
|
166
99
|
};
|
|
167
100
|
const infoDaemonConstants = infoDaemon === undefined
|
|
168
101
|
? undefined
|
|
169
|
-
:
|
|
102
|
+
: CockpitLaunchpadDaemonDefinitions.all.find((definition) => definition.constants.name === infoDaemon)?.constants;
|
|
170
103
|
if (launchAnimationActive) {
|
|
171
104
|
return (React.createElement(Box, { flexDirection: "column", flexGrow: 1, width: "100%", height: "100%" }, launchAnimationRenderer({
|
|
172
105
|
height: launchAnimationSize.height,
|
|
@@ -175,57 +108,10 @@ export function CockpitLaunchpadView({ shortcutsEnabled = true, launchAnimationS
|
|
|
175
108
|
})));
|
|
176
109
|
}
|
|
177
110
|
return (React.createElement(Box, { flexDirection: "column", width: "100%", height: "100%", paddingX: 1 },
|
|
178
|
-
welcomeVisible === true &&
|
|
179
|
-
React.createElement(
|
|
180
|
-
const { constants: daemonConstants, Frame } = daemonUiDefinition;
|
|
181
|
-
const name = daemonConstants.name;
|
|
182
|
-
const snapshot = daemonStatusByName[name];
|
|
183
|
-
const frameIndex = daemonFrameIndexByName[name];
|
|
184
|
-
const statusLabel = getDaemonPanelStatusLabel(snapshot, daemonConstants);
|
|
185
|
-
return (React.createElement(CockpitDaemonPanel, { key: name, daemonConstants: daemonConstants, selected: selectedDaemon === name, configuring: configuredDaemon === name, infoVisible: infoDaemon === name, snapshot: snapshot, pendingConfig: daemonConfigs[name] },
|
|
186
|
-
React.createElement(Frame, { frameIndex: frameIndex, snapshot: snapshot, statusLabel: statusLabel, refinerGlyphPalette: refinerGlyphPalette, reviewerGlyphPalette: reviewerGlyphPalette, codifierGlyphColors: codifierGlyphColors })));
|
|
187
|
-
})),
|
|
111
|
+
welcomeVisible === true && React.createElement(CockpitLaunchpadWelcome, null),
|
|
112
|
+
React.createElement(CockpitLaunchpadDaemonPanels, { selectedDaemon: selectedDaemon, configuredDaemon: configuredDaemon, infoDaemon: infoDaemon, daemonStatuses: daemonStatuses, daemonConfigs: daemonConfigs, daemonFrameIndexByName: daemonFrameIndexByName, refinerGlyphPalette: refinerGlyphPalette, reviewerGlyphPalette: reviewerGlyphPalette, codifierGlyphColors: codifierGlyphColors }),
|
|
188
113
|
React.createElement(Box, { flexDirection: "column", flexGrow: 1, flexBasis: 0, width: "100%", paddingY: 1 },
|
|
189
114
|
infoDaemonConstants !== undefined && (React.createElement(DaemonInfoOverlay, { daemonConstants: infoDaemonConstants })),
|
|
190
|
-
React.createElement(
|
|
191
|
-
React.createElement(Box, { flexDirection: "column", marginTop: 1 }, daemonEventRows.map((row) => (React.createElement(Text, { key: row.key, color: row.color }, formatDaemonEventRow(row))))))));
|
|
192
|
-
}
|
|
193
|
-
function useDaemonAnimationFrames({ reviewerFrameDurationMs, refinerFrameDurationMs, codifierFrameDurationMs, setReviewerFrameIndex, setRefinerFrameIndex, setCodifierFrameIndex, }) {
|
|
194
|
-
useEffect(() => {
|
|
195
|
-
if (reviewerFrameDurationMs <= 0)
|
|
196
|
-
return;
|
|
197
|
-
const timer = setInterval(() => {
|
|
198
|
-
setReviewerFrameIndex((previousFrameIndex) => (previousFrameIndex + 1) % REVIEWER_FRAME_COUNT);
|
|
199
|
-
}, reviewerFrameDurationMs);
|
|
200
|
-
return () => clearInterval(timer);
|
|
201
|
-
}, [reviewerFrameDurationMs, setReviewerFrameIndex]);
|
|
202
|
-
useEffect(() => {
|
|
203
|
-
if (REFINER_FRAME_COUNT <= 1 || refinerFrameDurationMs <= 0)
|
|
204
|
-
return;
|
|
205
|
-
const timer = setInterval(() => {
|
|
206
|
-
setRefinerFrameIndex((previousFrameIndex) => (previousFrameIndex + 1) % REFINER_FRAME_COUNT);
|
|
207
|
-
}, refinerFrameDurationMs);
|
|
208
|
-
return () => clearInterval(timer);
|
|
209
|
-
}, [refinerFrameDurationMs, setRefinerFrameIndex]);
|
|
210
|
-
useEffect(() => {
|
|
211
|
-
if (codifierFrameDurationMs <= 0)
|
|
212
|
-
return;
|
|
213
|
-
const timer = setInterval(() => {
|
|
214
|
-
setCodifierFrameIndex((previousFrameIndex) => (previousFrameIndex + 1) % CODIFIER_FRAME_COUNT);
|
|
215
|
-
}, codifierFrameDurationMs);
|
|
216
|
-
return () => clearInterval(timer);
|
|
217
|
-
}, [codifierFrameDurationMs, setCodifierFrameIndex]);
|
|
218
|
-
}
|
|
219
|
-
async function toggleDaemon(name, manager, config, setDaemonStatuses, setDaemonEventRows) {
|
|
220
|
-
const snapshot = manager.getStatus(name);
|
|
221
|
-
if (snapshot.status === TuiSubprocessStatus.RUNNING) {
|
|
222
|
-
await manager.terminate(name);
|
|
223
|
-
}
|
|
224
|
-
else {
|
|
225
|
-
await manager.spawn(name, config);
|
|
226
|
-
}
|
|
227
|
-
const snapshots = manager.getAllStatuses();
|
|
228
|
-
setDaemonStatuses(snapshots);
|
|
229
|
-
setDaemonEventRows((currentRows) => appendDaemonEventRows(currentRows, getDaemonEventRows(snapshots, Date.now())));
|
|
115
|
+
React.createElement(CockpitLaunchpadEventLog, { rows: daemonEventRows }))));
|
|
230
116
|
}
|
|
231
117
|
//# sourceMappingURL=CockpitLaunchpadView.js.map
|