@skbkontur/react-ui 0.0.0-95a1dbe516 → 0.0.0-9cd4422b72
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/cjs/components/Autocomplete/Autocomplete.d.ts +0 -1
- package/cjs/components/Autocomplete/Autocomplete.js +7 -16
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.styles.d.ts +1 -2
- package/cjs/components/Autocomplete/Autocomplete.styles.js +6 -9
- package/cjs/components/Autocomplete/Autocomplete.styles.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +10 -4
- package/cjs/components/Button/Button.js +53 -12
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.md +10 -0
- package/cjs/components/Button/Button.mixins.d.ts +6 -7
- package/cjs/components/Button/Button.mixins.js +96 -97
- package/cjs/components/Button/Button.mixins.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +5 -3
- package/cjs/components/Button/Button.styles.js +579 -558
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/ButtonArrow.d.ts +1 -2
- package/cjs/components/Button/ButtonArrow.js +29 -38
- package/cjs/components/Button/ButtonArrow.js.map +1 -1
- package/cjs/components/Button/ButtonIcon.js +15 -18
- package/cjs/components/Button/ButtonIcon.js.map +1 -1
- package/cjs/components/Button/ButtonIcon.styles.d.ts +1 -2
- package/cjs/components/Button/ButtonIcon.styles.js +54 -57
- package/cjs/components/Button/ButtonIcon.styles.js.map +1 -1
- package/cjs/components/Button/LoadingButtonIcon.js +4 -7
- package/cjs/components/Button/LoadingButtonIcon.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +0 -1
- package/cjs/components/Calendar/Calendar.js +7 -17
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Calendar/Calendar.styles.d.ts +1 -2
- package/cjs/components/Calendar/Calendar.styles.js +19 -22
- package/cjs/components/Calendar/Calendar.styles.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.js +12 -14
- package/cjs/components/Calendar/DayCellView.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.styles.d.ts +1 -2
- package/cjs/components/Calendar/DayCellView.styles.js +34 -37
- package/cjs/components/Calendar/DayCellView.styles.js.map +1 -1
- package/cjs/components/Calendar/Month.js +8 -18
- package/cjs/components/Calendar/Month.js.map +1 -1
- package/cjs/components/Calendar/MonthView.js +11 -13
- package/cjs/components/Calendar/MonthView.js.map +1 -1
- package/cjs/components/Calendar/MonthView.styles.d.ts +1 -2
- package/cjs/components/Calendar/MonthView.styles.js +33 -36
- package/cjs/components/Calendar/MonthView.styles.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +0 -1
- package/cjs/components/Center/Center.js +10 -19
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Center/Center.styles.d.ts +1 -2
- package/cjs/components/Center/Center.styles.js +17 -20
- package/cjs/components/Center/Center.styles.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +0 -1
- package/cjs/components/Checkbox/Checkbox.js +28 -39
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.mixins.d.ts +2 -3
- package/cjs/components/Checkbox/Checkbox.mixins.js +26 -25
- package/cjs/components/Checkbox/Checkbox.mixins.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.d.ts +1 -2
- package/cjs/components/Checkbox/Checkbox.styles.js +142 -145
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/DateInput/DateFragmentsView.d.ts +0 -1
- package/cjs/components/DateInput/DateFragmentsView.js +2 -14
- package/cjs/components/DateInput/DateFragmentsView.js.map +1 -1
- package/cjs/components/DateInput/DateFragmentsView.styles.d.ts +1 -2
- package/cjs/components/DateInput/DateFragmentsView.styles.js +25 -28
- package/cjs/components/DateInput/DateFragmentsView.styles.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +0 -1
- package/cjs/components/DateInput/DateInput.js +11 -20
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/DateInput.styles.d.ts +1 -2
- package/cjs/components/DateInput/DateInput.styles.js +28 -29
- package/cjs/components/DateInput/DateInput.styles.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +0 -1
- package/cjs/components/DatePicker/DatePicker.js +5 -16
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.styles.d.ts +1 -2
- package/cjs/components/DatePicker/DatePicker.styles.js +23 -26
- package/cjs/components/DatePicker/DatePicker.styles.js.map +1 -1
- package/cjs/components/DatePicker/Picker.d.ts +0 -1
- package/cjs/components/DatePicker/Picker.js +2 -13
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.js +2 -2
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js +2 -2
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +36 -41
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.mixins.d.ts +1 -2
- package/cjs/components/FileUploader/FileUploader.mixins.js +7 -8
- package/cjs/components/FileUploader/FileUploader.mixins.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.styles.d.ts +1 -2
- package/cjs/components/FileUploader/FileUploader.styles.js +177 -176
- package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
- package/cjs/components/FxInput/FxInput.js +2 -2
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInputRestoreBtn.js +3 -3
- package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoaderView.js +13 -17
- package/cjs/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.d.ts +2 -3
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js +78 -84
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +0 -1
- package/cjs/components/Group/Group.js +14 -24
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.styles.d.ts +1 -2
- package/cjs/components/Group/Group.styles.js +20 -23
- package/cjs/components/Group/Group.styles.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +0 -1
- package/cjs/components/Hint/Hint.js +2 -12
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Hint/Hint.styles.d.ts +1 -2
- package/cjs/components/Hint/Hint.styles.js +14 -17
- package/cjs/components/Hint/Hint.styles.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +0 -1
- package/cjs/components/Input/Input.js +29 -46
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.d.ts +1 -2
- package/cjs/components/Input/Input.styles.js +236 -239
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.js +1 -4
- package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.styles.d.ts +1 -2
- package/cjs/components/Input/InputLayout/InputLayout.styles.js +31 -34
- package/cjs/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayoutAside.js +1 -3
- package/cjs/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js +7 -11
- package/cjs/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayoutAsideText.js +4 -8
- package/cjs/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
- package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js +6 -8
- package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +0 -1
- package/cjs/components/Kebab/Kebab.js +18 -24
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Kebab/Kebab.styles.d.ts +1 -2
- package/cjs/components/Kebab/Kebab.styles.js +60 -63
- package/cjs/components/Kebab/Kebab.styles.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +18 -17
- package/cjs/components/Link/Link.js +99 -60
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.md +21 -0
- package/cjs/components/Link/Link.styles.d.ts +4 -2
- package/cjs/components/Link/Link.styles.js +172 -148
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Link/LinkIcon.js +7 -9
- package/cjs/components/Link/LinkIcon.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +0 -1
- package/cjs/components/Loader/Loader.js +2 -16
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/Loader/Loader.styles.d.ts +1 -2
- package/cjs/components/Loader/Loader.styles.js +19 -22
- package/cjs/components/Loader/Loader.styles.js.map +1 -1
- package/cjs/components/MenuFooter/MenuFooter.js +13 -15
- package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
- package/cjs/components/MenuFooter/MenuFooter.mixins.d.ts +2 -3
- package/cjs/components/MenuFooter/MenuFooter.mixins.js +21 -23
- package/cjs/components/MenuFooter/MenuFooter.mixins.js.map +1 -1
- package/cjs/components/MenuFooter/MenuFooter.styles.d.ts +1 -2
- package/cjs/components/MenuFooter/MenuFooter.styles.js +61 -64
- package/cjs/components/MenuFooter/MenuFooter.styles.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.js +13 -15
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.mixins.d.ts +2 -3
- package/cjs/components/MenuHeader/MenuHeader.mixins.js +21 -23
- package/cjs/components/MenuHeader/MenuHeader.mixins.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.styles.d.ts +1 -2
- package/cjs/components/MenuHeader/MenuHeader.styles.js +61 -64
- package/cjs/components/MenuHeader/MenuHeader.styles.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +0 -1
- package/cjs/components/MenuItem/MenuItem.js +24 -37
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.mixins.d.ts +3 -4
- package/cjs/components/MenuItem/MenuItem.mixins.js +39 -38
- package/cjs/components/MenuItem/MenuItem.mixins.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -2
- package/cjs/components/MenuItem/MenuItem.styles.js +108 -113
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.js +6 -8
- package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -2
- package/cjs/components/MenuSeparator/MenuSeparator.styles.js +11 -14
- package/cjs/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.js +4 -5
- package/cjs/components/MiniModal/MiniModal.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -2
- package/cjs/components/MiniModal/MiniModal.styles.js +44 -47
- package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalBody.js +3 -11
- package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalFooter.js +10 -12
- package/cjs/components/MiniModal/MiniModalFooter.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalHeader.js +5 -10
- package/cjs/components/MiniModal/MiniModalHeader.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalIndent.js +4 -6
- package/cjs/components/MiniModal/MiniModalIndent.js.map +1 -1
- package/cjs/components/Modal/Modal.d.ts +0 -1
- package/cjs/components/Modal/Modal.js +2 -19
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +1 -2
- package/cjs/components/Modal/Modal.styles.js +207 -210
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +0 -1
- package/cjs/components/Modal/ModalBody.js +12 -23
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js +9 -11
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.js +8 -10
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.js +10 -12
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/ModalSeparator.js +5 -7
- package/cjs/components/Modal/ModalSeparator.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +0 -1
- package/cjs/components/Paging/Paging.js +30 -45
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.d.ts +1 -2
- package/cjs/components/Paging/Paging.styles.js +79 -82
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +0 -1
- package/cjs/components/PasswordInput/PasswordInput.js +8 -19
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.styles.d.ts +1 -2
- package/cjs/components/PasswordInput/PasswordInput.styles.js +33 -36
- package/cjs/components/PasswordInput/PasswordInput.styles.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +0 -1
- package/cjs/components/Radio/Radio.js +27 -41
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/Radio/Radio.mixins.d.ts +5 -6
- package/cjs/components/Radio/Radio.mixins.js +48 -52
- package/cjs/components/Radio/Radio.mixins.js.map +1 -1
- package/cjs/components/Radio/Radio.styles.d.ts +1 -2
- package/cjs/components/Radio/Radio.styles.js +128 -146
- package/cjs/components/Radio/Radio.styles.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +0 -1
- package/cjs/components/RadioGroup/RadioGroup.js +8 -19
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -2
- package/cjs/components/RadioGroup/RadioGroup.styles.js +15 -18
- package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollBar.d.ts +0 -1
- package/cjs/components/ScrollContainer/ScrollBar.js +8 -17
- package/cjs/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -3
- package/cjs/components/ScrollContainer/ScrollContainer.js +6 -19
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +1 -2
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js +48 -51
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +1 -2
- package/cjs/components/Select/Select.js +4 -17
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.styles.d.ts +1 -2
- package/cjs/components/Select/Select.styles.js +60 -63
- package/cjs/components/Select/Select.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +0 -1
- package/cjs/components/SidePage/SidePage.js +2 -15
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +1 -2
- package/cjs/components/SidePage/SidePage.styles.js +201 -204
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +0 -1
- package/cjs/components/SidePage/SidePageBody.js +8 -18
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageCloseButton.js +5 -8
- package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +0 -1
- package/cjs/components/SidePage/SidePageContainer.js +15 -26
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +0 -1
- package/cjs/components/SidePage/SidePageFooter.js +4 -14
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +0 -1
- package/cjs/components/SidePage/SidePageHeader.js +15 -29
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +0 -1
- package/cjs/components/Spinner/Spinner.js +8 -24
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/Spinner.styles.d.ts +1 -2
- package/cjs/components/Spinner/Spinner.styles.js +71 -81
- package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +0 -2
- package/cjs/components/Sticky/Sticky.js +1 -14
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Sticky/Sticky.styles.d.ts +1 -2
- package/cjs/components/Sticky/Sticky.styles.js +17 -20
- package/cjs/components/Sticky/Sticky.styles.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +0 -1
- package/cjs/components/Switcher/Switcher.js +7 -18
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -2
- package/cjs/components/Switcher/Switcher.styles.js +40 -43
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Tabs/Indicator.d.ts +0 -1
- package/cjs/components/Tabs/Indicator.js +2 -12
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Indicator.styles.d.ts +1 -2
- package/cjs/components/Tabs/Indicator.styles.js +24 -27
- package/cjs/components/Tabs/Indicator.styles.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +0 -1
- package/cjs/components/Tabs/Tab.js +3 -12
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tab.styles.d.ts +3 -4
- package/cjs/components/Tabs/Tab.styles.js +116 -121
- package/cjs/components/Tabs/Tab.styles.js.map +1 -1
- package/cjs/components/Tabs/Tabs.js +2 -9
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Tabs/Tabs.styles.d.ts +1 -2
- package/cjs/components/Tabs/Tabs.styles.js +18 -22
- package/cjs/components/Tabs/Tabs.styles.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +0 -1
- package/cjs/components/Textarea/Textarea.js +15 -27
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.mixins.d.ts +3 -4
- package/cjs/components/Textarea/Textarea.mixins.js +16 -16
- package/cjs/components/Textarea/Textarea.mixins.js.map +1 -1
- package/cjs/components/Textarea/Textarea.styles.d.ts +1 -2
- package/cjs/components/Textarea/Textarea.styles.js +109 -112
- package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.js +11 -17
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +0 -1
- package/cjs/components/Toast/Toast.js +3 -14
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.styles.d.ts +1 -2
- package/cjs/components/Toast/Toast.styles.js +14 -17
- package/cjs/components/Toast/Toast.styles.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +0 -1
- package/cjs/components/Toast/ToastView.js +8 -19
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.d.ts +1 -2
- package/cjs/components/Toast/ToastView.styles.js +44 -47
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +0 -1
- package/cjs/components/Toggle/Toggle.js +2 -22
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Toggle/Toggle.mixins.d.ts +7 -8
- package/cjs/components/Toggle/Toggle.mixins.js +64 -69
- package/cjs/components/Toggle/Toggle.mixins.js.map +1 -1
- package/cjs/components/Toggle/Toggle.styles.d.ts +1 -2
- package/cjs/components/Toggle/Toggle.styles.js +256 -259
- package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +2 -3
- package/cjs/components/Token/Token.js +2 -13
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/Token/Token.mixins.d.ts +1 -2
- package/cjs/components/Token/Token.mixins.js +15 -17
- package/cjs/components/Token/Token.mixins.js.map +1 -1
- package/cjs/components/Token/Token.styles.d.ts +2 -3
- package/cjs/components/Token/Token.styles.js +163 -171
- package/cjs/components/Token/Token.styles.js.map +1 -1
- package/cjs/components/Token/TokenView.js +11 -14
- package/cjs/components/Token/TokenView.js.map +1 -1
- package/cjs/components/TokenInput/TextWidthHelper.d.ts +0 -2
- package/cjs/components/TokenInput/TextWidthHelper.js +1 -16
- package/cjs/components/TokenInput/TextWidthHelper.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +0 -1
- package/cjs/components/TokenInput/TokenInput.js +3 -14
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.mixins.d.ts +2 -3
- package/cjs/components/TokenInput/TokenInput.mixins.js +11 -11
- package/cjs/components/TokenInput/TokenInput.mixins.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.styles.d.ts +1 -2
- package/cjs/components/TokenInput/TokenInput.styles.js +85 -88
- package/cjs/components/TokenInput/TokenInput.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.js +2 -2
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +0 -1
- package/cjs/components/Tooltip/Tooltip.js +3 -14
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.styles.d.ts +1 -2
- package/cjs/components/Tooltip/Tooltip.styles.js +17 -20
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.js +4 -4
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +7 -9
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +1 -2
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js +21 -24
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +1 -3
- package/cjs/internal/CommonWrapper/CommonWrapper.js +4 -17
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/CommonWrapper/{extractCommonProps.d.ts → utils/extractCommonProps.d.ts} +2 -2
- package/cjs/internal/CommonWrapper/utils/extractCommonProps.js.map +1 -0
- package/cjs/internal/CommonWrapper/{getCommonVisualStateDataAttributes.js → utils/getCommonVisualStateDataAttributes.js} +3 -4
- package/cjs/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes.js.map +1 -0
- package/cjs/internal/CommonWrapper/{getVisualStateDataAttributes.d.ts → utils/getVisualStateDataAttributes.d.ts} +1 -1
- package/cjs/internal/CommonWrapper/{getVisualStateDataAttributes.js → utils/getVisualStateDataAttributes.js} +3 -3
- package/cjs/internal/CommonWrapper/utils/getVisualStateDataAttributes.js.map +1 -0
- package/cjs/internal/CommonWrapper/utils/tryGetBoolean.d.ts +1 -0
- package/cjs/internal/CommonWrapper/utils/tryGetBoolean.js +1 -0
- package/cjs/internal/CommonWrapper/utils/tryGetBoolean.js.map +1 -0
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js +2 -3
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +0 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js +8 -21
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.styles.d.ts +1 -2
- package/cjs/internal/CustomComboBox/CustomComboBox.styles.js +11 -14
- package/cjs/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -1
- package/cjs/internal/DataTids/DataTids.js +16 -29
- package/cjs/internal/DataTids/DataTids.js.map +1 -1
- package/cjs/internal/DataTids/DataTids.styles.d.ts +1 -2
- package/cjs/internal/DataTids/DataTids.styles.js +17 -20
- package/cjs/internal/DataTids/DataTids.styles.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +0 -1
- package/cjs/internal/DateSelect/DateSelect.js +2 -13
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.styles.d.ts +1 -2
- package/cjs/internal/DateSelect/DateSelect.styles.js +78 -81
- package/cjs/internal/DateSelect/DateSelect.styles.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +0 -2
- package/cjs/internal/DropdownContainer/DropdownContainer.js +1 -15
- package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.styles.d.ts +1 -2
- package/cjs/internal/DropdownContainer/DropdownContainer.styles.js +5 -8
- package/cjs/internal/DropdownContainer/DropdownContainer.styles.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +19 -21
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +1 -2
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +57 -57
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js +5 -8
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +7 -9
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +1 -2
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +23 -23
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +15 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +14 -19
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/cjs/internal/InputLikeText/HiddenInput.js +21 -26
- package/cjs/internal/InputLikeText/HiddenInput.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +0 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +47 -75
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -2
- package/cjs/internal/InputLikeText/InputLikeText.styles.js +17 -20
- package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +2 -12
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +1 -2
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js +12 -15
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.d.ts +0 -1
- package/cjs/internal/InternalMenu/InternalMenu.js +15 -28
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.styles.d.ts +1 -2
- package/cjs/internal/InternalMenu/InternalMenu.styles.js +32 -35
- package/cjs/internal/InternalMenu/InternalMenu.styles.js.map +1 -1
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js +1 -7
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +1 -2
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.js +5 -8
- package/cjs/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -1
- package/cjs/internal/MaskedInputElement/MaskedInputElement.js +5 -7
- package/cjs/internal/MaskedInputElement/MaskedInputElement.js.map +1 -1
- package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +1 -2
- package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js +12 -15
- package/cjs/internal/MaskedInputElement/MaskedInputElement.styles.js.map +1 -1
- package/cjs/internal/Menu/Menu.d.ts +0 -1
- package/cjs/internal/Menu/Menu.js +26 -40
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/Menu.styles.d.ts +1 -2
- package/cjs/internal/Menu/Menu.styles.js +52 -55
- package/cjs/internal/Menu/Menu.styles.js.map +1 -1
- package/cjs/internal/MenuMessage/MenuMessage.js +12 -13
- package/cjs/internal/MenuMessage/MenuMessage.js.map +1 -1
- package/cjs/internal/MenuMessage/MenuMessage.styles.d.ts +1 -2
- package/cjs/internal/MenuMessage/MenuMessage.styles.js +35 -38
- package/cjs/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +0 -1
- package/cjs/internal/MobilePopup/MobilePopup.js +4 -15
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.styles.d.ts +1 -2
- package/cjs/internal/MobilePopup/MobilePopup.styles.js +32 -32
- package/cjs/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +0 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +12 -22
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +1 -2
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +24 -24
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
- package/cjs/internal/NativeDateInput/NativeDateInput.js +1 -9
- package/cjs/internal/NativeDateInput/NativeDateInput.js.map +1 -1
- package/cjs/internal/NativeDateInput/NativeDateInput.styles.d.ts +1 -2
- package/cjs/internal/NativeDateInput/NativeDateInput.styles.js +7 -7
- package/cjs/internal/NativeDateInput/NativeDateInput.styles.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +0 -1
- package/cjs/internal/Popup/Popup.js +5 -16
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/Popup.styles.d.ts +1 -2
- package/cjs/internal/Popup/Popup.styles.js +49 -52
- package/cjs/internal/Popup/Popup.styles.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.js +4 -11
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.styles.d.ts +1 -2
- package/cjs/internal/Popup/PopupPin.styles.js +5 -8
- package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +0 -1
- package/cjs/internal/PopupMenu/PopupMenu.js +5 -17
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.styles.d.ts +1 -2
- package/cjs/internal/PopupMenu/PopupMenu.styles.js +8 -11
- package/cjs/internal/PopupMenu/PopupMenu.styles.js.map +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.js +1 -8
- package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -2
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.js +14 -17
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
- package/cjs/internal/TextWidthHelper/TextWidthHelper.js +1 -9
- package/cjs/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +1 -2
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js +10 -10
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/ComponentsGroup.js +2 -6
- package/cjs/internal/ThemePlayground/ComponentsGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.d.ts +0 -1
- package/cjs/internal/ThemePlayground/Playground.js +4 -16
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.styles.d.ts +1 -2
- package/cjs/internal/ThemePlayground/Playground.styles.js +72 -75
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js +2 -2
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +0 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +5 -16
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeEditor.js +2 -12
- package/cjs/internal/ThemePlayground/ThemeEditor.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.d.ts +0 -1
- package/cjs/internal/ThemePlayground/VariableValue.js +7 -22
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.d.ts +0 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js +133 -139
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +1 -2
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js +77 -80
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js.map +1 -1
- package/cjs/internal/icons/16px/icon.styles.d.ts +1 -2
- package/cjs/internal/icons/16px/icon.styles.js +8 -11
- package/cjs/internal/icons/16px/icon.styles.js.map +1 -1
- package/cjs/internal/icons/16px/index.js +2 -5
- package/cjs/internal/icons/16px/index.js.map +1 -1
- package/cjs/internal/icons/20px/icon.styles.d.ts +1 -2
- package/cjs/internal/icons/20px/icon.styles.js +8 -11
- package/cjs/internal/icons/20px/icon.styles.js.map +1 -1
- package/cjs/internal/icons/20px/svg.js +4 -10
- package/cjs/internal/icons/20px/svg.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.js +6 -8
- package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.styles.d.ts +1 -2
- package/cjs/internal/icons/SpinnerIcon.styles.js +14 -17
- package/cjs/internal/icons/SpinnerIcon.styles.js.map +1 -1
- package/cjs/internal/icons2022/BaseIcon.js +1 -4
- package/cjs/internal/icons2022/BaseIcon.js.map +1 -1
- package/cjs/internal/icons2022/BaseIcon.styles.d.ts +1 -2
- package/cjs/internal/icons2022/BaseIcon.styles.js +6 -9
- package/cjs/internal/icons2022/BaseIcon.styles.js.map +1 -1
- package/cjs/internal/icons2022/LoadingIcon.js +3 -10
- package/cjs/internal/icons2022/LoadingIcon.js.map +1 -1
- package/cjs/lib/styles/Mixins.d.ts +2 -3
- package/cjs/lib/styles/Mixins.js +5 -5
- package/cjs/lib/styles/Mixins.js.map +1 -1
- package/cjs/lib/theming/AnimationKeyframes.d.ts +1 -2
- package/cjs/lib/theming/AnimationKeyframes.js +18 -19
- package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
- package/cjs/lib/theming/Emotion.d.ts +8 -9
- package/cjs/lib/theming/Emotion.js +10 -21
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.d.ts +0 -2
- package/cjs/lib/theming/ThemeContext.js +1 -3
- package/cjs/lib/theming/ThemeContext.js.map +1 -1
- package/cjs/lib/theming/useTheme.js +3 -1
- package/cjs/lib/theming/useTheme.js.map +1 -1
- package/cjs/typings/react-ref.d.ts +34 -0
- package/cjs/typings/utility-types.d.ts +2 -0
- package/components/Autocomplete/Autocomplete/Autocomplete.js +11 -14
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +0 -1
- package/components/Autocomplete/Autocomplete.styles/Autocomplete.styles.js +6 -8
- package/components/Autocomplete/Autocomplete.styles/Autocomplete.styles.js.map +1 -1
- package/components/Autocomplete/Autocomplete.styles.d.ts +1 -2
- package/components/Button/Button/Button.js +91 -52
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +10 -4
- package/components/Button/Button.md +10 -0
- package/components/Button/Button.mixins/Button.mixins.js +15 -26
- package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
- package/components/Button/Button.mixins.d.ts +6 -7
- package/components/Button/Button.styles/Button.styles.js +267 -266
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +5 -3
- package/components/Button/ButtonArrow/ButtonArrow.js +15 -19
- package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
- package/components/Button/ButtonArrow.d.ts +1 -2
- package/components/Button/ButtonIcon/ButtonIcon.js +8 -10
- package/components/Button/ButtonIcon/ButtonIcon.js.map +1 -1
- package/components/Button/ButtonIcon.styles/ButtonIcon.styles.js +43 -45
- package/components/Button/ButtonIcon.styles/ButtonIcon.styles.js.map +1 -1
- package/components/Button/ButtonIcon.styles.d.ts +1 -2
- package/components/Button/LoadingButtonIcon/LoadingButtonIcon.js +4 -7
- package/components/Button/LoadingButtonIcon/LoadingButtonIcon.js.map +1 -1
- package/components/Calendar/Calendar/Calendar.js +7 -11
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +0 -1
- package/components/Calendar/Calendar.styles/Calendar.styles.js +13 -15
- package/components/Calendar/Calendar.styles/Calendar.styles.js.map +1 -1
- package/components/Calendar/Calendar.styles.d.ts +1 -2
- package/components/Calendar/DayCellView/DayCellView.js +9 -11
- package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/components/Calendar/DayCellView.styles/DayCellView.styles.js +21 -23
- package/components/Calendar/DayCellView.styles/DayCellView.styles.js.map +1 -1
- package/components/Calendar/DayCellView.styles.d.ts +1 -2
- package/components/Calendar/Month/Month.js +6 -11
- package/components/Calendar/Month/Month.js.map +1 -1
- package/components/Calendar/MonthView/MonthView.js +7 -9
- package/components/Calendar/MonthView/MonthView.js.map +1 -1
- package/components/Calendar/MonthView.styles/MonthView.styles.js +25 -27
- package/components/Calendar/MonthView.styles/MonthView.styles.js.map +1 -1
- package/components/Calendar/MonthView.styles.d.ts +1 -2
- package/components/Center/Center/Center.js +7 -13
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +0 -1
- package/components/Center/Center.styles/Center.styles.js +18 -20
- package/components/Center/Center.styles/Center.styles.js.map +1 -1
- package/components/Center/Center.styles.d.ts +1 -2
- package/components/Checkbox/Checkbox/Checkbox.js +15 -27
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +0 -1
- package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js +8 -11
- package/components/Checkbox/Checkbox.mixins/Checkbox.mixins.js.map +1 -1
- package/components/Checkbox/Checkbox.mixins.d.ts +2 -3
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +78 -80
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.d.ts +1 -2
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js +10 -16
- package/components/DateInput/DateFragmentsView/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateFragmentsView.d.ts +0 -1
- package/components/DateInput/DateFragmentsView.styles/DateFragmentsView.styles.js +21 -23
- package/components/DateInput/DateFragmentsView.styles/DateFragmentsView.styles.js.map +1 -1
- package/components/DateInput/DateFragmentsView.styles.d.ts +1 -2
- package/components/DateInput/DateInput/DateInput.js +10 -18
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +0 -1
- package/components/DateInput/DateInput.styles/DateInput.styles.js +23 -24
- package/components/DateInput/DateInput.styles/DateInput.styles.js.map +1 -1
- package/components/DateInput/DateInput.styles.d.ts +1 -2
- package/components/DatePicker/DatePicker/DatePicker.js +14 -20
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +0 -1
- package/components/DatePicker/DatePicker.styles/DatePicker.styles.js +12 -14
- package/components/DatePicker/DatePicker.styles/DatePicker.styles.js.map +1 -1
- package/components/DatePicker/DatePicker.styles.d.ts +1 -2
- package/components/DatePicker/Picker/Picker.js +12 -17
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/DatePicker/Picker.d.ts +0 -1
- package/components/Dropdown/Dropdown/Dropdown.js +3 -3
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +3 -3
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/FileUploader/FileUploader/FileUploader.js +24 -26
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js +3 -4
- package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js.map +1 -1
- package/components/FileUploader/FileUploader.mixins.d.ts +1 -2
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +100 -101
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
- package/components/FileUploader/FileUploader.styles.d.ts +1 -2
- package/components/FxInput/FxInput/FxInput.js +2 -2
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +3 -3
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js +6 -10
- package/components/GlobalLoader/GlobalLoaderView/GlobalLoaderView.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js +48 -52
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +2 -3
- package/components/Group/Group/Group.js +10 -14
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +0 -1
- package/components/Group/Group.styles/Group.styles.js +21 -23
- package/components/Group/Group.styles/Group.styles.js.map +1 -1
- package/components/Group/Group.styles.d.ts +1 -2
- package/components/Hint/Hint/Hint.js +16 -20
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +0 -1
- package/components/Hint/Hint.styles/Hint.styles.js +9 -11
- package/components/Hint/Hint.styles/Hint.styles.js.map +1 -1
- package/components/Hint/Hint.styles.d.ts +1 -2
- package/components/Input/Input/Input.js +24 -36
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +0 -1
- package/components/Input/Input.styles/Input.styles.js +127 -129
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +1 -2
- package/components/Input/InputLayout/InputLayout/InputLayout.js +1 -4
- package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js +28 -30
- package/components/Input/InputLayout/InputLayout.styles/InputLayout.styles.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.styles.d.ts +1 -2
- package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js +2 -4
- package/components/Input/InputLayout/InputLayoutAside/InputLayoutAside.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js +5 -7
- package/components/Input/InputLayout/InputLayoutAsideIcon/InputLayoutAsideIcon.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideText/InputLayoutAsideText.js +5 -7
- package/components/Input/InputLayout/InputLayoutAsideText/InputLayoutAsideText.js.map +1 -1
- package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js +6 -8
- package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js.map +1 -1
- package/components/Kebab/Kebab/Kebab.js +20 -22
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +0 -1
- package/components/Kebab/Kebab.styles/Kebab.styles.js +42 -44
- package/components/Kebab/Kebab.styles/Kebab.styles.js.map +1 -1
- package/components/Kebab/Kebab.styles.d.ts +1 -2
- package/components/Link/Link/Link.js +88 -50
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +18 -17
- package/components/Link/Link.md +21 -0
- package/components/Link/Link.styles/Link.styles.js +100 -93
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Link/Link.styles.d.ts +4 -2
- package/components/Link/LinkIcon/LinkIcon.js +6 -8
- package/components/Link/LinkIcon/LinkIcon.js.map +1 -1
- package/components/Loader/Loader/Loader.js +10 -15
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +0 -1
- package/components/Loader/Loader.styles/Loader.styles.js +18 -20
- package/components/Loader/Loader.styles/Loader.styles.js.map +1 -1
- package/components/Loader/Loader.styles.d.ts +1 -2
- package/components/MenuFooter/MenuFooter/MenuFooter.js +7 -9
- package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js +7 -10
- package/components/MenuFooter/MenuFooter.mixins/MenuFooter.mixins.js.map +1 -1
- package/components/MenuFooter/MenuFooter.mixins.d.ts +2 -3
- package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js +24 -26
- package/components/MenuFooter/MenuFooter.styles/MenuFooter.styles.js.map +1 -1
- package/components/MenuFooter/MenuFooter.styles.d.ts +1 -2
- package/components/MenuHeader/MenuHeader/MenuHeader.js +6 -8
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js +7 -10
- package/components/MenuHeader/MenuHeader.mixins/MenuHeader.mixins.js.map +1 -1
- package/components/MenuHeader/MenuHeader.mixins.d.ts +2 -3
- package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js +24 -26
- package/components/MenuHeader/MenuHeader.styles/MenuHeader.styles.js.map +1 -1
- package/components/MenuHeader/MenuHeader.styles.d.ts +1 -2
- package/components/MenuItem/MenuItem/MenuItem.js +18 -29
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +0 -1
- package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js +15 -20
- package/components/MenuItem/MenuItem.mixins/MenuItem.mixins.js.map +1 -1
- package/components/MenuItem/MenuItem.mixins.d.ts +3 -4
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +64 -66
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/MenuItem/MenuItem.styles.d.ts +1 -2
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +7 -9
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js +9 -11
- package/components/MenuSeparator/MenuSeparator.styles/MenuSeparator.styles.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.styles.d.ts +1 -2
- package/components/MiniModal/MiniModal/MiniModal.js +4 -5
- package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +36 -38
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.d.ts +1 -2
- package/components/MiniModal/MiniModalBody/MiniModalBody.js +6 -10
- package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
- package/components/MiniModal/MiniModalFooter/MiniModalFooter.js +7 -9
- package/components/MiniModal/MiniModalFooter/MiniModalFooter.js.map +1 -1
- package/components/MiniModal/MiniModalHeader/MiniModalHeader.js +6 -8
- package/components/MiniModal/MiniModalHeader/MiniModalHeader.js.map +1 -1
- package/components/MiniModal/MiniModalIndent/MiniModalIndent.js +6 -8
- package/components/MiniModal/MiniModalIndent/MiniModalIndent.js.map +1 -1
- package/components/Modal/Modal/Modal.js +15 -19
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +0 -1
- package/components/Modal/Modal.styles/Modal.styles.js +129 -131
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +1 -2
- package/components/Modal/ModalBody/ModalBody.js +10 -14
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +0 -1
- package/components/Modal/ModalClose/ModalClose.js +7 -9
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js +5 -7
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js +5 -7
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js +6 -8
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- package/components/Paging/Paging/Paging.js +22 -27
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +0 -1
- package/components/Paging/Paging.styles/Paging.styles.js +51 -53
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +1 -2
- package/components/PasswordInput/PasswordInput/PasswordInput.js +9 -16
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +0 -1
- package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js +27 -29
- package/components/PasswordInput/PasswordInput.styles/PasswordInput.styles.js.map +1 -1
- package/components/PasswordInput/PasswordInput.styles.d.ts +1 -2
- package/components/Radio/Radio/Radio.js +16 -27
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +0 -1
- package/components/Radio/Radio.mixins/Radio.mixins.js +17 -26
- package/components/Radio/Radio.mixins/Radio.mixins.js.map +1 -1
- package/components/Radio/Radio.mixins.d.ts +5 -6
- package/components/Radio/Radio.styles/Radio.styles.js +75 -77
- package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
- package/components/Radio/Radio.styles.d.ts +1 -2
- package/components/RadioGroup/RadioGroup/RadioGroup.js +8 -13
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +0 -1
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +15 -17
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +1 -2
- package/components/ScrollContainer/ScrollBar/ScrollBar.js +14 -22
- package/components/ScrollContainer/ScrollBar/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.d.ts +0 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +5 -15
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +1 -3
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +39 -41
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +1 -2
- package/components/Select/Select/Select.js +16 -24
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +1 -2
- package/components/Select/Select.styles/Select.styles.js +48 -50
- package/components/Select/Select.styles/Select.styles.js.map +1 -1
- package/components/Select/Select.styles.d.ts +1 -2
- package/components/SidePage/SidePage/SidePage.js +11 -17
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +0 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +140 -142
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +1 -2
- package/components/SidePage/SidePageBody/SidePageBody.js +11 -15
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +0 -1
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +6 -9
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageContainer/SidePageContainer.js +8 -12
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +0 -1
- package/components/SidePage/SidePageFooter/SidePageFooter.js +9 -13
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +0 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js +11 -17
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +0 -1
- package/components/Spinner/Spinner/Spinner.js +10 -16
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +0 -1
- package/components/Spinner/Spinner.styles/Spinner.styles.js +43 -46
- package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
- package/components/Spinner/Spinner.styles.d.ts +1 -2
- package/components/Sticky/Sticky/Sticky.js +4 -14
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +0 -2
- package/components/Sticky/Sticky.styles/Sticky.styles.js +18 -20
- package/components/Sticky/Sticky.styles/Sticky.styles.js.map +1 -1
- package/components/Sticky/Sticky.styles.d.ts +1 -2
- package/components/Switcher/Switcher/Switcher.js +11 -17
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +0 -1
- package/components/Switcher/Switcher.styles/Switcher.styles.js +29 -31
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -2
- package/components/Tabs/Indicator/Indicator.js +7 -11
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.d.ts +0 -1
- package/components/Tabs/Indicator.styles/Indicator.styles.js +18 -20
- package/components/Tabs/Indicator.styles/Indicator.styles.js.map +1 -1
- package/components/Tabs/Indicator.styles.d.ts +1 -2
- package/components/Tabs/Tab/Tab.js +11 -15
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +0 -1
- package/components/Tabs/Tab.styles/Tab.styles.js +84 -90
- package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
- package/components/Tabs/Tab.styles.d.ts +3 -4
- package/components/Tabs/Tabs/Tabs.js +33 -36
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.styles/Tabs.styles.js +17 -19
- package/components/Tabs/Tabs.styles/Tabs.styles.js.map +1 -1
- package/components/Tabs/Tabs.styles.d.ts +1 -2
- package/components/Textarea/Textarea/Textarea.js +12 -22
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +0 -1
- package/components/Textarea/Textarea.mixins/Textarea.mixins.js +7 -12
- package/components/Textarea/Textarea.mixins/Textarea.mixins.js.map +1 -1
- package/components/Textarea/Textarea.mixins.d.ts +3 -4
- package/components/Textarea/Textarea.styles/Textarea.styles.js +69 -71
- package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
- package/components/Textarea/Textarea.styles.d.ts +1 -2
- package/components/Textarea/TextareaCounter/TextareaCounter.js +8 -10
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Toast/Toast/Toast.js +7 -12
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +0 -1
- package/components/Toast/Toast.styles/Toast.styles.js +15 -17
- package/components/Toast/Toast.styles/Toast.styles.js.map +1 -1
- package/components/Toast/Toast.styles.d.ts +1 -2
- package/components/Toast/ToastView/ToastView.js +5 -10
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +0 -1
- package/components/Toast/ToastView.styles/ToastView.styles.js +29 -31
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +1 -2
- package/components/Toggle/Toggle/Toggle.js +15 -33
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +0 -1
- package/components/Toggle/Toggle.mixins/Toggle.mixins.js +22 -35
- package/components/Toggle/Toggle.mixins/Toggle.mixins.js.map +1 -1
- package/components/Toggle/Toggle.mixins.d.ts +7 -8
- package/components/Toggle/Toggle.styles/Toggle.styles.js +129 -131
- package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
- package/components/Toggle/Toggle.styles.d.ts +1 -2
- package/components/Token/Token/Token.js +7 -12
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +2 -3
- package/components/Token/Token.mixins/Token.mixins.js +3 -4
- package/components/Token/Token.mixins/Token.mixins.js.map +1 -1
- package/components/Token/Token.mixins.d.ts +1 -2
- package/components/Token/Token.styles/Token.styles.js +156 -161
- package/components/Token/Token.styles/Token.styles.js.map +1 -1
- package/components/Token/Token.styles.d.ts +2 -3
- package/components/Token/TokenView/TokenView.js +8 -10
- package/components/Token/TokenView/TokenView.js.map +1 -1
- package/components/TokenInput/TextWidthHelper/TextWidthHelper.js +3 -15
- package/components/TokenInput/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/components/TokenInput/TextWidthHelper.d.ts +0 -2
- package/components/TokenInput/TokenInput/TokenInput.js +11 -19
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +0 -1
- package/components/TokenInput/TokenInput.mixins/TokenInput.mixins.js +5 -8
- package/components/TokenInput/TokenInput.mixins/TokenInput.mixins.js.map +1 -1
- package/components/TokenInput/TokenInput.mixins.d.ts +2 -3
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js +55 -57
- package/components/TokenInput/TokenInput.styles/TokenInput.styles.js.map +1 -1
- package/components/TokenInput/TokenInput.styles.d.ts +1 -2
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +3 -3
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/Tooltip/Tooltip/Tooltip.js +16 -22
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +0 -1
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +9 -11
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.d.ts +1 -2
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +3 -3
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +5 -8
- package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js +15 -17
- package/internal/CloseButtonIcon/CloseButtonIcon.styles/CloseButtonIcon.styles.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.d.ts +1 -2
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +5 -16
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +1 -3
- package/internal/CommonWrapper/utils/extractCommonProps/extractCommonProps.js.map +1 -0
- package/internal/CommonWrapper/{extractCommonProps → utils/extractCommonProps}/package.json +1 -1
- package/internal/CommonWrapper/{extractCommonProps.d.ts → utils/extractCommonProps.d.ts} +2 -2
- package/internal/CommonWrapper/{getCommonVisualStateDataAttributes → utils/getCommonVisualStateDataAttributes}/getCommonVisualStateDataAttributes.js +1 -5
- package/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +1 -0
- package/internal/CommonWrapper/{getCommonVisualStateDataAttributes → utils/getCommonVisualStateDataAttributes}/package.json +1 -1
- package/internal/CommonWrapper/{getVisualStateDataAttributes → utils/getVisualStateDataAttributes}/getVisualStateDataAttributes.js +3 -3
- package/internal/CommonWrapper/utils/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +1 -0
- package/internal/CommonWrapper/{getVisualStateDataAttributes → utils/getVisualStateDataAttributes}/package.json +1 -1
- package/internal/CommonWrapper/{getVisualStateDataAttributes.d.ts → utils/getVisualStateDataAttributes.d.ts} +1 -1
- package/internal/CommonWrapper/utils/tryGetBoolean/package.json +6 -0
- package/internal/CommonWrapper/utils/tryGetBoolean/tryGetBoolean.js +3 -0
- package/internal/CommonWrapper/utils/tryGetBoolean/tryGetBoolean.js.map +1 -0
- package/internal/CommonWrapper/utils/tryGetBoolean.d.ts +1 -0
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +3 -3
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +10 -15
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +0 -1
- package/internal/CustomComboBox/CustomComboBox.styles/CustomComboBox.styles.js +12 -14
- package/internal/CustomComboBox/CustomComboBox.styles/CustomComboBox.styles.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.styles.d.ts +1 -2
- package/internal/DataTids/DataTids/DataTids.js +26 -30
- package/internal/DataTids/DataTids/DataTids.js.map +1 -1
- package/internal/DataTids/DataTids.styles/DataTids.styles.js +18 -20
- package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +1 -1
- package/internal/DataTids/DataTids.styles.d.ts +1 -2
- package/internal/DateSelect/DateSelect/DateSelect.js +18 -26
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +0 -1
- package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js +54 -56
- package/internal/DateSelect/DateSelect.styles/DateSelect.styles.js.map +1 -1
- package/internal/DateSelect/DateSelect.styles.d.ts +1 -2
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +4 -14
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer.d.ts +0 -2
- package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js +6 -8
- package/internal/DropdownContainer/DropdownContainer.styles/DropdownContainer.styles.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer.styles.d.ts +1 -2
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +16 -18
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +49 -50
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +1 -2
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js +6 -9
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFileStatusIcon/FileUploaderFileStatusIcon.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +9 -11
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +19 -20
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +1 -2
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +14 -24
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +15 -1
- package/internal/InputLikeText/HiddenInput/HiddenInput.js +14 -16
- package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +26 -46
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +0 -1
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +18 -20
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -2
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +7 -11
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
- package/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -1
- package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js +12 -14
- package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map +1 -1
- package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +1 -2
- package/internal/InternalMenu/InternalMenu/InternalMenu.js +13 -19
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.d.ts +0 -1
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js +27 -29
- package/internal/InternalMenu/InternalMenu.styles/InternalMenu.styles.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.styles.d.ts +1 -2
- package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js +1 -4
- package/internal/MaskCharLowLine/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.styles/MaskCharLowLine.styles.js +6 -8
- package/internal/MaskCharLowLine/MaskCharLowLine.styles/MaskCharLowLine.styles.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.d.ts +1 -2
- package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js +7 -9
- package/internal/MaskedInputElement/MaskedInputElement/MaskedInputElement.js.map +1 -1
- package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js +12 -14
- package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map +1 -1
- package/internal/MaskedInputElement/MaskedInputElement.styles.d.ts +1 -2
- package/internal/Menu/Menu/Menu.js +20 -30
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +0 -1
- package/internal/Menu/Menu.styles/Menu.styles.js +42 -44
- package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
- package/internal/Menu/Menu.styles.d.ts +1 -2
- package/internal/MenuMessage/MenuMessage/MenuMessage.js +10 -12
- package/internal/MenuMessage/MenuMessage/MenuMessage.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js +26 -28
- package/internal/MenuMessage/MenuMessage.styles/MenuMessage.styles.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.styles.d.ts +1 -2
- package/internal/MobilePopup/MobilePopup/MobilePopup.js +12 -17
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +0 -1
- package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js +25 -26
- package/internal/MobilePopup/MobilePopup.styles/MobilePopup.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.styles.d.ts +1 -2
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +10 -14
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +0 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js +19 -20
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles/MobilePopupHeader.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +1 -2
- package/internal/NativeDateInput/NativeDateInput/NativeDateInput.js +16 -20
- package/internal/NativeDateInput/NativeDateInput/NativeDateInput.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.styles/NativeDateInput.styles.js +7 -8
- package/internal/NativeDateInput/NativeDateInput.styles/NativeDateInput.styles.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.styles.d.ts +1 -2
- package/internal/Popup/Popup/Popup.js +8 -13
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +0 -1
- package/internal/Popup/Popup.styles/Popup.styles.js +42 -44
- package/internal/Popup/Popup.styles/Popup.styles.js.map +1 -1
- package/internal/Popup/Popup.styles.d.ts +1 -2
- package/internal/Popup/PopupPin/PopupPin.js +10 -14
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.styles/PopupPin.styles.js +6 -8
- package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
- package/internal/Popup/PopupPin.styles.d.ts +1 -2
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +8 -15
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +0 -1
- package/internal/PopupMenu/PopupMenu.styles/PopupMenu.styles.js +9 -11
- package/internal/PopupMenu/PopupMenu.styles/PopupMenu.styles.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.styles.d.ts +1 -2
- package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js +14 -19
- package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js +15 -17
- package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -2
- package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js +7 -13
- package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js +10 -11
- package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +1 -2
- package/internal/ThemePlayground/ComponentsGroup/ComponentsGroup.js +1 -4
- package/internal/ThemePlayground/ComponentsGroup/ComponentsGroup.js.map +1 -1
- package/internal/ThemePlayground/Playground/Playground.js +9 -16
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.d.ts +0 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js +63 -65
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/Playground.styles.d.ts +1 -2
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +2 -2
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +9 -16
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground.d.ts +0 -1
- package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js +9 -15
- package/internal/ThemePlayground/ThemeEditor/ThemeEditor.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js +18 -27
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemePlayground/VariableValue.d.ts +0 -1
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +261 -200
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase.d.ts +0 -1
- package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js +76 -78
- package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +1 -2
- package/internal/icons/16px/icon.styles/icon.styles.js +9 -11
- package/internal/icons/16px/icon.styles/icon.styles.js.map +1 -1
- package/internal/icons/16px/icon.styles.d.ts +1 -2
- package/internal/icons/16px/index/index.js +1 -4
- package/internal/icons/16px/index/index.js.map +1 -1
- package/internal/icons/20px/icon.styles/icon.styles.js +9 -11
- package/internal/icons/20px/icon.styles/icon.styles.js.map +1 -1
- package/internal/icons/20px/icon.styles.d.ts +1 -2
- package/internal/icons/20px/svg/svg.js +1 -4
- package/internal/icons/20px/svg/svg.js.map +1 -1
- package/internal/icons/SpinnerIcon/SpinnerIcon.js +12 -14
- package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js +15 -17
- package/internal/icons/SpinnerIcon.styles/SpinnerIcon.styles.js.map +1 -1
- package/internal/icons/SpinnerIcon.styles.d.ts +1 -2
- package/internal/icons2022/BaseIcon/BaseIcon.js +1 -4
- package/internal/icons2022/BaseIcon/BaseIcon.js.map +1 -1
- package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js +6 -8
- package/internal/icons2022/BaseIcon.styles/BaseIcon.styles.js.map +1 -1
- package/internal/icons2022/BaseIcon.styles.d.ts +1 -2
- package/internal/icons2022/LoadingIcon/LoadingIcon.js +5 -7
- package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -1
- package/lib/styles/Mixins/Mixins.js +5 -4
- package/lib/styles/Mixins/Mixins.js.map +1 -1
- package/lib/styles/Mixins.d.ts +2 -3
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +14 -15
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
- package/lib/theming/AnimationKeyframes.d.ts +1 -2
- package/lib/theming/Emotion/Emotion.js +22 -25
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/theming/Emotion.d.ts +8 -9
- package/lib/theming/ThemeContext/ThemeContext.js +0 -2
- package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
- package/lib/theming/ThemeContext.d.ts +0 -2
- package/lib/theming/useTheme/useTheme.js.map +1 -1
- package/package.json +2 -2
- package/typings/react-ref.d.ts +34 -0
- package/typings/utility-types.d.ts +2 -0
- package/cjs/internal/CommonWrapper/extractCommonProps.js.map +0 -1
- package/cjs/internal/CommonWrapper/getCommonVisualStateDataAttributes.js.map +0 -1
- package/cjs/internal/CommonWrapper/getVisualStateDataAttributes.js.map +0 -1
- package/cjs/lib/theming/StyleContainer.d.ts +0 -4
- package/cjs/lib/theming/StyleContainer.js +0 -21
- package/cjs/lib/theming/StyleContainer.js.map +0 -1
- package/internal/CommonWrapper/extractCommonProps/extractCommonProps.js.map +0 -1
- package/internal/CommonWrapper/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +0 -1
- package/internal/CommonWrapper/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +0 -1
- package/lib/theming/StyleContainer/StyleContainer.js +0 -21
- package/lib/theming/StyleContainer/StyleContainer.js.map +0 -1
- package/lib/theming/StyleContainer/package.json +0 -6
- package/lib/theming/StyleContainer.d.ts +0 -4
- /package/cjs/internal/CommonWrapper/{extractCommonProps.js → utils/extractCommonProps.js} +0 -0
- /package/cjs/internal/CommonWrapper/{getCommonVisualStateDataAttributes.d.ts → utils/getCommonVisualStateDataAttributes.d.ts} +0 -0
- /package/internal/CommonWrapper/{extractCommonProps → utils/extractCommonProps}/extractCommonProps.js +0 -0
- /package/internal/CommonWrapper/{getCommonVisualStateDataAttributes.d.ts → utils/getCommonVisualStateDataAttributes.d.ts} +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
3
|
var _excluded = ["mask", "maskChar", "formatChars", "alwaysShowMask", "maxLength", "onUnexpectedInput", "defaultValue", "style"];
|
|
4
|
-
import React, { useEffect, useImperativeHandle, useRef, useState } from 'react';
|
|
5
|
-
import {
|
|
4
|
+
import React, { useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';
|
|
5
|
+
import { IMaskInput, IMask } from 'react-imask';
|
|
6
|
+
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
6
7
|
import { MaskCharLowLine } from "../../MaskCharLowLine";
|
|
7
|
-
import {
|
|
8
|
+
import { cx } from "../../../lib/theming/Emotion";
|
|
8
9
|
import { forwardRefAndName } from "../../../lib/forwardRefAndName";
|
|
9
|
-
import {
|
|
10
|
-
import { getStyles } from "../MaskedInputElement.styles";
|
|
10
|
+
import { styles } from "../MaskedInputElement.styles";
|
|
11
11
|
import { getCurrentValue, getDefinitions, getFocusPrefix, getMaskChar } from "../MaskedInputElement.helpers";
|
|
12
12
|
export var MaskedInputElementDataTids = {
|
|
13
13
|
root: 'MaskedInput__root'
|
|
@@ -36,9 +36,7 @@ export var MaskedInputElement = forwardRefAndName('MaskedInputElement', function
|
|
|
36
36
|
|
|
37
37
|
var inputRef = useRef(null);
|
|
38
38
|
var rootNodeRef = React.useRef(null);
|
|
39
|
-
var theme =
|
|
40
|
-
var emotion = useEmotion();
|
|
41
|
-
var styles = getStyles(emotion);
|
|
39
|
+
var theme = useContext(ThemeContext);
|
|
42
40
|
var expectedChangesRef = useRef(false);
|
|
43
41
|
var isFirstRender = useRef(true);
|
|
44
42
|
useImperativeHandle(ref, function () {
|
|
@@ -122,7 +120,7 @@ export var MaskedInputElement = forwardRefAndName('MaskedInputElement', function
|
|
|
122
120
|
inputRef: inputRef,
|
|
123
121
|
style: _extends({}, style)
|
|
124
122
|
})), isMaskVisible && /*#__PURE__*/React.createElement("span", {
|
|
125
|
-
className:
|
|
123
|
+
className: cx(styles.inputMask(theme), leftClass)
|
|
126
124
|
}, leftHelper, rightHelper));
|
|
127
125
|
|
|
128
126
|
function getValue(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MaskedInputElement.tsx"],"names":["React","useEffect","useImperativeHandle","useRef","useState","IMask","IMaskInput","MaskCharLowLine","useEmotion","forwardRefAndName","useTheme","getStyles","getCurrentValue","getDefinitions","getFocusPrefix","getMaskChar","MaskedInputElementDataTids","root","MaskedInputElement","props","ref","value","getValue","originValue","values","setValues","emptyValue","setEmptyValue","focused","setFocused","inputRef","rootNodeRef","theme","emotion","styles","expectedChangesRef","isFirstRender","input","current","getRootNode","getEmptyValue","mask","maskChar","formatChars","toString","alwaysShowMask","maxLength","onUnexpectedInput","defaultValue","style","inputProps","leftClass","textAlign","inputMaskLeft","currentValue","left","right","rightHelper","split","map","_char","i","leftHelper","color","isMaskVisible","container","handleAccept","handleInput","handleFocus","handleBlur","cx","inputMask","setTimeout","e","target","handleUnexpectedInput","event","onFocus","onBlur","maskPattern","createMask","definitions","lazy","placeholderChar","appendTail","inserted"],"mappings":"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","sourcesContent":["import React, { ForwardedRef, useEffect, useImperativeHandle, useRef, useState } from 'react';\nimport { IMask, IMaskInput } from 'react-imask';\n\nimport { MaskCharLowLine } from '../MaskCharLowLine';\nimport { useEmotion } from '../../lib/theming/Emotion';\nimport { InputElement, InputElementProps } from '../../components/Input';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\nimport { useTheme } from '../../lib/theming/useTheme';\n\nimport { getStyles } from './MaskedInputElement.styles';\nimport { getCurrentValue, getDefinitions, getFocusPrefix, getMaskChar } from './MaskedInputElement.helpers';\n\nexport interface MaskedInputElementProps extends InputElementProps {\n mask: string;\n maskChar?: string | null;\n formatChars?: { [key: string]: string };\n alwaysShowMask?: boolean;\n onUnexpectedInput: (value: string) => void;\n}\n\nexport const MaskedInputElementDataTids = {\n root: 'MaskedInput__root',\n} as const;\n\nexport const MaskedInputElement = forwardRefAndName(\n 'MaskedInputElement',\n function MaskedInputElement(props: MaskedInputElementProps, ref: ForwardedRef<InputElement>) {\n const [values, setValues] = useState<{ value: string; originValue: string }>(() => {\n const value = getValue(props);\n return { value, originValue: value };\n });\n const { value, originValue } = values;\n\n const [emptyValue, setEmptyValue] = useState('');\n const [focused, setFocused] = useState(false);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const rootNodeRef = React.useRef<HTMLDivElement>(null);\n const theme = useTheme();\n const emotion = useEmotion();\n const styles = getStyles(emotion);\n const expectedChangesRef = useRef(false);\n const isFirstRender = useRef(true);\n\n useImperativeHandle(\n ref,\n () => ({\n input: inputRef.current,\n getRootNode: () => rootNodeRef.current,\n }),\n [],\n );\n\n useEffect(() => {\n setEmptyValue(getEmptyValue(props.mask, props.maskChar, props.formatChars));\n }, [props.mask, props.maskChar]);\n\n useEffect(() => {\n if (isFirstRender.current) {\n return;\n }\n\n const value = props.value ? props.value.toString() : '';\n setValues((values) => ({ ...values, value }));\n }, [props.value]);\n\n useEffect(() => {\n isFirstRender.current = false;\n }, []);\n\n const {\n mask,\n maskChar,\n formatChars,\n alwaysShowMask,\n maxLength,\n onUnexpectedInput,\n defaultValue,\n style,\n ...inputProps\n } = props;\n\n const leftClass = style?.textAlign !== 'right' && styles.inputMaskLeft();\n const [currentValue, left, right] = getCurrentValue({ value, originValue, emptyValue }, focused, maskChar);\n\n /* В rightHelper не DEFAULT_MASK_CHAR, а специальная логика для обработки подчркивания('_').\n * Не менять на DEFAULT_MASK_CHAR\n */\n const rightHelper = right.split('').map((_char, i) => (_char === '_' ? <MaskCharLowLine key={i} /> : _char));\n const leftHelper = style?.textAlign !== 'right' && <span style={{ color: 'transparent' }}>{left}</span>;\n const isMaskVisible = alwaysShowMask || focused;\n\n return (\n <span\n data-tid={MaskedInputElementDataTids.root}\n ref={rootNodeRef}\n className={styles.container()}\n x-ms-format-detection=\"none\"\n >\n <IMaskInput\n {...inputProps}\n mask={mask}\n definitions={getDefinitions(formatChars)}\n eager\n overwrite={'shift'}\n onAccept={handleAccept}\n onInput={handleInput}\n onFocus={handleFocus}\n onBlur={handleBlur}\n value={currentValue}\n inputRef={inputRef}\n style={{ ...style }}\n />\n {isMaskVisible && (\n <span className={emotion.cx(styles.inputMask(theme), leftClass)}>\n {leftHelper}\n {rightHelper}\n </span>\n )}\n </span>\n );\n\n function getValue(props: MaskedInputElementProps): string {\n return (props.value ?? props.defaultValue ?? '').toString();\n }\n\n /** В imask вызывается только когда значение с маской меняется*/\n function handleAccept(value: string) {\n expectedChangesRef.current = true;\n // Если разделить на 2 setState - между первым и вторым происходит рендер и иногда символы \"съедаются\"\n setValues({ value, originValue: value });\n\n setTimeout(() => {\n /** При вводе с клавиатуры срабатывает handleAccept, за ним handleInput\n * expectedChanges - нужен чтобы сообщить из handleAccept в handleInput, что значение с маской изменилось.\n * Если маска не изменилась и сработал handleInput, вызываем handleUnexpectedInput. Ввели значение не по маске.\n * setTimeout нужен чтобы сбросить expectedChanges, например, если изменилось значение в пропах.\n * Маска изменится, вызовется handleAccept, но не handleInput\n */\n expectedChangesRef.current = false;\n });\n }\n\n /** Отслеживаем неправильные нажатия,\n * handleAccept не вызывается когда значение с маской не меняется, а handleInput вызывается\n * Сначала вызывается handleAccept, затем handleInput\n * */\n function handleInput(e: React.ChangeEvent<HTMLInputElement>) {\n const value = e.target.value;\n\n if (!expectedChangesRef.current && value === originValue) {\n handleUnexpectedInput();\n }\n\n expectedChangesRef.current = false;\n }\n\n function handleFocus(event: React.FocusEvent<HTMLInputElement>) {\n setFocused(true);\n\n expectedChangesRef.current = false;\n\n if (props.onFocus) {\n props.onFocus(event);\n }\n }\n\n function handleBlur(event: React.FocusEvent<HTMLInputElement>) {\n if (value === getFocusPrefix(emptyValue, maskChar)) {\n setValues({ value: '', originValue: '' });\n }\n\n setFocused(false);\n\n if (props.onBlur) {\n props.onBlur(event);\n }\n }\n\n function handleUnexpectedInput() {\n if (props.onUnexpectedInput) {\n props.onUnexpectedInput(value);\n }\n }\n\n function getEmptyValue(\n mask: MaskedInputElementProps['mask'],\n maskChar: MaskedInputElementProps['maskChar'],\n formatChars: MaskedInputElementProps['formatChars'],\n ): string {\n const maskPattern = IMask.createMask({\n mask,\n definitions: getDefinitions(formatChars),\n lazy: false,\n placeholderChar: getMaskChar(maskChar),\n });\n return maskPattern.appendTail('').inserted;\n }\n },\n);\n"]}
|
|
1
|
+
{"version":3,"sources":["MaskedInputElement.tsx"],"names":["React","useContext","useEffect","useImperativeHandle","useRef","useState","IMaskInput","IMask","ThemeContext","MaskCharLowLine","cx","forwardRefAndName","styles","getCurrentValue","getDefinitions","getFocusPrefix","getMaskChar","MaskedInputElementDataTids","root","MaskedInputElement","props","ref","value","getValue","originValue","values","setValues","emptyValue","setEmptyValue","focused","setFocused","inputRef","rootNodeRef","theme","expectedChangesRef","isFirstRender","input","current","getRootNode","getEmptyValue","mask","maskChar","formatChars","toString","alwaysShowMask","maxLength","onUnexpectedInput","defaultValue","style","inputProps","leftClass","textAlign","inputMaskLeft","currentValue","left","right","rightHelper","split","map","_char","i","leftHelper","color","isMaskVisible","container","handleAccept","handleInput","handleFocus","handleBlur","inputMask","setTimeout","e","target","handleUnexpectedInput","event","onFocus","onBlur","maskPattern","createMask","definitions","lazy","placeholderChar","appendTail","inserted"],"mappings":"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","sourcesContent":["import React, { ForwardedRef, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';\nimport { IMaskInput, IMask } from 'react-imask';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { MaskCharLowLine } from '../MaskCharLowLine';\nimport { cx } from '../../lib/theming/Emotion';\nimport { InputElement, InputElementProps } from '../../components/Input';\nimport { forwardRefAndName } from '../../lib/forwardRefAndName';\n\nimport { styles } from './MaskedInputElement.styles';\nimport { getCurrentValue, getDefinitions, getFocusPrefix, getMaskChar } from './MaskedInputElement.helpers';\n\nexport interface MaskedInputElementProps extends InputElementProps {\n mask: string;\n maskChar?: string | null;\n formatChars?: { [key: string]: string };\n alwaysShowMask?: boolean;\n onUnexpectedInput: (value: string) => void;\n}\n\nexport const MaskedInputElementDataTids = {\n root: 'MaskedInput__root',\n} as const;\n\nexport const MaskedInputElement = forwardRefAndName(\n 'MaskedInputElement',\n function MaskedInputElement(props: MaskedInputElementProps, ref: ForwardedRef<InputElement>) {\n const [values, setValues] = useState<{ value: string; originValue: string }>(() => {\n const value = getValue(props);\n return { value, originValue: value };\n });\n const { value, originValue } = values;\n\n const [emptyValue, setEmptyValue] = useState('');\n const [focused, setFocused] = useState(false);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const rootNodeRef = React.useRef<HTMLDivElement>(null);\n const theme = useContext(ThemeContext);\n const expectedChangesRef = useRef(false);\n const isFirstRender = useRef(true);\n\n useImperativeHandle(\n ref,\n () => ({\n input: inputRef.current,\n getRootNode: () => rootNodeRef.current,\n }),\n [],\n );\n\n useEffect(() => {\n setEmptyValue(getEmptyValue(props.mask, props.maskChar, props.formatChars));\n }, [props.mask, props.maskChar]);\n\n useEffect(() => {\n if (isFirstRender.current) {\n return;\n }\n\n const value = props.value ? props.value.toString() : '';\n setValues((values) => ({ ...values, value }));\n }, [props.value]);\n\n useEffect(() => {\n isFirstRender.current = false;\n }, []);\n\n const {\n mask,\n maskChar,\n formatChars,\n alwaysShowMask,\n maxLength,\n onUnexpectedInput,\n defaultValue,\n style,\n ...inputProps\n } = props;\n\n const leftClass = style?.textAlign !== 'right' && styles.inputMaskLeft();\n const [currentValue, left, right] = getCurrentValue({ value, originValue, emptyValue }, focused, maskChar);\n\n /* В rightHelper не DEFAULT_MASK_CHAR, а специальная логика для обработки подчркивания('_').\n * Не менять на DEFAULT_MASK_CHAR\n */\n const rightHelper = right.split('').map((_char, i) => (_char === '_' ? <MaskCharLowLine key={i} /> : _char));\n const leftHelper = style?.textAlign !== 'right' && <span style={{ color: 'transparent' }}>{left}</span>;\n const isMaskVisible = alwaysShowMask || focused;\n\n return (\n <span\n data-tid={MaskedInputElementDataTids.root}\n ref={rootNodeRef}\n className={styles.container()}\n x-ms-format-detection=\"none\"\n >\n <IMaskInput\n {...inputProps}\n mask={mask}\n definitions={getDefinitions(formatChars)}\n eager\n overwrite={'shift'}\n onAccept={handleAccept}\n onInput={handleInput}\n onFocus={handleFocus}\n onBlur={handleBlur}\n value={currentValue}\n inputRef={inputRef}\n style={{ ...style }}\n />\n {isMaskVisible && (\n <span className={cx(styles.inputMask(theme), leftClass)}>\n {leftHelper}\n {rightHelper}\n </span>\n )}\n </span>\n );\n\n function getValue(props: MaskedInputElementProps): string {\n return (props.value ?? props.defaultValue ?? '').toString();\n }\n\n /** В imask вызывается только когда значение с маской меняется*/\n function handleAccept(value: string) {\n expectedChangesRef.current = true;\n // Если разделить на 2 setState - между первым и вторым происходит рендер и иногда символы \"съедаются\"\n setValues({ value, originValue: value });\n\n setTimeout(() => {\n /** При вводе с клавиатуры срабатывает handleAccept, за ним handleInput\n * expectedChanges - нужен чтобы сообщить из handleAccept в handleInput, что значение с маской изменилось.\n * Если маска не изменилась и сработал handleInput, вызываем handleUnexpectedInput. Ввели значение не по маске.\n * setTimeout нужен чтобы сбросить expectedChanges, например, если изменилось значение в пропах.\n * Маска изменится, вызовется handleAccept, но не handleInput\n */\n expectedChangesRef.current = false;\n });\n }\n\n /** Отслеживаем неправильные нажатия,\n * handleAccept не вызывается когда значение с маской не меняется, а handleInput вызывается\n * Сначала вызывается handleAccept, затем handleInput\n * */\n function handleInput(e: React.ChangeEvent<HTMLInputElement>) {\n const value = e.target.value;\n\n if (!expectedChangesRef.current && value === originValue) {\n handleUnexpectedInput();\n }\n\n expectedChangesRef.current = false;\n }\n\n function handleFocus(event: React.FocusEvent<HTMLInputElement>) {\n setFocused(true);\n\n expectedChangesRef.current = false;\n\n if (props.onFocus) {\n props.onFocus(event);\n }\n }\n\n function handleBlur(event: React.FocusEvent<HTMLInputElement>) {\n if (value === getFocusPrefix(emptyValue, maskChar)) {\n setValues({ value: '', originValue: '' });\n }\n\n setFocused(false);\n\n if (props.onBlur) {\n props.onBlur(event);\n }\n }\n\n function handleUnexpectedInput() {\n if (props.onUnexpectedInput) {\n props.onUnexpectedInput(value);\n }\n }\n\n function getEmptyValue(\n mask: MaskedInputElementProps['mask'],\n maskChar: MaskedInputElementProps['maskChar'],\n formatChars: MaskedInputElementProps['formatChars'],\n ): string {\n const maskPattern = IMask.createMask({\n mask,\n definitions: getDefinitions(formatChars),\n lazy: false,\n placeholderChar: getMaskChar(maskChar),\n });\n return maskPattern.appendTail('').inserted;\n }\n },\n);\n"]}
|
|
@@ -2,17 +2,15 @@ import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTempla
|
|
|
2
2
|
|
|
3
3
|
var _templateObject, _templateObject2, _templateObject3;
|
|
4
4
|
|
|
5
|
-
import { memoizeStyle } from "../../../lib/theming/Emotion";
|
|
6
|
-
export var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
});
|
|
18
|
-
};
|
|
5
|
+
import { css, memoizeStyle } from "../../../lib/theming/Emotion";
|
|
6
|
+
export var styles = memoizeStyle({
|
|
7
|
+
container: function container() {
|
|
8
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: inline-flex;\n position: relative;\n font-size: inherit;\n flex: 100% 1 1;\n "])));
|
|
9
|
+
},
|
|
10
|
+
inputMask: function inputMask(t) {
|
|
11
|
+
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n color: ", ";\n pointer-events: none;\n font-size: inherit;\n z-index: 5;\n user-select: none;\n "])), t.placeholderColor);
|
|
12
|
+
},
|
|
13
|
+
inputMaskLeft: function inputMaskLeft() {
|
|
14
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n "])));
|
|
15
|
+
}
|
|
16
|
+
});
|
package/internal/MaskedInputElement/MaskedInputElement.styles/MaskedInputElement.styles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["MaskedInputElement.styles.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["MaskedInputElement.styles.ts"],"names":["css","memoizeStyle","styles","container","inputMask","t","placeholderColor","inputMaskLeft"],"mappings":"wJAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;;AAGA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,SADiC,uBACrB;AACV,WAAOH,GAAP;;;;;;AAMD,GARgC;AASjCI,EAAAA,SATiC,qBASvBC,CATuB,EASb;AAClB,WAAOL,GAAP;AACWK,IAAAA,CAAC,CAACC,gBADb;;;;;;AAOD,GAjBgC;AAkBjCC,EAAAA,aAlBiC,2BAkBjB;AACd,WAAOP,GAAP;;;;;;AAMD,GAzBgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n container() {\n return css`\n display: inline-flex;\n position: relative;\n font-size: inherit;\n flex: 100% 1 1;\n `;\n },\n inputMask(t: Theme) {\n return css`\n color: ${t.placeholderColor};\n pointer-events: none;\n font-size: inherit;\n z-index: 5;\n user-select: none;\n `;\n },\n inputMaskLeft() {\n return css`\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n `;\n },\n});\n"]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { Emotion } from '@emotion/css/create-instance';
|
|
2
1
|
import { Theme } from '../../lib/theming/Theme';
|
|
3
|
-
export declare const
|
|
2
|
+
export declare const styles: {
|
|
4
3
|
container(): string;
|
|
5
4
|
inputMask(t: Theme): string;
|
|
6
5
|
inputMaskLeft(): string;
|
|
@@ -13,6 +13,8 @@ import { responsiveLayout } from "../../../components/ResponsiveLayout/decorator
|
|
|
13
13
|
import { isNonNullable, isNullable } from "../../../lib/utils";
|
|
14
14
|
import { ScrollContainer } from "../../../components/ScrollContainer";
|
|
15
15
|
import { MenuItemDataTids } from "../../../components/MenuItem";
|
|
16
|
+
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
17
|
+
import { cx } from "../../../lib/theming/Emotion";
|
|
16
18
|
import { getRootNode, rootNode } from "../../../lib/rootNode";
|
|
17
19
|
import { addIconPaddingIfPartOfMenu } from "../../InternalMenu/addIconPaddingIfPartOfMenu";
|
|
18
20
|
import { isIE11 } from "../../../lib/client";
|
|
@@ -21,9 +23,7 @@ import { isTheme2022 } from "../../../lib/theming/ThemeHelpers";
|
|
|
21
23
|
import { isIconPaddingEnabled } from "../../InternalMenu/isIconPaddingEnabled";
|
|
22
24
|
import { isInstanceOf } from "../../../lib/isInstanceOf";
|
|
23
25
|
import { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext";
|
|
24
|
-
import {
|
|
25
|
-
import { EmotionConsumer } from "../../../lib/theming/Emotion";
|
|
26
|
-
import { getStyles } from "../Menu.styles";
|
|
26
|
+
import { styles } from "../Menu.styles";
|
|
27
27
|
import { isActiveElement } from "../isActiveElement";
|
|
28
28
|
import { MenuNavigation } from "../MenuNavigation";
|
|
29
29
|
import { MenuContext } from "../MenuContext";
|
|
@@ -61,11 +61,10 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
61
61
|
};
|
|
62
62
|
|
|
63
63
|
_this.renderHeader = function () {
|
|
64
|
-
var
|
|
64
|
+
var _cx;
|
|
65
65
|
|
|
66
|
-
var styles = getStyles(_this.emotion);
|
|
67
66
|
return /*#__PURE__*/React.createElement("div", {
|
|
68
|
-
className:
|
|
67
|
+
className: cx((_cx = {}, _cx[styles.wrapper()] = true, _cx[styles.headerWrapper()] = true, _cx)),
|
|
69
68
|
ref: function ref(el) {
|
|
70
69
|
return _this.header = el;
|
|
71
70
|
}
|
|
@@ -77,11 +76,10 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
77
76
|
};
|
|
78
77
|
|
|
79
78
|
_this.renderFooter = function () {
|
|
80
|
-
var
|
|
79
|
+
var _cx2;
|
|
81
80
|
|
|
82
|
-
var styles = getStyles(_this.emotion);
|
|
83
81
|
return /*#__PURE__*/React.createElement("div", {
|
|
84
|
-
className:
|
|
82
|
+
className: cx((_cx2 = {}, _cx2[styles.wrapper()] = true, _cx2[styles.footerWrapper()] = true, _cx2)),
|
|
85
83
|
ref: function ref(el) {
|
|
86
84
|
return _this.footer = el;
|
|
87
85
|
}
|
|
@@ -93,7 +91,7 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
93
91
|
};
|
|
94
92
|
|
|
95
93
|
_this.renderMenuSeparatorWithNoMargin = function () {
|
|
96
|
-
return /*#__PURE__*/React.createElement(
|
|
94
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Provider, {
|
|
97
95
|
value: ThemeFactory.create({
|
|
98
96
|
menuSeparatorMarginY: '0'
|
|
99
97
|
}, _this.theme)
|
|
@@ -322,12 +320,9 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
322
320
|
|
|
323
321
|
return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
|
|
324
322
|
_this2.menuItemsAtAnyLevel = getFullReactUIFlagsContext(flags).menuItemsAtAnyLevel;
|
|
325
|
-
return /*#__PURE__*/React.createElement(
|
|
326
|
-
_this2.
|
|
327
|
-
return
|
|
328
|
-
_this2.theme = theme;
|
|
329
|
-
return _this2.renderMain();
|
|
330
|
-
});
|
|
323
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
|
|
324
|
+
_this2.theme = theme;
|
|
325
|
+
return _this2.renderMain();
|
|
331
326
|
});
|
|
332
327
|
});
|
|
333
328
|
}
|
|
@@ -398,7 +393,7 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
398
393
|
};
|
|
399
394
|
|
|
400
395
|
_proto.renderMain = function renderMain() {
|
|
401
|
-
var
|
|
396
|
+
var _cx3, _cx4;
|
|
402
397
|
|
|
403
398
|
if (this.isEmpty()) {
|
|
404
399
|
return null;
|
|
@@ -415,10 +410,9 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
415
410
|
bottom: "" + this.theme.scrollContainerScrollBarOffsetY
|
|
416
411
|
} : {};
|
|
417
412
|
var isMobile = this.isMobileLayout;
|
|
418
|
-
var styles = getStyles(this.emotion);
|
|
419
413
|
return /*#__PURE__*/React.createElement("div", {
|
|
420
414
|
"data-tid": MenuDataTids.root,
|
|
421
|
-
className:
|
|
415
|
+
className: cx(getAlignRightClass(this.props), (_cx3 = {}, _cx3[styles.root(this.theme)] = true, _cx3[styles.mobileRoot(this.theme)] = isMobile, _cx3[styles.shadow(this.theme)] = hasShadow && !isMobile, _cx3)),
|
|
422
416
|
style: this.getStyle(this.props),
|
|
423
417
|
id: this.props.id,
|
|
424
418
|
onKeyDown: this.handleKeyDown,
|
|
@@ -432,7 +426,7 @@ export var Menu = responsiveLayout(_class = rootNode(_class = (_temp = _class2 =
|
|
|
432
426
|
disabled: this.props.disableScrollContainer,
|
|
433
427
|
offsetY: offsetY
|
|
434
428
|
}, /*#__PURE__*/React.createElement("div", {
|
|
435
|
-
className:
|
|
429
|
+
className: cx((_cx4 = {}, _cx4[styles.scrollContainer(this.theme)] = true, _cx4[styles.scrollContainerMobile(this.theme)] = isMobile, _cx4)),
|
|
436
430
|
ref: this.contentRef
|
|
437
431
|
}, /*#__PURE__*/React.createElement(MenuContext.Provider, {
|
|
438
432
|
value: {
|
|
@@ -586,16 +580,12 @@ function childrenToArray(children) {
|
|
|
586
580
|
return ret;
|
|
587
581
|
}
|
|
588
582
|
|
|
589
|
-
var getAlignRightClass = function getAlignRightClass(
|
|
590
|
-
|
|
591
|
-
var
|
|
592
|
-
|
|
593
|
-
if (props.align === 'right') {
|
|
594
|
-
var _emotion$cx;
|
|
583
|
+
var getAlignRightClass = function getAlignRightClass(props) {
|
|
584
|
+
if (props.align === 'right') {
|
|
585
|
+
var _cx5;
|
|
595
586
|
|
|
596
|
-
|
|
597
|
-
|
|
587
|
+
return cx((_cx5 = {}, _cx5[styles.alignRight()] = !isIE11, _cx5[styles.alignRightIE11()] = isIE11, _cx5[styles.alignRightIE11FixAutoWidth()] = isIE11 && props.width === 'auto', _cx5));
|
|
588
|
+
}
|
|
598
589
|
|
|
599
|
-
|
|
600
|
-
};
|
|
590
|
+
return null;
|
|
601
591
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Menu.tsx"],"names":["React","globalObject","isBrowser","isKeyArrowDown","isKeyArrowUp","isKeyEnter","MenuSeparator","ThemeFactory","getDOMRect","responsiveLayout","isNonNullable","isNullable","ScrollContainer","MenuItemDataTids","getRootNode","rootNode","addIconPaddingIfPartOfMenu","isIE11","createPropsGetter","isTheme2022","isIconPaddingEnabled","isInstanceOf","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","ThemeConsumer","ThemeProvider","EmotionConsumer","getStyles","isActiveElement","MenuNavigation","MenuContext","MenuDataTids","root","Menu","getProps","defaultProps","state","highlightedIndex","maxHeight","scrollState","enableIconPadding","unmounted","contentRef","createRef","menuNavigation","content","focusOnRootElement","HTMLElement","focus","renderHeader","styles","emotion","cx","wrapper","headerWrapper","el","header","contentWrapper","props","menuSeparatorWrapper","theme","renderMenuSeparatorWithNoMargin","renderFooter","footerWrapper","footer","create","menuSeparatorMarginY","getChildList","menuItemsAtAnyLevel","children","preventIconsOffset","Children","map","child","index","modifiedChild","highlight","ref","refHighlighted","bind","cloneElement","onClick","select","onMouseEnter","onMouseLeave","unhighlight","setInitialSelection","i","initialSelectedItemIndex","down","shouldRecalculateMaxHeight","prevProps","prevMaxHeight","prevHeader","prevFooter","prevChildrenCount","count","calculateMaxHeight","parsedMaxHeight","rootElementMaxHeight","getComputedStyle","parseFloat","calculatedMaxHeight","height","setState","refScrollContainer","scrollContainer","scrollToSelected","highlightedItem","highlighted","scrollTo","scrollToTop","scrollToBottom","scroll","nextIndex","items","length","handleKeyDown","event","onKeyDown","defaultPrevented","preventDefault","up","getStyle","align","maxWidth","width","minWidth","handleScrollStateChange","setEnableIconPadding","componentWillUnmount","componentDidMount","componentDidUpdate","render","flags","renderMain","move","enter","navigate","reset","hasHighlightedItem","highlightItem","highlightByIndex","isEmpty","hasShadow","preventWindowScroll","offsetY","top","scrollContainerScrollBarOffsetY","right","bottom","isMobile","isMobileLayout","getAlignRightClass","mobileRoot","shadow","id","setRootNode","disableScrollContainer","scrollContainerMobile","navigation","onItemClick","originalRef","menuItem","shouldHandleHref","item","childrenToArray","href","target","open","location","step","cyclicSelection","activeElements","filter","indexOf","PureComponent","__KONTUR_REACT_UI__","displayName","ret","forEach","push","alignRight","alignRightIE11","alignRightIE11FixAutoWidth"],"mappings":"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","sourcesContent":["import React, { CSSProperties, HTMLAttributes } from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { MenuSeparator } from '../../components/MenuSeparator';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { ScrollContainer, ScrollContainerScrollState } from '../../components/ScrollContainer';\nimport { MenuItem, MenuItemDataTids, MenuItemProps } from '../../components/MenuItem';\nimport { Nullable } from '../../typings/utility-types';\nimport { Theme } from '../../lib/theming/Theme';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { addIconPaddingIfPartOfMenu } from '../InternalMenu/addIconPaddingIfPartOfMenu';\nimport { isIE11 } from '../../lib/client';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { isIconPaddingEnabled } from '../InternalMenu/isIconPaddingEnabled';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { ThemeConsumer, ThemeProvider } from '../../lib/theming/ThemeContext';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\n\nimport { getStyles } from './Menu.styles';\nimport { isActiveElement } from './isActiveElement';\nimport { MenuNavigation } from './MenuNavigation';\nimport { MenuContext } from './MenuContext';\n\nexport interface MenuProps extends Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n children: React.ReactNode;\n hasShadow?: boolean;\n /**\n * Максимальная высота применяется только для скролл контейнера\n *\n * Высота `header` и `footer` в нее не включены\n */\n maxHeight?: number | string;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n /**\n * Отключение кастомного скролла контейнера\n */\n disableScrollContainer?: boolean;\n align?: 'left' | 'right';\n /**\n * Предотвращает выравнивание текста всех пунктов меню относительно друг друга.\n * Так, если хотя бы у одного пункта меню есть иконка, текст в остальных пунктах меню будет выровнен относительно пункта меню с иконкой\n */\n preventIconsOffset?: boolean;\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n /**\n * Циклический перебор айтемов меню (по-дефолтну включен)\n */\n cyclicSelection?: boolean;\n initialSelectedItemIndex?: number;\n}\n\nexport interface MenuState {\n highlightedIndex: number;\n maxHeight: number | string;\n scrollState: ScrollContainerScrollState;\n enableIconPadding: boolean;\n}\n\nexport const MenuDataTids = {\n root: 'Menu__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n MenuProps,\n | 'align'\n | 'width'\n | 'maxHeight'\n | 'hasShadow'\n | 'preventWindowScroll'\n | 'cyclicSelection'\n | 'initialSelectedItemIndex'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Menu extends React.PureComponent<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n public static displayName = 'Menu';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n cyclicSelection: true,\n initialSelectedItemIndex: -1,\n };\n\n private getProps = createPropsGetter(Menu.defaultProps);\n\n public state: MenuState = {\n highlightedIndex: -1,\n maxHeight: this.getProps().maxHeight || 'none',\n scrollState: 'top',\n enableIconPadding: false,\n };\n\n private theme!: Theme;\n private emotion!: Emotion;\n private scrollContainer: Nullable<ScrollContainer>;\n private isMobileLayout!: boolean;\n private highlighted: Nullable<MenuItem>;\n private unmounted = false;\n private setRootNode!: TSetRootNode;\n private header: Nullable<HTMLDivElement>;\n private footer: Nullable<HTMLDivElement>;\n private contentRef = React.createRef<HTMLDivElement>();\n private menuNavigation: MenuNavigation<MenuItem> = new MenuNavigation(this.contentRef, MenuItemDataTids.content);\n private menuItemsAtAnyLevel?: boolean;\n\n public componentWillUnmount() {\n this.unmounted = true;\n }\n\n public componentDidMount() {\n this.setInitialSelection();\n this.calculateMaxHeight();\n }\n\n public componentDidUpdate(prevProps: MenuProps) {\n if (this.shouldRecalculateMaxHeight(prevProps)) {\n this.calculateMaxHeight();\n }\n\n if (prevProps.maxHeight !== this.getProps().maxHeight) {\n this.setState({\n maxHeight: this.props.maxHeight || 'none',\n });\n }\n }\n\n public focus() {\n this.focusOnRootElement();\n }\n\n private focusOnRootElement = (): void => {\n const rootNode = getRootNode(this);\n if (isInstanceOf(rootNode, globalObject.HTMLElement)) {\n rootNode?.focus();\n }\n };\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.menuItemsAtAnyLevel = getFullReactUIFlagsContext(flags).menuItemsAtAnyLevel;\n return (\n <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public up() {\n this.move(-1);\n }\n\n /**\n * @public\n */\n public down() {\n this.move(1);\n }\n\n /**\n * @public\n */\n public enter(event: React.SyntheticEvent<HTMLElement>) {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.highlightedItem?.navigate();\n return this.menuNavigation.select(event);\n }\n return this.select(this.state.highlightedIndex, true, event);\n }\n\n /**\n * @public\n */\n public reset() {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.reset();\n } else {\n this.setState({ highlightedIndex: -1 });\n }\n }\n\n /**\n * @public\n */\n public hasHighlightedItem() {\n if (this.menuItemsAtAnyLevel) {\n return !!this.menuNavigation.highlightedItem;\n }\n return this.state.highlightedIndex !== -1;\n }\n\n public highlightItem(index: number) {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.highlightByIndex(index);\n } else {\n this.highlight(index);\n }\n }\n\n private renderMain() {\n if (this.isEmpty()) {\n return null;\n }\n const { hasShadow, maxHeight, preventWindowScroll } = this.getProps();\n\n const offsetY = isTheme2022(this.theme)\n ? {\n top: `${this.theme.scrollContainerScrollBarOffsetY}`,\n right: 0,\n bottom: `${this.theme.scrollContainerScrollBarOffsetY}`,\n }\n : {};\n\n const isMobile = this.isMobileLayout;\n const styles = getStyles(this.emotion);\n return (\n <div\n data-tid={MenuDataTids.root}\n className={this.emotion.cx(getAlignRightClass(this.emotion)(this.props), {\n [styles.root(this.theme)]: true,\n [styles.mobileRoot(this.theme)]: isMobile,\n [styles.shadow(this.theme)]: hasShadow && !isMobile,\n })}\n style={this.getStyle(this.props)}\n id={this.props.id}\n onKeyDown={this.handleKeyDown}\n ref={this.setRootNode}\n tabIndex={0}\n >\n {this.props.header && this.renderHeader()}\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n onScrollStateChange={this.handleScrollStateChange}\n disabled={this.props.disableScrollContainer}\n offsetY={offsetY}\n >\n <div\n className={this.emotion.cx({\n [styles.scrollContainer(this.theme)]: true,\n [styles.scrollContainerMobile(this.theme)]: isMobile,\n })}\n ref={this.contentRef}\n >\n <MenuContext.Provider\n value={{\n navigation: this.menuNavigation,\n onItemClick: this.props.onItemClick,\n enableIconPadding: this.state.enableIconPadding,\n setEnableIconPadding: this.setEnableIconPadding,\n }}\n >\n {this.getChildList()}\n </MenuContext.Provider>\n </div>\n </ScrollContainer>\n {this.props.footer && this.renderFooter()}\n </div>\n );\n }\n\n private renderHeader = () => {\n const styles = getStyles(this.emotion);\n return (\n <div\n className={this.emotion.cx({\n [styles.wrapper()]: true,\n [styles.headerWrapper()]: true,\n })}\n ref={(el) => (this.header = el)}\n >\n <div className={styles.contentWrapper()}>{this.props.header}</div>\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'top' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n </div>\n );\n };\n\n private renderFooter = () => {\n const styles = getStyles(this.emotion);\n return (\n <div\n className={this.emotion.cx({\n [styles.wrapper()]: true,\n [styles.footerWrapper()]: true,\n })}\n ref={(el) => (this.footer = el)}\n >\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'bottom' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n <div className={styles.contentWrapper()}>{this.props.footer}</div>\n </div>\n );\n };\n\n private renderMenuSeparatorWithNoMargin = () => {\n return (\n <ThemeProvider value={ThemeFactory.create({ menuSeparatorMarginY: '0' }, this.theme)}>\n <MenuSeparator />\n </ThemeProvider>\n );\n };\n\n private getChildList = () => {\n if (this.menuItemsAtAnyLevel) {\n return this.props.children;\n }\n const enableIconPadding = isIconPaddingEnabled(this.props.children, this.props.preventIconsOffset);\n\n return React.Children.map(this.props.children, (child, index) => {\n if (typeof child === 'string' || typeof child === 'number' || isNullable(child)) {\n return child;\n }\n\n const modifiedChild = addIconPaddingIfPartOfMenu(child, enableIconPadding);\n\n if (isActiveElement(modifiedChild)) {\n const highlight = this.state.highlightedIndex === index;\n\n let ref = modifiedChild.ref;\n if (highlight && typeof modifiedChild.ref !== 'string') {\n ref = this.refHighlighted.bind(this, modifiedChild.ref);\n }\n\n return React.cloneElement<MenuItemProps, MenuItem>(modifiedChild, {\n ref,\n state: highlight ? 'hover' : modifiedChild.props.state,\n onClick: this.select.bind(this, index, false),\n onMouseEnter: this.highlight.bind(this, index),\n onMouseLeave: this.unhighlight,\n });\n }\n\n return modifiedChild;\n });\n };\n\n private setInitialSelection = () => {\n for (let i = this.getProps().initialSelectedItemIndex; i > -1; i--) {\n this.down();\n }\n };\n\n private shouldRecalculateMaxHeight = (prevProps: MenuProps): boolean => {\n const { header, footer, children } = this.props;\n const maxHeight = this.getProps().maxHeight;\n const prevMaxHeight = prevProps.maxHeight;\n const prevHeader = prevProps.header;\n const prevFooter = prevProps.footer;\n const prevChildrenCount = React.Children.count(prevProps.children);\n\n return (\n maxHeight !== prevMaxHeight ||\n footer !== prevFooter ||\n header !== prevHeader ||\n React.Children.count(children) !== prevChildrenCount\n );\n };\n\n private calculateMaxHeight = () => {\n const maxHeight = this.getProps().maxHeight;\n let parsedMaxHeight = maxHeight;\n const rootNode = getRootNode(this);\n\n if (typeof maxHeight === 'string' && isBrowser(globalObject) && rootNode) {\n const rootElementMaxHeight = globalObject.getComputedStyle?.(rootNode).maxHeight;\n\n if (rootElementMaxHeight) {\n parsedMaxHeight = parseFloat(rootElementMaxHeight);\n }\n }\n\n const calculatedMaxHeight =\n typeof parsedMaxHeight === 'number'\n ? parsedMaxHeight +\n ((this.header && getDOMRect(this.header).height) || 0) +\n ((this.footer && getDOMRect(this.footer).height) || 0)\n : maxHeight;\n\n this.setState({\n maxHeight: calculatedMaxHeight || 'none',\n });\n };\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private refHighlighted(\n originalRef: ((menuItem: MenuItem | null) => any) | React.RefObject<MenuItem> | null | undefined,\n menuItem: MenuItem | null,\n ) {\n this.highlighted = menuItem;\n\n if (typeof originalRef === 'function') {\n originalRef(menuItem);\n }\n }\n\n private scrollToSelected = () => {\n const highlightedItem = this.menuItemsAtAnyLevel ? this.menuNavigation.highlightedItem : this.highlighted;\n if (this.scrollContainer && highlightedItem) {\n const rootNode = getRootNode(highlightedItem);\n // TODO: Remove this check once IF-647 is resolved\n if (isInstanceOf(rootNode, globalObject.HTMLElement)) {\n this.scrollContainer.scrollTo(rootNode);\n }\n }\n };\n\n private scrollToTop = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToTop();\n }\n };\n\n private scrollToBottom = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToBottom();\n }\n };\n\n private scroll = (nextIndex: number) => {\n switch (nextIndex) {\n case 0:\n this.scrollToTop?.();\n break;\n case this.menuNavigation.items.length - 1:\n this.scrollToBottom?.();\n break;\n default:\n this.scrollToSelected?.();\n }\n };\n\n private select(index: number, shouldHandleHref: boolean, event: React.SyntheticEvent<HTMLElement>): boolean {\n const item = childrenToArray(this.props.children)[index];\n if (isActiveElement(item) && isBrowser(globalObject)) {\n if (shouldHandleHref && item.props.href) {\n if (item.props.target) {\n globalObject.open(item.props.href, item.props.target);\n } else {\n globalObject.location.href = item.props.href;\n }\n }\n if (item.props.onClick) {\n item.props.onClick(event);\n }\n if (this.props.onItemClick) {\n this.props.onItemClick(event);\n }\n return true;\n }\n return false;\n }\n\n private highlight = (index: number) => {\n this.setState({ highlightedIndex: index });\n };\n\n private unhighlight = () => {\n this.setState({ highlightedIndex: -1 });\n };\n\n private move(step: number) {\n if (this.unmounted) {\n // NOTE workaround, because `ComboBox` call `process.nextTick` in reducer\n return;\n }\n if (this.menuItemsAtAnyLevel) {\n const nextIndex = this.menuNavigation.move(step, this.getProps().cyclicSelection);\n this.scroll(nextIndex);\n } else {\n const children = childrenToArray(this.props.children);\n const activeElements = children.filter(isActiveElement);\n if (!activeElements.length) {\n return;\n }\n let index = this.state.highlightedIndex;\n do {\n index += step;\n\n if (!this.getProps().cyclicSelection && (index < 0 || index > children.length)) {\n return;\n }\n\n if (index < 0) {\n index = children.length - 1;\n } else if (index > children.length) {\n index = 0;\n }\n\n const child = children[index];\n if (isActiveElement(child)) {\n this.setState({ highlightedIndex: index }, () => {\n switch (activeElements.indexOf(child)) {\n case 0:\n this.scrollToTop();\n break;\n case activeElements.length - 1:\n this.scrollToBottom();\n break;\n default:\n this.scrollToSelected();\n }\n });\n return;\n }\n } while (index !== this.state.highlightedIndex);\n }\n }\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isNonNullable).length;\n }\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\n if (typeof this.props.onKeyDown === 'function') {\n this.props.onKeyDown(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (isKeyArrowUp(event)) {\n event.preventDefault();\n this.up();\n } else if (isKeyArrowDown(event)) {\n event.preventDefault();\n this.down();\n } else if (isKeyEnter(event)) {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.select(event);\n } else if (this.highlighted && this.highlighted.props.onClick) {\n this.highlighted.props.onClick(event);\n }\n }\n };\n\n private getStyle = (props: MenuProps): CSSProperties => {\n if (props.align === 'right') {\n return {\n maxWidth: props.width,\n minWidth: props.width,\n maxHeight: this.state.maxHeight,\n };\n }\n\n return {\n width: props.width,\n maxHeight: this.state.maxHeight,\n };\n };\n\n private handleScrollStateChange = (scrollState: ScrollContainerScrollState) => {\n if (this.state.scrollState !== scrollState) {\n this.setState({ scrollState });\n }\n };\n\n private setEnableIconPadding = (isIconPaddingEnabled: boolean) => {\n !this.getProps().preventIconsOffset && this.setState({ enableIconPadding: isIconPaddingEnabled });\n };\n}\n\nfunction childrenToArray(children: React.ReactNode): React.ReactNode[] {\n const ret: React.ReactNode[] = [];\n // Use forEach instead of map to avoid cloning for key unifying.\n React.Children.forEach(children, (child) => {\n ret.push(child);\n });\n return ret;\n}\n\nconst getAlignRightClass = (emotion: Emotion) => (props: MenuProps) => {\n const styles = getStyles(emotion);\n\n if (props.align === 'right') {\n return emotion.cx({\n [styles.alignRight()]: !isIE11,\n [styles.alignRightIE11()]: isIE11,\n [styles.alignRightIE11FixAutoWidth()]: isIE11 && props.width === 'auto',\n });\n }\n\n return null;\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["Menu.tsx"],"names":["React","globalObject","isBrowser","isKeyArrowDown","isKeyArrowUp","isKeyEnter","MenuSeparator","ThemeFactory","getDOMRect","responsiveLayout","isNonNullable","isNullable","ScrollContainer","MenuItemDataTids","ThemeContext","cx","getRootNode","rootNode","addIconPaddingIfPartOfMenu","isIE11","createPropsGetter","isTheme2022","isIconPaddingEnabled","isInstanceOf","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","isActiveElement","MenuNavigation","MenuContext","MenuDataTids","root","Menu","getProps","defaultProps","state","highlightedIndex","maxHeight","scrollState","enableIconPadding","unmounted","contentRef","createRef","menuNavigation","content","focusOnRootElement","HTMLElement","focus","renderHeader","wrapper","headerWrapper","el","header","contentWrapper","props","menuSeparatorWrapper","theme","renderMenuSeparatorWithNoMargin","renderFooter","footerWrapper","footer","create","menuSeparatorMarginY","getChildList","menuItemsAtAnyLevel","children","preventIconsOffset","Children","map","child","index","modifiedChild","highlight","ref","refHighlighted","bind","cloneElement","onClick","select","onMouseEnter","onMouseLeave","unhighlight","setInitialSelection","i","initialSelectedItemIndex","down","shouldRecalculateMaxHeight","prevProps","prevMaxHeight","prevHeader","prevFooter","prevChildrenCount","count","calculateMaxHeight","parsedMaxHeight","rootElementMaxHeight","getComputedStyle","parseFloat","calculatedMaxHeight","height","setState","refScrollContainer","scrollContainer","scrollToSelected","highlightedItem","highlighted","scrollTo","scrollToTop","scrollToBottom","scroll","nextIndex","items","length","handleKeyDown","event","onKeyDown","defaultPrevented","preventDefault","up","getStyle","align","maxWidth","width","minWidth","handleScrollStateChange","setEnableIconPadding","componentWillUnmount","componentDidMount","componentDidUpdate","render","flags","renderMain","move","enter","navigate","reset","hasHighlightedItem","highlightItem","highlightByIndex","isEmpty","hasShadow","preventWindowScroll","offsetY","top","scrollContainerScrollBarOffsetY","right","bottom","isMobile","isMobileLayout","getAlignRightClass","mobileRoot","shadow","id","setRootNode","disableScrollContainer","scrollContainerMobile","navigation","onItemClick","originalRef","menuItem","shouldHandleHref","item","childrenToArray","href","target","open","location","step","cyclicSelection","activeElements","filter","indexOf","PureComponent","__KONTUR_REACT_UI__","displayName","ret","forEach","push","alignRight","alignRightIE11","alignRightIE11FixAutoWidth"],"mappings":"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","sourcesContent":["import React, { CSSProperties, HTMLAttributes } from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { isKeyArrowDown, isKeyArrowUp, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { MenuSeparator } from '../../components/MenuSeparator';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { isNonNullable, isNullable } from '../../lib/utils';\nimport { ScrollContainer, ScrollContainerScrollState } from '../../components/ScrollContainer';\nimport { MenuItem, MenuItemDataTids, MenuItemProps } from '../../components/MenuItem';\nimport { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { cx } from '../../lib/theming/Emotion';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { addIconPaddingIfPartOfMenu } from '../InternalMenu/addIconPaddingIfPartOfMenu';\nimport { isIE11 } from '../../lib/client';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { isIconPaddingEnabled } from '../InternalMenu/isIconPaddingEnabled';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Menu.styles';\nimport { isActiveElement } from './isActiveElement';\nimport { MenuNavigation } from './MenuNavigation';\nimport { MenuContext } from './MenuContext';\n\nexport interface MenuProps extends Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n children: React.ReactNode;\n hasShadow?: boolean;\n /**\n * Максимальная высота применяется только для скролл контейнера\n *\n * Высота `header` и `footer` в нее не включены\n */\n maxHeight?: number | string;\n onItemClick?: (event: React.SyntheticEvent<HTMLElement>) => void;\n width?: number | string;\n preventWindowScroll?: boolean;\n /**\n * Отключение кастомного скролла контейнера\n */\n disableScrollContainer?: boolean;\n align?: 'left' | 'right';\n /**\n * Предотвращает выравнивание текста всех пунктов меню относительно друг друга.\n * Так, если хотя бы у одного пункта меню есть иконка, текст в остальных пунктах меню будет выровнен относительно пункта меню с иконкой\n */\n preventIconsOffset?: boolean;\n onKeyDown?: (event: React.KeyboardEvent<HTMLElement>) => void;\n\n header?: React.ReactNode;\n footer?: React.ReactNode;\n /**\n * Циклический перебор айтемов меню (по-дефолтну включен)\n */\n cyclicSelection?: boolean;\n initialSelectedItemIndex?: number;\n}\n\nexport interface MenuState {\n highlightedIndex: number;\n maxHeight: number | string;\n scrollState: ScrollContainerScrollState;\n enableIconPadding: boolean;\n}\n\nexport const MenuDataTids = {\n root: 'Menu__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n MenuProps,\n | 'align'\n | 'width'\n | 'maxHeight'\n | 'hasShadow'\n | 'preventWindowScroll'\n | 'cyclicSelection'\n | 'initialSelectedItemIndex'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Menu extends React.PureComponent<MenuProps, MenuState> {\n public static __KONTUR_REACT_UI__ = 'Menu';\n public static displayName = 'Menu';\n\n public static defaultProps: DefaultProps = {\n align: 'left',\n width: 'auto',\n maxHeight: 300,\n hasShadow: true,\n preventWindowScroll: true,\n cyclicSelection: true,\n initialSelectedItemIndex: -1,\n };\n\n private getProps = createPropsGetter(Menu.defaultProps);\n\n public state: MenuState = {\n highlightedIndex: -1,\n maxHeight: this.getProps().maxHeight || 'none',\n scrollState: 'top',\n enableIconPadding: false,\n };\n\n private theme!: Theme;\n private scrollContainer: Nullable<ScrollContainer>;\n private isMobileLayout!: boolean;\n private highlighted: Nullable<MenuItem>;\n private unmounted = false;\n private setRootNode!: TSetRootNode;\n private header: Nullable<HTMLDivElement>;\n private footer: Nullable<HTMLDivElement>;\n private contentRef = React.createRef<HTMLDivElement>();\n private menuNavigation: MenuNavigation<MenuItem> = new MenuNavigation(this.contentRef, MenuItemDataTids.content);\n private menuItemsAtAnyLevel?: boolean;\n\n public componentWillUnmount() {\n this.unmounted = true;\n }\n\n public componentDidMount() {\n this.setInitialSelection();\n this.calculateMaxHeight();\n }\n\n public componentDidUpdate(prevProps: MenuProps) {\n if (this.shouldRecalculateMaxHeight(prevProps)) {\n this.calculateMaxHeight();\n }\n\n if (prevProps.maxHeight !== this.getProps().maxHeight) {\n this.setState({\n maxHeight: this.props.maxHeight || 'none',\n });\n }\n }\n\n public focus() {\n this.focusOnRootElement();\n }\n\n private focusOnRootElement = (): void => {\n const rootNode = getRootNode(this);\n if (isInstanceOf(rootNode, globalObject.HTMLElement)) {\n rootNode?.focus();\n }\n };\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.menuItemsAtAnyLevel = getFullReactUIFlagsContext(flags).menuItemsAtAnyLevel;\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public up() {\n this.move(-1);\n }\n\n /**\n * @public\n */\n public down() {\n this.move(1);\n }\n\n /**\n * @public\n */\n public enter(event: React.SyntheticEvent<HTMLElement>) {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.highlightedItem?.navigate();\n return this.menuNavigation.select(event);\n }\n return this.select(this.state.highlightedIndex, true, event);\n }\n\n /**\n * @public\n */\n public reset() {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.reset();\n } else {\n this.setState({ highlightedIndex: -1 });\n }\n }\n\n /**\n * @public\n */\n public hasHighlightedItem() {\n if (this.menuItemsAtAnyLevel) {\n return !!this.menuNavigation.highlightedItem;\n }\n return this.state.highlightedIndex !== -1;\n }\n\n public highlightItem(index: number) {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.highlightByIndex(index);\n } else {\n this.highlight(index);\n }\n }\n\n private renderMain() {\n if (this.isEmpty()) {\n return null;\n }\n const { hasShadow, maxHeight, preventWindowScroll } = this.getProps();\n\n const offsetY = isTheme2022(this.theme)\n ? {\n top: `${this.theme.scrollContainerScrollBarOffsetY}`,\n right: 0,\n bottom: `${this.theme.scrollContainerScrollBarOffsetY}`,\n }\n : {};\n\n const isMobile = this.isMobileLayout;\n return (\n <div\n data-tid={MenuDataTids.root}\n className={cx(getAlignRightClass(this.props), {\n [styles.root(this.theme)]: true,\n [styles.mobileRoot(this.theme)]: isMobile,\n [styles.shadow(this.theme)]: hasShadow && !isMobile,\n })}\n style={this.getStyle(this.props)}\n id={this.props.id}\n onKeyDown={this.handleKeyDown}\n ref={this.setRootNode}\n tabIndex={0}\n >\n {this.props.header && this.renderHeader()}\n <ScrollContainer\n ref={this.refScrollContainer}\n maxHeight={maxHeight}\n preventWindowScroll={preventWindowScroll}\n onScrollStateChange={this.handleScrollStateChange}\n disabled={this.props.disableScrollContainer}\n offsetY={offsetY}\n >\n <div\n className={cx({\n [styles.scrollContainer(this.theme)]: true,\n [styles.scrollContainerMobile(this.theme)]: isMobile,\n })}\n ref={this.contentRef}\n >\n <MenuContext.Provider\n value={{\n navigation: this.menuNavigation,\n onItemClick: this.props.onItemClick,\n enableIconPadding: this.state.enableIconPadding,\n setEnableIconPadding: this.setEnableIconPadding,\n }}\n >\n {this.getChildList()}\n </MenuContext.Provider>\n </div>\n </ScrollContainer>\n {this.props.footer && this.renderFooter()}\n </div>\n );\n }\n\n private renderHeader = () => {\n return (\n <div\n className={cx({\n [styles.wrapper()]: true,\n [styles.headerWrapper()]: true,\n })}\n ref={(el) => (this.header = el)}\n >\n <div className={styles.contentWrapper()}>{this.props.header}</div>\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'top' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n </div>\n );\n };\n\n private renderFooter = () => {\n return (\n <div\n className={cx({\n [styles.wrapper()]: true,\n [styles.footerWrapper()]: true,\n })}\n ref={(el) => (this.footer = el)}\n >\n <div className={styles.menuSeparatorWrapper(this.theme)}>\n {this.state.scrollState !== 'bottom' && this.renderMenuSeparatorWithNoMargin()}\n </div>\n <div className={styles.contentWrapper()}>{this.props.footer}</div>\n </div>\n );\n };\n\n private renderMenuSeparatorWithNoMargin = () => {\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ menuSeparatorMarginY: '0' }, this.theme)}>\n <MenuSeparator />\n </ThemeContext.Provider>\n );\n };\n\n private getChildList = () => {\n if (this.menuItemsAtAnyLevel) {\n return this.props.children;\n }\n const enableIconPadding = isIconPaddingEnabled(this.props.children, this.props.preventIconsOffset);\n\n return React.Children.map(this.props.children, (child, index) => {\n if (typeof child === 'string' || typeof child === 'number' || isNullable(child)) {\n return child;\n }\n\n const modifiedChild = addIconPaddingIfPartOfMenu(child, enableIconPadding);\n\n if (isActiveElement(modifiedChild)) {\n const highlight = this.state.highlightedIndex === index;\n\n let ref = modifiedChild.ref;\n if (highlight && typeof modifiedChild.ref !== 'string') {\n ref = this.refHighlighted.bind(this, modifiedChild.ref);\n }\n\n return React.cloneElement<MenuItemProps, MenuItem>(modifiedChild, {\n ref,\n state: highlight ? 'hover' : modifiedChild.props.state,\n onClick: this.select.bind(this, index, false),\n onMouseEnter: this.highlight.bind(this, index),\n onMouseLeave: this.unhighlight,\n });\n }\n\n return modifiedChild;\n });\n };\n\n private setInitialSelection = () => {\n for (let i = this.getProps().initialSelectedItemIndex; i > -1; i--) {\n this.down();\n }\n };\n\n private shouldRecalculateMaxHeight = (prevProps: MenuProps): boolean => {\n const { header, footer, children } = this.props;\n const maxHeight = this.getProps().maxHeight;\n const prevMaxHeight = prevProps.maxHeight;\n const prevHeader = prevProps.header;\n const prevFooter = prevProps.footer;\n const prevChildrenCount = React.Children.count(prevProps.children);\n\n return (\n maxHeight !== prevMaxHeight ||\n footer !== prevFooter ||\n header !== prevHeader ||\n React.Children.count(children) !== prevChildrenCount\n );\n };\n\n private calculateMaxHeight = () => {\n const maxHeight = this.getProps().maxHeight;\n let parsedMaxHeight = maxHeight;\n const rootNode = getRootNode(this);\n\n if (typeof maxHeight === 'string' && isBrowser(globalObject) && rootNode) {\n const rootElementMaxHeight = globalObject.getComputedStyle?.(rootNode).maxHeight;\n\n if (rootElementMaxHeight) {\n parsedMaxHeight = parseFloat(rootElementMaxHeight);\n }\n }\n\n const calculatedMaxHeight =\n typeof parsedMaxHeight === 'number'\n ? parsedMaxHeight +\n ((this.header && getDOMRect(this.header).height) || 0) +\n ((this.footer && getDOMRect(this.footer).height) || 0)\n : maxHeight;\n\n this.setState({\n maxHeight: calculatedMaxHeight || 'none',\n });\n };\n\n private refScrollContainer = (scrollContainer: Nullable<ScrollContainer>) => {\n this.scrollContainer = scrollContainer;\n };\n\n private refHighlighted(\n originalRef: ((menuItem: MenuItem | null) => any) | React.RefObject<MenuItem> | null | undefined,\n menuItem: MenuItem | null,\n ) {\n this.highlighted = menuItem;\n\n if (typeof originalRef === 'function') {\n originalRef(menuItem);\n }\n }\n\n private scrollToSelected = () => {\n const highlightedItem = this.menuItemsAtAnyLevel ? this.menuNavigation.highlightedItem : this.highlighted;\n if (this.scrollContainer && highlightedItem) {\n const rootNode = getRootNode(highlightedItem);\n // TODO: Remove this check once IF-647 is resolved\n if (isInstanceOf(rootNode, globalObject.HTMLElement)) {\n this.scrollContainer.scrollTo(rootNode);\n }\n }\n };\n\n private scrollToTop = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToTop();\n }\n };\n\n private scrollToBottom = () => {\n if (this.scrollContainer) {\n this.scrollContainer.scrollToBottom();\n }\n };\n\n private scroll = (nextIndex: number) => {\n switch (nextIndex) {\n case 0:\n this.scrollToTop?.();\n break;\n case this.menuNavigation.items.length - 1:\n this.scrollToBottom?.();\n break;\n default:\n this.scrollToSelected?.();\n }\n };\n\n private select(index: number, shouldHandleHref: boolean, event: React.SyntheticEvent<HTMLElement>): boolean {\n const item = childrenToArray(this.props.children)[index];\n if (isActiveElement(item) && isBrowser(globalObject)) {\n if (shouldHandleHref && item.props.href) {\n if (item.props.target) {\n globalObject.open(item.props.href, item.props.target);\n } else {\n globalObject.location.href = item.props.href;\n }\n }\n if (item.props.onClick) {\n item.props.onClick(event);\n }\n if (this.props.onItemClick) {\n this.props.onItemClick(event);\n }\n return true;\n }\n return false;\n }\n\n private highlight = (index: number) => {\n this.setState({ highlightedIndex: index });\n };\n\n private unhighlight = () => {\n this.setState({ highlightedIndex: -1 });\n };\n\n private move(step: number) {\n if (this.unmounted) {\n // NOTE workaround, because `ComboBox` call `process.nextTick` in reducer\n return;\n }\n if (this.menuItemsAtAnyLevel) {\n const nextIndex = this.menuNavigation.move(step, this.getProps().cyclicSelection);\n this.scroll(nextIndex);\n } else {\n const children = childrenToArray(this.props.children);\n const activeElements = children.filter(isActiveElement);\n if (!activeElements.length) {\n return;\n }\n let index = this.state.highlightedIndex;\n do {\n index += step;\n\n if (!this.getProps().cyclicSelection && (index < 0 || index > children.length)) {\n return;\n }\n\n if (index < 0) {\n index = children.length - 1;\n } else if (index > children.length) {\n index = 0;\n }\n\n const child = children[index];\n if (isActiveElement(child)) {\n this.setState({ highlightedIndex: index }, () => {\n switch (activeElements.indexOf(child)) {\n case 0:\n this.scrollToTop();\n break;\n case activeElements.length - 1:\n this.scrollToBottom();\n break;\n default:\n this.scrollToSelected();\n }\n });\n return;\n }\n } while (index !== this.state.highlightedIndex);\n }\n }\n\n private isEmpty() {\n const { children } = this.props;\n return !children || !childrenToArray(children).filter(isNonNullable).length;\n }\n\n private handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>): void => {\n if (typeof this.props.onKeyDown === 'function') {\n this.props.onKeyDown(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (isKeyArrowUp(event)) {\n event.preventDefault();\n this.up();\n } else if (isKeyArrowDown(event)) {\n event.preventDefault();\n this.down();\n } else if (isKeyEnter(event)) {\n if (this.menuItemsAtAnyLevel) {\n this.menuNavigation.select(event);\n } else if (this.highlighted && this.highlighted.props.onClick) {\n this.highlighted.props.onClick(event);\n }\n }\n };\n\n private getStyle = (props: MenuProps): CSSProperties => {\n if (props.align === 'right') {\n return {\n maxWidth: props.width,\n minWidth: props.width,\n maxHeight: this.state.maxHeight,\n };\n }\n\n return {\n width: props.width,\n maxHeight: this.state.maxHeight,\n };\n };\n\n private handleScrollStateChange = (scrollState: ScrollContainerScrollState) => {\n if (this.state.scrollState !== scrollState) {\n this.setState({ scrollState });\n }\n };\n\n private setEnableIconPadding = (isIconPaddingEnabled: boolean) => {\n !this.getProps().preventIconsOffset && this.setState({ enableIconPadding: isIconPaddingEnabled });\n };\n}\n\nfunction childrenToArray(children: React.ReactNode): React.ReactNode[] {\n const ret: React.ReactNode[] = [];\n // Use forEach instead of map to avoid cloning for key unifying.\n React.Children.forEach(children, (child) => {\n ret.push(child);\n });\n return ret;\n}\n\nconst getAlignRightClass = (props: MenuProps) => {\n if (props.align === 'right') {\n return cx({\n [styles.alignRight()]: !isIE11,\n [styles.alignRightIE11()]: isIE11,\n [styles.alignRightIE11FixAutoWidth()]: isIE11 && props.width === 'auto',\n });\n }\n\n return null;\n};\n"]}
|
package/internal/Menu/Menu.d.ts
CHANGED
|
@@ -2,47 +2,45 @@ import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTempla
|
|
|
2
2
|
|
|
3
3
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
|
|
4
4
|
|
|
5
|
-
import { memoizeStyle } from "../../../lib/theming/Emotion";
|
|
6
|
-
export var
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
shadow:
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
});
|
|
48
|
-
};
|
|
5
|
+
import { css, memoizeStyle } from "../../../lib/theming/Emotion";
|
|
6
|
+
export var styles = memoizeStyle({
|
|
7
|
+
root: function root(t) {
|
|
8
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n background: ", ";\n border-radius: ", ";\n box-sizing: ", ";\n outline: none;\n padding: ", " ", ";\n margin: ", " 0;\n "])), t.menuBgDefault, t.menuBorderRadius, t.menuBoxSizing, t.menuPaddingY, t.menuPaddingX, t.menuOffsetY);
|
|
9
|
+
},
|
|
10
|
+
mobileRoot: function mobileRoot(t) {
|
|
11
|
+
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n border-radius: 0;\n margin: 0;\n padding: 0 ", ";\n "])), t.mobileMenuPaddingX);
|
|
12
|
+
},
|
|
13
|
+
alignRight: function alignRight() {
|
|
14
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n flex: 1 1 100%;\n "])));
|
|
15
|
+
},
|
|
16
|
+
alignRightIE11: function alignRightIE11() {
|
|
17
|
+
return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n float: right;\n width: 100%;\n "])));
|
|
18
|
+
},
|
|
19
|
+
alignRightIE11FixAutoWidth: function alignRightIE11FixAutoWidth() {
|
|
20
|
+
return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n box-sizing: border-box !important; // override root styles\n overflow: hidden !important; // override root styles\n "])));
|
|
21
|
+
},
|
|
22
|
+
scrollContainer: function scrollContainer(t) {
|
|
23
|
+
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n padding: ", " 0;\n "])), t.menuScrollContainerContentWrapperPaddingY);
|
|
24
|
+
},
|
|
25
|
+
scrollContainerMobile: function scrollContainerMobile(t) {
|
|
26
|
+
return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n padding: ", " 0;\n "])), t.mobileMenuScrollContainerContentWrapperPaddingY);
|
|
27
|
+
},
|
|
28
|
+
shadow: function shadow(t) {
|
|
29
|
+
return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n border: ", ";\n box-shadow: ", ";\n "])), t.menuBorder, t.menuShadow);
|
|
30
|
+
},
|
|
31
|
+
wrapper: function wrapper() {
|
|
32
|
+
return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n position: relative;\n z-index: 1;\n width: 100%;\n overflow: hidden;\n line-height: 18px;\n box-sizing: border-box;\n "])));
|
|
33
|
+
},
|
|
34
|
+
headerWrapper: function headerWrapper() {
|
|
35
|
+
return css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteralLoose(["\n top: -5px;\n "])));
|
|
36
|
+
},
|
|
37
|
+
footerWrapper: function footerWrapper() {
|
|
38
|
+
return css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteralLoose(["\n bottom: -5px;\n "])));
|
|
39
|
+
},
|
|
40
|
+
contentWrapper: function contentWrapper() {
|
|
41
|
+
return css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteralLoose(["\n padding: 6px 18px 7px 8px;\n "])));
|
|
42
|
+
},
|
|
43
|
+
menuSeparatorWrapper: function menuSeparatorWrapper(t) {
|
|
44
|
+
return css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteralLoose(["\n height: ", ";\n "])), t.menuSeparatorBorderWidth);
|
|
45
|
+
}
|
|
46
|
+
});
|