@cdx-ui/primitives 0.0.1-beta.140 → 0.0.1-beta.142
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/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/CheckboxRoot.web.js +91 -28
- package/lib/commonjs/checkbox/CheckboxRoot.web.js.map +1 -1
- package/lib/commonjs/checkbox/useCheckboxRoot.js +33 -19
- package/lib/commonjs/checkbox/useCheckboxRoot.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/DialogRoot.js +1 -1
- package/lib/commonjs/dialog/DialogRoot.js.map +1 -1
- package/lib/commonjs/index.js +148 -0
- package/lib/commonjs/index.js.map +1 -1
- 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/useAnchorPosition.js +27 -16
- package/lib/commonjs/overlay/useAnchorPosition.js.map +1 -1
- package/lib/commonjs/overlay/useDismissOverlay.web.js +10 -2
- package/lib/commonjs/overlay/useDismissOverlay.web.js.map +1 -1
- package/lib/commonjs/overlay/useOverlayPosition.js +5 -2
- package/lib/commonjs/overlay/useOverlayPosition.js.map +1 -1
- package/lib/commonjs/portal/portal.js +59 -2
- 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/SelectRoot.js +1 -1
- package/lib/commonjs/select/SelectRoot.js.map +1 -1
- package/lib/commonjs/utils/accessibleLabel.js +23 -0
- package/lib/commonjs/utils/accessibleLabel.js.map +1 -0
- package/lib/commonjs/utils/createPortal.web.js +21 -0
- package/lib/commonjs/utils/createPortal.web.js.map +1 -0
- 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/CheckboxRoot.web.js +92 -29
- package/lib/module/checkbox/CheckboxRoot.web.js.map +1 -1
- package/lib/module/checkbox/useCheckboxRoot.js +34 -20
- package/lib/module/checkbox/useCheckboxRoot.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/DialogRoot.js +1 -1
- package/lib/module/dialog/DialogRoot.js.map +1 -1
- package/lib/module/index.js +11 -2
- package/lib/module/index.js.map +1 -1
- 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/useAnchorPosition.js +27 -16
- package/lib/module/overlay/useAnchorPosition.js.map +1 -1
- package/lib/module/overlay/useDismissOverlay.web.js +9 -2
- package/lib/module/overlay/useDismissOverlay.web.js.map +1 -1
- package/lib/module/overlay/useOverlayPosition.js +5 -2
- package/lib/module/overlay/useOverlayPosition.js.map +1 -1
- package/lib/module/portal/portal.js +59 -2
- 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/SelectRoot.js +1 -1
- package/lib/module/select/SelectRoot.js.map +1 -1
- package/lib/module/utils/accessibleLabel.js +18 -0
- package/lib/module/utils/accessibleLabel.js.map +1 -0
- package/lib/module/utils/createPortal.web.js +17 -0
- package/lib/module/utils/createPortal.web.js.map +1 -0
- 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/CheckboxRoot.web.d.ts +8 -0
- package/lib/typescript/checkbox/CheckboxRoot.web.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/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/types.d.ts +2 -1
- package/lib/typescript/dialog/types.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +11 -2
- package/lib/typescript/index.d.ts.map +1 -1
- 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/useAnchorPosition.d.ts.map +1 -1
- package/lib/typescript/overlay/useDismissOverlay.web.d.ts.map +1 -1
- package/lib/typescript/overlay/useOverlayPosition.d.ts.map +1 -1
- 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/types.d.ts +2 -1
- package/lib/typescript/select/types.d.ts.map +1 -1
- package/lib/typescript/utils/accessibleLabel.d.ts +13 -0
- package/lib/typescript/utils/accessibleLabel.d.ts.map +1 -0
- package/lib/typescript/utils/createPortal.web.d.ts +17 -0
- package/lib/typescript/utils/createPortal.web.d.ts.map +1 -0
- package/package.json +3 -2
- 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/CheckboxRoot.web.tsx +105 -29
- package/src/checkbox/useCheckboxRoot.ts +37 -15
- 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/DialogRoot.tsx +1 -1
- package/src/dialog/types.ts +2 -1
- package/src/index.ts +21 -2
- 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/useAnchorPosition.ts +25 -11
- package/src/overlay/useDismissOverlay.web.ts +10 -2
- package/src/overlay/useOverlayPosition.ts +5 -2
- package/src/portal/portal.tsx +79 -2
- 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/SelectRoot.tsx +1 -1
- package/src/select/types.ts +2 -1
- package/src/utils/accessibleLabel.ts +22 -0
- package/src/utils/createPortal.web.ts +18 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.accessibleLabelAttributes = accessibleLabelAttributes;
|
|
7
|
+
exports.resolveAccessibleLabel = resolveAccessibleLabel;
|
|
8
|
+
function resolveAccessibleLabel({
|
|
9
|
+
accessibilityLabel,
|
|
10
|
+
'aria-label': ariaLabel
|
|
11
|
+
}) {
|
|
12
|
+
return accessibilityLabel ?? ariaLabel;
|
|
13
|
+
}
|
|
14
|
+
function accessibleLabelAttributes(label) {
|
|
15
|
+
if (label === undefined) {
|
|
16
|
+
return {};
|
|
17
|
+
}
|
|
18
|
+
return {
|
|
19
|
+
accessibilityLabel: label,
|
|
20
|
+
'aria-label': label
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=accessibleLabel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resolveAccessibleLabel","accessibilityLabel","ariaLabel","accessibleLabelAttributes","label","undefined"],"sourceRoot":"../../../src","sources":["utils/accessibleLabel.ts"],"mappings":";;;;;;;AAKO,SAASA,sBAAsBA,CAAC;EACrCC,kBAAkB;EAClB,YAAY,EAAEC;AACM,CAAC,EAAsB;EAC3C,OAAOD,kBAAkB,IAAIC,SAAS;AACxC;AAEO,SAASC,yBAAyBA,CAACC,KAAyB,EAAE;EACnE,IAAIA,KAAK,KAAKC,SAAS,EAAE;IACvB,OAAO,CAAC,CAAC;EACX;EAEA,OAAO;IACLJ,kBAAkB,EAAEG,KAAK;IACzB,YAAY,EAAEA;EAChB,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createPortalFn = void 0;
|
|
7
|
+
var _reactDom = require("react-dom");
|
|
8
|
+
/**
|
|
9
|
+
* Web implementation — statically imports `ReactDOM.createPortal`.
|
|
10
|
+
*
|
|
11
|
+
* The base (`.ts`) module resolves `react-dom` lazily via `require` so native
|
|
12
|
+
* bundles never reference it. That `require` is `undefined` in browser ESM
|
|
13
|
+
* bundles that don't transform mixed CommonJS/ESM (e.g. the docs site's Vite
|
|
14
|
+
* build), so the base module silently resolves `createPortalFn` to `undefined`
|
|
15
|
+
* there. That forces `OverlayContainer` onto its native `Modal` + Reanimated
|
|
16
|
+
* layout-animation path, leaving web overlays (Select, DatePicker) stuck at
|
|
17
|
+
* opacity 0. A static ESM import guarantees `createPortalFn` resolves on web
|
|
18
|
+
* regardless of the bundler's CommonJS interop.
|
|
19
|
+
*/
|
|
20
|
+
const createPortalFn = exports.createPortalFn = _reactDom.createPortal;
|
|
21
|
+
//# sourceMappingURL=createPortal.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactDom","require","createPortalFn","exports","createPortal"],"sourceRoot":"../../../src","sources":["utils/createPortal.web.ts"],"mappings":";;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,cAA8B,GAAAC,OAAA,CAAAD,cAAA,GAAGE,sBAAY","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import { Slot } from '../slot';
|
|
6
|
+
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
export const CalendarGrid = /*#__PURE__*/forwardRef(({
|
|
9
|
+
asChild,
|
|
10
|
+
className,
|
|
11
|
+
style,
|
|
12
|
+
children,
|
|
13
|
+
...props
|
|
14
|
+
}, ref) => {
|
|
15
|
+
const Comp = asChild ? Slot : View;
|
|
16
|
+
return /*#__PURE__*/_jsx(Comp, {
|
|
17
|
+
ref: ref,
|
|
18
|
+
className: className,
|
|
19
|
+
style: style,
|
|
20
|
+
accessibilityRole: "none",
|
|
21
|
+
...props,
|
|
22
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
23
|
+
slot: 'calendar-grid'
|
|
24
|
+
})),
|
|
25
|
+
children: children
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
CalendarGrid.displayName = 'CalendarGrid';
|
|
29
|
+
//# sourceMappingURL=CalendarGrid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","View","Slot","dataAttributes","mergeDataAttributes","jsx","_jsx","CalendarGrid","asChild","className","style","children","props","ref","Comp","accessibilityRole","slot","displayName"],"sourceRoot":"../../../src","sources":["calendar/CalendarGrid.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAA2B,OAAO;AACrD,SAASC,IAAI,QAAwB,cAAc;AACnD,SAASC,IAAI,QAAQ,SAAS;AAC9B,SAASC,cAAc,EAAEC,mBAAmB,QAAQ,yBAAyB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAO9E,OAAO,MAAMC,YAAY,gBAAGP,UAAU,CACpC,CAAC;EAAEQ,OAAO;EAAEC,SAAS;EAAEC,KAAK;EAAEC,QAAQ;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EAC1D,MAAMC,IAAI,GAAGN,OAAO,GAAGN,IAAI,GAAGD,IAAI;EAClC,oBACEK,IAAA,CAACQ,IAAI;IACHD,GAAG,EAAEA,GAAI;IACTJ,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAM;IACbK,iBAAiB,EAAC,MAAM;IAAA,GACpBH,KAAK;IAAA,GACLR,mBAAmB,CAACQ,KAAK,EAAET,cAAc,CAAC;MAAEa,IAAI,EAAE;IAAgB,CAAC,CAAC,CAAC;IAAAL,QAAA,EAExEA;EAAQ,CACL,CAAC;AAEX,CACF,CAAC;AAEDJ,YAAY,CAACU,WAAW,GAAG,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
5
|
+
import { todayMonthId, toMonthId, resolveDateComponentLabels } from '@cdx-ui/formatters';
|
|
6
|
+
import { useControllableState } from '@cdx-ui/utils';
|
|
7
|
+
import { Slot } from '../slot';
|
|
8
|
+
import { accessibleLabelAttributes, resolveAccessibleLabel } from '../utils/accessibleLabel';
|
|
9
|
+
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
10
|
+
import { CalendarContext } from './context';
|
|
11
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
+
export const CalendarRoot = /*#__PURE__*/forwardRef(({
|
|
13
|
+
asChild,
|
|
14
|
+
children,
|
|
15
|
+
value: valueProp,
|
|
16
|
+
defaultValue,
|
|
17
|
+
onValueChange,
|
|
18
|
+
monthId: monthIdProp,
|
|
19
|
+
defaultMonthId,
|
|
20
|
+
onMonthIdChange,
|
|
21
|
+
minValue,
|
|
22
|
+
maxValue,
|
|
23
|
+
disabled = false,
|
|
24
|
+
locale = 'en-US',
|
|
25
|
+
labels: labelsProp,
|
|
26
|
+
accessibilityLabel: accessibilityLabelProp,
|
|
27
|
+
'aria-label': ariaLabelProp,
|
|
28
|
+
...props
|
|
29
|
+
}, ref) => {
|
|
30
|
+
const labels = useMemo(() => resolveDateComponentLabels(labelsProp), [labelsProp]);
|
|
31
|
+
const accessibilityLabel = resolveAccessibleLabel({
|
|
32
|
+
accessibilityLabel: accessibilityLabelProp,
|
|
33
|
+
'aria-label': ariaLabelProp
|
|
34
|
+
});
|
|
35
|
+
const [value, setValue] = useControllableState({
|
|
36
|
+
prop: valueProp,
|
|
37
|
+
defaultProp: defaultValue,
|
|
38
|
+
onChange: onValueChange
|
|
39
|
+
});
|
|
40
|
+
const [monthId, setMonthId] = useControllableState({
|
|
41
|
+
prop: monthIdProp,
|
|
42
|
+
defaultProp: defaultMonthId ?? (value ? toMonthId(value) : todayMonthId()),
|
|
43
|
+
onChange: onMonthIdChange
|
|
44
|
+
});
|
|
45
|
+
const prevValueRef = useRef(value);
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
if (monthIdProp !== undefined) {
|
|
48
|
+
prevValueRef.current = value;
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (value === undefined || prevValueRef.current === value) {
|
|
52
|
+
prevValueRef.current = value;
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
prevValueRef.current = value;
|
|
56
|
+
setMonthId(toMonthId(value));
|
|
57
|
+
}, [monthIdProp, setMonthId, value]);
|
|
58
|
+
const [view, setViewState] = useState('month');
|
|
59
|
+
const setView = useCallback(next => {
|
|
60
|
+
setViewState(next);
|
|
61
|
+
}, []);
|
|
62
|
+
const contextValue = useMemo(() => ({
|
|
63
|
+
value,
|
|
64
|
+
onValueChange: setValue,
|
|
65
|
+
monthId: monthId ?? todayMonthId(),
|
|
66
|
+
onMonthIdChange: setMonthId,
|
|
67
|
+
minValue,
|
|
68
|
+
maxValue,
|
|
69
|
+
disabled,
|
|
70
|
+
locale,
|
|
71
|
+
labels,
|
|
72
|
+
view,
|
|
73
|
+
setView
|
|
74
|
+
}), [value, setValue, monthId, setMonthId, minValue, maxValue, disabled, locale, labels, view, setView]);
|
|
75
|
+
const Comp = asChild ? Slot : View;
|
|
76
|
+
return /*#__PURE__*/_jsx(CalendarContext.Provider, {
|
|
77
|
+
value: contextValue,
|
|
78
|
+
children: /*#__PURE__*/_jsx(Comp, {
|
|
79
|
+
ref: ref,
|
|
80
|
+
accessibilityRole: "none",
|
|
81
|
+
...props,
|
|
82
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
83
|
+
disabled
|
|
84
|
+
})),
|
|
85
|
+
...accessibleLabelAttributes(accessibilityLabel),
|
|
86
|
+
children: children
|
|
87
|
+
})
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
CalendarRoot.displayName = 'CalendarRoot';
|
|
91
|
+
//# sourceMappingURL=CalendarRoot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useEffect","useMemo","useRef","useState","View","todayMonthId","toMonthId","resolveDateComponentLabels","useControllableState","Slot","accessibleLabelAttributes","resolveAccessibleLabel","dataAttributes","mergeDataAttributes","CalendarContext","jsx","_jsx","CalendarRoot","asChild","children","value","valueProp","defaultValue","onValueChange","monthId","monthIdProp","defaultMonthId","onMonthIdChange","minValue","maxValue","disabled","locale","labels","labelsProp","accessibilityLabel","accessibilityLabelProp","ariaLabelProp","props","ref","setValue","prop","defaultProp","onChange","setMonthId","prevValueRef","undefined","current","view","setViewState","setView","next","contextValue","Comp","Provider","accessibilityRole","displayName"],"sourceRoot":"../../../src","sources":["calendar/CalendarRoot.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createContext, useContext } from 'react';
|
|
4
|
+
export const CalendarContext = /*#__PURE__*/createContext(null);
|
|
5
|
+
export function useCalendarContext() {
|
|
6
|
+
const ctx = useContext(CalendarContext);
|
|
7
|
+
if (!ctx) {
|
|
8
|
+
throw new Error('Calendar compound components must be used within CalendarRoot');
|
|
9
|
+
}
|
|
10
|
+
return ctx;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","useContext","CalendarContext","useCalendarContext","ctx","Error"],"sourceRoot":"../../../src","sources":["calendar/context.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAmBjD,OAAO,MAAMC,eAAe,gBAAGF,aAAa,CAA8B,IAAI,CAAC;AAE/E,OAAO,SAASG,kBAAkBA,CAAA,EAAyB;EACzD,MAAMC,GAAG,GAAGH,UAAU,CAACC,eAAe,CAAC;EACvC,IAAI,CAACE,GAAG,EAAE;IACR,MAAM,IAAIC,KAAK,CAAC,+DAA+D,CAAC;EAClF;EACA,OAAOD,GAAG;AACZ","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CalendarRoot","CalendarGrid","useCalendarContext"],"sourceRoot":"../../../src","sources":["calendar/index.ts"],"mappings":";;AAAA,SAASA,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,kBAAkB,QAA2B,WAAW","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["calendar/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -3,12 +3,21 @@
|
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import { Pressable } from 'react-native';
|
|
5
5
|
import { VisuallyHidden } from '@react-aria/visually-hidden';
|
|
6
|
+
import { composeEventHandlers } from '@cdx-ui/utils';
|
|
6
7
|
import { useFocusRing } from '@react-native-aria/focus';
|
|
7
8
|
import { Slot } from '../slot';
|
|
8
9
|
import { dataAttributes, mergeDataAttributes } from '../utils/dataAttributes';
|
|
9
10
|
import { CheckboxProvider } from './context';
|
|
10
11
|
import { useCheckboxRoot } from './useCheckboxRoot';
|
|
11
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
/**
|
|
14
|
+
* Web Checkbox root.
|
|
15
|
+
*
|
|
16
|
+
* On web, `@react-native-aria/checkbox` re-exports `@react-aria/checkbox`'s
|
|
17
|
+
* `useCheckbox`, whose `inputProps` target a native `<input type="checkbox">`
|
|
18
|
+
* (selection via `onChange`). Toggle must be applied explicitly on the Pressable —
|
|
19
|
+
* `inputProps.onPress` does **not** call `toggleState.toggle()`.
|
|
20
|
+
*/
|
|
12
21
|
export const CheckboxRoot = /*#__PURE__*/forwardRef(({
|
|
13
22
|
asChild,
|
|
14
23
|
children,
|
|
@@ -35,7 +44,8 @@ export const CheckboxRoot = /*#__PURE__*/forwardRef(({
|
|
|
35
44
|
isDisabled,
|
|
36
45
|
isHovered,
|
|
37
46
|
mergedRef,
|
|
38
|
-
inputRef
|
|
47
|
+
inputRef,
|
|
48
|
+
toggle
|
|
39
49
|
} = useCheckboxRoot(props, ref, {
|
|
40
50
|
useInputRefForAria: true
|
|
41
51
|
});
|
|
@@ -43,46 +53,99 @@ export const CheckboxRoot = /*#__PURE__*/forwardRef(({
|
|
|
43
53
|
focusProps,
|
|
44
54
|
isFocusVisible
|
|
45
55
|
} = useFocusRing();
|
|
56
|
+
|
|
57
|
+
// Strip native-input / internal props — they must not land on Pressable.
|
|
58
|
+
const {
|
|
59
|
+
onPress: _onPress,
|
|
60
|
+
onChange: _onChange,
|
|
61
|
+
role: _role,
|
|
62
|
+
tabIndex: _tabIndex,
|
|
63
|
+
disabled: _disabled,
|
|
64
|
+
checked: _checked,
|
|
65
|
+
value: _value,
|
|
66
|
+
type: _type,
|
|
67
|
+
name: _name,
|
|
68
|
+
form: _form,
|
|
69
|
+
required: _required,
|
|
70
|
+
...inputAriaProps
|
|
71
|
+
} = groupItemInputProps;
|
|
72
|
+
const resolvedChecked = !!(isChecked || isCheckedProp);
|
|
73
|
+
const resolvedIndeterminate = !!(isIndeterminate || isIndeterminateProp);
|
|
74
|
+
const resolvedDisabled = !!(isDisabled || isDisabledProp);
|
|
75
|
+
const resolvedReadOnly = !!(isReadOnly || isReadOnlyProp);
|
|
76
|
+
const ariaChecked = resolvedIndeterminate ? 'mixed' : resolvedChecked;
|
|
77
|
+
const handleToggle = () => {
|
|
78
|
+
if (resolvedDisabled || resolvedReadOnly) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
toggle();
|
|
82
|
+
};
|
|
83
|
+
const handleKeyDown = event => {
|
|
84
|
+
if (event.key === ' ' || event.key === 'Spacebar') {
|
|
85
|
+
event.preventDefault();
|
|
86
|
+
handleToggle();
|
|
87
|
+
}
|
|
88
|
+
};
|
|
46
89
|
const contextValue = {
|
|
47
|
-
isChecked:
|
|
48
|
-
isDisabled:
|
|
90
|
+
isChecked: resolvedChecked,
|
|
91
|
+
isDisabled: resolvedDisabled,
|
|
49
92
|
isFocusVisible: isFocusVisible || isFocusVisibleProp,
|
|
50
93
|
isHovered: isHovered || isHoveredProp,
|
|
51
94
|
isInvalid: isInvalid || isInvalidProp,
|
|
52
|
-
isReadOnly:
|
|
53
|
-
isIndeterminate:
|
|
95
|
+
isReadOnly: resolvedReadOnly,
|
|
96
|
+
isIndeterminate: resolvedIndeterminate,
|
|
54
97
|
isPressed,
|
|
55
98
|
isFocused
|
|
56
99
|
};
|
|
57
100
|
const Comp = asChild ? Slot : Pressable;
|
|
58
101
|
return /*#__PURE__*/_jsx(CheckboxProvider, {
|
|
59
102
|
value: contextValue,
|
|
60
|
-
children: /*#__PURE__*/_jsxs(
|
|
61
|
-
...combinedProps,
|
|
62
|
-
ref: mergedRef,
|
|
63
|
-
tabIndex: -1,
|
|
64
|
-
role: "label"
|
|
65
|
-
// eslint-disable-next-line react-native-a11y/has-valid-accessibility-role
|
|
66
|
-
,
|
|
67
|
-
accessibilityRole: "label",
|
|
68
|
-
...mergeDataAttributes(props, dataAttributes({
|
|
69
|
-
checked: isChecked || isCheckedProp,
|
|
70
|
-
disabled: isDisabled || isDisabledProp,
|
|
71
|
-
hover: isHovered || isHoveredProp,
|
|
72
|
-
invalid: isInvalid || isInvalidProp,
|
|
73
|
-
readonly: isReadOnly || isReadOnlyProp,
|
|
74
|
-
active: isPressed,
|
|
75
|
-
focus: isFocused,
|
|
76
|
-
indeterminate: isIndeterminate || isIndeterminateProp,
|
|
77
|
-
focusVisible: isFocusVisible
|
|
78
|
-
})),
|
|
103
|
+
children: /*#__PURE__*/_jsxs(_Fragment, {
|
|
79
104
|
children: [/*#__PURE__*/_jsx(VisuallyHidden, {
|
|
80
105
|
children: /*#__PURE__*/_jsx("input", {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
106
|
+
ref: inputRef,
|
|
107
|
+
type: "checkbox",
|
|
108
|
+
value: combinedProps.value,
|
|
109
|
+
checked: resolvedChecked,
|
|
110
|
+
disabled: resolvedDisabled,
|
|
111
|
+
tabIndex: -1,
|
|
112
|
+
"aria-hidden": true,
|
|
113
|
+
readOnly: true,
|
|
114
|
+
style: {
|
|
115
|
+
pointerEvents: 'none'
|
|
116
|
+
}
|
|
84
117
|
})
|
|
85
|
-
}),
|
|
118
|
+
}), /*#__PURE__*/_jsx(Comp, {
|
|
119
|
+
...combinedProps,
|
|
120
|
+
...inputAriaProps,
|
|
121
|
+
ref: mergedRef,
|
|
122
|
+
role: "checkbox",
|
|
123
|
+
"aria-checked": ariaChecked,
|
|
124
|
+
"aria-disabled": resolvedDisabled || undefined,
|
|
125
|
+
accessibilityRole: "checkbox",
|
|
126
|
+
accessibilityState: {
|
|
127
|
+
checked: resolvedIndeterminate ? 'mixed' : resolvedChecked,
|
|
128
|
+
disabled: resolvedDisabled
|
|
129
|
+
},
|
|
130
|
+
tabIndex: resolvedDisabled ? -1 : 0,
|
|
131
|
+
disabled: resolvedDisabled,
|
|
132
|
+
...focusProps,
|
|
133
|
+
onPress: handleToggle,
|
|
134
|
+
onClick: handleToggle,
|
|
135
|
+
onKeyDown: composeEventHandlers(combinedProps.onKeyDown, handleKeyDown),
|
|
136
|
+
...mergeDataAttributes(props, dataAttributes({
|
|
137
|
+
checked: resolvedChecked,
|
|
138
|
+
disabled: resolvedDisabled,
|
|
139
|
+
hover: isHovered || isHoveredProp,
|
|
140
|
+
invalid: isInvalid || isInvalidProp,
|
|
141
|
+
readonly: resolvedReadOnly,
|
|
142
|
+
active: isPressed,
|
|
143
|
+
focus: isFocused,
|
|
144
|
+
indeterminate: resolvedIndeterminate,
|
|
145
|
+
focusVisible: isFocusVisible || isFocusVisibleProp
|
|
146
|
+
})),
|
|
147
|
+
children: children
|
|
148
|
+
})]
|
|
86
149
|
})
|
|
87
150
|
});
|
|
88
151
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","Pressable","VisuallyHidden","useFocusRing","Slot","dataAttributes","mergeDataAttributes","CheckboxProvider","useCheckboxRoot","jsx","_jsx","jsxs","_jsxs","CheckboxRoot","asChild","children","props","ref","isHovered","isHoveredProp","isFocusVisible","isFocusVisibleProp","isChecked","isCheckedProp","isDisabled","isDisabledProp","isInvalid","isInvalidProp","isReadOnly","isReadOnlyProp","isIndeterminate","isIndeterminateProp","isFocused","isPressed","combinedProps","groupItemInputProps","mergedRef","inputRef","useInputRefForAria","focusProps","contextValue","Comp","
|
|
1
|
+
{"version":3,"names":["forwardRef","Pressable","VisuallyHidden","composeEventHandlers","useFocusRing","Slot","dataAttributes","mergeDataAttributes","CheckboxProvider","useCheckboxRoot","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CheckboxRoot","asChild","children","props","ref","isHovered","isHoveredProp","isFocusVisible","isFocusVisibleProp","isChecked","isCheckedProp","isDisabled","isDisabledProp","isInvalid","isInvalidProp","isReadOnly","isReadOnlyProp","isIndeterminate","isIndeterminateProp","isFocused","isPressed","combinedProps","groupItemInputProps","mergedRef","inputRef","toggle","useInputRefForAria","focusProps","onPress","_onPress","onChange","_onChange","role","_role","tabIndex","_tabIndex","disabled","_disabled","checked","_checked","value","_value","type","_type","name","_name","form","_form","required","_required","inputAriaProps","resolvedChecked","resolvedIndeterminate","resolvedDisabled","resolvedReadOnly","ariaChecked","handleToggle","handleKeyDown","event","key","preventDefault","contextValue","Comp","readOnly","style","pointerEvents","undefined","accessibilityRole","accessibilityState","onClick","onKeyDown","hover","invalid","readonly","active","focus","indeterminate","focusVisible","displayName"],"sourceRoot":"../../../src","sources":["checkbox/CheckboxRoot.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useContext, useRef } from 'react';
|
|
3
|
+
import { useCallback, useContext, useRef } from 'react';
|
|
4
4
|
import { mergeRefs, useFormControlContext } from '@cdx-ui/utils';
|
|
5
5
|
import { useCheckbox } from '@react-native-aria/checkbox';
|
|
6
6
|
import { useHover } from '@react-native-aria/interactions';
|
|
@@ -10,27 +10,35 @@ export function useCheckboxRoot(props, ref, {
|
|
|
10
10
|
useInputRefForAria = false
|
|
11
11
|
} = {}) {
|
|
12
12
|
const formControlContext = useFormControlContext();
|
|
13
|
-
const
|
|
13
|
+
const checkboxGroupContext = useContext(CheckboxGroupContext);
|
|
14
|
+
|
|
15
|
+
// Only pull field-state flags from FormControl — never spread the whole context
|
|
16
|
+
// (ids, setters, htmlProps) onto the host element.
|
|
17
|
+
const isInvalid = props.isInvalid ?? formControlContext.isInvalid;
|
|
18
|
+
const isReadOnly = props.isReadOnly ?? formControlContext.isReadOnly ?? checkboxGroupContext?.state.isReadOnly;
|
|
19
|
+
const isDisabled = props.isDisabled ?? formControlContext.isDisabled ?? checkboxGroupContext?.state.isDisabled;
|
|
20
|
+
const isIndeterminate = props.isIndeterminate;
|
|
21
|
+
const combinedProps = {
|
|
22
|
+
...props,
|
|
14
23
|
isInvalid,
|
|
15
24
|
isReadOnly,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} = {
|
|
19
|
-
...formControlContext,
|
|
20
|
-
...props
|
|
25
|
+
isDisabled,
|
|
26
|
+
isIndeterminate
|
|
21
27
|
};
|
|
22
|
-
const checkboxGroupContext = useContext(CheckboxGroupContext);
|
|
23
28
|
const state = useToggleState({
|
|
24
|
-
...combinedProps,
|
|
25
29
|
defaultSelected: props.defaultIsChecked,
|
|
26
|
-
isSelected: props.isChecked
|
|
30
|
+
isSelected: props.isChecked,
|
|
31
|
+
onChange: props.onChange,
|
|
32
|
+
isReadOnly,
|
|
33
|
+
isDisabled
|
|
27
34
|
});
|
|
28
35
|
const rootRef = useRef(null);
|
|
29
36
|
const inputRef = useRef(null);
|
|
30
37
|
const mergedRootRef = mergeRefs(ref, rootRef);
|
|
31
|
-
const ariaLabel =
|
|
38
|
+
const ariaLabel = props['aria-label'] || props.value || 'Checkbox';
|
|
32
39
|
const groupToggleState = useToggleState(checkboxGroupContext ? {
|
|
33
|
-
isReadOnly: isReadOnly
|
|
40
|
+
isReadOnly: !!isReadOnly,
|
|
41
|
+
isDisabled: !!isDisabled,
|
|
34
42
|
isSelected: checkboxGroupContext.state.isSelected(combinedProps.value),
|
|
35
43
|
onChange(isSelected) {
|
|
36
44
|
if (isSelected) {
|
|
@@ -43,24 +51,29 @@ export function useCheckboxRoot(props, ref, {
|
|
|
43
51
|
} : {
|
|
44
52
|
isSelected: false
|
|
45
53
|
});
|
|
54
|
+
const toggleState = checkboxGroupContext ? groupToggleState : state;
|
|
46
55
|
const {
|
|
47
56
|
inputProps: groupItemInputProps
|
|
48
57
|
} = useCheckbox({
|
|
49
58
|
...combinedProps,
|
|
50
59
|
'aria-label': ariaLabel,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
})
|
|
55
|
-
}, checkboxGroupContext ? groupToggleState : state, useInputRefForAria ? inputRef : rootRef);
|
|
60
|
+
isReadOnly: !!isReadOnly,
|
|
61
|
+
isDisabled: !!isDisabled
|
|
62
|
+
}, toggleState, useInputRefForAria ? inputRef : rootRef);
|
|
56
63
|
const {
|
|
57
64
|
checked: isChecked,
|
|
58
|
-
disabled:
|
|
65
|
+
disabled: isDisabledFromInput
|
|
59
66
|
} = groupItemInputProps;
|
|
60
67
|
const {
|
|
61
68
|
hoverProps,
|
|
62
69
|
isHovered
|
|
63
70
|
} = useHover({}, rootRef);
|
|
71
|
+
const toggle = useCallback(() => {
|
|
72
|
+
if (isDisabled || isReadOnly) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
toggleState.toggle();
|
|
76
|
+
}, [isDisabled, isReadOnly, toggleState]);
|
|
64
77
|
return {
|
|
65
78
|
combinedProps,
|
|
66
79
|
isInvalid,
|
|
@@ -68,11 +81,12 @@ export function useCheckboxRoot(props, ref, {
|
|
|
68
81
|
isIndeterminate,
|
|
69
82
|
groupItemInputProps,
|
|
70
83
|
isChecked,
|
|
71
|
-
isDisabled,
|
|
84
|
+
isDisabled: isDisabledFromInput,
|
|
72
85
|
isHovered,
|
|
73
86
|
hoverProps,
|
|
74
87
|
mergedRef: mergedRootRef,
|
|
75
|
-
inputRef
|
|
88
|
+
inputRef,
|
|
89
|
+
toggle
|
|
76
90
|
};
|
|
77
91
|
}
|
|
78
92
|
//# sourceMappingURL=useCheckboxRoot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","useRef","mergeRefs","useFormControlContext","useCheckbox","useHover","useToggleState","CheckboxGroupContext","useCheckboxRoot","props","ref","useInputRefForAria","formControlContext","isInvalid","isReadOnly","
|
|
1
|
+
{"version":3,"names":["useCallback","useContext","useRef","mergeRefs","useFormControlContext","useCheckbox","useHover","useToggleState","CheckboxGroupContext","useCheckboxRoot","props","ref","useInputRefForAria","formControlContext","checkboxGroupContext","isInvalid","isReadOnly","state","isDisabled","isIndeterminate","combinedProps","defaultSelected","defaultIsChecked","isSelected","isChecked","onChange","rootRef","inputRef","mergedRootRef","ariaLabel","value","groupToggleState","addValue","removeValue","toggleState","inputProps","groupItemInputProps","checked","disabled","isDisabledFromInput","hoverProps","isHovered","toggle","mergedRef"],"sourceRoot":"../../../src","sources":["checkbox/useCheckboxRoot.ts"],"mappings":"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","ignoreList":[]}
|