@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 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../../src/components/board/context.ts"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport type {\n BoardColumnId,\n BoardColumnModel,\n BoardItemId,\n BoardMoveRequest,\n BoardMoveOutcome,\n BoardReorderLabels,\n} from \"../../lib/board\";\nimport type { CrossDrop } from \"../../lib/dnd\";\n\n/* ----------------------------------------------------------------------------\n Shared state for `Board`'s parts — the same three-context, three-throwing-\n hook shape `components/drag-drop/context.ts` uses, for the identical reason\n stated there: the nesting is real (a board owns the funnel and the full\n column list, a column owns which column its cards report as home, a card\n owns the identity a menu action moves), and flattening it would let a\n column's cards read a SIBLING column's identity, which is precisely the\n mistake that sends a card to the wrong place with no error anywhere.\n\n THE THROW IS THE POINT, same as the sibling file. A `BoardCard` rendered\n outside a `BoardColumn` would otherwise read `undefined.columnId` and\n either crash somewhere unrelated or, worse, silently move against a\n `columnId` of `undefined` — which `resolveMove` would reject, but only at\n the moment a human tries to move the card, not at the moment the mistake\n was made.\n\n ONE CAST, AND IT DOES NOT EXIST IN THE SIBLING FILE. `DragDropContextValue`\n carries no data shaped by the consumer's item type, so it needs no generic\n parameter. `BoardContextValue` DOES — `columns` is `BoardColumnModel<T>[]`,\n because the \"Move to…\" menu (`Board.tsx`) needs every OTHER column's live\n `count` to compute an append index, and that can only come from the same\n model `useBoard` already built. React context values cannot carry a type\n parameter without an indirection, so the context itself is declared over\n `unknown` and `useBoardContext<T>()` casts on the way out. This is sound\n exactly because a `<Board<T>>` and everything it provides context to sit in\n ONE render tree sharing the SAME `T` — the cast never crosses a tree\n boundary the way an `any` reaching across modules could.\n -------------------------------------------------------------------------- */\n\n/* ----------------------------------------------------------------------------\n IS THE WHOLE CARD THE DRAG SOURCE?\n\n Set by `BoardCardSurface` around whatever the consumer renders inside it,\n and read by the handle cluster — which sits inside that same subtree,\n because the consumer places it there. That ordering is what makes a context\n work where a ref would not: both are rendered in the same pass, and a ref\n written during one child's render is not readable by a sibling's.\n\n Default `false`, so a card with no surface behaves exactly as it always\n has. The only thing this changes is whether the cluster still draws a grip:\n with the whole card draggable a grip is a SECOND drag source for the same\n card, which is redundant to look at and ambiguous to explain. The pointer\n alternative the grip sits next to is untouched — that is the menu, it is\n what WCAG 2.2 SC 2.5.7 actually requires, and it is never conditional.\n -------------------------------------------------------------------------- */\nexport const BoardCardSurfaceContext = createContext(false);\n\n/** `true` when an ancestor `BoardCardSurface` makes this whole card draggable. */\nexport function useBoardCardIsDragSource(): boolean {\n return useContext(BoardCardSurfaceContext);\n}\n\nexport interface BoardContextValue<T> {\n /** Every declared column, in order, as `useBoard` last computed it. The\n * \"Move to…\" menu reads `id` / `label` / `count` off this to offer every\n * OTHER column as a destination and to compute an append index. */\n columns: readonly BoardColumnModel<T>[];\n /**\n * The single funnel — see `lib/board/use-board.ts`. Every input source\n * (drag, keyboard, the menu) calls exactly THIS and nothing else.\n *\n * This is `Board.tsx`'s own wrapper around `useBoard`'s `requestMove`, not\n * the raw hook result — it ALSO surfaces a rejected verdict's reason (see\n * `types.ts`'s own doc on `BoardMoveVerdict`: \"written for a person to\n * read, not logged\") before returning it. Routing that through the same\n * function every caller already has to call — rather than a second\n * `reportRejection` a caller could forget — is what makes \"a rejected move\n * never fails silently\" true of every source by construction, not by\n * convention.\n */\n requestMove: (request: BoardMoveRequest) => BoardMoveOutcome;\n /** The words for the card menu's within-column items (`Board`'s `reorderLabels`). */\n reorderLabels: BoardReorderLabels;\n /** What a card dropped on another lane means — `Board`'s `crossLaneDrop`. */\n crossLaneDrop: CrossDrop;\n}\n\nexport interface BoardColumnContextValue {\n columnId: BoardColumnId;\n label: string;\n}\n\nexport interface BoardCardContextValue {\n itemId: BoardItemId;\n /** Position within ITS OWN column right now — the `from.index` half of any\n * move this card's handle constructs. */\n index: number;\n label: string | undefined;\n /**\n * Called by the card's move control on mount, returning its own cleanup.\n *\n * WHY A REGISTRATION RATHER THAN TRUST. `BoardCard` hands its control out\n * through a render prop, which is what keeps card layout entirely\n * consumer-owned — but a render prop can be received and never placed, and\n * the thing that would go missing is the WCAG 2.2 SC 2.5.7 pointer\n * alternative: the one control a touchscreen user with no keyboard has. That\n * failure has no error, no type error and no visible symptom for anyone\n * testing with a mouse, which is precisely the class this project keeps\n * finding.\n *\n * So the control announces itself and `BoardCard` checks. React runs child\n * effects before parent effects, so by the time the card's own effect runs\n * the answer is already known. This is the same shape `DragDrop` uses to\n * learn whether an overlay was rendered (`registerOverlay`) — a part reports\n * its own existence rather than the parent trying to inspect its children.\n */\n registerHandle: () => () => void;\n}\n\nconst RootContext = createContext<BoardContextValue<unknown> | null>(null);\nconst ColumnContext = createContext<BoardColumnContextValue | null>(null);\nconst CardContext = createContext<BoardCardContextValue | null>(null);\n\nexport const BoardProvider = RootContext.Provider;\nexport const BoardColumnProvider = ColumnContext.Provider;\nexport const BoardCardProvider = CardContext.Provider;\n\nexport function useBoardContext<T>(component: string): BoardContextValue<T> {\n const value = useContext(RootContext);\n if (!value) throw new Error(`<${component}> must be rendered inside a <Board>.`);\n // See the file header — sound because one render tree never mixes two `T`s.\n return value as BoardContextValue<T>;\n}\n\nexport function useBoardColumnContext(component: string): BoardColumnContextValue {\n const value = useContext(ColumnContext);\n if (!value) throw new Error(`<${component}> must be rendered inside a <BoardColumn>.`);\n return value;\n}\n\nexport function useBoardCardContext(component: string): BoardCardContextValue {\n const value = useContext(CardContext);\n if (!value) throw new Error(`<${component}> must be rendered inside a <BoardCard>.`);\n return value;\n}\n"],"names":["BoardCardSurfaceContext","createContext","useBoardCardIsDragSource","useContext","RootContext","ColumnContext","CardContext","BoardProvider","BoardColumnProvider","BoardCardProvider","useBoardContext","component","value","useBoardColumnContext","useBoardCardContext"],"mappings":";AAwDO,MAAMA,IAA0BC,EAAc,EAAK;AAGnD,SAASC,IAAoC;AAClD,SAAOC,EAAWH,CAAuB;AAC3C;AA2DA,MAAMI,IAAcH,EAAiD,IAAI,GACnEI,IAAgBJ,EAA8C,IAAI,GAClEK,IAAcL,EAA4C,IAAI,GAEvDM,IAAgBH,EAAY,UAC5BI,IAAsBH,EAAc,UACpCI,IAAoBH,EAAY;AAEtC,SAASI,EAAmBC,GAAyC;AAC1E,QAAMC,IAAQT,EAAWC,CAAW;AACpC,MAAI,CAACQ,EAAO,OAAM,IAAI,MAAM,IAAID,CAAS,sCAAsC;AAE/E,SAAOC;AACT;AAEO,SAASC,EAAsBF,GAA4C;AAChF,QAAMC,IAAQT,EAAWE,CAAa;AACtC,MAAI,CAACO,EAAO,OAAM,IAAI,MAAM,IAAID,CAAS,4CAA4C;AACrF,SAAOC;AACT;AAEO,SAASE,EAAoBH,GAA0C;AAC5E,QAAMC,IAAQT,EAAWG,CAAW;AACpC,MAAI,CAACM,EAAO,OAAM,IAAI,MAAM,IAAID,CAAS,0CAA0C;AACnF,SAAOC;AACT;"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { tv as e } from "tailwind-variants";
|
|
2
|
+
const t = e({
|
|
3
|
+
slots: {
|
|
4
|
+
/* The whole column: header + list, stacked. Width and grid placement are
|
|
5
|
+
the consumer's job (a page decides 3 columns vs 7, fixed vs scrolling) —
|
|
6
|
+
this only owns the INSIDE of one column. */
|
|
7
|
+
column: "flex min-h-0 min-w-64 flex-col rounded-xl border",
|
|
8
|
+
header: [
|
|
9
|
+
"flex items-center justify-between gap-2 rounded-t-xl px-3 py-2.5",
|
|
10
|
+
"transition-[var(--tx-colors)] duration-(--dur-base)"
|
|
11
|
+
],
|
|
12
|
+
/* The label and its optional icon sit together at the header's start. */
|
|
13
|
+
title: "flex min-w-0 items-center gap-1.5",
|
|
14
|
+
glyph: "inline-grid shrink-0 place-items-center",
|
|
15
|
+
/* DX-4540: the count and the header's actions, side by side at its end. */
|
|
16
|
+
trailing: "flex shrink-0 items-center gap-1.5",
|
|
17
|
+
label: "truncate text-2xs font-semibold tracking-widest uppercase",
|
|
18
|
+
/* The scrollable list itself. `role="list"` lives on THIS element in
|
|
19
|
+
`Board.tsx` — see its header for why the ARIA role has to sit on a
|
|
20
|
+
wrapper rather than on `DragDropContainer`'s own div, which this
|
|
21
|
+
package does not expose a way to annotate. */
|
|
22
|
+
list: "flex min-h-0 flex-1 flex-col",
|
|
23
|
+
empty: "px-3 py-8",
|
|
24
|
+
/* The dual-purpose cluster: the drag handle and the "Move to…" trigger,
|
|
25
|
+
side by side, one control the size of the other. Neither is styled to
|
|
26
|
+
look more important than the other — RES-GAME's whole point is that
|
|
27
|
+
the pointer path is NOT a fallback bolted onto the drag path. */
|
|
28
|
+
handleCluster: "inline-flex shrink-0 items-center gap-0.5",
|
|
29
|
+
menuTrigger: [
|
|
30
|
+
"dx-tap inline-grid shrink-0 cursor-pointer place-items-center rounded p-1",
|
|
31
|
+
"text-tertiary outline-none",
|
|
32
|
+
"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover",
|
|
33
|
+
"hover:bg-surface-hover hover:text-primary",
|
|
34
|
+
"focus-visible:ring-2 focus-visible:ring-focus-ring"
|
|
35
|
+
],
|
|
36
|
+
/* DX-4575: the consumer's sentence inside a lane that refuses reordering,
|
|
37
|
+
shown while a card from it is dragged over. Calm, not danger: nothing went
|
|
38
|
+
wrong, the lane just cannot take that kind of drop. An overlay on the
|
|
39
|
+
box wrapping the lane's list, never in flow: see `Board.tsx#ReorderLockedBanner`. */
|
|
40
|
+
reorderLocked: [
|
|
41
|
+
"pointer-events-none absolute inset-x-2 top-2 z-10 flex items-center gap-1.5 rounded-lg",
|
|
42
|
+
"border border-border bg-surface px-2.5 py-1.5 text-xs text-secondary"
|
|
43
|
+
],
|
|
44
|
+
/* DX-4583: the whole-lane highlight shown while a card from ANOTHER lane is
|
|
45
|
+
held over this one under `crossLaneDrop="lane"`. A dashed accent outline
|
|
46
|
+
over a soft tint, the same pair the engine's own landing zone uses, so the
|
|
47
|
+
signal is never colour alone. An overlay on the box wrapping the lane's
|
|
48
|
+
list, never in flow, and `pointer-events-none` for the same autoscroll
|
|
49
|
+
reason as the banner above: see `Board.tsx#LaneDropHighlight`. */
|
|
50
|
+
laneDrop: [
|
|
51
|
+
"pointer-events-none absolute inset-0 z-10 rounded-b-xl border-2 border-dashed border-accent",
|
|
52
|
+
"bg-accent-subtle/40"
|
|
53
|
+
],
|
|
54
|
+
/* The rejection line — see `Board.tsx`'s header on why this exists
|
|
55
|
+
instead of relying on `DragDrop`'s own live region: a card that fails
|
|
56
|
+
`validateMove` still completes its DRAG (the pointer released, the
|
|
57
|
+
session committed) even though the board is about to refuse to write
|
|
58
|
+
it, so the engine's own "Dropped…" announcement cannot be made to say
|
|
59
|
+
"rejected" without a hook this package does not expose. This is a
|
|
60
|
+
SEPARATE, board-owned line that speaks the verdict's reason instead —
|
|
61
|
+
visible, not `sr-only`, so a sighted user reads the same words a
|
|
62
|
+
screen reader hears rather than a colour they have to interpret. */
|
|
63
|
+
rejection: [
|
|
64
|
+
"flex items-center gap-1.5 rounded-lg border border-danger-border bg-danger-subtle",
|
|
65
|
+
"px-2.5 py-1.5 text-xs text-danger-text"
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
variants: {
|
|
69
|
+
overWip: {
|
|
70
|
+
true: { header: "bg-danger-subtle", label: "text-danger-text", glyph: "text-danger-text" },
|
|
71
|
+
false: {}
|
|
72
|
+
},
|
|
73
|
+
/* DX-3981: a lane in a caller-given colour. The tint, the card-edge
|
|
74
|
+
override and the header fill live in `.dx-lane` / `.dx-lane-header`
|
|
75
|
+
(components.css) over per-theme `--lane-*` tokens, so the one formula
|
|
76
|
+
is written once and the contrast test reads the shipped CSS. Without
|
|
77
|
+
an accent the shell keeps exactly the classes it always had. */
|
|
78
|
+
accented: {
|
|
79
|
+
true: { column: "dx-lane", header: "dx-lane-header" },
|
|
80
|
+
false: { column: "border-border-subtle bg-surface-sunken" }
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
compoundVariants: [
|
|
84
|
+
/* DX-3981: ink, never the accent as text. `text-primary` is the one ink
|
|
85
|
+
token that clears 4.5:1 on every tinted header in both themes. */
|
|
86
|
+
{ accented: !0, overWip: !1, class: { label: "text-primary", glyph: "text-primary" } },
|
|
87
|
+
{ accented: !1, overWip: !1, class: { label: "text-tertiary", glyph: "text-tertiary" } }
|
|
88
|
+
],
|
|
89
|
+
defaultVariants: { overWip: !1, accented: !1 }
|
|
90
|
+
});
|
|
91
|
+
export {
|
|
92
|
+
t as board
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=recipe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recipe.js","sources":["../../../src/components/board/recipe.ts"],"sourcesContent":["import { tv } from \"tailwind-variants\";\r\n\r\n/* ----------------------------------------------------------------------------\r\n The slots for `Board`'s own parts — the column shell, its header, the count\r\n badge, the handle cluster and the rejection status line. Card CONTENT has\r\n no recipe here on purpose: `RecordCard` (or whatever the consumer renders)\r\n owns its own styling entirely, and this file never reaches past the parts\r\n `Board.tsx` itself renders.\r\n\r\n THE WIP-EXCEEDED SHIFT IS A HEADER BACKGROUND CHANGE, NOT JUST A NUMBER —\r\n RES-GAME names this explicitly: \"WIP limits must be visually LOUD when\r\n exceeded (header background shift), not just a number in the corner. The\r\n point of a limit is to interrupt, not to inform.\" The `overWip` variant\r\n below is what does that; it is driven by `BoardColumnModel.overWip`\r\n (derived data), never by a boolean prop a consumer sets — see AGENTS' rule\r\n against `show*`/`enable*` props. WCAG 1.4.1 still applies even to a LOUD\r\n signal: the background shift is paired with an icon and a \"N / limit\" text\r\n change in `Board.tsx`, never colour alone.\r\n -------------------------------------------------------------------------- */\r\n\r\nexport const board = tv({\r\n slots: {\r\n /* The whole column: header + list, stacked. Width and grid placement are\r\n the consumer's job (a page decides 3 columns vs 7, fixed vs scrolling) —\r\n this only owns the INSIDE of one column. */\r\n column: \"flex min-h-0 min-w-64 flex-col rounded-xl border\",\r\n header: [\r\n \"flex items-center justify-between gap-2 rounded-t-xl px-3 py-2.5\",\r\n \"transition-[var(--tx-colors)] duration-(--dur-base)\",\r\n ],\r\n /* The label and its optional icon sit together at the header's start. */\r\n title: \"flex min-w-0 items-center gap-1.5\",\r\n glyph: \"inline-grid shrink-0 place-items-center\",\r\n /* DX-4540: the count and the header's actions, side by side at its end. */\r\n trailing: \"flex shrink-0 items-center gap-1.5\",\r\n label: \"truncate text-2xs font-semibold tracking-widest uppercase\",\r\n /* The scrollable list itself. `role=\"list\"` lives on THIS element in\r\n `Board.tsx` — see its header for why the ARIA role has to sit on a\r\n wrapper rather than on `DragDropContainer`'s own div, which this\r\n package does not expose a way to annotate. */\r\n list: \"flex min-h-0 flex-1 flex-col\",\r\n empty: \"px-3 py-8\",\r\n\r\n /* The dual-purpose cluster: the drag handle and the \"Move to…\" trigger,\r\n side by side, one control the size of the other. Neither is styled to\r\n look more important than the other — RES-GAME's whole point is that\r\n the pointer path is NOT a fallback bolted onto the drag path. */\r\n handleCluster: \"inline-flex shrink-0 items-center gap-0.5\",\r\n menuTrigger: [\r\n \"dx-tap inline-grid shrink-0 cursor-pointer place-items-center rounded p-1\",\r\n \"text-tertiary outline-none\",\r\n \"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover\",\r\n \"hover:bg-surface-hover hover:text-primary\",\r\n \"focus-visible:ring-2 focus-visible:ring-focus-ring\",\r\n ],\r\n\r\n /* DX-4575: the consumer's sentence inside a lane that refuses reordering,\r\n shown while a card from it is dragged over. Calm, not danger: nothing went\r\n wrong, the lane just cannot take that kind of drop. An overlay on the\r\n box wrapping the lane's list, never in flow: see `Board.tsx#ReorderLockedBanner`. */\r\n reorderLocked: [\r\n \"pointer-events-none absolute inset-x-2 top-2 z-10 flex items-center gap-1.5 rounded-lg\",\r\n \"border border-border bg-surface px-2.5 py-1.5 text-xs text-secondary\",\r\n ],\r\n\r\n /* DX-4583: the whole-lane highlight shown while a card from ANOTHER lane is\r\n held over this one under `crossLaneDrop=\"lane\"`. A dashed accent outline\r\n over a soft tint, the same pair the engine's own landing zone uses, so the\r\n signal is never colour alone. An overlay on the box wrapping the lane's\r\n list, never in flow, and `pointer-events-none` for the same autoscroll\r\n reason as the banner above: see `Board.tsx#LaneDropHighlight`. */\r\n laneDrop: [\r\n \"pointer-events-none absolute inset-0 z-10 rounded-b-xl border-2 border-dashed border-accent\",\r\n \"bg-accent-subtle/40\",\r\n ],\r\n\r\n /* The rejection line — see `Board.tsx`'s header on why this exists\r\n instead of relying on `DragDrop`'s own live region: a card that fails\r\n `validateMove` still completes its DRAG (the pointer released, the\r\n session committed) even though the board is about to refuse to write\r\n it, so the engine's own \"Dropped…\" announcement cannot be made to say\r\n \"rejected\" without a hook this package does not expose. This is a\r\n SEPARATE, board-owned line that speaks the verdict's reason instead —\r\n visible, not `sr-only`, so a sighted user reads the same words a\r\n screen reader hears rather than a colour they have to interpret. */\r\n rejection: [\r\n \"flex items-center gap-1.5 rounded-lg border border-danger-border bg-danger-subtle\",\r\n \"px-2.5 py-1.5 text-xs text-danger-text\",\r\n ],\r\n },\r\n variants: {\r\n overWip: {\r\n true: { header: \"bg-danger-subtle\", label: \"text-danger-text\", glyph: \"text-danger-text\" },\r\n false: {},\r\n },\r\n /* DX-3981: a lane in a caller-given colour. The tint, the card-edge\r\n override and the header fill live in `.dx-lane` / `.dx-lane-header`\r\n (components.css) over per-theme `--lane-*` tokens, so the one formula\r\n is written once and the contrast test reads the shipped CSS. Without\r\n an accent the shell keeps exactly the classes it always had. */\r\n accented: {\r\n true: { column: \"dx-lane\", header: \"dx-lane-header\" },\r\n false: { column: \"border-border-subtle bg-surface-sunken\" },\r\n },\r\n },\r\n compoundVariants: [\r\n /* DX-3981: ink, never the accent as text. `text-primary` is the one ink\r\n token that clears 4.5:1 on every tinted header in both themes. */\r\n { accented: true, overWip: false, class: { label: \"text-primary\", glyph: \"text-primary\" } },\r\n { accented: false, overWip: false, class: { label: \"text-tertiary\", glyph: \"text-tertiary\" } },\r\n ],\r\n defaultVariants: { overWip: false, accented: false },\r\n});\r\n"],"names":["board","tv"],"mappings":";AAoBO,MAAMA,IAAQC,EAAG;AAAA,EACtB,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,QAAQ;AAAA,IACR,QAAQ;AAAA,MACN;AAAA,MACA;AAAA,IAAA;AAAA;AAAA,IAGF,OAAO;AAAA,IACP,OAAO;AAAA;AAAA,IAEP,UAAU;AAAA,IACV,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKP,MAAM;AAAA,IACN,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAMP,eAAe;AAAA,IACf,aAAa;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOF,eAAe;AAAA,MACb;AAAA,MACA;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASF,UAAU;AAAA,MACR;AAAA,MACA;AAAA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYF,WAAW;AAAA,MACT;AAAA,MACA;AAAA,IAAA;AAAA,EACF;AAAA,EAEF,UAAU;AAAA,IACR,SAAS;AAAA,MACP,MAAM,EAAE,QAAQ,oBAAoB,OAAO,oBAAoB,OAAO,mBAAA;AAAA,MACtE,OAAO,CAAA;AAAA,IAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOV,UAAU;AAAA,MACR,MAAM,EAAE,QAAQ,WAAW,QAAQ,iBAAA;AAAA,MACnC,OAAO,EAAE,QAAQ,yCAAA;AAAA,IAAyC;AAAA,EAC5D;AAAA,EAEF,kBAAkB;AAAA;AAAA;AAAA,IAGhB,EAAE,UAAU,IAAM,SAAS,IAAO,OAAO,EAAE,OAAO,gBAAgB,OAAO,iBAAe;AAAA,IACxF,EAAE,UAAU,IAAO,SAAS,IAAO,OAAO,EAAE,OAAO,iBAAiB,OAAO,gBAAA,EAAgB;AAAA,EAAE;AAAA,EAE/F,iBAAiB,EAAE,SAAS,IAAO,UAAU,GAAA;AAC/C,CAAC;"}
|
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
import { jsxs as g, jsx as a, Fragment as z } from "react/jsx-runtime";
|
|
2
|
+
import { useId as ee, useMemo as I, useRef as U, useEffect as te } from "react";
|
|
3
|
+
import { tv as oe } from "tailwind-variants";
|
|
4
|
+
import { cn as w } from "../../lib/cn.js";
|
|
5
|
+
import { Popover as re } from "../Popover.js";
|
|
6
|
+
import { packBand as ae } from "../../lib/calendar/band-packer.js";
|
|
7
|
+
import { allDayBandSegment as se, timedBandSegment as le } from "../../lib/calendar/segments.js";
|
|
8
|
+
import { weekdayName as A, dayNumber as ne, timeOfDay as H, eventLabel as O, cellLabel as W } from "./format.js";
|
|
9
|
+
import { paletteFor as X } from "./palette.js";
|
|
10
|
+
import { useGridNavigation as ie, initialFocusDay as ce, isInMonth as de } from "./use-grid-navigation.js";
|
|
11
|
+
import { useUiLocale as ue, useUiStrings as me } from "../../lib/i18n/provider.js";
|
|
12
|
+
import { useNumberFormat as fe } from "../../lib/i18n/number-format.js";
|
|
13
|
+
import { monthGridDays as he, isSameDate as B } from "../../lib/time/plain.js";
|
|
14
|
+
import { addDays as Se, startOfMonth as Ke } from "../../lib/time/plain.js";
|
|
15
|
+
import { isoDateString as N } from "../../lib/time/types.js";
|
|
16
|
+
const pe = oe({
|
|
17
|
+
slots: {
|
|
18
|
+
root: "flex min-w-0 flex-col gap-2",
|
|
19
|
+
table: "w-full table-fixed border-collapse",
|
|
20
|
+
headCell: [
|
|
21
|
+
"px-2 pb-2 text-2xs font-semibold tracking-widest text-tertiary uppercase",
|
|
22
|
+
"text-center"
|
|
23
|
+
],
|
|
24
|
+
cell: "p-0 align-top",
|
|
25
|
+
/* `box-shadow` for the rules — see the header. `overflow-visible` is what
|
|
26
|
+
lets a multi-day bar cross out of the cell it starts in. */
|
|
27
|
+
cellInner: [
|
|
28
|
+
"relative flex min-h-28 flex-col overflow-visible outline-none",
|
|
29
|
+
"shadow-[inset_-1px_-1px_0_0_var(--border-subtle)]",
|
|
30
|
+
"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover",
|
|
31
|
+
"focus-visible:z-10 focus-visible:shadow-[inset_0_0_0_2px_var(--focus-ring)]"
|
|
32
|
+
],
|
|
33
|
+
dayNumber: [
|
|
34
|
+
"mx-1 mt-1 grid size-6 shrink-0 place-items-center self-start rounded-full",
|
|
35
|
+
"text-xs tabular-nums",
|
|
36
|
+
"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover"
|
|
37
|
+
],
|
|
38
|
+
bars: "relative mt-0.5 w-full",
|
|
39
|
+
bar: [
|
|
40
|
+
/* h-6 IS 24px, WHICH IS THE WCAG 2.2 SC 2.5.8 FLOOR, and it is not a
|
|
41
|
+
style choice. Chips were 20px on a 22px pitch, which fails twice: under
|
|
42
|
+
the floor, and too close together for the spacing exception — a 24px
|
|
43
|
+
circle centred on one chip's box intersects its neighbour's. Google's
|
|
44
|
+
own chips are smaller than this and Google does not meet 2.5.8 either.
|
|
45
|
+
The cost is real and accepted: a cell fits fewer chips before it
|
|
46
|
+
overflows, and the month is taller. Being reliably clickable beats
|
|
47
|
+
being dense. */
|
|
48
|
+
"absolute flex h-6 items-center gap-1 overflow-hidden rounded-sm px-1.5 text-left",
|
|
49
|
+
"text-2xs leading-none whitespace-nowrap",
|
|
50
|
+
"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover",
|
|
51
|
+
"focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-(--focus-ring)"
|
|
52
|
+
],
|
|
53
|
+
more: [
|
|
54
|
+
/* Same floor as a chip — see above. The overflow link is the ONLY route
|
|
55
|
+
to the events it hides, so it is the last control that should be hard
|
|
56
|
+
to hit. */
|
|
57
|
+
/* SECONDARY, not tertiary. Tertiary at this size fails AA in the dark
|
|
58
|
+
theme's enforced-contrast mode — caught by `npm run a11y`, which is a
|
|
59
|
+
gate this project owns and had stopped running (A11Y-2). It is also the
|
|
60
|
+
right weight regardless: this is the only route to the events it hides,
|
|
61
|
+
so it is a control, not incidental text. */
|
|
62
|
+
"mx-1 mt-0.5 flex h-6 min-w-6 items-center self-start rounded-sm px-1.5 text-2xs text-secondary",
|
|
63
|
+
"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover",
|
|
64
|
+
"hover:bg-surface-hover hover:text-primary",
|
|
65
|
+
"focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-(--focus-ring)"
|
|
66
|
+
],
|
|
67
|
+
popoverList: "flex max-h-72 min-w-56 flex-col gap-1 overflow-y-auto"
|
|
68
|
+
}
|
|
69
|
+
}), L = 26;
|
|
70
|
+
function Ie({
|
|
71
|
+
month: m,
|
|
72
|
+
zone: p,
|
|
73
|
+
events: S,
|
|
74
|
+
weekStartsOn: k = 0,
|
|
75
|
+
today: D,
|
|
76
|
+
selectedDate: _,
|
|
77
|
+
onSelectDate: q,
|
|
78
|
+
onSelectEvent: K,
|
|
79
|
+
onMonthChange: J,
|
|
80
|
+
maxEventRows: R = 4,
|
|
81
|
+
renderEvent: T,
|
|
82
|
+
className: Q,
|
|
83
|
+
label: V
|
|
84
|
+
}) {
|
|
85
|
+
const c = ue(), j = fe(), n = me().calendar, l = pe(), Y = ee(), C = I(
|
|
86
|
+
() => he(m, k),
|
|
87
|
+
[m.year, m.month, m.day, k]
|
|
88
|
+
), $ = I(() => {
|
|
89
|
+
const t = [];
|
|
90
|
+
for (let o = 0; o < C.length; o += 7) t.push(C.slice(o, o + 7));
|
|
91
|
+
return t;
|
|
92
|
+
}, [C]), d = ie(
|
|
93
|
+
ce(C, m, D, _),
|
|
94
|
+
{ month: m, weekStartsOn: k, onMonthChange: J }
|
|
95
|
+
), M = U(/* @__PURE__ */ new Map()), F = U(!1);
|
|
96
|
+
te(() => {
|
|
97
|
+
F.current && M.current.get(N(d.focusedDay))?.focus();
|
|
98
|
+
}, [d.focusedDay]);
|
|
99
|
+
const Z = I(
|
|
100
|
+
() => $.map((t) => {
|
|
101
|
+
const o = [];
|
|
102
|
+
for (const r of S) {
|
|
103
|
+
const s = r.allDay ? se(t, r) : le(p, t, r);
|
|
104
|
+
s && o.push(s);
|
|
105
|
+
}
|
|
106
|
+
const f = o.map((r, s) => ({
|
|
107
|
+
key: `${r.event.id}:${s}`,
|
|
108
|
+
startColumn: r.startColumn,
|
|
109
|
+
endColumn: r.endColumn,
|
|
110
|
+
/* All-day bars sort above timed chips: a bar spanning the row is the
|
|
111
|
+
structure of the week, and burying it under single-day chips makes
|
|
112
|
+
the week unreadable. */
|
|
113
|
+
priority: r.event.allDay ? 0 : 1
|
|
114
|
+
})), u = ae(f, { columns: t.length, maxRows: R }), h = new Map(f.map((r, s) => [r.key, o[s]])), b = u.placed.map((r) => ({
|
|
115
|
+
...h.get(r.key),
|
|
116
|
+
row: r.row
|
|
117
|
+
})), v = t.map(() => []);
|
|
118
|
+
for (const r of u.hidden) {
|
|
119
|
+
const s = h.get(r.key);
|
|
120
|
+
for (let i = Math.max(0, s.startColumn); i <= Math.min(t.length - 1, s.endColumn); i++)
|
|
121
|
+
v[i].push(s.event);
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
days: t,
|
|
125
|
+
placed: b,
|
|
126
|
+
overflow: u.overflow,
|
|
127
|
+
hiddenByColumn: v,
|
|
128
|
+
rows: u.rows
|
|
129
|
+
};
|
|
130
|
+
}),
|
|
131
|
+
[$, S, p, R]
|
|
132
|
+
), E = $[0] ?? [];
|
|
133
|
+
return /* @__PURE__ */ g("div", { className: w(l.root(), Q), children: [
|
|
134
|
+
/* @__PURE__ */ g(
|
|
135
|
+
"table",
|
|
136
|
+
{
|
|
137
|
+
className: l.table(),
|
|
138
|
+
role: "grid",
|
|
139
|
+
"aria-label": V ?? n.month.label,
|
|
140
|
+
onKeyDown: d.onKeyDown,
|
|
141
|
+
onFocus: () => {
|
|
142
|
+
F.current = !0;
|
|
143
|
+
},
|
|
144
|
+
onBlur: (t) => {
|
|
145
|
+
t.currentTarget.contains(t.relatedTarget) || (F.current = !1, d.leaveCell());
|
|
146
|
+
},
|
|
147
|
+
children: [
|
|
148
|
+
/* @__PURE__ */ a("thead", { children: /* @__PURE__ */ a("tr", { children: E.map((t) => /* @__PURE__ */ a(
|
|
149
|
+
"th",
|
|
150
|
+
{
|
|
151
|
+
scope: "col",
|
|
152
|
+
abbr: A(t, "long", c),
|
|
153
|
+
className: l.headCell(),
|
|
154
|
+
children: A(t, "short", c)
|
|
155
|
+
},
|
|
156
|
+
N(t)
|
|
157
|
+
)) }) }),
|
|
158
|
+
/* @__PURE__ */ a("tbody", { children: Z.map((t) => /* @__PURE__ */ a("tr", { children: t.days.map((o, f) => {
|
|
159
|
+
const u = N(o), h = de(o, m), b = D ? B(o, D) : !1, v = _ ? B(o, _) : !1, r = B(o, d.focusedDay), s = t.placed.filter((e) => e.startColumn === f), i = t.hiddenByColumn[f], G = t.placed.filter((e) => e.startColumn <= f && e.endColumn >= f).length + i.length;
|
|
160
|
+
return /* @__PURE__ */ a(
|
|
161
|
+
"td",
|
|
162
|
+
{
|
|
163
|
+
ref: (e) => {
|
|
164
|
+
e ? M.current.set(u, e) : M.current.delete(u);
|
|
165
|
+
},
|
|
166
|
+
tabIndex: r ? 0 : -1,
|
|
167
|
+
"aria-label": W(o, G, c, n),
|
|
168
|
+
"aria-selected": v || void 0,
|
|
169
|
+
"aria-current": b ? "date" : void 0,
|
|
170
|
+
"data-in-month": h ? "" : void 0,
|
|
171
|
+
"data-today": b ? "" : void 0,
|
|
172
|
+
className: l.cell(),
|
|
173
|
+
onClick: () => {
|
|
174
|
+
d.setFocusedDay(o), q?.(o);
|
|
175
|
+
},
|
|
176
|
+
onFocus: () => d.setFocusedDay(o),
|
|
177
|
+
children: /* @__PURE__ */ g(
|
|
178
|
+
"div",
|
|
179
|
+
{
|
|
180
|
+
className: w(
|
|
181
|
+
l.cellInner(),
|
|
182
|
+
!h && "bg-canvas-subtle",
|
|
183
|
+
v && "bg-surface-selected"
|
|
184
|
+
),
|
|
185
|
+
style: {
|
|
186
|
+
/* Room for every visible bar row plus the link. Fixed
|
|
187
|
+
rather than content-driven so rows do not jump height
|
|
188
|
+
as events are added. */
|
|
189
|
+
paddingBottom: `${Math.max(0, t.rows) * L + 4}px`
|
|
190
|
+
},
|
|
191
|
+
children: [
|
|
192
|
+
/* @__PURE__ */ a(
|
|
193
|
+
"span",
|
|
194
|
+
{
|
|
195
|
+
className: w(
|
|
196
|
+
l.dayNumber(),
|
|
197
|
+
!h && "text-tertiary",
|
|
198
|
+
h && !b && "text-secondary",
|
|
199
|
+
b && "bg-accent font-semibold text-accent-contrast"
|
|
200
|
+
),
|
|
201
|
+
children: ne(o, c)
|
|
202
|
+
}
|
|
203
|
+
),
|
|
204
|
+
/* @__PURE__ */ a("div", { className: l.bars(), style: { height: `${t.rows * L}px` }, children: s.map((e) => {
|
|
205
|
+
const x = e.endColumn - e.startColumn + 1, y = X(e.event.paletteKey);
|
|
206
|
+
return /* @__PURE__ */ a(
|
|
207
|
+
"button",
|
|
208
|
+
{
|
|
209
|
+
type: "button",
|
|
210
|
+
tabIndex: d.insideCell && r ? 0 : -1,
|
|
211
|
+
"aria-label": O(e.event, p, n.colors[y.key], c, n),
|
|
212
|
+
className: w(
|
|
213
|
+
l.bar(),
|
|
214
|
+
/* Only the clipped end loses its radius, so the
|
|
215
|
+
bar reads as continuing rather than ending. */
|
|
216
|
+
!e.isStart && "rounded-l-none",
|
|
217
|
+
!e.isEnd && "rounded-r-none"
|
|
218
|
+
),
|
|
219
|
+
style: {
|
|
220
|
+
top: `${e.row * L}px`,
|
|
221
|
+
/* EXACT because the cell's box is exactly one
|
|
222
|
+
seventh of the row — see the file header. */
|
|
223
|
+
width: `calc(${x} * 100% - 8px)`,
|
|
224
|
+
left: "4px",
|
|
225
|
+
background: y.fill,
|
|
226
|
+
color: y.text,
|
|
227
|
+
borderLeft: e.isStart ? `3px solid ${y.edge}` : void 0,
|
|
228
|
+
boxShadow: `inset 0 0 0 1px ${y.edge}`
|
|
229
|
+
},
|
|
230
|
+
onClick: (P) => {
|
|
231
|
+
P.stopPropagation(), K?.(e.event);
|
|
232
|
+
},
|
|
233
|
+
children: T ? T(e.event) : /* @__PURE__ */ g(z, { children: [
|
|
234
|
+
!e.event.allDay && e.isStart && /* @__PURE__ */ a("span", { className: "shrink-0 tabular-nums opacity-80", children: H(e.event.start, p, c) }),
|
|
235
|
+
/* @__PURE__ */ a("span", { className: "truncate", children: e.event.title })
|
|
236
|
+
] })
|
|
237
|
+
},
|
|
238
|
+
`${e.event.id}:${e.row}`
|
|
239
|
+
);
|
|
240
|
+
}) }),
|
|
241
|
+
i.length > 0 && /* @__PURE__ */ a(
|
|
242
|
+
re,
|
|
243
|
+
{
|
|
244
|
+
side: "bottom",
|
|
245
|
+
align: "start",
|
|
246
|
+
trigger: /* @__PURE__ */ a(
|
|
247
|
+
"button",
|
|
248
|
+
{
|
|
249
|
+
type: "button",
|
|
250
|
+
tabIndex: d.insideCell && r ? 0 : -1,
|
|
251
|
+
className: l.more(),
|
|
252
|
+
"aria-label": n.month.showMore(i.length, j(i.length), W(o, G, c, n)),
|
|
253
|
+
onClick: (e) => e.stopPropagation(),
|
|
254
|
+
children: n.month.more(j(i.length))
|
|
255
|
+
}
|
|
256
|
+
),
|
|
257
|
+
children: /* @__PURE__ */ a("div", { className: l.popoverList(), children: i.map((e) => {
|
|
258
|
+
const x = X(e.paletteKey);
|
|
259
|
+
return /* @__PURE__ */ g(
|
|
260
|
+
"button",
|
|
261
|
+
{
|
|
262
|
+
type: "button",
|
|
263
|
+
className: w(l.bar(), "relative! w-full"),
|
|
264
|
+
"aria-label": O(e, p, n.colors[x.key], c, n),
|
|
265
|
+
style: {
|
|
266
|
+
background: x.fill,
|
|
267
|
+
color: x.text,
|
|
268
|
+
borderLeft: `3px solid ${x.edge}`
|
|
269
|
+
},
|
|
270
|
+
onClick: () => K?.(e),
|
|
271
|
+
children: [
|
|
272
|
+
!e.allDay && /* @__PURE__ */ a("span", { className: "shrink-0 tabular-nums opacity-80", children: H(e.start, p, c) }),
|
|
273
|
+
/* @__PURE__ */ a("span", { className: "truncate", children: e.title })
|
|
274
|
+
]
|
|
275
|
+
},
|
|
276
|
+
e.id
|
|
277
|
+
);
|
|
278
|
+
}) })
|
|
279
|
+
}
|
|
280
|
+
)
|
|
281
|
+
]
|
|
282
|
+
}
|
|
283
|
+
)
|
|
284
|
+
},
|
|
285
|
+
u
|
|
286
|
+
);
|
|
287
|
+
}) }, N(t.days[0]))) })
|
|
288
|
+
]
|
|
289
|
+
}
|
|
290
|
+
),
|
|
291
|
+
/* @__PURE__ */ a("p", { id: `${Y}-hint`, className: "sr-only", children: n.month.keyboardHint })
|
|
292
|
+
] });
|
|
293
|
+
}
|
|
294
|
+
export {
|
|
295
|
+
Ie as CalendarMonth,
|
|
296
|
+
Se as addDays,
|
|
297
|
+
Ke as startOfMonth
|
|
298
|
+
};
|
|
299
|
+
//# sourceMappingURL=CalendarMonth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalendarMonth.js","sources":["../../../src/components/calendar/CalendarMonth.tsx"],"sourcesContent":["import { useEffect, useId, useMemo, useRef, type ReactNode } from \"react\";\nimport { tv } from \"tailwind-variants\";\nimport { cn } from \"@/lib/cn\";\nimport { Popover } from \"@/components/Popover\";\nimport {\n addDays,\n isSameDate,\n isoDateString,\n monthGridDays,\n startOfMonth,\n type PlainDate,\n type TimeZone,\n} from \"@/lib/time\";\nimport { packBand, type BandInput } from \"@/lib/calendar/band-packer\";\nimport { allDayBandSegment, timedBandSegment, type BandSegment } from \"@/lib/calendar/segments\";\nimport type { CalendarEvent } from \"@/lib/calendar/types\";\nimport { cellLabel, dayNumber, eventLabel, timeOfDay, weekdayName } from \"./format\";\nimport { paletteFor } from \"./palette\";\nimport { useNumberFormat, useUiLocale, useUiStrings } from \"@/lib/i18n\";\nimport { initialFocusDay, isInMonth, useGridNavigation } from \"./use-grid-navigation\";\n\n/* ============================================================================\n MONTH VIEW.\n\n A REAL <table>, and the reasons are all screen-reader behaviour rather than\n taste. The header and body are ONE table — every sticky-header week view is\n tempted to split them, FullCalendar admits it does, and JAWS's table\n navigation (Ctrl+Alt+arrows) is broken inside nested tables: it announces\n \"end of row\" instead of moving. `<th scope=\"col\" abbr>` costs nothing and is\n what table navigation reads, but nothing here RELIES on `abbr`, because NVDA\n ignores it outright and JAWS has expansion off by default.\n\n GRID LINES ARE `box-shadow`, NOT `border`. Two reasons, and the second is the\n load-bearing one. A month is 35–42 cells and the cost of this view is DOM\n node count, so lines drawn by the cell itself beat lines drawn as elements.\n And `box-shadow` takes no space: a cell's box is EXACTLY one seventh of the\n row, so a bar spanning N days is `width: calc(N * 100%)` with no correction\n term for borders, padding or collapsing. Every attempt to do this with real\n borders ends in a `calc()` full of magic numbers that is wrong at some zoom\n level.\n\n MULTI-DAY BARS LIVE IN THE CELL THEY START IN and overflow it. That keeps\n them inside the table — an absolutely positioned overlay layer outside the\n `<tbody>` would put the events outside the grid the user is navigating.\n ========================================================================= */\n\nconst month = tv({\n slots: {\n root: \"flex min-w-0 flex-col gap-2\",\n table: \"w-full table-fixed border-collapse\",\n headCell: [\n \"px-2 pb-2 text-2xs font-semibold tracking-widest text-tertiary uppercase\",\n \"text-center\",\n ],\n cell: \"p-0 align-top\",\n /* `box-shadow` for the rules — see the header. `overflow-visible` is what\n lets a multi-day bar cross out of the cell it starts in. */\n cellInner: [\n \"relative flex min-h-28 flex-col overflow-visible outline-none\",\n \"shadow-[inset_-1px_-1px_0_0_var(--border-subtle)]\",\n \"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover\",\n \"focus-visible:z-10 focus-visible:shadow-[inset_0_0_0_2px_var(--focus-ring)]\",\n ],\n dayNumber: [\n \"mx-1 mt-1 grid size-6 shrink-0 place-items-center self-start rounded-full\",\n \"text-xs tabular-nums\",\n \"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover\",\n ],\n bars: \"relative mt-0.5 w-full\",\n bar: [\n /* h-6 IS 24px, WHICH IS THE WCAG 2.2 SC 2.5.8 FLOOR, and it is not a\n style choice. Chips were 20px on a 22px pitch, which fails twice: under\n the floor, and too close together for the spacing exception — a 24px\n circle centred on one chip's box intersects its neighbour's. Google's\n own chips are smaller than this and Google does not meet 2.5.8 either.\n The cost is real and accepted: a cell fits fewer chips before it\n overflows, and the month is taller. Being reliably clickable beats\n being dense. */\n \"absolute flex h-6 items-center gap-1 overflow-hidden rounded-sm px-1.5 text-left\",\n \"text-2xs leading-none whitespace-nowrap\",\n \"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover\",\n \"focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-(--focus-ring)\",\n ],\n more: [\n /* Same floor as a chip — see above. The overflow link is the ONLY route\n to the events it hides, so it is the last control that should be hard\n to hit. */\n /* SECONDARY, not tertiary. Tertiary at this size fails AA in the dark\n theme's enforced-contrast mode — caught by `npm run a11y`, which is a\n gate this project owns and had stopped running (A11Y-2). It is also the\n right weight regardless: this is the only route to the events it hides,\n so it is a control, not incidental text. */\n \"mx-1 mt-0.5 flex h-6 min-w-6 items-center self-start rounded-sm px-1.5 text-2xs text-secondary\",\n \"transition-[var(--tx-colors)] duration-(--dur-fast) ease-hover\",\n \"hover:bg-surface-hover hover:text-primary\",\n \"focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-(--focus-ring)\",\n ],\n popoverList: \"flex max-h-72 min-w-56 flex-col gap-1 overflow-y-auto\",\n },\n});\n\n/**\n * One bar row's pitch in px: a 24px chip plus a 2px gap.\n *\n * THE PITCH MUST EXCEED 24, not merely equal the chip height. SC 2.5.8's\n * spacing exception is expressed as 24px CIRCLES centred on each target's\n * bounding box not intersecting — so two 24px chips at a 24px pitch still fail,\n * and 26 is the first value that passes. Measured by `audit:responsive`,\n * which is what caught the original 22.\n */\nconst BAR_ROW_PX = 26;\n\nexport interface CalendarMonthProps {\n /** Any day in the month to display. */\n month: PlainDate;\n /** The zone every timed event is interpreted in. Required — there is no default. */\n zone: TimeZone;\n events: readonly CalendarEvent[];\n /** 0 = Sunday. No default anywhere up the stack — see `startOfWeek`. */\n weekStartsOn?: number;\n /** Today, for the highlight. Omit in tests so snapshots do not rot. */\n today?: PlainDate;\n selectedDate?: PlainDate;\n onSelectDate?: (day: PlainDate) => void;\n onSelectEvent?: (event: CalendarEvent) => void;\n /** Fired when navigation or paging leaves the displayed month. */\n onMonthChange?: (month: PlainDate) => void;\n /**\n * Most bar rows a cell may show, INCLUDING the row the \"+N more\" link takes.\n * See `packBand`; the affordance is counted so it cannot be drawn over an event.\n */\n maxEventRows?: number;\n /** Replace a chip's contents. The chip itself — button, label, colour — stays ours. */\n renderEvent?: (event: CalendarEvent) => ReactNode;\n className?: string;\n /** Accessible name for the grid. Omit for the built-in one. */\n label?: string;\n}\n\ninterface RowPlan {\n readonly days: readonly PlainDate[];\n readonly placed: readonly (BandSegment & { row: number })[];\n readonly overflow: readonly number[];\n readonly hiddenByColumn: readonly CalendarEvent[][];\n readonly rows: number;\n}\n\nexport function CalendarMonth({\n month: monthProp,\n zone,\n events,\n weekStartsOn = 0,\n today,\n selectedDate,\n onSelectDate,\n onSelectEvent,\n onMonthChange,\n maxEventRows = 4,\n renderEvent,\n className,\n label,\n}: CalendarMonthProps) {\n const locale = useUiLocale();\n const fmt = useNumberFormat();\n const strings = useUiStrings().calendar;\n const s = month();\n const gridId = useId();\n\n const days = useMemo(\n () => monthGridDays(monthProp, weekStartsOn),\n [monthProp.year, monthProp.month, monthProp.day, weekStartsOn],\n );\n\n const weeks = useMemo(() => {\n const out: PlainDate[][] = [];\n for (let i = 0; i < days.length; i += 7) out.push(days.slice(i, i + 7));\n return out;\n }, [days]);\n\n const nav = useGridNavigation(\n initialFocusDay(days, monthProp, today, selectedDate),\n { month: monthProp, weekStartsOn, onMonthChange },\n );\n\n /* The focused cell owns the DOM focus. Re-applied after every change so the\n roving tabindex and the real focus can never disagree — which is the defect\n an AX probe should assert against after every keypress. */\n const cellRefs = useRef(new Map<string, HTMLTableCellElement>());\n const hasFocusRef = useRef(false);\n useEffect(() => {\n if (!hasFocusRef.current) return;\n cellRefs.current.get(isoDateString(nav.focusedDay))?.focus();\n }, [nav.focusedDay]);\n\n /* One packing pass per WEEK ROW — never per cell. A per-cell pass is what\n makes a multi-day event truncated on day 1 vanish from days 2-5. */\n const plans = useMemo<RowPlan[]>(\n () =>\n weeks.map((rowDays) => {\n const segments: BandSegment[] = [];\n for (const event of events) {\n const segment = event.allDay\n ? allDayBandSegment(rowDays, event)\n : timedBandSegment(zone, rowDays, event);\n if (segment) segments.push(segment);\n }\n\n const inputs: BandInput[] = segments.map((segment, index) => ({\n key: `${segment.event.id}:${index}`,\n startColumn: segment.startColumn,\n endColumn: segment.endColumn,\n /* All-day bars sort above timed chips: a bar spanning the row is the\n structure of the week, and burying it under single-day chips makes\n the week unreadable. */\n priority: segment.event.allDay ? 0 : 1,\n }));\n\n const result = packBand(inputs, { columns: rowDays.length, maxRows: maxEventRows });\n const byKey = new Map(inputs.map((input, index) => [input.key, segments[index]]));\n\n const placed = result.placed.map((placement) => ({\n ...byKey.get(placement.key)!,\n row: placement.row,\n }));\n\n /* The \"+N more\" popover needs the actual events, not just a count, and\n it needs them per COLUMN because that is the cell the link sits in. */\n const hiddenByColumn: CalendarEvent[][] = rowDays.map(() => []);\n for (const hiddenItem of result.hidden) {\n const segment = byKey.get(hiddenItem.key)!;\n for (\n let c = Math.max(0, segment.startColumn);\n c <= Math.min(rowDays.length - 1, segment.endColumn);\n c++\n ) {\n hiddenByColumn[c].push(segment.event);\n }\n }\n\n return {\n days: rowDays,\n placed,\n overflow: result.overflow,\n hiddenByColumn,\n rows: result.rows,\n };\n }),\n [weeks, events, zone, maxEventRows],\n );\n\n const headerDays = weeks[0] ?? [];\n\n return (\n <div className={cn(s.root(), className)}>\n <table\n className={s.table()}\n /* role=\"grid\", AND THIS IS THE ONE PLACE IN THE CALENDAR IT IS RIGHT.\n The research rejected `grid` for the TIME grid, for reasons that all\n hold there and none of which apply here: an event spans six 15-minute\n cells, overlapping events stack in sub-columns with no row meaning,\n and the chips are absolutely positioned OUTSIDE any row, which breaks\n the role's required children outright.\n\n A month is genuinely a grid: seven columns, whole-day cells, one row\n per week, and every chip is a child of the cell it belongs to. It is\n also APG's own Date Picker Dialog pattern.\n\n The immediate cause was axe reporting `aria-allowed-attr` as\n CRITICAL: `aria-selected` is not permitted on a `cell`, only on a\n `gridcell`. The choices were to drop the attribute — leaving the\n selected date visible and unannounced — or to make the table what it\n actually is. HTML-AAM remaps a <td> to `gridcell` when its nearest\n table ancestor is a grid, so this one attribute does it.\n\n THAT THE REMAP REALLY HAPPENS IS MEASURED, not assumed:\n `audit:axtree` carries a route expectation requiring this page to\n expose at least 28 `gridcell` nodes, and deleting this attribute\n turns it red. An earlier version of that probe checked only\n table-vs-grid CONSISTENCY, which Chromium can never violate — it\n stayed green with this line removed. */\n role=\"grid\"\n aria-label={label ?? strings.month.label}\n onKeyDown={nav.onKeyDown}\n onFocus={() => {\n hasFocusRef.current = true;\n }}\n onBlur={(event) => {\n if (!event.currentTarget.contains(event.relatedTarget as Node | null)) {\n hasFocusRef.current = false;\n nav.leaveCell();\n }\n }}\n >\n <thead>\n <tr>\n {headerDays.map((day) => (\n <th\n key={isoDateString(day)}\n scope=\"col\"\n /* Costs nothing and is what table navigation reads. Nothing\n relies on it: NVDA ignores `abbr`, JAWS has expansion off. */\n abbr={weekdayName(day, \"long\", locale)}\n className={s.headCell()}\n >\n {weekdayName(day, \"short\", locale)}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {plans.map((plan) => (\n <tr key={isoDateString(plan.days[0])}>\n {plan.days.map((day, column) => {\n const key = isoDateString(day);\n const inMonth = isInMonth(day, monthProp);\n const isToday = today ? isSameDate(day, today) : false;\n const isSelected = selectedDate ? isSameDate(day, selectedDate) : false;\n const isFocused = isSameDate(day, nav.focusedDay);\n\n const bars = plan.placed.filter((segment) => segment.startColumn === column);\n const hidden = plan.hiddenByColumn[column];\n /* The count in the accessible name is everything COVERING this\n day, hidden included — a cell that says \"no events\" while\n showing \"+2 more\" is worse than saying nothing. */\n const covering =\n plan.placed.filter((s2) => s2.startColumn <= column && s2.endColumn >= column)\n .length + hidden.length;\n\n return (\n <td\n key={key}\n ref={(node) => {\n if (node) cellRefs.current.set(key, node);\n else cellRefs.current.delete(key);\n }}\n /* ROVING TABINDEX ON THE CELL, never on a control inside it.\n See `use-grid-navigation.ts` for the two screen-reader\n defects that shape rules out. */\n tabIndex={isFocused ? 0 : -1}\n aria-label={cellLabel(day, covering, locale, strings)}\n aria-selected={isSelected || undefined}\n aria-current={isToday ? \"date\" : undefined}\n data-in-month={inMonth ? \"\" : undefined}\n data-today={isToday ? \"\" : undefined}\n className={s.cell()}\n onClick={() => {\n nav.setFocusedDay(day);\n onSelectDate?.(day);\n }}\n onFocus={() => nav.setFocusedDay(day)}\n >\n <div\n className={cn(\n s.cellInner(),\n !inMonth && \"bg-canvas-subtle\",\n isSelected && \"bg-surface-selected\",\n )}\n style={{\n /* Room for every visible bar row plus the link. Fixed\n rather than content-driven so rows do not jump height\n as events are added. */\n paddingBottom: `${Math.max(0, plan.rows) * BAR_ROW_PX + 4}px`,\n }}\n >\n <span\n className={cn(\n s.dayNumber(),\n !inMonth && \"text-tertiary\",\n inMonth && !isToday && \"text-secondary\",\n isToday && \"bg-accent font-semibold text-accent-contrast\",\n )}\n >\n {dayNumber(day, locale)}\n </span>\n\n <div className={s.bars()} style={{ height: `${plan.rows * BAR_ROW_PX}px` }}>\n {bars.map((segment) => {\n const span = segment.endColumn - segment.startColumn + 1;\n const swatch = paletteFor(segment.event.paletteKey);\n return (\n <button\n key={`${segment.event.id}:${segment.row}`}\n type=\"button\"\n tabIndex={nav.insideCell && isFocused ? 0 : -1}\n aria-label={eventLabel(segment.event, zone, strings.colors[swatch.key], locale, strings)}\n className={cn(\n s.bar(),\n /* Only the clipped end loses its radius, so the\n bar reads as continuing rather than ending. */\n !segment.isStart && \"rounded-l-none\",\n !segment.isEnd && \"rounded-r-none\",\n )}\n style={{\n top: `${segment.row * BAR_ROW_PX}px`,\n /* EXACT because the cell's box is exactly one\n seventh of the row — see the file header. */\n width: `calc(${span} * 100% - 8px)`,\n left: \"4px\",\n background: swatch.fill,\n color: swatch.text,\n borderLeft: segment.isStart ? `3px solid ${swatch.edge}` : undefined,\n boxShadow: `inset 0 0 0 1px ${swatch.edge}`,\n }}\n onClick={(clickEvent) => {\n clickEvent.stopPropagation();\n onSelectEvent?.(segment.event);\n }}\n >\n {renderEvent ? (\n renderEvent(segment.event)\n ) : (\n <>\n {!segment.event.allDay && segment.isStart && (\n <span className=\"shrink-0 tabular-nums opacity-80\">\n {timeOfDay(segment.event.start, zone, locale)}\n </span>\n )}\n <span className=\"truncate\">{segment.event.title}</span>\n </>\n )}\n </button>\n );\n })}\n </div>\n\n {hidden.length > 0 && (\n <Popover\n side=\"bottom\"\n align=\"start\"\n trigger={\n <button\n type=\"button\"\n tabIndex={nav.insideCell && isFocused ? 0 : -1}\n className={s.more()}\n aria-label={strings.month.showMore(hidden.length, fmt(hidden.length), cellLabel(day, covering, locale, strings))}\n onClick={(clickEvent) => clickEvent.stopPropagation()}\n >\n {strings.month.more(fmt(hidden.length))}\n </button>\n }\n >\n <div className={s.popoverList()}>\n {hidden.map((event) => {\n const swatch = paletteFor(event.paletteKey);\n return (\n <button\n key={event.id}\n type=\"button\"\n className={cn(s.bar(), \"relative! w-full\")}\n aria-label={eventLabel(event, zone, strings.colors[swatch.key], locale, strings)}\n style={{\n background: swatch.fill,\n color: swatch.text,\n borderLeft: `3px solid ${swatch.edge}`,\n }}\n onClick={() => onSelectEvent?.(event)}\n >\n {!event.allDay && (\n <span className=\"shrink-0 tabular-nums opacity-80\">\n {timeOfDay(event.start, zone, locale)}\n </span>\n )}\n <span className=\"truncate\">{event.title}</span>\n </button>\n );\n })}\n </div>\n </Popover>\n )}\n </div>\n </td>\n );\n })}\n </tr>\n ))}\n </tbody>\n </table>\n <p id={`${gridId}-hint`} className=\"sr-only\">\n {strings.month.keyboardHint}\n </p>\n </div>\n );\n}\n\n/** The first day of the month `date` falls in — re-exported for consumers paging. */\nexport { startOfMonth, addDays };\n"],"names":["month","tv","BAR_ROW_PX","CalendarMonth","monthProp","zone","events","weekStartsOn","today","selectedDate","onSelectDate","onSelectEvent","onMonthChange","maxEventRows","renderEvent","className","label","locale","useUiLocale","fmt","useNumberFormat","strings","useUiStrings","s","gridId","useId","days","useMemo","monthGridDays","weeks","out","i","nav","useGridNavigation","initialFocusDay","cellRefs","useRef","hasFocusRef","useEffect","isoDateString","plans","rowDays","segments","event","segment","allDayBandSegment","timedBandSegment","inputs","index","result","packBand","byKey","input","placed","placement","hiddenByColumn","hiddenItem","c","headerDays","jsxs","cn","jsx","day","weekdayName","plan","column","key","inMonth","isInMonth","isToday","isSameDate","isSelected","isFocused","bars","hidden","covering","s2","node","cellLabel","dayNumber","span","swatch","paletteFor","eventLabel","clickEvent","Fragment","Popover","timeOfDay"],"mappings":"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"}
|