@cueplusplus/ui 0.13.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/CHANGELOG.md +4028 -0
- package/LICENSE +21 -0
- package/NOTICE.md +34 -0
- package/README.md +237 -0
- package/dist/agent-runtime/_glyphs.js +43 -0
- package/dist/agent-runtime/branch-picker.d.ts +45 -0
- package/dist/agent-runtime/branch-picker.js +87 -0
- package/dist/agent-runtime/index.d.ts +4 -0
- package/dist/agent-runtime/index.js +4 -0
- package/dist/agent-runtime/tool-call-card.d.ts +69 -0
- package/dist/agent-runtime/tool-call-card.js +187 -0
- package/dist/agent-runtime/use-agent-thread.d.ts +164 -0
- package/dist/agent-runtime/use-agent-thread.js +251 -0
- package/dist/brand/_chassis.d.ts +54 -0
- package/dist/brand/_chassis.js +81 -0
- package/dist/brand/_geometry.js +41 -0
- package/dist/brand/cue-logotype.d.ts +29 -0
- package/dist/brand/cue-logotype.js +60 -0
- package/dist/brand/cue-mark.d.ts +30 -0
- package/dist/brand/cue-mark.js +61 -0
- package/dist/brand/index.d.ts +5 -0
- package/dist/brand/plussie.d.ts +67 -0
- package/dist/brand/plussie.js +125 -0
- package/dist/charts/_token.js +39 -0
- package/dist/charts/container.d.ts +58 -0
- package/dist/charts/container.js +77 -0
- package/dist/charts/index.d.ts +5 -0
- package/dist/charts/index.js +5 -0
- package/dist/charts/ramps.d.ts +140 -0
- package/dist/charts/ramps.js +615 -0
- package/dist/charts/theme.d.ts +112 -0
- package/dist/charts/theme.js +165 -0
- package/dist/charts/tones.d.ts +111 -0
- package/dist/charts/tones.js +127 -0
- package/dist/chat/_glyphs.js +55 -0
- package/dist/chat/agent-color.d.ts +84 -0
- package/dist/chat/agent-color.js +101 -0
- package/dist/chat/agent-pile.d.ts +55 -0
- package/dist/chat/agent-pile.js +121 -0
- package/dist/chat/ask-box.d.ts +88 -0
- package/dist/chat/ask-box.js +341 -0
- package/dist/chat/composer.d.ts +66 -0
- package/dist/chat/composer.js +144 -0
- package/dist/chat/delegation-card.d.ts +60 -0
- package/dist/chat/delegation-card.js +129 -0
- package/dist/chat/index.d.ts +8 -0
- package/dist/chat/index.js +8 -0
- package/dist/chat/message-list.d.ts +45 -0
- package/dist/chat/message-list.js +141 -0
- package/dist/chat/message.d.ts +47 -0
- package/dist/chat/message.js +108 -0
- package/dist/chrome/_band.js +54 -0
- package/dist/chrome/_drag.js +59 -0
- package/dist/chrome/_edge-scroller.d.ts +45 -0
- package/dist/chrome/_edge-scroller.js +149 -0
- package/dist/chrome/_glyphs.js +119 -0
- package/dist/chrome/_status-bar-item.js +85 -0
- package/dist/chrome/_status-bar.d.ts +15 -0
- package/dist/chrome/_status-bar.js +171 -0
- package/dist/chrome/_tabs-scroll.d.ts +67 -0
- package/dist/chrome/_tabs-scroll.js +73 -0
- package/dist/chrome/_tree.d.ts +75 -0
- package/dist/chrome/_tree.js +49 -0
- package/dist/chrome/app-bar.d.ts +103 -0
- package/dist/chrome/app-bar.js +175 -0
- package/dist/chrome/app-shell.d.ts +243 -0
- package/dist/chrome/app-shell.js +266 -0
- package/dist/chrome/band.d.ts +106 -0
- package/dist/chrome/band.js +97 -0
- package/dist/chrome/empty-state.d.ts +37 -0
- package/dist/chrome/empty-state.js +57 -0
- package/dist/chrome/eyebrow.d.ts +29 -0
- package/dist/chrome/eyebrow.js +36 -0
- package/dist/chrome/footer.d.ts +88 -0
- package/dist/chrome/footer.js +83 -0
- package/dist/chrome/index.d.ts +24 -0
- package/dist/chrome/index.js +22 -0
- package/dist/chrome/inspector.d.ts +61 -0
- package/dist/chrome/inspector.js +121 -0
- package/dist/chrome/navigation-menu.d.ts +80 -0
- package/dist/chrome/navigation-menu.js +121 -0
- package/dist/chrome/page-shell.d.ts +38 -0
- package/dist/chrome/page-shell.js +76 -0
- package/dist/chrome/panel.d.ts +55 -0
- package/dist/chrome/panel.js +67 -0
- package/dist/chrome/row.d.ts +82 -0
- package/dist/chrome/row.js +106 -0
- package/dist/chrome/scroll-area.d.ts +39 -0
- package/dist/chrome/scroll-area.js +70 -0
- package/dist/chrome/section-header.d.ts +42 -0
- package/dist/chrome/section-header.js +79 -0
- package/dist/chrome/segmented-control.d.ts +77 -0
- package/dist/chrome/segmented-control.js +95 -0
- package/dist/chrome/status-bar.d.ts +129 -0
- package/dist/chrome/status-bar.js +120 -0
- package/dist/chrome/tabs.d.ts +80 -0
- package/dist/chrome/tabs.js +132 -0
- package/dist/chrome/title-bar.d.ts +47 -0
- package/dist/chrome/title-bar.js +43 -0
- package/dist/chrome/toolbar.d.ts +68 -0
- package/dist/chrome/toolbar.js +83 -0
- package/dist/chrome/tree.d.ts +98 -0
- package/dist/chrome/tree.js +248 -0
- package/dist/color/_checker.js +14 -0
- package/dist/color/_convert.d.ts +52 -0
- package/dist/color/_convert.js +66 -0
- package/dist/color/_glyphs.js +28 -0
- package/dist/color/_thumb.js +15 -0
- package/dist/color/_value.js +28 -0
- package/dist/color/color-area.d.ts +27 -0
- package/dist/color/color-area.js +40 -0
- package/dist/color/color-field.d.ts +32 -0
- package/dist/color/color-field.js +43 -0
- package/dist/color/color-picker.d.ts +71 -0
- package/dist/color/color-picker.js +178 -0
- package/dist/color/color-slider.d.ts +31 -0
- package/dist/color/color-slider.js +51 -0
- package/dist/color/color-swatch.d.ts +32 -0
- package/dist/color/color-swatch.js +44 -0
- package/dist/color/index.d.ts +7 -0
- package/dist/color/index.js +7 -0
- package/dist/configurator/_export.d.ts +78 -0
- package/dist/configurator/_export.js +302 -0
- package/dist/configurator/_glyphs.js +92 -0
- package/dist/configurator/_overrides.d.ts +266 -0
- package/dist/configurator/_overrides.js +541 -0
- package/dist/configurator/configurator.d.ts +71 -0
- package/dist/configurator/configurator.js +284 -0
- package/dist/configurator/export-dialog.d.ts +30 -0
- package/dist/configurator/export-dialog.js +121 -0
- package/dist/configurator/index.d.ts +8 -0
- package/dist/configurator/index.js +8 -0
- package/dist/configurator/panel-sections.d.ts +86 -0
- package/dist/configurator/panel-sections.js +352 -0
- package/dist/configurator/token-editor.d.ts +74 -0
- package/dist/configurator/token-editor.js +152 -0
- package/dist/configurator/use-zoom.d.ts +87 -0
- package/dist/configurator/use-zoom.js +113 -0
- package/dist/date/_glyphs.js +34 -0
- package/dist/date/_segments.js +101 -0
- package/dist/date/_trigger.js +31 -0
- package/dist/date/calendar.d.ts +25 -0
- package/dist/date/calendar.js +125 -0
- package/dist/date/date-field.d.ts +34 -0
- package/dist/date/date-field.js +41 -0
- package/dist/date/date-picker.d.ts +69 -0
- package/dist/date/date-picker.js +89 -0
- package/dist/date/date-range-picker.d.ts +65 -0
- package/dist/date/date-range-picker.js +92 -0
- package/dist/date/index.d.ts +6 -0
- package/dist/date/index.js +6 -0
- package/dist/date/time-field.d.ts +29 -0
- package/dist/date/time-field.js +36 -0
- package/dist/dmx/_ramp.d.ts +77 -0
- package/dist/dmx/_ramp.js +169 -0
- package/dist/dmx/_readout.js +53 -0
- package/dist/dmx/_universe.d.ts +105 -0
- package/dist/dmx/_universe.js +112 -0
- package/dist/dmx/channel-matrix.d.ts +81 -0
- package/dist/dmx/channel-matrix.js +285 -0
- package/dist/dmx/dmx-bar.d.ts +50 -0
- package/dist/dmx/dmx-bar.js +107 -0
- package/dist/dmx/dmx-strip.d.ts +41 -0
- package/dist/dmx/dmx-strip.js +196 -0
- package/dist/dmx/index.d.ts +7 -0
- package/dist/dmx/index.js +7 -0
- package/dist/dmx/universe-grid.d.ts +61 -0
- package/dist/dmx/universe-grid.js +182 -0
- package/dist/elements/activity-graph.d.ts +40 -0
- package/dist/elements/activity-graph.js +81 -0
- package/dist/elements/agent-card.d.ts +49 -0
- package/dist/elements/agent-card.js +91 -0
- package/dist/elements/agent-handoff.d.ts +24 -0
- package/dist/elements/agent-handoff.js +53 -0
- package/dist/elements/agent-mode-badge.d.ts +72 -0
- package/dist/elements/agent-mode-badge.js +110 -0
- package/dist/elements/agent-plan.d.ts +24 -0
- package/dist/elements/agent-plan.js +74 -0
- package/dist/elements/agent-status.d.ts +29 -0
- package/dist/elements/agent-status.js +46 -0
- package/dist/elements/agent-surface.d.ts +65 -0
- package/dist/elements/agent-surface.js +68 -0
- package/dist/elements/animated-number.d.ts +86 -0
- package/dist/elements/animated-number.js +118 -0
- package/dist/elements/approval-card.d.ts +40 -0
- package/dist/elements/approval-card.js +78 -0
- package/dist/elements/artifact-card.d.ts +30 -0
- package/dist/elements/artifact-card.js +58 -0
- package/dist/elements/background-inbox.d.ts +39 -0
- package/dist/elements/background-inbox.js +60 -0
- package/dist/elements/canvas-split.d.ts +77 -0
- package/dist/elements/canvas-split.js +138 -0
- package/dist/elements/chart.d.ts +41 -0
- package/dist/elements/chart.js +117 -0
- package/dist/elements/chat-panel.d.ts +46 -0
- package/dist/elements/chat-panel.js +104 -0
- package/dist/elements/checkpoint-history.d.ts +31 -0
- package/dist/elements/checkpoint-history.js +65 -0
- package/dist/elements/clamp.d.ts +90 -0
- package/dist/elements/clamp.js +109 -0
- package/dist/elements/code-diff.d.ts +42 -0
- package/dist/elements/code-diff.js +69 -0
- package/dist/elements/code-runner.d.ts +38 -0
- package/dist/elements/code-runner.js +84 -0
- package/dist/elements/command-palette.d.ts +48 -0
- package/dist/elements/command-palette.js +129 -0
- package/dist/elements/compaction-row.d.ts +63 -0
- package/dist/elements/compaction-row.js +110 -0
- package/dist/elements/comparison-card.d.ts +47 -0
- package/dist/elements/comparison-card.js +69 -0
- package/dist/elements/composer.d.ts +274 -0
- package/dist/elements/composer.js +505 -0
- package/dist/elements/computer-use.d.ts +40 -0
- package/dist/elements/computer-use.js +92 -0
- package/dist/elements/confidence-marker.d.ts +39 -0
- package/dist/elements/confidence-marker.js +64 -0
- package/dist/elements/connection-state.d.ts +29 -0
- package/dist/elements/connection-state.js +66 -0
- package/dist/elements/context-breakdown.d.ts +30 -0
- package/dist/elements/context-breakdown.js +86 -0
- package/dist/elements/context-usage.d.ts +99 -0
- package/dist/elements/context-usage.js +225 -0
- package/dist/elements/conversation-search.d.ts +48 -0
- package/dist/elements/conversation-search.js +88 -0
- package/dist/elements/cost-meter.d.ts +33 -0
- package/dist/elements/cost-meter.js +75 -0
- package/dist/elements/data-table.d.ts +31 -0
- package/dist/elements/data-table.js +67 -0
- package/dist/elements/day-separator.d.ts +34 -0
- package/dist/elements/day-separator.js +50 -0
- package/dist/elements/diagram.d.ts +34 -0
- package/dist/elements/diagram.js +75 -0
- package/dist/elements/document-reference.d.ts +37 -0
- package/dist/elements/document-reference.js +66 -0
- package/dist/elements/draft-restore.d.ts +27 -0
- package/dist/elements/draft-restore.js +54 -0
- package/dist/elements/edit-message.d.ts +36 -0
- package/dist/elements/edit-message.js +77 -0
- package/dist/elements/elements.css +459 -0
- package/dist/elements/elicitation-form.d.ts +48 -0
- package/dist/elements/elicitation-form.js +106 -0
- package/dist/elements/empty-state.d.ts +52 -0
- package/dist/elements/empty-state.js +98 -0
- package/dist/elements/end-of-turn-summary.d.ts +60 -0
- package/dist/elements/end-of-turn-summary.js +75 -0
- package/dist/elements/error-state.d.ts +29 -0
- package/dist/elements/error-state.js +55 -0
- package/dist/elements/feedback-dialog.d.ts +36 -0
- package/dist/elements/feedback-dialog.js +81 -0
- package/dist/elements/file-tree.d.ts +45 -0
- package/dist/elements/file-tree.js +84 -0
- package/dist/elements/flow-graph.d.ts +45 -0
- package/dist/elements/flow-graph.js +78 -0
- package/dist/elements/generative/chart.js +200 -0
- package/dist/elements/generative/faults.js +111 -0
- package/dist/elements/generative/icons.d.ts +41 -0
- package/dist/elements/generative/icons.js +190 -0
- package/dist/elements/generative/intrinsics.js +483 -0
- package/dist/elements/generative/spec.d.ts +110 -0
- package/dist/elements/generative/spec.js +366 -0
- package/dist/elements/generative.css +1145 -0
- package/dist/elements/generative.d.ts +144 -0
- package/dist/elements/generative.js +126 -0
- package/dist/elements/guardrail-notice.d.ts +29 -0
- package/dist/elements/guardrail-notice.js +63 -0
- package/dist/elements/image-generation.d.ts +18 -0
- package/dist/elements/image-generation.js +64 -0
- package/dist/elements/index.d.ts +116 -0
- package/dist/elements/index.js +115 -0
- package/dist/elements/inline-citation.d.ts +43 -0
- package/dist/elements/inline-citation.js +93 -0
- package/dist/elements/job-progress.d.ts +49 -0
- package/dist/elements/job-progress.js +74 -0
- package/dist/elements/launcher-bubble.d.ts +34 -0
- package/dist/elements/launcher-bubble.js +72 -0
- package/dist/elements/live-region-announcer.d.ts +130 -0
- package/dist/elements/live-region-announcer.js +230 -0
- package/dist/elements/loading-state.d.ts +27 -0
- package/dist/elements/loading-state.js +36 -0
- package/dist/elements/map-answer.d.ts +38 -0
- package/dist/elements/map-answer.js +93 -0
- package/dist/elements/markdown.d.ts +131 -0
- package/dist/elements/markdown.js +528 -0
- package/dist/elements/math-block.d.ts +51 -0
- package/dist/elements/math-block.js +70 -0
- package/dist/elements/mcp-server-panel.d.ts +41 -0
- package/dist/elements/mcp-server-panel.js +115 -0
- package/dist/elements/memory-chips.d.ts +30 -0
- package/dist/elements/memory-chips.js +43 -0
- package/dist/elements/message-actions.d.ts +38 -0
- package/dist/elements/message-actions.js +71 -0
- package/dist/elements/message-attachment.d.ts +48 -0
- package/dist/elements/message-attachment.js +63 -0
- package/dist/elements/message-branches.d.ts +25 -0
- package/dist/elements/message-branches.js +65 -0
- package/dist/elements/message-pair.d.ts +33 -0
- package/dist/elements/message-pair.js +65 -0
- package/dist/elements/message-queue.d.ts +31 -0
- package/dist/elements/message-queue.js +80 -0
- package/dist/elements/message-timing.d.ts +33 -0
- package/dist/elements/message-timing.js +37 -0
- package/dist/elements/mobile-composer.d.ts +44 -0
- package/dist/elements/mobile-composer.js +88 -0
- package/dist/elements/model-picker.d.ts +38 -0
- package/dist/elements/model-picker.js +69 -0
- package/dist/elements/number-ticker.d.ts +18 -0
- package/dist/elements/number-ticker.js +47 -0
- package/dist/elements/onboarding.d.ts +30 -0
- package/dist/elements/onboarding.js +75 -0
- package/dist/elements/permission-grant.d.ts +35 -0
- package/dist/elements/permission-grant.js +86 -0
- package/dist/elements/permission-scopes.d.ts +215 -0
- package/dist/elements/permission-scopes.js +249 -0
- package/dist/elements/prompt-library.d.ts +43 -0
- package/dist/elements/prompt-library.js +117 -0
- package/dist/elements/queue-dock.d.ts +101 -0
- package/dist/elements/queue-dock.js +132 -0
- package/dist/elements/quota-banner.d.ts +26 -0
- package/dist/elements/quota-banner.js +66 -0
- package/dist/elements/quote-reply.d.ts +44 -0
- package/dist/elements/quote-reply.js +79 -0
- package/dist/elements/range.d.ts +29 -0
- package/dist/elements/range.js +45 -0
- package/dist/elements/read-aloud.d.ts +45 -0
- package/dist/elements/read-aloud.js +75 -0
- package/dist/elements/reasoning-effort.d.ts +36 -0
- package/dist/elements/reasoning-effort.js +67 -0
- package/dist/elements/reasoning-panel.d.ts +46 -0
- package/dist/elements/reasoning-panel.js +75 -0
- package/dist/elements/recommendation-card.d.ts +45 -0
- package/dist/elements/recommendation-card.js +83 -0
- package/dist/elements/regenerate-menu.d.ts +45 -0
- package/dist/elements/regenerate-menu.js +51 -0
- package/dist/elements/replay.d.ts +217 -0
- package/dist/elements/replay.js +498 -0
- package/dist/elements/research-report.d.ts +38 -0
- package/dist/elements/research-report.js +69 -0
- package/dist/elements/retrieval-chunks.d.ts +43 -0
- package/dist/elements/retrieval-chunks.js +81 -0
- package/dist/elements/revert-dock.d.ts +159 -0
- package/dist/elements/revert-dock.js +327 -0
- package/dist/elements/reviewable-diff.d.ts +45 -0
- package/dist/elements/reviewable-diff.js +110 -0
- package/dist/elements/risk-badge.d.ts +52 -0
- package/dist/elements/risk-badge.js +91 -0
- package/dist/elements/schedule-card.d.ts +42 -0
- package/dist/elements/schedule-card.js +90 -0
- package/dist/elements/score-breakdown.d.ts +47 -0
- package/dist/elements/score-breakdown.js +82 -0
- package/dist/elements/scroll-anchor.d.ts +32 -0
- package/dist/elements/scroll-anchor.js +123 -0
- package/dist/elements/settings-panel.d.ts +52 -0
- package/dist/elements/settings-panel.js +107 -0
- package/dist/elements/shared-conversation.d.ts +39 -0
- package/dist/elements/shared-conversation.js +68 -0
- package/dist/elements/sources.d.ts +33 -0
- package/dist/elements/sources.js +61 -0
- package/dist/elements/speaker-identity.d.ts +32 -0
- package/dist/elements/speaker-identity.js +51 -0
- package/dist/elements/spec-sheet.d.ts +31 -0
- package/dist/elements/spec-sheet.js +45 -0
- package/dist/elements/stopped-run.d.ts +22 -0
- package/dist/elements/stopped-run.js +50 -0
- package/dist/elements/streaming-text.d.ts +31 -0
- package/dist/elements/streaming-text.js +45 -0
- package/dist/elements/subagent-list.d.ts +37 -0
- package/dist/elements/subagent-list.js +79 -0
- package/dist/elements/suggestions.d.ts +30 -0
- package/dist/elements/suggestions.js +36 -0
- package/dist/elements/surfaces.d.ts +85 -0
- package/dist/elements/surfaces.js +108 -0
- package/dist/elements/tail-status.d.ts +131 -0
- package/dist/elements/tail-status.js +94 -0
- package/dist/elements/terminal-block.d.ts +29 -0
- package/dist/elements/terminal-block.js +54 -0
- package/dist/elements/thinking-indicator.d.ts +18 -0
- package/dist/elements/thinking-indicator.js +36 -0
- package/dist/elements/thread-list.d.ts +35 -0
- package/dist/elements/thread-list.js +68 -0
- package/dist/elements/thread-search.d.ts +42 -0
- package/dist/elements/thread-search.js +99 -0
- package/dist/elements/timeline.d.ts +37 -0
- package/dist/elements/timeline.js +46 -0
- package/dist/elements/todo-list.d.ts +42 -0
- package/dist/elements/todo-list.js +59 -0
- package/dist/elements/tool-call.d.ts +41 -0
- package/dist/elements/tool-call.js +85 -0
- package/dist/elements/tool-error.d.ts +39 -0
- package/dist/elements/tool-error.js +76 -0
- package/dist/elements/tool-group.d.ts +45 -0
- package/dist/elements/tool-group.js +71 -0
- package/dist/elements/tool-timeline.d.ts +65 -0
- package/dist/elements/tool-timeline.js +88 -0
- package/dist/elements/trace-waterfall.d.ts +37 -0
- package/dist/elements/trace-waterfall.js +69 -0
- package/dist/elements/transcript-rules.d.ts +67 -0
- package/dist/elements/transcript-rules.js +95 -0
- package/dist/elements/turn-footer.d.ts +74 -0
- package/dist/elements/turn-footer.js +101 -0
- package/dist/elements/typing-indicator.d.ts +16 -0
- package/dist/elements/typing-indicator.js +51 -0
- package/dist/elements/verdict-row.d.ts +89 -0
- package/dist/elements/verdict-row.js +150 -0
- package/dist/elements/vocabulary.d.ts +612 -0
- package/dist/elements/vocabulary.js +611 -0
- package/dist/elements/voice-conversation.d.ts +49 -0
- package/dist/elements/voice-conversation.js +123 -0
- package/dist/elements/web-preview.d.ts +32 -0
- package/dist/elements/web-preview.js +66 -0
- package/dist/elements/web-search.d.ts +37 -0
- package/dist/elements/web-search.js +66 -0
- package/dist/elements/work-collapse.d.ts +103 -0
- package/dist/elements/work-collapse.js +131 -0
- package/dist/flow/_frame.d.ts +52 -0
- package/dist/flow/_frame.js +38 -0
- package/dist/flow/controls.d.ts +41 -0
- package/dist/flow/controls.js +53 -0
- package/dist/flow/flow.css +121 -0
- package/dist/flow/handles.d.ts +40 -0
- package/dist/flow/handles.js +61 -0
- package/dist/flow/index.d.ts +7 -0
- package/dist/flow/index.js +7 -0
- package/dist/flow/node-card.d.ts +71 -0
- package/dist/flow/node-card.js +102 -0
- package/dist/flow/signal-edge.d.ts +60 -0
- package/dist/flow/signal-edge.js +108 -0
- package/dist/flow/use-flow-theme.d.ts +69 -0
- package/dist/flow/use-flow-theme.js +109 -0
- package/dist/forms/_chassis.d.ts +164 -0
- package/dist/forms/_chassis.js +159 -0
- package/dist/forms/_glyphs.js +143 -0
- package/dist/forms/_listbox.js +55 -0
- package/dist/forms/autocomplete.d.ts +61 -0
- package/dist/forms/autocomplete.js +88 -0
- package/dist/forms/button-group.d.ts +47 -0
- package/dist/forms/button-group.js +52 -0
- package/dist/forms/checkbox.d.ts +51 -0
- package/dist/forms/checkbox.js +98 -0
- package/dist/forms/combobox.d.ts +73 -0
- package/dist/forms/combobox.js +108 -0
- package/dist/forms/env-var-input.d.ts +74 -0
- package/dist/forms/env-var-input.js +116 -0
- package/dist/forms/field.d.ts +89 -0
- package/dist/forms/field.js +102 -0
- package/dist/forms/file-upload.d.ts +113 -0
- package/dist/forms/file-upload.js +232 -0
- package/dist/forms/index.d.ts +26 -0
- package/dist/forms/index.js +26 -0
- package/dist/forms/input-group.d.ts +36 -0
- package/dist/forms/input-group.js +59 -0
- package/dist/forms/input.d.ts +45 -0
- package/dist/forms/input.js +36 -0
- package/dist/forms/multi-select.d.ts +62 -0
- package/dist/forms/multi-select.js +107 -0
- package/dist/forms/number-field.d.ts +39 -0
- package/dist/forms/number-field.js +65 -0
- package/dist/forms/otp-field.d.ts +54 -0
- package/dist/forms/otp-field.js +59 -0
- package/dist/forms/password-input.d.ts +46 -0
- package/dist/forms/password-input.js +62 -0
- package/dist/forms/radio-group.d.ts +50 -0
- package/dist/forms/radio-group.js +64 -0
- package/dist/forms/rating.d.ts +69 -0
- package/dist/forms/rating.js +103 -0
- package/dist/forms/scrub-input.d.ts +81 -0
- package/dist/forms/scrub-input.js +249 -0
- package/dist/forms/search-input.d.ts +54 -0
- package/dist/forms/search-input.js +112 -0
- package/dist/forms/select.d.ts +75 -0
- package/dist/forms/select.js +91 -0
- package/dist/forms/slider.d.ts +44 -0
- package/dist/forms/slider.js +65 -0
- package/dist/forms/switch.d.ts +36 -0
- package/dist/forms/switch.js +71 -0
- package/dist/forms/tags-input.d.ts +69 -0
- package/dist/forms/tags-input.js +148 -0
- package/dist/forms/textarea.d.ts +39 -0
- package/dist/forms/textarea.js +37 -0
- package/dist/forms/toggle-group.d.ts +41 -0
- package/dist/forms/toggle-group.js +56 -0
- package/dist/forms/toggle.d.ts +47 -0
- package/dist/forms/toggle.js +100 -0
- package/dist/icons/containers.d.ts +89 -0
- package/dist/icons/containers.js +295 -0
- package/dist/icons/index.d.ts +2 -0
- package/dist/index.d.ts +138 -0
- package/dist/index.js +124 -0
- package/dist/instruments/_ansi.js +116 -0
- package/dist/instruments/_data-row.d.ts +68 -0
- package/dist/instruments/_data-row.js +139 -0
- package/dist/instruments/_glyphs.js +90 -0
- package/dist/instruments/_ledger-disclosure.js +103 -0
- package/dist/instruments/_ledger.d.ts +21 -0
- package/dist/instruments/_ledger.js +5 -0
- package/dist/instruments/_motion.js +56 -0
- package/dist/instruments/_rem.js +21 -0
- package/dist/instruments/app-window-frame.d.ts +48 -0
- package/dist/instruments/app-window-frame.js +76 -0
- package/dist/instruments/code-block.d.ts +35 -0
- package/dist/instruments/code-block.js +173 -0
- package/dist/instruments/copy-button.d.ts +41 -0
- package/dist/instruments/copy-button.js +112 -0
- package/dist/instruments/data-row.d.ts +94 -0
- package/dist/instruments/data-row.js +151 -0
- package/dist/instruments/data-table.d.ts +168 -0
- package/dist/instruments/data-table.js +212 -0
- package/dist/instruments/data-tree.d.ts +126 -0
- package/dist/instruments/data-tree.js +303 -0
- package/dist/instruments/group-bar.d.ts +63 -0
- package/dist/instruments/group-bar.js +122 -0
- package/dist/instruments/index.d.ts +18 -0
- package/dist/instruments/index.js +18 -0
- package/dist/instruments/ledger.d.ts +204 -0
- package/dist/instruments/ledger.js +204 -0
- package/dist/instruments/log-viewer.d.ts +74 -0
- package/dist/instruments/log-viewer.js +215 -0
- package/dist/instruments/meter.d.ts +81 -0
- package/dist/instruments/meter.js +96 -0
- package/dist/instruments/progress.d.ts +61 -0
- package/dist/instruments/progress.js +79 -0
- package/dist/instruments/seam-grid.d.ts +66 -0
- package/dist/instruments/seam-grid.js +78 -0
- package/dist/instruments/sparkline.d.ts +39 -0
- package/dist/instruments/sparkline.js +85 -0
- package/dist/instruments/stat.d.ts +35 -0
- package/dist/instruments/stat.js +59 -0
- package/dist/instruments/table.d.ts +170 -0
- package/dist/instruments/table.js +237 -0
- package/dist/instruments/terminal-frame.d.ts +89 -0
- package/dist/instruments/terminal-frame.js +256 -0
- package/dist/instruments/two-step-button.d.ts +47 -0
- package/dist/instruments/two-step-button.js +166 -0
- package/dist/instruments/usage-chart.d.ts +55 -0
- package/dist/instruments/usage-chart.js +235 -0
- package/dist/layout/_collapse.js +46 -0
- package/dist/layout/_glyphs.js +45 -0
- package/dist/layout/_ground.d.ts +22 -0
- package/dist/layout/_ground.js +9 -0
- package/dist/layout/accordion.d.ts +52 -0
- package/dist/layout/accordion.js +81 -0
- package/dist/layout/bento.d.ts +144 -0
- package/dist/layout/bento.js +266 -0
- package/dist/layout/breadcrumb.d.ts +35 -0
- package/dist/layout/breadcrumb.js +67 -0
- package/dist/layout/card.d.ts +51 -0
- package/dist/layout/card.js +76 -0
- package/dist/layout/carousel.d.ts +96 -0
- package/dist/layout/carousel.js +211 -0
- package/dist/layout/collapsible.d.ts +74 -0
- package/dist/layout/collapsible.js +126 -0
- package/dist/layout/container.d.ts +27 -0
- package/dist/layout/container.js +43 -0
- package/dist/layout/description-list.d.ts +24 -0
- package/dist/layout/description-list.js +37 -0
- package/dist/layout/frames.d.ts +70 -0
- package/dist/layout/frames.js +298 -0
- package/dist/layout/grid.d.ts +40 -0
- package/dist/layout/grid.js +48 -0
- package/dist/layout/index.d.ts +19 -0
- package/dist/layout/index.js +18 -0
- package/dist/layout/item.d.ts +65 -0
- package/dist/layout/item.js +100 -0
- package/dist/layout/link.d.ts +48 -0
- package/dist/layout/link.js +63 -0
- package/dist/layout/pagination.d.ts +54 -0
- package/dist/layout/pagination.js +121 -0
- package/dist/layout/preview.d.ts +177 -0
- package/dist/layout/preview.js +628 -0
- package/dist/layout/resizable.d.ts +38 -0
- package/dist/layout/resizable.js +68 -0
- package/dist/layout/sidebar.d.ts +105 -0
- package/dist/layout/sidebar.js +158 -0
- package/dist/layout/stack.d.ts +46 -0
- package/dist/layout/stack.js +62 -0
- package/dist/layout/stepper.d.ts +49 -0
- package/dist/layout/stepper.js +81 -0
- package/dist/layout/timeline.d.ts +43 -0
- package/dist/layout/timeline.js +63 -0
- package/dist/lib/aria-class.js +24 -0
- package/dist/lib/cn.js +18 -0
- package/dist/lib/compose.js +38 -0
- package/dist/lib/cva.d.ts +18 -0
- package/dist/lib/cva.js +65 -0
- package/dist/midi/_notes.d.ts +101 -0
- package/dist/midi/_notes.js +183 -0
- package/dist/midi/_ruler.d.ts +100 -0
- package/dist/midi/_ruler.js +105 -0
- package/dist/midi/_time.d.ts +107 -0
- package/dist/midi/_time.js +130 -0
- package/dist/midi/index.d.ts +9 -0
- package/dist/midi/index.js +9 -0
- package/dist/midi/musical-time-input.d.ts +48 -0
- package/dist/midi/musical-time-input.js +154 -0
- package/dist/midi/piano-keyboard.d.ts +50 -0
- package/dist/midi/piano-keyboard.js +197 -0
- package/dist/midi/spectrum-visualizer.d.ts +65 -0
- package/dist/midi/spectrum-visualizer.js +213 -0
- package/dist/midi/threshold-rail.d.ts +72 -0
- package/dist/midi/threshold-rail.js +214 -0
- package/dist/midi/timeline-ruler.d.ts +83 -0
- package/dist/midi/timeline-ruler.js +152 -0
- package/dist/overlays/_debounce.js +34 -0
- package/dist/overlays/_glyphs.js +59 -0
- package/dist/overlays/_surface.d.ts +70 -0
- package/dist/overlays/_surface.js +70 -0
- package/dist/overlays/_wheel.js +42 -0
- package/dist/overlays/alert-dialog.d.ts +67 -0
- package/dist/overlays/alert-dialog.js +117 -0
- package/dist/overlays/command-palette.d.ts +93 -0
- package/dist/overlays/command-palette.js +193 -0
- package/dist/overlays/context-menu.d.ts +64 -0
- package/dist/overlays/context-menu.js +78 -0
- package/dist/overlays/dialog.d.ts +72 -0
- package/dist/overlays/dialog.js +124 -0
- package/dist/overlays/drawer.d.ts +75 -0
- package/dist/overlays/drawer.js +151 -0
- package/dist/overlays/dropdown-menu.d.ts +79 -0
- package/dist/overlays/dropdown-menu.js +156 -0
- package/dist/overlays/hover-card.d.ts +58 -0
- package/dist/overlays/hover-card.js +91 -0
- package/dist/overlays/index.d.ts +15 -0
- package/dist/overlays/index.js +15 -0
- package/dist/overlays/info-tip.d.ts +41 -0
- package/dist/overlays/info-tip.js +45 -0
- package/dist/overlays/menubar.d.ts +72 -0
- package/dist/overlays/menubar.js +100 -0
- package/dist/overlays/popover.d.ts +66 -0
- package/dist/overlays/popover.js +114 -0
- package/dist/overlays/sheet.d.ts +78 -0
- package/dist/overlays/sheet.js +131 -0
- package/dist/overlays/toast.d.ts +106 -0
- package/dist/overlays/toast.js +146 -0
- package/dist/overlays/tooltip.d.ts +57 -0
- package/dist/overlays/tooltip.js +95 -0
- package/dist/primitives/avatar.d.ts +51 -0
- package/dist/primitives/avatar.js +93 -0
- package/dist/primitives/button.d.ts +58 -0
- package/dist/primitives/button.js +104 -0
- package/dist/primitives/chip.d.ts +73 -0
- package/dist/primitives/chip.js +238 -0
- package/dist/primitives/icon-button.d.ts +41 -0
- package/dist/primitives/icon-button.js +59 -0
- package/dist/primitives/index.d.ts +10 -0
- package/dist/primitives/index.js +10 -0
- package/dist/primitives/kbd.d.ts +17 -0
- package/dist/primitives/kbd.js +24 -0
- package/dist/primitives/separator.d.ts +25 -0
- package/dist/primitives/separator.js +30 -0
- package/dist/primitives/skeleton.d.ts +20 -0
- package/dist/primitives/skeleton.js +27 -0
- package/dist/primitives/spinner.d.ts +26 -0
- package/dist/primitives/spinner.js +31 -0
- package/dist/primitives/status-dot.d.ts +51 -0
- package/dist/primitives/status-dot.js +57 -0
- package/dist/styles.css +97 -0
- package/dist/system/agent-skin.d.ts +27 -0
- package/dist/system/agent-skin.js +20 -0
- package/dist/system/density.d.ts +73 -0
- package/dist/system/density.js +111 -0
- package/dist/system/index.d.ts +12 -0
- package/dist/system/index.js +10 -0
- package/dist/system/overrides.d.ts +80 -0
- package/dist/system/overrides.js +277 -0
- package/dist/system/portal.d.ts +56 -0
- package/dist/system/portal.js +193 -0
- package/dist/system/prepaint.d.ts +134 -0
- package/dist/system/prepaint.js +120 -0
- package/dist/system/theme-provider.d.ts +290 -0
- package/dist/system/theme-provider.js +543 -0
- package/dist/system/theme-registry.d.ts +53 -0
- package/dist/system/theme-registry.js +66 -0
- package/dist/system/use-density.d.ts +50 -0
- package/dist/system/use-density.js +232 -0
- package/dist/system/use-isomorphic-layout-effect.js +33 -0
- package/dist/system/use-theme.d.ts +30 -0
- package/dist/system/use-theme.js +36 -0
- package/dist/system/vocabulary.d.ts +16 -0
- package/dist/system/vocabulary.js +125 -0
- package/dist/theming/contrast.d.ts +2 -0
- package/dist/theming/contrast.js +2 -0
- package/dist/theming/create-theme.d.ts +195 -0
- package/dist/theming/create-theme.js +524 -0
- package/dist/theming/index.d.ts +4 -0
- package/dist/theming/index.js +4 -0
- package/dist/theming/serialize.d.ts +167 -0
- package/dist/theming/serialize.js +241 -0
- package/manifest/components/accordion.json +173 -0
- package/manifest/components/activity-graph.json +104 -0
- package/manifest/components/agent-card.json +150 -0
- package/manifest/components/agent-handoff.json +104 -0
- package/manifest/components/agent-mode-badge.json +102 -0
- package/manifest/components/agent-pile.json +147 -0
- package/manifest/components/agent-plan.json +74 -0
- package/manifest/components/agent-status.json +87 -0
- package/manifest/components/agent-surface.json +93 -0
- package/manifest/components/alert-dialog.json +215 -0
- package/manifest/components/animated-number.json +75 -0
- package/manifest/components/app-bar.json +297 -0
- package/manifest/components/app-shell.json +526 -0
- package/manifest/components/app-window-frame.json +124 -0
- package/manifest/components/approval-card.json +136 -0
- package/manifest/components/artifact-card.json +93 -0
- package/manifest/components/ask-box.json +288 -0
- package/manifest/components/audience-icon.json +46 -0
- package/manifest/components/autocomplete.json +262 -0
- package/manifest/components/avatar-group.json +83 -0
- package/manifest/components/avatar.json +113 -0
- package/manifest/components/background-inbox.json +79 -0
- package/manifest/components/band.json +104 -0
- package/manifest/components/bento.json +306 -0
- package/manifest/components/branch-picker.json +146 -0
- package/manifest/components/breadcrumb.json +85 -0
- package/manifest/components/button-group.json +91 -0
- package/manifest/components/button.json +163 -0
- package/manifest/components/calendar.json +65 -0
- package/manifest/components/canvas-split-body.json +66 -0
- package/manifest/components/canvas-split-document.json +55 -0
- package/manifest/components/canvas-split-header.json +97 -0
- package/manifest/components/canvas-split-line.json +66 -0
- package/manifest/components/canvas-split-message.json +70 -0
- package/manifest/components/canvas-split-thread.json +55 -0
- package/manifest/components/canvas-split.json +61 -0
- package/manifest/components/card.json +152 -0
- package/manifest/components/carousel.json +242 -0
- package/manifest/components/catalogue-icon.json +46 -0
- package/manifest/components/channel-beta-icon.json +46 -0
- package/manifest/components/channel-matrix.json +239 -0
- package/manifest/components/channel-released-icon.json +46 -0
- package/manifest/components/chart-container.json +127 -0
- package/manifest/components/chart-ramp.json +82 -0
- package/manifest/components/chart-swatch.json +72 -0
- package/manifest/components/chart-tooltip-content.json +140 -0
- package/manifest/components/chart.json +117 -0
- package/manifest/components/chat-empty-state.json +55 -0
- package/manifest/components/chat-panel-assistant-message.json +52 -0
- package/manifest/components/chat-panel-composer.json +74 -0
- package/manifest/components/chat-panel-messages.json +52 -0
- package/manifest/components/chat-panel-typing.json +52 -0
- package/manifest/components/chat-panel-user-message.json +52 -0
- package/manifest/components/chat-panel.json +58 -0
- package/manifest/components/checkbox-group.json +70 -0
- package/manifest/components/checkbox.json +106 -0
- package/manifest/components/checkpoint-history.json +91 -0
- package/manifest/components/chip.json +174 -0
- package/manifest/components/clamp.json +125 -0
- package/manifest/components/cli-tool-icon.json +46 -0
- package/manifest/components/code-block.json +107 -0
- package/manifest/components/code-diff.json +104 -0
- package/manifest/components/code-runner.json +124 -0
- package/manifest/components/collapsible.json +133 -0
- package/manifest/components/color-area.json +62 -0
- package/manifest/components/color-field.json +91 -0
- package/manifest/components/color-picker.json +235 -0
- package/manifest/components/color-slider.json +84 -0
- package/manifest/components/color-swatch.json +79 -0
- package/manifest/components/colors-section.json +70 -0
- package/manifest/components/combobox.json +265 -0
- package/manifest/components/command-palette.json +222 -0
- package/manifest/components/compaction-row.json +128 -0
- package/manifest/components/comparison-card.json +98 -0
- package/manifest/components/composer-actions.json +65 -0
- package/manifest/components/composer-attach-button.json +65 -0
- package/manifest/components/composer-attachment-chip.json +83 -0
- package/manifest/components/composer-attachments.json +60 -0
- package/manifest/components/composer-bar.json +76 -0
- package/manifest/components/composer-command-item.json +85 -0
- package/manifest/components/composer-context.json +71 -0
- package/manifest/components/composer-input.json +77 -0
- package/manifest/components/composer-menu-item.json +75 -0
- package/manifest/components/composer-menu.json +89 -0
- package/manifest/components/composer-model-item.json +82 -0
- package/manifest/components/composer-model-trigger.json +81 -0
- package/manifest/components/composer-person-item.json +86 -0
- package/manifest/components/composer-send.json +86 -0
- package/manifest/components/composer-toolbar.json +65 -0
- package/manifest/components/composer-voice-button.json +71 -0
- package/manifest/components/composer-voice.json +81 -0
- package/manifest/components/composer.json +238 -0
- package/manifest/components/computer-use.json +98 -0
- package/manifest/components/confidence-marker.json +86 -0
- package/manifest/components/connection-state.json +103 -0
- package/manifest/components/container.json +75 -0
- package/manifest/components/context-breakdown.json +72 -0
- package/manifest/components/context-menu.json +134 -0
- package/manifest/components/context-usage.json +98 -0
- package/manifest/components/conversation-search.json +111 -0
- package/manifest/components/copy-button.json +118 -0
- package/manifest/components/cost-meter.json +84 -0
- package/manifest/components/cue-logotype.json +110 -0
- package/manifest/components/cue-mark.json +111 -0
- package/manifest/components/cue-portal-frame.json +65 -0
- package/manifest/components/data-row.json +222 -0
- package/manifest/components/data-table-pagination.json +97 -0
- package/manifest/components/data-table-toolbar.json +127 -0
- package/manifest/components/data-tree.json +185 -0
- package/manifest/components/date-field.json +93 -0
- package/manifest/components/date-picker.json +255 -0
- package/manifest/components/date-range-picker.json +255 -0
- package/manifest/components/day-separator.json +63 -0
- package/manifest/components/delegation-card.json +196 -0
- package/manifest/components/density.json +93 -0
- package/manifest/components/description-list.json +91 -0
- package/manifest/components/diagram.json +126 -0
- package/manifest/components/dialog.json +222 -0
- package/manifest/components/disclosure.json +134 -0
- package/manifest/components/dmx-bar.json +107 -0
- package/manifest/components/dmx-strip.json +117 -0
- package/manifest/components/document-reference.json +108 -0
- package/manifest/components/draft-restore.json +96 -0
- package/manifest/components/drawer.json +204 -0
- package/manifest/components/dropdown-menu.json +275 -0
- package/manifest/components/edit-message.json +131 -0
- package/manifest/components/elements-command-palette.json +122 -0
- package/manifest/components/elements-composer.json +71 -0
- package/manifest/components/elements-data-table.json +75 -0
- package/manifest/components/elements-timeline.json +77 -0
- package/manifest/components/elicitation-form.json +130 -0
- package/manifest/components/empty-state-composer.json +71 -0
- package/manifest/components/empty-state-greeting.json +49 -0
- package/manifest/components/empty-state-suggestion.json +60 -0
- package/manifest/components/empty-state-suggestions.json +49 -0
- package/manifest/components/empty-state.json +111 -0
- package/manifest/components/end-of-turn-summary.json +89 -0
- package/manifest/components/env-var-input.json +194 -0
- package/manifest/components/error-state.json +93 -0
- package/manifest/components/export-dialog.json +101 -0
- package/manifest/components/eyebrow.json +59 -0
- package/manifest/components/feedback-dialog.json +133 -0
- package/manifest/components/field-description.json +66 -0
- package/manifest/components/field-error.json +87 -0
- package/manifest/components/field-label.json +66 -0
- package/manifest/components/field.json +82 -0
- package/manifest/components/file-tree.json +96 -0
- package/manifest/components/file-upload.json +204 -0
- package/manifest/components/flow-background.json +50 -0
- package/manifest/components/flow-controls.json +50 -0
- package/manifest/components/flow-graph.json +86 -0
- package/manifest/components/folder-icon.json +46 -0
- package/manifest/components/footer.json +133 -0
- package/manifest/components/frac.json +68 -0
- package/manifest/components/frames.json +210 -0
- package/manifest/components/generation-loader.json +78 -0
- package/manifest/components/generative-ui.json +125 -0
- package/manifest/components/grid.json +132 -0
- package/manifest/components/group-bar.json +122 -0
- package/manifest/components/guardrail-notice.json +109 -0
- package/manifest/components/hover-card.json +189 -0
- package/manifest/components/icon-button.json +106 -0
- package/manifest/components/image-generation.json +73 -0
- package/manifest/components/info-tip.json +133 -0
- package/manifest/components/inline-citation.json +90 -0
- package/manifest/components/input-group.json +112 -0
- package/manifest/components/input.json +121 -0
- package/manifest/components/inspector.json +199 -0
- package/manifest/components/item.json +163 -0
- package/manifest/components/job-progress.json +116 -0
- package/manifest/components/kbd.json +52 -0
- package/manifest/components/launcher-bubble.json +130 -0
- package/manifest/components/ledger.json +330 -0
- package/manifest/components/link.json +94 -0
- package/manifest/components/live-region-announcer.json +95 -0
- package/manifest/components/log-viewer.json +172 -0
- package/manifest/components/map-answer.json +97 -0
- package/manifest/components/markdown-text.json +126 -0
- package/manifest/components/math-block.json +84 -0
- package/manifest/components/mcp-server-icon.json +46 -0
- package/manifest/components/mcp-server-panel.json +102 -0
- package/manifest/components/memory-chips.json +73 -0
- package/manifest/components/menubar.json +184 -0
- package/manifest/components/message-actions.json +125 -0
- package/manifest/components/message-attachments.json +71 -0
- package/manifest/components/message-branches.json +83 -0
- package/manifest/components/message-list.json +121 -0
- package/manifest/components/message-pair.json +107 -0
- package/manifest/components/message-queue.json +85 -0
- package/manifest/components/message-timing.json +69 -0
- package/manifest/components/message.json +149 -0
- package/manifest/components/meter.json +150 -0
- package/manifest/components/mobile-composer.json +163 -0
- package/manifest/components/model-picker.json +87 -0
- package/manifest/components/multi-select.json +255 -0
- package/manifest/components/musical-time-input.json +141 -0
- package/manifest/components/navigation-menu.json +269 -0
- package/manifest/components/node-card.json +144 -0
- package/manifest/components/node-handle.json +84 -0
- package/manifest/components/number-field.json +131 -0
- package/manifest/components/number-ticker.json +67 -0
- package/manifest/components/onboarding.json +100 -0
- package/manifest/components/otp-field.json +163 -0
- package/manifest/components/page-shell.json +129 -0
- package/manifest/components/pagination.json +108 -0
- package/manifest/components/panel-header.json +89 -0
- package/manifest/components/panel.json +71 -0
- package/manifest/components/password-input.json +171 -0
- package/manifest/components/permission-grant.json +115 -0
- package/manifest/components/permission-scopes.json +184 -0
- package/manifest/components/piano-keyboard.json +149 -0
- package/manifest/components/plussie.json +140 -0
- package/manifest/components/popover.json +231 -0
- package/manifest/components/preset-section.json +80 -0
- package/manifest/components/preview.json +294 -0
- package/manifest/components/progress.json +114 -0
- package/manifest/components/prompt-library.json +122 -0
- package/manifest/components/queue-dock.json +139 -0
- package/manifest/components/quota-banner.json +113 -0
- package/manifest/components/quote-reply.json +129 -0
- package/manifest/components/radio-group.json +83 -0
- package/manifest/components/radio.json +94 -0
- package/manifest/components/rating.json +188 -0
- package/manifest/components/read-aloud.json +139 -0
- package/manifest/components/reasoning-effort.json +95 -0
- package/manifest/components/reasoning-panel.json +135 -0
- package/manifest/components/recommendation-card.json +133 -0
- package/manifest/components/regenerate-menu.json +107 -0
- package/manifest/components/replay-player.json +124 -0
- package/manifest/components/research-report.json +87 -0
- package/manifest/components/resizable.json +91 -0
- package/manifest/components/retrieval-chunks.json +98 -0
- package/manifest/components/revert-dock.json +197 -0
- package/manifest/components/reviewable-diff.json +113 -0
- package/manifest/components/risk-badge.json +89 -0
- package/manifest/components/row.json +122 -0
- package/manifest/components/schedule-card.json +121 -0
- package/manifest/components/score-breakdown.json +108 -0
- package/manifest/components/scroll-anchor.json +84 -0
- package/manifest/components/scroll-area.json +114 -0
- package/manifest/components/scrollable-tabs-list.json +91 -0
- package/manifest/components/scrub-input.json +268 -0
- package/manifest/components/seam-cell.json +91 -0
- package/manifest/components/seam-grid.json +84 -0
- package/manifest/components/seam-list.json +56 -0
- package/manifest/components/search-input.json +195 -0
- package/manifest/components/section-header.json +140 -0
- package/manifest/components/segmented-control.json +178 -0
- package/manifest/components/select.json +253 -0
- package/manifest/components/separator.json +56 -0
- package/manifest/components/settings-panel.json +152 -0
- package/manifest/components/shape-section.json +70 -0
- package/manifest/components/shared-conversation.json +107 -0
- package/manifest/components/sheet.json +210 -0
- package/manifest/components/shimmer-label.json +61 -0
- package/manifest/components/sidebar.json +245 -0
- package/manifest/components/signal-edge.json +56 -0
- package/manifest/components/skeleton.json +46 -0
- package/manifest/components/skill-icon.json +46 -0
- package/manifest/components/slider.json +106 -0
- package/manifest/components/sources.json +97 -0
- package/manifest/components/sparkline.json +89 -0
- package/manifest/components/speaker-identity.json +66 -0
- package/manifest/components/spec-sheet.json +93 -0
- package/manifest/components/spectrum-visualizer.json +147 -0
- package/manifest/components/spinner.json +71 -0
- package/manifest/components/stack-icon.json +46 -0
- package/manifest/components/stack.json +143 -0
- package/manifest/components/stacks-matrix-icon.json +46 -0
- package/manifest/components/stat.json +111 -0
- package/manifest/components/status-bar.json +233 -0
- package/manifest/components/status-dot.json +97 -0
- package/manifest/components/stepper.json +107 -0
- package/manifest/components/stopped-run.json +97 -0
- package/manifest/components/streaming-text.json +82 -0
- package/manifest/components/sub.json +45 -0
- package/manifest/components/subagent-list.json +106 -0
- package/manifest/components/suggestions.json +106 -0
- package/manifest/components/sup.json +45 -0
- package/manifest/components/swap-label.json +86 -0
- package/manifest/components/switch.json +102 -0
- package/manifest/components/table-scroll-region.json +78 -0
- package/manifest/components/table.json +306 -0
- package/manifest/components/tabs.json +156 -0
- package/manifest/components/tags-input.json +255 -0
- package/manifest/components/tail-status.json +138 -0
- package/manifest/components/terminal-block.json +111 -0
- package/manifest/components/terminal-frame.json +146 -0
- package/manifest/components/textarea.json +104 -0
- package/manifest/components/theme-configurator.json +158 -0
- package/manifest/components/theme-provider.json +228 -0
- package/manifest/components/thinking-indicator.json +69 -0
- package/manifest/components/thread-list.json +87 -0
- package/manifest/components/thread-search.json +108 -0
- package/manifest/components/threshold-rail.json +223 -0
- package/manifest/components/time-boundary.json +68 -0
- package/manifest/components/time-field.json +93 -0
- package/manifest/components/timeline-ruler.json +178 -0
- package/manifest/components/timeline.json +131 -0
- package/manifest/components/title-bar.json +97 -0
- package/manifest/components/toast.json +140 -0
- package/manifest/components/todo-list.json +76 -0
- package/manifest/components/toggle-group.json +134 -0
- package/manifest/components/toggle.json +140 -0
- package/manifest/components/token-editor.json +106 -0
- package/manifest/components/tool-call-card.json +268 -0
- package/manifest/components/tool-call.json +147 -0
- package/manifest/components/tool-error.json +141 -0
- package/manifest/components/tool-group.json +97 -0
- package/manifest/components/tool-timeline.json +147 -0
- package/manifest/components/toolbar.json +192 -0
- package/manifest/components/tooltip.json +199 -0
- package/manifest/components/trace-waterfall.json +84 -0
- package/manifest/components/tree-visibility-toggle.json +99 -0
- package/manifest/components/tree.json +182 -0
- package/manifest/components/turn-footer.json +133 -0
- package/manifest/components/two-step-button.json +150 -0
- package/manifest/components/typing-indicator.json +60 -0
- package/manifest/components/universe-grid.json +155 -0
- package/manifest/components/unread-divider.json +58 -0
- package/manifest/components/usage-chart.json +162 -0
- package/manifest/components/verdict-row.json +106 -0
- package/manifest/components/voice-conversation.json +141 -0
- package/manifest/components/web-preview.json +105 -0
- package/manifest/components/web-search.json +108 -0
- package/manifest/components/work-collapse.json +125 -0
- package/manifest/fixtures.json +776 -0
- package/manifest/manifest.json +5037 -0
- package/manifest/tokens.json +288 -0
- package/package.json +278 -0
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { cn } from "../lib/cn.js";
|
|
2
|
+
import { Link } from "../layout/link.js";
|
|
3
|
+
import { Separator } from "../primitives/separator.js";
|
|
4
|
+
import { EdgeScrollNav } from "./_edge-scroller.js";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
//#region src/chrome/app-bar.tsx
|
|
8
|
+
/**
|
|
9
|
+
* The bar across the top of a document: brand, navigation, actions.
|
|
10
|
+
*
|
|
11
|
+
* One rung of the chrome ladder tall, from `--cue-chrome-toolbar` — the same
|
|
12
|
+
* token `Toolbar` and the docs site's hand-rolled header use, so a page that
|
|
13
|
+
* stacks a bar on a toolbar gets two equal strips rather than two guesses.
|
|
14
|
+
*
|
|
15
|
+
* Sticky by default, and translucent because of it: a bar pinned over scrolling
|
|
16
|
+
* content needs a ground, and `bg-surface-1/95` plus `backdrop-blur` says
|
|
17
|
+
* "there is content under this" where an opaque fill would claim the content
|
|
18
|
+
* ends here. `z-40` is above the page and below the `z-50` this library's
|
|
19
|
+
* overlays float at, so a menu opened from the bar is never behind it.
|
|
20
|
+
*
|
|
21
|
+
* **This is a bar, not a menu.** `NavigationMenu` is the mega-menu — triggers
|
|
22
|
+
* that open panels — and it goes *inside* an `AppBar.Nav` when a section has
|
|
23
|
+
* children. This component is the strip it sits in.
|
|
24
|
+
*
|
|
25
|
+
* Static markup — no `"use client"` on this module, deliberately: a site header
|
|
26
|
+
* is where a framework reads its data, so the bar has to be renderable from a
|
|
27
|
+
* server component. The one part with state is the navigation's scroller, and
|
|
28
|
+
* the client boundary is drawn around that alone (`_edge-scroller.tsx`).
|
|
29
|
+
*
|
|
30
|
+
* It adds **no viewport breakpoint**. `AppShell` holds the library's only one,
|
|
31
|
+
* for navigation shape, and a horizontal bar does not need it: the brand and
|
|
32
|
+
* the actions are `shrink-0`, the navigation between them takes the remaining
|
|
33
|
+
* width and scrolls inside it, so a 390px viewport gets the same bar with a
|
|
34
|
+
* shorter window onto the same links rather than a second layout to maintain.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* <AppBar.Root>
|
|
38
|
+
* <AppBar.Brand render={<NextLink href="/" />}>
|
|
39
|
+
* <Eyebrow>@cueplusplus/ui</Eyebrow>
|
|
40
|
+
* <Chip tone="accent" variant="outline">0.1.0</Chip>
|
|
41
|
+
* </AppBar.Brand>
|
|
42
|
+
* <AppBar.Nav aria-label="Sections">
|
|
43
|
+
* <AppBar.Link render={<NextLink href="/docs" />}>Docs</AppBar.Link>
|
|
44
|
+
* <AppBar.Separator />
|
|
45
|
+
* <AppBar.Link render={<NextLink href="/gallery" />} register="strong">Gallery</AppBar.Link>
|
|
46
|
+
* </AppBar.Nav>
|
|
47
|
+
* <AppBar.Actions>
|
|
48
|
+
* <ThemePicker />
|
|
49
|
+
* </AppBar.Actions>
|
|
50
|
+
* </AppBar.Root>
|
|
51
|
+
*/
|
|
52
|
+
const AppBarRoot = React.forwardRef(function AppBarRoot({ className, sticky = true, ...elementProps }, ref) {
|
|
53
|
+
return /* @__PURE__ */ jsx("header", {
|
|
54
|
+
ref,
|
|
55
|
+
"data-slot": "app-bar",
|
|
56
|
+
className: cn("flex h-(--cue-chrome-toolbar) w-full shrink-0 items-center gap-(--cue-space-4) border-b border-border bg-surface-1/95 px-(--cue-space-5) backdrop-blur", sticky ? "sticky top-0 z-40" : null, className),
|
|
57
|
+
...elementProps
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
/**
|
|
61
|
+
* The leading slot, and the way home.
|
|
62
|
+
*
|
|
63
|
+
* A link rather than a box, because that is what a brand in a bar is: pass
|
|
64
|
+
* `href`, or `render={<NextLink href="/" />}` to go through a router. It sets
|
|
65
|
+
* the bar's own type register (mono, UI size, full-contrast ink) so a wordmark
|
|
66
|
+
* and a version chip sit on one baseline without a class of their own.
|
|
67
|
+
*
|
|
68
|
+
* `shrink-0`: the brand is the one thing in the bar that must never be
|
|
69
|
+
* compressed, because a half-drawn wordmark reads as a broken page.
|
|
70
|
+
*/
|
|
71
|
+
const AppBarBrand = React.forwardRef(function AppBarBrand({ className, ...linkProps }, ref) {
|
|
72
|
+
return /* @__PURE__ */ jsx(Link, {
|
|
73
|
+
ref,
|
|
74
|
+
className: cn("flex shrink-0 items-center gap-(--cue-space-3) font-mono text-(length:--cue-text-ui) text-fg", className),
|
|
75
|
+
...linkProps
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
/** Where a nav that does not fill its frame sits. */
|
|
79
|
+
const NAV_ALIGN = {
|
|
80
|
+
start: "justify-start",
|
|
81
|
+
center: "justify-center",
|
|
82
|
+
end: "justify-end"
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* The `<nav>` landmark between the brand and the actions, and the one part of
|
|
86
|
+
* the bar that gives up width.
|
|
87
|
+
*
|
|
88
|
+
* Name it: `aria-label="Sections"`, or whatever this bar's links are. A
|
|
89
|
+
* document with more than one navigation and no names on them is a screen
|
|
90
|
+
* reader listing "navigation, navigation".
|
|
91
|
+
*
|
|
92
|
+
* The alignment sits on the frame rather than on the scrolling `<nav>` itself,
|
|
93
|
+
* and that is load-bearing: `justify-content: flex-end` on a scroll container
|
|
94
|
+
* pushes the overflow off the *start* edge, where several browsers cannot
|
|
95
|
+
* scroll to reach it. Aligning the frame and letting the nav grow from its
|
|
96
|
+
* start keeps every link reachable at every width.
|
|
97
|
+
*/
|
|
98
|
+
const AppBarNav = React.forwardRef(function AppBarNav({ className, frameClassName, align = "end", overflow = "scroll", previousLabel = "Show earlier links", nextLabel = "Show later links", ...elementProps }, ref) {
|
|
99
|
+
return /* @__PURE__ */ jsx(EdgeScrollNav, {
|
|
100
|
+
ref,
|
|
101
|
+
"data-slot": "app-bar-nav",
|
|
102
|
+
scrolls: overflow === "scroll",
|
|
103
|
+
previousLabel,
|
|
104
|
+
nextLabel,
|
|
105
|
+
frameClassName: cn("min-w-0 flex-1", NAV_ALIGN[align], frameClassName),
|
|
106
|
+
className: cn("flex min-w-0 items-center gap-(--cue-space-4)", className),
|
|
107
|
+
...elementProps
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
const REGISTERS = {
|
|
111
|
+
muted: "text-fg-muted",
|
|
112
|
+
strong: "text-fg"
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* The horizontal bar a site or an application wears across the top: brand slot,
|
|
116
|
+
* navigation slot, actions slot, one chrome rung tall.
|
|
117
|
+
*
|
|
118
|
+
* `AppShell` is the frame for a screen that owns the viewport; this is the bar
|
|
119
|
+
* for a document that scrolls — a marketing page, a documentation site, a
|
|
120
|
+
* console's public half. `NavigationMenu` is neither: it is the *menu* that
|
|
121
|
+
* goes inside `AppBar.Nav` when a section has children.
|
|
122
|
+
*
|
|
123
|
+
* Six parts. `Root` is the `<header>`, `Brand` the leading link, `Nav` the
|
|
124
|
+
* `<nav>` landmark that takes the remaining width and scrolls when the links
|
|
125
|
+
* outgrow it, `Link` one destination in one of two registers, `Separator` the
|
|
126
|
+
* seam between clusters, and `Actions` the trailing controls.
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* <AppBar.Root>
|
|
130
|
+
* <AppBar.Brand render={<NextLink href="/" />}>
|
|
131
|
+
* <Eyebrow>@cueplusplus/ui</Eyebrow>
|
|
132
|
+
* </AppBar.Brand>
|
|
133
|
+
* <AppBar.Nav aria-label="Sections">
|
|
134
|
+
* <AppBar.Link render={<NextLink href="/docs" />}>Docs</AppBar.Link>
|
|
135
|
+
* <AppBar.Link render={<NextLink href="/theming" />}>Theming</AppBar.Link>
|
|
136
|
+
* <AppBar.Separator />
|
|
137
|
+
* <AppBar.Link render={<NextLink href="/gallery" />} register="strong">Gallery</AppBar.Link>
|
|
138
|
+
* <AppBar.Link external render={<a href="https://skills.cueplusplus.com" />}>Skills</AppBar.Link>
|
|
139
|
+
* </AppBar.Nav>
|
|
140
|
+
* <AppBar.Separator />
|
|
141
|
+
* <AppBar.Actions><ThemePicker /></AppBar.Actions>
|
|
142
|
+
* </AppBar.Root>
|
|
143
|
+
*/
|
|
144
|
+
const AppBar = {
|
|
145
|
+
Root: AppBarRoot,
|
|
146
|
+
Brand: AppBarBrand,
|
|
147
|
+
Nav: AppBarNav,
|
|
148
|
+
Link: React.forwardRef(function AppBarLink({ className, register = "muted", active = false, ...linkProps }, ref) {
|
|
149
|
+
return /* @__PURE__ */ jsx(Link, {
|
|
150
|
+
ref,
|
|
151
|
+
"data-active": active ? "" : void 0,
|
|
152
|
+
"aria-current": active ? "page" : void 0,
|
|
153
|
+
className: cn("shrink-0 font-mono text-(length:--cue-text-ui)", active ? "text-accent" : REGISTERS[register], className),
|
|
154
|
+
...linkProps
|
|
155
|
+
});
|
|
156
|
+
}),
|
|
157
|
+
Separator: React.forwardRef(function AppBarSeparator({ className, ...elementProps }, ref) {
|
|
158
|
+
return /* @__PURE__ */ jsx(Separator, {
|
|
159
|
+
ref,
|
|
160
|
+
orientation: "vertical",
|
|
161
|
+
className: cn("h-(--cue-space-5)", className),
|
|
162
|
+
...elementProps
|
|
163
|
+
});
|
|
164
|
+
}),
|
|
165
|
+
Actions: React.forwardRef(function AppBarActions({ className, ...elementProps }, ref) {
|
|
166
|
+
return /* @__PURE__ */ jsx("div", {
|
|
167
|
+
ref,
|
|
168
|
+
"data-slot": "app-bar-actions",
|
|
169
|
+
className: cn("flex shrink-0 items-center gap-(--cue-space-4)", className),
|
|
170
|
+
...elementProps
|
|
171
|
+
});
|
|
172
|
+
})
|
|
173
|
+
};
|
|
174
|
+
//#endregion
|
|
175
|
+
export { AppBar };
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { SidebarLandmark, SidebarRootProps } from "../layout/sidebar.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
//#region src/chrome/app-shell.d.ts
|
|
4
|
+
interface AppShellRootProps extends React.ComponentPropsWithoutRef<"div"> {
|
|
5
|
+
/** Whether the mobile navigation drawer is open, when controlled. Pass with `onNavOpenChange`. */
|
|
6
|
+
navOpen?: boolean;
|
|
7
|
+
/** Initial open state of the mobile navigation drawer when uncontrolled. Defaults to `false`. */
|
|
8
|
+
defaultNavOpen?: boolean;
|
|
9
|
+
/** Called with the next open state whenever the drawer is opened or dismissed. */
|
|
10
|
+
onNavOpenChange?: (open: boolean) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Whether the navigation column is collapsed to an icon rail, when
|
|
13
|
+
* controlled. Pass with `onRailChange`. Defaults to expanded.
|
|
14
|
+
*
|
|
15
|
+
* It is the column's own collapse, owned one level up. Collapsing is a
|
|
16
|
+
* property of the column, but the header cell over it is a child of the bar
|
|
17
|
+
* — a different branch of the tree — and a length only one of them knows is
|
|
18
|
+
* a length they will eventually disagree about. So the frame holds the
|
|
19
|
+
* state, stamps `data-rail` on itself for anything that has to answer to it,
|
|
20
|
+
* and hands it down to `Sidebar.Root` as its controlled `collapsed`.
|
|
21
|
+
*
|
|
22
|
+
* **Persistence is the caller's.** A rail is set once and expected to be
|
|
23
|
+
* remembered, and where it is remembered — `localStorage`, a cookie the
|
|
24
|
+
* server can read before first paint, a user record — is a decision about
|
|
25
|
+
* hydration and privacy that a layout component has no business making.
|
|
26
|
+
*/
|
|
27
|
+
rail?: boolean;
|
|
28
|
+
/** Initial rail state when uncontrolled. Defaults to `false`. */
|
|
29
|
+
defaultRail?: boolean;
|
|
30
|
+
/** Called with the next rail state whenever the column is collapsed or expanded. */
|
|
31
|
+
onRailChange?: (rail: boolean) => void;
|
|
32
|
+
/** Width of the navigation column while expanded. Any CSS length. Defaults to `"14rem"`. */
|
|
33
|
+
navWidth?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Width of the navigation column while railed. Any CSS length. Defaults to
|
|
36
|
+
* `"3.5rem"` — a `--cue-icon-md` glyph centred in a `--cue-control-md` row,
|
|
37
|
+
* with a gutter either side that still reads as a column rather than a strip.
|
|
38
|
+
*/
|
|
39
|
+
railWidth?: string;
|
|
40
|
+
}
|
|
41
|
+
interface AppShellBarProps extends React.ComponentPropsWithoutRef<"div"> {
|
|
42
|
+
/**
|
|
43
|
+
* The header cell over the navigation column: the app mark, and whatever
|
|
44
|
+
* control rails it.
|
|
45
|
+
*
|
|
46
|
+
* Omit it and the bar is one undivided strip — no empty bordered cell, which
|
|
47
|
+
* is worse than no cell.
|
|
48
|
+
*/
|
|
49
|
+
brand?: React.ReactNode;
|
|
50
|
+
/**
|
|
51
|
+
* Extra classes for the header cell — the bordered box that spans the
|
|
52
|
+
* navigation column, not the row of brand content inside it. Anything about
|
|
53
|
+
* the cell's width, rim or gutter belongs here; anything about how the mark
|
|
54
|
+
* and its controls sit belongs on the nodes passed as `brand`.
|
|
55
|
+
*/
|
|
56
|
+
brandClassName?: string;
|
|
57
|
+
/**
|
|
58
|
+
* Make the bar's dead space a window drag handle. Defaults to `false`.
|
|
59
|
+
*
|
|
60
|
+
* This is the same contract {@link TitleBar} has always offered, on the bar
|
|
61
|
+
* a console with a navigation column actually uses — a desktop app should
|
|
62
|
+
* not need a `TitleBar` *and* an `AppShell.Bar` stacked on top of each other
|
|
63
|
+
* to get one draggable row, which is two chrome rungs of a small window
|
|
64
|
+
* spent on furniture.
|
|
65
|
+
*
|
|
66
|
+
* Every structural surface is attributed and every interactive cluster is
|
|
67
|
+
* carved back out, because the two shells this ships into fail in opposite
|
|
68
|
+
* directions. Tauri matches the *exact* element under the cursor, so the
|
|
69
|
+
* brand cell and the rest cell carry the attribute themselves — a click on
|
|
70
|
+
* the cell's own dead space targets the cell, never the root beneath it, and
|
|
71
|
+
* a bar that only attributed its root would be draggable nowhere. Electron
|
|
72
|
+
* builds a geometric mask from painted boxes instead and excludes nothing on
|
|
73
|
+
* its own, so the brand content, the leading children and `actions` each sit
|
|
74
|
+
* in a cluster marked `app-region: no-drag` — without it a button that merely
|
|
75
|
+
* overlaps the bar stops receiving clicks at all. See `./_drag.ts`.
|
|
76
|
+
*
|
|
77
|
+
* **It changes how the clusters are sized, and that is a trade.** Off, each
|
|
78
|
+
* cluster grows into its cell, so a caller's own `ms-auto` reaches the cell's
|
|
79
|
+
* trailing rim. On, the clusters take their content's width and `actions` is
|
|
80
|
+
* pushed over with `ms-auto` instead, because a cluster that fills its cell
|
|
81
|
+
* is a `no-drag` rectangle painted over every dead pixel the cell just
|
|
82
|
+
* attributed — the bar would be draggable nowhere but its paddings and its
|
|
83
|
+
* one gap. The dead area belongs to the window in drag mode, and a caller who
|
|
84
|
+
* needs content to reach the rim there should say so on a box of their own
|
|
85
|
+
* inside the cluster.
|
|
86
|
+
*
|
|
87
|
+
* `select-none` comes with it: dragging a window and selecting the text you
|
|
88
|
+
* started the drag on are the same gesture, and the shell wins.
|
|
89
|
+
*
|
|
90
|
+
* Not wired here: double-click-to-maximise. Tauri's injected script already
|
|
91
|
+
* does it for any drag region, macOS's cancel-by-dragging-away included.
|
|
92
|
+
* Electron does not, and an Electron app has to listen for `dblclick` and
|
|
93
|
+
* toggle the window itself. Which of those an app is, is not something a
|
|
94
|
+
* layout component can know.
|
|
95
|
+
*/
|
|
96
|
+
platformDrag?: boolean;
|
|
97
|
+
/**
|
|
98
|
+
* A title centred on the **bar**, not between the cells beside it.
|
|
99
|
+
*
|
|
100
|
+
* Absolutely positioned against the bar's own box, so it stays put when a
|
|
101
|
+
* button appears in `actions` or the column rails — the whole reason a
|
|
102
|
+
* document name in desktop chrome is not just another flex child.
|
|
103
|
+
* `pointer-events-none` so the dead space around a short title still drags,
|
|
104
|
+
* which is also what makes it click through to the drag surface underneath
|
|
105
|
+
* in Tauri, whose hit-testing is the browser's own.
|
|
106
|
+
*
|
|
107
|
+
* Inert by construction. Anything the reader has to click belongs in
|
|
108
|
+
* `actions` or in `children`, where it can be carved out of the drag region.
|
|
109
|
+
*/
|
|
110
|
+
center?: React.ReactNode;
|
|
111
|
+
/**
|
|
112
|
+
* The trailing cluster: connection state, a run indicator, an overflow menu.
|
|
113
|
+
*
|
|
114
|
+
* Pinned to the bar's trailing edge and never squeezed, so it reads as window
|
|
115
|
+
* furniture rather than the end of a sentence. `children` keeps flowing into
|
|
116
|
+
* the same cell ahead of it, which is what lets an existing web-shell caller
|
|
117
|
+
* pass free-form content and gain a cluster without rearranging anything.
|
|
118
|
+
*/
|
|
119
|
+
actions?: React.ReactNode;
|
|
120
|
+
}
|
|
121
|
+
type AppShellBodyProps = React.ComponentPropsWithoutRef<"div">;
|
|
122
|
+
interface AppShellSidebarProps extends SidebarRootProps {
|
|
123
|
+
/** The drawer's heading, and its accessible name. Defaults to `"Navigation"`. */
|
|
124
|
+
drawerTitle?: React.ReactNode;
|
|
125
|
+
/** Accessible name for the drawer's close affordance. Defaults to `"Close navigation"`. */
|
|
126
|
+
closeLabel?: string;
|
|
127
|
+
/** Extra classes for the drawer's popup surface. */
|
|
128
|
+
drawerClassName?: string;
|
|
129
|
+
/**
|
|
130
|
+
* Draw the column's collapse rail. Defaults to `true`.
|
|
131
|
+
*
|
|
132
|
+
* The shell renders the `Sidebar.Rail` itself rather than taking one in
|
|
133
|
+
* `children`, because collapsing is a property of the *column* and the same
|
|
134
|
+
* children are also the drawer's: a rail passed as a child would be laid out
|
|
135
|
+
* inside the overlay, where there is nothing to collapse.
|
|
136
|
+
*/
|
|
137
|
+
collapsible?: boolean;
|
|
138
|
+
/**
|
|
139
|
+
* Which landmark **both** shapes announce as. Defaults to `"navigation"`.
|
|
140
|
+
*
|
|
141
|
+
* One prop rather than two, because the column and the drawer are one
|
|
142
|
+
* navigation wearing two shapes: the answer cannot differ by viewport.
|
|
143
|
+
*/
|
|
144
|
+
landmark?: SidebarLandmark;
|
|
145
|
+
}
|
|
146
|
+
interface AppShellNavTriggerProps extends Omit<React.ComponentPropsWithoutRef<"button">, "children"> {
|
|
147
|
+
/** Accessible name for the control. Defaults to `"Open navigation"`. */
|
|
148
|
+
label?: string;
|
|
149
|
+
/** The icon it draws. Defaults to the shell's own three-stroke glyph. */
|
|
150
|
+
icon?: React.ElementType;
|
|
151
|
+
/**
|
|
152
|
+
* Which rung of the control ladder the button takes. Defaults to `"md"`.
|
|
153
|
+
*
|
|
154
|
+
* The rest of the window furniture in this library is built at `"sm"`, and
|
|
155
|
+
* that is right for a mouse — but this control renders *only* below the `md`
|
|
156
|
+
* breakpoint, which is to say only on a touch screen, where `sm` (20px at
|
|
157
|
+
* normal density) is under the 24×24 CSS-pixel floor WCAG 2.2 SC 2.5.8 sets.
|
|
158
|
+
* `"md"` is 24px at normal and large, and the token layer's
|
|
159
|
+
* `@media (pointer: coarse)` rule lifts ultra-compact to the same 24px, so
|
|
160
|
+
* the default clears the floor at every density a finger can reach it at.
|
|
161
|
+
*/
|
|
162
|
+
size?: "sm" | "md" | "lg";
|
|
163
|
+
}
|
|
164
|
+
interface AppShellContentProps extends React.ComponentPropsWithoutRef<"main"> {
|
|
165
|
+
/**
|
|
166
|
+
* Render the `<main>` landmark. Defaults to `true`.
|
|
167
|
+
*
|
|
168
|
+
* Set it `false` when the shell is embedded in a document that already has a
|
|
169
|
+
* `<main>` — a specimen, a screenshot, a shell shown inside a device frame on
|
|
170
|
+
* a page of prose. A document may have only one, and a nested one is a defect
|
|
171
|
+
* rather than a nicety.
|
|
172
|
+
*/
|
|
173
|
+
main?: boolean;
|
|
174
|
+
}
|
|
175
|
+
interface AppShellScrollerProps extends React.ComponentPropsWithoutRef<"div"> {
|
|
176
|
+
/** Draw the standard work-area gutters. Defaults to `true`. */
|
|
177
|
+
padded?: boolean;
|
|
178
|
+
}
|
|
179
|
+
interface AppShellAsideProps extends React.ComponentPropsWithoutRef<"aside"> {
|
|
180
|
+
/** Width of the column. Any CSS length. Defaults to `"18rem"`. */
|
|
181
|
+
width?: string;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* The console frame: title bar, navigation, work area, status bar — one
|
|
185
|
+
* viewport tall, with exactly one thing scrolling.
|
|
186
|
+
*
|
|
187
|
+
* Every console screen in this system is the same five parts in the same
|
|
188
|
+
* arrangement, and the value here is not the parts (they already exist as
|
|
189
|
+
* `TitleBar`, `Sidebar`, `Toolbar` and `StatusBar`) but the arithmetic between
|
|
190
|
+
* them: `h-dvh` on the frame rather than `min-h-dvh`, an unbroken `min-h-0`
|
|
191
|
+
* chain from the frame down to the scroller, `min-w-0` on the content column,
|
|
192
|
+
* and a scroller that is not the document. Get one of those wrong and the
|
|
193
|
+
* status bar leaves the screen or the navigation column gets shoved off the
|
|
194
|
+
* side; the shell exists so no page has to get them right again.
|
|
195
|
+
*
|
|
196
|
+
* The bars are ordinary children — `TitleBar` and `StatusBar` are already
|
|
197
|
+
* `shrink-0` and need no wrapper — so a shell reads as the page's outline. The
|
|
198
|
+
* one bar the shell does own is {@link AppShellBar}, and it owns it for one
|
|
199
|
+
* reason: it is divided by the navigation column, which means it has to be
|
|
200
|
+
* measured from the same length the column is.
|
|
201
|
+
*
|
|
202
|
+
* That length is `--cue-nav-width`, written on the frame. `rail` rewrites it,
|
|
203
|
+
* `data-rail` announces it, and the column and the header cell over it move
|
|
204
|
+
* together because neither holds a width of its own. Persistence and the
|
|
205
|
+
* toggle are the caller's — see {@link AppShellRootProps.rail}.
|
|
206
|
+
*
|
|
207
|
+
* This is also the only component in the library with a viewport breakpoint:
|
|
208
|
+
* below `md` the navigation column becomes a drawer and a trigger appears in
|
|
209
|
+
* the bar. See {@link AppShellSidebar} for the ruling.
|
|
210
|
+
*
|
|
211
|
+
* @example
|
|
212
|
+
* <AppShell.Root>
|
|
213
|
+
* <TitleBar center="main-stage.cue" actions={<Chip tone="ok">live</Chip>}>
|
|
214
|
+
* <AppShell.NavTrigger />
|
|
215
|
+
* <Eyebrow>CUE++</Eyebrow>
|
|
216
|
+
* </TitleBar>
|
|
217
|
+
* <AppShell.Body>
|
|
218
|
+
* <AppShell.Sidebar aria-label="Console" drawerTitle="Console">
|
|
219
|
+
* <Sidebar.Section label="Show">
|
|
220
|
+
* <Sidebar.Item icon={List} active>Cues</Sidebar.Item>
|
|
221
|
+
* </Sidebar.Section>
|
|
222
|
+
* </AppShell.Sidebar>
|
|
223
|
+
* <AppShell.Content>
|
|
224
|
+
* <Toolbar.Root aria-label="Playback"><Toolbar.Button icon={Play}>Go</Toolbar.Button></Toolbar.Root>
|
|
225
|
+
* <AppShell.Scroller><Panel>…</Panel></AppShell.Scroller>
|
|
226
|
+
* </AppShell.Content>
|
|
227
|
+
* <AppShell.Aside aria-label="Inspector">…</AppShell.Aside>
|
|
228
|
+
* </AppShell.Body>
|
|
229
|
+
* <StatusBar><StatusBar.Item tone="ok">Art-Net</StatusBar.Item></StatusBar>
|
|
230
|
+
* </AppShell.Root>
|
|
231
|
+
*/
|
|
232
|
+
declare const AppShell: {
|
|
233
|
+
Root: React.ForwardRefExoticComponent<AppShellRootProps & React.RefAttributes<HTMLDivElement>>;
|
|
234
|
+
Bar: React.ForwardRefExoticComponent<AppShellBarProps & React.RefAttributes<HTMLDivElement>>;
|
|
235
|
+
Body: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
236
|
+
Sidebar: React.ForwardRefExoticComponent<AppShellSidebarProps & React.RefAttributes<HTMLElement>>;
|
|
237
|
+
NavTrigger: React.ForwardRefExoticComponent<AppShellNavTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
238
|
+
Content: React.ForwardRefExoticComponent<AppShellContentProps & React.RefAttributes<HTMLElement>>;
|
|
239
|
+
Scroller: React.ForwardRefExoticComponent<AppShellScrollerProps & React.RefAttributes<HTMLDivElement>>;
|
|
240
|
+
Aside: React.ForwardRefExoticComponent<AppShellAsideProps & React.RefAttributes<HTMLElement>>;
|
|
241
|
+
};
|
|
242
|
+
//#endregion
|
|
243
|
+
export { AppShell, AppShellAsideProps, AppShellBarProps, AppShellBodyProps, AppShellContentProps, AppShellNavTriggerProps, AppShellRootProps, AppShellScrollerProps, AppShellSidebarProps };
|