@jovertical/mise-design-system 0.0.0-stage → 1.1.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/LICENSE +21 -0
- package/LICENSES/shadcn-svelte.txt +23 -0
- package/LICENSES/shadcn-ui.txt +21 -0
- package/LICENSES/tailwindcss.txt +21 -0
- package/README.md +127 -2
- package/bin/mise-theme.js +12 -0
- package/dist/components/actions/button/button-variants.d.ts +37 -0
- package/dist/components/actions/button/button-variants.js +99 -0
- package/dist/components/actions/button/button.svelte +84 -0
- package/dist/components/actions/button/button.svelte.d.ts +17 -0
- package/dist/components/actions/button/index.d.ts +2 -0
- package/dist/components/actions/button/index.js +2 -0
- package/dist/components/actions/command/command-dialog.svelte +60 -0
- package/dist/components/actions/command/command-dialog.svelte.d.ts +17 -0
- package/dist/components/actions/command/command-empty.svelte +24 -0
- package/dist/components/actions/command/command-empty.svelte.d.ts +6 -0
- package/dist/components/actions/command/command-group.svelte +43 -0
- package/dist/components/actions/command/command-group.svelte.d.ts +8 -0
- package/dist/components/actions/command/command-input.svelte +38 -0
- package/dist/components/actions/command/command-input.svelte.d.ts +6 -0
- package/dist/components/actions/command/command-item.svelte +27 -0
- package/dist/components/actions/command/command-item.svelte.d.ts +6 -0
- package/dist/components/actions/command/command-list.svelte +24 -0
- package/dist/components/actions/command/command-list.svelte.d.ts +6 -0
- package/dist/components/actions/command/command-separator.svelte +24 -0
- package/dist/components/actions/command/command-separator.svelte.d.ts +6 -0
- package/dist/components/actions/command/command-shortcut.svelte +33 -0
- package/dist/components/actions/command/command-shortcut.svelte.d.ts +7 -0
- package/dist/components/actions/command/command.svelte +37 -0
- package/dist/components/actions/command/command.svelte.d.ts +10 -0
- package/dist/components/actions/command/index.d.ts +9 -0
- package/dist/components/actions/command/index.js +9 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-checkbox-item.svelte +52 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-checkbox-item.svelte.d.ts +9 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-content.svelte +38 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-content.svelte.d.ts +8 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-group.svelte +16 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-group.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-item.svelte +39 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-item.svelte.d.ts +9 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-label.svelte +37 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-label.svelte.d.ts +8 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-portal.svelte +16 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-portal.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-radio-group.svelte +25 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-radio-item.svelte +50 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-radio-item.svelte.d.ts +9 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-separator.svelte +23 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-separator.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-shortcut.svelte +32 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-shortcut.svelte.d.ts +6 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-sub-content.svelte +26 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-sub-content.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-sub-trigger.svelte +41 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-sub-trigger.svelte.d.ts +7 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-sub.svelte +16 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-sub.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-trigger.svelte +16 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu-trigger.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu.svelte +16 -0
- package/dist/components/actions/dropdown-menu/dropdown-menu.svelte.d.ts +5 -0
- package/dist/components/actions/dropdown-menu/index.d.ts +15 -0
- package/dist/components/actions/dropdown-menu/index.js +15 -0
- package/dist/components/actions/theme-toggle/index.d.ts +3 -0
- package/dist/components/actions/theme-toggle/index.js +3 -0
- package/dist/components/actions/theme-toggle/theme-provider.svelte +49 -0
- package/dist/components/actions/theme-toggle/theme-provider.svelte.d.ts +19 -0
- package/dist/components/actions/theme-toggle/theme-toggle.svelte +48 -0
- package/dist/components/actions/theme-toggle/theme-toggle.svelte.d.ts +13 -0
- package/dist/components/actions/theme-toggle/theme.svelte.d.ts +17 -0
- package/dist/components/actions/theme-toggle/theme.svelte.js +45 -0
- package/dist/components/data-display/avatar/avatar-fallback.svelte +29 -0
- package/dist/components/data-display/avatar/avatar-fallback.svelte.d.ts +6 -0
- package/dist/components/data-display/avatar/avatar-image.svelte +23 -0
- package/dist/components/data-display/avatar/avatar-image.svelte.d.ts +5 -0
- package/dist/components/data-display/avatar/avatar-status.svelte +48 -0
- package/dist/components/data-display/avatar/avatar-status.svelte.d.ts +16 -0
- package/dist/components/data-display/avatar/avatar.svelte +24 -0
- package/dist/components/data-display/avatar/avatar.svelte.d.ts +6 -0
- package/dist/components/data-display/avatar/index.d.ts +5 -0
- package/dist/components/data-display/avatar/index.js +5 -0
- package/dist/components/data-display/avatar/presence-dot.svelte +42 -0
- package/dist/components/data-display/avatar/presence-dot.svelte.d.ts +14 -0
- package/dist/components/data-display/badge/badge-variants.d.ts +6 -0
- package/dist/components/data-display/badge/badge-variants.js +53 -0
- package/dist/components/data-display/badge/badge.svelte +66 -0
- package/dist/components/data-display/badge/badge.svelte.d.ts +29 -0
- package/dist/components/data-display/badge/index.d.ts +2 -0
- package/dist/components/data-display/badge/index.js +2 -0
- package/dist/components/data-display/chart/chart-defaults.d.ts +22 -0
- package/dist/components/data-display/chart/chart-defaults.js +19 -0
- package/dist/components/data-display/chart/chart-style.svelte +49 -0
- package/dist/components/data-display/chart/chart-style.svelte.d.ts +9 -0
- package/dist/components/data-display/chart/chart-tooltip.svelte +201 -0
- package/dist/components/data-display/chart/chart-tooltip.svelte.d.ts +30 -0
- package/dist/components/data-display/chart/chart-utils.d.ts +42 -0
- package/dist/components/data-display/chart/chart-utils.js +42 -0
- package/dist/components/data-display/chart/chart.svelte +105 -0
- package/dist/components/data-display/chart/chart.svelte.d.ts +15 -0
- package/dist/components/data-display/chart/index.d.ts +5 -0
- package/dist/components/data-display/chart/index.js +5 -0
- package/dist/components/data-display/checklist/checklist-card.svelte +157 -0
- package/dist/components/data-display/checklist/checklist-card.svelte.d.ts +47 -0
- package/dist/components/data-display/checklist/checklist-row-heading.svelte +56 -0
- package/dist/components/data-display/checklist/checklist-row-heading.svelte.d.ts +10 -0
- package/dist/components/data-display/checklist/checklist-task-row.svelte +101 -0
- package/dist/components/data-display/checklist/checklist-task-row.svelte.d.ts +9 -0
- package/dist/components/data-display/checklist/checklist-types.d.ts +51 -0
- package/dist/components/data-display/checklist/checklist-types.js +6 -0
- package/dist/components/data-display/checklist/checklist.svelte +78 -0
- package/dist/components/data-display/checklist/checklist.svelte.d.ts +24 -0
- package/dist/components/data-display/checklist/index.d.ts +3 -0
- package/dist/components/data-display/checklist/index.js +2 -0
- package/dist/components/data-display/data-table/data-table-column-header.svelte +99 -0
- package/dist/components/data-display/data-table/data-table-column-header.svelte.d.ts +38 -0
- package/dist/components/data-display/data-table/data-table-column-toggle.svelte +68 -0
- package/dist/components/data-display/data-table/data-table-column-toggle.svelte.d.ts +33 -0
- package/dist/components/data-display/data-table/data-table-export-menu.svelte +93 -0
- package/dist/components/data-display/data-table/data-table-export-menu.svelte.d.ts +18 -0
- package/dist/components/data-display/data-table/data-table-faceted-filter.svelte +133 -0
- package/dist/components/data-display/data-table/data-table-faceted-filter.svelte.d.ts +50 -0
- package/dist/components/data-display/data-table/data-table-row-actions.svelte +79 -0
- package/dist/components/data-display/data-table/data-table-row-actions.svelte.d.ts +28 -0
- package/dist/components/data-display/data-table/data-table-toolbar.svelte +180 -0
- package/dist/components/data-display/data-table/data-table-toolbar.svelte.d.ts +70 -0
- package/dist/components/data-display/data-table/data-table-view-toggle.svelte +39 -0
- package/dist/components/data-display/data-table/data-table-view-toggle.svelte.d.ts +12 -0
- package/dist/components/data-display/data-table/data-table.svelte +468 -0
- package/dist/components/data-display/data-table/data-table.svelte.d.ts +103 -0
- package/dist/components/data-display/data-table/features.d.ts +51 -0
- package/dist/components/data-display/data-table/features.js +27 -0
- package/dist/components/data-display/data-table/index.d.ts +9 -0
- package/dist/components/data-display/data-table/index.js +9 -0
- package/dist/components/data-display/delta-badge/delta-badge.svelte +87 -0
- package/dist/components/data-display/delta-badge/delta-badge.svelte.d.ts +39 -0
- package/dist/components/data-display/delta-badge/index.d.ts +1 -0
- package/dist/components/data-display/delta-badge/index.js +1 -0
- package/dist/components/data-display/entity-label/entity-label.svelte +77 -0
- package/dist/components/data-display/entity-label/entity-label.svelte.d.ts +33 -0
- package/dist/components/data-display/entity-label/index.d.ts +1 -0
- package/dist/components/data-display/entity-label/index.js +1 -0
- package/dist/components/data-display/fact-list/fact-list-item.svelte +113 -0
- package/dist/components/data-display/fact-list/fact-list-item.svelte.d.ts +43 -0
- package/dist/components/data-display/fact-list/fact-list.svelte +48 -0
- package/dist/components/data-display/fact-list/fact-list.svelte.d.ts +21 -0
- package/dist/components/data-display/fact-list/index.d.ts +2 -0
- package/dist/components/data-display/fact-list/index.js +2 -0
- package/dist/components/data-display/icon-chip/icon-chip-variants.d.ts +21 -0
- package/dist/components/data-display/icon-chip/icon-chip-variants.js +44 -0
- package/dist/components/data-display/icon-chip/icon-chip.svelte +53 -0
- package/dist/components/data-display/icon-chip/icon-chip.svelte.d.ts +23 -0
- package/dist/components/data-display/icon-chip/index.d.ts +2 -0
- package/dist/components/data-display/icon-chip/index.js +2 -0
- package/dist/components/data-display/item/index.d.ts +11 -0
- package/dist/components/data-display/item/index.js +11 -0
- package/dist/components/data-display/item/item-actions.svelte +27 -0
- package/dist/components/data-display/item/item-actions.svelte.d.ts +6 -0
- package/dist/components/data-display/item/item-content.svelte +27 -0
- package/dist/components/data-display/item/item-content.svelte.d.ts +6 -0
- package/dist/components/data-display/item/item-description.svelte +39 -0
- package/dist/components/data-display/item/item-description.svelte.d.ts +7 -0
- package/dist/components/data-display/item/item-footer.svelte +27 -0
- package/dist/components/data-display/item/item-footer.svelte.d.ts +6 -0
- package/dist/components/data-display/item/item-group.svelte +34 -0
- package/dist/components/data-display/item/item-group.svelte.d.ts +11 -0
- package/dist/components/data-display/item/item-header.svelte +27 -0
- package/dist/components/data-display/item/item-header.svelte.d.ts +6 -0
- package/dist/components/data-display/item/item-media.svelte +63 -0
- package/dist/components/data-display/item/item-media.svelte.d.ts +23 -0
- package/dist/components/data-display/item/item-separator.svelte +25 -0
- package/dist/components/data-display/item/item-separator.svelte.d.ts +5 -0
- package/dist/components/data-display/item/item-title.svelte +27 -0
- package/dist/components/data-display/item/item-title.svelte.d.ts +6 -0
- package/dist/components/data-display/item/item-variants.d.ts +17 -0
- package/dist/components/data-display/item/item-variants.js +37 -0
- package/dist/components/data-display/item/item.svelte +70 -0
- package/dist/components/data-display/item/item.svelte.d.ts +30 -0
- package/dist/components/data-display/metric-bar/index.d.ts +2 -0
- package/dist/components/data-display/metric-bar/index.js +2 -0
- package/dist/components/data-display/metric-bar/metric-bar.svelte +122 -0
- package/dist/components/data-display/metric-bar/metric-bar.svelte.d.ts +41 -0
- package/dist/components/data-display/metric-bar/metric-rank.svelte +33 -0
- package/dist/components/data-display/metric-bar/metric-rank.svelte.d.ts +12 -0
- package/dist/components/data-display/metric-grid/index.d.ts +1 -0
- package/dist/components/data-display/metric-grid/index.js +1 -0
- package/dist/components/data-display/metric-grid/metric-grid.svelte +66 -0
- package/dist/components/data-display/metric-grid/metric-grid.svelte.d.ts +35 -0
- package/dist/components/data-display/metric-row/index.d.ts +1 -0
- package/dist/components/data-display/metric-row/index.js +1 -0
- package/dist/components/data-display/metric-row/metric-row.svelte +175 -0
- package/dist/components/data-display/metric-row/metric-row.svelte.d.ts +58 -0
- package/dist/components/data-display/radial-stat/index.d.ts +1 -0
- package/dist/components/data-display/radial-stat/index.js +1 -0
- package/dist/components/data-display/radial-stat/radial-stat.svelte +113 -0
- package/dist/components/data-display/radial-stat/radial-stat.svelte.d.ts +35 -0
- package/dist/components/data-display/readiness/index.d.ts +3 -0
- package/dist/components/data-display/readiness/index.js +3 -0
- package/dist/components/data-display/readiness/readiness-summarise.d.ts +40 -0
- package/dist/components/data-display/readiness/readiness-summarise.js +25 -0
- package/dist/components/data-display/readiness/readiness-summary.svelte +65 -0
- package/dist/components/data-display/readiness/readiness-summary.svelte.d.ts +19 -0
- package/dist/components/data-display/readiness/readiness.svelte +102 -0
- package/dist/components/data-display/readiness/readiness.svelte.d.ts +22 -0
- package/dist/components/data-display/segmented-bar/index.d.ts +1 -0
- package/dist/components/data-display/segmented-bar/index.js +1 -0
- package/dist/components/data-display/segmented-bar/segmented-bar.svelte +116 -0
- package/dist/components/data-display/segmented-bar/segmented-bar.svelte.d.ts +34 -0
- package/dist/components/data-display/segmented-code/index.d.ts +1 -0
- package/dist/components/data-display/segmented-code/index.js +1 -0
- package/dist/components/data-display/segmented-code/segmented-code.svelte +84 -0
- package/dist/components/data-display/segmented-code/segmented-code.svelte.d.ts +27 -0
- package/dist/components/data-display/sparkline/index.d.ts +1 -0
- package/dist/components/data-display/sparkline/index.js +1 -0
- package/dist/components/data-display/sparkline/sparkline.svelte +98 -0
- package/dist/components/data-display/sparkline/sparkline.svelte.d.ts +22 -0
- package/dist/components/data-display/stat-tile/index.d.ts +1 -0
- package/dist/components/data-display/stat-tile/index.js +1 -0
- package/dist/components/data-display/stat-tile/stat-tile.svelte +328 -0
- package/dist/components/data-display/stat-tile/stat-tile.svelte.d.ts +125 -0
- package/dist/components/data-display/table/context.d.ts +2 -0
- package/dist/components/data-display/table/context.js +16 -0
- package/dist/components/data-display/table/index.d.ts +8 -0
- package/dist/components/data-display/table/index.js +8 -0
- package/dist/components/data-display/table/table-body.svelte +28 -0
- package/dist/components/data-display/table/table-body.svelte.d.ts +7 -0
- package/dist/components/data-display/table/table-caption.svelte +28 -0
- package/dist/components/data-display/table/table-caption.svelte.d.ts +7 -0
- package/dist/components/data-display/table/table-cell.svelte +45 -0
- package/dist/components/data-display/table/table-cell.svelte.d.ts +9 -0
- package/dist/components/data-display/table/table-footer.svelte +28 -0
- package/dist/components/data-display/table/table-footer.svelte.d.ts +7 -0
- package/dist/components/data-display/table/table-head.svelte +54 -0
- package/dist/components/data-display/table/table-head.svelte.d.ts +15 -0
- package/dist/components/data-display/table/table-header.svelte +28 -0
- package/dist/components/data-display/table/table-header.svelte.d.ts +7 -0
- package/dist/components/data-display/table/table-row.svelte +31 -0
- package/dist/components/data-display/table/table-row.svelte.d.ts +7 -0
- package/dist/components/data-display/table/table.svelte +47 -0
- package/dist/components/data-display/table/table.svelte.d.ts +14 -0
- package/dist/components/data-display/timeline/index.d.ts +8 -0
- package/dist/components/data-display/timeline/index.js +8 -0
- package/dist/components/data-display/timeline/timeline-connector.svelte +33 -0
- package/dist/components/data-display/timeline/timeline-connector.svelte.d.ts +11 -0
- package/dist/components/data-display/timeline/timeline-content.svelte +35 -0
- package/dist/components/data-display/timeline/timeline-content.svelte.d.ts +7 -0
- package/dist/components/data-display/timeline/timeline-dot.svelte +57 -0
- package/dist/components/data-display/timeline/timeline-dot.svelte.d.ts +21 -0
- package/dist/components/data-display/timeline/timeline-item.svelte +26 -0
- package/dist/components/data-display/timeline/timeline-item.svelte.d.ts +6 -0
- package/dist/components/data-display/timeline/timeline-skeleton.svelte +43 -0
- package/dist/components/data-display/timeline/timeline-skeleton.svelte.d.ts +9 -0
- package/dist/components/data-display/timeline/timeline-title.svelte +30 -0
- package/dist/components/data-display/timeline/timeline-title.svelte.d.ts +7 -0
- package/dist/components/data-display/timeline/timeline-variants.d.ts +12 -0
- package/dist/components/data-display/timeline/timeline-variants.js +34 -0
- package/dist/components/data-display/timeline/timeline.svelte +38 -0
- package/dist/components/data-display/timeline/timeline.svelte.d.ts +18 -0
- package/dist/components/data-display/tree-leaf/index.d.ts +1 -0
- package/dist/components/data-display/tree-leaf/index.js +1 -0
- package/dist/components/data-display/tree-leaf/tree-leaf.svelte +87 -0
- package/dist/components/data-display/tree-leaf/tree-leaf.svelte.d.ts +30 -0
- package/dist/components/feedback/alert/alert-action.svelte +36 -0
- package/dist/components/feedback/alert/alert-action.svelte.d.ts +11 -0
- package/dist/components/feedback/alert/alert-description.svelte +38 -0
- package/dist/components/feedback/alert/alert-description.svelte.d.ts +9 -0
- package/dist/components/feedback/alert/alert-title.svelte +30 -0
- package/dist/components/feedback/alert/alert-title.svelte.d.ts +9 -0
- package/dist/components/feedback/alert/alert-variants.d.ts +11 -0
- package/dist/components/feedback/alert/alert-variants.js +26 -0
- package/dist/components/feedback/alert/alert.svelte +38 -0
- package/dist/components/feedback/alert/alert.svelte.d.ts +15 -0
- package/dist/components/feedback/alert/index.d.ts +5 -0
- package/dist/components/feedback/alert/index.js +5 -0
- package/dist/components/feedback/empty/empty-content.svelte +30 -0
- package/dist/components/feedback/empty/empty-content.svelte.d.ts +6 -0
- package/dist/components/feedback/empty/empty-description.svelte +35 -0
- package/dist/components/feedback/empty/empty-description.svelte.d.ts +6 -0
- package/dist/components/feedback/empty/empty-header.svelte +27 -0
- package/dist/components/feedback/empty/empty-header.svelte.d.ts +6 -0
- package/dist/components/feedback/empty/empty-media.svelte +43 -0
- package/dist/components/feedback/empty/empty-media.svelte.d.ts +14 -0
- package/dist/components/feedback/empty/empty-title.svelte +27 -0
- package/dist/components/feedback/empty/empty-title.svelte.d.ts +6 -0
- package/dist/components/feedback/empty/empty-variants.d.ts +10 -0
- package/dist/components/feedback/empty/empty-variants.js +20 -0
- package/dist/components/feedback/empty/empty.svelte +36 -0
- package/dist/components/feedback/empty/empty.svelte.d.ts +11 -0
- package/dist/components/feedback/empty/index.d.ts +7 -0
- package/dist/components/feedback/empty/index.js +7 -0
- package/dist/components/feedback/empty-state/empty-state.svelte +45 -0
- package/dist/components/feedback/empty-state/empty-state.svelte.d.ts +19 -0
- package/dist/components/feedback/empty-state/index.d.ts +1 -0
- package/dist/components/feedback/empty-state/index.js +1 -0
- package/dist/components/feedback/error-state/error-state.svelte +102 -0
- package/dist/components/feedback/error-state/error-state.svelte.d.ts +37 -0
- package/dist/components/feedback/error-state/index.d.ts +1 -0
- package/dist/components/feedback/error-state/index.js +1 -0
- package/dist/components/feedback/feature-preview/feature-preview.svelte +102 -0
- package/dist/components/feedback/feature-preview/feature-preview.svelte.d.ts +34 -0
- package/dist/components/feedback/feature-preview/index.d.ts +1 -0
- package/dist/components/feedback/feature-preview/index.js +1 -0
- package/dist/components/feedback/loading-state/index.d.ts +1 -0
- package/dist/components/feedback/loading-state/index.js +1 -0
- package/dist/components/feedback/loading-state/loading-state.svelte +48 -0
- package/dist/components/feedback/loading-state/loading-state.svelte.d.ts +18 -0
- package/dist/components/feedback/locked-overlay/index.d.ts +1 -0
- package/dist/components/feedback/locked-overlay/index.js +1 -0
- package/dist/components/feedback/locked-overlay/locked-overlay.svelte +77 -0
- package/dist/components/feedback/locked-overlay/locked-overlay.svelte.d.ts +31 -0
- package/dist/components/feedback/navigation-progress/index.d.ts +1 -0
- package/dist/components/feedback/navigation-progress/index.js +1 -0
- package/dist/components/feedback/navigation-progress/navigation-progress.svelte +93 -0
- package/dist/components/feedback/navigation-progress/navigation-progress.svelte.d.ts +20 -0
- package/dist/components/feedback/progress/index.d.ts +1 -0
- package/dist/components/feedback/progress/index.js +1 -0
- package/dist/components/feedback/progress/progress.svelte +48 -0
- package/dist/components/feedback/progress/progress.svelte.d.ts +12 -0
- package/dist/components/feedback/skeleton/index.d.ts +1 -0
- package/dist/components/feedback/skeleton/index.js +1 -0
- package/dist/components/feedback/skeleton/skeleton.svelte +33 -0
- package/dist/components/feedback/skeleton/skeleton.svelte.d.ts +10 -0
- package/dist/components/feedback/sonner/index.d.ts +2 -0
- package/dist/components/feedback/sonner/index.js +2 -0
- package/dist/components/feedback/sonner/sonner.svelte +87 -0
- package/dist/components/feedback/sonner/sonner.svelte.d.ts +6 -0
- package/dist/components/feedback/spinner/index.d.ts +1 -0
- package/dist/components/feedback/spinner/index.js +1 -0
- package/dist/components/feedback/spinner/spinner.svelte +50 -0
- package/dist/components/feedback/spinner/spinner.svelte.d.ts +17 -0
- package/dist/components/forms/button-group/button-group-separator.svelte +31 -0
- package/dist/components/forms/button-group/button-group-separator.svelte.d.ts +6 -0
- package/dist/components/forms/button-group/button-group-text.svelte +46 -0
- package/dist/components/forms/button-group/button-group-text.svelte.d.ts +12 -0
- package/dist/components/forms/button-group/button-group-variants.d.ts +13 -0
- package/dist/components/forms/button-group/button-group-variants.js +20 -0
- package/dist/components/forms/button-group/button-group.svelte +46 -0
- package/dist/components/forms/button-group/button-group.svelte.d.ts +14 -0
- package/dist/components/forms/button-group/index.d.ts +4 -0
- package/dist/components/forms/button-group/index.js +4 -0
- package/dist/components/forms/calendar/calendar-caption.svelte +103 -0
- package/dist/components/forms/calendar/calendar-caption.svelte.d.ts +16 -0
- package/dist/components/forms/calendar/calendar-classes.d.ts +23 -0
- package/dist/components/forms/calendar/calendar-classes.js +36 -0
- package/dist/components/forms/calendar/calendar.svelte +120 -0
- package/dist/components/forms/calendar/calendar.svelte.d.ts +21 -0
- package/dist/components/forms/calendar/index.d.ts +3 -0
- package/dist/components/forms/calendar/index.js +2 -0
- package/dist/components/forms/calendar/range-calendar.svelte +114 -0
- package/dist/components/forms/calendar/range-calendar.svelte.d.ts +18 -0
- package/dist/components/forms/checkbox/checkbox.svelte +55 -0
- package/dist/components/forms/checkbox/checkbox.svelte.d.ts +6 -0
- package/dist/components/forms/checkbox/index.d.ts +1 -0
- package/dist/components/forms/checkbox/index.js +1 -0
- package/dist/components/forms/choice-row/choice-row-readonly.svelte +56 -0
- package/dist/components/forms/choice-row/choice-row-readonly.svelte.d.ts +17 -0
- package/dist/components/forms/choice-row/choice-row.svelte +129 -0
- package/dist/components/forms/choice-row/choice-row.svelte.d.ts +53 -0
- package/dist/components/forms/choice-row/index.d.ts +2 -0
- package/dist/components/forms/choice-row/index.js +2 -0
- package/dist/components/forms/combobox/combobox-chip.svelte +65 -0
- package/dist/components/forms/combobox/combobox-chip.svelte.d.ts +14 -0
- package/dist/components/forms/combobox/combobox-chips-input.svelte +23 -0
- package/dist/components/forms/combobox/combobox-chips-input.svelte.d.ts +6 -0
- package/dist/components/forms/combobox/combobox-chips.svelte +35 -0
- package/dist/components/forms/combobox/combobox-chips.svelte.d.ts +10 -0
- package/dist/components/forms/combobox/combobox-content.svelte +52 -0
- package/dist/components/forms/combobox/combobox-content.svelte.d.ts +11 -0
- package/dist/components/forms/combobox/combobox-context.d.ts +6 -0
- package/dist/components/forms/combobox/combobox-context.js +9 -0
- package/dist/components/forms/combobox/combobox-empty.svelte +28 -0
- package/dist/components/forms/combobox/combobox-empty.svelte.d.ts +6 -0
- package/dist/components/forms/combobox/combobox-group.svelte +15 -0
- package/dist/components/forms/combobox/combobox-group.svelte.d.ts +5 -0
- package/dist/components/forms/combobox/combobox-input.svelte +98 -0
- package/dist/components/forms/combobox/combobox-input.svelte.d.ts +16 -0
- package/dist/components/forms/combobox/combobox-item.svelte +61 -0
- package/dist/components/forms/combobox/combobox-item.svelte.d.ts +9 -0
- package/dist/components/forms/combobox/combobox-label.svelte +25 -0
- package/dist/components/forms/combobox/combobox-label.svelte.d.ts +5 -0
- package/dist/components/forms/combobox/combobox-list.svelte +27 -0
- package/dist/components/forms/combobox/combobox-list.svelte.d.ts +5 -0
- package/dist/components/forms/combobox/combobox-separator.svelte +22 -0
- package/dist/components/forms/combobox/combobox-separator.svelte.d.ts +5 -0
- package/dist/components/forms/combobox/combobox-trigger.svelte +36 -0
- package/dist/components/forms/combobox/combobox-trigger.svelte.d.ts +6 -0
- package/dist/components/forms/combobox/combobox.svelte +49 -0
- package/dist/components/forms/combobox/combobox.svelte.d.ts +23 -0
- package/dist/components/forms/combobox/index.d.ts +13 -0
- package/dist/components/forms/combobox/index.js +13 -0
- package/dist/components/forms/date-picker/date-picker.svelte +149 -0
- package/dist/components/forms/date-picker/date-picker.svelte.d.ts +45 -0
- package/dist/components/forms/date-picker/index.d.ts +1 -0
- package/dist/components/forms/date-picker/index.js +1 -0
- package/dist/components/forms/field/field-content.svelte +27 -0
- package/dist/components/forms/field/field-content.svelte.d.ts +6 -0
- package/dist/components/forms/field/field-description.svelte +40 -0
- package/dist/components/forms/field/field-description.svelte.d.ts +6 -0
- package/dist/components/forms/field/field-error.svelte +57 -0
- package/dist/components/forms/field/field-error.svelte.d.ts +15 -0
- package/dist/components/forms/field/field-group.svelte +30 -0
- package/dist/components/forms/field/field-group.svelte.d.ts +6 -0
- package/dist/components/forms/field/field-label.svelte +49 -0
- package/dist/components/forms/field/field-label.svelte.d.ts +12 -0
- package/dist/components/forms/field/field-legend.svelte +44 -0
- package/dist/components/forms/field/field-legend.svelte.d.ts +8 -0
- package/dist/components/forms/field/field-separator.svelte +37 -0
- package/dist/components/forms/field/field-separator.svelte.d.ts +6 -0
- package/dist/components/forms/field/field-set.svelte +31 -0
- package/dist/components/forms/field/field-set.svelte.d.ts +6 -0
- package/dist/components/forms/field/field-title.svelte +30 -0
- package/dist/components/forms/field/field-title.svelte.d.ts +6 -0
- package/dist/components/forms/field/field-variants.d.ts +10 -0
- package/dist/components/forms/field/field-variants.js +26 -0
- package/dist/components/forms/field/field.svelte +45 -0
- package/dist/components/forms/field/field.svelte.d.ts +14 -0
- package/dist/components/forms/field/index.d.ts +11 -0
- package/dist/components/forms/field/index.js +11 -0
- package/dist/components/forms/form/form-button.svelte +19 -0
- package/dist/components/forms/form/form-button.svelte.d.ts +6 -0
- package/dist/components/forms/form/form-description.svelte +28 -0
- package/dist/components/forms/form/form-description.svelte.d.ts +7 -0
- package/dist/components/forms/form/form-element-field.svelte +47 -0
- package/dist/components/forms/form/form-element-field.svelte.d.ts +35 -0
- package/dist/components/forms/form/form-field-errors.svelte +48 -0
- package/dist/components/forms/form/form-field-errors.svelte.d.ts +9 -0
- package/dist/components/forms/form/form-field.svelte +56 -0
- package/dist/components/forms/form/form-field.svelte.d.ts +42 -0
- package/dist/components/forms/form/form-fieldset.svelte +41 -0
- package/dist/components/forms/form/form-fieldset.svelte.d.ts +29 -0
- package/dist/components/forms/form/form-label.svelte +47 -0
- package/dist/components/forms/form/form-label.svelte.d.ts +10 -0
- package/dist/components/forms/form/form-legend.svelte +28 -0
- package/dist/components/forms/form/form-legend.svelte.d.ts +7 -0
- package/dist/components/forms/form/form-types.d.ts +13 -0
- package/dist/components/forms/form/form-types.js +1 -0
- package/dist/components/forms/form/form.svelte +38 -0
- package/dist/components/forms/form/form.svelte.d.ts +38 -0
- package/dist/components/forms/form/index.d.ts +11 -0
- package/dist/components/forms/form/index.js +10 -0
- package/dist/components/forms/input/index.d.ts +1 -0
- package/dist/components/forms/input/index.js +1 -0
- package/dist/components/forms/input/input.svelte +58 -0
- package/dist/components/forms/input/input.svelte.d.ts +13 -0
- package/dist/components/forms/input-group/index.d.ts +7 -0
- package/dist/components/forms/input-group/index.js +7 -0
- package/dist/components/forms/input-group/input-group-addon.svelte +51 -0
- package/dist/components/forms/input-group/input-group-addon.svelte.d.ts +10 -0
- package/dist/components/forms/input-group/input-group-button.svelte +39 -0
- package/dist/components/forms/input-group/input-group-button.svelte.d.ts +8 -0
- package/dist/components/forms/input-group/input-group-input.svelte +33 -0
- package/dist/components/forms/input-group/input-group-input.svelte.d.ts +5 -0
- package/dist/components/forms/input-group/input-group-text.svelte +30 -0
- package/dist/components/forms/input-group/input-group-text.svelte.d.ts +7 -0
- package/dist/components/forms/input-group/input-group-textarea.svelte +39 -0
- package/dist/components/forms/input-group/input-group-textarea.svelte.d.ts +11 -0
- package/dist/components/forms/input-group/input-group-variants.d.ts +14 -0
- package/dist/components/forms/input-group/input-group-variants.js +32 -0
- package/dist/components/forms/input-group/input-group.svelte +44 -0
- package/dist/components/forms/input-group/input-group.svelte.d.ts +11 -0
- package/dist/components/forms/input-otp/index.d.ts +4 -0
- package/dist/components/forms/input-otp/index.js +4 -0
- package/dist/components/forms/input-otp/input-otp-group.svelte +40 -0
- package/dist/components/forms/input-otp/input-otp-group.svelte.d.ts +12 -0
- package/dist/components/forms/input-otp/input-otp-separator.svelte +28 -0
- package/dist/components/forms/input-otp/input-otp-separator.svelte.d.ts +6 -0
- package/dist/components/forms/input-otp/input-otp-slot.svelte +56 -0
- package/dist/components/forms/input-otp/input-otp-slot.svelte.d.ts +8 -0
- package/dist/components/forms/input-otp/input-otp.svelte +40 -0
- package/dist/components/forms/input-otp/input-otp.svelte.d.ts +10 -0
- package/dist/components/forms/label/index.d.ts +1 -0
- package/dist/components/forms/label/index.js +1 -0
- package/dist/components/forms/label/label.svelte +26 -0
- package/dist/components/forms/label/label.svelte.d.ts +5 -0
- package/dist/components/forms/media-dropzone/index.d.ts +2 -0
- package/dist/components/forms/media-dropzone/index.js +1 -0
- package/dist/components/forms/media-dropzone/media-dropzone.svelte +248 -0
- package/dist/components/forms/media-dropzone/media-dropzone.svelte.d.ts +42 -0
- package/dist/components/forms/media-dropzone/media-uploader.svelte.d.ts +81 -0
- package/dist/components/forms/media-dropzone/media-uploader.svelte.js +177 -0
- package/dist/components/forms/number-input/index.d.ts +3 -0
- package/dist/components/forms/number-input/index.js +2 -0
- package/dist/components/forms/number-input/number-input-field.svelte +157 -0
- package/dist/components/forms/number-input/number-input-field.svelte.d.ts +21 -0
- package/dist/components/forms/number-input/number-input-math.d.ts +21 -0
- package/dist/components/forms/number-input/number-input-math.js +43 -0
- package/dist/components/forms/number-input/number-input.svelte +175 -0
- package/dist/components/forms/number-input/number-input.svelte.d.ts +53 -0
- package/dist/components/forms/quantity-input/index.d.ts +1 -0
- package/dist/components/forms/quantity-input/index.js +1 -0
- package/dist/components/forms/quantity-input/quantity-input.svelte +262 -0
- package/dist/components/forms/quantity-input/quantity-input.svelte.d.ts +75 -0
- package/dist/components/forms/radio-group/index.d.ts +2 -0
- package/dist/components/forms/radio-group/index.js +2 -0
- package/dist/components/forms/radio-group/radio-group-item.svelte +41 -0
- package/dist/components/forms/radio-group/radio-group-item.svelte.d.ts +6 -0
- package/dist/components/forms/radio-group/radio-group.svelte +30 -0
- package/dist/components/forms/radio-group/radio-group.svelte.d.ts +5 -0
- package/dist/components/forms/select/index.d.ts +10 -0
- package/dist/components/forms/select/index.js +10 -0
- package/dist/components/forms/select/select-content.svelte +53 -0
- package/dist/components/forms/select/select-content.svelte.d.ts +9 -0
- package/dist/components/forms/select/select-group.svelte +16 -0
- package/dist/components/forms/select/select-group.svelte.d.ts +5 -0
- package/dist/components/forms/select/select-item.svelte +67 -0
- package/dist/components/forms/select/select-item.svelte.d.ts +13 -0
- package/dist/components/forms/select/select-label.svelte +23 -0
- package/dist/components/forms/select/select-label.svelte.d.ts +5 -0
- package/dist/components/forms/select/select-scroll-down-button.svelte +30 -0
- package/dist/components/forms/select/select-scroll-down-button.svelte.d.ts +6 -0
- package/dist/components/forms/select/select-scroll-up-button.svelte +30 -0
- package/dist/components/forms/select/select-scroll-up-button.svelte.d.ts +6 -0
- package/dist/components/forms/select/select-separator.svelte +26 -0
- package/dist/components/forms/select/select-separator.svelte.d.ts +6 -0
- package/dist/components/forms/select/select-trigger.svelte +48 -0
- package/dist/components/forms/select/select-trigger.svelte.d.ts +14 -0
- package/dist/components/forms/select/select-value.svelte +16 -0
- package/dist/components/forms/select/select-value.svelte.d.ts +5 -0
- package/dist/components/forms/select/select.svelte +33 -0
- package/dist/components/forms/select/select.svelte.d.ts +20 -0
- package/dist/components/forms/switch/index.d.ts +1 -0
- package/dist/components/forms/switch/index.js +1 -0
- package/dist/components/forms/switch/switch.svelte +41 -0
- package/dist/components/forms/switch/switch.svelte.d.ts +7 -0
- package/dist/components/forms/switch-field/index.d.ts +1 -0
- package/dist/components/forms/switch-field/index.js +1 -0
- package/dist/components/forms/switch-field/switch-field.svelte +124 -0
- package/dist/components/forms/switch-field/switch-field.svelte.d.ts +51 -0
- package/dist/components/forms/textarea/index.d.ts +1 -0
- package/dist/components/forms/textarea/index.js +1 -0
- package/dist/components/forms/textarea/textarea.svelte +70 -0
- package/dist/components/forms/textarea/textarea.svelte.d.ts +12 -0
- package/dist/components/forms/time-picker/index.d.ts +1 -0
- package/dist/components/forms/time-picker/index.js +1 -0
- package/dist/components/forms/time-picker/time-picker.svelte +127 -0
- package/dist/components/forms/time-picker/time-picker.svelte.d.ts +20 -0
- package/dist/components/forms/toggle/index.d.ts +2 -0
- package/dist/components/forms/toggle/index.js +2 -0
- package/dist/components/forms/toggle/toggle-variants.d.ts +13 -0
- package/dist/components/forms/toggle/toggle-variants.js +63 -0
- package/dist/components/forms/toggle/toggle.svelte +48 -0
- package/dist/components/forms/toggle/toggle.svelte.d.ts +16 -0
- package/dist/components/forms/toggle-group/index.d.ts +2 -0
- package/dist/components/forms/toggle-group/index.js +2 -0
- package/dist/components/forms/toggle-group/toggle-group-item.svelte +60 -0
- package/dist/components/forms/toggle-group/toggle-group-item.svelte.d.ts +9 -0
- package/dist/components/forms/toggle-group/toggle-group.svelte +82 -0
- package/dist/components/forms/toggle-group/toggle-group.svelte.d.ts +21 -0
- package/dist/components/layout/aside-card/aside-card.svelte +76 -0
- package/dist/components/layout/aside-card/aside-card.svelte.d.ts +19 -0
- package/dist/components/layout/aside-card/index.d.ts +1 -0
- package/dist/components/layout/aside-card/index.js +1 -0
- package/dist/components/layout/card/card-action.svelte +33 -0
- package/dist/components/layout/card/card-action.svelte.d.ts +12 -0
- package/dist/components/layout/card/card-content.svelte +48 -0
- package/dist/components/layout/card/card-content.svelte.d.ts +19 -0
- package/dist/components/layout/card/card-description.svelte +32 -0
- package/dist/components/layout/card/card-description.svelte.d.ts +6 -0
- package/dist/components/layout/card/card-footer.svelte +62 -0
- package/dist/components/layout/card/card-footer.svelte.d.ts +23 -0
- package/dist/components/layout/card/card-header.svelte +48 -0
- package/dist/components/layout/card/card-header.svelte.d.ts +17 -0
- package/dist/components/layout/card/card-title.svelte +61 -0
- package/dist/components/layout/card/card-title.svelte.d.ts +26 -0
- package/dist/components/layout/card/card.svelte +60 -0
- package/dist/components/layout/card/card.svelte.d.ts +19 -0
- package/dist/components/layout/card/index.d.ts +7 -0
- package/dist/components/layout/card/index.js +7 -0
- package/dist/components/layout/card-grid/card-grid-cell.svelte +32 -0
- package/dist/components/layout/card-grid/card-grid-cell.svelte.d.ts +11 -0
- package/dist/components/layout/card-grid/card-grid.svelte +51 -0
- package/dist/components/layout/card-grid/card-grid.svelte.d.ts +17 -0
- package/dist/components/layout/card-grid/index.d.ts +2 -0
- package/dist/components/layout/card-grid/index.js +2 -0
- package/dist/components/layout/card-list/card-list.svelte +59 -0
- package/dist/components/layout/card-list/card-list.svelte.d.ts +27 -0
- package/dist/components/layout/card-list/index.d.ts +1 -0
- package/dist/components/layout/card-list/index.js +1 -0
- package/dist/components/layout/collapsible/collapsible-content.svelte +16 -0
- package/dist/components/layout/collapsible/collapsible-content.svelte.d.ts +5 -0
- package/dist/components/layout/collapsible/collapsible-trigger.svelte +16 -0
- package/dist/components/layout/collapsible/collapsible-trigger.svelte.d.ts +5 -0
- package/dist/components/layout/collapsible/collapsible.svelte +22 -0
- package/dist/components/layout/collapsible/collapsible.svelte.d.ts +10 -0
- package/dist/components/layout/collapsible/index.d.ts +3 -0
- package/dist/components/layout/collapsible/index.js +3 -0
- package/dist/components/layout/page-header/index.d.ts +1 -0
- package/dist/components/layout/page-header/index.js +1 -0
- package/dist/components/layout/page-header/page-header.svelte +118 -0
- package/dist/components/layout/page-header/page-header.svelte.d.ts +34 -0
- package/dist/components/layout/page-layout/index.d.ts +1 -0
- package/dist/components/layout/page-layout/index.js +1 -0
- package/dist/components/layout/page-layout/page-layout.svelte +30 -0
- package/dist/components/layout/page-layout/page-layout.svelte.d.ts +10 -0
- package/dist/components/layout/separator/index.d.ts +1 -0
- package/dist/components/layout/separator/index.js +1 -0
- package/dist/components/layout/separator/separator.svelte +34 -0
- package/dist/components/layout/separator/separator.svelte.d.ts +5 -0
- package/dist/components/layout/summary-card/index.d.ts +1 -0
- package/dist/components/layout/summary-card/index.js +1 -0
- package/dist/components/layout/summary-card/summary-card.svelte +51 -0
- package/dist/components/layout/summary-card/summary-card.svelte.d.ts +23 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-ellipsis.svelte +38 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-ellipsis.svelte.d.ts +9 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-item.svelte +30 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-item.svelte.d.ts +10 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-link.svelte +42 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-link.svelte.d.ts +12 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-list.svelte +26 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-list.svelte.d.ts +6 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-page.svelte +31 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-page.svelte.d.ts +10 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-separator.svelte +39 -0
- package/dist/components/navigation/breadcrumb/breadcrumb-separator.svelte.d.ts +9 -0
- package/dist/components/navigation/breadcrumb/breadcrumb.svelte +32 -0
- package/dist/components/navigation/breadcrumb/breadcrumb.svelte.d.ts +11 -0
- package/dist/components/navigation/breadcrumb/index.d.ts +7 -0
- package/dist/components/navigation/breadcrumb/index.js +7 -0
- package/dist/components/navigation/sidebar/context.svelte.d.ts +26 -0
- package/dist/components/navigation/sidebar/context.svelte.js +61 -0
- package/dist/components/navigation/sidebar/index.d.ts +25 -0
- package/dist/components/navigation/sidebar/index.js +25 -0
- package/dist/components/navigation/sidebar/sidebar-content.svelte +32 -0
- package/dist/components/navigation/sidebar/sidebar-content.svelte.d.ts +7 -0
- package/dist/components/navigation/sidebar/sidebar-footer.svelte +28 -0
- package/dist/components/navigation/sidebar/sidebar-footer.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-group-action.svelte +50 -0
- package/dist/components/navigation/sidebar/sidebar-group-action.svelte.d.ts +12 -0
- package/dist/components/navigation/sidebar/sidebar-group-content.svelte +36 -0
- package/dist/components/navigation/sidebar/sidebar-group-content.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-group-label.svelte +51 -0
- package/dist/components/navigation/sidebar/sidebar-group-label.svelte.d.ts +12 -0
- package/dist/components/navigation/sidebar/sidebar-group.svelte +32 -0
- package/dist/components/navigation/sidebar/sidebar-group.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-header.svelte +33 -0
- package/dist/components/navigation/sidebar/sidebar-header.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-input.svelte +31 -0
- package/dist/components/navigation/sidebar/sidebar-input.svelte.d.ts +5 -0
- package/dist/components/navigation/sidebar/sidebar-inset.svelte +32 -0
- package/dist/components/navigation/sidebar/sidebar-inset.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-menu-action.svelte +58 -0
- package/dist/components/navigation/sidebar/sidebar-menu-action.svelte.d.ts +14 -0
- package/dist/components/navigation/sidebar/sidebar-menu-badge.svelte +42 -0
- package/dist/components/navigation/sidebar/sidebar-menu-badge.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-menu-button.svelte +97 -0
- package/dist/components/navigation/sidebar/sidebar-menu-button.svelte.d.ts +20 -0
- package/dist/components/navigation/sidebar/sidebar-menu-item.svelte +33 -0
- package/dist/components/navigation/sidebar/sidebar-menu-item.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-menu-skeleton.svelte +46 -0
- package/dist/components/navigation/sidebar/sidebar-menu-skeleton.svelte.d.ts +8 -0
- package/dist/components/navigation/sidebar/sidebar-menu-sub-button.svelte +64 -0
- package/dist/components/navigation/sidebar/sidebar-menu-sub-button.svelte.d.ts +14 -0
- package/dist/components/navigation/sidebar/sidebar-menu-sub-item.svelte +33 -0
- package/dist/components/navigation/sidebar/sidebar-menu-sub-item.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-menu-sub.svelte +37 -0
- package/dist/components/navigation/sidebar/sidebar-menu-sub.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-menu.svelte +28 -0
- package/dist/components/navigation/sidebar/sidebar-menu.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-provider.svelte +74 -0
- package/dist/components/navigation/sidebar/sidebar-provider.svelte.d.ts +19 -0
- package/dist/components/navigation/sidebar/sidebar-rail.svelte +42 -0
- package/dist/components/navigation/sidebar/sidebar-rail.svelte.d.ts +6 -0
- package/dist/components/navigation/sidebar/sidebar-separator.svelte +29 -0
- package/dist/components/navigation/sidebar/sidebar-separator.svelte.d.ts +5 -0
- package/dist/components/navigation/sidebar/sidebar-trigger.svelte +40 -0
- package/dist/components/navigation/sidebar/sidebar-trigger.svelte.d.ts +5 -0
- package/dist/components/navigation/sidebar/sidebar-variants.d.ts +11 -0
- package/dist/components/navigation/sidebar/sidebar-variants.js +40 -0
- package/dist/components/navigation/sidebar/sidebar.svelte +152 -0
- package/dist/components/navigation/sidebar/sidebar.svelte.d.ts +17 -0
- package/dist/components/navigation/stepper/index.d.ts +2 -0
- package/dist/components/navigation/stepper/index.js +2 -0
- package/dist/components/navigation/stepper/stepper-chip.svelte +42 -0
- package/dist/components/navigation/stepper/stepper-chip.svelte.d.ts +16 -0
- package/dist/components/navigation/stepper/stepper-navigation.svelte +112 -0
- package/dist/components/navigation/stepper/stepper-navigation.svelte.d.ts +36 -0
- package/dist/components/navigation/stepper/stepper.svelte +364 -0
- package/dist/components/navigation/stepper/stepper.svelte.d.ts +65 -0
- package/dist/components/navigation/tabs/index.d.ts +4 -0
- package/dist/components/navigation/tabs/index.js +4 -0
- package/dist/components/navigation/tabs/tabs-content.svelte +23 -0
- package/dist/components/navigation/tabs/tabs-content.svelte.d.ts +5 -0
- package/dist/components/navigation/tabs/tabs-list.svelte +24 -0
- package/dist/components/navigation/tabs/tabs-list.svelte.d.ts +5 -0
- package/dist/components/navigation/tabs/tabs-trigger.svelte +24 -0
- package/dist/components/navigation/tabs/tabs-trigger.svelte.d.ts +5 -0
- package/dist/components/navigation/tabs/tabs.svelte +30 -0
- package/dist/components/navigation/tabs/tabs.svelte.d.ts +5 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-action.svelte +50 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-action.svelte.d.ts +7 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-cancel.svelte +34 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-cancel.svelte.d.ts +7 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-content.svelte +45 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-content.svelte.d.ts +12 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-description.svelte +23 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-description.svelte.d.ts +5 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-footer.svelte +35 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-footer.svelte.d.ts +6 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-header.svelte +35 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-header.svelte.d.ts +6 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-media.svelte +35 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-media.svelte.d.ts +6 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-overlay.svelte +26 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-overlay.svelte.d.ts +5 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-portal.svelte +16 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-portal.svelte.d.ts +5 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-title.svelte +26 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-title.svelte.d.ts +5 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-trigger.svelte +16 -0
- package/dist/components/overlays/alert-dialog/alert-dialog-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/alert-dialog/alert-dialog.svelte +34 -0
- package/dist/components/overlays/alert-dialog/alert-dialog.svelte.d.ts +12 -0
- package/dist/components/overlays/alert-dialog/index.d.ts +12 -0
- package/dist/components/overlays/alert-dialog/index.js +12 -0
- package/dist/components/overlays/dialog/dialog-close.svelte +16 -0
- package/dist/components/overlays/dialog/dialog-close.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/dialog-content.svelte +79 -0
- package/dist/components/overlays/dialog/dialog-content.svelte.d.ts +26 -0
- package/dist/components/overlays/dialog/dialog-description.svelte +23 -0
- package/dist/components/overlays/dialog/dialog-description.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/dialog-footer.svelte +27 -0
- package/dist/components/overlays/dialog/dialog-footer.svelte.d.ts +6 -0
- package/dist/components/overlays/dialog/dialog-header.svelte +27 -0
- package/dist/components/overlays/dialog/dialog-header.svelte.d.ts +6 -0
- package/dist/components/overlays/dialog/dialog-overlay.svelte +26 -0
- package/dist/components/overlays/dialog/dialog-overlay.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/dialog-portal.svelte +16 -0
- package/dist/components/overlays/dialog/dialog-portal.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/dialog-title.svelte +23 -0
- package/dist/components/overlays/dialog/dialog-title.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/dialog-trigger.svelte +16 -0
- package/dist/components/overlays/dialog/dialog-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/dialog.svelte +16 -0
- package/dist/components/overlays/dialog/dialog.svelte.d.ts +5 -0
- package/dist/components/overlays/dialog/index.d.ts +10 -0
- package/dist/components/overlays/dialog/index.js +10 -0
- package/dist/components/overlays/drawer/drawer-close.svelte +16 -0
- package/dist/components/overlays/drawer/drawer-close.svelte.d.ts +5 -0
- package/dist/components/overlays/drawer/drawer-content.svelte +50 -0
- package/dist/components/overlays/drawer/drawer-content.svelte.d.ts +8 -0
- package/dist/components/overlays/drawer/drawer-description.svelte +23 -0
- package/dist/components/overlays/drawer/drawer-description.svelte.d.ts +5 -0
- package/dist/components/overlays/drawer/drawer-footer.svelte +27 -0
- package/dist/components/overlays/drawer/drawer-footer.svelte.d.ts +6 -0
- package/dist/components/overlays/drawer/drawer-header.svelte +30 -0
- package/dist/components/overlays/drawer/drawer-header.svelte.d.ts +6 -0
- package/dist/components/overlays/drawer/drawer-overlay.svelte +26 -0
- package/dist/components/overlays/drawer/drawer-overlay.svelte.d.ts +5 -0
- package/dist/components/overlays/drawer/drawer-portal.svelte +16 -0
- package/dist/components/overlays/drawer/drawer-portal.svelte.d.ts +5 -0
- package/dist/components/overlays/drawer/drawer-title.svelte +23 -0
- package/dist/components/overlays/drawer/drawer-title.svelte.d.ts +5 -0
- package/dist/components/overlays/drawer/drawer-trigger.svelte +16 -0
- package/dist/components/overlays/drawer/drawer-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/drawer/drawer.svelte +28 -0
- package/dist/components/overlays/drawer/drawer.svelte.d.ts +11 -0
- package/dist/components/overlays/drawer/index.d.ts +10 -0
- package/dist/components/overlays/drawer/index.js +10 -0
- package/dist/components/overlays/hint/hint.svelte +69 -0
- package/dist/components/overlays/hint/hint.svelte.d.ts +32 -0
- package/dist/components/overlays/hint/index.d.ts +1 -0
- package/dist/components/overlays/hint/index.js +1 -0
- package/dist/components/overlays/hover-card/hover-card-content.svelte +46 -0
- package/dist/components/overlays/hover-card/hover-card-content.svelte.d.ts +12 -0
- package/dist/components/overlays/hover-card/hover-card-trigger.svelte +18 -0
- package/dist/components/overlays/hover-card/hover-card-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/hover-card/hover-card.svelte +22 -0
- package/dist/components/overlays/hover-card/hover-card.svelte.d.ts +10 -0
- package/dist/components/overlays/hover-card/index.d.ts +3 -0
- package/dist/components/overlays/hover-card/index.js +3 -0
- package/dist/components/overlays/popover/index.d.ts +3 -0
- package/dist/components/overlays/popover/index.js +3 -0
- package/dist/components/overlays/popover/popover-content.svelte +54 -0
- package/dist/components/overlays/popover/popover-content.svelte.d.ts +19 -0
- package/dist/components/overlays/popover/popover-trigger.svelte +16 -0
- package/dist/components/overlays/popover/popover-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/popover/popover.svelte +22 -0
- package/dist/components/overlays/popover/popover.svelte.d.ts +10 -0
- package/dist/components/overlays/sheet/index.d.ts +8 -0
- package/dist/components/overlays/sheet/index.js +8 -0
- package/dist/components/overlays/sheet/sheet-close.svelte +16 -0
- package/dist/components/overlays/sheet/sheet-close.svelte.d.ts +5 -0
- package/dist/components/overlays/sheet/sheet-content.svelte +71 -0
- package/dist/components/overlays/sheet/sheet-content.svelte.d.ts +18 -0
- package/dist/components/overlays/sheet/sheet-description.svelte +23 -0
- package/dist/components/overlays/sheet/sheet-description.svelte.d.ts +5 -0
- package/dist/components/overlays/sheet/sheet-footer.svelte +27 -0
- package/dist/components/overlays/sheet/sheet-footer.svelte.d.ts +6 -0
- package/dist/components/overlays/sheet/sheet-header.svelte +27 -0
- package/dist/components/overlays/sheet/sheet-header.svelte.d.ts +6 -0
- package/dist/components/overlays/sheet/sheet-title.svelte +23 -0
- package/dist/components/overlays/sheet/sheet-title.svelte.d.ts +5 -0
- package/dist/components/overlays/sheet/sheet-trigger.svelte +16 -0
- package/dist/components/overlays/sheet/sheet-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/sheet/sheet.svelte +20 -0
- package/dist/components/overlays/sheet/sheet.svelte.d.ts +9 -0
- package/dist/components/overlays/tooltip/index.d.ts +4 -0
- package/dist/components/overlays/tooltip/index.js +4 -0
- package/dist/components/overlays/tooltip/tooltip-content.svelte +58 -0
- package/dist/components/overlays/tooltip/tooltip-content.svelte.d.ts +14 -0
- package/dist/components/overlays/tooltip/tooltip-provider.svelte +16 -0
- package/dist/components/overlays/tooltip/tooltip-provider.svelte.d.ts +5 -0
- package/dist/components/overlays/tooltip/tooltip-trigger.svelte +16 -0
- package/dist/components/overlays/tooltip/tooltip-trigger.svelte.d.ts +5 -0
- package/dist/components/overlays/tooltip/tooltip.svelte +21 -0
- package/dist/components/overlays/tooltip/tooltip.svelte.d.ts +5 -0
- package/dist/components/typography/heading/heading.svelte +60 -0
- package/dist/components/typography/heading/heading.svelte.d.ts +23 -0
- package/dist/components/typography/heading/index.d.ts +1 -0
- package/dist/components/typography/heading/index.js +1 -0
- package/dist/components/typography/text/index.d.ts +1 -0
- package/dist/components/typography/text/index.js +1 -0
- package/dist/components/typography/text/text.svelte +84 -0
- package/dist/components/typography/text/text.svelte.d.ts +31 -0
- package/dist/form.d.ts +9 -0
- package/dist/form.js +9 -0
- package/dist/hooks/is-mobile.svelte.d.ts +15 -0
- package/dist/hooks/is-mobile.svelte.js +17 -0
- package/dist/index.d.ts +94 -0
- package/dist/index.js +101 -0
- package/dist/styles/components.css +192 -0
- package/dist/theme.css +535 -0
- package/dist/tokens/cli.d.ts +11 -0
- package/dist/tokens/cli.js +58 -0
- package/dist/tokens/config.d.ts +39 -0
- package/dist/tokens/config.js +46 -0
- package/dist/tokens/emit-web.d.ts +11 -0
- package/dist/tokens/emit-web.js +172 -0
- package/dist/tokens/geometry.d.ts +62 -0
- package/dist/tokens/geometry.js +67 -0
- package/dist/tokens/info.d.ts +10 -0
- package/dist/tokens/info.js +62 -0
- package/dist/tokens/presets.d.ts +51 -0
- package/dist/tokens/presets.js +35 -0
- package/dist/tokens/semantic.d.ts +32 -0
- package/dist/tokens/semantic.js +158 -0
- package/dist/tokens/tailwind-palette.d.ts +356 -0
- package/dist/tokens/tailwind-palette.js +352 -0
- package/dist/tokens.d.ts +11 -0
- package/dist/tokens.js +11 -0
- package/dist/utils/cn.d.ts +11 -0
- package/dist/utils/cn.js +14 -0
- package/dist/utils/monotone-path.d.ts +10 -0
- package/dist/utils/monotone-path.js +52 -0
- package/dist/utils/segmented-control.d.ts +47 -0
- package/dist/utils/segmented-control.js +53 -0
- package/dist/utils/tone.d.ts +78 -0
- package/dist/utils/tone.js +119 -0
- package/dist/utils/types.d.ts +17 -0
- package/dist/utils/types.js +6 -0
- package/package.json +124 -3
- package/skills/mise/SKILL.md +159 -0
- package/skills/mise/components/actions.md +200 -0
- package/skills/mise/components/data-display.md +728 -0
- package/skills/mise/components/feedback.md +198 -0
- package/skills/mise/components/forms.md +712 -0
- package/skills/mise/components/layout.md +178 -0
- package/skills/mise/components/navigation.md +250 -0
- package/skills/mise/components/overlays.md +291 -0
- package/skills/mise/components/typography.md +36 -0
- package/skills/mise/recipes/dashboard-page.md +40 -0
- package/skills/mise/recipes/dashboard-page.svelte +132 -0
- package/skills/mise/recipes/data-table.md +39 -0
- package/skills/mise/recipes/data-table.svelte +130 -0
- package/skills/mise/recipes/form-sveltekit.svelte +79 -0
- package/skills/mise/recipes/form.md +82 -0
- package/skills/mise/recipes/form.svelte +158 -0
- package/skills/mise/setup.md +99 -0
- package/skills/mise/theming.md +82 -0
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
<!-- Generated by pnpm build:skill. Do not edit by hand. -->
|
|
2
|
+
|
|
3
|
+
# Overlays
|
|
4
|
+
|
|
5
|
+
## AlertDialog
|
|
6
|
+
|
|
7
|
+
`import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from '@jovertical/mise-design-system'`
|
|
8
|
+
|
|
9
|
+
For a confirmation the operator cannot dismiss by clicking outside it: `Dialog` closes on an outside click, this does not. Reach for it when the action is destructive or hard to undo; everything else wants `Dialog`.
|
|
10
|
+
|
|
11
|
+
Also takes: bits-ui `AlertDialog.Root` props.
|
|
12
|
+
|
|
13
|
+
### `AlertDialogAction`
|
|
14
|
+
|
|
15
|
+
Also takes: bits-ui `AlertDialog.Action` props except `child`; `variant`, `tone`, `size` from `Button`.
|
|
16
|
+
|
|
17
|
+
### `AlertDialogCancel`
|
|
18
|
+
|
|
19
|
+
Also takes: bits-ui `AlertDialog.Cancel` props except `child`; `variant`, `size` from `Button`.
|
|
20
|
+
|
|
21
|
+
### `AlertDialogContent`
|
|
22
|
+
|
|
23
|
+
The card's 24px radius, a ring and `shadow-xl`: it is a dialog, and was drawn like a menu. `size="sm"` for a short confirmation with no description.
|
|
24
|
+
|
|
25
|
+
| Prop | Type | Default | Description |
|
|
26
|
+
| --- | --- | --- | --- |
|
|
27
|
+
| `size` | `'default' \| 'sm'` | `'default'` | |
|
|
28
|
+
| `portalProps` | `AlertDialogPrimitive.PortalProps` | | |
|
|
29
|
+
|
|
30
|
+
Also takes: bits-ui `AlertDialog.Content` props.
|
|
31
|
+
|
|
32
|
+
### `AlertDialogDescription`
|
|
33
|
+
|
|
34
|
+
Also takes: bits-ui `AlertDialog.Description` props.
|
|
35
|
+
|
|
36
|
+
### `AlertDialogFooter`
|
|
37
|
+
|
|
38
|
+
Also takes: every `<div>` attribute.
|
|
39
|
+
|
|
40
|
+
### `AlertDialogHeader`
|
|
41
|
+
|
|
42
|
+
Also takes: every `<div>` attribute.
|
|
43
|
+
|
|
44
|
+
### `AlertDialogMedia`
|
|
45
|
+
|
|
46
|
+
Also takes: every `<div>` attribute.
|
|
47
|
+
|
|
48
|
+
### `AlertDialogOverlay`
|
|
49
|
+
|
|
50
|
+
Also takes: bits-ui `AlertDialog.Overlay` props.
|
|
51
|
+
|
|
52
|
+
### `AlertDialogPortal`
|
|
53
|
+
|
|
54
|
+
Also takes: bits-ui `AlertDialog.Portal` props.
|
|
55
|
+
|
|
56
|
+
### `AlertDialogTitle`
|
|
57
|
+
|
|
58
|
+
Also takes: bits-ui `AlertDialog.Title` props.
|
|
59
|
+
|
|
60
|
+
### `AlertDialogTrigger`
|
|
61
|
+
|
|
62
|
+
Also takes: bits-ui `AlertDialog.Trigger` props.
|
|
63
|
+
|
|
64
|
+
## Dialog
|
|
65
|
+
|
|
66
|
+
`import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger } from '@jovertical/mise-design-system'`
|
|
67
|
+
|
|
68
|
+
Also takes: bits-ui `Dialog.Root` props.
|
|
69
|
+
|
|
70
|
+
### `DialogClose`
|
|
71
|
+
|
|
72
|
+
Also takes: bits-ui `Dialog.Close` props.
|
|
73
|
+
|
|
74
|
+
### `DialogContent`
|
|
75
|
+
|
|
76
|
+
A ring rather than a border, and `shadow-xl` rather than `shadow-lg`: a dialog sits above everything, so it casts the deeper shadow.
|
|
77
|
+
|
|
78
|
+
| Prop | Type | Default | Description |
|
|
79
|
+
| --- | --- | --- | --- |
|
|
80
|
+
| `portalProps` | `WithoutChildrenOrChild<DialogPrimitive.PortalProps>` | | |
|
|
81
|
+
| `children` (required) | `Snippet` | | |
|
|
82
|
+
| `showCloseButton` | `boolean` | `true` | |
|
|
83
|
+
| `size` | `DialogSize` | `'lg'` | |
|
|
84
|
+
|
|
85
|
+
Also takes: bits-ui `Dialog.Content` props except `children`, `child`.
|
|
86
|
+
|
|
87
|
+
### `DialogDescription`
|
|
88
|
+
|
|
89
|
+
Also takes: bits-ui `Dialog.Description` props.
|
|
90
|
+
|
|
91
|
+
### `DialogFooter`
|
|
92
|
+
|
|
93
|
+
Also takes: every `<div>` attribute.
|
|
94
|
+
|
|
95
|
+
### `DialogHeader`
|
|
96
|
+
|
|
97
|
+
Also takes: every `<div>` attribute.
|
|
98
|
+
|
|
99
|
+
### `DialogOverlay`
|
|
100
|
+
|
|
101
|
+
Also takes: bits-ui `Dialog.Overlay` props.
|
|
102
|
+
|
|
103
|
+
### `DialogPortal`
|
|
104
|
+
|
|
105
|
+
Also takes: bits-ui `Dialog.Portal` props.
|
|
106
|
+
|
|
107
|
+
### `DialogTitle`
|
|
108
|
+
|
|
109
|
+
Also takes: bits-ui `Dialog.Title` props.
|
|
110
|
+
|
|
111
|
+
### `DialogTrigger`
|
|
112
|
+
|
|
113
|
+
Also takes: bits-ui `Dialog.Trigger` props.
|
|
114
|
+
|
|
115
|
+
Types: `DialogSize`.
|
|
116
|
+
|
|
117
|
+
## Drawer
|
|
118
|
+
|
|
119
|
+
`import { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger } from '@jovertical/mise-design-system'`
|
|
120
|
+
|
|
121
|
+
A panel dragged in from an edge. Slides from the bottom by default: the phone sheet, for a screen that wants a bottom sheet rather than a centred `Dialog`. `direction="right"` makes it a side panel, though `Sheet` is the usual one there.
|
|
122
|
+
|
|
123
|
+
Also takes: bits-ui `Drawer.Root` props.
|
|
124
|
+
|
|
125
|
+
### `DrawerClose`
|
|
126
|
+
|
|
127
|
+
Also takes: bits-ui `Drawer.Close` props.
|
|
128
|
+
|
|
129
|
+
### `DrawerContent`
|
|
130
|
+
|
|
131
|
+
The panel, its overlay and, from the bottom, the drag handle.
|
|
132
|
+
|
|
133
|
+
| Prop | Type | Default | Description |
|
|
134
|
+
| --- | --- | --- | --- |
|
|
135
|
+
| `portalProps` | `DrawerPrimitive.PortalProps` | | |
|
|
136
|
+
|
|
137
|
+
Also takes: bits-ui `Drawer.Content` props.
|
|
138
|
+
|
|
139
|
+
### `DrawerDescription`
|
|
140
|
+
|
|
141
|
+
Also takes: bits-ui `Drawer.Description` props.
|
|
142
|
+
|
|
143
|
+
### `DrawerFooter`
|
|
144
|
+
|
|
145
|
+
Also takes: every `<div>` attribute.
|
|
146
|
+
|
|
147
|
+
### `DrawerHeader`
|
|
148
|
+
|
|
149
|
+
Also takes: every `<div>` attribute.
|
|
150
|
+
|
|
151
|
+
### `DrawerOverlay`
|
|
152
|
+
|
|
153
|
+
Also takes: bits-ui `Drawer.Overlay` props.
|
|
154
|
+
|
|
155
|
+
### `DrawerPortal`
|
|
156
|
+
|
|
157
|
+
Also takes: bits-ui `Drawer.Portal` props.
|
|
158
|
+
|
|
159
|
+
### `DrawerTitle`
|
|
160
|
+
|
|
161
|
+
Also takes: bits-ui `Drawer.Title` props.
|
|
162
|
+
|
|
163
|
+
### `DrawerTrigger`
|
|
164
|
+
|
|
165
|
+
Also takes: bits-ui `Drawer.Trigger` props.
|
|
166
|
+
|
|
167
|
+
## Hint
|
|
168
|
+
|
|
169
|
+
`import { Hint } from '@jovertical/mise-design-system'`
|
|
170
|
+
|
|
171
|
+
The `?` that explains the thing it sits beside.
|
|
172
|
+
|
|
173
|
+
| Prop | Type | Default | Description |
|
|
174
|
+
| --- | --- | --- | --- |
|
|
175
|
+
| `label` | `string` | | Announced in place of the glyph, so name what is being explained ("How stock health is calculated", not "Help"). |
|
|
176
|
+
| `children` (required) | `Snippet` | | The explanation, shown in the tooltip. |
|
|
177
|
+
|
|
178
|
+
Also takes: every `<button>` attribute except `children`.
|
|
179
|
+
|
|
180
|
+
## HoverCard
|
|
181
|
+
|
|
182
|
+
`import { HoverCard, HoverCardContent, HoverCardTrigger } from '@jovertical/mise-design-system'`
|
|
183
|
+
|
|
184
|
+
A preview on hover or focus, for a fact worth a glance without leaving the page: a person's details behind their name, a linked record's summary. Reach for `Tooltip` instead when the content is a single short label.
|
|
185
|
+
|
|
186
|
+
Also takes: bits-ui `HoverCard.Root` props.
|
|
187
|
+
|
|
188
|
+
### `HoverCardContent`
|
|
189
|
+
|
|
190
|
+
The floating card. A ring rather than a border, and `rounded-2xl` rather than shadcn's `rounded-md`: 6px was the smallest radius in a system whose cards are 24px.
|
|
191
|
+
|
|
192
|
+
| Prop | Type | Default | Description |
|
|
193
|
+
| --- | --- | --- | --- |
|
|
194
|
+
| `portalProps` | `HoverCardPrimitive.PortalProps` | | |
|
|
195
|
+
|
|
196
|
+
Also takes: bits-ui `HoverCard.Content` props.
|
|
197
|
+
|
|
198
|
+
### `HoverCardTrigger`
|
|
199
|
+
|
|
200
|
+
Also takes: bits-ui `HoverCard.Trigger` props.
|
|
201
|
+
|
|
202
|
+
## Popover
|
|
203
|
+
|
|
204
|
+
`import { Popover, PopoverContent, PopoverTrigger } from '@jovertical/mise-design-system'`
|
|
205
|
+
|
|
206
|
+
A positioned panel with no semantics of its own; whatever goes in it brings its meaning. Reach for it when the content is not a list of commands: a filter, a form, a preview, a feed. Commands want `DropdownMenu`.
|
|
207
|
+
|
|
208
|
+
Also takes: bits-ui `Popover.Root` props.
|
|
209
|
+
|
|
210
|
+
### `PopoverContent`
|
|
211
|
+
|
|
212
|
+
The floating panel. It is not a `flex flex-col gap-4` like the reference's settings panel: most popovers are menus, filters or list panels that pass `p-0` and own their layout, and `p-0` cancels padding but not a gap. Add `flex flex-col gap-4` at the call site for the form case.
|
|
213
|
+
|
|
214
|
+
| Prop | Type | Default | Description |
|
|
215
|
+
| --- | --- | --- | --- |
|
|
216
|
+
| `matchTriggerWidth` | `boolean` | `false` | The panel takes the trigger's exact width instead of its own `w-72`, and drops the padding: the shape a Select-like popover wants, where the content inside owns its own padding. |
|
|
217
|
+
| `portalProps` | `PopoverPrimitive.PortalProps` | | |
|
|
218
|
+
|
|
219
|
+
Also takes: bits-ui `Popover.Content` props.
|
|
220
|
+
|
|
221
|
+
### `PopoverTrigger`
|
|
222
|
+
|
|
223
|
+
Also takes: bits-ui `Popover.Trigger` props.
|
|
224
|
+
|
|
225
|
+
## Sheet
|
|
226
|
+
|
|
227
|
+
`import { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger } from '@jovertical/mise-design-system'`
|
|
228
|
+
|
|
229
|
+
A panel anchored to the viewport's edge, `side="right"` by default: the desktop side panel for a quick view without leaving the list.
|
|
230
|
+
|
|
231
|
+
Also takes: bits-ui `Sheet.Root` props.
|
|
232
|
+
|
|
233
|
+
### `SheetClose`
|
|
234
|
+
|
|
235
|
+
Also takes: bits-ui `Sheet.Close` props.
|
|
236
|
+
|
|
237
|
+
### `SheetContent`
|
|
238
|
+
|
|
239
|
+
| Prop | Type | Default | Description |
|
|
240
|
+
| --- | --- | --- | --- |
|
|
241
|
+
| `side` | `SheetSide` | `'right'` | |
|
|
242
|
+
| `portalProps` | `SheetPrimitive.PortalProps` | | |
|
|
243
|
+
| `children` | `Snippet` | | |
|
|
244
|
+
|
|
245
|
+
Also takes: bits-ui `Sheet.Content` props except `children`, `child`.
|
|
246
|
+
|
|
247
|
+
### `SheetDescription`
|
|
248
|
+
|
|
249
|
+
Also takes: bits-ui `Sheet.Description` props.
|
|
250
|
+
|
|
251
|
+
### `SheetFooter`
|
|
252
|
+
|
|
253
|
+
Also takes: every `<div>` attribute.
|
|
254
|
+
|
|
255
|
+
### `SheetHeader`
|
|
256
|
+
|
|
257
|
+
Also takes: every `<div>` attribute.
|
|
258
|
+
|
|
259
|
+
### `SheetTitle`
|
|
260
|
+
|
|
261
|
+
Also takes: bits-ui `Sheet.Title` props.
|
|
262
|
+
|
|
263
|
+
### `SheetTrigger`
|
|
264
|
+
|
|
265
|
+
Also takes: bits-ui `Sheet.Trigger` props.
|
|
266
|
+
|
|
267
|
+
Types: `SheetSide`.
|
|
268
|
+
|
|
269
|
+
## Tooltip
|
|
270
|
+
|
|
271
|
+
`import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@jovertical/mise-design-system'`
|
|
272
|
+
|
|
273
|
+
Also takes: bits-ui `Tooltip.Root` props.
|
|
274
|
+
|
|
275
|
+
### `TooltipContent`
|
|
276
|
+
|
|
277
|
+
The panel sits on `bg-popover` with the ring and shadow every floating panel here carries, not the inverted `bg-foreground text-background` tooltip idiom. The inversion looks deliberate in light mode and renders a page-bright block over a dark UI in dark mode. The arrow follows the surface and carries no ring of its own.
|
|
278
|
+
|
|
279
|
+
| Prop | Type | Default | Description |
|
|
280
|
+
| --- | --- | --- | --- |
|
|
281
|
+
| `portalProps` | `TooltipPrimitive.PortalProps` | | |
|
|
282
|
+
|
|
283
|
+
Also takes: bits-ui `Tooltip.Content` props.
|
|
284
|
+
|
|
285
|
+
### `TooltipProvider`
|
|
286
|
+
|
|
287
|
+
Also takes: bits-ui `Tooltip.Provider` props.
|
|
288
|
+
|
|
289
|
+
### `TooltipTrigger`
|
|
290
|
+
|
|
291
|
+
Also takes: bits-ui `Tooltip.Trigger` props.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<!-- Generated by pnpm build:skill. Do not edit by hand. -->
|
|
2
|
+
|
|
3
|
+
# Typography
|
|
4
|
+
|
|
5
|
+
## Heading
|
|
6
|
+
|
|
7
|
+
`import { Heading } from '@jovertical/mise-design-system'`
|
|
8
|
+
|
|
9
|
+
A heading that is not a card's, a dialog's or a page's: those have `CardTitle`, `DialogTitle` and `PageHeader`. This is a section inside a page body, so the face, the weight and the step come from one place. A figure is not a heading.
|
|
10
|
+
|
|
11
|
+
| Prop | Type | Default | Description |
|
|
12
|
+
| --- | --- | --- | --- |
|
|
13
|
+
| `as` | `'h1' \| 'h2' \| 'h3' \| 'h4' \| 'h5' \| 'h6'` | `'h2'` | The level, for the document outline. `h2` by default; a page's `h1` is `PageHeader`'s. Choose it by where the heading sits, never by how big it should look; that is `size`. |
|
|
14
|
+
| `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | `sm` 16px (a card's title), `md` 18px (a dialog's), `lg` 20px (a section opening a page body). |
|
|
15
|
+
|
|
16
|
+
Also takes: every `<h1>`–`<h6>` attribute.
|
|
17
|
+
|
|
18
|
+
## Text
|
|
19
|
+
|
|
20
|
+
`import { Text } from '@jovertical/mise-design-system'`
|
|
21
|
+
|
|
22
|
+
Body text, set by what it is doing rather than by the classes that draw it: the size, the muting, the weight, the figures, and nothing else. No face, no arbitrary size, no colour outside `muted` and the shared `Tone`. `as` rather than `asChild`, because the element is the one semantic choice text makes.
|
|
23
|
+
|
|
24
|
+
| Prop | Type | Default | Description |
|
|
25
|
+
| --- | --- | --- | --- |
|
|
26
|
+
| `as` | `'span' \| 'p' \| 'div'` | `'span'` | `span` by default; `p` for a sentence that stands as a paragraph, `div` for text holding a block. |
|
|
27
|
+
| `size` | `'xs' \| 'sm'` | | `xs` 12px, `sm` 14px. Omit it to inherit the line's size. A larger step is a heading. |
|
|
28
|
+
| `muted` | `boolean` | `false` | De-emphasis, `text-muted-foreground`: a hint, a timestamp. Not a status. |
|
|
29
|
+
| `tone` | `'neutral' \| 'primary' \| 'info' \| 'success' \| 'warning' \| 'critical'` | | Status ink, for text that carries a state. Wins over `muted`. |
|
|
30
|
+
| `weight` | `'normal' \| 'medium' \| 'semibold'` | | `medium` for a name or a value, `semibold` for a total, `normal` to undo an inherited weight. |
|
|
31
|
+
| `numeric` | `boolean` | `false` | `tabular-nums`, so a column of figures lines up. |
|
|
32
|
+
| `truncate` | `boolean` | `false` | One line, ellipsised. Needs a width to truncate against. |
|
|
33
|
+
|
|
34
|
+
Also takes: every HTML attribute.
|
|
35
|
+
|
|
36
|
+
Types: `TextSize` (`'xs' | 'sm'`), `TextWeight` (`'normal' | 'medium' | 'semibold'`).
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Recipe: a dashboard page
|
|
2
|
+
|
|
3
|
+
A day's dashboard for one location: four headline figures, orders by hour, and sales by
|
|
4
|
+
location ranked against target. The code is [dashboard-page.svelte](dashboard-page.svelte), a
|
|
5
|
+
page component that type-checks against the current mise.
|
|
6
|
+
|
|
7
|
+
## What it is made of
|
|
8
|
+
|
|
9
|
+
- `PageLayout` and `PageHeader` ([layout](../components/layout.md)): the page frame, the title,
|
|
10
|
+
the description and an action on the right.
|
|
11
|
+
- `StatTile` ([data display](../components/data-display.md)), four of them in a plain grid. One
|
|
12
|
+
figure per tile; `delta` takes a `DeltaBadge`, `visual` a `Sparkline`.
|
|
13
|
+
- `Card` with `ChartContainer` and a LayerChart `AreaChart`
|
|
14
|
+
([data display](../components/data-display.md)) for the trend.
|
|
15
|
+
- `Card` with `MetricBar`s, `rank` numbering them, for the ranking.
|
|
16
|
+
|
|
17
|
+
## Decisions worth copying
|
|
18
|
+
|
|
19
|
+
- **`StatTile`, not `MetricRow`, for the headline row.** A tile states one figure and qualifies
|
|
20
|
+
it; `MetricRow` is one subject with several figures and a bar under them.
|
|
21
|
+
- **The grid is the app's one class.** `grid gap-4 sm:grid-cols-2 lg:grid-cols-4` is layout,
|
|
22
|
+
which is what `class` is for. The tiles bring their own surface; do not wrap them in `Card`.
|
|
23
|
+
- **Figures arrive formatted.** `value="$14,527"` with `exactValue="$14,527.40"` on hover; mise
|
|
24
|
+
never formats money.
|
|
25
|
+
- **`invert` on a delta where falling is good.** Refunds up 3.1% is bad news, so the refunds
|
|
26
|
+
delta is `invert` and reads as a warning.
|
|
27
|
+
- **Chart colours come from the config**: `--chart-1` for the series, read back as
|
|
28
|
+
`--color-orders`. The chart follows the theme and dark mode with no extra work.
|
|
29
|
+
|
|
30
|
+
## The app shell
|
|
31
|
+
|
|
32
|
+
The `Sidebar` belongs to the app's layout, not to each page: a layout component renders
|
|
33
|
+
`SidebarProvider`, `Sidebar` and an inset where pages like this one go. See `Sidebar` in
|
|
34
|
+
[navigation](../components/navigation.md) for its parts.
|
|
35
|
+
|
|
36
|
+
## Dependencies
|
|
37
|
+
|
|
38
|
+
The chart imports `layerchart`, `d3-scale` and `d3-shape` directly. mise depends on them, but a
|
|
39
|
+
strict package manager (pnpm) only lets the app import what it declares, so add them to the app:
|
|
40
|
+
`pnpm add layerchart d3-scale d3-shape`.
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
A day's dashboard for one location: headline figures, the trend, and a
|
|
3
|
+
ranking. Everything is a mise component; the app's only classes are layout
|
|
4
|
+
(the tile grid). Figures arrive formatted: mise has no opinion about
|
|
5
|
+
currencies or locales.
|
|
6
|
+
-->
|
|
7
|
+
<script lang="ts">
|
|
8
|
+
import {
|
|
9
|
+
Button,
|
|
10
|
+
Card,
|
|
11
|
+
CardContent,
|
|
12
|
+
CardDescription,
|
|
13
|
+
CardHeader,
|
|
14
|
+
CardTitle,
|
|
15
|
+
ChartContainer,
|
|
16
|
+
type ChartConfig,
|
|
17
|
+
ChartTooltip,
|
|
18
|
+
chartAreaFillOpacity,
|
|
19
|
+
chartGrid,
|
|
20
|
+
chartLineStrokeWidth,
|
|
21
|
+
DeltaBadge,
|
|
22
|
+
MetricBar,
|
|
23
|
+
PageHeader,
|
|
24
|
+
PageLayout,
|
|
25
|
+
Sparkline,
|
|
26
|
+
StatTile,
|
|
27
|
+
} from '@jovertical/mise-design-system'
|
|
28
|
+
import { scalePoint } from 'd3-scale'
|
|
29
|
+
import { curveMonotoneX } from 'd3-shape'
|
|
30
|
+
import { AreaChart } from 'layerchart'
|
|
31
|
+
|
|
32
|
+
const byHour = [
|
|
33
|
+
{ hour: '8am', orders: 12 },
|
|
34
|
+
{ hour: '10am', orders: 31 },
|
|
35
|
+
{ hour: '12pm', orders: 58 },
|
|
36
|
+
{ hour: '2pm', orders: 44 },
|
|
37
|
+
{ hour: '4pm', orders: 37 },
|
|
38
|
+
{ hour: '6pm', orders: 52 },
|
|
39
|
+
]
|
|
40
|
+
|
|
41
|
+
const config = {
|
|
42
|
+
orders: { label: 'Orders', color: 'var(--chart-1)' },
|
|
43
|
+
} satisfies ChartConfig
|
|
44
|
+
|
|
45
|
+
const locations = [
|
|
46
|
+
{ name: 'Riverside', sales: '$4,812', percent: 96 },
|
|
47
|
+
{ name: 'Harbour', sales: '$4,140', percent: 83 },
|
|
48
|
+
{ name: 'North yard', sales: '$3,365', percent: 67 },
|
|
49
|
+
{ name: 'Market street', sales: '$2,210', percent: 44 },
|
|
50
|
+
]
|
|
51
|
+
</script>
|
|
52
|
+
|
|
53
|
+
{#snippet salesDelta()}
|
|
54
|
+
<DeltaBadge value={12.4} />
|
|
55
|
+
{/snippet}
|
|
56
|
+
{#snippet salesTrend()}
|
|
57
|
+
<Sparkline data={[18, 22, 21, 27, 25, 31, 34]} tone="success" height={36} />
|
|
58
|
+
{/snippet}
|
|
59
|
+
{#snippet refundsDelta()}
|
|
60
|
+
<DeltaBadge value={3.1} invert />
|
|
61
|
+
{/snippet}
|
|
62
|
+
{#snippet exportButton()}
|
|
63
|
+
<Button variant="outline">Export</Button>
|
|
64
|
+
{/snippet}
|
|
65
|
+
{#snippet tooltip()}
|
|
66
|
+
<ChartTooltip indicator="dot" />
|
|
67
|
+
{/snippet}
|
|
68
|
+
|
|
69
|
+
<PageLayout>
|
|
70
|
+
<PageHeader
|
|
71
|
+
title="Today"
|
|
72
|
+
description="Riverside, since the register opened at 7:30am."
|
|
73
|
+
actions={exportButton}
|
|
74
|
+
/>
|
|
75
|
+
|
|
76
|
+
<div class="grid gap-4 sm:grid-cols-2 lg:grid-cols-4">
|
|
77
|
+
<StatTile
|
|
78
|
+
label="Sales"
|
|
79
|
+
value="$14,527"
|
|
80
|
+
exactValue="$14,527.40"
|
|
81
|
+
delta={salesDelta}
|
|
82
|
+
visual={salesTrend}
|
|
83
|
+
/>
|
|
84
|
+
<StatTile label="Orders" value={234} unit="orders" />
|
|
85
|
+
<StatTile label="Average basket" value="$62.08" unit="per order" />
|
|
86
|
+
<StatTile label="Refunds" value="$318" delta={refundsDelta} tone="warning" />
|
|
87
|
+
</div>
|
|
88
|
+
|
|
89
|
+
<Card>
|
|
90
|
+
<CardHeader>
|
|
91
|
+
<CardTitle>Orders by hour</CardTitle>
|
|
92
|
+
<CardDescription>Placed at every register, all channels.</CardDescription>
|
|
93
|
+
</CardHeader>
|
|
94
|
+
<CardContent>
|
|
95
|
+
<ChartContainer class="aspect-auto h-[240px] w-full" {config}>
|
|
96
|
+
<AreaChart
|
|
97
|
+
data={byHour}
|
|
98
|
+
x="hour"
|
|
99
|
+
xScale={scalePoint().padding(0.2)}
|
|
100
|
+
grid={chartGrid}
|
|
101
|
+
yNice={4}
|
|
102
|
+
series={[{ key: 'orders', label: 'Orders', color: 'var(--color-orders)' }]}
|
|
103
|
+
props={{
|
|
104
|
+
area: {
|
|
105
|
+
curve: curveMonotoneX,
|
|
106
|
+
fillOpacity: chartAreaFillOpacity,
|
|
107
|
+
line: { strokeWidth: chartLineStrokeWidth },
|
|
108
|
+
},
|
|
109
|
+
}}
|
|
110
|
+
{tooltip}
|
|
111
|
+
/>
|
|
112
|
+
</ChartContainer>
|
|
113
|
+
</CardContent>
|
|
114
|
+
</Card>
|
|
115
|
+
|
|
116
|
+
<Card>
|
|
117
|
+
<CardHeader>
|
|
118
|
+
<CardTitle>Sales by location</CardTitle>
|
|
119
|
+
<CardDescription>Against each location's daily target.</CardDescription>
|
|
120
|
+
</CardHeader>
|
|
121
|
+
<CardContent class="flex flex-col gap-4">
|
|
122
|
+
{#each locations as location, index (location.name)}
|
|
123
|
+
<MetricBar
|
|
124
|
+
rank={index + 1}
|
|
125
|
+
label={location.name}
|
|
126
|
+
value={location.sales}
|
|
127
|
+
percent={location.percent}
|
|
128
|
+
/>
|
|
129
|
+
{/each}
|
|
130
|
+
</CardContent>
|
|
131
|
+
</Card>
|
|
132
|
+
</PageLayout>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Recipe: a data table
|
|
2
|
+
|
|
3
|
+
Today's orders, with search, a status filter, sortable columns, row selection for a bulk action,
|
|
4
|
+
and a menu of actions on each row. The code is [data-table.svelte](data-table.svelte), which
|
|
5
|
+
type-checks against the current mise.
|
|
6
|
+
|
|
7
|
+
## What it is made of
|
|
8
|
+
|
|
9
|
+
- `DataTable` ([data display](../components/data-display.md)): the card, the table, the empty
|
|
10
|
+
state and the closing strip with the row count.
|
|
11
|
+
- `dataTableColumns<Order>()` to build typed columns, `DataTableColumnHeader` for a sortable
|
|
12
|
+
header, and `renderSnippet` or `renderComponent` from `@tanstack/svelte-table` for cells.
|
|
13
|
+
- `DataTableToolbar` above the rows: the search, the faceted status filter, the column toggle,
|
|
14
|
+
and the app's bulk actions in `actions`.
|
|
15
|
+
- `DataTableRowActions` with `DropdownMenuItem`s ([actions](../components/actions.md)): the ⋯
|
|
16
|
+
menu at the end of each row.
|
|
17
|
+
- `Badge` with a `tone` per status, and `Empty` for "no orders match".
|
|
18
|
+
|
|
19
|
+
## Decisions worth copying
|
|
20
|
+
|
|
21
|
+
- **`getRowId` whenever rows can be selected.** Without it rows are keyed by index, and a
|
|
22
|
+
selection survives neither a sort nor a new page.
|
|
23
|
+
- **A faceted filter needs a `filterFn`.** The status filter sets a list of values; the column's
|
|
24
|
+
`filterFn` keeps a row whose status is in it.
|
|
25
|
+
- **Status is data, tone is presentation.** A `STATUS_TONE` map turns each status into a `tone`,
|
|
26
|
+
in one place.
|
|
27
|
+
- **Name the row in its actions label** ("Actions for order #1042"), so a screen reader moving
|
|
28
|
+
down the column hears which row the menu belongs to.
|
|
29
|
+
- **The destructive action is last** and uses `variant="destructive"`; it is disabled, not
|
|
30
|
+
hidden, where it does not apply.
|
|
31
|
+
- **Server data:** for a long list, keep the rows on the server. Pass `filters` and
|
|
32
|
+
`onFiltersChange` to send the search, filters and sort with the request, and `hasNextPage`
|
|
33
|
+
with `fetchNextPage` for load-more.
|
|
34
|
+
|
|
35
|
+
## Dependencies
|
|
36
|
+
|
|
37
|
+
The columns import `renderSnippet` and `renderComponent` from `@tanstack/svelte-table`. mise
|
|
38
|
+
depends on it, but a strict package manager only lets the app import what it declares:
|
|
39
|
+
`pnpm add @tanstack/svelte-table`.
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Today's orders: search, a status filter, sortable columns, row selection for
|
|
3
|
+
a bulk action, and a menu of actions on every row. DataTable owns the table
|
|
4
|
+
(TanStack Table underneath); the app owns the rows, the columns and what each
|
|
5
|
+
action does.
|
|
6
|
+
-->
|
|
7
|
+
<script lang="ts">
|
|
8
|
+
import {
|
|
9
|
+
Badge,
|
|
10
|
+
Button,
|
|
11
|
+
DataTable,
|
|
12
|
+
DataTableColumnHeader,
|
|
13
|
+
DataTableRowActions,
|
|
14
|
+
DataTableToolbar,
|
|
15
|
+
DropdownMenuItem,
|
|
16
|
+
DropdownMenuSeparator,
|
|
17
|
+
dataTableColumns,
|
|
18
|
+
Empty,
|
|
19
|
+
EmptyDescription,
|
|
20
|
+
EmptyHeader,
|
|
21
|
+
EmptyTitle,
|
|
22
|
+
type Tone,
|
|
23
|
+
} from '@jovertical/mise-design-system'
|
|
24
|
+
import { type RowSelectionState, renderComponent, renderSnippet } from '@tanstack/svelte-table'
|
|
25
|
+
|
|
26
|
+
type Order = {
|
|
27
|
+
id: string
|
|
28
|
+
number: string
|
|
29
|
+
location: string
|
|
30
|
+
status: 'open' | 'ready' | 'collected' | 'refunded'
|
|
31
|
+
/** Formatted by the app; mise has no opinion about currencies. */
|
|
32
|
+
total: string
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const orders: Order[] = [
|
|
36
|
+
{ id: '1', number: '#1042', location: 'Riverside', status: 'open', total: '$48.20' },
|
|
37
|
+
{ id: '2', number: '#1043', location: 'Riverside', status: 'ready', total: '$12.75' },
|
|
38
|
+
{ id: '3', number: '#1044', location: 'Harbour', status: 'collected', total: '$96.00' },
|
|
39
|
+
{ id: '4', number: '#1045', location: 'North yard', status: 'refunded', total: '$22.10' },
|
|
40
|
+
]
|
|
41
|
+
|
|
42
|
+
const STATUS_TONE: Record<Order['status'], Tone> = {
|
|
43
|
+
open: 'info',
|
|
44
|
+
ready: 'success',
|
|
45
|
+
collected: 'neutral',
|
|
46
|
+
refunded: 'warning',
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const STATUS_OPTIONS = [
|
|
50
|
+
{ label: 'Open', value: 'open' },
|
|
51
|
+
{ label: 'Ready', value: 'ready' },
|
|
52
|
+
{ label: 'Collected', value: 'collected' },
|
|
53
|
+
{ label: 'Refunded', value: 'refunded' },
|
|
54
|
+
]
|
|
55
|
+
|
|
56
|
+
let selection = $state<RowSelectionState>({})
|
|
57
|
+
const selectedCount = $derived(Object.keys(selection).length)
|
|
58
|
+
|
|
59
|
+
const column = dataTableColumns<Order>()
|
|
60
|
+
|
|
61
|
+
const columns = column.columns([
|
|
62
|
+
column.accessor('number', {
|
|
63
|
+
header: ({ column }) => renderComponent(DataTableColumnHeader, { column, title: 'Order' }),
|
|
64
|
+
}),
|
|
65
|
+
column.accessor('location', {
|
|
66
|
+
header: ({ column }) => renderComponent(DataTableColumnHeader, { column, title: 'Location' }),
|
|
67
|
+
}),
|
|
68
|
+
column.accessor('status', {
|
|
69
|
+
header: ({ column }) => renderComponent(DataTableColumnHeader, { column, title: 'Status' }),
|
|
70
|
+
cell: ({ row }) => renderSnippet(statusCell, row.original),
|
|
71
|
+
// The status filter passes a list of values; keep rows whose status is in it.
|
|
72
|
+
filterFn: (row, id, values: string[]) => values.includes(row.getValue(id)),
|
|
73
|
+
}),
|
|
74
|
+
column.accessor('total', { header: 'Total', enableSorting: false }),
|
|
75
|
+
column.display({
|
|
76
|
+
id: 'actions',
|
|
77
|
+
cell: ({ row }) => renderSnippet(actionsCell, row.original),
|
|
78
|
+
}),
|
|
79
|
+
])
|
|
80
|
+
</script>
|
|
81
|
+
|
|
82
|
+
{#snippet statusCell(order: Order)}
|
|
83
|
+
<Badge tone={STATUS_TONE[order.status]} class="capitalize">{order.status}</Badge>
|
|
84
|
+
{/snippet}
|
|
85
|
+
|
|
86
|
+
{#snippet actionsCell(order: Order)}
|
|
87
|
+
<DataTableRowActions label={`Actions for order ${order.number}`}>
|
|
88
|
+
<DropdownMenuItem>View order</DropdownMenuItem>
|
|
89
|
+
<DropdownMenuItem>Print receipt</DropdownMenuItem>
|
|
90
|
+
<DropdownMenuSeparator />
|
|
91
|
+
<DropdownMenuItem variant="destructive" disabled={order.status === 'refunded'}>
|
|
92
|
+
Refund
|
|
93
|
+
</DropdownMenuItem>
|
|
94
|
+
</DataTableRowActions>
|
|
95
|
+
{/snippet}
|
|
96
|
+
|
|
97
|
+
{#snippet noOrders()}
|
|
98
|
+
<Empty>
|
|
99
|
+
<EmptyHeader>
|
|
100
|
+
<EmptyTitle>No orders match</EmptyTitle>
|
|
101
|
+
<EmptyDescription>Clear the search or the status filter.</EmptyDescription>
|
|
102
|
+
</EmptyHeader>
|
|
103
|
+
</Empty>
|
|
104
|
+
{/snippet}
|
|
105
|
+
|
|
106
|
+
{#snippet bulkActions()}
|
|
107
|
+
{#if selectedCount > 0}
|
|
108
|
+
<Button variant="outline" size="sm">Print {selectedCount} receipts</Button>
|
|
109
|
+
{/if}
|
|
110
|
+
{/snippet}
|
|
111
|
+
|
|
112
|
+
<DataTable
|
|
113
|
+
title="Today's orders"
|
|
114
|
+
{columns}
|
|
115
|
+
data={orders}
|
|
116
|
+
defaultSort="-number"
|
|
117
|
+
getRowId={(order) => order.id}
|
|
118
|
+
enableRowSelection
|
|
119
|
+
bind:rowSelection={selection}
|
|
120
|
+
emptyState={noOrders}
|
|
121
|
+
>
|
|
122
|
+
{#snippet toolbar(table)}
|
|
123
|
+
<DataTableToolbar
|
|
124
|
+
{table}
|
|
125
|
+
search={{ placeholder: 'Search orders…' }}
|
|
126
|
+
filters={[{ columnId: 'status', title: 'Status', options: STATUS_OPTIONS }]}
|
|
127
|
+
actions={bulkActions}
|
|
128
|
+
/>
|
|
129
|
+
{/snippet}
|
|
130
|
+
</DataTable>
|