@50arms/ui 0.0.0-stage → 35.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +193 -2
- package/dist/components/Accordion.js +68 -0
- package/dist/components/Accordion.js.map +1 -0
- package/dist/components/AgentWorkingSpinner.js +46 -0
- package/dist/components/AgentWorkingSpinner.js.map +1 -0
- package/dist/components/AppShell.js +228 -0
- package/dist/components/AppShell.js.map +1 -0
- package/dist/components/Attention.js +130 -0
- package/dist/components/Attention.js.map +1 -0
- package/dist/components/Avatar.js +99 -0
- package/dist/components/Avatar.js.map +1 -0
- package/dist/components/Badge.js +143 -0
- package/dist/components/Badge.js.map +1 -0
- package/dist/components/Board.js +292 -0
- package/dist/components/Board.js.map +1 -0
- package/dist/components/Button.js +327 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/Callout.js +106 -0
- package/dist/components/Callout.js.map +1 -0
- package/dist/components/Card.js +140 -0
- package/dist/components/Card.js.map +1 -0
- package/dist/components/Choice.js +361 -0
- package/dist/components/Choice.js.map +1 -0
- package/dist/components/CodeEditor.js +384 -0
- package/dist/components/CodeEditor.js.map +1 -0
- package/dist/components/ColorPicker.js +174 -0
- package/dist/components/ColorPicker.js.map +1 -0
- package/dist/components/Combobox.js +212 -0
- package/dist/components/Combobox.js.map +1 -0
- package/dist/components/CommandPalette.js +163 -0
- package/dist/components/CommandPalette.js.map +1 -0
- package/dist/components/ConcentricRing.js +60 -0
- package/dist/components/ConcentricRing.js.map +1 -0
- package/dist/components/ConnectionCard.js +98 -0
- package/dist/components/ConnectionCard.js.map +1 -0
- package/dist/components/ContextItemRow.js +49 -0
- package/dist/components/ContextItemRow.js.map +1 -0
- package/dist/components/CopyValue.js +57 -0
- package/dist/components/CopyValue.js.map +1 -0
- package/dist/components/CountBadge.js +26 -0
- package/dist/components/CountBadge.js.map +1 -0
- package/dist/components/DateCalendar.js +156 -0
- package/dist/components/DateCalendar.js.map +1 -0
- package/dist/components/DateField.js +166 -0
- package/dist/components/DateField.js.map +1 -0
- package/dist/components/DatePicker.js +56 -0
- package/dist/components/DatePicker.js.map +1 -0
- package/dist/components/DateTimeText.js +19 -0
- package/dist/components/DateTimeText.js.map +1 -0
- package/dist/components/DescriptionList.js +25 -0
- package/dist/components/DescriptionList.js.map +1 -0
- package/dist/components/Dialog.js +332 -0
- package/dist/components/Dialog.js.map +1 -0
- package/dist/components/DragDrop.js +395 -0
- package/dist/components/DragDrop.js.map +1 -0
- package/dist/components/Drawer.js +100 -0
- package/dist/components/Drawer.js.map +1 -0
- package/dist/components/EditGutter.js +110 -0
- package/dist/components/EditGutter.js.map +1 -0
- package/dist/components/EmojiPicker.js +174 -0
- package/dist/components/EmojiPicker.js.map +1 -0
- package/dist/components/ErrorBoundary.js +47 -0
- package/dist/components/ErrorBoundary.js.map +1 -0
- package/dist/components/Field.js +115 -0
- package/dist/components/Field.js.map +1 -0
- package/dist/components/FileUpload.js +128 -0
- package/dist/components/FileUpload.js.map +1 -0
- package/dist/components/FilterMenu.js +256 -0
- package/dist/components/FilterMenu.js.map +1 -0
- package/dist/components/GatesSection.js +79 -0
- package/dist/components/GatesSection.js.map +1 -0
- package/dist/components/Icon.js +50 -0
- package/dist/components/Icon.js.map +1 -0
- package/dist/components/IconButton.js +59 -0
- package/dist/components/IconButton.js.map +1 -0
- package/dist/components/IconStack.js +69 -0
- package/dist/components/IconStack.js.map +1 -0
- package/dist/components/ImageUploadField.js +146 -0
- package/dist/components/ImageUploadField.js.map +1 -0
- package/dist/components/InlineEdit.js +432 -0
- package/dist/components/InlineEdit.js.map +1 -0
- package/dist/components/InlineMarkdownEdit.js +184 -0
- package/dist/components/InlineMarkdownEdit.js.map +1 -0
- package/dist/components/Input.js +156 -0
- package/dist/components/Input.js.map +1 -0
- package/dist/components/LegalDocument.js +155 -0
- package/dist/components/LegalDocument.js.map +1 -0
- package/dist/components/LineDiff.js +95 -0
- package/dist/components/LineDiff.js.map +1 -0
- package/dist/components/ListHeader.js +72 -0
- package/dist/components/ListHeader.js.map +1 -0
- package/dist/components/Loading.js +111 -0
- package/dist/components/Loading.js.map +1 -0
- package/dist/components/Markdown.js +28 -0
- package/dist/components/Markdown.js.map +1 -0
- package/dist/components/MarkdownEditor.js +467 -0
- package/dist/components/MarkdownEditor.js.map +1 -0
- package/dist/components/Menu.js +185 -0
- package/dist/components/Menu.js.map +1 -0
- package/dist/components/Navigation.js +87 -0
- package/dist/components/Navigation.js.map +1 -0
- package/dist/components/NumberInput.js +119 -0
- package/dist/components/NumberInput.js.map +1 -0
- package/dist/components/OTPInput.js +71 -0
- package/dist/components/OTPInput.js.map +1 -0
- package/dist/components/OrderedEntityManager.js +170 -0
- package/dist/components/OrderedEntityManager.js.map +1 -0
- package/dist/components/PagedWindowList.js +74 -0
- package/dist/components/PagedWindowList.js.map +1 -0
- package/dist/components/PaginationBar.js +95 -0
- package/dist/components/PaginationBar.js.map +1 -0
- package/dist/components/Panel.js +396 -0
- package/dist/components/Panel.js.map +1 -0
- package/dist/components/PasswordInput.js +32 -0
- package/dist/components/PasswordInput.js.map +1 -0
- package/dist/components/PasswordRequirements.js +25 -0
- package/dist/components/PasswordRequirements.js.map +1 -0
- package/dist/components/PatchDiff.js +96 -0
- package/dist/components/PatchDiff.js.map +1 -0
- package/dist/components/PendingVeil.js +18 -0
- package/dist/components/PendingVeil.js.map +1 -0
- package/dist/components/Popover.js +214 -0
- package/dist/components/Popover.js.map +1 -0
- package/dist/components/Progress.js +419 -0
- package/dist/components/Progress.js.map +1 -0
- package/dist/components/RatingScale.js +89 -0
- package/dist/components/RatingScale.js.map +1 -0
- package/dist/components/ReadMore.js +232 -0
- package/dist/components/ReadMore.js.map +1 -0
- package/dist/components/RecordCard.js +202 -0
- package/dist/components/RecordCard.js.map +1 -0
- package/dist/components/RelativeTime.js +29 -0
- package/dist/components/RelativeTime.js.map +1 -0
- package/dist/components/SandboxedFrame.js +135 -0
- package/dist/components/SandboxedFrame.js.map +1 -0
- package/dist/components/SearchInput.js +38 -0
- package/dist/components/SearchInput.js.map +1 -0
- package/dist/components/SecretField.js +228 -0
- package/dist/components/SecretField.js.map +1 -0
- package/dist/components/SectionNav.js +42 -0
- package/dist/components/SectionNav.js.map +1 -0
- package/dist/components/Select.js +172 -0
- package/dist/components/Select.js.map +1 -0
- package/dist/components/SequenceDiagram.js +109 -0
- package/dist/components/SequenceDiagram.js.map +1 -0
- package/dist/components/SettingRow.js +124 -0
- package/dist/components/SettingRow.js.map +1 -0
- package/dist/components/SignOffRings.js +36 -0
- package/dist/components/SignOffRings.js.map +1 -0
- package/dist/components/Slider.js +353 -0
- package/dist/components/Slider.js.map +1 -0
- package/dist/components/SolutionChoice.js +89 -0
- package/dist/components/SolutionChoice.js.map +1 -0
- package/dist/components/SortMenu.js +75 -0
- package/dist/components/SortMenu.js.map +1 -0
- package/dist/components/Spinner.js +42 -0
- package/dist/components/Spinner.js.map +1 -0
- package/dist/components/Stat.js +148 -0
- package/dist/components/Stat.js.map +1 -0
- package/dist/components/StatusSelect.js +119 -0
- package/dist/components/StatusSelect.js.map +1 -0
- package/dist/components/Surface.js +210 -0
- package/dist/components/Surface.js.map +1 -0
- package/dist/components/Table.js +300 -0
- package/dist/components/Table.js.map +1 -0
- package/dist/components/Tabs.js +288 -0
- package/dist/components/Tabs.js.map +1 -0
- package/dist/components/ThemeMenu.js +198 -0
- package/dist/components/ThemeMenu.js.map +1 -0
- package/dist/components/Toast.js +217 -0
- package/dist/components/Toast.js.map +1 -0
- package/dist/components/Toggle.js +147 -0
- package/dist/components/Toggle.js.map +1 -0
- package/dist/components/ToggleMatrix.js +157 -0
- package/dist/components/ToggleMatrix.js.map +1 -0
- package/dist/components/Tree.js +125 -0
- package/dist/components/Tree.js.map +1 -0
- package/dist/components/TriStateSwitch.js +111 -0
- package/dist/components/TriStateSwitch.js.map +1 -0
- package/dist/components/VideoPlayer.js +64 -0
- package/dist/components/VideoPlayer.js.map +1 -0
- package/dist/components/auth/AcceptInvitationCard.js +110 -0
- package/dist/components/auth/AcceptInvitationCard.js.map +1 -0
- package/dist/components/auth/AuthLayout.js +18 -0
- package/dist/components/auth/AuthLayout.js.map +1 -0
- package/dist/components/auth/ForgotPasswordForm.js +44 -0
- package/dist/components/auth/ForgotPasswordForm.js.map +1 -0
- package/dist/components/auth/LoginForm.js +76 -0
- package/dist/components/auth/LoginForm.js.map +1 -0
- package/dist/components/auth/ResetPasswordForm.js +69 -0
- package/dist/components/auth/ResetPasswordForm.js.map +1 -0
- package/dist/components/auth/SignInProviders.js +45 -0
- package/dist/components/auth/SignInProviders.js.map +1 -0
- package/dist/components/auth/SignupCard.js +204 -0
- package/dist/components/auth/SignupCard.js.map +1 -0
- package/dist/components/auth/TermsAcceptance.js +43 -0
- package/dist/components/auth/TermsAcceptance.js.map +1 -0
- package/dist/components/board/context.js +32 -0
- package/dist/components/board/context.js.map +1 -0
- package/dist/components/board/recipe.js +94 -0
- package/dist/components/board/recipe.js.map +1 -0
- package/dist/components/calendar/CalendarMonth.js +299 -0
- package/dist/components/calendar/CalendarMonth.js.map +1 -0
- package/dist/components/calendar/CalendarTimeGrid.js +430 -0
- package/dist/components/calendar/CalendarTimeGrid.js.map +1 -0
- package/dist/components/calendar/EventActions.js +101 -0
- package/dist/components/calendar/EventActions.js.map +1 -0
- package/dist/components/calendar/format.js +73 -0
- package/dist/components/calendar/format.js.map +1 -0
- package/dist/components/calendar/palette.js +31 -0
- package/dist/components/calendar/palette.js.map +1 -0
- package/dist/components/calendar/use-calendar-drag.js +149 -0
- package/dist/components/calendar/use-calendar-drag.js.map +1 -0
- package/dist/components/calendar/use-event-keyboard.js +87 -0
- package/dist/components/calendar/use-event-keyboard.js.map +1 -0
- package/dist/components/calendar/use-grid-navigation.js +79 -0
- package/dist/components/calendar/use-grid-navigation.js.map +1 -0
- package/dist/components/calendar/use-now.js +27 -0
- package/dist/components/calendar/use-now.js.map +1 -0
- package/dist/components/card-face/AcRingGlyph.js +39 -0
- package/dist/components/card-face/AcRingGlyph.js.map +1 -0
- package/dist/components/card-face/BoardCardAgentSlot.js +17 -0
- package/dist/components/card-face/BoardCardAgentSlot.js.map +1 -0
- package/dist/components/card-face/CardFace.js +109 -0
- package/dist/components/card-face/CardFace.js.map +1 -0
- package/dist/components/card-face/CardTypeBadge.js +17 -0
- package/dist/components/card-face/CardTypeBadge.js.map +1 -0
- package/dist/components/card-face/EffortBadge.js +11 -0
- package/dist/components/card-face/EffortBadge.js.map +1 -0
- package/dist/components/card-face/GateRingGlyph.js +31 -0
- package/dist/components/card-face/GateRingGlyph.js.map +1 -0
- package/dist/components/card-face/OverflowRow.js +70 -0
- package/dist/components/card-face/OverflowRow.js.map +1 -0
- package/dist/components/card-face/TapTip.js +32 -0
- package/dist/components/card-face/TapTip.js.map +1 -0
- package/dist/components/card-face/hit-area.js +6 -0
- package/dist/components/card-face/hit-area.js.map +1 -0
- package/dist/components/card-face/vocabulary.js +102 -0
- package/dist/components/card-face/vocabulary.js.map +1 -0
- package/dist/components/chart/BarList.js +78 -0
- package/dist/components/chart/BarList.js.map +1 -0
- package/dist/components/chart/LineChart.js +310 -0
- package/dist/components/chart/LineChart.js.map +1 -0
- package/dist/components/chart/ShareBar.js +141 -0
- package/dist/components/chart/ShareBar.js.map +1 -0
- package/dist/components/chart/TimeSeriesChart.js +305 -0
- package/dist/components/chart/TimeSeriesChart.js.map +1 -0
- package/dist/components/chart/label-metrics.js +17 -0
- package/dist/components/chart/label-metrics.js.map +1 -0
- package/dist/components/chart/line-chart-axis.js +38 -0
- package/dist/components/chart/line-chart-axis.js.map +1 -0
- package/dist/components/chart/line-chart-scale.js +132 -0
- package/dist/components/chart/line-chart-scale.js.map +1 -0
- package/dist/components/chart/line-series-style.js +22 -0
- package/dist/components/chart/line-series-style.js.map +1 -0
- package/dist/components/chart/share-bar-labels.js +14 -0
- package/dist/components/chart/share-bar-labels.js.map +1 -0
- package/dist/components/chart/shared.js +157 -0
- package/dist/components/chart/shared.js.map +1 -0
- package/dist/components/chart/time-series-scale.js +51 -0
- package/dist/components/chart/time-series-scale.js.map +1 -0
- package/dist/components/chat/Attachment.js +316 -0
- package/dist/components/chat/Attachment.js.map +1 -0
- package/dist/components/chat/Chat.js +171 -0
- package/dist/components/chat/Chat.js.map +1 -0
- package/dist/components/chat/Composer.js +274 -0
- package/dist/components/chat/Composer.js.map +1 -0
- package/dist/components/chat/ContextMeter.js +202 -0
- package/dist/components/chat/ContextMeter.js.map +1 -0
- package/dist/components/chat/EffortControl.js +116 -0
- package/dist/components/chat/EffortControl.js.map +1 -0
- package/dist/components/chat/FileCover.js +78 -0
- package/dist/components/chat/FileCover.js.map +1 -0
- package/dist/components/chat/Message.js +356 -0
- package/dist/components/chat/Message.js.map +1 -0
- package/dist/components/chat/MessageScroller.js +104 -0
- package/dist/components/chat/MessageScroller.js.map +1 -0
- package/dist/components/chat/ModelSelector.js +156 -0
- package/dist/components/chat/ModelSelector.js.map +1 -0
- package/dist/components/chat/StreamingMarkdown.js +42 -0
- package/dist/components/chat/StreamingMarkdown.js.map +1 -0
- package/dist/components/chat/download-file.js +9 -0
- package/dist/components/chat/download-file.js.map +1 -0
- package/dist/components/chat/file-icon.js +39 -0
- package/dist/components/chat/file-icon.js.map +1 -0
- package/dist/components/checklist/StatusChecklist.js +103 -0
- package/dist/components/checklist/StatusChecklist.js.map +1 -0
- package/dist/components/checklist/tally.js +29 -0
- package/dist/components/checklist/tally.js.map +1 -0
- package/dist/components/code-editor/context.js +13 -0
- package/dist/components/code-editor/context.js.map +1 -0
- package/dist/components/code-editor/editing.js +93 -0
- package/dist/components/code-editor/editing.js.map +1 -0
- package/dist/components/code-editor/highlight.js +27 -0
- package/dist/components/code-editor/highlight.js.map +1 -0
- package/dist/components/code-editor/recipe.js +75 -0
- package/dist/components/code-editor/recipe.js.map +1 -0
- package/dist/components/date-timeline/DateTimeline.js +358 -0
- package/dist/components/date-timeline/DateTimeline.js.map +1 -0
- package/dist/components/date-timeline/TimelineRow.js +100 -0
- package/dist/components/date-timeline/TimelineRow.js.map +1 -0
- package/dist/components/date-timeline/useBarDrag.js +44 -0
- package/dist/components/date-timeline/useBarDrag.js.map +1 -0
- package/dist/components/date-timeline/useMarkerDrag.js +40 -0
- package/dist/components/date-timeline/useMarkerDrag.js.map +1 -0
- package/dist/components/date-timeline/useTimelineZoom.js +44 -0
- package/dist/components/date-timeline/useTimelineZoom.js.map +1 -0
- package/dist/components/drag-drop/context.js +37 -0
- package/dist/components/drag-drop/context.js.map +1 -0
- package/dist/components/drag-drop/recipe.js +270 -0
- package/dist/components/drag-drop/recipe.js.map +1 -0
- package/dist/components/drag-drop/shift.js +157 -0
- package/dist/components/drag-drop/shift.js.map +1 -0
- package/dist/components/edit/activation.js +10 -0
- package/dist/components/edit/activation.js.map +1 -0
- package/dist/components/edit/outcome.js +47 -0
- package/dist/components/edit/outcome.js.map +1 -0
- package/dist/components/edit/use-edit-session.js +146 -0
- package/dist/components/edit/use-edit-session.js.map +1 -0
- package/dist/components/file-viewer/FileViewer.js +97 -0
- package/dist/components/file-viewer/FileViewer.js.map +1 -0
- package/dist/components/file-viewer/PageNumberJumpField.js +47 -0
- package/dist/components/file-viewer/PageNumberJumpField.js.map +1 -0
- package/dist/components/file-viewer/ViewerControls.js +122 -0
- package/dist/components/file-viewer/ViewerControls.js.map +1 -0
- package/dist/components/file-viewer/ViewerRail.js +57 -0
- package/dist/components/file-viewer/ViewerRail.js.map +1 -0
- package/dist/components/file-viewer/ViewerStage.js +112 -0
- package/dist/components/file-viewer/ViewerStage.js.map +1 -0
- package/dist/components/file-viewer/frames.js +37 -0
- package/dist/components/file-viewer/frames.js.map +1 -0
- package/dist/components/file-viewer/use-frame-cursor.js +32 -0
- package/dist/components/file-viewer/use-frame-cursor.js.map +1 -0
- package/dist/components/file-viewer/use-viewer-keys.js +50 -0
- package/dist/components/file-viewer/use-viewer-keys.js.map +1 -0
- package/dist/components/file-viewer/use-viewer-zoom.js +68 -0
- package/dist/components/file-viewer/use-viewer-zoom.js.map +1 -0
- package/dist/components/focus-web/FocusWeb.js +322 -0
- package/dist/components/focus-web/FocusWeb.js.map +1 -0
- package/dist/components/focus-web/layout.js +34 -0
- package/dist/components/focus-web/layout.js.map +1 -0
- package/dist/components/graph-explorer/GraphExplorer.js +441 -0
- package/dist/components/graph-explorer/GraphExplorer.js.map +1 -0
- package/dist/components/graph-explorer/camera-math.js +102 -0
- package/dist/components/graph-explorer/camera-math.js.map +1 -0
- package/dist/components/graph-explorer/tree-layout.js +103 -0
- package/dist/components/graph-explorer/tree-layout.js.map +1 -0
- package/dist/components/graph-explorer/use-camera.js +82 -0
- package/dist/components/graph-explorer/use-camera.js.map +1 -0
- package/dist/components/graph-explorer/viewport-gesture.js +107 -0
- package/dist/components/graph-explorer/viewport-gesture.js.map +1 -0
- package/dist/components/kanban/KanbanBoard.js +219 -0
- package/dist/components/kanban/KanbanBoard.js.map +1 -0
- package/dist/components/kanban/recipe.js +144 -0
- package/dist/components/kanban/recipe.js.map +1 -0
- package/dist/components/markdown/Affordances.js +398 -0
- package/dist/components/markdown/Affordances.js.map +1 -0
- package/dist/components/markdown/AttachmentStrip.js +128 -0
- package/dist/components/markdown/AttachmentStrip.js.map +1 -0
- package/dist/components/markdown/ImageUpload.js +45 -0
- package/dist/components/markdown/ImageUpload.js.map +1 -0
- package/dist/components/media-error.js +7 -0
- package/dist/components/media-error.js.map +1 -0
- package/dist/components/nav-sections.js +61 -0
- package/dist/components/nav-sections.js.map +1 -0
- package/dist/components/node-canvas/NodeCanvas.js +384 -0
- package/dist/components/node-canvas/NodeCanvas.js.map +1 -0
- package/dist/components/node-canvas/layout.js +237 -0
- package/dist/components/node-canvas/layout.js.map +1 -0
- package/dist/components/node-canvas/use-canvas-gestures.js +143 -0
- package/dist/components/node-canvas/use-canvas-gestures.js.map +1 -0
- package/dist/components/openapi/OpenApiViewer.js +137 -0
- package/dist/components/openapi/OpenApiViewer.js.map +1 -0
- package/dist/components/openapi/OperationCard.js +145 -0
- package/dist/components/openapi/OperationCard.js.map +1 -0
- package/dist/components/openapi/SchemaView.js +68 -0
- package/dist/components/openapi/SchemaView.js.map +1 -0
- package/dist/components/openapi/resolve.js +102 -0
- package/dist/components/openapi/resolve.js.map +1 -0
- package/dist/components/openapi/types.js +5 -0
- package/dist/components/openapi/types.js.map +1 -0
- package/dist/components/overlay-shell.js +29 -0
- package/dist/components/overlay-shell.js.map +1 -0
- package/dist/components/overlay-stack.js +27 -0
- package/dist/components/overlay-stack.js.map +1 -0
- package/dist/components/paged-window/PageBlock.js +50 -0
- package/dist/components/paged-window/PageBlock.js.map +1 -0
- package/dist/components/provenance/ConfidenceBar.js +60 -0
- package/dist/components/provenance/ConfidenceBar.js.map +1 -0
- package/dist/components/provenance/ConfidenceMeter.js +36 -0
- package/dist/components/provenance/ConfidenceMeter.js.map +1 -0
- package/dist/components/provenance/ConfidenceReadout.js +31 -0
- package/dist/components/provenance/ConfidenceReadout.js.map +1 -0
- package/dist/components/provenance/ProvenanceBadge.js +44 -0
- package/dist/components/provenance/ProvenanceBadge.js.map +1 -0
- package/dist/components/provenance/ProvenanceDetail.js +114 -0
- package/dist/components/provenance/ProvenanceDetail.js.map +1 -0
- package/dist/components/provenance/ProvenanceDisclosure.js +111 -0
- package/dist/components/provenance/ProvenanceDisclosure.js.map +1 -0
- package/dist/components/provenance/absence.js +31 -0
- package/dist/components/provenance/absence.js.map +1 -0
- package/dist/components/provenance/types.js +30 -0
- package/dist/components/provenance/types.js.map +1 -0
- package/dist/components/rbac/AccessRequestPanel.js +153 -0
- package/dist/components/rbac/AccessRequestPanel.js.map +1 -0
- package/dist/components/rbac/AccountMenu.js +118 -0
- package/dist/components/rbac/AccountMenu.js.map +1 -0
- package/dist/components/rbac/AgentKeysList.js +20 -0
- package/dist/components/rbac/AgentKeysList.js.map +1 -0
- package/dist/components/rbac/ApiKeysPanel.js +172 -0
- package/dist/components/rbac/ApiKeysPanel.js.map +1 -0
- package/dist/components/rbac/ApiKeysTable.js +167 -0
- package/dist/components/rbac/ApiKeysTable.js.map +1 -0
- package/dist/components/rbac/Brand.js +13 -0
- package/dist/components/rbac/Brand.js.map +1 -0
- package/dist/components/rbac/Can.js +18 -0
- package/dist/components/rbac/Can.js.map +1 -0
- package/dist/components/rbac/ChangePasswordForm.js +73 -0
- package/dist/components/rbac/ChangePasswordForm.js.map +1 -0
- package/dist/components/rbac/DangerZone.js +27 -0
- package/dist/components/rbac/DangerZone.js.map +1 -0
- package/dist/components/rbac/DevToolsPopover.js +140 -0
- package/dist/components/rbac/DevToolsPopover.js.map +1 -0
- package/dist/components/rbac/EndedLine.js +24 -0
- package/dist/components/rbac/EndedLine.js.map +1 -0
- package/dist/components/rbac/InvitationsList.js +148 -0
- package/dist/components/rbac/InvitationsList.js.map +1 -0
- package/dist/components/rbac/InviteMembersDialog.js +97 -0
- package/dist/components/rbac/InviteMembersDialog.js.map +1 -0
- package/dist/components/rbac/MembersPanel.js +138 -0
- package/dist/components/rbac/MembersPanel.js.map +1 -0
- package/dist/components/rbac/PermissionRequestPanel.js +141 -0
- package/dist/components/rbac/PermissionRequestPanel.js.map +1 -0
- package/dist/components/rbac/ProfileForm.js +86 -0
- package/dist/components/rbac/ProfileForm.js.map +1 -0
- package/dist/components/rbac/ProfilePage.js +58 -0
- package/dist/components/rbac/ProfilePage.js.map +1 -0
- package/dist/components/rbac/RBACProvider.js +82 -0
- package/dist/components/rbac/RBACProvider.js.map +1 -0
- package/dist/components/rbac/RoleEditorDialog.js +90 -0
- package/dist/components/rbac/RoleEditorDialog.js.map +1 -0
- package/dist/components/rbac/RoleKeyPicker.js +77 -0
- package/dist/components/rbac/RoleKeyPicker.js.map +1 -0
- package/dist/components/rbac/RolePermissionMatrix.js +37 -0
- package/dist/components/rbac/RolePermissionMatrix.js.map +1 -0
- package/dist/components/rbac/RolesPermissionsPage.js +142 -0
- package/dist/components/rbac/RolesPermissionsPage.js.map +1 -0
- package/dist/components/rbac/SessionsList.js +146 -0
- package/dist/components/rbac/SessionsList.js.map +1 -0
- package/dist/components/rbac/TeamSettingsForm.js +69 -0
- package/dist/components/rbac/TeamSettingsForm.js.map +1 -0
- package/dist/components/rbac/TeamSwitcher.js +66 -0
- package/dist/components/rbac/TeamSwitcher.js.map +1 -0
- package/dist/components/rbac/approvalPanelParts.js +130 -0
- package/dist/components/rbac/approvalPanelParts.js.map +1 -0
- package/dist/components/rbac/permissionSections.js +8 -0
- package/dist/components/rbac/permissionSections.js.map +1 -0
- package/dist/components/rbac/stagedForm.js +42 -0
- package/dist/components/rbac/stagedForm.js.map +1 -0
- package/dist/components/rbac/useStagedImage.js +21 -0
- package/dist/components/rbac/useStagedImage.js.map +1 -0
- package/dist/components/roadmap/PhaseManager.js +48 -0
- package/dist/components/roadmap/PhaseManager.js.map +1 -0
- package/dist/components/roadmap/RoadmapItemCard.js +96 -0
- package/dist/components/roadmap/RoadmapItemCard.js.map +1 -0
- package/dist/components/roadmap/RoadmapPage.js +34 -0
- package/dist/components/roadmap/RoadmapPage.js.map +1 -0
- package/dist/components/roadmap/RoadmapSwimlaneBoard.js +91 -0
- package/dist/components/roadmap/RoadmapSwimlaneBoard.js.map +1 -0
- package/dist/components/roadmap/TrackManager.js +58 -0
- package/dist/components/roadmap/TrackManager.js.map +1 -0
- package/dist/components/roadmap/UseCaseCard.js +93 -0
- package/dist/components/roadmap/UseCaseCard.js.map +1 -0
- package/dist/components/roadmap/UseCaseLedgerPage.js +98 -0
- package/dist/components/roadmap/UseCaseLedgerPage.js.map +1 -0
- package/dist/components/roadmap/chip-tones.js +9 -0
- package/dist/components/roadmap/chip-tones.js.map +1 -0
- package/dist/components/roadmap/derive.js +28 -0
- package/dist/components/roadmap/derive.js.map +1 -0
- package/dist/components/stepper/Stepper.js +276 -0
- package/dist/components/stepper/Stepper.js.map +1 -0
- package/dist/components/stepper/derive.js +53 -0
- package/dist/components/stepper/derive.js.map +1 -0
- package/dist/confidence.css +222 -0
- package/dist/fonts/bricolage-grotesque-0.woff2 +0 -0
- package/dist/fonts/bricolage-grotesque-1.woff2 +0 -0
- package/dist/fonts/bricolage-grotesque-2.woff2 +0 -0
- package/dist/fonts/figtree-0.woff2 +0 -0
- package/dist/fonts/figtree-1.woff2 +0 -0
- package/dist/fonts/figtree-2.woff2 +0 -0
- package/dist/fonts/figtree-3.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-0.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-1.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-10.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-11.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-2.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-3.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-4.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-5.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-6.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-7.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-8.woff2 +0 -0
- package/dist/fonts/jetbrains-mono-9.woff2 +0 -0
- package/dist/fonts.css +187 -0
- package/dist/icons/data.js +233 -0
- package/dist/icons/data.js.map +1 -0
- package/dist/index.js +942 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/attention.js +75 -0
- package/dist/lib/attention.js.map +1 -0
- package/dist/lib/board/anchor.js +14 -0
- package/dist/lib/board/anchor.js.map +1 -0
- package/dist/lib/board/model.js +41 -0
- package/dist/lib/board/model.js.map +1 -0
- package/dist/lib/board/move.js +161 -0
- package/dist/lib/board/move.js.map +1 -0
- package/dist/lib/board/position.js +11 -0
- package/dist/lib/board/position.js.map +1 -0
- package/dist/lib/board/rejection.js +22 -0
- package/dist/lib/board/rejection.js.map +1 -0
- package/dist/lib/board/use-board.js +43 -0
- package/dist/lib/board/use-board.js.map +1 -0
- package/dist/lib/calendar/band-packer.js +44 -0
- package/dist/lib/calendar/band-packer.js.map +1 -0
- package/dist/lib/calendar/drag.js +74 -0
- package/dist/lib/calendar/drag.js.map +1 -0
- package/dist/lib/calendar/lane-packer.js +67 -0
- package/dist/lib/calendar/lane-packer.js.map +1 -0
- package/dist/lib/calendar/segments.js +82 -0
- package/dist/lib/calendar/segments.js.map +1 -0
- package/dist/lib/calendar/types.js +7 -0
- package/dist/lib/calendar/types.js.map +1 -0
- package/dist/lib/chart-palette.js +27 -0
- package/dist/lib/chart-palette.js.map +1 -0
- package/dist/lib/clipboard.js +30 -0
- package/dist/lib/clipboard.js.map +1 -0
- package/dist/lib/cn.js +9 -0
- package/dist/lib/cn.js.map +1 -0
- package/dist/lib/color.js +24 -0
- package/dist/lib/color.js.map +1 -0
- package/dist/lib/component-guidance.js +297 -0
- package/dist/lib/component-guidance.js.map +1 -0
- package/dist/lib/confidence.js +22 -0
- package/dist/lib/confidence.js.map +1 -0
- package/dist/lib/date-timeline/scale.js +197 -0
- package/dist/lib/date-timeline/scale.js.map +1 -0
- package/dist/lib/design-frame/document.js +44 -0
- package/dist/lib/design-frame/document.js.map +1 -0
- package/dist/lib/design-frame/mini-app-script.js +107 -0
- package/dist/lib/design-frame/mini-app-script.js.map +1 -0
- package/dist/lib/design-frame/mini-app.js +12 -0
- package/dist/lib/design-frame/mini-app.js.map +1 -0
- package/dist/lib/design-frame/protocol.js +46 -0
- package/dist/lib/design-frame/protocol.js.map +1 -0
- package/dist/lib/dev-warn.js +17 -0
- package/dist/lib/dev-warn.js.map +1 -0
- package/dist/lib/dnd/announce.js +120 -0
- package/dist/lib/dnd/announce.js.map +1 -0
- package/dist/lib/dnd/autoscroll.js +123 -0
- package/dist/lib/dnd/autoscroll.js.map +1 -0
- package/dist/lib/dnd/cross-drop.js +11 -0
- package/dist/lib/dnd/cross-drop.js.map +1 -0
- package/dist/lib/dnd/geometry.js +99 -0
- package/dist/lib/dnd/geometry.js.map +1 -0
- package/dist/lib/dnd/sensors/gesture.js +86 -0
- package/dist/lib/dnd/sensors/gesture.js.map +1 -0
- package/dist/lib/dnd/sensors/keyboard.js +47 -0
- package/dist/lib/dnd/sensors/keyboard.js.map +1 -0
- package/dist/lib/dnd/sensors/pointer.js +32 -0
- package/dist/lib/dnd/sensors/pointer.js.map +1 -0
- package/dist/lib/dnd/session.js +256 -0
- package/dist/lib/dnd/session.js.map +1 -0
- package/dist/lib/dnd/use-drag.js +90 -0
- package/dist/lib/dnd/use-drag.js.map +1 -0
- package/dist/lib/dom/scroll-ancestor.js +18 -0
- package/dist/lib/dom/scroll-ancestor.js.map +1 -0
- package/dist/lib/format.js +23 -0
- package/dist/lib/format.js.map +1 -0
- package/dist/lib/group-in-order.js +13 -0
- package/dist/lib/group-in-order.js.map +1 -0
- package/dist/lib/header-fold.js +11 -0
- package/dist/lib/header-fold.js.map +1 -0
- package/dist/lib/i18n/areas/auth-provenance-flows.js +156 -0
- package/dist/lib/i18n/areas/auth-provenance-flows.js.map +1 -0
- package/dist/lib/i18n/areas/board.js +35 -0
- package/dist/lib/i18n/areas/board.js.map +1 -0
- package/dist/lib/i18n/areas/card-face.js +10 -0
- package/dist/lib/i18n/areas/card-face.js.map +1 -0
- package/dist/lib/i18n/areas/chat-chart.js +118 -0
- package/dist/lib/i18n/areas/chat-chart.js.map +1 -0
- package/dist/lib/i18n/areas/code-editor.js +24 -0
- package/dist/lib/i18n/areas/code-editor.js.map +1 -0
- package/dist/lib/i18n/areas/date-timeline.js +21 -0
- package/dist/lib/i18n/areas/date-timeline.js.map +1 -0
- package/dist/lib/i18n/areas/dates.js +71 -0
- package/dist/lib/i18n/areas/dates.js.map +1 -0
- package/dist/lib/i18n/areas/docs-views.js +183 -0
- package/dist/lib/i18n/areas/docs-views.js.map +1 -0
- package/dist/lib/i18n/areas/feedback.js +75 -0
- package/dist/lib/i18n/areas/feedback.js.map +1 -0
- package/dist/lib/i18n/areas/formats.js +24 -0
- package/dist/lib/i18n/areas/formats.js.map +1 -0
- package/dist/lib/i18n/areas/forms.js +110 -0
- package/dist/lib/i18n/areas/forms.js.map +1 -0
- package/dist/lib/i18n/areas/keys.js +25 -0
- package/dist/lib/i18n/areas/keys.js.map +1 -0
- package/dist/lib/i18n/areas/markdown.js +136 -0
- package/dist/lib/i18n/areas/markdown.js.map +1 -0
- package/dist/lib/i18n/areas/move-rejected.js +14 -0
- package/dist/lib/i18n/areas/move-rejected.js.map +1 -0
- package/dist/lib/i18n/areas/navigation.js +104 -0
- package/dist/lib/i18n/areas/navigation.js.map +1 -0
- package/dist/lib/i18n/areas/rbac.js +331 -0
- package/dist/lib/i18n/areas/rbac.js.map +1 -0
- package/dist/lib/i18n/emphasis.js +6 -0
- package/dist/lib/i18n/emphasis.js.map +1 -0
- package/dist/lib/i18n/number-format.js +9 -0
- package/dist/lib/i18n/number-format.js.map +1 -0
- package/dist/lib/i18n/plural.js +9 -0
- package/dist/lib/i18n/plural.js.map +1 -0
- package/dist/lib/i18n/provider.js +27 -0
- package/dist/lib/i18n/provider.js.map +1 -0
- package/dist/lib/i18n/strings.js +38 -0
- package/dist/lib/i18n/strings.js.map +1 -0
- package/dist/lib/icons.js +17 -0
- package/dist/lib/icons.js.map +1 -0
- package/dist/lib/interactive-target.js +9 -0
- package/dist/lib/interactive-target.js.map +1 -0
- package/dist/lib/intl-cache.js +69 -0
- package/dist/lib/intl-cache.js.map +1 -0
- package/dist/lib/legal-document.js +37 -0
- package/dist/lib/legal-document.js.map +1 -0
- package/dist/lib/line-diff-model.js +51 -0
- package/dist/lib/line-diff-model.js.map +1 -0
- package/dist/lib/markdown/attachments.js +71 -0
- package/dist/lib/markdown/attachments.js.map +1 -0
- package/dist/lib/markdown/caret-map.js +153 -0
- package/dist/lib/markdown/caret-map.js.map +1 -0
- package/dist/lib/markdown/caret.js +35 -0
- package/dist/lib/markdown/caret.js.map +1 -0
- package/dist/lib/markdown/commands.js +443 -0
- package/dist/lib/markdown/commands.js.map +1 -0
- package/dist/lib/markdown/convert.js +153 -0
- package/dist/lib/markdown/convert.js.map +1 -0
- package/dist/lib/markdown/dom.js +89 -0
- package/dist/lib/markdown/dom.js.map +1 -0
- package/dist/lib/markdown/edit.js +92 -0
- package/dist/lib/markdown/edit.js.map +1 -0
- package/dist/lib/markdown/history.js +79 -0
- package/dist/lib/markdown/history.js.map +1 -0
- package/dist/lib/markdown/hotkeys.js +63 -0
- package/dist/lib/markdown/hotkeys.js.map +1 -0
- package/dist/lib/markdown/image-pipeline.js +236 -0
- package/dist/lib/markdown/image-pipeline.js.map +1 -0
- package/dist/lib/markdown/images.js +85 -0
- package/dist/lib/markdown/images.js.map +1 -0
- package/dist/lib/markdown/input.js +210 -0
- package/dist/lib/markdown/input.js.map +1 -0
- package/dist/lib/markdown/keys.js +37 -0
- package/dist/lib/markdown/keys.js.map +1 -0
- package/dist/lib/markdown/paste.js +180 -0
- package/dist/lib/markdown/paste.js.map +1 -0
- package/dist/lib/markdown/position.js +111 -0
- package/dist/lib/markdown/position.js.map +1 -0
- package/dist/lib/markdown/project.js +108 -0
- package/dist/lib/markdown/project.js.map +1 -0
- package/dist/lib/markdown/reconcile.js +127 -0
- package/dist/lib/markdown/reconcile.js.map +1 -0
- package/dist/lib/markdown/surface.js +373 -0
- package/dist/lib/markdown/surface.js.map +1 -0
- package/dist/lib/motion.js +22 -0
- package/dist/lib/motion.js.map +1 -0
- package/dist/lib/pad.js +7 -0
- package/dist/lib/pad.js.map +1 -0
- package/dist/lib/paged-window/layout.js +15 -0
- package/dist/lib/paged-window/layout.js.map +1 -0
- package/dist/lib/paged-window/list-owner.js +21 -0
- package/dist/lib/paged-window/list-owner.js.map +1 -0
- package/dist/lib/paged-window/records-binding.js +239 -0
- package/dist/lib/paged-window/records-binding.js.map +1 -0
- package/dist/lib/paged-window/store.js +562 -0
- package/dist/lib/paged-window/store.js.map +1 -0
- package/dist/lib/paged-window/use-measured-pitch.js +38 -0
- package/dist/lib/paged-window/use-measured-pitch.js.map +1 -0
- package/dist/lib/paged-window/use-page-visibility.js +36 -0
- package/dist/lib/paged-window/use-page-visibility.js.map +1 -0
- package/dist/lib/paged-window/use-paged-window.js +43 -0
- package/dist/lib/paged-window/use-paged-window.js.map +1 -0
- package/dist/lib/paged-window/use-scroll-root.js +12 -0
- package/dist/lib/paged-window/use-scroll-root.js.map +1 -0
- package/dist/lib/persist.js +84 -0
- package/dist/lib/persist.js.map +1 -0
- package/dist/lib/preference-values.js +13 -0
- package/dist/lib/preference-values.js.map +1 -0
- package/dist/lib/preferences.js +86 -0
- package/dist/lib/preferences.js.map +1 -0
- package/dist/lib/reads/hooks.js +156 -0
- package/dist/lib/reads/hooks.js.map +1 -0
- package/dist/lib/reads/optimistic.js +169 -0
- package/dist/lib/reads/optimistic.js.map +1 -0
- package/dist/lib/reads/refetch.js +108 -0
- package/dist/lib/reads/refetch.js.map +1 -0
- package/dist/lib/reads/slots.js +215 -0
- package/dist/lib/reads/slots.js.map +1 -0
- package/dist/lib/realtime/hooks.js +40 -0
- package/dist/lib/realtime/hooks.js.map +1 -0
- package/dist/lib/realtime/provider.js +25 -0
- package/dist/lib/realtime/provider.js.map +1 -0
- package/dist/lib/realtime/registry.js +472 -0
- package/dist/lib/realtime/registry.js.map +1 -0
- package/dist/lib/records/define-record-type.js +33 -0
- package/dist/lib/records/define-record-type.js.map +1 -0
- package/dist/lib/records/hooks.js +39 -0
- package/dist/lib/records/hooks.js.map +1 -0
- package/dist/lib/records/store.js +572 -0
- package/dist/lib/records/store.js.map +1 -0
- package/dist/lib/records/wire.js +58 -0
- package/dist/lib/records/wire.js.map +1 -0
- package/dist/lib/reduced-motion-help.js +19 -0
- package/dist/lib/reduced-motion-help.js.map +1 -0
- package/dist/lib/scroll-caret.js +18 -0
- package/dist/lib/scroll-caret.js.map +1 -0
- package/dist/lib/sim/createSimStore.js +54 -0
- package/dist/lib/sim/createSimStore.js.map +1 -0
- package/dist/lib/sim/latency.js +28 -0
- package/dist/lib/sim/latency.js.map +1 -0
- package/dist/lib/sim/registry.js +13 -0
- package/dist/lib/sim/registry.js.map +1 -0
- package/dist/lib/sim/settings.js +41 -0
- package/dist/lib/sim/settings.js.map +1 -0
- package/dist/lib/submit-shortcut.js +25 -0
- package/dist/lib/submit-shortcut.js.map +1 -0
- package/dist/lib/syntax/index.js +33 -0
- package/dist/lib/syntax/index.js.map +1 -0
- package/dist/lib/syntax/languages/bash.js +77 -0
- package/dist/lib/syntax/languages/bash.js.map +1 -0
- package/dist/lib/syntax/languages/css.js +81 -0
- package/dist/lib/syntax/languages/css.js.map +1 -0
- package/dist/lib/syntax/languages/html.js +91 -0
- package/dist/lib/syntax/languages/html.js.map +1 -0
- package/dist/lib/syntax/languages/index.js +49 -0
- package/dist/lib/syntax/languages/index.js.map +1 -0
- package/dist/lib/syntax/languages/javascript.js +133 -0
- package/dist/lib/syntax/languages/javascript.js.map +1 -0
- package/dist/lib/syntax/languages/json.js +45 -0
- package/dist/lib/syntax/languages/json.js.map +1 -0
- package/dist/lib/syntax/languages/mongodb.js +24 -0
- package/dist/lib/syntax/languages/mongodb.js.map +1 -0
- package/dist/lib/syntax/languages/plain.js +10 -0
- package/dist/lib/syntax/languages/plain.js.map +1 -0
- package/dist/lib/syntax/languages/sql.js +113 -0
- package/dist/lib/syntax/languages/sql.js.map +1 -0
- package/dist/lib/syntax/languages/vue.js +31 -0
- package/dist/lib/syntax/languages/vue.js.map +1 -0
- package/dist/lib/syntax/languages/yaml.js +55 -0
- package/dist/lib/syntax/languages/yaml.js.map +1 -0
- package/dist/lib/syntax/markdown/grammar.js +52 -0
- package/dist/lib/syntax/markdown/grammar.js.map +1 -0
- package/dist/lib/syntax/markdown/inline.js +477 -0
- package/dist/lib/syntax/markdown/inline.js.map +1 -0
- package/dist/lib/syntax/markdown/parse.js +464 -0
- package/dist/lib/syntax/markdown/parse.js.map +1 -0
- package/dist/lib/syntax/markdown/refs.js +94 -0
- package/dist/lib/syntax/markdown/refs.js.map +1 -0
- package/dist/lib/syntax/markdown/render.js +230 -0
- package/dist/lib/syntax/markdown/render.js.map +1 -0
- package/dist/lib/syntax/markdown/spans.js +40 -0
- package/dist/lib/syntax/markdown/spans.js.map +1 -0
- package/dist/lib/syntax/registry.js +55 -0
- package/dist/lib/syntax/registry.js.map +1 -0
- package/dist/lib/syntax/tokenize.js +96 -0
- package/dist/lib/syntax/tokenize.js.map +1 -0
- package/dist/lib/time/instant.js +7 -0
- package/dist/lib/time/instant.js.map +1 -0
- package/dist/lib/time/plain.js +83 -0
- package/dist/lib/time/plain.js.map +1 -0
- package/dist/lib/time/relativeAge.js +20 -0
- package/dist/lib/time/relativeAge.js.map +1 -0
- package/dist/lib/time/relativeClock.js +59 -0
- package/dist/lib/time/relativeClock.js.map +1 -0
- package/dist/lib/time/types.js +23 -0
- package/dist/lib/time/types.js.map +1 -0
- package/dist/lib/time/zone.js +148 -0
- package/dist/lib/time/zone.js.map +1 -0
- package/dist/lib/use-controllable.js +16 -0
- package/dist/lib/use-controllable.js.map +1 -0
- package/dist/lib/use-fill-height.js +49 -0
- package/dist/lib/use-fill-height.js.map +1 -0
- package/dist/lib/use-hydrated.js +14 -0
- package/dist/lib/use-hydrated.js.map +1 -0
- package/dist/lib/use-media-query.js +30 -0
- package/dist/lib/use-media-query.js.map +1 -0
- package/dist/lib/use-relabel-base-ui-dismiss.js +26 -0
- package/dist/lib/use-relabel-base-ui-dismiss.js.map +1 -0
- package/dist/lib/use-release-snap-drag.js +29 -0
- package/dist/lib/use-release-snap-drag.js.map +1 -0
- package/dist/lib/use-roving-options.js +18 -0
- package/dist/lib/use-roving-options.js.map +1 -0
- package/dist/lib/values/absent.js +5 -0
- package/dist/lib/values/absent.js.map +1 -0
- package/dist/lib/values/boolean.js +13 -0
- package/dist/lib/values/boolean.js.map +1 -0
- package/dist/lib/values/currency.js +23 -0
- package/dist/lib/values/currency.js.map +1 -0
- package/dist/lib/values/date.js +35 -0
- package/dist/lib/values/date.js.map +1 -0
- package/dist/lib/values/datetime.js +54 -0
- package/dist/lib/values/datetime.js.map +1 -0
- package/dist/lib/values/locale-date.js +60 -0
- package/dist/lib/values/locale-date.js.map +1 -0
- package/dist/lib/values/number.js +16 -0
- package/dist/lib/values/number.js.map +1 -0
- package/dist/pure.js +379 -0
- package/dist/pure.js.map +1 -0
- package/dist/styles.css +190 -0
- package/dist/theme.css +360 -0
- package/dist/types/components/Accordion.d.ts +15 -0
- package/dist/types/components/AgentWorkingSpinner.d.ts +23 -0
- package/dist/types/components/AppShell.d.ts +164 -0
- package/dist/types/components/Attention.d.ts +87 -0
- package/dist/types/components/Avatar.d.ts +154 -0
- package/dist/types/components/Badge.d.ts +131 -0
- package/dist/types/components/Board.d.ts +239 -0
- package/dist/types/components/Button.d.ts +208 -0
- package/dist/types/components/Callout.d.ts +163 -0
- package/dist/types/components/Card.d.ts +219 -0
- package/dist/types/components/Choice.d.ts +127 -0
- package/dist/types/components/CodeEditor.d.ts +86 -0
- package/dist/types/components/ColorPicker.d.ts +14 -0
- package/dist/types/components/Combobox.d.ts +43 -0
- package/dist/types/components/CommandPalette.d.ts +35 -0
- package/dist/types/components/ConcentricRing.d.ts +61 -0
- package/dist/types/components/ConnectionCard.d.ts +64 -0
- package/dist/types/components/ContextItemRow.d.ts +35 -0
- package/dist/types/components/CopyValue.d.ts +14 -0
- package/dist/types/components/CountBadge.d.ts +14 -0
- package/dist/types/components/DateCalendar.d.ts +30 -0
- package/dist/types/components/DateField.d.ts +29 -0
- package/dist/types/components/DatePicker.d.ts +20 -0
- package/dist/types/components/DateTimeText.d.ts +9 -0
- package/dist/types/components/DescriptionList.d.ts +40 -0
- package/dist/types/components/Dialog.d.ts +269 -0
- package/dist/types/components/DragDrop.d.ts +196 -0
- package/dist/types/components/Drawer.d.ts +163 -0
- package/dist/types/components/EditGutter.d.ts +44 -0
- package/dist/types/components/EmojiPicker.d.ts +30 -0
- package/dist/types/components/ErrorBoundary.d.ts +43 -0
- package/dist/types/components/Field.d.ts +37 -0
- package/dist/types/components/FileUpload.d.ts +22 -0
- package/dist/types/components/FilterMenu.d.ts +120 -0
- package/dist/types/components/GatesSection.d.ts +79 -0
- package/dist/types/components/Icon.d.ts +40 -0
- package/dist/types/components/IconButton.d.ts +69 -0
- package/dist/types/components/IconStack.d.ts +28 -0
- package/dist/types/components/ImageUploadField.d.ts +38 -0
- package/dist/types/components/InlineEdit.d.ts +183 -0
- package/dist/types/components/InlineMarkdownEdit.d.ts +100 -0
- package/dist/types/components/Input.d.ts +128 -0
- package/dist/types/components/LegalDocument.d.ts +23 -0
- package/dist/types/components/LineDiff.d.ts +53 -0
- package/dist/types/components/ListHeader.d.ts +45 -0
- package/dist/types/components/Loading.d.ts +131 -0
- package/dist/types/components/Markdown.d.ts +35 -0
- package/dist/types/components/MarkdownEditor.d.ts +129 -0
- package/dist/types/components/Menu.d.ts +157 -0
- package/dist/types/components/Navigation.d.ts +67 -0
- package/dist/types/components/NumberInput.d.ts +177 -0
- package/dist/types/components/OTPInput.d.ts +13 -0
- package/dist/types/components/OrderedEntityManager.d.ts +64 -0
- package/dist/types/components/PagedWindowList.d.ts +23 -0
- package/dist/types/components/PaginationBar.d.ts +31 -0
- package/dist/types/components/Panel.d.ts +94 -0
- package/dist/types/components/PasswordInput.d.ts +7 -0
- package/dist/types/components/PasswordRequirements.d.ts +11 -0
- package/dist/types/components/PatchDiff.d.ts +38 -0
- package/dist/types/components/PendingVeil.d.ts +8 -0
- package/dist/types/components/Popover.d.ts +231 -0
- package/dist/types/components/Progress.d.ts +580 -0
- package/dist/types/components/RatingScale.d.ts +30 -0
- package/dist/types/components/ReadMore.d.ts +26 -0
- package/dist/types/components/RecordCard.d.ts +413 -0
- package/dist/types/components/RelativeTime.d.ts +17 -0
- package/dist/types/components/SandboxedFrame.d.ts +37 -0
- package/dist/types/components/SearchInput.d.ts +6 -0
- package/dist/types/components/SecretField.d.ts +90 -0
- package/dist/types/components/SectionNav.d.ts +15 -0
- package/dist/types/components/Select.d.ts +53 -0
- package/dist/types/components/SequenceDiagram.d.ts +15 -0
- package/dist/types/components/SettingRow.d.ts +144 -0
- package/dist/types/components/SignOffRings.d.ts +29 -0
- package/dist/types/components/Slider.d.ts +255 -0
- package/dist/types/components/SolutionChoice.d.ts +49 -0
- package/dist/types/components/SortMenu.d.ts +45 -0
- package/dist/types/components/Spinner.d.ts +29 -0
- package/dist/types/components/Stat.d.ts +136 -0
- package/dist/types/components/StatusSelect.d.ts +93 -0
- package/dist/types/components/Surface.d.ts +145 -0
- package/dist/types/components/Table.d.ts +164 -0
- package/dist/types/components/Tabs.d.ts +142 -0
- package/dist/types/components/ThemeMenu.d.ts +56 -0
- package/dist/types/components/Toast.d.ts +63 -0
- package/dist/types/components/Toggle.d.ts +168 -0
- package/dist/types/components/ToggleMatrix.d.ts +51 -0
- package/dist/types/components/Tree.d.ts +20 -0
- package/dist/types/components/TriStateSwitch.d.ts +63 -0
- package/dist/types/components/VideoPlayer.d.ts +26 -0
- package/dist/types/components/auth/AcceptInvitationCard.d.ts +54 -0
- package/dist/types/components/auth/AuthLayout.d.ts +12 -0
- package/dist/types/components/auth/ForgotPasswordForm.d.ts +6 -0
- package/dist/types/components/auth/LoginForm.d.ts +13 -0
- package/dist/types/components/auth/ResetPasswordForm.d.ts +9 -0
- package/dist/types/components/auth/SignInProviders.d.ts +56 -0
- package/dist/types/components/auth/SignupCard.d.ts +62 -0
- package/dist/types/components/auth/TermsAcceptance.d.ts +14 -0
- package/dist/types/components/auth/index.d.ts +8 -0
- package/dist/types/components/board/context.d.ts +65 -0
- package/dist/types/components/board/recipe.d.ts +97 -0
- package/dist/types/components/calendar/CalendarMonth.d.ts +32 -0
- package/dist/types/components/calendar/CalendarTimeGrid.d.ts +74 -0
- package/dist/types/components/calendar/EventActions.d.ts +16 -0
- package/dist/types/components/calendar/format.d.ts +42 -0
- package/dist/types/components/calendar/palette.d.ts +17 -0
- package/dist/types/components/calendar/use-calendar-drag.d.ts +53 -0
- package/dist/types/components/calendar/use-event-keyboard.d.ts +23 -0
- package/dist/types/components/calendar/use-grid-navigation.d.ts +47 -0
- package/dist/types/components/calendar/use-now.d.ts +20 -0
- package/dist/types/components/card-face/AcRingGlyph.d.ts +20 -0
- package/dist/types/components/card-face/BoardCardAgentSlot.d.ts +19 -0
- package/dist/types/components/card-face/CardFace.d.ts +106 -0
- package/dist/types/components/card-face/CardTypeBadge.d.ts +21 -0
- package/dist/types/components/card-face/EffortBadge.d.ts +9 -0
- package/dist/types/components/card-face/GateRingGlyph.d.ts +22 -0
- package/dist/types/components/card-face/OverflowRow.d.ts +40 -0
- package/dist/types/components/card-face/TapTip.d.ts +15 -0
- package/dist/types/components/card-face/hit-area.d.ts +20 -0
- package/dist/types/components/card-face/vocabulary.d.ts +83 -0
- package/dist/types/components/chart/BarList.d.ts +27 -0
- package/dist/types/components/chart/LineChart.d.ts +64 -0
- package/dist/types/components/chart/ShareBar.d.ts +26 -0
- package/dist/types/components/chart/TimeSeriesChart.d.ts +60 -0
- package/dist/types/components/chart/label-metrics.d.ts +9 -0
- package/dist/types/components/chart/line-chart-axis.d.ts +14 -0
- package/dist/types/components/chart/line-chart-scale.d.ts +55 -0
- package/dist/types/components/chart/line-series-style.d.ts +14 -0
- package/dist/types/components/chart/share-bar-labels.d.ts +17 -0
- package/dist/types/components/chart/shared.d.ts +122 -0
- package/dist/types/components/chart/time-series-scale.d.ts +29 -0
- package/dist/types/components/chat/Attachment.d.ts +125 -0
- package/dist/types/components/chat/Chat.d.ts +60 -0
- package/dist/types/components/chat/Composer.d.ts +62 -0
- package/dist/types/components/chat/ContextMeter.d.ts +45 -0
- package/dist/types/components/chat/EffortControl.d.ts +23 -0
- package/dist/types/components/chat/FileCover.d.ts +14 -0
- package/dist/types/components/chat/Message.d.ts +66 -0
- package/dist/types/components/chat/MessageScroller.d.ts +18 -0
- package/dist/types/components/chat/ModelSelector.d.ts +44 -0
- package/dist/types/components/chat/StreamingMarkdown.d.ts +11 -0
- package/dist/types/components/chat/download-file.d.ts +7 -0
- package/dist/types/components/chat/file-icon.d.ts +29 -0
- package/dist/types/components/chat/types.d.ts +165 -0
- package/dist/types/components/checklist/StatusChecklist.d.ts +37 -0
- package/dist/types/components/checklist/index.d.ts +3 -0
- package/dist/types/components/checklist/tally.d.ts +19 -0
- package/dist/types/components/checklist/types.d.ts +28 -0
- package/dist/types/components/code-editor/context.d.ts +32 -0
- package/dist/types/components/code-editor/editing.d.ts +39 -0
- package/dist/types/components/code-editor/highlight.d.ts +20 -0
- package/dist/types/components/code-editor/recipe.d.ts +109 -0
- package/dist/types/components/date-timeline/DateTimeline.d.ts +99 -0
- package/dist/types/components/date-timeline/TimelineRow.d.ts +22 -0
- package/dist/types/components/date-timeline/useBarDrag.d.ts +15 -0
- package/dist/types/components/date-timeline/useMarkerDrag.d.ts +14 -0
- package/dist/types/components/date-timeline/useTimelineZoom.d.ts +23 -0
- package/dist/types/components/drag-drop/context.d.ts +85 -0
- package/dist/types/components/drag-drop/recipe.d.ts +163 -0
- package/dist/types/components/drag-drop/shift.d.ts +153 -0
- package/dist/types/components/edit/activation.d.ts +21 -0
- package/dist/types/components/edit/outcome.d.ts +29 -0
- package/dist/types/components/edit/use-edit-session.d.ts +77 -0
- package/dist/types/components/file-viewer/FileViewer.d.ts +2 -0
- package/dist/types/components/file-viewer/PageNumberJumpField.d.ts +9 -0
- package/dist/types/components/file-viewer/ViewerControls.d.ts +20 -0
- package/dist/types/components/file-viewer/ViewerRail.d.ts +10 -0
- package/dist/types/components/file-viewer/ViewerStage.d.ts +22 -0
- package/dist/types/components/file-viewer/frames.d.ts +28 -0
- package/dist/types/components/file-viewer/index.d.ts +3 -0
- package/dist/types/components/file-viewer/types.d.ts +70 -0
- package/dist/types/components/file-viewer/use-frame-cursor.d.ts +13 -0
- package/dist/types/components/file-viewer/use-viewer-keys.d.ts +24 -0
- package/dist/types/components/file-viewer/use-viewer-zoom.d.ts +29 -0
- package/dist/types/components/focus-web/FocusWeb.d.ts +3 -0
- package/dist/types/components/focus-web/index.d.ts +4 -0
- package/dist/types/components/focus-web/layout.d.ts +55 -0
- package/dist/types/components/focus-web/types.d.ts +131 -0
- package/dist/types/components/graph-explorer/GraphExplorer.d.ts +42 -0
- package/dist/types/components/graph-explorer/camera-math.d.ts +119 -0
- package/dist/types/components/graph-explorer/index.d.ts +5 -0
- package/dist/types/components/graph-explorer/tree-layout.d.ts +67 -0
- package/dist/types/components/graph-explorer/types.d.ts +62 -0
- package/dist/types/components/graph-explorer/use-camera.d.ts +81 -0
- package/dist/types/components/graph-explorer/viewport-gesture.d.ts +32 -0
- package/dist/types/components/kanban/KanbanBoard.d.ts +72 -0
- package/dist/types/components/kanban/recipe.d.ts +73 -0
- package/dist/types/components/kanban/types.d.ts +55 -0
- package/dist/types/components/markdown/Affordances.d.ts +105 -0
- package/dist/types/components/markdown/AttachmentStrip.d.ts +25 -0
- package/dist/types/components/markdown/ImageUpload.d.ts +56 -0
- package/dist/types/components/media-error.d.ts +11 -0
- package/dist/types/components/nav-sections.d.ts +10 -0
- package/dist/types/components/node-canvas/NodeCanvas.d.ts +66 -0
- package/dist/types/components/node-canvas/index.d.ts +3 -0
- package/dist/types/components/node-canvas/layout.d.ts +29 -0
- package/dist/types/components/node-canvas/types.d.ts +207 -0
- package/dist/types/components/node-canvas/use-canvas-gestures.d.ts +39 -0
- package/dist/types/components/openapi/OpenApiViewer.d.ts +14 -0
- package/dist/types/components/openapi/OperationCard.d.ts +33 -0
- package/dist/types/components/openapi/SchemaView.d.ts +14 -0
- package/dist/types/components/openapi/index.d.ts +6 -0
- package/dist/types/components/openapi/resolve.d.ts +72 -0
- package/dist/types/components/openapi/types.d.ts +128 -0
- package/dist/types/components/overlay-shell.d.ts +48 -0
- package/dist/types/components/overlay-stack.d.ts +18 -0
- package/dist/types/components/paged-window/PageBlock.d.ts +31 -0
- package/dist/types/components/provenance/ConfidenceBar.d.ts +118 -0
- package/dist/types/components/provenance/ConfidenceMeter.d.ts +21 -0
- package/dist/types/components/provenance/ConfidenceReadout.d.ts +17 -0
- package/dist/types/components/provenance/ProvenanceBadge.d.ts +23 -0
- package/dist/types/components/provenance/ProvenanceDetail.d.ts +109 -0
- package/dist/types/components/provenance/ProvenanceDisclosure.d.ts +107 -0
- package/dist/types/components/provenance/absence.d.ts +37 -0
- package/dist/types/components/provenance/index.d.ts +7 -0
- package/dist/types/components/provenance/types.d.ts +137 -0
- package/dist/types/components/rbac/AccessRequestPanel.d.ts +92 -0
- package/dist/types/components/rbac/AccountMenu.d.ts +46 -0
- package/dist/types/components/rbac/AgentKeysList.d.ts +20 -0
- package/dist/types/components/rbac/ApiKeysPanel.d.ts +26 -0
- package/dist/types/components/rbac/ApiKeysTable.d.ts +63 -0
- package/dist/types/components/rbac/Brand.d.ts +8 -0
- package/dist/types/components/rbac/Can.d.ts +19 -0
- package/dist/types/components/rbac/ChangePasswordForm.d.ts +18 -0
- package/dist/types/components/rbac/DangerZone.d.ts +8 -0
- package/dist/types/components/rbac/DevToolsPopover.d.ts +36 -0
- package/dist/types/components/rbac/EndedLine.d.ts +21 -0
- package/dist/types/components/rbac/InvitationsList.d.ts +39 -0
- package/dist/types/components/rbac/InviteMembersDialog.d.ts +21 -0
- package/dist/types/components/rbac/MembersPanel.d.ts +31 -0
- package/dist/types/components/rbac/PermissionRequestPanel.d.ts +36 -0
- package/dist/types/components/rbac/ProfileForm.d.ts +27 -0
- package/dist/types/components/rbac/ProfilePage.d.ts +16 -0
- package/dist/types/components/rbac/RBACProvider.d.ts +69 -0
- package/dist/types/components/rbac/RoleEditorDialog.d.ts +28 -0
- package/dist/types/components/rbac/RoleKeyPicker.d.ts +24 -0
- package/dist/types/components/rbac/RolePermissionMatrix.d.ts +21 -0
- package/dist/types/components/rbac/RolesPermissionsPage.d.ts +24 -0
- package/dist/types/components/rbac/SessionsList.d.ts +35 -0
- package/dist/types/components/rbac/TeamSettingsForm.d.ts +22 -0
- package/dist/types/components/rbac/TeamSwitcher.d.ts +5 -0
- package/dist/types/components/rbac/approvalPanelParts.d.ts +69 -0
- package/dist/types/components/rbac/index.d.ts +25 -0
- package/dist/types/components/rbac/permissionSections.d.ts +8 -0
- package/dist/types/components/rbac/stagedForm.d.ts +25 -0
- package/dist/types/components/rbac/types.d.ts +65 -0
- package/dist/types/components/rbac/useStagedImage.d.ts +15 -0
- package/dist/types/components/roadmap/PhaseManager.d.ts +19 -0
- package/dist/types/components/roadmap/RoadmapItemCard.d.ts +51 -0
- package/dist/types/components/roadmap/RoadmapPage.d.ts +12 -0
- package/dist/types/components/roadmap/RoadmapSwimlaneBoard.d.ts +15 -0
- package/dist/types/components/roadmap/TrackManager.d.ts +19 -0
- package/dist/types/components/roadmap/UseCaseCard.d.ts +30 -0
- package/dist/types/components/roadmap/UseCaseLedgerPage.d.ts +29 -0
- package/dist/types/components/roadmap/chip-tones.d.ts +2 -0
- package/dist/types/components/roadmap/derive.d.ts +39 -0
- package/dist/types/components/roadmap/index.d.ts +10 -0
- package/dist/types/components/roadmap/types.d.ts +86 -0
- package/dist/types/components/stepper/Stepper.d.ts +79 -0
- package/dist/types/components/stepper/derive.d.ts +49 -0
- package/dist/types/components/stepper/index.d.ts +3 -0
- package/dist/types/components/stepper/types.d.ts +118 -0
- package/dist/types/icons/data.d.ts +2054 -0
- package/dist/types/index.d.ts +209 -0
- package/dist/types/lib/attention.d.ts +62 -0
- package/dist/types/lib/board/anchor.d.ts +69 -0
- package/dist/types/lib/board/index.d.ts +17 -0
- package/dist/types/lib/board/model.d.ts +43 -0
- package/dist/types/lib/board/move.d.ts +181 -0
- package/dist/types/lib/board/position.d.ts +22 -0
- package/dist/types/lib/board/rejection.d.ts +8 -0
- package/dist/types/lib/board/types.d.ts +294 -0
- package/dist/types/lib/board/use-board.d.ts +47 -0
- package/dist/types/lib/calendar/band-packer.d.ts +53 -0
- package/dist/types/lib/calendar/drag.d.ts +125 -0
- package/dist/types/lib/calendar/index.d.ts +4 -0
- package/dist/types/lib/calendar/lane-packer.d.ts +88 -0
- package/dist/types/lib/calendar/segments.d.ts +91 -0
- package/dist/types/lib/calendar/types.d.ts +166 -0
- package/dist/types/lib/chart-palette.d.ts +14 -0
- package/dist/types/lib/clipboard.d.ts +12 -0
- package/dist/types/lib/cn.d.ts +7 -0
- package/dist/types/lib/color.d.ts +14 -0
- package/dist/types/lib/component-guidance.d.ts +15 -0
- package/dist/types/lib/confidence.d.ts +28 -0
- package/dist/types/lib/date-timeline/scale.d.ts +143 -0
- package/dist/types/lib/design-frame/document.d.ts +39 -0
- package/dist/types/lib/design-frame/mini-app-script.d.ts +29 -0
- package/dist/types/lib/design-frame/mini-app.d.ts +17 -0
- package/dist/types/lib/design-frame/protocol.d.ts +78 -0
- package/dist/types/lib/dev-warn.d.ts +10 -0
- package/dist/types/lib/dnd/announce.d.ts +124 -0
- package/dist/types/lib/dnd/autoscroll.d.ts +88 -0
- package/dist/types/lib/dnd/cross-drop.d.ts +18 -0
- package/dist/types/lib/dnd/geometry.d.ts +126 -0
- package/dist/types/lib/dnd/index.d.ts +17 -0
- package/dist/types/lib/dnd/sensors/gesture.d.ts +37 -0
- package/dist/types/lib/dnd/sensors/keyboard.d.ts +54 -0
- package/dist/types/lib/dnd/sensors/pointer.d.ts +59 -0
- package/dist/types/lib/dnd/session.d.ts +124 -0
- package/dist/types/lib/dnd/types.d.ts +226 -0
- package/dist/types/lib/dnd/use-drag.d.ts +82 -0
- package/dist/types/lib/dom/scroll-ancestor.d.ts +15 -0
- package/dist/types/lib/format.d.ts +33 -0
- package/dist/types/lib/group-in-order.d.ts +13 -0
- package/dist/types/lib/header-fold.d.ts +10 -0
- package/dist/types/lib/i18n/areas/auth-provenance-flows.d.ts +287 -0
- package/dist/types/lib/i18n/areas/board.d.ts +51 -0
- package/dist/types/lib/i18n/areas/card-face.d.ts +8 -0
- package/dist/types/lib/i18n/areas/chat-chart.d.ts +202 -0
- package/dist/types/lib/i18n/areas/code-editor.d.ts +40 -0
- package/dist/types/lib/i18n/areas/date-timeline.d.ts +36 -0
- package/dist/types/lib/i18n/areas/dates.d.ts +103 -0
- package/dist/types/lib/i18n/areas/docs-views.d.ts +297 -0
- package/dist/types/lib/i18n/areas/feedback.d.ts +132 -0
- package/dist/types/lib/i18n/areas/formats.d.ts +30 -0
- package/dist/types/lib/i18n/areas/forms.d.ts +182 -0
- package/dist/types/lib/i18n/areas/keys.d.ts +15 -0
- package/dist/types/lib/i18n/areas/markdown.d.ts +150 -0
- package/dist/types/lib/i18n/areas/move-rejected.d.ts +16 -0
- package/dist/types/lib/i18n/areas/navigation.d.ts +185 -0
- package/dist/types/lib/i18n/areas/rbac.d.ts +633 -0
- package/dist/types/lib/i18n/emphasis.d.ts +3 -0
- package/dist/types/lib/i18n/index.d.ts +10 -0
- package/dist/types/lib/i18n/number-format.d.ts +5 -0
- package/dist/types/lib/i18n/plural.d.ts +7 -0
- package/dist/types/lib/i18n/provider.d.ts +16 -0
- package/dist/types/lib/i18n/strings.d.ts +18 -0
- package/dist/types/lib/icons.d.ts +22 -0
- package/dist/types/lib/interactive-target.d.ts +3 -0
- package/dist/types/lib/intl-cache.d.ts +31 -0
- package/dist/types/lib/legal-document.d.ts +82 -0
- package/dist/types/lib/line-diff-model.d.ts +39 -0
- package/dist/types/lib/markdown/attachments.d.ts +50 -0
- package/dist/types/lib/markdown/caret-map.d.ts +69 -0
- package/dist/types/lib/markdown/caret.d.ts +6 -0
- package/dist/types/lib/markdown/commands.d.ts +186 -0
- package/dist/types/lib/markdown/convert.d.ts +99 -0
- package/dist/types/lib/markdown/dom.d.ts +30 -0
- package/dist/types/lib/markdown/edit.d.ts +16 -0
- package/dist/types/lib/markdown/history.d.ts +59 -0
- package/dist/types/lib/markdown/hotkeys.d.ts +63 -0
- package/dist/types/lib/markdown/image-pipeline.d.ts +173 -0
- package/dist/types/lib/markdown/images.d.ts +138 -0
- package/dist/types/lib/markdown/input.d.ts +38 -0
- package/dist/types/lib/markdown/keys.d.ts +34 -0
- package/dist/types/lib/markdown/paste.d.ts +9 -0
- package/dist/types/lib/markdown/position.d.ts +43 -0
- package/dist/types/lib/markdown/project.d.ts +88 -0
- package/dist/types/lib/markdown/reconcile.d.ts +63 -0
- package/dist/types/lib/markdown/surface.d.ts +236 -0
- package/dist/types/lib/motion.d.ts +30 -0
- package/dist/types/lib/pad.d.ts +6 -0
- package/dist/types/lib/paged-window/index.d.ts +2 -0
- package/dist/types/lib/paged-window/layout.d.ts +21 -0
- package/dist/types/lib/paged-window/list-owner.d.ts +12 -0
- package/dist/types/lib/paged-window/records-binding.d.ts +102 -0
- package/dist/types/lib/paged-window/store.d.ts +307 -0
- package/dist/types/lib/paged-window/use-measured-pitch.d.ts +34 -0
- package/dist/types/lib/paged-window/use-page-visibility.d.ts +20 -0
- package/dist/types/lib/paged-window/use-paged-window.d.ts +61 -0
- package/dist/types/lib/paged-window/use-scroll-root.d.ts +18 -0
- package/dist/types/lib/persist.d.ts +57 -0
- package/dist/types/lib/preference-values.d.ts +72 -0
- package/dist/types/lib/preferences.d.ts +26 -0
- package/dist/types/lib/reads/hooks.d.ts +49 -0
- package/dist/types/lib/reads/index.d.ts +5 -0
- package/dist/types/lib/reads/optimistic.d.ts +119 -0
- package/dist/types/lib/reads/refetch.d.ts +83 -0
- package/dist/types/lib/reads/slots.d.ts +137 -0
- package/dist/types/lib/reads/types.d.ts +155 -0
- package/dist/types/lib/realtime/hooks.d.ts +38 -0
- package/dist/types/lib/realtime/index.d.ts +4 -0
- package/dist/types/lib/realtime/provider.d.ts +38 -0
- package/dist/types/lib/realtime/registry.d.ts +225 -0
- package/dist/types/lib/realtime/types.d.ts +242 -0
- package/dist/types/lib/records/define-record-type.d.ts +29 -0
- package/dist/types/lib/records/hooks.d.ts +46 -0
- package/dist/types/lib/records/index.d.ts +5 -0
- package/dist/types/lib/records/store.d.ts +289 -0
- package/dist/types/lib/records/types.d.ts +195 -0
- package/dist/types/lib/records/wire.d.ts +96 -0
- package/dist/types/lib/reduced-motion-help.d.ts +23 -0
- package/dist/types/lib/scroll-caret.d.ts +6 -0
- package/dist/types/lib/sim/createSimStore.d.ts +18 -0
- package/dist/types/lib/sim/index.d.ts +5 -0
- package/dist/types/lib/sim/latency.d.ts +10 -0
- package/dist/types/lib/sim/registry.d.ts +14 -0
- package/dist/types/lib/sim/settings.d.ts +11 -0
- package/dist/types/lib/sim/types.d.ts +3 -0
- package/dist/types/lib/submit-shortcut.d.ts +24 -0
- package/dist/types/lib/syntax/index.d.ts +16 -0
- package/dist/types/lib/syntax/languages/bash.d.ts +1 -0
- package/dist/types/lib/syntax/languages/css.d.ts +1 -0
- package/dist/types/lib/syntax/languages/html.d.ts +17 -0
- package/dist/types/lib/syntax/languages/index.d.ts +33 -0
- package/dist/types/lib/syntax/languages/javascript.d.ts +22 -0
- package/dist/types/lib/syntax/languages/json.d.ts +1 -0
- package/dist/types/lib/syntax/languages/mongodb.d.ts +1 -0
- package/dist/types/lib/syntax/languages/plain.d.ts +9 -0
- package/dist/types/lib/syntax/languages/sql.d.ts +4 -0
- package/dist/types/lib/syntax/languages/vue.d.ts +1 -0
- package/dist/types/lib/syntax/languages/yaml.d.ts +1 -0
- package/dist/types/lib/syntax/markdown/frames.d.ts +145 -0
- package/dist/types/lib/syntax/markdown/grammar.d.ts +1 -0
- package/dist/types/lib/syntax/markdown/index.d.ts +5 -0
- package/dist/types/lib/syntax/markdown/inline.d.ts +21 -0
- package/dist/types/lib/syntax/markdown/parse.d.ts +15 -0
- package/dist/types/lib/syntax/markdown/refs.d.ts +47 -0
- package/dist/types/lib/syntax/markdown/render.d.ts +25 -0
- package/dist/types/lib/syntax/markdown/spans.d.ts +84 -0
- package/dist/types/lib/syntax/markdown/types.d.ts +108 -0
- package/dist/types/lib/syntax/registry.d.ts +37 -0
- package/dist/types/lib/syntax/tokenize.d.ts +17 -0
- package/dist/types/lib/syntax/types.d.ts +119 -0
- package/dist/types/lib/time/index.d.ts +4 -0
- package/dist/types/lib/time/instant.d.ts +2 -0
- package/dist/types/lib/time/plain.d.ts +61 -0
- package/dist/types/lib/time/relativeAge.d.ts +18 -0
- package/dist/types/lib/time/relativeClock.d.ts +8 -0
- package/dist/types/lib/time/types.d.ts +87 -0
- package/dist/types/lib/time/zone.d.ts +106 -0
- package/dist/types/lib/use-controllable.d.ts +14 -0
- package/dist/types/lib/use-fill-height.d.ts +26 -0
- package/dist/types/lib/use-hydrated.d.ts +8 -0
- package/dist/types/lib/use-media-query.d.ts +29 -0
- package/dist/types/lib/use-relabel-base-ui-dismiss.d.ts +6 -0
- package/dist/types/lib/use-release-snap-drag.d.ts +25 -0
- package/dist/types/lib/use-roving-options.d.ts +10 -0
- package/dist/types/lib/values/absent.d.ts +7 -0
- package/dist/types/lib/values/boolean.d.ts +29 -0
- package/dist/types/lib/values/currency.d.ts +22 -0
- package/dist/types/lib/values/date.d.ts +30 -0
- package/dist/types/lib/values/datetime.d.ts +48 -0
- package/dist/types/lib/values/index.d.ts +5 -0
- package/dist/types/lib/values/locale-date.d.ts +34 -0
- package/dist/types/lib/values/number.d.ts +27 -0
- package/dist/types/pure.d.ts +48 -0
- package/package.json +136 -4
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { ChatFile } from "../chat/types";
|
|
3
|
+
/** One already-rendered page image of a multi-page document. */
|
|
4
|
+
export interface ViewerPage {
|
|
5
|
+
/** Stable identity: the consumer's own id for the page, never an index. */
|
|
6
|
+
id: string;
|
|
7
|
+
/** The full-size rendered page image. */
|
|
8
|
+
url: string;
|
|
9
|
+
/** A smaller render for the rail. Falls back to `url`. */
|
|
10
|
+
thumbUrl?: string | null;
|
|
11
|
+
/** The number as printed in the document. Null or absent when none was recorded. */
|
|
12
|
+
number?: number | null;
|
|
13
|
+
/** Draw this page as one of the ones worth looking at (see `markLabel`). */
|
|
14
|
+
marked?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/** A file the viewer can show. Every ChatFile is a valid ViewerFile. */
|
|
17
|
+
export interface ViewerFile extends ChatFile {
|
|
18
|
+
/**
|
|
19
|
+
* Already-rendered page images, in document order. One or more entries make
|
|
20
|
+
* the file a paged document: one frame per page. Absent or empty: the file is
|
|
21
|
+
* ONE frame, shown by kind (image, video, anything else).
|
|
22
|
+
*/
|
|
23
|
+
pages?: ViewerPage[];
|
|
24
|
+
}
|
|
25
|
+
/** What is on the stage. Handed to every render slot and to `onFrameChange`. */
|
|
26
|
+
export interface ViewerFrame {
|
|
27
|
+
file: ViewerFile;
|
|
28
|
+
/** The page of `file` on the stage; null when `file` has no pages. */
|
|
29
|
+
page: ViewerPage | null;
|
|
30
|
+
/** Zero-based position among all frames. */
|
|
31
|
+
index: number;
|
|
32
|
+
/** How many frames there are. */
|
|
33
|
+
total: number;
|
|
34
|
+
}
|
|
35
|
+
export interface FileViewerProps {
|
|
36
|
+
open: boolean;
|
|
37
|
+
onOpenChange: (open: boolean) => void;
|
|
38
|
+
/** Every file the reader may step through, in order. */
|
|
39
|
+
files: ViewerFile[];
|
|
40
|
+
/**
|
|
41
|
+
* Where to open. Read each time `open` turns true, never afterwards: the
|
|
42
|
+
* frame whose page id is `initialPageId` (inside `initialFileId` when given),
|
|
43
|
+
* else the first marked frame (inside `initialFileId` when given), else the
|
|
44
|
+
* first frame (of `initialFileId` when given).
|
|
45
|
+
*/
|
|
46
|
+
initialFileId?: string | null;
|
|
47
|
+
initialPageId?: string | null;
|
|
48
|
+
/** Told when the frame on the stage changes. Observes; the viewer owns the position. */
|
|
49
|
+
onFrameChange?: (frame: ViewerFrame) => void;
|
|
50
|
+
/** The heading. Defaults to the current file's name. */
|
|
51
|
+
title?: ReactNode;
|
|
52
|
+
/** A quieter second line. Defaults to the current file's size, when known. */
|
|
53
|
+
subtitle?: ReactNode;
|
|
54
|
+
/** Offers Download for the current file. Omitted: no Download anywhere. */
|
|
55
|
+
onDownload?: (file: ViewerFile) => void;
|
|
56
|
+
/** What a mark means, as an adjective: "cited", "flagged". Default "marked". */
|
|
57
|
+
markLabel?: string;
|
|
58
|
+
/**
|
|
59
|
+
* The host's own header controls for the current frame. Mounted in exactly one
|
|
60
|
+
* place: inline from `lg` up, inside the overflow popover below it. A control
|
|
61
|
+
* with its own state therefore remounts, and starts over, when the layout
|
|
62
|
+
* crosses `lg` or the overflow popover closes: state a host needs to keep
|
|
63
|
+
* belongs above the viewer.
|
|
64
|
+
*/
|
|
65
|
+
headerActions?: (frame: ViewerFrame) => ReactNode;
|
|
66
|
+
/** A host panel floating over the stage for the current frame (gpt-manager's quote panel). */
|
|
67
|
+
overlay?: (frame: ViewerFrame) => ReactNode;
|
|
68
|
+
/** Replaces the built-in stage for a file without pages. Null or undefined keeps the built-in. */
|
|
69
|
+
renderBody?: (file: ViewerFile) => ReactNode;
|
|
70
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ViewerFile, ViewerFrame } from "./types";
|
|
2
|
+
export interface UseFrameCursorOptions {
|
|
3
|
+
open: boolean;
|
|
4
|
+
files: ViewerFile[];
|
|
5
|
+
initialFileId?: string | null;
|
|
6
|
+
initialPageId?: string | null;
|
|
7
|
+
onFrameChange?: (frame: ViewerFrame) => void;
|
|
8
|
+
}
|
|
9
|
+
export declare function useFrameCursor({ open, files, initialFileId, initialPageId, onFrameChange }: UseFrameCursorOptions): {
|
|
10
|
+
frames: ViewerFrame[];
|
|
11
|
+
frame: ViewerFrame | null;
|
|
12
|
+
go: (next: number) => void;
|
|
13
|
+
};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface ViewerKeyActions {
|
|
2
|
+
go: (index: number) => void;
|
|
3
|
+
index: number;
|
|
4
|
+
total: number;
|
|
5
|
+
/** Null when the frame is not zoomable: the zoom keys are then not handled. */
|
|
6
|
+
zoom: {
|
|
7
|
+
zoomIn: () => void;
|
|
8
|
+
zoomOut: () => void;
|
|
9
|
+
reset: () => void;
|
|
10
|
+
} | null;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The viewer's keyboard (DX-4398): Arrow, PageUp/PageDown, Home and End step
|
|
14
|
+
* frames; `+`, `-` and `0` zoom. Returns the callback ref for the Dialog popup.
|
|
15
|
+
*
|
|
16
|
+
* A NATIVE listener on the popup element, not a document one and not a React
|
|
17
|
+
* `onKeyDown`: Base UI's popup stops propagation of the arrow, Home, End and Page
|
|
18
|
+
* keys (they belong to composite widgets), so by the time a key reached
|
|
19
|
+
* `document` it was gone. On the popup itself it runs first. It only ever sees
|
|
20
|
+
* keys aimed at the viewer's own DOM: a key inside a portalled Popover (the
|
|
21
|
+
* overflow menu) has a target outside the popup, so it never gets here. Escape is
|
|
22
|
+
* not handled: it is the Dialog's.
|
|
23
|
+
*/
|
|
24
|
+
export declare function useViewerKeys(actions: ViewerKeyActions): import("react").Dispatch<import("react").SetStateAction<HTMLDivElement | null>>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type CameraState, type ScaleBounds, type Size } from "../graph-explorer/camera-math";
|
|
2
|
+
/** The zoom range of the viewer: far enough out to see a wide page whole, far
|
|
3
|
+
enough in to read a signature. */
|
|
4
|
+
export declare const VIEWER_ZOOM_BOUNDS: ScaleBounds;
|
|
5
|
+
export type ViewerFit = "width" | "contain";
|
|
6
|
+
export interface UseViewerZoomOptions {
|
|
7
|
+
/** Changing this is a different frame: refit. */
|
|
8
|
+
frameKey: string;
|
|
9
|
+
/** How the frame opens. Null: the frame is not zoomable (video, a plain file). */
|
|
10
|
+
fit: ViewerFit | null;
|
|
11
|
+
}
|
|
12
|
+
export declare function useViewerZoom({ frameKey, fit }: UseViewerZoomOptions): {
|
|
13
|
+
camera: CameraState;
|
|
14
|
+
/** Whole-number percent, null until the frame has been measured. */
|
|
15
|
+
percent: number | null;
|
|
16
|
+
measured: boolean;
|
|
17
|
+
atFit: boolean;
|
|
18
|
+
canToggle: boolean;
|
|
19
|
+
panning: boolean;
|
|
20
|
+
bindViewport: (node: HTMLElement | null) => (() => void) | undefined;
|
|
21
|
+
setContentSize: (next: Size) => void;
|
|
22
|
+
zoomIn: () => void;
|
|
23
|
+
zoomOut: () => void;
|
|
24
|
+
reset: () => void;
|
|
25
|
+
toggleActual: (point?: {
|
|
26
|
+
x: number;
|
|
27
|
+
y: number;
|
|
28
|
+
}) => void;
|
|
29
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { FocusWebProps } from "./types";
|
|
2
|
+
export type { FocusWebProps } from "./types";
|
|
3
|
+
export declare function FocusWeb<Extra = unknown>({ center, ring, parent, onSelect, onUp, selectedId, onSelectCenter, renderNode, label, className, }: FocusWebProps<Extra>): import("react").JSX.Element;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { FocusWeb } from "./FocusWeb";
|
|
2
|
+
export { CENTER_POSITION, PARENT_POSITION, WIDE_RING_THRESHOLD, layoutRing } from "./layout";
|
|
3
|
+
export type { PlacedRingNode } from "./layout";
|
|
4
|
+
export type { FocusNodeRenderContext, FocusNodeRenderer, FocusNodeRole, FocusWebNode, FocusWebNodeLook, FocusWebProps, } from "./types";
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/** Ids at or below this count get ONE ring; more get two concentric ones. */
|
|
2
|
+
export declare const WIDE_RING_THRESHOLD = 10;
|
|
3
|
+
/** Fixed corner slot for the "up" affordance, never part of the ring itself.
|
|
4
|
+
DX-3451: this is the slot's LEFT edge (the parent node is anchored by its
|
|
5
|
+
left side, not its centre — FocusWeb.tsx), so a long parent title grows
|
|
6
|
+
rightward into the plane instead of hanging off the left edge the way the
|
|
7
|
+
legacy page's centre-anchored `left: 7%` button did. */
|
|
8
|
+
export declare const PARENT_POSITION: {
|
|
9
|
+
leftPct: number;
|
|
10
|
+
topPct: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const CENTER_POSITION: {
|
|
13
|
+
leftPct: number;
|
|
14
|
+
topPct: number;
|
|
15
|
+
};
|
|
16
|
+
export interface PlacedRingNode {
|
|
17
|
+
id: string;
|
|
18
|
+
leftPct: number;
|
|
19
|
+
topPct: number;
|
|
20
|
+
/** Which concentric ring this sits on. `0` (outer) for every node while the
|
|
21
|
+
ring is at or below `WIDE_RING_THRESHOLD`. */
|
|
22
|
+
tier: 0 | 1;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Places `ids` (already in the caller's desired order — see `types.ts`'s
|
|
26
|
+
* module doc) evenly around the centre: one ring at or below `threshold`,
|
|
27
|
+
* otherwise the same even angles with the radius alternating outer/inner.
|
|
28
|
+
* Pure and total: an empty array places nothing, and the result is always
|
|
29
|
+
* the same length as `ids`, in the SAME order, so a caller can zip it back
|
|
30
|
+
* against its own node array by index without a lookup.
|
|
31
|
+
*/
|
|
32
|
+
export declare function layoutRing(ids: readonly string[], threshold?: number): PlacedRingNode[];
|
|
33
|
+
/** One slot's measured vertical box, for `labelOverhang`. `height` is the slot body's own layout height (disc plus
|
|
34
|
+
label), `disc` the disc's diameter: both in px, both read untransformed so a glide in flight cannot skew them. */
|
|
35
|
+
export interface SlotBox {
|
|
36
|
+
topPct: number;
|
|
37
|
+
height: number;
|
|
38
|
+
disc: number;
|
|
39
|
+
placement: "above" | "below" | "beside";
|
|
40
|
+
/** A caller's own body: centred whole on its point (see `slotTranslate` in FocusWeb.tsx). */
|
|
41
|
+
custom: boolean;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* DX-4219: how far the slots' boxes run above and below the plane's own `planeHeight`-px box. The plane is a fixed
|
|
45
|
+
* aspect ratio and the ring sits at fixed percentages of it, so a top node's label (it grows UP from its disc) or a
|
|
46
|
+
* bottom node's (it grows DOWN) leaves the plane by however many lines it wraps to — into whatever sits above or
|
|
47
|
+
* below the web. The component pads the web by exactly this, so every label sits inside the web's own area.
|
|
48
|
+
*
|
|
49
|
+
* The vertical placement mirrors `slotTranslate` in FocusWeb.tsx: that function is the one place the slot's
|
|
50
|
+
* `translate` is decided, and this is its arithmetic on measured sizes.
|
|
51
|
+
*/
|
|
52
|
+
export declare function labelOverhang(boxes: readonly SlotBox[], planeHeight: number): {
|
|
53
|
+
top: number;
|
|
54
|
+
bottom: number;
|
|
55
|
+
};
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { IconName } from "../Icon";
|
|
3
|
+
import type { CanvasNode } from "../node-canvas/types";
|
|
4
|
+
/**
|
|
5
|
+
* DX-3451: the two optional LOOK fields the default node body draws — an
|
|
6
|
+
* icon in the disc, and a colour identity. Both are optional because a
|
|
7
|
+
* consumer with a `renderNode` of its own never needs either.
|
|
8
|
+
*/
|
|
9
|
+
export interface FocusWebNodeLook {
|
|
10
|
+
/** Drawn inside the node's disc. Omitted → the label's first letter. */
|
|
11
|
+
icon?: IconName;
|
|
12
|
+
/**
|
|
13
|
+
* A key into the library's curated swatch palette (`EVENT_PALETTE` —
|
|
14
|
+
* `iris`, `aqua`, `mint`, `amber`, `rose`, `azure`, `orchid`, `slate`). Never a raw
|
|
15
|
+
* colour, for the same reason the calendar refuses one (`PaletteEntry`):
|
|
16
|
+
* every fill/text/edge pair in that palette is contrast-audited in both
|
|
17
|
+
* themes, and a caller-supplied hex is not. Omitted → the accent colour.
|
|
18
|
+
*/
|
|
19
|
+
paletteKey?: string;
|
|
20
|
+
/**
|
|
21
|
+
* DX-4041: a small marker drawn at the disc's top-right corner — a count, a
|
|
22
|
+
* change tag, an unread dot — typically a `Badge` (or a few stacked). It is
|
|
23
|
+
* decoration for the eye: the default body hides it from assistive tech, so
|
|
24
|
+
* say what it MEANS in `badgeLabel`. Ignored by a custom `renderNode`, which
|
|
25
|
+
* draws whatever it likes from the node's own fields.
|
|
26
|
+
*/
|
|
27
|
+
badge?: ReactNode;
|
|
28
|
+
/**
|
|
29
|
+
* What `badge` means, in words ("contains 2 added, 1 changed"). Appended to a
|
|
30
|
+
* clickable node's accessible name after its label, and read in place beside
|
|
31
|
+
* a plain (non-clickable) centre. Meaningless without `badge`.
|
|
32
|
+
*/
|
|
33
|
+
badgeLabel?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* One node FocusWeb draws — the centre, a ring member, or the "up" parent.
|
|
37
|
+
* Same `Extra`-carrying shape as `CanvasNode` everywhere else in this library:
|
|
38
|
+
* a consumer's own fields come back untouched through `renderNode`.
|
|
39
|
+
*/
|
|
40
|
+
export type FocusWebNode<Extra = unknown> = CanvasNode<Extra> & FocusWebNodeLook;
|
|
41
|
+
/** Which of the three roles a rendered node is playing this frame. */
|
|
42
|
+
export type FocusNodeRole = "center" | "ring" | "parent";
|
|
43
|
+
/**
|
|
44
|
+
* What `renderNode` is told about the node it is drawing — structural facts
|
|
45
|
+
* about the node's place in THIS frame's layout.
|
|
46
|
+
*/
|
|
47
|
+
export interface FocusNodeRenderContext {
|
|
48
|
+
role: FocusNodeRole;
|
|
49
|
+
/** 0-based position in `ring`, in the order the caller supplied. `null` for `center`/`parent`. */
|
|
50
|
+
index: number | null;
|
|
51
|
+
/** Which of the (possibly two) concentric rings this ring node sits on — see `layoutRing`. `null` off the ring. */
|
|
52
|
+
tier: 0 | 1 | null;
|
|
53
|
+
/** This ring node currently carries the roving tab stop. Always `false` for `center`/`parent`. */
|
|
54
|
+
isTabStop: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* DX-3451: the pointer is over this node, or it has keyboard focus — the
|
|
57
|
+
* state the default body lights up in its own colour, and the state its
|
|
58
|
+
* spoke highlights for. Always `false` for `center`.
|
|
59
|
+
*/
|
|
60
|
+
active: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* DX-3451: this ring node is the caller's `selectedId` — lit in its own
|
|
63
|
+
* colour with a pill label, the way the legacy docs page showed a selected
|
|
64
|
+
* leaf beside its siblings. Always `false` off the ring.
|
|
65
|
+
*/
|
|
66
|
+
selected: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* DX-3451: where this node's label goes relative to its disc. A ring node
|
|
69
|
+
* in the upper half of the web puts its label ABOVE the disc, so the spoke
|
|
70
|
+
* arriving from the centre below never runs through the text; everything
|
|
71
|
+
* else puts it below, and the parent beside it. The default body follows
|
|
72
|
+
* this; a custom body should too.
|
|
73
|
+
*/
|
|
74
|
+
labelPlacement: "below" | "above" | "beside";
|
|
75
|
+
/**
|
|
76
|
+
* The viewport is narrow enough (< 640px) that FocusWeb has switched to its
|
|
77
|
+
* compact layout (a taller plane and smaller bodies — "works at 375px").
|
|
78
|
+
*/
|
|
79
|
+
compact: boolean;
|
|
80
|
+
}
|
|
81
|
+
export type FocusNodeRenderer<Extra = unknown> = (node: FocusWebNode<Extra>, context: FocusNodeRenderContext) => ReactNode;
|
|
82
|
+
export interface FocusWebProps<Extra = unknown> {
|
|
83
|
+
/** The node currently centred. Controlled — FocusWeb never picks its own centre.
|
|
84
|
+
Every id across `center`, `parent` and `ring` must be unique; FocusWeb
|
|
85
|
+
throws on a repeat (see FocusWeb.tsx's module doc). */
|
|
86
|
+
center: FocusWebNode<Extra>;
|
|
87
|
+
/**
|
|
88
|
+
* The centre's one-hop neighbours, already in the exact order to draw.
|
|
89
|
+
* FocusWeb does not sort, dedupe or reorder this — see the module doc.
|
|
90
|
+
*/
|
|
91
|
+
ring: readonly FocusWebNode<Extra>[];
|
|
92
|
+
/** The "up" affordance's target. `null`/`undefined` at the root — no parent, no up button. */
|
|
93
|
+
parent?: FocusWebNode<Extra> | null;
|
|
94
|
+
/**
|
|
95
|
+
* Fired when a ring node is activated (click, or Enter/Space while it
|
|
96
|
+
* carries the roving tab stop). FocusWeb does not recentre itself — the
|
|
97
|
+
* caller responds by changing `center`/`ring`/`parent`, which is what makes
|
|
98
|
+
* the nodes glide.
|
|
99
|
+
*/
|
|
100
|
+
onSelect: (id: string) => void;
|
|
101
|
+
/** Fired when the "up" affordance is activated. Ignored while `parent` is absent. */
|
|
102
|
+
onUp?: () => void;
|
|
103
|
+
/**
|
|
104
|
+
* DX-3451: one ring node to show as SELECTED without recentring on it —
|
|
105
|
+
* for a leaf (a node with no children of its own), where recentring would
|
|
106
|
+
* leave a lone node in an empty web. The legacy docs page did exactly this:
|
|
107
|
+
* clicking a leaf lit it in place among its siblings, and the page below
|
|
108
|
+
* switched to it. An id not in `ring` is ignored.
|
|
109
|
+
*/
|
|
110
|
+
selectedId?: string | null;
|
|
111
|
+
/**
|
|
112
|
+
* DX-3451: makes the centre itself clickable. Given only when clicking the
|
|
113
|
+
* centre has something to do — typically, while `selectedId` is set, to go
|
|
114
|
+
* back from the selected leaf to the centre's own page. Omitted, the centre
|
|
115
|
+
* is a plain labelled region, not a button that does nothing.
|
|
116
|
+
*/
|
|
117
|
+
onSelectCenter?: () => void;
|
|
118
|
+
/**
|
|
119
|
+
* Custom node body. Omit for the built-in disc-and-label body (which reads
|
|
120
|
+
* `icon`/`paletteKey`). A custom body is drawn inside the same positioned,
|
|
121
|
+
* animated slot, so it glides and fans out exactly like the default one —
|
|
122
|
+
* but it lays ITSELF out (the slot is an unstyled box), should follow
|
|
123
|
+
* `labelPlacement`, and is centred on the node's point as a whole (the
|
|
124
|
+
* default body is anchored by its disc instead, because only its disc
|
|
125
|
+
* size is known).
|
|
126
|
+
*/
|
|
127
|
+
renderNode?: FocusNodeRenderer<Extra>;
|
|
128
|
+
/** Accessible name for the whole widget (an `aria-label`, `role="group"`). */
|
|
129
|
+
label: string;
|
|
130
|
+
className?: string;
|
|
131
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { CanvasNode } from "../node-canvas/types";
|
|
2
|
+
import type { CrossLink, ExplorerNodeRenderer, ExplorerTree, GraphExplorerVariant } from "./types";
|
|
3
|
+
export interface GraphExplorerProps<Extra = unknown> {
|
|
4
|
+
tree: ExplorerTree<Extra>;
|
|
5
|
+
/** Secondary relationships drawn over the fixed layout. Never affects positions. */
|
|
6
|
+
crossLinks?: readonly CrossLink[];
|
|
7
|
+
/** The accessible name of the whole structure. Required — see `NodeCanvasProps.label`. */
|
|
8
|
+
label: string;
|
|
9
|
+
/** The node body. Defaults to the label, wrapped, never truncated. */
|
|
10
|
+
renderNode?: ExplorerNodeRenderer<Extra>;
|
|
11
|
+
/** @default "explorer" */
|
|
12
|
+
variant?: GraphExplorerVariant;
|
|
13
|
+
/** Which node the camera centres on, with a "you are here" highlight. Controlled. */
|
|
14
|
+
focusId?: string | null;
|
|
15
|
+
/** Initial `focusId` for uncontrolled use. */
|
|
16
|
+
defaultFocusId?: string | null;
|
|
17
|
+
/** Fired when the controlled `focusId` would change — a node click, or `flyTo` via the keyboard. Never fired with `null`: nothing in this component ever clears focus, only moves it. */
|
|
18
|
+
onFocusIdChange?: (id: string) => void;
|
|
19
|
+
/** Nodes styled as already seen. */
|
|
20
|
+
visitedIds?: ReadonlySet<string> | readonly string[];
|
|
21
|
+
/** Fired when an ordinary node is clicked or activated by keyboard. */
|
|
22
|
+
onNodeClick?: (node: CanvasNode<Extra>) => void;
|
|
23
|
+
/** `variant="minimap"` only: the expand affordance's handler. Defaults to an in-place full-screen dialog. */
|
|
24
|
+
onExpand?: () => void;
|
|
25
|
+
/** Cross-axis extent of a node that does not need more, in px — the rank's OWN axis (ranks spread along y, DX-3401's vertical default) unless `orientation` is overridden. @default LAYOUT_DEFAULTS.nodeWidth */
|
|
26
|
+
nodeWidth?: number;
|
|
27
|
+
/** Along-axis extent BEFORE a taller node's own content grows it — the axis ranks advance along. @default LAYOUT_DEFAULTS.nodeHeight */
|
|
28
|
+
nodeHeight?: number;
|
|
29
|
+
/** Floor on the automatic frame-fit's scale (mount / focus change, both
|
|
30
|
+
`variant`s) — below this, the camera holds the floor and centres on the
|
|
31
|
+
focused node instead of shrinking the whole frame to fit; `fitAll`
|
|
32
|
+
stays unaffected (DX-3404). See `MIN_READABLE_TITLE_SCALE`'s own
|
|
33
|
+
comment for the derivation; override when `renderNode` uses a
|
|
34
|
+
different title font size. @default MIN_READABLE_TITLE_SCALE */
|
|
35
|
+
minReadableScale?: number;
|
|
36
|
+
/** `variant="explorer"` only: height of the viewport. @default "32rem" */
|
|
37
|
+
height?: string;
|
|
38
|
+
/** Nothing pans, zooms or clicks. Reading is unaffected. */
|
|
39
|
+
disabled?: boolean;
|
|
40
|
+
className?: string;
|
|
41
|
+
}
|
|
42
|
+
export declare function GraphExplorer<Extra = unknown>({ tree, crossLinks, label, renderNode, variant, focusId: controlledFocusId, defaultFocusId, onFocusIdChange, visitedIds, onNodeClick, onExpand, nodeWidth, nodeHeight, height, minReadableScale, disabled, className, }: GraphExplorerProps<Extra>): import("react").JSX.Element;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
export interface Point {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
export interface Box {
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
width: number;
|
|
9
|
+
height: number;
|
|
10
|
+
}
|
|
11
|
+
export interface Size {
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
14
|
+
}
|
|
15
|
+
export interface CameraState {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
scale: number;
|
|
19
|
+
}
|
|
20
|
+
export interface ScaleBounds {
|
|
21
|
+
minScale?: number;
|
|
22
|
+
maxScale?: number;
|
|
23
|
+
}
|
|
24
|
+
export declare const CAMERA_DEFAULTS: {
|
|
25
|
+
readonly minScale: 0.15;
|
|
26
|
+
readonly maxScale: 3;
|
|
27
|
+
readonly fitMaxScale: 1;
|
|
28
|
+
readonly fitPadding: 64;
|
|
29
|
+
};
|
|
30
|
+
export declare function clampScale(scale: number, bounds?: ScaleBounds): number;
|
|
31
|
+
/** Screen point → the content point currently sitting under it. */
|
|
32
|
+
export declare function toContentPoint(camera: CameraState, screenPoint: Point): Point;
|
|
33
|
+
/** Content point → where it currently sits on screen. */
|
|
34
|
+
export declare function toScreenPoint(camera: CameraState, contentPoint: Point): Point;
|
|
35
|
+
/**
|
|
36
|
+
* Zoom by `factor`, holding `screenPoint` fixed over the same content point it
|
|
37
|
+
* covered before — the standard "zoom toward the cursor" behaviour a wheel or
|
|
38
|
+
* a pinch both want. `factor` > 1 zooms in.
|
|
39
|
+
*/
|
|
40
|
+
export declare function zoomAtPoint(camera: CameraState, screenPoint: Point, factor: number, bounds?: ScaleBounds): CameraState;
|
|
41
|
+
/** A camera that puts `target`'s centre in the middle of `viewport`, at `scale`. */
|
|
42
|
+
export declare function centerOn(target: Box | Point, viewport: Size, scale: number): CameraState;
|
|
43
|
+
export interface FitOptions extends ScaleBounds {
|
|
44
|
+
/** @default CAMERA_DEFAULTS.fitPadding */
|
|
45
|
+
padding?: number;
|
|
46
|
+
/** @default CAMERA_DEFAULTS.fitMaxScale — never zoom IN past this to fit a small box. */
|
|
47
|
+
maxScale?: number;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The smallest box containing every one of `boxes` — how a camera "frame"
|
|
51
|
+
* (e.g. a focused node plus its parent and children, DX-3401) is built from
|
|
52
|
+
* several already-placed boxes without re-deriving a bounding-box formula at
|
|
53
|
+
* every call site. `null` for an empty list — nothing to union.
|
|
54
|
+
*/
|
|
55
|
+
export declare function unionBox(boxes: readonly Box[]): Box | null;
|
|
56
|
+
/** A camera that fits the whole of `box` inside `viewport`, centred, padded. */
|
|
57
|
+
export declare function fitBox(box: Box, viewport: Size, options?: FitOptions): CameraState;
|
|
58
|
+
/**
|
|
59
|
+
* A camera that makes `content` exactly as wide as `viewport` and starts at its
|
|
60
|
+
* top (DX-4398) — how a document page is read: the width fits, the length
|
|
61
|
+
* scrolls, and the top is where a page starts. Horizontally centred, which only
|
|
62
|
+
* shows once `bounds` clamp the page narrower than the viewport. Never an
|
|
63
|
+
* unbounded scale: a 10px-wide page stops at `maxScale`, a 100000px-wide one at
|
|
64
|
+
* `minScale`. Zero-size content (an image not measured yet) is a finite 100%
|
|
65
|
+
* camera at the origin, never NaN.
|
|
66
|
+
*/
|
|
67
|
+
export declare function fitWidth(content: Size, viewport: Size, bounds?: ScaleBounds): CameraState;
|
|
68
|
+
/**
|
|
69
|
+
* Which viewport edges have `box`'s content extending past them at `camera`'s
|
|
70
|
+
* current position/scale — the input `fitBoxWithFloor` (below) needs to
|
|
71
|
+
* report an overflow cue, factored out because a caller re-deriving it from
|
|
72
|
+
* raw camera state would be a second, easily-drifting copy of this same
|
|
73
|
+
* arithmetic (DX-3404). A small epsilon absorbs floating-point noise at an
|
|
74
|
+
* edge that lands (by construction) exactly on the viewport boundary.
|
|
75
|
+
*/
|
|
76
|
+
export interface FrameOverflow {
|
|
77
|
+
left: boolean;
|
|
78
|
+
right: boolean;
|
|
79
|
+
top: boolean;
|
|
80
|
+
bottom: boolean;
|
|
81
|
+
}
|
|
82
|
+
export interface FitWithFloorOptions extends FitOptions {
|
|
83
|
+
/**
|
|
84
|
+
* A SECOND, stricter lower bound on top of `minScale`/`fitBounds` (DX-3404)
|
|
85
|
+
* — readability-driven ("titles at least ~13px on screen"), not
|
|
86
|
+
* graph-legibility-driven the way `CAMERA_DEFAULTS.minScale` (0.15) is.
|
|
87
|
+
* `undefined` (the default) makes this behave exactly like `fitBox` — the
|
|
88
|
+
* floor is opt-in per call site, so `fitAll` (which never passes it) stays
|
|
89
|
+
* a manual control that may zoom out past readable text on purpose.
|
|
90
|
+
* When the ordinary fit-to-`box` scale would land BELOW this floor, the
|
|
91
|
+
* camera clamps to the floor and centres on `focusBox` instead of `box` —
|
|
92
|
+
* showing the focused target at a readable size and reaching the rest of
|
|
93
|
+
* `box` by panning, rather than shrinking everything to fit.
|
|
94
|
+
*/
|
|
95
|
+
minReadableScale?: number;
|
|
96
|
+
/**
|
|
97
|
+
* What to centre on once `minReadableScale` clamps the scale — normally
|
|
98
|
+
* the focused node's own (small) box, not the whole (wide) `box` being
|
|
99
|
+
* framed. Defaults to `box` itself (so an omitted `focusBox` degrades to
|
|
100
|
+
* "clamp the scale but still centre the frame", never a crash).
|
|
101
|
+
*/
|
|
102
|
+
focusBox?: Box;
|
|
103
|
+
}
|
|
104
|
+
export interface FitWithFloorResult {
|
|
105
|
+
camera: CameraState;
|
|
106
|
+
/** Which sides of `box` extend past the viewport at the returned camera's
|
|
107
|
+
scale/position — all `false` whenever the floor didn't clamp, since an
|
|
108
|
+
ordinary `fitBox` result always contains the whole of `box` by
|
|
109
|
+
construction. */
|
|
110
|
+
overflow: FrameOverflow;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* `fitBox`, with an optional readable-text floor (DX-3404) — see
|
|
114
|
+
* `FitWithFloorOptions.minReadableScale`'s own doc for the behaviour. Used
|
|
115
|
+
* ONLY by `use-camera.ts`'s automatic frame-fit effect; `fitAll` keeps
|
|
116
|
+
* calling `fitBox` directly so the manual "fit everything" control is never
|
|
117
|
+
* affected by this floor (AC #2).
|
|
118
|
+
*/
|
|
119
|
+
export declare function fitBoxWithFloor(box: Box, viewport: Size, options?: FitWithFloorOptions): FitWithFloorResult;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { GraphExplorer, type GraphExplorerProps } from "./GraphExplorer";
|
|
2
|
+
export { frameBoxFor, layoutExplorerTree, neighbourhoodTree, edgePath } from "./tree-layout";
|
|
3
|
+
export { CAMERA_DEFAULTS, centerOn, clampScale, fitBox, fitBoxWithFloor, fitWidth, toContentPoint, toScreenPoint, unionBox, zoomAtPoint, } from "./camera-math";
|
|
4
|
+
export type { Box, CameraState, FitOptions, FitWithFloorOptions, FitWithFloorResult, FrameOverflow, Point, ScaleBounds, Size, } from "./camera-math";
|
|
5
|
+
export type { CrossLink, ExplorerLayout, ExplorerNodeRenderContext, ExplorerNodeRenderer, ExplorerTree, GraphExplorerVariant, TreeNode, } from "./types";
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { edgePath } from "../node-canvas/layout";
|
|
2
|
+
import type { LayoutOptions } from "../node-canvas/types";
|
|
3
|
+
import { type Box } from "./camera-math";
|
|
4
|
+
import type { CrossLink, ExplorerLayout, ExplorerTree } from "./types";
|
|
5
|
+
/** Re-exported for a consumer drawing `edges`/`crossLinks` into an SVG. */
|
|
6
|
+
export { edgePath };
|
|
7
|
+
/**
|
|
8
|
+
* Lay out a tree, top to bottom, from a parent backbone alone. Ranked
|
|
9
|
+
* vertically (dagre `rankdir: "TB"`) so SIBLINGS spread horizontally within a
|
|
10
|
+
* rank — the sprawl DX-3401's card asks for. A tree this shallow-but-wide (a
|
|
11
|
+
* handful of levels, many children per level) stacked its siblings into one
|
|
12
|
+
* tall column under the previous `"horizontal"` (`LR`) default, which is
|
|
13
|
+
* exactly backwards for that shape: `"horizontal"` ranks left to right, so
|
|
14
|
+
* within-rank siblings stack along the CROSS axis (vertically) instead.
|
|
15
|
+
* `options.orientation` still overrides this default for a caller with the
|
|
16
|
+
* opposite shape (deep and narrow).
|
|
17
|
+
*
|
|
18
|
+
* `crossLinks` are resolved against the ALREADY-FIXED node positions and
|
|
19
|
+
* returned separately (`ExplorerLayout.crossLinks`) — they never reach
|
|
20
|
+
* `layoutGraph`, so they can never move a node and can never close a cycle
|
|
21
|
+
* for the layout engine to condense. A cross-link naming an id not in the
|
|
22
|
+
* tree, or naming a node as linked to itself, draws nothing — the same
|
|
23
|
+
* "dangling edge draws nothing" rule `node-canvas/layout.ts#resolveScope`
|
|
24
|
+
* uses for a group boundary.
|
|
25
|
+
*/
|
|
26
|
+
export declare function layoutExplorerTree<Extra>(tree: ExplorerTree<Extra>, crossLinks?: readonly CrossLink[], options?: LayoutOptions): ExplorerLayout<Extra>;
|
|
27
|
+
/**
|
|
28
|
+
* The box a camera should keep in frame around `focusId`: the focused node
|
|
29
|
+
* itself and every one of its direct children (one rank down), with the
|
|
30
|
+
* frame's vertical extent alone stretched to reach its parent's rank (one
|
|
31
|
+
* rank up) — "the minimap always frames the current node, its parent and its
|
|
32
|
+
* children" (DX-3401's fix for the minimap shrinking an entire tree to
|
|
33
|
+
* specks, and for the full-screen explorer's initial view not opening
|
|
34
|
+
* focused). Computed from an ALREADY-LAID-OUT tree, so it can never disagree
|
|
35
|
+
* with what is actually on screen the way fitting a separately-computed
|
|
36
|
+
* bounding box could. `null` when `focusId` isn't laid out at all — nothing
|
|
37
|
+
* to frame (a stale id, or data still loading).
|
|
38
|
+
*
|
|
39
|
+
* THE PARENT'S X/WIDTH ARE DELIBERATELY NEVER UNIONED IN (DX-3401 follow-up).
|
|
40
|
+
* An earlier version unioned the parent's whole box in, same as a child's.
|
|
41
|
+
* dagre centres a parent horizontally over the barycenter of ALL its
|
|
42
|
+
* children, not just the focused one — so a parent with many other children
|
|
43
|
+
* spread wide (exactly the "one system, ~15 areas" shape this card exists to
|
|
44
|
+
* fix) can sit far to one side of the union of `focus` + its own children.
|
|
45
|
+
* Pulling that parent's x/width into the frame then stretches it to cover the
|
|
46
|
+
* real horizontal gap between the parent and this one child, reproducing a
|
|
47
|
+
* milder version of the original "whole tree crushed to a strip" bug for
|
|
48
|
+
* this specific shape (confirmed live against the Ringlet demo: a `frameBox`
|
|
49
|
+
* nearly as wide as the entire tree's `contentBox`). Only the parent's Y
|
|
50
|
+
* range is folded in, so the frame reaches up far enough for the connecting
|
|
51
|
+
* edge into the parent to be visible — a parent off to the side is reached by
|
|
52
|
+
* panning, the same trade-off this function already makes for siblings
|
|
53
|
+
* (drawn by `neighbourhoodTree` but never pulled into the frame's own box).
|
|
54
|
+
*/
|
|
55
|
+
export declare function frameBoxFor<Extra>(layout: ExplorerLayout<Extra>, focusId: string): Box | null;
|
|
56
|
+
/**
|
|
57
|
+
* The subtree a minimap draws: `focusId`'s ancestor chain up to its root,
|
|
58
|
+
* `focusId`'s immediate siblings, and `focusId`'s immediate children — "the
|
|
59
|
+
* focused node's ancestors, siblings and children" the card asks for, kept
|
|
60
|
+
* small enough to read at the minimap's compact size. `focusId` itself is
|
|
61
|
+
* always included. Parent links are REWRITTEN to stay inside this subset: the
|
|
62
|
+
* topmost ancestor kept becomes a root (`parentId: null`) here even if its
|
|
63
|
+
* real parent exists outside the shown set, so `layoutExplorerTree` never
|
|
64
|
+
* sees a dangling parent reference. Returns `null` when `focusId` is not in
|
|
65
|
+
* `tree` at all — nothing sensible to show.
|
|
66
|
+
*/
|
|
67
|
+
export declare function neighbourhoodTree<Extra>(tree: ExplorerTree<Extra>, focusId: string): ExplorerTree<Extra> | null;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { CanvasEdge, CanvasNode, CanvasPlacedEdge, LayoutOptions, PlacedNode } from "../node-canvas/types";
|
|
3
|
+
/**
|
|
4
|
+
* One node of the tree. Same `Extra`-carrying shape as `CanvasNode` — a
|
|
5
|
+
* consumer's own fields come back untouched through `renderNode` — plus the
|
|
6
|
+
* one thing a tree node has that a general graph node does not: its parent.
|
|
7
|
+
*/
|
|
8
|
+
export type TreeNode<Extra = unknown> = CanvasNode<Extra> & {
|
|
9
|
+
/** The node this one hangs from. `null` for a root — a tree may have more than one. */
|
|
10
|
+
parentId: string | null;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* A secondary relationship drawn OVER the fixed tree layout — never fed to
|
|
14
|
+
* the layout engine, so it can never move a node and can never close a cycle
|
|
15
|
+
* for dagre to condense. `kind` carries no meaning the library assigns, same
|
|
16
|
+
* rule as `CanvasEdge.kind`.
|
|
17
|
+
*/
|
|
18
|
+
export interface CrossLink {
|
|
19
|
+
from: string;
|
|
20
|
+
to: string;
|
|
21
|
+
kind?: string;
|
|
22
|
+
}
|
|
23
|
+
/** The whole tree. Never mutated by the component. */
|
|
24
|
+
export interface ExplorerTree<Extra = unknown> {
|
|
25
|
+
nodes: readonly TreeNode<Extra>[];
|
|
26
|
+
}
|
|
27
|
+
/** What `layoutExplorerTree` hands back: the fixed layout, ready to draw. */
|
|
28
|
+
export interface ExplorerLayout<Extra = unknown> {
|
|
29
|
+
nodes: PlacedNode<Extra>[];
|
|
30
|
+
/** The parent → child backbone, drawn as the primary edges. */
|
|
31
|
+
edges: CanvasPlacedEdge[];
|
|
32
|
+
/** `CrossLink`s resolved to drawn curves. Never affects `nodes`' positions. */
|
|
33
|
+
crossLinks: CanvasPlacedEdge[];
|
|
34
|
+
/** Extent of the laid-out tree — the plane the camera's `fitAll` fits to. */
|
|
35
|
+
width: number;
|
|
36
|
+
height: number;
|
|
37
|
+
}
|
|
38
|
+
export type { CanvasEdge, CanvasNode, LayoutOptions, PlacedNode, CanvasPlacedEdge };
|
|
39
|
+
/** Which surface this render is: the full pannable explorer, or the compact strip. */
|
|
40
|
+
export type GraphExplorerVariant = "explorer" | "minimap";
|
|
41
|
+
/**
|
|
42
|
+
* What `renderNode` is told about the node it is drawing — the explorer's own
|
|
43
|
+
* facts (camera focus, visited, hover neighbourhood), analogous to
|
|
44
|
+
* `NodeRenderContext` in `node-canvas/types.ts` but keyed on the camera's
|
|
45
|
+
* `focusId` rather than a drilled-into scope.
|
|
46
|
+
*/
|
|
47
|
+
export interface ExplorerNodeRenderContext {
|
|
48
|
+
/** This node carries the canvas's single roving tab stop. */
|
|
49
|
+
isTabStop: boolean;
|
|
50
|
+
/** This IS the controlled `focusId` — the "you are here" node. */
|
|
51
|
+
isFocused: boolean;
|
|
52
|
+
/** In the caller-supplied `visitedIds`. */
|
|
53
|
+
isVisited: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Hops from whichever node is currently the reference point — the hovered
|
|
56
|
+
* node while one is hovered, else the focused node — along either edge
|
|
57
|
+
* direction (backbone or cross-link). `null` when nothing is being
|
|
58
|
+
* referenced, or this node is further away than the explorer tracks.
|
|
59
|
+
*/
|
|
60
|
+
distance: number | null;
|
|
61
|
+
}
|
|
62
|
+
export type ExplorerNodeRenderer<Extra = unknown> = (node: CanvasNode<Extra>, context: ExplorerNodeRenderContext) => ReactNode;
|