@lostgradient/cinder 0.2.0 → 0.3.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 +83 -0
- package/README.md +4 -2
- package/components.json +1465 -290
- package/dist/_internal/overlay.d.ts +26 -3
- package/dist/_internal/toast-context.d.ts +8 -0
- package/dist/_internal/tree-context.d.ts +18 -0
- package/dist/_internal/tree-data.d.ts +22 -0
- package/dist/_internal/tree-drag-controller.svelte.d.ts +47 -0
- package/dist/_internal/tree-registry.svelte.d.ts +19 -3
- package/dist/_internal/use-virtualizer.svelte.d.ts +21 -0
- package/dist/_internal/virtual-item.d.ts +1 -0
- package/dist/components/_timeline-item/index.d.ts +4 -0
- package/dist/components/_tree-expand-all/index.d.ts +4 -0
- package/dist/components/_tree-expand-all/tree-expand-all.svelte.d.ts +18 -0
- package/dist/components/_tree-expand-all/tree-expand-all.types.d.ts +15 -0
- package/dist/components/_visually-hidden-live-region.svelte.d.ts +9 -0
- package/dist/components/access-gate/access-gate-inline.svelte.d.ts +13 -0
- package/dist/components/access-gate/access-gate.css +129 -0
- package/dist/components/access-gate/access-gate.schema.js +68 -0
- package/dist/components/access-gate/access-gate.svelte.d.ts +20 -0
- package/dist/components/access-gate/access-gate.types.d.ts +40 -0
- package/dist/components/access-gate/access-gate.variables.js +31 -0
- package/dist/components/access-gate/index.d.ts +5 -0
- package/dist/components/access-gate/index.js +1836 -0
- package/dist/components/accordion/accordion.schema.js +12 -32
- package/dist/components/accordion/accordion.svelte.d.ts +9 -2
- package/dist/components/accordion/accordion.variables.js +1 -31
- package/dist/components/accordion/index.js +1 -31
- package/dist/components/accordion-item/accordion-item.schema.js +12 -32
- package/dist/components/accordion-item/accordion-item.variables.js +1 -31
- package/dist/components/accordion-item/index.js +1 -31
- package/dist/components/alert/alert.schema.js +19 -32
- package/dist/components/alert/alert.variables.js +1 -31
- package/dist/components/alert/index.js +1 -31
- package/dist/components/alert-dialog/alert-dialog.schema.js +17 -39
- package/dist/components/alert-dialog/alert-dialog.types.d.ts +7 -0
- package/dist/components/alert-dialog/alert-dialog.variables.js +1 -31
- package/dist/components/alert-dialog/index.js +453 -238
- package/dist/components/area-chart/area-chart.schema.js +42 -46
- package/dist/components/area-chart/area-chart.types.d.ts +14 -0
- package/dist/components/area-chart/area-chart.variables.js +1 -31
- package/dist/components/area-chart/index.js +1 -31
- package/dist/components/aspect-ratio/aspect-ratio.schema.js +12 -32
- package/dist/components/aspect-ratio/aspect-ratio.variables.js +1 -31
- package/dist/components/aspect-ratio/index.js +1 -31
- package/dist/components/autocomplete/autocomplete.css +10 -3
- package/dist/components/autocomplete/autocomplete.schema.js +29 -45
- package/dist/components/autocomplete/autocomplete.types.d.ts +14 -0
- package/dist/components/autocomplete/autocomplete.variables.js +1 -31
- package/dist/components/autocomplete/index.js +961 -529
- package/dist/components/avatar/avatar.css +1 -0
- package/dist/components/avatar/avatar.schema.js +3 -32
- package/dist/components/avatar/avatar.types.d.ts +6 -0
- package/dist/components/avatar/avatar.variables.js +1 -31
- package/dist/components/avatar/index.js +1 -31
- package/dist/components/avatar-group/avatar-group.schema.js +6 -31
- package/dist/components/avatar-group/avatar-group.types.d.ts +10 -0
- package/dist/components/avatar-group/avatar-group.variables.js +1 -31
- package/dist/components/avatar-group/index.js +994 -559
- package/dist/components/backdrop/backdrop.schema.js +5 -33
- package/dist/components/backdrop/backdrop.variables.js +1 -31
- package/dist/components/backdrop/index.js +2 -32
- package/dist/components/badge/badge.css +1 -1
- package/dist/components/badge/badge.schema.js +12 -32
- package/dist/components/badge/badge.variables.js +1 -31
- package/dist/components/badge/index.js +1 -31
- package/dist/components/banner/banner.schema.js +8 -34
- package/dist/components/banner/banner.variables.js +1 -31
- package/dist/components/banner/index.js +1 -31
- package/dist/components/bar-chart/bar-chart.css +4 -0
- package/dist/components/bar-chart/bar-chart.schema.js +42 -46
- package/dist/components/bar-chart/bar-chart.types.d.ts +14 -0
- package/dist/components/bar-chart/bar-chart.variables.js +1 -31
- package/dist/components/bar-chart/index.js +2 -31
- package/dist/components/breadcrumbs/breadcrumbs.schema.js +1 -31
- package/dist/components/breadcrumbs/breadcrumbs.variables.js +1 -31
- package/dist/components/breadcrumbs/index.js +1 -31
- package/dist/components/button/button.css +7 -0
- package/dist/components/button/button.schema.js +20 -32
- package/dist/components/button/button.variables.js +1 -31
- package/dist/components/button/index.js +1 -31
- package/dist/components/button-group/button-group.schema.js +8 -34
- package/dist/components/button-group/button-group.types.d.ts +2 -0
- package/dist/components/button-group/button-group.variables.js +1 -31
- package/dist/components/button-group/index.js +1 -31
- package/dist/components/callout/callout.schema.js +6 -33
- package/dist/components/callout/callout.variables.js +1 -31
- package/dist/components/callout/index.js +1 -31
- package/dist/components/capability-gate/capability-gate.css +5 -2
- package/dist/components/capability-gate/capability-gate.schema.js +9 -35
- package/dist/components/capability-gate/capability-gate.variables.js +1 -31
- package/dist/components/capability-gate/index.js +1 -31
- package/dist/components/card/card.schema.js +7 -34
- package/dist/components/card/card.types.d.ts +2 -0
- package/dist/components/card/card.variables.js +1 -31
- package/dist/components/card/index.js +1 -31
- package/dist/components/chart.types.d.ts +12 -0
- package/dist/components/chat/adapter/chat-adapter.d.ts +123 -0
- package/dist/components/chat/adapter/index.d.ts +8 -0
- package/dist/components/chat/chat.schema.js +161 -48
- package/dist/components/chat/chat.types.d.ts +166 -0
- package/dist/components/chat/chat.variables.js +1 -31
- package/dist/components/chat/container/chat-history-trigger.svelte.d.ts +15 -0
- package/dist/components/chat/container/chat-participant-typing.svelte.d.ts +31 -0
- package/dist/components/chat/container/chat-status-announcer.svelte.d.ts +4 -1
- package/dist/components/chat/container/chat.svelte.d.ts +2 -85
- package/dist/components/chat/container/use-chat-keyboard-nav.svelte.d.ts +8 -0
- package/dist/components/chat/container/use-chat-message-groups.svelte.d.ts +16 -0
- package/dist/components/chat/container/use-chat-read-receipts.svelte.d.ts +51 -0
- package/dist/components/chat/container/use-chat-reasoning-state.svelte.d.ts +55 -0
- package/dist/components/chat/container/use-chat-typing-indicator.svelte.d.ts +76 -0
- package/dist/components/chat/container/use-chat-virtualizer.svelte.d.ts +47 -0
- package/dist/components/chat/index.d.ts +2 -1
- package/dist/components/chat/index.js +9813 -7207
- package/dist/components/chat/message/chat-message-parts-renderer.svelte.d.ts +4 -0
- package/dist/components/chat/message/chat-message-parts.d.ts +96 -0
- package/dist/components/chat/message/chat-message.svelte.d.ts +37 -0
- package/dist/components/chat/message/chat-read-receipt.svelte.d.ts +27 -0
- package/dist/components/chat/message/parts/image-part.svelte.d.ts +17 -0
- package/dist/components/chat/message/parts/markdown-part.svelte.d.ts +8 -0
- package/dist/components/chat/message/parts/reasoning-part.svelte.d.ts +12 -0
- package/dist/components/chat/message/parts/step-part.svelte.d.ts +8 -0
- package/dist/components/chat/message/parts/suggestion-part.svelte.d.ts +18 -0
- package/dist/components/chat/message/parts/tool-approval-part.svelte.d.ts +12 -0
- package/dist/components/chat/message/parts/tool-call-part.svelte.d.ts +12 -0
- package/dist/components/chat/message/parts/tool-result-part.svelte.d.ts +8 -0
- package/dist/components/chat/utilities/index.d.ts +2 -2
- package/dist/components/chat/utilities/types.d.ts +242 -2
- package/dist/components/chat/utilities/utilities.d.ts +64 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.css +51 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.schema.d.ts +3 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.schema.js +64 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.svelte.d.ts +19 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.types.d.ts +18 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.variables.d.ts +2 -0
- package/dist/components/chat-conversation-header/chat-conversation-header.variables.js +31 -0
- package/dist/components/chat-conversation-header/index.d.ts +5 -0
- package/dist/components/chat-conversation-header/index.js +3825 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.css +114 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.schema.d.ts +3 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.schema.js +75 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.svelte.d.ts +21 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.types.d.ts +17 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.variables.d.ts +2 -0
- package/dist/components/chat-conversation-list/chat-conversation-list.variables.js +31 -0
- package/dist/components/chat-conversation-list/conversation-summary.d.ts +30 -0
- package/dist/components/chat-conversation-list/index.d.ts +6 -0
- package/dist/components/chat-conversation-list/index.js +464 -0
- package/dist/components/checkbox/checkbox.schema.js +3 -32
- package/dist/components/checkbox/checkbox.variables.js +1 -31
- package/dist/components/checkbox/index.js +1 -31
- package/dist/components/checkbox-group/checkbox-group.schema.js +4 -32
- package/dist/components/checkbox-group/checkbox-group.variables.js +1 -31
- package/dist/components/checkbox-group/index.js +1 -31
- package/dist/components/chip/chip.schema.js +19 -40
- package/dist/components/chip/chip.types.d.ts +22 -0
- package/dist/components/chip/chip.variables.js +1 -31
- package/dist/components/chip/index.js +7 -31
- package/dist/components/choice-grid/choice-grid.schema.js +6 -33
- package/dist/components/choice-grid/choice-grid.variables.js +1 -31
- package/dist/components/choice-grid/index.js +1 -31
- package/dist/components/choice-grid-item/choice-grid-item.schema.js +4 -32
- package/dist/components/choice-grid-item/choice-grid-item.variables.js +1 -31
- package/dist/components/choice-grid-item/index.js +1 -31
- package/dist/components/click-away-listener/click-away-listener.schema.js +9 -33
- package/dist/components/click-away-listener/click-away-listener.variables.js +1 -31
- package/dist/components/click-away-listener/index.js +1 -31
- package/dist/components/code-block/code-block.css +77 -47
- package/dist/components/code-block/code-block.schema.js +4 -33
- package/dist/components/code-block/code-block.types.d.ts +9 -6
- package/dist/components/code-block/code-block.variables.js +1 -31
- package/dist/components/code-block/index.js +24 -42
- package/dist/components/collapsible/collapsible.schema.js +17 -32
- package/dist/components/collapsible/collapsible.variables.js +1 -31
- package/dist/components/collapsible/index.js +1 -31
- package/dist/components/color-field/color-field.schema.js +3 -32
- package/dist/components/color-field/color-field.variables.js +1 -31
- package/dist/components/color-field/index.js +1 -31
- package/dist/components/color-picker/color-picker.schema.js +5 -33
- package/dist/components/color-picker/color-picker.variables.js +1 -31
- package/dist/components/color-picker/index.js +1 -31
- package/dist/components/color-swatch-picker/color-swatch-picker.schema.js +9 -34
- package/dist/components/color-swatch-picker/color-swatch-picker.variables.js +1 -31
- package/dist/components/color-swatch-picker/index.js +1 -31
- package/dist/components/combobox/combobox.schema.js +10 -34
- package/dist/components/combobox/combobox.variables.js +1 -31
- package/dist/components/combobox/index.js +970 -511
- package/dist/components/command-item/command-item.schema.js +10 -35
- package/dist/components/command-item/command-item.variables.js +1 -31
- package/dist/components/command-item/index.js +1 -31
- package/dist/components/command-menu/command-menu.schema.js +15 -37
- package/dist/components/command-menu/command-menu.variables.js +1 -31
- package/dist/components/command-menu/index.js +962 -531
- package/dist/components/command-palette/command-palette.css +26 -12
- package/dist/components/command-palette/command-palette.schema.js +12 -36
- package/dist/components/command-palette/command-palette.variables.js +1 -31
- package/dist/components/command-palette/index.js +2 -32
- package/dist/components/confirm-dialog/confirm-dialog.schema.js +11 -34
- package/dist/components/confirm-dialog/confirm-dialog.variables.js +1 -31
- package/dist/components/confirm-dialog/index.js +455 -240
- package/dist/components/connection-indicator/connection-indicator.schema.js +1 -31
- package/dist/components/connection-indicator/connection-indicator.variables.js +1 -31
- package/dist/components/connection-indicator/index.js +1 -31
- package/dist/components/container/container.schema.js +12 -32
- package/dist/components/container/container.variables.js +1 -31
- package/dist/components/container/index.js +1 -31
- package/dist/components/context-menu/context-menu.context.d.ts +2 -0
- package/dist/components/context-menu/context-menu.schema.js +13 -37
- package/dist/components/context-menu/context-menu.types.d.ts +5 -0
- package/dist/components/context-menu/context-menu.variables.js +1 -31
- package/dist/components/context-menu/index.js +2111 -1670
- package/dist/components/context-menu-trigger/context-menu-trigger.schema.js +5 -33
- package/dist/components/context-menu-trigger/context-menu-trigger.types.d.ts +1 -0
- package/dist/components/context-menu-trigger/context-menu-trigger.variables.js +1 -31
- package/dist/components/context-menu-trigger/index.js +7 -31
- package/dist/components/copy-button/copy-button.schema.js +5 -33
- package/dist/components/copy-button/copy-button.variables.js +1 -31
- package/dist/components/copy-button/index.js +5 -32
- package/dist/components/data-grid/_internal/column-model.svelte.d.ts +43 -0
- package/dist/components/data-grid/_internal/geometry.d.ts +19 -0
- package/dist/components/data-grid/_internal/keyboard-model.d.ts +22 -0
- package/dist/components/data-grid/_internal/selection-model.svelte.d.ts +28 -0
- package/dist/components/data-grid/_internal/sort-model.d.ts +6 -0
- package/dist/components/data-grid/_internal/virtualization-adapter.svelte.d.ts +44 -0
- package/dist/components/data-grid/data-grid-selection-bind-probe.d.ts +4 -0
- package/dist/components/data-grid/data-grid.css +283 -0
- package/dist/components/data-grid/data-grid.schema.d.ts +3 -0
- package/dist/components/data-grid/data-grid.schema.js +136 -0
- package/dist/components/data-grid/data-grid.svelte.d.ts +40 -0
- package/dist/components/data-grid/data-grid.types.d.ts +102 -0
- package/dist/components/data-grid/data-grid.variables.d.ts +2 -0
- package/dist/components/data-grid/data-grid.variables.js +31 -0
- package/dist/components/data-grid/index.d.ts +5 -0
- package/dist/components/data-grid/index.js +3088 -0
- package/dist/components/data-list/data-list.schema.js +24 -36
- package/dist/components/data-list/data-list.types.d.ts +1 -0
- package/dist/components/data-list/data-list.variables.js +1 -31
- package/dist/components/data-list/index.js +1 -31
- package/dist/components/data-table/data-table.css +25 -0
- package/dist/components/data-table/data-table.schema.js +35 -34
- package/dist/components/data-table/data-table.types.d.ts +31 -1
- package/dist/components/data-table/data-table.variables.js +2 -32
- package/dist/components/data-table/index.js +458 -123
- package/dist/components/date-range-field/date-range-field.css +211 -0
- package/dist/components/date-range-field/date-range-field.schema.d.ts +3 -0
- package/dist/components/date-range-field/date-range-field.schema.js +95 -0
- package/dist/components/date-range-field/date-range-field.svelte.d.ts +19 -0
- package/dist/components/date-range-field/date-range-field.types.d.ts +72 -0
- package/dist/components/date-range-field/date-range-field.variables.d.ts +2 -0
- package/dist/components/date-range-field/date-range-field.variables.js +31 -0
- package/dist/components/date-range-field/index.d.ts +5 -0
- package/dist/components/date-range-field/index.js +297 -0
- package/dist/components/description-list/description-list.schema.js +7 -34
- package/dist/components/description-list/description-list.types.d.ts +1 -0
- package/dist/components/description-list/description-list.variables.js +1 -31
- package/dist/components/description-list/index.js +1 -31
- package/dist/components/diff-statistics/diff-statistics.schema.js +2 -32
- package/dist/components/diff-statistics/diff-statistics.types.d.ts +5 -2
- package/dist/components/diff-statistics/diff-statistics.variables.js +1 -31
- package/dist/components/diff-statistics/index.js +1 -31
- package/dist/components/diff-viewer/diff-viewer.schema.js +15 -36
- package/dist/components/diff-viewer/diff-viewer.variables.js +1 -31
- package/dist/components/diff-viewer/index.js +1 -31
- package/dist/components/divider/divider.schema.js +1 -31
- package/dist/components/divider/divider.svelte.d.ts +1 -1
- package/dist/components/divider/divider.variables.js +1 -31
- package/dist/components/divider/index.js +1 -31
- package/dist/components/drawer/drawer.schema.js +12 -35
- package/dist/components/drawer/drawer.variables.js +1 -31
- package/dist/components/drawer/index.js +382 -180
- package/dist/components/dropdown/dropdown.schema.js +9 -35
- package/dist/components/dropdown/dropdown.types.d.ts +4 -0
- package/dist/components/dropdown/dropdown.variables.js +1 -31
- package/dist/components/dropdown/index.js +1258 -827
- package/dist/components/dropdown-group/dropdown-group.schema.js +7 -34
- package/dist/components/dropdown-group/dropdown-group.types.d.ts +2 -0
- package/dist/components/dropdown-group/dropdown-group.variables.js +1 -31
- package/dist/components/dropdown-group/index.js +1 -31
- package/dist/components/dropdown-item/dropdown-item.schema.js +9 -35
- package/dist/components/dropdown-item/dropdown-item.types.d.ts +4 -0
- package/dist/components/dropdown-item/dropdown-item.variables.js +1 -31
- package/dist/components/dropdown-item/index.js +1 -31
- package/dist/components/dropdown-label/dropdown-label.schema.js +3 -32
- package/dist/components/dropdown-label/dropdown-label.types.d.ts +1 -0
- package/dist/components/dropdown-label/dropdown-label.variables.js +1 -31
- package/dist/components/dropdown-label/index.js +1 -31
- package/dist/components/dropdown-menu/dropdown-menu.schema.js +3 -32
- package/dist/components/dropdown-menu/dropdown-menu.types.d.ts +1 -0
- package/dist/components/dropdown-menu/dropdown-menu.variables.js +1 -31
- package/dist/components/dropdown-menu/index.js +786 -355
- package/dist/components/dropdown-separator/dropdown-separator.schema.js +3 -32
- package/dist/components/dropdown-separator/dropdown-separator.types.d.ts +1 -0
- package/dist/components/dropdown-separator/dropdown-separator.variables.js +1 -31
- package/dist/components/dropdown-separator/index.js +1 -31
- package/dist/components/dropdown-trigger/dropdown-trigger.schema.js +3 -32
- package/dist/components/dropdown-trigger/dropdown-trigger.types.d.ts +1 -0
- package/dist/components/dropdown-trigger/dropdown-trigger.variables.js +1 -31
- package/dist/components/dropdown-trigger/index.js +1 -31
- package/dist/components/empty-state/empty-state.schema.js +7 -34
- package/dist/components/empty-state/empty-state.types.d.ts +3 -0
- package/dist/components/empty-state/empty-state.variables.js +1 -31
- package/dist/components/empty-state/index.js +1 -31
- package/dist/components/event-stream-viewer/event-stream-viewer.css +474 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.schema.d.ts +3 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.schema.js +92 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.svelte.d.ts +19 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.types.d.ts +81 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.variables.d.ts +2 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.variables.js +31 -0
- package/dist/components/event-stream-viewer/index.d.ts +5 -0
- package/dist/components/event-stream-viewer/index.js +1036 -0
- package/dist/components/experimental/connection-indicator/index.js +1 -31
- package/dist/components/experimental/json-viewer/index.js +1 -31
- package/dist/components/experimental/message/index.js +1 -31
- package/dist/components/faceted-filter-bar/faceted-filter-bar.css +121 -0
- package/dist/components/faceted-filter-bar/faceted-filter-bar.schema.d.ts +3 -0
- package/dist/components/faceted-filter-bar/faceted-filter-bar.schema.js +97 -0
- package/dist/components/faceted-filter-bar/faceted-filter-bar.svelte.d.ts +18 -0
- package/dist/components/faceted-filter-bar/faceted-filter-bar.types.d.ts +95 -0
- package/dist/components/faceted-filter-bar/faceted-filter-bar.variables.d.ts +2 -0
- package/dist/components/faceted-filter-bar/faceted-filter-bar.variables.js +31 -0
- package/dist/components/faceted-filter-bar/index.d.ts +5 -0
- package/dist/components/faceted-filter-bar/index.js +1062 -0
- package/dist/components/feed/feed.schema.js +6 -33
- package/dist/components/feed/feed.types.d.ts +1 -0
- package/dist/components/feed/feed.variables.js +1 -31
- package/dist/components/feed/index.js +1 -31
- package/dist/components/feed-event/feed-event.schema.js +16 -35
- package/dist/components/feed-event/feed-event.types.d.ts +1 -0
- package/dist/components/feed-event/feed-event.variables.js +1 -31
- package/dist/components/feed-event/index.js +1 -31
- package/dist/components/file-upload/file-upload.schema.js +15 -38
- package/dist/components/file-upload/file-upload.variables.js +1 -31
- package/dist/components/file-upload/index.js +1 -31
- package/dist/components/floating-action-button/floating-action-button.css +3 -1
- package/dist/components/floating-action-button/floating-action-button.schema.js +11 -32
- package/dist/components/floating-action-button/floating-action-button.variables.js +1 -31
- package/dist/components/floating-action-button/index.js +1 -31
- package/dist/components/focus-trap/focus-trap.schema.js +21 -37
- package/dist/components/focus-trap/focus-trap.types.d.ts +5 -0
- package/dist/components/focus-trap/focus-trap.utilities.svelte.d.ts +14 -0
- package/dist/components/focus-trap/focus-trap.variables.js +1 -31
- package/dist/components/focus-trap/index.js +6 -33
- package/dist/components/form-field/form-field.schema.js +4 -32
- package/dist/components/form-field/form-field.variables.js +1 -31
- package/dist/components/form-field/index.js +1 -31
- package/dist/components/form-section/form-section.schema.js +4 -32
- package/dist/components/form-section/form-section.variables.js +1 -31
- package/dist/components/form-section/index.js +1 -31
- package/dist/components/grid/grid.css +24 -0
- package/dist/components/grid/grid.schema.d.ts +3 -0
- package/dist/components/grid/grid.schema.js +83 -0
- package/dist/components/grid/grid.svelte.d.ts +18 -0
- package/dist/components/grid/grid.types.d.ts +29 -0
- package/dist/components/grid/grid.variables.d.ts +2 -0
- package/dist/components/grid/grid.variables.js +31 -0
- package/dist/components/grid/index.d.ts +13 -0
- package/dist/components/grid/index.js +147 -0
- package/dist/components/grid-item/grid-item.schema.d.ts +3 -0
- package/dist/components/grid-item/grid-item.schema.js +110 -0
- package/dist/components/grid-item/grid-item.svelte.d.ts +16 -0
- package/dist/components/grid-item/grid-item.types.d.ts +21 -0
- package/dist/components/grid-item/grid-item.variables.d.ts +2 -0
- package/dist/components/grid-item/grid-item.variables.js +31 -0
- package/dist/components/grid-item/index.d.ts +4 -0
- package/dist/components/grid-item/index.js +87 -0
- package/dist/components/grid-list/grid-list.schema.js +6 -33
- package/dist/components/grid-list/grid-list.variables.js +1 -31
- package/dist/components/grid-list/index.js +1 -31
- package/dist/components/grid-list-item/grid-list-item.schema.js +19 -40
- package/dist/components/grid-list-item/grid-list-item.types.d.ts +3 -0
- package/dist/components/grid-list-item/grid-list-item.variables.js +1 -31
- package/dist/components/grid-list-item/index.js +1 -31
- package/dist/components/hover-card/hover-card.schema.js +21 -41
- package/dist/components/hover-card/hover-card.types.d.ts +8 -0
- package/dist/components/hover-card/hover-card.variables.js +1 -31
- package/dist/components/hover-card/index.js +789 -358
- package/dist/components/image/image.schema.js +9 -35
- package/dist/components/image/image.variables.js +1 -31
- package/dist/components/image/index.js +1 -31
- package/dist/components/input/index.js +1 -31
- package/dist/components/input/input.schema.js +22 -41
- package/dist/components/input/input.types.d.ts +12 -0
- package/dist/components/input/input.variables.js +1 -31
- package/dist/components/invocation-rule-builder/index.d.ts +5 -0
- package/dist/components/invocation-rule-builder/index.js +526 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.css +281 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.schema.d.ts +3 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.schema.js +101 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.svelte.d.ts +16 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.types.d.ts +147 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.variables.d.ts +2 -0
- package/dist/components/invocation-rule-builder/invocation-rule-builder.variables.js +31 -0
- package/dist/components/json-schema-editor/index.js +5328 -12274
- package/dist/components/json-schema-editor/json-schema-editor.schema.js +8 -34
- package/dist/components/json-schema-editor/json-schema-editor.types.d.ts +1 -0
- package/dist/components/json-schema-editor/json-schema-editor.variables.js +1 -31
- package/dist/components/json-viewer/index.js +5 -35
- package/dist/components/json-viewer/json-viewer.css +6 -0
- package/dist/components/json-viewer/json-viewer.schema.js +4 -32
- package/dist/components/json-viewer/json-viewer.variables.js +1 -31
- package/dist/components/kanban-board/index.js +1 -31
- package/dist/components/kanban-board/kanban-board.schema.js +19 -40
- package/dist/components/kanban-board/kanban-board.types.d.ts +4 -0
- package/dist/components/kanban-board/kanban-board.variables.js +1 -31
- package/dist/components/kbd/index.js +1 -31
- package/dist/components/kbd/kbd.schema.js +11 -32
- package/dist/components/kbd/kbd.variables.js +1 -31
- package/dist/components/keyboard-shortcuts/index.js +1 -31
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.schema.js +6 -33
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.variables.js +1 -31
- package/dist/components/label/index.js +1 -31
- package/dist/components/label/label.schema.js +6 -33
- package/dist/components/label/label.variables.js +1 -31
- package/dist/components/line-chart/index.js +1 -31
- package/dist/components/line-chart/line-chart.schema.js +40 -45
- package/dist/components/line-chart/line-chart.types.d.ts +13 -0
- package/dist/components/line-chart/line-chart.variables.js +1 -31
- package/dist/components/link/index.js +1 -31
- package/dist/components/link/link.schema.js +6 -33
- package/dist/components/link/link.variables.js +1 -31
- package/dist/components/load-more/index.js +3 -32
- package/dist/components/load-more/load-more.schema.js +10 -34
- package/dist/components/load-more/load-more.variables.js +1 -31
- package/dist/components/markdown-editor/index.js +3484 -3050
- package/dist/components/markdown-editor/markdown-editor.schema.js +29 -42
- package/dist/components/markdown-editor/markdown-editor.variables.js +1 -31
- package/dist/components/masonry/index.d.ts +5 -0
- package/dist/components/masonry/index.js +76 -0
- package/dist/components/masonry/masonry.css +12 -0
- package/dist/components/masonry/masonry.schema.d.ts +3 -0
- package/dist/components/masonry/masonry.schema.js +63 -0
- package/dist/components/masonry/masonry.svelte.d.ts +17 -0
- package/dist/components/masonry/masonry.types.d.ts +15 -0
- package/dist/components/masonry/masonry.variables.d.ts +2 -0
- package/dist/components/masonry/masonry.variables.js +31 -0
- package/dist/components/matrix-chart/index.js +9 -32
- package/dist/components/matrix-chart/matrix-chart.css +4 -0
- package/dist/components/matrix-chart/matrix-chart.schema.js +42 -45
- package/dist/components/matrix-chart/matrix-chart.types.d.ts +14 -1
- package/dist/components/matrix-chart/matrix-chart.variables.js +1 -31
- package/dist/components/media-controls/index.js +3 -32
- package/dist/components/media-controls/media-controls.schema.js +7 -34
- package/dist/components/media-controls/media-controls.variables.js +1 -31
- package/dist/components/menu-bar/index.js +1 -31
- package/dist/components/menu-bar/menu-bar.schema.js +11 -36
- package/dist/components/menu-bar/menu-bar.types.d.ts +4 -0
- package/dist/components/menu-bar/menu-bar.variables.js +1 -31
- package/dist/components/message/index.js +1 -31
- package/dist/components/message/message.schema.js +4 -32
- package/dist/components/message/message.variables.js +1 -31
- package/dist/components/modal/index.js +333 -118
- package/dist/components/modal/modal.schema.js +19 -40
- package/dist/components/modal/modal.types.d.ts +8 -0
- package/dist/components/modal/modal.variables.js +1 -31
- package/dist/components/navigation-bar/index.d.ts +1 -1
- package/dist/components/navigation-bar/index.js +19 -38
- package/dist/components/navigation-bar/navigation-bar.css +66 -0
- package/dist/components/navigation-bar/navigation-bar.schema.js +16 -33
- package/dist/components/navigation-bar/navigation-bar.svelte.d.ts +1 -1
- package/dist/components/navigation-bar/navigation-bar.types.d.ts +18 -0
- package/dist/components/navigation-bar/navigation-bar.variables.js +1 -31
- package/dist/components/navigation-item/index.js +1 -31
- package/dist/components/navigation-item/navigation-item.schema.js +16 -37
- package/dist/components/navigation-item/navigation-item.types.d.ts +4 -0
- package/dist/components/navigation-item/navigation-item.variables.js +1 -31
- package/dist/components/number-input/index.js +1 -31
- package/dist/components/number-input/number-input.schema.js +27 -44
- package/dist/components/number-input/number-input.types.d.ts +13 -0
- package/dist/components/number-input/number-input.variables.js +1 -31
- package/dist/components/pagination/index.js +1 -31
- package/dist/components/pagination/pagination.css +0 -1
- package/dist/components/pagination/pagination.schema.js +1 -31
- package/dist/components/pagination/pagination.variables.js +1 -31
- package/dist/components/payload-inspector/index.d.ts +5 -0
- package/dist/components/payload-inspector/index.js +2002 -0
- package/dist/components/payload-inspector/payload-inspector.css +173 -0
- package/dist/components/payload-inspector/payload-inspector.schema.d.ts +3 -0
- package/dist/components/payload-inspector/payload-inspector.schema.js +95 -0
- package/dist/components/payload-inspector/payload-inspector.svelte.d.ts +19 -0
- package/dist/components/payload-inspector/payload-inspector.types.d.ts +69 -0
- package/dist/components/payload-inspector/payload-inspector.variables.d.ts +2 -0
- package/dist/components/payload-inspector/payload-inspector.variables.js +31 -0
- package/dist/components/permission-matrix/index.d.ts +5 -0
- package/dist/components/permission-matrix/index.js +474 -0
- package/dist/components/permission-matrix/permission-matrix.css +165 -0
- package/dist/components/permission-matrix/permission-matrix.schema.d.ts +3 -0
- package/dist/components/permission-matrix/permission-matrix.schema.js +100 -0
- package/dist/components/permission-matrix/permission-matrix.svelte.d.ts +20 -0
- package/dist/components/permission-matrix/permission-matrix.types.d.ts +58 -0
- package/dist/components/permission-matrix/permission-matrix.variables.d.ts +2 -0
- package/dist/components/permission-matrix/permission-matrix.variables.js +31 -0
- package/dist/components/phone-input/index.js +1 -31
- package/dist/components/phone-input/phone-input.schema.js +3 -32
- package/dist/components/phone-input/phone-input.variables.js +1 -31
- package/dist/components/pin-input/index.js +1 -31
- package/dist/components/pin-input/pin-input.schema.js +6 -33
- package/dist/components/pin-input/pin-input.variables.js +1 -31
- package/dist/components/popover/index.js +793 -362
- package/dist/components/popover/popover.schema.js +12 -34
- package/dist/components/popover/popover.types.d.ts +6 -0
- package/dist/components/popover/popover.variables.js +1 -31
- package/dist/components/portal/index.js +1 -31
- package/dist/components/portal/portal.schema.js +19 -36
- package/dist/components/portal/portal.types.d.ts +4 -0
- package/dist/components/portal/portal.variables.js +1 -31
- package/dist/components/pricing-card/index.js +1 -31
- package/dist/components/pricing-card/pricing-card.css +11 -3
- package/dist/components/pricing-card/pricing-card.schema.js +12 -32
- package/dist/components/pricing-card/pricing-card.variables.js +1 -31
- package/dist/components/progress/index.js +1 -31
- package/dist/components/progress/progress.schema.js +1 -31
- package/dist/components/progress/progress.variables.js +1 -31
- package/dist/components/radio-group/index.js +1 -31
- package/dist/components/radio-group/radio-group.schema.js +4 -32
- package/dist/components/radio-group/radio-group.variables.js +1 -31
- package/dist/components/rating/index.js +1 -31
- package/dist/components/rating/rating.schema.js +4 -32
- package/dist/components/rating/rating.variables.js +1 -31
- package/dist/components/resizable-panels/index.js +1 -31
- package/dist/components/resizable-panels/resizable-panels.schema.js +13 -37
- package/dist/components/resizable-panels/resizable-panels.types.d.ts +4 -0
- package/dist/components/resizable-panels/resizable-panels.variables.js +1 -31
- package/dist/components/review-editor/index.d.ts +1 -1
- package/dist/components/review-editor/index.js +3700 -3262
- package/dist/components/review-editor/review-editor-selection-geometry.d.ts +2 -0
- package/dist/components/review-editor/review-editor-selection-types.d.ts +62 -0
- package/dist/components/review-editor/review-editor-selection.svelte.d.ts +1 -58
- package/dist/components/review-editor/review-editor.schema.js +15 -38
- package/dist/components/review-editor/review-editor.variables.js +1 -31
- package/dist/components/run-step-timeline/index.d.ts +5 -0
- package/dist/components/run-step-timeline/index.js +658 -0
- package/dist/components/run-step-timeline/run-step-timeline.css +215 -0
- package/dist/components/run-step-timeline/run-step-timeline.schema.d.ts +3 -0
- package/dist/components/run-step-timeline/run-step-timeline.schema.js +129 -0
- package/dist/components/run-step-timeline/run-step-timeline.svelte.d.ts +19 -0
- package/dist/components/run-step-timeline/run-step-timeline.types.d.ts +111 -0
- package/dist/components/run-step-timeline/run-step-timeline.variables.d.ts +2 -0
- package/dist/components/run-step-timeline/run-step-timeline.variables.js +31 -0
- package/dist/components/schema-form/index.d.ts +6 -0
- package/dist/components/schema-form/index.js +1164 -0
- package/dist/components/schema-form/schema-form-model.d.ts +46 -0
- package/dist/components/schema-form/schema-form-validation.d.ts +33 -0
- package/dist/components/schema-form/schema-form.css +180 -0
- package/dist/components/schema-form/schema-form.schema.d.ts +3 -0
- package/dist/components/schema-form/schema-form.schema.js +69 -0
- package/dist/components/schema-form/schema-form.svelte.d.ts +43 -0
- package/dist/components/schema-form/schema-form.types.d.ts +22 -0
- package/dist/components/schema-form/schema-form.variables.d.ts +2 -0
- package/dist/components/schema-form/schema-form.variables.js +31 -0
- package/dist/components/scroll-area/index.js +1 -31
- package/dist/components/scroll-area/scroll-area.schema.js +4 -32
- package/dist/components/scroll-area/scroll-area.variables.js +1 -31
- package/dist/components/search-field/index.js +1 -31
- package/dist/components/search-field/search-field.schema.js +9 -35
- package/dist/components/search-field/search-field.variables.js +1 -31
- package/dist/components/secret-value-field/index.d.ts +5 -0
- package/dist/components/secret-value-field/index.js +316 -0
- package/dist/components/secret-value-field/secret-value-field.css +147 -0
- package/dist/components/secret-value-field/secret-value-field.schema.d.ts +3 -0
- package/dist/components/secret-value-field/secret-value-field.schema.js +87 -0
- package/dist/components/secret-value-field/secret-value-field.svelte.d.ts +18 -0
- package/dist/components/secret-value-field/secret-value-field.types.d.ts +37 -0
- package/dist/components/secret-value-field/secret-value-field.variables.d.ts +2 -0
- package/dist/components/secret-value-field/secret-value-field.variables.js +31 -0
- package/dist/components/section-heading/index.js +1 -31
- package/dist/components/section-heading/section-heading.schema.js +8 -34
- package/dist/components/section-heading/section-heading.variables.js +1 -31
- package/dist/components/segment/index.js +1 -31
- package/dist/components/segment/segment.schema.js +11 -35
- package/dist/components/segment/segment.variables.js +1 -31
- package/dist/components/segmented-control/index.js +1 -31
- package/dist/components/segmented-control/segmented-control.css +17 -0
- package/dist/components/segmented-control/segmented-control.schema.js +10 -35
- package/dist/components/segmented-control/segmented-control.types.d.ts +2 -0
- package/dist/components/segmented-control/segmented-control.variables.js +1 -31
- package/dist/components/select/index.js +1 -31
- package/dist/components/select/select.schema.js +8 -34
- package/dist/components/select/select.variables.js +1 -31
- package/dist/components/selection-popover/index.js +793 -361
- package/dist/components/selection-popover/selection-popover.schema.js +12 -36
- package/dist/components/selection-popover/selection-popover.types.d.ts +8 -0
- package/dist/components/selection-popover/selection-popover.variables.js +1 -31
- package/dist/components/share-card/index.js +159 -174
- package/dist/components/share-card/share-card.schema.js +5 -33
- package/dist/components/share-card/share-card.variables.js +1 -31
- package/dist/components/sheet/index.js +387 -172
- package/dist/components/sheet/sheet.schema.js +12 -35
- package/dist/components/sheet/sheet.variables.js +1 -31
- package/dist/components/shortcut-hint/index.js +1 -31
- package/dist/components/shortcut-hint/shortcut-hint.schema.js +3 -32
- package/dist/components/shortcut-hint/shortcut-hint.variables.js +1 -31
- package/dist/components/side-navigation/index.d.ts +1 -1
- package/dist/components/side-navigation/index.js +1 -31
- package/dist/components/side-navigation/side-navigation.schema.js +6 -33
- package/dist/components/side-navigation/side-navigation.variables.js +1 -31
- package/dist/components/side-navigation-group/index.js +1 -31
- package/dist/components/side-navigation-group/side-navigation-group.schema.js +10 -35
- package/dist/components/side-navigation-group/side-navigation-group.variables.js +1 -31
- package/dist/components/side-navigation-item/index.js +1 -31
- package/dist/components/side-navigation-item/side-navigation-item.schema.js +16 -37
- package/dist/components/side-navigation-item/side-navigation-item.variables.js +1 -31
- package/dist/components/sidebar/index.js +448 -246
- package/dist/components/sidebar/sidebar.schema.js +7 -34
- package/dist/components/sidebar/sidebar.variables.js +1 -31
- package/dist/components/skeleton/index.js +1 -31
- package/dist/components/skeleton/skeleton.schema.js +9 -35
- package/dist/components/skeleton/skeleton.types.d.ts +4 -0
- package/dist/components/skeleton/skeleton.variables.js +1 -31
- package/dist/components/skip-link/index.js +1 -31
- package/dist/components/skip-link/skip-link.schema.js +11 -32
- package/dist/components/skip-link/skip-link.variables.js +1 -31
- package/dist/components/slider/index.js +1 -31
- package/dist/components/slider/slider.schema.js +5 -33
- package/dist/components/slider/slider.types.d.ts +2 -0
- package/dist/components/slider/slider.variables.js +1 -31
- package/dist/components/sortable-list/index.js +1 -31
- package/dist/components/sortable-list/sortable-list.schema.js +27 -40
- package/dist/components/sortable-list/sortable-list.types.d.ts +1 -0
- package/dist/components/sortable-list/sortable-list.variables.js +1 -31
- package/dist/components/spectrogram/index.js +1 -31
- package/dist/components/spectrogram/spectrogram.css +2 -1
- package/dist/components/spectrogram/spectrogram.schema.js +51 -42
- package/dist/components/spectrogram/spectrogram.types.d.ts +12 -1
- package/dist/components/spectrogram/spectrogram.variables.js +1 -31
- package/dist/components/spectrum-chart/index.js +1 -31
- package/dist/components/spectrum-chart/spectrum-chart.schema.js +43 -41
- package/dist/components/spectrum-chart/spectrum-chart.types.d.ts +9 -0
- package/dist/components/spectrum-chart/spectrum-chart.variables.js +1 -31
- package/dist/components/speed-dial/index.d.ts +13 -0
- package/dist/components/speed-dial/index.js +529 -0
- package/dist/components/speed-dial/speed-dial.context.d.ts +5 -0
- package/dist/components/speed-dial/speed-dial.css +112 -0
- package/dist/components/speed-dial/speed-dial.schema.d.ts +3 -0
- package/dist/components/speed-dial/speed-dial.schema.js +76 -0
- package/dist/components/speed-dial/speed-dial.svelte.d.ts +17 -0
- package/dist/components/speed-dial/speed-dial.types.d.ts +54 -0
- package/dist/components/speed-dial/speed-dial.variables.d.ts +2 -0
- package/dist/components/speed-dial/speed-dial.variables.js +31 -0
- package/dist/components/speed-dial-action/index.d.ts +4 -0
- package/dist/components/speed-dial-action/index.js +264 -0
- package/dist/components/speed-dial-action/speed-dial-action.schema.d.ts +3 -0
- package/dist/components/speed-dial-action/speed-dial-action.schema.js +71 -0
- package/dist/components/speed-dial-action/speed-dial-action.svelte.d.ts +16 -0
- package/dist/components/speed-dial-action/speed-dial-action.types.d.ts +44 -0
- package/dist/components/speed-dial-action/speed-dial-action.variables.d.ts +2 -0
- package/dist/components/speed-dial-action/speed-dial-action.variables.js +31 -0
- package/dist/components/spinner/index.js +1 -31
- package/dist/components/spinner/spinner.schema.js +1 -31
- package/dist/components/spinner/spinner.variables.js +1 -31
- package/dist/components/stacked-list-item/index.js +1 -31
- package/dist/components/stacked-list-item/stacked-list-item.schema.js +20 -40
- package/dist/components/stacked-list-item/stacked-list-item.types.d.ts +4 -0
- package/dist/components/stacked-list-item/stacked-list-item.variables.js +1 -31
- package/dist/components/stat/index.js +1 -31
- package/dist/components/stat/stat.schema.js +7 -34
- package/dist/components/stat/stat.variables.js +1 -31
- package/dist/components/stat-group/index.js +1 -31
- package/dist/components/stat-group/stat-group.schema.js +4 -32
- package/dist/components/stat-group/stat-group.variables.js +1 -31
- package/dist/components/status-dot/index.js +1 -31
- package/dist/components/status-dot/status-dot.css +1 -1
- package/dist/components/status-dot/status-dot.schema.js +1 -31
- package/dist/components/status-dot/status-dot.variables.js +1 -31
- package/dist/components/steps/index.js +1 -31
- package/dist/components/steps/steps.css +30 -10
- package/dist/components/steps/steps.schema.js +4 -32
- package/dist/components/steps/steps.variables.js +1 -31
- package/dist/components/subscription-badge/index.js +2 -32
- package/dist/components/subscription-badge/subscription-badge.schema.js +1 -31
- package/dist/components/subscription-badge/subscription-badge.variables.js +1 -31
- package/dist/components/surface/index.js +1 -31
- package/dist/components/surface/surface.schema.js +11 -32
- package/dist/components/surface/surface.types.d.ts +1 -0
- package/dist/components/surface/surface.variables.js +1 -31
- package/dist/components/tab/index.js +1 -31
- package/dist/components/tab/tab.schema.js +6 -33
- package/dist/components/tab/tab.variables.js +1 -31
- package/dist/components/tab-list/index.js +1 -31
- package/dist/components/tab-list/tab-list.schema.js +4 -32
- package/dist/components/tab-list/tab-list.variables.js +1 -31
- package/dist/components/tab-panel/index.js +1 -31
- package/dist/components/tab-panel/tab-panel.schema.js +4 -32
- package/dist/components/tab-panel/tab-panel.variables.js +1 -31
- package/dist/components/table/index.js +94 -53
- package/dist/components/table/table.css +23 -4
- package/dist/components/table/table.schema.js +6 -33
- package/dist/components/table/table.types.d.ts +2 -1
- package/dist/components/table/table.variables.js +1 -31
- package/dist/components/table-body/index.js +1 -31
- package/dist/components/table-body/table-body.schema.js +4 -32
- package/dist/components/table-body/table-body.variables.js +1 -31
- package/dist/components/table-cell/index.js +1 -31
- package/dist/components/table-cell/table-cell.schema.js +11 -33
- package/dist/components/table-cell/table-cell.types.d.ts +4 -7
- package/dist/components/table-cell/table-cell.variables.js +1 -31
- package/dist/components/table-header/index.js +1 -31
- package/dist/components/table-header/table-header.schema.js +6 -33
- package/dist/components/table-header/table-header.variables.js +1 -31
- package/dist/components/table-header-cell/index.js +1 -31
- package/dist/components/table-header-cell/table-header-cell.schema.js +4 -32
- package/dist/components/table-header-cell/table-header-cell.variables.js +1 -31
- package/dist/components/table-row/index.js +13 -32
- package/dist/components/table-row/table-row.schema.js +8 -34
- package/dist/components/table-row/table-row.types.d.ts +4 -1
- package/dist/components/table-row/table-row.variables.js +1 -31
- package/dist/components/tabs/index.js +1 -31
- package/dist/components/tabs/tabs.css +1 -1
- package/dist/components/tabs/tabs.schema.js +4 -32
- package/dist/components/tabs/tabs.variables.js +1 -31
- package/dist/components/tag-input/index.js +1 -31
- package/dist/components/tag-input/tag-input.css +2 -2
- package/dist/components/tag-input/tag-input.schema.js +5 -33
- package/dist/components/tag-input/tag-input.variables.js +1 -31
- package/dist/components/textarea/index.js +1 -31
- package/dist/components/textarea/textarea.css +1 -0
- package/dist/components/textarea/textarea.schema.js +13 -33
- package/dist/components/textarea/textarea.types.d.ts +4 -0
- package/dist/components/textarea/textarea.variables.js +1 -31
- package/dist/components/timeline/index.js +2 -32
- package/dist/components/timeline/timeline.css +40 -8
- package/dist/components/timeline/timeline.schema.js +17 -33
- package/dist/components/timeline/timeline.svelte.d.ts +2 -2
- package/dist/components/timeline/timeline.types.d.ts +2 -2
- package/dist/components/timeline/timeline.variables.js +1 -31
- package/dist/components/toast-region/index.js +106 -81
- package/dist/components/toast-region/toast-region.schema.js +3 -32
- package/dist/components/toast-region/toast-region.variables.js +1 -31
- package/dist/components/toggle/index.js +1 -31
- package/dist/components/toggle/toggle.css +5 -2
- package/dist/components/toggle/toggle.schema.js +1 -31
- package/dist/components/toggle/toggle.variables.js +1 -31
- package/dist/components/toolbar/index.js +1 -31
- package/dist/components/toolbar/toolbar.schema.js +12 -32
- package/dist/components/toolbar/toolbar.variables.js +1 -31
- package/dist/components/tooltip/index.js +792 -361
- package/dist/components/tooltip/tooltip.css +11 -2
- package/dist/components/tooltip/tooltip.schema.js +10 -35
- package/dist/components/tooltip/tooltip.types.d.ts +4 -0
- package/dist/components/tooltip/tooltip.variables.js +1 -31
- package/dist/components/transfer-list/index.d.ts +5 -0
- package/dist/components/transfer-list/index.js +451 -0
- package/dist/components/transfer-list/transfer-list.css +114 -0
- package/dist/components/transfer-list/transfer-list.schema.d.ts +3 -0
- package/dist/components/transfer-list/transfer-list.schema.js +91 -0
- package/dist/components/transfer-list/transfer-list.svelte.d.ts +17 -0
- package/dist/components/transfer-list/transfer-list.types.d.ts +52 -0
- package/dist/components/transfer-list/transfer-list.variables.d.ts +2 -0
- package/dist/components/transfer-list/transfer-list.variables.js +31 -0
- package/dist/components/tree/index.d.ts +9 -4
- package/dist/components/tree/index.js +3433 -365
- package/dist/components/tree/tree.css +203 -3
- package/dist/components/tree/tree.schema.js +72 -34
- package/dist/components/tree/tree.svelte.d.ts +2 -2
- package/dist/components/tree/tree.types.d.ts +69 -3
- package/dist/components/tree/tree.variables.js +6 -32
- package/dist/components/tree-item/index.js +608 -169
- package/dist/components/tree-item/tree-item.schema.js +19 -36
- package/dist/components/tree-item/tree-item.types.d.ts +11 -3
- package/dist/components/tree-item/tree-item.variables.js +1 -31
- package/dist/components/typography/index.js +1 -31
- package/dist/components/typography/typography.schema.js +12 -32
- package/dist/components/typography/typography.variables.js +1 -31
- package/dist/components/virtual-list/index.d.ts +7 -0
- package/dist/components/virtual-list/index.js +266 -0
- package/dist/components/virtual-list/virtual-list.css +30 -0
- package/dist/components/virtual-list/virtual-list.schema.d.ts +3 -0
- package/dist/components/virtual-list/virtual-list.schema.js +88 -0
- package/dist/components/virtual-list/virtual-list.svelte.d.ts +42 -0
- package/dist/components/virtual-list/virtual-list.types.d.ts +54 -0
- package/dist/components/virtual-list/virtual-list.variables.d.ts +2 -0
- package/dist/components/virtual-list/virtual-list.variables.js +31 -0
- package/dist/components/visually-hidden/index.js +1 -31
- package/dist/components/visually-hidden/visually-hidden.schema.js +12 -32
- package/dist/components/visually-hidden/visually-hidden.variables.js +1 -31
- package/dist/components/waveform/index.js +1 -31
- package/dist/components/waveform/waveform.schema.js +34 -41
- package/dist/components/waveform/waveform.types.d.ts +9 -0
- package/dist/components/waveform/waveform.variables.js +1 -31
- package/dist/highlighters/shiki/index.js +9 -32
- package/dist/index.d.ts +41 -3
- package/dist/index.js +192 -180
- package/dist/markdown/rendering/rehype-shiki-sync.d.ts +9 -0
- package/dist/markdown/rendering/rehype-shiki-sync.js +23 -10
- package/dist/markdown/rendering/render.js +8 -2
- package/dist/schema-types.d.ts +10 -0
- package/dist/server/components/access-gate/access-gate.schema.js +49 -0
- package/dist/server/components/access-gate/access-gate.variables.js +12 -0
- package/dist/server/components/access-gate/index.css +130 -0
- package/dist/server/components/access-gate/index.js +1693 -0
- package/dist/server/components/accordion/accordion.schema.js +12 -33
- package/dist/server/components/accordion/accordion.variables.js +1 -32
- package/dist/server/components/accordion/index.js +1 -32
- package/dist/server/components/accordion-item/accordion-item.schema.js +12 -33
- package/dist/server/components/accordion-item/accordion-item.variables.js +1 -32
- package/dist/server/components/accordion-item/index.js +1 -32
- package/dist/server/components/alert/alert.schema.js +19 -33
- package/dist/server/components/alert/alert.variables.js +1 -32
- package/dist/server/components/alert/index.js +1 -32
- package/dist/server/components/alert-dialog/alert-dialog.schema.js +17 -40
- package/dist/server/components/alert-dialog/alert-dialog.variables.js +1 -32
- package/dist/server/components/alert-dialog/index.js +274 -84
- package/dist/server/components/area-chart/area-chart.schema.js +42 -47
- package/dist/server/components/area-chart/area-chart.variables.js +1 -32
- package/dist/server/components/area-chart/index.js +1 -32
- package/dist/server/components/aspect-ratio/aspect-ratio.schema.js +12 -33
- package/dist/server/components/aspect-ratio/aspect-ratio.variables.js +1 -32
- package/dist/server/components/aspect-ratio/index.js +1 -32
- package/dist/server/components/autocomplete/autocomplete.schema.js +29 -46
- package/dist/server/components/autocomplete/autocomplete.variables.js +1 -32
- package/dist/server/components/autocomplete/index.css +0 -4
- package/dist/server/components/autocomplete/index.js +9 -34
- package/dist/server/components/avatar/avatar.schema.js +3 -33
- package/dist/server/components/avatar/avatar.variables.js +1 -32
- package/dist/server/components/avatar/index.css +1 -0
- package/dist/server/components/avatar/index.js +1 -32
- package/dist/server/components/avatar-group/avatar-group.schema.js +6 -32
- package/dist/server/components/avatar-group/avatar-group.variables.js +1 -32
- package/dist/server/components/avatar-group/index.js +5 -32
- package/dist/server/components/backdrop/backdrop.schema.js +5 -34
- package/dist/server/components/backdrop/backdrop.variables.js +1 -32
- package/dist/server/components/backdrop/index.js +2 -33
- package/dist/server/components/badge/badge.schema.js +12 -33
- package/dist/server/components/badge/badge.variables.js +1 -32
- package/dist/server/components/badge/index.css +1 -1
- package/dist/server/components/badge/index.js +1 -32
- package/dist/server/components/banner/banner.schema.js +8 -35
- package/dist/server/components/banner/banner.variables.js +1 -32
- package/dist/server/components/banner/index.js +1 -32
- package/dist/server/components/bar-chart/bar-chart.schema.js +42 -47
- package/dist/server/components/bar-chart/bar-chart.variables.js +1 -32
- package/dist/server/components/bar-chart/index.css +4 -0
- package/dist/server/components/bar-chart/index.js +2 -33
- package/dist/server/components/breadcrumbs/breadcrumbs.schema.js +1 -32
- package/dist/server/components/breadcrumbs/breadcrumbs.variables.js +1 -32
- package/dist/server/components/breadcrumbs/index.js +1 -32
- package/dist/server/components/button/button.schema.js +20 -33
- package/dist/server/components/button/button.variables.js +1 -32
- package/dist/server/components/button/index.js +1 -32
- package/dist/server/components/button-group/button-group.schema.js +8 -35
- package/dist/server/components/button-group/button-group.variables.js +1 -32
- package/dist/server/components/button-group/index.js +1 -32
- package/dist/server/components/callout/callout.schema.js +6 -34
- package/dist/server/components/callout/callout.variables.js +1 -32
- package/dist/server/components/callout/index.js +1 -32
- package/dist/server/components/capability-gate/capability-gate.schema.js +9 -36
- package/dist/server/components/capability-gate/capability-gate.variables.js +1 -32
- package/dist/server/components/capability-gate/index.css +5 -2
- package/dist/server/components/capability-gate/index.js +1 -32
- package/dist/server/components/card/card.schema.js +7 -35
- package/dist/server/components/card/card.variables.js +1 -32
- package/dist/server/components/card/index.js +1 -32
- package/dist/server/components/chat/chat.schema.js +161 -49
- package/dist/server/components/chat/chat.variables.js +1 -32
- package/dist/server/components/chat/index.js +2665 -1064
- package/dist/server/components/chat-conversation-header/chat-conversation-header.schema.js +45 -0
- package/dist/server/components/chat-conversation-header/chat-conversation-header.variables.js +12 -0
- package/dist/server/components/chat-conversation-header/index.css +309 -0
- package/dist/server/components/chat-conversation-header/index.js +1468 -0
- package/dist/server/components/chat-conversation-list/chat-conversation-list.schema.js +56 -0
- package/dist/server/components/chat-conversation-list/chat-conversation-list.variables.js +12 -0
- package/dist/server/components/chat-conversation-list/index.css +115 -0
- package/dist/server/components/chat-conversation-list/index.js +355 -0
- package/dist/server/components/checkbox/checkbox.schema.js +3 -33
- package/dist/server/components/checkbox/checkbox.variables.js +1 -32
- package/dist/server/components/checkbox/index.js +1 -32
- package/dist/server/components/checkbox-group/checkbox-group.schema.js +4 -33
- package/dist/server/components/checkbox-group/checkbox-group.variables.js +1 -32
- package/dist/server/components/checkbox-group/index.js +1 -32
- package/dist/server/components/chip/chip.schema.js +19 -41
- package/dist/server/components/chip/chip.variables.js +1 -32
- package/dist/server/components/chip/index.js +7 -32
- package/dist/server/components/choice-grid/choice-grid.schema.js +6 -34
- package/dist/server/components/choice-grid/choice-grid.variables.js +1 -32
- package/dist/server/components/choice-grid/index.js +1 -32
- package/dist/server/components/choice-grid-item/choice-grid-item.schema.js +4 -33
- package/dist/server/components/choice-grid-item/choice-grid-item.variables.js +1 -32
- package/dist/server/components/choice-grid-item/index.js +1 -32
- package/dist/server/components/click-away-listener/click-away-listener.schema.js +9 -34
- package/dist/server/components/click-away-listener/click-away-listener.variables.js +1 -32
- package/dist/server/components/click-away-listener/index.js +1 -32
- package/dist/server/components/code-block/code-block.schema.js +4 -34
- package/dist/server/components/code-block/code-block.variables.js +1 -32
- package/dist/server/components/code-block/index.css +42 -22
- package/dist/server/components/code-block/index.js +14 -38
- package/dist/server/components/collapsible/collapsible.schema.js +17 -33
- package/dist/server/components/collapsible/collapsible.variables.js +1 -32
- package/dist/server/components/collapsible/index.js +1 -32
- package/dist/server/components/color-field/color-field.schema.js +3 -33
- package/dist/server/components/color-field/color-field.variables.js +1 -32
- package/dist/server/components/color-field/index.js +1 -32
- package/dist/server/components/color-picker/color-picker.schema.js +5 -34
- package/dist/server/components/color-picker/color-picker.variables.js +1 -32
- package/dist/server/components/color-picker/index.js +1 -32
- package/dist/server/components/color-swatch-picker/color-swatch-picker.schema.js +9 -35
- package/dist/server/components/color-swatch-picker/color-swatch-picker.variables.js +1 -32
- package/dist/server/components/color-swatch-picker/index.js +1 -32
- package/dist/server/components/combobox/combobox.schema.js +10 -35
- package/dist/server/components/combobox/combobox.variables.js +1 -32
- package/dist/server/components/combobox/index.js +53 -65
- package/dist/server/components/command-item/command-item.schema.js +10 -36
- package/dist/server/components/command-item/command-item.variables.js +1 -32
- package/dist/server/components/command-item/index.js +1 -32
- package/dist/server/components/command-menu/command-menu.schema.js +15 -38
- package/dist/server/components/command-menu/command-menu.variables.js +1 -32
- package/dist/server/components/command-menu/index.js +1 -32
- package/dist/server/components/command-palette/command-palette.schema.js +12 -37
- package/dist/server/components/command-palette/command-palette.variables.js +1 -32
- package/dist/server/components/command-palette/index.css +12 -12
- package/dist/server/components/command-palette/index.js +2 -33
- package/dist/server/components/confirm-dialog/confirm-dialog.schema.js +11 -35
- package/dist/server/components/confirm-dialog/confirm-dialog.variables.js +1 -32
- package/dist/server/components/confirm-dialog/index.js +274 -84
- package/dist/server/components/connection-indicator/connection-indicator.schema.js +1 -32
- package/dist/server/components/connection-indicator/connection-indicator.variables.js +1 -32
- package/dist/server/components/connection-indicator/index.js +1 -32
- package/dist/server/components/container/container.schema.js +12 -33
- package/dist/server/components/container/container.variables.js +1 -32
- package/dist/server/components/container/index.js +1 -32
- package/dist/server/components/context-menu/context-menu.schema.js +13 -38
- package/dist/server/components/context-menu/context-menu.variables.js +1 -32
- package/dist/server/components/context-menu/index.js +13 -34
- package/dist/server/components/context-menu-trigger/context-menu-trigger.schema.js +5 -34
- package/dist/server/components/context-menu-trigger/context-menu-trigger.variables.js +1 -32
- package/dist/server/components/context-menu-trigger/index.js +7 -32
- package/dist/server/components/copy-button/copy-button.schema.js +5 -34
- package/dist/server/components/copy-button/copy-button.variables.js +1 -32
- package/dist/server/components/copy-button/index.js +9 -33
- package/dist/server/components/data-grid/data-grid.schema.js +117 -0
- package/dist/server/components/data-grid/data-grid.variables.js +12 -0
- package/dist/server/components/data-grid/index.css +245 -0
- package/dist/server/components/data-grid/index.js +2822 -0
- package/dist/server/components/data-list/data-list.schema.js +24 -37
- package/dist/server/components/data-list/data-list.variables.js +1 -32
- package/dist/server/components/data-list/index.js +1 -32
- package/dist/server/components/data-table/data-table.schema.js +35 -35
- package/dist/server/components/data-table/data-table.variables.js +2 -33
- package/dist/server/components/data-table/index.css +37 -4
- package/dist/server/components/data-table/index.js +328 -81
- package/dist/server/components/date-range-field/date-range-field.schema.js +76 -0
- package/dist/server/components/date-range-field/date-range-field.variables.js +12 -0
- package/dist/server/components/date-range-field/index.css +178 -0
- package/dist/server/components/date-range-field/index.js +189 -0
- package/dist/server/components/description-list/description-list.schema.js +7 -35
- package/dist/server/components/description-list/description-list.variables.js +1 -32
- package/dist/server/components/description-list/index.js +1 -32
- package/dist/server/components/diff-statistics/diff-statistics.schema.js +2 -33
- package/dist/server/components/diff-statistics/diff-statistics.variables.js +1 -32
- package/dist/server/components/diff-statistics/index.js +1 -32
- package/dist/server/components/diff-viewer/diff-viewer.schema.js +15 -37
- package/dist/server/components/diff-viewer/diff-viewer.variables.js +1 -32
- package/dist/server/components/diff-viewer/index.js +1 -32
- package/dist/server/components/divider/divider.schema.js +1 -32
- package/dist/server/components/divider/divider.variables.js +1 -32
- package/dist/server/components/divider/index.js +1 -32
- package/dist/server/components/drawer/drawer.schema.js +12 -36
- package/dist/server/components/drawer/drawer.variables.js +1 -32
- package/dist/server/components/drawer/index.js +261 -68
- package/dist/server/components/dropdown/dropdown.schema.js +9 -36
- package/dist/server/components/dropdown/dropdown.variables.js +1 -32
- package/dist/server/components/dropdown/index.js +2 -33
- package/dist/server/components/dropdown-group/dropdown-group.schema.js +7 -35
- package/dist/server/components/dropdown-group/dropdown-group.variables.js +1 -32
- package/dist/server/components/dropdown-group/index.js +1 -32
- package/dist/server/components/dropdown-item/dropdown-item.schema.js +9 -36
- package/dist/server/components/dropdown-item/dropdown-item.variables.js +1 -32
- package/dist/server/components/dropdown-item/index.js +1 -32
- package/dist/server/components/dropdown-label/dropdown-label.schema.js +3 -33
- package/dist/server/components/dropdown-label/dropdown-label.variables.js +1 -32
- package/dist/server/components/dropdown-label/index.js +1 -32
- package/dist/server/components/dropdown-menu/dropdown-menu.schema.js +3 -33
- package/dist/server/components/dropdown-menu/dropdown-menu.variables.js +1 -32
- package/dist/server/components/dropdown-menu/index.js +1 -32
- package/dist/server/components/dropdown-separator/dropdown-separator.schema.js +3 -33
- package/dist/server/components/dropdown-separator/dropdown-separator.variables.js +1 -32
- package/dist/server/components/dropdown-separator/index.js +1 -32
- package/dist/server/components/dropdown-trigger/dropdown-trigger.schema.js +3 -33
- package/dist/server/components/dropdown-trigger/dropdown-trigger.variables.js +1 -32
- package/dist/server/components/dropdown-trigger/index.js +1 -32
- package/dist/server/components/empty-state/empty-state.schema.js +7 -35
- package/dist/server/components/empty-state/empty-state.variables.js +1 -32
- package/dist/server/components/empty-state/index.js +1 -32
- package/dist/server/components/event-stream-viewer/event-stream-viewer.schema.js +73 -0
- package/dist/server/components/event-stream-viewer/event-stream-viewer.variables.js +12 -0
- package/dist/server/components/event-stream-viewer/index.css +414 -0
- package/dist/server/components/event-stream-viewer/index.js +627 -0
- package/dist/server/components/experimental/connection-indicator/index.js +1 -32
- package/dist/server/components/experimental/json-viewer/index.js +1 -32
- package/dist/server/components/experimental/message/index.js +1 -32
- package/dist/server/components/faceted-filter-bar/faceted-filter-bar.schema.js +78 -0
- package/dist/server/components/faceted-filter-bar/faceted-filter-bar.variables.js +12 -0
- package/dist/server/components/faceted-filter-bar/index.css +108 -0
- package/dist/server/components/faceted-filter-bar/index.js +736 -0
- package/dist/server/components/feed/feed.schema.js +6 -34
- package/dist/server/components/feed/feed.variables.js +1 -32
- package/dist/server/components/feed/index.js +1 -32
- package/dist/server/components/feed-event/feed-event.schema.js +16 -36
- package/dist/server/components/feed-event/feed-event.variables.js +1 -32
- package/dist/server/components/feed-event/index.js +1 -32
- package/dist/server/components/file-upload/file-upload.schema.js +15 -39
- package/dist/server/components/file-upload/file-upload.variables.js +1 -32
- package/dist/server/components/file-upload/index.js +1 -32
- package/dist/server/components/floating-action-button/floating-action-button.schema.js +11 -33
- package/dist/server/components/floating-action-button/floating-action-button.variables.js +1 -32
- package/dist/server/components/floating-action-button/index.css +2 -1
- package/dist/server/components/floating-action-button/index.js +1 -32
- package/dist/server/components/focus-trap/focus-trap.schema.js +21 -38
- package/dist/server/components/focus-trap/focus-trap.variables.js +1 -32
- package/dist/server/components/focus-trap/index.js +6 -34
- package/dist/server/components/form-field/form-field.schema.js +4 -33
- package/dist/server/components/form-field/form-field.variables.js +1 -32
- package/dist/server/components/form-field/index.js +1 -32
- package/dist/server/components/form-section/form-section.schema.js +4 -33
- package/dist/server/components/form-section/form-section.variables.js +1 -32
- package/dist/server/components/form-section/index.js +1 -32
- package/dist/server/components/grid/grid.schema.js +64 -0
- package/dist/server/components/grid/grid.variables.js +12 -0
- package/dist/server/components/grid/index.css +26 -0
- package/dist/server/components/grid/index.js +113 -0
- package/dist/server/components/grid-item/grid-item.schema.js +91 -0
- package/dist/server/components/grid-item/grid-item.variables.js +12 -0
- package/dist/server/components/grid-item/index.js +62 -0
- package/dist/server/components/grid-list/grid-list.schema.js +6 -34
- package/dist/server/components/grid-list/grid-list.variables.js +1 -32
- package/dist/server/components/grid-list/index.js +1 -32
- package/dist/server/components/grid-list-item/grid-list-item.schema.js +19 -41
- package/dist/server/components/grid-list-item/grid-list-item.variables.js +1 -32
- package/dist/server/components/grid-list-item/index.js +1 -32
- package/dist/server/components/hover-card/hover-card.schema.js +21 -42
- package/dist/server/components/hover-card/hover-card.variables.js +1 -32
- package/dist/server/components/hover-card/index.js +1 -32
- package/dist/server/components/image/image.schema.js +9 -36
- package/dist/server/components/image/image.variables.js +1 -32
- package/dist/server/components/image/index.js +1 -32
- package/dist/server/components/input/index.js +1 -32
- package/dist/server/components/input/input.schema.js +22 -42
- package/dist/server/components/input/input.variables.js +1 -32
- package/dist/server/components/invocation-rule-builder/index.css +262 -0
- package/dist/server/components/invocation-rule-builder/index.js +333 -0
- package/dist/server/components/invocation-rule-builder/invocation-rule-builder.schema.js +82 -0
- package/dist/server/components/invocation-rule-builder/invocation-rule-builder.variables.js +12 -0
- package/dist/server/components/json-schema-editor/index.js +26 -7430
- package/dist/server/components/json-schema-editor/json-schema-editor.schema.js +8 -35
- package/dist/server/components/json-schema-editor/json-schema-editor.variables.js +1 -32
- package/dist/server/components/json-viewer/index.css +6 -0
- package/dist/server/components/json-viewer/index.js +3 -34
- package/dist/server/components/json-viewer/json-viewer.schema.js +4 -33
- package/dist/server/components/json-viewer/json-viewer.variables.js +1 -32
- package/dist/server/components/kanban-board/index.js +1 -32
- package/dist/server/components/kanban-board/kanban-board.schema.js +19 -41
- package/dist/server/components/kanban-board/kanban-board.variables.js +1 -32
- package/dist/server/components/kbd/index.js +1 -32
- package/dist/server/components/kbd/kbd.schema.js +11 -33
- package/dist/server/components/kbd/kbd.variables.js +1 -32
- package/dist/server/components/keyboard-shortcuts/index.js +1 -32
- package/dist/server/components/keyboard-shortcuts/keyboard-shortcuts.schema.js +6 -34
- package/dist/server/components/keyboard-shortcuts/keyboard-shortcuts.variables.js +1 -32
- package/dist/server/components/label/index.js +1 -32
- package/dist/server/components/label/label.schema.js +6 -34
- package/dist/server/components/label/label.variables.js +1 -32
- package/dist/server/components/line-chart/index.js +1 -32
- package/dist/server/components/line-chart/line-chart.schema.js +40 -46
- package/dist/server/components/line-chart/line-chart.variables.js +1 -32
- package/dist/server/components/link/index.js +1 -32
- package/dist/server/components/link/link.schema.js +6 -34
- package/dist/server/components/link/link.variables.js +1 -32
- package/dist/server/components/load-more/index.js +7 -33
- package/dist/server/components/load-more/load-more.schema.js +10 -35
- package/dist/server/components/load-more/load-more.variables.js +1 -32
- package/dist/server/components/markdown-editor/index.js +109 -137
- package/dist/server/components/markdown-editor/markdown-editor.schema.js +29 -43
- package/dist/server/components/markdown-editor/markdown-editor.variables.js +1 -32
- package/dist/server/components/masonry/index.css +14 -0
- package/dist/server/components/masonry/index.js +48 -0
- package/dist/server/components/masonry/masonry.schema.js +44 -0
- package/dist/server/components/masonry/masonry.variables.js +12 -0
- package/dist/server/components/matrix-chart/index.css +4 -0
- package/dist/server/components/matrix-chart/index.js +7 -34
- package/dist/server/components/matrix-chart/matrix-chart.schema.js +42 -46
- package/dist/server/components/matrix-chart/matrix-chart.variables.js +1 -32
- package/dist/server/components/media-controls/index.js +7 -33
- package/dist/server/components/media-controls/media-controls.schema.js +7 -35
- package/dist/server/components/media-controls/media-controls.variables.js +1 -32
- package/dist/server/components/menu-bar/index.js +1 -32
- package/dist/server/components/menu-bar/menu-bar.schema.js +11 -37
- package/dist/server/components/menu-bar/menu-bar.variables.js +1 -32
- package/dist/server/components/message/index.js +1 -32
- package/dist/server/components/message/message.schema.js +4 -33
- package/dist/server/components/message/message.variables.js +1 -32
- package/dist/server/components/modal/index.js +251 -61
- package/dist/server/components/modal/modal.schema.js +19 -41
- package/dist/server/components/modal/modal.variables.js +1 -32
- package/dist/server/components/navigation-bar/index.css +57 -0
- package/dist/server/components/navigation-bar/index.js +14 -38
- package/dist/server/components/navigation-bar/navigation-bar.schema.js +16 -34
- package/dist/server/components/navigation-bar/navigation-bar.variables.js +1 -32
- package/dist/server/components/navigation-item/index.js +1 -32
- package/dist/server/components/navigation-item/navigation-item.schema.js +16 -38
- package/dist/server/components/navigation-item/navigation-item.variables.js +1 -32
- package/dist/server/components/number-input/index.js +1 -32
- package/dist/server/components/number-input/number-input.schema.js +27 -45
- package/dist/server/components/number-input/number-input.variables.js +1 -32
- package/dist/server/components/pagination/index.css +0 -1
- package/dist/server/components/pagination/index.js +1 -32
- package/dist/server/components/pagination/pagination.schema.js +1 -32
- package/dist/server/components/pagination/pagination.variables.js +1 -32
- package/dist/server/components/payload-inspector/index.css +144 -0
- package/dist/server/components/payload-inspector/index.js +1322 -0
- package/dist/server/components/payload-inspector/payload-inspector.schema.js +76 -0
- package/dist/server/components/payload-inspector/payload-inspector.variables.js +12 -0
- package/dist/server/components/permission-matrix/index.css +161 -0
- package/dist/server/components/permission-matrix/index.js +294 -0
- package/dist/server/components/permission-matrix/permission-matrix.schema.js +81 -0
- package/dist/server/components/permission-matrix/permission-matrix.variables.js +12 -0
- package/dist/server/components/phone-input/index.js +1 -32
- package/dist/server/components/phone-input/phone-input.schema.js +3 -33
- package/dist/server/components/phone-input/phone-input.variables.js +1 -32
- package/dist/server/components/pin-input/index.js +1 -32
- package/dist/server/components/pin-input/pin-input.schema.js +6 -34
- package/dist/server/components/pin-input/pin-input.variables.js +1 -32
- package/dist/server/components/popover/index.js +3 -33
- package/dist/server/components/popover/popover.schema.js +12 -35
- package/dist/server/components/popover/popover.variables.js +1 -32
- package/dist/server/components/portal/index.js +1 -32
- package/dist/server/components/portal/portal.schema.js +19 -37
- package/dist/server/components/portal/portal.variables.js +1 -32
- package/dist/server/components/pricing-card/index.css +2 -2
- package/dist/server/components/pricing-card/index.js +1 -32
- package/dist/server/components/pricing-card/pricing-card.schema.js +12 -33
- package/dist/server/components/pricing-card/pricing-card.variables.js +1 -32
- package/dist/server/components/progress/index.js +1 -32
- package/dist/server/components/progress/progress.schema.js +1 -32
- package/dist/server/components/progress/progress.variables.js +1 -32
- package/dist/server/components/radio-group/index.js +1 -32
- package/dist/server/components/radio-group/radio-group.schema.js +4 -33
- package/dist/server/components/radio-group/radio-group.variables.js +1 -32
- package/dist/server/components/rating/index.js +1 -32
- package/dist/server/components/rating/rating.schema.js +4 -33
- package/dist/server/components/rating/rating.variables.js +1 -32
- package/dist/server/components/resizable-panels/index.js +1 -32
- package/dist/server/components/resizable-panels/resizable-panels.schema.js +13 -38
- package/dist/server/components/resizable-panels/resizable-panels.variables.js +1 -32
- package/dist/server/components/review-editor/index.js +116 -140
- package/dist/server/components/review-editor/review-editor.schema.js +15 -39
- package/dist/server/components/review-editor/review-editor.variables.js +1 -32
- package/dist/server/components/run-step-timeline/index.css +161 -0
- package/dist/server/components/run-step-timeline/index.js +414 -0
- package/dist/server/components/run-step-timeline/run-step-timeline.schema.js +110 -0
- package/dist/server/components/run-step-timeline/run-step-timeline.variables.js +12 -0
- package/dist/server/components/schema-form/index.css +165 -0
- package/dist/server/components/schema-form/index.js +911 -0
- package/dist/server/components/schema-form/schema-form.schema.js +50 -0
- package/dist/server/components/schema-form/schema-form.variables.js +12 -0
- package/dist/server/components/scroll-area/index.js +1 -32
- package/dist/server/components/scroll-area/scroll-area.schema.js +4 -33
- package/dist/server/components/scroll-area/scroll-area.variables.js +1 -32
- package/dist/server/components/search-field/index.js +1 -32
- package/dist/server/components/search-field/search-field.schema.js +9 -36
- package/dist/server/components/search-field/search-field.variables.js +1 -32
- package/dist/server/components/secret-value-field/index.css +124 -0
- package/dist/server/components/secret-value-field/index.js +173 -0
- package/dist/server/components/secret-value-field/secret-value-field.schema.js +68 -0
- package/dist/server/components/secret-value-field/secret-value-field.variables.js +12 -0
- package/dist/server/components/section-heading/index.js +1 -32
- package/dist/server/components/section-heading/section-heading.schema.js +8 -35
- package/dist/server/components/section-heading/section-heading.variables.js +1 -32
- package/dist/server/components/segment/index.js +1 -32
- package/dist/server/components/segment/segment.schema.js +11 -36
- package/dist/server/components/segment/segment.variables.js +1 -32
- package/dist/server/components/segmented-control/index.css +5 -0
- package/dist/server/components/segmented-control/index.js +1 -32
- package/dist/server/components/segmented-control/segmented-control.schema.js +10 -36
- package/dist/server/components/segmented-control/segmented-control.variables.js +1 -32
- package/dist/server/components/select/index.js +1 -32
- package/dist/server/components/select/select.schema.js +8 -35
- package/dist/server/components/select/select.variables.js +1 -32
- package/dist/server/components/selection-popover/index.js +5 -35
- package/dist/server/components/selection-popover/selection-popover.schema.js +12 -37
- package/dist/server/components/selection-popover/selection-popover.variables.js +1 -32
- package/dist/server/components/share-card/index.js +45 -66
- package/dist/server/components/share-card/share-card.schema.js +5 -34
- package/dist/server/components/share-card/share-card.variables.js +1 -32
- package/dist/server/components/sheet/index.js +254 -64
- package/dist/server/components/sheet/sheet.schema.js +12 -36
- package/dist/server/components/sheet/sheet.variables.js +1 -32
- package/dist/server/components/shortcut-hint/index.js +1 -32
- package/dist/server/components/shortcut-hint/shortcut-hint.schema.js +3 -33
- package/dist/server/components/shortcut-hint/shortcut-hint.variables.js +1 -32
- package/dist/server/components/side-navigation/index.js +1 -32
- package/dist/server/components/side-navigation/side-navigation.schema.js +6 -34
- package/dist/server/components/side-navigation/side-navigation.variables.js +1 -32
- package/dist/server/components/side-navigation-group/index.js +1 -32
- package/dist/server/components/side-navigation-group/side-navigation-group.schema.js +10 -36
- package/dist/server/components/side-navigation-group/side-navigation-group.variables.js +1 -32
- package/dist/server/components/side-navigation-item/index.js +1 -32
- package/dist/server/components/side-navigation-item/side-navigation-item.schema.js +16 -38
- package/dist/server/components/side-navigation-item/side-navigation-item.variables.js +1 -32
- package/dist/server/components/sidebar/index.js +272 -79
- package/dist/server/components/sidebar/sidebar.schema.js +7 -35
- package/dist/server/components/sidebar/sidebar.variables.js +1 -32
- package/dist/server/components/skeleton/index.js +1 -32
- package/dist/server/components/skeleton/skeleton.schema.js +9 -36
- package/dist/server/components/skeleton/skeleton.variables.js +1 -32
- package/dist/server/components/skip-link/index.js +1 -32
- package/dist/server/components/skip-link/skip-link.schema.js +11 -33
- package/dist/server/components/skip-link/skip-link.variables.js +1 -32
- package/dist/server/components/slider/index.js +1 -32
- package/dist/server/components/slider/slider.schema.js +5 -34
- package/dist/server/components/slider/slider.variables.js +1 -32
- package/dist/server/components/sortable-list/index.js +1 -32
- package/dist/server/components/sortable-list/sortable-list.schema.js +27 -41
- package/dist/server/components/sortable-list/sortable-list.variables.js +1 -32
- package/dist/server/components/spectrogram/index.css +2 -1
- package/dist/server/components/spectrogram/index.js +1 -32
- package/dist/server/components/spectrogram/spectrogram.schema.js +51 -43
- package/dist/server/components/spectrogram/spectrogram.variables.js +1 -32
- package/dist/server/components/spectrum-chart/index.js +1 -32
- package/dist/server/components/spectrum-chart/spectrum-chart.schema.js +43 -42
- package/dist/server/components/spectrum-chart/spectrum-chart.variables.js +1 -32
- package/dist/server/components/speed-dial/index.css +111 -0
- package/dist/server/components/speed-dial/index.js +393 -0
- package/dist/server/components/speed-dial/speed-dial.schema.js +57 -0
- package/dist/server/components/speed-dial/speed-dial.variables.js +12 -0
- package/dist/server/components/speed-dial-action/index.js +171 -0
- package/dist/server/components/speed-dial-action/speed-dial-action.schema.js +52 -0
- package/dist/server/components/speed-dial-action/speed-dial-action.variables.js +12 -0
- package/dist/server/components/spinner/index.js +1 -32
- package/dist/server/components/spinner/spinner.schema.js +1 -32
- package/dist/server/components/spinner/spinner.variables.js +1 -32
- package/dist/server/components/stacked-list-item/index.js +1 -32
- package/dist/server/components/stacked-list-item/stacked-list-item.schema.js +20 -41
- package/dist/server/components/stacked-list-item/stacked-list-item.variables.js +1 -32
- package/dist/server/components/stat/index.js +1 -32
- package/dist/server/components/stat/stat.schema.js +7 -35
- package/dist/server/components/stat/stat.variables.js +1 -32
- package/dist/server/components/stat-group/index.js +1 -32
- package/dist/server/components/stat-group/stat-group.schema.js +4 -33
- package/dist/server/components/stat-group/stat-group.variables.js +1 -32
- package/dist/server/components/status-dot/index.css +1 -1
- package/dist/server/components/status-dot/index.js +1 -32
- package/dist/server/components/status-dot/status-dot.schema.js +1 -32
- package/dist/server/components/status-dot/status-dot.variables.js +1 -32
- package/dist/server/components/steps/index.css +13 -3
- package/dist/server/components/steps/index.js +1 -32
- package/dist/server/components/steps/steps.schema.js +4 -33
- package/dist/server/components/steps/steps.variables.js +1 -32
- package/dist/server/components/subscription-badge/index.js +2 -33
- package/dist/server/components/subscription-badge/subscription-badge.schema.js +1 -32
- package/dist/server/components/subscription-badge/subscription-badge.variables.js +1 -32
- package/dist/server/components/surface/index.js +1 -32
- package/dist/server/components/surface/surface.schema.js +11 -33
- package/dist/server/components/surface/surface.variables.js +1 -32
- package/dist/server/components/tab/index.js +1 -32
- package/dist/server/components/tab/tab.schema.js +6 -34
- package/dist/server/components/tab/tab.variables.js +1 -32
- package/dist/server/components/tab-list/index.js +1 -32
- package/dist/server/components/tab-list/tab-list.schema.js +4 -33
- package/dist/server/components/tab-list/tab-list.variables.js +1 -32
- package/dist/server/components/tab-panel/index.js +1 -32
- package/dist/server/components/tab-panel/tab-panel.schema.js +4 -33
- package/dist/server/components/tab-panel/tab-panel.variables.js +1 -32
- package/dist/server/components/table/index.css +14 -4
- package/dist/server/components/table/index.js +52 -38
- package/dist/server/components/table/table.schema.js +6 -34
- package/dist/server/components/table/table.variables.js +1 -32
- package/dist/server/components/table-body/index.js +1 -32
- package/dist/server/components/table-body/table-body.schema.js +4 -33
- package/dist/server/components/table-body/table-body.variables.js +1 -32
- package/dist/server/components/table-cell/index.js +1 -32
- package/dist/server/components/table-cell/table-cell.schema.js +11 -34
- package/dist/server/components/table-cell/table-cell.variables.js +1 -32
- package/dist/server/components/table-header/index.js +1 -32
- package/dist/server/components/table-header/table-header.schema.js +6 -34
- package/dist/server/components/table-header/table-header.variables.js +1 -32
- package/dist/server/components/table-header-cell/index.js +1 -32
- package/dist/server/components/table-header-cell/table-header-cell.schema.js +4 -33
- package/dist/server/components/table-header-cell/table-header-cell.variables.js +1 -32
- package/dist/server/components/table-row/index.js +9 -34
- package/dist/server/components/table-row/table-row.schema.js +8 -35
- package/dist/server/components/table-row/table-row.variables.js +1 -32
- package/dist/server/components/tabs/index.css +1 -1
- package/dist/server/components/tabs/index.js +1 -32
- package/dist/server/components/tabs/tabs.schema.js +4 -33
- package/dist/server/components/tabs/tabs.variables.js +1 -32
- package/dist/server/components/tag-input/index.css +2 -2
- package/dist/server/components/tag-input/index.js +1 -32
- package/dist/server/components/tag-input/tag-input.schema.js +5 -34
- package/dist/server/components/tag-input/tag-input.variables.js +1 -32
- package/dist/server/components/textarea/index.css +1 -0
- package/dist/server/components/textarea/index.js +1 -32
- package/dist/server/components/textarea/textarea.schema.js +13 -34
- package/dist/server/components/textarea/textarea.variables.js +1 -32
- package/dist/server/components/timeline/index.css +9 -7
- package/dist/server/components/timeline/index.js +2 -33
- package/dist/server/components/timeline/timeline.schema.js +17 -34
- package/dist/server/components/timeline/timeline.variables.js +1 -32
- package/dist/server/components/toast-region/index.js +31 -34
- package/dist/server/components/toast-region/toast-region.schema.js +3 -33
- package/dist/server/components/toast-region/toast-region.variables.js +1 -32
- package/dist/server/components/toggle/index.css +2 -2
- package/dist/server/components/toggle/index.js +1 -32
- package/dist/server/components/toggle/toggle.schema.js +1 -32
- package/dist/server/components/toggle/toggle.variables.js +1 -32
- package/dist/server/components/toolbar/index.js +1 -32
- package/dist/server/components/toolbar/toolbar.schema.js +12 -33
- package/dist/server/components/toolbar/toolbar.variables.js +1 -32
- package/dist/server/components/tooltip/index.css +3 -2
- package/dist/server/components/tooltip/index.js +1 -32
- package/dist/server/components/tooltip/tooltip.schema.js +10 -36
- package/dist/server/components/tooltip/tooltip.variables.js +1 -32
- package/dist/server/components/transfer-list/index.css +116 -0
- package/dist/server/components/transfer-list/index.js +326 -0
- package/dist/server/components/transfer-list/transfer-list.schema.js +72 -0
- package/dist/server/components/transfer-list/transfer-list.variables.js +12 -0
- package/dist/server/components/tree/index.css +186 -2
- package/dist/server/components/tree/index.js +2651 -157
- package/dist/server/components/tree/tree.schema.js +72 -35
- package/dist/server/components/tree/tree.variables.js +6 -33
- package/dist/server/components/tree-item/index.js +374 -49
- package/dist/server/components/tree-item/tree-item.schema.js +19 -37
- package/dist/server/components/tree-item/tree-item.variables.js +1 -32
- package/dist/server/components/typography/index.js +1 -32
- package/dist/server/components/typography/typography.schema.js +12 -33
- package/dist/server/components/typography/typography.variables.js +1 -32
- package/dist/server/components/virtual-list/index.css +30 -0
- package/dist/server/components/virtual-list/index.js +186 -0
- package/dist/server/components/virtual-list/virtual-list.schema.js +69 -0
- package/dist/server/components/virtual-list/virtual-list.variables.js +12 -0
- package/dist/server/components/visually-hidden/index.js +1 -32
- package/dist/server/components/visually-hidden/visually-hidden.schema.js +12 -33
- package/dist/server/components/visually-hidden/visually-hidden.variables.js +1 -32
- package/dist/server/components/waveform/index.js +1 -32
- package/dist/server/components/waveform/waveform.schema.js +34 -42
- package/dist/server/components/waveform/waveform.variables.js +1 -32
- package/dist/server/highlighters/shiki/index.js +9 -33
- package/dist/server/index.css +5383 -2634
- package/dist/server/index.js +14950 -12212
- package/dist/server/markdown/rendering/rehype-shiki-sync.d.ts +9 -0
- package/dist/server/markdown/rendering/rehype-shiki-sync.js +23 -10
- package/dist/server/markdown/rendering/render.js +8 -2
- package/dist/server/styles/base-guard.js +1 -32
- package/dist/styles/base-guard.js +1 -31
- package/dist/utilities/fixed-virtual-window.d.ts +27 -0
- package/package.json +465 -369
- package/src/_internal/anchored-overlay.svelte.ts +72 -48
- package/src/_internal/overlay.ts +27 -12
- package/src/_internal/toast-context.ts +8 -0
- package/src/_internal/tree-context.ts +18 -0
- package/src/_internal/tree-data.ts +91 -0
- package/src/_internal/tree-drag-controller.svelte.ts +328 -0
- package/src/_internal/tree-registry.svelte.ts +89 -4
- package/src/_internal/use-virtualizer.svelte.ts +226 -0
- package/src/_internal/virtual-item.ts +1 -0
- package/src/components/_timeline-item/index.ts +5 -0
- package/src/components/_tree-expand-all/index.ts +5 -0
- package/src/components/_tree-expand-all/tree-expand-all.svelte +83 -0
- package/src/components/_tree-expand-all/tree-expand-all.types.ts +15 -0
- package/src/components/_visually-hidden-live-region.svelte +13 -0
- package/src/components/access-gate/README.md +55 -0
- package/src/components/access-gate/access-gate-inline.svelte +415 -0
- package/src/components/access-gate/access-gate.css +129 -0
- package/src/components/access-gate/access-gate.examples.json +19 -0
- package/src/components/access-gate/access-gate.svelte +92 -0
- package/src/components/access-gate/access-gate.types.ts +46 -0
- package/src/components/access-gate/index.ts +6 -0
- package/src/components/accordion/README.md +5 -4
- package/src/components/accordion/accordion.examples.json +1 -1
- package/src/components/accordion/accordion.svelte +9 -2
- package/src/components/accordion-item/README.md +7 -6
- package/src/components/alert/README.md +8 -5
- package/src/components/alert-dialog/README.md +14 -14
- package/src/components/alert-dialog/alert-dialog.types.ts +7 -0
- package/src/components/area-chart/README.md +18 -16
- package/src/components/area-chart/area-chart.examples.json +1 -0
- package/src/components/area-chart/area-chart.types.ts +14 -0
- package/src/components/aspect-ratio/README.md +7 -6
- package/src/components/autocomplete/README.md +14 -14
- package/src/components/autocomplete/autocomplete.css +10 -3
- package/src/components/autocomplete/autocomplete.examples.json +3 -2
- package/src/components/autocomplete/autocomplete.types.ts +14 -0
- package/src/components/avatar/README.md +8 -8
- package/src/components/avatar/avatar.css +1 -0
- package/src/components/avatar/avatar.types.ts +6 -0
- package/src/components/avatar-group/README.md +11 -10
- package/src/components/avatar-group/avatar-group.svelte +16 -0
- package/src/components/avatar-group/avatar-group.types.ts +10 -0
- package/src/components/backdrop/README.md +9 -9
- package/src/components/badge/README.md +7 -6
- package/src/components/badge/badge.css +1 -1
- package/src/components/banner/README.md +3 -3
- package/src/components/bar-chart/README.md +16 -14
- package/src/components/bar-chart/bar-chart.css +4 -0
- package/src/components/bar-chart/bar-chart.svelte +4 -0
- package/src/components/bar-chart/bar-chart.types.ts +14 -0
- package/src/components/button/README.md +13 -10
- package/src/components/button/button.css +7 -0
- package/src/components/button/button.examples.json +1 -1
- package/src/components/button-group/README.md +7 -7
- package/src/components/button-group/button-group.types.ts +12 -1
- package/src/components/callout/README.md +2 -2
- package/src/components/capability-gate/README.md +14 -14
- package/src/components/capability-gate/capability-gate.css +5 -2
- package/src/components/card/README.md +3 -3
- package/src/components/card/card.types.ts +2 -0
- package/src/components/chart.types.ts +12 -0
- package/src/components/chat/README.md +149 -36
- package/src/components/chat/adapter/chat-adapter.ts +132 -0
- package/src/components/chat/adapter/index.ts +15 -0
- package/src/components/chat/chat.examples.json +26 -2
- package/src/components/chat/chat.types.ts +173 -0
- package/src/components/chat/container/chat-history-trigger.svelte +107 -0
- package/src/components/chat/container/chat-participant-typing.svelte +156 -0
- package/src/components/chat/container/chat-status-announcer.svelte +13 -19
- package/src/components/chat/container/chat.svelte +1326 -226
- package/src/components/chat/container/use-chat-keyboard-nav.svelte.ts +41 -8
- package/src/components/chat/container/use-chat-message-groups.svelte.ts +66 -0
- package/src/components/chat/container/use-chat-read-receipts.svelte.ts +103 -0
- package/src/components/chat/container/use-chat-reasoning-state.svelte.ts +93 -0
- package/src/components/chat/container/use-chat-typing-indicator.svelte.ts +200 -0
- package/src/components/chat/container/use-chat-virtualizer.svelte.ts +328 -0
- package/src/components/chat/index.ts +10 -1
- package/src/components/chat/message/chat-message-parts-renderer.svelte +152 -0
- package/src/components/chat/message/chat-message-parts.ts +163 -0
- package/src/components/chat/message/chat-message.svelte +112 -78
- package/src/components/chat/message/chat-read-receipt.svelte +115 -0
- package/src/components/chat/message/parts/image-part.svelte +27 -0
- package/src/components/chat/message/parts/markdown-part.svelte +23 -0
- package/src/components/chat/message/parts/reasoning-part.svelte +280 -0
- package/src/components/chat/message/parts/step-part.svelte +134 -0
- package/src/components/chat/message/parts/suggestion-part.svelte +99 -0
- package/src/components/chat/message/parts/tool-approval-part.svelte +301 -0
- package/src/components/chat/message/parts/tool-call-part.svelte +31 -0
- package/src/components/chat/message/parts/tool-result-part.svelte +74 -0
- package/src/components/chat/utilities/index.ts +17 -1
- package/src/components/chat/utilities/types.ts +265 -2
- package/src/components/chat/utilities/utilities.ts +325 -1
- package/src/components/chat-conversation-header/README.md +40 -0
- package/src/components/chat-conversation-header/chat-conversation-header.css +51 -0
- package/src/components/chat-conversation-header/chat-conversation-header.examples.json +13 -0
- package/src/components/chat-conversation-header/chat-conversation-header.svelte +83 -0
- package/src/components/chat-conversation-header/chat-conversation-header.types.ts +20 -0
- package/src/components/chat-conversation-header/index.ts +9 -0
- package/src/components/chat-conversation-list/README.md +45 -0
- package/src/components/chat-conversation-list/chat-conversation-list.css +114 -0
- package/src/components/chat-conversation-list/chat-conversation-list.examples.json +13 -0
- package/src/components/chat-conversation-list/chat-conversation-list.svelte +110 -0
- package/src/components/chat-conversation-list/chat-conversation-list.types.ts +18 -0
- package/src/components/chat-conversation-list/conversation-summary.ts +88 -0
- package/src/components/chat-conversation-list/index.ts +11 -0
- package/src/components/checkbox/README.md +1 -1
- package/src/components/checkbox/checkbox.examples.json +1 -1
- package/src/components/checkbox-group/README.md +1 -1
- package/src/components/chip/README.md +9 -9
- package/src/components/chip/chip.svelte +12 -0
- package/src/components/chip/chip.types.ts +22 -0
- package/src/components/choice-grid/README.md +2 -2
- package/src/components/choice-grid-item/README.md +1 -1
- package/src/components/click-away-listener/README.md +6 -6
- package/src/components/code-block/README.md +11 -9
- package/src/components/code-block/code-block.css +77 -47
- package/src/components/code-block/code-block.examples.json +6 -0
- package/src/components/code-block/code-block.svelte +32 -37
- package/src/components/code-block/code-block.types.ts +9 -6
- package/src/components/collapsible/README.md +9 -7
- package/src/components/color-field/README.md +1 -1
- package/src/components/color-field/color-field.examples.json +1 -1
- package/src/components/color-picker/README.md +2 -2
- package/src/components/color-swatch-picker/README.md +13 -13
- package/src/components/combobox/README.md +3 -3
- package/src/components/combobox/combobox.examples.json +1 -1
- package/src/components/combobox/combobox.svelte +64 -6
- package/src/components/command-item/README.md +11 -11
- package/src/components/command-menu/README.md +15 -15
- package/src/components/command-menu/command-menu.examples.json +1 -1
- package/src/components/command-palette/README.md +5 -5
- package/src/components/command-palette/command-palette.css +26 -12
- package/src/components/confirm-dialog/README.md +14 -14
- package/src/components/container/README.md +10 -9
- package/src/components/context-menu/README.md +9 -9
- package/src/components/context-menu/context-menu.context.ts +2 -0
- package/src/components/context-menu/context-menu.svelte +4 -0
- package/src/components/context-menu/context-menu.types.ts +5 -0
- package/src/components/context-menu-trigger/README.md +2 -2
- package/src/components/context-menu-trigger/context-menu-trigger.svelte +6 -0
- package/src/components/context-menu-trigger/context-menu-trigger.types.ts +1 -0
- package/src/components/copy-button/README.md +2 -2
- package/src/components/data-grid/README.md +80 -0
- package/src/components/data-grid/_internal/column-model.svelte.ts +218 -0
- package/src/components/data-grid/_internal/geometry.ts +87 -0
- package/src/components/data-grid/_internal/keyboard-model.ts +131 -0
- package/src/components/data-grid/_internal/selection-model.svelte.ts +168 -0
- package/src/components/data-grid/_internal/sort-model.ts +134 -0
- package/src/components/data-grid/_internal/virtualization-adapter.svelte.ts +505 -0
- package/src/components/data-grid/data-grid-selection-bind-probe.ts +15 -0
- package/src/components/data-grid/data-grid.css +283 -0
- package/src/components/data-grid/data-grid.examples.json +19 -0
- package/src/components/data-grid/data-grid.svelte +1030 -0
- package/src/components/data-grid/data-grid.types.ts +118 -0
- package/src/components/data-grid/index.ts +16 -0
- package/src/components/data-list/README.md +8 -8
- package/src/components/data-list/data-list.types.ts +1 -0
- package/src/components/data-table/README.md +23 -12
- package/src/components/data-table/data-table.css +25 -0
- package/src/components/data-table/data-table.examples.json +6 -0
- package/src/components/data-table/data-table.svelte +305 -13
- package/src/components/data-table/data-table.types.ts +35 -1
- package/src/components/date-range-field/README.md +141 -0
- package/src/components/date-range-field/date-range-field.css +211 -0
- package/src/components/date-range-field/date-range-field.examples.json +31 -0
- package/src/components/date-range-field/date-range-field.svelte +246 -0
- package/src/components/date-range-field/date-range-field.types.ts +78 -0
- package/src/components/date-range-field/index.ts +10 -0
- package/src/components/description-list/README.md +3 -3
- package/src/components/description-list/description-list.types.ts +1 -0
- package/src/components/diff-statistics/README.md +11 -11
- package/src/components/diff-statistics/diff-statistics.types.ts +5 -2
- package/src/components/diff-viewer/README.md +13 -13
- package/src/components/divider/divider.svelte +1 -1
- package/src/components/drawer/README.md +6 -6
- package/src/components/drawer/drawer.examples.json +1 -1
- package/src/components/drawer/drawer.svelte +39 -27
- package/src/components/dropdown/README.md +4 -4
- package/src/components/dropdown/dropdown.examples.json +1 -1
- package/src/components/dropdown/dropdown.types.ts +4 -0
- package/src/components/dropdown-group/README.md +6 -6
- package/src/components/dropdown-group/dropdown-group.types.ts +12 -1
- package/src/components/dropdown-item/README.md +4 -4
- package/src/components/dropdown-item/dropdown-item.types.ts +4 -0
- package/src/components/dropdown-label/README.md +1 -1
- package/src/components/dropdown-label/dropdown-label.types.ts +1 -0
- package/src/components/dropdown-menu/README.md +1 -1
- package/src/components/dropdown-menu/dropdown-menu.types.ts +1 -0
- package/src/components/dropdown-separator/README.md +3 -3
- package/src/components/dropdown-separator/dropdown-separator.types.ts +1 -0
- package/src/components/dropdown-trigger/README.md +1 -1
- package/src/components/dropdown-trigger/dropdown-trigger.types.ts +1 -0
- package/src/components/empty-state/README.md +3 -3
- package/src/components/empty-state/empty-state.types.ts +3 -0
- package/src/components/event-stream-viewer/README.md +147 -0
- package/src/components/event-stream-viewer/event-stream-viewer.css +474 -0
- package/src/components/event-stream-viewer/event-stream-viewer.examples.json +31 -0
- package/src/components/event-stream-viewer/event-stream-viewer.svelte +298 -0
- package/src/components/event-stream-viewer/event-stream-viewer.types.ts +85 -0
- package/src/components/event-stream-viewer/index.ts +11 -0
- package/src/components/faceted-filter-bar/README.md +170 -0
- package/src/components/faceted-filter-bar/faceted-filter-bar.css +121 -0
- package/src/components/faceted-filter-bar/faceted-filter-bar.examples.json +25 -0
- package/src/components/faceted-filter-bar/faceted-filter-bar.svelte +193 -0
- package/src/components/faceted-filter-bar/faceted-filter-bar.types.ts +98 -0
- package/src/components/faceted-filter-bar/index.ts +13 -0
- package/src/components/feed/README.md +2 -2
- package/src/components/feed/feed.types.ts +1 -0
- package/src/components/feed-event/README.md +4 -4
- package/src/components/feed-event/feed-event.types.ts +1 -0
- package/src/components/file-upload/README.md +15 -15
- package/src/components/floating-action-button/README.md +9 -8
- package/src/components/floating-action-button/floating-action-button.css +3 -1
- package/src/components/focus-trap/README.md +8 -7
- package/src/components/focus-trap/focus-trap.types.ts +5 -0
- package/src/components/focus-trap/focus-trap.utilities.svelte.ts +32 -3
- package/src/components/form-field/README.md +10 -10
- package/src/components/form-field/form-field.examples.json +1 -1
- package/src/components/form-section/README.md +9 -9
- package/src/components/grid/README.md +61 -0
- package/src/components/grid/grid.css +24 -0
- package/src/components/grid/grid.examples.json +19 -0
- package/src/components/grid/grid.svelte +62 -0
- package/src/components/grid/grid.types.ts +31 -0
- package/src/components/grid/index.ts +17 -0
- package/src/components/grid-item/README.md +50 -0
- package/src/components/grid-item/grid-item.svelte +55 -0
- package/src/components/grid-item/grid-item.types.ts +22 -0
- package/src/components/grid-item/index.ts +5 -0
- package/src/components/grid-list/README.md +2 -2
- package/src/components/grid-list-item/README.md +11 -11
- package/src/components/grid-list-item/grid-list-item.types.ts +3 -0
- package/src/components/hover-card/README.md +10 -10
- package/src/components/hover-card/hover-card.types.ts +8 -0
- package/src/components/image/README.md +4 -4
- package/src/components/input/README.md +10 -10
- package/src/components/input/input.examples.json +1 -1
- package/src/components/input/input.types.ts +12 -0
- package/src/components/invocation-rule-builder/README.md +128 -0
- package/src/components/invocation-rule-builder/index.ts +13 -0
- package/src/components/invocation-rule-builder/invocation-rule-builder.css +281 -0
- package/src/components/invocation-rule-builder/invocation-rule-builder.examples.json +19 -0
- package/src/components/invocation-rule-builder/invocation-rule-builder.svelte +545 -0
- package/src/components/invocation-rule-builder/invocation-rule-builder.types.ts +144 -0
- package/src/components/json-schema-editor/README.md +14 -14
- package/src/components/json-schema-editor/json-schema-editor.examples.json +1 -1
- package/src/components/json-schema-editor/json-schema-editor.types.ts +1 -0
- package/src/components/json-viewer/README.md +7 -7
- package/src/components/json-viewer/_json-viewer-node.svelte +7 -7
- package/src/components/json-viewer/json-viewer.css +6 -0
- package/src/components/json-viewer/json-viewer.examples.json +37 -0
- package/src/components/kanban-board/README.md +9 -9
- package/src/components/kanban-board/kanban-board.types.ts +4 -0
- package/src/components/kbd/README.md +6 -5
- package/src/components/keyboard-shortcuts/README.md +6 -6
- package/src/components/label/README.md +7 -7
- package/src/components/line-chart/README.md +17 -15
- package/src/components/line-chart/line-chart.examples.json +1 -0
- package/src/components/line-chart/line-chart.types.ts +13 -0
- package/src/components/link/README.md +2 -2
- package/src/components/load-more/README.md +13 -13
- package/src/components/markdown-editor/README.md +11 -11
- package/src/components/markdown-editor/markdown-editor.examples.json +1 -1
- package/src/components/masonry/README.md +49 -0
- package/src/components/masonry/index.ts +6 -0
- package/src/components/masonry/masonry.css +12 -0
- package/src/components/masonry/masonry.examples.json +13 -0
- package/src/components/masonry/masonry.svelte +39 -0
- package/src/components/masonry/masonry.types.ts +16 -0
- package/src/components/matrix-chart/README.md +17 -15
- package/src/components/matrix-chart/matrix-chart.css +4 -0
- package/src/components/matrix-chart/matrix-chart.svelte +19 -1
- package/src/components/matrix-chart/matrix-chart.types.ts +14 -1
- package/src/components/media-controls/README.md +14 -14
- package/src/components/menu-bar/README.md +7 -7
- package/src/components/menu-bar/menu-bar.svelte +9 -0
- package/src/components/menu-bar/menu-bar.types.ts +4 -0
- package/src/components/message/README.md +8 -8
- package/src/components/modal/README.md +16 -16
- package/src/components/modal/modal.examples.json +1 -1
- package/src/components/modal/modal.svelte +19 -1
- package/src/components/modal/modal.types.ts +8 -0
- package/src/components/navigation-bar/README.md +42 -12
- package/src/components/navigation-bar/index.ts +2 -0
- package/src/components/navigation-bar/navigation-bar.css +66 -0
- package/src/components/navigation-bar/navigation-bar.examples.json +6 -0
- package/src/components/navigation-bar/navigation-bar.svelte +16 -6
- package/src/components/navigation-bar/navigation-bar.types.ts +18 -0
- package/src/components/navigation-item/README.md +6 -6
- package/src/components/navigation-item/navigation-item.types.ts +4 -0
- package/src/components/number-input/README.md +13 -13
- package/src/components/number-input/number-input.types.ts +13 -0
- package/src/components/pagination/pagination.css +0 -1
- package/src/components/payload-inspector/README.md +147 -0
- package/src/components/payload-inspector/index.ts +10 -0
- package/src/components/payload-inspector/payload-inspector.css +173 -0
- package/src/components/payload-inspector/payload-inspector.examples.json +31 -0
- package/src/components/payload-inspector/payload-inspector.svelte +386 -0
- package/src/components/payload-inspector/payload-inspector.types.ts +72 -0
- package/src/components/permission-matrix/README.md +61 -0
- package/src/components/permission-matrix/index.ts +12 -0
- package/src/components/permission-matrix/permission-matrix.css +165 -0
- package/src/components/permission-matrix/permission-matrix.examples.json +13 -0
- package/src/components/permission-matrix/permission-matrix.svelte +181 -0
- package/src/components/permission-matrix/permission-matrix.types.ts +73 -0
- package/src/components/phone-input/README.md +18 -18
- package/src/components/phone-input/phone-input.examples.json +1 -1
- package/src/components/pin-input/README.md +19 -19
- package/src/components/pin-input/pin-input.examples.json +1 -1
- package/src/components/popover/README.md +19 -18
- package/src/components/popover/popover.svelte +10 -3
- package/src/components/popover/popover.types.ts +6 -0
- package/src/components/portal/README.md +7 -6
- package/src/components/portal/portal.types.ts +4 -0
- package/src/components/pricing-card/README.md +10 -9
- package/src/components/pricing-card/pricing-card.css +11 -3
- package/src/components/radio-group/README.md +12 -12
- package/src/components/radio-group/radio-group.examples.json +1 -1
- package/src/components/rating/README.md +18 -18
- package/src/components/rating/rating.examples.json +1 -1
- package/src/components/resizable-panels/resizable-panels.types.ts +4 -0
- package/src/components/review-editor/README.md +7 -7
- package/src/components/review-editor/index.ts +1 -1
- package/src/components/review-editor/review-editor-impl.svelte +5 -2
- package/src/components/review-editor/review-editor-selection-geometry.ts +3 -0
- package/src/components/review-editor/review-editor-selection-types.ts +68 -0
- package/src/components/review-editor/review-editor-selection.svelte.ts +2 -63
- package/src/components/review-editor/review-editor.examples.json +1 -1
- package/src/components/run-step-timeline/README.md +152 -0
- package/src/components/run-step-timeline/index.ts +11 -0
- package/src/components/run-step-timeline/run-step-timeline.css +215 -0
- package/src/components/run-step-timeline/run-step-timeline.examples.json +25 -0
- package/src/components/run-step-timeline/run-step-timeline.svelte +234 -0
- package/src/components/run-step-timeline/run-step-timeline.types.ts +123 -0
- package/src/components/schema-form/README.md +59 -0
- package/src/components/schema-form/index.ts +14 -0
- package/src/components/schema-form/schema-form-model.ts +409 -0
- package/src/components/schema-form/schema-form-validation.ts +199 -0
- package/src/components/schema-form/schema-form.css +180 -0
- package/src/components/schema-form/schema-form.examples.json +19 -0
- package/src/components/schema-form/schema-form.svelte +626 -0
- package/src/components/schema-form/schema-form.types.ts +36 -0
- package/src/components/scroll-area/README.md +1 -1
- package/src/components/search-field/README.md +4 -4
- package/src/components/search-field/search-field.examples.json +1 -1
- package/src/components/secret-value-field/README.md +85 -0
- package/src/components/secret-value-field/index.ts +6 -0
- package/src/components/secret-value-field/secret-value-field.css +147 -0
- package/src/components/secret-value-field/secret-value-field.examples.json +31 -0
- package/src/components/secret-value-field/secret-value-field.svelte +223 -0
- package/src/components/secret-value-field/secret-value-field.types.ts +47 -0
- package/src/components/section-heading/README.md +9 -9
- package/src/components/segment/README.md +9 -9
- package/src/components/segmented-control/README.md +4 -4
- package/src/components/segmented-control/segmented-control.css +17 -0
- package/src/components/segmented-control/segmented-control.types.ts +2 -0
- package/src/components/select/README.md +11 -11
- package/src/components/select/select.examples.json +7 -1
- package/src/components/selection-popover/README.md +13 -13
- package/src/components/selection-popover/selection-popover.examples.json +4 -4
- package/src/components/selection-popover/selection-popover.svelte +9 -2
- package/src/components/selection-popover/selection-popover.types.ts +8 -0
- package/src/components/share-card/README.md +12 -12
- package/src/components/share-card/share-card.svelte +159 -141
- package/src/components/sheet/README.md +6 -6
- package/src/components/sheet/sheet.svelte +6 -0
- package/src/components/shortcut-hint/README.md +7 -7
- package/src/components/side-navigation/README.md +5 -5
- package/src/components/side-navigation/side-navigation.examples.json +2 -2
- package/src/components/side-navigation-group/README.md +10 -10
- package/src/components/side-navigation-item/README.md +10 -10
- package/src/components/sidebar/README.md +3 -3
- package/src/components/skeleton/README.md +6 -6
- package/src/components/skeleton/skeleton.types.ts +4 -0
- package/src/components/skip-link/README.md +5 -4
- package/src/components/skip-link/skip-link.examples.json +1 -1
- package/src/components/slider/README.md +16 -16
- package/src/components/slider/slider.types.ts +2 -0
- package/src/components/sortable-list/README.md +12 -12
- package/src/components/sortable-list/sortable-list.types.ts +1 -0
- package/src/components/spectrogram/README.md +13 -11
- package/src/components/spectrogram/spectrogram.css +2 -1
- package/src/components/spectrogram/spectrogram.examples.json +12 -0
- package/src/components/spectrogram/spectrogram.types.ts +12 -1
- package/src/components/spectrum-chart/README.md +12 -10
- package/src/components/spectrum-chart/spectrum-chart.types.ts +9 -0
- package/src/components/speed-dial/README.md +54 -0
- package/src/components/speed-dial/index.ts +25 -0
- package/src/components/speed-dial/speed-dial.context.ts +16 -0
- package/src/components/speed-dial/speed-dial.css +112 -0
- package/src/components/speed-dial/speed-dial.examples.json +19 -0
- package/src/components/speed-dial/speed-dial.svelte +205 -0
- package/src/components/speed-dial/speed-dial.types.ts +59 -0
- package/src/components/speed-dial-action/README.md +51 -0
- package/src/components/speed-dial-action/index.ts +8 -0
- package/src/components/speed-dial-action/speed-dial-action.svelte +77 -0
- package/src/components/speed-dial-action/speed-dial-action.types.ts +50 -0
- package/src/components/stacked-list-item/README.md +21 -11
- package/src/components/stacked-list-item/stacked-list-item.examples.json +25 -0
- package/src/components/stacked-list-item/stacked-list-item.types.ts +4 -0
- package/src/components/stat/README.md +11 -11
- package/src/components/stat-group/README.md +1 -1
- package/src/components/stat-group/stat-group.examples.json +18 -0
- package/src/components/status-dot/status-dot.css +1 -1
- package/src/components/status-dot/status-dot.examples.json +2 -2
- package/src/components/steps/README.md +10 -3
- package/src/components/steps/steps.css +30 -10
- package/src/components/steps/steps.examples.json +12 -0
- package/src/components/subscription-badge/subscription-badge.examples.json +1 -1
- package/src/components/subscription-badge/subscription-badge.svelte +1 -1
- package/src/components/surface/README.md +6 -5
- package/src/components/surface/surface.types.ts +1 -0
- package/src/components/tab/README.md +8 -8
- package/src/components/tab-list/README.md +6 -6
- package/src/components/tab-panel/README.md +1 -1
- package/src/components/table/README.md +2 -2
- package/src/components/table/table.css +23 -4
- package/src/components/table/table.svelte +26 -1
- package/src/components/table/table.types.ts +2 -1
- package/src/components/table-body/README.md +4 -4
- package/src/components/table-cell/README.md +6 -6
- package/src/components/table-cell/table-cell.types.ts +4 -7
- package/src/components/table-header/README.md +2 -2
- package/src/components/table-header-cell/README.md +1 -1
- package/src/components/table-row/README.md +3 -3
- package/src/components/table-row/table-row.svelte +2 -1
- package/src/components/table-row/table-row.types.ts +4 -1
- package/src/components/tabs/README.md +1 -1
- package/src/components/tabs/tabs.css +1 -1
- package/src/components/tag-input/README.md +29 -29
- package/src/components/tag-input/tag-input.css +2 -2
- package/src/components/tag-input/tag-input.examples.json +7 -1
- package/src/components/tag-input/tag-input.svelte +18 -0
- package/src/components/textarea/README.md +4 -2
- package/src/components/textarea/textarea.css +1 -0
- package/src/components/textarea/textarea.examples.json +19 -1
- package/src/components/textarea/textarea.types.ts +10 -0
- package/src/components/timeline/README.md +12 -10
- package/src/components/timeline/timeline.css +40 -8
- package/src/components/timeline/timeline.examples.json +9 -3
- package/src/components/timeline/timeline.svelte +6 -3
- package/src/components/timeline/timeline.types.ts +2 -2
- package/src/components/toast-region/README.md +7 -7
- package/src/components/toast-region/toast-region.svelte +54 -1
- package/src/components/toggle/README.md +1 -1
- package/src/components/toggle/toggle.css +5 -2
- package/src/components/toggle/toggle.examples.json +7 -1
- package/src/components/toolbar/README.md +5 -4
- package/src/components/tooltip/README.md +7 -7
- package/src/components/tooltip/tooltip.css +11 -2
- package/src/components/tooltip/tooltip.types.ts +4 -0
- package/src/components/transfer-list/README.md +52 -0
- package/src/components/transfer-list/index.ts +10 -0
- package/src/components/transfer-list/transfer-list.css +114 -0
- package/src/components/transfer-list/transfer-list.examples.json +13 -0
- package/src/components/transfer-list/transfer-list.svelte +394 -0
- package/src/components/transfer-list/transfer-list.types.ts +55 -0
- package/src/components/tree/README.md +29 -15
- package/src/components/tree/index.ts +16 -3
- package/src/components/tree/tree.css +203 -3
- package/src/components/tree/tree.examples.json +12 -0
- package/src/components/tree/tree.svelte +981 -45
- package/src/components/tree/tree.types.ts +80 -3
- package/src/components/tree-item/README.md +14 -12
- package/src/components/tree-item/tree-item.svelte +410 -7
- package/src/components/tree-item/tree-item.types.ts +11 -3
- package/src/components/typography/README.md +8 -7
- package/src/components/virtual-list/README.md +70 -0
- package/src/components/virtual-list/index.ts +16 -0
- package/src/components/virtual-list/virtual-list.css +30 -0
- package/src/components/virtual-list/virtual-list.examples.json +13 -0
- package/src/components/virtual-list/virtual-list.svelte +192 -0
- package/src/components/virtual-list/virtual-list.types.ts +60 -0
- package/src/components/visually-hidden/README.md +6 -5
- package/src/components/waveform/README.md +13 -11
- package/src/components/waveform/waveform.examples.json +12 -0
- package/src/components/waveform/waveform.types.ts +9 -0
- package/src/highlighters/shiki/index.ts +11 -1
- package/src/index.ts +145 -3
- package/src/schema-types.ts +10 -0
- package/src/styles/all.css.d.ts +7 -0
- package/src/styles/base-guard.ts +95 -0
- package/src/styles/components/_dismiss-button.css +1 -1
- package/src/styles/components/_floating-surface.css +32 -2
- package/src/styles/components/_input-frame.css +29 -0
- package/src/styles/components.css +19 -2
- package/src/styles/foundation.css.d.ts +7 -0
- package/src/styles/index.css.d.ts +7 -0
- package/src/styles/tokens-base.css +110 -42
- package/src/styles/tokens.css.d.ts +7 -0
- package/src/styles/utilities.css.d.ts +7 -0
- package/src/utilities/clipboard.ts +2 -0
- package/src/utilities/fixed-virtual-window.ts +99 -0
- package/dist/components/accordion/accordion.fixture.svelte.d.ts +0 -8
- package/dist/components/dropdown/dropdown.fixture.svelte.d.ts +0 -7
- package/dist/components/experimental/timeline/index.d.ts +0 -2
- package/dist/components/experimental/timeline/index.js +0 -70
- package/dist/components/experimental/timeline-item/index.d.ts +0 -2
- package/dist/components/experimental/timeline-item/index.js +0 -70
- package/dist/components/modal/modal.fixture.svelte.d.ts +0 -9
- package/dist/components/navigation-item/navigation-item.fixture.svelte.d.ts +0 -7
- package/dist/components/segmented-control/segmented-control.fixture.svelte.d.ts +0 -7
- package/dist/components/side-navigation/side-navigation.fixture.svelte.d.ts +0 -8
- package/dist/components/table/table.fixture.svelte.d.ts +0 -4
- package/dist/components/tabs/tabs.fixture.svelte.d.ts +0 -7
- package/dist/components/timeline-item/index.d.ts +0 -5
- package/dist/components/timeline-item/index.js +0 -171
- package/dist/components/timeline-item/timeline-item.css +0 -7
- package/dist/components/timeline-item/timeline-item.schema.js +0 -103
- package/dist/components/timeline-item/timeline-item.variables.js +0 -61
- package/dist/server/components/experimental/timeline/index.js +0 -54
- package/dist/server/components/experimental/timeline-item/index.js +0 -54
- package/dist/server/components/timeline-item/index.css +0 -2
- package/dist/server/components/timeline-item/index.js +0 -108
- package/dist/server/components/timeline-item/timeline-item.schema.js +0 -85
- package/dist/server/components/timeline-item/timeline-item.variables.js +0 -43
- package/src/components/_radio/radio.schema.json +0 -36
- package/src/components/_radio/radio.schema.ts +0 -41
- package/src/components/_radio/radio.variables.json +0 -1
- package/src/components/_radio/radio.variables.ts +0 -3
- package/src/components/_tree-select-all/tree-select-all.css +0 -38
- package/src/components/_tree-select-all/tree-select-all.schema.json +0 -38
- package/src/components/_tree-select-all/tree-select-all.schema.ts +0 -43
- package/src/components/_tree-select-all/tree-select-all.variables.json +0 -1
- package/src/components/_tree-select-all/tree-select-all.variables.ts +0 -3
- package/src/components/accordion/accordion.fixture.svelte +0 -32
- package/src/components/accordion/accordion.schema.json +0 -16
- package/src/components/accordion/accordion.schema.ts +0 -20
- package/src/components/accordion/accordion.variables.json +0 -1
- package/src/components/accordion/accordion.variables.ts +0 -3
- package/src/components/accordion-item/accordion-item.schema.json +0 -25
- package/src/components/accordion-item/accordion-item.schema.ts +0 -29
- package/src/components/accordion-item/accordion-item.variables.json +0 -1
- package/src/components/accordion-item/accordion-item.variables.ts +0 -3
- package/src/components/alert/alert.schema.json +0 -21
- package/src/components/alert/alert.schema.ts +0 -26
- package/src/components/alert/alert.variables.json +0 -1
- package/src/components/alert/alert.variables.ts +0 -3
- package/src/components/alert-dialog/alert-dialog.schema.json +0 -45
- package/src/components/alert-dialog/alert-dialog.schema.ts +0 -49
- package/src/components/alert-dialog/alert-dialog.variables.json +0 -1
- package/src/components/alert-dialog/alert-dialog.variables.ts +0 -3
- package/src/components/area-chart/area-chart.schema.json +0 -117
- package/src/components/area-chart/area-chart.schema.ts +0 -121
- package/src/components/area-chart/area-chart.variables.json +0 -1
- package/src/components/area-chart/area-chart.variables.ts +0 -3
- package/src/components/aspect-ratio/aspect-ratio.schema.json +0 -133
- package/src/components/aspect-ratio/aspect-ratio.schema.ts +0 -137
- package/src/components/aspect-ratio/aspect-ratio.variables.json +0 -1
- package/src/components/aspect-ratio/aspect-ratio.variables.ts +0 -3
- package/src/components/autocomplete/autocomplete.schema.json +0 -65
- package/src/components/autocomplete/autocomplete.schema.ts +0 -69
- package/src/components/autocomplete/autocomplete.variables.json +0 -1
- package/src/components/autocomplete/autocomplete.variables.ts +0 -3
- package/src/components/avatar/avatar.schema.json +0 -35
- package/src/components/avatar/avatar.schema.ts +0 -40
- package/src/components/avatar/avatar.variables.json +0 -1
- package/src/components/avatar/avatar.variables.ts +0 -3
- package/src/components/avatar-group/avatar-group.schema.json +0 -64
- package/src/components/avatar-group/avatar-group.schema.ts +0 -69
- package/src/components/avatar-group/avatar-group.variables.json +0 -1
- package/src/components/avatar-group/avatar-group.variables.ts +0 -3
- package/src/components/backdrop/backdrop.schema.json +0 -42
- package/src/components/backdrop/backdrop.schema.ts +0 -49
- package/src/components/backdrop/backdrop.variables.json +0 -1
- package/src/components/backdrop/backdrop.variables.ts +0 -3
- package/src/components/badge/badge.schema.json +0 -26
- package/src/components/badge/badge.schema.ts +0 -31
- package/src/components/badge/badge.variables.json +0 -1
- package/src/components/badge/badge.variables.ts +0 -3
- package/src/components/banner/banner.schema.json +0 -35
- package/src/components/banner/banner.schema.ts +0 -40
- package/src/components/banner/banner.variables.json +0 -1
- package/src/components/banner/banner.variables.ts +0 -3
- package/src/components/bar-chart/bar-chart.schema.json +0 -118
- package/src/components/bar-chart/bar-chart.schema.ts +0 -125
- package/src/components/bar-chart/bar-chart.variables.json +0 -1
- package/src/components/bar-chart/bar-chart.variables.ts +0 -3
- package/src/components/breadcrumbs/breadcrumbs.schema.json +0 -21
- package/src/components/breadcrumbs/breadcrumbs.schema.ts +0 -25
- package/src/components/breadcrumbs/breadcrumbs.variables.json +0 -1
- package/src/components/breadcrumbs/breadcrumbs.variables.ts +0 -3
- package/src/components/button/button.schema.json +0 -44
- package/src/components/button/button.schema.ts +0 -48
- package/src/components/button/button.variables.json +0 -1
- package/src/components/button/button.variables.ts +0 -3
- package/src/components/button-group/button-group.schema.json +0 -29
- package/src/components/button-group/button-group.schema.ts +0 -33
- package/src/components/button-group/button-group.variables.json +0 -1
- package/src/components/button-group/button-group.variables.ts +0 -3
- package/src/components/callout/callout.schema.json +0 -31
- package/src/components/callout/callout.schema.ts +0 -37
- package/src/components/callout/callout.variables.json +0 -1
- package/src/components/callout/callout.variables.ts +0 -3
- package/src/components/capability-gate/capability-gate.schema.json +0 -68
- package/src/components/capability-gate/capability-gate.schema.ts +0 -72
- package/src/components/capability-gate/capability-gate.variables.json +0 -1
- package/src/components/capability-gate/capability-gate.variables.ts +0 -3
- package/src/components/card/card.schema.json +0 -57
- package/src/components/card/card.schema.ts +0 -63
- package/src/components/card/card.variables.json +0 -1
- package/src/components/card/card.variables.ts +0 -3
- package/src/components/chat/chat.schema.json +0 -131
- package/src/components/chat/chat.schema.ts +0 -135
- package/src/components/chat/chat.variables.json +0 -1
- package/src/components/chat/chat.variables.ts +0 -3
- package/src/components/checkbox/checkbox.schema.json +0 -43
- package/src/components/checkbox/checkbox.schema.ts +0 -48
- package/src/components/checkbox/checkbox.variables.json +0 -1
- package/src/components/checkbox/checkbox.variables.ts +0 -3
- package/src/components/checkbox-group/checkbox-group.schema.json +0 -43
- package/src/components/checkbox-group/checkbox-group.schema.ts +0 -51
- package/src/components/checkbox-group/checkbox-group.variables.json +0 -1
- package/src/components/checkbox-group/checkbox-group.variables.ts +0 -3
- package/src/components/chip/chip.schema.json +0 -51
- package/src/components/chip/chip.schema.ts +0 -55
- package/src/components/chip/chip.variables.json +0 -1
- package/src/components/chip/chip.variables.ts +0 -3
- package/src/components/choice-grid/choice-grid.schema.json +0 -61
- package/src/components/choice-grid/choice-grid.schema.ts +0 -70
- package/src/components/choice-grid/choice-grid.variables.json +0 -1
- package/src/components/choice-grid/choice-grid.variables.ts +0 -3
- package/src/components/choice-grid-item/choice-grid-item.schema.json +0 -32
- package/src/components/choice-grid-item/choice-grid-item.schema.ts +0 -38
- package/src/components/choice-grid-item/choice-grid-item.variables.json +0 -1
- package/src/components/choice-grid-item/choice-grid-item.variables.ts +0 -3
- package/src/components/click-away-listener/click-away-listener.schema.json +0 -27
- package/src/components/click-away-listener/click-away-listener.schema.ts +0 -32
- package/src/components/click-away-listener/click-away-listener.variables.json +0 -1
- package/src/components/click-away-listener/click-away-listener.variables.ts +0 -3
- package/src/components/code-block/code-block.schema.json +0 -36
- package/src/components/code-block/code-block.schema.ts +0 -42
- package/src/components/code-block/code-block.variables.json +0 -1
- package/src/components/code-block/code-block.variables.ts +0 -3
- package/src/components/collapsible/collapsible.schema.json +0 -30
- package/src/components/collapsible/collapsible.schema.ts +0 -36
- package/src/components/collapsible/collapsible.variables.json +0 -1
- package/src/components/collapsible/collapsible.variables.ts +0 -3
- package/src/components/color-field/color-field.schema.json +0 -79
- package/src/components/color-field/color-field.schema.ts +0 -90
- package/src/components/color-field/color-field.variables.json +0 -1
- package/src/components/color-field/color-field.variables.ts +0 -3
- package/src/components/color-picker/color-picker.schema.json +0 -54
- package/src/components/color-picker/color-picker.schema.ts +0 -60
- package/src/components/color-picker/color-picker.variables.json +0 -1
- package/src/components/color-picker/color-picker.variables.ts +0 -3
- package/src/components/color-swatch-picker/color-swatch-picker.schema.json +0 -56
- package/src/components/color-swatch-picker/color-swatch-picker.schema.ts +0 -62
- package/src/components/color-swatch-picker/color-swatch-picker.variables.json +0 -1
- package/src/components/color-swatch-picker/color-swatch-picker.variables.ts +0 -3
- package/src/components/combobox/combobox.schema.json +0 -64
- package/src/components/combobox/combobox.schema.ts +0 -69
- package/src/components/combobox/combobox.variables.json +0 -1
- package/src/components/combobox/combobox.variables.ts +0 -3
- package/src/components/command-item/command-item.schema.json +0 -48
- package/src/components/command-item/command-item.schema.ts +0 -52
- package/src/components/command-item/command-item.variables.json +0 -1
- package/src/components/command-item/command-item.variables.ts +0 -3
- package/src/components/command-menu/command-menu.schema.json +0 -73
- package/src/components/command-menu/command-menu.schema.ts +0 -77
- package/src/components/command-menu/command-menu.variables.json +0 -1
- package/src/components/command-menu/command-menu.variables.ts +0 -3
- package/src/components/command-palette/command-palette.schema.json +0 -52
- package/src/components/command-palette/command-palette.schema.ts +0 -58
- package/src/components/command-palette/command-palette.variables.json +0 -1
- package/src/components/command-palette/command-palette.variables.ts +0 -3
- package/src/components/confirm-dialog/confirm-dialog.schema.json +0 -52
- package/src/components/confirm-dialog/confirm-dialog.schema.ts +0 -60
- package/src/components/confirm-dialog/confirm-dialog.variables.json +0 -1
- package/src/components/confirm-dialog/confirm-dialog.variables.ts +0 -3
- package/src/components/connection-indicator/connection-indicator.schema.json +0 -20
- package/src/components/connection-indicator/connection-indicator.schema.ts +0 -24
- package/src/components/connection-indicator/connection-indicator.variables.json +0 -1
- package/src/components/connection-indicator/connection-indicator.variables.ts +0 -3
- package/src/components/container/container.schema.json +0 -130
- package/src/components/container/container.schema.ts +0 -134
- package/src/components/container/container.variables.json +0 -1
- package/src/components/container/container.variables.ts +0 -3
- package/src/components/context-menu/context-menu.schema.json +0 -44
- package/src/components/context-menu/context-menu.schema.ts +0 -48
- package/src/components/context-menu/context-menu.variables.json +0 -1
- package/src/components/context-menu/context-menu.variables.ts +0 -3
- package/src/components/context-menu-trigger/context-menu-trigger.schema.json +0 -18
- package/src/components/context-menu-trigger/context-menu-trigger.schema.ts +0 -22
- package/src/components/context-menu-trigger/context-menu-trigger.variables.json +0 -1
- package/src/components/context-menu-trigger/context-menu-trigger.variables.ts +0 -3
- package/src/components/copy-button/copy-button.schema.json +0 -44
- package/src/components/copy-button/copy-button.schema.ts +0 -50
- package/src/components/copy-button/copy-button.variables.json +0 -1
- package/src/components/copy-button/copy-button.variables.ts +0 -3
- package/src/components/data-list/data-list.schema.json +0 -34
- package/src/components/data-list/data-list.schema.ts +0 -39
- package/src/components/data-list/data-list.variables.json +0 -1
- package/src/components/data-list/data-list.variables.ts +0 -3
- package/src/components/data-table/data-table.schema.json +0 -43
- package/src/components/data-table/data-table.schema.ts +0 -50
- package/src/components/data-table/data-table.variables.json +0 -1
- package/src/components/data-table/data-table.variables.ts +0 -3
- package/src/components/description-list/description-list.schema.json +0 -26
- package/src/components/description-list/description-list.schema.ts +0 -31
- package/src/components/description-list/description-list.variables.json +0 -1
- package/src/components/description-list/description-list.variables.ts +0 -3
- package/src/components/diff-statistics/diff-statistics.schema.json +0 -36
- package/src/components/diff-statistics/diff-statistics.schema.ts +0 -41
- package/src/components/diff-statistics/diff-statistics.variables.json +0 -1
- package/src/components/diff-statistics/diff-statistics.variables.ts +0 -3
- package/src/components/diff-viewer/diff-viewer.schema.json +0 -56
- package/src/components/diff-viewer/diff-viewer.schema.ts +0 -62
- package/src/components/diff-viewer/diff-viewer.variables.json +0 -1
- package/src/components/diff-viewer/diff-viewer.variables.ts +0 -3
- package/src/components/divider/divider.schema.json +0 -31
- package/src/components/divider/divider.schema.ts +0 -35
- package/src/components/divider/divider.variables.json +0 -1
- package/src/components/divider/divider.variables.ts +0 -3
- package/src/components/drawer/drawer.schema.json +0 -52
- package/src/components/drawer/drawer.schema.ts +0 -58
- package/src/components/drawer/drawer.variables.json +0 -1
- package/src/components/drawer/drawer.variables.ts +0 -3
- package/src/components/dropdown/dropdown.fixture.svelte +0 -28
- package/src/components/dropdown/dropdown.schema.json +0 -31
- package/src/components/dropdown/dropdown.schema.ts +0 -35
- package/src/components/dropdown/dropdown.variables.json +0 -1
- package/src/components/dropdown/dropdown.variables.ts +0 -3
- package/src/components/dropdown-group/dropdown-group.schema.json +0 -25
- package/src/components/dropdown-group/dropdown-group.schema.ts +0 -29
- package/src/components/dropdown-group/dropdown-group.variables.json +0 -1
- package/src/components/dropdown-group/dropdown-group.variables.ts +0 -3
- package/src/components/dropdown-item/dropdown-item.schema.json +0 -39
- package/src/components/dropdown-item/dropdown-item.schema.ts +0 -45
- package/src/components/dropdown-item/dropdown-item.variables.json +0 -1
- package/src/components/dropdown-item/dropdown-item.variables.ts +0 -3
- package/src/components/dropdown-label/dropdown-label.schema.json +0 -18
- package/src/components/dropdown-label/dropdown-label.schema.ts +0 -22
- package/src/components/dropdown-label/dropdown-label.variables.json +0 -1
- package/src/components/dropdown-label/dropdown-label.variables.ts +0 -3
- package/src/components/dropdown-menu/dropdown-menu.schema.json +0 -18
- package/src/components/dropdown-menu/dropdown-menu.schema.ts +0 -22
- package/src/components/dropdown-menu/dropdown-menu.variables.json +0 -1
- package/src/components/dropdown-menu/dropdown-menu.variables.ts +0 -3
- package/src/components/dropdown-separator/dropdown-separator.schema.json +0 -10
- package/src/components/dropdown-separator/dropdown-separator.schema.ts +0 -14
- package/src/components/dropdown-separator/dropdown-separator.variables.json +0 -1
- package/src/components/dropdown-separator/dropdown-separator.variables.ts +0 -3
- package/src/components/dropdown-trigger/dropdown-trigger.schema.json +0 -22
- package/src/components/dropdown-trigger/dropdown-trigger.schema.ts +0 -26
- package/src/components/dropdown-trigger/dropdown-trigger.variables.json +0 -1
- package/src/components/dropdown-trigger/dropdown-trigger.variables.ts +0 -3
- package/src/components/empty-state/empty-state.schema.json +0 -34
- package/src/components/empty-state/empty-state.schema.ts +0 -38
- package/src/components/empty-state/empty-state.variables.json +0 -1
- package/src/components/empty-state/empty-state.variables.ts +0 -3
- package/src/components/experimental/timeline/index.ts +0 -25
- package/src/components/experimental/timeline-item/index.ts +0 -17
- package/src/components/feed/feed.schema.json +0 -22
- package/src/components/feed/feed.schema.ts +0 -27
- package/src/components/feed/feed.variables.json +0 -1
- package/src/components/feed/feed.variables.ts +0 -3
- package/src/components/feed-event/feed-event.schema.json +0 -39
- package/src/components/feed-event/feed-event.schema.ts +0 -45
- package/src/components/feed-event/feed-event.variables.json +0 -1
- package/src/components/feed-event/feed-event.variables.ts +0 -3
- package/src/components/file-upload/file-upload.schema.json +0 -63
- package/src/components/file-upload/file-upload.schema.ts +0 -67
- package/src/components/file-upload/file-upload.variables.json +0 -6
- package/src/components/file-upload/file-upload.variables.ts +0 -8
- package/src/components/floating-action-button/floating-action-button.schema.json +0 -35
- package/src/components/floating-action-button/floating-action-button.schema.ts +0 -39
- package/src/components/floating-action-button/floating-action-button.variables.json +0 -1
- package/src/components/floating-action-button/floating-action-button.variables.ts +0 -3
- package/src/components/focus-trap/focus-trap.schema.json +0 -36
- package/src/components/focus-trap/focus-trap.schema.ts +0 -40
- package/src/components/focus-trap/focus-trap.variables.json +0 -1
- package/src/components/focus-trap/focus-trap.variables.ts +0 -3
- package/src/components/form-field/form-field.schema.json +0 -44
- package/src/components/form-field/form-field.schema.ts +0 -50
- package/src/components/form-field/form-field.variables.json +0 -1
- package/src/components/form-field/form-field.variables.ts +0 -3
- package/src/components/form-section/form-section.schema.json +0 -39
- package/src/components/form-section/form-section.schema.ts +0 -43
- package/src/components/form-section/form-section.variables.json +0 -1
- package/src/components/form-section/form-section.variables.ts +0 -3
- package/src/components/grid-list/grid-list.schema.json +0 -23
- package/src/components/grid-list/grid-list.schema.ts +0 -28
- package/src/components/grid-list/grid-list.variables.json +0 -1
- package/src/components/grid-list/grid-list.variables.ts +0 -3
- package/src/components/grid-list-item/grid-list-item.schema.json +0 -51
- package/src/components/grid-list-item/grid-list-item.schema.ts +0 -55
- package/src/components/grid-list-item/grid-list-item.variables.json +0 -1
- package/src/components/grid-list-item/grid-list-item.variables.ts +0 -3
- package/src/components/hover-card/hover-card.schema.json +0 -64
- package/src/components/hover-card/hover-card.schema.ts +0 -68
- package/src/components/hover-card/hover-card.variables.json +0 -1
- package/src/components/hover-card/hover-card.variables.ts +0 -3
- package/src/components/image/image.schema.json +0 -60
- package/src/components/image/image.schema.ts +0 -68
- package/src/components/image/image.variables.json +0 -1
- package/src/components/image/image.variables.ts +0 -3
- package/src/components/input/input.schema.json +0 -55
- package/src/components/input/input.schema.ts +0 -59
- package/src/components/input/input.variables.json +0 -1
- package/src/components/input/input.variables.ts +0 -3
- package/src/components/json-schema-editor/json-schema-editor.schema.json +0 -59
- package/src/components/json-schema-editor/json-schema-editor.schema.ts +0 -63
- package/src/components/json-schema-editor/json-schema-editor.variables.json +0 -1
- package/src/components/json-schema-editor/json-schema-editor.variables.ts +0 -3
- package/src/components/json-viewer/json-viewer.schema.json +0 -31
- package/src/components/json-viewer/json-viewer.schema.ts +0 -36
- package/src/components/json-viewer/json-viewer.variables.json +0 -1
- package/src/components/json-viewer/json-viewer.variables.ts +0 -3
- package/src/components/kanban-board/kanban-board.schema.json +0 -55
- package/src/components/kanban-board/kanban-board.schema.ts +0 -59
- package/src/components/kanban-board/kanban-board.variables.json +0 -6
- package/src/components/kanban-board/kanban-board.variables.ts +0 -8
- package/src/components/kbd/kbd.schema.json +0 -20
- package/src/components/kbd/kbd.schema.ts +0 -24
- package/src/components/kbd/kbd.variables.json +0 -1
- package/src/components/kbd/kbd.variables.ts +0 -3
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.schema.json +0 -27
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.schema.ts +0 -31
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.variables.json +0 -1
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.variables.ts +0 -3
- package/src/components/label/label.schema.json +0 -32
- package/src/components/label/label.schema.ts +0 -37
- package/src/components/label/label.variables.json +0 -1
- package/src/components/label/label.variables.ts +0 -3
- package/src/components/line-chart/line-chart.schema.json +0 -114
- package/src/components/line-chart/line-chart.schema.ts +0 -118
- package/src/components/line-chart/line-chart.variables.json +0 -1
- package/src/components/line-chart/line-chart.variables.ts +0 -3
- package/src/components/link/link.schema.json +0 -58
- package/src/components/link/link.schema.ts +0 -68
- package/src/components/link/link.variables.json +0 -1
- package/src/components/link/link.variables.ts +0 -3
- package/src/components/load-more/load-more.schema.json +0 -55
- package/src/components/load-more/load-more.schema.ts +0 -59
- package/src/components/load-more/load-more.variables.json +0 -1
- package/src/components/load-more/load-more.variables.ts +0 -3
- package/src/components/markdown-editor/markdown-editor.schema.json +0 -100
- package/src/components/markdown-editor/markdown-editor.schema.ts +0 -105
- package/src/components/markdown-editor/markdown-editor.variables.json +0 -1
- package/src/components/markdown-editor/markdown-editor.variables.ts +0 -3
- package/src/components/matrix-chart/matrix-chart.schema.json +0 -63
- package/src/components/matrix-chart/matrix-chart.schema.ts +0 -67
- package/src/components/matrix-chart/matrix-chart.variables.json +0 -1
- package/src/components/matrix-chart/matrix-chart.variables.ts +0 -3
- package/src/components/media-controls/media-controls.schema.json +0 -65
- package/src/components/media-controls/media-controls.schema.ts +0 -69
- package/src/components/media-controls/media-controls.variables.json +0 -1
- package/src/components/media-controls/media-controls.variables.ts +0 -3
- package/src/components/menu-bar/menu-bar.schema.json +0 -27
- package/src/components/menu-bar/menu-bar.schema.ts +0 -31
- package/src/components/menu-bar/menu-bar.variables.json +0 -1
- package/src/components/menu-bar/menu-bar.variables.ts +0 -3
- package/src/components/message/message.schema.json +0 -36
- package/src/components/message/message.schema.ts +0 -42
- package/src/components/message/message.variables.json +0 -1
- package/src/components/message/message.variables.ts +0 -3
- package/src/components/modal/modal.fixture.svelte +0 -89
- package/src/components/modal/modal.schema.json +0 -68
- package/src/components/modal/modal.schema.ts +0 -8
- package/src/components/modal/modal.variables.json +0 -1
- package/src/components/modal/modal.variables.ts +0 -3
- package/src/components/navigation-bar/navigation-bar.schema.json +0 -39
- package/src/components/navigation-bar/navigation-bar.schema.ts +0 -44
- package/src/components/navigation-bar/navigation-bar.variables.json +0 -1
- package/src/components/navigation-bar/navigation-bar.variables.ts +0 -3
- package/src/components/navigation-item/navigation-item.fixture.svelte +0 -21
- package/src/components/navigation-item/navigation-item.schema.json +0 -39
- package/src/components/navigation-item/navigation-item.schema.ts +0 -45
- package/src/components/navigation-item/navigation-item.variables.json +0 -1
- package/src/components/navigation-item/navigation-item.variables.ts +0 -3
- package/src/components/number-input/number-input.schema.json +0 -77
- package/src/components/number-input/number-input.schema.ts +0 -81
- package/src/components/number-input/number-input.variables.json +0 -1
- package/src/components/number-input/number-input.variables.ts +0 -3
- package/src/components/pagination/pagination.schema.json +0 -24
- package/src/components/pagination/pagination.schema.ts +0 -28
- package/src/components/pagination/pagination.variables.json +0 -1
- package/src/components/pagination/pagination.variables.ts +0 -3
- package/src/components/phone-input/phone-input.schema.json +0 -571
- package/src/components/phone-input/phone-input.schema.ts +0 -577
- package/src/components/phone-input/phone-input.variables.json +0 -1
- package/src/components/phone-input/phone-input.variables.ts +0 -3
- package/src/components/pin-input/pin-input.schema.json +0 -80
- package/src/components/pin-input/pin-input.schema.ts +0 -86
- package/src/components/pin-input/pin-input.variables.json +0 -1
- package/src/components/pin-input/pin-input.variables.ts +0 -3
- package/src/components/popover/popover.schema.json +0 -80
- package/src/components/popover/popover.schema.ts +0 -84
- package/src/components/popover/popover.variables.json +0 -1
- package/src/components/popover/popover.variables.ts +0 -3
- package/src/components/portal/portal.schema.json +0 -26
- package/src/components/portal/portal.schema.ts +0 -30
- package/src/components/portal/portal.variables.json +0 -1
- package/src/components/portal/portal.variables.ts +0 -3
- package/src/components/pricing-card/pricing-card.schema.json +0 -40
- package/src/components/pricing-card/pricing-card.schema.ts +0 -44
- package/src/components/pricing-card/pricing-card.variables.json +0 -1
- package/src/components/pricing-card/pricing-card.variables.ts +0 -3
- package/src/components/progress/progress.schema.json +0 -39
- package/src/components/progress/progress.schema.ts +0 -46
- package/src/components/progress/progress.variables.json +0 -1
- package/src/components/progress/progress.variables.ts +0 -3
- package/src/components/radio-group/radio-group.schema.json +0 -52
- package/src/components/radio-group/radio-group.schema.ts +0 -58
- package/src/components/radio-group/radio-group.variables.json +0 -1
- package/src/components/radio-group/radio-group.variables.ts +0 -3
- package/src/components/rating/rating.schema.json +0 -76
- package/src/components/rating/rating.schema.ts +0 -83
- package/src/components/rating/rating.variables.json +0 -1
- package/src/components/rating/rating.variables.ts +0 -3
- package/src/components/resizable-panels/resizable-panels.schema.json +0 -47
- package/src/components/resizable-panels/resizable-panels.schema.ts +0 -51
- package/src/components/resizable-panels/resizable-panels.variables.json +0 -1
- package/src/components/resizable-panels/resizable-panels.variables.ts +0 -3
- package/src/components/review-editor/review-editor.schema.json +0 -76
- package/src/components/review-editor/review-editor.schema.ts +0 -81
- package/src/components/review-editor/review-editor.variables.json +0 -1
- package/src/components/review-editor/review-editor.variables.ts +0 -3
- package/src/components/scroll-area/scroll-area.schema.json +0 -43
- package/src/components/scroll-area/scroll-area.schema.ts +0 -49
- package/src/components/scroll-area/scroll-area.variables.json +0 -1
- package/src/components/scroll-area/scroll-area.variables.ts +0 -3
- package/src/components/search-field/search-field.schema.json +0 -59
- package/src/components/search-field/search-field.schema.ts +0 -64
- package/src/components/search-field/search-field.variables.json +0 -1
- package/src/components/search-field/search-field.variables.ts +0 -3
- package/src/components/section-heading/section-heading.schema.json +0 -40
- package/src/components/section-heading/section-heading.schema.ts +0 -46
- package/src/components/section-heading/section-heading.variables.json +0 -1
- package/src/components/section-heading/section-heading.variables.ts +0 -3
- package/src/components/segment/segment.schema.json +0 -39
- package/src/components/segment/segment.schema.ts +0 -44
- package/src/components/segment/segment.variables.json +0 -1
- package/src/components/segment/segment.variables.ts +0 -3
- package/src/components/segmented-control/segmented-control.fixture.svelte +0 -31
- package/src/components/segmented-control/segmented-control.schema.json +0 -75
- package/src/components/segmented-control/segmented-control.schema.ts +0 -82
- package/src/components/segmented-control/segmented-control.variables.json +0 -1
- package/src/components/segmented-control/segmented-control.variables.ts +0 -3
- package/src/components/select/select.schema.json +0 -48
- package/src/components/select/select.schema.ts +0 -53
- package/src/components/select/select.variables.json +0 -1
- package/src/components/select/select.variables.ts +0 -3
- package/src/components/selection-popover/selection-popover.schema.json +0 -44
- package/src/components/selection-popover/selection-popover.schema.ts +0 -48
- package/src/components/selection-popover/selection-popover.variables.json +0 -1
- package/src/components/selection-popover/selection-popover.variables.ts +0 -3
- package/src/components/share-card/share-card.schema.json +0 -53
- package/src/components/share-card/share-card.schema.ts +0 -57
- package/src/components/share-card/share-card.variables.json +0 -1
- package/src/components/share-card/share-card.variables.ts +0 -3
- package/src/components/sheet/sheet.schema.json +0 -48
- package/src/components/sheet/sheet.schema.ts +0 -55
- package/src/components/sheet/sheet.variables.json +0 -1
- package/src/components/sheet/sheet.variables.ts +0 -3
- package/src/components/shortcut-hint/shortcut-hint.schema.json +0 -36
- package/src/components/shortcut-hint/shortcut-hint.schema.ts +0 -40
- package/src/components/shortcut-hint/shortcut-hint.variables.json +0 -1
- package/src/components/shortcut-hint/shortcut-hint.variables.ts +0 -3
- package/src/components/side-navigation/side-navigation.fixture.svelte +0 -39
- package/src/components/side-navigation/side-navigation.schema.json +0 -24
- package/src/components/side-navigation/side-navigation.schema.ts +0 -29
- package/src/components/side-navigation/side-navigation.variables.json +0 -1
- package/src/components/side-navigation/side-navigation.variables.ts +0 -3
- package/src/components/side-navigation-group/side-navigation-group.schema.json +0 -44
- package/src/components/side-navigation-group/side-navigation-group.schema.ts +0 -49
- package/src/components/side-navigation-group/side-navigation-group.variables.json +0 -1
- package/src/components/side-navigation-group/side-navigation-group.variables.ts +0 -3
- package/src/components/side-navigation-item/side-navigation-item.schema.json +0 -39
- package/src/components/side-navigation-item/side-navigation-item.schema.ts +0 -44
- package/src/components/side-navigation-item/side-navigation-item.variables.json +0 -1
- package/src/components/side-navigation-item/side-navigation-item.variables.ts +0 -3
- package/src/components/sidebar/sidebar.schema.json +0 -35
- package/src/components/sidebar/sidebar.schema.ts +0 -41
- package/src/components/sidebar/sidebar.variables.json +0 -1
- package/src/components/sidebar/sidebar.variables.ts +0 -3
- package/src/components/skeleton/skeleton.schema.json +0 -19
- package/src/components/skeleton/skeleton.schema.ts +0 -23
- package/src/components/skeleton/skeleton.variables.json +0 -1
- package/src/components/skeleton/skeleton.variables.ts +0 -3
- package/src/components/skip-link/skip-link.schema.json +0 -16
- package/src/components/skip-link/skip-link.schema.ts +0 -20
- package/src/components/skip-link/skip-link.variables.json +0 -1
- package/src/components/skip-link/skip-link.variables.ts +0 -3
- package/src/components/slider/slider.schema.json +0 -80
- package/src/components/slider/slider.schema.ts +0 -85
- package/src/components/slider/slider.variables.json +0 -1
- package/src/components/slider/slider.variables.ts +0 -3
- package/src/components/sortable-list/sortable-list.schema.json +0 -50
- package/src/components/sortable-list/sortable-list.schema.ts +0 -54
- package/src/components/sortable-list/sortable-list.variables.json +0 -1
- package/src/components/sortable-list/sortable-list.variables.ts +0 -3
- package/src/components/spectrogram/spectrogram.schema.json +0 -43
- package/src/components/spectrogram/spectrogram.schema.ts +0 -47
- package/src/components/spectrogram/spectrogram.variables.json +0 -1
- package/src/components/spectrogram/spectrogram.variables.ts +0 -3
- package/src/components/spectrum-chart/spectrum-chart.schema.json +0 -37
- package/src/components/spectrum-chart/spectrum-chart.schema.ts +0 -41
- package/src/components/spectrum-chart/spectrum-chart.variables.json +0 -1
- package/src/components/spectrum-chart/spectrum-chart.variables.ts +0 -3
- package/src/components/spinner/spinner.schema.json +0 -21
- package/src/components/spinner/spinner.schema.ts +0 -25
- package/src/components/spinner/spinner.variables.json +0 -1
- package/src/components/spinner/spinner.variables.ts +0 -3
- package/src/components/stacked-list-item/stacked-list-item.schema.json +0 -66
- package/src/components/stacked-list-item/stacked-list-item.schema.ts +0 -71
- package/src/components/stacked-list-item/stacked-list-item.variables.json +0 -1
- package/src/components/stacked-list-item/stacked-list-item.variables.ts +0 -3
- package/src/components/stat/stat.schema.json +0 -47
- package/src/components/stat/stat.schema.ts +0 -51
- package/src/components/stat/stat.variables.json +0 -1
- package/src/components/stat/stat.variables.ts +0 -3
- package/src/components/stat-group/stat-group.schema.json +0 -33
- package/src/components/stat-group/stat-group.schema.ts +0 -39
- package/src/components/stat-group/stat-group.variables.json +0 -1
- package/src/components/stat-group/stat-group.variables.ts +0 -3
- package/src/components/status-dot/status-dot.schema.json +0 -30
- package/src/components/status-dot/status-dot.schema.ts +0 -36
- package/src/components/status-dot/status-dot.variables.json +0 -1
- package/src/components/status-dot/status-dot.variables.ts +0 -3
- package/src/components/steps/steps.schema.json +0 -36
- package/src/components/steps/steps.schema.ts +0 -42
- package/src/components/steps/steps.variables.json +0 -1
- package/src/components/steps/steps.variables.ts +0 -3
- package/src/components/subscription-badge/subscription-badge.schema.json +0 -16
- package/src/components/subscription-badge/subscription-badge.schema.ts +0 -21
- package/src/components/subscription-badge/subscription-badge.variables.json +0 -1
- package/src/components/subscription-badge/subscription-badge.variables.ts +0 -3
- package/src/components/surface/surface.schema.json +0 -16
- package/src/components/surface/surface.schema.ts +0 -20
- package/src/components/surface/surface.variables.json +0 -1
- package/src/components/surface/surface.variables.ts +0 -3
- package/src/components/tab/tab.schema.json +0 -36
- package/src/components/tab/tab.schema.ts +0 -40
- package/src/components/tab/tab.variables.json +0 -1
- package/src/components/tab/tab.variables.ts +0 -3
- package/src/components/tab-list/tab-list.schema.json +0 -27
- package/src/components/tab-list/tab-list.schema.ts +0 -31
- package/src/components/tab-list/tab-list.variables.json +0 -1
- package/src/components/tab-list/tab-list.variables.ts +0 -3
- package/src/components/tab-panel/tab-panel.schema.json +0 -28
- package/src/components/tab-panel/tab-panel.schema.ts +0 -33
- package/src/components/tab-panel/tab-panel.variables.json +0 -1
- package/src/components/tab-panel/tab-panel.variables.ts +0 -3
- package/src/components/table/table.fixture.svelte +0 -87
- package/src/components/table/table.schema.json +0 -39
- package/src/components/table/table.schema.ts +0 -45
- package/src/components/table/table.variables.json +0 -1
- package/src/components/table/table.variables.ts +0 -3
- package/src/components/table-body/table-body.schema.json +0 -19
- package/src/components/table-body/table-body.schema.ts +0 -23
- package/src/components/table-body/table-body.variables.json +0 -1
- package/src/components/table-body/table-body.variables.ts +0 -3
- package/src/components/table-cell/table-cell.schema.json +0 -27
- package/src/components/table-cell/table-cell.schema.ts +0 -32
- package/src/components/table-cell/table-cell.variables.json +0 -1
- package/src/components/table-cell/table-cell.variables.ts +0 -3
- package/src/components/table-header/table-header.schema.json +0 -35
- package/src/components/table-header/table-header.schema.ts +0 -42
- package/src/components/table-header/table-header.variables.json +0 -1
- package/src/components/table-header/table-header.variables.ts +0 -3
- package/src/components/table-header-cell/table-header-cell.schema.json +0 -35
- package/src/components/table-header-cell/table-header-cell.schema.ts +0 -41
- package/src/components/table-header-cell/table-header-cell.variables.json +0 -1
- package/src/components/table-header-cell/table-header-cell.variables.ts +0 -3
- package/src/components/table-row/table-row.schema.json +0 -33
- package/src/components/table-row/table-row.schema.ts +0 -38
- package/src/components/table-row/table-row.variables.json +0 -1
- package/src/components/table-row/table-row.variables.ts +0 -3
- package/src/components/tabs/tabs.fixture.svelte +0 -35
- package/src/components/tabs/tabs.schema.json +0 -31
- package/src/components/tabs/tabs.schema.ts +0 -36
- package/src/components/tabs/tabs.variables.json +0 -1
- package/src/components/tabs/tabs.variables.ts +0 -3
- package/src/components/tag-input/tag-input.schema.json +0 -160
- package/src/components/tag-input/tag-input.schema.ts +0 -169
- package/src/components/tag-input/tag-input.variables.json +0 -1
- package/src/components/tag-input/tag-input.variables.ts +0 -3
- package/src/components/textarea/textarea.schema.json +0 -48
- package/src/components/textarea/textarea.schema.ts +0 -53
- package/src/components/textarea/textarea.variables.json +0 -1
- package/src/components/textarea/textarea.variables.ts +0 -3
- package/src/components/timeline/timeline.schema.json +0 -76
- package/src/components/timeline/timeline.schema.ts +0 -81
- package/src/components/timeline/timeline.variables.json +0 -1
- package/src/components/timeline/timeline.variables.ts +0 -3
- package/src/components/timeline-item/README.md +0 -51
- package/src/components/timeline-item/index.ts +0 -6
- package/src/components/timeline-item/timeline-item.css +0 -7
- package/src/components/timeline-item/timeline-item.schema.json +0 -43
- package/src/components/timeline-item/timeline-item.schema.ts +0 -48
- package/src/components/timeline-item/timeline-item.variables.json +0 -1
- package/src/components/timeline-item/timeline-item.variables.ts +0 -3
- package/src/components/toast-region/toast-region.schema.json +0 -38
- package/src/components/toast-region/toast-region.schema.ts +0 -35
- package/src/components/toast-region/toast-region.variables.json +0 -1
- package/src/components/toast-region/toast-region.variables.ts +0 -3
- package/src/components/toggle/toggle.schema.json +0 -44
- package/src/components/toggle/toggle.schema.ts +0 -54
- package/src/components/toggle/toggle.variables.json +0 -1
- package/src/components/toggle/toggle.variables.ts +0 -3
- package/src/components/toolbar/toolbar.schema.json +0 -16
- package/src/components/toolbar/toolbar.schema.ts +0 -20
- package/src/components/toolbar/toolbar.variables.json +0 -1
- package/src/components/toolbar/toolbar.variables.ts +0 -3
- package/src/components/tooltip/tooltip.schema.json +0 -29
- package/src/components/tooltip/tooltip.schema.ts +0 -33
- package/src/components/tooltip/tooltip.variables.json +0 -1
- package/src/components/tooltip/tooltip.variables.ts +0 -3
- package/src/components/tree/tree.schema.json +0 -60
- package/src/components/tree/tree.schema.ts +0 -67
- package/src/components/tree/tree.variables.json +0 -1
- package/src/components/tree/tree.variables.ts +0 -3
- package/src/components/tree-item/tree-item.schema.json +0 -55
- package/src/components/tree-item/tree-item.schema.ts +0 -61
- package/src/components/tree-item/tree-item.variables.json +0 -1
- package/src/components/tree-item/tree-item.variables.ts +0 -3
- package/src/components/typography/typography.schema.json +0 -144
- package/src/components/typography/typography.schema.ts +0 -148
- package/src/components/typography/typography.variables.json +0 -1
- package/src/components/typography/typography.variables.ts +0 -3
- package/src/components/visually-hidden/visually-hidden.schema.json +0 -121
- package/src/components/visually-hidden/visually-hidden.schema.ts +0 -125
- package/src/components/visually-hidden/visually-hidden.variables.json +0 -1
- package/src/components/visually-hidden/visually-hidden.variables.ts +0 -3
- package/src/components/waveform/waveform.schema.json +0 -38
- package/src/components/waveform/waveform.schema.ts +0 -42
- package/src/components/waveform/waveform.variables.json +0 -1
- package/src/components/waveform/waveform.variables.ts +0 -3
- /package/dist/components/{timeline-item → _timeline-item}/timeline-item.svelte.d.ts +0 -0
- /package/dist/components/{timeline-item → _timeline-item}/timeline-item.types.d.ts +0 -0
- /package/dist/components/{timeline-item/timeline-item.schema.d.ts → access-gate/access-gate.schema.d.ts} +0 -0
- /package/dist/components/{timeline-item/timeline-item.variables.d.ts → access-gate/access-gate.variables.d.ts} +0 -0
- /package/src/components/{timeline-item → _timeline-item}/timeline-item.svelte +0 -0
- /package/src/components/{timeline-item → _timeline-item}/timeline-item.types.ts +0 -0
|
@@ -6,8 +6,96 @@ Opinionated conversation surface bundling message list, composer, attachments, a
|
|
|
6
6
|
|
|
7
7
|
```svelte
|
|
8
8
|
<script lang="ts">
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
Chat,
|
|
11
|
+
appendAssistantMessage,
|
|
12
|
+
appendUserMessage,
|
|
13
|
+
createConversation,
|
|
14
|
+
} from '@lostgradient/cinder/chat';
|
|
15
|
+
|
|
16
|
+
const conversation = appendAssistantMessage(
|
|
17
|
+
appendUserMessage(createConversation({ id: 'demo' }), 'Can you summarize this plan?'),
|
|
18
|
+
'The plan is ready to implement.',
|
|
19
|
+
);
|
|
10
20
|
</script>
|
|
21
|
+
|
|
22
|
+
<!-- Chat fills its parent; give the ancestor a definite height. -->
|
|
23
|
+
<div style="height: 34rem;">
|
|
24
|
+
<Chat id="demo-chat" {conversation} />
|
|
25
|
+
</div>
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
> [!IMPORTANT] Chat needs a definite-height ancestor
|
|
29
|
+
> Chat's root element fills its parent (`height: 100%`). Place it inside an
|
|
30
|
+
> ancestor with a resolved height—a fixed height, a flex or grid cell, or
|
|
31
|
+
> `height: 100dvh`—or the message viewport collapses and Chat renders as a
|
|
32
|
+
> small card instead of filling its space. See [Layout and sizing](#layout-and-sizing).
|
|
33
|
+
|
|
34
|
+
## Layout and sizing
|
|
35
|
+
|
|
36
|
+
Chat's root (`.chat-container`) is `height: 100%`. When no ancestor on the
|
|
37
|
+
chain resolves to a definite height, that `100%` resolves against `auto` and
|
|
38
|
+
Chat collapses to the intrinsic height of its empty state plus composer. There
|
|
39
|
+
is no browser error: it just silently shrinks to a small card. Give Chat a
|
|
40
|
+
sized ancestor with one of the three patterns below.
|
|
41
|
+
|
|
42
|
+
**Fixed-height container.** The simplest option—wrap Chat in an element with
|
|
43
|
+
an explicit height. This is what every example in this component uses.
|
|
44
|
+
|
|
45
|
+
```svelte
|
|
46
|
+
<div style="height: 34rem;">
|
|
47
|
+
<Chat id="support-chat" {conversation} />
|
|
48
|
+
</div>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Full-viewport flex column.** For an app shell where Chat should fill the
|
|
52
|
+
remaining space, give the column a definite height and let the Chat cell
|
|
53
|
+
`flex: 1` with `min-height: 0` (so it can shrink below its content and scroll
|
|
54
|
+
internally rather than overflowing the page).
|
|
55
|
+
|
|
56
|
+
```svelte
|
|
57
|
+
<div class="chat-page">
|
|
58
|
+
<header>…</header>
|
|
59
|
+
<Chat id="app-chat" class="chat-page-surface" {conversation} />
|
|
60
|
+
</div>
|
|
61
|
+
|
|
62
|
+
<style>
|
|
63
|
+
.chat-page {
|
|
64
|
+
display: flex;
|
|
65
|
+
flex-direction: column;
|
|
66
|
+
height: 100dvh;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/* `:global` because the class lands on Chat's own root element. */
|
|
70
|
+
.chat-page :global(.chat-page-surface) {
|
|
71
|
+
flex: 1;
|
|
72
|
+
min-height: 0;
|
|
73
|
+
}
|
|
74
|
+
</style>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
**Grid cell.** The same shape works in a grid: give the container a resolved
|
|
78
|
+
track (`grid-template-rows: auto 1fr`), place Chat in the `1fr` row, and keep
|
|
79
|
+
`min-height: 0` on the Chat cell so it can shrink and scroll internally instead
|
|
80
|
+
of overflowing the page.
|
|
81
|
+
|
|
82
|
+
```svelte
|
|
83
|
+
<div class="chat-grid">
|
|
84
|
+
<header>…</header>
|
|
85
|
+
<Chat id="grid-chat" class="chat-grid-surface" {conversation} />
|
|
86
|
+
</div>
|
|
87
|
+
|
|
88
|
+
<style>
|
|
89
|
+
.chat-grid {
|
|
90
|
+
display: grid;
|
|
91
|
+
grid-template-rows: auto 1fr;
|
|
92
|
+
height: 100dvh;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.chat-grid :global(.chat-grid-surface) {
|
|
96
|
+
min-height: 0;
|
|
97
|
+
}
|
|
98
|
+
</style>
|
|
11
99
|
```
|
|
12
100
|
|
|
13
101
|
## Guidance
|
|
@@ -26,41 +114,66 @@ Opinionated conversation surface bundling message list, composer, attachments, a
|
|
|
26
114
|
|
|
27
115
|
<!-- generated:props:start -->
|
|
28
116
|
|
|
29
|
-
| Prop
|
|
30
|
-
|
|
|
31
|
-
| `allowAttachments`
|
|
32
|
-
| `allowCopy`
|
|
33
|
-
| `allowEditing`
|
|
34
|
-
| `allowRetry`
|
|
35
|
-
| `allowSearch`
|
|
36
|
-
| `bottomThreshold`
|
|
37
|
-
| `class`
|
|
38
|
-
| `
|
|
39
|
-
| `
|
|
40
|
-
| `
|
|
41
|
-
| `
|
|
42
|
-
| `
|
|
43
|
-
| `
|
|
44
|
-
| `
|
|
45
|
-
| `
|
|
46
|
-
| `
|
|
47
|
-
| `
|
|
48
|
-
| `
|
|
49
|
-
| `
|
|
50
|
-
| `
|
|
51
|
-
| `
|
|
52
|
-
| `
|
|
53
|
-
| `
|
|
54
|
-
| `
|
|
55
|
-
| `
|
|
56
|
-
| `
|
|
57
|
-
| `
|
|
58
|
-
| `
|
|
59
|
-
| `
|
|
60
|
-
| `
|
|
61
|
-
| `
|
|
62
|
-
| `
|
|
63
|
-
| `
|
|
117
|
+
| Prop | Type | Required | Default | Description |
|
|
118
|
+
| ---------------------------------- | ------------------------------ | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
119
|
+
| `allowAttachments` | `boolean` | no | — | Whether file attachments are enabled in the composer. When `false`, the attachment button is hidden and drag-and-drop onto the chat surface is suppressed. Default `true`. |
|
|
120
|
+
| `allowCopy` | `boolean` | no | — | Whether per-message copy buttons are shown in the message action bar. Default `true`. |
|
|
121
|
+
| `allowEditing` | `boolean` | no | — | Whether user messages can be edited inline. Default `true`. |
|
|
122
|
+
| `allowRetry` | `boolean` | no | — | Whether failed assistant messages show a retry button. Default `true`. |
|
|
123
|
+
| `allowSearch` | `boolean` | no | — | Whether in-conversation search is enabled. When `true`, pressing Ctrl+F / Cmd+F opens a search bar that highlights matching messages. Default `true`. |
|
|
124
|
+
| `bottomThreshold` | `number` | no | — | Distance in pixels from the bottom of the scroll viewport within which the chat is considered "at bottom" and will auto-scroll on new messages. Default `150`. |
|
|
125
|
+
| `class` | `string` | no | — | Additional class name merged onto the `.chat-container` root element. |
|
|
126
|
+
| `density` | `"comfortable"` \| `"compact"` | no | — | Controls spacing density of the message timeline. - `'comfortable'` (default): standard padding and gap. - `'compact'`: tighter spacing for data-dense contexts (e.g., embedded panels). Action buttons keep `min-height: var(--cinder-touch-target-min)` regardless. |
|
|
127
|
+
| `emptyPrompts` | `string`[] | no | — | List of suggested starter prompt strings shown as clickable buttons in the default empty state. Clicking a prompt submits it immediately as a user message. Has no effect when a custom `empty` snippet is provided. |
|
|
128
|
+
| `hasMoreHistory` | `boolean` | no | — | Whether the explicit "Load earlier messages" trigger is shown when a load handler exists. Default `true`. |
|
|
129
|
+
| `hasNewMessageIndicator` | `boolean` | no | — | Whether the "new messages" indicator is currently visible above the composer. Bindable; cleared automatically when the viewport reaches the bottom. Default `false`. |
|
|
130
|
+
| `id` | `string` | yes | — | Unique identifier used to scope accessibility attributes across the chat surface. |
|
|
131
|
+
| `isAtBottom` | `boolean` | no | — | Whether the message viewport is scrolled to the bottom. Bindable; updated automatically as the user scrolls. Default `true`. |
|
|
132
|
+
| `isStreaming` | `boolean` | no | — | Whether a streaming response is currently in progress. When `true`, the composer is disabled and a stop-generating button is shown. Default `false`. |
|
|
133
|
+
| `jumpThreshold` | `number` | no | — | Distance in pixels scrolled up from the bottom required before the jump-to-latest button appears. Must be greater than `bottomThreshold` to prevent button flickering. Default `200`. |
|
|
134
|
+
| `loadEarlierLabel` | `string` | no | — | Label for the history pagination trigger. Default `"Load earlier messages"`. |
|
|
135
|
+
| `loadingEarlierLabel` | `string` | no | — | Status text while older messages are loading. Default `"Loading earlier messages"`. |
|
|
136
|
+
| `streamingStatus` | `string` | no | — | Optional status label displayed in the typing indicator while `isStreaming` is `true` and no streaming content has arrived yet (e.g. `"Thinking…"` or `"Analyzing file…"`). When omitted, three animated dots are shown. |
|
|
137
|
+
| `surfaceMode` | `"default"` \| `"transparent"` | no | — | Controls the background of the chat surface. Use `'transparent'` to inherit the host element's background when embedding chat inside a card or panel. Default `'default'`. |
|
|
138
|
+
| `unreadCount` | `number` | no | — | Number of messages received while the viewport was scrolled away from the bottom. Bindable; resets to `0` when the user scrolls to the bottom. Default `0`. |
|
|
139
|
+
| `variant` | `"bubble"` \| `"flat"` | no | — | Visual treatment for message bubbles. - `'bubble'` (default): colored backgrounds differentiate user from assistant. - `'flat'`: no bubble backgrounds; role is communicated via alignment and role label. Text-on-surface contrast meets WCAG AA via `--cinder-text` on `--cinder-surface-inset`. |
|
|
140
|
+
| `virtualizationEstimatedRowHeight` | `number` | no | — | Estimated row height in pixels for virtualized message rows. Default `88`. |
|
|
141
|
+
| `virtualizationInitialHeight` | `number` | no | — | Initial virtualized viewport height used before measurement. Default `640`. |
|
|
142
|
+
| `virtualizationOverscan` | `number` | no | — | Number of extra virtual rows rendered before and after the viewport. Default `3`. |
|
|
143
|
+
| `virtualized` | `boolean` | no | — | Use the virtualized message render path for long transcripts. The complete `ConversationHistory` remains unchanged; only the DOM window is reduced. Default `false`. |
|
|
144
|
+
| `adapter` | `(opaque)` | no | — | Optional command/transport boundary around `conversation`. Its methods take precedence over the matching callback props (e.g. `sendMessage` over `onsubmit`); omit it and Chat behaves exactly as with plain callbacks. Not expressible in JSON Schema; see the component types for the signature. |
|
|
145
|
+
| `conversation` | `(opaque)` | yes | — | The conversation transcript to render. Pass a {@link ConversationHistory} snapshot; consumers holding a stateful conversation object pass its current snapshot (e.g. `conversation.current`). Not expressible in JSON Schema; see the component types for the signature. |
|
|
146
|
+
| `empty` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
147
|
+
| `header` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
148
|
+
| `messageActions` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
149
|
+
| `messagePart` | `(opaque)` | no | — | Per-message-part override. Replaces the rendering of an individual body part (markdown, tool call, tool result) while delegating the rest to the built-ins via the `renderDefault` snippet it receives. Image parts are excluded — they render through the grouped attachment grid, not this override. Not expressible in JSON Schema; see the component types for the signature. |
|
|
150
|
+
| `messageReasoning` | `(opaque)` | no | — | Override or supplement the reasoning text for a message. Called per-message; return a non-empty string to show a reasoning block, `undefined` to fall back to `message.metadata['cinder:reasoning']`, empty string to suppress reasoning. Not expressible in JSON Schema; see the component types for the signature. |
|
|
151
|
+
| `messageStatus` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
152
|
+
| `messageSteps` | `(opaque)` | no | — | Override or supplement the step list for a message. Called per-message; return an array to show step indicators, `undefined` to fall back to `message.metadata['cinder:steps']`. An empty array suppresses steps. Not expressible in JSON Schema; see the component types for the signature. |
|
|
153
|
+
| `messageSuggestions` | `(opaque)` | no | — | Override or supplement the suggestion list for a message. Called per-message; return an array of label strings to show suggestion chips, `undefined` to fall back to `message.metadata['cinder:suggestions']`. An empty array suppresses suggestions. Not expressible in JSON Schema; see the component types for the signature. |
|
|
154
|
+
| `onadaptererror` | `(opaque)` | no | — | Called when an adapter command fails — either a rejected promise or a synchronous throw from the method. Not expressible in JSON Schema; see the component types for the signature. |
|
|
155
|
+
| `onapprove` | `(opaque)` | no | — | Called when the user approves an action-required tool call. The consumer is responsible for updating its transcript (e.g. calling conversationalist to unblock the pending tool) and triggering a new generation. When an adapter is also wired, Chat calls `adapter.approveToolCall(toolCallId)` first and then this callback. Not expressible in JSON Schema; see the component types for the signature. |
|
|
156
|
+
| `onattachmentadd` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
157
|
+
| `onattachmentfailure` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
158
|
+
| `onattachmentremove` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
159
|
+
| `ondeny` | `(opaque)` | no | — | Called when the user denies an action-required tool call. When an adapter is also wired, Chat calls `adapter.denyToolCall(toolCallId)` first and then this callback. Not expressible in JSON Schema; see the component types for the signature. |
|
|
160
|
+
| `onedit` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
161
|
+
| `onexpandedchange` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
162
|
+
| `onjumptolatest` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
163
|
+
| `onloadhistory` | `(opaque)` | no | — | Called when the explicit history trigger is activated. The consumer prepends compatible messages into `conversation`. Not expressible in JSON Schema; see the component types for the signature. |
|
|
164
|
+
| `onpushmessage` | `(opaque)` | no | — | Forwarded from the adapter's real-time `onMessage` push (consumer owns the transcript). Not expressible in JSON Schema; see the component types for the signature. |
|
|
165
|
+
| `onreadreceipt` | `(opaque)` | no | — | Forwarded from the adapter's real-time `onReadReceipt` push. Not expressible in JSON Schema; see the component types for the signature. |
|
|
166
|
+
| `onretry` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
167
|
+
| `onscrollstatechange` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
168
|
+
| `onstopgenerating` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
169
|
+
| `onsubmit` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
170
|
+
| `onsuggestionselect` | `(opaque)` | no | — | Called when the user selects a suggestion chip. The label string is passed back. The consumer is responsible for submitting it as a new user message. Not expressible in JSON Schema; see the component types for the signature. |
|
|
171
|
+
| `ontypingchange` | `(opaque)` | no | — | Forwarded from the adapter's real-time `onTypingChange` push. Not expressible in JSON Schema; see the component types for the signature. |
|
|
172
|
+
| `onunreadindicatorchange` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
173
|
+
| `readReceipts` | `(opaque)` | no | — | Per-message read receipt state. Out-of-band UI state — NOT stored on `Message`. Pass a `Map` keyed by message id with a {@link ReadReceipt} value; the component renders a receipt badge on USER messages only. The adapter's `onReadReceipt` push handler populates the same state when an adapter is wired. Default `undefined` (no receipts shown). Not expressible in JSON Schema; see the component types for the signature. |
|
|
174
|
+
| `row` | `(opaque)` | no | — | Full-row override. Renders an entire message row; receives the message and a `renderDefault` snippet for the built-in row (inversion of control), so a consumer can wrap or fully replace specific rows. Not expressible in JSON Schema; see the component types for the signature. |
|
|
175
|
+
| `typingParticipants` | `(opaque)` | no | — | Participants who are currently typing. Out-of-band UI state — NOT stored on `Message`. Pass an array of {@link TypingParticipant} objects; the component renders a per-participant typing indicator above the input. The adapter's `onTypingChange` push handler feeds the same indicator when an adapter is wired. Default `undefined` (indicator hidden). Not expressible in JSON Schema; see the component types for the signature. |
|
|
176
|
+
| `viewportAttachment` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
64
177
|
|
|
65
178
|
<!-- generated:props:end -->
|
|
66
179
|
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional adapter event/transport seam for the Chat component.
|
|
3
|
+
*
|
|
4
|
+
* `ChatAdapter` names the send / retry / edit / stop / tool-approval / history /
|
|
5
|
+
* real-time contract around the existing `conversation` prop WITHOUT coupling
|
|
6
|
+
* Chat to any transport. It is purely an event boundary — NOT a second
|
|
7
|
+
* conversation model. Every method parameter and every push payload uses the
|
|
8
|
+
* structural mirror types from `../conversation-model.ts`, so a consumer whose
|
|
9
|
+
* authoritative transcript lives in `conversationalist` can pass a plain
|
|
10
|
+
* `ConversationHistory` snapshot to `<Chat>` and wire an adapter with zero
|
|
11
|
+
* adaptation. This module is TYPE-ONLY — it ships no runtime code and imports
|
|
12
|
+
* nothing at runtime, so it is trivially SSR-safe.
|
|
13
|
+
*
|
|
14
|
+
* The adapter is always optional. When omitted, Chat behaves exactly as it does
|
|
15
|
+
* with its plain callback props (`onsubmit` / `onretry` / `onedit` /
|
|
16
|
+
* `onstopgenerating`); the internal command dispatcher routes both paths
|
|
17
|
+
* identically (adapter method first, callback fallback).
|
|
18
|
+
*
|
|
19
|
+
* @module
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
import type { Message, MessageInput, ToolCall, ToolResult } from '../conversation-model.ts';
|
|
23
|
+
import type { ChatAttachment } from '../input/chat-attachment.ts';
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* A read-receipt push event: a message was read at a point in time. The payload
|
|
27
|
+
* is an object (not positional args) so later tasks can extend it — e.g. with a
|
|
28
|
+
* participant id — without a breaking signature change.
|
|
29
|
+
*/
|
|
30
|
+
export type ChatReadReceiptEvent = {
|
|
31
|
+
/** The id of the message that was read. */
|
|
32
|
+
messageId: string;
|
|
33
|
+
/** ISO-8601 timestamp at which the message was read. */
|
|
34
|
+
readAt: string;
|
|
35
|
+
/**
|
|
36
|
+
* Optional list of reader display names. When present, the read receipt badge
|
|
37
|
+
* will show "Read by Alice, Bob" in its accessible label.
|
|
38
|
+
*/
|
|
39
|
+
readBy?: string[];
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Push handlers Chat hands to {@link ChatAdapter.subscribe}. The adapter invokes
|
|
44
|
+
* these as real-time transport events arrive.
|
|
45
|
+
*
|
|
46
|
+
* Streaming handlers drive Chat's own imperative streaming buffer
|
|
47
|
+
* (`onStreamBegin`/`onTokenPush`/`onStreamEnd` → `beginStreaming`/`pushToken`/
|
|
48
|
+
* `endStreaming`), so a push-driven stream is fully self-contained — the
|
|
49
|
+
* consumer does not also have to call the imperative API by hand.
|
|
50
|
+
*
|
|
51
|
+
* Transcript/peripheral handlers (`onMessage`/`onTypingChange`/`onReadReceipt`)
|
|
52
|
+
* concern state Chat does NOT own (the consumer owns `conversation`), so Chat
|
|
53
|
+
* forwards them verbatim to the matching pass-through callback props. It never
|
|
54
|
+
* mutates `conversation` in response.
|
|
55
|
+
*/
|
|
56
|
+
export type ChatPushHandlers = {
|
|
57
|
+
/** A new (or updated) message arrived. Forwarded to the consumer; Chat does not mutate the transcript. */
|
|
58
|
+
onMessage: (message: Message) => void;
|
|
59
|
+
/** A participant's typing state changed. Forwarded to the consumer. */
|
|
60
|
+
onTypingChange: (isTyping: boolean) => void;
|
|
61
|
+
/** A read receipt arrived. Forwarded to the consumer. */
|
|
62
|
+
onReadReceipt: (event: ChatReadReceiptEvent) => void;
|
|
63
|
+
/** Streaming began for a message — drives Chat's `beginStreaming(messageId)`. */
|
|
64
|
+
onStreamBegin: (messageId: string) => void;
|
|
65
|
+
/** A streaming token arrived — drives Chat's `pushToken(token)`. */
|
|
66
|
+
onTokenPush: (token: string) => void;
|
|
67
|
+
/** Streaming ended — drives Chat's `endStreaming()`. */
|
|
68
|
+
onStreamEnd: () => void;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Optional command/transport boundary around `<Chat conversation={…}>`.
|
|
73
|
+
*
|
|
74
|
+
* Only `sendMessage` is required; everything else is optional so an adapter can
|
|
75
|
+
* opt into exactly the capabilities its transport supports. Command methods
|
|
76
|
+
* return `Promise<void>` — Chat awaits them and routes any failure (a rejected
|
|
77
|
+
* promise OR a synchronous throw from the method) to `onadaptererror` rather
|
|
78
|
+
* than swallowing it.
|
|
79
|
+
*
|
|
80
|
+
* The optional `approveToolCall`/`denyToolCall` (consumed by the tool-approval
|
|
81
|
+
* task) and `loadOlderMessages` (consumed by the load-history task) are declared
|
|
82
|
+
* here so the seam is complete; their UI wiring lands with those tasks.
|
|
83
|
+
*/
|
|
84
|
+
export type ChatAdapter = {
|
|
85
|
+
/** Send a composed message with its attachments. */
|
|
86
|
+
sendMessage: (message: MessageInput, attachments: ChatAttachment[]) => Promise<void>;
|
|
87
|
+
/** Retry a previously-failed message by id. */
|
|
88
|
+
retryMessage?: (messageId: string) => Promise<void>;
|
|
89
|
+
/** Commit an edit to a user message. */
|
|
90
|
+
editMessage?: (event: { messageId: string; content: string }) => Promise<void>;
|
|
91
|
+
/** Stop an in-progress generation for a message. */
|
|
92
|
+
stopGenerating?: (messageId: string) => Promise<void>;
|
|
93
|
+
/**
|
|
94
|
+
* Load a page of older messages for the given conversation. Returns whether
|
|
95
|
+
* more remain. (UI wired by the load-history task.)
|
|
96
|
+
*/
|
|
97
|
+
loadOlderMessages?: (conversationId: string) => Promise<{ hasMore: boolean }>;
|
|
98
|
+
/**
|
|
99
|
+
* Subscribe to real-time events for a conversation. Receives the conversation
|
|
100
|
+
* id (so the transport knows which channel to open) plus the push handlers,
|
|
101
|
+
* and returns an unsubscribe function Chat calls on teardown.
|
|
102
|
+
*/
|
|
103
|
+
subscribe?: (conversationId: string, handlers: ChatPushHandlers) => () => void;
|
|
104
|
+
/** Approve an action-required tool call by id. (UI wired by the tool-approval task.) */
|
|
105
|
+
approveToolCall?: (toolCallId: string) => Promise<void>;
|
|
106
|
+
/** Reject an action-required tool call by id. (UI wired by the tool-approval task.) */
|
|
107
|
+
denyToolCall?: (toolCallId: string) => Promise<void>;
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* The set of commands the internal dispatcher routes. Used to tag an
|
|
112
|
+
* {@link ChatAdapterErrorEvent} so a consumer can tell which command failed.
|
|
113
|
+
*/
|
|
114
|
+
export type ChatCommand =
|
|
115
|
+
| 'sendMessage'
|
|
116
|
+
| 'retryMessage'
|
|
117
|
+
| 'editMessage'
|
|
118
|
+
| 'stopGenerating'
|
|
119
|
+
| 'loadOlderMessages'
|
|
120
|
+
| 'approveToolCall'
|
|
121
|
+
| 'denyToolCall';
|
|
122
|
+
|
|
123
|
+
/** Error event surfaced when an adapter command fails (rejection or sync throw). */
|
|
124
|
+
export type ChatAdapterErrorEvent = {
|
|
125
|
+
/** Which command's adapter method failed. */
|
|
126
|
+
command: ChatCommand;
|
|
127
|
+
/** The thrown value. */
|
|
128
|
+
error: unknown;
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
/** Re-export the mirror types an adapter author needs, from one place. */
|
|
132
|
+
export type { Message, MessageInput, ToolCall, ToolResult };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chat adapter seam — the optional event/transport boundary around `<Chat>`.
|
|
3
|
+
*
|
|
4
|
+
* Type-only; see `./chat-adapter.ts`.
|
|
5
|
+
*
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export type {
|
|
10
|
+
ChatAdapter,
|
|
11
|
+
ChatAdapterErrorEvent,
|
|
12
|
+
ChatCommand,
|
|
13
|
+
ChatPushHandlers,
|
|
14
|
+
ChatReadReceiptEvent,
|
|
15
|
+
} from './chat-adapter.ts';
|
|
@@ -7,13 +7,19 @@
|
|
|
7
7
|
"id": "basic",
|
|
8
8
|
"title": "Basic chat",
|
|
9
9
|
"description": "A conversation with editable input and markdown rendering.",
|
|
10
|
-
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendAssistantMessage,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n\n let conversation = $state(\n appendAssistantMessage(\n appendUserMessage(createConversation({ id: 'basic-chat' }), 'Can you summarize this plan?'),\n `The plan is ready to implement.\n\n1. Port the component surface.\n2. Add focused demos.\n3. Keep the public API importable by subpath.`,\n ),\n );\n</script>\n\n<div style=\"height: 34rem;\">\n <Chat id=\"
|
|
10
|
+
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendAssistantMessage,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n\n // `id` below is the conversation snapshot's data key — it never reaches a DOM\n // element id (Chat derives every rendered id from its `id` prop, scoped above\n // as `chatId`), so it needs no mount-prefix scoping.\n let conversation = $state(\n appendAssistantMessage(\n appendUserMessage(createConversation({ id: 'basic-chat' }), 'Can you summarize this plan?'),\n `The plan is ready to implement.\n\n1. Port the component surface.\n2. Add focused demos.\n3. Keep the public API importable by subpath.`,\n ),\n );\n</script>\n\n<div style=\"height: 34rem;\">\n <Chat id=\"chat\" {conversation} allowAttachments={false} />\n</div>\n"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"id": "density-and-variant",
|
|
14
|
+
"title": "Density and variant",
|
|
15
|
+
"description": "Compare comfortable vs compact density and bubble vs flat visual variant on the same conversationalist-shaped transcript.",
|
|
16
|
+
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendAssistantMessage,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n import { Select } from '@lostgradient/cinder/select';\n\n // Build a shared conversationalist-shaped transcript (no Cinder-only fields).\n const baseConversation = appendAssistantMessage(\n appendUserMessage(\n appendAssistantMessage(\n appendUserMessage(\n createConversation({ id: 'density-variant-chat' }),\n 'What are the density and variant props for?',\n ),\n 'The `density` prop controls spacing — `comfortable` uses standard padding and gap, `compact` tightens them for data-dense contexts like embedded side panels.\\n\\nThe `variant` prop controls visual treatment — `bubble` uses colored backgrounds to differentiate roles; `flat` removes backgrounds and relies on alignment and the role label instead.',\n ),\n 'Does compact affect the action buttons?',\n ),\n 'No — action buttons keep `min-height: var(--cinder-touch-target-min)` regardless of density. Only padding and gap change.',\n );\n\n type Density = 'comfortable' | 'compact';\n type Variant = 'bubble' | 'flat';\n\n const densityOptions = [\n { value: 'comfortable', label: 'comfortable' },\n { value: 'compact', label: 'compact' },\n ] satisfies { value: Density; label: string }[];\n\n const variantOptions = [\n { value: 'bubble', label: 'bubble' },\n { value: 'flat', label: 'flat' },\n ] satisfies { value: Variant; label: string }[];\n\n let density = $state<Density>('comfortable');\n let variant = $state<Variant>('bubble');\n</script>\n\n<div style=\"display: grid; gap: 1rem;\">\n <div style=\"display: flex; gap: 1rem; align-items: flex-end; flex-wrap: wrap;\">\n <Select id=\"density-select\" bind:value={density} options={densityOptions} label=\"Density\" />\n <Select id=\"variant-select\" bind:value={variant} options={variantOptions} label=\"Variant\" />\n </div>\n\n <div style=\"height: 28rem;\">\n <Chat\n id=\"density-variant\"\n conversation={baseConversation}\n {density}\n {variant}\n allowAttachments={false}\n />\n </div>\n</div>\n"
|
|
11
17
|
},
|
|
12
18
|
{
|
|
13
19
|
"id": "interactive-harness",
|
|
14
20
|
"title": "Interactive harness",
|
|
15
21
|
"description": "Drive Chat from a control panel: reply as the other side (instant / typing / streaming), inject tool calls, toggle features, and watch every callback fire.",
|
|
16
|
-
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendAssistantMessage,\n appendMessages,\n appendUserMessage,\n createConversation,\n type ChatSubmitEvent,\n type ConversationHistory,\n type JSONValue,\n type Message,\n type ToolErrorCategory,\n } from '@lostgradient/cinder/chat';\n import { Button } from '@lostgradient/cinder/button';\n import { Segment } from '@lostgradient/cinder/segment';\n import { SegmentedControl } from '@lostgradient/cinder/segmented-control';\n import { Select } from '@lostgradient/cinder/select';\n import { Toggle } from '@lostgradient/cinder/toggle';\n import { onDestroy } from 'svelte';\n\n // Out of scope for this harness (documented, not silently dropped):\n // bottomThreshold / jumpThreshold (kept at defaults so overflow + jump are\n // testable without tuning), viewportAttachment (advanced escape hatch), and\n // the isAtBottom / unreadCount / hasNewMessageIndicator bindables (read-only\n // mirrors of behavior the wired callbacks already surface).\n\n // --- Chat instance (for the imperative streaming + scroll API) ---\n // Plain `let`: only read via `chat?.method()` calls, never reactively.\n let chat: ReturnType<typeof Chat> | undefined;\n\n // --- Conversation state (immutable snapshots via the cinder/chat builders) ---\n let conversation = $state<ConversationHistory>(createConversation({ id: 'harness' }));\n\n // --- Feature toggles wired straight onto <Chat> ---\n let allowAttachments = $state(true);\n let allowSearch = $state(true);\n let allowCopy = $state(true);\n let allowEditing = $state(true);\n let allowRetry = $state(true);\n let transparentSurface = $state(false);\n let withEmptyPrompts = $state(true);\n let autoReply = $state(true);\n\n // --- Reply controls ---\n let replyText = $state('Here is the answer, delivered in a few deliberate chunks.');\n let replyMode = $state<'instant' | 'typing' | 'streaming'>('typing');\n let streamMechanism = $state<'imperative' | 'content-mutation'>('imperative');\n let isStreaming = $state(false);\n let streamingStatus = $state('');\n\n // --- Tool-call controls ---\n let toolName = $state('exports_check');\n let toolArguments = $state('{ \"package\": \"@lostgradient/cinder\" }');\n let toolOutcome = $state<'success' | 'error' | 'action_required'>('success');\n const parsedToolArguments = $derived.by<{ ok: boolean; value: JSONValue }>(() => {\n try {\n return { ok: true, value: JSON.parse(toolArguments) as JSONValue };\n } catch {\n return { ok: false, value: null };\n }\n });\n\n // --- Event log (queryable: data-event + data-payload per entry) ---\n // Chat emits a burst of identical onunreadindicatorchange events while its\n // empty state settles on mount (all `{unreadCount:0, hasNewMessageIndicator:\n // false}`). We de-duplicate: a callback whose (event, payload) is identical to\n // the most recent entry for that event is dropped. That kills the mount noise\n // deterministically (no timing dependency) while still recording every real,\n // distinct callback so tests can assert \"this fired because of my action\".\n type LogEntry = { id: number; event: string; payload: string };\n let log = $state<LogEntry[]>([]);\n let logCounter = 0;\n const lastPayloadByEvent = new Map<string, string>();\n function record(event: string, payload: unknown = ''): void {\n const text = typeof payload === 'string' ? payload : JSON.stringify(payload);\n if (lastPayloadByEvent.get(event) === text) return;\n lastPayloadByEvent.set(event, text);\n logCounter += 1;\n log = [{ id: logCounter, event, payload: text }, ...log].slice(0, 50);\n }\n\n // --- Pending-operation discipline (instance-local; NEVER module scope) ---\n // A single in-flight typing/streaming op at a time. Timers are tracked so we\n // can cancel deterministically; streamingPartial holds the accumulated text so\n // Stop can preserve it.\n let pendingTimers = new Set<ReturnType<typeof setTimeout>>();\n // Plain `let`: read only inside the streaming functions, never in the\n // template (the assistant message content comes from `conversation`).\n let streamingPartial = '';\n let streamingMessageId: string | null = null;\n // Monotonic token identifying the current stream/typing op. Each scheduled\n // chunk captures the token active when it was queued and bails if a newer op\n // has started — so an already-dequeued timer can't write into a fresh stream.\n let activeOperation = 0;\n\n function later(callback: () => void, delay: number): void {\n const handle = setTimeout(() => {\n pendingTimers.delete(handle);\n callback();\n }, delay);\n pendingTimers.add(handle);\n }\n\n function clearTimers(): void {\n for (const handle of pendingTimers) clearTimeout(handle);\n pendingTimers.clear();\n }\n\n /**\n * Cancel the in-flight op. Modes differ in how they treat partial content:\n * - preservePartial (Stop): keep what streamed so far, commit it to the message.\n * - discard (Clear / Seed / mode switch / new reply): drop the in-flight\n * (possibly empty) assistant message so no blank bubble is left behind.\n * - destroy (onDestroy): just clear timers.\n */\n function cancelPending(mode: 'preservePartial' | 'discard' | 'destroy'): void {\n clearTimers();\n // Invalidate the current op so any timer callback already dequeued (past\n // clearTimers) bails instead of mutating freshly-reset state.\n activeOperation += 1;\n if (mode === 'destroy') return;\n\n if (streamingMessageId) {\n if (mode === 'preservePartial') {\n conversation = replaceMessageContent(conversation, streamingMessageId, streamingPartial);\n } else {\n conversation = removeMessage(conversation, streamingMessageId);\n }\n chat?.endStreaming();\n }\n streamingMessageId = null;\n streamingPartial = '';\n isStreaming = false;\n streamingStatus = '';\n }\n\n // --- Immutable message helpers (replace/remove by id) ---\n function replaceMessageContent(\n current: ConversationHistory,\n id: string,\n content: string,\n ): ConversationHistory {\n const existing = current.messages[id];\n if (!existing) return current;\n return {\n ...current,\n messages: { ...current.messages, [id]: { ...existing, content } },\n updatedAt: new Date().toISOString(),\n };\n }\n\n function removeMessage(current: ConversationHistory, id: string): ConversationHistory {\n if (!current.messages[id]) return current;\n const messages = { ...current.messages };\n delete messages[id];\n return {\n ...current,\n ids: current.ids.filter((existing) => existing !== id),\n messages,\n updatedAt: new Date().toISOString(),\n };\n }\n\n function lastMessageId(current: ConversationHistory): string {\n return current.ids[current.ids.length - 1] ?? '';\n }\n\n // --- Reply as the other side ---\n function sendReply(text: string): void {\n const trimmed = text.trim();\n if (!trimmed) return;\n cancelPending('discard');\n // Start a new operation; stale timers from a prior op will no longer match.\n const operation = ++activeOperation;\n\n if (replyMode === 'instant') {\n conversation = appendAssistantMessage(conversation, trimmed);\n return;\n }\n\n if (replyMode === 'typing') {\n isStreaming = true;\n streamingStatus = 'Assistant is typing…';\n // A deliberately long-ish window so the \"typing\" state is comfortably\n // observable (by a person and by a test) before the reply lands.\n later(() => {\n if (operation !== activeOperation) return;\n isStreaming = false;\n streamingStatus = '';\n conversation = appendAssistantMessage(conversation, trimmed);\n }, 1200);\n return;\n }\n\n // streaming: append one empty assistant message, then grow ITS content.\n conversation = appendAssistantMessage(conversation, '');\n const messageId = lastMessageId(conversation);\n streamingMessageId = messageId;\n streamingPartial = '';\n // `isStreaming` drives the composer's Stop affordance for BOTH mechanisms;\n // only `beginStreaming()` (the rAF-buffered token path) is imperative-only.\n isStreaming = true;\n streamingStatus = 'Streaming…';\n if (streamMechanism === 'imperative') {\n chat?.beginStreaming(messageId);\n }\n // Deterministic cadence: a fixed number of chunks at a fixed delay so an\n // intermediate partial state is reliably observable before completion.\n const chunks = splitIntoChunks(trimmed, 5);\n streamChunk(chunks, 0, activeOperation);\n }\n\n function streamChunk(chunks: string[], index: number, operation: number): void {\n // A newer reply/clear/seed started — this is a stale continuation, bail.\n if (operation !== activeOperation) return;\n\n if (index >= chunks.length) {\n // Commit the final content into the message, then end the stream.\n conversation = replaceMessageContent(\n conversation,\n streamingMessageId ?? '',\n streamingPartial,\n );\n if (streamMechanism === 'imperative') chat?.endStreaming();\n streamingMessageId = null;\n isStreaming = false;\n streamingStatus = '';\n return;\n }\n const chunk = chunks[index] ?? '';\n streamingPartial += chunk;\n if (streamMechanism === 'imperative') {\n chat?.pushToken(chunk);\n } else {\n conversation = replaceMessageContent(\n conversation,\n streamingMessageId ?? '',\n streamingPartial,\n );\n }\n later(() => streamChunk(chunks, index + 1, operation), 120);\n }\n\n function splitIntoChunks(text: string, count: number): string[] {\n const words = text.split(' ');\n const perChunk = Math.max(1, Math.ceil(words.length / count));\n const chunks: string[] = [];\n for (let index = 0; index < words.length; index += perChunk) {\n const slice = words.slice(index, index + perChunk).join(' ');\n chunks.push(index === 0 ? slice : ` ${slice}`);\n }\n return chunks;\n }\n\n // --- Inject a tool call + paired result (all outcomes) ---\n function injectToolCall(): void {\n if (!parsedToolArguments.ok) return;\n // Unique per injection — deriving from logCounter would reuse the same id\n // for repeated injections that don't add a log entry, breaking pairing.\n const callId = `call-${crypto.randomUUID()}`;\n const result =\n toolOutcome === 'error'\n ? {\n callId,\n outcome: 'error' as const,\n content: null,\n error: {\n code: 'tool_failed',\n category: 'transient' as ToolErrorCategory,\n retryable: true,\n message: 'The tool failed: upstream returned a transient error.',\n },\n }\n : toolOutcome === 'action_required'\n ? {\n callId,\n outcome: 'action_required' as const,\n content: null,\n action: {\n type: 'approval' as const,\n message: 'Approve running this tool before it executes?',\n },\n }\n : { callId, outcome: 'success' as const, content: { status: 'ok' } };\n\n conversation = appendMessages(\n conversation,\n {\n role: 'tool-call',\n content: '',\n toolCall: { id: callId, name: toolName, arguments: parsedToolArguments.value },\n },\n { role: 'tool-result', content: '', toolResult: result },\n );\n }\n\n // --- Seed / clear ---\n function seedThread(): void {\n cancelPending('discard');\n let next = createConversation({ id: 'harness-seeded' });\n // Repeated token \"alpha\" for deterministic search assertions, plus enough\n // messages to overflow the fixed-height viewport.\n next = appendUserMessage(next, 'Tell me about alpha.');\n next = appendAssistantMessage(next, 'alpha is the first item we track.');\n for (let index = 0; index < 12; index += 1) {\n next = appendUserMessage(next, `Follow-up question number ${index + 1}.`);\n next = appendAssistantMessage(\n next,\n `Detailed answer number ${index + 1}, with alpha context.`,\n );\n }\n conversation = next;\n }\n\n function seedFailedMessage(): void {\n conversation = appendMessages(conversation, {\n role: 'user',\n content: 'This message failed to send.',\n metadata: { _deliveryStatus: 'failed' },\n });\n }\n\n function clearConversation(): void {\n cancelPending('discard');\n conversation = createConversation({ id: 'harness-cleared' });\n }\n\n // --- Chat callbacks ---\n function handleSubmit(event: ChatSubmitEvent): void {\n const content = typeof event.message.content === 'string' ? event.message.content : '';\n record('onsubmit', content);\n conversation = appendMessages(conversation, {\n role: 'user',\n content: event.message.content,\n });\n if (autoReply) sendReply(replyText);\n }\n\n function handleEdit(event: { messageId: string; content: string }): void {\n record('onedit', event);\n conversation = replaceMessageContent(conversation, event.messageId, event.content);\n }\n\n onDestroy(() => cancelPending('destroy'));\n\n const surfaceMode = $derived<'default' | 'transparent'>(\n transparentSurface ? 'transparent' : 'default',\n );\n // `emptyPrompts` is included only when ON. Under exactOptionalPropertyTypes an\n // optional prop must be omitted, not passed as `undefined`, so spread it\n // conditionally rather than passing `emptyPrompts={undefined}`.\n const emptyPromptsProp = $derived(\n withEmptyPrompts ? { emptyPrompts: ['Tell me about alpha', 'Summarize the thread'] } : {},\n );\n</script>\n\n<div style=\"display: grid; grid-template-columns: 22rem 1fr; gap: 1rem; align-items: start;\">\n <!-- Control panel -->\n <div\n data-testid=\"harness-controls\"\n style=\"display: grid; gap: 1rem; padding: 1rem; border: 1px solid var(--cinder-border-muted); border-radius: var(--cinder-radius-md); background: var(--cinder-surface-inset);\"\n >\n <section style=\"display: grid; gap: 0.5rem;\">\n <strong>Reply as the other side</strong>\n <textarea\n data-testid=\"reply-text\"\n aria-label=\"Reply text\"\n bind:value={replyText}\n rows=\"2\"\n style=\"width: 100%; font: inherit; padding: 0.5rem; border-radius: var(--cinder-radius-sm); border: 1px solid var(--cinder-border-muted);\"\n ></textarea>\n <SegmentedControl\n id=\"harness-reply-mode\"\n selectionMode=\"single\"\n bind:value={replyMode}\n label=\"Reply mode\"\n >\n <Segment value=\"instant\">Instant</Segment>\n <Segment value=\"typing\">Typing</Segment>\n <Segment value=\"streaming\">Streaming</Segment>\n </SegmentedControl>\n {#if replyMode === 'streaming'}\n <SegmentedControl\n id=\"harness-stream-mechanism\"\n selectionMode=\"single\"\n bind:value={streamMechanism}\n label=\"Streaming mechanism\"\n >\n <Segment value=\"imperative\">Imperative</Segment>\n <Segment value=\"content-mutation\">Content</Segment>\n </SegmentedControl>\n {/if}\n <Button data-testid=\"send-reply\" onclick={() => sendReply(replyText)}>Send reply</Button>\n </section>\n\n <section style=\"display: grid; gap: 0.5rem;\">\n <strong>Inject tool call</strong>\n <input\n data-testid=\"tool-name\"\n aria-label=\"Tool name\"\n bind:value={toolName}\n style=\"font: inherit; padding: 0.4rem; border-radius: var(--cinder-radius-sm); border: 1px solid var(--cinder-border-muted);\"\n />\n <textarea\n data-testid=\"tool-arguments\"\n aria-label=\"Tool arguments (JSON)\"\n bind:value={toolArguments}\n rows=\"2\"\n style=\"font: var(--cinder-font-mono); padding: 0.4rem; border-radius: var(--cinder-radius-sm); border: 1px solid var(--cinder-border-muted);\"\n ></textarea>\n {#if !parsedToolArguments.ok}\n <span\n data-testid=\"tool-arguments-error\"\n style=\"color: var(--cinder-danger); font-size: var(--cinder-text-xs);\"\n >\n Arguments must be valid JSON.\n </span>\n {/if}\n <Select\n id=\"harness-tool-outcome\"\n label=\"Outcome\"\n bind:value={toolOutcome}\n options={[\n { value: 'success', label: 'success' },\n { value: 'error', label: 'error' },\n { value: 'action_required', label: 'action_required' },\n ]}\n />\n <Button data-testid=\"inject-tool\" disabled={!parsedToolArguments.ok} onclick={injectToolCall}>\n Inject tool call\n </Button>\n </section>\n\n <section style=\"display: grid; gap: 0.4rem;\">\n <strong>Features</strong>\n <Toggle id=\"t-attachments\" label=\"allowAttachments\" bind:checked={allowAttachments} />\n <Toggle id=\"t-search\" label=\"allowSearch\" bind:checked={allowSearch} />\n <Toggle id=\"t-copy\" label=\"allowCopy\" bind:checked={allowCopy} />\n <Toggle id=\"t-editing\" label=\"allowEditing\" bind:checked={allowEditing} />\n <Toggle id=\"t-retry\" label=\"allowRetry\" bind:checked={allowRetry} />\n <Toggle id=\"t-surface\" label=\"transparent surface\" bind:checked={transparentSurface} />\n <Toggle id=\"t-prompts\" label=\"emptyPrompts\" bind:checked={withEmptyPrompts} />\n <Toggle id=\"t-autoreply\" label=\"auto-reply on submit\" bind:checked={autoReply} />\n </section>\n\n <section style=\"display: grid; gap: 0.4rem;\">\n <strong>State</strong>\n <Button data-testid=\"seed-thread\" variant=\"secondary\" onclick={seedThread}\n >Seed sample thread</Button\n >\n <Button data-testid=\"seed-failed\" variant=\"secondary\" onclick={seedFailedMessage}\n >Seed failed message</Button\n >\n <Button data-testid=\"clear\" variant=\"secondary\" onclick={clearConversation}>Clear</Button>\n <Button data-testid=\"scroll-top\" variant=\"ghost\" onclick={() => chat?.scrollToTop()}\n >Scroll to top</Button\n >\n <Button data-testid=\"scroll-bottom\" variant=\"ghost\" onclick={() => chat?.scrollToBottom()}\n >Scroll to bottom</Button\n >\n <Button data-testid=\"focus-input\" variant=\"ghost\" onclick={() => chat?.focusInput()}\n >Focus composer</Button\n >\n </section>\n\n <section style=\"display: grid; gap: 0.25rem;\">\n <strong>Event log</strong>\n <!-- tabindex=0 gives the scrollable region keyboard access (axe\n scrollable-region-focusable). A group label names it without a `log`\n role, which would collide with the chat timeline's own role=\"log\". -->\n <div\n data-testid=\"event-log\"\n role=\"group\"\n aria-label=\"Event log\"\n tabindex=\"0\"\n style=\"display: grid; gap: 0.15rem; max-height: 10rem; overflow: auto; font-size: var(--cinder-text-xs); font-family: var(--cinder-font-mono);\"\n >\n {#each log as entry (entry.id)}\n <div data-testid=\"event-log-entry\" data-event={entry.event} data-payload={entry.payload}>\n {entry.event}: {entry.payload}\n </div>\n {/each}\n </div>\n </section>\n </div>\n\n <!-- The Chat under test, in a fixed-height box so the thread overflows. -->\n <div style=\"height: 34rem;\">\n <Chat\n bind:this={chat}\n id=\"harness-chat\"\n {conversation}\n {isStreaming}\n {streamingStatus}\n {allowAttachments}\n {allowSearch}\n {allowCopy}\n {allowEditing}\n {allowRetry}\n {surfaceMode}\n {...emptyPromptsProp}\n onsubmit={handleSubmit}\n onedit={handleEdit}\n onretry={(messageId: string) => record('onretry', messageId)}\n onstopgenerating={(event: { messageId: string }) => {\n cancelPending('preservePartial');\n record('onstopgenerating', event.messageId);\n }}\n onjumptolatest={() => record('onjumptolatest')}\n onscrollstatechange={(event: { isAtBottom: boolean }) =>\n record('onscrollstatechange', { isAtBottom: event.isAtBottom })}\n onunreadindicatorchange={(event: { unreadCount: number; hasNewMessageIndicator: boolean }) =>\n record('onunreadindicatorchange', event)}\n onexpandedchange={(expanded: boolean) => record('onexpandedchange', { expanded })}\n onattachmentadd={(attachment: { id: string }) => record('onattachmentadd', attachment.id)}\n onattachmentremove={(attachment: { id: string }) =>\n record('onattachmentremove', attachment.id)}\n onattachmentfailure={(_file: File, error: string) => record('onattachmentfailure', error)}\n >\n {#snippet header()}\n <div\n data-testid=\"harness-header\"\n style=\"padding: 0.5rem 0.75rem; font-weight: var(--cinder-font-semibold);\"\n >\n Harness conversation\n </div>\n {/snippet}\n {#snippet messageActions(message: Message)}\n <button type=\"button\" data-testid=\"harness-message-action\" data-message-id={message.id}\n >★</button\n >\n {/snippet}\n {#snippet messageStatus(message: Message)}\n <span data-testid=\"harness-message-status\" data-message-id={message.id}>·</span>\n {/snippet}\n </Chat>\n </div>\n</div>\n"
|
|
22
|
+
"code": "<script lang=\"ts\" module>\n export const title = 'Interactive harness';\n export const description =\n 'Drive Chat from a control panel: reply as the other side (instant / typing / streaming), inject tool calls, toggle features, and watch every callback fire.';\n\n export function createHistoryMessageTimestamp(page: number, index: number): string {\n return new Date(Date.UTC(2026, 4, 30 - page, 12, index)).toISOString();\n }\n</script>\n\n<script lang=\"ts\">\n import {\n Chat,\n appendAssistantMessage,\n appendMessages,\n appendUserMessage,\n createConversation,\n type ChatSubmitEvent,\n type ConversationHistory,\n type JSONValue,\n type Message,\n type ToolErrorCategory,\n } from '@lostgradient/cinder/chat';\n import { Button } from '@lostgradient/cinder/button';\n import { Input } from '@lostgradient/cinder/input';\n import { Segment } from '@lostgradient/cinder/segment';\n import { SegmentedControl } from '@lostgradient/cinder/segmented-control';\n import { Select } from '@lostgradient/cinder/select';\n import { Textarea } from '@lostgradient/cinder/textarea';\n import { Toggle } from '@lostgradient/cinder/toggle';\n import { onDestroy } from 'svelte';\n\n // Out of scope for this harness (documented, not silently dropped):\n // bottomThreshold / jumpThreshold (kept at defaults so overflow + jump are\n // testable without tuning), viewportAttachment (advanced escape hatch), and\n // the isAtBottom / unreadCount / hasNewMessageIndicator bindables (read-only\n // mirrors of behavior the wired callbacks already surface).\n\n // --- Chat instance (for the imperative streaming + scroll API) ---\n // Plain `let`: only read via `chat?.method()` calls, never reactively.\n let chat: ReturnType<typeof Chat> | undefined;\n\n // --- Conversation state (immutable snapshots via the cinder/chat builders) ---\n let conversation = $state<ConversationHistory>(createConversation({ id: 'harness' }));\n\n // --- Feature toggles wired straight onto <Chat> ---\n let allowAttachments = $state(true);\n let allowSearch = $state(true);\n let allowCopy = $state(true);\n let allowEditing = $state(true);\n let allowRetry = $state(true);\n let transparentSurface = $state(false);\n let withEmptyPrompts = $state(true);\n let autoReply = $state(true);\n let virtualized = $state(false);\n let historyEnabled = $state(false);\n let historyPage = 0;\n\n // --- Reply controls ---\n let replyText = $state('Here is the answer, delivered in a few deliberate chunks.');\n let replyMode = $state<'instant' | 'typing' | 'streaming'>('typing');\n let streamMechanism = $state<'imperative' | 'content-mutation'>('imperative');\n let isStreaming = $state(false);\n let streamingStatus = $state('');\n\n // --- Tool-call controls ---\n let toolName = $state('exports_check');\n let toolArguments = $state('{ \"package\": \"@lostgradient/cinder\" }');\n let toolOutcome = $state<'success' | 'error' | 'action_required'>('success');\n const parsedToolArguments = $derived.by<{ ok: boolean; value: JSONValue }>(() => {\n try {\n return { ok: true, value: JSON.parse(toolArguments) as JSONValue };\n } catch {\n return { ok: false, value: null };\n }\n });\n\n // --- Event log (queryable: data-event + data-payload per entry) ---\n // Chat emits a burst of identical onunreadindicatorchange events while its\n // empty state settles on mount (all `{unreadCount:0, hasNewMessageIndicator:\n // false}`). We de-duplicate: a callback whose (event, payload) is identical to\n // the most recent entry for that event is dropped. That kills the mount noise\n // deterministically (no timing dependency) while still recording every real,\n // distinct callback so tests can assert \"this fired because of my action\".\n type LogEntry = { id: number; event: string; payload: string };\n let log = $state<LogEntry[]>([]);\n let logCounter = 0;\n const lastPayloadByEvent = new Map<string, string>();\n function record(event: string, payload: unknown = ''): void {\n const text = typeof payload === 'string' ? payload : JSON.stringify(payload);\n if (lastPayloadByEvent.get(event) === text) return;\n lastPayloadByEvent.set(event, text);\n logCounter += 1;\n log = [{ id: logCounter, event, payload: text }, ...log].slice(0, 50);\n }\n\n // --- Pending-operation discipline (instance-local; NEVER module scope) ---\n // A single in-flight typing/streaming op at a time. Timers are tracked so we\n // can cancel deterministically; streamingPartial holds the accumulated text so\n // Stop can preserve it.\n let pendingTimers = new Set<ReturnType<typeof setTimeout>>();\n // Plain `let`: read only inside the streaming functions, never in the\n // template (the assistant message content comes from `conversation`).\n let streamingPartial = '';\n let streamingMessageId: string | null = null;\n // Monotonic token identifying the current stream/typing op. Each scheduled\n // chunk captures the token active when it was queued and bails if a newer op\n // has started — so an already-dequeued timer can't write into a fresh stream.\n let activeOperation = 0;\n\n function later(callback: () => void, delay: number): void {\n const handle = setTimeout(() => {\n pendingTimers.delete(handle);\n callback();\n }, delay);\n pendingTimers.add(handle);\n }\n\n function clearTimers(): void {\n for (const handle of pendingTimers) clearTimeout(handle);\n pendingTimers.clear();\n }\n\n /**\n * Cancel the in-flight op. Modes differ in how they treat partial content:\n * - preservePartial (Stop): keep what streamed so far, commit it to the message.\n * - discard (Clear / Seed / mode switch / new reply): drop the in-flight\n * (possibly empty) assistant message so no blank bubble is left behind.\n * - destroy (onDestroy): just clear timers.\n */\n function cancelPending(mode: 'preservePartial' | 'discard' | 'destroy'): void {\n clearTimers();\n // Invalidate the current op so any timer callback already dequeued (past\n // clearTimers) bails instead of mutating freshly-reset state.\n activeOperation += 1;\n if (mode === 'destroy') return;\n\n if (streamingMessageId) {\n if (mode === 'preservePartial') {\n conversation = replaceMessageContent(conversation, streamingMessageId, streamingPartial);\n } else {\n conversation = removeMessage(conversation, streamingMessageId);\n }\n chat?.endStreaming();\n }\n streamingMessageId = null;\n streamingPartial = '';\n isStreaming = false;\n streamingStatus = '';\n }\n\n // --- Immutable message helpers (replace/remove by id) ---\n function replaceMessageContent(\n current: ConversationHistory,\n id: string,\n content: string,\n ): ConversationHistory {\n const existing = current.messages[id];\n if (!existing) return current;\n return {\n ...current,\n messages: { ...current.messages, [id]: { ...existing, content } },\n updatedAt: new Date().toISOString(),\n };\n }\n\n function removeMessage(current: ConversationHistory, id: string): ConversationHistory {\n if (!current.messages[id]) return current;\n const messages = { ...current.messages };\n delete messages[id];\n return {\n ...current,\n ids: current.ids.filter((existing) => existing !== id),\n messages,\n updatedAt: new Date().toISOString(),\n };\n }\n\n function lastMessageId(current: ConversationHistory): string {\n return current.ids[current.ids.length - 1] ?? '';\n }\n\n function prependHistoryMessages(current: ConversationHistory): ConversationHistory {\n historyPage += 1;\n const olderMessages: Message[] = Array.from({ length: 6 }, (_, index) => {\n const id = `older-${historyPage}-${index}`;\n return {\n id,\n role: index % 2 === 0 ? 'user' : 'assistant',\n content: `Earlier context ${historyPage}.${index + 1}`,\n position: index,\n createdAt: createHistoryMessageTimestamp(historyPage, index),\n metadata: {},\n hidden: false,\n };\n });\n const messages = Object.fromEntries(olderMessages.map((message) => [message.id, message]));\n for (const [index, id] of current.ids.entries()) {\n const message = current.messages[id];\n if (message) {\n messages[id] = { ...message, position: olderMessages.length + index };\n }\n }\n return {\n ...current,\n ids: [...olderMessages.map((message) => message.id), ...current.ids],\n messages,\n updatedAt: new Date().toISOString(),\n };\n }\n\n // --- Reply as the other side ---\n function sendReply(text: string): void {\n const trimmed = text.trim();\n if (!trimmed) return;\n cancelPending('discard');\n // Start a new operation; stale timers from a prior op will no longer match.\n const operation = ++activeOperation;\n\n if (replyMode === 'instant') {\n conversation = appendAssistantMessage(conversation, trimmed);\n return;\n }\n\n if (replyMode === 'typing') {\n isStreaming = true;\n streamingStatus = 'Assistant is typing…';\n // A deliberately long-ish window so the \"typing\" state is comfortably\n // observable (by a person and by a test) before the reply lands.\n later(() => {\n if (operation !== activeOperation) return;\n isStreaming = false;\n streamingStatus = '';\n conversation = appendAssistantMessage(conversation, trimmed);\n }, 1200);\n return;\n }\n\n // streaming: append one empty assistant message, then grow ITS content.\n conversation = appendAssistantMessage(conversation, '');\n const messageId = lastMessageId(conversation);\n streamingMessageId = messageId;\n streamingPartial = '';\n // `isStreaming` drives the composer's Stop affordance for BOTH mechanisms;\n // only `beginStreaming()` (the rAF-buffered token path) is imperative-only.\n isStreaming = true;\n streamingStatus = 'Streaming…';\n if (streamMechanism === 'imperative') {\n chat?.beginStreaming(messageId);\n }\n // Deterministic cadence: a fixed number of chunks at a fixed delay so an\n // intermediate partial state is reliably observable before completion.\n const chunks = splitIntoChunks(trimmed, 5);\n streamChunk(chunks, 0, activeOperation);\n }\n\n function streamChunk(chunks: string[], index: number, operation: number): void {\n // A newer reply/clear/seed started — this is a stale continuation, bail.\n if (operation !== activeOperation) return;\n\n if (index >= chunks.length) {\n // Commit the final content into the message, then end the stream.\n conversation = replaceMessageContent(\n conversation,\n streamingMessageId ?? '',\n streamingPartial,\n );\n if (streamMechanism === 'imperative') chat?.endStreaming();\n streamingMessageId = null;\n isStreaming = false;\n streamingStatus = '';\n return;\n }\n const chunk = chunks[index] ?? '';\n streamingPartial += chunk;\n if (streamMechanism === 'imperative') {\n chat?.pushToken(chunk);\n } else {\n conversation = replaceMessageContent(\n conversation,\n streamingMessageId ?? '',\n streamingPartial,\n );\n }\n later(() => streamChunk(chunks, index + 1, operation), 120);\n }\n\n function splitIntoChunks(text: string, count: number): string[] {\n const words = text.split(' ');\n const perChunk = Math.max(1, Math.ceil(words.length / count));\n const chunks: string[] = [];\n for (let index = 0; index < words.length; index += perChunk) {\n const slice = words.slice(index, index + perChunk).join(' ');\n chunks.push(index === 0 ? slice : ` ${slice}`);\n }\n return chunks;\n }\n\n // --- Inject a tool call + paired result (all outcomes) ---\n function injectToolCall(): void {\n if (!parsedToolArguments.ok) return;\n // Unique per injection — deriving from logCounter would reuse the same id\n // for repeated injections that don't add a log entry, breaking pairing.\n const callId = `call-${crypto.randomUUID()}`;\n const result =\n toolOutcome === 'error'\n ? {\n callId,\n outcome: 'error' as const,\n content: null,\n error: {\n code: 'tool_failed',\n category: 'transient' as ToolErrorCategory,\n retryable: true,\n message: 'The tool failed: upstream returned a transient error.',\n },\n }\n : toolOutcome === 'action_required'\n ? {\n callId,\n outcome: 'action_required' as const,\n content: null,\n action: {\n type: 'approval' as const,\n message: 'Approve running this tool before it executes?',\n },\n }\n : { callId, outcome: 'success' as const, content: { status: 'ok' } };\n\n conversation = appendMessages(\n conversation,\n {\n role: 'tool-call',\n content: '',\n toolCall: { id: callId, name: toolName, arguments: parsedToolArguments.value },\n },\n { role: 'tool-result', content: '', toolResult: result },\n );\n }\n\n // --- Seed / clear ---\n function seedThread(): void {\n cancelPending('discard');\n let next = createConversation({ id: 'harness-seeded' });\n // Repeated token \"alpha\" for deterministic search assertions, plus enough\n // messages to overflow the fixed-height viewport.\n next = appendUserMessage(next, 'Tell me about alpha.');\n next = appendAssistantMessage(next, 'alpha is the first item we track.');\n for (let index = 0; index < 12; index += 1) {\n next = appendUserMessage(next, `Follow-up question number ${index + 1}.`);\n next = appendAssistantMessage(\n next,\n `Detailed answer number ${index + 1}, with alpha context.`,\n );\n }\n conversation = next;\n }\n\n function seedFailedMessage(): void {\n conversation = appendMessages(conversation, {\n role: 'user',\n content: 'This message failed to send.',\n metadata: { _deliveryStatus: 'failed' },\n });\n }\n\n function clearConversation(): void {\n cancelPending('discard');\n conversation = createConversation({ id: 'harness-cleared' });\n historyPage = 0;\n }\n\n // --- Chat callbacks ---\n function handleSubmit(event: ChatSubmitEvent): void {\n const content = typeof event.message.content === 'string' ? event.message.content : '';\n record('onsubmit', content);\n conversation = appendMessages(conversation, {\n role: 'user',\n content: event.message.content,\n });\n if (autoReply) sendReply(replyText);\n }\n\n function handleEdit(event: { messageId: string; content: string }): void {\n record('onedit', event);\n conversation = replaceMessageContent(conversation, event.messageId, event.content);\n }\n\n async function handleLoadHistory(): Promise<void> {\n conversation = prependHistoryMessages(conversation);\n record('onloadhistory', historyPage);\n }\n\n onDestroy(() => cancelPending('destroy'));\n\n const surfaceMode = $derived<'default' | 'transparent'>(\n transparentSurface ? 'transparent' : 'default',\n );\n // `emptyPrompts` is included only when ON. Under exactOptionalPropertyTypes an\n // optional prop must be omitted, not passed as `undefined`, so spread it\n // conditionally rather than passing `emptyPrompts={undefined}`.\n const emptyPromptsProp = $derived(\n withEmptyPrompts ? { emptyPrompts: ['Tell me about alpha', 'Summarize the thread'] } : {},\n );\n const historyProps = $derived(\n historyEnabled ? { hasMoreHistory: true, onloadhistory: handleLoadHistory } : {},\n );\n</script>\n\n<div style=\"display: grid; grid-template-columns: 22rem 1fr; gap: 1rem; align-items: start;\">\n <!-- Control panel -->\n <div\n data-testid=\"harness-controls\"\n style=\"display: grid; gap: 1rem; padding: 1rem; border: 1px solid var(--cinder-border-muted); border-radius: var(--cinder-radius-md); background: var(--cinder-surface-inset);\"\n >\n <section style=\"display: grid; gap: 0.5rem;\">\n <strong>Reply as the other side</strong>\n <Textarea\n id=\"harness-reply-text\"\n data-testid=\"reply-text\"\n label=\"Reply text\"\n bind:value={replyText}\n rows={2}\n />\n <SegmentedControl\n id=\"harness-reply-mode\"\n selectionMode=\"single\"\n bind:value={replyMode}\n label=\"Reply mode\"\n >\n <Segment value=\"instant\">Instant</Segment>\n <Segment value=\"typing\">Typing</Segment>\n <Segment value=\"streaming\">Streaming</Segment>\n </SegmentedControl>\n {#if replyMode === 'streaming'}\n <SegmentedControl\n id=\"harness-stream-mechanism\"\n selectionMode=\"single\"\n bind:value={streamMechanism}\n label=\"Streaming mechanism\"\n >\n <Segment value=\"imperative\">Imperative</Segment>\n <Segment value=\"content-mutation\">Content</Segment>\n </SegmentedControl>\n {/if}\n <Button data-testid=\"send-reply\" onclick={() => sendReply(replyText)}>Send reply</Button>\n </section>\n\n <section style=\"display: grid; gap: 0.5rem;\">\n <strong>Inject tool call</strong>\n <Input\n id=\"harness-tool-name\"\n data-testid=\"tool-name\"\n label=\"Tool name\"\n bind:value={toolName}\n />\n <Textarea\n id=\"harness-tool-arguments\"\n data-testid=\"tool-arguments\"\n label=\"Tool arguments (JSON)\"\n bind:value={toolArguments}\n rows={2}\n />\n {#if !parsedToolArguments.ok}\n <span\n data-testid=\"tool-arguments-error\"\n style=\"color: var(--cinder-danger); font-size: var(--cinder-text-xs);\"\n >\n Arguments must be valid JSON.\n </span>\n {/if}\n <Select\n id=\"harness-tool-outcome\"\n label=\"Outcome\"\n bind:value={toolOutcome}\n options={[\n { value: 'success', label: 'success' },\n { value: 'error', label: 'error' },\n { value: 'action_required', label: 'action_required' },\n ]}\n />\n <Button data-testid=\"inject-tool\" disabled={!parsedToolArguments.ok} onclick={injectToolCall}>\n Inject tool call\n </Button>\n </section>\n\n <section style=\"display: grid; gap: 0.4rem;\">\n <strong>Features</strong>\n <Toggle id=\"t-attachments\" label=\"allowAttachments\" bind:checked={allowAttachments} />\n <Toggle id=\"t-search\" label=\"allowSearch\" bind:checked={allowSearch} />\n <Toggle id=\"t-copy\" label=\"allowCopy\" bind:checked={allowCopy} />\n <Toggle id=\"t-editing\" label=\"allowEditing\" bind:checked={allowEditing} />\n <Toggle id=\"t-retry\" label=\"allowRetry\" bind:checked={allowRetry} />\n <Toggle id=\"t-surface\" label=\"transparent surface\" bind:checked={transparentSurface} />\n <Toggle id=\"t-prompts\" label=\"emptyPrompts\" bind:checked={withEmptyPrompts} />\n <Toggle id=\"t-autoreply\" label=\"auto-reply on submit\" bind:checked={autoReply} />\n <Toggle id=\"t-virtualized\" label=\"virtualized transcript\" bind:checked={virtualized} />\n <Toggle id=\"t-history\" label=\"history pagination\" bind:checked={historyEnabled} />\n </section>\n\n <section style=\"display: grid; gap: 0.4rem;\">\n <strong>State</strong>\n <Button data-testid=\"seed-thread\" variant=\"secondary\" onclick={seedThread}\n >Seed sample thread</Button\n >\n <Button data-testid=\"seed-failed\" variant=\"secondary\" onclick={seedFailedMessage}\n >Seed failed message</Button\n >\n <Button data-testid=\"clear\" variant=\"secondary\" onclick={clearConversation}>Clear</Button>\n <Button data-testid=\"scroll-top\" variant=\"ghost\" onclick={() => chat?.scrollToTop()}\n >Scroll to top</Button\n >\n <Button data-testid=\"scroll-bottom\" variant=\"ghost\" onclick={() => chat?.scrollToBottom()}\n >Scroll to bottom</Button\n >\n <Button data-testid=\"focus-input\" variant=\"ghost\" onclick={() => chat?.focusInput()}\n >Focus composer</Button\n >\n </section>\n\n <section style=\"display: grid; gap: 0.25rem;\">\n <strong>Event log</strong>\n <!-- tabindex=0 gives the scrollable region keyboard access (axe\n scrollable-region-focusable). A group label names it without a `log`\n role, which would collide with the chat timeline's own role=\"log\".\n svelte:element keeps the rendered DOM as a div while avoiding the\n static a11y warning for this focusable scroll-region pattern. -->\n <svelte:element\n this={'div'}\n data-testid=\"event-log\"\n role=\"group\"\n aria-label=\"Event log\"\n tabindex={0}\n style=\"display: grid; gap: 0.15rem; max-height: 10rem; overflow: auto; font-size: var(--cinder-text-xs); font-family: var(--cinder-font-mono);\"\n >\n {#each log as entry (entry.id)}\n <div data-testid=\"event-log-entry\" data-event={entry.event} data-payload={entry.payload}>\n {entry.event}: {entry.payload}\n </div>\n {/each}\n </svelte:element>\n </section>\n </div>\n\n <!-- The Chat under test, in a fixed-height box so the thread overflows. -->\n <div style=\"height: 34rem;\">\n <Chat\n bind:this={chat}\n id=\"harness-chat\"\n {conversation}\n {isStreaming}\n {streamingStatus}\n {allowAttachments}\n {allowSearch}\n {allowCopy}\n {allowEditing}\n {allowRetry}\n {surfaceMode}\n {virtualized}\n virtualizationEstimatedRowHeight={72}\n virtualizationInitialHeight={480}\n virtualizationOverscan={2}\n {...emptyPromptsProp}\n {...historyProps}\n onsubmit={handleSubmit}\n onedit={handleEdit}\n onretry={(messageId: string) => record('onretry', messageId)}\n onstopgenerating={(event: { messageId: string }) => {\n cancelPending('preservePartial');\n record('onstopgenerating', event.messageId);\n }}\n onjumptolatest={() => record('onjumptolatest')}\n onscrollstatechange={(event: { isAtBottom: boolean }) =>\n record('onscrollstatechange', { isAtBottom: event.isAtBottom })}\n onunreadindicatorchange={(event: { unreadCount: number; hasNewMessageIndicator: boolean }) =>\n record('onunreadindicatorchange', event)}\n onexpandedchange={(expanded: boolean) => record('onexpandedchange', { expanded })}\n onattachmentadd={(attachment: { id: string }) => record('onattachmentadd', attachment.id)}\n onattachmentremove={(attachment: { id: string }) =>\n record('onattachmentremove', attachment.id)}\n onattachmentfailure={(_file: File, error: string) => record('onattachmentfailure', error)}\n >\n {#snippet header()}\n <div\n data-testid=\"harness-header\"\n style=\"padding: 0.5rem 0.75rem; font-weight: var(--cinder-font-semibold);\"\n >\n Harness conversation\n </div>\n {/snippet}\n {#snippet messageActions(message: Message)}\n <Button\n iconOnly={true}\n label=\"Message action\"\n size=\"xs\"\n variant=\"ghost\"\n data-testid=\"harness-message-action\"\n data-message-id={message.id}\n >\n ★\n </Button>\n {/snippet}\n {#snippet messageStatus(message: Message)}\n <span data-testid=\"harness-message-status\" data-message-id={message.id}>·</span>\n {/snippet}\n </Chat>\n </div>\n</div>\n"
|
|
17
23
|
},
|
|
18
24
|
{
|
|
19
25
|
"id": "streaming",
|
|
@@ -21,6 +27,24 @@
|
|
|
21
27
|
"description": "Streaming status keeps the composer in stop mode.",
|
|
22
28
|
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendAssistantMessage,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n\n let conversation = $state(\n appendAssistantMessage(\n appendUserMessage(\n createConversation({ id: 'streaming-chat' }),\n 'What is happening in the current run?',\n ),\n 'The assistant is applying the port, checking compiler feedback, and updating the demos as each component lands.',\n ),\n );\n</script>\n\n<div style=\"height: 34rem;\">\n <Chat\n id=\"playground-streaming-chat\"\n {conversation}\n isStreaming\n streamingStatus=\"Writing response...\"\n allowAttachments={false}\n />\n</div>\n"
|
|
23
29
|
},
|
|
30
|
+
{
|
|
31
|
+
"id": "with-reasoning-and-steps",
|
|
32
|
+
"title": "With reasoning and steps",
|
|
33
|
+
"description": "Assistant messages can surface a collapsible reasoning block (extended thinking) and an ordered step list before the final answer. Both are UI-only overlays derived from message metadata — the underlying transcript is unchanged.",
|
|
34
|
+
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendMessages,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n\n const reasoningContent =\n 'The user is asking me to walk them through solving a quadratic equation step by step. I should break this down into a structured sequence of steps: first identify the coefficients, then apply the quadratic formula, then simplify the result. I should also surface my reasoning process so the user can see my thinking before I present the final answer.';\n\n const conversation = appendMessages(\n appendUserMessage(\n createConversation({ id: 'reasoning-steps-chat' }),\n 'Can you solve 2x² - 4x - 6 = 0 and walk me through the steps?',\n ),\n {\n role: 'assistant',\n content:\n 'The solutions are **x = 3** and **x = -1**.\\n\\nYou can verify these by substituting back: 2(9) − 4(3) − 6 = 18 − 12 − 6 = 0 ✓ and 2(1) − 4(−1) − 6 = 2 + 4 − 6 = 0 ✓',\n metadata: {\n 'cinder:reasoning': reasoningContent,\n 'cinder:steps': [\n {\n title: 'Identify coefficients',\n content: 'a = 2, b = −4, c = −6',\n status: 'done',\n },\n {\n title: 'Apply the quadratic formula',\n content: 'x = (4 ± √(16 + 48)) / 4 = (4 ± √64) / 4 = (4 ± 8) / 4',\n status: 'done',\n },\n {\n title: 'Calculate both solutions',\n content: 'x₁ = (4 + 8) / 4 = 3 · x₂ = (4 − 8) / 4 = −1',\n status: 'done',\n },\n ],\n },\n },\n );\n</script>\n\n<div style=\"height: 34rem;\">\n <Chat id=\"playground-reasoning-steps-chat\" {conversation} allowAttachments={false} />\n</div>\n"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"id": "with-suggestions",
|
|
38
|
+
"title": "With suggested replies",
|
|
39
|
+
"description": "After the final assistant message, suggested follow-up labels appear as clickable chips. Clicking a chip calls onsuggestionselect(label). The chips are derived from message metadata — the underlying transcript is unchanged.",
|
|
40
|
+
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendMessages,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n\n let conversation = $state(\n appendMessages(\n appendUserMessage(\n createConversation({ id: 'suggestions-chat' }),\n 'What are some good topics to learn about AI?',\n ),\n {\n role: 'assistant',\n content:\n 'Great question! Here are some foundational areas to explore:\\n\\n- **Prompt engineering** — crafting effective inputs for language models\\n- **RAG (Retrieval-Augmented Generation)** — combining search with generation\\n- **Fine-tuning** — adapting pre-trained models to specific tasks\\n- **AI safety** — understanding alignment, interpretability, and robustness\\n\\nWhich of these interests you most?',\n metadata: {\n 'cinder:suggestions': [\n 'Tell me more about prompt engineering',\n 'Explain RAG in simple terms',\n 'How does fine-tuning work?',\n 'What is AI safety?',\n ],\n },\n },\n ),\n );\n\n function handleSuggestionSelect(label: string): void {\n conversation = appendUserMessage(conversation, label);\n }\n</script>\n\n<div style=\"height: 34rem;\">\n <Chat\n id=\"playground-suggestions-chat\"\n {conversation}\n allowAttachments={false}\n onsuggestionselect={handleSuggestionSelect}\n onsubmit={(event) => {\n conversation = appendUserMessage(conversation, event.message.content as string);\n }}\n />\n</div>\n"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"id": "with-tool-approval",
|
|
44
|
+
"title": "With tool approval",
|
|
45
|
+
"description": "Action-required tool results render as approval prompts the user must accept or reject before the tool can continue.",
|
|
46
|
+
"code": "<script lang=\"ts\">\n import {\n Chat,\n appendMessages,\n appendUserMessage,\n createConversation,\n } from '@lostgradient/cinder/chat';\n\n let conversation = $state(\n appendMessages(\n appendUserMessage(\n createConversation({ id: 'tool-approval-chat' }),\n 'Deploy the latest build to production.',\n ),\n {\n role: 'tool-call',\n content: '',\n toolCall: {\n id: 'call-deploy-prod',\n name: 'deploy_to_production',\n arguments: { environment: 'production', version: '2.4.1' },\n },\n },\n {\n role: 'tool-result',\n content: '',\n toolResult: {\n callId: 'call-deploy-prod',\n outcome: 'action_required',\n content: null,\n action: {\n type: 'approval',\n message:\n 'Deploying version 2.4.1 to production will replace the live environment. This action cannot be undone automatically. Do you want to proceed?',\n schema: { environment: 'production', version: '2.4.1', replicas: 3 },\n },\n },\n },\n ),\n );\n\n function handleApprove(toolCallId: string) {\n conversation = appendMessages(conversation, {\n role: 'assistant',\n content: `Approved. Deploying version 2.4.1 to production now. Tool call ID: ${toolCallId}`,\n });\n }\n\n function handleDeny(toolCallId: string) {\n conversation = appendMessages(conversation, {\n role: 'assistant',\n content: `Deployment cancelled. The production environment was not modified. Tool call ID: ${toolCallId}`,\n });\n }\n</script>\n\n<div style=\"height: 34rem;\">\n <Chat\n id=\"playground-tool-approval-chat\"\n {conversation}\n allowAttachments={false}\n onapprove={handleApprove}\n ondeny={handleDeny}\n />\n</div>\n"
|
|
47
|
+
},
|
|
24
48
|
{
|
|
25
49
|
"id": "with-tool-calls",
|
|
26
50
|
"title": "With tool calls",
|