@skbkontur/react-ui 0.0.0-dad43298ae → 0.0.0-db9f11da2a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +280 -0
- package/README.md +7 -7
- package/cjs/components/Autocomplete/Autocomplete.d.ts +18 -26
- package/cjs/components/Autocomplete/Autocomplete.js +64 -46
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +4 -1
- package/cjs/components/Button/Button.js +47 -17
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +6 -0
- package/cjs/components/Button/Button.styles.js +109 -76
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Button/ButtonArrow.js +13 -14
- package/cjs/components/Button/ButtonArrow.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +2 -0
- package/cjs/components/Calendar/Calendar.js +1 -0
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Calendar/CalendarDay.js +18 -2
- package/cjs/components/Calendar/CalendarDay.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.js +7 -15
- package/cjs/components/Calendar/DayCellView.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +2 -0
- package/cjs/components/Center/Center.js +1 -0
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +4 -16
- package/cjs/components/Checkbox/Checkbox.js +16 -32
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +22 -3
- package/cjs/components/ComboBox/ComboBox.js +26 -1
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/cjs/components/CurrencyInput/CurrencyInput.js +6 -25
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyInput/constants.js +1 -2
- package/cjs/components/CurrencyInput/constants.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +21 -28
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +6 -1
- package/cjs/components/DateInput/DateInput.js +45 -17
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js +10 -1
- package/cjs/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +6 -33
- package/cjs/components/DatePicker/DatePicker.js +6 -60
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/cjs/components/DateRangePicker/DateRangePicker.js +61 -23
- package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
- package/cjs/components/DateRangePicker/DateRangePicker.styles.js +13 -18
- package/cjs/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePickerInput.js +4 -8
- package/cjs/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
- package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js +17 -17
- package/cjs/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +2 -47
- package/cjs/components/Dropdown/Dropdown.js +2 -82
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +15 -2
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +13 -8
- package/cjs/components/FxInput/FxInput.js +137 -60
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/FxInput/FxInputRestoreBtn.js +2 -3
- package/cjs/components/FxInput/FxInputRestoreBtn.js.map +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +2 -15
- package/cjs/components/Gapped/Gapped.js +1 -24
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js +1 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +5 -4
- package/cjs/components/Group/Group.js +91 -40
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Group/Group.styles.d.ts +1 -0
- package/cjs/components/Group/Group.styles.js +12 -6
- package/cjs/components/Group/Group.styles.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +2 -0
- package/cjs/components/Hint/Hint.js +1 -0
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +6 -5
- package/cjs/components/Input/Input.js +17 -47
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Input/Input.styles.d.ts +0 -1
- package/cjs/components/Input/Input.styles.js +8 -19
- package/cjs/components/Input/Input.styles.js.map +1 -1
- package/cjs/components/Input/InputLayout/InputLayout.d.ts +1 -0
- package/cjs/components/Input/InputLayout/InputLayout.js +4 -2
- package/cjs/components/Input/InputLayout/InputLayout.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +4 -2
- package/cjs/components/Kebab/Kebab.js +9 -29
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +2 -0
- package/cjs/components/Link/Link.js +15 -1
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.mixins.js +1 -2
- package/cjs/components/Link/Link.mixins.js.map +1 -1
- package/cjs/components/Link/Link.styles.js +3 -2
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +7 -36
- package/cjs/components/Loader/Loader.js +6 -56
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js +107 -78
- package/cjs/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/cjs/components/MaskedInput/FixedIMaskInput.js +3 -2
- package/cjs/components/MaskedInput/FixedIMaskInput.js.map +1 -1
- package/cjs/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/cjs/components/MaskedInput/MaskedInput.js +43 -4
- package/cjs/components/MaskedInput/MaskedInput.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +2 -12
- package/cjs/components/MenuItem/MenuItem.js +2 -22
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.styles.d.ts +1 -0
- package/cjs/components/MiniModal/MiniModal.styles.js +14 -7
- package/cjs/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/cjs/components/MiniModal/MiniModalBody.js +17 -2
- package/cjs/components/MiniModal/MiniModalBody.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +2 -1
- package/cjs/components/Modal/Modal.styles.js +40 -32
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +2 -0
- package/cjs/components/Modal/ModalBody.js +1 -0
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +5 -0
- package/cjs/components/Modal/ModalHeader.js +8 -1
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/ModalSeparator.js +1 -1
- package/cjs/components/Modal/ModalSeparator.js.map +1 -1
- package/cjs/components/Paging/DotsIcon.d.ts +3 -0
- package/cjs/components/Paging/DotsIcon.js +13 -0
- package/cjs/components/Paging/DotsIcon.js.map +1 -0
- package/cjs/components/Paging/ForwardIcon.d.ts +3 -0
- package/cjs/components/Paging/ForwardIcon.js +13 -1
- package/cjs/components/Paging/ForwardIcon.js.map +1 -1
- package/cjs/components/Paging/NavigationHelper.d.ts +3 -2
- package/cjs/components/Paging/NavigationHelper.js +8 -6
- package/cjs/components/Paging/NavigationHelper.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +13 -2
- package/cjs/components/Paging/Paging.js +120 -50
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.d.ts +24 -1
- package/cjs/components/Paging/Paging.styles.js +151 -22
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/Paging/PagingHelper.d.ts +1 -1
- package/cjs/components/Paging/PagingHelper.js +18 -11
- package/cjs/components/Paging/PagingHelper.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +5 -12
- package/cjs/components/PasswordInput/PasswordInput.js +21 -32
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +4 -1
- package/cjs/components/Radio/Radio.js +7 -4
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/cjs/components/RadioGroup/RadioGroup.js +19 -1
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
- package/cjs/components/RadioGroup/RadioGroup.styles.js +10 -4
- package/cjs/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +2 -9
- package/cjs/components/ScrollContainer/ScrollContainer.js +2 -11
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +7 -1
- package/cjs/components/Select/Select.js +13 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.js +4 -2
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +3 -1
- package/cjs/components/SidePage/SidePage.styles.js +52 -38
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +2 -0
- package/cjs/components/SidePage/SidePageBody.js +1 -0
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +2 -0
- package/cjs/components/SidePage/SidePageContainer.js +1 -0
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +2 -0
- package/cjs/components/SidePage/SidePageFooter.js +1 -0
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +12 -2
- package/cjs/components/SidePage/SidePageHeader.js +63 -19
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +33 -3
- package/cjs/components/SingleToast/SingleToast.js +58 -3
- package/cjs/components/SingleToast/SingleToast.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +2 -18
- package/cjs/components/Spinner/Spinner.js +2 -32
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +5 -13
- package/cjs/components/Sticky/Sticky.js +12 -18
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +6 -21
- package/cjs/components/Switcher/Switcher.js +11 -20
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -0
- package/cjs/components/Switcher/Switcher.styles.js +17 -9
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Tabs/Indicator.d.ts +2 -0
- package/cjs/components/Tabs/Indicator.js +1 -0
- package/cjs/components/Tabs/Indicator.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +2 -0
- package/cjs/components/Tabs/Tab.js +1 -0
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.d.ts +2 -0
- package/cjs/components/Tabs/Tabs.js +1 -0
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +10 -46
- package/cjs/components/Textarea/Textarea.js +23 -60
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Textarea/Textarea.styles.js +3 -2
- package/cjs/components/Textarea/Textarea.styles.js.map +1 -1
- package/cjs/components/Textarea/TextareaCounter.js +2 -13
- package/cjs/components/Textarea/TextareaCounter.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +62 -13
- package/cjs/components/Toast/Toast.js +119 -12
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/ToastStatic.d.ts +3 -2
- package/cjs/components/Toast/ToastStatic.js.map +1 -1
- package/cjs/components/Toast/ToastView.d.ts +8 -16
- package/cjs/components/Toast/ToastView.js +19 -22
- package/cjs/components/Toast/ToastView.js.map +1 -1
- package/cjs/components/Toast/ToastView.styles.d.ts +4 -0
- package/cjs/components/Toast/ToastView.styles.js +43 -9
- package/cjs/components/Toast/ToastView.styles.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +4 -11
- package/cjs/components/Toggle/Toggle.js +4 -14
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +2 -0
- package/cjs/components/Token/Token.js +1 -0
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +8 -3
- package/cjs/components/TokenInput/TokenInput.js +44 -30
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +12 -3
- package/cjs/components/TokenInput/TokenInputMenu.js +23 -1
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +14 -8
- package/cjs/components/Tooltip/Tooltip.js +102 -17
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/cjs/components/Tooltip/Tooltip.styles.js +50 -12
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js +1 -0
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js +16 -7
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js +27 -9
- package/cjs/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js +1 -0
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/ComponentTable.js +2 -3
- package/cjs/internal/ComponentTable.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/cjs/internal/CustomComboBox/ComboBoxView.js +50 -7
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
- package/cjs/internal/CustomComboBox/CustomComboBox.js +20 -5
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
- package/cjs/internal/CustomComboBox/getComboBoxTheme.js +10 -7
- package/cjs/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +0 -10
- package/cjs/internal/DateSelect/DateSelect.js +13 -19
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/FocusTrap/FocusTrap.d.ts +2 -0
- package/cjs/internal/FocusTrap/FocusTrap.js +1 -0
- package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +1 -0
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +4 -3
- package/cjs/internal/InputLikeText/InputLikeText.js +13 -14
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
- package/cjs/internal/InputLikeText/InputLikeText.styles.js +12 -4
- package/cjs/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js +235 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js +10 -0
- package/cjs/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -0
- package/cjs/internal/Menu/Menu.d.ts +2 -0
- package/cjs/internal/Menu/Menu.js +1 -0
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +2 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +1 -0
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +43 -60
- package/cjs/internal/Popup/Popup.js +41 -81
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.d.ts +23 -33
- package/cjs/internal/Popup/PopupPin.js +2 -35
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/Popup/PopupPinNew.d.ts +31 -0
- package/cjs/internal/Popup/PopupPinNew.js +180 -0
- package/cjs/internal/Popup/PopupPinNew.js.map +1 -0
- package/cjs/internal/Popup/PopupPinNew.styles.d.ts +7 -0
- package/cjs/internal/Popup/PopupPinNew.styles.js +33 -0
- package/cjs/internal/Popup/PopupPinNew.styles.js.map +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/cjs/internal/PopupMenu/PopupMenu.js +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +0 -9
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +2 -3
- package/cjs/internal/RenderLayer/RenderLayer.js +3 -12
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.js +20 -16
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/Playground.styles.js +5 -8
- package/cjs/internal/ThemePlayground/Playground.styles.js.map +1 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js +12 -1
- package/cjs/internal/ThemePlayground/ShowcaseGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/SizesGroup.js +4 -4
- package/cjs/internal/ThemePlayground/SizesGroup.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/VariableValue.js +4 -4
- package/cjs/internal/ThemePlayground/VariableValue.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +3 -3
- package/cjs/internal/ZIndex/ZIndex.js +5 -1
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js +16 -0
- package/cjs/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -0
- package/cjs/internal/themes/BasicTheme.d.ts +125 -20
- package/cjs/internal/themes/BasicTheme.js +172 -25
- package/cjs/internal/themes/BasicTheme.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_2.js +1 -1
- package/cjs/internal/themes/DarkTheme5_2.js.map +1 -1
- package/cjs/internal/themes/DarkTheme5_3.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_3.js +13 -0
- package/cjs/internal/themes/DarkTheme5_3.js.map +1 -0
- package/cjs/internal/themes/DarkTheme5_4.d.ts +1 -0
- package/cjs/internal/themes/DarkTheme5_4.js +18 -0
- package/cjs/internal/themes/DarkTheme5_4.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_3.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_3.js +13 -0
- package/cjs/internal/themes/LightTheme5_3.js.map +1 -0
- package/cjs/internal/themes/LightTheme5_4.d.ts +1 -0
- package/cjs/internal/themes/LightTheme5_4.js +18 -0
- package/cjs/internal/themes/LightTheme5_4.js.map +1 -0
- package/cjs/internal/themes/consts.d.ts +8 -0
- package/cjs/internal/themes/consts.js +8 -0
- package/cjs/internal/themes/consts.js.map +1 -0
- package/cjs/lib/__stories__/Blink.creevey.mts +90 -0
- package/cjs/lib/blink.d.ts +15 -0
- package/cjs/lib/blink.js +65 -0
- package/cjs/lib/blink.js.map +1 -0
- package/cjs/lib/date/InternalDateGetter.d.ts +1 -1
- package/cjs/lib/date/InternalDateGetter.js +8 -1
- package/cjs/lib/date/InternalDateGetter.js.map +1 -1
- package/cjs/lib/delay.mts +3 -0
- package/cjs/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +23 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/cjs/lib/forwardRefAndName.d.ts +1 -1
- package/cjs/lib/forwardRefAndName.js +0 -1
- package/cjs/lib/forwardRefAndName.js.map +1 -1
- package/cjs/lib/getMenuPositions.d.ts +21 -1
- package/cjs/lib/getMenuPositions.js +45 -8
- package/cjs/lib/getMenuPositions.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -1
- package/cjs/lib/rootNode/rootNodeDecorator.js +1 -0
- package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/cjs/lib/size/SizeControlContext.d.ts +6 -0
- package/cjs/lib/size/SizeControlContext.js +16 -0
- package/cjs/lib/size/SizeControlContext.js.map +1 -0
- package/cjs/lib/size/SizeDecorator.d.ts +33 -0
- package/cjs/lib/size/SizeDecorator.js +41 -0
- package/cjs/lib/size/SizeDecorator.js.map +1 -0
- package/cjs/lib/size/constants.d.ts +2 -0
- package/cjs/lib/size/constants.js +3 -0
- package/cjs/lib/size/constants.js.map +1 -0
- package/cjs/lib/size/index.d.ts +1 -0
- package/cjs/lib/size/index.js +1 -0
- package/cjs/lib/size/index.js.map +1 -0
- package/cjs/lib/size/useSizeControl.d.ts +2 -0
- package/cjs/lib/size/useSizeControl.js +10 -0
- package/cjs/lib/size/useSizeControl.js.map +1 -0
- package/cjs/lib/theming/ThemeHelpers.d.ts +1 -1
- package/cjs/lib/theming/ThemeHelpers.js.map +1 -1
- package/cjs/lib/theming/ThemeVersions.d.ts +1 -1
- package/cjs/lib/theming/ThemeVersions.js.map +1 -1
- package/cjs/lib/theming/themes/DarkTheme.d.ts +2 -0
- package/cjs/lib/theming/themes/DarkTheme.js +6 -2
- package/cjs/lib/theming/themes/DarkTheme.js.map +1 -1
- package/cjs/lib/theming/themes/LightTheme.d.ts +2 -0
- package/cjs/lib/theming/themes/LightTheme.js +6 -2
- package/cjs/lib/theming/themes/LightTheme.js.map +1 -1
- package/cjs/lib/utils.d.ts +18 -1
- package/cjs/lib/utils.js +40 -4
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/test-setup.d.ts +1 -0
- package/cjs/vitest.config.d.ts +2 -0
- package/components/Autocomplete/Autocomplete/Autocomplete.js +63 -51
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +18 -26
- package/components/Button/Button/Button.js +45 -24
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +4 -1
- package/components/Button/Button.styles/Button.styles.js +79 -61
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +6 -0
- package/components/Button/ButtonArrow/ButtonArrow.js +1 -3
- package/components/Button/ButtonArrow/ButtonArrow.js.map +1 -1
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +2 -0
- package/components/Calendar/CalendarDay/CalendarDay.js +9 -2
- package/components/Calendar/CalendarDay/CalendarDay.js.map +1 -1
- package/components/Calendar/DayCellView/DayCellView.js +6 -10
- package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +2 -0
- package/components/Checkbox/Checkbox/Checkbox.js +12 -24
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +4 -16
- package/components/ComboBox/ComboBox/ComboBox.js +2 -1
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +22 -3
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +13 -36
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +6 -24
- package/components/CurrencyInput/constants/constants.js +0 -1
- package/components/CurrencyInput/constants/constants.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +10 -22
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/DateInput/DateInput/DateInput.js +34 -24
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +6 -1
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js +2 -2
- package/components/DateInput/helpers/InternalDateMediator/InternalDateMediator.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator.d.ts +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +1 -32
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +6 -33
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js +41 -22
- package/components/DateRangePicker/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js +12 -15
- package/components/DateRangePicker/DateRangePicker.styles/DateRangePicker.styles.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.styles.d.ts +0 -1
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js +5 -8
- package/components/DateRangePicker/DateRangePickerInput/DateRangePickerInput.js.map +1 -1
- package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js +16 -15
- package/components/DateRangePicker/helpers/validateDateRangePicker/validateDateRangePicker.js.map +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js +1 -47
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +2 -47
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +4 -2
- package/components/FileUploader/FileUploader/FileUploader.js +8 -2
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FxInput/FxInput/FxInput.js +122 -70
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +13 -8
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js +2 -2
- package/components/FxInput/FxInputRestoreBtn/FxInputRestoreBtn.js.map +1 -1
- package/components/Gapped/Gapped/Gapped.js +1 -15
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +2 -15
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/components/Group/Group/Group.js +64 -28
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +5 -4
- package/components/Group/Group.styles/Group.styles.js +9 -6
- package/components/Group/Group.styles/Group.styles.js.map +1 -1
- package/components/Group/Group.styles.d.ts +1 -0
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +2 -0
- package/components/Input/Input/Input.js +23 -52
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +6 -5
- package/components/Input/Input.styles/Input.styles.js +9 -13
- package/components/Input/Input.styles/Input.styles.js.map +1 -1
- package/components/Input/Input.styles.d.ts +0 -1
- package/components/Input/InputLayout/InputLayout/InputLayout.js +5 -2
- package/components/Input/InputLayout/InputLayout/InputLayout.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +8 -26
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +4 -2
- package/components/Link/Link/Link.js +8 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +2 -0
- package/components/Link/Link.mixins/Link.mixins.js +1 -1
- package/components/Link/Link.mixins/Link.mixins.js.map +1 -1
- package/components/Link/Link.styles/Link.styles.js +1 -1
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Loader/Loader/Loader.js +2 -34
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +7 -36
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js +81 -66
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.d.ts +1 -0
- package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js +3 -2
- package/components/MaskedInput/FixedIMaskInput/FixedIMaskInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput/MaskedInput.js +28 -2
- package/components/MaskedInput/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.d.ts +9 -0
- package/components/MenuItem/MenuItem/MenuItem.js +1 -12
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +2 -12
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js +10 -7
- package/components/MiniModal/MiniModal.styles/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.d.ts +1 -0
- package/components/MiniModal/MiniModalBody/MiniModalBody.js +13 -5
- package/components/MiniModal/MiniModalBody/MiniModalBody.js.map +1 -1
- package/components/Modal/Modal.styles/Modal.styles.js +32 -29
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +2 -1
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +2 -0
- package/components/Modal/ModalHeader/ModalHeader.js +3 -1
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +5 -0
- package/components/Modal/ModalSeparator/ModalSeparator.js +1 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- package/components/Paging/DotsIcon/DotsIcon.js +14 -0
- package/components/Paging/DotsIcon/DotsIcon.js.map +1 -0
- package/components/Paging/DotsIcon/package.json +6 -0
- package/components/Paging/DotsIcon.d.ts +3 -0
- package/components/Paging/ForwardIcon/ForwardIcon.js +15 -1
- package/components/Paging/ForwardIcon/ForwardIcon.js.map +1 -1
- package/components/Paging/ForwardIcon.d.ts +3 -0
- package/components/Paging/NavigationHelper/NavigationHelper.js +9 -8
- package/components/Paging/NavigationHelper/NavigationHelper.js.map +1 -1
- package/components/Paging/NavigationHelper.d.ts +3 -2
- package/components/Paging/Paging/Paging.js +96 -47
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +13 -2
- package/components/Paging/Paging.styles/Paging.styles.js +77 -16
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Paging/Paging.styles.d.ts +24 -1
- package/components/Paging/PagingHelper/PagingHelper.js +16 -8
- package/components/Paging/PagingHelper/PagingHelper.js.map +1 -1
- package/components/Paging/PagingHelper.d.ts +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js +13 -25
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +5 -12
- package/components/Radio/Radio/Radio.js +7 -7
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +4 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js +23 -17
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js +7 -4
- package/components/RadioGroup/RadioGroup.styles/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.d.ts +1 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -9
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +2 -9
- package/components/Select/Select/Select.js +17 -15
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +7 -1
- package/components/SidePage/SidePage/SidePage.js +3 -3
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +41 -35
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +3 -1
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +2 -0
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +2 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +2 -0
- package/components/SidePage/SidePageHeader/SidePageHeader.js +62 -35
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +12 -2
- package/components/SingleToast/SingleToast/SingleToast.js +37 -12
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +33 -3
- package/components/Spinner/Spinner/Spinner.js +1 -18
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +2 -18
- package/components/Sticky/Sticky/Sticky.js +10 -14
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +5 -13
- package/components/Switcher/Switcher/Switcher.js +19 -16
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +6 -21
- package/components/Switcher/Switcher.styles/Switcher.styles.js +12 -9
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -0
- package/components/Tabs/Indicator/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.d.ts +2 -0
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +2 -0
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +2 -0
- package/components/Textarea/Textarea/Textarea.js +19 -52
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +10 -46
- package/components/Textarea/Textarea.styles/Textarea.styles.js +1 -1
- package/components/Textarea/Textarea.styles/Textarea.styles.js.map +1 -1
- package/components/Textarea/TextareaCounter/TextareaCounter.js +1 -11
- package/components/Textarea/TextareaCounter/TextareaCounter.js.map +1 -1
- package/components/Toast/Toast/Toast.js +93 -32
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +62 -13
- package/components/Toast/ToastStatic/ToastStatic.js.map +1 -1
- package/components/Toast/ToastStatic.d.ts +3 -2
- package/components/Toast/ToastView/ToastView.js +20 -22
- package/components/Toast/ToastView/ToastView.js.map +1 -1
- package/components/Toast/ToastView.d.ts +8 -16
- package/components/Toast/ToastView.styles/ToastView.styles.js +17 -5
- package/components/Toast/ToastView.styles/ToastView.styles.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +4 -0
- package/components/Toggle/Toggle/Toggle.js +11 -20
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +4 -11
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +2 -0
- package/components/TokenInput/TokenInput/TokenInput.js +49 -43
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +8 -3
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +16 -6
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +12 -3
- package/components/Tooltip/Tooltip/Tooltip.js +77 -26
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +14 -8
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +22 -4
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.d.ts +7 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +4 -2
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js +21 -7
- package/internal/ClearCrossIcon/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.d.ts +1 -0
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js +14 -5
- package/internal/ClearCrossIcon/ClearCrossIcon.styles/ClearCrossIcon.styles.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.d.ts +3 -0
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +2 -0
- package/internal/ComponentTable/ComponentTable.js +0 -2
- package/internal/ComponentTable/ComponentTable.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +72 -41
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +12 -4
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +13 -7
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +11 -4
- package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js +5 -3
- package/internal/CustomComboBox/getComboBoxTheme/getComboBoxTheme.js.map +1 -1
- package/internal/CustomComboBox/getComboBoxTheme.d.ts +2 -1
- package/internal/DateSelect/DateSelect/DateSelect.js +4 -11
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +0 -10
- package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/FocusTrap/FocusTrap.d.ts +2 -0
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +17 -28
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +4 -3
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js +7 -4
- package/internal/InputLikeText/InputLikeText.styles/InputLikeText.styles.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles.d.ts +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js +249 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout/package.json +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.d.ts +37 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js +8 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/InternalTextareaWithLayout.styles.js.map +1 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles/package.json +6 -0
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.d.ts +3 -0
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +2 -0
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +2 -0
- package/internal/Popup/Popup/Popup.js +23 -69
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +43 -60
- package/internal/Popup/PopupPin/PopupPin.js +1 -34
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +23 -33
- package/internal/Popup/PopupPinNew/PopupPinNew.js +146 -0
- package/internal/Popup/PopupPinNew/PopupPinNew.js.map +1 -0
- package/internal/Popup/PopupPinNew/package.json +6 -0
- package/internal/Popup/PopupPinNew.d.ts +31 -0
- package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js +20 -0
- package/internal/Popup/PopupPinNew.styles/PopupPinNew.styles.js.map +1 -0
- package/internal/Popup/PopupPinNew.styles/package.json +6 -0
- package/internal/Popup/PopupPinNew.styles.d.ts +7 -0
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +2 -0
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +0 -8
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.d.ts +0 -6
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +3 -11
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +2 -3
- package/internal/ThemePlayground/Playground/Playground.js +21 -18
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js +4 -4
- package/internal/ThemePlayground/Playground.styles/Playground.styles.js.map +1 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js +6 -1
- package/internal/ThemePlayground/ShowcaseGroup/ShowcaseGroup.js.map +1 -1
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js +4 -4
- package/internal/ThemePlayground/SizesGroup/SizesGroup.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +2 -2
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/VariableValue/VariableValue.js +4 -4
- package/internal/ThemePlayground/VariableValue/VariableValue.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js +8 -10
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +3 -3
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js +21 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/UiMenuDots3HIcon16Regular.js.map +1 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular/package.json +6 -0
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.d.ts +2 -0
- package/internal/themes/BasicTheme/BasicTheme.js +185 -30
- package/internal/themes/BasicTheme/BasicTheme.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +125 -20
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js +3 -3
- package/internal/themes/DarkTheme5_2/DarkTheme5_2.js.map +1 -1
- package/internal/themes/DarkTheme5_3/DarkTheme5_3.js +16 -0
- package/internal/themes/DarkTheme5_3/DarkTheme5_3.js.map +1 -0
- package/internal/themes/DarkTheme5_3/package.json +6 -0
- package/internal/themes/DarkTheme5_3.d.ts +1 -0
- package/internal/themes/DarkTheme5_4/DarkTheme5_4.js +17 -0
- package/internal/themes/DarkTheme5_4/DarkTheme5_4.js.map +1 -0
- package/internal/themes/DarkTheme5_4/package.json +6 -0
- package/internal/themes/DarkTheme5_4.d.ts +1 -0
- package/internal/themes/LightTheme5_3/LightTheme5_3.js +16 -0
- package/internal/themes/LightTheme5_3/LightTheme5_3.js.map +1 -0
- package/internal/themes/LightTheme5_3/package.json +6 -0
- package/internal/themes/LightTheme5_3.d.ts +1 -0
- package/internal/themes/LightTheme5_4/LightTheme5_4.js +17 -0
- package/internal/themes/LightTheme5_4/LightTheme5_4.js.map +1 -0
- package/internal/themes/LightTheme5_4/package.json +6 -0
- package/internal/themes/LightTheme5_4.d.ts +1 -0
- package/internal/themes/consts/consts.js +9 -0
- package/internal/themes/consts/consts.js.map +1 -0
- package/internal/themes/consts/package.json +6 -0
- package/internal/themes/consts.d.ts +8 -0
- package/lib/__stories__/Blink.creevey.mts +90 -0
- package/lib/blink/blink.js +63 -0
- package/lib/blink/blink.js.map +1 -0
- package/lib/blink/package.json +6 -0
- package/lib/blink.d.ts +15 -0
- package/lib/date/InternalDateGetter/InternalDateGetter.js +4 -1
- package/lib/date/InternalDateGetter/InternalDateGetter.js.map +1 -1
- package/lib/date/InternalDateGetter.d.ts +1 -1
- package/lib/delay.d.mts +1 -0
- package/lib/delay.mts +3 -0
- package/lib/featureFlagsContext/FeatureFlagsHelpers.d.ts +11 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +12 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.d.ts +11 -0
- package/lib/forwardRefAndName/forwardRefAndName.js.map +1 -1
- package/lib/forwardRefAndName.d.ts +1 -1
- package/lib/getMenuPositions/getMenuPositions.js +33 -4
- package/lib/getMenuPositions/getMenuPositions.js.map +1 -1
- package/lib/getMenuPositions.d.ts +21 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +2 -1
- package/lib/size/SizeControlContext/SizeControlContext.js +7 -0
- package/lib/size/SizeControlContext/SizeControlContext.js.map +1 -0
- package/lib/size/SizeControlContext/package.json +6 -0
- package/lib/size/SizeControlContext.d.ts +6 -0
- package/lib/size/SizeDecorator/SizeDecorator.js +41 -0
- package/lib/size/SizeDecorator/SizeDecorator.js.map +1 -0
- package/lib/size/SizeDecorator/package.json +6 -0
- package/lib/size/SizeDecorator.d.ts +33 -0
- package/lib/size/constants/constants.js +1 -0
- package/lib/size/constants/constants.js.map +1 -0
- package/lib/size/constants/package.json +6 -0
- package/lib/size/constants.d.ts +2 -0
- package/lib/size/index/index.js +1 -0
- package/lib/size/index/index.js.map +1 -0
- package/lib/size/index/package.json +6 -0
- package/lib/size/index.d.ts +1 -0
- package/lib/size/package.json +6 -0
- package/lib/size/useSizeControl/package.json +6 -0
- package/lib/size/useSizeControl/useSizeControl.js +7 -0
- package/lib/size/useSizeControl/useSizeControl.js.map +1 -0
- package/lib/size/useSizeControl.d.ts +2 -0
- package/lib/theming/ThemeHelpers/ThemeHelpers.js.map +1 -1
- package/lib/theming/ThemeHelpers.d.ts +1 -1
- package/lib/theming/ThemeVersions/ThemeVersions.js.map +1 -1
- package/lib/theming/ThemeVersions.d.ts +1 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js +5 -1
- package/lib/theming/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +2 -0
- package/lib/theming/themes/LightTheme/LightTheme.js +5 -1
- package/lib/theming/themes/LightTheme/LightTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +2 -0
- package/lib/utils/utils.js +33 -2
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +18 -1
- package/package.json +19 -36
- package/test-setup.d.ts +1 -0
- package/vitest.config.d.ts +2 -0
- package/cjs/components/Autocomplete/Autocomplete.md +0 -113
- package/cjs/components/Button/Button.md +0 -261
- package/cjs/components/Calendar/Calendar.md +0 -276
- package/cjs/components/Calendar/CalendarDay.md +0 -70
- package/cjs/components/Center/Center.md +0 -26
- package/cjs/components/Checkbox/Checkbox.md +0 -171
- package/cjs/components/ComboBox/ComboBox.md +0 -574
- package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
- package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/cjs/components/DateInput/DateInput.md +0 -111
- package/cjs/components/DatePicker/DatePicker.md +0 -368
- package/cjs/components/Dropdown/Dropdown.md +0 -45
- package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
- package/cjs/components/FileUploader/FileUploader.md +0 -131
- package/cjs/components/FxInput/FxInput.md +0 -31
- package/cjs/components/Gapped/Gapped.md +0 -44
- package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
- package/cjs/components/Group/Group.md +0 -19
- package/cjs/components/Hint/Hint.md +0 -86
- package/cjs/components/Input/Input.md +0 -87
- package/cjs/components/Kebab/Kebab.md +0 -306
- package/cjs/components/Link/Link.md +0 -182
- package/cjs/components/Loader/Loader.md +0 -33
- package/cjs/components/MaskedInput/MaskedInput.md +0 -114
- package/cjs/components/MenuFooter/MenuFooter.md +0 -27
- package/cjs/components/MenuHeader/MenuHeader.md +0 -35
- package/cjs/components/MenuItem/MenuItem.md +0 -139
- package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
- package/cjs/components/MiniModal/MiniModal.md +0 -231
- package/cjs/components/Modal/Modal.md +0 -56
- package/cjs/components/Paging/Paging.md +0 -57
- package/cjs/components/PasswordInput/PasswordInput.md +0 -29
- package/cjs/components/Radio/Radio.md +0 -57
- package/cjs/components/RadioGroup/RadioGroup.md +0 -44
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
- package/cjs/components/Select/Select.md +0 -113
- package/cjs/components/SidePage/SidePage.md +0 -65
- package/cjs/components/SingleToast/SingleToast.md +0 -36
- package/cjs/components/Spinner/Spinner.md +0 -36
- package/cjs/components/Sticky/Sticky.md +0 -28
- package/cjs/components/Switcher/Switcher.md +0 -111
- package/cjs/components/Tabs/Tab.md +0 -73
- package/cjs/components/Tabs/Tabs.md +0 -54
- package/cjs/components/Textarea/Textarea.md +0 -58
- package/cjs/components/Toast/Toast.md +0 -69
- package/cjs/components/Toggle/Toggle.md +0 -110
- package/cjs/components/Token/Token.md +0 -131
- package/cjs/components/TokenInput/TokenInput.md +0 -308
- package/cjs/components/Tooltip/Tooltip.md +0 -322
- package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
- package/cjs/internal/DataTids/DATATIDS.md +0 -12
- package/cjs/internal/DataTids/DataTids.d.ts +0 -12
- package/cjs/internal/DataTids/DataTids.js +0 -50
- package/cjs/internal/DataTids/DataTids.js.map +0 -1
- package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/cjs/internal/DataTids/DataTids.styles.js +0 -42
- package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
- package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/cjs/internal/DataTids/componentsDataTids.js +0 -15
- package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
- package/cjs/internal/ThemePlayground/Playground.md +0 -7
- package/cjs/lib/SSRSafe.d.ts +0 -2
- package/cjs/lib/SSRSafe.js +0 -5
- package/cjs/lib/SSRSafe.js.map +0 -1
- package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
- package/cjs/lib/theming/ThemeContext.md +0 -265
- package/components/Autocomplete/Autocomplete.md +0 -113
- package/components/Button/Button.md +0 -261
- package/components/Calendar/Calendar.md +0 -276
- package/components/Calendar/CalendarDay.md +0 -70
- package/components/Center/Center.md +0 -26
- package/components/Checkbox/Checkbox.md +0 -171
- package/components/ComboBox/ComboBox.md +0 -574
- package/components/CurrencyInput/CurrencyInput.md +0 -39
- package/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/components/DateInput/DateInput.md +0 -111
- package/components/DatePicker/DatePicker.md +0 -368
- package/components/Dropdown/Dropdown.md +0 -45
- package/components/DropdownMenu/DropdownMenu.md +0 -290
- package/components/FileUploader/FileUploader.md +0 -131
- package/components/FxInput/FxInput.md +0 -31
- package/components/Gapped/Gapped.md +0 -44
- package/components/GlobalLoader/GlobalLoader.md +0 -97
- package/components/Group/Group.md +0 -19
- package/components/Hint/Hint.md +0 -86
- package/components/Input/Input.md +0 -87
- package/components/Kebab/Kebab.md +0 -306
- package/components/Link/Link.md +0 -182
- package/components/Loader/Loader.md +0 -33
- package/components/MaskedInput/MaskedInput.md +0 -114
- package/components/MenuFooter/MenuFooter.md +0 -27
- package/components/MenuHeader/MenuHeader.md +0 -35
- package/components/MenuItem/MenuItem.md +0 -139
- package/components/MenuSeparator/MenuSeparator.md +0 -14
- package/components/MiniModal/MiniModal.md +0 -231
- package/components/Modal/Modal.md +0 -56
- package/components/Paging/Paging.md +0 -57
- package/components/PasswordInput/PasswordInput.md +0 -29
- package/components/Radio/Radio.md +0 -57
- package/components/RadioGroup/RadioGroup.md +0 -44
- package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/components/ScrollContainer/ScrollContainer.md +0 -224
- package/components/Select/Select.md +0 -113
- package/components/SidePage/SidePage.md +0 -65
- package/components/SingleToast/SingleToast.md +0 -36
- package/components/Spinner/Spinner.md +0 -36
- package/components/Sticky/Sticky.md +0 -28
- package/components/Switcher/Switcher.md +0 -111
- package/components/Tabs/Tab.md +0 -73
- package/components/Tabs/Tabs.md +0 -54
- package/components/Textarea/Textarea.md +0 -58
- package/components/Toast/Toast.md +0 -69
- package/components/Toggle/Toggle.md +0 -110
- package/components/Token/Token.md +0 -131
- package/components/TokenInput/TokenInput.md +0 -308
- package/components/Tooltip/Tooltip.md +0 -322
- package/components/TooltipMenu/TooltipMenu.md +0 -241
- package/internal/DataTids/DATATIDS.md +0 -12
- package/internal/DataTids/DataTids/DataTids.js +0 -69
- package/internal/DataTids/DataTids/DataTids.js.map +0 -1
- package/internal/DataTids/DataTids/package.json +0 -6
- package/internal/DataTids/DataTids.d.ts +0 -12
- package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
- package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
- package/internal/DataTids/DataTids.styles/package.json +0 -6
- package/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
- package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
- package/internal/DataTids/componentsDataTids/package.json +0 -6
- package/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/internal/ThemePlayground/Playground.md +0 -7
- package/lib/SSRSafe/SSRSafe.js +0 -4
- package/lib/SSRSafe/SSRSafe.js.map +0 -1
- package/lib/SSRSafe/package.json +0 -6
- package/lib/SSRSafe.d.ts +0 -2
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/lib/locale/LOCALECONTEXT.md +0 -222
- package/lib/theming/ThemeContext.md +0 -265
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
2
|
import _inheritsLoose from "@babel/runtime/helpers/esm/inheritsLoose";
|
|
4
|
-
var _excluded = ["detectCapsLock"];
|
|
5
3
|
var _dec, _class, _PasswordInput;
|
|
6
4
|
import React from 'react';
|
|
7
|
-
import PropTypes from 'prop-types';
|
|
8
5
|
import { globalObject, isBrowser } from '@skbkontur/global-object';
|
|
9
6
|
import { locale } from "../../../lib/locale/decorators";
|
|
10
7
|
import { RenderLayer } from "../../../internal/RenderLayer";
|
|
@@ -17,6 +14,7 @@ import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
|
17
14
|
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
18
15
|
import { cx } from "../../../lib/theming/Emotion";
|
|
19
16
|
import { rootNode } from "../../../lib/rootNode";
|
|
17
|
+
import { withSize } from "../../../lib/size/SizeDecorator";
|
|
20
18
|
import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
21
19
|
import { styles } from "../PasswordInput.styles";
|
|
22
20
|
import { PasswordInputIcon } from "../PasswordInputIcon";
|
|
@@ -32,19 +30,20 @@ export var PasswordInputDataTids = {
|
|
|
32
30
|
*
|
|
33
31
|
* Не используйте такое поле для ввода одноразовых кодов из смс. У них короткий срок действия и используются они только один раз.
|
|
34
32
|
*/
|
|
35
|
-
|
|
33
|
+
|
|
34
|
+
export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHelper), rootNode(_class = _dec(_class = withSize(_class = (_PasswordInput = /*#__PURE__*/function (_React$PureComponent) {
|
|
36
35
|
function PasswordInput() {
|
|
37
36
|
var _this;
|
|
38
37
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
39
38
|
args[_key] = arguments[_key];
|
|
40
39
|
}
|
|
41
40
|
_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;
|
|
42
|
-
_this.getProps = createPropsGetter(PasswordInput.defaultProps);
|
|
43
41
|
_this.state = {
|
|
44
42
|
visible: false,
|
|
45
43
|
focused: false,
|
|
46
44
|
capsLockEnabled: false
|
|
47
45
|
};
|
|
46
|
+
_this.getProps = createPropsGetter({});
|
|
48
47
|
|
|
49
48
|
/**
|
|
50
49
|
* @public
|
|
@@ -150,7 +149,7 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
|
|
|
150
149
|
}, /*#__PURE__*/
|
|
151
150
|
|
|
152
151
|
React.createElement(PasswordInputIcon, {
|
|
153
|
-
size: _this.
|
|
152
|
+
size: _this.size,
|
|
154
153
|
visible: _this.state.visible
|
|
155
154
|
}))))
|
|
156
155
|
);
|
|
@@ -164,14 +163,6 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
|
|
|
164
163
|
});
|
|
165
164
|
};
|
|
166
165
|
_this.renderMain = function (props) {
|
|
167
|
-
var detectCapsLock = props.detectCapsLock,
|
|
168
|
-
rest = _objectWithoutPropertiesLoose(props, _excluded);
|
|
169
|
-
var inputProps = _extends({}, rest, {
|
|
170
|
-
onKeyDown: _this.handleKeydown,
|
|
171
|
-
onKeyPress: _this.handleKeyPress,
|
|
172
|
-
rightIcon: _this.renderEye(),
|
|
173
|
-
onFocus: _this.handleFocus
|
|
174
|
-
});
|
|
175
166
|
return /*#__PURE__*/(
|
|
176
167
|
React.createElement(RenderLayer, {
|
|
177
168
|
active: _this.state.focused,
|
|
@@ -185,8 +176,12 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
|
|
|
185
176
|
}, /*#__PURE__*/
|
|
186
177
|
React.createElement(Input, _extends({
|
|
187
178
|
ref: _this.refInput,
|
|
188
|
-
type: _this.state.visible ? 'text' : 'password'
|
|
189
|
-
|
|
179
|
+
type: _this.state.visible ? 'text' : 'password',
|
|
180
|
+
onKeyDown: _this.handleKeydown,
|
|
181
|
+
onKeyPress: _this.handleKeyPress,
|
|
182
|
+
rightIcon: _this.renderEye(),
|
|
183
|
+
onFocus: _this.handleFocus
|
|
184
|
+
}, props))))
|
|
190
185
|
);
|
|
191
186
|
};
|
|
192
187
|
return _this;
|
|
@@ -223,7 +218,7 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
|
|
|
223
218
|
});
|
|
224
219
|
};
|
|
225
220
|
_proto.getEyeWrapperClassname = function getEyeWrapperClassname() {
|
|
226
|
-
switch (this.
|
|
221
|
+
switch (this.size) {
|
|
227
222
|
case 'large':
|
|
228
223
|
return styles.eyeWrapperLarge(this.theme);
|
|
229
224
|
case 'medium':
|
|
@@ -234,11 +229,4 @@ export var PasswordInput = (_dec = locale('PasswordInput', PasswordInputLocaleHe
|
|
|
234
229
|
}
|
|
235
230
|
};
|
|
236
231
|
return PasswordInput;
|
|
237
|
-
}(React.PureComponent), _PasswordInput.__KONTUR_REACT_UI__ = 'PasswordInput', _PasswordInput.displayName = 'PasswordInput', _PasswordInput
|
|
238
|
-
/**
|
|
239
|
-
* Включает CapsLock детектор
|
|
240
|
-
*/
|
|
241
|
-
detectCapsLock: PropTypes.bool
|
|
242
|
-
}, _PasswordInput.defaultProps = {
|
|
243
|
-
size: 'small'
|
|
244
|
-
}, _PasswordInput)) || _class) || _class);
|
|
232
|
+
}(React.PureComponent), _PasswordInput.__KONTUR_REACT_UI__ = 'PasswordInput', _PasswordInput.displayName = 'PasswordInput', _PasswordInput)) || _class) || _class) || _class);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","PropTypes","globalObject","isBrowser","locale","RenderLayer","isNonNullable","isKeyCapsLock","KeyboardEventCodes","Codes","Input","isIE11","CommonWrapper","ThemeContext","cx","rootNode","createPropsGetter","styles","PasswordInputIcon","PasswordInputLocaleHelper","PasswordInputDataTids","root","capsLockDetector","eyeIcon","PasswordInput","_dec","_class","_PasswordInput","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","visible","focused","capsLockEnabled","focus","input","blur","handleKeyPress","e","_this$props","props","onKeyPress","detectCapsLock","getModifierState","CapsLock","setState","handleKeydown","_this2","_this2$props","onKeyDown","handleToggleVisibility","prevState","focusOnInput","handleFocus","event","onFocus","handleFocusOutside","hideSymbols","renderEye","createElement","className","iconWrapper","toggleVisibility","theme","getEyeWrapperClassname","disabled","type","eyeClosedAriaLabel","eyeOpenedAriaLabel","onClick","icon","size","refInput","element","renderMain","rest","_objectWithoutPropertiesLoose","_excluded","inputProps","_extends","rightIcon","active","onFocusOutside","onClickOutside","ref","_inheritsLoose","_proto","prototype","componentDidMount","document","msCapsLockWarningOff","getDerivedStateFromProps","render","_this3","Consumer","rootNodeRef","setRootNode","eyeWrapperLarge","eyeWrapperMedium","eyeWrapperSmall","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool"],"sources":["PasswordInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyCapsLock } from '../../lib/events/keyboard/identifiers';\nimport { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { Nullable } from '../../typings/utility-types';\nimport { isIE11 } from '../../lib/client';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './PasswordInput.styles';\nimport { PasswordInputIcon } from './PasswordInputIcon';\nimport type { PasswordInputLocale } from './locale';\nimport { PasswordInputLocaleHelper } from './locale';\n\nexport interface PasswordInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Omit<InputProps, 'showClearIcon'> {\n /** Включает CapsLock детектор. */\n detectCapsLock?: boolean;\n}\n\nexport interface PasswordInputState {\n visible: boolean;\n focused: boolean;\n capsLockEnabled?: boolean | null;\n}\n\nexport const PasswordInputDataTids = {\n root: 'PasswordInput',\n capsLockDetector: 'PasswordInputCapsLockDetector',\n eyeIcon: 'PasswordInputEyeIcon',\n} as const;\n\ntype DefaultProps = Required<Pick<PasswordInputProps, 'size'>>;\n\n/**\n * `PasswordInput` — однострочное поле для ввода пароля, в котором символы заменяются на точки.\n *\n * Не используйте такое поле для ввода одноразовых кодов из смс. У них короткий срок действия и используются они только один раз.\n */\n@rootNode\n@locale('PasswordInput', PasswordInputLocaleHelper)\nexport class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {\n public static __KONTUR_REACT_UI__ = 'PasswordInput';\n public static displayName = 'PasswordInput';\n\n public static propTypes = {\n /**\n * Включает CapsLock детектор\n */\n detectCapsLock: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n };\n\n private getProps = createPropsGetter(PasswordInput.defaultProps);\n\n public state: PasswordInputState = {\n visible: false,\n focused: false,\n capsLockEnabled: false,\n };\n\n private theme!: Theme;\n\n private input: Nullable<Input>;\n private setRootNode!: TSetRootNode;\n private readonly locale!: PasswordInputLocale;\n\n public componentDidMount() {\n if (this.props.detectCapsLock) {\n this.setState({ capsLockEnabled: null });\n }\n\n // @ts-expect-error: IE-specific API.\n if (isIE11 && isBrowser(globalObject) && !globalObject.document.msCapsLockWarningOff) {\n // @ts-expect-error: Read the comment above.\n // turns off default ie capslock warning\n globalObject.document.msCapsLockWarningOff = true;\n }\n }\n\n public static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState) {\n if (props.disabled) {\n return { visible: false };\n }\n\n return state;\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const { onKeyPress, detectCapsLock } = this.props;\n\n if (onKeyPress) {\n onKeyPress(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n const capsLockEnabled = e.getModifierState(Codes.CapsLock);\n\n this.setState({ capsLockEnabled });\n };\n\n private handleKeydown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const {\n props: { detectCapsLock, onKeyDown },\n state: { capsLockEnabled },\n } = this;\n\n if (onKeyDown) {\n onKeyDown(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n if (isKeyCapsLock(e) && isNonNullable(capsLockEnabled)) {\n this.setState({ capsLockEnabled: !capsLockEnabled });\n }\n };\n\n private handleToggleVisibility = () => {\n this.setState((prevState) => ({ visible: !prevState.visible }), this.focusOnInput);\n };\n\n private focusOnInput = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleFocusOutside = () => {\n this.hideSymbols();\n\n if (this.state.focused) {\n this.setState({ focused: false });\n }\n };\n\n private getEyeWrapperClassname() {\n switch (this.getProps().size) {\n case 'large':\n return styles.eyeWrapperLarge(this.theme);\n case 'medium':\n return styles.eyeWrapperMedium(this.theme);\n case 'small':\n default:\n return styles.eyeWrapperSmall(this.theme);\n }\n }\n\n private renderEye = () => {\n const { capsLockEnabled } = this.state;\n\n return (\n <span className={styles.iconWrapper()}>\n {capsLockEnabled && (\n <span className={styles.capsLockDetector()} data-tid={PasswordInputDataTids.capsLockDetector} />\n )}\n <span className={cx(styles.toggleVisibility(this.theme), this.getEyeWrapperClassname())}>\n {!this.props.disabled && (\n <button\n type=\"button\"\n aria-label={this.state.visible ? this.locale.eyeClosedAriaLabel : this.locale.eyeOpenedAriaLabel}\n onClick={this.handleToggleVisibility}\n className={styles.icon()}\n data-tid={PasswordInputDataTids.eyeIcon}\n >\n <PasswordInputIcon size={this.props.size} visible={this.state.visible} />\n </button>\n )}\n </span>\n </span>\n );\n };\n\n private refInput = (element: Input) => {\n this.input = element;\n };\n\n private hideSymbols = () => {\n this.setState({ visible: false });\n };\n\n private renderMain = (props: CommonWrapperRestProps<PasswordInputProps>) => {\n const { detectCapsLock, ...rest } = props;\n const inputProps = {\n ...rest,\n onKeyDown: this.handleKeydown,\n onKeyPress: this.handleKeyPress,\n rightIcon: this.renderEye(),\n onFocus: this.handleFocus,\n };\n\n return (\n <RenderLayer\n active={this.state.focused}\n onFocusOutside={this.handleFocusOutside}\n onClickOutside={this.handleFocusOutside}\n >\n <div data-tid={PasswordInputDataTids.root} className={styles.root()}>\n <Input ref={this.refInput} type={this.state.visible ? 'text' : 'password'} {...inputProps} />\n </div>\n </RenderLayer>\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","globalObject","isBrowser","locale","RenderLayer","isNonNullable","isKeyCapsLock","KeyboardEventCodes","Codes","Input","isIE11","CommonWrapper","ThemeContext","cx","rootNode","withSize","createPropsGetter","styles","PasswordInputIcon","PasswordInputLocaleHelper","PasswordInputDataTids","root","capsLockDetector","eyeIcon","PasswordInput","_dec","_class","_PasswordInput","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","state","visible","focused","capsLockEnabled","getProps","focus","input","blur","handleKeyPress","e","_this$props","props","onKeyPress","detectCapsLock","getModifierState","CapsLock","setState","handleKeydown","_this2","_this2$props","onKeyDown","handleToggleVisibility","prevState","focusOnInput","handleFocus","event","onFocus","handleFocusOutside","hideSymbols","renderEye","createElement","className","iconWrapper","toggleVisibility","theme","getEyeWrapperClassname","disabled","type","eyeClosedAriaLabel","eyeOpenedAriaLabel","onClick","icon","size","refInput","element","renderMain","active","onFocusOutside","onClickOutside","_extends","ref","rightIcon","_inheritsLoose","_proto","prototype","componentDidMount","document","msCapsLockWarningOff","getDerivedStateFromProps","render","_this3","Consumer","rootNodeRef","setRootNode","eyeWrapperLarge","eyeWrapperMedium","eyeWrapperSmall","PureComponent","__KONTUR_REACT_UI__","displayName"],"sources":["PasswordInput.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { RenderLayer } from '../../internal/RenderLayer';\nimport { isNonNullable } from '../../lib/utils';\nimport { isKeyCapsLock } from '../../lib/events/keyboard/identifiers';\nimport { KeyboardEventCodes as Codes } from '../../lib/events/keyboard/KeyboardEventCodes';\nimport type { InputProps } from '../Input';\nimport { Input } from '../Input';\nimport type { Nullable } from '../../typings/utility-types';\nimport { isIE11 } from '../../lib/client';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport type { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { withSize } from '../../lib/size/SizeDecorator';\nimport type { SizeProp } from '../../lib/types/props';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './PasswordInput.styles';\nimport { PasswordInputIcon } from './PasswordInputIcon';\nimport type { PasswordInputLocale } from './locale';\nimport { PasswordInputLocaleHelper } from './locale';\n\nexport interface PasswordInputProps\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Omit<InputProps, 'showClearIcon'> {\n /** Включает CapsLock детектор. */\n detectCapsLock?: boolean;\n}\n\nexport interface PasswordInputState {\n visible: boolean;\n focused: boolean;\n capsLockEnabled?: boolean | null;\n}\n\nexport const PasswordInputDataTids = {\n root: 'PasswordInput',\n capsLockDetector: 'PasswordInputCapsLockDetector',\n eyeIcon: 'PasswordInputEyeIcon',\n} as const;\n\n/**\n * `PasswordInput` — однострочное поле для ввода пароля, в котором символы заменяются на точки.\n *\n * Не используйте такое поле для ввода одноразовых кодов из смс. У них короткий срок действия и используются они только один раз.\n */\n\n@rootNode\n@locale('PasswordInput', PasswordInputLocaleHelper)\n@withSize\nexport class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {\n public static __KONTUR_REACT_UI__ = 'PasswordInput';\n public static displayName = 'PasswordInput';\n\n public state: PasswordInputState = {\n visible: false,\n focused: false,\n capsLockEnabled: false,\n };\n private size!: SizeProp;\n\n private theme!: Theme;\n\n private input: Nullable<Input>;\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private readonly locale!: PasswordInputLocale;\n\n private getProps = createPropsGetter({});\n\n public componentDidMount() {\n if (this.props.detectCapsLock) {\n this.setState({ capsLockEnabled: null });\n }\n\n // @ts-expect-error: IE-specific API.\n if (isIE11 && isBrowser(globalObject) && !globalObject.document.msCapsLockWarningOff) {\n // @ts-expect-error: Read the comment above.\n // turns off default ie capslock warning\n globalObject.document.msCapsLockWarningOff = true;\n }\n }\n\n public static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState) {\n if (props.disabled) {\n return { visible: false };\n }\n\n return state;\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n /**\n * @public\n */\n public blur = () => {\n if (this.input) {\n this.input.blur();\n }\n };\n\n private handleKeyPress = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const { onKeyPress, detectCapsLock } = this.props;\n\n if (onKeyPress) {\n onKeyPress(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n const capsLockEnabled = e.getModifierState(Codes.CapsLock);\n\n this.setState({ capsLockEnabled });\n };\n\n private handleKeydown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const {\n props: { detectCapsLock, onKeyDown },\n state: { capsLockEnabled },\n } = this;\n\n if (onKeyDown) {\n onKeyDown(e);\n }\n\n if (!detectCapsLock) {\n return;\n }\n\n if (isKeyCapsLock(e) && isNonNullable(capsLockEnabled)) {\n this.setState({ capsLockEnabled: !capsLockEnabled });\n }\n };\n\n private handleToggleVisibility = () => {\n this.setState((prevState) => ({ visible: !prevState.visible }), this.focusOnInput);\n };\n\n private focusOnInput = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.state.focused) {\n return;\n }\n\n this.setState({ focused: true });\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleFocusOutside = () => {\n this.hideSymbols();\n\n if (this.state.focused) {\n this.setState({ focused: false });\n }\n };\n\n private getEyeWrapperClassname() {\n switch (this.size) {\n case 'large':\n return styles.eyeWrapperLarge(this.theme);\n case 'medium':\n return styles.eyeWrapperMedium(this.theme);\n case 'small':\n default:\n return styles.eyeWrapperSmall(this.theme);\n }\n }\n\n private renderEye = () => {\n const { capsLockEnabled } = this.state;\n\n return (\n <span className={styles.iconWrapper()}>\n {capsLockEnabled && (\n <span className={styles.capsLockDetector()} data-tid={PasswordInputDataTids.capsLockDetector} />\n )}\n <span className={cx(styles.toggleVisibility(this.theme), this.getEyeWrapperClassname())}>\n {!this.props.disabled && (\n <button\n type=\"button\"\n aria-label={this.state.visible ? this.locale.eyeClosedAriaLabel : this.locale.eyeOpenedAriaLabel}\n onClick={this.handleToggleVisibility}\n className={styles.icon()}\n data-tid={PasswordInputDataTids.eyeIcon}\n >\n <PasswordInputIcon size={this.size} visible={this.state.visible} />\n </button>\n )}\n </span>\n </span>\n );\n };\n\n private refInput = (element: Input) => {\n this.input = element;\n };\n\n private hideSymbols = () => {\n this.setState({ visible: false });\n };\n\n private renderMain = (props: CommonWrapperRestProps<PasswordInputProps>) => {\n return (\n <RenderLayer\n active={this.state.focused}\n onFocusOutside={this.handleFocusOutside}\n onClickOutside={this.handleFocusOutside}\n >\n <div data-tid={PasswordInputDataTids.root} className={styles.root()}>\n <Input\n ref={this.refInput}\n type={this.state.visible ? 'text' : 'password'}\n onKeyDown={this.handleKeydown}\n onKeyPress={this.handleKeyPress}\n rightIcon={this.renderEye()}\n onFocus={this.handleFocus}\n {...props}\n />\n </div>\n </RenderLayer>\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { AriaAttributes } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
3
|
import type { InputProps } from '../Input';
|
|
5
4
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
5
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
6
6
|
export interface PasswordInputProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Omit<InputProps, 'showClearIcon'> {
|
|
7
7
|
/** Включает CapsLock детектор. */
|
|
8
8
|
detectCapsLock?: boolean;
|
|
@@ -17,7 +17,6 @@ export declare const PasswordInputDataTids: {
|
|
|
17
17
|
readonly capsLockDetector: "PasswordInputCapsLockDetector";
|
|
18
18
|
readonly eyeIcon: "PasswordInputEyeIcon";
|
|
19
19
|
};
|
|
20
|
-
type DefaultProps = Required<Pick<PasswordInputProps, 'size'>>;
|
|
21
20
|
/**
|
|
22
21
|
* `PasswordInput` — однострочное поле для ввода пароля, в котором символы заменяются на точки.
|
|
23
22
|
*
|
|
@@ -26,24 +25,19 @@ type DefaultProps = Required<Pick<PasswordInputProps, 'size'>>;
|
|
|
26
25
|
export declare class PasswordInput extends React.PureComponent<PasswordInputProps, PasswordInputState> {
|
|
27
26
|
static __KONTUR_REACT_UI__: string;
|
|
28
27
|
static displayName: string;
|
|
29
|
-
static propTypes: {
|
|
30
|
-
/**
|
|
31
|
-
* Включает CapsLock детектор
|
|
32
|
-
*/
|
|
33
|
-
detectCapsLock: PropTypes.Requireable<boolean>;
|
|
34
|
-
};
|
|
35
|
-
static defaultProps: DefaultProps;
|
|
36
|
-
private getProps;
|
|
37
28
|
state: PasswordInputState;
|
|
29
|
+
private size;
|
|
38
30
|
private theme;
|
|
39
31
|
private input;
|
|
32
|
+
getRootNode: TGetRootNode;
|
|
40
33
|
private setRootNode;
|
|
41
34
|
private readonly locale;
|
|
35
|
+
private getProps;
|
|
42
36
|
componentDidMount(): void;
|
|
43
37
|
static getDerivedStateFromProps(props: PasswordInputProps, state: PasswordInputState): PasswordInputState | {
|
|
44
38
|
visible: boolean;
|
|
45
39
|
};
|
|
46
|
-
render():
|
|
40
|
+
render(): JSX.Element;
|
|
47
41
|
/**
|
|
48
42
|
* @public
|
|
49
43
|
*/
|
|
@@ -64,4 +58,3 @@ export declare class PasswordInput extends React.PureComponent<PasswordInputProp
|
|
|
64
58
|
private hideSymbols;
|
|
65
59
|
private renderMain;
|
|
66
60
|
}
|
|
67
|
-
export {};
|
|
@@ -15,6 +15,7 @@ import { isEdge, isIE11 } from "../../../lib/client";
|
|
|
15
15
|
import { RadioGroupContext } from "../../RadioGroup/RadioGroupContext";
|
|
16
16
|
import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
17
17
|
import { FocusControlWrapper } from "../../../internal/FocusControlWrapper";
|
|
18
|
+
import { withSize } from "../../../lib/size/SizeDecorator";
|
|
18
19
|
import { styles, globalClasses } from "../Radio.styles";
|
|
19
20
|
export var RadioDataTids = {
|
|
20
21
|
root: 'Radio__root'
|
|
@@ -23,7 +24,7 @@ export var RadioDataTids = {
|
|
|
23
24
|
/**
|
|
24
25
|
* Радио-кнопки `Radio` используются, когда может быть выбран только один вариант из нескольких.
|
|
25
26
|
*/
|
|
26
|
-
export var Radio = rootNode(_class = (_Radio = /*#__PURE__*/function (_React$Component) {
|
|
27
|
+
export var Radio = rootNode(_class = withSize(_class = (_Radio = /*#__PURE__*/function (_React$Component) {
|
|
27
28
|
function Radio() {
|
|
28
29
|
var _this;
|
|
29
30
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
@@ -148,7 +149,7 @@ export var Radio = rootNode(_class = (_Radio = /*#__PURE__*/function (_React$Com
|
|
|
148
149
|
_inheritsLoose(Radio, _React$Component);
|
|
149
150
|
var _proto = Radio.prototype;
|
|
150
151
|
_proto.getRootSizeClassName = function getRootSizeClassName() {
|
|
151
|
-
switch (this.
|
|
152
|
+
switch (this.size) {
|
|
152
153
|
case 'large':
|
|
153
154
|
return styles.rootLarge(this.theme);
|
|
154
155
|
case 'medium':
|
|
@@ -159,7 +160,7 @@ export var Radio = rootNode(_class = (_Radio = /*#__PURE__*/function (_React$Com
|
|
|
159
160
|
}
|
|
160
161
|
};
|
|
161
162
|
_proto.getCircleSizeClassName = function getCircleSizeClassName() {
|
|
162
|
-
switch (this.
|
|
163
|
+
switch (this.size) {
|
|
163
164
|
case 'large':
|
|
164
165
|
return styles.circleLarge(this.theme);
|
|
165
166
|
case 'medium':
|
|
@@ -170,7 +171,7 @@ export var Radio = rootNode(_class = (_Radio = /*#__PURE__*/function (_React$Com
|
|
|
170
171
|
}
|
|
171
172
|
};
|
|
172
173
|
_proto.getCheckedSizeClassName = function getCheckedSizeClassName() {
|
|
173
|
-
switch (this.
|
|
174
|
+
switch (this.size) {
|
|
174
175
|
case 'large':
|
|
175
176
|
return styles.checkedLarge(this.theme);
|
|
176
177
|
case 'medium':
|
|
@@ -211,6 +212,5 @@ export var Radio = rootNode(_class = (_Radio = /*#__PURE__*/function (_React$Com
|
|
|
211
212
|
};
|
|
212
213
|
return Radio;
|
|
213
214
|
}(React.Component), _Radio.__KONTUR_REACT_UI__ = 'Radio', _Radio.displayName = 'Radio', _Radio.defaultProps = {
|
|
214
|
-
focused: false
|
|
215
|
-
|
|
216
|
-
}, _Radio.contextType = RadioGroupContext, _Radio)) || _class;
|
|
215
|
+
focused: false
|
|
216
|
+
}, _Radio.contextType = RadioGroupContext, _Radio)) || _class) || _class;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","globalObject","ThemeContext","CommonWrapper","cx","keyListener","rootNode","fixFirefoxModifiedClickOnLabel","isEdge","isIE11","RadioGroupContext","createPropsGetter","FocusControlWrapper","styles","globalClasses","RadioDataTids","root","Radio","_class","_Radio","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","state","focusedByKeyboard","getProps","defaultProps","context","inputEl","createRef","renderMain","props","_cx","_cx2","_props$disabled","disabled","_props$warning","warning","_props$error","error","size","focused","onMouseOver","onMouseEnter","onMouseLeave","onValueChange","rest","_objectWithoutPropertiesLoose","_excluded","radioProps","className","circle","theme","getCircleSizeClassName","checked","getCheckedSizeClassName","focus","checkedDisabled","value","inputProps","_extends","type","input","tabIndex","ref","onChange","handleChange","onFocus","handleFocus","onBlur","handleBlur","labelProps","getRootSizeClassName","rootChecked","rootIE11","handleMouseOver","handleMouseEnter","handleMouseLeave","onClick","_isInRadioGroup","_cx3","_cx4","activeItem","name","suppressHydrationWarning","createElement","onBlurWhenDisabled","resetFocus","placeholder","children","renderCaption","Boolean","e","onSelect","requestAnimationFrame","isArrowPressed","isTabPressed","setState","_inheritsLoose","_proto","prototype","rootLarge","rootMedium","rootSmall","circleLarge","circleMedium","circleSmall","checkedLarge","checkedMedium","checkedSmall","render","_this2","Consumer","rootNodeRef","setRootNode","_this$inputEl$current","current","blur","_this$inputEl$current2","_cx5","captionClassNames","caption","captionDisabled","captionIE11","Component","__KONTUR_REACT_UI__","displayName","contextType"],"sources":["Radio.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { Override } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { keyListener } from '../../lib/events/keyListener';\nimport type { TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { fixFirefoxModifiedClickOnLabel } from '../../lib/events/fixFirefoxModifiedClickOnLabel';\nimport { isEdge, isIE11 } from '../../lib/client';\nimport type { RadioGroupContextType } from '../RadioGroup/RadioGroupContext';\nimport { RadioGroupContext } from '../RadioGroup/RadioGroupContext';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\n\nimport { styles, globalClasses } from './Radio.styles';\n\nexport interface RadioProps<T>\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает размер. */\n size?: SizeProp;\n\n /** Задает состояние фокуса. */\n focused?: boolean;\n\n /** Задает функцию, которая вызывается при изменении value. */\n onValueChange?: (value: T) => void;\n\n /** Задает HTML-событие `onmouseenter`.\n * @ignore */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Задает HTML-событие `onmouseleave`.\n * @ignore */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Задает HTML-событие `onmouseover`.\n * @ignore */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Устанавливает значение. */\n value: T;\n }\n > {}\n\nexport interface RadioState {\n focusedByKeyboard: boolean;\n}\n\nexport const RadioDataTids = {\n root: 'Radio__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioProps<any>, 'focused' | 'size'>>;\n\n/**\n * Радио-кнопки `Radio` используются, когда может быть выбран только один вариант из нескольких.\n */\n@rootNode\nexport class Radio<T> extends React.Component<RadioProps<T>, RadioState> {\n public static __KONTUR_REACT_UI__ = 'Radio';\n public static displayName = 'Radio';\n\n public state = {\n focusedByKeyboard: false,\n };\n\n public static defaultProps: DefaultProps = {\n focused: false,\n size: 'small',\n };\n\n private getProps = createPropsGetter(Radio.defaultProps);\n\n public static contextType = RadioGroupContext;\n public context: RadioGroupContextType<T> = this.context;\n\n private inputEl = React.createRef<HTMLInputElement>();\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n private getRootSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getCircleSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.circleLarge(this.theme);\n case 'medium':\n return styles.circleMedium(this.theme);\n case 'small':\n default:\n return styles.circleSmall(this.theme);\n }\n }\n\n private getCheckedSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.checkedLarge(this.theme);\n case 'medium':\n return styles.checkedMedium(this.theme);\n case 'small':\n default:\n return styles.checkedSmall(this.theme);\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n keyListener.isTabPressed = true;\n this.inputEl.current?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.inputEl.current?.blur();\n }\n\n public renderMain = (props: CommonWrapperRestProps<RadioProps<T>>) => {\n const {\n disabled = this.context.disabled,\n warning = this.context.warning,\n error = this.context.error,\n size,\n focused,\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n onValueChange,\n ...rest\n } = props;\n\n const radioProps = {\n className: cx({\n [styles.circle(this.theme)]: true,\n [this.getCircleSizeClassName()]: true,\n [styles.checked(this.theme)]: this.props.checked,\n [this.getCheckedSizeClassName()]: this.props.checked,\n [styles.focus(this.theme)]: this.getProps().focused || this.state.focusedByKeyboard,\n [styles.error(this.theme)]: error,\n [styles.warning(this.theme)]: warning,\n [styles.disabled(this.theme)]: disabled,\n [styles.checkedDisabled(this.theme)]: this.props.checked && disabled,\n [globalClasses.circle]: true,\n }),\n };\n\n let value: string | number | undefined;\n if (typeof this.props.value === 'string' || typeof this.props.value === 'number') {\n value = this.props.value;\n }\n\n const inputProps = {\n ...rest,\n type: 'radio',\n className: styles.input(),\n disabled,\n tabIndex: this.props.tabIndex,\n value,\n ref: this.inputEl,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n };\n\n const labelProps = {\n className: cx(styles.root(this.theme), this.getRootSizeClassName(), {\n [styles.rootChecked(this.theme)]: this.props.checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n }),\n onMouseOver: this.handleMouseOver,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n onClick: fixFirefoxModifiedClickOnLabel(this.inputEl),\n };\n\n if (this._isInRadioGroup()) {\n const checked = this.props.value === this.context.activeItem;\n inputProps.checked = checked;\n inputProps.name = this.context.name;\n inputProps.suppressHydrationWarning = true;\n labelProps.className = cx(styles.root(this.theme), this.getRootSizeClassName(), {\n [styles.rootChecked(this.theme)]: checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n });\n radioProps.className = cx(radioProps.className, {\n [styles.checked(this.theme)]: checked,\n [this.getCheckedSizeClassName()]: checked,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n });\n }\n\n return (\n <label data-tid={RadioDataTids.root} {...labelProps}>\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <input {...inputProps} />\n </FocusControlWrapper>\n <span {...radioProps}>\n <span className={styles.placeholder()} />\n </span>\n {this.props.children && this.renderCaption()}\n </label>\n );\n };\n\n private _isInRadioGroup = () => Boolean(this.context.name);\n\n private renderCaption() {\n const captionClassNames = cx({\n [styles.caption(this.theme)]: true,\n [styles.captionDisabled(this.theme)]: !!(this.props.disabled || this.context.disabled),\n [styles.captionIE11()]: isIE11 || isEdge,\n });\n\n return <div className={captionClassNames}>{this.props.children}</div>;\n }\n\n private handleChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n this.props.onValueChange?.(this.props.value);\n\n if (this._isInRadioGroup()) {\n this.context.onSelect(this.props.value);\n }\n\n this.props.onChange?.(e);\n };\n\n private handleMouseOver: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseOver?.(e);\n };\n\n private handleMouseEnter: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseEnter?.(e);\n };\n\n private handleMouseLeave: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseLeave?.(e);\n };\n\n private handleFocus = (e: React.FocusEvent<any>) => {\n if (!this.context.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isArrowPressed || keyListener.isTabPressed) {\n this.setState({ focusedByKeyboard: true });\n }\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n }\n };\n\n private resetFocus = () => this.setState({ focusedByKeyboard: false });\n\n private handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(e);\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","globalObject","ThemeContext","CommonWrapper","cx","keyListener","rootNode","fixFirefoxModifiedClickOnLabel","isEdge","isIE11","RadioGroupContext","createPropsGetter","FocusControlWrapper","withSize","styles","globalClasses","RadioDataTids","root","Radio","_class","_Radio","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","state","focusedByKeyboard","getProps","defaultProps","context","inputEl","createRef","renderMain","props","_cx","_cx2","_props$disabled","disabled","_props$warning","warning","_props$error","error","size","focused","onMouseOver","onMouseEnter","onMouseLeave","onValueChange","rest","_objectWithoutPropertiesLoose","_excluded","radioProps","className","circle","theme","getCircleSizeClassName","checked","getCheckedSizeClassName","focus","checkedDisabled","value","inputProps","_extends","type","input","tabIndex","ref","onChange","handleChange","onFocus","handleFocus","onBlur","handleBlur","labelProps","getRootSizeClassName","rootChecked","rootIE11","handleMouseOver","handleMouseEnter","handleMouseLeave","onClick","_isInRadioGroup","_cx3","_cx4","activeItem","name","suppressHydrationWarning","createElement","onBlurWhenDisabled","resetFocus","placeholder","children","renderCaption","Boolean","e","onSelect","requestAnimationFrame","isArrowPressed","isTabPressed","setState","_inheritsLoose","_proto","prototype","rootLarge","rootMedium","rootSmall","circleLarge","circleMedium","circleSmall","checkedLarge","checkedMedium","checkedSmall","render","_this2","Consumer","rootNodeRef","setRootNode","_this$inputEl$current","current","blur","_this$inputEl$current2","_cx5","captionClassNames","caption","captionDisabled","captionIE11","Component","__KONTUR_REACT_UI__","displayName","contextType"],"sources":["Radio.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport type { Override } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { keyListener } from '../../lib/events/keyListener';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { rootNode } from '../../lib/rootNode';\nimport { fixFirefoxModifiedClickOnLabel } from '../../lib/events/fixFirefoxModifiedClickOnLabel';\nimport { isEdge, isIE11 } from '../../lib/client';\nimport type { RadioGroupContextType } from '../RadioGroup/RadioGroupContext';\nimport { RadioGroupContext } from '../RadioGroup/RadioGroupContext';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport { styles, globalClasses } from './Radio.styles';\n\nexport interface RadioProps<T>\n extends Pick<AriaAttributes, 'aria-label'>,\n CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Переводит контрол в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Переводит контрол в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Задает размер. */\n size?: SizeProp;\n\n /** Задает состояние фокуса. */\n focused?: boolean;\n\n /** Задает функцию, которая вызывается при изменении value. */\n onValueChange?: (value: T) => void;\n\n /** Задает HTML-событие `onmouseenter`.\n * @ignore */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Задает HTML-событие `onmouseleave`.\n * @ignore */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Задает HTML-событие `onmouseover`.\n * @ignore */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Устанавливает значение. */\n value: T;\n }\n > {}\n\nexport interface RadioState {\n focusedByKeyboard: boolean;\n}\n\nexport const RadioDataTids = {\n root: 'Radio__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioProps<any>, 'focused'>>;\n\n/**\n * Радио-кнопки `Radio` используются, когда может быть выбран только один вариант из нескольких.\n */\n@rootNode\n@withSize\nexport class Radio<T> extends React.Component<RadioProps<T>, RadioState> {\n public static __KONTUR_REACT_UI__ = 'Radio';\n public static displayName = 'Radio';\n\n public state = {\n focusedByKeyboard: false,\n };\n\n public static defaultProps: DefaultProps = {\n focused: false,\n };\n\n private getProps = createPropsGetter(Radio.defaultProps);\n\n public static contextType = RadioGroupContext;\n public context: RadioGroupContextType<T> = this.context;\n private size!: SizeProp;\n\n private inputEl = React.createRef<HTMLInputElement>();\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n private getRootSizeClassName() {\n switch (this.size) {\n case 'large':\n return styles.rootLarge(this.theme);\n case 'medium':\n return styles.rootMedium(this.theme);\n case 'small':\n default:\n return styles.rootSmall(this.theme);\n }\n }\n\n private getCircleSizeClassName() {\n switch (this.size) {\n case 'large':\n return styles.circleLarge(this.theme);\n case 'medium':\n return styles.circleMedium(this.theme);\n case 'small':\n default:\n return styles.circleSmall(this.theme);\n }\n }\n\n private getCheckedSizeClassName() {\n switch (this.size) {\n case 'large':\n return styles.checkedLarge(this.theme);\n case 'medium':\n return styles.checkedMedium(this.theme);\n case 'small':\n default:\n return styles.checkedSmall(this.theme);\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n keyListener.isTabPressed = true;\n this.inputEl.current?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.inputEl.current?.blur();\n }\n\n public renderMain = (props: CommonWrapperRestProps<RadioProps<T>>) => {\n const {\n disabled = this.context.disabled,\n warning = this.context.warning,\n error = this.context.error,\n size,\n focused,\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n onValueChange,\n ...rest\n } = props;\n\n const radioProps = {\n className: cx({\n [styles.circle(this.theme)]: true,\n [this.getCircleSizeClassName()]: true,\n [styles.checked(this.theme)]: this.props.checked,\n [this.getCheckedSizeClassName()]: this.props.checked,\n [styles.focus(this.theme)]: this.getProps().focused || this.state.focusedByKeyboard,\n [styles.error(this.theme)]: error,\n [styles.warning(this.theme)]: warning,\n [styles.disabled(this.theme)]: disabled,\n [styles.checkedDisabled(this.theme)]: this.props.checked && disabled,\n [globalClasses.circle]: true,\n }),\n };\n\n let value: string | number | undefined;\n if (typeof this.props.value === 'string' || typeof this.props.value === 'number') {\n value = this.props.value;\n }\n\n const inputProps = {\n ...rest,\n type: 'radio',\n className: styles.input(),\n disabled,\n tabIndex: this.props.tabIndex,\n value,\n ref: this.inputEl,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n };\n\n const labelProps = {\n className: cx(styles.root(this.theme), this.getRootSizeClassName(), {\n [styles.rootChecked(this.theme)]: this.props.checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n }),\n onMouseOver: this.handleMouseOver,\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n onClick: fixFirefoxModifiedClickOnLabel(this.inputEl),\n };\n\n if (this._isInRadioGroup()) {\n const checked = this.props.value === this.context.activeItem;\n inputProps.checked = checked;\n inputProps.name = this.context.name;\n inputProps.suppressHydrationWarning = true;\n labelProps.className = cx(styles.root(this.theme), this.getRootSizeClassName(), {\n [styles.rootChecked(this.theme)]: checked,\n [styles.rootIE11()]: isIE11 || isEdge,\n });\n radioProps.className = cx(radioProps.className, {\n [styles.checked(this.theme)]: checked,\n [this.getCheckedSizeClassName()]: checked,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n });\n }\n\n return (\n <label data-tid={RadioDataTids.root} {...labelProps}>\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>\n <input {...inputProps} />\n </FocusControlWrapper>\n <span {...radioProps}>\n <span className={styles.placeholder()} />\n </span>\n {this.props.children && this.renderCaption()}\n </label>\n );\n };\n\n private _isInRadioGroup = () => Boolean(this.context.name);\n\n private renderCaption() {\n const captionClassNames = cx({\n [styles.caption(this.theme)]: true,\n [styles.captionDisabled(this.theme)]: !!(this.props.disabled || this.context.disabled),\n [styles.captionIE11()]: isIE11 || isEdge,\n });\n\n return <div className={captionClassNames}>{this.props.children}</div>;\n }\n\n private handleChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n this.props.onValueChange?.(this.props.value);\n\n if (this._isInRadioGroup()) {\n this.context.onSelect(this.props.value);\n }\n\n this.props.onChange?.(e);\n };\n\n private handleMouseOver: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseOver?.(e);\n };\n\n private handleMouseEnter: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseEnter?.(e);\n };\n\n private handleMouseLeave: React.MouseEventHandler<HTMLLabelElement> = (e) => {\n this.props.onMouseLeave?.(e);\n };\n\n private handleFocus = (e: React.FocusEvent<any>) => {\n if (!this.context.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n globalObject.requestAnimationFrame?.(() => {\n if (keyListener.isArrowPressed || keyListener.isTabPressed) {\n this.setState({ focusedByKeyboard: true });\n }\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n }\n };\n\n private resetFocus = () => this.setState({ focusedByKeyboard: false });\n\n private handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n this.resetFocus();\n this.props.onBlur?.(e);\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@ import type { AriaAttributes } from 'react';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { Override } from '../../typings/utility-types';
|
|
4
4
|
import type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';
|
|
5
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
5
6
|
import type { RadioGroupContextType } from '../RadioGroup/RadioGroupContext';
|
|
6
7
|
import type { SizeProp } from '../../lib/types/props';
|
|
7
8
|
export interface RadioProps<T> extends Pick<AriaAttributes, 'aria-label'>, CommonProps, Override<React.InputHTMLAttributes<HTMLInputElement>, {
|
|
@@ -34,7 +35,7 @@ export interface RadioState {
|
|
|
34
35
|
export declare const RadioDataTids: {
|
|
35
36
|
readonly root: "Radio__root";
|
|
36
37
|
};
|
|
37
|
-
type DefaultProps = Required<Pick<RadioProps<any>, 'focused'
|
|
38
|
+
type DefaultProps = Required<Pick<RadioProps<any>, 'focused'>>;
|
|
38
39
|
/**
|
|
39
40
|
* Радио-кнопки `Radio` используются, когда может быть выбран только один вариант из нескольких.
|
|
40
41
|
*/
|
|
@@ -48,7 +49,9 @@ export declare class Radio<T> extends React.Component<RadioProps<T>, RadioState>
|
|
|
48
49
|
private getProps;
|
|
49
50
|
static contextType: React.Context<RadioGroupContextType<any>>;
|
|
50
51
|
context: RadioGroupContextType<T>;
|
|
52
|
+
private size;
|
|
51
53
|
private inputEl;
|
|
54
|
+
getRootNode: TGetRootNode;
|
|
52
55
|
private setRootNode;
|
|
53
56
|
private theme;
|
|
54
57
|
private getRootSizeClassName;
|
|
@@ -12,6 +12,7 @@ import { CommonWrapper } from "../../../internal/CommonWrapper";
|
|
|
12
12
|
import { cx } from "../../../lib/theming/Emotion";
|
|
13
13
|
import { rootNode } from "../../../lib/rootNode";
|
|
14
14
|
import { getVisualStateDataAttributes } from "../../../internal/CommonWrapper/utils/getVisualStateDataAttributes";
|
|
15
|
+
import { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from "../../../lib/featureFlagsContext";
|
|
15
16
|
import { styles } from "../RadioGroup.styles";
|
|
16
17
|
import { Prevent } from "../Prevent";
|
|
17
18
|
import { RadioGroupContext } from "../RadioGroupContext";
|
|
@@ -94,6 +95,7 @@ export var RadioGroup = rootNode(_class = (_RadioGroup = /*#__PURE__*/function (
|
|
|
94
95
|
_inheritsLoose(RadioGroup, _React$Component);
|
|
95
96
|
var _proto = RadioGroup.prototype;
|
|
96
97
|
_proto.render = function render() {
|
|
98
|
+
var _this2 = this;
|
|
97
99
|
var _this$props = this.props,
|
|
98
100
|
width = _this$props.width,
|
|
99
101
|
onMouseLeave = _this$props.onMouseLeave,
|
|
@@ -110,23 +112,27 @@ export var RadioGroup = rootNode(_class = (_RadioGroup = /*#__PURE__*/function (
|
|
|
110
112
|
onMouseEnter: onMouseEnter,
|
|
111
113
|
onMouseLeave: onMouseLeave
|
|
112
114
|
};
|
|
113
|
-
return /*#__PURE__*/React.createElement(
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
115
|
+
return /*#__PURE__*/React.createElement(ReactUIFeatureFlagsContext.Consumer, null, function (flags) {
|
|
116
|
+
var _cx2;
|
|
117
|
+
_this2.featureFlags = getFullReactUIFlagsContext(flags);
|
|
118
|
+
return /*#__PURE__*/React.createElement(CommonWrapper, _extends({
|
|
119
|
+
rootNodeRef: _this2.setRootNode
|
|
120
|
+
}, _this2.props, getVisualStateDataAttributes({
|
|
121
|
+
disabled: disabled
|
|
122
|
+
})), /*#__PURE__*/React.createElement(FocusTrap, {
|
|
123
|
+
onBlur: onBlur
|
|
124
|
+
}, /*#__PURE__*/React.createElement("span", _extends({
|
|
125
|
+
"data-tid": RadioGroupDataTids.root,
|
|
126
|
+
ref: _this2.ref,
|
|
127
|
+
style: style,
|
|
128
|
+
className: cx((_cx2 = {}, _cx2[styles.root()] = true, _cx2[styles.removeBaselineSpacer()] = _this2.featureFlags.radioGroupRemoveBaselineSpacer, _cx2)),
|
|
129
|
+
role: "radiogroup"
|
|
130
|
+
}, handlers, {
|
|
131
|
+
"aria-describedby": ariaDescribedby
|
|
132
|
+
}), /*#__PURE__*/React.createElement(RadioGroupContext.Provider, {
|
|
133
|
+
value: _this2.getRadioGroupContextValue()
|
|
134
|
+
}, _this2.renderChildren()))));
|
|
135
|
+
});
|
|
130
136
|
} /**
|
|
131
137
|
* @public
|
|
132
138
|
*/;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","invariant","getRandomID","isNonNullable","Radio","createPropsGetter","FocusTrap","CommonWrapper","cx","rootNode","getVisualStateDataAttributes","styles","Prevent","RadioGroupContext","RadioGroupDataTids","root","RadioGroup","_class","_RadioGroup","_React$Component","props","_this","call","name","getProps","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","setState","onValueChange","renderRadio","itemValue","data","index","_cx","itemProps","key","getKeyByItem","className","item","itemFirst","itemInline","inline","createElement","_extends","role","renderItem","toKey","undefined","ref","element","node","defaultValue","_inheritsLoose","_proto","prototype","render","_this$props","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","rootNodeRef","setRootNode","Provider","renderChildren","focus","radio","querySelector","_this$props2","items","children","mapItems","Component","__KONTUR_REACT_UI__","displayName","_value","fn","result","_iterator","_createForOfIteratorHelperLoose","_step","done","entry","_normalizeEntry","normalizeEntry","push","Array","isArray"],"sources":["RadioGroup.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport invariant from 'invariant';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { Radio } from '../Radio';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FocusTrap } from '../../internal/FocusTrap';\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 { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\n\nimport { styles } from './RadioGroup.styles';\nimport { Prevent } from './Prevent';\nimport type { RadioGroupContextType } from './RadioGroupContext';\nimport { RadioGroupContext } from './RadioGroupContext';\n\nexport interface RadioGroupProps<T = string | number> extends CommonProps {\n /** Задает значение по умолчанию. Должно быть одним из значений дочерних радиокнопок или значений из параметра `items`. */\n defaultValue?: T;\n\n /** Задает значение радиогруппы. Должно быть одним из значений радиокнопок.\n * Если не указано, то компонент будет работать, как неконтролируемый. */\n value?: T;\n\n /** Задает массив параметров радиокнопок. Может быть типа `Array<Value>` или `Array<[Value, Data]>`,\n * где тип `Value` — значение радиокнопки, а `Data` — значение которое будет использовано вторым параметром в `renderItem`.\n * Тип `Array<Value>` будет приведен к типу `Array<[Value, Value]>`.\n * Может быть использовано, если не передан параметр `children`. */\n items?: T[] | Array<[T, React.ReactNode]>;\n\n /** Устанавливает аттрибут name для вложенных радиокнопок. Если не указан, то сгенерируется случайное имя. */\n name?: string;\n\n /** Получает уникальный ключ по элементу\n * @param item - элемент, по которуму нужно получить ключ. */\n toKey?: (item: T) => string | number;\n\n /** Делает все радиокнопки недоступными. */\n disabled?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Выравнивает элементы items в строку. Не работает с children. */\n inline?: boolean;\n\n /** Задает ширину радиогруппы. Не работает с `children`. */\n width?: React.CSSProperties['width'];\n\n /** Задает функцию, которая отображает контент радиокнопки. Не работает с `children`.\n * @param {Value} itemValue - значение радиокнопки.\n * @param {Data} data - значение для отрисовки радиокнопки. */\n renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n\n /** Задает функцию, которая вызывается при изменении значения радиогруппы (value). */\n onValueChange?: (value: T) => void;\n\n /** Задает функцию, которая вызывается при потере радиогруппой фокуса. */\n onBlur?: (event: FocusEvent) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: () => any;\n}\n\nexport interface RadioGroupState<T> {\n activeItem?: T;\n}\n\nexport const RadioGroupDataTids = {\n root: 'RadioGroup__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioGroupProps<unknown>, 'renderItem'>>;\n\n/**\n * Группа радиокнопок `RadioGroup` используется для выбора одного значения из нескольких, когда вариантов выбора немного — 2–5.\n *\n * `children` может содержать любую разметку с компонентами Radio, если не передан параметр `items`.\n * Каждому компоненту Radio нужно указать параметр `value`, такого же типа, как и параметр `value` самой радиогруппы.\n *\n * Значения активного элемента сравниваются по строгому равенству `===`.\n */\n@rootNode\nexport class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {\n public static __KONTUR_REACT_UI__ = 'RadioGroup';\n public static displayName = 'RadioGroup';\n\n public static defaultProps: DefaultProps = {\n renderItem,\n };\n\n public static Prevent = Prevent;\n\n private node: Nullable<HTMLSpanElement>;\n private name = getRandomID();\n private getProps = createPropsGetter(RadioGroup.defaultProps);\n private setRootNode!: TSetRootNode;\n\n constructor(props: RadioGroupProps<T>) {\n super(props);\n\n this.state = {\n activeItem: this.props.defaultValue,\n };\n }\n\n private getRadioGroupContextValue = (): RadioGroupContextType<T> => {\n return {\n activeItem: this.getValue(),\n onSelect: this.handleSelect,\n name: this.getName(),\n disabled: this.props.disabled,\n error: this.props.error,\n warning: this.props.warning,\n };\n };\n\n public render() {\n const {\n width,\n onMouseLeave,\n onMouseOver,\n onMouseEnter,\n onBlur,\n 'aria-describedby': ariaDescribedby,\n disabled,\n } = this.props;\n const style = {\n width: width ?? 'auto',\n };\n const handlers = {\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n };\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props} {...getVisualStateDataAttributes({ disabled })}>\n <FocusTrap onBlur={onBlur}>\n <span\n data-tid={RadioGroupDataTids.root}\n ref={this.ref}\n style={style}\n className={styles.root()}\n role=\"radiogroup\"\n {...handlers}\n aria-describedby={ariaDescribedby}\n >\n <RadioGroupContext.Provider value={this.getRadioGroupContextValue()}>\n {this.renderChildren()}\n </RadioGroupContext.Provider>\n </span>\n </FocusTrap>\n </CommonWrapper>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n const node = this.node;\n if (!node) {\n return;\n }\n\n let radio = node.querySelector('input[type=\"radio\"]:checked') as Nullable<HTMLInputElement>;\n\n // If no checked radios, try get first radio\n if (!radio || radio.disabled) {\n radio = node.querySelector('input[type=\"radio\"]:not([disabled])') as Nullable<HTMLInputElement>;\n }\n\n if (radio) {\n radio.focus();\n }\n }\n\n private getValue = () => (this.isControlled() ? this.props.value : this.state.activeItem);\n\n private getName = () => this.props.name || this.name;\n\n private isControlled = () => isNonNullable(this.props.value);\n\n private handleSelect = (value: T) => {\n if (!this.isControlled()) {\n this.setState({ activeItem: value });\n }\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private renderChildren() {\n const { items, children } = this.props;\n invariant((!items && children) || (items && !children), 'Either items or children must be passed, not both');\n return items ? mapItems<T>(this.renderRadio, items) : children;\n }\n\n private renderRadio = (itemValue: T, data: React.ReactNode, index: number): JSX.Element => {\n const itemProps = {\n key: this.getKeyByItem(itemValue),\n className: cx({\n [styles.item()]: true,\n [styles.itemFirst()]: index === 0,\n [styles.itemInline()]: !!this.props.inline,\n }),\n };\n\n return (\n <span {...itemProps} role=\"presentation\">\n <Radio value={itemValue}>{this.getProps().renderItem(itemValue, data)}</Radio>\n </span>\n );\n };\n\n private getKeyByItem = (itemValue: T) => {\n if (this.props.toKey) {\n return this.props.toKey(itemValue);\n }\n return typeof itemValue === 'string' || typeof itemValue === 'number' ? itemValue : undefined;\n };\n\n private ref = (element: HTMLSpanElement) => {\n this.node = element;\n };\n}\n\nfunction renderItem<T>(_value: T, data: React.ReactNode) {\n return data;\n}\n\nfunction mapItems<T>(\n fn: (value: T, data: React.ReactNode, index: number) => React.ReactNode,\n items: T[] | Array<[T, React.ReactNode]>,\n) {\n const result: React.ReactNode[] = [];\n let index = 0;\n for (const entry of items) {\n const [value, data] = normalizeEntry<T>(entry);\n result.push(fn(value, data, index));\n ++index;\n }\n return result;\n}\n\nfunction normalizeEntry<T>(entry: T | [T, React.ReactNode]): [T, React.ReactNode] {\n if (!Array.isArray(entry)) {\n return [entry, entry as unknown as React.ReactNode];\n }\n return entry;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","invariant","getRandomID","isNonNullable","Radio","createPropsGetter","FocusTrap","CommonWrapper","cx","rootNode","getVisualStateDataAttributes","getFullReactUIFlagsContext","ReactUIFeatureFlagsContext","styles","Prevent","RadioGroupContext","RadioGroupDataTids","root","RadioGroup","_class","_RadioGroup","_React$Component","props","_this","call","name","getProps","defaultProps","getRadioGroupContextValue","activeItem","getValue","onSelect","handleSelect","getName","disabled","error","warning","isControlled","value","state","setState","onValueChange","renderRadio","itemValue","data","index","_cx","itemProps","key","getKeyByItem","className","item","itemFirst","itemInline","inline","createElement","_extends","role","renderItem","toKey","undefined","ref","element","node","defaultValue","_inheritsLoose","_proto","prototype","render","_this2","_this$props","width","onMouseLeave","onMouseOver","onMouseEnter","onBlur","ariaDescribedby","style","handlers","Consumer","flags","_cx2","featureFlags","rootNodeRef","setRootNode","removeBaselineSpacer","radioGroupRemoveBaselineSpacer","Provider","renderChildren","focus","radio","querySelector","_this$props2","items","children","mapItems","Component","__KONTUR_REACT_UI__","displayName","_value","fn","result","_iterator","_createForOfIteratorHelperLoose","_step","done","entry","_normalizeEntry","normalizeEntry","push","Array","isArray"],"sources":["RadioGroup.tsx"],"sourcesContent":["import type { AriaAttributes } from 'react';\nimport React from 'react';\nimport invariant from 'invariant';\n\nimport { getRandomID, isNonNullable } from '../../lib/utils';\nimport { Radio } from '../Radio';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { Nullable } from '../../typings/utility-types';\nimport { FocusTrap } from '../../internal/FocusTrap';\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 { getVisualStateDataAttributes } from '../../internal/CommonWrapper/utils/getVisualStateDataAttributes';\nimport type { ReactUIFeatureFlags } from '../../lib/featureFlagsContext';\nimport { getFullReactUIFlagsContext, ReactUIFeatureFlagsContext } from '../../lib/featureFlagsContext';\n\nimport { styles } from './RadioGroup.styles';\nimport { Prevent } from './Prevent';\nimport type { RadioGroupContextType } from './RadioGroupContext';\nimport { RadioGroupContext } from './RadioGroupContext';\n\nexport interface RadioGroupProps<T = string | number> extends CommonProps {\n /** Задает значение по умолчанию. Должно быть одним из значений дочерних радиокнопок или значений из параметра `items`. */\n defaultValue?: T;\n\n /** Задает значение радиогруппы. Должно быть одним из значений радиокнопок.\n * Если не указано, то компонент будет работать, как неконтролируемый. */\n value?: T;\n\n /** Задает массив параметров радиокнопок. Может быть типа `Array<Value>` или `Array<[Value, Data]>`,\n * где тип `Value` — значение радиокнопки, а `Data` — значение которое будет использовано вторым параметром в `renderItem`.\n * Тип `Array<Value>` будет приведен к типу `Array<[Value, Value]>`.\n * Может быть использовано, если не передан параметр `children`. */\n items?: T[] | Array<[T, React.ReactNode]>;\n\n /** Устанавливает аттрибут name для вложенных радиокнопок. Если не указан, то сгенерируется случайное имя. */\n name?: string;\n\n /** Получает уникальный ключ по элементу\n * @param item - элемент, по которуму нужно получить ключ. */\n toKey?: (item: T) => string | number;\n\n /** Делает все радиокнопки недоступными. */\n disabled?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"предупреждение\". */\n warning?: boolean;\n\n /** Переводит все радиокнопки в состояние валидации \"ошибка\". */\n error?: boolean;\n\n /** Выравнивает элементы items в строку. Не работает с children. */\n inline?: boolean;\n\n /** Задает ширину радиогруппы. Не работает с `children`. */\n width?: React.CSSProperties['width'];\n\n /** Задает функцию, которая отображает контент радиокнопки. Не работает с `children`.\n * @param {Value} itemValue - значение радиокнопки.\n * @param {Data} data - значение для отрисовки радиокнопки. */\n renderItem?: (itemValue: T, data: React.ReactNode) => React.ReactNode;\n\n /** @ignore */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n\n /** Задает функцию, которая вызывается при изменении значения радиогруппы (value). */\n onValueChange?: (value: T) => void;\n\n /** Задает функцию, которая вызывается при потере радиогруппой фокуса. */\n onBlur?: (event: FocusEvent) => void;\n\n /** Задает функцию, которая вызывается при уходе мышки с объекта (событие `onmouseleave`). */\n onMouseLeave?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseover`). */\n onMouseOver?: () => any;\n\n /** Задает функцию, которая вызывается при наведении мышкой (событие `onmouseenter`). См разницу с onMouseOver в [документации](https://learn.javascript.ru/mousemove-mouseover-mouseout-mouseenter-mouseleave) */\n onMouseEnter?: () => any;\n}\n\nexport interface RadioGroupState<T> {\n activeItem?: T;\n}\n\nexport const RadioGroupDataTids = {\n root: 'RadioGroup__root',\n} as const;\n\ntype DefaultProps = Required<Pick<RadioGroupProps<unknown>, 'renderItem'>>;\n\n/**\n * Группа радиокнопок `RadioGroup` используется для выбора одного значения из нескольких, когда вариантов выбора немного — 2–5.\n *\n * `children` может содержать любую разметку с компонентами Radio, если не передан параметр `items`.\n * Каждому компоненту Radio нужно указать параметр `value`, такого же типа, как и параметр `value` самой радиогруппы.\n *\n * Значения активного элемента сравниваются по строгому равенству `===`.\n */\n@rootNode\nexport class RadioGroup<T> extends React.Component<RadioGroupProps<T>, RadioGroupState<T>> {\n public static __KONTUR_REACT_UI__ = 'RadioGroup';\n public static displayName = 'RadioGroup';\n\n public static defaultProps: DefaultProps = {\n renderItem,\n };\n\n public static Prevent = Prevent;\n\n private node: Nullable<HTMLSpanElement>;\n private name = getRandomID();\n private getProps = createPropsGetter(RadioGroup.defaultProps);\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n private featureFlags!: ReactUIFeatureFlags;\n\n constructor(props: RadioGroupProps<T>) {\n super(props);\n\n this.state = {\n activeItem: this.props.defaultValue,\n };\n }\n\n private getRadioGroupContextValue = (): RadioGroupContextType<T> => {\n return {\n activeItem: this.getValue(),\n onSelect: this.handleSelect,\n name: this.getName(),\n disabled: this.props.disabled,\n error: this.props.error,\n warning: this.props.warning,\n };\n };\n\n public render() {\n const {\n width,\n onMouseLeave,\n onMouseOver,\n onMouseEnter,\n onBlur,\n 'aria-describedby': ariaDescribedby,\n disabled,\n } = this.props;\n const style = {\n width: width ?? 'auto',\n };\n const handlers = {\n onMouseOver,\n onMouseEnter,\n onMouseLeave,\n };\n\n return (\n <ReactUIFeatureFlagsContext.Consumer>\n {(flags) => {\n this.featureFlags = getFullReactUIFlagsContext(flags);\n return (\n <CommonWrapper\n rootNodeRef={this.setRootNode}\n {...this.props}\n {...getVisualStateDataAttributes({ disabled })}\n >\n <FocusTrap onBlur={onBlur}>\n <span\n data-tid={RadioGroupDataTids.root}\n ref={this.ref}\n style={style}\n className={cx({\n [styles.root()]: true,\n [styles.removeBaselineSpacer()]: this.featureFlags.radioGroupRemoveBaselineSpacer,\n })}\n role=\"radiogroup\"\n {...handlers}\n aria-describedby={ariaDescribedby}\n >\n <RadioGroupContext.Provider value={this.getRadioGroupContextValue()}>\n {this.renderChildren()}\n </RadioGroupContext.Provider>\n </span>\n </FocusTrap>\n </CommonWrapper>\n );\n }}\n </ReactUIFeatureFlagsContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n const node = this.node;\n if (!node) {\n return;\n }\n\n let radio = node.querySelector('input[type=\"radio\"]:checked') as Nullable<HTMLInputElement>;\n\n // If no checked radios, try get first radio\n if (!radio || radio.disabled) {\n radio = node.querySelector('input[type=\"radio\"]:not([disabled])') as Nullable<HTMLInputElement>;\n }\n\n if (radio) {\n radio.focus();\n }\n }\n\n private getValue = () => (this.isControlled() ? this.props.value : this.state.activeItem);\n\n private getName = () => this.props.name || this.name;\n\n private isControlled = () => isNonNullable(this.props.value);\n\n private handleSelect = (value: T) => {\n if (!this.isControlled()) {\n this.setState({ activeItem: value });\n }\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private renderChildren() {\n const { items, children } = this.props;\n invariant((!items && children) || (items && !children), 'Either items or children must be passed, not both');\n return items ? mapItems<T>(this.renderRadio, items) : children;\n }\n\n private renderRadio = (itemValue: T, data: React.ReactNode, index: number): JSX.Element => {\n const itemProps = {\n key: this.getKeyByItem(itemValue),\n className: cx({\n [styles.item()]: true,\n [styles.itemFirst()]: index === 0,\n [styles.itemInline()]: !!this.props.inline,\n }),\n };\n\n return (\n <span {...itemProps} role=\"presentation\">\n <Radio value={itemValue}>{this.getProps().renderItem(itemValue, data)}</Radio>\n </span>\n );\n };\n\n private getKeyByItem = (itemValue: T) => {\n if (this.props.toKey) {\n return this.props.toKey(itemValue);\n }\n return typeof itemValue === 'string' || typeof itemValue === 'number' ? itemValue : undefined;\n };\n\n private ref = (element: HTMLSpanElement) => {\n this.node = element;\n };\n}\n\nfunction renderItem<T>(_value: T, data: React.ReactNode) {\n return data;\n}\n\nfunction mapItems<T>(\n fn: (value: T, data: React.ReactNode, index: number) => React.ReactNode,\n items: T[] | Array<[T, React.ReactNode]>,\n) {\n const result: React.ReactNode[] = [];\n let index = 0;\n for (const entry of items) {\n const [value, data] = normalizeEntry<T>(entry);\n result.push(fn(value, data, index));\n ++index;\n }\n return result;\n}\n\nfunction normalizeEntry<T>(entry: T | [T, React.ReactNode]): [T, React.ReactNode] {\n if (!Array.isArray(entry)) {\n return [entry, entry as unknown as React.ReactNode];\n }\n return entry;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { AriaAttributes } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { CommonProps } from '../../internal/CommonWrapper';
|
|
4
|
+
import type { TGetRootNode } from '../../lib/rootNode';
|
|
4
5
|
import { Prevent } from './Prevent';
|
|
5
6
|
export interface RadioGroupProps<T = string | number> extends CommonProps {
|
|
6
7
|
/** Задает значение по умолчанию. Должно быть одним из значений дочерних радиокнопок или значений из параметра `items`. */
|
|
@@ -68,7 +69,9 @@ export declare class RadioGroup<T> extends React.Component<RadioGroupProps<T>, R
|
|
|
68
69
|
private node;
|
|
69
70
|
private name;
|
|
70
71
|
private getProps;
|
|
72
|
+
getRootNode: TGetRootNode;
|
|
71
73
|
private setRootNode;
|
|
74
|
+
private featureFlags;
|
|
72
75
|
constructor(props: RadioGroupProps<T>);
|
|
73
76
|
private getRadioGroupContextValue;
|
|
74
77
|
render(): React.JSX.Element;
|