@skbkontur/react-ui 5.2.1 → 5.3.1
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 +42 -0
- package/README.md +7 -7
- package/cjs/components/Autocomplete/Autocomplete.d.ts +6 -23
- package/cjs/components/Autocomplete/Autocomplete.js +49 -46
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +2 -0
- package/cjs/components/Button/Button.js +29 -1
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +6 -0
- package/cjs/components/Button/Button.styles.js +107 -75
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +2 -0
- package/cjs/components/Calendar/Calendar.js +1 -0
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +2 -0
- package/cjs/components/Center/Center.js +1 -0
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +2 -12
- package/cjs/components/Checkbox/Checkbox.js +2 -14
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +2 -0
- package/cjs/components/ComboBox/ComboBox.js +1 -0
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/cjs/components/CurrencyInput/CurrencyInput.js +5 -28
- 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 +2 -0
- package/cjs/components/DateInput/DateInput.js +1 -0
- package/cjs/components/DateInput/DateInput.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/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/FxInput/FxInput.d.ts +2 -5
- package/cjs/components/FxInput/FxInput.js +2 -7
- package/cjs/components/FxInput/FxInput.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 +2 -0
- package/cjs/components/Input/Input.js +1 -0
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +2 -1
- package/cjs/components/Kebab/Kebab.js +2 -26
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +2 -0
- package/cjs/components/Link/Link.js +1 -0
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +6 -36
- package/cjs/components/Loader/Loader.js +3 -57
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MaskedInput/MaskedInput.d.ts +1 -0
- package/cjs/components/MaskedInput/MaskedInput.js +17 -1
- 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 +1 -0
- package/cjs/components/Modal/Modal.styles.js +36 -28
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +2 -0
- package/cjs/components/Modal/ModalBody.js +1 -0
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +5 -0
- package/cjs/components/Modal/ModalHeader.js +8 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Paging/DotsIcon.d.ts +3 -0
- package/cjs/components/Paging/DotsIcon.js +13 -0
- package/cjs/components/Paging/DotsIcon.js.map +1 -0
- package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
- package/cjs/components/Paging/ForwardIcon.js +13 -1
- package/cjs/components/Paging/ForwardIcon.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
- package/cjs/components/Paging/NavigationHelper.js +8 -6
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +13 -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 +2 -7
- package/cjs/components/PasswordInput/PasswordInput.js +2 -11
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +2 -0
- package/cjs/components/Radio/Radio.js +1 -0
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -0
- package/cjs/components/RadioGroup/RadioGroup.js +1 -0
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -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 +2 -0
- package/cjs/components/Select/Select.js +2 -1
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
- package/cjs/components/SidePage/SidePage.styles.js +52 -38
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
- package/cjs/components/SidePage/SidePageBody.js +1 -0
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
- package/cjs/components/SidePage/SidePageContainer.js +1 -0
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
- package/cjs/components/SidePage/SidePageFooter.js +1 -0
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
- package/cjs/components/SidePage/SidePageHeader.js +60 -19
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/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 +2 -13
- package/cjs/components/Sticky/Sticky.js +2 -22
- 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 +2 -44
- package/cjs/components/Textarea/Textarea.js +2 -56
- package/cjs/components/Textarea/Textarea.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 +2 -0
- package/cjs/components/Toast/Toast.js +1 -0
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +2 -14
- package/cjs/components/Toast/ToastView.js +3 -22
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +2 -10
- package/cjs/components/Toggle/Toggle.js +1 -11
- 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 +2 -0
- package/cjs/components/TokenInput/TokenInput.js +1 -0
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +14 -9
- package/cjs/components/Tooltip/Tooltip.js +95 -13
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/index.d.ts +1 -0
- package/cjs/index.js.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 +2 -0
- package/cjs/internal/CustomComboBox/ComboBoxView.js +1 -0
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
- package/cjs/internal/CustomComboBox/CustomComboBox.js +1 -0
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
- package/cjs/internal/DateSelect/DateSelect.js +1 -18
- 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 +2 -0
- package/cjs/internal/InputLikeText/InputLikeText.js +1 -0
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/Menu/Menu.d.ts +2 -0
- package/cjs/internal/Menu/Menu.js +1 -0
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/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 +41 -59
- package/cjs/internal/Popup/Popup.js +36 -79
- 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 +1 -1
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +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 +112 -20
- package/cjs/internal/themes/BasicTheme.js +149 -18
- 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/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/lib/delay.mts +3 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +11 -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/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/theming/ThemeVersions.d.ts +1 -1
- package/cjs/lib/theming/ThemeVersions.js.map +1 -1
- package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -0
- package/cjs/lib/theming/themes/DarkTheme.js +4 -2
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +1 -0
- package/cjs/lib/theming/themes/LightTheme.js +4 -2
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/utils.d.ts +4 -0
- package/cjs/lib/utils.js +5 -1
- package/cjs/lib/utils.js.map +1 -1
- package/components/Autocomplete/Autocomplete/Autocomplete.js +49 -45
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +6 -23
- package/components/Button/Button/Button.js +26 -5
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +2 -0
- package/components/Button/Button.styles/Button.styles.js +78 -60
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +6 -0
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +2 -0
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +2 -0
- package/components/Checkbox/Checkbox/Checkbox.js +0 -11
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +2 -12
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +2 -0
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +12 -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.map +1 -1
- package/components/DateInput/DateInput.d.ts +2 -0
- 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/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/FxInput/FxInput/FxInput.js +1 -5
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +2 -5
- 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.map +1 -1
- package/components/Input/Input.d.ts +2 -0
- package/components/Kebab/Kebab/Kebab.js +2 -20
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +2 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +2 -0
- package/components/Loader/Loader/Loader.js +0 -33
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +6 -36
- package/components/MaskedInput/MaskedInput/MaskedInput.js +14 -0
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +1 -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 +31 -28
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +1 -0
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +2 -0
- package/components/Modal/ModalHeader/ModalHeader.js +3 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +5 -0
- package/components/Paging/DotsIcon/DotsIcon.js +14 -0
- package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
- package/components/Paging/DotsIcon/package.json +6 -0
- package/components/Paging/DotsIcon.d.ts +3 -0
- package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
- package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
- package/components/Paging/ForwardIcon.d.ts +3 -0
- package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/NavigationHelper.d.ts +3 -2
- package/components/Paging/Paging/Paging.js +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 +1 -7
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +2 -7
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +2 -0
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +2 -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 +2 -2
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +2 -0
- package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +3 -1
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +2 -0
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +2 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +2 -0
- package/components/SidePage/SidePageHeader/SidePageHeader.js +61 -39
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +12 -2
- package/components/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 +1 -13
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +2 -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 +1 -44
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +2 -44
- package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +2 -0
- package/components/Toast/ToastView/ToastView.js +3 -17
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +2 -14
- package/components/Toggle/Toggle/Toggle.js +1 -10
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +2 -10
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +2 -0
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +2 -0
- package/components/Tooltip/Tooltip/Tooltip.js +67 -20
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +14 -9
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/internal/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.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +2 -0
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +2 -0
- package/internal/DateSelect/DateSelect/DateSelect.js +1 -10
- 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.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +2 -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 +14 -64
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +41 -59
- 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 +4 -3
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +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 +170 -26
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +112 -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/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/lib/delay.d.mts +1 -0
- package/lib/delay.mts +3 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +5 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +6 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +5 -0
- package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
- package/lib/forwardRefAndName.d.ts +1 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +2 -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 +3 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +1 -0
- package/lib/theming/themes/LightTheme/LightTheme.js +3 -1
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +1 -0
- package/lib/utils/utils.js +2 -0
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +4 -0
- package/package.json +10 -13
- package/cjs/lib/SSRSafe.d.ts +0 -2
- package/cjs/lib/SSRSafe.js +0 -5
- package/cjs/lib/SSRSafe.js.map +0 -1
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","invariant","getRandomID","isNonNullable","Radio","createPropsGetter","FocusTrap","CommonWrapper","cx","rootNode","getVisualStateDataAttributes","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","Prevent","RadioGroupContext","RadioGroupDataTids","root","RadioGroup","_class","_RadioGroup","_React$Component","props","_this","call","name","getProps","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","setState","onValueChange","renderRadio","itemValue","data","index","_cx","itemProps","key","getKeyByItem","className","item","itemFirst","itemInline","inline","createElement","_extends","role","renderItem","toKey","undefined","ref","element","node","defaultValue","_inheritsLoose","_proto","prototype","render","_this2","_this$props","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","Consumer","flags","_cx2","featureFlags","rootNodeRef","setRootNode","removeBaselineSpacer","radioGroupRemoveBaselineSpacer","Provider","renderChildren","focus","radio","querySelector","_this$props2","items","children","mapItems","Component","__KONTUR_REACT_UI__","displayName","_value","fn","result","_iterator","_createForOfIteratorHelperLoose","_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';\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 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
|
+
{"version":3,"names":["React","invariant","getRandomID","isNonNullable","Radio","createPropsGetter","FocusTrap","CommonWrapper","cx","rootNode","getVisualStateDataAttributes","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","Prevent","RadioGroupContext","RadioGroupDataTids","root","RadioGroup","_class","_RadioGroup","_React$Component","props","_this","call","name","getProps","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","setState","onValueChange","renderRadio","itemValue","data","index","_cx","itemProps","key","getKeyByItem","className","item","itemFirst","itemInline","inline","createElement","_extends","role","renderItem","toKey","undefined","ref","element","node","defaultValue","_inheritsLoose","_proto","prototype","render","_this2","_this$props","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","Consumer","flags","_cx2","featureFlags","rootNodeRef","setRootNode","removeBaselineSpacer","radioGroupRemoveBaselineSpacer","Provider","renderChildren","focus","radio","querySelector","_this$props2","items","children","mapItems","Component","__KONTUR_REACT_UI__","displayName","_value","fn","result","_iterator","_createForOfIteratorHelperLoose","_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,6 +1,7 @@
|
|
|
1
1
|
import type { AriaAttributes } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
4
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
4
5
|
import { Prevent } from './Prevent';
|
|
5
6
|
export interface RadioGroupProps<T = string | number> extends CommonProps {
|
|
6
7
|
/** Задает значение по умолчанию. Должно быть одним из значений дочерних радиокнопок или значений из параметра `items`. */
|
|
@@ -68,6 +69,7 @@ export declare class RadioGroup<T> extends React.Component<RadioGroupProps<T>, R
|
|
|
68
69
|
private node;
|
|
69
70
|
private name;
|
|
70
71
|
private getProps;
|
|
72
|
+
getRootNode: TGetRootNode;
|
|
71
73
|
private setRootNode;
|
|
72
74
|
private featureFlags;
|
|
73
75
|
constructor(props: RadioGroupProps<T>);
|
|
@@ -2,7 +2,6 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
3
3
|
var _class, _ScrollContainer;
|
|
4
4
|
import React from 'react';
|
|
5
|
-
import PropTypes from 'prop-types';
|
|
6
5
|
import { globalObject } from '@skbkontur/global-object';
|
|
7
6
|
import debounce from 'lodash.debounce';
|
|
8
7
|
import { isInstanceOf } from "../../../lib/isInstanceOf";
|
|
@@ -315,14 +314,7 @@ export var ScrollContainer = rootNode(_class = (_ScrollContainer = /*#__PURE__*/
|
|
|
315
314
|
return axis === 'x' ? this.inner.offsetWidth < this.inner.scrollWidth : this.inner.offsetHeight < this.inner.scrollHeight;
|
|
316
315
|
};
|
|
317
316
|
return ScrollContainer;
|
|
318
|
-
}(React.Component), _ScrollContainer.__KONTUR_REACT_UI__ = 'ScrollContainer', _ScrollContainer.displayName = 'ScrollContainer', _ScrollContainer.
|
|
319
|
-
invert: PropTypes.bool,
|
|
320
|
-
maxWidth: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
|
321
|
-
maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
|
|
322
|
-
scrollBehaviour: PropTypes.oneOf(['auto', 'smooth']),
|
|
323
|
-
preventWindowScroll: PropTypes.bool,
|
|
324
|
-
onScrollStateChange: PropTypes.func
|
|
325
|
-
}, _ScrollContainer.defaultProps = {
|
|
317
|
+
}(React.Component), _ScrollContainer.__KONTUR_REACT_UI__ = 'ScrollContainer', _ScrollContainer.displayName = 'ScrollContainer', _ScrollContainer.defaultProps = {
|
|
326
318
|
invert: false,
|
|
327
319
|
scrollBehaviour: 'auto',
|
|
328
320
|
preventWindowScroll: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","PropTypes","globalObject","debounce","isInstanceOf","LayoutEvents","CommonWrapper","cx","isIE11","rootNode","getDOMRect","createPropsGetter","isTestEnv","callChildRef","styles","globalClasses","scrollSizeParametersNames","getScrollYOffset","convertScrollbarXScrollState","convertScrollbarYScrollState","ScrollBar","ScrollContainerDataTids","root","inner","ScrollContainer","_class","_ScrollContainer","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","initialIsScrollBarVisible","showScrollBar","state","isScrollBarXVisible","isScrollBarYVisible","isHovered","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","createElement","_extends","rootNodeRef","setRootNode","className","onMouseMove","handleMouseMove","onMouseLeave","handleMouseLeave","style","ref","refInner","innerIE11","onScroll","handleNativeScroll","axis","_this$getProps","offsetY","offsetX","invert","disableAnimations","isAxisX","refScrollBar","refScrollBarX","refScrollBarY","offset","isVisible","handleScroll","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","onScrollStateChangeX","scrollYState","onScrollStateChange","onScrollStateChangeY","prevScrollState","_this$getProps2","showScrollBarOnMouseWheel","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","scrollRef","event","_this$scrollY","_this$scrollX","reflow","preventDefault","emit","isScrollBarVisible","setState","hideScrollBar","_this$scrollX2","_this$scrollY2","isScrollBarXHovered","getHover","isScrollBarYHovered","hideScrollBarDelay","WheelEvent","shiftKey","hasScrollBar","_scrollSizeParameters","pos","size","deltaY","_this$scrollY3","_this$scrollX3","right","currentTarget","pageX","bottom","pageY","setHover","_this$scrollY4","_this$scrollX4","updateInnerElement","_this$scrollX5","_this$scrollY5","setInnerElement","_inheritsLoose","_proto","prototype","componentDidMount","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","Component","__KONTUR_REACT_UI__","displayName","propTypes","bool","oneOfType","string","number","oneOf","func"],"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","globalObject","debounce","isInstanceOf","LayoutEvents","CommonWrapper","cx","isIE11","rootNode","getDOMRect","createPropsGetter","isTestEnv","callChildRef","styles","globalClasses","scrollSizeParametersNames","getScrollYOffset","convertScrollbarXScrollState","convertScrollbarYScrollState","ScrollBar","ScrollContainerDataTids","root","inner","ScrollContainer","_class","_ScrollContainer","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","initialIsScrollBarVisible","showScrollBar","state","isScrollBarXVisible","isScrollBarYVisible","isHovered","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","createElement","_extends","rootNodeRef","setRootNode","className","onMouseMove","handleMouseMove","onMouseLeave","handleMouseLeave","style","ref","refInner","innerIE11","onScroll","handleNativeScroll","axis","_this$getProps","offsetY","offsetX","invert","disableAnimations","isAxisX","refScrollBar","refScrollBarX","refScrollBarY","offset","isVisible","handleScroll","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","onScrollStateChangeX","scrollYState","onScrollStateChange","onScrollStateChangeY","prevScrollState","_this$getProps2","showScrollBarOnMouseWheel","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","scrollRef","event","_this$scrollY","_this$scrollX","reflow","preventDefault","emit","isScrollBarVisible","setState","hideScrollBar","_this$scrollX2","_this$scrollY2","isScrollBarXHovered","getHover","isScrollBarYHovered","hideScrollBarDelay","WheelEvent","shiftKey","hasScrollBar","_scrollSizeParameters","pos","size","deltaY","_this$scrollY3","_this$scrollX3","right","currentTarget","pageX","bottom","pageY","setHover","_this$scrollY4","_this$scrollX4","updateInnerElement","_this$scrollX5","_this$scrollY5","setInnerElement","_inheritsLoose","_proto","prototype","componentDidMount","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","Component","__KONTUR_REACT_UI__","displayName"],"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":[]}
|
|
@@ -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;
|
|
@@ -341,7 +341,7 @@ export var Select = (_dec = locale('Select', SelectLocaleHelper), responsiveLayo
|
|
|
341
341
|
}, root));
|
|
342
342
|
};
|
|
343
343
|
_proto.renderLabel = function renderLabel() {
|
|
344
|
-
var _this$locale;
|
|
344
|
+
var _this$props$placehold, _this$locale;
|
|
345
345
|
var value = this.getValue();
|
|
346
346
|
var item = this.getItemByValue(value);
|
|
347
347
|
if (isNonNullable(value)) {
|
|
@@ -351,7 +351,7 @@ export var Select = (_dec = locale('Select', SelectLocaleHelper), responsiveLayo
|
|
|
351
351
|
};
|
|
352
352
|
}
|
|
353
353
|
return {
|
|
354
|
-
label: /*#__PURE__*/React.createElement("span", null, this.props.placeholder
|
|
354
|
+
label: /*#__PURE__*/React.createElement("span", null, (_this$props$placehold = this.props.placeholder) != null ? _this$props$placehold : (_this$locale = this.locale) == null ? void 0 : _this$locale.placeholder),
|
|
355
355
|
isPlaceholder: true
|
|
356
356
|
};
|
|
357
357
|
};
|