@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,57 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { Tooltip } from "@base-ui/react/tooltip";
|
|
3
|
+
//#region src/overlays/tooltip.d.ts
|
|
4
|
+
interface TooltipProviderProps extends Tooltip.Provider.Props {}
|
|
5
|
+
/**
|
|
6
|
+
* Shares one hover delay across a group of tooltips: once the first one has
|
|
7
|
+
* opened, its neighbours open instantly, so scanning a toolbar does not mean
|
|
8
|
+
* waiting out the delay at every button.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* <Tooltip.Provider delay={400}><Toolbar>…</Toolbar></Tooltip.Provider>
|
|
12
|
+
*/
|
|
13
|
+
declare function TooltipProvider(props: TooltipProviderProps): React.JSX.Element;
|
|
14
|
+
interface TooltipRootProps extends Tooltip.Root.Props {}
|
|
15
|
+
/** Groups the parts of one tooltip. Renders no element. */
|
|
16
|
+
declare function TooltipRoot({ children, ...rootProps }: TooltipRootProps): React.JSX.Element;
|
|
17
|
+
interface TooltipTriggerProps extends Tooltip.Trigger.Props {}
|
|
18
|
+
interface TooltipContentProps extends Omit<Tooltip.Popup.Props, "className"> {
|
|
19
|
+
/** Extra classes for the popup surface. */
|
|
20
|
+
className?: string;
|
|
21
|
+
/** Extra classes for the positioner that places the popup. */
|
|
22
|
+
positionerClassName?: string;
|
|
23
|
+
/** Preferred side of the trigger. Defaults to `"top"`. */
|
|
24
|
+
side?: Tooltip.Positioner.Props["side"];
|
|
25
|
+
/** Alignment along that side. Defaults to `"center"`. */
|
|
26
|
+
align?: Tooltip.Positioner.Props["align"];
|
|
27
|
+
/** Gap in px between trigger and popup. Defaults to `4`. */
|
|
28
|
+
sideOffset?: Tooltip.Positioner.Props["sideOffset"];
|
|
29
|
+
/** Nudge along the alignment axis, in px. */
|
|
30
|
+
alignOffset?: Tooltip.Positioner.Props["alignOffset"];
|
|
31
|
+
/** Keep the popup mounted while closed. */
|
|
32
|
+
keepMounted?: boolean;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* A short label revealed on hover or keyboard focus — what an icon-only control
|
|
36
|
+
* does, what an abbreviated column header means.
|
|
37
|
+
*
|
|
38
|
+
* Wraps Base UI's `Tooltip` and adds the two things a design system must not
|
|
39
|
+
* leave to the caller: the `role="tooltip"` / `aria-describedby` pairing, and
|
|
40
|
+
* the portal theme stamp. For anything longer than a label, reach for
|
|
41
|
+
* {@link InfoTip} (a focusable badge) or a `Popover` instead — hover-only
|
|
42
|
+
* content is unreachable on touch.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* <Tooltip.Root>
|
|
46
|
+
* <Tooltip.Trigger render={<IconButton aria-label="Blackout" icon={Power} />} />
|
|
47
|
+
* <Tooltip.Content>Fades every channel to zero</Tooltip.Content>
|
|
48
|
+
* </Tooltip.Root>
|
|
49
|
+
*/
|
|
50
|
+
declare const Tooltip$1: {
|
|
51
|
+
Provider: typeof TooltipProvider;
|
|
52
|
+
Root: typeof TooltipRoot;
|
|
53
|
+
Trigger: React.ForwardRefExoticComponent<Omit<TooltipTriggerProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
54
|
+
Content: React.ForwardRefExoticComponent<Omit<TooltipContentProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
55
|
+
};
|
|
56
|
+
//#endregion
|
|
57
|
+
export { Tooltip$1 as Tooltip, TooltipContentProps, TooltipProviderProps, TooltipRootProps, TooltipTriggerProps };
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { useCuePortalProps } from "../system/portal.js";
|
|
4
|
+
import { overlayPopupTransitionClasses, overlayPositionerClasses, overlaySurfaceClasses } from "./_surface.js";
|
|
5
|
+
import * as React from "react";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
import { Tooltip } from "@base-ui/react/tooltip";
|
|
8
|
+
//#region src/overlays/tooltip.tsx
|
|
9
|
+
/**
|
|
10
|
+
* The id the trigger points `aria-describedby` at and the popup answers to.
|
|
11
|
+
*
|
|
12
|
+
* Base UI does not wire the two together — its tooltip is a purely visual
|
|
13
|
+
* affordance — so this layer does it. Without the pairing a screen reader user
|
|
14
|
+
* gets no hint at all, and this system uses tooltips for real information
|
|
15
|
+
* (see {@link InfoTip}).
|
|
16
|
+
*/
|
|
17
|
+
const TooltipIdContext = React.createContext(void 0);
|
|
18
|
+
/**
|
|
19
|
+
* Shares one hover delay across a group of tooltips: once the first one has
|
|
20
|
+
* opened, its neighbours open instantly, so scanning a toolbar does not mean
|
|
21
|
+
* waiting out the delay at every button.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* <Tooltip.Provider delay={400}><Toolbar>…</Toolbar></Tooltip.Provider>
|
|
25
|
+
*/
|
|
26
|
+
function TooltipProvider(props) {
|
|
27
|
+
return /* @__PURE__ */ jsx(Tooltip.Provider, { ...props });
|
|
28
|
+
}
|
|
29
|
+
/** Groups the parts of one tooltip. Renders no element. */
|
|
30
|
+
function TooltipRoot({ children, ...rootProps }) {
|
|
31
|
+
const id = React.useId();
|
|
32
|
+
return /* @__PURE__ */ jsx(TooltipIdContext.Provider, {
|
|
33
|
+
value: id,
|
|
34
|
+
children: /* @__PURE__ */ jsx(Tooltip.Root, {
|
|
35
|
+
...rootProps,
|
|
36
|
+
children
|
|
37
|
+
})
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* A short label revealed on hover or keyboard focus — what an icon-only control
|
|
42
|
+
* does, what an abbreviated column header means.
|
|
43
|
+
*
|
|
44
|
+
* Wraps Base UI's `Tooltip` and adds the two things a design system must not
|
|
45
|
+
* leave to the caller: the `role="tooltip"` / `aria-describedby` pairing, and
|
|
46
|
+
* the portal theme stamp. For anything longer than a label, reach for
|
|
47
|
+
* {@link InfoTip} (a focusable badge) or a `Popover` instead — hover-only
|
|
48
|
+
* content is unreachable on touch.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* <Tooltip.Root>
|
|
52
|
+
* <Tooltip.Trigger render={<IconButton aria-label="Blackout" icon={Power} />} />
|
|
53
|
+
* <Tooltip.Content>Fades every channel to zero</Tooltip.Content>
|
|
54
|
+
* </Tooltip.Root>
|
|
55
|
+
*/
|
|
56
|
+
const Tooltip$1 = {
|
|
57
|
+
Provider: TooltipProvider,
|
|
58
|
+
Root: TooltipRoot,
|
|
59
|
+
Trigger: React.forwardRef(function TooltipTrigger({ className, ...elementProps }, ref) {
|
|
60
|
+
const id = React.useContext(TooltipIdContext);
|
|
61
|
+
return /* @__PURE__ */ jsx(Tooltip.Trigger, {
|
|
62
|
+
ref,
|
|
63
|
+
"data-slot": "tooltip-trigger",
|
|
64
|
+
"aria-describedby": id,
|
|
65
|
+
className: cn(className),
|
|
66
|
+
...elementProps
|
|
67
|
+
});
|
|
68
|
+
}),
|
|
69
|
+
Content: React.forwardRef(function TooltipContent({ className, positionerClassName, side = "top", align, sideOffset = 4, alignOffset, keepMounted, children, ...popupProps }, ref) {
|
|
70
|
+
const portalProps = useCuePortalProps();
|
|
71
|
+
const id = React.useContext(TooltipIdContext);
|
|
72
|
+
return /* @__PURE__ */ jsx(Tooltip.Portal, {
|
|
73
|
+
keepMounted,
|
|
74
|
+
...portalProps,
|
|
75
|
+
children: /* @__PURE__ */ jsx(Tooltip.Positioner, {
|
|
76
|
+
className: cn(overlayPositionerClasses, positionerClassName),
|
|
77
|
+
side,
|
|
78
|
+
align,
|
|
79
|
+
sideOffset,
|
|
80
|
+
alignOffset,
|
|
81
|
+
children: /* @__PURE__ */ jsx(Tooltip.Popup, {
|
|
82
|
+
ref,
|
|
83
|
+
id,
|
|
84
|
+
role: "tooltip",
|
|
85
|
+
"data-slot": "tooltip-popup",
|
|
86
|
+
className: cn(overlaySurfaceClasses, overlayPopupTransitionClasses, "max-w-[16rem] px-(--cue-space-3) py-(--cue-space-2) font-mono text-(length:--cue-text-label) leading-(--cue-leading-ui) text-fg", className),
|
|
87
|
+
...popupProps,
|
|
88
|
+
children
|
|
89
|
+
})
|
|
90
|
+
})
|
|
91
|
+
});
|
|
92
|
+
})
|
|
93
|
+
};
|
|
94
|
+
//#endregion
|
|
95
|
+
export { Tooltip$1 as Tooltip };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { ClassProp, VariantProps } from "../lib/cva.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
//#region src/primitives/avatar.d.ts
|
|
4
|
+
/** Rung of the control ladder an avatar (and its group) sits on. */
|
|
5
|
+
type AvatarSize = "sm" | "md" | "lg";
|
|
6
|
+
declare const avatarVariants: (props?: ({
|
|
7
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
8
|
+
} & ClassProp) | undefined) => string;
|
|
9
|
+
interface AvatarProps extends Omit<React.ComponentPropsWithoutRef<"span">, "children">, VariantProps<typeof avatarVariants> {
|
|
10
|
+
/** Image URL. Omit to go straight to the fallback. */
|
|
11
|
+
src?: string;
|
|
12
|
+
/** Alt text for the image, and the name the default initials are derived from. */
|
|
13
|
+
alt?: string;
|
|
14
|
+
/** What to show while the image loads or after it fails. Defaults to initials from `alt`. */
|
|
15
|
+
fallback?: React.ReactNode;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A round user/entity avatar sized off the density control ladder, so it lines
|
|
19
|
+
* up with the buttons and inputs on the same row.
|
|
20
|
+
*
|
|
21
|
+
* Wraps Base UI's `Avatar`, which owns the image-loading state machine: the
|
|
22
|
+
* fallback shows immediately, is replaced when the image decodes, and comes
|
|
23
|
+
* back if the image errors.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* <Avatar alt="Ada Lovelace" src="/ada.png" />
|
|
27
|
+
* @example
|
|
28
|
+
* <Avatar alt="Ada Lovelace" size="sm" />
|
|
29
|
+
*/
|
|
30
|
+
declare const Avatar: React.ForwardRefExoticComponent<AvatarProps & React.RefAttributes<HTMLSpanElement>>;
|
|
31
|
+
interface AvatarGroupProps extends React.ComponentPropsWithoutRef<"div"> {
|
|
32
|
+
/** Show at most this many avatars; the rest collapse into a `+N` chip. Omit for no limit. */
|
|
33
|
+
max?: number;
|
|
34
|
+
/** Size of the `+N` overflow chip. Match it to the avatars you pass in. Defaults to `"md"`. */
|
|
35
|
+
size?: AvatarSize;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* An overlapping stack of {@link Avatar}s with a `+N` overflow chip.
|
|
39
|
+
*
|
|
40
|
+
* Each item after the first is pulled left by a negative inline-start margin
|
|
41
|
+
* and ringed in the page background colour, which is what reads as "stacked"
|
|
42
|
+
* rather than "crowded". Logical margins, so the stack flips correctly in RTL.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* <AvatarGroup max={3}>
|
|
46
|
+
* {users.map((u) => <Avatar key={u.id} alt={u.name} src={u.avatar} />)}
|
|
47
|
+
* </AvatarGroup>
|
|
48
|
+
*/
|
|
49
|
+
declare const AvatarGroup: React.ForwardRefExoticComponent<AvatarGroupProps & React.RefAttributes<HTMLDivElement>>;
|
|
50
|
+
//#endregion
|
|
51
|
+
export { Avatar, AvatarGroup, AvatarGroupProps, AvatarProps, AvatarSize };
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { cva } from "../lib/cva.js";
|
|
4
|
+
import * as React from "react";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { Avatar } from "@base-ui/react/avatar";
|
|
7
|
+
//#region src/primitives/avatar.tsx
|
|
8
|
+
const avatarVariants = cva("relative inline-flex shrink-0 select-none items-center justify-center overflow-hidden rounded-full border border-border bg-surface-2 font-mono leading-none tracking-normal text-fg-muted uppercase", {
|
|
9
|
+
variants: { size: {
|
|
10
|
+
sm: "size-control-sm text-(length:--cue-text-micro)",
|
|
11
|
+
md: "size-control-md text-(length:--cue-text-label)",
|
|
12
|
+
lg: "size-control-lg text-(length:--cue-text-ui)"
|
|
13
|
+
} },
|
|
14
|
+
defaultVariants: { size: "md" }
|
|
15
|
+
});
|
|
16
|
+
/** Overlap for stacked avatars: half a step of negative inline-start margin. */
|
|
17
|
+
const OVERLAP_CLASS = "[margin-inline-start:calc(var(--cue-space-2)*-1)]";
|
|
18
|
+
/**
|
|
19
|
+
* "Ada Lovelace" → "AL"; "cue" → "CU"; nothing usable → "?".
|
|
20
|
+
*
|
|
21
|
+
* Deliberately naive and synchronous: initials are decoration behind a real
|
|
22
|
+
* `alt`, not an identity claim.
|
|
23
|
+
*/
|
|
24
|
+
function initialsFrom(name) {
|
|
25
|
+
const words = (name ?? "").trim().split(/\s+/).filter(Boolean);
|
|
26
|
+
if (words.length === 0) return "?";
|
|
27
|
+
if (words.length === 1) return (words[0] ?? "").slice(0, 2).toUpperCase();
|
|
28
|
+
return `${words[0]?.[0] ?? ""}${words[words.length - 1]?.[0] ?? ""}`.toUpperCase();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* A round user/entity avatar sized off the density control ladder, so it lines
|
|
32
|
+
* up with the buttons and inputs on the same row.
|
|
33
|
+
*
|
|
34
|
+
* Wraps Base UI's `Avatar`, which owns the image-loading state machine: the
|
|
35
|
+
* fallback shows immediately, is replaced when the image decodes, and comes
|
|
36
|
+
* back if the image errors.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* <Avatar alt="Ada Lovelace" src="/ada.png" />
|
|
40
|
+
* @example
|
|
41
|
+
* <Avatar alt="Ada Lovelace" size="sm" />
|
|
42
|
+
*/
|
|
43
|
+
const Avatar$1 = React.forwardRef(function Avatar$2({ className, size, src, alt, fallback, ...elementProps }, ref) {
|
|
44
|
+
return /* @__PURE__ */ jsxs(Avatar.Root, {
|
|
45
|
+
ref,
|
|
46
|
+
className: cn(avatarVariants({ size }), className),
|
|
47
|
+
...elementProps,
|
|
48
|
+
children: [src === void 0 ? null : /* @__PURE__ */ jsx(Avatar.Image, {
|
|
49
|
+
src,
|
|
50
|
+
alt: alt ?? "",
|
|
51
|
+
className: "size-full object-cover"
|
|
52
|
+
}), /* @__PURE__ */ jsx(Avatar.Fallback, {
|
|
53
|
+
className: "leading-none",
|
|
54
|
+
children: fallback ?? initialsFrom(alt)
|
|
55
|
+
})]
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
const OVERFLOW_SIZES = {
|
|
59
|
+
sm: "size-control-sm text-(length:--cue-text-micro)",
|
|
60
|
+
md: "size-control-md text-(length:--cue-text-micro)",
|
|
61
|
+
lg: "size-control-lg text-(length:--cue-text-label)"
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* An overlapping stack of {@link Avatar}s with a `+N` overflow chip.
|
|
65
|
+
*
|
|
66
|
+
* Each item after the first is pulled left by a negative inline-start margin
|
|
67
|
+
* and ringed in the page background colour, which is what reads as "stacked"
|
|
68
|
+
* rather than "crowded". Logical margins, so the stack flips correctly in RTL.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* <AvatarGroup max={3}>
|
|
72
|
+
* {users.map((u) => <Avatar key={u.id} alt={u.name} src={u.avatar} />)}
|
|
73
|
+
* </AvatarGroup>
|
|
74
|
+
*/
|
|
75
|
+
const AvatarGroup = React.forwardRef(function AvatarGroup({ className, max, size = "md", children, ...elementProps }, ref) {
|
|
76
|
+
const items = React.Children.toArray(children);
|
|
77
|
+
const visible = max === void 0 ? items : items.slice(0, Math.max(0, max));
|
|
78
|
+
const overflow = items.length - visible.length;
|
|
79
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
80
|
+
ref,
|
|
81
|
+
className: cn("flex items-center", className),
|
|
82
|
+
...elementProps,
|
|
83
|
+
children: [visible.map((child, index) => /* @__PURE__ */ jsx("span", {
|
|
84
|
+
className: cn("relative inline-flex rounded-full ring-1 ring-bg", index === 0 ? null : OVERLAP_CLASS),
|
|
85
|
+
children: child
|
|
86
|
+
}, index)), overflow > 0 ? /* @__PURE__ */ jsx("span", {
|
|
87
|
+
className: cn("relative inline-flex shrink-0 items-center justify-center rounded-full border border-border bg-surface-3 font-mono leading-none text-fg-muted ring-1 ring-bg", OVERFLOW_SIZES[size], OVERLAP_CLASS),
|
|
88
|
+
children: `+${overflow}`
|
|
89
|
+
}) : null]
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
//#endregion
|
|
93
|
+
export { Avatar$1 as Avatar, AvatarGroup };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { ClassProp, VariantProps } from "../lib/cva.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
4
|
+
//#region src/primitives/button.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* The `Button` class recipe, exported so other surfaces (a link that must look
|
|
7
|
+
* like a button, a third-party trigger) can borrow the exact same classes.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* <a className={buttonVariants({ variant: "primary", size: "sm" })} href="/go">Go</a>
|
|
11
|
+
*/
|
|
12
|
+
declare const buttonVariants: (props?: ({
|
|
13
|
+
variant?: "ghost" | "primary" | "secondary" | "outline" | "danger" | "danger-outline" | null | undefined;
|
|
14
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
15
|
+
} & ClassProp) | undefined) => string;
|
|
16
|
+
interface ButtonProps extends React.ComponentPropsWithoutRef<"button">, VariantProps<typeof buttonVariants> {
|
|
17
|
+
/**
|
|
18
|
+
* Replace the rendered element (Base UI render prop). Accepts an element —
|
|
19
|
+
* `render={<a href="/x" />}` — or a function returning one. When set, the
|
|
20
|
+
* default `type="button"` is dropped so non-button elements stay valid.
|
|
21
|
+
*/
|
|
22
|
+
render?: useRender.RenderProp;
|
|
23
|
+
/**
|
|
24
|
+
* Optional leading icon component (e.g. a lucide icon). Rendered
|
|
25
|
+
* `aria-hidden` and sized to the density icon token, so it tracks the density
|
|
26
|
+
* level without the caller passing a pixel size.
|
|
27
|
+
*/
|
|
28
|
+
icon?: React.ElementType;
|
|
29
|
+
/**
|
|
30
|
+
* The label. A button with no children and no other accessible name is a
|
|
31
|
+
* control a screen reader announces as nothing.
|
|
32
|
+
*
|
|
33
|
+
* Declared explicitly, although `React.ComponentPropsWithoutRef<"button">`
|
|
34
|
+
* already carries it, for the reason `Card.Header` and `Bento.Tile` declare
|
|
35
|
+
* theirs: docgen documents a prop only where the library *declares* it, so
|
|
36
|
+
* without this line the manifest files no `children` for the system's most
|
|
37
|
+
* used control — the props table omits it, and a propSet cannot name it,
|
|
38
|
+
* which is how `/play/button` came to preview an unlabelled `<button>`.
|
|
39
|
+
*/
|
|
40
|
+
children?: React.ReactNode;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* The system's primary action control.
|
|
44
|
+
*
|
|
45
|
+
* A real `<button>` by default, restyled entirely from tokens: height comes
|
|
46
|
+
* from the density control ladder, colour from the theme's accent/surface ramp.
|
|
47
|
+
* The focus ring is an `outline`, never a `box-shadow`, so it survives inside
|
|
48
|
+
* `overflow: hidden` panels.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* <Button variant="primary" size="sm" icon={Play}>Run cue</Button>
|
|
52
|
+
* @example
|
|
53
|
+
* // Compose with a router link instead of a <button>:
|
|
54
|
+
* <Button render={<Link href="/patch" />}>Patch</Button>
|
|
55
|
+
*/
|
|
56
|
+
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
57
|
+
//#endregion
|
|
58
|
+
export { Button, ButtonProps, buttonVariants };
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { cva } from "../lib/cva.js";
|
|
4
|
+
import * as React from "react";
|
|
5
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
7
|
+
//#region src/primitives/button.tsx
|
|
8
|
+
/**
|
|
9
|
+
* The chassis every control-shaped primitive shares: layout, mono type, the
|
|
10
|
+
* density radius, the transition and the focus ring. Deliberately carries no
|
|
11
|
+
* size and no colour so `Button` (height + horizontal padding) and `IconButton`
|
|
12
|
+
* (one square token) can each add their own without fighting `tailwind-merge`.
|
|
13
|
+
*
|
|
14
|
+
* `focus-visible:outline-solid` is load-bearing, not decoration. In Tailwind v4
|
|
15
|
+
* `outline-2` compiles to `outline-style: var(--tw-outline-style)` and
|
|
16
|
+
* `outline-none` sets that property to `none` on the element — so a control
|
|
17
|
+
* carrying both resolves its ring to `outline-style: none` and paints nothing.
|
|
18
|
+
* Restoring the style at ring time is what makes the focus indicator exist
|
|
19
|
+
* (WCAG 2.4.7). `test/focus-ring.test.ts` guards every occurrence.
|
|
20
|
+
*
|
|
21
|
+
* @internal Not part of the public API; imported by `icon-button.tsx`.
|
|
22
|
+
*/
|
|
23
|
+
const buttonChassis = "inline-flex select-none items-center justify-center gap-[0.4em] whitespace-nowrap rounded-(--radius-control) font-mono font-medium transition-colors duration-150 outline-none focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-1 focus-visible:outline-accent disabled:pointer-events-none disabled:opacity-40";
|
|
24
|
+
/**
|
|
25
|
+
* The shared colour vocabulary. `accent` is theme-controlled, so `primary`
|
|
26
|
+
* reads as white-on-black in `cue` and cyan-on-near-black in `terminal` with no
|
|
27
|
+
* per-theme branching here.
|
|
28
|
+
*
|
|
29
|
+
* `danger` is one of the two tones this system fills a control with — the other
|
|
30
|
+
* is the amber on `TwoStepButton`'s confirm — and they are the two the palette
|
|
31
|
+
* gives an ink of their own. It used to be painted `text-white`, a
|
|
32
|
+
* literal chosen when there was nothing else to choose: white measures 2.99:1
|
|
33
|
+
* on cue's own red in dark mode — the default theme, under AA and under the 3:1
|
|
34
|
+
* floor a non-text control gets — and under AA on eight of the ten dark blocks
|
|
35
|
+
* this system ships. `--cue-danger-fg` is authored against each theme's red and
|
|
36
|
+
* clears 4.5:1 on all twenty. `test/destructive-ink.test.ts` measures it here,
|
|
37
|
+
* at the call site, rather than measuring the token pair on its own.
|
|
38
|
+
*
|
|
39
|
+
* @internal Not part of the public API; imported by `icon-button.tsx`.
|
|
40
|
+
*/
|
|
41
|
+
const buttonTones = {
|
|
42
|
+
primary: "bg-accent text-accent-fg hover:bg-accent-hover border border-transparent",
|
|
43
|
+
secondary: "border border-border text-fg-muted hover:border-border-strong hover:text-fg bg-surface-2",
|
|
44
|
+
ghost: "text-fg-muted hover:text-fg hover:bg-surface-2 border border-transparent",
|
|
45
|
+
outline: "border border-border text-fg hover:border-accent hover:text-accent bg-transparent",
|
|
46
|
+
danger: "bg-danger text-danger-fg hover:opacity-90 border border-transparent",
|
|
47
|
+
"danger-outline": "border text-danger bg-transparent hover:bg-danger/10 border-danger/40"
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* The `Button` class recipe, exported so other surfaces (a link that must look
|
|
51
|
+
* like a button, a third-party trigger) can borrow the exact same classes.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* <a className={buttonVariants({ variant: "primary", size: "sm" })} href="/go">Go</a>
|
|
55
|
+
*/
|
|
56
|
+
const buttonVariants = cva(buttonChassis, {
|
|
57
|
+
variants: {
|
|
58
|
+
variant: buttonTones,
|
|
59
|
+
size: {
|
|
60
|
+
sm: "h-control-sm px-(--cue-space-4) text-(length:--cue-text-ui)",
|
|
61
|
+
md: "h-control-md px-(--cue-space-5) text-(length:--cue-text-ui)",
|
|
62
|
+
lg: "h-control-lg px-(--cue-space-6) text-(length:--cue-text-emphasis)"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
defaultVariants: {
|
|
66
|
+
variant: "secondary",
|
|
67
|
+
size: "md"
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
/**
|
|
71
|
+
* The system's primary action control.
|
|
72
|
+
*
|
|
73
|
+
* A real `<button>` by default, restyled entirely from tokens: height comes
|
|
74
|
+
* from the density control ladder, colour from the theme's accent/surface ramp.
|
|
75
|
+
* The focus ring is an `outline`, never a `box-shadow`, so it survives inside
|
|
76
|
+
* `overflow: hidden` panels.
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* <Button variant="primary" size="sm" icon={Play}>Run cue</Button>
|
|
80
|
+
* @example
|
|
81
|
+
* // Compose with a router link instead of a <button>:
|
|
82
|
+
* <Button render={<Link href="/patch" />}>Patch</Button>
|
|
83
|
+
*/
|
|
84
|
+
const Button = React.forwardRef(function Button({ className, variant, size, render, icon: Icon, children, type, ...elementProps }, ref) {
|
|
85
|
+
return useRender({
|
|
86
|
+
render,
|
|
87
|
+
ref,
|
|
88
|
+
defaultTagName: "button",
|
|
89
|
+
props: {
|
|
90
|
+
...render === void 0 ? { type: type ?? "button" } : type === void 0 ? {} : { type },
|
|
91
|
+
...elementProps,
|
|
92
|
+
className: cn(buttonVariants({
|
|
93
|
+
variant,
|
|
94
|
+
size
|
|
95
|
+
}), className),
|
|
96
|
+
children: /* @__PURE__ */ jsxs(Fragment, { children: [Icon === void 0 ? null : /* @__PURE__ */ jsx(Icon, {
|
|
97
|
+
"aria-hidden": "true",
|
|
98
|
+
className: cn("shrink-0", size === "sm" ? "size-icon-sm" : "size-icon-md")
|
|
99
|
+
}), children] })
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
//#endregion
|
|
104
|
+
export { Button, buttonChassis, buttonTones, buttonVariants };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { ClassProp, VariantProps } from "../lib/cva.js";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
//#region src/primitives/chip.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* The tinted-chip recipe: `bg-<tone>/10 border-<tone>/35 text-<tone>`, and the
|
|
6
|
+
* two quieter readings of it — `outline`, which drops the fill, and `tag`,
|
|
7
|
+
* which drops the fill and the voice with it.
|
|
8
|
+
*
|
|
9
|
+
* Every property that varies is emitted from exactly one place: one rim, one
|
|
10
|
+
* ink, one fill, one gutter, one type size, always. Emitting `bg-<tone>/10`
|
|
11
|
+
* from the tone map and then cancelling it with `bg-transparent` would leave
|
|
12
|
+
* two competing utilities in the class string, and `chipVariants` is exported —
|
|
13
|
+
* a caller who uses it without `cn` gets a raw string where the winner is
|
|
14
|
+
* decided by stylesheet order rather than by which utility was written last.
|
|
15
|
+
* `h-chip h-4` proves the point at the other end: `tailwind-merge` cannot even
|
|
16
|
+
* see that as a conflict, because `chip` is a token name and not a scale step.
|
|
17
|
+
* So nothing here cancels anything. What varies moves into `variants` or
|
|
18
|
+
* `compoundVariants` until only one of it is ever emitted.
|
|
19
|
+
*
|
|
20
|
+
* That is why `neutral` carries no rim of its own. The other six tones rim
|
|
21
|
+
* themselves at `/35` in all three variants, but the neutral line has two
|
|
22
|
+
* weights in this system: `--cue-border` is a box edge, and a chip is a box;
|
|
23
|
+
* `--cue-hair-strong` is the rule between things, and a tag is a mark on the
|
|
24
|
+
* page rather than a container. The rim is therefore a compound of tone and
|
|
25
|
+
* variant, exactly as the fill is.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* <span className={chipVariants({ tone: "danger", variant: "outline" })}>fault</span>
|
|
29
|
+
* @example
|
|
30
|
+
* <span className={chipVariants({ variant: "tag" })}>mcp</span>
|
|
31
|
+
*/
|
|
32
|
+
declare const chipVariants: (props?: ({
|
|
33
|
+
tone?: "danger" | "info" | "warn" | "busy" | "accent" | "ok" | "neutral" | null | undefined;
|
|
34
|
+
variant?: "outline" | "tinted" | "tag" | null | undefined;
|
|
35
|
+
interactive?: boolean | null | undefined;
|
|
36
|
+
} & ClassProp) | undefined) => string;
|
|
37
|
+
interface ChipProps extends React.HTMLAttributes<HTMLElement>, VariantProps<typeof chipVariants> {
|
|
38
|
+
/**
|
|
39
|
+
* Render as a `<button>` with hover feedback instead of a static `<span>`.
|
|
40
|
+
* Use for filter pills and other clickable tags; leave off for pure labels.
|
|
41
|
+
*/
|
|
42
|
+
interactive?: boolean;
|
|
43
|
+
/** Disable the interactive form. Ignored when `interactive` is not set. */
|
|
44
|
+
disabled?: boolean;
|
|
45
|
+
/** Chip content — normally one or two words, or a short count. */
|
|
46
|
+
children?: React.ReactNode;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* A compact status/label pill: mono, uppercase, wide-tracked, one line tall.
|
|
50
|
+
*
|
|
51
|
+
* `tone` uses the shared status vocabulary (`ok | busy | warn | danger | info`)
|
|
52
|
+
* plus `neutral` and `accent`, so a chip, a `StatusDot` and a `Meter` always
|
|
53
|
+
* agree on what "warn" looks like.
|
|
54
|
+
*
|
|
55
|
+
* `variant` sets how loudly it says it. `tinted` is the chip proper — a tone
|
|
56
|
+
* tint behind tone ink. `outline` drops the fill and keeps the voice, for a
|
|
57
|
+
* chip on an already-busy ground. `tag` drops both: a hairline rim, micro type
|
|
58
|
+
* and closed tracking, for the facts that sit *beside* a row's name — a kind, a
|
|
59
|
+
* lifecycle, a scope — where a row full of tinted chips would read as a row of
|
|
60
|
+
* buttons. All three keep `h-chip`, so a mixed row still has one baseline.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* <Chip tone="ok">online</Chip>
|
|
64
|
+
* @example
|
|
65
|
+
* <Chip tone="accent" variant="outline" interactive onClick={toggle}>dimmer</Chip>
|
|
66
|
+
* @example
|
|
67
|
+
* <Chip variant="tag">mcp</Chip>
|
|
68
|
+
* @example
|
|
69
|
+
* <Chip tone="danger" variant="tag">needs auth</Chip>
|
|
70
|
+
*/
|
|
71
|
+
declare const Chip: React.ForwardRefExoticComponent<ChipProps & React.RefAttributes<HTMLElement>>;
|
|
72
|
+
//#endregion
|
|
73
|
+
export { Chip, ChipProps, chipVariants };
|