@skbkontur/react-ui 4.14.2 → 4.15.1-fix-flushsync-warning
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -5
- package/cjs/components/Button/Button.d.ts +2 -6
- package/cjs/components/Button/Button.js +14 -5
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.js +2 -1
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/getInnerLinkTheme.js +0 -3
- package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +104 -0
- package/cjs/components/Calendar/Calendar.js +475 -0
- package/cjs/components/Calendar/Calendar.js.map +1 -0
- package/cjs/components/Calendar/Calendar.md +147 -0
- package/cjs/{internal → components}/Calendar/Calendar.styles.d.ts +1 -0
- package/cjs/components/Calendar/Calendar.styles.js +33 -0
- package/cjs/components/Calendar/Calendar.styles.js.map +1 -0
- package/{internal → cjs/components}/Calendar/CalendarUtils.d.ts +19 -2
- package/cjs/components/Calendar/CalendarUtils.js +117 -0
- package/cjs/components/Calendar/CalendarUtils.js.map +1 -0
- package/cjs/components/Calendar/Month.js.map +1 -0
- package/cjs/{internal → components}/Calendar/MonthView.d.ts +1 -1
- package/cjs/{internal → components}/Calendar/MonthView.js +1 -1
- package/cjs/{internal → components}/Calendar/MonthView.js.map +1 -1
- package/cjs/components/Calendar/locale/index.d.ts +4 -0
- package/cjs/components/Calendar/locale/index.js +11 -0
- package/cjs/components/Calendar/locale/index.js.map +1 -0
- package/cjs/components/Calendar/locale/locales/en.d.ts +2 -0
- package/cjs/components/Calendar/locale/locales/en.js +16 -0
- package/cjs/components/Calendar/locale/locales/en.js.map +1 -0
- package/cjs/components/Calendar/locale/locales/ru.d.ts +2 -0
- package/cjs/components/Calendar/locale/locales/ru.js +16 -0
- package/cjs/components/Calendar/locale/locales/ru.js.map +1 -0
- package/cjs/components/Calendar/locale/types.d.ts +3 -0
- package/cjs/components/Calendar/locale/types.js +1 -0
- package/cjs/components/Calendar/locale/types.js.map +1 -0
- package/cjs/components/DatePicker/DatePicker.d.ts +16 -17
- package/cjs/components/DatePicker/DatePicker.js +107 -57
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -0
- package/cjs/components/DatePicker/DatePicker.styles.js +36 -1
- package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
- package/cjs/components/DatePicker/DatePickerHelpers.d.ts +1 -1
- package/cjs/components/DatePicker/DatePickerHelpers.js.map +1 -1
- package/cjs/components/DatePicker/Picker.d.ts +8 -9
- package/cjs/components/DatePicker/Picker.js +32 -41
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/DatePicker/locale/locales/en.js +3 -15
- package/cjs/components/DatePicker/locale/locales/en.js.map +1 -1
- package/cjs/components/DatePicker/locale/locales/ru.js +3 -15
- package/cjs/components/DatePicker/locale/locales/ru.js.map +1 -1
- package/cjs/components/DatePicker/locale/types.d.ts +2 -2
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js +2 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.d.ts +1 -0
- package/cjs/components/FileUploader/FileUploader.js +3 -1
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +4 -1
- package/cjs/components/Kebab/Kebab.js +9 -3
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.js +4 -2
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.mixins.d.ts +1 -2
- package/cjs/components/Link/Link.mixins.js +4 -16
- package/cjs/components/Link/Link.mixins.js.map +1 -1
- package/cjs/components/Link/Link.styles.d.ts +2 -0
- package/cjs/components/Link/Link.styles.js +56 -38
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Loader/Loader.js +1 -3
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/Modal/Modal.d.ts +3 -3
- package/cjs/components/Modal/Modal.js +19 -2
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +0 -2
- package/cjs/components/Modal/Modal.styles.js +25 -36
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.js +0 -2
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.js +3 -6
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.js +2 -7
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.js +4 -6
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js +9 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +3 -3
- package/cjs/components/SidePage/SidePage.js +8 -1
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/Spinner/Spinner.md +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +4 -2
- package/cjs/components/Switcher/Switcher.js +13 -3
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Toast/Toast.md +16 -12
- package/cjs/components/TokenInput/TokenInput.d.ts +44 -1
- package/cjs/components/TokenInput/TokenInput.js +42 -0
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.md +100 -0
- package/cjs/index.d.ts +1 -0
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.js +25 -13
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.js +3 -3
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +4 -1
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/NativeDateInput/utils.d.ts +1 -1
- package/cjs/internal/NativeDateInput/utils.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +8 -0
- package/cjs/internal/PopupMenu/PopupMenu.js +23 -3
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndexStorage.d.ts +0 -5
- package/cjs/internal/ZIndex/ZIndexStorage.js +1 -6
- package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.styles.js +2 -1
- package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +4 -15
- package/cjs/internal/themes/DefaultTheme.js +15 -48
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/Theme2022.d.ts +0 -3
- package/cjs/internal/themes/Theme2022.js +2 -11
- package/cjs/internal/themes/Theme2022.js.map +1 -1
- package/cjs/lib/date/InternalDate.d.ts +1 -1
- package/cjs/lib/date/InternalDate.js +1 -1
- package/cjs/lib/date/InternalDate.js.map +1 -1
- package/cjs/lib/locale/decorators.js +0 -3
- package/cjs/lib/locale/decorators.js.map +1 -1
- package/cjs/lib/locale/types.d.ts +2 -0
- package/cjs/lib/locale/types.js +2 -0
- package/cjs/lib/locale/types.js.map +1 -1
- package/cjs/typings/html.d.ts +1 -1
- package/cjs/typings/utility-types.d.ts +6 -0
- package/components/Button/Button/Button.js +13 -4
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +2 -6
- package/components/Button/Button.styles/Button.styles.js +1 -1
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +0 -3
- package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
- package/{internal → components}/Calendar/Calendar/Calendar.js +136 -71
- package/components/Calendar/Calendar/Calendar.js.map +1 -0
- package/{internal → components}/Calendar/Calendar/package.json +1 -1
- package/components/Calendar/Calendar.d.ts +104 -0
- package/components/Calendar/Calendar.md +147 -0
- package/components/Calendar/Calendar.styles/Calendar.styles.js +17 -0
- package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -0
- package/{internal → components}/Calendar/Calendar.styles/package.json +1 -1
- package/{internal → components}/Calendar/Calendar.styles.d.ts +1 -0
- package/{internal → components}/Calendar/CalendarDateShape/package.json +1 -1
- package/{internal → components}/Calendar/CalendarScrollEvents/package.json +1 -1
- package/{internal → components}/Calendar/CalendarUtils/CalendarUtils.js +34 -0
- package/components/Calendar/CalendarUtils/CalendarUtils.js.map +1 -0
- package/{internal → components}/Calendar/CalendarUtils/package.json +1 -1
- package/{cjs/internal → components}/Calendar/CalendarUtils.d.ts +19 -2
- package/{internal → components}/Calendar/DayCellView/package.json +1 -1
- package/{internal → components}/Calendar/DayCellView.styles/package.json +1 -1
- package/{internal → components}/Calendar/DayCellViewModel/package.json +1 -1
- package/components/Calendar/Month/Month.js.map +1 -0
- package/{internal → components}/Calendar/Month/package.json +1 -1
- package/{internal → components}/Calendar/MonthView/MonthView.js +1 -1
- package/components/Calendar/MonthView/MonthView.js.map +1 -0
- package/{internal → components}/Calendar/MonthView/package.json +1 -1
- package/{internal → components}/Calendar/MonthView.d.ts +1 -1
- package/{internal → components}/Calendar/MonthView.styles/package.json +1 -1
- package/{internal → components}/Calendar/MonthViewModel/package.json +1 -1
- package/{internal → components}/Calendar/config/package.json +1 -1
- package/{internal → components}/Calendar/index/package.json +1 -1
- package/components/Calendar/locale/index/index.js +8 -0
- package/components/Calendar/locale/index/index.js.map +1 -0
- package/components/Calendar/locale/index/package.json +6 -0
- package/components/Calendar/locale/index.d.ts +4 -0
- package/components/Calendar/locale/locales/en/en.js +3 -0
- package/components/Calendar/locale/locales/en/en.js.map +1 -0
- package/components/Calendar/locale/locales/en/package.json +6 -0
- package/components/Calendar/locale/locales/en.d.ts +2 -0
- package/components/Calendar/locale/locales/ru/package.json +6 -0
- package/components/Calendar/locale/locales/ru/ru.js +3 -0
- package/components/Calendar/locale/locales/ru/ru.js.map +1 -0
- package/components/Calendar/locale/locales/ru.d.ts +2 -0
- package/components/Calendar/locale/package.json +6 -0
- package/components/Calendar/locale/types/package.json +6 -0
- package/components/Calendar/locale/types/types.js +1 -0
- package/components/Calendar/locale/types/types.js.map +1 -0
- package/components/Calendar/locale/types.d.ts +3 -0
- package/{internal → components}/Calendar/package.json +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +112 -62
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +16 -17
- package/components/DatePicker/DatePicker.styles/DatePicker.styles.js +7 -1
- package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
- package/components/DatePicker/DatePicker.styles.d.ts +3 -0
- package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js.map +1 -1
- package/components/DatePicker/DatePickerHelpers.d.ts +1 -1
- package/components/DatePicker/Picker/Picker.js +50 -66
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/DatePicker/Picker.d.ts +8 -9
- package/components/DatePicker/locale/locales/en/en.js +3 -3
- package/components/DatePicker/locale/locales/en/en.js.map +1 -1
- package/components/DatePicker/locale/locales/ru/ru.js +3 -3
- package/components/DatePicker/locale/locales/ru/ru.js.map +1 -1
- package/components/DatePicker/locale/types.d.ts +2 -2
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +2 -1
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +1 -1
- package/components/FileUploader/FileUploader/FileUploader.js +3 -1
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +6 -1
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +4 -1
- package/components/Link/Link/Link.js +4 -4
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.mixins/Link.mixins.js +2 -5
- package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
- package/components/Link/Link.mixins.d.ts +1 -2
- package/components/Link/Link.styles/Link.styles.js +28 -21
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Link/Link.styles.d.ts +2 -0
- package/components/Loader/Loader/Loader.js +0 -2
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Modal/Modal/Modal.js +28 -11
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +3 -3
- package/components/Modal/Modal.styles/Modal.styles.js +24 -30
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +0 -2
- package/components/Modal/ModalBody/ModalBody.js +0 -2
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js +3 -7
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js +3 -7
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +6 -5
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +12 -4
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +1 -0
- package/components/SidePage/SidePage/SidePage.js +9 -3
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +3 -3
- package/components/Spinner/Spinner.md +1 -1
- package/components/Switcher/Switcher/Switcher.js +8 -2
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +4 -2
- package/components/Toast/Toast.md +16 -12
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +44 -1
- package/components/TokenInput/TokenInput.md +100 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +33 -14
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +4 -2
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +5 -2
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/NativeDateInput/utils/utils.js.map +1 -1
- package/internal/NativeDateInput/utils.d.ts +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +13 -2
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +8 -0
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +1 -6
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
- package/internal/ZIndex/ZIndexStorage.d.ts +0 -5
- package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js +1 -1
- package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js +25 -80
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +4 -15
- package/internal/themes/Theme2022/Theme2022.js +6 -21
- package/internal/themes/Theme2022/Theme2022.js.map +1 -1
- package/internal/themes/Theme2022.d.ts +0 -3
- package/lib/date/InternalDate/InternalDate.js +1 -1
- package/lib/date/InternalDate/InternalDate.js.map +1 -1
- package/lib/date/InternalDate.d.ts +1 -1
- package/lib/locale/decorators/decorators.js.map +1 -1
- package/lib/locale/types/types.js.map +1 -1
- package/lib/locale/types.d.ts +2 -0
- package/package.json +2 -5
- package/typings/html.d.ts +1 -1
- package/typings/utility-types.d.ts +6 -0
- package/cjs/components/DatePicker/Picker.styles.d.ts +0 -5
- package/cjs/components/DatePicker/Picker.styles.js +0 -39
- package/cjs/components/DatePicker/Picker.styles.js.map +0 -1
- package/cjs/internal/Calendar/Calendar.d.ts +0 -63
- package/cjs/internal/Calendar/Calendar.js +0 -387
- package/cjs/internal/Calendar/Calendar.js.map +0 -1
- package/cjs/internal/Calendar/Calendar.styles.js +0 -23
- package/cjs/internal/Calendar/Calendar.styles.js.map +0 -1
- package/cjs/internal/Calendar/CalendarUtils.js +0 -71
- package/cjs/internal/Calendar/CalendarUtils.js.map +0 -1
- package/cjs/internal/Calendar/Month.js.map +0 -1
- package/components/DatePicker/Picker.styles/Picker.styles.js +0 -13
- package/components/DatePicker/Picker.styles/Picker.styles.js.map +0 -1
- package/components/DatePicker/Picker.styles/package.json +0 -6
- package/components/DatePicker/Picker.styles.d.ts +0 -5
- package/internal/Calendar/Calendar/Calendar.js.map +0 -1
- package/internal/Calendar/Calendar.d.ts +0 -63
- package/internal/Calendar/Calendar.styles/Calendar.styles.js +0 -14
- package/internal/Calendar/Calendar.styles/Calendar.styles.js.map +0 -1
- package/internal/Calendar/CalendarUtils/CalendarUtils.js.map +0 -1
- package/internal/Calendar/Month/Month.js.map +0 -1
- package/internal/Calendar/MonthView/MonthView.js.map +0 -1
- /package/cjs/{internal → components}/Calendar/CalendarDateShape.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/CalendarDateShape.js +0 -0
- /package/cjs/{internal → components}/Calendar/CalendarDateShape.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.js +0 -0
- /package/cjs/{internal → components}/Calendar/CalendarScrollEvents.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellView.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellView.js +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellView.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellView.styles.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellView.styles.js +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellView.styles.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellViewModel.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellViewModel.js +0 -0
- /package/cjs/{internal → components}/Calendar/DayCellViewModel.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/Month.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/Month.js +0 -0
- /package/cjs/{internal → components}/Calendar/MonthView.styles.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/MonthView.styles.js +0 -0
- /package/cjs/{internal → components}/Calendar/MonthView.styles.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/MonthViewModel.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/MonthViewModel.js +0 -0
- /package/cjs/{internal → components}/Calendar/MonthViewModel.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/config.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/config.js +0 -0
- /package/cjs/{internal → components}/Calendar/config.js.map +0 -0
- /package/cjs/{internal → components}/Calendar/index.d.ts +0 -0
- /package/cjs/{internal → components}/Calendar/index.js +0 -0
- /package/cjs/{internal → components}/Calendar/index.js.map +0 -0
- /package/{internal → components}/Calendar/CalendarDateShape/CalendarDateShape.js +0 -0
- /package/{internal → components}/Calendar/CalendarDateShape/CalendarDateShape.js.map +0 -0
- /package/{internal → components}/Calendar/CalendarDateShape.d.ts +0 -0
- /package/{internal → components}/Calendar/CalendarScrollEvents/CalendarScrollEvents.js +0 -0
- /package/{internal → components}/Calendar/CalendarScrollEvents/CalendarScrollEvents.js.map +0 -0
- /package/{internal → components}/Calendar/CalendarScrollEvents.d.ts +0 -0
- /package/{internal → components}/Calendar/DayCellView/DayCellView.js +0 -0
- /package/{internal → components}/Calendar/DayCellView/DayCellView.js.map +0 -0
- /package/{internal → components}/Calendar/DayCellView.d.ts +0 -0
- /package/{internal → components}/Calendar/DayCellView.styles/DayCellView.styles.js +0 -0
- /package/{internal → components}/Calendar/DayCellView.styles/DayCellView.styles.js.map +0 -0
- /package/{internal → components}/Calendar/DayCellView.styles.d.ts +0 -0
- /package/{internal → components}/Calendar/DayCellViewModel/DayCellViewModel.js +0 -0
- /package/{internal → components}/Calendar/DayCellViewModel/DayCellViewModel.js.map +0 -0
- /package/{internal → components}/Calendar/DayCellViewModel.d.ts +0 -0
- /package/{internal → components}/Calendar/Month/Month.js +0 -0
- /package/{internal → components}/Calendar/Month.d.ts +0 -0
- /package/{internal → components}/Calendar/MonthView.styles/MonthView.styles.js +0 -0
- /package/{internal → components}/Calendar/MonthView.styles/MonthView.styles.js.map +0 -0
- /package/{internal → components}/Calendar/MonthView.styles.d.ts +0 -0
- /package/{internal → components}/Calendar/MonthViewModel/MonthViewModel.js +0 -0
- /package/{internal → components}/Calendar/MonthViewModel/MonthViewModel.js.map +0 -0
- /package/{internal → components}/Calendar/MonthViewModel.d.ts +0 -0
- /package/{internal → components}/Calendar/config/config.js +0 -0
- /package/{internal → components}/Calendar/config/config.js.map +0 -0
- /package/{internal → components}/Calendar/config.d.ts +0 -0
- /package/{internal → components}/Calendar/index/index.js +0 -0
- /package/{internal → components}/Calendar/index/index.js.map +0 -0
- /package/{internal → components}/Calendar/index.d.ts +0 -0
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.MIN_WIDTH = exports.DatePickerDataTids = exports.DatePicker = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
2
2
|
var _react = _interopRequireDefault(require("react"));
|
|
3
3
|
|
|
4
|
+
var _locale = require("../../lib/locale");
|
|
5
|
+
var _decorators = require("../../lib/locale/decorators");
|
|
6
|
+
var _InternalDateGetter = require("../../lib/date/InternalDateGetter");
|
|
7
|
+
var _ArrowAUp16Light = require("../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light");
|
|
8
|
+
var _ThemeHelpers = require("../../lib/theming/ThemeHelpers");
|
|
9
|
+
var _Emotion = require("../../lib/theming/Emotion");
|
|
10
|
+
var _ThemeFactory = require("../../lib/theming/ThemeFactory");
|
|
4
11
|
var _InternalDate = require("../../lib/date/InternalDate");
|
|
5
|
-
var _InternalDateTransformer = require("../../lib/date/InternalDateTransformer");
|
|
6
12
|
var _constants = require("../../lib/date/constants");
|
|
7
13
|
var _types = require("../../lib/date/types");
|
|
8
14
|
|
|
9
|
-
|
|
10
15
|
var _DateInput = require("../DateInput");
|
|
11
16
|
var _DropdownContainer = require("../../internal/DropdownContainer");
|
|
12
17
|
var _filterProps = require("../../lib/filterProps");
|
|
@@ -16,11 +21,14 @@ var _NativeDateInput = require("../../internal/NativeDateInput");
|
|
|
16
21
|
var _rootNode = require("../../lib/rootNode");
|
|
17
22
|
var _utils = require("../../lib/utils");
|
|
18
23
|
var _createPropsGetter = require("../../lib/createPropsGetter");
|
|
24
|
+
var _Calendar = require("../Calendar");
|
|
19
25
|
var _ThemeContext = require("../../lib/theming/ThemeContext");
|
|
20
26
|
|
|
27
|
+
var _Button = require("../Button");
|
|
28
|
+
var _CalendarUtils = require("../Calendar/CalendarUtils");
|
|
21
29
|
|
|
22
|
-
var
|
|
23
|
-
var
|
|
30
|
+
var _DatePicker = require("./DatePicker.styles");
|
|
31
|
+
var _locale2 = require("./locale");var _dec, _class, _class2, _temp;
|
|
24
32
|
|
|
25
33
|
var INPUT_PASS_PROPS = {
|
|
26
34
|
autoFocus: true,
|
|
@@ -75,11 +83,6 @@ var MIN_WIDTH = 120;exports.MIN_WIDTH = MIN_WIDTH;
|
|
|
75
83
|
|
|
76
84
|
|
|
77
85
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
86
|
|
|
84
87
|
|
|
85
88
|
|
|
@@ -88,6 +91,8 @@ var MIN_WIDTH = 120;exports.MIN_WIDTH = MIN_WIDTH;
|
|
|
88
91
|
|
|
89
92
|
var DatePickerDataTids = {
|
|
90
93
|
root: 'DatePicker__root',
|
|
94
|
+
input: 'DatePicker__input',
|
|
95
|
+
label: 'DatePicker__label',
|
|
91
96
|
pickerRoot: 'Picker__root',
|
|
92
97
|
pickerTodayWrapper: 'Picker__todayWrapper' };exports.DatePickerDataTids = DatePickerDataTids;var
|
|
93
98
|
|
|
@@ -95,8 +100,8 @@ var DatePickerDataTids = {
|
|
|
95
100
|
|
|
96
101
|
|
|
97
102
|
|
|
98
|
-
DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {(0, _inheritsLoose2.default)(DatePicker, _React$PureComponent);function DatePicker() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;_this.
|
|
99
103
|
|
|
104
|
+
DatePicker = (_dec = (0, _decorators.locale)('DatePicker', _locale2.DatePickerLocaleHelper), (0, _rootNode.rootNode)(_class = _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {(0, _inheritsLoose2.default)(DatePicker, _React$PureComponent);function DatePicker() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;_this.
|
|
100
105
|
|
|
101
106
|
|
|
102
107
|
|
|
@@ -156,6 +161,7 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
156
161
|
|
|
157
162
|
getProps = (0, _createPropsGetter.createPropsGetter)(DatePicker.defaultProps);_this.
|
|
158
163
|
|
|
164
|
+
calendar = null;_this.
|
|
159
165
|
|
|
160
166
|
|
|
161
167
|
|
|
@@ -182,7 +188,8 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
182
188
|
|
|
183
189
|
|
|
184
190
|
|
|
185
|
-
|
|
191
|
+
|
|
192
|
+
state = { opened: false, canUseMobileNativeDatePicker: false, today: (0, _CalendarUtils.getTodayDate)() };_this.
|
|
186
193
|
|
|
187
194
|
input = null;_this.
|
|
188
195
|
focused = false;_this.
|
|
@@ -253,23 +260,21 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
253
260
|
|
|
254
261
|
|
|
255
262
|
|
|
256
|
-
renderMain = function (props) {
|
|
257
|
-
var picker = null;
|
|
258
263
|
|
|
259
|
-
var value = _this.props.value;
|
|
260
|
-
var _this$getProps = _this.getProps(),minDate = _this$getProps.minDate,maxDate = _this$getProps.maxDate;
|
|
261
264
|
|
|
262
|
-
var internalDate = _this.parseValueToDate(value);
|
|
263
|
-
var date = internalDate ? internalDate.toNativeFormat() : null;
|
|
264
265
|
|
|
265
|
-
|
|
266
|
-
var
|
|
266
|
+
renderMain = function (props) {
|
|
267
|
+
var picker = null;
|
|
267
268
|
|
|
268
|
-
var
|
|
269
|
-
var formattedMaxDate = parsedMaxDate && parsedMaxDate.toNativeFormat() || undefined;
|
|
269
|
+
var _this$getProps = _this.getProps(),minDate = _this$getProps.minDate,maxDate = _this$getProps.maxDate;
|
|
270
270
|
|
|
271
271
|
if (_this.state.opened) {
|
|
272
272
|
picker = /*#__PURE__*/
|
|
273
|
+
_react.default.createElement(_locale.LocaleContext.Provider, {
|
|
274
|
+
value: {
|
|
275
|
+
locale: { Calendar: { months: _this.locale.months } } } }, /*#__PURE__*/
|
|
276
|
+
|
|
277
|
+
|
|
273
278
|
_react.default.createElement(_DropdownContainer.DropdownContainer, {
|
|
274
279
|
menuPos: _this.props.menuPos,
|
|
275
280
|
"data-tid": DatePickerDataTids.root,
|
|
@@ -277,14 +282,21 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
277
282
|
offsetY: parseInt(_this.theme.datePickerMenuOffsetY),
|
|
278
283
|
align: _this.props.menuAlign }, /*#__PURE__*/
|
|
279
284
|
|
|
280
|
-
_react.default.createElement(
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
285
|
+
_react.default.createElement("div", {
|
|
286
|
+
"data-tid": DatePickerDataTids.pickerRoot,
|
|
287
|
+
className: _DatePicker.styles.calendarWrapper(_this.theme),
|
|
288
|
+
onMouseDown: function onMouseDown(e) {return e.preventDefault();} }, /*#__PURE__*/
|
|
289
|
+
|
|
290
|
+
_react.default.createElement(_Calendar.Calendar, {
|
|
291
|
+
ref: function ref(c) {return _this.calendar = c;},
|
|
292
|
+
maxDate: _this.parseValueToDate(maxDate),
|
|
293
|
+
minDate: _this.parseValueToDate(minDate),
|
|
294
|
+
onValueChange: _this.handleValueChange,
|
|
295
|
+
isHoliday: _this.props.isHoliday,
|
|
296
|
+
value: _this.parseValueToDate(_this.props.value) }),
|
|
297
|
+
|
|
298
|
+
_this.props.enableTodayLink && _this.renderTodayLink(), ' ')));
|
|
299
|
+
|
|
288
300
|
|
|
289
301
|
|
|
290
302
|
|
|
@@ -296,7 +308,8 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
296
308
|
style: _this.getRootStyle(),
|
|
297
309
|
onMouseEnter: _this.props.onMouseEnter,
|
|
298
310
|
onMouseLeave: _this.props.onMouseLeave,
|
|
299
|
-
onMouseOver: _this.props.onMouseOver
|
|
311
|
+
onMouseOver: _this.props.onMouseOver,
|
|
312
|
+
"data-tid": DatePickerDataTids.label }, /*#__PURE__*/
|
|
300
313
|
|
|
301
314
|
_react.default.createElement(_DateInput.DateInput, (0, _extends2.default)({},
|
|
302
315
|
(0, _filterProps.filterProps)(props, INPUT_PASS_PROPS), {
|
|
@@ -308,7 +321,8 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
308
321
|
maxDate: maxDate,
|
|
309
322
|
onBlur: _this.handleBlur,
|
|
310
323
|
onFocus: _this.handleFocus,
|
|
311
|
-
onValueChange: _this.props.onValueChange
|
|
324
|
+
onValueChange: _this.props.onValueChange,
|
|
325
|
+
"data-tid": DatePickerDataTids.input })),
|
|
312
326
|
|
|
313
327
|
_this.state.canUseMobileNativeDatePicker && /*#__PURE__*/
|
|
314
328
|
_react.default.createElement(_NativeDateInput.NativeDateInput, {
|
|
@@ -324,18 +338,8 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
324
338
|
|
|
325
339
|
};_this.
|
|
326
340
|
|
|
327
|
-
getParent = function () {
|
|
328
|
-
return (0, _rootNode.getRootNode)((0, _assertThisInitialized2.default)(_this));
|
|
329
|
-
};_this.
|
|
330
341
|
|
|
331
|
-
getRootStyle = function () {
|
|
332
|
-
var width = _this.props.width;
|
|
333
|
-
return (0, _utils.isNonNullable)(width) ? { width: width } : { minWidth: MIN_WIDTH };
|
|
334
|
-
};_this.
|
|
335
342
|
|
|
336
|
-
getInputRef = function (ref) {
|
|
337
|
-
_this.input = ref;
|
|
338
|
-
};_this.
|
|
339
343
|
|
|
340
344
|
|
|
341
345
|
|
|
@@ -348,6 +352,62 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
348
352
|
|
|
349
353
|
|
|
350
354
|
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
handleSelectToday = function (today) {return function () {
|
|
390
|
+
_this.handleSelect(today);
|
|
391
|
+
|
|
392
|
+
if (_this.calendar) {
|
|
393
|
+
var _this$state$today = _this.state.today,month = _this$state$today.month,year = _this$state$today.year;
|
|
394
|
+
_this.calendar.scrollToMonth(month, year);
|
|
395
|
+
}
|
|
396
|
+
};};_this.
|
|
397
|
+
|
|
398
|
+
getParent = function () {
|
|
399
|
+
return (0, _rootNode.getRootNode)((0, _assertThisInitialized2.default)(_this));
|
|
400
|
+
};_this.
|
|
401
|
+
|
|
402
|
+
getRootStyle = function () {
|
|
403
|
+
var width = _this.props.width;
|
|
404
|
+
return (0, _utils.isNonNullable)(width) ? { width: width } : { minWidth: MIN_WIDTH };
|
|
405
|
+
};_this.
|
|
406
|
+
|
|
407
|
+
getInputRef = function (ref) {
|
|
408
|
+
_this.input = ref;
|
|
409
|
+
};_this.
|
|
410
|
+
|
|
351
411
|
handleFocus = function () {
|
|
352
412
|
if (_this.focused) {
|
|
353
413
|
return;
|
|
@@ -375,29 +435,19 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
375
435
|
}
|
|
376
436
|
};_this.
|
|
377
437
|
|
|
378
|
-
|
|
379
|
-
_this.handleSelect(
|
|
438
|
+
handleValueChange = function (value) {
|
|
439
|
+
_this.handleSelect(value);
|
|
380
440
|
_this.blur();
|
|
381
441
|
};_this.
|
|
382
442
|
|
|
383
|
-
handleSelect = function (
|
|
384
|
-
if (!
|
|
443
|
+
handleSelect = function (value) {
|
|
444
|
+
if (!value) {
|
|
385
445
|
return null;
|
|
386
446
|
}
|
|
387
447
|
|
|
388
|
-
var value = _InternalDateTransformer.InternalDateTransformer.dateToInternalString({
|
|
389
|
-
date: dateShape.date,
|
|
390
|
-
month: dateShape.month + 1,
|
|
391
|
-
year: dateShape.year });
|
|
392
|
-
|
|
393
448
|
if (_this.props.onValueChange) {
|
|
394
449
|
_this.props.onValueChange(value);
|
|
395
450
|
}
|
|
396
|
-
};_this.
|
|
397
|
-
|
|
398
|
-
isHoliday = function (_ref) {var date = _ref.date,month = _ref.month,year = _ref.year,isWeekend = _ref.isWeekend;
|
|
399
|
-
var dateString = _InternalDateTransformer.InternalDateTransformer.dateToInternalString({ date: date, month: month + 1, year: year });
|
|
400
|
-
return _this.getProps().isHoliday(dateString, isWeekend);
|
|
401
451
|
};return _this;}var _proto = DatePicker.prototype;_proto.componentDidMount = function componentDidMount() {if (this.props.useMobileNativeDatePicker && _client.isMobile) {this.setState({ canUseMobileNativeDatePicker: true });}if (this.props.autoFocus) {this.focus();}};_proto.componentDidUpdate = function componentDidUpdate() {var disabled = this.props.disabled;var opened = this.state.opened;if (disabled && opened) {this.close();}} /**
|
|
402
452
|
* @public
|
|
403
453
|
*/;_proto.blur = function blur() {if (this.input) {this.input.blur();}this.handleBlur();} /**
|
|
@@ -405,7 +455,7 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
405
455
|
*/;_proto.focus = function focus() {if (this.props.disabled) {return;}if (this.input) {this.input.focus();}this.handleFocus();} /**
|
|
406
456
|
* Закрывает выпадашку выбора дня
|
|
407
457
|
* @public
|
|
408
|
-
*/;_proto.close = function close() {this.setState({ opened: false });};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain);});};_proto.parseValueToDate = function parseValueToDate(value) {if (value === undefined || value === null) {return undefined;}var date = new _InternalDate.InternalDate({ value: value });if (date.validate({ checks: [_types.InternalDateValidateCheck.NotNull, _types.InternalDateValidateCheck.Native] })) {return date;}return undefined;};return DatePicker;}(_react.default.PureComponent), _class2.__KONTUR_REACT_UI__ = 'DatePicker', _class2.propTypes = { autoFocus: _propTypes.default.bool, disabled: _propTypes.default.bool, /**
|
|
458
|
+
*/;_proto.close = function close() {this.setState({ opened: false });};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme) }, /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.props), _this2.renderMain));});};_proto.parseValueToDate = function parseValueToDate(value) {if (value === undefined || value === null) {return undefined;}var date = new _InternalDate.InternalDate({ value: value });if (date.validate({ checks: [_types.InternalDateValidateCheck.NotNull, _types.InternalDateValidateCheck.Native] })) {return date.toString({ withPad: true });}return undefined;};_proto.renderTodayLink = function renderTodayLink() {var _cx;var _this$locale = this.locale,order = _this$locale.order,separator = _this$locale.separator;var today = new _InternalDate.InternalDate({ order: order, separator: separator }).setComponents(_InternalDateGetter.InternalDateGetter.getTodayComponents()).toString({ withPad: true, withSeparator: true });if ((0, _ThemeHelpers.isTheme2022)(this.theme)) {return /*#__PURE__*/_react.default.createElement("div", { style: { margin: 8 } }, /*#__PURE__*/_react.default.createElement(_Button.Button, { "data-tid": DatePickerDataTids.pickerTodayWrapper, width: "100%", onClick: this.handleSelectToday(today), icon: /*#__PURE__*/_react.default.createElement(_ArrowAUp16Light.ArrowAUpIcon16Light, null) }, this.locale.today));}return /*#__PURE__*/_react.default.createElement("button", { "data-tid": DatePickerDataTids.pickerTodayWrapper, className: (0, _Emotion.cx)((_cx = {}, _cx[_DatePicker.styles.todayLinkWrapper(this.theme)] = true, _cx)), onClick: this.handleSelectToday(today), tabIndex: -1 }, this.locale.today + " " + today);};return DatePicker;}(_react.default.PureComponent), _class2.__KONTUR_REACT_UI__ = 'DatePicker', _class2.propTypes = { autoFocus: _propTypes.default.bool, disabled: _propTypes.default.bool, /**
|
|
409
459
|
* Включает кнопку сегодня в календаре
|
|
410
460
|
*/enableTodayLink: _propTypes.default.bool, error: _propTypes.default.bool, /**
|
|
411
461
|
* Максимальная дата в календаре.
|
|
@@ -413,4 +463,4 @@ DatePicker = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/fu
|
|
|
413
463
|
* Минимальная дата в календаре.
|
|
414
464
|
*/minDate: _propTypes.default.string.isRequired, /**
|
|
415
465
|
* Строка формата `dd.mm.yyyy`
|
|
416
|
-
*/value: _propTypes.default.string, warning: _propTypes.default.bool, width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired, onBlur: _propTypes.default.func, onValueChange: _propTypes.default.func.isRequired, onFocus: _propTypes.default.func, onKeyDown: _propTypes.default.func, onMouseEnter: _propTypes.default.func, onMouseLeave: _propTypes.default.func, onMouseOver: _propTypes.default.func, isHoliday: _propTypes.default.func
|
|
466
|
+
*/value: _propTypes.default.string, warning: _propTypes.default.bool, width: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired, onBlur: _propTypes.default.func, onValueChange: _propTypes.default.func.isRequired, onFocus: _propTypes.default.func, onKeyDown: _propTypes.default.func, onMouseEnter: _propTypes.default.func, onMouseLeave: _propTypes.default.func, onMouseOver: _propTypes.default.func, isHoliday: _propTypes.default.func }, _class2.defaultProps = { minDate: _constants.MIN_FULLDATE, maxDate: _constants.MAX_FULLDATE }, _class2.validate = function (value, range) {if (range === void 0) {range = {};}if (!value) {return false;}var _range = range,_range$minDate = _range.minDate,minDate = _range$minDate === void 0 ? _constants.MIN_FULLDATE : _range$minDate,_range$maxDate = _range.maxDate,maxDate = _range$maxDate === void 0 ? _constants.MAX_FULLDATE : _range$maxDate;var internalDate = new _InternalDate.InternalDate({ order: _types.InternalDateOrder.DMY, separator: _types.InternalDateSeparator.Dot }).setRangeStart(new _InternalDate.InternalDate({ value: minDate })).setRangeEnd(new _InternalDate.InternalDate({ value: maxDate })).parseValue(value);return internalDate.validate({ checks: [_types.InternalDateValidateCheck.NotNull, _types.InternalDateValidateCheck.Number, _types.InternalDateValidateCheck.Native, _types.InternalDateValidateCheck.Limits, _types.InternalDateValidateCheck.Range] });}, _temp)) || _class) || _class);exports.DatePicker = DatePicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePicker.tsx"],"names":["INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","pickerRoot","pickerTodayWrapper","DatePicker","rootNode","getProps","defaultProps","state","opened","canUseMobileNativeDatePicker","input","focused","renderMain","props","picker","value","minDate","maxDate","internalDate","parseValueToDate","date","toNativeFormat","parsedMinDate","formattedMinDate","undefined","parsedMaxDate","formattedMaxDate","menuPos","getParent","parseInt","theme","datePickerMenuOffsetY","menuAlign","handlePick","handleSelect","enableTodayLink","isHoliday","styles","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","handleBlur","handleFocus","onValueChange","width","minWidth","ref","setState","onFocus","close","onBlur","dateShape","blur","InternalDateTransformer","dateToInternalString","month","year","isWeekend","dateString","componentDidMount","useMobileNativeDatePicker","isMobile","focus","componentDidUpdate","render","setRootNode","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","React","PureComponent","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","_day","range","order","InternalDateOrder","DMY","separator","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"ueAAA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA,iD;;AAEA,IAAMA,gBAAgB,GAAG;AACvBC,EAAAA,SAAS,EAAE,IADY;AAEvBC,EAAAA,QAAQ,EAAE,IAFa;AAGvBC,EAAAA,OAAO,EAAE,IAHc;AAIvBC,EAAAA,KAAK,EAAE,IAJgB;AAKvBC,EAAAA,IAAI,EAAE,IALiB;AAMvBC,EAAAA,SAAS,EAAE,IANY,EAAzB;;;AASO,IAAMC,SAAS,GAAG,GAAlB,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuDA,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE,kBAD0B;AAEhCC,EAAAA,UAAU,EAAE,cAFoB;AAGhCC,EAAAA,kBAAkB,EAAE,sBAHY,EAA3B,C;;;;;;AASMC,U,OADZC,kB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DSC,IAAAA,Q,GAAW,0CAAkBF,UAAU,CAACG,YAA7B,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BZC,IAAAA,K,GAAyB,EAAEC,MAAM,EAAE,KAAV,EAAiBC,4BAA4B,EAAE,KAA/C,E;;AAExBC,IAAAA,K,GAA0B,I;AAC1BC,IAAAA,O,GAAU,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoEXC,IAAAA,U,GAAa,UAACC,KAAD,EAAoD;AACtE,UAAIC,MAAM,GAAG,IAAb;;AAEA,UAAQC,KAAR,GAAkB,MAAKF,KAAvB,CAAQE,KAAR;AACA,2BAA6B,MAAKV,QAAL,EAA7B,CAAQW,OAAR,kBAAQA,OAAR,CAAiBC,OAAjB,kBAAiBA,OAAjB;;AAEA,UAAMC,YAAY,GAAG,MAAKC,gBAAL,CAAsBJ,KAAtB,CAArB;AACA,UAAMK,IAAI,GAAGF,YAAY,GAAGA,YAAY,CAACG,cAAb,EAAH,GAAmC,IAA5D;;AAEA,UAAMC,aAAa,GAAG,MAAKH,gBAAL,CAAsBH,OAAtB,CAAtB;AACA,UAAMO,gBAAgB,GAAID,aAAa,IAAIA,aAAa,CAACD,cAAd,EAAlB,IAAqDG,SAA9E;;AAEA,UAAMC,aAAa,GAAG,MAAKN,gBAAL,CAAsBF,OAAtB,CAAtB;AACA,UAAMS,gBAAgB,GAAID,aAAa,IAAIA,aAAa,CAACJ,cAAd,EAAlB,IAAqDG,SAA9E;;AAEA,UAAI,MAAKjB,KAAL,CAAWC,MAAf,EAAuB;AACrBM,QAAAA,MAAM;AACJ,qCAAC,oCAAD;AACE,UAAA,OAAO,EAAE,MAAKD,KAAL,CAAWc,OADtB;AAEE,sBAAU5B,kBAAkB,CAACC,IAF/B;AAGE,UAAA,SAAS,EAAE,MAAK4B,SAHlB;AAIE,UAAA,OAAO,EAAEC,QAAQ,CAAC,MAAKC,KAAL,CAAWC,qBAAZ,CAJnB;AAKE,UAAA,KAAK,EAAE,MAAKlB,KAAL,CAAWmB,SALpB;;AAOE,qCAAC,cAAD;AACE,UAAA,KAAK,EAAEZ,IADT;AAEE,UAAA,OAAO,EAAEG,gBAFX;AAGE,UAAA,OAAO,EAAEG,gBAHX;AAIE,UAAA,MAAM,EAAE,MAAKO,UAJf;AAKE,UAAA,QAAQ,EAAE,MAAKC,YALjB;AAME,UAAA,eAAe,EAAE,MAAKrB,KAAL,CAAWsB,eAN9B;AAOE,UAAA,SAAS,EAAE,MAAKC,SAPlB,GAPF,CADF;;;;AAmBD;;AAED;AACE;AACE,UAAA,SAAS,EAAEC,mBAAOrC,IAAP,EADb;AAEE,UAAA,KAAK,EAAE,MAAKsC,YAAL,EAFT;AAGE,UAAA,YAAY,EAAE,MAAKzB,KAAL,CAAW0B,YAH3B;AAIE,UAAA,YAAY,EAAE,MAAK1B,KAAL,CAAW2B,YAJ3B;AAKE,UAAA,WAAW,EAAE,MAAK3B,KAAL,CAAW4B,WAL1B;;AAOE,qCAAC,oBAAD;AACM,sCAAY5B,KAAZ,EAAmBtB,gBAAnB,CADN;AAEE,UAAA,GAAG,EAAE,MAAKmD,WAFZ;AAGE,UAAA,KAAK,EAAE,MAAK7B,KAAL,CAAWE,KAAX,IAAoB,EAH7B;AAIE,UAAA,KAAK,EAAC,MAJR;AAKE,UAAA,QAAQ,MALV;AAME,UAAA,OAAO,EAAEC,OANX;AAOE,UAAA,OAAO,EAAEC,OAPX;AAQE,UAAA,MAAM,EAAE,MAAK0B,UARf;AASE,UAAA,OAAO,EAAE,MAAKC,WAThB;AAUE,UAAA,aAAa,EAAE,MAAK/B,KAAL,CAAWgC,aAV5B,IAPF;;AAmBG,cAAKtC,KAAL,CAAWE,4BAAX;AACC,qCAAC,gCAAD;AACE,UAAA,aAAa,EAAE,MAAKI,KAAL,CAAWgC,aAD5B;AAEE,UAAA,KAAK,EAAE,MAAKhC,KAAL,CAAWE,KAAX,IAAoB,EAF7B;AAGE,UAAA,OAAO,EAAEC,OAHX;AAIE,UAAA,OAAO,EAAEC,OAJX;AAKE,UAAA,QAAQ,EAAE,MAAKJ,KAAL,CAAWpB,QALvB,GApBJ;;;AA4BG,SAAC,MAAKc,KAAL,CAAWE,4BAAZ,IAA4CK,MA5B/C,CADF;;;AAgCD,K;;AAEMc,IAAAA,S,GAAY,YAAM;AACvB,aAAO,uEAAP;AACD,K;;AAEOU,IAAAA,Y,GAAe,YAAM;AAC3B,UAAQQ,KAAR,GAAkB,MAAKjC,KAAvB,CAAQiC,KAAR;AACA,aAAO,0BAAcA,KAAd,IAAuB,EAAEA,KAAK,EAALA,KAAF,EAAvB,GAAmC,EAAEC,QAAQ,EAAEjD,SAAZ,EAA1C;AACD,K;;AAEO4C,IAAAA,W,GAAc,UAACM,GAAD,EAA2B;AAC/C,YAAKtC,KAAL,GAAasC,GAAb;AACD,K;;;;;;;;;;;;;AAaOJ,IAAAA,W,GAAc,YAAM;AAC1B,UAAI,MAAKjC,OAAT,EAAkB;AAChB;AACD;;AAED,YAAKA,OAAL,GAAe,IAAf;;AAEA,YAAKsC,QAAL,CAAc,EAAEzC,MAAM,EAAE,IAAV,EAAd;;AAEA,UAAI,MAAKK,KAAL,CAAWqC,OAAf,EAAwB;AACtB,cAAKrC,KAAL,CAAWqC,OAAX;AACD;AACF,K;;AAEOP,IAAAA,U,GAAa,YAAM;AACzB,UAAI,CAAC,MAAKhC,OAAV,EAAmB;AACjB;AACD;;AAED,YAAKA,OAAL,GAAe,KAAf;AACA,YAAKwC,KAAL;;AAEA,UAAI,MAAKtC,KAAL,CAAWuC,MAAf,EAAuB;AACrB,cAAKvC,KAAL,CAAWuC,MAAX;AACD;AACF,K;;AAEOnB,IAAAA,U,GAAa,UAACoB,SAAD,EAAkC;AACrD,YAAKnB,YAAL,CAAkBmB,SAAlB;AACA,YAAKC,IAAL;AACD,K;;AAEOpB,IAAAA,Y,GAAe,UAACmB,SAAD,EAAyC;AAC9D,UAAI,CAACA,SAAL,EAAgB;AACd,eAAO,IAAP;AACD;;AAED,UAAMtC,KAAK,GAAGwC,iDAAwBC,oBAAxB,CAA6C;AACzDpC,QAAAA,IAAI,EAAEiC,SAAS,CAACjC,IADyC;AAEzDqC,QAAAA,KAAK,EAAEJ,SAAS,CAACI,KAAV,GAAkB,CAFgC;AAGzDC,QAAAA,IAAI,EAAEL,SAAS,CAACK,IAHyC,EAA7C,CAAd;;AAKA,UAAI,MAAK7C,KAAL,CAAWgC,aAAf,EAA8B;AAC5B,cAAKhC,KAAL,CAAWgC,aAAX,CAAyB9B,KAAzB;AACD;AACF,K;;AAEOqB,IAAAA,S,GAAY,gBAAkF,KAA/EhB,IAA+E,QAA/EA,IAA+E,CAAzEqC,KAAyE,QAAzEA,KAAyE,CAAlEC,IAAkE,QAAlEA,IAAkE,CAA5DC,SAA4D,QAA5DA,SAA4D;AACpG,UAAMC,UAAU,GAAGL,iDAAwBC,oBAAxB,CAA6C,EAAEpC,IAAI,EAAJA,IAAF,EAAQqC,KAAK,EAAEA,KAAK,GAAG,CAAvB,EAA0BC,IAAI,EAAJA,IAA1B,EAA7C,CAAnB;AACA,aAAO,MAAKrD,QAAL,GAAgB+B,SAAhB,CAA0BwB,UAA1B,EAAsCD,SAAtC,CAAP;AACD,K,wDAlNME,iB,GAAP,6BAA2B,CACzB,IAAI,KAAKhD,KAAL,CAAWiD,yBAAX,IAAwCC,gBAA5C,EAAsD,CACpD,KAAKd,QAAL,CAAc,EACZxC,4BAA4B,EAAE,IADlB,EAAd,EAGD,CACD,IAAI,KAAKI,KAAL,CAAWrB,SAAf,EAA0B,CACxB,KAAKwE,KAAL,GACD,CACF,C,QAEMC,kB,GAAP,8BAA4B,CAC1B,IAAQxE,QAAR,GAAqB,KAAKoB,KAA1B,CAAQpB,QAAR,CACA,IAAQe,MAAR,GAAmB,KAAKD,KAAxB,CAAQC,MAAR,CACA,IAAIf,QAAQ,IAAIe,MAAhB,EAAwB,CACtB,KAAK2C,KAAL,GACD,CACF,C,CAED;AACF;AACA,K,QACSG,I,GAAP,gBAAc,CACZ,IAAI,KAAK5C,KAAT,EAAgB,CACd,KAAKA,KAAL,CAAW4C,IAAX,GACD,CACD,KAAKX,UAAL,GACD,C,CAED;AACF;AACA,K,QACSqB,K,GAAP,iBAAe,CACb,IAAI,KAAKnD,KAAL,CAAWpB,QAAf,EAAyB,CACvB,OACD,CACD,IAAI,KAAKiB,KAAT,EAAgB,CACd,KAAKA,KAAL,CAAWsD,KAAX,GACD,CACD,KAAKpB,WAAL,GACD,C,CAED;AACF;AACA;AACA,K,QACSO,K,GAAP,iBAAe,CACb,KAAKF,QAAL,CAAc,EAAEzC,MAAM,EAAE,KAAV,EAAd,EACD,C,QAEM0D,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACpC,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,oBACE,6BAAC,4BAAD,2BAAe,WAAW,EAAE,MAAI,CAACqC,WAAjC,IAAkD,MAAI,CAACtD,KAAvD,GACG,MAAI,CAACD,UADR,CADF,CAKD,CARH,CADF,CAYD,C,QAsFOO,gB,GAAR,0BAAyBJ,KAAzB,EAA6E,CAC3E,IAAIA,KAAK,KAAKS,SAAV,IAAuBT,KAAK,KAAK,IAArC,EAA2C,CACzC,OAAOS,SAAP,CACD,CACD,IAAMJ,IAAI,GAAG,IAAIgD,0BAAJ,CAAiB,EAAErD,KAAK,EAALA,KAAF,EAAjB,CAAb,CACA,IAAIK,IAAI,CAACiD,QAAL,CAAc,EAAEC,MAAM,EAAE,CAACC,iCAA0BC,OAA3B,EAAoCD,iCAA0BE,MAA9D,CAAV,EAAd,CAAJ,EAAsG,CACpG,OAAOrD,IAAP,CACD,CACD,OAAOI,SAAP,CACD,C,qBA3P6BkD,eAAMC,a,WACtBC,mB,GAAsB,Y,UAEtBC,S,GAAY,EACxBrF,SAAS,EAAEsF,mBAAUC,IADG,EAGxBtF,QAAQ,EAAEqF,mBAAUC,IAHI,EAKxB;AACJ;AACA,KACI5C,eAAe,EAAE2C,mBAAUC,IARH,EAUxBpF,KAAK,EAAEmF,mBAAUC,IAVO,EAYxB;AACJ;AACA,KACI9D,OAAO,EAAE6D,mBAAUE,MAAV,CAAiBC,UAfF,EAiBxBjD,SAAS,EAAE8C,mBAAUI,KAAV,CAAgB,CAAC,MAAD,EAAS,OAAT,CAAhB,CAjBa,EAmBxB;AACJ;AACA,KACIlE,OAAO,EAAE8D,mBAAUE,MAAV,CAAiBC,UAtBF,EAwBxB;AACJ;AACA,KACIlE,KAAK,EAAE+D,mBAAUE,MA3BO,EA6BxBtF,OAAO,EAAEoF,mBAAUC,IA7BK,EA+BxBjC,KAAK,EAAEgC,mBAAUK,SAAV,CAAoB,CAACL,mBAAUM,MAAX,EAAmBN,mBAAUE,MAA7B,CAApB,EAA0DC,UA/BzC,EAiCxB7B,MAAM,EAAE0B,mBAAUO,IAjCM,EAmCxBxC,aAAa,EAAEiC,mBAAUO,IAAV,CAAeJ,UAnCN,EAqCxB/B,OAAO,EAAE4B,mBAAUO,IArCK,EAuCxBxF,SAAS,EAAEiF,mBAAUO,IAvCG,EAyCxB9C,YAAY,EAAEuC,mBAAUO,IAzCA,EA2CxB7C,YAAY,EAAEsC,mBAAUO,IA3CA,EA6CxB5C,WAAW,EAAEqC,mBAAUO,IA7CC,EA+CxBjD,SAAS,EAAE0C,mBAAUO,IAAV,CAAeJ,UA/CF,E,UAkDZ3E,Y,GAA6B,EACzCU,OAAO,EAAEsE,uBADgC,EAEzCrE,OAAO,EAAEsE,uBAFgC,EAGzCnD,SAAS,EAAE,mBAACoD,IAAD,EAAe7B,SAAf,UAAsCA,SAAtC,EAH8B,E,UAS7BU,Q,GAAW,UAACtD,KAAD,EAA0B0E,KAA1B,EAAiF,KAAvDA,KAAuD,cAAvDA,KAAuD,GAAP,EAAO,EACxG,IAAI,CAAC1E,KAAL,EAAY,CACV,OAAO,KAAP,CACD,CAED,aAA2D0E,KAA3D,yBAAQzE,OAAR,CAAQA,OAAR,+BAAkBsE,uBAAlB,0CAAgCrE,OAAhC,CAAgCA,OAAhC,+BAA0CsE,uBAA1C,kBACA,IAAMrE,YAAY,GAAG,IAAIkD,0BAAJ,CAAiB,EACpCsB,KAAK,EAAEC,yBAAkBC,GADW,EAEpCC,SAAS,EAAEC,6BAAsBC,GAFG,EAAjB,EAIlBC,aAJkB,CAIJ,IAAI5B,0BAAJ,CAAiB,EAAErD,KAAK,EAAEC,OAAT,EAAjB,CAJI,EAKlBiF,WALkB,CAKN,IAAI7B,0BAAJ,CAAiB,EAAErD,KAAK,EAAEE,OAAT,EAAjB,CALM,EAMlBiF,UANkB,CAMPnF,KANO,CAArB,CAQA,OAAOG,YAAY,CAACmD,QAAb,CAAsB,EAC3BC,MAAM,EAAE,CACNC,iCAA0BC,OADpB,EAEND,iCAA0B4B,MAFpB,EAGN5B,iCAA0BE,MAHpB,EAINF,iCAA0B6B,MAJpB,EAKN7B,iCAA0B8B,KALpB,CADmB,EAAtB,CAAP,CASD,C","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { InternalDateTransformer } from '../../lib/date/InternalDateTransformer';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { CalendarDateShape } from '../../internal/Calendar';\nimport { DateInput } from '../DateInput';\nimport { DropdownContainer, DropdownContainerProps } from '../../internal/DropdownContainer';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\n\nimport { Picker } from './Picker';\nimport { styles } from './DatePicker.styles';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps extends Pick<DropdownContainerProps, 'menuPos'>, CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n minDate?: string;\n maxDate?: string;\n menuAlign?: 'left' | 'right';\n size?: 'small' | 'medium' | 'large';\n value?: string | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: string) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n\n /**\n * Функция для определения праздничных дней\n * @default (_day, isWeekend) => isWeekend\n * @param {string} day - строка в формате `dd.mm.yyyy`\n * @param {boolean} isWeekend - флаг выходного (суббота или воскресенье)\n *\n * @returns {boolean} `true` для выходного или `false` для рабочего дня\n */\n isHoliday?: (day: string, isWeekend: boolean) => boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate' | 'isHoliday'>>;\n\n@rootNode\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func.isRequired,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n isHoliday: (_day: string, isWeekend: boolean) => isWeekend,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { value } = this.props;\n const { minDate, maxDate } = this.getProps();\n\n const internalDate = this.parseValueToDate(value);\n const date = internalDate ? internalDate.toNativeFormat() : null;\n\n const parsedMinDate = this.parseValueToDate(minDate);\n const formattedMinDate = (parsedMinDate && parsedMinDate.toNativeFormat()) || undefined;\n\n const parsedMaxDate = this.parseValueToDate(maxDate);\n const formattedMaxDate = (parsedMaxDate && parsedMaxDate.toNativeFormat()) || undefined;\n\n if (this.state.opened) {\n picker = (\n <DropdownContainer\n menuPos={this.props.menuPos}\n data-tid={DatePickerDataTids.root}\n getParent={this.getParent}\n offsetY={parseInt(this.theme.datePickerMenuOffsetY)}\n align={this.props.menuAlign}\n >\n <Picker\n value={date}\n minDate={formattedMinDate}\n maxDate={formattedMaxDate}\n onPick={this.handlePick}\n onSelect={this.handleSelect}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.isHoliday}\n />\n </DropdownContainer>\n );\n }\n\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n >\n <DateInput\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n />\n {this.state.canUseMobileNativeDatePicker && (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n )}\n {!this.state.canUseMobileNativeDatePicker && picker}\n </label>\n );\n };\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private parseValueToDate(value?: Nullable<string>): InternalDate | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date;\n }\n return undefined;\n }\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handlePick = (dateShape: CalendarDateShape) => {\n this.handleSelect(dateShape);\n this.blur();\n };\n\n private handleSelect = (dateShape: CalendarDateShape | null) => {\n if (!dateShape) {\n return null;\n }\n\n const value = InternalDateTransformer.dateToInternalString({\n date: dateShape.date,\n month: dateShape.month + 1,\n year: dateShape.year,\n });\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private isHoliday = ({ date, month, year, isWeekend }: CalendarDateShape & { isWeekend: boolean }) => {\n const dateString = InternalDateTransformer.dateToInternalString({ date, month: month + 1, year });\n return this.getProps().isHoliday(dateString, isWeekend);\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["DatePicker.tsx"],"names":["INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","DatePickerLocaleHelper","rootNode","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","minDate","maxDate","locale","Calendar","months","menuPos","getParent","parseInt","theme","datePickerMenuOffsetY","menuAlign","styles","calendarWrapper","e","preventDefault","c","parseValueToDate","handleValueChange","isHoliday","value","enableTodayLink","renderTodayLink","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","handleBlur","handleFocus","onValueChange","handleSelectToday","handleSelect","month","year","scrollToMonth","width","minWidth","ref","setState","onFocus","close","onBlur","blur","componentDidMount","useMobileNativeDatePicker","isMobile","focus","componentDidUpdate","render","ThemeFactory","create","calendarBottomSeparatorBorder","setRootNode","undefined","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","margin","todayLinkWrapper","React","PureComponent","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","range","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { cx } from '../../lib/theming/Emotion';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { DropdownContainer, DropdownContainerProps } from '../../internal/DropdownContainer';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Calendar, CalendarDateShape, CalendarProps } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\n\nimport { styles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<DropdownContainerProps, 'menuPos'>,\n Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate'>,\n CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n /**\n * Отвечает за отображение кнопки \"Сегодня\".\n */\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n menuAlign?: 'left' | 'right';\n size?: 'small' | 'medium' | 'large';\n value?: string | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: string) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private calendar: Calendar | null = null;\n private readonly locale!: DatePickerLocale;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate } = this.getProps();\n\n if (this.state.opened) {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: { Calendar: { months: this.locale.months } },\n }}\n >\n <DropdownContainer\n menuPos={this.props.menuPos}\n data-tid={DatePickerDataTids.root}\n getParent={this.getParent}\n offsetY={parseInt(this.theme.datePickerMenuOffsetY)}\n align={this.props.menuAlign}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n ref={(c) => (this.calendar = c)}\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </DropdownContainer>\n </LocaleContext.Provider>\n );\n }\n\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker && (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n )}\n {!this.state.canUseMobileNativeDatePicker && picker}\n </label>\n );\n };\n\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n if (isTheme2022(this.theme)) {\n return (\n <div style={{ margin: 8 }}>\n <Button\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={this.handleSelectToday(today)}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n return (\n <button\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n className={cx({\n [styles.todayLinkWrapper(this.theme)]: true,\n })}\n onClick={this.handleSelectToday(today)}\n tabIndex={-1}\n >\n {`${this.locale.today} ${today}`}\n </button>\n );\n }\n\n private handleSelectToday = (today: string) => () => {\n this.handleSelect(today);\n\n if (this.calendar) {\n const { month, year } = this.state.today;\n this.calendar.scrollToMonth(month, year);\n }\n };\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n}\n"]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
1
|
+
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
2
|
+
var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3;
|
|
2
3
|
|
|
3
4
|
var styles = (0, _Emotion.memoizeStyle)({
|
|
4
5
|
root: function root() {
|
|
@@ -8,4 +9,38 @@ var styles = (0, _Emotion.memoizeStyle)({
|
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
|
|
12
|
+
},
|
|
13
|
+
calendarWrapper: function calendarWrapper(t) {
|
|
14
|
+
return (0, _Emotion.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["\n background: ", ";\n box-shadow: ", ";\n display: inline-block;\n font-size: 0;\n z-index: 1000;\n touch-action: none;\n border-radius: ", ";\n "])),
|
|
15
|
+
t.pickerBg,
|
|
16
|
+
t.pickerShadow,
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
t.pickerBorderRadius);
|
|
22
|
+
|
|
23
|
+
},
|
|
24
|
+
todayLinkWrapper: function todayLinkWrapper(t) {
|
|
25
|
+
return (0, _Emotion.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["\n background-color: ", ";\n border: none;\n border-top: ", ";\n color: ", ";\n display: block;\n font-size: ", ";\n padding-bottom: ", ";\n padding-top: ", ";\n line-height: ", ";\n width: 100%;\n\n &:hover {\n background-color: ", ";\n cursor: pointer;\n }\n\n &:active {\n color: ", ";\n }\n "])),
|
|
26
|
+
t.pickerTodayWrapperBgColor,
|
|
27
|
+
|
|
28
|
+
t.pickerTodayWrapperBorderTop,
|
|
29
|
+
t.linkColor,
|
|
30
|
+
|
|
31
|
+
t.pickerTodayWrapperFontSize,
|
|
32
|
+
t.pickerTodayWrapperPaddingBottom,
|
|
33
|
+
t.pickerTodayWrapperPaddingTop,
|
|
34
|
+
t.pickerTodayWrapperLineHeight,
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
t.pickerTodayWrapperHoverBgColor,
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
t.linkActiveColor);
|
|
44
|
+
|
|
45
|
+
|
|
11
46
|
} });exports.styles = styles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePicker.styles.ts"],"names":["styles","root","css"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["DatePicker.styles.ts"],"names":["styles","root","css","calendarWrapper","t","pickerBg","pickerShadow","pickerBorderRadius","todayLinkWrapper","pickerTodayWrapperBgColor","pickerTodayWrapperBorderTop","linkColor","pickerTodayWrapperFontSize","pickerTodayWrapperPaddingBottom","pickerTodayWrapperPaddingTop","pickerTodayWrapperLineHeight","pickerTodayWrapperHoverBgColor","linkActiveColor"],"mappings":";AACA,oD;;AAEO,IAAMA,MAAM,GAAG,2BAAa;AACjCC,EAAAA,IADiC,kBAC1B;AACL,eAAOC,YAAP;;;;;;AAMD,GARgC;AASjCC,EAAAA,eATiC,2BASjBC,CATiB,EASP;AACxB,eAAOF,YAAP;AACgBE,IAAAA,CAAC,CAACC,QADlB;AAEgBD,IAAAA,CAAC,CAACE,YAFlB;;;;;AAOmBF,IAAAA,CAAC,CAACG,kBAPrB;;AASD,GAnBgC;AAoBjCC,EAAAA,gBApBiC,4BAoBhBJ,CApBgB,EAoBN;AACzB,eAAOF,YAAP;AACsBE,IAAAA,CAAC,CAACK,yBADxB;;AAGgBL,IAAAA,CAAC,CAACM,2BAHlB;AAIWN,IAAAA,CAAC,CAACO,SAJb;;AAMeP,IAAAA,CAAC,CAACQ,0BANjB;AAOoBR,IAAAA,CAAC,CAACS,+BAPtB;AAQiBT,IAAAA,CAAC,CAACU,4BARnB;AASiBV,IAAAA,CAAC,CAACW,4BATnB;;;;AAawBX,IAAAA,CAAC,CAACY,8BAb1B;;;;;AAkBaZ,IAAAA,CAAC,CAACa,eAlBf;;;AAqBD,GA1CgC,EAAb,CAAf,C","sourcesContent":["import { Theme } from '../../lib/theming/Theme';\nimport { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n display: inline-block;\n position: relative;\n touch-action: none;\n line-height: normal;\n `;\n },\n calendarWrapper(t: Theme) {\n return css`\n background: ${t.pickerBg};\n box-shadow: ${t.pickerShadow};\n display: inline-block;\n font-size: 0;\n z-index: 1000;\n touch-action: none;\n border-radius: ${t.pickerBorderRadius};\n `;\n },\n todayLinkWrapper(t: Theme) {\n return css`\n background-color: ${t.pickerTodayWrapperBgColor};\n border: none;\n border-top: ${t.pickerTodayWrapperBorderTop};\n color: ${t.linkColor};\n display: block;\n font-size: ${t.pickerTodayWrapperFontSize};\n padding-bottom: ${t.pickerTodayWrapperPaddingBottom};\n padding-top: ${t.pickerTodayWrapperPaddingTop};\n line-height: ${t.pickerTodayWrapperLineHeight};\n width: 100%;\n\n &:hover {\n background-color: ${t.pickerTodayWrapperHoverBgColor};\n cursor: pointer;\n }\n\n &:active {\n color: ${t.linkActiveColor};\n }\n `;\n },\n});\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { CalendarDateShape } from '../../
|
|
1
|
+
import { CalendarDateShape } from '../../components/Calendar/CalendarDateShape';
|
|
2
2
|
export declare function formatDate({ date, month, year }: CalendarDateShape): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";;AAEO,SAASA,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,EAAOC,KAAK,GAAG,CAAf,EAAkBC,IAAlB,EAAwBC,GAAxB,CAA4B,UAACC,CAAD,UAAOA,CAAC,CAACC,QAAF,EAAP,EAA5B,CAAlB,CAAOC,CAAP,WAAUC,CAAV,WAAaC,CAAb;AACA,SAAUF,CAAC,CAACG,QAAF,CAAW,CAAX,EAAc,GAAd,CAAV,SAAgCF,CAAC,CAACE,QAAF,CAAW,CAAX,EAAc,GAAd,CAAhC,SAAsDD,CAAC,CAACC,QAAF,CAAW,CAAX,EAAc,GAAd,CAAtD;AACD","sourcesContent":["import { CalendarDateShape } from '../../
|
|
1
|
+
{"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";;AAEO,SAASA,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,EAAOC,KAAK,GAAG,CAAf,EAAkBC,IAAlB,EAAwBC,GAAxB,CAA4B,UAACC,CAAD,UAAOA,CAAC,CAACC,QAAF,EAAP,EAA5B,CAAlB,CAAOC,CAAP,WAAUC,CAAV,WAAaC,CAAb;AACA,SAAUF,CAAC,CAACG,QAAF,CAAW,CAAX,EAAc,GAAd,CAAV,SAAgCF,CAAC,CAACE,QAAF,CAAW,CAAX,EAAc,GAAd,CAAhC,SAAsDD,CAAC,CAACC,QAAF,CAAW,CAAX,EAAc,GAAd,CAAtD;AACD","sourcesContent":["import { CalendarDateShape } from '../../components/Calendar/CalendarDateShape';\n\nexport function formatDate({ date, month, year }: CalendarDateShape): string {\n const [d, m, y] = [date, month + 1, year].map((x) => x.toString());\n return `${d.padStart(2, '0')}.${m.padStart(2, '0')}.${y.padStart(4, '0')}`;\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { CalendarDateShape } from '../../internal/Calendar';
|
|
3
2
|
import { Nullable } from '../../typings/utility-types';
|
|
4
|
-
|
|
3
|
+
import { CalendarDateShape } from '../Calendar/CalendarDateShape';
|
|
4
|
+
interface PickerProps {
|
|
5
5
|
maxDate?: CalendarDateShape;
|
|
6
6
|
minDate?: CalendarDateShape;
|
|
7
7
|
value: Nullable<CalendarDateShape>;
|
|
@@ -12,22 +12,21 @@ interface Props {
|
|
|
12
12
|
isWeekend: boolean;
|
|
13
13
|
}) => boolean;
|
|
14
14
|
}
|
|
15
|
-
interface
|
|
16
|
-
date: CalendarDateShape;
|
|
15
|
+
interface PickerState {
|
|
17
16
|
today: CalendarDateShape;
|
|
18
17
|
}
|
|
19
|
-
export declare class Picker extends React.Component<
|
|
18
|
+
export declare class Picker extends React.Component<PickerProps, PickerState> {
|
|
20
19
|
static __KONTUR_REACT_UI__: string;
|
|
21
20
|
private theme;
|
|
22
21
|
private calendar;
|
|
23
22
|
private readonly locale;
|
|
24
|
-
constructor(props:
|
|
25
|
-
componentDidUpdate(prevProps: Props): void;
|
|
23
|
+
constructor(props: PickerProps);
|
|
26
24
|
render(): JSX.Element;
|
|
25
|
+
private isHoliday;
|
|
26
|
+
private onValueChange;
|
|
27
27
|
private renderMain;
|
|
28
|
-
private
|
|
28
|
+
private getDateFromShape;
|
|
29
29
|
private renderTodayLink;
|
|
30
30
|
private handleSelectToday;
|
|
31
|
-
private getInitialDate;
|
|
32
31
|
}
|
|
33
32
|
export {};
|