@skbkontur/react-ui 0.0.0-dad43298ae → 0.0.0-db9f11da2a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +280 -0
- package/README.md +7 -7
- package/cjs/components/Autocomplete/Autocomplete.d.ts +18 -26
- package/cjs/components/Autocomplete/Autocomplete.js +64 -46
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +4 -1
- package/cjs/components/Button/Button.js +47 -17
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +6 -0
- package/cjs/components/Button/Button.styles.js +109 -76
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/ButtonArrow.js +13 -14
- package/cjs/components/Button/ButtonArrow.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +2 -0
- package/cjs/components/Calendar/Calendar.js +1 -0
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Calendar/CalendarDay.js +18 -2
- package/cjs/components/Calendar/CalendarDay.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.js +7 -15
- package/cjs/components/Calendar/DayCellView.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +2 -0
- package/cjs/components/Center/Center.js +1 -0
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +4 -16
- package/cjs/components/Checkbox/Checkbox.js +16 -32
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +22 -3
- package/cjs/components/ComboBox/ComboBox.js +26 -1
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/cjs/components/CurrencyInput/CurrencyInput.js +6 -25
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/constants.js +1 -2
- package/cjs/components/CurrencyInput/constants.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +6 -1
- package/cjs/components/DateInput/DateInput.js +45 -17
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
- package/cjs/components/DatePicker/DatePicker.js +6 -60
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/cjs/components/DateRangePicker/DateRangePicker.js +61 -23
- package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
- package/cjs/components/DateRangePicker/DateRangePicker.styles.js +13 -18
- package/cjs/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePickerInput.js +4 -8
- package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
- package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js +17 -17
- package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
- package/cjs/components/Dropdown/Dropdown.js +2 -82
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +15 -2
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +13 -8
- package/cjs/components/FxInput/FxInput.js +137 -60
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
- package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +2 -15
- package/cjs/components/Gapped/Gapped.js +1 -24
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +5 -4
- package/cjs/components/Group/Group.js +91 -40
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.styles.d.ts +1 -0
- package/cjs/components/Group/Group.styles.js +12 -6
- package/cjs/components/Group/Group.styles.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +2 -0
- package/cjs/components/Hint/Hint.js +1 -0
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +6 -5
- package/cjs/components/Input/Input.js +17 -47
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.d.ts +0 -1
- package/cjs/components/Input/Input.styles.js +8 -19
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -0
- package/cjs/components/Input/InputLayout/InputLayout.js +4 -2
- package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +4 -2
- package/cjs/components/Kebab/Kebab.js +9 -29
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +2 -0
- package/cjs/components/Link/Link.js +15 -1
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.mixins.js +1 -2
- package/cjs/components/Link/Link.mixins.js.map +1 -1
- package/cjs/components/Link/Link.styles.js +3 -2
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +7 -36
- package/cjs/components/Loader/Loader.js +6 -56
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
- package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
- package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/cjs/components/MaskedInput/MaskedInput.js +43 -4
- package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
- package/cjs/components/MenuItem/MenuItem.js +2 -22
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
- package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
- package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalBody.js +17 -2
- package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +2 -1
- package/cjs/components/Modal/Modal.styles.js +40 -32
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +2 -0
- package/cjs/components/Modal/ModalBody.js +1 -0
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +5 -0
- package/cjs/components/Modal/ModalHeader.js +8 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/ModalSeparator.js +1 -1
- package/cjs/components/Modal/ModalSeparator.js.map +1 -1
- package/cjs/components/Paging/DotsIcon.d.ts +3 -0
- package/cjs/components/Paging/DotsIcon.js +13 -0
- package/cjs/components/Paging/DotsIcon.js.map +1 -0
- package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
- package/cjs/components/Paging/ForwardIcon.js +13 -1
- package/cjs/components/Paging/ForwardIcon.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
- package/cjs/components/Paging/NavigationHelper.js +8 -6
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +13 -2
- package/cjs/components/Paging/Paging.js +120 -50
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.d.ts +24 -1
- package/cjs/components/Paging/Paging.styles.js +151 -22
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/Paging/PagingHelper.d.ts +1 -1
- package/cjs/components/Paging/PagingHelper.js +18 -11
- package/cjs/components/Paging/PagingHelper.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +5 -12
- package/cjs/components/PasswordInput/PasswordInput.js +21 -32
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +4 -1
- package/cjs/components/Radio/Radio.js +7 -4
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/cjs/components/RadioGroup/RadioGroup.js +19 -1
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
- package/cjs/components/RadioGroup/RadioGroup.styles.js +10 -4
- package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
- package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +7 -1
- package/cjs/components/Select/Select.js +13 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.js +4 -2
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
- package/cjs/components/SidePage/SidePage.styles.js +52 -38
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
- package/cjs/components/SidePage/SidePageBody.js +1 -0
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
- package/cjs/components/SidePage/SidePageContainer.js +1 -0
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
- package/cjs/components/SidePage/SidePageFooter.js +1 -0
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
- package/cjs/components/SidePage/SidePageHeader.js +63 -19
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +33 -3
- package/cjs/components/SingleToast/SingleToast.js +58 -3
- package/cjs/components/SingleToast/SingleToast.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +2 -18
- package/cjs/components/Spinner/Spinner.js +2 -32
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +5 -13
- package/cjs/components/Sticky/Sticky.js +12 -18
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +6 -21
- package/cjs/components/Switcher/Switcher.js +11 -20
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
- package/cjs/components/Switcher/Switcher.styles.js +17 -9
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Tabs/Indicator.d.ts +2 -0
- package/cjs/components/Tabs/Indicator.js +1 -0
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +2 -0
- package/cjs/components/Tabs/Tab.js +1 -0
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.d.ts +2 -0
- package/cjs/components/Tabs/Tabs.js +1 -0
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +10 -46
- package/cjs/components/Textarea/Textarea.js +23 -60
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.styles.js +3 -2
- package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.js +2 -13
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +62 -13
- package/cjs/components/Toast/Toast.js +119 -12
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastStatic.d.ts +3 -2
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +8 -16
- package/cjs/components/Toast/ToastView.js +19 -22
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
- package/cjs/components/Toast/ToastView.styles.js +43 -9
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +4 -11
- package/cjs/components/Toggle/Toggle.js +4 -14
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +2 -0
- package/cjs/components/Token/Token.js +1 -0
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +8 -3
- package/cjs/components/TokenInput/TokenInput.js +44 -30
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +12 -3
- package/cjs/components/TokenInput/TokenInputMenu.js +23 -1
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +14 -8
- package/cjs/components/Tooltip/Tooltip.js +102 -17
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js +16 -7
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +27 -9
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/ComponentTable.js +2 -3
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/cjs/internal/CustomComboBox/ComboBoxView.js +50 -7
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
- package/cjs/internal/CustomComboBox/CustomComboBox.js +20 -5
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
- package/cjs/internal/CustomComboBox/getComboBoxTheme.js +10 -7
- package/cjs/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
- package/cjs/internal/DateSelect/DateSelect.js +13 -19
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
- package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
- package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -3
- package/cjs/internal/InputLikeText/InputLikeText.js +13 -14
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
- package/cjs/internal/InputLikeText/InputLikeText.styles.js +12 -4
- package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +235 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +10 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
- package/cjs/internal/Menu/Menu.d.ts +2 -0
- package/cjs/internal/Menu/Menu.js +1 -0
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +43 -60
- package/cjs/internal/Popup/Popup.js +41 -81
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.d.ts +23 -33
- package/cjs/internal/Popup/PopupPin.js +2 -35
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
- package/cjs/internal/Popup/PopupPinNew.js +180 -0
- package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
- package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
- package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
- package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
- package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +20 -16
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/SizesGroup.js +4 -4
- package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.js +4 -4
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
- package/cjs/internal/ZIndex/ZIndex.js +5 -1
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
- package/cjs/internal/themes/BasicTheme.d.ts +125 -20
- package/cjs/internal/themes/BasicTheme.js +172 -25
- package/cjs/internal/themes/BasicTheme.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_2.js +1 -1
- package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_3.js +13 -0
- package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
- package/cjs/internal/themes/DarkTheme5_4.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_4.js +18 -0
- package/cjs/internal/themes/DarkTheme5_4.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_3.js +13 -0
- package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_4.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_4.js +18 -0
- package/cjs/internal/themes/LightTheme5_4.js.map +1 -0
- package/cjs/internal/themes/consts.d.ts +8 -0
- package/cjs/internal/themes/consts.js +8 -0
- package/cjs/internal/themes/consts.js.map +1 -0
- package/cjs/lib/__stories__/Blink.creevey.mts +90 -0
- package/cjs/lib/blink.d.ts +15 -0
- package/cjs/lib/blink.js +65 -0
- package/cjs/lib/blink.js.map +1 -0
- package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
- package/cjs/lib/date/InternalDateGetter.js +8 -1
- package/cjs/lib/date/InternalDateGetter.js.map +1 -1
- package/cjs/lib/delay.mts +3 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +23 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/cjs/lib/forwardRefAndName.d.ts +1 -1
- package/cjs/lib/forwardRefAndName.js +0 -1
- package/cjs/lib/forwardRefAndName.js.map +1 -1
- package/cjs/lib/getMenuPositions.d.ts +21 -1
- package/cjs/lib/getMenuPositions.js +45 -8
- package/cjs/lib/getMenuPositions.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
- package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
- package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/cjs/lib/size/SizeControlContext.d.ts +6 -0
- package/cjs/lib/size/SizeControlContext.js +16 -0
- package/cjs/lib/size/SizeControlContext.js.map +1 -0
- package/cjs/lib/size/SizeDecorator.d.ts +33 -0
- package/cjs/lib/size/SizeDecorator.js +41 -0
- package/cjs/lib/size/SizeDecorator.js.map +1 -0
- package/cjs/lib/size/constants.d.ts +2 -0
- package/cjs/lib/size/constants.js +3 -0
- package/cjs/lib/size/constants.js.map +1 -0
- package/cjs/lib/size/index.d.ts +1 -0
- package/cjs/lib/size/index.js +1 -0
- package/cjs/lib/size/index.js.map +1 -0
- package/cjs/lib/size/useSizeControl.d.ts +2 -0
- package/cjs/lib/size/useSizeControl.js +10 -0
- package/cjs/lib/size/useSizeControl.js.map +1 -0
- package/cjs/lib/theming/ThemeHelpers.d.ts +1 -1
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
- package/cjs/lib/theming/ThemeVersions.js.map +1 -1
- package/cjs/lib/theming/themes/DarkTheme.d.ts +2 -0
- package/cjs/lib/theming/themes/DarkTheme.js +6 -2
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +2 -0
- package/cjs/lib/theming/themes/LightTheme.js +6 -2
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/utils.d.ts +18 -1
- package/cjs/lib/utils.js +40 -4
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/test-setup.d.ts +1 -0
- package/cjs/vitest.config.d.ts +2 -0
- package/components/Autocomplete/Autocomplete/Autocomplete.js +63 -51
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +18 -26
- package/components/Button/Button/Button.js +45 -24
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +4 -1
- package/components/Button/Button.styles/Button.styles.js +79 -61
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +6 -0
- package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
- package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +2 -0
- package/components/Calendar/CalendarDay/CalendarDay.js +9 -2
- package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
- package/components/Calendar/DayCellView/DayCellView.js +6 -10
- package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +2 -0
- package/components/Checkbox/Checkbox/Checkbox.js +12 -24
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +4 -16
- package/components/ComboBox/ComboBox/ComboBox.js +2 -1
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +22 -3
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +13 -36
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/components/CurrencyInput/constants/constants.js +0 -1
- package/components/CurrencyInput/constants/constants.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js +34 -24
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +6 -1
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +1 -32
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +6 -33
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +41 -22
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js +12 -15
- package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +5 -8
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
- package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js +16 -15
- package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js +1 -47
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +2 -47
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/components/FileUploader/FileUploader/FileUploader.js +8 -2
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FxInput/FxInput/FxInput.js +122 -70
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +13 -8
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
- package/components/Gapped/Gapped/Gapped.js +1 -15
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +2 -15
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/components/Group/Group/Group.js +64 -28
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +5 -4
- package/components/Group/Group.styles/Group.styles.js +9 -6
- package/components/Group/Group.styles/Group.styles.js.map +1 -1
- package/components/Group/Group.styles.d.ts +1 -0
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +2 -0
- package/components/Input/Input/Input.js +23 -52
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +6 -5
- package/components/Input/Input.styles/Input.styles.js +9 -13
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +0 -1
- package/components/Input/InputLayout/InputLayout/InputLayout.js +5 -2
- package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +8 -26
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +4 -2
- package/components/Link/Link/Link.js +8 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +2 -0
- package/components/Link/Link.mixins/Link.mixins.js +1 -1
- package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
- package/components/Link/Link.styles/Link.styles.js +1 -1
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Loader/Loader/Loader.js +2 -34
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +7 -36
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
- package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
- package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput/MaskedInput.js +28 -2
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/components/MenuItem/MenuItem/MenuItem.js +1 -12
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +2 -12
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.d.ts +1 -0
- package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
- package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
- package/components/Modal/Modal.styles/Modal.styles.js +32 -29
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +2 -1
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +2 -0
- package/components/Modal/ModalHeader/ModalHeader.js +3 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +5 -0
- package/components/Modal/ModalSeparator/ModalSeparator.js +1 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- package/components/Paging/DotsIcon/DotsIcon.js +14 -0
- package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
- package/components/Paging/DotsIcon/package.json +6 -0
- package/components/Paging/DotsIcon.d.ts +3 -0
- package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
- package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
- package/components/Paging/ForwardIcon.d.ts +3 -0
- package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/NavigationHelper.d.ts +3 -2
- package/components/Paging/Paging/Paging.js +96 -47
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +13 -2
- package/components/Paging/Paging.styles/Paging.styles.js +77 -16
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +24 -1
- package/components/Paging/PagingHelper/PagingHelper.js +16 -8
- package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
- package/components/Paging/PagingHelper.d.ts +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +13 -25
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +5 -12
- package/components/Radio/Radio/Radio.js +7 -7
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +4 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js +23 -17
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +7 -4
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
- package/components/Select/Select/Select.js +17 -15
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +7 -1
- package/components/SidePage/SidePage/SidePage.js +3 -3
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +3 -1
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +2 -0
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +2 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +2 -0
- package/components/SidePage/SidePageHeader/SidePageHeader.js +62 -35
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +12 -2
- package/components/SingleToast/SingleToast/SingleToast.js +37 -12
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +33 -3
- package/components/Spinner/Spinner/Spinner.js +1 -18
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +2 -18
- package/components/Sticky/Sticky/Sticky.js +10 -14
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +5 -13
- package/components/Switcher/Switcher/Switcher.js +19 -16
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +6 -21
- package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -0
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.d.ts +2 -0
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +2 -0
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +2 -0
- package/components/Textarea/Textarea/Textarea.js +19 -52
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +10 -46
- package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
- package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
- package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Toast/Toast/Toast.js +93 -32
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +62 -13
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastStatic.d.ts +3 -2
- package/components/Toast/ToastView/ToastView.js +20 -22
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +8 -16
- package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +4 -0
- package/components/Toggle/Toggle/Toggle.js +11 -20
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +4 -11
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +2 -0
- package/components/TokenInput/TokenInput/TokenInput.js +49 -43
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +8 -3
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +16 -6
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +12 -3
- package/components/Tooltip/Tooltip/Tooltip.js +77 -26
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +14 -8
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js +21 -7
- package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +14 -5
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/internal/ComponentTable/ComponentTable.js +0 -2
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +72 -41
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +13 -7
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
- package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js +5 -3
- package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js.map +1 -1
- package/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +4 -11
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +0 -10
- package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/FocusTrap/FocusTrap.d.ts +2 -0
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +17 -28
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +4 -3
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +7 -4
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +249 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/package.json +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js +8 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/package.json +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +2 -0
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +2 -0
- package/internal/Popup/Popup/Popup.js +23 -69
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +43 -60
- package/internal/Popup/PopupPin/PopupPin.js +1 -34
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +23 -33
- package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
- package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
- package/internal/Popup/PopupPinNew/package.json +6 -0
- package/internal/Popup/PopupPinNew.d.ts +31 -0
- package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
- package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
- package/internal/Popup/PopupPinNew.styles/package.json +6 -0
- package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +2 -3
- package/internal/ThemePlayground/Playground/Playground.js +21 -18
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js +4 -4
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +2 -2
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -4
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +3 -3
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
- package/internal/themes/BasicTheme/BasicTheme.js +185 -30
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +125 -20
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
- package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
- package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
- package/internal/themes/DarkTheme5_3/package.json +6 -0
- package/internal/themes/DarkTheme5_3.d.ts +1 -0
- package/internal/themes/DarkTheme5_4/DarkTheme5_4.js +17 -0
- package/internal/themes/DarkTheme5_4/DarkTheme5_4.js.map +1 -0
- package/internal/themes/DarkTheme5_4/package.json +6 -0
- package/internal/themes/DarkTheme5_4.d.ts +1 -0
- package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
- package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
- package/internal/themes/LightTheme5_3/package.json +6 -0
- package/internal/themes/LightTheme5_3.d.ts +1 -0
- package/internal/themes/LightTheme5_4/LightTheme5_4.js +17 -0
- package/internal/themes/LightTheme5_4/LightTheme5_4.js.map +1 -0
- package/internal/themes/LightTheme5_4/package.json +6 -0
- package/internal/themes/LightTheme5_4.d.ts +1 -0
- package/internal/themes/consts/consts.js +9 -0
- package/internal/themes/consts/consts.js.map +1 -0
- package/internal/themes/consts/package.json +6 -0
- package/internal/themes/consts.d.ts +8 -0
- package/lib/__stories__/Blink.creevey.mts +90 -0
- package/lib/blink/blink.js +63 -0
- package/lib/blink/blink.js.map +1 -0
- package/lib/blink/package.json +6 -0
- package/lib/blink.d.ts +15 -0
- package/lib/date/InternalDateGetter/InternalDateGetter.js +4 -1
- package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
- package/lib/date/InternalDateGetter.d.ts +1 -1
- package/lib/delay.d.mts +1 -0
- package/lib/delay.mts +3 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +12 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
- package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
- package/lib/forwardRefAndName.d.ts +1 -1
- package/lib/getMenuPositions/getMenuPositions.js +33 -4
- package/lib/getMenuPositions/getMenuPositions.js.map +1 -1
- package/lib/getMenuPositions.d.ts +21 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
- package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
- package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
- package/lib/size/SizeControlContext/package.json +6 -0
- package/lib/size/SizeControlContext.d.ts +6 -0
- package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
- package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
- package/lib/size/SizeDecorator/package.json +6 -0
- package/lib/size/SizeDecorator.d.ts +33 -0
- package/lib/size/constants/constants.js +1 -0
- package/lib/size/constants/constants.js.map +1 -0
- package/lib/size/constants/package.json +6 -0
- package/lib/size/constants.d.ts +2 -0
- package/lib/size/index/index.js +1 -0
- package/lib/size/index/index.js.map +1 -0
- package/lib/size/index/package.json +6 -0
- package/lib/size/index.d.ts +1 -0
- package/lib/size/package.json +6 -0
- package/lib/size/useSizeControl/package.json +6 -0
- package/lib/size/useSizeControl/useSizeControl.js +7 -0
- package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
- package/lib/size/useSizeControl.d.ts +2 -0
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/ThemeHelpers.d.ts +1 -1
- package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
- package/lib/theming/ThemeVersions.d.ts +1 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +2 -0
- package/lib/theming/themes/LightTheme/LightTheme.js +5 -1
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +2 -0
- package/lib/utils/utils.js +33 -2
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +18 -1
- package/package.json +19 -36
- package/test-setup.d.ts +1 -0
- package/vitest.config.d.ts +2 -0
- package/cjs/components/Autocomplete/Autocomplete.md +0 -113
- package/cjs/components/Button/Button.md +0 -261
- package/cjs/components/Calendar/Calendar.md +0 -276
- package/cjs/components/Calendar/CalendarDay.md +0 -70
- package/cjs/components/Center/Center.md +0 -26
- package/cjs/components/Checkbox/Checkbox.md +0 -171
- package/cjs/components/ComboBox/ComboBox.md +0 -574
- package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
- package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/cjs/components/DateInput/DateInput.md +0 -111
- package/cjs/components/DatePicker/DatePicker.md +0 -368
- package/cjs/components/Dropdown/Dropdown.md +0 -45
- package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
- package/cjs/components/FileUploader/FileUploader.md +0 -131
- package/cjs/components/FxInput/FxInput.md +0 -31
- package/cjs/components/Gapped/Gapped.md +0 -44
- package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
- package/cjs/components/Group/Group.md +0 -19
- package/cjs/components/Hint/Hint.md +0 -86
- package/cjs/components/Input/Input.md +0 -87
- package/cjs/components/Kebab/Kebab.md +0 -306
- package/cjs/components/Link/Link.md +0 -182
- package/cjs/components/Loader/Loader.md +0 -33
- package/cjs/components/MaskedInput/MaskedInput.md +0 -114
- package/cjs/components/MenuFooter/MenuFooter.md +0 -27
- package/cjs/components/MenuHeader/MenuHeader.md +0 -35
- package/cjs/components/MenuItem/MenuItem.md +0 -139
- package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
- package/cjs/components/MiniModal/MiniModal.md +0 -231
- package/cjs/components/Modal/Modal.md +0 -56
- package/cjs/components/Paging/Paging.md +0 -57
- package/cjs/components/PasswordInput/PasswordInput.md +0 -29
- package/cjs/components/Radio/Radio.md +0 -57
- package/cjs/components/RadioGroup/RadioGroup.md +0 -44
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
- package/cjs/components/Select/Select.md +0 -113
- package/cjs/components/SidePage/SidePage.md +0 -65
- package/cjs/components/SingleToast/SingleToast.md +0 -36
- package/cjs/components/Spinner/Spinner.md +0 -36
- package/cjs/components/Sticky/Sticky.md +0 -28
- package/cjs/components/Switcher/Switcher.md +0 -111
- package/cjs/components/Tabs/Tab.md +0 -73
- package/cjs/components/Tabs/Tabs.md +0 -54
- package/cjs/components/Textarea/Textarea.md +0 -58
- package/cjs/components/Toast/Toast.md +0 -69
- package/cjs/components/Toggle/Toggle.md +0 -110
- package/cjs/components/Token/Token.md +0 -131
- package/cjs/components/TokenInput/TokenInput.md +0 -308
- package/cjs/components/Tooltip/Tooltip.md +0 -322
- package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
- package/cjs/internal/DataTids/DATATIDS.md +0 -12
- package/cjs/internal/DataTids/DataTids.d.ts +0 -12
- package/cjs/internal/DataTids/DataTids.js +0 -50
- package/cjs/internal/DataTids/DataTids.js.map +0 -1
- package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/cjs/internal/DataTids/DataTids.styles.js +0 -42
- package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
- package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/cjs/internal/DataTids/componentsDataTids.js +0 -15
- package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
- package/cjs/internal/ThemePlayground/Playground.md +0 -7
- package/cjs/lib/SSRSafe.d.ts +0 -2
- package/cjs/lib/SSRSafe.js +0 -5
- package/cjs/lib/SSRSafe.js.map +0 -1
- package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
- package/cjs/lib/theming/ThemeContext.md +0 -265
- package/components/Autocomplete/Autocomplete.md +0 -113
- package/components/Button/Button.md +0 -261
- package/components/Calendar/Calendar.md +0 -276
- package/components/Calendar/CalendarDay.md +0 -70
- package/components/Center/Center.md +0 -26
- package/components/Checkbox/Checkbox.md +0 -171
- package/components/ComboBox/ComboBox.md +0 -574
- package/components/CurrencyInput/CurrencyInput.md +0 -39
- package/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/components/DateInput/DateInput.md +0 -111
- package/components/DatePicker/DatePicker.md +0 -368
- package/components/Dropdown/Dropdown.md +0 -45
- package/components/DropdownMenu/DropdownMenu.md +0 -290
- package/components/FileUploader/FileUploader.md +0 -131
- package/components/FxInput/FxInput.md +0 -31
- package/components/Gapped/Gapped.md +0 -44
- package/components/GlobalLoader/GlobalLoader.md +0 -97
- package/components/Group/Group.md +0 -19
- package/components/Hint/Hint.md +0 -86
- package/components/Input/Input.md +0 -87
- package/components/Kebab/Kebab.md +0 -306
- package/components/Link/Link.md +0 -182
- package/components/Loader/Loader.md +0 -33
- package/components/MaskedInput/MaskedInput.md +0 -114
- package/components/MenuFooter/MenuFooter.md +0 -27
- package/components/MenuHeader/MenuHeader.md +0 -35
- package/components/MenuItem/MenuItem.md +0 -139
- package/components/MenuSeparator/MenuSeparator.md +0 -14
- package/components/MiniModal/MiniModal.md +0 -231
- package/components/Modal/Modal.md +0 -56
- package/components/Paging/Paging.md +0 -57
- package/components/PasswordInput/PasswordInput.md +0 -29
- package/components/Radio/Radio.md +0 -57
- package/components/RadioGroup/RadioGroup.md +0 -44
- package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/components/ScrollContainer/ScrollContainer.md +0 -224
- package/components/Select/Select.md +0 -113
- package/components/SidePage/SidePage.md +0 -65
- package/components/SingleToast/SingleToast.md +0 -36
- package/components/Spinner/Spinner.md +0 -36
- package/components/Sticky/Sticky.md +0 -28
- package/components/Switcher/Switcher.md +0 -111
- package/components/Tabs/Tab.md +0 -73
- package/components/Tabs/Tabs.md +0 -54
- package/components/Textarea/Textarea.md +0 -58
- package/components/Toast/Toast.md +0 -69
- package/components/Toggle/Toggle.md +0 -110
- package/components/Token/Token.md +0 -131
- package/components/TokenInput/TokenInput.md +0 -308
- package/components/Tooltip/Tooltip.md +0 -322
- package/components/TooltipMenu/TooltipMenu.md +0 -241
- package/internal/DataTids/DATATIDS.md +0 -12
- package/internal/DataTids/DataTids/DataTids.js +0 -69
- package/internal/DataTids/DataTids/DataTids.js.map +0 -1
- package/internal/DataTids/DataTids/package.json +0 -6
- package/internal/DataTids/DataTids.d.ts +0 -12
- package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
- package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
- package/internal/DataTids/DataTids.styles/package.json +0 -6
- package/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
- package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
- package/internal/DataTids/componentsDataTids/package.json +0 -6
- package/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/internal/ThemePlayground/Playground.md +0 -7
- package/lib/SSRSafe/SSRSafe.js +0 -4
- package/lib/SSRSafe/SSRSafe.js.map +0 -1
- package/lib/SSRSafe/package.json +0 -6
- package/lib/SSRSafe.d.ts +0 -2
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/lib/locale/LOCALECONTEXT.md +0 -222
- package/lib/theming/ThemeContext.md +0 -265
|
@@ -5,8 +5,11 @@ import type { ComboBoxMenuProps } from '../../internal/CustomComboBox';
|
|
|
5
5
|
import type { TokenSize } from '../Token';
|
|
6
6
|
import type { TokenInputMenuAlign, TokenInputProps } from './TokenInput';
|
|
7
7
|
export interface TokenInputMenuProps<T> extends ComboBoxMenuProps<T> {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
/** html-элемент от которого будет позиционировано Menu в случае menuAlign cursor */
|
|
9
|
+
anchorElementForCursor: PopupProps['anchorElement'];
|
|
10
|
+
/** html-элемент от которого будет позиционировано Menu в случае menuAlign left */
|
|
11
|
+
anchorElementRoot: PopupProps['anchorElement'];
|
|
12
|
+
/** Задает ширину выпадающего меню. */
|
|
10
13
|
menuWidth: TokenInputProps<string>['menuWidth'];
|
|
11
14
|
/** Задает выравнивание выпадающего меню. */
|
|
12
15
|
menuAlign: TokenInputMenuAlign;
|
|
@@ -16,15 +19,21 @@ export interface TokenInputMenuProps<T> extends ComboBoxMenuProps<T> {
|
|
|
16
19
|
/** Задает размер контрола. */
|
|
17
20
|
size?: TokenSize;
|
|
18
21
|
}
|
|
19
|
-
|
|
22
|
+
interface TokenInputMenuState {
|
|
23
|
+
forceMenuLeftAlign?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export declare class TokenInputMenu<T = string> extends React.Component<TokenInputMenuProps<T>, TokenInputMenuState> {
|
|
20
26
|
static __KONTUR_REACT_UI__: string;
|
|
21
27
|
static displayName: string;
|
|
28
|
+
state: TokenInputMenuState;
|
|
22
29
|
private theme;
|
|
23
30
|
private menu;
|
|
24
31
|
render(): React.JSX.Element;
|
|
25
32
|
getMenuRef: () => any | null;
|
|
26
33
|
private getPopupMarginSize;
|
|
27
34
|
private renderMain;
|
|
35
|
+
private handleMenuPositionChange;
|
|
28
36
|
private getPopupMargin;
|
|
29
37
|
private menuRef;
|
|
30
38
|
}
|
|
39
|
+
export {};
|
|
@@ -17,6 +17,9 @@ import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
|
17
17
|
import { CloseButtonIcon } from "../../../internal/CloseButtonIcon/CloseButtonIcon";
|
|
18
18
|
import { isInstanceOf } from "../../../lib/isInstanceOf";
|
|
19
19
|
import { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext";
|
|
20
|
+
import { cx } from "../../../lib/theming/Emotion";
|
|
21
|
+
import { isThemeGTE } from "../../../lib/theming/ThemeHelpers";
|
|
22
|
+
import { withSize } from "../../../lib/size/SizeDecorator";
|
|
20
23
|
import { styles } from "../Tooltip.styles";
|
|
21
24
|
var DEFAULT_DELAY = 100;
|
|
22
25
|
export var TooltipDataTids = {
|
|
@@ -24,17 +27,16 @@ export var TooltipDataTids = {
|
|
|
24
27
|
content: 'Tooltip__content',
|
|
25
28
|
crossIcon: 'Tooltip__crossIcon'
|
|
26
29
|
};
|
|
27
|
-
var
|
|
30
|
+
var DefaultPositions = ['right bottom', 'right middle', 'right top', 'top right', 'top center', 'top left', 'left top', 'left middle', 'left bottom', 'bottom left', 'bottom center', 'bottom right'];
|
|
28
31
|
|
|
29
32
|
/**
|
|
30
|
-
* `Tooltip` — это подсказка,
|
|
33
|
+
* `Tooltip` — это подсказка, которая объясняет состояние контрола или даёт контекстную справку.
|
|
31
34
|
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* Для подсказки, всплывающей по наведению используйте Hint.
|
|
35
|
+
* Открывается по клику, фокусом на элемент или по наведению. В отличие от `Hint`, `Tooltip` может содержать
|
|
36
|
+
* изображения, кнопки, ссылки и прочие интерактивные элементы.
|
|
36
37
|
*/
|
|
37
|
-
|
|
38
|
+
|
|
39
|
+
export var Tooltip = rootNode(_class = withSize(_class = (_Tooltip = /*#__PURE__*/function (_React$PureComponent) {
|
|
38
40
|
function Tooltip() {
|
|
39
41
|
var _this;
|
|
40
42
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
@@ -57,7 +59,7 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
57
59
|
return /*#__PURE__*/(
|
|
58
60
|
React.createElement("div", {
|
|
59
61
|
ref: _this.refContent,
|
|
60
|
-
className: styles.tooltipContent(_this.theme),
|
|
62
|
+
className: cx(styles.tooltipContent(_this.theme), _this.sizeVariables.contentStyle),
|
|
61
63
|
"data-tid": TooltipDataTids.content
|
|
62
64
|
}, content, _this.renderCloseButton())
|
|
63
65
|
);
|
|
@@ -67,7 +69,9 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
67
69
|
return (_this$popupRef$curren = _this.popupRef.current) == null ? void 0 : _this$popupRef$curren.anchorElement;
|
|
68
70
|
};
|
|
69
71
|
_this.getPositions = function () {
|
|
70
|
-
return _this.props.allowedPositions
|
|
72
|
+
return _this.props.allowedPositions ? _this.props.allowedPositions.filter(function (item) {
|
|
73
|
+
return DefaultPositions.includes(item);
|
|
74
|
+
}) : DefaultPositions;
|
|
71
75
|
};
|
|
72
76
|
_this.refContent = function (node) {
|
|
73
77
|
_this.contentElement = node;
|
|
@@ -146,16 +150,68 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
146
150
|
}
|
|
147
151
|
_this.close();
|
|
148
152
|
};
|
|
153
|
+
_this.getSizeVariables = function () {
|
|
154
|
+
switch (_this.size) {
|
|
155
|
+
case 'small':
|
|
156
|
+
return {
|
|
157
|
+
closeButtonStyle: styles.closeButtonSmall(_this.theme),
|
|
158
|
+
contentStyle: styles.tooltipContentSmall(_this.theme),
|
|
159
|
+
borderRadius: _this.theme.tooltipBorderRadiusSmall,
|
|
160
|
+
pinSize: _this.theme.tooltipPinSizeSmall,
|
|
161
|
+
pinOffsetX: _this.theme.tooltipPinOffsetXSmall,
|
|
162
|
+
pinOffsetY: _this.theme.tooltipPinOffsetYSmall,
|
|
163
|
+
margin: _this.theme.tooltipMarginSmall
|
|
164
|
+
};
|
|
165
|
+
case 'medium':
|
|
166
|
+
return {
|
|
167
|
+
closeButtonStyle: styles.closeButtonMedium(_this.theme),
|
|
168
|
+
contentStyle: styles.tooltipContentMedium(_this.theme),
|
|
169
|
+
borderRadius: _this.theme.tooltipBorderRadiusMedium,
|
|
170
|
+
pinSize: _this.theme.tooltipPinSizeMedium,
|
|
171
|
+
pinOffsetX: _this.theme.tooltipPinOffsetXMedium,
|
|
172
|
+
pinOffsetY: _this.theme.tooltipPinOffsetYMedium,
|
|
173
|
+
margin: _this.theme.tooltipMarginMedium
|
|
174
|
+
};
|
|
175
|
+
case 'large':
|
|
176
|
+
return {
|
|
177
|
+
closeButtonStyle: styles.closeButtonLarge(_this.theme),
|
|
178
|
+
contentStyle: styles.tooltipContentLarge(_this.theme),
|
|
179
|
+
borderRadius: _this.theme.tooltipBorderRadiusLarge,
|
|
180
|
+
pinSize: _this.theme.tooltipPinSizeLarge,
|
|
181
|
+
pinOffsetX: _this.theme.tooltipPinOffsetXLarge,
|
|
182
|
+
pinOffsetY: _this.theme.tooltipPinOffsetYLarge,
|
|
183
|
+
margin: _this.theme.tooltipMarginLarge
|
|
184
|
+
};
|
|
185
|
+
default:
|
|
186
|
+
console.error("Can't get size variables: invalid value in size prop '" + _this.size + "'. Returning default");
|
|
187
|
+
return {
|
|
188
|
+
closeButtonStyle: styles.closeButtonSmall(_this.theme),
|
|
189
|
+
contentStyle: styles.tooltipContentSmall(_this.theme),
|
|
190
|
+
borderRadius: _this.theme.tooltipBorderRadiusSmall,
|
|
191
|
+
pinSize: _this.theme.tooltipPinSizeSmall,
|
|
192
|
+
pinOffsetX: _this.theme.tooltipPinOffsetXSmall,
|
|
193
|
+
pinOffsetY: _this.theme.tooltipPinOffsetYSmall,
|
|
194
|
+
margin: _this.theme.tooltipMarginSmall
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
};
|
|
149
198
|
return _this;
|
|
150
199
|
}
|
|
151
200
|
_inheritsLoose(Tooltip, _React$PureComponent);
|
|
152
201
|
var _proto = Tooltip.prototype;
|
|
202
|
+
_proto.validateProps = function validateProps(props) {
|
|
203
|
+
warning(props.children || props.anchorElement, "[Tooltip]: you must provide either 'children' or 'anchorElement' prop for Tooltip to work properly");
|
|
204
|
+
};
|
|
153
205
|
_proto.getAllowedPositions = function getAllowedPositions() {
|
|
154
|
-
return this.props.allowedPositions ? this.props.allowedPositions :
|
|
206
|
+
return this.props.allowedPositions ? this.props.allowedPositions : DefaultPositions;
|
|
207
|
+
};
|
|
208
|
+
_proto.componentDidMount = function componentDidMount() {
|
|
209
|
+
this.validateProps(this.getProps());
|
|
155
210
|
};
|
|
156
211
|
_proto.componentDidUpdate = function componentDidUpdate() {
|
|
157
212
|
var _this$getProps = this.getProps(),
|
|
158
213
|
trigger = _this$getProps.trigger;
|
|
214
|
+
this.validateProps(this.getProps());
|
|
159
215
|
if (trigger === 'closed' && this.state.opened) {
|
|
160
216
|
this.close();
|
|
161
217
|
}
|
|
@@ -169,15 +225,16 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
169
225
|
_this2.featureFlags = getFullReactUIFlagsContext(flags);
|
|
170
226
|
return /*#__PURE__*/React.createElement(ThemeContext.Consumer, null, function (theme) {
|
|
171
227
|
_this2.theme = theme;
|
|
228
|
+
_this2.sizeVariables = _this2.getSizeVariables();
|
|
172
229
|
return /*#__PURE__*/React.createElement(ThemeContext.Provider, {
|
|
173
230
|
value: ThemeFactory.create({
|
|
174
|
-
|
|
231
|
+
popupBackground: theme.tooltipBg,
|
|
175
232
|
popupBorder: theme.tooltipBorder,
|
|
176
|
-
popupBorderRadius:
|
|
177
|
-
popupPinSize:
|
|
178
|
-
popupPinOffsetX:
|
|
179
|
-
popupPinOffsetY:
|
|
180
|
-
|
|
233
|
+
popupBorderRadius: _this2.sizeVariables.borderRadius,
|
|
234
|
+
popupPinSize: _this2.sizeVariables.pinSize,
|
|
235
|
+
popupPinOffsetX: _this2.sizeVariables.pinOffsetX,
|
|
236
|
+
popupPinOffsetY: _this2.sizeVariables.pinOffsetY,
|
|
237
|
+
popupMargin: _this2.sizeVariables.margin
|
|
181
238
|
}, theme)
|
|
182
239
|
}, _this2.renderMain());
|
|
183
240
|
});
|
|
@@ -195,7 +252,7 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
195
252
|
colorHover: this.theme.tooltipCloseBtnHoverColor
|
|
196
253
|
});
|
|
197
254
|
return /*#__PURE__*/React.createElement("div", {
|
|
198
|
-
className: styles.
|
|
255
|
+
className: cx(styles.closeButton(this.theme), this.sizeVariables.closeButtonStyle),
|
|
199
256
|
onClick: this.handleCloseButtonClick,
|
|
200
257
|
"data-tid": TooltipDataTids.crossIcon
|
|
201
258
|
}, icon);
|
|
@@ -256,7 +313,7 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
256
313
|
maxWidth: "none",
|
|
257
314
|
opened: this.state.opened,
|
|
258
315
|
disableAnimations: disableAnimations,
|
|
259
|
-
positions: this.getPositions(),
|
|
316
|
+
positions: isThemeGTE(this.theme, '5.4') ? this.getPositions() : this.props.allowedPositions,
|
|
260
317
|
pos: this.props.pos,
|
|
261
318
|
ignoreHover: trigger === 'hoverAnchor',
|
|
262
319
|
onOpen: this.props.onOpen,
|
|
@@ -354,15 +411,9 @@ export var Tooltip = rootNode(_class = (_Tooltip = /*#__PURE__*/function (_React
|
|
|
354
411
|
return true;
|
|
355
412
|
};
|
|
356
413
|
return Tooltip;
|
|
357
|
-
}(React.PureComponent), _Tooltip.__KONTUR_REACT_UI__ = 'Tooltip', _Tooltip.displayName = 'Tooltip', _Tooltip.
|
|
358
|
-
children: function children(props, propName, componentName) {
|
|
359
|
-
var children = props[propName];
|
|
360
|
-
warning(children || props.anchorElement, "[" + componentName + "]: you must provide either 'children' or 'anchorElement' prop for " + componentName + " to work properly");
|
|
361
|
-
warning(!(Array.isArray(children) && props.useWrapper === false), "[" + componentName + "]: you provided multiple children, but useWrapper={false} - forcing wrapper <span/> for positioning to work correctly");
|
|
362
|
-
}
|
|
363
|
-
}, _Tooltip.defaultProps = {
|
|
414
|
+
}(React.PureComponent), _Tooltip.__KONTUR_REACT_UI__ = 'Tooltip', _Tooltip.displayName = 'Tooltip', _Tooltip.defaultProps = {
|
|
364
415
|
trigger: 'hover',
|
|
365
416
|
disableAnimations: isTestEnv,
|
|
366
417
|
useWrapper: false,
|
|
367
418
|
delayBeforeShow: DEFAULT_DELAY
|
|
368
|
-
}, _Tooltip.delay = DEFAULT_DELAY, _Tooltip.triggersWithoutCloseButton = ['hover', 'hoverAnchor', 'focus', 'hover&focus'], _Tooltip)) || _class;
|
|
419
|
+
}, _Tooltip.delay = DEFAULT_DELAY, _Tooltip.triggersWithoutCloseButton = ['hover', 'hoverAnchor', 'focus', 'hover&focus'], _Tooltip)) || _class) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","warning","globalObject","isNullable","ThemeFactory","Popup","RenderLayer","containsTargetOrRenderContainer","ThemeContext","isTestEnv","CommonWrapper","rootNode","createPropsGetter","CloseButtonIcon","isInstanceOf","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","DEFAULT_DELAY","TooltipDataTids","root","content","crossIcon","OldPositions","Tooltip","_class","_Tooltip","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","focused","contentElement","clickedOutside","popupRef","createRef","renderContent","props","render","createElement","ref","refContent","className","tooltipContent","theme","renderCloseButton","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","allowedPositions","node","open","setState","close","handleMouseEnter","event","isHoverAnchor","trigger","target","clearHoverTimeout","hoverTimeout","setTimeout","delayBeforeShow","handleMouseLeave","relatedTarget","delay","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","_inheritsLoose","_proto","prototype","getAllowedPositions","componentDidUpdate","_this$getProps","componentWillUnmount","_this2","Consumer","flags","featureFlags","Provider","value","create","popupMargin","tooltipMargin","popupBorder","tooltipBorder","popupBorderRadius","tooltipBorderRadius","popupPinSize","tooltipPinSize","popupPinOffsetX","tooltipPinOffsetX","popupPinOffsetY","tooltipPinOffsetY","popupBackground","tooltipBg","renderMain","hasCross","closeButton","undefined","triggersWithoutCloseButton","includes","icon","tabbable","side","parseInt","tooltipCloseBtnSide","color","tooltipCloseBtnColor","colorHover","tooltipCloseBtnHoverColor","cross","onClick","show","hide","_this$getPopupAndLaye","getPopupAndLayerProps","popupProps","_this$getPopupAndLaye2","layerProps","active","children","popup","renderPopup","_extends","_this$getProps2","disableAnimations","rootNodeRef","setRootNode","hasPin","hasShadow","maxWidth","positions","pos","ignoreHover","onOpen","onClose","tryPreserveFirstRenderedPosition","withoutMobile","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onFocus","onBlur","Error","clearTimeout","Element","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","propName","componentName","isArray"],"sources":["Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isNullable } from '../../lib/utils';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { PopupProps, PopupPositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { Popup } from '../../internal/Popup';\nimport type { RenderLayerProps } from '../../internal/RenderLayer';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { MouseEventType } from '../../typings/event-types';\nimport { containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Tooltip.styles';\n\nexport type TooltipTrigger =\n /** Наведение на children и на тултип */\n | 'hover'\n /** Клик на children */\n | 'click'\n /** Фокус на children */\n | 'focus'\n /** Наведение на children и на тултип и фокус на children */\n | 'hover&focus'\n /** Просто открыт */\n | 'opened'\n /** Просто закрыт */\n | 'closed'\n /** Наведение ТОЛЬКО на children, а не на тултип */\n | 'hoverAnchor'\n /** Управление через публичные функции show и hide */\n | 'manual';\n\nexport interface TooltipProps extends CommonProps {\n /** Указывает элемент, относительно которого позиционировать тултип. */\n anchorElement?: HTMLElement;\n /** @ignore */\n children?: React.ReactNode;\n /** Задает HTML-атрибут class. */\n className?: string;\n /** Отображает крестик для закрытия тултипа. По-умолчанию крестик виден, если проп *trigger* не равен `hover` или `focus`. */\n closeButton?: boolean;\n /** Задает функцию, которая возвращает содержимое тултипа. Если функция вернула `null`, то тултип не показывается. */\n render?: Nullable<() => React.ReactNode>;\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPositionsType;\n /** Задает триггер открытия тултипа. */\n trigger?: TooltipTrigger;\n /** Задает хендлер, который вызывается при клике по крестику. */\n onCloseClick?: React.MouseEventHandler<HTMLElement>;\n /** Задает хендлер, который вызывается при клике по крестику или снаружи тултипа. */\n onCloseRequest?: (event?: Event | React.MouseEvent) => void;\n /** Задает хендлер, который вызывается при закрытии тултипа. */\n onClose?: () => void;\n /** Задает хендлер, который вызывается при открытии тултипа. */\n onOpen?: () => void;\n /** Задает список позиций, которые тултип будет занимать.\n * Если положение тултипа в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция.\n * Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPositionsType[];\n /** Отключает анимацию.\n * @default false */\n disableAnimations?: boolean;\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n}\n\nconst DEFAULT_DELAY = 100;\n\nexport interface TooltipState {\n opened: boolean;\n focused: boolean;\n}\n\nexport const TooltipDataTids = {\n root: 'Tooltip__root',\n content: 'Tooltip__content',\n crossIcon: 'Tooltip__crossIcon',\n} as const;\n\nconst OldPositions: PopupPositionsType[] = [\n 'right bottom',\n 'right middle',\n 'right top',\n 'top right',\n 'top center',\n 'top left',\n 'left top',\n 'left middle',\n 'left bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n];\n\ntype DefaultProps = Required<Pick<TooltipProps, 'trigger' | 'disableAnimations' | 'useWrapper' | 'delayBeforeShow'>>;\n\n/**\n * `Tooltip` — это подсказка, которую пользователь открывает сам, кликом по элементу.\n *\n * `Tooltip` используется для коротких поясняющих текстов, если необходимо дать разъяснение к деталям интерфейса, упомянутой информации или помочь с заполнением полей.\n * Если эти подробности не нужны постоянно, но могут помочь пользователю в момент когда он испытывает трудности.\n *\n * Для подсказки, всплывающей по наведению используйте Hint.\n */\n@rootNode\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Tooltip';\n public static displayName = 'Tooltip';\n\n public static propTypes = {\n children(props: TooltipProps, propName: keyof TooltipProps, componentName: string) {\n const children = props[propName];\n warning(\n children || props.anchorElement,\n `[${componentName}]: you must provide either 'children' or 'anchorElement' prop for ${componentName} to work properly`,\n );\n warning(\n !(Array.isArray(children) && props.useWrapper === false),\n `[${componentName}]: you provided multiple children, but useWrapper={false} - forcing wrapper <span/> for positioning to work correctly`,\n );\n },\n };\n\n public static defaultProps: DefaultProps = {\n trigger: 'hover',\n disableAnimations: isTestEnv,\n useWrapper: false,\n delayBeforeShow: DEFAULT_DELAY,\n };\n\n private getProps = createPropsGetter(Tooltip.defaultProps);\n\n public static delay = DEFAULT_DELAY;\n private static triggersWithoutCloseButton: TooltipTrigger[] = ['hover', 'hoverAnchor', 'focus', 'hover&focus'];\n\n public state: TooltipState = { opened: false, focused: false };\n private theme!: Theme;\n public featureFlags!: ReactUIFeatureFlags;\n private hoverTimeout: SafeTimer;\n private contentElement: Nullable<HTMLElement> = null;\n private clickedOutside = true;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions ? this.props.allowedPositions : OldPositions;\n }\n\n public componentDidUpdate() {\n const { trigger } = this.getProps();\n if (trigger === 'closed' && this.state.opened) {\n this.close();\n }\n }\n\n public componentWillUnmount() {\n this.clearHoverTimeout();\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: theme.tooltipMargin,\n popupBorder: theme.tooltipBorder,\n popupBorderRadius: theme.tooltipBorderRadius,\n popupPinSize: theme.tooltipPinSize,\n popupPinOffsetX: theme.tooltipPinOffsetX,\n popupPinOffsetY: theme.tooltipPinOffsetY,\n popupBackground: theme.tooltipBg,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public renderContent = () => {\n const content = this.props.render ? this.props.render() : null;\n if (isNullable(content)) {\n return null;\n }\n\n return (\n <div ref={this.refContent} className={styles.tooltipContent(this.theme)} data-tid={TooltipDataTids.content}>\n {content}\n {this.renderCloseButton()}\n </div>\n );\n };\n\n public renderCloseButton() {\n const hasCross =\n this.props.closeButton === undefined\n ? !Tooltip.triggersWithoutCloseButton.includes(this.getProps().trigger)\n : this.props.closeButton;\n\n if (!hasCross) {\n return null;\n }\n\n const icon = (\n <CloseButtonIcon\n tabbable={false}\n side={parseInt(this.theme.tooltipCloseBtnSide)}\n color={this.theme.tooltipCloseBtnColor}\n colorHover={this.theme.tooltipCloseBtnHoverColor}\n />\n );\n\n return (\n <div\n className={styles.cross(this.theme)}\n onClick={this.handleCloseButtonClick}\n data-tid={TooltipDataTids.crossIcon}\n >\n {icon}\n </div>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n /**\n * Программно открывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public show() {\n if (this.state.opened) {\n return;\n }\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'show' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.open();\n }\n\n /**\n * Программно закрывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public hide() {\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'hide' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.close();\n }\n\n private renderMain() {\n const props = this.props;\n const content = this.renderContent();\n const { popupProps, layerProps = { active: false } } = this.getPopupAndLayerProps();\n const anchorElement = props.children || props.anchorElement;\n const popup = this.renderPopup(anchorElement, popupProps, content);\n\n return (\n <RenderLayer {...layerProps} getAnchorElement={this.getAnchorElement}>\n {popup}\n </RenderLayer>\n );\n }\n\n private renderPopup(\n anchorElement: React.ReactNode | HTMLElement,\n popupProps: Partial<PopupProps>,\n content: JSX.Element | null,\n ) {\n const { disableAnimations, trigger } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n data-tid={TooltipDataTids.root}\n anchorElement={anchorElement}\n hasPin\n hasShadow\n maxWidth=\"none\"\n opened={this.state.opened}\n disableAnimations={disableAnimations}\n positions={this.getPositions()}\n pos={this.props.pos}\n ignoreHover={trigger === 'hoverAnchor'}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n tryPreserveFirstRenderedPosition\n ref={this.popupRef}\n withoutMobile\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private getPositions = (): PopupPositionsType[] | undefined => {\n return this.props.allowedPositions;\n };\n\n private refContent = (node: HTMLElement | null) => {\n this.contentElement = node;\n };\n\n private getPopupAndLayerProps(): {\n layerProps?: Partial<RenderLayerProps>;\n popupProps: Partial<PopupProps>;\n } {\n const props = this.props;\n const useWrapper = !!props.children && this.getProps().useWrapper;\n const trigger = this.getProps().trigger;\n\n switch (trigger) {\n case 'opened':\n return {\n layerProps: {\n active: true,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n opened: true,\n useWrapper,\n },\n };\n\n case 'closed':\n return {\n popupProps: {\n opened: false,\n useWrapper,\n },\n };\n\n case 'hoverAnchor':\n case 'hover':\n return {\n popupProps: {\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n case 'manual':\n return {\n popupProps: {\n useWrapper,\n },\n };\n case 'click':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onClick: this.handleClick,\n useWrapper,\n },\n };\n\n case 'focus':\n return {\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n useWrapper,\n },\n };\n\n case 'hover&focus':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n\n default:\n throw new Error('Unknown trigger specified: ' + trigger);\n }\n }\n\n private open = () => this.setState({ opened: true });\n\n private close = () => this.setState({ opened: false });\n\n private clearHoverTimeout() {\n if (this.hoverTimeout) {\n globalObject.clearTimeout(this.hoverTimeout);\n this.hoverTimeout = null;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n const isHoverAnchor = this.getProps().trigger === 'hoverAnchor';\n if (isHoverAnchor && event.target === this.contentElement) {\n return;\n }\n\n this.clearHoverTimeout();\n this.hoverTimeout = globalObject.setTimeout(this.open, this.getProps().delayBeforeShow);\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n const trigger = this.getProps().trigger;\n if (\n (trigger === 'hover&focus' && this.state.focused) ||\n (trigger === 'hover' && event.relatedTarget === this.contentElement)\n ) {\n return;\n }\n\n this.clearHoverTimeout();\n\n if (trigger === 'hoverAnchor') {\n this.close();\n } else {\n this.hoverTimeout = globalObject.setTimeout(this.close, Tooltip.delay);\n }\n };\n\n private handleClick = () => {\n this.open();\n };\n\n private handleClickOutsideAnchor = (event: Event) => {\n this.clickedOutside = this.isClickOutsideContent(event);\n if (this.clickedOutside) {\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n this.close();\n }\n };\n\n private isClickOutsideContent(event: Event) {\n if (this.contentElement && isInstanceOf(event.target, globalObject.Element)) {\n return !containsTargetOrRenderContainer(event.target)(this.contentElement);\n }\n\n return true;\n }\n\n private handleFocus = () => {\n this.setState({ focused: true });\n this.open();\n };\n\n private handleBlur = () => {\n const trigger = this.getProps().trigger;\n if (trigger === 'hover&focus' && this.clickedOutside) {\n this.close();\n }\n\n if (trigger === 'focus') {\n this.close();\n }\n\n this.clickedOutside = true;\n this.setState({ focused: false });\n };\n\n private handleCloseButtonClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n\n if (this.props.onCloseClick) {\n this.props.onCloseClick(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n\n this.close();\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","warning","globalObject","isNullable","ThemeFactory","Popup","RenderLayer","containsTargetOrRenderContainer","ThemeContext","isTestEnv","CommonWrapper","rootNode","createPropsGetter","CloseButtonIcon","isInstanceOf","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","cx","isThemeGTE","withSize","styles","DEFAULT_DELAY","TooltipDataTids","root","content","crossIcon","DefaultPositions","Tooltip","_class","_Tooltip","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","focused","contentElement","clickedOutside","popupRef","createRef","renderContent","props","render","createElement","ref","refContent","className","tooltipContent","theme","sizeVariables","contentStyle","renderCloseButton","getAnchorElement","_this$popupRef$curren","current","anchorElement","getPositions","allowedPositions","filter","item","includes","node","open","setState","close","handleMouseEnter","event","isHoverAnchor","trigger","target","clearHoverTimeout","hoverTimeout","setTimeout","delayBeforeShow","handleMouseLeave","relatedTarget","delay","handleClick","handleClickOutsideAnchor","isClickOutsideContent","onCloseRequest","handleFocus","handleBlur","handleCloseButtonClick","stopPropagation","onCloseClick","defaultPrevented","getSizeVariables","size","closeButtonStyle","closeButtonSmall","tooltipContentSmall","borderRadius","tooltipBorderRadiusSmall","pinSize","tooltipPinSizeSmall","pinOffsetX","tooltipPinOffsetXSmall","pinOffsetY","tooltipPinOffsetYSmall","margin","tooltipMarginSmall","closeButtonMedium","tooltipContentMedium","tooltipBorderRadiusMedium","tooltipPinSizeMedium","tooltipPinOffsetXMedium","tooltipPinOffsetYMedium","tooltipMarginMedium","closeButtonLarge","tooltipContentLarge","tooltipBorderRadiusLarge","tooltipPinSizeLarge","tooltipPinOffsetXLarge","tooltipPinOffsetYLarge","tooltipMarginLarge","console","error","_inheritsLoose","_proto","prototype","validateProps","children","getAllowedPositions","componentDidMount","componentDidUpdate","_this$getProps","componentWillUnmount","_this2","Consumer","flags","featureFlags","Provider","value","create","popupBackground","tooltipBg","popupBorder","tooltipBorder","popupBorderRadius","popupPinSize","popupPinOffsetX","popupPinOffsetY","popupMargin","renderMain","hasCross","closeButton","undefined","triggersWithoutCloseButton","icon","tabbable","side","parseInt","tooltipCloseBtnSide","color","tooltipCloseBtnColor","colorHover","tooltipCloseBtnHoverColor","onClick","show","hide","_this$getPopupAndLaye","getPopupAndLayerProps","popupProps","_this$getPopupAndLaye2","layerProps","active","popup","renderPopup","_extends","_this$getProps2","disableAnimations","rootNodeRef","setRootNode","hasPin","hasShadow","maxWidth","positions","pos","ignoreHover","onOpen","onClose","tryPreserveFirstRenderedPosition","withoutMobile","useWrapper","onClickOutside","onMouseEnter","onMouseLeave","onFocus","onBlur","Error","clearTimeout","Element","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport warning from 'warning';\nimport type { SafeTimer } from '@skbkontur/global-object';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { SizeProp } from '../../lib/types/props';\nimport { isNullable } from '../../lib/utils';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport type { PopupProps, PopupPositionsType, ShortPopupPositionsType } from '../../internal/Popup';\nimport { Popup } from '../../internal/Popup';\nimport type { RenderLayerProps } from '../../internal/RenderLayer';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport type { Nullable } from '../../typings/utility-types';\nimport type { MouseEventType } from '../../typings/event-types';\nimport { containsTargetOrRenderContainer } from '../../lib/listenFocusOutside';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport { isThemeGTE } from '../../lib/theming/ThemeHelpers';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport { styles } from './Tooltip.styles';\n\nexport type TooltipTrigger =\n /** Наведение на children и на тултип */\n | 'hover'\n /** Клик на children */\n | 'click'\n /** Фокус на children */\n | 'focus'\n /** Наведение на children и на тултип и фокус на children */\n | 'hover&focus'\n /** Просто открыт */\n | 'opened'\n /** Просто закрыт */\n | 'closed'\n /** Наведение ТОЛЬКО на children, а не на тултип */\n | 'hoverAnchor'\n /** Управление через публичные функции show и hide */\n | 'manual';\n\nexport interface TooltipProps extends CommonProps {\n /** Указывает элемент, относительно которого позиционировать тултип. */\n anchorElement?: HTMLElement;\n\n /** @ignore */\n children?: React.ReactNode;\n\n /** Задает HTML-атрибут class. */\n className?: string;\n\n /** Отображает крестик для закрытия тултипа. По-умолчанию крестик виден, если проп *trigger* не равен `hover` или `focus`. */\n closeButton?: boolean;\n\n /** Задает функцию, которая возвращает содержимое тултипа. Если функция вернула `null`, то тултип не показывается. */\n render?: Nullable<() => React.ReactNode>;\n\n /** Задает приоритетное расположение подсказки относительно текста. */\n pos?: ShortPopupPositionsType | PopupPositionsType;\n\n /** Задает размер тултипа.\n * @default 'small' */\n size?: SizeProp;\n\n /** Задает триггер открытия тултипа. */\n trigger?: TooltipTrigger;\n\n /** Задает хендлер, который вызывается при клике по крестику. */\n onCloseClick?: React.MouseEventHandler<HTMLElement>;\n\n /** Задает хендлер, который вызывается при клике по крестику или снаружи тултипа. */\n onCloseRequest?: (event?: Event | React.MouseEvent) => void;\n\n /** Задает хендлер, который вызывается при закрытии тултипа. */\n onClose?: () => void;\n\n /** Задает хендлер, который вызывается при открытии тултипа. */\n onOpen?: () => void;\n\n /** Задает список позиций, которые тултип будет занимать.\n * Если положение тултипа в определенной позиции будет выходить за край экрана, то будет выбрана следующая позиция.\n * Обязательно должен включать позицию указанную в `pos`. */\n allowedPositions?: PopupPositionsType[];\n\n /** Отключает анимацию.\n * @default false */\n disableAnimations?: boolean;\n\n /** Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`.\n * Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически. */\n useWrapper?: boolean;\n\n /** Устанавливает задержку в миллисекундах до появления лоадера. */\n delayBeforeShow?: number;\n}\n\nconst DEFAULT_DELAY = 100;\n\nexport interface TooltipState {\n opened: boolean;\n focused: boolean;\n}\n\nexport const TooltipDataTids = {\n root: 'Tooltip__root',\n content: 'Tooltip__content',\n crossIcon: 'Tooltip__crossIcon',\n} as const;\n\nconst DefaultPositions: PopupPositionsType[] = [\n 'right bottom',\n 'right middle',\n 'right top',\n 'top right',\n 'top center',\n 'top left',\n 'left top',\n 'left middle',\n 'left bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n];\n\ninterface TooltipSizeVariables {\n closeButtonStyle: string;\n contentStyle: string;\n borderRadius: string;\n pinSize: string;\n pinOffsetX: string;\n pinOffsetY: string;\n margin: string;\n}\n\ntype DefaultProps = Required<Pick<TooltipProps, 'trigger' | 'disableAnimations' | 'useWrapper' | 'delayBeforeShow'>>;\n\n/**\n * `Tooltip` — это подсказка, которая объясняет состояние контрола или даёт контекстную справку.\n *\n * Открывается по клику, фокусом на элемент или по наведению. В отличие от `Hint`, `Tooltip` может содержать\n * изображения, кнопки, ссылки и прочие интерактивные элементы.\n */\n\n@rootNode\n@withSize\nexport class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {\n public static __KONTUR_REACT_UI__ = 'Tooltip';\n public static displayName = 'Tooltip';\n\n public static defaultProps: DefaultProps = {\n trigger: 'hover',\n disableAnimations: isTestEnv,\n useWrapper: false,\n delayBeforeShow: DEFAULT_DELAY,\n };\n\n private getProps = createPropsGetter(Tooltip.defaultProps);\n private validateProps(props: TooltipProps): void {\n warning(\n props.children || props.anchorElement,\n `[Tooltip]: you must provide either 'children' or 'anchorElement' prop for Tooltip to work properly`,\n );\n }\n\n public static delay = DEFAULT_DELAY;\n private static triggersWithoutCloseButton: TooltipTrigger[] = ['hover', 'hoverAnchor', 'focus', 'hover&focus'];\n\n public state: TooltipState = { opened: false, focused: false };\n private theme!: Theme;\n private size!: SizeProp;\n private sizeVariables!: TooltipSizeVariables;\n public featureFlags!: ReactUIFeatureFlags;\n private hoverTimeout: SafeTimer;\n private contentElement: Nullable<HTMLElement> = null;\n private clickedOutside = true;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n private popupRef = React.createRef<Popup>();\n\n public getAllowedPositions() {\n return this.props.allowedPositions ? this.props.allowedPositions : DefaultPositions;\n }\n\n public componentDidMount(): void {\n this.validateProps(this.getProps());\n }\n\n public componentDidUpdate() {\n const { trigger } = this.getProps();\n\n this.validateProps(this.getProps());\n if (trigger === 'closed' && this.state.opened) {\n this.close();\n }\n }\n\n public componentWillUnmount() {\n this.clearHoverTimeout();\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n this.sizeVariables = this.getSizeVariables();\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupBackground: theme.tooltipBg,\n popupBorder: theme.tooltipBorder,\n popupBorderRadius: this.sizeVariables.borderRadius,\n popupPinSize: this.sizeVariables.pinSize,\n popupPinOffsetX: this.sizeVariables.pinOffsetX,\n popupPinOffsetY: this.sizeVariables.pinOffsetY,\n popupMargin: this.sizeVariables.margin,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n public renderContent = () => {\n const content = this.props.render ? this.props.render() : null;\n if (isNullable(content)) {\n return null;\n }\n\n return (\n <div\n ref={this.refContent}\n className={cx(styles.tooltipContent(this.theme), this.sizeVariables.contentStyle)}\n data-tid={TooltipDataTids.content}\n >\n {content}\n {this.renderCloseButton()}\n </div>\n );\n };\n\n public renderCloseButton() {\n const hasCross =\n this.props.closeButton === undefined\n ? !Tooltip.triggersWithoutCloseButton.includes(this.getProps().trigger)\n : this.props.closeButton;\n\n if (!hasCross) {\n return null;\n }\n\n const icon = (\n <CloseButtonIcon\n tabbable={false}\n side={parseInt(this.theme.tooltipCloseBtnSide)}\n color={this.theme.tooltipCloseBtnColor}\n colorHover={this.theme.tooltipCloseBtnHoverColor}\n />\n );\n\n return (\n <div\n className={cx(styles.closeButton(this.theme), this.sizeVariables.closeButtonStyle)}\n onClick={this.handleCloseButtonClick}\n data-tid={TooltipDataTids.crossIcon}\n >\n {icon}\n </div>\n );\n }\n\n public getAnchorElement = (): Nullable<Element> => {\n return this.popupRef.current?.anchorElement;\n };\n\n /**\n * Программно открывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public show() {\n if (this.state.opened) {\n return;\n }\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'show' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.open();\n }\n\n /**\n * Программно закрывает тултип.\n * <p>Не действует если проп *trigger* `'opened'` или `'closed'`.</p>\n * @public\n */\n public hide() {\n const trigger = this.getProps().trigger;\n if (trigger === 'opened' || trigger === 'closed') {\n warning(true, `Function 'hide' is not supported with trigger specified '${trigger}'`);\n return;\n }\n this.close();\n }\n\n private renderMain() {\n const props = this.props;\n const content = this.renderContent();\n const { popupProps, layerProps = { active: false } } = this.getPopupAndLayerProps();\n const anchorElement = props.children || props.anchorElement;\n const popup = this.renderPopup(anchorElement, popupProps, content);\n\n return (\n <RenderLayer {...layerProps} getAnchorElement={this.getAnchorElement}>\n {popup}\n </RenderLayer>\n );\n }\n\n private renderPopup(\n anchorElement: React.ReactNode | HTMLElement,\n popupProps: Partial<PopupProps>,\n content: JSX.Element | null,\n ) {\n const { disableAnimations, trigger } = this.getProps();\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <Popup\n data-tid={TooltipDataTids.root}\n anchorElement={anchorElement}\n hasPin\n hasShadow\n maxWidth=\"none\"\n opened={this.state.opened}\n disableAnimations={disableAnimations}\n positions={isThemeGTE(this.theme, '5.4') ? this.getPositions() : this.props.allowedPositions}\n pos={this.props.pos}\n ignoreHover={trigger === 'hoverAnchor'}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n tryPreserveFirstRenderedPosition\n ref={this.popupRef}\n withoutMobile\n {...popupProps}\n >\n {content}\n </Popup>\n </CommonWrapper>\n );\n }\n\n private getPositions = (): PopupPositionsType[] =>\n this.props.allowedPositions\n ? this.props.allowedPositions.filter((item) => DefaultPositions.includes(item))\n : DefaultPositions;\n\n private refContent = (node: HTMLElement | null) => {\n this.contentElement = node;\n };\n\n private getPopupAndLayerProps(): {\n layerProps?: Partial<RenderLayerProps>;\n popupProps: Partial<PopupProps>;\n } {\n const props = this.props;\n const useWrapper = !!props.children && this.getProps().useWrapper;\n const trigger = this.getProps().trigger;\n\n switch (trigger) {\n case 'opened':\n return {\n layerProps: {\n active: true,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n opened: true,\n useWrapper,\n },\n };\n\n case 'closed':\n return {\n popupProps: {\n opened: false,\n useWrapper,\n },\n };\n\n case 'hoverAnchor':\n case 'hover':\n return {\n popupProps: {\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n case 'manual':\n return {\n popupProps: {\n useWrapper,\n },\n };\n case 'click':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onClick: this.handleClick,\n useWrapper,\n },\n };\n\n case 'focus':\n return {\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n useWrapper,\n },\n };\n\n case 'hover&focus':\n return {\n layerProps: {\n active: this.state.opened,\n onClickOutside: this.handleClickOutsideAnchor,\n },\n popupProps: {\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n useWrapper,\n },\n };\n\n default:\n throw new Error('Unknown trigger specified: ' + trigger);\n }\n }\n\n private open = () => this.setState({ opened: true });\n\n private close = () => this.setState({ opened: false });\n\n private clearHoverTimeout() {\n if (this.hoverTimeout) {\n globalObject.clearTimeout(this.hoverTimeout);\n this.hoverTimeout = null;\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n const isHoverAnchor = this.getProps().trigger === 'hoverAnchor';\n if (isHoverAnchor && event.target === this.contentElement) {\n return;\n }\n\n this.clearHoverTimeout();\n this.hoverTimeout = globalObject.setTimeout(this.open, this.getProps().delayBeforeShow);\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n const trigger = this.getProps().trigger;\n if (\n (trigger === 'hover&focus' && this.state.focused) ||\n (trigger === 'hover' && event.relatedTarget === this.contentElement)\n ) {\n return;\n }\n\n this.clearHoverTimeout();\n\n if (trigger === 'hoverAnchor') {\n this.close();\n } else {\n this.hoverTimeout = globalObject.setTimeout(this.close, Tooltip.delay);\n }\n };\n\n private handleClick = () => {\n this.open();\n };\n\n private handleClickOutsideAnchor = (event: Event) => {\n this.clickedOutside = this.isClickOutsideContent(event);\n if (this.clickedOutside) {\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n this.close();\n }\n };\n\n private isClickOutsideContent(event: Event) {\n if (this.contentElement && isInstanceOf(event.target, globalObject.Element)) {\n return !containsTargetOrRenderContainer(event.target)(this.contentElement);\n }\n\n return true;\n }\n\n private handleFocus = () => {\n this.setState({ focused: true });\n this.open();\n };\n\n private handleBlur = () => {\n const trigger = this.getProps().trigger;\n if (trigger === 'hover&focus' && this.clickedOutside) {\n this.close();\n }\n\n if (trigger === 'focus') {\n this.close();\n }\n\n this.clickedOutside = true;\n this.setState({ focused: false });\n };\n\n private handleCloseButtonClick = (event: React.MouseEvent<HTMLElement>) => {\n event.stopPropagation();\n\n if (this.props.onCloseClick) {\n this.props.onCloseClick(event);\n }\n\n if (event.defaultPrevented) {\n return;\n }\n\n if (this.props.onCloseRequest) {\n this.props.onCloseRequest(event);\n }\n\n this.close();\n };\n\n private getSizeVariables = (): TooltipSizeVariables => {\n switch (this.size) {\n case 'small':\n return {\n closeButtonStyle: styles.closeButtonSmall(this.theme),\n contentStyle: styles.tooltipContentSmall(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusSmall,\n pinSize: this.theme.tooltipPinSizeSmall,\n pinOffsetX: this.theme.tooltipPinOffsetXSmall,\n pinOffsetY: this.theme.tooltipPinOffsetYSmall,\n margin: this.theme.tooltipMarginSmall,\n };\n case 'medium':\n return {\n closeButtonStyle: styles.closeButtonMedium(this.theme),\n contentStyle: styles.tooltipContentMedium(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusMedium,\n pinSize: this.theme.tooltipPinSizeMedium,\n pinOffsetX: this.theme.tooltipPinOffsetXMedium,\n pinOffsetY: this.theme.tooltipPinOffsetYMedium,\n margin: this.theme.tooltipMarginMedium,\n };\n case 'large':\n return {\n closeButtonStyle: styles.closeButtonLarge(this.theme),\n contentStyle: styles.tooltipContentLarge(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusLarge,\n pinSize: this.theme.tooltipPinSizeLarge,\n pinOffsetX: this.theme.tooltipPinOffsetXLarge,\n pinOffsetY: this.theme.tooltipPinOffsetYLarge,\n margin: this.theme.tooltipMarginLarge,\n };\n default:\n console.error(`Can't get size variables: invalid value in size prop '${this.size}'. Returning default`);\n return {\n closeButtonStyle: styles.closeButtonSmall(this.theme),\n contentStyle: styles.tooltipContentSmall(this.theme),\n borderRadius: this.theme.tooltipBorderRadiusSmall,\n pinSize: this.theme.tooltipPinSizeSmall,\n pinOffsetX: this.theme.tooltipPinOffsetXSmall,\n pinOffsetY: this.theme.tooltipPinOffsetYSmall,\n margin: this.theme.tooltipMarginSmall,\n };\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { SizeProp } from '../../lib/types/props';
|
|
2
3
|
import type { PopupPositionsType, ShortPopupPositionsType } from '../../internal/Popup';
|
|
3
4
|
import type { Nullable } from '../../typings/utility-types';
|
|
4
5
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
6
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
5
7
|
import type { InstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';
|
|
6
8
|
import type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';
|
|
7
9
|
export type TooltipTrigger =
|
|
@@ -34,6 +36,9 @@ export interface TooltipProps extends CommonProps {
|
|
|
34
36
|
render?: Nullable<() => React.ReactNode>;
|
|
35
37
|
/** Задает приоритетное расположение подсказки относительно текста. */
|
|
36
38
|
pos?: ShortPopupPositionsType | PopupPositionsType;
|
|
39
|
+
/** Задает размер тултипа.
|
|
40
|
+
* @default 'small' */
|
|
41
|
+
size?: SizeProp;
|
|
37
42
|
/** Задает триггер открытия тултипа. */
|
|
38
43
|
trigger?: TooltipTrigger;
|
|
39
44
|
/** Задает хендлер, который вызывается при клике по крестику. */
|
|
@@ -69,32 +74,32 @@ export declare const TooltipDataTids: {
|
|
|
69
74
|
};
|
|
70
75
|
type DefaultProps = Required<Pick<TooltipProps, 'trigger' | 'disableAnimations' | 'useWrapper' | 'delayBeforeShow'>>;
|
|
71
76
|
/**
|
|
72
|
-
* `Tooltip` — это подсказка,
|
|
77
|
+
* `Tooltip` — это подсказка, которая объясняет состояние контрола или даёт контекстную справку.
|
|
73
78
|
*
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
* Для подсказки, всплывающей по наведению используйте Hint.
|
|
79
|
+
* Открывается по клику, фокусом на элемент или по наведению. В отличие от `Hint`, `Tooltip` может содержать
|
|
80
|
+
* изображения, кнопки, ссылки и прочие интерактивные элементы.
|
|
78
81
|
*/
|
|
79
82
|
export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipState> implements InstanceWithAnchorElement {
|
|
80
83
|
static __KONTUR_REACT_UI__: string;
|
|
81
84
|
static displayName: string;
|
|
82
|
-
static propTypes: {
|
|
83
|
-
children(props: TooltipProps, propName: keyof TooltipProps, componentName: string): void;
|
|
84
|
-
};
|
|
85
85
|
static defaultProps: DefaultProps;
|
|
86
86
|
private getProps;
|
|
87
|
+
private validateProps;
|
|
87
88
|
static delay: number;
|
|
88
89
|
private static triggersWithoutCloseButton;
|
|
89
90
|
state: TooltipState;
|
|
90
91
|
private theme;
|
|
92
|
+
private size;
|
|
93
|
+
private sizeVariables;
|
|
91
94
|
featureFlags: ReactUIFeatureFlags;
|
|
92
95
|
private hoverTimeout;
|
|
93
96
|
private contentElement;
|
|
94
97
|
private clickedOutside;
|
|
98
|
+
getRootNode: TGetRootNode;
|
|
95
99
|
private setRootNode;
|
|
96
100
|
private popupRef;
|
|
97
101
|
getAllowedPositions(): string[];
|
|
102
|
+
componentDidMount(): void;
|
|
98
103
|
componentDidUpdate(): void;
|
|
99
104
|
componentWillUnmount(): void;
|
|
100
105
|
render(): React.JSX.Element;
|
|
@@ -129,5 +134,6 @@ export declare class Tooltip extends React.PureComponent<TooltipProps, TooltipSt
|
|
|
129
134
|
private handleFocus;
|
|
130
135
|
private handleBlur;
|
|
131
136
|
private handleCloseButtonClick;
|
|
137
|
+
private getSizeVariables;
|
|
132
138
|
}
|
|
133
139
|
export {};
|
|
@@ -1,11 +1,29 @@
|
|
|
1
1
|
import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTemplateLiteralLoose";
|
|
2
|
-
var _templateObject, _templateObject2;
|
|
2
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
|
3
3
|
import { css, memoizeStyle } from "../../../lib/theming/Emotion";
|
|
4
4
|
export var styles = memoizeStyle({
|
|
5
|
-
|
|
6
|
-
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n
|
|
5
|
+
closeButton: function closeButton(t) {
|
|
6
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n position: absolute;\n box-sizing: content-box;\n right: 0;\n top: 0;\n width: ", ";\n height: ", ";\n color: ", ";\n cursor: pointer;\n line-height: 0;\n\n &:hover {\n color: ", ";\n }\n "])), t.tooltipCloseBtnSide, t.tooltipCloseBtnSide, t.tooltipCloseBtnColor, t.tooltipCloseBtnHoverColor);
|
|
7
|
+
},
|
|
8
|
+
closeButtonSmall: function closeButtonSmall(t) {
|
|
9
|
+
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n padding: ", ";\n "])), t.tooltipCloseBtnPaddingSmall);
|
|
10
|
+
},
|
|
11
|
+
closeButtonMedium: function closeButtonMedium(t) {
|
|
12
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n padding: ", ";\n "])), t.tooltipCloseBtnPaddingMedium);
|
|
13
|
+
},
|
|
14
|
+
closeButtonLarge: function closeButtonLarge(t) {
|
|
15
|
+
return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n padding: ", ";\n "])), t.tooltipCloseBtnPaddingLarge);
|
|
7
16
|
},
|
|
8
17
|
tooltipContent: function tooltipContent(t) {
|
|
9
|
-
return css(
|
|
18
|
+
return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n position: relative;\n color: ", ";\n "])), t.tooltipTextColor);
|
|
19
|
+
},
|
|
20
|
+
tooltipContentSmall: function tooltipContentSmall(t) {
|
|
21
|
+
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n padding: ", " ", ";\n font-size: ", ";\n line-height: ", ";\n "])), t.tooltipPaddingYSmall, t.tooltipPaddingXSmall, t.tooltipFontSizeSmall, t.tooltipLineHeightSmall);
|
|
22
|
+
},
|
|
23
|
+
tooltipContentMedium: function tooltipContentMedium(t) {
|
|
24
|
+
return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n padding: ", " ", ";\n font-size: ", ";\n line-height: ", ";\n "])), t.tooltipPaddingYMedium, t.tooltipPaddingXMedium, t.tooltipFontSizeMedium, t.tooltipLineHeightMedium);
|
|
25
|
+
},
|
|
26
|
+
tooltipContentLarge: function tooltipContentLarge(t) {
|
|
27
|
+
return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n padding: ", " ", ";\n font-size: ", ";\n line-height: ", ";\n "])), t.tooltipPaddingYLarge, t.tooltipPaddingXLarge, t.tooltipFontSizeLarge, t.tooltipLineHeightLarge);
|
|
10
28
|
}
|
|
11
29
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["css","memoizeStyle","styles","
|
|
1
|
+
{"version":3,"names":["css","memoizeStyle","styles","closeButton","t","_templateObject","_taggedTemplateLiteralLoose","tooltipCloseBtnSide","tooltipCloseBtnColor","tooltipCloseBtnHoverColor","closeButtonSmall","_templateObject2","tooltipCloseBtnPaddingSmall","closeButtonMedium","_templateObject3","tooltipCloseBtnPaddingMedium","closeButtonLarge","_templateObject4","tooltipCloseBtnPaddingLarge","tooltipContent","_templateObject5","tooltipTextColor","tooltipContentSmall","_templateObject6","tooltipPaddingYSmall","tooltipPaddingXSmall","tooltipFontSizeSmall","tooltipLineHeightSmall","tooltipContentMedium","_templateObject7","tooltipPaddingYMedium","tooltipPaddingXMedium","tooltipFontSizeMedium","tooltipLineHeightMedium","tooltipContentLarge","_templateObject8","tooltipPaddingYLarge","tooltipPaddingXLarge","tooltipFontSizeLarge","tooltipLineHeightLarge"],"sources":["Tooltip.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n closeButton(t: Theme) {\n return css`\n position: absolute;\n box-sizing: content-box;\n right: 0;\n top: 0;\n width: ${t.tooltipCloseBtnSide};\n height: ${t.tooltipCloseBtnSide};\n color: ${t.tooltipCloseBtnColor};\n cursor: pointer;\n line-height: 0;\n\n &:hover {\n color: ${t.tooltipCloseBtnHoverColor};\n }\n `;\n },\n\n closeButtonSmall(t: Theme) {\n return css`\n padding: ${t.tooltipCloseBtnPaddingSmall};\n `;\n },\n\n closeButtonMedium(t: Theme) {\n return css`\n padding: ${t.tooltipCloseBtnPaddingMedium};\n `;\n },\n\n closeButtonLarge(t: Theme) {\n return css`\n padding: ${t.tooltipCloseBtnPaddingLarge};\n `;\n },\n\n tooltipContent(t: Theme) {\n return css`\n position: relative;\n color: ${t.tooltipTextColor};\n `;\n },\n\n tooltipContentSmall(t: Theme) {\n return css`\n padding: ${t.tooltipPaddingYSmall} ${t.tooltipPaddingXSmall};\n font-size: ${t.tooltipFontSizeSmall};\n line-height: ${t.tooltipLineHeightSmall};\n `;\n },\n\n tooltipContentMedium(t: Theme) {\n return css`\n padding: ${t.tooltipPaddingYMedium} ${t.tooltipPaddingXMedium};\n font-size: ${t.tooltipFontSizeMedium};\n line-height: ${t.tooltipLineHeightMedium};\n `;\n },\n\n tooltipContentLarge(t: Theme) {\n return css`\n padding: ${t.tooltipPaddingYLarge} ${t.tooltipPaddingXLarge};\n font-size: ${t.tooltipFontSizeLarge};\n line-height: ${t.tooltipLineHeightLarge};\n `;\n },\n});\n"],"mappings":"kPAAA,SAASA,GAAG,EAAEC,YAAY,QAAQ,2BAA2B;;;AAG7D,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;EACjCE,WAAW,WAAAA,YAACC,CAAQ,EAAE;IACpB,OAAOJ,GAAG,CAAAK,eAAA,KAAAA,eAAA,GAAAC,2BAAA;;;;;IAKCF,CAAC,CAACG,mBAAmB;IACpBH,CAAC,CAACG,mBAAmB;IACtBH,CAAC,CAACI,oBAAoB;;;;;IAKpBJ,CAAC,CAACK,yBAAyB;;;EAG1C,CAAC;;EAEDC,gBAAgB,WAAAA,iBAACN,CAAQ,EAAE;IACzB,OAAOJ,GAAG,CAAAW,gBAAA,KAAAA,gBAAA,GAAAL,2BAAA;IACGF,CAAC,CAACQ,2BAA2B;;EAE5C,CAAC;;EAEDC,iBAAiB,WAAAA,kBAACT,CAAQ,EAAE;IAC1B,OAAOJ,GAAG,CAAAc,gBAAA,KAAAA,gBAAA,GAAAR,2BAAA;IACGF,CAAC,CAACW,4BAA4B;;EAE7C,CAAC;;EAEDC,gBAAgB,WAAAA,iBAACZ,CAAQ,EAAE;IACzB,OAAOJ,GAAG,CAAAiB,gBAAA,KAAAA,gBAAA,GAAAX,2BAAA;IACGF,CAAC,CAACc,2BAA2B;;EAE5C,CAAC;;EAEDC,cAAc,WAAAA,eAACf,CAAQ,EAAE;IACvB,OAAOJ,GAAG,CAAAoB,gBAAA,KAAAA,gBAAA,GAAAd,2BAAA;;IAECF,CAAC,CAACiB,gBAAgB;;EAE/B,CAAC;;EAEDC,mBAAmB,WAAAA,oBAAClB,CAAQ,EAAE;IAC5B,OAAOJ,GAAG,CAAAuB,gBAAA,KAAAA,gBAAA,GAAAjB,2BAAA;IACGF,CAAC,CAACoB,oBAAoB,EAAIpB,CAAC,CAACqB,oBAAoB;IAC9CrB,CAAC,CAACsB,oBAAoB;IACpBtB,CAAC,CAACuB,sBAAsB;;EAE3C,CAAC;;EAEDC,oBAAoB,WAAAA,qBAACxB,CAAQ,EAAE;IAC7B,OAAOJ,GAAG,CAAA6B,gBAAA,KAAAA,gBAAA,GAAAvB,2BAAA;IACGF,CAAC,CAAC0B,qBAAqB,EAAI1B,CAAC,CAAC2B,qBAAqB;IAChD3B,CAAC,CAAC4B,qBAAqB;IACrB5B,CAAC,CAAC6B,uBAAuB;;EAE5C,CAAC;;EAEDC,mBAAmB,WAAAA,oBAAC9B,CAAQ,EAAE;IAC5B,OAAOJ,GAAG,CAAAmC,gBAAA,KAAAA,gBAAA,GAAA7B,2BAAA;IACGF,CAAC,CAACgC,oBAAoB,EAAIhC,CAAC,CAACiC,oBAAoB;IAC9CjC,CAAC,CAACkC,oBAAoB;IACpBlC,CAAC,CAACmC,sBAAsB;;EAE3C;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type { Theme } from '../../lib/theming/Theme';
|
|
2
2
|
export declare const styles: {
|
|
3
|
-
|
|
3
|
+
closeButton(t: Theme): string;
|
|
4
|
+
closeButtonSmall(t: Theme): string;
|
|
5
|
+
closeButtonMedium(t: Theme): string;
|
|
6
|
+
closeButtonLarge(t: Theme): string;
|
|
4
7
|
tooltipContent(t: Theme): string;
|
|
8
|
+
tooltipContentSmall(t: Theme): string;
|
|
9
|
+
tooltipContentMedium(t: Theme): string;
|
|
10
|
+
tooltipContentLarge(t: Theme): string;
|
|
5
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","ThemeFactory","ThemeContext","PopupMenu","isProductionEnv","isTestEnv","CommonWrapper","rootNode","createPropsGetter","TooltipMenuDataTids","root","TooltipMenu","_class","_TooltipMenu","_React$Component","props","_this","call","getProps","defaultProps","caption","Error","_inheritsLoose","_proto","prototype","render","_this2","createElement","Consumer","theme","Provider","value","create","popupPinOffsetX","tooltipMenuPinOffsetX","popupPinOffsetY","tooltipMenuPinOffsetY","popupMargin","tooltipMenuMargin","popupPinSize","tooltipMenuPinSize","renderMain","_this$getProps","disableAnimations","_extends","rootNodeRef","setRootNode","menuMaxHeight","menuWidth","header","footer","preventIconsOffset","positions","onOpen","onClose","popupHasPin","children","Component","__KONTUR_REACT_UI__","displayName"],"sources":["TooltipMenu.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport type { MenuItemProps } from '../MenuItem';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { MenuHeaderProps } from '../MenuHeader';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nexport type TooltipMenuChildType = React.ReactElement<MenuItemProps | unknown | MenuHeaderProps>;\n\nexport interface TooltipMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'preventIconsOffset'> {\n /** @ignore */\n children?: TooltipMenuChildType | TooltipMenuChildType[];\n /** Задает максимальную высоту меню. */\n menuMaxHeight?: number | string;\n /** Задает ширину меню. */\n menuWidth?: number | string;\n /** Задает элемент или функцию возвращающую элемент, которые используется вместо `caption`.\n * В случае функции, внутри нее необходимо управлять открытием и закрытием меню. */\n caption: PopupMenuProps['caption'];\n /** Задает элемент, который будет отрендерен в шапке меню.\n * _Примечание_: контрол
|
|
1
|
+
{"version":3,"names":["React","ThemeFactory","ThemeContext","PopupMenu","isProductionEnv","isTestEnv","CommonWrapper","rootNode","createPropsGetter","TooltipMenuDataTids","root","TooltipMenu","_class","_TooltipMenu","_React$Component","props","_this","call","getProps","defaultProps","caption","Error","_inheritsLoose","_proto","prototype","render","_this2","createElement","Consumer","theme","Provider","value","create","popupPinOffsetX","tooltipMenuPinOffsetX","popupPinOffsetY","tooltipMenuPinOffsetY","popupMargin","tooltipMenuMargin","popupPinSize","tooltipMenuPinSize","renderMain","_this$getProps","disableAnimations","_extends","rootNodeRef","setRootNode","menuMaxHeight","menuWidth","header","footer","preventIconsOffset","positions","onOpen","onClose","popupHasPin","children","Component","__KONTUR_REACT_UI__","displayName"],"sources":["TooltipMenu.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { PopupMenuProps } from '../../internal/PopupMenu';\nimport { PopupMenu } from '../../internal/PopupMenu';\nimport type { MenuItemProps } from '../MenuItem';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport type { MenuHeaderProps } from '../MenuHeader';\nimport type { PopupPositionsType } from '../../internal/Popup';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nexport type TooltipMenuChildType = React.ReactElement<MenuItemProps | unknown | MenuHeaderProps>;\n\nexport interface TooltipMenuProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Pick<PopupMenuProps, 'onOpen' | 'onClose' | 'preventIconsOffset'> {\n /** @ignore */\n children?: TooltipMenuChildType | TooltipMenuChildType[];\n /** Задает максимальную высоту меню. */\n menuMaxHeight?: number | string;\n /** Задает ширину меню. */\n menuWidth?: number | string;\n /** Задает элемент или функцию возвращающую элемент, которые используется вместо `caption`.\n * В случае функции, внутри нее необходимо управлять открытием и закрытием меню. */\n caption: PopupMenuProps['caption'];\n /** Задает элемент, который будет отрендерен в шапке меню.\n * _Примечание_: контрол MenuHeader передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`. */\n header?: React.ReactNode;\n /** Задает элемент, который будет отрендерен в подвале меню.\n * Перед элементом переданным в `footer` будет отрендерен MenuSeparator. */\n footer?: React.ReactNode;\n /** Определяет список позиций, доступных для расположения выпадашки относительно caption.\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка. */\n positions?: PopupPositionsType[];\n /** Отключает анимацию. */\n disableAnimations?: boolean;\n}\n\nexport const TooltipMenuDataTids = {\n root: 'TooltipMenu__root',\n} as const;\n\ntype DefaultProps = Required<Pick<TooltipMenuProps, 'disableAnimations'>>;\n\n/**\n * Меню `TooltipMenu` раскрывается по клику на переданный в `caption` элемент.\n *\n * Положение меню задаётся с помощью массива `positions` и работает так:\n * первое значение в массиве - дефолтная позиция, меню раскроется на этой позиции, если оно не будет выходить за пределы `viewport`,\n * если раскрыться в дефолтной позиции не получится - будет использована следующая позиция, и так далее, пока не будет достигнут конец массива. Если все положения из списка будут выходить за пределы `viewport`, в качестве положения будет использовано первое значение в массиве.\n *\n * Если меню должно раскрываться только в одну сторону - массив `positions` должен содержать только один элемент: сторону, в которую должно открываться меню.\n *\n * Если массив `positions` не передан (или передан пустой массив), будут использованы всевозможные значения.\n */\n@rootNode\nexport class TooltipMenu extends React.Component<TooltipMenuProps> {\n public static __KONTUR_REACT_UI__ = 'TooltipMenu';\n public static displayName = 'TooltipMenu';\n\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public static defaultProps: DefaultProps = {\n disableAnimations: isTestEnv,\n };\n\n private getProps = createPropsGetter(TooltipMenu.defaultProps);\n\n constructor(props: TooltipMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupPinOffsetX: theme.tooltipMenuPinOffsetX,\n popupPinOffsetY: theme.tooltipMenuPinOffsetY,\n popupMargin: theme.tooltipMenuMargin,\n popupPinSize: theme.tooltipMenuPinSize,\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n\n const { disableAnimations } = this.getProps();\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n aria-label={this.props['aria-label']}\n data-tid={TooltipMenuDataTids.root}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n caption={this.props.caption}\n header={this.props.header}\n footer={this.props.footer}\n preventIconsOffset={this.props.preventIconsOffset}\n positions={this.props.positions}\n onOpen={this.props.onOpen}\n onClose={this.props.onClose}\n popupHasPin\n disableAnimations={disableAnimations}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|