sheer-ui 0.0.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/README.md +42 -0
- package/package.json +369 -0
- package/src/lib/VENDORED.md +109 -0
- package/src/lib/assets/ui.css +733 -0
- package/src/lib/blocks/Appearance.svelte +104 -0
- package/src/lib/blocks/BoundaryFailed.svelte +33 -0
- package/src/lib/blocks/ErrorPage.svelte +65 -0
- package/src/lib/blocks/Footer.svelte +71 -0
- package/src/lib/blocks/Header.svelte +67 -0
- package/src/lib/blocks/Heading.svelte +86 -0
- package/src/lib/blocks/MobileNav.svelte +169 -0
- package/src/lib/blocks/PhoneInput.svelte +68 -0
- package/src/lib/blocks/Section.svelte +34 -0
- package/src/lib/blocks/alert-modal/AlertModal.svelte +83 -0
- package/src/lib/blocks/alert-modal/alert-modal.svelte.ts +81 -0
- package/src/lib/blocks/alert-modal/index.ts +2 -0
- package/src/lib/blocks/calendar.svelte +155 -0
- package/src/lib/blocks/copy-button/copy-button.svelte +43 -0
- package/src/lib/blocks/copy-button/copy.svelte.ts +52 -0
- package/src/lib/blocks/copy-button/index.ts +2 -0
- package/src/lib/blocks/date-picker/date-picker-with-presets.svelte +109 -0
- package/src/lib/blocks/date-picker/date-picker.svelte +91 -0
- package/src/lib/blocks/date-picker/index.ts +13 -0
- package/src/lib/blocks/date-picker/range-date-picker.svelte +128 -0
- package/src/lib/blocks/index.ts +12 -0
- package/src/lib/blocks/mockups/Browser.svelte +22 -0
- package/src/lib/blocks/mockups/Phone.svelte +44 -0
- package/src/lib/blocks/mockups/index.ts +2 -0
- package/src/lib/blocks/tab-nav/index.ts +1 -0
- package/src/lib/blocks/tab-nav/tab-nav.svelte +46 -0
- package/src/lib/blocks/time-picker/index.ts +16 -0
- package/src/lib/blocks/time-picker/time-input.svelte +118 -0
- package/src/lib/blocks/time-picker/time-picker.svelte +93 -0
- package/src/lib/blocks/time-picker/time-range-input.svelte +34 -0
- package/src/lib/blocks/time-picker/time-range-picker.svelte +180 -0
- package/src/lib/blocks/time-picker/time-slots.ts +61 -0
- package/src/lib/blocks/user-avatar/UserAvatar.svelte +36 -0
- package/src/lib/blocks/user-avatar/index.ts +1 -0
- package/src/lib/blocks/verification-code-field/VerificationCodeField.svelte +57 -0
- package/src/lib/blocks/verification-code-field/index.ts +1 -0
- package/src/lib/components/accordion/accordion.svelte.ts +43 -0
- package/src/lib/components/accordion/components/accordion-content.svelte +17 -0
- package/src/lib/components/accordion/components/accordion-item.svelte +58 -0
- package/src/lib/components/accordion/components/accordion-trigger.svelte +38 -0
- package/src/lib/components/accordion/components/accordion.svelte +24 -0
- package/src/lib/components/accordion/index.ts +11 -0
- package/src/lib/components/accordion/types.ts +19 -0
- package/src/lib/components/alert/alert-action.svelte +11 -0
- package/src/lib/components/alert/alert-description.svelte +18 -0
- package/src/lib/components/alert/alert-title.svelte +18 -0
- package/src/lib/components/alert/alert.svelte +37 -0
- package/src/lib/components/alert/index.ts +17 -0
- package/src/lib/components/avatar/avatar.svelte.ts +154 -0
- package/src/lib/components/avatar/components/avatar-fallback.svelte +38 -0
- package/src/lib/components/avatar/components/avatar-image.svelte +47 -0
- package/src/lib/components/avatar/components/avatar.svelte +57 -0
- package/src/lib/components/avatar/index.ts +9 -0
- package/src/lib/components/avatar/types.ts +46 -0
- package/src/lib/components/badge/badge.svelte +49 -0
- package/src/lib/components/badge/index.ts +1 -0
- package/src/lib/components/breadcrumb/breadcrumb-ellipsis.svelte +23 -0
- package/src/lib/components/breadcrumb/breadcrumb-item.svelte +11 -0
- package/src/lib/components/breadcrumb/breadcrumb-link.svelte +32 -0
- package/src/lib/components/breadcrumb/breadcrumb-list.svelte +15 -0
- package/src/lib/components/breadcrumb/breadcrumb-page.svelte +18 -0
- package/src/lib/components/breadcrumb/breadcrumb-separator.svelte +22 -0
- package/src/lib/components/breadcrumb/breadcrumb.svelte +10 -0
- package/src/lib/components/breadcrumb/index.ts +25 -0
- package/src/lib/components/button/button.svelte +55 -0
- package/src/lib/components/button/index.ts +12 -0
- package/src/lib/components/button/variants.ts +51 -0
- package/src/lib/components/calendar/calendar.svelte.ts +1081 -0
- package/src/lib/components/calendar/components/calendar-cell.svelte +34 -0
- package/src/lib/components/calendar/components/calendar-day.svelte +36 -0
- package/src/lib/components/calendar/components/calendar-grid-body.svelte +29 -0
- package/src/lib/components/calendar/components/calendar-grid-head.svelte +29 -0
- package/src/lib/components/calendar/components/calendar-grid-row.svelte +29 -0
- package/src/lib/components/calendar/components/calendar-grid.svelte +29 -0
- package/src/lib/components/calendar/components/calendar-head-cell.svelte +29 -0
- package/src/lib/components/calendar/components/calendar-header.svelte +29 -0
- package/src/lib/components/calendar/components/calendar-heading.svelte +33 -0
- package/src/lib/components/calendar/components/calendar-month-select.svelte +50 -0
- package/src/lib/components/calendar/components/calendar-next-button.svelte +37 -0
- package/src/lib/components/calendar/components/calendar-prev-button.svelte +37 -0
- package/src/lib/components/calendar/components/calendar-year-select.svelte +50 -0
- package/src/lib/components/calendar/components/calendar.svelte +123 -0
- package/src/lib/components/calendar/exports.ts +31 -0
- package/src/lib/components/calendar/index.ts +2 -0
- package/src/lib/components/calendar/types.ts +417 -0
- package/src/lib/components/card/card-action.svelte +15 -0
- package/src/lib/components/card/card-content.svelte +11 -0
- package/src/lib/components/card/card-description.svelte +11 -0
- package/src/lib/components/card/card-footer.svelte +11 -0
- package/src/lib/components/card/card-header.svelte +18 -0
- package/src/lib/components/card/card-title.svelte +11 -0
- package/src/lib/components/card/card.svelte +15 -0
- package/src/lib/components/card/index.ts +25 -0
- package/src/lib/components/carousel/carousel-arrow.svelte +42 -0
- package/src/lib/components/carousel/carousel-content.svelte +25 -0
- package/src/lib/components/carousel/carousel-dots.svelte +21 -0
- package/src/lib/components/carousel/carousel-item.svelte +21 -0
- package/src/lib/components/carousel/carousel-next.svelte +9 -0
- package/src/lib/components/carousel/carousel-previous.svelte +9 -0
- package/src/lib/components/carousel/carousel.svelte +245 -0
- package/src/lib/components/carousel/carouselState.svelte.ts +30 -0
- package/src/lib/components/carousel/index.ts +24 -0
- package/src/lib/components/chart/chart-container.svelte +52 -0
- package/src/lib/components/chart/chart-style.svelte +29 -0
- package/src/lib/components/chart/chart-tooltip.svelte +163 -0
- package/src/lib/components/chart/chart-utils.ts +50 -0
- package/src/lib/components/chart/index.ts +6 -0
- package/src/lib/components/checkbox/checkbox.svelte.ts +199 -0
- package/src/lib/components/checkbox/components/checkbox-group-label.svelte +29 -0
- package/src/lib/components/checkbox/components/checkbox-group.svelte +48 -0
- package/src/lib/components/checkbox/components/checkbox.svelte +85 -0
- package/src/lib/components/checkbox/index.ts +9 -0
- package/src/lib/components/checkbox/types.ts +131 -0
- package/src/lib/components/checkbox-native/checkbox.svelte +96 -0
- package/src/lib/components/checkbox-native/index.ts +8 -0
- package/src/lib/components/collapsible/components/collapsible-content.svelte +16 -0
- package/src/lib/components/collapsible/components/collapsible-trigger.svelte +14 -0
- package/src/lib/components/collapsible/components/collapsible.svelte +68 -0
- package/src/lib/components/collapsible/index.ts +9 -0
- package/src/lib/components/collapsible/types.ts +25 -0
- package/src/lib/components/combobox/components/combobox-arrow.svelte +8 -0
- package/src/lib/components/combobox/components/combobox-input.svelte +46 -0
- package/src/lib/components/combobox/components/combobox-trigger.svelte +44 -0
- package/src/lib/components/combobox/components/combobox.svelte +83 -0
- package/src/lib/components/combobox/index.ts +30 -0
- package/src/lib/components/combobox/select/components/select-content-static.svelte +56 -0
- package/src/lib/components/combobox/select/components/select-content.svelte +95 -0
- package/src/lib/components/combobox/select/components/select-group-heading.svelte +51 -0
- package/src/lib/components/combobox/select/components/select-group.svelte +51 -0
- package/src/lib/components/combobox/select/components/select-hidden-input.svelte +16 -0
- package/src/lib/components/combobox/select/components/select-item.svelte +86 -0
- package/src/lib/components/combobox/select/components/select-scroll-down-button.svelte +41 -0
- package/src/lib/components/combobox/select/components/select-scroll-up-button.svelte +34 -0
- package/src/lib/components/combobox/select/components/select-trigger.svelte +32 -0
- package/src/lib/components/combobox/select/components/select-value.svelte +40 -0
- package/src/lib/components/combobox/select/components/select-viewport.svelte +29 -0
- package/src/lib/components/combobox/select/components/select.svelte +92 -0
- package/src/lib/components/combobox/select/select.svelte.ts +1596 -0
- package/src/lib/components/combobox/select/types.ts +291 -0
- package/src/lib/components/combobox/types.ts +77 -0
- package/src/lib/components/command/command-dialog.svelte +42 -0
- package/src/lib/components/command/command.svelte.ts +1506 -0
- package/src/lib/components/command/components/_command-label.svelte +31 -0
- package/src/lib/components/command/components/command-empty.svelte +34 -0
- package/src/lib/components/command/components/command-group-heading.svelte +29 -0
- package/src/lib/components/command/components/command-group-items.svelte +31 -0
- package/src/lib/components/command/components/command-group.svelte +76 -0
- package/src/lib/components/command/components/command-input.svelte +55 -0
- package/src/lib/components/command/components/command-item.svelte +61 -0
- package/src/lib/components/command/components/command-link-item.svelte +61 -0
- package/src/lib/components/command/components/command-list.svelte +41 -0
- package/src/lib/components/command/components/command-loading.svelte +30 -0
- package/src/lib/components/command/components/command-separator.svelte +34 -0
- package/src/lib/components/command/components/command-viewport.svelte +29 -0
- package/src/lib/components/command/components/command.svelte +143 -0
- package/src/lib/components/command/compute-command-score.ts +207 -0
- package/src/lib/components/command/index.ts +29 -0
- package/src/lib/components/command/types.ts +222 -0
- package/src/lib/components/command/utils.ts +30 -0
- package/src/lib/components/context-menu/components/context-menu-content-static.svelte +22 -0
- package/src/lib/components/context-menu/components/context-menu-content.svelte +22 -0
- package/src/lib/components/context-menu/components/context-menu-trigger.svelte +46 -0
- package/src/lib/components/context-menu/components/context-menu.svelte +8 -0
- package/src/lib/components/context-menu/index.ts +39 -0
- package/src/lib/components/context-menu/types.ts +56 -0
- package/src/lib/components/data-table/column-helpers.ts +97 -0
- package/src/lib/components/data-table/data-table-checkbox.svelte +25 -0
- package/src/lib/components/data-table/data-table-sort-button.svelte +16 -0
- package/src/lib/components/data-table/flex-render.svelte +42 -0
- package/src/lib/components/data-table/index.ts +29 -0
- package/src/lib/components/data-table/render-helpers.ts +105 -0
- package/src/lib/components/data-table/table-cell.svelte +9 -0
- package/src/lib/components/data-table/table-column-header.svelte +51 -0
- package/src/lib/components/data-table/table-faceted-filter.svelte +109 -0
- package/src/lib/components/data-table/table-pagination.svelte +54 -0
- package/src/lib/components/data-table/table-priority-cell.svelte +22 -0
- package/src/lib/components/data-table/table-row-actions.svelte +29 -0
- package/src/lib/components/data-table/table-status-cell.svelte +34 -0
- package/src/lib/components/data-table/table-title-cell.svelte +24 -0
- package/src/lib/components/data-table/table-toolbar.svelte +55 -0
- package/src/lib/components/data-table/table-view-options.svelte +25 -0
- package/src/lib/components/date-field/components/date-field-hidden-input.svelte +9 -0
- package/src/lib/components/date-field/components/date-field-input.svelte +33 -0
- package/src/lib/components/date-field/components/date-field-label.svelte +29 -0
- package/src/lib/components/date-field/components/date-field-segment.svelte +29 -0
- package/src/lib/components/date-field/components/date-field.svelte +106 -0
- package/src/lib/components/date-field/date-field.svelte.ts +1474 -0
- package/src/lib/components/date-field/index.ts +11 -0
- package/src/lib/components/date-field/types.ts +165 -0
- package/src/lib/components/date-range-field/components/date-range-field-input.svelte +36 -0
- package/src/lib/components/date-range-field/components/date-range-field-label.svelte +29 -0
- package/src/lib/components/date-range-field/components/date-range-field.svelte +106 -0
- package/src/lib/components/date-range-field/date-range-field.svelte.ts +212 -0
- package/src/lib/components/date-range-field/index.ts +11 -0
- package/src/lib/components/date-range-field/types.ts +171 -0
- package/src/lib/components/dialog/components/dialog-close.svelte +31 -0
- package/src/lib/components/dialog/components/dialog-content-headless.svelte +104 -0
- package/src/lib/components/dialog/components/dialog-content.svelte +69 -0
- package/src/lib/components/dialog/components/dialog-description.svelte +29 -0
- package/src/lib/components/dialog/components/dialog-overlay.svelte +31 -0
- package/src/lib/components/dialog/components/dialog-title.svelte +30 -0
- package/src/lib/components/dialog/components/dialog-trigger.svelte +30 -0
- package/src/lib/components/dialog/components/dialog.svelte +21 -0
- package/src/lib/components/dialog/components/modal-surface.svelte +131 -0
- package/src/lib/components/dialog/dialog.svelte.ts +371 -0
- package/src/lib/components/dialog/index.ts +19 -0
- package/src/lib/components/dialog/types.ts +105 -0
- package/src/lib/components/drawer/drawer-close.svelte +7 -0
- package/src/lib/components/drawer/drawer-content.svelte +91 -0
- package/src/lib/components/drawer/drawer-description.svelte +8 -0
- package/src/lib/components/drawer/drawer-footer.svelte +11 -0
- package/src/lib/components/drawer/drawer-header.svelte +11 -0
- package/src/lib/components/drawer/drawer-nested.svelte +44 -0
- package/src/lib/components/drawer/drawer-overlay.svelte +60 -0
- package/src/lib/components/drawer/drawer-portal.svelte +10 -0
- package/src/lib/components/drawer/drawer-title.svelte +8 -0
- package/src/lib/components/drawer/drawer-trigger.svelte +7 -0
- package/src/lib/components/drawer/drawer.svelte +290 -0
- package/src/lib/components/drawer/index.ts +37 -0
- package/src/lib/components/dropdown-menu/components/dropdown-menu-content-static.svelte +22 -0
- package/src/lib/components/dropdown-menu/components/dropdown-menu-content.svelte +22 -0
- package/src/lib/components/dropdown-menu/index.ts +39 -0
- package/src/lib/components/dropdown-menu/types.ts +41 -0
- package/src/lib/components/empty/empty-content.svelte +15 -0
- package/src/lib/components/empty/empty-description.svelte +15 -0
- package/src/lib/components/empty/empty-header.svelte +15 -0
- package/src/lib/components/empty/empty-media.svelte +21 -0
- package/src/lib/components/empty/empty-title.svelte +11 -0
- package/src/lib/components/empty/empty.svelte +18 -0
- package/src/lib/components/empty/index.ts +22 -0
- package/src/lib/components/empty/variants.ts +16 -0
- package/src/lib/components/field/field-content.svelte +14 -0
- package/src/lib/components/field/field-description.svelte +19 -0
- package/src/lib/components/field/field-error.svelte +47 -0
- package/src/lib/components/field/field-group.svelte +17 -0
- package/src/lib/components/field/field-label.svelte +18 -0
- package/src/lib/components/field/field-legend.svelte +23 -0
- package/src/lib/components/field/field-separator.svelte +32 -0
- package/src/lib/components/field/field-set.svelte +14 -0
- package/src/lib/components/field/field-title.svelte +14 -0
- package/src/lib/components/field/field.svelte +36 -0
- package/src/lib/components/field/index.ts +32 -0
- package/src/lib/components/field/variants.ts +19 -0
- package/src/lib/components/input/file-input.svelte +26 -0
- package/src/lib/components/input/index.ts +12 -0
- package/src/lib/components/input/input.svelte +24 -0
- package/src/lib/components/input/variants.ts +28 -0
- package/src/lib/components/item/index.ts +34 -0
- package/src/lib/components/item/item-actions.svelte +11 -0
- package/src/lib/components/item/item-content.svelte +15 -0
- package/src/lib/components/item/item-description.svelte +18 -0
- package/src/lib/components/item/item-footer.svelte +11 -0
- package/src/lib/components/item/item-group.svelte +16 -0
- package/src/lib/components/item/item-header.svelte +11 -0
- package/src/lib/components/item/item-media.svelte +37 -0
- package/src/lib/components/item/item-separator.svelte +9 -0
- package/src/lib/components/item/item-title.svelte +15 -0
- package/src/lib/components/item/item.svelte +61 -0
- package/src/lib/components/kbd/index.ts +10 -0
- package/src/lib/components/kbd/kbd-group.svelte +11 -0
- package/src/lib/components/kbd/kbd.svelte +18 -0
- package/src/lib/components/label/exports.ts +2 -0
- package/src/lib/components/label/index.ts +2 -0
- package/src/lib/components/label/label.svelte +39 -0
- package/src/lib/components/label/label.svelte.ts +39 -0
- package/src/lib/components/label/types.ts +7 -0
- package/src/lib/components/link-preview/components/link-preview-content.svelte +60 -0
- package/src/lib/components/link-preview/components/link-preview-trigger.svelte +29 -0
- package/src/lib/components/link-preview/components/link-preview.svelte +34 -0
- package/src/lib/components/link-preview/exports.ts +11 -0
- package/src/lib/components/link-preview/index.ts +2 -0
- package/src/lib/components/link-preview/link-preview.svelte.ts +270 -0
- package/src/lib/components/link-preview/types.ts +102 -0
- package/src/lib/components/menu/components/menu-arrow.svelte +14 -0
- package/src/lib/components/menu/components/menu-checkbox-group.svelte +42 -0
- package/src/lib/components/menu/components/menu-checkbox-item.svelte +85 -0
- package/src/lib/components/menu/components/menu-content.svelte +98 -0
- package/src/lib/components/menu/components/menu-group-heading.svelte +47 -0
- package/src/lib/components/menu/components/menu-group.svelte +36 -0
- package/src/lib/components/menu/components/menu-item.svelte +58 -0
- package/src/lib/components/menu/components/menu-radio-group.svelte +44 -0
- package/src/lib/components/menu/components/menu-radio-item.svelte +65 -0
- package/src/lib/components/menu/components/menu-separator.svelte +38 -0
- package/src/lib/components/menu/components/menu-sub-content-static.svelte +8 -0
- package/src/lib/components/menu/components/menu-sub-content.svelte +133 -0
- package/src/lib/components/menu/components/menu-sub-trigger.svelte +60 -0
- package/src/lib/components/menu/components/menu-sub.svelte +23 -0
- package/src/lib/components/menu/components/menu-trigger.svelte +50 -0
- package/src/lib/components/menu/components/menu.svelte +58 -0
- package/src/lib/components/menu/exports.ts +38 -0
- package/src/lib/components/menu/menu.svelte.ts +1599 -0
- package/src/lib/components/menu/types.ts +285 -0
- package/src/lib/components/menu/utils.ts +68 -0
- package/src/lib/components/menubar/components/menubar-content-static.svelte +50 -0
- package/src/lib/components/menubar/components/menubar-content.svelte +54 -0
- package/src/lib/components/menubar/components/menubar-menu.svelte +34 -0
- package/src/lib/components/menubar/components/menubar-trigger.svelte +50 -0
- package/src/lib/components/menubar/components/menubar.svelte +57 -0
- package/src/lib/components/menubar/exports.ts +44 -0
- package/src/lib/components/menubar/index.ts +2 -0
- package/src/lib/components/menubar/menubar.svelte.ts +394 -0
- package/src/lib/components/menubar/types.ts +97 -0
- package/src/lib/components/meter/components/meter.svelte +41 -0
- package/src/lib/components/meter/exports.ts +2 -0
- package/src/lib/components/meter/index.ts +2 -0
- package/src/lib/components/meter/meter.svelte.ts +47 -0
- package/src/lib/components/meter/types.ts +28 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-content-impl.svelte +85 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-content.svelte +58 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-indicator-impl.svelte +29 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-indicator.svelte +56 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-item.svelte +56 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-link.svelte +64 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-list.svelte +59 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-sub.svelte +46 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-trigger.svelte +80 -0
- package/src/lib/components/navigation-menu/components/navigation-menu-viewport.svelte +63 -0
- package/src/lib/components/navigation-menu/components/navigation-menu.svelte +80 -0
- package/src/lib/components/navigation-menu/index.ts +28 -0
- package/src/lib/components/navigation-menu/navigation-menu.svelte.ts +1092 -0
- package/src/lib/components/navigation-menu/types.ts +189 -0
- package/src/lib/components/pagination/components/pagination-next-button.svelte +60 -0
- package/src/lib/components/pagination/components/pagination-page.svelte +65 -0
- package/src/lib/components/pagination/components/pagination-prev-button.svelte +60 -0
- package/src/lib/components/pagination/components/pagination.svelte +65 -0
- package/src/lib/components/pagination/index.ts +11 -0
- package/src/lib/components/pagination/pagination.svelte.ts +275 -0
- package/src/lib/components/pagination/types.ts +100 -0
- package/src/lib/components/pin-input/components/pin-input-cell.svelte +49 -0
- package/src/lib/components/pin-input/components/pin-input.svelte +76 -0
- package/src/lib/components/pin-input/exports.ts +4 -0
- package/src/lib/components/pin-input/index.ts +2 -0
- package/src/lib/components/pin-input/pin-input.svelte.ts +541 -0
- package/src/lib/components/pin-input/types.ts +118 -0
- package/src/lib/components/pin-input/usePasswordManager.svelte.ts +122 -0
- package/src/lib/components/popover/components/popover-close.svelte +38 -0
- package/src/lib/components/popover/components/popover-content.svelte +70 -0
- package/src/lib/components/popover/components/popover-header.svelte +11 -0
- package/src/lib/components/popover/components/popover-title.svelte +11 -0
- package/src/lib/components/popover/components/popover-trigger.svelte +44 -0
- package/src/lib/components/popover/components/popover.svelte +26 -0
- package/src/lib/components/popover/exports.ts +13 -0
- package/src/lib/components/popover/index.ts +2 -0
- package/src/lib/components/popover/popover.svelte.ts +392 -0
- package/src/lib/components/popover/types.ts +92 -0
- package/src/lib/components/progress/components/progress.svelte +56 -0
- package/src/lib/components/progress/exports.ts +3 -0
- package/src/lib/components/progress/index.ts +2 -0
- package/src/lib/components/progress/progress.svelte.ts +58 -0
- package/src/lib/components/progress/types.ts +28 -0
- package/src/lib/components/radio-group/context.ts +13 -0
- package/src/lib/components/radio-group/index.ts +10 -0
- package/src/lib/components/radio-group/radio-group-item.svelte +67 -0
- package/src/lib/components/radio-group/radio-group.svelte +87 -0
- package/src/lib/components/range-calendar/components/range-calendar-cell.svelte +31 -0
- package/src/lib/components/range-calendar/components/range-calendar-day.svelte +33 -0
- package/src/lib/components/range-calendar/components/range-calendar.svelte +120 -0
- package/src/lib/components/range-calendar/exports.ts +31 -0
- package/src/lib/components/range-calendar/index.ts +2 -0
- package/src/lib/components/range-calendar/range-calendar.svelte.ts +739 -0
- package/src/lib/components/range-calendar/types.ts +258 -0
- package/src/lib/components/resizable/index.ts +15 -0
- package/src/lib/components/resizable/resizable-handle.svelte +30 -0
- package/src/lib/components/resizable/resizable-pane-group.svelte +19 -0
- package/src/lib/components/scroll-area/components/scroll-area-corner-impl.svelte +34 -0
- package/src/lib/components/scroll-area/components/scroll-area-corner.svelte +18 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-auto.svelte +15 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-hover.svelte +22 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-scroll.svelte +16 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-shared.svelte +19 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-visible.svelte +16 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-x.svelte +23 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar-y.svelte +24 -0
- package/src/lib/components/scroll-area/components/scroll-area-scrollbar.svelte +56 -0
- package/src/lib/components/scroll-area/components/scroll-area-thumb-impl.svelte +49 -0
- package/src/lib/components/scroll-area/components/scroll-area-thumb.svelte +21 -0
- package/src/lib/components/scroll-area/components/scroll-area-viewport.svelte +39 -0
- package/src/lib/components/scroll-area/components/scroll-area.svelte +82 -0
- package/src/lib/components/scroll-area/exports.ts +13 -0
- package/src/lib/components/scroll-area/index.ts +2 -0
- package/src/lib/components/scroll-area/scroll-area.svelte.ts +946 -0
- package/src/lib/components/scroll-area/types.ts +67 -0
- package/src/lib/components/select/index.ts +5 -0
- package/src/lib/components/select/select-opt-group.svelte +10 -0
- package/src/lib/components/select/select-option.svelte +15 -0
- package/src/lib/components/select/select.svelte +281 -0
- package/src/lib/components/separator/components/separator.svelte +49 -0
- package/src/lib/components/separator/index.ts +3 -0
- package/src/lib/components/separator/separator.svelte.ts +43 -0
- package/src/lib/components/separator/types.ts +22 -0
- package/src/lib/components/sheet/components/sheet-close.svelte +8 -0
- package/src/lib/components/sheet/components/sheet-content.svelte +108 -0
- package/src/lib/components/sheet/components/sheet-description.svelte +9 -0
- package/src/lib/components/sheet/components/sheet-footer.svelte +11 -0
- package/src/lib/components/sheet/components/sheet-header.svelte +11 -0
- package/src/lib/components/sheet/components/sheet-overlay.svelte +13 -0
- package/src/lib/components/sheet/components/sheet-title.svelte +9 -0
- package/src/lib/components/sheet/components/sheet-trigger.svelte +8 -0
- package/src/lib/components/sheet/index.ts +47 -0
- package/src/lib/components/sheet/variants.ts +20 -0
- package/src/lib/components/sidebar/constants.ts +6 -0
- package/src/lib/components/sidebar/context.svelte.ts +54 -0
- package/src/lib/components/sidebar/index.ts +77 -0
- package/src/lib/components/sidebar/sidebar-content.svelte +16 -0
- package/src/lib/components/sidebar/sidebar-desktop-surface.svelte +60 -0
- package/src/lib/components/sidebar/sidebar-footer.svelte +11 -0
- package/src/lib/components/sidebar/sidebar-group-action.svelte +34 -0
- package/src/lib/components/sidebar/sidebar-group-content.svelte +16 -0
- package/src/lib/components/sidebar/sidebar-group-label.svelte +34 -0
- package/src/lib/components/sidebar/sidebar-group.svelte +16 -0
- package/src/lib/components/sidebar/sidebar-header.svelte +11 -0
- package/src/lib/components/sidebar/sidebar-input.svelte +14 -0
- package/src/lib/components/sidebar/sidebar-inset.svelte +18 -0
- package/src/lib/components/sidebar/sidebar-menu-action.svelte +38 -0
- package/src/lib/components/sidebar/sidebar-menu-badge.svelte +19 -0
- package/src/lib/components/sidebar/sidebar-menu-button.svelte +99 -0
- package/src/lib/components/sidebar/sidebar-menu-item.svelte +21 -0
- package/src/lib/components/sidebar/sidebar-menu-skeleton.svelte +34 -0
- package/src/lib/components/sidebar/sidebar-menu-sub-button.svelte +40 -0
- package/src/lib/components/sidebar/sidebar-menu-sub-item.svelte +16 -0
- package/src/lib/components/sidebar/sidebar-menu-sub.svelte +19 -0
- package/src/lib/components/sidebar/sidebar-menu.svelte +21 -0
- package/src/lib/components/sidebar/sidebar-mobile-surface.svelte +48 -0
- package/src/lib/components/sidebar/sidebar-provider.svelte +60 -0
- package/src/lib/components/sidebar/sidebar-rail.svelte +36 -0
- package/src/lib/components/sidebar/sidebar-separator.svelte +9 -0
- package/src/lib/components/sidebar/sidebar-trigger.svelte +35 -0
- package/src/lib/components/sidebar/sidebar.svelte +30 -0
- package/src/lib/components/sidebar/types.ts +14 -0
- package/src/lib/components/skeleton/index.ts +7 -0
- package/src/lib/components/skeleton/skeleton.svelte +9 -0
- package/src/lib/components/slider/components/slider-range.svelte +37 -0
- package/src/lib/components/slider/components/slider-thumb-label.svelte +42 -0
- package/src/lib/components/slider/components/slider-thumb.svelte +46 -0
- package/src/lib/components/slider/components/slider-tick-label.svelte +42 -0
- package/src/lib/components/slider/components/slider-tick.svelte +28 -0
- package/src/lib/components/slider/components/slider.svelte +136 -0
- package/src/lib/components/slider/helpers.ts +249 -0
- package/src/lib/components/slider/index.ts +15 -0
- package/src/lib/components/slider/slider.svelte.ts +979 -0
- package/src/lib/components/slider/types.ts +294 -0
- package/src/lib/components/sonner/Toast.svelte +558 -0
- package/src/lib/components/sonner/Toaster.svelte +603 -0
- package/src/lib/components/sonner/index.ts +15 -0
- package/src/lib/components/sonner/toast-state.svelte.ts +217 -0
- package/src/lib/components/sonner/types.ts +384 -0
- package/src/lib/components/switch/index.ts +8 -0
- package/src/lib/components/switch/switch.svelte +78 -0
- package/src/lib/components/table/index.ts +28 -0
- package/src/lib/components/table/table-body.svelte +15 -0
- package/src/lib/components/table/table-caption.svelte +10 -0
- package/src/lib/components/table/table-cell.svelte +14 -0
- package/src/lib/components/table/table-footer.svelte +19 -0
- package/src/lib/components/table/table-head.svelte +17 -0
- package/src/lib/components/table/table-header.svelte +15 -0
- package/src/lib/components/table/table-row.svelte +14 -0
- package/src/lib/components/table/table.svelte +12 -0
- package/src/lib/components/tabs/components/tabs-content.svelte +30 -0
- package/src/lib/components/tabs/components/tabs-list.svelte +38 -0
- package/src/lib/components/tabs/components/tabs-trigger.svelte +51 -0
- package/src/lib/components/tabs/components/tabs.svelte +52 -0
- package/src/lib/components/tabs/index.ts +11 -0
- package/src/lib/components/tabs/tabs.svelte.ts +253 -0
- package/src/lib/components/tabs/types.ts +86 -0
- package/src/lib/components/textarea/index.ts +7 -0
- package/src/lib/components/textarea/textarea.svelte +23 -0
- package/src/lib/components/theme-toggle/index.ts +5 -0
- package/src/lib/components/theme-toggle/theme-toggle.svelte +49 -0
- package/src/lib/components/theme-toggle/theme.svelte.ts +81 -0
- package/src/lib/components/time-field/components/time-field-hidden-input.svelte +9 -0
- package/src/lib/components/time-field/components/time-field-input.svelte +33 -0
- package/src/lib/components/time-field/components/time-field-label.svelte +29 -0
- package/src/lib/components/time-field/components/time-field-segment.svelte +29 -0
- package/src/lib/components/time-field/components/time-field.svelte +99 -0
- package/src/lib/components/time-field/index.ts +11 -0
- package/src/lib/components/time-field/time-field.svelte.ts +1198 -0
- package/src/lib/components/time-field/types.ts +174 -0
- package/src/lib/components/time-range-field/components/time-range-field-input.svelte +36 -0
- package/src/lib/components/time-range-field/components/time-range-field-label.svelte +29 -0
- package/src/lib/components/time-range-field/components/time-range-field.svelte +104 -0
- package/src/lib/components/time-range-field/index.ts +11 -0
- package/src/lib/components/time-range-field/time-range-field.svelte.ts +235 -0
- package/src/lib/components/time-range-field/types.ts +181 -0
- package/src/lib/components/toggle/components/toggle.svelte +55 -0
- package/src/lib/components/toggle/index.ts +3 -0
- package/src/lib/components/toggle/toggle.svelte.ts +57 -0
- package/src/lib/components/toggle/types.ts +33 -0
- package/src/lib/components/toggle/variants.ts +25 -0
- package/src/lib/components/toggle-group/components/toggle-group-item.svelte +67 -0
- package/src/lib/components/toggle-group/components/toggle-group.svelte +109 -0
- package/src/lib/components/toggle-group/index.ts +7 -0
- package/src/lib/components/toggle-group/toggle-group.svelte.ts +235 -0
- package/src/lib/components/toggle-group/types.ts +89 -0
- package/src/lib/components/toolbar/components/toolbar-button.svelte +46 -0
- package/src/lib/components/toolbar/components/toolbar-group-item.svelte +56 -0
- package/src/lib/components/toolbar/components/toolbar-group.svelte +69 -0
- package/src/lib/components/toolbar/components/toolbar-link.svelte +39 -0
- package/src/lib/components/toolbar/components/toolbar.svelte +39 -0
- package/src/lib/components/toolbar/index.ts +13 -0
- package/src/lib/components/toolbar/toolbar.svelte.ts +373 -0
- package/src/lib/components/toolbar/types.ts +60 -0
- package/src/lib/components/tooltip/components/tooltip-content.svelte +81 -0
- package/src/lib/components/tooltip/components/tooltip-provider.svelte +26 -0
- package/src/lib/components/tooltip/components/tooltip-trigger.svelte +48 -0
- package/src/lib/components/tooltip/components/tooltip.svelte +55 -0
- package/src/lib/components/tooltip/index.ts +17 -0
- package/src/lib/components/tooltip/tooltip.svelte.ts +796 -0
- package/src/lib/components/tooltip/types.ts +175 -0
- package/src/lib/components/tooltip/utils.ts +1 -0
- package/src/lib/icons/google-icon.svelte +10 -0
- package/src/lib/icons/google-workspace.svelte +18 -0
- package/src/lib/icons/icon.d.ts +19 -0
- package/src/lib/icons/instagram.svelte +9 -0
- package/src/lib/icons/instantly.svelte +10 -0
- package/src/lib/icons/linkedin.svelte +9 -0
- package/src/lib/icons/mailshake.svelte +10 -0
- package/src/lib/icons/microsoft-365.svelte +7 -0
- package/src/lib/icons/passcode.svelte +12 -0
- package/src/lib/icons/replyio.svelte +10 -0
- package/src/lib/icons/smartlead.svelte +19 -0
- package/src/lib/icons/smtp.svelte +10 -0
- package/src/lib/icons/x-logo.svelte +9 -0
- package/src/lib/internal/animations-settled.svelte.ts +119 -0
- package/src/lib/internal/arrays.ts +253 -0
- package/src/lib/internal/attribute-types.ts +53 -0
- package/src/lib/internal/attrs.ts +64 -0
- package/src/lib/internal/body-scroll-lock.svelte.ts +330 -0
- package/src/lib/internal/create-id.ts +12 -0
- package/src/lib/internal/date-time/announcer.ts +74 -0
- package/src/lib/internal/date-time/calendar-helpers.svelte.ts +399 -0
- package/src/lib/internal/date-time/field/helpers.ts +431 -0
- package/src/lib/internal/date-time/field/parts.ts +15 -0
- package/src/lib/internal/date-time/field/range-field.svelte.ts +45 -0
- package/src/lib/internal/date-time/field/segments.ts +89 -0
- package/src/lib/internal/date-time/field/time-helpers.ts +311 -0
- package/src/lib/internal/date-time/formatter.ts +86 -0
- package/src/lib/internal/date-time/placeholders.ts +131 -0
- package/src/lib/internal/date-time/types.ts +121 -0
- package/src/lib/internal/date-time/utils.ts +243 -0
- package/src/lib/internal/dismissible-layer/index.ts +3 -0
- package/src/lib/internal/dismissible-layer/scheduler.ts +48 -0
- package/src/lib/internal/dismissible-layer/types.ts +57 -0
- package/src/lib/internal/dismissible-layer/use-dismissable-layer.svelte.ts +291 -0
- package/src/lib/internal/escape-layer/index.ts +3 -0
- package/src/lib/internal/escape-layer/types.ts +34 -0
- package/src/lib/internal/escape-layer/use-escape-layer.svelte.ts +91 -0
- package/src/lib/internal/floating-layer/components/floating-layer-arrow.svelte +35 -0
- package/src/lib/internal/floating-layer/components/floating-layer-content-static.svelte +19 -0
- package/src/lib/internal/floating-layer/components/floating-layer-content.svelte +52 -0
- package/src/lib/internal/floating-layer/components/floating-layer.svelte +12 -0
- package/src/lib/internal/floating-layer/components/index.ts +6 -0
- package/src/lib/internal/floating-layer/index.ts +2 -0
- package/src/lib/internal/floating-layer/types.ts +126 -0
- package/src/lib/internal/floating-layer/use-floating-layer.svelte.ts +471 -0
- package/src/lib/internal/focus-scope/focus-scope.svelte.ts +310 -0
- package/src/lib/internal/focus-scope/index.ts +4 -0
- package/src/lib/internal/focus-scope/types.ts +45 -0
- package/src/lib/internal/focus.ts +14 -0
- package/src/lib/internal/global-singleton.ts +10 -0
- package/src/lib/internal/group-value.svelte.ts +36 -0
- package/src/lib/internal/hover-intent-geometry.ts +96 -0
- package/src/lib/internal/index.ts +44 -0
- package/src/lib/internal/kbd.ts +60 -0
- package/src/lib/internal/layer-stack.ts +37 -0
- package/src/lib/internal/math.ts +11 -0
- package/src/lib/internal/merge-props.ts +7 -0
- package/src/lib/internal/native-dialog-controller.svelte.ts +102 -0
- package/src/lib/internal/native-popover.svelte.ts +173 -0
- package/src/lib/internal/open-cell.svelte.ts +41 -0
- package/src/lib/internal/paneforge/index.ts +5 -0
- package/src/lib/internal/paneforge/internal/constants.ts +2 -0
- package/src/lib/internal/paneforge/internal/helpers.ts +354 -0
- package/src/lib/internal/paneforge/internal/types.ts +33 -0
- package/src/lib/internal/paneforge/internal/utils/adjust-layout.ts +122 -0
- package/src/lib/internal/paneforge/internal/utils/aria.ts +36 -0
- package/src/lib/internal/paneforge/internal/utils/compare.ts +15 -0
- package/src/lib/internal/paneforge/internal/utils/is.ts +13 -0
- package/src/lib/internal/paneforge/internal/utils/resize.ts +31 -0
- package/src/lib/internal/paneforge/internal/utils/storage.ts +116 -0
- package/src/lib/internal/paneforge/internal/utils/style.ts +104 -0
- package/src/lib/internal/paneforge/pane-group.svelte +48 -0
- package/src/lib/internal/paneforge/pane-resizer.svelte +40 -0
- package/src/lib/internal/paneforge/pane.svelte +60 -0
- package/src/lib/internal/paneforge/paneforge.svelte.ts +821 -0
- package/src/lib/internal/paneforge/types.ts +179 -0
- package/src/lib/internal/popper-layer/index.ts +2 -0
- package/src/lib/internal/popper-layer/popper-content.svelte +19 -0
- package/src/lib/internal/popper-layer/popper-layer-inner.svelte +122 -0
- package/src/lib/internal/popper-layer/popper-layer.svelte +71 -0
- package/src/lib/internal/popper-layer/types.ts +65 -0
- package/src/lib/internal/portal/index.ts +2 -0
- package/src/lib/internal/portal/portal.svelte +61 -0
- package/src/lib/internal/prop-resolvers.ts +14 -0
- package/src/lib/internal/roving-focus-group.ts +147 -0
- package/src/lib/internal/roving-focus-item.svelte.ts +51 -0
- package/src/lib/internal/safe-polygon.svelte.ts +239 -0
- package/src/lib/internal/shared-state.svelte.ts +39 -0
- package/src/lib/internal/state-machine.ts +32 -0
- package/src/lib/internal/svelte-resize-observer.svelte.ts +37 -0
- package/src/lib/internal/tabbable.ts +398 -0
- package/src/lib/internal/table/core.ts +53 -0
- package/src/lib/internal/table/filter-fns.ts +10 -0
- package/src/lib/internal/table/index.ts +2 -0
- package/src/lib/internal/table/sorting-fns.ts +84 -0
- package/src/lib/internal/table/table.svelte.ts +330 -0
- package/src/lib/internal/table/types.ts +33 -0
- package/src/lib/internal/timeout-fn.svelte.ts +36 -0
- package/src/lib/internal/tools/box.svelte.ts +153 -0
- package/src/lib/internal/tools/index.ts +22 -0
- package/src/lib/internal/tools/types.ts +44 -0
- package/src/lib/internal/tools/utils/attach-ref.ts +74 -0
- package/src/lib/internal/tools/utils/compose-handlers.ts +36 -0
- package/src/lib/internal/tools/utils/dom-context.svelte.ts +63 -0
- package/src/lib/internal/tools/utils/dom.ts +62 -0
- package/src/lib/internal/tools/utils/events.ts +1 -0
- package/src/lib/internal/tools/utils/index.ts +5 -0
- package/src/lib/internal/tools/utils/strings.ts +28 -0
- package/src/lib/internal/typeahead.svelte.ts +48 -0
- package/src/lib/internal/types.ts +119 -0
- package/src/lib/internal/utils.ts +10 -0
- package/src/lib/internal/vaul/browser.ts +8 -0
- package/src/lib/internal/vaul/constants.ts +19 -0
- package/src/lib/internal/vaul/helpers.ts +39 -0
- package/src/lib/internal/vaul/types.ts +142 -0
- package/src/lib/internal/vaul/use-drawer-content.svelte.ts +219 -0
- package/src/lib/internal/vaul/use-drawer-root.svelte.ts +682 -0
- package/src/lib/internal/vaul/use-position-fixed.svelte.ts +142 -0
- package/src/lib/internal/vaul/use-prevent-scroll.svelte.ts +267 -0
- package/src/lib/internal/vaul/use-snap-points.svelte.ts +246 -0
- package/src/lib/time.ts +73 -0
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
import type { Expand } from '../../../internal/tools/index.js';
|
|
2
|
+
import type { PortalProps } from '../../../internal/portal/index.js';
|
|
3
|
+
import type { PopperLayerProps, PopperLayerStaticProps } from '../../../internal/popper-layer/types.js';
|
|
4
|
+
import type { BitsPrimitiveButtonAttributes, BitsPrimitiveDivAttributes, BitsPrimitiveSpanAttributes } from '../../../internal/attribute-types.js';
|
|
5
|
+
import type { OnChangeFn, WithChild, WithChildNoChildrenSnippetProps, WithChildren, Without } from '../../../internal/types.js';
|
|
6
|
+
import type { Snippet } from 'svelte';
|
|
7
|
+
import type { OpenCell } from '../../../internal/open-cell.svelte.js';
|
|
8
|
+
import type { FloatingContentSnippetProps, StaticContentSnippetProps } from '../../../internal/types.js';
|
|
9
|
+
import type { HTMLInputAttributes } from 'svelte/elements';
|
|
10
|
+
|
|
11
|
+
export type SelectSharedRootPropsWithoutHTML = {
|
|
12
|
+
/**
|
|
13
|
+
* Whether the combobox is disabled.
|
|
14
|
+
*
|
|
15
|
+
* @defaultValue `false`
|
|
16
|
+
*/
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Whether the combobox is required (for form submission).
|
|
21
|
+
*
|
|
22
|
+
* @defaultValue `false`
|
|
23
|
+
*/
|
|
24
|
+
required?: boolean;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* The name to apply to the hidden input element for form submission.
|
|
28
|
+
* If not provided, a hidden input will not be rendered and the combobox will not be part of a form.
|
|
29
|
+
*/
|
|
30
|
+
name?: string;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* A callback function called when the open state changes and the animation is complete.
|
|
34
|
+
*/
|
|
35
|
+
onOpenChangeComplete?: OnChangeFn<boolean>;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Whether or not the combobox menu should loop through the items when navigating with the keyboard.
|
|
39
|
+
*
|
|
40
|
+
* @defaultValue `false`
|
|
41
|
+
*/
|
|
42
|
+
loop?: boolean;
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* How to scroll the combobox items into view when navigating with the keyboard.
|
|
46
|
+
*
|
|
47
|
+
* @defaultValue `"nearest"`
|
|
48
|
+
*/
|
|
49
|
+
scrollAlignment?: 'nearest' | 'center';
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Optionally provide an array of `value` and `label` pairs that will be used to match
|
|
53
|
+
* and trigger selection when the trigger is focused and a key is pressed while the content
|
|
54
|
+
* is closed. It's also used to handle form autofill.
|
|
55
|
+
*
|
|
56
|
+
* By providing this value, you enable selecting a value when the trigger is focused and a key
|
|
57
|
+
* is pressed without the content being open, similar to how a native `<select>` works.
|
|
58
|
+
* For this to work, you must
|
|
59
|
+
*
|
|
60
|
+
* The label is what the user will potentially search for via typeahead, and the value is what
|
|
61
|
+
* is set as the selected value when a typeahead match is found.
|
|
62
|
+
*
|
|
63
|
+
* We can't rely on the individual `Item` components to do this because they may not ever be
|
|
64
|
+
* mounted to do the DOM if using a conditional block with a Svelte transition or certain
|
|
65
|
+
* animation libraries.
|
|
66
|
+
*
|
|
67
|
+
* IMPORTANT: This functionality is only available for single-select listboxes.
|
|
68
|
+
*/
|
|
69
|
+
items?: { value: string; label: string; disabled?: boolean }[];
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Whether to allow the user to deselect an item by clicking on an already selected item.
|
|
73
|
+
* This is only applicable to `type="single"` selects/comboboxes.
|
|
74
|
+
*/
|
|
75
|
+
allowDeselect?: boolean;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* The autocomplete attribute to forward to the hidden input element.
|
|
79
|
+
*/
|
|
80
|
+
autocomplete?: HTMLInputAttributes['autocomplete'];
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
export type SelectBaseRootPropsWithoutHTML = SelectSharedRootPropsWithoutHTML & {
|
|
84
|
+
/**
|
|
85
|
+
* The derivation source for the select's open state: the internal cell
|
|
86
|
+
* re-derives whenever this prop changes, and interactions (trigger, Escape,
|
|
87
|
+
* a snippet-cell write) override it until the next change. Reconcile
|
|
88
|
+
* dismissals via onOpenChangeComplete. Plain value — not bindable.
|
|
89
|
+
*/
|
|
90
|
+
open?: boolean;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* A caller-constructed cell (own source and, optionally, a delegate writer)
|
|
94
|
+
* used instead of building one from `open`. When given, `open` is ignored.
|
|
95
|
+
*/
|
|
96
|
+
state?: OpenCell;
|
|
97
|
+
|
|
98
|
+
/** Children receive the state cell, typed and guaranteed within the tree. */
|
|
99
|
+
children?: Snippet<[OpenCell]>;
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export type SelectSingleRootPropsWithoutHTML = {
|
|
103
|
+
/**
|
|
104
|
+
* The value of the selected combobox item.
|
|
105
|
+
*
|
|
106
|
+
* @bindable
|
|
107
|
+
*/
|
|
108
|
+
value?: string;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* A callback function called when the value changes.
|
|
112
|
+
*/
|
|
113
|
+
onValueChange?: OnChangeFn<string>;
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* The type of combobox.
|
|
117
|
+
*
|
|
118
|
+
* @required
|
|
119
|
+
*/
|
|
120
|
+
type: 'single';
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
export type SelectMultipleRootPropsWithoutHTML = {
|
|
124
|
+
/**
|
|
125
|
+
* The value of the selected combobox item.
|
|
126
|
+
*
|
|
127
|
+
* @bindable
|
|
128
|
+
*/
|
|
129
|
+
value?: string[];
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* A callback function called when the value changes.
|
|
133
|
+
*/
|
|
134
|
+
onValueChange?: OnChangeFn<string[]>;
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* The type of combobox.
|
|
138
|
+
*
|
|
139
|
+
* @required
|
|
140
|
+
*/
|
|
141
|
+
type: 'multiple';
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
export type SelectSingleRootProps = SelectBaseRootPropsWithoutHTML &
|
|
145
|
+
SelectSingleRootPropsWithoutHTML &
|
|
146
|
+
Without<BitsPrimitiveDivAttributes, SelectSingleRootPropsWithoutHTML | SelectBaseRootPropsWithoutHTML>;
|
|
147
|
+
|
|
148
|
+
export type SelectMultipleRootProps = SelectBaseRootPropsWithoutHTML &
|
|
149
|
+
SelectMultipleRootPropsWithoutHTML &
|
|
150
|
+
Without<BitsPrimitiveDivAttributes, SelectMultipleRootPropsWithoutHTML | SelectBaseRootPropsWithoutHTML>;
|
|
151
|
+
|
|
152
|
+
export type SelectRootPropsWithoutHTML = SelectBaseRootPropsWithoutHTML &
|
|
153
|
+
(SelectSingleRootPropsWithoutHTML | SelectMultipleRootPropsWithoutHTML);
|
|
154
|
+
|
|
155
|
+
export type SelectRootProps = SelectRootPropsWithoutHTML;
|
|
156
|
+
|
|
157
|
+
export type SelectValueSnippetProps = {
|
|
158
|
+
selection:
|
|
159
|
+
| {
|
|
160
|
+
type: 'single';
|
|
161
|
+
selected?: { value: string; label: string };
|
|
162
|
+
setValue: (value: string) => void;
|
|
163
|
+
}
|
|
164
|
+
| {
|
|
165
|
+
type: 'multiple';
|
|
166
|
+
selected: { value: string; label: string }[];
|
|
167
|
+
setValue: (value: string[]) => void;
|
|
168
|
+
};
|
|
169
|
+
placeholder: string | null;
|
|
170
|
+
disabled: boolean;
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
export type SelectValuePropsWithoutHTML = WithChild<{}, SelectValueSnippetProps>;
|
|
174
|
+
|
|
175
|
+
export type SelectValueProps = SelectValuePropsWithoutHTML & Without<BitsPrimitiveSpanAttributes, SelectValuePropsWithoutHTML>;
|
|
176
|
+
|
|
177
|
+
export type _SharedSelectContentProps = {
|
|
178
|
+
/**
|
|
179
|
+
* Whether or not to loop through the items when navigating with the keyboard.
|
|
180
|
+
*
|
|
181
|
+
* @defaultValue `false`
|
|
182
|
+
*/
|
|
183
|
+
loop?: boolean;
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
export type SelectContentPropsWithoutHTML = Expand<
|
|
187
|
+
WithChildNoChildrenSnippetProps<
|
|
188
|
+
Omit<PopperLayerProps, 'content' | 'onOpenAutoFocus' | 'trapFocus' | 'onCloseAutoFocus'> & _SharedSelectContentProps,
|
|
189
|
+
FloatingContentSnippetProps
|
|
190
|
+
>
|
|
191
|
+
>;
|
|
192
|
+
|
|
193
|
+
export type SelectContentProps = SelectContentPropsWithoutHTML & Without<BitsPrimitiveDivAttributes, SelectContentPropsWithoutHTML>;
|
|
194
|
+
|
|
195
|
+
export type SelectContentStaticPropsWithoutHTML = Expand<
|
|
196
|
+
WithChildNoChildrenSnippetProps<
|
|
197
|
+
Omit<PopperLayerStaticProps, 'content' | 'onOpenAutoFocus' | 'onCloseAutoFocus' | 'trapFocus'> & _SharedSelectContentProps,
|
|
198
|
+
StaticContentSnippetProps
|
|
199
|
+
>
|
|
200
|
+
>;
|
|
201
|
+
|
|
202
|
+
export type SelectContentStaticProps = SelectContentStaticPropsWithoutHTML &
|
|
203
|
+
Without<BitsPrimitiveDivAttributes, SelectContentStaticPropsWithoutHTML>;
|
|
204
|
+
|
|
205
|
+
export type SelectTriggerPropsWithoutHTML = WithChild;
|
|
206
|
+
|
|
207
|
+
export type SelectTriggerProps = SelectTriggerPropsWithoutHTML & Without<BitsPrimitiveButtonAttributes, SelectTriggerPropsWithoutHTML>;
|
|
208
|
+
|
|
209
|
+
export type SelectItemSnippetProps = { selected: boolean; highlighted: boolean };
|
|
210
|
+
|
|
211
|
+
export type SelectItemPropsWithoutHTML = WithChild<
|
|
212
|
+
{
|
|
213
|
+
/**
|
|
214
|
+
* The value of the item.
|
|
215
|
+
*
|
|
216
|
+
* @required
|
|
217
|
+
*/
|
|
218
|
+
value: string;
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* The label of the item. If provided, this is the item that users will search for.
|
|
222
|
+
* If not provided, the value will be used as the label.
|
|
223
|
+
*/
|
|
224
|
+
label?: string;
|
|
225
|
+
|
|
226
|
+
/**
|
|
227
|
+
* Whether the item is disabled.
|
|
228
|
+
*
|
|
229
|
+
* @defaultValue `false`
|
|
230
|
+
*/
|
|
231
|
+
disabled?: boolean;
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* A callback function called when the item is highlighted. This can be used as a
|
|
235
|
+
* replacement for `onfocus` since we don't actually focus the item and instead
|
|
236
|
+
* rely on the `aria-activedescendant` attribute to indicate the highlighted item.
|
|
237
|
+
*/
|
|
238
|
+
onHighlight?: () => void;
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
* A callback function called when the item is unhighlighted. This can be used as a
|
|
242
|
+
* replacement for `onblur` since we don't actually focus the item and instead
|
|
243
|
+
* rely on the `aria-activedescendant` attribute to indicate the highlighted item.
|
|
244
|
+
*/
|
|
245
|
+
onUnhighlight?: () => void;
|
|
246
|
+
},
|
|
247
|
+
SelectItemSnippetProps
|
|
248
|
+
>;
|
|
249
|
+
|
|
250
|
+
export type SelectItemProps = SelectItemPropsWithoutHTML & Without<BitsPrimitiveDivAttributes, SelectItemPropsWithoutHTML>;
|
|
251
|
+
|
|
252
|
+
export type SelectGroupPropsWithoutHTML = WithChild;
|
|
253
|
+
|
|
254
|
+
export type SelectGroupProps = SelectGroupPropsWithoutHTML & Without<BitsPrimitiveDivAttributes, SelectGroupPropsWithoutHTML>;
|
|
255
|
+
|
|
256
|
+
export type SelectGroupHeadingPropsWithoutHTML = WithChild;
|
|
257
|
+
|
|
258
|
+
export type SelectGroupHeadingProps = SelectGroupHeadingPropsWithoutHTML &
|
|
259
|
+
Without<BitsPrimitiveDivAttributes, SelectGroupHeadingPropsWithoutHTML>;
|
|
260
|
+
|
|
261
|
+
export type SelectSeparatorPropsWithoutHTML = WithChild;
|
|
262
|
+
|
|
263
|
+
export type SelectSeparatorProps = SelectSeparatorPropsWithoutHTML & Without<BitsPrimitiveDivAttributes, SelectSeparatorPropsWithoutHTML>;
|
|
264
|
+
|
|
265
|
+
export type SelectPortalPropsWithoutHTML = PortalProps;
|
|
266
|
+
|
|
267
|
+
export type SelectPortalProps = SelectPortalPropsWithoutHTML;
|
|
268
|
+
|
|
269
|
+
export type SelectViewportPropsWithoutHTML = WithChild;
|
|
270
|
+
|
|
271
|
+
export type SelectViewportProps = SelectViewportPropsWithoutHTML & Without<BitsPrimitiveDivAttributes, SelectViewportPropsWithoutHTML>;
|
|
272
|
+
|
|
273
|
+
export type SelectScrollButtonPropsWithoutHTML = WithChild<{
|
|
274
|
+
/**
|
|
275
|
+
* Controls the initial delay (tick 0) and delay between auto-scrolls in milliseconds.
|
|
276
|
+
* The default function always returns 50ms.
|
|
277
|
+
*
|
|
278
|
+
* @param tick current tick number
|
|
279
|
+
*/
|
|
280
|
+
delay?: (tick: number) => number;
|
|
281
|
+
}>;
|
|
282
|
+
|
|
283
|
+
export type SelectScrollUpButtonPropsWithoutHTML = SelectScrollButtonPropsWithoutHTML;
|
|
284
|
+
|
|
285
|
+
export type SelectScrollUpButtonProps = SelectScrollUpButtonPropsWithoutHTML &
|
|
286
|
+
Without<BitsPrimitiveDivAttributes, SelectScrollUpButtonPropsWithoutHTML>;
|
|
287
|
+
|
|
288
|
+
export type SelectScrollDownButtonPropsWithoutHTML = SelectScrollButtonPropsWithoutHTML;
|
|
289
|
+
|
|
290
|
+
export type SelectScrollDownButtonProps = SelectScrollDownButtonPropsWithoutHTML &
|
|
291
|
+
Without<BitsPrimitiveDivAttributes, SelectScrollDownButtonPropsWithoutHTML>;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type { BitsPrimitiveInputAttributes } from '../../internal/attribute-types.js';
|
|
2
|
+
import type { LucideProps } from '@lucide/svelte';
|
|
3
|
+
import type {
|
|
4
|
+
SelectBaseRootPropsWithoutHTML,
|
|
5
|
+
SelectMultipleRootPropsWithoutHTML,
|
|
6
|
+
SelectSingleRootPropsWithoutHTML,
|
|
7
|
+
} from './select/types.js';
|
|
8
|
+
import type { WithChild, Without } from '../../internal/types.js';
|
|
9
|
+
|
|
10
|
+
export type ComboboxBaseRootPropsWithoutHTML = Omit<SelectBaseRootPropsWithoutHTML, 'autocomplete'> & {
|
|
11
|
+
/**
|
|
12
|
+
* A read-only value that can be used to programmatically
|
|
13
|
+
* update the input value.
|
|
14
|
+
*
|
|
15
|
+
* This is useful for updating the displayed label/input
|
|
16
|
+
* when the value changes outside of Bits UI.
|
|
17
|
+
*/
|
|
18
|
+
inputValue?: string;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export type ComboboxSingleRootPropsWithoutHTML = ComboboxBaseRootPropsWithoutHTML & SelectSingleRootPropsWithoutHTML;
|
|
22
|
+
|
|
23
|
+
export type ComboboxSingleRootProps = ComboboxSingleRootPropsWithoutHTML;
|
|
24
|
+
|
|
25
|
+
export type ComboboxMultipleRootPropsWithoutHTML = ComboboxBaseRootPropsWithoutHTML & SelectMultipleRootPropsWithoutHTML;
|
|
26
|
+
export type ComboboxMultipleRootProps = ComboboxMultipleRootPropsWithoutHTML;
|
|
27
|
+
|
|
28
|
+
export type ComboboxRootPropsWithoutHTML = ComboboxBaseRootPropsWithoutHTML &
|
|
29
|
+
(ComboboxSingleRootPropsWithoutHTML | ComboboxMultipleRootPropsWithoutHTML);
|
|
30
|
+
|
|
31
|
+
export type ComboboxRootProps = ComboboxRootPropsWithoutHTML;
|
|
32
|
+
|
|
33
|
+
export type {
|
|
34
|
+
SelectContentProps as ComboboxContentProps,
|
|
35
|
+
SelectContentPropsWithoutHTML as ComboboxContentPropsWithoutHTML,
|
|
36
|
+
SelectContentStaticProps as ComboboxContentStaticProps,
|
|
37
|
+
SelectContentStaticPropsWithoutHTML as ComboboxContentStaticPropsWithoutHTML,
|
|
38
|
+
SelectItemProps as ComboboxItemProps,
|
|
39
|
+
SelectItemPropsWithoutHTML as ComboboxItemPropsWithoutHTML,
|
|
40
|
+
SelectItemSnippetProps as ComboboxItemSnippetProps,
|
|
41
|
+
SelectTriggerProps as ComboboxTriggerProps,
|
|
42
|
+
SelectTriggerPropsWithoutHTML as ComboboxTriggerPropsWithoutHTML,
|
|
43
|
+
SelectGroupPropsWithoutHTML as ComboboxGroupPropsWithoutHTML,
|
|
44
|
+
SelectGroupProps as ComboboxGroupProps,
|
|
45
|
+
SelectGroupHeadingPropsWithoutHTML as ComboboxGroupHeadingPropsWithoutHTML,
|
|
46
|
+
SelectGroupHeadingProps as ComboboxGroupHeadingProps,
|
|
47
|
+
SelectViewportPropsWithoutHTML as ComboboxViewportPropsWithoutHTML,
|
|
48
|
+
SelectViewportProps as ComboboxViewportProps,
|
|
49
|
+
SelectScrollDownButtonProps as ComboboxScrollDownButtonProps,
|
|
50
|
+
SelectScrollDownButtonPropsWithoutHTML as ComboboxScrollDownButtonPropsWithoutHTML,
|
|
51
|
+
SelectScrollUpButtonProps as ComboboxScrollUpButtonProps,
|
|
52
|
+
SelectScrollUpButtonPropsWithoutHTML as ComboboxScrollUpButtonPropsWithoutHTML,
|
|
53
|
+
SelectPortalProps as ComboboxPortalProps,
|
|
54
|
+
SelectPortalPropsWithoutHTML as ComboboxPortalPropsWithoutHTML,
|
|
55
|
+
} from './select/types.js';
|
|
56
|
+
|
|
57
|
+
export type ComboboxArrowPropsWithoutHTML = LucideProps;
|
|
58
|
+
|
|
59
|
+
export type ComboboxArrowProps = ComboboxArrowPropsWithoutHTML;
|
|
60
|
+
|
|
61
|
+
export type ComboboxInputPropsWithoutHTML = WithChild<{
|
|
62
|
+
/**
|
|
63
|
+
* The default value of the input. This is not a reactive prop and is only used to populate
|
|
64
|
+
* the input when the combobox is first mounted if there is already a value set.
|
|
65
|
+
*/
|
|
66
|
+
defaultValue?: string;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Whether to clear the input when the last item is deselected.
|
|
70
|
+
*
|
|
71
|
+
* @default false
|
|
72
|
+
*/
|
|
73
|
+
clearOnDeselect?: boolean;
|
|
74
|
+
}>;
|
|
75
|
+
|
|
76
|
+
export type ComboboxInputProps = ComboboxInputPropsWithoutHTML &
|
|
77
|
+
Without<Omit<BitsPrimitiveInputAttributes, 'value'>, ComboboxInputPropsWithoutHTML>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { DialogRootProps, DialogPortalProps } from "../dialog/types.js";
|
|
3
|
+
import type { CommandRootProps } from "./types.js";
|
|
4
|
+
import type { Snippet } from "svelte";
|
|
5
|
+
import Command from "./components/command.svelte";
|
|
6
|
+
import * as Dialog from "../dialog/index.js";
|
|
7
|
+
import type { WithoutChildrenOrChild } from "../../internal/utils.js";
|
|
8
|
+
|
|
9
|
+
let {
|
|
10
|
+
open = false,
|
|
11
|
+
ref = $bindable(null),
|
|
12
|
+
value = $bindable(""),
|
|
13
|
+
title = "Command Palette",
|
|
14
|
+
description = "Search for a command to run",
|
|
15
|
+
portalProps,
|
|
16
|
+
children,
|
|
17
|
+
...restProps
|
|
18
|
+
}: WithoutChildrenOrChild<DialogRootProps> &
|
|
19
|
+
WithoutChildrenOrChild<CommandRootProps> & {
|
|
20
|
+
portalProps?: DialogPortalProps;
|
|
21
|
+
children: Snippet;
|
|
22
|
+
title?: string;
|
|
23
|
+
description?: string;
|
|
24
|
+
} = $props();
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<!-- Native <dialog> Dialog.Content promotes itself to the top layer, so the old Portal + Overlay
|
|
28
|
+
wrappers are gone (::backdrop dims). `portalProps` stays in the signature for API stability. -->
|
|
29
|
+
<Dialog.Root {open} {...restProps}>
|
|
30
|
+
<Dialog.Content class="overflow-hidden p-0!">
|
|
31
|
+
<div class="sr-only">
|
|
32
|
+
<Dialog.Title>{title}</Dialog.Title>
|
|
33
|
+
<Dialog.Description>{description}</Dialog.Description>
|
|
34
|
+
</div>
|
|
35
|
+
<Command
|
|
36
|
+
class="**:data-[slot=command-input-wrapper]:h-12 **:data-command-group:px-2 [&_[data-command-group]:not([hidden])_~[data-command-group]]:pt-0 [&_[data-command-input-wrapper]_svg]:h-5 [&_[data-command-input-wrapper]_svg]:w-5 **:data-command-input:h-12 **:data-command-item:px-2 **:data-command-item:py-3 [&_[data-command-item]_svg]:h-5 [&_[data-command-item]_svg]:w-5"
|
|
37
|
+
{...restProps}
|
|
38
|
+
bind:value
|
|
39
|
+
bind:ref
|
|
40
|
+
{children} />
|
|
41
|
+
</Dialog.Content>
|
|
42
|
+
</Dialog.Root>
|