@spectral_labs/ui 1.2.0 → 1.2.1
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/dist/components/accordion/__tests__/AccordionTest.svelte +4 -4
- package/dist/components/accordion/components/accordion-content.svelte +3 -3
- package/dist/components/accordion/components/accordion-item.svelte +1 -1
- package/dist/components/accordion/components/accordion-root.svelte +5 -7
- package/dist/components/accordion/components/accordion-root.svelte.d.ts.map +1 -1
- package/dist/components/accordion/components/accordion-trigger.svelte +12 -12
- package/dist/components/alert-dialog/__tests__/AlertDialogTest.svelte +6 -3
- package/dist/components/alert-dialog/__tests__/alert-dialog.a11y.test.js +9 -2
- package/dist/components/alert-dialog/components/alert-dialog-action.svelte +2 -2
- package/dist/components/alert-dialog/components/alert-dialog-cancel.svelte +2 -2
- package/dist/components/alert-dialog/components/alert-dialog-content.svelte +15 -11
- package/dist/components/alert-dialog/components/alert-dialog-content.svelte.d.ts.map +1 -1
- package/dist/components/alert-dialog/components/alert-dialog-description.svelte +1 -1
- package/dist/components/alert-dialog/components/alert-dialog-overlay.svelte +8 -6
- package/dist/components/alert-dialog/components/alert-dialog-overlay.svelte.d.ts.map +1 -1
- package/dist/components/alert-dialog/components/alert-dialog-root.svelte +7 -2
- package/dist/components/alert-dialog/components/alert-dialog-root.svelte.d.ts.map +1 -1
- package/dist/components/alert-dialog/components/alert-dialog-title.svelte +6 -2
- package/dist/components/alert-dialog/components/alert-dialog-trigger.svelte +3 -3
- package/dist/components/app-bar/app-bar.svelte +12 -12
- package/dist/components/aspect-ratio/aspect-ratio.svelte +2 -2
- package/dist/components/avatar/avatar.svelte +6 -6
- package/dist/components/badge/badge.svelte +49 -13
- package/dist/components/badge/types.d.ts.map +1 -1
- package/dist/components/bottom-sheet/__tests__/BottomSheetTest.svelte +16 -6
- package/dist/components/bottom-sheet/components/bottom-sheet-root.svelte +20 -20
- package/dist/components/breadcrumb/breadcrumb-item.svelte +2 -2
- package/dist/components/breadcrumb/breadcrumb-link.svelte +6 -2
- package/dist/components/breadcrumb/breadcrumb-link.svelte.d.ts.map +1 -1
- package/dist/components/breadcrumb/breadcrumb-list.svelte +2 -2
- package/dist/components/breadcrumb/breadcrumb-page.svelte +3 -3
- package/dist/components/breadcrumb/breadcrumb-separator.svelte +12 -4
- package/dist/components/breadcrumb/breadcrumb.svelte +2 -2
- package/dist/components/button/button.svelte +1 -1
- package/dist/components/button/types.d.ts.map +1 -1
- package/dist/components/calendar/__tests__/CalendarTest.svelte +1 -1
- package/dist/components/calendar/calendar.svelte.d.ts.map +1 -1
- package/dist/components/calendar/calendar.svelte.js +89 -33
- package/dist/components/calendar/components/calendar-grid.svelte +16 -15
- package/dist/components/calendar/components/calendar-grid.svelte.d.ts.map +1 -1
- package/dist/components/calendar/components/calendar-header.svelte +1 -1
- package/dist/components/calendar/components/calendar-heading.svelte +2 -2
- package/dist/components/calendar/components/calendar-next-button.svelte +14 -6
- package/dist/components/calendar/components/calendar-prev-button.svelte +14 -6
- package/dist/components/calendar/components/calendar-root.svelte +50 -22
- package/dist/components/calendar/components/calendar-root.svelte.d.ts.map +1 -1
- package/dist/components/card/card.svelte +1 -1
- package/dist/components/checkbox/checkbox.svelte +23 -27
- package/dist/components/checkbox/checkbox.svelte.d.ts.map +1 -1
- package/dist/components/chips/chip-group.svelte +8 -13
- package/dist/components/chips/chip-group.svelte.d.ts.map +1 -1
- package/dist/components/chips/chips.svelte +32 -39
- package/dist/components/chips/chips.svelte.d.ts.map +1 -1
- package/dist/components/chips/types.d.ts +5 -5
- package/dist/components/chips/types.d.ts.map +1 -1
- package/dist/components/collapsible/__tests__/CollapsibleTest.svelte +1 -1
- package/dist/components/collapsible/components/collapsible-content.svelte +8 -6
- package/dist/components/collapsible/components/collapsible-content.svelte.d.ts.map +1 -1
- package/dist/components/collapsible/components/collapsible-root.svelte +2 -3
- package/dist/components/collapsible/components/collapsible-root.svelte.d.ts.map +1 -1
- package/dist/components/collapsible/components/collapsible-trigger.svelte +2 -2
- package/dist/components/combobox/__tests__/ComboboxTest.svelte +5 -5
- package/dist/components/combobox/components/combobox-content.svelte +4 -6
- package/dist/components/combobox/components/combobox-content.svelte.d.ts.map +1 -1
- package/dist/components/combobox/components/combobox-input.svelte +10 -15
- package/dist/components/combobox/components/combobox-input.svelte.d.ts.map +1 -1
- package/dist/components/combobox/components/combobox-item.svelte +5 -8
- package/dist/components/combobox/components/combobox-item.svelte.d.ts.map +1 -1
- package/dist/components/combobox/components/combobox-root.svelte +13 -18
- package/dist/components/combobox/components/combobox-root.svelte.d.ts.map +1 -1
- package/dist/components/combobox/index.d.ts +1 -1
- package/dist/components/combobox/index.d.ts.map +1 -1
- package/dist/components/command/__tests__/CommandTest.svelte +19 -10
- package/dist/components/command/__tests__/command.a11y.test.js +1 -1
- package/dist/components/command/command.svelte.d.ts.map +1 -1
- package/dist/components/command/command.svelte.js +20 -10
- package/dist/components/command/components/command-empty.svelte +2 -2
- package/dist/components/command/components/command-group.svelte +6 -4
- package/dist/components/command/components/command-group.svelte.d.ts.map +1 -1
- package/dist/components/command/components/command-input.svelte +27 -14
- package/dist/components/command/components/command-input.svelte.d.ts.map +1 -1
- package/dist/components/command/components/command-item.svelte +12 -7
- package/dist/components/command/components/command-item.svelte.d.ts.map +1 -1
- package/dist/components/command/components/command-list.svelte +2 -7
- package/dist/components/command/components/command-root.svelte +18 -10
- package/dist/components/command/components/command-root.svelte.d.ts.map +1 -1
- package/dist/components/command/components/command-separator.svelte +2 -2
- package/dist/components/context-menu/__tests__/ContextMenuNonInteractiveTest.svelte +2 -4
- package/dist/components/context-menu/__tests__/ContextMenuTest.svelte +1 -1
- package/dist/components/context-menu/__tests__/context-menu.test.svelte.js +4 -1
- package/dist/components/context-menu/components/context-menu-content.svelte +7 -10
- package/dist/components/context-menu/components/context-menu-content.svelte.d.ts.map +1 -1
- package/dist/components/context-menu/components/context-menu-root.svelte +7 -2
- package/dist/components/context-menu/components/context-menu-root.svelte.d.ts.map +1 -1
- package/dist/components/context-menu/components/context-menu-trigger.svelte +13 -13
- package/dist/components/context-menu/index.d.ts +1 -1
- package/dist/components/context-menu/index.d.ts.map +1 -1
- package/dist/components/context-menu/types.d.ts +1 -1
- package/dist/components/context-menu/types.d.ts.map +1 -1
- package/dist/components/date-field/__tests__/DateFieldTest.svelte +1 -1
- package/dist/components/date-field/__tests__/date-field.test.svelte.js +5 -5
- package/dist/components/date-field/components/date-field-root.svelte +55 -55
- package/dist/components/date-field/types.d.ts +14 -14
- package/dist/components/date-field/types.d.ts.map +1 -1
- package/dist/components/date-picker/__tests__/DatePickerTest.svelte +2 -8
- package/dist/components/date-picker/__tests__/date-picker.test.svelte.js +10 -9
- package/dist/components/date-picker/components/date-picker-root.svelte +38 -31
- package/dist/components/date-picker/components/date-picker-root.svelte.d.ts.map +1 -1
- package/dist/components/date-range-field/__tests__/DateRangeFieldTest.svelte +1 -1
- package/dist/components/date-range-field/__tests__/date-range-field.test.svelte.js +3 -3
- package/dist/components/date-range-field/components/date-range-field-root.svelte +5 -5
- package/dist/components/date-range-picker/__tests__/DateRangePickerTest.svelte +2 -7
- package/dist/components/date-range-picker/__tests__/date-range-picker.test.svelte.js +11 -11
- package/dist/components/date-range-picker/components/date-range-picker-root.svelte +40 -32
- package/dist/components/date-range-picker/components/date-range-picker-root.svelte.d.ts.map +1 -1
- package/dist/components/dialog/__tests__/DialogTest.svelte +8 -3
- package/dist/components/dialog/components/dialog-close.svelte +2 -2
- package/dist/components/dialog/components/dialog-content.svelte +16 -13
- package/dist/components/dialog/components/dialog-content.svelte.d.ts.map +1 -1
- package/dist/components/dialog/components/dialog-description.svelte +1 -1
- package/dist/components/dialog/components/dialog-overlay.svelte +8 -6
- package/dist/components/dialog/components/dialog-overlay.svelte.d.ts.map +1 -1
- package/dist/components/dialog/components/dialog-root.svelte +4 -2
- package/dist/components/dialog/components/dialog-root.svelte.d.ts.map +1 -1
- package/dist/components/dialog/components/dialog-title.svelte +6 -2
- package/dist/components/dialog/components/dialog-trigger.svelte +3 -3
- package/dist/components/drop-zone/drop-zone.svelte +12 -18
- package/dist/components/drop-zone/drop-zone.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/__tests__/DropdownMenuTest.svelte +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-checkbox-item.svelte +19 -8
- package/dist/components/dropdown-menu/components/dropdown-menu-checkbox-item.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-content.svelte +8 -12
- package/dist/components/dropdown-menu/components/dropdown-menu-content.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-item.svelte +4 -6
- package/dist/components/dropdown-menu/components/dropdown-menu-item.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-label.svelte +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-root.svelte +7 -2
- package/dist/components/dropdown-menu/components/dropdown-menu-root.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-separator.svelte +2 -2
- package/dist/components/dropdown-menu/components/dropdown-menu-sub-content.svelte +5 -8
- package/dist/components/dropdown-menu/components/dropdown-menu-sub-content.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-sub-trigger.svelte +19 -14
- package/dist/components/dropdown-menu/components/dropdown-menu-sub-trigger.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-sub.svelte +19 -7
- package/dist/components/dropdown-menu/components/dropdown-menu-sub.svelte.d.ts.map +1 -1
- package/dist/components/dropdown-menu/components/dropdown-menu-trigger.svelte +5 -7
- package/dist/components/dropdown-menu/components/dropdown-menu-trigger.svelte.d.ts.map +1 -1
- package/dist/components/empty-state/empty-state.svelte +6 -6
- package/dist/components/fab/fab.svelte +2 -2
- package/dist/components/field/__tests__/FieldTest.svelte +2 -2
- package/dist/components/field/field-description.svelte +1 -1
- package/dist/components/field/field-error.svelte +2 -2
- package/dist/components/field/field-group.svelte +1 -1
- package/dist/components/field/field-label.svelte +2 -2
- package/dist/components/field/field-separator.svelte +4 -4
- package/dist/components/field/field.svelte +1 -1
- package/dist/components/grid-list/__tests__/GridListTest.svelte +2 -2
- package/dist/components/grid-list/components/grid-list-item.svelte +11 -17
- package/dist/components/grid-list/components/grid-list-item.svelte.d.ts.map +1 -1
- package/dist/components/grid-list/components/grid-list-root.svelte +32 -35
- package/dist/components/grid-list/components/grid-list-root.svelte.d.ts.map +1 -1
- package/dist/components/grid-list/grid-list.svelte.d.ts.map +1 -1
- package/dist/components/grid-list/grid-list.svelte.js +25 -15
- package/dist/components/grid-list/index.d.ts +1 -1
- package/dist/components/grid-list/index.d.ts.map +1 -1
- package/dist/components/grid-list/types.d.ts +21 -21
- package/dist/components/grid-list/types.d.ts.map +1 -1
- package/dist/components/hover-card/__tests__/HoverCardTest.svelte +3 -3
- package/dist/components/hover-card/components/hover-card-content.svelte +26 -12
- package/dist/components/hover-card/components/hover-card-content.svelte.d.ts.map +1 -1
- package/dist/components/hover-card/components/hover-card-root.svelte +10 -4
- package/dist/components/hover-card/components/hover-card-root.svelte.d.ts.map +1 -1
- package/dist/components/hover-card/components/hover-card-trigger.svelte +3 -4
- package/dist/components/hover-card/components/hover-card-trigger.svelte.d.ts.map +1 -1
- package/dist/components/indicator/indicator.svelte +5 -5
- package/dist/components/input/__tests__/input.test.svelte.js +29 -0
- package/dist/components/input/input.svelte +22 -5
- package/dist/components/label/label.svelte +2 -3
- package/dist/components/label/label.svelte.d.ts.map +1 -1
- package/dist/components/language-select/__tests__/languages.test.js +8 -8
- package/dist/components/language-select/language-select.svelte +23 -35
- package/dist/components/language-select/language-select.svelte.d.ts.map +1 -1
- package/dist/components/link-preview/__tests__/LinkPreviewTest.svelte +2 -2
- package/dist/components/link-preview/__tests__/link-preview.a11y.test.js +5 -1
- package/dist/components/link-preview/__tests__/link-preview.test.svelte.js +4 -1
- package/dist/components/link-preview/components/link-preview-content.svelte +16 -7
- package/dist/components/link-preview/components/link-preview-content.svelte.d.ts.map +1 -1
- package/dist/components/link-preview/components/link-preview-root.svelte +7 -2
- package/dist/components/link-preview/components/link-preview-root.svelte.d.ts.map +1 -1
- package/dist/components/link-preview/components/link-preview-trigger.svelte +15 -13
- package/dist/components/link-preview/components/link-preview-trigger.svelte.d.ts.map +1 -1
- package/dist/components/link-preview/index.d.ts +1 -1
- package/dist/components/link-preview/index.d.ts.map +1 -1
- package/dist/components/list/components/list-item.svelte +4 -4
- package/dist/components/list/components/list-root.svelte +2 -2
- package/dist/components/menubar/__tests__/MenubarTest.svelte +5 -5
- package/dist/components/menubar/__tests__/menubar.a11y.test.js +5 -1
- package/dist/components/menubar/components/menubar-content.svelte +36 -27
- package/dist/components/menubar/components/menubar-content.svelte.d.ts.map +1 -1
- package/dist/components/menubar/components/menubar-menu.svelte +7 -3
- package/dist/components/menubar/components/menubar-menu.svelte.d.ts.map +1 -1
- package/dist/components/menubar/components/menubar-root.svelte +12 -22
- package/dist/components/menubar/components/menubar-root.svelte.d.ts.map +1 -1
- package/dist/components/menubar/components/menubar-trigger.svelte +6 -8
- package/dist/components/menubar/components/menubar-trigger.svelte.d.ts.map +1 -1
- package/dist/components/meter/meter.svelte +6 -9
- package/dist/components/meter/meter.svelte.d.ts.map +1 -1
- package/dist/components/nav-bar/components/nav-bar-item.svelte +9 -12
- package/dist/components/nav-bar/components/nav-bar-item.svelte.d.ts.map +1 -1
- package/dist/components/nav-bar/components/nav-bar-root.svelte +3 -3
- package/dist/components/nav-drawer/components/nav-drawer-item.svelte +8 -11
- package/dist/components/nav-drawer/components/nav-drawer-item.svelte.d.ts.map +1 -1
- package/dist/components/nav-drawer/components/nav-drawer-root.svelte +11 -11
- package/dist/components/nav-drawer/components/nav-drawer-root.svelte.d.ts.map +1 -1
- package/dist/components/nav-rail/components/nav-rail-item.svelte +10 -12
- package/dist/components/nav-rail/components/nav-rail-item.svelte.d.ts.map +1 -1
- package/dist/components/nav-rail/components/nav-rail-root.svelte +4 -4
- package/dist/components/pagination/pagination.svelte +28 -33
- package/dist/components/pagination/pagination.svelte.d.ts.map +1 -1
- package/dist/components/pin-input/pin-input.svelte +21 -20
- package/dist/components/pin-input/pin-input.svelte.d.ts.map +1 -1
- package/dist/components/popover/__tests__/PopoverTest.svelte +2 -2
- package/dist/components/popover/components/popover-close.svelte +2 -2
- package/dist/components/popover/components/popover-content.svelte +48 -25
- package/dist/components/popover/components/popover-content.svelte.d.ts.map +1 -1
- package/dist/components/popover/components/popover-root.svelte +1 -1
- package/dist/components/popover/components/popover-trigger.svelte +4 -5
- package/dist/components/popover/components/popover-trigger.svelte.d.ts.map +1 -1
- package/dist/components/progress/progress.svelte +3 -3
- package/dist/components/radio-group/components/radio-group-item.svelte +8 -9
- package/dist/components/radio-group/components/radio-group-item.svelte.d.ts.map +1 -1
- package/dist/components/radio-group/components/radio-group-root.svelte +6 -5
- package/dist/components/radio-group/components/radio-group-root.svelte.d.ts.map +1 -1
- package/dist/components/range-calendar/__tests__/RangeCalendarTest.svelte +1 -1
- package/dist/components/range-calendar/__tests__/range-calendar.test.svelte.js +4 -1
- package/dist/components/range-calendar/components/range-calendar-grid.svelte +16 -17
- package/dist/components/range-calendar/components/range-calendar-grid.svelte.d.ts.map +1 -1
- package/dist/components/range-calendar/components/range-calendar-header.svelte +29 -13
- package/dist/components/range-calendar/components/range-calendar-root.svelte +42 -17
- package/dist/components/range-calendar/components/range-calendar-root.svelte.d.ts.map +1 -1
- package/dist/components/range-calendar/range-calendar.svelte.d.ts.map +1 -1
- package/dist/components/range-calendar/range-calendar.svelte.js +54 -24
- package/dist/components/rating-group/rating-group.svelte +17 -23
- package/dist/components/rating-group/rating-group.svelte.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area.svelte +22 -28
- package/dist/components/scroll-area/scroll-area.svelte.d.ts.map +1 -1
- package/dist/components/search-field/__tests__/SearchFieldTest.svelte +3 -3
- package/dist/components/search-field/__tests__/search-field.test.svelte.js +28 -0
- package/dist/components/search-field/search-field.svelte +44 -18
- package/dist/components/search-field/types.d.ts +7 -7
- package/dist/components/search-field/types.d.ts.map +1 -1
- package/dist/components/select/__tests__/SelectLabelPersistenceTest.svelte +6 -8
- package/dist/components/select/__tests__/SelectTest.svelte +1 -1
- package/dist/components/select/components/select-content.svelte +13 -16
- package/dist/components/select/components/select-content.svelte.d.ts.map +1 -1
- package/dist/components/select/components/select-item.svelte +14 -16
- package/dist/components/select/components/select-item.svelte.d.ts.map +1 -1
- package/dist/components/select/components/select-root.svelte +9 -12
- package/dist/components/select/components/select-root.svelte.d.ts.map +1 -1
- package/dist/components/select/components/select-trigger.svelte +20 -12
- package/dist/components/select/components/select-trigger.svelte.d.ts.map +1 -1
- package/dist/components/separator/separator.svelte +1 -1
- package/dist/components/sheet/__tests__/SheetTest.svelte +2 -2
- package/dist/components/sheet/components/sheet-close.svelte +2 -2
- package/dist/components/sheet/components/sheet-content.svelte +12 -11
- package/dist/components/sheet/components/sheet-content.svelte.d.ts.map +1 -1
- package/dist/components/sheet/components/sheet-description.svelte +1 -1
- package/dist/components/sheet/components/sheet-overlay.svelte +8 -6
- package/dist/components/sheet/components/sheet-overlay.svelte.d.ts.map +1 -1
- package/dist/components/sheet/components/sheet-root.svelte +4 -2
- package/dist/components/sheet/components/sheet-root.svelte.d.ts.map +1 -1
- package/dist/components/sheet/components/sheet-title.svelte +7 -6
- package/dist/components/sheet/components/sheet-trigger.svelte +3 -3
- package/dist/components/side-sheet/__tests__/side-sheet.test.svelte.js +3 -1
- package/dist/components/side-sheet/side-sheet.svelte +5 -5
- package/dist/components/sidebar/__tests__/SidebarFullTest.svelte +7 -7
- package/dist/components/sidebar/__tests__/SidebarTest.svelte +2 -2
- package/dist/components/sidebar/__tests__/sidebar.test.svelte.js +9 -5
- package/dist/components/sidebar/components/sidebar-content.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-footer.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-group-content.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-group-label.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-group.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-header.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-inset.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-menu-action.svelte +11 -4
- package/dist/components/sidebar/components/sidebar-menu-action.svelte.d.ts.map +1 -1
- package/dist/components/sidebar/components/sidebar-menu-button.svelte +8 -4
- package/dist/components/sidebar/components/sidebar-menu-item.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-menu-sub-button.svelte +5 -3
- package/dist/components/sidebar/components/sidebar-menu-sub-item.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-menu-sub.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-menu.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-provider.svelte +5 -3
- package/dist/components/sidebar/components/sidebar-provider.svelte.d.ts.map +1 -1
- package/dist/components/sidebar/components/sidebar-root.svelte +6 -4
- package/dist/components/sidebar/components/sidebar-separator.svelte +1 -1
- package/dist/components/sidebar/components/sidebar-trigger.svelte +13 -5
- package/dist/components/sidebar/sidebar.svelte.d.ts.map +1 -1
- package/dist/components/sidebar/sidebar.svelte.js +9 -3
- package/dist/components/simple-dialog/__tests__/SimpleDialogTest.svelte +4 -4
- package/dist/components/simple-dialog/simple-dialog.svelte +7 -7
- package/dist/components/simple-tooltip/__tests__/SimpleTooltipTest.svelte +2 -2
- package/dist/components/simple-tooltip/__tests__/simple-tooltip.test.svelte.js +1 -0
- package/dist/components/simple-tooltip/simple-tooltip.svelte +1 -1
- package/dist/components/slider/slider.svelte +11 -15
- package/dist/components/slider/slider.svelte.d.ts.map +1 -1
- package/dist/components/slider/types.d.ts +10 -10
- package/dist/components/slider/types.d.ts.map +1 -1
- package/dist/components/sortable-list/__tests__/SortableListTest.svelte +9 -2
- package/dist/components/sortable-list/__tests__/sortable-list.test.svelte.js +13 -7
- package/dist/components/sortable-list/components/sortable-list-handle.svelte +20 -25
- package/dist/components/sortable-list/components/sortable-list-handle.svelte.d.ts.map +1 -1
- package/dist/components/sortable-list/components/sortable-list-indicator.svelte +11 -16
- package/dist/components/sortable-list/components/sortable-list-indicator.svelte.d.ts.map +1 -1
- package/dist/components/sortable-list/components/sortable-list-item.svelte +5 -9
- package/dist/components/sortable-list/components/sortable-list-item.svelte.d.ts.map +1 -1
- package/dist/components/sortable-list/components/sortable-list-root.svelte +3 -3
- package/dist/components/sortable-list/sortable-list.svelte.d.ts.map +1 -1
- package/dist/components/sortable-list/sortable-list.svelte.js +8 -10
- package/dist/components/sortable-list/types.d.ts +15 -15
- package/dist/components/sortable-list/types.d.ts.map +1 -1
- package/dist/components/splitter/splitter.svelte +21 -30
- package/dist/components/splitter/splitter.svelte.d.ts.map +1 -1
- package/dist/components/switch/switch.svelte +11 -11
- package/dist/components/switch/switch.svelte.d.ts.map +1 -1
- package/dist/components/table/components/table-body.svelte +1 -1
- package/dist/components/table/components/table-cell.svelte +23 -35
- package/dist/components/table/components/table-cell.svelte.d.ts.map +1 -1
- package/dist/components/table/components/table-header.svelte +1 -1
- package/dist/components/table/components/table-resize-handle.svelte +7 -10
- package/dist/components/table/components/table-resize-handle.svelte.d.ts.map +1 -1
- package/dist/components/table/components/table-root.svelte +26 -22
- package/dist/components/table/components/table-row.svelte +5 -4
- package/dist/components/table/components/table-row.svelte.d.ts.map +1 -1
- package/dist/components/table/table.svelte.d.ts.map +1 -1
- package/dist/components/table/table.svelte.js +6 -2
- package/dist/components/tabs/__tests__/TabsTest.svelte +7 -7
- package/dist/components/tabs/__tests__/tabs.test.svelte.js +4 -1
- package/dist/components/tabs/components/tabs-content.svelte +2 -2
- package/dist/components/tabs/components/tabs-list.svelte +10 -13
- package/dist/components/tabs/components/tabs-list.svelte.d.ts.map +1 -1
- package/dist/components/tabs/components/tabs-root.svelte +1 -1
- package/dist/components/tabs/components/tabs-trigger.svelte +4 -5
- package/dist/components/tabs/components/tabs-trigger.svelte.d.ts.map +1 -1
- package/dist/components/textarea/__tests__/textarea.test.svelte.js +29 -0
- package/dist/components/textarea/textarea.svelte +14 -1
- package/dist/components/time-field/__tests__/TimeFieldTest.svelte +1 -1
- package/dist/components/time-field/__tests__/time-field.test.svelte.js +6 -8
- package/dist/components/time-field/components/time-field-root.svelte +67 -73
- package/dist/components/time-field/components/time-field-root.svelte.d.ts.map +1 -1
- package/dist/components/time-field/index.d.ts +1 -1
- package/dist/components/time-field/index.d.ts.map +1 -1
- package/dist/components/time-field/time-field.svelte.d.ts.map +1 -1
- package/dist/components/time-field/types.d.ts +13 -13
- package/dist/components/time-field/types.d.ts.map +1 -1
- package/dist/components/time-range-field/__tests__/TimeRangeFieldTest.svelte +1 -1
- package/dist/components/time-range-field/__tests__/time-range-field.test.svelte.js +4 -4
- package/dist/components/time-range-field/components/time-range-field-root.svelte +5 -5
- package/dist/components/time-range-field/types.d.ts +1 -1
- package/dist/components/time-range-field/types.d.ts.map +1 -1
- package/dist/components/toast/toast.svelte +15 -15
- package/dist/components/toggle/toggle.svelte +3 -4
- package/dist/components/toggle/toggle.svelte.d.ts.map +1 -1
- package/dist/components/toggle-group/components/toggle-group-item.svelte +3 -4
- package/dist/components/toggle-group/components/toggle-group-item.svelte.d.ts.map +1 -1
- package/dist/components/toggle-group/components/toggle-group-root.svelte +7 -11
- package/dist/components/toggle-group/components/toggle-group-root.svelte.d.ts.map +1 -1
- package/dist/components/toggle-group/types.d.ts.map +1 -1
- package/dist/components/toolbar/__tests__/ToolbarCompositionTest.svelte +7 -7
- package/dist/components/toolbar/__tests__/ToolbarTabstopTest.svelte +5 -5
- package/dist/components/toolbar/toolbar-group.svelte +3 -8
- package/dist/components/toolbar/toolbar-group.svelte.d.ts.map +1 -1
- package/dist/components/toolbar/toolbar-separator.svelte +2 -3
- package/dist/components/toolbar/toolbar-separator.svelte.d.ts.map +1 -1
- package/dist/components/toolbar/toolbar.svelte +17 -23
- package/dist/components/toolbar/toolbar.svelte.d.ts.map +1 -1
- package/dist/components/tooltip/__tests__/TooltipTest.svelte +1 -1
- package/dist/components/tooltip/components/tooltip-content.svelte +20 -15
- package/dist/components/tooltip/components/tooltip-content.svelte.d.ts.map +1 -1
- package/dist/components/tooltip/components/tooltip-provider.svelte +8 -3
- package/dist/components/tooltip/components/tooltip-provider.svelte.d.ts.map +1 -1
- package/dist/components/tooltip/components/tooltip-root.svelte +1 -1
- package/dist/components/tooltip/components/tooltip-trigger.svelte +15 -13
- package/dist/components/tooltip/components/tooltip-trigger.svelte.d.ts.map +1 -1
- package/dist/components/tooltip/index.d.ts +1 -1
- package/dist/components/tooltip/index.d.ts.map +1 -1
- package/dist/components/tooltip/tooltip-provider.svelte.d.ts.map +1 -1
- package/dist/components/tree/__tests__/TreeLabelContentTest.svelte +7 -7
- package/dist/components/tree/__tests__/TreeTest.svelte +7 -7
- package/dist/components/tree/components/tree-item.svelte +22 -26
- package/dist/components/tree/components/tree-item.svelte.d.ts.map +1 -1
- package/dist/components/tree/components/tree-root.svelte +2 -2
- package/dist/components/tree/tree.svelte.d.ts.map +1 -1
- package/dist/components/tree/types.d.ts +9 -9
- package/dist/components/tree/types.d.ts.map +1 -1
- package/dist/components/virtualizer/__tests__/waterfall-layout.test.js +1 -1
- package/dist/components/virtualizer/components/virtualizer-root.svelte +8 -17
- package/dist/components/virtualizer/components/virtualizer-root.svelte.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/internal/announcer/announcer.svelte.d.ts.map +1 -1
- package/dist/internal/date-time/calendar-helpers.d.ts.map +1 -1
- package/dist/internal/date-time/formatter.d.ts.map +1 -1
- package/dist/internal/date-time/types.d.ts.map +1 -1
- package/dist/internal/date-time/types.js +4 -1
- package/dist/internal/date-time/utils.d.ts +2 -2
- package/dist/internal/date-time/utils.d.ts.map +1 -1
- package/dist/internal/date-time/utils.js +2 -2
- package/dist/internal/dismissible-layer/dismissible-layer.svelte.d.ts.map +1 -1
- package/dist/internal/dismissible-layer/dismissible-layer.svelte.js +6 -6
- package/dist/internal/drag-drop/__tests__/auto-scroll.test.js +6 -2
- package/dist/internal/drag-drop/__tests__/drag-session.test.svelte.js +9 -4
- package/dist/internal/drag-drop/__tests__/drop-delegate.test.js +18 -10
- package/dist/internal/drag-drop/auto-scroll.svelte.d.ts.map +1 -1
- package/dist/internal/drag-drop/auto-scroll.svelte.js +12 -8
- package/dist/internal/drag-drop/drag-session.svelte.d.ts.map +1 -1
- package/dist/internal/drag-drop/drag-session.svelte.js +41 -17
- package/dist/internal/drag-drop/drag-source.svelte.d.ts.map +1 -1
- package/dist/internal/drag-drop/drop-delegate.svelte.d.ts.map +1 -1
- package/dist/internal/drag-drop/drop-delegate.svelte.js +3 -3
- package/dist/internal/drag-drop/drop-target.svelte.d.ts.map +1 -1
- package/dist/internal/drag-drop/keyboard-dnd.svelte.d.ts.map +1 -1
- package/dist/internal/escape-layer/escape-layer.svelte.d.ts.map +1 -1
- package/dist/internal/escape-layer/escape-layer.svelte.js +2 -2
- package/dist/internal/floating-layer/floating-layer.svelte.d.ts.map +1 -1
- package/dist/internal/floating-layer/types.d.ts.map +1 -1
- package/dist/internal/focus-scope/focus-scope.svelte.d.ts.map +1 -1
- package/dist/internal/grace-area/grace-area.svelte.d.ts.map +1 -1
- package/dist/internal/grace-area/grace-area.svelte.js +1 -1
- package/dist/internal/helpers/arrays.d.ts.map +1 -1
- package/dist/internal/helpers/dom.d.ts.map +1 -1
- package/dist/internal/helpers/dom.js +2 -2
- package/dist/internal/helpers/merge-props.d.ts.map +1 -1
- package/dist/internal/i18n/languages.d.ts.map +1 -1
- package/dist/internal/i18n/languages.js +2 -2
- package/dist/internal/portal/__tests__/PortalTest.svelte +3 -3
- package/dist/internal/portal/portal-consumer.svelte +1 -1
- package/dist/internal/portal/portal.svelte +7 -3
- package/dist/internal/portal/portal.svelte.d.ts.map +1 -1
- package/dist/internal/presence-layer/presence-layer.svelte.d.ts.map +1 -1
- package/dist/internal/roving-focus/roving-focus.svelte.d.ts.map +1 -1
- package/dist/internal/roving-focus/roving-focus.svelte.js +2 -2
- package/dist/internal/scroll-lock/scroll-lock.svelte.d.ts.map +1 -1
- package/dist/internal/text-selection-layer/text-selection-layer.svelte.d.ts.map +1 -1
- package/dist/internal/typeahead/typeahead.svelte.d.ts.map +1 -1
- package/dist/internal/typeahead/typeahead.svelte.js +1 -1
- package/package.json +1 -1
- package/src/fonts.css +2 -2
- package/src/themes/__tests__/carbon-dark-contrast.test.ts +4 -3
- package/src/themes/carbon.css +104 -107
- package/src/themes/day.css +104 -106
- package/src/themes/docs.css +104 -106
- package/src/themes/iris-ocr.css +104 -108
- package/src/themes/midnight.css +104 -107
- package/src/themes/spectral-components.css +3 -1
- package/src/themes/spectral.css +116 -111
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import { dirname, resolve } from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
1
4
|
import { mount, unmount } from 'svelte';
|
|
2
5
|
import { afterEach, describe, expect, it } from 'vitest';
|
|
3
6
|
import SearchField from '../search-field.svelte';
|
|
7
|
+
const componentSource = readFileSync(resolve(dirname(fileURLToPath(import.meta.url)), '../search-field.svelte'), 'utf8');
|
|
4
8
|
describe('searchField', () => {
|
|
5
9
|
let target;
|
|
6
10
|
let instance;
|
|
@@ -87,4 +91,28 @@ describe('searchField', () => {
|
|
|
87
91
|
expect(icon).toBeTruthy();
|
|
88
92
|
expect(icon?.tagName).toBe('svg');
|
|
89
93
|
});
|
|
94
|
+
it('size="sm" : exposes the input inside the .sm wrapper', () => {
|
|
95
|
+
setup({ size: 'sm' });
|
|
96
|
+
const wrapper = target.querySelector('.sp-search-field.sm');
|
|
97
|
+
expect(wrapper).toBeTruthy();
|
|
98
|
+
expect(wrapper?.querySelector('input.sp-search-input')).toBeTruthy();
|
|
99
|
+
});
|
|
100
|
+
// ── iOS Safari focus-zoom contract ────────────────────────────────
|
|
101
|
+
// Real WebKit focus-zoom cannot be reproduced in jsdom. These tests
|
|
102
|
+
// lock the CSS contract that prevents the regression : (a) no
|
|
103
|
+
// hardcoded magic value bypassing the token system, (b) typography
|
|
104
|
+
// is token-driven for fine pointers, (c) a clamp to >= 1rem is in
|
|
105
|
+
// place on coarse pointers. Visual / real-device validation is
|
|
106
|
+
// tracked by the issue and done manually on iPhone Safari.
|
|
107
|
+
describe('iOS Safari focus-zoom contract (size="sm")', () => {
|
|
108
|
+
it('does not hardcode 0.85rem on the input', () => {
|
|
109
|
+
expect(componentSource).not.toMatch(/font-size:\s*0\.85rem/);
|
|
110
|
+
});
|
|
111
|
+
it('drives the sm input typography from the body-medium token', () => {
|
|
112
|
+
expect(componentSource).toMatch(/\.sp-search-field\.sm\s+\.sp-search-input\s*\{[^}]*font-size:\s*var\(--sp-sys-typescale-body-medium-size[^}]*\}/);
|
|
113
|
+
});
|
|
114
|
+
it('clamps the sm input to at least 1rem on coarse pointers', () => {
|
|
115
|
+
expect(componentSource).toMatch(/@media\s*\(pointer:\s*coarse\)\s*\{[\s\S]*?\.sp-search-field\.sm\s+\.sp-search-input\s*\{[^}]*font-size:\s*max\(1rem,[^)]*\)[\s\S]*?\}/);
|
|
116
|
+
});
|
|
117
|
+
});
|
|
90
118
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SearchFieldProps } from './types.js'
|
|
3
3
|
|
|
4
4
|
let {
|
|
@@ -33,20 +33,26 @@
|
|
|
33
33
|
}
|
|
34
34
|
</script>
|
|
35
35
|
|
|
36
|
-
<div
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
36
|
+
<div class="sp-search-field {size} {className ?? ''}" class:disabled>
|
|
37
|
+
<svg
|
|
38
|
+
class="sp-search-icon"
|
|
39
|
+
viewBox="0 0 24 24"
|
|
40
|
+
fill="none"
|
|
41
|
+
stroke="currentColor"
|
|
42
|
+
stroke-width="2"
|
|
43
|
+
stroke-linecap="round"
|
|
44
|
+
stroke-linejoin="round"
|
|
45
|
+
aria-hidden="true"
|
|
46
|
+
>
|
|
47
|
+
<circle cx="11" cy="11" r="8" />
|
|
48
|
+
<line x1="21" y1="21" x2="16.65" y2="16.65" />
|
|
43
49
|
</svg>
|
|
44
50
|
<input
|
|
45
|
-
type=
|
|
46
|
-
class=
|
|
51
|
+
type="search"
|
|
52
|
+
class="sp-search-input"
|
|
47
53
|
{placeholder}
|
|
48
54
|
{disabled}
|
|
49
|
-
|
|
55
|
+
{value}
|
|
50
56
|
aria-label={ariaLabel}
|
|
51
57
|
oninput={handleInput}
|
|
52
58
|
onkeydown={handleKeydown}
|
|
@@ -54,15 +60,23 @@
|
|
|
54
60
|
/>
|
|
55
61
|
{#if value}
|
|
56
62
|
<button
|
|
57
|
-
type=
|
|
58
|
-
class=
|
|
59
|
-
aria-label=
|
|
63
|
+
type="button"
|
|
64
|
+
class="sp-search-clear"
|
|
65
|
+
aria-label="Clear search"
|
|
60
66
|
onclick={handleClear}
|
|
61
67
|
{disabled}
|
|
62
68
|
>
|
|
63
|
-
<svg
|
|
64
|
-
|
|
65
|
-
|
|
69
|
+
<svg
|
|
70
|
+
viewBox="0 0 24 24"
|
|
71
|
+
fill="none"
|
|
72
|
+
stroke="currentColor"
|
|
73
|
+
stroke-width="2"
|
|
74
|
+
stroke-linecap="round"
|
|
75
|
+
stroke-linejoin="round"
|
|
76
|
+
aria-hidden="true"
|
|
77
|
+
>
|
|
78
|
+
<line x1="18" y1="6" x2="6" y2="18" />
|
|
79
|
+
<line x1="6" y1="6" x2="18" y2="18" />
|
|
66
80
|
</svg>
|
|
67
81
|
</button>
|
|
68
82
|
{/if}
|
|
@@ -114,7 +128,19 @@
|
|
|
114
128
|
}
|
|
115
129
|
|
|
116
130
|
.sp-search-field.sm .sp-search-input {
|
|
117
|
-
font-size: 0.
|
|
131
|
+
font-size: var(--sp-sys-typescale-body-medium-size, 0.875rem);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/* iOS Safari focus zoom : WebKit auto-zooms the viewport when a focused
|
|
135
|
+
form control's computed font-size is < 16px. Clamp the `sm` variant
|
|
136
|
+
to at least 1rem on coarse pointers (touch / iOS) so SearchField
|
|
137
|
+
stays usable inside overlays / sheets without the desktop typography
|
|
138
|
+
intent being affected on fine pointers. `max()` preserves any theme
|
|
139
|
+
that may override `--sp-sys-typescale-body-medium-size` upward. */
|
|
140
|
+
@media (pointer: coarse) {
|
|
141
|
+
.sp-search-field.sm .sp-search-input {
|
|
142
|
+
font-size: max(1rem, var(--sp-sys-typescale-body-medium-size, 0.875rem));
|
|
143
|
+
}
|
|
118
144
|
}
|
|
119
145
|
|
|
120
146
|
.sp-search-input::placeholder {
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import type { HTMLInputAttributes } from 'svelte/elements';
|
|
2
2
|
export interface SearchFieldProps extends Omit<HTMLInputAttributes, 'class' | 'value' | 'size'> {
|
|
3
3
|
/** Current search value. Bindable. */
|
|
4
|
-
|
|
4
|
+
value?: string;
|
|
5
5
|
/** Placeholder text. */
|
|
6
|
-
|
|
6
|
+
placeholder?: string;
|
|
7
7
|
/** Size variant. */
|
|
8
|
-
|
|
8
|
+
size?: 'sm' | 'md';
|
|
9
9
|
/** Disabled state. */
|
|
10
|
-
|
|
10
|
+
disabled?: boolean;
|
|
11
11
|
/** Called when value changes. */
|
|
12
|
-
|
|
12
|
+
onInput?: (value: string) => void;
|
|
13
13
|
/** Called when the clear button is clicked. */
|
|
14
|
-
|
|
14
|
+
onClear?: () => void;
|
|
15
15
|
/** Accessible label. */
|
|
16
16
|
'aria-label'?: string;
|
|
17
17
|
/** Additional CSS class. */
|
|
18
|
-
|
|
18
|
+
class?: string;
|
|
19
19
|
}
|
|
20
20
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/components/search-field/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7F,sCAAsC;IACtC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/components/search-field/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IAC7F,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oBAAoB;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IAClB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iCAAiC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,wBAAwB;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import * as Select from '../index.js'
|
|
3
3
|
|
|
4
4
|
const {
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
</script>
|
|
13
13
|
|
|
14
14
|
<button
|
|
15
|
-
type=
|
|
16
|
-
data-testid=
|
|
15
|
+
type="button"
|
|
16
|
+
data-testid="toggle-content"
|
|
17
17
|
onclick={() => {
|
|
18
18
|
showContent = !showContent
|
|
19
19
|
}}
|
|
@@ -21,13 +21,11 @@
|
|
|
21
21
|
Toggle content
|
|
22
22
|
</button>
|
|
23
23
|
|
|
24
|
-
<Select.Root bind:value name=
|
|
25
|
-
<Select.Trigger data-testid=
|
|
24
|
+
<Select.Root bind:value name="color">
|
|
25
|
+
<Select.Trigger data-testid="trigger" placeholder="Pick a color..." />
|
|
26
26
|
{#if showContent}
|
|
27
27
|
<Select.Content {portalTo}>
|
|
28
|
-
<Select.Item value=
|
|
29
|
-
Blue
|
|
30
|
-
</Select.Item>
|
|
28
|
+
<Select.Item value="blue" label="Blue">Blue</Select.Item>
|
|
31
29
|
</Select.Content>
|
|
32
30
|
{/if}
|
|
33
31
|
</Select.Root>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SelectContentProps } from '../types.js'
|
|
3
3
|
import { DismissibleLayerState } from '../../../internal/dismissible-layer/index.js'
|
|
4
4
|
import { EscapeLayerState } from '../../../internal/escape-layer/index.js'
|
|
@@ -40,8 +40,7 @@
|
|
|
40
40
|
element: null,
|
|
41
41
|
onInteractOutside(event) {
|
|
42
42
|
const target = event.target as Node | null
|
|
43
|
-
if (ctx.triggerEl && target && ctx.triggerEl.contains(target))
|
|
44
|
-
return
|
|
43
|
+
if (ctx.triggerEl && target && ctx.triggerEl.contains(target)) return
|
|
45
44
|
ctx.close()
|
|
46
45
|
},
|
|
47
46
|
})
|
|
@@ -78,7 +77,9 @@
|
|
|
78
77
|
|
|
79
78
|
// Focus selected or first item
|
|
80
79
|
const selected = contentEl.querySelector<HTMLElement>('[role="option"][aria-selected="true"]')
|
|
81
|
-
const first = contentEl.querySelector<HTMLElement>(
|
|
80
|
+
const first = contentEl.querySelector<HTMLElement>(
|
|
81
|
+
'[data-roving-focus-item]:not([data-disabled])',
|
|
82
|
+
)
|
|
82
83
|
;(selected ?? first)?.focus()
|
|
83
84
|
}
|
|
84
85
|
return () => {
|
|
@@ -89,13 +90,11 @@
|
|
|
89
90
|
})
|
|
90
91
|
|
|
91
92
|
$effect(() => {
|
|
92
|
-
if (contentEl)
|
|
93
|
-
presence.setElement(contentEl)
|
|
93
|
+
if (contentEl) presence.setElement(contentEl)
|
|
94
94
|
})
|
|
95
95
|
|
|
96
96
|
function onkeydown(event: KeyboardEvent) {
|
|
97
|
-
if (!contentEl)
|
|
98
|
-
return
|
|
97
|
+
if (!contentEl) return
|
|
99
98
|
const items = Array.from(
|
|
100
99
|
contentEl.querySelectorAll<HTMLElement>('[data-roving-focus-item]:not([data-disabled])'),
|
|
101
100
|
)
|
|
@@ -111,14 +110,14 @@
|
|
|
111
110
|
}
|
|
112
111
|
case kbd.PAGE_DOWN: {
|
|
113
112
|
event.preventDefault()
|
|
114
|
-
const currentIndex = items.findIndex(el => el === document.activeElement)
|
|
113
|
+
const currentIndex = items.findIndex((el) => el === document.activeElement)
|
|
115
114
|
const nextIndex = Math.min(currentIndex + 10, items.length - 1)
|
|
116
115
|
items[nextIndex]?.focus()
|
|
117
116
|
break
|
|
118
117
|
}
|
|
119
118
|
case kbd.PAGE_UP: {
|
|
120
119
|
event.preventDefault()
|
|
121
|
-
const currentIndex = items.findIndex(el => el === document.activeElement)
|
|
120
|
+
const currentIndex = items.findIndex((el) => el === document.activeElement)
|
|
122
121
|
const nextIndex = Math.max(currentIndex - 10, 0)
|
|
123
122
|
items[nextIndex]?.focus()
|
|
124
123
|
break
|
|
@@ -136,8 +135,7 @@
|
|
|
136
135
|
event.preventDefault()
|
|
137
136
|
const focused = document.activeElement as HTMLElement
|
|
138
137
|
const val = focused?.getAttribute('data-value')
|
|
139
|
-
if (val)
|
|
140
|
-
ctx.select(val)
|
|
138
|
+
if (val) ctx.select(val)
|
|
141
139
|
break
|
|
142
140
|
}
|
|
143
141
|
case kbd.TAB: {
|
|
@@ -147,11 +145,10 @@
|
|
|
147
145
|
default: {
|
|
148
146
|
if (event.key.length === 1 && !event.ctrlKey && !event.metaKey) {
|
|
149
147
|
const labels = items.map(
|
|
150
|
-
el => el.getAttribute('data-text-value') ?? el.textContent?.trim() ?? '',
|
|
148
|
+
(el) => el.getAttribute('data-text-value') ?? el.textContent?.trim() ?? '',
|
|
151
149
|
)
|
|
152
150
|
const match = typeahead.handleTypeahead(event.key, labels)
|
|
153
|
-
if (match >= 0)
|
|
154
|
-
items[match]?.focus()
|
|
151
|
+
if (match >= 0) items[match]?.focus()
|
|
155
152
|
}
|
|
156
153
|
}
|
|
157
154
|
}
|
|
@@ -164,7 +161,7 @@
|
|
|
164
161
|
bind:this={contentEl}
|
|
165
162
|
class="sp-select-content {className ?? ''}"
|
|
166
163
|
id={ctx.contentId}
|
|
167
|
-
role=
|
|
164
|
+
role="listbox"
|
|
168
165
|
tabindex={-1}
|
|
169
166
|
data-state={ctx.open ? 'open' : 'closed'}
|
|
170
167
|
{onkeydown}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-content.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-content.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"select-content.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-content.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAoLrD,QAAA,MAAM,aAAa,wDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SelectItemProps } from '../types.js'
|
|
3
3
|
import { getSelectContext } from '../select.svelte.js'
|
|
4
4
|
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
<div
|
|
21
21
|
bind:this={itemEl}
|
|
22
22
|
class="sp-select-item {className ?? ''}"
|
|
23
|
-
role=
|
|
23
|
+
role="option"
|
|
24
24
|
aria-selected={isSelected}
|
|
25
25
|
aria-disabled={disabled || undefined}
|
|
26
26
|
tabindex={-1}
|
|
@@ -30,33 +30,31 @@
|
|
|
30
30
|
data-disabled={disabled || undefined}
|
|
31
31
|
data-state={isSelected ? 'selected' : 'unselected'}
|
|
32
32
|
onclick={() => {
|
|
33
|
-
if (!disabled)
|
|
34
|
-
ctx.select(value)
|
|
33
|
+
if (!disabled) ctx.select(value)
|
|
35
34
|
}}
|
|
36
35
|
onkeydown={(e) => {
|
|
37
36
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
38
37
|
e.preventDefault()
|
|
39
|
-
if (!disabled)
|
|
40
|
-
ctx.select(value)
|
|
38
|
+
if (!disabled) ctx.select(value)
|
|
41
39
|
}
|
|
42
40
|
}}
|
|
43
41
|
>
|
|
44
|
-
<span class=
|
|
42
|
+
<span class="sp-select-item-check">
|
|
45
43
|
{#if isSelected}
|
|
46
44
|
<svg
|
|
47
|
-
viewBox=
|
|
48
|
-
fill=
|
|
49
|
-
stroke=
|
|
50
|
-
stroke-width=
|
|
51
|
-
stroke-linecap=
|
|
52
|
-
stroke-linejoin=
|
|
53
|
-
aria-hidden=
|
|
45
|
+
viewBox="0 0 24 24"
|
|
46
|
+
fill="none"
|
|
47
|
+
stroke="currentColor"
|
|
48
|
+
stroke-width="2.5"
|
|
49
|
+
stroke-linecap="round"
|
|
50
|
+
stroke-linejoin="round"
|
|
51
|
+
aria-hidden="true"
|
|
54
52
|
>
|
|
55
|
-
<polyline points=
|
|
53
|
+
<polyline points="20 6 9 17 4 12"></polyline>
|
|
56
54
|
</svg>
|
|
57
55
|
{/if}
|
|
58
56
|
</span>
|
|
59
|
-
<span class=
|
|
57
|
+
<span class="sp-select-item-label">
|
|
60
58
|
{#if children}{@render children()}{/if}
|
|
61
59
|
</span>
|
|
62
60
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-item.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-item.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"select-item.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-item.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AA8ClD,QAAA,MAAM,UAAU,qDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SelectProps } from '../types.js'
|
|
3
3
|
import { SvelteMap } from 'svelte/reactivity'
|
|
4
4
|
import { createSelectIds, setSelectContext } from '../select.svelte.js'
|
|
@@ -23,14 +23,12 @@
|
|
|
23
23
|
const itemLabels = new SvelteMap<string, string>()
|
|
24
24
|
|
|
25
25
|
function select(itemValue: string) {
|
|
26
|
-
if (disabled)
|
|
27
|
-
return
|
|
26
|
+
if (disabled) return
|
|
28
27
|
if (type === 'multiple' && Array.isArray(value)) {
|
|
29
28
|
value = value.includes(itemValue)
|
|
30
|
-
? value.filter(v => v !== itemValue)
|
|
29
|
+
? value.filter((v) => v !== itemValue)
|
|
31
30
|
: [...value, itemValue]
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
31
|
+
} else {
|
|
34
32
|
value = itemValue
|
|
35
33
|
open = false
|
|
36
34
|
onOpenChange?.(false)
|
|
@@ -38,14 +36,13 @@
|
|
|
38
36
|
}
|
|
39
37
|
|
|
40
38
|
function isSelected(itemValue: string): boolean {
|
|
41
|
-
if (type === 'multiple' && Array.isArray(value))
|
|
42
|
-
return value.includes(itemValue)
|
|
39
|
+
if (type === 'multiple' && Array.isArray(value)) return value.includes(itemValue)
|
|
43
40
|
return value === itemValue
|
|
44
41
|
}
|
|
45
42
|
|
|
46
43
|
function getDisplayValue(): string {
|
|
47
44
|
if (type === 'multiple' && Array.isArray(value)) {
|
|
48
|
-
return value.map(v => itemLabels.get(v) ?? v).join(', ')
|
|
45
|
+
return value.map((v) => itemLabels.get(v) ?? v).join(', ')
|
|
49
46
|
}
|
|
50
47
|
return itemLabels.get(value as string) ?? (value as string)
|
|
51
48
|
}
|
|
@@ -90,7 +87,7 @@
|
|
|
90
87
|
itemLabels.set(v, label)
|
|
91
88
|
},
|
|
92
89
|
unregisterItemLabel(_v: string) {
|
|
93
|
-
|
|
90
|
+
// Intentionally keep labels cached across item unmounts.
|
|
94
91
|
},
|
|
95
92
|
})
|
|
96
93
|
</script>
|
|
@@ -102,10 +99,10 @@
|
|
|
102
99
|
{#if name}
|
|
103
100
|
{#if type === 'multiple' && Array.isArray(value)}
|
|
104
101
|
{#each value as v (v)}
|
|
105
|
-
<input type=
|
|
102
|
+
<input type="hidden" {name} value={v} />
|
|
106
103
|
{/each}
|
|
107
104
|
{:else}
|
|
108
|
-
<input type=
|
|
105
|
+
<input type="hidden" {name} {value} {required} />
|
|
109
106
|
{/if}
|
|
110
107
|
{/if}
|
|
111
108
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-root.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-root.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"select-root.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-root.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAoH9C,QAAA,MAAM,UAAU,+DAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SelectTriggerProps } from '../types.js'
|
|
3
3
|
import { getSelectContext } from '../select.svelte.js'
|
|
4
4
|
|
|
@@ -14,19 +14,18 @@
|
|
|
14
14
|
const displayValue = $derived(ctx.getDisplayValue())
|
|
15
15
|
|
|
16
16
|
$effect(() => {
|
|
17
|
-
if (el)
|
|
18
|
-
ctx.setTriggerEl(el)
|
|
17
|
+
if (el) ctx.setTriggerEl(el)
|
|
19
18
|
})
|
|
20
19
|
</script>
|
|
21
20
|
|
|
22
21
|
<button
|
|
23
22
|
bind:this={el}
|
|
24
23
|
class="sp-select-trigger {className ?? ''}"
|
|
25
|
-
type=
|
|
24
|
+
type="button"
|
|
26
25
|
id={ctx.triggerId}
|
|
27
|
-
role=
|
|
26
|
+
role="combobox"
|
|
28
27
|
aria-expanded={ctx.open}
|
|
29
|
-
aria-haspopup=
|
|
28
|
+
aria-haspopup="listbox"
|
|
30
29
|
aria-controls={ctx.open ? ctx.contentId : undefined}
|
|
31
30
|
disabled={ctx.disabled}
|
|
32
31
|
{...restProps}
|
|
@@ -34,20 +33,28 @@
|
|
|
34
33
|
onkeydown={(e) => {
|
|
35
34
|
if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {
|
|
36
35
|
e.preventDefault()
|
|
37
|
-
if (!ctx.open)
|
|
38
|
-
ctx.toggle()
|
|
36
|
+
if (!ctx.open) ctx.toggle()
|
|
39
37
|
}
|
|
40
38
|
}}
|
|
41
39
|
>
|
|
42
40
|
{#if children}
|
|
43
41
|
{@render children()}
|
|
44
42
|
{:else}
|
|
45
|
-
<span class=
|
|
43
|
+
<span class="sp-select-value" class:placeholder={!displayValue}>
|
|
46
44
|
{displayValue || placeholder}
|
|
47
45
|
</span>
|
|
48
46
|
{/if}
|
|
49
|
-
<svg
|
|
50
|
-
|
|
47
|
+
<svg
|
|
48
|
+
class="sp-select-chevron"
|
|
49
|
+
viewBox="0 0 24 24"
|
|
50
|
+
fill="none"
|
|
51
|
+
stroke="currentColor"
|
|
52
|
+
stroke-width="2"
|
|
53
|
+
stroke-linecap="round"
|
|
54
|
+
stroke-linejoin="round"
|
|
55
|
+
aria-hidden="true"
|
|
56
|
+
>
|
|
57
|
+
<polyline points="6 9 12 15 18 9"></polyline>
|
|
51
58
|
</svg>
|
|
52
59
|
</button>
|
|
53
60
|
|
|
@@ -88,7 +95,8 @@
|
|
|
88
95
|
width: 16px;
|
|
89
96
|
height: 16px;
|
|
90
97
|
flex-shrink: 0;
|
|
91
|
-
transition: transform var(--sp-sys-motion-duration-short2, 100ms)
|
|
98
|
+
transition: transform var(--sp-sys-motion-duration-short2, 100ms)
|
|
99
|
+
var(--sp-sys-motion-easing-standard, ease);
|
|
92
100
|
}
|
|
93
101
|
|
|
94
102
|
.sp-select-trigger[aria-expanded='true'] .sp-select-chevron {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-trigger.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-trigger.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"select-trigger.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/select/components/select-trigger.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AA6CrD,QAAA,MAAM,aAAa,wDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import SheetClose from '../components/sheet-close.svelte'
|
|
3
3
|
import SheetContent from '../components/sheet-content.svelte'
|
|
4
4
|
import SheetDescription from '../components/sheet-description.svelte'
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
<SheetContent {trapFocus} {preventScroll} {portalTo} {side}>
|
|
29
29
|
<SheetTitle>Test Title</SheetTitle>
|
|
30
30
|
<SheetDescription>Test Description</SheetDescription>
|
|
31
|
-
<button data-testid=
|
|
31
|
+
<button data-testid="inside-button">Inside</button>
|
|
32
32
|
<SheetClose>Close</SheetClose>
|
|
33
33
|
</SheetContent>
|
|
34
34
|
</SheetRoot>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SheetCloseProps } from '../types.js'
|
|
3
3
|
import { getSheetContext } from '../sheet.svelte.js'
|
|
4
4
|
|
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
const ctx = getSheetContext()
|
|
7
7
|
</script>
|
|
8
8
|
|
|
9
|
-
<button class="sp-sheet-close {className ?? ''}" type=
|
|
9
|
+
<button class="sp-sheet-close {className ?? ''}" type="button" onclick={() => ctx.close()}>
|
|
10
10
|
{#if children}{@render children()}{/if}
|
|
11
11
|
</button>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<script lang=
|
|
1
|
+
<script lang="ts">
|
|
2
2
|
import type { SheetContentProps } from '../types.js'
|
|
3
3
|
import { DismissibleLayerState } from '../../../internal/dismissible-layer/index.js'
|
|
4
4
|
import { EscapeLayerState } from '../../../internal/escape-layer/index.js'
|
|
@@ -25,16 +25,19 @@
|
|
|
25
25
|
let contentEl: HTMLElement | undefined = $state()
|
|
26
26
|
|
|
27
27
|
const presence = new PresenceLayerState({
|
|
28
|
-
get present() {
|
|
29
|
-
|
|
28
|
+
get present() {
|
|
29
|
+
return ctx.open
|
|
30
|
+
},
|
|
31
|
+
get forceMount() {
|
|
32
|
+
return forceMount
|
|
33
|
+
},
|
|
30
34
|
})
|
|
31
35
|
|
|
32
36
|
const escapeLayer = new EscapeLayerState({
|
|
33
37
|
enabled: true,
|
|
34
38
|
onEscapeKeydown(event) {
|
|
35
39
|
onEscapeKeydown?.(event)
|
|
36
|
-
if (!event.defaultPrevented)
|
|
37
|
-
ctx.close()
|
|
40
|
+
if (!event.defaultPrevented) ctx.close()
|
|
38
41
|
},
|
|
39
42
|
})
|
|
40
43
|
|
|
@@ -46,8 +49,7 @@
|
|
|
46
49
|
element: null,
|
|
47
50
|
onInteractOutside(event) {
|
|
48
51
|
onInteractOutside?.(event)
|
|
49
|
-
if (!event.defaultPrevented)
|
|
50
|
-
ctx.close()
|
|
52
|
+
if (!event.defaultPrevented) ctx.close()
|
|
51
53
|
},
|
|
52
54
|
})
|
|
53
55
|
|
|
@@ -55,8 +57,7 @@
|
|
|
55
57
|
if (ctx.open && isBrowser) {
|
|
56
58
|
escapeLayer.mount()
|
|
57
59
|
dismissLayer.mount()
|
|
58
|
-
if (preventScroll)
|
|
59
|
-
scrollLock.lock()
|
|
60
|
+
if (preventScroll) scrollLock.lock()
|
|
60
61
|
if (trapFocus && contentEl) {
|
|
61
62
|
focusScope.setElement(contentEl)
|
|
62
63
|
focusScope.mount()
|
|
@@ -87,8 +88,8 @@
|
|
|
87
88
|
class="sp-sheet-content {className ?? ''}"
|
|
88
89
|
id={ctx.contentId}
|
|
89
90
|
data-side={side}
|
|
90
|
-
role=
|
|
91
|
-
aria-modal=
|
|
91
|
+
role="dialog"
|
|
92
|
+
aria-modal="true"
|
|
92
93
|
aria-labelledby={ctx.titleId}
|
|
93
94
|
aria-describedby={ctx.descriptionId}
|
|
94
95
|
data-state={ctx.open ? 'open' : 'closed'}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet-content.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/sheet/components/sheet-content.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"sheet-content.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/components/sheet/components/sheet-content.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAyGpD,QAAA,MAAM,YAAY,uDAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
|