@vibefield/rosetta-room 0.0.0-stage → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +247 -2
- package/dist/HistoryRoom.d.ts +98 -0
- package/dist/HistoryRoom.js +440 -0
- package/dist/TranscriptReader.d.ts +22 -0
- package/dist/TranscriptReader.js +72 -0
- package/dist/components/ColdStart.d.ts +4 -0
- package/dist/components/ColdStart.js +5 -0
- package/dist/components/FilterChips.d.ts +4 -0
- package/dist/components/FilterChips.js +5 -0
- package/dist/components/HostAct.d.ts +9 -0
- package/dist/components/HostAct.js +16 -0
- package/dist/components/HostMenu.d.ts +41 -0
- package/dist/components/HostMenu.js +216 -0
- package/dist/components/IngestStatus.d.ts +4 -0
- package/dist/components/IngestStatus.js +20 -0
- package/dist/components/ListActivityNotice.d.ts +5 -0
- package/dist/components/ListActivityNotice.js +4 -0
- package/dist/components/ListSections.d.ts +20 -0
- package/dist/components/ListSections.js +39 -0
- package/dist/components/RenameHeading.d.ts +9 -0
- package/dist/components/RenameHeading.js +75 -0
- package/dist/components/SearchStrip.d.ts +5 -0
- package/dist/components/SearchStrip.js +8 -0
- package/dist/components/SummaryMetrics.d.ts +13 -0
- package/dist/components/SummaryMetrics.js +9 -0
- package/dist/components/SummaryPanels.d.ts +35 -0
- package/dist/components/SummaryPanels.js +117 -0
- package/dist/components/Transcript.d.ts +46 -0
- package/dist/components/Transcript.js +358 -0
- package/dist/components/charts/ActivityChartDetail.d.ts +13 -0
- package/dist/components/charts/ActivityChartDetail.js +78 -0
- package/dist/components/charts/CalendarHeatmap.d.ts +16 -0
- package/dist/components/charts/CalendarHeatmap.js +55 -0
- package/dist/components/charts/DayActivityChart.d.ts +8 -0
- package/dist/components/charts/DayActivityChart.js +71 -0
- package/dist/components/charts/ModelsChartDetail.d.ts +7 -0
- package/dist/components/charts/ModelsChartDetail.js +19 -0
- package/dist/components/charts/ProjectChartDialog.d.ts +19 -0
- package/dist/components/charts/ProjectChartDialog.js +39 -0
- package/dist/components/charts/Streamgraph.d.ts +16 -0
- package/dist/components/charts/Streamgraph.js +94 -0
- package/dist/components/charts/Treemap.d.ts +26 -0
- package/dist/components/charts/Treemap.js +81 -0
- package/dist/components/charts/index.d.ts +9 -0
- package/dist/components/charts/index.js +4 -0
- package/dist/components/charts/streamgraph-layout.d.ts +23 -0
- package/dist/components/charts/streamgraph-layout.js +114 -0
- package/dist/components/charts/treemap-layout.d.ts +32 -0
- package/dist/components/charts/treemap-layout.js +140 -0
- package/dist/components/charts/types.d.ts +65 -0
- package/dist/components/charts/types.js +8 -0
- package/dist/components/file-viewer/FileViewerBrowsers.d.ts +10 -0
- package/dist/components/file-viewer/FileViewerBrowsers.js +65 -0
- package/dist/components/file-viewer/FileViewerDialog.d.ts +33 -0
- package/dist/components/file-viewer/FileViewerDialog.js +82 -0
- package/dist/components/file-viewer/FileViewerHeader.d.ts +26 -0
- package/dist/components/file-viewer/FileViewerHeader.js +17 -0
- package/dist/components/file-viewer/ImageGalleryDialog.d.ts +14 -0
- package/dist/components/file-viewer/ImageGalleryDialog.js +98 -0
- package/dist/components/file-viewer/diff/index.d.ts +2 -0
- package/dist/components/file-viewer/diff/index.js +2 -0
- package/dist/components/file-viewer/diff/parse.d.ts +2 -0
- package/dist/components/file-viewer/diff/parse.js +164 -0
- package/dist/components/file-viewer/diff/types.d.ts +44 -0
- package/dist/components/file-viewer/diff/types.js +7 -0
- package/dist/components/file-viewer/gallery-source.d.ts +11 -0
- package/dist/components/file-viewer/gallery-source.js +75 -0
- package/dist/components/file-viewer/image-resource.d.ts +19 -0
- package/dist/components/file-viewer/image-resource.js +60 -0
- package/dist/components/file-viewer/index.d.ts +5 -0
- package/dist/components/file-viewer/index.js +8 -0
- package/dist/components/file-viewer/markdown/blocks.d.ts +2 -0
- package/dist/components/file-viewer/markdown/blocks.js +277 -0
- package/dist/components/file-viewer/markdown/index.d.ts +4 -0
- package/dist/components/file-viewer/markdown/index.js +35 -0
- package/dist/components/file-viewer/markdown/inline.d.ts +10 -0
- package/dist/components/file-viewer/markdown/inline.js +178 -0
- package/dist/components/file-viewer/markdown/render.d.ts +9 -0
- package/dist/components/file-viewer/markdown/render.js +78 -0
- package/dist/components/file-viewer/markdown/types.d.ts +57 -0
- package/dist/components/file-viewer/markdown/types.js +11 -0
- package/dist/components/file-viewer/minimap/CodeMinimap.d.ts +10 -0
- package/dist/components/file-viewer/minimap/CodeMinimap.js +296 -0
- package/dist/components/file-viewer/minimap/layout.d.ts +60 -0
- package/dist/components/file-viewer/minimap/layout.js +117 -0
- package/dist/components/file-viewer/minimap/palette.d.ts +2 -0
- package/dist/components/file-viewer/minimap/palette.js +73 -0
- package/dist/components/file-viewer/minimap/raster.d.ts +19 -0
- package/dist/components/file-viewer/minimap/raster.js +122 -0
- package/dist/components/file-viewer/registry.d.ts +25 -0
- package/dist/components/file-viewer/registry.js +182 -0
- package/dist/components/file-viewer/syntax/grammars.d.ts +16 -0
- package/dist/components/file-viewer/syntax/grammars.js +221 -0
- package/dist/components/file-viewer/syntax/index.d.ts +8 -0
- package/dist/components/file-viewer/syntax/index.js +9 -0
- package/dist/components/file-viewer/syntax/languages.d.ts +14 -0
- package/dist/components/file-viewer/syntax/languages.js +115 -0
- package/dist/components/file-viewer/syntax/tokenize-config.d.ts +2 -0
- package/dist/components/file-viewer/syntax/tokenize-config.js +132 -0
- package/dist/components/file-viewer/syntax/tokenize-css.d.ts +2 -0
- package/dist/components/file-viewer/syntax/tokenize-css.js +169 -0
- package/dist/components/file-viewer/syntax/tokenize-markup.d.ts +2 -0
- package/dist/components/file-viewer/syntax/tokenize-markup.js +124 -0
- package/dist/components/file-viewer/syntax/tokenize.d.ts +9 -0
- package/dist/components/file-viewer/syntax/tokenize.js +289 -0
- package/dist/components/file-viewer/syntax/types.d.ts +74 -0
- package/dist/components/file-viewer/syntax/types.js +13 -0
- package/dist/components/file-viewer/types.d.ts +111 -0
- package/dist/components/file-viewer/types.js +8 -0
- package/dist/components/file-viewer/use-file-content.d.ts +26 -0
- package/dist/components/file-viewer/use-file-content.js +144 -0
- package/dist/components/file-viewer/views/BinaryView.d.ts +2 -0
- package/dist/components/file-viewer/views/BinaryView.js +34 -0
- package/dist/components/file-viewer/views/CodeView.d.ts +2 -0
- package/dist/components/file-viewer/views/CodeView.js +46 -0
- package/dist/components/file-viewer/views/DiffBody.d.ts +7 -0
- package/dist/components/file-viewer/views/DiffBody.js +77 -0
- package/dist/components/file-viewer/views/DiffView.d.ts +2 -0
- package/dist/components/file-viewer/views/DiffView.js +11 -0
- package/dist/components/file-viewer/views/ImageView.d.ts +9 -0
- package/dist/components/file-viewer/views/ImageView.js +28 -0
- package/dist/components/file-viewer/views/MarkdownView.d.ts +9 -0
- package/dist/components/file-viewer/views/MarkdownView.js +20 -0
- package/dist/components/file-viewer/views/SvgView.d.ts +9 -0
- package/dist/components/file-viewer/views/SvgView.js +10 -0
- package/dist/components/git/ChangeTree.d.ts +20 -0
- package/dist/components/git/ChangeTree.js +35 -0
- package/dist/components/git/CommitViewer.d.ts +12 -0
- package/dist/components/git/CommitViewer.js +85 -0
- package/dist/components/git/GitChanges.d.ts +17 -0
- package/dist/components/git/GitChanges.js +70 -0
- package/dist/components/git/GitHistory.d.ts +9 -0
- package/dist/components/git/GitHistory.js +58 -0
- package/dist/components/git/co-author.d.ts +14 -0
- package/dist/components/git/co-author.js +55 -0
- package/dist/components/git/git-file-source.d.ts +18 -0
- package/dist/components/git/git-file-source.js +53 -0
- package/dist/components/git/git-host.d.ts +24 -0
- package/dist/components/git/git-host.js +130 -0
- package/dist/components/git/index.d.ts +10 -0
- package/dist/components/git/index.js +12 -0
- package/dist/components/git/path-tree.d.ts +23 -0
- package/dist/components/git/path-tree.js +73 -0
- package/dist/components/git/session-files.d.ts +9 -0
- package/dist/components/git/session-files.js +50 -0
- package/dist/components/git/types.d.ts +92 -0
- package/dist/components/git/types.js +9 -0
- package/dist/components/projects/ProjectActivitySparkline.d.ts +6 -0
- package/dist/components/projects/ProjectActivitySparkline.js +12 -0
- package/dist/components/projects/ProjectList.d.ts +25 -0
- package/dist/components/projects/ProjectList.js +43 -0
- package/dist/components/projects/ProjectListItem.d.ts +19 -0
- package/dist/components/projects/ProjectListItem.js +78 -0
- package/dist/components/projects/ProjectsColumn.d.ts +19 -0
- package/dist/components/projects/ProjectsColumn.js +36 -0
- package/dist/components/projects/index.d.ts +8 -0
- package/dist/components/projects/index.js +4 -0
- package/dist/components/search/MatchStepper.d.ts +9 -0
- package/dist/components/search/MatchStepper.js +14 -0
- package/dist/components/search/SearchLauncher.d.ts +12 -0
- package/dist/components/search/SearchLauncher.js +13 -0
- package/dist/components/search/SearchSheet.d.ts +29 -0
- package/dist/components/search/SearchSheet.js +230 -0
- package/dist/components/search/index.d.ts +8 -0
- package/dist/components/search/index.js +4 -0
- package/dist/components/search/shortcut.d.ts +25 -0
- package/dist/components/search/shortcut.js +32 -0
- package/dist/components/sessions/SessionList.d.ts +24 -0
- package/dist/components/sessions/SessionList.js +76 -0
- package/dist/components/sessions/SessionListItem.d.ts +13 -0
- package/dist/components/sessions/SessionListItem.js +58 -0
- package/dist/components/sessions/SessionsColumn.d.ts +26 -0
- package/dist/components/sessions/SessionsColumn.js +32 -0
- package/dist/components/sessions/index.d.ts +9 -0
- package/dist/components/sessions/index.js +4 -0
- package/dist/components/sessions/session-display.d.ts +8 -0
- package/dist/components/sessions/session-display.js +18 -0
- package/dist/components/sessions/types.d.ts +7 -0
- package/dist/components/sessions/types.js +1 -0
- package/dist/components/transcript/Activity.d.ts +45 -0
- package/dist/components/transcript/Activity.js +75 -0
- package/dist/components/transcript/Anchor.d.ts +8 -0
- package/dist/components/transcript/Anchor.js +23 -0
- package/dist/components/transcript/Attachments.d.ts +21 -0
- package/dist/components/transcript/Attachments.js +138 -0
- package/dist/components/transcript/AuthoredMessage.d.ts +19 -0
- package/dist/components/transcript/AuthoredMessage.js +17 -0
- package/dist/components/transcript/Compaction.d.ts +9 -0
- package/dist/components/transcript/Compaction.js +50 -0
- package/dist/components/transcript/DayPill.d.ts +38 -0
- package/dist/components/transcript/DayPill.js +68 -0
- package/dist/components/transcript/Document.d.ts +32 -0
- package/dist/components/transcript/Document.js +503 -0
- package/dist/components/transcript/Favicon.d.ts +32 -0
- package/dist/components/transcript/Favicon.js +71 -0
- package/dist/components/transcript/HeadOfDocument.d.ts +19 -0
- package/dist/components/transcript/HeadOfDocument.js +44 -0
- package/dist/components/transcript/Ledger.d.ts +53 -0
- package/dist/components/transcript/Ledger.js +182 -0
- package/dist/components/transcript/LineDetail.d.ts +24 -0
- package/dist/components/transcript/LineDetail.js +81 -0
- package/dist/components/transcript/Marker.d.ts +33 -0
- package/dist/components/transcript/Marker.js +21 -0
- package/dist/components/transcript/MessagePreview.d.ts +12 -0
- package/dist/components/transcript/MessagePreview.js +58 -0
- package/dist/components/transcript/Prompt.d.ts +20 -0
- package/dist/components/transcript/Prompt.js +55 -0
- package/dist/components/transcript/Prose.d.ts +19 -0
- package/dist/components/transcript/Prose.js +109 -0
- package/dist/components/transcript/ReceiptPill.d.ts +10 -0
- package/dist/components/transcript/ReceiptPill.js +10 -0
- package/dist/components/transcript/ResponseHead.d.ts +9 -0
- package/dist/components/transcript/ResponseHead.js +36 -0
- package/dist/components/transcript/Subthread.d.ts +19 -0
- package/dist/components/transcript/Subthread.js +96 -0
- package/dist/components/transcript/Team.d.ts +53 -0
- package/dist/components/transcript/Team.js +185 -0
- package/dist/components/transcript/Thinking.d.ts +24 -0
- package/dist/components/transcript/Thinking.js +50 -0
- package/dist/components/transcript/TimelineMeta.d.ts +9 -0
- package/dist/components/transcript/TimelineMeta.js +161 -0
- package/dist/components/transcript/TranscriptLoading.d.ts +10 -0
- package/dist/components/transcript/TranscriptLoading.js +10 -0
- package/dist/components/transcript/WebDetail.d.ts +8 -0
- package/dist/components/transcript/WebDetail.js +29 -0
- package/dist/components/transcript/Workflow.d.ts +12 -0
- package/dist/components/transcript/Workflow.js +208 -0
- package/dist/components/transcript/activity-plan.d.ts +84 -0
- package/dist/components/transcript/activity-plan.js +209 -0
- package/dist/components/transcript/attachment-file-source.d.ts +23 -0
- package/dist/components/transcript/attachment-file-source.js +103 -0
- package/dist/components/transcript/attachment-gallery.d.ts +12 -0
- package/dist/components/transcript/attachment-gallery.js +33 -0
- package/dist/components/transcript/detail-parts.d.ts +50 -0
- package/dist/components/transcript/detail-parts.js +295 -0
- package/dist/components/transcript/disclosure-state.d.ts +6 -0
- package/dist/components/transcript/disclosure-state.js +32 -0
- package/dist/components/transcript/disclosure-store.d.ts +8 -0
- package/dist/components/transcript/disclosure-store.js +31 -0
- package/dist/components/transcript/document-model.d.ts +15 -0
- package/dist/components/transcript/document-model.js +104 -0
- package/dist/components/transcript/document-plan.d.ts +28 -0
- package/dist/components/transcript/document-plan.js +145 -0
- package/dist/components/transcript/fold-preference.d.ts +17 -0
- package/dist/components/transcript/fold-preference.js +63 -0
- package/dist/components/transcript/glyphs.d.ts +15 -0
- package/dist/components/transcript/glyphs.js +47 -0
- package/dist/components/transcript/index.d.ts +23 -0
- package/dist/components/transcript/index.js +22 -0
- package/dist/components/transcript/message-file-source.d.ts +15 -0
- package/dist/components/transcript/message-file-source.js +31 -0
- package/dist/components/transcript/message-preview.d.ts +9 -0
- package/dist/components/transcript/message-preview.js +46 -0
- package/dist/components/transcript/read-file-source.d.ts +7 -0
- package/dist/components/transcript/read-file-source.js +34 -0
- package/dist/components/transcript/reader-context.d.ts +13 -0
- package/dist/components/transcript/reader-context.js +55 -0
- package/dist/components/transcript/reading-identity.d.ts +2 -0
- package/dist/components/transcript/reading-identity.js +52 -0
- package/dist/components/transcript/scroll-to-row.d.ts +2 -0
- package/dist/components/transcript/scroll-to-row.js +13 -0
- package/dist/components/transcript/thread-index.d.ts +14 -0
- package/dist/components/transcript/thread-index.js +40 -0
- package/dist/components/transcript/thread-navigation.d.ts +5 -0
- package/dist/components/transcript/thread-navigation.js +3 -0
- package/dist/components/transcript/timeline-meta-file-source.d.ts +6 -0
- package/dist/components/transcript/timeline-meta-file-source.js +55 -0
- package/dist/components/transcript/timeline-meta-state.d.ts +12 -0
- package/dist/components/transcript/timeline-meta-state.js +24 -0
- package/dist/components/ui/ColumnHeading.d.ts +27 -0
- package/dist/components/ui/ColumnHeading.js +7 -0
- package/dist/components/ui/ConfirmDialog.d.ts +14 -0
- package/dist/components/ui/ConfirmDialog.js +22 -0
- package/dist/components/ui/DialogShell.d.ts +18 -0
- package/dist/components/ui/DialogShell.js +40 -0
- package/dist/components/ui/EmptyState.d.ts +10 -0
- package/dist/components/ui/EmptyState.js +6 -0
- package/dist/components/ui/ListSummaryHeader.d.ts +9 -0
- package/dist/components/ui/ListSummaryHeader.js +6 -0
- package/dist/components/ui/ListToolbar.d.ts +6 -0
- package/dist/components/ui/ListToolbar.js +5 -0
- package/dist/components/ui/ResultGroupHeader.d.ts +9 -0
- package/dist/components/ui/ResultGroupHeader.js +5 -0
- package/dist/components/ui/SegmentedControl.d.ts +16 -0
- package/dist/components/ui/SegmentedControl.js +9 -0
- package/dist/components/ui/SummaryMetric.d.ts +13 -0
- package/dist/components/ui/SummaryMetric.js +10 -0
- package/dist/components/ui/Veil.d.ts +7 -0
- package/dist/components/ui/Veil.js +5 -0
- package/dist/components/ui/index.d.ts +20 -0
- package/dist/components/ui/index.js +10 -0
- package/dist/components/worktree/WorktreeColumn.d.ts +22 -0
- package/dist/components/worktree/WorktreeColumn.js +170 -0
- package/dist/components/worktree/WorktreeFileTree.d.ts +19 -0
- package/dist/components/worktree/WorktreeFileTree.js +60 -0
- package/dist/components/worktree/WorktreeHeader.d.ts +32 -0
- package/dist/components/worktree/WorktreeHeader.js +81 -0
- package/dist/components/worktree/WorktreeList.d.ts +8 -0
- package/dist/components/worktree/WorktreeList.js +12 -0
- package/dist/components/worktree/index.d.ts +12 -0
- package/dist/components/worktree/index.js +7 -0
- package/dist/components/worktree/types.d.ts +17 -0
- package/dist/components/worktree/types.js +3 -0
- package/dist/components/worktree/use-worktree-guest.d.ts +21 -0
- package/dist/components/worktree/use-worktree-guest.js +92 -0
- package/dist/components/worktree/worktree-file-commands.d.ts +19 -0
- package/dist/components/worktree/worktree-file-commands.js +112 -0
- package/dist/components/worktree/worktree-file-source.d.ts +15 -0
- package/dist/components/worktree/worktree-file-source.js +75 -0
- package/dist/components/worktree/worktree-host.d.ts +31 -0
- package/dist/components/worktree/worktree-host.js +242 -0
- package/dist/fixtures/index.d.ts +24 -0
- package/dist/fixtures/index.js +292 -0
- package/dist/host-inputs.d.ts +231 -0
- package/dist/host-inputs.js +35 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +14 -0
- package/dist/lib/activity-details.d.ts +23 -0
- package/dist/lib/activity-details.js +78 -0
- package/dist/lib/activity-order.d.ts +32 -0
- package/dist/lib/activity-order.js +86 -0
- package/dist/lib/agent-paths.d.ts +6 -0
- package/dist/lib/agent-paths.js +19 -0
- package/dist/lib/agents.d.ts +15 -0
- package/dist/lib/agents.js +60 -0
- package/dist/lib/catalog-status.d.ts +3 -0
- package/dist/lib/catalog-status.js +10 -0
- package/dist/lib/chart-data.d.ts +14 -0
- package/dist/lib/chart-data.js +151 -0
- package/dist/lib/day-activity.d.ts +21 -0
- package/dist/lib/day-activity.js +56 -0
- package/dist/lib/format.d.ts +24 -0
- package/dist/lib/format.js +116 -0
- package/dist/lib/hooks.d.ts +118 -0
- package/dist/lib/hooks.js +608 -0
- package/dist/lib/icons.d.ts +21 -0
- package/dist/lib/icons.js +49 -0
- package/dist/lib/image-media.d.ts +6 -0
- package/dist/lib/image-media.js +30 -0
- package/dist/lib/ingest-activity.d.ts +50 -0
- package/dist/lib/ingest-activity.js +151 -0
- package/dist/lib/ingest.d.ts +25 -0
- package/dist/lib/ingest.js +70 -0
- package/dist/lib/model-labels.d.ts +5 -0
- package/dist/lib/model-labels.js +28 -0
- package/dist/lib/model.d.ts +73 -0
- package/dist/lib/model.js +141 -0
- package/dist/lib/motion.d.ts +13 -0
- package/dist/lib/motion.js +80 -0
- package/dist/lib/room-storage.d.ts +13 -0
- package/dist/lib/room-storage.js +40 -0
- package/dist/lib/search-results.d.ts +27 -0
- package/dist/lib/search-results.js +83 -0
- package/dist/lib/search-sheet.d.ts +119 -0
- package/dist/lib/search-sheet.js +282 -0
- package/dist/lib/sections.d.ts +19 -0
- package/dist/lib/sections.js +36 -0
- package/dist/lib/session-activity.d.ts +5 -0
- package/dist/lib/session-activity.js +15 -0
- package/dist/lib/session-leases.d.ts +15 -0
- package/dist/lib/session-leases.js +61 -0
- package/dist/lib/spend.d.ts +42 -0
- package/dist/lib/spend.js +112 -0
- package/dist/lib/tint.d.ts +9 -0
- package/dist/lib/tint.js +53 -0
- package/dist/lib/transcript/collaboration.d.ts +97 -0
- package/dist/lib/transcript/collaboration.js +423 -0
- package/dist/lib/transcript/families.d.ts +212 -0
- package/dist/lib/transcript/families.js +906 -0
- package/dist/lib/transcript/favicons.d.ts +54 -0
- package/dist/lib/transcript/favicons.js +183 -0
- package/dist/lib/transcript/head-of-document.d.ts +27 -0
- package/dist/lib/transcript/head-of-document.js +274 -0
- package/dist/lib/transcript/head-state.d.ts +182 -0
- package/dist/lib/transcript/head-state.js +305 -0
- package/dist/lib/transcript/history-window.d.ts +13 -0
- package/dist/lib/transcript/history-window.js +52 -0
- package/dist/lib/transcript/images.d.ts +8 -0
- package/dist/lib/transcript/images.js +60 -0
- package/dist/lib/transcript/index.d.ts +15 -0
- package/dist/lib/transcript/index.js +8 -0
- package/dist/lib/transcript/ledger.d.ts +143 -0
- package/dist/lib/transcript/ledger.js +513 -0
- package/dist/lib/transcript/protocol.d.ts +23 -0
- package/dist/lib/transcript/protocol.js +1 -0
- package/dist/lib/transcript/sittings.d.ts +75 -0
- package/dist/lib/transcript/sittings.js +147 -0
- package/dist/lib/transcript/tail-scroll.d.ts +36 -0
- package/dist/lib/transcript/tail-scroll.js +167 -0
- package/dist/lib/transcript/tail-state.d.ts +17 -0
- package/dist/lib/transcript/tail-state.js +30 -0
- package/dist/lib/transcript/turns.d.ts +192 -0
- package/dist/lib/transcript/turns.js +576 -0
- package/dist/lib/transcript/use-transcript-opening.d.ts +12 -0
- package/dist/lib/transcript/use-transcript-opening.js +31 -0
- package/dist/lib/transcript/use-transcript-tail.d.ts +25 -0
- package/dist/lib/transcript/use-transcript-tail.js +158 -0
- package/dist/lib/transcript/vocabulary.d.ts +119 -0
- package/dist/lib/transcript/vocabulary.js +293 -0
- package/dist/lib/transcript/web-address.d.ts +6 -0
- package/dist/lib/transcript/web-address.js +18 -0
- package/dist/lib/transcript/workflow.d.ts +31 -0
- package/dist/lib/transcript/workflow.js +133 -0
- package/dist/lib/use-activity-order.d.ts +2 -0
- package/dist/lib/use-activity-order.js +23 -0
- package/dist/lib/use-day-usage.d.ts +8 -0
- package/dist/lib/use-day-usage.js +31 -0
- package/dist/lib/use-deferred-list-order.d.ts +26 -0
- package/dist/lib/use-deferred-list-order.js +142 -0
- package/dist/lib/use-ingest-activity.d.ts +2 -0
- package/dist/lib/use-ingest-activity.js +49 -0
- package/dist/lib/use-list-motion.d.ts +4 -0
- package/dist/lib/use-list-motion.js +67 -0
- package/dist/ports.d.ts +222 -0
- package/dist/ports.js +3 -0
- package/dist/room-context.d.ts +60 -0
- package/dist/room-context.js +87 -0
- package/dist/styles/activity-chart.css +127 -0
- package/dist/styles/attachments.css +29 -0
- package/dist/styles/favicon.css +73 -0
- package/dist/styles/history-room.css +18 -0
- package/dist/styles/host-inputs.css +250 -0
- package/dist/styles/image-gallery.css +30 -0
- package/dist/styles/ingest.css +51 -0
- package/dist/styles/message-preview.css +34 -0
- package/dist/styles/models-chart.css +66 -0
- package/dist/styles/project-chart.css +19 -0
- package/dist/styles/reader.css +33 -0
- package/dist/styles/room.css +1411 -0
- package/dist/styles/search.css +252 -0
- package/dist/styles/transcript-activity.css +70 -0
- package/dist/styles/transcript-head.css +220 -0
- package/dist/styles/transcript-loading.css +57 -0
- package/dist/styles/transcript.css +1226 -0
- package/package.json +61 -4
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
// Numbers and time, per the design record §4: three significant figures with
|
|
2
|
+
// digits and unit in separate slots; every number that can change is tabular.
|
|
3
|
+
const COMPACT_UNITS = ["", "K", "M", "B", "T"];
|
|
4
|
+
/** Shared count/token/currency scale. Round before choosing precision and
|
|
5
|
+
* promote a rounded 1,000 into the next unit (999,500 → 1.00M). */
|
|
6
|
+
export function fmtCompactNumber(value) {
|
|
7
|
+
if (!Number.isFinite(value))
|
|
8
|
+
return { n: "—", u: "" };
|
|
9
|
+
const magnitude = Math.abs(value);
|
|
10
|
+
if (magnitude < 999.5)
|
|
11
|
+
return { n: String(value), u: "" };
|
|
12
|
+
// Round in the original unit so decimal ties such as 9,995 do not become
|
|
13
|
+
// 9.99K through the binary representation of a scaled 9.995.
|
|
14
|
+
const precision = 10 ** (Math.floor(Math.log10(magnitude)) - 2);
|
|
15
|
+
let scaled = Math.round(magnitude / precision) * precision;
|
|
16
|
+
let unit = 0;
|
|
17
|
+
while (scaled >= 1e3 && unit < COMPACT_UNITS.length - 1) {
|
|
18
|
+
scaled /= 1e3;
|
|
19
|
+
unit += 1;
|
|
20
|
+
}
|
|
21
|
+
const decimals = Math.max(0, 2 - Math.floor(Math.log10(scaled)));
|
|
22
|
+
return { n: (Math.sign(value) * scaled).toFixed(decimals), u: COMPACT_UNITS[unit] };
|
|
23
|
+
}
|
|
24
|
+
export function fmtTokens(n) {
|
|
25
|
+
return fmtCompactNumber(n);
|
|
26
|
+
}
|
|
27
|
+
export function tokenText(n) {
|
|
28
|
+
const t = fmtTokens(n);
|
|
29
|
+
return t.n + t.u;
|
|
30
|
+
}
|
|
31
|
+
/** `now` under 90s, then minutes, hours, `yesterday`, days. */
|
|
32
|
+
export function lastActive(ms, nowMs) {
|
|
33
|
+
if (ms === null || !Number.isFinite(ms))
|
|
34
|
+
return "unknown";
|
|
35
|
+
const delta = nowMs - ms;
|
|
36
|
+
if (delta < 0)
|
|
37
|
+
return "future";
|
|
38
|
+
if (delta < 90_000)
|
|
39
|
+
return "now";
|
|
40
|
+
const minutes = Math.floor(delta / 60_000);
|
|
41
|
+
if (minutes < 60)
|
|
42
|
+
return `${minutes}m`;
|
|
43
|
+
const hours = Math.floor(minutes / 60);
|
|
44
|
+
if (hours < 24)
|
|
45
|
+
return `${hours}h`;
|
|
46
|
+
const days = Math.floor(hours / 24);
|
|
47
|
+
if (days === 1)
|
|
48
|
+
return "yesterday";
|
|
49
|
+
return `${days}d`;
|
|
50
|
+
}
|
|
51
|
+
export function duration(fromMs, toMs) {
|
|
52
|
+
const mins = Math.max(0, Math.round((toMs - fromMs) / 60_000));
|
|
53
|
+
if (mins < 60)
|
|
54
|
+
return `${mins}m`;
|
|
55
|
+
const h = Math.floor(mins / 60);
|
|
56
|
+
if (h < 48)
|
|
57
|
+
return `${h}h ${String(mins % 60).padStart(2, "0")}m`;
|
|
58
|
+
return `${Math.floor(h / 24)}d ${h % 24}h`;
|
|
59
|
+
}
|
|
60
|
+
export function clock(ms) {
|
|
61
|
+
const d = new Date(ms);
|
|
62
|
+
const p = (v) => String(v).padStart(2, "0");
|
|
63
|
+
return `${p(d.getHours())}:${p(d.getMinutes())}:${p(d.getSeconds())}`;
|
|
64
|
+
}
|
|
65
|
+
export function clockShort(ms) {
|
|
66
|
+
const d = new Date(ms);
|
|
67
|
+
const p = (v) => String(v).padStart(2, "0");
|
|
68
|
+
return `${p(d.getHours())}:${p(d.getMinutes())}`;
|
|
69
|
+
}
|
|
70
|
+
function startOfDay(ms) {
|
|
71
|
+
const d = new Date(ms);
|
|
72
|
+
d.setHours(0, 0, 0, 0);
|
|
73
|
+
return d.getTime();
|
|
74
|
+
}
|
|
75
|
+
/** `Today`, `Yesterday`, then `Mon 24 Aug` — the session list's day breaks. */
|
|
76
|
+
export function dayLabel(ms, nowMs) {
|
|
77
|
+
if (ms === null || !Number.isFinite(ms))
|
|
78
|
+
return "Activity unknown";
|
|
79
|
+
const today = startOfDay(nowMs);
|
|
80
|
+
const day = startOfDay(ms);
|
|
81
|
+
if (day === today)
|
|
82
|
+
return "Today";
|
|
83
|
+
const yesterday = new Date(today);
|
|
84
|
+
yesterday.setDate(yesterday.getDate() - 1);
|
|
85
|
+
if (day === yesterday.getTime())
|
|
86
|
+
return "Yesterday";
|
|
87
|
+
const d = new Date(ms);
|
|
88
|
+
return d.toLocaleDateString("en-GB", { weekday: "short", day: "numeric", month: "short" });
|
|
89
|
+
}
|
|
90
|
+
/** Home-relative form of a path, the way the ledger row prints one. The
|
|
91
|
+
* home is a folder, so only the home itself and what is under it shorten:
|
|
92
|
+
* `/Users/ab` is not under `/Users/a`. A root home shortens nothing. */
|
|
93
|
+
export function tildePath(path, home) {
|
|
94
|
+
const root = home?.replace(/\/+$/, "") ?? "";
|
|
95
|
+
if (root === "")
|
|
96
|
+
return path;
|
|
97
|
+
if (path === root)
|
|
98
|
+
return "~";
|
|
99
|
+
if (path.startsWith(`${root}/`))
|
|
100
|
+
return `~${path.slice(root.length)}`;
|
|
101
|
+
return path;
|
|
102
|
+
}
|
|
103
|
+
/** A file size, at three significant figures — the ledger's rule for a
|
|
104
|
+
* figure, applied to bytes. `812 B` · `4.20 KB` · `1.3 MB` · `212 MB`. */
|
|
105
|
+
export function fmtBytes(bytes) {
|
|
106
|
+
if (bytes < 1024)
|
|
107
|
+
return `${bytes} B`;
|
|
108
|
+
const units = ["KB", "MB", "GB", "TB"];
|
|
109
|
+
let value = bytes / 1024;
|
|
110
|
+
let unit = 0;
|
|
111
|
+
while (value >= 1024 && unit < units.length - 1) {
|
|
112
|
+
value /= 1024;
|
|
113
|
+
unit += 1;
|
|
114
|
+
}
|
|
115
|
+
return `${value.toFixed(value >= 100 ? 0 : value >= 10 ? 1 : 2)} ${units[unit]}`;
|
|
116
|
+
}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import type { ApiError, IngestProgress, MetaState, SearchReadiness, SearchBuildProgress, SearchResponse, ResponseRuntime, SubscriptionStatus, TimelineEntry, TimelineMeta, UsageResponse } from "@vibefield/rosetta-protocol";
|
|
2
|
+
import type { ProjectStats } from "./model.js";
|
|
3
|
+
import type { CatalogPort } from "../ports.js";
|
|
4
|
+
import type { SessionLeases } from "./session-leases.js";
|
|
5
|
+
import type { EarlierLanding, EarlierNotice, EarlierState } from "./transcript/head-state.js";
|
|
6
|
+
export interface MetaFeed {
|
|
7
|
+
meta: MetaState | null;
|
|
8
|
+
/** Advances even if React batches a replacement and its first live mutation. */
|
|
9
|
+
snapshotVersion: number;
|
|
10
|
+
status: SubscriptionStatus;
|
|
11
|
+
error: ApiError | null;
|
|
12
|
+
}
|
|
13
|
+
export declare function useMeta(catalog: CatalogPort): MetaFeed;
|
|
14
|
+
export interface DaemonStatusFeed {
|
|
15
|
+
/** A connection or startup failure suitable for the disconnected state. */
|
|
16
|
+
readonly connectionError: string | null;
|
|
17
|
+
/** The exact durable-publication gate for global derived reads. */
|
|
18
|
+
readonly canonicalReady: boolean | null;
|
|
19
|
+
/** Last observed readiness; null until the first successful answer. */
|
|
20
|
+
readonly searchReadiness: SearchReadiness | null;
|
|
21
|
+
/** The cold-start block; null on a daemon too old to carry it. */
|
|
22
|
+
readonly ingest: IngestProgress | null;
|
|
23
|
+
readonly searchProgress: SearchBuildProgress | null;
|
|
24
|
+
readonly startedAt: number | null;
|
|
25
|
+
readonly uptimeMs: number;
|
|
26
|
+
readonly receivedAt: number | null;
|
|
27
|
+
}
|
|
28
|
+
/** The daemon's status surface. It answers from the daemon's first breath —
|
|
29
|
+
* before the projection is even readable — so it is the room's connectivity
|
|
30
|
+
* truth during a cold start. Polls fast through canonical publication and
|
|
31
|
+
* search preparation, then quietly once both are ready. */
|
|
32
|
+
export declare function useDaemonStatus(catalog: CatalogPort): DaemonStatusFeed;
|
|
33
|
+
/** Per-project heatmaps and contributions. These are global derived reads,
|
|
34
|
+
* so they begin only after the daemon's canonical publication gate. Four
|
|
35
|
+
* workers hydrate the list progressively; unbounded Promise.all here once
|
|
36
|
+
* launched two full-corpus queries per project and starved cold ingestion. */
|
|
37
|
+
export declare function useProjectStats(catalog: CatalogPort, projectIds: string[], ready?: boolean): Map<string, ProjectStats>;
|
|
38
|
+
/** The selected project's usage decomposition — per-model days and the
|
|
39
|
+
* hour-of-day profile, over the same 53-week window the heatmap draws. */
|
|
40
|
+
export declare function useProjectUsage(catalog: CatalogPort, projectId: string | null, ready?: boolean): UsageResponse | null;
|
|
41
|
+
export interface TimelineFeed {
|
|
42
|
+
/** Ordinal-ordered rows: paged history + the live tail, deduplicated. */
|
|
43
|
+
rows: TimelineEntry[];
|
|
44
|
+
/** The subscription has delivered its first authoritative snapshot. A live
|
|
45
|
+
* status can arrive one frame earlier, so consumers must not infer an empty
|
|
46
|
+
* transcript until this is true. */
|
|
47
|
+
snapshotReady: boolean;
|
|
48
|
+
/** Initial read failures stay distinct from an authoritative empty snapshot. */
|
|
49
|
+
error: string | null;
|
|
50
|
+
retry: () => void;
|
|
51
|
+
/** Complete task/workflow/plan/artifact index delivered beside the tail snapshot. */
|
|
52
|
+
timelineMeta: TimelineMeta | null;
|
|
53
|
+
status: SubscriptionStatus;
|
|
54
|
+
/** Rows with ordinal > watermark arrived after you did (D33's line). */
|
|
55
|
+
watermark: number | null;
|
|
56
|
+
/** §08 — what the head of the document offers the reader right now. */
|
|
57
|
+
earlier: EarlierState;
|
|
58
|
+
/** The 410 sentence, surfaced once after the paged history is dropped. */
|
|
59
|
+
earlierNotice: EarlierNotice | null;
|
|
60
|
+
/** Rows still above the loaded document, or null when no total is known. */
|
|
61
|
+
earlierAbove: number | null;
|
|
62
|
+
/** The last landing — the receipt's figure and the scroll fix-up's key. */
|
|
63
|
+
landed: EarlierLanding | null;
|
|
64
|
+
/** Fetch the page above and keep it aside. No-op unless idle or failed. */
|
|
65
|
+
holdEarlier: () => void;
|
|
66
|
+
/** Spend the bar: prepend a held page now, or land the fetch on arrival. */
|
|
67
|
+
revealEarlier: () => void;
|
|
68
|
+
/** Try again after `earlier.kind === "failed"`. */
|
|
69
|
+
retryEarlier: () => void;
|
|
70
|
+
/** Drop the 410 sentence once it has been read. */
|
|
71
|
+
dismissEarlierNotice: () => void;
|
|
72
|
+
/** @deprecated §08 replaced the load-earlier button with the head line.
|
|
73
|
+
* Read `earlier.kind !== "none"` instead. */
|
|
74
|
+
canLoadEarlier: boolean;
|
|
75
|
+
/** @deprecated §08 fetches on approach and inserts on the pull. This fetches
|
|
76
|
+
* AND inserts in one act, for the anchor search that still pages blindly.
|
|
77
|
+
* Use `holdEarlier()` then `revealEarlier()`. */
|
|
78
|
+
loadEarlier: () => void;
|
|
79
|
+
/** Load one exact canonical row without walking intervening history pages. */
|
|
80
|
+
loadAnchor: (timelineId: string) => Promise<boolean>;
|
|
81
|
+
}
|
|
82
|
+
export declare function useTimeline(sessions: SessionLeases, sessionId: string | null): TimelineFeed;
|
|
83
|
+
export interface TeamTimelineFeed {
|
|
84
|
+
/** Complete boundary histories for the known team members. Private work is
|
|
85
|
+
* fetched separately when its report disclosure opens. */
|
|
86
|
+
readonly rowsBySession: ReadonlyMap<string, readonly TimelineEntry[]>;
|
|
87
|
+
/** Content-free response model/effort observations across full history. */
|
|
88
|
+
readonly responseRuntimesBySession: ReadonlyMap<string, readonly ResponseRuntime[]>;
|
|
89
|
+
/** True only after every current member's complete boundary query succeeds. */
|
|
90
|
+
readonly historyReady: boolean;
|
|
91
|
+
readonly historyError: string | null;
|
|
92
|
+
readonly retry: () => void;
|
|
93
|
+
}
|
|
94
|
+
/** Team conversation is distributed across member transcripts, so one parent
|
|
95
|
+
* document owns a small subscription set. Unlike ordinary Agent subthreads it
|
|
96
|
+
* is eager: delivered boundary messages belong in shared chronology even when
|
|
97
|
+
* no disclosure is open. */
|
|
98
|
+
export declare function useTeamTimelines(sessions: SessionLeases, sessionIds: readonly string[]): TeamTimelineFeed;
|
|
99
|
+
export interface SearchFeed {
|
|
100
|
+
query: string;
|
|
101
|
+
response: SearchResponse | null;
|
|
102
|
+
error: string | null;
|
|
103
|
+
searching: boolean;
|
|
104
|
+
}
|
|
105
|
+
/** The structured side of a search: each maps onto one API selector. */
|
|
106
|
+
export interface SearchFacets {
|
|
107
|
+
readonly project?: string | null;
|
|
108
|
+
readonly kind?: string | null;
|
|
109
|
+
readonly agent?: string | null;
|
|
110
|
+
}
|
|
111
|
+
export declare const SEARCH_LIMIT = 200;
|
|
112
|
+
/**
|
|
113
|
+
* One ranked search per settled query. The previous response stays on screen
|
|
114
|
+
* while its successor is in flight — a list that blanks on every keystroke
|
|
115
|
+
* reads as a search that keeps failing — and only the newest request may
|
|
116
|
+
* land: a superseded one is aborted and its late result ignored.
|
|
117
|
+
*/
|
|
118
|
+
export declare function useSearch(catalog: CatalogPort, query: string, facets?: SearchFacets): SearchFeed;
|