@cdx-ui/primitives 0.0.1-beta.99 → 0.1.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/LICENSE +21 -0
- package/README.md +77 -52
- package/coverage.svg +1 -0
- package/lib/commonjs/accordion/Accordion.js +65 -0
- package/lib/commonjs/accordion/Accordion.js.map +1 -0
- package/lib/commonjs/accordion/AccordionContent.js +73 -0
- package/lib/commonjs/accordion/AccordionContent.js.map +1 -0
- package/lib/commonjs/accordion/AccordionItem.js +69 -0
- package/lib/commonjs/accordion/AccordionItem.js.map +1 -0
- package/lib/commonjs/accordion/AccordionTrigger.js +102 -0
- package/lib/commonjs/accordion/AccordionTrigger.js.map +1 -0
- package/lib/commonjs/accordion/context.js +14 -0
- package/lib/commonjs/accordion/context.js.map +1 -0
- package/lib/commonjs/accordion/index.js +59 -0
- package/lib/commonjs/accordion/index.js.map +1 -0
- package/lib/commonjs/accordion/types.js +6 -0
- package/lib/commonjs/accordion/types.js.map +1 -0
- package/lib/commonjs/accordion/utils.js +24 -0
- package/lib/commonjs/accordion/utils.js.map +1 -0
- package/lib/commonjs/breadcrumbs/BreadcrumbsRoot.js +50 -0
- package/lib/commonjs/breadcrumbs/BreadcrumbsRoot.js.map +1 -0
- package/lib/commonjs/breadcrumbs/context.js +11 -0
- package/lib/commonjs/breadcrumbs/context.js.map +1 -0
- package/lib/commonjs/breadcrumbs/index.js +27 -0
- package/lib/commonjs/breadcrumbs/index.js.map +1 -0
- package/lib/commonjs/breadcrumbs/types.js +8 -0
- package/lib/commonjs/breadcrumbs/types.js.map +1 -0
- package/lib/commonjs/button/ButtonRoot.js +38 -2
- package/lib/commonjs/button/ButtonRoot.js.map +1 -1
- package/lib/commonjs/calendar/CalendarGrid.js +33 -0
- package/lib/commonjs/calendar/CalendarGrid.js.map +1 -0
- package/lib/commonjs/calendar/CalendarRoot.js +95 -0
- package/lib/commonjs/calendar/CalendarRoot.js.map +1 -0
- package/lib/commonjs/calendar/context.js +17 -0
- package/lib/commonjs/calendar/context.js.map +1 -0
- package/lib/commonjs/calendar/index.js +27 -0
- package/lib/commonjs/calendar/index.js.map +1 -0
- package/lib/commonjs/calendar/types.js +6 -0
- package/lib/commonjs/calendar/types.js.map +1 -0
- package/lib/commonjs/checkbox/CheckboxGroup.js +15 -2
- package/lib/commonjs/checkbox/CheckboxGroup.js.map +1 -1
- package/lib/commonjs/checkbox/CheckboxRoot.js +1 -1
- package/lib/commonjs/checkbox/CheckboxRoot.js.map +1 -1
- package/lib/commonjs/checkbox/CheckboxRoot.web.js +91 -28
- package/lib/commonjs/checkbox/CheckboxRoot.web.js.map +1 -1
- package/lib/commonjs/checkbox/useCheckboxRoot.js +42 -21
- package/lib/commonjs/checkbox/useCheckboxRoot.js.map +1 -1
- package/lib/commonjs/chip/ChipRoot.js +3 -1
- package/lib/commonjs/chip/ChipRoot.js.map +1 -1
- package/lib/commonjs/date-field/DateFieldHiddenInput.js +148 -0
- package/lib/commonjs/date-field/DateFieldHiddenInput.js.map +1 -0
- package/lib/commonjs/date-field/DateFieldInput.js +122 -0
- package/lib/commonjs/date-field/DateFieldInput.js.map +1 -0
- package/lib/commonjs/date-field/DateFieldRoot.js +85 -0
- package/lib/commonjs/date-field/DateFieldRoot.js.map +1 -0
- package/lib/commonjs/date-field/DateFieldSegment.js +92 -0
- package/lib/commonjs/date-field/DateFieldSegment.js.map +1 -0
- package/lib/commonjs/date-field/context.js +19 -0
- package/lib/commonjs/date-field/context.js.map +1 -0
- package/lib/commonjs/date-field/index.js +34 -0
- package/lib/commonjs/date-field/index.js.map +1 -0
- package/lib/commonjs/date-field/segmentIndex.js +23 -0
- package/lib/commonjs/date-field/segmentIndex.js.map +1 -0
- package/lib/commonjs/date-field/segmentKeyboard.js +169 -0
- package/lib/commonjs/date-field/segmentKeyboard.js.map +1 -0
- package/lib/commonjs/date-field/types.js +6 -0
- package/lib/commonjs/date-field/types.js.map +1 -0
- package/lib/commonjs/date-field/useDateFieldSegmentState.js +381 -0
- package/lib/commonjs/date-field/useDateFieldSegmentState.js.map +1 -0
- package/lib/commonjs/date-field/useRangeDateFieldBridge.js +67 -0
- package/lib/commonjs/date-field/useRangeDateFieldBridge.js.map +1 -0
- package/lib/commonjs/date-picker/DatePickerRoot.js +123 -0
- package/lib/commonjs/date-picker/DatePickerRoot.js.map +1 -0
- package/lib/commonjs/date-picker/context.js +17 -0
- package/lib/commonjs/date-picker/context.js.map +1 -0
- package/lib/commonjs/date-picker/index.js +26 -0
- package/lib/commonjs/date-picker/index.js.map +1 -0
- package/lib/commonjs/date-range-picker/DateRangePickerRoot.js +144 -0
- package/lib/commonjs/date-range-picker/DateRangePickerRoot.js.map +1 -0
- package/lib/commonjs/date-range-picker/context.js +23 -0
- package/lib/commonjs/date-range-picker/context.js.map +1 -0
- package/lib/commonjs/date-range-picker/index.js +26 -0
- package/lib/commonjs/date-range-picker/index.js.map +1 -0
- package/lib/commonjs/date-time-field/DateTimeFieldHiddenInput.js +150 -0
- package/lib/commonjs/date-time-field/DateTimeFieldHiddenInput.js.map +1 -0
- package/lib/commonjs/date-time-field/DateTimeFieldInput.js +104 -0
- package/lib/commonjs/date-time-field/DateTimeFieldInput.js.map +1 -0
- package/lib/commonjs/date-time-field/DateTimeFieldRoot.js +159 -0
- package/lib/commonjs/date-time-field/DateTimeFieldRoot.js.map +1 -0
- package/lib/commonjs/date-time-field/DateTimeFieldSegment.js +87 -0
- package/lib/commonjs/date-time-field/DateTimeFieldSegment.js.map +1 -0
- package/lib/commonjs/date-time-field/context.js +17 -0
- package/lib/commonjs/date-time-field/context.js.map +1 -0
- package/lib/commonjs/date-time-field/index.js +40 -0
- package/lib/commonjs/date-time-field/index.js.map +1 -0
- package/lib/commonjs/date-time-field/useDateTimeFieldSegmentState.js +564 -0
- package/lib/commonjs/date-time-field/useDateTimeFieldSegmentState.js.map +1 -0
- package/lib/commonjs/date-time-list/DateTimeListRoot.js +418 -0
- package/lib/commonjs/date-time-list/DateTimeListRoot.js.map +1 -0
- package/lib/commonjs/date-time-list/context.js +26 -0
- package/lib/commonjs/date-time-list/context.js.map +1 -0
- package/lib/commonjs/date-time-list/index.js +62 -0
- package/lib/commonjs/date-time-list/index.js.map +1 -0
- package/lib/commonjs/date-time-picker/DateTimePickerRoot.js +134 -0
- package/lib/commonjs/date-time-picker/DateTimePickerRoot.js.map +1 -0
- package/lib/commonjs/date-time-picker/context.js +17 -0
- package/lib/commonjs/date-time-picker/context.js.map +1 -0
- package/lib/commonjs/date-time-picker/index.js +26 -0
- package/lib/commonjs/date-time-picker/index.js.map +1 -0
- package/lib/commonjs/dialog/DialogContent.js +94 -0
- package/lib/commonjs/dialog/DialogContent.js.map +1 -0
- package/lib/commonjs/dialog/DialogOverlay.js +54 -0
- package/lib/commonjs/dialog/DialogOverlay.js.map +1 -0
- package/lib/commonjs/dialog/DialogPopup.js +7 -2
- package/lib/commonjs/dialog/DialogPopup.js.map +1 -1
- package/lib/commonjs/dialog/DialogPortal.js +37 -0
- package/lib/commonjs/dialog/DialogPortal.js.map +1 -0
- package/lib/commonjs/dialog/DialogRoot.js +1 -1
- package/lib/commonjs/dialog/DialogRoot.js.map +1 -1
- package/lib/commonjs/dialog/index.js +21 -0
- package/lib/commonjs/dialog/index.js.map +1 -1
- package/lib/commonjs/form/FormRoot.web.js +7 -2
- package/lib/commonjs/form/FormRoot.web.js.map +1 -1
- package/lib/commonjs/index.js +300 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/menu/MenuCheckboxItem.js +42 -0
- package/lib/commonjs/menu/MenuCheckboxItem.js.map +1 -0
- package/lib/commonjs/menu/MenuItem.js +142 -0
- package/lib/commonjs/menu/MenuItem.js.map +1 -0
- package/lib/commonjs/menu/MenuOverlayRoot.js +80 -0
- package/lib/commonjs/menu/MenuOverlayRoot.js.map +1 -0
- package/lib/commonjs/menu/MenuPopup.js +78 -0
- package/lib/commonjs/menu/MenuPopup.js.map +1 -0
- package/lib/commonjs/menu/MenuRadioGroup.js +48 -0
- package/lib/commonjs/menu/MenuRadioGroup.js.map +1 -0
- package/lib/commonjs/menu/MenuRadioItem.js +32 -0
- package/lib/commonjs/menu/MenuRadioItem.js.map +1 -0
- package/lib/commonjs/menu/MenuRoot.js +139 -0
- package/lib/commonjs/menu/MenuRoot.js.map +1 -0
- package/lib/commonjs/menu/MenuTrigger.js +59 -0
- package/lib/commonjs/menu/MenuTrigger.js.map +1 -0
- package/lib/commonjs/menu/context.js +36 -0
- package/lib/commonjs/menu/context.js.map +1 -0
- package/lib/commonjs/menu/index.js +118 -0
- package/lib/commonjs/menu/index.js.map +1 -0
- package/lib/commonjs/menu/overlayContext.js +30 -0
- package/lib/commonjs/menu/overlayContext.js.map +1 -0
- package/lib/commonjs/menu/types.js +6 -0
- package/lib/commonjs/menu/types.js.map +1 -0
- package/lib/commonjs/menu/useMenuNavigation.js +87 -0
- package/lib/commonjs/menu/useMenuNavigation.js.map +1 -0
- package/lib/commonjs/menu/useMenuOverlayLifecycle.js +68 -0
- package/lib/commonjs/menu/useMenuOverlayLifecycle.js.map +1 -0
- package/lib/commonjs/menu/useMenuTrigger.js +115 -0
- package/lib/commonjs/menu/useMenuTrigger.js.map +1 -0
- package/lib/commonjs/month-calendar/MonthCalendarCell.js +64 -0
- package/lib/commonjs/month-calendar/MonthCalendarCell.js.map +1 -0
- package/lib/commonjs/month-calendar/MonthCalendarRoot.js +103 -0
- package/lib/commonjs/month-calendar/MonthCalendarRoot.js.map +1 -0
- package/lib/commonjs/month-calendar/MonthCalendarYearCell.js +63 -0
- package/lib/commonjs/month-calendar/MonthCalendarYearCell.js.map +1 -0
- package/lib/commonjs/month-calendar/context.js +17 -0
- package/lib/commonjs/month-calendar/context.js.map +1 -0
- package/lib/commonjs/month-calendar/index.js +34 -0
- package/lib/commonjs/month-calendar/index.js.map +1 -0
- package/lib/commonjs/month-picker/MonthPickerRoot.js +118 -0
- package/lib/commonjs/month-picker/MonthPickerRoot.js.map +1 -0
- package/lib/commonjs/month-picker/context.js +17 -0
- package/lib/commonjs/month-picker/context.js.map +1 -0
- package/lib/commonjs/month-picker/index.js +26 -0
- package/lib/commonjs/month-picker/index.js.map +1 -0
- package/lib/commonjs/overlay/OverlayContainer.js +5 -5
- package/lib/commonjs/overlay/OverlayContainer.js.map +1 -1
- package/lib/commonjs/overlay/OverlayStack.js +125 -0
- package/lib/commonjs/overlay/OverlayStack.js.map +1 -0
- package/lib/commonjs/overlay/constants.js +18 -0
- package/lib/commonjs/overlay/constants.js.map +1 -0
- package/lib/commonjs/overlay/getAnchoredOverlayPosition.js +194 -0
- package/lib/commonjs/overlay/getAnchoredOverlayPosition.js.map +1 -0
- package/lib/commonjs/overlay/index.js +46 -0
- package/lib/commonjs/overlay/index.js.map +1 -1
- package/lib/commonjs/overlay/useAnchorPosition.js +71 -21
- package/lib/commonjs/overlay/useAnchorPosition.js.map +1 -1
- package/lib/commonjs/overlay/useAnchoredOverlay.js +121 -0
- package/lib/commonjs/overlay/useAnchoredOverlay.js.map +1 -0
- package/lib/commonjs/overlay/useDismissOverlay.js +8 -1
- package/lib/commonjs/overlay/useDismissOverlay.js.map +1 -1
- package/lib/commonjs/overlay/useDismissOverlay.web.js +21 -5
- package/lib/commonjs/overlay/useDismissOverlay.web.js.map +1 -1
- package/lib/commonjs/overlay/useEscapeKey.js +8 -1
- package/lib/commonjs/overlay/useEscapeKey.js.map +1 -1
- package/lib/commonjs/overlay/useEscapeKey.web.js +11 -3
- package/lib/commonjs/overlay/useEscapeKey.web.js.map +1 -1
- package/lib/commonjs/overlay/useOverlayPosition.js +21 -9
- package/lib/commonjs/overlay/useOverlayPosition.js.map +1 -1
- package/lib/commonjs/portal/portal.js +111 -31
- package/lib/commonjs/portal/portal.js.map +1 -1
- package/lib/commonjs/radio/RadioGroup.js +65 -16
- package/lib/commonjs/radio/RadioGroup.js.map +1 -1
- package/lib/commonjs/radio/RadioRoot.web.js +114 -26
- package/lib/commonjs/radio/RadioRoot.web.js.map +1 -1
- package/lib/commonjs/radio/context.js.map +1 -1
- package/lib/commonjs/radio/useRadioGroupNavigation.js +79 -0
- package/lib/commonjs/radio/useRadioGroupNavigation.js.map +1 -0
- package/lib/commonjs/radio/useRadioRoot.js +14 -13
- package/lib/commonjs/radio/useRadioRoot.js.map +1 -1
- package/lib/commonjs/range-calendar/RangeCalendarRoot.js +148 -0
- package/lib/commonjs/range-calendar/RangeCalendarRoot.js.map +1 -0
- package/lib/commonjs/range-calendar/context.js +17 -0
- package/lib/commonjs/range-calendar/context.js.map +1 -0
- package/lib/commonjs/range-calendar/index.js +20 -0
- package/lib/commonjs/range-calendar/index.js.map +1 -0
- package/lib/commonjs/select/SelectContent.js +27 -11
- package/lib/commonjs/select/SelectContent.js.map +1 -1
- package/lib/commonjs/select/SelectRoot.js +1 -1
- package/lib/commonjs/select/SelectRoot.js.map +1 -1
- package/lib/commonjs/select/SelectTrigger.web.js +8 -12
- package/lib/commonjs/select/SelectTrigger.web.js.map +1 -1
- package/lib/commonjs/select/useListboxNavigation.js +10 -11
- package/lib/commonjs/select/useListboxNavigation.js.map +1 -1
- package/lib/commonjs/slider/SliderRail.js +157 -0
- package/lib/commonjs/slider/SliderRail.js.map +1 -0
- package/lib/commonjs/slider/SliderRoot.js +244 -0
- package/lib/commonjs/slider/SliderRoot.js.map +1 -0
- package/lib/commonjs/slider/SliderThumb.js +342 -0
- package/lib/commonjs/slider/SliderThumb.js.map +1 -0
- package/lib/commonjs/slider/context.js +14 -0
- package/lib/commonjs/slider/context.js.map +1 -0
- package/lib/commonjs/slider/index.js +101 -0
- package/lib/commonjs/slider/index.js.map +1 -0
- package/lib/commonjs/slider/types.js +6 -0
- package/lib/commonjs/slider/types.js.map +1 -0
- package/lib/commonjs/slider/useSliderPointer.js +116 -0
- package/lib/commonjs/slider/useSliderPointer.js.map +1 -0
- package/lib/commonjs/slider/utils.js +223 -0
- package/lib/commonjs/slider/utils.js.map +1 -0
- package/lib/commonjs/tabs/Tab.js +122 -0
- package/lib/commonjs/tabs/Tab.js.map +1 -0
- package/lib/commonjs/tabs/TabPanel.js +53 -0
- package/lib/commonjs/tabs/TabPanel.js.map +1 -0
- package/lib/commonjs/tabs/TabsList.js +58 -0
- package/lib/commonjs/tabs/TabsList.js.map +1 -0
- package/lib/commonjs/tabs/TabsRoot.js +79 -0
- package/lib/commonjs/tabs/TabsRoot.js.map +1 -0
- package/lib/commonjs/tabs/context.js +19 -0
- package/lib/commonjs/tabs/context.js.map +1 -0
- package/lib/commonjs/tabs/index.js +47 -0
- package/lib/commonjs/tabs/index.js.map +1 -0
- package/lib/commonjs/tabs/types.js +6 -0
- package/lib/commonjs/tabs/types.js.map +1 -0
- package/lib/commonjs/tabs/useTabsNavigation.js +84 -0
- package/lib/commonjs/tabs/useTabsNavigation.js.map +1 -0
- package/lib/commonjs/tooltip/TooltipContent.js +107 -0
- package/lib/commonjs/tooltip/TooltipContent.js.map +1 -0
- package/lib/commonjs/tooltip/TooltipRoot.js +128 -0
- package/lib/commonjs/tooltip/TooltipRoot.js.map +1 -0
- package/lib/commonjs/tooltip/TooltipTrigger.js +132 -0
- package/lib/commonjs/tooltip/TooltipTrigger.js.map +1 -0
- package/lib/commonjs/tooltip/context.js +11 -0
- package/lib/commonjs/tooltip/context.js.map +1 -0
- package/lib/commonjs/tooltip/getTooltipPosition.js +77 -0
- package/lib/commonjs/tooltip/getTooltipPosition.js.map +1 -0
- package/lib/commonjs/tooltip/index.js +53 -0
- package/lib/commonjs/tooltip/index.js.map +1 -0
- package/lib/commonjs/tooltip/types.js +6 -0
- package/lib/commonjs/tooltip/types.js.map +1 -0
- package/lib/commonjs/utils/accessibleLabel.js +23 -0
- package/lib/commonjs/utils/accessibleLabel.js.map +1 -0
- package/lib/commonjs/utils/assignRef.js +16 -0
- package/lib/commonjs/utils/assignRef.js.map +1 -0
- package/lib/commonjs/utils/createPortal.js +3 -1
- package/lib/commonjs/utils/createPortal.js.map +1 -1
- package/lib/commonjs/utils/createPortal.web.js +21 -0
- package/lib/commonjs/utils/createPortal.web.js.map +1 -0
- package/lib/commonjs/utils/domDataAttributes.js +7 -2
- package/lib/commonjs/utils/domDataAttributes.js.map +1 -1
- package/lib/commonjs/utils/mapViewPropsToDom.js +48 -0
- package/lib/commonjs/utils/mapViewPropsToDom.js.map +1 -0
- package/lib/module/accordion/Accordion.js +61 -0
- package/lib/module/accordion/Accordion.js.map +1 -0
- package/lib/module/accordion/AccordionContent.js +69 -0
- package/lib/module/accordion/AccordionContent.js.map +1 -0
- package/lib/module/accordion/AccordionItem.js +65 -0
- package/lib/module/accordion/AccordionItem.js.map +1 -0
- package/lib/module/accordion/AccordionTrigger.js +98 -0
- package/lib/module/accordion/AccordionTrigger.js.map +1 -0
- package/lib/module/accordion/context.js +6 -0
- package/lib/module/accordion/context.js.map +1 -0
- package/lib/module/accordion/index.js +8 -0
- package/lib/module/accordion/index.js.map +1 -0
- package/lib/module/accordion/types.js +4 -0
- package/lib/module/accordion/types.js.map +1 -0
- package/lib/module/accordion/utils.js +19 -0
- package/lib/module/accordion/utils.js.map +1 -0
- package/lib/module/breadcrumbs/BreadcrumbsRoot.js +46 -0
- package/lib/module/breadcrumbs/BreadcrumbsRoot.js.map +1 -0
- package/lib/module/breadcrumbs/context.js +5 -0
- package/lib/module/breadcrumbs/context.js.map +1 -0
- package/lib/module/breadcrumbs/index.js +6 -0
- package/lib/module/breadcrumbs/index.js.map +1 -0
- package/lib/module/breadcrumbs/types.js +4 -0
- package/lib/module/breadcrumbs/types.js.map +1 -0
- package/lib/module/button/ButtonRoot.js +38 -2
- package/lib/module/button/ButtonRoot.js.map +1 -1
- package/lib/module/calendar/CalendarGrid.js +29 -0
- package/lib/module/calendar/CalendarGrid.js.map +1 -0
- package/lib/module/calendar/CalendarRoot.js +91 -0
- package/lib/module/calendar/CalendarRoot.js.map +1 -0
- package/lib/module/calendar/context.js +12 -0
- package/lib/module/calendar/context.js.map +1 -0
- package/lib/module/calendar/index.js +6 -0
- package/lib/module/calendar/index.js.map +1 -0
- package/lib/module/calendar/types.js +4 -0
- package/lib/module/calendar/types.js.map +1 -0
- package/lib/module/checkbox/CheckboxGroup.js +16 -3
- package/lib/module/checkbox/CheckboxGroup.js.map +1 -1
- package/lib/module/checkbox/CheckboxRoot.js +1 -1
- package/lib/module/checkbox/CheckboxRoot.js.map +1 -1
- package/lib/module/checkbox/CheckboxRoot.web.js +92 -29
- package/lib/module/checkbox/CheckboxRoot.web.js.map +1 -1
- package/lib/module/checkbox/useCheckboxRoot.js +43 -22
- package/lib/module/checkbox/useCheckboxRoot.js.map +1 -1
- package/lib/module/chip/ChipRoot.js +4 -2
- package/lib/module/chip/ChipRoot.js.map +1 -1
- package/lib/module/date-field/DateFieldHiddenInput.js +146 -0
- package/lib/module/date-field/DateFieldHiddenInput.js.map +1 -0
- package/lib/module/date-field/DateFieldInput.js +118 -0
- package/lib/module/date-field/DateFieldInput.js.map +1 -0
- package/lib/module/date-field/DateFieldRoot.js +81 -0
- package/lib/module/date-field/DateFieldRoot.js.map +1 -0
- package/lib/module/date-field/DateFieldSegment.js +88 -0
- package/lib/module/date-field/DateFieldSegment.js.map +1 -0
- package/lib/module/date-field/context.js +15 -0
- package/lib/module/date-field/context.js.map +1 -0
- package/lib/module/date-field/index.js +7 -0
- package/lib/module/date-field/index.js.map +1 -0
- package/lib/module/date-field/segmentIndex.js +18 -0
- package/lib/module/date-field/segmentIndex.js.map +1 -0
- package/lib/module/date-field/segmentKeyboard.js +157 -0
- package/lib/module/date-field/segmentKeyboard.js.map +1 -0
- package/lib/module/date-field/types.js +4 -0
- package/lib/module/date-field/types.js.map +1 -0
- package/lib/module/date-field/useDateFieldSegmentState.js +378 -0
- package/lib/module/date-field/useDateFieldSegmentState.js.map +1 -0
- package/lib/module/date-field/useRangeDateFieldBridge.js +63 -0
- package/lib/module/date-field/useRangeDateFieldBridge.js.map +1 -0
- package/lib/module/date-picker/DatePickerRoot.js +119 -0
- package/lib/module/date-picker/DatePickerRoot.js.map +1 -0
- package/lib/module/date-picker/context.js +12 -0
- package/lib/module/date-picker/context.js.map +1 -0
- package/lib/module/date-picker/index.js +5 -0
- package/lib/module/date-picker/index.js.map +1 -0
- package/lib/module/date-range-picker/DateRangePickerRoot.js +140 -0
- package/lib/module/date-range-picker/DateRangePickerRoot.js.map +1 -0
- package/lib/module/date-range-picker/context.js +19 -0
- package/lib/module/date-range-picker/context.js.map +1 -0
- package/lib/module/date-range-picker/index.js +5 -0
- package/lib/module/date-range-picker/index.js.map +1 -0
- package/lib/module/date-time-field/DateTimeFieldHiddenInput.js +148 -0
- package/lib/module/date-time-field/DateTimeFieldHiddenInput.js.map +1 -0
- package/lib/module/date-time-field/DateTimeFieldInput.js +100 -0
- package/lib/module/date-time-field/DateTimeFieldInput.js.map +1 -0
- package/lib/module/date-time-field/DateTimeFieldRoot.js +154 -0
- package/lib/module/date-time-field/DateTimeFieldRoot.js.map +1 -0
- package/lib/module/date-time-field/DateTimeFieldSegment.js +83 -0
- package/lib/module/date-time-field/DateTimeFieldSegment.js.map +1 -0
- package/lib/module/date-time-field/context.js +12 -0
- package/lib/module/date-time-field/context.js.map +1 -0
- package/lib/module/date-time-field/index.js +7 -0
- package/lib/module/date-time-field/index.js.map +1 -0
- package/lib/module/date-time-field/useDateTimeFieldSegmentState.js +561 -0
- package/lib/module/date-time-field/useDateTimeFieldSegmentState.js.map +1 -0
- package/lib/module/date-time-list/DateTimeListRoot.js +416 -0
- package/lib/module/date-time-list/DateTimeListRoot.js.map +1 -0
- package/lib/module/date-time-list/context.js +20 -0
- package/lib/module/date-time-list/context.js.map +1 -0
- package/lib/module/date-time-list/index.js +5 -0
- package/lib/module/date-time-list/index.js.map +1 -0
- package/lib/module/date-time-picker/DateTimePickerRoot.js +130 -0
- package/lib/module/date-time-picker/DateTimePickerRoot.js.map +1 -0
- package/lib/module/date-time-picker/context.js +12 -0
- package/lib/module/date-time-picker/context.js.map +1 -0
- package/lib/module/date-time-picker/index.js +5 -0
- package/lib/module/date-time-picker/index.js.map +1 -0
- package/lib/module/dialog/DialogContent.js +90 -0
- package/lib/module/dialog/DialogContent.js.map +1 -0
- package/lib/module/dialog/DialogOverlay.js +50 -0
- package/lib/module/dialog/DialogOverlay.js.map +1 -0
- package/lib/module/dialog/DialogPopup.js +8 -3
- package/lib/module/dialog/DialogPopup.js.map +1 -1
- package/lib/module/dialog/DialogPortal.js +33 -0
- package/lib/module/dialog/DialogPortal.js.map +1 -0
- package/lib/module/dialog/DialogRoot.js +1 -1
- package/lib/module/dialog/DialogRoot.js.map +1 -1
- package/lib/module/dialog/index.js +3 -0
- package/lib/module/dialog/index.js.map +1 -1
- package/lib/module/form/FormRoot.web.js +7 -2
- package/lib/module/form/FormRoot.web.js.map +1 -1
- package/lib/module/index.js +20 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/menu/MenuCheckboxItem.js +38 -0
- package/lib/module/menu/MenuCheckboxItem.js.map +1 -0
- package/lib/module/menu/MenuItem.js +138 -0
- package/lib/module/menu/MenuItem.js.map +1 -0
- package/lib/module/menu/MenuOverlayRoot.js +76 -0
- package/lib/module/menu/MenuOverlayRoot.js.map +1 -0
- package/lib/module/menu/MenuPopup.js +74 -0
- package/lib/module/menu/MenuPopup.js.map +1 -0
- package/lib/module/menu/MenuRadioGroup.js +44 -0
- package/lib/module/menu/MenuRadioGroup.js.map +1 -0
- package/lib/module/menu/MenuRadioItem.js +28 -0
- package/lib/module/menu/MenuRadioItem.js.map +1 -0
- package/lib/module/menu/MenuRoot.js +135 -0
- package/lib/module/menu/MenuRoot.js.map +1 -0
- package/lib/module/menu/MenuTrigger.js +55 -0
- package/lib/module/menu/MenuTrigger.js.map +1 -0
- package/lib/module/menu/context.js +27 -0
- package/lib/module/menu/context.js.map +1 -0
- package/lib/module/menu/index.js +13 -0
- package/lib/module/menu/index.js.map +1 -0
- package/lib/module/menu/overlayContext.js +24 -0
- package/lib/module/menu/overlayContext.js.map +1 -0
- package/lib/module/menu/types.js +4 -0
- package/lib/module/menu/types.js.map +1 -0
- package/lib/module/menu/useMenuNavigation.js +84 -0
- package/lib/module/menu/useMenuNavigation.js.map +1 -0
- package/lib/module/menu/useMenuOverlayLifecycle.js +63 -0
- package/lib/module/menu/useMenuOverlayLifecycle.js.map +1 -0
- package/lib/module/menu/useMenuTrigger.js +111 -0
- package/lib/module/menu/useMenuTrigger.js.map +1 -0
- package/lib/module/month-calendar/MonthCalendarCell.js +60 -0
- package/lib/module/month-calendar/MonthCalendarCell.js.map +1 -0
- package/lib/module/month-calendar/MonthCalendarRoot.js +99 -0
- package/lib/module/month-calendar/MonthCalendarRoot.js.map +1 -0
- package/lib/module/month-calendar/MonthCalendarYearCell.js +59 -0
- package/lib/module/month-calendar/MonthCalendarYearCell.js.map +1 -0
- package/lib/module/month-calendar/context.js +12 -0
- package/lib/module/month-calendar/context.js.map +1 -0
- package/lib/module/month-calendar/index.js +7 -0
- package/lib/module/month-calendar/index.js.map +1 -0
- package/lib/module/month-picker/MonthPickerRoot.js +114 -0
- package/lib/module/month-picker/MonthPickerRoot.js.map +1 -0
- package/lib/module/month-picker/context.js +12 -0
- package/lib/module/month-picker/context.js.map +1 -0
- package/lib/module/month-picker/index.js +5 -0
- package/lib/module/month-picker/index.js.map +1 -0
- package/lib/module/overlay/OverlayContainer.js +5 -5
- package/lib/module/overlay/OverlayContainer.js.map +1 -1
- package/lib/module/overlay/OverlayStack.js +119 -0
- package/lib/module/overlay/OverlayStack.js.map +1 -0
- package/lib/module/overlay/constants.js +14 -0
- package/lib/module/overlay/constants.js.map +1 -0
- package/lib/module/overlay/getAnchoredOverlayPosition.js +189 -0
- package/lib/module/overlay/getAnchoredOverlayPosition.js.map +1 -0
- package/lib/module/overlay/index.js +4 -0
- package/lib/module/overlay/index.js.map +1 -1
- package/lib/module/overlay/useAnchorPosition.js +71 -21
- package/lib/module/overlay/useAnchorPosition.js.map +1 -1
- package/lib/module/overlay/useAnchoredOverlay.js +117 -0
- package/lib/module/overlay/useAnchoredOverlay.js.map +1 -0
- package/lib/module/overlay/useDismissOverlay.js +9 -1
- package/lib/module/overlay/useDismissOverlay.js.map +1 -1
- package/lib/module/overlay/useDismissOverlay.web.js +20 -5
- package/lib/module/overlay/useDismissOverlay.web.js.map +1 -1
- package/lib/module/overlay/useEscapeKey.js +9 -1
- package/lib/module/overlay/useEscapeKey.js.map +1 -1
- package/lib/module/overlay/useEscapeKey.web.js +11 -3
- package/lib/module/overlay/useEscapeKey.web.js.map +1 -1
- package/lib/module/overlay/useOverlayPosition.js +21 -9
- package/lib/module/overlay/useOverlayPosition.js.map +1 -1
- package/lib/module/portal/portal.js +111 -32
- package/lib/module/portal/portal.js.map +1 -1
- package/lib/module/radio/RadioGroup.js +68 -19
- package/lib/module/radio/RadioGroup.js.map +1 -1
- package/lib/module/radio/RadioRoot.web.js +117 -29
- package/lib/module/radio/RadioRoot.web.js.map +1 -1
- package/lib/module/radio/context.js.map +1 -1
- package/lib/module/radio/useRadioGroupNavigation.js +74 -0
- package/lib/module/radio/useRadioGroupNavigation.js.map +1 -0
- package/lib/module/radio/useRadioRoot.js +14 -13
- package/lib/module/radio/useRadioRoot.js.map +1 -1
- package/lib/module/range-calendar/RangeCalendarRoot.js +144 -0
- package/lib/module/range-calendar/RangeCalendarRoot.js.map +1 -0
- package/lib/module/range-calendar/context.js +12 -0
- package/lib/module/range-calendar/context.js.map +1 -0
- package/lib/module/range-calendar/index.js +5 -0
- package/lib/module/range-calendar/index.js.map +1 -0
- package/lib/module/select/SelectContent.js +29 -13
- package/lib/module/select/SelectContent.js.map +1 -1
- package/lib/module/select/SelectRoot.js +1 -1
- package/lib/module/select/SelectRoot.js.map +1 -1
- package/lib/module/select/SelectTrigger.web.js +9 -13
- package/lib/module/select/SelectTrigger.web.js.map +1 -1
- package/lib/module/select/useListboxNavigation.js +10 -11
- package/lib/module/select/useListboxNavigation.js.map +1 -1
- package/lib/module/slider/SliderRail.js +153 -0
- package/lib/module/slider/SliderRail.js.map +1 -0
- package/lib/module/slider/SliderRoot.js +240 -0
- package/lib/module/slider/SliderRoot.js.map +1 -0
- package/lib/module/slider/SliderThumb.js +338 -0
- package/lib/module/slider/SliderThumb.js.map +1 -0
- package/lib/module/slider/context.js +6 -0
- package/lib/module/slider/context.js.map +1 -0
- package/lib/module/slider/index.js +8 -0
- package/lib/module/slider/index.js.map +1 -0
- package/lib/module/slider/types.js +4 -0
- package/lib/module/slider/types.js.map +1 -0
- package/lib/module/slider/useSliderPointer.js +110 -0
- package/lib/module/slider/useSliderPointer.js.map +1 -0
- package/lib/module/slider/utils.js +201 -0
- package/lib/module/slider/utils.js.map +1 -0
- package/lib/module/tabs/Tab.js +118 -0
- package/lib/module/tabs/Tab.js.map +1 -0
- package/lib/module/tabs/TabPanel.js +49 -0
- package/lib/module/tabs/TabPanel.js.map +1 -0
- package/lib/module/tabs/TabsList.js +54 -0
- package/lib/module/tabs/TabsList.js.map +1 -0
- package/lib/module/tabs/TabsRoot.js +75 -0
- package/lib/module/tabs/TabsRoot.js.map +1 -0
- package/lib/module/tabs/context.js +11 -0
- package/lib/module/tabs/context.js.map +1 -0
- package/lib/module/tabs/index.js +8 -0
- package/lib/module/tabs/index.js.map +1 -0
- package/lib/module/tabs/types.js +4 -0
- package/lib/module/tabs/types.js.map +1 -0
- package/lib/module/tabs/useTabsNavigation.js +81 -0
- package/lib/module/tabs/useTabsNavigation.js.map +1 -0
- package/lib/module/tooltip/TooltipContent.js +103 -0
- package/lib/module/tooltip/TooltipContent.js.map +1 -0
- package/lib/module/tooltip/TooltipRoot.js +124 -0
- package/lib/module/tooltip/TooltipRoot.js.map +1 -0
- package/lib/module/tooltip/TooltipTrigger.js +128 -0
- package/lib/module/tooltip/TooltipTrigger.js.map +1 -0
- package/lib/module/tooltip/context.js +5 -0
- package/lib/module/tooltip/context.js.map +1 -0
- package/lib/module/tooltip/getTooltipPosition.js +72 -0
- package/lib/module/tooltip/getTooltipPosition.js.map +1 -0
- package/lib/module/tooltip/index.js +8 -0
- package/lib/module/tooltip/index.js.map +1 -0
- package/lib/module/tooltip/types.js +4 -0
- package/lib/module/tooltip/types.js.map +1 -0
- package/lib/module/utils/accessibleLabel.js +18 -0
- package/lib/module/utils/accessibleLabel.js.map +1 -0
- package/lib/module/utils/assignRef.js +12 -0
- package/lib/module/utils/assignRef.js.map +1 -0
- package/lib/module/utils/createPortal.js +3 -1
- package/lib/module/utils/createPortal.js.map +1 -1
- package/lib/module/utils/createPortal.web.js +17 -0
- package/lib/module/utils/createPortal.web.js.map +1 -0
- package/lib/module/utils/domDataAttributes.js +7 -2
- package/lib/module/utils/domDataAttributes.js.map +1 -1
- package/lib/module/utils/mapViewPropsToDom.js +44 -0
- package/lib/module/utils/mapViewPropsToDom.js.map +1 -0
- package/lib/typescript/accordion/Accordion.d.ts +8 -0
- package/lib/typescript/accordion/Accordion.d.ts.map +1 -0
- package/lib/typescript/accordion/AccordionContent.d.ts +8 -0
- package/lib/typescript/accordion/AccordionContent.d.ts.map +1 -0
- package/lib/typescript/accordion/AccordionItem.d.ts +8 -0
- package/lib/typescript/accordion/AccordionItem.d.ts.map +1 -0
- package/lib/typescript/accordion/AccordionTrigger.d.ts +6 -0
- package/lib/typescript/accordion/AccordionTrigger.d.ts.map +1 -0
- package/lib/typescript/accordion/context.d.ts +10 -0
- package/lib/typescript/accordion/context.d.ts.map +1 -0
- package/lib/typescript/accordion/index.d.ts +7 -0
- package/lib/typescript/accordion/index.d.ts.map +1 -0
- package/lib/typescript/accordion/types.d.ts +62 -0
- package/lib/typescript/accordion/types.d.ts.map +1 -0
- package/lib/typescript/accordion/utils.d.ts +4 -0
- package/lib/typescript/accordion/utils.d.ts.map +1 -0
- package/lib/typescript/breadcrumbs/BreadcrumbsRoot.d.ts +7 -0
- package/lib/typescript/breadcrumbs/BreadcrumbsRoot.d.ts.map +1 -0
- package/lib/typescript/breadcrumbs/context.d.ts +6 -0
- package/lib/typescript/breadcrumbs/context.d.ts.map +1 -0
- package/lib/typescript/breadcrumbs/index.d.ts +4 -0
- package/lib/typescript/breadcrumbs/index.d.ts.map +1 -0
- package/lib/typescript/breadcrumbs/types.d.ts +21 -0
- package/lib/typescript/breadcrumbs/types.d.ts.map +1 -0
- package/lib/typescript/button/ButtonRoot.d.ts.map +1 -1
- package/lib/typescript/button/types.d.ts +4 -0
- package/lib/typescript/button/types.d.ts.map +1 -1
- package/lib/typescript/calendar/CalendarGrid.d.ts +7 -0
- package/lib/typescript/calendar/CalendarGrid.d.ts.map +1 -0
- package/lib/typescript/calendar/CalendarRoot.d.ts +10 -0
- package/lib/typescript/calendar/CalendarRoot.d.ts.map +1 -0
- package/lib/typescript/calendar/context.d.ts +18 -0
- package/lib/typescript/calendar/context.d.ts.map +1 -0
- package/lib/typescript/calendar/index.d.ts +5 -0
- package/lib/typescript/calendar/index.d.ts.map +1 -0
- package/lib/typescript/calendar/types.d.ts +29 -0
- package/lib/typescript/calendar/types.d.ts.map +1 -0
- package/lib/typescript/checkbox/CheckboxGroup.d.ts.map +1 -1
- package/lib/typescript/checkbox/CheckboxRoot.web.d.ts +8 -0
- package/lib/typescript/checkbox/CheckboxRoot.web.d.ts.map +1 -1
- package/lib/typescript/checkbox/types.d.ts +1 -0
- package/lib/typescript/checkbox/types.d.ts.map +1 -1
- package/lib/typescript/checkbox/useCheckboxRoot.d.ts +7 -18
- package/lib/typescript/checkbox/useCheckboxRoot.d.ts.map +1 -1
- package/lib/typescript/chip/ChipRoot.d.ts.map +1 -1
- package/lib/typescript/date-field/DateFieldHiddenInput.d.ts +4 -0
- package/lib/typescript/date-field/DateFieldHiddenInput.d.ts.map +1 -0
- package/lib/typescript/date-field/DateFieldInput.d.ts +8 -0
- package/lib/typescript/date-field/DateFieldInput.d.ts.map +1 -0
- package/lib/typescript/date-field/DateFieldRoot.d.ts +10 -0
- package/lib/typescript/date-field/DateFieldRoot.d.ts.map +1 -0
- package/lib/typescript/date-field/DateFieldSegment.d.ts +9 -0
- package/lib/typescript/date-field/DateFieldSegment.d.ts.map +1 -0
- package/lib/typescript/date-field/context.d.ts +33 -0
- package/lib/typescript/date-field/context.d.ts.map +1 -0
- package/lib/typescript/date-field/index.d.ts +9 -0
- package/lib/typescript/date-field/index.d.ts.map +1 -0
- package/lib/typescript/date-field/segmentIndex.d.ts +7 -0
- package/lib/typescript/date-field/segmentIndex.d.ts.map +1 -0
- package/lib/typescript/date-field/segmentKeyboard.d.ts +23 -0
- package/lib/typescript/date-field/segmentKeyboard.d.ts.map +1 -0
- package/lib/typescript/date-field/types.d.ts +38 -0
- package/lib/typescript/date-field/types.d.ts.map +1 -0
- package/lib/typescript/date-field/useDateFieldSegmentState.d.ts +26 -0
- package/lib/typescript/date-field/useDateFieldSegmentState.d.ts.map +1 -0
- package/lib/typescript/date-field/useRangeDateFieldBridge.d.ts +4 -0
- package/lib/typescript/date-field/useRangeDateFieldBridge.d.ts.map +1 -0
- package/lib/typescript/date-picker/DatePickerRoot.d.ts +28 -0
- package/lib/typescript/date-picker/DatePickerRoot.d.ts.map +1 -0
- package/lib/typescript/date-picker/context.d.ts +25 -0
- package/lib/typescript/date-picker/context.d.ts.map +1 -0
- package/lib/typescript/date-picker/index.d.ts +5 -0
- package/lib/typescript/date-picker/index.d.ts.map +1 -0
- package/lib/typescript/date-range-picker/DateRangePickerRoot.d.ts +43 -0
- package/lib/typescript/date-range-picker/DateRangePickerRoot.d.ts.map +1 -0
- package/lib/typescript/date-range-picker/context.d.ts +42 -0
- package/lib/typescript/date-range-picker/context.d.ts.map +1 -0
- package/lib/typescript/date-range-picker/index.d.ts +4 -0
- package/lib/typescript/date-range-picker/index.d.ts.map +1 -0
- package/lib/typescript/date-time-field/DateTimeFieldHiddenInput.d.ts +4 -0
- package/lib/typescript/date-time-field/DateTimeFieldHiddenInput.d.ts.map +1 -0
- package/lib/typescript/date-time-field/DateTimeFieldInput.d.ts +10 -0
- package/lib/typescript/date-time-field/DateTimeFieldInput.d.ts.map +1 -0
- package/lib/typescript/date-time-field/DateTimeFieldRoot.d.ts +24 -0
- package/lib/typescript/date-time-field/DateTimeFieldRoot.d.ts.map +1 -0
- package/lib/typescript/date-time-field/DateTimeFieldSegment.d.ts +10 -0
- package/lib/typescript/date-time-field/DateTimeFieldSegment.d.ts.map +1 -0
- package/lib/typescript/date-time-field/context.d.ts +27 -0
- package/lib/typescript/date-time-field/context.d.ts.map +1 -0
- package/lib/typescript/date-time-field/index.d.ts +8 -0
- package/lib/typescript/date-time-field/index.d.ts.map +1 -0
- package/lib/typescript/date-time-field/useDateTimeFieldSegmentState.d.ts +26 -0
- package/lib/typescript/date-time-field/useDateTimeFieldSegmentState.d.ts.map +1 -0
- package/lib/typescript/date-time-list/DateTimeListRoot.d.ts +42 -0
- package/lib/typescript/date-time-list/DateTimeListRoot.d.ts.map +1 -0
- package/lib/typescript/date-time-list/context.d.ts +29 -0
- package/lib/typescript/date-time-list/context.d.ts.map +1 -0
- package/lib/typescript/date-time-list/index.d.ts +4 -0
- package/lib/typescript/date-time-list/index.d.ts.map +1 -0
- package/lib/typescript/date-time-picker/DateTimePickerRoot.d.ts +36 -0
- package/lib/typescript/date-time-picker/DateTimePickerRoot.d.ts.map +1 -0
- package/lib/typescript/date-time-picker/context.d.ts +25 -0
- package/lib/typescript/date-time-picker/context.d.ts.map +1 -0
- package/lib/typescript/date-time-picker/index.d.ts +4 -0
- package/lib/typescript/date-time-picker/index.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogContent.d.ts +16 -0
- package/lib/typescript/dialog/DialogContent.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogOverlay.d.ts +11 -0
- package/lib/typescript/dialog/DialogOverlay.d.ts.map +1 -0
- package/lib/typescript/dialog/DialogPopup.d.ts.map +1 -1
- package/lib/typescript/dialog/DialogPortal.d.ts +16 -0
- package/lib/typescript/dialog/DialogPortal.d.ts.map +1 -0
- package/lib/typescript/dialog/index.d.ts +4 -1
- package/lib/typescript/dialog/index.d.ts.map +1 -1
- package/lib/typescript/dialog/types.d.ts +31 -1
- package/lib/typescript/dialog/types.d.ts.map +1 -1
- package/lib/typescript/form/FormRoot.web.d.ts +2 -0
- package/lib/typescript/form/FormRoot.web.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +20 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/input/types.d.ts +8 -2
- package/lib/typescript/input/types.d.ts.map +1 -1
- package/lib/typescript/link/types.d.ts +20 -0
- package/lib/typescript/link/types.d.ts.map +1 -1
- package/lib/typescript/menu/MenuCheckboxItem.d.ts +6 -0
- package/lib/typescript/menu/MenuCheckboxItem.d.ts.map +1 -0
- package/lib/typescript/menu/MenuItem.d.ts +8 -0
- package/lib/typescript/menu/MenuItem.d.ts.map +1 -0
- package/lib/typescript/menu/MenuOverlayRoot.d.ts +8 -0
- package/lib/typescript/menu/MenuOverlayRoot.d.ts.map +1 -0
- package/lib/typescript/menu/MenuPopup.d.ts +8 -0
- package/lib/typescript/menu/MenuPopup.d.ts.map +1 -0
- package/lib/typescript/menu/MenuRadioGroup.d.ts +8 -0
- package/lib/typescript/menu/MenuRadioGroup.d.ts.map +1 -0
- package/lib/typescript/menu/MenuRadioItem.d.ts +6 -0
- package/lib/typescript/menu/MenuRadioItem.d.ts.map +1 -0
- package/lib/typescript/menu/MenuRoot.d.ts +8 -0
- package/lib/typescript/menu/MenuRoot.d.ts.map +1 -0
- package/lib/typescript/menu/MenuTrigger.d.ts +7 -0
- package/lib/typescript/menu/MenuTrigger.d.ts.map +1 -0
- package/lib/typescript/menu/context.d.ts +15 -0
- package/lib/typescript/menu/context.d.ts.map +1 -0
- package/lib/typescript/menu/index.d.ts +12 -0
- package/lib/typescript/menu/index.d.ts.map +1 -0
- package/lib/typescript/menu/overlayContext.d.ts +35 -0
- package/lib/typescript/menu/overlayContext.d.ts.map +1 -0
- package/lib/typescript/menu/types.d.ts +104 -0
- package/lib/typescript/menu/types.d.ts.map +1 -0
- package/lib/typescript/menu/useMenuNavigation.d.ts +16 -0
- package/lib/typescript/menu/useMenuNavigation.d.ts.map +1 -0
- package/lib/typescript/menu/useMenuOverlayLifecycle.d.ts +15 -0
- package/lib/typescript/menu/useMenuOverlayLifecycle.d.ts.map +1 -0
- package/lib/typescript/menu/useMenuTrigger.d.ts +35 -0
- package/lib/typescript/menu/useMenuTrigger.d.ts.map +1 -0
- package/lib/typescript/month-calendar/MonthCalendarCell.d.ts +9 -0
- package/lib/typescript/month-calendar/MonthCalendarCell.d.ts.map +1 -0
- package/lib/typescript/month-calendar/MonthCalendarRoot.d.ts +30 -0
- package/lib/typescript/month-calendar/MonthCalendarRoot.d.ts.map +1 -0
- package/lib/typescript/month-calendar/MonthCalendarYearCell.d.ts +9 -0
- package/lib/typescript/month-calendar/MonthCalendarYearCell.d.ts.map +1 -0
- package/lib/typescript/month-calendar/context.d.ts +20 -0
- package/lib/typescript/month-calendar/context.d.ts.map +1 -0
- package/lib/typescript/month-calendar/index.d.ts +7 -0
- package/lib/typescript/month-calendar/index.d.ts.map +1 -0
- package/lib/typescript/month-picker/MonthPickerRoot.d.ts +29 -0
- package/lib/typescript/month-picker/MonthPickerRoot.d.ts.map +1 -0
- package/lib/typescript/month-picker/context.d.ts +23 -0
- package/lib/typescript/month-picker/context.d.ts.map +1 -0
- package/lib/typescript/month-picker/index.d.ts +4 -0
- package/lib/typescript/month-picker/index.d.ts.map +1 -0
- package/lib/typescript/overlay/OverlayContainer.d.ts +1 -1
- package/lib/typescript/overlay/OverlayContainer.d.ts.map +1 -1
- package/lib/typescript/overlay/OverlayStack.d.ts +46 -0
- package/lib/typescript/overlay/OverlayStack.d.ts.map +1 -0
- package/lib/typescript/overlay/constants.d.ts +11 -0
- package/lib/typescript/overlay/constants.d.ts.map +1 -0
- package/lib/typescript/overlay/getAnchoredOverlayPosition.d.ts +45 -0
- package/lib/typescript/overlay/getAnchoredOverlayPosition.d.ts.map +1 -0
- package/lib/typescript/overlay/index.d.ts +5 -1
- package/lib/typescript/overlay/index.d.ts.map +1 -1
- package/lib/typescript/overlay/useAnchorPosition.d.ts +7 -1
- package/lib/typescript/overlay/useAnchorPosition.d.ts.map +1 -1
- package/lib/typescript/overlay/useAnchoredOverlay.d.ts +15 -0
- package/lib/typescript/overlay/useAnchoredOverlay.d.ts.map +1 -0
- package/lib/typescript/overlay/useDismissOverlay.d.ts +2 -1
- package/lib/typescript/overlay/useDismissOverlay.d.ts.map +1 -1
- package/lib/typescript/overlay/useDismissOverlay.web.d.ts +2 -1
- package/lib/typescript/overlay/useDismissOverlay.web.d.ts.map +1 -1
- package/lib/typescript/overlay/useEscapeKey.d.ts +2 -1
- package/lib/typescript/overlay/useEscapeKey.d.ts.map +1 -1
- package/lib/typescript/overlay/useEscapeKey.web.d.ts +2 -1
- package/lib/typescript/overlay/useEscapeKey.web.d.ts.map +1 -1
- package/lib/typescript/overlay/useOverlayPosition.d.ts +5 -1
- package/lib/typescript/overlay/useOverlayPosition.d.ts.map +1 -1
- package/lib/typescript/portal/portal.d.ts +3 -0
- package/lib/typescript/portal/portal.d.ts.map +1 -1
- package/lib/typescript/radio/RadioGroup.d.ts.map +1 -1
- package/lib/typescript/radio/RadioRoot.web.d.ts +8 -0
- package/lib/typescript/radio/RadioRoot.web.d.ts.map +1 -1
- package/lib/typescript/radio/context.d.ts +6 -1
- package/lib/typescript/radio/context.d.ts.map +1 -1
- package/lib/typescript/radio/types.d.ts +7 -0
- package/lib/typescript/radio/types.d.ts.map +1 -1
- package/lib/typescript/radio/useRadioGroupNavigation.d.ts +17 -0
- package/lib/typescript/radio/useRadioGroupNavigation.d.ts.map +1 -0
- package/lib/typescript/radio/useRadioRoot.d.ts +4 -18
- package/lib/typescript/radio/useRadioRoot.d.ts.map +1 -1
- package/lib/typescript/range-calendar/RangeCalendarRoot.d.ts +34 -0
- package/lib/typescript/range-calendar/RangeCalendarRoot.d.ts.map +1 -0
- package/lib/typescript/range-calendar/context.d.ts +26 -0
- package/lib/typescript/range-calendar/context.d.ts.map +1 -0
- package/lib/typescript/range-calendar/index.d.ts +5 -0
- package/lib/typescript/range-calendar/index.d.ts.map +1 -0
- package/lib/typescript/select/SelectContent.d.ts.map +1 -1
- package/lib/typescript/select/SelectTrigger.web.d.ts.map +1 -1
- package/lib/typescript/select/types.d.ts +16 -1
- package/lib/typescript/select/types.d.ts.map +1 -1
- package/lib/typescript/select/useListboxNavigation.d.ts.map +1 -1
- package/lib/typescript/slider/SliderRail.d.ts +6 -0
- package/lib/typescript/slider/SliderRail.d.ts.map +1 -0
- package/lib/typescript/slider/SliderRoot.d.ts +7 -0
- package/lib/typescript/slider/SliderRoot.d.ts.map +1 -0
- package/lib/typescript/slider/SliderThumb.d.ts +6 -0
- package/lib/typescript/slider/SliderThumb.d.ts.map +1 -0
- package/lib/typescript/slider/context.d.ts +81 -0
- package/lib/typescript/slider/context.d.ts.map +1 -0
- package/lib/typescript/slider/index.d.ts +8 -0
- package/lib/typescript/slider/index.d.ts.map +1 -0
- package/lib/typescript/slider/types.d.ts +73 -0
- package/lib/typescript/slider/types.d.ts.map +1 -0
- package/lib/typescript/slider/useSliderPointer.d.ts +23 -0
- package/lib/typescript/slider/useSliderPointer.d.ts.map +1 -0
- package/lib/typescript/slider/utils.d.ts +31 -0
- package/lib/typescript/slider/utils.d.ts.map +1 -0
- package/lib/typescript/tabs/Tab.d.ts +8 -0
- package/lib/typescript/tabs/Tab.d.ts.map +1 -0
- package/lib/typescript/tabs/TabPanel.d.ts +9 -0
- package/lib/typescript/tabs/TabPanel.d.ts.map +1 -0
- package/lib/typescript/tabs/TabsList.d.ts +8 -0
- package/lib/typescript/tabs/TabsList.d.ts.map +1 -0
- package/lib/typescript/tabs/TabsRoot.d.ts +8 -0
- package/lib/typescript/tabs/TabsRoot.d.ts.map +1 -0
- package/lib/typescript/tabs/context.d.ts +14 -0
- package/lib/typescript/tabs/context.d.ts.map +1 -0
- package/lib/typescript/tabs/index.d.ts +7 -0
- package/lib/typescript/tabs/index.d.ts.map +1 -0
- package/lib/typescript/tabs/types.d.ts +88 -0
- package/lib/typescript/tabs/types.d.ts.map +1 -0
- package/lib/typescript/tabs/useTabsNavigation.d.ts +14 -0
- package/lib/typescript/tabs/useTabsNavigation.d.ts.map +1 -0
- package/lib/typescript/tooltip/TooltipContent.d.ts +6 -0
- package/lib/typescript/tooltip/TooltipContent.d.ts.map +1 -0
- package/lib/typescript/tooltip/TooltipRoot.d.ts +7 -0
- package/lib/typescript/tooltip/TooltipRoot.d.ts.map +1 -0
- package/lib/typescript/tooltip/TooltipTrigger.d.ts +5 -0
- package/lib/typescript/tooltip/TooltipTrigger.d.ts.map +1 -0
- package/lib/typescript/tooltip/context.d.ts +6 -0
- package/lib/typescript/tooltip/context.d.ts.map +1 -0
- package/lib/typescript/tooltip/getTooltipPosition.d.ts +18 -0
- package/lib/typescript/tooltip/getTooltipPosition.d.ts.map +1 -0
- package/lib/typescript/tooltip/index.d.ts +7 -0
- package/lib/typescript/tooltip/index.d.ts.map +1 -0
- package/lib/typescript/tooltip/types.d.ts +78 -0
- package/lib/typescript/tooltip/types.d.ts.map +1 -0
- package/lib/typescript/utils/accessibleLabel.d.ts +13 -0
- package/lib/typescript/utils/accessibleLabel.d.ts.map +1 -0
- package/lib/typescript/utils/assignRef.d.ts +3 -0
- package/lib/typescript/utils/assignRef.d.ts.map +1 -0
- package/lib/typescript/utils/createPortal.d.ts.map +1 -1
- package/lib/typescript/utils/createPortal.web.d.ts +17 -0
- package/lib/typescript/utils/createPortal.web.d.ts.map +1 -0
- package/lib/typescript/utils/domDataAttributes.d.ts +3 -2
- package/lib/typescript/utils/domDataAttributes.d.ts.map +1 -1
- package/lib/typescript/utils/mapViewPropsToDom.d.ts +12 -0
- package/lib/typescript/utils/mapViewPropsToDom.d.ts.map +1 -0
- package/package.json +15 -6
- package/src/accordion/Accordion.tsx +96 -0
- package/src/accordion/AccordionContent.tsx +90 -0
- package/src/accordion/AccordionItem.tsx +76 -0
- package/src/accordion/AccordionTrigger.tsx +99 -0
- package/src/accordion/context.tsx +8 -0
- package/src/accordion/index.ts +23 -0
- package/src/accordion/types.ts +70 -0
- package/src/accordion/utils.ts +22 -0
- package/src/breadcrumbs/BreadcrumbsRoot.tsx +64 -0
- package/src/breadcrumbs/context.tsx +5 -0
- package/src/breadcrumbs/index.ts +8 -0
- package/src/breadcrumbs/types.ts +31 -0
- package/src/button/ButtonRoot.tsx +43 -3
- package/src/button/types.ts +4 -0
- package/src/calendar/CalendarGrid.tsx +29 -0
- package/src/calendar/CalendarRoot.tsx +138 -0
- package/src/calendar/context.tsx +28 -0
- package/src/calendar/index.ts +4 -0
- package/src/calendar/types.ts +30 -0
- package/src/checkbox/CheckboxGroup.tsx +23 -5
- package/src/checkbox/CheckboxRoot.tsx +1 -1
- package/src/checkbox/CheckboxRoot.web.tsx +105 -29
- package/src/checkbox/types.ts +1 -0
- package/src/checkbox/useCheckboxRoot.ts +45 -17
- package/src/chip/ChipRoot.tsx +2 -2
- package/src/date-field/DateFieldHiddenInput.tsx +152 -0
- package/src/date-field/DateFieldInput.tsx +138 -0
- package/src/date-field/DateFieldRoot.tsx +117 -0
- package/src/date-field/DateFieldSegment.tsx +97 -0
- package/src/date-field/context.tsx +48 -0
- package/src/date-field/index.ts +8 -0
- package/src/date-field/segmentIndex.tsx +17 -0
- package/src/date-field/segmentKeyboard.ts +207 -0
- package/src/date-field/types.ts +40 -0
- package/src/date-field/useDateFieldSegmentState.ts +455 -0
- package/src/date-field/useRangeDateFieldBridge.ts +78 -0
- package/src/date-picker/DatePickerRoot.tsx +186 -0
- package/src/date-picker/context.tsx +34 -0
- package/src/date-picker/index.ts +4 -0
- package/src/date-range-picker/DateRangePickerRoot.tsx +236 -0
- package/src/date-range-picker/context.tsx +48 -0
- package/src/date-range-picker/index.ts +8 -0
- package/src/date-time-field/DateTimeFieldHiddenInput.tsx +156 -0
- package/src/date-time-field/DateTimeFieldInput.tsx +119 -0
- package/src/date-time-field/DateTimeFieldRoot.tsx +209 -0
- package/src/date-time-field/DateTimeFieldSegment.tsx +95 -0
- package/src/date-time-field/context.tsx +41 -0
- package/src/date-time-field/index.ts +7 -0
- package/src/date-time-field/useDateTimeFieldSegmentState.ts +672 -0
- package/src/date-time-list/DateTimeListRoot.tsx +530 -0
- package/src/date-time-list/context.tsx +45 -0
- package/src/date-time-list/index.ts +16 -0
- package/src/date-time-picker/DateTimePickerRoot.tsx +210 -0
- package/src/date-time-picker/context.tsx +33 -0
- package/src/date-time-picker/index.ts +7 -0
- package/src/dialog/DialogContent.tsx +90 -0
- package/src/dialog/DialogOverlay.tsx +51 -0
- package/src/dialog/DialogPopup.tsx +8 -3
- package/src/dialog/DialogPortal.tsx +29 -0
- package/src/dialog/DialogRoot.tsx +1 -1
- package/src/dialog/index.tsx +6 -0
- package/src/dialog/types.ts +34 -1
- package/src/form/FormRoot.web.tsx +12 -6
- package/src/index.ts +53 -1
- package/src/input/types.ts +8 -2
- package/src/link/types.ts +20 -0
- package/src/menu/MenuCheckboxItem.tsx +51 -0
- package/src/menu/MenuItem.tsx +197 -0
- package/src/menu/MenuOverlayRoot.tsx +100 -0
- package/src/menu/MenuPopup.tsx +81 -0
- package/src/menu/MenuRadioGroup.tsx +48 -0
- package/src/menu/MenuRadioItem.tsx +32 -0
- package/src/menu/MenuRoot.tsx +190 -0
- package/src/menu/MenuTrigger.tsx +57 -0
- package/src/menu/context.tsx +38 -0
- package/src/menu/index.ts +36 -0
- package/src/menu/overlayContext.tsx +61 -0
- package/src/menu/types.ts +119 -0
- package/src/menu/useMenuNavigation.ts +102 -0
- package/src/menu/useMenuOverlayLifecycle.ts +77 -0
- package/src/menu/useMenuTrigger.ts +161 -0
- package/src/month-calendar/MonthCalendarCell.tsx +53 -0
- package/src/month-calendar/MonthCalendarRoot.tsx +153 -0
- package/src/month-calendar/MonthCalendarYearCell.tsx +54 -0
- package/src/month-calendar/context.tsx +30 -0
- package/src/month-calendar/index.ts +6 -0
- package/src/month-picker/MonthPickerRoot.tsx +183 -0
- package/src/month-picker/context.tsx +31 -0
- package/src/month-picker/index.ts +3 -0
- package/src/overlay/OverlayContainer.tsx +8 -3
- package/src/overlay/OverlayStack.tsx +202 -0
- package/src/overlay/constants.ts +11 -0
- package/src/overlay/getAnchoredOverlayPosition.ts +334 -0
- package/src/overlay/index.ts +29 -0
- package/src/overlay/useAnchorPosition.ts +93 -16
- package/src/overlay/useAnchoredOverlay.ts +150 -0
- package/src/overlay/useDismissOverlay.ts +10 -2
- package/src/overlay/useDismissOverlay.web.ts +19 -4
- package/src/overlay/useEscapeKey.ts +13 -1
- package/src/overlay/useEscapeKey.web.ts +13 -3
- package/src/overlay/useOverlayPosition.ts +40 -10
- package/src/portal/portal.tsx +148 -31
- package/src/radio/RadioGroup.tsx +84 -20
- package/src/radio/RadioRoot.web.tsx +136 -31
- package/src/radio/context.tsx +6 -1
- package/src/radio/types.ts +6 -0
- package/src/radio/useRadioGroupNavigation.ts +104 -0
- package/src/radio/useRadioRoot.ts +18 -11
- package/src/range-calendar/RangeCalendarRoot.tsx +213 -0
- package/src/range-calendar/context.tsx +33 -0
- package/src/range-calendar/index.ts +4 -0
- package/src/select/SelectContent.tsx +44 -17
- package/src/select/SelectRoot.tsx +1 -1
- package/src/select/SelectTrigger.web.tsx +16 -60
- package/src/select/types.ts +16 -1
- package/src/select/useListboxNavigation.ts +12 -9
- package/src/slider/SliderRail.tsx +191 -0
- package/src/slider/SliderRoot.tsx +385 -0
- package/src/slider/SliderThumb.tsx +420 -0
- package/src/slider/context.tsx +82 -0
- package/src/slider/index.ts +26 -0
- package/src/slider/types.ts +85 -0
- package/src/slider/useSliderPointer.ts +157 -0
- package/src/slider/utils.ts +257 -0
- package/src/tabs/Tab.tsx +158 -0
- package/src/tabs/TabPanel.tsx +52 -0
- package/src/tabs/TabsList.tsx +64 -0
- package/src/tabs/TabsRoot.tsx +115 -0
- package/src/tabs/context.tsx +10 -0
- package/src/tabs/index.ts +17 -0
- package/src/tabs/types.ts +93 -0
- package/src/tabs/useTabsNavigation.ts +97 -0
- package/src/tooltip/TooltipContent.tsx +117 -0
- package/src/tooltip/TooltipRoot.tsx +187 -0
- package/src/tooltip/TooltipTrigger.tsx +160 -0
- package/src/tooltip/context.tsx +5 -0
- package/src/tooltip/getTooltipPosition.ts +80 -0
- package/src/tooltip/index.ts +19 -0
- package/src/tooltip/types.ts +85 -0
- package/src/utils/accessibleLabel.ts +22 -0
- package/src/utils/assignRef.ts +11 -0
- package/src/utils/createPortal.ts +3 -1
- package/src/utils/createPortal.web.ts +18 -0
- package/src/utils/domDataAttributes.ts +9 -2
- package/src/utils/mapViewPropsToDom.ts +125 -0
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { Platform, View } from 'react-native';
|
|
5
|
+
import { composeEventHandlers, useControllableState } from '@cdx-ui/utils';
|
|
6
|
+
import { Slot } from '../slot';
|
|
7
|
+
import { dataAttributes } from '../utils/dataAttributes';
|
|
8
|
+
import { SliderProvider } from './context';
|
|
9
|
+
import { arraysEqual, clamp, denormalizeSliderValue, formatSliderValue, getClosestValueIndex, normalizeSliderValue, snapToStep, valueToPercent } from './utils';
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
+
function isArrayShape(value, defaultValue) {
|
|
12
|
+
return Array.isArray(value) || Array.isArray(defaultValue);
|
|
13
|
+
}
|
|
14
|
+
export const SliderRoot = /*#__PURE__*/forwardRef(({
|
|
15
|
+
asChild,
|
|
16
|
+
value: valueProp,
|
|
17
|
+
defaultValue,
|
|
18
|
+
onChange,
|
|
19
|
+
onChangeComplete,
|
|
20
|
+
min = 0,
|
|
21
|
+
max = 100,
|
|
22
|
+
step = 1,
|
|
23
|
+
isDisabled = false,
|
|
24
|
+
orientation = 'horizontal',
|
|
25
|
+
accessibilityLabel,
|
|
26
|
+
accessibilityValue: accessibilityValueProp,
|
|
27
|
+
children,
|
|
28
|
+
onLayout,
|
|
29
|
+
...props
|
|
30
|
+
}, ref) => {
|
|
31
|
+
const [trackLayout, setTrackLayoutState] = useState(null);
|
|
32
|
+
const [thumbSize, setThumbSizeState] = useState(20);
|
|
33
|
+
const [draggingIndex, setDraggingIndex] = useState(null);
|
|
34
|
+
const [hoveredIndex, setHoveredIndex] = useState(null);
|
|
35
|
+
const [focusedIndex, setFocusedIndex] = useState(null);
|
|
36
|
+
const [registeredThumbCounts, setRegisteredThumbCounts] = useState(() => new Map());
|
|
37
|
+
const deprecatedThumbRef = useRef(null);
|
|
38
|
+
const isRangeShapeRef = useRef(isArrayShape(valueProp, defaultValue));
|
|
39
|
+
isRangeShapeRef.current = isArrayShape(valueProp, defaultValue);
|
|
40
|
+
const resolvedDefaultScalar = typeof defaultValue === 'number' ? defaultValue : min;
|
|
41
|
+
const resolvedDefaultArray = Array.isArray(defaultValue) ? [...defaultValue] : [resolvedDefaultScalar];
|
|
42
|
+
const [values, setValuesState] = useControllableState({
|
|
43
|
+
prop: valueProp == null ? undefined : normalizeSliderValue(valueProp, min, resolvedDefaultScalar),
|
|
44
|
+
defaultProp: resolvedDefaultArray,
|
|
45
|
+
onChange: onChange ? next => {
|
|
46
|
+
const denormalized = denormalizeSliderValue(next, isRangeShapeRef.current);
|
|
47
|
+
if (isRangeShapeRef.current) {
|
|
48
|
+
onChange(denormalized);
|
|
49
|
+
} else {
|
|
50
|
+
onChange(denormalized);
|
|
51
|
+
}
|
|
52
|
+
} : undefined
|
|
53
|
+
});
|
|
54
|
+
const currentValues = useMemo(() => {
|
|
55
|
+
const source = values ?? resolvedDefaultArray;
|
|
56
|
+
return source.map(value => snapToStep(value, min, max, step));
|
|
57
|
+
}, [max, min, resolvedDefaultArray, step, values]);
|
|
58
|
+
const registeredThumbCount = [...registeredThumbCounts.values()].reduce((total, count) => total + count, 0);
|
|
59
|
+
const hasDuplicateThumbIndices = [...registeredThumbCounts.values()].some(count => count > 1);
|
|
60
|
+
const thumbCount = Math.max(currentValues.length, registeredThumbCount);
|
|
61
|
+
const registerThumb = useCallback(index => {
|
|
62
|
+
setRegisteredThumbCounts(prev => {
|
|
63
|
+
const next = new Map(prev);
|
|
64
|
+
next.set(index, (next.get(index) ?? 0) + 1);
|
|
65
|
+
return next;
|
|
66
|
+
});
|
|
67
|
+
return () => {
|
|
68
|
+
setRegisteredThumbCounts(prev => {
|
|
69
|
+
const count = prev.get(index);
|
|
70
|
+
if (count == null) {
|
|
71
|
+
return prev;
|
|
72
|
+
}
|
|
73
|
+
const next = new Map(prev);
|
|
74
|
+
if (count === 1) {
|
|
75
|
+
next.delete(index);
|
|
76
|
+
} else {
|
|
77
|
+
next.set(index, count - 1);
|
|
78
|
+
}
|
|
79
|
+
return next;
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
}, []);
|
|
83
|
+
useEffect(() => {
|
|
84
|
+
if (!__DEV__) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const renderedCount = registeredThumbCount;
|
|
88
|
+
if (renderedCount > 0 && renderedCount !== currentValues.length) {
|
|
89
|
+
console.warn(`[Slider] Thumb count (${String(renderedCount)}) does not match value count (${String(currentValues.length)}).`);
|
|
90
|
+
}
|
|
91
|
+
if (hasDuplicateThumbIndices) {
|
|
92
|
+
console.warn('[Slider] Multiple thumbs share the same `index` prop.');
|
|
93
|
+
}
|
|
94
|
+
}, [currentValues.length, hasDuplicateThumbIndices, registeredThumbCount]);
|
|
95
|
+
const getThumbMinValue = useCallback(index => {
|
|
96
|
+
if (index <= 0) {
|
|
97
|
+
return min;
|
|
98
|
+
}
|
|
99
|
+
return currentValues[index - 1] ?? min;
|
|
100
|
+
}, [currentValues, min]);
|
|
101
|
+
const getThumbMaxValue = useCallback(index => {
|
|
102
|
+
if (index >= currentValues.length - 1) {
|
|
103
|
+
return max;
|
|
104
|
+
}
|
|
105
|
+
return currentValues[index + 1] ?? max;
|
|
106
|
+
}, [currentValues, max]);
|
|
107
|
+
const getThumbPercent = useCallback(index => valueToPercent(currentValues[index] ?? min, min, max), [currentValues, max, min]);
|
|
108
|
+
const commitValues = useCallback((nextValues, complete = false) => {
|
|
109
|
+
if (isDisabled) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
const unchanged = arraysEqual(nextValues, currentValues);
|
|
113
|
+
if (!unchanged) {
|
|
114
|
+
setValuesState(nextValues);
|
|
115
|
+
}
|
|
116
|
+
if (complete && onChangeComplete) {
|
|
117
|
+
const denormalized = denormalizeSliderValue(unchanged ? currentValues : nextValues, isRangeShapeRef.current);
|
|
118
|
+
if (isRangeShapeRef.current) {
|
|
119
|
+
onChangeComplete(denormalized);
|
|
120
|
+
} else {
|
|
121
|
+
onChangeComplete(denormalized);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}, [currentValues, isDisabled, onChangeComplete, setValuesState]);
|
|
125
|
+
const setThumbValue = useCallback((index, next, complete = false) => {
|
|
126
|
+
if (isDisabled || index < 0 || index >= currentValues.length) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
const snapped = snapToStep(next, getThumbMinValue(index), getThumbMaxValue(index), step);
|
|
130
|
+
const nextValues = [...currentValues];
|
|
131
|
+
nextValues[index] = snapped;
|
|
132
|
+
commitValues(nextValues, complete);
|
|
133
|
+
}, [commitValues, currentValues, getThumbMaxValue, getThumbMinValue, isDisabled, step]);
|
|
134
|
+
const setThumbValueFromRatio = useCallback((index, ratio, complete = false) => {
|
|
135
|
+
const next = min + clamp(ratio, 0, 1) * (max - min);
|
|
136
|
+
setThumbValue(index, next, complete);
|
|
137
|
+
}, [max, min, setThumbValue]);
|
|
138
|
+
const setNearestThumbValueFromRatio = useCallback((ratio, complete = false) => {
|
|
139
|
+
const target = min + clamp(ratio, 0, 1) * (max - min);
|
|
140
|
+
const index = getClosestValueIndex(currentValues, target);
|
|
141
|
+
setThumbValue(index, target, complete);
|
|
142
|
+
}, [currentValues, max, min, setThumbValue]);
|
|
143
|
+
const setTrackLayout = useCallback(layout => {
|
|
144
|
+
setTrackLayoutState(prev => {
|
|
145
|
+
if (prev !== null && prev.width === layout.width && prev.height === layout.height && prev.x === layout.x && prev.y === layout.y) {
|
|
146
|
+
return prev;
|
|
147
|
+
}
|
|
148
|
+
return layout;
|
|
149
|
+
});
|
|
150
|
+
}, []);
|
|
151
|
+
const setThumbSize = useCallback(size => {
|
|
152
|
+
setThumbSizeState(prev => prev === size ? prev : size);
|
|
153
|
+
}, []);
|
|
154
|
+
const getThumbValueLabel = useCallback(index => formatSliderValue(currentValues[index] ?? min), [currentValues, min]);
|
|
155
|
+
const isThumbDragging = useCallback(index => draggingIndex === index, [draggingIndex]);
|
|
156
|
+
const setValue = useCallback((next, complete = false) => setThumbValue(0, next, complete), [setThumbValue]);
|
|
157
|
+
const setValueFromRatio = useCallback((ratio, complete = false) => setNearestThumbValueFromRatio(ratio, complete), [setNearestThumbValueFromRatio]);
|
|
158
|
+
const setIsDragging = useCallback(dragging => {
|
|
159
|
+
setDraggingIndex(dragging ? 0 : null);
|
|
160
|
+
}, []);
|
|
161
|
+
const setIsHovered = useCallback(hovered => {
|
|
162
|
+
setHoveredIndex(hovered ? 0 : null);
|
|
163
|
+
}, []);
|
|
164
|
+
const setIsFocused = useCallback(focused => {
|
|
165
|
+
setFocusedIndex(focused ? 0 : null);
|
|
166
|
+
}, []);
|
|
167
|
+
const contextValue = useMemo(() => ({
|
|
168
|
+
values: currentValues,
|
|
169
|
+
min,
|
|
170
|
+
max,
|
|
171
|
+
step,
|
|
172
|
+
orientation,
|
|
173
|
+
isDisabled,
|
|
174
|
+
draggingIndex,
|
|
175
|
+
hoveredIndex,
|
|
176
|
+
focusedIndex,
|
|
177
|
+
trackLayout,
|
|
178
|
+
thumbSize,
|
|
179
|
+
thumbCount,
|
|
180
|
+
groupAccessibilityLabel: accessibilityLabel,
|
|
181
|
+
accessibilityValueProp,
|
|
182
|
+
getThumbPercent,
|
|
183
|
+
getThumbMinValue,
|
|
184
|
+
getThumbMaxValue,
|
|
185
|
+
setThumbValue,
|
|
186
|
+
setThumbValueFromRatio,
|
|
187
|
+
setNearestThumbValueFromRatio,
|
|
188
|
+
setTrackLayout,
|
|
189
|
+
setThumbSize,
|
|
190
|
+
setDraggingIndex,
|
|
191
|
+
setHoveredIndex,
|
|
192
|
+
setFocusedIndex,
|
|
193
|
+
getThumbValueLabel,
|
|
194
|
+
registerThumb,
|
|
195
|
+
isThumbDragging,
|
|
196
|
+
value: currentValues[0] ?? min,
|
|
197
|
+
percent: getThumbPercent(0),
|
|
198
|
+
isDragging: draggingIndex !== null,
|
|
199
|
+
isHovered: hoveredIndex !== null,
|
|
200
|
+
isFocused: focusedIndex !== null,
|
|
201
|
+
getValueLabel: () => getThumbValueLabel(0),
|
|
202
|
+
setValue,
|
|
203
|
+
setValueFromRatio,
|
|
204
|
+
thumbRef: deprecatedThumbRef,
|
|
205
|
+
setIsDragging,
|
|
206
|
+
setIsHovered,
|
|
207
|
+
setIsFocused
|
|
208
|
+
}), [accessibilityLabel, accessibilityValueProp, currentValues, draggingIndex, focusedIndex, getThumbMaxValue, getThumbMinValue, getThumbPercent, getThumbValueLabel, hoveredIndex, isDisabled, isThumbDragging, max, min, orientation, registerThumb, setIsDragging, setIsFocused, setIsHovered, setNearestThumbValueFromRatio, setThumbSize, setThumbValue, setThumbValueFromRatio, setTrackLayout, setValue, setValueFromRatio, step, thumbCount, thumbSize, trackLayout]);
|
|
209
|
+
const dataAttrs = dataAttributes({
|
|
210
|
+
slot: 'slider',
|
|
211
|
+
orientation,
|
|
212
|
+
disabled: isDisabled,
|
|
213
|
+
dragging: draggingIndex !== null,
|
|
214
|
+
hover: hoveredIndex !== null,
|
|
215
|
+
focus: focusedIndex !== null,
|
|
216
|
+
values: currentValues.join(','),
|
|
217
|
+
min: String(min),
|
|
218
|
+
max: String(max)
|
|
219
|
+
});
|
|
220
|
+
const Comp = asChild ? Slot : View;
|
|
221
|
+
const handleLayout = composeEventHandlers(onLayout, () => undefined);
|
|
222
|
+
return /*#__PURE__*/_jsx(SliderProvider, {
|
|
223
|
+
value: contextValue,
|
|
224
|
+
children: /*#__PURE__*/_jsx(Comp, {
|
|
225
|
+
ref: ref,
|
|
226
|
+
...props,
|
|
227
|
+
onLayout: handleLayout,
|
|
228
|
+
accessibilityLabel: accessibilityLabel,
|
|
229
|
+
accessibilityState: {
|
|
230
|
+
disabled: isDisabled
|
|
231
|
+
},
|
|
232
|
+
"aria-disabled": isDisabled,
|
|
233
|
+
role: Platform.OS === 'web' ? 'group' : undefined,
|
|
234
|
+
...dataAttrs,
|
|
235
|
+
children: children
|
|
236
|
+
})
|
|
237
|
+
});
|
|
238
|
+
});
|
|
239
|
+
SliderRoot.displayName = 'SliderRoot';
|
|
240
|
+
//# sourceMappingURL=SliderRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useEffect","useMemo","useRef","useState","Platform","View","composeEventHandlers","useControllableState","Slot","dataAttributes","SliderProvider","arraysEqual","clamp","denormalizeSliderValue","formatSliderValue","getClosestValueIndex","normalizeSliderValue","snapToStep","valueToPercent","jsx","_jsx","isArrayShape","value","defaultValue","Array","isArray","SliderRoot","asChild","valueProp","onChange","onChangeComplete","min","max","step","isDisabled","orientation","accessibilityLabel","accessibilityValue","accessibilityValueProp","children","onLayout","props","ref","trackLayout","setTrackLayoutState","thumbSize","setThumbSizeState","draggingIndex","setDraggingIndex","hoveredIndex","setHoveredIndex","focusedIndex","setFocusedIndex","registeredThumbCounts","setRegisteredThumbCounts","Map","deprecatedThumbRef","isRangeShapeRef","current","resolvedDefaultScalar","resolvedDefaultArray","values","setValuesState","prop","undefined","defaultProp","next","denormalized","currentValues","source","map","registeredThumbCount","reduce","total","count","hasDuplicateThumbIndices","some","thumbCount","Math","length","registerThumb","index","prev","set","get","delete","__DEV__","renderedCount","console","warn","String","getThumbMinValue","getThumbMaxValue","getThumbPercent","commitValues","nextValues","complete","unchanged","setThumbValue","snapped","setThumbValueFromRatio","ratio","setNearestThumbValueFromRatio","target","setTrackLayout","layout","width","height","x","y","setThumbSize","size","getThumbValueLabel","isThumbDragging","setValue","setValueFromRatio","setIsDragging","dragging","setIsHovered","hovered","setIsFocused","focused","contextValue","groupAccessibilityLabel","percent","isDragging","isHovered","isFocused","getValueLabel","thumbRef","dataAttrs","slot","disabled","hover","focus","join","Comp","handleLayout","accessibilityState","role","OS","displayName"],"sourceRoot":"../../../src","sources":["slider/SliderRoot.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef, useCallback, useEffect, useMemo, useRef } from 'react';
|
|
4
|
+
import { PanResponder, Platform, Pressable, View } from 'react-native';
|
|
5
|
+
import { composeEventHandlers } from '@cdx-ui/utils';
|
|
6
|
+
import { useFocus, useFocusRing } from '@react-native-aria/focus';
|
|
7
|
+
import { useHover, usePress } from '@react-native-aria/interactions';
|
|
8
|
+
import { Slot } from '../slot';
|
|
9
|
+
import { assignRef } from '../utils/assignRef';
|
|
10
|
+
import { dataAttributes } from '../utils/dataAttributes';
|
|
11
|
+
import { SliderThumbProvider, useSliderContext } from './context';
|
|
12
|
+
import { getPointerCoords, useWebSliderDrag } from './useSliderPointer';
|
|
13
|
+
import { clamp, formatSliderValue, getThumbTravel, percentToThumbOffset, valueToPercent } from './utils';
|
|
14
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
|
+
const STEP_KEYS = new Set(['ArrowUp', 'ArrowRight', 'ArrowDown', 'ArrowLeft', 'Home', 'End']);
|
|
16
|
+
function getDefaultThumbAccessibilityLabel(index, thumbCount, groupAccessibilityLabel) {
|
|
17
|
+
if (thumbCount === 2) {
|
|
18
|
+
return index === 0 ? 'Minimum' : 'Maximum';
|
|
19
|
+
}
|
|
20
|
+
if (thumbCount > 2) {
|
|
21
|
+
return `Value ${String(index + 1)} of ${String(thumbCount)}`;
|
|
22
|
+
}
|
|
23
|
+
return groupAccessibilityLabel;
|
|
24
|
+
}
|
|
25
|
+
export const SliderThumb = /*#__PURE__*/forwardRef(({
|
|
26
|
+
asChild,
|
|
27
|
+
index = 0,
|
|
28
|
+
style,
|
|
29
|
+
accessibilityLabel: accessibilityLabelProp,
|
|
30
|
+
accessibilityValue: accessibilityValueProp,
|
|
31
|
+
onLayout,
|
|
32
|
+
onHoverIn,
|
|
33
|
+
onHoverOut,
|
|
34
|
+
onFocus,
|
|
35
|
+
onBlur,
|
|
36
|
+
onPressIn,
|
|
37
|
+
onPressOut,
|
|
38
|
+
children,
|
|
39
|
+
...props
|
|
40
|
+
}, ref) => {
|
|
41
|
+
const {
|
|
42
|
+
values,
|
|
43
|
+
min,
|
|
44
|
+
max,
|
|
45
|
+
step,
|
|
46
|
+
orientation,
|
|
47
|
+
isDisabled,
|
|
48
|
+
thumbCount,
|
|
49
|
+
groupAccessibilityLabel,
|
|
50
|
+
accessibilityValueProp: rootAccessibilityValueProp,
|
|
51
|
+
trackLayout,
|
|
52
|
+
thumbSize,
|
|
53
|
+
getThumbPercent,
|
|
54
|
+
getThumbMinValue,
|
|
55
|
+
getThumbMaxValue,
|
|
56
|
+
setThumbValue,
|
|
57
|
+
setThumbValueFromRatio,
|
|
58
|
+
setDraggingIndex,
|
|
59
|
+
setHoveredIndex,
|
|
60
|
+
setFocusedIndex,
|
|
61
|
+
setThumbSize,
|
|
62
|
+
registerThumb,
|
|
63
|
+
isThumbDragging,
|
|
64
|
+
thumbRef: deprecatedThumbRef
|
|
65
|
+
} = useSliderContext();
|
|
66
|
+
const value = values[index] ?? min;
|
|
67
|
+
const percent = getThumbPercent(index);
|
|
68
|
+
const isDragging = isThumbDragging(index);
|
|
69
|
+
const thumbRef = useRef(null);
|
|
70
|
+
useEffect(() => {
|
|
71
|
+
return registerThumb(index);
|
|
72
|
+
}, [index, registerThumb]);
|
|
73
|
+
useEffect(() => {
|
|
74
|
+
if (index === 0) {
|
|
75
|
+
deprecatedThumbRef.current = thumbRef.current;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
const percentRef = useRef(percent);
|
|
79
|
+
percentRef.current = percent;
|
|
80
|
+
const dragStartRatio = useRef(0);
|
|
81
|
+
const lastRatioRef = useRef(percent / 100);
|
|
82
|
+
const orientationRef = useRef(orientation);
|
|
83
|
+
orientationRef.current = orientation;
|
|
84
|
+
const trackLayoutRef = useRef(trackLayout);
|
|
85
|
+
trackLayoutRef.current = trackLayout;
|
|
86
|
+
const thumbSizeRef = useRef(thumbSize);
|
|
87
|
+
thumbSizeRef.current = thumbSize;
|
|
88
|
+
const isDisabledRef = useRef(isDisabled);
|
|
89
|
+
isDisabledRef.current = isDisabled;
|
|
90
|
+
const indexRef = useRef(index);
|
|
91
|
+
indexRef.current = index;
|
|
92
|
+
const setThumbValueFromRatioRef = useRef(setThumbValueFromRatio);
|
|
93
|
+
setThumbValueFromRatioRef.current = setThumbValueFromRatio;
|
|
94
|
+
const setDraggingIndexRef = useRef(setDraggingIndex);
|
|
95
|
+
setDraggingIndexRef.current = setDraggingIndex;
|
|
96
|
+
const {
|
|
97
|
+
hoverProps,
|
|
98
|
+
isHovered
|
|
99
|
+
} = useHover();
|
|
100
|
+
const {
|
|
101
|
+
focusProps,
|
|
102
|
+
isFocused
|
|
103
|
+
} = useFocus();
|
|
104
|
+
const {
|
|
105
|
+
isFocusVisible,
|
|
106
|
+
focusProps: focusRingProps
|
|
107
|
+
} = useFocusRing();
|
|
108
|
+
const {
|
|
109
|
+
pressProps: pressableProps,
|
|
110
|
+
isPressed
|
|
111
|
+
} = usePress({
|
|
112
|
+
isDisabled
|
|
113
|
+
});
|
|
114
|
+
const setRatioForThumb = useCallback((ratio, complete) => {
|
|
115
|
+
setThumbValueFromRatio(index, ratio, complete);
|
|
116
|
+
}, [index, setThumbValueFromRatio]);
|
|
117
|
+
const setDraggingForThumb = useCallback(dragging => {
|
|
118
|
+
setDraggingIndex(dragging ? index : null);
|
|
119
|
+
}, [index, setDraggingIndex]);
|
|
120
|
+
const {
|
|
121
|
+
startDrag
|
|
122
|
+
} = useWebSliderDrag({
|
|
123
|
+
isDisabled,
|
|
124
|
+
setIsDragging: setDraggingForThumb,
|
|
125
|
+
setValueFromRatio: setRatioForThumb,
|
|
126
|
+
trackLayout,
|
|
127
|
+
orientation,
|
|
128
|
+
thumbSize
|
|
129
|
+
});
|
|
130
|
+
const panResponder = useMemo(() => PanResponder.create({
|
|
131
|
+
onStartShouldSetPanResponder: () => !isDisabledRef.current,
|
|
132
|
+
onMoveShouldSetPanResponder: () => !isDisabledRef.current,
|
|
133
|
+
onPanResponderGrant: () => {
|
|
134
|
+
if (isDisabledRef.current) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
setDraggingIndexRef.current(indexRef.current);
|
|
138
|
+
dragStartRatio.current = percentRef.current / 100;
|
|
139
|
+
lastRatioRef.current = dragStartRatio.current;
|
|
140
|
+
},
|
|
141
|
+
onPanResponderMove: (_event, gestureState) => {
|
|
142
|
+
const layout = trackLayoutRef.current;
|
|
143
|
+
if (!layout) {
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
const isHorizontal = orientationRef.current === 'horizontal';
|
|
147
|
+
const trackSize = isHorizontal ? layout.width : layout.height;
|
|
148
|
+
const travel = getThumbTravel(trackSize, thumbSizeRef.current);
|
|
149
|
+
if (travel <= 0) {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
const delta = isHorizontal ? gestureState.dx : -gestureState.dy;
|
|
153
|
+
const nextRatio = clamp(dragStartRatio.current + delta / travel, 0, 1);
|
|
154
|
+
lastRatioRef.current = nextRatio;
|
|
155
|
+
setThumbValueFromRatioRef.current(indexRef.current, nextRatio);
|
|
156
|
+
},
|
|
157
|
+
onPanResponderRelease: () => {
|
|
158
|
+
setDraggingIndexRef.current(null);
|
|
159
|
+
setThumbValueFromRatioRef.current(indexRef.current, lastRatioRef.current, true);
|
|
160
|
+
},
|
|
161
|
+
onPanResponderTerminate: () => {
|
|
162
|
+
setDraggingIndexRef.current(null);
|
|
163
|
+
setThumbValueFromRatioRef.current(indexRef.current, lastRatioRef.current, true);
|
|
164
|
+
}
|
|
165
|
+
}), []);
|
|
166
|
+
const thumbStyle = useMemo(() => {
|
|
167
|
+
const trackSize = trackLayout == null ? 0 : orientation === 'horizontal' ? trackLayout.width : trackLayout.height;
|
|
168
|
+
const offset = percentToThumbOffset(percent, trackSize, thumbSize);
|
|
169
|
+
const zIndex = isDragging ? 3 : 2;
|
|
170
|
+
if (orientation === 'vertical') {
|
|
171
|
+
return {
|
|
172
|
+
position: 'absolute',
|
|
173
|
+
left: '50%',
|
|
174
|
+
bottom: offset,
|
|
175
|
+
marginLeft: -thumbSize / 2,
|
|
176
|
+
zIndex
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
return {
|
|
180
|
+
position: 'absolute',
|
|
181
|
+
top: '50%',
|
|
182
|
+
left: offset,
|
|
183
|
+
transform: [{
|
|
184
|
+
translateY: -thumbSize / 2
|
|
185
|
+
}],
|
|
186
|
+
zIndex
|
|
187
|
+
};
|
|
188
|
+
}, [isDragging, orientation, percent, thumbSize, trackLayout]);
|
|
189
|
+
const handleLayout = useCallback(event => {
|
|
190
|
+
const {
|
|
191
|
+
width,
|
|
192
|
+
height
|
|
193
|
+
} = event.nativeEvent.layout;
|
|
194
|
+
const measured = orientation === 'horizontal' ? width : height;
|
|
195
|
+
if (measured > 0) {
|
|
196
|
+
setThumbSize(measured);
|
|
197
|
+
}
|
|
198
|
+
onLayout?.(event);
|
|
199
|
+
}, [onLayout, orientation, setThumbSize]);
|
|
200
|
+
const handlePointerDown = useCallback(event => {
|
|
201
|
+
if (Platform.OS !== 'web' || isDisabled) {
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
event.preventDefault();
|
|
205
|
+
event.stopPropagation();
|
|
206
|
+
const {
|
|
207
|
+
x,
|
|
208
|
+
y
|
|
209
|
+
} = getPointerCoords(event.nativeEvent);
|
|
210
|
+
startDrag(x, y, percentRef.current / 100);
|
|
211
|
+
}, [isDisabled, startDrag]);
|
|
212
|
+
const thumbMin = getThumbMinValue(index);
|
|
213
|
+
const thumbMax = getThumbMaxValue(index);
|
|
214
|
+
const accessibilityValue = useMemo(() => {
|
|
215
|
+
const thumbPercent = valueToPercent(value, min, max);
|
|
216
|
+
const defaults = {
|
|
217
|
+
min: 0,
|
|
218
|
+
max: 100,
|
|
219
|
+
now: Math.round(thumbPercent),
|
|
220
|
+
text: formatSliderValue(value)
|
|
221
|
+
};
|
|
222
|
+
const mergedRoot = rootAccessibilityValueProp ? {
|
|
223
|
+
...defaults,
|
|
224
|
+
...rootAccessibilityValueProp
|
|
225
|
+
} : defaults;
|
|
226
|
+
if (accessibilityValueProp === undefined) {
|
|
227
|
+
return mergedRoot;
|
|
228
|
+
}
|
|
229
|
+
return {
|
|
230
|
+
...mergedRoot,
|
|
231
|
+
...accessibilityValueProp
|
|
232
|
+
};
|
|
233
|
+
}, [accessibilityValueProp, max, min, rootAccessibilityValueProp, value]);
|
|
234
|
+
const resolvedAccessibilityLabel = accessibilityLabelProp ?? getDefaultThumbAccessibilityLabel(index, thumbCount, groupAccessibilityLabel);
|
|
235
|
+
const handleKeyDown = useCallback(event => {
|
|
236
|
+
if (isDisabled) {
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
const key = event.nativeEvent.key;
|
|
240
|
+
if (!key || !STEP_KEYS.has(key)) {
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
243
|
+
if (Platform.OS === 'web') {
|
|
244
|
+
event.preventDefault?.();
|
|
245
|
+
}
|
|
246
|
+
let next = value;
|
|
247
|
+
if (key === 'ArrowUp' || key === 'ArrowRight') {
|
|
248
|
+
next = value + step;
|
|
249
|
+
} else if (key === 'ArrowDown' || key === 'ArrowLeft') {
|
|
250
|
+
next = value - step;
|
|
251
|
+
} else if (key === 'Home') {
|
|
252
|
+
next = thumbMin;
|
|
253
|
+
} else if (key === 'End') {
|
|
254
|
+
next = thumbMax;
|
|
255
|
+
}
|
|
256
|
+
setThumbValue(index, next, true);
|
|
257
|
+
}, [index, isDisabled, setThumbValue, step, thumbMax, thumbMin, value]);
|
|
258
|
+
const handleAccessibilityAction = useCallback(event => {
|
|
259
|
+
if (isDisabled) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
if (event.nativeEvent.actionName === 'increment') {
|
|
263
|
+
setThumbValue(index, value + step, true);
|
|
264
|
+
} else if (event.nativeEvent.actionName === 'decrement') {
|
|
265
|
+
setThumbValue(index, value - step, true);
|
|
266
|
+
}
|
|
267
|
+
}, [index, isDisabled, setThumbValue, step, value]);
|
|
268
|
+
const thumbContextValue = useMemo(() => ({
|
|
269
|
+
index,
|
|
270
|
+
value,
|
|
271
|
+
percent,
|
|
272
|
+
isDragging,
|
|
273
|
+
isHovered,
|
|
274
|
+
isFocused,
|
|
275
|
+
thumbRef
|
|
276
|
+
}), [index, isDragging, isFocused, isHovered, percent, value]);
|
|
277
|
+
const isWeb = Platform.OS === 'web';
|
|
278
|
+
const Comp = asChild ? Slot : isWeb ? Pressable : View;
|
|
279
|
+
const setThumbRef = useCallback(node => {
|
|
280
|
+
thumbRef.current = node;
|
|
281
|
+
if (index === 0) {
|
|
282
|
+
deprecatedThumbRef.current = node;
|
|
283
|
+
}
|
|
284
|
+
assignRef(ref, node);
|
|
285
|
+
}, [deprecatedThumbRef, index, ref]);
|
|
286
|
+
const webInteractionProps = Platform.OS === 'web' ? {
|
|
287
|
+
onPointerDown: handlePointerDown,
|
|
288
|
+
onHoverIn: composeEventHandlers(onHoverIn, composeEventHandlers(hoverProps.onHoverIn, () => setHoveredIndex(index))),
|
|
289
|
+
onHoverOut: composeEventHandlers(onHoverOut, composeEventHandlers(hoverProps.onHoverOut, () => setHoveredIndex(null))),
|
|
290
|
+
onPressIn: composeEventHandlers(onPressIn, pressableProps.onPressIn),
|
|
291
|
+
onPressOut: composeEventHandlers(onPressOut, pressableProps.onPressOut),
|
|
292
|
+
disabled: isDisabled,
|
|
293
|
+
tabIndex: isDisabled ? -1 : 0,
|
|
294
|
+
onKeyDown: handleKeyDown,
|
|
295
|
+
role: 'slider',
|
|
296
|
+
'aria-valuemin': thumbMin,
|
|
297
|
+
'aria-valuemax': thumbMax,
|
|
298
|
+
'aria-valuenow': value,
|
|
299
|
+
'aria-orientation': orientation,
|
|
300
|
+
'aria-disabled': isDisabled
|
|
301
|
+
} : {};
|
|
302
|
+
return /*#__PURE__*/_jsx(SliderThumbProvider, {
|
|
303
|
+
value: thumbContextValue,
|
|
304
|
+
children: /*#__PURE__*/_jsx(Comp, {
|
|
305
|
+
ref: setThumbRef,
|
|
306
|
+
...props,
|
|
307
|
+
...(isWeb ? webInteractionProps : panResponder.panHandlers),
|
|
308
|
+
onLayout: handleLayout,
|
|
309
|
+
onFocus: composeEventHandlers(composeEventHandlers(onFocus, focusProps.onFocus), composeEventHandlers(focusRingProps.onFocus, () => setFocusedIndex(index))),
|
|
310
|
+
onBlur: composeEventHandlers(composeEventHandlers(onBlur, focusProps.onBlur), composeEventHandlers(focusRingProps.onBlur, () => setFocusedIndex(null))),
|
|
311
|
+
style: [thumbStyle, style],
|
|
312
|
+
accessibilityRole: "adjustable",
|
|
313
|
+
accessibilityLabel: resolvedAccessibilityLabel,
|
|
314
|
+
accessibilityValue: accessibilityValue,
|
|
315
|
+
accessibilityActions: [{
|
|
316
|
+
name: 'increment'
|
|
317
|
+
}, {
|
|
318
|
+
name: 'decrement'
|
|
319
|
+
}],
|
|
320
|
+
onAccessibilityAction: handleAccessibilityAction,
|
|
321
|
+
accessibilityState: {
|
|
322
|
+
disabled: isDisabled
|
|
323
|
+
},
|
|
324
|
+
...dataAttributes({
|
|
325
|
+
slot: 'slider-thumb',
|
|
326
|
+
hover: isHovered,
|
|
327
|
+
focus: isFocused,
|
|
328
|
+
focusVisible: isFocusVisible,
|
|
329
|
+
active: isPressed || isDragging,
|
|
330
|
+
dragging: isDragging,
|
|
331
|
+
disabled: isDisabled
|
|
332
|
+
}),
|
|
333
|
+
children: children
|
|
334
|
+
})
|
|
335
|
+
});
|
|
336
|
+
});
|
|
337
|
+
SliderThumb.displayName = 'SliderThumb';
|
|
338
|
+
//# sourceMappingURL=SliderThumb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useEffect","useMemo","useRef","PanResponder","Platform","Pressable","View","composeEventHandlers","useFocus","useFocusRing","useHover","usePress","Slot","assignRef","dataAttributes","SliderThumbProvider","useSliderContext","getPointerCoords","useWebSliderDrag","clamp","formatSliderValue","getThumbTravel","percentToThumbOffset","valueToPercent","jsx","_jsx","STEP_KEYS","Set","getDefaultThumbAccessibilityLabel","index","thumbCount","groupAccessibilityLabel","String","SliderThumb","asChild","style","accessibilityLabel","accessibilityLabelProp","accessibilityValue","accessibilityValueProp","onLayout","onHoverIn","onHoverOut","onFocus","onBlur","onPressIn","onPressOut","children","props","ref","values","min","max","step","orientation","isDisabled","rootAccessibilityValueProp","trackLayout","thumbSize","getThumbPercent","getThumbMinValue","getThumbMaxValue","setThumbValue","setThumbValueFromRatio","setDraggingIndex","setHoveredIndex","setFocusedIndex","setThumbSize","registerThumb","isThumbDragging","thumbRef","deprecatedThumbRef","value","percent","isDragging","current","percentRef","dragStartRatio","lastRatioRef","orientationRef","trackLayoutRef","thumbSizeRef","isDisabledRef","indexRef","setThumbValueFromRatioRef","setDraggingIndexRef","hoverProps","isHovered","focusProps","isFocused","isFocusVisible","focusRingProps","pressProps","pressableProps","isPressed","setRatioForThumb","ratio","complete","setDraggingForThumb","dragging","startDrag","setIsDragging","setValueFromRatio","panResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","_event","gestureState","layout","isHorizontal","trackSize","width","height","travel","delta","dx","dy","nextRatio","onPanResponderRelease","onPanResponderTerminate","thumbStyle","offset","zIndex","position","left","bottom","marginLeft","top","transform","translateY","handleLayout","event","nativeEvent","measured","handlePointerDown","OS","preventDefault","stopPropagation","x","y","thumbMin","thumbMax","thumbPercent","defaults","now","Math","round","text","mergedRoot","undefined","resolvedAccessibilityLabel","handleKeyDown","key","has","next","handleAccessibilityAction","actionName","thumbContextValue","isWeb","Comp","setThumbRef","node","webInteractionProps","onPointerDown","disabled","tabIndex","onKeyDown","role","panHandlers","accessibilityRole","accessibilityActions","name","onAccessibilityAction","accessibilityState","slot","hover","focus","focusVisible","active","displayName"],"sourceRoot":"../../../src","sources":["slider/SliderThumb.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createContext } from '@cdx-ui/utils';
|
|
4
|
+
export const [SliderProvider, useSliderContext] = createContext('SliderContext');
|
|
5
|
+
export const [SliderThumbProvider, useSliderThumbContext] = createContext('SliderThumbContext');
|
|
6
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","SliderProvider","useSliderContext","SliderThumbProvider","useSliderThumbContext"],"sourceRoot":"../../../src","sources":["slider/context.tsx"],"mappings":";;AAEA,SAASA,aAAa,QAAQ,eAAe;AA2E7C,OAAO,MAAM,CAACC,cAAc,EAAEC,gBAAgB,CAAC,GAC7CF,aAAa,CAAqB,eAAe,CAAC;AAEpD,OAAO,MAAM,CAACG,mBAAmB,EAAEC,qBAAqB,CAAC,GACvDJ,aAAa,CAA0B,oBAAoB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export { useSliderContext, useSliderThumbContext } from './context';
|
|
4
|
+
export { SliderRoot } from './SliderRoot';
|
|
5
|
+
export { SliderRail } from './SliderRail';
|
|
6
|
+
export { SliderThumb } from './SliderThumb';
|
|
7
|
+
export { arraysEqual, denormalizeSliderValue, getClosestValueIndex, getFillExtent, getMarkerPositionStyle, getMarkerStepValues, normalizeSliderValue, percentToFillExtent, SLIDER_MARKER_SIZE, valueToPercent } from './utils';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useSliderContext","useSliderThumbContext","SliderRoot","SliderRail","SliderThumb","arraysEqual","denormalizeSliderValue","getClosestValueIndex","getFillExtent","getMarkerPositionStyle","getMarkerStepValues","normalizeSliderValue","percentToFillExtent","SLIDER_MARKER_SIZE","valueToPercent"],"sourceRoot":"../../../src","sources":["slider/index.ts"],"mappings":";;AAUA,SAASA,gBAAgB,EAAEC,qBAAqB,QAAQ,WAAW;AACnE,SAASC,UAAU,QAA8B,cAAc;AAC/D,SAASC,UAAU,QAA8B,cAAc;AAC/D,SAASC,WAAW,QAA+B,eAAe;AAClE,SACEC,WAAW,EACXC,sBAAsB,EACtBC,oBAAoB,EACpBC,aAAa,EACbC,sBAAsB,EACtBC,mBAAmB,EACnBC,oBAAoB,EACpBC,mBAAmB,EACnBC,kBAAkB,EAClBC,cAAc,QACT,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["slider/types.ts"],"mappings":"","ignoreList":[]}
|