@skbkontur/react-ui 0.0.0-dad43298ae → 0.0.0-db9f11da2a
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 +280 -0
- package/README.md +7 -7
- package/cjs/components/Autocomplete/Autocomplete.d.ts +18 -26
- package/cjs/components/Autocomplete/Autocomplete.js +64 -46
- 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 +109 -76
- 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/Calendar/CalendarDay.js +18 -2
- package/cjs/components/Calendar/CalendarDay.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.js +7 -15
- package/cjs/components/Calendar/DayCellView.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 -16
- package/cjs/components/Checkbox/Checkbox.js +16 -32
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +22 -3
- package/cjs/components/ComboBox/ComboBox.js +26 -1
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/cjs/components/CurrencyInput/CurrencyInput.js +6 -25
- 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 +21 -28
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +6 -1
- package/cjs/components/DateInput/DateInput.js +45 -17
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
- package/cjs/components/DatePicker/DatePicker.js +6 -60
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/cjs/components/DateRangePicker/DateRangePicker.js +61 -23
- package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
- package/cjs/components/DateRangePicker/DateRangePicker.styles.js +13 -18
- package/cjs/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePickerInput.js +4 -8
- package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
- package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js +17 -17
- package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
- package/cjs/components/Dropdown/Dropdown.js +2 -82
- 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 +15 -2
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +13 -8
- package/cjs/components/FxInput/FxInput.js +137 -60
- 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 -15
- package/cjs/components/Gapped/Gapped.js +1 -24
- 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 +5 -4
- package/cjs/components/Group/Group.js +91 -40
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.styles.d.ts +1 -0
- package/cjs/components/Group/Group.styles.js +12 -6
- package/cjs/components/Group/Group.styles.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/Input/InputLayout/InputLayout.d.ts +1 -0
- package/cjs/components/Input/InputLayout/InputLayout.js +4 -2
- package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +4 -2
- package/cjs/components/Kebab/Kebab.js +9 -29
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +2 -0
- package/cjs/components/Link/Link.js +15 -1
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.mixins.js +1 -2
- package/cjs/components/Link/Link.mixins.js.map +1 -1
- package/cjs/components/Link/Link.styles.js +3 -2
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +7 -36
- package/cjs/components/Loader/Loader.js +6 -56
- 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 +2 -12
- package/cjs/components/MenuItem/MenuItem.js +2 -22
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
- package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
- package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalBody.js +17 -2
- package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +2 -1
- package/cjs/components/Modal/Modal.styles.js +40 -32
- 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/Modal/ModalSeparator.js +1 -1
- package/cjs/components/Modal/ModalSeparator.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 -2
- package/cjs/components/Paging/Paging.js +120 -50
- 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 -12
- package/cjs/components/PasswordInput/PasswordInput.js +21 -32
- 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 +3 -0
- package/cjs/components/RadioGroup/RadioGroup.js +19 -1
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
- package/cjs/components/RadioGroup/RadioGroup.styles.js +10 -4
- package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
- package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +7 -1
- package/cjs/components/Select/Select.js +13 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.js +4 -2
- 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 +63 -19
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +33 -3
- 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 -18
- package/cjs/components/Spinner/Spinner.js +2 -32
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +5 -13
- package/cjs/components/Sticky/Sticky.js +12 -18
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +6 -21
- package/cjs/components/Switcher/Switcher.js +11 -20
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
- package/cjs/components/Switcher/Switcher.styles.js +17 -9
- package/cjs/components/Switcher/Switcher.styles.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 +10 -46
- package/cjs/components/Textarea/Textarea.js +23 -60
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.styles.js +3 -2
- package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.js +2 -13
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +62 -13
- package/cjs/components/Toast/Toast.js +119 -12
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastStatic.d.ts +3 -2
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +8 -16
- package/cjs/components/Toast/ToastView.js +19 -22
- 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 -11
- package/cjs/components/Toggle/Toggle.js +4 -14
- 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 +8 -3
- package/cjs/components/TokenInput/TokenInput.js +44 -30
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +12 -3
- package/cjs/components/TokenInput/TokenInputMenu.js +23 -1
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +14 -8
- package/cjs/components/Tooltip/Tooltip.js +102 -17
- 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 +2 -0
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js +16 -7
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +27 -9
- 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/ComponentTable.js +2 -3
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/cjs/internal/CustomComboBox/ComboBoxView.js +50 -7
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
- package/cjs/internal/CustomComboBox/CustomComboBox.js +20 -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.d.ts +0 -10
- package/cjs/internal/DateSelect/DateSelect.js +13 -19
- 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/InputLikeText/InputLikeText.styles.d.ts +1 -0
- package/cjs/internal/InputLikeText/InputLikeText.styles.js +12 -4
- package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +235 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +10 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
- 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/MobilePopup/MobilePopup.d.ts +2 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +43 -60
- package/cjs/internal/Popup/Popup.js +41 -81
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.d.ts +23 -33
- package/cjs/internal/Popup/PopupPin.js +2 -35
- package/cjs/internal/Popup/PopupPin.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/RenderContainer/RenderInnerContainer.d.ts +0 -6
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
- package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +20 -16
- 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/ThemePlayground/SizesGroup.js +4 -4
- package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.js +4 -4
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
- package/cjs/internal/ZIndex/ZIndex.js +5 -1
- 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 +125 -20
- package/cjs/internal/themes/BasicTheme.js +172 -25
- package/cjs/internal/themes/BasicTheme.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_2.js +1 -1
- package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_3.js +13 -0
- package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
- 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_3.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_3.js +13 -0
- package/cjs/internal/themes/LightTheme5_3.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/date/InternalDateGetter.d.ts +1 -1
- package/cjs/lib/date/InternalDateGetter.js +8 -1
- package/cjs/lib/date/InternalDateGetter.js.map +1 -1
- package/cjs/lib/delay.mts +3 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +23 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/cjs/lib/forwardRefAndName.d.ts +1 -1
- package/cjs/lib/forwardRefAndName.js +0 -1
- package/cjs/lib/forwardRefAndName.js.map +1 -1
- package/cjs/lib/getMenuPositions.d.ts +21 -1
- package/cjs/lib/getMenuPositions.js +45 -8
- package/cjs/lib/getMenuPositions.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/ThemeHelpers.d.ts +1 -1
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- 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 +2 -0
- package/cjs/lib/theming/themes/DarkTheme.js +6 -2
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +2 -0
- package/cjs/lib/theming/themes/LightTheme.js +6 -2
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/utils.d.ts +18 -1
- package/cjs/lib/utils.js +40 -4
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/test-setup.d.ts +1 -0
- package/cjs/vitest.config.d.ts +2 -0
- package/components/Autocomplete/Autocomplete/Autocomplete.js +63 -51
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +18 -26
- 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 +79 -61
- 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/Calendar/CalendarDay/CalendarDay.js +9 -2
- package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
- package/components/Calendar/DayCellView/DayCellView.js +6 -10
- package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +2 -0
- package/components/Checkbox/Checkbox/Checkbox.js +12 -24
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +4 -16
- package/components/ComboBox/ComboBox/ComboBox.js +2 -1
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +22 -3
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +13 -36
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/components/CurrencyInput/constants/constants.js +0 -1
- package/components/CurrencyInput/constants/constants.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js +34 -24
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +6 -1
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +1 -32
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +6 -33
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +41 -22
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js +12 -15
- package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +5 -8
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
- package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js +16 -15
- package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js +1 -47
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +2 -47
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/components/FileUploader/FileUploader/FileUploader.js +8 -2
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FxInput/FxInput/FxInput.js +122 -70
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +13 -8
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
- package/components/Gapped/Gapped/Gapped.js +1 -15
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +2 -15
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/components/Group/Group/Group.js +64 -28
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +5 -4
- package/components/Group/Group.styles/Group.styles.js +9 -6
- package/components/Group/Group.styles/Group.styles.js.map +1 -1
- package/components/Group/Group.styles.d.ts +1 -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/Input/InputLayout/InputLayout/InputLayout.js +5 -2
- package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +8 -26
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +4 -2
- package/components/Link/Link/Link.js +8 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +2 -0
- package/components/Link/Link.mixins/Link.mixins.js +1 -1
- package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
- package/components/Link/Link.styles/Link.styles.js +1 -1
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Loader/Loader/Loader.js +2 -34
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +7 -36
- 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 +1 -12
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +2 -12
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.d.ts +1 -0
- package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
- package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
- package/components/Modal/Modal.styles/Modal.styles.js +32 -29
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +2 -1
- 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/Modal/ModalSeparator/ModalSeparator.js +1 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- 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 +96 -47
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +13 -2
- 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 -25
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +5 -12
- 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 +23 -17
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +7 -4
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
- package/components/Select/Select/Select.js +17 -15
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +7 -1
- package/components/SidePage/SidePage/SidePage.js +3 -3
- 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 +62 -35
- 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 +33 -3
- package/components/Spinner/Spinner/Spinner.js +1 -18
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +2 -18
- package/components/Sticky/Sticky/Sticky.js +10 -14
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +5 -13
- package/components/Switcher/Switcher/Switcher.js +19 -16
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +6 -21
- package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -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 +19 -52
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +10 -46
- package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
- package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
- package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Toast/Toast/Toast.js +93 -32
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +62 -13
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastStatic.d.ts +3 -2
- package/components/Toast/ToastView/ToastView.js +20 -22
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +8 -16
- 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 +11 -20
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +4 -11
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +2 -0
- package/components/TokenInput/TokenInput/TokenInput.js +49 -43
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +8 -3
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +16 -6
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +12 -3
- package/components/Tooltip/Tooltip/Tooltip.js +77 -26
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +14 -8
- 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 +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js +21 -7
- package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +14 -5
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/internal/ComponentTable/ComponentTable.js +0 -2
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +72 -41
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +13 -7
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
- 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 +4 -11
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +0 -10
- 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/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +7 -4
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +249 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/package.json +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js +8 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/package.json +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +2 -0
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +2 -0
- package/internal/Popup/Popup/Popup.js +23 -69
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +43 -60
- package/internal/Popup/PopupPin/PopupPin.js +1 -34
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +23 -33
- 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/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +2 -3
- package/internal/ThemePlayground/Playground/Playground.js +21 -18
- 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/ThemePlayground/SizesGroup/SizesGroup.js +4 -4
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +2 -2
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -4
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +3 -3
- 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 +185 -30
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +125 -20
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
- package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
- package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
- package/internal/themes/DarkTheme5_3/package.json +6 -0
- package/internal/themes/DarkTheme5_3.d.ts +1 -0
- 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_3/LightTheme5_3.js +16 -0
- package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
- package/internal/themes/LightTheme5_3/package.json +6 -0
- package/internal/themes/LightTheme5_3.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/date/InternalDateGetter/InternalDateGetter.js +4 -1
- package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
- package/lib/date/InternalDateGetter.d.ts +1 -1
- package/lib/delay.d.mts +1 -0
- package/lib/delay.mts +3 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +12 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
- package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
- package/lib/forwardRefAndName.d.ts +1 -1
- package/lib/getMenuPositions/getMenuPositions.js +33 -4
- package/lib/getMenuPositions/getMenuPositions.js.map +1 -1
- package/lib/getMenuPositions.d.ts +21 -1
- 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/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/ThemeHelpers.d.ts +1 -1
- package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
- package/lib/theming/ThemeVersions.d.ts +1 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +2 -0
- package/lib/theming/themes/LightTheme/LightTheme.js +5 -1
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +2 -0
- package/lib/utils/utils.js +33 -2
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +18 -1
- package/package.json +19 -36
- package/test-setup.d.ts +1 -0
- package/vitest.config.d.ts +2 -0
- 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 -87
- 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 -131
- package/cjs/components/TokenInput/TokenInput.md +0 -308
- 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/SSRSafe.d.ts +0 -2
- package/cjs/lib/SSRSafe.js +0 -5
- package/cjs/lib/SSRSafe.js.map +0 -1
- 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 -87
- 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 -131
- package/components/TokenInput/TokenInput.md +0 -308
- 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/SSRSafe/SSRSafe.js +0 -4
- package/lib/SSRSafe/SSRSafe.js.map +0 -1
- package/lib/SSRSafe/package.json +0 -6
- package/lib/SSRSafe.d.ts +0 -2
- 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","_invariant","_utils","_Radio","_createPropsGetter","_FocusTrap","_CommonWrapper","_Emotion","_rootNode","_getVisualStateDataAttributes","_RadioGroup2","_Prevent","_RadioGroupContext","_class","_RadioGroup","RadioGroupDataTids","exports","root","RadioGroup","rootNode","_React$Component","props","_this","call","name","getRandomID","getProps","createPropsGetter","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","isNonNullable","setState","onValueChange","renderRadio","itemValue","data","index","_cx","itemProps","key","getKeyByItem","className","cx","styles","item","itemFirst","itemInline","inline","default","createElement","_extends2","role","Radio","renderItem","toKey","undefined","ref","element","node","defaultValue","_inheritsLoose2","_proto","prototype","render","_this$props","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","CommonWrapper","rootNodeRef","setRootNode","getVisualStateDataAttributes","FocusTrap","RadioGroupContext","Provider","renderChildren","focus","radio","querySelector","_this$props2","items","children","invariant","mapItems","React","Component","__KONTUR_REACT_UI__","displayName","Prevent","_value","fn","result","_iterator","_createForOfIteratorHelperLoose2","_step","done","entry","_normalizeEntry","normalizeEntry","push","Array","isArray"],"sources":["RadioGroup.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport invariant from 'invariant';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { Radio } from '../Radio';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FocusTrap } from '../../internal/FocusTrap';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './RadioGroup.styles';\nimport { Prevent } from './Prevent';\nimport type { RadioGroupContextType } from './RadioGroupContext';\nimport { RadioGroupContext } from './RadioGroupContext';\n\nexport interface RadioGroupProps<T = string | number> extends CommonProps {\n /** Задает значение по умолчанию. Должно быть одним из значений дочерних радиокнопок или значений из параметра `items`. */\n defaultValue?: T;\n\n /** Задает значение радиогруппы. Должно быть одним из значений радиокнопок.\n * Если не указано, то компонент будет работать, как неконтролируемый. */\n value?: T;\n\n /** Задает массив параметров радиокнопок. Может быть типа `Array<Value>` или `Array<[Value, Data]>`,\n * где тип `Value` — значение радиокнопки, а `Data` — значение которое будет использовано вторым параметром в `renderItem`.\n * Тип `Array<Value>` будет приведен к типу `Array<[Value, Value]>`.\n * Может быть использовано, если не передан параметр `children`. */\n items?: T[] | Array<[T, React.ReactNode]>;\n\n /** Устанавливает аттрибут name для вложенных радиокнопок. Если не указан, то сгенерируется случайное имя. */\n name?: string;\n\n /** Получает уникальный ключ по элементу\n * @param item - элемент, по которуму нужно получить ключ. */\n toKey?: (item: T) => string | number;\n\n /** Делает все радиокнопки недоступными. */\n disabled?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Выравнивает элементы items в строку. Не работает с children. */\n inline?: boolean;\n\n /** Задает ширину радиогруппы. Не работает с `children`. */\n width?: React.CSSProperties['width'];\n\n /** Задает функцию, которая отображает контент радиокнопки. Не работает с `children`.\n * @param {Value} itemValue - значение радиокнопки.\n * @param {Data} data - значение для отрисовки радиокнопки. */\n renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n\n /** Задает функцию, которая вызывается при изменении значения радиогруппы (value). */\n onValueChange?: (value: T) => void;\n\n /** Задает функцию, которая вызывается при потере радиогруппой фокуса. */\n onBlur?: (event: FocusEvent) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: () => any;\n}\n\nexport interface RadioGroupState<T> {\n activeItem?: T;\n}\n\nexport const RadioGroupDataTids = {\n root: 'RadioGroup__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioGroupProps<unknown>, 'renderItem'>>;\n\n/**\n * Группа радиокнопок `RadioGroup` используется для выбора одного значения из нескольких, когда вариантов выбора немного — 2–5.\n *\n * `children` может содержать любую разметку с компонентами Radio, если не передан параметр `items`.\n * Каждому компоненту Radio нужно указать параметр `value`, такого же типа, как и параметр `value` самой радиогруппы.\n *\n * Значения активного элемента сравниваются по строгому равенству `===`.\n */\n@rootNode\nexport class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {\n public static __KONTUR_REACT_UI__ = 'RadioGroup';\n public static displayName = 'RadioGroup';\n\n public static defaultProps: DefaultProps = {\n renderItem,\n };\n\n public static Prevent = Prevent;\n\n private node: Nullable<HTMLSpanElement>;\n private name = getRandomID();\n private getProps = createPropsGetter(RadioGroup.defaultProps);\n private setRootNode!: TSetRootNode;\n\n constructor(props: RadioGroupProps<T>) {\n super(props);\n\n this.state = {\n activeItem: this.props.defaultValue,\n };\n }\n\n private getRadioGroupContextValue = (): RadioGroupContextType<T> => {\n return {\n activeItem: this.getValue(),\n onSelect: this.handleSelect,\n name: this.getName(),\n disabled: this.props.disabled,\n error: this.props.error,\n warning: this.props.warning,\n };\n };\n\n public render() {\n const {\n width,\n onMouseLeave,\n onMouseOver,\n onMouseEnter,\n onBlur,\n 'aria-describedby': ariaDescribedby,\n disabled,\n } = this.props;\n const style = {\n width: width ?? 'auto',\n };\n const handlers = {\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n };\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props} {...getVisualStateDataAttributes({ disabled })}>\n <FocusTrap onBlur={onBlur}>\n <span\n data-tid={RadioGroupDataTids.root}\n ref={this.ref}\n style={style}\n className={styles.root()}\n role=\"radiogroup\"\n {...handlers}\n aria-describedby={ariaDescribedby}\n >\n <RadioGroupContext.Provider value={this.getRadioGroupContextValue()}>\n {this.renderChildren()}\n </RadioGroupContext.Provider>\n </span>\n </FocusTrap>\n </CommonWrapper>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n const node = this.node;\n if (!node) {\n return;\n }\n\n let radio = node.querySelector('input[type=\"radio\"]:checked') as Nullable<HTMLInputElement>;\n\n // If no checked radios, try get first radio\n if (!radio || radio.disabled) {\n radio = node.querySelector('input[type=\"radio\"]:not([disabled])') as Nullable<HTMLInputElement>;\n }\n\n if (radio) {\n radio.focus();\n }\n }\n\n private getValue = () => (this.isControlled() ? this.props.value : this.state.activeItem);\n\n private getName = () => this.props.name || this.name;\n\n private isControlled = () => isNonNullable(this.props.value);\n\n private handleSelect = (value: T) => {\n if (!this.isControlled()) {\n this.setState({ activeItem: value });\n }\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private renderChildren() {\n const { items, children } = this.props;\n invariant((!items && children) || (items && !children), 'Either items or children must be passed, not both');\n return items ? mapItems<T>(this.renderRadio, items) : children;\n }\n\n private renderRadio = (itemValue: T, data: React.ReactNode, index: number): JSX.Element => {\n const itemProps = {\n key: this.getKeyByItem(itemValue),\n className: cx({\n [styles.item()]: true,\n [styles.itemFirst()]: index === 0,\n [styles.itemInline()]: !!this.props.inline,\n }),\n };\n\n return (\n <span {...itemProps} role=\"presentation\">\n <Radio value={itemValue}>{this.getProps().renderItem(itemValue, data)}</Radio>\n </span>\n );\n };\n\n private getKeyByItem = (itemValue: T) => {\n if (this.props.toKey) {\n return this.props.toKey(itemValue);\n }\n return typeof itemValue === 'string' || typeof itemValue === 'number' ? itemValue : undefined;\n };\n\n private ref = (element: HTMLSpanElement) => {\n this.node = element;\n };\n}\n\nfunction renderItem<T>(_value: T, data: React.ReactNode) {\n return data;\n}\n\nfunction mapItems<T>(\n fn: (value: T, data: React.ReactNode, index: number) => React.ReactNode,\n items: T[] | Array<[T, React.ReactNode]>,\n) {\n const result: React.ReactNode[] = [];\n let index = 0;\n for (const entry of items) {\n const [value, data] = normalizeEntry<T>(entry);\n result.push(fn(value, data, index));\n ++index;\n }\n return result;\n}\n\nfunction normalizeEntry<T>(entry: T | [T, React.ReactNode]): [T, React.ReactNode] {\n if (!Array.isArray(entry)) {\n return [entry, entry as unknown as React.ReactNode];\n }\n return entry;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_invariant","_utils","_Radio","_createPropsGetter","_FocusTrap","_CommonWrapper","_Emotion","_rootNode","_getVisualStateDataAttributes","_featureFlagsContext","_RadioGroup2","_Prevent","_RadioGroupContext","_class","_RadioGroup","RadioGroupDataTids","exports","root","RadioGroup","rootNode","_React$Component","props","_this","call","name","getRandomID","getProps","createPropsGetter","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","isNonNullable","setState","onValueChange","renderRadio","itemValue","data","index","_cx","itemProps","key","getKeyByItem","className","cx","styles","item","itemFirst","itemInline","inline","default","createElement","_extends2","role","Radio","renderItem","toKey","undefined","ref","element","node","defaultValue","_inheritsLoose2","_proto","prototype","render","_this2","_this$props","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","ReactUIFeatureFlagsContext","Consumer","flags","_cx2","featureFlags","getFullReactUIFlagsContext","CommonWrapper","rootNodeRef","setRootNode","getVisualStateDataAttributes","FocusTrap","removeBaselineSpacer","radioGroupRemoveBaselineSpacer","RadioGroupContext","Provider","renderChildren","focus","radio","querySelector","_this$props2","items","children","invariant","mapItems","React","Component","__KONTUR_REACT_UI__","displayName","Prevent","_value","fn","result","_iterator","_createForOfIteratorHelperLoose2","_step","done","entry","_normalizeEntry","normalizeEntry","push","Array","isArray"],"sources":["RadioGroup.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport invariant from 'invariant';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { Radio } from '../Radio';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FocusTrap } from '../../internal/FocusTrap';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './RadioGroup.styles';\nimport { Prevent } from './Prevent';\nimport type { RadioGroupContextType } from './RadioGroupContext';\nimport { RadioGroupContext } from './RadioGroupContext';\n\nexport interface RadioGroupProps<T = string | number> extends CommonProps {\n /** Задает значение по умолчанию. Должно быть одним из значений дочерних радиокнопок или значений из параметра `items`. */\n defaultValue?: T;\n\n /** Задает значение радиогруппы. Должно быть одним из значений радиокнопок.\n * Если не указано, то компонент будет работать, как неконтролируемый. */\n value?: T;\n\n /** Задает массив параметров радиокнопок. Может быть типа `Array<Value>` или `Array<[Value, Data]>`,\n * где тип `Value` — значение радиокнопки, а `Data` — значение которое будет использовано вторым параметром в `renderItem`.\n * Тип `Array<Value>` будет приведен к типу `Array<[Value, Value]>`.\n * Может быть использовано, если не передан параметр `children`. */\n items?: T[] | Array<[T, React.ReactNode]>;\n\n /** Устанавливает аттрибут name для вложенных радиокнопок. Если не указан, то сгенерируется случайное имя. */\n name?: string;\n\n /** Получает уникальный ключ по элементу\n * @param item - элемент, по которуму нужно получить ключ. */\n toKey?: (item: T) => string | number;\n\n /** Делает все радиокнопки недоступными. */\n disabled?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Выравнивает элементы items в строку. Не работает с children. */\n inline?: boolean;\n\n /** Задает ширину радиогруппы. Не работает с `children`. */\n width?: React.CSSProperties['width'];\n\n /** Задает функцию, которая отображает контент радиокнопки. Не работает с `children`.\n * @param {Value} itemValue - значение радиокнопки.\n * @param {Data} data - значение для отрисовки радиокнопки. */\n renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n\n /** Задает функцию, которая вызывается при изменении значения радиогруппы (value). */\n onValueChange?: (value: T) => void;\n\n /** Задает функцию, которая вызывается при потере радиогруппой фокуса. */\n onBlur?: (event: FocusEvent) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: () => any;\n}\n\nexport interface RadioGroupState<T> {\n activeItem?: T;\n}\n\nexport const RadioGroupDataTids = {\n root: 'RadioGroup__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioGroupProps<unknown>, 'renderItem'>>;\n\n/**\n * Группа радиокнопок `RadioGroup` используется для выбора одного значения из нескольких, когда вариантов выбора немного — 2–5.\n *\n * `children` может содержать любую разметку с компонентами Radio, если не передан параметр `items`.\n * Каждому компоненту Radio нужно указать параметр `value`, такого же типа, как и параметр `value` самой радиогруппы.\n *\n * Значения активного элемента сравниваются по строгому равенству `===`.\n */\n@rootNode\nexport class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {\n public static __KONTUR_REACT_UI__ = 'RadioGroup';\n public static displayName = 'RadioGroup';\n\n public static defaultProps: DefaultProps = {\n renderItem,\n };\n\n public static Prevent = Prevent;\n\n private node: Nullable<HTMLSpanElement>;\n private name = getRandomID();\n private getProps = createPropsGetter(RadioGroup.defaultProps);\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private featureFlags!: ReactUIFeatureFlags;\n\n constructor(props: RadioGroupProps<T>) {\n super(props);\n\n this.state = {\n activeItem: this.props.defaultValue,\n };\n }\n\n private getRadioGroupContextValue = (): RadioGroupContextType<T> => {\n return {\n activeItem: this.getValue(),\n onSelect: this.handleSelect,\n name: this.getName(),\n disabled: this.props.disabled,\n error: this.props.error,\n warning: this.props.warning,\n };\n };\n\n public render() {\n const {\n width,\n onMouseLeave,\n onMouseOver,\n onMouseEnter,\n onBlur,\n 'aria-describedby': ariaDescribedby,\n disabled,\n } = this.props;\n const style = {\n width: width ?? 'auto',\n };\n const handlers = {\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n };\n\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled })}\n >\n <FocusTrap onBlur={onBlur}>\n <span\n data-tid={RadioGroupDataTids.root}\n ref={this.ref}\n style={style}\n className={cx({\n [styles.root()]: true,\n [styles.removeBaselineSpacer()]: this.featureFlags.radioGroupRemoveBaselineSpacer,\n })}\n role=\"radiogroup\"\n {...handlers}\n aria-describedby={ariaDescribedby}\n >\n <RadioGroupContext.Provider value={this.getRadioGroupContextValue()}>\n {this.renderChildren()}\n </RadioGroupContext.Provider>\n </span>\n </FocusTrap>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n const node = this.node;\n if (!node) {\n return;\n }\n\n let radio = node.querySelector('input[type=\"radio\"]:checked') as Nullable<HTMLInputElement>;\n\n // If no checked radios, try get first radio\n if (!radio || radio.disabled) {\n radio = node.querySelector('input[type=\"radio\"]:not([disabled])') as Nullable<HTMLInputElement>;\n }\n\n if (radio) {\n radio.focus();\n }\n }\n\n private getValue = () => (this.isControlled() ? this.props.value : this.state.activeItem);\n\n private getName = () => this.props.name || this.name;\n\n private isControlled = () => isNonNullable(this.props.value);\n\n private handleSelect = (value: T) => {\n if (!this.isControlled()) {\n this.setState({ activeItem: value });\n }\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private renderChildren() {\n const { items, children } = this.props;\n invariant((!items && children) || (items && !children), 'Either items or children must be passed, not both');\n return items ? mapItems<T>(this.renderRadio, items) : children;\n }\n\n private renderRadio = (itemValue: T, data: React.ReactNode, index: number): JSX.Element => {\n const itemProps = {\n key: this.getKeyByItem(itemValue),\n className: cx({\n [styles.item()]: true,\n [styles.itemFirst()]: index === 0,\n [styles.itemInline()]: !!this.props.inline,\n }),\n };\n\n return (\n <span {...itemProps} role=\"presentation\">\n <Radio value={itemValue}>{this.getProps().renderItem(itemValue, data)}</Radio>\n </span>\n );\n };\n\n private getKeyByItem = (itemValue: T) => {\n if (this.props.toKey) {\n return this.props.toKey(itemValue);\n }\n return typeof itemValue === 'string' || typeof itemValue === 'number' ? itemValue : undefined;\n };\n\n private ref = (element: HTMLSpanElement) => {\n this.node = element;\n };\n}\n\nfunction renderItem<T>(_value: T, data: React.ReactNode) {\n return data;\n}\n\nfunction mapItems<T>(\n fn: (value: T, data: React.ReactNode, index: number) => React.ReactNode,\n items: T[] | Array<[T, React.ReactNode]>,\n) {\n const result: React.ReactNode[] = [];\n let index = 0;\n for (const entry of items) {\n const [value, data] = normalizeEntry<T>(entry);\n result.push(fn(value, data, index));\n ++index;\n }\n return result;\n}\n\nfunction normalizeEntry<T>(entry: T | [T, React.ReactNode]): [T, React.ReactNode] {\n if (!Array.isArray(entry)) {\n return [entry, entry as unknown as React.ReactNode];\n }\n return entry;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
1
|
+
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
2
2
|
|
|
3
3
|
var styles = exports.styles = (0, _Emotion.memoizeStyle)({
|
|
4
4
|
root: function root() {
|
|
@@ -8,10 +8,16 @@ var styles = exports.styles = (0, _Emotion.memoizeStyle)({
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
+
},
|
|
12
|
+
|
|
13
|
+
removeBaselineSpacer: function removeBaselineSpacer() {
|
|
14
|
+
return (0, _Emotion.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["\n vertical-align: bottom;\n "])));
|
|
15
|
+
|
|
16
|
+
|
|
11
17
|
},
|
|
12
18
|
|
|
13
19
|
item: function item() {
|
|
14
|
-
return (0, _Emotion.css)(
|
|
20
|
+
return (0, _Emotion.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["\n display: table;\n margin-top: 0;\n width: 100%;\n "])));
|
|
15
21
|
|
|
16
22
|
|
|
17
23
|
|
|
@@ -19,13 +25,13 @@ var styles = exports.styles = (0, _Emotion.memoizeStyle)({
|
|
|
19
25
|
},
|
|
20
26
|
|
|
21
27
|
itemFirst: function itemFirst() {
|
|
22
|
-
return (0, _Emotion.css)(
|
|
28
|
+
return (0, _Emotion.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["\n margin-top: 0;\n "])));
|
|
23
29
|
|
|
24
30
|
|
|
25
31
|
},
|
|
26
32
|
|
|
27
33
|
itemInline: function itemInline() {
|
|
28
|
-
return (0, _Emotion.css)(
|
|
34
|
+
return (0, _Emotion.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["\n display: inline-table;\n margin-right: 15px;\n margin-top: 0;\n width: auto;\n "])));
|
|
29
35
|
|
|
30
36
|
|
|
31
37
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Emotion","require","_templateObject","_templateObject2","_templateObject3","_templateObject4","styles","exports","memoizeStyle","root","css","_taggedTemplateLiteralLoose2","default","item","itemFirst","itemInline"],"sources":["RadioGroup.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n display: inline-block;\n user-select: none;\n cursor: default;\n line-height: normal;\n `;\n },\n\n item() {\n return css`\n display: table;\n margin-top: 0;\n width: 100%;\n `;\n },\n\n itemFirst() {\n return css`\n margin-top: 0;\n `;\n },\n\n itemInline() {\n return css`\n display: inline-table;\n margin-right: 15px;\n margin-top: 0;\n width: auto;\n `;\n },\n});\n"],"mappings":"oRAAA,IAAAA,QAAA,GAAAC,OAAA,8BAA8D,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;;AAEvD,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,qBAAY,EAAC;EACjCC,IAAI,WAAAA,KAAA,EAAG;IACL,WAAOC,YAAG,
|
|
1
|
+
{"version":3,"names":["_Emotion","require","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","styles","exports","memoizeStyle","root","css","_taggedTemplateLiteralLoose2","default","removeBaselineSpacer","item","itemFirst","itemInline"],"sources":["RadioGroup.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n display: inline-block;\n user-select: none;\n cursor: default;\n line-height: normal;\n `;\n },\n\n removeBaselineSpacer() {\n return css`\n vertical-align: bottom;\n `;\n },\n\n item() {\n return css`\n display: table;\n margin-top: 0;\n width: 100%;\n `;\n },\n\n itemFirst() {\n return css`\n margin-top: 0;\n `;\n },\n\n itemInline() {\n return css`\n display: inline-table;\n margin-right: 15px;\n margin-top: 0;\n width: auto;\n `;\n },\n});\n"],"mappings":"oRAAA,IAAAA,QAAA,GAAAC,OAAA,8BAA8D,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;;AAEvD,IAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,qBAAY,EAAC;EACjCC,IAAI,WAAAA,KAAA,EAAG;IACL,WAAOC,YAAG,EAAAT,eAAA,KAAAA,eAAA,OAAAU,4BAAA,CAAAC,OAAA;;;;;;EAMZ,CAAC;;EAEDC,oBAAoB,WAAAA,qBAAA,EAAG;IACrB,WAAOH,YAAG,EAAAR,gBAAA,KAAAA,gBAAA,OAAAS,4BAAA,CAAAC,OAAA;;;EAGZ,CAAC;;EAEDE,IAAI,WAAAA,KAAA,EAAG;IACL,WAAOJ,YAAG,EAAAP,gBAAA,KAAAA,gBAAA,OAAAQ,4BAAA,CAAAC,OAAA;;;;;EAKZ,CAAC;;EAEDG,SAAS,WAAAA,UAAA,EAAG;IACV,WAAOL,YAAG,EAAAN,gBAAA,KAAAA,gBAAA,OAAAO,4BAAA,CAAAC,OAAA;;;EAGZ,CAAC;;EAEDI,UAAU,WAAAA,WAAA,EAAG;IACX,WAAON,YAAG,EAAAL,gBAAA,KAAAA,gBAAA,OAAAM,4BAAA,CAAAC,OAAA;;;;;;EAMZ;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
2
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
4
3
|
import type { Nullable } from '../../typings/utility-types';
|
|
4
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
5
5
|
import type { ScrollAxis } from './ScrollBar';
|
|
6
6
|
export type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';
|
|
7
7
|
export type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';
|
|
@@ -64,18 +64,11 @@ export declare class ScrollContainer extends React.Component<ScrollContainerProp
|
|
|
64
64
|
static __KONTUR_REACT_UI__: string;
|
|
65
65
|
static displayName: string;
|
|
66
66
|
inner: Nullable<HTMLElement>;
|
|
67
|
-
static propTypes: {
|
|
68
|
-
invert: PropTypes.Requireable<boolean>;
|
|
69
|
-
maxWidth: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
70
|
-
maxHeight: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
|
|
71
|
-
scrollBehaviour: PropTypes.Requireable<string>;
|
|
72
|
-
preventWindowScroll: PropTypes.Requireable<boolean>;
|
|
73
|
-
onScrollStateChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
74
|
-
};
|
|
75
67
|
static defaultProps: DefaultProps;
|
|
76
68
|
private getProps;
|
|
77
69
|
private scrollX;
|
|
78
70
|
private scrollY;
|
|
71
|
+
getRootNode: TGetRootNode;
|
|
79
72
|
private setRootNode;
|
|
80
73
|
private initialIsScrollBarVisible;
|
|
81
74
|
state: ScrollContainerState;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;exports.__esModule = true;exports.ScrollContainerDataTids = exports.ScrollContainer = void 0;var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
|
|
2
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
3
2
|
var _globalObject = require("@skbkontur/global-object");
|
|
4
3
|
var _lodash = _interopRequireDefault(require("lodash.debounce"));
|
|
5
4
|
|
|
@@ -122,15 +121,6 @@ ScrollContainer = exports.ScrollContainer = (0, _rootNode.rootNode)(_class = (_S
|
|
|
122
121
|
|
|
123
122
|
|
|
124
123
|
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
124
|
|
|
135
125
|
|
|
136
126
|
|
|
@@ -139,6 +129,7 @@ ScrollContainer = exports.ScrollContainer = (0, _rootNode.rootNode)(_class = (_S
|
|
|
139
129
|
|
|
140
130
|
|
|
141
131
|
|
|
132
|
+
|
|
142
133
|
initialIsScrollBarVisible = _this.getProps().showScrollBar === 'always';_this.
|
|
143
134
|
|
|
144
135
|
state = {
|
|
@@ -444,4 +435,4 @@ ScrollContainer = exports.ScrollContainer = (0, _rootNode.rootNode)(_class = (_S
|
|
|
444
435
|
* @public
|
|
445
436
|
*/;_proto.scrollToLeft = function scrollToLeft() {if (!this.inner) {return;}this.inner.scrollLeft = 0;} /**
|
|
446
437
|
* @public
|
|
447
|
-
*/;_proto.scrollToRight = function scrollToRight() {if (!this.inner) {return;}this.inner.scrollLeft = this.inner.scrollWidth - this.inner.offsetWidth;};_proto.hasScrollBar = function hasScrollBar(axis) {if (!this.inner) {return false;}return axis === 'x' ? this.inner.offsetWidth < this.inner.scrollWidth : this.inner.offsetHeight < this.inner.scrollHeight;};return ScrollContainer;}(_react.default.Component), _ScrollContainer.__KONTUR_REACT_UI__ = 'ScrollContainer', _ScrollContainer.displayName = 'ScrollContainer', _ScrollContainer.
|
|
438
|
+
*/;_proto.scrollToRight = function scrollToRight() {if (!this.inner) {return;}this.inner.scrollLeft = this.inner.scrollWidth - this.inner.offsetWidth;};_proto.hasScrollBar = function hasScrollBar(axis) {if (!this.inner) {return false;}return axis === 'x' ? this.inner.offsetWidth < this.inner.scrollWidth : this.inner.offsetHeight < this.inner.scrollHeight;};return ScrollContainer;}(_react.default.Component), _ScrollContainer.__KONTUR_REACT_UI__ = 'ScrollContainer', _ScrollContainer.displayName = 'ScrollContainer', _ScrollContainer.defaultProps = { invert: false, scrollBehaviour: 'auto', preventWindowScroll: false, disableAnimations: _currentEnvironment.isTestEnv, hideScrollBarDelay: 500, showScrollBar: 'always' }, _ScrollContainer)) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_propTypes","_globalObject","_lodash","_isInstanceOf","LayoutEvents","_interopRequireWildcard","_CommonWrapper","_Emotion","_client","_rootNode","_getDOMRect","_createPropsGetter","_currentEnvironment","_callChildRef","_ScrollContainer2","_ScrollContainer3","_ScrollContainer4","_ScrollBar","_class","_ScrollContainer","ScrollContainerDataTids","exports","root","inner","ScrollContainer","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","initialIsScrollBarVisible","showScrollBar","state","isScrollBarXVisible","isScrollBarYVisible","isHovered","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","default","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","className","styles","onMouseMove","handleMouseMove","onMouseLeave","handleMouseLeave","style","ref","refInner","cx","globalClasses","isIE11","innerIE11","onScroll","handleNativeScroll","axis","_this$getProps","offsetY","offsetX","invert","disableAnimations","isAxisX","refScrollBar","refScrollBarX","refScrollBarY","offset","isVisible","ScrollBar","handleScroll","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","convertScrollbarXScrollState","onScrollStateChangeX","scrollYState","convertScrollbarYScrollState","onScrollStateChange","onScrollStateChangeY","prevScrollState","_this$getProps2","showScrollBarOnMouseWheel","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","scrollRef","callChildRef","event","_this$scrollY","_this$scrollX","reflow","preventDefault","emit","isScrollBarVisible","setState","hideScrollBar","debounce","_this$scrollX2","_this$scrollY2","isScrollBarXHovered","getHover","isScrollBarYHovered","hideScrollBarDelay","isInstanceOf","globalObject","WheelEvent","shiftKey","hasScrollBar","_scrollSizeParameters","scrollSizeParametersNames","pos","size","deltaY","_this$scrollY3","_this$scrollX3","right","getDOMRect","currentTarget","pageX","bottom","pageY","setHover","_this$scrollY4","_this$scrollX4","updateInnerElement","_this$scrollX5","_this$scrollY5","setInnerElement","_inheritsLoose2","_proto","prototype","componentDidMount","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","getScrollYOffset","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","React","Component","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","oneOfType","string","number","oneOf","func","isTestEnv"],"sources":["ScrollContainer.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject } from '@skbkontur/global-object';\nimport debounce from 'lodash.debounce';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\n\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { scrollSizeParametersNames } from './ScrollContainer.constants';\nimport {\n getScrollYOffset,\n convertScrollbarXScrollState,\n convertScrollbarYScrollState,\n} from './ScrollContainer.helpers';\nimport type { ScrollAxis, ScrollBarScrollState } from './ScrollBar';\nimport { ScrollBar } from './ScrollBar';\n\nexport type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';\nexport type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';\nexport type ScrollContainerScrollState = ScrollContainerScrollStateY; // deprecated\nexport type ScrollBehaviour = 'auto' | 'smooth';\n\ntype OffsetCSSPropsY = 'top' | 'right' | 'bottom';\ntype OffsetCSSPropsX = 'right' | 'bottom' | 'left';\n\nexport interface ScrollContainerProps extends CommonProps {\n /** Инвертирует цвет скроллбара.\n * @default false */\n invert?: boolean;\n\n /** Задает максимальную высоту. */\n maxHeight?: React.CSSProperties['maxHeight'];\n\n /** Задает максимальную ширину. */\n maxWidth?: React.CSSProperties['maxWidth'];\n\n /** Отключает скролл окна, когда меню открыто.\n * @default false */\n preventWindowScroll?: boolean;\n\n /** Задает поведение скролла. (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto' */\n scrollBehaviour?: ScrollBehaviour;\n\n /** Задает функцию, которая вызывается при скроле по горизонтали. */\n onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;\n\n /** Задает функцию, которая вызывается при скроле по вертикали. */\n onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;\n\n /** Задает функцию, которая вызывается при скроле.\n * @deprecated use onScroll */\n onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void;\n\n /** Задает функцию, которая вызывается при скроле. */\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n\n /** Отключает кастомный скролл. */\n disabled?: boolean;\n\n /** Задает смещение вертикального скроллбара. */\n offsetY?: Partial<Record<OffsetCSSPropsY, React.CSSProperties[OffsetCSSPropsY]>>;\n\n /** Задает смещение горизонтального скроллбара. */\n offsetX?: Partial<Record<OffsetCSSPropsX, React.CSSProperties[OffsetCSSPropsX]>>;\n\n /** Определяет, нужно ли показывать скроллбар. */\n showScrollBar?: 'always' | 'scroll' | 'hover' | 'never';\n\n /** Устанавливает задержку в миллисекундах перед скрытием скроллбара.\n * Работает только при hideScrollBar = true или showScrollBar = 'scroll' | 'hover'. */\n hideScrollBarDelay?: number;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n scrollRef?: React.Ref<HTMLDivElement | null>;\n}\n\nexport const ScrollContainerDataTids = {\n root: 'ScrollContainer__root',\n inner: 'ScrollContainer__inner',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n ScrollContainerProps,\n 'invert' | 'scrollBehaviour' | 'preventWindowScroll' | 'disableAnimations' | 'hideScrollBarDelay' | 'showScrollBar'\n >\n>;\n\ninterface ScrollContainerState {\n isScrollBarXVisible: boolean;\n isScrollBarYVisible: boolean;\n isHovered: boolean;\n}\n\n/**\n * `ScrollContainer` используется для создания контейнера с кастомными полосами прокрутки, который обеспечивает прокрутку содержимого по горизонтали или вертикали.\n */\n@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps, ScrollContainerState> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\n public static displayName = 'ScrollContainer';\n\n public inner: Nullable<HTMLElement>;\n\n public static propTypes = {\n invert: PropTypes.bool,\n maxWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n scrollBehaviour: PropTypes.oneOf(['auto', 'smooth']),\n preventWindowScroll: PropTypes.bool,\n onScrollStateChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n invert: false,\n scrollBehaviour: 'auto',\n preventWindowScroll: false,\n disableAnimations: isTestEnv,\n hideScrollBarDelay: 500,\n showScrollBar: 'always',\n };\n\n private getProps = createPropsGetter(ScrollContainer.defaultProps);\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n private setRootNode!: TSetRootNode;\n private initialIsScrollBarVisible = this.getProps().showScrollBar === 'always';\n\n public state: ScrollContainerState = {\n isScrollBarXVisible: this.initialIsScrollBarVisible,\n isScrollBarYVisible: this.initialIsScrollBarVisible,\n isHovered: false,\n };\n\n public componentDidMount() {\n this.updateInnerElement();\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n const preventWindowScroll = this.getProps().preventWindowScroll;\n if (this.inner) {\n if (prevProps.preventWindowScroll && !preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n }\n\n if (prevProps.disabled !== this.props.disabled && !this.props.disabled) {\n this.updateInnerElement();\n }\n\n if (prevProps.showScrollBar !== this.props.showScrollBar) {\n if (this.props.showScrollBar === 'always') {\n this.setState({ isScrollBarXVisible: true, isScrollBarYVisible: true });\n } else if (this.props.showScrollBar === 'never') {\n this.setState({ isScrollBarXVisible: false, isScrollBarYVisible: false });\n }\n }\n }\n\n public render = () => {\n const props = this.props;\n\n if (this.props.disabled) {\n return this.props.children;\n }\n\n const innerStyle: React.CSSProperties = {\n scrollBehavior: this.getProps().scrollBehaviour,\n maxHeight: props.maxHeight,\n maxWidth: props.maxWidth,\n };\n\n const scrollbarY = this.renderScrollbar('y');\n const scrollbarX = this.renderScrollbar('x');\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={ScrollContainerDataTids.root}\n className={styles.root()}\n onMouseMove={this.handleMouseMove}\n onMouseLeave={this.handleMouseLeave}\n >\n {scrollbarY}\n {scrollbarX}\n <div\n style={innerStyle}\n ref={this.refInner}\n className={cx(styles.inner(), globalClasses.inner, isIE11 && styles.innerIE11())}\n data-tid={ScrollContainerDataTids.inner}\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n * @param {Element} element\n */\n public scrollTo(element: Nullable<HTMLElement>) {\n if (!element || !this.inner) {\n return;\n }\n\n this.inner.scrollLeft = element.offsetLeft;\n this.inner.scrollTop = getScrollYOffset(element, this.inner);\n }\n\n /**\n * @public\n */\n public scrollToTop() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = 0;\n }\n\n /**\n * @public\n */\n public scrollToBottom() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = this.inner.scrollHeight - this.inner.offsetHeight;\n }\n\n /**\n * @public\n */\n public scrollToLeft() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollLeft = 0;\n }\n\n /**\n * @public\n */\n public scrollToRight() {\n if (!this.inner) {\n return;\n }\n\n this.inner.scrollLeft = this.inner.scrollWidth - this.inner.offsetWidth;\n }\n\n public hasScrollBar(axis: ScrollAxis) {\n if (!this.inner) {\n return false;\n }\n\n return axis === 'x'\n ? this.inner.offsetWidth < this.inner.scrollWidth\n : this.inner.offsetHeight < this.inner.scrollHeight;\n }\n\n private renderScrollbar = (axis: ScrollAxis) => {\n const { offsetY, offsetX, invert, disableAnimations } = this.getProps();\n const isAxisX = axis === 'x';\n const refScrollBar = isAxisX ? this.refScrollBarX : this.refScrollBarY;\n const offset = isAxisX ? offsetX : offsetY;\n const isVisible = isAxisX ? this.state.isScrollBarXVisible : this.state.isScrollBarYVisible;\n\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={invert}\n onScroll={this.handleScroll}\n offset={offset}\n disableAnimations={disableAnimations}\n isVisible={isVisible}\n />\n );\n };\n\n private handleScrollStateChange = (scrollState: ScrollBarScrollState, axis: ScrollAxis) => {\n if (!this.scrollY || !this.scrollX) {\n return;\n }\n\n if (axis === 'x') {\n const scrollXState = convertScrollbarXScrollState(scrollState);\n\n this.props.onScrollStateChangeX?.(scrollXState);\n return;\n }\n\n const scrollYState = convertScrollbarYScrollState(scrollState);\n\n this.props.onScrollStateChange?.(scrollYState);\n this.props.onScrollStateChangeY?.(scrollYState);\n };\n\n private handleScroll = (\n axis: ScrollAxis,\n scrollState: ScrollBarScrollState,\n prevScrollState: ScrollBarScrollState,\n ) => {\n if (scrollState !== prevScrollState) {\n this.handleScrollStateChange(scrollState, axis);\n }\n const { showScrollBar } = this.getProps();\n showScrollBar === 'scroll' && this.showScrollBarOnMouseWheel(axis);\n };\n\n private refScrollBarY = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollY = scrollbar;\n };\n\n private refScrollBarX = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollX = scrollbar;\n };\n\n private refInner = (element: HTMLElement | null) => {\n if (!this.inner && element && this.getProps().preventWindowScroll) {\n element.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n if (this.inner && !element) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n this.inner = element;\n\n if (this.props.scrollRef) {\n callChildRef(this.props.scrollRef, element);\n }\n };\n\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\n this.scrollY?.reflow();\n this.scrollX?.reflow();\n\n this.props.onScroll?.(event);\n if (this.getProps().preventWindowScroll) {\n event.preventDefault();\n return;\n }\n LayoutEvents.emit();\n };\n\n private showScrollBarOnMouseWheel = (axis: ScrollAxis) => {\n const isScrollBarVisible = axis === 'x' ? this.state.isScrollBarXVisible : this.state.isScrollBarYVisible;\n if (!isScrollBarVisible) {\n axis === 'x' ? this.setState({ isScrollBarXVisible: true }) : this.setState({ isScrollBarYVisible: true });\n }\n this.hideScrollBar(axis);\n };\n\n private readonly hideScrollBar = debounce((axis: ScrollAxis | 'both') => {\n if (this.state.isHovered) {\n return;\n }\n const isScrollBarXHovered = this.scrollX?.getHover();\n const isScrollBarYHovered = this.scrollY?.getHover();\n if (axis === 'both') {\n !isScrollBarXHovered && !isScrollBarYHovered\n ? this.setState({ isScrollBarXVisible: false, isScrollBarYVisible: false })\n : this.hideScrollBar('both');\n } else if (axis === 'x') {\n !isScrollBarXHovered ? this.setState({ isScrollBarXVisible: false }) : this.hideScrollBar('x');\n } else {\n !isScrollBarYHovered ? this.setState({ isScrollBarYVisible: false }) : this.hideScrollBar('y');\n }\n }, this.getProps().hideScrollBarDelay);\n\n private handleInnerScrollWheel = (event: Event) => {\n if (!this.inner || !isInstanceOf(event, globalObject.WheelEvent)) {\n return;\n }\n\n const axis: ScrollAxis = event.shiftKey ? 'x' : 'y';\n\n if (this.hasScrollBar(axis)) {\n const { pos, size, offset } = scrollSizeParametersNames[axis];\n\n if (event.deltaY > 0 && this.inner[size] <= this.inner[pos] + this.inner[offset]) {\n event.preventDefault();\n return false;\n }\n if (event.deltaY < 0 && this.inner[pos] <= 0) {\n event.preventDefault();\n return false;\n }\n }\n };\n\n private handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n const right = getDOMRect(event.currentTarget).right - event.pageX;\n const bottom = getDOMRect(event.currentTarget).bottom - event.pageY;\n\n this.scrollY?.setHover(right <= 12);\n this.scrollX?.setHover(right >= 12 && bottom <= 12);\n\n this.getProps().showScrollBar === 'hover' &&\n !this.state.isHovered &&\n this.setState({ isScrollBarXVisible: true, isScrollBarYVisible: true, isHovered: true });\n };\n\n private handleMouseLeave = () => {\n this.scrollY?.setHover(false);\n this.scrollX?.setHover(false);\n if (this.getProps().showScrollBar === 'hover') {\n this.setState({ isHovered: false });\n this.hideScrollBar('both');\n }\n };\n\n private updateInnerElement = () => {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_lodash","_isInstanceOf","LayoutEvents","_interopRequireWildcard","_CommonWrapper","_Emotion","_client","_rootNode","_getDOMRect","_createPropsGetter","_currentEnvironment","_callChildRef","_ScrollContainer2","_ScrollContainer3","_ScrollContainer4","_ScrollBar","_class","_ScrollContainer","ScrollContainerDataTids","exports","root","inner","ScrollContainer","rootNode","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","initialIsScrollBarVisible","showScrollBar","state","isScrollBarXVisible","isScrollBarYVisible","isHovered","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","default","createElement","CommonWrapper","_extends2","rootNodeRef","setRootNode","className","styles","onMouseMove","handleMouseMove","onMouseLeave","handleMouseLeave","style","ref","refInner","cx","globalClasses","isIE11","innerIE11","onScroll","handleNativeScroll","axis","_this$getProps","offsetY","offsetX","invert","disableAnimations","isAxisX","refScrollBar","refScrollBarX","refScrollBarY","offset","isVisible","ScrollBar","handleScroll","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","convertScrollbarXScrollState","onScrollStateChangeX","scrollYState","convertScrollbarYScrollState","onScrollStateChange","onScrollStateChangeY","prevScrollState","_this$getProps2","showScrollBarOnMouseWheel","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","scrollRef","callChildRef","event","_this$scrollY","_this$scrollX","reflow","preventDefault","emit","isScrollBarVisible","setState","hideScrollBar","debounce","_this$scrollX2","_this$scrollY2","isScrollBarXHovered","getHover","isScrollBarYHovered","hideScrollBarDelay","isInstanceOf","globalObject","WheelEvent","shiftKey","hasScrollBar","_scrollSizeParameters","scrollSizeParametersNames","pos","size","deltaY","_this$scrollY3","_this$scrollX3","right","getDOMRect","currentTarget","pageX","bottom","pageY","setHover","_this$scrollY4","_this$scrollX4","updateInnerElement","_this$scrollX5","_this$scrollY5","setInnerElement","_inheritsLoose2","_proto","prototype","componentDidMount","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","getScrollYOffset","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","React","Component","__KONTUR_REACT_UI__","displayName","isTestEnv"],"sources":["ScrollContainer.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\nimport debounce from 'lodash.debounce';\n\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\n\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { scrollSizeParametersNames } from './ScrollContainer.constants';\nimport {\n getScrollYOffset,\n convertScrollbarXScrollState,\n convertScrollbarYScrollState,\n} from './ScrollContainer.helpers';\nimport type { ScrollAxis, ScrollBarScrollState } from './ScrollBar';\nimport { ScrollBar } from './ScrollBar';\n\nexport type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';\nexport type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';\nexport type ScrollContainerScrollState = ScrollContainerScrollStateY; // deprecated\nexport type ScrollBehaviour = 'auto' | 'smooth';\n\ntype OffsetCSSPropsY = 'top' | 'right' | 'bottom';\ntype OffsetCSSPropsX = 'right' | 'bottom' | 'left';\n\nexport interface ScrollContainerProps extends CommonProps {\n /** Инвертирует цвет скроллбара.\n * @default false */\n invert?: boolean;\n\n /** Задает максимальную высоту. */\n maxHeight?: React.CSSProperties['maxHeight'];\n\n /** Задает максимальную ширину. */\n maxWidth?: React.CSSProperties['maxWidth'];\n\n /** Отключает скролл окна, когда меню открыто.\n * @default false */\n preventWindowScroll?: boolean;\n\n /** Задает поведение скролла. (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto' */\n scrollBehaviour?: ScrollBehaviour;\n\n /** Задает функцию, которая вызывается при скроле по горизонтали. */\n onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;\n\n /** Задает функцию, которая вызывается при скроле по вертикали. */\n onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;\n\n /** Задает функцию, которая вызывается при скроле.\n * @deprecated use onScroll */\n onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void;\n\n /** Задает функцию, которая вызывается при скроле. */\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n\n /** Отключает кастомный скролл. */\n disabled?: boolean;\n\n /** Задает смещение вертикального скроллбара. */\n offsetY?: Partial<Record<OffsetCSSPropsY, React.CSSProperties[OffsetCSSPropsY]>>;\n\n /** Задает смещение горизонтального скроллбара. */\n offsetX?: Partial<Record<OffsetCSSPropsX, React.CSSProperties[OffsetCSSPropsX]>>;\n\n /** Определяет, нужно ли показывать скроллбар. */\n showScrollBar?: 'always' | 'scroll' | 'hover' | 'never';\n\n /** Устанавливает задержку в миллисекундах перед скрытием скроллбара.\n * Работает только при hideScrollBar = true или showScrollBar = 'scroll' | 'hover'. */\n hideScrollBarDelay?: number;\n\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n scrollRef?: React.Ref<HTMLDivElement | null>;\n}\n\nexport const ScrollContainerDataTids = {\n root: 'ScrollContainer__root',\n inner: 'ScrollContainer__inner',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n ScrollContainerProps,\n 'invert' | 'scrollBehaviour' | 'preventWindowScroll' | 'disableAnimations' | 'hideScrollBarDelay' | 'showScrollBar'\n >\n>;\n\ninterface ScrollContainerState {\n isScrollBarXVisible: boolean;\n isScrollBarYVisible: boolean;\n isHovered: boolean;\n}\n\n/**\n * `ScrollContainer` используется для создания контейнера с кастомными полосами прокрутки, который обеспечивает прокрутку содержимого по горизонтали или вертикали.\n */\n@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps, ScrollContainerState> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\n public static displayName = 'ScrollContainer';\n\n public inner: Nullable<HTMLElement>;\n\n public static defaultProps: DefaultProps = {\n invert: false,\n scrollBehaviour: 'auto',\n preventWindowScroll: false,\n disableAnimations: isTestEnv,\n hideScrollBarDelay: 500,\n showScrollBar: 'always',\n };\n\n private getProps = createPropsGetter(ScrollContainer.defaultProps);\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private initialIsScrollBarVisible = this.getProps().showScrollBar === 'always';\n\n public state: ScrollContainerState = {\n isScrollBarXVisible: this.initialIsScrollBarVisible,\n isScrollBarYVisible: this.initialIsScrollBarVisible,\n isHovered: false,\n };\n\n public componentDidMount() {\n this.updateInnerElement();\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n const preventWindowScroll = this.getProps().preventWindowScroll;\n if (this.inner) {\n if (prevProps.preventWindowScroll && !preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n }\n\n if (prevProps.disabled !== this.props.disabled && !this.props.disabled) {\n this.updateInnerElement();\n }\n\n if (prevProps.showScrollBar !== this.props.showScrollBar) {\n if (this.props.showScrollBar === 'always') {\n this.setState({ isScrollBarXVisible: true, isScrollBarYVisible: true });\n } else if (this.props.showScrollBar === 'never') {\n this.setState({ isScrollBarXVisible: false, isScrollBarYVisible: false });\n }\n }\n }\n\n public render = () => {\n const props = this.props;\n\n if (this.props.disabled) {\n return this.props.children;\n }\n\n const innerStyle: React.CSSProperties = {\n scrollBehavior: this.getProps().scrollBehaviour,\n maxHeight: props.maxHeight,\n maxWidth: props.maxWidth,\n };\n\n const scrollbarY = this.renderScrollbar('y');\n const scrollbarX = this.renderScrollbar('x');\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={ScrollContainerDataTids.root}\n className={styles.root()}\n onMouseMove={this.handleMouseMove}\n onMouseLeave={this.handleMouseLeave}\n >\n {scrollbarY}\n {scrollbarX}\n <div\n style={innerStyle}\n ref={this.refInner}\n className={cx(styles.inner(), globalClasses.inner, isIE11 && styles.innerIE11())}\n data-tid={ScrollContainerDataTids.inner}\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n * @param {Element} element\n */\n public scrollTo(element: Nullable<HTMLElement>) {\n if (!element || !this.inner) {\n return;\n }\n\n this.inner.scrollLeft = element.offsetLeft;\n this.inner.scrollTop = getScrollYOffset(element, this.inner);\n }\n\n /**\n * @public\n */\n public scrollToTop() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = 0;\n }\n\n /**\n * @public\n */\n public scrollToBottom() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollTop = this.inner.scrollHeight - this.inner.offsetHeight;\n }\n\n /**\n * @public\n */\n public scrollToLeft() {\n if (!this.inner) {\n return;\n }\n this.inner.scrollLeft = 0;\n }\n\n /**\n * @public\n */\n public scrollToRight() {\n if (!this.inner) {\n return;\n }\n\n this.inner.scrollLeft = this.inner.scrollWidth - this.inner.offsetWidth;\n }\n\n public hasScrollBar(axis: ScrollAxis) {\n if (!this.inner) {\n return false;\n }\n\n return axis === 'x'\n ? this.inner.offsetWidth < this.inner.scrollWidth\n : this.inner.offsetHeight < this.inner.scrollHeight;\n }\n\n private renderScrollbar = (axis: ScrollAxis) => {\n const { offsetY, offsetX, invert, disableAnimations } = this.getProps();\n const isAxisX = axis === 'x';\n const refScrollBar = isAxisX ? this.refScrollBarX : this.refScrollBarY;\n const offset = isAxisX ? offsetX : offsetY;\n const isVisible = isAxisX ? this.state.isScrollBarXVisible : this.state.isScrollBarYVisible;\n\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={invert}\n onScroll={this.handleScroll}\n offset={offset}\n disableAnimations={disableAnimations}\n isVisible={isVisible}\n />\n );\n };\n\n private handleScrollStateChange = (scrollState: ScrollBarScrollState, axis: ScrollAxis) => {\n if (!this.scrollY || !this.scrollX) {\n return;\n }\n\n if (axis === 'x') {\n const scrollXState = convertScrollbarXScrollState(scrollState);\n\n this.props.onScrollStateChangeX?.(scrollXState);\n return;\n }\n\n const scrollYState = convertScrollbarYScrollState(scrollState);\n\n this.props.onScrollStateChange?.(scrollYState);\n this.props.onScrollStateChangeY?.(scrollYState);\n };\n\n private handleScroll = (\n axis: ScrollAxis,\n scrollState: ScrollBarScrollState,\n prevScrollState: ScrollBarScrollState,\n ) => {\n if (scrollState !== prevScrollState) {\n this.handleScrollStateChange(scrollState, axis);\n }\n const { showScrollBar } = this.getProps();\n showScrollBar === 'scroll' && this.showScrollBarOnMouseWheel(axis);\n };\n\n private refScrollBarY = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollY = scrollbar;\n };\n\n private refScrollBarX = (scrollbar: Nullable<ScrollBar>) => {\n this.scrollX = scrollbar;\n };\n\n private refInner = (element: HTMLElement | null) => {\n if (!this.inner && element && this.getProps().preventWindowScroll) {\n element.addEventListener('wheel', this.handleInnerScrollWheel, { passive: false });\n }\n if (this.inner && !element) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n this.inner = element;\n\n if (this.props.scrollRef) {\n callChildRef(this.props.scrollRef, element);\n }\n };\n\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\n this.scrollY?.reflow();\n this.scrollX?.reflow();\n\n this.props.onScroll?.(event);\n if (this.getProps().preventWindowScroll) {\n event.preventDefault();\n return;\n }\n LayoutEvents.emit();\n };\n\n private showScrollBarOnMouseWheel = (axis: ScrollAxis) => {\n const isScrollBarVisible = axis === 'x' ? this.state.isScrollBarXVisible : this.state.isScrollBarYVisible;\n if (!isScrollBarVisible) {\n axis === 'x' ? this.setState({ isScrollBarXVisible: true }) : this.setState({ isScrollBarYVisible: true });\n }\n this.hideScrollBar(axis);\n };\n\n private readonly hideScrollBar = debounce((axis: ScrollAxis | 'both') => {\n if (this.state.isHovered) {\n return;\n }\n const isScrollBarXHovered = this.scrollX?.getHover();\n const isScrollBarYHovered = this.scrollY?.getHover();\n if (axis === 'both') {\n !isScrollBarXHovered && !isScrollBarYHovered\n ? this.setState({ isScrollBarXVisible: false, isScrollBarYVisible: false })\n : this.hideScrollBar('both');\n } else if (axis === 'x') {\n !isScrollBarXHovered ? this.setState({ isScrollBarXVisible: false }) : this.hideScrollBar('x');\n } else {\n !isScrollBarYHovered ? this.setState({ isScrollBarYVisible: false }) : this.hideScrollBar('y');\n }\n }, this.getProps().hideScrollBarDelay);\n\n private handleInnerScrollWheel = (event: Event) => {\n if (!this.inner || !isInstanceOf(event, globalObject.WheelEvent)) {\n return;\n }\n\n const axis: ScrollAxis = event.shiftKey ? 'x' : 'y';\n\n if (this.hasScrollBar(axis)) {\n const { pos, size, offset } = scrollSizeParametersNames[axis];\n\n if (event.deltaY > 0 && this.inner[size] <= this.inner[pos] + this.inner[offset]) {\n event.preventDefault();\n return false;\n }\n if (event.deltaY < 0 && this.inner[pos] <= 0) {\n event.preventDefault();\n return false;\n }\n }\n };\n\n private handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n const right = getDOMRect(event.currentTarget).right - event.pageX;\n const bottom = getDOMRect(event.currentTarget).bottom - event.pageY;\n\n this.scrollY?.setHover(right <= 12);\n this.scrollX?.setHover(right >= 12 && bottom <= 12);\n\n this.getProps().showScrollBar === 'hover' &&\n !this.state.isHovered &&\n this.setState({ isScrollBarXVisible: true, isScrollBarYVisible: true, isHovered: true });\n };\n\n private handleMouseLeave = () => {\n this.scrollY?.setHover(false);\n this.scrollX?.setHover(false);\n if (this.getProps().showScrollBar === 'hover') {\n this.setState({ isHovered: false });\n this.hideScrollBar('both');\n }\n };\n\n private updateInnerElement = () => {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,9 @@ import type { ButtonUse } from '../Button';
|
|
|
4
4
|
import type { Nullable } from '../../typings/utility-types';
|
|
5
5
|
import type { Theme, ThemeIn } from '../../lib/theming/Theme';
|
|
6
6
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
7
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
7
8
|
import type { SizeProp } from '../../lib/types/props';
|
|
9
|
+
import { type PopupPositionsType } from '../../internal/Popup';
|
|
8
10
|
import { Item } from './Item';
|
|
9
11
|
export * from './tids';
|
|
10
12
|
export interface ButtonParams extends Pick<AriaAttributes, 'aria-describedby' | 'aria-controls' | 'aria-label' | 'aria-expanded'> {
|
|
@@ -71,6 +73,8 @@ export interface SelectProps<TValue, TItem> extends CommonProps, Pick<AriaAttrib
|
|
|
71
73
|
maxMenuHeight?: number;
|
|
72
74
|
/** Задает максимальную ширину. */
|
|
73
75
|
maxWidth?: React.CSSProperties['maxWidth'];
|
|
76
|
+
/** Задает позиции выпадающего меню. */
|
|
77
|
+
positions?: PopupPositionsType[];
|
|
74
78
|
/** Задает текущую позицию выпадающего окна вручную. */
|
|
75
79
|
menuPos?: 'top' | 'bottom' | 'middle';
|
|
76
80
|
/** Задает выравнивание меню. */
|
|
@@ -124,7 +128,7 @@ export interface SelectState<TValue> {
|
|
|
124
128
|
searchPattern: string;
|
|
125
129
|
value: Nullable<TValue>;
|
|
126
130
|
}
|
|
127
|
-
type DefaultProps<TValue, TItem> = Required<Pick<SelectProps<TValue, TItem>, 'renderValue' | 'renderItem' | 'areValuesEqual' | 'filterItem' | 'use'
|
|
131
|
+
type DefaultProps<TValue, TItem> = Required<Pick<SelectProps<TValue, TItem>, 'renderValue' | 'renderItem' | 'areValuesEqual' | 'filterItem' | 'use'>>;
|
|
128
132
|
/**
|
|
129
133
|
* Раскрывающийся список `Select` позволяет выбрать значение из заранее известного набора вариантов.
|
|
130
134
|
*
|
|
@@ -144,12 +148,14 @@ export declare class Select<TValue = {}, TItem = {}> extends React.Component<Sel
|
|
|
144
148
|
static staticElement: (element: React.ReactElement | (() => React.ReactElement)) => React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | (() => React.ReactElement);
|
|
145
149
|
state: SelectState<TValue>;
|
|
146
150
|
private theme;
|
|
151
|
+
private size;
|
|
147
152
|
private isMobileLayout;
|
|
148
153
|
private readonly locale;
|
|
149
154
|
private menu;
|
|
150
155
|
private menuId;
|
|
151
156
|
private buttonElement;
|
|
152
157
|
private getProps;
|
|
158
|
+
getRootNode: TGetRootNode;
|
|
153
159
|
private setRootNode;
|
|
154
160
|
componentDidUpdate(_prevProps: SelectProps<TValue, TItem>, prevState: SelectState<TValue>): void;
|
|
155
161
|
render(): React.JSX.Element;
|
|
@@ -42,6 +42,7 @@ var _Link = require("../Link/Link.styles");
|
|
|
42
42
|
var _Popup = require("../../internal/Popup");
|
|
43
43
|
var _ZIndex = require("../../internal/ZIndex");
|
|
44
44
|
var _getMenuPositions = require("../../lib/getMenuPositions");
|
|
45
|
+
var _SizeDecorator = require("../../lib/size/SizeDecorator");
|
|
45
46
|
|
|
46
47
|
var _ArrowDownIcon = require("./ArrowDownIcon");
|
|
47
48
|
var _Item = require("./Item");
|
|
@@ -243,6 +244,9 @@ var SelectIds = exports.SelectIds = {
|
|
|
243
244
|
|
|
244
245
|
|
|
245
246
|
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
246
250
|
|
|
247
251
|
|
|
248
252
|
|
|
@@ -262,9 +266,10 @@ var SelectIds = exports.SelectIds = {
|
|
|
262
266
|
|
|
263
267
|
|
|
264
268
|
|
|
265
|
-
Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.SelectLocaleHelper), (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class = _dec(_class = (_Select = /*#__PURE__*/function (_React$Component) {function Select() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
|
|
266
269
|
|
|
267
270
|
|
|
271
|
+
Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.SelectLocaleHelper), (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class = _dec(_class = (0, _SizeDecorator.withSize)(_class = (_Select = /*#__PURE__*/function (_React$Component) {function Select() {var _this;for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;_this.
|
|
272
|
+
|
|
268
273
|
|
|
269
274
|
|
|
270
275
|
|
|
@@ -296,6 +301,7 @@ Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.Sele
|
|
|
296
301
|
|
|
297
302
|
|
|
298
303
|
|
|
304
|
+
|
|
299
305
|
menuId = SelectIds.menu + (0, _utils.getRandomID)();_this.
|
|
300
306
|
buttonElement = null;_this.
|
|
301
307
|
getProps = (0, _createPropsGetter.createPropsGetter)(Select.defaultProps);
|
|
@@ -324,6 +330,7 @@ Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.Sele
|
|
|
324
330
|
|
|
325
331
|
|
|
326
332
|
|
|
333
|
+
|
|
327
334
|
|
|
328
335
|
|
|
329
336
|
/**
|
|
@@ -426,7 +433,7 @@ Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.Sele
|
|
|
426
433
|
isPlaceholder: isPlaceholder,
|
|
427
434
|
onClick: _this.toggle,
|
|
428
435
|
onKeyDown: _this.handleKey,
|
|
429
|
-
size: _this.
|
|
436
|
+
size: _this.size,
|
|
430
437
|
disabled: _this.getProps().disabled
|
|
431
438
|
};
|
|
432
439
|
|
|
@@ -607,7 +614,7 @@ Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.Sele
|
|
|
607
614
|
|
|
608
615
|
getMenuItems = function (value) {
|
|
609
616
|
var isMobile = _this.isMobileLayout;
|
|
610
|
-
var size = _this.
|
|
617
|
+
var size = _this.size;
|
|
611
618
|
|
|
612
619
|
return _this.mapItems(
|
|
613
620
|
function (iValue, item, i, comment) {
|
|
@@ -638,7 +645,7 @@ Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.Sele
|
|
|
638
645
|
onClick: _this.select.bind(_this, iValue),
|
|
639
646
|
comment: comment,
|
|
640
647
|
isMobile: isMobile,
|
|
641
|
-
size: _this.
|
|
648
|
+
size: _this.size },
|
|
642
649
|
|
|
643
650
|
_this.getProps().renderItem(iValue, item)
|
|
644
651
|
));
|
|
@@ -784,14 +791,14 @@ Select = exports.Select = (_dec = (0, _decorators.locale)('Select', _locale.Sele
|
|
|
784
791
|
ref: _this.buttonRef,
|
|
785
792
|
onFocus: _this.props.onFocus,
|
|
786
793
|
onBlur: _this.props.onBlur,
|
|
787
|
-
size: _this.
|
|
794
|
+
size: _this.size,
|
|
788
795
|
'aria-describedby': _this.props['aria-describedby'],
|
|
789
796
|
'aria-expanded': _this.state.opened ? 'true' : 'false',
|
|
790
797
|
'aria-controls': _this.menuId,
|
|
791
798
|
'aria-label': (_props$ariaLabel = buttonElement.props['aria-label']) != null ? _props$ariaLabel : _this.props['aria-label']
|
|
792
799
|
}) :
|
|
793
800
|
buttonElement;
|
|
794
|
-
};return _this;}(0, _inheritsLoose2.default)(Select, _React$Component);var _proto = Select.prototype;_proto.componentDidUpdate = function componentDidUpdate(_prevProps, prevState) {if (!prevState.opened && this.state.opened) {_globalObject.globalObject.addEventListener == null || _globalObject.globalObject.addEventListener('popstate', this.close);}if (prevState.opened && !this.state.opened) {_globalObject.globalObject.removeEventListener == null || _globalObject.globalObject.removeEventListener('popstate', this.close);}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = _ThemeFactory.ThemeFactory.create({ menuOffsetY: theme.selectMenuOffsetY }, theme);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _this2.theme }, _this2.renderMain());});};_proto.getMenuRenderer = function getMenuRenderer() {if (this.props.disabled) {return null;}if (this.isMobileLayout) {return this.renderMobileMenu();}if (this.state.opened) {return this.renderMenu();}return null;};_proto.renderMain = function renderMain() {var _this$getProps$dataT, _cx;var buttonParams = this.getDefaultButtonParams();var dataTid = (_this$getProps$dataT = this.getProps()['data-tid']) != null ? _this$getProps$dataT : _tids.SelectDataTids.root;var button = /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _selectTheme.getSelectTheme)(this.theme, this.props) }, this.getButton(buttonParams));var isMobile = this.isMobileLayout;var style = { width: this.props.width, maxWidth: this.props.maxWidth || undefined };var root = /*#__PURE__*/_react.default.createElement("span", { "data-tid": dataTid, className: (0, _Emotion.cx)((_cx = {}, _cx[_Select2.styles.root()] = true, _cx[_Select2.styles.rootMobile(this.theme)] = isMobile, _cx)), style: style }, button, this.getMenuRenderer());return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: this.close, onFocusOutside: this.close, active: isMobile ? false : this.state.opened }, root));};_proto.renderLabel = function renderLabel() {var _this$locale;var value = this.getValue();var item = this.getItemByValue(value);if ((0, _utils.isNonNullable)(value)) {return { label: this.getProps().renderValue(value, item), isPlaceholder: false };}return { label: /*#__PURE__*/_react.default.createElement("span", null, this.props.placeholder
|
|
801
|
+
};return _this;}(0, _inheritsLoose2.default)(Select, _React$Component);var _proto = Select.prototype;_proto.componentDidUpdate = function componentDidUpdate(_prevProps, prevState) {if (!prevState.opened && this.state.opened) {_globalObject.globalObject.addEventListener == null || _globalObject.globalObject.addEventListener('popstate', this.close);}if (prevState.opened && !this.state.opened) {_globalObject.globalObject.removeEventListener == null || _globalObject.globalObject.removeEventListener('popstate', this.close);}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = _ThemeFactory.ThemeFactory.create({ menuOffsetY: theme.selectMenuOffsetY }, theme);return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _this2.theme }, _this2.renderMain());});};_proto.getMenuRenderer = function getMenuRenderer() {if (this.props.disabled) {return null;}if (this.isMobileLayout) {return this.renderMobileMenu();}if (this.state.opened) {return this.renderMenu();}return null;};_proto.renderMain = function renderMain() {var _this$getProps$dataT, _cx;var buttonParams = this.getDefaultButtonParams();var dataTid = (_this$getProps$dataT = this.getProps()['data-tid']) != null ? _this$getProps$dataT : _tids.SelectDataTids.root;var button = /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: (0, _selectTheme.getSelectTheme)(this.theme, this.props) }, this.getButton(buttonParams));var isMobile = this.isMobileLayout;var style = { width: this.props.width, maxWidth: this.props.maxWidth || undefined };var root = /*#__PURE__*/_react.default.createElement("span", { "data-tid": dataTid, className: (0, _Emotion.cx)((_cx = {}, _cx[_Select2.styles.root()] = true, _cx[_Select2.styles.rootMobile(this.theme)] = isMobile, _cx)), style: style }, button, this.getMenuRenderer());return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: this.setRootNode }, this.props), /*#__PURE__*/_react.default.createElement(_RenderLayer.RenderLayer, { onClickOutside: this.close, onFocusOutside: this.close, active: isMobile ? false : this.state.opened }, root));};_proto.renderLabel = function renderLabel() {var _this$props$placehold, _this$locale;var value = this.getValue();var item = this.getItemByValue(value);if ((0, _utils.isNonNullable)(value)) {return { label: this.getProps().renderValue(value, item), isPlaceholder: false };}return { label: /*#__PURE__*/_react.default.createElement("span", null, (_this$props$placehold = this.props.placeholder) != null ? _this$props$placehold : (_this$locale = this.locale) == null ? void 0 : _this$locale.placeholder), isPlaceholder: true };};_proto.getLeftIconClass = function getLeftIconClass(size) {if (this.getProps().use === 'link') {return _Select2.styles.leftIconLink(this.theme);}switch (size) {case 'large':return _Select2.styles.leftIconLarge(this.theme);case 'medium':return _Select2.styles.leftIconMedium(this.theme);case 'small':default:return _Select2.styles.leftIconSmall(this.theme);}};_proto.renderDefaultButton = function renderDefaultButton(params) {var _cx2, _cx3, _cx4;var buttonProps = (0, _extends2.default)({}, (0, _filterProps.filterProps)(this.props, PASS_BUTTON_PROPS), { align: 'left', disabled: this.props.disabled, width: '100%', onClick: params.onClick, onKeyDown: params.onKeyDown, active: params.opened, size: params.size });var use = this.getProps().use;var labelProps = { 'data-tid': _tids.SelectDataTids.label, className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_Select2.styles.label()] = use !== 'link', _cx2[_Select2.styles.placeholder(this.theme)] = params.isPlaceholder, _cx2[_Select2.styles.customUsePlaceholder()] = params.isPlaceholder && use !== 'default', _cx2[_Select2.styles.placeholderDisabled(this.theme)] = params.isPlaceholder && this.props.disabled, _cx2)), style: { paddingRight: this.getSelectIconGap() } };var useIsCustom = use !== 'default';var icon = /*#__PURE__*/_react.default.createElement(_ArrowDownIcon.ArrowDownIcon, { size: this.size });return /*#__PURE__*/_react.default.createElement(_Button.Button, buttonProps, /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Select2.styles.selectButtonContainer(), (_cx3 = {}, _cx3[_Link.styles.root(this.theme)] = use === 'link', _cx3)) }, this.props._icon && /*#__PURE__*/_react.default.createElement("div", { className: this.getLeftIconClass(this.size) }, this.props._icon), /*#__PURE__*/_react.default.createElement("span", labelProps, params.label), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Select2.styles.arrowWrap(this.theme), (_cx4 = {}, _cx4[_Select2.styles.arrowDisabled(this.theme)] = this.props.disabled, _cx4[_Select2.styles.customUseArrow()] = useIsCustom, _cx4)) }, icon)));};_proto.getSelectIconGap = function getSelectIconGap() {var _this3 = this;var getArrowPadding = function getArrowPadding() {switch (_this3.size) {case 'large':return _this3.theme.selectIconGapLarge;case 'medium':return _this3.theme.selectIconGapMedium;case 'small':default:return _this3.theme.selectIconGapSmall;}};var arrowLeftPadding = parseFloat(getArrowPadding()) || 0;return arrowLeftPadding;};_proto.renderMenu = function renderMenu() {var search = this.props.search ? this.getSearch() : null;var value = this.getValue();var _this$getProps = this.getProps(),menuWidth = _this$getProps.menuWidth,menuPos = _this$getProps.menuPos,menuAlign = _this$getProps.menuAlign,positions = _this$getProps.positions;return /*#__PURE__*/_react.default.createElement(_Popup.Popup, { opened: true, hasShadow: true, id: this.menuId, "data-tid": _tids.SelectDataTids.menu, positions: positions != null ? positions : (0, _getMenuPositions.getMenuPositions)(menuPos, menuAlign), anchorElement: this.popupGetParent(), priority: _ZIndex.ZIndex.priorities.PopupMenu, disablePortal: this.props.disablePortal, margin: parseInt(this.theme.menuOffsetY) - 1, width: menuWidth, minWidth: menuWidth === undefined ? '100%' : undefined, popupOffset: this.props.menuOffset }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, { hasMargin: false, ref: this.refMenu, onItemClick: this.close, maxHeight: this.props.maxMenuHeight, align: menuAlign }, search, this.getMenuItems(value)));};_proto.renderMobileMenu = function renderMobileMenu() {var search = this.props.search ? this.getMobileSearch() : null;var value = this.getValue();return /*#__PURE__*/_react.default.createElement(_MobilePopup.MobilePopup, { headerChildComponent: search, caption: this.props.mobileMenuHeaderText, onCloseRequest: this.close, opened: this.state.opened }, /*#__PURE__*/_react.default.createElement(_Menu.Menu, { onItemClick: this.close, disableScrollContainer: true, maxHeight: 'auto' }, this.getMenuItems(value)));};_proto.select = function select(value) {this.focus();this.setState({ opened: false, value: value });if (!this.areValuesEqual(this.getValue(), value)) {var _this$props$onValueCh, _this$props;(_this$props$onValueCh = (_this$props = this.props).onValueChange) == null || _this$props$onValueCh.call(_this$props, value);}};_proto.getValue = function getValue() {if (this.props.value !== undefined) {return this.props.value;}return this.state.value;};_proto.mapItems = function mapItems(fn) {var items = this.props.items;if (!items) {return [];}var pattern = this.state.searchPattern && this.state.searchPattern.toLowerCase();var result = [];var index = 0;for (var _iterator = (0, _createForOfIteratorHelperLoose2.default)(items), _step; !(_step = _iterator()).done;) {var entry = _step.value;var _normalizeEntry = normalizeEntry(entry),value = _normalizeEntry[0],item = _normalizeEntry[1],comment = _normalizeEntry[2];if (!pattern || this.getProps().filterItem(value, item, pattern)) {result.push(fn(value, item, index, comment));++index;}}return result;};_proto.getItemByValue = function getItemByValue(value) {if (value === null || value === undefined) {return null;}var items = this.props.items || [];for (var _iterator2 = (0, _createForOfIteratorHelperLoose2.default)(items), _step2; !(_step2 = _iterator2()).done;) {var entry = _step2.value;var _normalizeEntry2 = normalizeEntry(entry),itemValue = _normalizeEntry2[0],item = _normalizeEntry2[1];if (this.areValuesEqual(itemValue, value)) {return item;}}return null;};_proto.areValuesEqual = function areValuesEqual(value1, value2) {return (0, _utils.isNonNullable)(value1) && (0, _utils.isNonNullable)(value2) && this.getProps().areValuesEqual(value1, value2);};return Select;}(_react.default.Component), _Select.__KONTUR_REACT_UI__ = 'Select', _Select.displayName = 'Select', _Select.defaultProps = { renderValue: renderValue, renderItem: renderItem, areValuesEqual: areValuesEqual, filterItem: filterItem, use: 'default' }, _Select.Item = _Item.Item, _Select.SEP = function () {return /*#__PURE__*/_react.default.createElement(_MenuSeparator.MenuSeparator, null);}, _Select.staticElement = function (element) {(0, _invariant.default)( /*#__PURE__*/_react.default.isValidElement(element) || typeof element === 'function', 'Select.staticElement(element) expects element to be a valid react element.');return element;}, _Select)) || _class) || _class) || _class) || _class);
|
|
795
802
|
|
|
796
803
|
|
|
797
804
|
function renderValue(value, item) {
|