@skbkontur/react-ui 0.0.0-a8f1c3e7a1 → 0.0.0-aa4659ca48
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 +217 -0
- package/README.md +7 -7
- package/cjs/components/Autocomplete/Autocomplete.d.ts +17 -26
- package/cjs/components/Autocomplete/Autocomplete.js +61 -56
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/ArrowLeftIcon.d.ts +1 -1
- package/cjs/components/Button/ArrowRightIcon.d.ts +1 -1
- package/cjs/components/Button/Button.d.ts +27 -14
- package/cjs/components/Button/Button.js +44 -20
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.mixins.d.ts +0 -1
- package/cjs/components/Button/Button.mixins.js +2 -9
- package/cjs/components/Button/Button.mixins.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +3 -3
- package/cjs/components/Button/Button.styles.js +48 -58
- 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/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 +7 -16
- package/cjs/components/Checkbox/Checkbox.js +24 -54
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.d.ts +0 -3
- package/cjs/components/Checkbox/Checkbox.styles.js +16 -43
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/Checkbox/CheckedIcon.d.ts +1 -1
- package/cjs/components/Checkbox/IndeterminateIcon.d.ts +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 +15 -45
- package/cjs/components/CurrencyInput/CurrencyInput.js +17 -55
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +1 -1
- package/cjs/components/CurrencyInput/CursorHelper.js +5 -2
- package/cjs/components/CurrencyInput/CursorHelper.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/CalendarIcon.d.ts +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +5 -2
- package/cjs/components/DateInput/DateInput.js +7 -25
- 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 +1 -10
- package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +8 -35
- package/cjs/components/DatePicker/DatePicker.js +6 -60
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.d.ts +34 -28
- package/cjs/components/DateRangePicker/DateRangePicker.js +24 -1
- package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePickerInput.js +2 -2
- package/cjs/components/DateRangePicker/DateRangePickerInput.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 +3 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +1 -0
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FileUploader/UploadIcon.d.ts +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +25 -21
- package/cjs/components/FxInput/FxInput.js +129 -68
- 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/FxInput/MathFunctionIcon.d.ts +1 -1
- package/cjs/components/FxInput/UndoIcon.d.ts +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +2 -15
- package/cjs/components/Gapped/Gapped.js +1 -25
- 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/GlobalLoader/useParams.d.ts +2 -2
- package/cjs/components/Group/Group.d.ts +4 -4
- package/cjs/components/Group/Group.js +80 -41
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.styles.d.ts +1 -1
- package/cjs/components/Group/Group.styles.js +7 -7
- 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 +33 -66
- package/cjs/components/Input/Input.js +31 -181
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.d.ts +0 -7
- package/cjs/components/Input/Input.styles.js +14 -76
- 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/Kebab/KebabIcon.d.ts +1 -1
- package/cjs/components/Link/Link.d.ts +12 -10
- package/cjs/components/Link/Link.js +11 -2
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +7 -36
- package/cjs/components/Loader/Loader.js +9 -59
- 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 +44 -9
- package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/components/MenuFooter/MenuFooter.d.ts +1 -1
- package/cjs/components/MenuFooter/MenuFooter.js +0 -1
- package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -1
- package/cjs/components/MenuHeader/MenuHeader.js +0 -1
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +2 -17
- package/cjs/components/MenuItem/MenuItem.js +5 -34
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.styles.d.ts +1 -2
- package/cjs/components/MenuItem/MenuItem.styles.js +12 -17
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -1
- package/cjs/components/MiniModal/MiniModal.styles.js +4 -2
- package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalBody.js +10 -2
- package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
- package/cjs/components/Modal/Modal.d.ts +1 -1
- package/cjs/components/Modal/Modal.js +2 -18
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +8 -21
- package/cjs/components/Modal/Modal.styles.js +82 -168
- 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 +2 -6
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js +1 -6
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.js +2 -5
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +5 -0
- package/cjs/components/Modal/ModalHeader.js +9 -7
- package/cjs/components/Modal/ModalHeader.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 +4 -1
- package/cjs/components/Paging/ForwardIcon.js +13 -1
- package/cjs/components/Paging/ForwardIcon.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.js +5 -7
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +14 -3
- package/cjs/components/Paging/Paging.js +116 -58
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.d.ts +16 -1
- package/cjs/components/Paging/Paging.styles.js +123 -28
- 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/ClosedIcon.d.ts +1 -1
- package/cjs/components/PasswordInput/OpenedIcon.d.ts +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +10 -18
- package/cjs/components/PasswordInput/PasswordInput.js +22 -46
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +4 -1
- package/cjs/components/Radio/Radio.js +9 -10
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/Radio/Radio.styles.d.ts +0 -2
- package/cjs/components/Radio/Radio.styles.js +19 -31
- package/cjs/components/Radio/Radio.styles.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +2 -1
- package/cjs/components/RadioGroup/RadioGroup.js +1 -15
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +0 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.js +5 -10
- package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/cjs/components/ResponsiveLayout/decorator.d.ts +4 -2
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +3 -14
- package/cjs/components/ScrollContainer/ScrollContainer.helpers.d.ts +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js +3 -19
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js +10 -20
- package/cjs/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/cjs/components/Select/ArrowDownIcon.d.ts +1 -1
- package/cjs/components/Select/Select.d.ts +4 -1
- package/cjs/components/Select/Select.js +10 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.js +5 -12
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +2 -7
- package/cjs/components/SidePage/SidePage.styles.js +41 -74
- 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/SidePageCloseButton.js +3 -7
- package/cjs/components/SidePage/SidePageCloseButton.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 +10 -7
- package/cjs/components/SidePage/SidePageHeader.js +31 -51
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +17 -4
- package/cjs/components/SingleToast/SingleToast.js +28 -5
- 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 -33
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/Spinner.styles.js +10 -15
- package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +2 -13
- package/cjs/components/Sticky/Sticky.js +4 -30
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +6 -21
- package/cjs/components/Switcher/Switcher.js +8 -26
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -1
- package/cjs/components/Switcher/Switcher.styles.js +14 -17
- 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 -47
- package/cjs/components/Textarea/Textarea.js +28 -66
- 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 +30 -16
- package/cjs/components/Toast/Toast.js +57 -52
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +7 -15
- 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 +9 -3
- package/cjs/components/TokenInput/TokenInput.js +74 -58
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +14 -10
- package/cjs/components/Tooltip/Tooltip.js +96 -19
- 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 +4 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/components/__stories__/Form.js +95 -0
- package/cjs/components/__stories__/Form.js.map +1 -0
- 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/ClearCrossIcon/CrossIcon.d.ts +1 -1
- package/cjs/internal/CloseButtonIcon/CrossIcon.d.ts +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/CommonWrapper/types.d.ts +1 -1
- package/cjs/internal/CommonWrapper/types.js.map +1 -1
- package/cjs/internal/ComponentTable.js +2 -3
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/ArrowDownIcon.d.ts +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/cjs/internal/CustomComboBox/ComboBoxView.js +48 -6
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +12 -6
- package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -10
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.d.ts +0 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +18 -24
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
- package/cjs/internal/DateSelect/DateSelect.js +2 -19
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +2 -2
- package/cjs/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +1 -1
- package/cjs/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +3 -2
- 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.d.ts +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 -13
- package/cjs/internal/InputLikeText/InputLikeText.js +17 -111
- 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 +4 -3
- package/cjs/internal/Menu/Menu.js +4 -10
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/Menu/Menu.styles.d.ts +0 -2
- package/cjs/internal/Menu/Menu.styles.js +9 -23
- package/cjs/internal/Menu/Menu.styles.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 +41 -61
- package/cjs/internal/Popup/Popup.js +58 -118
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.d.ts +16 -42
- package/cjs/internal/Popup/PopupPin.js +130 -224
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.styles.d.ts +5 -1
- package/cjs/internal/Popup/PopupPin.styles.js +25 -3
- package/cjs/internal/Popup/PopupPin.styles.js.map +1 -1
- 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/PopupMenu/validatePositions.js +5 -2
- package/cjs/internal/PopupMenu/validatePositions.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/ResizeDetector/ResizeDetector.d.ts +1 -0
- package/cjs/internal/ResizeDetector/ResizeDetector.js +8 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -0
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.js +7 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
- package/cjs/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
- package/cjs/internal/SpinnerIcon/SpinnerIcon.js +1 -55
- package/cjs/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/cjs/internal/ThemePlayground/HintPlayground.js +7 -4
- package/cjs/internal/ThemePlayground/HintPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +5 -1
- 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/helpers.d.ts +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/LoadingIcon.d.ts +1 -1
- package/cjs/internal/icons2022/LoadingIcon.js +0 -1
- package/cjs/internal/icons2022/LoadingIcon.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/icons2022/iconSizer.d.ts +1 -1
- package/cjs/internal/themes/BasicTheme.d.ts +86 -57
- package/cjs/internal/themes/BasicTheme.js +144 -67
- package/cjs/internal/themes/BasicTheme.js.map +1 -1
- package/cjs/internal/themes/DarkTheme6_0.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme6_0.js +575 -0
- package/cjs/internal/themes/DarkTheme6_0.js.map +1 -0
- package/cjs/internal/themes/LightTheme6_0.d.ts +1 -0
- package/cjs/internal/themes/{LightTheme5_0.js → LightTheme6_0.js} +4 -4
- package/cjs/internal/themes/{LightTheme5_0.js.map → LightTheme6_0.js.map} +1 -1
- 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/client.d.ts +0 -2
- package/cjs/lib/client.js +1 -3
- package/cjs/lib/client.js.map +1 -1
- package/cjs/lib/createPropsGetter.d.ts +1 -1
- package/cjs/lib/currentEnvironment.js +0 -1
- package/cjs/lib/currentEnvironment.js.map +1 -1
- package/cjs/lib/date/InternalDate.js +5 -4
- package/cjs/lib/date/InternalDate.js.map +1 -1
- package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
- package/cjs/lib/date/InternalDateGetter.js +2 -2
- package/cjs/lib/date/InternalDateGetter.js.map +1 -1
- package/cjs/lib/delay.mts +3 -0
- package/cjs/lib/dom/getDOMRect.d.ts +1 -1
- package/cjs/lib/dom/getScrollWidth.js +4 -2
- package/cjs/lib/dom/getScrollWidth.js.map +1 -1
- package/cjs/lib/events/MouseDrag.js +1 -7
- package/cjs/lib/events/MouseDrag.js.map +1 -1
- package/cjs/lib/events/keyboard/identifiers.js +2 -10
- package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -7
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +0 -5
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +1 -13
- 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/listenFocusOutside.js +3 -1
- package/cjs/lib/listenFocusOutside.js.map +1 -1
- package/cjs/lib/locale/decorators.d.ts +3 -2
- package/cjs/lib/needsPolyfillPlaceholder.js +1 -3
- package/cjs/lib/needsPolyfillPlaceholder.js.map +1 -1
- package/cjs/lib/rootNode/getRootNode.js +2 -2
- package/cjs/lib/rootNode/getRootNode.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +3 -2
- 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/styles/Mixins.js +1 -3
- package/cjs/lib/styles/Mixins.js.map +1 -1
- package/cjs/lib/theming/Emotion.d.ts +7 -7
- package/cjs/lib/theming/ThemeHelpers.js +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 +1 -3
- package/cjs/lib/theming/themes/DarkTheme.js +3 -7
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +1 -3
- package/cjs/lib/theming/themes/LightTheme.js +3 -7
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/typeGuards.js +1 -1
- package/cjs/lib/typeGuards.js.map +1 -1
- package/cjs/lib/utils.d.ts +20 -5
- package/cjs/lib/utils.js +39 -16
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/lib/withClassWrapper.js +5 -2
- package/cjs/lib/withClassWrapper.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 +49 -47
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +17 -26
- package/components/Button/ArrowLeftIcon.d.ts +1 -1
- package/components/Button/ArrowRightIcon.d.ts +1 -1
- package/components/Button/Button/Button.js +45 -27
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +27 -14
- package/components/Button/Button.mixins/Button.mixins.js +1 -4
- package/components/Button/Button.mixins/Button.mixins.js.map +1 -1
- package/components/Button/Button.mixins.d.ts +0 -1
- package/components/Button/Button.styles/Button.styles.js +29 -29
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +3 -3
- 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/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +2 -0
- package/components/Checkbox/Checkbox/Checkbox.js +17 -43
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +7 -16
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +16 -25
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.d.ts +0 -3
- package/components/Checkbox/CheckedIcon.d.ts +1 -1
- package/components/Checkbox/IndeterminateIcon.d.ts +1 -1
- 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 +20 -61
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +15 -45
- package/components/CurrencyInput/CurrencyInputKeyboardActions.d.ts +1 -1
- package/components/CurrencyInput/CursorHelper/CursorHelper.js +3 -1
- package/components/CurrencyInput/CursorHelper/CursorHelper.js.map +1 -1
- 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/CalendarIcon.d.ts +1 -1
- package/components/DateInput/DateInput/DateInput.js +14 -24
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +5 -2
- 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 +8 -35
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +14 -1
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.d.ts +34 -28
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +2 -2
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.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 +4 -3
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/components/FileUploader/FileUploader/FileUploader.js +1 -0
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/UploadIcon.d.ts +1 -1
- package/components/FxInput/FxInput/FxInput.js +112 -72
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +25 -21
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
- package/components/FxInput/MathFunctionIcon.d.ts +1 -1
- package/components/FxInput/UndoIcon.d.ts +1 -1
- package/components/Gapped/Gapped/Gapped.js +1 -16
- 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/GlobalLoader/useParams.d.ts +2 -2
- package/components/Group/Group/Group.js +68 -37
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +4 -4
- package/components/Group/Group.styles/Group.styles.js +5 -5
- package/components/Group/Group.styles/Group.styles.js.map +1 -1
- package/components/Group/Group.styles.d.ts +1 -1
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +2 -0
- package/components/Input/Input/Input.js +42 -166
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +33 -66
- package/components/Input/Input.styles/Input.styles.js +15 -37
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +0 -7
- 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/Kebab/KebabIcon.d.ts +1 -1
- package/components/Link/Link/Link.js +5 -2
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +12 -10
- package/components/Loader/Loader/Loader.js +4 -37
- 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 +29 -7
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/components/MenuFooter/MenuFooter/MenuFooter.js +0 -2
- package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.d.ts +1 -1
- package/components/MenuHeader/MenuHeader/MenuHeader.js +0 -2
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.d.ts +1 -1
- package/components/MenuItem/MenuItem/MenuItem.js +3 -17
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +2 -17
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +12 -15
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/MenuItem/MenuItem.styles.d.ts +1 -2
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +2 -2
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.d.ts +1 -1
- package/components/MiniModal/MiniModalBody/MiniModalBody.js +11 -5
- package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
- package/components/Modal/Modal/Modal.js +8 -16
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +1 -1
- package/components/Modal/Modal.styles/Modal.styles.js +55 -95
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +8 -21
- package/components/Modal/ModalBody/ModalBody.js +1 -3
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +2 -0
- package/components/Modal/ModalClose/ModalClose.js +1 -3
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js +2 -4
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader/ModalHeader.js +4 -4
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +5 -0
- 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 +4 -1
- package/components/Paging/NavigationHelper/NavigationHelper.js +4 -7
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/Paging/Paging.js +89 -57
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +14 -3
- package/components/Paging/Paging.styles/Paging.styles.js +61 -16
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +16 -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/ClosedIcon.d.ts +1 -1
- package/components/PasswordInput/OpenedIcon.d.ts +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +17 -37
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +10 -18
- package/components/Radio/Radio/Radio.js +10 -11
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +4 -1
- package/components/Radio/Radio.styles/Radio.styles.js +19 -25
- package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
- package/components/Radio/Radio.styles.d.ts +0 -2
- package/components/RadioGroup/RadioGroup/RadioGroup.js +18 -23
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +2 -1
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +5 -8
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +0 -1
- package/components/ResponsiveLayout/decorator.d.ts +4 -2
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +2 -15
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +3 -14
- package/components/ScrollContainer/ScrollContainer.helpers.d.ts +1 -1
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js +10 -13
- package/components/ScrollContainer/ScrollContainer.styles/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.d.ts +0 -1
- package/components/Select/ArrowDownIcon.d.ts +1 -1
- package/components/Select/Select/Select.js +14 -13
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +4 -1
- package/components/SidePage/SidePage/SidePage.js +6 -11
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +27 -43
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +2 -7
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +2 -0
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +1 -3
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
- 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 +32 -65
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +10 -7
- package/components/SingleToast/SingleToast/SingleToast.js +23 -14
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +17 -4
- package/components/Spinner/Spinner/Spinner.js +1 -19
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +2 -18
- package/components/Spinner/Spinner.styles/Spinner.styles.js +2 -3
- package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
- package/components/Sticky/Sticky/Sticky.js +6 -21
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +2 -13
- package/components/Switcher/Switcher/Switcher.js +14 -22
- 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 +9 -11
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -1
- 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 +26 -60
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +10 -47
- 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 +46 -41
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +30 -16
- package/components/Toast/ToastView/ToastView.js +20 -22
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +7 -15
- 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 +106 -88
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +9 -3
- package/components/Tooltip/Tooltip/Tooltip.js +96 -48
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +14 -10
- 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 +4 -3
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/components/__stories__/Form/Form.js +98 -0
- package/components/__stories__/Form/Form.js.map +1 -0
- package/components/__stories__/Form/package.json +6 -0
- 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/ClearCrossIcon/CrossIcon.d.ts +1 -1
- package/internal/CloseButtonIcon/CrossIcon.d.ts +1 -1
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/internal/CommonWrapper/types/types.js.map +1 -1
- package/internal/CommonWrapper/types.d.ts +1 -1
- package/internal/ComponentTable/ComponentTable.js +0 -2
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/CustomComboBox/ArrowDownIcon.d.ts +1 -1
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +0 -1
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +69 -40
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +18 -19
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +12 -6
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +18 -23
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer.d.ts +0 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +2 -11
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +0 -10
- package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +2 -2
- package/internal/FileUploaderControl/FileUploaderFile/DeleteIcon.d.ts +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/ErrorIcon.d.ts +1 -1
- package/internal/FileUploaderControl/FileUploaderFile/OkIcon.d.ts +1 -1
- package/internal/FocusControlWrapper/FocusControlWrapper.stories.d.ts +3 -2
- 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/IgnoreLayerClick/IgnoreLayerClick.d.ts +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +22 -115
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +4 -13
- 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 +2 -5
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +4 -3
- package/internal/Menu/Menu.styles/Menu.styles.js +9 -15
- package/internal/Menu/Menu.styles/Menu.styles.js.map +1 -1
- package/internal/Menu/Menu.styles.d.ts +0 -2
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +2 -0
- package/internal/Popup/Popup/Popup.js +29 -94
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +41 -61
- package/internal/Popup/PopupPin/PopupPin.js +115 -172
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +16 -42
- package/internal/Popup/PopupPin.styles/PopupPin.styles.js +15 -3
- package/internal/Popup/PopupPin.styles/PopupPin.styles.js.map +1 -1
- package/internal/Popup/PopupPin.styles.d.ts +5 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/internal/PopupMenu/validatePositions/validatePositions.js +3 -1
- package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
- 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/ResizeDetector/ResizeDetector/ResizeDetector.js +1 -1
- package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
- package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js +4 -1
- package/internal/ResizeDetector/ResizeDetector.styles/ResizeDetector.styles.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.styles.d.ts +1 -0
- package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js +0 -41
- package/internal/SpinnerIcon/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/SpinnerIcon/SpinnerIcon.d.ts +1 -2
- package/internal/ThemePlayground/HintPlayground/HintPlayground.js +10 -8
- package/internal/ThemePlayground/HintPlayground/HintPlayground.js.map +1 -1
- package/internal/ThemePlayground/Playground/Playground.js +8 -5
- 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/helpers.d.ts +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/LoadingIcon/LoadingIcon.js +0 -1
- package/internal/icons2022/LoadingIcon/LoadingIcon.js.map +1 -1
- package/internal/icons2022/LoadingIcon.d.ts +1 -1
- 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/icons2022/iconSizer.d.ts +1 -1
- package/internal/themes/BasicTheme/BasicTheme.js +176 -103
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +86 -57
- package/internal/themes/DarkTheme6_0/DarkTheme6_0.js +409 -0
- package/internal/themes/DarkTheme6_0/DarkTheme6_0.js.map +1 -0
- package/internal/themes/DarkTheme6_0/package.json +6 -0
- package/internal/themes/DarkTheme6_0.d.ts +1 -0
- package/internal/themes/{LightTheme5_0/LightTheme5_0.js → LightTheme6_0/LightTheme6_0.js} +5 -5
- package/internal/themes/{LightTheme5_0/LightTheme5_0.js.map → LightTheme6_0/LightTheme6_0.js.map} +1 -1
- package/internal/themes/LightTheme6_0/package.json +6 -0
- package/internal/themes/LightTheme6_0.d.ts +1 -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/client/client.js +0 -2
- package/lib/client/client.js.map +1 -1
- package/lib/client.d.ts +0 -2
- package/lib/createPropsGetter.d.ts +1 -1
- package/lib/currentEnvironment/currentEnvironment.js +2 -3
- package/lib/currentEnvironment/currentEnvironment.js.map +1 -1
- package/lib/date/InternalDate/InternalDate.js +5 -4
- package/lib/date/InternalDate/InternalDate.js.map +1 -1
- package/lib/date/InternalDateGetter/InternalDateGetter.js +2 -2
- 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/dom/getDOMRect.d.ts +1 -1
- package/lib/dom/getScrollWidth/getScrollWidth.js +3 -1
- package/lib/dom/getScrollWidth/getScrollWidth.js.map +1 -1
- package/lib/events/MouseDrag/MouseDrag.js +0 -7
- package/lib/events/MouseDrag/MouseDrag.js.map +1 -1
- package/lib/events/keyboard/identifiers/identifiers.js +1 -10
- package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +1 -7
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +1 -7
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +0 -5
- package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
- package/lib/forwardRefAndName.d.ts +1 -1
- package/lib/listenFocusOutside/listenFocusOutside.js +3 -1
- package/lib/listenFocusOutside/listenFocusOutside.js.map +1 -1
- package/lib/locale/decorators.d.ts +3 -2
- package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js +1 -2
- package/lib/needsPolyfillPlaceholder/needsPolyfillPlaceholder.js.map +1 -1
- package/lib/rootNode/getRootNode/getRootNode.js +1 -1
- package/lib/rootNode/getRootNode/getRootNode.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +3 -2
- 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/{internal/InternalMaskedInput → lib/size}/index/package.json +1 -1
- package/lib/size/index.d.ts +1 -0
- package/{internal/InternalMaskedInput → lib/size}/package.json +1 -1
- 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/styles/Mixins/Mixins.js +1 -1
- package/lib/styles/Mixins/Mixins.js.map +1 -1
- package/lib/theming/Emotion.d.ts +7 -7
- package/lib/theming/ThemeHelpers/ThemeHelpers.js +1 -1
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +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 +3 -7
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +1 -3
- package/lib/theming/themes/LightTheme/LightTheme.js +3 -7
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +1 -3
- package/lib/typeGuards/typeGuards.js +1 -1
- package/lib/typeGuards/typeGuards.js.map +1 -1
- package/lib/utils/utils.js +32 -14
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +20 -5
- package/lib/withClassWrapper/withClassWrapper.js +3 -1
- package/lib/withClassWrapper/withClassWrapper.js.map +1 -1
- package/package.json +23 -39
- 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 -86
- package/cjs/components/Input/InputLayout/PolyfillPlaceholder.d.ts +0 -10
- package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js +0 -46
- package/cjs/components/Input/InputLayout/PolyfillPlaceholder.js.map +0 -1
- 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/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js +0 -197
- package/cjs/components/Spinner/SpinnerFallbackAnimation.js.map +0 -1
- 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/Toast/ToastStatic.d.ts +0 -10
- package/cjs/components/Toast/ToastStatic.js +0 -53
- package/cjs/components/Toast/ToastStatic.js.map +0 -1
- package/cjs/components/Toggle/Toggle.md +0 -110
- package/cjs/components/Token/Token.md +0 -48
- package/cjs/components/TokenInput/TokenInput.md +0 -277
- 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/InputLikeText/HiddenInput.d.ts +0 -13
- package/cjs/internal/InputLikeText/HiddenInput.js +0 -43
- package/cjs/internal/InputLikeText/HiddenInput.js.map +0 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -50
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +0 -241
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +0 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +0 -6
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js +0 -30
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.styles.js.map +0 -1
- package/cjs/internal/InternalMaskedInput/index.d.ts +0 -1
- package/cjs/internal/InternalMaskedInput/index.js +0 -1
- package/cjs/internal/InternalMaskedInput/index.js.map +0 -1
- package/cjs/internal/ThemePlayground/Playground.md +0 -7
- package/cjs/internal/themes/BasicLightTheme.d.ts +0 -5
- package/cjs/internal/themes/BasicLightTheme.js +0 -6
- package/cjs/internal/themes/BasicLightTheme.js.map +0 -1
- package/cjs/internal/themes/DarkTheme5_0.d.ts +0 -1
- package/cjs/internal/themes/DarkTheme5_0.js +0 -570
- package/cjs/internal/themes/DarkTheme5_0.js.map +0 -1
- package/cjs/internal/themes/DarkTheme5_1.d.ts +0 -1
- package/cjs/internal/themes/DarkTheme5_1.js +0 -41
- package/cjs/internal/themes/DarkTheme5_1.js.map +0 -1
- package/cjs/internal/themes/DarkTheme5_2.d.ts +0 -1
- package/cjs/internal/themes/DarkTheme5_2.js +0 -29
- package/cjs/internal/themes/DarkTheme5_2.js.map +0 -1
- package/cjs/internal/themes/LightTheme5_0.d.ts +0 -1
- package/cjs/internal/themes/LightTheme5_1.d.ts +0 -1
- package/cjs/internal/themes/LightTheme5_1.js +0 -41
- package/cjs/internal/themes/LightTheme5_1.js.map +0 -1
- package/cjs/internal/themes/LightTheme5_2.d.ts +0 -1
- package/cjs/internal/themes/LightTheme5_2.js +0 -27
- package/cjs/internal/themes/LightTheme5_2.js.map +0 -1
- 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/events/fixClickFocusIE.d.ts +0 -1
- package/cjs/lib/events/fixClickFocusIE.js +0 -20
- package/cjs/lib/events/fixClickFocusIE.js.map +0 -1
- package/cjs/lib/events/stopPropagation.d.ts +0 -1
- package/cjs/lib/events/stopPropagation.js +0 -7
- package/cjs/lib/events/stopPropagation.js.map +0 -1
- package/cjs/lib/events/tabListener.d.ts +0 -1
- package/cjs/lib/events/tabListener.js +0 -2
- package/cjs/lib/events/tabListener.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 -86
- package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js +0 -29
- package/components/Input/InputLayout/PolyfillPlaceholder/PolyfillPlaceholder.js.map +0 -1
- package/components/Input/InputLayout/PolyfillPlaceholder/package.json +0 -6
- package/components/Input/InputLayout/PolyfillPlaceholder.d.ts +0 -10
- 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/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js +0 -146
- package/components/Spinner/SpinnerFallbackAnimation/SpinnerFallbackAnimation.js.map +0 -1
- package/components/Spinner/SpinnerFallbackAnimation/package.json +0 -6
- package/components/Spinner/SpinnerFallbackAnimation.d.ts +0 -25
- 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/Toast/ToastStatic/ToastStatic.js +0 -39
- package/components/Toast/ToastStatic/ToastStatic.js.map +0 -1
- package/components/Toast/ToastStatic/package.json +0 -6
- package/components/Toast/ToastStatic.d.ts +0 -10
- package/components/Toggle/Toggle.md +0 -110
- package/components/Token/Token.md +0 -48
- package/components/TokenInput/TokenInput.md +0 -277
- 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/InputLikeText/HiddenInput/HiddenInput.js +0 -42
- package/internal/InputLikeText/HiddenInput/HiddenInput.js.map +0 -1
- package/internal/InputLikeText/HiddenInput/package.json +0 -6
- package/internal/InputLikeText/HiddenInput.d.ts +0 -13
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +0 -191
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +0 -1
- package/internal/InternalMaskedInput/InternalMaskedInput/package.json +0 -6
- package/internal/InternalMaskedInput/InternalMaskedInput.d.ts +0 -50
- package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js +0 -14
- package/internal/InternalMaskedInput/InternalMaskedInput.styles/InternalMaskedInput.styles.js.map +0 -1
- package/internal/InternalMaskedInput/InternalMaskedInput.styles/package.json +0 -6
- package/internal/InternalMaskedInput/InternalMaskedInput.styles.d.ts +0 -6
- package/internal/InternalMaskedInput/index/index.js +0 -1
- package/internal/InternalMaskedInput/index/index.js.map +0 -1
- package/internal/InternalMaskedInput/index.d.ts +0 -1
- package/internal/ThemePlayground/Playground.md +0 -7
- package/internal/themes/BasicLightTheme/BasicLightTheme.js +0 -6
- package/internal/themes/BasicLightTheme/BasicLightTheme.js.map +0 -1
- package/internal/themes/BasicLightTheme/package.json +0 -6
- package/internal/themes/BasicLightTheme.d.ts +0 -5
- package/internal/themes/DarkTheme5_0/DarkTheme5_0.js +0 -409
- package/internal/themes/DarkTheme5_0/DarkTheme5_0.js.map +0 -1
- package/internal/themes/DarkTheme5_0/package.json +0 -6
- package/internal/themes/DarkTheme5_0.d.ts +0 -1
- package/internal/themes/DarkTheme5_1/DarkTheme5_1.js +0 -52
- package/internal/themes/DarkTheme5_1/DarkTheme5_1.js.map +0 -1
- package/internal/themes/DarkTheme5_1/package.json +0 -6
- package/internal/themes/DarkTheme5_1.d.ts +0 -1
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +0 -27
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +0 -1
- package/internal/themes/DarkTheme5_2/package.json +0 -6
- package/internal/themes/DarkTheme5_2.d.ts +0 -1
- package/internal/themes/LightTheme5_0/package.json +0 -6
- package/internal/themes/LightTheme5_0.d.ts +0 -1
- package/internal/themes/LightTheme5_1/LightTheme5_1.js +0 -52
- package/internal/themes/LightTheme5_1/LightTheme5_1.js.map +0 -1
- package/internal/themes/LightTheme5_1/package.json +0 -6
- package/internal/themes/LightTheme5_1.d.ts +0 -1
- package/internal/themes/LightTheme5_2/LightTheme5_2.js +0 -27
- package/internal/themes/LightTheme5_2/LightTheme5_2.js.map +0 -1
- package/internal/themes/LightTheme5_2/package.json +0 -6
- package/internal/themes/LightTheme5_2.d.ts +0 -1
- 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/events/fixClickFocusIE/fixClickFocusIE.js +0 -18
- package/lib/events/fixClickFocusIE/fixClickFocusIE.js.map +0 -1
- package/lib/events/fixClickFocusIE/package.json +0 -6
- package/lib/events/fixClickFocusIE.d.ts +0 -1
- package/lib/events/stopPropagation/package.json +0 -6
- package/lib/events/stopPropagation/stopPropagation.js +0 -7
- package/lib/events/stopPropagation/stopPropagation.js.map +0 -1
- package/lib/events/stopPropagation.d.ts +0 -1
- package/lib/events/tabListener/package.json +0 -6
- package/lib/events/tabListener/tabListener.js +0 -2
- package/lib/events/tabListener/tabListener.js.map +0 -1
- package/lib/events/tabListener.d.ts +0 -1
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/lib/locale/LOCALECONTEXT.md +0 -222
- package/lib/theming/ThemeContext.md +0 -265
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
2
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
3
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
4
4
|
declare const types: readonly ["big", "mini", "normal"];
|
|
5
5
|
export type SpinnerType = (typeof types)[number];
|
|
6
6
|
export interface SpinnerProps extends CommonProps {
|
|
@@ -35,27 +35,11 @@ type DefaultProps = Required<Pick<SpinnerProps, 'type'>>;
|
|
|
35
35
|
export declare class Spinner extends React.Component<SpinnerProps> {
|
|
36
36
|
static __KONTUR_REACT_UI__: string;
|
|
37
37
|
static displayName: string;
|
|
38
|
-
static propTypes: {
|
|
39
|
-
/**
|
|
40
|
-
* Текст рядом с мини-лоадером.
|
|
41
|
-
*
|
|
42
|
-
* 'Загрузка' - значение по-умолчанию
|
|
43
|
-
*/
|
|
44
|
-
caption: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
45
|
-
dimmed: PropTypes.Requireable<boolean>;
|
|
46
|
-
/**
|
|
47
|
-
* Тип спиннера: mini, normal, big
|
|
48
|
-
*
|
|
49
|
-
* Значение по-умолчанию - normal
|
|
50
|
-
*
|
|
51
|
-
* Spinner.types - все доступные типы
|
|
52
|
-
*/
|
|
53
|
-
type: PropTypes.Requireable<"big" | "normal" | "mini">;
|
|
54
|
-
};
|
|
55
38
|
static defaultProps: DefaultProps;
|
|
56
39
|
private getProps;
|
|
57
40
|
static Types: Record<SpinnerType, SpinnerType>;
|
|
58
41
|
private theme;
|
|
42
|
+
getRootNode: TGetRootNode;
|
|
59
43
|
private setRootNode;
|
|
60
44
|
render(): React.JSX.Element;
|
|
61
45
|
private renderMain;
|
|
@@ -2,16 +2,15 @@ import _taggedTemplateLiteralLoose from "@babel/runtime/helpers/esm/taggedTempla
|
|
|
2
2
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
|
|
3
3
|
import { css, memoizeStyle } from "../../../lib/theming/Emotion";
|
|
4
4
|
import { AnimationKeyframes } from "../../../lib/theming/AnimationKeyframes";
|
|
5
|
-
import { isIE11 } from "../../../lib/client";
|
|
6
5
|
export var styles = memoizeStyle({
|
|
7
6
|
circle: function circle(t) {
|
|
8
|
-
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n stroke: ", ";\n\n
|
|
7
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n stroke: ", ";\n\n animation:\n ", " 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ", " 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ", " 2s linear infinite,\n ", " 6s ease-in-out infinite;\n "])), t.spinnerColor, AnimationKeyframes.spinnerCircleOffset(), AnimationKeyframes.spinnerCircleLength(), AnimationKeyframes.spinnerCircleRotate(), AnimationKeyframes.spinnerColor(t));
|
|
9
8
|
},
|
|
10
9
|
circleDimmedColor: function circleDimmedColor(t) {
|
|
11
10
|
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n stroke: ", ";\n "])), t.spinnerDimmedColor);
|
|
12
11
|
},
|
|
13
12
|
circleWithoutColorAnimation: function circleWithoutColorAnimation() {
|
|
14
|
-
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n
|
|
13
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n animation:\n ", " 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ", " 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ", " 2s linear infinite;\n "])), AnimationKeyframes.spinnerCircleOffset(), AnimationKeyframes.spinnerCircleLength(), AnimationKeyframes.spinnerCircleRotate());
|
|
15
14
|
},
|
|
16
15
|
captionColor: function captionColor(t) {
|
|
17
16
|
return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n color: ", ";\n "])), t.spinnerCaptionColor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["css","memoizeStyle","AnimationKeyframes","
|
|
1
|
+
{"version":3,"names":["css","memoizeStyle","AnimationKeyframes","styles","circle","t","_templateObject","_taggedTemplateLiteralLoose","spinnerColor","spinnerCircleOffset","spinnerCircleLength","spinnerCircleRotate","circleDimmedColor","_templateObject2","spinnerDimmedColor","circleWithoutColorAnimation","_templateObject3","captionColor","_templateObject4","spinnerCaptionColor","inline","_templateObject5","mini","_templateObject6","spinnerCaptionGapSmall","spinnerFontSizeSmall","spinnerLineHeightSmall","small","_templateObject7","spinnerCaptionMarginSmall","normal","_templateObject8","spinnerFontSizeMedium","spinnerLineHeightMedium","spinnerCaptionGapMedium","medium","_templateObject9","spinnerCaptionMarginMedium","big","_templateObject10","spinnerFontSizeLarge","spinnerLineHeightLarge","spinnerCaptionGapLarge","large","_templateObject11","spinnerCaptionMarginLarge","spinner","_templateObject12","inner","_templateObject13"],"sources":["Spinner.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { AnimationKeyframes } from '../../lib/theming/AnimationKeyframes';\n\nexport const styles = memoizeStyle({\n circle(t: Theme) {\n return css`\n stroke: ${t.spinnerColor};\n\n animation:\n ${AnimationKeyframes.spinnerCircleOffset()} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ${AnimationKeyframes.spinnerCircleLength()} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ${AnimationKeyframes.spinnerCircleRotate()} 2s linear infinite,\n ${AnimationKeyframes.spinnerColor(t)} 6s ease-in-out infinite;\n `;\n },\n circleDimmedColor(t: Theme) {\n return css`\n stroke: ${t.spinnerDimmedColor};\n `;\n },\n circleWithoutColorAnimation() {\n return css`\n animation:\n ${AnimationKeyframes.spinnerCircleOffset()} 1s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite,\n ${AnimationKeyframes.spinnerCircleLength()} 2s cubic-bezier(0.36, 0.14, 0.38, 0.69) infinite,\n ${AnimationKeyframes.spinnerCircleRotate()} 2s linear infinite;\n `;\n },\n\n captionColor(t: Theme) {\n return css`\n color: ${t.spinnerCaptionColor};\n `;\n },\n\n inline() {\n return css`\n font-size: inherit;\n line-height: inherit;\n `;\n },\n\n mini(t: Theme) {\n return css`\n margin-left: ${t.spinnerCaptionGapSmall};\n font-size: ${t.spinnerFontSizeSmall};\n line-height: ${t.spinnerLineHeightSmall};\n `;\n },\n\n small(t: Theme) {\n return css`\n margin: ${t.spinnerCaptionMarginSmall};\n font-size: ${t.spinnerFontSizeSmall};\n line-height: ${t.spinnerLineHeightSmall};\n `;\n },\n\n normal(t: Theme) {\n return css`\n display: block;\n font-size: ${t.spinnerFontSizeMedium};\n line-height: ${t.spinnerLineHeightMedium};\n margin-top: ${t.spinnerCaptionGapMedium};\n `;\n },\n\n medium(t: Theme) {\n return css`\n margin: ${t.spinnerCaptionMarginMedium};\n font-size: ${t.spinnerFontSizeMedium};\n line-height: ${t.spinnerLineHeightMedium};\n `;\n },\n\n big(t: Theme) {\n return css`\n display: block;\n font-size: ${t.spinnerFontSizeLarge};\n line-height: ${t.spinnerLineHeightLarge};\n margin-top: ${t.spinnerCaptionGapLarge};\n `;\n },\n\n large(t: Theme) {\n return css`\n font-size: ${t.spinnerFontSizeLarge};\n line-height: ${t.spinnerLineHeightLarge};\n margin: ${t.spinnerCaptionMarginLarge};\n `;\n },\n\n spinner() {\n return css`\n display: inline-block;\n text-align: center;\n line-height: normal;\n `;\n },\n\n inner() {\n return css`\n display: inline-block;\n `;\n },\n});\n"],"mappings":"gVAAA,SAASA,GAAG,EAAEC,YAAY,QAAQ,2BAA2B;;AAE7D,SAASC,kBAAkB,QAAQ,sCAAsC;;AAEzE,OAAO,IAAMC,MAAM,GAAGF,YAAY,CAAC;EACjCG,MAAM,WAAAA,OAACC,CAAQ,EAAE;IACf,OAAOL,GAAG,CAAAM,eAAA,KAAAA,eAAA,GAAAC,2BAAA;IACEF,CAAC,CAACG,YAAY;;;IAGpBN,kBAAkB,CAACO,mBAAmB,CAAC,CAAC;IACxCP,kBAAkB,CAACQ,mBAAmB,CAAC,CAAC;IACxCR,kBAAkB,CAACS,mBAAmB,CAAC,CAAC;IACxCT,kBAAkB,CAACM,YAAY,CAACH,CAAC,CAAC;;EAE1C,CAAC;EACDO,iBAAiB,WAAAA,kBAACP,CAAQ,EAAE;IAC1B,OAAOL,GAAG,CAAAa,gBAAA,KAAAA,gBAAA,GAAAN,2BAAA;IACEF,CAAC,CAACS,kBAAkB;;EAElC,CAAC;EACDC,2BAA2B,WAAAA,4BAAA,EAAG;IAC5B,OAAOf,GAAG,CAAAgB,gBAAA,KAAAA,gBAAA,GAAAT,2BAAA;;IAEJL,kBAAkB,CAACO,mBAAmB,CAAC,CAAC;IACxCP,kBAAkB,CAACQ,mBAAmB,CAAC,CAAC;IACxCR,kBAAkB,CAACS,mBAAmB,CAAC,CAAC;;EAEhD,CAAC;;EAEDM,YAAY,WAAAA,aAACZ,CAAQ,EAAE;IACrB,OAAOL,GAAG,CAAAkB,gBAAA,KAAAA,gBAAA,GAAAX,2BAAA;IACCF,CAAC,CAACc,mBAAmB;;EAElC,CAAC;;EAEDC,MAAM,WAAAA,OAAA,EAAG;IACP,OAAOpB,GAAG,CAAAqB,gBAAA,KAAAA,gBAAA,GAAAd,2BAAA;;;;EAIZ,CAAC;;EAEDe,IAAI,WAAAA,KAACjB,CAAQ,EAAE;IACb,OAAOL,GAAG,CAAAuB,gBAAA,KAAAA,gBAAA,GAAAhB,2BAAA;IACOF,CAAC,CAACmB,sBAAsB;IAC1BnB,CAAC,CAACoB,oBAAoB;IACpBpB,CAAC,CAACqB,sBAAsB;;EAE3C,CAAC;;EAEDC,KAAK,WAAAA,MAACtB,CAAQ,EAAE;IACd,OAAOL,GAAG,CAAA4B,gBAAA,KAAAA,gBAAA,GAAArB,2BAAA;IACEF,CAAC,CAACwB,yBAAyB;IACxBxB,CAAC,CAACoB,oBAAoB;IACpBpB,CAAC,CAACqB,sBAAsB;;EAE3C,CAAC;;EAEDI,MAAM,WAAAA,OAACzB,CAAQ,EAAE;IACf,OAAOL,GAAG,CAAA+B,gBAAA,KAAAA,gBAAA,GAAAxB,2BAAA;;IAEKF,CAAC,CAAC2B,qBAAqB;IACrB3B,CAAC,CAAC4B,uBAAuB;IAC1B5B,CAAC,CAAC6B,uBAAuB;;EAE3C,CAAC;;EAEDC,MAAM,WAAAA,OAAC9B,CAAQ,EAAE;IACf,OAAOL,GAAG,CAAAoC,gBAAA,KAAAA,gBAAA,GAAA7B,2BAAA;IACEF,CAAC,CAACgC,0BAA0B;IACzBhC,CAAC,CAAC2B,qBAAqB;IACrB3B,CAAC,CAAC4B,uBAAuB;;EAE5C,CAAC;;EAEDK,GAAG,WAAAA,IAACjC,CAAQ,EAAE;IACZ,OAAOL,GAAG,CAAAuC,iBAAA,KAAAA,iBAAA,GAAAhC,2BAAA;;IAEKF,CAAC,CAACmC,oBAAoB;IACpBnC,CAAC,CAACoC,sBAAsB;IACzBpC,CAAC,CAACqC,sBAAsB;;EAE1C,CAAC;;EAEDC,KAAK,WAAAA,MAACtC,CAAQ,EAAE;IACd,OAAOL,GAAG,CAAA4C,iBAAA,KAAAA,iBAAA,GAAArC,2BAAA;IACKF,CAAC,CAACmC,oBAAoB;IACpBnC,CAAC,CAACoC,sBAAsB;IAC7BpC,CAAC,CAACwC,yBAAyB;;EAEzC,CAAC;;EAEDC,OAAO,WAAAA,QAAA,EAAG;IACR,OAAO9C,GAAG,CAAA+C,iBAAA,KAAAA,iBAAA,GAAAxC,2BAAA;;;;;EAKZ,CAAC;;EAEDyC,KAAK,WAAAA,MAAA,EAAG;IACN,OAAOhD,GAAG,CAAAiD,iBAAA,KAAAA,iBAAA,GAAA1C,2BAAA;;;EAGZ;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -2,9 +2,9 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
3
3
|
var _class, _Sticky;
|
|
4
4
|
import React from 'react';
|
|
5
|
-
import PropTypes from 'prop-types';
|
|
6
5
|
import shallowEqual from 'shallowequal';
|
|
7
6
|
import { globalObject } from '@skbkontur/global-object';
|
|
7
|
+
import warning from 'warning';
|
|
8
8
|
import * as LayoutEvents from "../../../lib/LayoutEvents";
|
|
9
9
|
import { isFunction } from "../../../lib/utils";
|
|
10
10
|
import { ZIndex } from "../../../internal/ZIndex";
|
|
@@ -13,7 +13,6 @@ import { cx } from "../../../lib/theming/Emotion";
|
|
|
13
13
|
import { rootNode } from "../../../lib/rootNode";
|
|
14
14
|
import { getDOMRect } from "../../../lib/dom/getDOMRect";
|
|
15
15
|
import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
16
|
-
import { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext";
|
|
17
16
|
import { styles } from "../Sticky.styles";
|
|
18
17
|
var MAX_REFLOW_RETRIES = 5;
|
|
19
18
|
export var StickyDataTids = {
|
|
@@ -57,7 +56,8 @@ export var Sticky = rootNode(_class = (_Sticky = /*#__PURE__*/function (_React$C
|
|
|
57
56
|
_this.reflow = function () {
|
|
58
57
|
var _globalObject$documen;
|
|
59
58
|
if (!((_globalObject$documen = globalObject.document) != null && _globalObject$documen.documentElement)) {
|
|
60
|
-
|
|
59
|
+
warning(false, 'There is no "documentElement" in document');
|
|
60
|
+
return;
|
|
61
61
|
}
|
|
62
62
|
var windowHeight = globalObject.innerHeight || globalObject.document.documentElement.clientHeight;
|
|
63
63
|
if (!_this.wrapper || !_this.inner) {
|
|
@@ -131,7 +131,7 @@ export var Sticky = rootNode(_class = (_Sticky = /*#__PURE__*/function (_React$C
|
|
|
131
131
|
_proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {
|
|
132
132
|
if (!shallowEqual(prevProps, this.props) || !shallowEqual(prevState, this.state)) {
|
|
133
133
|
if (this.reflowCounter < MAX_REFLOW_RETRIES) {
|
|
134
|
-
this.
|
|
134
|
+
this.reflow();
|
|
135
135
|
this.reflowCounter += 1;
|
|
136
136
|
return;
|
|
137
137
|
}
|
|
@@ -139,11 +139,7 @@ export var Sticky = rootNode(_class = (_Sticky = /*#__PURE__*/function (_React$C
|
|
|
139
139
|
this.reflowCounter = 0;
|
|
140
140
|
};
|
|
141
141
|
_proto.render = function render() {
|
|
142
|
-
|
|
143
|
-
return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
|
|
144
|
-
_this2.featureFlags = getFullReactUIFlagsContext(flags);
|
|
145
|
-
return _this2.renderMain();
|
|
146
|
-
});
|
|
142
|
+
return this.renderMain();
|
|
147
143
|
};
|
|
148
144
|
_proto.renderMain = function renderMain() {
|
|
149
145
|
var _cx;
|
|
@@ -194,17 +190,6 @@ export var Sticky = rootNode(_class = (_Sticky = /*#__PURE__*/function (_React$C
|
|
|
194
190
|
}) : null));
|
|
195
191
|
};
|
|
196
192
|
return Sticky;
|
|
197
|
-
}(React.Component), _Sticky.__KONTUR_REACT_UI__ = 'Sticky', _Sticky.displayName = 'Sticky', _Sticky.
|
|
198
|
-
children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
199
|
-
/**
|
|
200
|
-
* Функция, которая возвращает DOM-элемент, который нельзя пересекать.
|
|
201
|
-
*/
|
|
202
|
-
getStop: PropTypes.func,
|
|
203
|
-
/**
|
|
204
|
-
* Отступ от границы в пикселях
|
|
205
|
-
*/
|
|
206
|
-
offset: PropTypes.number,
|
|
207
|
-
side: PropTypes.oneOf(['top', 'bottom']).isRequired
|
|
208
|
-
}, _Sticky.defaultProps = {
|
|
193
|
+
}(React.Component), _Sticky.__KONTUR_REACT_UI__ = 'Sticky', _Sticky.displayName = 'Sticky', _Sticky.defaultProps = {
|
|
209
194
|
offset: 0
|
|
210
195
|
}, _Sticky)) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","PropTypes","shallowEqual","globalObject","LayoutEvents","isFunction","ZIndex","CommonWrapper","cx","rootNode","getDOMRect","createPropsGetter","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","MAX_REFLOW_RETRIES","StickyDataTids","root","Sticky","_class","_Sticky","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","fixed","deltaHeight","stopped","relativeTop","layoutSubscription","remove","reflowCounter","refWrapper","ref","wrapper","refInner","inner","reflow","_globalObject$documen","document","documentElement","Error","windowHeight","innerHeight","clientHeight","_getDOMRect","top","bottom","left","width","_getDOMRect2","height","_this$props","props","getStop","side","_this$state","prevFixed","_this$state$height","prevHeight","offset","Math","ceil","floor","setState","stop","stopRect","outerHeight","_inheritsLoose","_proto","prototype","componentDidMount","addListener","componentWillUnmount","componentDidUpdate","prevProps","prevState","featureFlags","stickyReduceLayoutEvents","emit","render","_this2","createElement","Consumer","flags","renderMain","_cx","children","_this$state2","innerStyle","_extends","rootNodeRef","setRootNode","className","priority","applyZIndex","style","wrapperRef","container","Component","__KONTUR_REACT_UI__","displayName","propTypes","oneOfType","node","func","number","oneOf","isRequired"],"sources":["Sticky.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport shallowEqual from 'shallowequal';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport type { Nullable } from '../../typings/utility-types';\nimport { isFunction } from '../../lib/utils';\nimport { ZIndex } from '../../internal/ZIndex';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Sticky.styles';\n\nconst MAX_REFLOW_RETRIES = 5;\n\nexport interface StickyProps extends Omit<CommonProps, 'children'> {\n /** Задает сторону залипания. */\n side: 'top' | 'bottom';\n\n /** Задает отступ от края экрана в пикселях, на который сдвигается элемент в залипшем состоянии.\n * @default 0 */\n offset?: number;\n\n /** Задает функцию, которая возвращает DOM-элемент, который нельзя пересекать. */\n getStop?: () => Nullable<HTMLElement>;\n\n /** @ignore */\n children?: React.ReactNode | ((fixed: boolean) => React.ReactNode);\n}\n\nexport interface StickyState {\n fixed: boolean;\n deltaHeight: number;\n height?: number;\n width?: number;\n left?: number;\n stopped: boolean;\n relativeTop: number;\n}\n\nexport const StickyDataTids = {\n root: 'Sticky__root',\n} as const;\n\ntype DefaultProps = Required<Pick<StickyProps, 'offset'>>;\n\n/**\n * `Sticky` позволяет закреплять элемент интерфейса в определенной позиции на экране при прокрутке страницы.\n * Это полезно для создания \"прилипающих\" элементов, которые остаются видимыми при прокрутке содержимого.\n */\n@rootNode\nexport class Sticky extends React.Component<StickyProps, StickyState> {\n public static __KONTUR_REACT_UI__ = 'Sticky';\n public static displayName = 'Sticky';\n\n public static propTypes = {\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Функция, которая возвращает DOM-элемент, который нельзя пересекать.\n */\n getStop: PropTypes.func,\n\n /**\n * Отступ от границы в пикселях\n */\n offset: PropTypes.number,\n\n side: PropTypes.oneOf(['top', 'bottom']).isRequired,\n };\n\n public static defaultProps: DefaultProps = { offset: 0 };\n\n private getProps = createPropsGetter(Sticky.defaultProps);\n\n public state: StickyState = {\n fixed: false,\n deltaHeight: 0,\n stopped: false,\n relativeTop: 0,\n };\n\n private wrapper: Nullable<HTMLElement>;\n private inner: Nullable<HTMLElement>;\n private layoutSubscription: { remove: Nullable<() => void> } = { remove: null };\n private reflowCounter = 0;\n private setRootNode!: TSetRootNode;\n public featureFlags!: ReactUIFeatureFlags;\n\n public componentDidMount() {\n this.reflow();\n\n this.layoutSubscription = LayoutEvents.addListener(this.reflow);\n }\n\n public componentWillUnmount() {\n if (this.layoutSubscription.remove) {\n this.layoutSubscription.remove();\n }\n }\n\n public componentDidUpdate(prevProps: StickyProps, prevState: StickyState) {\n if (!shallowEqual(prevProps, this.props) || !shallowEqual(prevState, this.state)) {\n if (this.reflowCounter < MAX_REFLOW_RETRIES) {\n this.featureFlags.stickyReduceLayoutEvents ? this.reflow() : LayoutEvents.emit();\n this.reflowCounter += 1;\n return;\n }\n }\n this.reflowCounter = 0;\n }\n\n public render() {\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return this.renderMain();\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n private renderMain() {\n let { children } = this.props;\n const { side } = this.props;\n const offset = this.getProps().offset;\n const { fixed, stopped, relativeTop, deltaHeight, width, height, left } = this.state;\n const innerStyle: React.CSSProperties = {};\n\n if (fixed) {\n if (stopped) {\n innerStyle.top = relativeTop;\n innerStyle[side === 'top' ? 'marginTop' : 'marginBottom'] = deltaHeight;\n } else {\n innerStyle.width = width;\n innerStyle[side] = offset;\n innerStyle.left = left;\n }\n }\n\n if (isFunction(children)) {\n children = children(fixed);\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div data-tid={StickyDataTids.root} ref={this.refWrapper} className={styles.wrapper()}>\n <ZIndex\n priority=\"Sticky\"\n applyZIndex={fixed}\n className={cx(styles.inner(), {\n [styles.fixed()]: fixed && !stopped,\n [styles.stopped()]: stopped,\n })}\n style={innerStyle}\n wrapperRef={this.refInner}\n >\n <div className={styles.container()}>{children}</div>\n </ZIndex>\n {fixed && !stopped ? <div style={{ width, height }} /> : null}\n </div>\n </CommonWrapper>\n );\n }\n\n private refWrapper = (ref: Nullable<HTMLElement>) => (this.wrapper = ref);\n\n private refInner = (ref: Nullable<HTMLElement>) => (this.inner = ref);\n\n /**\n * Пересчитать габариты и позицию залипшего элемента\n *\n * @public\n */\n public reflow = () => {\n if (!globalObject.document?.documentElement) {\n throw Error('There is no \"documentElement\" in document');\n }\n\n const windowHeight = globalObject.innerHeight || globalObject.document.documentElement.clientHeight;\n if (!this.wrapper || !this.inner) {\n return;\n }\n const { top, bottom, left, width } = getDOMRect(this.wrapper);\n const { height } = getDOMRect(this.inner);\n const { getStop, side } = this.props;\n const { fixed: prevFixed, height: prevHeight = height } = this.state;\n const offset = this.getProps().offset;\n const fixed = side === 'top' ? Math.ceil(top) < offset : Math.floor(bottom) > windowHeight - offset;\n\n this.setState({ fixed, left });\n\n if (fixed && !prevFixed) {\n this.setState({ width, height });\n }\n\n if (fixed) {\n this.setState({ width });\n const stop = getStop && getStop();\n if (stop) {\n const deltaHeight = prevHeight - height;\n const stopRect = getDOMRect(stop);\n const outerHeight = height + offset;\n let stopped = false;\n let relativeTop = 0;\n\n if (side === 'top') {\n stopped = stopRect.top - outerHeight < 0;\n relativeTop = stopRect.top - prevHeight - top;\n } else {\n stopped = stopRect.bottom + outerHeight > windowHeight;\n relativeTop = stopRect.bottom - top;\n }\n\n this.setState({ relativeTop, deltaHeight, stopped });\n }\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","shallowEqual","globalObject","warning","LayoutEvents","isFunction","ZIndex","CommonWrapper","cx","rootNode","getDOMRect","createPropsGetter","styles","MAX_REFLOW_RETRIES","StickyDataTids","root","Sticky","_class","_Sticky","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","fixed","deltaHeight","stopped","relativeTop","layoutSubscription","remove","reflowCounter","refWrapper","ref","wrapper","refInner","inner","reflow","_globalObject$documen","document","documentElement","windowHeight","innerHeight","clientHeight","_getDOMRect","top","bottom","left","width","_getDOMRect2","height","_this$props","props","getStop","side","_this$state","prevFixed","_this$state$height","prevHeight","offset","Math","ceil","floor","setState","stop","stopRect","outerHeight","_inheritsLoose","_proto","prototype","componentDidMount","addListener","componentWillUnmount","componentDidUpdate","prevProps","prevState","render","renderMain","_cx","children","_this$state2","innerStyle","createElement","_extends","rootNodeRef","setRootNode","className","priority","applyZIndex","style","wrapperRef","container","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Sticky.tsx"],"sourcesContent":["import React from 'react';\nimport shallowEqual from 'shallowequal';\nimport { globalObject } from '@skbkontur/global-object';\nimport warning from 'warning';\n\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport type { Nullable } from '../../typings/utility-types';\nimport { isFunction } from '../../lib/utils';\nimport { ZIndex } from '../../internal/ZIndex';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\n\nimport { styles } from './Sticky.styles';\n\nconst MAX_REFLOW_RETRIES = 5;\n\nexport interface StickyProps extends Omit<CommonProps, 'children'> {\n /** Задает сторону залипания. */\n side: 'top' | 'bottom';\n\n /** Задает отступ от края экрана в пикселях, на который сдвигается элемент в залипшем состоянии.\n * @default 0 */\n offset?: number;\n\n /** Задает функцию, которая возвращает DOM-элемент, который нельзя пересекать. */\n getStop?: () => Nullable<HTMLElement>;\n\n /** @ignore */\n children?: React.ReactNode | ((fixed: boolean) => React.ReactNode);\n}\n\nexport interface StickyState {\n fixed: boolean;\n deltaHeight: number;\n height?: number;\n width?: number;\n left?: number;\n stopped: boolean;\n relativeTop: number;\n}\n\nexport const StickyDataTids = {\n root: 'Sticky__root',\n} as const;\n\ntype DefaultProps = Required<Pick<StickyProps, 'offset'>>;\n\n/**\n * `Sticky` позволяет закреплять элемент интерфейса в определенной позиции на экране при прокрутке страницы.\n * Это полезно для создания \"прилипающих\" элементов, которые остаются видимыми при прокрутке содержимого.\n */\n@rootNode\nexport class Sticky extends React.Component<StickyProps, StickyState> {\n public static __KONTUR_REACT_UI__ = 'Sticky';\n public static displayName = 'Sticky';\n\n public static defaultProps: DefaultProps = { offset: 0 };\n\n private getProps = createPropsGetter(Sticky.defaultProps);\n\n public state: StickyState = {\n fixed: false,\n deltaHeight: 0,\n stopped: false,\n relativeTop: 0,\n };\n\n private wrapper: Nullable<HTMLElement>;\n private inner: Nullable<HTMLElement>;\n private layoutSubscription: { remove: Nullable<() => void> } = { remove: null };\n private reflowCounter = 0;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n public featureFlags!: ReactUIFeatureFlags;\n\n public componentDidMount() {\n this.reflow();\n\n this.layoutSubscription = LayoutEvents.addListener(this.reflow);\n }\n\n public componentWillUnmount() {\n if (this.layoutSubscription.remove) {\n this.layoutSubscription.remove();\n }\n }\n\n public componentDidUpdate(prevProps: StickyProps, prevState: StickyState) {\n if (!shallowEqual(prevProps, this.props) || !shallowEqual(prevState, this.state)) {\n if (this.reflowCounter < MAX_REFLOW_RETRIES) {\n this.reflow();\n this.reflowCounter += 1;\n return;\n }\n }\n this.reflowCounter = 0;\n }\n\n public render() {\n return this.renderMain();\n }\n\n private renderMain() {\n let { children } = this.props;\n const { side } = this.props;\n const offset = this.getProps().offset;\n const { fixed, stopped, relativeTop, deltaHeight, width, height, left } = this.state;\n const innerStyle: React.CSSProperties = {};\n\n if (fixed) {\n if (stopped) {\n innerStyle.top = relativeTop;\n innerStyle[side === 'top' ? 'marginTop' : 'marginBottom'] = deltaHeight;\n } else {\n innerStyle.width = width;\n innerStyle[side] = offset;\n innerStyle.left = left;\n }\n }\n\n if (isFunction(children)) {\n children = children(fixed);\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div data-tid={StickyDataTids.root} ref={this.refWrapper} className={styles.wrapper()}>\n <ZIndex\n priority=\"Sticky\"\n applyZIndex={fixed}\n className={cx(styles.inner(), {\n [styles.fixed()]: fixed && !stopped,\n [styles.stopped()]: stopped,\n })}\n style={innerStyle}\n wrapperRef={this.refInner}\n >\n <div className={styles.container()}>{children}</div>\n </ZIndex>\n {fixed && !stopped ? <div style={{ width, height }} /> : null}\n </div>\n </CommonWrapper>\n );\n }\n\n private refWrapper = (ref: Nullable<HTMLElement>) => (this.wrapper = ref);\n\n private refInner = (ref: Nullable<HTMLElement>) => (this.inner = ref);\n\n /**\n * Пересчитать габариты и позицию залипшего элемента\n *\n * @public\n */\n public reflow = () => {\n if (!globalObject.document?.documentElement) {\n warning(false, 'There is no \"documentElement\" in document');\n return;\n }\n\n const windowHeight = globalObject.innerHeight || globalObject.document.documentElement.clientHeight;\n if (!this.wrapper || !this.inner) {\n return;\n }\n const { top, bottom, left, width } = getDOMRect(this.wrapper);\n const { height } = getDOMRect(this.inner);\n const { getStop, side } = this.props;\n const { fixed: prevFixed, height: prevHeight = height } = this.state;\n const offset = this.getProps().offset;\n const fixed = side === 'top' ? Math.ceil(top) < offset : Math.floor(bottom) > windowHeight - offset;\n\n this.setState({ fixed, left });\n\n if (fixed && !prevFixed) {\n this.setState({ width, height });\n }\n\n if (fixed) {\n this.setState({ width });\n const stop = getStop && getStop();\n if (stop) {\n const deltaHeight = prevHeight - height;\n const stopRect = getDOMRect(stop);\n const outerHeight = height + offset;\n let stopped = false;\n let relativeTop = 0;\n\n if (side === 'top') {\n stopped = stopRect.top - outerHeight < 0;\n relativeTop = stopRect.top - prevHeight - top;\n } else {\n stopped = stopRect.bottom + outerHeight > windowHeight;\n relativeTop = stopRect.bottom - top;\n }\n\n this.setState({ relativeTop, deltaHeight, stopped });\n }\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
2
|
import type { Nullable } from '../../typings/utility-types';
|
|
4
3
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
4
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
5
5
|
import type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';
|
|
6
6
|
export interface StickyProps extends Omit<CommonProps, 'children'> {
|
|
7
7
|
/** Задает сторону залипания. */
|
|
@@ -34,18 +34,6 @@ type DefaultProps = Required<Pick<StickyProps, 'offset'>>;
|
|
|
34
34
|
export declare class Sticky extends React.Component<StickyProps, StickyState> {
|
|
35
35
|
static __KONTUR_REACT_UI__: string;
|
|
36
36
|
static displayName: string;
|
|
37
|
-
static propTypes: {
|
|
38
|
-
children: PropTypes.Requireable<NonNullable<((...args: any[]) => any) | PropTypes.ReactNodeLike>>;
|
|
39
|
-
/**
|
|
40
|
-
* Функция, которая возвращает DOM-элемент, который нельзя пересекать.
|
|
41
|
-
*/
|
|
42
|
-
getStop: PropTypes.Requireable<(...args: any[]) => any>;
|
|
43
|
-
/**
|
|
44
|
-
* Отступ от границы в пикселях
|
|
45
|
-
*/
|
|
46
|
-
offset: PropTypes.Requireable<number>;
|
|
47
|
-
side: PropTypes.Validator<string>;
|
|
48
|
-
};
|
|
49
37
|
static defaultProps: DefaultProps;
|
|
50
38
|
private getProps;
|
|
51
39
|
state: StickyState;
|
|
@@ -53,6 +41,7 @@ export declare class Sticky extends React.Component<StickyProps, StickyState> {
|
|
|
53
41
|
private inner;
|
|
54
42
|
private layoutSubscription;
|
|
55
43
|
private reflowCounter;
|
|
44
|
+
getRootNode: TGetRootNode;
|
|
56
45
|
private setRootNode;
|
|
57
46
|
featureFlags: ReactUIFeatureFlags;
|
|
58
47
|
componentDidMount(): void;
|
|
@@ -2,7 +2,6 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
3
3
|
var _class, _Switcher;
|
|
4
4
|
import React from 'react';
|
|
5
|
-
import PropTypes from 'prop-types';
|
|
6
5
|
import { isKeyArrowHorizontal, isKeyArrowLeft, isKeyEnter } from "../../../lib/events/keyboard/identifiers";
|
|
7
6
|
import { getButtonCorners, Group } from "../../Group";
|
|
8
7
|
import { Button } from "../../Button";
|
|
@@ -10,7 +9,6 @@ import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
|
10
9
|
import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
11
10
|
import { cx } from "../../../lib/theming/Emotion";
|
|
12
11
|
import { rootNode } from "../../../lib/rootNode";
|
|
13
|
-
import { isThemeGTE } from "../../../lib/theming/ThemeHelpers";
|
|
14
12
|
import { styles } from "../Switcher.styles";
|
|
15
13
|
import { getSwitcherTheme } from "../switcherTheme";
|
|
16
14
|
import { mod } from "../helpers";
|
|
@@ -121,6 +119,7 @@ export var Switcher = rootNode(_class = (_Switcher = /*#__PURE__*/function (_Rea
|
|
|
121
119
|
items = _this$props2.items,
|
|
122
120
|
value = _this$props2.value,
|
|
123
121
|
size = _this$props2.size,
|
|
122
|
+
width = _this$props2.width,
|
|
124
123
|
disabled = _this$props2.disabled,
|
|
125
124
|
role = _this$props2.role,
|
|
126
125
|
renderItem = _this$props2.renderItem;
|
|
@@ -145,6 +144,9 @@ export var Switcher = rootNode(_class = (_Switcher = /*#__PURE__*/function (_Rea
|
|
|
145
144
|
corners: getButtonCorners(i === 0, i === items.length - 1)
|
|
146
145
|
};
|
|
147
146
|
var buttonProps = _extends({}, commonButtonProps, customButtonProps);
|
|
147
|
+
if (!buttonProps.width && width) {
|
|
148
|
+
buttonProps.width = '100%';
|
|
149
|
+
}
|
|
148
150
|
var renderDefault = function renderDefault() {
|
|
149
151
|
return _this.renderDefaultItem(label, itemValue, buttonProps, ariaLabel);
|
|
150
152
|
};
|
|
@@ -184,6 +186,7 @@ export var Switcher = rootNode(_class = (_Switcher = /*#__PURE__*/function (_Rea
|
|
|
184
186
|
});
|
|
185
187
|
};
|
|
186
188
|
_proto.renderMain = function renderMain() {
|
|
189
|
+
var _cx;
|
|
187
190
|
var inputProps = {
|
|
188
191
|
type: 'checkbox',
|
|
189
192
|
onKeyDown: this.handleKey,
|
|
@@ -191,37 +194,26 @@ export var Switcher = rootNode(_class = (_Switcher = /*#__PURE__*/function (_Rea
|
|
|
191
194
|
onBlur: this._handleBlur,
|
|
192
195
|
className: styles.input()
|
|
193
196
|
};
|
|
194
|
-
var
|
|
195
|
-
|
|
196
|
-
|
|
197
|
+
var items = /*#__PURE__*/React.createElement(Group, {
|
|
198
|
+
width: '100%'
|
|
199
|
+
}, this._renderItems());
|
|
197
200
|
var captionClassName = cx(styles.caption(this.theme), this.getLabelSizeClassName());
|
|
198
|
-
var wrapperClassName = cx(styles.wrap(),
|
|
199
|
-
var errorClassName = cx(isTheme_5_0 && this.props.error && styles.error(this.theme));
|
|
201
|
+
var wrapperClassName = cx(styles.wrap(), (_cx = {}, _cx[styles.error(this.theme)] = this.props.error, _cx[styles.wrapCustomWidth()] = this.props.width !== undefined, _cx));
|
|
200
202
|
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
201
203
|
rootNodeRef: this.setRootNode
|
|
202
204
|
}, this.props), /*#__PURE__*/React.createElement("div", {
|
|
203
205
|
"data-tid": SwitcherDataTids.root,
|
|
204
|
-
className: styles.root()
|
|
206
|
+
className: styles.root(),
|
|
207
|
+
style: {
|
|
208
|
+
width: this.props.width
|
|
209
|
+
}
|
|
205
210
|
}, this.props.caption ? /*#__PURE__*/React.createElement("div", {
|
|
206
211
|
className: captionClassName
|
|
207
212
|
}, this.props.caption) : null, /*#__PURE__*/React.createElement("div", {
|
|
208
213
|
className: wrapperClassName
|
|
209
|
-
}, /*#__PURE__*/React.createElement("input", inputProps),
|
|
210
|
-
className: errorClassName
|
|
211
|
-
}, items))));
|
|
214
|
+
}, /*#__PURE__*/React.createElement("input", inputProps), items)));
|
|
212
215
|
};
|
|
213
216
|
return Switcher;
|
|
214
217
|
}(React.Component), _Switcher.__KONTUR_REACT_UI__ = 'Switcher', _Switcher.displayName = 'Switcher', _Switcher.defaultProps = {
|
|
215
218
|
role: 'switch'
|
|
216
|
-
}, _Switcher.propTypes = {
|
|
217
|
-
error: PropTypes.bool,
|
|
218
|
-
disabled: PropTypes.bool,
|
|
219
|
-
items: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.string), PropTypes.arrayOf(PropTypes.shape({
|
|
220
|
-
label: PropTypes.string,
|
|
221
|
-
value: PropTypes.string
|
|
222
|
-
}))]).isRequired,
|
|
223
|
-
caption: PropTypes.string,
|
|
224
|
-
value: PropTypes.string,
|
|
225
|
-
onValueChange: PropTypes.func,
|
|
226
|
-
renderItem: PropTypes.func
|
|
227
219
|
}, _Switcher)) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","PropTypes","isKeyArrowHorizontal","isKeyArrowLeft","isKeyEnter","getButtonCorners","Group","Button","ThemeContext","CommonWrapper","cx","rootNode","isThemeGTE","styles","getSwitcherTheme","mod","SwitcherDataTids","root","Switcher","_class","_Switcher","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","state","focusedIndex","selectItem","value","props","onValueChange","_extractPropsFromItem","item","label","_extractValuesFromItems","items","map","_this$_extractPropsFr","_focus","index","setState","handleKey","e","_this$_extractPropsFr2","buttonProps","disabled","preventDefault","move","left","selectedIndex","newFocusedIndex","_getNextFocusedIndex","_this$props","i","_this$_extractPropsFr3","_handleFocus","currentIndex","indexOf","_handleBlur","_renderItems","_this$props2","size","role","renderItem","_this$_extractPropsFr4","ariaLabel","itemValue","customButtonProps","isChecked","commonButtonProps","checked","visuallyFocused","onClick","disableFocus","corners","_extends","renderDefault","renderDefaultItem","createElement","key","getLabelSizeClassName","captionLarge","theme","captionMedium","captionSmall","_inheritsLoose","_proto","prototype","render","_this2","Consumer","Provider","renderMain","inputProps","type","onKeyDown","onFocus","onBlur","className","input","isThemeGTE_5_1","isTheme_5_0","captionClassName","caption","wrapperClassName","wrap","error","error5_1","errorClassName","rootNodeRef","setRootNode","Component","__KONTUR_REACT_UI__","displayName","defaultProps","propTypes","bool","oneOfType","arrayOf","string","shape","isRequired","func"],"sources":["Switcher.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { isKeyArrowHorizontal, isKeyArrowLeft, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { getButtonCorners, Group } from '../Group';\nimport type { ButtonProps } from '../Button';\nimport { Button } from '../Button';\nimport type { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { SizeProp } from '../../lib/types/props';\nimport { isThemeGTE } from '../../lib/theming/ThemeHelpers';\n\nimport { styles } from './Switcher.styles';\nimport { getSwitcherTheme } from './switcherTheme';\nimport { mod } from './helpers';\n\nexport type SwitcherItems = string | SwitcherItem;\n\nexport const SwitcherDataTids = {\n root: 'Switcher__root',\n} as const;\n\nexport interface SwitcherProps extends Pick<HTMLAttributes<unknown>, 'role'>, CommonProps {\n /** Задает список строк или список элементов типа `{ label: string, value: string, buttonProps?: Partial<ButtonProps> }`. */\n items: SwitcherItems[];\n\n /** Устанавливает значение свитчера. */\n value?: string;\n\n /** Задает функцию, которая вызывается при изменении значения свитчера (value). */\n onValueChange?: (value: string) => void;\n\n /** Задает подпись около свитчера. */\n caption?: string;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает функцию отрисовки элемента.\n * @param `label` -\n * @param `value` -\n * @param `buttonProps` -\n * @param `renderDefault` -\n * @param `ariaLabel` -\n */\n renderItem?: (\n label: string,\n value: string,\n buttonProps: ButtonProps,\n renderDefault: () => React.ReactNode,\n ariaLabel?: string,\n ) => React.ReactNode;\n}\n\ntype DefaultProps = Required<Pick<SwitcherProps, 'role'>>;\n\nexport interface SwitcherState {\n focusedIndex: Nullable<number>;\n}\n\ninterface SwitcherItem {\n value: string;\n label: string;\n 'aria-label'?: string;\n buttonProps?: Partial<ButtonProps>;\n}\n\n/**\n * Переключатель `Switcher` — это замена RadioGroup.\n *\n * Не используйте переключатель в качестве навигации, для этого лучше подходят Tabs.\n */\n@rootNode\nexport class Switcher extends React.Component<SwitcherProps, SwitcherState> {\n public static __KONTUR_REACT_UI__ = 'Switcher';\n public static displayName = 'Switcher';\n\n public static defaultProps: DefaultProps = {\n role: 'switch',\n };\n\n public static propTypes = {\n error: PropTypes.bool,\n disabled: PropTypes.bool,\n items: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.string),\n PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n }),\n ),\n ]).isRequired,\n caption: PropTypes.string,\n value: PropTypes.string,\n onValueChange: PropTypes.func,\n renderItem: PropTypes.func,\n };\n\n public state: SwitcherState = {\n focusedIndex: null,\n };\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getSwitcherTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const inputProps = {\n type: 'checkbox',\n onKeyDown: this.handleKey,\n onFocus: this._handleFocus,\n onBlur: this._handleBlur,\n className: styles.input(),\n };\n const isThemeGTE_5_1 = isThemeGTE(this.theme, '5.1');\n const isTheme_5_0 = !isThemeGTE_5_1;\n const items = <Group>{this._renderItems()}</Group>;\n\n const captionClassName = cx(styles.caption(this.theme), this.getLabelSizeClassName());\n const wrapperClassName = cx(styles.wrap(), isThemeGTE_5_1 && this.props.error && styles.error5_1(this.theme));\n const errorClassName = cx(isTheme_5_0 && this.props.error && styles.error(this.theme));\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div data-tid={SwitcherDataTids.root} className={styles.root()}>\n {this.props.caption ? <div className={captionClassName}>{this.props.caption}</div> : null}\n <div className={wrapperClassName}>\n <input {...inputProps} />\n {isThemeGTE_5_1 ? items : <div className={errorClassName}>{items}</div>}\n </div>\n </div>\n </CommonWrapper>\n );\n }\n\n private selectItem = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private _extractPropsFromItem = (item: string | SwitcherItem): SwitcherItem => {\n return typeof item === 'object' ? item : { label: item, value: item };\n };\n\n private _extractValuesFromItems = (): string[] => {\n return this.props.items.map((item) => {\n const { value } = this._extractPropsFromItem(item);\n return value;\n });\n };\n\n private _focus = (index: number) => {\n this.setState({ focusedIndex: index });\n };\n\n private handleKey = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const focusedIndex = this.state.focusedIndex;\n if (typeof focusedIndex !== 'number') {\n return;\n }\n\n if (isKeyEnter(e)) {\n if (this.props.onValueChange) {\n const { value, buttonProps } = this._extractPropsFromItem(this.props.items[focusedIndex]);\n if (!buttonProps?.disabled) {\n this.selectItem(value);\n }\n }\n return;\n }\n\n if (isKeyArrowHorizontal(e)) {\n e.preventDefault();\n this.move(isKeyArrowLeft(e));\n }\n };\n\n private move = (left: boolean) => {\n const selectedIndex = this.state.focusedIndex;\n\n if (typeof selectedIndex !== 'number') {\n return;\n }\n const newFocusedIndex = this._getNextFocusedIndex(left, selectedIndex);\n this._focus(newFocusedIndex);\n };\n\n private _getNextFocusedIndex = (left: boolean, focusedIndex: number): number => {\n const { items, disabled } = this.props;\n if (disabled) {\n return focusedIndex;\n }\n\n for (let i = 1; i < items.length; i++) {\n const index = mod(focusedIndex + (left ? -i : i), items.length);\n const { buttonProps } = this._extractPropsFromItem(items[index]);\n if (!buttonProps?.disabled) {\n return index;\n }\n }\n return focusedIndex;\n };\n\n private _handleFocus = () => {\n const { value } = this.props;\n\n const items = this._extractValuesFromItems();\n const currentIndex = [...items].indexOf(value as string);\n const index = currentIndex > -1 ? currentIndex : 0;\n\n this.setState({ focusedIndex: index });\n };\n\n private _handleBlur = () => {\n this.setState({ focusedIndex: null });\n };\n\n private _renderItems = () => {\n const { items, value, size, disabled, role, renderItem } = this.props;\n return items.map((item, i) => {\n const {\n 'aria-label': ariaLabel,\n label,\n value: itemValue,\n buttonProps: customButtonProps,\n } = this._extractPropsFromItem(item);\n\n const isChecked = value === itemValue;\n const commonButtonProps = {\n 'aria-checked': isChecked,\n role,\n checked: isChecked,\n visuallyFocused: this.state.focusedIndex === i,\n onClick: () => {\n this.selectItem(itemValue);\n },\n disableFocus: true,\n size,\n disabled,\n corners: getButtonCorners(i === 0, i === items.length - 1),\n };\n\n const buttonProps = {\n ...commonButtonProps,\n ...customButtonProps,\n };\n\n const renderDefault = () => this.renderDefaultItem(label, itemValue, buttonProps, ariaLabel);\n\n return renderItem ? renderItem(label, itemValue, buttonProps, renderDefault, ariaLabel) : renderDefault();\n });\n };\n\n private renderDefaultItem = (label: string, value: string, buttonProps: ButtonProps, ariaLabel?: string) => (\n <Button aria-label={ariaLabel} key={value} {...buttonProps}>\n {label}\n </Button>\n );\n\n private getLabelSizeClassName = (): string => {\n switch (this.props.size) {\n case 'large':\n return styles.captionLarge(this.theme);\n case 'medium':\n return styles.captionMedium(this.theme);\n case 'small':\n default:\n return styles.captionSmall(this.theme);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","isKeyArrowHorizontal","isKeyArrowLeft","isKeyEnter","getButtonCorners","Group","Button","ThemeContext","CommonWrapper","cx","rootNode","styles","getSwitcherTheme","mod","SwitcherDataTids","root","Switcher","_class","_Switcher","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","state","focusedIndex","selectItem","value","props","onValueChange","_extractPropsFromItem","item","label","_extractValuesFromItems","items","map","_this$_extractPropsFr","_focus","index","setState","handleKey","e","_this$_extractPropsFr2","buttonProps","disabled","preventDefault","move","left","selectedIndex","newFocusedIndex","_getNextFocusedIndex","_this$props","i","_this$_extractPropsFr3","_handleFocus","currentIndex","indexOf","_handleBlur","_renderItems","_this$props2","size","width","role","renderItem","_this$_extractPropsFr4","ariaLabel","itemValue","customButtonProps","isChecked","commonButtonProps","checked","visuallyFocused","onClick","disableFocus","corners","_extends","renderDefault","renderDefaultItem","createElement","key","getLabelSizeClassName","captionLarge","theme","captionMedium","captionSmall","_inheritsLoose","_proto","prototype","render","_this2","Consumer","Provider","renderMain","_cx","inputProps","type","onKeyDown","onFocus","onBlur","className","input","captionClassName","caption","wrapperClassName","wrap","error","wrapCustomWidth","undefined","rootNodeRef","setRootNode","style","Component","__KONTUR_REACT_UI__","displayName","defaultProps"],"sources":["Switcher.tsx"],"sourcesContent":["import type { HTMLAttributes } from 'react';\nimport React from 'react';\n\nimport { isKeyArrowHorizontal, isKeyArrowLeft, isKeyEnter } from '../../lib/events/keyboard/identifiers';\nimport { getButtonCorners, Group } from '../Group';\nimport type { ButtonProps } from '../Button';\nimport { Button } from '../Button';\nimport type { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport type { SizeProp } from '../../lib/types/props';\n\nimport { styles } from './Switcher.styles';\nimport { getSwitcherTheme } from './switcherTheme';\nimport { mod } from './helpers';\n\nexport type SwitcherItems = string | SwitcherItem;\n\nexport const SwitcherDataTids = {\n root: 'Switcher__root',\n} as const;\n\nexport interface SwitcherProps extends Pick<HTMLAttributes<unknown>, 'role'>, CommonProps {\n /** Задает список элементов в свитчере. Это массив строк или объектов типа `{ label: string, value: string, buttonProps?: Partial<ButtonProps> }` */\n items: SwitcherItems[];\n\n /** Устанавливает значение свитчера. */\n value?: string;\n\n /** Задает функцию, которая вызывается при изменении значения свитчера (value). */\n onValueChange?: (value: string) => void;\n\n /** Задает подпись около свитчера. */\n caption?: string;\n\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Задает размер контрола. */\n size?: SizeProp;\n\n /** Задает ширину контрола. С этим пропом элементы внутри автоматически равномерно растянутся. */\n width?: React.CSSProperties['width'];\n\n /** Делает компонент недоступным. */\n disabled?: boolean;\n\n /** Задает функцию отрисовки элемента. Параметр `renderDefault` - это встроенная дефолтная функция отрисовки элемента, которую можно вызывать в `renderItem`. */\n renderItem?: (\n label: string,\n value: string,\n buttonProps: ButtonProps,\n renderDefault: () => React.ReactNode,\n ariaLabel?: string,\n ) => React.ReactNode;\n}\n\ntype DefaultProps = Required<Pick<SwitcherProps, 'role'>>;\n\nexport interface SwitcherState {\n focusedIndex: Nullable<number>;\n}\n\ninterface SwitcherItem {\n value: string;\n label: string;\n 'aria-label'?: string;\n buttonProps?: Partial<ButtonProps>;\n}\n\n/**\n * Переключатель `Switcher` — это замена RadioGroup.\n *\n * Не используйте переключатель в качестве навигации, для этого лучше подходят Tabs.\n */\n@rootNode\nexport class Switcher extends React.Component<SwitcherProps, SwitcherState> {\n public static __KONTUR_REACT_UI__ = 'Switcher';\n public static displayName = 'Switcher';\n\n public static defaultProps: DefaultProps = {\n role: 'switch',\n };\n\n public state: SwitcherState = {\n focusedIndex: null,\n };\n\n private theme!: Theme;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = getSwitcherTheme(theme);\n return <ThemeContext.Provider value={this.theme}>{this.renderMain()}</ThemeContext.Provider>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const inputProps = {\n type: 'checkbox',\n onKeyDown: this.handleKey,\n onFocus: this._handleFocus,\n onBlur: this._handleBlur,\n className: styles.input(),\n };\n const items = <Group width={'100%'}>{this._renderItems()}</Group>;\n\n const captionClassName = cx(styles.caption(this.theme), this.getLabelSizeClassName());\n const wrapperClassName = cx(styles.wrap(), {\n [styles.error(this.theme)]: this.props.error,\n [styles.wrapCustomWidth()]: this.props.width !== undefined,\n });\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div data-tid={SwitcherDataTids.root} className={styles.root()} style={{ width: this.props.width }}>\n {this.props.caption ? <div className={captionClassName}>{this.props.caption}</div> : null}\n <div className={wrapperClassName}>\n <input {...inputProps} />\n {items}\n </div>\n </div>\n </CommonWrapper>\n );\n }\n\n private selectItem = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private _extractPropsFromItem = (item: string | SwitcherItem): SwitcherItem => {\n return typeof item === 'object' ? item : { label: item, value: item };\n };\n\n private _extractValuesFromItems = (): string[] => {\n return this.props.items.map((item) => {\n const { value } = this._extractPropsFromItem(item);\n return value;\n });\n };\n\n private _focus = (index: number) => {\n this.setState({ focusedIndex: index });\n };\n\n private handleKey = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const focusedIndex = this.state.focusedIndex;\n if (typeof focusedIndex !== 'number') {\n return;\n }\n\n if (isKeyEnter(e)) {\n if (this.props.onValueChange) {\n const { value, buttonProps } = this._extractPropsFromItem(this.props.items[focusedIndex]);\n if (!buttonProps?.disabled) {\n this.selectItem(value);\n }\n }\n return;\n }\n\n if (isKeyArrowHorizontal(e)) {\n e.preventDefault();\n this.move(isKeyArrowLeft(e));\n }\n };\n\n private move = (left: boolean) => {\n const selectedIndex = this.state.focusedIndex;\n\n if (typeof selectedIndex !== 'number') {\n return;\n }\n const newFocusedIndex = this._getNextFocusedIndex(left, selectedIndex);\n this._focus(newFocusedIndex);\n };\n\n private _getNextFocusedIndex = (left: boolean, focusedIndex: number): number => {\n const { items, disabled } = this.props;\n if (disabled) {\n return focusedIndex;\n }\n\n for (let i = 1; i < items.length; i++) {\n const index = mod(focusedIndex + (left ? -i : i), items.length);\n const { buttonProps } = this._extractPropsFromItem(items[index]);\n if (!buttonProps?.disabled) {\n return index;\n }\n }\n return focusedIndex;\n };\n\n private _handleFocus = () => {\n const { value } = this.props;\n\n const items = this._extractValuesFromItems();\n const currentIndex = [...items].indexOf(value as string);\n const index = currentIndex > -1 ? currentIndex : 0;\n\n this.setState({ focusedIndex: index });\n };\n\n private _handleBlur = () => {\n this.setState({ focusedIndex: null });\n };\n\n private _renderItems = () => {\n const { items, value, size, width, disabled, role, renderItem } = this.props;\n\n return items.map((item, i) => {\n const {\n 'aria-label': ariaLabel,\n label,\n value: itemValue,\n buttonProps: customButtonProps,\n } = this._extractPropsFromItem(item);\n\n const isChecked = value === itemValue;\n const commonButtonProps = {\n 'aria-checked': isChecked,\n role,\n checked: isChecked,\n visuallyFocused: this.state.focusedIndex === i,\n onClick: () => {\n this.selectItem(itemValue);\n },\n disableFocus: true,\n size,\n disabled,\n corners: getButtonCorners(i === 0, i === items.length - 1),\n };\n\n const buttonProps = {\n ...commonButtonProps,\n ...customButtonProps,\n };\n\n if (!buttonProps.width && width) {\n buttonProps.width = '100%';\n }\n\n const renderDefault = () => this.renderDefaultItem(label, itemValue, buttonProps, ariaLabel);\n return renderItem ? renderItem(label, itemValue, buttonProps, renderDefault, ariaLabel) : renderDefault();\n });\n };\n\n private renderDefaultItem = (label: string, value: string, buttonProps: ButtonProps, ariaLabel?: string) => (\n <Button aria-label={ariaLabel} key={value} {...buttonProps}>\n {label}\n </Button>\n );\n\n private getLabelSizeClassName = (): string => {\n switch (this.props.size) {\n case 'large':\n return styles.captionLarge(this.theme);\n case 'medium':\n return styles.captionMedium(this.theme);\n case 'small':\n default:\n return styles.captionSmall(this.theme);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import type { HTMLAttributes } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
3
|
import type { ButtonProps } from '../Button';
|
|
5
4
|
import type { Nullable } from '../../typings/utility-types';
|
|
6
5
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
6
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
7
7
|
import type { SizeProp } from '../../lib/types/props';
|
|
8
8
|
export type SwitcherItems = string | SwitcherItem;
|
|
9
9
|
export declare const SwitcherDataTids: {
|
|
10
10
|
readonly root: "Switcher__root";
|
|
11
11
|
};
|
|
12
12
|
export interface SwitcherProps extends Pick<HTMLAttributes<unknown>, 'role'>, CommonProps {
|
|
13
|
-
/** Задает список строк или
|
|
13
|
+
/** Задает список элементов в свитчере. Это массив строк или объектов типа `{ label: string, value: string, buttonProps?: Partial<ButtonProps> }` */
|
|
14
14
|
items: SwitcherItems[];
|
|
15
15
|
/** Устанавливает значение свитчера. */
|
|
16
16
|
value?: string;
|
|
@@ -22,15 +22,11 @@ export interface SwitcherProps extends Pick<HTMLAttributes<unknown>, 'role'>, Co
|
|
|
22
22
|
error?: boolean;
|
|
23
23
|
/** Задает размер контрола. */
|
|
24
24
|
size?: SizeProp;
|
|
25
|
+
/** Задает ширину контрола. С этим пропом элементы внутри автоматически равномерно растянутся. */
|
|
26
|
+
width?: React.CSSProperties['width'];
|
|
25
27
|
/** Делает компонент недоступным. */
|
|
26
28
|
disabled?: boolean;
|
|
27
|
-
/** Задает функцию отрисовки элемента.
|
|
28
|
-
* @param `label` -
|
|
29
|
-
* @param `value` -
|
|
30
|
-
* @param `buttonProps` -
|
|
31
|
-
* @param `renderDefault` -
|
|
32
|
-
* @param `ariaLabel` -
|
|
33
|
-
*/
|
|
29
|
+
/** Задает функцию отрисовки элемента. Параметр `renderDefault` - это встроенная дефолтная функция отрисовки элемента, которую можно вызывать в `renderItem`. */
|
|
34
30
|
renderItem?: (label: string, value: string, buttonProps: ButtonProps, renderDefault: () => React.ReactNode, ariaLabel?: string) => React.ReactNode;
|
|
35
31
|
}
|
|
36
32
|
type DefaultProps = Required<Pick<SwitcherProps, 'role'>>;
|
|
@@ -52,20 +48,9 @@ export declare class Switcher extends React.Component<SwitcherProps, SwitcherSta
|
|
|
52
48
|
static __KONTUR_REACT_UI__: string;
|
|
53
49
|
static displayName: string;
|
|
54
50
|
static defaultProps: DefaultProps;
|
|
55
|
-
static propTypes: {
|
|
56
|
-
error: PropTypes.Requireable<boolean>;
|
|
57
|
-
disabled: PropTypes.Requireable<boolean>;
|
|
58
|
-
items: PropTypes.Validator<NonNullable<NonNullable<(string | null | undefined)[] | (PropTypes.InferProps<{
|
|
59
|
-
label: PropTypes.Requireable<string>;
|
|
60
|
-
value: PropTypes.Requireable<string>;
|
|
61
|
-
}> | null | undefined)[] | null | undefined>>>;
|
|
62
|
-
caption: PropTypes.Requireable<string>;
|
|
63
|
-
value: PropTypes.Requireable<string>;
|
|
64
|
-
onValueChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
65
|
-
renderItem: PropTypes.Requireable<(...args: any[]) => any>;
|
|
66
|
-
};
|
|
67
51
|
state: SwitcherState;
|
|
68
52
|
private theme;
|
|
53
|
+
getRootNode: TGetRootNode;
|
|
69
54
|
private setRootNode;
|
|
70
55
|
render(): React.JSX.Element;
|
|
71
56
|
private renderMain;
|
|
@@ -3,32 +3,30 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _temp
|
|
|
3
3
|
import { css, memoizeStyle } from "../../../lib/theming/Emotion";
|
|
4
4
|
export var styles = memoizeStyle({
|
|
5
5
|
root: function root() {
|
|
6
|
-
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n line-height: normal;\n "])));
|
|
6
|
+
return css(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n line-height: normal;\n "])));
|
|
7
7
|
},
|
|
8
8
|
wrap: function wrap() {
|
|
9
9
|
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n display: inline-block;\n vertical-align: middle;\n "])));
|
|
10
10
|
},
|
|
11
|
+
wrapCustomWidth: function wrapCustomWidth() {
|
|
12
|
+
return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["\n flex-grow: 1;\n "])));
|
|
13
|
+
},
|
|
11
14
|
input: function input() {
|
|
12
|
-
return css(
|
|
15
|
+
return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n height: 0;\n opacity: 0;\n position: absolute;\n width: 0;\n "])));
|
|
13
16
|
},
|
|
14
17
|
caption: function caption(t) {
|
|
15
|
-
return css(
|
|
18
|
+
return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n color: ", ";\n vertical-align: middle;\n display: inline-block;\n "])), t.switcherTextColor);
|
|
16
19
|
},
|
|
17
20
|
captionSmall: function captionSmall(t) {
|
|
18
|
-
return css(
|
|
21
|
+
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n margin-right: ", ";\n font-size: ", ";\n line-height: ", ";\n "])), t.switcherCaptionGapSmall, t.switcherCaptionFontSizeSmall, t.switcherCaptionLineHeightSmall);
|
|
19
22
|
},
|
|
20
23
|
captionMedium: function captionMedium(t) {
|
|
21
|
-
return css(
|
|
24
|
+
return css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteralLoose(["\n margin-right: ", ";\n font-size: ", ";\n line-height: ", ";\n "])), t.switcherCaptionGapMedium, t.switcherCaptionFontSizeMedium, t.switcherCaptionLineHeightMedium);
|
|
22
25
|
},
|
|
23
26
|
captionLarge: function captionLarge(t) {
|
|
24
|
-
return css(
|
|
27
|
+
return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n margin-right: ", ";\n font-size: ", ";\n line-height: ", ";\n "])), t.switcherCaptionGapLarge, t.switcherCaptionFontSizeLarge, t.switcherCaptionLineHeightLarge);
|
|
25
28
|
},
|
|
26
29
|
error: function error(t) {
|
|
27
|
-
var insideWidth = parseInt(t.btnBorderWidth);
|
|
28
|
-
var outsideWidth = parseInt(t.switcherOutlineWidth) - insideWidth + "px";
|
|
29
|
-
return css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteralLoose(["\n border-radius: ", ";\n box-shadow:\n inset 0 0 0 ", "px ", ",\n 0 0 0 ", " ", ";\n "])), t.switcherBorderRadius, insideWidth, t.borderColorError, outsideWidth, t.borderColorError);
|
|
30
|
-
},
|
|
31
|
-
error5_1: function error5_1(t) {
|
|
32
30
|
return css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteralLoose(["\n position: relative;\n\n &:before {\n content: '';\n position: absolute;\n pointer-events: none;\n top: 1px;\n right: 1px;\n bottom: 1px;\n left: 1px;\n z-index: 1;\n border-radius: ", ";\n box-shadow: 0 0 0 ", " ", ";\n }\n "])), t.switcherBorderRadius, t.switcherOutlineWidth, t.borderColorError);
|
|
33
31
|
}
|
|
34
32
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["css","memoizeStyle","styles","root","_templateObject","_taggedTemplateLiteralLoose","wrap","_templateObject2","
|
|
1
|
+
{"version":3,"names":["css","memoizeStyle","styles","root","_templateObject","_taggedTemplateLiteralLoose","wrap","_templateObject2","wrapCustomWidth","_templateObject3","input","_templateObject4","caption","t","_templateObject5","switcherTextColor","captionSmall","_templateObject6","switcherCaptionGapSmall","switcherCaptionFontSizeSmall","switcherCaptionLineHeightSmall","captionMedium","_templateObject7","switcherCaptionGapMedium","switcherCaptionFontSizeMedium","switcherCaptionLineHeightMedium","captionLarge","_templateObject8","switcherCaptionGapLarge","switcherCaptionFontSizeLarge","switcherCaptionLineHeightLarge","error","_templateObject9","switcherBorderRadius","switcherOutlineWidth","borderColorError"],"sources":["Switcher.styles.ts"],"sourcesContent":["import { css, memoizeStyle } from '../../lib/theming/Emotion';\nimport type { Theme } from '../../lib/theming/Theme';\n\nexport const styles = memoizeStyle({\n root() {\n return css`\n display: flex;\n align-items: center;\n line-height: normal;\n `;\n },\n\n wrap() {\n return css`\n display: inline-block;\n vertical-align: middle;\n `;\n },\n\n wrapCustomWidth() {\n return css`\n flex-grow: 1;\n `;\n },\n\n input() {\n return css`\n height: 0;\n opacity: 0;\n position: absolute;\n width: 0;\n `;\n },\n\n caption(t: Theme) {\n return css`\n color: ${t.switcherTextColor};\n vertical-align: middle;\n display: inline-block;\n `;\n },\n\n captionSmall(t: Theme) {\n return css`\n margin-right: ${t.switcherCaptionGapSmall};\n font-size: ${t.switcherCaptionFontSizeSmall};\n line-height: ${t.switcherCaptionLineHeightSmall};\n `;\n },\n\n captionMedium(t: Theme) {\n return css`\n margin-right: ${t.switcherCaptionGapMedium};\n font-size: ${t.switcherCaptionFontSizeMedium};\n line-height: ${t.switcherCaptionLineHeightMedium};\n `;\n },\n\n captionLarge(t: Theme) {\n return css`\n margin-right: ${t.switcherCaptionGapLarge};\n font-size: ${t.switcherCaptionFontSizeLarge};\n line-height: ${t.switcherCaptionLineHeightLarge};\n `;\n },\n\n error(t: Theme) {\n return css`\n position: relative;\n\n &:before {\n content: '';\n position: absolute;\n pointer-events: none;\n top: 1px;\n right: 1px;\n bottom: 1px;\n left: 1px;\n z-index: 1;\n border-radius: ${t.switcherBorderRadius};\n box-shadow: 0 0 0 ${t.switcherOutlineWidth} ${t.borderColorError};\n }\n `;\n },\n});\n"],"mappings":"oQAAA,SAASA,GAAG,EAAEC,YAAY,QAAQ,2BAA2B;;;AAG7D,OAAO,IAAMC,MAAM,GAAGD,YAAY,CAAC;EACjCE,IAAI,WAAAA,KAAA,EAAG;IACL,OAAOH,GAAG,CAAAI,eAAA,KAAAA,eAAA,GAAAC,2BAAA;;;;;EAKZ,CAAC;;EAEDC,IAAI,WAAAA,KAAA,EAAG;IACL,OAAON,GAAG,CAAAO,gBAAA,KAAAA,gBAAA,GAAAF,2BAAA;;;;EAIZ,CAAC;;EAEDG,eAAe,WAAAA,gBAAA,EAAG;IAChB,OAAOR,GAAG,CAAAS,gBAAA,KAAAA,gBAAA,GAAAJ,2BAAA;;;EAGZ,CAAC;;EAEDK,KAAK,WAAAA,MAAA,EAAG;IACN,OAAOV,GAAG,CAAAW,gBAAA,KAAAA,gBAAA,GAAAN,2BAAA;;;;;;EAMZ,CAAC;;EAEDO,OAAO,WAAAA,QAACC,CAAQ,EAAE;IAChB,OAAOb,GAAG,CAAAc,gBAAA,KAAAA,gBAAA,GAAAT,2BAAA;IACCQ,CAAC,CAACE,iBAAiB;;;;EAIhC,CAAC;;EAEDC,YAAY,WAAAA,aAACH,CAAQ,EAAE;IACrB,OAAOb,GAAG,CAAAiB,gBAAA,KAAAA,gBAAA,GAAAZ,2BAAA;IACQQ,CAAC,CAACK,uBAAuB;IAC5BL,CAAC,CAACM,4BAA4B;IAC5BN,CAAC,CAACO,8BAA8B;;EAEnD,CAAC;;EAEDC,aAAa,WAAAA,cAACR,CAAQ,EAAE;IACtB,OAAOb,GAAG,CAAAsB,gBAAA,KAAAA,gBAAA,GAAAjB,2BAAA;IACQQ,CAAC,CAACU,wBAAwB;IAC7BV,CAAC,CAACW,6BAA6B;IAC7BX,CAAC,CAACY,+BAA+B;;EAEpD,CAAC;;EAEDC,YAAY,WAAAA,aAACb,CAAQ,EAAE;IACrB,OAAOb,GAAG,CAAA2B,gBAAA,KAAAA,gBAAA,GAAAtB,2BAAA;IACQQ,CAAC,CAACe,uBAAuB;IAC5Bf,CAAC,CAACgB,4BAA4B;IAC5BhB,CAAC,CAACiB,8BAA8B;;EAEnD,CAAC;;EAEDC,KAAK,WAAAA,MAAClB,CAAQ,EAAE;IACd,OAAOb,GAAG,CAAAgC,gBAAA,KAAAA,gBAAA,GAAA3B,2BAAA;;;;;;;;;;;;IAYWQ,CAAC,CAACoB,oBAAoB;IACnBpB,CAAC,CAACqB,oBAAoB,EAAIrB,CAAC,CAACsB,gBAAgB;;;EAGtE;AACF,CAAC,CAAC","ignoreList":[]}
|