bits-ui 2.6.2 → 2.8.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/README.md +4 -4
- package/dist/bits/accordion/accordion.svelte.d.ts +66 -58
- package/dist/bits/accordion/accordion.svelte.js +56 -51
- package/dist/bits/accordion/components/accordion-content.svelte +4 -4
- package/dist/bits/accordion/components/accordion-header.svelte +2 -2
- package/dist/bits/accordion/components/accordion-item.svelte +2 -2
- package/dist/bits/accordion/components/accordion-trigger.svelte +2 -2
- package/dist/bits/accordion/components/accordion.svelte +2 -2
- package/dist/bits/alert-dialog/components/alert-dialog-action.svelte +2 -2
- package/dist/bits/alert-dialog/components/alert-dialog-cancel.svelte +2 -2
- package/dist/bits/alert-dialog/components/alert-dialog-content.svelte +3 -3
- package/dist/bits/alert-dialog/components/alert-dialog.svelte +9 -3
- package/dist/bits/aspect-ratio/aspect-ratio.svelte.d.ts +10 -16
- package/dist/bits/aspect-ratio/aspect-ratio.svelte.js +4 -11
- package/dist/bits/aspect-ratio/components/aspect-ratio.svelte +2 -2
- package/dist/bits/avatar/avatar.svelte.d.ts +25 -33
- package/dist/bits/avatar/avatar.svelte.js +20 -21
- package/dist/bits/avatar/components/avatar-fallback.svelte +2 -2
- package/dist/bits/avatar/components/avatar-image.svelte +2 -2
- package/dist/bits/avatar/components/avatar.svelte +2 -2
- package/dist/bits/calendar/calendar.svelte.d.ts +117 -106
- package/dist/bits/calendar/calendar.svelte.js +51 -52
- package/dist/bits/calendar/components/calendar-cell.svelte +2 -2
- package/dist/bits/calendar/components/calendar-day.svelte +2 -2
- package/dist/bits/calendar/components/calendar-grid-body.svelte +2 -2
- package/dist/bits/calendar/components/calendar-grid-head.svelte +2 -2
- package/dist/bits/calendar/components/calendar-grid-row.svelte +2 -2
- package/dist/bits/calendar/components/calendar-grid.svelte +2 -2
- package/dist/bits/calendar/components/calendar-head-cell.svelte +2 -2
- package/dist/bits/calendar/components/calendar-header.svelte +2 -2
- package/dist/bits/calendar/components/calendar-heading.svelte +5 -5
- package/dist/bits/calendar/components/calendar-month-select.svelte +2 -2
- package/dist/bits/calendar/components/calendar-next-button.svelte +2 -2
- package/dist/bits/calendar/components/calendar-prev-button.svelte +2 -2
- package/dist/bits/calendar/components/calendar-year-select.svelte +2 -2
- package/dist/bits/calendar/components/calendar.svelte +2 -2
- package/dist/bits/checkbox/checkbox.svelte.d.ts +37 -34
- package/dist/bits/checkbox/checkbox.svelte.js +19 -22
- package/dist/bits/checkbox/components/checkbox-group-label.svelte +2 -2
- package/dist/bits/checkbox/components/checkbox-group.svelte +2 -2
- package/dist/bits/checkbox/components/checkbox-input.svelte +2 -2
- package/dist/bits/checkbox/components/checkbox.svelte +2 -2
- package/dist/bits/collapsible/collapsible.svelte.d.ts +30 -27
- package/dist/bits/collapsible/collapsible.svelte.js +23 -15
- package/dist/bits/collapsible/components/collapsible-content.svelte +5 -5
- package/dist/bits/collapsible/components/collapsible-content.svelte.d.ts +1 -4
- package/dist/bits/collapsible/components/collapsible-trigger.svelte +2 -2
- package/dist/bits/collapsible/components/collapsible.svelte +4 -2
- package/dist/bits/collapsible/types.d.ts +4 -0
- package/dist/bits/combobox/components/combobox-input.svelte +2 -2
- package/dist/bits/combobox/components/combobox-trigger.svelte +2 -2
- package/dist/bits/combobox/components/combobox.svelte +4 -2
- package/dist/bits/command/command.svelte.d.ts +103 -92
- package/dist/bits/command/command.svelte.js +55 -57
- package/dist/bits/command/components/_command-label.svelte +2 -2
- package/dist/bits/command/components/command-empty.svelte +2 -2
- package/dist/bits/command/components/command-group-heading.svelte +2 -2
- package/dist/bits/command/components/command-group-items.svelte +2 -2
- package/dist/bits/command/components/command-group.svelte +2 -2
- package/dist/bits/command/components/command-input.svelte +2 -2
- package/dist/bits/command/components/command-item.svelte +2 -2
- package/dist/bits/command/components/command-link-item.svelte +2 -2
- package/dist/bits/command/components/command-list.svelte +2 -2
- package/dist/bits/command/components/command-loading.svelte +2 -2
- package/dist/bits/command/components/command-separator.svelte +2 -2
- package/dist/bits/command/components/command-viewport.svelte +2 -2
- package/dist/bits/command/components/command.svelte +2 -2
- package/dist/bits/context-menu/components/context-menu-content-static.svelte +3 -3
- package/dist/bits/context-menu/components/context-menu-content.svelte +3 -3
- package/dist/bits/context-menu/components/context-menu-trigger.svelte +2 -2
- package/dist/bits/context-menu/components/context-menu.svelte +16 -11
- package/dist/bits/date-field/components/date-field-hidden-input.svelte +2 -2
- package/dist/bits/date-field/components/date-field-input.svelte +2 -2
- package/dist/bits/date-field/components/date-field-label.svelte +2 -2
- package/dist/bits/date-field/components/date-field-segment.svelte +2 -2
- package/dist/bits/date-field/components/date-field.svelte +2 -2
- package/dist/bits/date-field/date-field.svelte.d.ts +85 -74
- package/dist/bits/date-field/date-field.svelte.js +55 -53
- package/dist/bits/date-picker/components/date-picker-calendar.svelte +2 -2
- package/dist/bits/date-picker/components/date-picker.svelte +8 -6
- package/dist/bits/date-picker/date-picker.svelte.d.ts +10 -10
- package/dist/bits/date-picker/date-picker.svelte.js +6 -5
- package/dist/bits/date-picker/types.d.ts +4 -0
- package/dist/bits/date-range-field/components/date-range-field-input.svelte +2 -2
- package/dist/bits/date-range-field/components/date-range-field-label.svelte +2 -2
- package/dist/bits/date-range-field/components/date-range-field.svelte +2 -2
- package/dist/bits/date-range-field/date-range-field.svelte.d.ts +32 -29
- package/dist/bits/date-range-field/date-range-field.svelte.js +33 -32
- package/dist/bits/date-range-picker/components/date-range-picker-calendar.svelte +2 -2
- package/dist/bits/date-range-picker/components/date-range-picker.svelte +8 -6
- package/dist/bits/date-range-picker/date-range-picker.svelte.d.ts +10 -10
- package/dist/bits/date-range-picker/date-range-picker.svelte.js +6 -5
- package/dist/bits/date-range-picker/types.d.ts +4 -0
- package/dist/bits/dialog/components/dialog-close.svelte +2 -2
- package/dist/bits/dialog/components/dialog-content.svelte +3 -3
- package/dist/bits/dialog/components/dialog-description.svelte +2 -2
- package/dist/bits/dialog/components/dialog-overlay.svelte +3 -6
- package/dist/bits/dialog/components/dialog-title.svelte +2 -2
- package/dist/bits/dialog/components/dialog-trigger.svelte +2 -2
- package/dist/bits/dialog/components/dialog.svelte +9 -3
- package/dist/bits/dialog/dialog.svelte.d.ts +75 -65
- package/dist/bits/dialog/dialog.svelte.js +47 -38
- package/dist/bits/dialog/types.d.ts +4 -0
- package/dist/bits/dropdown-menu/components/dropdown-menu-content-static.svelte +3 -3
- package/dist/bits/dropdown-menu/components/dropdown-menu-content.svelte +3 -3
- package/dist/bits/label/components/label.svelte +2 -2
- package/dist/bits/label/label.svelte.d.ts +8 -7
- package/dist/bits/label/label.svelte.js +4 -4
- package/dist/bits/link-preview/components/link-preview-content-static.svelte +3 -3
- package/dist/bits/link-preview/components/link-preview-content.svelte +3 -3
- package/dist/bits/link-preview/components/link-preview-trigger.svelte +2 -2
- package/dist/bits/link-preview/components/link-preview.svelte +4 -2
- package/dist/bits/link-preview/link-preview.svelte.d.ts +28 -25
- package/dist/bits/link-preview/link-preview.svelte.js +24 -16
- package/dist/bits/link-preview/types.d.ts +4 -0
- package/dist/bits/menu/components/menu-arrow.svelte +2 -2
- package/dist/bits/menu/components/menu-checkbox-group.svelte +2 -2
- package/dist/bits/menu/components/menu-checkbox-item.svelte +2 -2
- package/dist/bits/menu/components/menu-content-static.svelte +3 -3
- package/dist/bits/menu/components/menu-content.svelte +3 -3
- package/dist/bits/menu/components/menu-group-heading.svelte +2 -2
- package/dist/bits/menu/components/menu-group.svelte +2 -2
- package/dist/bits/menu/components/menu-item.svelte +2 -2
- package/dist/bits/menu/components/menu-radio-group.svelte +2 -2
- package/dist/bits/menu/components/menu-radio-item.svelte +2 -2
- package/dist/bits/menu/components/menu-separator.svelte +2 -2
- package/dist/bits/menu/components/menu-sub-content-static.svelte +3 -3
- package/dist/bits/menu/components/menu-sub-content.svelte +3 -3
- package/dist/bits/menu/components/menu-sub-trigger.svelte +2 -2
- package/dist/bits/menu/components/menu-sub.svelte +9 -3
- package/dist/bits/menu/components/menu-trigger.svelte +2 -2
- package/dist/bits/menu/components/menu.svelte +16 -11
- package/dist/bits/menu/menu.svelte.d.ts +136 -119
- package/dist/bits/menu/menu.svelte.js +106 -96
- package/dist/bits/menu/types.d.ts +8 -0
- package/dist/bits/menubar/components/menubar-content-static.svelte +2 -2
- package/dist/bits/menubar/components/menubar-content.svelte +2 -2
- package/dist/bits/menubar/components/menubar-menu.svelte +2 -2
- package/dist/bits/menubar/components/menubar-trigger.svelte +4 -4
- package/dist/bits/menubar/components/menubar.svelte +2 -2
- package/dist/bits/menubar/menubar.svelte.d.ts +37 -34
- package/dist/bits/menubar/menubar.svelte.js +21 -21
- package/dist/bits/meter/components/meter.svelte +2 -2
- package/dist/bits/meter/meter.svelte.d.ts +10 -9
- package/dist/bits/meter/meter.svelte.js +4 -4
- package/dist/bits/navigation-menu/components/navigation-menu-content-impl.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-content.svelte +3 -3
- package/dist/bits/navigation-menu/components/navigation-menu-indicator-impl.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-indicator.svelte +3 -3
- package/dist/bits/navigation-menu/components/navigation-menu-item.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-link.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-list.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-sub.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-trigger.svelte +2 -2
- package/dist/bits/navigation-menu/components/navigation-menu-viewport.svelte +3 -3
- package/dist/bits/navigation-menu/components/navigation-menu.svelte +2 -2
- package/dist/bits/navigation-menu/navigation-menu.svelte.d.ts +116 -109
- package/dist/bits/navigation-menu/navigation-menu.svelte.js +78 -81
- package/dist/bits/pagination/components/pagination-next-button.svelte +2 -2
- package/dist/bits/pagination/components/pagination-page.svelte +2 -2
- package/dist/bits/pagination/components/pagination-prev-button.svelte +2 -2
- package/dist/bits/pagination/components/pagination.svelte +2 -2
- package/dist/bits/pagination/pagination.svelte.d.ts +34 -32
- package/dist/bits/pagination/pagination.svelte.js +15 -15
- package/dist/bits/pin-input/components/pin-input-cell.svelte +2 -2
- package/dist/bits/pin-input/components/pin-input.svelte +2 -2
- package/dist/bits/pin-input/pin-input.svelte.d.ts +22 -21
- package/dist/bits/pin-input/pin-input.svelte.js +9 -9
- package/dist/bits/popover/components/popover-close.svelte +2 -2
- package/dist/bits/popover/components/popover-content-static.svelte +3 -3
- package/dist/bits/popover/components/popover-content.svelte +3 -3
- package/dist/bits/popover/components/popover-trigger.svelte +2 -2
- package/dist/bits/popover/components/popover.svelte +9 -3
- package/dist/bits/popover/popover.svelte.d.ts +36 -31
- package/dist/bits/popover/popover.svelte.js +26 -21
- package/dist/bits/popover/types.d.ts +4 -0
- package/dist/bits/progress/components/progress.svelte +2 -2
- package/dist/bits/progress/progress.svelte.d.ts +10 -9
- package/dist/bits/progress/progress.svelte.js +4 -4
- package/dist/bits/radio-group/components/radio-group-input.svelte +2 -2
- package/dist/bits/radio-group/components/radio-group-item.svelte +2 -2
- package/dist/bits/radio-group/components/radio-group.svelte +4 -2
- package/dist/bits/radio-group/radio-group.svelte.d.ts +26 -19
- package/dist/bits/radio-group/radio-group.svelte.js +26 -19
- package/dist/bits/radio-group/types.d.ts +13 -6
- package/dist/bits/range-calendar/components/range-calendar-cell.svelte +2 -2
- package/dist/bits/range-calendar/components/range-calendar-day.svelte +2 -2
- package/dist/bits/range-calendar/components/range-calendar.svelte +2 -2
- package/dist/bits/range-calendar/range-calendar.svelte.d.ts +21 -20
- package/dist/bits/range-calendar/range-calendar.svelte.js +12 -12
- package/dist/bits/rating-group/components/rating-group-input.svelte +2 -2
- package/dist/bits/rating-group/components/rating-group-item.svelte +2 -2
- package/dist/bits/rating-group/components/rating-group.svelte +2 -2
- package/dist/bits/rating-group/rating-group.svelte.d.ts +19 -18
- package/dist/bits/rating-group/rating-group.svelte.js +16 -17
- package/dist/bits/scroll-area/components/scroll-area-corner-impl.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-auto.svelte +3 -3
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-hover.svelte +6 -6
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-scroll.svelte +3 -3
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-shared.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-visible.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-x.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-scrollbar-y.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-scrollbar.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-thumb-impl.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area-thumb.svelte +2 -5
- package/dist/bits/scroll-area/components/scroll-area-viewport.svelte +2 -2
- package/dist/bits/scroll-area/components/scroll-area.svelte +2 -2
- package/dist/bits/scroll-area/scroll-area.svelte.d.ts +98 -78
- package/dist/bits/scroll-area/scroll-area.svelte.js +78 -74
- package/dist/bits/select/components/select-content-static.svelte +3 -3
- package/dist/bits/select/components/select-content.svelte +3 -3
- package/dist/bits/select/components/select-group-heading.svelte +2 -2
- package/dist/bits/select/components/select-group.svelte +2 -2
- package/dist/bits/select/components/select-hidden-input.svelte +2 -2
- package/dist/bits/select/components/select-item.svelte +2 -2
- package/dist/bits/select/components/select-scroll-down-button.svelte +2 -2
- package/dist/bits/select/components/select-scroll-up-button.svelte +2 -2
- package/dist/bits/select/components/select-trigger.svelte +2 -2
- package/dist/bits/select/components/select-viewport.svelte +2 -2
- package/dist/bits/select/components/select.svelte +4 -2
- package/dist/bits/select/select.svelte.d.ts +127 -113
- package/dist/bits/select/select.svelte.js +74 -62
- package/dist/bits/select/types.d.ts +4 -0
- package/dist/bits/separator/components/separator.svelte +2 -2
- package/dist/bits/separator/separator.svelte.d.ts +9 -8
- package/dist/bits/separator/separator.svelte.js +4 -4
- package/dist/bits/slider/components/slider-range.svelte +2 -2
- package/dist/bits/slider/components/slider-thumb-label.svelte +2 -2
- package/dist/bits/slider/components/slider-thumb.svelte +2 -2
- package/dist/bits/slider/components/slider-tick-label.svelte +2 -2
- package/dist/bits/slider/components/slider-tick.svelte +2 -2
- package/dist/bits/slider/components/slider.svelte +2 -2
- package/dist/bits/slider/slider.svelte.d.ts +82 -73
- package/dist/bits/slider/slider.svelte.js +30 -28
- package/dist/bits/switch/components/switch-input.svelte +2 -2
- package/dist/bits/switch/components/switch-thumb.svelte +2 -2
- package/dist/bits/switch/components/switch.svelte +2 -2
- package/dist/bits/switch/switch.svelte.d.ts +19 -17
- package/dist/bits/switch/switch.svelte.js +13 -13
- package/dist/bits/tabs/components/tabs-content.svelte +2 -2
- package/dist/bits/tabs/components/tabs-list.svelte +2 -2
- package/dist/bits/tabs/components/tabs-trigger.svelte +2 -2
- package/dist/bits/tabs/components/tabs.svelte +2 -2
- package/dist/bits/tabs/tabs.svelte.d.ts +33 -29
- package/dist/bits/tabs/tabs.svelte.js +19 -19
- package/dist/bits/time-field/components/time-field-hidden-input.svelte +2 -2
- package/dist/bits/time-field/components/time-field-input.svelte +2 -2
- package/dist/bits/time-field/components/time-field-label.svelte +2 -2
- package/dist/bits/time-field/components/time-field-segment.svelte +2 -2
- package/dist/bits/time-field/components/time-field.svelte +2 -2
- package/dist/bits/time-field/time-field.svelte.d.ts +72 -66
- package/dist/bits/time-field/time-field.svelte.js +37 -42
- package/dist/bits/time-range-field/components/time-range-field-input.svelte +2 -2
- package/dist/bits/time-range-field/components/time-range-field-label.svelte +2 -2
- package/dist/bits/time-range-field/components/time-range-field.svelte +2 -2
- package/dist/bits/time-range-field/time-range-field.svelte.d.ts +35 -31
- package/dist/bits/time-range-field/time-range-field.svelte.js +34 -32
- package/dist/bits/toggle/components/toggle.svelte +2 -2
- package/dist/bits/toggle/toggle.svelte.d.ts +11 -10
- package/dist/bits/toggle/toggle.svelte.js +4 -4
- package/dist/bits/toggle-group/components/toggle-group-item.svelte +2 -2
- package/dist/bits/toggle-group/components/toggle-group.svelte +2 -2
- package/dist/bits/toggle-group/toggle-group.svelte.d.ts +48 -43
- package/dist/bits/toggle-group/toggle-group.svelte.js +24 -25
- package/dist/bits/toolbar/components/toolbar-button.svelte +2 -2
- package/dist/bits/toolbar/components/toolbar-group-item.svelte +2 -2
- package/dist/bits/toolbar/components/toolbar-group.svelte +2 -2
- package/dist/bits/toolbar/components/toolbar-link.svelte +2 -2
- package/dist/bits/toolbar/components/toolbar.svelte +2 -2
- package/dist/bits/toolbar/toolbar.svelte.d.ts +59 -51
- package/dist/bits/toolbar/toolbar.svelte.js +32 -30
- package/dist/bits/tooltip/components/tooltip-content-static.svelte +3 -3
- package/dist/bits/tooltip/components/tooltip-content.svelte +3 -3
- package/dist/bits/tooltip/components/tooltip-provider.svelte +2 -2
- package/dist/bits/tooltip/components/tooltip-trigger.svelte +2 -2
- package/dist/bits/tooltip/components/tooltip.svelte +4 -2
- package/dist/bits/tooltip/tooltip.svelte.d.ts +33 -29
- package/dist/bits/tooltip/tooltip.svelte.js +33 -28
- package/dist/bits/tooltip/types.d.ts +4 -0
- package/dist/bits/utilities/config/bits-config.d.ts +1 -1
- package/dist/bits/utilities/dismissible-layer/dismissible-layer.svelte +2 -2
- package/dist/bits/utilities/dismissible-layer/use-dismissable-layer.svelte.d.ts +6 -7
- package/dist/bits/utilities/dismissible-layer/use-dismissable-layer.svelte.js +3 -3
- package/dist/bits/utilities/escape-layer/escape-layer.svelte +2 -2
- package/dist/bits/utilities/escape-layer/use-escape-layer.svelte.d.ts +6 -7
- package/dist/bits/utilities/escape-layer/use-escape-layer.svelte.js +3 -3
- package/dist/bits/utilities/floating-layer/components/floating-layer-anchor.svelte +2 -2
- package/dist/bits/utilities/floating-layer/components/floating-layer-arrow.svelte +2 -2
- package/dist/bits/utilities/floating-layer/components/floating-layer-content.svelte +2 -2
- package/dist/bits/utilities/floating-layer/components/floating-layer.svelte +2 -2
- package/dist/bits/utilities/floating-layer/use-floating-layer.svelte.d.ts +25 -23
- package/dist/bits/utilities/floating-layer/use-floating-layer.svelte.js +25 -25
- package/dist/bits/utilities/focus-scope/use-focus-scope.svelte.d.ts +1 -1
- package/dist/bits/utilities/focus-scope/use-focus-scope.svelte.js +1 -1
- package/dist/bits/utilities/popper-layer/popper-layer-force-mount.svelte +1 -1
- package/dist/bits/utilities/popper-layer/popper-layer-force-mount.svelte.d.ts +1 -1
- package/dist/bits/utilities/popper-layer/popper-layer-inner.svelte +1 -1
- package/dist/bits/utilities/popper-layer/popper-layer-inner.svelte.d.ts +1 -1
- package/dist/bits/utilities/popper-layer/popper-layer.svelte +3 -3
- package/dist/bits/utilities/presence-layer/presence-layer.svelte +8 -8
- package/dist/bits/utilities/presence-layer/presence.svelte.d.ts +42 -0
- package/dist/bits/utilities/presence-layer/presence.svelte.js +116 -0
- package/dist/bits/utilities/presence-layer/types.d.ts +3 -5
- package/dist/bits/utilities/scroll-lock/scroll-lock.svelte +2 -2
- package/dist/bits/utilities/text-selection-layer/text-selection-layer.svelte +2 -2
- package/dist/bits/utilities/text-selection-layer/use-text-selection-layer.svelte.d.ts +7 -7
- package/dist/bits/utilities/text-selection-layer/use-text-selection-layer.svelte.js +3 -3
- package/dist/internal/animations-complete.d.ts +12 -0
- package/dist/internal/animations-complete.js +55 -0
- package/dist/internal/arrays.js +20 -36
- package/dist/internal/attrs.d.ts +9 -2
- package/dist/internal/attrs.js +21 -11
- package/dist/internal/body-scroll-lock.svelte.d.ts +10 -0
- package/dist/internal/body-scroll-lock.svelte.js +106 -0
- package/dist/internal/data-typeahead.svelte.d.ts +15 -0
- package/dist/internal/data-typeahead.svelte.js +33 -0
- package/dist/internal/date-time/calendar-helpers.svelte.d.ts +1 -1
- package/dist/internal/dom-typeahead.svelte.d.ts +14 -0
- package/dist/internal/dom-typeahead.svelte.js +44 -0
- package/dist/internal/dom.d.ts +0 -2
- package/dist/internal/dom.js +0 -15
- package/dist/internal/{use-grace-area.svelte.d.ts → grace-area.svelte.d.ts} +5 -4
- package/dist/internal/{use-grace-area.svelte.js → grace-area.svelte.js} +60 -56
- package/dist/internal/open-change-complete.d.ts +13 -0
- package/dist/internal/open-change-complete.js +24 -0
- package/dist/internal/{use-roving-focus.svelte.d.ts → roving-focus-group.d.ts} +9 -8
- package/dist/internal/{use-roving-focus.svelte.js → roving-focus-group.js} +30 -34
- package/dist/internal/shared-state.svelte.d.ts +6 -0
- package/dist/internal/shared-state.svelte.js +31 -0
- package/dist/internal/should-trap-focus.js +1 -2
- package/dist/internal/state-machine.d.ts +16 -0
- package/dist/internal/state-machine.js +18 -0
- package/dist/internal/svelte-resize-observer.svelte.d.ts +6 -0
- package/dist/internal/svelte-resize-observer.svelte.js +25 -0
- package/dist/internal/tabbable.d.ts +0 -1
- package/dist/internal/tabbable.js +0 -11
- package/dist/internal/timeout-fn.d.ts +16 -0
- package/dist/internal/timeout-fn.js +38 -0
- package/dist/internal/types.d.ts +2 -2
- package/package.json +1 -1
- package/dist/bits/utilities/presence-layer/use-presence.svelte.d.ts +0 -4
- package/dist/bits/utilities/presence-layer/use-presence.svelte.js +0 -97
- package/dist/internal/box.svelte.d.ts +0 -21
- package/dist/internal/box.svelte.js +0 -26
- package/dist/internal/create-event-hook.svelte.d.ts +0 -18
- package/dist/internal/create-event-hook.svelte.js +0 -29
- package/dist/internal/create-shared-hook.svelte.d.ts +0 -2
- package/dist/internal/create-shared-hook.svelte.js +0 -27
- package/dist/internal/sleep.d.ts +0 -1
- package/dist/internal/sleep.js +0 -3
- package/dist/internal/use-after-animations.svelte.d.ts +0 -5
- package/dist/internal/use-after-animations.svelte.js +0 -27
- package/dist/internal/use-body-scroll-lock.svelte.d.ts +0 -6
- package/dist/internal/use-body-scroll-lock.svelte.js +0 -106
- package/dist/internal/use-data-typeahead.svelte.d.ts +0 -15
- package/dist/internal/use-data-typeahead.svelte.js +0 -34
- package/dist/internal/use-dom-typeahead.svelte.d.ts +0 -13
- package/dist/internal/use-dom-typeahead.svelte.js +0 -32
- package/dist/internal/use-form-control.svelte.d.ts +0 -4
- package/dist/internal/use-form-control.svelte.js +0 -16
- package/dist/internal/use-resize-observer.svelte.d.ts +0 -2
- package/dist/internal/use-resize-observer.svelte.js +0 -17
- package/dist/internal/use-state-machine.svelte.d.ts +0 -24
- package/dist/internal/use-state-machine.svelte.js +0 -28
- package/dist/internal/use-timeout-fn.svelte.d.ts +0 -25
- package/dist/internal/use-timeout-fn.svelte.js +0 -39
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { type WritableBox, box } from "svelte-toolbelt";
|
|
3
3
|
import { mergeProps } from "svelte-toolbelt";
|
|
4
4
|
import type { ToolbarGroupProps } from "../types.js";
|
|
5
|
-
import {
|
|
5
|
+
import { ToolbarGroupState } from "../toolbar.svelte.js";
|
|
6
6
|
import { createId } from "../../../internal/create-id.js";
|
|
7
7
|
import { noop } from "../../../internal/noop.js";
|
|
8
8
|
import { watch } from "runed";
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
}
|
|
37
37
|
);
|
|
38
38
|
|
|
39
|
-
const groupState =
|
|
39
|
+
const groupState = ToolbarGroupState.create({
|
|
40
40
|
id: box.with(() => id),
|
|
41
41
|
disabled: box.with(() => disabled),
|
|
42
42
|
type,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box, mergeProps } from "svelte-toolbelt";
|
|
3
|
-
import {
|
|
3
|
+
import { ToolbarLinkState } from "../toolbar.svelte.js";
|
|
4
4
|
import type { ToolbarLinkProps } from "../types.js";
|
|
5
5
|
import { createId } from "../../../internal/create-id.js";
|
|
6
6
|
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
...restProps
|
|
16
16
|
}: ToolbarLinkProps = $props();
|
|
17
17
|
|
|
18
|
-
const linkState =
|
|
18
|
+
const linkState = ToolbarLinkState.create({
|
|
19
19
|
id: box.with(() => id),
|
|
20
20
|
ref: box.with(
|
|
21
21
|
() => ref,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box, mergeProps } from "svelte-toolbelt";
|
|
3
3
|
import type { ToolbarRootProps } from "../types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { ToolbarRootState } from "../toolbar.svelte.js";
|
|
5
5
|
import { createId } from "../../../internal/create-id.js";
|
|
6
6
|
|
|
7
7
|
const uid = $props.id();
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
...restProps
|
|
17
17
|
}: ToolbarRootProps = $props();
|
|
18
18
|
|
|
19
|
-
const rootState =
|
|
19
|
+
const rootState = ToolbarRootState.create({
|
|
20
20
|
id: box.with(() => id),
|
|
21
21
|
orientation: box.with(() => orientation),
|
|
22
22
|
loop: box.with(() => loop),
|
|
@@ -1,30 +1,32 @@
|
|
|
1
|
-
import { type WritableBox } from "svelte-toolbelt";
|
|
2
|
-
import type { ReadableBoxedValues, WritableBoxedValues } from "../../internal/box.svelte.js";
|
|
3
|
-
import { type UseRovingFocusReturn } from "../../internal/use-roving-focus.svelte.js";
|
|
1
|
+
import { type WritableBox, type WritableBoxedValues, type ReadableBoxedValues } from "svelte-toolbelt";
|
|
4
2
|
import type { Orientation } from "../../shared/index.js";
|
|
5
|
-
import type { BitsKeyboardEvent, BitsMouseEvent,
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
import type { BitsKeyboardEvent, BitsMouseEvent, WithRefOpts } from "../../internal/types.js";
|
|
4
|
+
import { RovingFocusGroup } from "../../internal/roving-focus-group.js";
|
|
5
|
+
export declare const toolbarAttrs: import("../../internal/attrs.js").CreateBitsAttrsReturn<readonly ["root", "item", "group", "group-item", "link", "button"]>;
|
|
6
|
+
interface ToolbarRootStateOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
8
7
|
orientation: Orientation;
|
|
9
8
|
loop: boolean;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
}> {
|
|
10
|
+
}
|
|
11
|
+
export declare class ToolbarRootState {
|
|
12
|
+
static create(opts: ToolbarRootStateOpts): ToolbarRootState;
|
|
13
|
+
readonly opts: ToolbarRootStateOpts;
|
|
14
|
+
readonly rovingFocusGroup: RovingFocusGroup;
|
|
15
|
+
constructor(opts: ToolbarRootStateOpts);
|
|
15
16
|
readonly props: {
|
|
16
17
|
readonly id: string;
|
|
17
18
|
readonly role: "toolbar";
|
|
18
19
|
readonly "data-orientation": Orientation;
|
|
19
20
|
};
|
|
20
21
|
}
|
|
21
|
-
|
|
22
|
+
interface ToolbarGroupBaseStateOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
22
23
|
disabled: boolean;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
}> {
|
|
25
|
+
}
|
|
26
|
+
declare abstract class ToolbarGroupBaseState {
|
|
27
|
+
readonly opts: ToolbarGroupBaseStateOpts;
|
|
26
28
|
readonly root: ToolbarRootState;
|
|
27
|
-
constructor(opts:
|
|
29
|
+
constructor(opts: ToolbarGroupBaseStateOpts, root: ToolbarRootState);
|
|
28
30
|
readonly props: {
|
|
29
31
|
readonly id: string;
|
|
30
32
|
readonly role: "group";
|
|
@@ -32,41 +34,54 @@ declare class ToolbarGroupBaseState {
|
|
|
32
34
|
readonly "data-disabled": "" | undefined;
|
|
33
35
|
};
|
|
34
36
|
}
|
|
35
|
-
|
|
37
|
+
interface ToolbarGroupSingleStateOpts extends ToolbarGroupBaseStateOpts, WritableBoxedValues<{
|
|
36
38
|
value: string;
|
|
37
|
-
}
|
|
39
|
+
}> {
|
|
40
|
+
}
|
|
38
41
|
declare class ToolbarGroupSingleState extends ToolbarGroupBaseState {
|
|
39
|
-
readonly opts:
|
|
42
|
+
readonly opts: ToolbarGroupSingleStateOpts;
|
|
40
43
|
readonly root: ToolbarRootState;
|
|
41
44
|
readonly isMulti: false;
|
|
42
45
|
readonly anyPressed: boolean;
|
|
43
|
-
constructor(opts:
|
|
46
|
+
constructor(opts: ToolbarGroupSingleStateOpts, root: ToolbarRootState);
|
|
44
47
|
includesItem(item: string): boolean;
|
|
45
48
|
toggleItem(item: string): void;
|
|
46
49
|
}
|
|
47
|
-
|
|
50
|
+
interface ToolbarGroupMultipleStateOpts extends ToolbarGroupBaseStateOpts, WritableBoxedValues<{
|
|
48
51
|
value: string[];
|
|
49
|
-
}
|
|
52
|
+
}> {
|
|
53
|
+
}
|
|
50
54
|
declare class ToolbarGroupMultipleState extends ToolbarGroupBaseState {
|
|
51
|
-
readonly opts:
|
|
55
|
+
readonly opts: ToolbarGroupMultipleStateOpts;
|
|
52
56
|
readonly root: ToolbarRootState;
|
|
53
57
|
readonly isMulti: true;
|
|
54
58
|
readonly anyPressed: boolean;
|
|
55
|
-
constructor(opts:
|
|
59
|
+
constructor(opts: ToolbarGroupMultipleStateOpts, root: ToolbarRootState);
|
|
56
60
|
includesItem(item: string): boolean;
|
|
57
61
|
toggleItem(item: string): void;
|
|
58
62
|
}
|
|
59
|
-
type
|
|
60
|
-
|
|
63
|
+
type ToolbarGroup = ToolbarGroupSingleState | ToolbarGroupMultipleState;
|
|
64
|
+
interface ToolbarGroupRootOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
65
|
+
disabled: boolean;
|
|
66
|
+
}> {
|
|
67
|
+
type: "single" | "multiple";
|
|
68
|
+
value: WritableBox<string> | WritableBox<string[]>;
|
|
69
|
+
}
|
|
70
|
+
export declare class ToolbarGroupState {
|
|
71
|
+
static create(opts: ToolbarGroupRootOpts): ToolbarGroup;
|
|
72
|
+
}
|
|
73
|
+
interface ToolbarGroupItemStateOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
61
74
|
value: string;
|
|
62
75
|
disabled: boolean;
|
|
63
|
-
}
|
|
64
|
-
|
|
76
|
+
}> {
|
|
77
|
+
}
|
|
78
|
+
export declare class ToolbarGroupItemState {
|
|
65
79
|
#private;
|
|
66
|
-
|
|
67
|
-
readonly
|
|
80
|
+
static create(opts: ToolbarGroupItemStateOpts): ToolbarGroupItemState;
|
|
81
|
+
readonly opts: ToolbarGroupItemStateOpts;
|
|
82
|
+
readonly group: ToolbarGroup;
|
|
68
83
|
readonly root: ToolbarRootState;
|
|
69
|
-
constructor(opts:
|
|
84
|
+
constructor(opts: ToolbarGroupItemStateOpts, group: ToolbarGroup, root: ToolbarRootState);
|
|
70
85
|
onclick(_: BitsMouseEvent): void;
|
|
71
86
|
onkeydown(e: BitsKeyboardEvent): void;
|
|
72
87
|
readonly isPressed: boolean;
|
|
@@ -85,12 +100,14 @@ declare class ToolbarGroupItemState {
|
|
|
85
100
|
readonly onkeydown: (e: BitsKeyboardEvent) => void;
|
|
86
101
|
};
|
|
87
102
|
}
|
|
88
|
-
|
|
89
|
-
|
|
103
|
+
interface ToolbarLinkStateOpts extends WithRefOpts {
|
|
104
|
+
}
|
|
105
|
+
export declare class ToolbarLinkState {
|
|
90
106
|
#private;
|
|
91
|
-
|
|
107
|
+
static create(opts: ToolbarLinkStateOpts): ToolbarLinkState;
|
|
108
|
+
readonly opts: ToolbarLinkStateOpts;
|
|
92
109
|
readonly root: ToolbarRootState;
|
|
93
|
-
constructor(opts:
|
|
110
|
+
constructor(opts: ToolbarLinkStateOpts, root: ToolbarRootState);
|
|
94
111
|
onkeydown(e: BitsKeyboardEvent): void;
|
|
95
112
|
readonly props: {
|
|
96
113
|
readonly id: string;
|
|
@@ -100,14 +117,16 @@ declare class ToolbarLinkState {
|
|
|
100
117
|
readonly onkeydown: (e: BitsKeyboardEvent) => void;
|
|
101
118
|
};
|
|
102
119
|
}
|
|
103
|
-
|
|
120
|
+
interface ToolbarButtonStateOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
104
121
|
disabled: boolean;
|
|
105
|
-
}
|
|
106
|
-
|
|
122
|
+
}> {
|
|
123
|
+
}
|
|
124
|
+
export declare class ToolbarButtonState {
|
|
107
125
|
#private;
|
|
108
|
-
|
|
126
|
+
static create(opts: ToolbarButtonStateOpts): ToolbarButtonState;
|
|
127
|
+
readonly opts: ToolbarButtonStateOpts;
|
|
109
128
|
readonly root: ToolbarRootState;
|
|
110
|
-
constructor(opts:
|
|
129
|
+
constructor(opts: ToolbarButtonStateOpts, root: ToolbarRootState);
|
|
111
130
|
onkeydown(e: BitsKeyboardEvent): void;
|
|
112
131
|
readonly props: {
|
|
113
132
|
readonly id: string;
|
|
@@ -119,15 +138,4 @@ declare class ToolbarButtonState {
|
|
|
119
138
|
readonly onkeydown: (e: BitsKeyboardEvent) => void;
|
|
120
139
|
};
|
|
121
140
|
}
|
|
122
|
-
export declare function useToolbarRoot(props: ToolbarRootStateProps): ToolbarRootState;
|
|
123
|
-
type InitToolbarGroupProps = WithRefProps<{
|
|
124
|
-
type: "single" | "multiple";
|
|
125
|
-
value: WritableBox<string> | WritableBox<string[]>;
|
|
126
|
-
} & ReadableBoxedValues<{
|
|
127
|
-
disabled: boolean;
|
|
128
|
-
}>>;
|
|
129
|
-
export declare function useToolbarGroup(props: InitToolbarGroupProps): ToolbarGroupState;
|
|
130
|
-
export declare function useToolbarGroupItem(props: ToolbarGroupItemStateProps): ToolbarGroupItemState;
|
|
131
|
-
export declare function useToolbarButton(props: ToolbarButtonStateProps): ToolbarButtonState;
|
|
132
|
-
export declare function useToolbarLink(props: ToolbarLinkStateProps): ToolbarLinkState;
|
|
133
141
|
export {};
|
|
@@ -1,18 +1,23 @@
|
|
|
1
|
-
import { attachRef } from "svelte-toolbelt";
|
|
1
|
+
import { attachRef, } from "svelte-toolbelt";
|
|
2
2
|
import { Context } from "runed";
|
|
3
3
|
import { createBitsAttrs, getAriaChecked, getAriaPressed, getDataDisabled, getDataOrientation, getDisabled, } from "../../internal/attrs.js";
|
|
4
4
|
import { kbd } from "../../internal/kbd.js";
|
|
5
|
-
import {
|
|
5
|
+
import { RovingFocusGroup } from "../../internal/roving-focus-group.js";
|
|
6
6
|
export const toolbarAttrs = createBitsAttrs({
|
|
7
7
|
component: "toolbar",
|
|
8
8
|
parts: ["root", "item", "group", "group-item", "link", "button"],
|
|
9
9
|
});
|
|
10
|
-
|
|
10
|
+
const ToolbarRootContext = new Context("Toolbar.Root");
|
|
11
|
+
const ToolbarGroupContext = new Context("Toolbar.Group");
|
|
12
|
+
export class ToolbarRootState {
|
|
13
|
+
static create(opts) {
|
|
14
|
+
return ToolbarRootContext.set(new ToolbarRootState(opts));
|
|
15
|
+
}
|
|
11
16
|
opts;
|
|
12
17
|
rovingFocusGroup;
|
|
13
18
|
constructor(opts) {
|
|
14
19
|
this.opts = opts;
|
|
15
|
-
this.rovingFocusGroup =
|
|
20
|
+
this.rovingFocusGroup = new RovingFocusGroup({
|
|
16
21
|
orientation: this.opts.orientation,
|
|
17
22
|
loop: this.opts.loop,
|
|
18
23
|
rootNode: this.opts.ref,
|
|
@@ -87,7 +92,21 @@ class ToolbarGroupMultipleState extends ToolbarGroupBaseState {
|
|
|
87
92
|
}
|
|
88
93
|
}
|
|
89
94
|
}
|
|
90
|
-
class
|
|
95
|
+
export class ToolbarGroupState {
|
|
96
|
+
static create(opts) {
|
|
97
|
+
const { type, ...rest } = opts;
|
|
98
|
+
const rootState = ToolbarRootContext.get();
|
|
99
|
+
const groupState = type === "single"
|
|
100
|
+
? new ToolbarGroupSingleState(rest, rootState)
|
|
101
|
+
: new ToolbarGroupMultipleState(rest, rootState);
|
|
102
|
+
return ToolbarGroupContext.set(groupState);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
export class ToolbarGroupItemState {
|
|
106
|
+
static create(opts) {
|
|
107
|
+
const group = ToolbarGroupContext.get();
|
|
108
|
+
return new ToolbarGroupItemState(opts, group, group.root);
|
|
109
|
+
}
|
|
91
110
|
opts;
|
|
92
111
|
group;
|
|
93
112
|
root;
|
|
@@ -149,7 +168,10 @@ class ToolbarGroupItemState {
|
|
|
149
168
|
...attachRef(this.opts.ref),
|
|
150
169
|
}));
|
|
151
170
|
}
|
|
152
|
-
class ToolbarLinkState {
|
|
171
|
+
export class ToolbarLinkState {
|
|
172
|
+
static create(opts) {
|
|
173
|
+
return new ToolbarLinkState(opts, ToolbarRootContext.get());
|
|
174
|
+
}
|
|
153
175
|
opts;
|
|
154
176
|
root;
|
|
155
177
|
constructor(opts, root) {
|
|
@@ -184,7 +206,10 @@ class ToolbarLinkState {
|
|
|
184
206
|
...attachRef(this.opts.ref),
|
|
185
207
|
}));
|
|
186
208
|
}
|
|
187
|
-
class ToolbarButtonState {
|
|
209
|
+
export class ToolbarButtonState {
|
|
210
|
+
static create(opts) {
|
|
211
|
+
return new ToolbarButtonState(opts, ToolbarRootContext.get());
|
|
212
|
+
}
|
|
188
213
|
opts;
|
|
189
214
|
root;
|
|
190
215
|
constructor(opts, root) {
|
|
@@ -227,26 +252,3 @@ class ToolbarButtonState {
|
|
|
227
252
|
function getToggleItemDataState(condition) {
|
|
228
253
|
return condition ? "on" : "off";
|
|
229
254
|
}
|
|
230
|
-
const ToolbarRootContext = new Context("Toolbar.Root");
|
|
231
|
-
const ToolbarGroupContext = new Context("Toolbar.Group");
|
|
232
|
-
export function useToolbarRoot(props) {
|
|
233
|
-
return ToolbarRootContext.set(new ToolbarRootState(props));
|
|
234
|
-
}
|
|
235
|
-
export function useToolbarGroup(props) {
|
|
236
|
-
const { type, ...rest } = props;
|
|
237
|
-
const rootState = ToolbarRootContext.get();
|
|
238
|
-
const groupState = type === "single"
|
|
239
|
-
? new ToolbarGroupSingleState(rest, rootState)
|
|
240
|
-
: new ToolbarGroupMultipleState(rest, rootState);
|
|
241
|
-
return ToolbarGroupContext.set(groupState);
|
|
242
|
-
}
|
|
243
|
-
export function useToolbarGroupItem(props) {
|
|
244
|
-
const group = ToolbarGroupContext.get();
|
|
245
|
-
return new ToolbarGroupItemState(props, group, group.root);
|
|
246
|
-
}
|
|
247
|
-
export function useToolbarButton(props) {
|
|
248
|
-
return new ToolbarButtonState(props, ToolbarRootContext.get());
|
|
249
|
-
}
|
|
250
|
-
export function useToolbarLink(props) {
|
|
251
|
-
return new ToolbarLinkState(props, ToolbarRootContext.get());
|
|
252
|
-
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box, mergeProps } from "svelte-toolbelt";
|
|
3
3
|
import type { TooltipContentStaticProps } from "../types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { TooltipContentState } from "../tooltip.svelte.js";
|
|
5
5
|
import { createId } from "../../../internal/create-id.js";
|
|
6
6
|
import PopperLayer from "../../utilities/popper-layer/popper-layer.svelte";
|
|
7
7
|
import { getFloatingContentCSSVars } from "../../../internal/floating-svelte/floating-utils.svelte.js";
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
...restProps
|
|
22
22
|
}: TooltipContentStaticProps = $props();
|
|
23
23
|
|
|
24
|
-
const contentState =
|
|
24
|
+
const contentState = TooltipContentState.create({
|
|
25
25
|
id: box.with(() => id),
|
|
26
26
|
ref: box.with(
|
|
27
27
|
() => ref,
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
{...contentState.popperProps}
|
|
68
68
|
tooltip={true}
|
|
69
69
|
isStatic
|
|
70
|
-
|
|
70
|
+
open={contentState.root.opts.open.current}
|
|
71
71
|
{id}
|
|
72
72
|
trapFocus={false}
|
|
73
73
|
loop={false}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box, mergeProps } from "svelte-toolbelt";
|
|
3
3
|
import type { TooltipContentProps } from "../types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { TooltipContentState } from "../tooltip.svelte.js";
|
|
5
5
|
import { createId } from "../../../internal/create-id.js";
|
|
6
6
|
import PopperLayer from "../../utilities/popper-layer/popper-layer.svelte";
|
|
7
7
|
import { getFloatingContentCSSVars } from "../../../internal/floating-svelte/floating-utils.svelte.js";
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
...restProps
|
|
30
30
|
}: TooltipContentProps = $props();
|
|
31
31
|
|
|
32
|
-
const contentState =
|
|
32
|
+
const contentState = TooltipContentState.create({
|
|
33
33
|
id: box.with(() => id),
|
|
34
34
|
ref: box.with(
|
|
35
35
|
() => ref,
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
<PopperLayer
|
|
86
86
|
{...mergedProps}
|
|
87
87
|
{...contentState.popperProps}
|
|
88
|
-
|
|
88
|
+
open={contentState.root.opts.open.current}
|
|
89
89
|
{id}
|
|
90
90
|
trapFocus={false}
|
|
91
91
|
loop={false}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box } from "svelte-toolbelt";
|
|
3
3
|
import type { TooltipProviderProps } from "../types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { TooltipProviderState } from "../tooltip.svelte.js";
|
|
5
5
|
|
|
6
6
|
let {
|
|
7
7
|
children,
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
skipDelayDuration = 300,
|
|
14
14
|
}: TooltipProviderProps = $props();
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
TooltipProviderState.create({
|
|
17
17
|
delayDuration: box.with(() => delayDuration),
|
|
18
18
|
disableCloseOnTriggerClick: box.with(() => disableCloseOnTriggerClick),
|
|
19
19
|
disableHoverableContent: box.with(() => disableHoverableContent),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box, mergeProps } from "svelte-toolbelt";
|
|
3
3
|
import type { TooltipTriggerProps } from "../types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { TooltipTriggerState } from "../tooltip.svelte.js";
|
|
5
5
|
import { createId } from "../../../internal/create-id.js";
|
|
6
6
|
import FloatingLayerAnchor from "../../utilities/floating-layer/components/floating-layer-anchor.svelte";
|
|
7
7
|
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
...restProps
|
|
18
18
|
}: TooltipTriggerProps = $props();
|
|
19
19
|
|
|
20
|
-
const triggerState =
|
|
20
|
+
const triggerState = TooltipTriggerState.create({
|
|
21
21
|
id: box.with(() => id),
|
|
22
22
|
disabled: box.with(() => disabled ?? false),
|
|
23
23
|
ref: box.with(
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { box } from "svelte-toolbelt";
|
|
3
3
|
import type { TooltipRootProps } from "../types.js";
|
|
4
|
-
import {
|
|
4
|
+
import { TooltipRootState } from "../tooltip.svelte.js";
|
|
5
5
|
import FloatingLayer from "../../utilities/floating-layer/components/floating-layer.svelte";
|
|
6
6
|
import { noop } from "../../../internal/noop.js";
|
|
7
7
|
|
|
8
8
|
let {
|
|
9
9
|
open = $bindable(false),
|
|
10
10
|
onOpenChange = noop,
|
|
11
|
+
onOpenChangeComplete = noop,
|
|
11
12
|
disabled,
|
|
12
13
|
delayDuration,
|
|
13
14
|
disableCloseOnTriggerClick,
|
|
@@ -16,7 +17,7 @@
|
|
|
16
17
|
children,
|
|
17
18
|
}: TooltipRootProps = $props();
|
|
18
19
|
|
|
19
|
-
|
|
20
|
+
TooltipRootState.create({
|
|
20
21
|
open: box.with(
|
|
21
22
|
() => open,
|
|
22
23
|
(v) => {
|
|
@@ -29,6 +30,7 @@
|
|
|
29
30
|
disableHoverableContent: box.with(() => disableHoverableContent),
|
|
30
31
|
ignoreNonKeyboardFocus: box.with(() => ignoreNonKeyboardFocus),
|
|
31
32
|
disabled: box.with(() => disabled),
|
|
33
|
+
onOpenChangeComplete: box.with(() => onOpenChangeComplete),
|
|
32
34
|
});
|
|
33
35
|
</script>
|
|
34
36
|
|
|
@@ -1,38 +1,42 @@
|
|
|
1
|
-
import { DOMContext } from "svelte-toolbelt";
|
|
2
|
-
import type {
|
|
3
|
-
import type { WithRefProps } from "../../internal/types.js";
|
|
1
|
+
import { DOMContext, type WritableBoxedValues, type ReadableBoxedValues } from "svelte-toolbelt";
|
|
2
|
+
import type { OnChangeFn, WithRefOpts } from "../../internal/types.js";
|
|
4
3
|
import type { FocusEventHandler, MouseEventHandler, PointerEventHandler } from "svelte/elements";
|
|
5
|
-
export declare const tooltipAttrs: import("../../internal/attrs.js").
|
|
6
|
-
|
|
4
|
+
export declare const tooltipAttrs: import("../../internal/attrs.js").CreateBitsAttrsReturn<readonly ["content", "trigger"]>;
|
|
5
|
+
interface TooltipProviderStateOpts extends ReadableBoxedValues<{
|
|
7
6
|
delayDuration: number;
|
|
8
7
|
disableHoverableContent: boolean;
|
|
9
8
|
disableCloseOnTriggerClick: boolean;
|
|
10
9
|
disabled: boolean;
|
|
11
10
|
ignoreNonKeyboardFocus: boolean;
|
|
12
11
|
skipDelayDuration: number;
|
|
13
|
-
}
|
|
14
|
-
|
|
12
|
+
}> {
|
|
13
|
+
}
|
|
14
|
+
export declare class TooltipProviderState {
|
|
15
15
|
#private;
|
|
16
|
-
|
|
16
|
+
static create(opts: TooltipProviderStateOpts): TooltipProviderState;
|
|
17
|
+
readonly opts: TooltipProviderStateOpts;
|
|
17
18
|
isOpenDelayed: boolean;
|
|
18
19
|
isPointerInTransit: import("svelte-toolbelt").WritableBox<boolean>;
|
|
19
|
-
constructor(opts:
|
|
20
|
+
constructor(opts: TooltipProviderStateOpts);
|
|
20
21
|
onOpen: (tooltip: TooltipRootState) => void;
|
|
21
22
|
onClose: (tooltip: TooltipRootState) => void;
|
|
22
23
|
isTooltipOpen: (tooltip: TooltipRootState) => boolean;
|
|
23
24
|
}
|
|
24
|
-
|
|
25
|
+
interface TooltipRootStateOpts extends ReadableBoxedValues<{
|
|
25
26
|
delayDuration: number | undefined;
|
|
26
27
|
disableHoverableContent: boolean | undefined;
|
|
27
28
|
disableCloseOnTriggerClick: boolean | undefined;
|
|
28
29
|
disabled: boolean | undefined;
|
|
29
30
|
ignoreNonKeyboardFocus: boolean | undefined;
|
|
30
|
-
|
|
31
|
+
onOpenChangeComplete: OnChangeFn<boolean>;
|
|
32
|
+
}>, WritableBoxedValues<{
|
|
31
33
|
open: boolean;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
+
}> {
|
|
35
|
+
}
|
|
36
|
+
export declare class TooltipRootState {
|
|
34
37
|
#private;
|
|
35
|
-
|
|
38
|
+
static create(opts: TooltipRootStateOpts): TooltipRootState;
|
|
39
|
+
readonly opts: TooltipRootStateOpts;
|
|
36
40
|
readonly provider: TooltipProviderState;
|
|
37
41
|
readonly delayDuration: number;
|
|
38
42
|
readonly disableHoverableContent: boolean;
|
|
@@ -42,21 +46,23 @@ declare class TooltipRootState {
|
|
|
42
46
|
contentNode: HTMLElement | null;
|
|
43
47
|
triggerNode: HTMLElement | null;
|
|
44
48
|
readonly stateAttr: string;
|
|
45
|
-
constructor(opts:
|
|
49
|
+
constructor(opts: TooltipRootStateOpts, provider: TooltipProviderState);
|
|
46
50
|
handleOpen: () => void;
|
|
47
51
|
handleClose: () => void;
|
|
48
52
|
onTriggerEnter: () => void;
|
|
49
53
|
onTriggerLeave: () => void;
|
|
50
54
|
}
|
|
51
|
-
|
|
55
|
+
interface TooltipTriggerStateOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
52
56
|
disabled: boolean;
|
|
53
|
-
}
|
|
54
|
-
|
|
57
|
+
}> {
|
|
58
|
+
}
|
|
59
|
+
export declare class TooltipTriggerState {
|
|
55
60
|
#private;
|
|
56
|
-
|
|
61
|
+
static create(opts: TooltipTriggerStateOpts): TooltipTriggerState;
|
|
62
|
+
readonly opts: TooltipTriggerStateOpts;
|
|
57
63
|
readonly root: TooltipRootState;
|
|
58
64
|
domContext: DOMContext;
|
|
59
|
-
constructor(opts:
|
|
65
|
+
constructor(opts: TooltipTriggerStateOpts, root: TooltipRootState);
|
|
60
66
|
handlePointerUp: () => void;
|
|
61
67
|
readonly props: {
|
|
62
68
|
readonly id: string;
|
|
@@ -75,14 +81,16 @@ declare class TooltipTriggerState {
|
|
|
75
81
|
readonly onclick: MouseEventHandler<HTMLElement>;
|
|
76
82
|
};
|
|
77
83
|
}
|
|
78
|
-
|
|
84
|
+
interface TooltipContentStateOpts extends WithRefOpts, ReadableBoxedValues<{
|
|
79
85
|
onInteractOutside: (e: PointerEvent) => void;
|
|
80
86
|
onEscapeKeydown: (e: KeyboardEvent) => void;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
|
|
87
|
+
}> {
|
|
88
|
+
}
|
|
89
|
+
export declare class TooltipContentState {
|
|
90
|
+
static create(opts: TooltipContentStateOpts): TooltipContentState;
|
|
91
|
+
readonly opts: TooltipContentStateOpts;
|
|
84
92
|
readonly root: TooltipRootState;
|
|
85
|
-
constructor(opts:
|
|
93
|
+
constructor(opts: TooltipContentStateOpts, root: TooltipRootState);
|
|
86
94
|
onInteractOutside: (e: PointerEvent) => void;
|
|
87
95
|
onEscapeKeydown: (e: KeyboardEvent) => void;
|
|
88
96
|
onOpenAutoFocus: (e: Event) => void;
|
|
@@ -106,8 +114,4 @@ declare class TooltipContentState {
|
|
|
106
114
|
onCloseAutoFocus: (e: Event) => void;
|
|
107
115
|
};
|
|
108
116
|
}
|
|
109
|
-
export declare function useTooltipProvider(props: TooltipProviderStateProps): TooltipProviderState;
|
|
110
|
-
export declare function useTooltipRoot(props: TooltipRootStateProps): TooltipRootState;
|
|
111
|
-
export declare function useTooltipTrigger(props: TooltipTriggerStateProps): TooltipTriggerState;
|
|
112
|
-
export declare function useTooltipContent(props: TooltipContentStateProps): TooltipContentState;
|
|
113
117
|
export {};
|