@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
|
@@ -342,7 +342,7 @@ import * as $100 from "svelte/internal/server";
|
|
|
342
342
|
|
|
343
343
|
// src/components/chat/container/chat.svelte
|
|
344
344
|
import * as $99 from "svelte/internal/server";
|
|
345
|
-
import {
|
|
345
|
+
import { tick as tick4, untrack as untrack4 } from "svelte";
|
|
346
346
|
|
|
347
347
|
// src/components/chat/utilities/conversation.ts
|
|
348
348
|
function getMessages(conversation, options) {
|
|
@@ -612,7 +612,7 @@ function Chat_date_separator($$renderer, $$props) {
|
|
|
612
612
|
});
|
|
613
613
|
}
|
|
614
614
|
// src/components/chat/message/chat-message.svelte
|
|
615
|
-
import * as $
|
|
615
|
+
import * as $36 from "svelte/internal/server";
|
|
616
616
|
|
|
617
617
|
// ../../node_modules/lucide-svelte/dist/icons/pencil.svelte
|
|
618
618
|
import * as $7 from "svelte/internal/server";
|
|
@@ -738,7 +738,6 @@ function Rotate_ccw($$renderer, $$props) {
|
|
|
738
738
|
}
|
|
739
739
|
// src/components/copy-button/copy-button.svelte
|
|
740
740
|
import * as $12 from "svelte/internal/server";
|
|
741
|
-
import { onDestroy } from "svelte";
|
|
742
741
|
|
|
743
742
|
// ../../node_modules/lucide-svelte/dist/icons/check.svelte
|
|
744
743
|
import * as $9 from "svelte/internal/server";
|
|
@@ -876,10 +875,6 @@ function Copy_button($$renderer, $$props) {
|
|
|
876
875
|
copied = false;
|
|
877
876
|
}, confirmDuration);
|
|
878
877
|
}
|
|
879
|
-
onDestroy(() => {
|
|
880
|
-
if (resetTimer)
|
|
881
|
-
clearTimeout(resetTimer);
|
|
882
|
-
});
|
|
883
878
|
$$renderer2.push(`<button${$12.attributes({
|
|
884
879
|
...rest,
|
|
885
880
|
type: "button",
|
|
@@ -915,7 +910,7 @@ function Copy_button($$renderer, $$props) {
|
|
|
915
910
|
}
|
|
916
911
|
|
|
917
912
|
// src/components/chat/message/chat-message-parts-renderer.svelte
|
|
918
|
-
import * as $
|
|
913
|
+
import * as $35 from "svelte/internal/server";
|
|
919
914
|
|
|
920
915
|
// src/components/chat/message/chat-message-parts.ts
|
|
921
916
|
function toRenderUnits(parts) {
|
|
@@ -1598,13 +1593,13 @@ function Suggestion_part($$renderer, $$props) {
|
|
|
1598
1593
|
}
|
|
1599
1594
|
|
|
1600
1595
|
// src/components/chat/message/parts/image-part.svelte
|
|
1601
|
-
import * as $
|
|
1596
|
+
import * as $34 from "svelte/internal/server";
|
|
1602
1597
|
|
|
1603
1598
|
// src/components/chat/message/message-attachments.svelte
|
|
1604
|
-
import * as $
|
|
1599
|
+
import * as $33 from "svelte/internal/server";
|
|
1605
1600
|
|
|
1606
1601
|
// src/components/chat/message/image-lightbox.svelte
|
|
1607
|
-
import * as $
|
|
1602
|
+
import * as $32 from "svelte/internal/server";
|
|
1608
1603
|
import { fade } from "svelte/transition";
|
|
1609
1604
|
|
|
1610
1605
|
// ../../node_modules/lucide-svelte/dist/icons/chevron-left.svelte
|
|
@@ -1706,6 +1701,10 @@ function captureFocus() {
|
|
|
1706
1701
|
}
|
|
1707
1702
|
|
|
1708
1703
|
// src/utilities/attachments.ts
|
|
1704
|
+
function isInsideEventPath(event, element2) {
|
|
1705
|
+
const path = event.composedPath();
|
|
1706
|
+
return path.some((entry) => entry instanceof Node && element2.contains(entry));
|
|
1707
|
+
}
|
|
1709
1708
|
function createClickOutside(options) {
|
|
1710
1709
|
const { handler, enabled = true, eventType = "click", capture = true, ignoreRefs } = options;
|
|
1711
1710
|
return (node) => {
|
|
@@ -1713,17 +1712,19 @@ function createClickOutside(options) {
|
|
|
1713
1712
|
const isEnabled = typeof enabled === "function" ? enabled() : enabled;
|
|
1714
1713
|
if (!isEnabled)
|
|
1715
1714
|
return;
|
|
1715
|
+
if (event.type === "touchstart" && !event.cancelable)
|
|
1716
|
+
return;
|
|
1716
1717
|
const target = event.target;
|
|
1717
1718
|
if (!(target instanceof Node)) {
|
|
1718
1719
|
handler();
|
|
1719
1720
|
return;
|
|
1720
1721
|
}
|
|
1721
|
-
if (node
|
|
1722
|
+
if (isInsideEventPath(event, node))
|
|
1722
1723
|
return;
|
|
1723
1724
|
if (ignoreRefs) {
|
|
1724
1725
|
for (const ref of ignoreRefs) {
|
|
1725
1726
|
const element2 = ref();
|
|
1726
|
-
if (element2 && element2
|
|
1727
|
+
if (element2 && isInsideEventPath(event, element2))
|
|
1727
1728
|
return;
|
|
1728
1729
|
}
|
|
1729
1730
|
}
|
|
@@ -1802,24 +1803,44 @@ function overflowFade() {
|
|
|
1802
1803
|
};
|
|
1803
1804
|
}
|
|
1804
1805
|
|
|
1806
|
+
// src/utilities/use-reduced-motion.svelte.ts
|
|
1807
|
+
import * as $31 from "svelte/internal/server";
|
|
1808
|
+
import { MediaQuery } from "svelte/reactivity";
|
|
1809
|
+
function useReducedMotion() {
|
|
1810
|
+
if (typeof window === "undefined" || typeof window.matchMedia !== "function") {
|
|
1811
|
+
return { current: false };
|
|
1812
|
+
}
|
|
1813
|
+
const query = new MediaQuery("(prefers-reduced-motion: reduce)", false);
|
|
1814
|
+
return {
|
|
1815
|
+
get current() {
|
|
1816
|
+
return query.current;
|
|
1817
|
+
}
|
|
1818
|
+
};
|
|
1819
|
+
}
|
|
1820
|
+
|
|
1805
1821
|
// src/components/chat/message/image-lightbox.svelte
|
|
1806
1822
|
function Image_lightbox($$renderer, $$props) {
|
|
1807
1823
|
$$renderer.component(($$renderer2) => {
|
|
1808
1824
|
let { images, initialIndex = 0, open = false, onclose } = $$props;
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
const
|
|
1812
|
-
const
|
|
1813
|
-
|
|
1825
|
+
const reducedMotion = useReducedMotion();
|
|
1826
|
+
const LIGHTBOX_FADE_MS = 150;
|
|
1827
|
+
const fadeDuration = $32.derived(() => reducedMotion.current ? 0 : LIGHTBOX_FADE_MS);
|
|
1828
|
+
const clampedInitialIndex = $32.derived(() => images.length > 0 ? Math.max(0, Math.min(initialIndex, images.length - 1)) : 0);
|
|
1829
|
+
let navigationIndex = null;
|
|
1830
|
+
const effectiveIndex = $32.derived(() => open ? navigationIndex ?? clampedInitialIndex() : clampedInitialIndex());
|
|
1831
|
+
const hasMultiple = $32.derived(() => images.length > 1);
|
|
1832
|
+
const currentImage = $32.derived(() => images[effectiveIndex()]);
|
|
1833
|
+
const counterText = $32.derived(() => `${effectiveIndex() + 1} of ${images.length}`);
|
|
1814
1834
|
function close() {
|
|
1835
|
+
navigationIndex = null;
|
|
1815
1836
|
open = false;
|
|
1816
1837
|
onclose?.();
|
|
1817
1838
|
}
|
|
1818
1839
|
function previous() {
|
|
1819
|
-
|
|
1840
|
+
navigationIndex = (effectiveIndex() - 1 + images.length) % images.length;
|
|
1820
1841
|
}
|
|
1821
1842
|
function next() {
|
|
1822
|
-
|
|
1843
|
+
navigationIndex = (effectiveIndex() + 1) % images.length;
|
|
1823
1844
|
}
|
|
1824
1845
|
function handleOverlayClick(event) {
|
|
1825
1846
|
if (event.target === event.currentTarget) {
|
|
@@ -1859,12 +1880,12 @@ function Image_lightbox($$renderer, $$props) {
|
|
|
1859
1880
|
} else {
|
|
1860
1881
|
$$renderer2.push("<!--[-1-->");
|
|
1861
1882
|
}
|
|
1862
|
-
$$renderer2.push(`<!--]--> <div class="lightbox-image-container svelte-nzg1o2"><img${$
|
|
1883
|
+
$$renderer2.push(`<!--]--> <div class="lightbox-image-container svelte-nzg1o2"><img${$32.attr("src", currentImage().src)}${$32.attr("alt", currentImage().alt)} class="lightbox-image svelte-nzg1o2" decoding="async"/></div> `);
|
|
1863
1884
|
if (hasMultiple()) {
|
|
1864
1885
|
$$renderer2.push("<!--[0-->");
|
|
1865
1886
|
$$renderer2.push(`<button type="button" class="lightbox-nav lightbox-nav-next svelte-nzg1o2" aria-label="Next image">`);
|
|
1866
1887
|
Chevron_right($$renderer2, { size: 24 });
|
|
1867
|
-
$$renderer2.push(`<!----></button> <div class="lightbox-counter svelte-nzg1o2" aria-live="polite" aria-atomic="true">${$
|
|
1888
|
+
$$renderer2.push(`<!----></button> <div class="lightbox-counter svelte-nzg1o2" aria-live="polite" aria-atomic="true">${$32.escape(counterText())}</div>`);
|
|
1868
1889
|
} else {
|
|
1869
1890
|
$$renderer2.push("<!--[-1-->");
|
|
1870
1891
|
}
|
|
@@ -1873,7 +1894,7 @@ function Image_lightbox($$renderer, $$props) {
|
|
|
1873
1894
|
$$renderer2.push("<!--[-1-->");
|
|
1874
1895
|
}
|
|
1875
1896
|
$$renderer2.push(`<!--]-->`);
|
|
1876
|
-
$
|
|
1897
|
+
$32.bind_props($$props, { open });
|
|
1877
1898
|
});
|
|
1878
1899
|
}
|
|
1879
1900
|
|
|
@@ -1890,10 +1911,10 @@ function Message_attachments($$renderer, $$props) {
|
|
|
1890
1911
|
$$events,
|
|
1891
1912
|
...rest
|
|
1892
1913
|
} = $$props;
|
|
1893
|
-
const validImages = $
|
|
1914
|
+
const validImages = $33.derived(() => images.filter((item) => item.type === "image").map((image) => ({ image, url: getImageUrlFromContent(image) })).filter((item) => item.url !== ""));
|
|
1894
1915
|
let lightboxOpen = false;
|
|
1895
1916
|
let lightboxIndex = 0;
|
|
1896
|
-
const lightboxImages = $
|
|
1917
|
+
const lightboxImages = $33.derived(() => validImages().map(({ image, url }, index) => ({ src: url, alt: getAltText(image, index + 1) })));
|
|
1897
1918
|
function getImageUrlFromContent(image) {
|
|
1898
1919
|
if (image.type !== "image")
|
|
1899
1920
|
return "";
|
|
@@ -1919,22 +1940,22 @@ function Message_attachments($$renderer, $$props) {
|
|
|
1919
1940
|
let $$settled = true;
|
|
1920
1941
|
let $$inner_renderer;
|
|
1921
1942
|
function $$render_inner($$renderer3) {
|
|
1922
|
-
$$renderer3.push(`<div${$
|
|
1923
|
-
class: $
|
|
1943
|
+
$$renderer3.push(`<div${$33.attributes({
|
|
1944
|
+
class: $33.clsx(classNames("message-attachments", className)),
|
|
1924
1945
|
role: "list",
|
|
1925
1946
|
"aria-label": "Message attachments",
|
|
1926
1947
|
"data-count": validImages().length,
|
|
1927
1948
|
...rest
|
|
1928
1949
|
}, "svelte-mmlgnv")}><!--[-->`);
|
|
1929
|
-
const each_array = $
|
|
1950
|
+
const each_array = $33.ensure_array_like(validImages());
|
|
1930
1951
|
for (let loopIndex = 0, $$length = each_array.length;loopIndex < $$length; loopIndex++) {
|
|
1931
1952
|
let { image, url } = each_array[loopIndex];
|
|
1932
1953
|
const displayIndex = loopIndex + 1;
|
|
1933
1954
|
const alt = getAltText(image, displayIndex);
|
|
1934
|
-
$$renderer3.push(`<figure class="message-attachment svelte-mmlgnv" role="listitem"><button type="button" class="message-attachment-button svelte-mmlgnv"${$
|
|
1955
|
+
$$renderer3.push(`<figure class="message-attachment svelte-mmlgnv" role="listitem"><button type="button" class="message-attachment-button svelte-mmlgnv"${$33.attr("aria-label", `View image: ${alt}`)}><img${$33.attr("src", url)}${$33.attr("alt", alt)}${$33.attr("loading", loading)} decoding="async" class="message-attachment-image svelte-mmlgnv" onload="this.__e=event" onerror="this.__e=event"/></button> `);
|
|
1935
1956
|
if (alt && alt !== `Image attachment ${displayIndex}`) {
|
|
1936
1957
|
$$renderer3.push("<!--[0-->");
|
|
1937
|
-
$$renderer3.push(`<figcaption class="sr-only svelte-mmlgnv">${$
|
|
1958
|
+
$$renderer3.push(`<figcaption class="sr-only svelte-mmlgnv">${$33.escape(alt)}</figcaption>`);
|
|
1938
1959
|
} else {
|
|
1939
1960
|
$$renderer3.push("<!--[-1-->");
|
|
1940
1961
|
}
|
|
@@ -1967,7 +1988,7 @@ function Message_attachments($$renderer, $$props) {
|
|
|
1967
1988
|
function Image_part($$renderer, $$props) {
|
|
1968
1989
|
$$renderer.component(($$renderer2) => {
|
|
1969
1990
|
let { parts } = $$props;
|
|
1970
|
-
const images = $
|
|
1991
|
+
const images = $34.derived(() => parts.map((part) => part.image));
|
|
1971
1992
|
Message_attachments($$renderer2, { images: images() });
|
|
1972
1993
|
});
|
|
1973
1994
|
}
|
|
@@ -1986,7 +2007,7 @@ function Chat_message_parts_renderer($$renderer, $$props) {
|
|
|
1986
2007
|
onreasoning,
|
|
1987
2008
|
onsuggestionselect
|
|
1988
2009
|
} = $$props;
|
|
1989
|
-
const units = $
|
|
2010
|
+
const units = $35.derived(() => toRenderUnits(parts));
|
|
1990
2011
|
let activeIndex = 0;
|
|
1991
2012
|
function activeChipIndex(count) {
|
|
1992
2013
|
return count === 0 ? 0 : Math.min(activeIndex, count - 1);
|
|
@@ -2035,7 +2056,7 @@ function Chat_message_parts_renderer($$renderer, $$props) {
|
|
|
2035
2056
|
$$renderer3.push(`<!--]-->`);
|
|
2036
2057
|
}
|
|
2037
2058
|
$$renderer2.push(`<!--[-->`);
|
|
2038
|
-
const each_array = $
|
|
2059
|
+
const each_array = $35.ensure_array_like(units());
|
|
2039
2060
|
for (let $$index_2 = 0, $$length = each_array.length;$$index_2 < $$length; $$index_2++) {
|
|
2040
2061
|
let unit = each_array[$$index_2];
|
|
2041
2062
|
if (unit.kind === "images") {
|
|
@@ -2044,7 +2065,7 @@ function Chat_message_parts_renderer($$renderer, $$props) {
|
|
|
2044
2065
|
} else if (unit.kind === "steps") {
|
|
2045
2066
|
$$renderer2.push("<!--[1-->");
|
|
2046
2067
|
$$renderer2.push(`<ol class="chat-step-list svelte-16hfc7o" aria-label="Steps"><!--[-->`);
|
|
2047
|
-
const each_array_1 = $
|
|
2068
|
+
const each_array_1 = $35.ensure_array_like(unit.steps);
|
|
2048
2069
|
for (let $$index = 0, $$length2 = each_array_1.length;$$index < $$length2; $$index++) {
|
|
2049
2070
|
let step = each_array_1[$$index];
|
|
2050
2071
|
Step_part($$renderer2, { part: step });
|
|
@@ -2053,7 +2074,7 @@ function Chat_message_parts_renderer($$renderer, $$props) {
|
|
|
2053
2074
|
} else if (unit.kind === "suggestions") {
|
|
2054
2075
|
$$renderer2.push("<!--[2-->");
|
|
2055
2076
|
$$renderer2.push(`<div class="chat-suggestions svelte-16hfc7o" role="toolbar" aria-label="Suggested replies" data-cinder-suggested-replies=""><!--[-->`);
|
|
2056
|
-
const each_array_2 = $
|
|
2077
|
+
const each_array_2 = $35.ensure_array_like(unit.suggestions);
|
|
2057
2078
|
for (let index = 0, $$length2 = each_array_2.length;index < $$length2; index++) {
|
|
2058
2079
|
let suggestion = each_array_2[index];
|
|
2059
2080
|
Suggestion_part($$renderer2, {
|
|
@@ -2121,7 +2142,7 @@ function Chat_message($$renderer, $$props) {
|
|
|
2121
2142
|
} = $$props;
|
|
2122
2143
|
let isEditing = false;
|
|
2123
2144
|
let editContent = "";
|
|
2124
|
-
const canEdit = $
|
|
2145
|
+
const canEdit = $36.derived(() => message.role === "user" && onedit !== undefined && !streaming);
|
|
2125
2146
|
function startEditing() {
|
|
2126
2147
|
editContent = textContent();
|
|
2127
2148
|
isEditing = true;
|
|
@@ -2148,17 +2169,17 @@ function Chat_message($$renderer, $$props) {
|
|
|
2148
2169
|
saveEdit();
|
|
2149
2170
|
}
|
|
2150
2171
|
}
|
|
2151
|
-
const deliveryStatus = $
|
|
2152
|
-
const isFailed = $
|
|
2153
|
-
const textContent = $
|
|
2154
|
-
const roleLabel = $
|
|
2155
|
-
const isToolCall = $
|
|
2156
|
-
const toolPair = $
|
|
2172
|
+
const deliveryStatus = $36.derived(() => message.metadata?.["_deliveryStatus"]);
|
|
2173
|
+
const isFailed = $36.derived(() => deliveryStatus() === "failed");
|
|
2174
|
+
const textContent = $36.derived(() => getMessageText(message));
|
|
2175
|
+
const roleLabel = $36.derived(() => ROLE_LABELS[message.role] ?? message.role);
|
|
2176
|
+
const isToolCall = $36.derived(() => message.role === "tool-call");
|
|
2177
|
+
const toolPair = $36.derived(() => {
|
|
2157
2178
|
if (!isToolCall() || !message.toolCall)
|
|
2158
2179
|
return null;
|
|
2159
2180
|
return toolCallPairs.find((pair) => pair.call.id === message.toolCall?.id) ?? null;
|
|
2160
2181
|
});
|
|
2161
|
-
const messageParts = $
|
|
2182
|
+
const messageParts = $36.derived(() => deriveMessageParts(message, {
|
|
2162
2183
|
toolCallPair: toolPair() ?? undefined,
|
|
2163
2184
|
overrideContent,
|
|
2164
2185
|
streaming,
|
|
@@ -2169,25 +2190,25 @@ function Chat_message($$renderer, $$props) {
|
|
|
2169
2190
|
steps,
|
|
2170
2191
|
suggestions
|
|
2171
2192
|
}));
|
|
2172
|
-
const hasMarkdownBody = $
|
|
2173
|
-
const bodyParts = $
|
|
2174
|
-
const imageParts = $
|
|
2193
|
+
const hasMarkdownBody = $36.derived(() => messageParts().some((part) => part.type === "markdown"));
|
|
2194
|
+
const bodyParts = $36.derived(() => messageParts().filter((part) => part.type !== "image"));
|
|
2195
|
+
const imageParts = $36.derived(() => messageParts().filter((part) => part.type === "image"));
|
|
2175
2196
|
const TRUNCATE_THRESHOLD = 500;
|
|
2176
|
-
const messageId = $
|
|
2177
|
-
const roleId = $
|
|
2197
|
+
const messageId = $36.derived(() => `message-${message.id}`);
|
|
2198
|
+
const roleId = $36.derived(() => `${messageId()}-role`);
|
|
2178
2199
|
function toggleExpanded() {
|
|
2179
2200
|
expanded = !expanded;
|
|
2180
2201
|
onexpandedchange?.(expanded);
|
|
2181
2202
|
}
|
|
2182
|
-
$$renderer2.push(`<div${$
|
|
2183
|
-
class: $
|
|
2203
|
+
$$renderer2.push(`<div${$36.attributes({
|
|
2204
|
+
class: $36.clsx(classNames("chat-message-wrapper", className)),
|
|
2184
2205
|
"data-role": message.role,
|
|
2185
2206
|
"data-hidden": message.hidden || undefined,
|
|
2186
2207
|
"data-failed": isFailed() || undefined,
|
|
2187
2208
|
"data-search-match": searchMatch || undefined,
|
|
2188
2209
|
"data-tool-pair": isToolCall() && toolPair() ? "" : undefined,
|
|
2189
2210
|
...rest
|
|
2190
|
-
}, "svelte-1sxbmxn")}><article${$
|
|
2211
|
+
}, "svelte-1sxbmxn")}><article${$36.attr("id", messageId())} class="chat-message svelte-1sxbmxn"${$36.attr("aria-labelledby", isToolCall() && toolPair() ? undefined : roleId())}${$36.attr("aria-label", isToolCall() && toolPair() ? `Tool call: ${toolPair().call.name}` : undefined)}${$36.attr("tabindex", tabindex)}><header class="chat-message-header svelte-1sxbmxn"><span${$36.attr("id", roleId())} class="chat-message-role svelte-1sxbmxn">${$36.escape(roleLabel())}</span> `);
|
|
2191
2212
|
if (status) {
|
|
2192
2213
|
$$renderer2.push("<!--[0-->");
|
|
2193
2214
|
$$renderer2.push(`<div class="chat-message-status svelte-1sxbmxn">`);
|
|
@@ -2199,9 +2220,9 @@ function Chat_message($$renderer, $$props) {
|
|
|
2199
2220
|
$$renderer2.push(`<!--]--></header> <div class="chat-message-body svelte-1sxbmxn">`);
|
|
2200
2221
|
if (isEditing) {
|
|
2201
2222
|
$$renderer2.push("<!--[0-->");
|
|
2202
|
-
$$renderer2.push(`<div class="chat-message-edit svelte-1sxbmxn"><textarea class="chat-message-edit-textarea svelte-1sxbmxn" autofocus="" aria-label="Edit message content"${$
|
|
2223
|
+
$$renderer2.push(`<div class="chat-message-edit svelte-1sxbmxn"><textarea class="chat-message-edit-textarea svelte-1sxbmxn" autofocus="" aria-label="Edit message content"${$36.attr("rows", Math.min(Math.max(editContent.split(`
|
|
2203
2224
|
`).length, 2), 10))}>`);
|
|
2204
|
-
const $$body = $
|
|
2225
|
+
const $$body = $36.escape(editContent);
|
|
2205
2226
|
if ($$body) {
|
|
2206
2227
|
$$renderer2.push(`${$$body}`);
|
|
2207
2228
|
} else {}
|
|
@@ -2222,7 +2243,7 @@ function Chat_message($$renderer, $$props) {
|
|
|
2222
2243
|
$$renderer2.push(`<!----> `);
|
|
2223
2244
|
if (hasMarkdownBody() && textContent().length > TRUNCATE_THRESHOLD) {
|
|
2224
2245
|
$$renderer2.push("<!--[0-->");
|
|
2225
|
-
$$renderer2.push(`<button type="button" class="chat-message-expand svelte-1sxbmxn">${$
|
|
2246
|
+
$$renderer2.push(`<button type="button" class="chat-message-expand svelte-1sxbmxn">${$36.escape(expanded ? "Show less" : "Show more")}</button>`);
|
|
2226
2247
|
} else {
|
|
2227
2248
|
$$renderer2.push("<!--[-1-->");
|
|
2228
2249
|
}
|
|
@@ -2283,7 +2304,7 @@ function Chat_message($$renderer, $$props) {
|
|
|
2283
2304
|
$$renderer2.push("<!--[-1-->");
|
|
2284
2305
|
}
|
|
2285
2306
|
$$renderer2.push(`<!--]--></div>`);
|
|
2286
|
-
$
|
|
2307
|
+
$36.bind_props($$props, { expanded });
|
|
2287
2308
|
});
|
|
2288
2309
|
}
|
|
2289
2310
|
// src/components/chat/input/attachment-kind.ts
|
|
@@ -2306,7 +2327,7 @@ function deriveAttachmentKind(mimeType) {
|
|
|
2306
2327
|
return "document";
|
|
2307
2328
|
}
|
|
2308
2329
|
// src/components/chat/input/chat-attachment-preview.svelte
|
|
2309
|
-
import * as $
|
|
2330
|
+
import * as $39 from "svelte/internal/server";
|
|
2310
2331
|
|
|
2311
2332
|
// src/utilities/format-bytes.ts
|
|
2312
2333
|
function formatBytes(bytes) {
|
|
@@ -2318,9 +2339,9 @@ function formatBytes(bytes) {
|
|
|
2318
2339
|
}
|
|
2319
2340
|
|
|
2320
2341
|
// ../../node_modules/lucide-svelte/dist/icons/file-code.svelte
|
|
2321
|
-
import * as $
|
|
2342
|
+
import * as $37 from "svelte/internal/server";
|
|
2322
2343
|
function File_code($$renderer, $$props) {
|
|
2323
|
-
const $$sanitized_props = $
|
|
2344
|
+
const $$sanitized_props = $37.sanitize_props($$props);
|
|
2324
2345
|
const iconNode = [
|
|
2325
2346
|
["path", { d: "M10 12.5 8 15l2 2.5" }],
|
|
2326
2347
|
["path", { d: "m14 12.5 2 2.5-2 2.5" }],
|
|
@@ -2332,14 +2353,14 @@ function File_code($$renderer, $$props) {
|
|
|
2332
2353
|
}
|
|
2333
2354
|
]
|
|
2334
2355
|
];
|
|
2335
|
-
Icon($$renderer, $
|
|
2356
|
+
Icon($$renderer, $37.spread_props([
|
|
2336
2357
|
{ name: "file-code" },
|
|
2337
2358
|
$$sanitized_props,
|
|
2338
2359
|
{
|
|
2339
2360
|
iconNode,
|
|
2340
2361
|
children: ($$renderer2) => {
|
|
2341
2362
|
$$renderer2.push(`<!--[-->`);
|
|
2342
|
-
$
|
|
2363
|
+
$37.slot($$renderer2, $$props, "default", {}, null);
|
|
2343
2364
|
$$renderer2.push(`<!--]-->`);
|
|
2344
2365
|
},
|
|
2345
2366
|
$$slots: { default: true }
|
|
@@ -2347,9 +2368,9 @@ function File_code($$renderer, $$props) {
|
|
|
2347
2368
|
]));
|
|
2348
2369
|
}
|
|
2349
2370
|
// ../../node_modules/lucide-svelte/dist/icons/file-text.svelte
|
|
2350
|
-
import * as $
|
|
2371
|
+
import * as $38 from "svelte/internal/server";
|
|
2351
2372
|
function File_text($$renderer, $$props) {
|
|
2352
|
-
const $$sanitized_props = $
|
|
2373
|
+
const $$sanitized_props = $38.sanitize_props($$props);
|
|
2353
2374
|
const iconNode = [
|
|
2354
2375
|
[
|
|
2355
2376
|
"path",
|
|
@@ -2362,14 +2383,14 @@ function File_text($$renderer, $$props) {
|
|
|
2362
2383
|
["path", { d: "M16 13H8" }],
|
|
2363
2384
|
["path", { d: "M16 17H8" }]
|
|
2364
2385
|
];
|
|
2365
|
-
Icon($$renderer, $
|
|
2386
|
+
Icon($$renderer, $38.spread_props([
|
|
2366
2387
|
{ name: "file-text" },
|
|
2367
2388
|
$$sanitized_props,
|
|
2368
2389
|
{
|
|
2369
2390
|
iconNode,
|
|
2370
2391
|
children: ($$renderer2) => {
|
|
2371
2392
|
$$renderer2.push(`<!--[-->`);
|
|
2372
|
-
$
|
|
2393
|
+
$38.slot($$renderer2, $$props, "default", {}, null);
|
|
2373
2394
|
$$renderer2.push(`<!--]-->`);
|
|
2374
2395
|
},
|
|
2375
2396
|
$$slots: { default: true }
|
|
@@ -2380,8 +2401,8 @@ function File_text($$renderer, $$props) {
|
|
|
2380
2401
|
function Chat_attachment_preview($$renderer, $$props) {
|
|
2381
2402
|
$$renderer.component(($$renderer2) => {
|
|
2382
2403
|
let { attachment, class: className } = $$props;
|
|
2383
|
-
const extension = $
|
|
2384
|
-
const truncatedName = $
|
|
2404
|
+
const extension = $39.derived(() => attachment.file.name.includes(".") ? attachment.file.name.slice(attachment.file.name.lastIndexOf(".")) : "");
|
|
2405
|
+
const truncatedName = $39.derived(() => {
|
|
2385
2406
|
const name = attachment.file.name;
|
|
2386
2407
|
const maxLength = 18;
|
|
2387
2408
|
if (name.length <= maxLength)
|
|
@@ -2393,10 +2414,10 @@ function Chat_attachment_preview($$renderer, $$props) {
|
|
|
2393
2414
|
return name.slice(0, maxLength - 1) + "…";
|
|
2394
2415
|
return base.slice(0, availableLength) + "…" + ext;
|
|
2395
2416
|
});
|
|
2396
|
-
$$renderer2.push(`<div${$
|
|
2417
|
+
$$renderer2.push(`<div${$39.attr_class($39.clsx(classNames("chat-attachment-preview", className)), "svelte-1svhxp5")}${$39.attr("data-kind", attachment.kind)}${$39.attr("data-error", attachment.status === "error" || undefined)}${$39.attr("data-pending", attachment.status === "pending" || undefined)}>`);
|
|
2397
2418
|
if (attachment.kind === "image") {
|
|
2398
2419
|
$$renderer2.push("<!--[0-->");
|
|
2399
|
-
$$renderer2.push(`<img${$
|
|
2420
|
+
$$renderer2.push(`<img${$39.attr("src", attachment.previewUrl)}${$39.attr("alt", attachment.file.name)} class="chat-attachment-preview-image svelte-1svhxp5"/>`);
|
|
2400
2421
|
} else {
|
|
2401
2422
|
$$renderer2.push("<!--[-1-->");
|
|
2402
2423
|
$$renderer2.push(`<div class="chat-attachment-preview-file svelte-1svhxp5"><div class="chat-attachment-preview-icon svelte-1svhxp5">`);
|
|
@@ -2407,19 +2428,19 @@ function Chat_attachment_preview($$renderer, $$props) {
|
|
|
2407
2428
|
$$renderer2.push("<!--[-1-->");
|
|
2408
2429
|
File_text($$renderer2, { class: "icon-sm" });
|
|
2409
2430
|
}
|
|
2410
|
-
$$renderer2.push(`<!--]--></div> <div class="chat-attachment-preview-info svelte-1svhxp5"><span class="chat-attachment-preview-name svelte-1svhxp5"${$
|
|
2431
|
+
$$renderer2.push(`<!--]--></div> <div class="chat-attachment-preview-info svelte-1svhxp5"><span class="chat-attachment-preview-name svelte-1svhxp5"${$39.attr("title", attachment.file.name)}>${$39.escape(truncatedName())}</span> <span class="chat-attachment-preview-meta svelte-1svhxp5">`);
|
|
2411
2432
|
if (extension()) {
|
|
2412
2433
|
$$renderer2.push("<!--[0-->");
|
|
2413
|
-
$$renderer2.push(`<span class="chat-attachment-preview-ext svelte-1svhxp5">${$
|
|
2434
|
+
$$renderer2.push(`<span class="chat-attachment-preview-ext svelte-1svhxp5">${$39.escape(extension())}</span>`);
|
|
2414
2435
|
} else {
|
|
2415
2436
|
$$renderer2.push("<!--[-1-->");
|
|
2416
2437
|
}
|
|
2417
|
-
$$renderer2.push(`<!--]--> <span class="chat-attachment-preview-size svelte-1svhxp5">${$
|
|
2438
|
+
$$renderer2.push(`<!--]--> <span class="chat-attachment-preview-size svelte-1svhxp5">${$39.escape(formatBytes(attachment.file.size))}</span></span></div></div>`);
|
|
2418
2439
|
}
|
|
2419
2440
|
$$renderer2.push(`<!--]--> `);
|
|
2420
2441
|
if (attachment.status === "error") {
|
|
2421
2442
|
$$renderer2.push("<!--[0-->");
|
|
2422
|
-
$$renderer2.push(`<span class="chat-attachment-preview-error-badge svelte-1svhxp5"${$
|
|
2443
|
+
$$renderer2.push(`<span class="chat-attachment-preview-error-badge svelte-1svhxp5"${$39.attr("aria-label", attachment.error ?? "Attachment error")}>!</span>`);
|
|
2423
2444
|
} else {
|
|
2424
2445
|
$$renderer2.push("<!--[-1-->");
|
|
2425
2446
|
}
|
|
@@ -2434,11 +2455,11 @@ function Chat_attachment_preview($$renderer, $$props) {
|
|
|
2434
2455
|
});
|
|
2435
2456
|
}
|
|
2436
2457
|
// src/components/chat/input/chat-input.svelte
|
|
2437
|
-
import * as $
|
|
2438
|
-
import { onDestroy as
|
|
2458
|
+
import * as $79 from "svelte/internal/server";
|
|
2459
|
+
import { onDestroy as onDestroy2 } from "svelte";
|
|
2439
2460
|
|
|
2440
2461
|
// src/utilities/use-announcer.svelte.ts
|
|
2441
|
-
import * as $
|
|
2462
|
+
import * as $40 from "svelte/internal/server";
|
|
2442
2463
|
function useAnnouncer(options) {
|
|
2443
2464
|
const { clearDelay = 1000, debounceMs = 0 } = options ?? {};
|
|
2444
2465
|
let message = "";
|
|
@@ -2533,21 +2554,21 @@ function useStableId(seed) {
|
|
|
2533
2554
|
}
|
|
2534
2555
|
|
|
2535
2556
|
// ../../node_modules/lucide-svelte/dist/icons/arrow-up.svelte
|
|
2536
|
-
import * as $
|
|
2557
|
+
import * as $41 from "svelte/internal/server";
|
|
2537
2558
|
function Arrow_up($$renderer, $$props) {
|
|
2538
|
-
const $$sanitized_props = $
|
|
2559
|
+
const $$sanitized_props = $41.sanitize_props($$props);
|
|
2539
2560
|
const iconNode = [
|
|
2540
2561
|
["path", { d: "m5 12 7-7 7 7" }],
|
|
2541
2562
|
["path", { d: "M12 19V5" }]
|
|
2542
2563
|
];
|
|
2543
|
-
Icon($$renderer, $
|
|
2564
|
+
Icon($$renderer, $41.spread_props([
|
|
2544
2565
|
{ name: "arrow-up" },
|
|
2545
2566
|
$$sanitized_props,
|
|
2546
2567
|
{
|
|
2547
2568
|
iconNode,
|
|
2548
2569
|
children: ($$renderer2) => {
|
|
2549
2570
|
$$renderer2.push(`<!--[-->`);
|
|
2550
|
-
$
|
|
2571
|
+
$41.slot($$renderer2, $$props, "default", {}, null);
|
|
2551
2572
|
$$renderer2.push(`<!--]-->`);
|
|
2552
2573
|
},
|
|
2553
2574
|
$$slots: { default: true }
|
|
@@ -2555,9 +2576,9 @@ function Arrow_up($$renderer, $$props) {
|
|
|
2555
2576
|
]));
|
|
2556
2577
|
}
|
|
2557
2578
|
// ../../node_modules/lucide-svelte/dist/icons/paperclip.svelte
|
|
2558
|
-
import * as $
|
|
2579
|
+
import * as $42 from "svelte/internal/server";
|
|
2559
2580
|
function Paperclip($$renderer, $$props) {
|
|
2560
|
-
const $$sanitized_props = $
|
|
2581
|
+
const $$sanitized_props = $42.sanitize_props($$props);
|
|
2561
2582
|
const iconNode = [
|
|
2562
2583
|
["path", { d: "M13.234 20.252 21 12.3" }],
|
|
2563
2584
|
[
|
|
@@ -2567,14 +2588,14 @@ function Paperclip($$renderer, $$props) {
|
|
|
2567
2588
|
}
|
|
2568
2589
|
]
|
|
2569
2590
|
];
|
|
2570
|
-
Icon($$renderer, $
|
|
2591
|
+
Icon($$renderer, $42.spread_props([
|
|
2571
2592
|
{ name: "paperclip" },
|
|
2572
2593
|
$$sanitized_props,
|
|
2573
2594
|
{
|
|
2574
2595
|
iconNode,
|
|
2575
2596
|
children: ($$renderer2) => {
|
|
2576
2597
|
$$renderer2.push(`<!--[-->`);
|
|
2577
|
-
$
|
|
2598
|
+
$42.slot($$renderer2, $$props, "default", {}, null);
|
|
2578
2599
|
$$renderer2.push(`<!--]-->`);
|
|
2579
2600
|
},
|
|
2580
2601
|
$$slots: { default: true }
|
|
@@ -2582,23 +2603,23 @@ function Paperclip($$renderer, $$props) {
|
|
|
2582
2603
|
]));
|
|
2583
2604
|
}
|
|
2584
2605
|
// ../../node_modules/lucide-svelte/dist/icons/square.svelte
|
|
2585
|
-
import * as $
|
|
2606
|
+
import * as $43 from "svelte/internal/server";
|
|
2586
2607
|
function Square($$renderer, $$props) {
|
|
2587
|
-
const $$sanitized_props = $
|
|
2608
|
+
const $$sanitized_props = $43.sanitize_props($$props);
|
|
2588
2609
|
const iconNode = [
|
|
2589
2610
|
[
|
|
2590
2611
|
"rect",
|
|
2591
2612
|
{ width: "18", height: "18", x: "3", y: "3", rx: "2" }
|
|
2592
2613
|
]
|
|
2593
2614
|
];
|
|
2594
|
-
Icon($$renderer, $
|
|
2615
|
+
Icon($$renderer, $43.spread_props([
|
|
2595
2616
|
{ name: "square" },
|
|
2596
2617
|
$$sanitized_props,
|
|
2597
2618
|
{
|
|
2598
2619
|
iconNode,
|
|
2599
2620
|
children: ($$renderer2) => {
|
|
2600
2621
|
$$renderer2.push(`<!--[-->`);
|
|
2601
|
-
$
|
|
2622
|
+
$43.slot($$renderer2, $$props, "default", {}, null);
|
|
2602
2623
|
$$renderer2.push(`<!--]-->`);
|
|
2603
2624
|
},
|
|
2604
2625
|
$$slots: { default: true }
|
|
@@ -2606,7 +2627,7 @@ function Square($$renderer, $$props) {
|
|
|
2606
2627
|
]));
|
|
2607
2628
|
}
|
|
2608
2629
|
// src/components/button/button.svelte
|
|
2609
|
-
import * as $
|
|
2630
|
+
import * as $44 from "svelte/internal/server";
|
|
2610
2631
|
function Button($$renderer, $$props) {
|
|
2611
2632
|
$$renderer.component(($$renderer2) => {
|
|
2612
2633
|
const {
|
|
@@ -2633,23 +2654,23 @@ function Button($$renderer, $$props) {
|
|
|
2633
2654
|
$$events,
|
|
2634
2655
|
...rest
|
|
2635
2656
|
} = $$props;
|
|
2636
|
-
const mergedClassName = $
|
|
2637
|
-
const dataAttributes = $
|
|
2657
|
+
const mergedClassName = $44.derived(() => classNames("cinder-button", customClassName));
|
|
2658
|
+
const dataAttributes = $44.derived(() => ({
|
|
2638
2659
|
"data-cinder-variant": variant,
|
|
2639
2660
|
"data-cinder-size": size,
|
|
2640
2661
|
"data-cinder-full-width": fullWidth ? "" : undefined,
|
|
2641
2662
|
"data-cinder-loading": loading ? "" : undefined,
|
|
2642
2663
|
"data-cinder-icon-only": iconOnly ? "" : undefined
|
|
2643
2664
|
}));
|
|
2644
|
-
const resolvedAriaDisabled = $
|
|
2645
|
-
const resolvedAriaBusy = $
|
|
2646
|
-
const resolvedAriaLabel = $
|
|
2647
|
-
const resolvedAriaLabelledBy = $
|
|
2665
|
+
const resolvedAriaDisabled = $44.derived(() => loading ? "true" : consumerAriaDisabled);
|
|
2666
|
+
const resolvedAriaBusy = $44.derived(() => loading ? "true" : consumerAriaBusy);
|
|
2667
|
+
const resolvedAriaLabel = $44.derived(() => typeof ariaLabel === "string" && ariaLabel.trim().length > 0 ? ariaLabel : undefined);
|
|
2668
|
+
const resolvedAriaLabelledBy = $44.derived(() => typeof ariaLabelledBy === "string" && ariaLabelledBy.trim().length > 0 ? ariaLabelledBy : undefined);
|
|
2648
2669
|
const anchorAttributes = rest;
|
|
2649
2670
|
const buttonAttributes = rest;
|
|
2650
|
-
const anchorTabIndex = $
|
|
2651
|
-
const buttonType = $
|
|
2652
|
-
const buttonDisabled = $
|
|
2671
|
+
const anchorTabIndex = $44.derived(() => rest.tabindex);
|
|
2672
|
+
const buttonType = $44.derived(() => rest.type);
|
|
2673
|
+
const buttonDisabled = $44.derived(() => rest.disabled ?? false);
|
|
2653
2674
|
function handleClick(event) {
|
|
2654
2675
|
if (loading) {
|
|
2655
2676
|
event.preventDefault();
|
|
@@ -2673,7 +2694,7 @@ function Button($$renderer, $$props) {
|
|
|
2673
2694
|
$$renderer3.push("<!--[0-->");
|
|
2674
2695
|
if (!resolvedAriaLabel() && !resolvedAriaLabelledBy() && label) {
|
|
2675
2696
|
$$renderer3.push("<!--[0-->");
|
|
2676
|
-
$$renderer3.push(`<span class="cinder-sr-only">${$
|
|
2697
|
+
$$renderer3.push(`<span class="cinder-sr-only">${$44.escape(label)}</span>`);
|
|
2677
2698
|
} else {
|
|
2678
2699
|
$$renderer3.push("<!--[-1-->");
|
|
2679
2700
|
}
|
|
@@ -2693,7 +2714,7 @@ function Button($$renderer, $$props) {
|
|
|
2693
2714
|
$$renderer3.push(`<!---->`);
|
|
2694
2715
|
} else {
|
|
2695
2716
|
$$renderer3.push("<!--[-1-->");
|
|
2696
|
-
$$renderer3.push(`${$
|
|
2717
|
+
$$renderer3.push(`${$44.escape(label)}`);
|
|
2697
2718
|
}
|
|
2698
2719
|
$$renderer3.push(`<!--]--> `);
|
|
2699
2720
|
if (trailingIcon) {
|
|
@@ -2708,11 +2729,11 @@ function Button($$renderer, $$props) {
|
|
|
2708
2729
|
}
|
|
2709
2730
|
if (href !== undefined) {
|
|
2710
2731
|
$$renderer2.push("<!--[0-->");
|
|
2711
|
-
$$renderer2.push(`<a${$
|
|
2732
|
+
$$renderer2.push(`<a${$44.attributes({
|
|
2712
2733
|
...anchorAttributes,
|
|
2713
2734
|
href: loading ? undefined : href,
|
|
2714
2735
|
tabindex: loading ? -1 : anchorTabIndex(),
|
|
2715
|
-
class: $
|
|
2736
|
+
class: $44.clsx(mergedClassName()),
|
|
2716
2737
|
...dataAttributes(),
|
|
2717
2738
|
"aria-disabled": resolvedAriaDisabled(),
|
|
2718
2739
|
"aria-busy": resolvedAriaBusy(),
|
|
@@ -2726,10 +2747,10 @@ function Button($$renderer, $$props) {
|
|
|
2726
2747
|
$$renderer2.push(`<!----></a>`);
|
|
2727
2748
|
} else {
|
|
2728
2749
|
$$renderer2.push("<!--[-1-->");
|
|
2729
|
-
$$renderer2.push(`<button${$
|
|
2750
|
+
$$renderer2.push(`<button${$44.attributes({
|
|
2730
2751
|
...buttonAttributes,
|
|
2731
2752
|
type: buttonType() ?? "button",
|
|
2732
|
-
class: $
|
|
2753
|
+
class: $44.clsx(mergedClassName()),
|
|
2733
2754
|
...dataAttributes(),
|
|
2734
2755
|
disabled: buttonDisabled() || loading,
|
|
2735
2756
|
"aria-disabled": resolvedAriaDisabled(),
|
|
@@ -2748,8 +2769,8 @@ function Button($$renderer, $$props) {
|
|
|
2748
2769
|
}
|
|
2749
2770
|
|
|
2750
2771
|
// src/components/markdown-editor/markdown-editor.svelte
|
|
2751
|
-
import * as $
|
|
2752
|
-
import { onDestroy
|
|
2772
|
+
import * as $78 from "svelte/internal/server";
|
|
2773
|
+
import { onDestroy } from "svelte";
|
|
2753
2774
|
import {
|
|
2754
2775
|
createEditorAttachment,
|
|
2755
2776
|
setEditorReadonly,
|
|
@@ -2769,11 +2790,11 @@ import {
|
|
|
2769
2790
|
} from "@lostgradient/cinder/editor/component-runtime";
|
|
2770
2791
|
|
|
2771
2792
|
// src/components/segment/segment.svelte
|
|
2772
|
-
import * as $
|
|
2793
|
+
import * as $46 from "svelte/internal/server";
|
|
2773
2794
|
import { untrack } from "svelte";
|
|
2774
2795
|
|
|
2775
2796
|
// src/components/segmented-control/segmented-control-state.svelte.ts
|
|
2776
|
-
import * as $
|
|
2797
|
+
import * as $45 from "svelte/internal/server";
|
|
2777
2798
|
import { createContext } from "svelte";
|
|
2778
2799
|
|
|
2779
2800
|
// src/utilities/document-order.ts
|
|
@@ -3019,11 +3040,11 @@ function Segment($$renderer, $$props) {
|
|
|
3019
3040
|
}
|
|
3020
3041
|
}));
|
|
3021
3042
|
};
|
|
3022
|
-
const isSelected = $
|
|
3023
|
-
const isFocusable = $
|
|
3024
|
-
const effectiveDisabled = $
|
|
3025
|
-
const role = $
|
|
3026
|
-
$$renderer2.push(`<button${$
|
|
3043
|
+
const isSelected = $46.derived(() => context.isSelected(value));
|
|
3044
|
+
const isFocusable = $46.derived(() => context.isFocusable(value));
|
|
3045
|
+
const effectiveDisabled = $46.derived(() => disabled || context.controlDisabled);
|
|
3046
|
+
const role = $46.derived(() => context.selectionMode === "multiple" ? undefined : context.variant === "tablist" ? "tab" : "radio");
|
|
3047
|
+
$$renderer2.push(`<button${$46.attributes({
|
|
3027
3048
|
...rest,
|
|
3028
3049
|
type: "button",
|
|
3029
3050
|
role: role(),
|
|
@@ -3035,7 +3056,7 @@ function Segment($$renderer, $$props) {
|
|
|
3035
3056
|
"aria-disabled": effectiveDisabled() ? "true" : undefined,
|
|
3036
3057
|
disabled: context.selectionMode === "multiple" ? effectiveDisabled() : undefined,
|
|
3037
3058
|
tabindex: isFocusable() ? 0 : -1,
|
|
3038
|
-
class: $
|
|
3059
|
+
class: $46.clsx(classNames("cinder-segmented-control-option", customClassName)),
|
|
3039
3060
|
"data-cinder-selected": isSelected() ? "" : undefined,
|
|
3040
3061
|
"data-cinder-pressed": context.selectionMode === "multiple" && isSelected() ? "" : undefined
|
|
3041
3062
|
})}>`);
|
|
@@ -3063,7 +3084,7 @@ function Segment($$renderer, $$props) {
|
|
|
3063
3084
|
}
|
|
3064
3085
|
|
|
3065
3086
|
// src/components/segmented-control/segmented-control.svelte
|
|
3066
|
-
import * as $
|
|
3087
|
+
import * as $47 from "svelte/internal/server";
|
|
3067
3088
|
function Segmented_control($$renderer, $$props) {
|
|
3068
3089
|
$$renderer.component(($$renderer2) => {
|
|
3069
3090
|
let {
|
|
@@ -3115,9 +3136,9 @@ function Segmented_control($$renderer, $$props) {
|
|
|
3115
3136
|
toggle: (segmentValue) => controller.toggle(segmentValue)
|
|
3116
3137
|
};
|
|
3117
3138
|
setSegmentedControlContext(contextValue);
|
|
3118
|
-
const groupRole = $
|
|
3119
|
-
const effectiveSize = $
|
|
3120
|
-
$$renderer2.push(`<div class="cinder-segmented-control-container"><span${$
|
|
3139
|
+
const groupRole = $47.derived(() => selectionMode === "multiple" ? "group" : variant === "tablist" ? "tablist" : "radiogroup");
|
|
3140
|
+
const effectiveSize = $47.derived(() => density === "toolbar" ? "sm" : size);
|
|
3141
|
+
$$renderer2.push(`<div class="cinder-segmented-control-container"><span${$47.attr("id", `${id}-label`)}${$47.attr_class($47.clsx(classNames("cinder-segmented-control-label", hideLabel && "cinder-sr-only")))}>${$47.escape(label)}</span> <div${$47.attributes({
|
|
3121
3142
|
...rest,
|
|
3122
3143
|
id,
|
|
3123
3144
|
role: groupRole(),
|
|
@@ -3131,49 +3152,49 @@ function Segmented_control($$renderer, $$props) {
|
|
|
3131
3152
|
"data-cinder-detached": detached ? "" : undefined,
|
|
3132
3153
|
"data-cinder-full-width": fullWidth ? "" : undefined,
|
|
3133
3154
|
"data-cinder-variant": variant,
|
|
3134
|
-
class: $
|
|
3155
|
+
class: $47.clsx(classNames("cinder-segmented-control", customClassName))
|
|
3135
3156
|
})}>`);
|
|
3136
3157
|
children($$renderer2);
|
|
3137
3158
|
$$renderer2.push(`<!----></div></div>`);
|
|
3138
|
-
$
|
|
3159
|
+
$47.bind_props($$props, { value });
|
|
3139
3160
|
});
|
|
3140
3161
|
}
|
|
3141
3162
|
|
|
3142
3163
|
// src/components/markdown-editor/editor-skeleton.svelte
|
|
3143
|
-
import * as $
|
|
3164
|
+
import * as $48 from "svelte/internal/server";
|
|
3144
3165
|
function Editor_skeleton($$renderer, $$props) {
|
|
3145
3166
|
$$renderer.component(($$renderer2) => {
|
|
3146
3167
|
let { lines = 8, class: className, $$slots, $$events, ...rest } = $$props;
|
|
3147
3168
|
const SHIMMER_WIDTHS = [68, 84, 56, 92, 72, 80, 60, 88];
|
|
3148
|
-
const lineWidths = $
|
|
3169
|
+
const lineWidths = $48.derived(() => Array.from({ length: lines }, (_, i) => {
|
|
3149
3170
|
if (i === 0)
|
|
3150
3171
|
return 45;
|
|
3151
3172
|
if (i === lines - 1)
|
|
3152
3173
|
return 30;
|
|
3153
3174
|
return SHIMMER_WIDTHS[i % SHIMMER_WIDTHS.length] ?? 68;
|
|
3154
3175
|
}));
|
|
3155
|
-
$$renderer2.push(`<div${$
|
|
3156
|
-
class: $
|
|
3176
|
+
$$renderer2.push(`<div${$48.attributes({
|
|
3177
|
+
class: $48.clsx(classNames("editor-skeleton", "surface", className)),
|
|
3157
3178
|
role: "status",
|
|
3158
3179
|
"aria-label": "Loading editor",
|
|
3159
3180
|
...rest
|
|
3160
3181
|
}, "svelte-1h3fabh")}><span class="sr-only svelte-1h3fabh">Loading editor...</span> <div class="skeleton-content svelte-1h3fabh"><!--[-->`);
|
|
3161
|
-
const each_array = $
|
|
3182
|
+
const each_array = $48.ensure_array_like(lineWidths());
|
|
3162
3183
|
for (let i = 0, $$length = each_array.length;i < $$length; i++) {
|
|
3163
3184
|
let width = each_array[i];
|
|
3164
|
-
$$renderer2.push(`<div class="skeleton-line svelte-1h3fabh"${$
|
|
3185
|
+
$$renderer2.push(`<div class="skeleton-line svelte-1h3fabh"${$48.attr_style("", { "--skeleton-line-width": `${$48.stringify(width)}%` })}></div>`);
|
|
3165
3186
|
}
|
|
3166
3187
|
$$renderer2.push(`<!--]--></div></div>`);
|
|
3167
3188
|
});
|
|
3168
3189
|
}
|
|
3169
3190
|
|
|
3170
3191
|
// src/components/markdown-editor/editor-toolbar/editor-toolbar.svelte
|
|
3171
|
-
import * as $
|
|
3192
|
+
import * as $74 from "svelte/internal/server";
|
|
3172
3193
|
|
|
3173
3194
|
// ../../node_modules/lucide-svelte/dist/icons/bold.svelte
|
|
3174
|
-
import * as $
|
|
3195
|
+
import * as $49 from "svelte/internal/server";
|
|
3175
3196
|
function Bold($$renderer, $$props) {
|
|
3176
|
-
const $$sanitized_props = $
|
|
3197
|
+
const $$sanitized_props = $49.sanitize_props($$props);
|
|
3177
3198
|
const iconNode = [
|
|
3178
3199
|
[
|
|
3179
3200
|
"path",
|
|
@@ -3182,14 +3203,14 @@ function Bold($$renderer, $$props) {
|
|
|
3182
3203
|
}
|
|
3183
3204
|
]
|
|
3184
3205
|
];
|
|
3185
|
-
Icon($$renderer, $
|
|
3206
|
+
Icon($$renderer, $49.spread_props([
|
|
3186
3207
|
{ name: "bold" },
|
|
3187
3208
|
$$sanitized_props,
|
|
3188
3209
|
{
|
|
3189
3210
|
iconNode,
|
|
3190
3211
|
children: ($$renderer2) => {
|
|
3191
3212
|
$$renderer2.push(`<!--[-->`);
|
|
3192
|
-
$
|
|
3213
|
+
$49.slot($$renderer2, $$props, "default", {}, null);
|
|
3193
3214
|
$$renderer2.push(`<!--]-->`);
|
|
3194
3215
|
},
|
|
3195
3216
|
$$slots: { default: true }
|
|
@@ -3197,21 +3218,21 @@ function Bold($$renderer, $$props) {
|
|
|
3197
3218
|
]));
|
|
3198
3219
|
}
|
|
3199
3220
|
// ../../node_modules/lucide-svelte/dist/icons/code.svelte
|
|
3200
|
-
import * as $
|
|
3221
|
+
import * as $50 from "svelte/internal/server";
|
|
3201
3222
|
function Code($$renderer, $$props) {
|
|
3202
|
-
const $$sanitized_props = $
|
|
3223
|
+
const $$sanitized_props = $50.sanitize_props($$props);
|
|
3203
3224
|
const iconNode = [
|
|
3204
3225
|
["polyline", { points: "16 18 22 12 16 6" }],
|
|
3205
3226
|
["polyline", { points: "8 6 2 12 8 18" }]
|
|
3206
3227
|
];
|
|
3207
|
-
Icon($$renderer, $
|
|
3228
|
+
Icon($$renderer, $50.spread_props([
|
|
3208
3229
|
{ name: "code" },
|
|
3209
3230
|
$$sanitized_props,
|
|
3210
3231
|
{
|
|
3211
3232
|
iconNode,
|
|
3212
3233
|
children: ($$renderer2) => {
|
|
3213
3234
|
$$renderer2.push(`<!--[-->`);
|
|
3214
|
-
$
|
|
3235
|
+
$50.slot($$renderer2, $$props, "default", {}, null);
|
|
3215
3236
|
$$renderer2.push(`<!--]-->`);
|
|
3216
3237
|
},
|
|
3217
3238
|
$$slots: { default: true }
|
|
@@ -3219,23 +3240,23 @@ function Code($$renderer, $$props) {
|
|
|
3219
3240
|
]));
|
|
3220
3241
|
}
|
|
3221
3242
|
// ../../node_modules/lucide-svelte/dist/icons/heading-1.svelte
|
|
3222
|
-
import * as $
|
|
3243
|
+
import * as $51 from "svelte/internal/server";
|
|
3223
3244
|
function Heading_1($$renderer, $$props) {
|
|
3224
|
-
const $$sanitized_props = $
|
|
3245
|
+
const $$sanitized_props = $51.sanitize_props($$props);
|
|
3225
3246
|
const iconNode = [
|
|
3226
3247
|
["path", { d: "M4 12h8" }],
|
|
3227
3248
|
["path", { d: "M4 18V6" }],
|
|
3228
3249
|
["path", { d: "M12 18V6" }],
|
|
3229
3250
|
["path", { d: "m17 12 3-2v8" }]
|
|
3230
3251
|
];
|
|
3231
|
-
Icon($$renderer, $
|
|
3252
|
+
Icon($$renderer, $51.spread_props([
|
|
3232
3253
|
{ name: "heading-1" },
|
|
3233
3254
|
$$sanitized_props,
|
|
3234
3255
|
{
|
|
3235
3256
|
iconNode,
|
|
3236
3257
|
children: ($$renderer2) => {
|
|
3237
3258
|
$$renderer2.push(`<!--[-->`);
|
|
3238
|
-
$
|
|
3259
|
+
$51.slot($$renderer2, $$props, "default", {}, null);
|
|
3239
3260
|
$$renderer2.push(`<!--]-->`);
|
|
3240
3261
|
},
|
|
3241
3262
|
$$slots: { default: true }
|
|
@@ -3243,23 +3264,23 @@ function Heading_1($$renderer, $$props) {
|
|
|
3243
3264
|
]));
|
|
3244
3265
|
}
|
|
3245
3266
|
// ../../node_modules/lucide-svelte/dist/icons/heading-2.svelte
|
|
3246
|
-
import * as $
|
|
3267
|
+
import * as $52 from "svelte/internal/server";
|
|
3247
3268
|
function Heading_2($$renderer, $$props) {
|
|
3248
|
-
const $$sanitized_props = $
|
|
3269
|
+
const $$sanitized_props = $52.sanitize_props($$props);
|
|
3249
3270
|
const iconNode = [
|
|
3250
3271
|
["path", { d: "M4 12h8" }],
|
|
3251
3272
|
["path", { d: "M4 18V6" }],
|
|
3252
3273
|
["path", { d: "M12 18V6" }],
|
|
3253
3274
|
["path", { d: "M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1" }]
|
|
3254
3275
|
];
|
|
3255
|
-
Icon($$renderer, $
|
|
3276
|
+
Icon($$renderer, $52.spread_props([
|
|
3256
3277
|
{ name: "heading-2" },
|
|
3257
3278
|
$$sanitized_props,
|
|
3258
3279
|
{
|
|
3259
3280
|
iconNode,
|
|
3260
3281
|
children: ($$renderer2) => {
|
|
3261
3282
|
$$renderer2.push(`<!--[-->`);
|
|
3262
|
-
$
|
|
3283
|
+
$52.slot($$renderer2, $$props, "default", {}, null);
|
|
3263
3284
|
$$renderer2.push(`<!--]-->`);
|
|
3264
3285
|
},
|
|
3265
3286
|
$$slots: { default: true }
|
|
@@ -3267,9 +3288,9 @@ function Heading_2($$renderer, $$props) {
|
|
|
3267
3288
|
]));
|
|
3268
3289
|
}
|
|
3269
3290
|
// ../../node_modules/lucide-svelte/dist/icons/heading-3.svelte
|
|
3270
|
-
import * as $
|
|
3291
|
+
import * as $53 from "svelte/internal/server";
|
|
3271
3292
|
function Heading_3($$renderer, $$props) {
|
|
3272
|
-
const $$sanitized_props = $
|
|
3293
|
+
const $$sanitized_props = $53.sanitize_props($$props);
|
|
3273
3294
|
const iconNode = [
|
|
3274
3295
|
["path", { d: "M4 12h8" }],
|
|
3275
3296
|
["path", { d: "M4 18V6" }],
|
|
@@ -3280,14 +3301,14 @@ function Heading_3($$renderer, $$props) {
|
|
|
3280
3301
|
],
|
|
3281
3302
|
["path", { d: "M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2" }]
|
|
3282
3303
|
];
|
|
3283
|
-
Icon($$renderer, $
|
|
3304
|
+
Icon($$renderer, $53.spread_props([
|
|
3284
3305
|
{ name: "heading-3" },
|
|
3285
3306
|
$$sanitized_props,
|
|
3286
3307
|
{
|
|
3287
3308
|
iconNode,
|
|
3288
3309
|
children: ($$renderer2) => {
|
|
3289
3310
|
$$renderer2.push(`<!--[-->`);
|
|
3290
|
-
$
|
|
3311
|
+
$53.slot($$renderer2, $$props, "default", {}, null);
|
|
3291
3312
|
$$renderer2.push(`<!--]-->`);
|
|
3292
3313
|
},
|
|
3293
3314
|
$$slots: { default: true }
|
|
@@ -3295,22 +3316,22 @@ function Heading_3($$renderer, $$props) {
|
|
|
3295
3316
|
]));
|
|
3296
3317
|
}
|
|
3297
3318
|
// ../../node_modules/lucide-svelte/dist/icons/italic.svelte
|
|
3298
|
-
import * as $
|
|
3319
|
+
import * as $54 from "svelte/internal/server";
|
|
3299
3320
|
function Italic($$renderer, $$props) {
|
|
3300
|
-
const $$sanitized_props = $
|
|
3321
|
+
const $$sanitized_props = $54.sanitize_props($$props);
|
|
3301
3322
|
const iconNode = [
|
|
3302
3323
|
["line", { x1: "19", x2: "10", y1: "4", y2: "4" }],
|
|
3303
3324
|
["line", { x1: "14", x2: "5", y1: "20", y2: "20" }],
|
|
3304
3325
|
["line", { x1: "15", x2: "9", y1: "4", y2: "20" }]
|
|
3305
3326
|
];
|
|
3306
|
-
Icon($$renderer, $
|
|
3327
|
+
Icon($$renderer, $54.spread_props([
|
|
3307
3328
|
{ name: "italic" },
|
|
3308
3329
|
$$sanitized_props,
|
|
3309
3330
|
{
|
|
3310
3331
|
iconNode,
|
|
3311
3332
|
children: ($$renderer2) => {
|
|
3312
3333
|
$$renderer2.push(`<!--[-->`);
|
|
3313
|
-
$
|
|
3334
|
+
$54.slot($$renderer2, $$props, "default", {}, null);
|
|
3314
3335
|
$$renderer2.push(`<!--]-->`);
|
|
3315
3336
|
},
|
|
3316
3337
|
$$slots: { default: true }
|
|
@@ -3318,9 +3339,9 @@ function Italic($$renderer, $$props) {
|
|
|
3318
3339
|
]));
|
|
3319
3340
|
}
|
|
3320
3341
|
// ../../node_modules/lucide-svelte/dist/icons/link.svelte
|
|
3321
|
-
import * as $
|
|
3342
|
+
import * as $55 from "svelte/internal/server";
|
|
3322
3343
|
function Link($$renderer, $$props) {
|
|
3323
|
-
const $$sanitized_props = $
|
|
3344
|
+
const $$sanitized_props = $55.sanitize_props($$props);
|
|
3324
3345
|
const iconNode = [
|
|
3325
3346
|
[
|
|
3326
3347
|
"path",
|
|
@@ -3335,14 +3356,14 @@ function Link($$renderer, $$props) {
|
|
|
3335
3356
|
}
|
|
3336
3357
|
]
|
|
3337
3358
|
];
|
|
3338
|
-
Icon($$renderer, $
|
|
3359
|
+
Icon($$renderer, $55.spread_props([
|
|
3339
3360
|
{ name: "link" },
|
|
3340
3361
|
$$sanitized_props,
|
|
3341
3362
|
{
|
|
3342
3363
|
iconNode,
|
|
3343
3364
|
children: ($$renderer2) => {
|
|
3344
3365
|
$$renderer2.push(`<!--[-->`);
|
|
3345
|
-
$
|
|
3366
|
+
$55.slot($$renderer2, $$props, "default", {}, null);
|
|
3346
3367
|
$$renderer2.push(`<!--]-->`);
|
|
3347
3368
|
},
|
|
3348
3369
|
$$slots: { default: true }
|
|
@@ -3350,9 +3371,9 @@ function Link($$renderer, $$props) {
|
|
|
3350
3371
|
]));
|
|
3351
3372
|
}
|
|
3352
3373
|
// ../../node_modules/lucide-svelte/dist/icons/list.svelte
|
|
3353
|
-
import * as $
|
|
3374
|
+
import * as $56 from "svelte/internal/server";
|
|
3354
3375
|
function List($$renderer, $$props) {
|
|
3355
|
-
const $$sanitized_props = $
|
|
3376
|
+
const $$sanitized_props = $56.sanitize_props($$props);
|
|
3356
3377
|
const iconNode = [
|
|
3357
3378
|
["path", { d: "M3 12h.01" }],
|
|
3358
3379
|
["path", { d: "M3 18h.01" }],
|
|
@@ -3361,14 +3382,14 @@ function List($$renderer, $$props) {
|
|
|
3361
3382
|
["path", { d: "M8 18h13" }],
|
|
3362
3383
|
["path", { d: "M8 6h13" }]
|
|
3363
3384
|
];
|
|
3364
|
-
Icon($$renderer, $
|
|
3385
|
+
Icon($$renderer, $56.spread_props([
|
|
3365
3386
|
{ name: "list" },
|
|
3366
3387
|
$$sanitized_props,
|
|
3367
3388
|
{
|
|
3368
3389
|
iconNode,
|
|
3369
3390
|
children: ($$renderer2) => {
|
|
3370
3391
|
$$renderer2.push(`<!--[-->`);
|
|
3371
|
-
$
|
|
3392
|
+
$56.slot($$renderer2, $$props, "default", {}, null);
|
|
3372
3393
|
$$renderer2.push(`<!--]-->`);
|
|
3373
3394
|
},
|
|
3374
3395
|
$$slots: { default: true }
|
|
@@ -3376,9 +3397,9 @@ function List($$renderer, $$props) {
|
|
|
3376
3397
|
]));
|
|
3377
3398
|
}
|
|
3378
3399
|
// ../../node_modules/lucide-svelte/dist/icons/list-ordered.svelte
|
|
3379
|
-
import * as $
|
|
3400
|
+
import * as $57 from "svelte/internal/server";
|
|
3380
3401
|
function List_ordered($$renderer, $$props) {
|
|
3381
|
-
const $$sanitized_props = $
|
|
3402
|
+
const $$sanitized_props = $57.sanitize_props($$props);
|
|
3382
3403
|
const iconNode = [
|
|
3383
3404
|
["path", { d: "M10 12h11" }],
|
|
3384
3405
|
["path", { d: "M10 18h11" }],
|
|
@@ -3387,14 +3408,14 @@ function List_ordered($$renderer, $$props) {
|
|
|
3387
3408
|
["path", { d: "M4 6h1v4" }],
|
|
3388
3409
|
["path", { d: "M6 18H4c0-1 2-2 2-3s-1-1.5-2-1" }]
|
|
3389
3410
|
];
|
|
3390
|
-
Icon($$renderer, $
|
|
3411
|
+
Icon($$renderer, $57.spread_props([
|
|
3391
3412
|
{ name: "list-ordered" },
|
|
3392
3413
|
$$sanitized_props,
|
|
3393
3414
|
{
|
|
3394
3415
|
iconNode,
|
|
3395
3416
|
children: ($$renderer2) => {
|
|
3396
3417
|
$$renderer2.push(`<!--[-->`);
|
|
3397
|
-
$
|
|
3418
|
+
$57.slot($$renderer2, $$props, "default", {}, null);
|
|
3398
3419
|
$$renderer2.push(`<!--]-->`);
|
|
3399
3420
|
},
|
|
3400
3421
|
$$slots: { default: true }
|
|
@@ -3402,22 +3423,22 @@ function List_ordered($$renderer, $$props) {
|
|
|
3402
3423
|
]));
|
|
3403
3424
|
}
|
|
3404
3425
|
// ../../node_modules/lucide-svelte/dist/icons/pilcrow.svelte
|
|
3405
|
-
import * as $
|
|
3426
|
+
import * as $58 from "svelte/internal/server";
|
|
3406
3427
|
function Pilcrow($$renderer, $$props) {
|
|
3407
|
-
const $$sanitized_props = $
|
|
3428
|
+
const $$sanitized_props = $58.sanitize_props($$props);
|
|
3408
3429
|
const iconNode = [
|
|
3409
3430
|
["path", { d: "M13 4v16" }],
|
|
3410
3431
|
["path", { d: "M17 4v16" }],
|
|
3411
3432
|
["path", { d: "M19 4H9.5a4.5 4.5 0 0 0 0 9H13" }]
|
|
3412
3433
|
];
|
|
3413
|
-
Icon($$renderer, $
|
|
3434
|
+
Icon($$renderer, $58.spread_props([
|
|
3414
3435
|
{ name: "pilcrow" },
|
|
3415
3436
|
$$sanitized_props,
|
|
3416
3437
|
{
|
|
3417
3438
|
iconNode,
|
|
3418
3439
|
children: ($$renderer2) => {
|
|
3419
3440
|
$$renderer2.push(`<!--[-->`);
|
|
3420
|
-
$
|
|
3441
|
+
$58.slot($$renderer2, $$props, "default", {}, null);
|
|
3421
3442
|
$$renderer2.push(`<!--]-->`);
|
|
3422
3443
|
},
|
|
3423
3444
|
$$slots: { default: true }
|
|
@@ -3425,9 +3446,9 @@ function Pilcrow($$renderer, $$props) {
|
|
|
3425
3446
|
]));
|
|
3426
3447
|
}
|
|
3427
3448
|
// ../../node_modules/lucide-svelte/dist/icons/quote.svelte
|
|
3428
|
-
import * as $
|
|
3449
|
+
import * as $59 from "svelte/internal/server";
|
|
3429
3450
|
function Quote($$renderer, $$props) {
|
|
3430
|
-
const $$sanitized_props = $
|
|
3451
|
+
const $$sanitized_props = $59.sanitize_props($$props);
|
|
3431
3452
|
const iconNode = [
|
|
3432
3453
|
[
|
|
3433
3454
|
"path",
|
|
@@ -3442,14 +3463,14 @@ function Quote($$renderer, $$props) {
|
|
|
3442
3463
|
}
|
|
3443
3464
|
]
|
|
3444
3465
|
];
|
|
3445
|
-
Icon($$renderer, $
|
|
3466
|
+
Icon($$renderer, $59.spread_props([
|
|
3446
3467
|
{ name: "quote" },
|
|
3447
3468
|
$$sanitized_props,
|
|
3448
3469
|
{
|
|
3449
3470
|
iconNode,
|
|
3450
3471
|
children: ($$renderer2) => {
|
|
3451
3472
|
$$renderer2.push(`<!--[-->`);
|
|
3452
|
-
$
|
|
3473
|
+
$59.slot($$renderer2, $$props, "default", {}, null);
|
|
3453
3474
|
$$renderer2.push(`<!--]-->`);
|
|
3454
3475
|
},
|
|
3455
3476
|
$$slots: { default: true }
|
|
@@ -3457,9 +3478,9 @@ function Quote($$renderer, $$props) {
|
|
|
3457
3478
|
]));
|
|
3458
3479
|
}
|
|
3459
3480
|
// ../../node_modules/lucide-svelte/dist/icons/redo-2.svelte
|
|
3460
|
-
import * as $
|
|
3481
|
+
import * as $60 from "svelte/internal/server";
|
|
3461
3482
|
function Redo_2($$renderer, $$props) {
|
|
3462
|
-
const $$sanitized_props = $
|
|
3483
|
+
const $$sanitized_props = $60.sanitize_props($$props);
|
|
3463
3484
|
const iconNode = [
|
|
3464
3485
|
["path", { d: "m15 14 5-5-5-5" }],
|
|
3465
3486
|
[
|
|
@@ -3469,14 +3490,14 @@ function Redo_2($$renderer, $$props) {
|
|
|
3469
3490
|
}
|
|
3470
3491
|
]
|
|
3471
3492
|
];
|
|
3472
|
-
Icon($$renderer, $
|
|
3493
|
+
Icon($$renderer, $60.spread_props([
|
|
3473
3494
|
{ name: "redo-2" },
|
|
3474
3495
|
$$sanitized_props,
|
|
3475
3496
|
{
|
|
3476
3497
|
iconNode,
|
|
3477
3498
|
children: ($$renderer2) => {
|
|
3478
3499
|
$$renderer2.push(`<!--[-->`);
|
|
3479
|
-
$
|
|
3500
|
+
$60.slot($$renderer2, $$props, "default", {}, null);
|
|
3480
3501
|
$$renderer2.push(`<!--]-->`);
|
|
3481
3502
|
},
|
|
3482
3503
|
$$slots: { default: true }
|
|
@@ -3484,22 +3505,22 @@ function Redo_2($$renderer, $$props) {
|
|
|
3484
3505
|
]));
|
|
3485
3506
|
}
|
|
3486
3507
|
// ../../node_modules/lucide-svelte/dist/icons/strikethrough.svelte
|
|
3487
|
-
import * as $
|
|
3508
|
+
import * as $61 from "svelte/internal/server";
|
|
3488
3509
|
function Strikethrough($$renderer, $$props) {
|
|
3489
|
-
const $$sanitized_props = $
|
|
3510
|
+
const $$sanitized_props = $61.sanitize_props($$props);
|
|
3490
3511
|
const iconNode = [
|
|
3491
3512
|
["path", { d: "M16 4H9a3 3 0 0 0-2.83 4" }],
|
|
3492
3513
|
["path", { d: "M14 12a4 4 0 0 1 0 8H6" }],
|
|
3493
3514
|
["line", { x1: "4", x2: "20", y1: "12", y2: "12" }]
|
|
3494
3515
|
];
|
|
3495
|
-
Icon($$renderer, $
|
|
3516
|
+
Icon($$renderer, $61.spread_props([
|
|
3496
3517
|
{ name: "strikethrough" },
|
|
3497
3518
|
$$sanitized_props,
|
|
3498
3519
|
{
|
|
3499
3520
|
iconNode,
|
|
3500
3521
|
children: ($$renderer2) => {
|
|
3501
3522
|
$$renderer2.push(`<!--[-->`);
|
|
3502
|
-
$
|
|
3523
|
+
$61.slot($$renderer2, $$props, "default", {}, null);
|
|
3503
3524
|
$$renderer2.push(`<!--]-->`);
|
|
3504
3525
|
},
|
|
3505
3526
|
$$slots: { default: true }
|
|
@@ -3507,9 +3528,9 @@ function Strikethrough($$renderer, $$props) {
|
|
|
3507
3528
|
]));
|
|
3508
3529
|
}
|
|
3509
3530
|
// ../../node_modules/lucide-svelte/dist/icons/undo-2.svelte
|
|
3510
|
-
import * as $
|
|
3531
|
+
import * as $62 from "svelte/internal/server";
|
|
3511
3532
|
function Undo_2($$renderer, $$props) {
|
|
3512
|
-
const $$sanitized_props = $
|
|
3533
|
+
const $$sanitized_props = $62.sanitize_props($$props);
|
|
3513
3534
|
const iconNode = [
|
|
3514
3535
|
["path", { d: "M9 14 4 9l5-5" }],
|
|
3515
3536
|
[
|
|
@@ -3519,14 +3540,14 @@ function Undo_2($$renderer, $$props) {
|
|
|
3519
3540
|
}
|
|
3520
3541
|
]
|
|
3521
3542
|
];
|
|
3522
|
-
Icon($$renderer, $
|
|
3543
|
+
Icon($$renderer, $62.spread_props([
|
|
3523
3544
|
{ name: "undo-2" },
|
|
3524
3545
|
$$sanitized_props,
|
|
3525
3546
|
{
|
|
3526
3547
|
iconNode,
|
|
3527
3548
|
children: ($$renderer2) => {
|
|
3528
3549
|
$$renderer2.push(`<!--[-->`);
|
|
3529
|
-
$
|
|
3550
|
+
$62.slot($$renderer2, $$props, "default", {}, null);
|
|
3530
3551
|
$$renderer2.push(`<!--]-->`);
|
|
3531
3552
|
},
|
|
3532
3553
|
$$slots: { default: true }
|
|
@@ -3548,12 +3569,12 @@ import {
|
|
|
3548
3569
|
} from "@lostgradient/cinder/editor/component-runtime";
|
|
3549
3570
|
|
|
3550
3571
|
// src/components/toolbar/toolbar.svelte
|
|
3551
|
-
import * as $
|
|
3572
|
+
import * as $64 from "svelte/internal/server";
|
|
3552
3573
|
import { untrack as untrack2 } from "svelte";
|
|
3553
3574
|
import { on } from "svelte/events";
|
|
3554
3575
|
|
|
3555
3576
|
// src/utilities/use-mutation-observer.svelte.ts
|
|
3556
|
-
import * as $
|
|
3577
|
+
import * as $63 from "svelte/internal/server";
|
|
3557
3578
|
function useMutationObserver(onMutate, options = {}) {
|
|
3558
3579
|
const {
|
|
3559
3580
|
childList,
|
|
@@ -3925,13 +3946,13 @@ function Toolbar($$renderer, $$props) {
|
|
|
3925
3946
|
restoreDepartedItems([]);
|
|
3926
3947
|
};
|
|
3927
3948
|
}
|
|
3928
|
-
$$renderer2.push(`<div${$
|
|
3949
|
+
$$renderer2.push(`<div${$64.attributes({
|
|
3929
3950
|
...rest,
|
|
3930
3951
|
role: "toolbar",
|
|
3931
3952
|
"aria-label": ariaLabel,
|
|
3932
3953
|
"aria-labelledby": ariaLabelledBy,
|
|
3933
3954
|
"aria-orientation": orientation === "vertical" ? "vertical" : undefined,
|
|
3934
|
-
class: $
|
|
3955
|
+
class: $64.clsx(classNames("cinder-toolbar", className)),
|
|
3935
3956
|
"data-cinder-orientation": orientation,
|
|
3936
3957
|
"data-cinder-name-source": resolveAccessibleNameSource()
|
|
3937
3958
|
})}>`);
|
|
@@ -3941,13 +3962,13 @@ function Toolbar($$renderer, $$props) {
|
|
|
3941
3962
|
}
|
|
3942
3963
|
|
|
3943
3964
|
// src/components/markdown-editor/editor-toolbar/toolbar-button.svelte
|
|
3944
|
-
import * as $
|
|
3965
|
+
import * as $67 from "svelte/internal/server";
|
|
3945
3966
|
|
|
3946
3967
|
// src/components/tooltip/tooltip.svelte
|
|
3947
|
-
import * as $
|
|
3968
|
+
import * as $66 from "svelte/internal/server";
|
|
3948
3969
|
|
|
3949
3970
|
// src/_internal/anchored-overlay.svelte.ts
|
|
3950
|
-
import * as $
|
|
3971
|
+
import * as $65 from "svelte/internal/server";
|
|
3951
3972
|
var DEFAULT_PLACEMENT = "bottom-start";
|
|
3952
3973
|
function createAnchoredOverlay(options) {
|
|
3953
3974
|
let positionReady = false;
|
|
@@ -3973,7 +3994,7 @@ function createAnchoredOverlay(options) {
|
|
|
3973
3994
|
// src/components/tooltip/tooltip.svelte
|
|
3974
3995
|
function Tooltip($$renderer, $$props) {
|
|
3975
3996
|
$$renderer.component(($$renderer2) => {
|
|
3976
|
-
const tooltipId = $
|
|
3997
|
+
const tooltipId = $66.props_id($$renderer2);
|
|
3977
3998
|
let {
|
|
3978
3999
|
text,
|
|
3979
4000
|
placement = "top",
|
|
@@ -4092,10 +4113,10 @@ function Tooltip($$renderer, $$props) {
|
|
|
4092
4113
|
offset: () => 8,
|
|
4093
4114
|
widthMode: () => "none"
|
|
4094
4115
|
});
|
|
4095
|
-
const isTooltipExposed = $
|
|
4096
|
-
$$renderer2.push(`<span${$
|
|
4116
|
+
const isTooltipExposed = $66.derived(() => visible && anchoredOverlay.positionReady);
|
|
4117
|
+
$$renderer2.push(`<span${$66.attr_class($66.clsx(classNames("cinder-tooltip-wrapper", className)))} role="presentation"${$66.attr("data-cinder-placement", visible ? anchoredOverlay.resolvedPlacement : placement)}>`);
|
|
4097
4118
|
children($$renderer2);
|
|
4098
|
-
$$renderer2.push(`<!----> <span${$
|
|
4119
|
+
$$renderer2.push(`<!----> <span${$66.attr("id", tooltipId)} role="tooltip" class="cinder-tooltip"${$66.attr("aria-hidden", !isTooltipExposed())}${$66.attr("data-cinder-placement", visible ? anchoredOverlay.resolvedPlacement : placement)}${$66.attr("data-cinder-position-ready", anchoredOverlay.positionReady)}${$66.attr_style(anchoredOverlay.positionStyle)}>${$66.escape(text)}</span></span>`);
|
|
4099
4120
|
});
|
|
4100
4121
|
}
|
|
4101
4122
|
|
|
@@ -4115,14 +4136,14 @@ function Toolbar_button($$renderer, $$props) {
|
|
|
4115
4136
|
$$events,
|
|
4116
4137
|
...rest
|
|
4117
4138
|
} = $$props;
|
|
4118
|
-
const tooltipLabel = $
|
|
4139
|
+
const tooltipLabel = $67.derived(() => shortcut ? `${label} (${shortcut})` : label);
|
|
4119
4140
|
Tooltip($$renderer2, {
|
|
4120
4141
|
text: tooltipLabel(),
|
|
4121
4142
|
placement: "bottom",
|
|
4122
4143
|
children: ($$renderer3) => {
|
|
4123
|
-
$$renderer3.push(`<button${$
|
|
4144
|
+
$$renderer3.push(`<button${$67.attributes({
|
|
4124
4145
|
type: "button",
|
|
4125
|
-
class: $
|
|
4146
|
+
class: $67.clsx(classNames("toolbar-button", className)),
|
|
4126
4147
|
"aria-label": label,
|
|
4127
4148
|
"aria-pressed": toggle ? pressed : undefined,
|
|
4128
4149
|
"data-active": toggle && pressed ? "" : undefined,
|
|
@@ -4145,12 +4166,12 @@ function Toolbar_button($$renderer, $$props) {
|
|
|
4145
4166
|
}
|
|
4146
4167
|
|
|
4147
4168
|
// src/components/markdown-editor/editor-toolbar/toolbar-separator.svelte
|
|
4148
|
-
import * as $
|
|
4169
|
+
import * as $68 from "svelte/internal/server";
|
|
4149
4170
|
function Toolbar_separator($$renderer, $$props) {
|
|
4150
4171
|
$$renderer.component(($$renderer2) => {
|
|
4151
4172
|
let { class: className, $$slots, $$events, ...rest } = $$props;
|
|
4152
|
-
$$renderer2.push(`<div${$
|
|
4153
|
-
class: $
|
|
4173
|
+
$$renderer2.push(`<div${$68.attributes({
|
|
4174
|
+
class: $68.clsx(classNames("toolbar-separator", className)),
|
|
4154
4175
|
role: "separator",
|
|
4155
4176
|
"aria-orientation": "vertical",
|
|
4156
4177
|
"aria-hidden": "true",
|
|
@@ -4160,10 +4181,10 @@ function Toolbar_separator($$renderer, $$props) {
|
|
|
4160
4181
|
}
|
|
4161
4182
|
|
|
4162
4183
|
// src/components/markdown-editor/editor-toolbar/toolbar-dropdown.svelte
|
|
4163
|
-
import * as $
|
|
4184
|
+
import * as $73 from "svelte/internal/server";
|
|
4164
4185
|
|
|
4165
4186
|
// src/components/dropdown/dropdown.svelte
|
|
4166
|
-
import * as $
|
|
4187
|
+
import * as $69 from "svelte/internal/server";
|
|
4167
4188
|
|
|
4168
4189
|
// src/components/dropdown/dropdown.context.ts
|
|
4169
4190
|
import { createContext as createContext2 } from "svelte";
|
|
@@ -4179,7 +4200,7 @@ var getDropdownSetOpen = getDropdownSetOpenStrict;
|
|
|
4179
4200
|
// src/components/dropdown/dropdown.svelte
|
|
4180
4201
|
function Dropdown($$renderer, $$props) {
|
|
4181
4202
|
$$renderer.component(($$renderer2) => {
|
|
4182
|
-
const generatedId = $
|
|
4203
|
+
const generatedId = $69.props_id($$renderer2);
|
|
4183
4204
|
let {
|
|
4184
4205
|
id = generatedId,
|
|
4185
4206
|
open = false,
|
|
@@ -4198,8 +4219,8 @@ function Dropdown($$renderer, $$props) {
|
|
|
4198
4219
|
const menuId = `${generatedId}-menu`;
|
|
4199
4220
|
let menuElement = undefined;
|
|
4200
4221
|
let triggerWrapper = undefined;
|
|
4201
|
-
const compoundMenuId = $
|
|
4202
|
-
const usesLegacySnippetApi = $
|
|
4222
|
+
const compoundMenuId = $69.derived(() => `${id}-menu`);
|
|
4223
|
+
const usesLegacySnippetApi = $69.derived(() => Boolean(trigger));
|
|
4203
4224
|
function closeCompoundMenu() {
|
|
4204
4225
|
compoundMenuElement?.hidePopover?.();
|
|
4205
4226
|
compoundOpen = false;
|
|
@@ -4254,7 +4275,7 @@ function Dropdown($$renderer, $$props) {
|
|
|
4254
4275
|
focusCompoundTrigger();
|
|
4255
4276
|
}
|
|
4256
4277
|
}
|
|
4257
|
-
const dismissOnOutsideClick = $
|
|
4278
|
+
const dismissOnOutsideClick = $69.derived(() => createClickOutside({
|
|
4258
4279
|
handler: () => {
|
|
4259
4280
|
open = false;
|
|
4260
4281
|
compoundOpen = false;
|
|
@@ -4267,15 +4288,15 @@ function Dropdown($$renderer, $$props) {
|
|
|
4267
4288
|
const toggleEvent = event;
|
|
4268
4289
|
open = toggleEvent.newState === "open";
|
|
4269
4290
|
}
|
|
4270
|
-
$$renderer2.push(`<div${$
|
|
4291
|
+
$$renderer2.push(`<div${$69.attributes({
|
|
4271
4292
|
id,
|
|
4272
|
-
class: $
|
|
4293
|
+
class: $69.clsx(classNames("cinder-dropdown", customClassName)),
|
|
4273
4294
|
"data-cinder-placement": placement,
|
|
4274
4295
|
...rest
|
|
4275
4296
|
})}>`);
|
|
4276
4297
|
if (usesLegacySnippetApi()) {
|
|
4277
4298
|
$$renderer2.push("<!--[0-->");
|
|
4278
|
-
$$renderer2.push(`<div class="cinder-dropdown__trigger" role="presentation"${$
|
|
4299
|
+
$$renderer2.push(`<div class="cinder-dropdown__trigger" role="presentation"${$69.attr_style(`anchor-name: --${menuId};`)}>`);
|
|
4279
4300
|
if (trigger) {
|
|
4280
4301
|
$$renderer2.push("<!--[0-->");
|
|
4281
4302
|
trigger($$renderer2);
|
|
@@ -4286,7 +4307,7 @@ function Dropdown($$renderer, $$props) {
|
|
|
4286
4307
|
$$renderer2.push(`<!--]--></div> `);
|
|
4287
4308
|
if (supportsPopover) {
|
|
4288
4309
|
$$renderer2.push("<!--[0-->");
|
|
4289
|
-
$$renderer2.push(`<div${$
|
|
4310
|
+
$$renderer2.push(`<div${$69.attr("id", menuId)} class="cinder-dropdown__menu" popover="auto" role="menu"${$69.attr("data-cinder-placement", placement)}${$69.attr_style(`position-anchor: --${menuId};`)}>`);
|
|
4290
4311
|
if (children) {
|
|
4291
4312
|
$$renderer2.push("<!--[0-->");
|
|
4292
4313
|
children($$renderer2);
|
|
@@ -4297,7 +4318,7 @@ function Dropdown($$renderer, $$props) {
|
|
|
4297
4318
|
$$renderer2.push(`<!--]--></div>`);
|
|
4298
4319
|
} else if (open) {
|
|
4299
4320
|
$$renderer2.push("<!--[1-->");
|
|
4300
|
-
$$renderer2.push(`<div${$
|
|
4321
|
+
$$renderer2.push(`<div${$69.attr("id", menuId)} class="cinder-dropdown__menu" role="menu"${$69.attr("data-cinder-placement", placement)}>`);
|
|
4301
4322
|
if (children) {
|
|
4302
4323
|
$$renderer2.push("<!--[0-->");
|
|
4303
4324
|
children($$renderer2);
|
|
@@ -4318,12 +4339,12 @@ function Dropdown($$renderer, $$props) {
|
|
|
4318
4339
|
$$renderer2.push("<!--[-1-->");
|
|
4319
4340
|
}
|
|
4320
4341
|
$$renderer2.push(`<!--]--></div>`);
|
|
4321
|
-
$
|
|
4342
|
+
$69.bind_props($$props, { open });
|
|
4322
4343
|
});
|
|
4323
4344
|
}
|
|
4324
4345
|
|
|
4325
4346
|
// src/components/dropdown-trigger/dropdown-trigger.svelte
|
|
4326
|
-
import * as $
|
|
4347
|
+
import * as $70 from "svelte/internal/server";
|
|
4327
4348
|
function Dropdown_trigger($$renderer, $$props) {
|
|
4328
4349
|
$$renderer.component(($$renderer2) => {
|
|
4329
4350
|
let {
|
|
@@ -4338,7 +4359,10 @@ function Dropdown_trigger($$renderer, $$props) {
|
|
|
4338
4359
|
const context = getDropdownContext();
|
|
4339
4360
|
const registerTrigger = getDropdownRegisterTrigger();
|
|
4340
4361
|
const setOpen = getDropdownSetOpen();
|
|
4341
|
-
|
|
4362
|
+
function attachTrigger(node) {
|
|
4363
|
+
registerTrigger(node);
|
|
4364
|
+
return () => registerTrigger(null);
|
|
4365
|
+
}
|
|
4342
4366
|
function handleClick(event) {
|
|
4343
4367
|
if (typeof onclick === "function") {
|
|
4344
4368
|
onclick(event);
|
|
@@ -4347,9 +4371,9 @@ function Dropdown_trigger($$renderer, $$props) {
|
|
|
4347
4371
|
setOpen(!context.isOpen);
|
|
4348
4372
|
}
|
|
4349
4373
|
}
|
|
4350
|
-
$$renderer2.push(`<button${$
|
|
4374
|
+
$$renderer2.push(`<button${$70.attributes({
|
|
4351
4375
|
type: "button",
|
|
4352
|
-
class: $
|
|
4376
|
+
class: $70.clsx(classNames("cinder-dropdown-trigger", customClassName)),
|
|
4353
4377
|
style: `anchor-name: --${context.menuId};`,
|
|
4354
4378
|
"aria-haspopup": "menu",
|
|
4355
4379
|
"aria-expanded": context.isOpen,
|
|
@@ -4376,24 +4400,208 @@ function Dropdown_trigger($$renderer, $$props) {
|
|
|
4376
4400
|
}
|
|
4377
4401
|
|
|
4378
4402
|
// src/components/dropdown-menu/dropdown-menu.svelte
|
|
4379
|
-
import * as $
|
|
4403
|
+
import * as $71 from "svelte/internal/server";
|
|
4380
4404
|
import { tick } from "svelte";
|
|
4405
|
+
|
|
4406
|
+
// src/_internal/locale-context.ts
|
|
4407
|
+
import { createContext as createContext3 } from "svelte";
|
|
4408
|
+
|
|
4409
|
+
// src/_internal/optional-context.ts
|
|
4410
|
+
function optionalContext(getStrict) {
|
|
4411
|
+
return () => {
|
|
4412
|
+
try {
|
|
4413
|
+
return getStrict();
|
|
4414
|
+
} catch {
|
|
4415
|
+
return;
|
|
4416
|
+
}
|
|
4417
|
+
};
|
|
4418
|
+
}
|
|
4419
|
+
|
|
4420
|
+
// src/_internal/locale-context.ts
|
|
4421
|
+
var [getLocaleContextStrict, setLocaleContextRaw] = createContext3();
|
|
4422
|
+
function setLocaleContext(context) {
|
|
4423
|
+
setLocaleContextRaw(context);
|
|
4424
|
+
}
|
|
4425
|
+
var getLocaleContext = optionalContext(getLocaleContextStrict);
|
|
4426
|
+
|
|
4427
|
+
// src/_internal/text-direction.ts
|
|
4428
|
+
function resolveTextDirection(element2, fallback2) {
|
|
4429
|
+
let currentElement = element2 ?? null;
|
|
4430
|
+
let documentDirection;
|
|
4431
|
+
let styledDirectionElement = null;
|
|
4432
|
+
while (currentElement) {
|
|
4433
|
+
const direction = currentElement.getAttribute("dir")?.toLowerCase();
|
|
4434
|
+
if (direction === "rtl" || direction === "ltr") {
|
|
4435
|
+
if (typeof getComputedStyle === "function" && styledDirectionElement) {
|
|
4436
|
+
const styledDirection2 = getComputedStyle(styledDirectionElement).direction;
|
|
4437
|
+
if (styledDirection2 === "rtl" || styledDirection2 === "ltr")
|
|
4438
|
+
return styledDirection2;
|
|
4439
|
+
}
|
|
4440
|
+
if (currentElement === currentElement.ownerDocument.documentElement) {
|
|
4441
|
+
documentDirection = direction;
|
|
4442
|
+
break;
|
|
4443
|
+
}
|
|
4444
|
+
return direction;
|
|
4445
|
+
}
|
|
4446
|
+
if (direction === "auto" && typeof getComputedStyle === "function") {
|
|
4447
|
+
const computedDirection2 = getComputedStyle(currentElement).direction;
|
|
4448
|
+
if (computedDirection2 === "rtl" || computedDirection2 === "ltr")
|
|
4449
|
+
return computedDirection2;
|
|
4450
|
+
}
|
|
4451
|
+
const styledDirection = currentElement.style.direction;
|
|
4452
|
+
if (!styledDirectionElement && (styledDirection === "rtl" || styledDirection === "ltr")) {
|
|
4453
|
+
styledDirectionElement = currentElement;
|
|
4454
|
+
}
|
|
4455
|
+
currentElement = currentElement.parentElement;
|
|
4456
|
+
}
|
|
4457
|
+
if (typeof getComputedStyle === "function" && styledDirectionElement) {
|
|
4458
|
+
const direction = getComputedStyle(styledDirectionElement).direction;
|
|
4459
|
+
if (direction === "rtl" || direction === "ltr")
|
|
4460
|
+
return direction;
|
|
4461
|
+
}
|
|
4462
|
+
const computedDirection = readComputedTextDirection(element2);
|
|
4463
|
+
const rootComputedDirection = readComputedTextDirection(element2?.ownerDocument.documentElement);
|
|
4464
|
+
if (computedDirection && computedDirection !== rootComputedDirection)
|
|
4465
|
+
return computedDirection;
|
|
4466
|
+
if (computedDirection && fallback2 && computedDirection !== fallback2 && hasDirectionStylingHint(element2)) {
|
|
4467
|
+
return computedDirection;
|
|
4468
|
+
}
|
|
4469
|
+
if (!fallback2 && computedDirection === "rtl")
|
|
4470
|
+
return computedDirection;
|
|
4471
|
+
if (fallback2)
|
|
4472
|
+
return fallback2;
|
|
4473
|
+
if (documentDirection)
|
|
4474
|
+
return documentDirection;
|
|
4475
|
+
return;
|
|
4476
|
+
}
|
|
4477
|
+
function readComputedTextDirection(element2) {
|
|
4478
|
+
if (!element2 || typeof getComputedStyle !== "function")
|
|
4479
|
+
return;
|
|
4480
|
+
const direction = getComputedStyle(element2).direction;
|
|
4481
|
+
return direction === "rtl" || direction === "ltr" ? direction : undefined;
|
|
4482
|
+
}
|
|
4483
|
+
function hasDirectionStylingHint(element2) {
|
|
4484
|
+
let currentElement = element2?.parentElement;
|
|
4485
|
+
while (currentElement && currentElement !== currentElement.ownerDocument.documentElement) {
|
|
4486
|
+
if (currentElement.style.direction)
|
|
4487
|
+
return true;
|
|
4488
|
+
if (matchesDirectionStyleRule(currentElement))
|
|
4489
|
+
return true;
|
|
4490
|
+
currentElement = currentElement.parentElement;
|
|
4491
|
+
}
|
|
4492
|
+
return false;
|
|
4493
|
+
}
|
|
4494
|
+
function matchesDirectionStyleRule(element2) {
|
|
4495
|
+
for (const sheet of Array.from(element2.ownerDocument.styleSheets)) {
|
|
4496
|
+
let rules;
|
|
4497
|
+
try {
|
|
4498
|
+
rules = sheet.cssRules;
|
|
4499
|
+
} catch {
|
|
4500
|
+
continue;
|
|
4501
|
+
}
|
|
4502
|
+
if (matchesDirectionStyleRuleList(element2, rules))
|
|
4503
|
+
return true;
|
|
4504
|
+
}
|
|
4505
|
+
return false;
|
|
4506
|
+
}
|
|
4507
|
+
function matchesDirectionStyleRuleList(element2, rules) {
|
|
4508
|
+
for (const rule of Array.from(rules)) {
|
|
4509
|
+
if (isCssStyleRule(rule)) {
|
|
4510
|
+
if (!rule.style.direction) {
|
|
4511
|
+
const nestedRules2 = readNestedCssRules(rule);
|
|
4512
|
+
if (nestedRules2 && matchesDirectionStyleRuleList(element2, nestedRules2))
|
|
4513
|
+
return true;
|
|
4514
|
+
continue;
|
|
4515
|
+
}
|
|
4516
|
+
try {
|
|
4517
|
+
if (element2.matches(rule.selectorText))
|
|
4518
|
+
return true;
|
|
4519
|
+
} catch {
|
|
4520
|
+
continue;
|
|
4521
|
+
}
|
|
4522
|
+
}
|
|
4523
|
+
const nestedRules = readNestedCssRules(rule);
|
|
4524
|
+
if (nestedRules && isConditionalRuleActive(rule) && matchesDirectionStyleRuleList(element2, nestedRules)) {
|
|
4525
|
+
return true;
|
|
4526
|
+
}
|
|
4527
|
+
}
|
|
4528
|
+
return false;
|
|
4529
|
+
}
|
|
4530
|
+
function readNestedCssRules(rule) {
|
|
4531
|
+
if (!("cssRules" in rule))
|
|
4532
|
+
return;
|
|
4533
|
+
try {
|
|
4534
|
+
const nestedRules = Reflect.get(rule, "cssRules");
|
|
4535
|
+
return isCssRuleCollection(nestedRules) ? nestedRules : undefined;
|
|
4536
|
+
} catch {
|
|
4537
|
+
return;
|
|
4538
|
+
}
|
|
4539
|
+
}
|
|
4540
|
+
function isCssRuleCollection(value) {
|
|
4541
|
+
if (typeof CSSRuleList !== "undefined" && value instanceof CSSRuleList)
|
|
4542
|
+
return true;
|
|
4543
|
+
return Array.isArray(value) && value.every(isCssRule);
|
|
4544
|
+
}
|
|
4545
|
+
function isCssRule(value) {
|
|
4546
|
+
return typeof value === "object" && value !== null && typeof Reflect.get(value, "cssText") === "string" && typeof Reflect.get(value, "type") === "number";
|
|
4547
|
+
}
|
|
4548
|
+
function isCssStyleRule(rule) {
|
|
4549
|
+
return typeof Reflect.get(rule, "selectorText") === "string" && typeof Reflect.get(rule, "style") === "object" && Reflect.get(rule, "style") !== null;
|
|
4550
|
+
}
|
|
4551
|
+
function isConditionalRuleActive(rule) {
|
|
4552
|
+
const conditionText = Reflect.get(rule, "conditionText");
|
|
4553
|
+
if (typeof conditionText !== "string" || !conditionText.trim())
|
|
4554
|
+
return true;
|
|
4555
|
+
if (isMediaRule(rule) && typeof matchMedia === "function") {
|
|
4556
|
+
return matchMedia(conditionText).matches;
|
|
4557
|
+
}
|
|
4558
|
+
if (isSupportsRule(rule) && typeof CSS !== "undefined" && typeof CSS.supports === "function") {
|
|
4559
|
+
return CSS.supports(conditionText);
|
|
4560
|
+
}
|
|
4561
|
+
return true;
|
|
4562
|
+
}
|
|
4563
|
+
function isMediaRule(rule) {
|
|
4564
|
+
return typeof Reflect.get(rule, "media") === "object" && Reflect.get(rule, "media") !== null;
|
|
4565
|
+
}
|
|
4566
|
+
function isSupportsRule(rule) {
|
|
4567
|
+
return rule.constructor.name === "CSSSupportsRule" || Reflect.get(rule, "type") === 12;
|
|
4568
|
+
}
|
|
4569
|
+
|
|
4570
|
+
// src/components/dropdown-menu/dropdown-menu.svelte
|
|
4381
4571
|
function Dropdown_menu($$renderer, $$props) {
|
|
4382
4572
|
$$renderer.component(($$renderer2) => {
|
|
4383
|
-
let {
|
|
4573
|
+
let {
|
|
4574
|
+
class: customClassName,
|
|
4575
|
+
children,
|
|
4576
|
+
dir: direction,
|
|
4577
|
+
$$slots,
|
|
4578
|
+
$$events,
|
|
4579
|
+
...rest
|
|
4580
|
+
} = $$props;
|
|
4384
4581
|
const context = getDropdownContext();
|
|
4385
4582
|
const registerMenu = getDropdownRegister();
|
|
4386
4583
|
const setOpen = getDropdownSetOpen();
|
|
4584
|
+
const localeContext = getLocaleContext();
|
|
4585
|
+
let directionRevision = 0;
|
|
4586
|
+
const resolvedDirection = $71.derived(() => {
|
|
4587
|
+
if (direction === "auto") {
|
|
4588
|
+
return resolveTextDirection(context.anchorElement, localeContext?.direction) ?? direction;
|
|
4589
|
+
}
|
|
4590
|
+
return direction ?? resolveTextDirection(context.anchorElement, localeContext?.direction);
|
|
4591
|
+
});
|
|
4592
|
+
const fallbackAnchorElement = $71.derived(() => context.fallbackAnchorElement === undefined ? context.anchorElement : context.fallbackAnchorElement);
|
|
4387
4593
|
let menuElement = null;
|
|
4388
4594
|
let focusedFallbackOpen = false;
|
|
4389
4595
|
const anchoredFallback = createAnchoredOverlay({
|
|
4390
|
-
open: () => context.isOpen && !context.supportsPopover && Boolean(
|
|
4391
|
-
anchor: () =>
|
|
4596
|
+
open: () => context.isOpen && !context.supportsPopover && Boolean(fallbackAnchorElement()),
|
|
4597
|
+
anchor: () => fallbackAnchorElement(),
|
|
4392
4598
|
panel: () => menuElement,
|
|
4393
4599
|
placement: () => context.fallbackPlacement ?? "bottom-end",
|
|
4394
4600
|
offset: () => 4,
|
|
4395
4601
|
widthMode: () => context.widthMode ?? "menu"
|
|
4396
4602
|
});
|
|
4603
|
+
const fallbackPositionStyle = $71.derived(() => context.fallbackPositionStyle ?? (fallbackAnchorElement() ? anchoredFallback.positionStyle : undefined));
|
|
4604
|
+
const fallbackPositionReady = $71.derived(() => context.fallbackPositionReady ?? (fallbackAnchorElement() ? anchoredFallback.positionReady : undefined));
|
|
4397
4605
|
const fallbackPortalAttachment = createPortalAttachment({
|
|
4398
4606
|
target: () => typeof document === "undefined" ? null : document.body,
|
|
4399
4607
|
source: () => context.anchorElement,
|
|
@@ -4403,7 +4611,7 @@ function Dropdown_menu($$renderer, $$props) {
|
|
|
4403
4611
|
function getOwnedMenuItems() {
|
|
4404
4612
|
if (!menuElement)
|
|
4405
4613
|
return [];
|
|
4406
|
-
return Array.from(menuElement.querySelectorAll('[role="menuitem"]:not([data-disabled])')).filter((item) => item.closest('[role="menu"]') === menuElement);
|
|
4614
|
+
return Array.from(menuElement.querySelectorAll('[role="menuitem"]:not([data-disabled]), [role="menuitemradio"]:not([data-disabled])')).filter((item) => item.closest('[role="menu"]') === menuElement);
|
|
4407
4615
|
}
|
|
4408
4616
|
function focusMenuItem(index) {
|
|
4409
4617
|
const items = getOwnedMenuItems();
|
|
@@ -4459,16 +4667,18 @@ function Dropdown_menu($$renderer, $$props) {
|
|
|
4459
4667
|
}
|
|
4460
4668
|
if (context.supportsPopover || context.isOpen) {
|
|
4461
4669
|
$$renderer2.push("<!--[0-->");
|
|
4462
|
-
$$renderer2.push(`<div${$
|
|
4670
|
+
$$renderer2.push(`<div${$71.attributes({
|
|
4463
4671
|
id: context.menuId,
|
|
4464
4672
|
popover: context.supportsPopover ? "auto" : undefined,
|
|
4465
|
-
class: $
|
|
4466
|
-
style: context.supportsPopover ? `position-anchor: --${context.menuId};` :
|
|
4673
|
+
class: $71.clsx(classNames("cinder-_floating-surface", "cinder-dropdown-menu", customClassName)),
|
|
4674
|
+
style: context.supportsPopover ? `position-anchor: --${context.menuId};` : fallbackPositionStyle(),
|
|
4467
4675
|
role: "menu",
|
|
4468
4676
|
"aria-orientation": "vertical",
|
|
4469
|
-
"data-cinder-position-ready": !context.supportsPopover &&
|
|
4677
|
+
"data-cinder-position-ready": !context.supportsPopover && fallbackPositionReady() !== undefined ? fallbackPositionReady() : undefined,
|
|
4470
4678
|
tabindex: -1,
|
|
4471
|
-
...rest
|
|
4679
|
+
...rest,
|
|
4680
|
+
dir: resolvedDirection(),
|
|
4681
|
+
"data-cinder-explicit-direction": resolvedDirection() ? "true" : undefined
|
|
4472
4682
|
})}>`);
|
|
4473
4683
|
if (children) {
|
|
4474
4684
|
$$renderer2.push("<!--[0-->");
|
|
@@ -4486,11 +4696,13 @@ function Dropdown_menu($$renderer, $$props) {
|
|
|
4486
4696
|
}
|
|
4487
4697
|
|
|
4488
4698
|
// src/components/dropdown-item/dropdown-item.svelte
|
|
4489
|
-
import * as $
|
|
4699
|
+
import * as $72 from "svelte/internal/server";
|
|
4490
4700
|
function Dropdown_item($$renderer, $$props) {
|
|
4491
4701
|
$$renderer.component(($$renderer2) => {
|
|
4492
4702
|
let {
|
|
4493
4703
|
variant = "default",
|
|
4704
|
+
itemRole = "menuitem",
|
|
4705
|
+
checked = false,
|
|
4494
4706
|
inset = false,
|
|
4495
4707
|
disabled,
|
|
4496
4708
|
closeOnSelect = true,
|
|
@@ -4504,8 +4716,8 @@ function Dropdown_item($$renderer, $$props) {
|
|
|
4504
4716
|
...rest
|
|
4505
4717
|
} = $$props;
|
|
4506
4718
|
const context = getDropdownContext();
|
|
4507
|
-
const isLink = $
|
|
4508
|
-
const sharedClass = $
|
|
4719
|
+
const isLink = $72.derived(() => href !== undefined);
|
|
4720
|
+
const sharedClass = $72.derived(() => classNames("cinder-_option-row", "cinder-dropdown-item", inset && "cinder-dropdown-item--inset", customClassName));
|
|
4509
4721
|
function handleClick(event) {
|
|
4510
4722
|
if (disabled) {
|
|
4511
4723
|
event.preventDefault();
|
|
@@ -4535,16 +4747,18 @@ function Dropdown_item($$renderer, $$props) {
|
|
|
4535
4747
|
return;
|
|
4536
4748
|
event.currentTarget.click();
|
|
4537
4749
|
}
|
|
4538
|
-
const anchorAttributes = rest;
|
|
4539
|
-
const buttonAttributes = rest;
|
|
4540
|
-
const buttonType = $
|
|
4750
|
+
const anchorAttributes = $72.derived(() => rest);
|
|
4751
|
+
const buttonAttributes = $72.derived(() => rest);
|
|
4752
|
+
const buttonType = $72.derived(() => rest.type ?? "button");
|
|
4753
|
+
const ariaChecked = $72.derived(() => itemRole === "menuitemradio" ? checked : undefined);
|
|
4541
4754
|
if (isLink()) {
|
|
4542
4755
|
$$renderer2.push("<!--[0-->");
|
|
4543
|
-
$$renderer2.push(`<a${$
|
|
4544
|
-
...anchorAttributes,
|
|
4756
|
+
$$renderer2.push(`<a${$72.attributes({
|
|
4757
|
+
...anchorAttributes(),
|
|
4545
4758
|
href,
|
|
4546
|
-
role:
|
|
4547
|
-
|
|
4759
|
+
role: itemRole,
|
|
4760
|
+
"aria-checked": ariaChecked(),
|
|
4761
|
+
class: $72.clsx(sharedClass()),
|
|
4548
4762
|
"data-cinder-variant": variant,
|
|
4549
4763
|
tabindex: -1,
|
|
4550
4764
|
"data-disabled": disabled ? "" : undefined,
|
|
@@ -4560,11 +4774,12 @@ function Dropdown_item($$renderer, $$props) {
|
|
|
4560
4774
|
$$renderer2.push(`<!--]--></a>`);
|
|
4561
4775
|
} else {
|
|
4562
4776
|
$$renderer2.push("<!--[-1-->");
|
|
4563
|
-
$$renderer2.push(`<button${$
|
|
4564
|
-
...buttonAttributes,
|
|
4777
|
+
$$renderer2.push(`<button${$72.attributes({
|
|
4778
|
+
...buttonAttributes(),
|
|
4565
4779
|
type: buttonType(),
|
|
4566
|
-
role:
|
|
4567
|
-
|
|
4780
|
+
role: itemRole,
|
|
4781
|
+
"aria-checked": ariaChecked(),
|
|
4782
|
+
class: $72.clsx(sharedClass()),
|
|
4568
4783
|
"data-cinder-variant": variant,
|
|
4569
4784
|
tabindex: -1,
|
|
4570
4785
|
"data-disabled": disabled ? "" : undefined,
|
|
@@ -4594,7 +4809,7 @@ function Toolbar_dropdown($$renderer, $$props) {
|
|
|
4594
4809
|
onchange,
|
|
4595
4810
|
class: className
|
|
4596
4811
|
} = $$props;
|
|
4597
|
-
const currentOption = $
|
|
4812
|
+
const currentOption = $73.derived(() => options.find((opt) => opt.type === value) ?? options[0]);
|
|
4598
4813
|
function handleSelect(type) {
|
|
4599
4814
|
onchange?.(type);
|
|
4600
4815
|
}
|
|
@@ -4619,7 +4834,7 @@ function Toolbar_dropdown($$renderer, $$props) {
|
|
|
4619
4834
|
} else {
|
|
4620
4835
|
$$renderer4.push("<!--[-1-->");
|
|
4621
4836
|
}
|
|
4622
|
-
$$renderer4.push(`<!--]--> <span class="toolbar-dropdown-label svelte-1v28aut">${$
|
|
4837
|
+
$$renderer4.push(`<!--]--> <span class="toolbar-dropdown-label svelte-1v28aut">${$73.escape(currentOption()?.label ?? "Paragraph")}</span>`);
|
|
4623
4838
|
},
|
|
4624
4839
|
$$slots: { default: true }
|
|
4625
4840
|
});
|
|
@@ -4627,13 +4842,15 @@ function Toolbar_dropdown($$renderer, $$props) {
|
|
|
4627
4842
|
Dropdown_menu($$renderer3, {
|
|
4628
4843
|
children: ($$renderer4) => {
|
|
4629
4844
|
$$renderer4.push(`<!--[-->`);
|
|
4630
|
-
const each_array = $
|
|
4845
|
+
const each_array = $73.ensure_array_like(options);
|
|
4631
4846
|
for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
|
|
4632
4847
|
let option = each_array[$$index];
|
|
4633
4848
|
const isActive = option.type === value;
|
|
4634
4849
|
Dropdown_item($$renderer4, {
|
|
4635
4850
|
onclick: () => handleSelect(option.type),
|
|
4636
4851
|
"data-active": isActive ? "" : undefined,
|
|
4852
|
+
itemRole: "menuitemradio",
|
|
4853
|
+
checked: isActive,
|
|
4637
4854
|
children: ($$renderer5) => {
|
|
4638
4855
|
if (option.icon) {
|
|
4639
4856
|
$$renderer5.push("<!--[-->");
|
|
@@ -4643,7 +4860,7 @@ function Toolbar_dropdown($$renderer, $$props) {
|
|
|
4643
4860
|
$$renderer5.push("<!--[!-->");
|
|
4644
4861
|
$$renderer5.push("<!--]-->");
|
|
4645
4862
|
}
|
|
4646
|
-
$$renderer5.push(` <span class="dropdown-item-label svelte-1v28aut">${$
|
|
4863
|
+
$$renderer5.push(` <span class="dropdown-item-label svelte-1v28aut">${$73.escape(option.label)}</span> `);
|
|
4647
4864
|
if (isActive) {
|
|
4648
4865
|
$$renderer5.push("<!--[0-->");
|
|
4649
4866
|
Check($$renderer5, { class: "icon-sm dropdown-item-check" });
|
|
@@ -4678,6 +4895,7 @@ function Editor_toolbar($$renderer, $$props) {
|
|
|
4678
4895
|
canUndo = false,
|
|
4679
4896
|
canRedo = false,
|
|
4680
4897
|
disabled = false,
|
|
4898
|
+
linkPopoverOpen = false,
|
|
4681
4899
|
onLinkClick,
|
|
4682
4900
|
onUndo,
|
|
4683
4901
|
onRedo,
|
|
@@ -4695,7 +4913,7 @@ function Editor_toolbar($$renderer, $$props) {
|
|
|
4695
4913
|
{ type: "heading3", label: "Heading 3", icon: Heading_3 },
|
|
4696
4914
|
{ type: "blockquote", label: "Quote", icon: Quote }
|
|
4697
4915
|
];
|
|
4698
|
-
const currentBlockType = $
|
|
4916
|
+
const currentBlockType = $74.derived(() => {
|
|
4699
4917
|
if (activeBlockType.type === "heading") {
|
|
4700
4918
|
switch (activeBlockType.headingLevel) {
|
|
4701
4919
|
case 1:
|
|
@@ -4767,7 +4985,7 @@ function Editor_toolbar($$renderer, $$props) {
|
|
|
4767
4985
|
break;
|
|
4768
4986
|
}
|
|
4769
4987
|
}
|
|
4770
|
-
Toolbar($$renderer2, $
|
|
4988
|
+
Toolbar($$renderer2, $74.spread_props([
|
|
4771
4989
|
{
|
|
4772
4990
|
id,
|
|
4773
4991
|
"aria-label": "Formatting toolbar",
|
|
@@ -4859,8 +5077,8 @@ function Editor_toolbar($$renderer, $$props) {
|
|
|
4859
5077
|
icon: Link,
|
|
4860
5078
|
label: "Insert Link",
|
|
4861
5079
|
shortcut: getShortcutDisplay("Mod-k"),
|
|
4862
|
-
|
|
4863
|
-
|
|
5080
|
+
"aria-haspopup": "dialog",
|
|
5081
|
+
"aria-expanded": linkPopoverOpen,
|
|
4864
5082
|
disabled,
|
|
4865
5083
|
onclick: handleLink,
|
|
4866
5084
|
"data-testid": "toolbar-link"
|
|
@@ -4919,10 +5137,11 @@ function Editor_toolbar($$renderer, $$props) {
|
|
|
4919
5137
|
});
|
|
4920
5138
|
}
|
|
4921
5139
|
// src/components/markdown-editor/editor-toolbar/link-popover.svelte
|
|
4922
|
-
import * as $
|
|
5140
|
+
import * as $77 from "svelte/internal/server";
|
|
5141
|
+
import { tick as tick2 } from "svelte";
|
|
4923
5142
|
|
|
4924
5143
|
// src/components/input/input.svelte
|
|
4925
|
-
import * as $
|
|
5144
|
+
import * as $75 from "svelte/internal/server";
|
|
4926
5145
|
|
|
4927
5146
|
// src/_internal/field-control.ts
|
|
4928
5147
|
function describeId(fieldId, hasDescription) {
|
|
@@ -4963,26 +5182,20 @@ function resolveFieldControl(input) {
|
|
|
4963
5182
|
}
|
|
4964
5183
|
|
|
4965
5184
|
// src/_internal/form-field-context.ts
|
|
4966
|
-
import { createContext as
|
|
4967
|
-
|
|
4968
|
-
// src/_internal/optional-context.ts
|
|
4969
|
-
function optionalContext(getStrict) {
|
|
4970
|
-
return () => {
|
|
4971
|
-
try {
|
|
4972
|
-
return getStrict();
|
|
4973
|
-
} catch {
|
|
4974
|
-
return;
|
|
4975
|
-
}
|
|
4976
|
-
};
|
|
4977
|
-
}
|
|
4978
|
-
|
|
4979
|
-
// src/_internal/form-field-context.ts
|
|
4980
|
-
var [getFormFieldContextStrict, setFormFieldContextRaw] = createContext3();
|
|
5185
|
+
import { createContext as createContext4 } from "svelte";
|
|
5186
|
+
var [getFormFieldContextStrict, setFormFieldContextRaw] = createContext4();
|
|
4981
5187
|
function setFormFieldContext(context) {
|
|
4982
5188
|
setFormFieldContextRaw(context);
|
|
4983
5189
|
}
|
|
4984
5190
|
var getFormFieldContext = optionalContext(getFormFieldContextStrict);
|
|
4985
5191
|
|
|
5192
|
+
// src/utilities/value-change.ts
|
|
5193
|
+
function commitValue(proposed, onValueChange, setValue) {
|
|
5194
|
+
const committed = onValueChange?.(proposed) ?? proposed;
|
|
5195
|
+
setValue(committed);
|
|
5196
|
+
return committed;
|
|
5197
|
+
}
|
|
5198
|
+
|
|
4986
5199
|
// src/components/input/input.svelte
|
|
4987
5200
|
function calendarIcon($$renderer) {
|
|
4988
5201
|
$$renderer.push(`<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>`);
|
|
@@ -4992,6 +5205,7 @@ function Input($$renderer, $$props) {
|
|
|
4992
5205
|
let {
|
|
4993
5206
|
id,
|
|
4994
5207
|
value = "",
|
|
5208
|
+
onValueChange,
|
|
4995
5209
|
label,
|
|
4996
5210
|
description,
|
|
4997
5211
|
error,
|
|
@@ -5004,54 +5218,90 @@ function Input($$renderer, $$props) {
|
|
|
5004
5218
|
leadingInteractive = false,
|
|
5005
5219
|
trailingInteractive = false,
|
|
5006
5220
|
"aria-describedby": consumerDescribedBy,
|
|
5221
|
+
"aria-invalid": consumerInvalid,
|
|
5222
|
+
oninput: consumerOninput,
|
|
5007
5223
|
$$slots,
|
|
5008
5224
|
$$events,
|
|
5009
5225
|
...rest
|
|
5010
5226
|
} = $$props;
|
|
5011
5227
|
const context = getFormFieldContext();
|
|
5012
|
-
const
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5016
|
-
|
|
5017
|
-
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
const
|
|
5025
|
-
const
|
|
5026
|
-
const
|
|
5228
|
+
const field = $75.derived(() => resolveFieldControl({
|
|
5229
|
+
id,
|
|
5230
|
+
generatedId: id,
|
|
5231
|
+
context,
|
|
5232
|
+
hasDescription: !!description,
|
|
5233
|
+
hasError: !!error,
|
|
5234
|
+
localIdNamespace: "input",
|
|
5235
|
+
consumerDescribedBy,
|
|
5236
|
+
consumerInvalid,
|
|
5237
|
+
required,
|
|
5238
|
+
disabled
|
|
5239
|
+
}));
|
|
5240
|
+
const ownDescriptionId = $75.derived(() => field().ownDescriptionId);
|
|
5241
|
+
const ownErrorId = $75.derived(() => field().ownErrorId);
|
|
5242
|
+
const describedBy = $75.derived(() => field().describedBy);
|
|
5243
|
+
const resolvedAriaInvalid = $75.derived(() => field().ariaInvalid);
|
|
5244
|
+
const resolvedRequired = $75.derived(() => field().required);
|
|
5245
|
+
const resolvedDisabled = $75.derived(() => field().disabled);
|
|
5246
|
+
const isNativeDateInput = $75.derived(() => type === "date");
|
|
5247
|
+
const rendersNativeDateIcon = $75.derived(() => isNativeDateInput() && !trailing);
|
|
5248
|
+
const hasTrailing = $75.derived(() => !!trailing || isNativeDateInput());
|
|
5249
|
+
const hasGroupWrapper = $75.derived(() => !!leading || hasTrailing());
|
|
5250
|
+
const isInvalid = $75.derived(() => resolvedAriaInvalid() === "true");
|
|
5251
|
+
let inputNode = undefined;
|
|
5252
|
+
let resetSyncTimeout;
|
|
5253
|
+
function syncValueAfterFormReset() {
|
|
5254
|
+
if (resetSyncTimeout !== undefined)
|
|
5255
|
+
clearTimeout(resetSyncTimeout);
|
|
5256
|
+
resetSyncTimeout = setTimeout(() => {
|
|
5257
|
+
resetSyncTimeout = undefined;
|
|
5258
|
+
if (inputNode)
|
|
5259
|
+
value = inputNode.value;
|
|
5260
|
+
}, 0);
|
|
5261
|
+
}
|
|
5262
|
+
function handleInput(event) {
|
|
5263
|
+
const target = event.currentTarget;
|
|
5264
|
+
const committed = commitValue(target.value, onValueChange, (next) => {
|
|
5265
|
+
value = next;
|
|
5266
|
+
});
|
|
5267
|
+
target.value = committed;
|
|
5268
|
+
consumerOninput?.(event);
|
|
5269
|
+
}
|
|
5027
5270
|
function inputElement($$renderer3) {
|
|
5028
|
-
$$renderer3.push(`<input${$
|
|
5271
|
+
$$renderer3.push(`<input${$75.attributes({
|
|
5029
5272
|
id,
|
|
5030
5273
|
type,
|
|
5274
|
+
...rest,
|
|
5031
5275
|
disabled: resolvedDisabled(),
|
|
5032
5276
|
required: resolvedRequired(),
|
|
5033
5277
|
value,
|
|
5034
|
-
class: $
|
|
5278
|
+
class: $75.clsx(classNames("cinder-input", className)),
|
|
5035
5279
|
"data-cinder-native-date": rendersNativeDateIcon() ? "" : undefined,
|
|
5036
5280
|
"aria-invalid": resolvedAriaInvalid(),
|
|
5037
|
-
"aria-describedby": describedBy()
|
|
5038
|
-
...rest
|
|
5281
|
+
"aria-describedby": describedBy()
|
|
5039
5282
|
}, undefined, undefined, undefined, 4)}/>`);
|
|
5040
5283
|
}
|
|
5041
5284
|
$$renderer2.push(`<div class="cinder-input-field">`);
|
|
5042
5285
|
if (label) {
|
|
5043
5286
|
$$renderer2.push("<!--[0-->");
|
|
5044
|
-
$$renderer2.push(`<label${$
|
|
5287
|
+
$$renderer2.push(`<label${$75.attr("for", id)} class="cinder-input-field__label"${$75.attr("data-disabled", resolvedDisabled() || undefined)}>${$75.escape(label)} `);
|
|
5288
|
+
if (resolvedRequired()) {
|
|
5289
|
+
$$renderer2.push("<!--[0-->");
|
|
5290
|
+
$$renderer2.push(`<span class="cinder-_required-marker" aria-hidden="true">*</span>`);
|
|
5291
|
+
} else {
|
|
5292
|
+
$$renderer2.push("<!--[-1-->");
|
|
5293
|
+
}
|
|
5294
|
+
$$renderer2.push(`<!--]--></label>`);
|
|
5045
5295
|
} else {
|
|
5046
5296
|
$$renderer2.push("<!--[-1-->");
|
|
5047
5297
|
}
|
|
5048
5298
|
$$renderer2.push(`<!--]--> `);
|
|
5049
5299
|
if (hasGroupWrapper()) {
|
|
5050
5300
|
$$renderer2.push("<!--[0-->");
|
|
5051
|
-
$$renderer2.push(`<div class="cinder-input-group"${$
|
|
5301
|
+
$$renderer2.push(`<div class="cinder-input-group"${$75.attr("data-leading", leading ? "" : undefined)}${$75.attr("data-trailing", hasTrailing() ? "" : undefined)}${$75.attr("data-native-date", rendersNativeDateIcon() ? "" : undefined)}${$75.attr("data-disabled", resolvedDisabled() ? "" : undefined)}${$75.attr("data-invalid", isInvalid() ? "" : undefined)}>`);
|
|
5052
5302
|
if (leading) {
|
|
5053
5303
|
$$renderer2.push("<!--[0-->");
|
|
5054
|
-
$$renderer2.push(`<span class="cinder-input-group__leading cinder-_truncate"${$
|
|
5304
|
+
$$renderer2.push(`<span class="cinder-input-group__leading cinder-_truncate"${$75.attr("aria-hidden", leadingInteractive ? undefined : "true")}>`);
|
|
5055
5305
|
leading($$renderer2);
|
|
5056
5306
|
$$renderer2.push(`<!----></span>`);
|
|
5057
5307
|
} else {
|
|
@@ -5062,7 +5312,7 @@ function Input($$renderer, $$props) {
|
|
|
5062
5312
|
$$renderer2.push(`<!----> `);
|
|
5063
5313
|
if (trailing) {
|
|
5064
5314
|
$$renderer2.push("<!--[0-->");
|
|
5065
|
-
$$renderer2.push(`<span class="cinder-input-group__trailing cinder-_truncate"${$
|
|
5315
|
+
$$renderer2.push(`<span class="cinder-input-group__trailing cinder-_truncate"${$75.attr("aria-hidden", trailingInteractive ? undefined : "true")}>`);
|
|
5066
5316
|
trailing($$renderer2);
|
|
5067
5317
|
$$renderer2.push(`<!----></span>`);
|
|
5068
5318
|
} else if (rendersNativeDateIcon()) {
|
|
@@ -5081,26 +5331,26 @@ function Input($$renderer, $$props) {
|
|
|
5081
5331
|
$$renderer2.push(`<!--]--> `);
|
|
5082
5332
|
if (description) {
|
|
5083
5333
|
$$renderer2.push("<!--[0-->");
|
|
5084
|
-
$$renderer2.push(`<p${$
|
|
5334
|
+
$$renderer2.push(`<p${$75.attr("id", ownDescriptionId())} class="cinder-input-field__description">${$75.escape(description)}</p>`);
|
|
5085
5335
|
} else {
|
|
5086
5336
|
$$renderer2.push("<!--[-1-->");
|
|
5087
5337
|
}
|
|
5088
5338
|
$$renderer2.push(`<!--]--> `);
|
|
5089
5339
|
if (error) {
|
|
5090
5340
|
$$renderer2.push("<!--[0-->");
|
|
5091
|
-
$$renderer2.push(`<p${$
|
|
5341
|
+
$$renderer2.push(`<p${$75.attr("id", ownErrorId())} class="cinder-input-field__error" aria-live="polite">${$75.escape(error)}</p>`);
|
|
5092
5342
|
} else {
|
|
5093
5343
|
$$renderer2.push("<!--[-1-->");
|
|
5094
5344
|
}
|
|
5095
5345
|
$$renderer2.push(`<!--]--></div>`);
|
|
5096
|
-
$
|
|
5346
|
+
$75.bind_props($$props, { value });
|
|
5097
5347
|
});
|
|
5098
5348
|
}
|
|
5099
5349
|
|
|
5100
5350
|
// ../../node_modules/lucide-svelte/dist/icons/unlink.svelte
|
|
5101
|
-
import * as $
|
|
5351
|
+
import * as $76 from "svelte/internal/server";
|
|
5102
5352
|
function Unlink($$renderer, $$props) {
|
|
5103
|
-
const $$sanitized_props = $
|
|
5353
|
+
const $$sanitized_props = $76.sanitize_props($$props);
|
|
5104
5354
|
const iconNode = [
|
|
5105
5355
|
[
|
|
5106
5356
|
"path",
|
|
@@ -5119,14 +5369,14 @@ function Unlink($$renderer, $$props) {
|
|
|
5119
5369
|
["line", { x1: "16", x2: "16", y1: "19", y2: "22" }],
|
|
5120
5370
|
["line", { x1: "19", x2: "22", y1: "16", y2: "16" }]
|
|
5121
5371
|
];
|
|
5122
|
-
Icon($$renderer, $
|
|
5372
|
+
Icon($$renderer, $76.spread_props([
|
|
5123
5373
|
{ name: "unlink" },
|
|
5124
5374
|
$$sanitized_props,
|
|
5125
5375
|
{
|
|
5126
5376
|
iconNode,
|
|
5127
5377
|
children: ($$renderer2) => {
|
|
5128
5378
|
$$renderer2.push(`<!--[-->`);
|
|
5129
|
-
$
|
|
5379
|
+
$76.slot($$renderer2, $$props, "default", {}, null);
|
|
5130
5380
|
$$renderer2.push(`<!--]-->`);
|
|
5131
5381
|
},
|
|
5132
5382
|
$$slots: { default: true }
|
|
@@ -5159,6 +5409,7 @@ function Link_popover($$renderer, $$props) {
|
|
|
5159
5409
|
});
|
|
5160
5410
|
let url = initialUrl;
|
|
5161
5411
|
let text = initialText;
|
|
5412
|
+
let initialFocusApplied = false;
|
|
5162
5413
|
const ALLOWED_PROTOCOLS = [
|
|
5163
5414
|
"http:",
|
|
5164
5415
|
"https:",
|
|
@@ -5169,7 +5420,7 @@ function Link_popover($$renderer, $$props) {
|
|
|
5169
5420
|
"sms:"
|
|
5170
5421
|
];
|
|
5171
5422
|
const DANGEROUS_SCHEMES = ["javascript:", "data:", "vbscript:"];
|
|
5172
|
-
const urlError = $
|
|
5423
|
+
const urlError = $77.derived(() => {
|
|
5173
5424
|
if (!url.trim())
|
|
5174
5425
|
return;
|
|
5175
5426
|
const trimmedUrl = url.trim().toLowerCase();
|
|
@@ -5198,7 +5449,7 @@ function Link_popover($$renderer, $$props) {
|
|
|
5198
5449
|
}
|
|
5199
5450
|
}
|
|
5200
5451
|
});
|
|
5201
|
-
const canSubmit = $
|
|
5452
|
+
const canSubmit = $77.derived(() => url.trim() && !urlError() && (hasSelection || text.trim()));
|
|
5202
5453
|
function handleKeyDown(event) {
|
|
5203
5454
|
if (event.key === "Escape" && !event.defaultPrevented) {
|
|
5204
5455
|
event.preventDefault();
|
|
@@ -5226,9 +5477,9 @@ function Link_popover($$renderer, $$props) {
|
|
|
5226
5477
|
let $$settled = true;
|
|
5227
5478
|
let $$inner_renderer;
|
|
5228
5479
|
function $$render_inner($$renderer3) {
|
|
5229
|
-
$$renderer3.push(`<div${$
|
|
5480
|
+
$$renderer3.push(`<div${$77.attr("id", id)} role="dialog" aria-modal="true"${$77.attr("aria-labelledby", `${id}-title`)} tabindex="-1"${$77.attr_class($77.clsx(classNames("link-popover", className)), "svelte-13b14j2")}${$77.attr_style(anchorElement ? anchoredOverlay.positionStyle : undefined)}${$77.attr("data-position-ready", anchorElement ? anchoredOverlay.positionReady : undefined)}${$77.attr("inert", anchorElement && !anchoredOverlay.positionReady ? true : undefined, true)}><header class="link-popover-header svelte-13b14j2"><h2${$77.attr("id", `${id}-title`)} class="link-popover-title svelte-13b14j2">`);
|
|
5230
5481
|
Link($$renderer3, { class: "icon-sm" });
|
|
5231
|
-
$$renderer3.push(`<!----> ${$
|
|
5482
|
+
$$renderer3.push(`<!----> ${$77.escape(mode === "insert" ? "Insert Link" : "Edit Link")}</h2> <button type="button" class="link-popover-close svelte-13b14j2" aria-label="Close">`);
|
|
5232
5483
|
X($$renderer3, { class: "icon-sm" });
|
|
5233
5484
|
$$renderer3.push(`<!----></button></header> <div class="link-popover-content svelte-13b14j2">`);
|
|
5234
5485
|
Input($$renderer3, {
|
|
@@ -5298,7 +5549,7 @@ function Link_popover($$renderer, $$props) {
|
|
|
5298
5549
|
onclick: handleSubmit,
|
|
5299
5550
|
disabled: !canSubmit(),
|
|
5300
5551
|
children: ($$renderer4) => {
|
|
5301
|
-
$$renderer4.push(`<!---->${$
|
|
5552
|
+
$$renderer4.push(`<!---->${$77.escape(mode === "insert" ? "Insert" : "Update")}`);
|
|
5302
5553
|
},
|
|
5303
5554
|
$$slots: { default: true }
|
|
5304
5555
|
});
|
|
@@ -5327,10 +5578,10 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5327
5578
|
showToolbar = true,
|
|
5328
5579
|
class: className,
|
|
5329
5580
|
onchange,
|
|
5330
|
-
|
|
5581
|
+
onready,
|
|
5331
5582
|
onmodechange,
|
|
5332
|
-
|
|
5333
|
-
|
|
5583
|
+
onselectionchange,
|
|
5584
|
+
oncommentshortcut,
|
|
5334
5585
|
plugins = [],
|
|
5335
5586
|
placeholderCompletion,
|
|
5336
5587
|
placeholderDecoration,
|
|
@@ -5344,7 +5595,7 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5344
5595
|
...rest
|
|
5345
5596
|
} = $$props;
|
|
5346
5597
|
let wrapperElement = null;
|
|
5347
|
-
const escapedPlaceholder = $
|
|
5598
|
+
const escapedPlaceholder = $78.derived(() => placeholder.replace(/'/g, "\\'"));
|
|
5348
5599
|
let editorState = null;
|
|
5349
5600
|
let isInitializing = true;
|
|
5350
5601
|
let pipelineUtilities = null;
|
|
@@ -5371,8 +5622,8 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5371
5622
|
}
|
|
5372
5623
|
let selectionVersion = 0;
|
|
5373
5624
|
let historyUtilities = null;
|
|
5374
|
-
const editorContext = $
|
|
5375
|
-
const activeMarks = $
|
|
5625
|
+
const editorContext = $78.derived(() => editorState?.editor?.ctx ?? null);
|
|
5626
|
+
const activeMarks = $78.derived(() => {
|
|
5376
5627
|
if (!editorContext()) {
|
|
5377
5628
|
return {
|
|
5378
5629
|
bold: false,
|
|
@@ -5384,26 +5635,26 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5384
5635
|
}
|
|
5385
5636
|
return getActiveMarks(editorContext());
|
|
5386
5637
|
});
|
|
5387
|
-
const activeBlockType = $
|
|
5638
|
+
const activeBlockType = $78.derived(() => {
|
|
5388
5639
|
if (!editorContext()) {
|
|
5389
5640
|
return { type: "paragraph" };
|
|
5390
5641
|
}
|
|
5391
5642
|
return getActiveBlockType(editorContext());
|
|
5392
5643
|
});
|
|
5393
|
-
const canUndo = $
|
|
5644
|
+
const canUndo = $78.derived(() => {
|
|
5394
5645
|
const view = editorState?.view;
|
|
5395
5646
|
if (!view || historyUtilities === null)
|
|
5396
5647
|
return false;
|
|
5397
5648
|
return historyUtilities.undoDepth(view.state) > 0;
|
|
5398
5649
|
});
|
|
5399
|
-
const canRedo = $
|
|
5650
|
+
const canRedo = $78.derived(() => {
|
|
5400
5651
|
const view = editorState?.view;
|
|
5401
5652
|
if (!view || historyUtilities === null)
|
|
5402
5653
|
return false;
|
|
5403
5654
|
return historyUtilities.redoDepth(view.state) > 0;
|
|
5404
5655
|
});
|
|
5405
|
-
const toolbarVisible = $
|
|
5406
|
-
const toolbarContext = $
|
|
5656
|
+
const toolbarVisible = $78.derived(() => showToolbar && !readonly && false_default && (mode === "wysiwyg" || showModeToggle));
|
|
5657
|
+
const toolbarContext = $78.derived(() => ({
|
|
5407
5658
|
editorContext: editorContext(),
|
|
5408
5659
|
activeMarks: activeMarks(),
|
|
5409
5660
|
activeBlockType: activeBlockType(),
|
|
@@ -5413,30 +5664,30 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5413
5664
|
}));
|
|
5414
5665
|
let linkPopoverOpen = false;
|
|
5415
5666
|
let linkPopoverAnchorElement = null;
|
|
5416
|
-
const linkPopoverMode = $
|
|
5667
|
+
const linkPopoverMode = $78.derived(() => {
|
|
5417
5668
|
if (!editorContext())
|
|
5418
5669
|
return "insert";
|
|
5419
5670
|
const existingUrl = getLinkAtCursor(editorContext());
|
|
5420
5671
|
return existingUrl ? "edit" : "insert";
|
|
5421
5672
|
});
|
|
5422
|
-
const linkPopoverInitialUrl = $
|
|
5673
|
+
const linkPopoverInitialUrl = $78.derived(() => {
|
|
5423
5674
|
if (!editorContext())
|
|
5424
5675
|
return "";
|
|
5425
5676
|
return getLinkAtCursor(editorContext()) ?? "";
|
|
5426
5677
|
});
|
|
5427
|
-
const linkPopoverHasSelection = $
|
|
5678
|
+
const linkPopoverHasSelection = $78.derived(() => {
|
|
5428
5679
|
if (!editorContext())
|
|
5429
5680
|
return false;
|
|
5430
5681
|
return !isSelectionCollapsed(editorContext());
|
|
5431
5682
|
});
|
|
5432
|
-
const linkPopoverInitialText = $
|
|
5683
|
+
const linkPopoverInitialText = $78.derived(() => {
|
|
5433
5684
|
if (!editorContext())
|
|
5434
5685
|
return "";
|
|
5435
5686
|
if (!isSelectionCollapsed(editorContext()))
|
|
5436
5687
|
return "";
|
|
5437
5688
|
return getLinkTextAtCursor(editorContext()) ?? "";
|
|
5438
5689
|
});
|
|
5439
|
-
const lastKnownLinkRange = $
|
|
5690
|
+
const lastKnownLinkRange = $78.derived(() => {
|
|
5440
5691
|
if (!editorContext())
|
|
5441
5692
|
return null;
|
|
5442
5693
|
const url = getLinkAtCursor(editorContext());
|
|
@@ -5492,7 +5743,7 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5492
5743
|
linkPopoverAnchorElement = null;
|
|
5493
5744
|
editorState?.focus();
|
|
5494
5745
|
}
|
|
5495
|
-
function handleLinkInsert(url, text) {
|
|
5746
|
+
function handleLinkInsert(url, text = undefined) {
|
|
5496
5747
|
if (!editorContext())
|
|
5497
5748
|
return;
|
|
5498
5749
|
if (text) {
|
|
@@ -5536,12 +5787,12 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5536
5787
|
getPlugins: () => plugins,
|
|
5537
5788
|
getPlaceholderCompletion: () => placeholderCompletion,
|
|
5538
5789
|
getPlaceholderDecoration: () => placeholderDecoration,
|
|
5539
|
-
|
|
5790
|
+
onready: (state) => {
|
|
5540
5791
|
editorState = state;
|
|
5541
5792
|
isInitializing = false;
|
|
5542
|
-
|
|
5793
|
+
onready?.();
|
|
5543
5794
|
},
|
|
5544
|
-
|
|
5795
|
+
onchange: (markdown) => {
|
|
5545
5796
|
isInternalUpdate = true;
|
|
5546
5797
|
value = markdown;
|
|
5547
5798
|
onchange?.(markdown);
|
|
@@ -5550,16 +5801,16 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5550
5801
|
isInternalUpdate = false;
|
|
5551
5802
|
});
|
|
5552
5803
|
},
|
|
5553
|
-
|
|
5804
|
+
onselectionchange: (selection) => {
|
|
5554
5805
|
selectionVersion++;
|
|
5555
|
-
|
|
5806
|
+
onselectionchange?.(selection);
|
|
5556
5807
|
},
|
|
5557
|
-
|
|
5808
|
+
onlinkshortcut: () => {
|
|
5558
5809
|
capturedLinkRange = lastKnownLinkRange();
|
|
5559
5810
|
linkPopoverAnchorElement = resolveLinkPopoverAnchor();
|
|
5560
5811
|
linkPopoverOpen = true;
|
|
5561
5812
|
},
|
|
5562
|
-
|
|
5813
|
+
oncommentshortcut: () => oncommentshortcut?.()
|
|
5563
5814
|
});
|
|
5564
5815
|
let previousMode = mode;
|
|
5565
5816
|
function focus() {
|
|
@@ -5594,15 +5845,15 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5594
5845
|
function getEditor() {
|
|
5595
5846
|
return editorState?.editor ?? null;
|
|
5596
5847
|
}
|
|
5597
|
-
|
|
5848
|
+
onDestroy(() => {
|
|
5598
5849
|
editorState?.clearPendingTimers();
|
|
5599
5850
|
editorState = null;
|
|
5600
5851
|
});
|
|
5601
5852
|
let $$settled = true;
|
|
5602
5853
|
let $$inner_renderer;
|
|
5603
5854
|
function $$render_inner($$renderer3) {
|
|
5604
|
-
$$renderer3.push(`<div${$
|
|
5605
|
-
class: $
|
|
5855
|
+
$$renderer3.push(`<div${$78.attributes({
|
|
5856
|
+
class: $78.clsx(classNames("markdown-editor-wrapper", className)),
|
|
5606
5857
|
"data-initializing": isInitializing || undefined,
|
|
5607
5858
|
"data-ready": !isInitializing ? true : undefined,
|
|
5608
5859
|
"data-mode": mode,
|
|
@@ -5636,6 +5887,7 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5636
5887
|
activeBlockType: activeBlockType(),
|
|
5637
5888
|
canUndo: canUndo(),
|
|
5638
5889
|
canRedo: canRedo(),
|
|
5890
|
+
linkPopoverOpen,
|
|
5639
5891
|
disabled: !editorContext(),
|
|
5640
5892
|
onLinkClick: handleLinkClick,
|
|
5641
5893
|
onUndo: handleUndo,
|
|
@@ -5702,13 +5954,13 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5702
5954
|
$$renderer3.push("<!--[0-->");
|
|
5703
5955
|
if (mode === "wysiwyg") {
|
|
5704
5956
|
$$renderer3.push("<!--[0-->");
|
|
5705
|
-
$$renderer3.push(`<div${$
|
|
5706
|
-
"--editor-placeholder": `'${$
|
|
5957
|
+
$$renderer3.push(`<div${$78.attr("id", id)} class="cinder-markdown-content prose markdown-editor surface svelte-1mxvqjb"${$78.attr("data-readonly", readonly || undefined)} role="application"${$78.attr("aria-label", label || "Markdown editor")} tabindex="0"${$78.attr_style("", {
|
|
5958
|
+
"--editor-placeholder": `'${$78.stringify(escapedPlaceholder())}'`
|
|
5707
5959
|
})}></div>`);
|
|
5708
5960
|
} else {
|
|
5709
5961
|
$$renderer3.push("<!--[-1-->");
|
|
5710
|
-
$$renderer3.push(`<textarea${$
|
|
5711
|
-
const $$body = $
|
|
5962
|
+
$$renderer3.push(`<textarea${$78.attr("id", id)} class="markdown-editor surface source-mode svelte-1mxvqjb"${$78.attr("placeholder", placeholder)}${$78.attr("readonly", readonly || undefined, true)}${$78.attr("aria-label", label)}${$78.attr("aria-describedby", ariaDescribedby)} aria-multiline="true">`);
|
|
5963
|
+
const $$body = $78.escape(value);
|
|
5712
5964
|
if ($$body) {
|
|
5713
5965
|
$$renderer3.push(`${$$body}`);
|
|
5714
5966
|
} else {}
|
|
@@ -5744,7 +5996,7 @@ function Markdown_editor($$renderer, $$props) {
|
|
|
5744
5996
|
$$render_inner($$inner_renderer);
|
|
5745
5997
|
} while (!$$settled);
|
|
5746
5998
|
$$renderer2.subsume($$inner_renderer);
|
|
5747
|
-
$
|
|
5999
|
+
$78.bind_props($$props, {
|
|
5748
6000
|
value,
|
|
5749
6001
|
mode,
|
|
5750
6002
|
focus,
|
|
@@ -5767,6 +6019,7 @@ function Chat_input($$renderer, $$props) {
|
|
|
5767
6019
|
id,
|
|
5768
6020
|
value = "",
|
|
5769
6021
|
placeholder = "Type a message...",
|
|
6022
|
+
composerLabel = "Message",
|
|
5770
6023
|
disabled = false,
|
|
5771
6024
|
sending = false,
|
|
5772
6025
|
error,
|
|
@@ -5800,7 +6053,7 @@ function Chat_input($$renderer, $$props) {
|
|
|
5800
6053
|
$$events,
|
|
5801
6054
|
...rest
|
|
5802
6055
|
} = $$props;
|
|
5803
|
-
const showStopButton = $
|
|
6056
|
+
const showStopButton = $79.derived(() => sending && onstop !== undefined);
|
|
5804
6057
|
let formElement = null;
|
|
5805
6058
|
let editorRef;
|
|
5806
6059
|
let fileInputRef = null;
|
|
@@ -5808,13 +6061,13 @@ function Chat_input($$renderer, $$props) {
|
|
|
5808
6061
|
let isDragOver = false;
|
|
5809
6062
|
let isComposing = false;
|
|
5810
6063
|
const announcer = useAnnouncer();
|
|
5811
|
-
const errorId2 = $
|
|
5812
|
-
const hintId = $
|
|
5813
|
-
const shortcutDescriptionId = $
|
|
5814
|
-
const isWhitespaceOnly = $
|
|
5815
|
-
const hasPendingAttachments = $
|
|
5816
|
-
const canSubmit = $
|
|
5817
|
-
const isFormActionMode = $
|
|
6064
|
+
const errorId2 = $79.derived(() => `${id}-error`);
|
|
6065
|
+
const hintId = $79.derived(() => `${id}-hint`);
|
|
6066
|
+
const shortcutDescriptionId = $79.derived(() => `${id}-shortcut-description`);
|
|
6067
|
+
const isWhitespaceOnly = $79.derived(() => value.trim().length === 0);
|
|
6068
|
+
const hasPendingAttachments = $79.derived(() => attachments.some((a) => a.status === "pending" || a.status === "uploading"));
|
|
6069
|
+
const canSubmit = $79.derived(() => !isWhitespaceOnly() && !disabled && !sending && !hasPendingAttachments());
|
|
6070
|
+
const isFormActionMode = $79.derived(() => !!action);
|
|
5818
6071
|
function isValidType(file) {
|
|
5819
6072
|
return acceptedTypes.some((type) => {
|
|
5820
6073
|
if (type.endsWith("/*")) {
|
|
@@ -5981,14 +6234,14 @@ function Chat_input($$renderer, $$props) {
|
|
|
5981
6234
|
return;
|
|
5982
6235
|
files.forEach(addAttachment);
|
|
5983
6236
|
}
|
|
5984
|
-
|
|
6237
|
+
onDestroy2(() => {
|
|
5985
6238
|
attachments.forEach((a) => URL.revokeObjectURL(a.previewUrl));
|
|
5986
6239
|
});
|
|
5987
6240
|
let $$settled = true;
|
|
5988
6241
|
let $$inner_renderer;
|
|
5989
6242
|
function $$render_inner($$renderer3) {
|
|
5990
|
-
$$renderer3.push(`<form${$
|
|
5991
|
-
class: $
|
|
6243
|
+
$$renderer3.push(`<form${$79.attributes({
|
|
6244
|
+
class: $79.clsx(classNames("chat-input", isDragOver && "chat-input-dragover", className)),
|
|
5992
6245
|
method: "POST",
|
|
5993
6246
|
action,
|
|
5994
6247
|
"aria-label": "Chat message composer",
|
|
@@ -5997,7 +6250,7 @@ function Chat_input($$renderer, $$props) {
|
|
|
5997
6250
|
}, "svelte-1tzweuh")}>`);
|
|
5998
6251
|
if (isFormActionMode()) {
|
|
5999
6252
|
$$renderer3.push("<!--[0-->");
|
|
6000
|
-
$$renderer3.push(`<input type="hidden"${$
|
|
6253
|
+
$$renderer3.push(`<input type="hidden"${$79.attr("name", name)}${$79.attr("value", value)}/>`);
|
|
6001
6254
|
} else {
|
|
6002
6255
|
$$renderer3.push("<!--[-1-->");
|
|
6003
6256
|
}
|
|
@@ -6005,12 +6258,12 @@ function Chat_input($$renderer, $$props) {
|
|
|
6005
6258
|
if (attachments.length > 0) {
|
|
6006
6259
|
$$renderer3.push("<!--[0-->");
|
|
6007
6260
|
$$renderer3.push(`<div class="chat-input-attachments svelte-1tzweuh" role="list" aria-label="Attached files"><!--[-->`);
|
|
6008
|
-
const each_array = $
|
|
6261
|
+
const each_array = $79.ensure_array_like(attachments);
|
|
6009
6262
|
for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
|
|
6010
6263
|
let attachment = each_array[$$index];
|
|
6011
6264
|
$$renderer3.push(`<div class="chat-input-attachment-wrapper svelte-1tzweuh" role="listitem">`);
|
|
6012
6265
|
Chat_attachment_preview($$renderer3, { attachment });
|
|
6013
|
-
$$renderer3.push(`<!----> <button type="button" class="chat-input-attachment-remove svelte-1tzweuh"${$
|
|
6266
|
+
$$renderer3.push(`<!----> <button type="button" class="chat-input-attachment-remove svelte-1tzweuh"${$79.attr("aria-label", `Remove ${attachment.file.name}`)}>`);
|
|
6014
6267
|
X($$renderer3, { class: "icon-xs" });
|
|
6015
6268
|
$$renderer3.push(`<!----></button></div>`);
|
|
6016
6269
|
}
|
|
@@ -6022,6 +6275,7 @@ function Chat_input($$renderer, $$props) {
|
|
|
6022
6275
|
Markdown_editor($$renderer3, {
|
|
6023
6276
|
id: `${id}-editor`,
|
|
6024
6277
|
placeholder,
|
|
6278
|
+
label: composerLabel,
|
|
6025
6279
|
readonly: disabled || sending,
|
|
6026
6280
|
showToolbar: false,
|
|
6027
6281
|
showModeToggle: false,
|
|
@@ -6038,7 +6292,7 @@ function Chat_input($$renderer, $$props) {
|
|
|
6038
6292
|
$$renderer3.push(`<!----></div> <div class="chat-input-footer svelte-1tzweuh"><div class="chat-input-footer-left svelte-1tzweuh">`);
|
|
6039
6293
|
if (allowAttachments) {
|
|
6040
6294
|
$$renderer3.push("<!--[0-->");
|
|
6041
|
-
$$renderer3.push(`<input${$
|
|
6295
|
+
$$renderer3.push(`<input${$79.attr("id", `${id}-file-picker`)} type="file"${$79.attr("accept", acceptedTypes.join(","))} multiple="" class="sr-only svelte-1tzweuh" aria-label="Attach files"${$79.attr("tabindex", -1)}/> `);
|
|
6042
6296
|
Button($$renderer3, {
|
|
6043
6297
|
type: "button",
|
|
6044
6298
|
variant: "ghost",
|
|
@@ -6055,7 +6309,22 @@ function Chat_input($$renderer, $$props) {
|
|
|
6055
6309
|
} else {
|
|
6056
6310
|
$$renderer3.push("<!--[-1-->");
|
|
6057
6311
|
}
|
|
6058
|
-
$$renderer3.push(`<!--]--> <span${$
|
|
6312
|
+
$$renderer3.push(`<!--]--> <span${$79.attr("id", shortcutDescriptionId())} class="sr-only svelte-1tzweuh">`);
|
|
6313
|
+
if (showStopButton()) {
|
|
6314
|
+
$$renderer3.push("<!--[0-->");
|
|
6315
|
+
$$renderer3.push(`Response is streaming. Use the stop button to stop generation.`);
|
|
6316
|
+
} else {
|
|
6317
|
+
$$renderer3.push("<!--[-1-->");
|
|
6318
|
+
$$renderer3.push(`Press Enter to send, Shift+Enter for newline`);
|
|
6319
|
+
}
|
|
6320
|
+
$$renderer3.push(`<!--]--></span> `);
|
|
6321
|
+
if (!showStopButton()) {
|
|
6322
|
+
$$renderer3.push("<!--[0-->");
|
|
6323
|
+
$$renderer3.push(`<span${$79.attr("id", hintId())} class="chat-input-hint svelte-1tzweuh" aria-hidden="true"><kbd class="svelte-1tzweuh">Enter</kbd> to send, <kbd class="svelte-1tzweuh">Shift</kbd>+<kbd class="svelte-1tzweuh">Enter</kbd> for newline</span>`);
|
|
6324
|
+
} else {
|
|
6325
|
+
$$renderer3.push("<!--[-1-->");
|
|
6326
|
+
}
|
|
6327
|
+
$$renderer3.push(`<!--]--></div> <div class="chat-input-footer-right svelte-1tzweuh">`);
|
|
6059
6328
|
if (actions) {
|
|
6060
6329
|
$$renderer3.push("<!--[0-->");
|
|
6061
6330
|
actions($$renderer3);
|
|
@@ -6066,12 +6335,12 @@ function Chat_input($$renderer, $$props) {
|
|
|
6066
6335
|
$$renderer3.push(`<!--]--> `);
|
|
6067
6336
|
if (showStopButton()) {
|
|
6068
6337
|
$$renderer3.push("<!--[0-->");
|
|
6069
|
-
$$renderer3.push(`<button type="button" class="chat-input-send svelte-1tzweuh" data-stop="" aria-label="Stop generating">`);
|
|
6338
|
+
$$renderer3.push(`<button type="button" class="chat-input-send svelte-1tzweuh" data-stop="" aria-label="Stop generating"${$79.attr("aria-describedby", shortcutDescriptionId())}>`);
|
|
6070
6339
|
Square($$renderer3, { class: "icon-sm" });
|
|
6071
6340
|
$$renderer3.push(`<!----></button>`);
|
|
6072
6341
|
} else {
|
|
6073
6342
|
$$renderer3.push("<!--[-1-->");
|
|
6074
|
-
$$renderer3.push(`<button type="submit" class="chat-input-send svelte-1tzweuh"${$
|
|
6343
|
+
$$renderer3.push(`<button type="submit" class="chat-input-send svelte-1tzweuh"${$79.attr("disabled", !canSubmit(), true)}${$79.attr("aria-label", sending ? "Sending message" : "Send message")}${$79.attr("aria-describedby", shortcutDescriptionId())}>`);
|
|
6075
6344
|
if (sending) {
|
|
6076
6345
|
$$renderer3.push("<!--[0-->");
|
|
6077
6346
|
$$renderer3.push(`<svg class="chat-input-spinner svelte-1tzweuh" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" aria-hidden="true"><circle class="spinner-track svelte-1tzweuh" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="spinner-head svelte-1tzweuh" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path></svg>`);
|
|
@@ -6084,11 +6353,11 @@ function Chat_input($$renderer, $$props) {
|
|
|
6084
6353
|
$$renderer3.push(`<!--]--></div></div> `);
|
|
6085
6354
|
if (error) {
|
|
6086
6355
|
$$renderer3.push("<!--[0-->");
|
|
6087
|
-
$$renderer3.push(`<p${$
|
|
6356
|
+
$$renderer3.push(`<p${$79.attr("id", errorId2())} class="chat-input-error svelte-1tzweuh" role="alert">${$79.escape(error)}</p>`);
|
|
6088
6357
|
} else {
|
|
6089
6358
|
$$renderer3.push("<!--[-1-->");
|
|
6090
6359
|
}
|
|
6091
|
-
$$renderer3.push(`<!--]--> <div aria-live="polite" aria-atomic="true" class="sr-only svelte-1tzweuh">${$
|
|
6360
|
+
$$renderer3.push(`<!--]--> <div aria-live="polite" aria-atomic="true" class="sr-only svelte-1tzweuh">${$79.escape(announcer.message)}</div></form>`);
|
|
6092
6361
|
}
|
|
6093
6362
|
do {
|
|
6094
6363
|
$$settled = true;
|
|
@@ -6096,7 +6365,7 @@ function Chat_input($$renderer, $$props) {
|
|
|
6096
6365
|
$$render_inner($$inner_renderer);
|
|
6097
6366
|
} while (!$$settled);
|
|
6098
6367
|
$$renderer2.subsume($$inner_renderer);
|
|
6099
|
-
$
|
|
6368
|
+
$79.bind_props($$props, { value, focus, clear, getAttachments, addFiles });
|
|
6100
6369
|
});
|
|
6101
6370
|
}
|
|
6102
6371
|
// src/components/chat/container/scroll-utilities.ts
|
|
@@ -6171,23 +6440,6 @@ function extractTimestamp(message) {
|
|
|
6171
6440
|
|
|
6172
6441
|
// src/components/chat/container/use-chat-scroll-state.svelte.ts
|
|
6173
6442
|
import * as $80 from "svelte/internal/server";
|
|
6174
|
-
|
|
6175
|
-
// src/utilities/use-reduced-motion.svelte.ts
|
|
6176
|
-
import * as $79 from "svelte/internal/server";
|
|
6177
|
-
import { MediaQuery } from "svelte/reactivity";
|
|
6178
|
-
function useReducedMotion() {
|
|
6179
|
-
if (typeof window === "undefined" || typeof window.matchMedia !== "function") {
|
|
6180
|
-
return { current: false };
|
|
6181
|
-
}
|
|
6182
|
-
const query = new MediaQuery("(prefers-reduced-motion: reduce)", false);
|
|
6183
|
-
return {
|
|
6184
|
-
get current() {
|
|
6185
|
-
return query.current;
|
|
6186
|
-
}
|
|
6187
|
-
};
|
|
6188
|
-
}
|
|
6189
|
-
|
|
6190
|
-
// src/components/chat/container/use-chat-scroll-state.svelte.ts
|
|
6191
6443
|
var destroy = () => {};
|
|
6192
6444
|
function useChatScrollState(options) {
|
|
6193
6445
|
const {
|
|
@@ -6202,12 +6454,12 @@ function useChatScrollState(options) {
|
|
|
6202
6454
|
function getScrollBehavior() {
|
|
6203
6455
|
return reducedMotion.current ? "auto" : "smooth";
|
|
6204
6456
|
}
|
|
6205
|
-
let
|
|
6457
|
+
let atBottom = true;
|
|
6206
6458
|
let showJumpButton = false;
|
|
6207
6459
|
let scrollTicking = false;
|
|
6208
6460
|
let isUserScrolling = false;
|
|
6209
|
-
function
|
|
6210
|
-
|
|
6461
|
+
function setAtBottom(value) {
|
|
6462
|
+
atBottom = value;
|
|
6211
6463
|
}
|
|
6212
6464
|
function createScrollAttachment() {
|
|
6213
6465
|
return (element2) => {
|
|
@@ -6221,15 +6473,15 @@ function useChatScrollState(options) {
|
|
|
6221
6473
|
scrollHeight: element2.scrollHeight,
|
|
6222
6474
|
clientHeight: element2.clientHeight
|
|
6223
6475
|
};
|
|
6224
|
-
const
|
|
6476
|
+
const scrolledToBottom = isAtBottom(state, getBottomThreshold?.() ?? bottomThreshold);
|
|
6225
6477
|
const shouldShowJump = shouldShowJumpToLatest(state, getJumpThreshold?.() ?? jumpThreshold);
|
|
6226
|
-
|
|
6478
|
+
atBottom = scrolledToBottom;
|
|
6227
6479
|
showJumpButton = shouldShowJump;
|
|
6228
|
-
if (
|
|
6480
|
+
if (scrolledToBottom) {
|
|
6229
6481
|
onReachBottom?.();
|
|
6230
6482
|
}
|
|
6231
6483
|
onScrollStateChange?.({
|
|
6232
|
-
|
|
6484
|
+
atBottom: scrolledToBottom,
|
|
6233
6485
|
scrollTop: state.scrollTop,
|
|
6234
6486
|
scrollHeight: state.scrollHeight
|
|
6235
6487
|
});
|
|
@@ -6241,9 +6493,9 @@ function useChatScrollState(options) {
|
|
|
6241
6493
|
};
|
|
6242
6494
|
}
|
|
6243
6495
|
function handleSentinelEntry(entry) {
|
|
6244
|
-
const
|
|
6245
|
-
if (
|
|
6246
|
-
|
|
6496
|
+
const sentinelVisible = entry.isIntersecting;
|
|
6497
|
+
if (sentinelVisible && !atBottom) {
|
|
6498
|
+
atBottom = true;
|
|
6247
6499
|
onReachBottom?.();
|
|
6248
6500
|
}
|
|
6249
6501
|
}
|
|
@@ -6286,13 +6538,13 @@ function useChatScrollState(options) {
|
|
|
6286
6538
|
}, scrollDuration);
|
|
6287
6539
|
}
|
|
6288
6540
|
return {
|
|
6289
|
-
get
|
|
6290
|
-
return
|
|
6541
|
+
get atBottom() {
|
|
6542
|
+
return atBottom;
|
|
6291
6543
|
},
|
|
6292
6544
|
get showJumpButton() {
|
|
6293
6545
|
return showJumpButton;
|
|
6294
6546
|
},
|
|
6295
|
-
|
|
6547
|
+
setAtBottom,
|
|
6296
6548
|
createScrollAttachment,
|
|
6297
6549
|
createSentinelObserver,
|
|
6298
6550
|
handleSentinelEntry,
|
|
@@ -6313,7 +6565,7 @@ import { untrack as untrack3 } from "svelte";
|
|
|
6313
6565
|
function useChatUnreadState(options) {
|
|
6314
6566
|
const { announcerDebounceMs = 300, onUnreadIndicatorChange } = options ?? {};
|
|
6315
6567
|
let unreadCount = 0;
|
|
6316
|
-
let
|
|
6568
|
+
let newMessageIndicatorVisible = false;
|
|
6317
6569
|
let firstUnreadId = null;
|
|
6318
6570
|
let previousMessageCount = 0;
|
|
6319
6571
|
let previousLastMessageId = null;
|
|
@@ -6322,17 +6574,17 @@ function useChatUnreadState(options) {
|
|
|
6322
6574
|
const displayUnreadCount = $81.derived(() => formatUnreadCount(unreadCount));
|
|
6323
6575
|
const hasLargeCount = $81.derived(() => isLargeCount(unreadCount));
|
|
6324
6576
|
function notifyIndicatorChange() {
|
|
6325
|
-
onUnreadIndicatorChange?.({ unreadCount,
|
|
6577
|
+
onUnreadIndicatorChange?.({ unreadCount, newMessageIndicatorVisible });
|
|
6326
6578
|
}
|
|
6327
6579
|
function markAllAsRead() {
|
|
6328
|
-
const changed = unreadCount !== 0 ||
|
|
6580
|
+
const changed = unreadCount !== 0 || newMessageIndicatorVisible;
|
|
6329
6581
|
unreadCount = 0;
|
|
6330
|
-
|
|
6582
|
+
newMessageIndicatorVisible = false;
|
|
6331
6583
|
firstUnreadId = null;
|
|
6332
6584
|
if (changed)
|
|
6333
6585
|
notifyIndicatorChange();
|
|
6334
6586
|
}
|
|
6335
|
-
function processMessages(messages, conversationId,
|
|
6587
|
+
function processMessages(messages, conversationId, getAtBottom) {
|
|
6336
6588
|
if (conversationId !== previousConversationId) {
|
|
6337
6589
|
previousMessageCount = messages.length;
|
|
6338
6590
|
previousLastMessageId = messages.at(-1)?.id ?? null;
|
|
@@ -6345,11 +6597,11 @@ function useChatUnreadState(options) {
|
|
|
6345
6597
|
const currentLastMessageId = messages.at(-1)?.id ?? null;
|
|
6346
6598
|
const wasAppended = currentCount > prevCount && prevCount > 0 && currentLastMessageId !== null && currentLastMessageId !== previousLastMessageId;
|
|
6347
6599
|
if (wasAppended) {
|
|
6348
|
-
const atBottom = untrack3(
|
|
6600
|
+
const atBottom = untrack3(getAtBottom);
|
|
6349
6601
|
if (!atBottom) {
|
|
6350
6602
|
const newMessageCount = currentCount - prevCount;
|
|
6351
6603
|
unreadCount += newMessageCount;
|
|
6352
|
-
|
|
6604
|
+
newMessageIndicatorVisible = true;
|
|
6353
6605
|
if (firstUnreadId === null) {
|
|
6354
6606
|
const firstNewIndex = currentCount - newMessageCount;
|
|
6355
6607
|
const firstNewMessage = messages[firstNewIndex];
|
|
@@ -6371,8 +6623,8 @@ function useChatUnreadState(options) {
|
|
|
6371
6623
|
get unreadCount() {
|
|
6372
6624
|
return unreadCount;
|
|
6373
6625
|
},
|
|
6374
|
-
get
|
|
6375
|
-
return
|
|
6626
|
+
get newMessageIndicatorVisible() {
|
|
6627
|
+
return newMessageIndicatorVisible;
|
|
6376
6628
|
},
|
|
6377
6629
|
get firstUnreadId() {
|
|
6378
6630
|
return firstUnreadId;
|
|
@@ -6394,7 +6646,7 @@ function useChatUnreadState(options) {
|
|
|
6394
6646
|
|
|
6395
6647
|
// src/components/chat/container/use-chat-keyboard-nav.svelte.ts
|
|
6396
6648
|
import * as $82 from "svelte/internal/server";
|
|
6397
|
-
import { tick as
|
|
6649
|
+
import { tick as tick3 } from "svelte";
|
|
6398
6650
|
function useChatKeyboardNav(options) {
|
|
6399
6651
|
const {
|
|
6400
6652
|
onJumpToLatest,
|
|
@@ -6441,7 +6693,7 @@ function useChatKeyboardNav(options) {
|
|
|
6441
6693
|
} else {
|
|
6442
6694
|
viewport.scrollTo({ top: 0, behavior });
|
|
6443
6695
|
}
|
|
6444
|
-
|
|
6696
|
+
tick3().then(() => {
|
|
6445
6697
|
const historyTrigger = getHistoryTrigger?.();
|
|
6446
6698
|
if (historyTrigger) {
|
|
6447
6699
|
historyTrigger.focus();
|
|
@@ -6636,7 +6888,7 @@ function Chat_history_trigger($$renderer, $$props) {
|
|
|
6636
6888
|
}
|
|
6637
6889
|
};
|
|
6638
6890
|
};
|
|
6639
|
-
function focus(options) {
|
|
6891
|
+
function focus(options = undefined) {
|
|
6640
6892
|
buttonElement?.focus(options);
|
|
6641
6893
|
}
|
|
6642
6894
|
$$renderer2.push(`<div class="chat-history-trigger svelte-y4b3t5" data-cinder-history-trigger=""><button type="button" class="chat-history-trigger-button svelte-y4b3t5"${$86.attr("disabled", loading, true)}${$86.attr("aria-busy", loading ? "true" : undefined)}>${$86.escape(loading ? loadingLabel : label)}</button> `);
|
|
@@ -7280,29 +7532,25 @@ function Chat($$renderer, $$props) {
|
|
|
7280
7532
|
let {
|
|
7281
7533
|
id,
|
|
7282
7534
|
conversation,
|
|
7283
|
-
|
|
7535
|
+
atBottom = true,
|
|
7284
7536
|
unreadCount = 0,
|
|
7285
|
-
|
|
7537
|
+
newMessageIndicatorVisible = false,
|
|
7286
7538
|
class: className,
|
|
7287
7539
|
surfaceMode = "default",
|
|
7288
7540
|
density = "comfortable",
|
|
7289
7541
|
variant = "bubble",
|
|
7290
7542
|
bottomThreshold = DEFAULT_SCROLL_CONFIGURATION.bottomThreshold,
|
|
7291
7543
|
jumpThreshold = DEFAULT_SCROLL_CONFIGURATION.jumpThreshold,
|
|
7292
|
-
|
|
7544
|
+
streaming = false,
|
|
7293
7545
|
streamingStatus,
|
|
7294
|
-
|
|
7295
|
-
allowSearch = true,
|
|
7546
|
+
capabilities,
|
|
7296
7547
|
virtualized = false,
|
|
7297
7548
|
virtualizationEstimatedRowHeight = 88,
|
|
7298
7549
|
virtualizationOverscan = 3,
|
|
7299
7550
|
virtualizationInitialHeight = 640,
|
|
7300
|
-
|
|
7551
|
+
moreHistoryAvailable = true,
|
|
7301
7552
|
loadEarlierLabel = "Load earlier messages",
|
|
7302
7553
|
loadingEarlierLabel = "Loading earlier messages",
|
|
7303
|
-
allowCopy = true,
|
|
7304
|
-
allowEditing = true,
|
|
7305
|
-
allowRetry = true,
|
|
7306
7554
|
header,
|
|
7307
7555
|
empty,
|
|
7308
7556
|
emptyPrompts,
|
|
@@ -7378,13 +7626,18 @@ function Chat($$renderer, $$props) {
|
|
|
7378
7626
|
getJumpThreshold: () => jumpThreshold,
|
|
7379
7627
|
onScrollStateChange: handleScrollStateChange,
|
|
7380
7628
|
onReachBottom: () => {
|
|
7381
|
-
|
|
7629
|
+
atBottom = true;
|
|
7630
|
+
if (unreadState.unreadCount > 0 || unreadState.newMessageIndicatorVisible) {
|
|
7382
7631
|
unreadState.markAllAsRead();
|
|
7383
7632
|
}
|
|
7384
7633
|
}
|
|
7385
7634
|
});
|
|
7386
7635
|
const unreadState = useChatUnreadState({
|
|
7387
|
-
onUnreadIndicatorChange: (event) =>
|
|
7636
|
+
onUnreadIndicatorChange: (event) => {
|
|
7637
|
+
unreadCount = event.unreadCount;
|
|
7638
|
+
newMessageIndicatorVisible = event.newMessageIndicatorVisible;
|
|
7639
|
+
onunreadindicatorchange?.(event);
|
|
7640
|
+
}
|
|
7388
7641
|
});
|
|
7389
7642
|
const keyboardNav = useChatKeyboardNav({
|
|
7390
7643
|
onJumpToLatest: handleJumpToLatest,
|
|
@@ -7401,7 +7654,12 @@ function Chat($$renderer, $$props) {
|
|
|
7401
7654
|
const lastMessageId = $99.derived(() => messages().at(-1)?.id);
|
|
7402
7655
|
let previousAutoScrollMessageCount = getMessages(conversation).length;
|
|
7403
7656
|
const conversationId = $99.derived(() => conversation.id);
|
|
7404
|
-
const showTypingIndicator = $99.derived(() =>
|
|
7657
|
+
const showTypingIndicator = $99.derived(() => streaming && !streamingMessageId);
|
|
7658
|
+
const allowAttachments = $99.derived(() => capabilities?.attachments ?? true);
|
|
7659
|
+
const allowSearch = $99.derived(() => capabilities?.search ?? true);
|
|
7660
|
+
const allowCopy = $99.derived(() => capabilities?.copy ?? true);
|
|
7661
|
+
const allowEditing = $99.derived(() => capabilities?.editing ?? true);
|
|
7662
|
+
const allowRetry = $99.derived(() => capabilities?.retry ?? true);
|
|
7405
7663
|
const toolCallPairsByCallId = $99.derived(() => {
|
|
7406
7664
|
const toolCallPairs = pairToolCallsWithResults(messages());
|
|
7407
7665
|
const map = new Map;
|
|
@@ -7424,9 +7682,6 @@ function Chat($$renderer, $$props) {
|
|
|
7424
7682
|
});
|
|
7425
7683
|
});
|
|
7426
7684
|
let hasMounted = false;
|
|
7427
|
-
onMount(() => {
|
|
7428
|
-
hasMounted = true;
|
|
7429
|
-
});
|
|
7430
7685
|
const isVirtualized = $99.derived(() => virtualized && hasMounted && messages().length > 0);
|
|
7431
7686
|
const timelineResetIdentity = $99.derived(() => `${conversationId()}:${isVirtualized() ? "virtualized" : "full"}`);
|
|
7432
7687
|
const staticRowsResetIdentity = $99.derived(() => messages()[0]?.id ?? "");
|
|
@@ -7493,7 +7748,7 @@ function Chat($$renderer, $$props) {
|
|
|
7493
7748
|
const typingIndicatorState = useChatTypingIndicator({ getTypingParticipants: () => typingParticipants });
|
|
7494
7749
|
const readReceiptsState = useChatReadReceipts({ getReadReceipts: () => readReceipts });
|
|
7495
7750
|
const viewportAttach = $99.derived(() => viewportAttachment ?? noopAttachment);
|
|
7496
|
-
const effectiveHasMoreHistory = $99.derived(() => adapterHasMoreHistory ??
|
|
7751
|
+
const effectiveHasMoreHistory = $99.derived(() => adapterHasMoreHistory ?? moreHistoryAvailable);
|
|
7497
7752
|
const hasHistoryLoader = $99.derived(() => onloadhistory !== undefined || adapter?.loadOlderMessages !== undefined);
|
|
7498
7753
|
const showHistoryTrigger = $99.derived(() => hasHistoryLoader() && effectiveHasMoreHistory());
|
|
7499
7754
|
const canRetry = $99.derived(() => onretry !== undefined || adapter?.retryMessage !== undefined);
|
|
@@ -7515,7 +7770,7 @@ function Chat($$renderer, $$props) {
|
|
|
7515
7770
|
return "";
|
|
7516
7771
|
});
|
|
7517
7772
|
async function waitForLayoutFrame() {
|
|
7518
|
-
await
|
|
7773
|
+
await tick4();
|
|
7519
7774
|
if (typeof requestAnimationFrame !== "function")
|
|
7520
7775
|
return;
|
|
7521
7776
|
await new Promise((resolve) => {
|
|
@@ -7561,7 +7816,7 @@ function Chat($$renderer, $$props) {
|
|
|
7561
7816
|
historyAnnouncement = "";
|
|
7562
7817
|
}
|
|
7563
7818
|
}, 1000);
|
|
7564
|
-
|
|
7819
|
+
tick4().then(() => {
|
|
7565
7820
|
focusAfterHistoryRestore(pending);
|
|
7566
7821
|
});
|
|
7567
7822
|
return true;
|
|
@@ -7583,6 +7838,7 @@ function Chat($$renderer, $$props) {
|
|
|
7583
7838
|
}
|
|
7584
7839
|
function handleScrollStateChange(event) {
|
|
7585
7840
|
clearHistoryAnchorAfterScroll(event.scrollTop);
|
|
7841
|
+
atBottom = event.atBottom;
|
|
7586
7842
|
onscrollstatechange?.(event);
|
|
7587
7843
|
}
|
|
7588
7844
|
function virtualSpacerOffsetTop() {
|
|
@@ -7622,7 +7878,7 @@ function Chat($$renderer, $$props) {
|
|
|
7622
7878
|
chatVirtualizer.scrollToIndex(Math.max(0, renderRows().length - 1), { align: "end", behavior: scrollState.getScrollBehavior() });
|
|
7623
7879
|
unreadState.markAllAsRead();
|
|
7624
7880
|
onjumptolatest?.();
|
|
7625
|
-
|
|
7881
|
+
tick4().then(() => {
|
|
7626
7882
|
const lastMessage = viewport?.querySelector(`.chat-message-wrapper:last-of-type .chat-message`);
|
|
7627
7883
|
lastMessage?.focus();
|
|
7628
7884
|
});
|
|
@@ -7651,8 +7907,9 @@ function Chat($$renderer, $$props) {
|
|
|
7651
7907
|
}
|
|
7652
7908
|
function handleSubmit(message, attachments) {
|
|
7653
7909
|
dispatchCommand("sendMessage", (resolvedAdapter) => Promise.resolve(resolvedAdapter.sendMessage(message, attachments)), () => onsubmit?.({ message, attachments }));
|
|
7654
|
-
scrollState.
|
|
7655
|
-
|
|
7910
|
+
scrollState.setAtBottom(true);
|
|
7911
|
+
atBottom = true;
|
|
7912
|
+
tick4().then(() => {
|
|
7656
7913
|
if (isVirtualized()) {
|
|
7657
7914
|
chatVirtualizer.scrollToOffset(chatVirtualizer.scrollSize, { behavior: "instant" });
|
|
7658
7915
|
} else {
|
|
@@ -7723,7 +7980,7 @@ function Chat($$renderer, $$props) {
|
|
|
7723
7980
|
const transcriptChanged = historyTranscriptChanged(pending);
|
|
7724
7981
|
if (isVirtualized() && !transcriptChanged) {
|
|
7725
7982
|
deferredAdapterHasMoreHistory = nextHasMoreHistory ?? null;
|
|
7726
|
-
await
|
|
7983
|
+
await tick4();
|
|
7727
7984
|
if (historyTranscriptChanged(pending)) {
|
|
7728
7985
|
await settlePendingHistoryScroll(pending);
|
|
7729
7986
|
} else if (pendingHistoryScroll === pending) {
|
|
@@ -7821,7 +8078,7 @@ function Chat($$renderer, $$props) {
|
|
|
7821
8078
|
inputRef?.clear();
|
|
7822
8079
|
}
|
|
7823
8080
|
function handleKeyDown(event) {
|
|
7824
|
-
if (allowSearch && (event.ctrlKey || event.metaKey) && event.key === "f") {
|
|
8081
|
+
if (allowSearch() && (event.ctrlKey || event.metaKey) && event.key === "f") {
|
|
7825
8082
|
event.preventDefault();
|
|
7826
8083
|
if (searchState.isOpen) {
|
|
7827
8084
|
searchBarRef?.focusInput();
|
|
@@ -7866,7 +8123,7 @@ function Chat($$renderer, $$props) {
|
|
|
7866
8123
|
if (targetIndex < 0)
|
|
7867
8124
|
return;
|
|
7868
8125
|
chatVirtualizer.scrollToIndex(targetIndex, { align: "auto", behavior: scrollState.getScrollBehavior() });
|
|
7869
|
-
await
|
|
8126
|
+
await tick4();
|
|
7870
8127
|
const target = renderedMessageById(messageId);
|
|
7871
8128
|
target?.focus();
|
|
7872
8129
|
target?.scrollIntoView({ behavior: scrollState.getScrollBehavior(), block: "nearest" });
|
|
@@ -7900,7 +8157,7 @@ function Chat($$renderer, $$props) {
|
|
|
7900
8157
|
const targetIndex = findRenderRowIndexByMessageId(renderRows(), messageId);
|
|
7901
8158
|
if (targetIndex >= 0) {
|
|
7902
8159
|
chatVirtualizer.scrollToIndex(targetIndex, { align: "center", behavior: "auto" });
|
|
7903
|
-
await
|
|
8160
|
+
await tick4();
|
|
7904
8161
|
}
|
|
7905
8162
|
}
|
|
7906
8163
|
const messageElement = viewport.querySelector(`#message-${CSS.escape(messageId)}`);
|
|
@@ -7912,7 +8169,7 @@ function Chat($$renderer, $$props) {
|
|
|
7912
8169
|
if (!event.dataTransfer?.types.includes("Files"))
|
|
7913
8170
|
return;
|
|
7914
8171
|
isContainerDragOver = false;
|
|
7915
|
-
if (!allowAttachments)
|
|
8172
|
+
if (!allowAttachments())
|
|
7916
8173
|
return;
|
|
7917
8174
|
event.preventDefault();
|
|
7918
8175
|
const files = event.dataTransfer.files;
|
|
@@ -7923,7 +8180,7 @@ function Chat($$renderer, $$props) {
|
|
|
7923
8180
|
function handleContainerDragOver(event) {
|
|
7924
8181
|
if (!event.dataTransfer?.types.includes("Files"))
|
|
7925
8182
|
return;
|
|
7926
|
-
if (!allowAttachments)
|
|
8183
|
+
if (!allowAttachments())
|
|
7927
8184
|
return;
|
|
7928
8185
|
event.preventDefault();
|
|
7929
8186
|
event.dataTransfer.dropEffect = "copy";
|
|
@@ -7968,13 +8225,13 @@ function Chat($$renderer, $$props) {
|
|
|
7968
8225
|
streamingScrollRaf = undefined;
|
|
7969
8226
|
streamingContent = tokenBuffer.join("");
|
|
7970
8227
|
if (streamingRowElement) {
|
|
7971
|
-
|
|
8228
|
+
tick4().then(() => {
|
|
7972
8229
|
if (streamingRowElement) {
|
|
7973
8230
|
chatVirtualizer.measureElementNode(streamingRowElement);
|
|
7974
8231
|
}
|
|
7975
8232
|
});
|
|
7976
8233
|
}
|
|
7977
|
-
if (scrollState.
|
|
8234
|
+
if (scrollState.atBottom && viewport) {
|
|
7978
8235
|
if (isVirtualized()) {
|
|
7979
8236
|
chatVirtualizer.scrollToOffset(chatVirtualizer.scrollSize, { behavior: "instant" });
|
|
7980
8237
|
} else {
|
|
@@ -8061,9 +8318,9 @@ function Chat($$renderer, $$props) {
|
|
|
8061
8318
|
message,
|
|
8062
8319
|
toolCallPairs: pairs,
|
|
8063
8320
|
messagePart,
|
|
8064
|
-
onretry: allowRetry && canRetry() ? handleRetry : undefined,
|
|
8065
|
-
onedit: allowEditing && canEdit() ? handleEdit : undefined,
|
|
8066
|
-
showDefaultActions: allowCopy,
|
|
8321
|
+
onretry: allowRetry() && canRetry() ? handleRetry : undefined,
|
|
8322
|
+
onedit: allowEditing() && canEdit() ? handleEdit : undefined,
|
|
8323
|
+
showDefaultActions: allowCopy(),
|
|
8067
8324
|
onexpandedchange,
|
|
8068
8325
|
streaming: isStreamingMessage,
|
|
8069
8326
|
overrideContent: isStreamingMessage ? streamingContent : undefined,
|
|
@@ -8121,7 +8378,7 @@ function Chat($$renderer, $$props) {
|
|
|
8121
8378
|
"aria-label": "Chat conversation",
|
|
8122
8379
|
...rest
|
|
8123
8380
|
}, "svelte-932akd")}>`);
|
|
8124
|
-
if (isContainerDragOver && allowAttachments) {
|
|
8381
|
+
if (isContainerDragOver && allowAttachments()) {
|
|
8125
8382
|
$$renderer2.push("<!--[0-->");
|
|
8126
8383
|
$$renderer2.push(`<div class="chat-drop-overlay svelte-932akd" aria-hidden="true"><span class="chat-drop-label svelte-932akd">Drop files here</span></div>`);
|
|
8127
8384
|
} else {
|
|
@@ -8137,7 +8394,7 @@ function Chat($$renderer, $$props) {
|
|
|
8137
8394
|
$$renderer2.push("<!--[-1-->");
|
|
8138
8395
|
}
|
|
8139
8396
|
$$renderer2.push(`<!--]--> `);
|
|
8140
|
-
if (allowSearch && searchState.isOpen) {
|
|
8397
|
+
if (allowSearch() && searchState.isOpen) {
|
|
8141
8398
|
$$renderer2.push("<!--[0-->");
|
|
8142
8399
|
Chat_search_bar($$renderer2, {
|
|
8143
8400
|
instanceId: id,
|
|
@@ -8226,7 +8483,7 @@ function Chat($$renderer, $$props) {
|
|
|
8226
8483
|
$$renderer2.push(`<!----> <div class="chat-input-wrapper svelte-932akd">`);
|
|
8227
8484
|
Chat_jump_controls($$renderer2, {
|
|
8228
8485
|
showJumpButton: scrollState.showJumpButton,
|
|
8229
|
-
hasNewMessageIndicator: unreadState.
|
|
8486
|
+
hasNewMessageIndicator: unreadState.newMessageIndicatorVisible,
|
|
8230
8487
|
unreadCount: unreadState.unreadCount,
|
|
8231
8488
|
displayUnreadCount: unreadState.displayUnreadCount,
|
|
8232
8489
|
hasLargeCount: unreadState.hasLargeCount,
|
|
@@ -8236,10 +8493,10 @@ function Chat($$renderer, $$props) {
|
|
|
8236
8493
|
Chat_input($$renderer2, {
|
|
8237
8494
|
id: inputId(),
|
|
8238
8495
|
onsubmit: (message, attachments) => handleSubmit(message, attachments),
|
|
8239
|
-
disabled:
|
|
8240
|
-
sending:
|
|
8241
|
-
allowAttachments,
|
|
8242
|
-
onstop:
|
|
8496
|
+
disabled: streaming,
|
|
8497
|
+
sending: streaming,
|
|
8498
|
+
allowAttachments: allowAttachments(),
|
|
8499
|
+
onstop: streaming ? handleStopGenerating : undefined,
|
|
8243
8500
|
onattachmentadd,
|
|
8244
8501
|
onattachmentremove,
|
|
8245
8502
|
onattachmentfailure
|
|
@@ -8253,9 +8510,9 @@ function Chat($$renderer, $$props) {
|
|
|
8253
8510
|
});
|
|
8254
8511
|
$$renderer2.push(`<!----> <div class="cinder-sr-only svelte-932akd" aria-live="polite" aria-atomic="true">${$99.escape(typingIndicatorState.announcedLabel)}</div></div>`);
|
|
8255
8512
|
$99.bind_props($$props, {
|
|
8256
|
-
|
|
8513
|
+
atBottom,
|
|
8257
8514
|
unreadCount,
|
|
8258
|
-
|
|
8515
|
+
newMessageIndicatorVisible,
|
|
8259
8516
|
scrollToBottom,
|
|
8260
8517
|
scrollToTop,
|
|
8261
8518
|
focusInput,
|
|
@@ -8364,7 +8621,7 @@ import * as $102 from "svelte/internal/server";
|
|
|
8364
8621
|
|
|
8365
8622
|
// src/components/copy-button/use-copy-state.svelte.ts
|
|
8366
8623
|
import * as $101 from "svelte/internal/server";
|
|
8367
|
-
import { onDestroy as
|
|
8624
|
+
import { onDestroy as onDestroy3 } from "svelte";
|
|
8368
8625
|
function createCopyState(confirmDuration = 2000) {
|
|
8369
8626
|
let copiedKey = null;
|
|
8370
8627
|
let resetTimer;
|
|
@@ -8389,7 +8646,7 @@ function createCopyState(confirmDuration = 2000) {
|
|
|
8389
8646
|
}, confirmDuration);
|
|
8390
8647
|
return true;
|
|
8391
8648
|
}
|
|
8392
|
-
|
|
8649
|
+
onDestroy3(clearTimer);
|
|
8393
8650
|
return {
|
|
8394
8651
|
get copiedKey() {
|
|
8395
8652
|
return copiedKey;
|
|
@@ -8641,4 +8898,4 @@ export {
|
|
|
8641
8898
|
Artifact_panel as ArtifactPanel
|
|
8642
8899
|
};
|
|
8643
8900
|
|
|
8644
|
-
//# debugId=
|
|
8901
|
+
//# debugId=777EE4615F44220364756E2164756E21
|