rn-grid-date-time-picker 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +86 -0
- package/README.md +100 -638
- package/lib/commonjs/adapters/utcMidnight.js +15 -6
- package/lib/commonjs/adapters/utcMidnight.js.map +1 -1
- package/lib/commonjs/components/DateTimePicker.js +484 -85
- package/lib/commonjs/components/DateTimePicker.js.map +1 -1
- package/lib/commonjs/components/calendar/Calendar.js +21 -7
- package/lib/commonjs/components/calendar/Calendar.js.map +1 -1
- package/lib/commonjs/components/calendar/CalendarHeader.js +46 -6
- package/lib/commonjs/components/calendar/CalendarHeader.js.map +1 -1
- package/lib/commonjs/components/calendar/CalendarSwitch.js +150 -0
- package/lib/commonjs/components/calendar/CalendarSwitch.js.map +1 -0
- package/lib/commonjs/components/calendar/DayCell.js +8 -3
- package/lib/commonjs/components/calendar/DayCell.js.map +1 -1
- package/lib/commonjs/components/calendar/DayGrid.js +13 -2
- package/lib/commonjs/components/calendar/DayGrid.js.map +1 -1
- package/lib/commonjs/components/calendar/PeriodGrid.js +3 -1
- package/lib/commonjs/components/calendar/PeriodGrid.js.map +1 -1
- package/lib/commonjs/components/calendar/calendarStyles.js +3 -2
- package/lib/commonjs/components/calendar/calendarStyles.js.map +1 -1
- package/lib/commonjs/components/calendar/localeNames.js +46 -24
- package/lib/commonjs/components/calendar/localeNames.js.map +1 -1
- package/lib/commonjs/components/calendar/selection.js +9 -1
- package/lib/commonjs/components/calendar/selection.js.map +1 -1
- package/lib/commonjs/components/container/DefaultSheet.js +42 -11
- package/lib/commonjs/components/container/DefaultSheet.js.map +1 -1
- package/lib/commonjs/components/container/PickerContainer.js +4 -0
- package/lib/commonjs/components/container/PickerContainer.js.map +1 -1
- package/lib/commonjs/components/container/PickerLayout.js +1 -1
- package/lib/commonjs/components/container/PickerLayout.js.map +1 -1
- package/lib/commonjs/components/container/containerStyles.js +12 -4
- package/lib/commonjs/components/container/containerStyles.js.map +1 -1
- package/lib/commonjs/components/field/RangeFields.js +5 -1
- package/lib/commonjs/components/field/RangeFields.js.map +1 -1
- package/lib/commonjs/components/field/SegmentedInput.js +8 -3
- package/lib/commonjs/components/field/SegmentedInput.js.map +1 -1
- package/lib/commonjs/components/field/ValueField.js +64 -8
- package/lib/commonjs/components/field/ValueField.js.map +1 -1
- package/lib/commonjs/components/field/fieldStyles.js +17 -0
- package/lib/commonjs/components/field/fieldStyles.js.map +1 -1
- package/lib/commonjs/components/field/fieldText.js +29 -13
- package/lib/commonjs/components/field/fieldText.js.map +1 -1
- package/lib/commonjs/components/hooks/useBottomInset.js +32 -0
- package/lib/commonjs/components/hooks/useBottomInset.js.map +1 -0
- package/lib/commonjs/components/hooks/useKeyboardFold.js +36 -13
- package/lib/commonjs/components/hooks/useKeyboardFold.js.map +1 -1
- package/lib/commonjs/components/hooks/useOpenPicker.js +39 -17
- package/lib/commonjs/components/hooks/useOpenPicker.js.map +1 -1
- package/lib/commonjs/components/hooks/useTypedSegments.js +6 -2
- package/lib/commonjs/components/hooks/useTypedSegments.js.map +1 -1
- package/lib/commonjs/components/theme/defaultStrings.js +13 -3
- package/lib/commonjs/components/theme/defaultStrings.js.map +1 -1
- package/lib/commonjs/components/theme/direction.js +17 -0
- package/lib/commonjs/components/theme/direction.js.map +1 -0
- package/lib/commonjs/components/theme/numerals.js +16 -0
- package/lib/commonjs/components/theme/numerals.js.map +1 -0
- package/lib/commonjs/components/theme/styleKeys.js +10 -2
- package/lib/commonjs/components/theme/styleKeys.js.map +1 -1
- package/lib/commonjs/components/theme/tokens.js +4 -0
- package/lib/commonjs/components/theme/tokens.js.map +1 -1
- package/lib/commonjs/components/time/TimeRow.js +10 -2
- package/lib/commonjs/components/time/TimeRow.js.map +1 -1
- package/lib/commonjs/components/time/TypedTime.js +3 -1
- package/lib/commonjs/components/time/TypedTime.js.map +1 -1
- package/lib/commonjs/components/time/Wheel.js +20 -3
- package/lib/commonjs/components/time/Wheel.js.map +1 -1
- package/lib/commonjs/components/time/timeStyles.js +4 -5
- package/lib/commonjs/components/time/timeStyles.js.map +1 -1
- package/lib/commonjs/components/types.js +10 -0
- package/lib/commonjs/components/types.js.map +1 -1
- package/lib/commonjs/core/calendarSystem.js +123 -22
- package/lib/commonjs/core/calendarSystem.js.map +1 -1
- package/lib/commonjs/core/digits.js +25 -0
- package/lib/commonjs/core/digits.js.map +1 -0
- package/lib/commonjs/core/draft.js +31 -10
- package/lib/commonjs/core/draft.js.map +1 -1
- package/lib/commonjs/core/locale.js +20 -4
- package/lib/commonjs/core/locale.js.map +1 -1
- package/lib/commonjs/core/numerals.js +46 -0
- package/lib/commonjs/core/numerals.js.map +1 -0
- package/lib/commonjs/core/segmentEditor.js +9 -0
- package/lib/commonjs/core/segmentEditor.js.map +1 -1
- package/lib/commonjs/core/segments.js +2 -11
- package/lib/commonjs/core/segments.js.map +1 -1
- package/lib/commonjs/core/selectionRules.js +2 -1
- package/lib/commonjs/core/selectionRules.js.map +1 -1
- package/lib/commonjs/core/timeEntry.js +7 -91
- package/lib/commonjs/core/timeEntry.js.map +1 -1
- package/lib/commonjs/icons/index.js +5 -1
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/index.js +20 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/adapters/utcMidnight.js +14 -5
- package/lib/module/adapters/utcMidnight.js.map +1 -1
- package/lib/module/components/DateTimePicker.js +490 -91
- package/lib/module/components/DateTimePicker.js.map +1 -1
- package/lib/module/components/calendar/Calendar.js +25 -11
- package/lib/module/components/calendar/Calendar.js.map +1 -1
- package/lib/module/components/calendar/CalendarHeader.js +47 -7
- package/lib/module/components/calendar/CalendarHeader.js.map +1 -1
- package/lib/module/components/calendar/CalendarSwitch.js +145 -0
- package/lib/module/components/calendar/CalendarSwitch.js.map +1 -0
- package/lib/module/components/calendar/DayCell.js +8 -3
- package/lib/module/components/calendar/DayCell.js.map +1 -1
- package/lib/module/components/calendar/DayGrid.js +14 -3
- package/lib/module/components/calendar/DayGrid.js.map +1 -1
- package/lib/module/components/calendar/PeriodGrid.js +3 -1
- package/lib/module/components/calendar/PeriodGrid.js.map +1 -1
- package/lib/module/components/calendar/calendarStyles.js +3 -2
- package/lib/module/components/calendar/calendarStyles.js.map +1 -1
- package/lib/module/components/calendar/localeNames.js +46 -24
- package/lib/module/components/calendar/localeNames.js.map +1 -1
- package/lib/module/components/calendar/selection.js +7 -0
- package/lib/module/components/calendar/selection.js.map +1 -1
- package/lib/module/components/container/DefaultSheet.js +42 -12
- package/lib/module/components/container/DefaultSheet.js.map +1 -1
- package/lib/module/components/container/PickerContainer.js +4 -0
- package/lib/module/components/container/PickerContainer.js.map +1 -1
- package/lib/module/components/container/PickerLayout.js +1 -1
- package/lib/module/components/container/PickerLayout.js.map +1 -1
- package/lib/module/components/container/containerStyles.js +11 -3
- package/lib/module/components/container/containerStyles.js.map +1 -1
- package/lib/module/components/field/RangeFields.js +5 -1
- package/lib/module/components/field/RangeFields.js.map +1 -1
- package/lib/module/components/field/SegmentedInput.js +8 -3
- package/lib/module/components/field/SegmentedInput.js.map +1 -1
- package/lib/module/components/field/ValueField.js +66 -10
- package/lib/module/components/field/ValueField.js.map +1 -1
- package/lib/module/components/field/fieldStyles.js +17 -0
- package/lib/module/components/field/fieldStyles.js.map +1 -1
- package/lib/module/components/field/fieldText.js +28 -11
- package/lib/module/components/field/fieldText.js.map +1 -1
- package/lib/module/components/hooks/useBottomInset.js +27 -0
- package/lib/module/components/hooks/useBottomInset.js.map +1 -0
- package/lib/module/components/hooks/useKeyboardFold.js +33 -12
- package/lib/module/components/hooks/useKeyboardFold.js.map +1 -1
- package/lib/module/components/hooks/useOpenPicker.js +39 -17
- package/lib/module/components/hooks/useOpenPicker.js.map +1 -1
- package/lib/module/components/hooks/useTypedSegments.js +6 -2
- package/lib/module/components/hooks/useTypedSegments.js.map +1 -1
- package/lib/module/components/theme/defaultStrings.js +11 -2
- package/lib/module/components/theme/defaultStrings.js.map +1 -1
- package/lib/module/components/theme/direction.js +13 -0
- package/lib/module/components/theme/direction.js.map +1 -0
- package/lib/module/components/theme/numerals.js +12 -0
- package/lib/module/components/theme/numerals.js.map +1 -0
- package/lib/module/components/theme/styleKeys.js +10 -2
- package/lib/module/components/theme/styleKeys.js.map +1 -1
- package/lib/module/components/theme/tokens.js +4 -0
- package/lib/module/components/theme/tokens.js.map +1 -1
- package/lib/module/components/time/TimeRow.js +11 -3
- package/lib/module/components/time/TimeRow.js.map +1 -1
- package/lib/module/components/time/TypedTime.js +3 -1
- package/lib/module/components/time/TypedTime.js.map +1 -1
- package/lib/module/components/time/Wheel.js +18 -2
- package/lib/module/components/time/Wheel.js.map +1 -1
- package/lib/module/components/time/timeStyles.js +4 -5
- package/lib/module/components/time/timeStyles.js.map +1 -1
- package/lib/module/components/types.js +10 -0
- package/lib/module/components/types.js.map +1 -1
- package/lib/module/core/calendarSystem.js +118 -19
- package/lib/module/core/calendarSystem.js.map +1 -1
- package/lib/module/core/digits.js +20 -0
- package/lib/module/core/digits.js.map +1 -0
- package/lib/module/core/draft.js +29 -9
- package/lib/module/core/draft.js.map +1 -1
- package/lib/module/core/locale.js +18 -3
- package/lib/module/core/locale.js.map +1 -1
- package/lib/module/core/numerals.js +39 -0
- package/lib/module/core/numerals.js.map +1 -0
- package/lib/module/core/segmentEditor.js +9 -0
- package/lib/module/core/segmentEditor.js.map +1 -1
- package/lib/module/core/segments.js +0 -8
- package/lib/module/core/segments.js.map +1 -1
- package/lib/module/core/selectionRules.js +2 -1
- package/lib/module/core/selectionRules.js.map +1 -1
- package/lib/module/core/timeEntry.js +7 -89
- package/lib/module/core/timeEntry.js.map +1 -1
- package/lib/module/icons/index.js +5 -1
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/commonjs/src/adapters/utcMidnight.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/DateTimePicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/Calendar.d.ts +8 -4
- package/lib/typescript/commonjs/src/components/calendar/Calendar.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/CalendarHeader.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/CalendarSwitch.d.ts +26 -0
- package/lib/typescript/commonjs/src/components/calendar/CalendarSwitch.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/calendar/DayCell.d.ts +1 -1
- package/lib/typescript/commonjs/src/components/calendar/DayCell.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/DayGrid.d.ts +2 -0
- package/lib/typescript/commonjs/src/components/calendar/DayGrid.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/PeriodGrid.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/calendarStyles.d.ts +1 -1
- package/lib/typescript/commonjs/src/components/calendar/calendarStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/localeNames.d.ts +8 -3
- package/lib/typescript/commonjs/src/components/calendar/localeNames.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/calendar/selection.d.ts +2 -0
- package/lib/typescript/commonjs/src/components/calendar/selection.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/container/DefaultSheet.d.ts +10 -2
- package/lib/typescript/commonjs/src/components/container/DefaultSheet.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/container/PickerContainer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/container/containerStyles.d.ts +6 -0
- package/lib/typescript/commonjs/src/components/container/containerStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/field/RangeFields.d.ts +5 -0
- package/lib/typescript/commonjs/src/components/field/RangeFields.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/field/SegmentedInput.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/field/ValueField.d.ts +7 -0
- package/lib/typescript/commonjs/src/components/field/ValueField.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/field/fieldStyles.d.ts +15 -0
- package/lib/typescript/commonjs/src/components/field/fieldStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/field/fieldText.d.ts +14 -5
- package/lib/typescript/commonjs/src/components/field/fieldText.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/hooks/useBottomInset.d.ts +8 -0
- package/lib/typescript/commonjs/src/components/hooks/useBottomInset.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/hooks/useKeyboardFold.d.ts +10 -2
- package/lib/typescript/commonjs/src/components/hooks/useKeyboardFold.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/hooks/useOpenPicker.d.ts +2 -1
- package/lib/typescript/commonjs/src/components/hooks/useOpenPicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/hooks/useTypedSegments.d.ts +3 -2
- package/lib/typescript/commonjs/src/components/hooks/useTypedSegments.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/theme/defaultStrings.d.ts +13 -2
- package/lib/typescript/commonjs/src/components/theme/defaultStrings.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/theme/direction.d.ts +8 -0
- package/lib/typescript/commonjs/src/components/theme/direction.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/theme/numerals.d.ts +7 -0
- package/lib/typescript/commonjs/src/components/theme/numerals.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/components/theme/styleKeys.d.ts +1 -1
- package/lib/typescript/commonjs/src/components/theme/styleKeys.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/theme/tokens.d.ts +3 -1
- package/lib/typescript/commonjs/src/components/theme/tokens.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/time/TimeRow.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/time/TypedTime.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/time/Wheel.d.ts +5 -0
- package/lib/typescript/commonjs/src/components/time/Wheel.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/time/timeStyles.d.ts +0 -2
- package/lib/typescript/commonjs/src/components/time/timeStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/components/types.d.ts +84 -4
- package/lib/typescript/commonjs/src/components/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/calendarSystem.d.ts +20 -5
- package/lib/typescript/commonjs/src/core/calendarSystem.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/digits.d.ts +3 -0
- package/lib/typescript/commonjs/src/core/digits.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/core/draft.d.ts +12 -1
- package/lib/typescript/commonjs/src/core/draft.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/locale.d.ts +6 -0
- package/lib/typescript/commonjs/src/core/locale.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/numerals.d.ts +15 -0
- package/lib/typescript/commonjs/src/core/numerals.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/core/segmentEditor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/segments.d.ts +0 -2
- package/lib/typescript/commonjs/src/core/segments.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/selectionRules.d.ts +3 -2
- package/lib/typescript/commonjs/src/core/selectionRules.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/core/timeEntry.d.ts +4 -24
- package/lib/typescript/commonjs/src/core/timeEntry.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/icons/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +7 -3
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/adapters/utcMidnight.d.ts.map +1 -1
- package/lib/typescript/module/src/components/DateTimePicker.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/Calendar.d.ts +8 -4
- package/lib/typescript/module/src/components/calendar/Calendar.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/CalendarHeader.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/CalendarSwitch.d.ts +26 -0
- package/lib/typescript/module/src/components/calendar/CalendarSwitch.d.ts.map +1 -0
- package/lib/typescript/module/src/components/calendar/DayCell.d.ts +1 -1
- package/lib/typescript/module/src/components/calendar/DayCell.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/DayGrid.d.ts +2 -0
- package/lib/typescript/module/src/components/calendar/DayGrid.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/PeriodGrid.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/calendarStyles.d.ts +1 -1
- package/lib/typescript/module/src/components/calendar/calendarStyles.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/localeNames.d.ts +8 -3
- package/lib/typescript/module/src/components/calendar/localeNames.d.ts.map +1 -1
- package/lib/typescript/module/src/components/calendar/selection.d.ts +2 -0
- package/lib/typescript/module/src/components/calendar/selection.d.ts.map +1 -1
- package/lib/typescript/module/src/components/container/DefaultSheet.d.ts +10 -2
- package/lib/typescript/module/src/components/container/DefaultSheet.d.ts.map +1 -1
- package/lib/typescript/module/src/components/container/PickerContainer.d.ts.map +1 -1
- package/lib/typescript/module/src/components/container/containerStyles.d.ts +6 -0
- package/lib/typescript/module/src/components/container/containerStyles.d.ts.map +1 -1
- package/lib/typescript/module/src/components/field/RangeFields.d.ts +5 -0
- package/lib/typescript/module/src/components/field/RangeFields.d.ts.map +1 -1
- package/lib/typescript/module/src/components/field/SegmentedInput.d.ts.map +1 -1
- package/lib/typescript/module/src/components/field/ValueField.d.ts +7 -0
- package/lib/typescript/module/src/components/field/ValueField.d.ts.map +1 -1
- package/lib/typescript/module/src/components/field/fieldStyles.d.ts +15 -0
- package/lib/typescript/module/src/components/field/fieldStyles.d.ts.map +1 -1
- package/lib/typescript/module/src/components/field/fieldText.d.ts +14 -5
- package/lib/typescript/module/src/components/field/fieldText.d.ts.map +1 -1
- package/lib/typescript/module/src/components/hooks/useBottomInset.d.ts +8 -0
- package/lib/typescript/module/src/components/hooks/useBottomInset.d.ts.map +1 -0
- package/lib/typescript/module/src/components/hooks/useKeyboardFold.d.ts +10 -2
- package/lib/typescript/module/src/components/hooks/useKeyboardFold.d.ts.map +1 -1
- package/lib/typescript/module/src/components/hooks/useOpenPicker.d.ts +2 -1
- package/lib/typescript/module/src/components/hooks/useOpenPicker.d.ts.map +1 -1
- package/lib/typescript/module/src/components/hooks/useTypedSegments.d.ts +3 -2
- package/lib/typescript/module/src/components/hooks/useTypedSegments.d.ts.map +1 -1
- package/lib/typescript/module/src/components/theme/defaultStrings.d.ts +13 -2
- package/lib/typescript/module/src/components/theme/defaultStrings.d.ts.map +1 -1
- package/lib/typescript/module/src/components/theme/direction.d.ts +8 -0
- package/lib/typescript/module/src/components/theme/direction.d.ts.map +1 -0
- package/lib/typescript/module/src/components/theme/numerals.d.ts +7 -0
- package/lib/typescript/module/src/components/theme/numerals.d.ts.map +1 -0
- package/lib/typescript/module/src/components/theme/styleKeys.d.ts +1 -1
- package/lib/typescript/module/src/components/theme/styleKeys.d.ts.map +1 -1
- package/lib/typescript/module/src/components/theme/tokens.d.ts +3 -1
- package/lib/typescript/module/src/components/theme/tokens.d.ts.map +1 -1
- package/lib/typescript/module/src/components/time/TimeRow.d.ts.map +1 -1
- package/lib/typescript/module/src/components/time/TypedTime.d.ts.map +1 -1
- package/lib/typescript/module/src/components/time/Wheel.d.ts +5 -0
- package/lib/typescript/module/src/components/time/Wheel.d.ts.map +1 -1
- package/lib/typescript/module/src/components/time/timeStyles.d.ts +0 -2
- package/lib/typescript/module/src/components/time/timeStyles.d.ts.map +1 -1
- package/lib/typescript/module/src/components/types.d.ts +84 -4
- package/lib/typescript/module/src/components/types.d.ts.map +1 -1
- package/lib/typescript/module/src/core/calendarSystem.d.ts +20 -5
- package/lib/typescript/module/src/core/calendarSystem.d.ts.map +1 -1
- package/lib/typescript/module/src/core/digits.d.ts +3 -0
- package/lib/typescript/module/src/core/digits.d.ts.map +1 -0
- package/lib/typescript/module/src/core/draft.d.ts +12 -1
- package/lib/typescript/module/src/core/draft.d.ts.map +1 -1
- package/lib/typescript/module/src/core/locale.d.ts +6 -0
- package/lib/typescript/module/src/core/locale.d.ts.map +1 -1
- package/lib/typescript/module/src/core/numerals.d.ts +15 -0
- package/lib/typescript/module/src/core/numerals.d.ts.map +1 -0
- package/lib/typescript/module/src/core/segmentEditor.d.ts.map +1 -1
- package/lib/typescript/module/src/core/segments.d.ts +0 -2
- package/lib/typescript/module/src/core/segments.d.ts.map +1 -1
- package/lib/typescript/module/src/core/selectionRules.d.ts +3 -2
- package/lib/typescript/module/src/core/selectionRules.d.ts.map +1 -1
- package/lib/typescript/module/src/core/timeEntry.d.ts +4 -24
- package/lib/typescript/module/src/core/timeEntry.d.ts.map +1 -1
- package/lib/typescript/module/src/icons/index.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +7 -3
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/package.json +22 -7
- package/src/adapters/utcMidnight.ts +14 -5
- package/src/components/DateTimePicker.tsx +607 -108
- package/src/components/calendar/Calendar.tsx +54 -16
- package/src/components/calendar/CalendarHeader.tsx +41 -9
- package/src/components/calendar/CalendarSwitch.tsx +170 -0
- package/src/components/calendar/DayCell.tsx +16 -4
- package/src/components/calendar/DayGrid.tsx +18 -3
- package/src/components/calendar/PeriodGrid.tsx +3 -1
- package/src/components/calendar/calendarStyles.ts +3 -2
- package/src/components/calendar/localeNames.ts +52 -22
- package/src/components/calendar/selection.ts +8 -0
- package/src/components/container/DefaultSheet.tsx +60 -14
- package/src/components/container/PickerContainer.tsx +4 -0
- package/src/components/container/PickerLayout.tsx +1 -1
- package/src/components/container/containerStyles.ts +12 -3
- package/src/components/field/RangeFields.tsx +12 -2
- package/src/components/field/SegmentedInput.tsx +8 -3
- package/src/components/field/ValueField.tsx +94 -18
- package/src/components/field/fieldStyles.ts +6 -0
- package/src/components/field/fieldText.ts +68 -15
- package/src/components/hooks/useBottomInset.ts +33 -0
- package/src/components/hooks/useKeyboardFold.ts +41 -13
- package/src/components/hooks/useOpenPicker.ts +41 -18
- package/src/components/hooks/useTypedSegments.ts +7 -3
- package/src/components/theme/defaultStrings.ts +29 -4
- package/src/components/theme/direction.ts +12 -0
- package/src/components/theme/numerals.ts +11 -0
- package/src/components/theme/styleKeys.ts +18 -1
- package/src/components/theme/tokens.ts +5 -1
- package/src/components/time/TimeRow.tsx +23 -3
- package/src/components/time/TypedTime.tsx +3 -1
- package/src/components/time/Wheel.tsx +19 -5
- package/src/components/time/timeStyles.ts +2 -3
- package/src/components/types.ts +86 -4
- package/src/core/calendarSystem.ts +145 -21
- package/src/core/digits.ts +21 -0
- package/src/core/draft.ts +41 -13
- package/src/core/locale.ts +20 -3
- package/src/core/numerals.ts +35 -0
- package/src/core/segmentEditor.ts +13 -0
- package/src/core/segments.ts +0 -8
- package/src/core/selectionRules.ts +3 -2
- package/src/core/timeEntry.ts +6 -96
- package/src/icons/index.tsx +3 -1
- package/src/index.tsx +12 -2
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The zero of each decimal digit block a keyboard may type in: Arabic-Indic
|
|
5
|
+
* (٠–٩), Persian (۰–۹), N'Ko, the Indic scripts, Thai, Lao, Tibetan, Myanmar,
|
|
6
|
+
* Khmer, Mongolian and full-width. Each block runs zero to nine in order.
|
|
7
|
+
*/
|
|
8
|
+
const DIGIT_ZEROS = [0x0660, 0x06f0, 0x07c0, 0x0966, 0x09e6, 0x0a66, 0x0ae6, 0x0b66, 0x0be6, 0x0c66, 0x0ce6, 0x0d66, 0x0e50, 0x0ed0, 0x0f20, 0x1040, 0x17e0, 0x1810, 0xff10];
|
|
9
|
+
|
|
10
|
+
/** Any decimal digits as 0–9 ('٢٥' → '25'); other characters are kept. */
|
|
11
|
+
export const toLatinDigits = text => {
|
|
12
|
+
let out = '';
|
|
13
|
+
for (const ch of text) {
|
|
14
|
+
const code = ch.charCodeAt(0);
|
|
15
|
+
const zero = DIGIT_ZEROS.find(z => code >= z && code <= z + 9);
|
|
16
|
+
out += zero === undefined ? ch : String(code - zero);
|
|
17
|
+
}
|
|
18
|
+
return out;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=digits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DIGIT_ZEROS","toLatinDigits","text","out","ch","code","charCodeAt","zero","find","z","undefined","String"],"sourceRoot":"../../../src","sources":["core/digits.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG,CAClB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EACtE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EACtE,MAAM,CACP;;AAED;AACA,OAAO,MAAMC,aAAa,GAAIC,IAAY,IAAa;EACrD,IAAIC,GAAG,GAAG,EAAE;EACZ,KAAK,MAAMC,EAAE,IAAIF,IAAI,EAAE;IACrB,MAAMG,IAAI,GAAGD,EAAE,CAACE,UAAU,CAAC,CAAC,CAAC;IAC7B,MAAMC,IAAI,GAAGP,WAAW,CAACQ,IAAI,CAAEC,CAAC,IAAKJ,IAAI,IAAII,CAAC,IAAIJ,IAAI,IAAII,CAAC,GAAG,CAAC,CAAC;IAChEN,GAAG,IAAII,IAAI,KAAKG,SAAS,GAAGN,EAAE,GAAGO,MAAM,CAACN,IAAI,GAAGE,IAAI,CAAC;EACtD;EACA,OAAOJ,GAAG;AACZ,CAAC","ignoreList":[]}
|
package/lib/module/core/draft.js
CHANGED
|
@@ -82,8 +82,12 @@ export const createDraft = (mode, value, opts) => {
|
|
|
82
82
|
};
|
|
83
83
|
}
|
|
84
84
|
if (mode === 'multiple') {
|
|
85
|
-
|
|
86
|
-
const
|
|
85
|
+
// One slot per day: a later value on a day already listed is dropped.
|
|
86
|
+
const slots = sortSlots(splitMultiple(safe).map(w => slotFrom(w, opts)).filter((s, i, all) => s.value && all.findIndex(o => isSameDay(o.value?.date, s.value?.date)) === i));
|
|
87
|
+
const times = slots.map(s => s.value?.time ?? null);
|
|
88
|
+
const first = times[0] ?? null;
|
|
89
|
+
const sameTime = times.every(t => t?.hour === first?.hour && t?.minute === first?.minute);
|
|
90
|
+
const sharedTime = opts.type === 'datetime' && sameTime ? first : null;
|
|
87
91
|
return {
|
|
88
92
|
mode,
|
|
89
93
|
slots,
|
|
@@ -108,11 +112,15 @@ const withDay = (slot, day, opts, newDayTime) => {
|
|
|
108
112
|
}
|
|
109
113
|
};
|
|
110
114
|
};
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Whether a range may start and end on one day: date-time ranges and
|
|
118
|
+
* `allowSameDay` date ranges, as long as minDays allows a 1-day range.
|
|
119
|
+
*/
|
|
120
|
+
export const sameDayRangeOk = opts => (opts.type === 'datetime' || !!opts.range?.allowSameDay) && (opts.range?.minDays ?? 1) <= 1;
|
|
111
121
|
const pickRangeDay = (draft, day, opts, eq) => {
|
|
112
122
|
const from = draft.from.value?.date;
|
|
113
123
|
const to = draft.to.value?.date;
|
|
114
|
-
// A same-day range is 1 day long, so it's only an end when minDays allows it.
|
|
115
|
-
const allowSameDay = (opts.type === 'datetime' || !!opts.range?.allowSameDay) && (opts.range?.minDays ?? 1) <= 1;
|
|
116
124
|
if (!from) return {
|
|
117
125
|
...draft,
|
|
118
126
|
from: withDay(draft.from, day, opts, eq)
|
|
@@ -123,7 +131,8 @@ const pickRangeDay = (draft, day, opts, eq) => {
|
|
|
123
131
|
...draft,
|
|
124
132
|
from: withDay(draft.from, day, opts, eq)
|
|
125
133
|
};
|
|
126
|
-
|
|
134
|
+
// The start tapped again, where it can't also be the end: deselects it.
|
|
135
|
+
if (order === 0 && !sameDayRangeOk(opts)) return {
|
|
127
136
|
...draft,
|
|
128
137
|
from: {
|
|
129
138
|
...draft.from,
|
|
@@ -185,22 +194,33 @@ export const selectDay = (draft, day, opts, newDayTime) => {
|
|
|
185
194
|
},
|
|
186
195
|
initialWire: ''
|
|
187
196
|
}]),
|
|
188
|
-
|
|
197
|
+
// The first date's time becomes the shared one; dates with their own
|
|
198
|
+
// (different) times keep them.
|
|
199
|
+
sharedTime: opts.type === 'datetime' && !perDate && draft.slots.length === 0 ? draft.sharedTime ?? time : draft.sharedTime
|
|
189
200
|
};
|
|
190
201
|
};
|
|
191
202
|
|
|
192
203
|
/**
|
|
193
204
|
* From/To layout: a tap fills the end being edited. An end that would come
|
|
194
|
-
* before the start (or after the end) clears the other one.
|
|
205
|
+
* before the start (or after the end) clears the other one. The start tapped
|
|
206
|
+
* again as the end, where a range can't be one day, deselects the start, as
|
|
207
|
+
* in the single field.
|
|
195
208
|
*/
|
|
196
209
|
export const setRangeEnd = (draft, day, end, opts, newDayTime) => {
|
|
197
210
|
if (draft.mode !== 'range') return draft;
|
|
198
|
-
const sameDayOk = opts
|
|
211
|
+
const sameDayOk = sameDayRangeOk(opts);
|
|
199
212
|
const fits = (from, to) => {
|
|
200
213
|
if (!from || !to) return true;
|
|
201
214
|
const order = compareCalendarDates(to, from);
|
|
202
215
|
return order > 0 || order === 0 && sameDayOk;
|
|
203
216
|
};
|
|
217
|
+
if (end === 'to' && !sameDayOk && isSameDay(draft.from.value?.date, day)) return {
|
|
218
|
+
...draft,
|
|
219
|
+
from: {
|
|
220
|
+
...draft.from,
|
|
221
|
+
value: null
|
|
222
|
+
}
|
|
223
|
+
};
|
|
204
224
|
if (end === 'from') {
|
|
205
225
|
const from = withDay(draft.from, day, opts, newDayTime);
|
|
206
226
|
const keepTo = fits(day, draft.to.value?.date);
|
|
@@ -332,7 +352,7 @@ const effectiveValue = (slot, draft, opts) => {
|
|
|
332
352
|
if (draft.mode === 'multiple' && opts.type === 'datetime' && opts.multiple?.timeMode !== 'perDate') {
|
|
333
353
|
return {
|
|
334
354
|
...slot.value,
|
|
335
|
-
time: draft.sharedTime
|
|
355
|
+
time: draft.sharedTime ?? slot.value.time
|
|
336
356
|
};
|
|
337
357
|
}
|
|
338
358
|
return slot.value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["compareCalendarDates","daysBetween","isSameDay","toZonedDateTime","DEFAULT_TIME","hour","minute","contextOf","opts","type","timeZone","zone","parseWire","wire","adapter","parse","slotFrom","value","initialWire","emptySlot","splitMultiple","Array","isArray","filter","Boolean","readRange","from","to","sortSlots","slots","sort","a","b","date","createDraft","mode","safe","map","w","s","sharedTime","time","slot","timeForNewDay","existing","newDayTime","defaultTime","withDay","day","pickRangeDay","draft","eq","allowSameDay","range","minDays","order","reselect","Math","abs","selectDay","findIndex","_","i","max","multiple","maxSelections","undefined","length","perDate","timeMode","setRangeEnd","end","sameDayOk","fits","keepTo","keepFrom","setSlotTime","setTime","target","setSlotValue","clearDraft","effectiveValue","isComplete","validateDraft","maxDays","every","sameValue","slotToWire","formatUnchanged","format","draftToWire","emptyDraft"],"sourceRoot":"../../../src","sources":["core/draft.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["compareCalendarDates","daysBetween","isSameDay","toZonedDateTime","DEFAULT_TIME","hour","minute","contextOf","opts","type","timeZone","zone","parseWire","wire","adapter","parse","slotFrom","value","initialWire","emptySlot","splitMultiple","Array","isArray","filter","Boolean","readRange","from","to","sortSlots","slots","sort","a","b","date","createDraft","mode","safe","map","w","s","i","all","findIndex","o","times","time","first","sameTime","every","t","sharedTime","slot","timeForNewDay","existing","newDayTime","defaultTime","withDay","day","sameDayRangeOk","range","allowSameDay","minDays","pickRangeDay","draft","eq","order","reselect","Math","abs","selectDay","_","max","multiple","maxSelections","undefined","length","perDate","timeMode","setRangeEnd","end","sameDayOk","fits","keepTo","keepFrom","setSlotTime","setTime","target","setSlotValue","clearDraft","effectiveValue","isComplete","validateDraft","maxDays","sameValue","slotToWire","formatUnchanged","format","draftToWire","emptyDraft"],"sourceRoot":"../../../src","sources":["core/draft.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,7 +11,21 @@ const SEPARATORS = ['/', '-', '.'];
|
|
|
11
11
|
const DATE_TOKENS = {
|
|
12
12
|
day: 'dd',
|
|
13
13
|
month: 'MM',
|
|
14
|
-
year: 'yyyy'
|
|
14
|
+
year: 'yyyy',
|
|
15
|
+
// Hermes on Android labels the year of some locales (ar-SA) this way.
|
|
16
|
+
yearName: 'yyyy'
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* The locale with a calendar, keeping any Unicode extension it already has
|
|
21
|
+
* ('ar-SA-u-nu-arab' → 'ar-SA-u-ca-gregory-nu-arab'). Some engines write a
|
|
22
|
+
* locale in its own calendar by default (iOS: Hijri for 'ar-SA').
|
|
23
|
+
*/
|
|
24
|
+
export const withCalendar = (locale, calendar) => {
|
|
25
|
+
const [base, ext] = locale.split(/-u-/i);
|
|
26
|
+
if (ext === undefined) return `${locale}-u-ca-${calendar}`;
|
|
27
|
+
const rest = ext.replace(/(^|-)ca(-[a-z0-9]{3,8})+/i, '').replace(/^-/, '');
|
|
28
|
+
return `${base}-u-ca-${calendar}${rest ? `-${rest}` : ''}`;
|
|
15
29
|
};
|
|
16
30
|
|
|
17
31
|
/** The device locale (a BCP-47 tag), or 'en-US'. */
|
|
@@ -31,14 +45,15 @@ export const defaultLocale = () => {
|
|
|
31
45
|
*/
|
|
32
46
|
export const deriveDateFormat = locale => {
|
|
33
47
|
try {
|
|
34
|
-
const parts = new Intl.DateTimeFormat(locale, {
|
|
48
|
+
const parts = new Intl.DateTimeFormat(withCalendar(locale, 'gregory'), {
|
|
35
49
|
year: 'numeric',
|
|
36
50
|
month: '2-digit',
|
|
37
51
|
day: '2-digit'
|
|
38
52
|
}).formatToParts(new Date(Date.UTC(2006, 10, 22)));
|
|
39
53
|
const tokens = parts.flatMap(p => DATE_TOKENS[p.type] ?? []);
|
|
40
54
|
if (tokens.length !== 3 || !['dd', 'MM', 'yyyy'].every(t => tokens.includes(t))) return FALLBACK_DATE_FORMAT;
|
|
41
|
-
|
|
55
|
+
// RTL locales mark the separator with a direction mark ('\u200F/').
|
|
56
|
+
const first = (parts.find(p => p.type === 'literal')?.value ?? '').replace(/[\u200E\u200F\u061C]/g, '');
|
|
42
57
|
const separator = SEPARATORS.includes(first) ? first : '/';
|
|
43
58
|
return tokens.join(separator);
|
|
44
59
|
} catch {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FALLBACK_LOCALE","FALLBACK_DATE_FORMAT","SEPARATORS","DATE_TOKENS","day","month","year","defaultLocale","Intl","DateTimeFormat","resolvedOptions","
|
|
1
|
+
{"version":3,"names":["FALLBACK_LOCALE","FALLBACK_DATE_FORMAT","SEPARATORS","DATE_TOKENS","day","month","year","yearName","withCalendar","locale","calendar","base","ext","split","undefined","rest","replace","defaultLocale","Intl","DateTimeFormat","resolvedOptions","deriveDateFormat","parts","formatToParts","Date","UTC","tokens","flatMap","p","type","length","every","t","includes","first","find","value","separator","join","DATE_FORMAT_PATTERN","normalizeDateFormat","format","m","exec","trim","map","toLowerCase","Set","size","deriveTimeFormat","hour","cycle","hourCycle","some","FRIDAY_REGIONS","SATURDAY_REGIONS","SUNDAY_REGIONS","regionOf","part","slice","test","toUpperCase","deriveFirstDayOfWeek","region","has"],"sourceRoot":"../../../src","sources":["core/locale.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Which digits the picker shows: 0–9, Arabic-Indic (١٢٣) in any language, or
|
|
5
|
+
* the locale's own (١٢٣ for 'ar-SA', ۱۲۳ for 'fa-IR', 123 for 'en-US').
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export const latinDigits = text => text;
|
|
9
|
+
|
|
10
|
+
/** Swaps 0–9 in a text for Arabic-Indic digits (٠–٩). */
|
|
11
|
+
export const arabicDigits = text => text.replace(/[0-9]/g, d => String.fromCharCode(0x0660 + Number(d)));
|
|
12
|
+
const cache = new Map();
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Swaps 0–9 in a text for the locale's own digits, as `Intl` writes them
|
|
16
|
+
* ('ar-SA' → ٠–٩, 'fa' → ۰–۹). Latin when the locale uses 0–9 or `Intl` can't
|
|
17
|
+
* tell.
|
|
18
|
+
*/
|
|
19
|
+
export const localeDigits = locale => {
|
|
20
|
+
const hit = cache.get(locale);
|
|
21
|
+
if (hit) return hit;
|
|
22
|
+
let swap = latinDigits;
|
|
23
|
+
try {
|
|
24
|
+
const f = new Intl.NumberFormat(locale, {
|
|
25
|
+
useGrouping: false
|
|
26
|
+
});
|
|
27
|
+
const digits = Array.from({
|
|
28
|
+
length: 10
|
|
29
|
+
}, (_, i) => f.format(i));
|
|
30
|
+
if (digits[0] !== '0' && digits.every(d => [...d].length === 1)) {
|
|
31
|
+
swap = text => text.replace(/[0-9]/g, d => digits[Number(d)]);
|
|
32
|
+
}
|
|
33
|
+
} catch {
|
|
34
|
+
// An engine without this locale keeps 0–9.
|
|
35
|
+
}
|
|
36
|
+
cache.set(locale, swap);
|
|
37
|
+
return swap;
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=numerals.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["latinDigits","text","arabicDigits","replace","d","String","fromCharCode","Number","cache","Map","localeDigits","locale","hit","get","swap","f","Intl","NumberFormat","useGrouping","digits","Array","from","length","_","i","format","every","set"],"sourceRoot":"../../../src","sources":["core/numerals.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAGA,OAAO,MAAMA,WAAW,GAAIC,IAAY,IAAaA,IAAI;;AAEzD;AACA,OAAO,MAAMC,YAAY,GAAID,IAAY,IACvCA,IAAI,CAACE,OAAO,CAAC,QAAQ,EAAGC,CAAC,IAAKC,MAAM,CAACC,YAAY,CAAC,MAAM,GAAGC,MAAM,CAACH,CAAC,CAAC,CAAC,CAAC;AAExE,MAAMI,KAAK,GAAG,IAAIC,GAAG,CAAmC,CAAC;;AAEzD;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,YAAY,GAAIC,MAAc,IAAiC;EAC1E,MAAMC,GAAG,GAAGJ,KAAK,CAACK,GAAG,CAACF,MAAM,CAAC;EAC7B,IAAIC,GAAG,EAAE,OAAOA,GAAG;EACnB,IAAIE,IAAI,GAAGd,WAAW;EACtB,IAAI;IACF,MAAMe,CAAC,GAAG,IAAIC,IAAI,CAACC,YAAY,CAACN,MAAM,EAAE;MAAEO,WAAW,EAAE;IAAM,CAAC,CAAC;IAC/D,MAAMC,MAAM,GAAGC,KAAK,CAACC,IAAI,CAAC;MAAEC,MAAM,EAAE;IAAG,CAAC,EAAE,CAACC,CAAC,EAAEC,CAAC,KAAKT,CAAC,CAACU,MAAM,CAACD,CAAC,CAAC,CAAC;IAChE,IAAIL,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAIA,MAAM,CAACO,KAAK,CAAEtB,CAAC,IAAK,CAAC,GAAGA,CAAC,CAAC,CAACkB,MAAM,KAAK,CAAC,CAAC,EAAE;MACjER,IAAI,GAAIb,IAAI,IAAKA,IAAI,CAACE,OAAO,CAAC,QAAQ,EAAGC,CAAC,IAAKe,MAAM,CAACZ,MAAM,CAACH,CAAC,CAAC,CAAE,CAAC;IACpE;EACF,CAAC,CAAC,MAAM;IACN;EAAA;EAEFI,KAAK,CAACmB,GAAG,CAAChB,MAAM,EAAEG,IAAI,CAAC;EACvB,OAAOA,IAAI;AACb,CAAC","ignoreList":[]}
|
|
@@ -34,6 +34,8 @@ const nextKey = (state, key, step) => {
|
|
|
34
34
|
};
|
|
35
35
|
|
|
36
36
|
/** Pads the segment being left, then focuses `to`. */
|
|
37
|
+
/** Characters that end a segment when typed or pasted between numbers. */
|
|
38
|
+
const SEPARATOR = /^[/\-.:\s]$/;
|
|
37
39
|
const moveFocus = (state, to) => {
|
|
38
40
|
const from = state.focused;
|
|
39
41
|
const spec = from ? specOf(state, from) : undefined;
|
|
@@ -74,6 +76,13 @@ export const segmentEditorReducer = (state, action, opts) => {
|
|
|
74
76
|
const key = state.focused;
|
|
75
77
|
const spec = key ? specOf(state, key) : undefined;
|
|
76
78
|
if (!key || !spec || spec.key === 'period') return state;
|
|
79
|
+
// A separator typed or pasted after some digits ('1/12/2025') ends the
|
|
80
|
+
// segment, as moving on would: 1 becomes 01 and the next segment starts.
|
|
81
|
+
if (SEPARATOR.test(action.digit)) {
|
|
82
|
+
if (!state.values[key]) return state;
|
|
83
|
+
const following = nextKey(state, key, 1);
|
|
84
|
+
return withParsed(moveFocus(state, following === 'period' ? null : following), opts);
|
|
85
|
+
}
|
|
77
86
|
const {
|
|
78
87
|
next,
|
|
79
88
|
advance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["formatSegments","inputDigit","padSegment","parseSegments","segmentLayout","withParsed","state","opts","parsed","values","type","timeFormat","yearRange","createSegmentEditor","value","layout","dateFormat","focused","keys","segments","map","s","key","specOf","find","nextKey","step","list","indexOf","moveFocus","to","from","spec","undefined","sameValues","a","b","keysOf","Set","Object","every","k","withFocus","moved","segmentEditorReducer","action","
|
|
1
|
+
{"version":3,"names":["formatSegments","inputDigit","padSegment","parseSegments","segmentLayout","withParsed","state","opts","parsed","values","type","timeFormat","yearRange","createSegmentEditor","value","layout","dateFormat","focused","keys","segments","map","s","key","specOf","find","nextKey","step","list","indexOf","SEPARATOR","moveFocus","to","from","spec","undefined","sameValues","a","b","keysOf","Set","Object","every","k","withFocus","moved","segmentEditorReducer","action","test","digit","following","next","advance","typed","target","current","slice","previous","prevText","period"],"sourceRoot":"../../../src","sources":["core/segmentEditor.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -123,14 +123,6 @@ export const inputDigit = (current, digit, spec) => {
|
|
|
123
123
|
};
|
|
124
124
|
};
|
|
125
125
|
|
|
126
|
-
/** 'a' / 'A' → AM, 'p' / 'P' → PM, anything else → null. */
|
|
127
|
-
export const inputPeriod = char => {
|
|
128
|
-
const c = char.toLowerCase();
|
|
129
|
-
if (c === 'a') return 'AM';
|
|
130
|
-
if (c === 'p') return 'PM';
|
|
131
|
-
return null;
|
|
132
|
-
};
|
|
133
|
-
|
|
134
126
|
/** Pads a one-digit entry when leaving the segment ("7" → "07"); the year is never padded. */
|
|
135
127
|
export const padSegment = (text, spec) => {
|
|
136
128
|
if (!text || spec.key === 'period' || spec.key === 'year' || !/^\d+$/.test(text)) return text;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isValidCalendarDate","DATE_TOKENS","dd","key","maxLength","min","max","MM","yyyy","timeSegments","timeFormat","segmentLayout","dateFormat","type","tokens","match","separator","replace","charAt","dateSpecs","map","t","filter","Boolean","segments","dateSeparator","to12Hour","hour","hour12","period","from12Hour","pad","n","length","String","padStart","formatSegments","value","out","day","date","month","year","time","minute","inputDigit","current","digit","spec","test","next","advance","cannotGrow","Number","
|
|
1
|
+
{"version":3,"names":["isValidCalendarDate","DATE_TOKENS","dd","key","maxLength","min","max","MM","yyyy","timeSegments","timeFormat","segmentLayout","dateFormat","type","tokens","match","separator","replace","charAt","dateSpecs","map","t","filter","Boolean","segments","dateSeparator","to12Hour","hour","hour12","period","from12Hour","pad","n","length","String","padStart","formatSegments","value","out","day","date","month","year","time","minute","inputDigit","current","digit","spec","test","next","advance","cannotGrow","Number","padSegment","text","readNumber","parseSegments","values","options","layout","isEmpty","every","s","errors","numbers","forEach","raw","push","code","NaN","hasDateParts","undefined","range","yearRange","first","last","dateOk","e","timeEmpty","dateOnly"],"sourceRoot":"../../../src","sources":["core/segments.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,7 +7,8 @@ import { compareCalendarDates, daysBetween } from "./calendarDate.js";
|
|
|
7
7
|
* - range: once a start is picked and the end is being chosen, days closer than
|
|
8
8
|
* `minDays` or further than `maxDays` are greyed (lengths count calendar
|
|
9
9
|
* days with both ends included, so a same-day range is 1 day); in the From/To layout, days
|
|
10
|
-
* before the start are greyed too
|
|
10
|
+
* before the start are greyed too once the To field is tapped (otherwise a tap
|
|
11
|
+
* there moves the start);
|
|
11
12
|
* - multiple: once `maxSelections` is reached, only selected days can be tapped.
|
|
12
13
|
* Validation on Confirm (validateDraft) still checks the same rules.
|
|
13
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["compareCalendarDates","daysBetween","isRangeEndAllowed","start","day","rules","span","blockBeforeStart","length","minDays","undefined","maxDays","withSelectionRules","base","rangeStart","rangeActive","maxReached","dayStatus","status","blocked","isSelected","disabled","reasons"],"sourceRoot":"../../../src","sources":["core/selectionRules.ts"],"mappings":";;AAAA,SAASA,oBAAoB,EAAEC,WAAW,QAAQ,mBAAgB;;AAIlE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA,OAAO,MAAMC,iBAAiB,GAAGA,CAC/BC,KAAmB,EACnBC,GAAiB,EACjBC,KAAuE,KAC3D;EACZ,MAAMC,IAAI,GAAGL,WAAW,CAACE,KAAK,EAAEC,GAAG,CAAC;EACpC,IAAIE,IAAI,GAAG,CAAC,EAAE,OAAO,CAACD,KAAK,CAACE,gBAAgB;EAC5C,MAAMC,MAAM,GAAGF,IAAI,GAAG,CAAC;EACvB,IAAID,KAAK,CAACI,OAAO,KAAKC,SAAS,IAAIF,MAAM,GAAGH,KAAK,CAACI,OAAO,EAAE,OAAO,KAAK;EACvE,IAAIJ,KAAK,CAACM,OAAO,KAAKD,SAAS,IAAIF,MAAM,GAAGH,KAAK,CAACM,OAAO,EAAE,OAAO,KAAK;EACvE,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGA,CAChCC,IAAiB,EACjBR,KAAqB,KACL;EAChB,MAAMF,KAAK,GAAGE,KAAK,CAACS,UAAU;EAC9B,MAAMC,WAAW,GACf,CAAC,CAACZ,KAAK,KACNE,KAAK,CAACI,OAAO,KAAKC,SAAS,IAC1BL,KAAK,CAACM,OAAO,KAAKD,SAAS,IAC3B,CAAC,CAACL,KAAK,CAACE,gBAAgB,CAAC;EAC7B,IAAI,CAACQ,WAAW,IAAI,CAACV,KAAK,CAACW,UAAU,EAAE,OAAOH,IAAI;EAElD,MAAMI,SAAS,GAAIb,GAAiB,IAAgB;IAClD,MAAMc,MAAM,GAAGL,IAAI,CAACI,SAAS,CAACb,GAAG,CAAC;IAClC,IAAIe,OAAO,GAAG,KAAK;IACnB,IAAIJ,WAAW,IAAIZ,KAAK,IAAIH,oBAAoB,CAACI,GAAG,EAAED,KAAK,CAAC,KAAK,CAAC,EAAE;MAClEgB,OAAO,GAAG,CAACjB,iBAAiB,CAACC,KAAK,EAAEC,GAAG,EAAEC,KAAK,CAAC;IACjD;IACA,IAAIA,KAAK,CAACW,UAAU,IAAI,CAACX,KAAK,CAACe,UAAU,GAAGhB,GAAG,CAAC,EAAE;MAChD,OAAO;QACL,GAAGc,MAAM;QACTG,QAAQ,EAAE,IAAI;QACdC,OAAO,EAAE,CAAC,GAAGJ,MAAM,CAACI,OAAO,EAAE,gBAAgB;MAC/C,CAAC;IACH;IACA,IAAI,CAACH,OAAO,EAAE,OAAOD,MAAM;IAC3B,OAAO;MACL,GAAGA,MAAM;MACTG,QAAQ,EAAE,IAAI;MACdC,OAAO,EAAE,CAAC,GAAGJ,MAAM,CAACI,OAAO,EAAE,cAAc;IAC7C,CAAC;EACH,CAAC;EACD,OAAO;IAAE,GAAGT,IAAI;IAAEI;EAAU,CAAC;AAC/B,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["compareCalendarDates","daysBetween","isRangeEndAllowed","start","day","rules","span","blockBeforeStart","length","minDays","undefined","maxDays","withSelectionRules","base","rangeStart","rangeActive","maxReached","dayStatus","status","blocked","isSelected","disabled","reasons"],"sourceRoot":"../../../src","sources":["core/selectionRules.ts"],"mappings":";;AAAA,SAASA,oBAAoB,EAAEC,WAAW,QAAQ,mBAAgB;;AAIlE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA,OAAO,MAAMC,iBAAiB,GAAGA,CAC/BC,KAAmB,EACnBC,GAAiB,EACjBC,KAAuE,KAC3D;EACZ,MAAMC,IAAI,GAAGL,WAAW,CAACE,KAAK,EAAEC,GAAG,CAAC;EACpC,IAAIE,IAAI,GAAG,CAAC,EAAE,OAAO,CAACD,KAAK,CAACE,gBAAgB;EAC5C,MAAMC,MAAM,GAAGF,IAAI,GAAG,CAAC;EACvB,IAAID,KAAK,CAACI,OAAO,KAAKC,SAAS,IAAIF,MAAM,GAAGH,KAAK,CAACI,OAAO,EAAE,OAAO,KAAK;EACvE,IAAIJ,KAAK,CAACM,OAAO,KAAKD,SAAS,IAAIF,MAAM,GAAGH,KAAK,CAACM,OAAO,EAAE,OAAO,KAAK;EACvE,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAMC,kBAAkB,GAAGA,CAChCC,IAAiB,EACjBR,KAAqB,KACL;EAChB,MAAMF,KAAK,GAAGE,KAAK,CAACS,UAAU;EAC9B,MAAMC,WAAW,GACf,CAAC,CAACZ,KAAK,KACNE,KAAK,CAACI,OAAO,KAAKC,SAAS,IAC1BL,KAAK,CAACM,OAAO,KAAKD,SAAS,IAC3B,CAAC,CAACL,KAAK,CAACE,gBAAgB,CAAC;EAC7B,IAAI,CAACQ,WAAW,IAAI,CAACV,KAAK,CAACW,UAAU,EAAE,OAAOH,IAAI;EAElD,MAAMI,SAAS,GAAIb,GAAiB,IAAgB;IAClD,MAAMc,MAAM,GAAGL,IAAI,CAACI,SAAS,CAACb,GAAG,CAAC;IAClC,IAAIe,OAAO,GAAG,KAAK;IACnB,IAAIJ,WAAW,IAAIZ,KAAK,IAAIH,oBAAoB,CAACI,GAAG,EAAED,KAAK,CAAC,KAAK,CAAC,EAAE;MAClEgB,OAAO,GAAG,CAACjB,iBAAiB,CAACC,KAAK,EAAEC,GAAG,EAAEC,KAAK,CAAC;IACjD;IACA,IAAIA,KAAK,CAACW,UAAU,IAAI,CAACX,KAAK,CAACe,UAAU,GAAGhB,GAAG,CAAC,EAAE;MAChD,OAAO;QACL,GAAGc,MAAM;QACTG,QAAQ,EAAE,IAAI;QACdC,OAAO,EAAE,CAAC,GAAGJ,MAAM,CAACI,OAAO,EAAE,gBAAgB;MAC/C,CAAC;IACH;IACA,IAAI,CAACH,OAAO,EAAE,OAAOD,MAAM;IAC3B,OAAO;MACL,GAAGA,MAAM;MACTG,QAAQ,EAAE,IAAI;MACdC,OAAO,EAAE,CAAC,GAAGJ,MAAM,CAACI,OAAO,EAAE,cAAc;IAC7C,CAAC;EACH,CAAC;EACD,OAAO;IAAE,GAAGT,IAAI;IAAEI;EAAU,CAAC;AAC/B,CAAC","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { toLatinDigits } from "./digits.js";
|
|
4
|
+
import { from12Hour, to12Hour } from "./segments.js";
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* The time row's typed boxes: `[hh] : [mm] [AM | PM]`, or `[HH] : [mm]` in
|
|
@@ -50,92 +51,6 @@ export const formatTimeEntry = (time, timeFormat) => {
|
|
|
50
51
|
period
|
|
51
52
|
};
|
|
52
53
|
};
|
|
53
|
-
export const createTimeEntry = (time, timeFormat) => {
|
|
54
|
-
return {
|
|
55
|
-
values: formatTimeEntry(time, timeFormat),
|
|
56
|
-
focused: null
|
|
57
|
-
};
|
|
58
|
-
};
|
|
59
|
-
const leave = (state, to, timeFormat) => {
|
|
60
|
-
const from = state.focused;
|
|
61
|
-
if (!from) return {
|
|
62
|
-
...state,
|
|
63
|
-
focused: to
|
|
64
|
-
};
|
|
65
|
-
const text = state.values[from] ?? '';
|
|
66
|
-
return {
|
|
67
|
-
values: {
|
|
68
|
-
...state.values,
|
|
69
|
-
[from]: padSegment(text, timeSpecs(timeFormat)[from])
|
|
70
|
-
},
|
|
71
|
-
focused: to
|
|
72
|
-
};
|
|
73
|
-
};
|
|
74
|
-
export const timeEntryReducer = (state, action, timeFormat) => {
|
|
75
|
-
switch (action.type) {
|
|
76
|
-
case 'focus':
|
|
77
|
-
return leave(state, action.key, timeFormat);
|
|
78
|
-
case 'blur':
|
|
79
|
-
return leave(state, null, timeFormat);
|
|
80
|
-
case 'digit':
|
|
81
|
-
{
|
|
82
|
-
const key = state.focused;
|
|
83
|
-
if (!key) return state;
|
|
84
|
-
const {
|
|
85
|
-
next,
|
|
86
|
-
advance
|
|
87
|
-
} = inputDigit(state.values[key] ?? '', action.digit, timeSpecs(timeFormat)[key]);
|
|
88
|
-
const typed = {
|
|
89
|
-
...state,
|
|
90
|
-
values: {
|
|
91
|
-
...state.values,
|
|
92
|
-
[key]: next
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
// Two hour digits jump to the minutes; a full minute box stays put.
|
|
96
|
-
if (!advance) return typed;
|
|
97
|
-
return leave(typed, key === 'hour' ? 'minute' : null, timeFormat);
|
|
98
|
-
}
|
|
99
|
-
case 'backspace':
|
|
100
|
-
{
|
|
101
|
-
const key = state.focused;
|
|
102
|
-
if (!key) return state;
|
|
103
|
-
const current = state.values[key] ?? '';
|
|
104
|
-
if (current) return {
|
|
105
|
-
...state,
|
|
106
|
-
values: {
|
|
107
|
-
...state.values,
|
|
108
|
-
[key]: current.slice(0, -1)
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
if (key === 'minute') {
|
|
112
|
-
return {
|
|
113
|
-
values: {
|
|
114
|
-
...state.values,
|
|
115
|
-
hour: (state.values.hour ?? '').slice(0, -1)
|
|
116
|
-
},
|
|
117
|
-
focused: 'hour'
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
return state;
|
|
121
|
-
}
|
|
122
|
-
case 'period':
|
|
123
|
-
return {
|
|
124
|
-
...state,
|
|
125
|
-
values: {
|
|
126
|
-
...state.values,
|
|
127
|
-
period: action.period
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
case 'reset':
|
|
131
|
-
return {
|
|
132
|
-
values: formatTimeEntry(action.time, timeFormat),
|
|
133
|
-
focused: state.focused
|
|
134
|
-
};
|
|
135
|
-
default:
|
|
136
|
-
return state;
|
|
137
|
-
}
|
|
138
|
-
};
|
|
139
54
|
const readNumber = text => text && /^\d+$/.test(text) ? Number(text) : null;
|
|
140
55
|
export const parseTimeEntry = (values, timeFormat) => {
|
|
141
56
|
if (!values.hour && !values.minute) return {
|
|
@@ -197,8 +112,11 @@ export const isPeriodAllowed = (period, bounds) => {
|
|
|
197
112
|
return true;
|
|
198
113
|
};
|
|
199
114
|
|
|
200
|
-
/**
|
|
201
|
-
|
|
115
|
+
/**
|
|
116
|
+
* Digits only, at most two (what a time box accepts while typing). Digits
|
|
117
|
+
* typed in another script count too ('٠٩' → '09').
|
|
118
|
+
*/
|
|
119
|
+
export const cleanBoxText = raw => toLatinDigits(raw).replace(/\D/g, '').slice(0, 2);
|
|
202
120
|
|
|
203
121
|
/**
|
|
204
122
|
* The boxes as they are saved when focus leaves them: a one-digit entry gets a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["toLatinDigits","from12Hour","to12Hour","timeSpecs","timeFormat","hour","key","maxLength","min","max","minute","pad2","n","String","padStart","formatTimeEntry","time","period","hour12","readNumber","text","test","Number","parseTimeEntry","values","isEmpty","issue","specs","h24","minutesOf","t","checkTime","options","step","minuteStep","bounds","isPeriodAllowed","start","end","cleanBoxText","raw","replace","slice","completeTimeEntry","pad","length","done","parsed"],"sourceRoot":"../../../src","sources":["core/timeEntry.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,aAAU;AAExC,SACEC,UAAU,EACVC,QAAQ,QAGH,eAAY;;AAGnB;AACA;AACA;AACA;AACA;;AAqBA,OAAO,MAAMC,SAAS,GACpBC,UAAsB,IACW;EACjC,OAAO;IACLC,IAAI,EACFD,UAAU,KAAK,KAAK,GAChB;MAAEE,GAAG,EAAE,MAAM;MAAEC,SAAS,EAAE,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,GAAG,EAAE;IAAG,CAAC,GAC9C;MAAEH,GAAG,EAAE,MAAM;MAAEC,SAAS,EAAE,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,GAAG,EAAE;IAAG,CAAC;IACpDC,MAAM,EAAE;MAAEJ,GAAG,EAAE,QAAQ;MAAEC,SAAS,EAAE,CAAC;MAAEC,GAAG,EAAE,CAAC;MAAEC,GAAG,EAAE;IAAG;EACzD,CAAC;AACH,CAAC;AAED,MAAME,IAAI,GAAIC,CAAS,IAAKC,MAAM,CAACD,CAAC,CAAC,CAACE,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;;AAEtD;AACA,OAAO,MAAMC,eAAe,GAAGA,CAC7BC,IAAiB,EACjBZ,UAAsB,KACF;EACpB,IAAI,CAACY,IAAI,EAAE,OAAOZ,UAAU,KAAK,KAAK,GAAG;IAAEa,MAAM,EAAE;EAAK,CAAC,GAAG,CAAC,CAAC;EAC9D,IAAIb,UAAU,KAAK,KAAK,EACtB,OAAO;IAAEC,IAAI,EAAEM,IAAI,CAACK,IAAI,CAACX,IAAI,CAAC;IAAEK,MAAM,EAAEC,IAAI,CAACK,IAAI,CAACN,MAAM;EAAE,CAAC;EAC7D,MAAM;IAAEQ,MAAM;IAAED;EAAO,CAAC,GAAGf,QAAQ,CAACc,IAAI,CAACX,IAAI,CAAC;EAC9C,OAAO;IAAEA,IAAI,EAAEM,IAAI,CAACO,MAAM,CAAC;IAAER,MAAM,EAAEC,IAAI,CAACK,IAAI,CAACN,MAAM,CAAC;IAAEO;EAAO,CAAC;AAClE,CAAC;AAED,MAAME,UAAU,GAAIC,IAAa,IAC/BA,IAAI,IAAI,OAAO,CAACC,IAAI,CAACD,IAAI,CAAC,GAAGE,MAAM,CAACF,IAAI,CAAC,GAAG,IAAI;AAElD,OAAO,MAAMG,cAAc,GAAGA,CAC5BC,MAAuB,EACvBpB,UAAsB,KACP;EACf,IAAI,CAACoB,MAAM,CAACnB,IAAI,IAAI,CAACmB,MAAM,CAACd,MAAM,EAChC,OAAO;IAAEM,IAAI,EAAE,IAAI;IAAES,OAAO,EAAE,IAAI;IAAEC,KAAK,EAAE;EAAK,CAAC;EACnD,MAAMC,KAAK,GAAGxB,SAAS,CAACC,UAAU,CAAC;EACnC,MAAMC,IAAI,GAAGc,UAAU,CAACK,MAAM,CAACnB,IAAI,CAAC;EACpC,MAAMK,MAAM,GAAGS,UAAU,CAACK,MAAM,CAACd,MAAM,CAAC;EACxC,IACEL,IAAI,KAAK,IAAI,IACbK,MAAM,KAAK,IAAI,IACdN,UAAU,KAAK,KAAK,IAAI,CAACoB,MAAM,CAACP,MAAO,EACxC;IACA,OAAO;MAAED,IAAI,EAAE,IAAI;MAAES,OAAO,EAAE,KAAK;MAAEC,KAAK,EAAE;IAAa,CAAC;EAC5D;EACA,IACErB,IAAI,GAAGsB,KAAK,CAACtB,IAAI,CAACG,GAAG,IACrBH,IAAI,GAAGsB,KAAK,CAACtB,IAAI,CAACI,GAAG,IACrBC,MAAM,GAAGiB,KAAK,CAACjB,MAAM,CAACD,GAAG,EACzB;IACA,OAAO;MAAEO,IAAI,EAAE,IAAI;MAAES,OAAO,EAAE,KAAK;MAAEC,KAAK,EAAE;IAAU,CAAC;EACzD;EACA,MAAME,GAAG,GACPxB,UAAU,KAAK,KAAK,GAAGH,UAAU,CAACI,IAAI,EAAEmB,MAAM,CAACP,MAAgB,CAAC,GAAGZ,IAAI;EACzE,OAAO;IAAEW,IAAI,EAAE;MAAEX,IAAI,EAAEuB,GAAG;MAAElB;IAAO,CAAC;IAAEe,OAAO,EAAE,KAAK;IAAEC,KAAK,EAAE;EAAK,CAAC;AACrE,CAAC;AAED,MAAMG,SAAS,GAAIC,CAAO,IAAKA,CAAC,CAACzB,IAAI,GAAG,EAAE,GAAGyB,CAAC,CAACpB,MAAM;;AAErD;AACA;AACA;AACA;AACA,OAAO,MAAMqB,SAAS,GAAGA,CACvBf,IAAU,EACVgB,OAA4D,KAClC;EAC1B,MAAMC,IAAI,GAAGD,OAAO,CAACE,UAAU,IAAI,CAAC;EACpC,IAAID,IAAI,GAAG,CAAC,IAAIjB,IAAI,CAACN,MAAM,GAAGuB,IAAI,KAAK,CAAC,EAAE,OAAO,UAAU;EAC3D,MAAM;IAAEzB,GAAG;IAAEC;EAAI,CAAC,GAAGuB,OAAO,CAACG,MAAM,IAAI,CAAC,CAAC;EACzC,IAAI3B,GAAG,IAAIqB,SAAS,CAACb,IAAI,CAAC,GAAGa,SAAS,CAACrB,GAAG,CAAC,EAAE,OAAO,YAAY;EAChE,IAAIC,GAAG,IAAIoB,SAAS,CAACb,IAAI,CAAC,GAAGa,SAAS,CAACpB,GAAG,CAAC,EAAE,OAAO,WAAW;EAC/D,OAAO,IAAI;AACb,CAAC;;AAED;AACA,OAAO,MAAM2B,eAAe,GAAGA,CAC7BnB,MAAc,EACdkB,MAA0B,KACd;EACZ,MAAME,KAAK,GAAGpB,MAAM,KAAK,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE;EAC3C,MAAMqB,GAAG,GAAGD,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;EAC/B,IAAIF,MAAM,EAAE3B,GAAG,IAAIqB,SAAS,CAACM,MAAM,CAAC3B,GAAG,CAAC,GAAG8B,GAAG,EAAE,OAAO,KAAK;EAC5D,IAAIH,MAAM,EAAE1B,GAAG,IAAIoB,SAAS,CAACM,MAAM,CAAC1B,GAAG,CAAC,GAAG4B,KAAK,EAAE,OAAO,KAAK;EAC9D,OAAO,IAAI;AACb,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAME,YAAY,GAAIC,GAAW,IACtCxC,aAAa,CAACwC,GAAG,CAAC,CAACC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;;AAEnD;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGA,CAC/BnB,MAAuB,EACvBpB,UAAsB,KAC8B;EACpD,MAAMwC,GAAG,GAAIxB,IAAa,IACxBA,IAAI,IAAIA,IAAI,CAACyB,MAAM,KAAK,CAAC,GAAG,IAAIzB,IAAI,EAAE,GAAIA,IAAI,IAAI,EAAG;EACvD,MAAMf,IAAI,GAAGuC,GAAG,CAACpB,MAAM,CAACnB,IAAI,CAAC;EAC7B,MAAMyC,IAAqB,GAAGzC,IAAI,GAC9B;IAAE,GAAGmB,MAAM;IAAEnB,IAAI;IAAEK,MAAM,EAAEkC,GAAG,CAACpB,MAAM,CAACd,MAAM,CAAC,IAAI;EAAK,CAAC,GACvD;IAAE,GAAGc,MAAM;IAAEd,MAAM,EAAEkC,GAAG,CAACpB,MAAM,CAACd,MAAM;EAAE,CAAC;EAC7C,OAAO;IAAEc,MAAM,EAAEsB,IAAI;IAAEC,MAAM,EAAExB,cAAc,CAACuB,IAAI,EAAE1C,UAAU;EAAE,CAAC;AACnE,CAAC","ignoreList":[]}
|
|
@@ -21,6 +21,10 @@ const s = StyleSheet.create({
|
|
|
21
21
|
alignItems: 'center',
|
|
22
22
|
justifyContent: 'center'
|
|
23
23
|
},
|
|
24
|
+
// RTL swaps left and right borders, which would move a chevron's corner.
|
|
25
|
+
ltr: {
|
|
26
|
+
direction: 'ltr'
|
|
27
|
+
},
|
|
24
28
|
bar: {
|
|
25
29
|
position: 'absolute'
|
|
26
30
|
},
|
|
@@ -40,7 +44,7 @@ const Chevron = ({
|
|
|
40
44
|
}) => {
|
|
41
45
|
const side = size * 0.4;
|
|
42
46
|
return /*#__PURE__*/_jsx(View, {
|
|
43
|
-
style: [s.box, {
|
|
47
|
+
style: [s.box, s.ltr, {
|
|
44
48
|
width,
|
|
45
49
|
height
|
|
46
50
|
}],
|