jumbo-cli 3.0.3 → 3.2.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/README.md +1 -1
- package/assets/skills/codify-jumbo-goal/SKILL.md +0 -6
- package/assets/skills/define-jumbo-goals/SKILL.md +24 -25
- package/assets/skills/jumbo-add-component/SKILL.md +9 -0
- package/assets/skills/jumbo-add-decision/SKILL.md +9 -0
- package/assets/skills/jumbo-add-dependency/SKILL.md +9 -0
- package/assets/skills/jumbo-add-guideline/SKILL.md +9 -0
- package/assets/skills/jumbo-add-invariant/SKILL.md +9 -0
- package/assets/skills/jumbo-design-goal/SKILL.md +1 -1
- package/assets/skills/refine-jumbo-goals/SKILL.md +4 -4
- package/dist/application/agents/AgentInvocation.d.ts +10 -0
- package/dist/application/agents/AgentInvocation.d.ts.map +1 -0
- package/dist/application/agents/AgentInvocation.js +2 -0
- package/dist/application/agents/AgentInvocation.js.map +1 -0
- package/dist/application/agents/IAgentGateway.d.ts +5 -0
- package/dist/application/agents/IAgentGateway.d.ts.map +1 -0
- package/dist/application/agents/IAgentGateway.js +2 -0
- package/dist/application/agents/IAgentGateway.js.map +1 -0
- package/dist/application/context/decisions/get/IDecisionViewReader.d.ts +7 -0
- package/dist/application/context/decisions/get/IDecisionViewReader.d.ts.map +1 -1
- package/dist/application/context/decisions/search/DecisionSearchCriteria.d.ts +17 -0
- package/dist/application/context/decisions/search/DecisionSearchCriteria.d.ts.map +1 -0
- package/dist/application/context/decisions/search/DecisionSearchCriteria.js +12 -0
- package/dist/application/context/decisions/search/DecisionSearchCriteria.js.map +1 -0
- package/dist/application/context/decisions/search/ISearchDecisionsGateway.d.ts +10 -0
- package/dist/application/context/decisions/search/ISearchDecisionsGateway.d.ts.map +1 -0
- package/dist/application/context/decisions/search/ISearchDecisionsGateway.js +6 -0
- package/dist/application/context/decisions/search/ISearchDecisionsGateway.js.map +1 -0
- package/dist/application/context/decisions/search/LocalSearchDecisionsGateway.d.ts +14 -0
- package/dist/application/context/decisions/search/LocalSearchDecisionsGateway.d.ts.map +1 -0
- package/dist/application/context/decisions/search/LocalSearchDecisionsGateway.js +14 -0
- package/dist/application/context/decisions/search/LocalSearchDecisionsGateway.js.map +1 -0
- package/dist/application/context/decisions/search/SearchDecisionsController.d.ts +13 -0
- package/dist/application/context/decisions/search/SearchDecisionsController.d.ts.map +1 -0
- package/dist/application/context/decisions/search/SearchDecisionsController.js +13 -0
- package/dist/application/context/decisions/search/SearchDecisionsController.js.map +1 -0
- package/dist/application/context/decisions/search/SearchDecisionsRequest.d.ts +8 -0
- package/dist/application/context/decisions/search/SearchDecisionsRequest.d.ts.map +1 -0
- package/dist/application/context/decisions/search/SearchDecisionsRequest.js +5 -0
- package/dist/application/context/decisions/search/SearchDecisionsRequest.js.map +1 -0
- package/dist/application/context/decisions/search/SearchDecisionsResponse.d.ts +8 -0
- package/dist/application/context/decisions/search/SearchDecisionsResponse.d.ts.map +1 -0
- package/dist/application/context/decisions/search/SearchDecisionsResponse.js +5 -0
- package/dist/application/context/decisions/search/SearchDecisionsResponse.js.map +1 -0
- package/dist/application/context/dependencies/get/IDependencyViewReader.d.ts +7 -0
- package/dist/application/context/dependencies/get/IDependencyViewReader.d.ts.map +1 -1
- package/dist/application/context/dependencies/search/DependencySearchCriteria.d.ts +22 -0
- package/dist/application/context/dependencies/search/DependencySearchCriteria.d.ts.map +1 -0
- package/dist/application/context/dependencies/search/DependencySearchCriteria.js +12 -0
- package/dist/application/context/dependencies/search/DependencySearchCriteria.js.map +1 -0
- package/dist/application/context/dependencies/search/ISearchDependenciesGateway.d.ts +10 -0
- package/dist/application/context/dependencies/search/ISearchDependenciesGateway.d.ts.map +1 -0
- package/dist/application/context/dependencies/search/ISearchDependenciesGateway.js +6 -0
- package/dist/application/context/dependencies/search/ISearchDependenciesGateway.js.map +1 -0
- package/dist/application/context/dependencies/search/LocalSearchDependenciesGateway.d.ts +14 -0
- package/dist/application/context/dependencies/search/LocalSearchDependenciesGateway.d.ts.map +1 -0
- package/dist/application/context/dependencies/search/LocalSearchDependenciesGateway.js +14 -0
- package/dist/application/context/dependencies/search/LocalSearchDependenciesGateway.js.map +1 -0
- package/dist/application/context/dependencies/search/SearchDependenciesController.d.ts +13 -0
- package/dist/application/context/dependencies/search/SearchDependenciesController.d.ts.map +1 -0
- package/dist/application/context/dependencies/search/SearchDependenciesController.js +13 -0
- package/dist/application/context/dependencies/search/SearchDependenciesController.js.map +1 -0
- package/dist/application/context/dependencies/search/SearchDependenciesRequest.d.ts +8 -0
- package/dist/application/context/dependencies/search/SearchDependenciesRequest.d.ts.map +1 -0
- package/dist/application/context/dependencies/search/SearchDependenciesRequest.js +5 -0
- package/dist/application/context/dependencies/search/SearchDependenciesRequest.js.map +1 -0
- package/dist/application/context/dependencies/search/SearchDependenciesResponse.d.ts +8 -0
- package/dist/application/context/dependencies/search/SearchDependenciesResponse.d.ts.map +1 -0
- package/dist/application/context/dependencies/search/SearchDependenciesResponse.js +5 -0
- package/dist/application/context/dependencies/search/SearchDependenciesResponse.js.map +1 -0
- package/dist/application/context/goals/codify/CodifierProcessManager.d.ts +34 -0
- package/dist/application/context/goals/codify/CodifierProcessManager.d.ts.map +1 -0
- package/dist/application/context/goals/codify/CodifierProcessManager.js +171 -0
- package/dist/application/context/goals/codify/CodifierProcessManager.js.map +1 -0
- package/dist/application/context/goals/refine/RefinerProcessManager.d.ts +28 -0
- package/dist/application/context/goals/refine/RefinerProcessManager.d.ts.map +1 -0
- package/dist/application/context/goals/refine/RefinerProcessManager.js +147 -0
- package/dist/application/context/goals/refine/RefinerProcessManager.js.map +1 -0
- package/dist/application/context/goals/review/ReviewerProcessManager.d.ts +28 -0
- package/dist/application/context/goals/review/ReviewerProcessManager.d.ts.map +1 -0
- package/dist/application/context/goals/review/ReviewerProcessManager.js +161 -0
- package/dist/application/context/goals/review/ReviewerProcessManager.js.map +1 -0
- package/dist/application/context/guidelines/get/IGuidelineViewReader.d.ts +7 -0
- package/dist/application/context/guidelines/get/IGuidelineViewReader.d.ts.map +1 -1
- package/dist/application/context/guidelines/search/GuidelineSearchCriteria.d.ts +17 -0
- package/dist/application/context/guidelines/search/GuidelineSearchCriteria.d.ts.map +1 -0
- package/dist/application/context/guidelines/search/GuidelineSearchCriteria.js +12 -0
- package/dist/application/context/guidelines/search/GuidelineSearchCriteria.js.map +1 -0
- package/dist/application/context/guidelines/search/ISearchGuidelinesGateway.d.ts +10 -0
- package/dist/application/context/guidelines/search/ISearchGuidelinesGateway.d.ts.map +1 -0
- package/dist/application/context/guidelines/search/ISearchGuidelinesGateway.js +6 -0
- package/dist/application/context/guidelines/search/ISearchGuidelinesGateway.js.map +1 -0
- package/dist/application/context/guidelines/search/LocalSearchGuidelinesGateway.d.ts +14 -0
- package/dist/application/context/guidelines/search/LocalSearchGuidelinesGateway.d.ts.map +1 -0
- package/dist/application/context/guidelines/search/LocalSearchGuidelinesGateway.js +14 -0
- package/dist/application/context/guidelines/search/LocalSearchGuidelinesGateway.js.map +1 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesController.d.ts +13 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesController.d.ts.map +1 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesController.js +13 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesController.js.map +1 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesRequest.d.ts +8 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesRequest.d.ts.map +1 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesRequest.js +5 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesRequest.js.map +1 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesResponse.d.ts +8 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesResponse.d.ts.map +1 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesResponse.js +5 -0
- package/dist/application/context/guidelines/search/SearchGuidelinesResponse.js.map +1 -0
- package/dist/application/context/invariants/get/IInvariantViewReader.d.ts +7 -0
- package/dist/application/context/invariants/get/IInvariantViewReader.d.ts.map +1 -1
- package/dist/application/context/invariants/search/ISearchInvariantsGateway.d.ts +10 -0
- package/dist/application/context/invariants/search/ISearchInvariantsGateway.d.ts.map +1 -0
- package/dist/application/context/invariants/search/ISearchInvariantsGateway.js +6 -0
- package/dist/application/context/invariants/search/ISearchInvariantsGateway.js.map +1 -0
- package/dist/application/context/invariants/search/InvariantSearchCriteria.d.ts +14 -0
- package/dist/application/context/invariants/search/InvariantSearchCriteria.d.ts.map +1 -0
- package/dist/application/context/invariants/search/InvariantSearchCriteria.js +11 -0
- package/dist/application/context/invariants/search/InvariantSearchCriteria.js.map +1 -0
- package/dist/application/context/invariants/search/LocalSearchInvariantsGateway.d.ts +14 -0
- package/dist/application/context/invariants/search/LocalSearchInvariantsGateway.d.ts.map +1 -0
- package/dist/application/context/invariants/search/LocalSearchInvariantsGateway.js +14 -0
- package/dist/application/context/invariants/search/LocalSearchInvariantsGateway.js.map +1 -0
- package/dist/application/context/invariants/search/SearchInvariantsController.d.ts +13 -0
- package/dist/application/context/invariants/search/SearchInvariantsController.d.ts.map +1 -0
- package/dist/application/context/invariants/search/SearchInvariantsController.js +13 -0
- package/dist/application/context/invariants/search/SearchInvariantsController.js.map +1 -0
- package/dist/application/context/invariants/search/SearchInvariantsRequest.d.ts +8 -0
- package/dist/application/context/invariants/search/SearchInvariantsRequest.d.ts.map +1 -0
- package/dist/application/context/invariants/search/SearchInvariantsRequest.js +5 -0
- package/dist/application/context/invariants/search/SearchInvariantsRequest.js.map +1 -0
- package/dist/application/context/invariants/search/SearchInvariantsResponse.d.ts +8 -0
- package/dist/application/context/invariants/search/SearchInvariantsResponse.d.ts.map +1 -0
- package/dist/application/context/invariants/search/SearchInvariantsResponse.js +5 -0
- package/dist/application/context/invariants/search/SearchInvariantsResponse.js.map +1 -0
- package/dist/application/context/project/ProjectKnowledgeInventoryView.d.ts +12 -0
- package/dist/application/context/project/ProjectKnowledgeInventoryView.d.ts.map +1 -0
- package/dist/application/context/project/ProjectKnowledgeInventoryView.js +2 -0
- package/dist/application/context/project/ProjectKnowledgeInventoryView.js.map +1 -0
- package/dist/application/context/project/ProjectLifecycleState.d.ts +7 -0
- package/dist/application/context/project/ProjectLifecycleState.d.ts.map +1 -0
- package/dist/application/context/project/ProjectLifecycleState.js +2 -0
- package/dist/application/context/project/ProjectLifecycleState.js.map +1 -0
- package/dist/application/context/project/ProjectSummaryView.d.ts +2 -0
- package/dist/application/context/project/ProjectSummaryView.d.ts.map +1 -1
- package/dist/application/context/project/ProjectView.d.ts +2 -0
- package/dist/application/context/project/ProjectView.d.ts.map +1 -1
- package/dist/application/context/project/query/GetProjectSummaryQueryHandler.d.ts.map +1 -1
- package/dist/application/context/project/query/GetProjectSummaryQueryHandler.js +3 -0
- package/dist/application/context/project/query/GetProjectSummaryQueryHandler.js.map +1 -1
- package/dist/application/context/project/query/IProjectContextReader.d.ts +10 -0
- package/dist/application/context/project/query/IProjectContextReader.d.ts.map +1 -1
- package/dist/application/context/project/query/ProjectLifecycleClassifier.d.ts +9 -0
- package/dist/application/context/project/query/ProjectLifecycleClassifier.d.ts.map +1 -0
- package/dist/application/context/project/query/ProjectLifecycleClassifier.js +18 -0
- package/dist/application/context/project/query/ProjectLifecycleClassifier.js.map +1 -0
- package/dist/application/context/project/query/north-star/ProjectNorthStarView.d.ts +20 -0
- package/dist/application/context/project/query/north-star/ProjectNorthStarView.d.ts.map +1 -0
- package/dist/application/context/project/query/north-star/ProjectNorthStarView.js +2 -0
- package/dist/application/context/project/query/north-star/ProjectNorthStarView.js.map +1 -0
- package/dist/application/context/project/show/IShowProjectGateway.d.ts +6 -0
- package/dist/application/context/project/show/IShowProjectGateway.d.ts.map +1 -0
- package/dist/application/context/project/show/IShowProjectGateway.js +2 -0
- package/dist/application/context/project/show/IShowProjectGateway.js.map +1 -0
- package/dist/application/context/project/show/LocalShowProjectGateway.d.ts +16 -0
- package/dist/application/context/project/show/LocalShowProjectGateway.d.ts.map +1 -0
- package/dist/application/context/project/show/LocalShowProjectGateway.js +32 -0
- package/dist/application/context/project/show/LocalShowProjectGateway.js.map +1 -0
- package/dist/application/context/project/show/ShowProjectController.d.ts +9 -0
- package/dist/application/context/project/show/ShowProjectController.d.ts.map +1 -0
- package/dist/application/context/project/show/ShowProjectController.js +9 -0
- package/dist/application/context/project/show/ShowProjectController.js.map +1 -0
- package/dist/application/context/project/show/ShowProjectRequest.d.ts +4 -0
- package/dist/application/context/project/show/ShowProjectRequest.d.ts.map +1 -0
- package/dist/application/context/project/show/ShowProjectRequest.js +2 -0
- package/dist/application/context/project/show/ShowProjectRequest.js.map +1 -0
- package/dist/application/context/project/show/ShowProjectResponse.d.ts +7 -0
- package/dist/application/context/project/show/ShowProjectResponse.d.ts.map +1 -0
- package/dist/application/context/project/show/ShowProjectResponse.js +2 -0
- package/dist/application/context/project/show/ShowProjectResponse.js.map +1 -0
- package/dist/application/context/sessions/SessionInstructionSignal.d.ts +0 -1
- package/dist/application/context/sessions/SessionInstructionSignal.d.ts.map +1 -1
- package/dist/application/context/sessions/SessionInstructionSignal.js +0 -1
- package/dist/application/context/sessions/SessionInstructionSignal.js.map +1 -1
- package/dist/application/context/sessions/get/SessionContext.d.ts +3 -3
- package/dist/application/context/sessions/get/SessionContext.d.ts.map +1 -1
- package/dist/application/context/sessions/get/SessionContextQueryHandler.d.ts +2 -8
- package/dist/application/context/sessions/get/SessionContextQueryHandler.d.ts.map +1 -1
- package/dist/application/context/sessions/get/SessionContextQueryHandler.js +4 -13
- package/dist/application/context/sessions/get/SessionContextQueryHandler.js.map +1 -1
- package/dist/application/context/sessions/start/LocalStartSessionGateway.d.ts +2 -8
- package/dist/application/context/sessions/start/LocalStartSessionGateway.d.ts.map +1 -1
- package/dist/application/context/sessions/start/LocalStartSessionGateway.js +4 -47
- package/dist/application/context/sessions/start/LocalStartSessionGateway.js.map +1 -1
- package/dist/application/context/sessions/start/SessionStartResponse.d.ts +4 -4
- package/dist/application/context/sessions/start/SessionStartResponse.d.ts.map +1 -1
- package/dist/application/daemons/IProcessManager.d.ts +28 -0
- package/dist/application/daemons/IProcessManager.d.ts.map +1 -0
- package/dist/application/daemons/IProcessManager.js +2 -0
- package/dist/application/daemons/IProcessManager.js.map +1 -0
- package/dist/application/daemons/IShutdownSignal.d.ts +5 -0
- package/dist/application/daemons/IShutdownSignal.d.ts.map +1 -0
- package/dist/application/daemons/IShutdownSignal.js +2 -0
- package/dist/application/daemons/IShutdownSignal.js.map +1 -0
- package/dist/application/daemons/ITicker.d.ts +4 -0
- package/dist/application/daemons/ITicker.d.ts.map +1 -0
- package/dist/application/daemons/ITicker.js +2 -0
- package/dist/application/daemons/ITicker.js.map +1 -0
- package/dist/application/daemons/IWorkerDaemonProcessController.d.ts +30 -0
- package/dist/application/daemons/IWorkerDaemonProcessController.d.ts.map +1 -0
- package/dist/application/daemons/IWorkerDaemonProcessController.js +2 -0
- package/dist/application/daemons/IWorkerDaemonProcessController.js.map +1 -0
- package/dist/application/daemons/PollingLoop.d.ts +13 -0
- package/dist/application/daemons/PollingLoop.d.ts.map +1 -0
- package/dist/application/daemons/PollingLoop.js +15 -0
- package/dist/application/daemons/PollingLoop.js.map +1 -0
- package/dist/application/daemons/WorkerDaemonCatalog.d.ts +11 -0
- package/dist/application/daemons/WorkerDaemonCatalog.d.ts.map +1 -0
- package/dist/application/daemons/WorkerDaemonCatalog.js +12 -0
- package/dist/application/daemons/WorkerDaemonCatalog.js.map +1 -0
- package/dist/application/host/IApplicationContainer.d.ts +6 -0
- package/dist/application/host/IApplicationContainer.d.ts.map +1 -1
- package/dist/application/settings/Settings.d.ts +11 -0
- package/dist/application/settings/Settings.d.ts.map +1 -1
- package/dist/cli.js +68 -5
- package/dist/cli.js.map +1 -1
- package/dist/domain/project/JumboMdContent.js +1 -1
- package/dist/infrastructure/agents/AgentCliGateway.d.ts +15 -0
- package/dist/infrastructure/agents/AgentCliGateway.d.ts.map +1 -0
- package/dist/infrastructure/agents/AgentCliGateway.js +82 -0
- package/dist/infrastructure/agents/AgentCliGateway.js.map +1 -0
- package/dist/infrastructure/context/decisions/get/SqliteDecisionViewReader.d.ts +8 -0
- package/dist/infrastructure/context/decisions/get/SqliteDecisionViewReader.d.ts.map +1 -1
- package/dist/infrastructure/context/decisions/get/SqliteDecisionViewReader.js +45 -0
- package/dist/infrastructure/context/decisions/get/SqliteDecisionViewReader.js.map +1 -1
- package/dist/infrastructure/context/decisions/migrations/002-add-decision-search-indexes.sql +11 -0
- package/dist/infrastructure/context/dependencies/get/SqliteDependencyViewReader.d.ts +3 -0
- package/dist/infrastructure/context/dependencies/get/SqliteDependencyViewReader.d.ts.map +1 -1
- package/dist/infrastructure/context/dependencies/get/SqliteDependencyViewReader.js +57 -0
- package/dist/infrastructure/context/dependencies/get/SqliteDependencyViewReader.js.map +1 -1
- package/dist/infrastructure/context/dependencies/migrations/003-add-dependency-search-indexes.sql +12 -0
- package/dist/infrastructure/context/guidelines/get/SqliteGuidelineViewReader.d.ts +8 -0
- package/dist/infrastructure/context/guidelines/get/SqliteGuidelineViewReader.d.ts.map +1 -1
- package/dist/infrastructure/context/guidelines/get/SqliteGuidelineViewReader.js +31 -0
- package/dist/infrastructure/context/guidelines/get/SqliteGuidelineViewReader.js.map +1 -1
- package/dist/infrastructure/context/guidelines/migrations/003-add-guideline-search-indexes.sql +17 -0
- package/dist/infrastructure/context/invariants/get/SqliteInvariantViewReader.d.ts +8 -0
- package/dist/infrastructure/context/invariants/get/SqliteInvariantViewReader.d.ts.map +1 -1
- package/dist/infrastructure/context/invariants/get/SqliteInvariantViewReader.js +31 -0
- package/dist/infrastructure/context/invariants/get/SqliteInvariantViewReader.js.map +1 -1
- package/dist/infrastructure/context/invariants/migrations/003-add-invariant-search-indexes.sql +6 -0
- package/dist/infrastructure/context/project/query/SqliteProjectContextReader.d.ts +5 -0
- package/dist/infrastructure/context/project/query/SqliteProjectContextReader.d.ts.map +1 -1
- package/dist/infrastructure/context/project/query/SqliteProjectContextReader.js +34 -2
- package/dist/infrastructure/context/project/query/SqliteProjectContextReader.js.map +1 -1
- package/dist/infrastructure/daemons/IntervalTicker.d.ts +7 -0
- package/dist/infrastructure/daemons/IntervalTicker.d.ts.map +1 -0
- package/dist/infrastructure/daemons/IntervalTicker.js +11 -0
- package/dist/infrastructure/daemons/IntervalTicker.js.map +1 -0
- package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.d.ts +12 -0
- package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.d.ts.map +1 -0
- package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.js +56 -0
- package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.js.map +1 -0
- package/dist/infrastructure/daemons/ProcessSignalSource.d.ts +10 -0
- package/dist/infrastructure/daemons/ProcessSignalSource.d.ts.map +1 -0
- package/dist/infrastructure/daemons/ProcessSignalSource.js +24 -0
- package/dist/infrastructure/daemons/ProcessSignalSource.js.map +1 -0
- package/dist/infrastructure/host/HostBuilder.d.ts.map +1 -1
- package/dist/infrastructure/host/HostBuilder.js +17 -2
- package/dist/infrastructure/host/HostBuilder.js.map +1 -1
- package/dist/infrastructure/logging/FileLogger.js +1 -1
- package/dist/infrastructure/settings/DefaultSettings.d.ts.map +1 -1
- package/dist/infrastructure/settings/DefaultSettings.js +3 -0
- package/dist/infrastructure/settings/DefaultSettings.js.map +1 -1
- package/dist/infrastructure/settings/FsSettingsInitializer.d.ts.map +1 -1
- package/dist/infrastructure/settings/FsSettingsInitializer.js +6 -0
- package/dist/infrastructure/settings/FsSettingsInitializer.js.map +1 -1
- package/dist/infrastructure/settings/FsSettingsReader.d.ts.map +1 -1
- package/dist/infrastructure/settings/FsSettingsReader.js +10 -0
- package/dist/infrastructure/settings/FsSettingsReader.js.map +1 -1
- package/dist/presentation/cli/AppRunner.d.ts +7 -1
- package/dist/presentation/cli/AppRunner.d.ts.map +1 -1
- package/dist/presentation/cli/AppRunner.js +10 -5
- package/dist/presentation/cli/AppRunner.js.map +1 -1
- package/dist/presentation/cli/CliBootstrapPlan.d.ts +12 -0
- package/dist/presentation/cli/CliBootstrapPlan.d.ts.map +1 -0
- package/dist/presentation/cli/CliBootstrapPlan.js +23 -0
- package/dist/presentation/cli/CliBootstrapPlan.js.map +1 -0
- package/dist/presentation/cli/banner/AnimationFrames.d.ts +6 -1
- package/dist/presentation/cli/banner/AnimationFrames.d.ts.map +1 -1
- package/dist/presentation/cli/banner/AnimationFrames.js +307 -288
- package/dist/presentation/cli/banner/AnimationFrames.js.map +1 -1
- package/dist/presentation/cli/commands/decisions/search/DecisionSearchOutputBuilder.d.ts +17 -0
- package/dist/presentation/cli/commands/decisions/search/DecisionSearchOutputBuilder.d.ts.map +1 -0
- package/dist/presentation/cli/commands/decisions/search/DecisionSearchOutputBuilder.js +90 -0
- package/dist/presentation/cli/commands/decisions/search/DecisionSearchOutputBuilder.js.map +1 -0
- package/dist/presentation/cli/commands/decisions/search/decisions.search.d.ts +22 -0
- package/dist/presentation/cli/commands/decisions/search/decisions.search.d.ts.map +1 -0
- package/dist/presentation/cli/commands/decisions/search/decisions.search.js +93 -0
- package/dist/presentation/cli/commands/decisions/search/decisions.search.js.map +1 -0
- package/dist/presentation/cli/commands/dependencies/search/DependencySearchOutputBuilder.d.ts +16 -0
- package/dist/presentation/cli/commands/dependencies/search/DependencySearchOutputBuilder.d.ts.map +1 -0
- package/dist/presentation/cli/commands/dependencies/search/DependencySearchOutputBuilder.js +85 -0
- package/dist/presentation/cli/commands/dependencies/search/DependencySearchOutputBuilder.js.map +1 -0
- package/dist/presentation/cli/commands/dependencies/search/dependencies.search.d.ts +21 -0
- package/dist/presentation/cli/commands/dependencies/search/dependencies.search.d.ts.map +1 -0
- package/dist/presentation/cli/commands/dependencies/search/dependencies.search.js +111 -0
- package/dist/presentation/cli/commands/dependencies/search/dependencies.search.js.map +1 -0
- package/dist/presentation/cli/commands/guidelines/search/GuidelineSearchOutputBuilder.d.ts +22 -0
- package/dist/presentation/cli/commands/guidelines/search/GuidelineSearchOutputBuilder.d.ts.map +1 -0
- package/dist/presentation/cli/commands/guidelines/search/GuidelineSearchOutputBuilder.js +86 -0
- package/dist/presentation/cli/commands/guidelines/search/GuidelineSearchOutputBuilder.js.map +1 -0
- package/dist/presentation/cli/commands/guidelines/search/guidelines.search.d.ts +21 -0
- package/dist/presentation/cli/commands/guidelines/search/guidelines.search.d.ts.map +1 -0
- package/dist/presentation/cli/commands/guidelines/search/guidelines.search.js +92 -0
- package/dist/presentation/cli/commands/guidelines/search/guidelines.search.js.map +1 -0
- package/dist/presentation/cli/commands/invariants/search/InvariantSearchOutputBuilder.d.ts +22 -0
- package/dist/presentation/cli/commands/invariants/search/InvariantSearchOutputBuilder.d.ts.map +1 -0
- package/dist/presentation/cli/commands/invariants/search/InvariantSearchOutputBuilder.js +79 -0
- package/dist/presentation/cli/commands/invariants/search/InvariantSearchOutputBuilder.js.map +1 -0
- package/dist/presentation/cli/commands/invariants/search/invariants.search.d.ts +20 -0
- package/dist/presentation/cli/commands/invariants/search/invariants.search.d.ts.map +1 -0
- package/dist/presentation/cli/commands/invariants/search/invariants.search.js +80 -0
- package/dist/presentation/cli/commands/invariants/search/invariants.search.js.map +1 -0
- package/dist/presentation/cli/commands/project/show/ProjectShowOutputBuilder.d.ts +14 -0
- package/dist/presentation/cli/commands/project/show/ProjectShowOutputBuilder.d.ts.map +1 -0
- package/dist/presentation/cli/commands/project/show/ProjectShowOutputBuilder.js +84 -0
- package/dist/presentation/cli/commands/project/show/ProjectShowOutputBuilder.js.map +1 -0
- package/dist/presentation/cli/commands/project/show/project.show.d.ts +12 -0
- package/dist/presentation/cli/commands/project/show/project.show.d.ts.map +1 -0
- package/dist/presentation/cli/commands/project/show/project.show.js +59 -0
- package/dist/presentation/cli/commands/project/show/project.show.js.map +1 -0
- package/dist/presentation/cli/commands/registry/generated-commands.d.ts.map +1 -1
- package/dist/presentation/cli/commands/registry/generated-commands.js +30 -0
- package/dist/presentation/cli/commands/registry/generated-commands.js.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/SessionContextOutputBuilder.d.ts +0 -1
- package/dist/presentation/cli/commands/sessions/start/SessionContextOutputBuilder.d.ts.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/SessionContextOutputBuilder.js +2 -43
- package/dist/presentation/cli/commands/sessions/start/SessionContextOutputBuilder.js.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/SessionStartOutputBuilder.d.ts +8 -9
- package/dist/presentation/cli/commands/sessions/start/SessionStartOutputBuilder.d.ts.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/SessionStartOutputBuilder.js +107 -42
- package/dist/presentation/cli/commands/sessions/start/SessionStartOutputBuilder.js.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/SessionStartTextRenderer.d.ts +3 -2
- package/dist/presentation/cli/commands/sessions/start/SessionStartTextRenderer.d.ts.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/SessionStartTextRenderer.js +24 -10
- package/dist/presentation/cli/commands/sessions/start/SessionStartTextRenderer.js.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/session.start.d.ts.map +1 -1
- package/dist/presentation/cli/commands/sessions/start/session.start.js +2 -5
- package/dist/presentation/cli/commands/sessions/start/session.start.js.map +1 -1
- package/dist/presentation/cli/commands/work/shared/AgentSpawner.d.ts +7 -4
- package/dist/presentation/cli/commands/work/shared/AgentSpawner.d.ts.map +1 -1
- package/dist/presentation/cli/commands/work/shared/AgentSpawner.js +11 -4
- package/dist/presentation/cli/commands/work/shared/AgentSpawner.js.map +1 -1
- package/dist/presentation/shared/DesignTokens.d.ts +94 -0
- package/dist/presentation/shared/DesignTokens.d.ts.map +1 -0
- package/dist/presentation/shared/DesignTokens.js +94 -0
- package/dist/presentation/shared/DesignTokens.js.map +1 -0
- package/dist/presentation/tui/action-dispatch/TuiActionDispatcher.d.ts +12 -0
- package/dist/presentation/tui/action-dispatch/TuiActionDispatcher.d.ts.map +1 -0
- package/dist/presentation/tui/action-dispatch/TuiActionDispatcher.js +21 -0
- package/dist/presentation/tui/action-dispatch/TuiActionDispatcher.js.map +1 -0
- package/dist/presentation/tui/application-shell/Footer.d.ts +16 -0
- package/dist/presentation/tui/application-shell/Footer.d.ts.map +1 -0
- package/dist/presentation/tui/application-shell/Footer.js +37 -0
- package/dist/presentation/tui/application-shell/Footer.js.map +1 -0
- package/dist/presentation/tui/application-shell/Header.d.ts +10 -0
- package/dist/presentation/tui/application-shell/Header.d.ts.map +1 -0
- package/dist/presentation/tui/application-shell/Header.js +44 -0
- package/dist/presentation/tui/application-shell/Header.js.map +1 -0
- package/dist/presentation/tui/application-shell/NotificationDrawer.d.ts +16 -0
- package/dist/presentation/tui/application-shell/NotificationDrawer.d.ts.map +1 -0
- package/dist/presentation/tui/application-shell/NotificationDrawer.js +56 -0
- package/dist/presentation/tui/application-shell/NotificationDrawer.js.map +1 -0
- package/dist/presentation/tui/application-shell/TuiApp.d.ts +25 -0
- package/dist/presentation/tui/application-shell/TuiApp.d.ts.map +1 -0
- package/dist/presentation/tui/application-shell/TuiApp.js +230 -0
- package/dist/presentation/tui/application-shell/TuiApp.js.map +1 -0
- package/dist/presentation/tui/application-shell/TuiApplicationLauncher.d.ts +19 -0
- package/dist/presentation/tui/application-shell/TuiApplicationLauncher.d.ts.map +1 -0
- package/dist/presentation/tui/application-shell/TuiApplicationLauncher.js +46 -0
- package/dist/presentation/tui/application-shell/TuiApplicationLauncher.js.map +1 -0
- package/dist/presentation/tui/billboard/AnimatedBillboard.d.ts +11 -0
- package/dist/presentation/tui/billboard/AnimatedBillboard.d.ts.map +1 -0
- package/dist/presentation/tui/billboard/AnimatedBillboard.js +406 -0
- package/dist/presentation/tui/billboard/AnimatedBillboard.js.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBanner.d.ts +13 -0
- package/dist/presentation/tui/cockpit/AnimatedBanner.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/AnimatedBanner.js +193 -0
- package/dist/presentation/tui/cockpit/AnimatedBanner.js.map +1 -0
- package/dist/presentation/tui/cockpit/CenteredPrompt.d.ts +10 -0
- package/dist/presentation/tui/cockpit/CenteredPrompt.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CenteredPrompt.js +14 -0
- package/dist/presentation/tui/cockpit/CenteredPrompt.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.d.ts +8 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.js +33 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonConfiguration.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.d.ts +14 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.js +146 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonEvents.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.d.ts +39 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.js +183 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonFrames.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.d.ts +27 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.js +108 -0
- package/dist/presentation/tui/cockpit/CockpitDaemonPanel.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitGreeterView.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitGreeterView.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitGreeterView.js +17 -0
- package/dist/presentation/tui/cockpit/CockpitGreeterView.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.d.ts +25 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.js +217 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadView.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadWelcome.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadWelcome.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadWelcome.js +16 -0
- package/dist/presentation/tui/cockpit/CockpitLaunchpadWelcome.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitPrimedEmptyView.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitPrimedEmptyView.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitPrimedEmptyView.js +22 -0
- package/dist/presentation/tui/cockpit/CockpitPrimedEmptyView.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreen.d.ts +20 -0
- package/dist/presentation/tui/cockpit/CockpitScreen.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitScreen.js +55 -0
- package/dist/presentation/tui/cockpit/CockpitScreen.js.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitUnprimedView.d.ts +3 -0
- package/dist/presentation/tui/cockpit/CockpitUnprimedView.d.ts.map +1 -0
- package/dist/presentation/tui/cockpit/CockpitUnprimedView.js +27 -0
- package/dist/presentation/tui/cockpit/CockpitUnprimedView.js.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/ISubprocessManager.d.ts +42 -0
- package/dist/presentation/tui/daemon-subprocesses/ISubprocessManager.d.ts.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/ISubprocessManager.js +2 -0
- package/dist/presentation/tui/daemon-subprocesses/ISubprocessManager.js.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/NoOpSubprocessManager.d.ts +11 -0
- package/dist/presentation/tui/daemon-subprocesses/NoOpSubprocessManager.d.ts.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/NoOpSubprocessManager.js +30 -0
- package/dist/presentation/tui/daemon-subprocesses/NoOpSubprocessManager.js.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/SubprocessManagerContext.d.ts +8 -0
- package/dist/presentation/tui/daemon-subprocesses/SubprocessManagerContext.d.ts.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/SubprocessManagerContext.js +10 -0
- package/dist/presentation/tui/daemon-subprocesses/SubprocessManagerContext.js.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/TuiSubprocessManager.d.ts +22 -0
- package/dist/presentation/tui/daemon-subprocesses/TuiSubprocessManager.d.ts.map +1 -0
- package/dist/presentation/tui/daemon-subprocesses/TuiSubprocessManager.js +257 -0
- package/dist/presentation/tui/daemon-subprocesses/TuiSubprocessManager.js.map +1 -0
- package/dist/presentation/tui/goals/GoalAuthoringFlow.d.ts +22 -0
- package/dist/presentation/tui/goals/GoalAuthoringFlow.d.ts.map +1 -0
- package/dist/presentation/tui/goals/GoalAuthoringFlow.js +227 -0
- package/dist/presentation/tui/goals/GoalAuthoringFlow.js.map +1 -0
- package/dist/presentation/tui/goals/GoalsScreen.d.ts +3 -0
- package/dist/presentation/tui/goals/GoalsScreen.d.ts.map +1 -0
- package/dist/presentation/tui/goals/GoalsScreen.js +159 -0
- package/dist/presentation/tui/goals/GoalsScreen.js.map +1 -0
- package/dist/presentation/tui/index.d.ts +8 -0
- package/dist/presentation/tui/index.d.ts.map +1 -0
- package/dist/presentation/tui/index.js +5 -0
- package/dist/presentation/tui/index.js.map +1 -0
- package/dist/presentation/tui/memory/MemoryScreen.d.ts +3 -0
- package/dist/presentation/tui/memory/MemoryScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/MemoryScreen.js +13 -0
- package/dist/presentation/tui/memory/MemoryScreen.js.map +1 -0
- package/dist/presentation/tui/memory/components/ComponentAddFlow.d.ts +14 -0
- package/dist/presentation/tui/memory/components/ComponentAddFlow.d.ts.map +1 -0
- package/dist/presentation/tui/memory/components/ComponentAddFlow.js +46 -0
- package/dist/presentation/tui/memory/components/ComponentAddFlow.js.map +1 -0
- package/dist/presentation/tui/memory/components/ComponentsScreen.d.ts +3 -0
- package/dist/presentation/tui/memory/components/ComponentsScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/components/ComponentsScreen.js +17 -0
- package/dist/presentation/tui/memory/components/ComponentsScreen.js.map +1 -0
- package/dist/presentation/tui/memory/decisions/DecisionAddFlow.d.ts +15 -0
- package/dist/presentation/tui/memory/decisions/DecisionAddFlow.d.ts.map +1 -0
- package/dist/presentation/tui/memory/decisions/DecisionAddFlow.js +63 -0
- package/dist/presentation/tui/memory/decisions/DecisionAddFlow.js.map +1 -0
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.d.ts +3 -0
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.js +18 -0
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.js.map +1 -0
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.d.ts +3 -0
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.js +19 -0
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.js.map +1 -0
- package/dist/presentation/tui/memory/dependencies/DependencyAddFlow.d.ts +16 -0
- package/dist/presentation/tui/memory/dependencies/DependencyAddFlow.d.ts.map +1 -0
- package/dist/presentation/tui/memory/dependencies/DependencyAddFlow.js +56 -0
- package/dist/presentation/tui/memory/dependencies/DependencyAddFlow.js.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/EntityColumn.d.ts +14 -0
- package/dist/presentation/tui/memory/entity-browser/EntityColumn.d.ts.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/EntityColumn.js +21 -0
- package/dist/presentation/tui/memory/entity-browser/EntityColumn.js.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.d.ts +10 -0
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.d.ts.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.js +85 -0
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.js.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.d.ts +13 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.js +80 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.js.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityShapes.d.ts +41 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityShapes.d.ts.map +1 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityShapes.js +2 -0
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityShapes.js.map +1 -0
- package/dist/presentation/tui/memory/guidelines/GuidelineAddFlow.d.ts +15 -0
- package/dist/presentation/tui/memory/guidelines/GuidelineAddFlow.d.ts.map +1 -0
- package/dist/presentation/tui/memory/guidelines/GuidelineAddFlow.js +57 -0
- package/dist/presentation/tui/memory/guidelines/GuidelineAddFlow.js.map +1 -0
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.d.ts +3 -0
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.js +18 -0
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.js.map +1 -0
- package/dist/presentation/tui/memory/invariants/InvariantAddFlow.d.ts +13 -0
- package/dist/presentation/tui/memory/invariants/InvariantAddFlow.d.ts.map +1 -0
- package/dist/presentation/tui/memory/invariants/InvariantAddFlow.js +41 -0
- package/dist/presentation/tui/memory/invariants/InvariantAddFlow.js.map +1 -0
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.d.ts +3 -0
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.d.ts.map +1 -0
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.js +16 -0
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.js.map +1 -0
- package/dist/presentation/tui/navigation/MegaMenu.d.ts +10 -0
- package/dist/presentation/tui/navigation/MegaMenu.d.ts.map +1 -0
- package/dist/presentation/tui/navigation/MegaMenu.js +164 -0
- package/dist/presentation/tui/navigation/MegaMenu.js.map +1 -0
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.d.ts +17 -0
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.d.ts.map +1 -0
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.js +162 -0
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.js.map +1 -0
- package/dist/presentation/tui/navigation/ScreenDefinitions.d.ts +36 -0
- package/dist/presentation/tui/navigation/ScreenDefinitions.d.ts.map +1 -0
- package/dist/presentation/tui/navigation/ScreenDefinitions.js +12 -0
- package/dist/presentation/tui/navigation/ScreenDefinitions.js.map +1 -0
- package/dist/presentation/tui/navigation/ScreenRouter.d.ts +19 -0
- package/dist/presentation/tui/navigation/ScreenRouter.d.ts.map +1 -0
- package/dist/presentation/tui/navigation/ScreenRouter.js +31 -0
- package/dist/presentation/tui/navigation/ScreenRouter.js.map +1 -0
- package/dist/presentation/tui/project-initialization/InitFlow.d.ts +24 -0
- package/dist/presentation/tui/project-initialization/InitFlow.d.ts.map +1 -0
- package/dist/presentation/tui/project-initialization/InitFlow.js +629 -0
- package/dist/presentation/tui/project-initialization/InitFlow.js.map +1 -0
- package/dist/presentation/tui/sessions/SessionScreen.d.ts +3 -0
- package/dist/presentation/tui/sessions/SessionScreen.d.ts.map +1 -0
- package/dist/presentation/tui/sessions/SessionScreen.js +38 -0
- package/dist/presentation/tui/sessions/SessionScreen.js.map +1 -0
- package/dist/presentation/tui/state-reading/TuiStateReader.d.ts +58 -0
- package/dist/presentation/tui/state-reading/TuiStateReader.d.ts.map +1 -0
- package/dist/presentation/tui/state-reading/TuiStateReader.js +150 -0
- package/dist/presentation/tui/state-reading/TuiStateReader.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/DetailPane.d.ts +15 -0
- package/dist/presentation/tui/ui-primitives/DetailPane.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/DetailPane.js +12 -0
- package/dist/presentation/tui/ui-primitives/DetailPane.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/KeyBadge.d.ts +11 -0
- package/dist/presentation/tui/ui-primitives/KeyBadge.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/KeyBadge.js +9 -0
- package/dist/presentation/tui/ui-primitives/KeyBadge.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/ListPanel.d.ts +16 -0
- package/dist/presentation/tui/ui-primitives/ListPanel.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/ListPanel.js +15 -0
- package/dist/presentation/tui/ui-primitives/ListPanel.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/Panel.d.ts +15 -0
- package/dist/presentation/tui/ui-primitives/Panel.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/Panel.js +9 -0
- package/dist/presentation/tui/ui-primitives/Panel.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/SectionHeading.d.ts +8 -0
- package/dist/presentation/tui/ui-primitives/SectionHeading.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/SectionHeading.js +9 -0
- package/dist/presentation/tui/ui-primitives/SectionHeading.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/StatusIndicator.d.ts +9 -0
- package/dist/presentation/tui/ui-primitives/StatusIndicator.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/StatusIndicator.js +21 -0
- package/dist/presentation/tui/ui-primitives/StatusIndicator.js.map +1 -0
- package/dist/presentation/tui/ui-primitives/Tumbler.d.ts +18 -0
- package/dist/presentation/tui/ui-primitives/Tumbler.d.ts.map +1 -0
- package/dist/presentation/tui/ui-primitives/Tumbler.js +101 -0
- package/dist/presentation/tui/ui-primitives/Tumbler.js.map +1 -0
- package/dist/presentation/tui/wizard/Wizard.d.ts +53 -0
- package/dist/presentation/tui/wizard/Wizard.d.ts.map +1 -0
- package/dist/presentation/tui/wizard/Wizard.js +385 -0
- package/dist/presentation/tui/wizard/Wizard.js.map +1 -0
- package/dist/presentation/tui/wizard/WizardTextInput.d.ts +12 -0
- package/dist/presentation/tui/wizard/WizardTextInput.d.ts.map +1 -0
- package/dist/presentation/tui/wizard/WizardTextInput.js +39 -0
- package/dist/presentation/tui/wizard/WizardTextInput.js.map +1 -0
- package/dist/presentation/work/codifier.daemon.d.ts +3 -0
- package/dist/presentation/work/codifier.daemon.d.ts.map +1 -0
- package/dist/presentation/work/codifier.daemon.js +75 -0
- package/dist/presentation/work/codifier.daemon.js.map +1 -0
- package/dist/presentation/work/refiner.daemon.d.ts +3 -0
- package/dist/presentation/work/refiner.daemon.d.ts.map +1 -0
- package/dist/presentation/work/refiner.daemon.js +60 -0
- package/dist/presentation/work/refiner.daemon.js.map +1 -0
- package/dist/presentation/work/reviewer.daemon.d.ts +3 -0
- package/dist/presentation/work/reviewer.daemon.d.ts.map +1 -0
- package/dist/presentation/work/reviewer.daemon.js +60 -0
- package/dist/presentation/work/reviewer.daemon.js.map +1 -0
- package/package.json +5 -1
- package/dist/application/context/project/get/ContextualProjectView.d.ts +0 -24
- package/dist/application/context/project/get/ContextualProjectView.d.ts.map +0 -1
- package/dist/application/context/project/get/ContextualProjectView.js +0 -2
- package/dist/application/context/project/get/ContextualProjectView.js.map +0 -1
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
import React, { useEffect, useMemo, useRef, useState } from "react";
|
|
2
|
+
import { Box, Text } from "ink";
|
|
3
|
+
import Yoga from "yoga-layout";
|
|
4
|
+
const TARGET_STICKERS = 39;
|
|
5
|
+
const STICKERS_PER_FRAME = 6;
|
|
6
|
+
const FRAME_MS = 0;
|
|
7
|
+
const FULL_BLOCK_COLOR = "#000000";
|
|
8
|
+
const JUMBO_COLOR = "#ffffff";
|
|
9
|
+
const CANDIDATES_PER_STICKER = 40;
|
|
10
|
+
const FINAL_PAUSE_MS = 650;
|
|
11
|
+
const ERASE_FRAME_MS = 0;
|
|
12
|
+
const ERASE_ROWS_PER_FRAME = 3;
|
|
13
|
+
const GLYPH = [
|
|
14
|
+
" ▓▒▒▒▒▒▒▒▒▒▓ ",
|
|
15
|
+
" ▓▒▒▒▒▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▒▒▒▒▓ ",
|
|
16
|
+
"▓▒▒▒▒▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▒▒▒▒▓",
|
|
17
|
+
"▓▒▒▒▓▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▓▒▒▒▓",
|
|
18
|
+
"▓▒▒▒▓▓▒▒▒█▒▒▒▒▒▒▒▒█▒▒▒▓▓▒▒▒▓",
|
|
19
|
+
" ▓▒▒▓▓▒▒▒▒▒▒▒▒▒▒▒▒▒▒▓▓▒▒▓ ",
|
|
20
|
+
" ▓▓▒▒▓▓▒▓▒▒▒▒▒▒▓▒▓▓▒▒▓▓ ",
|
|
21
|
+
" ▓▒▒▒▒▒▒▓▓▒▒▒▒▓▓▒▒▒▒▒▒▓ ",
|
|
22
|
+
" ▓▒▒▒▒▒▒▒▒▓▒▒▒▒▓▓▓▒▒▒▒▒▒▓ ",
|
|
23
|
+
" ▓▒▒▒▒▒▒▒▒▒▓▓▒▒▒▒▒▓▒▒▒▒▒▓ ",
|
|
24
|
+
" ▓▒▒▒▒▒▒▒▒▒▒▒▓▓▓▓▓▒▒▒▒▒▒▓ ",
|
|
25
|
+
" ▓▒▒▒▒▒▒▒▓ ▓▒▒▒▒▒▒▒▓ ",
|
|
26
|
+
" ▓▒▒▒▒▒▓ ▓▒▒▒▒▒▓ ",
|
|
27
|
+
" ",
|
|
28
|
+
];
|
|
29
|
+
const JUMBO = [
|
|
30
|
+
" ███ ███ ███ ████ ████ ████████ █████████ ",
|
|
31
|
+
" ███░███░ ███░█████ █████░███░░░███ ███░░░░░███ ",
|
|
32
|
+
" ███░███░ ███░███░██ ██░███░████████░░███░ ███░",
|
|
33
|
+
"███ ███░███░ ███░███░ ████░░███░███░░░███ ███░ ███░",
|
|
34
|
+
" ██████░░ ████████░░███░ ██░░ ███░████████░░ █████████░░",
|
|
35
|
+
" ░░░░░░ ░░░░░░░░ ░░░ ░░ ░░░ ░░░░░░░░ ░░░░░░░░░ ",
|
|
36
|
+
" Agent Context Orchestration",
|
|
37
|
+
];
|
|
38
|
+
const BASE_COLORS = {
|
|
39
|
+
Blue: "#66b4f4",
|
|
40
|
+
BlueBorder: "#236ca8",
|
|
41
|
+
Purple: "#aa00d4",
|
|
42
|
+
PurpleBorder: "#6d0089",
|
|
43
|
+
Red: "#ff2a2a",
|
|
44
|
+
RedBorder: "#b11226",
|
|
45
|
+
Orange: "#ff8307",
|
|
46
|
+
OrangeBorder: "#b65300",
|
|
47
|
+
Yellow: "#ffcc00",
|
|
48
|
+
YellowBorder: "#a67c00",
|
|
49
|
+
Green: "#44aa00",
|
|
50
|
+
GreenBorder: "#2a6f00",
|
|
51
|
+
Magenta: "#ff00aa",
|
|
52
|
+
MagentaBorder: "#a80071",
|
|
53
|
+
};
|
|
54
|
+
const COLOR_PAIRS = [
|
|
55
|
+
{
|
|
56
|
+
name: "Blue",
|
|
57
|
+
fill: BASE_COLORS.Blue,
|
|
58
|
+
border: BASE_COLORS.BlueBorder,
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
name: "Purple",
|
|
62
|
+
fill: BASE_COLORS.Purple,
|
|
63
|
+
border: BASE_COLORS.PurpleBorder,
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: "Red",
|
|
67
|
+
fill: BASE_COLORS.Red,
|
|
68
|
+
border: BASE_COLORS.RedBorder,
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
name: "Orange",
|
|
72
|
+
fill: BASE_COLORS.Orange,
|
|
73
|
+
border: BASE_COLORS.OrangeBorder,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name: "Yellow",
|
|
77
|
+
fill: BASE_COLORS.Yellow,
|
|
78
|
+
border: BASE_COLORS.YellowBorder,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: "Green",
|
|
82
|
+
fill: BASE_COLORS.Green,
|
|
83
|
+
border: BASE_COLORS.GreenBorder,
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
name: "Magenta",
|
|
87
|
+
fill: BASE_COLORS.Magenta,
|
|
88
|
+
border: BASE_COLORS.MagentaBorder,
|
|
89
|
+
},
|
|
90
|
+
];
|
|
91
|
+
const GLYPH_HEIGHT = GLYPH.length;
|
|
92
|
+
const GLYPH_WIDTH = Math.max(...GLYPH.map((line) => line.length));
|
|
93
|
+
const GLYPH_PIXELS = GLYPH.flatMap((line, y) => Array.from(line).flatMap((char, x) => char === " " ? [] : [{ x, y }]));
|
|
94
|
+
const JUMBO_HEIGHT = JUMBO.length;
|
|
95
|
+
const JUMBO_WIDTH = Math.max(...JUMBO.map((line) => Array.from(line).length));
|
|
96
|
+
function randomIntBetween(minInclusive, maxInclusive) {
|
|
97
|
+
return (minInclusive + Math.floor(Math.random() * (maxInclusive - minInclusive + 1)));
|
|
98
|
+
}
|
|
99
|
+
function getStageSize(size) {
|
|
100
|
+
const root = Yoga.Node.create();
|
|
101
|
+
root.setWidth(Math.max(1, size.columns));
|
|
102
|
+
root.setHeight(Math.max(1, size.rows));
|
|
103
|
+
root.calculateLayout(undefined, undefined, Yoga.DIRECTION_LTR);
|
|
104
|
+
const stage = {
|
|
105
|
+
columns: root.getComputedWidth(),
|
|
106
|
+
rows: root.getComputedHeight(),
|
|
107
|
+
};
|
|
108
|
+
root.free();
|
|
109
|
+
return stage;
|
|
110
|
+
}
|
|
111
|
+
function getPlacementBounds(stage) {
|
|
112
|
+
return {
|
|
113
|
+
minX: 1 - GLYPH_WIDTH,
|
|
114
|
+
maxX: stage.columns - 1,
|
|
115
|
+
minY: 1 - GLYPH_HEIGHT,
|
|
116
|
+
maxY: stage.rows - 1,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
function getBalancedColorPair(stickers) {
|
|
120
|
+
const counts = new Map(COLOR_PAIRS.map((pair) => [pair.name, 0]));
|
|
121
|
+
for (const sticker of stickers) {
|
|
122
|
+
counts.set(sticker.pair.name, (counts.get(sticker.pair.name) ?? 0) + 1);
|
|
123
|
+
}
|
|
124
|
+
const lowestCount = Math.min(...COLOR_PAIRS.map((pair) => counts.get(pair.name) ?? 0));
|
|
125
|
+
const leastUsedPairs = COLOR_PAIRS.filter((pair) => counts.get(pair.name) === lowestCount);
|
|
126
|
+
return leastUsedPairs[randomIntBetween(0, leastUsedPairs.length - 1)];
|
|
127
|
+
}
|
|
128
|
+
function createRandomSticker(id, stage, pair) {
|
|
129
|
+
const bounds = getPlacementBounds(stage);
|
|
130
|
+
return {
|
|
131
|
+
id,
|
|
132
|
+
x: randomIntBetween(bounds.minX, bounds.maxX),
|
|
133
|
+
y: randomIntBetween(bounds.minY, bounds.maxY),
|
|
134
|
+
pair,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
function createTargetedSticker(id, target, pair) {
|
|
138
|
+
const glyphPixel = GLYPH_PIXELS[randomIntBetween(0, GLYPH_PIXELS.length - 1)];
|
|
139
|
+
return {
|
|
140
|
+
id,
|
|
141
|
+
x: target.x - glyphPixel.x,
|
|
142
|
+
y: target.y - glyphPixel.y,
|
|
143
|
+
pair,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
function getGlyphCellColor(char, pair) {
|
|
147
|
+
if (char === "█") {
|
|
148
|
+
return FULL_BLOCK_COLOR;
|
|
149
|
+
}
|
|
150
|
+
if (char === "▓") {
|
|
151
|
+
return pair.border;
|
|
152
|
+
}
|
|
153
|
+
if (char === "▒") {
|
|
154
|
+
return pair.fill;
|
|
155
|
+
}
|
|
156
|
+
return undefined;
|
|
157
|
+
}
|
|
158
|
+
function createCoverage(stickers, stage) {
|
|
159
|
+
const coverage = Array.from({ length: stage.rows }, () => Array(stage.columns).fill(false));
|
|
160
|
+
for (const sticker of stickers) {
|
|
161
|
+
for (const pixel of GLYPH_PIXELS) {
|
|
162
|
+
const canvasX = sticker.x + pixel.x;
|
|
163
|
+
const canvasY = sticker.y + pixel.y;
|
|
164
|
+
if (canvasX >= 0 &&
|
|
165
|
+
canvasX < stage.columns &&
|
|
166
|
+
canvasY >= 0 &&
|
|
167
|
+
canvasY < stage.rows) {
|
|
168
|
+
coverage[canvasY][canvasX] = true;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return coverage;
|
|
173
|
+
}
|
|
174
|
+
function getUncoveredCells(coverage) {
|
|
175
|
+
const cells = [];
|
|
176
|
+
for (let y = 0; y < coverage.length; y += 1) {
|
|
177
|
+
const row = coverage[y] ?? [];
|
|
178
|
+
for (let x = 0; x < row.length; x += 1) {
|
|
179
|
+
if (!row[x]) {
|
|
180
|
+
cells.push({ x, y });
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return cells;
|
|
185
|
+
}
|
|
186
|
+
function scoreSticker(sticker, coverage, stage) {
|
|
187
|
+
let score = 0;
|
|
188
|
+
for (const pixel of GLYPH_PIXELS) {
|
|
189
|
+
const canvasX = sticker.x + pixel.x;
|
|
190
|
+
const canvasY = sticker.y + pixel.y;
|
|
191
|
+
if (canvasX >= 0 &&
|
|
192
|
+
canvasX < stage.columns &&
|
|
193
|
+
canvasY >= 0 &&
|
|
194
|
+
canvasY < stage.rows &&
|
|
195
|
+
!coverage[canvasY][canvasX]) {
|
|
196
|
+
score += 1;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
return score;
|
|
200
|
+
}
|
|
201
|
+
function createSticker(id, stage, currentStickers) {
|
|
202
|
+
const pair = getBalancedColorPair(currentStickers);
|
|
203
|
+
const coverage = createCoverage(currentStickers, stage);
|
|
204
|
+
const uncoveredCells = getUncoveredCells(coverage);
|
|
205
|
+
let bestSticker = createRandomSticker(id, stage, pair);
|
|
206
|
+
let bestScore = scoreSticker(bestSticker, coverage, stage);
|
|
207
|
+
for (let index = 0; index < CANDIDATES_PER_STICKER; index += 1) {
|
|
208
|
+
const shouldTargetBlankCell = uncoveredCells.length > 0 && index < CANDIDATES_PER_STICKER / 2;
|
|
209
|
+
const candidate = shouldTargetBlankCell
|
|
210
|
+
? createTargetedSticker(id, uncoveredCells[randomIntBetween(0, uncoveredCells.length - 1)], pair)
|
|
211
|
+
: createRandomSticker(id, stage, pair);
|
|
212
|
+
const candidateScore = scoreSticker(candidate, coverage, stage);
|
|
213
|
+
if (candidateScore > bestScore) {
|
|
214
|
+
bestSticker = candidate;
|
|
215
|
+
bestScore = candidateScore;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return bestSticker;
|
|
219
|
+
}
|
|
220
|
+
function renderSticker(cells, sticker) {
|
|
221
|
+
for (let glyphY = 0; glyphY < GLYPH_HEIGHT; glyphY += 1) {
|
|
222
|
+
const canvasY = sticker.y + glyphY;
|
|
223
|
+
if (canvasY < 0 || canvasY >= cells.length) {
|
|
224
|
+
continue;
|
|
225
|
+
}
|
|
226
|
+
const line = GLYPH[glyphY] ?? "";
|
|
227
|
+
for (let glyphX = 0; glyphX < line.length; glyphX += 1) {
|
|
228
|
+
const char = line[glyphX] ?? " ";
|
|
229
|
+
const color = getGlyphCellColor(char, sticker.pair);
|
|
230
|
+
if (!color) {
|
|
231
|
+
continue;
|
|
232
|
+
}
|
|
233
|
+
const canvasX = sticker.x + glyphX;
|
|
234
|
+
if (canvasX < 0 || canvasX >= cells[canvasY].length) {
|
|
235
|
+
continue;
|
|
236
|
+
}
|
|
237
|
+
cells[canvasY][canvasX] = { char, color };
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
function renderJumbo(cells, stage) {
|
|
242
|
+
const startX = Math.floor((stage.columns - JUMBO_WIDTH) / 2);
|
|
243
|
+
const startY = Math.floor((stage.rows - JUMBO_HEIGHT) / 2);
|
|
244
|
+
for (let jumboY = 0; jumboY < JUMBO_HEIGHT; jumboY += 1) {
|
|
245
|
+
const canvasY = startY + jumboY;
|
|
246
|
+
if (canvasY < 0 || canvasY >= cells.length) {
|
|
247
|
+
continue;
|
|
248
|
+
}
|
|
249
|
+
const line = Array.from(JUMBO[jumboY] ?? "");
|
|
250
|
+
for (let jumboX = 0; jumboX < line.length; jumboX += 1) {
|
|
251
|
+
const char = line[jumboX] ?? " ";
|
|
252
|
+
if (char === " ") {
|
|
253
|
+
continue;
|
|
254
|
+
}
|
|
255
|
+
const canvasX = startX + jumboX;
|
|
256
|
+
if (canvasX < 0 || canvasX >= stage.columns) {
|
|
257
|
+
continue;
|
|
258
|
+
}
|
|
259
|
+
cells[canvasY][canvasX] = {
|
|
260
|
+
char,
|
|
261
|
+
color: JUMBO_COLOR,
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
function rowToSegments(row) {
|
|
267
|
+
const segments = [];
|
|
268
|
+
let activeColor;
|
|
269
|
+
let activeText = "";
|
|
270
|
+
for (const cell of row) {
|
|
271
|
+
const color = cell?.color;
|
|
272
|
+
const char = cell?.char ?? " ";
|
|
273
|
+
if (color !== activeColor) {
|
|
274
|
+
if (activeText.length > 0) {
|
|
275
|
+
segments.push({ text: activeText, color: activeColor });
|
|
276
|
+
}
|
|
277
|
+
activeColor = color;
|
|
278
|
+
activeText = "";
|
|
279
|
+
}
|
|
280
|
+
activeText += char;
|
|
281
|
+
}
|
|
282
|
+
if (activeText.length > 0) {
|
|
283
|
+
segments.push({ text: activeText, color: activeColor });
|
|
284
|
+
}
|
|
285
|
+
return segments;
|
|
286
|
+
}
|
|
287
|
+
function buildFrame(stickers, stage, showJumbo, visibleRows) {
|
|
288
|
+
const cells = Array.from({ length: stage.rows }, () => Array(stage.columns).fill(undefined));
|
|
289
|
+
for (const sticker of stickers) {
|
|
290
|
+
renderSticker(cells, sticker);
|
|
291
|
+
}
|
|
292
|
+
if (showJumbo) {
|
|
293
|
+
renderJumbo(cells, stage);
|
|
294
|
+
}
|
|
295
|
+
return cells.map((row, y) => y < visibleRows ? rowToSegments(row) : [{ text: " ".repeat(stage.columns) }]);
|
|
296
|
+
}
|
|
297
|
+
function AnimatedBillboardView({ height, width, onDone, }) {
|
|
298
|
+
const stage = useMemo(() => getStageSize({
|
|
299
|
+
columns: width,
|
|
300
|
+
rows: height,
|
|
301
|
+
}), [height, width]);
|
|
302
|
+
const hasNotifiedDone = useRef(false);
|
|
303
|
+
const [stickers, setStickers] = useState(() => [
|
|
304
|
+
createSticker(0, stage, []),
|
|
305
|
+
]);
|
|
306
|
+
const [phase, setPhase] = useState("stickers");
|
|
307
|
+
const [visibleRows, setVisibleRows] = useState(stage.rows);
|
|
308
|
+
useEffect(() => {
|
|
309
|
+
hasNotifiedDone.current = false;
|
|
310
|
+
setPhase("stickers");
|
|
311
|
+
setVisibleRows(stage.rows);
|
|
312
|
+
setStickers([createSticker(0, stage, [])]);
|
|
313
|
+
}, [stage]);
|
|
314
|
+
/*
|
|
315
|
+
useEffect(() => {
|
|
316
|
+
if (phase !== "stickers" || stickers.length >= TARGET_STICKERS) {
|
|
317
|
+
return;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
const timer = setTimeout(() => {
|
|
321
|
+
setStickers((current) => {
|
|
322
|
+
if (current.length >= TARGET_STICKERS) {
|
|
323
|
+
return current;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
return [...current, createSticker(current.length, stage, current)];
|
|
327
|
+
});
|
|
328
|
+
}, FRAME_MS);
|
|
329
|
+
|
|
330
|
+
return () => {
|
|
331
|
+
clearTimeout(timer);
|
|
332
|
+
};
|
|
333
|
+
}, [phase, stage, stickers.length]);
|
|
334
|
+
*/
|
|
335
|
+
useEffect(() => {
|
|
336
|
+
if (phase !== "stickers" || stickers.length >= TARGET_STICKERS) {
|
|
337
|
+
return;
|
|
338
|
+
}
|
|
339
|
+
const timer = setTimeout(() => {
|
|
340
|
+
setStickers((current) => {
|
|
341
|
+
if (current.length >= TARGET_STICKERS) {
|
|
342
|
+
return current;
|
|
343
|
+
}
|
|
344
|
+
const next = [...current];
|
|
345
|
+
const batchSize = Math.min(STICKERS_PER_FRAME, TARGET_STICKERS - current.length);
|
|
346
|
+
for (let index = 0; index < batchSize; index += 1) {
|
|
347
|
+
next.push(createSticker(next.length, stage, next));
|
|
348
|
+
}
|
|
349
|
+
return next;
|
|
350
|
+
});
|
|
351
|
+
}, FRAME_MS);
|
|
352
|
+
return () => {
|
|
353
|
+
clearTimeout(timer);
|
|
354
|
+
};
|
|
355
|
+
}, [phase, stage, stickers.length]);
|
|
356
|
+
useEffect(() => {
|
|
357
|
+
if (phase !== "stickers" || stickers.length < TARGET_STICKERS) {
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
360
|
+
setVisibleRows(stage.rows);
|
|
361
|
+
setPhase("finalPause");
|
|
362
|
+
}, [phase, stage.rows, stickers.length]);
|
|
363
|
+
useEffect(() => {
|
|
364
|
+
if (phase !== "finalPause") {
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
const timer = setTimeout(() => {
|
|
368
|
+
setPhase("erasing");
|
|
369
|
+
}, FINAL_PAUSE_MS);
|
|
370
|
+
return () => {
|
|
371
|
+
clearTimeout(timer);
|
|
372
|
+
};
|
|
373
|
+
}, [phase]);
|
|
374
|
+
useEffect(() => {
|
|
375
|
+
if (phase !== "erasing") {
|
|
376
|
+
return;
|
|
377
|
+
}
|
|
378
|
+
if (visibleRows <= 0) {
|
|
379
|
+
setPhase("done");
|
|
380
|
+
return;
|
|
381
|
+
}
|
|
382
|
+
const timer = setTimeout(() => {
|
|
383
|
+
setVisibleRows((current) => Math.max(0, current - ERASE_ROWS_PER_FRAME));
|
|
384
|
+
}, ERASE_FRAME_MS);
|
|
385
|
+
return () => {
|
|
386
|
+
clearTimeout(timer);
|
|
387
|
+
};
|
|
388
|
+
}, [phase, visibleRows]);
|
|
389
|
+
useEffect(() => {
|
|
390
|
+
if (phase !== "done" || hasNotifiedDone.current) {
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
393
|
+
hasNotifiedDone.current = true;
|
|
394
|
+
onDone?.();
|
|
395
|
+
}, [onDone, phase]);
|
|
396
|
+
const showJumbo = stickers.length >= TARGET_STICKERS && phase !== "done";
|
|
397
|
+
const frame = useMemo(() => buildFrame(stickers, stage, showJumbo, visibleRows), [stage, stickers, showJumbo, visibleRows]);
|
|
398
|
+
return (React.createElement(Box, { flexDirection: "column", width: stage.columns, height: stage.rows, overflow: "hidden" }, frame.map((line, y) => (React.createElement(Text, { key: y }, line.map((segment, x) => (React.createElement(Text, { key: x, color: segment.color }, segment.text))))))));
|
|
399
|
+
}
|
|
400
|
+
const AnimatedBillboard = {
|
|
401
|
+
trigger(input) {
|
|
402
|
+
return React.createElement(AnimatedBillboardView, { ...input });
|
|
403
|
+
},
|
|
404
|
+
};
|
|
405
|
+
export default AnimatedBillboard;
|
|
406
|
+
//# sourceMappingURL=AnimatedBillboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBillboard.js","sourceRoot":"","sources":["../../../../src/presentation/tui/billboard/AnimatedBillboard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,IAAI,MAAM,aAAa,CAAC;AAE/B,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,QAAQ,GAAG,CAAC,CAAC;AACnB,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACnC,MAAM,WAAW,GAAG,SAAS,CAAC;AAC9B,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,oBAAoB,GAAG,CAAC,CAC7B;AAED,MAAM,KAAK,GAAG;IACZ,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;IAC9B,8BAA8B;CACtB,CAAC;AAEX,MAAM,KAAK,GAAG;IACZ,2DAA2D;IAC3D,2DAA2D;IAC3D,2DAA2D;IAC3D,2DAA2D;IAC3D,2DAA2D;IAC3D,2DAA2D;IAC3D,2DAA2D;CACnD,CAAC;AAEX,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,SAAS;IACrB,MAAM,EAAE,SAAS;IACjB,YAAY,EAAE,SAAS;IACvB,GAAG,EAAE,SAAS;IACd,SAAS,EAAE,SAAS;IACpB,MAAM,EAAE,SAAS;IACjB,YAAY,EAAE,SAAS;IACvB,MAAM,EAAE,SAAS;IACjB,YAAY,EAAE,SAAS;IACvB,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,SAAS;IACtB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;CAChB,CAAC;AAEX,MAAM,WAAW,GAAG;IAClB;QACE,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,WAAW,CAAC,IAAI;QACtB,MAAM,EAAE,WAAW,CAAC,UAAU;KAC/B;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,WAAW,CAAC,MAAM;QACxB,MAAM,EAAE,WAAW,CAAC,YAAY;KACjC;IACD;QACE,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,WAAW,CAAC,GAAG;QACrB,MAAM,EAAE,WAAW,CAAC,SAAS;KAC9B;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,WAAW,CAAC,MAAM;QACxB,MAAM,EAAE,WAAW,CAAC,YAAY;KACjC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,WAAW,CAAC,MAAM;QACxB,MAAM,EAAE,WAAW,CAAC,YAAY;KACjC;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,WAAW,CAAC,KAAK;QACvB,MAAM,EAAE,WAAW,CAAC,WAAW;KAChC;IACD;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,WAAW,CAAC,OAAO;QACzB,MAAM,EAAE,WAAW,CAAC,aAAa;KAClC;CACO,CAAC;AAEX,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;AAClC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAClE,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CACnC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAC/B,CACF,CAAC;AACF,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;AAClC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AA8C9E,SAAS,gBAAgB,CAAC,YAAoB,EAAE,YAAoB;IAClE,OAAO,CACL,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,YAAY,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAU;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAE/D,MAAM,KAAK,GAAG;QACZ,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE;QAChC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE;KAC/B,CAAC;IAEF,IAAI,CAAC,IAAI,EAAE,CAAC;IACZ,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAW;IACrC,OAAO;QACL,IAAI,EAAE,CAAC,GAAG,WAAW;QACrB,IAAI,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC;QACvB,IAAI,EAAE,CAAC,GAAG,YAAY;QACtB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA4B;IACxD,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAC1C,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAC1B,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACzD,CAAC;IACF,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CACvC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,WAAW,CAChD,CAAC;IAEF,OAAO,cAAc,CAAC,gBAAgB,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAE,CAAC;AACzE,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAU,EAAE,KAAW,EAAE,IAAe;IACnE,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEzC,OAAO;QACL,EAAE;QACF,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;QAC7C,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;QAC7C,IAAI;KACL,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,EAAU,EACV,MAAa,EACb,IAAe;IAEf,MAAM,UAAU,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAE9E,OAAO;QACL,EAAE;QACF,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC;QAC1B,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC;QAC1B,IAAI;KACL,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,IAAe;IACtD,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QACjB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,cAAc,CAAC,QAA4B,EAAE,KAAW;IAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CACvD,KAAK,CAAU,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAC1C,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YAEpC,IACE,OAAO,IAAI,CAAC;gBACZ,OAAO,GAAG,KAAK,CAAC,OAAO;gBACvB,OAAO,IAAI,CAAC;gBACZ,OAAO,GAAG,KAAK,CAAC,IAAI,EACpB,CAAC;gBACD,QAAQ,CAAC,OAAO,CAAE,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,QAA8B;IACvD,MAAM,KAAK,GAAY,EAAE,CAAC;IAE1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CACnB,OAAgB,EAChB,QAA8B,EAC9B,KAAW;IAEX,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAEpC,IACE,OAAO,IAAI,CAAC;YACZ,OAAO,GAAG,KAAK,CAAC,OAAO;YACvB,OAAO,IAAI,CAAC;YACZ,OAAO,GAAG,KAAK,CAAC,IAAI;YACpB,CAAC,QAAQ,CAAC,OAAO,CAAE,CAAC,OAAO,CAAC,EAC5B,CAAC;YACD,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CACpB,EAAU,EACV,KAAW,EACX,eAAmC;IAEnC,MAAM,IAAI,GAAG,oBAAoB,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,cAAc,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,WAAW,GAAG,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACvD,IAAI,SAAS,GAAG,YAAY,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAE3D,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,sBAAsB,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC/D,MAAM,qBAAqB,GACzB,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,GAAG,sBAAsB,GAAG,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,qBAAqB;YACrC,CAAC,CAAC,qBAAqB,CACnB,EAAE,EACF,cAAc,CAAC,gBAAgB,CAAC,CAAC,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAE,EAC/D,IAAI,CACL;YACH,CAAC,CAAC,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACzC,MAAM,cAAc,GAAG,YAAY,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAEhE,IAAI,cAAc,GAAG,SAAS,EAAE,CAAC;YAC/B,WAAW,GAAG,SAAS,CAAC;YACxB,SAAS,GAAG,cAAc,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,aAAa,CAAC,KAAqC,EAAE,OAAgB;IAC5E,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC;QAEnC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3C,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAEjC,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YACjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAEpD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC;YAEnC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAE,CAAC,MAAM,EAAE,CAAC;gBACrD,SAAS;YACX,CAAC;YAED,KAAK,CAAC,OAAO,CAAE,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QAC7C,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAClB,KAAqC,EACrC,KAAW;IAEX,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3D,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;QAEhC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3C,SAAS;QACX,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAE7C,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YAEjC,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;YAEhC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC5C,SAAS;YACX,CAAC;YAED,KAAK,CAAC,OAAO,CAAE,CAAC,OAAO,CAAC,GAAG;gBACzB,IAAI;gBACJ,KAAK,EAAE,WAAW;aACnB,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,GAA4B;IACjD,MAAM,QAAQ,GAAc,EAAE,CAAC;IAC/B,IAAI,WAA+B,CAAC;IACpC,IAAI,UAAU,GAAG,EAAE,CAAC;IAEpB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,GAAG,CAAC;QAE/B,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YAC1B,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAC1D,CAAC;YAED,WAAW,GAAG,KAAK,CAAC;YACpB,UAAU,GAAG,EAAE,CAAC;QAClB,CAAC;QAED,UAAU,IAAI,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CACjB,QAA4B,EAC5B,KAAW,EACX,SAAkB,EAClB,WAAmB;IAEnB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CACpD,KAAK,CAAmB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CACvD,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAC1B,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,EAC7B,MAAM,EACN,KAAK,EACL,MAAM,GACwB;IAC9B,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CACH,YAAY,CAAC;QACX,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,MAAM;KACb,CAAC,EACJ,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAY,GAAG,EAAE,CAAC;QACxD,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;KAC5B,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAiB,UAAU,CAAC,CAAC;IAC/D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,OAAO,GAAG,KAAK,CAAC;QAChC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrB,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,WAAW,CAAC,CAAC,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ;;;;;;;;;;;;;;;;;;;;MAoBE;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,UAAU,IAAI,QAAQ,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE;gBACtB,IAAI,OAAO,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC;oBACtC,OAAO,OAAO,CAAC;gBACjB,CAAC;gBAED,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;gBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,kBAAkB,EAClB,eAAe,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC;gBAEF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;oBAClD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gBACrD,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAEpC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,UAAU,IAAI,QAAQ,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,QAAQ,CAAC,YAAY,CAAC,CAAC;IACzB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC,EAAE,cAAc,CAAC,CAAC;QAEnB,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrB,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAC,CAAC,CAAC;QAC3E,CAAC,EAAE,cAAc,CAAC,CAAC;QAEnB,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;IAEzB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,MAAM,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAChD,OAAO;QACT,CAAC;QAED,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;QAC/B,MAAM,EAAE,EAAE,CAAC;IACb,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAEpB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,eAAe,IAAI,KAAK,KAAK,MAAM,CAAC;IACzE,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EACzD,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAC1C,CAAC;IAEF,OAAO,CACL,oBAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,KAAK,EAAE,KAAK,CAAC,OAAO,EACpB,MAAM,EAAE,KAAK,CAAC,IAAI,EAClB,QAAQ,EAAC,QAAQ,IAEhB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,oBAAC,IAAI,IAAC,GAAG,EAAE,CAAC,IACT,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CACxB,oBAAC,IAAI,IAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,IAC/B,OAAO,CAAC,IAAI,CACR,CACR,CAAC,CACG,CACR,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAED,MAAM,iBAAiB,GAAG;IACxB,OAAO,CAAC,KAAoC;QAC1C,OAAO,oBAAC,qBAAqB,OAAK,KAAK,GAAI,CAAC;IAC9C,CAAC;CACF,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface AnimatedBannerProps {
|
|
3
|
+
onComplete: () => void;
|
|
4
|
+
version?: string;
|
|
5
|
+
projectName?: string | null;
|
|
6
|
+
persist?: boolean;
|
|
7
|
+
infoBoxLines?: string[];
|
|
8
|
+
animated?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function getGradientHex(progress: number): string;
|
|
11
|
+
export declare function AnimatedBanner({ onComplete, version, projectName, persist, infoBoxLines, animated, }: AnimatedBannerProps): React.ReactElement | null;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=AnimatedBanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBanner.d.ts","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/AnimatedBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAQxE,UAAU,mBAAmB;IAC3B,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAgDD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBvD;AAgFD,wBAAgB,cAAc,CAAC,EAC7B,UAAU,EACV,OAAY,EACZ,WAAkB,EAClB,OAAe,EACf,YAAY,EACZ,QAAe,GAChB,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CAwHjD"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import React, { useState, useEffect, useCallback, useRef } from "react";
|
|
2
|
+
import { Box, Text } from "ink";
|
|
3
|
+
import { getAnimationFrame, getFrameCount, } from "../../cli/banner/AnimationFrames.js";
|
|
4
|
+
import { SemanticColors } from "../../shared/DesignTokens.js";
|
|
5
|
+
const TOTAL_FRAMES = getFrameCount();
|
|
6
|
+
const MID_POINT = Math.floor(TOTAL_FRAMES / 2);
|
|
7
|
+
const FRAME_DURATION_MS = 9;
|
|
8
|
+
const TICK_MS = 4;
|
|
9
|
+
const HOLD_DELAY_MS = 1120;
|
|
10
|
+
const ERASE_INTERVAL_MS = 15;
|
|
11
|
+
const ANCHOR_COLORS = [
|
|
12
|
+
[102, 180, 244],
|
|
13
|
+
[170, 0, 212],
|
|
14
|
+
[255, 42, 42],
|
|
15
|
+
[255, 131, 7],
|
|
16
|
+
[255, 204, 0],
|
|
17
|
+
[68, 170, 0],
|
|
18
|
+
];
|
|
19
|
+
const ANCHOR_COLORS_HEX = [
|
|
20
|
+
"#66b4f4",
|
|
21
|
+
"#aa00d4",
|
|
22
|
+
"#ff2a2a",
|
|
23
|
+
"#ff8307",
|
|
24
|
+
"#ffcc00",
|
|
25
|
+
"#44aa00",
|
|
26
|
+
];
|
|
27
|
+
function lerpRgb(a, b, t) {
|
|
28
|
+
return [
|
|
29
|
+
Math.round(a[0] + (b[0] - a[0]) * t),
|
|
30
|
+
Math.round(a[1] + (b[1] - a[1]) * t),
|
|
31
|
+
Math.round(a[2] + (b[2] - a[2]) * t),
|
|
32
|
+
];
|
|
33
|
+
}
|
|
34
|
+
function rgbToHex(r, g, b) {
|
|
35
|
+
return ("#" +
|
|
36
|
+
r.toString(16).padStart(2, "0") +
|
|
37
|
+
g.toString(16).padStart(2, "0") +
|
|
38
|
+
b.toString(16).padStart(2, "0"));
|
|
39
|
+
}
|
|
40
|
+
export function getGradientHex(progress) {
|
|
41
|
+
const clamped = Math.max(0, Math.min(1, progress));
|
|
42
|
+
const segments = ANCHOR_COLORS.length - 1;
|
|
43
|
+
const segmentLength = 1 / segments;
|
|
44
|
+
const segmentIndex = Math.min(Math.floor(clamped / segmentLength), segments - 1);
|
|
45
|
+
const segmentProgress = (clamped - segmentIndex * segmentLength) / segmentLength;
|
|
46
|
+
const [r, g, b] = lerpRgb(ANCHOR_COLORS[segmentIndex], ANCHOR_COLORS[segmentIndex + 1], segmentProgress);
|
|
47
|
+
return rgbToHex(r, g, b);
|
|
48
|
+
}
|
|
49
|
+
function colorizeLineToSegments(line, elephantHex) {
|
|
50
|
+
const segments = [];
|
|
51
|
+
let i = 0;
|
|
52
|
+
while (i < line.length) {
|
|
53
|
+
const char = line[i];
|
|
54
|
+
if (char === "▓" || char === "▒") {
|
|
55
|
+
let elephantSegment = "";
|
|
56
|
+
while (i < line.length &&
|
|
57
|
+
(line[i] === "▓" || line[i] === "▒" || line[i] === "█")) {
|
|
58
|
+
const nearbyContext = line.slice(Math.max(0, i - 3), Math.min(line.length, i + 4));
|
|
59
|
+
const hasShading = nearbyContext.includes("▓") || nearbyContext.includes("▒");
|
|
60
|
+
if (line[i] === "█" && !hasShading)
|
|
61
|
+
break;
|
|
62
|
+
elephantSegment += line[i];
|
|
63
|
+
i++;
|
|
64
|
+
}
|
|
65
|
+
const vibrant = elephantSegment.replace(/▓/g, "░").replace(/[▒█]/g, " ");
|
|
66
|
+
segments.push({ text: vibrant, color: elephantHex, inverse: true });
|
|
67
|
+
}
|
|
68
|
+
else if (char === "█" || char === "░") {
|
|
69
|
+
let textSegment = "";
|
|
70
|
+
while (i < line.length && (line[i] === "█" || line[i] === "░")) {
|
|
71
|
+
textSegment += line[i];
|
|
72
|
+
i++;
|
|
73
|
+
}
|
|
74
|
+
segments.push({ text: textSegment, color: "#c8c8c8" });
|
|
75
|
+
}
|
|
76
|
+
else if ("╭╮╰╯│─".includes(char)) {
|
|
77
|
+
let boxSegment = "";
|
|
78
|
+
while (i < line.length && "╭╮╰╯│─".includes(line[i])) {
|
|
79
|
+
boxSegment += line[i];
|
|
80
|
+
i++;
|
|
81
|
+
}
|
|
82
|
+
segments.push({ text: boxSegment, color: SemanticColors.keyBadge });
|
|
83
|
+
}
|
|
84
|
+
else if (char === "A" &&
|
|
85
|
+
line.slice(i).startsWith("Agent Context Orchestration")) {
|
|
86
|
+
const tagline = "Agent Context Orchestration";
|
|
87
|
+
segments.push({ text: tagline, color: "#808080" });
|
|
88
|
+
i += tagline.length;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
let plainSegment = "";
|
|
92
|
+
while (i < line.length &&
|
|
93
|
+
line[i] !== "▓" &&
|
|
94
|
+
line[i] !== "▒" &&
|
|
95
|
+
line[i] !== "█" &&
|
|
96
|
+
line[i] !== "░" &&
|
|
97
|
+
!"╭╮╰╯│─".includes(line[i]) &&
|
|
98
|
+
!(line[i] === "A" && line.slice(i).startsWith("Agent Context Orchestration"))) {
|
|
99
|
+
plainSegment += line[i];
|
|
100
|
+
i++;
|
|
101
|
+
}
|
|
102
|
+
if (plainSegment.length > 0) {
|
|
103
|
+
segments.push({ text: plainSegment });
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return segments;
|
|
108
|
+
}
|
|
109
|
+
export function AnimatedBanner({ onComplete, version = "", projectName = null, persist = false, infoBoxLines, animated = true, }) {
|
|
110
|
+
const [frame, setFrame] = useState(animated ? 0 : TOTAL_FRAMES - 1);
|
|
111
|
+
const [phase, setPhase] = useState(animated ? "walking" : persist ? "persisted" : "complete");
|
|
112
|
+
const [visibleLines, setVisibleLines] = useState(null);
|
|
113
|
+
const startTimeRef = useRef(performance.now());
|
|
114
|
+
const handleComplete = useCallback(() => {
|
|
115
|
+
onComplete();
|
|
116
|
+
}, [onComplete]);
|
|
117
|
+
useEffect(() => {
|
|
118
|
+
if (animated) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
setFrame(TOTAL_FRAMES - 1);
|
|
122
|
+
setPhase(persist ? "persisted" : "complete");
|
|
123
|
+
setVisibleLines(null);
|
|
124
|
+
}, [animated, persist]);
|
|
125
|
+
useEffect(() => {
|
|
126
|
+
if (!animated || phase !== "walking")
|
|
127
|
+
return;
|
|
128
|
+
const timer = setInterval(() => {
|
|
129
|
+
const elapsed = performance.now() - startTimeRef.current;
|
|
130
|
+
const targetFrame = Math.min(Math.floor(elapsed / FRAME_DURATION_MS), TOTAL_FRAMES - 1);
|
|
131
|
+
setFrame((prev) => {
|
|
132
|
+
if (targetFrame >= TOTAL_FRAMES - 1) {
|
|
133
|
+
setPhase("holding");
|
|
134
|
+
return TOTAL_FRAMES - 1;
|
|
135
|
+
}
|
|
136
|
+
return targetFrame > prev ? targetFrame : prev;
|
|
137
|
+
});
|
|
138
|
+
}, TICK_MS);
|
|
139
|
+
return () => clearInterval(timer);
|
|
140
|
+
}, [phase]);
|
|
141
|
+
useEffect(() => {
|
|
142
|
+
if (phase !== "holding")
|
|
143
|
+
return;
|
|
144
|
+
const timer = setTimeout(() => {
|
|
145
|
+
setPhase(persist ? "persisted" : "erasing");
|
|
146
|
+
}, HOLD_DELAY_MS);
|
|
147
|
+
return () => clearTimeout(timer);
|
|
148
|
+
}, [phase, persist]);
|
|
149
|
+
useEffect(() => {
|
|
150
|
+
if (phase !== "persisted")
|
|
151
|
+
return;
|
|
152
|
+
handleComplete();
|
|
153
|
+
}, [phase, handleComplete]);
|
|
154
|
+
useEffect(() => {
|
|
155
|
+
if (phase !== "erasing")
|
|
156
|
+
return;
|
|
157
|
+
const finalFrame = getAnimationFrame(TOTAL_FRAMES - 1, version, projectName, infoBoxLines);
|
|
158
|
+
const totalLines = finalFrame.length;
|
|
159
|
+
setVisibleLines(totalLines);
|
|
160
|
+
const timer = setInterval(() => {
|
|
161
|
+
setVisibleLines((prev) => {
|
|
162
|
+
if (prev === null)
|
|
163
|
+
return totalLines;
|
|
164
|
+
if (prev <= 0) {
|
|
165
|
+
setPhase("complete");
|
|
166
|
+
return 0;
|
|
167
|
+
}
|
|
168
|
+
return prev - 1;
|
|
169
|
+
});
|
|
170
|
+
}, ERASE_INTERVAL_MS);
|
|
171
|
+
return () => clearInterval(timer);
|
|
172
|
+
}, [phase, version, projectName, infoBoxLines]);
|
|
173
|
+
useEffect(() => {
|
|
174
|
+
if (phase === "complete")
|
|
175
|
+
handleComplete();
|
|
176
|
+
}, [phase, handleComplete]);
|
|
177
|
+
if (phase === "complete")
|
|
178
|
+
return null;
|
|
179
|
+
let colorProgress;
|
|
180
|
+
if (frame <= MID_POINT) {
|
|
181
|
+
colorProgress = frame / MID_POINT;
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
colorProgress = 1 - (frame - MID_POINT) / (TOTAL_FRAMES - MID_POINT - 1);
|
|
185
|
+
}
|
|
186
|
+
const elephantHex = getGradientHex(colorProgress);
|
|
187
|
+
const currentFrame = phase === "walking"
|
|
188
|
+
? getAnimationFrame(frame, version, projectName, infoBoxLines)
|
|
189
|
+
: getAnimationFrame(TOTAL_FRAMES - 1, version, projectName, infoBoxLines);
|
|
190
|
+
const linesToRender = visibleLines !== null ? currentFrame.slice(0, visibleLines) : currentFrame;
|
|
191
|
+
return (React.createElement(Box, { flexDirection: "column" }, linesToRender.map((line, lineIndex) => (React.createElement(Text, { key: lineIndex }, colorizeLineToSegments(line, elephantHex).map((segment, segIndex) => segment.color ? (React.createElement(Text, { key: segIndex, color: segment.color, inverse: segment.inverse }, segment.text)) : (React.createElement(Text, { key: segIndex }, segment.text))))))));
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=AnimatedBanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBanner.js","sourceRoot":"","sources":["../../../../src/presentation/tui/cockpit/AnimatedBanner.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface CenteredPromptProps {
|
|
3
|
+
keyChar: string;
|
|
4
|
+
prefix: string;
|
|
5
|
+
suffix: string;
|
|
6
|
+
secondary?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function CenteredPrompt({ keyChar, prefix, suffix, secondary, }: CenteredPromptProps): React.ReactElement;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=CenteredPrompt.d.ts.map
|