@skbkontur/react-ui 0.0.0-68e286f9fe → 0.0.0-6911f001e4
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 +182 -0
- package/README.md +6 -6
- package/cjs/components/Autocomplete/Autocomplete.d.ts +18 -4
- package/cjs/components/Autocomplete/Autocomplete.js +73 -15
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +4 -1
- package/cjs/components/Button/Button.js +47 -17
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +6 -0
- package/cjs/components/Button/Button.styles.js +107 -75
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/ButtonArrow.js +13 -14
- package/cjs/components/Button/ButtonArrow.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +2 -0
- package/cjs/components/Calendar/Calendar.js +1 -0
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +2 -0
- package/cjs/components/Center/Center.js +1 -0
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +4 -4
- package/cjs/components/Checkbox/Checkbox.js +16 -19
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +20 -7
- package/cjs/components/ComboBox/ComboBox.js +19 -1
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +5 -0
- package/cjs/components/CurrencyInput/CurrencyInput.js +9 -1
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/constants.js +1 -2
- package/cjs/components/CurrencyInput/constants.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +2 -3
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +5 -1
- package/cjs/components/DateInput/DateInput.js +9 -4
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +2 -0
- package/cjs/components/DatePicker/DatePicker.js +1 -0
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/MobilePicker.js +1 -0
- package/cjs/components/DatePicker/MobilePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.js +1 -0
- package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +2 -0
- package/cjs/components/Dropdown/Dropdown.js +1 -0
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +1 -0
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +12 -2
- package/cjs/components/FxInput/FxInput.js +141 -58
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
- package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +2 -0
- package/cjs/components/Gapped/Gapped.js +1 -0
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +2 -0
- package/cjs/components/Group/Group.js +1 -0
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +2 -0
- package/cjs/components/Hint/Hint.js +1 -0
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +6 -5
- package/cjs/components/Input/Input.js +17 -47
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.d.ts +0 -1
- package/cjs/components/Input/Input.styles.js +8 -19
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +4 -1
- package/cjs/components/Kebab/Kebab.js +10 -5
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +2 -0
- package/cjs/components/Link/Link.js +10 -1
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +3 -0
- package/cjs/components/Loader/Loader.js +6 -1
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
- package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
- package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/cjs/components/MaskedInput/MaskedInput.js +43 -4
- package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +3 -0
- package/cjs/components/MenuItem/MenuItem.js +15 -2
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.styles.d.ts +3 -1
- package/cjs/components/MenuItem/MenuItem.styles.js +35 -21
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +1 -0
- package/cjs/components/Modal/Modal.styles.js +36 -28
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +2 -0
- package/cjs/components/Modal/ModalBody.js +1 -0
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +5 -0
- package/cjs/components/Modal/ModalHeader.js +8 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Paging/DotsIcon.d.ts +3 -0
- package/cjs/components/Paging/DotsIcon.js +13 -0
- package/cjs/components/Paging/DotsIcon.js.map +1 -0
- package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
- package/cjs/components/Paging/ForwardIcon.js +13 -1
- package/cjs/components/Paging/ForwardIcon.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
- package/cjs/components/Paging/NavigationHelper.js +8 -6
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +13 -1
- package/cjs/components/Paging/Paging.js +120 -24
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.d.ts +24 -1
- package/cjs/components/Paging/Paging.styles.js +151 -22
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/Paging/PagingHelper.d.ts +1 -1
- package/cjs/components/Paging/PagingHelper.js +18 -11
- package/cjs/components/Paging/PagingHelper.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +5 -5
- package/cjs/components/PasswordInput/PasswordInput.js +21 -22
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +4 -1
- package/cjs/components/Radio/Radio.js +7 -4
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
- package/cjs/components/RadioGroup/RadioGroup.js +1 -0
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js +1 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +4 -1
- package/cjs/components/Select/Select.js +11 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.js +3 -1
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
- package/cjs/components/SidePage/SidePage.styles.js +52 -38
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
- package/cjs/components/SidePage/SidePageBody.js +1 -0
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
- package/cjs/components/SidePage/SidePageContainer.js +1 -0
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
- package/cjs/components/SidePage/SidePageFooter.js +1 -0
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
- package/cjs/components/SidePage/SidePageHeader.js +60 -19
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +32 -2
- package/cjs/components/SingleToast/SingleToast.js +58 -3
- package/cjs/components/SingleToast/SingleToast.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +2 -0
- package/cjs/components/Spinner/Spinner.js +1 -0
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +2 -0
- package/cjs/components/Sticky/Sticky.js +1 -0
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +2 -0
- package/cjs/components/Switcher/Switcher.js +1 -0
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Tabs/Indicator.d.ts +2 -0
- package/cjs/components/Tabs/Indicator.js +1 -0
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +2 -0
- package/cjs/components/Tabs/Tab.js +1 -0
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.d.ts +2 -0
- package/cjs/components/Tabs/Tabs.js +1 -0
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +4 -1
- package/cjs/components/Textarea/Textarea.js +9 -4
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.styles.js +3 -3
- package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +56 -9
- package/cjs/components/Toast/Toast.js +104 -11
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +7 -1
- package/cjs/components/Toast/ToastView.js +22 -5
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
- package/cjs/components/Toast/ToastView.styles.js +43 -9
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +4 -1
- package/cjs/components/Toggle/Toggle.js +6 -5
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +2 -0
- package/cjs/components/Token/Token.js +1 -0
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +6 -1
- package/cjs/components/TokenInput/TokenInput.js +43 -30
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +12 -5
- package/cjs/components/Tooltip/Tooltip.js +100 -13
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/index.d.ts +1 -0
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +4 -4
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +8 -4
- package/cjs/internal/CustomComboBox/ComboBoxView.js +35 -25
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +7 -2
- package/cjs/internal/CustomComboBox/CustomComboBox.js +17 -5
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
- package/cjs/internal/CustomComboBox/getComboBoxTheme.js +10 -7
- package/cjs/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.js +1 -1
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
- package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
- package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -3
- package/cjs/internal/InputLikeText/InputLikeText.js +13 -14
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +1 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +23 -21
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
- package/cjs/internal/Menu/Menu.d.ts +2 -0
- package/cjs/internal/Menu/Menu.js +1 -0
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/MenuMessage/MenuMessage.js +13 -1
- package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
- package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +3 -1
- package/cjs/internal/MenuMessage/MenuMessage.styles.js +24 -8
- package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +9 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +24 -1
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +7 -3
- package/cjs/internal/MobilePopup/MobilePopup.styles.js +55 -19
- package/cjs/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +8 -1
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +36 -18
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +3 -0
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +23 -3
- package/cjs/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -0
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +31 -33
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +3 -2
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +22 -13
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +2 -0
- package/cjs/internal/Popup/Popup.js +14 -3
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
- package/cjs/internal/Popup/PopupPinNew.js +180 -0
- package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
- package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
- package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
- package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -0
- package/cjs/internal/RenderLayer/RenderLayer.js +1 -0
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +5 -1
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +2 -0
- package/cjs/internal/ZIndex/ZIndex.js +1 -0
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
- package/cjs/internal/themes/BasicTheme.d.ts +147 -28
- package/cjs/internal/themes/BasicTheme.js +800 -33
- package/cjs/internal/themes/BasicTheme.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_4.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_4.js +18 -0
- package/cjs/internal/themes/DarkTheme5_4.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_4.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_4.js +18 -0
- package/cjs/internal/themes/LightTheme5_4.js.map +1 -0
- package/cjs/internal/themes/consts.d.ts +8 -0
- package/cjs/internal/themes/consts.js +8 -0
- package/cjs/internal/themes/consts.js.map +1 -0
- package/cjs/lib/__stories__/Blink.creevey.mts +90 -0
- package/cjs/lib/blink.d.ts +15 -0
- package/cjs/lib/blink.js +65 -0
- package/cjs/lib/blink.js.map +1 -0
- package/cjs/lib/delay.mts +3 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +6 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +13 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
- package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
- package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/cjs/lib/size/SizeControlContext.d.ts +6 -0
- package/cjs/lib/size/SizeControlContext.js +16 -0
- package/cjs/lib/size/SizeControlContext.js.map +1 -0
- package/cjs/lib/size/SizeDecorator.d.ts +33 -0
- package/cjs/lib/size/SizeDecorator.js +41 -0
- package/cjs/lib/size/SizeDecorator.js.map +1 -0
- package/cjs/lib/size/constants.d.ts +2 -0
- package/cjs/lib/size/constants.js +3 -0
- package/cjs/lib/size/constants.js.map +1 -0
- package/cjs/lib/size/index.d.ts +1 -0
- package/cjs/lib/size/index.js +1 -0
- package/cjs/lib/size/index.js.map +1 -0
- package/cjs/lib/size/useSizeControl.d.ts +2 -0
- package/cjs/lib/size/useSizeControl.js +10 -0
- package/cjs/lib/size/useSizeControl.js.map +1 -0
- package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
- package/cjs/lib/theming/ThemeVersions.js.map +1 -1
- package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
- package/cjs/lib/theming/themes/DarkTheme.js +4 -2
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
- package/cjs/lib/theming/themes/LightTheme.js +4 -2
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/utils.d.ts +13 -0
- package/cjs/lib/utils.js +34 -1
- package/cjs/lib/utils.js.map +1 -1
- package/components/Autocomplete/Autocomplete/Autocomplete.js +72 -32
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +18 -4
- package/components/Button/Button/Button.js +45 -24
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +4 -1
- package/components/Button/Button.styles/Button.styles.js +78 -60
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +6 -0
- package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
- package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +2 -0
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +2 -0
- package/components/Checkbox/Checkbox/Checkbox.js +12 -13
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +4 -4
- package/components/ComboBox/ComboBox/ComboBox.js +1 -1
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +20 -7
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +6 -2
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +5 -0
- package/components/CurrencyInput/constants/constants.js +0 -1
- package/components/CurrencyInput/constants/constants.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js +9 -8
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +5 -1
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +2 -0
- package/components/DatePicker/MobilePicker/MobilePicker.js +1 -0
- package/components/DatePicker/MobilePicker/MobilePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +1 -0
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +2 -0
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/components/FileUploader/FileUploader/FileUploader.js +1 -0
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FxInput/FxInput/FxInput.js +121 -65
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +12 -2
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +2 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +2 -0
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +2 -0
- package/components/Input/Input/Input.js +23 -52
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +6 -5
- package/components/Input/Input.styles/Input.styles.js +9 -13
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +0 -1
- package/components/Kebab/Kebab/Kebab.js +7 -7
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +4 -1
- package/components/Link/Link/Link.js +4 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +2 -0
- package/components/Loader/Loader/Loader.js +2 -1
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +3 -0
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
- package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
- package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput/MaskedInput.js +28 -2
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/components/MenuItem/MenuItem/MenuItem.js +12 -1
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +3 -0
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +25 -19
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/MenuItem/MenuItem.styles.d.ts +3 -1
- package/components/Modal/Modal.styles/Modal.styles.js +31 -28
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +1 -0
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +2 -0
- package/components/Modal/ModalHeader/ModalHeader.js +3 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +5 -0
- package/components/Paging/DotsIcon/DotsIcon.js +14 -0
- package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
- package/components/Paging/DotsIcon/package.json +6 -0
- package/components/Paging/DotsIcon.d.ts +3 -0
- package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
- package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
- package/components/Paging/ForwardIcon.d.ts +3 -0
- package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/NavigationHelper.d.ts +3 -2
- package/components/Paging/Paging/Paging.js +95 -25
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +13 -1
- package/components/Paging/Paging.styles/Paging.styles.js +77 -16
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +24 -1
- package/components/Paging/PagingHelper/PagingHelper.js +16 -8
- package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
- package/components/Paging/PagingHelper.d.ts +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +13 -19
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +5 -5
- package/components/Radio/Radio/Radio.js +7 -7
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +4 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +2 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +2 -0
- package/components/Select/Select/Select.js +17 -15
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +4 -1
- package/components/SidePage/SidePage/SidePage.js +2 -2
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +3 -1
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +2 -0
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +2 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +2 -0
- package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +12 -2
- package/components/SingleToast/SingleToast/SingleToast.js +37 -12
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +32 -2
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +2 -0
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +2 -0
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +2 -0
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.d.ts +2 -0
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +2 -0
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +2 -0
- package/components/Textarea/Textarea/Textarea.js +7 -6
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +4 -1
- package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
- package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
- package/components/Toast/Toast/Toast.js +86 -23
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +56 -9
- package/components/Toast/ToastView/ToastView.js +17 -5
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +7 -1
- package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +4 -0
- package/components/Toggle/Toggle/Toggle.js +10 -10
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +4 -1
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +2 -0
- package/components/TokenInput/TokenInput/TokenInput.js +47 -42
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +6 -1
- package/components/Tooltip/Tooltip/Tooltip.js +69 -19
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +12 -5
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +46 -45
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +8 -4
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +12 -7
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +7 -2
- package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js +5 -3
- package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js.map +1 -1
- package/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +1 -1
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/FocusTrap/FocusTrap.d.ts +2 -0
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +17 -28
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +4 -3
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +21 -16
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +1 -0
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +2 -0
- package/internal/MenuMessage/MenuMessage/MenuMessage.js +12 -1
- package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +12 -6
- package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.styles.d.ts +3 -1
- package/internal/MobilePopup/MobilePopup/MobilePopup.js +19 -6
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +9 -0
- package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js +24 -12
- package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.styles.d.ts +7 -3
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/MobilePopupFooter.js +23 -9
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +8 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/MobilePopupFooter.styles.js +11 -2
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles/MobilePopupFooter.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +3 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +29 -23
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +3 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js +12 -9
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +3 -2
- package/internal/Popup/Popup/Popup.js +10 -3
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +2 -0
- package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
- package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
- package/internal/Popup/PopupPinNew/package.json +6 -0
- package/internal/Popup/PopupPinNew.d.ts +31 -0
- package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
- package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
- package/internal/Popup/PopupPinNew.styles/package.json +6 -0
- package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +2 -0
- package/internal/ThemePlayground/Playground/Playground.js +8 -5
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +2 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
- package/internal/themes/BasicTheme/BasicTheme.js +267 -44
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +147 -28
- package/internal/themes/DarkTheme5_4/DarkTheme5_4.js +17 -0
- package/internal/themes/DarkTheme5_4/DarkTheme5_4.js.map +1 -0
- package/internal/themes/DarkTheme5_4/package.json +6 -0
- package/internal/themes/DarkTheme5_4.d.ts +1 -0
- package/internal/themes/LightTheme5_4/LightTheme5_4.js +17 -0
- package/internal/themes/LightTheme5_4/LightTheme5_4.js.map +1 -0
- package/internal/themes/LightTheme5_4/package.json +6 -0
- package/internal/themes/LightTheme5_4.d.ts +1 -0
- package/internal/themes/consts/consts.js +9 -0
- package/internal/themes/consts/consts.js.map +1 -0
- package/internal/themes/consts/package.json +6 -0
- package/internal/themes/consts.d.ts +8 -0
- package/lib/__stories__/Blink.creevey.mts +90 -0
- package/lib/blink/blink.js +63 -0
- package/lib/blink/blink.js.map +1 -0
- package/lib/blink/package.json +6 -0
- package/lib/blink.d.ts +15 -0
- package/lib/delay.d.mts +1 -0
- package/lib/delay.mts +3 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +6 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +7 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +6 -0
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
- package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
- package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
- package/lib/size/SizeControlContext/package.json +6 -0
- package/lib/size/SizeControlContext.d.ts +6 -0
- package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
- package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
- package/lib/size/SizeDecorator/package.json +6 -0
- package/lib/size/SizeDecorator.d.ts +33 -0
- package/lib/size/constants/constants.js +1 -0
- package/lib/size/constants/constants.js.map +1 -0
- package/lib/size/constants/package.json +6 -0
- package/lib/size/constants.d.ts +2 -0
- package/lib/size/index/index.js +1 -0
- package/lib/size/index/index.js.map +1 -0
- package/lib/size/index/package.json +6 -0
- package/lib/size/index.d.ts +1 -0
- package/lib/size/package.json +6 -0
- package/lib/size/useSizeControl/package.json +6 -0
- package/lib/size/useSizeControl/useSizeControl.js +7 -0
- package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
- package/lib/size/useSizeControl.d.ts +2 -0
- package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
- package/lib/theming/ThemeVersions.d.ts +1 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js +3 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +1 -0
- package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +1 -0
- package/lib/utils/utils.js +26 -0
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +13 -0
- package/package.json +9 -15
- package/cjs/components/Autocomplete/Autocomplete.md +0 -113
- package/cjs/components/Button/Button.md +0 -261
- package/cjs/components/Calendar/Calendar.md +0 -276
- package/cjs/components/Calendar/CalendarDay.md +0 -70
- package/cjs/components/Center/Center.md +0 -26
- package/cjs/components/Checkbox/Checkbox.md +0 -171
- package/cjs/components/ComboBox/ComboBox.md +0 -574
- package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
- package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/cjs/components/DateInput/DateInput.md +0 -111
- package/cjs/components/DatePicker/DatePicker.md +0 -368
- package/cjs/components/Dropdown/Dropdown.md +0 -45
- package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
- package/cjs/components/FileUploader/FileUploader.md +0 -131
- package/cjs/components/FxInput/FxInput.md +0 -31
- package/cjs/components/Gapped/Gapped.md +0 -44
- package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
- package/cjs/components/Group/Group.md +0 -19
- package/cjs/components/Hint/Hint.md +0 -86
- package/cjs/components/Input/Input.md +0 -86
- package/cjs/components/Kebab/Kebab.md +0 -306
- package/cjs/components/Link/Link.md +0 -182
- package/cjs/components/Loader/Loader.md +0 -33
- package/cjs/components/MaskedInput/MaskedInput.md +0 -114
- package/cjs/components/MenuFooter/MenuFooter.md +0 -27
- package/cjs/components/MenuHeader/MenuHeader.md +0 -35
- package/cjs/components/MenuItem/MenuItem.md +0 -139
- package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
- package/cjs/components/MiniModal/MiniModal.md +0 -231
- package/cjs/components/Modal/Modal.md +0 -56
- package/cjs/components/Paging/Paging.md +0 -57
- package/cjs/components/PasswordInput/PasswordInput.md +0 -29
- package/cjs/components/Radio/Radio.md +0 -57
- package/cjs/components/RadioGroup/RadioGroup.md +0 -44
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
- package/cjs/components/Select/Select.md +0 -113
- package/cjs/components/SidePage/SidePage.md +0 -65
- package/cjs/components/SingleToast/SingleToast.md +0 -36
- package/cjs/components/Spinner/Spinner.md +0 -36
- package/cjs/components/Sticky/Sticky.md +0 -28
- package/cjs/components/Switcher/Switcher.md +0 -111
- package/cjs/components/Tabs/Tab.md +0 -73
- package/cjs/components/Tabs/Tabs.md +0 -54
- package/cjs/components/Textarea/Textarea.md +0 -58
- package/cjs/components/Toast/Toast.md +0 -69
- package/cjs/components/Toggle/Toggle.md +0 -110
- package/cjs/components/Token/Token.md +0 -48
- package/cjs/components/TokenInput/TokenInput.md +0 -277
- package/cjs/components/Tooltip/Tooltip.md +0 -322
- package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
- package/cjs/internal/DataTids/DATATIDS.md +0 -12
- package/cjs/internal/DataTids/DataTids.d.ts +0 -12
- package/cjs/internal/DataTids/DataTids.js +0 -50
- package/cjs/internal/DataTids/DataTids.js.map +0 -1
- package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/cjs/internal/DataTids/DataTids.styles.js +0 -42
- package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
- package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/cjs/internal/DataTids/componentsDataTids.js +0 -15
- package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
- package/cjs/internal/ThemePlayground/Playground.md +0 -7
- package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
- package/cjs/lib/theming/ThemeContext.md +0 -265
- package/components/Autocomplete/Autocomplete.md +0 -113
- package/components/Button/Button.md +0 -261
- package/components/Calendar/Calendar.md +0 -276
- package/components/Calendar/CalendarDay.md +0 -70
- package/components/Center/Center.md +0 -26
- package/components/Checkbox/Checkbox.md +0 -171
- package/components/ComboBox/ComboBox.md +0 -574
- package/components/CurrencyInput/CurrencyInput.md +0 -39
- package/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/components/DateInput/DateInput.md +0 -111
- package/components/DatePicker/DatePicker.md +0 -368
- package/components/Dropdown/Dropdown.md +0 -45
- package/components/DropdownMenu/DropdownMenu.md +0 -290
- package/components/FileUploader/FileUploader.md +0 -131
- package/components/FxInput/FxInput.md +0 -31
- package/components/Gapped/Gapped.md +0 -44
- package/components/GlobalLoader/GlobalLoader.md +0 -97
- package/components/Group/Group.md +0 -19
- package/components/Hint/Hint.md +0 -86
- package/components/Input/Input.md +0 -86
- package/components/Kebab/Kebab.md +0 -306
- package/components/Link/Link.md +0 -182
- package/components/Loader/Loader.md +0 -33
- package/components/MaskedInput/MaskedInput.md +0 -114
- package/components/MenuFooter/MenuFooter.md +0 -27
- package/components/MenuHeader/MenuHeader.md +0 -35
- package/components/MenuItem/MenuItem.md +0 -139
- package/components/MenuSeparator/MenuSeparator.md +0 -14
- package/components/MiniModal/MiniModal.md +0 -231
- package/components/Modal/Modal.md +0 -56
- package/components/Paging/Paging.md +0 -57
- package/components/PasswordInput/PasswordInput.md +0 -29
- package/components/Radio/Radio.md +0 -57
- package/components/RadioGroup/RadioGroup.md +0 -44
- package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/components/ScrollContainer/ScrollContainer.md +0 -224
- package/components/Select/Select.md +0 -113
- package/components/SidePage/SidePage.md +0 -65
- package/components/SingleToast/SingleToast.md +0 -36
- package/components/Spinner/Spinner.md +0 -36
- package/components/Sticky/Sticky.md +0 -28
- package/components/Switcher/Switcher.md +0 -111
- package/components/Tabs/Tab.md +0 -73
- package/components/Tabs/Tabs.md +0 -54
- package/components/Textarea/Textarea.md +0 -58
- package/components/Toast/Toast.md +0 -69
- package/components/Toggle/Toggle.md +0 -110
- package/components/Token/Token.md +0 -48
- package/components/TokenInput/TokenInput.md +0 -277
- package/components/Tooltip/Tooltip.md +0 -322
- package/components/TooltipMenu/TooltipMenu.md +0 -241
- package/internal/DataTids/DATATIDS.md +0 -12
- package/internal/DataTids/DataTids/DataTids.js +0 -69
- package/internal/DataTids/DataTids/DataTids.js.map +0 -1
- package/internal/DataTids/DataTids/package.json +0 -6
- package/internal/DataTids/DataTids.d.ts +0 -12
- package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
- package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
- package/internal/DataTids/DataTids.styles/package.json +0 -6
- package/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
- package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
- package/internal/DataTids/componentsDataTids/package.json +0 -6
- package/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/internal/ThemePlayground/Playground.md +0 -7
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/lib/locale/LOCALECONTEXT.md +0 -222
- package/lib/theming/ThemeContext.md +0 -265
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_utils","_Input","_InputLikeText","_RenderLayer","_Spinner","_CommonWrapper","_MobilePopup","_decorator","_rootNode","_createPropsGetter","_ThemeContext","_LoadingIcon","_Popup","_getMenuPositions","_ZIndex","_InternalTextareaWithLayout","_ArrowDownIcon","_ComboBoxMenu","_CustomComboBoxTypes","_CustomComboBox","_CustomComboBox2","_getComboBoxTheme","_class","_ComboBoxView","ComboBoxViewIds","exports","menu","ComboBoxView","responsiveLayout","rootNode","_React$Component","_this$props$value","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","mobileInput","dropdownContainerRef","React","createRef","menuId","getRandomID","state","anchorElement","clearCrossShowed","props","showClearIcon","value","toString","getComboBoxMenu","_this$props","items","loading","opened","refMenu","maxMenuHeight","renderTotalCount","renderNotFound","totalCount","size","_this$getProps","repeatRequest","requestStatus","renderItem","itemWrapper","default","createElement","ComboBoxMenu","hasMargin","onValueChange","handleItemSelect","renderAddButton","isMobile","isMobileLayout","renderMenu","_this$getProps2","menuPos","menuAlign","Popup","hasShadow","minWidth","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","disablePortal","margin","parseInt","theme","menuOffsetY","ref","renderMobileMenu","rightIcon","_this$props2","onFocus","onInputValueChange","onInputKeyDown","placeholder","textValue","renderSpinner","inputProps","autoComplete","autoFocus","width","onKeyDown","MobilePopup","headerChildComponent","Input","_extends2","refMobileInput","onCloseRequest","onMobileClose","getParent","getRootNode","resolveComboboxMode","viewMode","mode","extractMultilineModeProps","maxRows","handleMobileFocus","_this$mobileInput","onInputClick","focus","item","refInput","input","className","styles","spinnerWrapper","Spinner","type","caption","dimmed","getRightIcon","_this$props3","drawArrow","LoadingIcon","ArrowDownIcon","_inheritsLoose2","_proto","prototype","componentDidMount","updateAnchorElement","parent","setState","componentDidUpdate","prevProps","editing","render","_this2","ThemeContext","Consumer","getComboBoxTheme","Provider","renderMain","_this$props4","onMouseEnter","onMouseLeave","onMouseOver","_this$getProps3","onClickOutside","onFocusOutside","renderInput","CommonWrapper","RenderLayer","active","CustomComboBoxDataTids","comboBoxView","style","root","setRootNode","_this$props5","id","align","borderless","disabled","error","onInputBlur","onInputFocus","warning","refInputLikeText","leftIcon","inputMode","ariaDescribedby","ariaLabel","_this$getProps4","renderValue","editingStateProps","maxLength","onBlur","undefined","onClick","multilineTextareaProps","autoResize","rows","extraRow","InternalTextareaWithLayout","InputLikeText","onClearCrossClick","isNonNullable","Component","__KONTUR_REACT_UI__","displayName","ComboBoxRequestStatus","Unknown"],"sources":["ComboBoxView.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport type { InputIconType, InputProps, ShowClearIcon } from '../../components/Input';\nimport { Input } from '../../components/Input';\nimport { InputLikeText } from '../InputLikeText';\nimport type { Menu } from '../Menu';\nimport type { MenuItemState } from '../../components/MenuItem';\nimport { RenderLayer } from '../RenderLayer';\nimport { Spinner } from '../../components/Spinner';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport { MobilePopup } from '../MobilePopup';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode, getRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { LoadingIcon } from '../icons2022/LoadingIcon';\nimport type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox';\nimport type { SizeProp } from '../../lib/types/props';\nimport { Popup } from '../Popup';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../ZIndex';\nimport { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout';\nimport type { TextareaProps } from '../../components/Textarea';\n\nimport { ArrowDownIcon } from './ArrowDownIcon';\nimport { ComboBoxMenu } from './ComboBoxMenu';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport { styles } from './CustomComboBox.styles';\nimport { CustomComboBoxDataTids } from './CustomComboBox';\nimport { getComboBoxTheme } from './getComboBoxTheme';\n\ninterface ComboBoxViewProps<T>\n extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n editing?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n loading?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n opened?: boolean;\n drawArrow?: boolean;\n placeholder?: string;\n size?: SizeProp;\n textValue?: string;\n totalCount?: number;\n value?: Nullable<T>;\n showClearIcon?: ShowClearIcon;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxLength?: number;\n maxMenuHeight?: number | string;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n\n onValueChange?: (value: T) => void;\n onClickOutside?: (e: Event) => void;\n onFocus?: () => void;\n onMobileClose?: () => void;\n onFocusOutside?: () => void;\n onInputBlur?: () => void;\n onInputValueChange?: (value: string) => void;\n onInputFocus?: () => void;\n onInputClick?: () => void;\n onClearCrossClick?: () => void;\n onInputKeyDown?: (e: React.KeyboardEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n renderItem?: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderValue?: (item: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n refInput?: (input: Nullable<Input | InternalTextareaWithLayout>) => void;\n refMenu?: (menu: Nullable<Menu>) => void;\n refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;\n viewMode?: ComboBoxViewMode;\n}\n\ntype DefaultProps<T> = Required<\n Pick<\n ComboBoxViewProps<T>,\n | 'renderItem'\n | 'renderValue'\n | 'renderAddButton'\n | 'repeatRequest'\n | 'requestStatus'\n | 'onClickOutside'\n | 'onFocusOutside'\n | 'size'\n | 'width'\n | 'showClearIcon'\n >\n>;\n\nexport const ComboBoxViewIds = {\n menu: 'ComboBoxView__menu',\n};\n\ninterface ComboBoxViewState {\n anchorElement: Nullable<Element>;\n clearCrossShowed: boolean;\n}\n\n@responsiveLayout\n@rootNode\nexport class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>, ComboBoxViewState> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxView';\n public static displayName = 'ComboBoxView';\n\n public static defaultProps: DefaultProps<unknown> = {\n renderItem: (item: any) => item,\n renderValue: (item: any) => item,\n renderAddButton: () => null,\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n onClickOutside: () => {\n /**/\n },\n onFocusOutside: () => {\n /**/\n },\n size: 'small',\n width: 250,\n showClearIcon: 'never',\n };\n\n private getProps = createPropsGetter(ComboBoxView.defaultProps);\n\n private input: Nullable<Input | InternalTextareaWithLayout>;\n private setRootNode!: TSetRootNode;\n private mobileInput: Nullable<Input> = null;\n private isMobileLayout!: boolean;\n private dropdownContainerRef = React.createRef<Popup>();\n private theme!: Theme;\n private menuId = ComboBoxViewIds.menu + getRandomID();\n\n public state = {\n anchorElement: null,\n clearCrossShowed: this.props.showClearIcon === 'always' && !!this.props.value?.toString(),\n };\n\n public componentDidMount() {\n this.updateAnchorElement();\n\n if (this.props.autoFocus && this.props.onFocus) {\n this.props.onFocus();\n }\n }\n\n updateAnchorElement() {\n const parent = this.getParent();\n const anchorElement = this.state.anchorElement;\n\n if (anchorElement !== parent) {\n this.setState({\n anchorElement: parent,\n });\n }\n }\n\n public componentDidUpdate(prevProps: ComboBoxViewProps<T>) {\n const { input, props } = this;\n\n this.updateAnchorElement();\n\n if (props.editing && !prevProps.editing && input) {\n input.focus();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getComboBoxTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { onMouseEnter, onMouseLeave, onMouseOver, opened } = this.props;\n const { onClickOutside, onFocusOutside, width } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n const input = this.renderInput();\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={onClickOutside} onFocusOutside={onFocusOutside} active={opened}>\n <span\n data-tid={CustomComboBoxDataTids.comboBoxView}\n style={{ width }}\n className={styles.root()}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseOver={onMouseOver}\n ref={this.setRootNode}\n >\n {input}\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private getComboBoxMenu = () => {\n const { items, loading, opened, refMenu, maxMenuHeight, renderTotalCount, renderNotFound, totalCount, size } =\n this.props;\n\n const { repeatRequest, requestStatus, renderItem, itemWrapper } = this.getProps();\n return (\n <ComboBoxMenu\n hasMargin={false}\n menuId={this.menuId}\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={this.handleItemSelect}\n opened={opened}\n refMenu={refMenu}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n itemWrapper={itemWrapper}\n renderAddButton={this.renderAddButton}\n repeatRequest={repeatRequest}\n requestStatus={requestStatus}\n totalCount={totalCount}\n isMobile={this.isMobileLayout}\n size={size}\n />\n );\n };\n\n private renderMenu = () => {\n const { opened, menuPos, menuAlign } = this.getProps();\n const { anchorElement } = this.state;\n\n return (\n opened &&\n anchorElement && (\n <Popup\n opened\n hasShadow\n minWidth=\"100%\"\n anchorElement={anchorElement}\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n disablePortal={this.props.disablePortal}\n margin={parseInt(this.theme.menuOffsetY) - 1}\n ref={this.dropdownContainerRef}\n >\n {this.getComboBoxMenu()}\n </Popup>\n )\n );\n };\n\n private renderMobileMenu = () => {\n let rightIcon = null;\n\n const { loading, items, opened, onFocus, onInputValueChange, onInputKeyDown, placeholder, textValue } = this.props;\n if (loading && items && !!items.length) {\n rightIcon = this.renderSpinner();\n }\n\n const inputProps: InputProps = {\n autoComplete: 'off',\n autoFocus: true,\n width: '100%',\n onFocus,\n onValueChange: onInputValueChange,\n onKeyDown: onInputKeyDown,\n value: textValue,\n placeholder,\n rightIcon,\n };\n\n return (\n opened && (\n <MobilePopup\n headerChildComponent={<Input ref={this.refMobileInput} {...inputProps} />}\n onCloseRequest={this.props.onMobileClose}\n opened\n >\n {this.getComboBoxMenu()}\n </MobilePopup>\n )\n );\n };\n\n private getParent = () => {\n return getRootNode(this);\n };\n\n private renderAddButton = (): React.ReactNode => {\n return this.getProps().renderAddButton(this.props.textValue);\n };\n\n private resolveComboboxMode = (): string => {\n if (!this.props.viewMode) {\n return 'singleLine';\n }\n if (typeof this.props.viewMode === 'string') {\n return this.props.viewMode;\n }\n return this.props.viewMode.mode;\n };\n\n private extractMultilineModeProps = (): Pick<TextareaProps, 'maxRows'> => {\n if (!this.props.viewMode || typeof this.props.viewMode === 'string') {\n return {};\n }\n return { maxRows: this.props.viewMode.maxRows };\n };\n\n private renderInput(): React.ReactNode {\n const isMobile = this.isMobileLayout;\n\n const {\n id,\n align,\n borderless,\n disabled,\n editing,\n error,\n onFocus,\n onInputBlur,\n onInputValueChange,\n onInputFocus,\n onInputClick,\n onInputKeyDown,\n placeholder,\n textValue,\n value,\n warning,\n refInputLikeText,\n leftIcon,\n inputMode,\n size,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n showClearIcon,\n } = this.props;\n\n const { renderValue } = this.getProps();\n\n const rightIcon = this.getRightIcon();\n\n const editingStateProps = {\n id,\n align,\n borderless,\n disabled,\n error,\n maxLength: this.props.maxLength,\n onBlur: isMobile ? undefined : onInputBlur,\n onValueChange: onInputValueChange,\n onFocus: onInputFocus,\n onClick: isMobile ? this.handleMobileFocus : onInputClick,\n leftIcon,\n rightIcon,\n value: textValue || '',\n onKeyDown: onInputKeyDown,\n placeholder,\n width: '100%',\n size,\n ref: this.refInput,\n warning,\n inputMode,\n autoComplete: 'off',\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': this.menuId,\n 'aria-label': ariaLabel,\n showClearIcon,\n };\n\n const multilineTextareaProps = {\n autoResize: true,\n rows: 1,\n extraRow: false,\n ...this.extractMultilineModeProps(),\n };\n\n if (this.resolveComboboxMode() === 'multiline') {\n return <InternalTextareaWithLayout {...editingStateProps} {...multilineTextareaProps} />;\n }\n\n if (editing) {\n if (this.resolveComboboxMode() === 'multilineEditing') {\n return <InternalTextareaWithLayout {...editingStateProps} {...multilineTextareaProps} />;\n }\n return <Input {...editingStateProps} />;\n }\n\n return (\n <InputLikeText\n id={id}\n align={align}\n borderless={borderless}\n error={error}\n onFocus={onFocus}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n disabled={disabled}\n warning={warning}\n placeholder={placeholder}\n size={size}\n width=\"100%\"\n ref={refInputLikeText}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n showClearIcon={showClearIcon}\n onClearCrossClick={this.props.onClearCrossClick}\n >\n {isNonNullable(value) && renderValue ? renderValue(value) : null}\n </InputLikeText>\n );\n }\n\n private handleMobileFocus = () => {\n this.props.onInputClick?.();\n\n this.mobileInput?.focus();\n };\n\n private handleItemSelect = (item: T) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(item);\n }\n\n if (this.isMobileLayout) {\n this.props.onMobileClose?.();\n }\n };\n\n private refInput = (input: Nullable<Input | InternalTextareaWithLayout>) => {\n if (this.props.refInput) {\n this.props.refInput(input);\n }\n this.input = input;\n };\n\n private renderSpinner = () => (\n <span className={styles.spinnerWrapper()}>\n <Spinner type=\"mini\" caption=\"\" dimmed />\n </span>\n );\n\n private getRightIcon = () => {\n const { loading, items, drawArrow, rightIcon, size } = this.props;\n\n if (loading && items && !!items.length) {\n return <LoadingIcon size={size} />;\n }\n\n if (rightIcon || drawArrow) {\n return rightIcon || <ArrowDownIcon size={size} />;\n }\n\n return null;\n };\n\n private refMobileInput = (input: Nullable<Input>) => {\n this.mobileInput = input;\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_utils","_Input","_InputLikeText","_RenderLayer","_Spinner","_CommonWrapper","_MobilePopup","_decorator","_rootNode","_createPropsGetter","_ThemeContext","_LoadingIcon","_Popup","_getMenuPositions","_ZIndex","_MaskedInput","_MaskedInput2","_Emotion","_InternalTextareaWithLayout","_SizeDecorator","_ArrowDownIcon","_ComboBoxMenu","_CustomComboBoxTypes","_CustomComboBox","_CustomComboBox2","_getComboBoxTheme","_class","_ComboBoxView","ComboBoxViewIds","exports","menu","ComboBoxView","responsiveLayout","rootNode","withSize","_React$Component","_this$props$value","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","mobileInput","dropdownContainerRef","React","createRef","menuId","getRandomID","state","anchorElement","clearCrossShowed","props","showClearIcon","value","toString","getComboBoxMenu","_this$props","items","loading","opened","refMenu","maxMenuHeight","renderTotalCount","renderNotFound","totalCount","_this$getProps","repeatRequest","requestStatus","renderItem","itemWrapper","default","createElement","ComboBoxMenu","hasMargin","onValueChange","handleItemSelect","renderAddButton","isMobile","isMobileLayout","size","renderMenu","_this$getProps2","menuPos","menuAlign","Popup","hasShadow","minWidth","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","disablePortal","margin","parseInt","theme","menuOffsetY","ref","renderMobileMenu","rightIcon","_this$props2","onFocus","onInputValueChange","onInputKeyDown","placeholder","textValue","renderSpinner","inputProps","autoComplete","autoFocus","width","onKeyDown","MobilePopup","footerChildComponent","Input","_extends2","refMobileInput","onCloseRequest","onMobileClose","getParent","getRootNode","handleMobileFocus","_this$mobileInput","onInputClick","focus","item","refInput","input","className","styles","spinnerWrapper","Spinner","type","caption","dimmed","getRightIcon","_this$props3","drawArrow","LoadingIcon","ArrowDownIcon","_inheritsLoose2","_proto","prototype","componentDidMount","updateAnchorElement","parent","setState","componentDidUpdate","prevProps","editing","render","_this2","ThemeContext","Consumer","getComboBoxTheme","viewMode","Provider","renderMain","_this$props4","onMouseEnter","onMouseLeave","onMouseOver","_this$getProps3","onClickOutside","onFocusOutside","renderInput","CommonWrapper","RenderLayer","active","CustomComboBoxDataTids","comboBoxView","style","root","setRootNode","_this$props5","id","align","borderless","disabled","error","onInputBlur","onInputFocus","warning","refInputLikeText","leftIcon","inputMode","ariaDescribedby","ariaLabel","mask","maskChar","formatChars","onBeforePasteInMask","maxLength","onBlur","undefined","onClick","multilineTextareaProps","autoResize","rows","extraRow","maxRows","InternalTextareaWithLayout","MaskedInput","onBeforePasteValue","_this$getProps4","renderValue","InputLikeText","cx","MaskedInputStyles","onClearCrossClick","isNonNullable","Component","__KONTUR_REACT_UI__","displayName","ComboBoxRequestStatus","Unknown"],"sources":["ComboBoxView.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport type { InputIconType, InputProps, ShowClearIcon } from '../../components/Input';\nimport { Input } from '../../components/Input';\nimport { InputLikeText } from '../InputLikeText';\nimport type { Menu } from '../Menu';\nimport type { MenuItemState } from '../../components/MenuItem';\nimport { RenderLayer } from '../RenderLayer';\nimport { Spinner } from '../../components/Spinner';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport { MobilePopup } from '../MobilePopup';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode, getRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { LoadingIcon } from '../icons2022/LoadingIcon';\nimport type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox';\nimport type { SizeProp } from '../../lib/types/props';\nimport { Popup } from '../Popup';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../ZIndex';\nimport type { MaskedInputOnBeforePasteValue, MaskedInputProps } from '../../components/MaskedInput';\nimport { MaskedInput } from '../../components/MaskedInput';\nimport { styles as MaskedInputStyles } from '../../components/MaskedInput/MaskedInput.styles';\nimport { cx } from '../../lib/theming/Emotion';\nimport { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport { ArrowDownIcon } from './ArrowDownIcon';\nimport { ComboBoxMenu } from './ComboBoxMenu';\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport { styles } from './CustomComboBox.styles';\nimport { CustomComboBoxDataTids } from './CustomComboBox';\nimport { getComboBoxTheme } from './getComboBoxTheme';\n\ninterface ComboBoxViewProps<T>\n extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps,\n Partial<Pick<MaskedInputProps, 'mask' | 'maskChar' | 'formatChars'>> {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n editing?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n items?: Nullable<Array<ComboBoxExtendedItem<T>>>;\n loading?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n opened?: boolean;\n drawArrow?: boolean;\n placeholder?: string;\n size?: SizeProp;\n textValue?: string;\n totalCount?: number;\n value?: Nullable<T>;\n showClearIcon?: ShowClearIcon;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxLength?: number;\n maxMenuHeight?: number | string;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n\n onBeforePasteInMask?: MaskedInputOnBeforePasteValue;\n onValueChange?: (value: T) => void;\n onClickOutside?: (e: Event) => void;\n onFocus?: () => void;\n onMobileClose?: () => void;\n onFocusOutside?: () => void;\n onInputBlur?: () => void;\n onInputValueChange?: (value: string) => void;\n onInputFocus?: () => void;\n onInputClick?: () => void;\n onClearCrossClick?: () => void;\n onInputKeyDown?: (e: React.KeyboardEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n renderItem?: (item: T, state: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderValue?: (item: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n repeatRequest?: () => void;\n requestStatus?: ComboBoxRequestStatus;\n refInput?: (input: Nullable<Input | InternalTextareaWithLayout>) => void;\n refMenu?: (menu: Nullable<Menu>) => void;\n refInputLikeText?: (inputLikeText: Nullable<InputLikeText>) => void;\n viewMode?: ComboBoxViewMode;\n maxRows?: number;\n}\n\ntype DefaultProps<T> = Required<\n Pick<\n ComboBoxViewProps<T>,\n | 'renderItem'\n | 'renderValue'\n | 'renderAddButton'\n | 'repeatRequest'\n | 'requestStatus'\n | 'onClickOutside'\n | 'onFocusOutside'\n | 'width'\n | 'showClearIcon'\n >\n>;\n\nexport const ComboBoxViewIds = {\n menu: 'ComboBoxView__menu',\n};\n\ninterface ComboBoxViewState {\n anchorElement: Nullable<Element>;\n clearCrossShowed: boolean;\n}\n\n@responsiveLayout\n@rootNode\n@withSize\nexport class ComboBoxView<T> extends React.Component<ComboBoxViewProps<T>, ComboBoxViewState> {\n public static __KONTUR_REACT_UI__ = 'ComboBoxView';\n public static displayName = 'ComboBoxView';\n\n public static defaultProps: DefaultProps<unknown> = {\n renderItem: (item: any) => item,\n renderValue: (item: any) => item,\n renderAddButton: () => null,\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n onClickOutside: () => {\n /**/\n },\n onFocusOutside: () => {\n /**/\n },\n width: 250,\n showClearIcon: 'never',\n };\n\n private getProps = createPropsGetter(ComboBoxView.defaultProps);\n\n public getRootNode!: TGetRootNode;\n private input: Nullable<Input | InternalTextareaWithLayout>;\n private setRootNode!: TSetRootNode;\n private mobileInput: Nullable<Input> = null;\n private isMobileLayout!: boolean;\n private dropdownContainerRef = React.createRef<Popup>();\n private theme!: Theme;\n private size!: SizeProp;\n private menuId = ComboBoxViewIds.menu + getRandomID();\n\n public state = {\n anchorElement: null,\n clearCrossShowed: this.props.showClearIcon === 'always' && !!this.props.value?.toString(),\n };\n\n public componentDidMount() {\n this.updateAnchorElement();\n\n if (this.props.autoFocus && this.props.onFocus) {\n this.props.onFocus();\n }\n }\n\n updateAnchorElement() {\n const parent = this.getParent();\n const anchorElement = this.state.anchorElement;\n\n if (anchorElement !== parent) {\n this.setState({\n anchorElement: parent,\n });\n }\n }\n\n public componentDidUpdate(prevProps: ComboBoxViewProps<T>) {\n const { input, props } = this;\n\n this.updateAnchorElement();\n\n if (props.editing && !prevProps.editing && input) {\n input.focus();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getComboBoxTheme(theme, this.props.viewMode);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n const { onMouseEnter, onMouseLeave, onMouseOver, opened } = this.props;\n const { onClickOutside, onFocusOutside, width } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n const input = this.renderInput();\n\n return (\n <CommonWrapper {...this.props}>\n <RenderLayer onClickOutside={onClickOutside} onFocusOutside={onFocusOutside} active={opened}>\n <span\n data-tid={CustomComboBoxDataTids.comboBoxView}\n style={{ width }}\n className={styles.root()}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseOver={onMouseOver}\n ref={this.setRootNode}\n >\n {input}\n {isMobile ? this.renderMobileMenu() : this.renderMenu()}\n </span>\n </RenderLayer>\n </CommonWrapper>\n );\n }\n\n private getComboBoxMenu = () => {\n const { items, loading, opened, refMenu, maxMenuHeight, renderTotalCount, renderNotFound, totalCount } = this.props;\n\n const { repeatRequest, requestStatus, renderItem, itemWrapper } = this.getProps();\n return (\n <ComboBoxMenu\n hasMargin={false}\n menuId={this.menuId}\n items={items}\n loading={loading}\n maxMenuHeight={maxMenuHeight}\n onValueChange={this.handleItemSelect}\n opened={opened}\n refMenu={refMenu}\n renderTotalCount={renderTotalCount}\n renderItem={renderItem}\n renderNotFound={renderNotFound}\n itemWrapper={itemWrapper}\n renderAddButton={this.renderAddButton}\n repeatRequest={repeatRequest}\n requestStatus={requestStatus}\n totalCount={totalCount}\n isMobile={this.isMobileLayout}\n size={this.size}\n />\n );\n };\n\n private renderMenu = () => {\n const { opened, menuPos, menuAlign } = this.getProps();\n const { anchorElement } = this.state;\n\n return (\n opened &&\n anchorElement && (\n <Popup\n opened\n hasShadow\n minWidth=\"100%\"\n anchorElement={anchorElement}\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n disablePortal={this.props.disablePortal}\n margin={parseInt(this.theme.menuOffsetY) - 1}\n ref={this.dropdownContainerRef}\n >\n {this.getComboBoxMenu()}\n </Popup>\n )\n );\n };\n\n private renderMobileMenu = () => {\n let rightIcon = null;\n\n const { loading, items, opened, onFocus, onInputValueChange, onInputKeyDown, placeholder, textValue } = this.props;\n if (loading && items && !!items.length) {\n rightIcon = this.renderSpinner();\n }\n\n const inputProps: InputProps = {\n autoComplete: 'off',\n autoFocus: true,\n width: '100%',\n onFocus,\n onValueChange: onInputValueChange,\n onKeyDown: onInputKeyDown,\n value: textValue,\n placeholder,\n rightIcon,\n size: this.size,\n };\n\n return (\n opened && (\n <MobilePopup\n footerChildComponent={<Input ref={this.refMobileInput} {...inputProps} />}\n onCloseRequest={this.props.onMobileClose}\n opened\n size={this.size}\n >\n {this.getComboBoxMenu()}\n </MobilePopup>\n )\n );\n };\n\n private getParent = () => {\n return getRootNode(this);\n };\n\n private renderAddButton = (): React.ReactNode => {\n return this.getProps().renderAddButton(this.props.textValue);\n };\n\n private renderInput(): React.ReactNode {\n const isMobile = this.isMobileLayout;\n\n const {\n id,\n align,\n borderless,\n disabled,\n editing,\n error,\n onFocus,\n onInputBlur,\n onInputValueChange,\n onInputFocus,\n onInputClick,\n onInputKeyDown,\n placeholder,\n textValue,\n value,\n warning,\n refInputLikeText,\n leftIcon,\n inputMode,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n showClearIcon,\n mask,\n maskChar,\n formatChars,\n onBeforePasteInMask,\n } = this.props;\n\n const rightIcon = this.getRightIcon();\n\n const inputProps = {\n id,\n align,\n borderless,\n disabled,\n error,\n maxLength: this.props.maxLength,\n onBlur: isMobile ? undefined : onInputBlur,\n onValueChange: onInputValueChange,\n onFocus: onInputFocus,\n onClick: isMobile ? this.handleMobileFocus : onInputClick,\n leftIcon,\n rightIcon,\n value: textValue || '',\n onKeyDown: onInputKeyDown,\n placeholder,\n width: '100%',\n ref: this.refInput,\n warning,\n inputMode,\n autoComplete: 'off',\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': this.menuId,\n 'aria-label': ariaLabel,\n showClearIcon,\n size: this.size,\n };\n\n const multilineTextareaProps = {\n autoResize: true,\n rows: 1,\n extraRow: false,\n maxRows: this.props.maxRows,\n };\n\n if (this.props.viewMode === 'multiline' && !mask) {\n return <InternalTextareaWithLayout {...inputProps} {...multilineTextareaProps} />;\n }\n\n if (editing) {\n if (mask) {\n return (\n <MaskedInput\n {...inputProps}\n type=\"text\"\n mask={mask}\n maskChar={maskChar}\n formatChars={formatChars}\n onBeforePasteValue={onBeforePasteInMask}\n />\n );\n }\n\n if (this.props.viewMode === 'multiline-editing') {\n return <InternalTextareaWithLayout {...inputProps} {...multilineTextareaProps} />;\n }\n\n return <Input {...inputProps} />;\n }\n\n const { renderValue } = this.getProps();\n return (\n <InputLikeText\n id={id}\n align={align}\n borderless={borderless}\n error={error}\n onFocus={onFocus}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n disabled={disabled}\n warning={warning}\n placeholder={placeholder}\n size={this.size}\n width=\"100%\"\n ref={refInputLikeText}\n aria-describedby={ariaDescribedby}\n aria-controls={this.menuId}\n showClearIcon={showClearIcon}\n className={cx(mask && MaskedInputStyles.root(this.theme))}\n onClearCrossClick={this.props.onClearCrossClick}\n >\n {isNonNullable(value) && renderValue ? renderValue(value) : null}\n </InputLikeText>\n );\n }\n\n private handleMobileFocus = () => {\n this.props.onInputClick?.();\n\n this.mobileInput?.focus();\n };\n\n private handleItemSelect = (item: T) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(item);\n }\n\n if (this.isMobileLayout) {\n this.props.onMobileClose?.();\n }\n };\n\n private refInput = (input: Nullable<Input | InternalTextareaWithLayout>) => {\n if (this.props.refInput) {\n this.props.refInput(input);\n }\n this.input = input;\n };\n\n private renderSpinner = () => (\n <span className={styles.spinnerWrapper()}>\n <Spinner type=\"mini\" caption=\"\" dimmed />\n </span>\n );\n\n private getRightIcon = () => {\n const { loading, items, drawArrow, rightIcon } = this.props;\n const size = this.size;\n\n if (loading && items && !!items.length) {\n return <LoadingIcon size={size} />;\n }\n\n if (rightIcon || drawArrow) {\n return rightIcon || <ArrowDownIcon size={size} />;\n }\n\n return null;\n };\n\n private refMobileInput = (input: Nullable<Input>) => {\n this.mobileInput = input;\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,12 +6,14 @@ import type { Menu } from '../Menu';
|
|
|
6
6
|
import type { InputLikeText } from '../InputLikeText';
|
|
7
7
|
import type { MenuItemState } from '../../components/MenuItem';
|
|
8
8
|
import type { CommonProps } from '../CommonWrapper';
|
|
9
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
9
10
|
import type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox';
|
|
10
11
|
import type { SizeProp } from '../../lib/types/props';
|
|
12
|
+
import type { MaskedInputOnBeforePasteValue, MaskedInputProps } from '../../components/MaskedInput';
|
|
11
13
|
import type { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout';
|
|
12
14
|
import { ComboBoxRequestStatus } from './CustomComboBoxTypes';
|
|
13
15
|
export * from './tids';
|
|
14
|
-
export interface CustomComboBoxProps<T> extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>, Pick<HTMLAttributes<HTMLElement>, 'id'>, CommonProps {
|
|
16
|
+
export interface CustomComboBoxProps<T> extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>, Pick<HTMLAttributes<HTMLElement>, 'id'>, CommonProps, Partial<Pick<MaskedInputProps, 'mask' | 'maskChar' | 'formatChars'>> {
|
|
15
17
|
align?: 'left' | 'center' | 'right';
|
|
16
18
|
autoFocus?: boolean;
|
|
17
19
|
borderless?: boolean;
|
|
@@ -61,7 +63,9 @@ export interface CustomComboBoxProps<T> extends Pick<AriaAttributes, 'aria-descr
|
|
|
61
63
|
itemToValue: (item: T) => string | number;
|
|
62
64
|
getItems: (query: string) => Promise<Array<ComboBoxExtendedItem<T>>>;
|
|
63
65
|
inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];
|
|
66
|
+
onBeforePasteInMask?: MaskedInputOnBeforePasteValue;
|
|
64
67
|
viewMode?: ComboBoxViewMode;
|
|
68
|
+
maxRows?: number;
|
|
65
69
|
}
|
|
66
70
|
export interface CustomComboBoxState<T> {
|
|
67
71
|
editing: boolean;
|
|
@@ -86,7 +90,6 @@ export declare const DefaultState: {
|
|
|
86
90
|
textValue: string;
|
|
87
91
|
repeatRequest: () => undefined;
|
|
88
92
|
requestStatus: ComboBoxRequestStatus;
|
|
89
|
-
size: string;
|
|
90
93
|
};
|
|
91
94
|
export declare class CustomComboBox<T> extends React.PureComponent<CustomComboBoxProps<T>, CustomComboBoxState<T>> {
|
|
92
95
|
static __KONTUR_REACT_UI__: string;
|
|
@@ -118,7 +121,9 @@ export declare class CustomComboBox<T> extends React.PureComponent<CustomComboBo
|
|
|
118
121
|
* @public
|
|
119
122
|
*/
|
|
120
123
|
blur: () => void;
|
|
124
|
+
getRootNode: TGetRootNode;
|
|
121
125
|
private setRootNode;
|
|
126
|
+
private size;
|
|
122
127
|
/**
|
|
123
128
|
* @public
|
|
124
129
|
*/
|
|
@@ -21,6 +21,8 @@ var _rootNode = require("../../lib/rootNode");
|
|
|
21
21
|
var _featureFlagsContext = require("../../lib/featureFlagsContext");
|
|
22
22
|
|
|
23
23
|
|
|
24
|
+
var _SizeDecorator = require("../../lib/size/SizeDecorator");
|
|
25
|
+
|
|
24
26
|
var _CustomComboBoxTypes = require("./CustomComboBoxTypes");
|
|
25
27
|
|
|
26
28
|
var _CustomComboBoxReducer = require("./CustomComboBoxReducer");
|
|
@@ -92,6 +94,9 @@ var _tids = require("./tids");Object.keys(_tids).forEach(function (key) {if (key
|
|
|
92
94
|
|
|
93
95
|
|
|
94
96
|
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
|
|
95
100
|
|
|
96
101
|
|
|
97
102
|
|
|
@@ -108,13 +113,13 @@ var DefaultState = exports.DefaultState = {
|
|
|
108
113
|
focused: false,
|
|
109
114
|
textValue: '',
|
|
110
115
|
repeatRequest: function repeatRequest() {return undefined;},
|
|
111
|
-
requestStatus: _CustomComboBoxTypes.ComboBoxRequestStatus.Unknown
|
|
112
|
-
size: 'small'
|
|
116
|
+
requestStatus: _CustomComboBoxTypes.ComboBoxRequestStatus.Unknown
|
|
113
117
|
};var
|
|
114
118
|
|
|
115
119
|
|
|
116
120
|
|
|
117
|
-
|
|
121
|
+
|
|
122
|
+
CustomComboBox = exports.CustomComboBox = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class = (0, _SizeDecorator.withSize)(_class = (_CustomComboBox = /*#__PURE__*/function (_React$PureComponent) {function CustomComboBox() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;_this.
|
|
118
123
|
|
|
119
124
|
|
|
120
125
|
|
|
@@ -365,6 +370,13 @@ CustomComboBox = exports.CustomComboBox = (0, _decorator.responsiveLayout)(_clas
|
|
|
365
370
|
|
|
366
371
|
|
|
367
372
|
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
|
|
379
|
+
|
|
368
380
|
|
|
369
381
|
|
|
370
382
|
|
|
@@ -477,6 +489,6 @@ CustomComboBox = exports.CustomComboBox = (0, _decorator.responsiveLayout)(_clas
|
|
|
477
489
|
* @public
|
|
478
490
|
*/;_proto.open = function open() {this.dispatch({ type: 'Open' });} /**
|
|
479
491
|
* @public
|
|
480
|
-
*/;_proto.close = function close() {this.dispatch({ type: 'Close' });};_proto.render = function render() {var _this3 = this;var viewProps = { align: this.props.align, borderless: this.props.borderless, disabled: this.props.disabled, disablePortal: this.props.disablePortal, editing: this.state.editing, error: this.props.error, items: this.state.items, loading: this.state.loading, opened: this.state.opened, drawArrow: this.props.drawArrow, menuPos: this.props.menuPos, menuAlign: this.props.menuAlign, placeholder: this.props.placeholder, size: this.
|
|
492
|
+
*/;_proto.close = function close() {this.dispatch({ type: 'Close' });};_proto.render = function render() {var _this3 = this;var viewProps = { align: this.props.align, borderless: this.props.borderless, disabled: this.props.disabled, disablePortal: this.props.disablePortal, editing: this.state.editing, error: this.props.error, items: this.state.items, loading: this.state.loading, opened: this.state.opened, drawArrow: this.props.drawArrow, menuPos: this.props.menuPos, menuAlign: this.props.menuAlign, placeholder: this.props.placeholder, size: this.size, textValue: this.state.textValue, totalCount: this.props.totalCount, value: this.props.value, showClearIcon: this.props.showClearIcon, warning: this.props.warning, 'aria-describedby': this.props['aria-describedby'], 'aria-label': this.props['aria-label'], id: this.props.id, width: this.props.width, maxLength: this.props.maxLength, maxMenuHeight: this.props.maxMenuHeight, leftIcon: this.props.leftIcon, rightIcon: this.props.rightIcon, inputMode: this.props.inputMode, mask: this.props.mask, maskChar: this.props.maskChar, formatChars: this.props.formatChars, onBeforePasteInMask: this.props.onBeforePasteInMask, onValueChange: this.handleValueChange, onClickOutside: this.handleClickOutside, onFocus: this.handleFocus, onMobileClose: this.handleMobileClose, onFocusOutside: this.handleBlur, onInputBlur: this.handleInputBlur, onInputValueChange: function onInputValueChange(value) {return _this3.dispatch({ type: 'TextChange', value: value });}, onInputFocus: this.handleFocus, onInputClick: this.handleInputClick, onClearCrossClick: function onClearCrossClick() {return _this3.dispatch({ type: 'ClearCrossClick' });}, onInputKeyDown: function onInputKeyDown(event) {event.persist();_this3.dispatch({ type: 'KeyPress', event: event });}, onMouseEnter: this.props.onMouseEnter, onMouseOver: this.props.onMouseOver, onMouseLeave: this.props.onMouseLeave, renderItem: this.props.renderItem, renderNotFound: this.props.renderNotFound, itemWrapper: this.props.itemWrapper, renderValue: this.props.renderValue, renderTotalCount: this.props.renderTotalCount, renderAddButton: this.props.renderAddButton, repeatRequest: this.state.repeatRequest, requestStatus: this.state.requestStatus, refInput: function refInput(input) {_this3.input = input;}, refMenu: function refMenu(menu) {_this3.menu = menu;}, refInputLikeText: function refInputLikeText(inputLikeText) {_this3.inputLikeText = inputLikeText;}, viewMode: this.props.viewMode, maxRows: this.props.maxRows };return /*#__PURE__*/_react.default.createElement(_featureFlagsContext.ReactUIFeatureFlagsContext.Consumer, null, function (flags) {_this3.featureFlags = (0, _featureFlagsContext.getFullReactUIFlagsContext)(flags);return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, _this3.props, /*#__PURE__*/_react.default.createElement(_ComboBoxView.ComboBoxView, (0, _extends2.default)({}, viewProps, { size: _this3.size, ref: _this3.setRootNode })));});};_proto.componentDidMount = function componentDidMount() {this.dispatch({ type: 'Mount' }, false);if (this.props.autoFocus) {this.focus();}};_proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {if (prevState.editing && !this.state.editing) {this.handleBlur();}this.dispatch({ type: 'DidUpdate', prevProps: prevProps, prevState: prevState, fixValueChange: this.featureFlags.comboBoxAllowValueChangeInEditingState }, false);} /**
|
|
481
493
|
* @public
|
|
482
|
-
*/;_proto.reset = function reset() {this.dispatch({ type: 'Reset' });};return CustomComboBox;}(_react.default.PureComponent), _CustomComboBox.__KONTUR_REACT_UI__ = 'CustomComboBox', _CustomComboBox.displayName = 'CustomComboBox', _CustomComboBox)) || _class) || _class;
|
|
494
|
+
*/;_proto.reset = function reset() {this.dispatch({ type: 'Reset' });};return CustomComboBox;}(_react.default.PureComponent), _CustomComboBox.__KONTUR_REACT_UI__ = 'CustomComboBox', _CustomComboBox.displayName = 'CustomComboBox', _CustomComboBox)) || _class) || _class) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_reactDom","_globalObject","_utils","_fixClickFocusIE","_CommonWrapper","_decorator","_rootNode","_featureFlagsContext","_CustomComboBoxTypes","_CustomComboBoxReducer","_ComboBoxView","_tids","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_class","_CustomComboBox","DELAY_BEFORE_SHOW_LOADER","LOADER_SHOW_TIME","DefaultState","inputChanged","editing","items","loading","opened","focused","textValue","repeatRequest","undefined","requestStatus","ComboBoxRequestStatus","Unknown","size","CustomComboBox","responsiveLayout","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","apply","concat","state","requestId","cancelationToken","canOpenPopup","reducer","cancelLoaderDelay","focus","opts","props","disabled","withoutOpenDropdown","input","inputLikeText","selectInputText","selectAll","blur","handleBlur","dispatch","action","sync","updateState","effects","nextState","setState","stateAndEffect","_ref","handleEffect","React","version","search","ReactDOM","flushSync","effect","getState","getProps","handleValueChange","value","type","keepFocus","isMobileLayout","handleFocus","searchOnFocus","handleMobileClose","handleInputBlur","handleClickOutside","e","fixClickFocusIE","close","globalObject","setTimeout","handleInputClick","_inheritsLoose2","default","_proto","_search","_asyncToGenerator2","_regenerator","mark","_callee","query","_this2","getItems","cancelPromise","expectingId","wrap","_callee$","_context","prev","next","Promise","_","reject","loaderShowDelay","resolve","cancelLoader","taskWithDelay","catch","race","sent","t0","code","finish","stop","_x","cancelSearch","CancelationError","open","render","_this3","viewProps","align","borderless","disablePortal","error","drawArrow","menuPos","menuAlign","placeholder","totalCount","showClearIcon","warning","id","width","maxLength","maxMenuHeight","leftIcon","rightIcon","inputMode","onValueChange","onClickOutside","onFocus","onMobileClose","onFocusOutside","onInputBlur","onInputValueChange","onInputFocus","onInputClick","onClearCrossClick","onInputKeyDown","event","persist","onMouseEnter","onMouseOver","onMouseLeave","renderItem","renderNotFound","itemWrapper","renderValue","renderTotalCount","renderAddButton","refInput","refMenu","menu","refInputLikeText","viewMode","createElement","ReactUIFeatureFlagsContext","Consumer","flags","featureFlags","getFullReactUIFlagsContext","CommonWrapper","ComboBoxView","_extends2","ref","setRootNode","componentDidMount","autoFocus","componentDidUpdate","prevProps","prevState","fixValueChange","comboBoxAllowValueChangeInEditingState","reset","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["CustomComboBox.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { Nullable } from '../../typings/utility-types';\nimport type { InputIconType, Input, ShowClearIcon } from '../../components/Input';\nimport type { Menu } from '../Menu';\nimport type { InputLikeText } from '../InputLikeText';\nimport type { MenuItemState } from '../../components/MenuItem';\nimport { CancelationError, taskWithDelay } from '../../lib/utils';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox';\nimport type { SizeProp } from '../../lib/types/props';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { ReactUIFeatureFlagsContext, getFullReactUIFlagsContext } from '../../lib/featureFlagsContext';\nimport type { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout';\n\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport type { CustomComboBoxAction, CustomComboBoxEffect } from './CustomComboBoxReducer';\nimport { reducer } from './CustomComboBoxReducer';\nimport { ComboBoxView } from './ComboBoxView';\n\nexport * from './tids';\n\nexport interface CustomComboBoxProps<T>\n extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n maxLength?: number;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n drawArrow?: boolean;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n searchOnFocus?: boolean;\n onValueChange?: (value: T) => void;\n onInputValueChange?: (value: string) => Nullable<string> | void;\n onUnexpectedInput?: (value: string) => void | null | T;\n onFocus?: () => void;\n onBlur?: () => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n onInputKeyDown?: (e: React.KeyboardEvent<HTMLElement>) => void;\n placeholder?: string;\n size?: SizeProp;\n totalCount?: number;\n value?: Nullable<T>;\n showClearIcon?: ShowClearIcon;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxMenuHeight?: number | string;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderItem: (item: T, state?: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType;\n renderValue: (value: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n valueToString: (value: T) => string;\n itemToValue: (item: T) => string | number;\n getItems: (query: string) => Promise<Array<ComboBoxExtendedItem<T>>>;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n viewMode?: ComboBoxViewMode;\n}\n\nexport interface CustomComboBoxState<T> {\n editing: boolean;\n loading: boolean;\n opened: boolean;\n textValue: string;\n items: Nullable<Array<ComboBoxExtendedItem<T>>>;\n inputChanged: boolean;\n focused: boolean;\n repeatRequest: () => void;\n requestStatus: ComboBoxRequestStatus;\n}\n\nexport const DELAY_BEFORE_SHOW_LOADER = 300;\nexport const LOADER_SHOW_TIME = 1000;\n\nexport const DefaultState = {\n inputChanged: false,\n editing: false,\n items: null,\n loading: false,\n opened: false,\n focused: false,\n textValue: '',\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n size: 'small',\n};\n\n@responsiveLayout\n@rootNode\nexport class CustomComboBox<T> extends React.PureComponent<CustomComboBoxProps<T>, CustomComboBoxState<T>> {\n public static __KONTUR_REACT_UI__ = 'CustomComboBox';\n public static displayName = 'CustomComboBox';\n\n public state: CustomComboBoxState<T> = DefaultState;\n public input: Nullable<Input | InternalTextareaWithLayout>;\n public menu: Nullable<Menu>;\n public inputLikeText: Nullable<InputLikeText>;\n public requestId = 0;\n public loaderShowDelay: Nullable<Promise<void>>;\n private focused = false;\n private cancelationToken: Nullable<(reason?: Error) => void> = null;\n private isMobileLayout!: boolean;\n private featureFlags!: ReactUIFeatureFlags;\n private canOpenPopup = true;\n\n private reducer = reducer;\n public cancelLoaderDelay: () => void = () => null;\n\n /**\n * @public\n */\n public focus = (opts?: { withoutOpenDropdown?: boolean }) => {\n if (this.props.disabled) {\n return;\n }\n\n if (opts?.withoutOpenDropdown) {\n this.canOpenPopup = false;\n }\n\n if (this.input) {\n this.input.focus();\n } else if (this.inputLikeText) {\n this.inputLikeText.focus();\n }\n };\n\n /**\n * @public\n */\n public selectInputText = () => {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.selectAll();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.handleBlur();\n };\n private setRootNode!: TSetRootNode;\n\n /**\n * @public\n */\n public async search(query: string = this.state.textValue) {\n const { getItems } = this.props;\n\n const cancelPromise: Promise<never> = new Promise((_, reject) => (this.cancelationToken = reject));\n this.requestId += 1;\n const expectingId = this.requestId;\n\n if (!this.loaderShowDelay) {\n this.loaderShowDelay = new Promise<void>((resolve) => {\n const cancelLoader = taskWithDelay(() => {\n this.dispatch({ type: 'RequestItems' });\n globalObject.setTimeout(resolve, LOADER_SHOW_TIME);\n }, DELAY_BEFORE_SHOW_LOADER);\n\n cancelPromise.catch(() => cancelLoader());\n\n this.cancelLoaderDelay = () => {\n cancelLoader();\n resolve();\n };\n });\n }\n\n try {\n const items = await Promise.race([getItems(query), cancelPromise]);\n if (this.state.loading) {\n await Promise.race([this.loaderShowDelay, cancelPromise]);\n }\n if (expectingId === this.requestId) {\n this.dispatch({\n type: 'ReceiveItems',\n items,\n });\n }\n } catch (error) {\n if (error && error.code === 'CancelationError') {\n this.dispatch({ type: 'CancelRequest' });\n } else if (expectingId === this.requestId) {\n this.dispatch({\n type: 'RequestFailure',\n repeatRequest: () => {\n this.search(query);\n if (this.input) {\n this.input.focus();\n }\n },\n });\n }\n } finally {\n if (expectingId === this.requestId) {\n if (!this.state.loading) {\n this.cancelLoaderDelay();\n }\n this.cancelationToken = null;\n this.loaderShowDelay = null;\n }\n }\n }\n\n /**\n * @public\n */\n public cancelSearch() {\n if (this.cancelationToken) {\n this.cancelationToken(new CancelationError());\n }\n }\n\n /**\n * @public\n */\n public open() {\n this.dispatch({ type: 'Open' });\n }\n\n /**\n * @public\n */\n public close() {\n this.dispatch({ type: 'Close' });\n }\n\n public render() {\n const viewProps = {\n align: this.props.align,\n borderless: this.props.borderless,\n disabled: this.props.disabled,\n disablePortal: this.props.disablePortal,\n editing: this.state.editing,\n error: this.props.error,\n items: this.state.items,\n loading: this.state.loading,\n opened: this.state.opened,\n drawArrow: this.props.drawArrow,\n menuPos: this.props.menuPos,\n menuAlign: this.props.menuAlign,\n placeholder: this.props.placeholder,\n size: this.props.size,\n textValue: this.state.textValue,\n totalCount: this.props.totalCount,\n value: this.props.value,\n showClearIcon: this.props.showClearIcon,\n warning: this.props.warning,\n 'aria-describedby': this.props['aria-describedby'],\n 'aria-label': this.props['aria-label'],\n id: this.props.id,\n width: this.props.width,\n maxLength: this.props.maxLength,\n maxMenuHeight: this.props.maxMenuHeight,\n leftIcon: this.props.leftIcon,\n rightIcon: this.props.rightIcon,\n inputMode: this.props.inputMode,\n\n onValueChange: this.handleValueChange,\n onClickOutside: this.handleClickOutside,\n onFocus: this.handleFocus,\n onMobileClose: this.handleMobileClose,\n onFocusOutside: this.handleBlur,\n onInputBlur: this.handleInputBlur,\n onInputValueChange: (value: string) => this.dispatch({ type: 'TextChange', value }),\n onInputFocus: this.handleFocus,\n onInputClick: this.handleInputClick,\n onClearCrossClick: () => this.dispatch({ type: 'ClearCrossClick' }),\n onInputKeyDown: (event: React.KeyboardEvent) => {\n event.persist();\n this.dispatch({ type: 'KeyPress', event });\n },\n onMouseEnter: this.props.onMouseEnter,\n onMouseOver: this.props.onMouseOver,\n onMouseLeave: this.props.onMouseLeave,\n renderItem: this.props.renderItem,\n renderNotFound: this.props.renderNotFound,\n itemWrapper: this.props.itemWrapper,\n renderValue: this.props.renderValue,\n renderTotalCount: this.props.renderTotalCount,\n renderAddButton: this.props.renderAddButton,\n repeatRequest: this.state.repeatRequest,\n requestStatus: this.state.requestStatus,\n\n refInput: (input: Nullable<Input | InternalTextareaWithLayout>) => {\n this.input = input;\n },\n refMenu: (menu: Nullable<Menu>) => {\n this.menu = menu;\n },\n refInputLikeText: (inputLikeText: Nullable<InputLikeText>) => {\n this.inputLikeText = inputLikeText;\n },\n viewMode: this.props.viewMode,\n };\n\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <CommonWrapper {...this.props}>\n <ComboBoxView {...viewProps} size={this.props.size} ref={this.setRootNode} />\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public componentDidMount() {\n this.dispatch({ type: 'Mount' }, false);\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate(prevProps: CustomComboBoxProps<T>, prevState: CustomComboBoxState<T>) {\n if (prevState.editing && !this.state.editing) {\n this.handleBlur();\n }\n this.dispatch(\n {\n type: 'DidUpdate',\n prevProps,\n prevState,\n fixValueChange: this.featureFlags.comboBoxAllowValueChangeInEditingState,\n },\n false,\n );\n }\n\n /**\n * @public\n */\n public reset() {\n this.dispatch({ type: 'Reset' });\n }\n\n private dispatch = (action: CustomComboBoxAction<T>, sync = true) => {\n const updateState = (action: CustomComboBoxAction<T>) => {\n let effects: Array<CustomComboBoxEffect<T>>;\n let nextState: Pick<CustomComboBoxState<T>, never>;\n\n this.setState(\n (state) => {\n const stateAndEffect = this.reducer(state, this.props, action);\n [nextState, effects] = stateAndEffect instanceof Array ? stateAndEffect : [stateAndEffect, []];\n return nextState;\n },\n () => {\n effects.forEach(this.handleEffect);\n },\n );\n };\n\n // Auto-batching React@18 creates problems that are fixed with flushSync\n // https://github.com/skbkontur/retail-ui/pull/3144#issuecomment-1535235366\n if (sync && React.version.search('18') === 0) {\n ReactDOM.flushSync(() => updateState(action));\n } else {\n updateState(action);\n }\n };\n\n private handleEffect = (effect: CustomComboBoxEffect<T>) => {\n effect(this.dispatch, this.getState, this.getProps, () => this);\n };\n\n private getProps = () => this.props;\n\n private getState = () => this.state;\n\n private handleValueChange = (value: T) => {\n this.dispatch({\n type: 'ValueChange',\n value,\n keepFocus: !this.isMobileLayout,\n });\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n this.dispatch({ type: 'Focus', searchOnFocus: this.canOpenPopup && this.props.searchOnFocus });\n\n if (!this.canOpenPopup) {\n this.canOpenPopup = true;\n }\n };\n\n private handleMobileClose = () => {\n this.handleInputBlur();\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n if (this.state.opened) {\n this.close();\n }\n return;\n }\n\n this.focused = false;\n // workaround for the similar bug with focusout\n // in Firefox, Chrome and IE\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1363964\n globalObject.setTimeout(() => {\n this.dispatch({ type: 'Blur' });\n }, 0);\n };\n\n private handleInputBlur = () => {\n // If menu opened, RenderLayer is active and\n // it would call handleFocusOutside\n // In that way handleBlur would be called\n\n if (this.state.opened && !this.isMobileLayout) {\n return;\n }\n this.handleBlur();\n };\n\n private handleInputClick = () => {\n if (!this.cancelationToken) {\n this.dispatch({ type: 'InputClick' });\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactDom","_globalObject","_utils","_fixClickFocusIE","_CommonWrapper","_decorator","_rootNode","_featureFlagsContext","_SizeDecorator","_CustomComboBoxTypes","_CustomComboBoxReducer","_ComboBoxView","_tids","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","_class","_CustomComboBox","DELAY_BEFORE_SHOW_LOADER","LOADER_SHOW_TIME","DefaultState","inputChanged","editing","items","loading","opened","focused","textValue","repeatRequest","undefined","requestStatus","ComboBoxRequestStatus","Unknown","CustomComboBox","responsiveLayout","rootNode","withSize","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","apply","concat","state","requestId","cancelationToken","canOpenPopup","reducer","cancelLoaderDelay","focus","opts","props","disabled","withoutOpenDropdown","input","inputLikeText","selectInputText","selectAll","blur","handleBlur","dispatch","action","sync","updateState","effects","nextState","setState","stateAndEffect","_ref","handleEffect","React","version","search","ReactDOM","flushSync","effect","getState","getProps","handleValueChange","value","type","keepFocus","isMobileLayout","handleFocus","searchOnFocus","handleMobileClose","handleInputBlur","handleClickOutside","e","fixClickFocusIE","close","globalObject","setTimeout","handleInputClick","_inheritsLoose2","default","_proto","_search","_asyncToGenerator2","_regenerator","mark","_callee","query","_this2","getItems","cancelPromise","expectingId","wrap","_callee$","_context","prev","next","Promise","_","reject","loaderShowDelay","resolve","cancelLoader","taskWithDelay","catch","race","sent","t0","code","finish","stop","_x","cancelSearch","CancelationError","open","render","_this3","viewProps","align","borderless","disablePortal","error","drawArrow","menuPos","menuAlign","placeholder","size","totalCount","showClearIcon","warning","id","width","maxLength","maxMenuHeight","leftIcon","rightIcon","inputMode","mask","maskChar","formatChars","onBeforePasteInMask","onValueChange","onClickOutside","onFocus","onMobileClose","onFocusOutside","onInputBlur","onInputValueChange","onInputFocus","onInputClick","onClearCrossClick","onInputKeyDown","event","persist","onMouseEnter","onMouseOver","onMouseLeave","renderItem","renderNotFound","itemWrapper","renderValue","renderTotalCount","renderAddButton","refInput","refMenu","menu","refInputLikeText","viewMode","maxRows","createElement","ReactUIFeatureFlagsContext","Consumer","flags","featureFlags","getFullReactUIFlagsContext","CommonWrapper","ComboBoxView","_extends2","ref","setRootNode","componentDidMount","autoFocus","componentDidUpdate","prevProps","prevState","fixValueChange","comboBoxAllowValueChangeInEditingState","reset","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["CustomComboBox.tsx"],"sourcesContent":["import type { AriaAttributes, HTMLAttributes } from 'react';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { Nullable } from '../../typings/utility-types';\nimport type { InputIconType, Input, ShowClearIcon } from '../../components/Input';\nimport type { Menu } from '../Menu';\nimport type { InputLikeText } from '../InputLikeText';\nimport type { MenuItemState } from '../../components/MenuItem';\nimport { CancelationError, taskWithDelay } from '../../lib/utils';\nimport { fixClickFocusIE } from '../../lib/events/fixClickFocusIE';\nimport type { CommonProps } from '../CommonWrapper';\nimport { CommonWrapper } from '../CommonWrapper';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { ComboBoxExtendedItem, ComboBoxViewMode } from '../../components/ComboBox';\nimport type { SizeProp } from '../../lib/types/props';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { ReactUIFeatureFlagsContext, getFullReactUIFlagsContext } from '../../lib/featureFlagsContext';\nimport type { MaskedInputOnBeforePasteValue, MaskedInputProps } from '../../components/MaskedInput';\nimport type { InternalTextareaWithLayout } from '../InternalTextareaWithLayout/InternalTextareaWithLayout';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport { ComboBoxRequestStatus } from './CustomComboBoxTypes';\nimport type { CustomComboBoxAction, CustomComboBoxEffect } from './CustomComboBoxReducer';\nimport { reducer } from './CustomComboBoxReducer';\nimport { ComboBoxView } from './ComboBoxView';\n\nexport * from './tids';\n\nexport interface CustomComboBoxProps<T>\n extends Pick<AriaAttributes, 'aria-describedby' | 'aria-label'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps,\n Partial<Pick<MaskedInputProps, 'mask' | 'maskChar' | 'formatChars'>> {\n align?: 'left' | 'center' | 'right';\n autoFocus?: boolean;\n borderless?: boolean;\n disablePortal?: boolean;\n disabled?: boolean;\n /**\n * Cостояние валидации при ошибке.\n */\n error?: boolean;\n maxLength?: number;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n drawArrow?: boolean;\n leftIcon?: InputIconType;\n rightIcon?: InputIconType;\n searchOnFocus?: boolean;\n onValueChange?: (value: T) => void;\n onInputValueChange?: (value: string) => Nullable<string> | void;\n onUnexpectedInput?: (value: string) => void | null | T;\n onFocus?: () => void;\n onBlur?: () => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseOver?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n onInputKeyDown?: (e: React.KeyboardEvent<HTMLElement>) => void;\n placeholder?: string;\n size?: SizeProp;\n totalCount?: number;\n value?: Nullable<T>;\n showClearIcon?: ShowClearIcon;\n /**\n * Cостояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: string | number;\n maxMenuHeight?: number | string;\n renderNotFound?: () => React.ReactNode;\n renderTotalCount?: (found: number, total: number) => React.ReactNode;\n renderItem: (item: T, state?: MenuItemState) => React.ReactNode;\n itemWrapper?: (item: T) => React.ComponentType;\n renderValue: (value: T) => React.ReactNode;\n renderAddButton?: (query?: string) => React.ReactNode;\n valueToString: (value: T) => string;\n itemToValue: (item: T) => string | number;\n getItems: (query: string) => Promise<Array<ComboBoxExtendedItem<T>>>;\n inputMode?: React.HTMLAttributes<HTMLInputElement>['inputMode'];\n onBeforePasteInMask?: MaskedInputOnBeforePasteValue;\n viewMode?: ComboBoxViewMode;\n maxRows?: number;\n}\n\nexport interface CustomComboBoxState<T> {\n editing: boolean;\n loading: boolean;\n opened: boolean;\n textValue: string;\n items: Nullable<Array<ComboBoxExtendedItem<T>>>;\n inputChanged: boolean;\n focused: boolean;\n repeatRequest: () => void;\n requestStatus: ComboBoxRequestStatus;\n}\n\nexport const DELAY_BEFORE_SHOW_LOADER = 300;\nexport const LOADER_SHOW_TIME = 1000;\n\nexport const DefaultState = {\n inputChanged: false,\n editing: false,\n items: null,\n loading: false,\n opened: false,\n focused: false,\n textValue: '',\n repeatRequest: () => undefined,\n requestStatus: ComboBoxRequestStatus.Unknown,\n};\n\n@responsiveLayout\n@rootNode\n@withSize\nexport class CustomComboBox<T> extends React.PureComponent<CustomComboBoxProps<T>, CustomComboBoxState<T>> {\n public static __KONTUR_REACT_UI__ = 'CustomComboBox';\n public static displayName = 'CustomComboBox';\n\n public state: CustomComboBoxState<T> = DefaultState;\n public input: Nullable<Input | InternalTextareaWithLayout>;\n public menu: Nullable<Menu>;\n public inputLikeText: Nullable<InputLikeText>;\n public requestId = 0;\n public loaderShowDelay: Nullable<Promise<void>>;\n private focused = false;\n private cancelationToken: Nullable<(reason?: Error) => void> = null;\n private isMobileLayout!: boolean;\n private featureFlags!: ReactUIFeatureFlags;\n private canOpenPopup = true;\n\n private reducer = reducer;\n public cancelLoaderDelay: () => void = () => null;\n\n /**\n * @public\n */\n public focus = (opts?: { withoutOpenDropdown?: boolean }) => {\n if (this.props.disabled) {\n return;\n }\n\n if (opts?.withoutOpenDropdown) {\n this.canOpenPopup = false;\n }\n\n if (this.input) {\n this.input.focus();\n } else if (this.inputLikeText) {\n this.inputLikeText.focus();\n }\n };\n\n /**\n * @public\n */\n public selectInputText = () => {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.selectAll();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.props.disabled) {\n return;\n }\n\n this.handleBlur();\n };\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private size!: SizeProp;\n\n /**\n * @public\n */\n public async search(query: string = this.state.textValue) {\n const { getItems } = this.props;\n\n const cancelPromise: Promise<never> = new Promise((_, reject) => (this.cancelationToken = reject));\n this.requestId += 1;\n const expectingId = this.requestId;\n\n if (!this.loaderShowDelay) {\n this.loaderShowDelay = new Promise<void>((resolve) => {\n const cancelLoader = taskWithDelay(() => {\n this.dispatch({ type: 'RequestItems' });\n globalObject.setTimeout(resolve, LOADER_SHOW_TIME);\n }, DELAY_BEFORE_SHOW_LOADER);\n\n cancelPromise.catch(() => cancelLoader());\n\n this.cancelLoaderDelay = () => {\n cancelLoader();\n resolve();\n };\n });\n }\n\n try {\n const items = await Promise.race([getItems(query), cancelPromise]);\n if (this.state.loading) {\n await Promise.race([this.loaderShowDelay, cancelPromise]);\n }\n if (expectingId === this.requestId) {\n this.dispatch({\n type: 'ReceiveItems',\n items,\n });\n }\n } catch (error) {\n if (error && error.code === 'CancelationError') {\n this.dispatch({ type: 'CancelRequest' });\n } else if (expectingId === this.requestId) {\n this.dispatch({\n type: 'RequestFailure',\n repeatRequest: () => {\n this.search(query);\n if (this.input) {\n this.input.focus();\n }\n },\n });\n }\n } finally {\n if (expectingId === this.requestId) {\n if (!this.state.loading) {\n this.cancelLoaderDelay();\n }\n this.cancelationToken = null;\n this.loaderShowDelay = null;\n }\n }\n }\n\n /**\n * @public\n */\n public cancelSearch() {\n if (this.cancelationToken) {\n this.cancelationToken(new CancelationError());\n }\n }\n\n /**\n * @public\n */\n public open() {\n this.dispatch({ type: 'Open' });\n }\n\n /**\n * @public\n */\n public close() {\n this.dispatch({ type: 'Close' });\n }\n\n public render() {\n const viewProps = {\n align: this.props.align,\n borderless: this.props.borderless,\n disabled: this.props.disabled,\n disablePortal: this.props.disablePortal,\n editing: this.state.editing,\n error: this.props.error,\n items: this.state.items,\n loading: this.state.loading,\n opened: this.state.opened,\n drawArrow: this.props.drawArrow,\n menuPos: this.props.menuPos,\n menuAlign: this.props.menuAlign,\n placeholder: this.props.placeholder,\n size: this.size,\n textValue: this.state.textValue,\n totalCount: this.props.totalCount,\n value: this.props.value,\n showClearIcon: this.props.showClearIcon,\n warning: this.props.warning,\n 'aria-describedby': this.props['aria-describedby'],\n 'aria-label': this.props['aria-label'],\n id: this.props.id,\n width: this.props.width,\n maxLength: this.props.maxLength,\n maxMenuHeight: this.props.maxMenuHeight,\n leftIcon: this.props.leftIcon,\n rightIcon: this.props.rightIcon,\n inputMode: this.props.inputMode,\n mask: this.props.mask,\n maskChar: this.props.maskChar,\n formatChars: this.props.formatChars,\n onBeforePasteInMask: this.props.onBeforePasteInMask,\n\n onValueChange: this.handleValueChange,\n onClickOutside: this.handleClickOutside,\n onFocus: this.handleFocus,\n onMobileClose: this.handleMobileClose,\n onFocusOutside: this.handleBlur,\n onInputBlur: this.handleInputBlur,\n onInputValueChange: (value: string) => this.dispatch({ type: 'TextChange', value }),\n onInputFocus: this.handleFocus,\n onInputClick: this.handleInputClick,\n onClearCrossClick: () => this.dispatch({ type: 'ClearCrossClick' }),\n onInputKeyDown: (event: React.KeyboardEvent) => {\n event.persist();\n this.dispatch({ type: 'KeyPress', event });\n },\n onMouseEnter: this.props.onMouseEnter,\n onMouseOver: this.props.onMouseOver,\n onMouseLeave: this.props.onMouseLeave,\n renderItem: this.props.renderItem,\n renderNotFound: this.props.renderNotFound,\n itemWrapper: this.props.itemWrapper,\n renderValue: this.props.renderValue,\n renderTotalCount: this.props.renderTotalCount,\n renderAddButton: this.props.renderAddButton,\n repeatRequest: this.state.repeatRequest,\n requestStatus: this.state.requestStatus,\n\n refInput: (input: Nullable<Input | InternalTextareaWithLayout>) => {\n this.input = input;\n },\n refMenu: (menu: Nullable<Menu>) => {\n this.menu = menu;\n },\n refInputLikeText: (inputLikeText: Nullable<InputLikeText>) => {\n this.inputLikeText = inputLikeText;\n },\n viewMode: this.props.viewMode,\n maxRows: this.props.maxRows,\n };\n\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <CommonWrapper {...this.props}>\n <ComboBoxView {...viewProps} size={this.size} ref={this.setRootNode} />\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public componentDidMount() {\n this.dispatch({ type: 'Mount' }, false);\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate(prevProps: CustomComboBoxProps<T>, prevState: CustomComboBoxState<T>) {\n if (prevState.editing && !this.state.editing) {\n this.handleBlur();\n }\n this.dispatch(\n {\n type: 'DidUpdate',\n prevProps,\n prevState,\n fixValueChange: this.featureFlags.comboBoxAllowValueChangeInEditingState,\n },\n false,\n );\n }\n\n /**\n * @public\n */\n public reset() {\n this.dispatch({ type: 'Reset' });\n }\n\n private dispatch = (action: CustomComboBoxAction<T>, sync = true) => {\n const updateState = (action: CustomComboBoxAction<T>) => {\n let effects: Array<CustomComboBoxEffect<T>>;\n let nextState: Pick<CustomComboBoxState<T>, never>;\n\n this.setState(\n (state) => {\n const stateAndEffect = this.reducer(state, this.props, action);\n [nextState, effects] = stateAndEffect instanceof Array ? stateAndEffect : [stateAndEffect, []];\n return nextState;\n },\n () => {\n effects.forEach(this.handleEffect);\n },\n );\n };\n\n // Auto-batching React@18 creates problems that are fixed with flushSync\n // https://github.com/skbkontur/retail-ui/pull/3144#issuecomment-1535235366\n if (sync && React.version.search('18') === 0) {\n ReactDOM.flushSync(() => updateState(action));\n } else {\n updateState(action);\n }\n };\n\n private handleEffect = (effect: CustomComboBoxEffect<T>) => {\n effect(this.dispatch, this.getState, this.getProps, () => this);\n };\n\n private getProps = () => this.props;\n\n private getState = () => this.state;\n\n private handleValueChange = (value: T) => {\n this.dispatch({\n type: 'ValueChange',\n value,\n keepFocus: !this.isMobileLayout,\n });\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n this.dispatch({ type: 'Focus', searchOnFocus: this.canOpenPopup && this.props.searchOnFocus });\n\n if (!this.canOpenPopup) {\n this.canOpenPopup = true;\n }\n };\n\n private handleMobileClose = () => {\n this.handleInputBlur();\n };\n\n private handleClickOutside = (e: Event) => {\n fixClickFocusIE(e);\n this.handleBlur();\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n if (this.state.opened) {\n this.close();\n }\n return;\n }\n\n this.focused = false;\n // workaround for the similar bug with focusout\n // in Firefox, Chrome and IE\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1363964\n globalObject.setTimeout(() => {\n this.dispatch({ type: 'Blur' });\n }, 0);\n };\n\n private handleInputBlur = () => {\n // If menu opened, RenderLayer is active and\n // it would call handleFocusOutside\n // In that way handleBlur would be called\n\n if (this.state.opened && !this.isMobileLayout) {\n return;\n }\n this.handleBlur();\n };\n\n private handleInputClick = () => {\n if (!this.cancelationToken) {\n this.dispatch({ type: 'InputClick' });\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import type { Theme } from '../../lib/theming/Theme';
|
|
2
|
-
|
|
2
|
+
import type { ComboBoxViewMode } from '../../components/ComboBox';
|
|
3
|
+
export declare const getComboBoxTheme: (theme: Theme, viewMode?: ComboBoxViewMode) => Theme;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
"use strict";exports.__esModule = true;exports.getComboBoxTheme = void 0;var _ThemeFactory = require("../../lib/theming/ThemeFactory");
|
|
1
|
+
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.getComboBoxTheme = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _ThemeFactory = require("../../lib/theming/ThemeFactory");
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
theme
|
|
4
|
+
var _consts = require("../themes/consts");
|
|
5
|
+
|
|
6
|
+
var getComboBoxTheme = exports.getComboBoxTheme = function getComboBoxTheme(theme, viewMode) {
|
|
7
|
+
return _ThemeFactory.ThemeFactory.create((0, _extends2.default)({
|
|
8
|
+
|
|
9
|
+
menuOffsetY: theme.comboboxMenuOffsetY },
|
|
10
|
+
viewMode === 'multiline' || viewMode === 'multiline-editing' ? _consts.themeTokens5_4 : {}),
|
|
11
|
+
|
|
12
|
+
theme
|
|
10
13
|
);
|
|
11
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_ThemeFactory","require","getComboBoxTheme","exports","theme","ThemeFactory","create","menuOffsetY","comboboxMenuOffsetY"],"sources":["getComboBoxTheme.ts"],"sourcesContent":["import { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { Theme } from '../../lib/theming/Theme';\n\nexport const getComboBoxTheme = (theme: Theme): Theme => {\n return ThemeFactory.create(\n {\n menuOffsetY: theme.comboboxMenuOffsetY,\n },\n theme,\n );\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_ThemeFactory","require","_consts","getComboBoxTheme","exports","theme","viewMode","ThemeFactory","create","_extends2","default","menuOffsetY","comboboxMenuOffsetY","themeTokens5_4"],"sources":["getComboBoxTheme.ts"],"sourcesContent":["import { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { ComboBoxViewMode } from '../../components/ComboBox';\nimport { themeTokens5_4 } from '../themes/consts';\n\nexport const getComboBoxTheme = (theme: Theme, viewMode?: ComboBoxViewMode): Theme => {\n return ThemeFactory.create(\n {\n menuOffsetY: theme.comboboxMenuOffsetY,\n ...(viewMode === 'multiline' || viewMode === 'multiline-editing' ? themeTokens5_4 : {}),\n },\n theme,\n );\n};\n"],"mappings":"wPAAA,IAAAA,aAAA,GAAAC,OAAA;;;AAGA,IAAAC,OAAA,GAAAD,OAAA;;AAEO,IAAME,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,SAAnBA,gBAAgBA,CAAIE,KAAY,EAAEC,QAA2B,EAAY;EACpF,OAAOC,0BAAY,CAACC,MAAM,KAAAC,SAAA,CAAAC,OAAA;;IAEtBC,WAAW,EAAEN,KAAK,CAACO,mBAAmB;EAClCN,QAAQ,KAAK,WAAW,IAAIA,QAAQ,KAAK,mBAAmB,GAAGO,sBAAc,GAAG,CAAC,CAAC;;EAExFR;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -184,7 +184,7 @@ DateSelect = exports.DateSelect = (_dec = (0, _decorators.locale)('Calendar', _l
|
|
|
184
184
|
onClick: function onClick() {return onValueChange(option);},
|
|
185
185
|
"aria-label": "\u0412\u044B\u0431\u0440\u0430\u0442\u044C " + (_this.isYearType ? 'год' : 'месяц') + " " + _this.getItem(option),
|
|
186
186
|
"data-tid": DateSelectDataTids.menuItem,
|
|
187
|
-
"data-
|
|
187
|
+
"data-disabled": isOptionDisabled,
|
|
188
188
|
key: option },
|
|
189
189
|
|
|
190
190
|
_this.getItem(option)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_decorator","_utils","_locale","_decorators","_ThemeContext","_Emotion","_createPropsGetter","_Select","_MenuItem","_ArrowCollapseCVOpenIcon16Regular","_DateSelect2","_dec","_class","_DateSelect","defaultMinMonth","defaultMaxMonth","defaultMinYear","defaultMaxYear","months","range","years","start","end","Array","fill","map","_","index","DateSelectDataTids","exports","caption","menuItem","menu","DATE_SELECT_POSITIONS","DateSelect","locale","DatePickerLocaleHelper","responsiveLayout","_React$PureComponent","_this","_len","arguments","length","args","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","selectRef","createRef","menuId","getRandomID","renderButton","params","_this$props","props","value","disabled","width","isInteractiveElement","Tag","rootProps","className","cx","styles","root","theme","style","onClick","undefined","opened","selectChosenAriaLabel","type","selectYearAriaLabel","selectMonthAriaLabel","getItem","default","createElement","ArrowCollapseCVOpenIcon16Regular","globalClasses","arrow","color","getItems","_this$getProps","onValueChange","options","isYearType","option","isSelected","isOptionDisabled","MenuItem","scrollIntoView","state","key","_this$locale$months","_inheritsLoose2","_proto","prototype","render","_this2","ThemeContext","Consumer","renderMain","close","_this$selectRef$curre","current","_this$getProps2","btnBorderRadiusSmall","menuItemBorderRadius","Select","use","ref","_renderButton","menuPos","positions","renderValue","items","menuOffset","parseInt","menuPaddingX","menuItemPaddingXSmall","_this$getProps3","minValue","maxValue","isNonNullable","_createClass2","get","React","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["DateSelect.tsx"],"sourcesContent":["import React, { createRef } from 'react';\n\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport type { DatePickerLocale } from '../../components/DatePicker/locale';\nimport { DatePickerLocaleHelper } from '../../components/DatePicker/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { ButtonParams } from '../../components/Select';\nimport { Select } from '../../components/Select';\nimport { MenuItem } from '../../components/MenuItem';\nimport { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular';\nimport type { PopupPositionsType } from '../../internal/Popup/types';\n\nimport { globalClasses, styles } from './DateSelect.styles';\n\nconst defaultMinMonth = 0;\nconst defaultMaxMonth = 11;\nconst defaultMinYear = 1900;\nconst defaultMaxYear = 2099;\nconst months = range(defaultMinMonth, defaultMaxMonth);\nconst years = range(defaultMinYear, defaultMaxYear);\n\nfunction range(start: number, end: number) {\n return Array(end - start + 1)\n .fill(null)\n .map((_, index) => start + index);\n}\n\nexport interface DateSelectProps {\n disabled?: boolean;\n onValueChange: (value: number) => void;\n type?: 'month' | 'year';\n value: number;\n width?: number | string;\n minValue?: number;\n maxValue?: number;\n}\n\nexport const DateSelectDataTids = {\n caption: 'DateSelect__caption',\n menuItem: 'DateSelect__menuItem',\n menu: 'DateSelect__menu',\n} as const;\n\ntype DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;\n\nconst DATE_SELECT_POSITIONS: PopupPositionsType[] = [\n 'middle left',\n 'middle right',\n 'bottom left',\n 'top left',\n 'bottom right',\n 'top right',\n];\n\n@responsiveLayout\n@locale('Calendar', DatePickerLocaleHelper)\nexport class DateSelect extends React.PureComponent<DateSelectProps> {\n public static __KONTUR_REACT_UI__ = 'DateSelect';\n public static displayName = 'DateSelect';\n\n public static defaultProps: DefaultProps = {\n type: 'year',\n width: 'auto',\n };\n\n private getProps = createPropsGetter(DateSelect.defaultProps);\n\n private get isYearType() {\n return this.getProps().type === 'year';\n }\n\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private readonly selectRef = createRef<Select<number, number>>();\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private menuId = DateSelectDataTids.menu + getRandomID();\n\n private renderButton = (params: ButtonParams) => {\n const { value, disabled } = this.props;\n const width = this.getProps().width;\n const isInteractiveElement = !disabled;\n const Tag = isInteractiveElement ? 'button' : 'span';\n const rootProps = {\n className: cx(styles.root(this.theme), disabled && styles.disabled()),\n style: { width },\n onClick: disabled ? undefined : params.onClick,\n 'aria-expanded': isInteractiveElement ? params.opened : undefined,\n 'aria-controls': !disabled ? this.menuId : undefined,\n 'aria-label': isInteractiveElement\n ? `${this.locale.selectChosenAriaLabel} ${\n this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`\n : undefined,\n };\n\n return (\n <Tag {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={styles.caption()}>\n {this.getItem(value)}\n </div>\n {isInteractiveElement && (\n <ArrowCollapseCVOpenIcon16Regular className={cx(globalClasses.arrow)} color=\"#ADADAD\" />\n )}\n </Tag>\n );\n };\n\n public close() {\n this.selectRef.current?.close();\n }\n\n private renderMain() {\n const { value, disabled, onValueChange } = this.getProps();\n const theme = {\n btnBorderRadiusSmall: this.theme.menuItemBorderRadius,\n };\n\n return (\n <Select\n use=\"text\"\n value={value}\n ref={this.selectRef}\n theme={theme}\n disabled={disabled}\n _renderButton={this.renderButton}\n menuPos=\"middle\"\n positions={DATE_SELECT_POSITIONS}\n renderValue={this.getItem}\n items={this.getItems()}\n menuOffset={parseInt(this.theme.menuPaddingX) + parseInt(this.theme.menuItemPaddingXSmall)}\n onValueChange={onValueChange}\n aria-label={`${this.locale.selectChosenAriaLabel} ${\n this.isYearType ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`}\n />\n );\n }\n\n private isOptionDisabled(option: number) {\n const { minValue, maxValue } = this.getProps();\n\n if (isNonNullable(maxValue) && isNonNullable(minValue)) {\n return option > maxValue || option < minValue;\n }\n\n if (isNonNullable(minValue)) {\n return option < minValue;\n }\n\n if (isNonNullable(maxValue)) {\n return option > maxValue;\n }\n }\n\n private getItems = () => {\n const { value, onValueChange } = this.getProps();\n const options = this.isYearType ? years : months;\n\n return options.map((option) => {\n const isSelected = option === value;\n const isOptionDisabled = this.isOptionDisabled(option);\n\n return (\n <MenuItem\n scrollIntoView={isSelected}\n disabled={isOptionDisabled}\n state={isSelected ? 'selected' : null}\n onClick={() => onValueChange(option)}\n aria-label={`Выбрать ${this.isYearType ? 'год' : 'месяц'} ${this.getItem(option)}`}\n data-tid={DateSelectDataTids.menuItem}\n data-prop-disabled={isOptionDisabled}\n key={option}\n >\n {this.getItem(option)}\n </MenuItem>\n );\n });\n };\n\n private getItem = (value: number) => {\n if (this.isYearType) {\n return value;\n }\n\n return this.locale.months?.[value];\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_decorator","_utils","_locale","_decorators","_ThemeContext","_Emotion","_createPropsGetter","_Select","_MenuItem","_ArrowCollapseCVOpenIcon16Regular","_DateSelect2","_dec","_class","_DateSelect","defaultMinMonth","defaultMaxMonth","defaultMinYear","defaultMaxYear","months","range","years","start","end","Array","fill","map","_","index","DateSelectDataTids","exports","caption","menuItem","menu","DATE_SELECT_POSITIONS","DateSelect","locale","DatePickerLocaleHelper","responsiveLayout","_React$PureComponent","_this","_len","arguments","length","args","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","selectRef","createRef","menuId","getRandomID","renderButton","params","_this$props","props","value","disabled","width","isInteractiveElement","Tag","rootProps","className","cx","styles","root","theme","style","onClick","undefined","opened","selectChosenAriaLabel","type","selectYearAriaLabel","selectMonthAriaLabel","getItem","default","createElement","ArrowCollapseCVOpenIcon16Regular","globalClasses","arrow","color","getItems","_this$getProps","onValueChange","options","isYearType","option","isSelected","isOptionDisabled","MenuItem","scrollIntoView","state","key","_this$locale$months","_inheritsLoose2","_proto","prototype","render","_this2","ThemeContext","Consumer","renderMain","close","_this$selectRef$curre","current","_this$getProps2","btnBorderRadiusSmall","menuItemBorderRadius","Select","use","ref","_renderButton","menuPos","positions","renderValue","items","menuOffset","parseInt","menuPaddingX","menuItemPaddingXSmall","_this$getProps3","minValue","maxValue","isNonNullable","_createClass2","get","React","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["DateSelect.tsx"],"sourcesContent":["import React, { createRef } from 'react';\n\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport type { DatePickerLocale } from '../../components/DatePicker/locale';\nimport { DatePickerLocaleHelper } from '../../components/DatePicker/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { ButtonParams } from '../../components/Select';\nimport { Select } from '../../components/Select';\nimport { MenuItem } from '../../components/MenuItem';\nimport { ArrowCollapseCVOpenIcon16Regular } from '../icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular';\nimport type { PopupPositionsType } from '../../internal/Popup/types';\n\nimport { globalClasses, styles } from './DateSelect.styles';\n\nconst defaultMinMonth = 0;\nconst defaultMaxMonth = 11;\nconst defaultMinYear = 1900;\nconst defaultMaxYear = 2099;\nconst months = range(defaultMinMonth, defaultMaxMonth);\nconst years = range(defaultMinYear, defaultMaxYear);\n\nfunction range(start: number, end: number) {\n return Array(end - start + 1)\n .fill(null)\n .map((_, index) => start + index);\n}\n\nexport interface DateSelectProps {\n disabled?: boolean;\n onValueChange: (value: number) => void;\n type?: 'month' | 'year';\n value: number;\n width?: number | string;\n minValue?: number;\n maxValue?: number;\n}\n\nexport const DateSelectDataTids = {\n caption: 'DateSelect__caption',\n menuItem: 'DateSelect__menuItem',\n menu: 'DateSelect__menu',\n} as const;\n\ntype DefaultProps = Required<Pick<DateSelectProps, 'type' | 'width'>>;\n\nconst DATE_SELECT_POSITIONS: PopupPositionsType[] = [\n 'middle left',\n 'middle right',\n 'bottom left',\n 'top left',\n 'bottom right',\n 'top right',\n];\n\n@responsiveLayout\n@locale('Calendar', DatePickerLocaleHelper)\nexport class DateSelect extends React.PureComponent<DateSelectProps> {\n public static __KONTUR_REACT_UI__ = 'DateSelect';\n public static displayName = 'DateSelect';\n\n public static defaultProps: DefaultProps = {\n type: 'year',\n width: 'auto',\n };\n\n private getProps = createPropsGetter(DateSelect.defaultProps);\n\n private get isYearType() {\n return this.getProps().type === 'year';\n }\n\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n private readonly selectRef = createRef<Select<number, number>>();\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private menuId = DateSelectDataTids.menu + getRandomID();\n\n private renderButton = (params: ButtonParams) => {\n const { value, disabled } = this.props;\n const width = this.getProps().width;\n const isInteractiveElement = !disabled;\n const Tag = isInteractiveElement ? 'button' : 'span';\n const rootProps = {\n className: cx(styles.root(this.theme), disabled && styles.disabled()),\n style: { width },\n onClick: disabled ? undefined : params.onClick,\n 'aria-expanded': isInteractiveElement ? params.opened : undefined,\n 'aria-controls': !disabled ? this.menuId : undefined,\n 'aria-label': isInteractiveElement\n ? `${this.locale.selectChosenAriaLabel} ${\n this.getProps().type === 'year' ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`\n : undefined,\n };\n\n return (\n <Tag {...rootProps}>\n <div data-tid={DateSelectDataTids.caption} className={styles.caption()}>\n {this.getItem(value)}\n </div>\n {isInteractiveElement && (\n <ArrowCollapseCVOpenIcon16Regular className={cx(globalClasses.arrow)} color=\"#ADADAD\" />\n )}\n </Tag>\n );\n };\n\n public close() {\n this.selectRef.current?.close();\n }\n\n private renderMain() {\n const { value, disabled, onValueChange } = this.getProps();\n const theme = {\n btnBorderRadiusSmall: this.theme.menuItemBorderRadius,\n };\n\n return (\n <Select\n use=\"text\"\n value={value}\n ref={this.selectRef}\n theme={theme}\n disabled={disabled}\n _renderButton={this.renderButton}\n menuPos=\"middle\"\n positions={DATE_SELECT_POSITIONS}\n renderValue={this.getItem}\n items={this.getItems()}\n menuOffset={parseInt(this.theme.menuPaddingX) + parseInt(this.theme.menuItemPaddingXSmall)}\n onValueChange={onValueChange}\n aria-label={`${this.locale.selectChosenAriaLabel} ${\n this.isYearType ? this.locale.selectYearAriaLabel : this.locale.selectMonthAriaLabel\n } ${this.getItem(value)}`}\n />\n );\n }\n\n private isOptionDisabled(option: number) {\n const { minValue, maxValue } = this.getProps();\n\n if (isNonNullable(maxValue) && isNonNullable(minValue)) {\n return option > maxValue || option < minValue;\n }\n\n if (isNonNullable(minValue)) {\n return option < minValue;\n }\n\n if (isNonNullable(maxValue)) {\n return option > maxValue;\n }\n }\n\n private getItems = () => {\n const { value, onValueChange } = this.getProps();\n const options = this.isYearType ? years : months;\n\n return options.map((option) => {\n const isSelected = option === value;\n const isOptionDisabled = this.isOptionDisabled(option);\n\n return (\n <MenuItem\n scrollIntoView={isSelected}\n disabled={isOptionDisabled}\n state={isSelected ? 'selected' : null}\n onClick={() => onValueChange(option)}\n aria-label={`Выбрать ${this.isYearType ? 'год' : 'месяц'} ${this.getItem(option)}`}\n data-tid={DateSelectDataTids.menuItem}\n data-disabled={isOptionDisabled}\n key={option}\n >\n {this.getItem(option)}\n </MenuItem>\n );\n });\n };\n\n private getItem = (value: number) => {\n if (this.isYearType) {\n return value;\n }\n\n return this.locale.months?.[value];\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
3
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
3
4
|
export interface FocusTrapProps extends CommonProps {
|
|
4
5
|
children: React.ReactElement<any>;
|
|
5
6
|
onBlur?: (event: FocusEvent) => void;
|
|
@@ -7,6 +8,7 @@ export interface FocusTrapProps extends CommonProps {
|
|
|
7
8
|
export declare class FocusTrap extends React.PureComponent<FocusTrapProps> {
|
|
8
9
|
static __KONTUR_REACT_UI__: string;
|
|
9
10
|
static displayName: string;
|
|
11
|
+
getRootNode: TGetRootNode;
|
|
10
12
|
private setRootNode;
|
|
11
13
|
private focusOutsideListenerToken;
|
|
12
14
|
componentWillUnmount(): void;
|