jumbo-cli 3.10.1 → 3.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/application/context/project/stats/AudiencePainStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/AudiencePainStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/AudiencePainStatsView.js +2 -0
- package/dist/application/context/project/stats/AudiencePainStatsView.js.map +1 -0
- package/dist/application/context/project/stats/AudiencePainsCount.d.ts +2 -0
- package/dist/application/context/project/stats/AudiencePainsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/AudiencePainsCount.js +2 -0
- package/dist/application/context/project/stats/AudiencePainsCount.js.map +1 -0
- package/dist/application/context/project/stats/AudienceStatsView.d.ts +9 -0
- package/dist/application/context/project/stats/AudienceStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/AudienceStatsView.js +2 -0
- package/dist/application/context/project/stats/AudienceStatsView.js.map +1 -0
- package/dist/application/context/project/stats/ClosedGoalsCount.d.ts +2 -0
- package/dist/application/context/project/stats/ClosedGoalsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/ClosedGoalsCount.js +2 -0
- package/dist/application/context/project/stats/ClosedGoalsCount.js.map +1 -0
- package/dist/application/context/project/stats/ComponentStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/ComponentStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/ComponentStatsView.js +2 -0
- package/dist/application/context/project/stats/ComponentStatsView.js.map +1 -0
- package/dist/application/context/project/stats/ComponentsCount.d.ts +2 -0
- package/dist/application/context/project/stats/ComponentsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/ComponentsCount.js +2 -0
- package/dist/application/context/project/stats/ComponentsCount.js.map +1 -0
- package/dist/application/context/project/stats/DecisionStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/DecisionStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/DecisionStatsView.js +2 -0
- package/dist/application/context/project/stats/DecisionStatsView.js.map +1 -0
- package/dist/application/context/project/stats/DecisionsCount.d.ts +2 -0
- package/dist/application/context/project/stats/DecisionsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/DecisionsCount.js +2 -0
- package/dist/application/context/project/stats/DecisionsCount.js.map +1 -0
- package/dist/application/context/project/stats/DefinedGoalsCount.d.ts +2 -0
- package/dist/application/context/project/stats/DefinedGoalsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/DefinedGoalsCount.js +2 -0
- package/dist/application/context/project/stats/DefinedGoalsCount.js.map +1 -0
- package/dist/application/context/project/stats/DependenciesCount.d.ts +2 -0
- package/dist/application/context/project/stats/DependenciesCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/DependenciesCount.js +2 -0
- package/dist/application/context/project/stats/DependenciesCount.js.map +1 -0
- package/dist/application/context/project/stats/DependencyStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/DependencyStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/DependencyStatsView.js +2 -0
- package/dist/application/context/project/stats/DependencyStatsView.js.map +1 -0
- package/dist/application/context/project/stats/GoalStatsView.d.ts +13 -0
- package/dist/application/context/project/stats/GoalStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/GoalStatsView.js +2 -0
- package/dist/application/context/project/stats/GoalStatsView.js.map +1 -0
- package/dist/application/context/project/stats/GraphStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/GraphStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/GraphStatsView.js +2 -0
- package/dist/application/context/project/stats/GraphStatsView.js.map +1 -0
- package/dist/application/context/project/stats/GuidelineStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/GuidelineStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/GuidelineStatsView.js +2 -0
- package/dist/application/context/project/stats/GuidelineStatsView.js.map +1 -0
- package/dist/application/context/project/stats/GuidelinesCount.d.ts +2 -0
- package/dist/application/context/project/stats/GuidelinesCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/GuidelinesCount.js +2 -0
- package/dist/application/context/project/stats/GuidelinesCount.js.map +1 -0
- package/dist/application/context/project/stats/InProgressGoalsCount.d.ts +2 -0
- package/dist/application/context/project/stats/InProgressGoalsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/InProgressGoalsCount.js +2 -0
- package/dist/application/context/project/stats/InProgressGoalsCount.js.map +1 -0
- package/dist/application/context/project/stats/InvariantStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/InvariantStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/InvariantStatsView.js +2 -0
- package/dist/application/context/project/stats/InvariantStatsView.js.map +1 -0
- package/dist/application/context/project/stats/InvariantsCount.d.ts +2 -0
- package/dist/application/context/project/stats/InvariantsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/InvariantsCount.js +2 -0
- package/dist/application/context/project/stats/InvariantsCount.js.map +1 -0
- package/dist/application/context/project/stats/MemoryStatsView.d.ts +13 -0
- package/dist/application/context/project/stats/MemoryStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/MemoryStatsView.js +2 -0
- package/dist/application/context/project/stats/MemoryStatsView.js.map +1 -0
- package/dist/application/context/project/stats/PrimaryAudiences.d.ts +2 -0
- package/dist/application/context/project/stats/PrimaryAudiences.d.ts.map +1 -0
- package/dist/application/context/project/stats/PrimaryAudiences.js +2 -0
- package/dist/application/context/project/stats/PrimaryAudiences.js.map +1 -0
- package/dist/application/context/project/stats/ProjectStatsSnapshotView.d.ts +6 -74
- package/dist/application/context/project/stats/ProjectStatsSnapshotView.d.ts.map +1 -1
- package/dist/application/context/project/stats/ProjectStatsView.d.ts +9 -0
- package/dist/application/context/project/stats/ProjectStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/ProjectStatsView.js +2 -0
- package/dist/application/context/project/stats/ProjectStatsView.js.map +1 -0
- package/dist/application/context/project/stats/RefinedGoalsCount.d.ts +2 -0
- package/dist/application/context/project/stats/RefinedGoalsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/RefinedGoalsCount.js +2 -0
- package/dist/application/context/project/stats/RefinedGoalsCount.js.map +1 -0
- package/dist/application/context/project/stats/RelationCount.d.ts +2 -0
- package/dist/application/context/project/stats/RelationCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/RelationCount.js +2 -0
- package/dist/application/context/project/stats/RelationCount.js.map +1 -0
- package/dist/application/context/project/stats/SecondaryAudiences.d.ts +2 -0
- package/dist/application/context/project/stats/SecondaryAudiences.d.ts.map +1 -0
- package/dist/application/context/project/stats/SecondaryAudiences.js +2 -0
- package/dist/application/context/project/stats/SecondaryAudiences.js.map +1 -0
- package/dist/application/context/project/stats/SessionsCount.d.ts +2 -0
- package/dist/application/context/project/stats/SessionsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/SessionsCount.js +2 -0
- package/dist/application/context/project/stats/SessionsCount.js.map +1 -0
- package/dist/application/context/project/stats/SessionsStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/SessionsStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/SessionsStatsView.js +2 -0
- package/dist/application/context/project/stats/SessionsStatsView.js.map +1 -0
- package/dist/application/context/project/stats/SubmittedGoalsCount.d.ts +2 -0
- package/dist/application/context/project/stats/SubmittedGoalsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/SubmittedGoalsCount.js +2 -0
- package/dist/application/context/project/stats/SubmittedGoalsCount.js.map +1 -0
- package/dist/application/context/project/stats/TotalAudiences.d.ts +2 -0
- package/dist/application/context/project/stats/TotalAudiences.d.ts.map +1 -0
- package/dist/application/context/project/stats/TotalAudiences.js +2 -0
- package/dist/application/context/project/stats/TotalAudiences.js.map +1 -0
- package/dist/application/context/project/stats/ValuePropositionsCount.d.ts +2 -0
- package/dist/application/context/project/stats/ValuePropositionsCount.d.ts.map +1 -0
- package/dist/application/context/project/stats/ValuePropositionsCount.js +2 -0
- package/dist/application/context/project/stats/ValuePropositionsCount.js.map +1 -0
- package/dist/application/context/project/stats/ValuePropositionsStatsView.d.ts +5 -0
- package/dist/application/context/project/stats/ValuePropositionsStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/ValuePropositionsStatsView.js +2 -0
- package/dist/application/context/project/stats/ValuePropositionsStatsView.js.map +1 -0
- package/dist/application/context/project/stats/WorkStatsView.d.ts +7 -0
- package/dist/application/context/project/stats/WorkStatsView.d.ts.map +1 -0
- package/dist/application/context/project/stats/WorkStatsView.js +2 -0
- package/dist/application/context/project/stats/WorkStatsView.js.map +1 -0
- package/dist/presentation/cli/commands/goals/show/GoalShowOutputBuilder.d.ts.map +1 -1
- package/dist/presentation/cli/commands/goals/show/GoalShowOutputBuilder.js +10 -2
- package/dist/presentation/cli/commands/goals/show/GoalShowOutputBuilder.js.map +1 -1
- package/dist/presentation/shared/DesignTokens.d.ts +12 -2
- package/dist/presentation/shared/DesignTokens.d.ts.map +1 -1
- package/dist/presentation/shared/DesignTokens.js +12 -2
- package/dist/presentation/shared/DesignTokens.js.map +1 -1
- package/dist/presentation/tui/application-shell/App.d.ts.map +1 -1
- package/dist/presentation/tui/application-shell/App.js +39 -35
- package/dist/presentation/tui/application-shell/App.js.map +1 -1
- package/dist/presentation/tui/application-shell/AppConstants.d.ts +4 -0
- package/dist/presentation/tui/application-shell/AppConstants.d.ts.map +1 -1
- package/dist/presentation/tui/application-shell/AppConstants.js +4 -0
- package/dist/presentation/tui/application-shell/AppConstants.js.map +1 -1
- package/dist/presentation/tui/application-shell/ApplicationLauncher.d.ts.map +1 -1
- package/dist/presentation/tui/application-shell/ApplicationLauncher.js +2 -0
- package/dist/presentation/tui/application-shell/ApplicationLauncher.js.map +1 -1
- package/dist/presentation/tui/application-shell/Footer.d.ts +2 -1
- package/dist/presentation/tui/application-shell/Footer.d.ts.map +1 -1
- package/dist/presentation/tui/application-shell/Footer.js +10 -4
- package/dist/presentation/tui/application-shell/Footer.js.map +1 -1
- package/dist/presentation/tui/application-shell/FooterShortcutDescriptor.d.ts +5 -1
- package/dist/presentation/tui/application-shell/FooterShortcutDescriptor.d.ts.map +1 -1
- package/dist/presentation/tui/application-shell/FooterShortcutDescriptor.js +5 -1
- package/dist/presentation/tui/application-shell/FooterShortcutDescriptor.js.map +1 -1
- package/dist/presentation/tui/cockpit/DaemonActionLine.d.ts.map +1 -1
- package/dist/presentation/tui/cockpit/DaemonActionLine.js +3 -3
- package/dist/presentation/tui/cockpit/DaemonActionLine.js.map +1 -1
- package/dist/presentation/tui/goals/AddGoalRequestFactory.d.ts +14 -0
- package/dist/presentation/tui/goals/AddGoalRequestFactory.d.ts.map +1 -0
- package/dist/presentation/tui/goals/AddGoalRequestFactory.js +36 -0
- package/dist/presentation/tui/goals/AddGoalRequestFactory.js.map +1 -0
- package/dist/presentation/tui/goals/GoalsScreen.d.ts +13 -1
- package/dist/presentation/tui/goals/GoalsScreen.d.ts.map +1 -1
- package/dist/presentation/tui/goals/GoalsScreen.js +360 -86
- package/dist/presentation/tui/goals/GoalsScreen.js.map +1 -1
- package/dist/presentation/tui/goals/GoalsScreenConstants.d.ts +41 -17
- package/dist/presentation/tui/goals/GoalsScreenConstants.d.ts.map +1 -1
- package/dist/presentation/tui/goals/GoalsScreenConstants.js +47 -16
- package/dist/presentation/tui/goals/GoalsScreenConstants.js.map +1 -1
- package/dist/presentation/tui/memory/components/ComponentsScreen.d.ts +5 -1
- package/dist/presentation/tui/memory/components/ComponentsScreen.d.ts.map +1 -1
- package/dist/presentation/tui/memory/components/ComponentsScreen.js +2 -3
- package/dist/presentation/tui/memory/components/ComponentsScreen.js.map +1 -1
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.d.ts +5 -1
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.d.ts.map +1 -1
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.js +2 -3
- package/dist/presentation/tui/memory/decisions/DecisionsScreen.js.map +1 -1
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.d.ts +5 -1
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.d.ts.map +1 -1
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.js +2 -3
- package/dist/presentation/tui/memory/dependencies/DependenciesScreen.js.map +1 -1
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.d.ts +4 -4
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.d.ts.map +1 -1
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.js +33 -25
- package/dist/presentation/tui/memory/entity-browser/EntityDetailView.js.map +1 -1
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.d.ts +2 -2
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.d.ts.map +1 -1
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.js +48 -79
- package/dist/presentation/tui/memory/entity-browser/MemoryEntityScreen.js.map +1 -1
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.d.ts +5 -1
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.d.ts.map +1 -1
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.js +2 -3
- package/dist/presentation/tui/memory/guidelines/GuidelinesScreen.js.map +1 -1
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.d.ts +5 -1
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.d.ts.map +1 -1
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.js +2 -3
- package/dist/presentation/tui/memory/invariants/InvariantsScreen.js.map +1 -1
- package/dist/presentation/tui/navigation/MegaMenu.d.ts +6 -1
- package/dist/presentation/tui/navigation/MegaMenu.d.ts.map +1 -1
- package/dist/presentation/tui/navigation/MegaMenu.js +20 -7
- package/dist/presentation/tui/navigation/MegaMenu.js.map +1 -1
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.d.ts +14 -0
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.d.ts.map +1 -1
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.js +59 -120
- package/dist/presentation/tui/navigation/MegaMenuDefinitions.js.map +1 -1
- package/dist/presentation/tui/navigation/ScreenDefinitions.d.ts +2 -2
- package/dist/presentation/tui/navigation/ScreenDefinitions.js +1 -1
- package/dist/presentation/tui/navigation/ScreenDefinitions.js.map +1 -1
- package/dist/presentation/tui/navigation/ScreenRouter.d.ts +8 -1
- package/dist/presentation/tui/navigation/ScreenRouter.d.ts.map +1 -1
- package/dist/presentation/tui/navigation/ScreenRouter.js +27 -3
- package/dist/presentation/tui/navigation/ScreenRouter.js.map +1 -1
- package/dist/presentation/tui/search/SearchHitGroups.d.ts +4 -0
- package/dist/presentation/tui/search/SearchHitGroups.d.ts.map +1 -0
- package/dist/presentation/tui/search/SearchHitGroups.js +17 -0
- package/dist/presentation/tui/search/SearchHitGroups.js.map +1 -0
- package/dist/presentation/tui/search/SearchHits.d.ts +4 -0
- package/dist/presentation/tui/search/SearchHits.d.ts.map +1 -0
- package/dist/presentation/tui/search/SearchHits.js +4 -0
- package/dist/presentation/tui/search/SearchHits.js.map +1 -0
- package/dist/presentation/tui/search/SearchOverlay.d.ts +9 -0
- package/dist/presentation/tui/search/SearchOverlay.d.ts.map +1 -0
- package/dist/presentation/tui/search/SearchOverlay.js +80 -0
- package/dist/presentation/tui/search/SearchOverlay.js.map +1 -0
- package/dist/presentation/tui/search/SearchResultDetail.d.ts +10 -0
- package/dist/presentation/tui/search/SearchResultDetail.d.ts.map +1 -0
- package/dist/presentation/tui/search/SearchResultDetail.js +49 -0
- package/dist/presentation/tui/search/SearchResultDetail.js.map +1 -0
- package/dist/presentation/tui/search/SearchResultsView.d.ts +12 -0
- package/dist/presentation/tui/search/SearchResultsView.d.ts.map +1 -0
- package/dist/presentation/tui/search/SearchResultsView.js +62 -0
- package/dist/presentation/tui/search/SearchResultsView.js.map +1 -0
- package/dist/presentation/tui/settings/SettingsScreen.d.ts +3 -0
- package/dist/presentation/tui/settings/SettingsScreen.d.ts.map +1 -0
- package/dist/presentation/tui/settings/SettingsScreen.js +14 -0
- package/dist/presentation/tui/settings/SettingsScreen.js.map +1 -0
- package/dist/presentation/tui/state-reading/StateReaderControllers.d.ts +4 -0
- package/dist/presentation/tui/state-reading/StateReaderControllers.d.ts.map +1 -1
- package/dist/presentation/tui/state-reading/useGlobalSearch.d.ts +7 -0
- package/dist/presentation/tui/state-reading/useGlobalSearch.d.ts.map +1 -0
- package/dist/presentation/tui/state-reading/useGlobalSearch.js +56 -0
- package/dist/presentation/tui/state-reading/useGlobalSearch.js.map +1 -0
- package/dist/presentation/tui/state-reading/useGoalContext.d.ts +4 -0
- package/dist/presentation/tui/state-reading/useGoalContext.d.ts.map +1 -0
- package/dist/presentation/tui/state-reading/useGoalContext.js +17 -0
- package/dist/presentation/tui/state-reading/useGoalContext.js.map +1 -0
- package/dist/presentation/tui/state-reading/useGoalsList.d.ts +1 -1
- package/dist/presentation/tui/state-reading/useGoalsList.d.ts.map +1 -1
- package/dist/presentation/tui/state-reading/useGoalsList.js +1 -1
- package/dist/presentation/tui/state-reading/useGoalsList.js.map +1 -1
- package/dist/presentation/tui/ui-primitives/KeyBadge.d.ts.map +1 -1
- package/dist/presentation/tui/ui-primitives/KeyBadge.js +2 -1
- package/dist/presentation/tui/ui-primitives/KeyBadge.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,39 +3,70 @@ export const GOAL_STATUS_FILTER_ALL = "all";
|
|
|
3
3
|
export const GOAL_STATUS_FILTERS = [
|
|
4
4
|
GOAL_STATUS_FILTER_ALL,
|
|
5
5
|
GoalStatus.TODO,
|
|
6
|
+
GoalStatus.IN_REFINEMENT,
|
|
6
7
|
GoalStatus.REFINED,
|
|
7
8
|
GoalStatus.DOING,
|
|
9
|
+
GoalStatus.PAUSED,
|
|
8
10
|
GoalStatus.BLOCKED,
|
|
11
|
+
GoalStatus.UNBLOCKED,
|
|
12
|
+
GoalStatus.SUBMITTED,
|
|
9
13
|
GoalStatus.INREVIEW,
|
|
14
|
+
GoalStatus.REJECTED,
|
|
15
|
+
GoalStatus.QUALIFIED,
|
|
16
|
+
GoalStatus.CODIFYING,
|
|
10
17
|
GoalStatus.DONE,
|
|
11
18
|
];
|
|
12
19
|
export const GoalsScreenCopy = {
|
|
13
|
-
|
|
14
|
-
|
|
20
|
+
browserTitle: "GOALS//",
|
|
21
|
+
newGoal: "new",
|
|
15
22
|
loadingGoals: "Loading goals",
|
|
23
|
+
loadingContext: "Loading goal context",
|
|
16
24
|
emptyGoals: "No goals available",
|
|
17
25
|
emptyFieldValue: "None",
|
|
18
|
-
|
|
26
|
+
showingLabel: "Showing:",
|
|
27
|
+
stateLineLabel: "State:",
|
|
28
|
+
authoringUnavailable: "Goal registration is unavailable. Restart Jumbo and try again.",
|
|
19
29
|
details: {
|
|
20
|
-
id: "
|
|
21
|
-
title: "Title",
|
|
22
|
-
status: "Status",
|
|
23
|
-
objective: "Objective",
|
|
30
|
+
id: "Id........",
|
|
31
|
+
title: "Title.....",
|
|
32
|
+
status: "Status....",
|
|
33
|
+
objective: "Objective.",
|
|
24
34
|
criteria: "Criteria",
|
|
25
|
-
scopeIn: "
|
|
26
|
-
scopeOut: "
|
|
27
|
-
prerequisites: "
|
|
35
|
+
scopeIn: "In........",
|
|
36
|
+
scopeOut: "Out.......",
|
|
37
|
+
prerequisites: "Prereq....",
|
|
28
38
|
progress: "Progress",
|
|
29
39
|
note: "Note",
|
|
30
40
|
reviewIssues: "Review issues",
|
|
31
41
|
nextGoal: "Next goal",
|
|
42
|
+
version: "Version...",
|
|
43
|
+
createdAt: "Created...",
|
|
44
|
+
updatedAt: "Updated...",
|
|
45
|
+
branch: "Branch....",
|
|
46
|
+
worktree: "Worktree..",
|
|
47
|
+
claimedBy: "Claimed by",
|
|
48
|
+
claimedAt: "Claimed at",
|
|
49
|
+
claimExpiresAt: "Claim exp.",
|
|
50
|
+
decisionContext: "Context...",
|
|
51
|
+
decisionRationale: "Rationale.",
|
|
32
52
|
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
53
|
+
sections: {
|
|
54
|
+
metadata: "META-DATA:",
|
|
55
|
+
objective: "OBJECTIVE:",
|
|
56
|
+
note: "NOTE:",
|
|
57
|
+
reviewIssues: "REVIEW ISSUES:",
|
|
58
|
+
successCriteria: "SUCCESS CRITERIA:",
|
|
59
|
+
currentProgress: "CURRENT PROGRESS:",
|
|
60
|
+
scope: "SCOPE:",
|
|
61
|
+
relatedComponents: "RELATED COMPONENTS",
|
|
62
|
+
relatedDependencies: "RELATED DEPENDENCIES",
|
|
63
|
+
relatedDecisions: "RELATED DECISIONS",
|
|
64
|
+
relatedInvariants: "RELATED INVARIANTS",
|
|
65
|
+
relatedGuidelines: "RELATED GUIDELINES",
|
|
37
66
|
},
|
|
38
67
|
};
|
|
39
|
-
export const
|
|
40
|
-
export const
|
|
68
|
+
export const GOAL_SECTION_PAGE_SIZE = 6;
|
|
69
|
+
export const GOAL_DECISION_PAGE_SIZE = 2;
|
|
70
|
+
export const GOAL_RELATED_DESCRIPTION_MAX_LENGTH = 200;
|
|
71
|
+
export const GOAL_BROWSER_TITLE_MAX_LENGTH = 68;
|
|
41
72
|
//# sourceMappingURL=GoalsScreenConstants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoalsScreenConstants.js","sourceRoot":"","sources":["../../../../src/presentation/tui/goals/GoalsScreenConstants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAE5C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,sBAAsB;IACtB,UAAU,CAAC,IAAI;IACf,UAAU,CAAC,OAAO;IAClB,UAAU,CAAC,KAAK;IAChB,UAAU,CAAC,OAAO;IAClB,UAAU,CAAC,QAAQ;IACnB,UAAU,CAAC,IAAI;CACP,CAAC;AAIX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,
|
|
1
|
+
{"version":3,"file":"GoalsScreenConstants.js","sourceRoot":"","sources":["../../../../src/presentation/tui/goals/GoalsScreenConstants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAEhE,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAE5C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,sBAAsB;IACtB,UAAU,CAAC,IAAI;IACf,UAAU,CAAC,aAAa;IACxB,UAAU,CAAC,OAAO;IAClB,UAAU,CAAC,KAAK;IAChB,UAAU,CAAC,MAAM;IACjB,UAAU,CAAC,OAAO;IAClB,UAAU,CAAC,SAAS;IACpB,UAAU,CAAC,SAAS;IACpB,UAAU,CAAC,QAAQ;IACnB,UAAU,CAAC,QAAQ;IACnB,UAAU,CAAC,SAAS;IACpB,UAAU,CAAC,SAAS;IACpB,UAAU,CAAC,IAAI;CACP,CAAC;AAIX,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY,EAAE,SAAS;IACvB,OAAO,EAAE,KAAK;IACd,YAAY,EAAE,eAAe;IAC7B,cAAc,EAAE,sBAAsB;IACtC,UAAU,EAAE,oBAAoB;IAChC,eAAe,EAAE,MAAM;IACvB,YAAY,EAAE,UAAU;IACxB,cAAc,EAAE,QAAQ;IACxB,oBAAoB,EAClB,gEAAgE;IAClE,OAAO,EAAE;QACP,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,YAAY;QACvB,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,YAAY;QACtB,aAAa,EAAE,YAAY;QAC3B,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,eAAe;QAC7B,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,YAAY;QACrB,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,YAAY;QACvB,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,YAAY;QACvB,cAAc,EAAE,YAAY;QAC5B,eAAe,EAAE,YAAY;QAC7B,iBAAiB,EAAE,YAAY;KAChC;IACD,QAAQ,EAAE;QACR,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,OAAO;QACb,YAAY,EAAE,gBAAgB;QAC9B,eAAe,EAAE,mBAAmB;QACpC,eAAe,EAAE,mBAAmB;QACpC,KAAK,EAAE,QAAQ;QACf,iBAAiB,EAAE,oBAAoB;QACvC,mBAAmB,EAAE,sBAAsB;QAC3C,gBAAgB,EAAE,mBAAmB;QACrC,iBAAiB,EAAE,oBAAoB;QACvC,iBAAiB,EAAE,oBAAoB;KACxC;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACxC,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,CAAC;AACvD,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
2
|
+
interface ComponentsScreenProps {
|
|
3
|
+
readonly shortcutsEnabled?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function ComponentsScreen({ shortcutsEnabled }?: ComponentsScreenProps): React.ReactElement;
|
|
6
|
+
export {};
|
|
3
7
|
//# sourceMappingURL=ComponentsScreen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentsScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/components/ComponentsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ComponentsScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/components/ComponentsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,gBAAuB,EAAE,GAAE,qBAA0B,GACtD,KAAK,CAAC,YAAY,CAapB"}
|
|
@@ -3,11 +3,10 @@ import { MemoryEntityScreen } from "../entity-browser/MemoryEntityScreen.js";
|
|
|
3
3
|
import { useComponentsList } from "../../state-reading/useComponentsList.js";
|
|
4
4
|
const COMPONENTS_SCREEN_COPY = {
|
|
5
5
|
title: "Components",
|
|
6
|
-
subtitle: "Focused component memory list and selected component detail",
|
|
7
6
|
};
|
|
8
|
-
export function ComponentsScreen() {
|
|
7
|
+
export function ComponentsScreen({ shortcutsEnabled = true } = {}) {
|
|
9
8
|
const componentsList = useComponentsList();
|
|
10
|
-
return (React.createElement(MemoryEntityScreen, { entityType: "component", title: COMPONENTS_SCREEN_COPY.title,
|
|
9
|
+
return (React.createElement(MemoryEntityScreen, { entityType: "component", title: COMPONENTS_SCREEN_COPY.title, rows: (componentsList.data?.components ?? []).map(toComponentEntityRow), loading: componentsList.loading, error: componentsList.error, shortcutsEnabled: shortcutsEnabled }));
|
|
11
10
|
}
|
|
12
11
|
function toComponentEntityRow(component) {
|
|
13
12
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentsScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/components/ComponentsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,MAAM,sBAAsB,GAAG;IAC7B,KAAK,EAAE,YAAY;
|
|
1
|
+
{"version":3,"file":"ComponentsScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/components/ComponentsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAG7E,MAAM,sBAAsB,GAAG;IAC7B,KAAK,EAAE,YAAY;CACX,CAAC;AAMX,MAAM,UAAU,gBAAgB,CAC9B,EAAE,gBAAgB,GAAG,IAAI,KAA4B,EAAE;IAEvD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,OAAO,CACL,oBAAC,kBAAkB,IACjB,UAAU,EAAC,WAAW,EACtB,KAAK,EAAE,sBAAsB,CAAC,KAAK,EACnC,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,EACvE,OAAO,EAAE,cAAc,CAAC,OAAO,EAC/B,KAAK,EAAE,cAAc,CAAC,KAAK,EAC3B,gBAAgB,EAAE,gBAAgB,GAClC,CACH,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAwB;IACpD,OAAO;QACL,EAAE,EAAE,SAAS,CAAC,WAAW;QACzB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,cAAc,EAAE,SAAS,CAAC,cAAc;KACzC,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
2
|
+
interface DecisionsScreenProps {
|
|
3
|
+
readonly shortcutsEnabled?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function DecisionsScreen({ shortcutsEnabled }?: DecisionsScreenProps): React.ReactElement;
|
|
6
|
+
export {};
|
|
3
7
|
//# sourceMappingURL=DecisionsScreen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecisionsScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/decisions/DecisionsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DecisionsScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/decisions/DecisionsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,wBAAgB,eAAe,CAC7B,EAAE,gBAAuB,EAAE,GAAE,oBAAyB,GACrD,KAAK,CAAC,YAAY,CAapB"}
|
|
@@ -3,11 +3,10 @@ import { MemoryEntityScreen } from "../entity-browser/MemoryEntityScreen.js";
|
|
|
3
3
|
import { useDecisionsList } from "../../state-reading/useDecisionsList.js";
|
|
4
4
|
const DECISIONS_SCREEN_COPY = {
|
|
5
5
|
title: "Decisions",
|
|
6
|
-
subtitle: "Focused decision memory list and selected decision detail",
|
|
7
6
|
};
|
|
8
|
-
export function DecisionsScreen() {
|
|
7
|
+
export function DecisionsScreen({ shortcutsEnabled = true } = {}) {
|
|
9
8
|
const decisionsList = useDecisionsList();
|
|
10
|
-
return (React.createElement(MemoryEntityScreen, { entityType: "decision", title: DECISIONS_SCREEN_COPY.title,
|
|
9
|
+
return (React.createElement(MemoryEntityScreen, { entityType: "decision", title: DECISIONS_SCREEN_COPY.title, rows: (decisionsList.data?.decisions ?? []).map(toDecisionEntityRow), loading: decisionsList.loading, error: decisionsList.error, shortcutsEnabled: shortcutsEnabled }));
|
|
11
10
|
}
|
|
12
11
|
function toDecisionEntityRow(decision) {
|
|
13
12
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecisionsScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/decisions/DecisionsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAG3E,MAAM,qBAAqB,GAAG;IAC5B,KAAK,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"DecisionsScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/decisions/DecisionsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAG3E,MAAM,qBAAqB,GAAG;IAC5B,KAAK,EAAE,WAAW;CACV,CAAC;AAMX,MAAM,UAAU,eAAe,CAC7B,EAAE,gBAAgB,GAAG,IAAI,KAA2B,EAAE;IAEtD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,OAAO,CACL,oBAAC,kBAAkB,IACjB,UAAU,EAAC,UAAU,EACrB,KAAK,EAAE,qBAAqB,CAAC,KAAK,EAClC,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,EACpE,OAAO,EAAE,aAAa,CAAC,OAAO,EAC9B,KAAK,EAAE,aAAa,CAAC,KAAK,EAC1B,gBAAgB,EAAE,gBAAgB,GAClC,CACH,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAsB;IACjD,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,UAAU;QACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,EAAE;QACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,EAAE;KAC1C,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
2
|
+
interface DependenciesScreenProps {
|
|
3
|
+
readonly shortcutsEnabled?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function DependenciesScreen({ shortcutsEnabled }?: DependenciesScreenProps): React.ReactElement;
|
|
6
|
+
export {};
|
|
3
7
|
//# sourceMappingURL=DependenciesScreen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DependenciesScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/dependencies/DependenciesScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DependenciesScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/dependencies/DependenciesScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,wBAAgB,kBAAkB,CAChC,EAAE,gBAAuB,EAAE,GAAE,uBAA4B,GACxD,KAAK,CAAC,YAAY,CAapB"}
|
|
@@ -3,11 +3,10 @@ import { MemoryEntityScreen } from "../entity-browser/MemoryEntityScreen.js";
|
|
|
3
3
|
import { useDependenciesList } from "../../state-reading/useDependenciesList.js";
|
|
4
4
|
const DEPENDENCIES_SCREEN_COPY = {
|
|
5
5
|
title: "Dependencies",
|
|
6
|
-
subtitle: "Focused dependency memory list and selected dependency detail",
|
|
7
6
|
};
|
|
8
|
-
export function DependenciesScreen() {
|
|
7
|
+
export function DependenciesScreen({ shortcutsEnabled = true } = {}) {
|
|
9
8
|
const dependenciesList = useDependenciesList();
|
|
10
|
-
return (React.createElement(MemoryEntityScreen, { entityType: "dependency", title: DEPENDENCIES_SCREEN_COPY.title,
|
|
9
|
+
return (React.createElement(MemoryEntityScreen, { entityType: "dependency", title: DEPENDENCIES_SCREEN_COPY.title, rows: (dependenciesList.data?.dependencies ?? []).map(toDependencyEntityRow), loading: dependenciesList.loading, error: dependenciesList.error, shortcutsEnabled: shortcutsEnabled }));
|
|
11
10
|
}
|
|
12
11
|
function toDependencyEntityRow(dependency) {
|
|
13
12
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DependenciesScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/dependencies/DependenciesScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAGjF,MAAM,wBAAwB,GAAG;IAC/B,KAAK,EAAE,cAAc;
|
|
1
|
+
{"version":3,"file":"DependenciesScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/dependencies/DependenciesScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAGjF,MAAM,wBAAwB,GAAG;IAC/B,KAAK,EAAE,cAAc;CACb,CAAC;AAMX,MAAM,UAAU,kBAAkB,CAChC,EAAE,gBAAgB,GAAG,IAAI,KAA8B,EAAE;IAEzD,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAE/C,OAAO,CACL,oBAAC,kBAAkB,IACjB,UAAU,EAAC,YAAY,EACvB,KAAK,EAAE,wBAAwB,CAAC,KAAK,EACrC,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAC5E,OAAO,EAAE,gBAAgB,CAAC,OAAO,EACjC,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAC7B,gBAAgB,EAAE,gBAAgB,GAClC,CACH,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,UAA0B;IACvD,OAAO;QACL,EAAE,EAAE,UAAU,CAAC,YAAY;QAC3B,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,IAAI,EAAE;QACrD,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE;QACnC,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE;KACpC,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type {
|
|
2
|
+
import type { MemoryEntityRow, MemoryEntityType } from "./MemoryEntityShapes.js";
|
|
3
3
|
interface EntityDetailViewProps {
|
|
4
4
|
readonly entityType: MemoryEntityType;
|
|
5
|
-
readonly entity:
|
|
6
|
-
readonly
|
|
5
|
+
readonly entity: MemoryEntityRow;
|
|
6
|
+
readonly heading: string;
|
|
7
7
|
}
|
|
8
|
-
export declare function EntityDetailView({ entityType, entity,
|
|
8
|
+
export declare function EntityDetailView({ entityType, entity, heading, }: EntityDetailViewProps): React.ReactElement;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=EntityDetailView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityDetailView.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/EntityDetailView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EntityDetailView.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/EntityDetailView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAMV,eAAe,EACf,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAgCjC,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAOD,wBAAgB,gBAAgB,CAAC,EAC/B,UAAU,EACV,MAAM,EACN,OAAO,GACR,EAAE,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAkC5C"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { Box, Text } from "ink";
|
|
3
|
+
import { SemanticColors, TuiGlyphs } from "../../../shared/DesignTokens.js";
|
|
4
|
+
const DETAIL_LABEL_WIDTH = 15;
|
|
4
5
|
const ENTITY_DETAIL_VIEW_COPY = {
|
|
5
|
-
|
|
6
|
-
decision: "
|
|
7
|
-
invariant: "
|
|
8
|
-
component: "
|
|
9
|
-
dependency: "
|
|
10
|
-
guideline: "
|
|
6
|
+
headlinePrefixes: {
|
|
7
|
+
decision: "DECISION:",
|
|
8
|
+
invariant: "INVARIANT:",
|
|
9
|
+
component: "COMPONENT:",
|
|
10
|
+
dependency: "DEPENDENCY:",
|
|
11
|
+
guideline: "GUIDELINE:",
|
|
11
12
|
},
|
|
13
|
+
detailsHeading: "DETAILS:",
|
|
14
|
+
emptyFieldValue: "None",
|
|
12
15
|
labels: {
|
|
13
|
-
id: "
|
|
14
|
-
title: "Title",
|
|
16
|
+
id: "Id",
|
|
15
17
|
context: "Context",
|
|
16
18
|
rationale: "Rationale",
|
|
17
19
|
alternatives: "Alternatives",
|
|
18
20
|
consequences: "Consequences",
|
|
19
21
|
description: "Description",
|
|
20
|
-
name: "Name",
|
|
21
22
|
type: "Type",
|
|
22
23
|
responsibility: "Responsibility",
|
|
23
24
|
ecosystem: "Ecosystem",
|
|
@@ -29,15 +30,27 @@ const ENTITY_DETAIL_VIEW_COPY = {
|
|
|
29
30
|
examples: "Examples",
|
|
30
31
|
},
|
|
31
32
|
};
|
|
32
|
-
export function EntityDetailView({ entityType, entity,
|
|
33
|
+
export function EntityDetailView({ entityType, entity, heading, }) {
|
|
33
34
|
const entries = buildEntries(entityType, entity);
|
|
34
|
-
return (React.createElement(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
35
|
+
return (React.createElement(Box, { flexDirection: "column" },
|
|
36
|
+
React.createElement(Box, null,
|
|
37
|
+
React.createElement(Text, { color: SemanticColors.headline },
|
|
38
|
+
ENTITY_DETAIL_VIEW_COPY.headlinePrefixes[entityType],
|
|
39
|
+
" "),
|
|
40
|
+
React.createElement(Text, { color: SemanticColors.headline }, heading)),
|
|
41
|
+
React.createElement(Box, { marginTop: 1 },
|
|
42
|
+
React.createElement(Text, { color: SemanticColors.h2, bold: true }, ENTITY_DETAIL_VIEW_COPY.detailsHeading)),
|
|
43
|
+
React.createElement(Box, { flexDirection: "column" }, entries.map((entry, entryIndex) => (React.createElement(Box, { key: entry.label, marginTop: entryIndex > 0 ? 1 : 0 },
|
|
44
|
+
React.createElement(Box, { flexShrink: 0 },
|
|
45
|
+
React.createElement(Text, { color: SemanticColors.label },
|
|
46
|
+
padLabel(entry.label),
|
|
47
|
+
" ")),
|
|
48
|
+
React.createElement(Text, { color: SemanticColors.primary }, entry.value.length === 0
|
|
49
|
+
? ENTITY_DETAIL_VIEW_COPY.emptyFieldValue
|
|
50
|
+
: entry.value)))))));
|
|
38
51
|
}
|
|
39
|
-
function
|
|
40
|
-
return
|
|
52
|
+
function padLabel(label) {
|
|
53
|
+
return label.padEnd(DETAIL_LABEL_WIDTH, TuiGlyphs.dot);
|
|
41
54
|
}
|
|
42
55
|
function buildEntries(entityType, entity) {
|
|
43
56
|
switch (entityType) {
|
|
@@ -45,12 +58,11 @@ function buildEntries(entityType, entity) {
|
|
|
45
58
|
const decision = entity;
|
|
46
59
|
return [
|
|
47
60
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.id, value: decision.id },
|
|
48
|
-
{ label: ENTITY_DETAIL_VIEW_COPY.labels.title, value: decision.title },
|
|
49
61
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.context, value: decision.context },
|
|
50
62
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.rationale, value: decision.rationale },
|
|
51
63
|
{
|
|
52
64
|
label: ENTITY_DETAIL_VIEW_COPY.labels.alternatives,
|
|
53
|
-
value: decision.alternatives.join(
|
|
65
|
+
value: decision.alternatives.join(` ${TuiGlyphs.bullet} `),
|
|
54
66
|
},
|
|
55
67
|
{
|
|
56
68
|
label: ENTITY_DETAIL_VIEW_COPY.labels.consequences,
|
|
@@ -62,7 +74,6 @@ function buildEntries(entityType, entity) {
|
|
|
62
74
|
const invariant = entity;
|
|
63
75
|
return [
|
|
64
76
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.id, value: invariant.id },
|
|
65
|
-
{ label: ENTITY_DETAIL_VIEW_COPY.labels.title, value: invariant.title },
|
|
66
77
|
{
|
|
67
78
|
label: ENTITY_DETAIL_VIEW_COPY.labels.description,
|
|
68
79
|
value: invariant.description,
|
|
@@ -77,7 +88,6 @@ function buildEntries(entityType, entity) {
|
|
|
77
88
|
const component = entity;
|
|
78
89
|
return [
|
|
79
90
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.id, value: component.id },
|
|
80
|
-
{ label: ENTITY_DETAIL_VIEW_COPY.labels.name, value: component.name },
|
|
81
91
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.type, value: component.type },
|
|
82
92
|
{
|
|
83
93
|
label: ENTITY_DETAIL_VIEW_COPY.labels.description,
|
|
@@ -93,7 +103,6 @@ function buildEntries(entityType, entity) {
|
|
|
93
103
|
const dependency = entity;
|
|
94
104
|
return [
|
|
95
105
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.id, value: dependency.id },
|
|
96
|
-
{ label: ENTITY_DETAIL_VIEW_COPY.labels.name, value: dependency.name },
|
|
97
106
|
{
|
|
98
107
|
label: ENTITY_DETAIL_VIEW_COPY.labels.ecosystem,
|
|
99
108
|
value: dependency.ecosystem,
|
|
@@ -117,7 +126,6 @@ function buildEntries(entityType, entity) {
|
|
|
117
126
|
const guideline = entity;
|
|
118
127
|
return [
|
|
119
128
|
{ label: ENTITY_DETAIL_VIEW_COPY.labels.id, value: guideline.id },
|
|
120
|
-
{ label: ENTITY_DETAIL_VIEW_COPY.labels.title, value: guideline.title },
|
|
121
129
|
{
|
|
122
130
|
label: ENTITY_DETAIL_VIEW_COPY.labels.category,
|
|
123
131
|
value: guideline.category,
|
|
@@ -132,7 +140,7 @@ function buildEntries(entityType, entity) {
|
|
|
132
140
|
},
|
|
133
141
|
{
|
|
134
142
|
label: ENTITY_DETAIL_VIEW_COPY.labels.examples,
|
|
135
|
-
value: guideline.examples.join(
|
|
143
|
+
value: guideline.examples.join(` ${TuiGlyphs.bullet} `),
|
|
136
144
|
},
|
|
137
145
|
];
|
|
138
146
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityDetailView.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/EntityDetailView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"EntityDetailView.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/EntityDetailView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,11 @@ import type { MemoryEntityRow, MemoryEntityType } from "./MemoryEntityShapes.js"
|
|
|
3
3
|
interface MemoryEntityScreenProps {
|
|
4
4
|
readonly entityType: MemoryEntityType;
|
|
5
5
|
readonly title: string;
|
|
6
|
-
readonly subtitle: string;
|
|
7
6
|
readonly rows: readonly MemoryEntityRow[];
|
|
8
7
|
readonly loading?: boolean;
|
|
9
8
|
readonly error?: Error | null;
|
|
9
|
+
readonly shortcutsEnabled?: boolean;
|
|
10
10
|
}
|
|
11
|
-
export declare function MemoryEntityScreen({ entityType, title,
|
|
11
|
+
export declare function MemoryEntityScreen({ entityType, title, rows, loading, error, shortcutsEnabled, }: MemoryEntityScreenProps): React.ReactElement;
|
|
12
12
|
export {};
|
|
13
13
|
//# sourceMappingURL=MemoryEntityScreen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryEntityScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/MemoryEntityScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"MemoryEntityScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/MemoryEntityScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAMnD,OAAO,KAAK,EAMV,eAAe,EACf,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAUjC,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,eAAe,EAAE,CAAC;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,KAAK,EACL,IAAI,EACJ,OAAe,EACf,KAAY,EACZ,gBAAuB,GACxB,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CA+E9C"}
|
|
@@ -1,94 +1,63 @@
|
|
|
1
|
-
import React, { useState } from "react";
|
|
1
|
+
import React, { useEffect, useState } from "react";
|
|
2
2
|
import { Box, Text, useInput } from "ink";
|
|
3
3
|
import { SemanticColors } from "../../../shared/DesignTokens.js";
|
|
4
4
|
import { KeyBadge } from "../../ui-primitives/KeyBadge.js";
|
|
5
|
-
import {
|
|
6
|
-
import { EntityColumn } from "./EntityColumn.js";
|
|
5
|
+
import { HorizontalRule } from "../../ui-primitives/HorizontalRule.js";
|
|
7
6
|
import { EntityDetailView } from "./EntityDetailView.js";
|
|
8
|
-
const
|
|
9
|
-
const DETAIL_WIDTH = 78;
|
|
10
|
-
const LOADING_ENTRY_ID = "loading";
|
|
7
|
+
const EMPTY_POSITION_INDICATOR = "0/0";
|
|
11
8
|
const MEMORY_ENTITY_SCREEN_COPY = {
|
|
12
|
-
|
|
9
|
+
showingLabel: "Showing:",
|
|
10
|
+
scrollBadge: "↑↓",
|
|
13
11
|
loadingPrefix: "Loading",
|
|
14
|
-
|
|
15
|
-
eventReplayTitle: "Event Replay",
|
|
16
|
-
actionHintsTitle: "Action Hints",
|
|
17
|
-
currentStatePrefix: "Current state",
|
|
18
|
-
eventLabel: "event",
|
|
19
|
-
eventReplayEvents: [
|
|
20
|
-
"Loaded entity read model",
|
|
21
|
-
"Selected entity row",
|
|
22
|
-
"Rendered projected detail view",
|
|
23
|
-
],
|
|
24
|
-
actionHints: {
|
|
25
|
-
select: "select",
|
|
26
|
-
previousEvent: "previous event",
|
|
27
|
-
nextEvent: "next event",
|
|
28
|
-
},
|
|
12
|
+
emptySuffix: "available",
|
|
29
13
|
};
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
];
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
14
|
+
export function MemoryEntityScreen({ entityType, title, rows, loading = false, error = null, shortcutsEnabled = true, }) {
|
|
15
|
+
const [focusedIndex, setFocusedIndex] = useState(0);
|
|
16
|
+
const focusedEntity = rows[focusedIndex] ?? rows[0];
|
|
17
|
+
const positionIndicator = focusedEntity === undefined
|
|
18
|
+
? EMPTY_POSITION_INDICATOR
|
|
19
|
+
: `${Math.min(focusedIndex, rows.length - 1) + 1}/${rows.length}`;
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
setFocusedIndex((currentIndex) => {
|
|
22
|
+
if (rows.length === 0) {
|
|
23
|
+
return 0;
|
|
24
|
+
}
|
|
25
|
+
return Math.min(currentIndex, rows.length - 1);
|
|
26
|
+
});
|
|
27
|
+
}, [rows.length]);
|
|
28
|
+
useInput((_input, key) => {
|
|
29
|
+
if (rows.length === 0) {
|
|
40
30
|
return;
|
|
41
31
|
}
|
|
42
|
-
if (key.upArrow
|
|
43
|
-
|
|
32
|
+
if (key.upArrow) {
|
|
33
|
+
setFocusedIndex((currentIndex) => wrapIndex(currentIndex - 1, rows.length));
|
|
44
34
|
return;
|
|
45
35
|
}
|
|
46
|
-
if (
|
|
47
|
-
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
if (input === "[") {
|
|
51
|
-
const nextEventIndex = eventIndex === 0 ? MEMORY_REPLAY_EVENTS.length - 1 : eventIndex - 1;
|
|
52
|
-
setEventIndex(nextEventIndex);
|
|
36
|
+
if (key.downArrow) {
|
|
37
|
+
setFocusedIndex((currentIndex) => wrapIndex(currentIndex + 1, rows.length));
|
|
53
38
|
}
|
|
54
|
-
});
|
|
55
|
-
return (React.createElement(Box, { flexDirection: "column",
|
|
56
|
-
React.createElement(Box, { flexDirection: "column" },
|
|
57
|
-
React.createElement(Text, { color: SemanticColors.
|
|
58
|
-
React.createElement(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
React.createElement(Text, { color: SemanticColors.primary },
|
|
77
|
-
MEMORY_ENTITY_SCREEN_COPY.currentStatePrefix,
|
|
78
|
-
":",
|
|
79
|
-
" ",
|
|
80
|
-
MEMORY_ENTITY_SCREEN_COPY.eventLabel,
|
|
81
|
-
" ",
|
|
82
|
-
eventIndex + 1,
|
|
83
|
-
" of",
|
|
84
|
-
" ",
|
|
85
|
-
MEMORY_REPLAY_EVENTS.length),
|
|
86
|
-
React.createElement(Text, { color: SemanticColors.secondary }, MEMORY_REPLAY_EVENTS[eventIndex]))),
|
|
87
|
-
React.createElement(Panel, { title: MEMORY_ENTITY_SCREEN_COPY.actionHintsTitle },
|
|
88
|
-
React.createElement(Box, { gap: 2 },
|
|
89
|
-
React.createElement(KeyBadge, { char: "\u2191\u2193", label: MEMORY_ENTITY_SCREEN_COPY.actionHints.select }),
|
|
90
|
-
React.createElement(KeyBadge, { char: "[", label: MEMORY_ENTITY_SCREEN_COPY.actionHints.previousEvent }),
|
|
91
|
-
React.createElement(KeyBadge, { char: "]", label: MEMORY_ENTITY_SCREEN_COPY.actionHints.nextEvent })))));
|
|
39
|
+
}, { isActive: shortcutsEnabled });
|
|
40
|
+
return (React.createElement(Box, { flexDirection: "column", paddingTop: 1 },
|
|
41
|
+
React.createElement(Box, { flexDirection: "column", paddingX: 1 },
|
|
42
|
+
React.createElement(Text, { color: SemanticColors.h2, bold: true }, title),
|
|
43
|
+
React.createElement(Box, null,
|
|
44
|
+
React.createElement(Text, { color: SemanticColors.label },
|
|
45
|
+
MEMORY_ENTITY_SCREEN_COPY.showingLabel,
|
|
46
|
+
" "),
|
|
47
|
+
React.createElement(Text, { color: SemanticColors.primary }, positionIndicator),
|
|
48
|
+
React.createElement(KeyBadge, { char: MEMORY_ENTITY_SCREEN_COPY.scrollBadge }))),
|
|
49
|
+
React.createElement(HorizontalRule, { color: SemanticColors.label }),
|
|
50
|
+
React.createElement(Box, { flexDirection: "column", paddingX: 1 }, error !== null ? (React.createElement(Text, { color: SemanticColors.error }, error.message)) : loading && focusedEntity === undefined ? (React.createElement(Text, { color: SemanticColors.muted },
|
|
51
|
+
MEMORY_ENTITY_SCREEN_COPY.loadingPrefix,
|
|
52
|
+
" ",
|
|
53
|
+
title.toLowerCase())) : focusedEntity === undefined ? (React.createElement(Text, { color: SemanticColors.muted, italic: true },
|
|
54
|
+
"No ",
|
|
55
|
+
title.toLowerCase(),
|
|
56
|
+
" ",
|
|
57
|
+
MEMORY_ENTITY_SCREEN_COPY.emptySuffix)) : (React.createElement(EntityDetailView, { entityType: entityType, entity: focusedEntity, heading: labelForRow(entityType, focusedEntity) })))));
|
|
58
|
+
}
|
|
59
|
+
function wrapIndex(index, itemCount) {
|
|
60
|
+
return (index + itemCount) % itemCount;
|
|
92
61
|
}
|
|
93
62
|
function labelForRow(entityType, row) {
|
|
94
63
|
switch (entityType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryEntityScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/MemoryEntityScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryEntityScreen.js","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/entity-browser/MemoryEntityScreen.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
2
|
+
interface GuidelinesScreenProps {
|
|
3
|
+
readonly shortcutsEnabled?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function GuidelinesScreen({ shortcutsEnabled }?: GuidelinesScreenProps): React.ReactElement;
|
|
6
|
+
export {};
|
|
3
7
|
//# sourceMappingURL=GuidelinesScreen.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GuidelinesScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/guidelines/GuidelinesScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"GuidelinesScreen.d.ts","sourceRoot":"","sources":["../../../../../src/presentation/tui/memory/guidelines/GuidelinesScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,wBAAgB,gBAAgB,CAC9B,EAAE,gBAAuB,EAAE,GAAE,qBAA0B,GACtD,KAAK,CAAC,YAAY,CAapB"}
|