@cueplusplus/ui 0.3.0 → 0.6.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 +2263 -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/chat/index.d.ts +2 -2
- package/dist/chat/message-list.d.ts +6 -0
- package/dist/chat/message-list.js +35 -0
- package/dist/chrome/_drag.js +59 -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/app-shell.d.ts +120 -2
- package/dist/chrome/app-shell.js +107 -8
- package/dist/chrome/index.d.ts +4 -3
- package/dist/chrome/status-bar.d.ts +87 -4
- package/dist/chrome/status-bar.js +80 -16
- package/dist/chrome/title-bar.d.ts +11 -1
- package/dist/chrome/title-bar.js +1 -3
- package/dist/configurator/_export.js +3 -2
- package/dist/configurator/_overrides.d.ts +1 -1
- package/dist/configurator/token-editor.js +4 -1
- package/dist/date/_segments.js +52 -6
- 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 +121 -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 +107 -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/forms/_chassis.d.ts +104 -4
- package/dist/forms/_chassis.js +104 -4
- package/dist/forms/input-group.d.ts +8 -3
- package/dist/forms/input-group.js +8 -3
- package/dist/forms/number-field.d.ts +3 -2
- package/dist/forms/number-field.js +3 -2
- 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 +12 -6
- package/dist/index.js +5 -1
- package/dist/instruments/_data-row.js +118 -0
- package/dist/instruments/data-row.d.ts +94 -0
- package/dist/instruments/data-row.js +151 -0
- package/dist/instruments/data-tree.d.ts +126 -0
- package/dist/instruments/data-tree.js +303 -0
- package/dist/instruments/index.d.ts +5 -2
- package/dist/instruments/index.js +4 -1
- package/dist/instruments/ledger.d.ts +105 -0
- package/dist/instruments/ledger.js +114 -0
- package/dist/instruments/table.d.ts +70 -2
- package/dist/instruments/table.js +133 -39
- package/dist/instruments/two-step-button.js +25 -6
- package/dist/layout/sidebar.d.ts +19 -1
- package/dist/layout/sidebar.js +19 -1
- package/dist/primitives/button.js +11 -1
- package/dist/primitives/chip.d.ts +35 -9
- package/dist/primitives/chip.js +97 -11
- package/dist/system/agent-skin.d.ts +27 -0
- package/dist/system/agent-skin.js +20 -0
- package/dist/system/portal.d.ts +5 -3
- package/dist/system/portal.js +19 -5
- package/dist/system/theme-provider.js +54 -9
- package/dist/system/use-density.d.ts +9 -0
- package/dist/system/use-density.js +9 -0
- package/dist/system/use-isomorphic-layout-effect.js +19 -1
- package/dist/theming/_presets.d.ts +1 -1
- package/dist/theming/_presets.js +74 -11
- package/dist/theming/contrast.d.ts +16 -4
- package/dist/theming/contrast.js +33 -6
- package/dist/theming/create-theme.d.ts +6 -2
- package/dist/theming/create-theme.js +32 -5
- package/dist/theming/serialize.d.ts +10 -1
- package/dist/theming/serialize.js +62 -8
- package/manifest/components/activity-graph.json +88 -0
- package/manifest/components/agent-card.json +120 -0
- package/manifest/components/agent-handoff.json +87 -0
- package/manifest/components/agent-mode-badge.json +84 -0
- package/manifest/components/agent-plan.json +67 -0
- package/manifest/components/agent-status.json +73 -0
- package/manifest/components/agent-surface.json +78 -0
- package/manifest/components/alert-dialog.json +1 -1
- package/manifest/components/animated-number.json +67 -0
- package/manifest/components/app-shell.json +142 -9
- package/manifest/components/approval-card.json +106 -0
- package/manifest/components/artifact-card.json +81 -0
- package/manifest/components/audience-icon.json +52 -0
- package/manifest/components/autocomplete.json +2 -0
- package/manifest/components/background-inbox.json +71 -0
- package/manifest/components/branch-picker.json +124 -0
- package/manifest/components/button.json +1 -0
- package/manifest/components/canvas-split-body.json +62 -0
- package/manifest/components/canvas-split-document.json +54 -0
- package/manifest/components/canvas-split-header.json +83 -0
- package/manifest/components/canvas-split-line.json +62 -0
- package/manifest/components/canvas-split-message.json +62 -0
- package/manifest/components/canvas-split-thread.json +54 -0
- package/manifest/components/canvas-split.json +60 -0
- package/manifest/components/catalogue-icon.json +52 -0
- package/manifest/components/channel-beta-icon.json +52 -0
- package/manifest/components/channel-released-icon.json +52 -0
- package/manifest/components/chart.json +93 -0
- package/manifest/components/chat-empty-state.json +55 -0
- package/manifest/components/chat-panel-assistant-message.json +51 -0
- package/manifest/components/chat-panel-composer.json +66 -0
- package/manifest/components/chat-panel-messages.json +51 -0
- package/manifest/components/chat-panel-typing.json +51 -0
- package/manifest/components/chat-panel-user-message.json +51 -0
- package/manifest/components/chat-panel.json +57 -0
- package/manifest/components/checkpoint-history.json +80 -0
- package/manifest/components/chip.json +24 -12
- package/manifest/components/clamp.json +102 -0
- package/manifest/components/cli-tool-icon.json +52 -0
- package/manifest/components/code-diff.json +87 -0
- package/manifest/components/code-runner.json +97 -0
- package/manifest/components/color-field.json +2 -0
- package/manifest/components/color-picker.json +2 -0
- package/manifest/components/combobox.json +2 -0
- package/manifest/components/compaction-row.json +100 -0
- package/manifest/components/comparison-card.json +83 -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 +75 -0
- package/manifest/components/composer-attachments.json +60 -0
- package/manifest/components/composer-bar.json +73 -0
- package/manifest/components/composer-command-item.json +79 -0
- package/manifest/components/composer-context.json +67 -0
- package/manifest/components/composer-input.json +73 -0
- package/manifest/components/composer-menu-item.json +72 -0
- package/manifest/components/composer-menu.json +79 -0
- package/manifest/components/composer-model-item.json +75 -0
- package/manifest/components/composer-model-trigger.json +75 -0
- package/manifest/components/composer-person-item.json +79 -0
- package/manifest/components/composer-send.json +80 -0
- package/manifest/components/composer-toolbar.json +65 -0
- package/manifest/components/composer-voice-button.json +68 -0
- package/manifest/components/composer-voice.json +75 -0
- package/manifest/components/composer.json +2 -0
- package/manifest/components/computer-use.json +84 -0
- package/manifest/components/confidence-marker.json +74 -0
- package/manifest/components/connection-state.json +84 -0
- package/manifest/components/context-breakdown.json +65 -0
- package/manifest/components/context-usage.json +85 -0
- package/manifest/components/conversation-search.json +92 -0
- package/manifest/components/cost-meter.json +74 -0
- package/manifest/components/cue-portal-frame.json +1 -1
- package/manifest/components/data-row.json +203 -0
- package/manifest/components/data-tree.json +151 -0
- package/manifest/components/date-field.json +2 -0
- package/manifest/components/date-picker.json +2 -0
- package/manifest/components/date-range-picker.json +2 -0
- package/manifest/components/day-separator.json +58 -0
- package/manifest/components/delegation-card.json +1 -1
- package/manifest/components/density.json +1 -1
- package/manifest/components/diagram.json +100 -0
- package/manifest/components/document-reference.json +90 -0
- package/manifest/components/draft-restore.json +82 -0
- package/manifest/components/drawer.json +1 -1
- package/manifest/components/dropdown-menu.json +1 -1
- package/manifest/components/edit-message.json +105 -0
- package/manifest/components/elements-command-palette.json +100 -0
- package/manifest/components/elements-composer.json +71 -0
- package/manifest/components/elements-data-table.json +68 -0
- package/manifest/components/elements-timeline.json +69 -0
- package/manifest/components/elicitation-form.json +103 -0
- package/manifest/components/empty-state-composer.json +64 -0
- package/manifest/components/empty-state-greeting.json +49 -0
- package/manifest/components/empty-state-suggestion.json +57 -0
- package/manifest/components/empty-state-suggestions.json +49 -0
- package/manifest/components/end-of-turn-summary.json +77 -0
- package/manifest/components/env-var-input.json +2 -0
- package/manifest/components/error-state.json +80 -0
- package/manifest/components/feedback-dialog.json +107 -0
- package/manifest/components/file-tree.json +83 -0
- package/manifest/components/flow-graph.json +75 -0
- package/manifest/components/folder-icon.json +52 -0
- package/manifest/components/frac.json +59 -0
- package/manifest/components/generation-loader.json +64 -0
- package/manifest/components/generative-ui.json +93 -0
- package/manifest/components/guardrail-notice.json +91 -0
- package/manifest/components/hover-card.json +1 -1
- package/manifest/components/image-generation.json +67 -0
- package/manifest/components/info-tip.json +1 -1
- package/manifest/components/inline-citation.json +77 -0
- package/manifest/components/input-group.json +4 -2
- package/manifest/components/input.json +3 -1
- package/manifest/components/job-progress.json +96 -0
- package/manifest/components/launcher-bubble.json +105 -0
- package/manifest/components/ledger.json +187 -0
- package/manifest/components/live-region-announcer.json +79 -0
- package/manifest/components/map-answer.json +83 -0
- package/manifest/components/markdown-text.json +94 -0
- package/manifest/components/math-block.json +74 -0
- package/manifest/components/mcp-server-icon.json +52 -0
- package/manifest/components/mcp-server-panel.json +87 -0
- package/manifest/components/memory-chips.json +65 -0
- package/manifest/components/message-actions.json +99 -0
- package/manifest/components/message-attachments.json +63 -0
- package/manifest/components/message-branches.json +71 -0
- package/manifest/components/message-list.json +1 -1
- package/manifest/components/message-pair.json +86 -0
- package/manifest/components/message-queue.json +74 -0
- package/manifest/components/message-timing.json +62 -0
- package/manifest/components/mobile-composer.json +126 -0
- package/manifest/components/model-picker.json +76 -0
- package/manifest/components/multi-select.json +2 -0
- package/manifest/components/musical-time-input.json +2 -0
- package/manifest/components/node-card.json +1 -1
- package/manifest/components/node-handle.json +1 -1
- package/manifest/components/number-field.json +3 -1
- package/manifest/components/number-ticker.json +61 -0
- package/manifest/components/onboarding.json +84 -0
- package/manifest/components/otp-field.json +9 -7
- package/manifest/components/password-input.json +2 -0
- package/manifest/components/permission-grant.json +92 -0
- package/manifest/components/permission-scopes.json +139 -0
- package/manifest/components/popover.json +1 -1
- package/manifest/components/prompt-library.json +99 -0
- package/manifest/components/queue-dock.json +110 -0
- package/manifest/components/quota-banner.json +94 -0
- package/manifest/components/quote-reply.json +105 -0
- package/manifest/components/read-aloud.json +111 -0
- package/manifest/components/reasoning-effort.json +81 -0
- package/manifest/components/reasoning-panel.json +108 -0
- package/manifest/components/recommendation-card.json +107 -0
- package/manifest/components/regenerate-menu.json +89 -0
- package/manifest/components/replay-player.json +102 -0
- package/manifest/components/research-report.json +76 -0
- package/manifest/components/retrieval-chunks.json +84 -0
- package/manifest/components/revert-dock.json +150 -0
- package/manifest/components/reviewable-diff.json +93 -0
- package/manifest/components/risk-badge.json +74 -0
- package/manifest/components/schedule-card.json +101 -0
- package/manifest/components/score-breakdown.json +91 -0
- package/manifest/components/scroll-anchor.json +72 -0
- package/manifest/components/scroll-area.json +7 -7
- package/manifest/components/scrub-input.json +2 -0
- package/manifest/components/search-input.json +9 -7
- package/manifest/components/segmented-control.json +21 -21
- package/manifest/components/select.json +1 -0
- package/manifest/components/settings-panel.json +118 -0
- package/manifest/components/shared-conversation.json +89 -0
- package/manifest/components/shimmer-label.json +59 -0
- package/manifest/components/skill-icon.json +52 -0
- package/manifest/components/sources.json +83 -0
- package/manifest/components/speaker-identity.json +61 -0
- package/manifest/components/spec-sheet.json +80 -0
- package/manifest/components/stack-icon.json +52 -0
- package/manifest/components/stacks-matrix-icon.json +52 -0
- package/manifest/components/stat.json +1 -1
- package/manifest/components/status-bar.json +146 -12
- package/manifest/components/status-dot.json +1 -1
- package/manifest/components/stopped-run.json +81 -0
- package/manifest/components/streaming-text.json +71 -0
- package/manifest/components/sub.json +44 -0
- package/manifest/components/subagent-list.json +88 -0
- package/manifest/components/suggestions.json +84 -0
- package/manifest/components/sup.json +44 -0
- package/manifest/components/swap-label.json +71 -0
- package/manifest/components/table-scroll-region.json +6 -0
- package/manifest/components/table.json +88 -4
- package/manifest/components/tags-input.json +2 -0
- package/manifest/components/tail-status.json +109 -0
- package/manifest/components/terminal-block.json +91 -0
- package/manifest/components/textarea.json +3 -1
- package/manifest/components/theme-provider.json +2 -2
- package/manifest/components/thinking-indicator.json +63 -0
- package/manifest/components/thread-list.json +76 -0
- package/manifest/components/thread-search.json +90 -0
- package/manifest/components/threshold-rail.json +2 -2
- package/manifest/components/time-boundary.json +62 -0
- package/manifest/components/time-field.json +2 -0
- package/manifest/components/timeline.json +1 -1
- package/manifest/components/title-bar.json +1 -1
- package/manifest/components/todo-list.json +69 -0
- package/manifest/components/toggle-group.json +9 -7
- package/manifest/components/toggle.json +2 -0
- package/manifest/components/token-editor.json +1 -1
- package/manifest/components/tool-call-card.json +200 -0
- package/manifest/components/tool-call.json +119 -0
- package/manifest/components/tool-error.json +114 -0
- package/manifest/components/tool-group.json +83 -0
- package/manifest/components/tool-timeline.json +119 -0
- package/manifest/components/toolbar.json +7 -7
- package/manifest/components/tooltip.json +1 -1
- package/manifest/components/trace-waterfall.json +74 -0
- package/manifest/components/turn-footer.json +105 -0
- package/manifest/components/typing-indicator.json +53 -0
- package/manifest/components/unread-divider.json +55 -0
- package/manifest/components/usage-chart.json +1 -1
- package/manifest/components/verdict-row.json +91 -0
- package/manifest/components/voice-conversation.json +109 -0
- package/manifest/components/web-preview.json +87 -0
- package/manifest/components/web-search.json +92 -0
- package/manifest/components/work-collapse.json +102 -0
- package/manifest/manifest.json +2736 -60
- package/manifest/tokens.json +22 -1
- package/package.json +44 -2
package/manifest/manifest.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"library": "@cueplusplus/ui",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.6.0",
|
|
5
5
|
"generatedAt": "1970-01-01T00:00:00.000Z",
|
|
6
6
|
"themes": [
|
|
7
7
|
"cue",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
],
|
|
30
30
|
"tokens": {
|
|
31
31
|
"path": "./tokens.json",
|
|
32
|
-
"sha256": "
|
|
32
|
+
"sha256": "ee37d52427d7da166c441686519f77621e1397fe6fa42ddfe4343a5f5cd10965"
|
|
33
33
|
},
|
|
34
34
|
"systemApis": [
|
|
35
35
|
{
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
{
|
|
61
61
|
"name": "DensityLevel",
|
|
62
62
|
"kind": "type",
|
|
63
|
-
"signature": "\"
|
|
63
|
+
"signature": "\"normal\" | \"large\" | \"compact\" | \"ultra-compact\" | \"ultra-large\""
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
66
|
"name": "DensityProps",
|
|
@@ -149,6 +149,32 @@
|
|
|
149
149
|
}
|
|
150
150
|
],
|
|
151
151
|
"components": [
|
|
152
|
+
{
|
|
153
|
+
"name": "BranchPicker",
|
|
154
|
+
"slug": "branch-picker",
|
|
155
|
+
"group": "agent-runtime",
|
|
156
|
+
"importPath": "@cueplusplus/ui/agent-runtime",
|
|
157
|
+
"summary": "The `‹ 2 / 3 ›` stepper over a turn's regenerated siblings, and nothing at all below two.",
|
|
158
|
+
"status": "stable",
|
|
159
|
+
"url": "/docs/components/branch-picker",
|
|
160
|
+
"mdUrl": "/docs/components/branch-picker.md",
|
|
161
|
+
"jsonUrl": "/r/components/branch-picker.json",
|
|
162
|
+
"path": "./components/branch-picker.json",
|
|
163
|
+
"sha256": "35efe7045cd881a673c5eadf3d01278ee15ce08ddaef75381234faf3d55fbae9"
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"name": "ToolCallCard",
|
|
167
|
+
"slug": "tool-call-card",
|
|
168
|
+
"group": "agent-runtime",
|
|
169
|
+
"importPath": "@cueplusplus/ui/agent-runtime",
|
|
170
|
+
"summary": "The model's own tool call: name, risk chip, status in words, and the arguments and result behind a disclosure.",
|
|
171
|
+
"status": "stable",
|
|
172
|
+
"url": "/docs/components/tool-call-card",
|
|
173
|
+
"mdUrl": "/docs/components/tool-call-card.md",
|
|
174
|
+
"jsonUrl": "/r/components/tool-call-card.json",
|
|
175
|
+
"path": "./components/tool-call-card.json",
|
|
176
|
+
"sha256": "96ced2528d12cc8b627fd11128ed13ad86f1dbcdfab354bb2a28f8d16a35a8f1"
|
|
177
|
+
},
|
|
152
178
|
{
|
|
153
179
|
"name": "CueLogotype",
|
|
154
180
|
"slug": "cue-logotype",
|
|
@@ -277,7 +303,7 @@
|
|
|
277
303
|
"mdUrl": "/docs/components/composer.md",
|
|
278
304
|
"jsonUrl": "/r/components/composer.json",
|
|
279
305
|
"path": "./components/composer.json",
|
|
280
|
-
"sha256": "
|
|
306
|
+
"sha256": "623c6c99e1a4890d582e5bb2f3c1fbf6ec42fcb8383e51cad360ac935d875a88"
|
|
281
307
|
},
|
|
282
308
|
{
|
|
283
309
|
"name": "DelegationCard",
|
|
@@ -290,7 +316,7 @@
|
|
|
290
316
|
"mdUrl": "/docs/components/delegation-card.md",
|
|
291
317
|
"jsonUrl": "/r/components/delegation-card.json",
|
|
292
318
|
"path": "./components/delegation-card.json",
|
|
293
|
-
"sha256": "
|
|
319
|
+
"sha256": "3f6abe7a828fb1ab4da757bc4386d6133b21d3fc6b5f735bdc9bdac106269253"
|
|
294
320
|
},
|
|
295
321
|
{
|
|
296
322
|
"name": "Message",
|
|
@@ -316,7 +342,7 @@
|
|
|
316
342
|
"mdUrl": "/docs/components/message-list.md",
|
|
317
343
|
"jsonUrl": "/r/components/message-list.json",
|
|
318
344
|
"path": "./components/message-list.json",
|
|
319
|
-
"sha256": "
|
|
345
|
+
"sha256": "cff3ec0f9e53fd57bb4d641c5bb3310eeeb1d544e0692a7ffc850eb63bd14794"
|
|
320
346
|
},
|
|
321
347
|
{
|
|
322
348
|
"name": "AppBar",
|
|
@@ -342,7 +368,7 @@
|
|
|
342
368
|
"mdUrl": "/docs/components/app-shell.md",
|
|
343
369
|
"jsonUrl": "/r/components/app-shell.json",
|
|
344
370
|
"path": "./components/app-shell.json",
|
|
345
|
-
"sha256": "
|
|
371
|
+
"sha256": "5ac38bfecf8b97b77fa5692d84e2dd4eab3a46a1e3e42578ea17fbc7c3fa7ccc"
|
|
346
372
|
},
|
|
347
373
|
{
|
|
348
374
|
"name": "EmptyState",
|
|
@@ -472,7 +498,7 @@
|
|
|
472
498
|
"mdUrl": "/docs/components/scroll-area.md",
|
|
473
499
|
"jsonUrl": "/r/components/scroll-area.json",
|
|
474
500
|
"path": "./components/scroll-area.json",
|
|
475
|
-
"sha256": "
|
|
501
|
+
"sha256": "7abd3f305ecba8b5a0f9763e90cece1498c17d30e17cceb46d0ef9c473e60a6a"
|
|
476
502
|
},
|
|
477
503
|
{
|
|
478
504
|
"name": "SeamList",
|
|
@@ -511,20 +537,20 @@
|
|
|
511
537
|
"mdUrl": "/docs/components/segmented-control.md",
|
|
512
538
|
"jsonUrl": "/r/components/segmented-control.json",
|
|
513
539
|
"path": "./components/segmented-control.json",
|
|
514
|
-
"sha256": "
|
|
540
|
+
"sha256": "a0b617aad00b1349196770b051581d7368a0dbc17ec46f293cff5c5e75c617ce"
|
|
515
541
|
},
|
|
516
542
|
{
|
|
517
543
|
"name": "StatusBar",
|
|
518
544
|
"slug": "status-bar",
|
|
519
545
|
"group": "chrome",
|
|
520
546
|
"importPath": "@cueplusplus/ui",
|
|
521
|
-
"summary": "The quiet strip along the bottom of a window.",
|
|
522
|
-
"status": "
|
|
547
|
+
"summary": "The quiet strip along the bottom of a window: readings by default, controls where the reading is worth clicking.",
|
|
548
|
+
"status": "stable",
|
|
523
549
|
"url": "/docs/components/status-bar",
|
|
524
550
|
"mdUrl": "/docs/components/status-bar.md",
|
|
525
551
|
"jsonUrl": "/r/components/status-bar.json",
|
|
526
552
|
"path": "./components/status-bar.json",
|
|
527
|
-
"sha256": "
|
|
553
|
+
"sha256": "c38c69a055f044328a1d40e0f9cf6f0cc6635a648a2cf0f7f9ed719423e60653"
|
|
528
554
|
},
|
|
529
555
|
{
|
|
530
556
|
"name": "Tabs",
|
|
@@ -550,7 +576,7 @@
|
|
|
550
576
|
"mdUrl": "/docs/components/title-bar.md",
|
|
551
577
|
"jsonUrl": "/r/components/title-bar.json",
|
|
552
578
|
"path": "./components/title-bar.json",
|
|
553
|
-
"sha256": "
|
|
579
|
+
"sha256": "f32f134785d92bc35a6184f30495329b315f9329fe3c9331fbce0fc3415b1a61"
|
|
554
580
|
},
|
|
555
581
|
{
|
|
556
582
|
"name": "Toolbar",
|
|
@@ -563,7 +589,7 @@
|
|
|
563
589
|
"mdUrl": "/docs/components/toolbar.md",
|
|
564
590
|
"jsonUrl": "/r/components/toolbar.json",
|
|
565
591
|
"path": "./components/toolbar.json",
|
|
566
|
-
"sha256": "
|
|
592
|
+
"sha256": "c82045a3ba696e65793a48d26df82993b8f6abc4f66c546edf8988208307c973"
|
|
567
593
|
},
|
|
568
594
|
{
|
|
569
595
|
"name": "Tree",
|
|
@@ -615,7 +641,7 @@
|
|
|
615
641
|
"mdUrl": "/docs/components/color-field.md",
|
|
616
642
|
"jsonUrl": "/r/components/color-field.json",
|
|
617
643
|
"path": "./components/color-field.json",
|
|
618
|
-
"sha256": "
|
|
644
|
+
"sha256": "1bc8a5cd4904e5a6ae383e9252ecfee51cb0e895db185af05f66b56660045749"
|
|
619
645
|
},
|
|
620
646
|
{
|
|
621
647
|
"name": "ColorPicker",
|
|
@@ -628,7 +654,7 @@
|
|
|
628
654
|
"mdUrl": "/docs/components/color-picker.md",
|
|
629
655
|
"jsonUrl": "/r/components/color-picker.json",
|
|
630
656
|
"path": "./components/color-picker.json",
|
|
631
|
-
"sha256": "
|
|
657
|
+
"sha256": "948344684ed4f1c869d67347e77dd6353373db63f250b1fe9b8c1a9f2300f53b"
|
|
632
658
|
},
|
|
633
659
|
{
|
|
634
660
|
"name": "ColorSlider",
|
|
@@ -732,7 +758,7 @@
|
|
|
732
758
|
"mdUrl": "/docs/components/token-editor.md",
|
|
733
759
|
"jsonUrl": "/r/components/token-editor.json",
|
|
734
760
|
"path": "./components/token-editor.json",
|
|
735
|
-
"sha256": "
|
|
761
|
+
"sha256": "9a5e0fb93937755d93f66bf7fb033c93e317586afcda879c9387f173131d1196"
|
|
736
762
|
},
|
|
737
763
|
{
|
|
738
764
|
"name": "Calendar",
|
|
@@ -758,7 +784,7 @@
|
|
|
758
784
|
"mdUrl": "/docs/components/date-field.md",
|
|
759
785
|
"jsonUrl": "/r/components/date-field.json",
|
|
760
786
|
"path": "./components/date-field.json",
|
|
761
|
-
"sha256": "
|
|
787
|
+
"sha256": "8b27007d07f8d8b9383a1454032d80ca9b5b066fca55f2fbfeed559c7270b1d4"
|
|
762
788
|
},
|
|
763
789
|
{
|
|
764
790
|
"name": "DatePicker",
|
|
@@ -771,7 +797,7 @@
|
|
|
771
797
|
"mdUrl": "/docs/components/date-picker.md",
|
|
772
798
|
"jsonUrl": "/r/components/date-picker.json",
|
|
773
799
|
"path": "./components/date-picker.json",
|
|
774
|
-
"sha256": "
|
|
800
|
+
"sha256": "0956a1fbb0c6704b81d03617ecce78b61338c3683e7ebe1f2cc08cc9b45f77dc"
|
|
775
801
|
},
|
|
776
802
|
{
|
|
777
803
|
"name": "DateRangePicker",
|
|
@@ -784,7 +810,7 @@
|
|
|
784
810
|
"mdUrl": "/docs/components/date-range-picker.md",
|
|
785
811
|
"jsonUrl": "/r/components/date-range-picker.json",
|
|
786
812
|
"path": "./components/date-range-picker.json",
|
|
787
|
-
"sha256": "
|
|
813
|
+
"sha256": "f4462db91f5beb8240d76e20c87989e1109f950ad00369a12a0470871890ff1f"
|
|
788
814
|
},
|
|
789
815
|
{
|
|
790
816
|
"name": "TimeField",
|
|
@@ -797,7 +823,7 @@
|
|
|
797
823
|
"mdUrl": "/docs/components/time-field.md",
|
|
798
824
|
"jsonUrl": "/r/components/time-field.json",
|
|
799
825
|
"path": "./components/time-field.json",
|
|
800
|
-
"sha256": "
|
|
826
|
+
"sha256": "f47da2f4616ca30765cde2779a3ebb3cdb5271d65b7d27c0c6f951902ec9b4c6"
|
|
801
827
|
},
|
|
802
828
|
{
|
|
803
829
|
"name": "ChannelMatrix",
|
|
@@ -851,6 +877,1982 @@
|
|
|
851
877
|
"path": "./components/universe-grid.json",
|
|
852
878
|
"sha256": "774d4aef69a7cc2b9925082239c952d8ed1df2ced5ca431b2e562206bb8ea7e0"
|
|
853
879
|
},
|
|
880
|
+
{
|
|
881
|
+
"name": "ActivityGraph",
|
|
882
|
+
"slug": "activity-graph",
|
|
883
|
+
"group": "elements",
|
|
884
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
885
|
+
"summary": "A half-year of runs as a calendar of cells, dense where the work was.",
|
|
886
|
+
"status": "todo-docs",
|
|
887
|
+
"url": "/docs/components/activity-graph",
|
|
888
|
+
"mdUrl": "/docs/components/activity-graph.md",
|
|
889
|
+
"jsonUrl": "/r/components/activity-graph.json",
|
|
890
|
+
"path": "./components/activity-graph.json",
|
|
891
|
+
"sha256": "e5cd7246efcb4edab76a23eb51c81055eb426ffeb50d1879380a37d2a72ab4a7"
|
|
892
|
+
},
|
|
893
|
+
{
|
|
894
|
+
"name": "AgentCard",
|
|
895
|
+
"slug": "agent-card",
|
|
896
|
+
"group": "elements",
|
|
897
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
898
|
+
"summary": "Who you are about to talk to: its skills, its model, and the endpoint behind it.",
|
|
899
|
+
"status": "todo-docs",
|
|
900
|
+
"url": "/docs/components/agent-card",
|
|
901
|
+
"mdUrl": "/docs/components/agent-card.md",
|
|
902
|
+
"jsonUrl": "/r/components/agent-card.json",
|
|
903
|
+
"path": "./components/agent-card.json",
|
|
904
|
+
"sha256": "a2cd9227615f220864c1690ba51086abe38edd3698113f3637473639c74f5206"
|
|
905
|
+
},
|
|
906
|
+
{
|
|
907
|
+
"name": "AgentHandoff",
|
|
908
|
+
"slug": "agent-handoff",
|
|
909
|
+
"group": "elements",
|
|
910
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
911
|
+
"summary": "Control passing between agents, with the reason and what came along.",
|
|
912
|
+
"status": "todo-docs",
|
|
913
|
+
"url": "/docs/components/agent-handoff",
|
|
914
|
+
"mdUrl": "/docs/components/agent-handoff.md",
|
|
915
|
+
"jsonUrl": "/r/components/agent-handoff.json",
|
|
916
|
+
"path": "./components/agent-handoff.json",
|
|
917
|
+
"sha256": "6688005feac685fcac1efb5a1a19aa990453b1d1974c64766d69e48d006ae192"
|
|
918
|
+
},
|
|
919
|
+
{
|
|
920
|
+
"name": "AgentModeBadge",
|
|
921
|
+
"slug": "agent-mode-badge",
|
|
922
|
+
"group": "elements",
|
|
923
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
924
|
+
"summary": "What the run is allowed to do, said in one chip and one attribute.",
|
|
925
|
+
"status": "todo-docs",
|
|
926
|
+
"url": "/docs/components/agent-mode-badge",
|
|
927
|
+
"mdUrl": "/docs/components/agent-mode-badge.md",
|
|
928
|
+
"jsonUrl": "/r/components/agent-mode-badge.json",
|
|
929
|
+
"path": "./components/agent-mode-badge.json",
|
|
930
|
+
"sha256": "afa0272fdfa1504163c586c2cac056dabca0cf8de775c718c84068468d1df3b7"
|
|
931
|
+
},
|
|
932
|
+
{
|
|
933
|
+
"name": "AgentPlan",
|
|
934
|
+
"slug": "agent-plan",
|
|
935
|
+
"group": "elements",
|
|
936
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
937
|
+
"summary": "A checklist the agent works through, with progress you can glance.",
|
|
938
|
+
"status": "todo-docs",
|
|
939
|
+
"url": "/docs/components/agent-plan",
|
|
940
|
+
"mdUrl": "/docs/components/agent-plan.md",
|
|
941
|
+
"jsonUrl": "/r/components/agent-plan.json",
|
|
942
|
+
"path": "./components/agent-plan.json",
|
|
943
|
+
"sha256": "d364a846cc5bddaf2354db1adb95a3bd269b1ef0d6d12725fc47e242aabcf69c"
|
|
944
|
+
},
|
|
945
|
+
{
|
|
946
|
+
"name": "AgentStatus",
|
|
947
|
+
"slug": "agent-status",
|
|
948
|
+
"group": "elements",
|
|
949
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
950
|
+
"summary": "One pill that always answers: what is it doing, and for how long.",
|
|
951
|
+
"status": "todo-docs",
|
|
952
|
+
"url": "/docs/components/agent-status",
|
|
953
|
+
"mdUrl": "/docs/components/agent-status.md",
|
|
954
|
+
"jsonUrl": "/r/components/agent-status.json",
|
|
955
|
+
"path": "./components/agent-status.json",
|
|
956
|
+
"sha256": "743adb20cf426337127feea8b10282d16c3fec1c2f04857325e5710b6f122523"
|
|
957
|
+
},
|
|
958
|
+
{
|
|
959
|
+
"name": "AgentSurface",
|
|
960
|
+
"slug": "agent-surface",
|
|
961
|
+
"group": "elements",
|
|
962
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
963
|
+
"summary": "The supersede island: one subtree, painted by a different set of values.",
|
|
964
|
+
"status": "todo-docs",
|
|
965
|
+
"url": "/docs/components/agent-surface",
|
|
966
|
+
"mdUrl": "/docs/components/agent-surface.md",
|
|
967
|
+
"jsonUrl": "/r/components/agent-surface.json",
|
|
968
|
+
"path": "./components/agent-surface.json",
|
|
969
|
+
"sha256": "8751c921df93d3e7ecdc819c9f82f2f554dc134248eb8a439d8c278706609926"
|
|
970
|
+
},
|
|
971
|
+
{
|
|
972
|
+
"name": "AnimatedNumber",
|
|
973
|
+
"slug": "animated-number",
|
|
974
|
+
"group": "elements",
|
|
975
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
976
|
+
"summary": "A number that counts to its new value instead of jumping to it.",
|
|
977
|
+
"status": "todo-docs",
|
|
978
|
+
"url": "/docs/components/animated-number",
|
|
979
|
+
"mdUrl": "/docs/components/animated-number.md",
|
|
980
|
+
"jsonUrl": "/r/components/animated-number.json",
|
|
981
|
+
"path": "./components/animated-number.json",
|
|
982
|
+
"sha256": "324ac89aebe6d563839fd7c0def6bd8299d9bdbbbbacd30c93c142c4a684e8ad"
|
|
983
|
+
},
|
|
984
|
+
{
|
|
985
|
+
"name": "ApprovalCard",
|
|
986
|
+
"slug": "approval-card",
|
|
987
|
+
"group": "elements",
|
|
988
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
989
|
+
"summary": "Human in the loop: the agent asks before it runs anything with side effects.",
|
|
990
|
+
"status": "todo-docs",
|
|
991
|
+
"url": "/docs/components/approval-card",
|
|
992
|
+
"mdUrl": "/docs/components/approval-card.md",
|
|
993
|
+
"jsonUrl": "/r/components/approval-card.json",
|
|
994
|
+
"path": "./components/approval-card.json",
|
|
995
|
+
"sha256": "8fc78d7901d6ac6b3d677e70454f387a76848bef34f6cc04b6515e4f49f8ccf9"
|
|
996
|
+
},
|
|
997
|
+
{
|
|
998
|
+
"name": "ArtifactCard",
|
|
999
|
+
"slug": "artifact-card",
|
|
1000
|
+
"group": "elements",
|
|
1001
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1002
|
+
"summary": "A generated document as a tangible object, written live and versioned.",
|
|
1003
|
+
"status": "todo-docs",
|
|
1004
|
+
"url": "/docs/components/artifact-card",
|
|
1005
|
+
"mdUrl": "/docs/components/artifact-card.md",
|
|
1006
|
+
"jsonUrl": "/r/components/artifact-card.json",
|
|
1007
|
+
"path": "./components/artifact-card.json",
|
|
1008
|
+
"sha256": "17d21f15dc258209f175a67887ea9aefe6037471dc521e11a6a7e867369a264d"
|
|
1009
|
+
},
|
|
1010
|
+
{
|
|
1011
|
+
"name": "BackgroundInbox",
|
|
1012
|
+
"slug": "background-inbox",
|
|
1013
|
+
"group": "elements",
|
|
1014
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1015
|
+
"summary": "Work still going somewhere else, and the results waiting to be collected.",
|
|
1016
|
+
"status": "todo-docs",
|
|
1017
|
+
"url": "/docs/components/background-inbox",
|
|
1018
|
+
"mdUrl": "/docs/components/background-inbox.md",
|
|
1019
|
+
"jsonUrl": "/r/components/background-inbox.json",
|
|
1020
|
+
"path": "./components/background-inbox.json",
|
|
1021
|
+
"sha256": "70b5ef016442a279dd28830fdd22c75826789e8cc290498277cd3cbc47027606"
|
|
1022
|
+
},
|
|
1023
|
+
{
|
|
1024
|
+
"name": "CanvasSplit",
|
|
1025
|
+
"slug": "canvas-split",
|
|
1026
|
+
"group": "elements",
|
|
1027
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1028
|
+
"summary": "The thread steps aside and the document takes the room, still being written as you read.",
|
|
1029
|
+
"status": "todo-docs",
|
|
1030
|
+
"url": "/docs/components/canvas-split",
|
|
1031
|
+
"mdUrl": "/docs/components/canvas-split.md",
|
|
1032
|
+
"jsonUrl": "/r/components/canvas-split.json",
|
|
1033
|
+
"path": "./components/canvas-split.json",
|
|
1034
|
+
"sha256": "c316e453f5dd51575c4650c59057911556a72f53109d275a3aec5f0af78b9df4"
|
|
1035
|
+
},
|
|
1036
|
+
{
|
|
1037
|
+
"name": "CanvasSplitBody",
|
|
1038
|
+
"slug": "canvas-split-body",
|
|
1039
|
+
"group": "elements",
|
|
1040
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1041
|
+
"summary": "The document's text, scrolling on its own, with a caret while it is still being written.",
|
|
1042
|
+
"status": "todo-docs",
|
|
1043
|
+
"url": "/docs/components/canvas-split-body",
|
|
1044
|
+
"mdUrl": "/docs/components/canvas-split-body.md",
|
|
1045
|
+
"jsonUrl": "/r/components/canvas-split-body.json",
|
|
1046
|
+
"path": "./components/canvas-split-body.json",
|
|
1047
|
+
"sha256": "f43de3ffb2908742713a230134da48d51798dee7f2229e5ba8c39facccf0f08c"
|
|
1048
|
+
},
|
|
1049
|
+
{
|
|
1050
|
+
"name": "CanvasSplitDocument",
|
|
1051
|
+
"slug": "canvas-split-document",
|
|
1052
|
+
"group": "elements",
|
|
1053
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1054
|
+
"summary": "The document half of the split: the header, and the body under it.",
|
|
1055
|
+
"status": "todo-docs",
|
|
1056
|
+
"url": "/docs/components/canvas-split-document",
|
|
1057
|
+
"mdUrl": "/docs/components/canvas-split-document.md",
|
|
1058
|
+
"jsonUrl": "/r/components/canvas-split-document.json",
|
|
1059
|
+
"path": "./components/canvas-split-document.json",
|
|
1060
|
+
"sha256": "40be79e043224fcaf255bf09066eea2c31f568602f3631ceb8ce73cf91466604"
|
|
1061
|
+
},
|
|
1062
|
+
{
|
|
1063
|
+
"name": "CanvasSplitHeader",
|
|
1064
|
+
"slug": "canvas-split-header",
|
|
1065
|
+
"group": "elements",
|
|
1066
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1067
|
+
"summary": "What the document is, which version this is, and whether it has been written down yet — with copy and close beside them.",
|
|
1068
|
+
"status": "todo-docs",
|
|
1069
|
+
"url": "/docs/components/canvas-split-header",
|
|
1070
|
+
"mdUrl": "/docs/components/canvas-split-header.md",
|
|
1071
|
+
"jsonUrl": "/r/components/canvas-split-header.json",
|
|
1072
|
+
"path": "./components/canvas-split-header.json",
|
|
1073
|
+
"sha256": "12776eef4de8dafb73d93c4b437e7b05eb0b2488bde29be4de57e321bca7ebdf"
|
|
1074
|
+
},
|
|
1075
|
+
{
|
|
1076
|
+
"name": "CanvasSplitLine",
|
|
1077
|
+
"slug": "canvas-split-line",
|
|
1078
|
+
"group": "elements",
|
|
1079
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1080
|
+
"summary": "One line of the document, arriving as it is written.",
|
|
1081
|
+
"status": "todo-docs",
|
|
1082
|
+
"url": "/docs/components/canvas-split-line",
|
|
1083
|
+
"mdUrl": "/docs/components/canvas-split-line.md",
|
|
1084
|
+
"jsonUrl": "/r/components/canvas-split-line.json",
|
|
1085
|
+
"path": "./components/canvas-split-line.json",
|
|
1086
|
+
"sha256": "0396434c2fc20e1f8bcf350dd5f78d5d1ccbef43d9469e43bcc0b148e1a37866"
|
|
1087
|
+
},
|
|
1088
|
+
{
|
|
1089
|
+
"name": "CanvasSplitMessage",
|
|
1090
|
+
"slug": "canvas-split-message",
|
|
1091
|
+
"group": "elements",
|
|
1092
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1093
|
+
"summary": "One turn inside the rail — a filled bubble for the person, plain text for the model.",
|
|
1094
|
+
"status": "todo-docs",
|
|
1095
|
+
"url": "/docs/components/canvas-split-message",
|
|
1096
|
+
"mdUrl": "/docs/components/canvas-split-message.md",
|
|
1097
|
+
"jsonUrl": "/r/components/canvas-split-message.json",
|
|
1098
|
+
"path": "./components/canvas-split-message.json",
|
|
1099
|
+
"sha256": "3db69025c3dff177612ecc540d4ff34b7d1e29e74c6ab8f28f22e12bc42a058e"
|
|
1100
|
+
},
|
|
1101
|
+
{
|
|
1102
|
+
"name": "CanvasSplitThread",
|
|
1103
|
+
"slug": "canvas-split-thread",
|
|
1104
|
+
"group": "elements",
|
|
1105
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1106
|
+
"summary": "The conversation, narrowed to a rail beside the document.",
|
|
1107
|
+
"status": "todo-docs",
|
|
1108
|
+
"url": "/docs/components/canvas-split-thread",
|
|
1109
|
+
"mdUrl": "/docs/components/canvas-split-thread.md",
|
|
1110
|
+
"jsonUrl": "/r/components/canvas-split-thread.json",
|
|
1111
|
+
"path": "./components/canvas-split-thread.json",
|
|
1112
|
+
"sha256": "2e8f372cce94ee26a716d372875b541990ae21060acbd0e724dc1dbeaad6b875"
|
|
1113
|
+
},
|
|
1114
|
+
{
|
|
1115
|
+
"name": "Chart",
|
|
1116
|
+
"slug": "chart",
|
|
1117
|
+
"group": "elements",
|
|
1118
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1119
|
+
"summary": "Area, line, and bars, with points landing one at a time as the series streams in.",
|
|
1120
|
+
"status": "todo-docs",
|
|
1121
|
+
"url": "/docs/components/chart",
|
|
1122
|
+
"mdUrl": "/docs/components/chart.md",
|
|
1123
|
+
"jsonUrl": "/r/components/chart.json",
|
|
1124
|
+
"path": "./components/chart.json",
|
|
1125
|
+
"sha256": "ddb4dc53c1174bd210350ef03b516870a790650cf0b97be505b5c945f69a295c"
|
|
1126
|
+
},
|
|
1127
|
+
{
|
|
1128
|
+
"name": "ChatEmptyState",
|
|
1129
|
+
"slug": "chat-empty-state",
|
|
1130
|
+
"group": "elements",
|
|
1131
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1132
|
+
"summary": "The first screen: a greeting, three ways in, and the composer front and center.",
|
|
1133
|
+
"status": "todo-docs",
|
|
1134
|
+
"url": "/docs/components/chat-empty-state",
|
|
1135
|
+
"mdUrl": "/docs/components/chat-empty-state.md",
|
|
1136
|
+
"jsonUrl": "/r/components/chat-empty-state.json",
|
|
1137
|
+
"path": "./components/chat-empty-state.json",
|
|
1138
|
+
"sha256": "64d4fdc4c6d7d8f94531d504443819018b7687492222d436cc8cda6f6c562ebf"
|
|
1139
|
+
},
|
|
1140
|
+
{
|
|
1141
|
+
"name": "ChatPanel",
|
|
1142
|
+
"slug": "chat-panel",
|
|
1143
|
+
"group": "elements",
|
|
1144
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1145
|
+
"summary": "The whole family working together: a message, a pause, a streamed reply.",
|
|
1146
|
+
"status": "todo-docs",
|
|
1147
|
+
"url": "/docs/components/chat-panel",
|
|
1148
|
+
"mdUrl": "/docs/components/chat-panel.md",
|
|
1149
|
+
"jsonUrl": "/r/components/chat-panel.json",
|
|
1150
|
+
"path": "./components/chat-panel.json",
|
|
1151
|
+
"sha256": "683985a6a175e6af2919576146cc3674a92040e383b4bf354824d9af6193b98d"
|
|
1152
|
+
},
|
|
1153
|
+
{
|
|
1154
|
+
"name": "ChatPanelAssistantMessage",
|
|
1155
|
+
"slug": "chat-panel-assistant-message",
|
|
1156
|
+
"group": "elements",
|
|
1157
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1158
|
+
"summary": "One message from the model: plain text on the leading edge, no bubble.",
|
|
1159
|
+
"status": "todo-docs",
|
|
1160
|
+
"url": "/docs/components/chat-panel-assistant-message",
|
|
1161
|
+
"mdUrl": "/docs/components/chat-panel-assistant-message.md",
|
|
1162
|
+
"jsonUrl": "/r/components/chat-panel-assistant-message.json",
|
|
1163
|
+
"path": "./components/chat-panel-assistant-message.json",
|
|
1164
|
+
"sha256": "a443fc1c8fd8053df686e787b6f47fa182b6f6a9928a440b8fefcf972e399814"
|
|
1165
|
+
},
|
|
1166
|
+
{
|
|
1167
|
+
"name": "ChatPanelComposer",
|
|
1168
|
+
"slug": "chat-panel-composer",
|
|
1169
|
+
"group": "elements",
|
|
1170
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1171
|
+
"summary": "The panel's composer row.",
|
|
1172
|
+
"status": "todo-docs",
|
|
1173
|
+
"url": "/docs/components/chat-panel-composer",
|
|
1174
|
+
"mdUrl": "/docs/components/chat-panel-composer.md",
|
|
1175
|
+
"jsonUrl": "/r/components/chat-panel-composer.json",
|
|
1176
|
+
"path": "./components/chat-panel-composer.json",
|
|
1177
|
+
"sha256": "f74eaa4cd961e77d311b180b9dfaa08d62ef8425edab12d976745813a57b76bf"
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
"name": "ChatPanelMessages",
|
|
1181
|
+
"slug": "chat-panel-messages",
|
|
1182
|
+
"group": "elements",
|
|
1183
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1184
|
+
"summary": "The scrolling transcript inside a `ChatPanel`.",
|
|
1185
|
+
"status": "todo-docs",
|
|
1186
|
+
"url": "/docs/components/chat-panel-messages",
|
|
1187
|
+
"mdUrl": "/docs/components/chat-panel-messages.md",
|
|
1188
|
+
"jsonUrl": "/r/components/chat-panel-messages.json",
|
|
1189
|
+
"path": "./components/chat-panel-messages.json",
|
|
1190
|
+
"sha256": "24663bea6585921610c21c4486054c634073b54cebb43280b0a5d9a13b8cfc09"
|
|
1191
|
+
},
|
|
1192
|
+
{
|
|
1193
|
+
"name": "ChatPanelTyping",
|
|
1194
|
+
"slug": "chat-panel-typing",
|
|
1195
|
+
"group": "elements",
|
|
1196
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1197
|
+
"summary": "The three-dot rest state, for the gap between sending and the first token.",
|
|
1198
|
+
"status": "todo-docs",
|
|
1199
|
+
"url": "/docs/components/chat-panel-typing",
|
|
1200
|
+
"mdUrl": "/docs/components/chat-panel-typing.md",
|
|
1201
|
+
"jsonUrl": "/r/components/chat-panel-typing.json",
|
|
1202
|
+
"path": "./components/chat-panel-typing.json",
|
|
1203
|
+
"sha256": "48fe7b698072adad5085180a878ee7c6da853d6f653a71c628f1645f12d7fc1f"
|
|
1204
|
+
},
|
|
1205
|
+
{
|
|
1206
|
+
"name": "ChatPanelUserMessage",
|
|
1207
|
+
"slug": "chat-panel-user-message",
|
|
1208
|
+
"group": "elements",
|
|
1209
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1210
|
+
"summary": "One message from the person, drawn as a filled bubble on the trailing edge.",
|
|
1211
|
+
"status": "todo-docs",
|
|
1212
|
+
"url": "/docs/components/chat-panel-user-message",
|
|
1213
|
+
"mdUrl": "/docs/components/chat-panel-user-message.md",
|
|
1214
|
+
"jsonUrl": "/r/components/chat-panel-user-message.json",
|
|
1215
|
+
"path": "./components/chat-panel-user-message.json",
|
|
1216
|
+
"sha256": "e8495a5d72da3d5c8134bf65a1bd3b31f6926cc2e532532864c7fd2b9607dee5"
|
|
1217
|
+
},
|
|
1218
|
+
{
|
|
1219
|
+
"name": "CheckpointHistory",
|
|
1220
|
+
"slug": "checkpoint-history",
|
|
1221
|
+
"group": "elements",
|
|
1222
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1223
|
+
"summary": "Points you can fall back to, with what each one would give back.",
|
|
1224
|
+
"status": "todo-docs",
|
|
1225
|
+
"url": "/docs/components/checkpoint-history",
|
|
1226
|
+
"mdUrl": "/docs/components/checkpoint-history.md",
|
|
1227
|
+
"jsonUrl": "/r/components/checkpoint-history.json",
|
|
1228
|
+
"path": "./components/checkpoint-history.json",
|
|
1229
|
+
"sha256": "bbd51237dc47ae95ff97956a43c46cf8171c71acaa395de10d592a0043cd7fd1"
|
|
1230
|
+
},
|
|
1231
|
+
{
|
|
1232
|
+
"name": "Clamp",
|
|
1233
|
+
"slug": "clamp",
|
|
1234
|
+
"group": "elements",
|
|
1235
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1236
|
+
"summary": "Long content, cut to a height, dissolving at the cut, with a way back.",
|
|
1237
|
+
"status": "todo-docs",
|
|
1238
|
+
"url": "/docs/components/clamp",
|
|
1239
|
+
"mdUrl": "/docs/components/clamp.md",
|
|
1240
|
+
"jsonUrl": "/r/components/clamp.json",
|
|
1241
|
+
"path": "./components/clamp.json",
|
|
1242
|
+
"sha256": "742efbff9f7c3971525483f4220147416459bdf68796261e46ea5f03fb92df47"
|
|
1243
|
+
},
|
|
1244
|
+
{
|
|
1245
|
+
"name": "CodeDiff",
|
|
1246
|
+
"slug": "code-diff",
|
|
1247
|
+
"group": "elements",
|
|
1248
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1249
|
+
"summary": "A unified diff with tinted additions and removals, sized for chat.",
|
|
1250
|
+
"status": "todo-docs",
|
|
1251
|
+
"url": "/docs/components/code-diff",
|
|
1252
|
+
"mdUrl": "/docs/components/code-diff.md",
|
|
1253
|
+
"jsonUrl": "/r/components/code-diff.json",
|
|
1254
|
+
"path": "./components/code-diff.json",
|
|
1255
|
+
"sha256": "d3561342a00a7d3ff9cb142dcf096709082a9ba5afdba90774d0de92004728b0"
|
|
1256
|
+
},
|
|
1257
|
+
{
|
|
1258
|
+
"name": "CodeRunner",
|
|
1259
|
+
"slug": "code-runner",
|
|
1260
|
+
"group": "elements",
|
|
1261
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1262
|
+
"summary": "A snippet with a run button, and the output it produced attached below it.",
|
|
1263
|
+
"status": "todo-docs",
|
|
1264
|
+
"url": "/docs/components/code-runner",
|
|
1265
|
+
"mdUrl": "/docs/components/code-runner.md",
|
|
1266
|
+
"jsonUrl": "/r/components/code-runner.json",
|
|
1267
|
+
"path": "./components/code-runner.json",
|
|
1268
|
+
"sha256": "06070a843e7f641976b16eb2db13ac1fde7790ef9980fa1f4b5fdf51646d7e97"
|
|
1269
|
+
},
|
|
1270
|
+
{
|
|
1271
|
+
"name": "CompactionRow",
|
|
1272
|
+
"slug": "compaction-row",
|
|
1273
|
+
"group": "elements",
|
|
1274
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1275
|
+
"summary": "The rule that says the conversation was compacted, and by how much.",
|
|
1276
|
+
"status": "todo-docs",
|
|
1277
|
+
"url": "/docs/components/compaction-row",
|
|
1278
|
+
"mdUrl": "/docs/components/compaction-row.md",
|
|
1279
|
+
"jsonUrl": "/r/components/compaction-row.json",
|
|
1280
|
+
"path": "./components/compaction-row.json",
|
|
1281
|
+
"sha256": "0fd3080c626dd6db7b3bf651d74242674b987acc9215d49a013ae37ec05b0f7d"
|
|
1282
|
+
},
|
|
1283
|
+
{
|
|
1284
|
+
"name": "ComparisonCard",
|
|
1285
|
+
"slug": "comparison-card",
|
|
1286
|
+
"group": "elements",
|
|
1287
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1288
|
+
"summary": "Two options weighed side by side, with the pick named and argued.",
|
|
1289
|
+
"status": "todo-docs",
|
|
1290
|
+
"url": "/docs/components/comparison-card",
|
|
1291
|
+
"mdUrl": "/docs/components/comparison-card.md",
|
|
1292
|
+
"jsonUrl": "/r/components/comparison-card.json",
|
|
1293
|
+
"path": "./components/comparison-card.json",
|
|
1294
|
+
"sha256": "16c7351f7aed32a74f8a1121d88fe50e525e000be35d01892047feb452abca1a"
|
|
1295
|
+
},
|
|
1296
|
+
{
|
|
1297
|
+
"name": "ComposerActions",
|
|
1298
|
+
"slug": "composer-actions",
|
|
1299
|
+
"group": "elements",
|
|
1300
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1301
|
+
"summary": "One cluster of controls in the toolbar.",
|
|
1302
|
+
"status": "todo-docs",
|
|
1303
|
+
"url": "/docs/components/composer-actions",
|
|
1304
|
+
"mdUrl": "/docs/components/composer-actions.md",
|
|
1305
|
+
"jsonUrl": "/r/components/composer-actions.json",
|
|
1306
|
+
"path": "./components/composer-actions.json",
|
|
1307
|
+
"sha256": "fa7f96483ccd4afc0788d0458c740e3812fb23627387945d668921e33dae4143"
|
|
1308
|
+
},
|
|
1309
|
+
{
|
|
1310
|
+
"name": "ComposerAttachButton",
|
|
1311
|
+
"slug": "composer-attach-button",
|
|
1312
|
+
"group": "elements",
|
|
1313
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1314
|
+
"summary": "The paperclip, as a plus.",
|
|
1315
|
+
"status": "todo-docs",
|
|
1316
|
+
"url": "/docs/components/composer-attach-button",
|
|
1317
|
+
"mdUrl": "/docs/components/composer-attach-button.md",
|
|
1318
|
+
"jsonUrl": "/r/components/composer-attach-button.json",
|
|
1319
|
+
"path": "./components/composer-attach-button.json",
|
|
1320
|
+
"sha256": "23403d9090dc3dd79324c2bfc59345e79d50c23594772aa930262c37a76f1774"
|
|
1321
|
+
},
|
|
1322
|
+
{
|
|
1323
|
+
"name": "ComposerAttachmentChip",
|
|
1324
|
+
"slug": "composer-attachment-chip",
|
|
1325
|
+
"group": "elements",
|
|
1326
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1327
|
+
"summary": "One attached file as a chip: an icon for its kind, its name and size, and — while it uploads — a progress hairline along the bottom edge.",
|
|
1328
|
+
"status": "todo-docs",
|
|
1329
|
+
"url": "/docs/components/composer-attachment-chip",
|
|
1330
|
+
"mdUrl": "/docs/components/composer-attachment-chip.md",
|
|
1331
|
+
"jsonUrl": "/r/components/composer-attachment-chip.json",
|
|
1332
|
+
"path": "./components/composer-attachment-chip.json",
|
|
1333
|
+
"sha256": "6231c92f8e8f449575cf978b1ec1285402f3cd2ff878bedc1ef729729afb8007"
|
|
1334
|
+
},
|
|
1335
|
+
{
|
|
1336
|
+
"name": "ComposerAttachments",
|
|
1337
|
+
"slug": "composer-attachments",
|
|
1338
|
+
"group": "elements",
|
|
1339
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1340
|
+
"summary": "The rail the attachment chips wrap in, above the input.",
|
|
1341
|
+
"status": "todo-docs",
|
|
1342
|
+
"url": "/docs/components/composer-attachments",
|
|
1343
|
+
"mdUrl": "/docs/components/composer-attachments.md",
|
|
1344
|
+
"jsonUrl": "/r/components/composer-attachments.json",
|
|
1345
|
+
"path": "./components/composer-attachments.json",
|
|
1346
|
+
"sha256": "5b9303c1bbb3d7bb47ac8f27a90eb39e94abdccb52605de4d646347ee85ff82c"
|
|
1347
|
+
},
|
|
1348
|
+
{
|
|
1349
|
+
"name": "ComposerBar",
|
|
1350
|
+
"slug": "composer-bar",
|
|
1351
|
+
"group": "elements",
|
|
1352
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1353
|
+
"summary": "The bar itself: the paper the input, the attachments and the toolbar sit on.",
|
|
1354
|
+
"status": "todo-docs",
|
|
1355
|
+
"url": "/docs/components/composer-bar",
|
|
1356
|
+
"mdUrl": "/docs/components/composer-bar.md",
|
|
1357
|
+
"jsonUrl": "/r/components/composer-bar.json",
|
|
1358
|
+
"path": "./components/composer-bar.json",
|
|
1359
|
+
"sha256": "b0cf81e631c1ec497d438d2685ca976704636b3b286fdbd99c9aaa2e514901ba"
|
|
1360
|
+
},
|
|
1361
|
+
{
|
|
1362
|
+
"name": "ComposerCommandItem",
|
|
1363
|
+
"slug": "composer-command-item",
|
|
1364
|
+
"group": "elements",
|
|
1365
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1366
|
+
"summary": "A slash command in the menu: its icon, `/name`, what it does, and the return key on the active row.",
|
|
1367
|
+
"status": "todo-docs",
|
|
1368
|
+
"url": "/docs/components/composer-command-item",
|
|
1369
|
+
"mdUrl": "/docs/components/composer-command-item.md",
|
|
1370
|
+
"jsonUrl": "/r/components/composer-command-item.json",
|
|
1371
|
+
"path": "./components/composer-command-item.json",
|
|
1372
|
+
"sha256": "8ab8bf62a9e4a12ee72ecf607d9bd663aba5457a47241c435b7b26d2d82eb1f5"
|
|
1373
|
+
},
|
|
1374
|
+
{
|
|
1375
|
+
"name": "ComposerContext",
|
|
1376
|
+
"slug": "composer-context",
|
|
1377
|
+
"group": "elements",
|
|
1378
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1379
|
+
"summary": "The context-window dial in the toolbar, with the breakdown on hover or focus.",
|
|
1380
|
+
"status": "todo-docs",
|
|
1381
|
+
"url": "/docs/components/composer-context",
|
|
1382
|
+
"mdUrl": "/docs/components/composer-context.md",
|
|
1383
|
+
"jsonUrl": "/r/components/composer-context.json",
|
|
1384
|
+
"path": "./components/composer-context.json",
|
|
1385
|
+
"sha256": "9229c12d2db3f0074126bb03b97384905b23ccbd9ea6fcd361e9ba71094d3b95"
|
|
1386
|
+
},
|
|
1387
|
+
{
|
|
1388
|
+
"name": "ComposerInput",
|
|
1389
|
+
"slug": "composer-input",
|
|
1390
|
+
"group": "elements",
|
|
1391
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1392
|
+
"summary": "The text field.",
|
|
1393
|
+
"status": "todo-docs",
|
|
1394
|
+
"url": "/docs/components/composer-input",
|
|
1395
|
+
"mdUrl": "/docs/components/composer-input.md",
|
|
1396
|
+
"jsonUrl": "/r/components/composer-input.json",
|
|
1397
|
+
"path": "./components/composer-input.json",
|
|
1398
|
+
"sha256": "1eb6febfa7249cf6747dc6d68ed23ba926c7c4a3a6235b966ca9fa1bca02044a"
|
|
1399
|
+
},
|
|
1400
|
+
{
|
|
1401
|
+
"name": "ComposerMenu",
|
|
1402
|
+
"slug": "composer-menu",
|
|
1403
|
+
"group": "elements",
|
|
1404
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1405
|
+
"summary": "The popover the slash and mention menus are drawn in, anchored above the bar.",
|
|
1406
|
+
"status": "todo-docs",
|
|
1407
|
+
"url": "/docs/components/composer-menu",
|
|
1408
|
+
"mdUrl": "/docs/components/composer-menu.md",
|
|
1409
|
+
"jsonUrl": "/r/components/composer-menu.json",
|
|
1410
|
+
"path": "./components/composer-menu.json",
|
|
1411
|
+
"sha256": "be9bf9b53bd60367a4ce4ab82a2618b82528f9525e276684b3e9b56b286d9b2b"
|
|
1412
|
+
},
|
|
1413
|
+
{
|
|
1414
|
+
"name": "ComposerMenuItem",
|
|
1415
|
+
"slug": "composer-menu-item",
|
|
1416
|
+
"group": "elements",
|
|
1417
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1418
|
+
"summary": "One row of a `ComposerMenu`, and the chassis the command, person and model rows are built on.",
|
|
1419
|
+
"status": "todo-docs",
|
|
1420
|
+
"url": "/docs/components/composer-menu-item",
|
|
1421
|
+
"mdUrl": "/docs/components/composer-menu-item.md",
|
|
1422
|
+
"jsonUrl": "/r/components/composer-menu-item.json",
|
|
1423
|
+
"path": "./components/composer-menu-item.json",
|
|
1424
|
+
"sha256": "6deb753747402b7d64a5e6b5da53af804b8c1d6b918b670e858cb3e6c9b6fd00"
|
|
1425
|
+
},
|
|
1426
|
+
{
|
|
1427
|
+
"name": "ComposerModelItem",
|
|
1428
|
+
"slug": "composer-model-item",
|
|
1429
|
+
"group": "elements",
|
|
1430
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1431
|
+
"summary": "One model in the menu, with its metadata and a tick on the chosen one.",
|
|
1432
|
+
"status": "todo-docs",
|
|
1433
|
+
"url": "/docs/components/composer-model-item",
|
|
1434
|
+
"mdUrl": "/docs/components/composer-model-item.md",
|
|
1435
|
+
"jsonUrl": "/r/components/composer-model-item.json",
|
|
1436
|
+
"path": "./components/composer-model-item.json",
|
|
1437
|
+
"sha256": "cff452af36fdb7014f904a12702c49a9393a359010b3c4b6c28ccaa5a5a4aba3"
|
|
1438
|
+
},
|
|
1439
|
+
{
|
|
1440
|
+
"name": "ComposerModelTrigger",
|
|
1441
|
+
"slug": "composer-model-trigger",
|
|
1442
|
+
"group": "elements",
|
|
1443
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1444
|
+
"summary": "The model name in the toolbar, which opens the model menu.",
|
|
1445
|
+
"status": "todo-docs",
|
|
1446
|
+
"url": "/docs/components/composer-model-trigger",
|
|
1447
|
+
"mdUrl": "/docs/components/composer-model-trigger.md",
|
|
1448
|
+
"jsonUrl": "/r/components/composer-model-trigger.json",
|
|
1449
|
+
"path": "./components/composer-model-trigger.json",
|
|
1450
|
+
"sha256": "0dca8b5f33ec5d6f31ff7ce8eed926685b684d5f4c499c29816aa1a7ce05b7a3"
|
|
1451
|
+
},
|
|
1452
|
+
{
|
|
1453
|
+
"name": "ComposerPersonItem",
|
|
1454
|
+
"slug": "composer-person-item",
|
|
1455
|
+
"group": "elements",
|
|
1456
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1457
|
+
"summary": "A mentionable person in the menu: their initial, their name, and whether they are an agent or a human.",
|
|
1458
|
+
"status": "todo-docs",
|
|
1459
|
+
"url": "/docs/components/composer-person-item",
|
|
1460
|
+
"mdUrl": "/docs/components/composer-person-item.md",
|
|
1461
|
+
"jsonUrl": "/r/components/composer-person-item.json",
|
|
1462
|
+
"path": "./components/composer-person-item.json",
|
|
1463
|
+
"sha256": "056e8cd2a0832ea69bc93ab6d50717a9aeffcfc5891393993cb9f070d696f625"
|
|
1464
|
+
},
|
|
1465
|
+
{
|
|
1466
|
+
"name": "ComposerSend",
|
|
1467
|
+
"slug": "composer-send",
|
|
1468
|
+
"group": "elements",
|
|
1469
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1470
|
+
"summary": "Send, which becomes stop while the model is streaming.",
|
|
1471
|
+
"status": "todo-docs",
|
|
1472
|
+
"url": "/docs/components/composer-send",
|
|
1473
|
+
"mdUrl": "/docs/components/composer-send.md",
|
|
1474
|
+
"jsonUrl": "/r/components/composer-send.json",
|
|
1475
|
+
"path": "./components/composer-send.json",
|
|
1476
|
+
"sha256": "c7e38e94f9d013e4338b052c46d1471747a1d744f8c2fd7299adb23841ffb57a"
|
|
1477
|
+
},
|
|
1478
|
+
{
|
|
1479
|
+
"name": "ComposerToolbar",
|
|
1480
|
+
"slug": "composer-toolbar",
|
|
1481
|
+
"group": "elements",
|
|
1482
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1483
|
+
"summary": "The row under the input, which holds the two `ComposerActions` clusters.",
|
|
1484
|
+
"status": "todo-docs",
|
|
1485
|
+
"url": "/docs/components/composer-toolbar",
|
|
1486
|
+
"mdUrl": "/docs/components/composer-toolbar.md",
|
|
1487
|
+
"jsonUrl": "/r/components/composer-toolbar.json",
|
|
1488
|
+
"path": "./components/composer-toolbar.json",
|
|
1489
|
+
"sha256": "71442dea9fdb067a343ace9983f1b7e5c725d045923149c84b2a426a60fe0ada"
|
|
1490
|
+
},
|
|
1491
|
+
{
|
|
1492
|
+
"name": "ComposerVoice",
|
|
1493
|
+
"slug": "composer-voice",
|
|
1494
|
+
"group": "elements",
|
|
1495
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1496
|
+
"summary": "What replaces the input while the microphone is open: a level meter, a running clock while recording, and a shimmering `Transcribing` once it stops.",
|
|
1497
|
+
"status": "todo-docs",
|
|
1498
|
+
"url": "/docs/components/composer-voice",
|
|
1499
|
+
"mdUrl": "/docs/components/composer-voice.md",
|
|
1500
|
+
"jsonUrl": "/r/components/composer-voice.json",
|
|
1501
|
+
"path": "./components/composer-voice.json",
|
|
1502
|
+
"sha256": "a20034b5a4dc4ae715ffb4310ac0e96961c7b074ad33c47257e1eafba0f05ca8"
|
|
1503
|
+
},
|
|
1504
|
+
{
|
|
1505
|
+
"name": "ComposerVoiceButton",
|
|
1506
|
+
"slug": "composer-voice-button",
|
|
1507
|
+
"group": "elements",
|
|
1508
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1509
|
+
"summary": "The microphone, which becomes a filled stop while recording.",
|
|
1510
|
+
"status": "todo-docs",
|
|
1511
|
+
"url": "/docs/components/composer-voice-button",
|
|
1512
|
+
"mdUrl": "/docs/components/composer-voice-button.md",
|
|
1513
|
+
"jsonUrl": "/r/components/composer-voice-button.json",
|
|
1514
|
+
"path": "./components/composer-voice-button.json",
|
|
1515
|
+
"sha256": "2e1b90b3d5956fd83be86de8302330f59d5a483f840a41ff609be6716a0adb5e"
|
|
1516
|
+
},
|
|
1517
|
+
{
|
|
1518
|
+
"name": "ComputerUse",
|
|
1519
|
+
"slug": "computer-use",
|
|
1520
|
+
"group": "elements",
|
|
1521
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1522
|
+
"summary": "The screen the agent is driving, with a cursor trail and what it is doing right now.",
|
|
1523
|
+
"status": "todo-docs",
|
|
1524
|
+
"url": "/docs/components/computer-use",
|
|
1525
|
+
"mdUrl": "/docs/components/computer-use.md",
|
|
1526
|
+
"jsonUrl": "/r/components/computer-use.json",
|
|
1527
|
+
"path": "./components/computer-use.json",
|
|
1528
|
+
"sha256": "e046a18b9b4056c3e2a3864be66bcb36bfbeb4541260cd58a322d05a38b08664"
|
|
1529
|
+
},
|
|
1530
|
+
{
|
|
1531
|
+
"name": "ConfidenceMarker",
|
|
1532
|
+
"slug": "confidence-marker",
|
|
1533
|
+
"group": "elements",
|
|
1534
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1535
|
+
"summary": "Which claims came from a source, which were inferred, and which are guesses.",
|
|
1536
|
+
"status": "todo-docs",
|
|
1537
|
+
"url": "/docs/components/confidence-marker",
|
|
1538
|
+
"mdUrl": "/docs/components/confidence-marker.md",
|
|
1539
|
+
"jsonUrl": "/r/components/confidence-marker.json",
|
|
1540
|
+
"path": "./components/confidence-marker.json",
|
|
1541
|
+
"sha256": "d72f7cff60cc4579c3462f7f1c4cba301fd2e5da1da19022fa426b45ac3b8d0b"
|
|
1542
|
+
},
|
|
1543
|
+
{
|
|
1544
|
+
"name": "ConnectionState",
|
|
1545
|
+
"slug": "connection-state",
|
|
1546
|
+
"group": "elements",
|
|
1547
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1548
|
+
"summary": "The socket drops, the run keeps going on the server, and the stream is picked back up.",
|
|
1549
|
+
"status": "todo-docs",
|
|
1550
|
+
"url": "/docs/components/connection-state",
|
|
1551
|
+
"mdUrl": "/docs/components/connection-state.md",
|
|
1552
|
+
"jsonUrl": "/r/components/connection-state.json",
|
|
1553
|
+
"path": "./components/connection-state.json",
|
|
1554
|
+
"sha256": "a51fa9824011ddd3b7a5dc3b6672cfa916fb488fb0d42d7b85a57a1e655c6614"
|
|
1555
|
+
},
|
|
1556
|
+
{
|
|
1557
|
+
"name": "ContextBreakdown",
|
|
1558
|
+
"slug": "context-breakdown",
|
|
1559
|
+
"group": "elements",
|
|
1560
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1561
|
+
"summary": "Where the window actually went: prompt, tools, files, conversation, and what's left.",
|
|
1562
|
+
"status": "todo-docs",
|
|
1563
|
+
"url": "/docs/components/context-breakdown",
|
|
1564
|
+
"mdUrl": "/docs/components/context-breakdown.md",
|
|
1565
|
+
"jsonUrl": "/r/components/context-breakdown.json",
|
|
1566
|
+
"path": "./components/context-breakdown.json",
|
|
1567
|
+
"sha256": "1a6d083ff2c0822cc794c34ed4ad21bf833d419a956582d4b30c602d8b0747e2"
|
|
1568
|
+
},
|
|
1569
|
+
{
|
|
1570
|
+
"name": "ContextUsage",
|
|
1571
|
+
"slug": "context-usage",
|
|
1572
|
+
"group": "elements",
|
|
1573
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1574
|
+
"summary": "Where the window went, what share each part of it took, and what that cost.",
|
|
1575
|
+
"status": "todo-docs",
|
|
1576
|
+
"url": "/docs/components/context-usage",
|
|
1577
|
+
"mdUrl": "/docs/components/context-usage.md",
|
|
1578
|
+
"jsonUrl": "/r/components/context-usage.json",
|
|
1579
|
+
"path": "./components/context-usage.json",
|
|
1580
|
+
"sha256": "8a606c593982526b583b8582660ddf29ee764cbf8b51d8c458439c3b50a98cdc"
|
|
1581
|
+
},
|
|
1582
|
+
{
|
|
1583
|
+
"name": "ConversationSearch",
|
|
1584
|
+
"slug": "conversation-search",
|
|
1585
|
+
"group": "elements",
|
|
1586
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1587
|
+
"summary": "Find inside a long thread, with every hit marked down the scrollbar.",
|
|
1588
|
+
"status": "todo-docs",
|
|
1589
|
+
"url": "/docs/components/conversation-search",
|
|
1590
|
+
"mdUrl": "/docs/components/conversation-search.md",
|
|
1591
|
+
"jsonUrl": "/r/components/conversation-search.json",
|
|
1592
|
+
"path": "./components/conversation-search.json",
|
|
1593
|
+
"sha256": "0ca68878be7ffdf3e3129db11c513d2ab146da8dc4cd0ac88f8a1341dd1b6562"
|
|
1594
|
+
},
|
|
1595
|
+
{
|
|
1596
|
+
"name": "CostMeter",
|
|
1597
|
+
"slug": "cost-meter",
|
|
1598
|
+
"group": "elements",
|
|
1599
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1600
|
+
"summary": "What the run spent, split by model, against the session total.",
|
|
1601
|
+
"status": "todo-docs",
|
|
1602
|
+
"url": "/docs/components/cost-meter",
|
|
1603
|
+
"mdUrl": "/docs/components/cost-meter.md",
|
|
1604
|
+
"jsonUrl": "/r/components/cost-meter.json",
|
|
1605
|
+
"path": "./components/cost-meter.json",
|
|
1606
|
+
"sha256": "d1ebd92515bd81ac4b2ec74b957b0699d569e8e0a25f93201b50d7ee46034867"
|
|
1607
|
+
},
|
|
1608
|
+
{
|
|
1609
|
+
"name": "DaySeparator",
|
|
1610
|
+
"slug": "day-separator",
|
|
1611
|
+
"group": "elements",
|
|
1612
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1613
|
+
"summary": "Chronology in a long thread: days marked, times on hover.",
|
|
1614
|
+
"status": "todo-docs",
|
|
1615
|
+
"url": "/docs/components/day-separator",
|
|
1616
|
+
"mdUrl": "/docs/components/day-separator.md",
|
|
1617
|
+
"jsonUrl": "/r/components/day-separator.json",
|
|
1618
|
+
"path": "./components/day-separator.json",
|
|
1619
|
+
"sha256": "6dc36492816aabbb6f9b0d9b5b0a9132d50e179900edf0a24702fe6e698c9e6e"
|
|
1620
|
+
},
|
|
1621
|
+
{
|
|
1622
|
+
"name": "Diagram",
|
|
1623
|
+
"slug": "diagram",
|
|
1624
|
+
"group": "elements",
|
|
1625
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1626
|
+
"summary": "A drawn answer with zoom, reset, and a full-bleed view; you hand it the rendered graphic.",
|
|
1627
|
+
"status": "todo-docs",
|
|
1628
|
+
"url": "/docs/components/diagram",
|
|
1629
|
+
"mdUrl": "/docs/components/diagram.md",
|
|
1630
|
+
"jsonUrl": "/r/components/diagram.json",
|
|
1631
|
+
"path": "./components/diagram.json",
|
|
1632
|
+
"sha256": "fccdb9d429a8c8e073feecacab8a8e61348cb19e59be1a5cf55f831c23b4c181"
|
|
1633
|
+
},
|
|
1634
|
+
{
|
|
1635
|
+
"name": "DocumentReference",
|
|
1636
|
+
"slug": "document-reference",
|
|
1637
|
+
"group": "elements",
|
|
1638
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1639
|
+
"summary": "A document the answer leans on, with the quoted passage and the page to jump to.",
|
|
1640
|
+
"status": "todo-docs",
|
|
1641
|
+
"url": "/docs/components/document-reference",
|
|
1642
|
+
"mdUrl": "/docs/components/document-reference.md",
|
|
1643
|
+
"jsonUrl": "/r/components/document-reference.json",
|
|
1644
|
+
"path": "./components/document-reference.json",
|
|
1645
|
+
"sha256": "e0829cedd826b56cb45998c9b744850fffb3bdcf15a8dbb6c579f9e7fd4f5d7d"
|
|
1646
|
+
},
|
|
1647
|
+
{
|
|
1648
|
+
"name": "DraftRestore",
|
|
1649
|
+
"slug": "draft-restore",
|
|
1650
|
+
"group": "elements",
|
|
1651
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1652
|
+
"summary": "Come back to a thread and the sentence you never sent is still waiting.",
|
|
1653
|
+
"status": "todo-docs",
|
|
1654
|
+
"url": "/docs/components/draft-restore",
|
|
1655
|
+
"mdUrl": "/docs/components/draft-restore.md",
|
|
1656
|
+
"jsonUrl": "/r/components/draft-restore.json",
|
|
1657
|
+
"path": "./components/draft-restore.json",
|
|
1658
|
+
"sha256": "c063a9f210523ae889a447a0450a5e842854e9f34850df4c52431bd2d52046f0"
|
|
1659
|
+
},
|
|
1660
|
+
{
|
|
1661
|
+
"name": "EditMessage",
|
|
1662
|
+
"slug": "edit-message",
|
|
1663
|
+
"group": "elements",
|
|
1664
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1665
|
+
"summary": "Rewrite a turn in place, told up front how many replies the edit throws away.",
|
|
1666
|
+
"status": "todo-docs",
|
|
1667
|
+
"url": "/docs/components/edit-message",
|
|
1668
|
+
"mdUrl": "/docs/components/edit-message.md",
|
|
1669
|
+
"jsonUrl": "/r/components/edit-message.json",
|
|
1670
|
+
"path": "./components/edit-message.json",
|
|
1671
|
+
"sha256": "a3234045c701793e38b127c39135aa8b75259be0921a46456bea4cd7419c31b0"
|
|
1672
|
+
},
|
|
1673
|
+
{
|
|
1674
|
+
"name": "ElementsCommandPalette",
|
|
1675
|
+
"slug": "elements-command-palette",
|
|
1676
|
+
"group": "elements",
|
|
1677
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1678
|
+
"summary": "Everything the app can do, one keystroke away and grouped by where it acts.",
|
|
1679
|
+
"status": "todo-docs",
|
|
1680
|
+
"url": "/docs/components/elements-command-palette",
|
|
1681
|
+
"mdUrl": "/docs/components/elements-command-palette.md",
|
|
1682
|
+
"jsonUrl": "/r/components/elements-command-palette.json",
|
|
1683
|
+
"path": "./components/elements-command-palette.json",
|
|
1684
|
+
"sha256": "39dca7f81be4d5a502c1eb4f592e848484308dec1aec72536e659d413c177092"
|
|
1685
|
+
},
|
|
1686
|
+
{
|
|
1687
|
+
"name": "ElementsComposer",
|
|
1688
|
+
"slug": "elements-composer",
|
|
1689
|
+
"group": "elements",
|
|
1690
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1691
|
+
"summary": "The unified input: attachments, commands, mentions, models, voice, and context in one surface.",
|
|
1692
|
+
"status": "todo-docs",
|
|
1693
|
+
"url": "/docs/components/elements-composer",
|
|
1694
|
+
"mdUrl": "/docs/components/elements-composer.md",
|
|
1695
|
+
"jsonUrl": "/r/components/elements-composer.json",
|
|
1696
|
+
"path": "./components/elements-composer.json",
|
|
1697
|
+
"sha256": "9ebc266df5e9779ffb5c9d33ce0e91e0d0300adf6cb6b566bfce976eef5c9727"
|
|
1698
|
+
},
|
|
1699
|
+
{
|
|
1700
|
+
"name": "ElementsDataTable",
|
|
1701
|
+
"slug": "elements-data-table",
|
|
1702
|
+
"group": "elements",
|
|
1703
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1704
|
+
"summary": "A small comparison table the model can answer with directly.",
|
|
1705
|
+
"status": "todo-docs",
|
|
1706
|
+
"url": "/docs/components/elements-data-table",
|
|
1707
|
+
"mdUrl": "/docs/components/elements-data-table.md",
|
|
1708
|
+
"jsonUrl": "/r/components/elements-data-table.json",
|
|
1709
|
+
"path": "./components/elements-data-table.json",
|
|
1710
|
+
"sha256": "d83774e42003badcb74030ec28462134319babd98349849edce6ddbb56e2f2d9"
|
|
1711
|
+
},
|
|
1712
|
+
{
|
|
1713
|
+
"name": "ElementsTimeline",
|
|
1714
|
+
"slug": "elements-timeline",
|
|
1715
|
+
"group": "elements",
|
|
1716
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1717
|
+
"summary": "Events on a time axis, with what already happened and what is still coming.",
|
|
1718
|
+
"status": "todo-docs",
|
|
1719
|
+
"url": "/docs/components/elements-timeline",
|
|
1720
|
+
"mdUrl": "/docs/components/elements-timeline.md",
|
|
1721
|
+
"jsonUrl": "/r/components/elements-timeline.json",
|
|
1722
|
+
"path": "./components/elements-timeline.json",
|
|
1723
|
+
"sha256": "341512347f5e592b5e7f9e27ad56f9a65725a449dccbcd20227759cb5e07b120"
|
|
1724
|
+
},
|
|
1725
|
+
{
|
|
1726
|
+
"name": "ElicitationForm",
|
|
1727
|
+
"slug": "elicitation-form",
|
|
1728
|
+
"group": "elements",
|
|
1729
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1730
|
+
"summary": "A server pausing mid-tool-call to ask you for the fields it still needs.",
|
|
1731
|
+
"status": "todo-docs",
|
|
1732
|
+
"url": "/docs/components/elicitation-form",
|
|
1733
|
+
"mdUrl": "/docs/components/elicitation-form.md",
|
|
1734
|
+
"jsonUrl": "/r/components/elicitation-form.json",
|
|
1735
|
+
"path": "./components/elicitation-form.json",
|
|
1736
|
+
"sha256": "adb9b28d64a000a40f64aa4419668e6c0b212628bad0cd3df901503736c42938"
|
|
1737
|
+
},
|
|
1738
|
+
{
|
|
1739
|
+
"name": "EmptyStateComposer",
|
|
1740
|
+
"slug": "empty-state-composer",
|
|
1741
|
+
"group": "elements",
|
|
1742
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1743
|
+
"summary": "A composer-shaped invitation under the suggestions.",
|
|
1744
|
+
"status": "todo-docs",
|
|
1745
|
+
"url": "/docs/components/empty-state-composer",
|
|
1746
|
+
"mdUrl": "/docs/components/empty-state-composer.md",
|
|
1747
|
+
"jsonUrl": "/r/components/empty-state-composer.json",
|
|
1748
|
+
"path": "./components/empty-state-composer.json",
|
|
1749
|
+
"sha256": "b87fbaa9d8d0bc8f971083bb616c24d021e745425b9549bddfed305a0a76f75a"
|
|
1750
|
+
},
|
|
1751
|
+
{
|
|
1752
|
+
"name": "EmptyStateGreeting",
|
|
1753
|
+
"slug": "empty-state-greeting",
|
|
1754
|
+
"group": "elements",
|
|
1755
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1756
|
+
"summary": "The one line at the top of a blank thread.",
|
|
1757
|
+
"status": "todo-docs",
|
|
1758
|
+
"url": "/docs/components/empty-state-greeting",
|
|
1759
|
+
"mdUrl": "/docs/components/empty-state-greeting.md",
|
|
1760
|
+
"jsonUrl": "/r/components/empty-state-greeting.json",
|
|
1761
|
+
"path": "./components/empty-state-greeting.json",
|
|
1762
|
+
"sha256": "82759f213a83956e3b212f5581f3deea64ad583ae85ca303b4d77317ce900ed4"
|
|
1763
|
+
},
|
|
1764
|
+
{
|
|
1765
|
+
"name": "EmptyStateSuggestion",
|
|
1766
|
+
"slug": "empty-state-suggestion",
|
|
1767
|
+
"group": "elements",
|
|
1768
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1769
|
+
"summary": "One thing worth asking, as a pill.",
|
|
1770
|
+
"status": "todo-docs",
|
|
1771
|
+
"url": "/docs/components/empty-state-suggestion",
|
|
1772
|
+
"mdUrl": "/docs/components/empty-state-suggestion.md",
|
|
1773
|
+
"jsonUrl": "/r/components/empty-state-suggestion.json",
|
|
1774
|
+
"path": "./components/empty-state-suggestion.json",
|
|
1775
|
+
"sha256": "6362914316d23656cb0072f964914eff9f89e8c4571898201e9948007a675175"
|
|
1776
|
+
},
|
|
1777
|
+
{
|
|
1778
|
+
"name": "EmptyStateSuggestions",
|
|
1779
|
+
"slug": "empty-state-suggestions",
|
|
1780
|
+
"group": "elements",
|
|
1781
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1782
|
+
"summary": "The row the suggestion pills wrap in.",
|
|
1783
|
+
"status": "todo-docs",
|
|
1784
|
+
"url": "/docs/components/empty-state-suggestions",
|
|
1785
|
+
"mdUrl": "/docs/components/empty-state-suggestions.md",
|
|
1786
|
+
"jsonUrl": "/r/components/empty-state-suggestions.json",
|
|
1787
|
+
"path": "./components/empty-state-suggestions.json",
|
|
1788
|
+
"sha256": "de412a0f9d7eee742d8b28ff3fa3e2d2cc635eb4e5baf6e9d4bfb161f53b4e6a"
|
|
1789
|
+
},
|
|
1790
|
+
{
|
|
1791
|
+
"name": "EndOfTurnSummary",
|
|
1792
|
+
"slug": "end-of-turn-summary",
|
|
1793
|
+
"group": "elements",
|
|
1794
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1795
|
+
"summary": "What the turn came to, in one line: `3 files changed +48 −12`.",
|
|
1796
|
+
"status": "todo-docs",
|
|
1797
|
+
"url": "/docs/components/end-of-turn-summary",
|
|
1798
|
+
"mdUrl": "/docs/components/end-of-turn-summary.md",
|
|
1799
|
+
"jsonUrl": "/r/components/end-of-turn-summary.json",
|
|
1800
|
+
"path": "./components/end-of-turn-summary.json",
|
|
1801
|
+
"sha256": "47274323e3318bf3287c076d06f869eac28a9136bdd0b558fd5cdd80ef94c3bc"
|
|
1802
|
+
},
|
|
1803
|
+
{
|
|
1804
|
+
"name": "ErrorState",
|
|
1805
|
+
"slug": "error-state",
|
|
1806
|
+
"group": "elements",
|
|
1807
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1808
|
+
"summary": "A quiet failure banner with a retry path, not a modal in your face.",
|
|
1809
|
+
"status": "todo-docs",
|
|
1810
|
+
"url": "/docs/components/error-state",
|
|
1811
|
+
"mdUrl": "/docs/components/error-state.md",
|
|
1812
|
+
"jsonUrl": "/r/components/error-state.json",
|
|
1813
|
+
"path": "./components/error-state.json",
|
|
1814
|
+
"sha256": "012c178602341b81a35b5706ed3694da4fcea31df93d6174ea3a78b234318683"
|
|
1815
|
+
},
|
|
1816
|
+
{
|
|
1817
|
+
"name": "FeedbackDialog",
|
|
1818
|
+
"slug": "feedback-dialog",
|
|
1819
|
+
"group": "elements",
|
|
1820
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1821
|
+
"summary": "A thumbs-down that asks why, so the signal arrives with a reason attached.",
|
|
1822
|
+
"status": "todo-docs",
|
|
1823
|
+
"url": "/docs/components/feedback-dialog",
|
|
1824
|
+
"mdUrl": "/docs/components/feedback-dialog.md",
|
|
1825
|
+
"jsonUrl": "/r/components/feedback-dialog.json",
|
|
1826
|
+
"path": "./components/feedback-dialog.json",
|
|
1827
|
+
"sha256": "7615e1d13a081335ed3fc3abdd8a2204d1660b787a2988bcb79b809ae8bb216b"
|
|
1828
|
+
},
|
|
1829
|
+
{
|
|
1830
|
+
"name": "FileTree",
|
|
1831
|
+
"slug": "file-tree",
|
|
1832
|
+
"group": "elements",
|
|
1833
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1834
|
+
"summary": "Everything a run touched, as a tree, with the churn spelled out per file.",
|
|
1835
|
+
"status": "todo-docs",
|
|
1836
|
+
"url": "/docs/components/file-tree",
|
|
1837
|
+
"mdUrl": "/docs/components/file-tree.md",
|
|
1838
|
+
"jsonUrl": "/r/components/file-tree.json",
|
|
1839
|
+
"path": "./components/file-tree.json",
|
|
1840
|
+
"sha256": "7fb8ffb441a0547c28b126f4f043a7faf4fda53e5da128091d8fb4c0095c818f"
|
|
1841
|
+
},
|
|
1842
|
+
{
|
|
1843
|
+
"name": "FlowGraph",
|
|
1844
|
+
"slug": "flow-graph",
|
|
1845
|
+
"group": "elements",
|
|
1846
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1847
|
+
"summary": "Work as a graph rather than a list: branches that fan out and rejoin.",
|
|
1848
|
+
"status": "todo-docs",
|
|
1849
|
+
"url": "/docs/components/flow-graph",
|
|
1850
|
+
"mdUrl": "/docs/components/flow-graph.md",
|
|
1851
|
+
"jsonUrl": "/r/components/flow-graph.json",
|
|
1852
|
+
"path": "./components/flow-graph.json",
|
|
1853
|
+
"sha256": "254622ac895490f75d4859b47a75c9f7546b30d78cd123f92fa4d0a3c244a541"
|
|
1854
|
+
},
|
|
1855
|
+
{
|
|
1856
|
+
"name": "Frac",
|
|
1857
|
+
"slug": "frac",
|
|
1858
|
+
"group": "elements",
|
|
1859
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1860
|
+
"summary": "A fraction inside an expression — numerator, rule, denominator — set inline and aligned to the middle.",
|
|
1861
|
+
"status": "todo-docs",
|
|
1862
|
+
"url": "/docs/components/frac",
|
|
1863
|
+
"mdUrl": "/docs/components/frac.md",
|
|
1864
|
+
"jsonUrl": "/r/components/frac.json",
|
|
1865
|
+
"path": "./components/frac.json",
|
|
1866
|
+
"sha256": "2c17e31e90034ed3eedaa15c73329968df9b634ad3788a44fe6ef17af3e648a6"
|
|
1867
|
+
},
|
|
1868
|
+
{
|
|
1869
|
+
"name": "GenerationLoader",
|
|
1870
|
+
"slug": "generation-loader",
|
|
1871
|
+
"group": "elements",
|
|
1872
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1873
|
+
"summary": "The wait before there is anything to show.",
|
|
1874
|
+
"status": "todo-docs",
|
|
1875
|
+
"url": "/docs/components/generation-loader",
|
|
1876
|
+
"mdUrl": "/docs/components/generation-loader.md",
|
|
1877
|
+
"jsonUrl": "/r/components/generation-loader.json",
|
|
1878
|
+
"path": "./components/generation-loader.json",
|
|
1879
|
+
"sha256": "72ba63a999d80bbe9c688add81eb9b220dbb7c6994f4bc3cfa9e2162679c6390"
|
|
1880
|
+
},
|
|
1881
|
+
{
|
|
1882
|
+
"name": "GenerativeUI",
|
|
1883
|
+
"slug": "generative-ui",
|
|
1884
|
+
"group": "elements",
|
|
1885
|
+
"importPath": "@cueplusplus/ui/elements/generative",
|
|
1886
|
+
"summary": "The vocabulary a model composes at runtime.",
|
|
1887
|
+
"status": "todo-docs",
|
|
1888
|
+
"url": "/docs/components/generative-ui",
|
|
1889
|
+
"mdUrl": "/docs/components/generative-ui.md",
|
|
1890
|
+
"jsonUrl": "/r/components/generative-ui.json",
|
|
1891
|
+
"path": "./components/generative-ui.json",
|
|
1892
|
+
"sha256": "52c0f83a44cfa9a1b7fdaf5a459c1760b745c57b241ec95c1983e276ae15ae38"
|
|
1893
|
+
},
|
|
1894
|
+
{
|
|
1895
|
+
"name": "GuardrailNotice",
|
|
1896
|
+
"slug": "guardrail-notice",
|
|
1897
|
+
"group": "elements",
|
|
1898
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1899
|
+
"summary": "A refusal in its own shape, with the nearest thing it can do instead.",
|
|
1900
|
+
"status": "todo-docs",
|
|
1901
|
+
"url": "/docs/components/guardrail-notice",
|
|
1902
|
+
"mdUrl": "/docs/components/guardrail-notice.md",
|
|
1903
|
+
"jsonUrl": "/r/components/guardrail-notice.json",
|
|
1904
|
+
"path": "./components/guardrail-notice.json",
|
|
1905
|
+
"sha256": "f6879bb401f6bc28b363f86af62ce3b1402831729717a4129db24a91acc2a74c"
|
|
1906
|
+
},
|
|
1907
|
+
{
|
|
1908
|
+
"name": "ImageGeneration",
|
|
1909
|
+
"slug": "image-generation",
|
|
1910
|
+
"group": "elements",
|
|
1911
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1912
|
+
"summary": "A dot grid holds the frame while the image resolves out of a blur.",
|
|
1913
|
+
"status": "todo-docs",
|
|
1914
|
+
"url": "/docs/components/image-generation",
|
|
1915
|
+
"mdUrl": "/docs/components/image-generation.md",
|
|
1916
|
+
"jsonUrl": "/r/components/image-generation.json",
|
|
1917
|
+
"path": "./components/image-generation.json",
|
|
1918
|
+
"sha256": "5f9068dd0b6a75c28daa54cc431f63af9d16dd86d13cfa911977da4f99bd7f59"
|
|
1919
|
+
},
|
|
1920
|
+
{
|
|
1921
|
+
"name": "InlineCitation",
|
|
1922
|
+
"slug": "inline-citation",
|
|
1923
|
+
"group": "elements",
|
|
1924
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1925
|
+
"summary": "Numbered references inside a sentence, each with a hover preview of its source.",
|
|
1926
|
+
"status": "todo-docs",
|
|
1927
|
+
"url": "/docs/components/inline-citation",
|
|
1928
|
+
"mdUrl": "/docs/components/inline-citation.md",
|
|
1929
|
+
"jsonUrl": "/r/components/inline-citation.json",
|
|
1930
|
+
"path": "./components/inline-citation.json",
|
|
1931
|
+
"sha256": "2294dc91e59fa8982f6b77eec5c400cd39020a48d70945afebb2d2fb8e6fa817"
|
|
1932
|
+
},
|
|
1933
|
+
{
|
|
1934
|
+
"name": "JobProgress",
|
|
1935
|
+
"slug": "job-progress",
|
|
1936
|
+
"group": "elements",
|
|
1937
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1938
|
+
"summary": "Work measured in minutes: weighted stages, an ETA, and a way out.",
|
|
1939
|
+
"status": "todo-docs",
|
|
1940
|
+
"url": "/docs/components/job-progress",
|
|
1941
|
+
"mdUrl": "/docs/components/job-progress.md",
|
|
1942
|
+
"jsonUrl": "/r/components/job-progress.json",
|
|
1943
|
+
"path": "./components/job-progress.json",
|
|
1944
|
+
"sha256": "0d466ee20404899ae13226638f5e2b3f8a3f45bc1e3428b959f110791e23ca7e"
|
|
1945
|
+
},
|
|
1946
|
+
{
|
|
1947
|
+
"name": "LauncherBubble",
|
|
1948
|
+
"slug": "launcher-bubble",
|
|
1949
|
+
"group": "elements",
|
|
1950
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1951
|
+
"summary": "The floating entry point, and the panel it opens into.",
|
|
1952
|
+
"status": "todo-docs",
|
|
1953
|
+
"url": "/docs/components/launcher-bubble",
|
|
1954
|
+
"mdUrl": "/docs/components/launcher-bubble.md",
|
|
1955
|
+
"jsonUrl": "/r/components/launcher-bubble.json",
|
|
1956
|
+
"path": "./components/launcher-bubble.json",
|
|
1957
|
+
"sha256": "31f50a9342ea575a6868fceefecd10581dbb98cfa7b7e32bac36562d27eab760"
|
|
1958
|
+
},
|
|
1959
|
+
{
|
|
1960
|
+
"name": "LiveRegionAnnouncer",
|
|
1961
|
+
"slug": "live-region-announcer",
|
|
1962
|
+
"group": "elements",
|
|
1963
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1964
|
+
"summary": "One polite region, and a queue that makes it audible.",
|
|
1965
|
+
"status": "todo-docs",
|
|
1966
|
+
"url": "/docs/components/live-region-announcer",
|
|
1967
|
+
"mdUrl": "/docs/components/live-region-announcer.md",
|
|
1968
|
+
"jsonUrl": "/r/components/live-region-announcer.json",
|
|
1969
|
+
"path": "./components/live-region-announcer.json",
|
|
1970
|
+
"sha256": "850226664ea2da52d39558f20a78627e4763d5505baac48c39e3ced534bb43f1"
|
|
1971
|
+
},
|
|
1972
|
+
{
|
|
1973
|
+
"name": "MapAnswer",
|
|
1974
|
+
"slug": "map-answer",
|
|
1975
|
+
"group": "elements",
|
|
1976
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
1977
|
+
"summary": "A location answer: pins, a route between them, and the list they came from.",
|
|
1978
|
+
"status": "todo-docs",
|
|
1979
|
+
"url": "/docs/components/map-answer",
|
|
1980
|
+
"mdUrl": "/docs/components/map-answer.md",
|
|
1981
|
+
"jsonUrl": "/r/components/map-answer.json",
|
|
1982
|
+
"path": "./components/map-answer.json",
|
|
1983
|
+
"sha256": "74a3918c9008f9b1596abbd9676f75820c7c8d92458919f199a2bd4630aa0fd6"
|
|
1984
|
+
},
|
|
1985
|
+
{
|
|
1986
|
+
"name": "MarkdownText",
|
|
1987
|
+
"slug": "markdown-text",
|
|
1988
|
+
"group": "elements",
|
|
1989
|
+
"importPath": "@cueplusplus/ui/elements/markdown",
|
|
1990
|
+
"summary": "Model output, rendered.",
|
|
1991
|
+
"status": "todo-docs",
|
|
1992
|
+
"url": "/docs/components/markdown-text",
|
|
1993
|
+
"mdUrl": "/docs/components/markdown-text.md",
|
|
1994
|
+
"jsonUrl": "/r/components/markdown-text.json",
|
|
1995
|
+
"path": "./components/markdown-text.json",
|
|
1996
|
+
"sha256": "3b5387049a23b7faa5e8fcefb03a198835358209416572501770dc82677d5248"
|
|
1997
|
+
},
|
|
1998
|
+
{
|
|
1999
|
+
"name": "MathBlock",
|
|
2000
|
+
"slug": "math-block",
|
|
2001
|
+
"group": "elements",
|
|
2002
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2003
|
+
"summary": "Rendered expressions with the working shown, one step at a time.",
|
|
2004
|
+
"status": "todo-docs",
|
|
2005
|
+
"url": "/docs/components/math-block",
|
|
2006
|
+
"mdUrl": "/docs/components/math-block.md",
|
|
2007
|
+
"jsonUrl": "/r/components/math-block.json",
|
|
2008
|
+
"path": "./components/math-block.json",
|
|
2009
|
+
"sha256": "cd319367ed1b4382b5b6cd33718c0dd7821f534ed1404b5d568cb9df955b040d"
|
|
2010
|
+
},
|
|
2011
|
+
{
|
|
2012
|
+
"name": "McpServerPanel",
|
|
2013
|
+
"slug": "mcp-server-panel",
|
|
2014
|
+
"group": "elements",
|
|
2015
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2016
|
+
"summary": "Which servers are connected, what each one brought, and which is still waiting on you.",
|
|
2017
|
+
"status": "todo-docs",
|
|
2018
|
+
"url": "/docs/components/mcp-server-panel",
|
|
2019
|
+
"mdUrl": "/docs/components/mcp-server-panel.md",
|
|
2020
|
+
"jsonUrl": "/r/components/mcp-server-panel.json",
|
|
2021
|
+
"path": "./components/mcp-server-panel.json",
|
|
2022
|
+
"sha256": "9dcfd81faf1f97cf14a63385bfb7cda7324406a25aa237bb11efdab57d818f54"
|
|
2023
|
+
},
|
|
2024
|
+
{
|
|
2025
|
+
"name": "MemoryChips",
|
|
2026
|
+
"slug": "memory-chips",
|
|
2027
|
+
"group": "elements",
|
|
2028
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2029
|
+
"summary": "What it now remembers about you, written during the turn and removable.",
|
|
2030
|
+
"status": "todo-docs",
|
|
2031
|
+
"url": "/docs/components/memory-chips",
|
|
2032
|
+
"mdUrl": "/docs/components/memory-chips.md",
|
|
2033
|
+
"jsonUrl": "/r/components/memory-chips.json",
|
|
2034
|
+
"path": "./components/memory-chips.json",
|
|
2035
|
+
"sha256": "d8807d07a11c9f644bf04b4bd61747b771eca4899a84d94b68f84fff375a4762"
|
|
2036
|
+
},
|
|
2037
|
+
{
|
|
2038
|
+
"name": "MessageActions",
|
|
2039
|
+
"slug": "message-actions",
|
|
2040
|
+
"group": "elements",
|
|
2041
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2042
|
+
"summary": "Copy, rate, and regenerate.",
|
|
2043
|
+
"status": "todo-docs",
|
|
2044
|
+
"url": "/docs/components/message-actions",
|
|
2045
|
+
"mdUrl": "/docs/components/message-actions.md",
|
|
2046
|
+
"jsonUrl": "/r/components/message-actions.json",
|
|
2047
|
+
"path": "./components/message-actions.json",
|
|
2048
|
+
"sha256": "aa9692664ca753e2619f516ac26438c15cb12556c11dc984951ba55263ef1623"
|
|
2049
|
+
},
|
|
2050
|
+
{
|
|
2051
|
+
"name": "MessageAttachments",
|
|
2052
|
+
"slug": "message-attachments",
|
|
2053
|
+
"group": "elements",
|
|
2054
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2055
|
+
"summary": "The files a turn carried, as received rather than as staged.",
|
|
2056
|
+
"status": "todo-docs",
|
|
2057
|
+
"url": "/docs/components/message-attachments",
|
|
2058
|
+
"mdUrl": "/docs/components/message-attachments.md",
|
|
2059
|
+
"jsonUrl": "/r/components/message-attachments.json",
|
|
2060
|
+
"path": "./components/message-attachments.json",
|
|
2061
|
+
"sha256": "3ef49adec9ee7d9b893d8b019dc4d7bd969543451733b4785a55d9847664a190"
|
|
2062
|
+
},
|
|
2063
|
+
{
|
|
2064
|
+
"name": "MessageBranches",
|
|
2065
|
+
"slug": "message-branches",
|
|
2066
|
+
"group": "elements",
|
|
2067
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2068
|
+
"summary": "Navigate between regenerated versions of the same answer without losing your place.",
|
|
2069
|
+
"status": "todo-docs",
|
|
2070
|
+
"url": "/docs/components/message-branches",
|
|
2071
|
+
"mdUrl": "/docs/components/message-branches.md",
|
|
2072
|
+
"jsonUrl": "/r/components/message-branches.json",
|
|
2073
|
+
"path": "./components/message-branches.json",
|
|
2074
|
+
"sha256": "ef26d167e2fc6595cc959ab7adc49444d45e928b9a6f9b8d3c54d38f9b389ff2"
|
|
2075
|
+
},
|
|
2076
|
+
{
|
|
2077
|
+
"name": "MessagePair",
|
|
2078
|
+
"slug": "message-pair",
|
|
2079
|
+
"group": "elements",
|
|
2080
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2081
|
+
"summary": "A user bubble and a streaming assistant reply, with actions that appear on hover.",
|
|
2082
|
+
"status": "todo-docs",
|
|
2083
|
+
"url": "/docs/components/message-pair",
|
|
2084
|
+
"mdUrl": "/docs/components/message-pair.md",
|
|
2085
|
+
"jsonUrl": "/r/components/message-pair.json",
|
|
2086
|
+
"path": "./components/message-pair.json",
|
|
2087
|
+
"sha256": "8a820cac9a32d8533554d4e926360892cda48692f1884e0da304ab68bcf50fa9"
|
|
2088
|
+
},
|
|
2089
|
+
{
|
|
2090
|
+
"name": "MessageQueue",
|
|
2091
|
+
"slug": "message-queue",
|
|
2092
|
+
"group": "elements",
|
|
2093
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2094
|
+
"summary": "Turns you typed while a run was in flight, stacked and cancelable until it finishes.",
|
|
2095
|
+
"status": "todo-docs",
|
|
2096
|
+
"url": "/docs/components/message-queue",
|
|
2097
|
+
"mdUrl": "/docs/components/message-queue.md",
|
|
2098
|
+
"jsonUrl": "/r/components/message-queue.json",
|
|
2099
|
+
"path": "./components/message-queue.json",
|
|
2100
|
+
"sha256": "2d863478f67c3b6b487a626e3e1dcbdbb669539ed392bdb7bd0ed67f91af7896"
|
|
2101
|
+
},
|
|
2102
|
+
{
|
|
2103
|
+
"name": "MessageTiming",
|
|
2104
|
+
"slug": "message-timing",
|
|
2105
|
+
"group": "elements",
|
|
2106
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2107
|
+
"summary": "What the turn cost: time to first token, throughput, tokens, money.",
|
|
2108
|
+
"status": "todo-docs",
|
|
2109
|
+
"url": "/docs/components/message-timing",
|
|
2110
|
+
"mdUrl": "/docs/components/message-timing.md",
|
|
2111
|
+
"jsonUrl": "/r/components/message-timing.json",
|
|
2112
|
+
"path": "./components/message-timing.json",
|
|
2113
|
+
"sha256": "56f3cf176ac4da0856715c6aeb692628a5335d932f0c402b8dfc58de13690011"
|
|
2114
|
+
},
|
|
2115
|
+
{
|
|
2116
|
+
"name": "MobileComposer",
|
|
2117
|
+
"slug": "mobile-composer",
|
|
2118
|
+
"group": "elements",
|
|
2119
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2120
|
+
"summary": "The bottom sheet: keyboard-aware, quick actions above, thumb-sized targets.",
|
|
2121
|
+
"status": "todo-docs",
|
|
2122
|
+
"url": "/docs/components/mobile-composer",
|
|
2123
|
+
"mdUrl": "/docs/components/mobile-composer.md",
|
|
2124
|
+
"jsonUrl": "/r/components/mobile-composer.json",
|
|
2125
|
+
"path": "./components/mobile-composer.json",
|
|
2126
|
+
"sha256": "540ab7a02d0ddccb2a46b0837f693173e13d1968611233307e63365afbf051c3"
|
|
2127
|
+
},
|
|
2128
|
+
{
|
|
2129
|
+
"name": "ModelPicker",
|
|
2130
|
+
"slug": "model-picker",
|
|
2131
|
+
"group": "elements",
|
|
2132
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2133
|
+
"summary": "The full list rather than the rail: grouped by family, priced, with what each one can do.",
|
|
2134
|
+
"status": "todo-docs",
|
|
2135
|
+
"url": "/docs/components/model-picker",
|
|
2136
|
+
"mdUrl": "/docs/components/model-picker.md",
|
|
2137
|
+
"jsonUrl": "/r/components/model-picker.json",
|
|
2138
|
+
"path": "./components/model-picker.json",
|
|
2139
|
+
"sha256": "159f6e9b6a6291f8c09ab34bff3530e2e5f9feafe014ae2c66dce90f64b429b4"
|
|
2140
|
+
},
|
|
2141
|
+
{
|
|
2142
|
+
"name": "NumberTicker",
|
|
2143
|
+
"slug": "number-ticker",
|
|
2144
|
+
"group": "elements",
|
|
2145
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2146
|
+
"summary": "Digits that roll into place as a count updates in real time.",
|
|
2147
|
+
"status": "todo-docs",
|
|
2148
|
+
"url": "/docs/components/number-ticker",
|
|
2149
|
+
"mdUrl": "/docs/components/number-ticker.md",
|
|
2150
|
+
"jsonUrl": "/r/components/number-ticker.json",
|
|
2151
|
+
"path": "./components/number-ticker.json",
|
|
2152
|
+
"sha256": "f089b82ee0147f0a55a097a12a55c3edcde867c80a77315969874502ecff3ceb"
|
|
2153
|
+
},
|
|
2154
|
+
{
|
|
2155
|
+
"name": "Onboarding",
|
|
2156
|
+
"slug": "onboarding",
|
|
2157
|
+
"group": "elements",
|
|
2158
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2159
|
+
"summary": "First run: three moves that teach what this assistant is actually for.",
|
|
2160
|
+
"status": "todo-docs",
|
|
2161
|
+
"url": "/docs/components/onboarding",
|
|
2162
|
+
"mdUrl": "/docs/components/onboarding.md",
|
|
2163
|
+
"jsonUrl": "/r/components/onboarding.json",
|
|
2164
|
+
"path": "./components/onboarding.json",
|
|
2165
|
+
"sha256": "cee314d96d70014d335de6ae5e09107f4fef0911c2c529e50d69a50b7ed1d168"
|
|
2166
|
+
},
|
|
2167
|
+
{
|
|
2168
|
+
"name": "PermissionGrant",
|
|
2169
|
+
"slug": "permission-grant",
|
|
2170
|
+
"group": "elements",
|
|
2171
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2172
|
+
"summary": "Granting a capability rather than approving one action, with the reach spelled out.",
|
|
2173
|
+
"status": "todo-docs",
|
|
2174
|
+
"url": "/docs/components/permission-grant",
|
|
2175
|
+
"mdUrl": "/docs/components/permission-grant.md",
|
|
2176
|
+
"jsonUrl": "/r/components/permission-grant.json",
|
|
2177
|
+
"path": "./components/permission-grant.json",
|
|
2178
|
+
"sha256": "3d0cbfaebe7875f9053220c82b50cb3ed150521adce294e425268cd9061f06ff"
|
|
2179
|
+
},
|
|
2180
|
+
{
|
|
2181
|
+
"name": "PermissionScopes",
|
|
2182
|
+
"slug": "permission-scopes",
|
|
2183
|
+
"group": "elements",
|
|
2184
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2185
|
+
"summary": "Approval that says how far it reaches and where that is written down.",
|
|
2186
|
+
"status": "todo-docs",
|
|
2187
|
+
"url": "/docs/components/permission-scopes",
|
|
2188
|
+
"mdUrl": "/docs/components/permission-scopes.md",
|
|
2189
|
+
"jsonUrl": "/r/components/permission-scopes.json",
|
|
2190
|
+
"path": "./components/permission-scopes.json",
|
|
2191
|
+
"sha256": "0d7afdfa24530a20535c22ee5414746f2b94918525f72c93213e7afd6839e34d"
|
|
2192
|
+
},
|
|
2193
|
+
{
|
|
2194
|
+
"name": "PromptLibrary",
|
|
2195
|
+
"slug": "prompt-library",
|
|
2196
|
+
"group": "elements",
|
|
2197
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2198
|
+
"summary": "Prompts you saved, searchable, with their variables shown before you insert one.",
|
|
2199
|
+
"status": "todo-docs",
|
|
2200
|
+
"url": "/docs/components/prompt-library",
|
|
2201
|
+
"mdUrl": "/docs/components/prompt-library.md",
|
|
2202
|
+
"jsonUrl": "/r/components/prompt-library.json",
|
|
2203
|
+
"path": "./components/prompt-library.json",
|
|
2204
|
+
"sha256": "8d03712c633b9a1b5ad96f823def54e9a114555cd300cd743d65fffd65b8b886"
|
|
2205
|
+
},
|
|
2206
|
+
{
|
|
2207
|
+
"name": "QueueDock",
|
|
2208
|
+
"slug": "queue-dock",
|
|
2209
|
+
"group": "elements",
|
|
2210
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2211
|
+
"summary": "What you typed while it was still working, stacked and still yours to change.",
|
|
2212
|
+
"status": "todo-docs",
|
|
2213
|
+
"url": "/docs/components/queue-dock",
|
|
2214
|
+
"mdUrl": "/docs/components/queue-dock.md",
|
|
2215
|
+
"jsonUrl": "/r/components/queue-dock.json",
|
|
2216
|
+
"path": "./components/queue-dock.json",
|
|
2217
|
+
"sha256": "f26a8302ef557f60b28cd70f02db092c7e9b620f6704fb08b306529f59b79972"
|
|
2218
|
+
},
|
|
2219
|
+
{
|
|
2220
|
+
"name": "QuotaBanner",
|
|
2221
|
+
"slug": "quota-banner",
|
|
2222
|
+
"group": "elements",
|
|
2223
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2224
|
+
"summary": "How much is left, when it comes back, and the way to get more.",
|
|
2225
|
+
"status": "todo-docs",
|
|
2226
|
+
"url": "/docs/components/quota-banner",
|
|
2227
|
+
"mdUrl": "/docs/components/quota-banner.md",
|
|
2228
|
+
"jsonUrl": "/r/components/quota-banner.json",
|
|
2229
|
+
"path": "./components/quota-banner.json",
|
|
2230
|
+
"sha256": "e979890ce495e6ea5a748a5ab347a49370ca363486efca71b1fac89d30906590"
|
|
2231
|
+
},
|
|
2232
|
+
{
|
|
2233
|
+
"name": "QuoteReply",
|
|
2234
|
+
"slug": "quote-reply",
|
|
2235
|
+
"group": "elements",
|
|
2236
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2237
|
+
"summary": "Select a phrase in an answer and a toolbar offers to quote, explain, or rewrite it.",
|
|
2238
|
+
"status": "todo-docs",
|
|
2239
|
+
"url": "/docs/components/quote-reply",
|
|
2240
|
+
"mdUrl": "/docs/components/quote-reply.md",
|
|
2241
|
+
"jsonUrl": "/r/components/quote-reply.json",
|
|
2242
|
+
"path": "./components/quote-reply.json",
|
|
2243
|
+
"sha256": "a7451e752bad54972086c96fdad92284c7b5081096d941d0fbe07d5b89e66dea"
|
|
2244
|
+
},
|
|
2245
|
+
{
|
|
2246
|
+
"name": "ReadAloud",
|
|
2247
|
+
"slug": "read-aloud",
|
|
2248
|
+
"group": "elements",
|
|
2249
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2250
|
+
"summary": "An answer played back, the spoken word lit as it goes, speed under your thumb.",
|
|
2251
|
+
"status": "todo-docs",
|
|
2252
|
+
"url": "/docs/components/read-aloud",
|
|
2253
|
+
"mdUrl": "/docs/components/read-aloud.md",
|
|
2254
|
+
"jsonUrl": "/r/components/read-aloud.json",
|
|
2255
|
+
"path": "./components/read-aloud.json",
|
|
2256
|
+
"sha256": "0cc82132252d6067c4a154f3df6c5967dc04bc4902113eab123397fde9cb7fc7"
|
|
2257
|
+
},
|
|
2258
|
+
{
|
|
2259
|
+
"name": "ReasoningEffort",
|
|
2260
|
+
"slug": "reasoning-effort",
|
|
2261
|
+
"group": "elements",
|
|
2262
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2263
|
+
"summary": "How hard to think, and how much of that budget the run actually spent.",
|
|
2264
|
+
"status": "todo-docs",
|
|
2265
|
+
"url": "/docs/components/reasoning-effort",
|
|
2266
|
+
"mdUrl": "/docs/components/reasoning-effort.md",
|
|
2267
|
+
"jsonUrl": "/r/components/reasoning-effort.json",
|
|
2268
|
+
"path": "./components/reasoning-effort.json",
|
|
2269
|
+
"sha256": "7459926e09c70c27614ddabe2c7482237de1ad21a634c2071df0a785a48e5ad5"
|
|
2270
|
+
},
|
|
2271
|
+
{
|
|
2272
|
+
"name": "ReasoningPanel",
|
|
2273
|
+
"slug": "reasoning-panel",
|
|
2274
|
+
"group": "elements",
|
|
2275
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2276
|
+
"summary": "A collapsible trace that streams reasoning steps along a timeline, then settles into a summary.",
|
|
2277
|
+
"status": "todo-docs",
|
|
2278
|
+
"url": "/docs/components/reasoning-panel",
|
|
2279
|
+
"mdUrl": "/docs/components/reasoning-panel.md",
|
|
2280
|
+
"jsonUrl": "/r/components/reasoning-panel.json",
|
|
2281
|
+
"path": "./components/reasoning-panel.json",
|
|
2282
|
+
"sha256": "6fc04af6e8afe478ec51964d35ae6107c22911dfb62b7ffeb8d1425a3882f60a"
|
|
2283
|
+
},
|
|
2284
|
+
{
|
|
2285
|
+
"name": "RecommendationCard",
|
|
2286
|
+
"slug": "recommendation-card",
|
|
2287
|
+
"group": "elements",
|
|
2288
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2289
|
+
"summary": "The agent proposes a change with its confidence, and waits for a yes.",
|
|
2290
|
+
"status": "todo-docs",
|
|
2291
|
+
"url": "/docs/components/recommendation-card",
|
|
2292
|
+
"mdUrl": "/docs/components/recommendation-card.md",
|
|
2293
|
+
"jsonUrl": "/r/components/recommendation-card.json",
|
|
2294
|
+
"path": "./components/recommendation-card.json",
|
|
2295
|
+
"sha256": "5330c991ee9a5444015d478b8519c8c75359136c30ca6fac9c677fa8175a7a97"
|
|
2296
|
+
},
|
|
2297
|
+
{
|
|
2298
|
+
"name": "RegenerateMenu",
|
|
2299
|
+
"slug": "regenerate-menu",
|
|
2300
|
+
"group": "elements",
|
|
2301
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2302
|
+
"summary": "Fork the same turn to a different model instead of rolling the same dice.",
|
|
2303
|
+
"status": "todo-docs",
|
|
2304
|
+
"url": "/docs/components/regenerate-menu",
|
|
2305
|
+
"mdUrl": "/docs/components/regenerate-menu.md",
|
|
2306
|
+
"jsonUrl": "/r/components/regenerate-menu.json",
|
|
2307
|
+
"path": "./components/regenerate-menu.json",
|
|
2308
|
+
"sha256": "b2f02bee692c3640cb88f9d348a90a39e3e07d59255dd4d1191b9abd7cb40a85"
|
|
2309
|
+
},
|
|
2310
|
+
{
|
|
2311
|
+
"name": "ReplayPlayer",
|
|
2312
|
+
"slug": "replay-player",
|
|
2313
|
+
"group": "elements",
|
|
2314
|
+
"importPath": "@cueplusplus/ui/elements/replay",
|
|
2315
|
+
"summary": "A scripted run, with a transport: play, pause, step, scrub, restart, rate.",
|
|
2316
|
+
"status": "todo-docs",
|
|
2317
|
+
"url": "/docs/components/replay-player",
|
|
2318
|
+
"mdUrl": "/docs/components/replay-player.md",
|
|
2319
|
+
"jsonUrl": "/r/components/replay-player.json",
|
|
2320
|
+
"path": "./components/replay-player.json",
|
|
2321
|
+
"sha256": "9347d1020e3644bc33b666111bae4c473d4dff5faeb983ca1138028dc504956a"
|
|
2322
|
+
},
|
|
2323
|
+
{
|
|
2324
|
+
"name": "ResearchReport",
|
|
2325
|
+
"slug": "research-report",
|
|
2326
|
+
"group": "elements",
|
|
2327
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2328
|
+
"summary": "An outline that fills in section by section, each carrying the sources behind it.",
|
|
2329
|
+
"status": "todo-docs",
|
|
2330
|
+
"url": "/docs/components/research-report",
|
|
2331
|
+
"mdUrl": "/docs/components/research-report.md",
|
|
2332
|
+
"jsonUrl": "/r/components/research-report.json",
|
|
2333
|
+
"path": "./components/research-report.json",
|
|
2334
|
+
"sha256": "36cbd4988e6de21c8401a5c57e96e34dc3dbba223303f6c3b81fa13807827cf7"
|
|
2335
|
+
},
|
|
2336
|
+
{
|
|
2337
|
+
"name": "RetrievalChunks",
|
|
2338
|
+
"slug": "retrieval-chunks",
|
|
2339
|
+
"group": "elements",
|
|
2340
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2341
|
+
"summary": "The passages a retrieval answer stands on, scored, before the answer itself arrives.",
|
|
2342
|
+
"status": "todo-docs",
|
|
2343
|
+
"url": "/docs/components/retrieval-chunks",
|
|
2344
|
+
"mdUrl": "/docs/components/retrieval-chunks.md",
|
|
2345
|
+
"jsonUrl": "/r/components/retrieval-chunks.json",
|
|
2346
|
+
"path": "./components/retrieval-chunks.json",
|
|
2347
|
+
"sha256": "fdffc1b567c2412ab311df53901682907cc0e65e97ccc1a55b1c6ee653991487"
|
|
2348
|
+
},
|
|
2349
|
+
{
|
|
2350
|
+
"name": "RevertDock",
|
|
2351
|
+
"slug": "revert-dock",
|
|
2352
|
+
"group": "elements",
|
|
2353
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2354
|
+
"summary": "Put it back — and say, in the interface, that this cannot be taken back.",
|
|
2355
|
+
"status": "todo-docs",
|
|
2356
|
+
"url": "/docs/components/revert-dock",
|
|
2357
|
+
"mdUrl": "/docs/components/revert-dock.md",
|
|
2358
|
+
"jsonUrl": "/r/components/revert-dock.json",
|
|
2359
|
+
"path": "./components/revert-dock.json",
|
|
2360
|
+
"sha256": "d53f21bc7fdf3eade53f24de58ac0ef2ad77318cedc53cc4eeba3b2645076485"
|
|
2361
|
+
},
|
|
2362
|
+
{
|
|
2363
|
+
"name": "ReviewableDiff",
|
|
2364
|
+
"slug": "reviewable-diff",
|
|
2365
|
+
"group": "elements",
|
|
2366
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2367
|
+
"summary": "The same diff, but each hunk is a decision: keep it, discard it, apply what survived.",
|
|
2368
|
+
"status": "todo-docs",
|
|
2369
|
+
"url": "/docs/components/reviewable-diff",
|
|
2370
|
+
"mdUrl": "/docs/components/reviewable-diff.md",
|
|
2371
|
+
"jsonUrl": "/r/components/reviewable-diff.json",
|
|
2372
|
+
"path": "./components/reviewable-diff.json",
|
|
2373
|
+
"sha256": "cd8918a8a73c449c0d88a97787a3a10da3999ad375602e5ea8cd3effb9db05c3"
|
|
2374
|
+
},
|
|
2375
|
+
{
|
|
2376
|
+
"name": "RiskBadge",
|
|
2377
|
+
"slug": "risk-badge",
|
|
2378
|
+
"group": "elements",
|
|
2379
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2380
|
+
"summary": "How dangerous this call is, said out loud instead of implied.",
|
|
2381
|
+
"status": "todo-docs",
|
|
2382
|
+
"url": "/docs/components/risk-badge",
|
|
2383
|
+
"mdUrl": "/docs/components/risk-badge.md",
|
|
2384
|
+
"jsonUrl": "/r/components/risk-badge.json",
|
|
2385
|
+
"path": "./components/risk-badge.json",
|
|
2386
|
+
"sha256": "13e6869deced6b4c8dad3f54fc9ad7380c57131ac03afa6b86565bc0a0f6b9bd"
|
|
2387
|
+
},
|
|
2388
|
+
{
|
|
2389
|
+
"name": "ScheduleCard",
|
|
2390
|
+
"slug": "schedule-card",
|
|
2391
|
+
"group": "elements",
|
|
2392
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2393
|
+
"summary": "A run that repeats on its own, with its cadence and how it has been doing.",
|
|
2394
|
+
"status": "todo-docs",
|
|
2395
|
+
"url": "/docs/components/schedule-card",
|
|
2396
|
+
"mdUrl": "/docs/components/schedule-card.md",
|
|
2397
|
+
"jsonUrl": "/r/components/schedule-card.json",
|
|
2398
|
+
"path": "./components/schedule-card.json",
|
|
2399
|
+
"sha256": "6d4e3c5d70097fa693c9ccca2872c755936fc7bd645a582d705153f5351aae2f"
|
|
2400
|
+
},
|
|
2401
|
+
{
|
|
2402
|
+
"name": "ScoreBreakdown",
|
|
2403
|
+
"slug": "score-breakdown",
|
|
2404
|
+
"group": "elements",
|
|
2405
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2406
|
+
"summary": "A verdict with its arithmetic shown: criteria, weights, and what pulled it down.",
|
|
2407
|
+
"status": "todo-docs",
|
|
2408
|
+
"url": "/docs/components/score-breakdown",
|
|
2409
|
+
"mdUrl": "/docs/components/score-breakdown.md",
|
|
2410
|
+
"jsonUrl": "/r/components/score-breakdown.json",
|
|
2411
|
+
"path": "./components/score-breakdown.json",
|
|
2412
|
+
"sha256": "2aa7017ab2e8dea67dd7901c895f6b1a04c738906ee578d7515413be966f7c51"
|
|
2413
|
+
},
|
|
2414
|
+
{
|
|
2415
|
+
"name": "ScrollAnchor",
|
|
2416
|
+
"slug": "scroll-anchor",
|
|
2417
|
+
"group": "elements",
|
|
2418
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2419
|
+
"summary": "Streaming never steals your scroll position; a pill offers the way back down.",
|
|
2420
|
+
"status": "todo-docs",
|
|
2421
|
+
"url": "/docs/components/scroll-anchor",
|
|
2422
|
+
"mdUrl": "/docs/components/scroll-anchor.md",
|
|
2423
|
+
"jsonUrl": "/r/components/scroll-anchor.json",
|
|
2424
|
+
"path": "./components/scroll-anchor.json",
|
|
2425
|
+
"sha256": "346a2af5165375bfdbc52d85984d1f77eaaf5ef1b49e1a6ad1381509055aca07"
|
|
2426
|
+
},
|
|
2427
|
+
{
|
|
2428
|
+
"name": "SettingsPanel",
|
|
2429
|
+
"slug": "settings-panel",
|
|
2430
|
+
"group": "elements",
|
|
2431
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2432
|
+
"summary": "Model, system prompt, temperature, and what the assistant is allowed to do.",
|
|
2433
|
+
"status": "todo-docs",
|
|
2434
|
+
"url": "/docs/components/settings-panel",
|
|
2435
|
+
"mdUrl": "/docs/components/settings-panel.md",
|
|
2436
|
+
"jsonUrl": "/r/components/settings-panel.json",
|
|
2437
|
+
"path": "./components/settings-panel.json",
|
|
2438
|
+
"sha256": "972e1e62bbeef13fec1ba37a2cd8cc8d4d32cb1ae9a23a37b5bba138f4cfb026"
|
|
2439
|
+
},
|
|
2440
|
+
{
|
|
2441
|
+
"name": "SharedConversation",
|
|
2442
|
+
"slug": "shared-conversation",
|
|
2443
|
+
"group": "elements",
|
|
2444
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2445
|
+
"summary": "A read-only transcript someone sent you, with a way to pick it up yourself.",
|
|
2446
|
+
"status": "todo-docs",
|
|
2447
|
+
"url": "/docs/components/shared-conversation",
|
|
2448
|
+
"mdUrl": "/docs/components/shared-conversation.md",
|
|
2449
|
+
"jsonUrl": "/r/components/shared-conversation.json",
|
|
2450
|
+
"path": "./components/shared-conversation.json",
|
|
2451
|
+
"sha256": "5ea0c86f20ec2c787d446af582f3659cc17537e52972f4f7ed940acea00df112"
|
|
2452
|
+
},
|
|
2453
|
+
{
|
|
2454
|
+
"name": "ShimmerLabel",
|
|
2455
|
+
"slug": "shimmer-label",
|
|
2456
|
+
"group": "elements",
|
|
2457
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2458
|
+
"summary": "A label that sweeps while something is still happening.",
|
|
2459
|
+
"status": "todo-docs",
|
|
2460
|
+
"url": "/docs/components/shimmer-label",
|
|
2461
|
+
"mdUrl": "/docs/components/shimmer-label.md",
|
|
2462
|
+
"jsonUrl": "/r/components/shimmer-label.json",
|
|
2463
|
+
"path": "./components/shimmer-label.json",
|
|
2464
|
+
"sha256": "7a51d7cb3dac6e10163eab06fa77508bd222af618ff937412cc672896c860e9e"
|
|
2465
|
+
},
|
|
2466
|
+
{
|
|
2467
|
+
"name": "Sources",
|
|
2468
|
+
"slug": "sources",
|
|
2469
|
+
"group": "elements",
|
|
2470
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2471
|
+
"summary": "Citations collapsed into a pill, expanding into scannable source cards.",
|
|
2472
|
+
"status": "todo-docs",
|
|
2473
|
+
"url": "/docs/components/sources",
|
|
2474
|
+
"mdUrl": "/docs/components/sources.md",
|
|
2475
|
+
"jsonUrl": "/r/components/sources.json",
|
|
2476
|
+
"path": "./components/sources.json",
|
|
2477
|
+
"sha256": "ab88b348534be77f1e82e57bb9b3e88cf7149207f6b3e7f2dfea85c373211657"
|
|
2478
|
+
},
|
|
2479
|
+
{
|
|
2480
|
+
"name": "SpeakerIdentity",
|
|
2481
|
+
"slug": "speaker-identity",
|
|
2482
|
+
"group": "elements",
|
|
2483
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2484
|
+
"summary": "Who is talking, once a thread holds more than a user and one model.",
|
|
2485
|
+
"status": "todo-docs",
|
|
2486
|
+
"url": "/docs/components/speaker-identity",
|
|
2487
|
+
"mdUrl": "/docs/components/speaker-identity.md",
|
|
2488
|
+
"jsonUrl": "/r/components/speaker-identity.json",
|
|
2489
|
+
"path": "./components/speaker-identity.json",
|
|
2490
|
+
"sha256": "2e8937009e181b90630090176a7c1ef6273f694c111fcd4a8a7180a8f9e4bf2a"
|
|
2491
|
+
},
|
|
2492
|
+
{
|
|
2493
|
+
"name": "SpecSheet",
|
|
2494
|
+
"slug": "spec-sheet",
|
|
2495
|
+
"group": "elements",
|
|
2496
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2497
|
+
"summary": "The most common structured answer after a table: one object, labeled.",
|
|
2498
|
+
"status": "todo-docs",
|
|
2499
|
+
"url": "/docs/components/spec-sheet",
|
|
2500
|
+
"mdUrl": "/docs/components/spec-sheet.md",
|
|
2501
|
+
"jsonUrl": "/r/components/spec-sheet.json",
|
|
2502
|
+
"path": "./components/spec-sheet.json",
|
|
2503
|
+
"sha256": "258ef92e423e1aa822abba8d3c9bb5fe44d361df66bab87898626a9b54eebf30"
|
|
2504
|
+
},
|
|
2505
|
+
{
|
|
2506
|
+
"name": "StoppedRun",
|
|
2507
|
+
"slug": "stopped-run",
|
|
2508
|
+
"group": "elements",
|
|
2509
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2510
|
+
"summary": "You pressed stop.",
|
|
2511
|
+
"status": "todo-docs",
|
|
2512
|
+
"url": "/docs/components/stopped-run",
|
|
2513
|
+
"mdUrl": "/docs/components/stopped-run.md",
|
|
2514
|
+
"jsonUrl": "/r/components/stopped-run.json",
|
|
2515
|
+
"path": "./components/stopped-run.json",
|
|
2516
|
+
"sha256": "13c0e782ef78a342d787a25a20ee446b00e3e075d70f6ead5df2b67a53948751"
|
|
2517
|
+
},
|
|
2518
|
+
{
|
|
2519
|
+
"name": "StreamingText",
|
|
2520
|
+
"slug": "streaming-text",
|
|
2521
|
+
"group": "elements",
|
|
2522
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2523
|
+
"summary": "Tokens arrive softly: the newest words land in blue and settle into ink.",
|
|
2524
|
+
"status": "todo-docs",
|
|
2525
|
+
"url": "/docs/components/streaming-text",
|
|
2526
|
+
"mdUrl": "/docs/components/streaming-text.md",
|
|
2527
|
+
"jsonUrl": "/r/components/streaming-text.json",
|
|
2528
|
+
"path": "./components/streaming-text.json",
|
|
2529
|
+
"sha256": "158f94c85653b1f3c3d3548f93b828a043b1a06fa938536fbd8687f82cf24f0d"
|
|
2530
|
+
},
|
|
2531
|
+
{
|
|
2532
|
+
"name": "Sub",
|
|
2533
|
+
"slug": "sub",
|
|
2534
|
+
"group": "elements",
|
|
2535
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2536
|
+
"summary": "A subscript inside an expression: a bound or a label, set upright inside the italic.",
|
|
2537
|
+
"status": "todo-docs",
|
|
2538
|
+
"url": "/docs/components/sub",
|
|
2539
|
+
"mdUrl": "/docs/components/sub.md",
|
|
2540
|
+
"jsonUrl": "/r/components/sub.json",
|
|
2541
|
+
"path": "./components/sub.json",
|
|
2542
|
+
"sha256": "8b2059da4d4eb2382bfbb1f7efdb8a4af6dcb03468bcc8226b71730d0637f1b6"
|
|
2543
|
+
},
|
|
2544
|
+
{
|
|
2545
|
+
"name": "SubagentList",
|
|
2546
|
+
"slug": "subagent-list",
|
|
2547
|
+
"group": "elements",
|
|
2548
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2549
|
+
"summary": "Parallel workers with their own progress, models, and completions.",
|
|
2550
|
+
"status": "todo-docs",
|
|
2551
|
+
"url": "/docs/components/subagent-list",
|
|
2552
|
+
"mdUrl": "/docs/components/subagent-list.md",
|
|
2553
|
+
"jsonUrl": "/r/components/subagent-list.json",
|
|
2554
|
+
"path": "./components/subagent-list.json",
|
|
2555
|
+
"sha256": "1c48fc7e5c46cc14fd95b38498bb3fbf69a1e28c12641d164f58ca0bd2dd2f71"
|
|
2556
|
+
},
|
|
2557
|
+
{
|
|
2558
|
+
"name": "Suggestions",
|
|
2559
|
+
"slug": "suggestions",
|
|
2560
|
+
"group": "elements",
|
|
2561
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2562
|
+
"summary": "Prompt pills that stagger in after a reply and invite the next turn.",
|
|
2563
|
+
"status": "todo-docs",
|
|
2564
|
+
"url": "/docs/components/suggestions",
|
|
2565
|
+
"mdUrl": "/docs/components/suggestions.md",
|
|
2566
|
+
"jsonUrl": "/r/components/suggestions.json",
|
|
2567
|
+
"path": "./components/suggestions.json",
|
|
2568
|
+
"sha256": "99477aacf536e7a9b82251a9b3d11355ea283a78bda728cc5ab9dc3dd39c9a48"
|
|
2569
|
+
},
|
|
2570
|
+
{
|
|
2571
|
+
"name": "Sup",
|
|
2572
|
+
"slug": "sup",
|
|
2573
|
+
"group": "elements",
|
|
2574
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2575
|
+
"summary": "A superscript inside an expression: an exponent or an index, set upright inside the italic.",
|
|
2576
|
+
"status": "todo-docs",
|
|
2577
|
+
"url": "/docs/components/sup",
|
|
2578
|
+
"mdUrl": "/docs/components/sup.md",
|
|
2579
|
+
"jsonUrl": "/r/components/sup.json",
|
|
2580
|
+
"path": "./components/sup.json",
|
|
2581
|
+
"sha256": "2d04dbc0e8858af1fae1c27ee45277f0fa63fb300ef805e39a953f7dcc37cddd"
|
|
2582
|
+
},
|
|
2583
|
+
{
|
|
2584
|
+
"name": "SwapLabel",
|
|
2585
|
+
"slug": "swap-label",
|
|
2586
|
+
"group": "elements",
|
|
2587
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2588
|
+
"summary": "Two labels stacked in one cell, with the box's width animating between them.",
|
|
2589
|
+
"status": "todo-docs",
|
|
2590
|
+
"url": "/docs/components/swap-label",
|
|
2591
|
+
"mdUrl": "/docs/components/swap-label.md",
|
|
2592
|
+
"jsonUrl": "/r/components/swap-label.json",
|
|
2593
|
+
"path": "./components/swap-label.json",
|
|
2594
|
+
"sha256": "4f28e01b39116a7489a835746f7ea07426d2ded6f1154ff93dd3ab2f8c9c9109"
|
|
2595
|
+
},
|
|
2596
|
+
{
|
|
2597
|
+
"name": "TailStatus",
|
|
2598
|
+
"slug": "tail-status",
|
|
2599
|
+
"group": "elements",
|
|
2600
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2601
|
+
"summary": "The live row at the foot of a transcript: what the run is doing, right now.",
|
|
2602
|
+
"status": "todo-docs",
|
|
2603
|
+
"url": "/docs/components/tail-status",
|
|
2604
|
+
"mdUrl": "/docs/components/tail-status.md",
|
|
2605
|
+
"jsonUrl": "/r/components/tail-status.json",
|
|
2606
|
+
"path": "./components/tail-status.json",
|
|
2607
|
+
"sha256": "cf51d7310e80b6e6ef7793e34d5620452623062143c5648196401dd798dd6bfb"
|
|
2608
|
+
},
|
|
2609
|
+
{
|
|
2610
|
+
"name": "TerminalBlock",
|
|
2611
|
+
"slug": "terminal-block",
|
|
2612
|
+
"group": "elements",
|
|
2613
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2614
|
+
"summary": "Command output that streams line by line and ends with an exit status.",
|
|
2615
|
+
"status": "todo-docs",
|
|
2616
|
+
"url": "/docs/components/terminal-block",
|
|
2617
|
+
"mdUrl": "/docs/components/terminal-block.md",
|
|
2618
|
+
"jsonUrl": "/r/components/terminal-block.json",
|
|
2619
|
+
"path": "./components/terminal-block.json",
|
|
2620
|
+
"sha256": "d53b62939f2b2c18cf77b20e2f27d366d5077db26c64dc9958c6a7687b25ccab"
|
|
2621
|
+
},
|
|
2622
|
+
{
|
|
2623
|
+
"name": "ThinkingIndicator",
|
|
2624
|
+
"slug": "thinking-indicator",
|
|
2625
|
+
"group": "elements",
|
|
2626
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2627
|
+
"summary": "A live status line that names what the agent is doing right now, with elapsed time.",
|
|
2628
|
+
"status": "todo-docs",
|
|
2629
|
+
"url": "/docs/components/thinking-indicator",
|
|
2630
|
+
"mdUrl": "/docs/components/thinking-indicator.md",
|
|
2631
|
+
"jsonUrl": "/r/components/thinking-indicator.json",
|
|
2632
|
+
"path": "./components/thinking-indicator.json",
|
|
2633
|
+
"sha256": "918821dfb702f3bf0b46ab071115e27470e542613f13d9db0f8ae22e1f2da97a"
|
|
2634
|
+
},
|
|
2635
|
+
{
|
|
2636
|
+
"name": "ThreadList",
|
|
2637
|
+
"slug": "thread-list",
|
|
2638
|
+
"group": "elements",
|
|
2639
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2640
|
+
"summary": "Conversation history with unread marks and actions that wait for hover.",
|
|
2641
|
+
"status": "todo-docs",
|
|
2642
|
+
"url": "/docs/components/thread-list",
|
|
2643
|
+
"mdUrl": "/docs/components/thread-list.md",
|
|
2644
|
+
"jsonUrl": "/r/components/thread-list.json",
|
|
2645
|
+
"path": "./components/thread-list.json",
|
|
2646
|
+
"sha256": "c5fdd6c73114891fc439e3bf926de292532f3fb17084c5acf931a65bdd379b58"
|
|
2647
|
+
},
|
|
2648
|
+
{
|
|
2649
|
+
"name": "ThreadSearch",
|
|
2650
|
+
"slug": "thread-search",
|
|
2651
|
+
"group": "elements",
|
|
2652
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2653
|
+
"summary": "History you can actually get back into: pinned first, then grouped by when.",
|
|
2654
|
+
"status": "todo-docs",
|
|
2655
|
+
"url": "/docs/components/thread-search",
|
|
2656
|
+
"mdUrl": "/docs/components/thread-search.md",
|
|
2657
|
+
"jsonUrl": "/r/components/thread-search.json",
|
|
2658
|
+
"path": "./components/thread-search.json",
|
|
2659
|
+
"sha256": "a1815709afd5a87e913435cf32e3c2e460c6b3c6c52130e915010bf700c66acc"
|
|
2660
|
+
},
|
|
2661
|
+
{
|
|
2662
|
+
"name": "TimeBoundary",
|
|
2663
|
+
"slug": "time-boundary",
|
|
2664
|
+
"group": "elements",
|
|
2665
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2666
|
+
"summary": "The rule that says the day changed: a label centred between two hairlines.",
|
|
2667
|
+
"status": "todo-docs",
|
|
2668
|
+
"url": "/docs/components/time-boundary",
|
|
2669
|
+
"mdUrl": "/docs/components/time-boundary.md",
|
|
2670
|
+
"jsonUrl": "/r/components/time-boundary.json",
|
|
2671
|
+
"path": "./components/time-boundary.json",
|
|
2672
|
+
"sha256": "adac36cbc7b1722fb1e31e1ae5136603a0175319967532cad7bfc5f1b56ab41d"
|
|
2673
|
+
},
|
|
2674
|
+
{
|
|
2675
|
+
"name": "TodoList",
|
|
2676
|
+
"slug": "todo-list",
|
|
2677
|
+
"group": "elements",
|
|
2678
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2679
|
+
"summary": "The agent's own working list, rewritten mid-run as it discovers what else is needed.",
|
|
2680
|
+
"status": "todo-docs",
|
|
2681
|
+
"url": "/docs/components/todo-list",
|
|
2682
|
+
"mdUrl": "/docs/components/todo-list.md",
|
|
2683
|
+
"jsonUrl": "/r/components/todo-list.json",
|
|
2684
|
+
"path": "./components/todo-list.json",
|
|
2685
|
+
"sha256": "51cfb083e6980eb90d1c14fc595ab905a1b0d88d6c7704959bb4d91217ecec6a"
|
|
2686
|
+
},
|
|
2687
|
+
{
|
|
2688
|
+
"name": "ToolCall",
|
|
2689
|
+
"slug": "tool-call",
|
|
2690
|
+
"group": "elements",
|
|
2691
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2692
|
+
"summary": "One tool invocation with its request and result tucked behind a disclosure.",
|
|
2693
|
+
"status": "todo-docs",
|
|
2694
|
+
"url": "/docs/components/tool-call",
|
|
2695
|
+
"mdUrl": "/docs/components/tool-call.md",
|
|
2696
|
+
"jsonUrl": "/r/components/tool-call.json",
|
|
2697
|
+
"path": "./components/tool-call.json",
|
|
2698
|
+
"sha256": "1f62fd1c98e6014b8bfe10c432baf111ec2b0e20e54c8f68227d5cfeb9dbc332"
|
|
2699
|
+
},
|
|
2700
|
+
{
|
|
2701
|
+
"name": "ToolError",
|
|
2702
|
+
"slug": "tool-error",
|
|
2703
|
+
"group": "elements",
|
|
2704
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2705
|
+
"summary": "One call failed.",
|
|
2706
|
+
"status": "todo-docs",
|
|
2707
|
+
"url": "/docs/components/tool-error",
|
|
2708
|
+
"mdUrl": "/docs/components/tool-error.md",
|
|
2709
|
+
"jsonUrl": "/r/components/tool-error.json",
|
|
2710
|
+
"path": "./components/tool-error.json",
|
|
2711
|
+
"sha256": "5a499879cd63d57e89422a161e47fe2a55c249aa2fb2bbf96795aadc5e5f0393"
|
|
2712
|
+
},
|
|
2713
|
+
{
|
|
2714
|
+
"name": "ToolGroup",
|
|
2715
|
+
"slug": "tool-group",
|
|
2716
|
+
"group": "elements",
|
|
2717
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2718
|
+
"summary": "Calls that went out together, collapsed to one row until you want the detail.",
|
|
2719
|
+
"status": "todo-docs",
|
|
2720
|
+
"url": "/docs/components/tool-group",
|
|
2721
|
+
"mdUrl": "/docs/components/tool-group.md",
|
|
2722
|
+
"jsonUrl": "/r/components/tool-group.json",
|
|
2723
|
+
"path": "./components/tool-group.json",
|
|
2724
|
+
"sha256": "317c9e541f13df9c83e036443485b211fbc234d240624d43f597bd8c25bedb3d"
|
|
2725
|
+
},
|
|
2726
|
+
{
|
|
2727
|
+
"name": "ToolTimeline",
|
|
2728
|
+
"slug": "tool-timeline",
|
|
2729
|
+
"group": "elements",
|
|
2730
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2731
|
+
"summary": "A whole working session summarized as verbs, targets, and file stats.",
|
|
2732
|
+
"status": "todo-docs",
|
|
2733
|
+
"url": "/docs/components/tool-timeline",
|
|
2734
|
+
"mdUrl": "/docs/components/tool-timeline.md",
|
|
2735
|
+
"jsonUrl": "/r/components/tool-timeline.json",
|
|
2736
|
+
"path": "./components/tool-timeline.json",
|
|
2737
|
+
"sha256": "fbc164c4d66b928b81e35b348ae8f42e12e7f03f0ac8e0d1e35aa9fa65968b08"
|
|
2738
|
+
},
|
|
2739
|
+
{
|
|
2740
|
+
"name": "TraceWaterfall",
|
|
2741
|
+
"slug": "trace-waterfall",
|
|
2742
|
+
"group": "elements",
|
|
2743
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2744
|
+
"summary": "Every span in a run on one time axis, nested, so you can see where it actually went.",
|
|
2745
|
+
"status": "todo-docs",
|
|
2746
|
+
"url": "/docs/components/trace-waterfall",
|
|
2747
|
+
"mdUrl": "/docs/components/trace-waterfall.md",
|
|
2748
|
+
"jsonUrl": "/r/components/trace-waterfall.json",
|
|
2749
|
+
"path": "./components/trace-waterfall.json",
|
|
2750
|
+
"sha256": "55b5cb3949935959acb7b235e17f96d3afe53c613e25330233073f41b2ab631d"
|
|
2751
|
+
},
|
|
2752
|
+
{
|
|
2753
|
+
"name": "TurnFooter",
|
|
2754
|
+
"slug": "turn-footer",
|
|
2755
|
+
"group": "elements",
|
|
2756
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2757
|
+
"summary": "The row under a finished turn: copy, reply, fork, and when it happened.",
|
|
2758
|
+
"status": "todo-docs",
|
|
2759
|
+
"url": "/docs/components/turn-footer",
|
|
2760
|
+
"mdUrl": "/docs/components/turn-footer.md",
|
|
2761
|
+
"jsonUrl": "/r/components/turn-footer.json",
|
|
2762
|
+
"path": "./components/turn-footer.json",
|
|
2763
|
+
"sha256": "7d9e0ea0a00a7f5ceb01373324890a4294b787322a00378c12923ed0da0ca1d5"
|
|
2764
|
+
},
|
|
2765
|
+
{
|
|
2766
|
+
"name": "TypingIndicator",
|
|
2767
|
+
"slug": "typing-indicator",
|
|
2768
|
+
"group": "elements",
|
|
2769
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2770
|
+
"summary": "The classic three dots, tuned to read as presence rather than noise.",
|
|
2771
|
+
"status": "todo-docs",
|
|
2772
|
+
"url": "/docs/components/typing-indicator",
|
|
2773
|
+
"mdUrl": "/docs/components/typing-indicator.md",
|
|
2774
|
+
"jsonUrl": "/r/components/typing-indicator.json",
|
|
2775
|
+
"path": "./components/typing-indicator.json",
|
|
2776
|
+
"sha256": "c1baafb6f66e07b2edd763e729e7b14961d3a617650e0cf112647cea05f05a4c"
|
|
2777
|
+
},
|
|
2778
|
+
{
|
|
2779
|
+
"name": "UnreadDivider",
|
|
2780
|
+
"slug": "unread-divider",
|
|
2781
|
+
"group": "elements",
|
|
2782
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2783
|
+
"summary": "The rule that says \"you have read down to here\": an accented line with its label at the end.",
|
|
2784
|
+
"status": "todo-docs",
|
|
2785
|
+
"url": "/docs/components/unread-divider",
|
|
2786
|
+
"mdUrl": "/docs/components/unread-divider.md",
|
|
2787
|
+
"jsonUrl": "/r/components/unread-divider.json",
|
|
2788
|
+
"path": "./components/unread-divider.json",
|
|
2789
|
+
"sha256": "1a8d6f05db778700faea836d4bb2378d11e838d0f119d5504557eedb5c5dde9e"
|
|
2790
|
+
},
|
|
2791
|
+
{
|
|
2792
|
+
"name": "VerdictRow",
|
|
2793
|
+
"slug": "verdict-row",
|
|
2794
|
+
"group": "elements",
|
|
2795
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2796
|
+
"summary": "What the run thought of its own work, attached to the turn that did it.",
|
|
2797
|
+
"status": "todo-docs",
|
|
2798
|
+
"url": "/docs/components/verdict-row",
|
|
2799
|
+
"mdUrl": "/docs/components/verdict-row.md",
|
|
2800
|
+
"jsonUrl": "/r/components/verdict-row.json",
|
|
2801
|
+
"path": "./components/verdict-row.json",
|
|
2802
|
+
"sha256": "c123b190c9cf267a984b530cb4ce18f04d6aac96412b8346bab69cfe700a4437"
|
|
2803
|
+
},
|
|
2804
|
+
{
|
|
2805
|
+
"name": "VoiceConversation",
|
|
2806
|
+
"slug": "voice-conversation",
|
|
2807
|
+
"group": "elements",
|
|
2808
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2809
|
+
"summary": "A live call: the orb tracks your voice, the caption names the turn, the transcript follows.",
|
|
2810
|
+
"status": "todo-docs",
|
|
2811
|
+
"url": "/docs/components/voice-conversation",
|
|
2812
|
+
"mdUrl": "/docs/components/voice-conversation.md",
|
|
2813
|
+
"jsonUrl": "/r/components/voice-conversation.json",
|
|
2814
|
+
"path": "./components/voice-conversation.json",
|
|
2815
|
+
"sha256": "c3c9171f2e8689927be88d685d30246bdb6d55cc6237ec049cff7a8a150614a5"
|
|
2816
|
+
},
|
|
2817
|
+
{
|
|
2818
|
+
"name": "WebPreview",
|
|
2819
|
+
"slug": "web-preview",
|
|
2820
|
+
"group": "elements",
|
|
2821
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2822
|
+
"summary": "Chrome around a preview: a URL bar, reload, and open-in-new.",
|
|
2823
|
+
"status": "todo-docs",
|
|
2824
|
+
"url": "/docs/components/web-preview",
|
|
2825
|
+
"mdUrl": "/docs/components/web-preview.md",
|
|
2826
|
+
"jsonUrl": "/r/components/web-preview.json",
|
|
2827
|
+
"path": "./components/web-preview.json",
|
|
2828
|
+
"sha256": "16e83c68f2ae6eb44bd2e43408eb3467fc2f25434d6cb0ecdb5a6fbf6ea235a1"
|
|
2829
|
+
},
|
|
2830
|
+
{
|
|
2831
|
+
"name": "WebSearch",
|
|
2832
|
+
"slug": "web-search",
|
|
2833
|
+
"group": "elements",
|
|
2834
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2835
|
+
"summary": "A search query and its results landing one by one as the agent reads.",
|
|
2836
|
+
"status": "todo-docs",
|
|
2837
|
+
"url": "/docs/components/web-search",
|
|
2838
|
+
"mdUrl": "/docs/components/web-search.md",
|
|
2839
|
+
"jsonUrl": "/r/components/web-search.json",
|
|
2840
|
+
"path": "./components/web-search.json",
|
|
2841
|
+
"sha256": "85d98e1fb7926db68e301637515af428d7cdeef8575ed2b324f55a224680d012"
|
|
2842
|
+
},
|
|
2843
|
+
{
|
|
2844
|
+
"name": "WorkCollapse",
|
|
2845
|
+
"slug": "work-collapse",
|
|
2846
|
+
"group": "elements",
|
|
2847
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
2848
|
+
"summary": "A finished run, folded into one row: `Worked for 4m 12s and made 14 tool calls`.",
|
|
2849
|
+
"status": "todo-docs",
|
|
2850
|
+
"url": "/docs/components/work-collapse",
|
|
2851
|
+
"mdUrl": "/docs/components/work-collapse.md",
|
|
2852
|
+
"jsonUrl": "/r/components/work-collapse.json",
|
|
2853
|
+
"path": "./components/work-collapse.json",
|
|
2854
|
+
"sha256": "7b55efb6b2473070b4d592dab015d0bfd1b4372f1950d69cda13dc4bf646fde2"
|
|
2855
|
+
},
|
|
854
2856
|
{
|
|
855
2857
|
"name": "FlowBackground",
|
|
856
2858
|
"slug": "flow-background",
|
|
@@ -888,7 +2890,7 @@
|
|
|
888
2890
|
"mdUrl": "/docs/components/node-card.md",
|
|
889
2891
|
"jsonUrl": "/r/components/node-card.json",
|
|
890
2892
|
"path": "./components/node-card.json",
|
|
891
|
-
"sha256": "
|
|
2893
|
+
"sha256": "c7edf342e25c52d0d49d2eda7aba282219e20d5cbdbb413f4a7427f26be5b80a"
|
|
892
2894
|
},
|
|
893
2895
|
{
|
|
894
2896
|
"name": "NodeHandle",
|
|
@@ -901,7 +2903,7 @@
|
|
|
901
2903
|
"mdUrl": "/docs/components/node-handle.md",
|
|
902
2904
|
"jsonUrl": "/r/components/node-handle.json",
|
|
903
2905
|
"path": "./components/node-handle.json",
|
|
904
|
-
"sha256": "
|
|
2906
|
+
"sha256": "edef11e543379e0e474dcda8204d10ef66e11233ca71998a6eb94e8da57a7714"
|
|
905
2907
|
},
|
|
906
2908
|
{
|
|
907
2909
|
"name": "SignalEdge",
|
|
@@ -927,7 +2929,7 @@
|
|
|
927
2929
|
"mdUrl": "/docs/components/autocomplete.md",
|
|
928
2930
|
"jsonUrl": "/r/components/autocomplete.json",
|
|
929
2931
|
"path": "./components/autocomplete.json",
|
|
930
|
-
"sha256": "
|
|
2932
|
+
"sha256": "ea4bae3ea2882d400feb446c1b3b5da9ef65746fdcf746e0c7151ab660587e2a"
|
|
931
2933
|
},
|
|
932
2934
|
{
|
|
933
2935
|
"name": "ButtonGroup",
|
|
@@ -979,7 +2981,7 @@
|
|
|
979
2981
|
"mdUrl": "/docs/components/combobox.md",
|
|
980
2982
|
"jsonUrl": "/r/components/combobox.json",
|
|
981
2983
|
"path": "./components/combobox.json",
|
|
982
|
-
"sha256": "
|
|
2984
|
+
"sha256": "f2a675181d222c35fbab5584629f1635863ec27ccd90930b23288250c03d6021"
|
|
983
2985
|
},
|
|
984
2986
|
{
|
|
985
2987
|
"name": "EnvVarInput",
|
|
@@ -992,7 +2994,7 @@
|
|
|
992
2994
|
"mdUrl": "/docs/components/env-var-input.md",
|
|
993
2995
|
"jsonUrl": "/r/components/env-var-input.json",
|
|
994
2996
|
"path": "./components/env-var-input.json",
|
|
995
|
-
"sha256": "
|
|
2997
|
+
"sha256": "92d5cc93d0ec6d36b485e3d4c118f0c805f620accb17f506d34c1a451e59bdd7"
|
|
996
2998
|
},
|
|
997
2999
|
{
|
|
998
3000
|
"name": "Field",
|
|
@@ -1070,7 +3072,7 @@
|
|
|
1070
3072
|
"mdUrl": "/docs/components/input.md",
|
|
1071
3073
|
"jsonUrl": "/r/components/input.json",
|
|
1072
3074
|
"path": "./components/input.json",
|
|
1073
|
-
"sha256": "
|
|
3075
|
+
"sha256": "7731053809b13c537a42bde4cbb356ed7cd839a1630262e8bfecf4be38b90d21"
|
|
1074
3076
|
},
|
|
1075
3077
|
{
|
|
1076
3078
|
"name": "InputGroup",
|
|
@@ -1083,7 +3085,7 @@
|
|
|
1083
3085
|
"mdUrl": "/docs/components/input-group.md",
|
|
1084
3086
|
"jsonUrl": "/r/components/input-group.json",
|
|
1085
3087
|
"path": "./components/input-group.json",
|
|
1086
|
-
"sha256": "
|
|
3088
|
+
"sha256": "e349576731ad72f2a60892eb37df2bc451e63be404e08656c4a61cd61ace3e8d"
|
|
1087
3089
|
},
|
|
1088
3090
|
{
|
|
1089
3091
|
"name": "MultiSelect",
|
|
@@ -1096,7 +3098,7 @@
|
|
|
1096
3098
|
"mdUrl": "/docs/components/multi-select.md",
|
|
1097
3099
|
"jsonUrl": "/r/components/multi-select.json",
|
|
1098
3100
|
"path": "./components/multi-select.json",
|
|
1099
|
-
"sha256": "
|
|
3101
|
+
"sha256": "272814fcd0984c97896635b34c47151a9bf189345de0c3b116768a025fb636b5"
|
|
1100
3102
|
},
|
|
1101
3103
|
{
|
|
1102
3104
|
"name": "NumberField",
|
|
@@ -1109,7 +3111,7 @@
|
|
|
1109
3111
|
"mdUrl": "/docs/components/number-field.md",
|
|
1110
3112
|
"jsonUrl": "/r/components/number-field.json",
|
|
1111
3113
|
"path": "./components/number-field.json",
|
|
1112
|
-
"sha256": "
|
|
3114
|
+
"sha256": "a475135cc03488bbe5b70188b0b992596b2eff69720245d9e8d679fd571c0196"
|
|
1113
3115
|
},
|
|
1114
3116
|
{
|
|
1115
3117
|
"name": "OTPField",
|
|
@@ -1122,7 +3124,7 @@
|
|
|
1122
3124
|
"mdUrl": "/docs/components/otp-field.md",
|
|
1123
3125
|
"jsonUrl": "/r/components/otp-field.json",
|
|
1124
3126
|
"path": "./components/otp-field.json",
|
|
1125
|
-
"sha256": "
|
|
3127
|
+
"sha256": "d8e1868d8ab9082abf894c1dfb1efb2c4c5826011949453ae77c7ca8985fcdd0"
|
|
1126
3128
|
},
|
|
1127
3129
|
{
|
|
1128
3130
|
"name": "PasswordInput",
|
|
@@ -1135,7 +3137,7 @@
|
|
|
1135
3137
|
"mdUrl": "/docs/components/password-input.md",
|
|
1136
3138
|
"jsonUrl": "/r/components/password-input.json",
|
|
1137
3139
|
"path": "./components/password-input.json",
|
|
1138
|
-
"sha256": "
|
|
3140
|
+
"sha256": "8d103f07b5b04db5c7b0c3eadedaba6b1fe4fd20ce19404906ed4161ba07ba9b"
|
|
1139
3141
|
},
|
|
1140
3142
|
{
|
|
1141
3143
|
"name": "Radio",
|
|
@@ -1187,7 +3189,7 @@
|
|
|
1187
3189
|
"mdUrl": "/docs/components/scrub-input.md",
|
|
1188
3190
|
"jsonUrl": "/r/components/scrub-input.json",
|
|
1189
3191
|
"path": "./components/scrub-input.json",
|
|
1190
|
-
"sha256": "
|
|
3192
|
+
"sha256": "9267ef1f1662b1b727f92b14d848b76eea83c5532396fada5636d510f0afc6b7"
|
|
1191
3193
|
},
|
|
1192
3194
|
{
|
|
1193
3195
|
"name": "SearchInput",
|
|
@@ -1200,7 +3202,7 @@
|
|
|
1200
3202
|
"mdUrl": "/docs/components/search-input.md",
|
|
1201
3203
|
"jsonUrl": "/r/components/search-input.json",
|
|
1202
3204
|
"path": "./components/search-input.json",
|
|
1203
|
-
"sha256": "
|
|
3205
|
+
"sha256": "f16f2996ee7aab2ea26cc18a51b1a557c691c71200485488b1eb4a0a3f66a9ec"
|
|
1204
3206
|
},
|
|
1205
3207
|
{
|
|
1206
3208
|
"name": "Select",
|
|
@@ -1213,7 +3215,7 @@
|
|
|
1213
3215
|
"mdUrl": "/docs/components/select.md",
|
|
1214
3216
|
"jsonUrl": "/r/components/select.json",
|
|
1215
3217
|
"path": "./components/select.json",
|
|
1216
|
-
"sha256": "
|
|
3218
|
+
"sha256": "0d8c07afb4a31810fc2ed2f71c54410d6ab71be1a6ede22ef89cbc585295280e"
|
|
1217
3219
|
},
|
|
1218
3220
|
{
|
|
1219
3221
|
"name": "Slider",
|
|
@@ -1252,7 +3254,7 @@
|
|
|
1252
3254
|
"mdUrl": "/docs/components/tags-input.md",
|
|
1253
3255
|
"jsonUrl": "/r/components/tags-input.json",
|
|
1254
3256
|
"path": "./components/tags-input.json",
|
|
1255
|
-
"sha256": "
|
|
3257
|
+
"sha256": "20601065198f7d1bca6ccd8c8b3755026d91813a221b80e7890474c4a25ffcf3"
|
|
1256
3258
|
},
|
|
1257
3259
|
{
|
|
1258
3260
|
"name": "Textarea",
|
|
@@ -1265,7 +3267,7 @@
|
|
|
1265
3267
|
"mdUrl": "/docs/components/textarea.md",
|
|
1266
3268
|
"jsonUrl": "/r/components/textarea.json",
|
|
1267
3269
|
"path": "./components/textarea.json",
|
|
1268
|
-
"sha256": "
|
|
3270
|
+
"sha256": "f4257e5c1373fbeee9f6318b8d876c667ddf4091ff8d30c4bcedf68ba1374d54"
|
|
1269
3271
|
},
|
|
1270
3272
|
{
|
|
1271
3273
|
"name": "Toggle",
|
|
@@ -1278,7 +3280,7 @@
|
|
|
1278
3280
|
"mdUrl": "/docs/components/toggle.md",
|
|
1279
3281
|
"jsonUrl": "/r/components/toggle.json",
|
|
1280
3282
|
"path": "./components/toggle.json",
|
|
1281
|
-
"sha256": "
|
|
3283
|
+
"sha256": "96cd056624eda0716275bb1f38d8ae9275b805df44232bd75e59a22b9167b538"
|
|
1282
3284
|
},
|
|
1283
3285
|
{
|
|
1284
3286
|
"name": "ToggleGroup",
|
|
@@ -1291,7 +3293,137 @@
|
|
|
1291
3293
|
"mdUrl": "/docs/components/toggle-group.md",
|
|
1292
3294
|
"jsonUrl": "/r/components/toggle-group.json",
|
|
1293
3295
|
"path": "./components/toggle-group.json",
|
|
1294
|
-
"sha256": "
|
|
3296
|
+
"sha256": "5d7b3e75bef4c67ced26f9442cd4ded01a1388536779f6de6a694a40324e958d"
|
|
3297
|
+
},
|
|
3298
|
+
{
|
|
3299
|
+
"name": "AudienceIcon",
|
|
3300
|
+
"slug": "audience-icon",
|
|
3301
|
+
"group": "icons",
|
|
3302
|
+
"importPath": "@cueplusplus/ui",
|
|
3303
|
+
"summary": "An audience: a named group of people something is published to.",
|
|
3304
|
+
"status": "todo-docs",
|
|
3305
|
+
"url": "/docs/components/audience-icon",
|
|
3306
|
+
"mdUrl": "/docs/components/audience-icon.md",
|
|
3307
|
+
"jsonUrl": "/r/components/audience-icon.json",
|
|
3308
|
+
"path": "./components/audience-icon.json",
|
|
3309
|
+
"sha256": "fee1cb028e86de44ce3e559b8934dce801cbc5a143f92a79ef0cabc7d7cb5f67"
|
|
3310
|
+
},
|
|
3311
|
+
{
|
|
3312
|
+
"name": "CatalogueIcon",
|
|
3313
|
+
"slug": "catalogue-icon",
|
|
3314
|
+
"group": "icons",
|
|
3315
|
+
"importPath": "@cueplusplus/ui",
|
|
3316
|
+
"summary": "The catalogue itself: everything there is, before anything has been narrowed.",
|
|
3317
|
+
"status": "todo-docs",
|
|
3318
|
+
"url": "/docs/components/catalogue-icon",
|
|
3319
|
+
"mdUrl": "/docs/components/catalogue-icon.md",
|
|
3320
|
+
"jsonUrl": "/r/components/catalogue-icon.json",
|
|
3321
|
+
"path": "./components/catalogue-icon.json",
|
|
3322
|
+
"sha256": "5d6d7427327a438e2dd24c32773901fd1f7ba4cbc1242275ace3e44243b882d4"
|
|
3323
|
+
},
|
|
3324
|
+
{
|
|
3325
|
+
"name": "ChannelBetaIcon",
|
|
3326
|
+
"slug": "channel-beta-icon",
|
|
3327
|
+
"group": "icons",
|
|
3328
|
+
"importPath": "@cueplusplus/ui",
|
|
3329
|
+
"summary": "The beta channel: the same things, one merge earlier.",
|
|
3330
|
+
"status": "todo-docs",
|
|
3331
|
+
"url": "/docs/components/channel-beta-icon",
|
|
3332
|
+
"mdUrl": "/docs/components/channel-beta-icon.md",
|
|
3333
|
+
"jsonUrl": "/r/components/channel-beta-icon.json",
|
|
3334
|
+
"path": "./components/channel-beta-icon.json",
|
|
3335
|
+
"sha256": "0013e7d09ac6198b0871a3e8bdafb6e9a72c927273f7c84f1495e44fd22c8306"
|
|
3336
|
+
},
|
|
3337
|
+
{
|
|
3338
|
+
"name": "ChannelReleasedIcon",
|
|
3339
|
+
"slug": "channel-released-icon",
|
|
3340
|
+
"group": "icons",
|
|
3341
|
+
"importPath": "@cueplusplus/ui",
|
|
3342
|
+
"summary": "The released channel: what a colleague gets when they install without asking for anything in particular.",
|
|
3343
|
+
"status": "todo-docs",
|
|
3344
|
+
"url": "/docs/components/channel-released-icon",
|
|
3345
|
+
"mdUrl": "/docs/components/channel-released-icon.md",
|
|
3346
|
+
"jsonUrl": "/r/components/channel-released-icon.json",
|
|
3347
|
+
"path": "./components/channel-released-icon.json",
|
|
3348
|
+
"sha256": "0c372f5771f96d806e61a5223ea4a3145d553b2e36cbebae0e077536360f14cf"
|
|
3349
|
+
},
|
|
3350
|
+
{
|
|
3351
|
+
"name": "CliToolIcon",
|
|
3352
|
+
"slug": "cli-tool-icon",
|
|
3353
|
+
"group": "icons",
|
|
3354
|
+
"importPath": "@cueplusplus/ui",
|
|
3355
|
+
"summary": "A CLI tool in the registry: a thing that runs in a terminal.",
|
|
3356
|
+
"status": "todo-docs",
|
|
3357
|
+
"url": "/docs/components/cli-tool-icon",
|
|
3358
|
+
"mdUrl": "/docs/components/cli-tool-icon.md",
|
|
3359
|
+
"jsonUrl": "/r/components/cli-tool-icon.json",
|
|
3360
|
+
"path": "./components/cli-tool-icon.json",
|
|
3361
|
+
"sha256": "fb1b15bbd291522c5c00291afb5d6e71bc1c39e5a2dd7d109e929c0d0ba2608f"
|
|
3362
|
+
},
|
|
3363
|
+
{
|
|
3364
|
+
"name": "FolderIcon",
|
|
3365
|
+
"slug": "folder-icon",
|
|
3366
|
+
"group": "icons",
|
|
3367
|
+
"importPath": "@cueplusplus/ui",
|
|
3368
|
+
"summary": "A folder somebody made: a shelf of bookmarks, filed by hand.",
|
|
3369
|
+
"status": "todo-docs",
|
|
3370
|
+
"url": "/docs/components/folder-icon",
|
|
3371
|
+
"mdUrl": "/docs/components/folder-icon.md",
|
|
3372
|
+
"jsonUrl": "/r/components/folder-icon.json",
|
|
3373
|
+
"path": "./components/folder-icon.json",
|
|
3374
|
+
"sha256": "7221db682d4e15d617bc8e13f2751aa479c08f2960cbe4ccc0779492733b7b6c"
|
|
3375
|
+
},
|
|
3376
|
+
{
|
|
3377
|
+
"name": "McpServerIcon",
|
|
3378
|
+
"slug": "mcp-server-icon",
|
|
3379
|
+
"group": "icons",
|
|
3380
|
+
"importPath": "@cueplusplus/ui",
|
|
3381
|
+
"summary": "An MCP server in the registry: a thing an agent connects *to*.",
|
|
3382
|
+
"status": "todo-docs",
|
|
3383
|
+
"url": "/docs/components/mcp-server-icon",
|
|
3384
|
+
"mdUrl": "/docs/components/mcp-server-icon.md",
|
|
3385
|
+
"jsonUrl": "/r/components/mcp-server-icon.json",
|
|
3386
|
+
"path": "./components/mcp-server-icon.json",
|
|
3387
|
+
"sha256": "b15087327ebe3152bb0844dd9b9deb1ee06b73271e90c06bbd518bbf81b6b844"
|
|
3388
|
+
},
|
|
3389
|
+
{
|
|
3390
|
+
"name": "SkillIcon",
|
|
3391
|
+
"slug": "skill-icon",
|
|
3392
|
+
"group": "icons",
|
|
3393
|
+
"importPath": "@cueplusplus/ui",
|
|
3394
|
+
"summary": "A skill: the thing every other container in this set holds.",
|
|
3395
|
+
"status": "todo-docs",
|
|
3396
|
+
"url": "/docs/components/skill-icon",
|
|
3397
|
+
"mdUrl": "/docs/components/skill-icon.md",
|
|
3398
|
+
"jsonUrl": "/r/components/skill-icon.json",
|
|
3399
|
+
"path": "./components/skill-icon.json",
|
|
3400
|
+
"sha256": "543067ce32eaea0dcde12bf29a052987fca0eaee63dbc8fd6f6fd1f339742699"
|
|
3401
|
+
},
|
|
3402
|
+
{
|
|
3403
|
+
"name": "StackIcon",
|
|
3404
|
+
"slug": "stack-icon",
|
|
3405
|
+
"group": "icons",
|
|
3406
|
+
"importPath": "@cueplusplus/ui",
|
|
3407
|
+
"summary": "One person's stack: the set of things they have actually installed.",
|
|
3408
|
+
"status": "todo-docs",
|
|
3409
|
+
"url": "/docs/components/stack-icon",
|
|
3410
|
+
"mdUrl": "/docs/components/stack-icon.md",
|
|
3411
|
+
"jsonUrl": "/r/components/stack-icon.json",
|
|
3412
|
+
"path": "./components/stack-icon.json",
|
|
3413
|
+
"sha256": "e7bc8f595968a5f4fc55a8ecfd916eadcfb398be5541e38c27f4ae38aa3f0f02"
|
|
3414
|
+
},
|
|
3415
|
+
{
|
|
3416
|
+
"name": "StacksMatrixIcon",
|
|
3417
|
+
"slug": "stacks-matrix-icon",
|
|
3418
|
+
"group": "icons",
|
|
3419
|
+
"importPath": "@cueplusplus/ui",
|
|
3420
|
+
"summary": "Every stack at once, one column each: who has what, read across.",
|
|
3421
|
+
"status": "todo-docs",
|
|
3422
|
+
"url": "/docs/components/stacks-matrix-icon",
|
|
3423
|
+
"mdUrl": "/docs/components/stacks-matrix-icon.md",
|
|
3424
|
+
"jsonUrl": "/r/components/stacks-matrix-icon.json",
|
|
3425
|
+
"path": "./components/stacks-matrix-icon.json",
|
|
3426
|
+
"sha256": "94706d78d8d95cac43555fb3046f66f37c16392435d2bc4c39b2e719635eacdf"
|
|
1295
3427
|
},
|
|
1296
3428
|
{
|
|
1297
3429
|
"name": "AppWindowFrame",
|
|
@@ -1319,6 +3451,19 @@
|
|
|
1319
3451
|
"path": "./components/copy-button.json",
|
|
1320
3452
|
"sha256": "6221a1a4515991c7b83a87e16d26ec0b71698889129d5324b66f2f34c743c79c"
|
|
1321
3453
|
},
|
|
3454
|
+
{
|
|
3455
|
+
"name": "DataRow",
|
|
3456
|
+
"slug": "data-row",
|
|
3457
|
+
"group": "instruments",
|
|
3458
|
+
"importPath": "@cueplusplus/ui",
|
|
3459
|
+
"summary": "The dense list row: six slots, a hover-revealed action track, and columns the caller declares.",
|
|
3460
|
+
"status": "stable",
|
|
3461
|
+
"url": "/docs/components/data-row",
|
|
3462
|
+
"mdUrl": "/docs/components/data-row.md",
|
|
3463
|
+
"jsonUrl": "/r/components/data-row.json",
|
|
3464
|
+
"path": "./components/data-row.json",
|
|
3465
|
+
"sha256": "9e2e483bafb74e65051e5f8c00b108da5245499e870427258d386df72ce73502"
|
|
3466
|
+
},
|
|
1322
3467
|
{
|
|
1323
3468
|
"name": "DataTablePagination",
|
|
1324
3469
|
"slug": "data-table-pagination",
|
|
@@ -1345,6 +3490,19 @@
|
|
|
1345
3490
|
"path": "./components/data-table-toolbar.json",
|
|
1346
3491
|
"sha256": "9b463d77c030e3aab10758f97d0aac791f989666eb4f66f12e30effc420a776d"
|
|
1347
3492
|
},
|
|
3493
|
+
{
|
|
3494
|
+
"name": "DataTree",
|
|
3495
|
+
"slug": "data-tree",
|
|
3496
|
+
"group": "instruments",
|
|
3497
|
+
"importPath": "@cueplusplus/ui",
|
|
3498
|
+
"summary": "A hierarchy of multi-column rows under real `role=\"tree\"` semantics, with CSS depth guides.",
|
|
3499
|
+
"status": "stable",
|
|
3500
|
+
"url": "/docs/components/data-tree",
|
|
3501
|
+
"mdUrl": "/docs/components/data-tree.md",
|
|
3502
|
+
"jsonUrl": "/r/components/data-tree.json",
|
|
3503
|
+
"path": "./components/data-tree.json",
|
|
3504
|
+
"sha256": "33244c5faf277716152a605c28726b0be0fb110f1bafa8b0b84f8a00a9315b55"
|
|
3505
|
+
},
|
|
1348
3506
|
{
|
|
1349
3507
|
"name": "GroupBar",
|
|
1350
3508
|
"slug": "group-bar",
|
|
@@ -1358,6 +3516,19 @@
|
|
|
1358
3516
|
"path": "./components/group-bar.json",
|
|
1359
3517
|
"sha256": "2b8155fc7b46836f3f0a25cb8a023da7228c124d5f5b209ae8136fd575aeb3f6"
|
|
1360
3518
|
},
|
|
3519
|
+
{
|
|
3520
|
+
"name": "Ledger",
|
|
3521
|
+
"slug": "ledger",
|
|
3522
|
+
"group": "instruments",
|
|
3523
|
+
"importPath": "@cueplusplus/ui",
|
|
3524
|
+
"summary": "Grouped dense rows under sticky tier headings and gutter slugs, with no disclosure anywhere.",
|
|
3525
|
+
"status": "stable",
|
|
3526
|
+
"url": "/docs/components/ledger",
|
|
3527
|
+
"mdUrl": "/docs/components/ledger.md",
|
|
3528
|
+
"jsonUrl": "/r/components/ledger.json",
|
|
3529
|
+
"path": "./components/ledger.json",
|
|
3530
|
+
"sha256": "129b47da8898b856d150ae7c6901e1e5340cabacd15457b860aa03e80139c388"
|
|
3531
|
+
},
|
|
1361
3532
|
{
|
|
1362
3533
|
"name": "LogViewer",
|
|
1363
3534
|
"slug": "log-viewer",
|
|
@@ -1447,7 +3618,7 @@
|
|
|
1447
3618
|
"mdUrl": "/docs/components/stat.md",
|
|
1448
3619
|
"jsonUrl": "/r/components/stat.json",
|
|
1449
3620
|
"path": "./components/stat.json",
|
|
1450
|
-
"sha256": "
|
|
3621
|
+
"sha256": "e5456ce585e488035a4421eee4a02eaf1af7a13624d8893763cdfa3a3ee36204"
|
|
1451
3622
|
},
|
|
1452
3623
|
{
|
|
1453
3624
|
"name": "Table",
|
|
@@ -1460,7 +3631,7 @@
|
|
|
1460
3631
|
"mdUrl": "/docs/components/table.md",
|
|
1461
3632
|
"jsonUrl": "/r/components/table.json",
|
|
1462
3633
|
"path": "./components/table.json",
|
|
1463
|
-
"sha256": "
|
|
3634
|
+
"sha256": "56a6df96c2b040570356c0b1fc0049e754139dccf2faf0ccc20a8d4afab7297d"
|
|
1464
3635
|
},
|
|
1465
3636
|
{
|
|
1466
3637
|
"name": "TableScrollRegion",
|
|
@@ -1473,7 +3644,7 @@
|
|
|
1473
3644
|
"mdUrl": "/docs/components/table-scroll-region.md",
|
|
1474
3645
|
"jsonUrl": "/r/components/table-scroll-region.json",
|
|
1475
3646
|
"path": "./components/table-scroll-region.json",
|
|
1476
|
-
"sha256": "
|
|
3647
|
+
"sha256": "fd8777365fd35362ea273a1bf17ccd028f56c9f9d7c18d211f0587514c9a9f8c"
|
|
1477
3648
|
},
|
|
1478
3649
|
{
|
|
1479
3650
|
"name": "TerminalFrame",
|
|
@@ -1512,7 +3683,7 @@
|
|
|
1512
3683
|
"mdUrl": "/docs/components/usage-chart.md",
|
|
1513
3684
|
"jsonUrl": "/r/components/usage-chart.json",
|
|
1514
3685
|
"path": "./components/usage-chart.json",
|
|
1515
|
-
"sha256": "
|
|
3686
|
+
"sha256": "ea4b0febbe435e70ff9f6e387da1f09f42b4c538716630ffff2cf17676e20736"
|
|
1516
3687
|
},
|
|
1517
3688
|
{
|
|
1518
3689
|
"name": "Accordion",
|
|
@@ -1733,7 +3904,7 @@
|
|
|
1733
3904
|
"mdUrl": "/docs/components/timeline.md",
|
|
1734
3905
|
"jsonUrl": "/r/components/timeline.json",
|
|
1735
3906
|
"path": "./components/timeline.json",
|
|
1736
|
-
"sha256": "
|
|
3907
|
+
"sha256": "e56937cf78d768e69ff32467dc3157f49793a64ac569455f2f1bd8d7652ac39b"
|
|
1737
3908
|
},
|
|
1738
3909
|
{
|
|
1739
3910
|
"name": "MusicalTimeInput",
|
|
@@ -1746,7 +3917,7 @@
|
|
|
1746
3917
|
"mdUrl": "/docs/components/musical-time-input.md",
|
|
1747
3918
|
"jsonUrl": "/r/components/musical-time-input.json",
|
|
1748
3919
|
"path": "./components/musical-time-input.json",
|
|
1749
|
-
"sha256": "
|
|
3920
|
+
"sha256": "3a7282c75cb40530a1ff7d5742b24b810cd833810b9f2032c9c3a4d65538f077"
|
|
1750
3921
|
},
|
|
1751
3922
|
{
|
|
1752
3923
|
"name": "PianoKeyboard",
|
|
@@ -1785,7 +3956,7 @@
|
|
|
1785
3956
|
"mdUrl": "/docs/components/threshold-rail.md",
|
|
1786
3957
|
"jsonUrl": "/r/components/threshold-rail.json",
|
|
1787
3958
|
"path": "./components/threshold-rail.json",
|
|
1788
|
-
"sha256": "
|
|
3959
|
+
"sha256": "1e4d880e2ab574d7315ada65a4375a2758da79cf595efbbad05bf3916e0e078a"
|
|
1789
3960
|
},
|
|
1790
3961
|
{
|
|
1791
3962
|
"name": "TimelineRuler",
|
|
@@ -1811,7 +3982,7 @@
|
|
|
1811
3982
|
"mdUrl": "/docs/components/alert-dialog.md",
|
|
1812
3983
|
"jsonUrl": "/r/components/alert-dialog.json",
|
|
1813
3984
|
"path": "./components/alert-dialog.json",
|
|
1814
|
-
"sha256": "
|
|
3985
|
+
"sha256": "75c2d4ba54958ba1f03b9031d473c2d3b9b4a4ea7e82c6d657ddc86c6cf0eb68"
|
|
1815
3986
|
},
|
|
1816
3987
|
{
|
|
1817
3988
|
"name": "CommandPalette",
|
|
@@ -1863,7 +4034,7 @@
|
|
|
1863
4034
|
"mdUrl": "/docs/components/drawer.md",
|
|
1864
4035
|
"jsonUrl": "/r/components/drawer.json",
|
|
1865
4036
|
"path": "./components/drawer.json",
|
|
1866
|
-
"sha256": "
|
|
4037
|
+
"sha256": "c900c84c88912b655b6a470afd6d3bcedc3d9024aa7b5794c2e0bcb45259a3ec"
|
|
1867
4038
|
},
|
|
1868
4039
|
{
|
|
1869
4040
|
"name": "DropdownMenu",
|
|
@@ -1876,7 +4047,7 @@
|
|
|
1876
4047
|
"mdUrl": "/docs/components/dropdown-menu.md",
|
|
1877
4048
|
"jsonUrl": "/r/components/dropdown-menu.json",
|
|
1878
4049
|
"path": "./components/dropdown-menu.json",
|
|
1879
|
-
"sha256": "
|
|
4050
|
+
"sha256": "eac29ec0286f6e5f501c202ce4bbdc952003a972ba86a2c66527332c1bafa33a"
|
|
1880
4051
|
},
|
|
1881
4052
|
{
|
|
1882
4053
|
"name": "HoverCard",
|
|
@@ -1889,7 +4060,7 @@
|
|
|
1889
4060
|
"mdUrl": "/docs/components/hover-card.md",
|
|
1890
4061
|
"jsonUrl": "/r/components/hover-card.json",
|
|
1891
4062
|
"path": "./components/hover-card.json",
|
|
1892
|
-
"sha256": "
|
|
4063
|
+
"sha256": "65fbb9c0d5e789d3e7ee03fe6e5d8d4eb8116d45ec8556e5efaa4e1ef9261643"
|
|
1893
4064
|
},
|
|
1894
4065
|
{
|
|
1895
4066
|
"name": "InfoTip",
|
|
@@ -1902,7 +4073,7 @@
|
|
|
1902
4073
|
"mdUrl": "/docs/components/info-tip.md",
|
|
1903
4074
|
"jsonUrl": "/r/components/info-tip.json",
|
|
1904
4075
|
"path": "./components/info-tip.json",
|
|
1905
|
-
"sha256": "
|
|
4076
|
+
"sha256": "4fcfa414bf4b438d7a8d43fd710100bbff751b29d1e6d8d361f904bcb5c93d14"
|
|
1906
4077
|
},
|
|
1907
4078
|
{
|
|
1908
4079
|
"name": "Menubar",
|
|
@@ -1928,7 +4099,7 @@
|
|
|
1928
4099
|
"mdUrl": "/docs/components/popover.md",
|
|
1929
4100
|
"jsonUrl": "/r/components/popover.json",
|
|
1930
4101
|
"path": "./components/popover.json",
|
|
1931
|
-
"sha256": "
|
|
4102
|
+
"sha256": "29a6798a745fe127873ac231b32719d8d06397bb9b4defcf25a1cb6fe698321c"
|
|
1932
4103
|
},
|
|
1933
4104
|
{
|
|
1934
4105
|
"name": "Sheet",
|
|
@@ -1967,7 +4138,7 @@
|
|
|
1967
4138
|
"mdUrl": "/docs/components/tooltip.md",
|
|
1968
4139
|
"jsonUrl": "/r/components/tooltip.json",
|
|
1969
4140
|
"path": "./components/tooltip.json",
|
|
1970
|
-
"sha256": "
|
|
4141
|
+
"sha256": "4396b23dcf8a99ef78f9e17fdc1162c090f6326e6f152c765601ad2c5a095fa4"
|
|
1971
4142
|
},
|
|
1972
4143
|
{
|
|
1973
4144
|
"name": "Avatar",
|
|
@@ -2006,20 +4177,20 @@
|
|
|
2006
4177
|
"mdUrl": "/docs/components/button.md",
|
|
2007
4178
|
"jsonUrl": "/r/components/button.json",
|
|
2008
4179
|
"path": "./components/button.json",
|
|
2009
|
-
"sha256": "
|
|
4180
|
+
"sha256": "fad34165e8add1b0cbe02c8c08c088e8d95bf825be144a3717a38d84feab47f0"
|
|
2010
4181
|
},
|
|
2011
4182
|
{
|
|
2012
4183
|
"name": "Chip",
|
|
2013
4184
|
"slug": "chip",
|
|
2014
4185
|
"group": "primitives",
|
|
2015
4186
|
"importPath": "@cueplusplus/ui",
|
|
2016
|
-
"summary": "The status pill: tinted fill,
|
|
4187
|
+
"summary": "The status pill, at three volumes: tinted fill, bare outline, or a hairline tag.",
|
|
2017
4188
|
"status": "stable",
|
|
2018
4189
|
"url": "/docs/components/chip",
|
|
2019
4190
|
"mdUrl": "/docs/components/chip.md",
|
|
2020
4191
|
"jsonUrl": "/r/components/chip.json",
|
|
2021
4192
|
"path": "./components/chip.json",
|
|
2022
|
-
"sha256": "
|
|
4193
|
+
"sha256": "e5c43aff528aac28770c53053801902e2f4a0169ea91c25f600759d6b7687698"
|
|
2023
4194
|
},
|
|
2024
4195
|
{
|
|
2025
4196
|
"name": "IconButton",
|
|
@@ -2097,7 +4268,7 @@
|
|
|
2097
4268
|
"mdUrl": "/docs/components/status-dot.md",
|
|
2098
4269
|
"jsonUrl": "/r/components/status-dot.json",
|
|
2099
4270
|
"path": "./components/status-dot.json",
|
|
2100
|
-
"sha256": "
|
|
4271
|
+
"sha256": "1d93036514ef55b09de72ec8bf90d115fa1080fe4b548192ebe0cd50921c3a52"
|
|
2101
4272
|
},
|
|
2102
4273
|
{
|
|
2103
4274
|
"name": "CuePortalFrame",
|
|
@@ -2110,7 +4281,7 @@
|
|
|
2110
4281
|
"mdUrl": "/docs/components/cue-portal-frame.md",
|
|
2111
4282
|
"jsonUrl": "/r/components/cue-portal-frame.json",
|
|
2112
4283
|
"path": "./components/cue-portal-frame.json",
|
|
2113
|
-
"sha256": "
|
|
4284
|
+
"sha256": "1e5231671c99fcc24bb66a4bfe666c9008b5772c6695d730b68235444f243599"
|
|
2114
4285
|
},
|
|
2115
4286
|
{
|
|
2116
4287
|
"name": "Density",
|
|
@@ -2123,7 +4294,7 @@
|
|
|
2123
4294
|
"mdUrl": "/docs/components/density.md",
|
|
2124
4295
|
"jsonUrl": "/r/components/density.json",
|
|
2125
4296
|
"path": "./components/density.json",
|
|
2126
|
-
"sha256": "
|
|
4297
|
+
"sha256": "d8a5c81fac037dd6bd9a86b114efaa39bba4b47b78e650a65f9b34da88e7244d"
|
|
2127
4298
|
},
|
|
2128
4299
|
{
|
|
2129
4300
|
"name": "ThemeProvider",
|
|
@@ -2136,7 +4307,512 @@
|
|
|
2136
4307
|
"mdUrl": "/docs/components/theme-provider.md",
|
|
2137
4308
|
"jsonUrl": "/r/components/theme-provider.json",
|
|
2138
4309
|
"path": "./components/theme-provider.json",
|
|
2139
|
-
"sha256": "
|
|
4310
|
+
"sha256": "f6888f7b4139aaccf18f30858826b203a2832d3bf48dc142c1d1ca41a9666dea"
|
|
4311
|
+
}
|
|
4312
|
+
],
|
|
4313
|
+
"hooks": [
|
|
4314
|
+
{
|
|
4315
|
+
"name": "useAgentThread",
|
|
4316
|
+
"slug": "use-agent-thread",
|
|
4317
|
+
"group": "agent-runtime",
|
|
4318
|
+
"importPath": "@cueplusplus/ui/agent-runtime",
|
|
4319
|
+
"peerDependencies": [
|
|
4320
|
+
"@assistant-ui/react"
|
|
4321
|
+
],
|
|
4322
|
+
"clientOnly": true,
|
|
4323
|
+
"description": "An assistant-ui runtime, read as the props the Chat group already takes.\n\n`Message`, `MessageList` and `Composer` render turns that have finished\narriving. The hard part of a turn that is *still* arriving — assembling\ntokens, tracking a run, cancelling one, keeping a regenerated answer beside\nits sibling — is a solved problem, so this library does not re-derive it. You\nbuild a runtime with one line of assistant-ui, typically\n`useExternalStoreRuntime(adapter)`, and hand the object over; every field\nthat comes back is named for the prop it feeds.\n\nIt is provider-free by construction: a `useSyncExternalStore` over the\nruntime's thread, and nothing else. No `AssistantRuntimeProvider`, no\nprimitive, no context and no borrowed DOM — this library renders 100% of what\nthe reader sees, and the peer is only a type in the shipped modules.\n\n`MessageList` follows a turn that is still growing on its own: the items\ncontainer is watched for growth, so a streaming bubble keeps the bottom in\nview without the host adding anything, while a tool-call card the reader\nfolds away leaves the view where it was.\n\nFour things are worth knowing before wiring an `ExternalStoreAdapter` to it:\n\n- **Pass `convertMessage`, and keep its identity.** Without it your messages\n must already be complete runtime messages, and a missing `metadata`\n throws; `convertMessage: (m) => m` lets the runtime fill the defaults in.\n Declare it outside the component (or memoise it): the runtime caches the\n conversion against that function, so a fresh arrow every render re-converts\n the whole thread, which re-renders, which converts it again — an inline\n arrow turns the next message change into \"Maximum update depth exceeded\".\n- **`onReload` takes two arguments** — `(parentId, config)`. Regenerating a\n turn re-runs its *parent*, which is what puts the new answer beside the old\n one rather than after it.\n- **A branch switch is host-owned.** Under an ExternalStore runtime\n `switchBranch` does not move the thread: it arrives at the adapter's\n `setMessages` with the newly visible list, and the host writes it back. A\n host that ignores `setMessages` gets a picker that does nothing.\n- **`onStop`, `regenerate` and `switchBranch` are `undefined`** until the\n matching callback exists on the adapter (`onCancel`, `onReload`,\n `setMessages`). That is deliberate: `Composer` keeps drawing Send while\n `onStop` is missing, so a control that cannot work is never drawn.",
|
|
4324
|
+
"signature": "(runtime: AssistantRuntime, options?: UseAgentThreadOptions): AgentThread",
|
|
4325
|
+
"params": [],
|
|
4326
|
+
"returns": "",
|
|
4327
|
+
"throws": "",
|
|
4328
|
+
"summary": "An assistant-ui runtime, read as the props the Chat group already takes.",
|
|
4329
|
+
"examples": [
|
|
4330
|
+
{
|
|
4331
|
+
"title": "Usage",
|
|
4332
|
+
"code": "// Outside the component: the runtime caches the conversion against this\n// function, and a new one every render is an update loop.\nconst convertMessage = (m: ThreadMessageLike) => m;\n\nconst runtime = useExternalStoreRuntime({\n messages,\n isRunning,\n convertMessage,\n onNew,\n onCancel,\n onReload,\n setMessages,\n});\nconst thread = useAgentThread(runtime, { agent: \"planner\" });\n\n<MessageList aria-label=\"Thread\">\n {thread.turns.map((t) => (\n <Message\n key={t.id}\n role={t.role}\n agent={t.agent}\n pending={t.pending}\n footer={\n t.branch.count > 1 && thread.switchBranch ? (\n <BranchPicker\n index={t.branch.index}\n count={t.branch.count}\n onNavigate={(d) => thread.switchBranch?.(t.id, d)}\n disabled={thread.busy}\n />\n ) : undefined\n }\n >\n {t.text}\n {t.toolCalls.map((c) => (\n <ToolCallCard key={c.id} tool={c.tool} args={c.args} result={c.result} status={c.status} />\n ))}\n </Message>\n ))}\n</MessageList>\n<Composer\n onSend={thread.onSend}\n busy={thread.busy}\n disabled={thread.disabled || thread.busy}\n onStop={thread.onStop}\n/>",
|
|
4333
|
+
"language": "tsx"
|
|
4334
|
+
}
|
|
4335
|
+
],
|
|
4336
|
+
"whenToUse": [],
|
|
4337
|
+
"whenNotToUse": [],
|
|
4338
|
+
"commonMistakes": [],
|
|
4339
|
+
"status": "stable",
|
|
4340
|
+
"url": "/docs/components/use-agent-thread",
|
|
4341
|
+
"mdUrl": "/docs/components/use-agent-thread.md",
|
|
4342
|
+
"specimens": [
|
|
4343
|
+
{
|
|
4344
|
+
"title": "useAgentThread / ToolCallCard / BranchPicker",
|
|
4345
|
+
"group": "agent-runtime",
|
|
4346
|
+
"components": [
|
|
4347
|
+
"useAgentThread",
|
|
4348
|
+
"ToolCallCard",
|
|
4349
|
+
"BranchPicker"
|
|
4350
|
+
],
|
|
4351
|
+
"code": "<ScriptedThread />",
|
|
4352
|
+
"note": "The hook reads an assistant-ui runtime and hands back the props the Chat group already takes: `busy`, `disabled`, `onSend` and `onStop` for the composer, `role`, `agent` and `pending` for each turn, `toolCalls` for the cards, `branch` and `switchBranch` for the stepper. No provider is mounted and no borrowed DOM is rendered, so every pixel here is this library's. The thread below plays a fixed script, because a docs page has no model behind it.",
|
|
4353
|
+
"interaction": "the script streams once and stops on its own; Stop cancels it mid-sentence, Regenerate answers again under the same question, and the stepper that then appears walks the two answers."
|
|
4354
|
+
}
|
|
4355
|
+
]
|
|
4356
|
+
},
|
|
4357
|
+
{
|
|
4358
|
+
"name": "useZoom",
|
|
4359
|
+
"slug": "use-zoom",
|
|
4360
|
+
"group": "configurator",
|
|
4361
|
+
"importPath": "@cueplusplus/ui/configurator",
|
|
4362
|
+
"peerDependencies": [],
|
|
4363
|
+
"clientOnly": true,
|
|
4364
|
+
"description": "A bounded, stepped root-zoom valve with the usual keyboard shortcuts.\n\nControlled or uncontrolled, the same way every other control in this system\nis: pass `zoom` to own the value, `defaultZoom` to let the hook own it.\n\nThe declaration belongs to the hook while it is mounted — unmounting takes it\nback off, so a configurator that is closed does not leave the page at 1.4.",
|
|
4365
|
+
"signature": "(options?: UseZoomOptions): ZoomValve",
|
|
4366
|
+
"params": [
|
|
4367
|
+
{
|
|
4368
|
+
"name": "options",
|
|
4369
|
+
"description": "Range, target, controlled value, shortcut opt-out."
|
|
4370
|
+
}
|
|
4371
|
+
],
|
|
4372
|
+
"returns": "The valve: the value and the four ways to move it.",
|
|
4373
|
+
"throws": "",
|
|
4374
|
+
"summary": "A bounded, stepped root-zoom valve with the usual keyboard shortcuts.",
|
|
4375
|
+
"examples": [
|
|
4376
|
+
{
|
|
4377
|
+
"title": "Usage",
|
|
4378
|
+
"code": "const { zoom, zoomIn, zoomOut, reset } = useZoom({ shortcuts: false });",
|
|
4379
|
+
"language": "tsx"
|
|
4380
|
+
}
|
|
4381
|
+
],
|
|
4382
|
+
"whenToUse": [],
|
|
4383
|
+
"whenNotToUse": [],
|
|
4384
|
+
"commonMistakes": [],
|
|
4385
|
+
"status": "stable",
|
|
4386
|
+
"url": "/docs/components/use-zoom",
|
|
4387
|
+
"mdUrl": "/docs/components/use-zoom.md"
|
|
4388
|
+
},
|
|
4389
|
+
{
|
|
4390
|
+
"name": "useAnnouncerPresent",
|
|
4391
|
+
"slug": "use-announcer-present",
|
|
4392
|
+
"group": "elements",
|
|
4393
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
4394
|
+
"peerDependencies": [],
|
|
4395
|
+
"clientOnly": true,
|
|
4396
|
+
"description": "Whether a {@link LiveRegionAnnouncer} is mounted and will do the speaking.\n\nThe hook behind this family's one-speaker rule: an announcer and a\n`TailStatus` in the same console would otherwise narrate the same run twice,\nso the row asks this and goes quiet. Exported because a console with a status\nrow of its own owes a reader the same courtesy — ask before becoming a second\nlive region.",
|
|
4397
|
+
"signature": "(): boolean",
|
|
4398
|
+
"params": [],
|
|
4399
|
+
"returns": "`true` while at least one announcer is mounted anywhere in the page.",
|
|
4400
|
+
"throws": "",
|
|
4401
|
+
"summary": "Whether a {@link LiveRegionAnnouncer} is mounted and will do the speaking.",
|
|
4402
|
+
"examples": [
|
|
4403
|
+
{
|
|
4404
|
+
"title": "Usage",
|
|
4405
|
+
"code": "const spokenFor = useAnnouncerPresent();\n<div role={spokenFor ? undefined : \"status\"}>{action}</div>",
|
|
4406
|
+
"language": "tsx"
|
|
4407
|
+
}
|
|
4408
|
+
],
|
|
4409
|
+
"whenToUse": [],
|
|
4410
|
+
"whenNotToUse": [],
|
|
4411
|
+
"commonMistakes": [],
|
|
4412
|
+
"status": "stable",
|
|
4413
|
+
"url": "/docs/components/use-announcer-present",
|
|
4414
|
+
"mdUrl": "/docs/components/use-announcer-present.md"
|
|
4415
|
+
},
|
|
4416
|
+
{
|
|
4417
|
+
"name": "useMentionMatches",
|
|
4418
|
+
"slug": "use-mention-matches",
|
|
4419
|
+
"group": "elements",
|
|
4420
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
4421
|
+
"peerDependencies": [
|
|
4422
|
+
"lucide-react"
|
|
4423
|
+
],
|
|
4424
|
+
"clientOnly": true,
|
|
4425
|
+
"description": "People matching a trailing",
|
|
4426
|
+
"signature": "(value: string, people: readonly ComposerPerson[] | undefined): ComposerPerson[]",
|
|
4427
|
+
"params": [],
|
|
4428
|
+
"returns": "",
|
|
4429
|
+
"throws": "",
|
|
4430
|
+
"summary": "People matching a trailing",
|
|
4431
|
+
"examples": [
|
|
4432
|
+
{
|
|
4433
|
+
"title": "Usage",
|
|
4434
|
+
"code": "import { ComposerMenu, ComposerPersonItem, applyMention, useMentionMatches } from \"@cueplusplus/ui/elements\";\n\nconst matches = useMentionMatches(value, people);\n\n<ComposerMenu open={matches.length > 0} align=\"end\">\n{matches.map((person, index) => (\n<ComposerPersonItem\nkey={person.name}\nperson={person}\nactive={index === active}\nonClick={() => setValue(applyMention(value, person.name))}\n/>\n))}\n</ComposerMenu>",
|
|
4435
|
+
"language": "tsx"
|
|
4436
|
+
}
|
|
4437
|
+
],
|
|
4438
|
+
"whenToUse": [],
|
|
4439
|
+
"whenNotToUse": [],
|
|
4440
|
+
"commonMistakes": [],
|
|
4441
|
+
"status": "stable",
|
|
4442
|
+
"url": "/docs/components/use-mention-matches",
|
|
4443
|
+
"mdUrl": "/docs/components/use-mention-matches.md",
|
|
4444
|
+
"specimens": [
|
|
4445
|
+
{
|
|
4446
|
+
"title": "ComposerMenu / useSlashMatches / useMentionMatches",
|
|
4447
|
+
"group": "elements-composer",
|
|
4448
|
+
"components": [
|
|
4449
|
+
"ComposerMenu",
|
|
4450
|
+
"ComposerMenuItem",
|
|
4451
|
+
"ComposerCommandItem",
|
|
4452
|
+
"ComposerPersonItem",
|
|
4453
|
+
"useSlashMatches",
|
|
4454
|
+
"useMentionMatches"
|
|
4455
|
+
],
|
|
4456
|
+
"code": "<Specimens>\n <Specimen label=\"slash commands\" wide>\n <div className=\"flex min-h-64 w-full max-w-lg items-end\">\n <ElementsComposer>\n <ComposerMenu open={slashMatches.length > 0} align=\"start\">\n {slashMatches.map((command, index) => (\n <ComposerCommandItem\n key={command.name}\n command={command}\n active={index === 0}\n onClick={() => setSlash(`/${command.name} `)}\n />\n ))}\n <ComposerMenuItem onClick={() => setSlash(\"\")}>\n Browse every command\n </ComposerMenuItem>\n </ComposerMenu>\n <ComposerBar>\n <ComposerInput\n aria-label=\"Run a slash command\"\n value={slash}\n placeholder=\"Type / for commands\"\n onChange={(event) => setSlash(event.target.value)}\n />\n </ComposerBar>\n </ElementsComposer>\n </div>\n </Specimen>\n\n <Specimen label=\"mentions\" wide>\n <div className=\"flex min-h-64 w-full max-w-lg items-end\">\n <ElementsComposer>\n <ComposerMenu open={mentionMatches.length > 0} align=\"end\">\n {mentionMatches.map((person, index) => (\n <ComposerPersonItem\n key={person.name}\n person={person}\n active={index === 0}\n onClick={() => setMention(applyMention(mention, person.name))}\n />\n ))}\n </ComposerMenu>\n <ComposerBar>\n <ComposerInput\n aria-label=\"Mention an agent or a person\"\n value={mention}\n placeholder=\"Type @ to hand this to somebody\"\n onChange={(event) => setMention(event.target.value)}\n />\n </ComposerBar>\n </ElementsComposer>\n </div>\n </Specimen>\n</Specimens>",
|
|
4457
|
+
"note": "One input, two menus, and two hooks that decide which of them has anything to say. `useSlashMatches` answers only while the value starts with a slash; `useMentionMatches` only while the caret is inside a trailing @word — so an empty result is the menu's own instruction to stay shut. `applyMention` writes the choice back into the value, which is the one piece of text editing the family does for you. Type in either field below and the menu above it follows.",
|
|
4458
|
+
"interaction": "the menu animates rather than mounting, so the caret never moves under it. A row is a button and takes cue's focus ring; the active one shows the return key it would answer to."
|
|
4459
|
+
}
|
|
4460
|
+
]
|
|
4461
|
+
},
|
|
4462
|
+
{
|
|
4463
|
+
"name": "useReplay",
|
|
4464
|
+
"slug": "use-replay",
|
|
4465
|
+
"group": "elements",
|
|
4466
|
+
"importPath": "@cueplusplus/ui/elements/replay",
|
|
4467
|
+
"peerDependencies": [],
|
|
4468
|
+
"clientOnly": true,
|
|
4469
|
+
"description": "A filmstrip, a clock and a set of controls — without the controls.\n\nThis is {@link ReplayPlayer} with its chrome removed, for a page that wants\nto draw its own transport (a state timeline, a keyboard shortcut, a play\nbutton somewhere else on the page) or to render the scene itself rather than\nfrom `frame.scene`.\n\n**One clock, not a chain of timeouts.** Every existing player in this\nrepository schedules the next frame with `setTimeout(step, hold)`, which\nmakes pause impossible: the time already spent inside the in-flight timeout\nis unrecoverable, so a resume can only start the hold again. Here the\nplayhead is a number of *script* milliseconds and wall time reaches it\nthrough one origin — `base + (now() - origin) * rate` — so pausing is\n\"write down the playhead\", resuming is \"take a new origin\", and the unspent\n380 ms of a 400 ms hold is still 380 ms on the other side of the pause. The\nsame identity is what makes the rate multiplier exact rather than\napproximate, and what makes a seek and a play land on the same frame.\n\n**Reduced motion is a mode, not a fallback.** Under\n`prefers-reduced-motion: reduce` no frame is ever scheduled — not scheduled\nand hidden, not scheduled at speed, not scheduled at all — and the transport\nopens on the resting frame instead. Every control except play and rate keeps\nworking, so a reader who has asked for stillness can still step through the\nrun one frame at a time and read every state it passes through. That is\nstrictly more than the two older players in this library offer, which show\nthe end and stop.",
|
|
4470
|
+
"signature": "(script: ReplayScript, options?: ReplayOptions): ReplayTransport",
|
|
4471
|
+
"params": [],
|
|
4472
|
+
"returns": "",
|
|
4473
|
+
"throws": "",
|
|
4474
|
+
"summary": "A filmstrip, a clock and a set of controls — without the controls.",
|
|
4475
|
+
"examples": [
|
|
4476
|
+
{
|
|
4477
|
+
"title": "Usage",
|
|
4478
|
+
"code": "const { frame, index, playing, toggle, seek } = useReplay(SCRIPT);\nreturn <Thread messages={MESSAGES[index]!} onClick={toggle} />;",
|
|
4479
|
+
"language": "tsx"
|
|
4480
|
+
},
|
|
4481
|
+
{
|
|
4482
|
+
"title": "Usage 2",
|
|
4483
|
+
"code": "// Deep-linked at a frame, paused, and half speed.\nconst replay = useReplay(SCRIPT, { startAt: 17, autoPlay: false, rate: 0.5 });",
|
|
4484
|
+
"language": "tsx"
|
|
4485
|
+
}
|
|
4486
|
+
],
|
|
4487
|
+
"whenToUse": [],
|
|
4488
|
+
"whenNotToUse": [],
|
|
4489
|
+
"commonMistakes": [],
|
|
4490
|
+
"status": "stable",
|
|
4491
|
+
"url": "/docs/components/use-replay",
|
|
4492
|
+
"mdUrl": "/docs/components/use-replay.md",
|
|
4493
|
+
"specimens": [
|
|
4494
|
+
{
|
|
4495
|
+
"title": "ReplayPlayer",
|
|
4496
|
+
"group": "elements",
|
|
4497
|
+
"components": [
|
|
4498
|
+
"ReplayPlayer",
|
|
4499
|
+
"useReplay"
|
|
4500
|
+
],
|
|
4501
|
+
"code": "<Specimens>\n <Specimen label=\"playing\" wide>\n <div className=\"w-full max-w-[42rem]\">\n <ReplayPlayer script={REPLAY_SCRIPT} />\n </div>\n </Specimen>\n <Specimen label=\"seated at a frame, paused\" wide>\n <div className=\"w-full max-w-[42rem]\">\n <ReplayPlayer script={REPLAY_SCRIPT} startAt={4} autoPlay={false} />\n </div>\n </Specimen>\n</Specimens>",
|
|
4502
|
+
"note": "The run above, playing. The player is a controller over a filmstrip rather than an animation: every frame carries the whole scene, so frame 5 reached by scrubbing is the same DOM as frame 5 reached by watching. One monotonic clock underneath it means pause keeps the unspent part of a hold instead of starting it again, and the rate control is exact rather than approximate. The root publishes data-replay-state, data-replay-playing and data-replay-frame, the way TerminalFrame publishes data-simulating. Under prefers-reduced-motion nothing is ever scheduled: the player opens on the resting frame and every control except play and rate keeps working, so a reader who asked for stillness can still step through all seven states.",
|
|
4503
|
+
"interaction": "the transport is five controls and a scrubber, all keyboard-reachable: the slider steps a frame per arrow key. Stepping stops the clock, because a step is a position rather than a speed. The scenes stay live while they are on screen — open the tool call's disclosure, answer the approval — and what a reader touched outlives the frame it was touched on for exactly as long as the row does: a scene keeps its state while the element in a position holds its type, and starts over when the run puts something else there. The player accumulates nothing either way, which is why a deep link, which is a fresh mount, always draws the frame it names."
|
|
4504
|
+
}
|
|
4505
|
+
]
|
|
4506
|
+
},
|
|
4507
|
+
{
|
|
4508
|
+
"name": "useSlashMatches",
|
|
4509
|
+
"slug": "use-slash-matches",
|
|
4510
|
+
"group": "elements",
|
|
4511
|
+
"importPath": "@cueplusplus/ui/elements",
|
|
4512
|
+
"peerDependencies": [
|
|
4513
|
+
"lucide-react"
|
|
4514
|
+
],
|
|
4515
|
+
"clientOnly": true,
|
|
4516
|
+
"description": "Commands whose name starts with the slash query, or none when not typing one.",
|
|
4517
|
+
"signature": "(value: string, commands: readonly ComposerCommand[] | undefined): ComposerCommand[]",
|
|
4518
|
+
"params": [],
|
|
4519
|
+
"returns": "",
|
|
4520
|
+
"throws": "",
|
|
4521
|
+
"summary": "Commands whose name starts with the slash query, or none when not typing one.",
|
|
4522
|
+
"examples": [
|
|
4523
|
+
{
|
|
4524
|
+
"title": "Usage",
|
|
4525
|
+
"code": "import { ComposerCommandItem, ComposerMenu, useSlashMatches } from \"@cueplusplus/ui/elements\";\n\nconst matches = useSlashMatches(value, commands);\n\n<ComposerMenu open={matches.length > 0}>\n {matches.map((command, index) => (\n <ComposerCommandItem\n key={command.name}\n command={command}\n active={index === active}\n onClick={() => setValue(`/${command.name} `)}\n />\n ))}\n</ComposerMenu>",
|
|
4526
|
+
"language": "tsx"
|
|
4527
|
+
}
|
|
4528
|
+
],
|
|
4529
|
+
"whenToUse": [],
|
|
4530
|
+
"whenNotToUse": [],
|
|
4531
|
+
"commonMistakes": [],
|
|
4532
|
+
"status": "stable",
|
|
4533
|
+
"url": "/docs/components/use-slash-matches",
|
|
4534
|
+
"mdUrl": "/docs/components/use-slash-matches.md",
|
|
4535
|
+
"specimens": [
|
|
4536
|
+
{
|
|
4537
|
+
"title": "ComposerMenu / useSlashMatches / useMentionMatches",
|
|
4538
|
+
"group": "elements-composer",
|
|
4539
|
+
"components": [
|
|
4540
|
+
"ComposerMenu",
|
|
4541
|
+
"ComposerMenuItem",
|
|
4542
|
+
"ComposerCommandItem",
|
|
4543
|
+
"ComposerPersonItem",
|
|
4544
|
+
"useSlashMatches",
|
|
4545
|
+
"useMentionMatches"
|
|
4546
|
+
],
|
|
4547
|
+
"code": "<Specimens>\n <Specimen label=\"slash commands\" wide>\n <div className=\"flex min-h-64 w-full max-w-lg items-end\">\n <ElementsComposer>\n <ComposerMenu open={slashMatches.length > 0} align=\"start\">\n {slashMatches.map((command, index) => (\n <ComposerCommandItem\n key={command.name}\n command={command}\n active={index === 0}\n onClick={() => setSlash(`/${command.name} `)}\n />\n ))}\n <ComposerMenuItem onClick={() => setSlash(\"\")}>\n Browse every command\n </ComposerMenuItem>\n </ComposerMenu>\n <ComposerBar>\n <ComposerInput\n aria-label=\"Run a slash command\"\n value={slash}\n placeholder=\"Type / for commands\"\n onChange={(event) => setSlash(event.target.value)}\n />\n </ComposerBar>\n </ElementsComposer>\n </div>\n </Specimen>\n\n <Specimen label=\"mentions\" wide>\n <div className=\"flex min-h-64 w-full max-w-lg items-end\">\n <ElementsComposer>\n <ComposerMenu open={mentionMatches.length > 0} align=\"end\">\n {mentionMatches.map((person, index) => (\n <ComposerPersonItem\n key={person.name}\n person={person}\n active={index === 0}\n onClick={() => setMention(applyMention(mention, person.name))}\n />\n ))}\n </ComposerMenu>\n <ComposerBar>\n <ComposerInput\n aria-label=\"Mention an agent or a person\"\n value={mention}\n placeholder=\"Type @ to hand this to somebody\"\n onChange={(event) => setMention(event.target.value)}\n />\n </ComposerBar>\n </ElementsComposer>\n </div>\n </Specimen>\n</Specimens>",
|
|
4548
|
+
"note": "One input, two menus, and two hooks that decide which of them has anything to say. `useSlashMatches` answers only while the value starts with a slash; `useMentionMatches` only while the caret is inside a trailing @word — so an empty result is the menu's own instruction to stay shut. `applyMention` writes the choice back into the value, which is the one piece of text editing the family does for you. Type in either field below and the menu above it follows.",
|
|
4549
|
+
"interaction": "the menu animates rather than mounting, so the caret never moves under it. A row is a button and takes cue's focus ring; the active one shows the return key it would answer to."
|
|
4550
|
+
}
|
|
4551
|
+
]
|
|
4552
|
+
},
|
|
4553
|
+
{
|
|
4554
|
+
"name": "useFlowTheme",
|
|
4555
|
+
"slug": "use-flow-theme",
|
|
4556
|
+
"group": "flow",
|
|
4557
|
+
"importPath": "@cueplusplus/ui/flow",
|
|
4558
|
+
"peerDependencies": [
|
|
4559
|
+
"@xyflow/react"
|
|
4560
|
+
],
|
|
4561
|
+
"clientOnly": true,
|
|
4562
|
+
"description": "Everything a `<ReactFlow>` needs to look like it belongs to this system.",
|
|
4563
|
+
"signature": "(): FlowTheme",
|
|
4564
|
+
"params": [],
|
|
4565
|
+
"returns": "",
|
|
4566
|
+
"throws": "",
|
|
4567
|
+
"summary": "Everything a `<ReactFlow>` needs to look like it belongs to this system.",
|
|
4568
|
+
"examples": [
|
|
4569
|
+
{
|
|
4570
|
+
"title": "Usage",
|
|
4571
|
+
"code": "const theme = useFlowTheme();\n<ReactFlow\n nodes={nodes}\n edges={edges}\n nodeTypes={nodeTypes}\n edgeTypes={theme.edgeTypes}\n defaultEdgeOptions={theme.defaultEdgeOptions}\n colorMode={theme.colorMode}\n style={theme.style}\n>\n <FlowBackground />\n <FlowControls />\n</ReactFlow>",
|
|
4572
|
+
"language": "tsx"
|
|
4573
|
+
},
|
|
4574
|
+
{
|
|
4575
|
+
"title": "Usage 2",
|
|
4576
|
+
"code": "// Colour a whole class of nodes at once — the cards inherit the frame.\nconst nodes = inputs.map((input) => ({ ...input, style: theme.nodeStyles.input }));",
|
|
4577
|
+
"language": "tsx"
|
|
4578
|
+
}
|
|
4579
|
+
],
|
|
4580
|
+
"whenToUse": [],
|
|
4581
|
+
"whenNotToUse": [],
|
|
4582
|
+
"commonMistakes": [],
|
|
4583
|
+
"status": "stable",
|
|
4584
|
+
"url": "/docs/components/use-flow-theme",
|
|
4585
|
+
"mdUrl": "/docs/components/use-flow-theme.md"
|
|
4586
|
+
},
|
|
4587
|
+
{
|
|
4588
|
+
"name": "useCueTable",
|
|
4589
|
+
"slug": "use-cue-table",
|
|
4590
|
+
"group": "instruments",
|
|
4591
|
+
"importPath": "@cueplusplus/ui/instruments/data-table",
|
|
4592
|
+
"peerDependencies": [
|
|
4593
|
+
"@tanstack/react-table"
|
|
4594
|
+
],
|
|
4595
|
+
"clientOnly": true,
|
|
4596
|
+
"description": "A TanStack v9 table wired for the console.\n\nAdds one default on top of the feature set: `globalFilterFn: \"includesString\"`,\nwhich is what a single search box over a console table always means. Override\nit, or any other option, by passing it.",
|
|
4597
|
+
"signature": "<TData extends RowData>(options: UseCueTableOptions<TData>): CueTable<TData>",
|
|
4598
|
+
"params": [
|
|
4599
|
+
{
|
|
4600
|
+
"name": "options",
|
|
4601
|
+
"description": "Everything `useTable` takes except `features`."
|
|
4602
|
+
}
|
|
4603
|
+
],
|
|
4604
|
+
"returns": "The table instance, ready to render through `Table`.",
|
|
4605
|
+
"throws": "",
|
|
4606
|
+
"summary": "A TanStack v9 table wired for the console.",
|
|
4607
|
+
"examples": [
|
|
4608
|
+
{
|
|
4609
|
+
"title": "Usage",
|
|
4610
|
+
"code": "const table = useCueTable({ data, columns, state: { globalFilter }, onGlobalFilterChange });",
|
|
4611
|
+
"language": "tsx"
|
|
4612
|
+
}
|
|
4613
|
+
],
|
|
4614
|
+
"whenToUse": [],
|
|
4615
|
+
"whenNotToUse": [],
|
|
4616
|
+
"commonMistakes": [],
|
|
4617
|
+
"status": "stable",
|
|
4618
|
+
"url": "/docs/components/use-cue-table",
|
|
4619
|
+
"mdUrl": "/docs/components/use-cue-table.md"
|
|
4620
|
+
},
|
|
4621
|
+
{
|
|
4622
|
+
"name": "useCarousel",
|
|
4623
|
+
"slug": "use-carousel",
|
|
4624
|
+
"group": "layout",
|
|
4625
|
+
"importPath": "@cueplusplus/ui/layout/carousel",
|
|
4626
|
+
"peerDependencies": [
|
|
4627
|
+
"embla-carousel-react"
|
|
4628
|
+
],
|
|
4629
|
+
"clientOnly": true,
|
|
4630
|
+
"description": "Read the enclosing carousel's state and controls.\n\nUse it to build a control the kit does not ship — a slide counter, a\nthumbnail strip, an autoplay toggle.",
|
|
4631
|
+
"signature": "(): CarouselContextValue",
|
|
4632
|
+
"params": [],
|
|
4633
|
+
"returns": "",
|
|
4634
|
+
"throws": "If called outside a `Carousel.Root`.",
|
|
4635
|
+
"summary": "Read the enclosing carousel's state and controls.",
|
|
4636
|
+
"examples": [
|
|
4637
|
+
{
|
|
4638
|
+
"title": "Usage",
|
|
4639
|
+
"code": "const { selectedIndex, scrollSnaps } = useCarousel();",
|
|
4640
|
+
"language": "tsx"
|
|
4641
|
+
}
|
|
4642
|
+
],
|
|
4643
|
+
"whenToUse": [],
|
|
4644
|
+
"whenNotToUse": [],
|
|
4645
|
+
"commonMistakes": [],
|
|
4646
|
+
"status": "stable",
|
|
4647
|
+
"url": "/docs/components/use-carousel",
|
|
4648
|
+
"mdUrl": "/docs/components/use-carousel.md"
|
|
4649
|
+
},
|
|
4650
|
+
{
|
|
4651
|
+
"name": "useSidebar",
|
|
4652
|
+
"slug": "use-sidebar",
|
|
4653
|
+
"group": "layout",
|
|
4654
|
+
"importPath": "@cueplusplus/ui",
|
|
4655
|
+
"peerDependencies": [],
|
|
4656
|
+
"clientOnly": true,
|
|
4657
|
+
"description": "Read the collapse state of the nearest {@link SidebarRoot}.\n\nHands back `{ collapsed, toggle }`: whether the column is at its narrow\nwidth, and the same valve `Sidebar.Rail` pulls. It is for the part the kit\ndoes not ship — a footer that drops its labels when the column narrows, a\nkeyboard shortcut, a collapse control somewhere other than the rail.\n\nOutside a `Sidebar.Root` it reports `collapsed: false` and a `toggle` that\ndoes nothing, rather than throwing. A row rendered on its own — in a test, on\na docs page, in a menu that reuses the same markup — is a legitimate thing,\nand the honest answer for it is that nothing is collapsed.",
|
|
4658
|
+
"signature": "(): SidebarContextValue",
|
|
4659
|
+
"params": [],
|
|
4660
|
+
"returns": "",
|
|
4661
|
+
"throws": "",
|
|
4662
|
+
"summary": "Read the collapse state of the nearest {@link SidebarRoot}.",
|
|
4663
|
+
"examples": [
|
|
4664
|
+
{
|
|
4665
|
+
"title": "Usage",
|
|
4666
|
+
"code": "const { collapsed } = useSidebar();\n<Button variant=\"ghost\" icon={Plus} aria-label=\"New scene\">\n {collapsed ? null : \"New scene\"}\n</Button>",
|
|
4667
|
+
"language": "tsx"
|
|
4668
|
+
}
|
|
4669
|
+
],
|
|
4670
|
+
"whenToUse": [],
|
|
4671
|
+
"whenNotToUse": [],
|
|
4672
|
+
"commonMistakes": [],
|
|
4673
|
+
"status": "stable",
|
|
4674
|
+
"url": "/docs/components/use-sidebar",
|
|
4675
|
+
"mdUrl": "/docs/components/use-sidebar.md"
|
|
4676
|
+
},
|
|
4677
|
+
{
|
|
4678
|
+
"name": "useToast",
|
|
4679
|
+
"slug": "use-toast",
|
|
4680
|
+
"group": "overlays",
|
|
4681
|
+
"importPath": "@cueplusplus/ui",
|
|
4682
|
+
"peerDependencies": [],
|
|
4683
|
+
"clientOnly": true,
|
|
4684
|
+
"description": "Raise, update and dismiss toasts from anywhere inside a {@link ToastProvider}.\n\nA thin wrapper over Base UI's `useToastManager` that swaps the primitive's\nfree-form `type` string for this system's `tone` vocabulary, so a caller\ncannot invent a colour the theme does not define.",
|
|
4685
|
+
"signature": "(): ToastManager",
|
|
4686
|
+
"params": [],
|
|
4687
|
+
"returns": "",
|
|
4688
|
+
"throws": "",
|
|
4689
|
+
"summary": "Raise, update and dismiss toasts from anywhere inside a {@link ToastProvider}.",
|
|
4690
|
+
"examples": [
|
|
4691
|
+
{
|
|
4692
|
+
"title": "Usage",
|
|
4693
|
+
"code": "const toast = useToast();\ntoast.add({ title: \"Patched 24 fixtures\", tone: \"ok\" });",
|
|
4694
|
+
"language": "tsx"
|
|
4695
|
+
}
|
|
4696
|
+
],
|
|
4697
|
+
"whenToUse": [],
|
|
4698
|
+
"whenNotToUse": [],
|
|
4699
|
+
"commonMistakes": [],
|
|
4700
|
+
"status": "stable",
|
|
4701
|
+
"url": "/docs/components/use-toast",
|
|
4702
|
+
"mdUrl": "/docs/components/use-toast.md"
|
|
4703
|
+
},
|
|
4704
|
+
{
|
|
4705
|
+
"name": "useControlHeight",
|
|
4706
|
+
"slug": "use-control-height",
|
|
4707
|
+
"group": "system",
|
|
4708
|
+
"importPath": "@cueplusplus/ui",
|
|
4709
|
+
"peerDependencies": [],
|
|
4710
|
+
"clientOnly": true,
|
|
4711
|
+
"description": "The pixel height of a control at the ambient density — what a virtualiser or a\ncanvas renderer needs when it cannot ask CSS.\n\nMeasured from a throwaway `document.body` probe stamped with the ambient\ndensity, so app-wide token overrides and the `@media (pointer: coarse)`\nre-raise of `ultra-compact` are honoured (overrides scoped to a subtree the\nprobe is not in are not). Falls back to the authored ladder × 16px during SSR\nand before the first layout effect, which keeps hydration stable.",
|
|
4712
|
+
"signature": "(size?: ControlSize): number",
|
|
4713
|
+
"params": [
|
|
4714
|
+
{
|
|
4715
|
+
"name": "size",
|
|
4716
|
+
"description": "Which rung to measure. Defaults to `\"md\"`."
|
|
4717
|
+
}
|
|
4718
|
+
],
|
|
4719
|
+
"returns": "Height in CSS pixels.",
|
|
4720
|
+
"throws": "",
|
|
4721
|
+
"summary": "The pixel height of a control at the ambient density — what a virtualiser or a canvas renderer needs when it cannot ask CSS.",
|
|
4722
|
+
"examples": [
|
|
4723
|
+
{
|
|
4724
|
+
"title": "Usage",
|
|
4725
|
+
"code": "const rowHeight = useControlHeight(\"sm\"); // → 20 at compact density",
|
|
4726
|
+
"language": "tsx"
|
|
4727
|
+
}
|
|
4728
|
+
],
|
|
4729
|
+
"whenToUse": [],
|
|
4730
|
+
"whenNotToUse": [],
|
|
4731
|
+
"commonMistakes": [],
|
|
4732
|
+
"status": "stable",
|
|
4733
|
+
"url": "/docs/components/use-control-height",
|
|
4734
|
+
"mdUrl": "/docs/components/use-control-height.md"
|
|
4735
|
+
},
|
|
4736
|
+
{
|
|
4737
|
+
"name": "useCuePortalProps",
|
|
4738
|
+
"slug": "use-cue-portal-props",
|
|
4739
|
+
"group": "system",
|
|
4740
|
+
"importPath": "@cueplusplus/ui",
|
|
4741
|
+
"peerDependencies": [],
|
|
4742
|
+
"clientOnly": true,
|
|
4743
|
+
"description": "Props to spread onto a Base UI `Portal` part so the portal root inherits the\ncaller's theme, density, font pairing and mode.\n\nReturns a `container` element appended to `document.body` and stamped with\n`data-theme` / `data-density` / `data-font` / `data-mode` (plus\n`--cue-font-scale`) copied from the nearest provider and density island, and\nwith `data-cue-skin` / `data-cue-fidelity` when the caller sits inside an\n`AgentSurface` island. The container is\n`display: contents`, so it changes no layout and creates no containing block —\nfixed-position overlay content behaves exactly as if it were a direct child of\n`<body>`.\n\nBefore the container exists (server render, first client render) the object is\nempty, which leaves the Base UI default (`document.body`) in place.\n\nEvery overlay in this system spreads this. It is the single fix for the\nnested-density portal bug (spec §6).",
|
|
4744
|
+
"signature": "(): { container?: HTMLElement; }",
|
|
4745
|
+
"params": [],
|
|
4746
|
+
"returns": "`{ container }` once mounted, `{}` otherwise.",
|
|
4747
|
+
"throws": "",
|
|
4748
|
+
"summary": "Props to spread onto a Base UI `Portal` part so the portal root inherits the caller's theme, density, font pairing and mode.",
|
|
4749
|
+
"examples": [
|
|
4750
|
+
{
|
|
4751
|
+
"title": "Usage",
|
|
4752
|
+
"code": "const portalProps = useCuePortalProps();\n<Popover.Portal {...portalProps}><Popover.Positioner>…</Popover.Positioner></Popover.Portal>",
|
|
4753
|
+
"language": "tsx"
|
|
4754
|
+
}
|
|
4755
|
+
],
|
|
4756
|
+
"whenToUse": [],
|
|
4757
|
+
"whenNotToUse": [],
|
|
4758
|
+
"commonMistakes": [],
|
|
4759
|
+
"status": "stable",
|
|
4760
|
+
"url": "/docs/components/use-cue-portal-props",
|
|
4761
|
+
"mdUrl": "/docs/components/use-cue-portal-props.md"
|
|
4762
|
+
},
|
|
4763
|
+
{
|
|
4764
|
+
"name": "useDensity",
|
|
4765
|
+
"slug": "use-density",
|
|
4766
|
+
"group": "system",
|
|
4767
|
+
"importPath": "@cueplusplus/ui",
|
|
4768
|
+
"peerDependencies": [],
|
|
4769
|
+
"clientOnly": true,
|
|
4770
|
+
"description": "The density level that actually applies here: the nearest `<Density>` island,\nelse the `<ThemeProvider>` level, else `\"compact\"`.\n\nThis is a JS read for code that cannot use CSS (virtualised row heights,\ncanvas drawing, layout math). Styling should use the density tokens or the\nper-rung variants (`density-ultra-compact:` … `density-ultra-large:`) instead.",
|
|
4771
|
+
"signature": "(): Density",
|
|
4772
|
+
"params": [],
|
|
4773
|
+
"returns": "The applicable density level.",
|
|
4774
|
+
"throws": "",
|
|
4775
|
+
"summary": "The density level that actually applies here: the nearest `<Density>` island, else the `<ThemeProvider>` level, else `\"compact\"`.",
|
|
4776
|
+
"examples": [
|
|
4777
|
+
{
|
|
4778
|
+
"title": "Usage",
|
|
4779
|
+
"code": "const density = useDensity();\nconst rowHeight = useControlHeight(\"sm\");\n// Shorter rows mean more of them on screen, so the reserve moves with the level.\nuseVirtualizer({\n count: rows.length,\n estimateSize: () => rowHeight,\n overscan: density === \"ultra-compact\" ? 12 : 6,\n});",
|
|
4780
|
+
"language": "tsx"
|
|
4781
|
+
}
|
|
4782
|
+
],
|
|
4783
|
+
"whenToUse": [],
|
|
4784
|
+
"whenNotToUse": [],
|
|
4785
|
+
"commonMistakes": [],
|
|
4786
|
+
"status": "stable",
|
|
4787
|
+
"url": "/docs/components/use-density",
|
|
4788
|
+
"mdUrl": "/docs/components/use-density.md"
|
|
4789
|
+
},
|
|
4790
|
+
{
|
|
4791
|
+
"name": "useTheme",
|
|
4792
|
+
"slug": "use-theme",
|
|
4793
|
+
"group": "system",
|
|
4794
|
+
"importPath": "@cueplusplus/ui",
|
|
4795
|
+
"peerDependencies": [],
|
|
4796
|
+
"clientOnly": true,
|
|
4797
|
+
"description": "Read and drive the ambient theme state.\n\nReturns `{ theme, density, mode, font, resolvedMode, setTheme, setDensity,\nsetMode, setFont }`.\n`density` here is the *provider's* level — a nested `<Density>` island does not\nchange it; use `useDensity()` when you want the level that actually applies\nwhere you are. `font` is the pairing the provider holds; it has no island, so\nit is always the one in force.",
|
|
4798
|
+
"signature": "(): ThemeContextValue",
|
|
4799
|
+
"params": [],
|
|
4800
|
+
"returns": "",
|
|
4801
|
+
"throws": "If called outside a `<ThemeProvider>`. Theme state is never guessed:\na missing provider is a wiring bug, not a fallback situation.",
|
|
4802
|
+
"summary": "Read and drive the ambient theme state.",
|
|
4803
|
+
"examples": [
|
|
4804
|
+
{
|
|
4805
|
+
"title": "Usage",
|
|
4806
|
+
"code": "const { resolvedMode, setMode } = useTheme();\n<Switch checked={resolvedMode === \"light\"} onCheckedChange={(on) => setMode(on ? \"light\" : \"dark\")} />",
|
|
4807
|
+
"language": "tsx"
|
|
4808
|
+
}
|
|
4809
|
+
],
|
|
4810
|
+
"whenToUse": [],
|
|
4811
|
+
"whenNotToUse": [],
|
|
4812
|
+
"commonMistakes": [],
|
|
4813
|
+
"status": "stable",
|
|
4814
|
+
"url": "/docs/components/use-theme",
|
|
4815
|
+
"mdUrl": "/docs/components/use-theme.md"
|
|
2140
4816
|
}
|
|
2141
4817
|
]
|
|
2142
4818
|
}
|