@gravity-ui/date-components 2.11.0 → 3.0.0-beta.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/dist/cjs/components/Calendar/Calendar.d.ts +4 -4
- package/dist/cjs/components/Calendar/Calendar.js +5 -6
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -0
- package/dist/cjs/components/Calendar/index.d.ts +8 -8
- package/dist/cjs/components/Calendar/index.js +9 -21
- package/dist/cjs/components/Calendar/index.js.map +1 -0
- package/dist/cjs/components/CalendarView/Calendar.css +4 -2
- package/dist/cjs/components/CalendarView/Calendar.css.map +1 -0
- package/dist/cjs/components/CalendarView/CalendarView.d.ts +4 -4
- package/dist/cjs/components/CalendarView/CalendarView.js +9 -10
- package/dist/cjs/components/CalendarView/CalendarView.js.map +1 -0
- package/dist/cjs/components/CalendarView/hooks/types.d.ts +1 -1
- package/dist/cjs/components/CalendarView/hooks/types.js +1 -0
- package/dist/cjs/components/CalendarView/hooks/types.js.map +1 -0
- package/dist/cjs/components/CalendarView/hooks/useCalendarCellProps.d.ts +1 -1
- package/dist/cjs/components/CalendarView/hooks/useCalendarCellProps.js +4 -5
- package/dist/cjs/components/CalendarView/hooks/useCalendarCellProps.js.map +1 -0
- package/dist/cjs/components/CalendarView/hooks/useCalendarGridProps.d.ts +1 -1
- package/dist/cjs/components/CalendarView/hooks/useCalendarGridProps.js +2 -1
- package/dist/cjs/components/CalendarView/hooks/useCalendarGridProps.js.map +1 -0
- package/dist/cjs/components/CalendarView/hooks/useCalendarProps.d.ts +6 -6
- package/dist/cjs/components/CalendarView/hooks/useCalendarProps.js +12 -19
- package/dist/cjs/components/CalendarView/hooks/useCalendarProps.js.map +1 -0
- package/dist/cjs/components/CalendarView/hooks/useCalendarState.d.ts +3 -3
- package/dist/cjs/components/CalendarView/hooks/useCalendarState.js +6 -7
- package/dist/cjs/components/CalendarView/hooks/useCalendarState.js.map +1 -0
- package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.d.ts +4 -4
- package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.js +4 -3
- package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.js.map +1 -0
- package/dist/cjs/components/CalendarView/i18n/index.d.ts +5 -1
- package/dist/cjs/components/CalendarView/i18n/index.js +5 -6
- package/dist/cjs/components/CalendarView/i18n/index.js.map +1 -0
- package/dist/cjs/components/CalendarView/utils.d.ts +1 -1
- package/dist/cjs/components/CalendarView/utils.js +1 -0
- package/dist/cjs/components/CalendarView/utils.js.map +1 -0
- package/dist/cjs/components/DateField/DateField.css +2 -1
- package/dist/cjs/components/DateField/DateField.css.map +1 -0
- package/dist/cjs/components/DateField/DateField.d.ts +2 -2
- package/dist/cjs/components/DateField/DateField.js +5 -4
- package/dist/cjs/components/DateField/DateField.js.map +1 -0
- package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.d.ts +2 -2
- package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.js +5 -6
- package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.js.map +1 -0
- package/dist/cjs/components/DateField/hooks/useDateFieldProps.d.ts +2 -2
- package/dist/cjs/components/DateField/hooks/useDateFieldProps.js +4 -5
- package/dist/cjs/components/DateField/hooks/useDateFieldProps.js.map +1 -0
- package/dist/cjs/components/DateField/hooks/useDateFieldState.d.ts +2 -2
- package/dist/cjs/components/DateField/hooks/useDateFieldState.js +7 -8
- package/dist/cjs/components/DateField/hooks/useDateFieldState.js.map +1 -0
- package/dist/cjs/components/DateField/i18n/index.d.ts +5 -1
- package/dist/cjs/components/DateField/i18n/index.js +5 -6
- package/dist/cjs/components/DateField/i18n/index.js.map +1 -0
- package/dist/cjs/components/DateField/index.d.ts +4 -4
- package/dist/cjs/components/DateField/index.js +6 -18
- package/dist/cjs/components/DateField/index.js.map +1 -0
- package/dist/cjs/components/DateField/types.js +1 -0
- package/dist/cjs/components/DateField/types.js.map +1 -0
- package/dist/cjs/components/DateField/utils.d.ts +1 -1
- package/dist/cjs/components/DateField/utils.js +5 -6
- package/dist/cjs/components/DateField/utils.js.map +1 -0
- package/dist/cjs/components/DatePicker/DatePicker.css +2 -1
- package/dist/cjs/components/DatePicker/DatePicker.css.map +1 -0
- package/dist/cjs/components/DatePicker/DatePicker.d.ts +4 -4
- package/dist/cjs/components/DatePicker/DatePicker.js +11 -10
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -0
- package/dist/cjs/components/DatePicker/MobileCalendar.css +2 -1
- package/dist/cjs/components/DatePicker/MobileCalendar.css.map +1 -0
- package/dist/cjs/components/DatePicker/MobileCalendar.d.ts +3 -3
- package/dist/cjs/components/DatePicker/MobileCalendar.js +3 -2
- package/dist/cjs/components/DatePicker/MobileCalendar.js.map +1 -0
- package/dist/cjs/components/DatePicker/StubButton.css +2 -1
- package/dist/cjs/components/DatePicker/StubButton.css.map +1 -0
- package/dist/cjs/components/DatePicker/StubButton.d.ts +1 -1
- package/dist/cjs/components/DatePicker/StubButton.js +2 -1
- package/dist/cjs/components/DatePicker/StubButton.js.map +1 -0
- package/dist/cjs/components/DatePicker/hooks/datePickerStateFactory.d.ts +2 -2
- package/dist/cjs/components/DatePicker/hooks/datePickerStateFactory.js +4 -5
- package/dist/cjs/components/DatePicker/hooks/datePickerStateFactory.js.map +1 -0
- package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.d.ts +7 -7
- package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.js +26 -23
- package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.js.map +1 -0
- package/dist/cjs/components/DatePicker/hooks/useDatePickerState.d.ts +3 -3
- package/dist/cjs/components/DatePicker/hooks/useDatePickerState.js +5 -4
- package/dist/cjs/components/DatePicker/hooks/useDatePickerState.js.map +1 -0
- package/dist/cjs/components/DatePicker/i18n/index.d.ts +5 -1
- package/dist/cjs/components/DatePicker/i18n/index.js +5 -6
- package/dist/cjs/components/DatePicker/i18n/index.js.map +1 -0
- package/dist/cjs/components/DatePicker/index.d.ts +3 -3
- package/dist/cjs/components/DatePicker/index.js +5 -17
- package/dist/cjs/components/DatePicker/index.js.map +1 -0
- package/dist/cjs/components/DatePicker/utils/cn.js +2 -1
- package/dist/cjs/components/DatePicker/utils/cn.js.map +1 -0
- package/dist/cjs/components/DatePicker/utils/getDateTimeValue.d.ts +1 -1
- package/dist/cjs/components/DatePicker/utils/getDateTimeValue.js +1 -0
- package/dist/cjs/components/DatePicker/utils/getDateTimeValue.js.map +1 -0
- package/dist/cjs/components/DatePicker/utils/index.d.ts +2 -2
- package/dist/cjs/components/DatePicker/utils/index.js +4 -16
- package/dist/cjs/components/DatePicker/utils/index.js.map +1 -0
- package/dist/cjs/components/HiddenInput/HiddenInput.js +3 -4
- package/dist/cjs/components/HiddenInput/HiddenInput.js.map +1 -0
- package/dist/cjs/components/RangeCalendar/RangeCalendar.d.ts +4 -4
- package/dist/cjs/components/RangeCalendar/RangeCalendar.js +5 -6
- package/dist/cjs/components/RangeCalendar/RangeCalendar.js.map +1 -0
- package/dist/cjs/components/RangeCalendar/index.d.ts +1 -1
- package/dist/cjs/components/RangeCalendar/index.js +3 -15
- package/dist/cjs/components/RangeCalendar/index.js.map +1 -0
- package/dist/cjs/components/RangeDateField/RangeDateField.css +2 -1
- package/dist/cjs/components/RangeDateField/RangeDateField.css.map +1 -0
- package/dist/cjs/components/RangeDateField/RangeDateField.d.ts +3 -3
- package/dist/cjs/components/RangeDateField/RangeDateField.js +5 -4
- package/dist/cjs/components/RangeDateField/RangeDateField.js.map +1 -0
- package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.d.ts +3 -3
- package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.js +8 -9
- package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.js.map +1 -0
- package/dist/cjs/components/RangeDateField/index.d.ts +2 -2
- package/dist/cjs/components/RangeDateField/index.js +4 -16
- package/dist/cjs/components/RangeDateField/index.js.map +1 -0
- package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.d.ts +1 -1
- package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.js +2 -1
- package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.js.map +1 -0
- package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.d.ts +4 -4
- package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.js +2 -1
- package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.js.map +1 -0
- package/dist/cjs/components/RangeDateField/utils/index.d.ts +3 -3
- package/dist/cjs/components/RangeDateField/utils/index.js +5 -17
- package/dist/cjs/components/RangeDateField/utils/index.js.map +1 -0
- package/dist/cjs/components/RangeDateField/utils/isValidRange.d.ts +1 -1
- package/dist/cjs/components/RangeDateField/utils/isValidRange.js +1 -0
- package/dist/cjs/components/RangeDateField/utils/isValidRange.js.map +1 -0
- package/dist/cjs/components/RangeDatePicker/RangeDatePicker.css +2 -1
- package/dist/cjs/components/RangeDatePicker/RangeDatePicker.css.map +1 -0
- package/dist/cjs/components/RangeDatePicker/RangeDatePicker.d.ts +3 -3
- package/dist/cjs/components/RangeDatePicker/RangeDatePicker.js +10 -9
- package/dist/cjs/components/RangeDatePicker/RangeDatePicker.js.map +1 -0
- package/dist/cjs/components/RangeDatePicker/hooks/useRangeDatePickerState.d.ts +3 -3
- package/dist/cjs/components/RangeDatePicker/hooks/useRangeDatePickerState.js +5 -4
- package/dist/cjs/components/RangeDatePicker/hooks/useRangeDatePickerState.js.map +1 -0
- package/dist/cjs/components/RangeDatePicker/index.d.ts +2 -2
- package/dist/cjs/components/RangeDatePicker/index.js +4 -16
- package/dist/cjs/components/RangeDatePicker/index.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/RangeDateSelection.css +2 -1
- package/dist/cjs/components/RangeDateSelection/RangeDateSelection.css.map +1 -0
- package/dist/cjs/components/RangeDateSelection/RangeDateSelection.d.ts +4 -4
- package/dist/cjs/components/RangeDateSelection/RangeDateSelection.js +11 -12
- package/dist/cjs/components/RangeDateSelection/RangeDateSelection.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.css +2 -1
- package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.css.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.d.ts +1 -1
- package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.js +6 -7
- package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ruler/Ruler.d.ts +2 -2
- package/dist/cjs/components/RangeDateSelection/components/Ruler/Ruler.js +12 -13
- package/dist/cjs/components/RangeDateSelection/components/Ruler/Ruler.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.css +2 -1
- package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.css.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.d.ts +2 -2
- package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.js +5 -6
- package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.css +2 -1
- package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.css.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.d.ts +3 -3
- package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.js +6 -5
- package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ticks/MiddleTicks.js +3 -2
- package/dist/cjs/components/RangeDateSelection/components/Ticks/MiddleTicks.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ticks/SlitTicks.js +3 -2
- package/dist/cjs/components/RangeDateSelection/components/Ticks/SlitTicks.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.css +2 -1
- package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.css.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.d.ts +3 -3
- package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.js +7 -8
- package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ticks/UnavialableTicks.d.ts +3 -3
- package/dist/cjs/components/RangeDateSelection/components/Ticks/UnavialableTicks.js +6 -7
- package/dist/cjs/components/RangeDateSelection/components/Ticks/UnavialableTicks.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/components/Ticks/utils.d.ts +1 -1
- package/dist/cjs/components/RangeDateSelection/components/Ticks/utils.js +3 -2
- package/dist/cjs/components/RangeDateSelection/components/Ticks/utils.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/hooks/useRangeDateSelectionState.d.ts +1 -1
- package/dist/cjs/components/RangeDateSelection/hooks/useRangeDateSelectionState.js +7 -8
- package/dist/cjs/components/RangeDateSelection/hooks/useRangeDateSelectionState.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RangeDateSelection/i18n/index.js +5 -6
- package/dist/cjs/components/RangeDateSelection/i18n/index.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/index.d.ts +3 -3
- package/dist/cjs/components/RangeDateSelection/index.js +4 -16
- package/dist/cjs/components/RangeDateSelection/index.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/utils/date.js +2 -1
- package/dist/cjs/components/RangeDateSelection/utils/date.js.map +1 -0
- package/dist/cjs/components/RangeDateSelection/utils/span.js +1 -0
- package/dist/cjs/components/RangeDateSelection/utils/span.js.map +1 -0
- package/dist/cjs/components/RelativeDateField/RelativeDateField.css +2 -1
- package/dist/cjs/components/RelativeDateField/RelativeDateField.css.map +1 -0
- package/dist/cjs/components/RelativeDateField/RelativeDateField.d.ts +3 -3
- package/dist/cjs/components/RelativeDateField/RelativeDateField.js +25 -18
- package/dist/cjs/components/RelativeDateField/RelativeDateField.js.map +1 -0
- package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.d.ts +4 -4
- package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.js +3 -4
- package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.js.map +1 -0
- package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.d.ts +1 -1
- package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.js +3 -4
- package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.js.map +1 -0
- package/dist/cjs/components/RelativeDateField/index.d.ts +3 -3
- package/dist/cjs/components/RelativeDateField/index.js +5 -17
- package/dist/cjs/components/RelativeDateField/index.js.map +1 -0
- package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.css +2 -1
- package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.css.map +1 -0
- package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.d.ts +4 -4
- package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.js +14 -15
- package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.js.map +1 -0
- package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.d.ts +7 -7
- package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js +11 -14
- package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js.map +1 -0
- package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.d.ts +3 -3
- package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js +5 -6
- package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js.map +1 -0
- package/dist/cjs/components/RelativeDatePicker/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RelativeDatePicker/i18n/index.js +5 -6
- package/dist/cjs/components/RelativeDatePicker/i18n/index.js.map +1 -0
- package/dist/cjs/components/RelativeDatePicker/index.d.ts +3 -3
- package/dist/cjs/components/RelativeDatePicker/index.js +5 -17
- package/dist/cjs/components/RelativeDatePicker/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css +2 -1
- package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.d.ts +2 -2
- package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js +11 -12
- package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.css +2 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.css.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.d.ts +3 -3
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.js +8 -13
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/i18n/index.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/components/Control/i18n/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css +2 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.d.ts +8 -5
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js +16 -11
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.d.ts +5 -5
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.css +4 -2
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.css.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.d.ts +3 -3
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.js +6 -7
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css +7 -5
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.d.ts +2 -2
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js +7 -8
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js +2 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.d.ts +1 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.js +3 -2
- package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.css +2 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.css.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.d.ts +1 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.js +5 -8
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.d.ts +2 -2
- package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.d.ts +5 -1
- package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.js +5 -6
- package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/index.d.ts +9 -9
- package/dist/cjs/components/RelativeRangeDatePicker/index.js +8 -20
- package/dist/cjs/components/RelativeRangeDatePicker/index.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/types.d.ts +9 -6
- package/dist/cjs/components/RelativeRangeDatePicker/types.js +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/types.js.map +1 -0
- package/dist/cjs/components/RelativeRangeDatePicker/utils.d.ts +3 -3
- package/dist/cjs/components/RelativeRangeDatePicker/utils.js +2 -1
- package/dist/cjs/components/RelativeRangeDatePicker/utils.js.map +1 -0
- package/dist/cjs/components/index.d.ts +11 -11
- package/dist/cjs/components/index.js +12 -24
- package/dist/cjs/components/index.js.map +1 -0
- package/dist/cjs/components/mixins.css +2 -0
- package/dist/cjs/components/mixins.css.map +1 -0
- package/dist/cjs/components/types/datePicker.d.ts +1 -1
- package/dist/cjs/components/types/datePicker.js +1 -0
- package/dist/cjs/components/types/datePicker.js.map +1 -0
- package/dist/cjs/components/types/events.js +1 -0
- package/dist/cjs/components/types/events.js.map +1 -0
- package/dist/cjs/components/types/index.d.ts +4 -4
- package/dist/cjs/components/types/index.js +1 -0
- package/dist/cjs/components/types/index.js.map +1 -0
- package/dist/cjs/components/types/inputs.js +1 -0
- package/dist/cjs/components/types/inputs.js.map +1 -0
- package/dist/cjs/components/types/style.js +1 -0
- package/dist/cjs/components/types/style.js.map +1 -0
- package/dist/cjs/components/utils/constants.js +1 -0
- package/dist/cjs/components/utils/constants.js.map +1 -0
- package/dist/cjs/components/utils/dates.js +1 -0
- package/dist/cjs/components/utils/dates.js.map +1 -0
- package/dist/cjs/components/utils/filterDOMProps.d.ts +1 -1
- package/dist/cjs/components/utils/filterDOMProps.js +1 -0
- package/dist/cjs/components/utils/filterDOMProps.js.map +1 -0
- package/dist/cjs/components/utils/getButtonSizeForInput.js +1 -0
- package/dist/cjs/components/utils/getButtonSizeForInput.js.map +1 -0
- package/dist/cjs/components/utils/mergeProps.js +1 -0
- package/dist/cjs/components/utils/mergeProps.js.map +1 -0
- package/dist/cjs/components/utils/useDefaultTimeZone.js +3 -4
- package/dist/cjs/components/utils/useDefaultTimeZone.js.map +1 -0
- package/dist/cjs/components/utils/validation/datePicker.js +2 -1
- package/dist/cjs/components/utils/validation/datePicker.js.map +1 -0
- package/dist/cjs/components/utils/validation/i18n/index.d.ts +5 -1
- package/dist/cjs/components/utils/validation/i18n/index.js +5 -6
- package/dist/cjs/components/utils/validation/i18n/index.js.map +1 -0
- package/dist/cjs/components/variables.css +2 -0
- package/dist/cjs/components/variables.css.map +1 -0
- package/dist/cjs/hooks/useEventHandler.js +3 -4
- package/dist/cjs/hooks/useEventHandler.js.map +1 -0
- package/dist/cjs/hooks/useMove.js +4 -5
- package/dist/cjs/hooks/useMove.js.map +1 -0
- package/dist/cjs/hooks/useResizeObserver.js +3 -4
- package/dist/cjs/hooks/useResizeObserver.js.map +1 -0
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +3 -15
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/utils/cn.js +1 -0
- package/dist/cjs/utils/cn.js.map +1 -0
- package/dist/esm/components/Calendar/Calendar.d.ts +4 -4
- package/dist/esm/components/Calendar/Calendar.js +4 -3
- package/dist/esm/components/Calendar/Calendar.js.map +1 -0
- package/dist/esm/components/Calendar/index.d.ts +8 -8
- package/dist/esm/components/Calendar/index.js +8 -7
- package/dist/esm/components/Calendar/index.js.map +1 -0
- package/dist/esm/components/CalendarView/Calendar.css +4 -2
- package/dist/esm/components/CalendarView/Calendar.css.map +1 -0
- package/dist/esm/components/CalendarView/CalendarView.d.ts +4 -4
- package/dist/esm/components/CalendarView/CalendarView.js +8 -7
- package/dist/esm/components/CalendarView/CalendarView.js.map +1 -0
- package/dist/esm/components/CalendarView/hooks/types.d.ts +1 -1
- package/dist/esm/components/CalendarView/hooks/types.js +1 -0
- package/dist/esm/components/CalendarView/hooks/types.js.map +1 -0
- package/dist/esm/components/CalendarView/hooks/useCalendarCellProps.d.ts +1 -1
- package/dist/esm/components/CalendarView/hooks/useCalendarCellProps.js +2 -1
- package/dist/esm/components/CalendarView/hooks/useCalendarCellProps.js.map +1 -0
- package/dist/esm/components/CalendarView/hooks/useCalendarGridProps.d.ts +1 -1
- package/dist/esm/components/CalendarView/hooks/useCalendarGridProps.js +2 -1
- package/dist/esm/components/CalendarView/hooks/useCalendarGridProps.js.map +1 -0
- package/dist/esm/components/CalendarView/hooks/useCalendarProps.d.ts +6 -6
- package/dist/esm/components/CalendarView/hooks/useCalendarProps.js +10 -15
- package/dist/esm/components/CalendarView/hooks/useCalendarProps.js.map +1 -0
- package/dist/esm/components/CalendarView/hooks/useCalendarState.d.ts +3 -3
- package/dist/esm/components/CalendarView/hooks/useCalendarState.js +4 -3
- package/dist/esm/components/CalendarView/hooks/useCalendarState.js.map +1 -0
- package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.d.ts +4 -4
- package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.js +4 -3
- package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.js.map +1 -0
- package/dist/esm/components/CalendarView/i18n/index.d.ts +5 -1
- package/dist/esm/components/CalendarView/i18n/index.js +4 -3
- package/dist/esm/components/CalendarView/i18n/index.js.map +1 -0
- package/dist/esm/components/CalendarView/utils.d.ts +1 -1
- package/dist/esm/components/CalendarView/utils.js +1 -0
- package/dist/esm/components/CalendarView/utils.js.map +1 -0
- package/dist/esm/components/DateField/DateField.css +2 -1
- package/dist/esm/components/DateField/DateField.css.map +1 -0
- package/dist/esm/components/DateField/DateField.d.ts +2 -2
- package/dist/esm/components/DateField/DateField.js +6 -5
- package/dist/esm/components/DateField/DateField.js.map +1 -0
- package/dist/esm/components/DateField/hooks/useBaseDateFieldState.d.ts +2 -2
- package/dist/esm/components/DateField/hooks/useBaseDateFieldState.js +3 -2
- package/dist/esm/components/DateField/hooks/useBaseDateFieldState.js.map +1 -0
- package/dist/esm/components/DateField/hooks/useDateFieldProps.d.ts +2 -2
- package/dist/esm/components/DateField/hooks/useDateFieldProps.js +2 -1
- package/dist/esm/components/DateField/hooks/useDateFieldProps.js.map +1 -0
- package/dist/esm/components/DateField/hooks/useDateFieldState.d.ts +2 -2
- package/dist/esm/components/DateField/hooks/useDateFieldState.js +5 -4
- package/dist/esm/components/DateField/hooks/useDateFieldState.js.map +1 -0
- package/dist/esm/components/DateField/i18n/index.d.ts +5 -1
- package/dist/esm/components/DateField/i18n/index.js +4 -3
- package/dist/esm/components/DateField/i18n/index.js.map +1 -0
- package/dist/esm/components/DateField/index.d.ts +4 -4
- package/dist/esm/components/DateField/index.js +5 -4
- package/dist/esm/components/DateField/index.js.map +1 -0
- package/dist/esm/components/DateField/types.js +1 -0
- package/dist/esm/components/DateField/types.js.map +1 -0
- package/dist/esm/components/DateField/utils.d.ts +1 -1
- package/dist/esm/components/DateField/utils.js +3 -2
- package/dist/esm/components/DateField/utils.js.map +1 -0
- package/dist/esm/components/DatePicker/DatePicker.css +2 -1
- package/dist/esm/components/DatePicker/DatePicker.css.map +1 -0
- package/dist/esm/components/DatePicker/DatePicker.d.ts +4 -4
- package/dist/esm/components/DatePicker/DatePicker.js +12 -11
- package/dist/esm/components/DatePicker/DatePicker.js.map +1 -0
- package/dist/esm/components/DatePicker/MobileCalendar.css +2 -1
- package/dist/esm/components/DatePicker/MobileCalendar.css.map +1 -0
- package/dist/esm/components/DatePicker/MobileCalendar.d.ts +3 -3
- package/dist/esm/components/DatePicker/MobileCalendar.js +4 -3
- package/dist/esm/components/DatePicker/MobileCalendar.js.map +1 -0
- package/dist/esm/components/DatePicker/StubButton.css +2 -1
- package/dist/esm/components/DatePicker/StubButton.css.map +1 -0
- package/dist/esm/components/DatePicker/StubButton.d.ts +1 -1
- package/dist/esm/components/DatePicker/StubButton.js +3 -2
- package/dist/esm/components/DatePicker/StubButton.js.map +1 -0
- package/dist/esm/components/DatePicker/hooks/datePickerStateFactory.d.ts +2 -2
- package/dist/esm/components/DatePicker/hooks/datePickerStateFactory.js +2 -1
- package/dist/esm/components/DatePicker/hooks/datePickerStateFactory.js.map +1 -0
- package/dist/esm/components/DatePicker/hooks/useDatePickerProps.d.ts +7 -7
- package/dist/esm/components/DatePicker/hooks/useDatePickerProps.js +26 -23
- package/dist/esm/components/DatePicker/hooks/useDatePickerProps.js.map +1 -0
- package/dist/esm/components/DatePicker/hooks/useDatePickerState.d.ts +3 -3
- package/dist/esm/components/DatePicker/hooks/useDatePickerState.js +5 -4
- package/dist/esm/components/DatePicker/hooks/useDatePickerState.js.map +1 -0
- package/dist/esm/components/DatePicker/i18n/index.d.ts +5 -1
- package/dist/esm/components/DatePicker/i18n/index.js +4 -3
- package/dist/esm/components/DatePicker/i18n/index.js.map +1 -0
- package/dist/esm/components/DatePicker/index.d.ts +3 -3
- package/dist/esm/components/DatePicker/index.js +4 -3
- package/dist/esm/components/DatePicker/index.js.map +1 -0
- package/dist/esm/components/DatePicker/utils/cn.js +2 -1
- package/dist/esm/components/DatePicker/utils/cn.js.map +1 -0
- package/dist/esm/components/DatePicker/utils/getDateTimeValue.d.ts +1 -1
- package/dist/esm/components/DatePicker/utils/getDateTimeValue.js +1 -0
- package/dist/esm/components/DatePicker/utils/getDateTimeValue.js.map +1 -0
- package/dist/esm/components/DatePicker/utils/index.d.ts +2 -2
- package/dist/esm/components/DatePicker/utils/index.js +3 -2
- package/dist/esm/components/DatePicker/utils/index.js.map +1 -0
- package/dist/esm/components/HiddenInput/HiddenInput.js +1 -0
- package/dist/esm/components/HiddenInput/HiddenInput.js.map +1 -0
- package/dist/esm/components/RangeCalendar/RangeCalendar.d.ts +4 -4
- package/dist/esm/components/RangeCalendar/RangeCalendar.js +4 -3
- package/dist/esm/components/RangeCalendar/RangeCalendar.js.map +1 -0
- package/dist/esm/components/RangeCalendar/index.d.ts +1 -1
- package/dist/esm/components/RangeCalendar/index.js +2 -1
- package/dist/esm/components/RangeCalendar/index.js.map +1 -0
- package/dist/esm/components/RangeDateField/RangeDateField.css +2 -1
- package/dist/esm/components/RangeDateField/RangeDateField.css.map +1 -0
- package/dist/esm/components/RangeDateField/RangeDateField.d.ts +3 -3
- package/dist/esm/components/RangeDateField/RangeDateField.js +6 -5
- package/dist/esm/components/RangeDateField/RangeDateField.js.map +1 -0
- package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.d.ts +3 -3
- package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.js +6 -5
- package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.js.map +1 -0
- package/dist/esm/components/RangeDateField/index.d.ts +2 -2
- package/dist/esm/components/RangeDateField/index.js +3 -2
- package/dist/esm/components/RangeDateField/index.js.map +1 -0
- package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.d.ts +1 -1
- package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.js +2 -1
- package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.js.map +1 -0
- package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.d.ts +4 -4
- package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.js +2 -1
- package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.js.map +1 -0
- package/dist/esm/components/RangeDateField/utils/index.d.ts +3 -3
- package/dist/esm/components/RangeDateField/utils/index.js +4 -3
- package/dist/esm/components/RangeDateField/utils/index.js.map +1 -0
- package/dist/esm/components/RangeDateField/utils/isValidRange.d.ts +1 -1
- package/dist/esm/components/RangeDateField/utils/isValidRange.js +1 -0
- package/dist/esm/components/RangeDateField/utils/isValidRange.js.map +1 -0
- package/dist/esm/components/RangeDatePicker/RangeDatePicker.css +2 -1
- package/dist/esm/components/RangeDatePicker/RangeDatePicker.css.map +1 -0
- package/dist/esm/components/RangeDatePicker/RangeDatePicker.d.ts +3 -3
- package/dist/esm/components/RangeDatePicker/RangeDatePicker.js +11 -10
- package/dist/esm/components/RangeDatePicker/RangeDatePicker.js.map +1 -0
- package/dist/esm/components/RangeDatePicker/hooks/useRangeDatePickerState.d.ts +3 -3
- package/dist/esm/components/RangeDatePicker/hooks/useRangeDatePickerState.js +5 -4
- package/dist/esm/components/RangeDatePicker/hooks/useRangeDatePickerState.js.map +1 -0
- package/dist/esm/components/RangeDatePicker/index.d.ts +2 -2
- package/dist/esm/components/RangeDatePicker/index.js +3 -2
- package/dist/esm/components/RangeDatePicker/index.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/RangeDateSelection.css +2 -1
- package/dist/esm/components/RangeDateSelection/RangeDateSelection.css.map +1 -0
- package/dist/esm/components/RangeDateSelection/RangeDateSelection.d.ts +4 -4
- package/dist/esm/components/RangeDateSelection/RangeDateSelection.js +10 -9
- package/dist/esm/components/RangeDateSelection/RangeDateSelection.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.css +2 -1
- package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.css.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.d.ts +1 -1
- package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.js +5 -4
- package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ruler/Ruler.d.ts +2 -2
- package/dist/esm/components/RangeDateSelection/components/Ruler/Ruler.js +9 -8
- package/dist/esm/components/RangeDateSelection/components/Ruler/Ruler.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.css +2 -1
- package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.css.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.d.ts +2 -2
- package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.js +4 -3
- package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.css +2 -1
- package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.css.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.d.ts +3 -3
- package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.js +7 -6
- package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ticks/MiddleTicks.js +3 -2
- package/dist/esm/components/RangeDateSelection/components/Ticks/MiddleTicks.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ticks/SlitTicks.js +3 -2
- package/dist/esm/components/RangeDateSelection/components/Ticks/SlitTicks.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.css +2 -1
- package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.css.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.d.ts +3 -3
- package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.js +6 -5
- package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ticks/UnavialableTicks.d.ts +3 -3
- package/dist/esm/components/RangeDateSelection/components/Ticks/UnavialableTicks.js +5 -4
- package/dist/esm/components/RangeDateSelection/components/Ticks/UnavialableTicks.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/components/Ticks/utils.d.ts +1 -1
- package/dist/esm/components/RangeDateSelection/components/Ticks/utils.js +3 -2
- package/dist/esm/components/RangeDateSelection/components/Ticks/utils.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/hooks/useRangeDateSelectionState.d.ts +1 -1
- package/dist/esm/components/RangeDateSelection/hooks/useRangeDateSelectionState.js +5 -4
- package/dist/esm/components/RangeDateSelection/hooks/useRangeDateSelectionState.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/i18n/index.d.ts +5 -1
- package/dist/esm/components/RangeDateSelection/i18n/index.js +4 -3
- package/dist/esm/components/RangeDateSelection/i18n/index.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/index.d.ts +3 -3
- package/dist/esm/components/RangeDateSelection/index.js +3 -2
- package/dist/esm/components/RangeDateSelection/index.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/utils/date.js +2 -1
- package/dist/esm/components/RangeDateSelection/utils/date.js.map +1 -0
- package/dist/esm/components/RangeDateSelection/utils/span.js +1 -0
- package/dist/esm/components/RangeDateSelection/utils/span.js.map +1 -0
- package/dist/esm/components/RelativeDateField/RelativeDateField.css +2 -1
- package/dist/esm/components/RelativeDateField/RelativeDateField.css.map +1 -0
- package/dist/esm/components/RelativeDateField/RelativeDateField.d.ts +3 -3
- package/dist/esm/components/RelativeDateField/RelativeDateField.js +24 -15
- package/dist/esm/components/RelativeDateField/RelativeDateField.js.map +1 -0
- package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.d.ts +4 -4
- package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.js +1 -0
- package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.js.map +1 -0
- package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.d.ts +1 -1
- package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.js +1 -0
- package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.js.map +1 -0
- package/dist/esm/components/RelativeDateField/index.d.ts +3 -3
- package/dist/esm/components/RelativeDateField/index.js +4 -3
- package/dist/esm/components/RelativeDateField/index.js.map +1 -0
- package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.css +2 -1
- package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.css.map +1 -0
- package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.d.ts +4 -4
- package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.js +13 -12
- package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.js.map +1 -0
- package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.d.ts +7 -7
- package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js +11 -14
- package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js.map +1 -0
- package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.d.ts +3 -3
- package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js +3 -2
- package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js.map +1 -0
- package/dist/esm/components/RelativeDatePicker/i18n/index.d.ts +5 -1
- package/dist/esm/components/RelativeDatePicker/i18n/index.js +4 -3
- package/dist/esm/components/RelativeDatePicker/i18n/index.js.map +1 -0
- package/dist/esm/components/RelativeDatePicker/index.d.ts +3 -3
- package/dist/esm/components/RelativeDatePicker/index.js +4 -3
- package/dist/esm/components/RelativeDatePicker/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css +2 -1
- package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.d.ts +2 -2
- package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js +10 -9
- package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.css +2 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.css.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.d.ts +3 -3
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.js +7 -10
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/i18n/index.d.ts +5 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/i18n/index.js +4 -3
- package/dist/esm/components/RelativeRangeDatePicker/components/Control/i18n/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css +2 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.d.ts +8 -5
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js +17 -12
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.d.ts +5 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js +4 -3
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.d.ts +5 -5
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js +3 -2
- package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.css +4 -2
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.css.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.d.ts +3 -3
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.js +5 -4
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css +7 -5
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.d.ts +2 -2
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js +6 -5
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js +2 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.d.ts +5 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.js +4 -3
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.d.ts +1 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.js +3 -2
- package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.css +2 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.css.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.d.ts +1 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.js +6 -9
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.d.ts +5 -1
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.js +4 -3
- package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.d.ts +2 -2
- package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js +3 -2
- package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/i18n/index.d.ts +5 -1
- package/dist/esm/components/RelativeRangeDatePicker/i18n/index.js +4 -3
- package/dist/esm/components/RelativeRangeDatePicker/i18n/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/index.d.ts +9 -9
- package/dist/esm/components/RelativeRangeDatePicker/index.js +7 -6
- package/dist/esm/components/RelativeRangeDatePicker/index.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/types.d.ts +9 -6
- package/dist/esm/components/RelativeRangeDatePicker/types.js +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/types.js.map +1 -0
- package/dist/esm/components/RelativeRangeDatePicker/utils.d.ts +3 -3
- package/dist/esm/components/RelativeRangeDatePicker/utils.js +2 -1
- package/dist/esm/components/RelativeRangeDatePicker/utils.js.map +1 -0
- package/dist/esm/components/index.d.ts +11 -11
- package/dist/esm/components/index.js +11 -10
- package/dist/esm/components/index.js.map +1 -0
- package/dist/esm/components/mixins.css +2 -0
- package/dist/esm/components/mixins.css.map +1 -0
- package/dist/esm/components/types/datePicker.d.ts +1 -1
- package/dist/esm/components/types/datePicker.js +1 -0
- package/dist/esm/components/types/datePicker.js.map +1 -0
- package/dist/esm/components/types/events.js +1 -0
- package/dist/esm/components/types/events.js.map +1 -0
- package/dist/esm/components/types/index.d.ts +4 -4
- package/dist/esm/components/types/index.js +1 -0
- package/dist/esm/components/types/index.js.map +1 -0
- package/dist/esm/components/types/inputs.js +1 -0
- package/dist/esm/components/types/inputs.js.map +1 -0
- package/dist/esm/components/types/style.js +1 -0
- package/dist/esm/components/types/style.js.map +1 -0
- package/dist/esm/components/utils/constants.js +1 -0
- package/dist/esm/components/utils/constants.js.map +1 -0
- package/dist/esm/components/utils/dates.js +1 -0
- package/dist/esm/components/utils/dates.js.map +1 -0
- package/dist/esm/components/utils/filterDOMProps.d.ts +1 -1
- package/dist/esm/components/utils/filterDOMProps.js +1 -0
- package/dist/esm/components/utils/filterDOMProps.js.map +1 -0
- package/dist/esm/components/utils/getButtonSizeForInput.js +1 -0
- package/dist/esm/components/utils/getButtonSizeForInput.js.map +1 -0
- package/dist/esm/components/utils/mergeProps.js +1 -0
- package/dist/esm/components/utils/mergeProps.js.map +1 -0
- package/dist/esm/components/utils/useDefaultTimeZone.js +1 -0
- package/dist/esm/components/utils/useDefaultTimeZone.js.map +1 -0
- package/dist/esm/components/utils/validation/datePicker.js +2 -1
- package/dist/esm/components/utils/validation/datePicker.js.map +1 -0
- package/dist/esm/components/utils/validation/i18n/index.d.ts +5 -1
- package/dist/esm/components/utils/validation/i18n/index.js +4 -3
- package/dist/esm/components/utils/validation/i18n/index.js.map +1 -0
- package/dist/esm/components/variables.css +2 -0
- package/dist/esm/components/variables.css.map +1 -0
- package/dist/esm/hooks/useEventHandler.js +1 -0
- package/dist/esm/hooks/useEventHandler.js.map +1 -0
- package/dist/esm/hooks/useMove.js +2 -1
- package/dist/esm/hooks/useMove.js.map +1 -0
- package/dist/esm/hooks/useResizeObserver.js +1 -0
- package/dist/esm/hooks/useResizeObserver.js.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/utils/cn.js +1 -0
- package/dist/esm/utils/cn.js.map +1 -0
- package/package.json +40 -36
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { DateTime } from '@gravity-ui/date-utils';
|
|
3
|
-
import type { CalendarInstance, CalendarSize } from
|
|
4
|
-
import type { CalendarStateOptions } from
|
|
5
|
-
import type { AccessibilityProps, DomProps, FocusEvents, StyleProps } from
|
|
6
|
-
import
|
|
3
|
+
import type { CalendarInstance, CalendarSize } from "../CalendarView/CalendarView.js";
|
|
4
|
+
import type { CalendarStateOptions } from "../CalendarView/hooks/useCalendarState.js";
|
|
5
|
+
import type { AccessibilityProps, DomProps, FocusEvents, StyleProps } from "../types/index.js";
|
|
6
|
+
import "../CalendarView/Calendar.css";
|
|
7
7
|
export interface CalendarProps<T = DateTime> extends CalendarStateOptions<T>, DomProps, StyleProps, FocusEvents, AccessibilityProps {
|
|
8
8
|
/**
|
|
9
9
|
* The size of the element.
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
"use strict";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
4
|
exports.Calendar = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
8
6
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
9
|
-
const react_1 = __importDefault(require("react"));
|
|
10
|
-
const CalendarView_1 = require("../CalendarView/CalendarView");
|
|
11
|
-
const useCalendarState_1 = require("../CalendarView/hooks/useCalendarState");
|
|
7
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
8
|
+
const CalendarView_1 = require("../CalendarView/CalendarView.js");
|
|
9
|
+
const useCalendarState_1 = require("../CalendarView/hooks/useCalendarState.js");
|
|
12
10
|
require("../CalendarView/Calendar.css");
|
|
13
11
|
exports.Calendar = react_1.default.forwardRef(function Calendar(props, ref) {
|
|
14
12
|
const state = (0, useCalendarState_1.useCalendarState)(props);
|
|
15
13
|
return (0, jsx_runtime_1.jsx)(CalendarView_1.CalendarView, Object.assign({ ref: ref }, props, { state: state }));
|
|
16
14
|
});
|
|
15
|
+
//# sourceMappingURL=Calendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Calendar.js","sourceRoot":"../../../../src","sources":["components/Calendar/Calendar.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;AAEb,0DAA0B;AAI1B,kEAA0D;AAE1D,gFAAwE;AAIxE,wCAAuC;AAc1B,QAAA,QAAQ,GAAG,eAAK,CAAC,UAAU,CAAkC,SAAS,QAAQ,CACvF,KAAoB,EACpB,GAAG;IAEH,MAAM,KAAK,GAAG,IAAA,mCAAgB,EAAC,KAAK,CAAC,CAAC;IAEtC,OAAO,uBAAC,2BAAY,kBAAC,GAAG,EAAE,GAAG,IAAM,KAAK,IAAE,KAAK,EAAE,KAAK,IAAI,CAAC;AAC/D,CAAC,CAAC,CAAC","sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport type {DateTime} from '@gravity-ui/date-utils';\n\nimport {CalendarView} from '../CalendarView/CalendarView';\nimport type {CalendarInstance, CalendarSize} from '../CalendarView/CalendarView';\nimport {useCalendarState} from '../CalendarView/hooks/useCalendarState';\nimport type {CalendarStateOptions} from '../CalendarView/hooks/useCalendarState';\nimport type {AccessibilityProps, DomProps, FocusEvents, StyleProps} from '../types';\n\nimport '../CalendarView/Calendar.scss';\n\nexport interface CalendarProps<T = DateTime>\n extends CalendarStateOptions<T>,\n DomProps,\n StyleProps,\n FocusEvents,\n AccessibilityProps {\n /**\n * The size of the element.\n * @default m\n */\n size?: CalendarSize;\n}\nexport const Calendar = React.forwardRef<CalendarInstance, CalendarProps>(function Calendar(\n props: CalendarProps,\n ref,\n) {\n const state = useCalendarState(props);\n\n return <CalendarView ref={ref} {...props} state={state} />;\n});\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export type { CalendarInstance } from
|
|
4
|
-
export * from
|
|
5
|
-
export * from
|
|
6
|
-
export * from
|
|
7
|
-
export * from
|
|
8
|
-
export * from
|
|
1
|
+
export * from "./Calendar.js";
|
|
2
|
+
export * from "../RangeCalendar/RangeCalendar.js";
|
|
3
|
+
export type { CalendarInstance } from "../CalendarView/CalendarView.js";
|
|
4
|
+
export * from "../CalendarView/hooks/useCalendarState.js";
|
|
5
|
+
export * from "../CalendarView/hooks/useRangeCalendarState.js";
|
|
6
|
+
export * from "../CalendarView/hooks/useCalendarProps.js";
|
|
7
|
+
export * from "../CalendarView/hooks/useCalendarGridProps.js";
|
|
8
|
+
export * from "../CalendarView/hooks/useCalendarCellProps.js";
|
|
@@ -1,23 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
|
|
18
|
-
__exportStar(require("
|
|
19
|
-
__exportStar(require("../
|
|
20
|
-
__exportStar(require("../CalendarView/hooks/
|
|
21
|
-
__exportStar(require("../CalendarView/hooks/
|
|
22
|
-
__exportStar(require("../CalendarView/hooks/
|
|
23
|
-
__exportStar(require("../CalendarView/hooks/
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./Calendar.js"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("../RangeCalendar/RangeCalendar.js"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("../CalendarView/hooks/useCalendarState.js"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("../CalendarView/hooks/useRangeCalendarState.js"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("../CalendarView/hooks/useCalendarProps.js"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("../CalendarView/hooks/useCalendarGridProps.js"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("../CalendarView/hooks/useCalendarCellProps.js"), exports);
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["components/Calendar/index.ts"],"names":[],"mappings":";;;AAAA,wDAA2B;AAC3B,4EAA+C;AAI/C,oFAAuD;AACvD,yFAA4D;AAC5D,oFAAuD;AACvD,wFAA2D;AAC3D,wFAA2D","sourcesContent":["export * from './Calendar';\nexport * from '../RangeCalendar/RangeCalendar';\n\nexport type {CalendarInstance} from '../CalendarView/CalendarView';\n\nexport * from '../CalendarView/hooks/useCalendarState';\nexport * from '../CalendarView/hooks/useRangeCalendarState';\nexport * from '../CalendarView/hooks/useCalendarProps';\nexport * from '../CalendarView/hooks/useCalendarGridProps';\nexport * from '../CalendarView/hooks/useCalendarCellProps';\n"]}
|
|
@@ -18,9 +18,10 @@
|
|
|
18
18
|
}
|
|
19
19
|
.g-date-calendar_size_xl {
|
|
20
20
|
--g-date-calendar-day-size: 42px;
|
|
21
|
+
font-family: var(--g-text-body-font-family);
|
|
22
|
+
font-weight: var(--g-text-body-font-weight);
|
|
21
23
|
font-size: var(--g-text-body-2-font-size);
|
|
22
24
|
line-height: var(--g-text-body-2-line-height);
|
|
23
|
-
font-weight: var(--g-text-body-font-weight);
|
|
24
25
|
}
|
|
25
26
|
.g-date-calendar__header {
|
|
26
27
|
display: flex;
|
|
@@ -228,4 +229,5 @@
|
|
|
228
229
|
cursor: default;
|
|
229
230
|
opacity: 0.5;
|
|
230
231
|
background-color: var(--g-color-base-generic);
|
|
231
|
-
}
|
|
232
|
+
}
|
|
233
|
+
/*# sourceMappingURL=Calendar.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["components/CalendarView/data:;charset=utf-8,@use%20'@gravity-ui/uikit/styles/mixins';%0A@use%20'../variables';%0A%0A$block:%20'.%23%7Bvariables.$ns%7Dcalendar';%0A%0A%23%7B$block%7D%20%7B%0A%20%20%20%20--_--calendar-padding:%20var(--g-date-calendar-padding,%208px);%0A%20%20%20%20--_--calendar-day-size:%20var(--g-date-calendar-day-size,%2028px);%0A%20%20%20%20--_--calendar-days-gap:%20var(--g-date-calendar-days-gap,%202px);%0A%0A%20%20%20%20--_--calendar-width:%20calc(%0A%20%20%20%20%20%20%20%207%20*%20var(--_--calendar-day-size)%20+%206%20*%20var(--_--calendar-days-gap)%20+%202%20*%0A%20%20%20%20%20%20%20%20%20%20%20%20var(--_--calendar-padding)%0A%20%20%20%20);%0A%20%20%20%20--_--calendar-grid-height:%20calc(%0A%20%20%20%20%20%20%20%207%20*%20var(--_--calendar-day-size)%20+%205%20*%20var(--_--calendar-days-gap)%20+%0A%20%20%20%20%20%20%20%20%20%20%20%20var(--_--calendar-padding)%0A%20%20%20%20);%0A%0A%20%20%20%20display:%20inline-block;%0A%0A%20%20%20%20width:%20var(--_--calendar-width);%0A%0A%20%20%20%20&_size_l%20%7B%0A%20%20%20%20%20%20%20%20--g-date-calendar-day-size:%2036px;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&_size_xl%20%7B%0A%20%20%20%20%20%20%20%20--g-date-calendar-day-size:%2042px;%0A%0A%20%20%20%20%20%20%20%20@include%20mixins.text-body-2();%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__header%20%7B%0A%20%20%20%20%20%20%20%20display:%20flex;%0A%0A%20%20%20%20%20%20%20%20padding:%20var(--_--calendar-padding)%20var(--_--calendar-padding)%200;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__years-label%20%7B%0A%20%20%20%20%20%20%20%20color:%20var(--g-color-text-secondary);%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__controls%20%7B%0A%20%20%20%20%20%20%20%20margin-inline-start:%20auto;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__control-icon%20%7B%0A%20%20%20%20%20%20%20%20transform:%20scaleX(var(--g-flow-direction));%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__grid%20%7B%0A%20%20%20%20%20%20%20%20position:%20relative;%0A%0A%20%20%20%20%20%20%20%20overflow:%20hidden;%0A%0A%20%20%20%20%20%20%20%20width:%20100%25;%0A%20%20%20%20%20%20%20%20height:%20var(--_--calendar-grid-height);%0A%0A%20%20%20%20%20%20%20%20user-select:%20none;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__content%20%7B%0A%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20inset-block-start:%200;%0A%20%20%20%20%20%20%20%20inset-inline-start:%200;%0A%0A%20%20%20%20%20%20%20%20display:%20grid;%0A%20%20%20%20%20%20%20%20grid-template-rows:%20var(--_--calendar-day-size)%201fr;%0A%0A%20%20%20%20%20%20%20%20box-sizing:%20border-box;%0A%20%20%20%20%20%20%20%20width:%20100%25;%0A%20%20%20%20%20%20%20%20height:%20100%25;%0A%20%20%20%20%20%20%20%20padding:%200%20var(--_--calendar-padding)%20var(--_--calendar-padding);%0A%0A%20%20%20%20%20%20%20%20@keyframes%20calendar-forward%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateX(0);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20to%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateX(100%25);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20@keyframes%20calendar-backward%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateX(0);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20to%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateX(-100%25);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20@keyframes%20calendar-zoom-in-showing%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(2);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20to%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%201;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(1);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20@keyframes%20calendar-zoom-in-hiding%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%201;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(1);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20to%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(0);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20@keyframes%20calendar-zoom-out-showing%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(0);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20to%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%201;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(1);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20@keyframes%20calendar-zoom-out-hiding%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%201;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(1);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20to%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale(2);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_animation_forward%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateX(-100%25);%0A%20%20%20%20%20%20%20%20%20%20%20%20animation:%20calendar-forward%200.25s%20ease%20forwards;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20&%23%7B$block%7D__current-state%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20inset-inline-start:%20calc(var(--g-flow-direction)%20*%20-100%25);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_animation_backward%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateX(0);%0A%20%20%20%20%20%20%20%20%20%20%20%20animation:%20calendar-backward%200.25s%20ease%20forwards;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20&%23%7B$block%7D__current-state%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20inset-inline-start:%20calc(var(--g-flow-direction)%20*%20100%25);%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_animation_zoom-in%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale();%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20&%23%7B$block%7D__previous-state%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20animation:%20calendar-zoom-in-hiding%200.25s%20ease%20forwards;%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20&%23%7B$block%7D__current-state%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20animation:%20calendar-zoom-in-showing%200.25s%20ease%20forwards;%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_animation_zoom-out%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20transform:%20scale();%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20&%23%7B$block%7D__current-state%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20animation:%20calendar-zoom-out-showing%200.25s%20ease%20forwards;%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20&%23%7B$block%7D__previous-state%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20animation:%20calendar-zoom-out-hiding%200.25s%20ease%20forwards;%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20@media%20screen%20and%20(prefers-reduced-motion:%20reduce),%20(update:%20slow)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20&%5Bclass%5D%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20animation-duration:%200.001ms;%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__grid-rowgroup%20%7B%0A%20%20%20%20%20%20%20%20display:%20grid;%0A%20%20%20%20%20%20%20%20gap:%20var(--_--calendar-days-gap);%0A%0A%20%20%20%20%20%20%20%20&_mode_months,%0A%20%20%20%20%20%20%20%20&_mode_quarters,%0A%20%20%20%20%20%20%20%20&_mode_years%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20grid-row:%201%20/%20-1;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20padding:%2012px%200%200;%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&-header%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20align-self:%20center;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__grid-row%20%7B%0A%20%20%20%20%20%20%20%20display:%20grid;%0A%20%20%20%20%20%20%20%20grid-auto-columns:%201fr;%0A%20%20%20%20%20%20%20%20grid-auto-flow:%20column;%0A%20%20%20%20%20%20%20%20gap:%20var(--_--calendar-days-gap);%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__weekday%20%7B%0A%20%20%20%20%20%20%20%20display:%20flex;%0A%20%20%20%20%20%20%20%20justify-content:%20center;%0A%20%20%20%20%20%20%20%20align-items:%20center;%0A%0A%20%20%20%20%20%20%20%20width:%20100%25;%0A%20%20%20%20%20%20%20%20height:%20100%25;%0A%0A%20%20%20%20%20%20%20%20&_weekend%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20color:%20var(--g-color-text-danger);%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__button%20%7B%0A%20%20%20%20%20%20%20%20position:%20relative;%0A%0A%20%20%20%20%20%20%20%20display:%20flex;%0A%20%20%20%20%20%20%20%20justify-content:%20center;%0A%20%20%20%20%20%20%20%20align-items:%20center;%0A%0A%20%20%20%20%20%20%20%20width:%20100%25;%0A%20%20%20%20%20%20%20%20height:%20100%25;%0A%0A%20%20%20%20%20%20%20%20font-weight:%20var(--g-text-subheader-font-weight);%0A%20%20%20%20%20%20%20%20cursor:%20pointer;%0A%0A%20%20%20%20%20%20%20%20border-radius:%204px;%0A%20%20%20%20%20%20%20%20outline:%20none;%0A%0A%20%20%20%20%20%20%20%20&:focus%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20box-shadow:%200%200%200%202px%20var(--g-color-line-misc);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&:focus:not(:focus-visible)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20box-shadow:%20none;%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&:hover%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20background-color:%20var(--g-color-base-generic);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_selected%5Bclass%5D%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20background-color:%20var(--g-color-base-selection);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_selected%23%7B&%7D_selection-start,%0A%20%20%20%20%20%20%20%20&_selected%23%7B&%7D_selection-end%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20background-color:%20var(--g-color-base-brand);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_weekend%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20color:%20var(--g-color-text-danger);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_out-of-boundary%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20font-weight:%20var(--g-text-body-font-weight);%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200.6;%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_current::before%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20%20%20%20%20inset-block-start:%2050%25;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20display:%20block;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20width:%204px;%0A%20%20%20%20%20%20%20%20%20%20%20%20height:%204px;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20content:%20'';%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20border-radius:%2050%25;%0A%20%20%20%20%20%20%20%20%20%20%20%20background-color:%20currentColor;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20transform:%20translateY(8px);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_disabled%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20font-weight:%20var(--g-text-body-font-weight);%0A%20%20%20%20%20%20%20%20%20%20%20%20pointer-events:%20none;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200.6;%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_unavailable:not(&_disabled)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20font-weight:%20var(--g-text-body-font-weight);%0A%20%20%20%20%20%20%20%20%20%20%20%20cursor:%20default;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20opacity:%200.5;%0A%20%20%20%20%20%20%20%20%20%20%20%20background-color:%20var(--g-color-base-generic);%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%7D%0A","components/CalendarView/file:/home/runner/work/date-components/date-components/node_modules/@gravity-ui/uikit/styles/mixins.scss"],"names":[],"mappings":"AAKA;EACI;EACA;EACA;EAEA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAKA;EAEA;;AAEA;EACI;;AAGJ;EACI;EC6IJ;EACA;EACA;EACA;;AD3IA;EACI;EAEA;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;EAEA;EAEA;EACA;EAEA;;AAGJ;EACI;EACA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;;AAEA;EACI;IACI;;EAEJ;IACI;;;AAIR;EACI;IACI;;EAEJ;IACI;;;AAIR;EACI;IACI;IAEA;;EAEJ;IACI;IAEA;;;AAIR;EACI;IACI;IAEA;;EAEJ;IACI;IAEA;;;AAIR;EACI;IACI;IAEA;;EAEJ;IACI;IAEA;;;AAIR;EACI;IACI;IAEA;;EAEJ;IACI;IAEA;;;AAIR;EACI;EACA;;AAEA;EACI;;AAIR;EACI;EACA;;AAEA;EACI;;AAIR;EACI;;AAEA;EACI;;AAEJ;EACI;;AAIR;EACI;;AAEA;EACI;;AAEJ;EACI;;AAIR;EACI;IACI;;;AAKZ;EACI;EACA;;AAEA;EAGI;EAEA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EAEA;EACA;;AAEA;EACI;;AAIR;EACI;EAEA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EACI;;AAGJ;EAEI;;AAGJ;EACI;;AAGJ;EACI;EAEA;;AAGJ;EACI;EACA;EAEA;EAEA;EACA;EAEA;EAEA;EACA;EAEA;;AAGJ;EACI;EACA;EAEA;;AAGJ;EACI;EACA;EAEA;EACA","sourcesContent":["@use '@gravity-ui/uikit/styles/mixins';\n@use '../variables';\n\n$block: '.#{variables.$ns}calendar';\n\n#{$block} {\n --_--calendar-padding: var(--g-date-calendar-padding, 8px);\n --_--calendar-day-size: var(--g-date-calendar-day-size, 28px);\n --_--calendar-days-gap: var(--g-date-calendar-days-gap, 2px);\n\n --_--calendar-width: calc(\n 7 * var(--_--calendar-day-size) + 6 * var(--_--calendar-days-gap) + 2 *\n var(--_--calendar-padding)\n );\n --_--calendar-grid-height: calc(\n 7 * var(--_--calendar-day-size) + 5 * var(--_--calendar-days-gap) +\n var(--_--calendar-padding)\n );\n\n display: inline-block;\n\n width: var(--_--calendar-width);\n\n &_size_l {\n --g-date-calendar-day-size: 36px;\n }\n\n &_size_xl {\n --g-date-calendar-day-size: 42px;\n\n @include mixins.text-body-2();\n }\n\n &__header {\n display: flex;\n\n padding: var(--_--calendar-padding) var(--_--calendar-padding) 0;\n }\n\n &__years-label {\n color: var(--g-color-text-secondary);\n }\n\n &__controls {\n margin-inline-start: auto;\n }\n\n &__control-icon {\n transform: scaleX(var(--g-flow-direction));\n }\n\n &__grid {\n position: relative;\n\n overflow: hidden;\n\n width: 100%;\n height: var(--_--calendar-grid-height);\n\n user-select: none;\n }\n\n &__content {\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 0;\n\n display: grid;\n grid-template-rows: var(--_--calendar-day-size) 1fr;\n\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n padding: 0 var(--_--calendar-padding) var(--_--calendar-padding);\n\n @keyframes calendar-forward {\n from {\n transform: translateX(0);\n }\n to {\n transform: translateX(100%);\n }\n }\n\n @keyframes calendar-backward {\n from {\n transform: translateX(0);\n }\n to {\n transform: translateX(-100%);\n }\n }\n\n @keyframes calendar-zoom-in-showing {\n from {\n opacity: 0;\n\n transform: scale(2);\n }\n to {\n opacity: 1;\n\n transform: scale(1);\n }\n }\n\n @keyframes calendar-zoom-in-hiding {\n from {\n opacity: 1;\n\n transform: scale(1);\n }\n to {\n opacity: 0;\n\n transform: scale(0);\n }\n }\n\n @keyframes calendar-zoom-out-showing {\n from {\n opacity: 0;\n\n transform: scale(0);\n }\n to {\n opacity: 1;\n\n transform: scale(1);\n }\n }\n\n @keyframes calendar-zoom-out-hiding {\n from {\n opacity: 1;\n\n transform: scale(1);\n }\n to {\n opacity: 0;\n\n transform: scale(2);\n }\n }\n\n &_animation_forward {\n transform: translateX(-100%);\n animation: calendar-forward 0.25s ease forwards;\n\n &#{$block}__current-state {\n inset-inline-start: calc(var(--g-flow-direction) * -100%);\n }\n }\n\n &_animation_backward {\n transform: translateX(0);\n animation: calendar-backward 0.25s ease forwards;\n\n &#{$block}__current-state {\n inset-inline-start: calc(var(--g-flow-direction) * 100%);\n }\n }\n\n &_animation_zoom-in {\n transform: scale();\n\n &#{$block}__previous-state {\n animation: calendar-zoom-in-hiding 0.25s ease forwards;\n }\n &#{$block}__current-state {\n animation: calendar-zoom-in-showing 0.25s ease forwards;\n }\n }\n\n &_animation_zoom-out {\n transform: scale();\n\n &#{$block}__current-state {\n animation: calendar-zoom-out-showing 0.25s ease forwards;\n }\n &#{$block}__previous-state {\n animation: calendar-zoom-out-hiding 0.25s ease forwards;\n }\n }\n\n @media screen and (prefers-reduced-motion: reduce), (update: slow) {\n &[class] {\n animation-duration: 0.001ms;\n }\n }\n }\n\n &__grid-rowgroup {\n display: grid;\n gap: var(--_--calendar-days-gap);\n\n &_mode_months,\n &_mode_quarters,\n &_mode_years {\n grid-row: 1 / -1;\n\n padding: 12px 0 0;\n }\n\n &-header {\n align-self: center;\n }\n }\n\n &__grid-row {\n display: grid;\n grid-auto-columns: 1fr;\n grid-auto-flow: column;\n gap: var(--_--calendar-days-gap);\n }\n\n &__weekday {\n display: flex;\n justify-content: center;\n align-items: center;\n\n width: 100%;\n height: 100%;\n\n &_weekend {\n color: var(--g-color-text-danger);\n }\n }\n\n &__button {\n position: relative;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n width: 100%;\n height: 100%;\n\n font-weight: var(--g-text-subheader-font-weight);\n cursor: pointer;\n\n border-radius: 4px;\n outline: none;\n\n &:focus {\n box-shadow: 0 0 0 2px var(--g-color-line-misc);\n }\n\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n\n &:hover {\n background-color: var(--g-color-base-generic);\n }\n\n &_selected[class] {\n background-color: var(--g-color-base-selection);\n }\n\n &_selected#{&}_selection-start,\n &_selected#{&}_selection-end {\n background-color: var(--g-color-base-brand);\n }\n\n &_weekend {\n color: var(--g-color-text-danger);\n }\n\n &_out-of-boundary {\n font-weight: var(--g-text-body-font-weight);\n\n opacity: 0.6;\n }\n\n &_current::before {\n position: absolute;\n inset-block-start: 50%;\n\n display: block;\n\n width: 4px;\n height: 4px;\n\n content: '';\n\n border-radius: 50%;\n background-color: currentColor;\n\n transform: translateY(8px);\n }\n\n &_disabled {\n font-weight: var(--g-text-body-font-weight);\n pointer-events: none;\n\n opacity: 0.6;\n }\n\n &_unavailable:not(&_disabled) {\n font-weight: var(--g-text-body-font-weight);\n cursor: default;\n\n opacity: 0.5;\n background-color: var(--g-color-base-generic);\n }\n }\n}\n","@use 'sass:list';\n@use 'sass:selector';\n\n@mixin overflow-ellipsis($type: ellipsis) {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: $type;\n}\n\n@mixin button-reset() {\n padding: 0;\n\n font-family: var(--g-text-body-font-family);\n font-size: inherit;\n font-weight: var(--g-text-body-font-weight);\n\n color: inherit;\n background: none;\n border: none;\n outline: none;\n cursor: pointer;\n}\n\n@mixin expand-interactive-area($h: 4px, $v: $h) {\n position: relative;\n\n &::after {\n content: '';\n position: absolute;\n inset: logical (-$v) (-$h) (-$v);\n }\n}\n\n@mixin max-height($height) {\n max-height: $height;\n overflow-y: auto;\n}\n\n@mixin max-text-width($width: 100%) {\n @include overflow-ellipsis();\n\n max-width: $width;\n}\n\n@mixin aspect-ratio($ratio) {\n position: relative;\n\n &::before {\n display: block;\n content: '';\n width: 100%;\n padding-block-start: $ratio * 100%;\n }\n\n > *:only-child {\n position: absolute;\n inset: 0;\n }\n}\n\n@function get-pin-selector($mod, $selector, $append: true) {\n @if $append {\n @return selector.append($mod, $selector);\n } @else {\n @return list.join($mod, $selector, $separator: space);\n }\n}\n\n@mixin pin($block, $selectors, $radius, $append: true) {\n @each $selector in $selectors {\n &#{get-pin-selector(#{$block}_pin_round-round, $selector, $append)} {\n border-radius: $radius;\n }\n\n &#{get-pin-selector(#{$block}_pin_brick-brick, $selector, $append)} {\n border-radius: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_clear-clear, $selector, $append)} {\n border-radius: 0;\n border-inline: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_circle-circle, $selector, $append)} {\n border-radius: 100px;\n }\n\n &#{get-pin-selector(#{$block}_pin_round-brick, $selector, $append)} {\n border-start-start-radius: $radius;\n border-start-end-radius: 0;\n border-end-start-radius: $radius;\n border-end-end-radius: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_brick-round, $selector, $append)} {\n border-start-start-radius: 0;\n border-start-end-radius: $radius;\n border-end-start-radius: 0;\n border-end-end-radius: $radius;\n }\n\n &#{get-pin-selector(#{$block}_pin_round-clear, $selector, $append)} {\n border-start-start-radius: $radius;\n border-start-end-radius: 0;\n border-end-start-radius: $radius;\n border-end-end-radius: 0;\n border-inline-end: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_clear-round, $selector, $append)} {\n border-start-start-radius: 0;\n border-start-end-radius: $radius;\n border-end-start-radius: 0;\n border-end-end-radius: $radius;\n border-inline-start: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_brick-clear, $selector, $append)} {\n border-radius: 0;\n border-inline-end: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_clear-brick, $selector, $append)} {\n border-radius: 0;\n border-inline-start: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_circle-brick, $selector, $append)} {\n border-start-start-radius: 100px;\n border-start-end-radius: 0;\n border-end-start-radius: 100px;\n border-end-end-radius: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_brick-circle, $selector, $append)} {\n border-start-start-radius: 0;\n border-start-end-radius: 100px;\n border-end-start-radius: 0;\n border-end-end-radius: 100px;\n }\n\n &#{get-pin-selector(#{$block}_pin_circle-clear, $selector, $append)} {\n border-start-start-radius: 100px;\n border-start-end-radius: 0;\n border-end-start-radius: 100px;\n border-end-end-radius: 0;\n border-inline-end: 0;\n }\n\n &#{get-pin-selector(#{$block}_pin_clear-circle, $selector, $append)} {\n border-start-start-radius: 0;\n border-start-end-radius: 100px;\n border-end-start-radius: 0;\n border-end-end-radius: 100px;\n border-inline-start: 0;\n }\n }\n}\n\n// Typography\n\n@mixin text-body-1() {\n font-family: var(--g-text-body-font-family);\n font-weight: var(--g-text-body-font-weight);\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height);\n}\n\n@mixin text-body-2() {\n font-family: var(--g-text-body-font-family);\n font-weight: var(--g-text-body-font-weight);\n font-size: var(--g-text-body-2-font-size);\n line-height: var(--g-text-body-2-line-height);\n}\n\n@mixin text-body-3() {\n font-family: var(--g-text-body-font-family);\n font-weight: var(--g-text-body-font-weight);\n font-size: var(--g-text-body-3-font-size);\n line-height: var(--g-text-body-3-line-height);\n}\n\n@mixin text-body-short() {\n font-family: var(--g-text-body-font-family);\n font-weight: var(--g-text-body-font-weight);\n font-size: var(--g-text-body-short-font-size);\n line-height: var(--g-text-body-short-line-height);\n}\n\n@mixin text-caption-1() {\n font-family: var(--g-text-caption-font-family);\n font-weight: var(--g-text-caption-font-weight);\n font-size: var(--g-text-caption-1-font-size);\n line-height: var(--g-text-caption-1-line-height);\n}\n\n@mixin text-caption-2() {\n font-family: var(--g-text-caption-font-family);\n font-weight: var(--g-text-caption-font-weight);\n font-size: var(--g-text-caption-2-font-size);\n line-height: var(--g-text-caption-2-line-height);\n}\n\n@mixin text-header-1() {\n font-family: var(--g-text-header-font-family);\n font-weight: var(--g-text-header-font-weight);\n font-size: var(--g-text-header-1-font-size);\n line-height: var(--g-text-header-1-line-height);\n}\n\n@mixin text-header-2() {\n font-family: var(--g-text-header-font-family);\n font-weight: var(--g-text-header-font-weight);\n font-size: var(--g-text-header-2-font-size);\n line-height: var(--g-text-header-2-line-height);\n}\n\n@mixin text-subheader-1() {\n font-family: var(--g-text-subheader-font-family);\n font-weight: var(--g-text-subheader-font-weight);\n font-size: var(--g-text-subheader-1-font-size);\n line-height: var(--g-text-subheader-1-line-height);\n}\n\n@mixin text-subheader-2() {\n font-family: var(--g-text-subheader-font-family);\n font-weight: var(--g-text-subheader-font-weight);\n font-size: var(--g-text-subheader-2-font-size);\n line-height: var(--g-text-subheader-2-line-height);\n}\n\n@mixin text-subheader-3() {\n font-family: var(--g-text-subheader-font-family);\n font-weight: var(--g-text-subheader-font-weight);\n font-size: var(--g-text-subheader-3-font-size);\n line-height: var(--g-text-subheader-3-line-height);\n}\n\n@mixin text-display-1() {\n font-family: var(--g-text-display-font-family);\n font-weight: var(--g-text-display-font-weight);\n font-size: var(--g-text-display-1-font-size);\n line-height: var(--g-text-display-1-line-height);\n}\n\n@mixin text-display-2() {\n font-family: var(--g-text-display-font-family);\n font-weight: var(--g-text-display-font-weight);\n font-size: var(--g-text-display-2-font-size);\n line-height: var(--g-text-display-2-line-height);\n}\n\n@mixin text-display-3() {\n font-family: var(--g-text-display-font-family);\n font-weight: var(--g-text-display-font-weight);\n font-size: var(--g-text-display-3-font-size);\n line-height: var(--g-text-display-3-line-height);\n}\n\n@mixin text-display-4() {\n font-family: var(--g-text-display-font-family);\n font-weight: var(--g-text-display-font-weight);\n font-size: var(--g-text-display-4-font-size);\n line-height: var(--g-text-display-4-line-height);\n}\n\n@mixin text-code-1() {\n font-family: var(--g-text-code-font-family);\n font-weight: var(--g-text-code-font-weight);\n font-size: var(--g-text-code-1-font-size);\n line-height: var(--g-text-code-1-line-height);\n}\n\n@mixin text-code-2() {\n font-family: var(--g-text-code-font-family);\n font-weight: var(--g-text-code-font-weight);\n font-size: var(--g-text-code-2-font-size);\n line-height: var(--g-text-code-2-line-height);\n}\n\n@mixin text-code-3() {\n font-family: var(--g-text-code-font-family);\n font-weight: var(--g-text-code-font-weight);\n font-size: var(--g-text-code-3-font-size);\n line-height: var(--g-text-code-3-line-height);\n}\n\n@mixin text-code-inline-1() {\n font-family: var(--g-text-code-font-family);\n font-weight: var(--g-text-code-font-weight);\n font-size: var(--g-text-code-inline-1-font-size);\n line-height: var(--g-text-code-inline-1-line-height);\n}\n\n@mixin text-code-inline-2() {\n font-family: var(--g-text-code-font-family);\n font-weight: var(--g-text-code-font-weight);\n font-size: var(--g-text-code-inline-2-font-size);\n line-height: var(--g-text-code-inline-2-line-height);\n}\n\n@mixin text-code-inline-3() {\n font-family: var(--g-text-code-font-family);\n font-weight: var(--g-text-code-font-weight);\n font-size: var(--g-text-code-inline-3-font-size);\n line-height: var(--g-text-code-inline-3-line-height);\n}\n\n@mixin text-accent() {\n font-weight: var(--g-text-accent-font-weight);\n}\n\n@mixin loading($loading-color-1: rgba(255, 255, 255, 0.3), $loading-color-2: transparent) {\n background-image: repeating-linear-gradient(\n -45deg,\n $loading-color-1,\n $loading-color-1 4px,\n $loading-color-2 4px,\n $loading-color-2 8px\n );\n background-size: 150%;\n background-clip: padding-box;\n\n // stylelint-disable-next-line no-unknown-animations\n animation: g-loading-animation 0.5s linear infinite;\n}\n\n@mixin scrollbar() {\n &::-webkit-scrollbar,\n *::-webkit-scrollbar {\n width: var(--g-scrollbar-width);\n height: var(--g-scrollbar-width);\n background: var(--g-color-scroll-track);\n }\n\n &::-webkit-scrollbar-track,\n *::-webkit-scrollbar-track {\n background: var(--g-color-scroll-track);\n }\n\n &::-webkit-scrollbar-corner,\n *::-webkit-scrollbar-corner {\n background: var(--g-color-scroll-corner);\n }\n\n &::-webkit-scrollbar-thumb,\n *::-webkit-scrollbar-thumb {\n background: var(--g-color-scroll-handle);\n }\n\n &::-webkit-scrollbar-thumb:hover,\n *::-webkit-scrollbar-thumb:hover {\n background: var(--g-color-scroll-handle-hover);\n }\n}\n"],"file":"Calendar.css"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { AccessibilityProps, DomProps, FocusEvents, StyleProps } from
|
|
3
|
-
import type { RangeCalendarState } from
|
|
4
|
-
import type { CalendarState } from
|
|
5
|
-
import
|
|
2
|
+
import type { AccessibilityProps, DomProps, FocusEvents, StyleProps } from "../types/index.js";
|
|
3
|
+
import type { RangeCalendarState } from "./hooks/types.js";
|
|
4
|
+
import type { CalendarState } from "./hooks/useCalendarState.js";
|
|
5
|
+
import "./Calendar.css";
|
|
6
6
|
export type CalendarSize = 'm' | 'l' | 'xl';
|
|
7
7
|
export interface CalendarInstance {
|
|
8
8
|
focus: () => void;
|
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
"use strict";
|
|
3
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
-
};
|
|
6
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
4
|
exports.CalendarView = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
8
6
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
9
|
-
const react_1 = __importDefault(require("react"));
|
|
7
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
10
8
|
const icons_1 = require("@gravity-ui/icons");
|
|
11
9
|
const uikit_1 = require("@gravity-ui/uikit");
|
|
12
|
-
const cn_1 = require("../../utils/cn");
|
|
13
|
-
const dates_1 = require("../utils/dates");
|
|
14
|
-
const useCalendarCellProps_1 = require("./hooks/useCalendarCellProps");
|
|
15
|
-
const useCalendarGridProps_1 = require("./hooks/useCalendarGridProps");
|
|
16
|
-
const useCalendarProps_1 = require("./hooks/useCalendarProps");
|
|
17
|
-
const utils_1 = require("./utils");
|
|
10
|
+
const cn_1 = require("../../utils/cn.js");
|
|
11
|
+
const dates_1 = require("../utils/dates.js");
|
|
12
|
+
const useCalendarCellProps_1 = require("./hooks/useCalendarCellProps.js");
|
|
13
|
+
const useCalendarGridProps_1 = require("./hooks/useCalendarGridProps.js");
|
|
14
|
+
const useCalendarProps_1 = require("./hooks/useCalendarProps.js");
|
|
15
|
+
const utils_1 = require("./utils.js");
|
|
18
16
|
require("./Calendar.css");
|
|
19
17
|
const b = (0, cn_1.block)('calendar');
|
|
20
18
|
exports.CalendarView = react_1.default.forwardRef(function Calendar(props, ref) {
|
|
@@ -90,3 +88,4 @@ function CalendarCell({ date, state }) {
|
|
|
90
88
|
weekend: isWeekend,
|
|
91
89
|
}), children: formattedDate })) })));
|
|
92
90
|
}
|
|
91
|
+
//# sourceMappingURL=CalendarView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalendarView.js","sourceRoot":"../../../../src","sources":["components/CalendarView/CalendarView.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport type {DateTime} from '@gravity-ui/date-utils';\nimport {ChevronLeft, ChevronRight} from '@gravity-ui/icons';\nimport {ArrowToggle, Button} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport type {AccessibilityProps, DomProps, FocusEvents, StyleProps} from '../types';\nimport {formatDateTime} from '../utils/dates';\n\nimport type {RangeCalendarState} from './hooks/types';\nimport {useCalendarCellProps} from './hooks/useCalendarCellProps';\nimport {useCalendarGridProps} from './hooks/useCalendarGridProps';\nimport {useCalendarProps} from './hooks/useCalendarProps';\nimport type {CalendarState} from './hooks/useCalendarState';\nimport {calendarLayouts, getDaysInPeriod, getWeekDays} from './utils';\n\nimport './Calendar.scss';\n\nconst b = block('calendar');\n\nexport type CalendarSize = 'm' | 'l' | 'xl';\n\nexport interface CalendarInstance {\n focus: () => void;\n}\n\nexport interface CalendarViewProps extends DomProps, StyleProps, FocusEvents, AccessibilityProps {\n state: CalendarState | RangeCalendarState;\n /**\n * The size of the element.\n * @default m\n */\n size?: CalendarSize;\n}\nexport const CalendarView = React.forwardRef<CalendarInstance, CalendarViewProps>(function Calendar(\n props: CalendarViewProps,\n ref,\n) {\n const {state} = props;\n const {calendarProps, modeButtonProps, nextButtonProps, previousButtonProps} = useCalendarProps(\n props,\n state,\n );\n\n React.useImperativeHandle(ref, () => ({\n focus() {\n state.setFocused(true);\n },\n }));\n\n return (\n <div {...calendarProps} className={b({size: props.size})}>\n <div className={b('header')}>\n <Button {...modeButtonProps} view=\"flat\" size={props.size}>\n {state.availableModes.indexOf(state.mode) + 1 ===\n state.availableModes.length ? (\n <span key=\"label\" className={b('mode-label', b(`years-label`))}>\n {modeButtonProps.children}\n </span>\n ) : (\n [\n <span key=\"label\" className={b('mode-label')}>\n {modeButtonProps.children}\n </span>,\n <Button.Icon key=\"icon\">\n <ArrowToggle direction=\"bottom\" />\n </Button.Icon>,\n ]\n )}\n </Button>\n <div className={b('controls')}>\n <Button {...previousButtonProps} view=\"flat\" size={props.size}>\n <Button.Icon>\n <ChevronLeft className={b('control-icon')} />\n </Button.Icon>\n </Button>\n <Button {...nextButtonProps} view=\"flat\" size={props.size}>\n <Button.Icon>\n <ChevronRight className={b('control-icon')} />\n </Button.Icon>\n </Button>\n </div>\n </div>\n <CalendarGrid state={state} />\n </div>\n );\n});\n\ninterface CalendarGridProps {\n state: CalendarState | RangeCalendarState;\n}\nfunction CalendarGrid({state}: CalendarGridProps) {\n const [prevState, setPrevState] = React.useState(() => ({...state, isFocused: false}));\n\n const modeChanged = state.mode !== prevState.mode;\n const startDateChanged = !state.startDate.isSame(prevState.startDate, 'days');\n\n let animation;\n if (modeChanged) {\n if (calendarLayouts.indexOf(prevState.mode) > calendarLayouts.indexOf(state.mode)) {\n animation = 'zoom-out';\n } else {\n animation = 'zoom-in';\n }\n } else if (startDateChanged) {\n if (state.startDate.isBefore(prevState.startDate)) {\n animation = 'forward';\n } else {\n animation = 'backward';\n }\n }\n\n const {gridProps} = useCalendarGridProps(state);\n\n return (\n <div className={b('grid')} {...gridProps}>\n {animation && (\n <Content className={b('previous-state')} state={prevState} animation={animation} />\n )}\n <Content\n key=\"current\"\n className={b('current-state')}\n state={state}\n animation={animation}\n onAnimationEnd={() => {\n setPrevState({...state, isFocused: false});\n }}\n />\n </div>\n );\n}\n\ninterface ContentProps {\n className?: string;\n animation?: string;\n onAnimationEnd?: () => void;\n state: CalendarState | RangeCalendarState;\n}\nfunction Content({className, state, animation, onAnimationEnd}: ContentProps) {\n return (\n <div\n className={b('content', {animation}, className)}\n onAnimationEnd={onAnimationEnd}\n role=\"presentation\"\n >\n {state.mode === 'days' && <Weekdays state={state} />}\n <CalendarGridCells state={state} />\n </div>\n );\n}\n\ninterface WeekdaysProps {\n state: CalendarState | RangeCalendarState;\n}\nfunction Weekdays({state}: WeekdaysProps) {\n const weekdays = getWeekDays(state);\n\n return (\n <div className={b('grid-row')} role=\"row\">\n {weekdays.map((date) => {\n return (\n <div\n key={date.day()}\n className={b('weekday', {weekend: state.isWeekend(date)})}\n role=\"columnheader\"\n aria-label={formatDateTime(date, 'dddd', state.timeZone)}\n >\n {formatDateTime(date, 'dd', state.timeZone)}\n </div>\n );\n })}\n </div>\n );\n}\n\ninterface CalendarGridProps {\n state: CalendarState | RangeCalendarState;\n}\nfunction CalendarGridCells({state}: CalendarGridProps) {\n const rowsInPeriod = state.mode === 'days' ? 6 : 4;\n const columnsInRow = state.mode === 'days' ? 7 : 3 + (state.mode === 'quarters' ? 1 : 0);\n const days = getDaysInPeriod(state);\n return (\n <div className={b('grid-rowgroup', {mode: state.mode})} role=\"rowgroup\">\n {[...new Array(rowsInPeriod).keys()].map((rowIndex) => (\n <div key={rowIndex} className={b('grid-row')} role=\"row\">\n {state.mode === 'quarters' ? (\n <span role=\"rowheader\" className={b('grid-rowgroup-header')}>\n {formatDateTime(days[rowIndex * columnsInRow], 'YYYY', state.timeZone)}\n </span>\n ) : null}\n {days\n .slice(rowIndex * columnsInRow, (rowIndex + 1) * columnsInRow)\n .map((date) => {\n return <CalendarCell key={date.unix()} date={date} state={state} />;\n })}\n </div>\n ))}\n </div>\n );\n}\n\ninterface CalendarCellProps {\n date: DateTime;\n state: CalendarState | RangeCalendarState;\n}\nfunction CalendarCell({date, state}: CalendarCellProps) {\n const {\n cellProps,\n buttonProps,\n formattedDate,\n isDisabled,\n isSelected,\n isRangeSelection,\n isSelectionStart,\n isSelectionEnd,\n isOutsideCurrentRange,\n isUnavailable,\n isCurrent,\n isWeekend,\n } = useCalendarCellProps(date, state);\n\n return (\n <div {...cellProps}>\n <div\n {...buttonProps}\n className={b('button', {\n disabled: isDisabled,\n selected: isSelected,\n 'range-selection': isRangeSelection,\n 'selection-start': isSelectionStart,\n 'selection-end': isSelectionEnd,\n 'out-of-boundary': isOutsideCurrentRange,\n unavailable: isUnavailable,\n current: isCurrent,\n weekend: isWeekend,\n })}\n >\n {formattedDate}\n </div>\n </div>\n );\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { DateTime } from '@gravity-ui/date-utils';
|
|
2
|
-
import type { InputBase, RangeValue } from
|
|
2
|
+
import type { InputBase, RangeValue } from "../../types/index.js";
|
|
3
3
|
export type CalendarLayout = 'days' | 'months' | 'quarters' | 'years';
|
|
4
4
|
export interface CalendarStateOptionsBase extends InputBase {
|
|
5
5
|
/** The minimum allowed date that a user may select. */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"../../../../../src","sources":["components/CalendarView/hooks/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {DateTime} from '@gravity-ui/date-utils';\n\nimport type {InputBase, RangeValue} from '../../types';\n\nexport type CalendarLayout = 'days' | 'months' | 'quarters' | 'years';\n\nexport interface CalendarStateOptionsBase extends InputBase {\n /** The minimum allowed date that a user may select. */\n minValue?: DateTime;\n /** The maximum allowed date that a user may select. */\n maxValue?: DateTime;\n /** Callback that is called for each date of the calendar. If it returns true, then the date is unavailable. */\n isDateUnavailable?: (date: DateTime) => boolean;\n /** Callback that is called for each date of the calendar. If it returns true, then the date is weekend. */\n isWeekend?: (date: DateTime) => boolean;\n /**\n * Which timezone use to show values. Example: 'default', 'system', 'Europe/Amsterdam'.\n * @default The timezone of the `value` or `defaultValue` or `focusedValue` or `defaultFocusedValue`, 'default' otherwise.\n */\n timeZone?: string;\n /**\n * Whether to automatically focus the calendar when it mounts.\n * @default false\n */\n autoFocus?: boolean;\n /** Controls the currently focused date within the calendar. */\n focusedValue?: DateTime | null;\n /** The date that is focused when the calendar first mounts (uncontrolled). */\n defaultFocusedValue?: DateTime;\n /** Handler that is called when the focused date changes. */\n onFocusUpdate?: (date: DateTime) => void;\n /** Controls what to show in calendar (days, months or years) */\n mode?: CalendarLayout;\n /** Initial mode to show in calendar (days, months or years) */\n defaultMode?: CalendarLayout;\n /** Handler that is called when the mode changes */\n onUpdateMode?: (mode: CalendarLayout) => void;\n /** Controls which modes to use */\n modes?: Partial<Record<CalendarLayout, boolean>>;\n}\n\ninterface CalendarStateBase {\n /** Whether the calendar is disabled. */\n readonly disabled?: boolean;\n /** Whether the calendar is in a read only state. */\n readonly readOnly?: boolean;\n /** Which timezone use to show values. */\n readonly timeZone: string;\n /** The minimum allowed date that a user may select. */\n readonly minValue?: DateTime;\n /** The maximum allowed date that a user may select. */\n readonly maxValue?: DateTime;\n /** The currently focused date. */\n readonly focusedDate: DateTime;\n /** Sets the focused date. */\n setFocusedDate: (date: DateTime) => void;\n /** Selects the currently focused date. */\n selectFocusedDate: () => void;\n /** Selects the given date. */\n selectDate: (date: DateTime, force?: boolean) => void;\n /** Moves focus to the next calendar date. */\n focusNextCell: () => void;\n /** Moves focus to the previous calendar date. */\n focusPreviousCell: () => void;\n /** Moves focus to the next row of dates, e.g. the next week. */\n focusNextRow: () => void;\n /** Moves focus to the previous row of dates, e.g. the previous work. */\n focusPreviousRow: () => void;\n /**\n * Moves focus to the next page of dates, e.g. the next month.\n * If the `larger` option is `true`, the focus is moved by the next larger unit.\n * For example, if days are displayed, then focus moves to the next year.\n */\n focusNextPage: (larger?: boolean) => void;\n /**\n * Moves focus to the previous page of dates, e.g. the previous month.\n * If the `larger` option is `true`, the focus is moved by the next larger unit.\n * For example, if days are displayed, then focus moves to the previous year.\n */\n focusPreviousPage: (larger?: boolean) => void;\n /** Moves focus to the start of the current section of dates, e.g. the start of the current month. */\n focusSectionStart: () => void;\n /** Moves focus to the end of the current section of dates, e.g. the end of the current month month. */\n focusSectionEnd: () => void;\n /** Switches to more detailed layout. */\n zoomIn: () => void;\n /** Switches to less detailed layout. */\n zoomOut: () => void;\n /** Whether focus is currently within the calendar. */\n readonly isFocused: boolean;\n /** Sets whether focus is currently within the calendar. */\n setFocused: (isFocused: boolean) => void;\n /** Returns whether the given date is invalid according to the `minValue` and `maxValue` props. */\n isInvalid: (date: DateTime) => boolean;\n /** Returns whether the previous page is allowed to be selected according to the `minValue` prop. */\n isPreviousPageInvalid: () => boolean;\n /** Returns whether the next page is allowed to be selected according to the `maxValue` prop. */\n isNextPageInvalid: () => boolean;\n /** Returns whether the given date is currently selected. */\n isSelected: (date: DateTime) => boolean;\n /** Returns whether the given date is unavailable according to the `isDateUnavailable` prop. */\n isCellUnavailable: (date: DateTime) => boolean;\n /** Returns whether the given date is currently focused. */\n isCellFocused: (date: DateTime) => boolean;\n /** Returns whether the given date is disabled according to the `minValue, `maxValue`, and `isDisabled` props. */\n isCellDisabled: (date: DateTime) => boolean;\n /** Returns whether the given date is weekend */\n isWeekend: (date: DateTime) => boolean;\n /** Returns whether the given date is in current period */\n isCurrent: (date: DateTime) => boolean;\n /** Current calendar layout */\n readonly mode: CalendarLayout;\n /** Sets calendar layout */\n setMode: (mode: CalendarLayout) => void;\n readonly availableModes: CalendarLayout[];\n readonly startDate: DateTime;\n readonly endDate: DateTime;\n}\n\nexport interface CalendarState extends CalendarStateBase {\n /** The currently selected date. */\n readonly value: DateTime | null;\n /** Sets the currently selected date. */\n setValue: (value: DateTime) => void;\n}\n\nexport interface RangeCalendarState extends CalendarStateBase {\n /** The currently selected range. */\n readonly value: RangeValue<DateTime> | null;\n /** Sets the currently selected range. */\n setValue: (value: RangeValue<DateTime>) => void;\n /** The current anchor date that the user clicked on to begin range selection. */\n readonly anchorDate: DateTime | undefined;\n /** Sets the anchor date that the user clicked on to begin range selection. */\n setAnchorDate: (date: DateTime | undefined) => void;\n /** The currently highlighted date range. */\n readonly highlightedRange: RangeValue<DateTime> | undefined;\n /** Highlights the given date during selection, e.g. by hovering. */\n highlightDate: (date: DateTime) => void;\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { DateTime } from '@gravity-ui/date-utils';
|
|
3
|
-
import type { CalendarState, RangeCalendarState } from
|
|
3
|
+
import type { CalendarState, RangeCalendarState } from "./types.js";
|
|
4
4
|
export declare function useCalendarCellProps(date: DateTime, state: CalendarState | RangeCalendarState): {
|
|
5
5
|
cellProps: React.HTMLAttributes<unknown>;
|
|
6
6
|
buttonProps: React.HTMLAttributes<unknown> & {
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.useCalendarCellProps = useCalendarCellProps;
|
|
7
|
-
const
|
|
8
|
-
const
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
+
const dates_1 = require("../../utils/dates.js");
|
|
9
7
|
function useCalendarCellProps(date, state) {
|
|
10
8
|
const ref = react_1.default.useRef(null);
|
|
11
9
|
const isFocused = state.isCellFocused(date);
|
|
@@ -102,3 +100,4 @@ function getDateLabel(date, state) {
|
|
|
102
100
|
return '';
|
|
103
101
|
}
|
|
104
102
|
}
|
|
103
|
+
//# sourceMappingURL=useCalendarCellProps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCalendarCellProps.js","sourceRoot":"../../../../../src","sources":["components/CalendarView/hooks/useCalendarCellProps.ts"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport type {DateTime} from '@gravity-ui/date-utils';\n\nimport {formatDateTime} from '../../utils/dates';\n\nimport type {CalendarState, RangeCalendarState} from './types';\n\nexport function useCalendarCellProps(date: DateTime, state: CalendarState | RangeCalendarState) {\n const ref = React.useRef<HTMLDivElement>(null);\n\n const isFocused = state.isCellFocused(date);\n React.useEffect(() => {\n if (isFocused) {\n ref.current?.focus({preventScroll: true});\n }\n }, [isFocused]);\n\n const tabIndex = state.focusedDate.isSame(date, state.mode) ? 0 : -1;\n const isDisabled = state.isCellDisabled(date);\n const isSelected = state.isSelected(date);\n const highlightedRange = 'highlightedRange' in state && state.highlightedRange;\n const isRangeSelection = Boolean(highlightedRange && isSelected);\n const isSelectionStart =\n isSelected && highlightedRange && date.isSame(highlightedRange.start, state.mode);\n const isSelectionEnd =\n isSelected && highlightedRange && date.isSame(highlightedRange.end, state.mode);\n const isOutsideCurrentRange =\n state.mode === 'days' ? !state.focusedDate.isSame(date, 'month') : false;\n const isUnavailable = state.isCellUnavailable(date);\n const isSelectable = !isDisabled && !isUnavailable;\n const isCurrent = state.isCurrent(date);\n const isWeekend = state.isWeekend(date);\n\n const label = getDateLabel(date, state);\n\n const cellProps: React.HTMLAttributes<unknown> = {\n role: 'gridcell',\n 'aria-selected': isSelected ? 'true' : undefined,\n 'aria-disabled': isDisabled ? 'true' : undefined,\n };\n\n const buttonProps: React.HTMLAttributes<unknown> & {ref: React.Ref<HTMLDivElement>} = {\n ref,\n role: 'button',\n tabIndex: isDisabled ? undefined : tabIndex,\n 'aria-disabled': isSelectable ? undefined : 'true',\n 'aria-label': label,\n onClick: isSelectable\n ? () => {\n state.setFocusedDate(date);\n state.selectDate(date);\n }\n : undefined,\n onPointerEnter() {\n if ('highlightDate' in state && isSelectable) {\n if (isOutsideCurrentRange) {\n const newDate = date.isBefore(state.focusedDate)\n ? state.focusedDate.startOf('month')\n : state.focusedDate.endOf('month').startOf('date');\n state.highlightDate(newDate);\n } else {\n state.highlightDate(date);\n }\n }\n },\n };\n\n let formattedDate = formatDateTime(date, 'D', state.timeZone);\n if (state.mode === 'months') {\n formattedDate = formatDateTime(date, 'MMM', state.timeZone);\n } else if (state.mode === 'quarters') {\n formattedDate = formatDateTime(date, '[Q]Q', state.timeZone);\n } else if (state.mode === 'years') {\n formattedDate = formatDateTime(date, 'YYYY', state.timeZone);\n }\n\n return {\n cellProps,\n buttonProps,\n formattedDate,\n isDisabled,\n isSelected,\n isRangeSelection,\n isSelectionStart,\n isSelectionEnd,\n isOutsideCurrentRange,\n isUnavailable,\n isCurrent,\n isWeekend,\n };\n}\n\nfunction getDateLabel(date: DateTime, state: CalendarState | RangeCalendarState) {\n switch (state.mode) {\n case 'days': {\n return `${formatDateTime(date, 'dddd', state.timeZone)}, ${formatDateTime(date, 'LL', state.timeZone)}`;\n }\n case 'months': {\n return `${formatDateTime(date, 'MMMM YYYY', state.timeZone)}`;\n }\n case 'quarters': {\n return `${formatDateTime(date, '[Q]Q YYYY', state.timeZone)}`;\n }\n case 'years': {\n return `${formatDateTime(date, 'YYYY', state.timeZone)}`;\n }\n default:\n return '';\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CalendarState, RangeCalendarState } from
|
|
1
|
+
import type { CalendarState, RangeCalendarState } from "./types.js";
|
|
2
2
|
export declare function useCalendarGridProps(state: CalendarState | RangeCalendarState): {
|
|
3
3
|
gridProps: import("react").HTMLAttributes<HTMLElement>;
|
|
4
4
|
};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useCalendarGridProps = useCalendarGridProps;
|
|
4
4
|
const uikit_1 = require("@gravity-ui/uikit");
|
|
5
|
-
const dates_1 = require("../../utils/dates");
|
|
5
|
+
const dates_1 = require("../../utils/dates.js");
|
|
6
6
|
function useCalendarGridProps(state) {
|
|
7
7
|
const { focusWithinProps } = (0, uikit_1.useFocusWithin)({
|
|
8
8
|
onFocusWithinChange: (isFocused) => {
|
|
@@ -61,3 +61,4 @@ function useCalendarGridProps(state) {
|
|
|
61
61
|
gridProps,
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
|
+
//# sourceMappingURL=useCalendarGridProps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCalendarGridProps.js","sourceRoot":"../../../../../src","sources":["components/CalendarView/hooks/useCalendarGridProps.ts"],"names":[],"mappings":"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","sourcesContent":["import {useFocusWithin} from '@gravity-ui/uikit';\n\nimport {formatDateTime} from '../../utils/dates';\n\nimport type {CalendarState, RangeCalendarState} from './types';\n\nexport function useCalendarGridProps(state: CalendarState | RangeCalendarState) {\n const {focusWithinProps} = useFocusWithin({\n onFocusWithinChange: (isFocused) => {\n state.setFocused(isFocused);\n },\n });\n\n const gridProps: React.HTMLAttributes<HTMLElement> = {\n role: 'grid',\n 'aria-label':\n state.mode === 'years' || state.mode === 'quarters'\n ? `${state.startDate.year()} — ${state.endDate.year()}`\n : formatDateTime(\n state.focusedDate,\n state.mode === 'days' ? 'MMMM YYYY' : 'YYYY',\n state.timeZone,\n ),\n 'aria-disabled': state.disabled ? 'true' : undefined,\n 'aria-readonly': state.readOnly ? 'true' : undefined,\n ...focusWithinProps,\n onKeyDown: (e) => {\n if (e.key === 'ArrowRight') {\n e.preventDefault();\n state.focusNextCell();\n } else if (e.key === 'ArrowLeft') {\n e.preventDefault();\n state.focusPreviousCell();\n } else if (e.key === 'ArrowDown') {\n e.preventDefault();\n state.focusNextRow();\n } else if (e.key === 'ArrowUp') {\n e.preventDefault();\n state.focusPreviousRow();\n } else if (e.key === 'PageDown') {\n e.preventDefault();\n state.focusNextPage(e.shiftKey);\n } else if (e.key === 'PageUp') {\n e.preventDefault();\n state.focusPreviousPage(e.shiftKey);\n } else if (e.key === 'End') {\n e.preventDefault();\n state.focusSectionEnd();\n } else if (e.key === 'Home') {\n e.preventDefault();\n state.focusSectionStart();\n } else if (e.code === 'Minus') {\n e.preventDefault();\n state.zoomOut();\n } else if (e.code === 'Equal') {\n e.preventDefault();\n state.zoomIn();\n } else if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n state.selectDate(state.focusedDate);\n }\n },\n };\n\n return {\n gridProps,\n };\n}\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type {
|
|
3
|
-
import type { CalendarProps } from
|
|
4
|
-
import type { CalendarState, RangeCalendarState } from
|
|
2
|
+
import type { ButtonButtonProps } from '@gravity-ui/uikit';
|
|
3
|
+
import type { CalendarProps } from "../../Calendar/Calendar.js";
|
|
4
|
+
import type { CalendarState, RangeCalendarState } from "./types.js";
|
|
5
5
|
export declare function useCalendarProps(props: CalendarProps, state: CalendarState | RangeCalendarState): {
|
|
6
6
|
calendarProps: React.HTMLAttributes<HTMLElement>;
|
|
7
|
-
modeButtonProps:
|
|
8
|
-
nextButtonProps:
|
|
9
|
-
previousButtonProps:
|
|
7
|
+
modeButtonProps: ButtonButtonProps;
|
|
8
|
+
nextButtonProps: ButtonButtonProps;
|
|
9
|
+
previousButtonProps: ButtonButtonProps;
|
|
10
10
|
};
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.useCalendarProps = useCalendarProps;
|
|
7
|
-
const
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
8
6
|
const uikit_1 = require("@gravity-ui/uikit");
|
|
9
|
-
const dates_1 = require("../../utils/dates");
|
|
10
|
-
const i18n_1 = require("../i18n");
|
|
7
|
+
const dates_1 = require("../../utils/dates.js");
|
|
8
|
+
const i18n_1 = require("../i18n/index.js");
|
|
11
9
|
const buttonDisabledClassName = 'yc-button_disabled g-button_disabled';
|
|
12
10
|
// eslint-disable-next-line complexity
|
|
13
11
|
function useCalendarProps(props, state) {
|
|
@@ -35,11 +33,9 @@ function useCalendarProps(props, state) {
|
|
|
35
33
|
state.setFocused(true);
|
|
36
34
|
}
|
|
37
35
|
},
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
'aria-live': 'polite',
|
|
42
|
-
},
|
|
36
|
+
'aria-disabled': modeDisabled ? 'true' : undefined,
|
|
37
|
+
'aria-description': getAriaDescriptionForModeButton(state.mode, state.availableModes),
|
|
38
|
+
'aria-live': 'polite',
|
|
43
39
|
children: title,
|
|
44
40
|
};
|
|
45
41
|
const previousFocused = react_1.default.useRef(false);
|
|
@@ -69,10 +65,8 @@ function useCalendarProps(props, state) {
|
|
|
69
65
|
: () => {
|
|
70
66
|
previousFocused.current = false;
|
|
71
67
|
},
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
'aria-disabled': previousDisabled ? 'true' : undefined,
|
|
75
|
-
},
|
|
68
|
+
'aria-label': (0, i18n_1.i18n)('Previous'),
|
|
69
|
+
'aria-disabled': previousDisabled ? 'true' : undefined,
|
|
76
70
|
};
|
|
77
71
|
const nextFocused = react_1.default.useRef(false);
|
|
78
72
|
const nextDisabled = state.disabled || state.isNextPageInvalid();
|
|
@@ -101,10 +95,8 @@ function useCalendarProps(props, state) {
|
|
|
101
95
|
: () => {
|
|
102
96
|
nextFocused.current = false;
|
|
103
97
|
},
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
'aria-disabled': previousDisabled ? 'true' : undefined,
|
|
107
|
-
},
|
|
98
|
+
'aria-label': (0, i18n_1.i18n)('Next'),
|
|
99
|
+
'aria-disabled': previousDisabled ? 'true' : undefined,
|
|
108
100
|
};
|
|
109
101
|
return {
|
|
110
102
|
calendarProps,
|
|
@@ -128,3 +120,4 @@ function getAriaDescriptionForModeButton(mode, availableModes) {
|
|
|
128
120
|
const nextMode = availableModes[nextModeIndex];
|
|
129
121
|
return ariaLabelMap[nextMode];
|
|
130
122
|
}
|
|
123
|
+
//# sourceMappingURL=useCalendarProps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCalendarProps.js","sourceRoot":"../../../../../src","sources":["components/CalendarView/hooks/useCalendarProps.ts"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport {useFocusWithin} from '@gravity-ui/uikit';\nimport type {ButtonButtonProps} from '@gravity-ui/uikit';\n\nimport type {CalendarProps} from '../../Calendar/Calendar';\nimport {formatDateTime} from '../../utils/dates';\nimport {i18n} from '../i18n';\n\nimport type {CalendarLayout, CalendarState, RangeCalendarState} from './types';\n\nconst buttonDisabledClassName = 'yc-button_disabled g-button_disabled';\n\n// eslint-disable-next-line complexity\nexport function useCalendarProps(props: CalendarProps, state: CalendarState | RangeCalendarState) {\n const title =\n state.mode === 'years' || state.mode === 'quarters'\n ? `${state.startDate.year()} — ${state.endDate.year()}`\n : formatDateTime(\n state.focusedDate,\n state.mode === 'days' ? 'MMMM YYYY' : 'YYYY',\n state.timeZone,\n );\n\n const {focusWithinProps} = useFocusWithin({\n onFocusWithin: props.onFocus,\n onBlurWithin: props.onBlur,\n });\n\n const calendarProps: React.HTMLAttributes<HTMLElement> = {\n role: 'group',\n id: props.id,\n 'aria-label': [props['aria-label'], title].filter(Boolean).join(', '),\n 'aria-labelledby': props['aria-labelledby'] || undefined,\n 'aria-describedby': props['aria-describedby'] || undefined,\n 'aria-details': props['aria-details'] || undefined,\n 'aria-disabled': state.disabled || undefined,\n ...focusWithinProps,\n };\n\n const modeIndex = state.availableModes.indexOf(state.mode);\n const isModeLast = modeIndex + 1 === state.availableModes.length;\n const isNextModeLast = modeIndex + 2 === state.availableModes.length;\n const modeDisabled = state.disabled || isModeLast;\n\n const modeButtonProps: ButtonButtonProps = {\n disabled: state.disabled,\n // FIXME: do not use button class name\n className: modeDisabled ? buttonDisabledClassName : undefined,\n onClick: modeDisabled\n ? undefined\n : () => {\n state.zoomOut();\n if (isNextModeLast) {\n state.setFocused(true);\n }\n },\n 'aria-disabled': modeDisabled ? 'true' : undefined,\n 'aria-description': getAriaDescriptionForModeButton(state.mode, state.availableModes),\n 'aria-live': 'polite',\n children: title,\n };\n\n const previousFocused = React.useRef(false);\n const previousDisabled = state.disabled || state.isPreviousPageInvalid();\n\n React.useLayoutEffect(() => {\n if (previousDisabled && previousFocused.current) {\n previousFocused.current = false;\n state.setFocused(true);\n }\n });\n\n const previousButtonProps: ButtonButtonProps = {\n disabled: state.disabled,\n // FIXME: do not use button class name\n className: previousDisabled ? buttonDisabledClassName : undefined,\n onClick: previousDisabled\n ? undefined\n : () => {\n state.focusPreviousPage();\n },\n onFocus: previousDisabled\n ? undefined\n : () => {\n previousFocused.current = true;\n },\n onBlur: previousDisabled\n ? undefined\n : () => {\n previousFocused.current = false;\n },\n 'aria-label': i18n('Previous'),\n 'aria-disabled': previousDisabled ? 'true' : undefined,\n };\n\n const nextFocused = React.useRef(false);\n const nextDisabled = state.disabled || state.isNextPageInvalid();\n\n React.useLayoutEffect(() => {\n if (nextDisabled && nextFocused.current) {\n nextFocused.current = false;\n state.setFocused(true);\n }\n });\n\n const nextButtonProps: ButtonButtonProps = {\n disabled: state.disabled,\n // FIXME: do not use button class name\n className: nextDisabled ? buttonDisabledClassName : undefined,\n onClick: nextDisabled\n ? undefined\n : () => {\n state.focusNextPage();\n },\n onFocus: nextDisabled\n ? undefined\n : () => {\n nextFocused.current = true;\n },\n onBlur: nextDisabled\n ? undefined\n : () => {\n nextFocused.current = false;\n },\n 'aria-label': i18n('Next'),\n 'aria-disabled': previousDisabled ? 'true' : undefined,\n };\n\n return {\n calendarProps,\n modeButtonProps,\n nextButtonProps,\n previousButtonProps,\n };\n}\n\nfunction getAriaDescriptionForModeButton(mode: CalendarLayout, availableModes: CalendarLayout[]) {\n const nextModeIndex = availableModes.indexOf(mode) + 1;\n const isModeLast = nextModeIndex === availableModes.length;\n if (isModeLast) {\n return undefined;\n }\n\n const ariaLabelMap: Record<CalendarLayout, string> = {\n days: '',\n months: i18n('Switch to months view'),\n quarters: i18n('Switch to quarters view'),\n years: i18n('Switch to years view'),\n };\n const nextMode = availableModes[nextModeIndex];\n return ariaLabelMap[nextMode];\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { DateTime } from '@gravity-ui/date-utils';
|
|
2
|
-
import type { ValueBase } from
|
|
3
|
-
import type { CalendarState, CalendarStateOptionsBase } from
|
|
2
|
+
import type { ValueBase } from "../../types/index.js";
|
|
3
|
+
import type { CalendarState, CalendarStateOptionsBase } from "./types.js";
|
|
4
4
|
export interface CalendarStateOptions<T = DateTime> extends ValueBase<T | null, T>, CalendarStateOptionsBase {
|
|
5
5
|
}
|
|
6
|
-
export type { CalendarState } from
|
|
6
|
+
export type { CalendarState } from "./types.js";
|
|
7
7
|
export declare function useCalendarState(props: CalendarStateOptions): CalendarState;
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.useCalendarState = useCalendarState;
|
|
7
|
-
const
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = tslib_1.__importDefault(require("react"));
|
|
8
6
|
const date_utils_1 = require("@gravity-ui/date-utils");
|
|
9
7
|
const uikit_1 = require("@gravity-ui/uikit");
|
|
10
|
-
const dates_1 = require("../../utils/dates");
|
|
11
|
-
const useDefaultTimeZone_1 = require("../../utils/useDefaultTimeZone");
|
|
12
|
-
const utils_1 = require("../utils");
|
|
8
|
+
const dates_1 = require("../../utils/dates.js");
|
|
9
|
+
const useDefaultTimeZone_1 = require("../../utils/useDefaultTimeZone.js");
|
|
10
|
+
const utils_1 = require("../utils.js");
|
|
13
11
|
const defaultModes = {
|
|
14
12
|
days: true,
|
|
15
13
|
months: true,
|
|
@@ -246,3 +244,4 @@ function isInvalid(date, minValue, maxValue, mode = 'days') {
|
|
|
246
244
|
const constrainedDate = (0, dates_1.constrainValue)(date, minValue, maxValue);
|
|
247
245
|
return !constrainedDate.isSame(date, mode);
|
|
248
246
|
}
|
|
247
|
+
//# sourceMappingURL=useCalendarState.js.map
|