@shivaedev/work-board 0.13.0 → 0.14.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/CHANGELOG.md +126 -0
- package/README.md +80 -36
- package/assets/agent.js +17 -17
- package/assets/native.js +25 -25
- package/assets/react.css +1 -1
- package/assets/react.js +36 -34
- package/dist/browser/Navigation.d.ts +16 -0
- package/dist/browser/Navigation.d.ts.map +1 -0
- package/dist/browser/Navigation.js +7 -0
- package/dist/browser/Navigation.js.map +1 -0
- package/dist/browser/document/ReadingContext.d.ts +2 -0
- package/dist/browser/document/ReadingContext.d.ts.map +1 -1
- package/dist/browser/document/ReadingContext.js +7 -1
- package/dist/browser/document/ReadingContext.js.map +1 -1
- package/dist/browser/document/schema.d.ts +21 -1
- package/dist/browser/document/schema.d.ts.map +1 -1
- package/dist/browser/document/schema.js +5 -0
- package/dist/browser/document/schema.js.map +1 -1
- package/dist/browser/document/sourceGroups.d.ts +14 -0
- package/dist/browser/document/sourceGroups.d.ts.map +1 -0
- package/dist/browser/document/sourceGroups.js +43 -0
- package/dist/browser/document/sourceGroups.js.map +1 -0
- package/dist/browser/navigation/library.d.ts +36 -0
- package/dist/browser/navigation/library.d.ts.map +1 -0
- package/dist/browser/navigation/library.js +23 -0
- package/dist/browser/navigation/library.js.map +1 -0
- package/dist/browser/responses/cardContext.d.ts +10 -0
- package/dist/browser/responses/cardContext.d.ts.map +1 -0
- package/dist/browser/responses/cardContext.js +47 -0
- package/dist/browser/responses/cardContext.js.map +1 -0
- package/dist/browser/responses/reasonMarkdown.d.ts +2 -0
- package/dist/browser/responses/reasonMarkdown.d.ts.map +1 -0
- package/dist/browser/responses/reasonMarkdown.js +6 -0
- package/dist/browser/responses/reasonMarkdown.js.map +1 -0
- package/dist/browser/views/FleetItemsProjection.d.ts +220 -0
- package/dist/browser/views/FleetItemsProjection.d.ts.map +1 -0
- package/dist/browser/views/FleetItemsProjection.js +13 -0
- package/dist/browser/views/FleetItemsProjection.js.map +1 -0
- package/dist/browser/views/GoalsProjection.d.ts +157 -0
- package/dist/browser/views/GoalsProjection.d.ts.map +1 -0
- package/dist/browser/views/GoalsProjection.js +22 -0
- package/dist/browser/views/GoalsProjection.js.map +1 -0
- package/dist/browser/views/ResultProjection.d.ts +14 -1
- package/dist/browser/views/ResultProjection.d.ts.map +1 -1
- package/dist/browser/views/goalWorkState.d.ts +6 -0
- package/dist/browser/views/goalWorkState.d.ts.map +1 -0
- package/dist/browser/views/goalWorkState.js +15 -0
- package/dist/browser/views/goalWorkState.js.map +1 -0
- package/dist/browser/views/now.d.ts +13 -0
- package/dist/browser/views/now.d.ts.map +1 -0
- package/dist/browser/views/now.js +82 -0
- package/dist/browser/views/now.js.map +1 -0
- package/dist/browser/views/remaining.d.ts +21 -1
- package/dist/browser/views/remaining.d.ts.map +1 -1
- package/dist/browser/views/schema.d.ts +180 -26
- package/dist/browser/views/schema.d.ts.map +1 -1
- package/dist/browser/views/schema.js +19 -29
- package/dist/browser/views/schema.js.map +1 -1
- package/dist/browser/views/state.d.ts +1 -1
- package/dist/browser/views/state.js +2 -2
- package/dist/browser/views/state.js.map +1 -1
- package/dist/client/document/Mermaid.d.ts.map +1 -1
- package/dist/client/document/Mermaid.js +4 -3
- package/dist/client/document/Mermaid.js.map +1 -1
- package/dist/client/document/View.d.ts +4 -1
- package/dist/client/document/View.d.ts.map +1 -1
- package/dist/client/document/View.js +18 -8
- package/dist/client/document/View.js.map +1 -1
- package/dist/client/document/boardLayout.d.ts +1 -1
- package/dist/client/document/boardLayout.d.ts.map +1 -1
- package/dist/client/document/boardLayout.js +3 -3
- package/dist/client/document/boardLayout.js.map +1 -1
- package/dist/client/document/layout.js +1 -1
- package/dist/client/document/layout.js.map +1 -1
- package/dist/client/document/mermaidColor.d.ts +2 -0
- package/dist/client/document/mermaidColor.d.ts.map +1 -0
- package/dist/client/document/mermaidColor.js +20 -0
- package/dist/client/document/mermaidColor.js.map +1 -0
- package/dist/client/formFocus.d.ts +1 -1
- package/dist/client/formFocus.d.ts.map +1 -1
- package/dist/client/formFocus.js +1 -2
- package/dist/client/formFocus.js.map +1 -1
- package/dist/client/page/routeQuery.d.ts +31 -1
- package/dist/client/page/routeQuery.d.ts.map +1 -1
- package/dist/client/page/routeQuery.js +3 -0
- package/dist/client/page/routeQuery.js.map +1 -1
- package/dist/client/react/Age.d.ts.map +1 -1
- package/dist/client/react/Age.js +3 -1
- package/dist/client/react/Age.js.map +1 -1
- package/dist/client/react/AnswerContext.d.ts +5 -0
- package/dist/client/react/AnswerContext.d.ts.map +1 -0
- package/dist/client/react/AnswerContext.js +8 -0
- package/dist/client/react/AnswerContext.js.map +1 -0
- package/dist/client/react/AnswerForm.d.ts.map +1 -1
- package/dist/client/react/AnswerForm.js +19 -6
- package/dist/client/react/AnswerForm.js.map +1 -1
- package/dist/client/react/AnswerMore.d.ts +10 -0
- package/dist/client/react/AnswerMore.d.ts.map +1 -0
- package/dist/client/react/AnswerMore.js +7 -0
- package/dist/client/react/AnswerMore.js.map +1 -0
- package/dist/client/react/AnswerPanel.d.ts +1 -1
- package/dist/client/react/AnswerPanel.d.ts.map +1 -1
- package/dist/client/react/AnswerPanel.js +21 -12
- package/dist/client/react/AnswerPanel.js.map +1 -1
- package/dist/client/react/AnswerPrompts.d.ts +1 -0
- package/dist/client/react/AnswerPrompts.d.ts.map +1 -1
- package/dist/client/react/AnswerPrompts.js +6 -4
- package/dist/client/react/AnswerPrompts.js.map +1 -1
- package/dist/client/react/BoardMain.d.ts +1 -1
- package/dist/client/react/BoardMain.d.ts.map +1 -1
- package/dist/client/react/BoardShell.d.ts +0 -1
- package/dist/client/react/BoardShell.d.ts.map +1 -1
- package/dist/client/react/BoardShell.js +12 -18
- package/dist/client/react/BoardShell.js.map +1 -1
- package/dist/client/react/DocumentAttention.d.ts.map +1 -1
- package/dist/client/react/DocumentAttention.js +6 -2
- package/dist/client/react/DocumentAttention.js.map +1 -1
- package/dist/client/react/DocumentClaims.d.ts.map +1 -1
- package/dist/client/react/DocumentClaims.js +3 -3
- package/dist/client/react/DocumentClaims.js.map +1 -1
- package/dist/client/react/DocumentContext.d.ts.map +1 -1
- package/dist/client/react/DocumentContext.js +21 -13
- package/dist/client/react/DocumentContext.js.map +1 -1
- package/dist/client/react/DocumentCriteria.d.ts +5 -0
- package/dist/client/react/DocumentCriteria.d.ts.map +1 -1
- package/dist/client/react/DocumentCriteria.js +11 -9
- package/dist/client/react/DocumentCriteria.js.map +1 -1
- package/dist/client/react/DocumentEvidence.d.ts.map +1 -1
- package/dist/client/react/DocumentEvidence.js +1 -2
- package/dist/client/react/DocumentEvidence.js.map +1 -1
- package/dist/client/react/DocumentMain.js +7 -4
- package/dist/client/react/DocumentMain.js.map +1 -1
- package/dist/client/react/DocumentMetadata.d.ts.map +1 -1
- package/dist/client/react/DocumentMetadata.js +5 -4
- package/dist/client/react/DocumentMetadata.js.map +1 -1
- package/dist/client/react/DocumentPage.d.ts +3 -1
- package/dist/client/react/DocumentPage.d.ts.map +1 -1
- package/dist/client/react/DocumentPage.js +8 -9
- package/dist/client/react/DocumentPage.js.map +1 -1
- package/dist/client/react/DocumentRecords.js +1 -1
- package/dist/client/react/DocumentRecords.js.map +1 -1
- package/dist/client/react/DocumentRelationships.d.ts +5 -0
- package/dist/client/react/DocumentRelationships.d.ts.map +1 -0
- package/dist/client/react/DocumentRelationships.js +26 -0
- package/dist/client/react/DocumentRelationships.js.map +1 -0
- package/dist/client/react/DocumentSource.d.ts +5 -0
- package/dist/client/react/DocumentSource.d.ts.map +1 -0
- package/dist/client/react/DocumentSource.js +9 -0
- package/dist/client/react/DocumentSource.js.map +1 -0
- package/dist/client/react/DocumentWorkMetadata.d.ts.map +1 -1
- package/dist/client/react/DocumentWorkMetadata.js +4 -23
- package/dist/client/react/DocumentWorkMetadata.js.map +1 -1
- package/dist/client/react/Favorite.js +1 -1
- package/dist/client/react/Favorite.js.map +1 -1
- package/dist/client/react/FleetItemsContext.d.ts +194 -0
- package/dist/client/react/FleetItemsContext.d.ts.map +1 -0
- package/dist/client/react/FleetItemsContext.js +3 -0
- package/dist/client/react/FleetItemsContext.js.map +1 -0
- package/dist/client/react/FleetMain.d.ts +4 -0
- package/dist/client/react/FleetMain.d.ts.map +1 -0
- package/dist/client/react/FleetMain.js +10 -0
- package/dist/client/react/FleetMain.js.map +1 -0
- package/dist/client/react/FormField.d.ts +2 -1
- package/dist/client/react/FormField.d.ts.map +1 -1
- package/dist/client/react/FormField.js +5 -3
- package/dist/client/react/FormField.js.map +1 -1
- package/dist/client/react/GoalCriteria.d.ts +11 -0
- package/dist/client/react/GoalCriteria.d.ts.map +1 -0
- package/dist/client/react/GoalCriteria.js +30 -0
- package/dist/client/react/GoalCriteria.js.map +1 -0
- package/dist/client/react/GoalOverviewCard.d.ts +5 -0
- package/dist/client/react/GoalOverviewCard.d.ts.map +1 -0
- package/dist/client/react/GoalOverviewCard.js +10 -0
- package/dist/client/react/GoalOverviewCard.js.map +1 -0
- package/dist/client/react/GoalPage.d.ts +7 -0
- package/dist/client/react/GoalPage.d.ts.map +1 -0
- package/dist/client/react/GoalPage.js +15 -0
- package/dist/client/react/GoalPage.js.map +1 -0
- package/dist/client/react/GoalProgress.d.ts +6 -0
- package/dist/client/react/GoalProgress.d.ts.map +1 -0
- package/dist/client/react/GoalProgress.js +32 -0
- package/dist/client/react/GoalProgress.js.map +1 -0
- package/dist/client/react/GoalProgressHeader.d.ts +7 -0
- package/dist/client/react/GoalProgressHeader.d.ts.map +1 -0
- package/dist/client/react/GoalProgressHeader.js +14 -0
- package/dist/client/react/GoalProgressHeader.js.map +1 -0
- package/dist/client/react/GoalProgressSummary.d.ts +5 -0
- package/dist/client/react/GoalProgressSummary.d.ts.map +1 -0
- package/dist/client/react/GoalProgressSummary.js +8 -0
- package/dist/client/react/GoalProgressSummary.js.map +1 -0
- package/dist/client/react/GoalWorkTable.d.ts +11 -0
- package/dist/client/react/GoalWorkTable.d.ts.map +1 -0
- package/dist/client/react/GoalWorkTable.js +36 -0
- package/dist/client/react/GoalWorkTable.js.map +1 -0
- package/dist/client/react/GoalsPage.d.ts +5 -0
- package/dist/client/react/GoalsPage.d.ts.map +1 -0
- package/dist/client/react/GoalsPage.js +9 -0
- package/dist/client/react/GoalsPage.js.map +1 -0
- package/dist/client/react/HandoffForm.d.ts.map +1 -1
- package/dist/client/react/HandoffForm.js +3 -2
- package/dist/client/react/HandoffForm.js.map +1 -1
- package/dist/client/react/HandoffPage.d.ts.map +1 -1
- package/dist/client/react/HandoffPage.js +3 -2
- package/dist/client/react/HandoffPage.js.map +1 -1
- package/dist/client/react/HandoffPrompt.d.ts.map +1 -1
- package/dist/client/react/HandoffPrompt.js +2 -1
- package/dist/client/react/HandoffPrompt.js.map +1 -1
- package/dist/client/react/Header.d.ts.map +1 -1
- package/dist/client/react/Header.js +11 -4
- package/dist/client/react/Header.js.map +1 -1
- package/dist/client/react/HomeBoard.d.ts.map +1 -1
- package/dist/client/react/HomeBoard.js +3 -2
- package/dist/client/react/HomeBoard.js.map +1 -1
- package/dist/client/react/ItemSummary.d.ts +5 -0
- package/dist/client/react/ItemSummary.d.ts.map +1 -0
- package/dist/client/react/ItemSummary.js +42 -0
- package/dist/client/react/ItemSummary.js.map +1 -0
- package/dist/client/react/KeyboardHints.d.ts +5 -0
- package/dist/client/react/KeyboardHints.d.ts.map +1 -0
- package/dist/client/react/KeyboardHints.js +6 -0
- package/dist/client/react/KeyboardHints.js.map +1 -0
- package/dist/client/react/LibraryContents.d.ts +15 -0
- package/dist/client/react/LibraryContents.d.ts.map +1 -0
- package/dist/client/react/LibraryContents.js +28 -0
- package/dist/client/react/LibraryContents.js.map +1 -0
- package/dist/client/react/LibraryContext.d.ts +25 -0
- package/dist/client/react/LibraryContext.d.ts.map +1 -0
- package/dist/client/react/LibraryContext.js +18 -0
- package/dist/client/react/LibraryContext.js.map +1 -0
- package/dist/client/react/LibraryMain.d.ts +8 -0
- package/dist/client/react/LibraryMain.d.ts.map +1 -0
- package/dist/client/react/LibraryMain.js +8 -0
- package/dist/client/react/LibraryMain.js.map +1 -0
- package/dist/client/react/LibraryPage.d.ts +6 -0
- package/dist/client/react/LibraryPage.d.ts.map +1 -0
- package/dist/client/react/LibraryPage.js +34 -0
- package/dist/client/react/LibraryPage.js.map +1 -0
- package/dist/client/react/LiveControls.d.ts.map +1 -1
- package/dist/client/react/LiveControls.js +2 -3
- package/dist/client/react/LiveControls.js.map +1 -1
- package/dist/client/react/Modal.d.ts +2 -1
- package/dist/client/react/Modal.d.ts.map +1 -1
- package/dist/client/react/Modal.js +2 -2
- package/dist/client/react/Modal.js.map +1 -1
- package/dist/client/react/PhoneNavigation.d.ts +6 -0
- package/dist/client/react/PhoneNavigation.d.ts.map +1 -0
- package/dist/client/react/PhoneNavigation.js +31 -0
- package/dist/client/react/PhoneNavigation.js.map +1 -0
- package/dist/client/react/PrChip.d.ts +4 -0
- package/dist/client/react/PrChip.d.ts.map +1 -0
- package/dist/client/react/PrChip.js +7 -0
- package/dist/client/react/PrChip.js.map +1 -0
- package/dist/client/react/ProjectionFrame.d.ts.map +1 -1
- package/dist/client/react/ProjectionFrame.js +10 -18
- package/dist/client/react/ProjectionFrame.js.map +1 -1
- package/dist/client/react/ProjectionMain.d.ts.map +1 -1
- package/dist/client/react/ProjectionMain.js +4 -7
- package/dist/client/react/ProjectionMain.js.map +1 -1
- package/dist/client/react/PromptOption.d.ts +1 -2
- package/dist/client/react/PromptOption.d.ts.map +1 -1
- package/dist/client/react/PromptOption.js +7 -4
- package/dist/client/react/PromptOption.js.map +1 -1
- package/dist/client/react/ReadingHistory.d.ts +10 -0
- package/dist/client/react/ReadingHistory.d.ts.map +1 -0
- package/dist/client/react/ReadingHistory.js +21 -0
- package/dist/client/react/ReadingHistory.js.map +1 -0
- package/dist/client/react/ReadingLibrary.d.ts +3 -3
- package/dist/client/react/ReadingLibrary.d.ts.map +1 -1
- package/dist/client/react/ReadingLibrary.js +6 -23
- package/dist/client/react/ReadingLibrary.js.map +1 -1
- package/dist/client/react/ReadingPanel.d.ts +3 -0
- package/dist/client/react/ReadingPanel.d.ts.map +1 -0
- package/dist/client/react/ReadingPanel.js +6 -0
- package/dist/client/react/ReadingPanel.js.map +1 -0
- package/dist/client/react/Reference.d.ts.map +1 -1
- package/dist/client/react/Reference.js +3 -1
- package/dist/client/react/Reference.js.map +1 -1
- package/dist/client/react/RemainingMain.d.ts.map +1 -1
- package/dist/client/react/RemainingMain.js +9 -6
- package/dist/client/react/RemainingMain.js.map +1 -1
- package/dist/client/react/RespondPage.d.ts +1 -1
- package/dist/client/react/RespondPage.d.ts.map +1 -1
- package/dist/client/react/RespondPage.js +3 -14
- package/dist/client/react/RespondPage.js.map +1 -1
- package/dist/client/react/ResponseHistory.d.ts +2 -1
- package/dist/client/react/ResponseHistory.d.ts.map +1 -1
- package/dist/client/react/ResponseHistory.js +2 -2
- package/dist/client/react/ResponseHistory.js.map +1 -1
- package/dist/client/react/ResultCriteria.d.ts.map +1 -1
- package/dist/client/react/ResultCriteria.js +5 -5
- package/dist/client/react/ResultCriteria.js.map +1 -1
- package/dist/client/react/ResultPage.d.ts.map +1 -1
- package/dist/client/react/ResultPage.js +2 -1
- package/dist/client/react/ResultPage.js.map +1 -1
- package/dist/client/react/SavedViews.js +1 -1
- package/dist/client/react/SavedViews.js.map +1 -1
- package/dist/client/react/SearchDialog.d.ts.map +1 -1
- package/dist/client/react/SearchDialog.js +4 -61
- package/dist/client/react/SearchDialog.js.map +1 -1
- package/dist/client/react/SearchPalette.d.ts +11 -0
- package/dist/client/react/SearchPalette.d.ts.map +1 -0
- package/dist/client/react/SearchPalette.js +80 -0
- package/dist/client/react/SearchPalette.js.map +1 -0
- package/dist/client/react/SearchResults.d.ts.map +1 -1
- package/dist/client/react/SearchResults.js +3 -2
- package/dist/client/react/SearchResults.js.map +1 -1
- package/dist/client/react/SettingsPopover.d.ts +7 -0
- package/dist/client/react/SettingsPopover.d.ts.map +1 -0
- package/dist/client/react/SettingsPopover.js +8 -0
- package/dist/client/react/SettingsPopover.js.map +1 -0
- package/dist/client/react/ShellApi.d.ts +3 -2
- package/dist/client/react/ShellApi.d.ts.map +1 -1
- package/dist/client/react/Sidebar.d.ts +6 -4
- package/dist/client/react/Sidebar.d.ts.map +1 -1
- package/dist/client/react/Sidebar.js +26 -38
- package/dist/client/react/Sidebar.js.map +1 -1
- package/dist/client/react/SourceList.d.ts +5 -0
- package/dist/client/react/SourceList.d.ts.map +1 -0
- package/dist/client/react/SourceList.js +19 -0
- package/dist/client/react/SourceList.js.map +1 -0
- package/dist/client/react/StartPage.d.ts.map +1 -1
- package/dist/client/react/StartPage.js +2 -1
- package/dist/client/react/StartPage.js.map +1 -1
- package/dist/client/react/SystemFleetLane.d.ts +5 -0
- package/dist/client/react/SystemFleetLane.d.ts.map +1 -0
- package/dist/client/react/SystemFleetLane.js +12 -0
- package/dist/client/react/SystemFleetLane.js.map +1 -0
- package/dist/client/react/SystemHealth.d.ts +6 -0
- package/dist/client/react/SystemHealth.d.ts.map +1 -0
- package/dist/client/react/SystemHealth.js +16 -0
- package/dist/client/react/SystemHealth.js.map +1 -0
- package/dist/client/react/SystemMain.d.ts +8 -0
- package/dist/client/react/SystemMain.d.ts.map +1 -0
- package/dist/client/react/SystemMain.js +11 -0
- package/dist/client/react/SystemMain.js.map +1 -0
- package/dist/client/react/SystemPage.d.ts +5 -0
- package/dist/client/react/SystemPage.d.ts.map +1 -0
- package/dist/client/react/SystemPage.js +28 -0
- package/dist/client/react/SystemPage.js.map +1 -0
- package/dist/client/react/TodayGoals.d.ts +5 -0
- package/dist/client/react/TodayGoals.d.ts.map +1 -0
- package/dist/client/react/TodayGoals.js +12 -0
- package/dist/client/react/TodayGoals.js.map +1 -0
- package/dist/client/react/TodayNeeds.d.ts +7 -0
- package/dist/client/react/TodayNeeds.d.ts.map +1 -0
- package/dist/client/react/TodayNeeds.js +14 -0
- package/dist/client/react/TodayNeeds.js.map +1 -0
- package/dist/client/react/TodayOptions.d.ts +7 -0
- package/dist/client/react/TodayOptions.d.ts.map +1 -0
- package/dist/client/react/TodayOptions.js +64 -0
- package/dist/client/react/TodayOptions.js.map +1 -0
- package/dist/client/react/TodayPage.d.ts +7 -0
- package/dist/client/react/TodayPage.d.ts.map +1 -0
- package/dist/client/react/TodayPage.js +24 -0
- package/dist/client/react/TodayPage.js.map +1 -0
- package/dist/client/react/TodayProgress.d.ts +6 -0
- package/dist/client/react/TodayProgress.d.ts.map +1 -0
- package/dist/client/react/TodayProgress.js +18 -0
- package/dist/client/react/TodayProgress.js.map +1 -0
- package/dist/client/react/UpdatesToggle.d.ts +3 -1
- package/dist/client/react/UpdatesToggle.d.ts.map +1 -1
- package/dist/client/react/UpdatesToggle.js +4 -2
- package/dist/client/react/UpdatesToggle.js.map +1 -1
- package/dist/client/react/VisualViewer.d.ts.map +1 -1
- package/dist/client/react/VisualViewer.js +2 -1
- package/dist/client/react/VisualViewer.js.map +1 -1
- package/dist/client/react/WorkCard.d.ts +9 -0
- package/dist/client/react/WorkCard.d.ts.map +1 -0
- package/dist/client/react/WorkCard.js +12 -0
- package/dist/client/react/WorkCard.js.map +1 -0
- package/dist/client/react/WorkCardList.d.ts +10 -0
- package/dist/client/react/WorkCardList.d.ts.map +1 -0
- package/dist/client/react/WorkCardList.js +8 -0
- package/dist/client/react/WorkCardList.js.map +1 -0
- package/dist/client/react/WorkCards.d.ts.map +1 -1
- package/dist/client/react/WorkCards.js +9 -9
- package/dist/client/react/WorkCards.js.map +1 -1
- package/dist/client/react/WorkControls.d.ts.map +1 -1
- package/dist/client/react/WorkControls.js +1 -1
- package/dist/client/react/WorkControls.js.map +1 -1
- package/dist/client/react/WorkDetail.d.ts +3 -1
- package/dist/client/react/WorkDetail.d.ts.map +1 -1
- package/dist/client/react/WorkDetail.js +2 -2
- package/dist/client/react/WorkDetail.js.map +1 -1
- package/dist/client/react/WorkLane.d.ts +12 -0
- package/dist/client/react/WorkLane.d.ts.map +1 -0
- package/dist/client/react/WorkLane.js +9 -0
- package/dist/client/react/WorkLane.js.map +1 -0
- package/dist/client/react/WorkNow.d.ts +5 -0
- package/dist/client/react/WorkNow.d.ts.map +1 -0
- package/dist/client/react/WorkNow.js +20 -0
- package/dist/client/react/WorkNow.js.map +1 -0
- package/dist/client/react/WorkPage.d.ts +3 -1
- package/dist/client/react/WorkPage.d.ts.map +1 -1
- package/dist/client/react/WorkPage.js +10 -9
- package/dist/client/react/WorkPage.js.map +1 -1
- package/dist/client/react/WorkResults.d.ts.map +1 -1
- package/dist/client/react/WorkResults.js +4 -0
- package/dist/client/react/WorkResults.js.map +1 -1
- package/dist/client/react/WorkTable.d.ts.map +1 -1
- package/dist/client/react/WorkTable.js +7 -3
- package/dist/client/react/WorkTable.js.map +1 -1
- package/dist/client/react/WorkTools.d.ts.map +1 -1
- package/dist/client/react/WorkTools.js +3 -3
- package/dist/client/react/WorkTools.js.map +1 -1
- package/dist/client/react/activeRead.d.ts +2 -2
- package/dist/client/react/activeRead.d.ts.map +1 -1
- package/dist/client/react/activeRead.js +7 -3
- package/dist/client/react/activeRead.js.map +1 -1
- package/dist/client/react/components/ui/Badge.d.ts +8 -0
- package/dist/client/react/components/ui/Badge.d.ts.map +1 -0
- package/dist/client/react/components/ui/Badge.js +11 -0
- package/dist/client/react/components/ui/Badge.js.map +1 -0
- package/dist/client/react/components/ui/Button.d.ts +5 -0
- package/dist/client/react/components/ui/Button.d.ts.map +1 -0
- package/dist/client/react/components/ui/Button.js +7 -0
- package/dist/client/react/components/ui/Button.js.map +1 -0
- package/dist/client/react/components/ui/Card.d.ts +3 -0
- package/dist/client/react/components/ui/Card.d.ts.map +1 -0
- package/dist/client/react/components/ui/Card.js +6 -0
- package/dist/client/react/components/ui/Card.js.map +1 -0
- package/dist/client/react/components/ui/Command.d.ts +9 -0
- package/dist/client/react/components/ui/Command.d.ts.map +1 -0
- package/dist/client/react/components/ui/Command.js +24 -0
- package/dist/client/react/components/ui/Command.js.map +1 -0
- package/dist/client/react/components/ui/Popover.d.ts +10 -0
- package/dist/client/react/components/ui/Popover.d.ts.map +1 -0
- package/dist/client/react/components/ui/Popover.js +44 -0
- package/dist/client/react/components/ui/Popover.js.map +1 -0
- package/dist/client/react/components/ui/SegmentedBar.d.ts +17 -0
- package/dist/client/react/components/ui/SegmentedBar.d.ts.map +1 -0
- package/dist/client/react/components/ui/SegmentedBar.js +11 -0
- package/dist/client/react/components/ui/SegmentedBar.js.map +1 -0
- package/dist/client/react/components/ui/Sheet.d.ts +4 -0
- package/dist/client/react/components/ui/Sheet.d.ts.map +1 -0
- package/dist/client/react/components/ui/Sheet.js +7 -0
- package/dist/client/react/components/ui/Sheet.js.map +1 -0
- package/dist/client/react/components/ui/StatusChip.d.ts +5 -0
- package/dist/client/react/components/ui/StatusChip.d.ts.map +1 -0
- package/dist/client/react/components/ui/StatusChip.js +26 -0
- package/dist/client/react/components/ui/StatusChip.js.map +1 -0
- package/dist/client/react/components/ui/StatusSegments.d.ts +6 -0
- package/dist/client/react/components/ui/StatusSegments.d.ts.map +1 -0
- package/dist/client/react/components/ui/StatusSegments.js +19 -0
- package/dist/client/react/components/ui/StatusSegments.js.map +1 -0
- package/dist/client/react/components/ui/Tabs.d.ts +12 -0
- package/dist/client/react/components/ui/Tabs.d.ts.map +1 -0
- package/dist/client/react/components/ui/Tabs.js +28 -0
- package/dist/client/react/components/ui/Tabs.js.map +1 -0
- package/dist/client/react/components/ui/Tooltip.d.ts +8 -0
- package/dist/client/react/components/ui/Tooltip.d.ts.map +1 -0
- package/dist/client/react/components/ui/Tooltip.js +7 -0
- package/dist/client/react/components/ui/Tooltip.js.map +1 -0
- package/dist/client/react/components/ui/buttonVariants.d.ts +5 -0
- package/dist/client/react/components/ui/buttonVariants.d.ts.map +1 -0
- package/dist/client/react/components/ui/buttonVariants.js +14 -0
- package/dist/client/react/components/ui/buttonVariants.js.map +1 -0
- package/dist/client/react/components/ui/statusPresentation.d.ts +20 -0
- package/dist/client/react/components/ui/statusPresentation.d.ts.map +1 -0
- package/dist/client/react/components/ui/statusPresentation.js +32 -0
- package/dist/client/react/components/ui/statusPresentation.js.map +1 -0
- package/dist/client/react/diagnosticsValues.js +2 -2
- package/dist/client/react/diagnosticsValues.js.map +1 -1
- package/dist/client/react/documentRoute.d.ts +1 -1
- package/dist/client/react/documentRoute.d.ts.map +1 -1
- package/dist/client/react/documentRoute.js +2 -2
- package/dist/client/react/documentRoute.js.map +1 -1
- package/dist/client/react/entry.js +3 -7
- package/dist/client/react/entry.js.map +1 -1
- package/dist/client/react/goalWork.d.ts +13 -0
- package/dist/client/react/goalWork.d.ts.map +1 -0
- package/dist/client/react/goalWork.js +12 -0
- package/dist/client/react/goalWork.js.map +1 -0
- package/dist/client/react/inProgressItems.d.ts +95 -0
- package/dist/client/react/inProgressItems.d.ts.map +1 -0
- package/dist/client/react/inProgressItems.js +4 -0
- package/dist/client/react/inProgressItems.js.map +1 -0
- package/dist/client/react/loadBoardPage.d.ts +1 -1
- package/dist/client/react/loadBoardPage.d.ts.map +1 -1
- package/dist/client/react/loadBoardPage.js +31 -3
- package/dist/client/react/loadBoardPage.js.map +1 -1
- package/dist/client/react/loadProjection.d.ts +158 -161
- package/dist/client/react/loadProjection.d.ts.map +1 -1
- package/dist/client/react/loadProjection.js +3 -4
- package/dist/client/react/loadProjection.js.map +1 -1
- package/dist/client/react/loadRemaining.d.ts +454 -67
- package/dist/client/react/loadRemaining.d.ts.map +1 -1
- package/dist/client/react/loadRemaining.js +9 -4
- package/dist/client/react/loadRemaining.js.map +1 -1
- package/dist/client/react/mainLocation.d.ts +3 -1
- package/dist/client/react/mainLocation.d.ts.map +1 -1
- package/dist/client/react/mainLocation.js +7 -7
- package/dist/client/react/mainLocation.js.map +1 -1
- package/dist/client/react/navigationLocation.d.ts +1 -1
- package/dist/client/react/navigationLocation.d.ts.map +1 -1
- package/dist/client/react/navigationLocation.js +1 -1
- package/dist/client/react/navigationLocation.js.map +1 -1
- package/dist/client/react/pageQueries.d.ts +5 -0
- package/dist/client/react/pageQueries.d.ts.map +1 -0
- package/dist/client/react/pageQueries.js +39 -0
- package/dist/client/react/pageQueries.js.map +1 -0
- package/dist/client/react/projectionChanges.d.ts.map +1 -1
- package/dist/client/react/projectionChanges.js +3 -1
- package/dist/client/react/projectionChanges.js.map +1 -1
- package/dist/client/react/projectionRoute.d.ts +2 -2
- package/dist/client/react/projectionRoute.d.ts.map +1 -1
- package/dist/client/react/projectionRoute.js +4 -7
- package/dist/client/react/projectionRoute.js.map +1 -1
- package/dist/client/react/readerLink.js +1 -1
- package/dist/client/react/readerLink.js.map +1 -1
- package/dist/client/react/readingPassage.d.ts +4 -0
- package/dist/client/react/readingPassage.d.ts.map +1 -0
- package/dist/client/react/readingPassage.js +41 -0
- package/dist/client/react/readingPassage.js.map +1 -0
- package/dist/client/react/readingState.d.ts +0 -2
- package/dist/client/react/readingState.d.ts.map +1 -1
- package/dist/client/react/readingState.js +1 -31
- package/dist/client/react/readingState.js.map +1 -1
- package/dist/client/react/remainingRoute.d.ts +1 -1
- package/dist/client/react/remainingRoute.d.ts.map +1 -1
- package/dist/client/react/remainingRoute.js +6 -4
- package/dist/client/react/remainingRoute.js.map +1 -1
- package/dist/client/react/retryPage.d.ts +4 -0
- package/dist/client/react/retryPage.d.ts.map +1 -0
- package/dist/client/react/retryPage.js +13 -0
- package/dist/client/react/retryPage.js.map +1 -0
- package/dist/client/react/scheduleReading.d.ts +1 -1
- package/dist/client/react/scheduleReading.d.ts.map +1 -1
- package/dist/client/react/scheduleReading.js +16 -11
- package/dist/client/react/scheduleReading.js.map +1 -1
- package/dist/client/react/searchCommands.d.ts +6 -0
- package/dist/client/react/searchCommands.d.ts.map +1 -1
- package/dist/client/react/searchCommands.js +20 -1
- package/dist/client/react/searchCommands.js.map +1 -1
- package/dist/client/react/shellIds.d.ts +2 -4
- package/dist/client/react/shellIds.d.ts.map +1 -1
- package/dist/client/react/shellIds.js +2 -4
- package/dist/client/react/shellIds.js.map +1 -1
- package/dist/client/react/storedReadings.d.ts +38 -0
- package/dist/client/react/storedReadings.d.ts.map +1 -0
- package/dist/client/react/storedReadings.js +33 -0
- package/dist/client/react/storedReadings.js.map +1 -0
- package/dist/client/react/useAppearance.d.ts.map +1 -1
- package/dist/client/react/useAppearance.js +1 -0
- package/dist/client/react/useAppearance.js.map +1 -1
- package/dist/client/react/useBoardNavigation.d.ts.map +1 -1
- package/dist/client/react/useBoardNavigation.js +13 -11
- package/dist/client/react/useBoardNavigation.js.map +1 -1
- package/dist/client/react/useDiagnosticsPolling.d.ts +1 -1
- package/dist/client/react/useDiagnosticsPolling.d.ts.map +1 -1
- package/dist/client/react/useDiagnosticsPolling.js +5 -2
- package/dist/client/react/useDiagnosticsPolling.js.map +1 -1
- package/dist/client/react/useDocumentPage.d.ts +1 -1
- package/dist/client/react/useDocumentPage.d.ts.map +1 -1
- package/dist/client/react/useDocumentPage.js +5 -1
- package/dist/client/react/useDocumentPage.js.map +1 -1
- package/dist/client/react/useFormFocus.d.ts +2 -0
- package/dist/client/react/useFormFocus.d.ts.map +1 -1
- package/dist/client/react/useFormFocus.js +8 -5
- package/dist/client/react/useFormFocus.js.map +1 -1
- package/dist/client/react/useProjectionData.d.ts +15 -0
- package/dist/client/react/useProjectionData.d.ts.map +1 -0
- package/dist/client/react/useProjectionData.js +21 -0
- package/dist/client/react/useProjectionData.js.map +1 -0
- package/dist/client/react/useResponseForm.d.ts +2 -1
- package/dist/client/react/useResponseForm.d.ts.map +1 -1
- package/dist/client/react/useResponseForm.js +20 -22
- package/dist/client/react/useResponseForm.js.map +1 -1
- package/dist/client/react/useSavedViews.d.ts +14 -0
- package/dist/client/react/useSavedViews.d.ts.map +1 -0
- package/dist/client/react/useSavedViews.js +87 -0
- package/dist/client/react/useSavedViews.js.map +1 -0
- package/dist/client/react/useVirtualRows.d.ts +9 -0
- package/dist/client/react/useVirtualRows.d.ts.map +1 -0
- package/dist/client/react/useVirtualRows.js +14 -0
- package/dist/client/react/useVirtualRows.js.map +1 -0
- package/dist/client/react/workspaceDestinations.d.ts +27 -0
- package/dist/client/react/workspaceDestinations.d.ts.map +1 -0
- package/dist/client/react/workspaceDestinations.js +8 -0
- package/dist/client/react/workspaceDestinations.js.map +1 -0
- package/dist/client/responses/summary.d.ts +2 -2
- package/dist/client/responses/summary.d.ts.map +1 -1
- package/dist/client/responses/summary.js +6 -6
- package/dist/client/responses/summary.js.map +1 -1
- package/dist/diagnostics/daemonContract.d.ts +36 -0
- package/dist/diagnostics/daemonContract.d.ts.map +1 -1
- package/dist/diagnostics/daemonContract.js +5 -1
- package/dist/diagnostics/daemonContract.js.map +1 -1
- package/dist/diagnostics/fleetItems.d.ts +41 -0
- package/dist/diagnostics/fleetItems.d.ts.map +1 -0
- package/dist/diagnostics/fleetItems.js +25 -0
- package/dist/diagnostics/fleetItems.js.map +1 -0
- package/dist/metadata/schema.d.ts +1 -1
- package/dist/metadata/schema.d.ts.map +1 -1
- package/dist/metadata/schema.js +1 -1
- package/dist/metadata/schema.js.map +1 -1
- package/dist/render/visual.d.ts.map +1 -1
- package/dist/render/visual.js +7 -5
- package/dist/render/visual.js.map +1 -1
- package/dist/rpc/PageUrl.d.ts +3 -0
- package/dist/rpc/PageUrl.d.ts.map +1 -0
- package/dist/rpc/PageUrl.js +28 -0
- package/dist/rpc/PageUrl.js.map +1 -0
- package/dist/rpc/Server.d.ts +6 -0
- package/dist/rpc/Server.d.ts.map +1 -0
- package/dist/rpc/Server.js +3 -0
- package/dist/rpc/Server.js.map +1 -0
- package/dist/rpc/contract.d.ts +1676 -267
- package/dist/rpc/contract.d.ts.map +1 -1
- package/dist/rpc/contract.js +25 -44
- package/dist/rpc/contract.js.map +1 -1
- package/dist/rpc/handoffContract.d.ts +32 -32
- package/dist/rpc/pageKeys.js +1 -1
- package/dist/rpc/pageKeys.js.map +1 -1
- package/dist/server/attention/inbox.d.ts +15 -2
- package/dist/server/attention/inbox.d.ts.map +1 -1
- package/dist/server/attention/inbox.js +21 -26
- package/dist/server/attention/inbox.js.map +1 -1
- package/dist/server/attention/managedRequestReceipt.d.ts.map +1 -1
- package/dist/server/attention/managedRequestReceipt.js +16 -11
- package/dist/server/attention/managedRequestReceipt.js.map +1 -1
- package/dist/server/attention/projection.d.ts +4 -0
- package/dist/server/attention/projection.d.ts.map +1 -0
- package/dist/server/attention/projection.js +29 -0
- package/dist/server/attention/projection.js.map +1 -0
- package/dist/server/attention/questionState.d.ts +1 -1
- package/dist/server/attention/questionState.d.ts.map +1 -1
- package/dist/server/attention/questionState.js +13 -23
- package/dist/server/attention/questionState.js.map +1 -1
- package/dist/server/attention/requestInbox.d.ts +41 -0
- package/dist/server/attention/requestInbox.d.ts.map +1 -0
- package/dist/server/attention/requestInbox.js +56 -0
- package/dist/server/attention/requestInbox.js.map +1 -0
- package/dist/server/attention/requests.d.ts +4 -2
- package/dist/server/attention/requests.d.ts.map +1 -1
- package/dist/server/attention/requests.js +10 -1
- package/dist/server/attention/requests.js.map +1 -1
- package/dist/server/attention/status.d.ts +4 -0
- package/dist/server/attention/status.d.ts.map +1 -0
- package/dist/server/attention/status.js +11 -0
- package/dist/server/attention/status.js.map +1 -0
- package/dist/server/board.d.ts +1 -1
- package/dist/server/board.d.ts.map +1 -1
- package/dist/server/boardRuntime.d.ts +5 -2
- package/dist/server/boardRuntime.d.ts.map +1 -1
- package/dist/server/boardRuntime.js +3 -1
- package/dist/server/boardRuntime.js.map +1 -1
- package/dist/server/boardSocket.d.ts +3 -0
- package/dist/server/boardSocket.d.ts.map +1 -0
- package/dist/server/boardSocket.js +65 -0
- package/dist/server/boardSocket.js.map +1 -0
- package/dist/server/cli.js +5 -1
- package/dist/server/cli.js.map +1 -1
- package/dist/server/currentDocument.d.ts +9 -0
- package/dist/server/currentDocument.d.ts.map +1 -0
- package/dist/server/currentDocument.js +16 -0
- package/dist/server/currentDocument.js.map +1 -0
- package/dist/server/diagnostics/daemon.d.ts +93 -1
- package/dist/server/diagnostics/daemon.d.ts.map +1 -1
- package/dist/server/diagnostics/daemon.js +28 -14
- package/dist/server/diagnostics/daemon.js.map +1 -1
- package/dist/server/document/answerBody.d.ts +4 -0
- package/dist/server/document/answerBody.d.ts.map +1 -0
- package/dist/server/document/answerBody.js +84 -0
- package/dist/server/document/answerBody.js.map +1 -0
- package/dist/server/document/read.d.ts +17 -2
- package/dist/server/document/read.d.ts.map +1 -1
- package/dist/server/document/read.js +20 -12
- package/dist/server/document/read.js.map +1 -1
- package/dist/server/document/readingContext.d.ts +4 -2
- package/dist/server/document/readingContext.d.ts.map +1 -1
- package/dist/server/document/readingContext.js +12 -4
- package/dist/server/document/readingContext.js.map +1 -1
- package/dist/server/document/requestTitle.d.ts +4 -0
- package/dist/server/document/requestTitle.d.ts.map +1 -0
- package/dist/server/document/requestTitle.js +8 -0
- package/dist/server/document/requestTitle.js.map +1 -0
- package/dist/server/document/requests.d.ts.map +1 -1
- package/dist/server/document/requests.js +43 -3
- package/dist/server/document/requests.js.map +1 -1
- package/dist/server/files/watchDirectories.d.ts.map +1 -1
- package/dist/server/files/watchDirectories.js +1 -1
- package/dist/server/files/watchDirectories.js.map +1 -1
- package/dist/server/http/assets.d.ts.map +1 -1
- package/dist/server/http/assets.js +2 -2
- package/dist/server/http/assets.js.map +1 -1
- package/dist/server/http/boardRoutes.d.ts.map +1 -1
- package/dist/server/http/boardRoutes.js +20 -18
- package/dist/server/http/boardRoutes.js.map +1 -1
- package/dist/server/http/identity.d.ts +1 -1
- package/dist/server/http/identity.d.ts.map +1 -1
- package/dist/server/http/identity.js +16 -25
- package/dist/server/http/identity.js.map +1 -1
- package/dist/server/http/page.d.ts +1 -1
- package/dist/server/http/page.d.ts.map +1 -1
- package/dist/server/http/page.js +25 -61
- package/dist/server/http/page.js.map +1 -1
- package/dist/server/http/rpcPolicy.d.ts +1 -0
- package/dist/server/http/rpcPolicy.d.ts.map +1 -1
- package/dist/server/http/rpcPolicy.js +1 -0
- package/dist/server/http/rpcPolicy.js.map +1 -1
- package/dist/server/integration/attention.d.ts +4 -0
- package/dist/server/integration/attention.d.ts.map +1 -1
- package/dist/server/integration/attention.js +2 -0
- package/dist/server/integration/attention.js.map +1 -1
- package/dist/server/integration/diagnostics.d.ts +38 -0
- package/dist/server/integration/diagnostics.d.ts.map +1 -1
- package/dist/server/integration/diagnostics.js +3 -0
- package/dist/server/integration/diagnostics.js.map +1 -1
- package/dist/server/mcp/client.d.ts +2022 -0
- package/dist/server/mcp/client.d.ts.map +1 -0
- package/dist/server/mcp/client.js +33 -0
- package/dist/server/mcp/client.js.map +1 -0
- package/dist/server/mcp/queries.d.ts +6415 -0
- package/dist/server/mcp/queries.d.ts.map +1 -0
- package/dist/server/mcp/queries.js +50 -0
- package/dist/server/mcp/queries.js.map +1 -0
- package/dist/server/mcp/run.d.ts +2 -0
- package/dist/server/mcp/run.d.ts.map +1 -0
- package/dist/server/mcp/run.js +21 -0
- package/dist/server/mcp/run.js.map +1 -0
- package/dist/server/mcp/schema.d.ts +315 -0
- package/dist/server/mcp/schema.d.ts.map +1 -0
- package/dist/server/mcp/schema.js +42 -0
- package/dist/server/mcp/schema.js.map +1 -0
- package/dist/server/mcp/tools.d.ts +3 -0
- package/dist/server/mcp/tools.d.ts.map +1 -0
- package/dist/server/mcp/tools.js +28 -0
- package/dist/server/mcp/tools.js.map +1 -0
- package/dist/server/metadata/backlinks.d.ts.map +1 -1
- package/dist/server/metadata/backlinks.js +21 -5
- package/dist/server/metadata/backlinks.js.map +1 -1
- package/dist/server/metadata/fields.d.ts +1 -1
- package/dist/server/metadata/fields.d.ts.map +1 -1
- package/dist/server/metadata/fields.js +7 -0
- package/dist/server/metadata/fields.js.map +1 -1
- package/dist/server/metadata/sourceLinks.js +2 -2
- package/dist/server/metadata/sourceLinks.js.map +1 -1
- package/dist/server/navigation/libraryData.d.ts +6 -0
- package/dist/server/navigation/libraryData.d.ts.map +1 -0
- package/dist/server/navigation/libraryData.js +36 -0
- package/dist/server/navigation/libraryData.js.map +1 -0
- package/dist/server/navigation/model.d.ts +2 -2
- package/dist/server/navigation/model.d.ts.map +1 -1
- package/dist/server/navigation/model.js +13 -55
- package/dist/server/navigation/model.js.map +1 -1
- package/dist/server/packageInfo.d.ts +3 -0
- package/dist/server/packageInfo.d.ts.map +1 -0
- package/dist/server/packageInfo.js +3 -0
- package/dist/server/packageInfo.js.map +1 -0
- package/dist/server/page/initialTheme.d.ts +3 -0
- package/dist/server/page/initialTheme.d.ts.map +1 -0
- package/dist/server/page/initialTheme.js +14 -0
- package/dist/server/page/initialTheme.js.map +1 -0
- package/dist/server/page/shell.d.ts +1 -2
- package/dist/server/page/shell.d.ts.map +1 -1
- package/dist/server/page/shell.js +5 -32
- package/dist/server/page/shell.js.map +1 -1
- package/dist/server/page/startTemplates.d.ts +3 -3
- package/dist/server/page/startTemplates.js +3 -3
- package/dist/server/responseIndex.d.ts +20 -0
- package/dist/server/responseIndex.d.ts.map +1 -0
- package/dist/server/responseIndex.js +73 -0
- package/dist/server/responseIndex.js.map +1 -0
- package/dist/server/responses/history.d.ts.map +1 -1
- package/dist/server/responses/history.js +5 -7
- package/dist/server/responses/history.js.map +1 -1
- package/dist/server/responses/locate.d.ts.map +1 -1
- package/dist/server/responses/locate.js +3 -6
- package/dist/server/responses/locate.js.map +1 -1
- package/dist/server/responses/optionPrompt.js +1 -1
- package/dist/server/responses/optionPrompt.js.map +1 -1
- package/dist/server/responses/read.d.ts.map +1 -1
- package/dist/server/responses/read.js +7 -6
- package/dist/server/responses/read.js.map +1 -1
- package/dist/server/rpc/HandlerOptions.d.ts +4 -0
- package/dist/server/rpc/HandlerOptions.d.ts.map +1 -1
- package/dist/server/rpc/handlers.d.ts +1 -1
- package/dist/server/rpc/handlers.d.ts.map +1 -1
- package/dist/server/rpc/handlers.js +15 -10
- package/dist/server/rpc/handlers.js.map +1 -1
- package/dist/server/search/entries.d.ts +5 -0
- package/dist/server/search/entries.d.ts.map +1 -1
- package/dist/server/search/entries.js.map +1 -1
- package/dist/server/search/match.d.ts +6 -1
- package/dist/server/search/match.d.ts.map +1 -1
- package/dist/server/search/match.js +41 -11
- package/dist/server/search/match.js.map +1 -1
- package/dist/server/search/metadataEntries.d.ts +1 -1
- package/dist/server/search/metadataEntries.d.ts.map +1 -1
- package/dist/server/search/metadataEntries.js +23 -5
- package/dist/server/search/metadataEntries.js.map +1 -1
- package/dist/server/search/snippet.d.ts +2 -0
- package/dist/server/search/snippet.d.ts.map +1 -0
- package/dist/server/search/snippet.js +10 -0
- package/dist/server/search/snippet.js.map +1 -0
- package/dist/server/search/updateEntries.d.ts.map +1 -1
- package/dist/server/search/updateEntries.js +6 -2
- package/dist/server/search/updateEntries.js.map +1 -1
- package/dist/server/serve-cli.d.ts.map +1 -1
- package/dist/server/serve-cli.js +1 -1
- package/dist/server/serve-cli.js.map +1 -1
- package/dist/server/serve.d.ts +3 -2
- package/dist/server/serve.d.ts.map +1 -1
- package/dist/server/serve.js +19 -7
- package/dist/server/serve.js.map +1 -1
- package/dist/server/views/fleetApproval.d.ts +3 -0
- package/dist/server/views/fleetApproval.d.ts.map +1 -0
- package/dist/server/views/fleetApproval.js +11 -0
- package/dist/server/views/fleetApproval.js.map +1 -0
- package/dist/server/views/fleetItems.d.ts +5 -0
- package/dist/server/views/fleetItems.d.ts.map +1 -0
- package/dist/server/views/fleetItems.js +24 -0
- package/dist/server/views/fleetItems.js.map +1 -0
- package/dist/server/views/goals.d.ts +5 -0
- package/dist/server/views/goals.d.ts.map +1 -0
- package/dist/server/views/goals.js +53 -0
- package/dist/server/views/goals.js.map +1 -0
- package/dist/server/views/projection.d.ts.map +1 -1
- package/dist/server/views/projection.js +3 -2
- package/dist/server/views/projection.js.map +1 -1
- package/dist/server/views/projectionQueries.d.ts +83 -24
- package/dist/server/views/projectionQueries.d.ts.map +1 -1
- package/dist/server/views/projectionQueries.js +12 -29
- package/dist/server/views/projectionQueries.js.map +1 -1
- package/dist/server/views/remainingQueries.d.ts +42 -5
- package/dist/server/views/remainingQueries.d.ts.map +1 -1
- package/dist/server/views/resultProjection.d.ts +32 -2
- package/dist/server/views/resultProjection.d.ts.map +1 -1
- package/dist/server/views/state.d.ts +1 -1
- package/docs/delivery/attention-examples.md +4 -4
- package/docs/delivery/browser-acceptance.md +15 -43
- package/docs/delivery/handoff-examples.md +1 -1
- package/docs/delivery/reading-review.md +1 -1
- package/docs/delivery/response-write-examples.md +1 -1
- package/docs/delivery/source-examples.md +2 -2
- package/docs/delivery/visual-document-examples.md +2 -2
- package/docs/delivery/wave1.md +3 -8
- package/docs/images/answer-card/desktop.png +0 -0
- package/docs/images/answer-card/mobile.png +0 -0
- package/docs/images/command-palette/commands-1440.png +0 -0
- package/docs/images/command-palette/commands-390.png +0 -0
- package/docs/images/command-palette/goal-id-1440.png +0 -0
- package/docs/images/command-palette/goal-id-390.png +0 -0
- package/docs/images/command-palette/goal-title-1440.png +0 -0
- package/docs/images/command-palette/goal-title-390.png +0 -0
- package/docs/images/command-palette/identity-1440.png +0 -0
- package/docs/images/command-palette/identity-390.png +0 -0
- package/docs/images/command-palette/inbox-1440.png +0 -0
- package/docs/images/command-palette/inbox-390.png +0 -0
- package/docs/images/command-palette/record-items-1440.png +0 -0
- package/docs/images/command-palette/record-items-390.png +0 -0
- package/docs/images/command-palette/records-1440.png +0 -0
- package/docs/images/command-palette/records-390.png +0 -0
- package/docs/images/command-palette/watch-1440.png +0 -0
- package/docs/images/command-palette/watch-390.png +0 -0
- package/docs/images/command-palette/watch-records-1440.png +0 -0
- package/docs/images/command-palette/watch-records-390.png +0 -0
- package/docs/images/current-views/handoff-1440.png +0 -0
- package/docs/images/current-views/handoff-390.png +0 -0
- package/docs/images/current-views/result-1440.png +0 -0
- package/docs/images/current-views/result-390.png +0 -0
- package/docs/images/current-views/start-1440.png +0 -0
- package/docs/images/current-views/start-390.png +0 -0
- package/docs/images/current-views/system-1440.png +0 -0
- package/docs/images/current-views/system-390.png +0 -0
- package/docs/images/goal-page/desktop.png +0 -0
- package/docs/images/goal-page/narrow.png +0 -0
- package/docs/images/item-overview/goal-1440.png +0 -0
- package/docs/images/item-overview/goal-390.png +0 -0
- package/docs/images/item-overview/plain-1440.png +0 -0
- package/docs/images/item-overview/plain-390.png +0 -0
- package/docs/images/item-overview/report-1440.png +0 -0
- package/docs/images/item-overview/report-390.png +0 -0
- package/docs/images/item-overview/task-1440.png +0 -0
- package/docs/images/item-overview/task-390.png +0 -0
- package/docs/images/library-1440.png +0 -0
- package/docs/images/library-390.png +0 -0
- package/docs/images/now-desktop.png +0 -0
- package/docs/images/now-mobile.png +0 -0
- package/docs/images/print-full-width.png +0 -0
- package/docs/images/shell-1440-dark.png +0 -0
- package/docs/images/shell-1440-light.png +0 -0
- package/docs/images/shell-390-dark.png +0 -0
- package/docs/images/shell-390-light.png +0 -0
- package/docs/images/sidebar-1440.png +0 -0
- package/docs/images/sidebar-390-dark.png +0 -0
- package/docs/images/sidebar-390-light.png +0 -0
- package/docs/images/sidebar-390.png +0 -0
- package/docs/north-star.md +5 -1
- package/docs/roadmap.md +9 -31
- package/docs/screenshots/today-1440.png +0 -0
- package/docs/screenshots/today-390.png +0 -0
- package/package.json +33 -43
- package/src/browser/Navigation.ts +8 -0
- package/src/browser/document/ReadingContext.ts +9 -1
- package/src/browser/document/schema.ts +5 -0
- package/src/browser/document/sourceGroups.ts +52 -0
- package/src/browser/navigation/library.ts +25 -0
- package/src/browser/responses/cardContext.ts +50 -0
- package/src/browser/responses/reasonMarkdown.ts +5 -0
- package/src/browser/views/FleetItemsProjection.ts +14 -0
- package/src/browser/views/GoalsProjection.ts +23 -0
- package/src/browser/views/goalWorkState.ts +17 -0
- package/src/browser/views/now.ts +93 -0
- package/src/browser/views/schema.ts +19 -34
- package/src/browser/views/state.ts +2 -2
- package/src/client/document/Mermaid.ts +4 -3
- package/src/client/document/View.ts +38 -10
- package/src/client/document/boardLayout.ts +9 -3
- package/src/client/document/layout.ts +1 -1
- package/src/client/document/mermaidColor.ts +19 -0
- package/src/client/formFocus.ts +1 -2
- package/src/client/page/routeQuery.ts +4 -0
- package/src/client/react/Age.tsx +8 -1
- package/src/client/react/AnswerContext.tsx +29 -0
- package/src/client/react/AnswerForm.tsx +33 -49
- package/src/client/react/AnswerMore.tsx +67 -0
- package/src/client/react/AnswerPanel.tsx +56 -28
- package/src/client/react/AnswerPrompts.tsx +16 -6
- package/src/client/react/BoardMain.tsx +1 -1
- package/src/client/react/BoardShell.tsx +24 -29
- package/src/client/react/DocumentAttention.tsx +9 -8
- package/src/client/react/DocumentClaims.tsx +10 -10
- package/src/client/react/DocumentContext.tsx +36 -25
- package/src/client/react/DocumentCriteria.tsx +18 -10
- package/src/client/react/DocumentEvidence.tsx +1 -3
- package/src/client/react/DocumentMain.tsx +8 -5
- package/src/client/react/DocumentMetadata.tsx +13 -11
- package/src/client/react/DocumentPage.tsx +15 -21
- package/src/client/react/DocumentRecords.tsx +1 -1
- package/src/client/react/DocumentRelationships.tsx +59 -0
- package/src/client/react/DocumentSource.tsx +30 -0
- package/src/client/react/DocumentWorkMetadata.tsx +9 -91
- package/src/client/react/Favorite.tsx +1 -1
- package/src/client/react/FleetItemsContext.ts +3 -0
- package/src/client/react/FleetMain.tsx +13 -0
- package/src/client/react/FormField.tsx +7 -3
- package/src/client/react/GoalCriteria.tsx +59 -0
- package/src/client/react/GoalOverviewCard.tsx +48 -0
- package/src/client/react/GoalPage.tsx +22 -0
- package/src/client/react/GoalProgress.tsx +45 -0
- package/src/client/react/GoalProgressHeader.tsx +35 -0
- package/src/client/react/GoalProgressSummary.tsx +13 -0
- package/src/client/react/GoalWorkTable.tsx +82 -0
- package/src/client/react/GoalsPage.tsx +30 -0
- package/src/client/react/HandoffForm.tsx +8 -6
- package/src/client/react/HandoffPage.tsx +6 -5
- package/src/client/react/HandoffPrompt.tsx +11 -3
- package/src/client/react/Header.tsx +71 -45
- package/src/client/react/HomeBoard.tsx +8 -7
- package/src/client/react/ItemSummary.tsx +80 -0
- package/src/client/react/KeyboardHints.tsx +7 -0
- package/src/client/react/LibraryContents.tsx +82 -0
- package/src/client/react/LibraryContext.ts +23 -0
- package/src/client/react/LibraryMain.tsx +25 -0
- package/src/client/react/LibraryPage.tsx +74 -0
- package/src/client/react/LiveControls.tsx +8 -4
- package/src/client/react/Modal.tsx +3 -0
- package/src/client/react/PhoneNavigation.tsx +84 -0
- package/src/client/react/PrChip.tsx +13 -0
- package/src/client/react/ProjectionFrame.tsx +14 -21
- package/src/client/react/ProjectionMain.tsx +11 -21
- package/src/client/react/PromptOption.tsx +17 -17
- package/src/client/react/ReadingHistory.tsx +72 -0
- package/src/client/react/ReadingLibrary.tsx +9 -57
- package/src/client/react/ReadingPanel.tsx +14 -0
- package/src/client/react/Reference.tsx +13 -1
- package/src/client/react/RemainingMain.tsx +16 -6
- package/src/client/react/RespondPage.tsx +4 -37
- package/src/client/react/ResponseHistory.tsx +8 -2
- package/src/client/react/ResultCriteria.tsx +10 -11
- package/src/client/react/ResultPage.tsx +6 -4
- package/src/client/react/SavedViews.tsx +1 -1
- package/src/client/react/SearchDialog.tsx +14 -105
- package/src/client/react/SearchPalette.tsx +129 -0
- package/src/client/react/SearchResults.tsx +6 -3
- package/src/client/react/SettingsPopover.tsx +43 -0
- package/src/client/react/ShellApi.ts +3 -2
- package/src/client/react/Sidebar.tsx +83 -63
- package/src/client/react/SourceList.tsx +44 -0
- package/src/client/react/StartPage.tsx +13 -5
- package/src/client/react/SystemFleetLane.tsx +40 -0
- package/src/client/react/SystemHealth.tsx +64 -0
- package/src/client/react/SystemMain.tsx +29 -0
- package/src/client/react/SystemPage.tsx +89 -0
- package/src/client/react/TodayGoals.tsx +52 -0
- package/src/client/react/TodayNeeds.tsx +54 -0
- package/src/client/react/TodayOptions.tsx +116 -0
- package/src/client/react/TodayPage.tsx +69 -0
- package/src/client/react/TodayProgress.tsx +58 -0
- package/src/client/react/UpdatesToggle.tsx +6 -3
- package/src/client/react/VisualViewer.tsx +3 -1
- package/src/client/react/WorkCard.tsx +38 -0
- package/src/client/react/WorkCardList.tsx +30 -0
- package/src/client/react/WorkCards.tsx +21 -33
- package/src/client/react/WorkControls.tsx +1 -3
- package/src/client/react/WorkDetail.tsx +3 -2
- package/src/client/react/WorkLane.tsx +39 -0
- package/src/client/react/WorkNow.tsx +35 -0
- package/src/client/react/WorkPage.tsx +24 -17
- package/src/client/react/WorkResults.tsx +4 -0
- package/src/client/react/WorkTable.tsx +37 -11
- package/src/client/react/WorkTools.tsx +13 -11
- package/src/client/react/activeRead.ts +8 -4
- package/src/client/react/command-palette.css +59 -0
- package/src/client/react/components/ui/Badge.tsx +11 -0
- package/src/client/react/components/ui/Button.tsx +8 -0
- package/src/client/react/components/ui/Card.tsx +5 -0
- package/src/client/react/components/ui/Command.tsx +64 -0
- package/src/client/react/components/ui/Popover.tsx +87 -0
- package/src/client/react/components/ui/SegmentedBar.tsx +40 -0
- package/src/client/react/components/ui/Sheet.tsx +14 -0
- package/src/client/react/components/ui/StatusChip.tsx +31 -0
- package/src/client/react/components/ui/StatusSegments.tsx +56 -0
- package/src/client/react/components/ui/Tabs.tsx +70 -0
- package/src/client/react/components/ui/Tooltip.tsx +17 -0
- package/src/client/react/components/ui/buttonVariants.ts +16 -0
- package/src/client/react/components/ui/statusPresentation.ts +32 -0
- package/src/client/react/diagnosticsValues.tsx +3 -3
- package/src/client/react/documentRoute.ts +3 -3
- package/src/client/react/entry.css +239 -22
- package/src/client/react/entry.tsx +3 -7
- package/src/client/react/goalWork.ts +21 -0
- package/src/client/react/inProgressItems.ts +5 -0
- package/src/client/react/loadBoardPage.ts +34 -4
- package/src/client/react/loadProjection.ts +3 -4
- package/src/client/react/loadRemaining.ts +9 -4
- package/src/client/react/mainLocation.ts +8 -7
- package/src/client/react/navigationLocation.ts +1 -1
- package/src/client/react/pageQueries.ts +42 -0
- package/src/client/react/projectionChanges.ts +5 -3
- package/src/client/react/projectionRoute.ts +5 -8
- package/src/client/react/readerLink.ts +1 -1
- package/src/client/react/readingPassage.ts +40 -0
- package/src/client/react/readingState.ts +1 -30
- package/src/client/react/remainingRoute.ts +6 -4
- package/src/client/react/retryPage.ts +15 -0
- package/src/client/react/scheduleReading.ts +15 -10
- package/src/client/react/searchCommands.ts +26 -1
- package/src/client/react/shellIds.ts +2 -4
- package/src/client/react/storedReadings.ts +31 -0
- package/src/client/react/useAppearance.ts +1 -0
- package/src/client/react/useBoardNavigation.ts +13 -18
- package/src/client/react/useDiagnosticsPolling.ts +5 -2
- package/src/client/react/useDocumentPage.ts +5 -2
- package/src/client/react/useFormFocus.ts +22 -16
- package/src/client/react/useProjectionData.ts +26 -0
- package/src/client/react/useResponseForm.ts +20 -22
- package/src/client/react/useVirtualRows.ts +14 -0
- package/src/client/react/workspaceDestinations.ts +7 -0
- package/src/client/responses/summary.ts +6 -6
- package/src/diagnostics/daemonContract.ts +5 -1
- package/src/diagnostics/fleetItems.ts +26 -0
- package/src/metadata/schema.ts +3 -1
- package/src/render/visual.ts +7 -5
- package/src/rpc/PageUrl.ts +32 -0
- package/src/rpc/Server.ts +3 -0
- package/src/rpc/contract.ts +25 -48
- package/src/rpc/pageKeys.ts +1 -1
- package/src/server/attention/inbox.ts +21 -31
- package/src/server/attention/managedRequestReceipt.ts +17 -15
- package/src/server/attention/projection.ts +32 -0
- package/src/server/attention/questionState.ts +15 -26
- package/src/server/attention/requestInbox.ts +61 -0
- package/src/server/attention/requests.ts +18 -1
- package/src/server/attention/status.ts +15 -0
- package/src/server/board.ts +1 -1
- package/src/server/boardRuntime.ts +4 -1
- package/src/server/boardSocket.ts +81 -0
- package/src/server/cli.ts +4 -1
- package/src/server/currentDocument.ts +23 -0
- package/src/server/diagnostics/daemon.ts +34 -14
- package/src/server/document/answerBody.ts +96 -0
- package/src/server/document/read.ts +26 -16
- package/src/server/document/readingContext.ts +18 -7
- package/src/server/document/requestTitle.ts +10 -0
- package/src/server/document/requests.ts +46 -3
- package/src/server/files/watchDirectories.ts +3 -0
- package/src/server/http/assets.ts +2 -2
- package/src/server/http/boardRoutes.ts +22 -21
- package/src/server/http/identity.ts +15 -54
- package/src/server/http/page.ts +25 -81
- package/src/server/http/rpcPolicy.ts +2 -0
- package/src/server/integration/attention.ts +5 -0
- package/src/server/integration/diagnostics.ts +3 -0
- package/src/server/mcp/client.ts +43 -0
- package/src/server/mcp/queries.ts +60 -0
- package/src/server/mcp/run.ts +37 -0
- package/src/server/mcp/schema.ts +46 -0
- package/src/server/mcp/tools.ts +37 -0
- package/src/server/metadata/backlinks.ts +23 -7
- package/src/server/metadata/fields.ts +7 -0
- package/src/server/metadata/sourceLinks.ts +2 -2
- package/src/server/navigation/libraryData.ts +43 -0
- package/src/server/navigation/model.ts +14 -69
- package/src/server/packageInfo.ts +2 -0
- package/src/server/page/initialTheme.ts +13 -0
- package/src/server/page/shell.ts +5 -43
- package/src/server/page/startTemplates.ts +3 -3
- package/src/server/responseIndex.ts +97 -0
- package/src/server/responses/history.ts +5 -7
- package/src/server/responses/locate.ts +3 -6
- package/src/server/responses/optionPrompt.ts +1 -1
- package/src/server/responses/read.ts +12 -7
- package/src/server/rpc/HandlerOptions.ts +4 -0
- package/src/server/rpc/handlers.ts +18 -10
- package/src/server/search/entries.ts +5 -0
- package/src/server/search/match.ts +46 -11
- package/src/server/search/metadataEntries.ts +30 -5
- package/src/server/search/snippet.ts +9 -0
- package/src/server/search/updateEntries.ts +6 -2
- package/src/server/serve-cli.ts +1 -2
- package/src/server/serve.ts +28 -13
- package/src/server/views/fleetApproval.ts +12 -0
- package/src/server/views/fleetItems.ts +28 -0
- package/src/server/views/goals.ts +63 -0
- package/src/server/views/projection.ts +3 -2
- package/src/server/views/projectionQueries.ts +13 -31
- package/dist/browser/navigation/html.d.ts +0 -3
- package/dist/browser/navigation/html.d.ts.map +0 -1
- package/dist/browser/navigation/html.js +0 -25
- package/dist/browser/navigation/html.js.map +0 -1
- package/dist/browser/navigation/schema.d.ts +0 -47
- package/dist/browser/navigation/schema.d.ts.map +0 -1
- package/dist/browser/navigation/schema.js +0 -24
- package/dist/browser/navigation/schema.js.map +0 -1
- package/dist/client/mockups/app.d.ts +0 -2
- package/dist/client/mockups/app.d.ts.map +0 -1
- package/dist/client/mockups/app.js +0 -111
- package/dist/client/mockups/app.js.map +0 -1
- package/dist/client/mockups/element.d.ts +0 -2
- package/dist/client/mockups/element.d.ts.map +0 -1
- package/dist/client/mockups/element.js +0 -8
- package/dist/client/mockups/element.js.map +0 -1
- package/dist/client/mockups/sampleData.d.ts +0 -20
- package/dist/client/mockups/sampleData.d.ts.map +0 -1
- package/dist/client/mockups/sampleData.js +0 -82
- package/dist/client/mockups/sampleData.js.map +0 -1
- package/dist/client/mockups/work.d.ts +0 -3
- package/dist/client/mockups/work.d.ts.map +0 -1
- package/dist/client/mockups/work.js +0 -84
- package/dist/client/mockups/work.js.map +0 -1
- package/dist/client/react/ChangesMain.d.ts +0 -8
- package/dist/client/react/ChangesMain.d.ts.map +0 -1
- package/dist/client/react/ChangesMain.js +0 -24
- package/dist/client/react/ChangesMain.js.map +0 -1
- package/dist/client/react/DiagnosticsFleet.d.ts +0 -6
- package/dist/client/react/DiagnosticsFleet.d.ts.map +0 -1
- package/dist/client/react/DiagnosticsFleet.js +0 -16
- package/dist/client/react/DiagnosticsFleet.js.map +0 -1
- package/dist/client/react/DiagnosticsMain.d.ts +0 -8
- package/dist/client/react/DiagnosticsMain.d.ts.map +0 -1
- package/dist/client/react/DiagnosticsMain.js +0 -11
- package/dist/client/react/DiagnosticsMain.js.map +0 -1
- package/dist/client/react/DiagnosticsPage.d.ts +0 -5
- package/dist/client/react/DiagnosticsPage.d.ts.map +0 -1
- package/dist/client/react/DiagnosticsPage.js +0 -23
- package/dist/client/react/DiagnosticsPage.js.map +0 -1
- package/dist/client/react/HistoryComparison.d.ts +0 -5
- package/dist/client/react/HistoryComparison.d.ts.map +0 -1
- package/dist/client/react/HistoryComparison.js +0 -14
- package/dist/client/react/HistoryComparison.js.map +0 -1
- package/dist/client/react/HistoryRetention.d.ts +0 -5
- package/dist/client/react/HistoryRetention.d.ts.map +0 -1
- package/dist/client/react/HistoryRetention.js +0 -28
- package/dist/client/react/HistoryRetention.js.map +0 -1
- package/dist/client/react/InboxPage.d.ts +0 -5
- package/dist/client/react/InboxPage.d.ts.map +0 -1
- package/dist/client/react/InboxPage.js +0 -18
- package/dist/client/react/InboxPage.js.map +0 -1
- package/dist/client/react/NavigationTree.d.ts +0 -6
- package/dist/client/react/NavigationTree.d.ts.map +0 -1
- package/dist/client/react/NavigationTree.js +0 -29
- package/dist/client/react/NavigationTree.js.map +0 -1
- package/dist/client/react/OverviewGroups.d.ts +0 -5
- package/dist/client/react/OverviewGroups.d.ts.map +0 -1
- package/dist/client/react/OverviewGroups.js +0 -18
- package/dist/client/react/OverviewGroups.js.map +0 -1
- package/dist/client/react/OverviewPage.d.ts +0 -5
- package/dist/client/react/OverviewPage.d.ts.map +0 -1
- package/dist/client/react/OverviewPage.js +0 -16
- package/dist/client/react/OverviewPage.js.map +0 -1
- package/dist/client/react/historyStore.d.ts +0 -7
- package/dist/client/react/historyStore.d.ts.map +0 -1
- package/dist/client/react/historyStore.js +0 -61
- package/dist/client/react/historyStore.js.map +0 -1
- package/dist/client/react/pageQuery.d.ts +0 -5
- package/dist/client/react/pageQuery.d.ts.map +0 -1
- package/dist/client/react/pageQuery.js +0 -35
- package/dist/client/react/pageQuery.js.map +0 -1
- package/dist/client/react/readingHistory.d.ts +0 -38
- package/dist/client/react/readingHistory.d.ts.map +0 -1
- package/dist/client/react/readingHistory.js +0 -33
- package/dist/client/react/readingHistory.js.map +0 -1
- package/dist/client/react/readingLibrary.d.ts +0 -24
- package/dist/client/react/readingLibrary.d.ts.map +0 -1
- package/dist/client/react/readingLibrary.js +0 -18
- package/dist/client/react/readingLibrary.js.map +0 -1
- package/dist/client/react/savedViews.d.ts +0 -14
- package/dist/client/react/savedViews.d.ts.map +0 -1
- package/dist/client/react/savedViews.js +0 -87
- package/dist/client/react/savedViews.js.map +0 -1
- package/dist/client/react/useHistoryComparison.d.ts +0 -33
- package/dist/client/react/useHistoryComparison.d.ts.map +0 -1
- package/dist/client/react/useHistoryComparison.js +0 -146
- package/dist/client/react/useHistoryComparison.js.map +0 -1
- package/dist/history/schema.d.ts +0 -57
- package/dist/history/schema.d.ts.map +0 -1
- package/dist/history/schema.js +0 -31
- package/dist/history/schema.js.map +0 -1
- package/dist/server/attention/inboxHtml.d.ts +0 -4
- package/dist/server/attention/inboxHtml.d.ts.map +0 -1
- package/dist/server/attention/inboxHtml.js +0 -48
- package/dist/server/attention/inboxHtml.js.map +0 -1
- package/dist/server/attention/overviewHtml.d.ts +0 -3
- package/dist/server/attention/overviewHtml.d.ts.map +0 -1
- package/dist/server/attention/overviewHtml.js +0 -43
- package/dist/server/attention/overviewHtml.js.map +0 -1
- package/dist/server/attention/style.d.ts +0 -2
- package/dist/server/attention/style.d.ts.map +0 -1
- package/dist/server/attention/style.js +0 -10
- package/dist/server/attention/style.js.map +0 -1
- package/dist/server/diagnostics/style.d.ts +0 -2
- package/dist/server/diagnostics/style.d.ts.map +0 -1
- package/dist/server/diagnostics/style.js +0 -20
- package/dist/server/diagnostics/style.js.map +0 -1
- package/dist/server/history/baseline.d.ts +0 -19
- package/dist/server/history/baseline.d.ts.map +0 -1
- package/dist/server/history/baseline.js +0 -40
- package/dist/server/history/baseline.js.map +0 -1
- package/dist/server/history/compare.d.ts +0 -14
- package/dist/server/history/compare.d.ts.map +0 -1
- package/dist/server/history/compare.js +0 -47
- package/dist/server/history/compare.js.map +0 -1
- package/dist/server/history/documents.d.ts +0 -10
- package/dist/server/history/documents.d.ts.map +0 -1
- package/dist/server/history/documents.js +0 -15
- package/dist/server/history/documents.js.map +0 -1
- package/dist/server/history/fields.d.ts +0 -3
- package/dist/server/history/fields.d.ts.map +0 -1
- package/dist/server/history/fields.js +0 -27
- package/dist/server/history/fields.js.map +0 -1
- package/dist/server/history/html.d.ts +0 -3
- package/dist/server/history/html.d.ts.map +0 -1
- package/dist/server/history/html.js +0 -19
- package/dist/server/history/html.js.map +0 -1
- package/dist/server/history/limits.d.ts +0 -3
- package/dist/server/history/limits.d.ts.map +0 -1
- package/dist/server/history/limits.js +0 -3
- package/dist/server/history/limits.js.map +0 -1
- package/dist/server/history/response.d.ts +0 -4
- package/dist/server/history/response.d.ts.map +0 -1
- package/dist/server/history/response.js +0 -33
- package/dist/server/history/response.js.map +0 -1
- package/dist/server/http/inbox.d.ts +0 -5
- package/dist/server/http/inbox.d.ts.map +0 -1
- package/dist/server/http/inbox.js +0 -12
- package/dist/server/http/inbox.js.map +0 -1
- package/dist/server/http/overview.d.ts +0 -5
- package/dist/server/http/overview.d.ts.map +0 -1
- package/dist/server/http/overview.js +0 -13
- package/dist/server/http/overview.js.map +0 -1
- package/dist/server/http/work.d.ts +0 -6
- package/dist/server/http/work.d.ts.map +0 -1
- package/dist/server/http/work.js +0 -22
- package/dist/server/http/work.js.map +0 -1
- package/dist/server/page/attentionDetails.d.ts +0 -4
- package/dist/server/page/attentionDetails.d.ts.map +0 -1
- package/dist/server/page/attentionDetails.js +0 -24
- package/dist/server/page/attentionDetails.js.map +0 -1
- package/dist/server/page/backlinksHtml.d.ts +0 -3
- package/dist/server/page/backlinksHtml.d.ts.map +0 -1
- package/dist/server/page/backlinksHtml.js +0 -16
- package/dist/server/page/backlinksHtml.js.map +0 -1
- package/dist/server/page/boardHtml.d.ts +0 -4
- package/dist/server/page/boardHtml.d.ts.map +0 -1
- package/dist/server/page/boardHtml.js +0 -45
- package/dist/server/page/boardHtml.js.map +0 -1
- package/dist/server/page/criteriaEvidence.d.ts +0 -4
- package/dist/server/page/criteriaEvidence.d.ts.map +0 -1
- package/dist/server/page/criteriaEvidence.js +0 -27
- package/dist/server/page/criteriaEvidence.js.map +0 -1
- package/dist/server/page/documentHtml.d.ts +0 -4
- package/dist/server/page/documentHtml.d.ts.map +0 -1
- package/dist/server/page/documentHtml.js +0 -16
- package/dist/server/page/documentHtml.js.map +0 -1
- package/dist/server/page/itemIntroduction.d.ts +0 -3
- package/dist/server/page/itemIntroduction.d.ts.map +0 -1
- package/dist/server/page/itemIntroduction.js +0 -9
- package/dist/server/page/itemIntroduction.js.map +0 -1
- package/dist/server/page/itemStyles.d.ts +0 -2
- package/dist/server/page/itemStyles.d.ts.map +0 -1
- package/dist/server/page/itemStyles.js +0 -30
- package/dist/server/page/itemStyles.js.map +0 -1
- package/dist/server/page/metadata.d.ts +0 -5
- package/dist/server/page/metadata.d.ts.map +0 -1
- package/dist/server/page/metadata.js +0 -49
- package/dist/server/page/metadata.js.map +0 -1
- package/dist/server/page/metadataDetails.d.ts +0 -4
- package/dist/server/page/metadataDetails.d.ts.map +0 -1
- package/dist/server/page/metadataDetails.js +0 -35
- package/dist/server/page/metadataDetails.js.map +0 -1
- package/dist/server/page/metadataLinks.d.ts +0 -6
- package/dist/server/page/metadataLinks.d.ts.map +0 -1
- package/dist/server/page/metadataLinks.js +0 -31
- package/dist/server/page/metadataLinks.js.map +0 -1
- package/dist/server/page/nav.d.ts +0 -5
- package/dist/server/page/nav.d.ts.map +0 -1
- package/dist/server/page/nav.js +0 -9
- package/dist/server/page/nav.js.map +0 -1
- package/dist/server/page/readingStyles.d.ts +0 -2
- package/dist/server/page/readingStyles.d.ts.map +0 -1
- package/dist/server/page/readingStyles.js +0 -32
- package/dist/server/page/readingStyles.js.map +0 -1
- package/dist/server/page/readingTools.d.ts +0 -3
- package/dist/server/page/readingTools.d.ts.map +0 -1
- package/dist/server/page/readingTools.js +0 -10
- package/dist/server/page/readingTools.js.map +0 -1
- package/dist/server/page/recordedEvidence.d.ts +0 -4
- package/dist/server/page/recordedEvidence.d.ts.map +0 -1
- package/dist/server/page/recordedEvidence.js +0 -10
- package/dist/server/page/recordedEvidence.js.map +0 -1
- package/dist/server/page/searchDialog.d.ts +0 -3
- package/dist/server/page/searchDialog.d.ts.map +0 -1
- package/dist/server/page/searchDialog.js +0 -16
- package/dist/server/page/searchDialog.js.map +0 -1
- package/dist/server/page/style.d.ts +0 -2
- package/dist/server/page/style.d.ts.map +0 -1
- package/dist/server/page/style.js +0 -111
- package/dist/server/page/style.js.map +0 -1
- package/dist/server/page/updated.d.ts +0 -2
- package/dist/server/page/updated.d.ts.map +0 -1
- package/dist/server/page/updated.js +0 -4
- package/dist/server/page/updated.js.map +0 -1
- package/dist/server/page/visualDialog.d.ts +0 -3
- package/dist/server/page/visualDialog.d.ts.map +0 -1
- package/dist/server/page/visualDialog.js +0 -25
- package/dist/server/page/visualDialog.js.map +0 -1
- package/dist/server/page/workspaceStyles.d.ts +0 -3
- package/dist/server/page/workspaceStyles.d.ts.map +0 -1
- package/dist/server/page/workspaceStyles.js +0 -89
- package/dist/server/page/workspaceStyles.js.map +0 -1
- package/dist/server/responses/authoredQuestionHtml.d.ts +0 -4
- package/dist/server/responses/authoredQuestionHtml.d.ts.map +0 -1
- package/dist/server/responses/authoredQuestionHtml.js +0 -30
- package/dist/server/responses/authoredQuestionHtml.js.map +0 -1
- package/dist/server/responses/composerHtml.d.ts +0 -27
- package/dist/server/responses/composerHtml.d.ts.map +0 -1
- package/dist/server/responses/composerHtml.js +0 -17
- package/dist/server/responses/composerHtml.js.map +0 -1
- package/dist/server/responses/historyHtml.d.ts +0 -28
- package/dist/server/responses/historyHtml.d.ts.map +0 -1
- package/dist/server/responses/historyHtml.js +0 -8
- package/dist/server/responses/historyHtml.js.map +0 -1
- package/dist/server/responses/optionControls.d.ts +0 -4
- package/dist/server/responses/optionControls.d.ts.map +0 -1
- package/dist/server/responses/optionControls.js +0 -11
- package/dist/server/responses/optionControls.js.map +0 -1
- package/dist/server/responses/templateHtml.d.ts +0 -8
- package/dist/server/responses/templateHtml.d.ts.map +0 -1
- package/dist/server/responses/templateHtml.js +0 -26
- package/dist/server/responses/templateHtml.js.map +0 -1
- package/dist/server/views/tools.d.ts +0 -3
- package/dist/server/views/tools.d.ts.map +0 -1
- package/dist/server/views/tools.js +0 -11
- package/dist/server/views/tools.js.map +0 -1
- package/dist/server/views/workCards.d.ts +0 -4
- package/dist/server/views/workCards.d.ts.map +0 -1
- package/dist/server/views/workCards.js +0 -24
- package/dist/server/views/workCards.js.map +0 -1
- package/dist/server/views/workControls.d.ts +0 -4
- package/dist/server/views/workControls.d.ts.map +0 -1
- package/dist/server/views/workControls.js +0 -32
- package/dist/server/views/workControls.js.map +0 -1
- package/dist/server/views/workDetail.d.ts +0 -13
- package/dist/server/views/workDetail.d.ts.map +0 -1
- package/dist/server/views/workDetail.js +0 -26
- package/dist/server/views/workDetail.js.map +0 -1
- package/dist/server/views/workHtml.d.ts +0 -15
- package/dist/server/views/workHtml.d.ts.map +0 -1
- package/dist/server/views/workHtml.js +0 -39
- package/dist/server/views/workHtml.js.map +0 -1
- package/dist/server/views/workStyle.d.ts +0 -2
- package/dist/server/views/workStyle.d.ts.map +0 -1
- package/dist/server/views/workStyle.js +0 -19
- package/dist/server/views/workStyle.js.map +0 -1
- package/dist/server/views/workTable.d.ts +0 -4
- package/dist/server/views/workTable.d.ts.map +0 -1
- package/dist/server/views/workTable.js +0 -24
- package/dist/server/views/workTable.js.map +0 -1
- package/docs/delivery/change-history-examples.md +0 -46
- package/docs/experience.md +0 -89
- package/docs/mockups/images/brief-mobile.png +0 -0
- package/docs/mockups/images/brief.png +0 -0
- package/docs/mockups/images/decision-mobile.png +0 -0
- package/docs/mockups/images/decision.png +0 -0
- package/docs/mockups/images/evidence-mobile.png +0 -0
- package/docs/mockups/images/evidence.png +0 -0
- package/docs/mockups/images/overview-mobile.png +0 -0
- package/docs/mockups/images/overview.png +0 -0
- package/docs/mockups/images/vision-board.png +0 -0
- package/docs/mockups/images/work-mobile.png +0 -0
- package/docs/mockups/images/work.png +0 -0
- package/docs/mockups/index.html +0 -458
- package/docs/mockups/style.css +0 -1709
- package/src/browser/navigation/html.ts +0 -29
- package/src/browser/navigation/schema.ts +0 -27
- package/src/client/mockups/app.ts +0 -114
- package/src/client/mockups/element.ts +0 -7
- package/src/client/mockups/sampleData.ts +0 -92
- package/src/client/mockups/work.ts +0 -84
- package/src/client/react/ChangesMain.tsx +0 -68
- package/src/client/react/DiagnosticsFleet.tsx +0 -64
- package/src/client/react/DiagnosticsMain.tsx +0 -29
- package/src/client/react/DiagnosticsPage.tsx +0 -77
- package/src/client/react/HistoryComparison.tsx +0 -60
- package/src/client/react/HistoryRetention.tsx +0 -29
- package/src/client/react/InboxPage.tsx +0 -51
- package/src/client/react/NavigationTree.tsx +0 -64
- package/src/client/react/OverviewGroups.tsx +0 -61
- package/src/client/react/OverviewPage.tsx +0 -68
- package/src/client/react/historyStore.ts +0 -56
- package/src/client/react/pageQuery.ts +0 -38
- package/src/client/react/readingHistory.ts +0 -31
- package/src/client/react/readingLibrary.ts +0 -22
- package/src/client/react/useHistoryComparison.ts +0 -142
- package/src/history/schema.ts +0 -51
- package/src/server/attention/inboxHtml.ts +0 -56
- package/src/server/attention/overviewHtml.ts +0 -46
- package/src/server/attention/style.ts +0 -9
- package/src/server/diagnostics/style.ts +0 -19
- package/src/server/history/baseline.ts +0 -43
- package/src/server/history/compare.ts +0 -54
- package/src/server/history/documents.ts +0 -21
- package/src/server/history/fields.ts +0 -32
- package/src/server/history/html.ts +0 -20
- package/src/server/history/limits.ts +0 -2
- package/src/server/history/response.ts +0 -37
- package/src/server/http/inbox.ts +0 -27
- package/src/server/http/overview.ts +0 -19
- package/src/server/http/work.ts +0 -42
- package/src/server/page/attentionDetails.ts +0 -26
- package/src/server/page/backlinksHtml.ts +0 -18
- package/src/server/page/boardHtml.ts +0 -55
- package/src/server/page/criteriaEvidence.ts +0 -36
- package/src/server/page/documentHtml.ts +0 -23
- package/src/server/page/itemIntroduction.ts +0 -10
- package/src/server/page/itemStyles.ts +0 -29
- package/src/server/page/metadata.ts +0 -58
- package/src/server/page/metadataDetails.ts +0 -38
- package/src/server/page/metadataLinks.ts +0 -35
- package/src/server/page/nav.ts +0 -12
- package/src/server/page/readingStyles.ts +0 -31
- package/src/server/page/readingTools.ts +0 -12
- package/src/server/page/recordedEvidence.ts +0 -12
- package/src/server/page/searchDialog.ts +0 -16
- package/src/server/page/style.ts +0 -117
- package/src/server/page/updated.ts +0 -3
- package/src/server/page/visualDialog.ts +0 -25
- package/src/server/page/workspaceStyles.ts +0 -89
- package/src/server/responses/authoredQuestionHtml.ts +0 -46
- package/src/server/responses/composerHtml.ts +0 -25
- package/src/server/responses/historyHtml.ts +0 -20
- package/src/server/responses/optionControls.ts +0 -13
- package/src/server/responses/templateHtml.ts +0 -34
- package/src/server/views/tools.ts +0 -11
- package/src/server/views/workCards.ts +0 -27
- package/src/server/views/workControls.ts +0 -38
- package/src/server/views/workDetail.ts +0 -28
- package/src/server/views/workHtml.ts +0 -45
- package/src/server/views/workStyle.ts +0 -18
- package/src/server/views/workTable.ts +0 -26
- /package/src/client/react/{savedViews.ts → useSavedViews.ts} +0 -0
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import { fileUrl } from "#files/url.ts";
|
|
3
|
-
import { referenceHtml } from "#server/page/metadataLinks.ts";
|
|
4
|
-
import type { Snapshot } from "#server/search/snapshot.ts";
|
|
5
|
-
import { inboxItems } from "./inbox.ts";
|
|
6
|
-
import { inboxHtml } from "./inboxHtml.ts";
|
|
7
|
-
import { type AttentionEntry, attentionRequests } from "./requests.ts";
|
|
8
|
-
|
|
9
|
-
function card(entry: AttentionEntry, snapshot: Snapshot): string {
|
|
10
|
-
const { request } = entry;
|
|
11
|
-
return `<article class="attention-card" data-key="attention:${escapeHtml(entry.itemId)}:${escapeHtml(request.id)}" data-attention-item="${escapeHtml(entry.itemId)}" data-request="${escapeHtml(request.id)}">
|
|
12
|
-
<p class="work-kind">${escapeHtml(request.kind)} request</p><h3><a href="${escapeHtml(entry.href)}">${escapeHtml(entry.title)}</a></h3>
|
|
13
|
-
<p class="work-id">${escapeHtml(entry.itemId)} / ${escapeHtml(request.id)}</p><p class="attention-reason">${escapeHtml(request.reason)}</p>
|
|
14
|
-
<dl><dt>Response needed from</dt><dd>${request.responseFrom.map(escapeHtml).join(", ")}</dd><dt>Recorded to unblock</dt><dd>${request.unblocks.map((target) => referenceHtml(target, target, snapshot.model)).join(", ")}</dd></dl>
|
|
15
|
-
<a class="attention-source" href="${escapeHtml(fileUrl(entry.document.file))}#attention-request-${encodeURIComponent(request.id)}">Source: ${escapeHtml(entry.document.file)}:${entry.line}</a></article>`;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function overviewHtml(snapshot: Snapshot): string {
|
|
19
|
-
const projection = attentionRequests(snapshot);
|
|
20
|
-
const header =
|
|
21
|
-
'<header class="work-head"><p class="work-eyebrow">WORKSPACE · OVERVIEW</p><h1>What needs a response?</h1><p>Choose a recorded request to read its context, reasoning and evidence.</p><a href="/_board/work?view=board">Browse all work</a></header>';
|
|
22
|
-
const issues =
|
|
23
|
-
projection.issues.length > 0
|
|
24
|
-
? `<details class="view-issues" data-key="attention-issues"><summary>Unclassified requests and source issues (${projection.issues.length})</summary><p>Ambiguous or invalid requests stay outside the queues. Read their original sources.</p><ul>${projection.issues.map((issue) => `<li><a href="${escapeHtml(fileUrl(issue.file))}">${escapeHtml(issue.file)}:${issue.line}</a> — ${escapeHtml(issue.message)}</li>`).join("")}</ul></details>`
|
|
25
|
-
: "";
|
|
26
|
-
if (!projection.complete) {
|
|
27
|
-
return `${header}<p class="attention-incomplete" role="status">Workspace incomplete. Could not read ${snapshot.unavailable.map(escapeHtml).join(", ")}. Requests are not counted or classified until the index is complete.</p>${issues}`;
|
|
28
|
-
}
|
|
29
|
-
let summary = inboxItems(snapshot).length > 0 ? "No explicit open attention requests recorded." : "All quiet — no explicit open requests recorded.";
|
|
30
|
-
if (projection.entries.length > 0) {
|
|
31
|
-
summary = `${projection.entries.length} validated open request${projection.entries.length === 1 ? "" : "s"}`;
|
|
32
|
-
} else if (projection.issues.length > 0) {
|
|
33
|
-
summary = "No validated open requests. Check unresolved source issues before treating this workspace as quiet.";
|
|
34
|
-
}
|
|
35
|
-
const groups = [
|
|
36
|
-
{ empty: "No open decision requests.", kind: "decision", title: "Decisions" },
|
|
37
|
-
{ empty: "No open review requests.", kind: "review", title: "Reviews" },
|
|
38
|
-
{ empty: "No open blocker requests.", kind: "blocker", title: "Blockers" },
|
|
39
|
-
]
|
|
40
|
-
.map((group) => {
|
|
41
|
-
const entries = projection.entries.filter((entry) => entry.request.kind === group.kind);
|
|
42
|
-
return `<section class="attention-group" aria-labelledby="attention-${group.kind}"><h2 id="attention-${group.kind}" tabindex="-1">${group.title}<span>${entries.length}</span></h2>${entries.length > 0 ? entries.map((entry) => card(entry, snapshot)).join("") : `<p class="empty">${group.empty}</p>`}</section>`;
|
|
43
|
-
})
|
|
44
|
-
.join("");
|
|
45
|
-
return `${header}${inboxHtml(snapshot, true)}<p class="attention-total" role="status">${summary}</p><p class="attention-order">Decisions, reviews, then blockers. Within each group: source title, item ID, request ID. Recipients are recorded labels.</p>${issues}<div class="attention-groups">${groups}</div><p class="attention-footnote">These are authored requests. Closing one does not verify evidence or record an answer. The Inbox also shows human-owned next actions and questions; file activity and finished runs do not create requests.</p>`;
|
|
46
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export function attentionStyle(): string {
|
|
2
|
-
return `
|
|
3
|
-
.attention-total{margin:24px 0 8px;font-weight:600}.attention-order,.attention-footnote{font-size:13px;color:var(--muted);margin:0 0 24px;overflow-wrap:anywhere}
|
|
4
|
-
.attention-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.attention-group{min-width:0}.attention-group>h2{display:flex;justify-content:space-between;gap:12px;font-size:16px;margin:0 0 16px}.attention-group>h2>span{font:12px var(--mono);color:var(--muted)}
|
|
5
|
-
.attention-card{border:1px solid var(--border);border-radius:10px;padding:var(--card-space);background:var(--card);margin:0 0 16px;overflow-wrap:anywhere}.attention-card h3{font-size:1rem;margin:6px 0}.attention-card h3 a{text-decoration:none}.attention-card dl{font-size:13px;margin:16px 0}.attention-card dt{color:var(--muted);margin-top:12px}.attention-card dd{margin:4px 0}.attention-source{font-size:12px}.attention-reason{font-size:14px;margin:0}.attention-footnote{margin-top:24px}.attention-incomplete{padding:16px;border:1px solid var(--danger);border-radius:8px;margin:24px 0;overflow-wrap:anywhere}
|
|
6
|
-
[id^="attention-request-"],[id^="attention-record-"]{scroll-margin-top:20px}
|
|
7
|
-
@media(max-width:1100px){.attention-groups{grid-template-columns:minmax(0,1fr)}}
|
|
8
|
-
`;
|
|
9
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export function diagnosticsStyle(): string {
|
|
2
|
-
return `
|
|
3
|
-
.diagnostics { max-width: 1200px; margin: auto; padding: clamp(1rem, 3vw, 2rem); }
|
|
4
|
-
.diagnostics-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 1rem; align-items: start; }
|
|
5
|
-
.diagnostics-card { min-width: 0; border: 1px solid var(--border); border-radius: 12px; padding: 1.25rem; background: var(--surface); overflow-wrap: anywhere; }
|
|
6
|
-
.diagnostics-card header { display: flex; align-items: baseline; flex-wrap: wrap; gap: .5rem 1rem; justify-content: space-between; }
|
|
7
|
-
.diagnostics-card h2 { margin: 0; }
|
|
8
|
-
.diagnostics-status { font-size: .85rem; border: 1px solid var(--border); border-radius: 1rem; padding: .2rem .6rem; }
|
|
9
|
-
.diagnostics-card[data-state=attention], .diagnostics-card[data-state=error] { border-color: var(--link); }
|
|
10
|
-
.diagnostics-card[data-state=stale] .diagnostics-metrics strong { opacity: .55; }
|
|
11
|
-
.diagnostics-freshness { font-size: .85rem; color: var(--muted); }
|
|
12
|
-
.diagnostics-windows { list-style: none; padding: 0; }
|
|
13
|
-
.diagnostics-windows li + li, .diagnostics-metrics > div + div { border-top: 1px solid var(--border); padding-top: .75rem; margin-top: .75rem; }
|
|
14
|
-
.diagnostics-windows h3 { margin-bottom: .25rem; }
|
|
15
|
-
.diagnostics-windows meter { width: 100%; height: .75rem; accent-color: var(--link); }
|
|
16
|
-
.diagnostics-metrics dt { color: var(--muted); }
|
|
17
|
-
.diagnostics-metrics dd { margin: .25rem 0 0; }
|
|
18
|
-
`;
|
|
19
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Option, Schema } from "effect";
|
|
2
|
-
import { Baseline } from "#history/schema.ts";
|
|
3
|
-
import type { Snapshot } from "#server/search/snapshot.ts";
|
|
4
|
-
import { MAX_AGE, MAX_BYTES } from "./limits.ts";
|
|
5
|
-
|
|
6
|
-
const JsonBaseline = Schema.fromJsonString(Baseline);
|
|
7
|
-
function byteLength(text: string): number {
|
|
8
|
-
return new TextEncoder().encode(text).length;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export function readBaseline(raw: string | null, now: number) {
|
|
12
|
-
if (raw === null) {
|
|
13
|
-
return { baseline: undefined, discard: false, reason: "No previous snapshot. Start remembering changes to compare future source observations." };
|
|
14
|
-
}
|
|
15
|
-
if (byteLength(raw) > MAX_BYTES) {
|
|
16
|
-
return { baseline: undefined, discard: true, reason: "Remembered snapshot exceeds 2 MiB; history is unavailable." };
|
|
17
|
-
}
|
|
18
|
-
const decoded = Schema.decodeUnknownOption(JsonBaseline, { onExcessProperty: "error" })(raw);
|
|
19
|
-
if (Option.isNone(decoded)) {
|
|
20
|
-
return { baseline: undefined, discard: true, reason: "Remembered snapshot is invalid or unsupported; history is unavailable." };
|
|
21
|
-
}
|
|
22
|
-
const elapsed = now - Date.parse(decoded.value.recordedAt);
|
|
23
|
-
if (elapsed < 0) {
|
|
24
|
-
return { baseline: undefined, discard: true, reason: "Remembered observation is in the future; history is unavailable." };
|
|
25
|
-
}
|
|
26
|
-
if (elapsed >= MAX_AGE) {
|
|
27
|
-
return { baseline: undefined, discard: true, reason: "Remembered snapshot expired after 30 days; start again to establish a new baseline." };
|
|
28
|
-
}
|
|
29
|
-
return { baseline: decoded.value, discard: false, reason: "" };
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export function observeBaseline(snapshot: Snapshot, now: number): string | undefined {
|
|
33
|
-
if (snapshot.unavailable.length > 0) {
|
|
34
|
-
return undefined;
|
|
35
|
-
}
|
|
36
|
-
const baseline: Baseline = {
|
|
37
|
-
documents: snapshot.documents.map((document) => ({ file: document.file, source: (document.parsed.raw ?? "") + document.parsed.body })),
|
|
38
|
-
recordedAt: new Date(now).toISOString(),
|
|
39
|
-
version: 1,
|
|
40
|
-
};
|
|
41
|
-
const raw = Schema.encodeSync(JsonBaseline)(baseline);
|
|
42
|
-
return byteLength(raw) <= MAX_BYTES ? raw : undefined;
|
|
43
|
-
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import type { Baseline } from "#history/schema.ts";
|
|
2
|
-
import { type HistoryDocument, historyDocuments, historyIdentities } from "./documents.ts";
|
|
3
|
-
import { historyFields } from "./fields.ts";
|
|
4
|
-
|
|
5
|
-
export interface SourceChange {
|
|
6
|
-
readonly after?: HistoryDocument;
|
|
7
|
-
readonly before?: HistoryDocument;
|
|
8
|
-
readonly kind: "added" | "removed" | "changed";
|
|
9
|
-
readonly reasons: readonly string[];
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export function compareHistory(baseline: Baseline, current: Baseline) {
|
|
13
|
-
const before = historyDocuments(baseline);
|
|
14
|
-
const after = historyDocuments(current);
|
|
15
|
-
const oldIds = historyIdentities(before);
|
|
16
|
-
const newIds = historyIdentities(after);
|
|
17
|
-
const paired = new Set<HistoryDocument>();
|
|
18
|
-
const remaining = new Set(after);
|
|
19
|
-
const changes: SourceChange[] = [];
|
|
20
|
-
function pair(old: HistoryDocument, next: HistoryDocument) {
|
|
21
|
-
paired.add(old);
|
|
22
|
-
remaining.delete(next);
|
|
23
|
-
if (old.source !== next.source || old.file !== next.file) {
|
|
24
|
-
changes.push({ after: next, before: old, kind: "changed", reasons: historyFields(old, next) });
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
for (const [id, old] of oldIds) {
|
|
28
|
-
const next = newIds.get(id);
|
|
29
|
-
if (old && next) {
|
|
30
|
-
pair(old, next);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
const byFile = new Map([...remaining].map((document) => [document.file, document]));
|
|
34
|
-
for (const old of before) {
|
|
35
|
-
if (paired.has(old)) {
|
|
36
|
-
continue;
|
|
37
|
-
}
|
|
38
|
-
const next = byFile.get(old.file);
|
|
39
|
-
if (next) {
|
|
40
|
-
pair(old, next);
|
|
41
|
-
} else {
|
|
42
|
-
changes.push({ before: old, kind: "removed", reasons: ["Source absent from the complete current observation"] });
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
for (const next of remaining) {
|
|
46
|
-
changes.push({ after: next, kind: "added", reasons: ["Source added since the remembered observation"] });
|
|
47
|
-
}
|
|
48
|
-
const issues = [
|
|
49
|
-
...[...oldIds].filter(([, document]) => !document).map(([id]) => `Duplicate ID ${id} in remembered sources; no identity winner selected.`),
|
|
50
|
-
...[...newIds].filter(([, document]) => !document).map(([id]) => `Duplicate ID ${id} in current sources; no identity winner selected.`),
|
|
51
|
-
];
|
|
52
|
-
changes.sort((a, b) => (a.after?.file ?? a.before?.file ?? "").localeCompare(b.after?.file ?? b.before?.file ?? "", "en"));
|
|
53
|
-
return { changes, issues, newIds };
|
|
54
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import type { Baseline } from "#history/schema.ts";
|
|
2
|
-
import { metadataParse, type ParsedMetadata } from "#server/metadata/parse.ts";
|
|
3
|
-
|
|
4
|
-
export interface HistoryDocument {
|
|
5
|
-
readonly file: string;
|
|
6
|
-
readonly parsed: ParsedMetadata;
|
|
7
|
-
readonly source: string;
|
|
8
|
-
}
|
|
9
|
-
export function historyDocuments(baseline: Baseline): readonly HistoryDocument[] {
|
|
10
|
-
return baseline.documents.map((document) => ({ ...document, parsed: metadataParse(document.source) }));
|
|
11
|
-
}
|
|
12
|
-
export function historyIdentities(documents: readonly HistoryDocument[]): ReadonlyMap<string, HistoryDocument | undefined> {
|
|
13
|
-
const ids = new Map<string, HistoryDocument | undefined>();
|
|
14
|
-
for (const document of documents) {
|
|
15
|
-
const id = document.parsed.fields.id;
|
|
16
|
-
if (id) {
|
|
17
|
-
ids.set(id, ids.has(id) ? undefined : document);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return ids;
|
|
21
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type { Metadata } from "#metadata/schema.ts";
|
|
2
|
-
import type { HistoryDocument } from "./documents.ts";
|
|
3
|
-
|
|
4
|
-
const labels: ReadonlyArray<readonly [keyof Metadata, string]> = [
|
|
5
|
-
["attention", "Recorded attention requests changed"],
|
|
6
|
-
["criteria", "Criteria changed"],
|
|
7
|
-
["evidence", "Recorded evidence changed (not verified acceptance)"],
|
|
8
|
-
["id", "Item ID changed"],
|
|
9
|
-
["items", "Declared board membership changed"],
|
|
10
|
-
["kind", "Item kind changed"],
|
|
11
|
-
["nextAction", "Next action changed"],
|
|
12
|
-
["owner", "Recorded owner changed (not authorship)"],
|
|
13
|
-
["relationships", "Explicit relationships changed"],
|
|
14
|
-
["status", "Recorded status changed (not acceptance)"],
|
|
15
|
-
];
|
|
16
|
-
|
|
17
|
-
export function historyFields(before: HistoryDocument, after: HistoryDocument): readonly string[] {
|
|
18
|
-
const changes = labels.flatMap(([field, label]) =>
|
|
19
|
-
JSON.stringify(before.parsed.fields[field]) === JSON.stringify(after.parsed.fields[field]) ? [] : [label],
|
|
20
|
-
);
|
|
21
|
-
if (before.parsed.body !== after.parsed.body) {
|
|
22
|
-
const decision = before.parsed.fields.kind === "decision" || after.parsed.fields.kind === "decision";
|
|
23
|
-
changes.push(decision ? "Decision Markdown changed" : "Markdown body changed");
|
|
24
|
-
}
|
|
25
|
-
if (changes.length === 0 && before.source !== after.source) {
|
|
26
|
-
changes.push("Other frontmatter content or source formatting changed; no further interpretation");
|
|
27
|
-
}
|
|
28
|
-
if (before.file !== after.file) {
|
|
29
|
-
changes.unshift("Source path changed for the same unique item ID");
|
|
30
|
-
}
|
|
31
|
-
return changes;
|
|
32
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import { fileUrl } from "#files/url.ts";
|
|
3
|
-
import type { Baseline } from "#history/schema.ts";
|
|
4
|
-
import { compareHistory, type SourceChange } from "./compare.ts";
|
|
5
|
-
|
|
6
|
-
function source(label: string, text: string, key: string): string {
|
|
7
|
-
return `<details data-key="${escapeHtml(key)}:${label}" data-history-source="${label.toLowerCase()}"><summary>${label} source (plain text)</summary><pre class="history-source">${escapeHtml(text)}</pre></details>`;
|
|
8
|
-
}
|
|
9
|
-
function changeHtml(change: SourceChange): string {
|
|
10
|
-
const file = change.after?.file ?? change.before?.file ?? "";
|
|
11
|
-
const key = change.before ? `before:${change.before.file}` : `added:${file}`;
|
|
12
|
-
return `<article class="history-change" data-key="${escapeHtml(key)}"><h2>${change.kind}: ${escapeHtml(file)}</h2>${change.before && change.after && change.before.file !== file ? `<p>Previously ${escapeHtml(change.before.file)}</p>` : ""}<ul>${change.reasons.map((reason) => `<li>${escapeHtml(reason)}</li>`).join("")}</ul>${change.after ? `<a href="${escapeHtml(fileUrl(change.after.file))}">Read current source</a>` : "<p>Removed source; no current document link.</p>"}${change.before ? source("Remembered", change.before.source, key) : ""}${change.after ? source("Current", change.after.source, key) : ""}</article>`;
|
|
13
|
-
}
|
|
14
|
-
export function historyHtml(before: Baseline, current: Baseline): string {
|
|
15
|
-
const result = compareHistory(before, current);
|
|
16
|
-
const counts = ["added", "removed", "changed"]
|
|
17
|
-
.map((kind) => `${result.changes.filter((change) => change.kind === kind).length} ${kind}`)
|
|
18
|
-
.join(" · ");
|
|
19
|
-
return `<p>Compared with your observation at <time>${escapeHtml(before.recordedAt)}</time>.</p><p role="status">${counts}</p>${result.changes.length === 0 ? "<p>No source changes since that observation.</p>" : ""}${result.issues.length > 0 ? `<aside aria-label="Identity limitations"><ul>${result.issues.map((issue) => `<li>${escapeHtml(issue)}</li>`).join("")}</ul><p>Ambiguous identities are compared by source path only.</p></aside>` : ""}${result.changes.map(changeHtml).join("")}`;
|
|
20
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import type { HistoryOutput } from "#history/schema.ts";
|
|
3
|
-
import type { Snapshot } from "#server/search/snapshot.ts";
|
|
4
|
-
import { observeBaseline, readBaseline } from "./baseline.ts";
|
|
5
|
-
import { compareHistory } from "./compare.ts";
|
|
6
|
-
import { historyHtml } from "./html.ts";
|
|
7
|
-
|
|
8
|
-
export function historyResponse(raw: string | null, now: number, snapshot?: Snapshot): HistoryOutput {
|
|
9
|
-
const prior = readBaseline(raw, now);
|
|
10
|
-
const output: HistoryOutput = { discardBaseline: prior.discard, html: `<p>${escapeHtml(prior.reason)}</p>`, reason: prior.reason, snapshot: null };
|
|
11
|
-
if (snapshot === undefined) {
|
|
12
|
-
return output;
|
|
13
|
-
}
|
|
14
|
-
const currentRaw = observeBaseline(snapshot, now);
|
|
15
|
-
if (currentRaw === undefined) {
|
|
16
|
-
const reason =
|
|
17
|
-
snapshot.unavailable.length > 0
|
|
18
|
-
? "Current workspace observation is incomplete; no comparison or removals are inferred. Your valid remembered snapshot is preserved."
|
|
19
|
-
: "Complete current snapshot exceeds 2 MiB; no comparison or partial history is retained.";
|
|
20
|
-
return { ...output, html: `<p role="status">${escapeHtml(reason)}</p>`, reason };
|
|
21
|
-
}
|
|
22
|
-
const current = readBaseline(currentRaw, now).baseline;
|
|
23
|
-
const compared = prior.baseline && current ? compareHistory(prior.baseline, current) : undefined;
|
|
24
|
-
const comparison =
|
|
25
|
-
compared && prior.baseline
|
|
26
|
-
? {
|
|
27
|
-
changes: compared.changes.map(({ before, after, ...change }) => ({
|
|
28
|
-
...change,
|
|
29
|
-
after: after ? { file: after.file, source: after.source } : undefined,
|
|
30
|
-
before: before ? { file: before.file, source: before.source } : undefined,
|
|
31
|
-
})),
|
|
32
|
-
issues: compared.issues,
|
|
33
|
-
recordedAt: prior.baseline.recordedAt,
|
|
34
|
-
}
|
|
35
|
-
: undefined;
|
|
36
|
-
return { ...output, comparison, html: prior.baseline && current ? historyHtml(prior.baseline, current) : output.html, snapshot: currentRaw };
|
|
37
|
-
}
|
package/src/server/http/inbox.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Clock, Effect } from "effect";
|
|
2
|
-
import { inboxHtml } from "#server/attention/inboxHtml.ts";
|
|
3
|
-
import type { Changes } from "#server/files/changes.ts";
|
|
4
|
-
import { navHtml } from "#server/page/nav.ts";
|
|
5
|
-
import { shell } from "#server/page/shell.ts";
|
|
6
|
-
import type { searchSnapshot } from "#server/search/snapshot.ts";
|
|
7
|
-
import { respond } from "./respond.ts";
|
|
8
|
-
|
|
9
|
-
export function inbox(index: Effect.Success<ReturnType<typeof searchSnapshot>>, changes: Changes, home: string | undefined) {
|
|
10
|
-
return Effect.fn("WorkBoard.inbox")(function* () {
|
|
11
|
-
const snapshot = yield* index;
|
|
12
|
-
return respond(
|
|
13
|
-
shell(
|
|
14
|
-
"Inbox",
|
|
15
|
-
navHtml(yield* changes.files, "", home, snapshot),
|
|
16
|
-
inboxHtml(snapshot, false, yield* Clock.currentTimeMillis),
|
|
17
|
-
changes.realRoot,
|
|
18
|
-
true,
|
|
19
|
-
undefined,
|
|
20
|
-
"inbox",
|
|
21
|
-
snapshot,
|
|
22
|
-
),
|
|
23
|
-
"text/html",
|
|
24
|
-
snapshot.unavailable.length > 0 ? 503 : 200,
|
|
25
|
-
);
|
|
26
|
-
});
|
|
27
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Effect } from "effect";
|
|
2
|
-
import { overviewHtml } from "#server/attention/overviewHtml.ts";
|
|
3
|
-
import type { Changes } from "#server/files/changes.ts";
|
|
4
|
-
import { navHtml } from "#server/page/nav.ts";
|
|
5
|
-
import { shell } from "#server/page/shell.ts";
|
|
6
|
-
import type { searchSnapshot } from "#server/search/snapshot.ts";
|
|
7
|
-
import { respond } from "./respond.ts";
|
|
8
|
-
|
|
9
|
-
export function overview(index: Effect.Success<ReturnType<typeof searchSnapshot>>, changes: Changes, home: string | undefined) {
|
|
10
|
-
return Effect.fn("WorkBoard.overview")(function* () {
|
|
11
|
-
const snapshot = yield* index;
|
|
12
|
-
const nav = navHtml(yield* changes.files, "", home, snapshot);
|
|
13
|
-
return respond(
|
|
14
|
-
shell("Overview", nav, overviewHtml(snapshot), changes.realRoot, true, undefined, "overview", snapshot),
|
|
15
|
-
"text/html",
|
|
16
|
-
snapshot.unavailable.length > 0 ? 503 : 200,
|
|
17
|
-
);
|
|
18
|
-
});
|
|
19
|
-
}
|
package/src/server/http/work.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { Effect } from "effect";
|
|
2
|
-
import type { HttpServerRequest } from "effect/http";
|
|
3
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
4
|
-
import type { Changes } from "#server/files/changes.ts";
|
|
5
|
-
import { navHtml } from "#server/page/nav.ts";
|
|
6
|
-
import { shell } from "#server/page/shell.ts";
|
|
7
|
-
import type { searchSnapshot } from "#server/search/snapshot.ts";
|
|
8
|
-
import { stateOf } from "#server/views/state.ts";
|
|
9
|
-
import { workHtml } from "#server/views/workHtml.ts";
|
|
10
|
-
import { respond } from "./respond.ts";
|
|
11
|
-
|
|
12
|
-
export function work(index: Effect.Success<ReturnType<typeof searchSnapshot>>, changes: Changes, home: string | undefined) {
|
|
13
|
-
return Effect.fn("WorkBoard.work")(function* (request: HttpServerRequest.HttpServerRequest) {
|
|
14
|
-
const snapshot = yield* index;
|
|
15
|
-
const nav = navHtml(yield* changes.files, "", home, snapshot);
|
|
16
|
-
if (snapshot.unavailable.length > 0) {
|
|
17
|
-
return respond(
|
|
18
|
-
shell(
|
|
19
|
-
"Work",
|
|
20
|
-
nav,
|
|
21
|
-
`<h1>Workspace incomplete</h1><p class="empty">Could not read ${escapeHtml(snapshot.unavailable.join(", "))}. Work identity and view counts cannot be validated. Read available source files or retry when the workspace is readable.</p>`,
|
|
22
|
-
changes.realRoot,
|
|
23
|
-
true,
|
|
24
|
-
undefined,
|
|
25
|
-
true,
|
|
26
|
-
snapshot,
|
|
27
|
-
),
|
|
28
|
-
"text/html",
|
|
29
|
-
503,
|
|
30
|
-
);
|
|
31
|
-
}
|
|
32
|
-
const result = yield* workHtml(snapshot, stateOf(request.url)).pipe(
|
|
33
|
-
Effect.catch(() =>
|
|
34
|
-
Effect.succeed({
|
|
35
|
-
html: '<h1>Work unavailable</h1><p class="empty">The selected source could not be rendered. Read its Markdown file or retry.</p>',
|
|
36
|
-
status: 500,
|
|
37
|
-
}),
|
|
38
|
-
),
|
|
39
|
-
);
|
|
40
|
-
return respond(shell("Work", nav, result.html, changes.realRoot, true, undefined, true, snapshot), "text/html", result.status);
|
|
41
|
-
});
|
|
42
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import { managedRequestReceipt } from "#server/attention/managedRequestReceipt.ts";
|
|
3
|
-
import { attentionSource } from "#server/attention/requests.ts";
|
|
4
|
-
import { identityUrl } from "#server/metadata/links.ts";
|
|
5
|
-
import type { MetadataModel } from "#server/metadata/model.ts";
|
|
6
|
-
import type { ParsedMetadata } from "#server/metadata/parse.ts";
|
|
7
|
-
import { referenceHtml } from "./metadataLinks.ts";
|
|
8
|
-
|
|
9
|
-
export function attentionDetails(parsed: ParsedMetadata, file: string, model: MetadataModel): string {
|
|
10
|
-
const requests = parsed.fields.attention ?? [];
|
|
11
|
-
if (requests.length === 0) {
|
|
12
|
-
return "";
|
|
13
|
-
}
|
|
14
|
-
return `<h3>Recorded attention requests</h3><p>Open/closed is source state. Closing a request does not establish acceptance or record an answer.</p><ul>${requests
|
|
15
|
-
.map((request, index) => {
|
|
16
|
-
const receipt = managedRequestReceipt({ file, parsed }, request, model);
|
|
17
|
-
const acknowledged = receipt
|
|
18
|
-
? `<p>Managed request acknowledged: ${receipt.disposition}. Source state remains ${escapeHtml(request.state)}. This receipt does not establish acceptance.</p><p>Reviewed question: ${referenceHtml(receipt.question, receipt.question, model)}</p>`
|
|
19
|
-
: "";
|
|
20
|
-
const respond = receipt
|
|
21
|
-
? ""
|
|
22
|
-
: `<a href="/_board/respond?item=${encodeURIComponent(parsed.fields.id ?? "")}&request=${encodeURIComponent(request.id)}">Respond to this request</a> · `;
|
|
23
|
-
return `<li id="${attentionSource({ file, parsed }, index)}" tabindex="-1"><b>${escapeHtml(request.kind)} · ${escapeHtml(request.id)} · ${escapeHtml(request.state)}</b>${acknowledged}<p>${escapeHtml(request.reason)}</p><p>Response needed from: ${request.responseFrom.map(escapeHtml).join(", ")}</p><p>Recorded to unblock: ${request.unblocks.map((target) => referenceHtml(target, target, model)).join(", ")}</p><p>${respond}<a href="${identityUrl(parsed.fields.id ?? "")}">Reviewed item</a></p><p>Source: ${escapeHtml(file)}:${parsed.lines[`attention.${index}`] ?? parsed.lines.attention ?? 2}</p></li>`;
|
|
24
|
-
})
|
|
25
|
-
.join("")}</ul>`;
|
|
26
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import { backlinksOf } from "#server/metadata/backlinks.ts";
|
|
3
|
-
import type { MetadataModel } from "#server/metadata/model.ts";
|
|
4
|
-
import { relationshipLabel } from "#server/metadata/relationshipLabel.ts";
|
|
5
|
-
import { documentReference } from "./metadataLinks.ts";
|
|
6
|
-
|
|
7
|
-
export function backlinksHtml(file: string, model: MetadataModel): string {
|
|
8
|
-
const links = backlinksOf(file, model);
|
|
9
|
-
if (links.length === 0) {
|
|
10
|
-
return "";
|
|
11
|
-
}
|
|
12
|
-
const entries = [...new Map(links.map((link) => [`${link.file}:${link.kind}:${link.line ?? ""}`, link])).values()];
|
|
13
|
-
const incomplete =
|
|
14
|
-
model.unavailable.length > 0
|
|
15
|
-
? "<p>Available source references only; unreadable files prevent complete backlink and identity validation.</p>"
|
|
16
|
-
: "";
|
|
17
|
-
return `<section class="work-context" aria-label="Source backlinks"><details data-key="work-backlinks"><summary>Referenced by (${entries.length})</summary>${incomplete}<ul>${entries.map((link) => `<li>${escapeHtml(relationshipLabel(link.kind))}: <a href="${escapeHtml(documentReference(link.file, model))}">${escapeHtml(link.file)}${link.line === undefined ? "" : `:${link.line}`}</a></li>`).join("")}</ul><p>These are explicit source links, not inferred blockers or workflow rules.</p></details></section>`;
|
|
18
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Effect } from "effect";
|
|
2
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
3
|
-
import { documentHeadings } from "#render/documentHeadings.ts";
|
|
4
|
-
import { type Board, countsOf, type Section } from "#server/render/board.ts";
|
|
5
|
-
import { renderMarkdown } from "#server/render/markdown.ts";
|
|
6
|
-
import { readingTools } from "./readingTools.ts";
|
|
7
|
-
import { updated } from "./updated.ts";
|
|
8
|
-
|
|
9
|
-
function counts(board: Board): string {
|
|
10
|
-
return countsOf(board)
|
|
11
|
-
.map(({ count, title }) => `<span><b>${count}</b> ${escapeHtml(title.toLowerCase())}</span>`)
|
|
12
|
-
.join(" · ");
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
type Render = (fragment: string) => ReturnType<typeof renderMarkdown>;
|
|
16
|
-
|
|
17
|
-
const section = Effect.fn("WorkBoard.section")(function* ({ heading, items, notes }: Section, render: Render) {
|
|
18
|
-
const title = yield* render(heading);
|
|
19
|
-
const note = notes === "" ? "" : `<div class="notes">${yield* render(notes)}</div>`;
|
|
20
|
-
const rendered = yield* Effect.forEach(items, (item) => Effect.map(render(item), (html) => `<article class="item">${html}</article>`));
|
|
21
|
-
return `<section>${title}${note}${rendered.join("")}</section>`;
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
export const boardHtml = Effect.fn("WorkBoard.boardHtml")(function* (
|
|
25
|
-
board: Board,
|
|
26
|
-
fallbackTitle: string,
|
|
27
|
-
modified: number,
|
|
28
|
-
metadata = "",
|
|
29
|
-
questionActions?: ReadonlyMap<string, string>,
|
|
30
|
-
) {
|
|
31
|
-
let fragments = 0;
|
|
32
|
-
const headings = documentHeadings();
|
|
33
|
-
const render: Render = (fragment) => {
|
|
34
|
-
fragments += 1;
|
|
35
|
-
return renderMarkdown(board.definitions === "" ? fragment : `${fragment}\n\n${board.definitions}`, {
|
|
36
|
-
file: fallbackTitle,
|
|
37
|
-
headings,
|
|
38
|
-
idPrefix: `part-${fragments}-`,
|
|
39
|
-
...(questionActions ? { questionActions } : {}),
|
|
40
|
-
});
|
|
41
|
-
};
|
|
42
|
-
const title = board.title === "" ? `<h1>${escapeHtml(fallbackTitle)}</h1>` : yield* render(board.title);
|
|
43
|
-
const intro = board.intro === "" ? "" : `<div class="intro">${yield* render(board.intro)}</div>`;
|
|
44
|
-
const sections = yield* Effect.forEach(board.sections, (each) => section(each, render));
|
|
45
|
-
const footer = board.footer === "" ? "" : `<footer>${yield* render(board.footer)}</footer>`;
|
|
46
|
-
return [
|
|
47
|
-
readingTools(headings.entries),
|
|
48
|
-
metadata,
|
|
49
|
-
`<header class="board-head">${title}${intro}`,
|
|
50
|
-
`<p class="counts">${counts(board)}</p>`,
|
|
51
|
-
`<p class="meta">${updated(modified)}</p></header>`,
|
|
52
|
-
`<div class="board">${sections.join("")}</div>`,
|
|
53
|
-
footer,
|
|
54
|
-
].join("");
|
|
55
|
-
});
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import { referenceTarget } from "#server/metadata/links.ts";
|
|
3
|
-
import type { MetadataModel } from "#server/metadata/model.ts";
|
|
4
|
-
import type { ParsedMetadata } from "#server/metadata/parse.ts";
|
|
5
|
-
import { documentReference } from "./metadataLinks.ts";
|
|
6
|
-
|
|
7
|
-
function evidenceFor(reference: string, model: MetadataModel): string {
|
|
8
|
-
const records = model.documents.flatMap(
|
|
9
|
-
(document) =>
|
|
10
|
-
document.parsed.fields.evidence?.flatMap((evidence, index) =>
|
|
11
|
-
evidence.criterion === reference ? [{ file: document.file, index, line: document.parsed.lines[`evidence.${index}.source`] }] : [],
|
|
12
|
-
) ?? [],
|
|
13
|
-
);
|
|
14
|
-
if (records.length === 0) {
|
|
15
|
-
return "<p>No recorded evidence naming this criterion. Acceptance is not established.</p>";
|
|
16
|
-
}
|
|
17
|
-
return `<p>${records.length} recorded ${records.length === 1 ? "claim" : "claims"}, not verified acceptance:</p><ul>${records.map((record) => `<li><a href="${escapeHtml(documentReference(record.file, model, `#recorded-evidence-${record.index}`))}">${escapeHtml(record.file)}${record.line === undefined ? "" : `:${record.line}`} — open recorded evidence</a></li>`).join("")}</ul>`;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export function criteriaEvidence(parsed: ParsedMetadata, model: MetadataModel): string {
|
|
21
|
-
const criteria = parsed.fields.criteria ?? [];
|
|
22
|
-
if (criteria.length === 0) {
|
|
23
|
-
return "";
|
|
24
|
-
}
|
|
25
|
-
return `<h3>Criteria and recorded evidence</h3><ul>${criteria
|
|
26
|
-
.map((criterion) => {
|
|
27
|
-
const unique = criteria.filter((candidate) => candidate.id === criterion.id).length === 1;
|
|
28
|
-
const reference = parsed.fields.id ? `${parsed.fields.id}#${criterion.id}` : "";
|
|
29
|
-
const evidence =
|
|
30
|
-
reference && referenceTarget(reference, model)
|
|
31
|
-
? evidenceFor(reference, model)
|
|
32
|
-
: "<p>Evidence association requires unique item/criterion IDs and a readable workspace. Acceptance is not established.</p>";
|
|
33
|
-
return `<li${unique ? ` id="criterion-${escapeHtml(criterion.id)}" tabindex="-1"` : ""}><b>${escapeHtml(criterion.id)}</b>: ${escapeHtml(criterion.text)}${evidence}</li>`;
|
|
34
|
-
})
|
|
35
|
-
.join("")}</ul>`;
|
|
36
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Effect } from "effect";
|
|
2
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
3
|
-
import { documentHeadings } from "#render/documentHeadings.ts";
|
|
4
|
-
import type { MarkdownFile } from "#server/files/list.ts";
|
|
5
|
-
import { renderMarkdown } from "#server/render/markdown.ts";
|
|
6
|
-
import { readingTools } from "./readingTools.ts";
|
|
7
|
-
import { updated } from "./updated.ts";
|
|
8
|
-
|
|
9
|
-
export const documentHtml = Effect.fn("WorkBoard.documentHtml")(function* (
|
|
10
|
-
source: string,
|
|
11
|
-
file: MarkdownFile,
|
|
12
|
-
metadata = "",
|
|
13
|
-
introduction = "",
|
|
14
|
-
questionActions?: ReadonlyMap<string, string>,
|
|
15
|
-
) {
|
|
16
|
-
const headings = documentHeadings(true);
|
|
17
|
-
const html = yield* renderMarkdown(source, { file: file.path, headings, ...(questionActions ? { questionActions } : {}) });
|
|
18
|
-
const title = /^<h1\b[^>]*>[\s\S]*?<\/h1>/u.exec(html)?.[0] ?? "";
|
|
19
|
-
return `<div class="document-layout"><header class="item-introduction">${title || `<h1>${escapeHtml(file.path)}</h1>`}${introduction}</header>
|
|
20
|
-
<details class="item-context" data-key="item-context"><summary>Context and tools</summary><div class="context-content">
|
|
21
|
-
<p class="meta">Source: ${escapeHtml(file.path)} · ${updated(file.modified)}</p>${metadata}${readingTools(headings.entries)}</div></details>
|
|
22
|
-
<article class="doc">${html.slice(title.length)}</article></div>`;
|
|
23
|
-
});
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { escapeHtml } from "#browser/escapeHtml.ts";
|
|
2
|
-
import type { ParsedMetadata } from "#server/metadata/parse.ts";
|
|
3
|
-
|
|
4
|
-
export function itemIntroduction(parsed: ParsedMetadata): string {
|
|
5
|
-
if (parsed.raw === undefined) {
|
|
6
|
-
return "";
|
|
7
|
-
}
|
|
8
|
-
const fields = parsed.fields;
|
|
9
|
-
return `<div class="item-summary" aria-label="Authored work"><p>Status (source): <b>${escapeHtml(fields.status ?? "Not recorded")}</b>${fields.owner ? ` · Owner: ${escapeHtml(fields.owner)}` : ""}</p><p>Next action: ${escapeHtml(fields.nextAction ?? "Not recorded")}</p></div>`;
|
|
10
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
export function itemStyles(): string {
|
|
2
|
-
return `
|
|
3
|
-
.document-view:has(.document-layout) { max-width: 1220px; }
|
|
4
|
-
.page:has(.document-layout) > .bar,
|
|
5
|
-
.page:has(.document-layout) > .preferences { max-height: 25vh; overflow: auto; }
|
|
6
|
-
.document-view:has(.document-layout) > .response-panel { max-width: 72ch; margin-inline: 0; }
|
|
7
|
-
.document-layout { display: grid; gap: 20px; grid-template-columns: minmax(0, 1fr); }
|
|
8
|
-
.document-layout > * { min-width: 0; }
|
|
9
|
-
.item-introduction h1 { margin: 0 0 .6em; }
|
|
10
|
-
.item-summary { padding: 12px 16px; background: var(--surface); border-left: 3px solid var(--link); border-radius: 4px; overflow-wrap: anywhere; }
|
|
11
|
-
.item-summary p { margin: 0; }
|
|
12
|
-
.item-summary p + p { margin-top: 8px; }
|
|
13
|
-
.item-context { align-self: start; margin: 0; padding: 12px 16px; border: 1px solid var(--border); border-radius: 8px; font-size: .9rem; overflow-wrap: anywhere; }
|
|
14
|
-
.item-context > summary { color: var(--text); font-weight: 600; }
|
|
15
|
-
.item-context .work-meta, .item-context .work-context { margin: 16px 0; padding: 0; border: 0; background: transparent; }
|
|
16
|
-
.item-context .reading-tools { margin: 16px 0 0; }
|
|
17
|
-
.document-layout > .doc > :first-child { margin-top: 0; }
|
|
18
|
-
@media (min-width: 1100px) {
|
|
19
|
-
.document-layout { grid-template-columns: minmax(0, 72ch) minmax(240px, 280px); grid-template-rows: auto 1fr; gap: 24px 32px; }
|
|
20
|
-
.item-introduction { grid-column: 1; grid-row: 1; }
|
|
21
|
-
.item-context { grid-column: 2; grid-row: 1 / span 2; }
|
|
22
|
-
.document-layout > .doc { grid-column: 1; grid-row: 2; }
|
|
23
|
-
}
|
|
24
|
-
@media print {
|
|
25
|
-
.document-layout { display: block; }
|
|
26
|
-
.item-context { display: none; }
|
|
27
|
-
}
|
|
28
|
-
`;
|
|
29
|
-
}
|