@skbkontur/react-ui 0.0.0-5188be76c1 → 0.0.0-53ccdcbfcc
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 +164 -16
- package/cjs/components/Button/Button.d.ts +1 -0
- package/cjs/components/Button/Button.js +18 -6
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.md +68 -0
- package/cjs/components/Button/Button.mixins.d.ts +6 -6
- package/cjs/components/Button/Button.mixins.js +54 -53
- package/cjs/components/Button/Button.mixins.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +2 -1
- package/cjs/components/Button/Button.styles.js +200 -161
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/ButtonArrow.js +1 -1
- package/cjs/components/Button/ButtonArrow.js.map +1 -1
- package/cjs/components/Button/ButtonIcon.js +1 -4
- package/cjs/components/Button/ButtonIcon.js.map +1 -1
- package/cjs/components/Button/getInnerLinkTheme.js +1 -0
- package/cjs/components/Button/getInnerLinkTheme.js.map +1 -1
- package/cjs/components/Calendar/Calendar.js +8 -6
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.js +8 -7
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Clickable/ArrowLeftIcon.d.ts +3 -0
- package/cjs/components/Clickable/ArrowLeftIcon.js +15 -0
- package/cjs/components/Clickable/ArrowLeftIcon.js.map +1 -0
- package/cjs/components/Clickable/ArrowRightIcon.d.ts +3 -0
- package/cjs/components/Clickable/ArrowRightIcon.js +15 -0
- package/cjs/components/Clickable/ArrowRightIcon.js.map +1 -0
- package/cjs/components/Clickable/Clickable.d.ts +95 -0
- package/cjs/components/Clickable/Clickable.js +248 -0
- package/cjs/components/Clickable/Clickable.js.map +1 -0
- package/cjs/components/Clickable/Clickable.md +210 -0
- package/cjs/components/Clickable/Clickable.styles.d.ts +11 -0
- package/cjs/components/Clickable/Clickable.styles.js +31 -0
- package/cjs/components/Clickable/Clickable.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButton.d.ts +5 -0
- package/cjs/components/Clickable/ClickableButton.js +43 -0
- package/cjs/components/Clickable/ClickableButton.js.map +1 -0
- package/cjs/components/Clickable/ClickableButton.mixins.d.ts +30 -0
- package/cjs/components/Clickable/ClickableButton.mixins.js +134 -0
- package/cjs/components/Clickable/ClickableButton.mixins.js.map +1 -0
- package/cjs/components/Clickable/ClickableButton.styles.d.ts +63 -0
- package/cjs/components/Clickable/ClickableButton.styles.js +604 -0
- package/cjs/components/Clickable/ClickableButton.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonArrow.d.ts +4 -0
- package/cjs/components/Clickable/ClickableButtonArrow.js +32 -0
- package/cjs/components/Clickable/ClickableButtonArrow.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
- package/cjs/components/Clickable/ClickableButtonArrow.styles.js +40 -0
- package/cjs/components/Clickable/ClickableButtonArrow.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonCaption.d.ts +2 -0
- package/cjs/components/Clickable/ClickableButtonCaption.js +57 -0
- package/cjs/components/Clickable/ClickableButtonCaption.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
- package/cjs/components/Clickable/ClickableButtonCaption.styles.js +23 -0
- package/cjs/components/Clickable/ClickableButtonCaption.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonIcon.d.ts +7 -0
- package/cjs/components/Clickable/ClickableButtonIcon.js +64 -0
- package/cjs/components/Clickable/ClickableButtonIcon.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
- package/cjs/components/Clickable/ClickableButtonIcon.styles.js +108 -0
- package/cjs/components/Clickable/ClickableButtonIcon.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
- package/cjs/components/Clickable/ClickableButtonLoadingIcon.js +19 -0
- package/cjs/components/Clickable/ClickableButtonLoadingIcon.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
- package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js +17 -0
- package/cjs/components/Clickable/ClickableButtonLoadingIcon.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonOutline.d.ts +4 -0
- package/cjs/components/Clickable/ClickableButtonOutline.js +36 -0
- package/cjs/components/Clickable/ClickableButtonOutline.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
- package/cjs/components/Clickable/ClickableButtonOutline.styles.js +25 -0
- package/cjs/components/Clickable/ClickableButtonOutline.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
- package/cjs/components/Clickable/ClickableButtonWrapper.js +27 -0
- package/cjs/components/Clickable/ClickableButtonWrapper.js.map +1 -0
- package/cjs/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
- package/cjs/components/Clickable/ClickableButtonWrapper.styles.js +27 -0
- package/cjs/components/Clickable/ClickableButtonWrapper.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableLink.d.ts +5 -0
- package/cjs/components/Clickable/ClickableLink.js +28 -0
- package/cjs/components/Clickable/ClickableLink.js.map +1 -0
- package/cjs/components/Clickable/ClickableLink.styles.d.ts +21 -0
- package/cjs/components/Clickable/ClickableLink.styles.js +134 -0
- package/cjs/components/Clickable/ClickableLink.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableLinkChild.d.ts +7 -0
- package/cjs/components/Clickable/ClickableLinkChild.js +40 -0
- package/cjs/components/Clickable/ClickableLinkChild.js.map +1 -0
- package/cjs/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
- package/cjs/components/Clickable/ClickableLinkChild.styles.js +42 -0
- package/cjs/components/Clickable/ClickableLinkChild.styles.js.map +1 -0
- package/cjs/components/Clickable/ClickableLinkIcon.d.ts +7 -0
- package/cjs/components/Clickable/ClickableLinkIcon.js +30 -0
- package/cjs/components/Clickable/ClickableLinkIcon.js.map +1 -0
- package/cjs/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
- package/cjs/components/Clickable/ClickableLinkIcon.styles.js +20 -0
- package/cjs/components/Clickable/ClickableLinkIcon.styles.js.map +1 -0
- package/cjs/components/Clickable/index.d.ts +1 -0
- package/cjs/components/Clickable/index.js +1 -0
- package/cjs/components/Clickable/index.js.map +1 -0
- package/cjs/components/Clickable/utils.d.ts +6 -0
- package/cjs/components/Clickable/utils.js +47 -0
- package/cjs/components/Clickable/utils.js.map +1 -0
- package/cjs/components/CurrencyInput/CurrencyInput.js +3 -1
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/DateInput/DateFragmentsView.js +2 -1
- package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
- package/cjs/components/DateInput/DateInput.js +2 -1
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/helpers/SelectionHelpers.js +11 -10
- package/cjs/components/DateInput/helpers/SelectionHelpers.js.map +1 -1
- package/cjs/components/Dropdown/getDropdownTheme.js +21 -22
- package/cjs/components/Dropdown/getDropdownTheme.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +5 -5
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -1
- package/cjs/components/FileUploader/FileUploader.styles.js +10 -2
- package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +1 -2
- package/cjs/components/GlobalLoader/GlobalLoader.js +11 -16
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
- package/cjs/components/GlobalLoader/GlobalLoaderView.js +3 -5
- package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/cjs/components/Group/Group.js +7 -5
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.md +24 -0
- package/cjs/components/Hint/Hint.js +5 -5
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +22 -5
- package/cjs/components/Input/Input.js +43 -22
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.typings.d.ts +7 -0
- package/cjs/components/Input/Input.typings.js +1 -0
- package/cjs/components/Input/Input.typings.js.map +1 -0
- package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.styles.js +7 -2
- package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -7
- package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
- package/cjs/components/Input/index.d.ts +1 -0
- package/cjs/components/Input/index.js +2 -1
- package/cjs/components/Input/index.js.map +1 -1
- package/cjs/components/Kebab/Kebab.js +3 -2
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.js +11 -7
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.md +69 -0
- package/cjs/components/Link/Link.styles.d.ts +1 -0
- package/cjs/components/Link/Link.styles.js +30 -22
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Loader/Loader.js +8 -7
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MaskedInput/MaskedInput.d.ts +24 -0
- package/cjs/components/MaskedInput/MaskedInput.js +78 -0
- package/cjs/components/MaskedInput/MaskedInput.js.map +1 -0
- package/cjs/components/MaskedInput/MaskedInput.md +21 -0
- package/cjs/components/MaskedInput/index.js.map +1 -0
- package/cjs/components/MenuHeader/MenuHeader.js +3 -1
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +21 -0
- package/cjs/components/MenuItem/MenuItem.js +113 -15
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.md +20 -6
- package/cjs/components/MiniModal/MiniModal.d.ts +18 -0
- package/cjs/components/MiniModal/MiniModal.js +47 -0
- package/cjs/components/MiniModal/MiniModal.js.map +1 -0
- package/cjs/components/MiniModal/MiniModal.md +233 -0
- package/cjs/components/MiniModal/MiniModal.styles.d.ts +14 -0
- package/cjs/components/MiniModal/MiniModal.styles.js +87 -0
- package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -0
- package/cjs/components/MiniModal/MiniModalBody.d.ts +7 -0
- package/cjs/components/MiniModal/MiniModalBody.js +24 -0
- package/cjs/components/MiniModal/MiniModalBody.js.map +1 -0
- package/cjs/components/MiniModal/MiniModalFooter.d.ts +18 -0
- package/cjs/components/MiniModal/MiniModalFooter.js +60 -0
- package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -0
- package/cjs/components/MiniModal/MiniModalHeader.d.ts +17 -0
- package/cjs/components/MiniModal/MiniModalHeader.js +47 -0
- package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -0
- package/cjs/components/MiniModal/MiniModalIndent.d.ts +6 -0
- package/cjs/components/MiniModal/MiniModalIndent.js +29 -0
- package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -0
- package/cjs/components/MiniModal/getMiniModalTheme.d.ts +16 -0
- package/cjs/components/MiniModal/getMiniModalTheme.js +24 -0
- package/cjs/components/MiniModal/getMiniModalTheme.js.map +1 -0
- package/cjs/components/MiniModal/index.d.ts +5 -0
- package/cjs/components/MiniModal/index.js +5 -0
- package/cjs/components/MiniModal/index.js.map +1 -0
- package/cjs/components/Modal/Modal.d.ts +6 -0
- package/cjs/components/Modal/Modal.js +15 -1
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +5 -0
- package/cjs/components/Modal/Modal.styles.js +56 -39
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js +2 -1
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.js +1 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/ModalSeparator.d.ts +5 -0
- package/cjs/components/Modal/ModalSeparator.js +5 -0
- package/cjs/components/Modal/ModalSeparator.js.map +1 -1
- package/cjs/components/Modal/getModalTheme.d.ts +2 -2
- package/cjs/components/Modal/getModalTheme.js +6 -2
- package/cjs/components/Modal/getModalTheme.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.js +2 -1
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.js +16 -14
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.d.ts +0 -1
- package/cjs/components/Paging/Paging.styles.js +3 -9
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.js +4 -2
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.js +2 -1
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +5 -6
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollBar.d.ts +4 -7
- package/cjs/components/ScrollContainer/ScrollBar.js +15 -45
- package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.constants.js +1 -2
- package/cjs/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +18 -3
- package/cjs/components/ScrollContainer/ScrollContainer.js +102 -21
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.md +29 -2
- package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js +8 -30
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/cjs/components/Select/Item.d.ts +1 -0
- package/cjs/components/Select/Item.js +2 -1
- package/cjs/components/Select/Item.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +2 -0
- package/cjs/components/Select/Select.js +25 -8
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.md +12 -0
- package/cjs/components/SidePage/SidePage.d.ts +3 -1
- package/cjs/components/SidePage/SidePage.js +36 -5
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePageCloseButton.js +2 -1
- package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +1 -0
- package/cjs/components/SidePage/SidePageHeader.js +8 -6
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +11 -0
- package/cjs/components/SingleToast/SingleToast.js +20 -0
- package/cjs/components/SingleToast/SingleToast.js.map +1 -0
- package/cjs/components/SingleToast/SingleToast.md +35 -0
- package/cjs/components/SingleToast/index.d.ts +1 -0
- package/cjs/components/SingleToast/index.js +1 -0
- package/cjs/components/SingleToast/index.js.map +1 -0
- package/cjs/components/Spinner/Spinner.d.ts +1 -0
- package/cjs/components/Spinner/Spinner.js +16 -1
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js +6 -2
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
- package/cjs/components/Sticky/Sticky.js +5 -10
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +1 -1
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Tabs/Indicator.js +3 -1
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.js +2 -1
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.js +3 -1
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +1 -0
- package/cjs/components/Textarea/Textarea.js +38 -11
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.d.ts +1 -1
- package/cjs/components/Textarea/TextareaCounter.js +2 -1
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Textarea/TextareaHelpers.d.ts +1 -1
- package/cjs/components/Textarea/TextareaHelpers.js +7 -2
- package/cjs/components/Textarea/TextareaHelpers.js.map +1 -1
- package/cjs/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
- package/cjs/components/Textarea/TextareaWithSafari17Workaround.js +20 -0
- package/cjs/components/Textarea/TextareaWithSafari17Workaround.js.map +1 -0
- package/cjs/components/Toast/Toast.d.ts +10 -3
- package/cjs/components/Toast/Toast.js +26 -8
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.md +0 -105
- package/cjs/components/Toast/ToastStatic.js +4 -3
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Token/Token.js +1 -6
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +2 -0
- package/cjs/components/TokenInput/TokenInput.js +42 -9
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.md +71 -0
- package/cjs/components/Tooltip/Tooltip.d.ts +6 -1
- package/cjs/components/Tooltip/Tooltip.js +15 -5
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.md +24 -0
- package/cjs/hooks/useDrop.js +3 -2
- package/cjs/hooks/useDrop.js.map +1 -1
- package/cjs/index.d.ts +5 -0
- package/cjs/index.js +5 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +2 -1
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/cjs/internal/ComponentCombinator.d.ts +7 -8
- package/cjs/internal/ComponentCombinator.js +2 -5
- package/cjs/internal/ComponentCombinator.js.map +1 -1
- package/cjs/internal/ComponentTable.d.ts +7 -19
- package/cjs/internal/ComponentTable.js +50 -77
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.js +4 -3
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +3 -2
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.js +20 -16
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.js +14 -13
- package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
- package/cjs/internal/DropdownContainer/getManualPosition.js +6 -4
- package/cjs/internal/DropdownContainer/getManualPosition.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +2 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/cjs/internal/FocusTrap/FocusTrap.js +8 -6
- package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +19 -20
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +17 -16
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
- package/cjs/internal/{MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput.js} +11 -8
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +1 -0
- package/cjs/internal/InternalMaskedInput/index.d.ts +1 -0
- package/cjs/internal/InternalMaskedInput/index.js +1 -0
- package/cjs/internal/InternalMaskedInput/index.js.map +1 -0
- package/cjs/internal/InternalMenu/InternalMenu.js +8 -7
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js +52 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.helpers.js.map +1 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.js +196 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.js.map +1 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js +29 -0
- package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js.map +1 -0
- package/cjs/internal/MaskedInputElement/index.d.ts +1 -0
- package/cjs/internal/MaskedInputElement/index.js +1 -0
- package/cjs/internal/MaskedInputElement/index.js.map +1 -0
- package/cjs/internal/Menu/Menu.d.ts +6 -0
- package/cjs/internal/Menu/Menu.js +84 -16
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/MenuContext.d.ts +10 -0
- package/cjs/internal/Menu/MenuContext.js +16 -0
- package/cjs/internal/Menu/MenuContext.js.map +1 -0
- package/cjs/internal/Menu/MenuNavigation.d.ts +26 -0
- package/cjs/internal/Menu/MenuNavigation.js +107 -0
- package/cjs/internal/Menu/MenuNavigation.js.map +1 -0
- package/cjs/internal/Menu/isActiveElement.js +1 -1
- package/cjs/internal/Menu/isActiveElement.js.map +1 -1
- package/cjs/internal/MenuMessage/MenuMessage.d.ts +1 -1
- package/cjs/internal/Popup/Popup.js +12 -8
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupHelper.js +9 -7
- package/cjs/internal/Popup/PopupHelper.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.js +3 -2
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderContainer.d.ts +0 -1
- package/cjs/internal/RenderContainer/RenderContainer.js +18 -22
- package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +2 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.js +5 -3
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.js +1 -0
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemePlayground/constants.js +1 -0
- package/cjs/internal/ThemePlayground/constants.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.js +6 -4
- package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndex.js +2 -2
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndexStorage.js +2 -2
- package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
- package/cjs/internal/icons/16px/index.d.ts +19 -19
- package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/BaseIcon.d.ts +1 -1
- package/cjs/internal/icons2022/BaseIcon.js +3 -7
- package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
- package/cjs/internal/icons2022/BaseIcon.styles.d.ts +3 -0
- package/cjs/internal/icons2022/BaseIcon.styles.js +14 -0
- package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -0
- package/cjs/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
- package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
- package/cjs/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
- package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js +20 -0
- package/cjs/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -0
- package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
- package/cjs/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
- package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
- package/cjs/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
- package/cjs/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
- package/cjs/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
- package/cjs/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
- package/cjs/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
- package/cjs/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +67 -2
- package/cjs/internal/themes/DefaultTheme.js +134 -7
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/Theme2022.d.ts +22 -7
- package/cjs/internal/themes/Theme2022.js +40 -11
- package/cjs/internal/themes/Theme2022.js.map +1 -1
- package/cjs/internal/themes/Theme2022Dark.d.ts +5 -9
- package/cjs/internal/themes/Theme2022Dark.js +10 -10
- package/cjs/internal/themes/Theme2022Dark.js.map +1 -1
- package/cjs/lib/LayoutEvents.js +5 -4
- package/cjs/lib/LayoutEvents.js.map +1 -1
- package/cjs/lib/ModalStack.js +2 -3
- package/cjs/lib/ModalStack.js.map +1 -1
- package/cjs/lib/SSRSafe.d.ts +1 -6
- package/cjs/lib/SSRSafe.js +4 -48
- package/cjs/lib/SSRSafe.js.map +1 -1
- package/cjs/lib/Upgrades.d.ts +1 -0
- package/cjs/lib/Upgrades.js +3 -1
- package/cjs/lib/Upgrades.js.map +1 -1
- package/cjs/lib/animation/index.js +6 -4
- package/cjs/lib/animation/index.js.map +1 -1
- package/cjs/lib/chars.d.ts +1 -1
- package/cjs/lib/chars.js +2 -2
- package/cjs/lib/chars.js.map +1 -1
- package/cjs/lib/client.d.ts +2 -7
- package/cjs/lib/client.js +9 -7
- package/cjs/lib/client.js.map +1 -1
- package/cjs/lib/dom/getScrollWidth.js +4 -4
- package/cjs/lib/dom/getScrollWidth.js.map +1 -1
- package/cjs/lib/dom/tabbableHelpers.d.ts +2 -1
- package/cjs/lib/dom/tabbableHelpers.js +8 -2
- package/cjs/lib/dom/tabbableHelpers.js.map +1 -1
- package/cjs/lib/events/MouseDrag.js +11 -11
- package/cjs/lib/events/MouseDrag.js.map +1 -1
- package/cjs/lib/events/fixClickFocusIE.js +6 -3
- package/cjs/lib/events/fixClickFocusIE.js.map +1 -1
- package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js +5 -2
- package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
- package/cjs/lib/events/keyListener.js +9 -11
- package/cjs/lib/events/keyListener.js.map +1 -1
- package/cjs/lib/events/keyboard/identifiers.js +5 -2
- package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
- package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js +5 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +20 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
- package/cjs/lib/featureFlagsContext/index.d.ts +2 -0
- package/cjs/lib/featureFlagsContext/index.js +3 -0
- package/cjs/lib/featureFlagsContext/index.js.map +1 -0
- package/cjs/lib/forwardRefAndName.d.ts +1 -1
- package/cjs/lib/forwardRefAndName.js +4 -1
- package/cjs/lib/forwardRefAndName.js.map +1 -1
- package/cjs/lib/isInstanceOf.d.ts +1 -0
- package/cjs/lib/isInstanceOf.js +6 -0
- package/cjs/lib/isInstanceOf.js.map +1 -0
- package/cjs/lib/listenFocusOutside.js +15 -15
- package/cjs/lib/listenFocusOutside.js.map +1 -1
- package/cjs/lib/needsPolyfillPlaceholder.js +5 -3
- package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
- package/cjs/lib/net/fetch.js +24 -18
- package/cjs/lib/net/fetch.js.map +1 -1
- package/cjs/lib/rootNode/getRootNode.js +6 -6
- package/cjs/lib/rootNode/getRootNode.js.map +1 -1
- package/cjs/lib/styles/ColorFactory.js +13 -11
- package/cjs/lib/styles/ColorFactory.js.map +1 -1
- package/cjs/lib/styles/ColorHelpers.d.ts +1 -1
- package/cjs/lib/styles/ColorHelpers.js +3 -7
- package/cjs/lib/styles/ColorHelpers.js.map +1 -1
- package/cjs/lib/taskWithDelayAndMinimalDuration.js +5 -5
- package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/cjs/lib/theming/Emotion.js +4 -2
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/utils.d.ts +7 -0
- package/cjs/lib/utils.js +29 -7
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/typings/global.d.ts +3 -4
- package/cjs/typings/react-ref.d.ts +29 -0
- package/cjs/typings/utility-types.d.ts +2 -0
- package/components/Button/Button/Button.js +16 -3
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +1 -0
- package/components/Button/Button.md +68 -0
- package/components/Button/Button.mixins/Button.mixins.js +58 -13
- package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
- package/components/Button/Button.mixins.d.ts +6 -6
- package/components/Button/Button.styles/Button.styles.js +210 -24
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +2 -1
- package/components/Button/ButtonArrow/ButtonArrow.js +1 -1
- package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
- package/components/Button/ButtonIcon/ButtonIcon.js +2 -4
- package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
- package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js +1 -0
- package/components/Button/getInnerLinkTheme/getInnerLinkTheme.js.map +1 -1
- package/components/Calendar/Calendar/Calendar.js +8 -6
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Checkbox/Checkbox/Checkbox.js +10 -5
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js +17 -0
- package/components/Clickable/ArrowLeftIcon/ArrowLeftIcon.js.map +1 -0
- package/components/Clickable/ArrowLeftIcon/package.json +6 -0
- package/components/Clickable/ArrowLeftIcon.d.ts +3 -0
- package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js +17 -0
- package/components/Clickable/ArrowRightIcon/ArrowRightIcon.js.map +1 -0
- package/components/Clickable/ArrowRightIcon/package.json +6 -0
- package/components/Clickable/ArrowRightIcon.d.ts +3 -0
- package/components/Clickable/Clickable/Clickable.js +165 -0
- package/components/Clickable/Clickable/Clickable.js.map +1 -0
- package/components/Clickable/Clickable/package.json +6 -0
- package/components/Clickable/Clickable.d.ts +95 -0
- package/components/Clickable/Clickable.md +210 -0
- package/components/Clickable/Clickable.styles/Clickable.styles.js +13 -0
- package/components/Clickable/Clickable.styles/Clickable.styles.js.map +1 -0
- package/components/Clickable/Clickable.styles/package.json +6 -0
- package/components/Clickable/Clickable.styles.d.ts +11 -0
- package/components/Clickable/ClickableButton/ClickableButton.js +31 -0
- package/components/Clickable/ClickableButton/ClickableButton.js.map +1 -0
- package/components/Clickable/ClickableButton/package.json +6 -0
- package/components/Clickable/ClickableButton.d.ts +5 -0
- package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js +81 -0
- package/components/Clickable/ClickableButton.mixins/ClickableButton.mixins.js.map +1 -0
- package/components/Clickable/ClickableButton.mixins/package.json +6 -0
- package/components/Clickable/ClickableButton.mixins.d.ts +30 -0
- package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js +313 -0
- package/components/Clickable/ClickableButton.styles/ClickableButton.styles.js.map +1 -0
- package/components/Clickable/ClickableButton.styles/package.json +6 -0
- package/components/Clickable/ClickableButton.styles.d.ts +63 -0
- package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js +21 -0
- package/components/Clickable/ClickableButtonArrow/ClickableButtonArrow.js.map +1 -0
- package/components/Clickable/ClickableButtonArrow/package.json +6 -0
- package/components/Clickable/ClickableButtonArrow.d.ts +4 -0
- package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js +22 -0
- package/components/Clickable/ClickableButtonArrow.styles/ClickableButtonArrow.styles.js.map +1 -0
- package/components/Clickable/ClickableButtonArrow.styles/package.json +6 -0
- package/components/Clickable/ClickableButtonArrow.styles.d.ts +8 -0
- package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js +37 -0
- package/components/Clickable/ClickableButtonCaption/ClickableButtonCaption.js.map +1 -0
- package/components/Clickable/ClickableButtonCaption/package.json +6 -0
- package/components/Clickable/ClickableButtonCaption.d.ts +2 -0
- package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js +16 -0
- package/components/Clickable/ClickableButtonCaption.styles/ClickableButtonCaption.styles.js.map +1 -0
- package/components/Clickable/ClickableButtonCaption.styles/package.json +6 -0
- package/components/Clickable/ClickableButtonCaption.styles.d.ts +5 -0
- package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js +51 -0
- package/components/Clickable/ClickableButtonIcon/ClickableButtonIcon.js.map +1 -0
- package/components/Clickable/ClickableButtonIcon/package.json +6 -0
- package/components/Clickable/ClickableButtonIcon.d.ts +7 -0
- package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js +58 -0
- package/components/Clickable/ClickableButtonIcon.styles/ClickableButtonIcon.styles.js.map +1 -0
- package/components/Clickable/ClickableButtonIcon.styles/package.json +6 -0
- package/components/Clickable/ClickableButtonIcon.styles.d.ts +19 -0
- package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js +18 -0
- package/components/Clickable/ClickableButtonLoadingIcon/ClickableButtonLoadingIcon.js.map +1 -0
- package/components/Clickable/ClickableButtonLoadingIcon/package.json +6 -0
- package/components/Clickable/ClickableButtonLoadingIcon.d.ts +6 -0
- package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js +10 -0
- package/components/Clickable/ClickableButtonLoadingIcon.styles/ClickableButtonLoadingIcon.styles.js.map +1 -0
- package/components/Clickable/ClickableButtonLoadingIcon.styles/package.json +6 -0
- package/components/Clickable/ClickableButtonLoadingIcon.styles.d.ts +3 -0
- package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js +22 -0
- package/components/Clickable/ClickableButtonOutline/ClickableButtonOutline.js.map +1 -0
- package/components/Clickable/ClickableButtonOutline/package.json +6 -0
- package/components/Clickable/ClickableButtonOutline.d.ts +4 -0
- package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js +16 -0
- package/components/Clickable/ClickableButtonOutline.styles/ClickableButtonOutline.styles.js.map +1 -0
- package/components/Clickable/ClickableButtonOutline.styles/package.json +6 -0
- package/components/Clickable/ClickableButtonOutline.styles.d.ts +6 -0
- package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js +18 -0
- package/components/Clickable/ClickableButtonWrapper/ClickableButtonWrapper.js.map +1 -0
- package/components/Clickable/ClickableButtonWrapper/package.json +6 -0
- package/components/Clickable/ClickableButtonWrapper.d.ts +3 -0
- package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js +19 -0
- package/components/Clickable/ClickableButtonWrapper.styles/ClickableButtonWrapper.styles.js.map +1 -0
- package/components/Clickable/ClickableButtonWrapper.styles/package.json +6 -0
- package/components/Clickable/ClickableButtonWrapper.styles.d.ts +7 -0
- package/components/Clickable/ClickableLink/ClickableLink.js +24 -0
- package/components/Clickable/ClickableLink/ClickableLink.js.map +1 -0
- package/components/Clickable/ClickableLink/package.json +6 -0
- package/components/Clickable/ClickableLink.d.ts +5 -0
- package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js +52 -0
- package/components/Clickable/ClickableLink.styles/ClickableLink.styles.js.map +1 -0
- package/components/Clickable/ClickableLink.styles/package.json +6 -0
- package/components/Clickable/ClickableLink.styles.d.ts +21 -0
- package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js +20 -0
- package/components/Clickable/ClickableLinkChild/ClickableLinkChild.js.map +1 -0
- package/components/Clickable/ClickableLinkChild/package.json +6 -0
- package/components/Clickable/ClickableLinkChild.d.ts +7 -0
- package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js +24 -0
- package/components/Clickable/ClickableLinkChild.styles/ClickableLinkChild.styles.js.map +1 -0
- package/components/Clickable/ClickableLinkChild.styles/package.json +6 -0
- package/components/Clickable/ClickableLinkChild.styles.d.ts +7 -0
- package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js +21 -0
- package/components/Clickable/ClickableLinkIcon/ClickableLinkIcon.js.map +1 -0
- package/components/Clickable/ClickableLinkIcon/package.json +6 -0
- package/components/Clickable/ClickableLinkIcon.d.ts +7 -0
- package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js +16 -0
- package/components/Clickable/ClickableLinkIcon.styles/ClickableLinkIcon.styles.js.map +1 -0
- package/components/Clickable/ClickableLinkIcon.styles/package.json +6 -0
- package/components/Clickable/ClickableLinkIcon.styles.d.ts +6 -0
- package/components/Clickable/index/index.js +1 -0
- package/components/Clickable/index/index.js.map +1 -0
- package/{internal/MaskedInput → components/Clickable}/index/package.json +1 -1
- package/components/Clickable/index.d.ts +1 -0
- package/{internal/MaskedInput → components/Clickable}/package.json +1 -1
- package/components/Clickable/utils/package.json +6 -0
- package/components/Clickable/utils/utils.js +44 -0
- package/components/Clickable/utils/utils.js.map +1 -0
- package/components/Clickable/utils.d.ts +6 -0
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +3 -1
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js +4 -1
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js +2 -1
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js +10 -10
- package/components/DateInput/helpers/SelectionHelpers/SelectionHelpers.js.map +1 -1
- package/components/Dropdown/getDropdownTheme/getDropdownTheme.js +21 -22
- package/components/Dropdown/getDropdownTheme/getDropdownTheme.js.map +1 -1
- package/components/FileUploader/FileUploader/FileUploader.js +5 -5
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +2 -2
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
- package/components/FileUploader/FileUploader.styles.d.ts +1 -1
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +30 -34
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +1 -2
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +2 -3
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.d.ts +1 -2
- package/components/Group/Group/Group.js +9 -10
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.md +24 -0
- package/components/Hint/Hint/Hint.js +6 -7
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Input/Input/Input.js +28 -16
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +22 -5
- package/components/Input/Input.typings/Input.typings.js +1 -0
- package/components/Input/Input.typings/Input.typings.js.map +1 -0
- package/components/Input/Input.typings/package.json +6 -0
- package/components/Input/Input.typings.d.ts +7 -0
- package/components/Input/InputLayout/InputLayout.d.ts +1 -1
- package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +2 -1
- package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +1 -2
- package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
- package/components/Input/index/index.js +2 -1
- package/components/Input/index/index.js.map +1 -1
- package/components/Input/index.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +3 -2
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Link/Link/Link.js +5 -4
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.md +69 -0
- package/components/Link/Link.styles/Link.styles.js +25 -22
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Link/Link.styles.d.ts +1 -0
- package/components/Loader/Loader/Loader.js +9 -6
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/MaskedInput/MaskedInput/MaskedInput.js +62 -0
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -0
- package/{internal → components}/MaskedInput/MaskedInput/package.json +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +24 -0
- package/components/MaskedInput/MaskedInput.md +21 -0
- package/components/MaskedInput/index/index.js.map +1 -0
- package/components/MaskedInput/index/package.json +6 -0
- package/components/MaskedInput/package.json +6 -0
- package/components/MenuHeader/MenuHeader/MenuHeader.js +3 -1
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuItem/MenuItem/MenuItem.js +129 -19
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +21 -0
- package/components/MenuItem/MenuItem.md +20 -6
- package/components/MiniModal/MiniModal/MiniModal.js +38 -0
- package/components/MiniModal/MiniModal/MiniModal.js.map +1 -0
- package/components/MiniModal/MiniModal/package.json +6 -0
- package/components/MiniModal/MiniModal.d.ts +18 -0
- package/components/MiniModal/MiniModal.md +233 -0
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +41 -0
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -0
- package/components/MiniModal/MiniModal.styles/package.json +6 -0
- package/components/MiniModal/MiniModal.styles.d.ts +14 -0
- package/components/MiniModal/MiniModalBody/MiniModalBody.js +23 -0
- package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -0
- package/components/MiniModal/MiniModalBody/package.json +6 -0
- package/components/MiniModal/MiniModalBody.d.ts +7 -0
- package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +35 -0
- package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -0
- package/components/MiniModal/MiniModalFooter/package.json +6 -0
- package/components/MiniModal/MiniModalFooter.d.ts +18 -0
- package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +33 -0
- package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -0
- package/components/MiniModal/MiniModalHeader/package.json +6 -0
- package/components/MiniModal/MiniModalHeader.d.ts +17 -0
- package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +27 -0
- package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -0
- package/components/MiniModal/MiniModalIndent/package.json +6 -0
- package/components/MiniModal/MiniModalIndent.d.ts +6 -0
- package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js +23 -0
- package/components/MiniModal/getMiniModalTheme/getMiniModalTheme.js.map +1 -0
- package/components/MiniModal/getMiniModalTheme/package.json +6 -0
- package/components/MiniModal/getMiniModalTheme.d.ts +16 -0
- package/components/MiniModal/index/index.js +5 -0
- package/components/MiniModal/index/index.js.map +1 -0
- package/components/MiniModal/index/package.json +6 -0
- package/components/MiniModal/index.d.ts +5 -0
- package/components/MiniModal/package.json +6 -0
- package/components/Modal/Modal/Modal.js +18 -14
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +6 -0
- package/components/Modal/Modal.styles/Modal.styles.js +44 -37
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +5 -0
- package/components/Modal/ModalClose/ModalClose.js +2 -1
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js +6 -0
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- package/components/Modal/ModalSeparator.d.ts +5 -0
- package/components/Modal/getModalTheme/getModalTheme.js +8 -3
- package/components/Modal/getModalTheme/getModalTheme.js.map +1 -1
- package/components/Modal/getModalTheme.d.ts +2 -2
- package/components/Paging/NavigationHelper/NavigationHelper.js +2 -1
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/Paging/Paging.js +16 -10
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.styles/Paging.styles.js +2 -5
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +0 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +4 -2
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/Radio/Radio/Radio.js +2 -1
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +5 -6
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
- package/components/ScrollContainer/ScrollBar/ScrollBar.js +17 -50
- package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +4 -7
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +109 -22
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js +1 -2
- package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +18 -3
- package/components/ScrollContainer/ScrollContainer.md +29 -2
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +6 -18
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -4
- package/components/Select/Item/Item.js +3 -1
- package/components/Select/Item/Item.js.map +1 -1
- package/components/Select/Item.d.ts +1 -0
- package/components/Select/Select/Select.js +23 -16
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +2 -0
- package/components/Select/Select.md +12 -0
- package/components/SidePage/SidePage/SidePage.js +34 -9
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +3 -1
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +2 -1
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js +6 -4
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +1 -0
- package/components/SingleToast/SingleToast/SingleToast.js +53 -0
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -0
- package/components/SingleToast/SingleToast/package.json +6 -0
- package/components/SingleToast/SingleToast.d.ts +11 -0
- package/components/SingleToast/SingleToast.md +35 -0
- package/components/SingleToast/index/index.js +1 -0
- package/components/SingleToast/index/index.js.map +1 -0
- package/components/SingleToast/index/package.json +6 -0
- package/components/SingleToast/index.d.ts +1 -0
- package/components/SingleToast/package.json +6 -0
- package/components/Spinner/Spinner/Spinner.js +10 -4
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +1 -0
- package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +5 -2
- package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
- package/components/Sticky/Sticky/Sticky.js +5 -6
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +1 -1
- package/components/Tabs/Indicator/Indicator.js +3 -1
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Tab/Tab.js +2 -1
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tabs/Tabs.js +3 -1
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Textarea/Textarea/Textarea.js +33 -19
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +1 -0
- package/components/Textarea/TextareaCounter/TextareaCounter.js +2 -3
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Textarea/TextareaCounter.d.ts +1 -1
- package/components/Textarea/TextareaHelpers/TextareaHelpers.js +6 -1
- package/components/Textarea/TextareaHelpers/TextareaHelpers.js.map +1 -1
- package/components/Textarea/TextareaHelpers.d.ts +1 -1
- package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js +21 -0
- package/components/Textarea/TextareaWithSafari17Workaround/TextareaWithSafari17Workaround.js.map +1 -0
- package/components/Textarea/TextareaWithSafari17Workaround/package.json +6 -0
- package/components/Textarea/TextareaWithSafari17Workaround.d.ts +6 -0
- package/components/Toast/Toast/Toast.js +16 -7
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +10 -3
- package/components/Toast/Toast.md +0 -105
- package/components/Toast/ToastStatic/ToastStatic.js +4 -4
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Token/Token/Token.js +4 -3
- package/components/Token/Token/Token.js.map +1 -1
- package/components/TokenInput/TokenInput/TokenInput.js +51 -11
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +2 -0
- package/components/TokenInput/TokenInput.md +71 -0
- package/components/Tooltip/Tooltip/Tooltip.js +10 -7
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +6 -1
- package/components/Tooltip/Tooltip.md +24 -0
- package/hooks/useDrop/useDrop.js +3 -2
- package/hooks/useDrop/useDrop.js.map +1 -1
- package/index.d.ts +5 -0
- package/index.js +5 -0
- package/index.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +2 -1
- package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/internal/ComponentCombinator/ComponentCombinator.js +4 -8
- package/internal/ComponentCombinator/ComponentCombinator.js.map +1 -1
- package/internal/ComponentCombinator.d.ts +7 -8
- package/internal/ComponentTable/ComponentTable.js +66 -103
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/ComponentTable.d.ts +7 -19
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +4 -3
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +3 -2
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +20 -20
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +19 -17
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer.d.ts +0 -1
- package/internal/DropdownContainer/getManualPosition/getManualPosition.js +4 -3
- package/internal/DropdownContainer/getManualPosition/getManualPosition.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +2 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +1 -1
- package/internal/FocusTrap/FocusTrap/FocusTrap.js +9 -3
- package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +25 -26
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +3 -1
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +29 -19
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/{MaskedInput/MaskedInput/MaskedInput.js → InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js} +13 -9
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -0
- package/internal/InternalMaskedInput/InternalMaskedInput/package.json +6 -0
- package/internal/{MaskedInput/MaskedInput.d.ts → InternalMaskedInput/InternalMaskedInput.d.ts} +8 -5
- package/{cjs/internal/MaskedInput/MaskedInput.styles.js.map → internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map} +1 -1
- package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +6 -0
- package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +6 -0
- package/internal/InternalMaskedInput/index/index.js +1 -0
- package/internal/InternalMaskedInput/index/index.js.map +1 -0
- package/internal/InternalMaskedInput/index/package.json +6 -0
- package/internal/InternalMaskedInput/index.d.ts +1 -0
- package/internal/InternalMaskedInput/package.json +6 -0
- package/internal/InternalMenu/InternalMenu/InternalMenu.js +10 -9
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js +206 -0
- package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js.map +1 -0
- package/internal/MaskedInputElement/MaskedInputElement/package.json +6 -0
- package/internal/MaskedInputElement/MaskedInputElement.d.ts +14 -0
- package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js +43 -0
- package/internal/MaskedInputElement/MaskedInputElement.helpers/MaskedInputElement.helpers.js.map +1 -0
- package/internal/MaskedInputElement/MaskedInputElement.helpers/package.json +6 -0
- package/internal/MaskedInputElement/MaskedInputElement.helpers.d.ts +16 -0
- package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js +16 -0
- package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map +1 -0
- package/internal/MaskedInputElement/MaskedInputElement.styles/package.json +6 -0
- package/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +6 -0
- package/internal/MaskedInputElement/index/index.js +1 -0
- package/internal/MaskedInputElement/index/index.js.map +1 -0
- package/internal/MaskedInputElement/index/package.json +6 -0
- package/internal/MaskedInputElement/index.d.ts +1 -0
- package/internal/MaskedInputElement/package.json +6 -0
- package/internal/Menu/Menu/Menu.js +144 -62
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +6 -0
- package/internal/Menu/MenuContext/MenuContext.js +5 -0
- package/internal/Menu/MenuContext/MenuContext.js.map +1 -0
- package/internal/Menu/MenuContext/package.json +6 -0
- package/internal/Menu/MenuContext.d.ts +10 -0
- package/internal/Menu/MenuNavigation/MenuNavigation.js +123 -0
- package/internal/Menu/MenuNavigation/MenuNavigation.js.map +1 -0
- package/internal/Menu/MenuNavigation/package.json +6 -0
- package/internal/Menu/MenuNavigation.d.ts +26 -0
- package/internal/Menu/isActiveElement/isActiveElement.js +1 -1
- package/internal/Menu/isActiveElement/isActiveElement.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.d.ts +1 -1
- package/internal/Popup/Popup/Popup.js +12 -13
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/PopupHelper/PopupHelper.js +8 -5
- package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +3 -2
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/RenderContainer/RenderContainer/RenderContainer.js +26 -16
- package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/RenderContainer/RenderContainer.d.ts +0 -1
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +2 -3
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +11 -5
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemePlayground/constants/constants.js +3 -0
- package/internal/ThemePlayground/constants/constants.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +5 -2
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +2 -2
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +2 -2
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
- package/internal/icons/16px/index.d.ts +19 -19
- package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.d.ts +1 -1
- package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.d.ts +1 -1
- package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.d.ts +1 -1
- package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.d.ts +1 -1
- package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.d.ts +1 -1
- package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.d.ts +1 -1
- package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.d.ts +1 -1
- package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.d.ts +1 -1
- package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.d.ts +1 -1
- package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.d.ts +1 -1
- package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.d.ts +1 -1
- package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.d.ts +1 -1
- package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.d.ts +1 -1
- package/internal/icons2022/ArrowCUpIcon/ArrowCUpIcon16Regular.d.ts +1 -1
- package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.d.ts +1 -1
- package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.d.ts +1 -1
- package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.d.ts +1 -1
- package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.d.ts +1 -1
- package/internal/icons2022/BaseIcon/BaseIcon.js +3 -6
- package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
- package/internal/icons2022/BaseIcon.d.ts +1 -1
- package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +11 -0
- package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -0
- package/internal/icons2022/BaseIcon.styles/package.json +6 -0
- package/internal/icons2022/BaseIcon.styles.d.ts +3 -0
- package/internal/icons2022/CalendarIcon/CalendarIcon16Light.d.ts +1 -1
- package/internal/icons2022/CalendarIcon/CalendarIcon20Light.d.ts +1 -1
- package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.d.ts +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon16Light.d.ts +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon16Regular.d.ts +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.d.ts +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon20Light.d.ts +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.d.ts +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon24Regular.d.ts +1 -1
- package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.d.ts +1 -1
- package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.d.ts +1 -1
- package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.d.ts +1 -1
- package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.d.ts +1 -1
- package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.d.ts +1 -1
- package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.d.ts +1 -1
- package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js +18 -0
- package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/InfoCircleIcon64Regular.js.map +1 -0
- package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular/package.json +6 -0
- package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.d.ts +2 -0
- package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.d.ts +1 -1
- package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.d.ts +1 -1
- package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.d.ts +1 -1
- package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Light.d.ts +1 -1
- package/internal/icons2022/MinusCircleIcon/MinusCircleIcon16Regular.d.ts +1 -1
- package/internal/icons2022/MinusCircleIcon/MinusCircleIcon20Light.d.ts +1 -1
- package/internal/icons2022/MinusCircleIcon/MinusCircleIcon24Regular.d.ts +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.d.ts +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon20Light.d.ts +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.d.ts +1 -1
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.d.ts +1 -1
- package/internal/icons2022/SearchLoupeIcon/SearchLoupeIcon16Regular.d.ts +1 -1
- package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.d.ts +1 -1
- package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.d.ts +1 -1
- package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.d.ts +1 -1
- package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.d.ts +1 -1
- package/internal/icons2022/XIcon/XIcon16Light.d.ts +1 -1
- package/internal/icons2022/XIcon/XIcon16Regular.d.ts +1 -1
- package/internal/icons2022/XIcon/XIcon20Light.d.ts +1 -1
- package/internal/icons2022/XIcon/XIcon20Regular.d.ts +1 -1
- package/internal/icons2022/XIcon/XIcon24Regular.d.ts +1 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js +178 -6
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +67 -2
- package/internal/themes/Theme2022/Theme2022.js +62 -15
- package/internal/themes/Theme2022/Theme2022.js.map +1 -1
- package/internal/themes/Theme2022.d.ts +22 -7
- package/internal/themes/Theme2022Dark/Theme2022Dark.js +18 -13
- package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -1
- package/internal/themes/Theme2022Dark.d.ts +5 -9
- package/lib/LayoutEvents/LayoutEvents.js +5 -4
- package/lib/LayoutEvents/LayoutEvents.js.map +1 -1
- package/lib/ModalStack/ModalStack.js +2 -2
- package/lib/ModalStack/ModalStack.js.map +1 -1
- package/lib/SSRSafe/SSRSafe.js +3 -35
- package/lib/SSRSafe/SSRSafe.js.map +1 -1
- package/lib/SSRSafe.d.ts +1 -6
- package/lib/Upgrades/Upgrades.js +3 -1
- package/lib/Upgrades/Upgrades.js.map +1 -1
- package/lib/Upgrades.d.ts +1 -0
- package/lib/animation/index/index.js +6 -3
- package/lib/animation/index/index.js.map +1 -1
- package/lib/chars/chars.js +1 -1
- package/lib/chars/chars.js.map +1 -1
- package/lib/chars.d.ts +1 -1
- package/lib/client/client.js +9 -7
- package/lib/client/client.js.map +1 -1
- package/lib/client.d.ts +2 -7
- package/lib/dom/getScrollWidth/getScrollWidth.js +4 -5
- package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
- package/lib/dom/tabbableHelpers/tabbableHelpers.js +4 -2
- package/lib/dom/tabbableHelpers/tabbableHelpers.js.map +1 -1
- package/lib/dom/tabbableHelpers.d.ts +2 -1
- package/lib/events/MouseDrag/MouseDrag.js +15 -11
- package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
- package/lib/events/fixClickFocusIE/fixClickFocusIE.js +4 -2
- package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +1 -1
- package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js +7 -2
- package/lib/events/fixFirefoxModifiedClickOnLabel/fixFirefoxModifiedClickOnLabel.js.map +1 -1
- package/lib/events/keyListener/keyListener.js +9 -12
- package/lib/events/keyListener/keyListener.js.map +1 -1
- package/lib/events/keyboard/identifiers/identifiers.js +3 -1
- package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +185 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js +5 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers/FeatureFlagsHelpers.js.map +1 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers/package.json +6 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +8 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +10 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/package.json +6 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +10 -0
- package/lib/featureFlagsContext/index/index.js +2 -0
- package/lib/featureFlagsContext/index/index.js.map +1 -0
- package/lib/featureFlagsContext/index/package.json +6 -0
- package/lib/featureFlagsContext/index.d.ts +2 -0
- package/lib/featureFlagsContext/package.json +6 -0
- package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
- package/lib/forwardRefAndName.d.ts +1 -1
- package/lib/isInstanceOf/isInstanceOf.js +3 -0
- package/lib/isInstanceOf/isInstanceOf.js.map +1 -0
- package/lib/isInstanceOf/package.json +6 -0
- package/lib/isInstanceOf.d.ts +1 -0
- package/lib/listenFocusOutside/listenFocusOutside.js +19 -10
- package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
- package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +4 -3
- package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
- package/lib/net/fetch/fetch.js +29 -21
- package/lib/net/fetch/fetch.js.map +1 -1
- package/lib/rootNode/getRootNode/getRootNode.js +6 -6
- package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
- package/lib/styles/ColorFactory/ColorFactory.js +13 -9
- package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
- package/lib/styles/ColorHelpers/ColorHelpers.js +3 -7
- package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
- package/lib/styles/ColorHelpers.d.ts +1 -1
- package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +5 -4
- package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/lib/theming/Emotion/Emotion.js +6 -1
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/utils/utils.js +31 -6
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +7 -0
- package/package.json +4 -4
- package/typings/global.d.ts +3 -4
- package/typings/react-ref.d.ts +29 -0
- package/typings/utility-types.d.ts +2 -0
- package/cjs/internal/MaskedInput/MaskedInput.js.map +0 -1
- package/cjs/internal/MaskedInput/index.js.map +0 -1
- package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +0 -1
- package/internal/MaskedInput/MaskedInput.styles/MaskedInput.styles.js.map +0 -1
- package/internal/MaskedInput/MaskedInput.styles/package.json +0 -6
- package/internal/MaskedInput/index/index.js.map +0 -1
- /package/cjs/{internal → components}/MaskedInput/index.d.ts +0 -0
- /package/cjs/{internal → components}/MaskedInput/index.js +0 -0
- /package/cjs/internal/{MaskedInput/MaskedInput.styles.d.ts → InternalMaskedInput/InternalMaskedInput.styles.d.ts} +0 -0
- /package/cjs/internal/{MaskedInput/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles.js} +0 -0
- /package/{internal/MaskedInput/MaskedInput.styles.d.ts → cjs/internal/MaskedInputElement/MaskedInputElement.styles.d.ts} +0 -0
- /package/{internal → components}/MaskedInput/index/index.js +0 -0
- /package/{internal → components}/MaskedInput/index.d.ts +0 -0
- /package/internal/{MaskedInput/MaskedInput.styles/MaskedInput.styles.js → InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js} +0 -0
|
@@ -2,10 +2,10 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
3
|
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
4
4
|
import React from 'react';
|
|
5
|
-
import {
|
|
6
|
-
import debounce from 'lodash.debounce';
|
|
5
|
+
import { globalObject } from '@skbkontur/global-object';
|
|
7
6
|
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
8
7
|
import { cx } from "../../../lib/theming/Emotion";
|
|
8
|
+
import { isInstanceOf } from "../../../lib/isInstanceOf";
|
|
9
9
|
import { defaultScrollbarState, scrollSizeParametersNames } from "../ScrollContainer.constants";
|
|
10
10
|
import { styles, globalClasses } from "../ScrollContainer.styles";
|
|
11
11
|
import { getScrollSizeParams } from "../ScrollContainer.helpers";
|
|
@@ -36,36 +36,22 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
36
36
|
var _scrollSizeParameters = scrollSizeParametersNames[_this.props.axis],
|
|
37
37
|
customScrollPos = _scrollSizeParameters.customScrollPos,
|
|
38
38
|
customScrollSize = _scrollSizeParameters.customScrollSize;
|
|
39
|
-
var classNames = cx(props.className, styles.scrollBar(_this.theme), _this.scrollBarStyles, (_cx = {}, _cx[styles.scrollBarInvert(_this.theme)] = props.invert, _cx[styles.visibleScrollBar()] =
|
|
39
|
+
var classNames = cx(props.className, styles.scrollBar(_this.theme), _this.scrollBarStyles, (_cx = {}, _cx[styles.scrollBarInvert(_this.theme)] = props.invert, _cx[styles.visibleScrollBar()] = props.isVisible, _cx));
|
|
40
40
|
var inlineStyles = (_inlineStyles = {}, _inlineStyles[customScrollPos] = state.pos + "%", _inlineStyles[customScrollSize] = state.size + "%", _inlineStyles);
|
|
41
41
|
return /*#__PURE__*/React.createElement("div", {
|
|
42
42
|
ref: _this.containerRef,
|
|
43
43
|
className: _this.scrollBarContainerClassNames,
|
|
44
44
|
style: props.offset
|
|
45
|
-
}, /*#__PURE__*/React.createElement(CSSTransition, {
|
|
46
|
-
appear: !props.disableAnimations,
|
|
47
|
-
exit: !props.disableAnimations,
|
|
48
|
-
"in": _this.state.scrollingByMouseWheel,
|
|
49
|
-
classNames: {
|
|
50
|
-
enter: styles.transition(),
|
|
51
|
-
enterActive: styles.transitionActive(),
|
|
52
|
-
exit: styles.transitionLeave(),
|
|
53
|
-
exitActive: styles.transitionLeaveActive()
|
|
54
|
-
},
|
|
55
|
-
timeout: {
|
|
56
|
-
enter: 100,
|
|
57
|
-
exit: 300
|
|
58
|
-
}
|
|
59
45
|
}, /*#__PURE__*/React.createElement("div", {
|
|
60
46
|
ref: _this.refScroll,
|
|
61
47
|
style: inlineStyles,
|
|
62
48
|
className: classNames,
|
|
63
49
|
onMouseDown: _this.handleScrollMouseDown,
|
|
64
50
|
"data-tid": "ScrollContainer__ScrollBar-" + props.axis
|
|
65
|
-
}))
|
|
51
|
+
}));
|
|
66
52
|
};
|
|
67
53
|
|
|
68
|
-
_this.reflow = function (
|
|
54
|
+
_this.reflow = function () {
|
|
69
55
|
if (!_this.inner) {
|
|
70
56
|
return;
|
|
71
57
|
}
|
|
@@ -85,8 +71,8 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
85
71
|
if (state.active !== scrollActive || state.size !== scrollSize || state.pos !== scrollPos) {
|
|
86
72
|
var scrollState = _this.getImmediateScrollState();
|
|
87
73
|
|
|
88
|
-
if (
|
|
89
|
-
_this.props.
|
|
74
|
+
if (state.pos !== scrollPos) {
|
|
75
|
+
_this.props.onScroll == null ? void 0 : _this.props.onScroll(props.axis, scrollState, state.scrollState);
|
|
90
76
|
}
|
|
91
77
|
|
|
92
78
|
_this.setState(_extends({}, _this.state, {
|
|
@@ -95,8 +81,6 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
95
81
|
pos: scrollPos,
|
|
96
82
|
scrollState: scrollState
|
|
97
83
|
}));
|
|
98
|
-
|
|
99
|
-
event && event.type === 'scroll' && props.hideScrollBar && _this.setScrollingByMouseWheel();
|
|
100
84
|
}
|
|
101
85
|
};
|
|
102
86
|
|
|
@@ -135,7 +119,7 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
135
119
|
pos = _scrollSizeParameters2.pos,
|
|
136
120
|
coord = _scrollSizeParameters2.coord;
|
|
137
121
|
var initialCoord = event[coord];
|
|
138
|
-
var target =
|
|
122
|
+
var target = globalObject.document;
|
|
139
123
|
var initialScrollPos = _this.inner[pos];
|
|
140
124
|
var state = _this.state;
|
|
141
125
|
|
|
@@ -160,18 +144,16 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
160
144
|
};
|
|
161
145
|
|
|
162
146
|
var mouseUp = function mouseUp() {
|
|
163
|
-
target.removeEventListener('mousemove', mouseMove);
|
|
164
|
-
target.removeEventListener('mouseup', mouseUp);
|
|
147
|
+
target == null ? void 0 : target.removeEventListener('mousemove', mouseMove);
|
|
148
|
+
target == null ? void 0 : target.removeEventListener('mouseup', mouseUp);
|
|
165
149
|
|
|
166
150
|
_this.setState(_extends({}, _this.state, {
|
|
167
151
|
scrollingByMouseDrag: false
|
|
168
152
|
}));
|
|
169
|
-
|
|
170
|
-
_this.hideScrollBar();
|
|
171
153
|
};
|
|
172
154
|
|
|
173
|
-
target.addEventListener('mousemove', mouseMove);
|
|
174
|
-
target.addEventListener('mouseup', mouseUp);
|
|
155
|
+
target == null ? void 0 : target.addEventListener('mousemove', mouseMove);
|
|
156
|
+
target == null ? void 0 : target.addEventListener('mouseup', mouseUp);
|
|
175
157
|
|
|
176
158
|
_this.setState(_extends({}, _this.state, {
|
|
177
159
|
scrollingByMouseDrag: true
|
|
@@ -181,7 +163,7 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
181
163
|
};
|
|
182
164
|
|
|
183
165
|
_this.handleScrollWheel = function (event, axis) {
|
|
184
|
-
if (!_this.inner || !(event
|
|
166
|
+
if (!_this.inner || !isInstanceOf(event, globalObject.WheelEvent) || axis === 'x' && !event.shiftKey) {
|
|
185
167
|
return;
|
|
186
168
|
}
|
|
187
169
|
|
|
@@ -226,21 +208,6 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
226
208
|
return 'middle';
|
|
227
209
|
};
|
|
228
210
|
|
|
229
|
-
_this.setScrollingByMouseWheel = function () {
|
|
230
|
-
if (!_this.state.scrollingByMouseWheel) {
|
|
231
|
-
_this.setState({
|
|
232
|
-
scrollingByMouseWheel: true
|
|
233
|
-
});
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
_this.hideScrollBar();
|
|
237
|
-
};
|
|
238
|
-
|
|
239
|
-
_this.hideScrollBar = debounce(function () {
|
|
240
|
-
!_this.state.scrollingByMouseDrag && !_this.state.hover && _this.setState({
|
|
241
|
-
scrollingByMouseWheel: false
|
|
242
|
-
});
|
|
243
|
-
}, _this.props.hideScrollBarDelay);
|
|
244
211
|
return _this;
|
|
245
212
|
}
|
|
246
213
|
|
|
@@ -268,13 +235,13 @@ export var ScrollBar = /*#__PURE__*/function (_React$Component) {
|
|
|
268
235
|
this.setState(_extends({}, this.state, {
|
|
269
236
|
hover: hover
|
|
270
237
|
}));
|
|
271
|
-
|
|
272
|
-
if (!hover) {
|
|
273
|
-
this.props.hideScrollBar && this.hideScrollBar();
|
|
274
|
-
}
|
|
275
238
|
}
|
|
276
239
|
};
|
|
277
240
|
|
|
241
|
+
_proto.getHover = function getHover() {
|
|
242
|
+
return this.state.hover;
|
|
243
|
+
};
|
|
244
|
+
|
|
278
245
|
_createClass(ScrollBar, [{
|
|
279
246
|
key: "scrollBarState",
|
|
280
247
|
get: function get() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollBar.tsx"],"names":["React","CSSTransition","debounce","ThemeContext","cx","defaultScrollbarState","scrollSizeParametersNames","styles","globalClasses","getScrollSizeParams","ScrollBar","containerRef","createRef","state","renderMain","props","active","axis","customScrollPos","customScrollSize","classNames","className","scrollBar","theme","scrollBarStyles","scrollBarInvert","invert","visibleScrollBar","scrollingByMouseWheel","hideScrollBar","inlineStyles","pos","size","scrollBarContainerClassNames","offset","disableAnimations","enter","transition","enterActive","transitionActive","exit","transitionLeave","exitActive","transitionLeaveActive","refScroll","handleScrollMouseDown","reflow","event","inner","scrollSize","scrollPos","scrollActive","scrollState","getImmediateScrollState","onScrollStateChange","setState","type","setScrollingByMouseWheel","setInnerElement","element","handleScrollWheel","node","addEventListener","passive","removeEventListener","coord","initialCoord","target","window","document","initialScrollPos","mouseMove","mouseMoveEvent","current","remainingScrollingContent","remainingScrollingSpace","ratio","delta","preventDefault","Object","prototype","hasOwnProperty","call","returnValue","mouseUp","scrollingByMouseDrag","WheelEvent","shiftKey","offsetHeight","deltaY","clientSize","maxScrollPos","Math","abs","hover","hideScrollBarDelay","componentDidMount","componentDidUpdate","render","setHover","scrollBarX","scrollbarX","scrollBarXHover","scrollBarY","scrollbarY","scrollBarYHover","scrollbarContainerX","scrollBarContainerX","scrollbarContainerY","scrollBarContainerY","Component"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport debounce from 'lodash.debounce';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { defaultScrollbarState, scrollSizeParametersNames } from './ScrollContainer.constants';\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { getScrollSizeParams } from './ScrollContainer.helpers';\nimport { ScrollContainerProps } from './ScrollContainer';\n\nexport type ScrollAxis = 'x' | 'y';\nexport type ScrollBarScrollState = 'begin' | 'middle' | 'end';\n\nexport interface ScrollBarState {\n active: boolean;\n hover: boolean;\n scrollingByMouseDrag: boolean;\n size: number; // in percentages\n pos: number; // in percentages\n scrollState: ScrollBarScrollState;\n scrollingByMouseWheel: boolean;\n}\n\nexport interface ScrollBarProps {\n invert: boolean;\n axis: ScrollAxis;\n className?: string;\n onScrollStateChange?: (state: ScrollBarScrollState, axis: ScrollAxis) => void;\n offset: ScrollContainerProps['offsetY'] | ScrollContainerProps['offsetX'];\n hideScrollBar?: boolean;\n hideScrollBarDelay?: number;\n disableAnimations?: boolean;\n}\n\nexport class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {\n private inner: Nullable<HTMLElement>;\n private containerRef = React.createRef<HTMLDivElement>();\n private theme!: Theme;\n\n public node: Nullable<HTMLElement>;\n public state: ScrollBarState = {\n ...defaultScrollbarState,\n };\n\n public componentDidMount() {\n this.reflow();\n }\n\n public componentDidUpdate() {\n this.reflow();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain = () => {\n const state = this.state;\n const props = this.props;\n\n if (!state.active) {\n return null;\n }\n\n const { customScrollPos, customScrollSize } = scrollSizeParametersNames[this.props.axis];\n\n const classNames = cx(props.className, styles.scrollBar(this.theme), this.scrollBarStyles, {\n [styles.scrollBarInvert(this.theme)]: props.invert,\n [styles.visibleScrollBar()]: this.state.scrollingByMouseWheel || !this.props.hideScrollBar,\n });\n\n const inlineStyles: React.CSSProperties = {\n [customScrollPos]: `${state.pos}%`,\n [customScrollSize]: `${state.size}%`,\n };\n\n return (\n <div ref={this.containerRef} className={this.scrollBarContainerClassNames} style={props.offset}>\n <CSSTransition\n appear={!props.disableAnimations}\n exit={!props.disableAnimations}\n in={this.state.scrollingByMouseWheel}\n classNames={{\n enter: styles.transition(),\n enterActive: styles.transitionActive(),\n exit: styles.transitionLeave(),\n exitActive: styles.transitionLeaveActive(),\n }}\n timeout={{\n enter: 100,\n exit: 300,\n }}\n >\n <div\n ref={this.refScroll}\n style={inlineStyles}\n className={classNames}\n onMouseDown={this.handleScrollMouseDown}\n data-tid={`ScrollContainer__ScrollBar-${props.axis}`}\n />\n </CSSTransition>\n </div>\n );\n };\n\n public reflow = (event?: React.UIEvent<HTMLDivElement>) => {\n if (!this.inner) {\n return;\n }\n\n const props = this.props;\n const state = this.state;\n\n const { scrollSize, scrollPos, scrollActive } = getScrollSizeParams(this.inner, props.axis);\n\n if (!scrollActive && !state.active) {\n return;\n }\n\n if (state.active !== scrollActive || state.size !== scrollSize || state.pos !== scrollPos) {\n const scrollState = this.getImmediateScrollState();\n\n if (scrollState !== state.scrollState) {\n this.props.onScrollStateChange?.(scrollState, props.axis);\n }\n\n this.setState({\n ...this.state,\n active: scrollActive,\n size: scrollSize,\n pos: scrollPos,\n scrollState,\n });\n event && event.type === 'scroll' && props.hideScrollBar && this.setScrollingByMouseWheel();\n }\n };\n\n public setInnerElement = (inner: Nullable<HTMLElement>) => {\n this.inner = inner;\n this.reflow();\n };\n\n public setHover(hover: boolean) {\n if (this.state.active && this.state.hover !== hover) {\n this.setState({ ...this.state, hover });\n if (!hover) {\n this.props.hideScrollBar && this.hideScrollBar();\n }\n }\n }\n\n public get scrollBarState() {\n return this.state.scrollState;\n }\n\n private get scrollBarStyles() {\n const state = this.state;\n\n if (this.props.axis === 'x') {\n return cx(styles.scrollBarX(this.theme), globalClasses.scrollbarX, {\n [styles.scrollBarXHover(this.theme)]: state.hover || state.scrollingByMouseDrag,\n });\n }\n\n return cx(styles.scrollBarY(this.theme), globalClasses.scrollbarY, {\n [styles.scrollBarYHover(this.theme)]: state.hover || state.scrollingByMouseDrag,\n });\n }\n\n private get scrollBarContainerClassNames() {\n const { axis } = this.props;\n\n if (axis === 'x') {\n return cx(globalClasses.scrollbarContainerX, styles.scrollBarContainerX(this.theme));\n }\n\n return cx(globalClasses.scrollbarContainerY, styles.scrollBarContainerY());\n }\n\n private refScroll = (element: HTMLElement | null) => {\n const handleScrollWheel = (event: Event) => this.handleScrollWheel(event, this.props.axis);\n\n if (!this.node && element) {\n element.addEventListener('wheel', handleScrollWheel, { passive: false });\n }\n if (this.node && !element) {\n this.node.removeEventListener('wheel', handleScrollWheel);\n }\n this.node = element;\n };\n\n private handleScrollMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n if (!this.inner) {\n return;\n }\n\n const { offset, size, pos, coord } = scrollSizeParametersNames[this.props.axis];\n\n const initialCoord = event[coord];\n const target: Document = window.document;\n const initialScrollPos = this.inner[pos];\n const state = this.state;\n\n const mouseMove = (mouseMoveEvent: MouseEvent) => {\n if (!this.inner || !this.containerRef.current) {\n return;\n }\n\n const remainingScrollingContent = this.inner[size] - this.inner[offset];\n const remainingScrollingSpace = (this.containerRef.current[offset] / 100) * (100 - state.size);\n\n const ratio = remainingScrollingContent / remainingScrollingSpace;\n const delta = (mouseMoveEvent[coord] - initialCoord) * ratio;\n\n this.inner[pos] = initialScrollPos + delta;\n\n if (mouseMoveEvent.preventDefault) {\n mouseMoveEvent.preventDefault();\n }\n\n if (Object.prototype.hasOwnProperty.call(mouseMoveEvent, 'returnValue')) {\n (\n mouseMoveEvent as MouseEvent & {\n returnValue: boolean;\n }\n ).returnValue = false;\n }\n };\n\n const mouseUp = () => {\n target.removeEventListener('mousemove', mouseMove);\n target.removeEventListener('mouseup', mouseUp);\n this.setState({ ...this.state, scrollingByMouseDrag: false });\n this.hideScrollBar();\n };\n\n target.addEventListener('mousemove', mouseMove);\n target.addEventListener('mouseup', mouseUp);\n this.setState({ ...this.state, scrollingByMouseDrag: true });\n\n event.preventDefault();\n };\n\n private handleScrollWheel = (event: Event, axis: ScrollAxis) => {\n if (!this.inner || !(event instanceof WheelEvent) || (axis === 'x' && !event.shiftKey)) {\n return;\n }\n\n const { offset, size, pos } = scrollSizeParametersNames[axis];\n\n const scrollSize = this.inner[size];\n const scrollPos = this.inner[pos];\n const offsetHeight = this.inner[offset];\n\n if (event.deltaY > 0 && scrollSize <= scrollPos + offsetHeight) {\n return;\n }\n if (event.deltaY < 0 && scrollPos <= 0) {\n return;\n }\n\n this.inner[pos] += event.deltaY;\n\n event.preventDefault();\n };\n\n private getImmediateScrollState = (): ScrollBarScrollState => {\n const { pos, size, clientSize } = scrollSizeParametersNames[this.props.axis];\n\n if (!this.inner || this.inner[pos] === 0) {\n return 'begin';\n }\n // Zoom in Chrome causes problems\n // https://github.com/skbkontur/retail-ui/pull/2705#issue-806286945\n const maxScrollPos = this.inner[size] - this.inner[clientSize];\n if (Math.abs(maxScrollPos - this.inner[pos]) <= 1) {\n return 'end';\n }\n\n return 'middle';\n };\n\n private setScrollingByMouseWheel = () => {\n if (!this.state.scrollingByMouseWheel) {\n this.setState({ scrollingByMouseWheel: true });\n }\n this.hideScrollBar();\n };\n\n private readonly hideScrollBar = debounce(() => {\n !this.state.scrollingByMouseDrag && !this.state.hover && this.setState({ scrollingByMouseWheel: false });\n }, this.props.hideScrollBarDelay);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["ScrollBar.tsx"],"names":["React","globalObject","ThemeContext","cx","isInstanceOf","defaultScrollbarState","scrollSizeParametersNames","styles","globalClasses","getScrollSizeParams","ScrollBar","containerRef","createRef","state","renderMain","props","active","axis","customScrollPos","customScrollSize","classNames","className","scrollBar","theme","scrollBarStyles","scrollBarInvert","invert","visibleScrollBar","isVisible","inlineStyles","pos","size","scrollBarContainerClassNames","offset","refScroll","handleScrollMouseDown","reflow","inner","scrollSize","scrollPos","scrollActive","scrollState","getImmediateScrollState","onScroll","setState","setInnerElement","element","handleScrollWheel","event","node","addEventListener","passive","removeEventListener","coord","initialCoord","target","document","initialScrollPos","mouseMove","mouseMoveEvent","current","remainingScrollingContent","remainingScrollingSpace","ratio","delta","preventDefault","Object","prototype","hasOwnProperty","call","returnValue","mouseUp","scrollingByMouseDrag","WheelEvent","shiftKey","offsetHeight","deltaY","clientSize","maxScrollPos","Math","abs","componentDidMount","componentDidUpdate","render","setHover","hover","getHover","scrollBarX","scrollbarX","scrollBarXHover","scrollBarY","scrollbarY","scrollBarYHover","scrollbarContainerX","scrollBarContainerX","scrollbarContainerY","scrollBarContainerY","Component"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { Nullable } from '../../typings/utility-types';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nimport { defaultScrollbarState, scrollSizeParametersNames } from './ScrollContainer.constants';\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { getScrollSizeParams } from './ScrollContainer.helpers';\nimport { ScrollContainerProps } from './ScrollContainer';\n\nexport type ScrollAxis = 'x' | 'y';\nexport type ScrollBarScrollState = 'begin' | 'middle' | 'end';\n\nexport interface ScrollBarState {\n active: boolean;\n hover: boolean;\n scrollingByMouseDrag: boolean;\n size: number; // in percentages\n pos: number; // in percentages\n scrollState: ScrollBarScrollState;\n}\n\nexport interface ScrollBarProps {\n invert: boolean;\n axis: ScrollAxis;\n className?: string;\n onScroll?: (axis: ScrollAxis, state: ScrollBarScrollState, prevState: ScrollBarScrollState) => void;\n offset: ScrollContainerProps['offsetY'] | ScrollContainerProps['offsetX'];\n disableAnimations?: boolean;\n isVisible: boolean;\n}\n\nexport class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {\n private inner: Nullable<HTMLElement>;\n private containerRef = React.createRef<HTMLDivElement>();\n private theme!: Theme;\n\n public node: Nullable<HTMLElement>;\n public state: ScrollBarState = {\n ...defaultScrollbarState,\n };\n\n public componentDidMount() {\n this.reflow();\n }\n\n public componentDidUpdate() {\n this.reflow();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain = () => {\n const state = this.state;\n const props = this.props;\n\n if (!state.active) {\n return null;\n }\n\n const { customScrollPos, customScrollSize } = scrollSizeParametersNames[this.props.axis];\n\n const classNames = cx(props.className, styles.scrollBar(this.theme), this.scrollBarStyles, {\n [styles.scrollBarInvert(this.theme)]: props.invert,\n [styles.visibleScrollBar()]: props.isVisible,\n });\n\n const inlineStyles: React.CSSProperties = {\n [customScrollPos]: `${state.pos}%`,\n [customScrollSize]: `${state.size}%`,\n };\n\n return (\n <div ref={this.containerRef} className={this.scrollBarContainerClassNames} style={props.offset}>\n <div\n ref={this.refScroll}\n style={inlineStyles}\n className={classNames}\n onMouseDown={this.handleScrollMouseDown}\n data-tid={`ScrollContainer__ScrollBar-${props.axis}`}\n />\n </div>\n );\n };\n\n public reflow = () => {\n if (!this.inner) {\n return;\n }\n\n const props = this.props;\n const state = this.state;\n\n const { scrollSize, scrollPos, scrollActive } = getScrollSizeParams(this.inner, props.axis);\n\n if (!scrollActive && !state.active) {\n return;\n }\n\n if (state.active !== scrollActive || state.size !== scrollSize || state.pos !== scrollPos) {\n const scrollState = this.getImmediateScrollState();\n\n if (state.pos !== scrollPos) {\n this.props.onScroll?.(props.axis, scrollState, state.scrollState);\n }\n\n this.setState({\n ...this.state,\n active: scrollActive,\n size: scrollSize,\n pos: scrollPos,\n scrollState,\n });\n }\n };\n\n public setInnerElement = (inner: Nullable<HTMLElement>) => {\n this.inner = inner;\n this.reflow();\n };\n\n public setHover(hover: boolean) {\n if (this.state.active && this.state.hover !== hover) {\n this.setState({ ...this.state, hover });\n }\n }\n\n public getHover() {\n return this.state.hover;\n }\n\n public get scrollBarState() {\n return this.state.scrollState;\n }\n\n private get scrollBarStyles() {\n const state = this.state;\n\n if (this.props.axis === 'x') {\n return cx(styles.scrollBarX(this.theme), globalClasses.scrollbarX, {\n [styles.scrollBarXHover(this.theme)]: state.hover || state.scrollingByMouseDrag,\n });\n }\n\n return cx(styles.scrollBarY(this.theme), globalClasses.scrollbarY, {\n [styles.scrollBarYHover(this.theme)]: state.hover || state.scrollingByMouseDrag,\n });\n }\n\n private get scrollBarContainerClassNames() {\n const { axis } = this.props;\n\n if (axis === 'x') {\n return cx(globalClasses.scrollbarContainerX, styles.scrollBarContainerX(this.theme));\n }\n\n return cx(globalClasses.scrollbarContainerY, styles.scrollBarContainerY());\n }\n\n private refScroll = (element: HTMLElement | null) => {\n const handleScrollWheel = (event: Event) => this.handleScrollWheel(event, this.props.axis);\n\n if (!this.node && element) {\n element.addEventListener('wheel', handleScrollWheel, { passive: false });\n }\n if (this.node && !element) {\n this.node.removeEventListener('wheel', handleScrollWheel);\n }\n this.node = element;\n };\n\n private handleScrollMouseDown = (event: React.MouseEvent<HTMLDivElement>) => {\n if (!this.inner) {\n return;\n }\n\n const { offset, size, pos, coord } = scrollSizeParametersNames[this.props.axis];\n\n const initialCoord = event[coord];\n const target = globalObject.document;\n const initialScrollPos = this.inner[pos];\n const state = this.state;\n\n const mouseMove = (mouseMoveEvent: MouseEvent) => {\n if (!this.inner || !this.containerRef.current) {\n return;\n }\n\n const remainingScrollingContent = this.inner[size] - this.inner[offset];\n const remainingScrollingSpace = (this.containerRef.current[offset] / 100) * (100 - state.size);\n\n const ratio = remainingScrollingContent / remainingScrollingSpace;\n const delta = (mouseMoveEvent[coord] - initialCoord) * ratio;\n\n this.inner[pos] = initialScrollPos + delta;\n\n if (mouseMoveEvent.preventDefault) {\n mouseMoveEvent.preventDefault();\n }\n\n if (Object.prototype.hasOwnProperty.call(mouseMoveEvent, 'returnValue')) {\n (\n mouseMoveEvent as MouseEvent & {\n returnValue: boolean;\n }\n ).returnValue = false;\n }\n };\n\n const mouseUp = () => {\n target?.removeEventListener('mousemove', mouseMove);\n target?.removeEventListener('mouseup', mouseUp);\n this.setState({ ...this.state, scrollingByMouseDrag: false });\n };\n\n target?.addEventListener('mousemove', mouseMove);\n target?.addEventListener('mouseup', mouseUp);\n this.setState({ ...this.state, scrollingByMouseDrag: true });\n\n event.preventDefault();\n };\n\n private handleScrollWheel = (event: Event, axis: ScrollAxis) => {\n if (!this.inner || !isInstanceOf(event, globalObject.WheelEvent) || (axis === 'x' && !event.shiftKey)) {\n return;\n }\n\n const { offset, size, pos } = scrollSizeParametersNames[axis];\n\n const scrollSize = this.inner[size];\n const scrollPos = this.inner[pos];\n const offsetHeight = this.inner[offset];\n\n if (event.deltaY > 0 && scrollSize <= scrollPos + offsetHeight) {\n return;\n }\n if (event.deltaY < 0 && scrollPos <= 0) {\n return;\n }\n\n this.inner[pos] += event.deltaY;\n\n event.preventDefault();\n };\n\n private getImmediateScrollState = (): ScrollBarScrollState => {\n const { pos, size, clientSize } = scrollSizeParametersNames[this.props.axis];\n\n if (!this.inner || this.inner[pos] === 0) {\n return 'begin';\n }\n // Zoom in Chrome causes problems\n // https://github.com/skbkontur/retail-ui/pull/2705#issue-806286945\n const maxScrollPos = this.inner[size] - this.inner[clientSize];\n if (Math.abs(maxScrollPos - this.inner[pos]) <= 1) {\n return 'end';\n }\n\n return 'middle';\n };\n}\n"]}
|
|
@@ -10,17 +10,15 @@ export interface ScrollBarState {
|
|
|
10
10
|
size: number;
|
|
11
11
|
pos: number;
|
|
12
12
|
scrollState: ScrollBarScrollState;
|
|
13
|
-
scrollingByMouseWheel: boolean;
|
|
14
13
|
}
|
|
15
14
|
export interface ScrollBarProps {
|
|
16
15
|
invert: boolean;
|
|
17
16
|
axis: ScrollAxis;
|
|
18
17
|
className?: string;
|
|
19
|
-
|
|
18
|
+
onScroll?: (axis: ScrollAxis, state: ScrollBarScrollState, prevState: ScrollBarScrollState) => void;
|
|
20
19
|
offset: ScrollContainerProps['offsetY'] | ScrollContainerProps['offsetX'];
|
|
21
|
-
hideScrollBar?: boolean;
|
|
22
|
-
hideScrollBarDelay?: number;
|
|
23
20
|
disableAnimations?: boolean;
|
|
21
|
+
isVisible: boolean;
|
|
24
22
|
}
|
|
25
23
|
export declare class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {
|
|
26
24
|
private inner;
|
|
@@ -32,9 +30,10 @@ export declare class ScrollBar extends React.Component<ScrollBarProps, ScrollBar
|
|
|
32
30
|
componentDidUpdate(): void;
|
|
33
31
|
render(): JSX.Element;
|
|
34
32
|
private renderMain;
|
|
35
|
-
reflow: (
|
|
33
|
+
reflow: () => void;
|
|
36
34
|
setInnerElement: (inner: Nullable<HTMLElement>) => void;
|
|
37
35
|
setHover(hover: boolean): void;
|
|
36
|
+
getHover(): boolean;
|
|
38
37
|
get scrollBarState(): ScrollBarScrollState;
|
|
39
38
|
private get scrollBarStyles();
|
|
40
39
|
private get scrollBarContainerClassNames();
|
|
@@ -42,6 +41,4 @@ export declare class ScrollBar extends React.Component<ScrollBarProps, ScrollBar
|
|
|
42
41
|
private handleScrollMouseDown;
|
|
43
42
|
private handleScrollWheel;
|
|
44
43
|
private getImmediateScrollState;
|
|
45
|
-
private setScrollingByMouseWheel;
|
|
46
|
-
private readonly hideScrollBar;
|
|
47
44
|
}
|
|
@@ -5,6 +5,9 @@ var _class, _class2, _temp;
|
|
|
5
5
|
|
|
6
6
|
import React from 'react';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
|
+
import { globalObject } from '@skbkontur/global-object';
|
|
9
|
+
import debounce from 'lodash.debounce';
|
|
10
|
+
import { isInstanceOf } from "../../../lib/isInstanceOf";
|
|
8
11
|
import * as LayoutEvents from "../../../lib/LayoutEvents";
|
|
9
12
|
import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
10
13
|
import { cx } from "../../../lib/theming/Emotion";
|
|
@@ -33,6 +36,12 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
33
36
|
|
|
34
37
|
_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
|
|
35
38
|
_this.getProps = createPropsGetter(ScrollContainer.defaultProps);
|
|
39
|
+
_this.initialIsScrollBarVisible = !_this.getProps().hideScrollBar && _this.getProps().showScrollBar === 'always';
|
|
40
|
+
_this.state = {
|
|
41
|
+
isScrollBarXVisible: _this.initialIsScrollBarVisible,
|
|
42
|
+
isScrollBarYVisible: _this.initialIsScrollBarVisible,
|
|
43
|
+
isHovered: false
|
|
44
|
+
};
|
|
36
45
|
|
|
37
46
|
_this.render = function () {
|
|
38
47
|
var props = _this.props;
|
|
@@ -68,26 +77,24 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
68
77
|
};
|
|
69
78
|
|
|
70
79
|
_this.renderScrollbar = function (axis) {
|
|
71
|
-
var refScrollBar = axis === 'x' ? _this.refScrollBarX : _this.refScrollBarY;
|
|
72
|
-
|
|
73
80
|
var _this$getProps = _this.getProps(),
|
|
74
81
|
offsetY = _this$getProps.offsetY,
|
|
75
82
|
offsetX = _this$getProps.offsetX,
|
|
76
83
|
invert = _this$getProps.invert,
|
|
77
|
-
|
|
78
|
-
disableAnimations = _this$getProps.disableAnimations,
|
|
79
|
-
hideScrollBarDelay = _this$getProps.hideScrollBarDelay;
|
|
84
|
+
disableAnimations = _this$getProps.disableAnimations;
|
|
80
85
|
|
|
81
|
-
var
|
|
86
|
+
var isAxisX = axis === 'x';
|
|
87
|
+
var refScrollBar = isAxisX ? _this.refScrollBarX : _this.refScrollBarY;
|
|
88
|
+
var offset = isAxisX ? offsetX : offsetY;
|
|
89
|
+
var isVisible = isAxisX ? _this.state.isScrollBarXVisible : _this.state.isScrollBarYVisible;
|
|
82
90
|
return /*#__PURE__*/React.createElement(ScrollBar, {
|
|
83
91
|
axis: axis,
|
|
84
92
|
ref: refScrollBar,
|
|
85
93
|
invert: invert,
|
|
86
|
-
|
|
94
|
+
onScroll: _this.handleScroll,
|
|
87
95
|
offset: offset,
|
|
88
|
-
hideScrollBar: hideScrollBar,
|
|
89
96
|
disableAnimations: disableAnimations,
|
|
90
|
-
|
|
97
|
+
isVisible: isVisible
|
|
91
98
|
});
|
|
92
99
|
};
|
|
93
100
|
|
|
@@ -107,6 +114,18 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
107
114
|
_this.props.onScrollStateChangeY == null ? void 0 : _this.props.onScrollStateChangeY(scrollYState);
|
|
108
115
|
};
|
|
109
116
|
|
|
117
|
+
_this.handleScroll = function (axis, scrollState, prevScrollState) {
|
|
118
|
+
if (scrollState !== prevScrollState) {
|
|
119
|
+
_this.handleScrollStateChange(scrollState, axis);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
var _this$getProps2 = _this.getProps(),
|
|
123
|
+
hideScrollBar = _this$getProps2.hideScrollBar,
|
|
124
|
+
showScrollBar = _this$getProps2.showScrollBar;
|
|
125
|
+
|
|
126
|
+
(hideScrollBar || showScrollBar === 'scroll') && _this.showScrollBarOnMouseWheel(axis);
|
|
127
|
+
};
|
|
128
|
+
|
|
110
129
|
_this.refScrollBarY = function (scrollbar) {
|
|
111
130
|
_this.scrollY = scrollbar;
|
|
112
131
|
};
|
|
@@ -132,8 +151,8 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
132
151
|
_this.handleNativeScroll = function (event) {
|
|
133
152
|
var _this$scrollY, _this$scrollX;
|
|
134
153
|
|
|
135
|
-
(_this$scrollY = _this.scrollY) == null ? void 0 : _this$scrollY.reflow(
|
|
136
|
-
(_this$scrollX = _this.scrollX) == null ? void 0 : _this$scrollX.reflow(
|
|
154
|
+
(_this$scrollY = _this.scrollY) == null ? void 0 : _this$scrollY.reflow();
|
|
155
|
+
(_this$scrollX = _this.scrollX) == null ? void 0 : _this$scrollX.reflow();
|
|
137
156
|
_this.props.onScroll == null ? void 0 : _this.props.onScroll(event);
|
|
138
157
|
|
|
139
158
|
if (_this.getProps().preventWindowScroll) {
|
|
@@ -144,8 +163,48 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
144
163
|
LayoutEvents.emit();
|
|
145
164
|
};
|
|
146
165
|
|
|
166
|
+
_this.showScrollBarOnMouseWheel = function (axis) {
|
|
167
|
+
var isScrollBarVisible = axis === 'x' ? _this.state.isScrollBarXVisible : _this.state.isScrollBarYVisible;
|
|
168
|
+
|
|
169
|
+
if (!isScrollBarVisible) {
|
|
170
|
+
axis === 'x' ? _this.setState({
|
|
171
|
+
isScrollBarXVisible: true
|
|
172
|
+
}) : _this.setState({
|
|
173
|
+
isScrollBarYVisible: true
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
_this.hideScrollBar(axis);
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
_this.hideScrollBar = debounce(function (axis) {
|
|
181
|
+
var _this$scrollX2, _this$scrollY2;
|
|
182
|
+
|
|
183
|
+
if (_this.state.isHovered) {
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
var isScrollBarXHovered = (_this$scrollX2 = _this.scrollX) == null ? void 0 : _this$scrollX2.getHover();
|
|
188
|
+
var isScrollBarYHovered = (_this$scrollY2 = _this.scrollY) == null ? void 0 : _this$scrollY2.getHover();
|
|
189
|
+
|
|
190
|
+
if (axis === 'both') {
|
|
191
|
+
!isScrollBarXHovered && !isScrollBarYHovered ? _this.setState({
|
|
192
|
+
isScrollBarXVisible: false,
|
|
193
|
+
isScrollBarYVisible: false
|
|
194
|
+
}) : _this.hideScrollBar('both');
|
|
195
|
+
} else if (axis === 'x') {
|
|
196
|
+
!isScrollBarXHovered ? _this.setState({
|
|
197
|
+
isScrollBarXVisible: false
|
|
198
|
+
}) : _this.hideScrollBar('x');
|
|
199
|
+
} else {
|
|
200
|
+
!isScrollBarYHovered ? _this.setState({
|
|
201
|
+
isScrollBarYVisible: false
|
|
202
|
+
}) : _this.hideScrollBar('y');
|
|
203
|
+
}
|
|
204
|
+
}, _this.getProps().hideScrollBarDelay);
|
|
205
|
+
|
|
147
206
|
_this.handleInnerScrollWheel = function (event) {
|
|
148
|
-
if (!_this.inner || !(event
|
|
207
|
+
if (!_this.inner || !isInstanceOf(event, globalObject.WheelEvent)) {
|
|
149
208
|
return;
|
|
150
209
|
}
|
|
151
210
|
|
|
@@ -170,26 +229,39 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
170
229
|
};
|
|
171
230
|
|
|
172
231
|
_this.handleMouseMove = function (event) {
|
|
173
|
-
var _this$
|
|
232
|
+
var _this$scrollY3, _this$scrollX3;
|
|
174
233
|
|
|
175
234
|
var right = getDOMRect(event.currentTarget).right - event.pageX;
|
|
176
235
|
var bottom = getDOMRect(event.currentTarget).bottom - event.pageY;
|
|
177
|
-
(_this$
|
|
178
|
-
(_this$
|
|
236
|
+
(_this$scrollY3 = _this.scrollY) == null ? void 0 : _this$scrollY3.setHover(right <= 12);
|
|
237
|
+
(_this$scrollX3 = _this.scrollX) == null ? void 0 : _this$scrollX3.setHover(right >= 12 && bottom <= 12);
|
|
238
|
+
_this.getProps().showScrollBar === 'hover' && !_this.state.isHovered && _this.setState({
|
|
239
|
+
isScrollBarXVisible: true,
|
|
240
|
+
isScrollBarYVisible: true,
|
|
241
|
+
isHovered: true
|
|
242
|
+
});
|
|
179
243
|
};
|
|
180
244
|
|
|
181
245
|
_this.handleMouseLeave = function () {
|
|
182
|
-
var _this$
|
|
246
|
+
var _this$scrollY4, _this$scrollX4;
|
|
183
247
|
|
|
184
|
-
(_this$
|
|
185
|
-
(_this$
|
|
248
|
+
(_this$scrollY4 = _this.scrollY) == null ? void 0 : _this$scrollY4.setHover(false);
|
|
249
|
+
(_this$scrollX4 = _this.scrollX) == null ? void 0 : _this$scrollX4.setHover(false);
|
|
250
|
+
|
|
251
|
+
if (_this.getProps().showScrollBar === 'hover') {
|
|
252
|
+
_this.setState({
|
|
253
|
+
isHovered: false
|
|
254
|
+
});
|
|
255
|
+
|
|
256
|
+
_this.hideScrollBar('both');
|
|
257
|
+
}
|
|
186
258
|
};
|
|
187
259
|
|
|
188
260
|
_this.updateInnerElement = function () {
|
|
189
|
-
var _this$
|
|
261
|
+
var _this$scrollX5, _this$scrollY5;
|
|
190
262
|
|
|
191
|
-
(_this$
|
|
192
|
-
(_this$
|
|
263
|
+
(_this$scrollX5 = _this.scrollX) == null ? void 0 : _this$scrollX5.setInnerElement(_this.inner);
|
|
264
|
+
(_this$scrollY5 = _this.scrollY) == null ? void 0 : _this$scrollY5.setInnerElement(_this.inner);
|
|
193
265
|
};
|
|
194
266
|
|
|
195
267
|
return _this;
|
|
@@ -219,6 +291,20 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
219
291
|
if (prevProps.disabled !== this.props.disabled && !this.props.disabled) {
|
|
220
292
|
this.updateInnerElement();
|
|
221
293
|
}
|
|
294
|
+
|
|
295
|
+
if (prevProps.showScrollBar !== this.props.showScrollBar) {
|
|
296
|
+
if (this.props.showScrollBar === 'always') {
|
|
297
|
+
this.setState({
|
|
298
|
+
isScrollBarXVisible: true,
|
|
299
|
+
isScrollBarYVisible: true
|
|
300
|
+
});
|
|
301
|
+
} else if (this.props.showScrollBar === 'never') {
|
|
302
|
+
this.setState({
|
|
303
|
+
isScrollBarXVisible: false,
|
|
304
|
+
isScrollBarYVisible: false
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
}
|
|
222
308
|
};
|
|
223
309
|
/**
|
|
224
310
|
* @public
|
|
@@ -305,5 +391,6 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
305
391
|
preventWindowScroll: false,
|
|
306
392
|
hideScrollBar: false,
|
|
307
393
|
disableAnimations: isTestEnv,
|
|
308
|
-
hideScrollBarDelay: 500
|
|
394
|
+
hideScrollBarDelay: 500,
|
|
395
|
+
showScrollBar: 'always'
|
|
309
396
|
}, _temp)) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollContainer.tsx"],"names":["React","PropTypes","LayoutEvents","CommonWrapper","cx","isIE11","rootNode","getDOMRect","createPropsGetter","isTestEnv","styles","globalClasses","scrollSizeParametersNames","getScrollYOffset","convertScrollbarXScrollState","convertScrollbarYScrollState","ScrollBar","ScrollContainerDataTids","root","inner","ScrollContainer","getProps","defaultProps","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","setRootNode","handleMouseMove","handleMouseLeave","refInner","innerIE11","handleNativeScroll","axis","refScrollBar","refScrollBarX","refScrollBarY","offsetY","offsetX","invert","hideScrollBar","disableAnimations","hideScrollBarDelay","offset","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","onScrollStateChangeX","scrollYState","onScrollStateChange","onScrollStateChangeY","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","event","reflow","onScroll","preventDefault","emit","WheelEvent","shiftKey","hasScrollBar","pos","size","deltaY","right","currentTarget","pageX","bottom","pageY","setHover","updateInnerElement","setInnerElement","componentDidMount","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","Component","__KONTUR_REACT_UI__","propTypes","bool","oneOfType","string","number","oneOf","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\n\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { scrollSizeParametersNames } from './ScrollContainer.constants';\nimport {\n getScrollYOffset,\n convertScrollbarXScrollState,\n convertScrollbarYScrollState,\n} from './ScrollContainer.helpers';\nimport { ScrollAxis, ScrollBar, ScrollBarScrollState } 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 * Инвертировать цвет скроллбара\n * @default false\n */\n invert?: boolean;\n maxHeight?: React.CSSProperties['maxHeight'];\n maxWidth?: React.CSSProperties['maxWidth'];\n /**\n * @default false\n */\n preventWindowScroll?: boolean;\n /**\n * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto'\n */\n scrollBehaviour?: ScrollBehaviour;\n onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;\n onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;\n onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void; // deprecated\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n /**\n * Отключение кастомного скролла\n */\n disabled?: boolean;\n /**\n * Смещение вертикального скроллбара\n */\n offsetY?: Partial<Record<OffsetCSSPropsY, React.CSSProperties[OffsetCSSPropsY]>>;\n /**\n * Смещение горизонтального скроллбара\n */\n offsetX?: Partial<Record<OffsetCSSPropsX, React.CSSProperties[OffsetCSSPropsX]>>;\n /**\n * Скрывать скроллбар при отсутствии активности пользователя\n */\n hideScrollBar?: boolean;\n /**\n * Задержка перед скрытием скроллбара, ms. Работает только если `hideScrollBar = true`\n */\n hideScrollBarDelay?: number;\n /**\n * Отключить анимации\n */\n disableAnimations?: boolean;\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' | 'hideScrollBar' | 'disableAnimations' | 'hideScrollBarDelay'\n >\n>;\n\n@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps> {\n public static __KONTUR_REACT_UI__ = '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 hideScrollBar: false,\n disableAnimations: isTestEnv,\n hideScrollBarDelay: 500,\n };\n\n private getProps = createPropsGetter(ScrollContainer.defaultProps);\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n private setRootNode!: TSetRootNode;\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\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 refScrollBar = axis === 'x' ? this.refScrollBarX : this.refScrollBarY;\n const { offsetY, offsetX, invert, hideScrollBar, disableAnimations, hideScrollBarDelay } = this.getProps();\n\n const offset = axis === 'x' ? offsetX : offsetY;\n\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={invert}\n onScrollStateChange={this.handleScrollStateChange}\n offset={offset}\n hideScrollBar={hideScrollBar}\n disableAnimations={disableAnimations}\n hideScrollBarDelay={hideScrollBarDelay}\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 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\n private handleNativeScroll = (event: React.UIEvent<HTMLDivElement>) => {\n this.scrollY?.reflow(event);\n this.scrollX?.reflow(event);\n\n this.props.onScroll?.(event);\n if (this.getProps().preventWindowScroll) {\n event.preventDefault();\n return;\n }\n LayoutEvents.emit();\n };\n\n private handleInnerScrollWheel = (event: Event) => {\n if (!this.inner || !(event instanceof 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\n private handleMouseLeave = () => {\n this.scrollY?.setHover(false);\n this.scrollX?.setHover(false);\n };\n\n private updateInnerElement = () => {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["ScrollContainer.tsx"],"names":["React","PropTypes","globalObject","debounce","isInstanceOf","LayoutEvents","CommonWrapper","cx","isIE11","rootNode","getDOMRect","createPropsGetter","isTestEnv","styles","globalClasses","scrollSizeParametersNames","getScrollYOffset","convertScrollbarXScrollState","convertScrollbarYScrollState","ScrollBar","ScrollContainerDataTids","root","inner","ScrollContainer","getProps","defaultProps","initialIsScrollBarVisible","hideScrollBar","showScrollBar","state","isScrollBarXVisible","isScrollBarYVisible","isHovered","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","setRootNode","handleMouseMove","handleMouseLeave","refInner","innerIE11","handleNativeScroll","axis","offsetY","offsetX","invert","disableAnimations","isAxisX","refScrollBar","refScrollBarX","refScrollBarY","offset","isVisible","handleScroll","handleScrollStateChange","scrollState","scrollY","scrollX","scrollXState","onScrollStateChangeX","scrollYState","onScrollStateChange","onScrollStateChangeY","prevScrollState","showScrollBarOnMouseWheel","scrollbar","element","preventWindowScroll","addEventListener","handleInnerScrollWheel","passive","removeEventListener","event","reflow","onScroll","preventDefault","emit","isScrollBarVisible","setState","isScrollBarXHovered","getHover","isScrollBarYHovered","hideScrollBarDelay","WheelEvent","shiftKey","hasScrollBar","pos","size","deltaY","right","currentTarget","pageX","bottom","pageY","setHover","updateInnerElement","setInnerElement","componentDidMount","componentDidUpdate","prevProps","scrollTo","scrollLeft","offsetLeft","scrollTop","scrollToTop","scrollToBottom","scrollHeight","offsetHeight","scrollToLeft","scrollToRight","scrollWidth","offsetWidth","Component","__KONTUR_REACT_UI__","propTypes","bool","oneOfType","string","number","oneOf","func"],"mappings":"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","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 { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { Nullable } from '../../typings/utility-types';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isIE11 } from '../../lib/client';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\n\nimport { styles, globalClasses } from './ScrollContainer.styles';\nimport { scrollSizeParametersNames } from './ScrollContainer.constants';\nimport {\n getScrollYOffset,\n convertScrollbarXScrollState,\n convertScrollbarYScrollState,\n} from './ScrollContainer.helpers';\nimport { ScrollAxis, ScrollBar, ScrollBarScrollState } 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 * Инвертировать цвет скроллбара\n * @default false\n */\n invert?: boolean;\n maxHeight?: React.CSSProperties['maxHeight'];\n maxWidth?: React.CSSProperties['maxWidth'];\n /**\n * @default false\n */\n preventWindowScroll?: boolean;\n /**\n * Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)\n * @default 'auto'\n */\n scrollBehaviour?: ScrollBehaviour;\n onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;\n onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;\n onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void; // deprecated\n onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;\n /**\n * Отключение кастомного скролла\n */\n disabled?: boolean;\n /**\n * Смещение вертикального скроллбара\n */\n offsetY?: Partial<Record<OffsetCSSPropsY, React.CSSProperties[OffsetCSSPropsY]>>;\n /**\n * Смещение горизонтального скроллбара\n */\n offsetX?: Partial<Record<OffsetCSSPropsX, React.CSSProperties[OffsetCSSPropsX]>>;\n /**\n * Скрывать скроллбар при отсутствии активности пользователя\n * @deprecated use showScrollBar\n */\n hideScrollBar?: boolean;\n /**\n * Показывать скроллбар\n */\n showScrollBar?: 'always' | 'scroll' | 'hover' | 'never';\n /**\n * Задержка перед скрытием скроллбара, ms. Работает только если `hideScrollBar = true` или `showScrollBar = 'scroll' | 'hover'`\n */\n hideScrollBarDelay?: number;\n /**\n * Отключить анимации\n */\n disableAnimations?: boolean;\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'\n | 'scrollBehaviour'\n | 'preventWindowScroll'\n | 'hideScrollBar'\n | 'disableAnimations'\n | 'hideScrollBarDelay'\n | 'showScrollBar'\n >\n>;\n\ninterface ScrollContainerState {\n isScrollBarXVisible: boolean;\n isScrollBarYVisible: boolean;\n isHovered: boolean;\n}\n\n@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps, ScrollContainerState> {\n public static __KONTUR_REACT_UI__ = '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 hideScrollBar: 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().hideScrollBar && 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 { hideScrollBar, showScrollBar } = this.getProps();\n (hideScrollBar || 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\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"]}
|
|
@@ -7,8 +7,7 @@ export var defaultScrollbarState = {
|
|
|
7
7
|
active: false,
|
|
8
8
|
// True when scroll is following mouse (mouse down on scroll).
|
|
9
9
|
scrollingByMouseDrag: false,
|
|
10
|
-
scrollState: 'begin'
|
|
11
|
-
scrollingByMouseWheel: false
|
|
10
|
+
scrollState: 'begin'
|
|
12
11
|
};
|
|
13
12
|
export var scrollSizeParametersNames = {
|
|
14
13
|
x: {
|
package/components/ScrollContainer/ScrollContainer.constants/ScrollContainer.constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollContainer.constants.ts"],"names":["MIN_SCROLL_SIZE","defaultScrollbarState","size","pos","hover","active","scrollingByMouseDrag","scrollState","
|
|
1
|
+
{"version":3,"sources":["ScrollContainer.constants.ts"],"names":["MIN_SCROLL_SIZE","defaultScrollbarState","size","pos","hover","active","scrollingByMouseDrag","scrollState","scrollSizeParametersNames","x","offset","coord","clientSize","customScrollPos","customScrollSize","y"],"mappings":";;AAEA,OAAO,IAAMA,eAAe,GAAG,EAAxB;;AAEP,OAAO,IAAMC,qBAAqC,GAAG;AACnDC,EAAAA,IAAI,EAAE,CAD6C;AAEnDC,EAAAA,GAAG,EAAE,CAF8C;AAGnD;AACAC,EAAAA,KAAK,EAAE,KAJ4C;AAKnDC,EAAAA,MAAM,EAAE,KAL2C;AAMnD;AACAC,EAAAA,oBAAoB,EAAE,KAP6B;AAQnDC,EAAAA,WAAW,EAAE,OARsC,EAA9C;;;AAWP,OAAO,IAAMC,yBAAyB,GAAG;AACvCC,EAAAA,CAAC,EAAE;AACDC,IAAAA,MAAM,EAAE,aADP;AAEDR,IAAAA,IAAI,EAAE,aAFL;AAGDC,IAAAA,GAAG,EAAE,YAHJ;AAIDQ,IAAAA,KAAK,EAAE,SAJN;AAKDC,IAAAA,UAAU,EAAE,aALX;AAMDC,IAAAA,eAAe,EAAE,MANhB;AAODC,IAAAA,gBAAgB,EAAE,OAPjB,EADoC;;AAUvCC,EAAAA,CAAC,EAAE;AACDL,IAAAA,MAAM,EAAE,cADP;AAEDR,IAAAA,IAAI,EAAE,cAFL;AAGDC,IAAAA,GAAG,EAAE,WAHJ;AAIDQ,IAAAA,KAAK,EAAE,SAJN;AAKDC,IAAAA,UAAU,EAAE,cALX;AAMDC,IAAAA,eAAe,EAAE,KANhB;AAODC,IAAAA,gBAAgB,EAAE,QAPjB,EAVoC,EAAlC","sourcesContent":["import { ScrollBarState } from './ScrollBar';\n\nexport const MIN_SCROLL_SIZE = 20;\n\nexport const defaultScrollbarState: ScrollBarState = {\n size: 0,\n pos: 0,\n // Mouse is moving where big scrollbar can be located.\n hover: false,\n active: false,\n // True when scroll is following mouse (mouse down on scroll).\n scrollingByMouseDrag: false,\n scrollState: 'begin',\n};\n\nexport const scrollSizeParametersNames = {\n x: {\n offset: 'offsetWidth',\n size: 'scrollWidth',\n pos: 'scrollLeft',\n coord: 'clientX',\n clientSize: 'clientWidth',\n customScrollPos: 'left',\n customScrollSize: 'width',\n },\n y: {\n offset: 'offsetHeight',\n size: 'scrollHeight',\n pos: 'scrollTop',\n coord: 'clientY',\n clientSize: 'clientHeight',\n customScrollPos: 'top',\n customScrollSize: 'height',\n },\n} as const;\n"]}
|