@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePicker.tsx"],"names":["INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","DatePickerLocaleHelper","rootNode","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","minDate","maxDate","styles","emotion","locale","Calendar","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","isMobile","focus","componentDidUpdate","render","ThemeFactory","create","calendarBottomSeparatorBorder","setRootNode","undefined","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","margin","todayAriaLabel","cx","todayLinkWrapper","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","range","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\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":["INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","DatePickerLocaleHelper","responsiveLayout","rootNode","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","minDate","maxDate","styles","emotion","isMobile","isMobileLayout","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","handleBlur","renderDay","onMonthChange","locale","Calendar","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","ThemeFactory","create","calendarBottomSeparatorBorder","setRootNode","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","margin","todayAriaLabel","cx","todayLinkWrapper","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","range","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\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"]}
|
|
@@ -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,6 +1,7 @@
|
|
|
1
1
|
"use strict";exports.__esModule = true;exports.formatDate = formatDate;
|
|
2
|
+
var _CalendarUtils = require("../Calendar/CalendarUtils");
|
|
2
3
|
|
|
3
4
|
function formatDate(_ref) {var date = _ref.date,month = _ref.month,year = _ref.year;
|
|
4
|
-
var _map = [date, month
|
|
5
|
+
var _map = [date, (0, _CalendarUtils.getMonthInHumanFormat)(month), year].map(function (x) {return x.toString();}),d = _map[0],m = _map[1],y = _map[2];
|
|
5
6
|
return d.padStart(2, '0') + "." + m.padStart(2, '0') + "." + y.padStart(4, '0');
|
|
6
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";;AAEO,SAASA,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,
|
|
1
|
+
{"version":3,"sources":["DatePickerHelpers.tsx"],"names":["formatDate","date","month","year","map","x","toString","d","m","y","padStart"],"mappings":";AACA;;AAEO,SAASA,UAAT,OAAsE,KAAhDC,IAAgD,QAAhDA,IAAgD,CAA1CC,KAA0C,QAA1CA,KAA0C,CAAnCC,IAAmC,QAAnCA,IAAmC;AAC3E,aAAkB,CAACF,IAAD,EAAO,0CAAsBC,KAAtB,CAAP,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,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,118 @@
|
|
|
1
|
+
"use strict";var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;exports.__esModule = true;exports.MobilePickerDataTids = exports.MobilePicker = void 0;var _react = _interopRequireWildcard(require("react"));
|
|
2
|
+
|
|
3
|
+
var _Calendar = require("../Calendar");
|
|
4
|
+
var CalendarUtils = _interopRequireWildcard(require("../Calendar/CalendarUtils"));
|
|
5
|
+
var _ThemeContext = require("../../lib/theming/ThemeContext");
|
|
6
|
+
var _MobilePopup = require("../../internal/MobilePopup");
|
|
7
|
+
var _DateInput = require("../DateInput");
|
|
8
|
+
var _Button = require("../Button");
|
|
9
|
+
var _useLocaleForControl = require("../../lib/locale/useLocaleForControl");
|
|
10
|
+
var _useEffectWithoutInitCall = require("../../hooks/useEffectWithoutInitCall");
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
var _locale = require("./locale");
|
|
14
|
+
var _MobilePicker = require("./MobilePicker.styles");
|
|
15
|
+
var _getMobilePickerTheme = require("./getMobilePickerTheme");
|
|
16
|
+
|
|
17
|
+
var MobilePickerDataTids = {
|
|
18
|
+
input: 'MobilePicker__input',
|
|
19
|
+
today: 'MobilePicker__today' };exports.MobilePickerDataTids = MobilePickerDataTids;
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
var MobilePicker = function MobilePicker(props) {
|
|
40
|
+
var locale = (0, _useLocaleForControl.useLocaleForControl)('DatePicker', _locale.DatePickerLocaleHelper);
|
|
41
|
+
|
|
42
|
+
var theme = (0, _getMobilePickerTheme.getMobilePickerTheme)((0, _react.useContext)(_ThemeContext.ThemeContext));
|
|
43
|
+
|
|
44
|
+
var onValueChange = function onValueChange(date) {
|
|
45
|
+
if (props.onValueChange) {
|
|
46
|
+
props.onValueChange(date);
|
|
47
|
+
}
|
|
48
|
+
if (props.onCloseRequest) {
|
|
49
|
+
props.onCloseRequest();
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
var inputRef = (0, _react.useRef)(null);
|
|
54
|
+
(0, _react.useLayoutEffect)(function () {
|
|
55
|
+
if (inputRef.current) {
|
|
56
|
+
inputRef.current.focus();
|
|
57
|
+
}
|
|
58
|
+
}, []);
|
|
59
|
+
|
|
60
|
+
var calendarRef = (0, _react.useRef)(null);
|
|
61
|
+
var _useState = (0, _react.useState)(function () {return CalendarUtils.getTodayDate();}),today = _useState[0];
|
|
62
|
+
var onTodayClick = function onTodayClick() {
|
|
63
|
+
if (calendarRef.current) {
|
|
64
|
+
calendarRef.current.scrollToMonth(today.month, today.year);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
(0, _useEffectWithoutInitCall.useEffectWithoutInitCall)(function () {
|
|
69
|
+
if (props.value && calendarRef.current) {
|
|
70
|
+
var month = +props.value.substring(3, 5);
|
|
71
|
+
var year = +props.value.substring(6);
|
|
72
|
+
calendarRef.current.scrollToMonth(month, year);
|
|
73
|
+
}
|
|
74
|
+
}, [props.value]);
|
|
75
|
+
|
|
76
|
+
return /*#__PURE__*/(
|
|
77
|
+
_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: theme }, /*#__PURE__*/
|
|
78
|
+
_react.default.createElement(_MobilePopup.MobilePopup, {
|
|
79
|
+
opened: true,
|
|
80
|
+
headerChildComponent: /*#__PURE__*/
|
|
81
|
+
_react.default.createElement(_DateInput.DateInput, {
|
|
82
|
+
value: props.value || '',
|
|
83
|
+
width: "100%",
|
|
84
|
+
withIcon: true,
|
|
85
|
+
ref: inputRef,
|
|
86
|
+
minDate: props.minDate,
|
|
87
|
+
maxDate: props.maxDate,
|
|
88
|
+
onValueChange: props.onValueChange,
|
|
89
|
+
size: "medium",
|
|
90
|
+
warning: props.warning,
|
|
91
|
+
error: props.error,
|
|
92
|
+
"data-tid": MobilePickerDataTids.input }),
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
footerChildComponent:
|
|
96
|
+
props.enableTodayLink && /*#__PURE__*/
|
|
97
|
+
_react.default.createElement(_Button.Button, { size: "medium", onClick: onTodayClick, "data-tid": MobilePickerDataTids.today },
|
|
98
|
+
locale.today),
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
onCloseRequest: props.onCloseRequest }, /*#__PURE__*/
|
|
103
|
+
|
|
104
|
+
_react.default.createElement(_Calendar.Calendar, {
|
|
105
|
+
ref: calendarRef,
|
|
106
|
+
value: props.value,
|
|
107
|
+
className: _MobilePicker.styles.calendarRoot(),
|
|
108
|
+
minDate: props.minDate,
|
|
109
|
+
maxDate: props.maxDate,
|
|
110
|
+
onValueChange: onValueChange,
|
|
111
|
+
isHoliday: props.isHoliday,
|
|
112
|
+
renderDay: props.renderDay,
|
|
113
|
+
onMonthChange: props.onMonthChange }))));
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
};exports.MobilePicker = MobilePicker;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["MobilePicker.tsx"],"names":["MobilePickerDataTids","input","today","MobilePicker","props","locale","DatePickerLocaleHelper","theme","ThemeContext","onValueChange","date","onCloseRequest","inputRef","current","focus","calendarRef","CalendarUtils","getTodayDate","onTodayClick","scrollToMonth","month","year","value","substring","minDate","maxDate","warning","error","enableTodayLink","styles","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,8 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject;
|
|
2
|
+
|
|
3
|
+
var styles = (0, _Emotion.memoizeStyle)({
|
|
4
|
+
calendarRoot: function calendarRoot() {
|
|
5
|
+
return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n width: auto;\n "])));
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
} });exports.styles = styles;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["MobilePicker.styles.ts"],"names":["styles","calendarRoot","css"],"mappings":"oRAAA,oD;;AAEO,IAAMA,MAAM,GAAG,2BAAa;AACjCC,EAAAA,YADiC,0BAClB;AACb,eAAOC,YAAP;;;AAGD,GALgC,EAAb,CAAf,C","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"]}
|
|
@@ -167,4 +167,4 @@ Picker = (_dec = (0, _decorators.locale)('DatePicker', _locale.DatePickerLocaleH
|
|
|
167
167
|
var _this$state$today = _this.state.today,month = _this$state$today.month,year = _this$state$today.year;
|
|
168
168
|
_this.calendar.scrollToMonth(month, year);
|
|
169
169
|
}
|
|
170
|
-
};};_this.state = { today: (0, _CalendarUtils.getTodayDate)() };(0, _warning.default)(false, "<Picker /> has been deprecated. It will be removed in the next major version of the library. If you wish to have a similar component make use of public component <Calendar />.");return _this;}var _proto = Picker.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_Emotion.EmotionConsumer, null, function (emotion) {_this2.emotion = emotion;return /*#__PURE__*/_react.default.createElement(_ThemeContext.
|
|
170
|
+
};};_this.state = { today: (0, _CalendarUtils.getTodayDate)() };(0, _warning.default)(false, "<Picker /> has been deprecated. It will be removed in the next major version of the library. If you wish to have a similar component make use of public component <Calendar />.");return _this;}var _proto = Picker.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_Emotion.EmotionConsumer, null, function (emotion) {_this2.emotion = emotion;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme) }, _this2.renderMain());});});};_proto.renderMain = function renderMain() {var _this3 = this;var styles = (0, _DatePicker.getStyles)(this.emotion);return /*#__PURE__*/_react.default.createElement("div", { "data-tid": _DatePicker2.DatePickerDataTids.pickerRoot, className: styles.calendarWrapper(this.theme), onMouseDown: function onMouseDown(e) {return e.preventDefault();} }, /*#__PURE__*/_react.default.createElement(_Calendar.Calendar, { ref: function ref(c) {return _this3.calendar = c;}, maxDate: this.getDateFromShape(this.props.maxDate), minDate: this.getDateFromShape(this.props.minDate), onValueChange: this.onValueChange, isHoliday: this.isHoliday, value: this.getDateFromShape(this.props.value) }), this.props.enableTodayLink && this.renderTodayLink(), ' ');};_proto.renderTodayLink = function renderTodayLink() {var _this$emotion$cx;var _this$locale = this.locale,order = _this$locale.order,separator = _this$locale.separator;var today = new _InternalDate.InternalDate({ order: order, separator: separator }).setComponents(_InternalDateGetter.InternalDateGetter.getTodayComponents()).toString({ withPad: true, withSeparator: true });if ((0, _ThemeHelpers.isTheme2022)(this.theme)) {return /*#__PURE__*/_react.default.createElement("div", { style: { margin: 8 } }, /*#__PURE__*/_react.default.createElement(_Button.Button, { "data-tid": _DatePicker2.DatePickerDataTids.pickerTodayWrapper, width: "100%", onClick: this.handleSelectToday(today), icon: /*#__PURE__*/_react.default.createElement(_ArrowAUp16Light.ArrowAUpIcon16Light, null) }, this.locale.today));}var styles = (0, _DatePicker.getStyles)(this.emotion);return /*#__PURE__*/_react.default.createElement("button", { "data-tid": _DatePicker2.DatePickerDataTids.pickerTodayWrapper, className: this.emotion.cx((_this$emotion$cx = {}, _this$emotion$cx[styles.todayLinkWrapper(this.theme)] = true, _this$emotion$cx)), onClick: this.handleSelectToday(today), tabIndex: -1 }, this.locale.today + " " + today);};return Picker;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'Picker', _class2.displayName = 'Picker', _temp)) || _class);exports.Picker = Picker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Picker.tsx"],"names":["Picker","DatePickerLocaleHelper","props","calendar","isHoliday","day","isWeekend","dateShape","InternalDate","parseValue","getComponentsLikeNumber","onValueChange","date","onPick","getDateFromShape","undefined","InternalDateTransformer","dateToInternalString","handleSelectToday","today","onSelect","todayInNativeFormat","toNativeFormat","state","month","year","scrollToMonth","render","emotion","theme","ThemeFactory","create","calendarBottomSeparatorBorder","renderMain","styles","DatePickerDataTids","pickerRoot","calendarWrapper","e","preventDefault","c","maxDate","minDate","value","enableTodayLink","renderTodayLink","locale","order","separator","setComponents","InternalDateGetter","getTodayComponents","toString","withPad","withSeparator","margin","pickerTodayWrapper","cx","todayLinkWrapper","React","Component","__KONTUR_REACT_UI__","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { InternalDateTransformer } from '../../lib/date/InternalDateTransformer';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Nullable } from '../../typings/utility-types';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { locale } from '../../lib/locale/decorators';\nimport { Calendar } from '../Calendar';\nimport { CalendarDateShape } from '../Calendar/CalendarDateShape';\nimport { Theme } from '../../lib/theming/Theme';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { Button } from '../Button';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeConsumer, ThemeProvider } from '../../lib/theming/ThemeContext';\n\nimport { getStyles } from './DatePicker.styles';\nimport { DatePickerDataTids } from './DatePicker';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\n\ninterface PickerProps {\n maxDate?: CalendarDateShape;\n minDate?: CalendarDateShape;\n value: Nullable<CalendarDateShape>;\n onPick: (date: CalendarDateShape) => void;\n onSelect?: (date: CalendarDateShape) => void;\n enableTodayLink?: boolean;\n isHoliday?: (day: CalendarDateShape & { isWeekend: boolean }) => boolean;\n}\n\ninterface PickerState {\n today: CalendarDateShape;\n}\n\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class Picker extends React.Component<PickerProps, PickerState> {\n public static __KONTUR_REACT_UI__ = 'Picker';\n public static displayName = 'Picker';\n\n private theme!: Theme;\n private emotion!: Emotion;\n private calendar: Calendar | null = null;\n private readonly locale!: DatePickerLocale;\n\n constructor(props: PickerProps) {\n super(props);\n this.state = {\n today: getTodayDate(),\n };\n warning(\n false,\n `<Picker /> has been deprecated. It will be removed in the next major version of the library. If you wish to have a similar component make use of public component <Calendar />.`,\n );\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 {this.renderMain()}\n </ThemeProvider>\n );\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }\n\n private isHoliday = (day: string, isWeekend: boolean) => {\n const dateShape = new InternalDate().parseValue(day).getComponentsLikeNumber();\n\n return !!this.props.isHoliday?.({ ...dateShape, isWeekend });\n };\n\n private onValueChange = (date: string) => {\n const dateShape = new InternalDate().parseValue(date).getComponentsLikeNumber();\n\n return this.props.onPick(dateShape);\n };\n\n private renderMain() {\n const styles = getStyles(this.emotion);\n return (\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.getDateFromShape(this.props.maxDate)}\n minDate={this.getDateFromShape(this.props.minDate)}\n onValueChange={this.onValueChange}\n isHoliday={this.isHoliday}\n value={this.getDateFromShape(this.props.value)}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n );\n }\n\n private getDateFromShape = (dateShape: CalendarDateShape | undefined | null) => {\n if (!dateShape) {\n return undefined;\n }\n\n return InternalDateTransformer.dateToInternalString(dateShape);\n };\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n if (isTheme2022(this.theme)) {\n return (\n <div style={{ margin: 8 }}>\n <Button\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={this.handleSelectToday(today)}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n const styles = getStyles(this.emotion);\n\n return (\n <button\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 if (this.props.onSelect) {\n const todayInNativeFormat = new InternalDate().parseValue(today).toNativeFormat() as CalendarDateShape;\n this.props.onSelect(todayInNativeFormat);\n }\n\n if (this.calendar) {\n const { month, year } = this.state.today;\n this.calendar.scrollToMonth(month, year);\n }\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Picker.tsx"],"names":["Picker","DatePickerLocaleHelper","props","calendar","isHoliday","day","isWeekend","dateShape","InternalDate","parseValue","getComponentsLikeNumber","onValueChange","date","onPick","getDateFromShape","undefined","InternalDateTransformer","dateToInternalString","handleSelectToday","today","onSelect","todayInNativeFormat","toNativeFormat","state","month","year","scrollToMonth","render","emotion","theme","ThemeFactory","create","calendarBottomSeparatorBorder","renderMain","styles","DatePickerDataTids","pickerRoot","calendarWrapper","e","preventDefault","c","maxDate","minDate","value","enableTodayLink","renderTodayLink","locale","order","separator","setComponents","InternalDateGetter","getTodayComponents","toString","withPad","withSeparator","margin","pickerTodayWrapper","cx","todayLinkWrapper","React","Component","__KONTUR_REACT_UI__","displayName"],"mappings":"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","sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { InternalDateTransformer } from '../../lib/date/InternalDateTransformer';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Nullable } from '../../typings/utility-types';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { locale } from '../../lib/locale/decorators';\nimport { Calendar } from '../Calendar';\nimport { CalendarDateShape } from '../Calendar/CalendarDateShape';\nimport { Theme } from '../../lib/theming/Theme';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { Button } from '../Button';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\n\nimport { getStyles } from './DatePicker.styles';\nimport { DatePickerDataTids } from './DatePicker';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\n\ninterface PickerProps {\n maxDate?: CalendarDateShape;\n minDate?: CalendarDateShape;\n value: Nullable<CalendarDateShape>;\n onPick: (date: CalendarDateShape) => void;\n onSelect?: (date: CalendarDateShape) => void;\n enableTodayLink?: boolean;\n isHoliday?: (day: CalendarDateShape & { isWeekend: boolean }) => boolean;\n}\n\ninterface PickerState {\n today: CalendarDateShape;\n}\n\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class Picker extends React.Component<PickerProps, PickerState> {\n public static __KONTUR_REACT_UI__ = 'Picker';\n public static displayName = 'Picker';\n\n private theme!: Theme;\n private emotion!: Emotion;\n private calendar: Calendar | null = null;\n private readonly locale!: DatePickerLocale;\n\n constructor(props: PickerProps) {\n super(props);\n this.state = {\n today: getTodayDate(),\n };\n warning(\n false,\n `<Picker /> has been deprecated. It will be removed in the next major version of the library. If you wish to have a similar component make use of public component <Calendar />.`,\n );\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 {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </EmotionConsumer>\n );\n }\n\n private isHoliday = (day: string, isWeekend: boolean) => {\n const dateShape = new InternalDate().parseValue(day).getComponentsLikeNumber();\n\n return !!this.props.isHoliday?.({ ...dateShape, isWeekend });\n };\n\n private onValueChange = (date: string) => {\n const dateShape = new InternalDate().parseValue(date).getComponentsLikeNumber();\n\n return this.props.onPick(dateShape);\n };\n\n private renderMain() {\n const styles = getStyles(this.emotion);\n return (\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.getDateFromShape(this.props.maxDate)}\n minDate={this.getDateFromShape(this.props.minDate)}\n onValueChange={this.onValueChange}\n isHoliday={this.isHoliday}\n value={this.getDateFromShape(this.props.value)}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n );\n }\n\n private getDateFromShape = (dateShape: CalendarDateShape | undefined | null) => {\n if (!dateShape) {\n return undefined;\n }\n\n return InternalDateTransformer.dateToInternalString(dateShape);\n };\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n if (isTheme2022(this.theme)) {\n return (\n <div style={{ margin: 8 }}>\n <Button\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={this.handleSelectToday(today)}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n const styles = getStyles(this.emotion);\n\n return (\n <button\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 if (this.props.onSelect) {\n const todayInNativeFormat = new InternalDate().parseValue(today).toNativeFormat() as CalendarDateShape;\n this.props.onSelect(todayInNativeFormat);\n }\n\n if (this.calendar) {\n const { month, year } = this.state.today;\n this.calendar.scrollToMonth(month, year);\n }\n };\n}\n"]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";exports.__esModule = true;exports.getMobilePickerTheme = void 0;var _ThemeFactory = require("../../lib/theming/ThemeFactory");
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var getMobilePickerTheme = function getMobilePickerTheme(theme) {
|
|
5
|
+
return _ThemeFactory.ThemeFactory.create(
|
|
6
|
+
{
|
|
7
|
+
calendarPaddingX: theme.mobileCalendarPaddingX,
|
|
8
|
+
calendarCellWidth: theme.mobileCalendarCellWidth,
|
|
9
|
+
calendarCellHeight: theme.mobileCalendarCellHeight,
|
|
10
|
+
calendarCellBorderRadius: theme.mobileCalendarCellBorderRadius,
|
|
11
|
+
calendarCellFontSize: theme.mobileCalendarCellFontSize,
|
|
12
|
+
calendarGridRowSpacing: theme.mobileCalendarGridRowSpacing,
|
|
13
|
+
dateSelectFontSize: theme.mobileDateSelectFontSize,
|
|
14
|
+
dateSelectLineHeight: theme.mobileDateSelectLineHeight,
|
|
15
|
+
calendarWrapperHeight: theme.mobileCalendarWrapperHeight },
|
|
16
|
+
|
|
17
|
+
theme);
|
|
18
|
+
|
|
19
|
+
};exports.getMobilePickerTheme = getMobilePickerTheme;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["getMobilePickerTheme.ts"],"names":["getMobilePickerTheme","theme","ThemeFactory","create","calendarPaddingX","mobileCalendarPaddingX","calendarCellWidth","mobileCalendarCellWidth","calendarCellHeight","mobileCalendarCellHeight","calendarCellBorderRadius","mobileCalendarCellBorderRadius","calendarCellFontSize","mobileCalendarCellFontSize","calendarGridRowSpacing","mobileCalendarGridRowSpacing","dateSelectFontSize","mobileDateSelectFontSize","dateSelectLineHeight","mobileDateSelectLineHeight","calendarWrapperHeight","mobileCalendarWrapperHeight"],"mappings":"6EAAA;;;AAGO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD,EAAyB;AAC3D,SAAOC,2BAAaC,MAAb;AACL;AACEC,IAAAA,gBAAgB,EAAEH,KAAK,CAACI,sBAD1B;AAEEC,IAAAA,iBAAiB,EAAEL,KAAK,CAACM,uBAF3B;AAGEC,IAAAA,kBAAkB,EAAEP,KAAK,CAACQ,wBAH5B;AAIEC,IAAAA,wBAAwB,EAAET,KAAK,CAACU,8BAJlC;AAKEC,IAAAA,oBAAoB,EAAEX,KAAK,CAACY,0BAL9B;AAMEC,IAAAA,sBAAsB,EAAEb,KAAK,CAACc,4BANhC;AAOEC,IAAAA,kBAAkB,EAAEf,KAAK,CAACgB,wBAP5B;AAQEC,IAAAA,oBAAoB,EAAEjB,KAAK,CAACkB,0BAR9B;AASEC,IAAAA,qBAAqB,EAAEnB,KAAK,CAACoB,2BAT/B,EADK;;AAYLpB,EAAAA,KAZK,CAAP;;AAcD,CAfM,C","sourcesContent":["import { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const getMobilePickerTheme = (theme: Theme): Theme => {\n return ThemeFactory.create(\n {\n calendarPaddingX: theme.mobileCalendarPaddingX,\n calendarCellWidth: theme.mobileCalendarCellWidth,\n calendarCellHeight: theme.mobileCalendarCellHeight,\n calendarCellBorderRadius: theme.mobileCalendarCellBorderRadius,\n calendarCellFontSize: theme.mobileCalendarCellFontSize,\n calendarGridRowSpacing: theme.mobileCalendarGridRowSpacing,\n dateSelectFontSize: theme.mobileDateSelectFontSize,\n dateSelectLineHeight: theme.mobileDateSelectLineHeight,\n calendarWrapperHeight: theme.mobileCalendarWrapperHeight,\n },\n theme,\n );\n};\n"]}
|
|
@@ -233,7 +233,7 @@ Dropdown = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/func
|
|
|
233
233
|
|
|
234
234
|
_refSelect = function (element) {
|
|
235
235
|
_this._select = element;
|
|
236
|
-
};return _this;}var _proto = Dropdown.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.
|
|
236
|
+
};return _this;}var _proto = Dropdown.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = (0, _getDropdownTheme.getDropdownTheme)(theme);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _this2.theme }, _this2.renderMain(_this2.props));});}; /**
|
|
237
237
|
* @public
|
|
238
238
|
*/_proto.open = function open() {if (this._select) {this._select.open();}} /**
|
|
239
239
|
* @public
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Dropdown.tsx"],"names":["PASS_PROPS","_renderButton","error","disabled","disablePortal","menuAlign","menuWidth","maxMenuHeight","use","size","warning","width","onOpen","onClose","onMouseEnter","onMouseLeave","onMouseOver","menuPos","DropdownDataTids","root","Dropdown","rootNode","renderMain","caption","icon","props","items","React","Children","map","children","item","setRootNode","_refSelect","renderValue","element","_select","render","theme","open","close","Component","__KONTUR_REACT_UI__","displayName","Header","MenuHeader","MenuItem","Separator","MenuSeparator","propTypes","PropTypes","node","isRequired","bool","number","oneOf","oneOfType","string","any","func","value"],"mappings":"qeAAA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;;;AAIA;;AAEA,sD;;AAEA,IAAMA,UAAU,GAAG;AACjBC,EAAAA,aAAa,EAAE,IADE;AAEjBC,EAAAA,KAAK,EAAE,IAFU;AAGjBC,EAAAA,QAAQ,EAAE,IAHO;AAIjBC,EAAAA,aAAa,EAAE,IAJE;AAKjBC,EAAAA,SAAS,EAAE,IALM;AAMjBC,EAAAA,SAAS,EAAE,IANM;AAOjBC,EAAAA,aAAa,EAAE,IAPE;AAQjBC,EAAAA,GAAG,EAAE,IARY;AASjBC,EAAAA,IAAI,EAAE,IATW;AAUjBC,EAAAA,OAAO,EAAE,IAVQ;AAWjBC,EAAAA,KAAK,EAAE,IAXU;AAYjBC,EAAAA,MAAM,EAAE,IAZS;AAajBC,EAAAA,OAAO,EAAE,IAbQ;AAcjBC,EAAAA,YAAY,EAAE,IAdG;AAejBC,EAAAA,YAAY,EAAE,IAfG;AAgBjBC,EAAAA,WAAW,EAAE,IAhBI;AAiBjBC,EAAAA,OAAO,EAAE,IAjBQ;AAkBjB,sBAAoB,IAlBH,EAAnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiFO,IAAMC,gBAAgB,GAAG;AAC9BC,EAAAA,IAAI,EAAE,gBADwB,EAAzB;;;AAIP;AACA;AACA;AACA,G;;AAEaC,Q,OADZC,kB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuFQC,IAAAA,U,GAAa,gBAAwE,KAArEC,OAAqE,QAArEA,OAAqE,CAA5DC,IAA4D,QAA5DA,IAA4D,CAAnDC,KAAmD;AAC1F,UAAMC,KAAK,GAAGC,eAAMC,QAAN,CAAeC,GAAf,CAAmB,MAAKJ,KAAL,CAAWK,QAA9B,EAAwC,UAACC,IAAD,UAAUA,IAAV,EAAxC,KAA2D,EAAzE;;AAEA;AACE,qCAAC,4BAAD,2BAAe,WAAW,EAAE,MAAKC,WAAjC,IAAkD,MAAKP,KAAvD;AACE,qCAAC,cAAD;AACE,sBAAUP,gBAAgB,CAACC,IAD7B;AAEE,UAAA,GAAG,EAAE,MAAKc,UAFZ;AAGM,sCAAYR,KAAZ,EAAmBzB,UAAnB,CAHN;AAIE,UAAA,KAAK,EAAEuB,OAJT;AAKE,UAAA,KAAK,EAAEG,KALT;AAME,UAAA,KAAK,EAAEF,IANT;AAOE,UAAA,WAAW,EAAEU,WAPf;AAQE,UAAA,IAAI,EAAE,MAAKT,KAAL,CAAWhB,IARnB;AASE,wBAAY,MAAKgB,KAAL,CAAW,YAAX,CATd,IADF,CADF;;;;AAeD,K;;;;;;;;;;;;;;;;;;;;AAoBOQ,IAAAA,U,GAAa,UAACE,OAAD,EAAuC;AAC1D,YAAKC,OAAL,GAAeD,OAAf;AACD,K,sDAnDME,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,
|
|
1
|
+
{"version":3,"sources":["Dropdown.tsx"],"names":["PASS_PROPS","_renderButton","error","disabled","disablePortal","menuAlign","menuWidth","maxMenuHeight","use","size","warning","width","onOpen","onClose","onMouseEnter","onMouseLeave","onMouseOver","menuPos","DropdownDataTids","root","Dropdown","rootNode","renderMain","caption","icon","props","items","React","Children","map","children","item","setRootNode","_refSelect","renderValue","element","_select","render","theme","open","close","Component","__KONTUR_REACT_UI__","displayName","Header","MenuHeader","MenuItem","Separator","MenuSeparator","propTypes","PropTypes","node","isRequired","bool","number","oneOf","oneOfType","string","any","func","value"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\n\nimport { filterProps } from '../../lib/filterProps';\nimport { MenuHeader } from '../MenuHeader';\nimport { MenuItem } from '../MenuItem';\nimport { MenuSeparator } from '../MenuSeparator';\nimport { Select } from '../Select';\nimport { Nullable } from '../../typings/utility-types';\nimport { ButtonUse } from '../Button';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { Theme } from '../../lib/theming/Theme';\nimport { DropdownContainerProps } from '../../internal/DropdownContainer';\nimport { SizeProp } from '../../lib/types/props';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\n\nimport { getDropdownTheme } from './getDropdownTheme';\n\nconst PASS_PROPS = {\n _renderButton: true,\n error: true,\n disabled: true,\n disablePortal: true,\n menuAlign: true,\n menuWidth: true,\n maxMenuHeight: true,\n use: true,\n size: true,\n warning: true,\n width: true,\n onOpen: true,\n onClose: true,\n onMouseEnter: true,\n onMouseLeave: true,\n onMouseOver: true,\n menuPos: true,\n 'aria-describedby': true,\n};\n\nexport interface DropdownProps\n extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>,\n CommonProps,\n Pick<DropdownContainerProps, 'menuPos'> {\n /**\n * Подпись на кнопке.\n */\n caption: React.ReactNode;\n /**\n * Иконка слева от текста кнопки\n */\n icon?: React.ReactElement<any>;\n width?: React.CSSProperties['width'];\n\n /** @ignore */\n _renderButton?: (params: any) => JSX.Element;\n\n /**\n * Отключает использование портала\n */\n disablePortal?: boolean;\n\n /**\n * Визуально отключает Dropdown\n */\n disabled?: boolean;\n\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n maxMenuHeight?: number;\n menuAlign?: 'left' | 'right';\n menuWidth?: number | string;\n size?: SizeProp;\n\n /**\n * Смотри Button.\n */\n use?: ButtonUse;\n\n /**\n * Вызывается при закрытии меню.\n */\n onClose?: () => void;\n /**\n * Вызывается при открытии меню.\n */\n onOpen?: () => void;\n onMouseEnter?: (event: React.MouseEvent<HTMLElement>) => void;\n onMouseLeave?: (event: React.MouseEvent<HTMLElement>) => void;\n onMouseOver?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\ntype DropdownSelectType = Select<React.ReactNode, React.ReactNode>;\n\nexport const DropdownDataTids = {\n root: 'Dropdown__root',\n} as const;\n\n/**\n * Выпадающее меню.\n *\n */\n@rootNode\nexport class Dropdown extends React.Component<DropdownProps> {\n public static __KONTUR_REACT_UI__ = 'Dropdown';\n public static displayName = 'Dropdown';\n\n public static Header = MenuHeader;\n public static MenuItem = MenuItem;\n public static Separator = MenuSeparator;\n\n public static propTypes = {\n /**\n * Подпись на кнопке.\n */\n caption: PropTypes.node.isRequired,\n\n /**\n * Отключает использование портала\n */\n disablePortal: PropTypes.bool,\n\n /**\n * Визуально отключает Dropdown\n */\n disabled: PropTypes.bool,\n\n /**\n * Визуально показать наличие ошибки.\n */\n error: PropTypes.bool,\n\n /**\n * Иконка слева от текста кнопки\n */\n icon: PropTypes.node,\n\n maxMenuHeight: PropTypes.number,\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n menuWidth: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n size: PropTypes.oneOf(['small', 'medium', 'large']),\n\n /**\n * Смотри Button.\n */\n use: PropTypes.any,\n\n /**\n * Визуально показать наличие предупреждения.\n */\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n /**\n * Вызывается при закрытии меню.\n */\n onClose: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n /**\n * Вызывается при открытии меню.\n */\n onOpen: PropTypes.func,\n };\n\n private _select: Nullable<DropdownSelectType>;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getDropdownTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain(this.props)}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = ({ caption, icon, ...props }: CommonWrapperRestProps<DropdownProps>) => {\n const items = React.Children.map(this.props.children, (item) => item) || [];\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Select<React.ReactNode, React.ReactNode>\n data-tid={DropdownDataTids.root}\n ref={this._refSelect}\n {...filterProps(props, PASS_PROPS)}\n value={caption}\n items={items}\n _icon={icon}\n renderValue={renderValue}\n size={this.props.size}\n aria-label={this.props['aria-label']}\n />\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n */\n public open() {\n if (this._select) {\n this._select.open();\n }\n }\n\n /**\n * @public\n */\n public close() {\n if (this._select) {\n this._select.close();\n }\n }\n\n private _refSelect = (element: DropdownSelectType): void => {\n this._select = element;\n };\n}\n\nfunction renderValue(value: any) {\n return value;\n}\n"]}
|
|
@@ -138,4 +138,4 @@ DropdownMenu = (0, _rootNode.rootNode)(_class = (_temp = _class2 = /*#__PURE__*/
|
|
|
138
138
|
}
|
|
139
139
|
};_this.
|
|
140
140
|
|
|
141
|
-
refPopupMenu = function (ref) {return _this.popupMenu = ref;};if (!props.caption && !_currentEnvironment.isProductionEnv) {throw new Error('Prop "caption" is required!!!');}return _this;}var _proto = DropdownMenu.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.
|
|
141
|
+
refPopupMenu = function (ref) {return _this.popupMenu = ref;};if (!props.caption && !_currentEnvironment.isProductionEnv) {throw new Error('Prop "caption" is required!!!');}return _this;}var _proto = DropdownMenu.prototype;_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _getDropdownMenuTheme.getDropdownMenuTheme)(theme) }, _this2.renderMain());});};_proto.renderMain = function renderMain() {if (!this.props.caption) {return null;}var _this$getProps = this.getProps(),positions = _this$getProps.positions,disableAnimations = _this$getProps.disableAnimations;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_PopupMenu.PopupMenu, { "aria-label": this.props['aria-label'], ref: this.refPopupMenu, caption: this.props.caption, menuMaxHeight: this.props.menuMaxHeight, menuWidth: this.props.menuWidth, preventIconsOffset: this.props.preventIconsOffset, popupHasPin: false, positions: positions, disableAnimations: disableAnimations, header: this.props.header, footer: this.props.footer, width: this.props.width, onClose: this.props.onClose, onOpen: this.props.onOpen, popupMenuId: this.props.popupMenuId }, this.props.children));};return DropdownMenu;}(_react.default.Component), _class2.__KONTUR_REACT_UI__ = 'DropdownMenu', _class2.displayName = 'DropdownMenu', _class2.defaultProps = { disableAnimations: _currentEnvironment.isTestEnv, positions: ['bottom left', 'bottom right', 'top left', 'top right'] }, _temp)) || _class;exports.DropdownMenu = DropdownMenu;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DropdownMenu.tsx"],"names":["DropdownMenu","rootNode","props","getProps","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","render","theme","renderMain","positions","disableAnimations","setRootNode","menuMaxHeight","menuWidth","preventIconsOffset","header","footer","width","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"mappings":"kVAAA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,8D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA;AACA;AACA,G;;AAEaA,Y,OADZC,kB;;;;;;;;;;;;;;AAeC,wBAAYC,KAAZ,EAAsC;AACpC,wCAAMA,KAAN,UADoC,MAL9BC,QAK8B,GALnB,0CAAkBH,YAAY,CAACI,YAA/B,CAKmB,OAH9BC,SAG8B,GAHG,IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgD/BC,IAAAA,IAhD+B,GAgDxB,YAAY;AACxB,UAAI,MAAKD,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeC,IAAf;AACD;AACF,KApDqC;;AAsD/BC,IAAAA,KAtD+B,GAsDvB,YAAY;AACzB,UAAI,MAAKF,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeE,KAAf;AACD;AACF,KA1DqC;;AA4D9BC,IAAAA,YA5D8B,GA4Df,UAACC,GAAD,UAA+B,MAAKJ,SAAL,GAAiBI,GAAhD,EA5De,CAGpC,IAAI,CAACP,KAAK,CAACQ,OAAP,IAAkB,CAACC,mCAAvB,EAAwC,CACtC,MAAM,IAAIC,KAAJ,CAAU,+BAAV,CAAN,CACD,CALmC,aAMrC,C,2CAEMC,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,
|
|
1
|
+
{"version":3,"sources":["DropdownMenu.tsx"],"names":["DropdownMenu","rootNode","props","getProps","defaultProps","popupMenu","open","close","refPopupMenu","ref","caption","isProductionEnv","Error","render","theme","renderMain","positions","disableAnimations","setRootNode","menuMaxHeight","menuWidth","preventIconsOffset","header","footer","width","onClose","onOpen","popupMenuId","children","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"mappings":"kVAAA;;;AAGA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,8D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA;AACA;AACA,G;;AAEaA,Y,OADZC,kB;;;;;;;;;;;;;;AAeC,wBAAYC,KAAZ,EAAsC;AACpC,wCAAMA,KAAN,UADoC,MAL9BC,QAK8B,GALnB,0CAAkBH,YAAY,CAACI,YAA/B,CAKmB,OAH9BC,SAG8B,GAHG,IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgD/BC,IAAAA,IAhD+B,GAgDxB,YAAY;AACxB,UAAI,MAAKD,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeC,IAAf;AACD;AACF,KApDqC;;AAsD/BC,IAAAA,KAtD+B,GAsDvB,YAAY;AACzB,UAAI,MAAKF,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeE,KAAf;AACD;AACF,KA1DqC;;AA4D9BC,IAAAA,YA5D8B,GA4Df,UAACC,GAAD,UAA+B,MAAKJ,SAAL,GAAiBI,GAAhD,EA5De,CAGpC,IAAI,CAACP,KAAK,CAACQ,OAAP,IAAkB,CAACC,mCAAvB,EAAwC,CACtC,MAAM,IAAIC,KAAJ,CAAU,+BAAV,CAAN,CACD,CALmC,aAMrC,C,2CAEMC,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACC,KAAD,EAAW,CACV,oBAAO,6BAAC,0BAAD,CAAc,QAAd,IAAuB,KAAK,EAAE,gDAAqBA,KAArB,CAA9B,IAA4D,MAAI,CAACC,UAAL,EAA5D,CAAP,CACD,CAHH,CADF,CAOD,C,QAEMA,U,GAAP,sBAAoB,CAClB,IAAI,CAAC,KAAKb,KAAL,CAAWQ,OAAhB,EAAyB,CACvB,OAAO,IAAP,CACD,CACD,qBAAyC,KAAKP,QAAL,EAAzC,CAAQa,SAAR,kBAAQA,SAAR,CAAmBC,iBAAnB,kBAAmBA,iBAAnB,CACA,oBACE,6BAAC,4BAAD,2BAAe,WAAW,EAAE,KAAKC,WAAjC,IAAkD,KAAKhB,KAAvD,gBACE,6BAAC,oBAAD,IACE,cAAY,KAAKA,KAAL,CAAW,YAAX,CADd,EAEE,GAAG,EAAE,KAAKM,YAFZ,EAGE,OAAO,EAAE,KAAKN,KAAL,CAAWQ,OAHtB,EAIE,aAAa,EAAE,KAAKR,KAAL,CAAWiB,aAJ5B,EAKE,SAAS,EAAE,KAAKjB,KAAL,CAAWkB,SALxB,EAME,kBAAkB,EAAE,KAAKlB,KAAL,CAAWmB,kBANjC,EAOE,WAAW,EAAE,KAPf,EAQE,SAAS,EAAEL,SARb,EASE,iBAAiB,EAAEC,iBATrB,EAUE,MAAM,EAAE,KAAKf,KAAL,CAAWoB,MAVrB,EAWE,MAAM,EAAE,KAAKpB,KAAL,CAAWqB,MAXrB,EAYE,KAAK,EAAE,KAAKrB,KAAL,CAAWsB,KAZpB,EAaE,OAAO,EAAE,KAAKtB,KAAL,CAAWuB,OAbtB,EAcE,MAAM,EAAE,KAAKvB,KAAL,CAAWwB,MAdrB,EAeE,WAAW,EAAE,KAAKxB,KAAL,CAAWyB,WAf1B,IAiBG,KAAKzB,KAAL,CAAW0B,QAjBd,CADF,CADF,CAuBD,C,uBA5D+BC,eAAMC,S,WACxBC,mB,GAAsB,c,UACtBC,W,GAAc,c,UAEd5B,Y,GAA6B,EACzCa,iBAAiB,EAAEgB,6BADsB,EAEzCjB,SAAS,EAAE,CAAC,aAAD,EAAgB,cAAhB,EAAgC,UAAhC,EAA4C,WAA5C,CAF8B,E","sourcesContent":["import React, { AriaAttributes } from 'react';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupMenu, PopupMenuProps } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\n\nimport { getDropdownMenuTheme } from './getDropdownMenuTheme';\n\nexport interface DropdownMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол [MenuHeader](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен [MenuSeparator](#/Components/MenuSeparator).\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n}\n\ntype DefaultProps = Required<Pick<DropdownMenuProps, 'disableAnimations' | 'positions'>>;\n\n/**\n * Меню, раскрывающееся по клику на переданный в `caption` элемент\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n public static displayName = 'DropdownMenu';\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private getProps = createPropsGetter(DropdownMenu.defaultProps);\n\n private popupMenu: Nullable<PopupMenu> = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return <ThemeContext.Provider value={getDropdownMenuTheme(theme)}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n const { positions, disableAnimations } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n aria-label={this.props['aria-label']}\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n preventIconsOffset={this.props.preventIconsOffset}\n popupHasPin={false}\n positions={positions}\n disableAnimations={disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n onClose={this.props.onClose}\n onOpen={this.props.onOpen}\n popupMenuId={this.props.popupMenuId}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n}\n"]}
|