@astral/ui 1.25.0 → 1.27.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ConfigProvider/ConfigProvider.d.ts +18 -2
- package/ConfigProvider/ConfigProvider.js +6 -7
- package/DataGrid/DataGridHeadColumn/styles.d.ts +2 -1
- package/DataGrid/DataGridNoData/styles.d.ts +2 -1
- package/DataGridPagination/styles.d.ts +2 -1
- package/DatePicker/DateCalendar/DateCalendarBody/index.d.ts +1 -0
- package/DatePicker/DateCalendar/DateCalendarBody/index.js +17 -0
- package/DatePicker/DateCalendar/DateCalendarBody/styles.d.ts +11 -0
- package/DatePicker/DateCalendar/DateCalendarBody/styles.js +12 -0
- package/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.d.ts +7 -0
- package/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.js +22 -0
- package/DatePicker/DateCalendar/DateCalendarBtn/index.d.ts +1 -0
- package/DatePicker/DateCalendar/DateCalendarBtn/index.js +17 -0
- package/DatePicker/DateCalendar/DateCalendarBtn/styles.d.ts +4 -0
- package/DatePicker/DateCalendar/DateCalendarBtn/styles.js +8 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.d.ts +3 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.js +24 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.d.ts +1 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.js +17 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.d.ts +4 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.js +9 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.d.ts +3 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.js +24 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.d.ts +1 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.js +17 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.d.ts +4 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.js +9 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/index.d.ts +2 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/index.js +18 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.d.ts +4 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.js +10 -0
- package/DatePicker/DateCalendar/DateCalendarChevronBtn/types.d.ts +12 -0
- package/DatePicker/{types.js → DateCalendar/DateCalendarChevronBtn/types.js} +0 -0
- package/DatePicker/DateCalendar/DateCalendarGridBtn/index.d.ts +1 -0
- package/DatePicker/DateCalendar/DateCalendarGridBtn/index.js +17 -0
- package/DatePicker/DateCalendar/DateCalendarGridBtn/styles.d.ts +22 -0
- package/DatePicker/DateCalendar/DateCalendarGridBtn/styles.js +72 -0
- package/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.d.ts +38 -0
- package/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.js +8 -0
- package/DatePicker/DateCalendar/DateCalendarHead/index.d.ts +1 -0
- package/DatePicker/DateCalendar/DateCalendarHead/index.js +17 -0
- package/DatePicker/DateCalendar/DateCalendarHead/styles.d.ts +12 -0
- package/DatePicker/DateCalendar/DateCalendarHead/styles.js +26 -0
- package/DatePicker/DateCalendar/enums/calendarGridPositions.d.ts +6 -0
- package/DatePicker/DateCalendar/enums/calendarGridPositions.js +10 -0
- package/DatePicker/DateCalendar/index.d.ts +4 -0
- package/DatePicker/DateCalendar/index.js +20 -0
- package/{esm/DatePicker/styled.d.ts → DatePicker/DateCalendar/styles.d.ts} +1 -1
- package/DatePicker/DateCalendar/styles.js +15 -0
- package/DatePicker/DatePicker.d.ts +20 -9
- package/DatePicker/DatePicker.js +44 -42
- package/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.d.ts +6 -0
- package/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.js +7 -0
- package/DatePicker/DatePickerClickAwayListener/index.d.ts +1 -0
- package/DatePicker/DatePickerClickAwayListener/index.js +17 -0
- package/DatePicker/DatePickerInput/DatePickerInput.d.ts +8 -0
- package/DatePicker/DatePickerInput/DatePickerInput.js +31 -0
- package/DatePicker/DatePickerInput/index.d.ts +1 -0
- package/DatePicker/DatePickerInput/index.js +17 -0
- package/DatePicker/DatePickerInput/styles.d.ts +4 -0
- package/DatePicker/DatePickerInput/styles.js +10 -0
- package/DatePicker/DatePickerPopper/DatePickerPopper.d.ts +6 -0
- package/DatePicker/DatePickerPopper/DatePickerPopper.js +31 -0
- package/DatePicker/DatePickerPopper/index.d.ts +1 -0
- package/DatePicker/DatePickerPopper/index.js +17 -0
- package/DatePicker/DatePickerPopper/styles.d.ts +8 -0
- package/DatePicker/DatePickerPopper/styles.js +15 -0
- package/DatePicker/DayPicker/DateDayPickerGrid/index.d.ts +1 -0
- package/DatePicker/DayPicker/DateDayPickerGrid/index.js +17 -0
- package/DatePicker/DayPicker/DateDayPickerGrid/styles.d.ts +5 -0
- package/DatePicker/DayPicker/DateDayPickerGrid/styles.js +11 -0
- package/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.d.ts +6 -0
- package/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.js +11 -0
- package/DatePicker/DayPicker/DateDayPickerGridHead/index.d.ts +1 -0
- package/DatePicker/DayPicker/DateDayPickerGridHead/index.js +17 -0
- package/DatePicker/DayPicker/DateDayPickerGridHead/styles.d.ts +5 -0
- package/DatePicker/DayPicker/DateDayPickerGridHead/styles.js +14 -0
- package/DatePicker/DayPicker/DayPicker.d.ts +13 -0
- package/DatePicker/DayPicker/DayPicker.js +54 -0
- package/DatePicker/DayPicker/hooks/useDaysGrid/index.d.ts +1 -0
- package/DatePicker/DayPicker/hooks/useDaysGrid/index.js +17 -0
- package/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.d.ts +25 -0
- package/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.js +110 -0
- package/DatePicker/DayPicker/index.d.ts +1 -0
- package/DatePicker/DayPicker/index.js +17 -0
- package/DatePicker/MinMaxDateContext/MinMaxDateContext.d.ts +7 -0
- package/DatePicker/MinMaxDateContext/MinMaxDateContext.js +23 -0
- package/DatePicker/MinMaxDateContext/index.d.ts +1 -0
- package/DatePicker/MinMaxDateContext/index.js +17 -0
- package/DatePicker/MonthPicker/MonthPicker.d.ts +6 -0
- package/DatePicker/MonthPicker/MonthPicker.js +46 -0
- package/DatePicker/MonthPicker/hooks/useMonthsGrid/index.d.ts +1 -0
- package/DatePicker/MonthPicker/hooks/useMonthsGrid/index.js +17 -0
- package/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.d.ts +8 -0
- package/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.js +45 -0
- package/DatePicker/MonthPicker/index.d.ts +1 -0
- package/DatePicker/MonthPicker/index.js +17 -0
- package/DatePicker/YearMonthDayPicker/YearMonthDayPicker.d.ts +6 -0
- package/DatePicker/YearMonthDayPicker/YearMonthDayPicker.js +35 -0
- package/DatePicker/YearMonthDayPicker/index.d.ts +1 -0
- package/DatePicker/YearMonthDayPicker/index.js +17 -0
- package/DatePicker/YearPicker/YearPicker.d.ts +6 -0
- package/DatePicker/YearPicker/YearPicker.js +40 -0
- package/DatePicker/YearPicker/constants.d.ts +1 -0
- package/DatePicker/YearPicker/constants.js +4 -0
- package/DatePicker/YearPicker/hooks/useYearsGrid/index.d.ts +1 -0
- package/DatePicker/YearPicker/hooks/useYearsGrid/index.js +17 -0
- package/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.d.ts +8 -0
- package/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.js +44 -0
- package/DatePicker/YearPicker/index.d.ts +1 -0
- package/DatePicker/YearPicker/index.js +17 -0
- package/DatePicker/constants/counts.d.ts +2 -0
- package/DatePicker/constants/counts.js +5 -0
- package/DatePicker/constants/russianMap.d.ts +2 -0
- package/DatePicker/constants/russianMap.js +13 -0
- package/DatePicker/hooks/useBaseDateInRange/index.d.ts +1 -0
- package/DatePicker/hooks/useBaseDateInRange/index.js +17 -0
- package/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.d.ts +7 -0
- package/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.js +25 -0
- package/DatePicker/hooks/useCalendarNavigate/index.d.ts +1 -0
- package/DatePicker/hooks/useCalendarNavigate/index.js +17 -0
- package/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.d.ts +20 -0
- package/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.js +23 -0
- package/DatePicker/hooks/useLocaleDateTimeFormat/index.d.ts +1 -0
- package/DatePicker/hooks/useLocaleDateTimeFormat/index.js +17 -0
- package/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.d.ts +3 -0
- package/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.js +11 -0
- package/DatePicker/hooks/useSelectedBaseDate/index.d.ts +1 -0
- package/DatePicker/hooks/useSelectedBaseDate/index.js +17 -0
- package/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.d.ts +1 -0
- package/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.js +29 -0
- package/DatePicker/index.d.ts +0 -1
- package/DatePicker/index.js +0 -1
- package/DatePicker/types/configTypes.d.ts +14 -0
- package/{LocalizationProvider/types.js → DatePicker/types/configTypes.js} +0 -0
- package/DatePicker/types/gridBuilder.d.ts +44 -0
- package/DatePicker/types/gridBuilder.js +2 -0
- package/DatePicker/types/index.d.ts +4 -0
- package/DatePicker/types/index.js +20 -0
- package/DatePicker/types/minMaxDate.d.ts +4 -0
- package/DatePicker/types/minMaxDate.js +2 -0
- package/DatePicker/types/pickerProps.d.ts +11 -0
- package/DatePicker/types/pickerProps.js +2 -0
- package/DatePicker/utils/buildGridItem/buildGridResult.d.ts +22 -0
- package/DatePicker/utils/buildGridItem/buildGridResult.js +20 -0
- package/DatePicker/utils/buildGridItem/index.d.ts +1 -0
- package/DatePicker/utils/buildGridItem/index.js +17 -0
- package/DatePickerProvider/DatePickerProvider.d.ts +9 -4
- package/DatePickerProvider/DatePickerProvider.js +5 -11
- package/LocalizationProvider/LocalizationProvider.d.ts +4 -3
- package/LocalizationProvider/LocalizationProvider.js +1 -2
- package/MaskField/MaskField.d.ts +3 -3
- package/MaskField/MaskField.js +4 -4
- package/MenuGroup/stories/styled.d.ts +2 -1
- package/MenuGroup/styled.d.ts +2 -1
- package/Notification/NotificationTemplate/styled.d.ts +2 -1
- package/OverflowTypography/styles.d.ts +2 -1
- package/Placeholder/styles.d.ts +4 -2
- package/Typography/Typography.d.ts +8 -0
- package/Typography/Typography.js +7 -3
- package/Typography/enums.d.ts +6 -2
- package/Typography/enums.js +5 -1
- package/esm/ConfigProvider/ConfigProvider.d.ts +18 -2
- package/esm/ConfigProvider/ConfigProvider.js +6 -4
- package/esm/DataGrid/DataGridHeadColumn/styles.d.ts +2 -1
- package/esm/DataGrid/DataGridNoData/styles.d.ts +2 -1
- package/esm/DataGridPagination/styles.d.ts +2 -1
- package/esm/DatePicker/DateCalendar/DateCalendarBody/index.d.ts +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBody/index.js +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBody/styles.d.ts +11 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBody/styles.js +9 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.d.ts +7 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBtn/DateCalendarBtn.js +19 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBtn/index.d.ts +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBtn/index.js +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBtn/styles.d.ts +4 -0
- package/esm/DatePicker/DateCalendar/DateCalendarBtn/styles.js +5 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.d.ts +3 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/DateCalendarNextBtn.js +21 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.d.ts +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/index.js +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.d.ts +4 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarNextBtn/styles.js +6 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.d.ts +3 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/DateCalendarPrevBtn.js +21 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.d.ts +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/index.js +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.d.ts +4 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/DateCalendarPrevBtn/styles.js +6 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/index.d.ts +2 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/index.js +2 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.d.ts +4 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/styles.js +7 -0
- package/esm/DatePicker/DateCalendar/DateCalendarChevronBtn/types.d.ts +12 -0
- package/esm/DatePicker/{types.js → DateCalendar/DateCalendarChevronBtn/types.js} +0 -0
- package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/index.d.ts +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/index.js +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/styles.d.ts +22 -0
- package/esm/DatePicker/DateCalendar/DateCalendarGridBtn/styles.js +69 -0
- package/esm/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.d.ts +38 -0
- package/esm/DatePicker/DateCalendar/DateCalendarHead/DateCalendarHead.js +4 -0
- package/esm/DatePicker/DateCalendar/DateCalendarHead/index.d.ts +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarHead/index.js +1 -0
- package/esm/DatePicker/DateCalendar/DateCalendarHead/styles.d.ts +12 -0
- package/esm/DatePicker/DateCalendar/DateCalendarHead/styles.js +23 -0
- package/esm/DatePicker/DateCalendar/enums/calendarGridPositions.d.ts +6 -0
- package/esm/DatePicker/DateCalendar/enums/calendarGridPositions.js +7 -0
- package/esm/DatePicker/DateCalendar/index.d.ts +4 -0
- package/esm/DatePicker/DateCalendar/index.js +4 -0
- package/{DatePicker/styled.d.ts → esm/DatePicker/DateCalendar/styles.d.ts} +1 -1
- package/esm/DatePicker/DateCalendar/styles.js +12 -0
- package/esm/DatePicker/DatePicker.d.ts +20 -9
- package/esm/DatePicker/DatePicker.js +46 -41
- package/esm/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.d.ts +6 -0
- package/esm/DatePicker/DatePickerClickAwayListener/DatePickerClickAwayListener.js +3 -0
- package/esm/DatePicker/DatePickerClickAwayListener/index.d.ts +1 -0
- package/esm/DatePicker/DatePickerClickAwayListener/index.js +1 -0
- package/esm/DatePicker/DatePickerInput/DatePickerInput.d.ts +8 -0
- package/esm/DatePicker/DatePickerInput/DatePickerInput.js +28 -0
- package/esm/DatePicker/DatePickerInput/index.d.ts +1 -0
- package/esm/DatePicker/DatePickerInput/index.js +1 -0
- package/esm/DatePicker/DatePickerInput/styles.d.ts +4 -0
- package/esm/DatePicker/DatePickerInput/styles.js +7 -0
- package/esm/DatePicker/DatePickerPopper/DatePickerPopper.d.ts +6 -0
- package/esm/DatePicker/DatePickerPopper/DatePickerPopper.js +27 -0
- package/esm/DatePicker/DatePickerPopper/index.d.ts +1 -0
- package/esm/DatePicker/DatePickerPopper/index.js +1 -0
- package/esm/DatePicker/DatePickerPopper/styles.d.ts +8 -0
- package/esm/DatePicker/DatePickerPopper/styles.js +12 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGrid/index.d.ts +1 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGrid/index.js +1 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGrid/styles.d.ts +5 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGrid/styles.js +8 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.d.ts +6 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGridHead/DateDayPickerGridHead.js +8 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGridHead/index.d.ts +1 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGridHead/index.js +1 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGridHead/styles.d.ts +5 -0
- package/esm/DatePicker/DayPicker/DateDayPickerGridHead/styles.js +11 -0
- package/esm/DatePicker/DayPicker/DayPicker.d.ts +13 -0
- package/esm/DatePicker/DayPicker/DayPicker.js +50 -0
- package/esm/DatePicker/DayPicker/hooks/useDaysGrid/index.d.ts +1 -0
- package/esm/DatePicker/DayPicker/hooks/useDaysGrid/index.js +1 -0
- package/esm/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.d.ts +25 -0
- package/esm/DatePicker/DayPicker/hooks/useDaysGrid/useDaysGrid.js +106 -0
- package/esm/DatePicker/DayPicker/index.d.ts +1 -0
- package/esm/DatePicker/DayPicker/index.js +1 -0
- package/esm/DatePicker/MinMaxDateContext/MinMaxDateContext.d.ts +7 -0
- package/esm/DatePicker/MinMaxDateContext/MinMaxDateContext.js +19 -0
- package/esm/DatePicker/MinMaxDateContext/index.d.ts +1 -0
- package/esm/DatePicker/MinMaxDateContext/index.js +1 -0
- package/esm/DatePicker/MonthPicker/MonthPicker.d.ts +6 -0
- package/esm/DatePicker/MonthPicker/MonthPicker.js +42 -0
- package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/index.d.ts +1 -0
- package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/index.js +1 -0
- package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.d.ts +8 -0
- package/esm/DatePicker/MonthPicker/hooks/useMonthsGrid/useMonthsGrid.js +41 -0
- package/esm/DatePicker/MonthPicker/index.d.ts +1 -0
- package/esm/DatePicker/MonthPicker/index.js +1 -0
- package/esm/DatePicker/YearMonthDayPicker/YearMonthDayPicker.d.ts +6 -0
- package/esm/DatePicker/YearMonthDayPicker/YearMonthDayPicker.js +31 -0
- package/esm/DatePicker/YearMonthDayPicker/index.d.ts +1 -0
- package/esm/DatePicker/YearMonthDayPicker/index.js +1 -0
- package/esm/DatePicker/YearPicker/YearPicker.d.ts +6 -0
- package/esm/DatePicker/YearPicker/YearPicker.js +36 -0
- package/esm/DatePicker/YearPicker/constants.d.ts +1 -0
- package/esm/DatePicker/YearPicker/constants.js +1 -0
- package/esm/DatePicker/YearPicker/hooks/useYearsGrid/index.d.ts +1 -0
- package/esm/DatePicker/YearPicker/hooks/useYearsGrid/index.js +1 -0
- package/esm/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.d.ts +8 -0
- package/esm/DatePicker/YearPicker/hooks/useYearsGrid/useYearsGrid.js +40 -0
- package/esm/DatePicker/YearPicker/index.d.ts +1 -0
- package/esm/DatePicker/YearPicker/index.js +1 -0
- package/esm/DatePicker/constants/counts.d.ts +2 -0
- package/esm/DatePicker/constants/counts.js +2 -0
- package/esm/DatePicker/constants/russianMap.d.ts +2 -0
- package/esm/DatePicker/constants/russianMap.js +10 -0
- package/esm/DatePicker/hooks/useBaseDateInRange/index.d.ts +1 -0
- package/esm/DatePicker/hooks/useBaseDateInRange/index.js +1 -0
- package/esm/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.d.ts +7 -0
- package/esm/DatePicker/hooks/useBaseDateInRange/useBaseDateInRange.js +21 -0
- package/esm/DatePicker/hooks/useCalendarNavigate/index.d.ts +1 -0
- package/esm/DatePicker/hooks/useCalendarNavigate/index.js +1 -0
- package/esm/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.d.ts +20 -0
- package/esm/DatePicker/hooks/useCalendarNavigate/useCalendarNavigate.js +19 -0
- package/esm/DatePicker/hooks/useLocaleDateTimeFormat/index.d.ts +1 -0
- package/esm/DatePicker/hooks/useLocaleDateTimeFormat/index.js +1 -0
- package/esm/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.d.ts +3 -0
- package/esm/DatePicker/hooks/useLocaleDateTimeFormat/useLocaleDateTimeFormat.js +7 -0
- package/esm/DatePicker/hooks/useSelectedBaseDate/index.d.ts +1 -0
- package/esm/DatePicker/hooks/useSelectedBaseDate/index.js +1 -0
- package/esm/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.d.ts +1 -0
- package/esm/DatePicker/hooks/useSelectedBaseDate/useSelectedBaseDate.js +25 -0
- package/esm/DatePicker/index.d.ts +0 -1
- package/esm/DatePicker/index.js +0 -1
- package/esm/DatePicker/types/configTypes.d.ts +14 -0
- package/esm/{LocalizationProvider/types.js → DatePicker/types/configTypes.js} +0 -0
- package/esm/DatePicker/types/gridBuilder.d.ts +44 -0
- package/esm/DatePicker/types/gridBuilder.js +1 -0
- package/esm/DatePicker/types/index.d.ts +4 -0
- package/esm/DatePicker/types/index.js +4 -0
- package/esm/DatePicker/types/minMaxDate.d.ts +4 -0
- package/esm/DatePicker/types/minMaxDate.js +1 -0
- package/esm/DatePicker/types/pickerProps.d.ts +11 -0
- package/esm/DatePicker/types/pickerProps.js +1 -0
- package/esm/DatePicker/utils/buildGridItem/buildGridResult.d.ts +22 -0
- package/esm/DatePicker/utils/buildGridItem/buildGridResult.js +16 -0
- package/esm/DatePicker/utils/buildGridItem/index.d.ts +1 -0
- package/esm/DatePicker/utils/buildGridItem/index.js +1 -0
- package/esm/DatePickerProvider/DatePickerProvider.d.ts +9 -4
- package/esm/DatePickerProvider/DatePickerProvider.js +4 -10
- package/esm/LocalizationProvider/LocalizationProvider.d.ts +4 -3
- package/esm/LocalizationProvider/LocalizationProvider.js +1 -2
- package/esm/MaskField/MaskField.d.ts +3 -3
- package/esm/MaskField/MaskField.js +4 -3
- package/esm/MenuGroup/stories/styled.d.ts +2 -1
- package/esm/MenuGroup/styled.d.ts +2 -1
- package/esm/Notification/NotificationTemplate/styled.d.ts +2 -1
- package/esm/OverflowTypography/styles.d.ts +2 -1
- package/esm/Placeholder/styles.d.ts +4 -2
- package/esm/Typography/Typography.d.ts +8 -0
- package/esm/Typography/Typography.js +7 -3
- package/esm/Typography/enums.d.ts +6 -2
- package/esm/Typography/enums.js +5 -1
- package/esm/hooks/useEscapeClickEffect/index.d.ts +1 -0
- package/esm/hooks/useEscapeClickEffect/index.js +1 -0
- package/esm/hooks/useEscapeClickEffect/useEscapeClickEffect.d.ts +19 -0
- package/esm/hooks/useEscapeClickEffect/useEscapeClickEffect.js +24 -0
- package/esm/hooks/useToggle/index.d.ts +1 -0
- package/esm/hooks/useToggle/index.js +1 -0
- package/esm/hooks/useToggle/useToggle.d.ts +13 -0
- package/esm/hooks/useToggle/useToggle.js +17 -0
- package/esm/utils/date/addDays/addDays.d.ts +7 -0
- package/esm/utils/date/addDays/addDays.js +8 -0
- package/esm/utils/date/addDays/index.d.ts +1 -0
- package/esm/utils/date/addDays/index.js +1 -0
- package/esm/utils/date/addMonths/addMonths.d.ts +7 -0
- package/esm/utils/date/addMonths/addMonths.js +8 -0
- package/esm/utils/date/addMonths/index.d.ts +1 -0
- package/esm/utils/date/addMonths/index.js +1 -0
- package/esm/utils/date/addYears/addYears.d.ts +7 -0
- package/esm/utils/date/addYears/addYears.js +8 -0
- package/esm/utils/date/addYears/index.d.ts +1 -0
- package/esm/utils/date/addYears/index.js +1 -0
- package/esm/utils/date/areDatesSame/areDatesSame.d.ts +4 -0
- package/esm/utils/date/areDatesSame/areDatesSame.js +5 -0
- package/esm/utils/date/areDatesSame/index.d.ts +1 -0
- package/esm/utils/date/areDatesSame/index.js +1 -0
- package/esm/utils/date/buildIsoDate/buildIsoDate.d.ts +5 -0
- package/esm/utils/date/buildIsoDate/buildIsoDate.js +5 -0
- package/esm/utils/date/buildIsoDate/buildIsoDateString.d.ts +33 -0
- package/esm/utils/date/buildIsoDate/buildIsoDateString.js +13 -0
- package/esm/utils/date/buildIsoDate/index.d.ts +2 -0
- package/esm/utils/date/buildIsoDate/index.js +2 -0
- package/esm/utils/date/format/formatDate/formatDate.d.ts +5 -0
- package/esm/utils/date/format/formatDate/formatDate.js +19 -0
- package/esm/utils/date/format/formatDate/index.d.ts +1 -0
- package/esm/utils/date/format/formatDate/index.js +1 -0
- package/esm/utils/date/format/index.d.ts +3 -0
- package/esm/utils/date/format/index.js +3 -0
- package/esm/utils/date/format/maskDate.d.ts +13 -0
- package/esm/utils/date/format/maskDate.js +9 -0
- package/esm/utils/date/format/parseDate/index.d.ts +1 -0
- package/esm/utils/date/format/parseDate/index.js +1 -0
- package/esm/utils/date/format/parseDate/parseDate.d.ts +5 -0
- package/esm/utils/date/format/parseDate/parseDate.js +21 -0
- package/esm/utils/date/index.d.ts +8 -0
- package/esm/utils/date/index.js +8 -0
- package/esm/utils/date/isDate/index.d.ts +1 -0
- package/esm/utils/date/isDate/index.js +1 -0
- package/esm/utils/date/isDate/isDate.d.ts +6 -0
- package/esm/utils/date/isDate/isDate.js +5 -0
- package/esm/utils/date/isDateOutOfRange/index.d.ts +1 -0
- package/esm/utils/date/isDateOutOfRange/index.js +1 -0
- package/esm/utils/date/isDateOutOfRange/isDateOutOfRange.d.ts +29 -0
- package/esm/utils/date/isDateOutOfRange/isDateOutOfRange.js +40 -0
- package/esm/utils/zeroPad/index.d.ts +1 -0
- package/esm/utils/zeroPad/index.js +1 -0
- package/esm/utils/zeroPad/zeroPad.d.ts +7 -0
- package/esm/utils/zeroPad/zeroPad.js +7 -0
- package/hooks/useEscapeClickEffect/index.d.ts +1 -0
- package/hooks/useEscapeClickEffect/index.js +17 -0
- package/hooks/useEscapeClickEffect/useEscapeClickEffect.d.ts +19 -0
- package/hooks/useEscapeClickEffect/useEscapeClickEffect.js +28 -0
- package/hooks/useToggle/index.d.ts +1 -0
- package/hooks/useToggle/index.js +17 -0
- package/hooks/useToggle/useToggle.d.ts +13 -0
- package/hooks/useToggle/useToggle.js +21 -0
- package/package.json +3 -4
- package/utils/date/addDays/addDays.d.ts +7 -0
- package/utils/date/addDays/addDays.js +15 -0
- package/utils/date/addDays/index.d.ts +1 -0
- package/utils/date/addDays/index.js +17 -0
- package/utils/date/addMonths/addMonths.d.ts +7 -0
- package/utils/date/addMonths/addMonths.js +15 -0
- package/utils/date/addMonths/index.d.ts +1 -0
- package/utils/date/addMonths/index.js +17 -0
- package/utils/date/addYears/addYears.d.ts +7 -0
- package/utils/date/addYears/addYears.js +15 -0
- package/utils/date/addYears/index.d.ts +1 -0
- package/utils/date/addYears/index.js +17 -0
- package/utils/date/areDatesSame/areDatesSame.d.ts +4 -0
- package/utils/date/areDatesSame/areDatesSame.js +9 -0
- package/utils/date/areDatesSame/index.d.ts +1 -0
- package/utils/date/areDatesSame/index.js +17 -0
- package/utils/date/buildIsoDate/buildIsoDate.d.ts +5 -0
- package/utils/date/buildIsoDate/buildIsoDate.js +9 -0
- package/utils/date/buildIsoDate/buildIsoDateString.d.ts +33 -0
- package/utils/date/buildIsoDate/buildIsoDateString.js +17 -0
- package/utils/date/buildIsoDate/index.d.ts +2 -0
- package/utils/date/buildIsoDate/index.js +18 -0
- package/utils/date/format/formatDate/formatDate.d.ts +5 -0
- package/utils/date/format/formatDate/formatDate.js +23 -0
- package/utils/date/format/formatDate/index.d.ts +1 -0
- package/utils/date/format/formatDate/index.js +17 -0
- package/utils/date/format/index.d.ts +3 -0
- package/utils/date/format/index.js +19 -0
- package/utils/date/format/maskDate.d.ts +13 -0
- package/utils/date/format/maskDate.js +12 -0
- package/utils/date/format/parseDate/index.d.ts +1 -0
- package/utils/date/format/parseDate/index.js +17 -0
- package/utils/date/format/parseDate/parseDate.d.ts +5 -0
- package/utils/date/format/parseDate/parseDate.js +25 -0
- package/utils/date/index.d.ts +8 -0
- package/utils/date/index.js +24 -0
- package/utils/date/isDate/index.d.ts +1 -0
- package/utils/date/isDate/index.js +17 -0
- package/utils/date/isDate/isDate.d.ts +6 -0
- package/utils/date/isDate/isDate.js +12 -0
- package/utils/date/isDateOutOfRange/index.d.ts +1 -0
- package/utils/date/isDateOutOfRange/index.js +17 -0
- package/utils/date/isDateOutOfRange/isDateOutOfRange.d.ts +29 -0
- package/utils/date/isDateOutOfRange/isDateOutOfRange.js +45 -0
- package/utils/zeroPad/index.d.ts +1 -0
- package/utils/zeroPad/index.js +17 -0
- package/utils/zeroPad/zeroPad.d.ts +7 -0
- package/utils/zeroPad/zeroPad.js +11 -0
- package/DatePicker/DatePickerDay/DatePickerDay.d.ts +0 -7
- package/DatePicker/DatePickerDay/DatePickerDay.js +0 -9
- package/DatePicker/DatePickerDay/index.d.ts +0 -1
- package/DatePicker/DatePickerDay/index.js +0 -5
- package/DatePicker/DatePickerDay/styled.d.ts +0 -4
- package/DatePicker/DatePickerDay/styled.js +0 -9
- package/DatePicker/DatePickerHeader/DatePickerHeader.d.ts +0 -3
- package/DatePicker/DatePickerHeader/DatePickerHeader.js +0 -20
- package/DatePicker/DatePickerHeader/index.d.ts +0 -1
- package/DatePicker/DatePickerHeader/index.js +0 -5
- package/DatePicker/DatePickerHeader/styled.d.ts +0 -12
- package/DatePicker/DatePickerHeader/styled.js +0 -13
- package/DatePicker/styled.js +0 -97
- package/DatePicker/types.d.ts +0 -1
- package/LocalizationProvider/types.d.ts +0 -2
- package/esm/DatePicker/DatePickerDay/DatePickerDay.d.ts +0 -7
- package/esm/DatePicker/DatePickerDay/DatePickerDay.js +0 -5
- package/esm/DatePicker/DatePickerDay/index.d.ts +0 -1
- package/esm/DatePicker/DatePickerDay/index.js +0 -1
- package/esm/DatePicker/DatePickerDay/styled.d.ts +0 -4
- package/esm/DatePicker/DatePickerDay/styled.js +0 -6
- package/esm/DatePicker/DatePickerHeader/DatePickerHeader.d.ts +0 -3
- package/esm/DatePicker/DatePickerHeader/DatePickerHeader.js +0 -13
- package/esm/DatePicker/DatePickerHeader/index.d.ts +0 -1
- package/esm/DatePicker/DatePickerHeader/index.js +0 -1
- package/esm/DatePicker/DatePickerHeader/styled.d.ts +0 -12
- package/esm/DatePicker/DatePickerHeader/styled.js +0 -10
- package/esm/DatePicker/styled.js +0 -94
- package/esm/DatePicker/types.d.ts +0 -1
- package/esm/LocalizationProvider/types.d.ts +0 -2
|
@@ -1,12 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
import { ReactDatePickerProps } from 'react-datepicker';
|
|
1
|
+
import { FocusEvent } from 'react';
|
|
3
2
|
import { TextFieldProps } from '../TextField';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import { DateMask } from '../utils/date';
|
|
4
|
+
import { MinMaxDate } from './types';
|
|
5
|
+
import { MondayFirst } from './DayPicker';
|
|
6
|
+
export declare type DatePickerProps = MondayFirst & Partial<MinMaxDate> & {
|
|
7
|
+
mask?: DateMask;
|
|
8
|
+
onChange?: (date: Date | string | null | undefined) => void;
|
|
9
|
+
onBlur?: (e: FocusEvent<HTMLInputElement>) => void;
|
|
10
|
+
onOpen?: () => void;
|
|
11
|
+
onClose?: () => void;
|
|
12
|
+
inputProps?: Omit<TextFieldProps, 'ref' | 'value' | 'onChange'>;
|
|
13
|
+
disabled?: boolean;
|
|
7
14
|
};
|
|
8
|
-
export declare const DatePicker: import("react").ForwardRefExoticComponent<
|
|
9
|
-
|
|
10
|
-
|
|
15
|
+
export declare const DatePicker: import("react").ForwardRefExoticComponent<MondayFirst & Partial<MinMaxDate> & {
|
|
16
|
+
mask?: string | undefined;
|
|
17
|
+
onChange?: ((date: Date | string | null | undefined) => void) | undefined;
|
|
18
|
+
onBlur?: ((e: FocusEvent<HTMLInputElement>) => void) | undefined;
|
|
19
|
+
onOpen?: (() => void) | undefined;
|
|
20
|
+
onClose?: (() => void) | undefined;
|
|
21
|
+
inputProps?: Omit<TextFieldProps, "ref" | "value" | "onChange"> | undefined;
|
|
22
|
+
disabled?: boolean | undefined;
|
|
11
23
|
} & import("react").RefAttributes<HTMLInputElement>>;
|
|
12
|
-
export default DatePicker;
|
|
@@ -9,48 +9,53 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
9
9
|
}
|
|
10
10
|
return t;
|
|
11
11
|
};
|
|
12
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
-
import { forwardRef, useContext } from 'react';
|
|
14
|
-
import
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const {
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
const date =
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
onChange(null, e);
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import { forwardRef, useCallback, useContext, useEffect, useState, } from 'react';
|
|
14
|
+
import { useForwardedRef } from '../hooks/useForwardedRef';
|
|
15
|
+
import { useToggle } from '../hooks/useToggle';
|
|
16
|
+
import { areDatesSame, formatDate, isDate, parseDate, } from '../utils/date';
|
|
17
|
+
import { DatePickerClickAwayListener } from './DatePickerClickAwayListener';
|
|
18
|
+
import { DatePickerInput } from './DatePickerInput';
|
|
19
|
+
import { DatePickerPopper } from './DatePickerPopper';
|
|
20
|
+
import { MinMaxDateContext, MinMaxDateContextProvider, } from './MinMaxDateContext';
|
|
21
|
+
import { YearMonthDayPicker } from './YearMonthDayPicker';
|
|
22
|
+
import { useBaseDateInRange } from './hooks/useBaseDateInRange';
|
|
23
|
+
import { useSelectedBaseDate } from './hooks/useSelectedBaseDate';
|
|
24
|
+
const DatePickerInner = forwardRef(({ onChange, onOpen, onBlur, onClose, mask = 'DD.MM.YYYY', isMondayFirst, inputProps, disabled, }, forwardedRef) => {
|
|
25
|
+
const { maxDate, minDate } = useContext(MinMaxDateContext);
|
|
26
|
+
const ref = useForwardedRef(forwardedRef);
|
|
27
|
+
const [isActive, openPopper, closePopper] = useToggle({
|
|
28
|
+
onActive: onOpen,
|
|
29
|
+
onInactive: onClose,
|
|
30
|
+
});
|
|
31
|
+
const [selectedDate, setSelectedDate] = useState();
|
|
32
|
+
const [maskedDate, setMaskedDate] = useState('');
|
|
33
|
+
const baseDate = useBaseDateInRange({ minDate, maxDate });
|
|
34
|
+
const selectedBaseDate = useSelectedBaseDate(selectedDate);
|
|
35
|
+
const checkValue = useCallback((value) => {
|
|
36
|
+
setMaskedDate(value);
|
|
37
|
+
const date = parseDate(value, mask);
|
|
38
|
+
if (value === '' || !isDate(date)) {
|
|
39
|
+
setSelectedDate(null);
|
|
41
40
|
}
|
|
42
|
-
if (
|
|
43
|
-
|
|
41
|
+
else if (!areDatesSame(date, selectedDate)) {
|
|
42
|
+
setSelectedDate(date);
|
|
44
43
|
}
|
|
44
|
+
}, [mask, selectedDate]);
|
|
45
|
+
const handleDayPick = (date) => {
|
|
46
|
+
setMaskedDate(formatDate(date, mask));
|
|
47
|
+
setSelectedDate(date);
|
|
48
|
+
closePopper();
|
|
49
|
+
};
|
|
50
|
+
useEffect(() => onChange === null || onChange === void 0 ? void 0 : onChange(selectedDate || maskedDate), [selectedDate, maskedDate]);
|
|
51
|
+
const blurHandler = (e) => {
|
|
52
|
+
checkValue(e.target.value);
|
|
53
|
+
onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
|
|
45
54
|
};
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
el;
|
|
53
|
-
}
|
|
54
|
-
} })) })) }));
|
|
55
|
+
const handleNativeChange = (e) => checkValue(e.target.value);
|
|
56
|
+
return (_jsxs(DatePickerClickAwayListener, Object.assign({ onClickAway: closePopper }, { children: [_jsx(DatePickerInput, Object.assign({}, inputProps, { mask: mask, onNativeChange: handleNativeChange, onBlur: blurHandler, disabled: disabled, value: maskedDate, ref: ref, onFocus: openPopper })), _jsx(DatePickerPopper, Object.assign({ open: isActive, onClose: closePopper, anchorEl: ref === null || ref === void 0 ? void 0 : ref.current }, { children: _jsx(YearMonthDayPicker, { isMondayFirst: isMondayFirst, selectedDate: selectedBaseDate, onChange: handleDayPick, date: selectedBaseDate || baseDate }) }))] })));
|
|
57
|
+
});
|
|
58
|
+
export const DatePicker = forwardRef((_a, forwardedRef) => {
|
|
59
|
+
var { minDate, maxDate } = _a, props = __rest(_a, ["minDate", "maxDate"]);
|
|
60
|
+
return (_jsx(MinMaxDateContextProvider, Object.assign({ minDate: minDate, maxDate: maxDate }, { children: _jsx(DatePickerInner, Object.assign({}, props, { ref: forwardedRef })) })));
|
|
55
61
|
});
|
|
56
|
-
export default DatePicker;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
declare type DatePickerClickAwayListenerProps = {
|
|
3
|
+
onClickAway: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare const DatePickerClickAwayListener: ({ onClickAway, children, }: PropsWithChildren<DatePickerClickAwayListenerProps>) => JSX.Element;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ClickAwayListener } from '@mui/material';
|
|
3
|
+
export const DatePickerClickAwayListener = ({ onClickAway, children, }) => (_jsx(ClickAwayListener, Object.assign({ onClickAway: onClickAway }, { children: _jsx("div", { children: children }) })));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DatePickerClickAwayListener';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DatePickerClickAwayListener';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ChangeEvent } from 'react';
|
|
2
|
+
import { MaskFieldProps } from '../../MaskField';
|
|
3
|
+
declare type DatePickerInputProps = Omit<MaskFieldProps, 'mask' | 'autofix'> & {
|
|
4
|
+
onNativeChange?: (e: ChangeEvent<HTMLInputElement>) => void;
|
|
5
|
+
mask: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const DatePickerInput: import("react").ForwardRefExoticComponent<Pick<DatePickerInputProps, "disabled" | "default" | "action" | "color" | "content" | "height" | "translate" | "width" | "margin" | "mask" | "shape" | "error" | "success" | "href" | "tabIndex" | "type" | "children" | "className" | "cite" | "data" | "form" | "label" | "slot" | "select" | "span" | "style" | "summary" | "title" | "pattern" | "key" | "css" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "value" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "list" | "variant" | "size" | "selected" | "step" | "classes" | "sx" | "fullWidth" | "focused" | "required" | "htmlFor" | "autoComplete" | "inputProps" | "inputRef" | "multiline" | "readOnly" | "rows" | "maxRows" | "minRows" | "open" | "start" | "checked" | "alt" | "sizes" | "src" | "srcSet" | "max" | "hiddenLabel" | "wrap" | "cols" | "download" | "hrefLang" | "media" | "rel" | "target" | "min" | "method" | "crossOrigin" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "SelectProps" | "useMap" | "as" | "integrity" | "coords" | "controls" | "loop" | "muted" | "preload" | "dateTime" | "acceptCharset" | "noValidate" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "async" | "defer" | "multiple" | "kind" | "playsInline" | "poster" | "classID" | "wmode" | "charSet" | "autoPlay" | "mediaGroup" | "encType" | "manifest" | "allowFullScreen" | "allowTransparency" | "seamless" | "srcDoc" | "eager" | "accept" | "capture" | "maxLength" | "minLength" | "challenge" | "keyType" | "keyParams" | "nonce" | "scoped" | "srcLang" | "InputProps" | "FormHelperTextProps" | "helperText" | "InputLabelProps" | "parent" | "prepare" | "validate" | "commit" | "overwrite" | "definitions" | "onAccept" | "onComplete" | "unmask" | "onNativeChange"> & import("react").RefAttributes<HTMLInputElement>>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { forwardRef } from 'react';
|
|
14
|
+
import { InputAdornment } from '@mui/material';
|
|
15
|
+
import { CalendarOutlineMd } from '@astral/icons';
|
|
16
|
+
import { DatePickerInputWrapper } from './styles';
|
|
17
|
+
const ALL_LETTERS = /\w/g;
|
|
18
|
+
export const DatePickerInput = forwardRef((_a, ref) => {
|
|
19
|
+
var { onClick, onChange, onNativeChange, mask } = _a, props = __rest(_a, ["onClick", "onChange", "onNativeChange", "mask"]);
|
|
20
|
+
return (_jsx(DatePickerInputWrapper, Object.assign({}, props, { ref: ref, onClick: onClick,
|
|
21
|
+
// заменяем все буквы из маски на нули, потому что MaskField умеет работать только с цифрами
|
|
22
|
+
mask: mask === null || mask === void 0 ? void 0 : mask.replace(ALL_LETTERS, '0'), autofix: false, fullWidth: true, InputProps: {
|
|
23
|
+
onChange: onNativeChange,
|
|
24
|
+
endAdornment: (_jsx(InputAdornment, Object.assign({ position: "end", disablePointerEvents: true }, { children: _jsx(CalendarOutlineMd, {}) }))),
|
|
25
|
+
}, inputProps: {
|
|
26
|
+
ref,
|
|
27
|
+
} })));
|
|
28
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DatePickerInput';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DatePickerInput';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const DatePickerInputWrapper: import("@emotion/styled").StyledComponent<Pick<import("../../MaskField").MaskFieldProps, "disabled" | "default" | "action" | "color" | "content" | "height" | "translate" | "width" | "margin" | "mask" | "shape" | "error" | "success" | "href" | "tabIndex" | "type" | "children" | "className" | "cite" | "data" | "form" | "label" | "slot" | "select" | "span" | "style" | "summary" | "title" | "pattern" | "key" | "css" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "value" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "list" | "variant" | "size" | "selected" | "step" | "classes" | "sx" | "fullWidth" | "focused" | "required" | "htmlFor" | "autoComplete" | "inputProps" | "inputRef" | "multiline" | "readOnly" | "rows" | "maxRows" | "minRows" | "open" | "start" | "checked" | "alt" | "sizes" | "src" | "srcSet" | "max" | "hiddenLabel" | "wrap" | "cols" | "download" | "hrefLang" | "media" | "rel" | "target" | "min" | "method" | "crossOrigin" | "cellPadding" | "cellSpacing" | "colSpan" | "headers" | "rowSpan" | "scope" | "SelectProps" | "useMap" | "as" | "integrity" | "coords" | "controls" | "loop" | "muted" | "preload" | "dateTime" | "acceptCharset" | "noValidate" | "frameBorder" | "marginHeight" | "marginWidth" | "sandbox" | "scrolling" | "httpEquiv" | "high" | "low" | "optimum" | "reversed" | "async" | "defer" | "multiple" | "kind" | "playsInline" | "poster" | "classID" | "wmode" | "charSet" | "autoPlay" | "mediaGroup" | "encType" | "manifest" | "allowFullScreen" | "allowTransparency" | "seamless" | "srcDoc" | "eager" | "accept" | "capture" | "maxLength" | "minLength" | "challenge" | "keyType" | "keyParams" | "nonce" | "scoped" | "srcLang" | "InputProps" | "FormHelperTextProps" | "helperText" | "InputLabelProps" | "parent" | "prepare" | "validate" | "commit" | "overwrite" | "definitions" | "autofix" | "onAccept" | "onComplete" | "unmask"> & import("react").RefAttributes<HTMLInputElement> & {
|
|
3
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
4
|
+
}, {}, {}>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
import { PopperProps } from '@mui/material';
|
|
3
|
+
export declare type DatePickerProps = PropsWithChildren<Omit<PopperProps, 'children'>> & {
|
|
4
|
+
onClose?: () => void;
|
|
5
|
+
};
|
|
6
|
+
export declare const DatePickerPopper: ({ children, onClose, ...props }: DatePickerProps) => JSX.Element;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { useEscapeClickEffect } from '../../hooks/useEscapeClickEffect';
|
|
14
|
+
import { DatePickerPopoverInner, PopperWrapper } from './styles';
|
|
15
|
+
export const DatePickerPopper = (_a) => {
|
|
16
|
+
var { children, onClose } = _a, props = __rest(_a, ["children", "onClose"]);
|
|
17
|
+
useEscapeClickEffect({ onEscape: onClose, isActive: props.open });
|
|
18
|
+
return (_jsx(PopperWrapper, Object.assign({}, props, { placement: "bottom-start", disablePortal: true, modifiers: [
|
|
19
|
+
{
|
|
20
|
+
name: 'offset',
|
|
21
|
+
options: {
|
|
22
|
+
// использование отступов для соответствия с дизайном, 0 по горизонтали, 8px по вертикали
|
|
23
|
+
offset: [0, 8],
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
] }, { children: _jsx(DatePickerPopoverInner, { children: children }) })));
|
|
27
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DatePickerPopper';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DatePickerPopper';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const DatePickerPopoverInner: import("@emotion/styled").StyledComponent<{
|
|
3
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
4
|
+
as?: import("react").ElementType<any> | undefined;
|
|
5
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
6
|
+
export declare const PopperWrapper: import("@emotion/styled").StyledComponent<Pick<import("@mui/material").PopperProps, "color" | "translate" | "transition" | "components" | "tabIndex" | "children" | "className" | "componentsProps" | "slot" | "style" | "title" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "component" | "sx" | "container" | "open" | "disablePortal" | "keepMounted" | "anchorEl" | "modifiers" | "placement" | "popperOptions" | "popperRef"> & import("react").RefAttributes<HTMLDivElement> & {
|
|
7
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
8
|
+
}, {}, {}>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Popper } from '@mui/material';
|
|
2
|
+
import { styled } from '../../styles';
|
|
3
|
+
export const DatePickerPopoverInner = styled.div `
|
|
4
|
+
padding: ${({ theme }) => theme.spacing(4)};
|
|
5
|
+
|
|
6
|
+
background: ${({ theme }) => theme.palette.common.white};
|
|
7
|
+
border-radius: ${({ theme }) => theme.shape.small};
|
|
8
|
+
box-shadow: ${({ theme }) => theme.elevation[200]};
|
|
9
|
+
`;
|
|
10
|
+
export const PopperWrapper = styled(Popper) `
|
|
11
|
+
z-index: ${({ theme }) => theme.zIndex.tooltip};
|
|
12
|
+
`;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './styles';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './styles';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const DateDayPickerGridBody: import("@emotion/styled").StyledComponent<{
|
|
3
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
4
|
+
as?: import("react").ElementType<any> | undefined;
|
|
5
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { styled } from '../../../styles';
|
|
2
|
+
import { DAYS_IN_WEEK } from '../../constants/counts';
|
|
3
|
+
export const DateDayPickerGridBody = styled.div `
|
|
4
|
+
display: grid;
|
|
5
|
+
grid-template-columns: repeat(${DAYS_IN_WEEK}, 1fr);
|
|
6
|
+
|
|
7
|
+
margin-top: ${({ theme }) => theme.spacing(2)};
|
|
8
|
+
`;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
declare type DateCalendarMonthGridHeadProps = {
|
|
3
|
+
isMondayFirst?: boolean;
|
|
4
|
+
};
|
|
5
|
+
export declare const DateDayPickerGridHead: import("react").MemoExoticComponent<({ isMondayFirst }: DateCalendarMonthGridHeadProps) => JSX.Element>;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { memo } from 'react';
|
|
3
|
+
import { DateDayPickerGridHeadWrapper } from './styles';
|
|
4
|
+
const WORKDAYS = ['ПН', 'ВТ', 'СР', 'ЧТ', 'ПТ'];
|
|
5
|
+
const MONDAY_FIRST_WEEKDAYS = [...WORKDAYS, 'СБ', 'ВС'];
|
|
6
|
+
const SUNDAY_FIRST_WEEKDAYS = ['ВС', ...WORKDAYS, 'СБ'];
|
|
7
|
+
export const DateDayPickerGridHead = memo(({ isMondayFirst = false }) => (_jsx(DateDayPickerGridHeadWrapper, Object.assign({ role: "rowheader" }, { children: (isMondayFirst ? SUNDAY_FIRST_WEEKDAYS : MONDAY_FIRST_WEEKDAYS).map((weekday, index) => (_jsx("span", Object.assign({ role: "cell" }, { children: weekday }), index))) }))));
|
|
8
|
+
DateDayPickerGridHead.displayName = 'DateDayPickerGridHead';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DateDayPickerGridHead';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DateDayPickerGridHead';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const DateDayPickerGridHeadWrapper: import("@emotion/styled").StyledComponent<{
|
|
3
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
4
|
+
as?: import("react").ElementType<any> | undefined;
|
|
5
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { styled } from '../../../styles';
|
|
2
|
+
import { DAYS_IN_WEEK } from '../../constants/counts';
|
|
3
|
+
export const DateDayPickerGridHeadWrapper = styled.div `
|
|
4
|
+
display: grid;
|
|
5
|
+
grid-template-columns: repeat(${DAYS_IN_WEEK}, 1fr);
|
|
6
|
+
|
|
7
|
+
color: ${({ theme }) => theme.palette.grey[600]};
|
|
8
|
+
font-size: ${({ theme }) => theme.typography.small.fontSize};
|
|
9
|
+
text-align: center;
|
|
10
|
+
text-transform: uppercase;
|
|
11
|
+
`;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { CommonDateCalendarHeadProps } from '../DateCalendar';
|
|
3
|
+
import { PickerProps } from '../types';
|
|
4
|
+
export declare type MondayFirst = {
|
|
5
|
+
/**
|
|
6
|
+
* @description флаг рендера календаря дней начиная с понедельника
|
|
7
|
+
* @default true
|
|
8
|
+
*/
|
|
9
|
+
isMondayFirst?: boolean;
|
|
10
|
+
};
|
|
11
|
+
declare type DateDayPickerProps = MondayFirst & CommonDateCalendarHeadProps & PickerProps;
|
|
12
|
+
export declare const DayPicker: ({ date, selectedDate, onChange, isMondayFirst, ...headProps }: DateDayPickerProps) => JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import { useContext } from 'react';
|
|
14
|
+
import { DateCalendarBody, DateCalendarGridBtn, DateCalendarHead, DateCalendarWrapper, } from '../DateCalendar';
|
|
15
|
+
import { useCalendarNavigate } from '../hooks/useCalendarNavigate';
|
|
16
|
+
import { addMonths } from '../../utils/date';
|
|
17
|
+
import { useLocaleDateTimeFormat } from '../hooks/useLocaleDateTimeFormat';
|
|
18
|
+
import { ConfigContext } from '../../ConfigProvider';
|
|
19
|
+
import { DateDayPickerGridHead } from './DateDayPickerGridHead';
|
|
20
|
+
import { DateDayPickerGridBody } from './DateDayPickerGrid';
|
|
21
|
+
import { useDaysGrid } from './hooks/useDaysGrid';
|
|
22
|
+
export const DayPicker = (_a) => {
|
|
23
|
+
var { date: initialDate, selectedDate, onChange, isMondayFirst } = _a, headProps = __rest(_a, ["date", "selectedDate", "onChange", "isMondayFirst"]);
|
|
24
|
+
const monthYearFormat = useLocaleDateTimeFormat({
|
|
25
|
+
month: 'long',
|
|
26
|
+
year: 'numeric',
|
|
27
|
+
});
|
|
28
|
+
const dayFormat = useLocaleDateTimeFormat({
|
|
29
|
+
weekday: 'short',
|
|
30
|
+
year: '2-digit',
|
|
31
|
+
month: 'short',
|
|
32
|
+
day: '2-digit',
|
|
33
|
+
timeZone: 'UTC',
|
|
34
|
+
});
|
|
35
|
+
const { month: monthCaption } = useContext(ConfigContext).datePickerLanguageMap;
|
|
36
|
+
const { baseDate, handlePrevClick, handleNextClick } = useCalendarNavigate({
|
|
37
|
+
date: initialDate,
|
|
38
|
+
addCb: addMonths,
|
|
39
|
+
});
|
|
40
|
+
const { grid, isPrevDisabled, isNextDisabled } = useDaysGrid({
|
|
41
|
+
baseDate,
|
|
42
|
+
selectedDate,
|
|
43
|
+
isMondayFirst,
|
|
44
|
+
fullSize: true,
|
|
45
|
+
});
|
|
46
|
+
return (_jsxs(DateCalendarWrapper, { children: [_jsx(DateCalendarHead, Object.assign({}, headProps, { arrowPostfixTitle: monthCaption.single, onPrevClick: !isPrevDisabled ? handlePrevClick : undefined, onNextClick: !isNextDisabled ? handleNextClick : undefined, headBtnText: monthYearFormat(baseDate) })), _jsxs(DateCalendarBody, { children: [_jsx(DateDayPickerGridHead, { isMondayFirst: isMondayFirst }), _jsx(DateDayPickerGridBody, Object.assign({ role: "grid" }, { children: grid.map((_a, index) => {
|
|
47
|
+
var { date, monthDay } = _a, props = __rest(_a, ["date", "monthDay"]);
|
|
48
|
+
return (_jsx(DateCalendarGridBtn, Object.assign({ onClick: () => onChange === null || onChange === void 0 ? void 0 : onChange(date), title: dayFormat(date) }, props, { children: monthDay }), index));
|
|
49
|
+
}) }))] })] }));
|
|
50
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useDaysGrid';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './useDaysGrid';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { GridBuilder } from '../../../types';
|
|
2
|
+
export declare type DayItem = {
|
|
3
|
+
/**
|
|
4
|
+
* @description Флаг обозначающий, что дата совпадает с запрошенным месяцем
|
|
5
|
+
*/
|
|
6
|
+
isOutOfAvailableRange: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* @description день месяца, 1 - 31
|
|
9
|
+
*/
|
|
10
|
+
monthDay: number;
|
|
11
|
+
};
|
|
12
|
+
declare type BuildMonthGridOptions = {
|
|
13
|
+
/**
|
|
14
|
+
* @description для сборки календаря в полный размер, для соответствия с дизайном в rangePicker
|
|
15
|
+
* @default false
|
|
16
|
+
*/
|
|
17
|
+
fullSize?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* @description Флаг обозначающий, что надо отрендерить массив, где понедельник в календаре идет вначале
|
|
20
|
+
* @default true
|
|
21
|
+
*/
|
|
22
|
+
isMondayFirst?: boolean;
|
|
23
|
+
};
|
|
24
|
+
export declare const useDaysGrid: GridBuilder<DayItem, BuildMonthGridOptions>;
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { useContext, useMemo } from 'react';
|
|
2
|
+
import { DAYS_IN_WEEK, MONTHS_IN_YEAR } from '../../../constants/counts';
|
|
3
|
+
import { DateCompareDeep, addDays, buildIsoDate, isDateOutOfRange, } from '../../../../utils/date';
|
|
4
|
+
import { buildGridResult } from '../../../utils/buildGridItem';
|
|
5
|
+
import { MinMaxDateContext } from '../../../MinMaxDateContext';
|
|
6
|
+
const MAX_ROWS = 6;
|
|
7
|
+
const MAX_DAYS_IN_GRID = MAX_ROWS * DAYS_IN_WEEK;
|
|
8
|
+
export const useDaysGrid = ({ baseDate, selectedDate, fullSize = false, isMondayFirst = true, }) => {
|
|
9
|
+
const { maxDate, minDate } = useContext(MinMaxDateContext);
|
|
10
|
+
return useMemo(() => {
|
|
11
|
+
const grid = [];
|
|
12
|
+
/**
|
|
13
|
+
* @description нормализованный номер месяца от базовой даты
|
|
14
|
+
*/
|
|
15
|
+
const month = baseDate.getUTCMonth() + 1;
|
|
16
|
+
/**
|
|
17
|
+
* @description получаем новую дату, т.к. пропс может содержать дни, часы, минуты, что собьет наш счет
|
|
18
|
+
*/
|
|
19
|
+
const startDate = buildIsoDate({ year: baseDate.getUTCFullYear(), month });
|
|
20
|
+
/**
|
|
21
|
+
* @description отступ для компенсации первого дня недели, 1 для понедельника, 0 для воскресенья
|
|
22
|
+
*/
|
|
23
|
+
const firstWeekDayGap = Number(isMondayFirst);
|
|
24
|
+
/**
|
|
25
|
+
* @description номер первого дня текущего месяца в календаре, зависит от флага isMondayFirst
|
|
26
|
+
*/
|
|
27
|
+
let startWeekDay = startDate.getUTCDay();
|
|
28
|
+
if (startWeekDay === 0 && isMondayFirst) {
|
|
29
|
+
startWeekDay = DAYS_IN_WEEK;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @description счетчик указывающий на первый индекс текущего месяца
|
|
33
|
+
*/
|
|
34
|
+
let startMonthIndex = 0;
|
|
35
|
+
/**
|
|
36
|
+
* @description счетчик указывающий на последний индекс текущего месяца
|
|
37
|
+
*/
|
|
38
|
+
let lastCurrentMonthIndex = -1;
|
|
39
|
+
/**
|
|
40
|
+
* @description текущая дата пользователя
|
|
41
|
+
*/
|
|
42
|
+
const currentDate = new Date();
|
|
43
|
+
// считчик начинается с отступа, чтобы соответствовать выбранному типу календаря (первый понедельник/воскресенье)
|
|
44
|
+
for (let i = firstWeekDayGap; i < MAX_DAYS_IN_GRID + firstWeekDayGap; i++) {
|
|
45
|
+
// текущая дата в счетчике
|
|
46
|
+
const date = addDays(startDate, i - startWeekDay);
|
|
47
|
+
/**
|
|
48
|
+
* @description нормализованный номер месяца
|
|
49
|
+
*/
|
|
50
|
+
const dateMonth = date.getUTCMonth() + 1;
|
|
51
|
+
/**
|
|
52
|
+
* @description флаг следующего месяца относительно базовой даты
|
|
53
|
+
*/
|
|
54
|
+
const isNextMonth =
|
|
55
|
+
//если текущий месяц декабрь(12), то следующим для него будет январь(1)
|
|
56
|
+
(dateMonth !== MONTHS_IN_YEAR && dateMonth > month) ||
|
|
57
|
+
(month === MONTHS_IN_YEAR && dateMonth === 1);
|
|
58
|
+
/**
|
|
59
|
+
* @description флаг предыдущего месяца относительно базовой даты
|
|
60
|
+
*/
|
|
61
|
+
const isPrevMonth =
|
|
62
|
+
// если текущий месяц январь(1), то предыдущим для него является декабрь(12)
|
|
63
|
+
dateMonth < month || (dateMonth === MONTHS_IN_YEAR && month === 1);
|
|
64
|
+
const isFirstDayOfWeek = date.getUTCDay() === firstWeekDayGap;
|
|
65
|
+
// проверка на необходимость продолжать заполнять массив
|
|
66
|
+
// если fullSize === false, и начался следующий месяц, и день недели понедельник, то тогда закончить заполнение
|
|
67
|
+
if (!fullSize && isNextMonth && isFirstDayOfWeek) {
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
if (!isNextMonth) {
|
|
71
|
+
// если месяц еще не следующий, то инкрементируем счетчик крайнего дня месяца
|
|
72
|
+
lastCurrentMonthIndex++;
|
|
73
|
+
}
|
|
74
|
+
if (isPrevMonth) {
|
|
75
|
+
// если месяц предыдущий, инкрементируем счетчик первого дня месяца
|
|
76
|
+
startMonthIndex++;
|
|
77
|
+
}
|
|
78
|
+
grid.push({
|
|
79
|
+
isOutOfAvailableRange: dateMonth !== month,
|
|
80
|
+
selected: !!selectedDate &&
|
|
81
|
+
Number(date) >= Number(selectedDate) &&
|
|
82
|
+
Number(date) < Number(addDays(selectedDate, 1)),
|
|
83
|
+
isCurrent: date.getUTCFullYear() === currentDate.getFullYear() &&
|
|
84
|
+
date.getUTCDate() === currentDate.getDate() &&
|
|
85
|
+
date.getUTCMonth() === currentDate.getMonth(),
|
|
86
|
+
date,
|
|
87
|
+
monthDay: date.getUTCDate(),
|
|
88
|
+
disabled: isDateOutOfRange({
|
|
89
|
+
date,
|
|
90
|
+
minDate,
|
|
91
|
+
maxDate,
|
|
92
|
+
deep: DateCompareDeep.day,
|
|
93
|
+
}),
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
return buildGridResult({
|
|
97
|
+
grid,
|
|
98
|
+
minDate,
|
|
99
|
+
maxDate,
|
|
100
|
+
addCb: addDays,
|
|
101
|
+
indexPrevDisabledCheck: startMonthIndex,
|
|
102
|
+
indexNextDisabledCheck: lastCurrentMonthIndex,
|
|
103
|
+
deep: DateCompareDeep.day,
|
|
104
|
+
});
|
|
105
|
+
}, [baseDate, selectedDate]);
|
|
106
|
+
};
|