@skbkontur/react-ui 4.0.6 → 4.1.2-fix-zindex
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 +53 -0
- package/README.md +1 -1
- package/cjs/components/Autocomplete/Autocomplete.d.ts +3 -0
- package/cjs/components/Autocomplete/Autocomplete.js +20 -7
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +4 -5
- package/cjs/components/Button/Button.js +8 -12
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +3 -0
- package/cjs/components/Center/Center.js +8 -3
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +8 -0
- package/cjs/components/Checkbox/Checkbox.js +37 -3
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.d.ts +1 -0
- package/cjs/components/Checkbox/Checkbox.styles.js +27 -24
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyHelper.js +18 -12
- package/cjs/components/CurrencyInput/CurrencyHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +3 -0
- package/cjs/components/CurrencyInput/CurrencyInput.js +23 -10
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInputHelper.js +7 -5
- package/cjs/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
- package/cjs/components/CurrencyInput/CursorHelper.js +19 -16
- package/cjs/components/CurrencyInput/CursorHelper.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +3 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +6 -2
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/DateInput/DateInput.js +5 -1
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +2 -2
- package/cjs/components/DateInput/helpers/InternalDateMediator.js +12 -2
- package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/cjs/components/DateInput/helpers/inputNumber.d.ts +1 -1
- package/cjs/components/DateInput/helpers/inputNumber.js +45 -12
- package/cjs/components/DateInput/helpers/inputNumber.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +5 -0
- package/cjs/components/DatePicker/DatePicker.js +14 -3
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/Picker.js +7 -2
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +3 -0
- package/cjs/components/Dropdown/Dropdown.js +7 -2
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -4
- package/cjs/components/DropdownMenu/DropdownMenu.js +2 -16
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.d.ts +5 -0
- package/cjs/components/FileUploader/FileUploader.js +18 -9
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.styles.d.ts +3 -2
- package/cjs/components/FileUploader/FileUploader.styles.js +21 -15
- package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +3 -0
- package/cjs/components/FxInput/FxInput.js +7 -3
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +4 -0
- package/cjs/components/Gapped/Gapped.js +13 -7
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +3 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js +9 -7
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js +5 -7
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +3 -0
- package/cjs/components/Group/Group.js +80 -33
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +4 -5
- package/cjs/components/Input/Input.js +21 -24
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +2 -13
- package/cjs/components/Kebab/Kebab.js +5 -29
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +3 -0
- package/cjs/components/Link/Link.js +7 -3
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +4 -0
- package/cjs/components/Loader/Loader.js +8 -3
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.d.ts +3 -0
- package/cjs/components/MenuHeader/MenuHeader.js +7 -2
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +4 -0
- package/cjs/components/MenuItem/MenuItem.js +10 -4
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.styles.js +3 -2
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.d.ts +3 -0
- package/cjs/components/MenuSeparator/MenuSeparator.js +7 -3
- package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/cjs/components/Modal/Modal.d.ts +5 -0
- package/cjs/components/Modal/Modal.js +10 -3
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.js +10 -6
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js +3 -2
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.d.ts +3 -0
- package/cjs/components/Modal/ModalFooter.js +8 -3
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +3 -0
- package/cjs/components/Modal/ModalHeader.js +9 -3
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +20 -3
- package/cjs/components/Paging/Paging.js +29 -10
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/PagingDefaultComponent.d.ts +9 -0
- package/cjs/components/Paging/PagingDefaultComponent.js +21 -0
- package/cjs/components/Paging/PagingDefaultComponent.js.map +1 -0
- package/cjs/components/PasswordInput/PasswordInput.d.ts +7 -0
- package/cjs/components/PasswordInput/PasswordInput.js +36 -11
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInputIcon.d.ts +3 -0
- package/cjs/components/PasswordInput/PasswordInputIcon.js +15 -0
- package/cjs/components/PasswordInput/PasswordInputIcon.js.map +1 -0
- package/cjs/components/Radio/Radio.d.ts +3 -0
- package/cjs/components/Radio/Radio.js +7 -3
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/Radio/Radio.styles.js +4 -7
- package/cjs/components/Radio/Radio.styles.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +9 -0
- package/cjs/components/RadioGroup/RadioGroup.js +22 -5
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +7 -2
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js +3 -4
- package/cjs/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +4 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js +14 -4
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +3 -0
- package/cjs/components/Select/Select.js +43 -17
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +4 -0
- package/cjs/components/SidePage/SidePage.js +9 -3
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +3 -0
- package/cjs/components/SidePage/SidePageBody.js +10 -3
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +3 -0
- package/cjs/components/SidePage/SidePageContainer.js +7 -2
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +3 -0
- package/cjs/components/SidePage/SidePageFooter.js +11 -3
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +4 -0
- package/cjs/components/SidePage/SidePageHeader.js +9 -4
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +3 -1
- package/cjs/components/Spinner/Spinner.js +8 -8
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js +16 -5
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +3 -0
- package/cjs/components/Sticky/Sticky.js +7 -3
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +3 -0
- package/cjs/components/Switcher/Switcher.js +7 -3
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.js +2 -2
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Tabs/Indicator.js +4 -2
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +3 -0
- package/cjs/components/Tabs/Tab.js +7 -2
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.d.ts +4 -0
- package/cjs/components/Tabs/Tabs.js +12 -3
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +6 -2
- package/cjs/components/Textarea/Textarea.js +14 -9
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.d.ts +1 -2
- package/cjs/components/Textarea/TextareaCounter.js +21 -12
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +6 -0
- package/cjs/components/Toast/Toast.js +9 -2
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastStatic.js +1 -1
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toast/ToastView.js +6 -5
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.d.ts +1 -1
- package/cjs/components/Toast/ToastView.styles.js +3 -2
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +4 -1
- package/cjs/components/Toggle/Toggle.js +7 -3
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Toggle/Toggle.styles.js +12 -10
- package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +3 -0
- package/cjs/components/Token/Token.js +20 -3
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/Token/Token.styles.js +13 -6
- package/cjs/components/Token/Token.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +14 -0
- package/cjs/components/TokenInput/TokenInput.js +36 -13
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.styles.js +3 -2
- package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.js +4 -3
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +3 -0
- package/cjs/components/Tooltip/Tooltip.js +12 -4
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -1
- package/cjs/components/TooltipMenu/TooltipMenu.js +9 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/hooks/useDrop.js +3 -1
- package/cjs/hooks/useDrop.js.map +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +2 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/Calendar/Calendar.d.ts +6 -0
- package/cjs/internal/Calendar/Calendar.js +12 -5
- package/cjs/internal/Calendar/Calendar.js.map +1 -1
- package/cjs/internal/Calendar/CalendarDateShape.d.ts +1 -1
- package/cjs/internal/Calendar/MonthView.js +5 -4
- package/cjs/internal/Calendar/MonthView.js.map +1 -1
- package/cjs/internal/Calendar/MonthViewModel.js +36 -17
- package/cjs/internal/Calendar/MonthViewModel.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js +7 -5
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -0
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js +28 -5
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js +4 -2
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +3 -0
- package/cjs/internal/CustomComboBox/CustomComboBox.js +9 -4
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +16 -16
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +35 -35
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/DataTids/DATATIDS.md +12 -0
- package/cjs/internal/DataTids/DataTids.d.ts +12 -0
- package/cjs/internal/DataTids/DataTids.js +46 -0
- package/cjs/internal/DataTids/DataTids.js.map +1 -0
- package/cjs/internal/DataTids/DataTids.styles.d.ts +7 -0
- package/cjs/internal/DataTids/DataTids.styles.js +41 -0
- package/cjs/internal/DataTids/DataTids.styles.js.map +1 -0
- package/cjs/internal/DataTids/componentsDataTids.d.ts +5 -0
- package/cjs/internal/DataTids/componentsDataTids.js +16 -0
- package/cjs/internal/DataTids/componentsDataTids.js.map +1 -0
- package/cjs/internal/DateSelect/DateSelect.d.ts +4 -0
- package/cjs/internal/DateSelect/DateSelect.js +28 -12
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +3 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +7 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +14 -6
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +3 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +6 -2
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js +14 -10
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +5 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +10 -4
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.d.ts +3 -0
- package/cjs/internal/InternalMenu/InternalMenu.js +10 -12
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.styles.js +2 -2
- package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
- package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.d.ts +2 -0
- package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.js +16 -0
- package/cjs/internal/InternalMenu/addIconPaddingIfPartOfMenu.js.map +1 -0
- package/cjs/internal/MaskedInput/MaskedInput.d.ts +3 -0
- package/cjs/internal/MaskedInput/MaskedInput.js +16 -5
- package/cjs/internal/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/internal/Menu/Menu.d.ts +3 -0
- package/cjs/internal/Menu/Menu.js +22 -21
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/Menu.styles.js +5 -3
- package/cjs/internal/Menu/Menu.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +4 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +10 -3
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +6 -0
- package/cjs/internal/Popup/Popup.js +18 -13
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.js +2 -1
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +8 -0
- package/cjs/internal/PopupMenu/PopupMenu.js +22 -4
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/PopupMenu/validatePositions.js +6 -6
- package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderContainerTypes.d.ts +1 -0
- package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +9 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +9 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.js +4 -1
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +11 -19
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/SizesGroup.d.ts +4 -0
- package/cjs/internal/ThemePlayground/SizesGroup.js +20 -0
- package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -0
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +4 -0
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +14 -2
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeEditor.js +6 -1
- package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.js +18 -6
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemePlayground/constants.d.ts +3 -1
- package/cjs/internal/ThemePlayground/constants.js +3 -1
- package/cjs/internal/ThemePlayground/constants.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js +4 -7
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.js +5 -6
- package/cjs/internal/ThemeShowcase/VariablesCollector.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +8 -0
- package/cjs/internal/ZIndex/ZIndex.js +25 -3
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndexStorage.d.ts +2 -1
- package/cjs/internal/ZIndex/ZIndexStorage.js +13 -6
- package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
- package/cjs/internal/icons/16px/index.d.ts +19 -19
- package/cjs/internal/icons/16px/index.js +45 -38
- package/cjs/internal/icons/16px/index.js.map +1 -1
- package/cjs/internal/icons/20px/svg.js +6 -0
- package/cjs/internal/icons/20px/svg.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +20 -1
- package/cjs/internal/themes/DefaultTheme.js +40 -5
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/NotFlat.d.ts +6 -0
- package/cjs/internal/themes/NotFlat.js +12 -2
- package/cjs/internal/themes/NotFlat.js.map +1 -1
- package/cjs/internal/themes/Theme2022.d.ts +66 -0
- package/cjs/internal/themes/Theme2022.js +100 -0
- package/cjs/internal/themes/Theme2022.js.map +1 -0
- package/cjs/internal/themes/Theme2022Dark.d.ts +5 -0
- package/cjs/internal/themes/Theme2022Dark.js +9 -0
- package/cjs/internal/themes/Theme2022Dark.js.map +1 -0
- package/cjs/lib/animation/index.d.ts +1 -1
- package/cjs/lib/animation/index.js +3 -3
- package/cjs/lib/animation/index.js.map +1 -1
- package/cjs/lib/date/InternalDate.js +23 -9
- package/cjs/lib/date/InternalDate.js.map +1 -1
- package/cjs/lib/date/InternalDateCalculator.js +16 -2
- package/cjs/lib/date/InternalDateCalculator.js.map +1 -1
- package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
- package/cjs/lib/date/InternalDateGetter.js +27 -7
- package/cjs/lib/date/InternalDateGetter.js.map +1 -1
- package/cjs/lib/date/InternalDateTransformer.js +11 -2
- package/cjs/lib/date/InternalDateTransformer.js.map +1 -1
- package/cjs/lib/date/InternalDateValidator.js +52 -17
- package/cjs/lib/date/InternalDateValidator.js.map +1 -1
- package/cjs/lib/date/types.d.ts +4 -0
- package/cjs/lib/date/types.js.map +1 -1
- package/cjs/lib/events/MouseDrag.js +5 -1
- package/cjs/lib/events/MouseDrag.js.map +1 -1
- package/cjs/lib/events/keyboard/extractCode.js +7 -5
- package/cjs/lib/events/keyboard/extractCode.js.map +1 -1
- package/cjs/lib/needsPolyfillPlaceholder.d.ts +6 -0
- package/cjs/lib/needsPolyfillPlaceholder.js +19 -0
- package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -0
- package/cjs/lib/rootNode/getRootNode.d.ts +9 -0
- package/cjs/lib/rootNode/getRootNode.js +37 -8
- package/cjs/lib/rootNode/getRootNode.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +9 -1
- package/cjs/lib/rootNode/rootNodeDecorator.js +11 -2
- package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/cjs/lib/stringUtils.js +3 -1
- package/cjs/lib/stringUtils.js.map +1 -1
- package/cjs/lib/styles/ColorFactory.js +9 -9
- package/cjs/lib/styles/ColorFactory.js.map +1 -1
- package/cjs/lib/styles/ColorHelpers.d.ts +1 -0
- package/cjs/lib/styles/ColorHelpers.js +33 -10
- package/cjs/lib/styles/ColorHelpers.js.map +1 -1
- package/cjs/lib/styles/ColorObject.js +3 -2
- package/cjs/lib/styles/ColorObject.js.map +1 -1
- package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -0
- package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js +9 -0
- package/cjs/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -0
- package/cjs/lib/taskWithDelayAndMinimalDuration.js +3 -1
- package/cjs/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/cjs/lib/theming/Emotion.js +5 -2
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/theming/ThemeFactory.js +5 -1
- package/cjs/lib/theming/ThemeFactory.js.map +1 -1
- package/cjs/lib/theming/ThemeHelpers.js +7 -2
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- package/cjs/lib/theming/themes/Theme2022.d.ts +1 -0
- package/cjs/lib/theming/themes/Theme2022.js +6 -0
- package/cjs/lib/theming/themes/Theme2022.js.map +1 -0
- package/cjs/lib/theming/themes/Theme2022Dark.d.ts +1 -0
- package/cjs/lib/theming/themes/Theme2022Dark.js +9 -0
- package/cjs/lib/theming/themes/Theme2022Dark.js.map +1 -0
- package/cjs/lib/utils.d.ts +15 -0
- package/cjs/lib/utils.js +45 -9
- package/cjs/lib/utils.js.map +1 -1
- package/components/Autocomplete/Autocomplete/Autocomplete.js +16 -11
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +3 -0
- package/components/Button/Button/Button.js +8 -10
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +4 -5
- package/components/Center/Center/Center.js +10 -5
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +3 -0
- package/components/Checkbox/Checkbox/Checkbox.js +33 -2
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +8 -0
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +22 -18
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.d.ts +1 -0
- package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js +12 -11
- package/components/CurrencyInput/CurrencyHelper/CurrencyHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +30 -17
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +3 -0
- package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js +7 -1
- package/components/CurrencyInput/CurrencyInputHelper/CurrencyInputHelper.js.map +1 -1
- package/components/CurrencyInput/CursorHelper/CursorHelper.js +18 -11
- package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +6 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel.d.ts +3 -0
- package/components/DateInput/DateInput/DateInput.js +9 -1
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +16 -10
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator.d.ts +2 -2
- package/components/DateInput/helpers/inputNumber/inputNumber.js +53 -16
- package/components/DateInput/helpers/inputNumber/inputNumber.js.map +1 -1
- package/components/DateInput/helpers/inputNumber.d.ts +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +6 -0
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +5 -0
- package/components/DatePicker/Picker/Picker.js +3 -1
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js +9 -5
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +3 -0
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +3 -16
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +1 -4
- package/components/FileUploader/FileUploader/FileUploader.js +18 -9
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.d.ts +5 -0
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +15 -12
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
- package/components/FileUploader/FileUploader.styles.d.ts +3 -2
- package/components/FxInput/FxInput/FxInput.js +6 -2
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +3 -0
- package/components/Gapped/Gapped/Gapped.js +16 -8
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +4 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +9 -8
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +3 -0
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js +1 -2
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js.map +1 -1
- package/components/Group/Group/Group.js +66 -30
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +3 -0
- package/components/Input/Input/Input.js +18 -31
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +4 -5
- package/components/Kebab/Kebab/Kebab.js +3 -13
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +2 -13
- package/components/Link/Link/Link.js +10 -5
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +3 -0
- package/components/Loader/Loader/Loader.js +10 -6
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +4 -0
- package/components/MenuHeader/MenuHeader/MenuHeader.js +4 -0
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.d.ts +3 -0
- package/components/MenuItem/MenuItem/MenuItem.js +15 -9
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +4 -0
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +1 -1
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +4 -0
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.d.ts +3 -0
- package/components/Modal/Modal/Modal.js +9 -3
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +5 -0
- package/components/Modal/Modal.styles/Modal.styles.js +4 -4
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/ModalClose/ModalClose.js +2 -1
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js +5 -1
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalFooter.d.ts +3 -0
- package/components/Modal/ModalHeader/ModalHeader.js +5 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +3 -0
- package/components/Paging/Paging/Paging.js +24 -18
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +20 -3
- package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js +19 -0
- package/components/Paging/PagingDefaultComponent/PagingDefaultComponent.js.map +1 -0
- package/components/Paging/PagingDefaultComponent/package.json +6 -0
- package/components/Paging/PagingDefaultComponent.d.ts +9 -0
- package/components/PasswordInput/PasswordInput/PasswordInput.js +39 -14
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +7 -0
- package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js +15 -0
- package/components/PasswordInput/PasswordInputIcon/PasswordInputIcon.js.map +1 -0
- package/components/PasswordInput/PasswordInputIcon/package.json +6 -0
- package/components/PasswordInput/PasswordInputIcon.d.ts +3 -0
- package/components/Radio/Radio/Radio.js +10 -5
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +3 -0
- package/components/Radio/Radio.styles/Radio.styles.js +2 -1
- package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js +25 -13
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +9 -0
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +5 -0
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js +3 -3
- package/components/ResponsiveLayout/ResponsiveLayoutEvents/ResponsiveLayoutEvents.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +6 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +4 -0
- package/components/Select/Select/Select.js +35 -15
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +3 -0
- package/components/SidePage/SidePage/SidePage.js +8 -3
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +4 -0
- package/components/SidePage/SidePageBody/SidePageBody.js +10 -6
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +3 -0
- package/components/SidePage/SidePageContainer/SidePageContainer.js +10 -6
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +3 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js +10 -6
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +3 -0
- package/components/SidePage/SidePageHeader/SidePageHeader.js +12 -7
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +4 -0
- package/components/Spinner/Spinner/Spinner.js +14 -6
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +3 -1
- package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +18 -4
- package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +1 -1
- package/components/Sticky/Sticky/Sticky.js +4 -0
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +3 -0
- package/components/Switcher/Switcher/Switcher.js +4 -0
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +3 -0
- package/components/Switcher/Switcher.styles/Switcher.styles.js +1 -1
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Tabs/Indicator/Indicator.js +2 -0
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Tab/Tab.js +4 -0
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +3 -0
- package/components/Tabs/Tabs/Tabs.js +11 -6
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +4 -0
- package/components/Textarea/Textarea/Textarea.js +21 -15
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +6 -2
- package/components/Textarea/TextareaCounter/TextareaCounter.js +13 -2
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Textarea/TextareaCounter.d.ts +1 -2
- package/components/Toast/Toast/Toast.js +16 -10
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +6 -0
- package/components/Toast/ToastStatic/ToastStatic.js +2 -2
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastView/ToastView.js +5 -4
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.styles/ToastView.styles.js +2 -2
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +1 -1
- package/components/Toggle/Toggle/Toggle.js +8 -4
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +4 -1
- package/components/Toggle/Toggle.styles/Toggle.styles.js +3 -4
- package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
- package/components/Token/Token/Token.js +16 -1
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +3 -0
- package/components/Token/Token.styles/Token.styles.js +11 -4
- package/components/Token/Token.styles/Token.styles.js.map +1 -1
- package/components/TokenInput/TokenInput/TokenInput.js +30 -16
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +14 -0
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +1 -1
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +2 -0
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/Tooltip/Tooltip/Tooltip.js +9 -2
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +3 -0
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +18 -12
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +4 -1
- package/hooks/useDrop/useDrop.js +5 -1
- package/hooks/useDrop/useDrop.js.map +1 -1
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internal/Calendar/Calendar/Calendar.js +13 -5
- package/internal/Calendar/Calendar/Calendar.js.map +1 -1
- package/internal/Calendar/Calendar.d.ts +6 -0
- package/internal/Calendar/CalendarDateShape.d.ts +1 -1
- package/internal/Calendar/MonthView/MonthView.js +4 -3
- package/internal/Calendar/MonthView/MonthView.js.map +1 -1
- package/internal/Calendar/MonthViewModel/MonthViewModel.js +35 -18
- package/internal/Calendar/MonthViewModel/MonthViewModel.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +7 -8
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +1 -0
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +34 -19
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxMenu.d.ts +7 -0
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +2 -0
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +21 -17
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +3 -0
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +35 -35
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +16 -16
- package/internal/DataTids/DATATIDS.md +12 -0
- package/internal/DataTids/DataTids/DataTids.js +69 -0
- package/internal/DataTids/DataTids/DataTids.js.map +1 -0
- package/internal/DataTids/DataTids/package.json +6 -0
- package/internal/DataTids/DataTids.d.ts +12 -0
- package/internal/DataTids/DataTids.styles/DataTids.styles.js +22 -0
- package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +1 -0
- package/internal/DataTids/DataTids.styles/package.json +6 -0
- package/internal/DataTids/DataTids.styles.d.ts +7 -0
- package/internal/DataTids/componentsDataTids/componentsDataTids.js +14 -0
- package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +1 -0
- package/internal/DataTids/componentsDataTids/package.json +6 -0
- package/internal/DataTids/componentsDataTids.d.ts +5 -0
- package/internal/DateSelect/DateSelect/DateSelect.js +27 -17
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +4 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +5 -1
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +12 -5
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +7 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +4 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +3 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js +2 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +8 -2
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +5 -1
- package/internal/InternalMenu/InternalMenu/InternalMenu.js +18 -21
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.d.ts +3 -0
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +1 -1
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
- package/internal/InternalMenu/addIconPaddingIfPartOfMenu/addIconPaddingIfPartOfMenu.js +14 -0
- package/internal/InternalMenu/addIconPaddingIfPartOfMenu/addIconPaddingIfPartOfMenu.js.map +1 -0
- package/internal/InternalMenu/addIconPaddingIfPartOfMenu/package.json +6 -0
- package/internal/InternalMenu/addIconPaddingIfPartOfMenu.d.ts +2 -0
- package/internal/MaskedInput/MaskedInput/MaskedInput.js +14 -3
- package/internal/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/internal/MaskedInput/MaskedInput.d.ts +3 -0
- package/internal/Menu/Menu/Menu.js +15 -19
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +3 -0
- package/internal/Menu/Menu.styles/Menu.styles.js +1 -1
- package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopup/MobilePopup.js +6 -0
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +4 -0
- package/internal/Popup/Popup/Popup.js +15 -9
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +6 -0
- package/internal/Popup/PopupPin/PopupPin.js +2 -0
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +15 -2
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +8 -0
- package/internal/PopupMenu/validatePositions/validatePositions.js +6 -6
- package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
- package/internal/RenderContainer/RenderContainerTypes.d.ts +1 -0
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +11 -2
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.d.ts +9 -1
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +5 -1
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/ThemePlayground/Playground/Playground.js +15 -29
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js +29 -0
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -0
- package/internal/ThemePlayground/SizesGroup/package.json +6 -0
- package/internal/ThemePlayground/SizesGroup.d.ts +4 -0
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +14 -2
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground.d.ts +4 -0
- package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js +5 -1
- package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js +16 -5
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemePlayground/constants/constants.js +2 -0
- package/internal/ThemePlayground/constants/constants.js.map +1 -1
- package/internal/ThemePlayground/constants.d.ts +3 -1
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +3 -6
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js +4 -6
- package/internal/ThemeShowcase/VariablesCollector/VariablesCollector.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +23 -8
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +8 -0
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +12 -6
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
- package/internal/ZIndex/ZIndexStorage.d.ts +2 -1
- package/internal/icons/16px/index/index.js +28 -20
- package/internal/icons/16px/index/index.js.map +1 -1
- package/internal/icons/16px/index.d.ts +19 -19
- package/internal/icons/20px/svg/svg.js +5 -0
- package/internal/icons/20px/svg/svg.js.map +1 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js +48 -4
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +20 -1
- package/internal/themes/NotFlat/NotFlat.js +15 -0
- package/internal/themes/NotFlat/NotFlat.js.map +1 -1
- package/internal/themes/NotFlat.d.ts +6 -0
- package/internal/themes/Theme2022/Theme2022.js +78 -0
- package/internal/themes/Theme2022/Theme2022.js.map +1 -0
- package/internal/themes/Theme2022/package.json +6 -0
- package/internal/themes/Theme2022.d.ts +66 -0
- package/internal/themes/Theme2022Dark/Theme2022Dark.js +17 -0
- package/internal/themes/Theme2022Dark/Theme2022Dark.js.map +1 -0
- package/internal/themes/Theme2022Dark/package.json +6 -0
- package/internal/themes/Theme2022Dark.d.ts +5 -0
- package/lib/animation/index/index.js +1 -1
- package/lib/animation/index/index.js.map +1 -1
- package/lib/animation/index.d.ts +1 -1
- package/lib/date/InternalDate/InternalDate.js +16 -1
- package/lib/date/InternalDate/InternalDate.js.map +1 -1
- package/lib/date/InternalDateCalculator/InternalDateCalculator.js +14 -2
- package/lib/date/InternalDateCalculator/InternalDateCalculator.js.map +1 -1
- package/lib/date/InternalDateGetter/InternalDateGetter.js +23 -7
- package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
- package/lib/date/InternalDateGetter.d.ts +1 -1
- package/lib/date/InternalDateTransformer/InternalDateTransformer.js +11 -1
- package/lib/date/InternalDateTransformer/InternalDateTransformer.js.map +1 -1
- package/lib/date/InternalDateValidator/InternalDateValidator.js +75 -34
- package/lib/date/InternalDateValidator/InternalDateValidator.js.map +1 -1
- package/lib/date/types/types.js.map +1 -1
- package/lib/date/types.d.ts +4 -0
- package/lib/events/MouseDrag/MouseDrag.js +5 -1
- package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
- package/lib/events/keyboard/extractCode/extractCode.js +5 -5
- package/lib/events/keyboard/extractCode/extractCode.js.map +1 -1
- package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +21 -0
- package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -0
- package/lib/needsPolyfillPlaceholder/package.json +6 -0
- package/lib/needsPolyfillPlaceholder.d.ts +6 -0
- package/lib/rootNode/getRootNode/getRootNode.js +36 -8
- package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
- package/lib/rootNode/getRootNode.d.ts +9 -0
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +3 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +9 -1
- package/lib/stringUtils/stringUtils.js +4 -1
- package/lib/stringUtils/stringUtils.js.map +1 -1
- package/lib/styles/ColorFactory/ColorFactory.js +9 -9
- package/lib/styles/ColorFactory/ColorFactory.js.map +1 -1
- package/lib/styles/ColorHelpers/ColorHelpers.js +26 -9
- package/lib/styles/ColorHelpers/ColorHelpers.js.map +1 -1
- package/lib/styles/ColorHelpers.d.ts +1 -0
- package/lib/styles/ColorObject/ColorObject.js +2 -2
- package/lib/styles/ColorObject/ColorObject.js.map +1 -1
- package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js +9 -0
- package/lib/styles/getLabGrotesqueBaselineCompensation/getLabGrotesqueBaselineCompensation.js.map +1 -0
- package/lib/styles/getLabGrotesqueBaselineCompensation/package.json +6 -0
- package/lib/styles/getLabGrotesqueBaselineCompensation.d.ts +1 -0
- package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js +4 -1
- package/lib/taskWithDelayAndMinimalDuration/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/lib/theming/Emotion/Emotion.js +5 -2
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/theming/ThemeFactory/ThemeFactory.js +5 -2
- package/lib/theming/ThemeFactory/ThemeFactory.js.map +1 -1
- package/lib/theming/ThemeHelpers/ThemeHelpers.js +5 -1
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/themes/Theme2022/Theme2022.js +4 -0
- package/lib/theming/themes/Theme2022/Theme2022.js.map +1 -0
- package/lib/theming/themes/Theme2022/package.json +6 -0
- package/lib/theming/themes/Theme2022.d.ts +1 -0
- package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js +5 -0
- package/lib/theming/themes/Theme2022Dark/Theme2022Dark.js.map +1 -0
- package/lib/theming/themes/Theme2022Dark/package.json +6 -0
- package/lib/theming/themes/Theme2022Dark.d.ts +1 -0
- package/lib/utils/utils.js +42 -6
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +15 -0
- package/package.json +5 -6
- package/cjs/components/Button/Corners.d.ts +0 -6
- package/cjs/components/Button/Corners.js +0 -5
- package/cjs/components/Button/Corners.js.map +0 -1
- package/cjs/lib/polyfillPlaceholder.d.ts +0 -1
- package/cjs/lib/polyfillPlaceholder.js +0 -17
- package/cjs/lib/polyfillPlaceholder.js.map +0 -1
- package/components/Button/Corners/Corners.js +0 -6
- package/components/Button/Corners/Corners.js.map +0 -1
- package/components/Button/Corners/package.json +0 -6
- package/components/Button/Corners.d.ts +0 -6
- package/lib/polyfillPlaceholder/package.json +0 -6
- package/lib/polyfillPlaceholder/polyfillPlaceholder.js +0 -12
- package/lib/polyfillPlaceholder/polyfillPlaceholder.js.map +0 -1
- package/lib/polyfillPlaceholder.d.ts +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SidePage.tsx"],"names":["React","CSSTransition","FocusLock","isKeyEscape","LayoutEvents","stopPropagation","HideBodyVerticalScroll","ModalStack","RenderContainer","RenderLayer","ZIndex","ThemeContext","CommonWrapper","cx","isTestEnv","ResponsiveLayout","SidePageBody","SidePageContainer","SidePageContext","SidePageFooter","SidePageHeader","styles","TRANSITION_TIMEOUT","SidePage","state","hasHeader","hasFooter","hasPanel","stackSubscription","layout","header","footer","rootRef","createRef","updateLayout","update","getSidePageContextProps","requestClose","getWidth","headerRef","footerRef","setHasHeader","setHasFooter","setHasPanel","clientWidth","handleStackChange","stack","sidePages","filter","x","props","fromLeft","currentSidePagePosition","indexOf","hasMargin","length","hasShadow","hasBackground","isBlocking","setState","stackPosition","handleClickOutside","e","ignoreBackgroundClick","MouseEvent","clientX","document","documentElement","handleKeyDown","disableClose","onClose","ref","layoutRef","componentDidMount","window","addEventListener","add","componentWillUnmount","removeEventListener","remove","render","theme","renderMain","blockBackground","disableAnimations","isMobile","renderShadow","getTransitionNames","enter","exit","renderContainer","width","disableFocusLock","offset","root","mobileRoot","emit","undefined","right","left","focusLock","wrapper","wrapperLeft","wrapperMarginLeft","wrapperMarginRight","shadow","children","overlay","background","backgroundGray","transition","transitionRight","transitionLeft","enterActive","transitionActive","transitionLeave","exitActive","transitionLeaveActive","appear","appearActive","Component","__KONTUR_REACT_UI__","Header","Body","Footer","Container","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport FocusLock from 'react-focus-lock';\n\nimport { isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { stopPropagation } from '../../lib/events/stopPropagation';\nimport { HideBodyVerticalScroll } from '../../internal/HideBodyVerticalScroll';\nimport { ModalStack, ModalStackSubscription } from '../../lib/ModalStack';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ResponsiveLayout } from '../ResponsiveLayout';\n\nimport { SidePageBody } from './SidePageBody';\nimport { SidePageContainer } from './SidePageContainer';\nimport { SidePageContext, SidePageContextType } from './SidePageContext';\nimport { SidePageFooter } from './SidePageFooter';\nimport { SidePageHeader } from './SidePageHeader';\nimport { styles } from './SidePage.styles';\n\nexport interface SidePageProps extends CommonProps {\n /**\n * Добавить блокирующий фон, когда сайдпейдж открыт\n */\n blockBackground?: boolean;\n\n /**\n * Отключает событие onClose, также дизейблит кнопку закрытия сайдпейджа\n */\n disableClose?: boolean;\n\n /**\n * Не закрывать сайдпейдж при клике на фон.\n */\n ignoreBackgroundClick?: boolean;\n\n /**\n * Задать ширину сайдпейджа\n */\n width?: number | string;\n\n /**\n * Вызывается, когда пользователь запросил закрытие сайдпейджа (нажал на фон, на\n * Escape или на крестик).\n */\n onClose?: () => void;\n\n /**\n * Показывать сайдпэйдж слева\n *\n */\n fromLeft?: boolean;\n\n /**\n * Отключить анимации\n *\n */\n disableAnimations?: boolean;\n\n /**\n * Работает только при заблокированном фоне: `blockBackground = true`\n */\n disableFocusLock: boolean;\n\n /**\n * задает отступ от края экрана\n */\n offset?: number | string;\n}\n\nexport interface SidePageState {\n stackPosition?: number;\n hasMargin?: boolean;\n hasShadow?: boolean;\n hasBackground?: boolean;\n hasHeader: boolean;\n hasFooter: boolean;\n hasPanel: boolean;\n}\n\nconst TRANSITION_TIMEOUT = 200;\n\n/**\n * Сайдпейдж\n *\n * Содержит в себе три компоненты: **SidePage.Header**,\n * **SidePage.Body** и **SidePage.Footer**\n *\n * Для отображения серой плашки в футере в компонент\n * **Footer** необходимо передать пропс **panel**\n */\nexport class SidePage extends React.Component<SidePageProps, SidePageState> {\n public static __KONTUR_REACT_UI__ = 'SidePage';\n\n public static Header = SidePageHeader;\n public static Body = SidePageBody;\n public static Footer = SidePageFooter;\n public static Container = SidePageContainer;\n public state: SidePageState = {\n hasHeader: false,\n hasFooter: false,\n hasPanel: false,\n };\n private theme!: Theme;\n private stackSubscription: ModalStackSubscription | null = null;\n private layout: HTMLElement | null = null;\n private header: SidePageHeader | null = null;\n private footer: SidePageFooter | null = null;\n private rootRef = React.createRef<HTMLDivElement>();\n\n public componentDidMount() {\n window.addEventListener('keydown', this.handleKeyDown);\n this.stackSubscription = ModalStack.add(this, this.handleStackChange);\n }\n\n public componentWillUnmount() {\n window.removeEventListener('keydown', this.handleKeyDown);\n if (this.stackSubscription != null) {\n this.stackSubscription.remove();\n }\n ModalStack.remove(this);\n }\n\n /**\n * Обновляет разметку компонента.\n * @public\n */\n public updateLayout = (): void => {\n this.header?.update();\n this.footer?.update();\n };\n\n public static defaultProps = {\n disableAnimations: isTestEnv,\n disableFocusLock: true,\n offset: 0,\n };\n\n public render(): JSX.Element {\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 { blockBackground, disableAnimations } = this.props;\n\n return (\n <RenderContainer>\n <CommonWrapper {...this.props}>\n <div>\n <ResponsiveLayout>\n {({ isMobile }) => {\n return (\n <>\n {blockBackground && this.renderShadow()}\n <CSSTransition\n in\n classNames={this.getTransitionNames()}\n appear={!disableAnimations}\n enter={!disableAnimations}\n exit={false}\n timeout={{\n enter: TRANSITION_TIMEOUT,\n exit: TRANSITION_TIMEOUT,\n }}\n nodeRef={this.rootRef}\n >\n {this.renderContainer(isMobile)}\n </CSSTransition>\n {isMobile && <HideBodyVerticalScroll />}\n </>\n );\n }}\n </ResponsiveLayout>\n </div>\n </CommonWrapper>\n </RenderContainer>\n );\n }\n\n private renderContainer(isMobile: boolean): JSX.Element {\n const { width, blockBackground, fromLeft, disableFocusLock, offset } = this.props;\n\n return (\n <ZIndex\n priority={'Sidepage'}\n data-tid=\"SidePage__root\"\n className={cx({\n [styles.root()]: true,\n [styles.mobileRoot()]: isMobile,\n })}\n onScroll={LayoutEvents.emit}\n createStackingContext\n style={\n isMobile\n ? undefined\n : {\n width: width || (blockBackground ? 800 : 500),\n right: fromLeft ? 'auto' : offset,\n left: fromLeft ? offset : 'auto',\n }\n }\n wrapperRef={this.rootRef}\n >\n <FocusLock disabled={disableFocusLock || !blockBackground} autoFocus={false} className={styles.focusLock()}>\n <RenderLayer onClickOutside={this.handleClickOutside} active>\n <div\n data-tid=\"SidePage__container\"\n className={cx(styles.wrapper(this.theme), {\n [styles.wrapperLeft()]: fromLeft,\n [styles.wrapperMarginLeft()]: this.state.hasMargin && fromLeft,\n [styles.wrapperMarginRight()]: this.state.hasMargin && !fromLeft,\n [styles.shadow(this.theme)]: this.state.hasShadow,\n })}\n ref={this.layoutRef}\n >\n <SidePageContext.Provider value={this.getSidePageContextProps()}>\n {this.props.children}\n </SidePageContext.Provider>\n </div>\n </RenderLayer>\n </FocusLock>\n </ZIndex>\n );\n }\n\n private getSidePageContextProps = (): SidePageContextType => {\n return {\n hasHeader: this.state.hasHeader,\n hasFooter: this.state.hasFooter,\n hasPanel: this.state.hasPanel,\n requestClose: this.requestClose,\n getWidth: this.getWidth,\n updateLayout: this.updateLayout,\n headerRef: this.headerRef,\n footerRef: this.footerRef,\n setHasHeader: this.setHasHeader,\n setHasFooter: this.setHasFooter,\n setHasPanel: this.setHasPanel,\n };\n };\n\n private getWidth = () => {\n if (!this.layout) {\n return 'auto';\n }\n return this.layout.clientWidth;\n };\n\n private renderShadow(): JSX.Element {\n return (\n <ZIndex priority={'Sidepage'} className={styles.overlay()} onScroll={LayoutEvents.emit}>\n <HideBodyVerticalScroll key=\"hbvs\" />\n <div\n key=\"overlay\"\n className={cx({\n [styles.background()]: true,\n [styles.backgroundGray(this.theme)]: this.state.hasBackground,\n })}\n />\n </ZIndex>\n );\n }\n\n private getTransitionNames(): Record<string, string> {\n const transition = this.props.fromLeft ? styles.transitionRight : styles.transitionLeft;\n\n return {\n enter: transition(),\n enterActive: styles.transitionActive(),\n exit: styles.transitionLeave(),\n exitActive: styles.transitionLeaveActive(),\n appear: transition(),\n appearActive: styles.transitionActive(),\n };\n }\n\n private handleStackChange = (stack: readonly React.Component[]) => {\n const sidePages = stack.filter((x) => x instanceof SidePage && x.props.fromLeft === this.props.fromLeft);\n const currentSidePagePosition = sidePages.indexOf(this);\n\n const hasMargin = sidePages.length > 1 && currentSidePagePosition === sidePages.length - 1;\n const hasShadow = sidePages.length < 3 || currentSidePagePosition > sidePages.length - 3;\n const hasBackground = ModalStack.isBlocking(this);\n\n this.setState({\n stackPosition: stack.indexOf(this),\n hasMargin,\n hasShadow,\n hasBackground,\n });\n };\n\n private handleClickOutside = (e: Event) => {\n if (this.state.stackPosition === 0 && !this.props.ignoreBackgroundClick) {\n // ignore mousedown on window scrollbar\n if (e instanceof MouseEvent && e.clientX > document.documentElement.clientWidth) {\n return;\n }\n this.requestClose();\n }\n };\n\n private handleKeyDown = (e: KeyboardEvent) => {\n if (this.state.stackPosition !== 0) {\n return;\n }\n if (isKeyEscape(e)) {\n stopPropagation(e);\n this.requestClose();\n }\n };\n\n private requestClose = () => {\n if (this.props.disableClose) {\n return;\n }\n if (this.props.onClose) {\n this.props.onClose();\n }\n };\n\n private headerRef = (ref: SidePageHeader | null) => {\n this.header = ref;\n };\n\n private footerRef = (ref: SidePageFooter | null) => {\n this.footer = ref;\n };\n\n private layoutRef = (ref: HTMLDivElement | null) => {\n this.layout = ref;\n };\n\n private setHasHeader = (hasHeader = true) => {\n this.state.hasHeader !== hasHeader && this.setState({ hasHeader });\n };\n\n private setHasFooter = (hasFooter = true) => {\n this.state.hasFooter !== hasFooter && this.setState({ hasFooter });\n };\n\n private setHasPanel = (hasPanel = false) => {\n this.state.hasPanel !== hasPanel && this.setState({ hasPanel });\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["SidePage.tsx"],"names":["React","CSSTransition","FocusLock","isNonNullable","isKeyEscape","LayoutEvents","stopPropagation","HideBodyVerticalScroll","ModalStack","RenderContainer","RenderLayer","ZIndex","ThemeContext","CommonWrapper","cx","isTestEnv","ResponsiveLayout","SidePageBody","SidePageContainer","SidePageContext","SidePageFooter","SidePageHeader","styles","SidePageDataTids","root","container","TRANSITION_TIMEOUT","SidePage","state","hasHeader","hasFooter","hasPanel","stackSubscription","layout","header","footer","rootRef","createRef","updateLayout","update","getSidePageContextProps","requestClose","getWidth","headerRef","footerRef","setHasHeader","setHasFooter","setHasPanel","clientWidth","handleStackChange","stack","sidePages","filter","x","props","fromLeft","currentSidePagePosition","indexOf","hasMargin","length","hasShadow","hasBackground","isBlocking","setState","stackPosition","handleClickOutside","e","ignoreBackgroundClick","MouseEvent","clientX","document","documentElement","handleKeyDown","disableClose","onClose","ref","layoutRef","componentDidMount","window","addEventListener","add","componentWillUnmount","removeEventListener","remove","render","theme","renderMain","blockBackground","disableAnimations","isMobile","renderShadow","getTransitionNames","enter","exit","renderContainer","width","disableFocusLock","offset","mobileRoot","emit","undefined","right","left","focusLock","wrapper","wrapperLeft","wrapperMarginLeft","wrapperMarginRight","shadow","children","overlay","background","backgroundGray","transition","transitionRight","transitionLeft","enterActive","transitionActive","transitionLeave","exitActive","transitionLeaveActive","appear","appearActive","Component","__KONTUR_REACT_UI__","Header","Body","Footer","Container","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport FocusLock from 'react-focus-lock';\n\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyEscape } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { stopPropagation } from '../../lib/events/stopPropagation';\nimport { HideBodyVerticalScroll } from '../../internal/HideBodyVerticalScroll';\nimport { ModalStack, ModalStackSubscription } from '../../lib/ModalStack';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { ZIndex } from '../../internal/ZIndex';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ResponsiveLayout } from '../ResponsiveLayout';\n\nimport { SidePageBody } from './SidePageBody';\nimport { SidePageContainer } from './SidePageContainer';\nimport { SidePageContext, SidePageContextType } from './SidePageContext';\nimport { SidePageFooter } from './SidePageFooter';\nimport { SidePageHeader } from './SidePageHeader';\nimport { styles } from './SidePage.styles';\n\nexport interface SidePageProps extends CommonProps {\n /**\n * Добавить блокирующий фон, когда сайдпейдж открыт\n */\n blockBackground?: boolean;\n\n /**\n * Отключает событие onClose, также дизейблит кнопку закрытия сайдпейджа\n */\n disableClose?: boolean;\n\n /**\n * Не закрывать сайдпейдж при клике на фон.\n */\n ignoreBackgroundClick?: boolean;\n\n /**\n * Задать ширину сайдпейджа\n */\n width?: number | string;\n\n /**\n * Вызывается, когда пользователь запросил закрытие сайдпейджа (нажал на фон, на\n * Escape или на крестик).\n */\n onClose?: () => void;\n\n /**\n * Показывать сайдпэйдж слева\n *\n */\n fromLeft?: boolean;\n\n /**\n * Отключить анимации\n *\n */\n disableAnimations?: boolean;\n\n /**\n * Работает только при заблокированном фоне: `blockBackground = true`\n */\n disableFocusLock: boolean;\n\n /**\n * задает отступ от края экрана\n */\n offset?: number | string;\n}\n\nexport interface SidePageState {\n stackPosition?: number;\n hasMargin?: boolean;\n hasShadow?: boolean;\n hasBackground?: boolean;\n hasHeader: boolean;\n hasFooter: boolean;\n hasPanel: boolean;\n}\n\nexport const SidePageDataTids = {\n root: 'SidePage__root',\n container: 'SidePage__container',\n} as const;\n\nconst TRANSITION_TIMEOUT = 200;\n\n/**\n * Сайдпейдж\n *\n * Содержит в себе три компоненты: **SidePage.Header**,\n * **SidePage.Body** и **SidePage.Footer**\n *\n * Для отображения серой плашки в футере в компонент\n * **Footer** необходимо передать пропс **panel**\n */\nexport class SidePage extends React.Component<SidePageProps, SidePageState> {\n public static __KONTUR_REACT_UI__ = 'SidePage';\n\n public static Header = SidePageHeader;\n public static Body = SidePageBody;\n public static Footer = SidePageFooter;\n public static Container = SidePageContainer;\n public state: SidePageState = {\n hasHeader: false,\n hasFooter: false,\n hasPanel: false,\n };\n private theme!: Theme;\n private stackSubscription: ModalStackSubscription | null = null;\n private layout: HTMLElement | null = null;\n private header: SidePageHeader | null = null;\n private footer: SidePageFooter | null = null;\n private rootRef = React.createRef<HTMLDivElement>();\n\n public componentDidMount() {\n window.addEventListener('keydown', this.handleKeyDown);\n this.stackSubscription = ModalStack.add(this, this.handleStackChange);\n }\n\n public componentWillUnmount() {\n window.removeEventListener('keydown', this.handleKeyDown);\n if (isNonNullable(this.stackSubscription)) {\n this.stackSubscription.remove();\n }\n ModalStack.remove(this);\n }\n\n /**\n * Обновляет разметку компонента.\n * @public\n */\n public updateLayout = (): void => {\n this.header?.update();\n this.footer?.update();\n };\n\n public static defaultProps = {\n disableAnimations: isTestEnv,\n disableFocusLock: true,\n offset: 0,\n };\n\n public render(): JSX.Element {\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 { blockBackground, disableAnimations } = this.props;\n\n return (\n <RenderContainer>\n <CommonWrapper {...this.props}>\n <div>\n <ResponsiveLayout>\n {({ isMobile }) => {\n return (\n <>\n {blockBackground && this.renderShadow()}\n <CSSTransition\n in\n classNames={this.getTransitionNames()}\n appear={!disableAnimations}\n enter={!disableAnimations}\n exit={false}\n timeout={{\n enter: TRANSITION_TIMEOUT,\n exit: TRANSITION_TIMEOUT,\n }}\n nodeRef={this.rootRef}\n >\n {this.renderContainer(isMobile)}\n </CSSTransition>\n {isMobile && <HideBodyVerticalScroll />}\n </>\n );\n }}\n </ResponsiveLayout>\n </div>\n </CommonWrapper>\n </RenderContainer>\n );\n }\n\n private renderContainer(isMobile: boolean): JSX.Element {\n const { width, blockBackground, fromLeft, disableFocusLock, offset } = this.props;\n\n return (\n <ZIndex\n priority={'Sidepage'}\n data-tid={SidePageDataTids.root}\n className={cx({\n [styles.root()]: true,\n [styles.mobileRoot()]: isMobile,\n })}\n onScroll={LayoutEvents.emit}\n createStackingContext\n style={\n isMobile\n ? undefined\n : {\n width: width || (blockBackground ? 800 : 500),\n right: fromLeft ? 'auto' : offset,\n left: fromLeft ? offset : 'auto',\n }\n }\n wrapperRef={this.rootRef}\n >\n <FocusLock disabled={disableFocusLock || !blockBackground} autoFocus={false} className={styles.focusLock()}>\n <RenderLayer onClickOutside={this.handleClickOutside} active>\n <div\n data-tid={SidePageDataTids.container}\n className={cx(styles.wrapper(this.theme), {\n [styles.wrapperLeft()]: fromLeft,\n [styles.wrapperMarginLeft()]: this.state.hasMargin && fromLeft,\n [styles.wrapperMarginRight()]: this.state.hasMargin && !fromLeft,\n [styles.shadow(this.theme)]: this.state.hasShadow,\n })}\n ref={this.layoutRef}\n >\n <SidePageContext.Provider value={this.getSidePageContextProps()}>\n {this.props.children}\n </SidePageContext.Provider>\n </div>\n </RenderLayer>\n </FocusLock>\n </ZIndex>\n );\n }\n\n private getSidePageContextProps = (): SidePageContextType => {\n return {\n hasHeader: this.state.hasHeader,\n hasFooter: this.state.hasFooter,\n hasPanel: this.state.hasPanel,\n requestClose: this.requestClose,\n getWidth: this.getWidth,\n updateLayout: this.updateLayout,\n headerRef: this.headerRef,\n footerRef: this.footerRef,\n setHasHeader: this.setHasHeader,\n setHasFooter: this.setHasFooter,\n setHasPanel: this.setHasPanel,\n };\n };\n\n private getWidth = () => {\n if (!this.layout) {\n return 'auto';\n }\n return this.layout.clientWidth;\n };\n\n private renderShadow(): JSX.Element {\n return (\n <ZIndex priority={'Sidepage'} className={styles.overlay()} onScroll={LayoutEvents.emit}>\n <HideBodyVerticalScroll key=\"hbvs\" />\n <div\n key=\"overlay\"\n className={cx({\n [styles.background()]: true,\n [styles.backgroundGray(this.theme)]: this.state.hasBackground,\n })}\n />\n </ZIndex>\n );\n }\n\n private getTransitionNames(): Record<string, string> {\n const transition = this.props.fromLeft ? styles.transitionRight : styles.transitionLeft;\n\n return {\n enter: transition(),\n enterActive: styles.transitionActive(),\n exit: styles.transitionLeave(),\n exitActive: styles.transitionLeaveActive(),\n appear: transition(),\n appearActive: styles.transitionActive(),\n };\n }\n\n private handleStackChange = (stack: readonly React.Component[]) => {\n const sidePages = stack.filter((x) => x instanceof SidePage && x.props.fromLeft === this.props.fromLeft);\n const currentSidePagePosition = sidePages.indexOf(this);\n\n const hasMargin = sidePages.length > 1 && currentSidePagePosition === sidePages.length - 1;\n const hasShadow = sidePages.length < 3 || currentSidePagePosition > sidePages.length - 3;\n const hasBackground = ModalStack.isBlocking(this);\n\n this.setState({\n stackPosition: stack.indexOf(this),\n hasMargin,\n hasShadow,\n hasBackground,\n });\n };\n\n private handleClickOutside = (e: Event) => {\n if (this.state.stackPosition === 0 && !this.props.ignoreBackgroundClick) {\n // ignore mousedown on window scrollbar\n if (e instanceof MouseEvent && e.clientX > document.documentElement.clientWidth) {\n return;\n }\n this.requestClose();\n }\n };\n\n private handleKeyDown = (e: KeyboardEvent) => {\n if (this.state.stackPosition !== 0) {\n return;\n }\n if (isKeyEscape(e)) {\n stopPropagation(e);\n this.requestClose();\n }\n };\n\n private requestClose = () => {\n if (this.props.disableClose) {\n return;\n }\n if (this.props.onClose) {\n this.props.onClose();\n }\n };\n\n private headerRef = (ref: SidePageHeader | null) => {\n this.header = ref;\n };\n\n private footerRef = (ref: SidePageFooter | null) => {\n this.footer = ref;\n };\n\n private layoutRef = (ref: HTMLDivElement | null) => {\n this.layout = ref;\n };\n\n private setHasHeader = (hasHeader = true) => {\n this.state.hasHeader !== hasHeader && this.setState({ hasHeader });\n };\n\n private setHasFooter = (hasFooter = true) => {\n this.state.hasFooter !== hasFooter && this.setState({ hasFooter });\n };\n\n private setHasPanel = (hasPanel = false) => {\n this.state.hasPanel !== hasPanel && this.setState({ hasPanel });\n };\n}\n"]}
|
|
@@ -11,13 +11,16 @@ import { cx } from "../../../lib/theming/Emotion";
|
|
|
11
11
|
import { rootNode } from "../../../lib/rootNode";
|
|
12
12
|
import { styles } from "../SidePage.styles";
|
|
13
13
|
import { SidePageContext } from "../SidePageContext";
|
|
14
|
-
export
|
|
14
|
+
export var SidePageBodyDataTids = {
|
|
15
|
+
root: 'SidePageBody__root'
|
|
16
|
+
};
|
|
15
17
|
/**
|
|
16
|
-
* Тело для сайдпейджа
|
|
17
|
-
*
|
|
18
|
-
* @visibleName SidePage.Body
|
|
19
|
-
*/
|
|
20
|
-
|
|
18
|
+
* Тело для сайдпейджа
|
|
19
|
+
*
|
|
20
|
+
* @visibleName SidePage.Body
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
export var SidePageBody = responsiveLayout(_class = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
21
24
|
_inheritsLoose(SidePageBody, _React$Component);
|
|
22
25
|
|
|
23
26
|
function SidePageBody() {
|
|
@@ -47,6 +50,7 @@ var SidePageBody = responsiveLayout(_class = rootNode(_class = (_temp = _class2
|
|
|
47
50
|
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
48
51
|
rootNodeRef: _this2.setRootNode
|
|
49
52
|
}, _this2.props), /*#__PURE__*/React.createElement("div", {
|
|
53
|
+
"data-tid": SidePageBodyDataTids.root,
|
|
50
54
|
className: cx(styles.body(theme), (_cx = {}, _cx[styles.mobileBody()] = _this2.isMobileLayout, _cx))
|
|
51
55
|
}, _this2.props.children));
|
|
52
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SidePageBody.tsx"],"names":["React","CommonWrapper","ThemeContext","responsiveLayout","cx","rootNode","styles","SidePageContext","SidePageBody","context","componentDidUpdate","updateLayout","render","theme","setRootNode","props","body","mobileBody","isMobileLayout","children","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"2JAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAAsBC,aAAtB,QAA2C,8BAA3C;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,QAAT,QAAuC,oBAAvC;;AAEA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASC,eAAT,QAAqD,mBAArD
|
|
1
|
+
{"version":3,"sources":["SidePageBody.tsx"],"names":["React","CommonWrapper","ThemeContext","responsiveLayout","cx","rootNode","styles","SidePageContext","SidePageBodyDataTids","root","SidePageBody","context","componentDidUpdate","updateLayout","render","theme","setRootNode","props","body","mobileBody","isMobileLayout","children","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"2JAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAAsBC,aAAtB,QAA2C,8BAA3C;AACA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,QAAT,QAAuC,oBAAvC;;AAEA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASC,eAAT,QAAqD,mBAArD;;;;;;AAMA,OAAO,IAAMC,oBAAoB,GAAG;AAClCC,EAAAA,IAAI,EAAE,oBAD4B,EAA7B;;AAGP;AACA;AACA;AACA;AACA;;;AAGA,WAAaC,YAAb,GAFCP,gBAED,UADCE,QACD;;;;AAISM,IAAAA,OAJT,GAIwC,MAAKA,OAJ7C;;;;AAQSC,EAAAA,kBART,GAQE,8BAA4B;AAC1B,SAAKD,OAAL,CAAaE,YAAb;AACD,GAVH;;AAYSC,EAAAA,MAZT,GAYE,kBAAgB;AACd;AACE,0BAAC,YAAD,CAAc,QAAd;AACG,gBAACC,KAAD,EAAW;AACV;AACE,8BAAC,aAAD,aAAe,WAAW,EAAE,MAAI,CAACC,WAAjC,IAAkD,MAAI,CAACC,KAAvD;AACE;AACE,wBAAUT,oBAAoB,CAACC,IADjC;AAEE,YAAA,SAAS,EAAEL,EAAE,CAACE,MAAM,CAACY,IAAP,CAAYH,KAAZ,CAAD,iBAAwBT,MAAM,CAACa,UAAP,EAAxB,IAA8C,MAAI,CAACC,cAAnD,OAFf;;AAIG,UAAA,MAAI,CAACH,KAAL,CAAWI,QAJd,CADF,CADF;;;;AAUD,OAZH,CADF;;;AAgBD,GA7BH,uBAAkCrB,KAAK,CAACsB,SAAxC,WACgBC,mBADhB,GACsC,cADtC,UAGgBC,WAHhB,GAG8BjB,eAH9B","sourcesContent":["import React from 'react';\n\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './SidePage.styles';\nimport { SidePageContext, SidePageContextType } from './SidePageContext';\n\nexport interface SidePageBodyProps extends CommonProps {\n children?: React.ReactNode;\n}\n\nexport const SidePageBodyDataTids = {\n root: 'SidePageBody__root',\n} as const;\n/**\n * Тело для сайдпейджа\n *\n * @visibleName SidePage.Body\n */\n@responsiveLayout\n@rootNode\nexport class SidePageBody extends React.Component<SidePageBodyProps> {\n public static __KONTUR_REACT_UI__ = 'SidePageBody';\n\n public static contextType = SidePageContext;\n public context: SidePageContextType = this.context;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n\n public componentDidUpdate() {\n this.context.updateLayout();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={SidePageBodyDataTids.root}\n className={cx(styles.body(theme), { [styles.mobileBody()]: this.isMobileLayout })}\n >\n {this.props.children}\n </div>\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n}\n"]}
|
|
@@ -4,6 +4,9 @@ import { SidePageContextType } from './SidePageContext';
|
|
|
4
4
|
export interface SidePageBodyProps extends CommonProps {
|
|
5
5
|
children?: React.ReactNode;
|
|
6
6
|
}
|
|
7
|
+
export declare const SidePageBodyDataTids: {
|
|
8
|
+
readonly root: "SidePageBody__root";
|
|
9
|
+
};
|
|
7
10
|
/**
|
|
8
11
|
* Тело для сайдпейджа
|
|
9
12
|
*
|
|
@@ -11,13 +11,16 @@ import { responsiveLayout } from "../../ResponsiveLayout/decorator";
|
|
|
11
11
|
import { rootNode } from "../../../lib/rootNode";
|
|
12
12
|
import { styles } from "../SidePage.styles";
|
|
13
13
|
import { SidePageContext } from "../SidePageContext";
|
|
14
|
-
export
|
|
14
|
+
export var SidePageContainerDataTids = {
|
|
15
|
+
root: 'SidePageContainer__root'
|
|
16
|
+
};
|
|
15
17
|
/**
|
|
16
|
-
* Контейнер с отступами
|
|
17
|
-
*
|
|
18
|
-
* @visibleName SidePage.Container
|
|
19
|
-
*/
|
|
20
|
-
|
|
18
|
+
* Контейнер с отступами
|
|
19
|
+
*
|
|
20
|
+
* @visibleName SidePage.Container
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
export var SidePageContainer = responsiveLayout(_class = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
21
24
|
_inheritsLoose(SidePageContainer, _React$Component);
|
|
22
25
|
|
|
23
26
|
function SidePageContainer() {
|
|
@@ -47,6 +50,7 @@ var SidePageContainer = responsiveLayout(_class = rootNode(_class = (_temp = _cl
|
|
|
47
50
|
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
48
51
|
rootNodeRef: _this2.setRootNode
|
|
49
52
|
}, _this2.props), /*#__PURE__*/React.createElement("div", {
|
|
53
|
+
"data-tid": SidePageContainerDataTids.root,
|
|
50
54
|
className: cx((_cx = {}, _cx[styles.container(_this2.theme)] = true, _cx[styles.containerWithoutHeader(_this2.theme)] = !hasHeader, _cx[styles.containerWithoutFooter(_this2.theme)] = !hasFooter, _cx[styles.containerWithPanel(_this2.theme)] = hasPanel, _cx[styles.mobileContainer(_this2.theme)] = _this2.isMobileLayout, _cx[styles.mobileContainerWithoutHeader(_this2.theme)] = _this2.isMobileLayout && !hasHeader, _cx))
|
|
51
55
|
}, _this2.props.children));
|
|
52
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SidePageContainer.tsx"],"names":["React","ThemeContext","CommonWrapper","cx","responsiveLayout","rootNode","styles","SidePageContext","SidePageContainer","render","theme","renderMain","hasHeader","hasFooter","hasPanel","setRootNode","props","container","containerWithoutHeader","containerWithoutFooter","containerWithPanel","mobileContainer","isMobileLayout","mobileContainerWithoutHeader","children","Component","__KONTUR_REACT_UI__"],"mappings":"2JAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAAsBC,aAAtB,QAA2C,8BAA3C;;AAEA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASC,QAAT,QAAuC,oBAAvC;;AAEA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASC,eAAT,QAAgC,mBAAhC
|
|
1
|
+
{"version":3,"sources":["SidePageContainer.tsx"],"names":["React","ThemeContext","CommonWrapper","cx","responsiveLayout","rootNode","styles","SidePageContext","SidePageContainerDataTids","root","SidePageContainer","render","theme","renderMain","hasHeader","hasFooter","hasPanel","setRootNode","props","container","containerWithoutHeader","containerWithoutFooter","containerWithPanel","mobileContainer","isMobileLayout","mobileContainerWithoutHeader","children","Component","__KONTUR_REACT_UI__"],"mappings":"2JAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,SAASC,YAAT,QAA6B,gCAA7B;AACA,SAAsBC,aAAtB,QAA2C,8BAA3C;;AAEA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASC,QAAT,QAAuC,oBAAvC;;AAEA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASC,eAAT,QAAgC,mBAAhC;;;;AAIA,OAAO,IAAMC,yBAAyB,GAAG;AACvCC,EAAAA,IAAI,EAAE,yBADiC,EAAlC;;;AAIP;AACA;AACA;AACA;AACA;;;AAGA,WAAaC,iBAAb,GAFCN,gBAED,UADCC,QACD;;;;;;;AAOSM,EAAAA,MAPT,GAOE,kBAAgB;AACd;AACE,0BAAC,YAAD,CAAc,QAAd;AACG,gBAACC,KAAD,EAAW;AACV,QAAA,KAAI,CAACA,KAAL,GAAaA,KAAb;AACA,eAAO,KAAI,CAACC,UAAL,EAAP;AACD,OAJH,CADF;;;AAQD,GAhBH;;AAkBSA,EAAAA,UAlBT,GAkBE,sBAAoB;AAClB;AACE,0BAAC,eAAD,CAAiB,QAAjB;AACG,mCAAGC,SAAH,QAAGA,SAAH,CAAcC,SAAd,QAAcA,SAAd,CAAyBC,QAAzB,QAAyBA,QAAzB;AACC,8BAAC,aAAD,aAAe,WAAW,EAAE,MAAI,CAACC,WAAjC,IAAkD,MAAI,CAACC,KAAvD;AACE;AACE,wBAAUV,yBAAyB,CAACC,IADtC;AAEE,YAAA,SAAS,EAAEN,EAAE;AACVG,YAAAA,MAAM,CAACa,SAAP,CAAiB,MAAI,CAACP,KAAtB,CADU,IACqB,IADrB;AAEVN,YAAAA,MAAM,CAACc,sBAAP,CAA8B,MAAI,CAACR,KAAnC,CAFU,IAEkC,CAACE,SAFnC;AAGVR,YAAAA,MAAM,CAACe,sBAAP,CAA8B,MAAI,CAACT,KAAnC,CAHU,IAGkC,CAACG,SAHnC;AAIVT,YAAAA,MAAM,CAACgB,kBAAP,CAA0B,MAAI,CAACV,KAA/B,CAJU,IAI8BI,QAJ9B;AAKVV,YAAAA,MAAM,CAACiB,eAAP,CAAuB,MAAI,CAACX,KAA5B,CALU,IAK2B,MAAI,CAACY,cALhC;AAMVlB,YAAAA,MAAM,CAACmB,4BAAP,CAAoC,MAAI,CAACb,KAAzC,CANU,IAMwC,MAAI,CAACY,cAAL,IAAuB,CAACV,SANhE,OAFf;;;AAWG,UAAA,MAAI,CAACI,KAAL,CAAWQ,QAXd,CADF,CADD,GADH,CADF;;;;;;AAqBD,GAxCH,4BAAuC1B,KAAK,CAAC2B,SAA7C,WACgBC,mBADhB,GACsC,mBADtC","sourcesContent":["import React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { Theme } from '../../lib/theming/Theme';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './SidePage.styles';\nimport { SidePageContext } from './SidePageContext';\n\nexport type SidePageContainerProps = CommonProps;\n\nexport const SidePageContainerDataTids = {\n root: 'SidePageContainer__root',\n} as const;\n\n/**\n * Контейнер с отступами\n *\n * @visibleName SidePage.Container\n */\n@responsiveLayout\n@rootNode\nexport class SidePageContainer extends React.Component<SidePageContainerProps> {\n public static __KONTUR_REACT_UI__ = 'SidePageContainer';\n\n private theme!: Theme;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\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 public renderMain() {\n return (\n <SidePageContext.Consumer>\n {({ hasHeader, hasFooter, hasPanel }) => (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={SidePageContainerDataTids.root}\n className={cx({\n [styles.container(this.theme)]: true,\n [styles.containerWithoutHeader(this.theme)]: !hasHeader,\n [styles.containerWithoutFooter(this.theme)]: !hasFooter,\n [styles.containerWithPanel(this.theme)]: hasPanel,\n [styles.mobileContainer(this.theme)]: this.isMobileLayout,\n [styles.mobileContainerWithoutHeader(this.theme)]: this.isMobileLayout && !hasHeader,\n })}\n >\n {this.props.children}\n </div>\n </CommonWrapper>\n )}\n </SidePageContext.Consumer>\n );\n }\n}\n"]}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { CommonProps } from '../../internal/CommonWrapper';
|
|
3
3
|
export declare type SidePageContainerProps = CommonProps;
|
|
4
|
+
export declare const SidePageContainerDataTids: {
|
|
5
|
+
readonly root: "SidePageContainer__root";
|
|
6
|
+
};
|
|
4
7
|
/**
|
|
5
8
|
* Контейнер с отступами
|
|
6
9
|
*
|
|
@@ -14,13 +14,16 @@ import { getRootNode, rootNode } from "../../../lib/rootNode";
|
|
|
14
14
|
import { getDOMRect } from "../../../lib/dom/getDOMRect";
|
|
15
15
|
import { styles } from "../SidePage.styles";
|
|
16
16
|
import { SidePageContext } from "../SidePageContext";
|
|
17
|
-
export
|
|
17
|
+
export var SidePageFooterDataTids = {
|
|
18
|
+
root: 'SidePageFooter__root'
|
|
19
|
+
};
|
|
18
20
|
/**
|
|
19
|
-
* Футер сайдпейджа.
|
|
20
|
-
*
|
|
21
|
-
* @visibleName SidePage.Footer
|
|
22
|
-
*/
|
|
23
|
-
|
|
21
|
+
* Футер сайдпейджа.
|
|
22
|
+
*
|
|
23
|
+
* @visibleName SidePage.Footer
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
export var SidePageFooter = responsiveLayout(_class = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
24
27
|
_inheritsLoose(SidePageFooter, _React$Component);
|
|
25
28
|
|
|
26
29
|
function SidePageFooter() {
|
|
@@ -122,6 +125,7 @@ var SidePageFooter = responsiveLayout(_class = rootNode(_class = (_temp = _class
|
|
|
122
125
|
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
123
126
|
rootNodeRef: this.setRootNode
|
|
124
127
|
}, this.props), /*#__PURE__*/React.createElement("div", {
|
|
128
|
+
"data-tid": SidePageFooterDataTids.root,
|
|
125
129
|
style: {
|
|
126
130
|
height: this.getContentHeight()
|
|
127
131
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SidePageFooter.tsx"],"names":["React","LayoutEvents","ThemeContext","CommonWrapper","cx","responsiveLayout","getRootNode","rootNode","getDOMRect","styles","SidePageContext","SidePageFooter","context","state","fixed","content","layoutSub","update","setProperStyles","refContent","node","wrapper","wrapperRect","contentRect","top","setState","componentDidMount","footerRef","addListener","setHasFooter","setHasPanel","props","panel","componentDidUpdate","prevProps","componentWillUnmount","remove","getSticky","sticky","isMobileLayout","render","theme","renderMain","setRootNode","height","getContentHeight","footerWrapper","getWidth","footer","positionStatic","width","footerContent","footerFixed","panelFixed","mobileFooterContent","children","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"iPAAA,OAAOA,KAAP,MAAkB,OAAlB;;AAEA,OAAO,KAAKC,YAAZ,MAA8B,wBAA9B;AACA,SAASC,YAAT,QAA6B,gCAA7B;;AAEA,SAAsBC,aAAtB,QAA2C,8BAA3C;AACA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASC,WAAT,EAAsBC,QAAtB,QAAoD,oBAApD;AACA,SAASC,UAAT,QAA2B,0BAA3B;;AAEA,SAASC,MAAT,QAAuB,mBAAvB;AACA,SAASC,eAAT,QAAqD,mBAArD
|
|
1
|
+
{"version":3,"sources":["SidePageFooter.tsx"],"names":["React","LayoutEvents","ThemeContext","CommonWrapper","cx","responsiveLayout","getRootNode","rootNode","getDOMRect","styles","SidePageContext","SidePageFooterDataTids","root","SidePageFooter","context","state","fixed","content","layoutSub","update","setProperStyles","refContent","node","wrapper","wrapperRect","contentRect","top","setState","componentDidMount","footerRef","addListener","setHasFooter","setHasPanel","props","panel","componentDidUpdate","prevProps","componentWillUnmount","remove","getSticky","sticky","isMobileLayout","render","theme","renderMain","setRootNode","height","getContentHeight","footerWrapper","getWidth","footer","positionStatic","width","footerContent","footerFixed","panelFixed","mobileFooterContent","children","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './SidePage.styles';\nimport { SidePageContext, SidePageContextType } from './SidePageContext';\n\nexport interface SidePageFooterProps extends CommonProps {\n children?: React.ReactNode | ((fixed: boolean) => React.ReactNode);\n /**\n * Включает серый цвет в футере\n */\n panel?: boolean;\n sticky?: boolean;\n}\n\nexport const SidePageFooterDataTids = {\n root: 'SidePageFooter__root',\n} as const;\n\n/**\n * Футер сайдпейджа.\n *\n * @visibleName SidePage.Footer\n */\n@responsiveLayout\n@rootNode\nexport class SidePageFooter extends React.Component<SidePageFooterProps> {\n public static __KONTUR_REACT_UI__ = 'SidePageFooter';\n\n public static contextType = SidePageContext;\n public context: SidePageContextType = this.context;\n private isMobileLayout!: boolean;\n\n public state = {\n fixed: false,\n };\n\n private theme!: Theme;\n private content: HTMLElement | null = null;\n private layoutSub: ReturnType<typeof LayoutEvents.addListener> | null = null;\n private setRootNode!: TSetRootNode;\n\n public componentDidMount() {\n this.context.footerRef(this);\n this.update();\n this.layoutSub = LayoutEvents.addListener(this.update);\n this.context.setHasFooter?.();\n this.context.setHasPanel?.(this.props.panel);\n }\n\n public componentDidUpdate(prevProps: Readonly<SidePageFooterProps>) {\n this.props.panel !== prevProps.panel && this.context.setHasPanel?.(this.props.panel);\n }\n\n public componentWillUnmount() {\n this.context.footerRef(null);\n if (this.layoutSub) {\n this.layoutSub.remove();\n }\n this.context.setHasFooter?.(false);\n this.context.setHasPanel?.(false);\n }\n\n public getSticky() {\n if (typeof this.props.sticky !== 'undefined') {\n return this.props.sticky;\n }\n\n if (this.isMobileLayout) {\n return false;\n }\n\n return true;\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public update = () => {\n this.setProperStyles();\n };\n\n private renderMain() {\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={SidePageFooterDataTids.root}\n style={{ height: this.getContentHeight() }}\n className={styles.footerWrapper()}\n >\n <SidePageContext.Consumer>\n {({ getWidth }) => (\n <div\n className={cx(styles.footer(this.theme), {\n [styles.positionStatic()]: !this.getSticky(),\n })}\n style={{\n width: getWidth(),\n }}\n >\n <div\n className={cx(styles.footerContent(this.theme), {\n [styles.footerFixed(this.theme)]: this.state.fixed,\n [styles.panel(this.theme)]: !!this.props.panel,\n [styles.panelFixed(this.theme)]: !!this.props.panel && this.state.fixed,\n [styles.mobileFooterContent(this.theme)]: this.isMobileLayout,\n })}\n ref={this.refContent}\n >\n {this.props.children}\n </div>\n </div>\n )}\n </SidePageContext.Consumer>\n </div>\n </CommonWrapper>\n );\n }\n\n private refContent = (node: HTMLElement | null) => {\n this.content = node;\n };\n\n private setProperStyles = () => {\n const wrapper = getRootNode(this);\n if (wrapper && this.content) {\n const wrapperRect = getDOMRect(wrapper);\n const contentRect = getDOMRect(this.content);\n const fixed = wrapperRect.top > contentRect.top;\n this.setState({ fixed });\n }\n };\n\n private getContentHeight() {\n if (!this.content) {\n return 'auto';\n }\n return getDOMRect(this.content).height;\n }\n}\n"]}
|
|
@@ -18,13 +18,17 @@ import { rootNode } from "../../../lib/rootNode";
|
|
|
18
18
|
import { getDOMRect } from "../../../lib/dom/getDOMRect";
|
|
19
19
|
import { styles } from "../SidePage.styles";
|
|
20
20
|
import { SidePageContext } from "../SidePageContext";
|
|
21
|
-
export
|
|
21
|
+
export var SidePageHeaderDataTids = {
|
|
22
|
+
root: 'SidePageHeader__root',
|
|
23
|
+
close: 'SidePage__close'
|
|
24
|
+
};
|
|
22
25
|
/**
|
|
23
|
-
* Шапка сайдпейджа
|
|
24
|
-
*
|
|
25
|
-
* @visibleName SidePage.Header
|
|
26
|
-
*/
|
|
27
|
-
|
|
26
|
+
* Шапка сайдпейджа
|
|
27
|
+
*
|
|
28
|
+
* @visibleName SidePage.Header
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
export var SidePageHeader = responsiveLayout(_class = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
28
32
|
_inheritsLoose(SidePageHeader, _React$Component);
|
|
29
33
|
|
|
30
34
|
function SidePageHeader() {
|
|
@@ -102,7 +106,7 @@ var SidePageHeader = responsiveLayout(_class = rootNode(_class = (_temp = _class
|
|
|
102
106
|
onFocus: _this.handleFocus,
|
|
103
107
|
onBlur: _this.handleBlur,
|
|
104
108
|
onClick: requestClose,
|
|
105
|
-
"data-tid":
|
|
109
|
+
"data-tid": SidePageHeaderDataTids.close,
|
|
106
110
|
tabIndex: 0
|
|
107
111
|
}, /*#__PURE__*/React.createElement(CrossIcon, null));
|
|
108
112
|
});
|
|
@@ -178,6 +182,7 @@ var SidePageHeader = responsiveLayout(_class = rootNode(_class = (_temp = _class
|
|
|
178
182
|
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
179
183
|
rootNodeRef: this.setRootNode
|
|
180
184
|
}, this.props), /*#__PURE__*/React.createElement("div", {
|
|
185
|
+
"data-tid": SidePageHeaderDataTids.root,
|
|
181
186
|
ref: this.wrapperRef,
|
|
182
187
|
className: styles.headerWrapper()
|
|
183
188
|
}, isStickyDesktop || isStickyMobile ? /*#__PURE__*/React.createElement(Sticky, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SidePageHeader.tsx"],"names":["React","Sticky","CrossIcon","isFunction","ThemeContext","CommonWrapper","cx","keyListener","responsiveLayout","rootNode","getDOMRect","styles","SidePageContext","SidePageHeader","context","state","isReadyToFix","focusedByTab","wrapper","sticky","lastRegularHeight","componentDidMount","window","addEventListener","update","setHasHeader","headerRef","componentWillUnmount","removeEventListener","reflow","updateReadyToFix","renderHeader","fixed","header","theme","headerFixed","mobileHeader","isMobileLayout","renderClose","title","mobileTitle","titleFixed","props","children","stickyOffset","parseInt","sidePageHeaderStickyOffset","wrapperClose","wrapperCloseFixed","mobileWrapperClose","closeIcon","requestClose","close","closeFocus","handleFocus","handleBlur","wrapperScrolledUp","top","regularHeight","fixedHeaderHeight","setState","wrapperRef","el","stickyRef","requestAnimationFrame","isTabPressed","render","renderMain","getStickyProp","isStickyDesktop","isStickyMobile","setRootNode","headerWrapper","height","sidePageHeaderFixedLineHeight","sidePageHeaderFixedPaddingY","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { Sticky } from '../Sticky';\nimport { CrossIcon } from '../../internal/icons/CrossIcon';\nimport { isFunction } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './SidePage.styles';\nimport { SidePageContext, SidePageContextType } from './SidePageContext';\n\nexport interface SidePageHeaderProps extends CommonProps {\n children?: React.ReactNode | ((fixed: boolean) => React.ReactNode);\n sticky?: boolean;\n}\n\nexport interface SidePageHeaderState {\n isReadyToFix: boolean;\n focusedByTab: boolean;\n}\n\n/**\n * Шапка сайдпейджа\n *\n * @visibleName SidePage.Header\n */\n@responsiveLayout\n@rootNode\nexport class SidePageHeader extends React.Component<SidePageHeaderProps, SidePageHeaderState> {\n public static __KONTUR_REACT_UI__ = 'SidePageHeader';\n\n public static contextType = SidePageContext;\n public context: SidePageContextType = this.context;\n\n private isMobileLayout!: boolean;\n\n public state: SidePageHeaderState = {\n isReadyToFix: false,\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private wrapper: HTMLElement | null = null;\n private sticky: Sticky | null = null;\n private lastRegularHeight = 0;\n private setRootNode!: TSetRootNode;\n\n public get regularHeight(): number {\n const { isReadyToFix } = this.state;\n if (!this.wrapper) {\n return 0;\n }\n if (!isReadyToFix) {\n this.lastRegularHeight = getDOMRect(this.wrapper).height;\n }\n return this.lastRegularHeight;\n }\n\n public get fixedHeaderHeight(): number {\n const { theme } = this;\n return parseInt(theme.sidePageHeaderFixedLineHeight) + parseInt(theme.sidePageHeaderFixedPaddingY) * 2;\n }\n\n public componentDidMount = () => {\n window.addEventListener('scroll', this.update, true);\n this.context.setHasHeader?.();\n this.context.headerRef(this);\n };\n\n public componentWillUnmount = () => {\n window.removeEventListener('scroll', this.update, true);\n this.context.setHasHeader?.(false);\n this.context.headerRef(null);\n };\n\n public update = () => {\n this.sticky?.reflow();\n this.updateReadyToFix();\n };\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public getStickyProp() {\n if (typeof this.props.sticky !== 'undefined') {\n return this.props.sticky;\n }\n\n if (this.isMobileLayout) {\n return false;\n }\n\n return true;\n }\n\n private renderMain() {\n const { isReadyToFix } = this.state;\n\n const isStickyDesktop = !this.isMobileLayout && this.getStickyProp() && isReadyToFix;\n const isStickyMobile = this.isMobileLayout && this.getStickyProp();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div ref={this.wrapperRef} className={styles.headerWrapper()}>\n {isStickyDesktop || isStickyMobile ? (\n <Sticky ref={this.stickyRef} side=\"top\">\n {this.renderHeader}\n </Sticky>\n ) : (\n this.renderHeader()\n )}\n </div>\n </CommonWrapper>\n );\n }\n\n private renderHeader = (fixed = false) => {\n return (\n <div\n className={cx(styles.header(this.theme), {\n [styles.headerFixed(this.theme)]: fixed,\n [styles.mobileHeader(this.theme)]: this.isMobileLayout,\n })}\n >\n {this.renderClose(fixed)}\n <div\n className={cx(styles.title(this.theme), {\n [styles.mobileTitle(this.theme)]: this.isMobileLayout,\n [styles.titleFixed()]: fixed,\n })}\n >\n {isFunction(this.props.children) ? this.props.children(fixed) : this.props.children}\n </div>\n </div>\n );\n };\n\n private renderClose = (fixed: boolean) => {\n const stickyOffset = parseInt(this.theme.sidePageHeaderStickyOffset);\n return (\n <div\n className={cx(styles.wrapperClose(this.theme), {\n [styles.wrapperCloseFixed(this.theme)]: fixed,\n [styles.mobileWrapperClose(this.theme)]: this.isMobileLayout,\n })}\n >\n {this.isMobileLayout ? (\n this.closeIcon\n ) : (\n <Sticky side=\"top\" offset={stickyOffset}>\n {this.closeIcon}\n </Sticky>\n )}\n </div>\n );\n };\n\n private closeIcon = () => (\n <SidePageContext.Consumer>\n {({ requestClose }) => (\n <button\n className={cx(styles.close(this.theme), {\n [styles.closeFocus(this.theme)]: this.state.focusedByTab,\n })}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onClick={requestClose}\n data-tid=\"SidePage__close\"\n tabIndex={0}\n >\n <CrossIcon />\n </button>\n )}\n </SidePageContext.Consumer>\n );\n\n private updateReadyToFix = () => {\n if (this.wrapper) {\n const wrapperScrolledUp = getDOMRect(this.wrapper).top;\n const isReadyToFix = this.regularHeight + wrapperScrolledUp <= this.fixedHeaderHeight;\n this.setState((state) => (state.isReadyToFix !== isReadyToFix ? { ...state, isReadyToFix } : state));\n }\n };\n\n private wrapperRef = (el: HTMLElement | null) => {\n this.wrapper = el;\n };\n\n private stickyRef = (el: Sticky | null) => {\n this.sticky = el;\n };\n\n private handleFocus = () => {\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n };\n\n private handleBlur = () => {\n this.setState({ focusedByTab: false });\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["SidePageHeader.tsx"],"names":["React","Sticky","CrossIcon","isFunction","ThemeContext","CommonWrapper","cx","keyListener","responsiveLayout","rootNode","getDOMRect","styles","SidePageContext","SidePageHeaderDataTids","root","close","SidePageHeader","context","state","isReadyToFix","focusedByTab","wrapper","sticky","lastRegularHeight","componentDidMount","window","addEventListener","update","setHasHeader","headerRef","componentWillUnmount","removeEventListener","reflow","updateReadyToFix","renderHeader","fixed","header","theme","headerFixed","mobileHeader","isMobileLayout","renderClose","title","mobileTitle","titleFixed","props","children","stickyOffset","parseInt","sidePageHeaderStickyOffset","wrapperClose","wrapperCloseFixed","mobileWrapperClose","closeIcon","requestClose","closeFocus","handleFocus","handleBlur","wrapperScrolledUp","top","regularHeight","fixedHeaderHeight","setState","wrapperRef","el","stickyRef","requestAnimationFrame","isTabPressed","render","renderMain","getStickyProp","isStickyDesktop","isStickyMobile","setRootNode","headerWrapper","height","sidePageHeaderFixedLineHeight","sidePageHeaderFixedPaddingY","Component","__KONTUR_REACT_UI__","contextType"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { Sticky } from '../Sticky';\nimport { CrossIcon } from '../../internal/icons/CrossIcon';\nimport { isFunction } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\n\nimport { styles } from './SidePage.styles';\nimport { SidePageContext, SidePageContextType } from './SidePageContext';\n\nexport interface SidePageHeaderProps extends CommonProps {\n children?: React.ReactNode | ((fixed: boolean) => React.ReactNode);\n sticky?: boolean;\n}\n\nexport interface SidePageHeaderState {\n isReadyToFix: boolean;\n focusedByTab: boolean;\n}\n\nexport const SidePageHeaderDataTids = {\n root: 'SidePageHeader__root',\n close: 'SidePage__close',\n} as const;\n\n/**\n * Шапка сайдпейджа\n *\n * @visibleName SidePage.Header\n */\n@responsiveLayout\n@rootNode\nexport class SidePageHeader extends React.Component<SidePageHeaderProps, SidePageHeaderState> {\n public static __KONTUR_REACT_UI__ = 'SidePageHeader';\n\n public static contextType = SidePageContext;\n public context: SidePageContextType = this.context;\n\n private isMobileLayout!: boolean;\n\n public state: SidePageHeaderState = {\n isReadyToFix: false,\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private wrapper: HTMLElement | null = null;\n private sticky: Sticky | null = null;\n private lastRegularHeight = 0;\n private setRootNode!: TSetRootNode;\n\n public get regularHeight(): number {\n const { isReadyToFix } = this.state;\n if (!this.wrapper) {\n return 0;\n }\n if (!isReadyToFix) {\n this.lastRegularHeight = getDOMRect(this.wrapper).height;\n }\n return this.lastRegularHeight;\n }\n\n public get fixedHeaderHeight(): number {\n const { theme } = this;\n return parseInt(theme.sidePageHeaderFixedLineHeight) + parseInt(theme.sidePageHeaderFixedPaddingY) * 2;\n }\n\n public componentDidMount = () => {\n window.addEventListener('scroll', this.update, true);\n this.context.setHasHeader?.();\n this.context.headerRef(this);\n };\n\n public componentWillUnmount = () => {\n window.removeEventListener('scroll', this.update, true);\n this.context.setHasHeader?.(false);\n this.context.headerRef(null);\n };\n\n public update = () => {\n this.sticky?.reflow();\n this.updateReadyToFix();\n };\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public getStickyProp() {\n if (typeof this.props.sticky !== 'undefined') {\n return this.props.sticky;\n }\n\n if (this.isMobileLayout) {\n return false;\n }\n\n return true;\n }\n\n private renderMain() {\n const { isReadyToFix } = this.state;\n\n const isStickyDesktop = !this.isMobileLayout && this.getStickyProp() && isReadyToFix;\n const isStickyMobile = this.isMobileLayout && this.getStickyProp();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div data-tid={SidePageHeaderDataTids.root} ref={this.wrapperRef} className={styles.headerWrapper()}>\n {isStickyDesktop || isStickyMobile ? (\n <Sticky ref={this.stickyRef} side=\"top\">\n {this.renderHeader}\n </Sticky>\n ) : (\n this.renderHeader()\n )}\n </div>\n </CommonWrapper>\n );\n }\n\n private renderHeader = (fixed = false) => {\n return (\n <div\n className={cx(styles.header(this.theme), {\n [styles.headerFixed(this.theme)]: fixed,\n [styles.mobileHeader(this.theme)]: this.isMobileLayout,\n })}\n >\n {this.renderClose(fixed)}\n <div\n className={cx(styles.title(this.theme), {\n [styles.mobileTitle(this.theme)]: this.isMobileLayout,\n [styles.titleFixed()]: fixed,\n })}\n >\n {isFunction(this.props.children) ? this.props.children(fixed) : this.props.children}\n </div>\n </div>\n );\n };\n\n private renderClose = (fixed: boolean) => {\n const stickyOffset = parseInt(this.theme.sidePageHeaderStickyOffset);\n return (\n <div\n className={cx(styles.wrapperClose(this.theme), {\n [styles.wrapperCloseFixed(this.theme)]: fixed,\n [styles.mobileWrapperClose(this.theme)]: this.isMobileLayout,\n })}\n >\n {this.isMobileLayout ? (\n this.closeIcon\n ) : (\n <Sticky side=\"top\" offset={stickyOffset}>\n {this.closeIcon}\n </Sticky>\n )}\n </div>\n );\n };\n\n private closeIcon = () => (\n <SidePageContext.Consumer>\n {({ requestClose }) => (\n <button\n className={cx(styles.close(this.theme), {\n [styles.closeFocus(this.theme)]: this.state.focusedByTab,\n })}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onClick={requestClose}\n data-tid={SidePageHeaderDataTids.close}\n tabIndex={0}\n >\n <CrossIcon />\n </button>\n )}\n </SidePageContext.Consumer>\n );\n\n private updateReadyToFix = () => {\n if (this.wrapper) {\n const wrapperScrolledUp = getDOMRect(this.wrapper).top;\n const isReadyToFix = this.regularHeight + wrapperScrolledUp <= this.fixedHeaderHeight;\n this.setState((state) => (state.isReadyToFix !== isReadyToFix ? { ...state, isReadyToFix } : state));\n }\n };\n\n private wrapperRef = (el: HTMLElement | null) => {\n this.wrapper = el;\n };\n\n private stickyRef = (el: Sticky | null) => {\n this.sticky = el;\n };\n\n private handleFocus = () => {\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n };\n\n private handleBlur = () => {\n this.setState({ focusedByTab: false });\n };\n}\n"]}
|
|
@@ -9,6 +9,10 @@ export interface SidePageHeaderState {
|
|
|
9
9
|
isReadyToFix: boolean;
|
|
10
10
|
focusedByTab: boolean;
|
|
11
11
|
}
|
|
12
|
+
export declare const SidePageHeaderDataTids: {
|
|
13
|
+
readonly root: "SidePageHeader__root";
|
|
14
|
+
readonly close: "SidePage__close";
|
|
15
|
+
};
|
|
12
16
|
/**
|
|
13
17
|
* Шапка сайдпейджа
|
|
14
18
|
*
|
|
@@ -18,17 +18,24 @@ var types = {
|
|
|
18
18
|
mini: 'mini',
|
|
19
19
|
normal: 'normal'
|
|
20
20
|
};
|
|
21
|
-
export
|
|
21
|
+
export var SpinnerDataTids = {
|
|
22
|
+
root: 'Spinner__root'
|
|
23
|
+
};
|
|
22
24
|
/**
|
|
23
|
-
* DRAFT - инлайн-лоадер
|
|
24
|
-
*/
|
|
25
|
-
|
|
25
|
+
* DRAFT - инлайн-лоадер
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
export var Spinner = (_dec = locale('Spinner', SpinnerLocaleHelper), rootNode(_class = _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Component) {
|
|
26
29
|
_inheritsLoose(Spinner, _React$Component);
|
|
27
30
|
|
|
28
|
-
function Spinner(
|
|
31
|
+
function Spinner() {
|
|
29
32
|
var _this;
|
|
30
33
|
|
|
31
|
-
|
|
34
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
35
|
+
args[_key] = arguments[_key];
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
_this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
|
|
32
39
|
|
|
33
40
|
_this.renderSpinner = function (type, dimmed, inline) {
|
|
34
41
|
var _cx;
|
|
@@ -73,6 +80,7 @@ var Spinner = (_dec = locale('Spinner', SpinnerLocaleHelper), rootNode(_class =
|
|
|
73
80
|
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
74
81
|
rootNodeRef: this.setRootNode
|
|
75
82
|
}, this.props), /*#__PURE__*/React.createElement("div", {
|
|
83
|
+
"data-tid": SpinnerDataTids.root,
|
|
76
84
|
className: styles.spinner()
|
|
77
85
|
}, /*#__PURE__*/React.createElement("span", {
|
|
78
86
|
className: styles.inner()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Spinner.tsx"],"names":["React","PropTypes","locale","ThemeContext","SpinnerIcon","CommonWrapper","cx","rootNode","styles","SpinnerLocaleHelper","types","big","mini","normal","
|
|
1
|
+
{"version":3,"sources":["Spinner.tsx"],"names":["React","PropTypes","locale","ThemeContext","SpinnerIcon","CommonWrapper","cx","rootNode","styles","SpinnerLocaleHelper","types","big","mini","normal","SpinnerDataTids","root","Spinner","renderSpinner","type","dimmed","inline","circle","theme","props","color","circleDimmedColor","circleWithoutColorAnimation","width","renderCaption","caption","captionColor","render","renderMain","loading","setRootNode","spinner","inner","Component","__KONTUR_REACT_UI__","propTypes","node","bool","oneOf","Object","keys","defaultProps","Types"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { SpinnerIcon } from '../../internal/icons/SpinnerIcon';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Spinner.styles';\nimport { SpinnerLocale, SpinnerLocaleHelper } from './locale';\n\nconst types: Record<SpinnerType, SpinnerType> = {\n big: 'big',\n mini: 'mini',\n normal: 'normal',\n};\n\nexport type SpinnerType = 'mini' | 'normal' | 'big';\n\nexport interface SpinnerProps extends CommonProps {\n caption?: React.ReactNode;\n dimmed?: boolean;\n /**\n * Тип спиннера\n * @default normal\n */\n type: SpinnerType;\n inline?: boolean;\n /**\n * Толщина спиннера\n */\n width?: number;\n /**\n * Цвет спиннера\n */\n color?: React.CSSProperties['color'];\n}\n\nexport const SpinnerDataTids = {\n root: 'Spinner__root',\n} as const;\n\n/**\n * DRAFT - инлайн-лоадер\n */\n\n@rootNode\n@locale('Spinner', SpinnerLocaleHelper)\nexport class Spinner extends React.Component<SpinnerProps> {\n public static __KONTUR_REACT_UI__ = 'Spinner';\n\n public static propTypes = {\n /**\n * Текст рядом с мини-лоадером.\n *\n * 'Загрузка' - значение по-умолчанию\n */\n caption: PropTypes.node,\n\n dimmed: PropTypes.bool,\n\n /**\n * Тип спиннера: mini, normal, big\n *\n * Значение по-умолчанию - normal\n *\n * Spinner.types - все доступные типы\n */\n type: PropTypes.oneOf(Object.keys(types)),\n };\n\n public static defaultProps: SpinnerProps = {\n type: 'normal',\n };\n\n public static Types: typeof types = types;\n private theme!: Theme;\n private readonly locale!: SpinnerLocale;\n private setRootNode!: TSetRootNode;\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 { type, caption = this.locale.loading, dimmed, inline } = this.props;\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div data-tid={SpinnerDataTids.root} className={styles.spinner()}>\n <span className={styles.inner()}>{this.renderSpinner(type, dimmed, inline)}</span>\n {caption && this.renderCaption(type, caption)}\n </div>\n </CommonWrapper>\n );\n }\n\n private renderSpinner = (type: SpinnerType, dimmed?: boolean, inline?: boolean) => {\n return (\n <SpinnerIcon\n size={type}\n className={cx({\n [styles.circle(this.theme)]: !dimmed && !this.props.color,\n [styles.circleDimmedColor(this.theme)]: dimmed,\n [styles.circleWithoutColorAnimation(this.theme)]: dimmed || !!this.props.color,\n })}\n dimmed={dimmed}\n width={this.props.width}\n color={this.props.color}\n inline={inline}\n />\n );\n };\n\n private renderCaption = (type: SpinnerType, caption: React.ReactNode) => (\n <span className={cx(styles[type](this.theme), styles.captionColor(this.theme))}>{caption}</span>\n );\n}\n"]}
|
|
@@ -21,6 +21,9 @@ export interface SpinnerProps extends CommonProps {
|
|
|
21
21
|
*/
|
|
22
22
|
color?: React.CSSProperties['color'];
|
|
23
23
|
}
|
|
24
|
+
export declare const SpinnerDataTids: {
|
|
25
|
+
readonly root: "Spinner__root";
|
|
26
|
+
};
|
|
24
27
|
/**
|
|
25
28
|
* DRAFT - инлайн-лоадер
|
|
26
29
|
*/
|
|
@@ -48,7 +51,6 @@ export declare class Spinner extends React.Component<SpinnerProps> {
|
|
|
48
51
|
private theme;
|
|
49
52
|
private readonly locale;
|
|
50
53
|
private setRootNode;
|
|
51
|
-
constructor(props: SpinnerProps);
|
|
52
54
|
render(): JSX.Element;
|
|
53
55
|
private renderMain;
|
|
54
56
|
private renderSpinner;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint-disable no-useless-constructor */
|
|
1
2
|
import { ColorFactory } from "../../../lib/styles/ColorFactory";
|
|
2
3
|
export var SpinnerFallbackAnimationRunner = function SpinnerFallbackAnimationRunner(animations, FPS) {
|
|
3
4
|
var _this = this;
|
|
@@ -37,9 +38,15 @@ var rafInterval = function rafInterval(fn, delay) {
|
|
|
37
38
|
var rafId = 0;
|
|
38
39
|
|
|
39
40
|
var interval = function interval() {
|
|
40
|
-
if (cleared)
|
|
41
|
+
if (cleared) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
|
|
41
45
|
var timestamp = new Date().getTime();
|
|
42
|
-
|
|
46
|
+
|
|
47
|
+
if (!lastcall) {
|
|
48
|
+
lastcall = timestamp;
|
|
49
|
+
}
|
|
43
50
|
|
|
44
51
|
if (timestamp - lastcall > delay) {
|
|
45
52
|
fn();
|
|
@@ -65,9 +72,16 @@ var Animation = function Animation(duration, onProgress, onFinish) {
|
|
|
65
72
|
this.isFinished = false;
|
|
66
73
|
|
|
67
74
|
this.step = function () {
|
|
68
|
-
if (_this2.isFinished)
|
|
75
|
+
if (_this2.isFinished) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
|
|
69
79
|
var timestamp = new Date().getTime();
|
|
70
|
-
|
|
80
|
+
|
|
81
|
+
if (!_this2.startTime) {
|
|
82
|
+
_this2.startTime = timestamp;
|
|
83
|
+
}
|
|
84
|
+
|
|
71
85
|
var progress = (timestamp - _this2.startTime) / _this2.duration;
|
|
72
86
|
|
|
73
87
|
_this2.onProgress(progress);
|