@lostgradient/cinder 0.3.0 → 0.4.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 +146 -0
- package/README.md +2 -2
- package/components.json +138 -86
- package/dist/_internal/locale-context.d.ts +9 -0
- package/dist/_internal/text-direction.d.ts +4 -0
- package/dist/_internal/tree-context.d.ts +2 -0
- package/dist/api-contract.d.ts +1 -1
- package/dist/components/_internal/create-command-list-state.svelte.d.ts +43 -0
- package/dist/components/_internal/create-sliding-dialog-state.svelte.d.ts +26 -0
- package/dist/components/access-gate/index.js +379 -513
- package/dist/components/alert/alert.css +1 -1
- package/dist/components/alert/alert.schema.js +4 -4
- package/dist/components/alert/alert.types.d.ts +4 -4
- package/dist/components/alert/index.js +4 -4
- package/dist/components/alert-dialog/index.js +9 -3
- package/dist/components/approval-card/approval-card-state.d.ts +3 -0
- package/dist/components/approval-card/approval-card.css +239 -0
- package/dist/components/approval-card/approval-card.schema.js +236 -0
- package/dist/components/approval-card/approval-card.svelte.d.ts +21 -0
- package/dist/components/approval-card/approval-card.types.d.ts +155 -0
- package/dist/components/{subscription-badge/subscription-badge.variables.js → approval-card/approval-card.variables.js} +4 -4
- package/dist/components/approval-card/index.d.ts +5 -0
- package/dist/components/approval-card/index.js +3794 -0
- package/dist/components/autocomplete/autocomplete.css +12 -1
- package/dist/components/autocomplete/index.js +106 -81
- package/dist/components/avatar-group/index.js +3 -2
- package/dist/components/badge/badge.schema.js +6 -3
- package/dist/components/badge/badge.svelte.d.ts +4 -0
- package/dist/components/badge/badge.types.d.ts +18 -4
- package/dist/components/badge/index.d.ts +1 -1
- package/dist/components/badge/index.js +99 -3
- package/dist/components/banner/banner.schema.js +2 -2
- package/dist/components/banner/banner.types.d.ts +1 -1
- package/dist/components/banner/index.js +3 -3
- package/dist/components/button/button.css +1 -1
- package/dist/components/capability-gate/capability-gate.css +15 -2
- package/dist/components/capability-gate/capability-gate.schema.js +4 -4
- package/dist/components/capability-gate/capability-gate.types.d.ts +6 -6
- package/dist/components/capability-gate/index.js +7 -7
- package/dist/components/chat/chat.schema.js +11 -26
- package/dist/components/chat/chat.types.d.ts +30 -15
- package/dist/components/chat/container/chat-events.d.ts +2 -2
- package/dist/components/chat/container/chat-history-trigger.svelte.d.ts +1 -1
- package/dist/components/chat/container/chat.svelte.d.ts +1 -1
- package/dist/components/chat/container/use-chat-scroll-state.svelte.d.ts +4 -4
- package/dist/components/chat/container/use-chat-unread-state.svelte.d.ts +6 -6
- package/dist/components/chat/index.d.ts +1 -1
- package/dist/components/chat/index.js +2257 -1913
- package/dist/components/chat/input/chat-input.svelte.d.ts +3 -1
- package/dist/components/chat-conversation-header/index.js +261 -29
- package/dist/components/chat-conversation-list/chat-conversation-list.css +13 -0
- package/dist/components/checkbox/checkbox.css +3 -0
- package/dist/components/checkbox/checkbox.schema.js +6 -1
- package/dist/components/checkbox/checkbox.types.d.ts +2 -0
- package/dist/components/checkbox/index.js +78 -22
- package/dist/components/checkbox-group/checkbox-group.css +3 -0
- package/dist/components/checkbox-group/checkbox-group.schema.js +4 -4
- package/dist/components/checkbox-group/checkbox-group.types.d.ts +12 -7
- package/dist/components/checkbox-group/index.js +50 -21
- package/dist/components/choice-grid/index.js +2 -2
- package/dist/components/choice-grid-item/index.js +2 -2
- package/dist/components/click-away-listener/click-away-listener.schema.js +3 -3
- package/dist/components/click-away-listener/click-away-listener.types.d.ts +3 -3
- package/dist/components/click-away-listener/index.js +3 -3
- package/dist/components/code-block/code-block.css +4 -3
- package/dist/components/code-block/index.js +6 -5
- package/dist/components/collapsible/collapsible.schema.js +2 -2
- package/dist/components/collapsible/collapsible.types.d.ts +2 -2
- package/dist/components/collapsible/index.js +3 -3
- package/dist/components/color-field/color-field.schema.js +3 -3
- package/dist/components/color-field/color-field.types.d.ts +2 -2
- package/dist/components/color-field/index.js +133 -69
- package/dist/components/color-picker/index.js +29 -18
- package/dist/components/color-swatch-picker/index.js +29 -18
- package/dist/components/combobox/combobox.schema.js +6 -2
- package/dist/components/combobox/combobox.types.d.ts +7 -1
- package/dist/components/combobox/index.js +112 -60
- package/dist/components/command-item/command-item.css +10 -0
- package/dist/components/command-item/command-item.schema.js +9 -1
- package/dist/components/command-item/command-item.types.d.ts +4 -0
- package/dist/components/command-item/index.js +9 -1
- package/dist/components/command-menu/index.js +257 -161
- package/dist/components/command-palette/command-palette.schema.js +2 -3
- package/dist/components/command-palette/command-palette.types.d.ts +1 -2
- package/dist/components/command-palette/index.js +282 -192
- package/dist/components/confirm-dialog/index.js +9 -3
- package/dist/components/context-menu/context-menu.context.d.ts +2 -0
- package/dist/components/context-menu/index.js +300 -40
- package/dist/components/context-menu-trigger/index.js +11 -8
- package/dist/components/copy-button/index.js +6 -5
- package/dist/components/data-grid/_internal/column-model.svelte.d.ts +1 -0
- package/dist/components/data-grid/data-grid.css +25 -0
- package/dist/components/data-grid/data-grid.schema.js +3 -3
- package/dist/components/data-grid/data-grid.types.d.ts +8 -2
- package/dist/components/data-grid/index.js +11 -8
- package/dist/components/data-list/data-list.schema.js +7 -10
- package/dist/components/data-list/data-list.types.d.ts +5 -9
- package/dist/components/data-list/index.js +15 -39
- package/dist/components/data-table/data-table.css +13 -0
- package/dist/components/data-table/index.js +32 -19
- package/dist/components/date-range-field/date-range-field.schema.js +7 -3
- package/dist/components/date-range-field/date-range-field.svelte.d.ts +2 -2
- package/dist/components/date-range-field/date-range-field.types.d.ts +15 -10
- package/dist/components/date-range-field/index.d.ts +1 -1
- package/dist/components/date-range-field/index.js +160 -17
- package/dist/components/diff-viewer/diff-front-matter.svelte.d.ts +2 -2
- package/dist/components/diff-viewer/diff-line.svelte.d.ts +2 -2
- package/dist/components/diff-viewer/diff-toolbar.svelte.d.ts +2 -2
- package/dist/components/diff-viewer/diff-viewer.svelte.d.ts +1 -1
- package/dist/components/diff-viewer/diff-viewer.types.d.ts +3 -3
- package/dist/components/diff-viewer/index.d.ts +1 -1
- package/dist/components/diff-viewer/index.js +171 -67
- package/dist/components/drawer/index.js +353 -283
- package/dist/components/dropdown/dropdown.css +7 -1
- package/dist/components/dropdown/dropdown.types.d.ts +3 -0
- package/dist/components/dropdown/index.js +267 -35
- package/dist/components/dropdown-group/dropdown-group.schema.js +4 -4
- package/dist/components/dropdown-group/dropdown-group.types.d.ts +4 -4
- package/dist/components/dropdown-group/index.js +7 -7
- package/dist/components/dropdown-item/dropdown-item.schema.js +9 -1
- package/dist/components/dropdown-item/dropdown-item.types.d.ts +5 -0
- package/dist/components/dropdown-item/index.js +13 -8
- package/dist/components/dropdown-menu/index.js +236 -14
- package/dist/components/dropdown-trigger/index.js +11 -12
- package/dist/components/event-stream-viewer/event-stream-viewer-keys.d.ts +6 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.css +46 -0
- package/dist/components/event-stream-viewer/event-stream-viewer.schema.js +83 -10
- package/dist/components/event-stream-viewer/event-stream-viewer.svelte.d.ts +3 -3
- package/dist/components/event-stream-viewer/event-stream-viewer.types.d.ts +124 -3
- package/dist/components/event-stream-viewer/index.d.ts +1 -1
- package/dist/components/event-stream-viewer/index.js +764 -409
- package/dist/components/faceted-filter-bar/faceted-filter-bar.css +9 -0
- package/dist/components/faceted-filter-bar/index.js +25 -6
- package/dist/components/file-upload/file-upload.css +5 -5
- package/dist/components/floating-action-button/floating-action-button.css +22 -22
- package/dist/components/floating-action-button/floating-action-button.schema.js +5 -5
- package/dist/components/floating-action-button/floating-action-button.svelte.d.ts +1 -1
- package/dist/components/floating-action-button/floating-action-button.types.d.ts +21 -21
- package/dist/components/floating-action-button/index.d.ts +1 -1
- package/dist/components/floating-action-button/index.js +8 -8
- package/dist/components/form-field/form-field.css +3 -13
- package/dist/components/form-field/index.js +2 -2
- package/dist/components/hover-card/index.js +3 -2
- package/dist/components/input/index.js +131 -67
- package/dist/components/input/input.schema.js +6 -1
- package/dist/components/input/input.types.d.ts +2 -0
- package/dist/components/invocation-rule-builder/index.d.ts +1 -1
- package/dist/components/invocation-rule-builder/index.js +184 -107
- package/dist/components/invocation-rule-builder/invocation-rule-builder.css +63 -6
- package/dist/components/invocation-rule-builder/invocation-rule-builder.schema.js +133 -35
- package/dist/components/invocation-rule-builder/invocation-rule-builder.svelte.d.ts +2 -2
- package/dist/components/invocation-rule-builder/invocation-rule-builder.types.d.ts +85 -8
- package/dist/components/json-schema-editor/form-view.svelte.d.ts +1 -0
- package/dist/components/json-schema-editor/index.js +677 -357
- package/dist/components/json-schema-editor/json-schema-editor.css +6 -1
- package/dist/components/json-schema-editor/json-schema-toolbar.svelte.d.ts +1 -0
- package/dist/components/json-schema-editor/property-editor.svelte.d.ts +2 -0
- package/dist/components/json-schema-editor/property-list-validation.d.ts +1 -0
- package/dist/components/json-schema-editor/property-list.svelte.d.ts +1 -0
- package/dist/components/json-viewer/_json-viewer-node.svelte.d.ts +3 -0
- package/dist/components/json-viewer/index.js +112 -26
- package/dist/components/json-viewer/json-viewer.css +11 -0
- package/dist/components/kanban-board/index.js +18 -13
- package/dist/components/kanban-board/kanban-board.css +56 -3
- package/dist/components/keyboard-shortcuts/index.js +2 -2
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.css +2 -2
- package/dist/components/label/index.js +2 -2
- package/dist/components/label/label.css +2 -9
- package/dist/components/load-more/index.js +4 -4
- package/dist/components/load-more/load-more.css +13 -5
- package/dist/components/load-more/load-more.schema.js +4 -4
- package/dist/components/load-more/load-more.types.d.ts +3 -3
- package/dist/components/locale-provider/index.d.ts +4 -0
- package/dist/components/locale-provider/index.js +76 -0
- package/dist/components/{connection-indicator/connection-indicator.schema.js → locale-provider/locale-provider.schema.js} +18 -14
- package/dist/components/locale-provider/locale-provider.svelte.d.ts +17 -0
- package/dist/components/locale-provider/locale-provider.types.d.ts +17 -0
- package/dist/components/{connection-indicator/connection-indicator.variables.js → locale-provider/locale-provider.variables.js} +4 -4
- package/dist/components/markdown-editor/editor-toolbar/editor-toolbar.svelte.d.ts +2 -0
- package/dist/components/markdown-editor/index.js +437 -128
- package/dist/components/markdown-editor/markdown-editor.schema.js +4 -4
- package/dist/components/markdown-editor/markdown-editor.types.d.ts +4 -4
- package/dist/components/masonry/masonry.schema.js +4 -3
- package/dist/components/masonry/masonry.types.d.ts +13 -2
- package/dist/components/matrix-chart/index.js +245 -224
- package/dist/components/media-controls/index.js +7 -7
- package/dist/components/media-controls/media-controls.css +15 -4
- package/dist/components/media-controls/media-controls.schema.js +4 -4
- package/dist/components/media-controls/media-controls.types.d.ts +7 -7
- package/dist/components/menu-bar/menu-bar.css +11 -0
- package/dist/components/menu-bar/menu-bar.svelte.d.ts +1 -0
- package/dist/components/modal/index.js +9 -3
- package/dist/components/navigation-bar/index.js +4 -4
- package/dist/components/navigation-bar/navigation-bar.schema.js +2 -2
- package/dist/components/navigation-bar/navigation-bar.types.d.ts +1 -1
- package/dist/components/number-input/index.js +88 -42
- package/dist/components/number-input/number-input.schema.js +4 -3
- package/dist/components/number-input/number-input.types.d.ts +16 -5
- package/dist/components/payload-inspector/index.d.ts +1 -1
- package/dist/components/payload-inspector/index.js +271 -64
- package/dist/components/payload-inspector/payload-inspector.css +6 -0
- package/dist/components/payload-inspector/payload-inspector.schema.js +27 -15
- package/dist/components/payload-inspector/payload-inspector.svelte.d.ts +2 -2
- package/dist/components/payload-inspector/payload-inspector.types.d.ts +52 -3
- package/dist/components/permission-matrix/permission-matrix.css +10 -0
- package/dist/components/phone-input/index.js +56 -33
- package/dist/components/phone-input/phone-input.schema.js +2 -2
- package/dist/components/phone-input/phone-input.types.d.ts +3 -2
- package/dist/components/pin-input/index.js +46 -41
- package/dist/components/pin-input/pin-input.schema.js +9 -2
- package/dist/components/pin-input/pin-input.types.d.ts +10 -1
- package/dist/components/popover/index.js +11 -4
- package/dist/components/portal/index.js +3 -2
- package/dist/components/pricing-card/index.js +22 -7
- package/dist/components/radio-group/index.js +51 -21
- package/dist/components/radio-group/radio-group.css +3 -0
- package/dist/components/radio-group/radio-group.schema.js +3 -3
- package/dist/components/radio-group/radio-group.types.d.ts +6 -2
- package/dist/components/rating/index.js +1 -6
- package/dist/components/rating/rating.schema.js +9 -2
- package/dist/components/rating/rating.types.d.ts +6 -0
- package/dist/components/review-editor/comment-list.svelte.d.ts +1 -1
- package/dist/components/review-editor/index.d.ts +1 -1
- package/dist/components/review-editor/index.js +789 -314
- package/dist/components/review-editor/review-editor-controls.svelte.d.ts +1 -1
- package/dist/components/review-editor/review-editor-impl.svelte.d.ts +4 -4
- package/dist/components/review-editor/review-editor-selection-types.d.ts +1 -1
- package/dist/components/review-editor/review-editor-state.svelte.d.ts +1 -1
- package/dist/components/review-editor/review-editor-threads.svelte.d.ts +2 -2
- package/dist/components/review-editor/review-editor.svelte.d.ts +2 -1
- package/dist/components/review-editor/review-editor.types.d.ts +77 -3
- package/dist/components/review-editor/thread-popover.svelte.d.ts +1 -1
- package/dist/components/run-step-timeline/index.d.ts +1 -1
- package/dist/components/run-step-timeline/index.js +747 -273
- package/dist/components/run-step-timeline/run-step-timeline.css +25 -5
- package/dist/components/run-step-timeline/run-step-timeline.schema.js +351 -21
- package/dist/components/run-step-timeline/run-step-timeline.svelte.d.ts +1 -1
- package/dist/components/run-step-timeline/run-step-timeline.types.d.ts +184 -3
- package/dist/components/schema-form/index.d.ts +1 -1
- package/dist/components/schema-form/index.js +1916 -474
- package/dist/components/schema-form/schema-form-async.fixture.d.ts +1 -0
- package/dist/components/schema-form/schema-form-body.svelte.d.ts +25 -0
- package/dist/components/schema-form/schema-form-model.d.ts +1 -4
- package/dist/components/schema-form/schema-form-validation.d.ts +1 -2
- package/dist/components/schema-form/schema-form.css +12 -74
- package/dist/components/schema-form/schema-form.schema.js +10 -3
- package/dist/components/schema-form/schema-form.svelte.d.ts +3 -3
- package/dist/components/schema-form/schema-form.types.d.ts +15 -8
- package/dist/components/scroll-area/index.js +3 -3
- package/dist/components/scroll-area/scroll-area.schema.js +2 -2
- package/dist/components/scroll-area/scroll-area.types.d.ts +1 -1
- package/dist/components/secret-value-field/index.js +10 -4
- package/dist/components/secret-value-field/secret-value-field.svelte.d.ts +1 -1
- package/dist/components/segmented-control/segmented-control.css +22 -1
- package/dist/components/select/index.js +37 -24
- package/dist/components/select/select.css +9 -2
- package/dist/components/selection-popover/index.js +11 -4
- package/dist/components/share-card/index.js +3 -4
- package/dist/components/share-card/share-card.css +15 -4
- package/dist/components/sheet/index.js +365 -300
- package/dist/components/shortcut-hint/index.js +3 -3
- package/dist/components/sidebar/index.js +423 -353
- package/dist/components/sidebar/sidebar.schema.js +2 -2
- package/dist/components/sidebar/sidebar.types.d.ts +1 -1
- package/dist/components/slider/index.js +211 -9
- package/dist/components/slider/slider.css +14 -9
- package/dist/components/sortable-list/sortable-list.css +1 -1
- package/dist/components/spectrogram/index.js +224 -203
- package/dist/components/spectrum-chart/index.js +208 -187
- package/dist/components/speed-dial/index.js +11 -11
- package/dist/components/speed-dial/speed-dial.css +3 -3
- package/dist/components/speed-dial-action/index.js +9 -9
- package/dist/components/stat/index.js +26 -4
- package/dist/components/stat/stat.schema.js +2 -2
- package/dist/components/stat/stat.types.d.ts +2 -2
- package/dist/components/stat-group/index.js +26 -4
- package/dist/components/stat-group/stat-group.css +1 -1
- package/dist/components/status-dot/index.d.ts +1 -1
- package/dist/components/status-dot/index.js +47 -8
- package/dist/components/status-dot/status-dot.css +45 -1
- package/dist/components/status-dot/status-dot.schema.js +12 -5
- package/dist/components/status-dot/status-dot.svelte.d.ts +5 -1
- package/dist/components/status-dot/status-dot.types.d.ts +16 -6
- package/dist/components/steps/steps.css +3 -3
- package/dist/components/table/index.js +23 -17
- package/dist/components/table/table.css +10 -0
- package/dist/components/table/table.types.d.ts +3 -3
- package/dist/components/table-header/index.js +5 -5
- package/dist/components/table-header/table-header.schema.js +3 -3
- package/dist/components/table-header/table-header.types.d.ts +2 -2
- package/dist/components/table-header-cell/index.js +11 -5
- package/dist/components/table-row/index.js +7 -7
- package/dist/components/table-row/table-row.schema.js +3 -3
- package/dist/components/table-row/table-row.types.d.ts +6 -6
- package/dist/components/tabs/index.js +17 -4
- package/dist/components/tabs/tabs.schema.js +6 -1
- package/dist/components/tabs/tabs.types.d.ts +2 -0
- package/dist/components/textarea/index.js +37 -24
- package/dist/components/textarea/textarea.css +16 -1
- package/dist/components/time-field/index.d.ts +5 -0
- package/dist/components/time-field/index.js +456 -0
- package/dist/components/time-field/time-field.css +60 -0
- package/dist/components/time-field/time-field.schema.d.ts +3 -0
- package/dist/components/time-field/time-field.schema.js +107 -0
- package/dist/components/time-field/time-field.svelte.d.ts +18 -0
- package/dist/components/time-field/time-field.types.d.ts +63 -0
- package/dist/components/time-field/time-field.variables.d.ts +2 -0
- package/dist/components/{experimental/connection-indicator/index.js → time-field/time-field.variables.js} +5 -14
- package/dist/components/toggle/index.js +39 -7
- package/dist/components/toggle/toggle.schema.js +11 -2
- package/dist/components/toggle/toggle.types.d.ts +2 -0
- package/dist/components/tooltip/index.js +3 -2
- package/dist/components/transfer-list/index.js +41 -11
- package/dist/components/transfer-list/transfer-list.css +22 -0
- package/dist/components/transfer-list/transfer-list.schema.js +2 -2
- package/dist/components/transfer-list/transfer-list.types.d.ts +2 -2
- package/dist/components/tree/index.js +238 -153
- package/dist/components/tree/tree.css +69 -0
- package/dist/components/tree/tree.schema.js +3 -3
- package/dist/components/tree/tree.types.d.ts +2 -2
- package/dist/components/tree-item/index.js +107 -68
- package/dist/components/tree-item/tree-item.schema.js +5 -5
- package/dist/components/tree-item/tree-item.types.d.ts +4 -4
- package/dist/components/virtual-list/index.js +98 -63
- package/dist/components/waveform/index.js +185 -164
- package/dist/editor/attach.d.ts +2 -2
- package/dist/editor/attach.js +10 -16
- package/dist/editor/editor.js +6 -6
- package/dist/editor/keymap-plugin.d.ts +2 -2
- package/dist/editor/keymap-plugin.js +4 -4
- package/dist/editor/types.d.ts +11 -11
- package/dist/index.d.ts +14 -12
- package/dist/index.js +106 -105
- package/dist/server/components/access-gate/index.js +176 -305
- package/dist/server/components/alert/alert.schema.js +4 -4
- package/dist/server/components/alert/index.css +1 -1
- package/dist/server/components/alert/index.js +4 -4
- package/dist/server/components/alert-dialog/index.js +9 -3
- package/dist/server/components/approval-card/approval-card.schema.js +217 -0
- package/dist/server/components/approval-card/approval-card.variables.js +12 -0
- package/dist/server/components/approval-card/index.css +1767 -0
- package/dist/server/components/approval-card/index.js +2499 -0
- package/dist/server/components/autocomplete/index.css +12 -1
- package/dist/server/components/autocomplete/index.js +34 -24
- package/dist/server/components/badge/badge.schema.js +6 -3
- package/dist/server/components/badge/index.js +71 -4
- package/dist/server/components/banner/banner.schema.js +2 -2
- package/dist/server/components/banner/index.js +3 -3
- package/dist/server/components/button/index.css +1 -1
- package/dist/server/components/capability-gate/capability-gate.schema.js +4 -4
- package/dist/server/components/capability-gate/index.css +10 -2
- package/dist/server/components/capability-gate/index.js +5 -5
- package/dist/server/components/chat/chat.schema.js +11 -26
- package/dist/server/components/chat/index.js +695 -438
- package/dist/server/components/chat-conversation-header/index.css +7 -1
- package/dist/server/components/chat-conversation-header/index.js +215 -17
- package/dist/server/components/chat-conversation-list/index.css +8 -0
- package/dist/server/components/checkbox/checkbox.schema.js +6 -1
- package/dist/server/components/checkbox/index.css +3 -0
- package/dist/server/components/checkbox/index.js +41 -4
- package/dist/server/components/checkbox-group/checkbox-group.schema.js +4 -4
- package/dist/server/components/checkbox-group/index.css +3 -0
- package/dist/server/components/checkbox-group/index.js +23 -4
- package/dist/server/components/choice-grid/index.js +2 -2
- package/dist/server/components/choice-grid-item/index.js +2 -2
- package/dist/server/components/click-away-listener/click-away-listener.schema.js +3 -3
- package/dist/server/components/click-away-listener/index.js +2 -2
- package/dist/server/components/code-block/index.css +4 -3
- package/dist/server/components/code-block/index.js +1 -6
- package/dist/server/components/collapsible/collapsible.schema.js +2 -2
- package/dist/server/components/collapsible/index.js +3 -3
- package/dist/server/components/color-field/color-field.schema.js +3 -3
- package/dist/server/components/color-field/index.js +61 -17
- package/dist/server/components/color-picker/index.js +29 -12
- package/dist/server/components/color-swatch-picker/index.js +29 -12
- package/dist/server/components/combobox/combobox.schema.js +6 -2
- package/dist/server/components/combobox/index.js +61 -12
- package/dist/server/components/command-item/command-item.schema.js +9 -1
- package/dist/server/components/command-item/index.css +1 -0
- package/dist/server/components/command-item/index.js +10 -2
- package/dist/server/components/command-menu/index.css +1 -0
- package/dist/server/components/command-menu/index.js +193 -102
- package/dist/server/components/command-palette/command-palette.schema.js +2 -3
- package/dist/server/components/command-palette/index.css +1 -0
- package/dist/server/components/command-palette/index.js +190 -106
- package/dist/server/components/confirm-dialog/index.js +9 -3
- package/dist/server/components/context-menu/index.css +7 -1
- package/dist/server/components/context-menu/index.js +244 -26
- package/dist/server/components/context-menu-trigger/index.js +7 -4
- package/dist/server/components/copy-button/index.js +1 -6
- package/dist/server/components/data-grid/data-grid.schema.js +3 -3
- package/dist/server/components/data-grid/index.css +23 -0
- package/dist/server/components/data-grid/index.js +9 -7
- package/dist/server/components/data-list/data-list.schema.js +7 -10
- package/dist/server/components/data-list/index.js +7 -21
- package/dist/server/components/data-table/index.css +20 -0
- package/dist/server/components/data-table/index.js +26 -16
- package/dist/server/components/date-range-field/date-range-field.schema.js +7 -3
- package/dist/server/components/date-range-field/index.js +146 -12
- package/dist/server/components/diff-viewer/index.js +79 -7
- package/dist/server/components/drawer/index.js +260 -193
- package/dist/server/components/dropdown/index.css +7 -1
- package/dist/server/components/dropdown/index.js +221 -23
- package/dist/server/components/dropdown-group/dropdown-group.schema.js +4 -4
- package/dist/server/components/dropdown-group/index.js +7 -7
- package/dist/server/components/dropdown-item/dropdown-item.schema.js +9 -1
- package/dist/server/components/dropdown-item/index.js +12 -7
- package/dist/server/components/dropdown-menu/index.js +197 -13
- package/dist/server/components/dropdown-trigger/index.js +5 -2
- package/dist/server/components/event-stream-viewer/event-stream-viewer.schema.js +83 -10
- package/dist/server/components/event-stream-viewer/index.css +323 -0
- package/dist/server/components/event-stream-viewer/index.js +406 -139
- package/dist/server/components/faceted-filter-bar/index.css +10 -1
- package/dist/server/components/faceted-filter-bar/index.js +24 -6
- package/dist/server/components/file-upload/index.css +3 -3
- package/dist/server/components/floating-action-button/floating-action-button.schema.js +5 -5
- package/dist/server/components/floating-action-button/index.css +16 -16
- package/dist/server/components/floating-action-button/index.js +5 -5
- package/dist/server/components/form-field/index.css +0 -10
- package/dist/server/components/form-field/index.js +2 -2
- package/dist/server/components/input/index.js +59 -15
- package/dist/server/components/input/input.schema.js +6 -1
- package/dist/server/components/invocation-rule-builder/index.css +51 -6
- package/dist/server/components/invocation-rule-builder/index.js +56 -17
- package/dist/server/components/invocation-rule-builder/invocation-rule-builder.schema.js +133 -35
- package/dist/server/components/json-schema-editor/index.css +4 -1
- package/dist/server/components/json-schema-editor/index.js +282 -52
- package/dist/server/components/json-viewer/index.css +7 -1
- package/dist/server/components/json-viewer/index.js +83 -11
- package/dist/server/components/kanban-board/index.css +42 -3
- package/dist/server/components/kanban-board/index.js +7 -6
- package/dist/server/components/keyboard-shortcuts/index.css +2 -2
- package/dist/server/components/keyboard-shortcuts/index.js +2 -2
- package/dist/server/components/label/index.css +0 -10
- package/dist/server/components/label/index.js +2 -2
- package/dist/server/components/load-more/index.css +12 -4
- package/dist/server/components/load-more/index.js +5 -5
- package/dist/server/components/load-more/load-more.schema.js +4 -4
- package/dist/server/components/locale-provider/index.js +55 -0
- package/dist/server/components/locale-provider/locale-provider.schema.js +35 -0
- package/dist/server/components/locale-provider/locale-provider.variables.js +12 -0
- package/dist/server/components/markdown-editor/index.js +297 -60
- package/dist/server/components/markdown-editor/markdown-editor.schema.js +4 -4
- package/dist/server/components/masonry/masonry.schema.js +4 -3
- package/dist/server/components/matrix-chart/index.js +62 -39
- package/dist/server/components/media-controls/index.css +11 -3
- package/dist/server/components/media-controls/index.js +7 -7
- package/dist/server/components/media-controls/media-controls.schema.js +4 -4
- package/dist/server/components/menu-bar/index.css +15 -1
- package/dist/server/components/modal/index.js +9 -3
- package/dist/server/components/navigation-bar/index.js +3 -3
- package/dist/server/components/navigation-bar/navigation-bar.schema.js +2 -2
- package/dist/server/components/number-input/index.js +56 -18
- package/dist/server/components/number-input/number-input.schema.js +4 -3
- package/dist/server/components/payload-inspector/index.css +616 -0
- package/dist/server/components/payload-inspector/index.js +181 -22
- package/dist/server/components/payload-inspector/payload-inspector.schema.js +27 -15
- package/dist/server/components/permission-matrix/index.css +8 -0
- package/dist/server/components/phone-input/index.js +21 -3
- package/dist/server/components/phone-input/phone-input.schema.js +2 -2
- package/dist/server/components/pin-input/index.js +12 -7
- package/dist/server/components/pin-input/pin-input.schema.js +9 -2
- package/dist/server/components/popover/index.js +9 -3
- package/dist/server/components/pricing-card/index.js +22 -7
- package/dist/server/components/radio-group/index.css +3 -0
- package/dist/server/components/radio-group/index.js +24 -3
- package/dist/server/components/radio-group/radio-group.schema.js +3 -3
- package/dist/server/components/rating/rating.schema.js +9 -2
- package/dist/server/components/review-editor/index.js +426 -80
- package/dist/server/components/run-step-timeline/index.css +503 -6
- package/dist/server/components/run-step-timeline/index.js +455 -109
- package/dist/server/components/run-step-timeline/run-step-timeline.schema.js +351 -21
- package/dist/server/components/schema-form/index.css +11 -69
- package/dist/server/components/schema-form/index.js +1291 -218
- package/dist/server/components/schema-form/schema-form.schema.js +10 -3
- package/dist/server/components/scroll-area/index.js +3 -3
- package/dist/server/components/scroll-area/scroll-area.schema.js +2 -2
- package/dist/server/components/secret-value-field/index.js +4 -4
- package/dist/server/components/segmented-control/index.css +15 -1
- package/dist/server/components/select/index.css +9 -2
- package/dist/server/components/select/index.js +9 -2
- package/dist/server/components/selection-popover/index.js +9 -3
- package/dist/server/components/share-card/index.css +11 -3
- package/dist/server/components/share-card/index.js +1 -5
- package/dist/server/components/sheet/index.js +265 -195
- package/dist/server/components/sidebar/index.js +274 -207
- package/dist/server/components/sidebar/sidebar.schema.js +2 -2
- package/dist/server/components/slider/index.css +13 -9
- package/dist/server/components/slider/index.js +173 -4
- package/dist/server/components/sortable-list/index.css +1 -1
- package/dist/server/components/spectrogram/index.js +68 -45
- package/dist/server/components/spectrum-chart/index.js +54 -31
- package/dist/server/components/speed-dial/index.css +3 -3
- package/dist/server/components/speed-dial/index.js +8 -8
- package/dist/server/components/speed-dial-action/index.js +6 -6
- package/dist/server/components/stat/index.js +26 -4
- package/dist/server/components/stat/stat.schema.js +2 -2
- package/dist/server/components/stat-group/index.css +1 -1
- package/dist/server/components/stat-group/index.js +26 -4
- package/dist/server/components/status-dot/index.css +45 -1
- package/dist/server/components/status-dot/index.js +35 -7
- package/dist/server/components/status-dot/status-dot.schema.js +12 -5
- package/dist/server/components/steps/index.css +3 -3
- package/dist/server/components/table/index.css +8 -0
- package/dist/server/components/table/index.js +22 -16
- package/dist/server/components/table-header/index.js +6 -6
- package/dist/server/components/table-header/table-header.schema.js +3 -3
- package/dist/server/components/table-header-cell/index.js +9 -3
- package/dist/server/components/table-row/index.js +7 -7
- package/dist/server/components/table-row/table-row.schema.js +3 -3
- package/dist/server/components/tabs/index.js +18 -4
- package/dist/server/components/tabs/tabs.schema.js +6 -1
- package/dist/server/components/textarea/index.css +16 -1
- package/dist/server/components/textarea/index.js +9 -2
- package/dist/server/components/time-field/index.css +58 -0
- package/dist/server/components/time-field/index.js +291 -0
- package/dist/server/components/time-field/time-field.schema.js +88 -0
- package/dist/server/components/time-field/time-field.variables.js +12 -0
- package/dist/server/components/toggle/index.js +40 -7
- package/dist/server/components/toggle/toggle.schema.js +11 -2
- package/dist/server/components/transfer-list/index.css +16 -0
- package/dist/server/components/transfer-list/index.js +37 -11
- package/dist/server/components/transfer-list/transfer-list.schema.js +2 -2
- package/dist/server/components/tree/index.css +68 -0
- package/dist/server/components/tree/index.js +67 -20
- package/dist/server/components/tree/tree.schema.js +3 -3
- package/dist/server/components/tree-item/index.js +34 -13
- package/dist/server/components/tree-item/tree-item.schema.js +5 -5
- package/dist/server/components/virtual-list/index.js +36 -13
- package/dist/server/components/waveform/index.js +51 -28
- package/dist/server/editor/attach.d.ts +2 -2
- package/dist/server/editor/attach.js +10 -16
- package/dist/server/editor/editor.js +6 -6
- package/dist/server/editor/keymap-plugin.d.ts +2 -2
- package/dist/server/editor/keymap-plugin.js +4 -4
- package/dist/server/editor/types.d.ts +11 -11
- package/dist/server/index.css +2033 -1463
- package/dist/server/index.js +7203 -5135
- package/dist/utilities/attachments.d.ts +6 -6
- package/dist/utilities/value-change.d.ts +2 -0
- package/package.json +96 -63
- package/src/_internal/locale-context.ts +21 -0
- package/src/_internal/text-direction.ts +213 -0
- package/src/_internal/tree-context.ts +2 -0
- package/src/components/_internal/create-command-list-state.svelte.ts +171 -0
- package/src/components/_internal/create-sliding-dialog-state.svelte.ts +170 -0
- package/src/components/_radio/README.md +1 -1
- package/src/components/access-gate/access-gate-inline.svelte +3 -1
- package/src/components/alert/README.md +8 -8
- package/src/components/alert/alert.css +1 -1
- package/src/components/alert/alert.examples.json +4 -4
- package/src/components/alert/alert.svelte +3 -5
- package/src/components/alert/alert.types.ts +4 -4
- package/src/components/approval-card/README.md +92 -0
- package/src/components/approval-card/approval-card-state.ts +24 -0
- package/src/components/approval-card/approval-card.css +239 -0
- package/src/components/approval-card/approval-card.examples.json +25 -0
- package/src/components/approval-card/approval-card.svelte +583 -0
- package/src/components/approval-card/approval-card.types.ts +180 -0
- package/src/components/approval-card/index.ts +16 -0
- package/src/components/autocomplete/autocomplete.css +12 -1
- package/src/components/autocomplete/autocomplete.svelte +53 -27
- package/src/components/badge/README.md +8 -7
- package/src/components/badge/badge.svelte +80 -3
- package/src/components/badge/badge.types.ts +36 -13
- package/src/components/badge/index.ts +1 -1
- package/src/components/banner/README.md +2 -2
- package/src/components/banner/banner.examples.json +19 -0
- package/src/components/banner/banner.svelte +2 -2
- package/src/components/banner/banner.types.ts +1 -1
- package/src/components/button/button.css +1 -1
- package/src/components/callout/callout.examples.json +19 -0
- package/src/components/capability-gate/README.md +3 -3
- package/src/components/capability-gate/capability-gate.css +15 -2
- package/src/components/capability-gate/capability-gate.examples.json +1 -1
- package/src/components/capability-gate/capability-gate.svelte +7 -7
- package/src/components/capability-gate/capability-gate.types.ts +6 -6
- package/src/components/chat/README.md +6 -10
- package/src/components/chat/chat.examples.json +8 -8
- package/src/components/chat/chat.types.ts +31 -15
- package/src/components/chat/container/chat-events.ts +2 -2
- package/src/components/chat/container/chat-history-trigger.svelte +9 -1
- package/src/components/chat/container/chat.svelte +47 -46
- package/src/components/chat/container/use-chat-scroll-state.svelte.ts +21 -18
- package/src/components/chat/container/use-chat-unread-state.svelte.ts +19 -19
- package/src/components/chat/index.ts +1 -1
- package/src/components/chat/input/chat-input.svelte +35 -13
- package/src/components/chat/message/image-lightbox.svelte +38 -15
- package/src/components/chat/message/message-attachments.svelte +1 -1
- package/src/components/chat/message/parts/reasoning-part.svelte +8 -0
- package/src/components/chat/message/parts/tool-approval-part.svelte +22 -9
- package/src/components/chat-conversation-list/chat-conversation-list.css +13 -0
- package/src/components/checkbox/README.md +1 -0
- package/src/components/checkbox/checkbox.css +3 -0
- package/src/components/checkbox/checkbox.svelte +44 -2
- package/src/components/checkbox/checkbox.types.ts +2 -0
- package/src/components/checkbox-group/README.md +2 -2
- package/src/components/checkbox-group/checkbox-group.css +3 -0
- package/src/components/checkbox-group/checkbox-group.examples.json +13 -0
- package/src/components/checkbox-group/checkbox-group.svelte +23 -2
- package/src/components/checkbox-group/checkbox-group.types.ts +12 -7
- package/src/components/choice-grid-item/choice-grid-item.svelte +1 -1
- package/src/components/click-away-listener/README.md +2 -2
- package/src/components/click-away-listener/click-away-listener.examples.json +1 -1
- package/src/components/click-away-listener/click-away-listener.svelte +2 -2
- package/src/components/click-away-listener/click-away-listener.types.ts +3 -3
- package/src/components/code-block/code-block.css +4 -3
- package/src/components/collapsible/README.md +2 -2
- package/src/components/collapsible/collapsible.svelte +2 -2
- package/src/components/collapsible/collapsible.types.ts +5 -2
- package/src/components/color-field/README.md +18 -18
- package/src/components/color-field/color-field.svelte +2 -2
- package/src/components/color-field/color-field.types.ts +2 -2
- package/src/components/color-swatch-picker/color-swatch-picker.examples.json +13 -0
- package/src/components/color-swatch-picker/color-swatch-picker.svelte +38 -24
- package/src/components/combobox/README.md +2 -1
- package/src/components/combobox/combobox.svelte +38 -17
- package/src/components/combobox/combobox.types.ts +7 -1
- package/src/components/command-item/README.md +13 -11
- package/src/components/command-item/command-item.css +10 -0
- package/src/components/command-item/command-item.svelte +11 -0
- package/src/components/command-item/command-item.types.ts +4 -0
- package/src/components/command-menu/command-menu.svelte +21 -102
- package/src/components/command-palette/README.md +12 -12
- package/src/components/command-palette/command-palette.examples.json +3 -3
- package/src/components/command-palette/command-palette.svelte +17 -134
- package/src/components/command-palette/command-palette.types.ts +1 -2
- package/src/components/context-menu/context-menu.context.ts +2 -0
- package/src/components/context-menu/context-menu.svelte +35 -9
- package/src/components/context-menu-trigger/context-menu-trigger.svelte +9 -6
- package/src/components/copy-button/copy-button.svelte +4 -3
- package/src/components/data-grid/README.md +3 -3
- package/src/components/data-grid/_internal/column-model.svelte.ts +2 -0
- package/src/components/data-grid/data-grid.css +25 -0
- package/src/components/data-grid/data-grid.svelte +7 -7
- package/src/components/data-grid/data-grid.types.ts +8 -2
- package/src/components/data-list/README.md +9 -9
- package/src/components/data-list/data-list.examples.json +1 -1
- package/src/components/data-list/data-list.svelte +3 -9
- package/src/components/data-list/data-list.types.ts +5 -9
- package/src/components/data-table/data-table.css +13 -0
- package/src/components/data-table/data-table.svelte +13 -3
- package/src/components/date-range-field/README.md +9 -8
- package/src/components/date-range-field/date-range-field.svelte +193 -19
- package/src/components/date-range-field/date-range-field.types.ts +16 -10
- package/src/components/date-range-field/index.ts +1 -0
- package/src/components/diff-viewer/diff-front-matter.svelte +2 -2
- package/src/components/diff-viewer/diff-line.svelte +32 -8
- package/src/components/diff-viewer/diff-toolbar.svelte +3 -3
- package/src/components/diff-viewer/diff-viewer.svelte +4 -4
- package/src/components/diff-viewer/diff-viewer.types.ts +3 -3
- package/src/components/diff-viewer/index.ts +1 -1
- package/src/components/drawer/drawer.svelte +26 -145
- package/src/components/dropdown/dropdown.css +7 -1
- package/src/components/dropdown/dropdown.types.ts +3 -0
- package/src/components/dropdown-group/README.md +6 -6
- package/src/components/dropdown-group/dropdown-group.svelte +8 -8
- package/src/components/dropdown-group/dropdown-group.types.ts +4 -4
- package/src/components/dropdown-item/README.md +2 -0
- package/src/components/dropdown-item/dropdown-item.svelte +14 -11
- package/src/components/dropdown-item/dropdown-item.types.ts +5 -0
- package/src/components/dropdown-menu/dropdown-menu.svelte +42 -9
- package/src/components/dropdown-trigger/dropdown-trigger.svelte +4 -6
- package/src/components/event-stream-viewer/README.md +38 -16
- package/src/components/event-stream-viewer/event-stream-viewer-keys.ts +74 -0
- package/src/components/event-stream-viewer/event-stream-viewer.css +46 -0
- package/src/components/event-stream-viewer/event-stream-viewer.examples.json +6 -0
- package/src/components/event-stream-viewer/event-stream-viewer.svelte +262 -69
- package/src/components/event-stream-viewer/event-stream-viewer.types.ts +130 -3
- package/src/components/event-stream-viewer/index.ts +6 -0
- package/src/components/faceted-filter-bar/faceted-filter-bar.css +9 -0
- package/src/components/faceted-filter-bar/faceted-filter-bar.svelte +31 -5
- package/src/components/file-upload/file-upload.css +5 -5
- package/src/components/file-upload/file-upload.examples.json +13 -0
- package/src/components/floating-action-button/README.md +9 -9
- package/src/components/floating-action-button/floating-action-button.css +22 -22
- package/src/components/floating-action-button/floating-action-button.examples.json +1 -1
- package/src/components/floating-action-button/floating-action-button.svelte +7 -7
- package/src/components/floating-action-button/floating-action-button.types.ts +21 -21
- package/src/components/floating-action-button/index.ts +1 -1
- package/src/components/form-field/form-field.css +3 -13
- package/src/components/form-field/form-field.svelte +4 -1
- package/src/components/image/image.examples.json +13 -0
- package/src/components/input/README.md +16 -15
- package/src/components/input/input.examples.json +1 -1
- package/src/components/input/input.svelte +65 -28
- package/src/components/input/input.types.ts +2 -0
- package/src/components/invocation-rule-builder/README.md +14 -14
- package/src/components/invocation-rule-builder/index.ts +1 -0
- package/src/components/invocation-rule-builder/invocation-rule-builder.css +63 -6
- package/src/components/invocation-rule-builder/invocation-rule-builder.svelte +73 -16
- package/src/components/invocation-rule-builder/invocation-rule-builder.types.ts +99 -8
- package/src/components/json-schema-editor/form-view.svelte +3 -1
- package/src/components/json-schema-editor/json-schema-editor-impl.svelte +30 -18
- package/src/components/json-schema-editor/json-schema-editor.css +6 -1
- package/src/components/json-schema-editor/json-schema-toolbar.svelte +6 -0
- package/src/components/json-schema-editor/json-view.svelte +1 -1
- package/src/components/json-schema-editor/property-editor.svelte +38 -2
- package/src/components/json-schema-editor/property-list-validation.ts +10 -0
- package/src/components/json-schema-editor/property-list.svelte +48 -3
- package/src/components/json-viewer/_json-viewer-node.svelte +55 -9
- package/src/components/json-viewer/json-viewer.css +11 -0
- package/src/components/json-viewer/json-viewer.svelte +63 -1
- package/src/components/kanban-board/kanban-board.css +56 -3
- package/src/components/kanban-board/kanban-board.svelte +10 -3
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.css +2 -2
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.svelte +1 -1
- package/src/components/label/README.md +1 -1
- package/src/components/label/label.css +2 -9
- package/src/components/label/label.svelte +4 -2
- package/src/components/load-more/README.md +4 -4
- package/src/components/load-more/load-more.css +13 -5
- package/src/components/load-more/load-more.examples.json +2 -2
- package/src/components/load-more/load-more.svelte +4 -4
- package/src/components/load-more/load-more.types.ts +3 -3
- package/src/components/locale-provider/README.md +43 -0
- package/src/components/locale-provider/index.ts +5 -0
- package/src/components/locale-provider/locale-provider.svelte +40 -0
- package/src/components/locale-provider/locale-provider.types.ts +21 -0
- package/src/components/markdown-editor/README.md +3 -3
- package/src/components/markdown-editor/editor-toolbar/editor-toolbar.svelte +5 -2
- package/src/components/markdown-editor/editor-toolbar/link-popover.svelte +13 -0
- package/src/components/markdown-editor/editor-toolbar/toolbar-dropdown.svelte +2 -0
- package/src/components/markdown-editor/markdown-editor.svelte +14 -12
- package/src/components/markdown-editor/markdown-editor.types.ts +4 -4
- package/src/components/masonry/README.md +7 -7
- package/src/components/masonry/masonry.types.ts +24 -2
- package/src/components/matrix-chart/matrix-chart.svelte +7 -21
- package/src/components/media-controls/README.md +3 -3
- package/src/components/media-controls/media-controls.css +15 -4
- package/src/components/media-controls/media-controls.examples.json +1 -1
- package/src/components/media-controls/media-controls.svelte +6 -6
- package/src/components/media-controls/media-controls.types.ts +10 -7
- package/src/components/menu-bar/menu-bar.css +11 -0
- package/src/components/menu-bar/menu-bar.svelte +81 -12
- package/src/components/navigation-bar/README.md +1 -1
- package/src/components/navigation-bar/navigation-bar.examples.json +1 -1
- package/src/components/navigation-bar/navigation-bar.svelte +2 -2
- package/src/components/navigation-bar/navigation-bar.types.ts +1 -1
- package/src/components/number-input/README.md +18 -18
- package/src/components/number-input/number-input.examples.json +13 -0
- package/src/components/number-input/number-input.svelte +77 -38
- package/src/components/number-input/number-input.types.ts +15 -5
- package/src/components/pagination/README.md +3 -1
- package/src/components/payload-inspector/README.md +11 -11
- package/src/components/payload-inspector/index.ts +2 -0
- package/src/components/payload-inspector/payload-inspector.css +6 -0
- package/src/components/payload-inspector/payload-inspector.svelte +22 -4
- package/src/components/payload-inspector/payload-inspector.types.ts +54 -3
- package/src/components/permission-matrix/permission-matrix.css +10 -0
- package/src/components/phone-input/README.md +1 -1
- package/src/components/phone-input/phone-input.svelte +7 -1
- package/src/components/phone-input/phone-input.types.ts +3 -2
- package/src/components/pin-input/README.md +19 -19
- package/src/components/pin-input/pin-input.svelte +16 -12
- package/src/components/pin-input/pin-input.types.ts +10 -1
- package/src/components/portal/portal.utilities.svelte.ts +4 -1
- package/src/components/pricing-card/pricing-card.svelte +26 -1
- package/src/components/radio-group/README.md +12 -12
- package/src/components/radio-group/radio-group.css +3 -0
- package/src/components/radio-group/radio-group.examples.json +3 -3
- package/src/components/radio-group/radio-group.svelte +22 -2
- package/src/components/radio-group/radio-group.types.ts +6 -2
- package/src/components/rating/README.md +18 -18
- package/src/components/rating/rating.svelte +0 -8
- package/src/components/rating/rating.types.ts +6 -0
- package/src/components/review-editor/comment-list.svelte +1 -1
- package/src/components/review-editor/index.ts +1 -1
- package/src/components/review-editor/review-editor-controls.svelte +8 -3
- package/src/components/review-editor/review-editor-impl.svelte +11 -7
- package/src/components/review-editor/review-editor-selection-types.ts +1 -1
- package/src/components/review-editor/review-editor-selection.svelte.ts +1 -1
- package/src/components/review-editor/review-editor-state.svelte.ts +1 -1
- package/src/components/review-editor/review-editor-threads.svelte.ts +2 -2
- package/src/components/review-editor/review-editor.types.ts +91 -3
- package/src/components/review-editor/thread-popover.svelte +1 -1
- package/src/components/run-step-timeline/README.md +53 -6
- package/src/components/run-step-timeline/index.ts +6 -0
- package/src/components/run-step-timeline/run-step-timeline.css +25 -5
- package/src/components/run-step-timeline/run-step-timeline.examples.json +3 -3
- package/src/components/run-step-timeline/run-step-timeline.svelte +314 -78
- package/src/components/run-step-timeline/run-step-timeline.types.ts +190 -3
- package/src/components/schema-form/README.md +9 -9
- package/src/components/schema-form/index.ts +0 -1
- package/src/components/schema-form/schema-form-async.fixture.ts +101 -0
- package/src/components/schema-form/schema-form-body.svelte +646 -0
- package/src/components/schema-form/schema-form-model.ts +4 -44
- package/src/components/schema-form/schema-form-validation.ts +83 -46
- package/src/components/schema-form/schema-form.css +12 -74
- package/src/components/schema-form/schema-form.examples.json +0 -6
- package/src/components/schema-form/schema-form.svelte +30 -598
- package/src/components/schema-form/schema-form.types.ts +16 -12
- package/src/components/scroll-area/README.md +1 -1
- package/src/components/scroll-area/scroll-area.examples.json +3 -3
- package/src/components/scroll-area/scroll-area.svelte +5 -5
- package/src/components/scroll-area/scroll-area.types.ts +1 -1
- package/src/components/secret-value-field/secret-value-field.svelte +10 -6
- package/src/components/segmented-control/segmented-control.css +22 -1
- package/src/components/segmented-control/segmented-control.examples.json +2 -2
- package/src/components/select/select.css +9 -2
- package/src/components/select/select.svelte +6 -1
- package/src/components/selection-popover/selection-popover.examples.json +1 -1
- package/src/components/share-card/share-card.css +15 -4
- package/src/components/share-card/share-card.svelte +2 -4
- package/src/components/sheet/sheet.svelte +30 -145
- package/src/components/shortcut-hint/shortcut-hint.svelte +1 -1
- package/src/components/side-navigation/side-navigation.examples.json +1 -1
- package/src/components/sidebar/README.md +6 -2
- package/src/components/sidebar/sidebar.examples.json +1 -1
- package/src/components/sidebar/sidebar.svelte +4 -4
- package/src/components/sidebar/sidebar.types.ts +1 -1
- package/src/components/slider/slider.css +14 -9
- package/src/components/slider/slider.svelte +33 -2
- package/src/components/sortable-list/README.md +18 -1
- package/src/components/sortable-list/sortable-list.css +1 -1
- package/src/components/sortable-list/sortable-list.examples.json +13 -0
- package/src/components/spectrogram/spectrogram.examples.json +1 -0
- package/src/components/spectrogram/spectrogram.svelte +7 -19
- package/src/components/spectrum-chart/spectrum-chart.svelte +8 -20
- package/src/components/speed-dial/speed-dial.css +3 -3
- package/src/components/speed-dial/speed-dial.examples.json +1 -1
- package/src/components/speed-dial/speed-dial.svelte +2 -2
- package/src/components/speed-dial-action/speed-dial-action.svelte +1 -1
- package/src/components/stacked-list-item/stacked-list-item.examples.json +1 -1
- package/src/components/stat/README.md +1 -1
- package/src/components/stat/stat.svelte +7 -2
- package/src/components/stat/stat.types.ts +2 -2
- package/src/components/stat-group/stat-group.css +1 -1
- package/src/components/status-dot/README.md +9 -7
- package/src/components/status-dot/index.ts +6 -1
- package/src/components/status-dot/status-dot.css +45 -1
- package/src/components/status-dot/status-dot.examples.json +1 -1
- package/src/components/status-dot/status-dot.svelte +57 -8
- package/src/components/status-dot/status-dot.types.ts +17 -6
- package/src/components/steps/steps.css +3 -3
- package/src/components/table/table.css +10 -0
- package/src/components/table/table.examples.json +1 -1
- package/src/components/table/table.svelte +2 -2
- package/src/components/table/table.types.ts +3 -3
- package/src/components/table-header/README.md +2 -2
- package/src/components/table-header/table-header.svelte +5 -5
- package/src/components/table-header/table-header.types.ts +2 -2
- package/src/components/table-header-cell/table-header-cell.svelte +13 -2
- package/src/components/table-row/README.md +2 -2
- package/src/components/table-row/table-row.svelte +6 -6
- package/src/components/table-row/table-row.types.ts +6 -6
- package/src/components/tabs/README.md +1 -0
- package/src/components/tabs/tabs.svelte +11 -3
- package/src/components/tabs/tabs.types.ts +2 -0
- package/src/components/textarea/textarea.css +16 -1
- package/src/components/textarea/textarea.svelte +6 -1
- package/src/components/time-field/README.md +60 -0
- package/src/components/time-field/index.ts +6 -0
- package/src/components/time-field/time-field.css +60 -0
- package/src/components/time-field/time-field.examples.json +13 -0
- package/src/components/time-field/time-field.svelte +277 -0
- package/src/components/time-field/time-field.types.ts +70 -0
- package/src/components/toggle/README.md +12 -11
- package/src/components/toggle/toggle.svelte +19 -6
- package/src/components/toggle/toggle.types.ts +2 -0
- package/src/components/transfer-list/README.md +1 -1
- package/src/components/transfer-list/transfer-list.css +22 -0
- package/src/components/transfer-list/transfer-list.svelte +44 -10
- package/src/components/transfer-list/transfer-list.types.ts +5 -2
- package/src/components/tree/README.md +2 -2
- package/src/components/tree/tree.css +69 -0
- package/src/components/tree/tree.examples.json +1 -1
- package/src/components/tree/tree.svelte +52 -9
- package/src/components/tree/tree.types.ts +2 -2
- package/src/components/tree-item/README.md +4 -4
- package/src/components/tree-item/tree-item.svelte +42 -12
- package/src/components/tree-item/tree-item.types.ts +4 -4
- package/src/components/virtual-list/virtual-list.svelte +5 -5
- package/src/components/waveform/waveform.svelte +7 -19
- package/src/index.ts +40 -16
- package/src/styles/components/_field-label.css +20 -0
- package/src/styles/components/_input-frame.css +2 -1
- package/src/styles/components.css +3 -2
- package/src/styles/index.css +1 -0
- package/src/styles/tokens-base.css +3 -0
- package/src/utilities/attachments.ts +15 -12
- package/src/utilities/value-change.ts +11 -0
- package/dist/components/connection-indicator/connection-indicator.css +0 -63
- package/dist/components/connection-indicator/connection-indicator.svelte.d.ts +0 -18
- package/dist/components/connection-indicator/connection-indicator.types.d.ts +0 -14
- package/dist/components/connection-indicator/index.d.ts +0 -5
- package/dist/components/connection-indicator/index.js +0 -75
- package/dist/components/experimental/connection-indicator/index.d.ts +0 -2
- package/dist/components/review-editor/review-editor-types.d.ts +0 -77
- package/dist/components/subscription-badge/index.d.ts +0 -5
- package/dist/components/subscription-badge/index.js +0 -353
- package/dist/components/subscription-badge/subscription-badge.css +0 -18
- package/dist/components/subscription-badge/subscription-badge.schema.js +0 -47
- package/dist/components/subscription-badge/subscription-badge.svelte.d.ts +0 -19
- package/dist/components/subscription-badge/subscription-badge.types.d.ts +0 -28
- package/dist/server/components/connection-indicator/connection-indicator.schema.js +0 -31
- package/dist/server/components/connection-indicator/connection-indicator.variables.js +0 -12
- package/dist/server/components/connection-indicator/index.css +0 -60
- package/dist/server/components/connection-indicator/index.js +0 -42
- package/dist/server/components/experimental/connection-indicator/index.js +0 -23
- package/dist/server/components/subscription-badge/index.css +0 -2
- package/dist/server/components/subscription-badge/index.js +0 -308
- package/dist/server/components/subscription-badge/subscription-badge.schema.js +0 -28
- package/dist/server/components/subscription-badge/subscription-badge.variables.js +0 -12
- package/src/components/connection-indicator/README.md +0 -41
- package/src/components/connection-indicator/connection-indicator.css +0 -63
- package/src/components/connection-indicator/connection-indicator.svelte +0 -44
- package/src/components/connection-indicator/connection-indicator.types.ts +0 -18
- package/src/components/connection-indicator/index.ts +0 -6
- package/src/components/experimental/connection-indicator/index.ts +0 -20
- package/src/components/review-editor/review-editor-types.ts +0 -92
- package/src/components/subscription-badge/README.md +0 -50
- package/src/components/subscription-badge/index.ts +0 -6
- package/src/components/subscription-badge/subscription-badge.css +0 -18
- package/src/components/subscription-badge/subscription-badge.examples.json +0 -19
- package/src/components/subscription-badge/subscription-badge.svelte +0 -69
- package/src/components/subscription-badge/subscription-badge.types.ts +0 -37
- /package/dist/components/{connection-indicator/connection-indicator.schema.d.ts → approval-card/approval-card.schema.d.ts} +0 -0
- /package/dist/components/{connection-indicator/connection-indicator.variables.d.ts → approval-card/approval-card.variables.d.ts} +0 -0
- /package/dist/components/{subscription-badge/subscription-badge.schema.d.ts → locale-provider/locale-provider.schema.d.ts} +0 -0
- /package/dist/components/{subscription-badge/subscription-badge.variables.d.ts → locale-provider/locale-provider.variables.d.ts} +0 -0
|
@@ -7,19 +7,19 @@
|
|
|
7
7
|
"id": "basic",
|
|
8
8
|
"title": "Basic radio group",
|
|
9
9
|
"description": "Three options with a group legend; arrow keys move selection.",
|
|
10
|
-
"code": "<script lang=\"ts\">\n import { RadioGroup } from '@lostgradient/cinder/radio-group';\n\n let plan = $state('pro');\n</script>\n\n<RadioGroup name=\"plan\"
|
|
10
|
+
"code": "<script lang=\"ts\">\n import { RadioGroup } from '@lostgradient/cinder/radio-group';\n\n let plan = $state('pro');\n</script>\n\n<RadioGroup name=\"plan\" label=\"Pricing tier\" bind:value={plan}>\n <RadioGroup.Option id=\"plan-free\" value=\"free\" label=\"Free — for individuals exploring Cinder\" />\n <RadioGroup.Option id=\"plan-pro\" value=\"pro\" label=\"Pro — small teams, includes private support\" />\n <RadioGroup.Option id=\"plan-team\" value=\"team\" label=\"Team — SSO, audit logs, role-based access\" />\n</RadioGroup>\n"
|
|
11
11
|
},
|
|
12
12
|
{
|
|
13
13
|
"id": "disabled",
|
|
14
14
|
"title": "Disabled radio group",
|
|
15
15
|
"description": "Disabling the group disables every radio inside.",
|
|
16
|
-
"code": "<script lang=\"ts\">\n import { RadioGroup } from '@lostgradient/cinder/radio-group';\n</script>\n\n<RadioGroup name=\"disabled-region\"
|
|
16
|
+
"code": "<script lang=\"ts\">\n import { RadioGroup } from '@lostgradient/cinder/radio-group';\n</script>\n\n<RadioGroup name=\"disabled-region\" label=\"Region (locked for trial accounts)\" value=\"us\" disabled>\n <RadioGroup.Option id=\"disabled-region-us\" value=\"us\" label=\"United States\" />\n <RadioGroup.Option id=\"disabled-region-eu\" value=\"eu\" label=\"European Union\" />\n <RadioGroup.Option id=\"disabled-region-ap\" value=\"ap\" label=\"Asia Pacific\" />\n</RadioGroup>\n"
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
19
|
"id": "with-error",
|
|
20
20
|
"title": "Radio group with error",
|
|
21
21
|
"description": "When validation fails, the group exposes an aria-describedby error message.",
|
|
22
|
-
"code": "<script lang=\"ts\">\n import { Button } from '@lostgradient/cinder/button';\n import { RadioGroup } from '@lostgradient/cinder/radio-group';\n let role = $state('');\n let submitted = $state(false);\n const showError = $derived(submitted && !role);\n</script>\n\n<div style=\"display: flex; flex-direction: column; gap: 0.75rem; align-items: flex-start;\">\n {#if showError}\n <RadioGroup\n name=\"with-error-role\"\n
|
|
22
|
+
"code": "<script lang=\"ts\">\n import { Button } from '@lostgradient/cinder/button';\n import { RadioGroup } from '@lostgradient/cinder/radio-group';\n let role = $state('');\n let submitted = $state(false);\n const showError = $derived(submitted && !role);\n</script>\n\n<div style=\"display: flex; flex-direction: column; gap: 0.75rem; align-items: flex-start;\">\n {#if showError}\n <RadioGroup\n name=\"with-error-role\"\n label=\"Role\"\n description=\"Pick the role that best describes you.\"\n bind:value={role}\n error=\"Choose a role to continue.\"\n >\n <RadioGroup.Option id=\"with-error-role-engineer\" value=\"engineer\" label=\"Engineer\" />\n <RadioGroup.Option id=\"with-error-role-designer\" value=\"designer\" label=\"Designer\" />\n <RadioGroup.Option id=\"with-error-role-manager\" value=\"manager\" label=\"Manager\" />\n </RadioGroup>\n {:else}\n <RadioGroup\n name=\"with-error-role\"\n label=\"Role\"\n description=\"Pick the role that best describes you.\"\n bind:value={role}\n >\n <RadioGroup.Option id=\"with-error-role-engineer\" value=\"engineer\" label=\"Engineer\" />\n <RadioGroup.Option id=\"with-error-role-designer\" value=\"designer\" label=\"Designer\" />\n <RadioGroup.Option id=\"with-error-role-manager\" value=\"manager\" label=\"Manager\" />\n </RadioGroup>\n {/if}\n\n <Button variant=\"secondary\" onclick={() => (submitted = true)}>Try to submit</Button>\n</div>\n"
|
|
23
23
|
}
|
|
24
24
|
]
|
|
25
25
|
}
|
|
@@ -25,11 +25,12 @@
|
|
|
25
25
|
errorId as buildErrorId,
|
|
26
26
|
} from '../../_internal/field-control.ts';
|
|
27
27
|
import { classNames } from '../../utilities/class-names.ts';
|
|
28
|
+
import { devWarn } from '../../utilities/dev-warn.ts';
|
|
28
29
|
|
|
29
30
|
let {
|
|
30
31
|
value = $bindable(''),
|
|
31
32
|
name,
|
|
32
|
-
legend,
|
|
33
|
+
label: legend,
|
|
33
34
|
description,
|
|
34
35
|
error,
|
|
35
36
|
disabled = false,
|
|
@@ -66,6 +67,20 @@
|
|
|
66
67
|
value = next;
|
|
67
68
|
},
|
|
68
69
|
});
|
|
70
|
+
|
|
71
|
+
// Warn once when no accessible group name is provided. The `hasWarned` flag
|
|
72
|
+
// stops the effect re-firing on every `legend` change — matching the
|
|
73
|
+
// tree.svelte convention and dev-warn.ts's guidance against a warn-only
|
|
74
|
+
// effect that re-subscribes on each update.
|
|
75
|
+
let hasWarnedNoLegend = false;
|
|
76
|
+
$effect(() => {
|
|
77
|
+
if (!legend && !hasWarnedNoLegend) {
|
|
78
|
+
hasWarnedNoLegend = true;
|
|
79
|
+
devWarn(
|
|
80
|
+
'[cinder/RadioGroup] A <fieldset> was rendered without a label prop. The fieldset will have no <legend>, which makes it inaccessible. Provide a label prop to describe the group.',
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
69
84
|
</script>
|
|
70
85
|
|
|
71
86
|
<!--
|
|
@@ -86,7 +101,12 @@
|
|
|
86
101
|
data-variant={variant === 'card' ? 'card' : undefined}
|
|
87
102
|
>
|
|
88
103
|
{#if legend}
|
|
89
|
-
<legend class="cinder-radio-group__legend">
|
|
104
|
+
<legend class="cinder-radio-group__legend">
|
|
105
|
+
{legend}
|
|
106
|
+
{#if required}
|
|
107
|
+
<span class="cinder-_required-marker" aria-hidden="true">*</span>
|
|
108
|
+
{/if}
|
|
109
|
+
</legend>
|
|
90
110
|
{/if}
|
|
91
111
|
|
|
92
112
|
<div class="cinder-radio-group__items">
|
|
@@ -24,8 +24,12 @@ export type RadioGroupProps = {
|
|
|
24
24
|
value?: string;
|
|
25
25
|
/** Shared `name` for all radios in the group; required for native form submission. */
|
|
26
26
|
name: string;
|
|
27
|
-
/**
|
|
28
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Visible group caption. Rendered as a `<legend>` inside the `<fieldset>`.
|
|
29
|
+
* Named `label` for consistency with every other form control — the element
|
|
30
|
+
* is a `<legend>` because the group is a fieldset.
|
|
31
|
+
*/
|
|
32
|
+
label?: string;
|
|
29
33
|
/** Helper text displayed below the group; wired via `aria-describedby` on the fieldset. */
|
|
30
34
|
description?: string;
|
|
31
35
|
/** Validation error message; sets `aria-invalid="true"` on the group's children. */
|
|
@@ -17,24 +17,24 @@ Star rating control with bindable numeric value, optional half-star precision, a
|
|
|
17
17
|
|
|
18
18
|
<!-- generated:props:start -->
|
|
19
19
|
|
|
20
|
-
| Prop | Type | Required | Default | Description
|
|
21
|
-
| ----------------- | --------------------- | -------- | ------- |
|
|
22
|
-
| `aria-label` | `string` | no | — | Group accessible name when no visible `label` is supplied.
|
|
23
|
-
| `aria-labelledby` | `string` | no | — | Space-separated list of ids that label the group when no `label` is supplied.
|
|
24
|
-
| `class` | `string` | no | — | Extra class names appended to the root group element.
|
|
25
|
-
| `count` | `number` | no | — | Number of rating slots. Normalized to an integer in `[1, 10]`; non-finite or out-of-range values fall back to `5`.
|
|
26
|
-
| `description` | `string` | no | — | Optional description text rendered below the rating.
|
|
27
|
-
| `disabled` | `boolean` | no | — | Disable every rating control and the hidden input.
|
|
28
|
-
| `error` | `string` | no | — | Optional error message; sets `aria-invalid="true"` on the rating group.
|
|
29
|
-
| `hideLabel` | `boolean` | no | — | Visually hide the rendered `label` while keeping it programmatically associated.
|
|
30
|
-
| `id` | `string` | yes | — | Stable id used as the radio-group id prefix and as the hidden input id.
|
|
31
|
-
| `label` | `string` | no | — | Visible group label rendered above the rating.
|
|
32
|
-
| `name` | `string` | no | — | Form-control name applied to the hidden `<input>` that submits with the form.
|
|
33
|
-
| `precision` | `"whole"` \| `"half"` | no | — | Precision of each step. Defaults to `'whole'`.
|
|
34
|
-
| `readonly` | `boolean` | no | — | Render a non-interactive display with an accessible text equivalent.
|
|
35
|
-
| `required` | `boolean` | no | — | Mark the group as required for assistive technology.
|
|
36
|
-
| `value` | `number` | no | — | Bindable rating value. `0` represents an unrated state. External values are clamped into `[0, count]` and snapped to the nearest precision step.
|
|
37
|
-
| `onchange` | `(opaque)` | no | — | Fires only for user-initiated committed value changes (click, arrow keys, Space/Enter). Never fires for hover preview or external prop synchronization. Not expressible in JSON Schema; see the component types for the signature.
|
|
20
|
+
| Prop | Type | Required | Default | Description |
|
|
21
|
+
| ----------------- | --------------------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
22
|
+
| `aria-label` | `string` | no | — | Group accessible name when no visible `label` is supplied. |
|
|
23
|
+
| `aria-labelledby` | `string` | no | — | Space-separated list of ids that label the group when no `label` is supplied. |
|
|
24
|
+
| `class` | `string` | no | — | Extra class names appended to the root group element. |
|
|
25
|
+
| `count` | `number` | no | — | Number of rating slots. Normalized to an integer in `[1, 10]`; non-finite or out-of-range values fall back to `5`. |
|
|
26
|
+
| `description` | `string` | no | — | Optional description text rendered below the rating. |
|
|
27
|
+
| `disabled` | `boolean` | no | — | Disable every rating control and the hidden input. |
|
|
28
|
+
| `error` | `string` | no | — | Optional error message; sets `aria-invalid="true"` on the rating group. |
|
|
29
|
+
| `hideLabel` | `boolean` | no | — | Visually hide the rendered `label` while keeping it programmatically associated. |
|
|
30
|
+
| `id` | `string` | yes | — | Stable id used as the radio-group id prefix and as the hidden input id. |
|
|
31
|
+
| `label` | `string` | no | — | Visible group label rendered above the rating. |
|
|
32
|
+
| `name` | `string` | no | — | Form-control name applied to the hidden `<input>` that submits with the form. |
|
|
33
|
+
| `precision` | `"whole"` \| `"half"` | no | — | Precision of each step. Defaults to `'whole'`. |
|
|
34
|
+
| `readonly` | `boolean` | no | — | Render a non-interactive display with an accessible text equivalent. |
|
|
35
|
+
| `required` | `boolean` | no | — | Mark the group as required for assistive technology. |
|
|
36
|
+
| `value` | `number` | no | — | Bindable rating value. `0` represents an unrated state. External values are clamped into `[0, count]` and snapped to the nearest precision step. **No write-back normalization.** The bound prop reflects exactly what the consumer set — it is NOT mutated back to the clamped/snapped value. The displayed and submitted value is normalized via `$derived`, but the binding itself is left untouched. This is intentional: the consumer owns the source of truth, and silent mutation of a bound prop is a surprising side-effect. |
|
|
37
|
+
| `onchange` | `(opaque)` | no | — | Fires only for user-initiated committed value changes (click, arrow keys, Space/Enter). Never fires for hover preview or external prop synchronization. Not expressible in JSON Schema; see the component types for the signature. |
|
|
38
38
|
|
|
39
39
|
<!-- generated:props:end -->
|
|
40
40
|
|
|
@@ -79,14 +79,6 @@
|
|
|
79
79
|
|
|
80
80
|
const resolvedValue = $derived(snapToOption(value ?? 0));
|
|
81
81
|
|
|
82
|
-
// Mirror normalized value back onto the prop without firing onchange so
|
|
83
|
-
// consumers always see a normalized number even when they pass garbage in.
|
|
84
|
-
$effect(() => {
|
|
85
|
-
if (resolvedValue !== value) {
|
|
86
|
-
value = resolvedValue;
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
|
|
90
82
|
let hoverValue = $state<number | null>(null);
|
|
91
83
|
const displayValue = $derived(hoverValue ?? resolvedValue);
|
|
92
84
|
|
|
@@ -14,6 +14,12 @@ export type RatingProps = {
|
|
|
14
14
|
/**
|
|
15
15
|
* Bindable rating value. `0` represents an unrated state. External values
|
|
16
16
|
* are clamped into `[0, count]` and snapped to the nearest precision step.
|
|
17
|
+
*
|
|
18
|
+
* **No write-back normalization.** The bound prop reflects exactly what the
|
|
19
|
+
* consumer set — it is NOT mutated back to the clamped/snapped value. The
|
|
20
|
+
* displayed and submitted value is normalized via `$derived`, but the binding
|
|
21
|
+
* itself is left untouched. This is intentional: the consumer owns the source
|
|
22
|
+
* of truth, and silent mutation of a bound prop is a surprising side-effect.
|
|
17
23
|
*/
|
|
18
24
|
value?: number;
|
|
19
25
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" module>
|
|
2
2
|
import type { Comment } from '@lostgradient/cinder/commentary/comments';
|
|
3
|
-
import type { ReviewMode } from './review-editor
|
|
3
|
+
import type { ReviewMode } from './review-editor.types.ts';
|
|
4
4
|
|
|
5
5
|
export type CommentListProps = {
|
|
6
6
|
/** Comments to display */
|
|
@@ -18,7 +18,7 @@ export type {
|
|
|
18
18
|
ReviewEditorViewType,
|
|
19
19
|
ReviewFormData,
|
|
20
20
|
ReviewMode,
|
|
21
|
-
} from './review-editor
|
|
21
|
+
} from './review-editor.types.ts';
|
|
22
22
|
|
|
23
23
|
// DEP-422: Extracted runes modules for state management (experimental)
|
|
24
24
|
export { createReviewEditorState } from './review-editor-state.svelte';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import type {
|
|
4
4
|
ReviewEditorDiffViewMode as DiffViewMode,
|
|
5
5
|
ReviewEditorViewType as ViewType,
|
|
6
|
-
} from './review-editor
|
|
6
|
+
} from './review-editor.types.ts';
|
|
7
7
|
|
|
8
8
|
export type ReviewEditorControlsProps = {
|
|
9
9
|
/** Unique ID for accessibility */
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
title="Revert all changes"
|
|
176
176
|
>
|
|
177
177
|
<RotateCcw class="icon-sm" />
|
|
178
|
-
<span class="sr-only">Revert All</span>
|
|
178
|
+
<span class="cinder-sr-only">Revert All</span>
|
|
179
179
|
</Button>
|
|
180
180
|
{/if}
|
|
181
181
|
|
|
@@ -201,7 +201,12 @@
|
|
|
201
201
|
</div>
|
|
202
202
|
|
|
203
203
|
<!-- Polite live announcer for comment count changes. Empty on initial render. -->
|
|
204
|
-
<div
|
|
204
|
+
<div
|
|
205
|
+
role="status"
|
|
206
|
+
aria-live="polite"
|
|
207
|
+
aria-atomic="true"
|
|
208
|
+
class="comments-count-announcer cinder-sr-only"
|
|
209
|
+
>
|
|
205
210
|
{liveAnnouncementText}
|
|
206
211
|
</div>
|
|
207
212
|
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
ReviewState,
|
|
8
8
|
AnchorUpdate,
|
|
9
9
|
} from '@lostgradient/cinder/commentary/comments';
|
|
10
|
-
import type { ReviewEditorProps, ReviewFormData } from './review-editor
|
|
10
|
+
import type { ReviewEditorProps, ReviewFormData } from './review-editor.types.ts';
|
|
11
11
|
|
|
12
|
-
export type { ReviewMode, ReviewEditorProps, ReviewFormData } from './review-editor
|
|
12
|
+
export type { ReviewMode, ReviewEditorProps, ReviewFormData } from './review-editor.types.ts';
|
|
13
13
|
|
|
14
14
|
/** Type alias for thread ID to improve readability in state declarations */
|
|
15
15
|
type ThreadId = string;
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
import type {
|
|
59
59
|
ReviewEditorDiffViewMode as DiffViewMode,
|
|
60
60
|
ReviewEditorViewType as ViewType,
|
|
61
|
-
} from './review-editor
|
|
61
|
+
} from './review-editor.types.ts';
|
|
62
62
|
import {
|
|
63
63
|
getSelectionAnchorPosition,
|
|
64
64
|
type SelectionAnchorPosition,
|
|
@@ -1000,7 +1000,9 @@
|
|
|
1000
1000
|
* Includes document changes and comment threads
|
|
1001
1001
|
* in a structured format suitable for LLM analysis.
|
|
1002
1002
|
*/
|
|
1003
|
-
export function exportMarkdownSummary(
|
|
1003
|
+
export function exportMarkdownSummary(
|
|
1004
|
+
options: MarkdownSummaryOptions | undefined = undefined,
|
|
1005
|
+
): MarkdownSummaryResult {
|
|
1004
1006
|
return generateMarkdownSummary(getState(), options);
|
|
1005
1007
|
}
|
|
1006
1008
|
|
|
@@ -1008,7 +1010,9 @@
|
|
|
1008
1010
|
* Export a Git-compatible unified diff.
|
|
1009
1011
|
* The output can be applied with `git apply` or `patch` command.
|
|
1010
1012
|
*/
|
|
1011
|
-
export function exportUnifiedDiff(
|
|
1013
|
+
export function exportUnifiedDiff(
|
|
1014
|
+
options: UnifiedDiffOptions | undefined = undefined,
|
|
1015
|
+
): UnifiedDiffResult {
|
|
1012
1016
|
return generateUnifiedDiff(getState(), options);
|
|
1013
1017
|
}
|
|
1014
1018
|
|
|
@@ -1683,12 +1687,12 @@
|
|
|
1683
1687
|
plugins={[anchorPlugin]}
|
|
1684
1688
|
{snapshotMode}
|
|
1685
1689
|
onchange={handleEditorBodyChange}
|
|
1686
|
-
|
|
1690
|
+
onready={() => {
|
|
1687
1691
|
if (!editorViewReady) {
|
|
1688
1692
|
editorViewReady = true;
|
|
1689
1693
|
}
|
|
1690
1694
|
}}
|
|
1691
|
-
|
|
1695
|
+
onselectionchange={handleSelectionChange}
|
|
1692
1696
|
/>
|
|
1693
1697
|
</div>
|
|
1694
1698
|
{:else if activeView === 'diff'}
|
|
@@ -25,7 +25,7 @@ import { extractMentions, generateId } from '@lostgradient/cinder/commentary/com
|
|
|
25
25
|
import { devWarn } from '../../utilities/dev-warn.ts';
|
|
26
26
|
import { getSelectionAnchorPosition } from './review-editor-selection-geometry.ts';
|
|
27
27
|
import type { SelectionPopover, SelectionPopoverOptions } from './review-editor-selection-types.ts';
|
|
28
|
-
import type { PopoverPosition } from './review-editor
|
|
28
|
+
import type { PopoverPosition } from './review-editor.types.ts';
|
|
29
29
|
|
|
30
30
|
/** Debounce delay for selection position calculation (ms) */
|
|
31
31
|
const SELECTION_DEBOUNCE_MS = 20;
|
|
@@ -20,7 +20,7 @@ import { normalize } from '@lostgradient/cinder/markdown/pipeline';
|
|
|
20
20
|
import type {
|
|
21
21
|
ReviewEditorDiffViewMode as DiffViewMode,
|
|
22
22
|
ReviewEditorViewType as ViewType,
|
|
23
|
-
} from './review-editor
|
|
23
|
+
} from './review-editor.types.ts';
|
|
24
24
|
|
|
25
25
|
/**
|
|
26
26
|
* Diff statistics for tracking content changes.
|
|
@@ -35,13 +35,13 @@ import {
|
|
|
35
35
|
} from '@lostgradient/cinder/commentary/comments';
|
|
36
36
|
import type { EditorView } from '@milkdown/kit/prose/view';
|
|
37
37
|
import { devWarn } from '../../utilities/dev-warn.ts';
|
|
38
|
-
import type { PopoverPosition, ReviewMode } from './review-editor
|
|
38
|
+
import type { PopoverPosition, ReviewMode } from './review-editor.types.ts';
|
|
39
39
|
|
|
40
40
|
/** Type alias for thread ID to improve readability */
|
|
41
41
|
type ThreadId = string;
|
|
42
42
|
|
|
43
43
|
// Re-export PopoverPosition for backwards compatibility
|
|
44
|
-
export type { PopoverPosition } from './review-editor
|
|
44
|
+
export type { PopoverPosition } from './review-editor.types.ts';
|
|
45
45
|
|
|
46
46
|
/**
|
|
47
47
|
* Options for creating the thread manager.
|
|
@@ -1,4 +1,92 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Shared types for ReviewEditor modules (DEP-422).
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
2
6
|
|
|
3
|
-
|
|
4
|
-
|
|
7
|
+
import type {
|
|
8
|
+
CommentCreateEvent,
|
|
9
|
+
CommentDeleteEvent,
|
|
10
|
+
CommentUpdateEvent,
|
|
11
|
+
Thread,
|
|
12
|
+
ThreadCreateEvent,
|
|
13
|
+
ThreadDeleteEvent,
|
|
14
|
+
} from '@lostgradient/cinder/commentary/comments';
|
|
15
|
+
|
|
16
|
+
/** Review editor mode: edit allows full editing, readonly is view-only. */
|
|
17
|
+
export type ReviewMode = 'edit' | 'readonly';
|
|
18
|
+
|
|
19
|
+
/** Available review document views. */
|
|
20
|
+
export type ReviewEditorViewType = 'editor' | 'diff' | 'summary';
|
|
21
|
+
|
|
22
|
+
/** Available diff rendering modes in the review editor. */
|
|
23
|
+
export type ReviewEditorDiffViewMode = 'unified' | 'final' | 'original';
|
|
24
|
+
|
|
25
|
+
/** FormData structure returned by getFormData(). */
|
|
26
|
+
export type ReviewFormData = {
|
|
27
|
+
/** Original/baseline content. */
|
|
28
|
+
original: string;
|
|
29
|
+
/** Current edited content. */
|
|
30
|
+
current: string;
|
|
31
|
+
/** Serialized comment threads as JSON. */
|
|
32
|
+
comments: string;
|
|
33
|
+
/** Unified diff between original and current. */
|
|
34
|
+
diff: string;
|
|
35
|
+
/** LLM-optimized summary markdown. */
|
|
36
|
+
summary: string;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export type ReviewEditorProps = {
|
|
40
|
+
/** Unique identifier for accessibility (required). */
|
|
41
|
+
id: string;
|
|
42
|
+
/** Original/baseline content for diff comparison. */
|
|
43
|
+
original?: string;
|
|
44
|
+
/** Current markdown content (two-way bindable). */
|
|
45
|
+
value?: string;
|
|
46
|
+
/** Comment threads (two-way bindable). */
|
|
47
|
+
threads?: Thread[];
|
|
48
|
+
/** Editor mode. */
|
|
49
|
+
mode?: ReviewMode;
|
|
50
|
+
/** Current user ID for permissions. */
|
|
51
|
+
currentUserId?: string | undefined;
|
|
52
|
+
/** Placeholder text when empty. */
|
|
53
|
+
placeholder?: string;
|
|
54
|
+
/** Form field name prefix for hidden inputs (enables form participation). */
|
|
55
|
+
name?: string;
|
|
56
|
+
/** Additional CSS classes. */
|
|
57
|
+
class?: string;
|
|
58
|
+
/** Called when content changes. */
|
|
59
|
+
onchange?: (value: string) => void;
|
|
60
|
+
/** Called when user initiates thread creation. */
|
|
61
|
+
onthreadcreate?: (event: ThreadCreateEvent) => void;
|
|
62
|
+
/** Called when a thread is deleted. */
|
|
63
|
+
onthreaddelete?: (event: ThreadDeleteEvent) => void;
|
|
64
|
+
/** Called when a comment is created in an existing thread. */
|
|
65
|
+
oncommentcreate?: (event: CommentCreateEvent) => void;
|
|
66
|
+
/** Called when a comment is updated. */
|
|
67
|
+
oncommentupdate?: (event: CommentUpdateEvent) => void;
|
|
68
|
+
/** Called when a comment is deleted. */
|
|
69
|
+
oncommentdelete?: (event: CommentDeleteEvent) => void;
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Snapshot mode for visual regression testing.
|
|
73
|
+
*
|
|
74
|
+
* When `true`:
|
|
75
|
+
* - Applies `caret-color: transparent` and `user-select: none` to the editor
|
|
76
|
+
* root via a `data-snapshot-mode` attribute, producing a stable visual
|
|
77
|
+
* state (no blinking cursor, no selection highlights).
|
|
78
|
+
* - Blurs any focused element inside the component on mount so the initial
|
|
79
|
+
* screenshot does not capture a focused ring or active caret.
|
|
80
|
+
* - The inner MarkdownEditor instance also receives `snapshotMode={true}`.
|
|
81
|
+
*
|
|
82
|
+
* This is a purely visual / CSS concern. It does NOT affect editability,
|
|
83
|
+
* ProseMirror state, or any prop controlled by `readonly` / `mode`.
|
|
84
|
+
*/
|
|
85
|
+
snapshotMode?: boolean;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
/** Position for fixed-position popovers (viewport-relative coordinates) */
|
|
89
|
+
export interface PopoverPosition {
|
|
90
|
+
x: number;
|
|
91
|
+
y: number;
|
|
92
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts" module>
|
|
2
2
|
import type { Thread } from '@lostgradient/cinder/commentary/comments';
|
|
3
|
-
import type { ReviewMode } from './review-editor
|
|
3
|
+
import type { ReviewMode } from './review-editor.types.ts';
|
|
4
4
|
|
|
5
5
|
export type ThreadPopoverProps = {
|
|
6
6
|
/** Unique ID for accessibility */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# RunStepTimeline
|
|
2
2
|
|
|
3
|
-
Ordered step-by-step execution rail for async operations. Shows pending, running, succeeded, failed, cancelled, skipped, and retrying states with per-step durations, attempt counts, optional progress indicators, and expandable inline detail panels for logs, payloads, and errors.
|
|
3
|
+
Ordered step-by-step execution rail for async operations. Shows pending, running, waiting approval, succeeded, failed, cancelled, skipped, and retrying states with per-step durations, attempt counts, action counts, optional progress indicators, nested child-workflow lanes, links, and expandable inline detail panels for logs, payloads, and errors.
|
|
4
4
|
|
|
5
5
|
Use `RunStepTimeline` for CI jobs, workflow engine runs, import pipelines, deployment flows, and queue workers. Use `Timeline` for timestamp-first event logs. Use `Steps` for interactive wizard navigation.
|
|
6
6
|
|
|
@@ -12,10 +12,13 @@ Use `RunStepTimeline` for CI jobs, workflow engine runs, import pipelines, deplo
|
|
|
12
12
|
- A status badge (text label so state is not communicated by color alone)
|
|
13
13
|
- Start time, end time, and duration when available
|
|
14
14
|
- An attempt count badge when the step has been retried
|
|
15
|
-
-
|
|
15
|
+
- An action count badge when actions are available
|
|
16
|
+
- An optional link rendered with `Link`
|
|
17
|
+
- A progress bar for `running`, `retrying`, or `waiting_approval` steps with a known `progress` value
|
|
18
|
+
- Indented child-workflow lanes from recursive `children`
|
|
16
19
|
- Expandable Collapsible panels for logs, payloads, and errors via the `details` array
|
|
17
20
|
|
|
18
|
-
The component marks the currently active step with `aria-current="step"`.
|
|
21
|
+
The component marks the currently active step with `aria-current="step"`. `running`, `retrying`, and `waiting_approval` are current, non-terminal states.
|
|
19
22
|
|
|
20
23
|
## Usage
|
|
21
24
|
|
|
@@ -39,6 +42,10 @@ The component marks the currently active step with `aria-current="step"`.
|
|
|
39
42
|
status: 'running',
|
|
40
43
|
startTime: '2026-06-01T11:02:00Z',
|
|
41
44
|
progress: 40,
|
|
45
|
+
link: {
|
|
46
|
+
href: '/runs/run-123/build',
|
|
47
|
+
label: 'Open logs',
|
|
48
|
+
},
|
|
42
49
|
},
|
|
43
50
|
{
|
|
44
51
|
id: 'deploy',
|
|
@@ -93,12 +100,42 @@ The component marks the currently active step with `aria-current="step"`.
|
|
|
93
100
|
</script>
|
|
94
101
|
```
|
|
95
102
|
|
|
103
|
+
### With nested child-workflow lanes
|
|
104
|
+
|
|
105
|
+
```svelte
|
|
106
|
+
<script lang="ts">
|
|
107
|
+
import type { RunStep } from '@lostgradient/cinder/run-step-timeline';
|
|
108
|
+
|
|
109
|
+
const steps: RunStep[] = [
|
|
110
|
+
{
|
|
111
|
+
id: 'workflow',
|
|
112
|
+
label: 'Workflow',
|
|
113
|
+
status: 'running',
|
|
114
|
+
children: [
|
|
115
|
+
{
|
|
116
|
+
id: 'tool',
|
|
117
|
+
label: 'Run repository tool',
|
|
118
|
+
status: 'succeeded',
|
|
119
|
+
actionsCount: 2,
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
id: 'approval',
|
|
123
|
+
label: 'Await approval',
|
|
124
|
+
status: 'waiting_approval',
|
|
125
|
+
},
|
|
126
|
+
],
|
|
127
|
+
},
|
|
128
|
+
];
|
|
129
|
+
</script>
|
|
130
|
+
```
|
|
131
|
+
|
|
96
132
|
## Step states
|
|
97
133
|
|
|
98
134
|
`RunStepStatus` is intentionally domain-agnostic. Map your domain state onto one of these:
|
|
99
135
|
|
|
100
136
|
- `pending` — not yet started
|
|
101
|
-
- `running` — currently executing
|
|
137
|
+
- `running` — currently executing within its lane
|
|
138
|
+
- `waiting_approval` — paused on required approval and expected to continue
|
|
102
139
|
- `succeeded` — completed successfully
|
|
103
140
|
- `failed` — completed with a terminal error
|
|
104
141
|
- `cancelled` — stopped before it could complete
|
|
@@ -126,9 +163,12 @@ startTime string optional ISO datetime when the step started.
|
|
|
126
163
|
endTime string optional ISO datetime when the step ended.
|
|
127
164
|
duration string optional Human-readable duration string, e.g. "1m 23s".
|
|
128
165
|
attemptCount number optional Total attempts made; badge shown when greater than 1.
|
|
166
|
+
actionsCount number optional Total associated actions; badge shown when greater than 0.
|
|
129
167
|
progress number optional Determinate progress value (0 to progressMax).
|
|
130
168
|
progressMax number optional Upper bound for progress. Defaults to 100.
|
|
131
169
|
details RunStepDetail[] optional Expandable inline panels for logs, payloads, errors.
|
|
170
|
+
link RunStepLink optional Link rendered in the step header.
|
|
171
|
+
children RunStep[] optional Nested child-workflow steps rendered as indented lanes.
|
|
132
172
|
```
|
|
133
173
|
|
|
134
174
|
### RunStepDetail shape
|
|
@@ -139,13 +179,20 @@ label string required Trigger label on the Collapsible header.
|
|
|
139
179
|
content string required Pre-formatted content shown inside the panel.
|
|
140
180
|
```
|
|
141
181
|
|
|
182
|
+
### RunStepLink shape
|
|
183
|
+
|
|
184
|
+
```
|
|
185
|
+
href string required Destination URL for the step link.
|
|
186
|
+
label string required Visible link text.
|
|
187
|
+
```
|
|
188
|
+
|
|
142
189
|
## Accessibility
|
|
143
190
|
|
|
144
191
|
`RunStepTimeline` renders an `ol` (ordered list) because steps are numbered and sequential. The list takes an accessible name via `label` (used as `aria-label` when neither `aria-label` nor `aria-labelledby` is provided directly).
|
|
145
192
|
|
|
146
|
-
The active step (`running` or `
|
|
193
|
+
The active step (`running`, `retrying`, or `waiting_approval`) receives `aria-current="step"` on its `li` element, matching the same pattern used by the `Steps` component. This allows assistive technology to identify which step is current without requiring a live region announcement.
|
|
147
194
|
|
|
148
|
-
Status dots on the rail are decorative: the marker element is marked `aria-hidden="true"` and `inert`. The status badge rendered as text
|
|
195
|
+
Status dots on the rail are decorative: the marker element is marked `aria-hidden="true"` and `inert`. The status badge rendered as text includes an accessible label such as "Status: Waiting approval", so the step state is communicated to assistive technology through text, not color alone (WCAG 1.4.1).
|
|
149
196
|
|
|
150
197
|
Progress bars include an `aria-label` derived from the step label (e.g. "Build Docker image progress"), satisfying the ARIA progressbar accessible name requirement.
|
|
151
198
|
|
|
@@ -5,7 +5,13 @@ export default RunStepTimeline;
|
|
|
5
5
|
export type {
|
|
6
6
|
RunStep,
|
|
7
7
|
RunStepDetail,
|
|
8
|
+
RunStepLink,
|
|
8
9
|
RunStepStatus,
|
|
9
10
|
RunStepTimelineProps,
|
|
11
|
+
RunStepTimelineSchemaChildStep,
|
|
12
|
+
RunStepTimelineSchemaGrandchildStep,
|
|
13
|
+
RunStepTimelineSchemaGreatGrandchildStep,
|
|
14
|
+
RunStepTimelineSchemaProps,
|
|
15
|
+
RunStepTimelineSchemaStep,
|
|
10
16
|
} from './run-step-timeline.types.ts';
|
|
11
17
|
export { RunStepTimeline };
|