@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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Kebab.tsx"],"names":["React","PropTypes","isElement","globalObject","isKonturIcon","isKeyArrowVertical","isKeyEnter","isKeySpace","someKeys","LayoutEvents","keyListener","PopupMenu","MenuKebabIcon","isTestEnv","ThemeFactory","CommonWrapper","EmotionConsumer","rootNode","createPropsGetter","isTheme2022","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","ThemeConsumer","ThemeProvider","getStyles","KebabIcon","KebabDataTids","caption","Kebab","getProps","defaultProps","state","focusedByTab","anchor","listener","remove","undefined","renderCaption","captionProps","disabled","size","handleCaptionKeyDown","event","openMenu","handleCaptionClick","toggleMenu","styles","emotion","handleFocus","handleBlur","cx","kebab","theme","kebabSmall","kebabMedium","kebabLarge","kebab2022","opened","focused","props","renderIcon2022","renderIcon","e","preventDefault","handleChangeMenuState","isOpened","restoreFocus","setState","requestAnimationFrame","isTabPressed","componentDidMount","addListener","componentWillUnmount","render","create","popupPinOffset","kebabPinOffset","popupMargin","kebabMargin","popupPinSize","kebabPinSize","menuScrollContainerContentWrapperPaddingY","menuLegacyPaddingY","renderMain","positions","disableAnimations","onOpen","onClose","flags","hasPin","kebabHintRemovePin","setRootNode","preventIconsOffset","menuMaxHeight","popupMenuId","children","icon","iconsmall","iconmedium","iconlarge","sizes","small","parseInt","kebabIconSizeSmall","medium","kebabIconSizeMedium","large","kebabIconSizeLarge","cloneElement","color","kebabIconColor","Component","__KONTUR_REACT_UI__","displayName","propTypes","node","bool","oneOfType","string","number","func"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { isElement } from 'react-is';\nimport { globalObject } from '@skbkontur/global-object';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { isKonturIcon } from '../../lib/utils';\nimport { isKeyArrowVertical, isKeyEnter, isKeySpace, someKeys } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { PopupMenu, PopupMenuCaptionProps, PopupMenuProps } from '../../internal/PopupMenu';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MenuKebabIcon } from '../../internal/icons/16px';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { SizeProp } from '../../lib/types/props';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { ThemeConsumer, ThemeProvider } from '../../lib/theming/ThemeContext';\n\nimport { getStyles } from './Kebab.styles';\nimport { KebabIcon } from './KebabIcon';\n\nexport interface KebabProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n disabled?: boolean;\n size?: SizeProp;\n /**\n * Список позиций доступных для расположения выпадашки.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n menuMaxHeight?: number | string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n /**\n * Кастомная иконка\n */\n icon?: React.ReactNode;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const KebabDataTids = {\n caption: 'Kebab__caption',\n} as const;\n\nexport interface KebabState {\n anchor: Nullable<HTMLElement>;\n focusedByTab: boolean;\n}\n\ntype DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;\n\n@rootNode\nexport class Kebab extends React.Component<KebabProps, KebabState> {\n public static __KONTUR_REACT_UI__ = 'Kebab';\n public static displayName = 'Kebab';\n\n public static propTypes = {};\n\n public static defaultProps: DefaultProps = {\n onOpen: () => undefined,\n onClose: () => undefined,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Kebab.defaultProps);\n\n public state: KebabState = {\n focusedByTab: false,\n anchor: null,\n };\n\n private theme!: Theme;\n private emotion!: Emotion;\n private setRootNode!: TSetRootNode;\n\n private listener: {\n remove: () => void;\n } = {\n remove: () => undefined,\n };\n\n public componentDidMount() {\n /** addListener'у нужен колбэк в аргумент */\n this.listener = LayoutEvents.addListener(() => undefined);\n }\n\n public componentWillUnmount() {\n this.listener.remove();\n }\n\n public render(): JSX.Element {\n return (\n <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeProvider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.kebabPinOffset,\n popupMargin: theme.kebabMargin,\n popupPinSize: theme.kebabPinSize,\n menuScrollContainerContentWrapperPaddingY: theme.menuLegacyPaddingY,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeProvider>\n );\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }\n\n private renderMain() {\n const { disabled } = this.props;\n const { positions, disableAnimations, onOpen, onClose } = this.getProps();\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n const hasPin = !getFullReactUIFlagsContext(flags).kebabHintRemovePin || !isTheme2022(this.theme);\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n popupHasPin={hasPin}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={positions}\n onChangeMenuState={this.handleChangeMenuState}\n caption={this.renderCaption}\n disableAnimations={disableAnimations}\n menuMaxHeight={this.props.menuMaxHeight}\n onOpen={onOpen}\n onClose={onClose}\n popupMenuId={this.props.popupMenuId}\n aria-label={this.props['aria-label']}\n >\n {!disabled && this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderCaption = (captionProps: PopupMenuCaptionProps) => {\n const { disabled, size } = this.getProps();\n const handleCaptionKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n this.handleCaptionKeyDown(event, captionProps.openMenu);\n }\n };\n\n const handleCaptionClick = () => {\n if (!disabled) {\n captionProps.toggleMenu();\n }\n };\n const styles = getStyles(this.emotion);\n\n return (\n <span\n role=\"button\"\n data-tid={KebabDataTids.caption}\n tabIndex={disabled ? -1 : 0}\n onClick={handleCaptionClick}\n onKeyDown={handleCaptionKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={this.emotion.cx(\n styles.kebab(this.theme),\n size === 'small' && styles.kebabSmall(this.theme),\n size === 'medium' && styles.kebabMedium(this.theme),\n size === 'large' && styles.kebabLarge(this.theme),\n isTheme2022(this.theme) && styles.kebab2022(),\n captionProps.opened && styles.opened(this.theme),\n disabled && styles.disabled(),\n this.state.focusedByTab && styles.focused(this.theme),\n )}\n aria-describedby={this.props['aria-describedby']}\n >\n {isTheme2022(this.theme) ? this.renderIcon2022() : this.renderIcon()}\n </span>\n );\n };\n\n private handleCaptionKeyDown = (\n e: React.KeyboardEvent<HTMLDivElement>,\n openMenu: PopupMenuCaptionProps['openMenu'],\n ) => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n openMenu(true);\n }\n };\n\n private handleChangeMenuState = (isOpened: boolean, restoreFocus: boolean): void => {\n this.setState({\n focusedByTab: !isOpened && restoreFocus,\n });\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n });\n };\n\n private renderIcon() {\n const { size, icon = <MenuKebabIcon /> } = this.getProps();\n const styles = getStyles(this.emotion);\n return (\n <div\n className={this.emotion.cx({\n [styles.icon(this.theme)]: true,\n [styles.iconsmall(this.theme)]: size === 'small',\n [styles.iconmedium(this.theme)]: size === 'medium',\n [styles.iconlarge(this.theme)]: size === 'large',\n })}\n >\n {icon}\n </div>\n );\n }\n\n private renderIcon2022() {\n const { size, icon = <KebabIcon /> } = this.getProps();\n\n if (isElement(icon) && isKonturIcon(icon)) {\n const sizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.kebabIconSizeSmall),\n medium: parseInt(this.theme.kebabIconSizeMedium),\n large: parseInt(this.theme.kebabIconSizeLarge),\n };\n\n return React.cloneElement(icon, {\n size: icon.props.size ?? sizes[size],\n color: icon.props.color ?? this.theme.kebabIconColor,\n });\n }\n\n return icon;\n }\n}\n\nKebab.propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n menuMaxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n /**\n * Размер кебаба small 14px | large 20px\n */\n size: PropTypes.string,\n\n /**\n * Коллбек, вызывающийся перед закрытием кебаба\n */\n onClose: PropTypes.func,\n\n /**\n * Коллбек, вызывающийся перед открытием кебаба\n */\n onOpen: PropTypes.func,\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["Kebab.tsx"],"names":["React","PropTypes","isElement","globalObject","isKonturIcon","isKeyArrowVertical","isKeyEnter","isKeySpace","someKeys","LayoutEvents","keyListener","PopupMenu","ThemeContext","MenuKebabIcon","isTestEnv","ThemeFactory","CommonWrapper","cx","rootNode","createPropsGetter","isTheme2022","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","getVisualStateDataAttributes","styles","KebabIcon","KebabDataTids","caption","Kebab","getProps","defaultProps","state","focusedByTab","anchor","listener","remove","undefined","renderCaption","captionProps","disabled","size","handleCaptionKeyDown","event","openMenu","handleCaptionClick","toggleMenu","handleFocus","handleBlur","kebab","theme","kebabSmall","kebabMedium","kebabLarge","kebab2022","opened","focused","props","renderIcon2022","renderIcon","e","preventDefault","handleChangeMenuState","isOpened","restoreFocus","setState","requestAnimationFrame","isTabPressed","componentDidMount","addListener","componentWillUnmount","render","create","popupPinOffset","kebabPinOffset","popupMargin","kebabMargin","popupPinSize","kebabPinSize","menuScrollContainerContentWrapperPaddingY","menuLegacyPaddingY","renderMain","positions","disableAnimations","onOpen","onClose","flags","hasPin","kebabHintRemovePin","setRootNode","preventIconsOffset","menuMaxHeight","popupMenuId","children","icon","iconsmall","iconmedium","iconlarge","sizes","small","parseInt","kebabIconSizeSmall","medium","kebabIconSizeMedium","large","kebabIconSizeLarge","cloneElement","color","kebabIconColor","Component","__KONTUR_REACT_UI__","displayName","propTypes","node","bool","oneOfType","string","number","func"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { isElement } from 'react-is';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isKonturIcon } from '../../lib/utils';\nimport { isKeyArrowVertical, isKeyEnter, isKeySpace, someKeys } from '../../lib/events/keyboard/identifiers';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { PopupMenu, PopupMenuCaptionProps, PopupMenuProps } from '../../internal/PopupMenu';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { MenuKebabIcon } from '../../internal/icons/16px';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { SizeProp } from '../../lib/types/props';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './Kebab.styles';\nimport { KebabIcon } from './KebabIcon';\n\nexport interface KebabProps\n extends Pick<AriaAttributes, 'aria-label'>,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'popupMenuId' | 'preventIconsOffset'>,\n CommonProps {\n disabled?: boolean;\n size?: SizeProp;\n /**\n * Список позиций доступных для расположения выпадашки.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n menuMaxHeight?: number | string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n /**\n * Кастомная иконка\n */\n icon?: React.ReactNode;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n}\n\nexport const KebabDataTids = {\n caption: 'Kebab__caption',\n} as const;\n\nexport interface KebabState {\n anchor: Nullable<HTMLElement>;\n focusedByTab: boolean;\n}\n\ntype DefaultProps = Required<Pick<KebabProps, 'onOpen' | 'onClose' | 'positions' | 'size' | 'disableAnimations'>>;\n\n@rootNode\nexport class Kebab extends React.Component<KebabProps, KebabState> {\n public static __KONTUR_REACT_UI__ = 'Kebab';\n public static displayName = 'Kebab';\n\n public static propTypes = {};\n\n public static defaultProps: DefaultProps = {\n onOpen: () => undefined,\n onClose: () => undefined,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n size: 'small',\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(Kebab.defaultProps);\n\n public state: KebabState = {\n focusedByTab: false,\n anchor: null,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n private listener: {\n remove: () => void;\n } = {\n remove: () => undefined,\n };\n\n public componentDidMount() {\n /** addListener'у нужен колбэк в аргумент */\n this.listener = LayoutEvents.addListener(() => undefined);\n }\n\n public componentWillUnmount() {\n this.listener.remove();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffset: theme.kebabPinOffset,\n popupMargin: theme.kebabMargin,\n popupPinSize: theme.kebabPinSize,\n menuScrollContainerContentWrapperPaddingY: theme.menuLegacyPaddingY,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const { disabled } = this.props;\n const { positions, disableAnimations, onOpen, onClose } = this.getProps();\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n const hasPin = !getFullReactUIFlagsContext(flags).kebabHintRemovePin || !isTheme2022(this.theme);\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled })}\n >\n <PopupMenu\n popupHasPin={hasPin}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={positions}\n onChangeMenuState={this.handleChangeMenuState}\n caption={this.renderCaption}\n disableAnimations={disableAnimations}\n menuMaxHeight={this.props.menuMaxHeight}\n onOpen={onOpen}\n onClose={onClose}\n popupMenuId={this.props.popupMenuId}\n aria-label={this.props['aria-label']}\n >\n {!disabled && this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderCaption = (captionProps: PopupMenuCaptionProps) => {\n const { disabled, size } = this.getProps();\n const handleCaptionKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n this.handleCaptionKeyDown(event, captionProps.openMenu);\n }\n };\n\n const handleCaptionClick = () => {\n if (!disabled) {\n captionProps.toggleMenu();\n }\n };\n\n return (\n <span\n role=\"button\"\n data-tid={KebabDataTids.caption}\n tabIndex={disabled ? -1 : 0}\n onClick={handleCaptionClick}\n onKeyDown={handleCaptionKeyDown}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n styles.kebab(this.theme),\n size === 'small' && styles.kebabSmall(this.theme),\n size === 'medium' && styles.kebabMedium(this.theme),\n size === 'large' && styles.kebabLarge(this.theme),\n isTheme2022(this.theme) && styles.kebab2022(),\n captionProps.opened && styles.opened(this.theme),\n disabled && styles.disabled(),\n this.state.focusedByTab && styles.focused(this.theme),\n )}\n aria-describedby={this.props['aria-describedby']}\n >\n {isTheme2022(this.theme) ? this.renderIcon2022() : this.renderIcon()}\n </span>\n );\n };\n\n private handleCaptionKeyDown = (\n e: React.KeyboardEvent<HTMLDivElement>,\n openMenu: PopupMenuCaptionProps['openMenu'],\n ) => {\n if (someKeys(isKeyEnter, isKeySpace, isKeyArrowVertical)(e)) {\n e.preventDefault();\n openMenu(true);\n }\n };\n\n private handleChangeMenuState = (isOpened: boolean, restoreFocus: boolean): void => {\n this.setState({\n focusedByTab: !isOpened && restoreFocus,\n });\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({\n focusedByTab: false,\n });\n };\n\n private renderIcon() {\n const { size, icon = <MenuKebabIcon /> } = this.getProps();\n return (\n <div\n className={cx({\n [styles.icon(this.theme)]: true,\n [styles.iconsmall(this.theme)]: size === 'small',\n [styles.iconmedium(this.theme)]: size === 'medium',\n [styles.iconlarge(this.theme)]: size === 'large',\n })}\n >\n {icon}\n </div>\n );\n }\n\n private renderIcon2022() {\n const { size, icon = <KebabIcon /> } = this.getProps();\n\n if (isElement(icon) && isKonturIcon(icon)) {\n const sizes: Record<SizeProp, number> = {\n small: parseInt(this.theme.kebabIconSizeSmall),\n medium: parseInt(this.theme.kebabIconSizeMedium),\n large: parseInt(this.theme.kebabIconSizeLarge),\n };\n\n return React.cloneElement(icon, {\n size: icon.props.size ?? sizes[size],\n color: icon.props.color ?? this.theme.kebabIconColor,\n });\n }\n\n return icon;\n }\n}\n\nKebab.propTypes = {\n children: PropTypes.node,\n disabled: PropTypes.bool,\n menuMaxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n\n /**\n * Размер кебаба small 14px | large 20px\n */\n size: PropTypes.string,\n\n /**\n * Коллбек, вызывающийся перед закрытием кебаба\n */\n onClose: PropTypes.func,\n\n /**\n * Коллбек, вызывающийся перед открытием кебаба\n */\n onOpen: PropTypes.func,\n};\n"]}
|
|
@@ -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
|
-
|
|
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
|
+
kebab: function kebab(t) {
|
|
8
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: inline-block;\n text-align: center;\n border: ", ";\n box-sizing: border-box;\n border-radius: ", ";\n user-select: none;\n cursor: pointer;\n outline: 0;\n transition: background 0.12s ease-out;\n background: ", ";\n\n &:hover {\n background: ", ";\n }\n\n &:active {\n background: ", ";\n }\n "])), t.kebabBorder, t.kebabBorderRadius, t.kebabBackground, t.kebabBackgroundHover, t.kebabBackgroundActive);
|
|
9
|
+
},
|
|
10
|
+
kebabSmall: function kebabSmall(t) {
|
|
11
|
+
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeSmall, t.kebabSizeSmall);
|
|
12
|
+
},
|
|
13
|
+
kebabMedium: function kebabMedium(t) {
|
|
14
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeMedium, t.kebabSizeMedium);
|
|
15
|
+
},
|
|
16
|
+
kebabLarge: function kebabLarge(t) {
|
|
17
|
+
return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n width: ", ";\n height: ", ";\n "])), t.kebabSizeLarge, t.kebabSizeLarge);
|
|
18
|
+
},
|
|
19
|
+
kebab2022: function kebab2022() {
|
|
20
|
+
return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n display: inline-flex;\n align-items: center;\n justify-content: center;\n "])));
|
|
21
|
+
},
|
|
22
|
+
focused: function focused(t) {
|
|
23
|
+
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n background: ", ";\n border-color: ", ";\n "])), t.kebabBackgroundHover, t.borderColorFocus);
|
|
24
|
+
},
|
|
25
|
+
opened: function opened(t) {
|
|
26
|
+
return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n background: ", " !important; // override kebab:hover style\n cursor: default;\n "])), t.kebabBackgroundActive);
|
|
27
|
+
},
|
|
28
|
+
disabled: function disabled() {
|
|
29
|
+
return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n cursor: default;\n\n &:hover {\n background: none;\n }\n "])));
|
|
30
|
+
},
|
|
31
|
+
icon: function icon(t) {
|
|
32
|
+
return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n color: ", ";\n line-height: 1;\n "])), t.kebabIconColor);
|
|
33
|
+
},
|
|
34
|
+
iconsmall: function iconsmall(t) {
|
|
35
|
+
return css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteralLoose(["\n margin-top: 2px;\n font-size: ", ";\n "])), t.kebabIconSizeSmall);
|
|
36
|
+
},
|
|
37
|
+
iconmedium: function iconmedium(t) {
|
|
38
|
+
return css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteralLoose(["\n margin-top: -1px;\n margin-left: 0.5px;\n font-size: ", ";\n "])), t.kebabIconSizeMedium);
|
|
39
|
+
},
|
|
40
|
+
iconlarge: function iconlarge(t) {
|
|
41
|
+
return css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteralLoose(["\n margin-top: -2px;\n margin-left: 1px;\n font-size: ", ";\n "])), t.kebabIconSizeLarge);
|
|
42
|
+
},
|
|
43
|
+
menu: function menu(t) {
|
|
44
|
+
return css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteralLoose(["\n overflow: hidden;\n border-radius: ", ";\n "])), t.popupBorderRadius);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Kebab.styles.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["Kebab.styles.ts"],"names":["css","memoizeStyle","styles","kebab","t","kebabBorder","kebabBorderRadius","kebabBackground","kebabBackgroundHover","kebabBackgroundActive","kebabSmall","kebabSizeSmall","kebabMedium","kebabSizeMedium","kebabLarge","kebabSizeLarge","kebab2022","focused","borderColorFocus","opened","disabled","icon","kebabIconColor","iconsmall","kebabIconSizeSmall","iconmedium","kebabIconSizeMedium","iconlarge","kebabIconSizeLarge","menu","popupBorderRadius"],"mappings":"gVAAA,SAASA,GAAT,EAAcC,YAAd,QAAkC,2BAAlC;;;AAGA,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;AACjCE,EAAAA,KADiC,iBAC3BC,CAD2B,EACjB;AACd,WAAOJ,GAAP;;;AAGYI,IAAAA,CAAC,CAACC,WAHd;;AAKmBD,IAAAA,CAAC,CAACE,iBALrB;;;;;AAUgBF,IAAAA,CAAC,CAACG,eAVlB;;;AAakBH,IAAAA,CAAC,CAACI,oBAbpB;;;;AAiBkBJ,IAAAA,CAAC,CAACK,qBAjBpB;;;AAoBD,GAtBgC;;AAwBjCC,EAAAA,UAxBiC,sBAwBtBN,CAxBsB,EAwBZ;AACnB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACO,cADb;AAEYP,IAAAA,CAAC,CAACO,cAFd;;AAID,GA7BgC;;AA+BjCC,EAAAA,WA/BiC,uBA+BrBR,CA/BqB,EA+BX;AACpB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACS,eADb;AAEYT,IAAAA,CAAC,CAACS,eAFd;;AAID,GApCgC;;AAsCjCC,EAAAA,UAtCiC,sBAsCtBV,CAtCsB,EAsCZ;AACnB,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACW,cADb;AAEYX,IAAAA,CAAC,CAACW,cAFd;;AAID,GA3CgC;;AA6CjCC,EAAAA,SA7CiC,uBA6CrB;AACV,WAAOhB,GAAP;;;;;AAKD,GAnDgC;;AAqDjCiB,EAAAA,OArDiC,mBAqDzBb,CArDyB,EAqDf;AAChB,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACI,oBADlB;AAEkBJ,IAAAA,CAAC,CAACc,gBAFpB;;AAID,GA1DgC;;AA4DjCC,EAAAA,MA5DiC,kBA4D1Bf,CA5D0B,EA4DhB;AACf,WAAOJ,GAAP;AACgBI,IAAAA,CAAC,CAACK,qBADlB;;;AAID,GAjEgC;;AAmEjCW,EAAAA,QAnEiC,sBAmEtB;AACT,WAAOpB,GAAP;;;;;;;AAOD,GA3EgC;;AA6EjCqB,EAAAA,IA7EiC,gBA6E5BjB,CA7E4B,EA6ElB;AACb,WAAOJ,GAAP;AACWI,IAAAA,CAAC,CAACkB,cADb;;;AAID,GAlFgC;;AAoFjCC,EAAAA,SApFiC,qBAoFvBnB,CApFuB,EAoFb;AAClB,WAAOJ,GAAP;;AAEeI,IAAAA,CAAC,CAACoB,kBAFjB;;AAID,GAzFgC;;AA2FjCC,EAAAA,UA3FiC,sBA2FtBrB,CA3FsB,EA2FZ;AACnB,WAAOJ,GAAP;;;AAGeI,IAAAA,CAAC,CAACsB,mBAHjB;;AAKD,GAjGgC;;AAmGjCC,EAAAA,SAnGiC,qBAmGvBvB,CAnGuB,EAmGb;AAClB,WAAOJ,GAAP;;;AAGeI,IAAAA,CAAC,CAACwB,kBAHjB;;AAKD,GAzGgC;;AA2GjCC,EAAAA,IA3GiC,gBA2G5BzB,CA3G4B,EA2GlB;AACb,WAAOJ,GAAP;;AAEmBI,IAAAA,CAAC,CAAC0B,iBAFrB;;AAID,GAhHgC,EAAD,CAA3B","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n kebab(t: Theme) {\n return css`\n display: inline-block;\n text-align: center;\n border: ${t.kebabBorder};\n box-sizing: border-box;\n border-radius: ${t.kebabBorderRadius};\n user-select: none;\n cursor: pointer;\n outline: 0;\n transition: background 0.12s ease-out;\n background: ${t.kebabBackground};\n\n &:hover {\n background: ${t.kebabBackgroundHover};\n }\n\n &:active {\n background: ${t.kebabBackgroundActive};\n }\n `;\n },\n\n kebabSmall(t: Theme) {\n return css`\n width: ${t.kebabSizeSmall};\n height: ${t.kebabSizeSmall};\n `;\n },\n\n kebabMedium(t: Theme) {\n return css`\n width: ${t.kebabSizeMedium};\n height: ${t.kebabSizeMedium};\n `;\n },\n\n kebabLarge(t: Theme) {\n return css`\n width: ${t.kebabSizeLarge};\n height: ${t.kebabSizeLarge};\n `;\n },\n\n kebab2022() {\n return css`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n `;\n },\n\n focused(t: Theme) {\n return css`\n background: ${t.kebabBackgroundHover};\n border-color: ${t.borderColorFocus};\n `;\n },\n\n opened(t: Theme) {\n return css`\n background: ${t.kebabBackgroundActive} !important; // override kebab:hover style\n cursor: default;\n `;\n },\n\n disabled() {\n return css`\n cursor: default;\n\n &:hover {\n background: none;\n }\n `;\n },\n\n icon(t: Theme) {\n return css`\n color: ${t.kebabIconColor};\n line-height: 1;\n `;\n },\n\n iconsmall(t: Theme) {\n return css`\n margin-top: 2px;\n font-size: ${t.kebabIconSizeSmall};\n `;\n },\n\n iconmedium(t: Theme) {\n return css`\n margin-top: -1px;\n margin-left: 0.5px;\n font-size: ${t.kebabIconSizeMedium};\n `;\n },\n\n iconlarge(t: Theme) {\n return css`\n margin-top: -2px;\n margin-left: 1px;\n font-size: ${t.kebabIconSizeLarge};\n `;\n },\n\n menu(t: Theme) {\n return css`\n overflow: hidden;\n border-radius: ${t.popupBorderRadius};\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
|
kebab(t: Theme): string;
|
|
5
4
|
kebabSmall(t: Theme): string;
|
|
6
5
|
kebabMedium(t: Theme): string;
|
|
@@ -1,26 +1,28 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
3
|
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
4
|
-
var _excluded = ["disabled", "href", "icon", "rightIcon", "use", "loading", "_button", "_buttonOpened", "rel", "as", "focused"];
|
|
4
|
+
var _excluded = ["disabled", "href", "hrefLang", "target", "icon", "rightIcon", "use", "loading", "_button", "_buttonOpened", "rel", "as", "component", "focused", "error", "warning", "type", "tabIndex"];
|
|
5
5
|
|
|
6
6
|
var _class, _class2, _temp;
|
|
7
7
|
|
|
8
8
|
import React from 'react';
|
|
9
|
-
import PropTypes from 'prop-types';
|
|
10
9
|
import { globalObject } from '@skbkontur/global-object';
|
|
10
|
+
import { resetButton } from "../../../lib/styles/Mixins";
|
|
11
11
|
import { keyListener } from "../../../lib/events/keyListener";
|
|
12
|
+
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
12
13
|
import { isExternalLink } from "../../../lib/utils";
|
|
13
14
|
import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
14
|
-
import {
|
|
15
|
+
import { cx } from "../../../lib/theming/Emotion";
|
|
15
16
|
import { rootNode } from "../../../lib/rootNode";
|
|
16
17
|
import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
17
18
|
import { ThemeFactory } from "../../../lib/theming/ThemeFactory";
|
|
18
19
|
import { isDarkTheme, isTheme2022 } from "../../../lib/theming/ThemeHelpers";
|
|
19
20
|
import { isIE11 } from "../../../lib/client";
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
21
|
+
import { ReactUIFeatureFlagsContext, getFullReactUIFlagsContext } from "../../../lib/featureFlagsContext";
|
|
22
|
+
import { getVisualStateDataAttributes } from "../../../internal/CommonWrapper/utils/getVisualStateDataAttributes";
|
|
23
|
+
import { globalClasses, styles } from "../Link.styles";
|
|
23
24
|
import { LinkIcon } from "../LinkIcon";
|
|
25
|
+
var LINK_DEFAULT_ELEMENT = 'a';
|
|
24
26
|
export var LinkDataTids = {
|
|
25
27
|
root: 'Link__root'
|
|
26
28
|
};
|
|
@@ -44,24 +46,49 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
|
|
|
44
46
|
focusedByTab: false
|
|
45
47
|
};
|
|
46
48
|
|
|
49
|
+
_this.getTabIndex = function (_ref) {
|
|
50
|
+
var nonInteractive = _ref.nonInteractive,
|
|
51
|
+
_ref$tabIndex = _ref.tabIndex,
|
|
52
|
+
tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex;
|
|
53
|
+
return nonInteractive ? -1 : tabIndex;
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
_this.getRel = function (_ref2) {
|
|
57
|
+
var href = _ref2.href,
|
|
58
|
+
rel = _ref2.rel;
|
|
59
|
+
|
|
60
|
+
if (!rel && href) {
|
|
61
|
+
return "noopener" + (isExternalLink(href) ? ' noreferrer' : '');
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return rel;
|
|
65
|
+
};
|
|
66
|
+
|
|
47
67
|
_this.renderMain = function (props) {
|
|
48
68
|
var disabled = props.disabled,
|
|
49
69
|
href = props.href,
|
|
70
|
+
hrefLang = props.hrefLang,
|
|
71
|
+
target = props.target,
|
|
50
72
|
icon = props.icon,
|
|
51
73
|
rightIcon = props.rightIcon,
|
|
52
74
|
use = props.use,
|
|
53
75
|
loading = props.loading,
|
|
54
76
|
_button = props._button,
|
|
55
77
|
_buttonOpened = props._buttonOpened,
|
|
56
|
-
|
|
57
|
-
|
|
78
|
+
rel = props.rel,
|
|
79
|
+
as = props.as,
|
|
80
|
+
component = props.component,
|
|
58
81
|
_props$focused = props.focused,
|
|
59
82
|
focused = _props$focused === void 0 ? false : _props$focused,
|
|
83
|
+
error = props.error,
|
|
84
|
+
warning = props.warning,
|
|
85
|
+
type = props.type,
|
|
86
|
+
tabIndex = props.tabIndex,
|
|
60
87
|
rest = _objectWithoutPropertiesLoose(props, _excluded);
|
|
61
88
|
|
|
62
89
|
var _isTheme2022 = isTheme2022(_this.theme);
|
|
63
90
|
|
|
64
|
-
var
|
|
91
|
+
var Root = component || as;
|
|
65
92
|
var arrow = null;
|
|
66
93
|
|
|
67
94
|
if (_button) {
|
|
@@ -70,12 +97,6 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
|
|
|
70
97
|
});
|
|
71
98
|
}
|
|
72
99
|
|
|
73
|
-
var rel = relOrigin;
|
|
74
|
-
|
|
75
|
-
if (typeof rel === 'undefined' && href) {
|
|
76
|
-
rel = "noopener" + (isExternalLink(href) ? ' noreferrer' : '');
|
|
77
|
-
}
|
|
78
|
-
|
|
79
100
|
var isFocused = !disabled && (_this.state.focusedByTab || focused);
|
|
80
101
|
var leftIconElement = icon && /*#__PURE__*/React.createElement(LinkIcon, {
|
|
81
102
|
icon: icon,
|
|
@@ -88,31 +109,56 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
|
|
|
88
109
|
loading: loading,
|
|
89
110
|
position: "right"
|
|
90
111
|
});
|
|
91
|
-
var
|
|
92
|
-
|
|
93
|
-
href: href,
|
|
94
|
-
|
|
112
|
+
var nonInteractive = disabled || loading;
|
|
113
|
+
var linkOnlyProps = {
|
|
114
|
+
href: href || '',
|
|
115
|
+
hrefLang: hrefLang,
|
|
116
|
+
rel: _this.getRel({
|
|
117
|
+
href: href,
|
|
118
|
+
rel: rel
|
|
119
|
+
}),
|
|
120
|
+
target: target
|
|
121
|
+
};
|
|
122
|
+
var buttonOnlyProps = {
|
|
123
|
+
disabled: nonInteractive,
|
|
124
|
+
type: type
|
|
125
|
+
};
|
|
126
|
+
var outlineNode = /*#__PURE__*/React.createElement("div", {
|
|
127
|
+
style: {
|
|
128
|
+
zIndex: -1
|
|
129
|
+
},
|
|
130
|
+
className: cx(styles.outline(_this.theme), warning && styles.outlineWarning(_this.theme), error && styles.outlineError(_this.theme))
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
var rootProps = _extends({
|
|
134
|
+
className: cx(styles.useRoot(), Root === 'button' && resetButton(), use === 'default' && styles.useDefault(_this.theme), use === 'success' && styles.useSuccess(_this.theme), use === 'danger' && styles.useDanger(_this.theme), use === 'grayed' && styles.useGrayed(_this.theme), !!_button && styles.button(_this.theme), !!_buttonOpened && styles.buttonOpened(_this.theme), _this.getLinkClassName(isFocused, Boolean(nonInteractive), _isTheme2022)),
|
|
95
135
|
onClick: _this.handleClick,
|
|
96
136
|
onFocus: _this.handleFocus,
|
|
97
137
|
onBlur: _this.handleBlur,
|
|
98
|
-
tabIndex:
|
|
99
|
-
|
|
138
|
+
tabIndex: _this.getTabIndex({
|
|
139
|
+
nonInteractive: nonInteractive,
|
|
140
|
+
tabIndex: tabIndex
|
|
141
|
+
})
|
|
142
|
+
}, Root === LINK_DEFAULT_ELEMENT ? linkOnlyProps : {}, Root === 'button' ? buttonOnlyProps : {});
|
|
143
|
+
|
|
100
144
|
var child = _this.props.children;
|
|
101
145
|
|
|
102
146
|
if (_isTheme2022) {
|
|
103
|
-
var
|
|
147
|
+
var _cx, _cx2; // lineTextWrapper нужен для реализации transition у подчеркивания
|
|
104
148
|
|
|
105
149
|
|
|
106
150
|
child = /*#__PURE__*/React.createElement("span", {
|
|
107
|
-
className:
|
|
151
|
+
className: cx(globalClasses.textWrapper, styles.lineTextWrapper(_this.theme), (_cx = {}, _cx[styles.lineTextWrapperFocused(_this.theme)] = isFocused, _cx))
|
|
108
152
|
}, /*#__PURE__*/React.createElement("span", {
|
|
109
|
-
className:
|
|
153
|
+
className: cx(globalClasses.text, (_cx2 = {}, _cx2[styles.lineText(_this.theme)] = !isIE11, _cx2[styles.lineTextIE11(_this.theme)] = isIE11, _cx2))
|
|
110
154
|
}, _this.props.children));
|
|
111
155
|
}
|
|
112
156
|
|
|
113
|
-
return /*#__PURE__*/React.createElement(
|
|
157
|
+
return /*#__PURE__*/React.createElement(Root, _extends({
|
|
114
158
|
"data-tid": LinkDataTids.root
|
|
115
|
-
}, rest,
|
|
159
|
+
}, rest, rootProps, getVisualStateDataAttributes({
|
|
160
|
+
disabled: disabled
|
|
161
|
+
})), leftIconElement, outlineNode, child, rightIconElement, arrow);
|
|
116
162
|
};
|
|
117
163
|
|
|
118
164
|
_this.handleFocus = function () {
|
|
@@ -136,14 +182,16 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
|
|
|
136
182
|
};
|
|
137
183
|
|
|
138
184
|
_this.handleClick = function (event) {
|
|
139
|
-
var
|
|
140
|
-
onClick =
|
|
141
|
-
disabled =
|
|
142
|
-
loading =
|
|
185
|
+
var _ref3 = _this.props,
|
|
186
|
+
onClick = _ref3.onClick,
|
|
187
|
+
disabled = _ref3.disabled,
|
|
188
|
+
loading = _ref3.loading,
|
|
189
|
+
href = _ref3.href; // we have to check for 'to' prop in case Root is react-router link
|
|
143
190
|
|
|
144
|
-
var
|
|
191
|
+
var to = Object.prototype.hasOwnProperty.call(_this.props, 'to');
|
|
192
|
+
var destination = href || to;
|
|
145
193
|
|
|
146
|
-
if (!
|
|
194
|
+
if (!destination) {
|
|
147
195
|
event.preventDefault();
|
|
148
196
|
}
|
|
149
197
|
|
|
@@ -162,14 +210,11 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
|
|
|
162
210
|
|
|
163
211
|
return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
|
|
164
212
|
_this2.linkFocusOutline = getFullReactUIFlagsContext(flags).linkFocusOutline;
|
|
165
|
-
return /*#__PURE__*/React.createElement(
|
|
166
|
-
_this2.
|
|
167
|
-
return /*#__PURE__*/React.createElement(
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
rootNodeRef: _this2.setRootNode
|
|
171
|
-
}, _this2.getProps()), _this2.renderMain);
|
|
172
|
-
});
|
|
213
|
+
return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
|
|
214
|
+
_this2.theme = _this2.props.theme ? ThemeFactory.create(_this2.props.theme, theme) : theme;
|
|
215
|
+
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
216
|
+
rootNodeRef: _this2.setRootNode
|
|
217
|
+
}, _this2.getProps()), _this2.renderMain);
|
|
173
218
|
});
|
|
174
219
|
});
|
|
175
220
|
};
|
|
@@ -180,18 +225,11 @@ var Link = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$Co
|
|
|
180
225
|
|
|
181
226
|
var isBorderBottom = parseInt(this.theme.linkLineBorderBottomWidth) > 0;
|
|
182
227
|
var isFocused = focused && !disabled;
|
|
183
|
-
|
|
184
|
-
return !isBorderBottom ? this.emotion.cx(styles.root(this.theme), isFocused && styles.focus(this.theme), disabled && styles.disabled(this.theme), use === 'grayed' && focused && styles.useGrayedFocus(this.theme)) : this.emotion.cx(styles.lineRoot(), disabled && styles.disabled(this.theme), disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme), isFocused && use === 'default' && styles.lineFocus(this.theme), isFocused && use === 'success' && styles.lineFocusSuccess(this.theme), isFocused && use === 'danger' && styles.lineFocusDanger(this.theme), isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme), isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme));
|
|
228
|
+
return !isBorderBottom ? cx(styles.root(this.theme), isFocused && styles.focus(this.theme), disabled && styles.disabled(this.theme), use === 'grayed' && focused && styles.useGrayedFocus(this.theme)) : cx(styles.lineRoot(), disabled && styles.disabled(this.theme), disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme), isFocused && use === 'default' && styles.lineFocus(this.theme), isFocused && use === 'success' && styles.lineFocusSuccess(this.theme), isFocused && use === 'danger' && styles.lineFocusDanger(this.theme), isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme), isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme));
|
|
185
229
|
};
|
|
186
230
|
|
|
187
231
|
return Link;
|
|
188
|
-
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Link', _class2.displayName = 'Link', _class2.
|
|
189
|
-
disabled: PropTypes.bool,
|
|
190
|
-
href: PropTypes.string,
|
|
191
|
-
icon: PropTypes.node,
|
|
192
|
-
use: PropTypes.oneOf(['default', 'success', 'danger', 'grayed'])
|
|
193
|
-
}, _class2.defaultProps = {
|
|
194
|
-
href: '',
|
|
232
|
+
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Link', _class2.displayName = 'Link', _class2.defaultProps = {
|
|
195
233
|
use: 'default',
|
|
196
|
-
as:
|
|
234
|
+
as: LINK_DEFAULT_ELEMENT
|
|
197
235
|
}, _temp)) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Link.tsx"],"names":["React","PropTypes","globalObject","keyListener","isExternalLink","CommonWrapper","EmotionConsumer","rootNode","createPropsGetter","ThemeFactory","isDarkTheme","isTheme2022","isIE11","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","ThemeConsumer","getStyles","globalClasses","LinkIcon","LinkDataTids","root","Link","getProps","defaultProps","state","focusedByTab","renderMain","props","disabled","href","icon","rightIcon","use","loading","_button","_buttonOpened","relOrigin","rel","Component","as","focused","rest","_isTheme2022","theme","styles","emotion","arrow","isFocused","leftIconElement","rightIconElement","linkProps","className","cx","useRoot","useDefault","useSuccess","useDanger","useGrayed","button","buttonOpened","getLinkClassName","Boolean","onClick","handleClick","onFocus","handleFocus","onBlur","handleBlur","tabIndex","child","children","textWrapper","lineTextWrapper","lineTextWrapperFocused","text","lineText","lineTextIE11","requestAnimationFrame","isTabPressed","setState","event","preventDefault","render","flags","linkFocusOutline","create","setRootNode","isBorderBottom","parseInt","linkLineBorderBottomWidth","focus","useGrayedFocus","lineRoot","disabledDark22Theme","lineFocus","lineFocusSuccess","lineFocusDanger","lineFocusGrayed","focus2022","__KONTUR_REACT_UI__","displayName","propTypes","bool","string","node","oneOf"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject } from '@skbkontur/global-object';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { Override } from '../../typings/utility-types';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { isExternalLink } from '../../lib/utils';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter, DefaultizedProps } from '../../lib/createPropsGetter';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { isDarkTheme, isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { isIE11 } from '../../lib/client';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { ThemeConsumer } from '../../lib/theming/ThemeContext';\n\nimport { getStyles, globalClasses } from './Link.styles';\nimport { LinkIcon } from './LinkIcon';\n\nexport interface LinkProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n React.AnchorHTMLAttributes<HTMLAnchorElement>,\n {\n /**\n * Отключенное состояние.\n */\n disabled?: boolean;\n /**\n * HTML-атрибут `href`.\n */\n href?: string;\n /**\n * Добавляет ссылке иконку слева.\n */\n icon?: React.ReactElement;\n /**\n * Добавляет ссылке иконку справа.\n */\n rightIcon?: React.ReactElement;\n /**\n * Тема ссылки.\n */\n use?: 'default' | 'success' | 'danger' | 'grayed';\n /**\n * @ignore\n */\n _button?: boolean;\n /**\n * @ignore\n */\n _buttonOpened?: boolean;\n /**\n * HTML-атрибут `tabindex`.\n */\n tabIndex?: number;\n /**\n * Переводит ссылку в состояние загрузки.\n */\n loading?: boolean;\n /**\n * HTML-событие `onclick`.\n */\n onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;\n\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n /**\n * Компонент, используемый в качестве корневого узла.\n * @ignore\n */\n as?: React.ElementType | keyof React.ReactHTML;\n /**\n * @ignore\n */\n focused?: boolean;\n }\n > {}\n\nexport interface LinkState {\n focusedByTab: boolean;\n}\n\nexport const LinkDataTids = {\n root: 'Link__root',\n} as const;\n\ntype DefaultProps = Required<Pick<LinkProps, 'href' | 'use' | 'as'>>;\ntype DefaultizedLinkProps = DefaultizedProps<LinkProps, DefaultProps>;\n\n/**\n * Элемент ссылки из HTML.\n */\n@rootNode\nexport class Link extends React.Component<LinkProps, LinkState> {\n public static __KONTUR_REACT_UI__ = 'Link';\n public static displayName = 'Link';\n\n public static propTypes = {\n disabled: PropTypes.bool,\n\n href: PropTypes.string,\n\n icon: PropTypes.node,\n\n use: PropTypes.oneOf(['default', 'success', 'danger', 'grayed']),\n };\n\n public static defaultProps: DefaultProps = {\n href: '',\n use: 'default',\n as: 'a',\n };\n\n private getProps = createPropsGetter(Link.defaultProps);\n\n public state: LinkState = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private emotion!: Emotion;\n private setRootNode!: TSetRootNode;\n private linkFocusOutline?: boolean;\n\n public render(): JSX.Element {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.linkFocusOutline = getFullReactUIFlagsContext(flags).linkFocusOutline;\n return (\n <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderMain = (props: CommonWrapperRestProps<DefaultizedLinkProps>) => {\n const {\n disabled,\n href,\n icon,\n rightIcon,\n use,\n loading,\n _button,\n _buttonOpened,\n rel: relOrigin,\n as: Component,\n focused = false,\n ...rest\n } = props;\n const _isTheme2022 = isTheme2022(this.theme);\n const styles = getStyles(this.emotion);\n\n let arrow = null;\n if (_button) {\n arrow = <span className={styles.arrow()} />;\n }\n\n let rel = relOrigin;\n if (typeof rel === 'undefined' && href) {\n rel = `noopener${isExternalLink(href) ? ' noreferrer' : ''}`;\n }\n\n const isFocused = !disabled && (this.state.focusedByTab || focused);\n\n const leftIconElement = icon && <LinkIcon icon={icon} loading={loading} position=\"left\" />;\n const rightIconElement = rightIcon && (\n <LinkIcon hasBothIcons={!!icon && !!rightIcon} icon={rightIcon} loading={loading} position=\"right\" />\n );\n\n const linkProps = {\n className: this.emotion.cx(\n styles.useRoot(),\n use === 'default' && styles.useDefault(this.theme),\n use === 'success' && styles.useSuccess(this.theme),\n use === 'danger' && styles.useDanger(this.theme),\n use === 'grayed' && styles.useGrayed(this.theme),\n !!_button && styles.button(this.theme),\n !!_buttonOpened && styles.buttonOpened(this.theme),\n this.getLinkClassName(isFocused, Boolean(disabled || loading), _isTheme2022),\n ),\n href,\n rel,\n onClick: this.handleClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n tabIndex: disabled || loading ? -1 : this.props.tabIndex,\n };\n\n let child = this.props.children;\n if (_isTheme2022) {\n // lineTextWrapper нужен для реализации transition у подчеркивания\n child = (\n <span\n className={this.emotion.cx(globalClasses.textWrapper, styles.lineTextWrapper(this.theme), {\n [styles.lineTextWrapperFocused(this.theme)]: isFocused,\n })}\n >\n <span\n className={this.emotion.cx(globalClasses.text, {\n [styles.lineText(this.theme)]: !isIE11,\n [styles.lineTextIE11(this.theme)]: isIE11,\n })}\n >\n {this.props.children}\n </span>\n </span>\n );\n }\n\n return (\n <Component data-tid={LinkDataTids.root} {...rest} {...linkProps}>\n {leftIconElement}\n {child}\n {rightIconElement}\n {arrow}\n </Component>\n );\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({ focusedByTab: false });\n };\n\n private handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {\n const { onClick, disabled, loading } = this.props;\n const href = this.getProps().href;\n if (!href) {\n event.preventDefault();\n }\n if (onClick && !disabled && !loading) {\n onClick(event);\n }\n };\n\n private getLinkClassName(focused: boolean, disabled: boolean, _isTheme2022: boolean): string {\n const { use } = this.getProps();\n const isBorderBottom = parseInt(this.theme.linkLineBorderBottomWidth) > 0;\n const isFocused = focused && !disabled;\n const styles = getStyles(this.emotion);\n\n return !isBorderBottom\n ? this.emotion.cx(\n styles.root(this.theme),\n isFocused && styles.focus(this.theme),\n disabled && styles.disabled(this.theme),\n use === 'grayed' && focused && styles.useGrayedFocus(this.theme),\n )\n : this.emotion.cx(\n styles.lineRoot(),\n disabled && styles.disabled(this.theme),\n disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme),\n isFocused && use === 'default' && styles.lineFocus(this.theme),\n isFocused && use === 'success' && styles.lineFocusSuccess(this.theme),\n isFocused && use === 'danger' && styles.lineFocusDanger(this.theme),\n isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme),\n isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme),\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Link.tsx"],"names":["React","globalObject","resetButton","keyListener","ThemeContext","isExternalLink","CommonWrapper","cx","rootNode","createPropsGetter","ThemeFactory","isDarkTheme","isTheme2022","isIE11","ReactUIFeatureFlagsContext","getFullReactUIFlagsContext","getVisualStateDataAttributes","globalClasses","styles","LinkIcon","LINK_DEFAULT_ELEMENT","LinkDataTids","root","Link","getProps","defaultProps","state","focusedByTab","getTabIndex","nonInteractive","tabIndex","getRel","href","rel","renderMain","props","disabled","hrefLang","target","icon","rightIcon","use","loading","_button","_buttonOpened","as","component","focused","error","warning","type","rest","_isTheme2022","theme","Root","arrow","isFocused","leftIconElement","rightIconElement","linkOnlyProps","buttonOnlyProps","outlineNode","zIndex","outline","outlineWarning","outlineError","rootProps","className","useRoot","useDefault","useSuccess","useDanger","useGrayed","button","buttonOpened","getLinkClassName","Boolean","onClick","handleClick","onFocus","handleFocus","onBlur","handleBlur","child","children","textWrapper","lineTextWrapper","lineTextWrapperFocused","text","lineText","lineTextIE11","requestAnimationFrame","isTabPressed","setState","event","to","Object","prototype","hasOwnProperty","call","destination","preventDefault","render","flags","linkFocusOutline","create","setRootNode","isBorderBottom","parseInt","linkLineBorderBottomWidth","focus","useGrayedFocus","lineRoot","disabledDark22Theme","lineFocus","lineFocusSuccess","lineFocusDanger","lineFocusGrayed","focus2022","Component","__KONTUR_REACT_UI__","displayName"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { resetButton } from '../../lib/styles/Mixins';\nimport { PolymorphicPropsWithoutRef } from '../../typings/react-ref';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { isExternalLink } from '../../lib/utils';\nimport { CommonProps, CommonWrapper, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter, DefaultizedProps } from '../../lib/createPropsGetter';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { isDarkTheme, isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { isIE11 } from '../../lib/client';\nimport { ReactUIFeatureFlagsContext, getFullReactUIFlagsContext } from '../../lib/featureFlagsContext';\nimport { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { globalClasses, styles } from './Link.styles';\nimport { LinkIcon } from './LinkIcon';\n\ninterface LinkInnerProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'onBlur' | 'onFocus'> {\n /**\n * Отключенное состояние.\n */\n disabled?: boolean;\n /**\n * Добавляет ссылке иконку слева.\n */\n icon?: React.ReactElement;\n /**\n * Добавляет ссылке иконку справа.\n */\n rightIcon?: React.ReactElement;\n /**\n * Тема ссылки.\n */\n use?: 'default' | 'success' | 'danger' | 'grayed';\n /**\n * @ignore\n */\n _button?: boolean;\n /**\n * @ignore\n */\n _buttonOpened?: boolean;\n /**\n * HTML-атрибут `tabindex`.\n */\n tabIndex?: number;\n /**\n * Переводит ссылку в состояние загрузки.\n */\n loading?: boolean;\n /**\n * HTML-событие `onclick`.\n */\n onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;\n\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n /**\n * Компонент, используемый в качестве корневого узла.\n * @ignore\n */\n as?: React.ElementType | keyof React.ReactHTML;\n /**\n * @ignore\n */\n focused?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n}\n\nconst LINK_DEFAULT_ELEMENT = 'a';\n\nexport type LinkProps<C extends React.ElementType = typeof LINK_DEFAULT_ELEMENT> = PolymorphicPropsWithoutRef<\n LinkInnerProps,\n C\n>;\nexport interface LinkState {\n focusedByTab: boolean;\n}\n\nexport const LinkDataTids = {\n root: 'Link__root',\n} as const;\n\ntype DefaultProps = Required<Pick<LinkProps, 'use' | 'as'>>;\ntype DefaultizedLinkProps<T extends React.ElementType = typeof LINK_DEFAULT_ELEMENT> = DefaultizedProps<\n LinkProps<T>,\n DefaultProps\n>;\n\n/**\n * Элемент ссылки из HTML.\n */\n@rootNode\nexport class Link<C extends React.ElementType = typeof LINK_DEFAULT_ELEMENT> extends React.Component<\n LinkProps<C>,\n LinkState\n> {\n public static __KONTUR_REACT_UI__ = 'Link';\n public static displayName = 'Link';\n\n public static defaultProps = {\n use: 'default',\n as: LINK_DEFAULT_ELEMENT,\n };\n\n private getProps = createPropsGetter(Link.defaultProps);\n\n public state: LinkState = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private linkFocusOutline?: boolean;\n\n public render(): JSX.Element {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.linkFocusOutline = getFullReactUIFlagsContext(flags).linkFocusOutline;\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private getTabIndex = ({\n nonInteractive,\n tabIndex = 0,\n }: {\n nonInteractive: boolean | undefined;\n tabIndex: number | undefined;\n }) => {\n return nonInteractive ? -1 : tabIndex;\n };\n\n private getRel = ({ href, rel }: Pick<LinkProps, 'href' | 'rel'>) => {\n if (!rel && href) {\n return `noopener${isExternalLink(href) ? ' noreferrer' : ''}`;\n }\n\n return rel;\n };\n\n private renderMain = (props: CommonWrapperRestProps<DefaultizedLinkProps>) => {\n const {\n disabled,\n href,\n hrefLang,\n target,\n icon,\n rightIcon,\n use,\n loading,\n _button,\n _buttonOpened,\n rel,\n as,\n component,\n focused = false,\n error,\n warning,\n type,\n tabIndex,\n ...rest\n } = props;\n const _isTheme2022 = isTheme2022(this.theme);\n const Root = (component || as) as React.ElementType;\n\n let arrow = null;\n if (_button) {\n arrow = <span className={styles.arrow()} />;\n }\n\n const isFocused = !disabled && (this.state.focusedByTab || focused);\n\n const leftIconElement = icon && <LinkIcon icon={icon} loading={loading} position=\"left\" />;\n const rightIconElement = rightIcon && (\n <LinkIcon hasBothIcons={!!icon && !!rightIcon} icon={rightIcon} loading={loading} position=\"right\" />\n );\n const nonInteractive = disabled || loading;\n\n const linkOnlyProps = {\n href: href || '',\n hrefLang,\n rel: this.getRel({ href, rel }),\n target,\n };\n\n const buttonOnlyProps = { disabled: nonInteractive, type };\n\n const outlineNode = (\n <div\n style={{ zIndex: -1 }}\n className={cx(\n styles.outline(this.theme),\n warning && styles.outlineWarning(this.theme),\n error && styles.outlineError(this.theme),\n )}\n />\n );\n\n const rootProps = {\n className: cx(\n styles.useRoot(),\n Root === 'button' && resetButton(),\n use === 'default' && styles.useDefault(this.theme),\n use === 'success' && styles.useSuccess(this.theme),\n use === 'danger' && styles.useDanger(this.theme),\n use === 'grayed' && styles.useGrayed(this.theme),\n !!_button && styles.button(this.theme),\n !!_buttonOpened && styles.buttonOpened(this.theme),\n this.getLinkClassName(isFocused, Boolean(nonInteractive), _isTheme2022),\n ),\n onClick: this.handleClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n tabIndex: this.getTabIndex({ nonInteractive, tabIndex }),\n ...(Root === LINK_DEFAULT_ELEMENT ? linkOnlyProps : {}),\n ...(Root === 'button' ? buttonOnlyProps : {}),\n };\n\n let child = this.props.children;\n if (_isTheme2022) {\n // lineTextWrapper нужен для реализации transition у подчеркивания\n child = (\n <span\n className={cx(globalClasses.textWrapper, styles.lineTextWrapper(this.theme), {\n [styles.lineTextWrapperFocused(this.theme)]: isFocused,\n })}\n >\n <span\n className={cx(globalClasses.text, {\n [styles.lineText(this.theme)]: !isIE11,\n [styles.lineTextIE11(this.theme)]: isIE11,\n })}\n >\n {this.props.children}\n </span>\n </span>\n );\n }\n\n return (\n <Root data-tid={LinkDataTids.root} {...rest} {...rootProps} {...getVisualStateDataAttributes({ disabled })}>\n {leftIconElement}\n {outlineNode}\n {child}\n {rightIconElement}\n {arrow}\n </Root>\n );\n };\n\n private handleFocus = () => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n }\n };\n\n private handleBlur = () => {\n this.setState({ focusedByTab: false });\n };\n\n private handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {\n const { onClick, disabled, loading, href } = this.props as LinkProps<'a'>;\n // we have to check for 'to' prop in case Root is react-router link\n const to = Object.prototype.hasOwnProperty.call(this.props, 'to');\n const destination = href || to;\n\n if (!destination) {\n event.preventDefault();\n }\n if (onClick && !disabled && !loading) {\n onClick(event);\n }\n };\n\n private getLinkClassName(focused: boolean, disabled: boolean, _isTheme2022: boolean): string {\n const { use } = this.getProps();\n const isBorderBottom = parseInt(this.theme.linkLineBorderBottomWidth) > 0;\n const isFocused = focused && !disabled;\n\n return !isBorderBottom\n ? cx(\n styles.root(this.theme),\n isFocused && styles.focus(this.theme),\n disabled && styles.disabled(this.theme),\n use === 'grayed' && focused && styles.useGrayedFocus(this.theme),\n )\n : cx(\n styles.lineRoot(),\n disabled && styles.disabled(this.theme),\n disabled && _isTheme2022 && isDarkTheme(this.theme) && styles.disabledDark22Theme(this.theme),\n isFocused && use === 'default' && styles.lineFocus(this.theme),\n isFocused && use === 'success' && styles.lineFocusSuccess(this.theme),\n isFocused && use === 'danger' && styles.lineFocusDanger(this.theme),\n isFocused && use === 'grayed' && styles.lineFocusGrayed(this.theme),\n isFocused && _isTheme2022 && this.linkFocusOutline && styles.focus2022(this.theme),\n );\n }\n}\n"]}
|