@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
|
@@ -4,7 +4,6 @@ var _reactTransitionGroup = require("react-transition-group");
|
|
|
4
4
|
var _warning = _interopRequireDefault(require("warning"));
|
|
5
5
|
var _globalObject = require("@skbkontur/global-object");
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
var _getDOMRect = require("../../lib/dom/getDOMRect");
|
|
9
8
|
|
|
10
9
|
var LayoutEvents = _interopRequireWildcard(require("../../lib/LayoutEvents"));
|
|
@@ -13,6 +12,7 @@ var _RenderContainer = require("../RenderContainer");
|
|
|
13
12
|
|
|
14
13
|
var _utils = require("../../lib/utils");
|
|
15
14
|
var _client = require("../../lib/client");
|
|
15
|
+
var _ThemeContext = require("../../lib/theming/ThemeContext");
|
|
16
16
|
|
|
17
17
|
var _SSRSafe = require("../../lib/SSRSafe");
|
|
18
18
|
var _currentEnvironment = require("../../lib/currentEnvironment");
|
|
@@ -25,7 +25,6 @@ var _callChildRef = require("../../lib/callChildRef/callChildRef");
|
|
|
25
25
|
var _InstanceWithAnchorElement = require("../../lib/InstanceWithAnchorElement");
|
|
26
26
|
var _createPropsGetter = require("../../lib/createPropsGetter");
|
|
27
27
|
var _isInstanceOf = require("../../lib/isInstanceOf");
|
|
28
|
-
var _ThemeContext = require("../../lib/theming/ThemeContext");
|
|
29
28
|
|
|
30
29
|
var _PopupPin = require("./PopupPin");
|
|
31
30
|
var _PopupHelper = require("./PopupHelper");
|
|
@@ -228,7 +227,6 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
|
|
|
228
227
|
state = { location: _this.props.opened ? DUMMY_LOCATION : null };_this.
|
|
229
228
|
|
|
230
229
|
|
|
231
|
-
|
|
232
230
|
locationUpdateId = null;_this.
|
|
233
231
|
|
|
234
232
|
|
|
@@ -354,13 +352,6 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
|
|
|
354
352
|
|
|
355
353
|
|
|
356
354
|
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
355
|
|
|
365
356
|
|
|
366
357
|
|
|
@@ -451,16 +442,15 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
|
|
|
451
442
|
content = function (children) {
|
|
452
443
|
var backgroundColor = _this.props.backgroundColor;
|
|
453
444
|
var width = _this.getProps().width;
|
|
454
|
-
var styles = (0, _Popup.getStyles)(_this.emotion);
|
|
455
445
|
|
|
456
446
|
return /*#__PURE__*/(
|
|
457
447
|
_react.default.createElement("div", {
|
|
458
|
-
className: styles.content(_this.theme),
|
|
448
|
+
className: _Popup.styles.content(_this.theme),
|
|
459
449
|
"data-tid": PopupDataTids.content,
|
|
460
450
|
ref: (0, _utils.mergeRefs)([_this.refForTransition, _this.refPopupContentElement]) }, /*#__PURE__*/
|
|
461
451
|
|
|
462
452
|
_react.default.createElement("div", {
|
|
463
|
-
className: styles.contentInner(_this.theme),
|
|
453
|
+
className: _Popup.styles.contentInner(_this.theme),
|
|
464
454
|
style: { backgroundColor: backgroundColor, width: _this.calculateWidth(width) },
|
|
465
455
|
"data-tid": PopupDataTids.contentInner },
|
|
466
456
|
|
|
@@ -523,7 +513,6 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
|
|
|
523
513
|
|
|
524
514
|
|
|
525
515
|
|
|
526
|
-
|
|
527
516
|
|
|
528
517
|
|
|
529
518
|
resetLocation = function () {
|
|
@@ -603,7 +592,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
|
|
|
603
592
|
}
|
|
604
593
|
};return _this;}var _proto = Popup.prototype;_proto.componentDidMount = function componentDidMount() {this.updateLocation();this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);if (!this.hasAnchorElementListeners) {this.addEventListeners(this.anchorElement);}};Popup.getDerivedStateFromProps = function getDerivedStateFromProps(props, state) {/**
|
|
605
594
|
* Delaying updateLocation to ensure it happens after props update
|
|
606
|
-
*/if (props.opened) {if (!state.location) {return { location: DUMMY_LOCATION };}} else if (state.location) {return { location: DUMMY_LOCATION };}return state;};_proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {var hadNoLocation = prevState.location === DUMMY_LOCATION;var hasLocation = this.state.location !== DUMMY_LOCATION;var wasClosed = prevProps.opened && !this.props.opened;if (this.isMobileLayout && prevState.location === null && this.state.location === null) {this.setState({ location: DUMMY_LOCATION });}if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {this.props.onOpen();}if (wasClosed && !hasLocation && this.props.onClose) {this.props.onClose();}if (this.props.opened) {this.delayUpdateLocation();}};_proto.componentWillUnmount = function componentWillUnmount() {this.cancelDelayedUpdateLocation();if (this.hasAnchorElementListeners) {this.removeEventListeners(this.anchorElement);}if (this.layoutEventsToken) {this.layoutEventsToken.remove();this.layoutEventsToken = null;}if (this.state.location && this.props.onClose) {this.props.onClose();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(
|
|
595
|
+
*/if (props.opened) {if (!state.location) {return { location: DUMMY_LOCATION };}} else if (state.location) {return { location: DUMMY_LOCATION };}return state;};_proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {var hadNoLocation = prevState.location === DUMMY_LOCATION;var hasLocation = this.state.location !== DUMMY_LOCATION;var wasClosed = prevProps.opened && !this.props.opened;if (this.isMobileLayout && prevState.location === null && this.state.location === null) {this.setState({ location: DUMMY_LOCATION });}if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {this.props.onOpen();}if (wasClosed && !hasLocation && this.props.onClose) {this.props.onClose();}if (this.props.opened) {this.delayUpdateLocation();}};_proto.componentWillUnmount = function componentWillUnmount() {this.cancelDelayedUpdateLocation();if (this.hasAnchorElementListeners) {this.removeEventListeners(this.anchorElement);}if (this.layoutEventsToken) {this.layoutEventsToken.remove();this.layoutEventsToken = null;}if (this.state.location && this.props.onClose) {this.props.onClose();}};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMobile = function renderMobile() {var opened = this.props.opened;var children = this.renderChildren();return children ? /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, { rootNodeRef: this.setRootNode }, /*#__PURE__*/_react.default.createElement(_MobilePopup.MobilePopup, { opened: opened, withoutRenderContainer: true, onCloseRequest: this.props.mobileOnCloseRequest }, this.content(children))) : null;};_proto.renderMain = function renderMain() {var _this3 = this;var location = this.state.location;var anchorElement = this.props.anchorElement;var useWrapper = this.getProps().useWrapper;var anchor = null;if ((0, _isInstanceOf.isInstanceOf)(anchorElement, _globalObject.globalObject.Element)) {this.updateAnchorElement(anchorElement);} else if ( /*#__PURE__*/_react.default.isValidElement(anchorElement)) {anchor = useWrapper ? /*#__PURE__*/_react.default.createElement("span", null, anchorElement) : anchorElement;} else {anchor = /*#__PURE__*/_react.default.createElement("span", null, anchorElement);}var anchorWithRef = anchor && /*#__PURE__*/_react.default.isValidElement(anchor) && (0, _utils.isRefableElement)(anchor) ? /*#__PURE__*/_react.default.cloneElement(anchor, { ref: function ref(instance) {var _anchor;_this3.updateAnchorElement(instance);var originalRef = (_anchor = anchor) == null ? void 0 : _anchor.ref;originalRef && (0, _callChildRef.callChildRef)(originalRef, instance);} }) : null; // we need to get anchor's DOM node
|
|
607
596
|
// so we either set our own ref on it via cloning
|
|
608
597
|
// or relay on findDOMNode (inside getRootNode)
|
|
609
598
|
// which should be called within updateAnchorElement
|
|
@@ -614,7 +603,7 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
|
|
|
614
603
|
element.addEventListener('click', this.handleClick);element.addEventListener('focusin', this.handleFocus);element.addEventListener('focusout', this.handleBlur);this.hasAnchorElementListeners = true;}};_proto.removeEventListeners = function removeEventListeners(element) {if (element && (0, _isInstanceOf.isInstanceOf)(element, _globalObject.globalObject.Element)) {// @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657
|
|
615
604
|
element.removeEventListener('mouseenter', this.handleMouseEnter); // @ts-expect-error: See the comment above
|
|
616
605
|
element.removeEventListener('mouseleave', this.handleMouseLeave); // @ts-expect-error: See the comment above
|
|
617
|
-
element.removeEventListener('click', this.handleClick);element.removeEventListener('focusin', this.handleFocus);element.removeEventListener('focusout', this.handleBlur);this.hasAnchorElementListeners = false;}};_proto.renderContent = function renderContent(location) {var _this4 = this;var _this$props = this.props,maxWidth = _this$props.maxWidth,opened = _this$props.opened;var _this$getProps = this.getProps(),hasShadow = _this$getProps.hasShadow,disableAnimations = _this$getProps.disableAnimations,ignoreHover = _this$getProps.ignoreHover;var children = this.renderChildren();var _PopupHelper$getPosit = _PopupHelper.PopupHelper.getPositionObject(location.position),direction = _PopupHelper$getPosit.direction;var rootStyle = (0, _extends3.default)({}, location.coordinates, { maxWidth: maxWidth });var shouldFallbackShadow = _client.isIE11 || _client.isEdge || _client.isSafari;
|
|
606
|
+
element.removeEventListener('click', this.handleClick);element.removeEventListener('focusin', this.handleFocus);element.removeEventListener('focusout', this.handleBlur);this.hasAnchorElementListeners = false;}};_proto.renderContent = function renderContent(location) {var _this4 = this;var _this$props = this.props,maxWidth = _this$props.maxWidth,opened = _this$props.opened;var _this$getProps = this.getProps(),hasShadow = _this$getProps.hasShadow,disableAnimations = _this$getProps.disableAnimations,ignoreHover = _this$getProps.ignoreHover;var children = this.renderChildren();var _PopupHelper$getPosit = _PopupHelper.PopupHelper.getPositionObject(location.position),direction = _PopupHelper$getPosit.direction;var rootStyle = (0, _extends3.default)({}, location.coordinates, { maxWidth: maxWidth });var shouldFallbackShadow = _client.isIE11 || _client.isEdge || _client.isSafari;return /*#__PURE__*/_react.default.createElement(_reactTransitionGroup.Transition, { timeout: TRANSITION_TIMEOUT, appear: !disableAnimations, in: Boolean(opened && children), mountOnEnter: true, unmountOnExit: true, enter: !disableAnimations, exit: !disableAnimations, onExited: this.resetLocation, nodeRef: this.refForTransition }, function (state) {var _this4$props$id, _extends2, _ref;return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends3.default)({}, _this4.props, { rootNodeRef: _this4.setRootNode }), /*#__PURE__*/_react.default.createElement(_ZIndex.ZIndex, { id: (_this4$props$id = _this4.props.id) != null ? _this4$props$id : _this4.rootId, "data-tid": PopupDataTids.root, priority: 'Popup', className: (0, _Emotion.cx)((0, _extends3.default)((_extends2 = {}, _extends2[_Popup.styles.popup(_this4.theme)] = true, _extends2[_Popup.styles.shadow(_this4.theme)] = hasShadow && !shouldFallbackShadow, _extends2[_Popup.styles.shadowFallback(_this4.theme)] = hasShadow && shouldFallbackShadow, _extends2[_Popup.styles.popupIgnoreHover()] = ignoreHover, _extends2), disableAnimations ? {} : (_ref = {}, _ref[_Popup.styles["transition-enter-" + direction](_this4.theme)] = true, _ref[_Popup.styles.transitionEnter()] = state === 'entering', _ref[_Popup.styles.transitionEnterActive()] = state === 'entered', _ref[_Popup.styles.transitionExit()] = state === 'exiting', _ref))), style: rootStyle, onMouseEnter: _this4.handleMouseEnter, onMouseLeave: _this4.handleMouseLeave }, _this4.content(children), (!_this4.isMobileLayout || _this4.props.withoutMobile) && _this4.renderPin(location.position)));});};_proto.renderChildren = function renderChildren() {return (0, _utils.isFunction)(this.props.children) ? this.props.children() : this.props.children;};_proto.renderPin = function renderPin(positionName) {/**
|
|
618
607
|
* Box-shadow does not appear under the pin. Borders are used instead.
|
|
619
608
|
* In non-ie browsers drop-shadow filter is used. It is applying
|
|
620
609
|
* shadow to the pin too.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Popup.tsx"],"names":["POPUP_BORDER_DEFAULT_COLOR","TRANSITION_TIMEOUT","enter","exit","PopupPositions","DefaultPosition","DUMMY_LOCATION","position","coordinates","top","left","PopupDataTids","root","content","contentInner","popupPin","PopupIds","Popup","responsiveLayout","rootNode","getProps","defaultProps","state","location","props","opened","locationUpdateId","refForTransition","React","createRef","hasAnchorElementListeners","rootId","anchorElement","updateAnchorElement","instance","childDomNode","getAnchorElement","removeEventListeners","addEventListeners","handleMouseEnter","event","onMouseEnter","handleMouseLeave","onMouseLeave","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","calculateWidth","width","includes","anchorWidth","Math","floor","parseFloat","children","backgroundColor","styles","emotion","theme","refPopupContentElement","resetLocation","cancelDelayedUpdateLocation","setState","element","lastPopupContentElement","handleLayoutEvent","updateLocation","popupContentElement","getLocation","onPositionChange","locationEquals","componentDidMount","layoutEventsToken","LayoutEvents","addListener","getDerivedStateFromProps","componentDidUpdate","prevProps","prevState","hadNoLocation","hasLocation","wasClosed","isMobileLayout","onOpen","onClose","delayUpdateLocation","componentWillUnmount","remove","render","renderMain","renderMobile","renderChildren","setRootNode","mobileOnCloseRequest","useWrapper","anchor","globalObject","Element","isValidElement","anchorWithRef","cloneElement","ref","originalRef","canGetAnchorNode","withoutMobile","renderContent","addEventListener","removeEventListener","maxWidth","hasShadow","disableAnimations","ignoreHover","PopupHelper","getPositionObject","direction","rootStyle","shouldFallbackShadow","isIE11","isEdge","isSafari","Boolean","id","cx","popup","shadow","shadowFallback","popupIgnoreHover","transitionEnter","transitionEnterActive","transitionExit","renderPin","positionName","isDefaultBorderColor","popupBorderColor","pinBorder","pinSize","borderColor","hasPin","parseInt","popupPinSize","getPinOffset","align","popupBackground","requestAnimationFrame","cancelAnimationFrame","x","y","abs","popupElement","positions","tryPreserveFirstRenderedPosition","anchorRect","getElementAbsoluteRect","popupRect","getCoordinates","isFullyVisible","canBecomeVisible","canBecomeFullyVisible","getPinnedPopupOffset","test","anchorSize","height","max","marginFromProps","margin","isNaN","popupMargin","popupOffset","getHorizontalPosition","getVerticalPosition","Error","pinOffset","popupPinOffset","popupPinOffsetY","popupPinOffsetX","Component","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","oneOfType","HTMLElement","node","isRequired","string","func","bool","number","array","isTestEnv","defaultRootNode"],"mappings":"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","sourcesContent":["import React, { HTMLAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\nimport type { Emotion } from '@emotion/css/create-instance';\n\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { Nullable } from '../../typings/utility-types';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ZIndex } from '../ZIndex';\nimport { RenderContainer } from '../RenderContainer';\nimport { FocusEventType, MouseEventType } from '../../typings/event-types';\nimport { getRandomID, isFunction, isNonNullable, isNullable, isRefableElement, mergeRefs } from '../../lib/utils';\nimport { isEdge, isIE11, isSafari } from '../../lib/client';\nimport { Theme } from '../../lib/theming/Theme';\nimport { safePropTypesInstanceOf } from '../../lib/SSRSafe';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { EmotionConsumer } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { MobilePopup } from '../MobilePopup';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { isInstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { ThemeConsumer } from '../../lib/theming/ThemeContext';\n\nimport { PopupPin } from './PopupPin';\nimport { Offset, PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { getStyles } from './Popup.styles';\n\nconst POPUP_BORDER_DEFAULT_COLOR = 'transparent';\nconst TRANSITION_TIMEOUT = { enter: 0, exit: 200 };\n\nexport const PopupPositions = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom right',\n 'bottom center',\n 'bottom left',\n 'left bottom',\n 'left middle',\n 'left top',\n] as const;\nexport const DefaultPosition = PopupPositions[0];\n\nexport type PopupPositionsType = typeof PopupPositions[number];\n\nexport const DUMMY_LOCATION: PopupLocation = {\n position: DefaultPosition,\n coordinates: {\n top: -9999,\n left: -9999,\n },\n};\n\nexport interface PopupHandlerProps {\n onMouseEnter?: (event: MouseEventType) => void;\n onMouseLeave?: (event: MouseEventType) => void;\n onClick?: (event: MouseEventType) => void;\n onFocus?: (event: FocusEventType) => void;\n onBlur?: (event: FocusEventType) => void;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport interface PopupProps\n extends Omit<CommonProps, 'children'>,\n PopupHandlerProps,\n Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n anchorElement: React.ReactNode | HTMLElement;\n backgroundColor?: React.CSSProperties['backgroundColor'];\n borderColor?: React.CSSProperties['borderColor'];\n children: React.ReactNode | (() => React.ReactNode);\n hasPin?: boolean;\n hasShadow?: boolean;\n disableAnimations?: boolean;\n margin?: number;\n maxWidth?: number | string;\n opened: boolean;\n pinOffset?: number;\n pinSize?: number;\n popupOffset?: number;\n positions: Readonly<PopupPositionsType[]>;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper?: boolean;\n ignoreHover?: boolean;\n width?: React.CSSProperties['width'];\n /**\n * При очередном рендере пытаться сохранить первоначальную позицию попапа\n * (в числе числе, когда он выходит за пределы экрана, но может быть проскролен в него).\n *\n * Нужен только для Tooltip. В остальных случаях позиция перестраивается автоматически.\n * @see https://github.com/skbkontur/retail-ui/pull/1195\n */\n tryPreserveFirstRenderedPosition?: boolean;\n withoutMobile?: boolean;\n mobileOnCloseRequest?: () => void;\n /**\n * Возвращает текущую позицию попапа\n */\n onPositionChange?: (pos: PopupPositionsType) => void;\n}\n\ninterface PopupLocation {\n coordinates: {\n left: number;\n top: number;\n };\n position: PopupPositionsType;\n}\n\nexport interface PopupState {\n location: Nullable<PopupLocation>;\n}\n\nexport const PopupDataTids = {\n root: 'Popup__root',\n content: 'PopupContent',\n contentInner: 'PopupContentInner',\n popupPin: 'PopupPin__root',\n} as const;\n\nexport const PopupIds = {\n root: PopupDataTids.root,\n};\n\ntype DefaultProps = Required<\n Pick<\n PopupProps,\n 'popupOffset' | 'hasPin' | 'hasShadow' | 'disableAnimations' | 'useWrapper' | 'ignoreHover' | 'width'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Popup extends React.Component<PopupProps, PopupState> {\n public static __KONTUR_REACT_UI__ = 'Popup';\n public static displayName = 'Popup';\n\n public static propTypes = {\n /**\n * Ссылка (ref) на элемент или React компонент, для которого рисуется попап\n */\n anchorElement: PropTypes.oneOfType([safePropTypesInstanceOf(globalObject.HTMLElement), PropTypes.node]).isRequired,\n\n /**\n * Фон попапа и пина\n */\n backgroundColor: PropTypes.string,\n\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Показывать ли пин\n */\n hasPin: PropTypes.bool,\n\n /**\n * Применять ли box-shadow на попапе. При false отключает границу на пине\n */\n hasShadow: PropTypes.bool,\n\n /**\n * Отступ попапа от элемента\n */\n margin: PropTypes.number,\n\n /**\n * Показан или скрыт попап\n */\n opened: PropTypes.bool,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n pinOffset: PropTypes.number,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n pinSize: PropTypes.number,\n\n /**\n * смещение попапа относительно родительского элемента\n */\n popupOffset: PropTypes.number,\n\n /**\n * С какой стороны показывать попап и край попапа,\n * на котором будет отображаться пин\n */\n positions: PropTypes.array,\n\n /**\n * Игнорировать ли события hover/click\n */\n ignoreHover: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n popupOffset: 0,\n hasPin: false,\n hasShadow: false,\n disableAnimations: isTestEnv,\n useWrapper: false,\n ignoreHover: false,\n width: 'auto',\n };\n\n private getProps = createPropsGetter(Popup.defaultProps);\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n public state: PopupState = { location: this.props.opened ? DUMMY_LOCATION : null };\n private theme!: Theme;\n private emotion!: Emotion;\n private layoutEventsToken: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private locationUpdateId: Nullable<number> = null;\n private lastPopupContentElement: Nullable<Element>;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n private refForTransition = React.createRef<HTMLDivElement>();\n private hasAnchorElementListeners = false;\n private rootId = PopupIds.root + getRandomID();\n\n public anchorElement: Nullable<Element> = null;\n\n public componentDidMount() {\n this.updateLocation();\n this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);\n\n if (!this.hasAnchorElementListeners) {\n this.addEventListeners(this.anchorElement);\n }\n }\n\n public static getDerivedStateFromProps(props: Readonly<PopupProps>, state: PopupState) {\n /**\n * Delaying updateLocation to ensure it happens after props update\n */\n if (props.opened) {\n if (!state.location) {\n return { location: DUMMY_LOCATION };\n }\n } else if (state.location) {\n return { location: DUMMY_LOCATION };\n }\n return state;\n }\n\n public componentDidUpdate(prevProps: PopupProps, prevState: PopupState) {\n const hadNoLocation = prevState.location === DUMMY_LOCATION;\n const hasLocation = this.state.location !== DUMMY_LOCATION;\n const wasClosed = prevProps.opened && !this.props.opened;\n\n if (this.isMobileLayout && prevState.location === null && this.state.location === null) {\n this.setState({ location: DUMMY_LOCATION });\n }\n\n if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {\n this.props.onOpen();\n }\n if (wasClosed && !hasLocation && this.props.onClose) {\n this.props.onClose();\n }\n if (this.props.opened) {\n this.delayUpdateLocation();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedUpdateLocation();\n if (this.hasAnchorElementListeners) {\n this.removeEventListeners(this.anchorElement);\n }\n if (this.layoutEventsToken) {\n this.layoutEventsToken.remove();\n this.layoutEventsToken = null;\n }\n if (this.state.location && this.props.onClose) {\n this.props.onClose();\n }\n }\n\n public render() {\n return (\n <EmotionConsumer>\n {(emotion) => {\n this.emotion = emotion;\n return (\n <ThemeConsumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeConsumer>\n );\n }}\n </EmotionConsumer>\n );\n }\n\n private renderMobile() {\n const { opened } = this.props;\n const children = this.renderChildren();\n\n return children ? (\n <CommonWrapper rootNodeRef={this.setRootNode}>\n <MobilePopup opened={opened} withoutRenderContainer onCloseRequest={this.props.mobileOnCloseRequest}>\n {this.content(children)}\n </MobilePopup>\n </CommonWrapper>\n ) : null;\n }\n\n private renderMain() {\n const { location } = this.state;\n const { anchorElement } = this.props;\n const useWrapper = this.getProps().useWrapper;\n\n let anchor: Nullable<React.ReactNode> = null;\n if (isInstanceOf(anchorElement, globalObject.Element)) {\n this.updateAnchorElement(anchorElement);\n } else if (React.isValidElement(anchorElement)) {\n anchor = useWrapper ? <span>{anchorElement}</span> : anchorElement;\n } else {\n anchor = <span>{anchorElement}</span>;\n }\n\n const anchorWithRef =\n anchor && React.isValidElement(anchor) && isRefableElement(anchor)\n ? React.cloneElement(anchor, {\n ref: (instance: Nullable<React.ReactInstance>) => {\n this.updateAnchorElement(instance);\n const originalRef = (anchor as React.RefAttributes<any>)?.ref;\n originalRef && callChildRef(originalRef, instance);\n },\n })\n : null;\n\n // we need to get anchor's DOM node\n // so we either set our own ref on it via cloning\n // or relay on findDOMNode (inside getRootNode)\n // which should be called within updateAnchorElement\n // in the case when the anchor is not refable\n\n const canGetAnchorNode = !!anchorWithRef || isInstanceOf(anchorElement, globalObject.Element);\n\n return (\n <RenderContainer anchor={anchorWithRef || anchor} ref={canGetAnchorNode ? null : this.updateAnchorElement}>\n {this.isMobileLayout && !this.props.withoutMobile\n ? this.renderMobile()\n : location && this.renderContent(location)}\n </RenderContainer>\n );\n }\n\n private updateAnchorElement = (instance: Nullable<React.ReactInstance>) => {\n const childDomNode = isInstanceWithAnchorElement(instance) ? instance.getAnchorElement() : getRootNode(instance);\n const anchorElement = this.anchorElement;\n\n if (childDomNode !== anchorElement) {\n this.removeEventListeners(anchorElement);\n this.anchorElement = childDomNode;\n this.addEventListeners(childDomNode);\n }\n };\n\n private addEventListeners(element: Nullable<Element>) {\n if (element && isInstanceOf(element, globalObject.Element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.addEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.addEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.addEventListener('click', this.handleClick);\n element.addEventListener('focusin', this.handleFocus as EventListener);\n element.addEventListener('focusout', this.handleBlur as EventListener);\n\n this.hasAnchorElementListeners = true;\n }\n }\n\n private removeEventListeners(element: Nullable<Element>) {\n if (element && isInstanceOf(element, globalObject.Element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.removeEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.removeEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.removeEventListener('click', this.handleClick);\n element.removeEventListener('focusin', this.handleFocus as EventListener);\n element.removeEventListener('focusout', this.handleBlur as EventListener);\n\n this.hasAnchorElementListeners = false;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(event);\n }\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(event);\n }\n };\n\n private handleClick = (event: MouseEventType) => {\n if (this.props.onClick) {\n this.props.onClick(event);\n }\n };\n\n private handleFocus = (event: FocusEventType) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: FocusEventType) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private calculateWidth = (width: PopupProps['width']) => {\n if (typeof width === 'string' && width.includes('%')) {\n const anchorWidth = Math.floor(getDOMRect(this.anchorElement).width);\n return this.anchorElement ? (anchorWidth * parseFloat(width)) / 100 : 0;\n }\n return width;\n };\n\n private content = (children: React.ReactNode) => {\n const { backgroundColor } = this.props;\n const width = this.getProps().width;\n const styles = getStyles(this.emotion);\n\n return (\n <div\n className={styles.content(this.theme)}\n data-tid={PopupDataTids.content}\n ref={mergeRefs([this.refForTransition, this.refPopupContentElement])}\n >\n <div\n className={styles.contentInner(this.theme)}\n style={{ backgroundColor, width: this.calculateWidth(width) }}\n data-tid={PopupDataTids.contentInner}\n >\n {children}\n </div>\n </div>\n );\n };\n\n private renderContent(location: PopupLocation) {\n const { maxWidth, opened } = this.props;\n const { hasShadow, disableAnimations, ignoreHover } = this.getProps();\n const children = this.renderChildren();\n\n const { direction } = PopupHelper.getPositionObject(location.position);\n const rootStyle: React.CSSProperties = { ...location.coordinates, maxWidth };\n\n const shouldFallbackShadow = isIE11 || isEdge || isSafari;\n const styles = getStyles(this.emotion);\n\n return (\n <Transition\n timeout={TRANSITION_TIMEOUT}\n appear={!disableAnimations}\n in={Boolean(opened && children)}\n mountOnEnter\n unmountOnExit\n enter={!disableAnimations}\n exit={!disableAnimations}\n onExited={this.resetLocation}\n nodeRef={this.refForTransition}\n >\n {(state: string) => (\n <CommonWrapper {...this.props} rootNodeRef={this.setRootNode}>\n <ZIndex\n id={this.props.id ?? this.rootId}\n data-tid={PopupDataTids.root}\n priority={'Popup'}\n className={this.emotion.cx({\n [styles.popup(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow && !shouldFallbackShadow,\n [styles.shadowFallback(this.theme)]: hasShadow && shouldFallbackShadow,\n [styles.popupIgnoreHover()]: ignoreHover,\n ...(disableAnimations\n ? {}\n : {\n [styles[`transition-enter-${direction}` as keyof typeof styles](this.theme)]: true,\n [styles.transitionEnter()]: state === 'entering',\n [styles.transitionEnterActive()]: state === 'entered',\n [styles.transitionExit()]: state === 'exiting',\n }),\n })}\n style={rootStyle}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.content(children)}\n {(!this.isMobileLayout || this.props.withoutMobile) && this.renderPin(location.position)}\n </ZIndex>\n </CommonWrapper>\n )}\n </Transition>\n );\n }\n\n private resetLocation = () => {\n this.cancelDelayedUpdateLocation();\n this.state.location !== null && this.setState({ location: null });\n };\n\n private renderChildren() {\n return isFunction(this.props.children) ? this.props.children() : this.props.children;\n }\n\n private refPopupContentElement = (element: Nullable<Element>) => {\n this.lastPopupContentElement = element;\n };\n\n private renderPin(positionName: string): React.ReactNode {\n /**\n * Box-shadow does not appear under the pin. Borders are used instead.\n * In non-ie browsers drop-shadow filter is used. It is applying\n * shadow to the pin too.\n */\n const isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;\n const pinBorder = isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;\n\n const { pinSize, backgroundColor, borderColor } = this.props;\n const { hasShadow, hasPin } = this.getProps();\n const position = PopupHelper.getPositionObject(positionName);\n\n return (\n hasPin && (\n <PopupPin\n popupElement={this.lastPopupContentElement}\n popupPosition={positionName}\n size={pinSize || parseInt(this.theme.popupPinSize)}\n offset={this.getPinOffset(position.align)}\n borderWidth={hasShadow ? 1 : 0}\n backgroundColor={backgroundColor || this.theme.popupBackground}\n borderColor={borderColor || pinBorder}\n />\n )\n );\n }\n\n private handleLayoutEvent = () => {\n if (!this.state.location) {\n return;\n }\n this.updateLocation();\n };\n\n private delayUpdateLocation() {\n this.cancelDelayedUpdateLocation();\n this.locationUpdateId = globalObject.requestAnimationFrame?.(this.updateLocation);\n }\n\n private cancelDelayedUpdateLocation() {\n if (this.locationUpdateId) {\n globalObject.cancelAnimationFrame?.(this.locationUpdateId);\n this.locationUpdateId = null;\n }\n }\n\n private updateLocation = () => {\n const popupContentElement = this.lastPopupContentElement;\n\n if (!popupContentElement) {\n return;\n }\n\n const location = this.getLocation(popupContentElement, this.state.location);\n if (location) {\n this.props.onPositionChange?.(location?.position);\n }\n\n if (!this.locationEquals(this.state.location, location)) {\n this.setState({ location });\n }\n };\n\n private locationEquals(x: Nullable<PopupLocation>, y: Nullable<PopupLocation>) {\n if (x === y) {\n return true;\n }\n\n if (isNullable(x) || isNullable(y)) {\n return false;\n }\n\n if (!isIE11 && !isEdge) {\n return (\n x.coordinates.left === y.coordinates.left &&\n x.coordinates.top === y.coordinates.top &&\n x.position === y.position\n );\n }\n\n // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность\n // уйти в бесконечный ререндер\n\n return (\n x.position === y.position &&\n Math.abs(x.coordinates.top - y.coordinates.top) <= 1 &&\n Math.abs(x.coordinates.left - y.coordinates.left) <= 1\n );\n }\n\n private getLocation(popupElement: Element, location?: Nullable<PopupLocation>) {\n const { positions, tryPreserveFirstRenderedPosition } = this.props;\n const anchorElement = this.anchorElement;\n\n warning(\n anchorElement && isInstanceOf(anchorElement, globalObject.Element),\n 'Anchor element is not defined or not instance of Element',\n );\n\n if (!(anchorElement && isInstanceOf(anchorElement, globalObject.Element))) {\n return location;\n }\n\n const anchorRect = PopupHelper.getElementAbsoluteRect(anchorElement);\n const popupRect = PopupHelper.getElementAbsoluteRect(popupElement);\n\n let position: PopupPositionsType;\n let coordinates: Offset;\n\n if (location && location !== DUMMY_LOCATION && location.position) {\n position = location.position;\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n\n const isFullyVisible = PopupHelper.isFullyVisible(coordinates, popupRect);\n const canBecomeVisible = !isFullyVisible && PopupHelper.canBecomeFullyVisible(position, coordinates);\n\n if (\n // если нужно сохранить первоначальную позицию и Попап целиком\n // находится в пределах вьюпорта (или может быть проскроллен в него)\n (tryPreserveFirstRenderedPosition && (isFullyVisible || canBecomeVisible)) ||\n // если Попап целиком во вьюпорте и в самой приоритетной позиции\n // (иначе нужно попытаться позицию сменить)\n (isFullyVisible && position === positions[0])\n ) {\n // сохраняем текущую позицию\n return { coordinates, position };\n }\n }\n\n for (position of positions) {\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n if (PopupHelper.isFullyVisible(coordinates, popupRect)) {\n return { coordinates, position };\n }\n }\n\n position = positions[0];\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n return { coordinates, position };\n }\n\n private getPinnedPopupOffset(anchorRect: Rect, position: PositionObject) {\n if (!this.getProps().hasPin || /center|middle/.test(position.align)) {\n return 0;\n }\n\n const anchorSize = /top|bottom/.test(position.direction) ? anchorRect.width : anchorRect.height;\n\n const { pinSize } = this.props;\n\n return Math.max(\n 0,\n this.getPinOffset(position.align) + (pinSize || parseInt(this.theme.popupPinSize)) - anchorSize / 2,\n );\n }\n\n private getCoordinates(anchorRect: Rect, popupRect: Rect, positionName: string) {\n const { margin: marginFromProps } = this.props;\n const margin =\n isNonNullable(marginFromProps) && !isNaN(marginFromProps)\n ? marginFromProps\n : parseInt(this.theme.popupMargin) || 0;\n const position = PopupHelper.getPositionObject(positionName);\n const popupOffset = this.getProps().popupOffset + this.getPinnedPopupOffset(anchorRect, position);\n\n switch (position.direction) {\n case 'top':\n return {\n top: anchorRect.top - popupRect.height - margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'bottom':\n return {\n top: anchorRect.top + anchorRect.height + margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'left':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left - popupRect.width - margin,\n };\n case 'right':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left + anchorRect.width + margin,\n };\n default:\n throw new Error(`Unexpected direction '${position.direction}'`);\n }\n }\n\n private getPinOffset(align: string) {\n const { pinOffset } = this.props;\n\n switch (align) {\n case 'top':\n case 'bottom':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetY);\n case 'left':\n case 'right':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetX);\n case 'center':\n case 'middle':\n return 0;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getHorizontalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'left':\n return anchorRect.left - popupOffset;\n case 'center':\n return anchorRect.left - (popupRect.width - anchorRect.width) / 2;\n case 'right':\n return anchorRect.left - (popupRect.width - anchorRect.width) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getVerticalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'top':\n return anchorRect.top - popupOffset;\n case 'middle':\n return anchorRect.top - (popupRect.height - anchorRect.height) / 2;\n case 'bottom':\n return anchorRect.top - (popupRect.height - anchorRect.height) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Popup.tsx"],"names":["POPUP_BORDER_DEFAULT_COLOR","TRANSITION_TIMEOUT","enter","exit","PopupPositions","DefaultPosition","DUMMY_LOCATION","position","coordinates","top","left","PopupDataTids","root","content","contentInner","popupPin","PopupIds","Popup","responsiveLayout","rootNode","getProps","defaultProps","state","location","props","opened","locationUpdateId","refForTransition","React","createRef","hasAnchorElementListeners","rootId","anchorElement","updateAnchorElement","instance","childDomNode","getAnchorElement","removeEventListeners","addEventListeners","handleMouseEnter","event","onMouseEnter","handleMouseLeave","onMouseLeave","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","calculateWidth","width","includes","anchorWidth","Math","floor","parseFloat","children","backgroundColor","styles","theme","refPopupContentElement","resetLocation","cancelDelayedUpdateLocation","setState","element","lastPopupContentElement","handleLayoutEvent","updateLocation","popupContentElement","getLocation","onPositionChange","locationEquals","componentDidMount","layoutEventsToken","LayoutEvents","addListener","getDerivedStateFromProps","componentDidUpdate","prevProps","prevState","hadNoLocation","hasLocation","wasClosed","isMobileLayout","onOpen","onClose","delayUpdateLocation","componentWillUnmount","remove","render","renderMain","renderMobile","renderChildren","setRootNode","mobileOnCloseRequest","useWrapper","anchor","globalObject","Element","isValidElement","anchorWithRef","cloneElement","ref","originalRef","canGetAnchorNode","withoutMobile","renderContent","addEventListener","removeEventListener","maxWidth","hasShadow","disableAnimations","ignoreHover","PopupHelper","getPositionObject","direction","rootStyle","shouldFallbackShadow","isIE11","isEdge","isSafari","Boolean","id","popup","shadow","shadowFallback","popupIgnoreHover","transitionEnter","transitionEnterActive","transitionExit","renderPin","positionName","isDefaultBorderColor","popupBorderColor","pinBorder","pinSize","borderColor","hasPin","parseInt","popupPinSize","getPinOffset","align","popupBackground","requestAnimationFrame","cancelAnimationFrame","x","y","abs","popupElement","positions","tryPreserveFirstRenderedPosition","anchorRect","getElementAbsoluteRect","popupRect","getCoordinates","isFullyVisible","canBecomeVisible","canBecomeFullyVisible","getPinnedPopupOffset","test","anchorSize","height","max","marginFromProps","margin","isNaN","popupMargin","popupOffset","getHorizontalPosition","getVerticalPosition","Error","pinOffset","popupPinOffset","popupPinOffsetY","popupPinOffsetX","Component","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","oneOfType","HTMLElement","node","isRequired","string","func","bool","number","array","isTestEnv","defaultRootNode"],"mappings":"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","sourcesContent":["import React, { HTMLAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { Nullable } from '../../typings/utility-types';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ZIndex } from '../ZIndex';\nimport { RenderContainer } from '../RenderContainer';\nimport { FocusEventType, MouseEventType } from '../../typings/event-types';\nimport { getRandomID, isFunction, isNonNullable, isNullable, isRefableElement, mergeRefs } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { safePropTypesInstanceOf } from '../../lib/SSRSafe';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { MobilePopup } from '../MobilePopup';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { isInstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\n\nimport { PopupPin } from './PopupPin';\nimport { Offset, PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './Popup.styles';\n\nconst POPUP_BORDER_DEFAULT_COLOR = 'transparent';\nconst TRANSITION_TIMEOUT = { enter: 0, exit: 200 };\n\nexport const PopupPositions = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom right',\n 'bottom center',\n 'bottom left',\n 'left bottom',\n 'left middle',\n 'left top',\n] as const;\nexport const DefaultPosition = PopupPositions[0];\n\nexport type PopupPositionsType = typeof PopupPositions[number];\n\nexport const DUMMY_LOCATION: PopupLocation = {\n position: DefaultPosition,\n coordinates: {\n top: -9999,\n left: -9999,\n },\n};\n\nexport interface PopupHandlerProps {\n onMouseEnter?: (event: MouseEventType) => void;\n onMouseLeave?: (event: MouseEventType) => void;\n onClick?: (event: MouseEventType) => void;\n onFocus?: (event: FocusEventType) => void;\n onBlur?: (event: FocusEventType) => void;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport interface PopupProps\n extends Omit<CommonProps, 'children'>,\n PopupHandlerProps,\n Pick<HTMLAttributes<HTMLDivElement>, 'id'> {\n anchorElement: React.ReactNode | HTMLElement;\n backgroundColor?: React.CSSProperties['backgroundColor'];\n borderColor?: React.CSSProperties['borderColor'];\n children: React.ReactNode | (() => React.ReactNode);\n hasPin?: boolean;\n hasShadow?: boolean;\n disableAnimations?: boolean;\n margin?: number;\n maxWidth?: number | string;\n opened: boolean;\n pinOffset?: number;\n pinSize?: number;\n popupOffset?: number;\n positions: Readonly<PopupPositionsType[]>;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper?: boolean;\n ignoreHover?: boolean;\n width?: React.CSSProperties['width'];\n /**\n * При очередном рендере пытаться сохранить первоначальную позицию попапа\n * (в числе числе, когда он выходит за пределы экрана, но может быть проскролен в него).\n *\n * Нужен только для Tooltip. В остальных случаях позиция перестраивается автоматически.\n * @see https://github.com/skbkontur/retail-ui/pull/1195\n */\n tryPreserveFirstRenderedPosition?: boolean;\n withoutMobile?: boolean;\n mobileOnCloseRequest?: () => void;\n /**\n * Возвращает текущую позицию попапа\n */\n onPositionChange?: (pos: PopupPositionsType) => void;\n}\n\ninterface PopupLocation {\n coordinates: {\n left: number;\n top: number;\n };\n position: PopupPositionsType;\n}\n\nexport interface PopupState {\n location: Nullable<PopupLocation>;\n}\n\nexport const PopupDataTids = {\n root: 'Popup__root',\n content: 'PopupContent',\n contentInner: 'PopupContentInner',\n popupPin: 'PopupPin__root',\n} as const;\n\nexport const PopupIds = {\n root: PopupDataTids.root,\n};\n\ntype DefaultProps = Required<\n Pick<\n PopupProps,\n 'popupOffset' | 'hasPin' | 'hasShadow' | 'disableAnimations' | 'useWrapper' | 'ignoreHover' | 'width'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Popup extends React.Component<PopupProps, PopupState> {\n public static __KONTUR_REACT_UI__ = 'Popup';\n public static displayName = 'Popup';\n\n public static propTypes = {\n /**\n * Ссылка (ref) на элемент или React компонент, для которого рисуется попап\n */\n anchorElement: PropTypes.oneOfType([safePropTypesInstanceOf(globalObject.HTMLElement), PropTypes.node]).isRequired,\n\n /**\n * Фон попапа и пина\n */\n backgroundColor: PropTypes.string,\n\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Показывать ли пин\n */\n hasPin: PropTypes.bool,\n\n /**\n * Применять ли box-shadow на попапе. При false отключает границу на пине\n */\n hasShadow: PropTypes.bool,\n\n /**\n * Отступ попапа от элемента\n */\n margin: PropTypes.number,\n\n /**\n * Показан или скрыт попап\n */\n opened: PropTypes.bool,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n pinOffset: PropTypes.number,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n pinSize: PropTypes.number,\n\n /**\n * смещение попапа относительно родительского элемента\n */\n popupOffset: PropTypes.number,\n\n /**\n * С какой стороны показывать попап и край попапа,\n * на котором будет отображаться пин\n */\n positions: PropTypes.array,\n\n /**\n * Игнорировать ли события hover/click\n */\n ignoreHover: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n popupOffset: 0,\n hasPin: false,\n hasShadow: false,\n disableAnimations: isTestEnv,\n useWrapper: false,\n ignoreHover: false,\n width: 'auto',\n };\n\n private getProps = createPropsGetter(Popup.defaultProps);\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n public state: PopupState = { location: this.props.opened ? DUMMY_LOCATION : null };\n private theme!: Theme;\n private layoutEventsToken: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private locationUpdateId: Nullable<number> = null;\n private lastPopupContentElement: Nullable<Element>;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n private refForTransition = React.createRef<HTMLDivElement>();\n private hasAnchorElementListeners = false;\n private rootId = PopupIds.root + getRandomID();\n\n public anchorElement: Nullable<Element> = null;\n\n public componentDidMount() {\n this.updateLocation();\n this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);\n\n if (!this.hasAnchorElementListeners) {\n this.addEventListeners(this.anchorElement);\n }\n }\n\n public static getDerivedStateFromProps(props: Readonly<PopupProps>, state: PopupState) {\n /**\n * Delaying updateLocation to ensure it happens after props update\n */\n if (props.opened) {\n if (!state.location) {\n return { location: DUMMY_LOCATION };\n }\n } else if (state.location) {\n return { location: DUMMY_LOCATION };\n }\n return state;\n }\n\n public componentDidUpdate(prevProps: PopupProps, prevState: PopupState) {\n const hadNoLocation = prevState.location === DUMMY_LOCATION;\n const hasLocation = this.state.location !== DUMMY_LOCATION;\n const wasClosed = prevProps.opened && !this.props.opened;\n\n if (this.isMobileLayout && prevState.location === null && this.state.location === null) {\n this.setState({ location: DUMMY_LOCATION });\n }\n\n if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {\n this.props.onOpen();\n }\n if (wasClosed && !hasLocation && this.props.onClose) {\n this.props.onClose();\n }\n if (this.props.opened) {\n this.delayUpdateLocation();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedUpdateLocation();\n if (this.hasAnchorElementListeners) {\n this.removeEventListeners(this.anchorElement);\n }\n if (this.layoutEventsToken) {\n this.layoutEventsToken.remove();\n this.layoutEventsToken = null;\n }\n if (this.state.location && this.props.onClose) {\n this.props.onClose();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMobile() {\n const { opened } = this.props;\n const children = this.renderChildren();\n\n return children ? (\n <CommonWrapper rootNodeRef={this.setRootNode}>\n <MobilePopup opened={opened} withoutRenderContainer onCloseRequest={this.props.mobileOnCloseRequest}>\n {this.content(children)}\n </MobilePopup>\n </CommonWrapper>\n ) : null;\n }\n\n private renderMain() {\n const { location } = this.state;\n const { anchorElement } = this.props;\n const useWrapper = this.getProps().useWrapper;\n\n let anchor: Nullable<React.ReactNode> = null;\n if (isInstanceOf(anchorElement, globalObject.Element)) {\n this.updateAnchorElement(anchorElement);\n } else if (React.isValidElement(anchorElement)) {\n anchor = useWrapper ? <span>{anchorElement}</span> : anchorElement;\n } else {\n anchor = <span>{anchorElement}</span>;\n }\n\n const anchorWithRef =\n anchor && React.isValidElement(anchor) && isRefableElement(anchor)\n ? React.cloneElement(anchor, {\n ref: (instance: Nullable<React.ReactInstance>) => {\n this.updateAnchorElement(instance);\n const originalRef = (anchor as React.RefAttributes<any>)?.ref;\n originalRef && callChildRef(originalRef, instance);\n },\n })\n : null;\n\n // we need to get anchor's DOM node\n // so we either set our own ref on it via cloning\n // or relay on findDOMNode (inside getRootNode)\n // which should be called within updateAnchorElement\n // in the case when the anchor is not refable\n\n const canGetAnchorNode = !!anchorWithRef || isInstanceOf(anchorElement, globalObject.Element);\n\n return (\n <RenderContainer anchor={anchorWithRef || anchor} ref={canGetAnchorNode ? null : this.updateAnchorElement}>\n {this.isMobileLayout && !this.props.withoutMobile\n ? this.renderMobile()\n : location && this.renderContent(location)}\n </RenderContainer>\n );\n }\n\n private updateAnchorElement = (instance: Nullable<React.ReactInstance>) => {\n const childDomNode = isInstanceWithAnchorElement(instance) ? instance.getAnchorElement() : getRootNode(instance);\n const anchorElement = this.anchorElement;\n\n if (childDomNode !== anchorElement) {\n this.removeEventListeners(anchorElement);\n this.anchorElement = childDomNode;\n this.addEventListeners(childDomNode);\n }\n };\n\n private addEventListeners(element: Nullable<Element>) {\n if (element && isInstanceOf(element, globalObject.Element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.addEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.addEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.addEventListener('click', this.handleClick);\n element.addEventListener('focusin', this.handleFocus as EventListener);\n element.addEventListener('focusout', this.handleBlur as EventListener);\n\n this.hasAnchorElementListeners = true;\n }\n }\n\n private removeEventListeners(element: Nullable<Element>) {\n if (element && isInstanceOf(element, globalObject.Element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.removeEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.removeEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.removeEventListener('click', this.handleClick);\n element.removeEventListener('focusin', this.handleFocus as EventListener);\n element.removeEventListener('focusout', this.handleBlur as EventListener);\n\n this.hasAnchorElementListeners = false;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(event);\n }\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(event);\n }\n };\n\n private handleClick = (event: MouseEventType) => {\n if (this.props.onClick) {\n this.props.onClick(event);\n }\n };\n\n private handleFocus = (event: FocusEventType) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: FocusEventType) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private calculateWidth = (width: PopupProps['width']) => {\n if (typeof width === 'string' && width.includes('%')) {\n const anchorWidth = Math.floor(getDOMRect(this.anchorElement).width);\n return this.anchorElement ? (anchorWidth * parseFloat(width)) / 100 : 0;\n }\n return width;\n };\n\n private content = (children: React.ReactNode) => {\n const { backgroundColor } = this.props;\n const width = this.getProps().width;\n\n return (\n <div\n className={styles.content(this.theme)}\n data-tid={PopupDataTids.content}\n ref={mergeRefs([this.refForTransition, this.refPopupContentElement])}\n >\n <div\n className={styles.contentInner(this.theme)}\n style={{ backgroundColor, width: this.calculateWidth(width) }}\n data-tid={PopupDataTids.contentInner}\n >\n {children}\n </div>\n </div>\n );\n };\n\n private renderContent(location: PopupLocation) {\n const { maxWidth, opened } = this.props;\n const { hasShadow, disableAnimations, ignoreHover } = this.getProps();\n const children = this.renderChildren();\n\n const { direction } = PopupHelper.getPositionObject(location.position);\n const rootStyle: React.CSSProperties = { ...location.coordinates, maxWidth };\n\n const shouldFallbackShadow = isIE11 || isEdge || isSafari;\n\n return (\n <Transition\n timeout={TRANSITION_TIMEOUT}\n appear={!disableAnimations}\n in={Boolean(opened && children)}\n mountOnEnter\n unmountOnExit\n enter={!disableAnimations}\n exit={!disableAnimations}\n onExited={this.resetLocation}\n nodeRef={this.refForTransition}\n >\n {(state: string) => (\n <CommonWrapper {...this.props} rootNodeRef={this.setRootNode}>\n <ZIndex\n id={this.props.id ?? this.rootId}\n data-tid={PopupDataTids.root}\n priority={'Popup'}\n className={cx({\n [styles.popup(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow && !shouldFallbackShadow,\n [styles.shadowFallback(this.theme)]: hasShadow && shouldFallbackShadow,\n [styles.popupIgnoreHover()]: ignoreHover,\n ...(disableAnimations\n ? {}\n : {\n [styles[`transition-enter-${direction}` as keyof typeof styles](this.theme)]: true,\n [styles.transitionEnter()]: state === 'entering',\n [styles.transitionEnterActive()]: state === 'entered',\n [styles.transitionExit()]: state === 'exiting',\n }),\n })}\n style={rootStyle}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.content(children)}\n {(!this.isMobileLayout || this.props.withoutMobile) && this.renderPin(location.position)}\n </ZIndex>\n </CommonWrapper>\n )}\n </Transition>\n );\n }\n\n private resetLocation = () => {\n this.cancelDelayedUpdateLocation();\n this.state.location !== null && this.setState({ location: null });\n };\n\n private renderChildren() {\n return isFunction(this.props.children) ? this.props.children() : this.props.children;\n }\n\n private refPopupContentElement = (element: Nullable<Element>) => {\n this.lastPopupContentElement = element;\n };\n\n private renderPin(positionName: string): React.ReactNode {\n /**\n * Box-shadow does not appear under the pin. Borders are used instead.\n * In non-ie browsers drop-shadow filter is used. It is applying\n * shadow to the pin too.\n */\n const isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;\n const pinBorder = isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;\n\n const { pinSize, backgroundColor, borderColor } = this.props;\n const { hasShadow, hasPin } = this.getProps();\n const position = PopupHelper.getPositionObject(positionName);\n\n return (\n hasPin && (\n <PopupPin\n popupElement={this.lastPopupContentElement}\n popupPosition={positionName}\n size={pinSize || parseInt(this.theme.popupPinSize)}\n offset={this.getPinOffset(position.align)}\n borderWidth={hasShadow ? 1 : 0}\n backgroundColor={backgroundColor || this.theme.popupBackground}\n borderColor={borderColor || pinBorder}\n />\n )\n );\n }\n\n private handleLayoutEvent = () => {\n if (!this.state.location) {\n return;\n }\n this.updateLocation();\n };\n\n private delayUpdateLocation() {\n this.cancelDelayedUpdateLocation();\n this.locationUpdateId = globalObject.requestAnimationFrame?.(this.updateLocation);\n }\n\n private cancelDelayedUpdateLocation() {\n if (this.locationUpdateId) {\n globalObject.cancelAnimationFrame?.(this.locationUpdateId);\n this.locationUpdateId = null;\n }\n }\n\n private updateLocation = () => {\n const popupContentElement = this.lastPopupContentElement;\n\n if (!popupContentElement) {\n return;\n }\n\n const location = this.getLocation(popupContentElement, this.state.location);\n if (location) {\n this.props.onPositionChange?.(location?.position);\n }\n\n if (!this.locationEquals(this.state.location, location)) {\n this.setState({ location });\n }\n };\n\n private locationEquals(x: Nullable<PopupLocation>, y: Nullable<PopupLocation>) {\n if (x === y) {\n return true;\n }\n\n if (isNullable(x) || isNullable(y)) {\n return false;\n }\n\n if (!isIE11 && !isEdge) {\n return (\n x.coordinates.left === y.coordinates.left &&\n x.coordinates.top === y.coordinates.top &&\n x.position === y.position\n );\n }\n\n // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность\n // уйти в бесконечный ререндер\n\n return (\n x.position === y.position &&\n Math.abs(x.coordinates.top - y.coordinates.top) <= 1 &&\n Math.abs(x.coordinates.left - y.coordinates.left) <= 1\n );\n }\n\n private getLocation(popupElement: Element, location?: Nullable<PopupLocation>) {\n const { positions, tryPreserveFirstRenderedPosition } = this.props;\n const anchorElement = this.anchorElement;\n\n warning(\n anchorElement && isInstanceOf(anchorElement, globalObject.Element),\n 'Anchor element is not defined or not instance of Element',\n );\n\n if (!(anchorElement && isInstanceOf(anchorElement, globalObject.Element))) {\n return location;\n }\n\n const anchorRect = PopupHelper.getElementAbsoluteRect(anchorElement);\n const popupRect = PopupHelper.getElementAbsoluteRect(popupElement);\n\n let position: PopupPositionsType;\n let coordinates: Offset;\n\n if (location && location !== DUMMY_LOCATION && location.position) {\n position = location.position;\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n\n const isFullyVisible = PopupHelper.isFullyVisible(coordinates, popupRect);\n const canBecomeVisible = !isFullyVisible && PopupHelper.canBecomeFullyVisible(position, coordinates);\n\n if (\n // если нужно сохранить первоначальную позицию и Попап целиком\n // находится в пределах вьюпорта (или может быть проскроллен в него)\n (tryPreserveFirstRenderedPosition && (isFullyVisible || canBecomeVisible)) ||\n // если Попап целиком во вьюпорте и в самой приоритетной позиции\n // (иначе нужно попытаться позицию сменить)\n (isFullyVisible && position === positions[0])\n ) {\n // сохраняем текущую позицию\n return { coordinates, position };\n }\n }\n\n for (position of positions) {\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n if (PopupHelper.isFullyVisible(coordinates, popupRect)) {\n return { coordinates, position };\n }\n }\n\n position = positions[0];\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n return { coordinates, position };\n }\n\n private getPinnedPopupOffset(anchorRect: Rect, position: PositionObject) {\n if (!this.getProps().hasPin || /center|middle/.test(position.align)) {\n return 0;\n }\n\n const anchorSize = /top|bottom/.test(position.direction) ? anchorRect.width : anchorRect.height;\n\n const { pinSize } = this.props;\n\n return Math.max(\n 0,\n this.getPinOffset(position.align) + (pinSize || parseInt(this.theme.popupPinSize)) - anchorSize / 2,\n );\n }\n\n private getCoordinates(anchorRect: Rect, popupRect: Rect, positionName: string) {\n const { margin: marginFromProps } = this.props;\n const margin =\n isNonNullable(marginFromProps) && !isNaN(marginFromProps)\n ? marginFromProps\n : parseInt(this.theme.popupMargin) || 0;\n const position = PopupHelper.getPositionObject(positionName);\n const popupOffset = this.getProps().popupOffset + this.getPinnedPopupOffset(anchorRect, position);\n\n switch (position.direction) {\n case 'top':\n return {\n top: anchorRect.top - popupRect.height - margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'bottom':\n return {\n top: anchorRect.top + anchorRect.height + margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'left':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left - popupRect.width - margin,\n };\n case 'right':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left + anchorRect.width + margin,\n };\n default:\n throw new Error(`Unexpected direction '${position.direction}'`);\n }\n }\n\n private getPinOffset(align: string) {\n const { pinOffset } = this.props;\n\n switch (align) {\n case 'top':\n case 'bottom':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetY);\n case 'left':\n case 'right':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetX);\n case 'center':\n case 'middle':\n return 0;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getHorizontalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'left':\n return anchorRect.left - popupOffset;\n case 'center':\n return anchorRect.left - (popupRect.width - anchorRect.width) / 2;\n case 'right':\n return anchorRect.left - (popupRect.width - anchorRect.width) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getVerticalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'top':\n return anchorRect.top - popupOffset;\n case 'middle':\n return anchorRect.top - (popupRect.height - anchorRect.height) / 2;\n case 'bottom':\n return anchorRect.top - (popupRect.height - anchorRect.height) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\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
|
popup(t: Theme): string;
|
|
5
4
|
popupIgnoreHover(): string;
|
|
6
5
|
content(t: Theme): string;
|
|
@@ -1,91 +1,88 @@
|
|
|
1
|
-
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.
|
|
1
|
+
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;exports.__esModule = true;exports.styles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
|
|
2
2
|
|
|
3
|
-
var _Emotion = require("../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
|
|
4
3
|
|
|
4
|
+
var styles = (0, _Emotion.memoizeStyle)({
|
|
5
|
+
popup: function popup(t) {
|
|
6
|
+
return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n position: absolute;\n min-width: 18px;\n border-radius: ", ";\n border: ", " ", ";\n display: flex;\n "])),
|
|
5
7
|
|
|
6
|
-
var getStyles = function getStyles(emotion) {return (
|
|
7
|
-
(0, _Emotion.memoizeStyle)({
|
|
8
|
-
popup: function popup(t) {
|
|
9
|
-
return emotion.css(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n position: absolute;\n min-width: 18px;\n border-radius: ", ";\n border: ", " ", ";\n display: flex;\n "])),
|
|
10
8
|
|
|
9
|
+
t.popupBorderRadius,
|
|
10
|
+
t.popupBorder, t.popupBorderColor);
|
|
11
11
|
|
|
12
|
-
t.popupBorderRadius,
|
|
13
|
-
t.popupBorder, t.popupBorderColor);
|
|
14
12
|
|
|
13
|
+
},
|
|
15
14
|
|
|
16
|
-
|
|
15
|
+
popupIgnoreHover: function popupIgnoreHover() {
|
|
16
|
+
return (0, _Emotion.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["\n pointer-events: none;\n "])));
|
|
17
17
|
|
|
18
|
-
popupIgnoreHover: function popupIgnoreHover() {
|
|
19
|
-
return emotion.css(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["\n pointer-events: none;\n "])));
|
|
20
18
|
|
|
19
|
+
},
|
|
21
20
|
|
|
22
|
-
|
|
21
|
+
content: function content(t) {
|
|
22
|
+
return (0, _Emotion.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["\n overflow: hidden;\n border-radius: ", ";\n flex-shrink: 0;\n line-height: normal;\n "])),
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
return emotion.css(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["\n overflow: hidden;\n border-radius: ", ";\n flex-shrink: 0;\n line-height: normal;\n "])),
|
|
24
|
+
t.popupBorderRadius);
|
|
26
25
|
|
|
27
|
-
t.popupBorderRadius);
|
|
28
26
|
|
|
29
27
|
|
|
28
|
+
},
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
contentInner: function contentInner(t) {
|
|
31
|
+
return (0, _Emotion.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n background: ", ";\n "])),
|
|
32
|
+
t.popupTextColor,
|
|
33
|
+
t.popupBackground);
|
|
32
34
|
|
|
33
|
-
|
|
34
|
-
return emotion.css(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n background: ", ";\n "])),
|
|
35
|
-
t.popupTextColor,
|
|
36
|
-
t.popupBackground);
|
|
35
|
+
},
|
|
37
36
|
|
|
38
|
-
|
|
37
|
+
shadow: function shadow(t) {
|
|
38
|
+
return (0, _Emotion.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["\n filter: ", ";\n -webkit-filter: ", ";\n "])),
|
|
39
|
+
t.popupDropShadow,
|
|
40
|
+
t.popupDropShadow);
|
|
39
41
|
|
|
40
|
-
|
|
41
|
-
return emotion.css(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["\n filter: ", ";\n -webkit-filter: ", ";\n "])),
|
|
42
|
-
t.popupDropShadow,
|
|
43
|
-
t.popupDropShadow);
|
|
42
|
+
},
|
|
44
43
|
|
|
45
|
-
|
|
44
|
+
shadowFallback: function shadowFallback(t) {
|
|
45
|
+
return (0, _Emotion.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteralLoose2.default)(["\n box-shadow: ", ";\n "])),
|
|
46
|
+
t.popupBoxShadow);
|
|
46
47
|
|
|
47
|
-
|
|
48
|
-
return emotion.css(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteralLoose2.default)(["\n box-shadow: ", ";\n "])),
|
|
49
|
-
t.popupBoxShadow);
|
|
48
|
+
},
|
|
50
49
|
|
|
51
|
-
|
|
50
|
+
transitionEnter: function transitionEnter() {
|
|
51
|
+
return (0, _Emotion.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteralLoose2.default)(["\n opacity: 0.01;\n "])));
|
|
52
52
|
|
|
53
|
-
transitionEnter: function transitionEnter() {
|
|
54
|
-
return emotion.css(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteralLoose2.default)(["\n opacity: 0.01;\n "])));
|
|
55
53
|
|
|
54
|
+
},
|
|
55
|
+
'transition-enter-top': function transitionEnterTop() {
|
|
56
|
+
return (0, _Emotion.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateY(10px);\n "])));
|
|
56
57
|
|
|
57
|
-
},
|
|
58
|
-
'transition-enter-top': function transitionEnterTop() {
|
|
59
|
-
return emotion.css(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateY(10px);\n "])));
|
|
60
58
|
|
|
59
|
+
},
|
|
60
|
+
'transition-enter-bottom': function transitionEnterBottom() {
|
|
61
|
+
return (0, _Emotion.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateY(-10px);\n "])));
|
|
61
62
|
|
|
62
|
-
},
|
|
63
|
-
'transition-enter-bottom': function transitionEnterBottom() {
|
|
64
|
-
return emotion.css(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateY(-10px);\n "])));
|
|
65
63
|
|
|
64
|
+
},
|
|
65
|
+
'transition-enter-left': function transitionEnterLeft() {
|
|
66
|
+
return (0, _Emotion.css)(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateX(10px);\n "])));
|
|
66
67
|
|
|
67
|
-
},
|
|
68
|
-
'transition-enter-left': function transitionEnterLeft() {
|
|
69
|
-
return emotion.css(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateX(10px);\n "])));
|
|
70
68
|
|
|
69
|
+
},
|
|
70
|
+
'transition-enter-right': function transitionEnterRight() {
|
|
71
|
+
return (0, _Emotion.css)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateX(-10px);\n "])));
|
|
71
72
|
|
|
72
|
-
},
|
|
73
|
-
'transition-enter-right': function transitionEnterRight() {
|
|
74
|
-
return emotion.css(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteralLoose2.default)(["\n transform: translateX(-10px);\n "])));
|
|
75
73
|
|
|
74
|
+
},
|
|
75
|
+
transitionEnterActive: function transitionEnterActive() {
|
|
76
|
+
return (0, _Emotion.css)(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteralLoose2.default)(["\n transition: transform 0.18s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.18s cubic-bezier(0.22, 0.61, 0.36, 1);\n opacity: 1;\n transform: translate(0, 0);\n "])));
|
|
76
77
|
|
|
77
|
-
},
|
|
78
|
-
transitionEnterActive: function transitionEnterActive() {
|
|
79
|
-
return emotion.css(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteralLoose2.default)(["\n transition: transform 0.18s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.18s cubic-bezier(0.22, 0.61, 0.36, 1);\n opacity: 1;\n transform: translate(0, 0);\n "])));
|
|
80
78
|
|
|
81
79
|
|
|
82
80
|
|
|
81
|
+
},
|
|
82
|
+
transitionExit: function transitionExit() {
|
|
83
|
+
return (0, _Emotion.css)(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteralLoose2.default)(["\n opacity: 0.01;\n transition: opacity 0.15s ease-out;\n transform: translate(0, 0);\n "])));
|
|
83
84
|
|
|
84
|
-
},
|
|
85
|
-
transitionExit: function transitionExit() {
|
|
86
|
-
return emotion.css(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteralLoose2.default)(["\n opacity: 0.01;\n transition: opacity 0.15s ease-out;\n transform: translate(0, 0);\n "])));
|
|
87
85
|
|
|
88
86
|
|
|
89
87
|
|
|
90
|
-
|
|
91
|
-
} }));};exports.getStyles = getStyles;
|
|
88
|
+
} });exports.styles = styles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Popup.styles.ts"],"names":["
|
|
1
|
+
{"version":3,"sources":["Popup.styles.ts"],"names":["styles","popup","t","css","popupBorderRadius","popupBorder","popupBorderColor","popupIgnoreHover","content","contentInner","popupTextColor","popupBackground","shadow","popupDropShadow","shadowFallback","popupBoxShadow","transitionEnter","transitionEnterActive","transitionExit"],"mappings":"oRAAA,oD;;;AAGO,IAAMA,MAAM,GAAG,2BAAa;AACjCC,EAAAA,KADiC,iBAC3BC,CAD2B,EACjB;AACd,eAAOC,YAAP;;;AAGmBD,IAAAA,CAAC,CAACE,iBAHrB;AAIYF,IAAAA,CAAC,CAACG,WAJd,EAI6BH,CAAC,CAACI,gBAJ/B;;;AAOD,GATgC;;AAWjCC,EAAAA,gBAXiC,8BAWd;AACjB,eAAOJ,YAAP;;;AAGD,GAfgC;;AAiBjCK,EAAAA,OAjBiC,mBAiBzBN,CAjByB,EAiBf;AAChB,eAAOC,YAAP;;AAEmBD,IAAAA,CAAC,CAACE,iBAFrB;;;;AAMD,GAxBgC;;AA0BjCK,EAAAA,YA1BiC,wBA0BpBP,CA1BoB,EA0BV;AACrB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACQ,cADb;AAEgBR,IAAAA,CAAC,CAACS,eAFlB;;AAID,GA/BgC;;AAiCjCC,EAAAA,MAjCiC,kBAiC1BV,CAjC0B,EAiChB;AACf,eAAOC,YAAP;AACYD,IAAAA,CAAC,CAACW,eADd;AAEoBX,IAAAA,CAAC,CAACW,eAFtB;;AAID,GAtCgC;;AAwCjCC,EAAAA,cAxCiC,0BAwClBZ,CAxCkB,EAwCR;AACvB,eAAOC,YAAP;AACgBD,IAAAA,CAAC,CAACa,cADlB;;AAGD,GA5CgC;;AA8CjCC,EAAAA,eA9CiC,6BA8Cf;AAChB,eAAOb,YAAP;;;AAGD,GAlDgC;AAmDjC,wBAnDiC,gCAmDR;AACvB,eAAOA,YAAP;;;AAGD,GAvDgC;AAwDjC,2BAxDiC,mCAwDL;AAC1B,eAAOA,YAAP;;;AAGD,GA5DgC;AA6DjC,yBA7DiC,iCA6DP;AACxB,eAAOA,YAAP;;;AAGD,GAjEgC;AAkEjC,0BAlEiC,kCAkEN;AACzB,eAAOA,YAAP;;;AAGD,GAtEgC;AAuEjCc,EAAAA,qBAvEiC,mCAuET;AACtB,eAAOd,YAAP;;;;;AAKD,GA7EgC;AA8EjCe,EAAAA,cA9EiC,4BA8EhB;AACf,eAAOf,YAAP;;;;;AAKD,GApFgC,EAAb,CAAf,C","sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n popup(t: Theme) {\n return css`\n position: absolute;\n min-width: 18px;\n border-radius: ${t.popupBorderRadius};\n border: ${t.popupBorder} ${t.popupBorderColor};\n display: flex;\n `;\n },\n\n popupIgnoreHover() {\n return css`\n pointer-events: none;\n `;\n },\n\n content(t: Theme) {\n return css`\n overflow: hidden;\n border-radius: ${t.popupBorderRadius};\n flex-shrink: 0;\n line-height: normal;\n `;\n },\n\n contentInner(t: Theme) {\n return css`\n color: ${t.popupTextColor};\n background: ${t.popupBackground};\n `;\n },\n\n shadow(t: Theme) {\n return css`\n filter: ${t.popupDropShadow};\n -webkit-filter: ${t.popupDropShadow};\n `;\n },\n\n shadowFallback(t: Theme) {\n return css`\n box-shadow: ${t.popupBoxShadow};\n `;\n },\n\n transitionEnter() {\n return css`\n opacity: 0.01;\n `;\n },\n 'transition-enter-top'() {\n return css`\n transform: translateY(10px);\n `;\n },\n 'transition-enter-bottom'() {\n return css`\n transform: translateY(-10px);\n `;\n },\n 'transition-enter-left'() {\n return css`\n transform: translateX(10px);\n `;\n },\n 'transition-enter-right'() {\n return css`\n transform: translateX(-10px);\n `;\n },\n transitionEnterActive() {\n return css`\n transition: transform 0.18s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.18s cubic-bezier(0.22, 0.61, 0.36, 1);\n opacity: 1;\n transform: translate(0, 0);\n `;\n },\n transitionExit() {\n return css`\n opacity: 0.01;\n transition: opacity 0.15s ease-out;\n transform: translate(0, 0);\n `;\n },\n});\n"]}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var _Emotion = require("../../lib/theming/Emotion");
|
|
6
5
|
|
|
7
6
|
var _PopupHelper = require("./PopupHelper");
|
|
8
7
|
var _PopupPin = require("./PopupPin.styles");
|
|
@@ -96,18 +95,12 @@ PopupPin = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default
|
|
|
96
95
|
|
|
97
96
|
|
|
98
97
|
var styleWrapper = this.getWrapperStyle(options.outerLeft, options.outerTop, options.outerSize);
|
|
99
|
-
return /*#__PURE__*/(
|
|
100
|
-
_react.default.createElement(_Emotion.EmotionConsumer, null,
|
|
101
|
-
function (emotion) {
|
|
102
|
-
var styles = (0, _PopupPin.getStyles)(emotion);
|
|
103
|
-
return /*#__PURE__*/(
|
|
104
|
-
_react.default.createElement("div", { "data-tid": _Popup.PopupDataTids.popupPin, className: styles.wrapper(), style: styleWrapper }, /*#__PURE__*/
|
|
105
|
-
_react.default.createElement("div", { style: styleOuter }, /*#__PURE__*/
|
|
106
|
-
_react.default.createElement("div", { style: styleInner }))));
|
|
107
|
-
|
|
108
98
|
|
|
99
|
+
return /*#__PURE__*/(
|
|
100
|
+
_react.default.createElement("div", { "data-tid": _Popup.PopupDataTids.popupPin, className: _PopupPin.styles.wrapper(), style: styleWrapper }, /*#__PURE__*/
|
|
101
|
+
_react.default.createElement("div", { style: styleOuter }, /*#__PURE__*/
|
|
102
|
+
_react.default.createElement("div", { style: styleInner }))));
|
|
109
103
|
|
|
110
|
-
}));
|
|
111
104
|
|
|
112
105
|
|
|
113
106
|
};_proto.
|