@lostgradient/cinder 0.1.1 → 0.2.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 +62 -0
- package/README.md +163 -0
- package/components.json +390 -3
- package/dist/_internal/chart/chart-focus-ring.d.ts +57 -0
- package/dist/_internal/chart/chart-utilities.d.ts +2 -0
- package/dist/_internal/chart/heatmap-utilities.d.ts +60 -0
- package/dist/components/accordion/index.js +14 -1
- package/dist/components/alert/alert.schema.js +3 -3
- package/dist/components/alert/alert.types.d.ts +3 -2
- package/dist/components/alert/index.js +3 -2
- package/dist/components/alert-dialog/index.js +11 -2
- package/dist/components/area-chart/area-chart.css +57 -7
- package/dist/components/area-chart/index.js +283 -40
- package/dist/components/avatar-group/avatar-group.css +2 -3
- package/dist/components/badge/badge.css +17 -0
- package/dist/components/badge/badge.schema.js +6 -1
- package/dist/components/badge/badge.types.d.ts +7 -0
- package/dist/components/badge/index.js +4 -2
- package/dist/components/bar-chart/bar-chart.css +57 -7
- package/dist/components/bar-chart/index.js +233 -45
- package/dist/components/button/button.css +5 -3
- package/dist/components/button/index.js +11 -2
- package/dist/components/capability-gate/capability-gate.css +131 -0
- package/dist/components/capability-gate/capability-gate.schema.d.ts +3 -0
- package/dist/components/capability-gate/capability-gate.schema.js +128 -0
- package/dist/components/capability-gate/capability-gate.svelte.d.ts +19 -0
- package/dist/components/capability-gate/capability-gate.types.d.ts +70 -0
- package/dist/components/capability-gate/capability-gate.variables.d.ts +2 -0
- package/dist/components/capability-gate/capability-gate.variables.js +61 -0
- package/dist/components/capability-gate/index.d.ts +5 -0
- package/dist/components/capability-gate/index.js +285 -0
- package/dist/components/card/card.css +4 -0
- package/dist/components/card/card.schema.js +5 -1
- package/dist/components/card/card.svelte.d.ts +1 -1
- package/dist/components/card/card.types.d.ts +4 -0
- package/dist/components/card/index.d.ts +1 -1
- package/dist/components/card/index.js +8 -4
- package/dist/components/chat/index.css +2 -2
- package/dist/components/chat/index.js +159 -81
- package/dist/components/choice-grid/choice-grid-context.d.ts +23 -0
- package/dist/components/choice-grid/choice-grid.css +27 -0
- package/dist/components/choice-grid/choice-grid.schema.d.ts +3 -0
- package/dist/components/choice-grid/choice-grid.schema.js +121 -0
- package/dist/components/choice-grid/choice-grid.svelte.d.ts +20 -0
- package/dist/components/choice-grid/choice-grid.types.d.ts +122 -0
- package/dist/components/choice-grid/choice-grid.variables.d.ts +2 -0
- package/dist/components/choice-grid/choice-grid.variables.js +61 -0
- package/dist/components/choice-grid/index.d.ts +13 -0
- package/dist/components/choice-grid/index.js +466 -0
- package/dist/components/choice-grid-item/choice-grid-item.css +139 -0
- package/dist/components/choice-grid-item/choice-grid-item.schema.d.ts +3 -0
- package/dist/components/choice-grid-item/choice-grid-item.schema.js +93 -0
- package/dist/components/choice-grid-item/choice-grid-item.svelte.d.ts +17 -0
- package/dist/components/choice-grid-item/choice-grid-item.types.d.ts +24 -0
- package/dist/components/choice-grid-item/choice-grid-item.variables.d.ts +2 -0
- package/dist/components/choice-grid-item/choice-grid-item.variables.js +61 -0
- package/dist/components/choice-grid-item/index.d.ts +5 -0
- package/dist/components/choice-grid-item/index.js +203 -0
- package/dist/components/color-field/color-field.css +6 -9
- package/dist/components/color-picker/color-picker.css +31 -24
- package/dist/components/color-swatch-picker/color-swatch-picker.css +6 -9
- package/dist/components/confirm-dialog/index.js +11 -2
- package/dist/components/context-menu/index.js +114 -43
- package/dist/components/context-menu-trigger/index.js +6 -4
- package/dist/components/data-table/data-table.css +30 -0
- package/dist/components/data-table/data-table.schema.d.ts +3 -0
- package/dist/components/data-table/data-table.schema.js +103 -0
- package/dist/components/data-table/data-table.svelte.d.ts +39 -0
- package/dist/components/data-table/data-table.types.d.ts +86 -0
- package/dist/components/data-table/data-table.variables.d.ts +2 -0
- package/dist/components/data-table/data-table.variables.js +61 -0
- package/dist/components/data-table/index.d.ts +5 -0
- package/dist/components/data-table/index.js +591 -0
- package/dist/components/diff-viewer/index.js +14 -3
- package/dist/components/dropdown/index.js +115 -46
- package/dist/components/dropdown-item/dropdown-item.schema.js +13 -1
- package/dist/components/dropdown-item/dropdown-item.svelte.d.ts +1 -1
- package/dist/components/dropdown-item/dropdown-item.types.d.ts +46 -2
- package/dist/components/dropdown-item/index.d.ts +1 -1
- package/dist/components/dropdown-item/index.js +97 -28
- package/dist/components/floating-action-button/floating-action-button.css +4 -2
- package/dist/components/json-schema-editor/index.js +29 -4
- package/dist/components/keyboard-shortcuts/index.d.ts +5 -0
- package/dist/components/keyboard-shortcuts/index.js +238 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.css +84 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.schema.d.ts +3 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.schema.js +87 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.svelte.d.ts +17 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.types.d.ts +42 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.variables.d.ts +2 -0
- package/dist/components/keyboard-shortcuts/keyboard-shortcuts.variables.js +61 -0
- package/dist/components/line-chart/index.js +283 -40
- package/dist/components/line-chart/line-chart.css +57 -8
- package/dist/components/markdown-editor/index.js +129 -51
- package/dist/components/matrix-chart/index.d.ts +5 -0
- package/dist/components/matrix-chart/index.js +1232 -0
- package/dist/components/matrix-chart/matrix-chart.css +50 -0
- package/dist/components/matrix-chart/matrix-chart.schema.d.ts +3 -0
- package/dist/components/matrix-chart/matrix-chart.schema.js +123 -0
- package/dist/components/matrix-chart/matrix-chart.svelte.d.ts +20 -0
- package/dist/components/matrix-chart/matrix-chart.types.d.ts +52 -0
- package/dist/components/matrix-chart/matrix-chart.variables.d.ts +2 -0
- package/dist/components/matrix-chart/matrix-chart.variables.js +61 -0
- package/dist/components/media-controls/index.d.ts +5 -0
- package/dist/components/media-controls/index.js +338 -0
- package/dist/components/media-controls/media-controls.css +112 -0
- package/dist/components/media-controls/media-controls.schema.d.ts +3 -0
- package/dist/components/media-controls/media-controls.schema.js +125 -0
- package/dist/components/media-controls/media-controls.svelte.d.ts +18 -0
- package/dist/components/media-controls/media-controls.types.d.ts +77 -0
- package/dist/components/media-controls/media-controls.variables.d.ts +2 -0
- package/dist/components/media-controls/media-controls.variables.js +61 -0
- package/dist/components/navigation-bar/navigation-bar.schema.js +5 -5
- package/dist/components/navigation-bar/navigation-bar.types.d.ts +2 -1
- package/dist/components/pricing-card/index.d.ts +5 -0
- package/dist/components/pricing-card/index.js +406 -0
- package/dist/components/pricing-card/pricing-card.css +173 -0
- package/dist/components/pricing-card/pricing-card.schema.d.ts +3 -0
- package/dist/components/pricing-card/pricing-card.schema.js +100 -0
- package/dist/components/pricing-card/pricing-card.svelte.d.ts +18 -0
- package/dist/components/pricing-card/pricing-card.types.d.ts +47 -0
- package/dist/components/pricing-card/pricing-card.variables.d.ts +2 -0
- package/dist/components/pricing-card/pricing-card.variables.js +61 -0
- package/dist/components/review-editor/index.js +212 -132
- package/dist/components/share-card/index.d.ts +5 -0
- package/dist/components/share-card/index.js +446 -0
- package/dist/components/share-card/share-card.css +115 -0
- package/dist/components/share-card/share-card.schema.d.ts +3 -0
- package/dist/components/share-card/share-card.schema.js +113 -0
- package/dist/components/share-card/share-card.svelte.d.ts +18 -0
- package/dist/components/share-card/share-card.types.d.ts +66 -0
- package/dist/components/share-card/share-card.variables.d.ts +2 -0
- package/dist/components/share-card/share-card.variables.js +61 -0
- package/dist/components/shortcut-hint/index.d.ts +5 -0
- package/dist/components/shortcut-hint/index.js +197 -0
- package/dist/components/shortcut-hint/shortcut-hint.css +26 -0
- package/dist/components/shortcut-hint/shortcut-hint.schema.d.ts +3 -0
- package/dist/components/shortcut-hint/shortcut-hint.schema.js +96 -0
- package/dist/components/shortcut-hint/shortcut-hint.svelte.d.ts +17 -0
- package/dist/components/shortcut-hint/shortcut-hint.types.d.ts +33 -0
- package/dist/components/shortcut-hint/shortcut-hint.variables.d.ts +2 -0
- package/dist/components/shortcut-hint/shortcut-hint.variables.js +61 -0
- package/dist/components/skip-link/index.d.ts +4 -0
- package/dist/components/skip-link/index.js +180 -0
- package/dist/components/skip-link/skip-link.schema.d.ts +3 -0
- package/dist/components/skip-link/skip-link.schema.js +76 -0
- package/dist/components/skip-link/skip-link.svelte.d.ts +19 -0
- package/dist/components/skip-link/skip-link.types.d.ts +38 -0
- package/dist/components/skip-link/skip-link.variables.d.ts +2 -0
- package/dist/components/skip-link/skip-link.variables.js +61 -0
- package/dist/components/spectrogram/index.d.ts +5 -0
- package/dist/components/spectrogram/index.js +1156 -0
- package/dist/components/spectrogram/spectrogram.css +43 -0
- package/dist/components/spectrogram/spectrogram.schema.d.ts +3 -0
- package/dist/components/spectrogram/spectrogram.schema.js +103 -0
- package/dist/components/spectrogram/spectrogram.svelte.d.ts +21 -0
- package/dist/components/spectrogram/spectrogram.types.d.ts +60 -0
- package/dist/components/spectrogram/spectrogram.variables.d.ts +2 -0
- package/dist/components/spectrogram/spectrogram.variables.js +61 -0
- package/dist/components/spectrum-chart/index.d.ts +5 -0
- package/dist/components/spectrum-chart/index.js +1056 -0
- package/dist/components/spectrum-chart/spectrum-chart.css +49 -0
- package/dist/components/spectrum-chart/spectrum-chart.schema.d.ts +3 -0
- package/dist/components/spectrum-chart/spectrum-chart.schema.js +97 -0
- package/dist/components/spectrum-chart/spectrum-chart.svelte.d.ts +21 -0
- package/dist/components/spectrum-chart/spectrum-chart.types.d.ts +41 -0
- package/dist/components/spectrum-chart/spectrum-chart.variables.d.ts +2 -0
- package/dist/components/spectrum-chart/spectrum-chart.variables.js +61 -0
- package/dist/components/status-dot/status-dot.css +8 -0
- package/dist/components/status-dot/status-dot.schema.js +3 -3
- package/dist/components/status-dot/status-dot.types.d.ts +5 -2
- package/dist/components/subscription-badge/index.d.ts +5 -0
- package/dist/components/subscription-badge/index.js +383 -0
- package/dist/components/subscription-badge/subscription-badge.css +18 -0
- package/dist/components/subscription-badge/subscription-badge.schema.d.ts +3 -0
- package/dist/components/subscription-badge/subscription-badge.schema.js +77 -0
- package/dist/components/subscription-badge/subscription-badge.svelte.d.ts +19 -0
- package/dist/components/subscription-badge/subscription-badge.types.d.ts +28 -0
- package/dist/components/subscription-badge/subscription-badge.variables.d.ts +2 -0
- package/dist/components/subscription-badge/subscription-badge.variables.js +61 -0
- package/dist/components/tab/index.js +14 -1
- package/dist/components/table/index.js +26 -17
- package/dist/components/table-cell/index.js +18 -9
- package/dist/components/table-cell/table-cell.schema.js +5 -1
- package/dist/components/table-cell/table-cell.types.d.ts +16 -1
- package/dist/components/tabs/index.js +14 -1
- package/dist/components/waveform/index.d.ts +5 -0
- package/dist/components/waveform/index.js +1075 -0
- package/dist/components/waveform/waveform.css +53 -0
- package/dist/components/waveform/waveform.schema.d.ts +3 -0
- package/dist/components/waveform/waveform.schema.js +98 -0
- package/dist/components/waveform/waveform.svelte.d.ts +20 -0
- package/dist/components/waveform/waveform.types.d.ts +42 -0
- package/dist/components/waveform/waveform.variables.d.ts +2 -0
- package/dist/components/waveform/waveform.variables.js +61 -0
- package/dist/index.d.ts +33 -2
- package/dist/index.js +144 -115
- package/dist/server/components/accordion/index.js +14 -1
- package/dist/server/components/alert/alert.schema.js +3 -3
- package/dist/server/components/alert/index.js +3 -2
- package/dist/server/components/alert-dialog/index.js +12 -3
- package/dist/server/components/area-chart/index.css +50 -3
- package/dist/server/components/area-chart/index.js +181 -2
- package/dist/server/components/avatar-group/index.css +1 -1
- package/dist/server/components/badge/badge.schema.js +6 -1
- package/dist/server/components/badge/index.css +4 -0
- package/dist/server/components/badge/index.js +3 -1
- package/dist/server/components/bar-chart/index.css +50 -3
- package/dist/server/components/bar-chart/index.js +166 -2
- package/dist/server/components/button/index.css +1 -1
- package/dist/server/components/button/index.js +12 -3
- package/dist/server/components/capability-gate/capability-gate.schema.js +110 -0
- package/dist/server/components/capability-gate/capability-gate.variables.js +43 -0
- package/dist/server/components/capability-gate/index.css +121 -0
- package/dist/server/components/capability-gate/index.js +168 -0
- package/dist/server/components/card/card.schema.js +5 -1
- package/dist/server/components/card/index.css +9 -1
- package/dist/server/components/card/index.js +3 -2
- package/dist/server/components/chat/index.css +2 -2
- package/dist/server/components/chat/index.js +78 -19
- package/dist/server/components/choice-grid/choice-grid.schema.js +103 -0
- package/dist/server/components/choice-grid/choice-grid.variables.js +43 -0
- package/dist/server/components/choice-grid/index.css +103 -0
- package/dist/server/components/choice-grid/index.js +383 -0
- package/dist/server/components/choice-grid-item/choice-grid-item.schema.js +75 -0
- package/dist/server/components/choice-grid-item/choice-grid-item.variables.js +43 -0
- package/dist/server/components/choice-grid-item/index.css +86 -0
- package/dist/server/components/choice-grid-item/index.js +139 -0
- package/dist/server/components/color-field/index.css +2 -4
- package/dist/server/components/color-picker/index.css +14 -10
- package/dist/server/components/color-swatch-picker/index.css +2 -4
- package/dist/server/components/confirm-dialog/index.js +12 -3
- package/dist/server/components/context-menu/index.js +72 -20
- package/dist/server/components/context-menu-trigger/index.js +6 -4
- package/dist/server/components/data-table/data-table.schema.js +85 -0
- package/dist/server/components/data-table/data-table.variables.js +43 -0
- package/dist/server/components/data-table/index.css +182 -0
- package/dist/server/components/data-table/index.js +469 -0
- package/dist/server/components/diff-viewer/index.js +14 -3
- package/dist/server/components/dropdown/index.js +67 -17
- package/dist/server/components/dropdown-item/dropdown-item.schema.js +13 -1
- package/dist/server/components/dropdown-item/index.js +67 -17
- package/dist/server/components/floating-action-button/index.css +1 -1
- package/dist/server/components/json-schema-editor/index.js +29 -4
- package/dist/server/components/keyboard-shortcuts/index.css +86 -0
- package/dist/server/components/keyboard-shortcuts/index.js +149 -0
- package/dist/server/components/keyboard-shortcuts/keyboard-shortcuts.schema.js +69 -0
- package/dist/server/components/keyboard-shortcuts/keyboard-shortcuts.variables.js +43 -0
- package/dist/server/components/line-chart/index.css +50 -3
- package/dist/server/components/line-chart/index.js +181 -2
- package/dist/server/components/markdown-editor/index.js +78 -19
- package/dist/server/components/matrix-chart/index.css +52 -0
- package/dist/server/components/matrix-chart/index.js +1026 -0
- package/dist/server/components/matrix-chart/matrix-chart.schema.js +105 -0
- package/dist/server/components/matrix-chart/matrix-chart.variables.js +43 -0
- package/dist/server/components/media-controls/index.css +109 -0
- package/dist/server/components/media-controls/index.js +192 -0
- package/dist/server/components/media-controls/media-controls.schema.js +107 -0
- package/dist/server/components/media-controls/media-controls.variables.js +43 -0
- package/dist/server/components/navigation-bar/navigation-bar.schema.js +5 -5
- package/dist/server/components/pricing-card/index.css +131 -0
- package/dist/server/components/pricing-card/index.js +258 -0
- package/dist/server/components/pricing-card/pricing-card.schema.js +82 -0
- package/dist/server/components/pricing-card/pricing-card.variables.js +43 -0
- package/dist/server/components/review-editor/index.css +2 -2
- package/dist/server/components/review-editor/index.js +80 -19
- package/dist/server/components/share-card/index.css +113 -0
- package/dist/server/components/share-card/index.js +270 -0
- package/dist/server/components/share-card/share-card.schema.js +95 -0
- package/dist/server/components/share-card/share-card.variables.js +43 -0
- package/dist/server/components/shortcut-hint/index.css +28 -0
- package/dist/server/components/shortcut-hint/index.js +134 -0
- package/dist/server/components/shortcut-hint/shortcut-hint.schema.js +78 -0
- package/dist/server/components/shortcut-hint/shortcut-hint.variables.js +43 -0
- package/dist/server/components/skip-link/index.js +141 -0
- package/dist/server/components/skip-link/skip-link.schema.js +58 -0
- package/dist/server/components/skip-link/skip-link.variables.js +43 -0
- package/dist/server/components/spectrogram/index.css +45 -0
- package/dist/server/components/spectrogram/index.js +970 -0
- package/dist/server/components/spectrogram/spectrogram.schema.js +85 -0
- package/dist/server/components/spectrogram/spectrogram.variables.js +43 -0
- package/dist/server/components/spectrum-chart/index.css +51 -0
- package/dist/server/components/spectrum-chart/index.js +871 -0
- package/dist/server/components/spectrum-chart/spectrum-chart.schema.js +79 -0
- package/dist/server/components/spectrum-chart/spectrum-chart.variables.js +43 -0
- package/dist/server/components/status-dot/index.css +8 -0
- package/dist/server/components/status-dot/status-dot.schema.js +3 -3
- package/dist/server/components/subscription-badge/index.css +2 -0
- package/dist/server/components/subscription-badge/index.js +339 -0
- package/dist/server/components/subscription-badge/subscription-badge.schema.js +59 -0
- package/dist/server/components/subscription-badge/subscription-badge.variables.js +43 -0
- package/dist/server/components/tab/index.js +14 -1
- package/dist/server/components/table/index.js +13 -8
- package/dist/server/components/table-cell/index.js +13 -8
- package/dist/server/components/table-cell/table-cell.schema.js +5 -1
- package/dist/server/components/tabs/index.js +14 -1
- package/dist/server/components/waveform/index.css +55 -0
- package/dist/server/components/waveform/index.js +907 -0
- package/dist/server/components/waveform/waveform.schema.js +80 -0
- package/dist/server/components/waveform/waveform.variables.js +43 -0
- package/dist/server/index.css +1137 -55
- package/dist/server/index.js +4225 -1750
- package/package.json +380 -2
- package/src/_internal/chart/chart-focus-ring.ts +209 -0
- package/src/_internal/chart/chart-utilities.ts +4 -0
- package/src/_internal/chart/heatmap-utilities.ts +159 -0
- package/src/components/accordion/accordion.examples.json +1 -0
- package/src/components/alert/README.md +5 -5
- package/src/components/alert/alert.schema.json +2 -2
- package/src/components/alert/alert.schema.ts +3 -2
- package/src/components/alert/alert.svelte +5 -1
- package/src/components/alert/alert.types.ts +3 -2
- package/src/components/area-chart/README.md +62 -0
- package/src/components/area-chart/area-chart.css +57 -7
- package/src/components/area-chart/area-chart.svelte +128 -10
- package/src/components/avatar-group/avatar-group.css +2 -3
- package/src/components/avatar-group/avatar-group.examples.json +1 -0
- package/src/components/backdrop/README.md +56 -0
- package/src/components/badge/README.md +6 -5
- package/src/components/badge/badge.css +17 -0
- package/src/components/badge/badge.schema.json +5 -0
- package/src/components/badge/badge.schema.ts +6 -0
- package/src/components/badge/badge.svelte +2 -0
- package/src/components/badge/badge.types.ts +7 -0
- package/src/components/bar-chart/README.md +65 -0
- package/src/components/bar-chart/bar-chart.css +57 -7
- package/src/components/bar-chart/bar-chart.svelte +94 -13
- package/src/components/button/button.css +5 -3
- package/src/components/button/button.examples.json +1 -0
- package/src/components/button/button.svelte +15 -0
- package/src/components/capability-gate/README.md +60 -0
- package/src/components/capability-gate/capability-gate.css +131 -0
- package/src/components/capability-gate/capability-gate.examples.json +19 -0
- package/src/components/capability-gate/capability-gate.schema.json +68 -0
- package/src/components/capability-gate/capability-gate.schema.ts +72 -0
- package/src/components/capability-gate/capability-gate.svelte +186 -0
- package/src/components/capability-gate/capability-gate.types.ts +83 -0
- package/src/components/capability-gate/capability-gate.variables.json +1 -0
- package/src/components/capability-gate/capability-gate.variables.ts +3 -0
- package/src/components/capability-gate/index.ts +10 -0
- package/src/components/card/README.md +1 -0
- package/src/components/card/card.css +4 -0
- package/src/components/card/card.examples.json +6 -0
- package/src/components/card/card.schema.json +4 -0
- package/src/components/card/card.schema.ts +5 -0
- package/src/components/card/card.svelte +9 -2
- package/src/components/card/card.types.ts +4 -0
- package/src/components/card/index.ts +1 -1
- package/src/components/chat/README.md +81 -0
- package/src/components/chat/container/chat-jump-controls.svelte +12 -9
- package/src/components/chat/input/chat-input.svelte +7 -8
- package/src/components/chat/message/chat-message.svelte +15 -20
- package/src/components/chat/message/tool-call-group.svelte +10 -4
- package/src/components/choice-grid/README.md +66 -0
- package/src/components/choice-grid/choice-grid-context.ts +30 -0
- package/src/components/choice-grid/choice-grid.css +27 -0
- package/src/components/choice-grid/choice-grid.examples.json +31 -0
- package/src/components/choice-grid/choice-grid.schema.json +61 -0
- package/src/components/choice-grid/choice-grid.schema.ts +70 -0
- package/src/components/choice-grid/choice-grid.svelte +272 -0
- package/src/components/choice-grid/choice-grid.types.ts +152 -0
- package/src/components/choice-grid/choice-grid.variables.json +1 -0
- package/src/components/choice-grid/choice-grid.variables.ts +3 -0
- package/src/components/choice-grid/index.ts +22 -0
- package/src/components/choice-grid-item/README.md +41 -0
- package/src/components/choice-grid-item/choice-grid-item.css +139 -0
- package/src/components/choice-grid-item/choice-grid-item.schema.json +32 -0
- package/src/components/choice-grid-item/choice-grid-item.schema.ts +38 -0
- package/src/components/choice-grid-item/choice-grid-item.svelte +139 -0
- package/src/components/choice-grid-item/choice-grid-item.types.ts +30 -0
- package/src/components/choice-grid-item/choice-grid-item.variables.json +1 -0
- package/src/components/choice-grid-item/choice-grid-item.variables.ts +3 -0
- package/src/components/choice-grid-item/index.ts +6 -0
- package/src/components/click-away-listener/README.md +50 -0
- package/src/components/color-field/color-field.css +6 -9
- package/src/components/color-picker/color-picker.css +31 -24
- package/src/components/color-swatch-picker/color-swatch-picker.css +6 -9
- package/src/components/command-menu/README.md +61 -0
- package/src/components/confirm-dialog/confirm-dialog.examples.json +6 -0
- package/src/components/context-menu/README.md +55 -0
- package/src/components/context-menu-trigger/README.md +50 -0
- package/src/components/context-menu-trigger/context-menu-trigger.svelte +5 -3
- package/src/components/data-table/README.md +67 -0
- package/src/components/data-table/data-table.css +30 -0
- package/src/components/data-table/data-table.examples.json +19 -0
- package/src/components/data-table/data-table.schema.json +43 -0
- package/src/components/data-table/data-table.schema.ts +50 -0
- package/src/components/data-table/data-table.svelte +106 -0
- package/src/components/data-table/data-table.types.ts +89 -0
- package/src/components/data-table/data-table.variables.json +1 -0
- package/src/components/data-table/data-table.variables.ts +3 -0
- package/src/components/data-table/index.ts +6 -0
- package/src/components/diff-viewer/README.md +59 -0
- package/src/components/diff-viewer/front-matter-header.svelte +20 -4
- package/src/components/dropdown-group/README.md +52 -0
- package/src/components/dropdown-item/README.md +10 -7
- package/src/components/dropdown-item/dropdown-item.schema.json +12 -0
- package/src/components/dropdown-item/dropdown-item.schema.ts +14 -0
- package/src/components/dropdown-item/dropdown-item.svelte +108 -25
- package/src/components/dropdown-item/dropdown-item.types.ts +58 -2
- package/src/components/dropdown-item/index.ts +6 -1
- package/src/components/floating-action-button/README.md +53 -0
- package/src/components/floating-action-button/floating-action-button.css +4 -2
- package/src/components/form-section/form-section.examples.json +6 -0
- package/src/components/hover-card/README.md +60 -0
- package/src/components/json-schema-editor/README.md +59 -0
- package/src/components/kanban-board/README.md +62 -0
- package/src/components/keyboard-shortcuts/README.md +51 -0
- package/src/components/keyboard-shortcuts/index.ts +10 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.css +84 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.examples.json +13 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.schema.json +27 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.schema.ts +31 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.svelte +91 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.types.ts +46 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.variables.json +1 -0
- package/src/components/keyboard-shortcuts/keyboard-shortcuts.variables.ts +3 -0
- package/src/components/line-chart/README.md +61 -0
- package/src/components/line-chart/line-chart.css +57 -8
- package/src/components/line-chart/line-chart.svelte +128 -10
- package/src/components/link/README.md +55 -0
- package/src/components/markdown-editor/README.md +70 -0
- package/src/components/markdown-editor/editor-toolbar/toolbar-button.svelte +9 -4
- package/src/components/markdown-editor/editor-toolbar/toolbar-dropdown.svelte +9 -4
- package/src/components/markdown-editor/prosemirror.css +4 -2
- package/src/components/matrix-chart/README.md +61 -0
- package/src/components/matrix-chart/index.ts +10 -0
- package/src/components/matrix-chart/matrix-chart.css +50 -0
- package/src/components/matrix-chart/matrix-chart.examples.json +19 -0
- package/src/components/matrix-chart/matrix-chart.schema.json +63 -0
- package/src/components/matrix-chart/matrix-chart.schema.ts +67 -0
- package/src/components/matrix-chart/matrix-chart.svelte +336 -0
- package/src/components/matrix-chart/matrix-chart.types.ts +56 -0
- package/src/components/matrix-chart/matrix-chart.variables.json +1 -0
- package/src/components/matrix-chart/matrix-chart.variables.ts +3 -0
- package/src/components/media-controls/README.md +60 -0
- package/src/components/media-controls/index.ts +6 -0
- package/src/components/media-controls/media-controls.css +112 -0
- package/src/components/media-controls/media-controls.examples.json +19 -0
- package/src/components/media-controls/media-controls.schema.json +65 -0
- package/src/components/media-controls/media-controls.schema.ts +69 -0
- package/src/components/media-controls/media-controls.svelte +238 -0
- package/src/components/media-controls/media-controls.types.ts +80 -0
- package/src/components/media-controls/media-controls.variables.json +1 -0
- package/src/components/media-controls/media-controls.variables.ts +3 -0
- package/src/components/menu-bar/README.md +53 -0
- package/src/components/navigation-bar/README.md +1 -1
- package/src/components/navigation-bar/navigation-bar.schema.json +4 -4
- package/src/components/navigation-bar/navigation-bar.schema.ts +4 -4
- package/src/components/navigation-bar/navigation-bar.types.ts +2 -1
- package/src/components/pricing-card/README.md +55 -0
- package/src/components/pricing-card/index.ts +6 -0
- package/src/components/pricing-card/pricing-card.css +173 -0
- package/src/components/pricing-card/pricing-card.examples.json +19 -0
- package/src/components/pricing-card/pricing-card.schema.json +40 -0
- package/src/components/pricing-card/pricing-card.schema.ts +44 -0
- package/src/components/pricing-card/pricing-card.svelte +70 -0
- package/src/components/pricing-card/pricing-card.types.ts +49 -0
- package/src/components/pricing-card/pricing-card.variables.json +1 -0
- package/src/components/pricing-card/pricing-card.variables.ts +3 -0
- package/src/components/review-editor/README.md +64 -0
- package/src/components/review-editor/comment-composer.svelte +8 -8
- package/src/components/review-editor/comment-list.svelte +10 -1
- package/src/components/search-field/search-field.examples.json +13 -0
- package/src/components/segment/README.md +55 -0
- package/src/components/share-card/README.md +58 -0
- package/src/components/share-card/index.ts +6 -0
- package/src/components/share-card/share-card.css +115 -0
- package/src/components/share-card/share-card.examples.json +19 -0
- package/src/components/share-card/share-card.schema.json +53 -0
- package/src/components/share-card/share-card.schema.ts +57 -0
- package/src/components/share-card/share-card.svelte +330 -0
- package/src/components/share-card/share-card.types.ts +69 -0
- package/src/components/share-card/share-card.variables.json +1 -0
- package/src/components/share-card/share-card.variables.ts +3 -0
- package/src/components/shortcut-hint/README.md +52 -0
- package/src/components/shortcut-hint/index.ts +6 -0
- package/src/components/shortcut-hint/shortcut-hint.css +26 -0
- package/src/components/shortcut-hint/shortcut-hint.examples.json +13 -0
- package/src/components/shortcut-hint/shortcut-hint.schema.json +36 -0
- package/src/components/shortcut-hint/shortcut-hint.schema.ts +40 -0
- package/src/components/shortcut-hint/shortcut-hint.svelte +62 -0
- package/src/components/shortcut-hint/shortcut-hint.types.ts +35 -0
- package/src/components/shortcut-hint/shortcut-hint.variables.json +1 -0
- package/src/components/shortcut-hint/shortcut-hint.variables.ts +3 -0
- package/src/components/side-navigation/side-navigation.examples.json +6 -0
- package/src/components/skip-link/README.md +50 -0
- package/src/components/skip-link/index.ts +5 -0
- package/src/components/skip-link/skip-link.examples.json +13 -0
- package/src/components/skip-link/skip-link.schema.json +16 -0
- package/src/components/skip-link/skip-link.schema.ts +20 -0
- package/src/components/skip-link/skip-link.svelte +86 -0
- package/src/components/skip-link/skip-link.types.ts +40 -0
- package/src/components/skip-link/skip-link.variables.json +1 -0
- package/src/components/skip-link/skip-link.variables.ts +3 -0
- package/src/components/spectrogram/README.md +58 -0
- package/src/components/spectrogram/index.ts +10 -0
- package/src/components/spectrogram/spectrogram.css +43 -0
- package/src/components/spectrogram/spectrogram.examples.json +13 -0
- package/src/components/spectrogram/spectrogram.schema.json +43 -0
- package/src/components/spectrogram/spectrogram.schema.ts +47 -0
- package/src/components/spectrogram/spectrogram.svelte +284 -0
- package/src/components/spectrogram/spectrogram.types.ts +63 -0
- package/src/components/spectrogram/spectrogram.variables.json +1 -0
- package/src/components/spectrogram/spectrogram.variables.ts +3 -0
- package/src/components/spectrum-chart/README.md +57 -0
- package/src/components/spectrum-chart/index.ts +10 -0
- package/src/components/spectrum-chart/spectrum-chart.css +49 -0
- package/src/components/spectrum-chart/spectrum-chart.examples.json +13 -0
- package/src/components/spectrum-chart/spectrum-chart.schema.json +37 -0
- package/src/components/spectrum-chart/spectrum-chart.schema.ts +41 -0
- package/src/components/spectrum-chart/spectrum-chart.svelte +247 -0
- package/src/components/spectrum-chart/spectrum-chart.types.ts +44 -0
- package/src/components/spectrum-chart/spectrum-chart.variables.json +1 -0
- package/src/components/spectrum-chart/spectrum-chart.variables.ts +3 -0
- package/src/components/status-dot/README.md +7 -7
- package/src/components/status-dot/status-dot.css +8 -0
- package/src/components/status-dot/status-dot.schema.json +2 -2
- package/src/components/status-dot/status-dot.schema.ts +3 -2
- package/src/components/status-dot/status-dot.types.ts +13 -2
- package/src/components/subscription-badge/README.md +50 -0
- package/src/components/subscription-badge/index.ts +6 -0
- package/src/components/subscription-badge/subscription-badge.css +18 -0
- package/src/components/subscription-badge/subscription-badge.examples.json +19 -0
- package/src/components/subscription-badge/subscription-badge.schema.json +16 -0
- package/src/components/subscription-badge/subscription-badge.schema.ts +21 -0
- package/src/components/subscription-badge/subscription-badge.svelte +69 -0
- package/src/components/subscription-badge/subscription-badge.types.ts +37 -0
- package/src/components/subscription-badge/subscription-badge.variables.json +1 -0
- package/src/components/subscription-badge/subscription-badge.variables.ts +3 -0
- package/src/components/table-cell/README.md +6 -5
- package/src/components/table-cell/table-cell.schema.json +4 -0
- package/src/components/table-cell/table-cell.schema.ts +5 -0
- package/src/components/table-cell/table-cell.svelte +9 -3
- package/src/components/table-cell/table-cell.types.ts +16 -1
- package/src/components/tag-input/README.md +75 -0
- package/src/components/typography/README.md +51 -0
- package/src/components/waveform/README.md +57 -0
- package/src/components/waveform/index.ts +6 -0
- package/src/components/waveform/waveform.css +53 -0
- package/src/components/waveform/waveform.examples.json +19 -0
- package/src/components/waveform/waveform.schema.json +38 -0
- package/src/components/waveform/waveform.schema.ts +42 -0
- package/src/components/waveform/waveform.svelte +286 -0
- package/src/components/waveform/waveform.types.ts +45 -0
- package/src/components/waveform/waveform.variables.json +1 -0
- package/src/components/waveform/waveform.variables.ts +3 -0
- package/src/index.ts +85 -2
- package/src/styles/components.css +13 -0
- package/src/styles/shell.css +3 -0
- package/src/styles/tokens-base.css +59 -22
|
@@ -1,10 +1,66 @@
|
|
|
1
1
|
import type { Snippet } from 'svelte';
|
|
2
|
-
import type { HTMLButtonAttributes } from 'svelte/elements';
|
|
2
|
+
import type { HTMLAnchorAttributes, HTMLAttributes, HTMLButtonAttributes } from 'svelte/elements';
|
|
3
|
+
|
|
3
4
|
export type DropdownItemVariant = 'default' | 'danger';
|
|
4
|
-
|
|
5
|
+
|
|
6
|
+
// The shared base carries the common HTML attribute surface — crucially the
|
|
7
|
+
// event handlers (onclick/onkeydown/onfocus/…) — typed against the generic
|
|
8
|
+
// `HTMLElement`. Both render paths (`<button>` and `<a>`) satisfy that, so a
|
|
9
|
+
// consumer can attach an inline handler without TypeScript forcing it to
|
|
10
|
+
// "prove" which branch it is on. Element-specific NON-event attributes live in
|
|
11
|
+
// the two branches so the `href` ⇄ `type` discriminant stays real.
|
|
12
|
+
type DropdownItemBase = Omit<HTMLAttributes<HTMLElement>, 'class'> & {
|
|
5
13
|
variant?: DropdownItemVariant;
|
|
6
14
|
inset?: boolean;
|
|
7
15
|
closeOnSelect?: boolean;
|
|
8
16
|
class?: string;
|
|
9
17
|
children?: Snippet;
|
|
18
|
+
/** When true the item is inert: click is blocked and aria-disabled is set. */
|
|
19
|
+
disabled?: boolean | undefined;
|
|
10
20
|
};
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Button variant — renders a `<button>`. Forwards every button-specific
|
|
24
|
+
* attribute (`name`, `value`, `form`, `formaction`, `formmethod`,
|
|
25
|
+
* `formnovalidate`, `formtarget`, `formenctype`, …) by subtracting the shared
|
|
26
|
+
* `HTMLElement` surface — which the base already provides with `HTMLElement`-typed
|
|
27
|
+
* event handlers — so a form-submitting menu item (`type="submit"` with `name`/
|
|
28
|
+
* `value`) keeps full typing without reintroducing the inline-handler
|
|
29
|
+
* contravariance trap. `disabled` is owned by the base (a managed click guard +
|
|
30
|
+
* aria-disabled), not the native attribute.
|
|
31
|
+
*/
|
|
32
|
+
export type DropdownItemButtonProps = DropdownItemBase &
|
|
33
|
+
Omit<HTMLButtonAttributes, keyof HTMLAttributes<HTMLElement> | 'class' | 'disabled' | 'type'> & {
|
|
34
|
+
href?: undefined;
|
|
35
|
+
/**
|
|
36
|
+
* Button type forwarded to the `<button>` element. Defaults to `"button"`.
|
|
37
|
+
*
|
|
38
|
+
* NOTE: `type="submit"` only submits a surrounding `<form>` when the menu
|
|
39
|
+
* stays inside that form's DOM subtree. DropdownMenu portals its panel to
|
|
40
|
+
* `document.body` on the non-popover fallback path, so a submit item is then
|
|
41
|
+
* NOT a form descendant and native submission is skipped. To submit a form
|
|
42
|
+
* from a portaled menu, set `form="<form-id>"` to associate the button with
|
|
43
|
+
* the form by id, or handle submission in `onclick`.
|
|
44
|
+
*/
|
|
45
|
+
type?: 'button' | 'submit' | 'reset';
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Anchor variant — renders an `<a href>`. `disabled` blocks navigation and sets
|
|
50
|
+
* aria-disabled. Forwards every anchor-specific attribute (`target`, `rel`,
|
|
51
|
+
* `download`, `ping`, `hreflang`, `referrerpolicy`, …) by subtracting the shared
|
|
52
|
+
* `HTMLElement` surface — which the base already provides with `HTMLElement`-typed
|
|
53
|
+
* event handlers — so the inline-handler contravariance trap never reappears.
|
|
54
|
+
*/
|
|
55
|
+
export type DropdownItemAnchorProps = DropdownItemBase &
|
|
56
|
+
Omit<HTMLAnchorAttributes, keyof HTMLAttributes<HTMLElement> | 'class' | 'href'> & {
|
|
57
|
+
/**
|
|
58
|
+
* Destination URL. Any defined value — including an empty string — selects
|
|
59
|
+
* the anchor branch and renders an `<a>`. Omit `href` entirely to render a
|
|
60
|
+
* `<button>`.
|
|
61
|
+
*/
|
|
62
|
+
href: string;
|
|
63
|
+
type?: undefined;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export type DropdownItemProps = DropdownItemButtonProps | DropdownItemAnchorProps;
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import DropdownItem from './dropdown-item.svelte';
|
|
2
2
|
|
|
3
3
|
export default DropdownItem;
|
|
4
|
-
export type {
|
|
4
|
+
export type {
|
|
5
|
+
DropdownItemAnchorProps,
|
|
6
|
+
DropdownItemButtonProps,
|
|
7
|
+
DropdownItemProps,
|
|
8
|
+
DropdownItemVariant,
|
|
9
|
+
} from './dropdown-item.types.ts';
|
|
5
10
|
export { DropdownItem };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# FloatingActionButton
|
|
2
|
+
|
|
3
|
+
Circular button representing the single most important action on a screen.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```svelte
|
|
8
|
+
<script lang="ts">
|
|
9
|
+
import { FloatingActionButton } from '@lostgradient/cinder/floating-action-button';
|
|
10
|
+
</script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Guidance
|
|
14
|
+
|
|
15
|
+
### Use When
|
|
16
|
+
|
|
17
|
+
- One action dominates the page purpose (compose, add, create).
|
|
18
|
+
|
|
19
|
+
### Avoid When
|
|
20
|
+
|
|
21
|
+
- Multiple equally-important actions exist — use a toolbar or button group.
|
|
22
|
+
- You need it pinned to the viewport — it doesn't position itself; wrap it in your own fixed/sticky container.
|
|
23
|
+
|
|
24
|
+
## Props
|
|
25
|
+
|
|
26
|
+
<!-- generated:props:start -->
|
|
27
|
+
|
|
28
|
+
| Prop | Type | Required | Default | Description |
|
|
29
|
+
| ---------- | ------------------------------------------- | -------- | ----------- | -------------------------------------------------------- |
|
|
30
|
+
| `class` | `string` | no | — | Custom class merged with `.cinder-fab`. |
|
|
31
|
+
| `color` | `"primary"` \| `"secondary"` \| `"surface"` | no | `"primary"` | Color palette. |
|
|
32
|
+
| `disabled` | `boolean` | no | `false` | When true, disables the button and prevents interaction. |
|
|
33
|
+
| `href` | `string` | no | — | Render as an anchor `<a>` element with this href. |
|
|
34
|
+
| `size` | `"sm"` \| `"md"` \| `"lg"` | no | `"md"` | Size of the FAB. |
|
|
35
|
+
| `variant` | `"filled"` \| `"extended"` | no | `"filled"` | Visual variant. `filled` = circle, `extended` = pill. |
|
|
36
|
+
|
|
37
|
+
<!-- generated:props:end -->
|
|
38
|
+
|
|
39
|
+
## CSS Variables
|
|
40
|
+
|
|
41
|
+
<!-- generated:variables:start -->
|
|
42
|
+
|
|
43
|
+
This component does not declare any local CSS variables.
|
|
44
|
+
|
|
45
|
+
<!-- generated:variables:end -->
|
|
46
|
+
|
|
47
|
+
## Subcomponents
|
|
48
|
+
|
|
49
|
+
<!-- generated:subcomponents:start -->
|
|
50
|
+
|
|
51
|
+
None.
|
|
52
|
+
|
|
53
|
+
<!-- generated:subcomponents:end -->
|
|
@@ -179,9 +179,11 @@
|
|
|
179
179
|
}
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
/* :active placed after hover media so press feedback fires on tap as well
|
|
182
|
+
/* :active placed after hover media so press feedback fires on tap as well.
|
|
183
|
+
Uses the gentler on-fill pressed token so the --cinder-accent-contrast label stays
|
|
184
|
+
AA-legible on the pressed fill (see --cinder-accent-active-on-fill in tokens-base.css). */
|
|
183
185
|
.cinder-fab[data-cinder-color='primary']:active:not(:disabled):not([aria-disabled='true']) {
|
|
184
|
-
background: var(--cinder-accent-active);
|
|
186
|
+
background: var(--cinder-accent-active-on-fill);
|
|
185
187
|
}
|
|
186
188
|
|
|
187
189
|
.cinder-fab[data-cinder-color='secondary']:active:not(:disabled):not([aria-disabled='true']) {
|
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
"component": "form-section",
|
|
4
4
|
"import": "@lostgradient/cinder/form-section",
|
|
5
5
|
"examples": [
|
|
6
|
+
{
|
|
7
|
+
"id": "account-settings",
|
|
8
|
+
"title": "Account settings panel",
|
|
9
|
+
"description": "FormSection groups related account and privacy controls under a headed section. Text fields use FormField + Input; on/off settings use Toggle standalone (it renders its own label).",
|
|
10
|
+
"code": "<script lang=\"ts\">\n import { FormField } from '@lostgradient/cinder/form-field';\n import { FormSection } from '@lostgradient/cinder/form-section';\n import { Input } from '@lostgradient/cinder/input';\n import { Toggle } from '@lostgradient/cinder/toggle';\n\n let displayName = $state('');\n let email = $state('');\n let publicProfile = $state(true);\n let marketingEmails = $state(false);\n</script>\n\n<div style=\"display: flex; flex-direction: column; gap: 2rem;\">\n <FormSection\n heading=\"Account\"\n headingLevel={2}\n description=\"Update your display name and email address.\"\n columns={2}\n >\n <FormField id=\"display-name\" label=\"Display name\">\n <Input id=\"display-name\" bind:value={displayName} placeholder=\"Jane Smith\" />\n </FormField>\n <FormField id=\"account-email\" label=\"Email address\">\n <Input id=\"account-email\" bind:value={email} type=\"email\" placeholder=\"jane@example.com\" />\n </FormField>\n </FormSection>\n\n <FormSection\n heading=\"Privacy\"\n headingLevel={2}\n description=\"Control who can see your profile and what communications you receive.\"\n >\n <Toggle id=\"public-profile\" bind:checked={publicProfile} label=\"Public profile\" />\n <Toggle id=\"marketing-emails\" bind:checked={marketingEmails} label=\"Marketing emails\" />\n </FormSection>\n</div>\n"
|
|
11
|
+
},
|
|
6
12
|
{
|
|
7
13
|
"id": "fieldset-legend",
|
|
8
14
|
"title": "Fieldset with legend",
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# HoverCard
|
|
2
|
+
|
|
3
|
+
Hover-and-focus triggered rich preview card for non-interactive contextual content.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```svelte
|
|
8
|
+
<script lang="ts">
|
|
9
|
+
import { HoverCard } from '@lostgradient/cinder/hover-card';
|
|
10
|
+
</script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Guidance
|
|
14
|
+
|
|
15
|
+
### Use When
|
|
16
|
+
|
|
17
|
+
- Showing a profile, issue, or metadata preview that is richer than a tooltip but still read-only.
|
|
18
|
+
- Revealing supplementary preview content on pointer hover or keyboard focus without moving focus.
|
|
19
|
+
|
|
20
|
+
### Avoid When
|
|
21
|
+
|
|
22
|
+
- The floating content contains focusable controls — use popover.
|
|
23
|
+
- The trigger needs a short accessible description — use tooltip.
|
|
24
|
+
|
|
25
|
+
## Props
|
|
26
|
+
|
|
27
|
+
<!-- generated:props:start -->
|
|
28
|
+
|
|
29
|
+
| Prop | Type | Required | Default | Description |
|
|
30
|
+
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------- |
|
|
31
|
+
| `class` | `string` | no | — | |
|
|
32
|
+
| `closeDelay` | `number` | no | — | |
|
|
33
|
+
| `description` | `string` | no | — | |
|
|
34
|
+
| `offset` | `number` | no | — | |
|
|
35
|
+
| `open` | `boolean` | no | — | |
|
|
36
|
+
| `openDelay` | `number` | no | — | |
|
|
37
|
+
| `placement` | `"top"` \| `"top-start"` \| `"top-end"` \| `"right"` \| `"right-start"` \| `"right-end"` \| `"bottom"` \| `"bottom-start"` \| `"bottom-end"` \| `"left"` \| `"left-start"` \| `"left-end"` | no | — | |
|
|
38
|
+
| `showArrow` | `boolean` | no | — | |
|
|
39
|
+
| `children` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
40
|
+
| `onopenchange` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
41
|
+
| `trigger` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
42
|
+
| `triggerRef` | `(opaque)` | no | — | A prop whose shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
43
|
+
|
|
44
|
+
<!-- generated:props:end -->
|
|
45
|
+
|
|
46
|
+
## CSS Variables
|
|
47
|
+
|
|
48
|
+
<!-- generated:variables:start -->
|
|
49
|
+
|
|
50
|
+
This component does not declare any local CSS variables.
|
|
51
|
+
|
|
52
|
+
<!-- generated:variables:end -->
|
|
53
|
+
|
|
54
|
+
## Subcomponents
|
|
55
|
+
|
|
56
|
+
<!-- generated:subcomponents:start -->
|
|
57
|
+
|
|
58
|
+
None.
|
|
59
|
+
|
|
60
|
+
<!-- generated:subcomponents:end -->
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# JsonSchemaEditor
|
|
2
|
+
|
|
3
|
+
Multi-view editor for authoring JSON Schema documents with form, raw JSON, and diff modes plus undo history and validation.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```svelte
|
|
8
|
+
<script lang="ts">
|
|
9
|
+
import { JsonSchemaEditor } from '@lostgradient/cinder/json-schema-editor';
|
|
10
|
+
</script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Guidance
|
|
14
|
+
|
|
15
|
+
### Use When
|
|
16
|
+
|
|
17
|
+
- Letting users edit a JSON Schema with a guided form alongside the raw source.
|
|
18
|
+
- Reviewing schema changes against a baseline via the built-in diff view.
|
|
19
|
+
|
|
20
|
+
### Avoid When
|
|
21
|
+
|
|
22
|
+
- Editing arbitrary free-form JSON with no schema semantics — use a plain code editor instead.
|
|
23
|
+
|
|
24
|
+
## Props
|
|
25
|
+
|
|
26
|
+
<!-- generated:props:start -->
|
|
27
|
+
|
|
28
|
+
| Prop | Type | Required | Default | Description |
|
|
29
|
+
| --------------- | ------------------------------------------ | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------- |
|
|
30
|
+
| `class` | `string` | no | — | |
|
|
31
|
+
| `draftOverride` | `"2020-12"` \| `"2019-09"` \| `"draft-07"` | no | — | Force a draft override regardless of $schema. |
|
|
32
|
+
| `id` | `string` | yes | — | Required for ARIA wiring. |
|
|
33
|
+
| `maxHistory` | `number` | no | — | Maximum history entries (default 100). |
|
|
34
|
+
| `readonly` | `boolean` | no | — | Read-only mode disables all mutations. |
|
|
35
|
+
| `schemaKey` | `string` | no | — | Changing this triggers a full reset (history clears). |
|
|
36
|
+
| `view` | `"form"` \| `"json"` \| `"diff"` | no | — | Active view: form / json / diff. Bindable. |
|
|
37
|
+
| `onchange` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
38
|
+
| `onrevert` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
39
|
+
| `onvalidate` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
40
|
+
| `original` | `(opaque)` | no | — | A prop whose shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
41
|
+
| `schema` | `(opaque)` | no | — | A prop whose shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
42
|
+
|
|
43
|
+
<!-- generated:props:end -->
|
|
44
|
+
|
|
45
|
+
## CSS Variables
|
|
46
|
+
|
|
47
|
+
<!-- generated:variables:start -->
|
|
48
|
+
|
|
49
|
+
This component does not declare any local CSS variables.
|
|
50
|
+
|
|
51
|
+
<!-- generated:variables:end -->
|
|
52
|
+
|
|
53
|
+
## Subcomponents
|
|
54
|
+
|
|
55
|
+
<!-- generated:subcomponents:start -->
|
|
56
|
+
|
|
57
|
+
None.
|
|
58
|
+
|
|
59
|
+
<!-- generated:subcomponents:end -->
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# KanbanBoard
|
|
2
|
+
|
|
3
|
+
Controlled multi-column board for reordering cards within and across workflow columns with keyboard, pointer, and live-region feedback.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```svelte
|
|
8
|
+
<script lang="ts">
|
|
9
|
+
import { KanbanBoard } from '@lostgradient/cinder/kanban-board';
|
|
10
|
+
</script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Guidance
|
|
14
|
+
|
|
15
|
+
### Use When
|
|
16
|
+
|
|
17
|
+
- Presenting a workflow board where users move cards between ordered columns.
|
|
18
|
+
- Consumers own card rendering and need cinder to manage reorder affordances and change metadata.
|
|
19
|
+
|
|
20
|
+
### Avoid When
|
|
21
|
+
|
|
22
|
+
- Showing a single ordered list — use sortable-list instead.
|
|
23
|
+
- Sorting by computed fields rather than direct manual placement.
|
|
24
|
+
|
|
25
|
+
## Props
|
|
26
|
+
|
|
27
|
+
<!-- generated:props:start -->
|
|
28
|
+
|
|
29
|
+
| Prop | Type | Required | Default | Description |
|
|
30
|
+
| ---------------- | ---------- | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------- |
|
|
31
|
+
| `class` | `string` | no | — | |
|
|
32
|
+
| `collapsible` | `boolean` | no | — | |
|
|
33
|
+
| `label` | `string` | no | — | |
|
|
34
|
+
| `reorderColumns` | `boolean` | no | — | |
|
|
35
|
+
| `card` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
36
|
+
| `columnActions` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
37
|
+
| `columnHeader` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
38
|
+
| `columns` | `(opaque)` | no | — | A prop whose shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
39
|
+
| `emptyColumn` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
40
|
+
| `getCardKey` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
41
|
+
| `getCardLabel` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
42
|
+
| `onchange` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
43
|
+
|
|
44
|
+
<!-- generated:props:end -->
|
|
45
|
+
|
|
46
|
+
## CSS Variables
|
|
47
|
+
|
|
48
|
+
<!-- generated:variables:start -->
|
|
49
|
+
|
|
50
|
+
- `--cinder-kanban-card-background`
|
|
51
|
+
- `--cinder-kanban-column-background`
|
|
52
|
+
- `--cinder-kanban-column-gap`
|
|
53
|
+
- `--cinder-kanban-column-width`
|
|
54
|
+
<!-- generated:variables:end -->
|
|
55
|
+
|
|
56
|
+
## Subcomponents
|
|
57
|
+
|
|
58
|
+
<!-- generated:subcomponents:start -->
|
|
59
|
+
|
|
60
|
+
None.
|
|
61
|
+
|
|
62
|
+
<!-- generated:subcomponents:end -->
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# KeyboardShortcuts
|
|
2
|
+
|
|
3
|
+
Grouped keyboard-shortcut reference that renders key combos via Kbd with accessible labels not reliant only on visual keycaps.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```svelte
|
|
8
|
+
<script lang="ts">
|
|
9
|
+
import { KeyboardShortcuts } from '@lostgradient/cinder/keyboard-shortcuts';
|
|
10
|
+
</script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Guidance
|
|
14
|
+
|
|
15
|
+
### Use When
|
|
16
|
+
|
|
17
|
+
- Displaying a reference panel of keyboard shortcuts grouped by feature area.
|
|
18
|
+
- Embedding a shortcut table inside a modal, sheet, popover, or help page.
|
|
19
|
+
|
|
20
|
+
### Avoid When
|
|
21
|
+
|
|
22
|
+
- Showing a single inline shortcut hint — use shortcut-hint instead.
|
|
23
|
+
|
|
24
|
+
## Props
|
|
25
|
+
|
|
26
|
+
<!-- generated:props:start -->
|
|
27
|
+
|
|
28
|
+
| Prop | Type | Required | Default | Description |
|
|
29
|
+
| ---------- | ---------- | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------- |
|
|
30
|
+
| `class` | `string` | no | — | Additional class names merged with `.cinder-keyboard-shortcuts`. |
|
|
31
|
+
| `heading` | `string` | no | — | Optional heading for the entire shortcuts panel. |
|
|
32
|
+
| `children` | `(opaque)` | no | — | A function or snippet prop. Its shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
33
|
+
| `groups` | `(opaque)` | no | — | A prop whose shape is not captured by the JSON schema; see the component types for the exact signature. |
|
|
34
|
+
|
|
35
|
+
<!-- generated:props:end -->
|
|
36
|
+
|
|
37
|
+
## CSS Variables
|
|
38
|
+
|
|
39
|
+
<!-- generated:variables:start -->
|
|
40
|
+
|
|
41
|
+
This component does not declare any local CSS variables.
|
|
42
|
+
|
|
43
|
+
<!-- generated:variables:end -->
|
|
44
|
+
|
|
45
|
+
## Subcomponents
|
|
46
|
+
|
|
47
|
+
<!-- generated:subcomponents:start -->
|
|
48
|
+
|
|
49
|
+
None.
|
|
50
|
+
|
|
51
|
+
<!-- generated:subcomponents:end -->
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import './keyboard-shortcuts.css';
|
|
2
|
+
import KeyboardShortcuts from './keyboard-shortcuts.svelte';
|
|
3
|
+
|
|
4
|
+
export default KeyboardShortcuts;
|
|
5
|
+
export type {
|
|
6
|
+
KeyboardShortcutEntry,
|
|
7
|
+
KeyboardShortcutGroup,
|
|
8
|
+
KeyboardShortcutsProps,
|
|
9
|
+
} from './keyboard-shortcuts.types.ts';
|
|
10
|
+
export { KeyboardShortcuts };
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
@layer cinder.tokens, cinder.foundation, cinder.components, cinder.utilities;
|
|
2
|
+
@layer cinder.components {
|
|
3
|
+
.cinder-keyboard-shortcuts {
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
gap: var(--cinder-space-4);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.cinder-keyboard-shortcuts__heading {
|
|
10
|
+
font-size: var(--cinder-text-lg);
|
|
11
|
+
font-weight: 600;
|
|
12
|
+
color: var(--cinder-text);
|
|
13
|
+
margin: 0;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.cinder-keyboard-shortcuts__intro {
|
|
17
|
+
font-size: var(--cinder-text-sm);
|
|
18
|
+
color: var(--cinder-text-muted);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.cinder-keyboard-shortcuts__group {
|
|
22
|
+
display: flex;
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
gap: var(--cinder-space-2);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.cinder-keyboard-shortcuts__group-label {
|
|
28
|
+
font-size: var(--cinder-text-xs);
|
|
29
|
+
font-weight: 600;
|
|
30
|
+
text-transform: uppercase;
|
|
31
|
+
letter-spacing: 0.05em;
|
|
32
|
+
color: var(--cinder-text-muted);
|
|
33
|
+
margin: 0;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.cinder-keyboard-shortcuts__list {
|
|
37
|
+
display: flex;
|
|
38
|
+
flex-direction: column;
|
|
39
|
+
gap: 0;
|
|
40
|
+
margin: 0;
|
|
41
|
+
padding: 0;
|
|
42
|
+
border: 1px solid var(--cinder-border);
|
|
43
|
+
border-radius: var(--cinder-radius-md);
|
|
44
|
+
overflow: hidden;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.cinder-keyboard-shortcuts__row {
|
|
48
|
+
display: flex;
|
|
49
|
+
align-items: center;
|
|
50
|
+
justify-content: space-between;
|
|
51
|
+
padding: var(--cinder-space-1) var(--cinder-space-2);
|
|
52
|
+
gap: var(--cinder-space-3);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.cinder-keyboard-shortcuts__row + .cinder-keyboard-shortcuts__row {
|
|
56
|
+
border-top: 1px solid var(--cinder-border);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.cinder-keyboard-shortcuts__action {
|
|
60
|
+
font-size: var(--cinder-text-sm);
|
|
61
|
+
color: var(--cinder-text);
|
|
62
|
+
flex: 1;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.cinder-keyboard-shortcuts__keys {
|
|
66
|
+
display: flex;
|
|
67
|
+
align-items: center;
|
|
68
|
+
flex-shrink: 0;
|
|
69
|
+
margin: 0;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.cinder-keyboard-shortcuts__keys-visual {
|
|
73
|
+
display: inline-flex;
|
|
74
|
+
align-items: center;
|
|
75
|
+
gap: var(--cinder-space-1);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.cinder-keyboard-shortcuts__separator {
|
|
79
|
+
font-size: var(--cinder-text-xs);
|
|
80
|
+
color: var(--cinder-text-muted);
|
|
81
|
+
line-height: 1;
|
|
82
|
+
user-select: none;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "../../schemas/examples.schema.json",
|
|
3
|
+
"component": "keyboard-shortcuts",
|
|
4
|
+
"import": "@lostgradient/cinder/keyboard-shortcuts",
|
|
5
|
+
"examples": [
|
|
6
|
+
{
|
|
7
|
+
"id": "command-palette",
|
|
8
|
+
"title": "Command palette shortcuts reference",
|
|
9
|
+
"description": "A grouped shortcut reference panel suitable for embedding in a modal or sheet.",
|
|
10
|
+
"code": "<script lang=\"ts\">\n import { KeyboardShortcuts } from '@lostgradient/cinder/keyboard-shortcuts';\n</script>\n\n<div style=\"max-width: 28rem;\">\n <KeyboardShortcuts\n heading=\"Keyboard Shortcuts\"\n groups={[\n {\n label: 'General',\n shortcuts: [\n { action: 'Open command palette', keys: ['Ctrl', 'K'], keysLabel: 'Control plus K' },\n { action: 'Search', keys: ['Ctrl', 'F'], keysLabel: 'Control plus F' },\n { action: 'Go back', keys: ['Alt', '←'], keysLabel: 'Alt plus Left arrow' },\n ],\n },\n {\n label: 'Editing',\n shortcuts: [\n { action: 'Save', keys: ['Ctrl', 'S'], keysLabel: 'Control plus S' },\n { action: 'Undo', keys: ['Ctrl', 'Z'], keysLabel: 'Control plus Z' },\n { action: 'Redo', keys: ['Ctrl', 'Shift', 'Z'], keysLabel: 'Control plus Shift plus Z' },\n ],\n },\n ]}\n />\n</div>\n"
|
|
11
|
+
}
|
|
12
|
+
]
|
|
13
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"heading": {
|
|
6
|
+
"type": "string",
|
|
7
|
+
"description": "Optional heading for the entire shortcuts panel."
|
|
8
|
+
},
|
|
9
|
+
"class": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "Additional class names merged with `.cinder-keyboard-shortcuts`."
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"additionalProperties": false,
|
|
15
|
+
"metadata": {
|
|
16
|
+
"unsupportedProps": [
|
|
17
|
+
{
|
|
18
|
+
"name": "children",
|
|
19
|
+
"reason": "function-or-snippet"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "groups",
|
|
23
|
+
"reason": "unknown-shape"
|
|
24
|
+
}
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ComponentSchema } from '../../schema-types';
|
|
2
|
+
|
|
3
|
+
const schema = {
|
|
4
|
+
$schema: 'https://json-schema.org/draft/2020-12/schema',
|
|
5
|
+
type: 'object',
|
|
6
|
+
properties: {
|
|
7
|
+
heading: {
|
|
8
|
+
type: 'string',
|
|
9
|
+
description: 'Optional heading for the entire shortcuts panel.',
|
|
10
|
+
},
|
|
11
|
+
class: {
|
|
12
|
+
type: 'string',
|
|
13
|
+
description: 'Additional class names merged with `.cinder-keyboard-shortcuts`.',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
additionalProperties: false,
|
|
17
|
+
metadata: {
|
|
18
|
+
unsupportedProps: [
|
|
19
|
+
{
|
|
20
|
+
name: 'children',
|
|
21
|
+
reason: 'function-or-snippet',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'groups',
|
|
25
|
+
reason: 'unknown-shape',
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
},
|
|
29
|
+
} satisfies ComponentSchema;
|
|
30
|
+
|
|
31
|
+
export default schema as ComponentSchema;
|