@skbkontur/react-ui 0.0.0-95a1dbe516 → 0.0.0-9ab4f802f3
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 +120 -0
- package/README.md +41 -13
- package/cjs/components/Autocomplete/Autocomplete.js +12 -6
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.md +76 -3
- package/cjs/components/Autocomplete/Autocomplete.styles.d.ts +1 -0
- package/cjs/components/Autocomplete/Autocomplete.styles.js +7 -1
- package/cjs/components/Autocomplete/Autocomplete.styles.js.map +1 -1
- package/cjs/components/Button/Button.js +2 -2
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.md +38 -11
- package/cjs/components/Calendar/Calendar.d.ts +28 -5
- package/cjs/components/Calendar/Calendar.js +80 -36
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Calendar/Calendar.md +82 -1
- package/cjs/components/Calendar/Calendar.styles.js +1 -1
- package/cjs/components/Calendar/Calendar.styles.js.map +1 -1
- package/cjs/components/Calendar/CalendarContext.d.ts +12 -0
- package/cjs/components/Calendar/CalendarContext.js +16 -0
- package/cjs/components/Calendar/CalendarContext.js.map +1 -0
- package/cjs/components/Calendar/CalendarDateShape.d.ts +4 -2
- package/cjs/components/Calendar/CalendarDateShape.js +13 -3
- package/cjs/components/Calendar/CalendarDateShape.js.map +1 -1
- package/cjs/components/Calendar/CalendarDay.d.ts +12 -0
- package/cjs/components/Calendar/CalendarDay.js +79 -0
- package/cjs/components/Calendar/CalendarDay.js.map +1 -0
- package/cjs/components/Calendar/CalendarDay.md +70 -0
- package/cjs/components/Calendar/CalendarUtils.d.ts +2 -1
- package/cjs/components/Calendar/CalendarUtils.js +4 -6
- package/cjs/components/Calendar/CalendarUtils.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.d.ts +4 -12
- package/cjs/components/Calendar/DayCellView.js +20 -42
- package/cjs/components/Calendar/DayCellView.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.styles.d.ts +2 -5
- package/cjs/components/Calendar/DayCellView.styles.js +37 -43
- package/cjs/components/Calendar/DayCellView.styles.js.map +1 -1
- package/cjs/components/Calendar/Month.d.ts +0 -10
- package/cjs/components/Calendar/Month.js +36 -88
- package/cjs/components/Calendar/Month.js.map +1 -1
- package/cjs/components/Calendar/MonthView.d.ts +3 -2
- package/cjs/components/Calendar/MonthView.js +47 -37
- package/cjs/components/Calendar/MonthView.js.map +1 -1
- package/cjs/components/Calendar/MonthView.styles.d.ts +3 -0
- package/cjs/components/Calendar/MonthView.styles.js +45 -7
- package/cjs/components/Calendar/MonthView.styles.js.map +1 -1
- package/cjs/components/Calendar/MonthViewModel.js +24 -6
- package/cjs/components/Calendar/MonthViewModel.js.map +1 -1
- package/cjs/components/Calendar/config.js +12 -6
- package/cjs/components/Calendar/config.js.map +1 -1
- package/cjs/components/Calendar/index.d.ts +1 -0
- package/cjs/components/Calendar/index.js +2 -1
- package/cjs/components/Calendar/index.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.js +1 -1
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/DateInput/DateFragmentsView.js +1 -1
- package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
- package/cjs/components/DateInput/DateInput.js +1 -1
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +4 -1
- package/cjs/components/DatePicker/DatePicker.js +72 -45
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.md +29 -1
- package/cjs/components/DatePicker/DatePickerHelpers.js +2 -1
- package/cjs/components/DatePicker/DatePickerHelpers.js.map +1 -1
- package/cjs/components/DatePicker/MobilePicker.d.ts +10 -0
- package/cjs/components/DatePicker/MobilePicker.js +118 -0
- package/cjs/components/DatePicker/MobilePicker.js.map +1 -0
- package/cjs/components/DatePicker/MobilePicker.styles.d.ts +3 -0
- package/cjs/components/DatePicker/MobilePicker.styles.js +8 -0
- package/cjs/components/DatePicker/MobilePicker.styles.js.map +1 -0
- package/cjs/components/DatePicker/Picker.js +1 -1
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/DatePicker/getMobilePickerTheme.d.ts +2 -0
- package/cjs/components/DatePicker/getMobilePickerTheme.js +19 -0
- package/cjs/components/DatePicker/getMobilePickerTheme.js.map +1 -0
- package/cjs/components/Dropdown/Dropdown.js +1 -1
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.md +39 -0
- package/cjs/components/FileUploader/FileUploader.d.ts +2 -0
- package/cjs/components/FileUploader/FileUploader.js +32 -9
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.md +29 -0
- package/cjs/components/FxInput/FxInput.js +1 -1
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/Group/Group.js +1 -1
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +4 -3
- package/cjs/components/Hint/Hint.js +9 -8
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Input/Input.js +1 -1
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.d.ts +1 -1
- package/cjs/components/Input/Input.styles.js +3 -2
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.styles.d.ts +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.styles.js +3 -2
- package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +1 -1
- package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
- package/cjs/components/Kebab/Kebab.js +6 -1
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.js +3 -2
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.js +1 -1
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.js +2 -2
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.js +1 -1
- package/cjs/components/MiniModal/MiniModal.js.map +1 -1
- package/cjs/components/Modal/Modal.js +1 -1
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/ModalBody.js +1 -1
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Paging/Paging.js +8 -3
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.js +1 -1
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.js +1 -1
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.js +10 -1
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollBar.js +1 -1
- package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js +6 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Select.js +6 -3
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.js +1 -1
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.js +1 -1
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.js +1 -1
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.js +1 -1
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.js +1 -1
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/Spinner/Spinner.js +1 -1
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Switcher/Switcher.js +1 -1
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Tabs/Indicator.js +1 -1
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.js +2 -2
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.js +1 -1
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.js +1 -1
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Toast/Toast.js +1 -1
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastView.js +1 -1
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toggle/Toggle.js +1 -1
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Token/Token.js +2 -1
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.js +1 -1
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.js +2 -2
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +10 -5
- package/cjs/components/Tooltip/Tooltip.js +59 -20
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.js +4 -4
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/hooks/useDrop.d.ts +1 -1
- package/cjs/hooks/useDrop.js.map +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +2 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.js +2 -2
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/CommonWrapper/{extractCommonProps.d.ts → utils/extractCommonProps.d.ts} +2 -2
- package/cjs/internal/CommonWrapper/utils/extractCommonProps.js.map +1 -0
- package/cjs/internal/CommonWrapper/{getCommonVisualStateDataAttributes.js → utils/getCommonVisualStateDataAttributes.js} +3 -4
- package/cjs/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes.js.map +1 -0
- package/cjs/internal/CommonWrapper/{getVisualStateDataAttributes.d.ts → utils/getVisualStateDataAttributes.d.ts} +1 -1
- package/cjs/internal/CommonWrapper/{getVisualStateDataAttributes.js → utils/getVisualStateDataAttributes.js} +3 -3
- package/cjs/internal/CommonWrapper/utils/getVisualStateDataAttributes.js.map +1 -0
- package/cjs/internal/CommonWrapper/utils/tryGetBoolean.d.ts +1 -0
- package/cjs/internal/CommonWrapper/utils/tryGetBoolean.js +1 -0
- package/cjs/internal/CommonWrapper/utils/tryGetBoolean.js.map +1 -0
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js +2 -3
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js +3 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +2 -0
- package/cjs/internal/DateSelect/DateSelect.js +51 -4
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.styles.d.ts +1 -0
- package/cjs/internal/DateSelect/DateSelect.styles.js +15 -1
- package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
- package/cjs/internal/DateSelect/locale/locales/en.js +2 -1
- package/cjs/internal/DateSelect/locale/locales/en.js.map +1 -1
- package/cjs/internal/DateSelect/locale/locales/ru.js +2 -1
- package/cjs/internal/DateSelect/locale/locales/ru.js.map +1 -1
- package/cjs/internal/DateSelect/locale/types.d.ts +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +5 -2
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +16 -3
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +4 -2
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +3 -2
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +2 -2
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +1 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.js +2 -2
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/Menu/Menu.js +2 -2
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +4 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +7 -1
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +7 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +32 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +4 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +15 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +1 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/index.d.ts +1 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/index.js +1 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/index.js.map +1 -0
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/cjs/internal/NativeDateInput/utils.js +3 -2
- package/cjs/internal/NativeDateInput/utils.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +15 -4
- package/cjs/internal/Popup/Popup.js +67 -4
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.js +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderContainer.d.ts +3 -0
- package/cjs/internal/RenderContainer/RenderContainer.js +34 -24
- package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +8 -4
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.js +5 -1
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +1 -1
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +9 -6
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/constants.js +2 -1
- package/cjs/internal/ThemePlayground/constants.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +7 -3
- package/cjs/internal/ZIndex/ZIndex.js +41 -3
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/themes/DarkTheme.d.ts +2 -0
- package/cjs/internal/themes/DarkTheme.js +6 -1
- package/cjs/internal/themes/DarkTheme.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +18 -0
- package/cjs/internal/themes/DefaultTheme.js +32 -4
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/lib/date/InternalDate.d.ts +2 -0
- package/cjs/lib/date/InternalDate.js +8 -1
- package/cjs/lib/date/InternalDate.js.map +1 -1
- package/cjs/lib/date/InternalDateTransformer.d.ts +3 -0
- package/cjs/lib/date/InternalDateTransformer.js +23 -0
- package/cjs/lib/date/InternalDateTransformer.js.map +1 -1
- package/cjs/lib/date/InternalDateValidator.js +2 -1
- package/cjs/lib/date/InternalDateValidator.js.map +1 -1
- package/cjs/lib/date/comparison.d.ts +6 -0
- package/cjs/lib/date/comparison.js +44 -0
- package/cjs/lib/date/comparison.js.map +1 -0
- package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +24 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +1 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +3 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/cjs/lib/listenFocusOutside.js +4 -2
- package/cjs/lib/listenFocusOutside.js.map +1 -1
- package/cjs/lib/locale/constants.d.ts +3 -0
- package/cjs/lib/locale/constants.js +6 -2
- package/cjs/lib/locale/constants.js.map +1 -1
- package/cjs/lib/taskWithDelayAndMinimalDuration.js +1 -0
- package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/cjs/lib/theming/Emotion.d.ts +7 -1
- package/cjs/lib/theming/Emotion.js +6 -3
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.d.ts +0 -2
- package/cjs/lib/theming/ThemeContext.js +1 -3
- package/cjs/lib/theming/ThemeContext.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.md +3 -1
- package/cjs/lib/theming/themes/Theme2022DarkUpdate2024.d.ts +30 -0
- package/cjs/lib/theming/themes/Theme2022DarkUpdate2024.js +50 -0
- package/cjs/lib/theming/themes/Theme2022DarkUpdate2024.js.map +1 -0
- package/cjs/lib/theming/themes/Theme2022Update2024.d.ts +46 -0
- package/cjs/lib/theming/themes/Theme2022Update2024.js +75 -0
- package/cjs/lib/theming/themes/Theme2022Update2024.js.map +1 -0
- package/cjs/lib/widgets/StylesContainer.d.ts +13 -0
- package/cjs/lib/widgets/StylesContainer.js +70 -0
- package/cjs/lib/widgets/StylesContainer.js.map +1 -0
- package/cjs/lib/widgets/index.d.ts +1 -0
- package/cjs/lib/widgets/index.js +1 -0
- package/cjs/lib/widgets/index.js.map +1 -0
- package/components/Autocomplete/Autocomplete/Autocomplete.js +11 -5
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.md +76 -3
- package/components/Autocomplete/Autocomplete.styles/Autocomplete.styles.js +4 -1
- package/components/Autocomplete/Autocomplete.styles/Autocomplete.styles.js.map +1 -1
- package/components/Autocomplete/Autocomplete.styles.d.ts +1 -0
- package/components/Button/Button/Button.js +3 -3
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.md +38 -11
- package/components/Calendar/Calendar/Calendar.js +83 -66
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +28 -5
- package/components/Calendar/Calendar.md +82 -1
- package/components/Calendar/Calendar.styles/Calendar.styles.js +1 -1
- package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
- package/components/Calendar/CalendarContext/CalendarContext.js +2 -0
- package/components/Calendar/CalendarContext/CalendarContext.js.map +1 -0
- package/components/Calendar/CalendarContext/package.json +6 -0
- package/components/Calendar/CalendarContext.d.ts +12 -0
- package/components/Calendar/CalendarDateShape/CalendarDateShape.js +23 -1
- package/components/Calendar/CalendarDateShape/CalendarDateShape.js.map +1 -1
- package/components/Calendar/CalendarDateShape.d.ts +4 -2
- package/components/Calendar/CalendarDay/CalendarDay.js +64 -0
- package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -0
- package/components/Calendar/CalendarDay/package.json +6 -0
- package/components/Calendar/CalendarDay.d.ts +12 -0
- package/components/Calendar/CalendarDay.md +70 -0
- package/components/Calendar/CalendarUtils/CalendarUtils.js +5 -4
- package/components/Calendar/CalendarUtils/CalendarUtils.js.map +1 -1
- package/components/Calendar/CalendarUtils.d.ts +2 -1
- package/components/Calendar/DayCellView/DayCellView.js +33 -46
- package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/components/Calendar/DayCellView.d.ts +4 -12
- package/components/Calendar/DayCellView.styles/DayCellView.styles.js +10 -14
- package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
- package/components/Calendar/DayCellView.styles.d.ts +2 -5
- package/components/Calendar/Month/Month.js +50 -84
- package/components/Calendar/Month/Month.js.map +1 -1
- package/components/Calendar/Month.d.ts +0 -10
- package/components/Calendar/MonthView/MonthView.js +50 -45
- package/components/Calendar/MonthView/MonthView.js.map +1 -1
- package/components/Calendar/MonthView.d.ts +3 -2
- package/components/Calendar/MonthView.styles/MonthView.styles.js +20 -6
- package/components/Calendar/MonthView.styles/MonthView.styles.js.map +1 -1
- package/components/Calendar/MonthView.styles.d.ts +3 -0
- package/components/Calendar/MonthViewModel/MonthViewModel.js +9 -6
- package/components/Calendar/MonthViewModel/MonthViewModel.js.map +1 -1
- package/components/Calendar/config/config.js +6 -4
- package/components/Calendar/config/config.js.map +1 -1
- package/components/Calendar/index/index.js +2 -1
- package/components/Calendar/index/index.js.map +1 -1
- package/components/Calendar/index.d.ts +1 -0
- package/components/Checkbox/Checkbox/Checkbox.js +2 -2
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js +2 -2
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js +2 -2
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +62 -41
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +4 -1
- package/components/DatePicker/DatePicker.md +29 -1
- package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js +2 -1
- package/components/DatePicker/DatePickerHelpers/DatePickerHelpers.js.map +1 -1
- package/components/DatePicker/MobilePicker/MobilePicker.js +91 -0
- package/components/DatePicker/MobilePicker/MobilePicker.js.map +1 -0
- package/components/DatePicker/MobilePicker/package.json +6 -0
- package/components/DatePicker/MobilePicker.d.ts +10 -0
- package/components/DatePicker/MobilePicker.styles/MobilePicker.styles.js +10 -0
- package/components/DatePicker/MobilePicker.styles/MobilePicker.styles.js.map +1 -0
- package/components/DatePicker/MobilePicker.styles/package.json +6 -0
- package/components/DatePicker/MobilePicker.styles.d.ts +3 -0
- package/components/DatePicker/Picker/Picker.js +3 -3
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/DatePicker/getMobilePickerTheme/getMobilePickerTheme.js +14 -0
- package/components/DatePicker/getMobilePickerTheme/getMobilePickerTheme.js.map +1 -0
- package/components/DatePicker/getMobilePickerTheme/package.json +6 -0
- package/components/DatePicker/getMobilePickerTheme.d.ts +2 -0
- package/components/Dropdown/Dropdown/Dropdown.js +3 -3
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +3 -3
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.md +39 -0
- package/components/FileUploader/FileUploader/FileUploader.js +30 -8
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.d.ts +2 -0
- package/components/FileUploader/FileUploader.md +29 -0
- package/components/FxInput/FxInput/FxInput.js +2 -2
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/Group/Group/Group.js +2 -2
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Hint/Hint/Hint.js +53 -48
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +4 -3
- package/components/Input/Input/Input.js +3 -3
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.styles/Input.styles.js +2 -2
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +1 -1
- package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -2
- package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.styles.d.ts +1 -1
- package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +1 -1
- package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
- package/components/Kebab/Kebab/Kebab.js +7 -4
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Link/Link/Link.js +6 -3
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Loader/Loader/Loader.js +2 -2
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/MenuItem/MenuItem/MenuItem.js +3 -3
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MiniModal/MiniModal/MiniModal.js +2 -2
- package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
- package/components/Modal/Modal/Modal.js +3 -3
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/ModalBody/ModalBody.js +3 -3
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Paging/Paging/Paging.js +10 -6
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +2 -2
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/Radio/Radio/Radio.js +2 -2
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js +8 -4
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/ScrollContainer/ScrollBar/ScrollBar.js +2 -2
- package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +5 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +1 -0
- package/components/Select/Select/Select.js +6 -5
- package/components/Select/Select/Select.js.map +1 -1
- package/components/SidePage/SidePage/SidePage.js +2 -2
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePageBody/SidePageBody.js +2 -2
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageContainer/SidePageContainer.js +2 -2
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageFooter/SidePageFooter.js +2 -2
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js +2 -2
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/Spinner/Spinner/Spinner.js +2 -2
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Switcher/Switcher/Switcher.js +3 -3
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Tabs/Indicator/Indicator.js +2 -2
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Tab/Tab.js +3 -3
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tabs/Tabs.js +2 -2
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Textarea/Textarea/Textarea.js +2 -2
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Toast/Toast/Toast.js +3 -3
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/ToastView/ToastView.js +2 -2
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toggle/Toggle/Toggle.js +2 -2
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Token/Token/Token.js +6 -3
- package/components/Token/Token/Token.js.map +1 -1
- package/components/TokenInput/TokenInput/TokenInput.js +2 -2
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +3 -3
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/Tooltip/Tooltip/Tooltip.js +67 -46
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +10 -5
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +3 -3
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/hooks/useDrop/useDrop.js.map +1 -1
- package/hooks/useDrop.d.ts +1 -1
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +2 -2
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/utils/extractCommonProps/extractCommonProps.js.map +1 -0
- package/internal/CommonWrapper/{extractCommonProps → utils/extractCommonProps}/package.json +1 -1
- package/internal/CommonWrapper/{extractCommonProps.d.ts → utils/extractCommonProps.d.ts} +2 -2
- package/internal/CommonWrapper/{getCommonVisualStateDataAttributes → utils/getCommonVisualStateDataAttributes}/getCommonVisualStateDataAttributes.js +1 -5
- package/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +1 -0
- package/internal/CommonWrapper/{getCommonVisualStateDataAttributes → utils/getCommonVisualStateDataAttributes}/package.json +1 -1
- package/internal/CommonWrapper/{getVisualStateDataAttributes → utils/getVisualStateDataAttributes}/getVisualStateDataAttributes.js +3 -3
- package/internal/CommonWrapper/utils/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +1 -0
- package/internal/CommonWrapper/{getVisualStateDataAttributes → utils/getVisualStateDataAttributes}/package.json +1 -1
- package/internal/CommonWrapper/{getVisualStateDataAttributes.d.ts → utils/getVisualStateDataAttributes.d.ts} +1 -1
- package/internal/CommonWrapper/utils/tryGetBoolean/package.json +6 -0
- package/internal/CommonWrapper/utils/tryGetBoolean/tryGetBoolean.js +3 -0
- package/internal/CommonWrapper/utils/tryGetBoolean/tryGetBoolean.js.map +1 -0
- package/internal/CommonWrapper/utils/tryGetBoolean.d.ts +1 -0
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +3 -3
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +5 -3
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +59 -6
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +2 -0
- package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +4 -1
- package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
- package/internal/DateSelect/DateSelect.styles.d.ts +1 -0
- package/internal/DateSelect/locale/locales/en/en.js +2 -1
- package/internal/DateSelect/locale/locales/en/en.js.map +1 -1
- package/internal/DateSelect/locale/locales/ru/ru.js +2 -1
- package/internal/DateSelect/locale/locales/ru/ru.js.map +1 -1
- package/internal/DateSelect/locale/types.d.ts +1 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +12 -3
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +5 -2
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +4 -2
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +1 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +4 -2
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +1 -0
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +3 -3
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +2 -2
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
- package/internal/InternalMenu/InternalMenu/InternalMenu.js +3 -3
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/Menu/Menu/Menu.js +3 -3
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/MobilePopup/MobilePopup/MobilePopup.js +4 -3
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +4 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/MobilePopupFooter.js +37 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/MobilePopupFooter.js.map +1 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/package.json +6 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +7 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/MobilePopupFooter.styles.js +11 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/MobilePopupFooter.styles.js.map +1 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/package.json +6 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +4 -0
- package/internal/MobilePopup/MobilePopupFooter/index/index.js +1 -0
- package/internal/MobilePopup/MobilePopupFooter/index/index.js.map +1 -0
- package/internal/MobilePopup/MobilePopupFooter/index/package.json +6 -0
- package/internal/MobilePopup/MobilePopupFooter/index.d.ts +1 -0
- package/internal/MobilePopup/MobilePopupFooter/package.json +6 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +2 -2
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/NativeDateInput/utils/utils.js +2 -1
- package/internal/NativeDateInput/utils/utils.js.map +1 -1
- package/internal/Popup/Popup/Popup.js +53 -10
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +15 -4
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +3 -3
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/RenderContainer/RenderContainer/RenderContainer.js +19 -12
- package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/RenderContainer/RenderContainer.d.ts +3 -0
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +11 -5
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +2 -2
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/ThemePlayground/Playground/Playground.js +2 -2
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +10 -7
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/constants/constants.js +3 -0
- package/internal/ThemePlayground/constants/constants.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +2 -2
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +55 -7
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +7 -3
- package/internal/themes/DarkTheme/DarkTheme.js +2 -0
- package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/internal/themes/DarkTheme.d.ts +2 -0
- package/internal/themes/DefaultTheme/DefaultTheme.js +32 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +18 -0
- package/lib/date/InternalDate/InternalDate.js +7 -1
- package/lib/date/InternalDate/InternalDate.js.map +1 -1
- package/lib/date/InternalDate.d.ts +2 -0
- package/lib/date/InternalDateTransformer/InternalDateTransformer.js +30 -0
- package/lib/date/InternalDateTransformer/InternalDateTransformer.js.map +1 -1
- package/lib/date/InternalDateTransformer.d.ts +3 -0
- package/lib/date/InternalDateValidator/InternalDateValidator.js +6 -1
- package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
- package/lib/date/comparison/comparison.js +45 -0
- package/lib/date/comparison/comparison.js.map +1 -0
- package/lib/date/comparison/package.json +6 -0
- package/lib/date/comparison.d.ts +6 -0
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +24 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +2 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +1 -0
- package/lib/listenFocusOutside/listenFocusOutside.js +3 -2
- package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
- package/lib/locale/constants/constants.js +4 -1
- package/lib/locale/constants/constants.js.map +1 -1
- package/lib/locale/constants.d.ts +3 -0
- package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +2 -0
- package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/lib/theming/Emotion/Emotion.js +12 -3
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/theming/Emotion.d.ts +7 -1
- package/lib/theming/ThemeContext/ThemeContext.js +0 -2
- package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
- package/lib/theming/ThemeContext.d.ts +0 -2
- package/lib/theming/ThemeContext.md +3 -1
- package/lib/theming/themes/Theme2022DarkUpdate2024/Theme2022DarkUpdate2024.js +33 -0
- package/lib/theming/themes/Theme2022DarkUpdate2024/Theme2022DarkUpdate2024.js.map +1 -0
- package/lib/theming/themes/Theme2022DarkUpdate2024/package.json +6 -0
- package/lib/theming/themes/Theme2022DarkUpdate2024.d.ts +30 -0
- package/lib/theming/themes/Theme2022Update2024/Theme2022Update2024.js +50 -0
- package/lib/theming/themes/Theme2022Update2024/Theme2022Update2024.js.map +1 -0
- package/lib/theming/themes/Theme2022Update2024/package.json +6 -0
- package/lib/theming/themes/Theme2022Update2024.d.ts +46 -0
- package/lib/widgets/StylesContainer/StylesContainer.js +65 -0
- package/lib/widgets/StylesContainer/StylesContainer.js.map +1 -0
- package/lib/widgets/StylesContainer/package.json +6 -0
- package/lib/widgets/StylesContainer.d.ts +13 -0
- package/lib/widgets/index/index.js +1 -0
- package/lib/widgets/index/index.js.map +1 -0
- package/lib/widgets/index/package.json +6 -0
- package/lib/widgets/index.d.ts +1 -0
- package/lib/widgets/package.json +6 -0
- package/package.json +3 -2
- package/cjs/internal/CommonWrapper/extractCommonProps.js.map +0 -1
- package/cjs/internal/CommonWrapper/getCommonVisualStateDataAttributes.js.map +0 -1
- package/cjs/internal/CommonWrapper/getVisualStateDataAttributes.js.map +0 -1
- package/cjs/lib/theming/StyleContainer.d.ts +0 -4
- package/cjs/lib/theming/StyleContainer.js +0 -21
- package/cjs/lib/theming/StyleContainer.js.map +0 -1
- package/internal/CommonWrapper/extractCommonProps/extractCommonProps.js.map +0 -1
- package/internal/CommonWrapper/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +0 -1
- package/internal/CommonWrapper/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +0 -1
- package/lib/theming/StyleContainer/StyleContainer.js +0 -21
- package/lib/theming/StyleContainer/StyleContainer.js.map +0 -1
- package/lib/theming/StyleContainer/package.json +0 -6
- package/lib/theming/StyleContainer.d.ts +0 -4
- /package/cjs/internal/CommonWrapper/{extractCommonProps.js → utils/extractCommonProps.js} +0 -0
- /package/cjs/internal/CommonWrapper/{getCommonVisualStateDataAttributes.d.ts → utils/getCommonVisualStateDataAttributes.d.ts} +0 -0
- /package/internal/CommonWrapper/{extractCommonProps → utils/extractCommonProps}/extractCommonProps.js +0 -0
- /package/internal/CommonWrapper/{getCommonVisualStateDataAttributes.d.ts → utils/getCommonVisualStateDataAttributes.d.ts} +0 -0
|
@@ -27,10 +27,12 @@ import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
|
27
27
|
import { Calendar } from "../../Calendar";
|
|
28
28
|
import { Button } from "../../Button";
|
|
29
29
|
import { getTodayDate } from "../../Calendar/CalendarUtils";
|
|
30
|
-
import {
|
|
30
|
+
import { responsiveLayout } from "../../ResponsiveLayout/decorator";
|
|
31
|
+
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
31
32
|
import { EmotionConsumer } from "../../../lib/theming/Emotion";
|
|
32
33
|
import { getStyles } from "../DatePicker.styles";
|
|
33
34
|
import { DatePickerLocaleHelper } from "../locale";
|
|
35
|
+
import { MobilePicker } from "../MobilePicker";
|
|
34
36
|
var INPUT_PASS_PROPS = {
|
|
35
37
|
autoFocus: true,
|
|
36
38
|
disabled: true,
|
|
@@ -47,7 +49,7 @@ export var DatePickerDataTids = {
|
|
|
47
49
|
pickerRoot: 'Picker__root',
|
|
48
50
|
pickerTodayWrapper: 'Picker__todayWrapper'
|
|
49
51
|
};
|
|
50
|
-
export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), rootNode(_class = _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
|
|
52
|
+
export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), responsiveLayout(_class = rootNode(_class = _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_React$PureComponent) {
|
|
51
53
|
_inheritsLoose(DatePicker, _React$PureComponent);
|
|
52
54
|
|
|
53
55
|
function DatePicker() {
|
|
@@ -76,42 +78,59 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), ro
|
|
|
76
78
|
maxDate = _this$getProps.maxDate;
|
|
77
79
|
|
|
78
80
|
var styles = getStyles(_this.emotion);
|
|
81
|
+
var isMobile = _this.isMobileLayout;
|
|
79
82
|
|
|
80
83
|
if (_this.state.opened) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
84
|
+
if (isMobile) {
|
|
85
|
+
picker = /*#__PURE__*/React.createElement(MobilePicker, {
|
|
86
|
+
value: _this.props.value,
|
|
87
|
+
minDate: _this.parseValueToDate(minDate),
|
|
88
|
+
maxDate: _this.parseValueToDate(maxDate),
|
|
89
|
+
onValueChange: _this.props.onValueChange,
|
|
90
|
+
enableTodayLink: _this.props.enableTodayLink,
|
|
91
|
+
isHoliday: _this.props.isHoliday,
|
|
92
|
+
onCloseRequest: _this.handleBlur,
|
|
93
|
+
renderDay: props.renderDay,
|
|
94
|
+
onMonthChange: props.onMonthChange
|
|
95
|
+
});
|
|
96
|
+
} else {
|
|
97
|
+
picker = /*#__PURE__*/React.createElement(LocaleContext.Provider, {
|
|
98
|
+
value: {
|
|
99
|
+
locale: {
|
|
100
|
+
Calendar: {
|
|
101
|
+
months: _this.locale.months,
|
|
102
|
+
dayCellChooseDateAriaLabel: _this.locale.dayCellChooseDateAriaLabel,
|
|
103
|
+
selectMonthAriaLabel: _this.locale.selectMonthAriaLabel,
|
|
104
|
+
selectYearAriaLabel: _this.locale.selectYearAriaLabel,
|
|
105
|
+
selectChosenAriaLabel: _this.locale.selectChosenAriaLabel
|
|
106
|
+
}
|
|
90
107
|
}
|
|
91
108
|
}
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
109
|
+
}, /*#__PURE__*/React.createElement(DropdownContainer, {
|
|
110
|
+
menuPos: _this.props.menuPos,
|
|
111
|
+
"data-tid": DatePickerDataTids.root,
|
|
112
|
+
getParent: _this.getParent,
|
|
113
|
+
offsetY: parseInt(_this.theme.datePickerMenuOffsetY),
|
|
114
|
+
align: _this.props.menuAlign
|
|
115
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
116
|
+
"data-tid": DatePickerDataTids.pickerRoot,
|
|
117
|
+
className: styles.calendarWrapper(_this.theme),
|
|
118
|
+
onMouseDown: function onMouseDown(e) {
|
|
119
|
+
return e.preventDefault();
|
|
120
|
+
}
|
|
121
|
+
}, /*#__PURE__*/React.createElement(Calendar, {
|
|
122
|
+
ref: function ref(c) {
|
|
123
|
+
return _this.calendar = c;
|
|
124
|
+
},
|
|
125
|
+
maxDate: _this.parseValueToDate(maxDate),
|
|
126
|
+
minDate: _this.parseValueToDate(minDate),
|
|
127
|
+
onValueChange: _this.handleValueChange,
|
|
128
|
+
isHoliday: _this.props.isHoliday,
|
|
129
|
+
value: _this.parseValueToDate(_this.props.value),
|
|
130
|
+
renderDay: _this.props.renderDay,
|
|
131
|
+
onMonthChange: _this.props.onMonthChange
|
|
132
|
+
}), _this.props.enableTodayLink && _this.renderTodayLink(), ' ')));
|
|
133
|
+
}
|
|
115
134
|
}
|
|
116
135
|
|
|
117
136
|
return /*#__PURE__*/React.createElement("label", {
|
|
@@ -128,17 +147,17 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), ro
|
|
|
128
147
|
withIcon: true,
|
|
129
148
|
minDate: minDate,
|
|
130
149
|
maxDate: maxDate,
|
|
131
|
-
onBlur: _this.handleBlur,
|
|
150
|
+
onBlur: isMobile ? undefined : _this.handleBlur,
|
|
132
151
|
onFocus: _this.handleFocus,
|
|
133
152
|
onValueChange: _this.props.onValueChange,
|
|
134
153
|
"data-tid": DatePickerDataTids.input
|
|
135
|
-
})), _this.state.canUseMobileNativeDatePicker
|
|
154
|
+
})), _this.state.canUseMobileNativeDatePicker ? /*#__PURE__*/React.createElement(NativeDateInput, {
|
|
136
155
|
onValueChange: _this.props.onValueChange,
|
|
137
156
|
value: _this.props.value || '',
|
|
138
157
|
minDate: minDate,
|
|
139
158
|
maxDate: maxDate,
|
|
140
159
|
disabled: _this.props.disabled
|
|
141
|
-
})
|
|
160
|
+
}) : picker);
|
|
142
161
|
};
|
|
143
162
|
|
|
144
163
|
_this.handleSelectToday = function (today) {
|
|
@@ -288,9 +307,9 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), ro
|
|
|
288
307
|
|
|
289
308
|
return /*#__PURE__*/React.createElement(EmotionConsumer, null, function (emotion) {
|
|
290
309
|
_this2.emotion = emotion;
|
|
291
|
-
return /*#__PURE__*/React.createElement(
|
|
310
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
|
|
292
311
|
_this2.theme = theme;
|
|
293
|
-
return /*#__PURE__*/React.createElement(
|
|
312
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Provider, {
|
|
294
313
|
value: ThemeFactory.create({
|
|
295
314
|
calendarBottomSeparatorBorder: 'none'
|
|
296
315
|
}, theme)
|
|
@@ -394,7 +413,9 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), ro
|
|
|
394
413
|
onMouseEnter: PropTypes.func,
|
|
395
414
|
onMouseLeave: PropTypes.func,
|
|
396
415
|
onMouseOver: PropTypes.func,
|
|
397
|
-
isHoliday: PropTypes.func
|
|
416
|
+
isHoliday: PropTypes.func,
|
|
417
|
+
renderDay: PropTypes.func,
|
|
418
|
+
onMonthChange: PropTypes.func
|
|
398
419
|
}, _class2.defaultProps = {
|
|
399
420
|
minDate: MIN_FULLDATE,
|
|
400
421
|
maxDate: MAX_FULLDATE
|
|
@@ -423,4 +444,4 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), ro
|
|
|
423
444
|
return internalDate.validate({
|
|
424
445
|
checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Number, InternalDateValidateCheck.Native, InternalDateValidateCheck.Limits, InternalDateValidateCheck.Range]
|
|
425
446
|
});
|
|
426
|
-
}, _temp)) || _class) || _class);
|
|
447
|
+
}, _temp)) || _class) || _class) || _class);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePicker.tsx"],"names":["PropTypes","React","LocaleContext","locale","InternalDateGetter","ArrowAUpIcon16Light","isTheme2022","ThemeFactory","InternalDate","MAX_FULLDATE","MIN_FULLDATE","InternalDateOrder","InternalDateSeparator","InternalDateValidateCheck","DateInput","DropdownContainer","filterProps","CommonWrapper","isMobile","NativeDateInput","getRootNode","rootNode","isNonNullable","createPropsGetter","Calendar","Button","getTodayDate","ThemeConsumer","ThemeProvider","EmotionConsumer","getStyles","DatePickerLocaleHelper","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","minDate","maxDate","styles","emotion","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","menuPos","getParent","parseInt","theme","datePickerMenuOffsetY","menuAlign","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","focus","componentDidUpdate","render","create","calendarBottomSeparatorBorder","setRootNode","undefined","date","validate","checks","NotNull","Native","toString","withPad","order","separator","setComponents","getTodayComponents","withSeparator","margin","todayAriaLabel","cx","todayLinkWrapper","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool","string","isRequired","oneOf","oneOfType","number","func","range","internalDate","DMY","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\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 { 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 { CommonProps, CommonWrapper, 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 { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport { SizeProp } from '../../lib/types/props';\nimport { ThemeConsumer, ThemeProvider } from '../../lib/theming/ThemeContext';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\n\nimport { getStyles } 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?: SizeProp;\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 public static displayName = '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]),\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 emotion!: Emotion;\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 <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeProvider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeProvider>\n );\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate } = this.getProps();\n const styles = getStyles(this.emotion);\n\n if (this.state.opened) {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\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 aria-label={this.locale.todayAriaLabel}\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 const styles = getStyles(this.emotion);\n\n return (\n <button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n className={this.emotion.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
|
+
{"version":3,"sources":["DatePicker.tsx"],"names":["PropTypes","React","LocaleContext","locale","InternalDateGetter","ArrowAUpIcon16Light","isTheme2022","ThemeFactory","InternalDate","MAX_FULLDATE","MIN_FULLDATE","InternalDateOrder","InternalDateSeparator","InternalDateValidateCheck","DateInput","DropdownContainer","filterProps","CommonWrapper","isMobile","NativeDateInput","getRootNode","rootNode","isNonNullable","createPropsGetter","Calendar","Button","getTodayDate","responsiveLayout","ThemeContext","EmotionConsumer","getStyles","DatePickerLocaleHelper","MobilePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","minDate","maxDate","styles","emotion","isMobileLayout","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","handleBlur","renderDay","onMonthChange","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","menuPos","getParent","parseInt","theme","datePickerMenuOffsetY","menuAlign","calendarWrapper","e","preventDefault","c","handleValueChange","renderTodayLink","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","getInputRef","undefined","handleFocus","handleSelectToday","handleSelect","month","year","scrollToMonth","width","minWidth","ref","setState","onFocus","close","onBlur","blur","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","create","calendarBottomSeparatorBorder","setRootNode","date","validate","checks","NotNull","Native","toString","withPad","order","separator","setComponents","getTodayComponents","withSeparator","margin","todayAriaLabel","cx","todayLinkWrapper","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool","string","isRequired","oneOf","oneOfType","number","func","range","internalDate","DMY","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport type { Emotion } from '@emotion/css/create-instance';\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 { 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 { CommonProps, CommonWrapper, 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 { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\n\nimport { getStyles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\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' | 'renderDay' | 'onMonthChange'>,\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?: SizeProp;\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@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = '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]),\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 renderDay: PropTypes.func,\n\n onMonthChange: 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 emotion!: Emotion;\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 private isMobileLayout!: boolean;\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 <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\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 </EmotionConsumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate } = this.getProps();\n const styles = getStyles(this.emotion);\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleBlur}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\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 renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\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={isMobile ? undefined : 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 picker\n )}\n </label>\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 aria-label={this.locale.todayAriaLabel}\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 const styles = getStyles(this.emotion);\n\n return (\n <button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n className={this.emotion.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"]}
|
|
@@ -6,7 +6,7 @@ import { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrappe
|
|
|
6
6
|
import { CalendarDateShape, CalendarProps } from '../Calendar';
|
|
7
7
|
import { SizeProp } from '../../lib/types/props';
|
|
8
8
|
export declare const MIN_WIDTH = 120;
|
|
9
|
-
export interface DatePickerProps extends Pick<DropdownContainerProps, 'menuPos'>, Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate'>, CommonProps {
|
|
9
|
+
export interface DatePickerProps extends Pick<DropdownContainerProps, 'menuPos'>, Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>, CommonProps {
|
|
10
10
|
autoFocus?: boolean;
|
|
11
11
|
disabled?: boolean;
|
|
12
12
|
/**
|
|
@@ -91,6 +91,8 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
|
|
|
91
91
|
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
|
92
92
|
onMouseOver: PropTypes.Requireable<(...args: any[]) => any>;
|
|
93
93
|
isHoliday: PropTypes.Requireable<(...args: any[]) => any>;
|
|
94
|
+
renderDay: PropTypes.Requireable<(...args: any[]) => any>;
|
|
95
|
+
onMonthChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
94
96
|
};
|
|
95
97
|
static defaultProps: DefaultProps;
|
|
96
98
|
private getProps;
|
|
@@ -106,6 +108,7 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
|
|
|
106
108
|
private input;
|
|
107
109
|
private focused;
|
|
108
110
|
private setRootNode;
|
|
111
|
+
private isMobileLayout;
|
|
109
112
|
componentDidMount(): void;
|
|
110
113
|
componentDidUpdate(): void;
|
|
111
114
|
/**
|
|
@@ -60,6 +60,7 @@ let removeTooltip = () => setTooltip(false);
|
|
|
60
60
|
```
|
|
61
61
|
|
|
62
62
|
Очистить значение в `DatePicker`'е можно с помощью пустой строки, `null` или `undefined`
|
|
63
|
+
|
|
63
64
|
```jsx harmony
|
|
64
65
|
import { Button, Group } from '@skbkontur/react-ui';
|
|
65
66
|
|
|
@@ -131,7 +132,7 @@ const isHoliday = (day, isWeekend) => {
|
|
|
131
132
|
<details><summary>`data.gov.ru`</summary>
|
|
132
133
|
|
|
133
134
|
Docs:
|
|
134
|
-
https://data.gov.ru/api-portala-otkrytyh-dannyh-rf-polnoe-rukovodstvo
|
|
135
|
+
<https://data.gov.ru/api-portala-otkrytyh-dannyh-rf-polnoe-rukovodstvo>
|
|
135
136
|
|
|
136
137
|
Request:
|
|
137
138
|
|
|
@@ -273,6 +274,29 @@ class DatePickerFormatting extends React.Component {
|
|
|
273
274
|
<DatePickerFormatting />;
|
|
274
275
|
```
|
|
275
276
|
|
|
277
|
+
### Кастомный рендер дня
|
|
278
|
+
Подбробный пример в [Calendar](#/Components/Calendar)
|
|
279
|
+
|
|
280
|
+
```jsx harmony
|
|
281
|
+
import { CalendarDay } from "@skbkontur/react-ui";
|
|
282
|
+
|
|
283
|
+
const [value, setValue] = React.useState('12.05.2022');
|
|
284
|
+
|
|
285
|
+
const renderDay = (props) => {
|
|
286
|
+
const [date] = props.date.split('.').map(Number);
|
|
287
|
+
const isEven = date % 2 === 0;
|
|
288
|
+
|
|
289
|
+
if (isEven) {
|
|
290
|
+
return <CalendarDay {...props} style={{ background: '#e9f8e3' }} />
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
return <CalendarDay {...props} />
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
<DatePicker value={value} onValueChange={setValue} renderDay={renderDay} />;
|
|
298
|
+
```
|
|
299
|
+
|
|
276
300
|
#### Локали по умолчанию
|
|
277
301
|
|
|
278
302
|
```typescript static
|
|
@@ -338,3 +362,7 @@ const en_GB = {
|
|
|
338
362
|
dayCellChooseDateAriaLabel: 'Choose date',
|
|
339
363
|
};
|
|
340
364
|
```
|
|
365
|
+
|
|
366
|
+
### Адаптивность
|
|
367
|
+
|
|
368
|
+
На мобильных устройствах есть несколько вариантов. По умолчанию откроется адаптивная версия в попапе. Но можно открывать нативный календарь, если передать проп `useMobileNativeDatePicker`.
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { getMonthInHumanFormat } from "../../Calendar/CalendarUtils";
|
|
1
2
|
export function formatDate(_ref) {
|
|
2
3
|
var date = _ref.date,
|
|
3
4
|
month = _ref.month,
|
|
4
5
|
year = _ref.year;
|
|
5
6
|
|
|
6
|
-
var _map = [date, month
|
|
7
|
+
var _map = [date, getMonthInHumanFormat(month), year].map(function (x) {
|
|
7
8
|
return x.toString();
|
|
8
9
|
}),
|
|
9
10
|
d = _map[0],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";;AAEA,OAAO,
|
|
1
|
+
{"version":3,"sources":["DatePickerHelpers.tsx"],"names":["getMonthInHumanFormat","formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";AACA,SAASA,qBAAT,QAAsC,2BAAtC;;AAEA,OAAO,SAASC,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,EAAOF,qBAAqB,CAACG,KAAD,CAA5B,EAAqCC,IAArC,EAA2CC,GAA3C,CAA+C,UAACC,CAAD,UAAOA,CAAC,CAACC,QAAF,EAAP,EAA/C,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';\nimport { getMonthInHumanFormat } from '../Calendar/CalendarUtils';\n\nexport function formatDate({ date, month, year }: CalendarDateShape): string {\n const [d, m, y] = [date, getMonthInHumanFormat(month), year].map((x) => x.toString());\n return `${d.padStart(2, '0')}.${m.padStart(2, '0')}.${y.padStart(4, '0')}`;\n}\n"]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import React, { useContext, useLayoutEffect, useRef, useState } from 'react';
|
|
2
|
+
import { Calendar } from "../../Calendar";
|
|
3
|
+
import * as CalendarUtils from "../../Calendar/CalendarUtils";
|
|
4
|
+
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
5
|
+
import { MobilePopup } from "../../../internal/MobilePopup";
|
|
6
|
+
import { DateInput } from "../../DateInput";
|
|
7
|
+
import { Button } from "../../Button";
|
|
8
|
+
import { useLocaleForControl } from "../../../lib/locale/useLocaleForControl";
|
|
9
|
+
import { useEffectWithoutInitCall } from "../../../hooks/useEffectWithoutInitCall";
|
|
10
|
+
import { DatePickerLocaleHelper } from "../locale";
|
|
11
|
+
import { styles } from "../MobilePicker.styles";
|
|
12
|
+
import { getMobilePickerTheme } from "../getMobilePickerTheme";
|
|
13
|
+
export var MobilePickerDataTids = {
|
|
14
|
+
input: 'MobilePicker__input',
|
|
15
|
+
today: 'MobilePicker__today'
|
|
16
|
+
};
|
|
17
|
+
export var MobilePicker = function MobilePicker(props) {
|
|
18
|
+
var locale = useLocaleForControl('DatePicker', DatePickerLocaleHelper);
|
|
19
|
+
var theme = getMobilePickerTheme(useContext(ThemeContext));
|
|
20
|
+
|
|
21
|
+
var onValueChange = function onValueChange(date) {
|
|
22
|
+
if (props.onValueChange) {
|
|
23
|
+
props.onValueChange(date);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
if (props.onCloseRequest) {
|
|
27
|
+
props.onCloseRequest();
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
var inputRef = useRef(null);
|
|
32
|
+
useLayoutEffect(function () {
|
|
33
|
+
if (inputRef.current) {
|
|
34
|
+
inputRef.current.focus();
|
|
35
|
+
}
|
|
36
|
+
}, []);
|
|
37
|
+
var calendarRef = useRef(null);
|
|
38
|
+
|
|
39
|
+
var _useState = useState(function () {
|
|
40
|
+
return CalendarUtils.getTodayDate();
|
|
41
|
+
}),
|
|
42
|
+
today = _useState[0];
|
|
43
|
+
|
|
44
|
+
var onTodayClick = function onTodayClick() {
|
|
45
|
+
if (calendarRef.current) {
|
|
46
|
+
calendarRef.current.scrollToMonth(today.month, today.year);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
useEffectWithoutInitCall(function () {
|
|
51
|
+
if (props.value && calendarRef.current) {
|
|
52
|
+
var month = +props.value.substring(3, 5);
|
|
53
|
+
var year = +props.value.substring(6);
|
|
54
|
+
calendarRef.current.scrollToMonth(month, year);
|
|
55
|
+
}
|
|
56
|
+
}, [props.value]);
|
|
57
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Provider, {
|
|
58
|
+
value: theme
|
|
59
|
+
}, /*#__PURE__*/React.createElement(MobilePopup, {
|
|
60
|
+
opened: true,
|
|
61
|
+
headerChildComponent: /*#__PURE__*/React.createElement(DateInput, {
|
|
62
|
+
value: props.value || '',
|
|
63
|
+
width: "100%",
|
|
64
|
+
withIcon: true,
|
|
65
|
+
ref: inputRef,
|
|
66
|
+
minDate: props.minDate,
|
|
67
|
+
maxDate: props.maxDate,
|
|
68
|
+
onValueChange: props.onValueChange,
|
|
69
|
+
size: "medium",
|
|
70
|
+
warning: props.warning,
|
|
71
|
+
error: props.error,
|
|
72
|
+
"data-tid": MobilePickerDataTids.input
|
|
73
|
+
}),
|
|
74
|
+
footerChildComponent: props.enableTodayLink && /*#__PURE__*/React.createElement(Button, {
|
|
75
|
+
size: "medium",
|
|
76
|
+
onClick: onTodayClick,
|
|
77
|
+
"data-tid": MobilePickerDataTids.today
|
|
78
|
+
}, locale.today),
|
|
79
|
+
onCloseRequest: props.onCloseRequest
|
|
80
|
+
}, /*#__PURE__*/React.createElement(Calendar, {
|
|
81
|
+
ref: calendarRef,
|
|
82
|
+
value: props.value,
|
|
83
|
+
className: styles.calendarRoot(),
|
|
84
|
+
minDate: props.minDate,
|
|
85
|
+
maxDate: props.maxDate,
|
|
86
|
+
onValueChange: onValueChange,
|
|
87
|
+
isHoliday: props.isHoliday,
|
|
88
|
+
renderDay: props.renderDay,
|
|
89
|
+
onMonthChange: props.onMonthChange
|
|
90
|
+
})));
|
|
91
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["MobilePicker.tsx"],"names":["React","useContext","useLayoutEffect","useRef","useState","Calendar","CalendarUtils","ThemeContext","MobilePopup","DateInput","Button","useLocaleForControl","useEffectWithoutInitCall","DatePickerLocaleHelper","styles","getMobilePickerTheme","MobilePickerDataTids","input","today","MobilePicker","props","locale","theme","onValueChange","date","onCloseRequest","inputRef","current","focus","calendarRef","getTodayDate","onTodayClick","scrollToMonth","month","year","value","substring","minDate","maxDate","warning","error","enableTodayLink","calendarRoot","isHoliday","renderDay","onMonthChange"],"mappings":"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","sourcesContent":["import React, { useContext, useLayoutEffect, useRef, useState } from 'react';\n\nimport { Calendar } from '../Calendar';\nimport * as CalendarUtils from '../Calendar/CalendarUtils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { MobilePopup } from '../../internal/MobilePopup';\nimport { DateInput } from '../DateInput';\nimport { Button } from '../Button';\nimport { useLocaleForControl } from '../../lib/locale/useLocaleForControl';\nimport { useEffectWithoutInitCall } from '../../hooks/useEffectWithoutInitCall';\n\nimport { DatePickerProps } from './DatePicker';\nimport { DatePickerLocaleHelper } from './locale';\nimport { styles } from './MobilePicker.styles';\nimport { getMobilePickerTheme } from './getMobilePickerTheme';\n\nexport const MobilePickerDataTids = {\n input: 'MobilePicker__input',\n today: 'MobilePicker__today',\n} as const;\n\nexport interface MobilePickerProps\n extends Pick<\n DatePickerProps,\n | 'error'\n | 'warning'\n | 'value'\n | 'minDate'\n | 'maxDate'\n | 'onValueChange'\n | 'isHoliday'\n | 'enableTodayLink'\n | 'renderDay'\n | 'onMonthChange'\n > {\n onCloseRequest?: () => void;\n}\n\nexport const MobilePicker: React.FC<MobilePickerProps> = (props) => {\n const locale = useLocaleForControl('DatePicker', DatePickerLocaleHelper);\n\n const theme = getMobilePickerTheme(useContext(ThemeContext));\n\n const onValueChange = (date: string) => {\n if (props.onValueChange) {\n props.onValueChange(date);\n }\n if (props.onCloseRequest) {\n props.onCloseRequest();\n }\n };\n\n const inputRef = useRef<DateInput>(null);\n useLayoutEffect(() => {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n }, []);\n\n const calendarRef = useRef<Calendar>(null);\n const [today] = useState(() => CalendarUtils.getTodayDate());\n const onTodayClick = () => {\n if (calendarRef.current) {\n calendarRef.current.scrollToMonth(today.month, today.year);\n }\n };\n\n useEffectWithoutInitCall(() => {\n if (props.value && calendarRef.current) {\n const month = +props.value.substring(3, 5);\n const year = +props.value.substring(6);\n calendarRef.current.scrollToMonth(month, year);\n }\n }, [props.value]);\n\n return (\n <ThemeContext.Provider value={theme}>\n <MobilePopup\n opened\n headerChildComponent={\n <DateInput\n value={props.value || ''}\n width=\"100%\"\n withIcon\n ref={inputRef}\n minDate={props.minDate}\n maxDate={props.maxDate}\n onValueChange={props.onValueChange}\n size=\"medium\"\n warning={props.warning}\n error={props.error}\n data-tid={MobilePickerDataTids.input}\n />\n }\n footerChildComponent={\n props.enableTodayLink && (\n <Button size=\"medium\" onClick={onTodayClick} data-tid={MobilePickerDataTids.today}>\n {locale.today}\n </Button>\n )\n }\n onCloseRequest={props.onCloseRequest}\n >\n <Calendar\n ref={calendarRef}\n value={props.value}\n className={styles.calendarRoot()}\n minDate={props.minDate}\n maxDate={props.maxDate}\n onValueChange={onValueChange}\n isHoliday={props.isHoliday}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n </MobilePopup>\n </ThemeContext.Provider>\n );\n};\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { DatePickerProps } from './DatePicker';
|
|
3
|
+
export declare const MobilePickerDataTids: {
|
|
4
|
+
readonly input: "MobilePicker__input";
|
|
5
|
+
readonly today: "MobilePicker__today";
|
|
6
|
+
};
|
|
7
|
+
export interface MobilePickerProps extends Pick<DatePickerProps, 'error' | 'warning' | 'value' | 'minDate' | 'maxDate' | 'onValueChange' | 'isHoliday' | 'enableTodayLink' | 'renderDay' | 'onMonthChange'> {
|
|
8
|
+
onCloseRequest?: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const MobilePicker: React.FC<MobilePickerProps>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTemplateLiteralLoose";
|
|
2
|
+
|
|
3
|
+
var _templateObject;
|
|
4
|
+
|
|
5
|
+
import { css, memoizeStyle } from "../../../lib/theming/Emotion";
|
|
6
|
+
export var styles = memoizeStyle({
|
|
7
|
+
calendarRoot: function calendarRoot() {
|
|
8
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n width: auto;\n "])));
|
|
9
|
+
}
|
|
10
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["MobilePicker.styles.ts"],"names":["css","memoizeStyle","styles","calendarRoot"],"mappings":"oHAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;AAEA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,YADiC,0BAClB;AACb,WAAOH,GAAP;;;AAGD,GALgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n calendarRoot() {\n return css`\n width: auto;\n `;\n },\n});\n"]}
|
|
@@ -16,7 +16,7 @@ import { getTodayDate } from "../../Calendar/CalendarUtils";
|
|
|
16
16
|
import { isTheme2022 } from "../../../lib/theming/ThemeHelpers";
|
|
17
17
|
import { Button } from "../../Button";
|
|
18
18
|
import { ArrowAUpIcon16Light } from "../../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light";
|
|
19
|
-
import {
|
|
19
|
+
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
20
20
|
import { getStyles } from "../DatePicker.styles";
|
|
21
21
|
import { DatePickerDataTids } from "../DatePicker";
|
|
22
22
|
import { DatePickerLocaleHelper } from "../locale";
|
|
@@ -81,9 +81,9 @@ export var Picker = (_dec = locale('DatePicker', DatePickerLocaleHelper), _dec(_
|
|
|
81
81
|
|
|
82
82
|
return /*#__PURE__*/React.createElement(EmotionConsumer, null, function (emotion) {
|
|
83
83
|
_this2.emotion = emotion;
|
|
84
|
-
return /*#__PURE__*/React.createElement(
|
|
84
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
|
|
85
85
|
_this2.theme = theme;
|
|
86
|
-
return /*#__PURE__*/React.createElement(
|
|
86
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Provider, {
|
|
87
87
|
value: ThemeFactory.create({
|
|
88
88
|
calendarBottomSeparatorBorder: 'none'
|
|
89
89
|
}, theme)
|