@cueplusplus/ui 0.15.0 → 0.17.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 +1083 -0
- package/README.md +26 -0
- package/dist/agent-runtime/tool-call-card.js +7 -3
- package/dist/brand/_chassis.d.ts +1 -1
- package/dist/brand/cue-mark.d.ts +1 -1
- package/dist/brand/cue-mark.js +1 -1
- package/dist/charts/ramps.js +1 -1
- package/dist/chat/agent-pile.js +2 -1
- package/dist/chat/ask-box.js +4 -3
- package/dist/chat/delegation-card.js +3 -2
- package/dist/chat/message-list.js +4 -2
- package/dist/chat/message.js +17 -7
- package/dist/chrome/_edge-scroller.js +2 -1
- package/dist/chrome/_status-bar.js +9 -3
- package/dist/chrome/_tabs-scroll.d.ts +17 -1
- package/dist/chrome/_tabs-scroll.js +20 -3
- package/dist/chrome/app-bar.js +10 -3
- package/dist/chrome/app-shell.js +2 -1
- package/dist/chrome/band.d.ts +18 -12
- package/dist/chrome/band.js +19 -31
- package/dist/chrome/eyebrow.d.ts +13 -5
- package/dist/chrome/eyebrow.js +18 -7
- package/dist/chrome/footer.d.ts +5 -0
- package/dist/chrome/footer.js +14 -3
- package/dist/chrome/navigation-menu.js +4 -2
- package/dist/chrome/page-shell.js +8 -5
- package/dist/chrome/panel.d.ts +5 -2
- package/dist/chrome/panel.js +9 -4
- package/dist/chrome/row.js +6 -3
- package/dist/chrome/scroll-area.js +2 -1
- package/dist/chrome/section-header.js +13 -4
- package/dist/chrome/segmented-control.js +12 -3
- package/dist/chrome/status-bar.js +2 -1
- package/dist/chrome/tabs.js +11 -3
- package/dist/chrome/toolbar.js +2 -1
- package/dist/chrome/tree.js +3 -2
- package/dist/color/_thumb.js +9 -3
- package/dist/color/color-area.js +1 -1
- package/dist/color/color-field.d.ts +2 -1
- package/dist/color/color-picker.d.ts +2 -1
- package/dist/color/color-swatch.js +1 -1
- package/dist/configurator/_overrides.js +13 -4
- package/dist/configurator/configurator.js +4 -1
- package/dist/configurator/export-dialog.js +5 -2
- package/dist/configurator/panel-sections.js +6 -2
- package/dist/configurator/token-editor.js +4 -1
- package/dist/date/calendar.js +12 -8
- package/dist/date/date-field.d.ts +2 -1
- package/dist/date/date-picker.d.ts +2 -1
- package/dist/date/date-range-picker.d.ts +2 -1
- package/dist/date/time-field.d.ts +2 -1
- package/dist/dmx/channel-matrix.js +3 -2
- package/dist/dmx/dmx-bar.js +1 -1
- package/dist/dmx/dmx-strip.js +1 -1
- package/dist/dmx/universe-grid.js +3 -2
- package/dist/elements/activity-graph.js +3 -3
- package/dist/elements/agent-card.js +3 -3
- package/dist/elements/approval-card.js +3 -3
- package/dist/elements/artifact-card.js +2 -2
- package/dist/elements/background-inbox.js +2 -2
- package/dist/elements/canvas-split.js +2 -2
- package/dist/elements/chart.js +1 -1
- package/dist/elements/chat-panel.js +2 -2
- package/dist/elements/checkpoint-history.js +2 -2
- package/dist/elements/clamp.js +2 -1
- package/dist/elements/code-diff.js +1 -1
- package/dist/elements/code-runner.js +1 -1
- package/dist/elements/command-palette.js +6 -5
- package/dist/elements/comparison-card.js +2 -2
- package/dist/elements/composer.js +9 -8
- package/dist/elements/computer-use.js +1 -1
- package/dist/elements/confidence-marker.js +2 -1
- package/dist/elements/connection-state.js +1 -1
- package/dist/elements/context-breakdown.js +1 -1
- package/dist/elements/context-usage.js +1 -1
- package/dist/elements/conversation-search.js +4 -3
- package/dist/elements/cost-meter.js +1 -1
- package/dist/elements/data-table.js +2 -2
- package/dist/elements/day-separator.js +1 -1
- package/dist/elements/diagram.js +1 -1
- package/dist/elements/document-reference.js +3 -3
- package/dist/elements/draft-restore.js +1 -1
- package/dist/elements/edit-message.js +4 -3
- package/dist/elements/elements.css +26 -5
- package/dist/elements/elicitation-form.js +3 -3
- package/dist/elements/empty-state.js +2 -1
- package/dist/elements/error-state.js +1 -1
- package/dist/elements/feedback-dialog.js +4 -3
- package/dist/elements/file-tree.js +2 -2
- package/dist/elements/flow-graph.js +2 -2
- package/dist/elements/guardrail-notice.js +3 -3
- package/dist/elements/image-generation.js +1 -1
- package/dist/elements/inline-citation.js +3 -3
- package/dist/elements/job-progress.js +3 -3
- package/dist/elements/launcher-bubble.js +2 -2
- package/dist/elements/loading-state.js +1 -1
- package/dist/elements/map-answer.js +3 -2
- package/dist/elements/markdown.js +5 -4
- package/dist/elements/math-block.js +1 -1
- package/dist/elements/mcp-server-panel.js +3 -3
- package/dist/elements/message-attachment.js +4 -4
- package/dist/elements/message-pair.js +1 -1
- package/dist/elements/message-queue.js +2 -2
- package/dist/elements/mobile-composer.js +4 -3
- package/dist/elements/model-picker.js +3 -3
- package/dist/elements/onboarding.js +2 -2
- package/dist/elements/permission-grant.js +2 -2
- package/dist/elements/permission-scopes.js +5 -4
- package/dist/elements/prompt-library.js +7 -6
- package/dist/elements/queue-dock.js +4 -3
- package/dist/elements/quota-banner.js +1 -1
- package/dist/elements/quote-reply.js +1 -1
- package/dist/elements/read-aloud.js +2 -2
- package/dist/elements/reasoning-panel.js +2 -1
- package/dist/elements/recommendation-card.d.ts +1 -1
- package/dist/elements/recommendation-card.js +2 -2
- package/dist/elements/regenerate-menu.js +2 -2
- package/dist/elements/research-report.js +1 -1
- package/dist/elements/retrieval-chunks.js +1 -1
- package/dist/elements/revert-dock.js +5 -4
- package/dist/elements/reviewable-diff.js +1 -1
- package/dist/elements/schedule-card.js +3 -3
- package/dist/elements/score-breakdown.js +1 -1
- package/dist/elements/scroll-anchor.js +2 -2
- package/dist/elements/settings-panel.js +3 -2
- package/dist/elements/shared-conversation.js +2 -2
- package/dist/elements/sources.js +4 -3
- package/dist/elements/speaker-identity.js +1 -1
- package/dist/elements/spec-sheet.js +1 -1
- package/dist/elements/streaming-text.js +1 -1
- package/dist/elements/subagent-list.js +2 -2
- package/dist/elements/suggestions.js +1 -1
- package/dist/elements/surfaces.d.ts +1 -1
- package/dist/elements/surfaces.js +2 -1
- package/dist/elements/tail-status.js +1 -1
- package/dist/elements/terminal-block.js +1 -1
- package/dist/elements/thread-list.js +1 -1
- package/dist/elements/thread-search.js +5 -4
- package/dist/elements/timeline.js +1 -1
- package/dist/elements/todo-list.js +2 -2
- package/dist/elements/tool-call.js +4 -3
- package/dist/elements/tool-error.js +2 -2
- package/dist/elements/tool-group.js +1 -1
- package/dist/elements/tool-timeline.js +4 -3
- package/dist/elements/trace-waterfall.js +1 -1
- package/dist/elements/verdict-row.js +2 -2
- package/dist/elements/voice-conversation.js +3 -2
- package/dist/elements/web-preview.js +1 -1
- package/dist/elements/web-search.js +2 -2
- package/dist/elements/work-collapse.js +2 -1
- package/dist/flow/node-card.js +3 -2
- package/dist/flow/use-flow-theme.js +2 -1
- package/dist/forms/_chassis-size.d.ts +22 -0
- package/dist/forms/_chassis.d.ts +28 -15
- package/dist/forms/_chassis.js +34 -8
- package/dist/forms/_listbox.js +8 -5
- package/dist/forms/autocomplete.d.ts +2 -1
- package/dist/forms/checkbox.js +8 -2
- package/dist/forms/combobox.d.ts +2 -1
- package/dist/forms/env-var-input.d.ts +2 -1
- package/dist/forms/env-var-input.js +3 -2
- package/dist/forms/field.d.ts +2 -1
- package/dist/forms/field.js +15 -4
- package/dist/forms/file-upload.js +3 -2
- package/dist/forms/index.d.ts +2 -1
- package/dist/forms/input-group.d.ts +2 -1
- package/dist/forms/input.d.ts +2 -1
- package/dist/forms/multi-select.d.ts +2 -1
- package/dist/forms/number-field.js +2 -1
- package/dist/forms/otp-field.d.ts +2 -1
- package/dist/forms/password-input.d.ts +2 -1
- package/dist/forms/password-input.js +4 -2
- package/dist/forms/radio-group.js +6 -2
- package/dist/forms/rating.js +2 -1
- package/dist/forms/scrub-input.d.ts +2 -1
- package/dist/forms/scrub-input.js +2 -1
- package/dist/forms/search-input.d.ts +2 -1
- package/dist/forms/search-input.js +2 -1
- package/dist/forms/select.d.ts +2 -1
- package/dist/forms/select.js +6 -2
- package/dist/forms/slider.js +6 -2
- package/dist/forms/switch.js +6 -2
- package/dist/forms/tags-input.d.ts +2 -1
- package/dist/forms/textarea.js +2 -1
- package/dist/forms/toggle-group.d.ts +1 -1
- package/dist/forms/toggle.d.ts +1 -1
- package/dist/forms/toggle.js +3 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.js +2 -2
- package/dist/instruments/_data-row.js +2 -1
- package/dist/instruments/app-window-frame.js +1 -1
- package/dist/instruments/code-block.js +8 -2
- package/dist/instruments/group-bar.js +1 -1
- package/dist/instruments/ledger.js +6 -2
- package/dist/instruments/log-viewer.js +5 -3
- package/dist/instruments/progress.js +5 -2
- package/dist/instruments/seam-grid.js +5 -3
- package/dist/instruments/stat.js +10 -3
- package/dist/instruments/table.js +28 -10
- package/dist/instruments/terminal-frame.js +4 -2
- package/dist/instruments/usage-chart.js +1 -1
- package/dist/layout/_collapse.js +6 -1
- package/dist/layout/bento.js +7 -4
- package/dist/layout/breadcrumb.js +7 -3
- package/dist/layout/card.js +14 -6
- package/dist/layout/carousel.js +3 -2
- package/dist/layout/collapsible.js +5 -1
- package/dist/layout/container.js +2 -1
- package/dist/layout/description-list.js +4 -1
- package/dist/layout/frames.js +11 -5
- package/dist/layout/item.js +3 -2
- package/dist/layout/link.d.ts +16 -0
- package/dist/layout/link.js +22 -3
- package/dist/layout/pagination.js +2 -1
- package/dist/layout/preview.d.ts +32 -12
- package/dist/layout/preview.js +149 -40
- package/dist/layout/resizable.js +2 -1
- package/dist/layout/sidebar.js +11 -3
- package/dist/layout/stepper.js +6 -2
- package/dist/lib/cn.js +29 -2
- package/dist/midi/musical-time-input.d.ts +2 -1
- package/dist/midi/piano-keyboard.js +3 -2
- package/dist/midi/spectrum-visualizer.js +1 -1
- package/dist/midi/threshold-rail.js +2 -1
- package/dist/midi/timeline-ruler.js +1 -1
- package/dist/overlays/_surface.d.ts +72 -12
- package/dist/overlays/_surface.js +86 -12
- package/dist/overlays/command-palette.js +9 -5
- package/dist/overlays/dialog.d.ts +5 -0
- package/dist/overlays/dialog.js +6 -1
- package/dist/overlays/info-tip.js +2 -1
- package/dist/overlays/menubar.js +3 -1
- package/dist/overlays/popover.js +2 -1
- package/dist/overlays/toast.js +6 -2
- package/dist/overlays/tooltip.js +4 -1
- package/dist/primitives/button.d.ts +15 -0
- package/dist/primitives/button.js +40 -10
- package/dist/primitives/chip.d.ts +20 -2
- package/dist/primitives/chip.js +39 -17
- package/dist/primitives/kbd.d.ts +6 -0
- package/dist/primitives/kbd.js +10 -1
- package/dist/primitives/skeleton.js +1 -1
- package/dist/system/_focus-ring-field.js +29 -0
- package/dist/system/_focus-ring.js +125 -0
- package/dist/system/_paint-elevation.js +9 -0
- package/dist/system/_paint-glass.js +46 -0
- package/dist/system/_paint-glow.js +51 -0
- package/dist/system/_paint-ground-pattern.js +30 -0
- package/dist/system/_paint-rest-shade.js +32 -0
- package/dist/system/_paint-rim.js +59 -0
- package/dist/system/_paint-stroke-sunken.js +19 -0
- package/dist/system/_paint-stroke-surface-1.js +19 -0
- package/dist/system/_paint-stroke-surface-2.js +40 -0
- package/dist/system/_paint-texture.js +56 -0
- package/dist/system/_style-app-bar.js +65 -0
- package/dist/system/_style-band.js +57 -0
- package/dist/system/_style-body-leading.js +21 -0
- package/dist/system/_style-body-size.js +30 -0
- package/dist/system/_style-body-weight.js +24 -0
- package/dist/system/_style-body.js +27 -0
- package/dist/system/_style-caption.js +19 -0
- package/dist/system/_style-card-pad.js +43 -0
- package/dist/system/_style-check.js +33 -0
- package/dist/system/_style-chip.js +103 -0
- package/dist/system/_style-code.js +13 -0
- package/dist/system/_style-collapse.js +14 -0
- package/dist/system/_style-control-face.js +29 -0
- package/dist/system/_style-control-label.js +22 -0
- package/dist/system/_style-control-step.js +22 -0
- package/dist/system/_style-control.js +76 -0
- package/dist/system/_style-data-face.js +28 -0
- package/dist/system/_style-description.js +23 -0
- package/dist/system/_style-eyebrow.js +43 -0
- package/dist/system/_style-footer-rule.js +47 -0
- package/dist/system/_style-gutter.js +17 -0
- package/dist/system/_style-help-ink.js +14 -0
- package/dist/system/_style-help.js +29 -0
- package/dist/system/_style-input-face.js +34 -0
- package/dist/system/_style-kbd.js +46 -0
- package/dist/system/_style-label-case.js +36 -0
- package/dist/system/_style-label-face.js +32 -0
- package/dist/system/_style-label-ink.js +29 -0
- package/dist/system/_style-label-leading.js +14 -0
- package/dist/system/_style-label-size.js +36 -0
- package/dist/system/_style-label-tracking.js +45 -0
- package/dist/system/_style-label-weight.js +40 -0
- package/dist/system/_style-lede.js +49 -0
- package/dist/system/_style-link.js +46 -0
- package/dist/system/_style-menu.js +30 -0
- package/dist/system/_style-nav-item.js +41 -0
- package/dist/system/_style-nav-voice.js +43 -0
- package/dist/system/_style-option.js +42 -0
- package/dist/system/_style-overlay-title.js +35 -0
- package/dist/system/_style-page-title.js +48 -0
- package/dist/system/_style-popover-pad.js +13 -0
- package/dist/system/_style-quiet-ink.js +13 -0
- package/dist/system/_style-row-pad.js +13 -0
- package/dist/system/_style-seam.js +43 -0
- package/dist/system/_style-section-rule.js +26 -0
- package/dist/system/_style-segment.js +30 -0
- package/dist/system/_style-segmented-control.js +86 -0
- package/dist/system/_style-selected.js +36 -0
- package/dist/system/_style-stage-marks.js +26 -0
- package/dist/system/_style-tab.js +71 -0
- package/dist/system/_style-textarea.js +21 -0
- package/dist/system/_style-title.js +37 -0
- package/dist/system/_style-tooltip.js +17 -0
- package/dist/system/density.d.ts +15 -5
- package/dist/system/density.js +188 -25
- package/dist/system/index.d.ts +2 -2
- package/dist/system/index.js +2 -2
- package/dist/system/overrides.d.ts +1 -0
- package/dist/system/overrides.js +151 -3
- package/dist/system/portal.d.ts +3 -2
- package/dist/system/portal.js +22 -10
- package/dist/system/prepaint.d.ts +21 -5
- package/dist/system/prepaint.js +3 -1
- package/dist/system/published.d.ts +1 -0
- package/dist/system/published.js +131 -0
- package/dist/system/theme-provider.d.ts +168 -60
- package/dist/system/theme-provider.js +375 -79
- package/dist/system/theme-registry.d.ts +2 -1
- package/dist/system/theme-registry.js +27 -10
- package/dist/system/use-density.js +4 -3
- package/dist/system/use-theme.d.ts +5 -2
- package/dist/system/use-theme.js +7 -4
- package/dist/system/vocabulary.js +2 -2
- package/dist/theming/create-theme.js +12 -6
- package/dist/theming/serialize.d.ts +34 -2
- package/dist/theming/serialize.js +86 -4
- package/manifest/components/accordion.json +7 -1
- package/manifest/components/agent-pile.json +3 -0
- package/manifest/components/alert-dialog.json +38 -1
- package/manifest/components/app-bar.json +23 -2
- package/manifest/components/app-shell.json +5 -0
- package/manifest/components/ask-box.json +3 -1
- package/manifest/components/autocomplete.json +49 -1
- package/manifest/components/band.json +14 -3
- package/manifest/components/bento.json +12 -1
- package/manifest/components/breadcrumb.json +8 -1
- package/manifest/components/button.json +31 -3
- package/manifest/components/calendar.json +7 -0
- package/manifest/components/card.json +28 -1
- package/manifest/components/carousel.json +4 -1
- package/manifest/components/channel-matrix.json +40 -1
- package/manifest/components/chart-tooltip-content.json +38 -1
- package/manifest/components/chat-empty-state.json +3 -1
- package/manifest/components/checkbox-group.json +14 -0
- package/manifest/components/checkbox.json +14 -0
- package/manifest/components/chip.json +16 -1
- package/manifest/components/clamp.json +3 -1
- package/manifest/components/code-block.json +10 -1
- package/manifest/components/collapsible.json +13 -2
- package/manifest/components/color-area.json +4 -2
- package/manifest/components/color-field.json +14 -0
- package/manifest/components/color-picker.json +14 -0
- package/manifest/components/color-slider.json +3 -1
- package/manifest/components/colors-section.json +9 -1
- package/manifest/components/combobox.json +49 -1
- package/manifest/components/command-palette.json +37 -1
- package/manifest/components/composer-actions.json +3 -0
- package/manifest/components/composer-attach-button.json +3 -0
- package/manifest/components/composer-attachment-chip.json +3 -0
- package/manifest/components/composer-attachments.json +3 -0
- package/manifest/components/composer-bar.json +3 -0
- package/manifest/components/composer-command-item.json +3 -0
- package/manifest/components/composer-context.json +3 -0
- package/manifest/components/composer-input.json +3 -0
- package/manifest/components/composer-menu-item.json +3 -0
- package/manifest/components/composer-menu.json +3 -0
- package/manifest/components/composer-model-item.json +3 -0
- package/manifest/components/composer-model-trigger.json +3 -0
- package/manifest/components/composer-person-item.json +3 -0
- package/manifest/components/composer-send.json +3 -0
- package/manifest/components/composer-toolbar.json +3 -0
- package/manifest/components/composer-voice-button.json +3 -0
- package/manifest/components/composer-voice.json +3 -0
- package/manifest/components/composer.json +14 -0
- package/manifest/components/confidence-marker.json +3 -1
- package/manifest/components/container.json +2 -1
- package/manifest/components/context-menu.json +38 -1
- package/manifest/components/conversation-search.json +3 -1
- package/manifest/components/cue-mark.json +2 -2
- package/manifest/components/cue-portal-frame.json +1 -1
- package/manifest/components/data-row.json +3 -1
- package/manifest/components/data-tree.json +3 -1
- package/manifest/components/date-field.json +14 -0
- package/manifest/components/date-picker.json +14 -0
- package/manifest/components/date-range-picker.json +14 -0
- package/manifest/components/delegation-card.json +3 -1
- package/manifest/components/density.json +21 -7
- package/manifest/components/description-list.json +6 -1
- package/manifest/components/dialog.json +39 -1
- package/manifest/components/disclosure.json +13 -2
- package/manifest/components/dmx-bar.json +37 -1
- package/manifest/components/dmx-strip.json +37 -1
- package/manifest/components/drawer.json +38 -1
- package/manifest/components/dropdown-menu.json +38 -1
- package/manifest/components/edit-message.json +3 -1
- package/manifest/components/elements-command-palette.json +3 -1
- package/manifest/components/elements-composer.json +3 -0
- package/manifest/components/empty-state-composer.json +3 -1
- package/manifest/components/empty-state-greeting.json +3 -1
- package/manifest/components/empty-state-suggestion.json +3 -1
- package/manifest/components/empty-state-suggestions.json +3 -1
- package/manifest/components/env-var-input.json +14 -1
- package/manifest/components/export-dialog.json +6 -1
- package/manifest/components/eyebrow.json +13 -2
- package/manifest/components/feedback-dialog.json +3 -0
- package/manifest/components/field-description.json +14 -0
- package/manifest/components/field-error.json +14 -0
- package/manifest/components/field-label.json +15 -1
- package/manifest/components/field.json +14 -0
- package/manifest/components/file-upload.json +3 -0
- package/manifest/components/footer.json +14 -1
- package/manifest/components/frames.json +14 -1
- package/manifest/components/hover-card.json +38 -1
- package/manifest/components/info-tip.json +3 -0
- package/manifest/components/input-group.json +14 -0
- package/manifest/components/input.json +14 -0
- package/manifest/components/item.json +3 -1
- package/manifest/components/kbd.json +10 -1
- package/manifest/components/ledger.json +9 -2
- package/manifest/components/link.json +10 -0
- package/manifest/components/log-viewer.json +10 -0
- package/manifest/components/map-answer.json +3 -1
- package/manifest/components/markdown-text.json +3 -0
- package/manifest/components/menubar.json +41 -2
- package/manifest/components/message-list.json +10 -0
- package/manifest/components/message.json +6 -1
- package/manifest/components/mobile-composer.json +3 -1
- package/manifest/components/multi-select.json +49 -1
- package/manifest/components/musical-time-input.json +14 -0
- package/manifest/components/navigation-menu.json +41 -1
- package/manifest/components/node-card.json +3 -0
- package/manifest/components/number-field.json +14 -1
- package/manifest/components/otp-field.json +13 -0
- package/manifest/components/page-shell.json +14 -0
- package/manifest/components/pagination.json +3 -0
- package/manifest/components/panel-header.json +12 -0
- package/manifest/components/panel.json +13 -1
- package/manifest/components/password-input.json +14 -1
- package/manifest/components/permission-scopes.json +3 -1
- package/manifest/components/piano-keyboard.json +3 -0
- package/manifest/components/popover.json +39 -1
- package/manifest/components/preset-section.json +9 -1
- package/manifest/components/preview.json +30 -10
- package/manifest/components/progress.json +6 -1
- package/manifest/components/prompt-library.json +3 -1
- package/manifest/components/queue-dock.json +3 -1
- package/manifest/components/radio-group.json +8 -0
- package/manifest/components/radio.json +8 -0
- package/manifest/components/rating.json +4 -1
- package/manifest/components/reasoning-panel.json +3 -1
- package/manifest/components/recommendation-card.json +1 -1
- package/manifest/components/resizable.json +4 -1
- package/manifest/components/revert-dock.json +3 -1
- package/manifest/components/row.json +5 -1
- package/manifest/components/scroll-area.json +4 -2
- package/manifest/components/scrollable-tabs-list.json +19 -0
- package/manifest/components/scrub-input.json +14 -1
- package/manifest/components/seam-cell.json +1 -0
- package/manifest/components/seam-grid.json +1 -0
- package/manifest/components/seam-list.json +5 -1
- package/manifest/components/search-input.json +14 -1
- package/manifest/components/section-header.json +15 -2
- package/manifest/components/segmented-control.json +17 -0
- package/manifest/components/select.json +28 -0
- package/manifest/components/settings-panel.json +3 -0
- package/manifest/components/shape-section.json +9 -1
- package/manifest/components/sheet.json +38 -1
- package/manifest/components/shimmer-label.json +3 -0
- package/manifest/components/sidebar.json +19 -2
- package/manifest/components/slider.json +8 -0
- package/manifest/components/sources.json +3 -1
- package/manifest/components/stat.json +9 -0
- package/manifest/components/status-bar.json +4 -0
- package/manifest/components/stepper.json +8 -0
- package/manifest/components/swap-label.json +3 -0
- package/manifest/components/switch.json +8 -0
- package/manifest/components/table-scroll-region.json +20 -2
- package/manifest/components/table.json +20 -2
- package/manifest/components/tabs.json +20 -1
- package/manifest/components/tags-input.json +49 -1
- package/manifest/components/terminal-frame.json +3 -0
- package/manifest/components/textarea.json +16 -0
- package/manifest/components/theme-configurator.json +38 -1
- package/manifest/components/theme-provider.json +37 -19
- package/manifest/components/thread-search.json +3 -1
- package/manifest/components/threshold-rail.json +3 -0
- package/manifest/components/time-field.json +14 -0
- package/manifest/components/toast.json +39 -0
- package/manifest/components/toggle-group.json +1 -19
- package/manifest/components/toggle.json +3 -5
- package/manifest/components/token-editor.json +6 -1
- package/manifest/components/tool-call-card.json +9 -2
- package/manifest/components/tool-call.json +3 -1
- package/manifest/components/tool-timeline.json +3 -1
- package/manifest/components/toolbar.json +4 -1
- package/manifest/components/tooltip.json +40 -1
- package/manifest/components/tree-visibility-toggle.json +3 -0
- package/manifest/components/tree.json +3 -0
- package/manifest/components/universe-grid.json +3 -0
- package/manifest/components/voice-conversation.json +3 -0
- package/manifest/components/work-collapse.json +3 -1
- package/manifest/manifest.json +205 -185
- package/manifest/tokens.json +260 -4
- package/package.json +6 -6
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
3
|
import { Button } from "../primitives/button.js";
|
|
4
|
+
import { LABEL_FACE } from "../system/_style-label-face.js";
|
|
4
5
|
import { Chip } from "../primitives/chip.js";
|
|
5
6
|
import { useIsomorphicLayoutEffect } from "../system/use-isomorphic-layout-effect.js";
|
|
7
|
+
import { LABEL_CASE } from "../system/_style-label-case.js";
|
|
8
|
+
import { LABEL_TRACKING } from "../system/_style-label-tracking.js";
|
|
6
9
|
import { overlaySurfaceClasses } from "../overlays/_surface.js";
|
|
7
10
|
import { IconButton } from "../primitives/icon-button.js";
|
|
8
11
|
import { TwoStepButton } from "../instruments/two-step-button.js";
|
|
@@ -221,7 +224,7 @@ function ThemeConfigurator({ position: positionProp, defaultPosition = "floating
|
|
|
221
224
|
}),
|
|
222
225
|
/* @__PURE__ */ jsx("span", {
|
|
223
226
|
id: titleId,
|
|
224
|
-
className: "flex-1 truncate
|
|
227
|
+
className: cn("flex-1 truncate text-(length:--cue-text-label) text-fg-muted", LABEL_FACE, LABEL_TRACKING, LABEL_CASE),
|
|
225
228
|
children: title
|
|
226
229
|
}),
|
|
227
230
|
moved === 0 ? null : /* @__PURE__ */ jsx(Chip, {
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { Input } from "../forms/input.js";
|
|
3
3
|
import { Button } from "../primitives/button.js";
|
|
4
|
+
import { LABEL_FACE } from "../system/_style-label-face.js";
|
|
5
|
+
import { LABEL_CASE } from "../system/_style-label-case.js";
|
|
6
|
+
import { LABEL_TRACKING } from "../system/_style-label-tracking.js";
|
|
4
7
|
import { Tabs } from "../chrome/tabs.js";
|
|
5
8
|
import { Field, FieldLabel } from "../forms/field.js";
|
|
6
9
|
import { CopyButton } from "../instruments/copy-button.js";
|
|
@@ -70,7 +73,7 @@ function ExportDialog({ open, onOpenChange, overrides, scope, defaultFormat = "c
|
|
|
70
73
|
/* @__PURE__ */ jsxs(Field, {
|
|
71
74
|
className: "gap-(--cue-space-1)",
|
|
72
75
|
children: [/* @__PURE__ */ jsx(FieldLabel, {
|
|
73
|
-
className:
|
|
76
|
+
className: `${LABEL_FACE} text-(length:--cue-text-micro) ${LABEL_TRACKING} ${LABEL_CASE}`,
|
|
74
77
|
children: "Theme name"
|
|
75
78
|
}), /* @__PURE__ */ jsx(Input, {
|
|
76
79
|
size: "sm",
|
|
@@ -96,7 +99,7 @@ function ExportDialog({ open, onOpenChange, overrides, scope, defaultFormat = "c
|
|
|
96
99
|
}), /* @__PURE__ */ jsx("pre", {
|
|
97
100
|
"data-testid": "configurator-export-text",
|
|
98
101
|
"data-slot": "configurator-export-text",
|
|
99
|
-
className: "max-h-[38vh] overflow-auto rounded-
|
|
102
|
+
className: "max-h-[38vh] overflow-auto rounded-control border border-border bg-sunken p-(--cue-space-3) font-mono text-(length:--cue-text-label) leading-(--cue-leading-ui) whitespace-pre text-fg",
|
|
100
103
|
children: entry.text
|
|
101
104
|
})]
|
|
102
105
|
}, entry.id))]
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { FOCUS_RING } from "../system/_focus-ring.js";
|
|
3
4
|
import { Input } from "../forms/input.js";
|
|
5
|
+
import { LABEL_FACE } from "../system/_style-label-face.js";
|
|
6
|
+
import { LABEL_CASE } from "../system/_style-label-case.js";
|
|
7
|
+
import { LABEL_TRACKING } from "../system/_style-label-tracking.js";
|
|
4
8
|
import { useDensities, useThemes } from "../system/theme-registry.js";
|
|
5
9
|
import { SectionHeader } from "../chrome/section-header.js";
|
|
6
10
|
import { SegmentedControl } from "../chrome/segmented-control.js";
|
|
@@ -133,7 +137,7 @@ function TextTokenField({ label, token, edits, placeholder }) {
|
|
|
133
137
|
return /* @__PURE__ */ jsxs(Field, {
|
|
134
138
|
className: "gap-(--cue-space-1)",
|
|
135
139
|
children: [/* @__PURE__ */ jsx(FieldLabel, {
|
|
136
|
-
className:
|
|
140
|
+
className: `${LABEL_FACE} text-(length:--cue-text-micro) ${LABEL_TRACKING} ${LABEL_CASE}`,
|
|
137
141
|
children: label
|
|
138
142
|
}), /* @__PURE__ */ jsx(Input, {
|
|
139
143
|
size: "sm",
|
|
@@ -193,7 +197,7 @@ function PresetSection({ edits, zoom, className }) {
|
|
|
193
197
|
"aria-pressed": active,
|
|
194
198
|
"data-slot": "configurator-preset",
|
|
195
199
|
onClick: () => setTheme(name),
|
|
196
|
-
className: cn(
|
|
200
|
+
className: cn(`flex cursor-pointer flex-col gap-(--cue-space-2) rounded-control border p-(--cue-space-2) text-left outline-none ${FOCUS_RING}`, active ? "border-accent text-accent" : "border-border text-fg-muted hover:border-border-strong hover:text-fg"),
|
|
197
201
|
children: [/* @__PURE__ */ jsx("span", {
|
|
198
202
|
className: "truncate font-mono text-(length:--cue-text-label)",
|
|
199
203
|
children: name
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { LABEL_FACE } from "../system/_style-label-face.js";
|
|
4
|
+
import { LABEL_CASE } from "../system/_style-label-case.js";
|
|
5
|
+
import { LABEL_TRACKING } from "../system/_style-label-tracking.js";
|
|
3
6
|
import { IconButton } from "../primitives/icon-button.js";
|
|
4
7
|
import { tokenProperty } from "../theming/serialize.js";
|
|
5
8
|
import { ColorPicker } from "../color/color-picker.js";
|
|
@@ -133,7 +136,7 @@ function TokenEditor({ values, overridden, onTokenChange, onTokenReset, groups =
|
|
|
133
136
|
"data-slot": "configurator-token-group",
|
|
134
137
|
className: "flex flex-col gap-(--cue-space-2)",
|
|
135
138
|
children: [/* @__PURE__ */ jsx("span", {
|
|
136
|
-
className: "
|
|
139
|
+
className: cn("text-(length:--cue-text-micro) text-fg-subtle", LABEL_FACE, LABEL_TRACKING, LABEL_CASE),
|
|
137
140
|
children: group.label
|
|
138
141
|
}), group.tokens.map((token) => {
|
|
139
142
|
const property = tokenProperty(token);
|
package/dist/date/calendar.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { FOCUS_RING } from "../system/_focus-ring.js";
|
|
4
|
+
import { LABEL_FACE } from "../system/_style-label-face.js";
|
|
5
|
+
import { LABEL_CASE } from "../system/_style-label-case.js";
|
|
6
|
+
import { LABEL_TRACKING, LABEL_TRACKING_TIGHT } from "../system/_style-label-tracking.js";
|
|
3
7
|
import "react";
|
|
4
8
|
import { jsx } from "react/jsx-runtime";
|
|
5
9
|
import { DayPicker } from "react-day-picker";
|
|
@@ -23,29 +27,29 @@ const CALENDAR_CLASSES = {
|
|
|
23
27
|
months: "relative flex flex-wrap items-start gap-(--cue-space-5)",
|
|
24
28
|
month: "flex flex-col gap-(--cue-space-2)",
|
|
25
29
|
month_caption: "flex h-control-sm items-center justify-center",
|
|
26
|
-
caption_label:
|
|
30
|
+
caption_label: `${LABEL_FACE} text-(length:--cue-text-label) ${LABEL_TRACKING} text-fg-subtle ${LABEL_CASE}`,
|
|
27
31
|
nav: "absolute inset-x-0 top-0 flex h-control-sm items-center justify-between",
|
|
28
|
-
button_previous:
|
|
29
|
-
button_next:
|
|
32
|
+
button_previous: `flex size-control-sm cursor-pointer items-center justify-center rounded-control border-0 bg-transparent p-0 text-fg-subtle outline-none transition-colors duration-150 hover:text-fg ${FOCUS_RING} disabled:pointer-events-none disabled:opacity-30 motion-reduce:transition-none`,
|
|
33
|
+
button_next: `flex size-control-sm cursor-pointer items-center justify-center rounded-control border-0 bg-transparent p-0 text-fg-subtle outline-none transition-colors duration-150 hover:text-fg ${FOCUS_RING} disabled:pointer-events-none disabled:opacity-30 motion-reduce:transition-none`,
|
|
30
34
|
chevron: "size-icon-sm fill-current",
|
|
31
35
|
month_grid: "border-collapse border-spacing-0",
|
|
32
36
|
weekdays: "",
|
|
33
|
-
weekday:
|
|
37
|
+
weekday: `size-control-sm p-0 text-center align-middle ${LABEL_FACE} text-(length:--cue-text-micro) font-normal ${LABEL_TRACKING_TIGHT} text-fg-subtle ${LABEL_CASE}`,
|
|
34
38
|
week: "",
|
|
35
39
|
day: "p-0 text-center align-middle",
|
|
36
|
-
day_button:
|
|
40
|
+
day_button: `size-control-sm cursor-pointer rounded-control border-0 bg-transparent p-0 font-mono text-(length:--cue-text-ui) tabular-nums text-fg-muted outline-none transition-colors duration-150 hover:bg-surface-3 hover:text-fg ${FOCUS_RING} disabled:pointer-events-none disabled:opacity-30 motion-reduce:transition-none`,
|
|
37
41
|
today: "[&_button]:font-medium [&_button]:ring-1 [&_button]:ring-inset [&_button]:ring-accent/60",
|
|
38
42
|
outside: "[&_button]:text-fg-subtle [&_button]:opacity-50",
|
|
39
43
|
disabled: "opacity-40",
|
|
40
44
|
hidden: "invisible",
|
|
41
45
|
selected: "bg-accent text-accent-fg [&_button]:bg-accent [&_button]:text-accent-fg [&_button]:hover:bg-accent-hover",
|
|
42
|
-
range_start: "rounded-l-
|
|
43
|
-
range_end: "rounded-r-
|
|
46
|
+
range_start: "rounded-l-control",
|
|
47
|
+
range_end: "rounded-r-control",
|
|
44
48
|
range_middle: "rounded-none bg-accent-soft text-fg [&_button]:rounded-none [&_button]:bg-transparent [&_button]:text-fg",
|
|
45
49
|
footer: "pt-(--cue-space-2) font-mono text-(length:--cue-text-label) text-fg-muted",
|
|
46
50
|
dropdowns: "flex items-center gap-(--cue-space-2)",
|
|
47
51
|
dropdown_root: "relative inline-flex items-center",
|
|
48
|
-
dropdown:
|
|
52
|
+
dropdown: `h-control-sm cursor-pointer rounded-control border border-border bg-sunken px-(--cue-space-2) font-mono text-(length:--cue-text-label) text-fg outline-none ${FOCUS_RING}`,
|
|
49
53
|
week_number: "size-control-sm text-center align-middle font-mono text-(length:--cue-text-micro) tabular-nums text-fg-subtle",
|
|
50
54
|
week_number_header: "size-control-sm text-center align-middle font-mono text-(length:--cue-text-micro) text-fg-subtle"
|
|
51
55
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { FormControlSize } from "../forms/_chassis.js";
|
|
1
|
+
import { FormControlSize } from "../forms/_chassis-size.js";
|
|
2
|
+
import "../forms/_chassis.js";
|
|
2
3
|
import * as React from "react";
|
|
3
4
|
import { DateFieldProps, DateInputProps, DateValue } from "react-aria-components";
|
|
4
5
|
//#region src/date/date-field.d.ts
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { FormControlSize } from "../forms/_chassis.js";
|
|
1
|
+
import { FormControlSize } from "../forms/_chassis-size.js";
|
|
2
|
+
import "../forms/_chassis.js";
|
|
2
3
|
import { CalendarProps } from "./calendar.js";
|
|
3
4
|
import * as React from "react";
|
|
4
5
|
//#region src/date/date-picker.d.ts
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { FormControlSize } from "../forms/_chassis.js";
|
|
1
|
+
import { FormControlSize } from "../forms/_chassis-size.js";
|
|
2
|
+
import "../forms/_chassis.js";
|
|
2
3
|
import { CalendarProps } from "./calendar.js";
|
|
3
4
|
import * as React from "react";
|
|
4
5
|
import { DateRange } from "react-day-picker";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { FormControlSize } from "../forms/_chassis.js";
|
|
1
|
+
import { FormControlSize } from "../forms/_chassis-size.js";
|
|
2
|
+
import "../forms/_chassis.js";
|
|
2
3
|
import * as React from "react";
|
|
3
4
|
import { DateInputProps, TimeFieldProps, TimeValue } from "react-aria-components";
|
|
4
5
|
//#region src/date/time-field.d.ts
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { FOCUS_RING } from "../system/_focus-ring.js";
|
|
3
4
|
import { useIsomorphicLayoutEffect } from "../system/use-isomorphic-layout-effect.js";
|
|
4
5
|
import { useComposedRefs } from "../lib/compose.js";
|
|
5
6
|
import { useCuePortalProps } from "../system/portal.js";
|
|
@@ -237,7 +238,7 @@ const ChannelMatrix = React.forwardRef(function ChannelMatrix({ className, data,
|
|
|
237
238
|
selectUniverse(index);
|
|
238
239
|
selectMode("detail");
|
|
239
240
|
},
|
|
240
|
-
className:
|
|
241
|
+
className: `flex cursor-pointer flex-col gap-(--cue-space-2) rounded-control border border-border bg-surface-1 p-(--cue-space-2) text-left outline-none ${FOCUS_RING} data-[selected=true]:border-accent`,
|
|
241
242
|
children: [/* @__PURE__ */ jsxs("span", {
|
|
242
243
|
className: "font-mono text-(length:--cue-text-micro) tabular-nums text-fg-muted",
|
|
243
244
|
children: ["U", String(index).padStart(2, "0")]
|
|
@@ -277,7 +278,7 @@ function ControlButton({ pressed, onClick, children }) {
|
|
|
277
278
|
type: "button",
|
|
278
279
|
"aria-pressed": pressed,
|
|
279
280
|
onClick,
|
|
280
|
-
className:
|
|
281
|
+
className: `flex h-control-sm cursor-pointer items-center rounded-control px-(--cue-space-3) font-mono text-(length:--cue-text-label) text-fg-muted outline-none transition-colors duration-150 hover:text-fg ${FOCUS_RING} aria-pressed:bg-accent-soft aria-pressed:text-accent motion-reduce:transition-none`,
|
|
281
282
|
children
|
|
282
283
|
});
|
|
283
284
|
}
|
package/dist/dmx/dmx-bar.js
CHANGED
|
@@ -84,7 +84,7 @@ const DmxBar = React.forwardRef(function DmxBar({ className, data, height = DEFA
|
|
|
84
84
|
"aria-label": summary,
|
|
85
85
|
"data-slot": "dmx-bar-canvas",
|
|
86
86
|
"data-live": String(live),
|
|
87
|
-
className: "block w-full cursor-crosshair rounded-
|
|
87
|
+
className: "block w-full cursor-crosshair rounded-control border border-border bg-(--cue-data-ground) [image-rendering:pixelated] data-[live=false]:opacity-45",
|
|
88
88
|
style: { height: toRem(height) }
|
|
89
89
|
}),
|
|
90
90
|
hover === null ? null : /* @__PURE__ */ jsx("span", {
|
package/dist/dmx/dmx-strip.js
CHANGED
|
@@ -172,7 +172,7 @@ const DmxStrip = React.forwardRef(function DmxStrip({ className, cells = DEFAULT
|
|
|
172
172
|
role: "img",
|
|
173
173
|
"aria-label": label ?? "Simulated DMX activity",
|
|
174
174
|
"data-slot": "dmx-strip-canvas",
|
|
175
|
-
className: "block w-full cursor-crosshair rounded-
|
|
175
|
+
className: "block w-full cursor-crosshair rounded-control border border-border bg-(--cue-data-ground) [image-rendering:pixelated]",
|
|
176
176
|
style: { height: toRem(height) }
|
|
177
177
|
}),
|
|
178
178
|
hover === null ? null : /* @__PURE__ */ jsx("span", {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { FOCUS_RING } from "../system/_focus-ring.js";
|
|
3
4
|
import { toRem } from "../instruments/_rem.js";
|
|
4
5
|
import "./_ramp.js";
|
|
5
6
|
import { UNIVERSE_TICKS, channelPercent, universeLayout } from "./_universe.js";
|
|
@@ -85,7 +86,7 @@ const UniverseGrid = React.forwardRef(function UniverseGrid({ className, allocat
|
|
|
85
86
|
role: interactive ? "group" : "img",
|
|
86
87
|
"aria-label": interactive ? label ?? "Universe" : label === void 0 ? summary : `${label}: ${summary}`,
|
|
87
88
|
"data-slot": "universe-grid-track",
|
|
88
|
-
className: "relative w-full overflow-hidden rounded-
|
|
89
|
+
className: "relative w-full overflow-hidden rounded-control border border-border bg-sunken",
|
|
89
90
|
style: { height: toRem(height) },
|
|
90
91
|
children: [
|
|
91
92
|
GRIDLINES.filter((channel) => channel <= slots).map((channel) => /* @__PURE__ */ jsx("span", {
|
|
@@ -110,7 +111,7 @@ const UniverseGrid = React.forwardRef(function UniverseGrid({ className, allocat
|
|
|
110
111
|
"data-conflict": block.conflict ? "true" : void 0,
|
|
111
112
|
"aria-label": `${block.label}: channels ${block.start} to ${block.end}`,
|
|
112
113
|
onClick: () => onSelect(block.allocation),
|
|
113
|
-
className: cn(
|
|
114
|
+
className: cn(`absolute inset-y-0 min-w-[2px] cursor-pointer rounded-[2px] outline-none transition-opacity duration-150 hover:opacity-85 ${FOCUS_RING} motion-reduce:transition-none`, BLOCK_TONES[block.tone], block.conflict ? "z-10 ring-1 ring-danger" : void 0),
|
|
114
115
|
style: {
|
|
115
116
|
left: `${block.left}%`,
|
|
116
117
|
width: `${block.width}%`
|
|
@@ -28,7 +28,7 @@ const LEVEL_TINT = [
|
|
|
28
28
|
function ActivityGraph({ data, start, end, title, total, className, ...props }) {
|
|
29
29
|
return /* @__PURE__ */ jsxs("div", {
|
|
30
30
|
"data-slot": "activity-graph",
|
|
31
|
-
className: cn(paper, "flex w-full max-w-sm flex-col gap-3 rounded-
|
|
31
|
+
className: cn(paper, "flex w-full max-w-sm flex-col gap-3 rounded-overlay p-4", className),
|
|
32
32
|
...props,
|
|
33
33
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
34
34
|
className: "flex items-baseline justify-between",
|
|
@@ -55,7 +55,7 @@ function ActivityGraph({ data, start, end, title, total, className, ...props })
|
|
|
55
55
|
}) })
|
|
56
56
|
}), /* @__PURE__ */ jsx(HeatGraph.Grid, {
|
|
57
57
|
className: "gap-[3px]",
|
|
58
|
-
children: ({ cell }) => /* @__PURE__ */ jsx(HeatGraph.Cell, { className: cn("size-[9px] rounded-
|
|
58
|
+
children: ({ cell }) => /* @__PURE__ */ jsx(HeatGraph.Cell, { className: cn("size-[9px] rounded-control", LEVEL_TINT[cell.level] ?? LEVEL_TINT[0]) })
|
|
59
59
|
})]
|
|
60
60
|
}), /* @__PURE__ */ jsxs("div", {
|
|
61
61
|
className: "flex items-center gap-1.5 self-end",
|
|
@@ -66,7 +66,7 @@ function ActivityGraph({ data, start, end, title, total, className, ...props })
|
|
|
66
66
|
}),
|
|
67
67
|
LEVEL_TINT.map((tint, level) => /* @__PURE__ */ jsx("span", {
|
|
68
68
|
"aria-hidden": true,
|
|
69
|
-
className: cn("size-[9px] rounded-
|
|
69
|
+
className: cn("size-[9px] rounded-control", tint)
|
|
70
70
|
}, level)),
|
|
71
71
|
/* @__PURE__ */ jsx("span", {
|
|
72
72
|
className: cn(mono, "text-fg-subtle"),
|
|
@@ -25,13 +25,13 @@ import { BotIcon, CheckIcon } from "lucide-react";
|
|
|
25
25
|
function AgentCard({ name, description, provider, version, model, endpoint, skills, connected, onConnect, className, ...props }) {
|
|
26
26
|
return /* @__PURE__ */ jsxs("div", {
|
|
27
27
|
"data-slot": "agent-card",
|
|
28
|
-
className: cn(paper, "flex w-full max-w-sm flex-col gap-3.5 rounded-
|
|
28
|
+
className: cn(paper, "flex w-full max-w-sm flex-col gap-3.5 rounded-overlay p-4", className),
|
|
29
29
|
...props,
|
|
30
30
|
children: [
|
|
31
31
|
/* @__PURE__ */ jsxs("div", {
|
|
32
32
|
className: "flex items-start gap-3",
|
|
33
33
|
children: [/* @__PURE__ */ jsx("span", {
|
|
34
|
-
className: "bg-surface-1 text-fg-muted flex size-9 shrink-0 items-center justify-center rounded-
|
|
34
|
+
className: "bg-surface-1 text-fg-muted flex size-9 shrink-0 items-center justify-center rounded-surface",
|
|
35
35
|
children: /* @__PURE__ */ jsx(BotIcon, { className: "size-4" })
|
|
36
36
|
}), /* @__PURE__ */ jsxs("div", {
|
|
37
37
|
className: "flex min-w-0 flex-1 flex-col",
|
|
@@ -59,7 +59,7 @@ function AgentCard({ name, description, provider, version, model, endpoint, skil
|
|
|
59
59
|
children: skills.map((skill) => /* @__PURE__ */ jsxs("div", {
|
|
60
60
|
className: "flex items-baseline gap-2",
|
|
61
61
|
children: [/* @__PURE__ */ jsx("span", {
|
|
62
|
-
className: cn(field, mono, "text-fg-muted shrink-0 rounded-
|
|
62
|
+
className: cn(field, mono, "text-fg-muted shrink-0 rounded-control px-1.5 py-0.5"),
|
|
63
63
|
children: skill.name
|
|
64
64
|
}), /* @__PURE__ */ jsx("span", {
|
|
65
65
|
className: "text-fg-muted min-w-0 flex-1 truncate text-(length:--cue-text-ui)",
|
|
@@ -22,13 +22,13 @@ import { CheckIcon, Loader2Icon, TerminalIcon, XIcon } from "lucide-react";
|
|
|
22
22
|
function ApprovalCard({ state, command, title, subtitle, onAllowOnce, onAlwaysAllow, onDeny, className, ...props }) {
|
|
23
23
|
return /* @__PURE__ */ jsxs("div", {
|
|
24
24
|
"data-slot": "approval-card",
|
|
25
|
-
className: cn(paper, "flex w-full max-w-sm flex-col gap-3.5 rounded-
|
|
25
|
+
className: cn(paper, "flex w-full max-w-sm flex-col gap-3.5 rounded-overlay p-4", className),
|
|
26
26
|
...props,
|
|
27
27
|
children: [
|
|
28
28
|
/* @__PURE__ */ jsxs("div", {
|
|
29
29
|
className: "flex items-center gap-3",
|
|
30
30
|
children: [/* @__PURE__ */ jsx("span", {
|
|
31
|
-
className: "bg-surface-1 text-fg-muted flex size-9 shrink-0 items-center justify-center rounded-
|
|
31
|
+
className: "bg-surface-1 text-fg-muted flex size-9 shrink-0 items-center justify-center rounded-surface",
|
|
32
32
|
children: /* @__PURE__ */ jsx(TerminalIcon, { className: "size-4" })
|
|
33
33
|
}), /* @__PURE__ */ jsxs("div", {
|
|
34
34
|
className: "flex flex-col",
|
|
@@ -42,7 +42,7 @@ function ApprovalCard({ state, command, title, subtitle, onAllowOnce, onAlwaysAl
|
|
|
42
42
|
})]
|
|
43
43
|
}),
|
|
44
44
|
/* @__PURE__ */ jsx("div", {
|
|
45
|
-
className: cn(field, "text-fg-muted rounded-
|
|
45
|
+
className: cn(field, "text-fg-muted rounded-surface px-3.5 py-2.5 font-mono text-(length:--cue-text-ui)"),
|
|
46
46
|
children: command
|
|
47
47
|
}),
|
|
48
48
|
/* @__PURE__ */ jsx("div", {
|
|
@@ -20,11 +20,11 @@ import { ArrowUpRightIcon, FileTextIcon } from "lucide-react";
|
|
|
20
20
|
function ArtifactCard({ title, meta, generating = false, words = 0, className, ...props }) {
|
|
21
21
|
return /* @__PURE__ */ jsxs("div", {
|
|
22
22
|
"data-slot": "artifact-card",
|
|
23
|
-
className: cn(paper, "group flex w-full max-w-xs cursor-pointer items-center gap-3 rounded-
|
|
23
|
+
className: cn(paper, "group flex w-full max-w-xs cursor-pointer items-center gap-3 rounded-overlay p-3.5 transition-transform duration-150 hover:-translate-y-px active:scale-[0.98]", className),
|
|
24
24
|
...props,
|
|
25
25
|
children: [
|
|
26
26
|
/* @__PURE__ */ jsx("span", {
|
|
27
|
-
className: "bg-surface-1 text-fg-muted flex size-9 shrink-0 items-center justify-center rounded-
|
|
27
|
+
className: "bg-surface-1 text-fg-muted flex size-9 shrink-0 items-center justify-center rounded-surface",
|
|
28
28
|
children: /* @__PURE__ */ jsx(FileTextIcon, { className: cn("size-4", generating && "animate-pulse motion-reduce:animate-none") })
|
|
29
29
|
}),
|
|
30
30
|
/* @__PURE__ */ jsxs("div", {
|
|
@@ -17,7 +17,7 @@ function BackgroundInbox({ runs, onCollect, className, ...props }) {
|
|
|
17
17
|
const running = runs.filter((run) => run.state === "running").length;
|
|
18
18
|
return /* @__PURE__ */ jsxs("div", {
|
|
19
19
|
"data-slot": "background-inbox",
|
|
20
|
-
className: cn(paper, "flex w-full max-w-sm flex-col gap-1 rounded-
|
|
20
|
+
className: cn(paper, "flex w-full max-w-sm flex-col gap-1 rounded-overlay p-3", className),
|
|
21
21
|
...props,
|
|
22
22
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
23
23
|
className: "flex items-baseline justify-between px-1 pb-1",
|
|
@@ -32,7 +32,7 @@ function BackgroundInbox({ runs, onCollect, className, ...props }) {
|
|
|
32
32
|
type: "button",
|
|
33
33
|
disabled: run.state === "running",
|
|
34
34
|
onClick: () => onCollect?.(run.id),
|
|
35
|
-
className: cn("flex items-center gap-2.5 rounded-
|
|
35
|
+
className: cn("flex items-center gap-2.5 rounded-surface px-1.5 py-2 text-start transition-colors", run.state === "running" ? "cursor-default" : "hover:bg-surface-1"),
|
|
36
36
|
children: [
|
|
37
37
|
/* @__PURE__ */ jsx("span", {
|
|
38
38
|
className: "flex size-3.5 shrink-0 items-center justify-center",
|
|
@@ -34,7 +34,7 @@ import { CheckIcon, CopyIcon, FileTextIcon, XIcon } from "lucide-react";
|
|
|
34
34
|
function CanvasSplit({ className, ...props }) {
|
|
35
35
|
return /* @__PURE__ */ jsx("div", {
|
|
36
36
|
"data-slot": "canvas-split",
|
|
37
|
-
className: cn(paper, "flex w-full max-w-3xl flex-col overflow-hidden rounded-
|
|
37
|
+
className: cn(paper, "flex w-full max-w-3xl flex-col overflow-hidden rounded-overlay md:h-80 md:flex-row", className),
|
|
38
38
|
...props
|
|
39
39
|
});
|
|
40
40
|
}
|
|
@@ -54,7 +54,7 @@ function CanvasSplitMessage({ speaker, className, ...props }) {
|
|
|
54
54
|
return /* @__PURE__ */ jsx("div", {
|
|
55
55
|
"data-slot": "canvas-split-message",
|
|
56
56
|
"data-speaker": speaker,
|
|
57
|
-
className: cn("cue-elements-fade-in cue-elements-animate-in cue-elements-fill-mode-both text-(length:--cue-text-body) leading-(--cue-leading-ui) duration-300", speaker === "user" ? cn(field, "text-fg-muted ms-auto rounded-
|
|
57
|
+
className: cn("cue-elements-fade-in cue-elements-animate-in cue-elements-fill-mode-both text-(length:--cue-text-body) leading-(--cue-leading-ui) duration-300", speaker === "user" ? cn(field, "text-fg-muted ms-auto rounded-overlay px-3 py-2") : "text-fg-muted", className),
|
|
58
58
|
...props
|
|
59
59
|
});
|
|
60
60
|
}
|
package/dist/elements/chart.js
CHANGED
|
@@ -45,7 +45,7 @@ function Chart({ label, value, delta, points, visibleCount, variant = "area", cl
|
|
|
45
45
|
const rising = delta !== void 0 && !falling;
|
|
46
46
|
return /* @__PURE__ */ jsxs("div", {
|
|
47
47
|
"data-slot": "chart",
|
|
48
|
-
className: cn(paper, "flex w-full max-w-sm flex-col gap-3 rounded-
|
|
48
|
+
className: cn(paper, "flex w-full max-w-sm flex-col gap-3 rounded-overlay p-4", className),
|
|
49
49
|
...props,
|
|
50
50
|
children: [
|
|
51
51
|
/* @__PURE__ */ jsxs("div", {
|
|
@@ -27,7 +27,7 @@ import { ArrowUpIcon } from "lucide-react";
|
|
|
27
27
|
function ChatPanel({ className, ...props }) {
|
|
28
28
|
return /* @__PURE__ */ jsx("div", {
|
|
29
29
|
"data-slot": "chat-panel",
|
|
30
|
-
className: cn(paper, "flex h-[270px] w-full max-w-md flex-col overflow-hidden rounded-
|
|
30
|
+
className: cn(paper, "flex h-[270px] w-full max-w-md flex-col overflow-hidden rounded-overlay", className),
|
|
31
31
|
...props
|
|
32
32
|
});
|
|
33
33
|
}
|
|
@@ -46,7 +46,7 @@ function ChatPanelMessages({ className, ...props }) {
|
|
|
46
46
|
function ChatPanelUserMessage({ className, ...props }) {
|
|
47
47
|
return /* @__PURE__ */ jsx("div", {
|
|
48
48
|
"data-slot": "chat-panel-user-message",
|
|
49
|
-
className: cn(field, "cue-elements-fade-in cue-elements-slide-in-from-bottom-1 cue-elements-animate-in self-end rounded-
|
|
49
|
+
className: cn(field, "cue-elements-fade-in cue-elements-slide-in-from-bottom-1 cue-elements-animate-in self-end rounded-overlay px-3 py-1.5 text-(length:--cue-text-ui) duration-300", className),
|
|
50
50
|
...props
|
|
51
51
|
});
|
|
52
52
|
}
|
|
@@ -16,7 +16,7 @@ function CheckpointHistory({ checkpoints, currentId, onRestore, className, ...pr
|
|
|
16
16
|
const currentIndex = checkpoints.findIndex((checkpoint) => checkpoint.id === currentId);
|
|
17
17
|
return /* @__PURE__ */ jsxs("div", {
|
|
18
18
|
"data-slot": "checkpoint-history",
|
|
19
|
-
className: cn(paper, "flex w-full max-w-sm flex-col gap-1 rounded-
|
|
19
|
+
className: cn(paper, "flex w-full max-w-sm flex-col gap-1 rounded-overlay p-3", className),
|
|
20
20
|
...props,
|
|
21
21
|
children: [/* @__PURE__ */ jsx("span", {
|
|
22
22
|
className: "px-1.5 pb-1 text-(length:--cue-text-body) font-medium",
|
|
@@ -25,7 +25,7 @@ function CheckpointHistory({ checkpoints, currentId, onRestore, className, ...pr
|
|
|
25
25
|
const ahead = currentIndex >= 0 && i > currentIndex;
|
|
26
26
|
const current = checkpoint.id === currentId;
|
|
27
27
|
return /* @__PURE__ */ jsxs("div", {
|
|
28
|
-
className: cn("group flex items-center gap-2.5 rounded-
|
|
28
|
+
className: cn("group flex items-center gap-2.5 rounded-surface px-1.5 py-1.5 transition-colors", current ? "bg-surface-1" : "hover:bg-surface-1", ahead && "opacity-40"),
|
|
29
29
|
children: [
|
|
30
30
|
/* @__PURE__ */ jsx("span", {
|
|
31
31
|
"aria-hidden": true,
|
package/dist/elements/clamp.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { FOCUS_RING } from "../system/_focus-ring.js";
|
|
3
4
|
import { useIsomorphicLayoutEffect } from "../system/use-isomorphic-layout-effect.js";
|
|
4
5
|
import { CLAMP_LABELS } from "./vocabulary.js";
|
|
5
6
|
import * as React from "react";
|
|
@@ -100,7 +101,7 @@ const Clamp = React.forwardRef(function Clamp({ height = 250, fade = 50, open, o
|
|
|
100
101
|
"data-slot": "clamp-reveal",
|
|
101
102
|
"aria-expanded": open,
|
|
102
103
|
onClick: () => onOpenChange?.(!open),
|
|
103
|
-
className: cn(
|
|
104
|
+
className: cn(`text-fg-muted hover:text-fg self-start rounded-control py-0.5 text-(length:--cue-text-ui) transition-opacity ${FOCUS_RING} motion-reduce:transition-none`, !open && "opacity-60 group-hover/clamp:opacity-100 focus-visible:opacity-100"),
|
|
104
105
|
children: open ? said.less : said.more
|
|
105
106
|
}) : null]
|
|
106
107
|
});
|
|
@@ -28,7 +28,7 @@ const GUTTER = {
|
|
|
28
28
|
function CodeDiff({ filename, additions, deletions, lines, cycle, className, ...props }) {
|
|
29
29
|
return /* @__PURE__ */ jsxs("div", {
|
|
30
30
|
"data-slot": "code-diff",
|
|
31
|
-
className: cn(paper, "w-full max-w-md overflow-hidden rounded-
|
|
31
|
+
className: cn(paper, "w-full max-w-md overflow-hidden rounded-overlay font-mono text-(length:--cue-text-ui)", className),
|
|
32
32
|
...props,
|
|
33
33
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
34
34
|
className: "flex items-center justify-between px-4 pt-3 pb-2",
|
|
@@ -22,7 +22,7 @@ import { Loader2Icon, PlayIcon } from "lucide-react";
|
|
|
22
22
|
function CodeRunner({ language, code, state, output, durationMs, onRun, className, ...props }) {
|
|
23
23
|
return /* @__PURE__ */ jsxs("div", {
|
|
24
24
|
"data-slot": "code-runner",
|
|
25
|
-
className: cn(paper, "flex w-full max-w-md flex-col overflow-hidden rounded-
|
|
25
|
+
className: cn(paper, "flex w-full max-w-md flex-col overflow-hidden rounded-overlay", className),
|
|
26
26
|
...props,
|
|
27
27
|
children: [
|
|
28
28
|
/* @__PURE__ */ jsxs("div", {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/cn.js";
|
|
3
|
+
import { FOCUS_RING } from "../system/_focus-ring.js";
|
|
3
4
|
import { field, floating, mono } from "./surfaces.js";
|
|
4
5
|
import { useEffect, useId } from "react";
|
|
5
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -50,7 +51,7 @@ function ElementsCommandPalette({ commands, query, activeId, onQueryChange, onAc
|
|
|
50
51
|
};
|
|
51
52
|
return /* @__PURE__ */ jsxs("div", {
|
|
52
53
|
"data-slot": "command-palette",
|
|
53
|
-
className: cn(floating, "flex w-full max-w-sm flex-col overflow-hidden rounded-
|
|
54
|
+
className: cn(floating, "flex w-full max-w-sm flex-col overflow-hidden rounded-overlay", className),
|
|
54
55
|
...props,
|
|
55
56
|
children: [
|
|
56
57
|
/* @__PURE__ */ jsxs("div", {
|
|
@@ -68,10 +69,10 @@ function ElementsCommandPalette({ commands, query, activeId, onQueryChange, onAc
|
|
|
68
69
|
"aria-controls": listId,
|
|
69
70
|
"aria-autocomplete": "list",
|
|
70
71
|
"aria-activedescendant": ordered.some((command) => command.id === activeId) ? optionId(activeId) : void 0,
|
|
71
|
-
className:
|
|
72
|
+
className: `text-fg-muted placeholder:text-fg-subtle min-w-0 flex-1 bg-transparent text-(length:--cue-text-body) outline-none ${FOCUS_RING}`
|
|
72
73
|
}),
|
|
73
74
|
/* @__PURE__ */ jsx("span", {
|
|
74
|
-
className: cn(field, mono, "text-fg-subtle rounded-
|
|
75
|
+
className: cn(field, mono, "text-fg-subtle rounded-control px-1.5 py-0.5"),
|
|
75
76
|
children: "esc"
|
|
76
77
|
})
|
|
77
78
|
]
|
|
@@ -97,14 +98,14 @@ function ElementsCommandPalette({ commands, query, activeId, onQueryChange, onAc
|
|
|
97
98
|
"aria-selected": command.id === activeId,
|
|
98
99
|
onMouseDown: (event) => event.preventDefault(),
|
|
99
100
|
onClick: () => onRun?.(command.id),
|
|
100
|
-
className: cn("flex items-center gap-2 rounded-
|
|
101
|
+
className: cn("flex items-center gap-2 rounded-surface px-2 py-1.5 text-start transition-colors", command.id === activeId ? "bg-surface-2" : "hover:bg-surface-1"),
|
|
101
102
|
children: [/* @__PURE__ */ jsx("span", {
|
|
102
103
|
className: "min-w-0 flex-1 truncate text-(length:--cue-text-body)",
|
|
103
104
|
children: command.label
|
|
104
105
|
}), /* @__PURE__ */ jsx("span", {
|
|
105
106
|
className: "flex shrink-0 gap-1",
|
|
106
107
|
children: command.keys.map((key) => /* @__PURE__ */ jsx("span", {
|
|
107
|
-
className: cn(field, mono, "text-fg-subtle rounded-
|
|
108
|
+
className: cn(field, mono, "text-fg-subtle rounded-control px-1.5 py-0.5"),
|
|
108
109
|
children: key
|
|
109
110
|
}, key))
|
|
110
111
|
})]
|
|
@@ -20,14 +20,14 @@ import { CheckIcon, MinusIcon } from "lucide-react";
|
|
|
20
20
|
function ComparisonCard({ traitLabels, options, recommendedId, reason, className, ...props }) {
|
|
21
21
|
return /* @__PURE__ */ jsxs("div", {
|
|
22
22
|
"data-slot": "comparison-card",
|
|
23
|
-
className: cn(paper, "flex w-full max-w-md flex-col gap-3 rounded-
|
|
23
|
+
className: cn(paper, "flex w-full max-w-md flex-col gap-3 rounded-overlay p-4", className),
|
|
24
24
|
...props,
|
|
25
25
|
children: [/* @__PURE__ */ jsx("div", {
|
|
26
26
|
className: "flex gap-2",
|
|
27
27
|
children: options.map((option) => {
|
|
28
28
|
const recommended = option.id === recommendedId;
|
|
29
29
|
return /* @__PURE__ */ jsxs("div", {
|
|
30
|
-
className: cn("flex min-w-0 flex-1 flex-col gap-2 rounded-
|
|
30
|
+
className: cn("flex min-w-0 flex-1 flex-col gap-2 rounded-surface p-3 transition-colors", recommended ? "bg-stream/10" : field),
|
|
31
31
|
children: [/* @__PURE__ */ jsxs("div", {
|
|
32
32
|
className: "flex flex-col gap-0.5",
|
|
33
33
|
children: [/* @__PURE__ */ jsxs("span", {
|