@skbkontur/react-ui 4.0.0-beta.4 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +94 -0
- package/cjs/components/Autocomplete/Autocomplete.d.ts +125 -125
- package/cjs/components/Autocomplete/Autocomplete.styles.d.ts +4 -4
- package/cjs/components/Autocomplete/index.d.ts +1 -1
- package/cjs/components/Button/Button.d.ts +162 -162
- package/cjs/components/Button/Button.mixins.d.ts +6 -6
- package/cjs/components/Button/Button.styles.d.ts +72 -72
- package/cjs/components/Button/Corners.d.ts +6 -6
- package/cjs/components/Button/index.d.ts +1 -1
- package/cjs/components/Center/Center.d.ts +25 -25
- package/cjs/components/Center/Center.styles.d.ts +7 -7
- package/cjs/components/Center/index.d.ts +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +96 -96
- package/cjs/components/Checkbox/Checkbox.styles.d.ts +23 -23
- package/cjs/components/Checkbox/index.d.ts +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +184 -184
- package/cjs/components/ComboBox/index.d.ts +1 -1
- package/cjs/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +106 -106
- package/cjs/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
- package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
- package/cjs/components/CurrencyInput/CursorHelper.d.ts +10 -10
- package/cjs/components/CurrencyInput/SelectionHelper.d.ts +11 -11
- package/cjs/components/CurrencyInput/constants.d.ts +2 -2
- package/cjs/components/CurrencyInput/index.d.ts +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
- package/cjs/components/CurrencyLabel/index.d.ts +1 -1
- package/cjs/components/DateInput/DateFragmentsView.d.ts +20 -20
- package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
- package/cjs/components/DateInput/DateInput.d.ts +107 -107
- package/cjs/components/DateInput/DateInput.styles.d.ts +10 -10
- package/cjs/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
- package/cjs/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
- package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
- package/cjs/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
- package/cjs/components/DateInput/helpers/inputNumber.d.ts +5 -5
- package/cjs/components/DateInput/index.d.ts +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +131 -134
- package/cjs/components/DatePicker/DatePicker.js +14 -9
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.styles.d.ts +3 -3
- package/cjs/components/DatePicker/DatePickerHelpers.d.ts +2 -2
- package/cjs/components/DatePicker/Picker.d.ts +33 -33
- package/cjs/components/DatePicker/Picker.styles.d.ts +5 -5
- package/cjs/components/DatePicker/index.d.ts +1 -1
- package/cjs/components/DatePicker/locale/index.d.ts +4 -4
- package/cjs/components/DatePicker/locale/locales/en.d.ts +2 -2
- package/cjs/components/DatePicker/locale/locales/ru.d.ts +2 -2
- package/cjs/components/DatePicker/locale/types.d.ts +5 -5
- package/cjs/components/Dropdown/Dropdown.d.ts +124 -124
- package/cjs/components/Dropdown/index.d.ts +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +65 -65
- package/cjs/components/DropdownMenu/index.d.ts +1 -1
- package/cjs/components/FileUploader/FileUploader.d.ts +42 -42
- package/cjs/components/FileUploader/FileUploader.styles.d.ts +21 -21
- package/cjs/components/FileUploader/index.d.ts +5 -4
- package/cjs/components/FileUploader/index.js +2 -1
- package/cjs/components/FileUploader/index.js.map +1 -1
- package/cjs/components/FileUploader/locale/index.d.ts +4 -4
- package/cjs/components/FileUploader/locale/locales/en.d.ts +2 -2
- package/cjs/components/FileUploader/locale/locales/ru.d.ts +2 -2
- package/cjs/components/FileUploader/locale/types.d.ts +6 -6
- package/cjs/components/FxInput/FxInput.d.ts +50 -50
- package/cjs/components/FxInput/index.d.ts +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +57 -57
- package/cjs/components/Gapped/index.d.ts +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +110 -102
- package/cjs/components/GlobalLoader/GlobalLoader.js +26 -17
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.md +22 -16
- package/cjs/components/GlobalLoader/GlobalLoaderView.d.ts +13 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.js +73 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.d.ts +16 -13
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js +70 -8
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -1
- package/cjs/components/GlobalLoader/index.d.ts +1 -1
- package/cjs/components/GlobalLoader/useParams.d.ts +22 -0
- package/cjs/components/GlobalLoader/useParams.js +45 -0
- package/cjs/components/GlobalLoader/useParams.js.map +1 -0
- package/cjs/components/Group/Group.d.ts +14 -14
- package/cjs/components/Group/Group.styles.d.ts +8 -8
- package/cjs/components/Group/index.d.ts +1 -1
- package/cjs/components/Hint/Hint.d.ts +84 -84
- package/cjs/components/Hint/Hint.styles.d.ts +6 -6
- package/cjs/components/Hint/index.d.ts +1 -1
- package/cjs/components/Input/Input.d.ts +157 -157
- package/cjs/components/Input/Input.styles.d.ts +42 -42
- package/cjs/components/Input/index.d.ts +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +71 -71
- package/cjs/components/Kebab/Kebab.styles.d.ts +12 -12
- package/cjs/components/Kebab/index.d.ts +1 -1
- package/cjs/components/Link/Link.d.ts +72 -72
- package/cjs/components/Link/Link.mixins.d.ts +3 -3
- package/cjs/components/Link/Link.styles.d.ts +15 -15
- package/cjs/components/Link/index.d.ts +1 -1
- package/cjs/components/Loader/Loader.d.ts +100 -100
- package/cjs/components/Loader/Loader.styles.d.ts +8 -8
- package/cjs/components/Loader/index.d.ts +1 -1
- package/cjs/components/MenuHeader/MenuHeader.d.ts +20 -20
- package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
- package/cjs/components/MenuHeader/index.d.ts +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +95 -95
- package/cjs/components/MenuItem/MenuItem.styles.d.ts +14 -14
- package/cjs/components/MenuItem/index.d.ts +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.d.ts +12 -12
- package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
- package/cjs/components/MenuSeparator/index.d.ts +1 -1
- package/cjs/components/Modal/Modal.d.ts +88 -88
- package/cjs/components/Modal/Modal.js +2 -2
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +40 -40
- package/cjs/components/Modal/ModalBody.d.ts +23 -23
- package/cjs/components/Modal/ModalClose.d.ts +2 -2
- package/cjs/components/Modal/ModalContext.d.ts +16 -16
- package/cjs/components/Modal/ModalFooter.d.ts +21 -21
- package/cjs/components/Modal/ModalFooter.js +1 -0
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +17 -17
- package/cjs/components/Modal/ModalHeader.js +1 -0
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/index.d.ts +4 -4
- package/cjs/components/Paging/NavigationHelper.d.ts +7 -7
- package/cjs/components/Paging/Paging.d.ts +90 -90
- package/cjs/components/Paging/Paging.styles.d.ts +16 -16
- package/cjs/components/Paging/PagingHelper.d.ts +2 -2
- package/cjs/components/Paging/index.d.ts +1 -1
- package/cjs/components/Paging/locale/index.d.ts +4 -4
- package/cjs/components/Paging/locale/locales/en.d.ts +2 -2
- package/cjs/components/Paging/locale/locales/ru.d.ts +2 -2
- package/cjs/components/Paging/locale/types.d.ts +3 -3
- package/cjs/components/PasswordInput/PasswordInput.d.ts +49 -49
- package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
- package/cjs/components/PasswordInput/index.d.ts +1 -1
- package/cjs/components/Radio/Radio.d.ts +77 -77
- package/cjs/components/Radio/Radio.styles.d.ts +21 -21
- package/cjs/components/Radio/index.d.ts +1 -1
- package/cjs/components/RadioGroup/Prevent.d.ts +8 -8
- package/cjs/components/RadioGroup/RadioGroup.d.ts +117 -117
- package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
- package/cjs/components/RadioGroup/RadioGroupContext.d.ts +10 -10
- package/cjs/components/RadioGroup/index.d.ts +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +11 -11
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +11 -11
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +11 -3
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
- package/cjs/components/ResponsiveLayout/decorator.d.ts +33 -33
- package/cjs/components/ResponsiveLayout/index.d.ts +3 -3
- package/cjs/components/ResponsiveLayout/types.d.ts +3 -3
- package/cjs/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
- package/cjs/components/ScrollContainer/ScrollBar.d.ts +37 -37
- package/cjs/components/ScrollContainer/ScrollBar.js +4 -2
- package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +88 -88
- package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
- package/cjs/components/ScrollContainer/ScrollContainer.js +2 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +17 -16
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js +12 -8
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/cjs/components/ScrollContainer/index.d.ts +1 -1
- package/cjs/components/Select/Item.d.ts +7 -7
- package/cjs/components/Select/Select.d.ts +189 -189
- package/cjs/components/Select/Select.js +4 -1
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.styles.d.ts +18 -18
- package/cjs/components/Select/index.d.ts +1 -1
- package/cjs/components/Select/locale/index.d.ts +4 -4
- package/cjs/components/Select/locale/locales/en.d.ts +2 -2
- package/cjs/components/Select/locale/locales/ru.d.ts +2 -2
- package/cjs/components/Select/locale/types.d.ts +4 -4
- package/cjs/components/Select/selectTheme.d.ts +3 -3
- package/cjs/components/SidePage/SidePage.d.ts +109 -105
- package/cjs/components/SidePage/SidePage.js +31 -9
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +48 -48
- package/cjs/components/SidePage/SidePageBody.d.ts +20 -20
- package/cjs/components/SidePage/SidePageContainer.d.ts +16 -16
- package/cjs/components/SidePage/SidePageContext.d.ts +17 -15
- package/cjs/components/SidePage/SidePageContext.js +3 -0
- package/cjs/components/SidePage/SidePageContext.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +39 -39
- package/cjs/components/SidePage/SidePageHeader.d.ts +44 -41
- package/cjs/components/SidePage/SidePageHeader.js +36 -26
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SidePage/index.d.ts +5 -5
- package/cjs/components/Spinner/Spinner.d.ts +57 -57
- package/cjs/components/Spinner/Spinner.styles.d.ts +13 -13
- package/cjs/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
- package/cjs/components/Spinner/index.d.ts +1 -1
- package/cjs/components/Spinner/locale/index.d.ts +4 -4
- package/cjs/components/Spinner/locale/locales/en.d.ts +2 -2
- package/cjs/components/Spinner/locale/locales/ru.d.ts +2 -2
- package/cjs/components/Spinner/locale/types.d.ts +4 -4
- package/cjs/components/Sticky/Sticky.d.ts +59 -54
- package/cjs/components/Sticky/Sticky.js +5 -0
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Sticky/Sticky.styles.d.ts +7 -7
- package/cjs/components/Sticky/index.d.ts +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +56 -56
- package/cjs/components/Switcher/Switcher.styles.d.ts +11 -11
- package/cjs/components/Switcher/index.d.ts +1 -1
- package/cjs/components/Switcher/switcherTheme.d.ts +2 -2
- package/cjs/components/Tabs/Indicator.d.ts +28 -28
- package/cjs/components/Tabs/Indicator.styles.d.ts +8 -8
- package/cjs/components/Tabs/Tab.d.ts +121 -121
- package/cjs/components/Tabs/Tab.styles.d.ts +27 -27
- package/cjs/components/Tabs/Tabs.d.ts +62 -62
- package/cjs/components/Tabs/Tabs.styles.d.ts +5 -5
- package/cjs/components/Tabs/TabsContext.d.ts +14 -14
- package/cjs/components/Tabs/index.d.ts +2 -2
- package/cjs/components/Textarea/Textarea.d.ts +185 -185
- package/cjs/components/Textarea/Textarea.styles.d.ts +15 -15
- package/cjs/components/Textarea/TextareaCounter.d.ts +13 -13
- package/cjs/components/Textarea/TextareaCounter.js +3 -4
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Textarea/TextareaHelpers.d.ts +11 -11
- package/cjs/components/Textarea/index.d.ts +1 -1
- package/cjs/components/Toast/Toast.d.ts +58 -58
- package/cjs/components/Toast/Toast.styles.d.ts +6 -6
- package/cjs/components/Toast/ToastStatic.d.ts +8 -8
- package/cjs/components/Toast/ToastView.d.ts +38 -38
- package/cjs/components/Toast/ToastView.styles.d.ts +8 -8
- package/cjs/components/Toast/index.d.ts +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +107 -107
- package/cjs/components/Toggle/Toggle.styles.d.ts +30 -30
- package/cjs/components/Toggle/index.d.ts +1 -1
- package/cjs/components/Token/Token.d.ts +36 -36
- package/cjs/components/Token/Token.styles.d.ts +29 -29
- package/cjs/components/Token/index.d.ts +1 -1
- package/cjs/components/TokenInput/TextWidthHelper.d.ts +18 -18
- package/cjs/components/TokenInput/TokenInput.d.ts +194 -194
- package/cjs/components/TokenInput/TokenInput.styles.d.ts +15 -15
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +18 -18
- package/cjs/components/TokenInput/TokenInputReducer.d.ts +25 -25
- package/cjs/components/TokenInput/index.d.ts +1 -1
- package/cjs/components/TokenInput/locale/index.d.ts +4 -4
- package/cjs/components/TokenInput/locale/locales/en.d.ts +2 -2
- package/cjs/components/TokenInput/locale/locales/ru.d.ts +2 -2
- package/cjs/components/TokenInput/locale/types.d.ts +4 -4
- package/cjs/components/Tooltip/Tooltip.d.ts +162 -162
- package/cjs/components/Tooltip/Tooltip.styles.d.ts +5 -5
- package/cjs/components/Tooltip/index.d.ts +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +65 -65
- package/cjs/components/TooltipMenu/index.d.ts +1 -1
- package/cjs/hooks/useDrop.d.ts +11 -11
- package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -2
- package/cjs/hooks/useMemoObject.d.ts +1 -1
- package/cjs/index.d.ts +52 -51
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/BGRuler.d.ts +30 -30
- package/cjs/internal/Calendar/Calendar.d.ts +66 -66
- package/cjs/internal/Calendar/Calendar.styles.d.ts +5 -5
- package/cjs/internal/Calendar/CalendarDateShape.d.ts +14 -14
- package/cjs/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
- package/cjs/internal/Calendar/CalendarUtils.d.ts +19 -19
- package/cjs/internal/Calendar/DayCellView.d.ts +13 -13
- package/cjs/internal/Calendar/DayCellView.styles.d.ts +7 -7
- package/cjs/internal/Calendar/DayCellViewModel.d.ts +8 -8
- package/cjs/internal/Calendar/Month.d.ts +33 -33
- package/cjs/internal/Calendar/MonthView.d.ts +21 -21
- package/cjs/internal/Calendar/MonthView.styles.d.ts +10 -10
- package/cjs/internal/Calendar/MonthViewModel.d.ts +14 -14
- package/cjs/internal/Calendar/config.d.ts +9 -9
- package/cjs/internal/Calendar/index.d.ts +2 -2
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +31 -31
- package/cjs/internal/CommonWrapper/index.d.ts +1 -1
- package/cjs/internal/ComponentCombinator.d.ts +25 -25
- package/cjs/internal/ComponentTable.d.ts +21 -21
- package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +32 -32
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +102 -102
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +137 -137
- package/cjs/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
- package/cjs/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
- package/cjs/internal/CustomComboBox/index.d.ts +2 -2
- package/cjs/internal/CustomComboBox/locale/index.d.ts +4 -4
- package/cjs/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
- package/cjs/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
- package/cjs/internal/CustomComboBox/locale/types.d.ts +5 -5
- package/cjs/internal/DateSelect/DateSelect.d.ts +93 -93
- package/cjs/internal/DateSelect/DateSelect.styles.d.ts +19 -19
- package/cjs/internal/DateSelect/index.d.ts +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +44 -43
- package/cjs/internal/DropdownContainer/DropdownContainer.js +23 -8
- package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -0
- package/cjs/internal/DropdownContainer/DropdownContainer.styles.js +9 -0
- package/cjs/internal/DropdownContainer/DropdownContainer.styles.js.map +1 -0
- package/cjs/internal/DropdownContainer/index.d.ts +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -12
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -14
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +12 -12
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -11
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +10 -10
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +5 -5
- package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -7
- package/cjs/internal/FileUploaderControl/fileUtils.d.ts +14 -14
- package/cjs/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -1
- package/cjs/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -3
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -3
- package/cjs/internal/FocusTrap/FocusTrap.d.ts +17 -17
- package/cjs/internal/FocusTrap/index.d.ts +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
- package/cjs/internal/HideBodyVerticalScroll/index.d.ts +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
- package/cjs/internal/IgnoreLayerClick/index.d.ts +1 -1
- package/cjs/internal/InputLikeText/HiddenInput.d.ts +13 -13
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +73 -73
- package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
- package/cjs/internal/InputLikeText/index.d.ts +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.d.ts +68 -68
- package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
- package/cjs/internal/InternalMenu/index.d.ts +1 -1
- package/cjs/internal/InternalMenu/isActiveElement.d.ts +3 -3
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
- package/cjs/internal/MaskCharLowLine/index.d.ts +1 -1
- package/cjs/internal/MaskedInput/MaskedInput.d.ts +40 -40
- package/cjs/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
- package/cjs/internal/MaskedInput/index.d.ts +1 -1
- package/cjs/internal/Menu/Menu.d.ts +70 -68
- package/cjs/internal/Menu/Menu.js +33 -3
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/Menu.styles.d.ts +9 -6
- package/cjs/internal/Menu/Menu.styles.js +23 -3
- package/cjs/internal/Menu/Menu.styles.js.map +1 -1
- package/cjs/internal/Menu/index.d.ts +1 -1
- package/cjs/internal/Menu/isActiveElement.d.ts +3 -3
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +34 -34
- package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +10 -10
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +15 -15
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +10 -10
- package/cjs/internal/MobilePopup/MobilePopupHeader/index.d.ts +1 -1
- package/cjs/internal/MobilePopup/index.d.ts +1 -1
- package/cjs/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
- package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
- package/cjs/internal/NativeDateInput/index.d.ts +1 -1
- package/cjs/internal/NativeDateInput/utils.d.ts +7 -7
- package/cjs/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
- package/cjs/internal/Popup/Popup.d.ts +167 -167
- package/cjs/internal/Popup/Popup.js +3 -1
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/Popup.styles.d.ts +16 -16
- package/cjs/internal/Popup/PopupHelper.d.ts +26 -26
- package/cjs/internal/Popup/PopupPin.d.ts +56 -56
- package/cjs/internal/Popup/PopupPin.styles.d.ts +3 -3
- package/cjs/internal/Popup/index.d.ts +1 -1
- package/cjs/internal/Popup/types.d.ts +2 -1
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +86 -86
- package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
- package/cjs/internal/PopupMenu/index.d.ts +1 -1
- package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
- package/cjs/internal/RenderContainer/RenderContainer.d.ts +16 -16
- package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +11 -11
- package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +13 -13
- package/cjs/internal/RenderContainer/index.d.ts +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +29 -29
- package/cjs/internal/RenderLayer/index.d.ts +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +13 -13
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +6 -6
- package/cjs/internal/ResizeDetector/index.d.ts +1 -1
- package/cjs/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -15
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -4
- package/cjs/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
- package/cjs/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
- package/cjs/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
- package/cjs/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
- package/cjs/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
- package/cjs/internal/ThemePlayground/HintPlayground.d.ts +6 -6
- package/cjs/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
- package/cjs/internal/ThemePlayground/Playground.d.ts +30 -30
- package/cjs/internal/ThemePlayground/Playground.styles.d.ts +23 -23
- package/cjs/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
- package/cjs/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
- package/cjs/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
- package/cjs/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +49 -49
- package/cjs/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
- package/cjs/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
- package/cjs/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
- package/cjs/internal/ThemePlayground/VariableValue.d.ts +45 -45
- package/cjs/internal/ThemePlayground/constants.d.ts +17 -17
- package/cjs/internal/ThemePlayground/darkTheme.d.ts +269 -269
- package/cjs/internal/ThemePlayground/helpers.d.ts +2 -2
- package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js +29 -29
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +27 -27
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
- package/cjs/internal/ThemeShowcase/VariablesCollector.js +14 -9
- package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +36 -36
- package/cjs/internal/ZIndex/ZIndexStorage.d.ts +20 -20
- package/cjs/internal/ZIndex/index.d.ts +1 -1
- package/cjs/internal/icons/16px/icon.styles.d.ts +4 -4
- package/cjs/internal/icons/16px/index.d.ts +25 -25
- package/cjs/internal/icons/20px/Icon.d.ts +30 -30
- package/cjs/internal/icons/20px/icon.styles.d.ts +4 -4
- package/cjs/internal/icons/20px/index.d.ts +2 -2
- package/cjs/internal/icons/20px/svg.d.ts +14 -14
- package/cjs/internal/icons/CloudIcon.d.ts +1 -1
- package/cjs/internal/icons/CrossIcon.d.ts +1 -1
- package/cjs/internal/icons/SpinnerIcon.d.ts +27 -27
- package/cjs/internal/icons/SpinnerIcon.js +2 -2
- package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.styles.d.ts +6 -6
- package/cjs/internal/themes/DarkTheme.d.ts +137 -137
- package/cjs/internal/themes/DefaultTheme.d.ts +857 -855
- package/cjs/internal/themes/DefaultTheme.js +3 -1
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/NotFlat.d.ts +127 -127
- package/cjs/internal/themes/OldColors.d.ts +116 -116
- package/cjs/lib/ConditionalHandler.d.ts +11 -11
- package/cjs/lib/LayoutEvents.d.ts +4 -4
- package/cjs/lib/ModalStack.d.ts +14 -14
- package/cjs/lib/SSRSafe.d.ts +4 -4
- package/cjs/lib/Supports.d.ts +1 -1
- package/cjs/lib/Upgrades.d.ts +6 -6
- package/cjs/lib/animation/index.d.ts +6 -6
- package/cjs/lib/animation/presets.d.ts +18 -18
- package/cjs/lib/animation/stepper.d.ts +1 -1
- package/cjs/lib/callChildRef/callChildRef.d.ts +3 -3
- package/cjs/lib/client.d.ts +16 -16
- package/cjs/lib/createPropsGetter.d.ts +2 -2
- package/cjs/lib/currentEnvironment.d.ts +3 -3
- package/cjs/lib/date/InternalDate.d.ts +58 -58
- package/cjs/lib/date/InternalDateCalculator.d.ts +6 -6
- package/cjs/lib/date/InternalDateGetter.d.ts +15 -15
- package/cjs/lib/date/InternalDateSetter.d.ts +6 -6
- package/cjs/lib/date/InternalDateTransformer.d.ts +12 -12
- package/cjs/lib/date/InternalDateValidator.d.ts +12 -12
- package/cjs/lib/date/constants.d.ts +28 -28
- package/cjs/lib/date/localeSets.d.ts +5 -5
- package/cjs/lib/date/types.d.ts +90 -90
- package/cjs/lib/dom/getDOMRect.d.ts +8 -0
- package/cjs/lib/dom/getDOMRect.js +24 -0
- package/cjs/lib/dom/getDOMRect.js.map +1 -0
- package/cjs/lib/dom/getScrollWidth.d.ts +1 -1
- package/cjs/lib/dom/tabbableHelpers.d.ts +16 -16
- package/cjs/lib/events/MouseDrag.d.ts +58 -58
- package/cjs/lib/events/fixClickFocusIE.d.ts +1 -1
- package/cjs/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
- package/cjs/lib/events/keyListener.d.ts +7 -7
- package/cjs/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
- package/cjs/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
- package/cjs/lib/events/keyboard/extractCode.d.ts +3 -3
- package/cjs/lib/events/keyboard/identifiers.d.ts +48 -48
- package/cjs/lib/events/stopPropagation.d.ts +1 -1
- package/cjs/lib/events/tabListener.d.ts +1 -1
- package/cjs/lib/extractKeyboardAction.d.ts +13 -13
- package/cjs/lib/filterProps.d.ts +12 -12
- package/cjs/lib/forwardRefAndName.d.ts +5 -5
- package/cjs/lib/getDisplayName.d.ts +3 -3
- package/cjs/lib/listenFocusOutside.d.ts +8 -8
- package/cjs/lib/locale/LocaleContext.d.ts +7 -7
- package/cjs/lib/locale/LocaleHelper.d.ts +9 -9
- package/cjs/lib/locale/constants.d.ts +2 -2
- package/cjs/lib/locale/decorators.d.ts +36 -36
- package/cjs/lib/locale/index.d.ts +3 -3
- package/cjs/lib/locale/types.d.ts +21 -21
- package/cjs/lib/locale/useLocaleForControl.d.ts +3 -3
- package/cjs/lib/memo.d.ts +1 -1
- package/cjs/lib/net/fetch.d.ts +13 -13
- package/cjs/lib/polyfillPlaceholder.d.ts +1 -1
- package/cjs/lib/reactGetTextContent.d.ts +2 -2
- package/cjs/lib/rootNode/getRootNode.d.ts +3 -3
- package/cjs/lib/rootNode/index.d.ts +2 -2
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +33 -33
- package/cjs/lib/stringUtils.d.ts +1 -1
- package/cjs/lib/styles/ColorFactory.d.ts +11 -11
- package/cjs/lib/styles/ColorFunctions.d.ts +11 -11
- package/cjs/lib/styles/ColorHelpers.d.ts +20 -20
- package/cjs/lib/styles/ColorKeywords.d.ts +150 -150
- package/cjs/lib/styles/ColorObject.d.ts +52 -52
- package/cjs/lib/styles/DimensionFunctions.d.ts +1 -1
- package/cjs/lib/styles/HoldSelectionColor.d.ts +1 -1
- package/cjs/lib/styles/Mixins.d.ts +2 -2
- package/cjs/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
- package/cjs/lib/theming/AnimationKeyframes.d.ts +9 -9
- package/cjs/lib/theming/Emotion.d.ts +15 -15
- package/cjs/lib/theming/Theme.d.ts +3 -3
- package/cjs/lib/theming/ThemeContext.d.ts +2 -2
- package/cjs/lib/theming/ThemeFactory.d.ts +7 -7
- package/cjs/lib/theming/ThemeHelpers.d.ts +5 -5
- package/cjs/lib/theming/themes/DarkTheme.d.ts +1 -1
- package/cjs/lib/theming/themes/DefaultTheme.d.ts +1 -1
- package/cjs/lib/theming/themes/DefaultTheme8pxOld.d.ts +1 -1
- package/cjs/lib/theming/themes/DefaultThemeMobile.d.ts +3 -3
- package/cjs/lib/theming/themes/FlatTheme8pxOld.d.ts +1 -1
- package/cjs/lib/theming/useTheme.d.ts +1 -1
- package/cjs/lib/uidUtils.d.ts +1 -1
- package/cjs/lib/utils.d.ts +64 -64
- package/cjs/lib/withClassWrapper.d.ts +71 -71
- package/components/Autocomplete/Autocomplete.d.ts +125 -125
- package/components/Autocomplete/Autocomplete.styles.d.ts +4 -4
- package/components/Autocomplete/index.d.ts +1 -1
- package/components/Button/Button.d.ts +162 -162
- package/components/Button/Button.mixins.d.ts +6 -6
- package/components/Button/Button.styles.d.ts +72 -72
- package/components/Button/Corners.d.ts +6 -6
- package/components/Button/index.d.ts +1 -1
- package/components/Center/Center.d.ts +25 -25
- package/components/Center/Center.styles.d.ts +7 -7
- package/components/Center/index.d.ts +1 -1
- package/components/Checkbox/Checkbox.d.ts +96 -96
- package/components/Checkbox/Checkbox.styles.d.ts +23 -23
- package/components/Checkbox/index.d.ts +1 -1
- package/components/ComboBox/ComboBox.d.ts +184 -184
- package/components/ComboBox/index.d.ts +1 -1
- package/components/CurrencyInput/CurrencyHelper.d.ts +35 -35
- package/components/CurrencyInput/CurrencyInput.d.ts +106 -106
- package/components/CurrencyInput/CurrencyInputHelper.d.ts +20 -20
- package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +18 -18
- package/components/CurrencyInput/CursorHelper.d.ts +10 -10
- package/components/CurrencyInput/SelectionHelper.d.ts +11 -11
- package/components/CurrencyInput/constants.d.ts +2 -2
- package/components/CurrencyInput/index.d.ts +1 -1
- package/components/CurrencyLabel/CurrencyLabel.d.ts +24 -24
- package/components/CurrencyLabel/index.d.ts +1 -1
- package/components/DateInput/DateFragmentsView.d.ts +20 -20
- package/components/DateInput/DateFragmentsView.styles.d.ts +7 -7
- package/components/DateInput/DateInput.d.ts +107 -107
- package/components/DateInput/DateInput.styles.d.ts +10 -10
- package/components/DateInput/ViewDateInputValidateChecks.d.ts +10 -10
- package/components/DateInput/helpers/DateInputKeyboardActions.d.ts +21 -21
- package/components/DateInput/helpers/InternalDateMediator.d.ts +26 -26
- package/components/DateInput/helpers/SelectionHelpers.d.ts +2 -2
- package/components/DateInput/helpers/inputNumber.d.ts +5 -5
- package/components/DateInput/index.d.ts +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +19 -15
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +131 -134
- package/components/DatePicker/DatePicker.styles.d.ts +3 -3
- package/components/DatePicker/DatePickerHelpers.d.ts +2 -2
- package/components/DatePicker/Picker.d.ts +33 -33
- package/components/DatePicker/Picker.styles.d.ts +5 -5
- package/components/DatePicker/index.d.ts +1 -1
- package/components/DatePicker/locale/index.d.ts +4 -4
- package/components/DatePicker/locale/locales/en.d.ts +2 -2
- package/components/DatePicker/locale/locales/ru.d.ts +2 -2
- package/components/DatePicker/locale/types.d.ts +5 -5
- package/components/Dropdown/Dropdown.d.ts +124 -124
- package/components/Dropdown/index.d.ts +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +65 -65
- package/components/DropdownMenu/index.d.ts +1 -1
- package/components/FileUploader/FileUploader.d.ts +42 -42
- package/components/FileUploader/FileUploader.styles.d.ts +21 -21
- package/components/FileUploader/index/index.js.map +1 -1
- package/components/FileUploader/index.d.ts +5 -4
- package/components/FileUploader/locale/index.d.ts +4 -4
- package/components/FileUploader/locale/locales/en.d.ts +2 -2
- package/components/FileUploader/locale/locales/ru.d.ts +2 -2
- package/components/FileUploader/locale/types.d.ts +6 -6
- package/components/FxInput/FxInput.d.ts +50 -50
- package/components/FxInput/index.d.ts +1 -1
- package/components/Gapped/Gapped.d.ts +57 -57
- package/components/Gapped/index.d.ts +1 -1
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +43 -46
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +110 -102
- package/components/GlobalLoader/GlobalLoader.md +22 -16
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +73 -0
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -0
- package/components/GlobalLoader/GlobalLoaderView/package.json +6 -0
- package/components/GlobalLoader/GlobalLoaderView.d.ts +13 -0
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js +21 -7
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +16 -13
- package/components/GlobalLoader/index.d.ts +1 -1
- package/components/GlobalLoader/useParams/package.json +6 -0
- package/components/GlobalLoader/useParams/useParams.js +51 -0
- package/components/GlobalLoader/useParams/useParams.js.map +1 -0
- package/components/GlobalLoader/useParams.d.ts +22 -0
- package/components/Group/Group.d.ts +14 -14
- package/components/Group/Group.styles.d.ts +8 -8
- package/components/Group/index.d.ts +1 -1
- package/components/Hint/Hint.d.ts +84 -84
- package/components/Hint/Hint.styles.d.ts +6 -6
- package/components/Hint/index.d.ts +1 -1
- package/components/Input/Input.d.ts +157 -157
- package/components/Input/Input.styles.d.ts +42 -42
- package/components/Input/index.d.ts +1 -1
- package/components/Kebab/Kebab.d.ts +71 -71
- package/components/Kebab/Kebab.styles.d.ts +12 -12
- package/components/Kebab/index.d.ts +1 -1
- package/components/Link/Link.d.ts +72 -72
- package/components/Link/Link.mixins.d.ts +3 -3
- package/components/Link/Link.styles.d.ts +15 -15
- package/components/Link/index.d.ts +1 -1
- package/components/Loader/Loader.d.ts +100 -100
- package/components/Loader/Loader.styles.d.ts +8 -8
- package/components/Loader/index.d.ts +1 -1
- package/components/MenuHeader/MenuHeader.d.ts +20 -20
- package/components/MenuHeader/MenuHeader.styles.d.ts +5 -5
- package/components/MenuHeader/index.d.ts +1 -1
- package/components/MenuItem/MenuItem.d.ts +95 -95
- package/components/MenuItem/MenuItem.styles.d.ts +14 -14
- package/components/MenuItem/index.d.ts +1 -1
- package/components/MenuSeparator/MenuSeparator.d.ts +12 -12
- package/components/MenuSeparator/MenuSeparator.styles.d.ts +4 -4
- package/components/MenuSeparator/index.d.ts +1 -1
- package/components/Modal/Modal/Modal.js +1 -1
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +88 -88
- package/components/Modal/Modal.styles.d.ts +40 -40
- package/components/Modal/ModalBody.d.ts +23 -23
- package/components/Modal/ModalClose.d.ts +2 -2
- package/components/Modal/ModalContext.d.ts +16 -16
- package/components/Modal/ModalFooter/ModalFooter.js +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalFooter.d.ts +21 -21
- package/components/Modal/ModalHeader/ModalHeader.js +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +17 -17
- package/components/Modal/index.d.ts +4 -4
- package/components/Paging/NavigationHelper.d.ts +7 -7
- package/components/Paging/Paging.d.ts +90 -90
- package/components/Paging/Paging.styles.d.ts +16 -16
- package/components/Paging/PagingHelper.d.ts +2 -2
- package/components/Paging/index.d.ts +1 -1
- package/components/Paging/locale/index.d.ts +4 -4
- package/components/Paging/locale/locales/en.d.ts +2 -2
- package/components/Paging/locale/locales/ru.d.ts +2 -2
- package/components/Paging/locale/types.d.ts +3 -3
- package/components/PasswordInput/PasswordInput.d.ts +49 -49
- package/components/PasswordInput/PasswordInput.styles.d.ts +10 -10
- package/components/PasswordInput/index.d.ts +1 -1
- package/components/Radio/Radio.d.ts +77 -77
- package/components/Radio/Radio.styles.d.ts +21 -21
- package/components/Radio/index.d.ts +1 -1
- package/components/RadioGroup/Prevent.d.ts +8 -8
- package/components/RadioGroup/RadioGroup.d.ts +117 -117
- package/components/RadioGroup/RadioGroup.styles.d.ts +7 -7
- package/components/RadioGroup/RadioGroupContext.d.ts +10 -10
- package/components/RadioGroup/index.d.ts +1 -1
- package/components/ResponsiveLayout/ResponsiveLayout.d.ts +11 -11
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +12 -4
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayoutEvents.d.ts +11 -11
- package/components/ResponsiveLayout/decorator.d.ts +33 -33
- package/components/ResponsiveLayout/index.d.ts +3 -3
- package/components/ResponsiveLayout/types.d.ts +3 -3
- package/components/ResponsiveLayout/useResponsiveLayout.d.ts +2 -2
- package/components/ScrollContainer/ScrollBar/ScrollBar.js +6 -2
- package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +37 -37
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +2 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.constants.d.ts +23 -23
- package/components/ScrollContainer/ScrollContainer.d.ts +88 -88
- package/components/ScrollContainer/ScrollContainer.helpers.d.ts +10 -10
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +11 -8
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +17 -16
- package/components/ScrollContainer/index.d.ts +1 -1
- package/components/Select/Item.d.ts +7 -7
- package/components/Select/Select/Select.js +5 -2
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +189 -189
- package/components/Select/Select.styles.d.ts +18 -18
- package/components/Select/index.d.ts +1 -1
- package/components/Select/locale/index.d.ts +4 -4
- package/components/Select/locale/locales/en.d.ts +2 -2
- package/components/Select/locale/locales/ru.d.ts +2 -2
- package/components/Select/locale/types.d.ts +4 -4
- package/components/Select/selectTheme.d.ts +3 -3
- package/components/SidePage/SidePage/SidePage.js +37 -11
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +109 -105
- package/components/SidePage/SidePage.styles.d.ts +48 -48
- package/components/SidePage/SidePageBody.d.ts +20 -20
- package/components/SidePage/SidePageContainer.d.ts +16 -16
- package/components/SidePage/SidePageContext/SidePageContext.js +3 -0
- package/components/SidePage/SidePageContext/SidePageContext.js.map +1 -1
- package/components/SidePage/SidePageContext.d.ts +17 -15
- package/components/SidePage/SidePageFooter.d.ts +39 -39
- package/components/SidePage/SidePageHeader/SidePageHeader.js +26 -13
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +44 -41
- package/components/SidePage/index.d.ts +5 -5
- package/components/Spinner/Spinner.d.ts +57 -57
- package/components/Spinner/Spinner.styles.d.ts +13 -13
- package/components/Spinner/SpinnerFallbackAnimation.d.ts +25 -25
- package/components/Spinner/index.d.ts +1 -1
- package/components/Spinner/locale/index.d.ts +4 -4
- package/components/Spinner/locale/locales/en.d.ts +2 -2
- package/components/Spinner/locale/locales/ru.d.ts +2 -2
- package/components/Spinner/locale/types.d.ts +4 -4
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +59 -54
- package/components/Sticky/Sticky.styles.d.ts +7 -7
- package/components/Sticky/index.d.ts +1 -1
- package/components/Switcher/Switcher.d.ts +56 -56
- package/components/Switcher/Switcher.styles.d.ts +11 -11
- package/components/Switcher/index.d.ts +1 -1
- package/components/Switcher/switcherTheme.d.ts +2 -2
- package/components/Tabs/Indicator.d.ts +28 -28
- package/components/Tabs/Indicator.styles.d.ts +8 -8
- package/components/Tabs/Tab.d.ts +121 -121
- package/components/Tabs/Tab.styles.d.ts +27 -27
- package/components/Tabs/Tabs.d.ts +62 -62
- package/components/Tabs/Tabs.styles.d.ts +5 -5
- package/components/Tabs/TabsContext.d.ts +14 -14
- package/components/Tabs/index.d.ts +2 -2
- package/components/Textarea/Textarea.d.ts +185 -185
- package/components/Textarea/Textarea.styles.d.ts +15 -15
- package/components/Textarea/TextareaCounter/TextareaCounter.js +4 -6
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Textarea/TextareaCounter.d.ts +13 -13
- package/components/Textarea/TextareaHelpers.d.ts +11 -11
- package/components/Textarea/index.d.ts +1 -1
- package/components/Toast/Toast.d.ts +58 -58
- package/components/Toast/Toast.styles.d.ts +6 -6
- package/components/Toast/ToastStatic.d.ts +8 -8
- package/components/Toast/ToastView.d.ts +38 -38
- package/components/Toast/ToastView.styles.d.ts +8 -8
- package/components/Toast/index.d.ts +1 -1
- package/components/Toggle/Toggle.d.ts +107 -107
- package/components/Toggle/Toggle.styles.d.ts +30 -30
- package/components/Toggle/index.d.ts +1 -1
- package/components/Token/Token.d.ts +36 -36
- package/components/Token/Token.styles.d.ts +29 -29
- package/components/Token/index.d.ts +1 -1
- package/components/TokenInput/TextWidthHelper.d.ts +18 -18
- package/components/TokenInput/TokenInput.d.ts +194 -194
- package/components/TokenInput/TokenInput.styles.d.ts +15 -15
- package/components/TokenInput/TokenInputMenu.d.ts +18 -18
- package/components/TokenInput/TokenInputReducer.d.ts +25 -25
- package/components/TokenInput/index.d.ts +1 -1
- package/components/TokenInput/locale/index.d.ts +4 -4
- package/components/TokenInput/locale/locales/en.d.ts +2 -2
- package/components/TokenInput/locale/locales/ru.d.ts +2 -2
- package/components/TokenInput/locale/types.d.ts +4 -4
- package/components/Tooltip/Tooltip.d.ts +162 -162
- package/components/Tooltip/Tooltip.styles.d.ts +5 -5
- package/components/Tooltip/index.d.ts +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +65 -65
- package/components/TooltipMenu/index.d.ts +1 -1
- package/hooks/useDrop.d.ts +11 -11
- package/hooks/useEffectWithoutInitCall.d.ts +2 -2
- package/hooks/useMemoObject.d.ts +1 -1
- package/index.d.ts +52 -51
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/internal/BGRuler.d.ts +30 -30
- package/internal/Calendar/Calendar.d.ts +66 -66
- package/internal/Calendar/Calendar.styles.d.ts +5 -5
- package/internal/Calendar/CalendarDateShape.d.ts +14 -14
- package/internal/Calendar/CalendarScrollEvents.d.ts +4 -4
- package/internal/Calendar/CalendarUtils.d.ts +19 -19
- package/internal/Calendar/DayCellView.d.ts +13 -13
- package/internal/Calendar/DayCellView.styles.d.ts +7 -7
- package/internal/Calendar/DayCellViewModel.d.ts +8 -8
- package/internal/Calendar/Month.d.ts +33 -33
- package/internal/Calendar/MonthView.d.ts +21 -21
- package/internal/Calendar/MonthView.styles.d.ts +10 -10
- package/internal/Calendar/MonthViewModel.d.ts +14 -14
- package/internal/Calendar/config.d.ts +9 -9
- package/internal/Calendar/index.d.ts +2 -2
- package/internal/CommonWrapper/CommonWrapper.d.ts +31 -31
- package/internal/CommonWrapper/index.d.ts +1 -1
- package/internal/ComponentCombinator.d.ts +25 -25
- package/internal/ComponentTable.d.ts +21 -21
- package/internal/CustomComboBox/ComboBoxMenu.d.ts +32 -32
- package/internal/CustomComboBox/ComboBoxView.d.ts +102 -102
- package/internal/CustomComboBox/CustomComboBox.d.ts +137 -137
- package/internal/CustomComboBox/CustomComboBox.styles.d.ts +5 -5
- package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +71 -71
- package/internal/CustomComboBox/CustomComboBoxTypes.d.ts +6 -6
- package/internal/CustomComboBox/index.d.ts +2 -2
- package/internal/CustomComboBox/locale/index.d.ts +4 -4
- package/internal/CustomComboBox/locale/locales/en.d.ts +2 -2
- package/internal/CustomComboBox/locale/locales/ru.d.ts +2 -2
- package/internal/CustomComboBox/locale/types.d.ts +5 -5
- package/internal/DateSelect/DateSelect.d.ts +93 -93
- package/internal/DateSelect/DateSelect.styles.d.ts +19 -19
- package/internal/DateSelect/index.d.ts +1 -1
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +27 -23
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer.d.ts +44 -43
- package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js +10 -0
- package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js.map +1 -0
- package/internal/DropdownContainer/DropdownContainer.styles/package.json +6 -0
- package/internal/DropdownContainer/DropdownContainer.styles.d.ts +3 -0
- package/internal/DropdownContainer/index.d.ts +1 -1
- package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -12
- package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -14
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +12 -12
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -11
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +10 -10
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +5 -5
- package/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -7
- package/internal/FileUploaderControl/fileUtils.d.ts +14 -14
- package/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -1
- package/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -3
- package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -3
- package/internal/FocusTrap/FocusTrap.d.ts +17 -17
- package/internal/FocusTrap/index.d.ts +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +14 -14
- package/internal/HideBodyVerticalScroll/index.d.ts +1 -1
- package/internal/IgnoreLayerClick/IgnoreLayerClick.d.ts +8 -8
- package/internal/IgnoreLayerClick/index.d.ts +1 -1
- package/internal/InputLikeText/HiddenInput.d.ts +13 -13
- package/internal/InputLikeText/InputLikeText.d.ts +73 -73
- package/internal/InputLikeText/InputLikeText.styles.d.ts +7 -7
- package/internal/InputLikeText/index.d.ts +1 -1
- package/internal/InternalMenu/InternalMenu.d.ts +68 -68
- package/internal/InternalMenu/InternalMenu.styles.d.ts +9 -9
- package/internal/InternalMenu/index.d.ts +1 -1
- package/internal/InternalMenu/isActiveElement.d.ts +3 -3
- package/internal/MaskCharLowLine/MaskCharLowLine.d.ts +9 -9
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +3 -3
- package/internal/MaskCharLowLine/index.d.ts +1 -1
- package/internal/MaskedInput/MaskedInput.d.ts +40 -40
- package/internal/MaskedInput/MaskedInput.styles.d.ts +6 -6
- package/internal/MaskedInput/index.d.ts +1 -1
- package/internal/Menu/Menu/Menu.js +30 -6
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +70 -68
- package/internal/Menu/Menu.styles/Menu.styles.js +12 -3
- package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
- package/internal/Menu/Menu.styles.d.ts +9 -6
- package/internal/Menu/index.d.ts +1 -1
- package/internal/Menu/isActiveElement.d.ts +3 -3
- package/internal/MobilePopup/MobilePopup.d.ts +34 -34
- package/internal/MobilePopup/MobilePopup.styles.d.ts +10 -10
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +15 -15
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +10 -10
- package/internal/MobilePopup/MobilePopupHeader/index.d.ts +1 -1
- package/internal/MobilePopup/index.d.ts +1 -1
- package/internal/NativeDateInput/NativeDateInput.d.ts +23 -23
- package/internal/NativeDateInput/NativeDateInput.styles.d.ts +3 -3
- package/internal/NativeDateInput/index.d.ts +1 -1
- package/internal/NativeDateInput/utils.d.ts +7 -7
- package/internal/PerformanceMetrics/PerformanceMetrics.d.ts +7 -7
- package/internal/Popup/Popup/Popup.js +2 -1
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +167 -167
- package/internal/Popup/Popup.styles.d.ts +16 -16
- package/internal/Popup/PopupHelper.d.ts +26 -26
- package/internal/Popup/PopupPin.d.ts +56 -56
- package/internal/Popup/PopupPin.styles.d.ts +3 -3
- package/internal/Popup/index.d.ts +1 -1
- package/internal/Popup/types.d.ts +2 -1
- package/internal/PopupMenu/PopupMenu.d.ts +86 -86
- package/internal/PopupMenu/PopupMenu.styles.d.ts +4 -4
- package/internal/PopupMenu/index.d.ts +1 -1
- package/internal/PopupMenu/validatePositions.d.ts +2 -2
- package/internal/RenderContainer/RenderContainer.d.ts +16 -16
- package/internal/RenderContainer/RenderContainerTypes.d.ts +11 -11
- package/internal/RenderContainer/RenderInnerContainer.d.ts +13 -13
- package/internal/RenderContainer/index.d.ts +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +29 -29
- package/internal/RenderLayer/index.d.ts +1 -1
- package/internal/ResizeDetector/ResizeDetector.d.ts +13 -13
- package/internal/ResizeDetector/ResizeDetector.styles.d.ts +6 -6
- package/internal/ResizeDetector/index.d.ts +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -15
- package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -4
- package/internal/ThemePlayground/AnotherInputsPlayground.d.ts +13 -13
- package/internal/ThemePlayground/CheckboxPlayground.d.ts +1 -1
- package/internal/ThemePlayground/ComponentsGroup.d.ts +10 -10
- package/internal/ThemePlayground/CurrencyInputPlayground.d.ts +11 -11
- package/internal/ThemePlayground/FxInputPlayground.d.ts +10 -10
- package/internal/ThemePlayground/HintPlayground.d.ts +6 -6
- package/internal/ThemePlayground/PagingPlayground.d.ts +10 -10
- package/internal/ThemePlayground/Playground.d.ts +30 -30
- package/internal/ThemePlayground/Playground.styles.d.ts +23 -23
- package/internal/ThemePlayground/RadioPlayground.d.ts +1 -1
- package/internal/ThemePlayground/SelectPlayground.d.ts +12 -12
- package/internal/ThemePlayground/ShowcaseGroup.d.ts +5 -5
- package/internal/ThemePlayground/SwitcherPlayground.d.ts +15 -15
- package/internal/ThemePlayground/ThemeContextPlayground.d.ts +49 -49
- package/internal/ThemePlayground/ThemeEditor.d.ts +39 -39
- package/internal/ThemePlayground/TogglePlayground.d.ts +9 -9
- package/internal/ThemePlayground/TokenInputPlayground.d.ts +7 -7
- package/internal/ThemePlayground/VariableValue.d.ts +45 -45
- package/internal/ThemePlayground/constants.d.ts +17 -17
- package/internal/ThemePlayground/darkTheme.d.ts +269 -269
- package/internal/ThemePlayground/helpers.d.ts +2 -2
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +2 -2
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase.d.ts +22 -22
- package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +27 -27
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +18 -10
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +22 -22
- package/internal/ZIndex/ZIndex.d.ts +36 -36
- package/internal/ZIndex/ZIndexStorage.d.ts +20 -20
- package/internal/ZIndex/index.d.ts +1 -1
- package/internal/icons/16px/icon.styles.d.ts +4 -4
- package/internal/icons/16px/index.d.ts +25 -25
- package/internal/icons/20px/Icon.d.ts +30 -30
- package/internal/icons/20px/icon.styles.d.ts +4 -4
- package/internal/icons/20px/index.d.ts +2 -2
- package/internal/icons/20px/svg.d.ts +14 -14
- package/internal/icons/CloudIcon.d.ts +1 -1
- package/internal/icons/CrossIcon.d.ts +1 -1
- package/internal/icons/SpinnerIcon/SpinnerIcon.js +2 -3
- package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/icons/SpinnerIcon.d.ts +27 -27
- package/internal/icons/SpinnerIcon.styles.d.ts +6 -6
- package/internal/themes/DarkTheme.d.ts +137 -137
- package/internal/themes/DefaultTheme/DefaultTheme.js +3 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +857 -855
- package/internal/themes/NotFlat.d.ts +127 -127
- package/internal/themes/OldColors.d.ts +116 -116
- package/lib/ConditionalHandler.d.ts +11 -11
- package/lib/LayoutEvents.d.ts +4 -4
- package/lib/ModalStack.d.ts +14 -14
- package/lib/SSRSafe.d.ts +4 -4
- package/lib/Supports.d.ts +1 -1
- package/lib/Upgrades.d.ts +6 -6
- package/lib/animation/index.d.ts +6 -6
- package/lib/animation/presets.d.ts +18 -18
- package/lib/animation/stepper.d.ts +1 -1
- package/lib/callChildRef/callChildRef.d.ts +3 -3
- package/lib/client.d.ts +16 -16
- package/lib/createPropsGetter.d.ts +2 -2
- package/lib/currentEnvironment.d.ts +3 -3
- package/lib/date/InternalDate.d.ts +58 -58
- package/lib/date/InternalDateCalculator.d.ts +6 -6
- package/lib/date/InternalDateGetter.d.ts +15 -15
- package/lib/date/InternalDateSetter.d.ts +6 -6
- package/lib/date/InternalDateTransformer.d.ts +12 -12
- package/lib/date/InternalDateValidator.d.ts +12 -12
- package/lib/date/constants.d.ts +28 -28
- package/lib/date/localeSets.d.ts +5 -5
- package/lib/date/types.d.ts +90 -90
- package/lib/dom/getDOMRect/getDOMRect.js +23 -0
- package/lib/dom/getDOMRect/getDOMRect.js.map +1 -0
- package/lib/dom/getDOMRect/package.json +6 -0
- package/lib/dom/getDOMRect.d.ts +8 -0
- package/lib/dom/getScrollWidth.d.ts +1 -1
- package/lib/dom/tabbableHelpers.d.ts +16 -16
- package/lib/events/MouseDrag.d.ts +58 -58
- package/lib/events/fixClickFocusIE.d.ts +1 -1
- package/lib/events/fixFirefoxModifiedClickOnLabel.d.ts +2 -2
- package/lib/events/keyListener.d.ts +7 -7
- package/lib/events/keyboard/KeyboardEventCodes.d.ts +30 -30
- package/lib/events/keyboard/KeyboardMapKeys.d.ts +6 -6
- package/lib/events/keyboard/extractCode.d.ts +3 -3
- package/lib/events/keyboard/identifiers.d.ts +48 -48
- package/lib/events/stopPropagation.d.ts +1 -1
- package/lib/events/tabListener.d.ts +1 -1
- package/lib/extractKeyboardAction.d.ts +13 -13
- package/lib/filterProps.d.ts +12 -12
- package/lib/forwardRefAndName.d.ts +5 -5
- package/lib/getDisplayName.d.ts +3 -3
- package/lib/listenFocusOutside.d.ts +8 -8
- package/lib/locale/LocaleContext.d.ts +7 -7
- package/lib/locale/LocaleHelper.d.ts +9 -9
- package/lib/locale/constants.d.ts +2 -2
- package/lib/locale/decorators.d.ts +36 -36
- package/lib/locale/index.d.ts +3 -3
- package/lib/locale/types.d.ts +21 -21
- package/lib/locale/useLocaleForControl.d.ts +3 -3
- package/lib/memo.d.ts +1 -1
- package/lib/net/fetch.d.ts +13 -13
- package/lib/polyfillPlaceholder.d.ts +1 -1
- package/lib/reactGetTextContent.d.ts +2 -2
- package/lib/rootNode/getRootNode.d.ts +3 -3
- package/lib/rootNode/index.d.ts +2 -2
- package/lib/rootNode/rootNodeDecorator.d.ts +33 -33
- package/lib/stringUtils.d.ts +1 -1
- package/lib/styles/ColorFactory.d.ts +11 -11
- package/lib/styles/ColorFunctions.d.ts +11 -11
- package/lib/styles/ColorHelpers.d.ts +20 -20
- package/lib/styles/ColorKeywords.d.ts +150 -150
- package/lib/styles/ColorObject.d.ts +52 -52
- package/lib/styles/DimensionFunctions.d.ts +1 -1
- package/lib/styles/HoldSelectionColor.d.ts +1 -1
- package/lib/styles/Mixins.d.ts +2 -2
- package/lib/taskWithDelayAndMinimalDuration.d.ts +21 -21
- package/lib/theming/AnimationKeyframes.d.ts +9 -9
- package/lib/theming/Emotion.d.ts +15 -15
- package/lib/theming/Theme.d.ts +3 -3
- package/lib/theming/ThemeContext.d.ts +2 -2
- package/lib/theming/ThemeFactory.d.ts +7 -7
- package/lib/theming/ThemeHelpers.d.ts +5 -5
- package/lib/theming/themes/DarkTheme.d.ts +1 -1
- package/lib/theming/themes/DefaultTheme.d.ts +1 -1
- package/lib/theming/themes/DefaultTheme8pxOld.d.ts +1 -1
- package/lib/theming/themes/DefaultThemeMobile.d.ts +3 -3
- package/lib/theming/themes/FlatTheme8pxOld.d.ts +1 -1
- package/lib/theming/useTheme.d.ts +1 -1
- package/lib/uidUtils.d.ts +1 -1
- package/lib/utils.d.ts +64 -64
- package/lib/withClassWrapper.d.ts +71 -71
- package/package.json +8 -3
- package/cjs/components/GlobalLoader/GlabalLoaderView.d.ts +0 -8
- package/cjs/components/GlobalLoader/GlabalLoaderView.js +0 -44
- package/cjs/components/GlobalLoader/GlabalLoaderView.js.map +0 -1
- package/components/GlobalLoader/GlabalLoaderView/GlabalLoaderView.js +0 -30
- package/components/GlobalLoader/GlabalLoaderView/GlabalLoaderView.js.map +0 -1
- package/components/GlobalLoader/GlabalLoaderView/package.json +0 -6
- package/components/GlobalLoader/GlabalLoaderView.d.ts +0 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollBar.tsx"],"names":["React","ThemeContext","cx","defaultScrollbarState","scrollSizeParametersNames","styles","globalClasses","getScrollSizeParams","ScrollBar","state","renderMain","props","active","axis","customScrollPos","customScrollSize","classNames","className","scrollBar","theme","scrollBarStyles","scrollBarInvert","invert","inlineStyles","pos","size","refScroll","handleScrollMouseDown","reflow","inner","scrollSize","scrollPos","scrollActive","scrollState","getImmediateScrollState","onScrollStateChange","setState","setInnerElement","element","handleScrollWheel","event","node","addEventListener","passive","removeEventListener","offset","coord","initialCoord","target","window","document","initialScrollPos","mouseMove","mouseMoveEvent","ratio","delta","preventDefault","Object","prototype","hasOwnProperty","call","returnValue","mouseUp","scrolling","WheelEvent","shiftKey","offsetHeight","deltaY","clientSize","componentDidMount","componentDidUpdate","render","setHover","hover","scrollBarX","scrollbarX","scrollBarXHover","scrollBarY","scrollbarY","scrollBarYHover","Component"],"mappings":"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","sourcesContent":["import React from 'react';\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';\n\nexport type ScrollAxis = 'x' | 'y';\nexport type ScrollBarScrollState = 'begin' | 'middle' | 'end';\n\nexport interface ScrollBarState {\n active: boolean;\n hover: boolean;\n scrolling: boolean;\n size: number;\n pos: number;\n scrollState: ScrollBarScrollState;\n}\n\nexport interface ScrollBarProps {\n invert: boolean;\n axis: ScrollAxis;\n className?: string;\n onScrollStateChange?: (state: ScrollBarScrollState, axis: ScrollAxis) => void;\n}\n\nexport class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {\n private inner: Nullable<HTMLElement>;\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 });\n\n const inlineStyles: React.CSSProperties = {\n [customScrollPos]: state.pos,\n [customScrollSize]: state.size,\n };\n\n return (\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 );\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 (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 }\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 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.scrolling,\n });\n }\n\n return cx(styles.scrollBarY(this.theme), globalClasses.scrollbarY, {\n [styles.scrollBarYHover(this.theme)]: state.hover || state.scrolling,\n });\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) {\n return;\n }\n\n const ratio = (this.inner[size] - this.inner[offset]) / (this.inner[offset] - state.size);\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, scrolling: false });\n };\n\n target.addEventListener('mousemove', mouseMove);\n target.addEventListener('mouseup', mouseUp);\n this.setState({ ...this.state, scrolling: 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\n if (this.inner[pos] === this.inner[size] - this.inner[clientSize]) {\n return 'end';\n }\n\n return 'middle';\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["ScrollBar.tsx"],"names":["React","ThemeContext","cx","defaultScrollbarState","scrollSizeParametersNames","styles","globalClasses","getScrollSizeParams","ScrollBar","state","renderMain","props","active","axis","customScrollPos","customScrollSize","classNames","className","scrollBar","theme","scrollBarStyles","scrollBarInvert","invert","inlineStyles","pos","size","refScroll","handleScrollMouseDown","reflow","inner","scrollSize","scrollPos","scrollActive","scrollState","getImmediateScrollState","onScrollStateChange","setState","setInnerElement","element","handleScrollWheel","event","node","addEventListener","passive","removeEventListener","offset","coord","initialCoord","target","window","document","initialScrollPos","mouseMove","mouseMoveEvent","ratio","delta","preventDefault","Object","prototype","hasOwnProperty","call","returnValue","mouseUp","scrolling","WheelEvent","shiftKey","offsetHeight","deltaY","clientSize","maxScrollPos","Math","abs","componentDidMount","componentDidUpdate","render","setHover","hover","scrollBarX","scrollbarX","scrollBarXHover","scrollBarY","scrollbarY","scrollBarYHover","Component"],"mappings":"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","sourcesContent":["import React from 'react';\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';\n\nexport type ScrollAxis = 'x' | 'y';\nexport type ScrollBarScrollState = 'begin' | 'middle' | 'end';\n\nexport interface ScrollBarState {\n active: boolean;\n hover: boolean;\n scrolling: boolean;\n size: number;\n pos: number;\n scrollState: ScrollBarScrollState;\n}\n\nexport interface ScrollBarProps {\n invert: boolean;\n axis: ScrollAxis;\n className?: string;\n onScrollStateChange?: (state: ScrollBarScrollState, axis: ScrollAxis) => void;\n}\n\nexport class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {\n private inner: Nullable<HTMLElement>;\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 });\n\n const inlineStyles: React.CSSProperties = {\n [customScrollPos]: state.pos,\n [customScrollSize]: state.size,\n };\n\n return (\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 );\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 (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 }\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 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.scrolling,\n });\n }\n\n return cx(styles.scrollBarY(this.theme), globalClasses.scrollbarY, {\n [styles.scrollBarYHover(this.theme)]: state.hover || state.scrolling,\n });\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) {\n return;\n }\n\n const ratio = (this.inner[size] - this.inner[offset]) / (this.inner[offset] - state.size);\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, scrolling: false });\n };\n\n target.addEventListener('mousemove', mouseMove);\n target.addEventListener('mouseup', mouseUp);\n this.setState({ ...this.state, scrolling: 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"]}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Nullable } from '../../typings/utility-types';
|
|
3
|
-
export declare type ScrollAxis = 'x' | 'y';
|
|
4
|
-
export declare type ScrollBarScrollState = 'begin' | 'middle' | 'end';
|
|
5
|
-
export interface ScrollBarState {
|
|
6
|
-
active: boolean;
|
|
7
|
-
hover: boolean;
|
|
8
|
-
scrolling: boolean;
|
|
9
|
-
size: number;
|
|
10
|
-
pos: number;
|
|
11
|
-
scrollState: ScrollBarScrollState;
|
|
12
|
-
}
|
|
13
|
-
export interface ScrollBarProps {
|
|
14
|
-
invert: boolean;
|
|
15
|
-
axis: ScrollAxis;
|
|
16
|
-
className?: string;
|
|
17
|
-
onScrollStateChange?: (state: ScrollBarScrollState, axis: ScrollAxis) => void;
|
|
18
|
-
}
|
|
19
|
-
export declare class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {
|
|
20
|
-
private inner;
|
|
21
|
-
private theme;
|
|
22
|
-
node: Nullable<HTMLElement>;
|
|
23
|
-
state: ScrollBarState;
|
|
24
|
-
componentDidMount(): void;
|
|
25
|
-
componentDidUpdate(): void;
|
|
26
|
-
render(): JSX.Element;
|
|
27
|
-
private renderMain;
|
|
28
|
-
reflow: () => void;
|
|
29
|
-
setInnerElement: (inner: Nullable<HTMLElement>) => void;
|
|
30
|
-
setHover(hover: boolean): void;
|
|
31
|
-
get scrollBarState(): ScrollBarScrollState;
|
|
32
|
-
private get scrollBarStyles();
|
|
33
|
-
private refScroll;
|
|
34
|
-
private handleScrollMouseDown;
|
|
35
|
-
private handleScrollWheel;
|
|
36
|
-
private getImmediateScrollState;
|
|
37
|
-
}
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Nullable } from '../../typings/utility-types';
|
|
3
|
+
export declare type ScrollAxis = 'x' | 'y';
|
|
4
|
+
export declare type ScrollBarScrollState = 'begin' | 'middle' | 'end';
|
|
5
|
+
export interface ScrollBarState {
|
|
6
|
+
active: boolean;
|
|
7
|
+
hover: boolean;
|
|
8
|
+
scrolling: boolean;
|
|
9
|
+
size: number;
|
|
10
|
+
pos: number;
|
|
11
|
+
scrollState: ScrollBarScrollState;
|
|
12
|
+
}
|
|
13
|
+
export interface ScrollBarProps {
|
|
14
|
+
invert: boolean;
|
|
15
|
+
axis: ScrollAxis;
|
|
16
|
+
className?: string;
|
|
17
|
+
onScrollStateChange?: (state: ScrollBarScrollState, axis: ScrollAxis) => void;
|
|
18
|
+
}
|
|
19
|
+
export declare class ScrollBar extends React.Component<ScrollBarProps, ScrollBarState> {
|
|
20
|
+
private inner;
|
|
21
|
+
private theme;
|
|
22
|
+
node: Nullable<HTMLElement>;
|
|
23
|
+
state: ScrollBarState;
|
|
24
|
+
componentDidMount(): void;
|
|
25
|
+
componentDidUpdate(): void;
|
|
26
|
+
render(): JSX.Element;
|
|
27
|
+
private renderMain;
|
|
28
|
+
reflow: () => void;
|
|
29
|
+
setInnerElement: (inner: Nullable<HTMLElement>) => void;
|
|
30
|
+
setHover(hover: boolean): void;
|
|
31
|
+
get scrollBarState(): ScrollBarScrollState;
|
|
32
|
+
private get scrollBarStyles();
|
|
33
|
+
private refScroll;
|
|
34
|
+
private handleScrollMouseDown;
|
|
35
|
+
private handleScrollWheel;
|
|
36
|
+
private getImmediateScrollState;
|
|
37
|
+
}
|
|
@@ -8,6 +8,7 @@ import PropTypes from 'prop-types';
|
|
|
8
8
|
import * as LayoutEvents from "../../../lib/LayoutEvents";
|
|
9
9
|
import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
10
10
|
import { cx } from "../../../lib/theming/Emotion";
|
|
11
|
+
import { isIE11 } from "../../../lib/client";
|
|
11
12
|
import { rootNode } from "../../../lib/rootNode";
|
|
12
13
|
import { styles, globalClasses } from "../ScrollContainer.styles";
|
|
13
14
|
import { scrollSizeParametersNames } from "../ScrollContainer.constants";
|
|
@@ -51,7 +52,7 @@ export var ScrollContainer = rootNode(_class = (_temp = _class2 = /*#__PURE__*/f
|
|
|
51
52
|
}, scrollbarY, scrollbarX, /*#__PURE__*/React.createElement("div", {
|
|
52
53
|
style: innerStyle,
|
|
53
54
|
ref: _this.refInner,
|
|
54
|
-
className: cx(styles.inner(), globalClasses.inner),
|
|
55
|
+
className: cx(styles.inner(), globalClasses.inner, isIE11 && styles.innerIE11()),
|
|
55
56
|
"data-tid": "ScrollContainer__inner",
|
|
56
57
|
onScroll: _this.handleNativeScroll
|
|
57
58
|
}, props.children)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollContainer.tsx"],"names":["React","PropTypes","LayoutEvents","CommonWrapper","cx","rootNode","styles","globalClasses","scrollSizeParametersNames","getScrollYOffset","convertScrollbarXScrollState","convertScrollbarYScrollState","ScrollBar","ScrollContainer","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","setRootNode","root","handleMouseMove","handleMouseLeave","refInner","inner","handleNativeScroll","axis","refScrollBar","refScrollBarX","refScrollBarY","invert","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","offset","deltaY","right","currentTarget","getBoundingClientRect","pageX","bottom","pageY","setHover","componentDidMount","setInnerElement","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","defaultProps"],"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 { rootNode, TSetRootNode } from '../../lib/rootNode';\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\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@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\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 = {\n invert: false,\n scrollBehaviour: 'auto',\n preventWindowScroll: false,\n };\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n private inner: Nullable<HTMLElement>;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n if (this.inner) {\n if (prevProps.preventWindowScroll && !this.props.preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && this.props.preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: 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: props.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 className={styles.root()} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\n {scrollbarY}\n {scrollbarX}\n <div\n style={innerStyle}\n ref={this.refInner}\n className={cx(styles.inner(), globalClasses.inner)}\n data-tid=\"ScrollContainer__inner\"\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n * @param {HTMLElement} 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 private 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\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={this.props.invert}\n onScrollStateChange={this.handleScrollStateChange}\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.props.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.scrollX?.reflow();\n this.scrollY?.reflow();\n\n this.props.onScroll?.(event);\n if (this.props.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 = event.currentTarget.getBoundingClientRect().right - event.pageX;\n const bottom = event.currentTarget.getBoundingClientRect().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"]}
|
|
1
|
+
{"version":3,"sources":["ScrollContainer.tsx"],"names":["React","PropTypes","LayoutEvents","CommonWrapper","cx","isIE11","rootNode","styles","globalClasses","scrollSizeParametersNames","getScrollYOffset","convertScrollbarXScrollState","convertScrollbarYScrollState","ScrollBar","ScrollContainer","render","props","disabled","children","innerStyle","scrollBehavior","scrollBehaviour","maxHeight","maxWidth","scrollbarY","renderScrollbar","scrollbarX","setRootNode","root","handleMouseMove","handleMouseLeave","refInner","inner","innerIE11","handleNativeScroll","axis","refScrollBar","refScrollBarX","refScrollBarY","invert","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","offset","deltaY","right","currentTarget","getBoundingClientRect","pageX","bottom","pageY","setHover","componentDidMount","setInnerElement","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","defaultProps"],"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';\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\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@rootNode\nexport class ScrollContainer extends React.Component<ScrollContainerProps> {\n public static __KONTUR_REACT_UI__ = 'ScrollContainer';\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 = {\n invert: false,\n scrollBehaviour: 'auto',\n preventWindowScroll: false,\n };\n\n private scrollX: Nullable<ScrollBar>;\n private scrollY: Nullable<ScrollBar>;\n private inner: Nullable<HTMLElement>;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.scrollX?.setInnerElement(this.inner);\n this.scrollY?.setInnerElement(this.inner);\n }\n\n public componentDidUpdate(prevProps: ScrollContainerProps) {\n if (this.inner) {\n if (prevProps.preventWindowScroll && !this.props.preventWindowScroll) {\n this.inner.removeEventListener('wheel', this.handleInnerScrollWheel);\n }\n if (!prevProps.preventWindowScroll && this.props.preventWindowScroll) {\n this.inner.addEventListener('wheel', this.handleInnerScrollWheel, { passive: 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: props.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 className={styles.root()} onMouseMove={this.handleMouseMove} onMouseLeave={this.handleMouseLeave}>\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=\"ScrollContainer__inner\"\n onScroll={this.handleNativeScroll}\n >\n {props.children}\n </div>\n </div>\n </CommonWrapper>\n );\n };\n\n /**\n * @public\n * @param {HTMLElement} 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 private 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\n return (\n <ScrollBar\n axis={axis}\n ref={refScrollBar}\n invert={this.props.invert}\n onScrollStateChange={this.handleScrollStateChange}\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.props.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.scrollX?.reflow();\n this.scrollY?.reflow();\n\n this.props.onScroll?.(event);\n if (this.props.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 = event.currentTarget.getBoundingClientRect().right - event.pageX;\n const bottom = event.currentTarget.getBoundingClientRect().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"]}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { ScrollBarState } from './ScrollBar';
|
|
2
|
-
export declare const MIN_SCROLL_SIZE = 20;
|
|
3
|
-
export declare const defaultScrollbarState: ScrollBarState;
|
|
4
|
-
export declare const scrollSizeParametersNames: {
|
|
5
|
-
readonly x: {
|
|
6
|
-
readonly offset: "offsetWidth";
|
|
7
|
-
readonly size: "scrollWidth";
|
|
8
|
-
readonly pos: "scrollLeft";
|
|
9
|
-
readonly coord: "clientX";
|
|
10
|
-
readonly clientSize: "clientWidth";
|
|
11
|
-
readonly customScrollPos: "left";
|
|
12
|
-
readonly customScrollSize: "width";
|
|
13
|
-
};
|
|
14
|
-
readonly y: {
|
|
15
|
-
readonly offset: "offsetHeight";
|
|
16
|
-
readonly size: "scrollHeight";
|
|
17
|
-
readonly pos: "scrollTop";
|
|
18
|
-
readonly coord: "clientY";
|
|
19
|
-
readonly clientSize: "clientHeight";
|
|
20
|
-
readonly customScrollPos: "top";
|
|
21
|
-
readonly customScrollSize: "height";
|
|
22
|
-
};
|
|
23
|
-
};
|
|
1
|
+
import { ScrollBarState } from './ScrollBar';
|
|
2
|
+
export declare const MIN_SCROLL_SIZE = 20;
|
|
3
|
+
export declare const defaultScrollbarState: ScrollBarState;
|
|
4
|
+
export declare const scrollSizeParametersNames: {
|
|
5
|
+
readonly x: {
|
|
6
|
+
readonly offset: "offsetWidth";
|
|
7
|
+
readonly size: "scrollWidth";
|
|
8
|
+
readonly pos: "scrollLeft";
|
|
9
|
+
readonly coord: "clientX";
|
|
10
|
+
readonly clientSize: "clientWidth";
|
|
11
|
+
readonly customScrollPos: "left";
|
|
12
|
+
readonly customScrollSize: "width";
|
|
13
|
+
};
|
|
14
|
+
readonly y: {
|
|
15
|
+
readonly offset: "offsetHeight";
|
|
16
|
+
readonly size: "scrollHeight";
|
|
17
|
+
readonly pos: "scrollTop";
|
|
18
|
+
readonly coord: "clientY";
|
|
19
|
+
readonly clientSize: "clientHeight";
|
|
20
|
+
readonly customScrollPos: "top";
|
|
21
|
+
readonly customScrollSize: "height";
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import { CommonProps } from '../../internal/CommonWrapper';
|
|
4
|
-
import { Nullable } from '../../typings/utility-types';
|
|
5
|
-
export declare type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';
|
|
6
|
-
export declare type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';
|
|
7
|
-
export declare type ScrollContainerScrollState = ScrollContainerScrollStateY;
|
|
8
|
-
export declare type ScrollBehaviour = 'auto' | 'smooth';
|
|
9
|
-
export interface ScrollContainerProps extends CommonProps {
|
|
10
|
-
/**
|
|
11
|
-
* Инвертировать цвет скроллбара
|
|
12
|
-
* @default false
|
|
13
|
-
*/
|
|
14
|
-
invert: boolean;
|
|
15
|
-
maxHeight?: React.CSSProperties['maxHeight'];
|
|
16
|
-
maxWidth?: React.CSSProperties['maxWidth'];
|
|
17
|
-
/**
|
|
18
|
-
* @default false
|
|
19
|
-
*/
|
|
20
|
-
preventWindowScroll: boolean;
|
|
21
|
-
/**
|
|
22
|
-
* Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)
|
|
23
|
-
* @default 'auto'
|
|
24
|
-
*/
|
|
25
|
-
scrollBehaviour?: ScrollBehaviour;
|
|
26
|
-
onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;
|
|
27
|
-
onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;
|
|
28
|
-
onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void;
|
|
29
|
-
onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;
|
|
30
|
-
/**
|
|
31
|
-
* Отключение кастомного скролла
|
|
32
|
-
*/
|
|
33
|
-
disabled?: boolean;
|
|
34
|
-
}
|
|
35
|
-
export declare class ScrollContainer extends React.Component<ScrollContainerProps> {
|
|
36
|
-
static __KONTUR_REACT_UI__: string;
|
|
37
|
-
static propTypes: {
|
|
38
|
-
invert: PropTypes.Requireable<boolean>;
|
|
39
|
-
maxWidth: PropTypes.Requireable<string | number>;
|
|
40
|
-
maxHeight: PropTypes.Requireable<string | number>;
|
|
41
|
-
scrollBehaviour: PropTypes.Requireable<string>;
|
|
42
|
-
preventWindowScroll: PropTypes.Requireable<boolean>;
|
|
43
|
-
onScrollStateChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
44
|
-
};
|
|
45
|
-
static defaultProps: {
|
|
46
|
-
invert: boolean;
|
|
47
|
-
scrollBehaviour: string;
|
|
48
|
-
preventWindowScroll: boolean;
|
|
49
|
-
};
|
|
50
|
-
private scrollX;
|
|
51
|
-
private scrollY;
|
|
52
|
-
private inner;
|
|
53
|
-
private setRootNode;
|
|
54
|
-
componentDidMount(): void;
|
|
55
|
-
componentDidUpdate(prevProps: ScrollContainerProps): void;
|
|
56
|
-
render: () => React.ReactNode;
|
|
57
|
-
/**
|
|
58
|
-
* @public
|
|
59
|
-
* @param {HTMLElement} element
|
|
60
|
-
*/
|
|
61
|
-
scrollTo(element: Nullable<HTMLElement>): void;
|
|
62
|
-
/**
|
|
63
|
-
* @public
|
|
64
|
-
*/
|
|
65
|
-
scrollToTop(): void;
|
|
66
|
-
/**
|
|
67
|
-
* @public
|
|
68
|
-
*/
|
|
69
|
-
scrollToBottom(): void;
|
|
70
|
-
/**
|
|
71
|
-
* @public
|
|
72
|
-
*/
|
|
73
|
-
scrollToLeft(): void;
|
|
74
|
-
/**
|
|
75
|
-
* @public
|
|
76
|
-
*/
|
|
77
|
-
scrollToRight(): void;
|
|
78
|
-
private hasScrollBar;
|
|
79
|
-
private renderScrollbar;
|
|
80
|
-
private handleScrollStateChange;
|
|
81
|
-
private refScrollBarY;
|
|
82
|
-
private refScrollBarX;
|
|
83
|
-
private refInner;
|
|
84
|
-
private handleNativeScroll;
|
|
85
|
-
private handleInnerScrollWheel;
|
|
86
|
-
private handleMouseMove;
|
|
87
|
-
private handleMouseLeave;
|
|
88
|
-
}
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { CommonProps } from '../../internal/CommonWrapper';
|
|
4
|
+
import { Nullable } from '../../typings/utility-types';
|
|
5
|
+
export declare type ScrollContainerScrollStateX = 'left' | 'scroll' | 'right';
|
|
6
|
+
export declare type ScrollContainerScrollStateY = 'top' | 'scroll' | 'bottom';
|
|
7
|
+
export declare type ScrollContainerScrollState = ScrollContainerScrollStateY;
|
|
8
|
+
export declare type ScrollBehaviour = 'auto' | 'smooth';
|
|
9
|
+
export interface ScrollContainerProps extends CommonProps {
|
|
10
|
+
/**
|
|
11
|
+
* Инвертировать цвет скроллбара
|
|
12
|
+
* @default false
|
|
13
|
+
*/
|
|
14
|
+
invert: boolean;
|
|
15
|
+
maxHeight?: React.CSSProperties['maxHeight'];
|
|
16
|
+
maxWidth?: React.CSSProperties['maxWidth'];
|
|
17
|
+
/**
|
|
18
|
+
* @default false
|
|
19
|
+
*/
|
|
20
|
+
preventWindowScroll: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Поведение скролла (https://developer.mozilla.org/en-US/docs/Web/CSS/scroll-behavior)
|
|
23
|
+
* @default 'auto'
|
|
24
|
+
*/
|
|
25
|
+
scrollBehaviour?: ScrollBehaviour;
|
|
26
|
+
onScrollStateChangeX?: (scrollState: ScrollContainerScrollStateX) => void;
|
|
27
|
+
onScrollStateChangeY?: (scrollState: ScrollContainerScrollStateY) => void;
|
|
28
|
+
onScrollStateChange?: (scrollYState: ScrollContainerScrollState) => void;
|
|
29
|
+
onScroll?: (e: React.UIEvent<HTMLDivElement>) => void;
|
|
30
|
+
/**
|
|
31
|
+
* Отключение кастомного скролла
|
|
32
|
+
*/
|
|
33
|
+
disabled?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export declare class ScrollContainer extends React.Component<ScrollContainerProps> {
|
|
36
|
+
static __KONTUR_REACT_UI__: string;
|
|
37
|
+
static propTypes: {
|
|
38
|
+
invert: PropTypes.Requireable<boolean>;
|
|
39
|
+
maxWidth: PropTypes.Requireable<string | number>;
|
|
40
|
+
maxHeight: PropTypes.Requireable<string | number>;
|
|
41
|
+
scrollBehaviour: PropTypes.Requireable<string>;
|
|
42
|
+
preventWindowScroll: PropTypes.Requireable<boolean>;
|
|
43
|
+
onScrollStateChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
44
|
+
};
|
|
45
|
+
static defaultProps: {
|
|
46
|
+
invert: boolean;
|
|
47
|
+
scrollBehaviour: string;
|
|
48
|
+
preventWindowScroll: boolean;
|
|
49
|
+
};
|
|
50
|
+
private scrollX;
|
|
51
|
+
private scrollY;
|
|
52
|
+
private inner;
|
|
53
|
+
private setRootNode;
|
|
54
|
+
componentDidMount(): void;
|
|
55
|
+
componentDidUpdate(prevProps: ScrollContainerProps): void;
|
|
56
|
+
render: () => React.ReactNode;
|
|
57
|
+
/**
|
|
58
|
+
* @public
|
|
59
|
+
* @param {HTMLElement} element
|
|
60
|
+
*/
|
|
61
|
+
scrollTo(element: Nullable<HTMLElement>): void;
|
|
62
|
+
/**
|
|
63
|
+
* @public
|
|
64
|
+
*/
|
|
65
|
+
scrollToTop(): void;
|
|
66
|
+
/**
|
|
67
|
+
* @public
|
|
68
|
+
*/
|
|
69
|
+
scrollToBottom(): void;
|
|
70
|
+
/**
|
|
71
|
+
* @public
|
|
72
|
+
*/
|
|
73
|
+
scrollToLeft(): void;
|
|
74
|
+
/**
|
|
75
|
+
* @public
|
|
76
|
+
*/
|
|
77
|
+
scrollToRight(): void;
|
|
78
|
+
private hasScrollBar;
|
|
79
|
+
private renderScrollbar;
|
|
80
|
+
private handleScrollStateChange;
|
|
81
|
+
private refScrollBarY;
|
|
82
|
+
private refScrollBarX;
|
|
83
|
+
private refInner;
|
|
84
|
+
private handleNativeScroll;
|
|
85
|
+
private handleInnerScrollWheel;
|
|
86
|
+
private handleMouseMove;
|
|
87
|
+
private handleMouseLeave;
|
|
88
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ScrollBarScrollState } from './ScrollBar';
|
|
2
|
-
import { ScrollContainerScrollStateX, ScrollContainerScrollStateY } from './ScrollContainer';
|
|
3
|
-
export declare const getScrollSizeParams: (inner: HTMLElement, axis: 'x' | 'y') => {
|
|
4
|
-
scrollActive: boolean;
|
|
5
|
-
scrollSize: number;
|
|
6
|
-
scrollPos: number;
|
|
7
|
-
};
|
|
8
|
-
export declare const getScrollYOffset: (element: HTMLElement, container: HTMLElement) => number;
|
|
9
|
-
export declare const convertScrollbarXScrollState: (state: ScrollBarScrollState) => ScrollContainerScrollStateX;
|
|
10
|
-
export declare const convertScrollbarYScrollState: (state: ScrollBarScrollState) => ScrollContainerScrollStateY;
|
|
1
|
+
import { ScrollBarScrollState } from './ScrollBar';
|
|
2
|
+
import { ScrollContainerScrollStateX, ScrollContainerScrollStateY } from './ScrollContainer';
|
|
3
|
+
export declare const getScrollSizeParams: (inner: HTMLElement, axis: 'x' | 'y') => {
|
|
4
|
+
scrollActive: boolean;
|
|
5
|
+
scrollSize: number;
|
|
6
|
+
scrollPos: number;
|
|
7
|
+
};
|
|
8
|
+
export declare const getScrollYOffset: (element: HTMLElement, container: HTMLElement) => number;
|
|
9
|
+
export declare const convertScrollbarXScrollState: (state: ScrollBarScrollState) => ScrollContainerScrollStateX;
|
|
10
|
+
export declare const convertScrollbarYScrollState: (state: ScrollBarScrollState) => ScrollContainerScrollStateY;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTemplateLiteralLoose";
|
|
2
2
|
|
|
3
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
|
3
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
|
|
4
4
|
|
|
5
5
|
import { css, memoizeStyle, prefix } from "../../../lib/theming/Emotion";
|
|
6
6
|
export var globalClasses = prefix('scroll-container')({
|
|
@@ -13,24 +13,27 @@ export var styles = memoizeStyle({
|
|
|
13
13
|
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n height: 100%;\n overflow: hidden;\n position: relative;\n "])));
|
|
14
14
|
},
|
|
15
15
|
inner: function inner() {
|
|
16
|
-
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n position: relative;\n overflow: scroll;\n max-height: 100%;\n max-width: 100%;\n\n /*
|
|
16
|
+
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n position: relative;\n overflow: scroll;\n max-height: 100%;\n max-width: 100%;\n\n /* Hide scrobars without losing functionality */\n scrollbar-width: none;\n -ms-overflow-style: none;\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n "])));
|
|
17
|
+
},
|
|
18
|
+
innerIE11: function innerIE11() {
|
|
19
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n /* IE sometimes enabled scroll: http://codepen.io/anon/pen/RRrLNX */\n margin-bottom: -1px;\n padding-bottom: 1px;\n margin-right: -1px;\n padding-right: 1px;\n "])));
|
|
17
20
|
},
|
|
18
21
|
scrollBar: function scrollBar(t) {
|
|
19
|
-
return css(
|
|
22
|
+
return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n position: absolute;\n z-index: 200;\n\n &::after {\n content: '';\n display: block;\n border-radius: 5px;\n position: absolute;\n background: ", ";\n }\n "])), t.scrollContainerScrollBarColor);
|
|
20
23
|
},
|
|
21
24
|
scrollBarInvert: function scrollBarInvert(t) {
|
|
22
|
-
return css(
|
|
25
|
+
return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n &::after {\n background: #ccc;\n background: ", ";\n }\n "])), t.scrollContainerScrollBarInvertColor);
|
|
23
26
|
},
|
|
24
27
|
scrollBarY: function scrollBarY(t) {
|
|
25
|
-
return css(
|
|
28
|
+
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n right: 2px;\n transition: width 0.2s;\n width: ", ";\n\n &::after {\n bottom: 1px;\n left: 0;\n right: 0;\n top: 1px;\n }\n "])), t.scrollContainerScrollBarSize);
|
|
26
29
|
},
|
|
27
30
|
scrollBarYHover: function scrollBarYHover(t) {
|
|
28
|
-
return css(
|
|
31
|
+
return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n width: ", ";\n "])), t.scrollContainerScrollBarHoverSize);
|
|
29
32
|
},
|
|
30
33
|
scrollBarX: function scrollBarX(t) {
|
|
31
|
-
return css(
|
|
34
|
+
return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n bottom: 1px;\n transition: height 0.2s;\n height: ", ";\n\n &::after {\n bottom: 0px;\n left: 1px;\n right: 1px;\n top: 0;\n }\n\n .", " ~ & {\n &::after {\n right: calc(", " + 4px) !important;\n }\n }\n\n & ~ .", " {\n &::after {\n content: ' ';\n width: 100%;\n display: block;\n height: calc(", " + 2px);\n }\n }\n "])), t.scrollContainerScrollBarSize, globalClasses.scrollbarY, t.scrollContainerScrollBarHoverSize, globalClasses.inner, t.scrollContainerScrollBarHoverSize);
|
|
32
35
|
},
|
|
33
36
|
scrollBarXHover: function scrollBarXHover(t) {
|
|
34
|
-
return css(
|
|
37
|
+
return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n height: ", ";\n "])), t.scrollContainerScrollBarHoverSize);
|
|
35
38
|
}
|
|
36
39
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ScrollContainer.styles.ts"],"names":["css","memoizeStyle","prefix","globalClasses","scrollbarX","scrollbarY","inner","styles","root","scrollBar","t","scrollContainerScrollBarColor","scrollBarInvert","scrollContainerScrollBarInvertColor","scrollBarY","scrollContainerScrollBarSize","scrollBarYHover","scrollContainerScrollBarHoverSize","scrollBarX","scrollBarXHover"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["ScrollContainer.styles.ts"],"names":["css","memoizeStyle","prefix","globalClasses","scrollbarX","scrollbarY","inner","styles","root","innerIE11","scrollBar","t","scrollContainerScrollBarColor","scrollBarInvert","scrollContainerScrollBarInvertColor","scrollBarY","scrollContainerScrollBarSize","scrollBarYHover","scrollContainerScrollBarHoverSize","scrollBarX","scrollBarXHover"],"mappings":"oQAAA,SAASA,GAAT,EAAcC,YAAd,EAA4BC,MAA5B,QAA0C,2BAA1C;;;AAGA,OAAO,IAAMC,aAAa,GAAGD,MAAM,CAAC,kBAAD,CAAN,CAA2B;AACtDE,EAAAA,UAAU,EAAE,aAD0C;AAEtDC,EAAAA,UAAU,EAAE,aAF0C;AAGtDC,EAAAA,KAAK,EAAE,OAH+C,EAA3B,CAAtB;;;AAMP,OAAO,IAAMC,MAAM,GAAGN,YAAY,CAAC;AACjCO,EAAAA,IADiC,kBAC1B;AACL,WAAOR,GAAP;;;;;AAKD,GAPgC;;AASjCM,EAAAA,KATiC,mBASzB;AACN,WAAON,GAAP;;;;;;;;;;;;;;AAcD,GAxBgC;;AA0BjCS,EAAAA,SA1BiC,uBA0BrB;AACV,WAAOT,GAAP;;;;;;;AAOD,GAlCgC;;AAoCjCU,EAAAA,SApCiC,qBAoCvBC,CApCuB,EAoCb;AAClB,WAAOX,GAAP;;;;;;;;;AASkBW,IAAAA,CAAC,CAACC,6BATpB;;;AAYD,GAjDgC;;AAmDjCC,EAAAA,eAnDiC,2BAmDjBF,CAnDiB,EAmDP;AACxB,WAAOX,GAAP;;;AAGkBW,IAAAA,CAAC,CAACG,mCAHpB;;;AAMD,GA1DgC;;AA4DjCC,EAAAA,UA5DiC,sBA4DtBJ,CA5DsB,EA4DZ;AACnB,WAAOX,GAAP;;;AAGWW,IAAAA,CAAC,CAACK,4BAHb;;;;;;;;;AAYD,GAzEgC;;AA2EjCC,EAAAA,eA3EiC,2BA2EjBN,CA3EiB,EA2EP;AACxB,WAAOX,GAAP;AACWW,IAAAA,CAAC,CAACO,iCADb;;AAGD,GA/EgC;;AAiFjCC,EAAAA,UAjFiC,sBAiFtBR,CAjFsB,EAiFZ;AACnB,WAAOX,GAAP;;;AAGYW,IAAAA,CAAC,CAACK,4BAHd;;;;;;;;;AAYKb,IAAAA,aAAa,CAACE,UAZnB;;AAcoBM,IAAAA,CAAC,CAACO,iCAdtB;;;;AAkBSf,IAAAA,aAAa,CAACG,KAlBvB;;;;;AAuBqBK,IAAAA,CAAC,CAACO,iCAvBvB;;;;AA2BD,GA7GgC;;AA+GjCE,EAAAA,eA/GiC,2BA+GjBT,CA/GiB,EA+GP;AACxB,WAAOX,GAAP;AACYW,IAAAA,CAAC,CAACO,iCADd;;AAGD,GAnHgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const globalClasses = prefix('scroll-container')({\n scrollbarX: 'scrollbar-x',\n scrollbarY: 'scrollbar-y',\n inner: 'inner',\n});\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n height: 100%;\n overflow: hidden;\n position: relative;\n `;\n },\n\n inner() {\n return css`\n position: relative;\n overflow: scroll;\n max-height: 100%;\n max-width: 100%;\n\n /* Hide scrobars without losing functionality */\n scrollbar-width: none;\n -ms-overflow-style: none;\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n `;\n },\n\n innerIE11() {\n return css`\n /* IE sometimes enabled scroll: http://codepen.io/anon/pen/RRrLNX */\n margin-bottom: -1px;\n padding-bottom: 1px;\n margin-right: -1px;\n padding-right: 1px;\n `;\n },\n\n scrollBar(t: Theme) {\n return css`\n position: absolute;\n z-index: 200;\n\n &::after {\n content: '';\n display: block;\n border-radius: 5px;\n position: absolute;\n background: ${t.scrollContainerScrollBarColor};\n }\n `;\n },\n\n scrollBarInvert(t: Theme) {\n return css`\n &::after {\n background: #ccc;\n background: ${t.scrollContainerScrollBarInvertColor};\n }\n `;\n },\n\n scrollBarY(t: Theme) {\n return css`\n right: 2px;\n transition: width 0.2s;\n width: ${t.scrollContainerScrollBarSize};\n\n &::after {\n bottom: 1px;\n left: 0;\n right: 0;\n top: 1px;\n }\n `;\n },\n\n scrollBarYHover(t: Theme) {\n return css`\n width: ${t.scrollContainerScrollBarHoverSize};\n `;\n },\n\n scrollBarX(t: Theme) {\n return css`\n bottom: 1px;\n transition: height 0.2s;\n height: ${t.scrollContainerScrollBarSize};\n\n &::after {\n bottom: 0px;\n left: 1px;\n right: 1px;\n top: 0;\n }\n\n .${globalClasses.scrollbarY} ~ & {\n &::after {\n right: calc(${t.scrollContainerScrollBarHoverSize} + 4px) !important;\n }\n }\n\n & ~ .${globalClasses.inner} {\n &::after {\n content: ' ';\n width: 100%;\n display: block;\n height: calc(${t.scrollContainerScrollBarHoverSize} + 2px);\n }\n }\n `;\n },\n\n scrollBarXHover(t: Theme) {\n return css`\n height: ${t.scrollContainerScrollBarHoverSize};\n `;\n },\n});\n"]}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { Theme } from '../../lib/theming/Theme';
|
|
2
|
-
export declare const globalClasses: {
|
|
3
|
-
scrollbarX: string;
|
|
4
|
-
scrollbarY: string;
|
|
5
|
-
inner: string;
|
|
6
|
-
};
|
|
7
|
-
export declare const styles: {
|
|
8
|
-
root(): string;
|
|
9
|
-
inner(): string;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
import { Theme } from '../../lib/theming/Theme';
|
|
2
|
+
export declare const globalClasses: {
|
|
3
|
+
scrollbarX: string;
|
|
4
|
+
scrollbarY: string;
|
|
5
|
+
inner: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const styles: {
|
|
8
|
+
root(): string;
|
|
9
|
+
inner(): string;
|
|
10
|
+
innerIE11(): string;
|
|
11
|
+
scrollBar(t: Theme): string;
|
|
12
|
+
scrollBarInvert(t: Theme): string;
|
|
13
|
+
scrollBarY(t: Theme): string;
|
|
14
|
+
scrollBarYHover(t: Theme): string;
|
|
15
|
+
scrollBarX(t: Theme): string;
|
|
16
|
+
scrollBarXHover(t: Theme): string;
|
|
17
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './ScrollContainer';
|
|
1
|
+
export * from './ScrollContainer';
|