@skbkontur/react-ui 4.21.2 → 4.21.3
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 +12 -0
- package/cjs/components/Autocomplete/Autocomplete.d.ts +1 -0
- package/cjs/components/Autocomplete/Autocomplete.js +2 -1
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Button/Button.d.ts +1 -0
- package/cjs/components/Button/Button.js +2 -1
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Calendar/Calendar.d.ts +1 -0
- package/cjs/components/Calendar/Calendar.js +2 -1
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/Calendar/DayCellView.js +8 -5
- package/cjs/components/Calendar/DayCellView.js.map +1 -1
- package/cjs/components/Center/Center.d.ts +1 -0
- package/cjs/components/Center/Center.js +2 -1
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.d.ts +1 -0
- package/cjs/components/Checkbox/Checkbox.js +2 -1
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/ComboBox/ComboBox.d.ts +1 -0
- package/cjs/components/ComboBox/ComboBox.js +2 -1
- package/cjs/components/ComboBox/ComboBox.js.map +1 -1
- package/cjs/components/CurrencyInput/CurrencyInput.d.ts +1 -0
- package/cjs/components/CurrencyInput/CurrencyInput.js +2 -1
- package/cjs/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.d.ts +1 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +1 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/DateInput/DateInput.d.ts +1 -0
- package/cjs/components/DateInput/DateInput.js +2 -1
- package/cjs/components/DateInput/DateInput.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.d.ts +1 -0
- package/cjs/components/DatePicker/DatePicker.js +2 -1
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePicker/Picker.d.ts +1 -0
- package/cjs/components/DatePicker/Picker.js +2 -1
- package/cjs/components/DatePicker/Picker.js.map +1 -1
- package/cjs/components/Dropdown/Dropdown.d.ts +1 -0
- package/cjs/components/Dropdown/Dropdown.js +2 -1
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +1 -0
- package/cjs/components/DropdownMenu/DropdownMenu.js +2 -1
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.js +2 -1
- package/cjs/components/FileUploader/FileUploader.js.map +1 -1
- package/cjs/components/FxInput/FxInput.d.ts +1 -0
- package/cjs/components/FxInput/FxInput.js +2 -1
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/Gapped/Gapped.d.ts +1 -0
- package/cjs/components/Gapped/Gapped.js +2 -1
- package/cjs/components/Gapped/Gapped.js.map +1 -1
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js +4 -1
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/cjs/components/Group/Group.d.ts +1 -0
- package/cjs/components/Group/Group.js +3 -1
- package/cjs/components/Group/Group.js.map +1 -1
- package/cjs/components/Hint/Hint.d.ts +1 -0
- package/cjs/components/Hint/Hint.js +2 -1
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Input/Input.d.ts +1 -0
- package/cjs/components/Input/Input.js +2 -1
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +1 -0
- package/cjs/components/Kebab/Kebab.js +2 -1
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.d.ts +1 -0
- package/cjs/components/Link/Link.js +2 -1
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Loader/Loader.d.ts +1 -0
- package/cjs/components/Loader/Loader.js +2 -1
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/MenuFooter/MenuFooter.d.ts +1 -0
- package/cjs/components/MenuFooter/MenuFooter.js +1 -0
- package/cjs/components/MenuFooter/MenuFooter.js.map +1 -1
- package/cjs/components/MenuHeader/MenuHeader.d.ts +1 -0
- package/cjs/components/MenuHeader/MenuHeader.js +1 -0
- package/cjs/components/MenuHeader/MenuHeader.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +4 -0
- package/cjs/components/MenuItem/MenuItem.js +29 -10
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/MenuSeparator/MenuSeparator.d.ts +1 -0
- package/cjs/components/MenuSeparator/MenuSeparator.js +2 -1
- package/cjs/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/cjs/components/MiniModal/MiniModal.js +0 -2
- package/cjs/components/MiniModal/MiniModal.js.map +1 -1
- package/cjs/components/Modal/Modal.d.ts +1 -0
- package/cjs/components/Modal/Modal.js +2 -1
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/Modal/ModalBody.d.ts +1 -0
- package/cjs/components/Modal/ModalBody.js +2 -1
- package/cjs/components/Modal/ModalBody.js.map +1 -1
- package/cjs/components/Modal/ModalClose.d.ts +4 -0
- package/cjs/components/Modal/ModalClose.js +4 -1
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.d.ts +1 -0
- package/cjs/components/Modal/ModalFooter.js +1 -0
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/Modal/ModalHeader.d.ts +1 -0
- package/cjs/components/Modal/ModalHeader.js +1 -0
- package/cjs/components/Modal/ModalHeader.js.map +1 -1
- package/cjs/components/Modal/ModalSeparator.d.ts +4 -0
- package/cjs/components/Modal/ModalSeparator.js +4 -1
- package/cjs/components/Modal/ModalSeparator.js.map +1 -1
- package/cjs/components/Paging/Paging.d.ts +1 -0
- package/cjs/components/Paging/Paging.js +10 -6
- package/cjs/components/Paging/Paging.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.d.ts +1 -0
- package/cjs/components/PasswordInput/PasswordInput.js +2 -1
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Radio/Radio.d.ts +1 -0
- package/cjs/components/Radio/Radio.js +2 -1
- package/cjs/components/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.d.ts +1 -0
- package/cjs/components/RadioGroup/RadioGroup.js +2 -1
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -0
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js +4 -1
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/cjs/components/ScrollContainer/ScrollContainer.d.ts +1 -0
- package/cjs/components/ScrollContainer/ScrollContainer.js +2 -1
- package/cjs/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/cjs/components/Select/Item.d.ts +1 -0
- package/cjs/components/Select/Item.js +2 -1
- package/cjs/components/Select/Item.js.map +1 -1
- package/cjs/components/Select/Select.d.ts +2 -0
- package/cjs/components/Select/Select.js +5 -2
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +1 -0
- package/cjs/components/SidePage/SidePage.js +2 -1
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePageBody.d.ts +1 -0
- package/cjs/components/SidePage/SidePageBody.js +2 -1
- package/cjs/components/SidePage/SidePageBody.js.map +1 -1
- package/cjs/components/SidePage/SidePageCloseButton.d.ts +5 -1
- package/cjs/components/SidePage/SidePageCloseButton.js +4 -1
- package/cjs/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/cjs/components/SidePage/SidePageContainer.d.ts +1 -0
- package/cjs/components/SidePage/SidePageContainer.js +2 -1
- package/cjs/components/SidePage/SidePageContainer.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.d.ts +1 -0
- package/cjs/components/SidePage/SidePageFooter.js +2 -1
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +1 -0
- package/cjs/components/SidePage/SidePageHeader.js +2 -1
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/SingleToast/SingleToast.d.ts +2 -0
- package/cjs/components/SingleToast/SingleToast.js +4 -1
- package/cjs/components/SingleToast/SingleToast.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +1 -0
- package/cjs/components/Spinner/Spinner.js +2 -1
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Sticky/Sticky.d.ts +1 -0
- package/cjs/components/Sticky/Sticky.js +2 -1
- package/cjs/components/Sticky/Sticky.js.map +1 -1
- package/cjs/components/Switcher/Switcher.d.ts +1 -0
- package/cjs/components/Switcher/Switcher.js +2 -1
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Tabs/Tab.d.ts +1 -0
- package/cjs/components/Tabs/Tab.js +7 -1
- package/cjs/components/Tabs/Tab.js.map +1 -1
- package/cjs/components/Tabs/Tabs.d.ts +1 -0
- package/cjs/components/Tabs/Tabs.js +2 -1
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +1 -0
- package/cjs/components/Textarea/Textarea.js +2 -1
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Toast/Toast.d.ts +1 -0
- package/cjs/components/Toast/Toast.js +3 -1
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +1 -0
- package/cjs/components/Toggle/Toggle.js +2 -1
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Token/Token.d.ts +1 -0
- package/cjs/components/Token/Token.js +8 -1
- package/cjs/components/Token/Token.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +1 -0
- package/cjs/components/TokenInput/TokenInput.js +2 -1
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/TokenInput/TokenInputMenu.d.ts +1 -0
- package/cjs/components/TokenInput/TokenInputMenu.js +2 -1
- package/cjs/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +1 -0
- package/cjs/components/Tooltip/Tooltip.js +2 -1
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +1 -0
- package/cjs/components/TooltipMenu/TooltipMenu.js +3 -1
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js +4 -1
- package/cjs/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/cjs/internal/CommonWrapper/CommonWrapper.d.ts +5 -26
- package/cjs/internal/CommonWrapper/CommonWrapper.js +7 -56
- package/cjs/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/cjs/internal/CommonWrapper/extractCommonProps.d.ts +3 -0
- package/cjs/internal/CommonWrapper/extractCommonProps.js +34 -0
- package/cjs/internal/CommonWrapper/extractCommonProps.js.map +1 -0
- package/cjs/internal/CommonWrapper/getCommonVisualStateDataAttributes.d.ts +2 -0
- package/cjs/internal/CommonWrapper/getCommonVisualStateDataAttributes.js +12 -0
- package/cjs/internal/CommonWrapper/getCommonVisualStateDataAttributes.js.map +1 -0
- package/cjs/internal/CommonWrapper/getVisualStateDataAttributes.d.ts +3 -0
- package/cjs/internal/CommonWrapper/getVisualStateDataAttributes.js +23 -0
- package/cjs/internal/CommonWrapper/getVisualStateDataAttributes.js.map +1 -0
- package/cjs/internal/CommonWrapper/index.d.ts +2 -0
- package/cjs/internal/CommonWrapper/index.js.map +1 -1
- package/cjs/internal/CommonWrapper/types.d.ts +25 -0
- package/cjs/internal/CommonWrapper/types.js +1 -0
- package/cjs/internal/CommonWrapper/types.js.map +1 -0
- package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +1 -0
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js +2 -1
- package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +1 -0
- package/cjs/internal/CustomComboBox/ComboBoxView.js +2 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +1 -0
- package/cjs/internal/CustomComboBox/CustomComboBox.js +2 -1
- package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/cjs/internal/DateSelect/DateSelect.d.ts +1 -0
- package/cjs/internal/DateSelect/DateSelect.js +2 -1
- package/cjs/internal/DateSelect/DateSelect.js.map +1 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.d.ts +1 -0
- package/cjs/internal/DropdownContainer/DropdownContainer.js +2 -1
- package/cjs/internal/DropdownContainer/DropdownContainer.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/cjs/internal/FocusTrap/FocusTrap.d.ts +1 -0
- package/cjs/internal/FocusTrap/FocusTrap.js +3 -1
- package/cjs/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +1 -0
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +2 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js +2 -1
- package/cjs/internal/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.d.ts +1 -0
- package/cjs/internal/InputLikeText/InputLikeText.js +2 -1
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.d.ts +1 -0
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js +2 -1
- package/cjs/internal/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
- package/cjs/internal/InternalMenu/InternalMenu.d.ts +1 -0
- package/cjs/internal/InternalMenu/InternalMenu.js +2 -1
- package/cjs/internal/InternalMenu/InternalMenu.js.map +1 -1
- package/cjs/internal/Menu/Menu.d.ts +1 -0
- package/cjs/internal/Menu/Menu.js +2 -1
- package/cjs/internal/Menu/Menu.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopup.d.ts +1 -0
- package/cjs/internal/MobilePopup/MobilePopup.js +2 -1
- package/cjs/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +1 -0
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +2 -1
- package/cjs/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/cjs/internal/NativeDateInput/NativeDateInput.d.ts +1 -0
- package/cjs/internal/NativeDateInput/NativeDateInput.js +3 -1
- package/cjs/internal/NativeDateInput/NativeDateInput.js.map +1 -1
- package/cjs/internal/Popup/Popup.d.ts +1 -0
- package/cjs/internal/Popup/Popup.js +2 -1
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupPin.d.ts +1 -0
- package/cjs/internal/Popup/PopupPin.js +2 -1
- package/cjs/internal/Popup/PopupPin.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.js +2 -1
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderContainer.d.ts +1 -0
- package/cjs/internal/RenderContainer/RenderContainer.js +2 -1
- package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderInnerContainer.d.ts +3 -0
- package/cjs/internal/RenderContainer/RenderInnerContainer.js +7 -2
- package/cjs/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/cjs/internal/RenderLayer/RenderLayer.d.ts +1 -0
- package/cjs/internal/RenderLayer/RenderLayer.js +2 -1
- package/cjs/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
- package/cjs/internal/ResizeDetector/ResizeDetector.js +2 -1
- package/cjs/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndex.d.ts +1 -0
- package/cjs/internal/ZIndex/ZIndex.js +2 -1
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/cjs/internal/icons/20px/Icon.d.ts +1 -0
- package/cjs/internal/icons/20px/Icon.js +2 -1
- package/cjs/internal/icons/20px/Icon.js.map +1 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js +3 -1
- package/cjs/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/cjs/lib/locale/LocaleContext.js +2 -1
- package/cjs/lib/locale/LocaleContext.js.map +1 -1
- package/cjs/lib/rootNode/rootNodeDecorator.d.ts +2 -0
- package/cjs/lib/rootNode/rootNodeDecorator.js +4 -1
- package/cjs/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.js +2 -1
- package/cjs/lib/theming/ThemeContext.js.map +1 -1
- package/cjs/lib/toKebabCase.d.ts +1 -0
- package/cjs/lib/toKebabCase.js +10 -0
- package/cjs/lib/toKebabCase.js.map +1 -0
- package/cjs/typings/global-react.d.ts +12 -0
- package/components/Autocomplete/Autocomplete/Autocomplete.js +1 -1
- package/components/Autocomplete/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +1 -0
- package/components/Button/Button/Button.js +1 -1
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +1 -0
- package/components/Calendar/Calendar/Calendar.js +1 -1
- package/components/Calendar/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.d.ts +1 -0
- package/components/Calendar/DayCellView/DayCellView.js +9 -3
- package/components/Calendar/DayCellView/DayCellView.js.map +1 -1
- package/components/Center/Center/Center.js +1 -1
- package/components/Center/Center/Center.js.map +1 -1
- package/components/Center/Center.d.ts +1 -0
- package/components/Checkbox/Checkbox/Checkbox.js +1 -1
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.d.ts +1 -0
- package/components/ComboBox/ComboBox/ComboBox.js +1 -1
- package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/ComboBox.d.ts +1 -0
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js +1 -1
- package/components/CurrencyInput/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.d.ts +1 -0
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +1 -0
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel.d.ts +1 -0
- package/components/DateInput/DateInput/DateInput.js +1 -1
- package/components/DateInput/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.d.ts +1 -0
- package/components/DatePicker/DatePicker/DatePicker.js +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +1 -0
- package/components/DatePicker/Picker/Picker.js +1 -1
- package/components/DatePicker/Picker/Picker.js.map +1 -1
- package/components/DatePicker/Picker.d.ts +1 -0
- package/components/Dropdown/Dropdown/Dropdown.js +1 -1
- package/components/Dropdown/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/Dropdown.d.ts +1 -0
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js +1 -1
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +1 -0
- package/components/FileUploader/FileUploader/FileUploader.js +2 -1
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
- package/components/FxInput/FxInput/FxInput.js +1 -1
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInput.d.ts +1 -0
- package/components/Gapped/Gapped/Gapped.js +1 -1
- package/components/Gapped/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/Gapped.d.ts +1 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +1 -1
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.d.ts +2 -0
- package/components/Group/Group/Group.js +1 -1
- package/components/Group/Group/Group.js.map +1 -1
- package/components/Group/Group.d.ts +1 -0
- package/components/Hint/Hint/Hint.js +1 -1
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +1 -0
- package/components/Input/Input/Input.js +1 -1
- package/components/Input/Input/Input.js.map +1 -1
- package/components/Input/Input.d.ts +1 -0
- package/components/Kebab/Kebab/Kebab.js +1 -1
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +1 -0
- package/components/Link/Link/Link.js +1 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.d.ts +1 -0
- package/components/Loader/Loader/Loader.js +1 -1
- package/components/Loader/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.d.ts +1 -0
- package/components/MenuFooter/MenuFooter/MenuFooter.js +1 -0
- package/components/MenuFooter/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.d.ts +1 -0
- package/components/MenuHeader/MenuHeader/MenuHeader.js +1 -0
- package/components/MenuHeader/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.d.ts +1 -0
- package/components/MenuItem/MenuItem/MenuItem.js +29 -6
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +4 -0
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js +1 -0
- package/components/MenuSeparator/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.d.ts +1 -0
- package/components/MiniModal/MiniModal/MiniModal.js +0 -1
- package/components/MiniModal/MiniModal/MiniModal.js.map +1 -1
- package/components/Modal/Modal/Modal.js +1 -0
- package/components/Modal/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.d.ts +1 -0
- package/components/Modal/ModalBody/ModalBody.js +1 -1
- package/components/Modal/ModalBody/ModalBody.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +1 -0
- package/components/Modal/ModalClose/ModalClose.js +3 -1
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Modal/ModalClose.d.ts +4 -0
- package/components/Modal/ModalFooter/ModalFooter.js +1 -0
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/Modal/ModalFooter.d.ts +1 -0
- package/components/Modal/ModalHeader/ModalHeader.js +1 -0
- package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/components/Modal/ModalHeader.d.ts +1 -0
- package/components/Modal/ModalSeparator/ModalSeparator.js +3 -1
- package/components/Modal/ModalSeparator/ModalSeparator.js.map +1 -1
- package/components/Modal/ModalSeparator.d.ts +4 -0
- package/components/Paging/Paging/Paging.js +11 -5
- package/components/Paging/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.d.ts +1 -0
- package/components/PasswordInput/PasswordInput/PasswordInput.js +1 -1
- package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.d.ts +1 -0
- package/components/Radio/Radio/Radio.js +1 -1
- package/components/Radio/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.d.ts +1 -0
- package/components/RadioGroup/RadioGroup/RadioGroup.js +1 -1
- package/components/RadioGroup/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.d.ts +1 -0
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js +3 -1
- package/components/ResponsiveLayout/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayout.d.ts +4 -0
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js +1 -1
- package/components/ScrollContainer/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.d.ts +1 -0
- package/components/Select/Item/Item.js +2 -1
- package/components/Select/Item/Item.js.map +1 -1
- package/components/Select/Item.d.ts +1 -0
- package/components/Select/Select/Select.js +4 -2
- package/components/Select/Select/Select.js.map +1 -1
- package/components/Select/Select.d.ts +2 -0
- package/components/SidePage/SidePage/SidePage.js +1 -0
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +1 -0
- package/components/SidePage/SidePageBody/SidePageBody.js +1 -1
- package/components/SidePage/SidePageBody/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageBody.d.ts +1 -0
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js +3 -1
- package/components/SidePage/SidePageCloseButton/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageCloseButton.d.ts +5 -1
- package/components/SidePage/SidePageContainer/SidePageContainer.js +1 -1
- package/components/SidePage/SidePageContainer/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContainer.d.ts +1 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js +1 -1
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageFooter.d.ts +1 -0
- package/components/SidePage/SidePageHeader/SidePageHeader.js +1 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +1 -0
- package/components/SingleToast/SingleToast/SingleToast.js +2 -0
- package/components/SingleToast/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +2 -0
- package/components/Spinner/Spinner/Spinner.js +1 -1
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +1 -0
- package/components/Sticky/Sticky/Sticky.js +1 -1
- package/components/Sticky/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.d.ts +1 -0
- package/components/Switcher/Switcher/Switcher.js +1 -1
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.d.ts +1 -0
- package/components/Tabs/Tab/Tab.js +6 -2
- package/components/Tabs/Tab/Tab.js.map +1 -1
- package/components/Tabs/Tab.d.ts +1 -0
- package/components/Tabs/Tabs/Tabs.js +1 -1
- package/components/Tabs/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.d.ts +1 -0
- package/components/Textarea/Textarea/Textarea.js +1 -1
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +1 -0
- package/components/Toast/Toast/Toast.js +1 -1
- package/components/Toast/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.d.ts +1 -0
- package/components/Toggle/Toggle/Toggle.js +1 -1
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +1 -0
- package/components/Token/Token/Token.js +2 -2
- package/components/Token/Token/Token.js.map +1 -1
- package/components/Token/Token.d.ts +1 -0
- package/components/TokenInput/TokenInput/TokenInput.js +1 -1
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +1 -0
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js +2 -1
- package/components/TokenInput/TokenInputMenu/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +1 -0
- package/components/Tooltip/Tooltip/Tooltip.js +1 -1
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +1 -0
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js +1 -1
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +1 -0
- package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js +3 -1
- package/internal/CloseButtonIcon/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js +8 -38
- package/internal/CommonWrapper/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.d.ts +5 -26
- package/internal/CommonWrapper/extractCommonProps/extractCommonProps.js +31 -0
- package/internal/CommonWrapper/extractCommonProps/extractCommonProps.js.map +1 -0
- package/internal/CommonWrapper/extractCommonProps/package.json +6 -0
- package/internal/CommonWrapper/extractCommonProps.d.ts +3 -0
- package/internal/CommonWrapper/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js +12 -0
- package/internal/CommonWrapper/getCommonVisualStateDataAttributes/getCommonVisualStateDataAttributes.js.map +1 -0
- package/internal/CommonWrapper/getCommonVisualStateDataAttributes/package.json +6 -0
- package/internal/CommonWrapper/getCommonVisualStateDataAttributes.d.ts +2 -0
- package/internal/CommonWrapper/getVisualStateDataAttributes/getVisualStateDataAttributes.js +16 -0
- package/internal/CommonWrapper/getVisualStateDataAttributes/getVisualStateDataAttributes.js.map +1 -0
- package/internal/CommonWrapper/getVisualStateDataAttributes/package.json +6 -0
- package/internal/CommonWrapper/getVisualStateDataAttributes.d.ts +3 -0
- package/internal/CommonWrapper/index/index.js +2 -1
- package/internal/CommonWrapper/index/index.js.map +1 -1
- package/internal/CommonWrapper/index.d.ts +2 -0
- package/internal/CommonWrapper/types/package.json +6 -0
- package/internal/CommonWrapper/types/types.js +1 -0
- package/internal/CommonWrapper/types/types.js.map +1 -0
- package/internal/CommonWrapper/types.d.ts +25 -0
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +1 -1
- package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxMenu.d.ts +1 -0
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.d.ts +1 -0
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +1 -1
- package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.d.ts +1 -0
- package/internal/DateSelect/DateSelect/DateSelect.js +1 -1
- package/internal/DateSelect/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.d.ts +1 -0
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js +1 -0
- package/internal/DropdownContainer/DropdownContainer/DropdownContainer.js.map +1 -1
- package/internal/DropdownContainer/DropdownContainer.d.ts +1 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +1 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +1 -0
- package/internal/FocusTrap/FocusTrap/FocusTrap.js +1 -1
- package/internal/FocusTrap/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/FocusTrap/FocusTrap.d.ts +1 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +1 -0
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.d.ts +1 -0
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js +1 -1
- package/internal/IgnoreLayerClick/IgnoreLayerClick/IgnoreLayerClick.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +1 -0
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js +2 -1
- package/internal/InternalMaskedInput/InternalMaskedInput/InternalMaskedInput.js.map +1 -1
- package/internal/InternalMaskedInput/InternalMaskedInput.d.ts +1 -0
- package/internal/InternalMenu/InternalMenu/InternalMenu.js +1 -1
- package/internal/InternalMenu/InternalMenu/InternalMenu.js.map +1 -1
- package/internal/InternalMenu/InternalMenu.d.ts +1 -0
- package/internal/Menu/Menu/Menu.js +1 -1
- package/internal/Menu/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.d.ts +1 -0
- package/internal/MobilePopup/MobilePopup/MobilePopup.js +2 -1
- package/internal/MobilePopup/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +1 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js +2 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +1 -0
- package/internal/NativeDateInput/NativeDateInput/NativeDateInput.js +2 -1
- package/internal/NativeDateInput/NativeDateInput/NativeDateInput.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.d.ts +1 -0
- package/internal/Popup/Popup/Popup.js +1 -1
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +1 -0
- package/internal/Popup/PopupPin/PopupPin.js +1 -0
- package/internal/Popup/PopupPin/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +1 -0
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +1 -0
- package/internal/RenderContainer/RenderContainer/RenderContainer.js +1 -0
- package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/RenderContainer/RenderContainer.d.ts +1 -0
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js +4 -1
- package/internal/RenderContainer/RenderInnerContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.d.ts +3 -0
- package/internal/RenderLayer/RenderLayer/RenderLayer.js +1 -1
- package/internal/RenderLayer/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.d.ts +1 -0
- package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js +2 -1
- package/internal/ResizeDetector/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.d.ts +1 -0
- package/internal/ZIndex/ZIndex/ZIndex.js +1 -1
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndex.d.ts +1 -0
- package/internal/icons/20px/Icon/Icon.js +1 -0
- package/internal/icons/20px/Icon/Icon.js.map +1 -1
- package/internal/icons/20px/Icon.d.ts +1 -0
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js +2 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/locale/LocaleContext/LocaleContext.js +2 -1
- package/lib/locale/LocaleContext/LocaleContext.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js +1 -1
- package/lib/rootNode/rootNodeDecorator/rootNodeDecorator.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.d.ts +2 -0
- package/lib/theming/ThemeContext/ThemeContext.js +2 -1
- package/lib/theming/ThemeContext/ThemeContext.js.map +1 -1
- package/lib/toKebabCase/package.json +6 -0
- package/lib/toKebabCase/toKebabCase.js +7 -0
- package/lib/toKebabCase/toKebabCase.js.map +1 -0
- package/lib/toKebabCase.d.ts +1 -0
- package/package.json +8 -8
- package/typings/global-react.d.ts +12 -0
|
@@ -95,6 +95,7 @@ declare type DefaultProps = Required<Pick<TextareaProps, 'rows' | 'maxRows' | 'e
|
|
|
95
95
|
*/
|
|
96
96
|
export declare class Textarea extends React.Component<TextareaProps, TextareaState> {
|
|
97
97
|
static __KONTUR_REACT_UI__: string;
|
|
98
|
+
static displayName: string;
|
|
98
99
|
static propTypes: {
|
|
99
100
|
error: PropTypes.Requireable<boolean>;
|
|
100
101
|
warning: PropTypes.Requireable<boolean>;
|
|
@@ -186,7 +186,7 @@ export var Toast = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_
|
|
|
186
186
|
};
|
|
187
187
|
|
|
188
188
|
return Toast;
|
|
189
|
-
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Toast', _temp)) || _class;
|
|
189
|
+
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Toast', _class2.displayName = 'Toast', _temp)) || _class;
|
|
190
190
|
|
|
191
191
|
function safelyCall(fn) {
|
|
192
192
|
if (fn) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Toast.tsx"],"names":["React","CSSTransition","TransitionGroup","globalObject","ThemeFactory","ThemeContext","RenderContainer","CommonWrapper","isTestEnv","rootNode","styles","ToastView","ToastStatic","ToastDataTids","toastStatic","toastView","action","close","Toast","push","notification","showTime","props","rootRef","createRef","safelyCall","onClose","state","setState","setRootRef","element","setRootNode","current","_clearTimer","_timeout","clearTimeout","_setTimer","setTimeout","_refToast","_toast","id","componentWillUnmount","render","theme","create","_renderToast","onPush","toastProps","onMouseEnter","onMouseLeave","children","enter","enterActive","exit","exitActive","Component","__KONTUR_REACT_UI__","fn","args"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Toast.styles';\nimport { ToastView, ToastViewProps } from './ToastView';\nimport { ToastStatic } from './ToastStatic';\n\nexport interface Action {\n label: string;\n handler: () => void;\n 'aria-label'?: string;\n}\n\nexport interface ToastState {\n notification: Nullable<string>;\n action: Nullable<Action>;\n id: number;\n showTime: Nullable<number>;\n}\n\nexport interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n onPush?: (notification: string, action?: Action) => void;\n onClose?: (notification: string, action?: Action) => void;\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n}\n\nexport const ToastDataTids = {\n toastStatic: 'StaticToast',\n toastView: 'ToastView__root',\n action: 'ToastView__action',\n close: 'ToastView__close',\n} as const;\n\n/**\n * Показывает уведомления.\n *\n * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.\n * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.\n *\n * Для статических тостов <u>рекомендуется</u> использовать компонент [SingleToast](https://tech.skbkontur.ru/react-ui/#/Components/SingleToast) - в нём исправлены эти проблемы.\n *\n */\n@rootNode\nexport class Toast extends React.Component<ToastProps, ToastState> {\n public static __KONTUR_REACT_UI__ = 'Toast';\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public static push(notification: string, action?: Nullable<Action>, showTime?: number) {\n ToastStatic.push(notification, action, showTime);\n }\n\n public static close() {\n ToastStatic.close();\n }\n\n public _toast: Nullable<ToastView>;\n private _timeout: SafeTimer;\n private rootRef = React.createRef<HTMLElement>();\n\n constructor(props: ToastProps) {\n super(props);\n this.state = {\n notification: null,\n action: null,\n id: 0,\n showTime: null,\n };\n }\n\n public componentWillUnmount() {\n this._clearTimer();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <ThemeContext.Provider value={this.theme}>\n <RenderContainer>\n <TransitionGroup>{this._renderToast()}</TransitionGroup>\n </RenderContainer>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Показывает тост с `notification` в качестве сообщения.\n * Тост автоматически скрывается через 3 или 7 секунд,\n * в зависимости от наличия у него кнопки `action`.\n * Время показа можно задать вручную, передав `showTime`.\n *\n * @public\n * @param {string} notification\n * @param {Action} action `action` опциональный параметр формата `{ label: string, handler: function }`\n * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler\n * @param {number} showTime Время существования Toast в миллисекундах\n */\n public push(notification: string, action?: Nullable<Action>, showTime?: number) {\n if (this.state.notification) {\n this.close();\n }\n\n safelyCall(this.props.onPush, notification, action);\n\n this.setState(({ id }) => ({ notification, action, id: id + 1, showTime }), this._setTimer);\n }\n\n /**\n * @public\n */\n public close = () => {\n safelyCall(this.props.onClose, this.state.notification, this.state.action);\n this.setState({ notification: null, action: null });\n };\n\n private _renderToast() {\n const { notification, action, id } = this.state;\n\n if (!notification) {\n return null;\n }\n\n const toastProps: ToastViewProps = {\n onMouseEnter: this._clearTimer,\n onMouseLeave: this._setTimer,\n onClose: this.close,\n children: notification,\n 'aria-label': this.props['aria-label'],\n action,\n };\n\n return (\n <CSSTransition\n key={id}\n classNames={{\n enter: styles.enter(),\n enterActive: styles.enterActive(),\n exit: styles.exit(),\n exitActive: styles.exitActive(),\n }}\n timeout={{\n enter: 200,\n exit: 150,\n }}\n enter={!isTestEnv}\n exit={!isTestEnv}\n nodeRef={this.rootRef}\n >\n <CommonWrapper rootNodeRef={this.setRootRef} {...this.props}>\n <ToastView ref={this._refToast} {...toastProps} />\n </CommonWrapper>\n </CSSTransition>\n );\n }\n\n private setRootRef = (element: Nullable<Element>) => {\n this.setRootNode(element);\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n this.rootRef.current = element;\n };\n\n private _clearTimer = () => {\n if (this._timeout) {\n globalObject.clearTimeout(this._timeout);\n this._timeout = null;\n }\n };\n\n private _setTimer = () => {\n this._clearTimer();\n\n let showTime = this.state.action ? 7000 : 3000;\n showTime = this.state.showTime ?? showTime;\n this._timeout = globalObject.setTimeout(this.close, showTime);\n };\n\n private _refToast = (element: ToastView) => {\n this._toast = element;\n };\n}\n\nfunction safelyCall(fn: Nullable<(a?: any) => any>, ...args: any[]) {\n if (fn) {\n fn(...args);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Toast.tsx"],"names":["React","CSSTransition","TransitionGroup","globalObject","ThemeFactory","ThemeContext","RenderContainer","CommonWrapper","isTestEnv","rootNode","styles","ToastView","ToastStatic","ToastDataTids","toastStatic","toastView","action","close","Toast","push","notification","showTime","props","rootRef","createRef","safelyCall","onClose","state","setState","setRootRef","element","setRootNode","current","_clearTimer","_timeout","clearTimeout","_setTimer","setTimeout","_refToast","_toast","id","componentWillUnmount","render","theme","create","_renderToast","onPush","toastProps","onMouseEnter","onMouseLeave","children","enter","enterActive","exit","exitActive","Component","__KONTUR_REACT_UI__","displayName","fn","args"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport { globalObject, SafeTimer } from '@skbkontur/global-object';\n\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme, ThemeIn } from '../../lib/theming/Theme';\nimport { RenderContainer } from '../../internal/RenderContainer';\nimport { Nullable } from '../../typings/utility-types';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nimport { styles } from './Toast.styles';\nimport { ToastView, ToastViewProps } from './ToastView';\nimport { ToastStatic } from './ToastStatic';\n\nexport interface Action {\n label: string;\n handler: () => void;\n 'aria-label'?: string;\n}\n\nexport interface ToastState {\n notification: Nullable<string>;\n action: Nullable<Action>;\n id: number;\n showTime: Nullable<number>;\n}\n\nexport interface ToastProps extends Pick<AriaAttributes, 'aria-label'>, CommonProps {\n onPush?: (notification: string, action?: Action) => void;\n onClose?: (notification: string, action?: Action) => void;\n /**\n * Обычный объект с переменными темы.\n * Он будет объединён с темой из контекста.\n */\n theme?: ThemeIn;\n}\n\nexport const ToastDataTids = {\n toastStatic: 'StaticToast',\n toastView: 'ToastView__root',\n action: 'ToastView__action',\n close: 'ToastView__close',\n} as const;\n\n/**\n * Показывает уведомления.\n *\n * Доступен статический метод: `Toast.push(notification, action?, showTime?)`.\n * Однако, при его использовании не работает кастомизация, они не поддерживаются в `React@18`, а также могут быть проблемы с перекрытием уведомления другими элементами страницы.\n *\n * Для статических тостов <u>рекомендуется</u> использовать компонент [SingleToast](https://tech.skbkontur.ru/react-ui/#/Components/SingleToast) - в нём исправлены эти проблемы.\n *\n */\n@rootNode\nexport class Toast extends React.Component<ToastProps, ToastState> {\n public static __KONTUR_REACT_UI__ = 'Toast';\n public static displayName = 'Toast';\n\n private setRootNode!: TSetRootNode;\n private theme!: Theme;\n\n public static push(notification: string, action?: Nullable<Action>, showTime?: number) {\n ToastStatic.push(notification, action, showTime);\n }\n\n public static close() {\n ToastStatic.close();\n }\n\n public _toast: Nullable<ToastView>;\n private _timeout: SafeTimer;\n private rootRef = React.createRef<HTMLElement>();\n\n constructor(props: ToastProps) {\n super(props);\n this.state = {\n notification: null,\n action: null,\n id: 0,\n showTime: null,\n };\n }\n\n public componentWillUnmount() {\n this._clearTimer();\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = this.props.theme ? ThemeFactory.create(this.props.theme as Theme, theme) : theme;\n return (\n <ThemeContext.Provider value={this.theme}>\n <RenderContainer>\n <TransitionGroup>{this._renderToast()}</TransitionGroup>\n </RenderContainer>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Показывает тост с `notification` в качестве сообщения.\n * Тост автоматически скрывается через 3 или 7 секунд,\n * в зависимости от наличия у него кнопки `action`.\n * Время показа можно задать вручную, передав `showTime`.\n *\n * @public\n * @param {string} notification\n * @param {Action} action `action` опциональный параметр формата `{ label: string, handler: function }`\n * добавляет кнопку в виде ссылки при клике на которую вызывается переданный handler\n * @param {number} showTime Время существования Toast в миллисекундах\n */\n public push(notification: string, action?: Nullable<Action>, showTime?: number) {\n if (this.state.notification) {\n this.close();\n }\n\n safelyCall(this.props.onPush, notification, action);\n\n this.setState(({ id }) => ({ notification, action, id: id + 1, showTime }), this._setTimer);\n }\n\n /**\n * @public\n */\n public close = () => {\n safelyCall(this.props.onClose, this.state.notification, this.state.action);\n this.setState({ notification: null, action: null });\n };\n\n private _renderToast() {\n const { notification, action, id } = this.state;\n\n if (!notification) {\n return null;\n }\n\n const toastProps: ToastViewProps = {\n onMouseEnter: this._clearTimer,\n onMouseLeave: this._setTimer,\n onClose: this.close,\n children: notification,\n 'aria-label': this.props['aria-label'],\n action,\n };\n\n return (\n <CSSTransition\n key={id}\n classNames={{\n enter: styles.enter(),\n enterActive: styles.enterActive(),\n exit: styles.exit(),\n exitActive: styles.exitActive(),\n }}\n timeout={{\n enter: 200,\n exit: 150,\n }}\n enter={!isTestEnv}\n exit={!isTestEnv}\n nodeRef={this.rootRef}\n >\n <CommonWrapper rootNodeRef={this.setRootRef} {...this.props}>\n <ToastView ref={this._refToast} {...toastProps} />\n </CommonWrapper>\n </CSSTransition>\n );\n }\n\n private setRootRef = (element: Nullable<Element>) => {\n this.setRootNode(element);\n // @ts-expect-error: See: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065.\n this.rootRef.current = element;\n };\n\n private _clearTimer = () => {\n if (this._timeout) {\n globalObject.clearTimeout(this._timeout);\n this._timeout = null;\n }\n };\n\n private _setTimer = () => {\n this._clearTimer();\n\n let showTime = this.state.action ? 7000 : 3000;\n showTime = this.state.showTime ?? showTime;\n this._timeout = globalObject.setTimeout(this.close, showTime);\n };\n\n private _refToast = (element: ToastView) => {\n this._toast = element;\n };\n}\n\nfunction safelyCall(fn: Nullable<(a?: any) => any>, ...args: any[]) {\n if (fn) {\n fn(...args);\n }\n}\n"]}
|
|
@@ -40,6 +40,7 @@ export declare const ToastDataTids: {
|
|
|
40
40
|
*/
|
|
41
41
|
export declare class Toast extends React.Component<ToastProps, ToastState> {
|
|
42
42
|
static __KONTUR_REACT_UI__: string;
|
|
43
|
+
static displayName: string;
|
|
43
44
|
private setRootNode;
|
|
44
45
|
private theme;
|
|
45
46
|
static push(notification: string, action?: Nullable<Action>, showTime?: number): void;
|
|
@@ -292,7 +292,7 @@ var Toggle = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$
|
|
|
292
292
|
};
|
|
293
293
|
|
|
294
294
|
return Toggle;
|
|
295
|
-
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Toggle', _class2.propTypes = {
|
|
295
|
+
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Toggle', _class2.displayName = 'Toggle', _class2.propTypes = {
|
|
296
296
|
checked: PropTypes.bool,
|
|
297
297
|
defaultChecked: PropTypes.bool,
|
|
298
298
|
disabled: PropTypes.bool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Toggle.tsx"],"names":["React","PropTypes","warning","keyListener","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","isTestEnv","isTheme2022","styles","globalClasses","colorWarningShown","ToggleDataTids","root","Toggle","props","getProps","defaultProps","input","focus","isTabPressed","inputRef","element","handleChange","event","onValueChange","target","checked","isUncontrolled","setState","onChange","handleFocus","onFocus","focusByTab","handleBlur","onBlur","state","defaultChecked","componentDidMount","autoFocus","render","theme","renderMain","getContainerSizeClassName","size","containerLarge","containerMedium","containerSmall","getHandleSizeClassName","handleLarge","handleMedium","handleSmall","getButtonSizeClassName","buttonLarge","buttonMedium","buttonSmall","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getInputSizeClassName","inputLarge","inputMedium","inputSmall","getActiveHandleSizeClassName","activeHandleLarge","activeHandleMedium","activeHandleSmall","getCaptionSizeClassName","captionLarge","captionMedium","captionSmall","children","error","color","id","ariaDescribedby","ariaLabel","loading","captionPosition","disableAnimations","disabled","containerClassNames","container","containerDisabled","containerLoading","labelClassNames","rootLeft","disableAnimation","caption","captionClass","captionLeft","disabledCaption","setRootNode","button","buttonRight","isWarning","isError","focused","input2022","backgroundColor","boxShadow","undefined","activeBackground","background","activeBackgroundLoading","disabledBackground","handle","handleDisabled","Component","__KONTUR_REACT_UI__","propTypes","bool","func"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport warning from 'warning';\n\nimport { keyListener } from '../../lib/events/keyListener';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles, globalClasses } from './Toggle.styles';\n\n/**\n * @deprecated use SizeProp\n */\nexport type ToggleSize = SizeProp;\n\nlet colorWarningShown = false;\n\nexport interface ToggleProps extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>, CommonProps {\n children?: React.ReactNode;\n /**\n * Положение `children` относительно переключателя.\n * @default 'right'\n */\n captionPosition?: 'left' | 'right';\n /**\n * Состояние `тогла`, если `true` - `тогл` будет включён, иначе выключен.\n * @default false\n */\n checked?: boolean;\n /**\n * Делает `тогл` включенным по умолчанию.\n */\n defaultChecked?: boolean;\n /**\n * Отключает `тогл`.\n */\n disabled?: boolean;\n /**\n * Событие вызывающееся, когда значение `тогла` меняется, передаёт текущее значение тогла в переданную функцию.\n */\n onValueChange?: (value: boolean) => void;\n /**\n * Событие вызывающееся при клике на `тогл`.\n */\n onChange?: React.ChangeEventHandler<HTMLInputElement>;\n /**\n * Состояние валидации при предупреждении.\n * @default false\n */\n warning?: boolean;\n /**\n * Состояние валидации при ошибке.\n * @default false\n */\n error?: boolean;\n /**\n * Добавляет стили для состояния `loading` и отключает `тогл`.\n */\n loading?: boolean;\n /**\n * Если true, выставляет фокус на `тогле` после загрузки страницы.\n */\n autoFocus?: boolean;\n /** Размер */\n size?: SizeProp;\n /**\n * Событие вызывающееся, когда `тогл` получает фокус.\n */\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n /**\n * Событие вызывающееся, когда `тогл` теряет фокус.\n */\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n /**\n * @deprecated используйте переменную темы `toggleBgChecked` вместо этого пропа.\n */\n color?: React.CSSProperties['color'];\n /**\n * HTML-атрибут `id` для передачи во внутренний `<input />`.\n */\n id?: string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n}\n\nexport interface ToggleState {\n checked?: boolean;\n focusByTab?: boolean;\n}\n\nexport const ToggleDataTids = {\n root: 'Toggle__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<ToggleProps, 'disabled' | 'loading' | 'captionPosition' | 'disableAnimations' | 'size'>\n>;\n\n/**\n * _Примечание:_ под тоглом понимается полный компонент т.е. надпись + переключатель, а не просто переключатель.\n */\n@rootNode\nexport class Toggle extends React.Component<ToggleProps, ToggleState> {\n public static __KONTUR_REACT_UI__ = 'Toggle';\n\n public static propTypes = {\n checked: PropTypes.bool,\n defaultChecked: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n loading: PropTypes.bool,\n warning: PropTypes.bool,\n onValueChange: PropTypes.func,\n color: (props: ToggleProps) => {\n if (props.color && !colorWarningShown) {\n warning(false, `[Toggle]: prop 'color' is deprecated. Please, use theme variable 'toggleBgChecked' instead. `);\n colorWarningShown = true;\n }\n },\n };\n\n public static defaultProps: DefaultProps = {\n disabled: false,\n loading: false,\n captionPosition: 'right',\n disableAnimations: isTestEnv,\n size: 'small',\n };\n\n private getProps = createPropsGetter(Toggle.defaultProps);\n\n private theme!: Theme;\n private input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: ToggleProps) {\n super(props);\n\n this.state = {\n focusByTab: false,\n checked: props.defaultChecked,\n };\n }\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n keyListener.isTabPressed = true;\n this.input.focus();\n }\n };\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private getContainerSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.containerLarge(this.theme);\n case 'medium':\n return styles.containerMedium(this.theme);\n case 'small':\n default:\n return styles.containerSmall(this.theme);\n }\n }\n\n private getHandleSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.handleLarge(this.theme);\n case 'medium':\n return styles.handleMedium(this.theme);\n case 'small':\n default:\n return styles.handleSmall(this.theme);\n }\n }\n\n private getButtonSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.buttonLarge(this.theme);\n case 'medium':\n return styles.buttonMedium(this.theme);\n case 'small':\n default:\n return styles.buttonSmall(this.theme);\n }\n }\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 getInputSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.inputLarge(this.theme);\n case 'medium':\n return styles.inputMedium(this.theme);\n case 'small':\n default:\n return styles.inputSmall(this.theme);\n }\n }\n\n private getActiveHandleSizeClassName() {\n if (isTheme2022(this.theme)) {\n return '';\n }\n switch (this.getProps().size) {\n case 'large':\n return styles.activeHandleLarge(this.theme);\n case 'medium':\n return styles.activeHandleMedium(this.theme);\n case 'small':\n default:\n return styles.activeHandleSmall(this.theme);\n }\n }\n\n private getCaptionSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.captionLarge(this.theme);\n case 'medium':\n return styles.captionMedium(this.theme);\n case 'small':\n default:\n return styles.captionSmall(this.theme);\n }\n }\n\n private renderMain() {\n const {\n children,\n warning,\n error,\n color,\n id,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n const { loading, captionPosition, disableAnimations } = this.getProps();\n const disabled = this.getProps().disabled || loading;\n const checked = this.isUncontrolled() ? this.state.checked : this.props.checked;\n\n const containerClassNames = cx(this.getContainerSizeClassName(), {\n [styles.container(this.theme)]: true,\n [styles.containerDisabled(this.theme)]: !!disabled,\n [globalClasses.container]: true,\n [globalClasses.containerDisabled]: !!disabled,\n [globalClasses.containerLoading]: loading,\n });\n\n const labelClassNames = cx(this.getRootSizeClassName(), this.getActiveHandleSizeClassName(), {\n [styles.root(this.theme)]: true,\n [styles.rootLeft()]: captionPosition === 'left',\n [styles.disabled()]: !!disabled,\n [globalClasses.disabled]: !!disabled,\n [styles.disableAnimation()]: disableAnimations,\n });\n\n let caption = null;\n if (children) {\n const captionClass = cx(this.getCaptionSizeClassName(), {\n [styles.caption(this.theme)]: true,\n [styles.captionLeft(this.theme)]: captionPosition === 'left',\n [styles.disabledCaption(this.theme)]: !!disabled,\n });\n caption = <span className={captionClass}>{children}</span>;\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <label data-tid={ToggleDataTids.root} className={labelClassNames}>\n <div\n className={cx(this.getButtonSizeClassName(), {\n [styles.button(this.theme)]: true,\n [styles.buttonRight()]: captionPosition === 'left',\n [styles.isWarning(this.theme)]: !!warning,\n [styles.isError(this.theme)]: !!error,\n [styles.focused(this.theme)]: !disabled && !!this.state.focusByTab,\n })}\n >\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={this.handleChange}\n className={cx(this.getInputSizeClassName(), isTheme2022(this.theme) && styles.input2022(this.theme), {\n [styles.input(this.theme)]: true,\n })}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n ref={this.inputRef}\n disabled={disabled}\n id={id}\n role=\"switch\"\n aria-label={ariaLabel}\n aria-describedby={ariaDescribedby}\n />\n <div\n className={containerClassNames}\n style={\n checked && color && !disabled\n ? {\n backgroundColor: color,\n boxShadow: `inset 0 0 0 1px ${color}`,\n }\n : undefined\n }\n >\n {!isTheme2022(this.theme) && (\n <div\n className={cx(styles.activeBackground(), globalClasses.background, {\n [styles.activeBackgroundLoading(this.theme)]: loading,\n [styles.disabledBackground(this.theme)]: disabled,\n })}\n style={\n checked && color && !disabled\n ? {\n backgroundColor: color,\n boxShadow: `inset 0 0 0 1px ${color}`,\n }\n : undefined\n }\n />\n )}\n </div>\n <div\n className={cx(this.getHandleSizeClassName(), globalClasses.handle, {\n [styles.handle(this.theme)]: true,\n [styles.handleDisabled(this.theme)]: disabled,\n })}\n />\n </div>\n {caption}\n </label>\n </CommonWrapper>\n );\n }\n\n private inputRef = (element: HTMLInputElement) => {\n this.input = element;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.checked);\n }\n\n if (this.isUncontrolled()) {\n this.setState({\n checked: event.target.checked,\n });\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n\n if (keyListener.isTabPressed) {\n this.setState({ focusByTab: true });\n }\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n this.setState({\n focusByTab: false,\n });\n };\n\n private isUncontrolled() {\n return this.props.checked === undefined;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Toggle.tsx"],"names":["React","PropTypes","warning","keyListener","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","isTestEnv","isTheme2022","styles","globalClasses","colorWarningShown","ToggleDataTids","root","Toggle","props","getProps","defaultProps","input","focus","isTabPressed","inputRef","element","handleChange","event","onValueChange","target","checked","isUncontrolled","setState","onChange","handleFocus","onFocus","focusByTab","handleBlur","onBlur","state","defaultChecked","componentDidMount","autoFocus","render","theme","renderMain","getContainerSizeClassName","size","containerLarge","containerMedium","containerSmall","getHandleSizeClassName","handleLarge","handleMedium","handleSmall","getButtonSizeClassName","buttonLarge","buttonMedium","buttonSmall","getRootSizeClassName","rootLarge","rootMedium","rootSmall","getInputSizeClassName","inputLarge","inputMedium","inputSmall","getActiveHandleSizeClassName","activeHandleLarge","activeHandleMedium","activeHandleSmall","getCaptionSizeClassName","captionLarge","captionMedium","captionSmall","children","error","color","id","ariaDescribedby","ariaLabel","loading","captionPosition","disableAnimations","disabled","containerClassNames","container","containerDisabled","containerLoading","labelClassNames","rootLeft","disableAnimation","caption","captionClass","captionLeft","disabledCaption","setRootNode","button","buttonRight","isWarning","isError","focused","input2022","backgroundColor","boxShadow","undefined","activeBackground","background","activeBackgroundLoading","disabledBackground","handle","handleDisabled","Component","__KONTUR_REACT_UI__","displayName","propTypes","bool","func"],"mappings":"2JAAA,OAAOA,KAAP,MAAsC,OAAtC;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,OAAP,MAAoB,SAApB;;AAEA,SAASC,WAAT,QAA4B,8BAA5B;AACA,SAASC,YAAT,QAA6B,gCAA7B;;AAEA,SAAsBC,aAAtB,QAA2C,8BAA3C;AACA,SAASC,EAAT,QAAmB,2BAAnB;AACA,SAASC,QAAT,QAAuC,oBAAvC;AACA,SAASC,iBAAT,QAAkC,6BAAlC;AACA,SAASC,SAAT,QAA0B,8BAA1B;AACA,SAASC,WAAT,QAA4B,gCAA5B;;;AAGA,SAASC,MAAT,EAAiBC,aAAjB,QAAsC,iBAAtC;;AAEA;AACA;AACA;;;AAGA,IAAIC,iBAAiB,GAAG,KAAxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6EA,OAAO,IAAMC,cAAc,GAAG;AAC5BC,EAAAA,IAAI,EAAE,cADsB,EAAvB;;;;;;;;;;;AAYP,OAJA;AACA;AACA,GAEA,IAAaC,MAAb,GADCT,QACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCE,kBAAYU,KAAZ,EAAgC;AAC9B,wCAAMA,KAAN,UAD8B,MANxBC,QAMwB,GANbV,iBAAiB,CAACQ,MAAM,CAACG,YAAR,CAMJ,OAHxBC,KAGwB,GAHS,IAGT;;;;;;;;;;;;;;;;;;AAmBzBC,IAAAA,KAnByB,GAmBjB,YAAM;AACnB,UAAI,MAAKD,KAAT,EAAgB;AACdjB,QAAAA,WAAW,CAACmB,YAAZ,GAA2B,IAA3B;AACA,cAAKF,KAAL,CAAWC,KAAX;AACD;AACF,KAxB+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOxBE,IAAAA,QAzOwB,GAyOb,UAACC,OAAD,EAA+B;AAChD,YAAKJ,KAAL,GAAaI,OAAb;AACD,KA3O+B;;AA6OxBC,IAAAA,YA7OwB,GA6OT,UAACC,KAAD,EAAgD;AACrE,UAAI,MAAKT,KAAL,CAAWU,aAAf,EAA8B;AAC5B,cAAKV,KAAL,CAAWU,aAAX,CAAyBD,KAAK,CAACE,MAAN,CAAaC,OAAtC;AACD;;AAED,UAAI,MAAKC,cAAL,EAAJ,EAA2B;AACzB,cAAKC,QAAL,CAAc;AACZF,UAAAA,OAAO,EAAEH,KAAK,CAACE,MAAN,CAAaC,OADV,EAAd;;AAGD;;AAED,UAAI,MAAKZ,KAAL,CAAWe,QAAf,EAAyB;AACvB,cAAKf,KAAL,CAAWe,QAAX,CAAoBN,KAApB;AACD;AACF,KA3P+B;;AA6PxBO,IAAAA,WA7PwB,GA6PV,UAACP,KAAD,EAA+C;AACnE,UAAI,MAAKT,KAAL,CAAWiB,OAAf,EAAwB;AACtB,cAAKjB,KAAL,CAAWiB,OAAX,CAAmBR,KAAnB;AACD;;AAED,UAAIvB,WAAW,CAACmB,YAAhB,EAA8B;AAC5B,cAAKS,QAAL,CAAc,EAAEI,UAAU,EAAE,IAAd,EAAd;AACD;AACF,KArQ+B;;AAuQxBC,IAAAA,UAvQwB,GAuQX,UAACV,KAAD,EAA+C;AAClE,UAAI,MAAKT,KAAL,CAAWoB,MAAf,EAAuB;AACrB,cAAKpB,KAAL,CAAWoB,MAAX,CAAkBX,KAAlB;AACD;AACD,YAAKK,QAAL,CAAc;AACZI,QAAAA,UAAU,EAAE,KADA,EAAd;;AAGD,KA9Q+B,CAG9B,MAAKG,KAAL,GAAa,EACXH,UAAU,EAAE,KADD,EAEXN,OAAO,EAAEZ,KAAK,CAACsB,cAFJ,EAAb,CAH8B,aAO/B,CAzCH,qCA2CSC,iBA3CT,GA2CE,6BAA2B,CACzB,IAAI,KAAKvB,KAAL,CAAWwB,SAAf,EAA0B,CACxBtC,WAAW,CAACmB,YAAZ,GAA2B,IAA3B,CACA,KAAKD,KAAL,GACD,CACF,CAhDH,CAkDE;AACF;AACA,KApDA,QA4DSqB,MA5DT,GA4DE,kBAAgB,mBACd,oBACE,oBAAC,YAAD,CAAc,QAAd,QACG,UAACC,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,OAAO,MAAI,CAACC,UAAL,EAAP,CACD,CAJH,CADF,CAQD,CArEH,QAuEUC,yBAvEV,GAuEE,qCAAoC,CAClC,QAAQ,KAAK3B,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAACoC,cAAP,CAAsB,KAAKJ,KAA3B,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAACqC,eAAP,CAAuB,KAAKL,KAA5B,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAACsC,cAAP,CAAsB,KAAKN,KAA3B,CAAP,CAPJ,CASD,CAjFH,QAmFUO,sBAnFV,GAmFE,kCAAiC,CAC/B,QAAQ,KAAKhC,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAACwC,WAAP,CAAmB,KAAKR,KAAxB,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAACyC,YAAP,CAAoB,KAAKT,KAAzB,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAAC0C,WAAP,CAAmB,KAAKV,KAAxB,CAAP,CAPJ,CASD,CA7FH,QA+FUW,sBA/FV,GA+FE,kCAAiC,CAC/B,QAAQ,KAAKpC,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAAC4C,WAAP,CAAmB,KAAKZ,KAAxB,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAAC6C,YAAP,CAAoB,KAAKb,KAAzB,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAAC8C,WAAP,CAAmB,KAAKd,KAAxB,CAAP,CAPJ,CASD,CAzGH,QA2GUe,oBA3GV,GA2GE,gCAA+B,CAC7B,QAAQ,KAAKxC,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAACgD,SAAP,CAAiB,KAAKhB,KAAtB,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAACiD,UAAP,CAAkB,KAAKjB,KAAvB,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAACkD,SAAP,CAAiB,KAAKlB,KAAtB,CAAP,CAPJ,CASD,CArHH,QAuHUmB,qBAvHV,GAuHE,iCAAgC,CAC9B,QAAQ,KAAK5C,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAACoD,UAAP,CAAkB,KAAKpB,KAAvB,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAACqD,WAAP,CAAmB,KAAKrB,KAAxB,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAACsD,UAAP,CAAkB,KAAKtB,KAAvB,CAAP,CAPJ,CASD,CAjIH,QAmIUuB,4BAnIV,GAmIE,wCAAuC,CACrC,IAAIxD,WAAW,CAAC,KAAKiC,KAAN,CAAf,EAA6B,CAC3B,OAAO,EAAP,CACD,CACD,QAAQ,KAAKzB,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAACwD,iBAAP,CAAyB,KAAKxB,KAA9B,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAACyD,kBAAP,CAA0B,KAAKzB,KAA/B,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAAC0D,iBAAP,CAAyB,KAAK1B,KAA9B,CAAP,CAPJ,CASD,CAhJH,QAkJU2B,uBAlJV,GAkJE,mCAAkC,CAChC,QAAQ,KAAKpD,QAAL,GAAgB4B,IAAxB,GACE,KAAK,OAAL,CACE,OAAOnC,MAAM,CAAC4D,YAAP,CAAoB,KAAK5B,KAAzB,CAAP,CACF,KAAK,QAAL,CACE,OAAOhC,MAAM,CAAC6D,aAAP,CAAqB,KAAK7B,KAA1B,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOhC,MAAM,CAAC8D,YAAP,CAAoB,KAAK9B,KAAzB,CAAP,CAPJ,CASD,CA5JH,QA8JUC,UA9JV,GA8JE,sBAAqB,uCACnB,kBAQI,KAAK3B,KART,CACEyD,QADF,eACEA,QADF,CAEExE,OAFF,eAEEA,OAFF,CAGEyE,KAHF,eAGEA,KAHF,CAIEC,KAJF,eAIEA,KAJF,CAKEC,EALF,eAKEA,EALF,CAMsBC,eANtB,eAME,kBANF,EAOgBC,SAPhB,eAOE,YAPF,EASA,qBAAwD,KAAK7D,QAAL,EAAxD,CAAQ8D,OAAR,kBAAQA,OAAR,CAAiBC,eAAjB,kBAAiBA,eAAjB,CAAkCC,iBAAlC,kBAAkCA,iBAAlC,CACA,IAAMC,QAAQ,GAAG,KAAKjE,QAAL,GAAgBiE,QAAhB,IAA4BH,OAA7C,CACA,IAAMnD,OAAO,GAAG,KAAKC,cAAL,KAAwB,KAAKQ,KAAL,CAAWT,OAAnC,GAA6C,KAAKZ,KAAL,CAAWY,OAAxE,CAEA,IAAMuD,mBAAmB,GAAG9E,EAAE,CAAC,KAAKuC,yBAAL,EAAD,iBAC3BlC,MAAM,CAAC0E,SAAP,CAAiB,KAAK1C,KAAtB,CAD2B,IACI,IADJ,MAE3BhC,MAAM,CAAC2E,iBAAP,CAAyB,KAAK3C,KAA9B,CAF2B,IAEY,CAAC,CAACwC,QAFd,MAG3BvE,aAAa,CAACyE,SAHa,IAGD,IAHC,MAI3BzE,aAAa,CAAC0E,iBAJa,IAIO,CAAC,CAACH,QAJT,MAK3BvE,aAAa,CAAC2E,gBALa,IAKMP,OALN,OAA9B,CAQA,IAAMQ,eAAe,GAAGlF,EAAE,CAAC,KAAKoD,oBAAL,EAAD,EAA8B,KAAKQ,4BAAL,EAA9B,mBACvBvD,MAAM,CAACI,IAAP,CAAY,KAAK4B,KAAjB,CADuB,IACG,IADH,OAEvBhC,MAAM,CAAC8E,QAAP,EAFuB,IAEHR,eAAe,KAAK,MAFjB,OAGvBtE,MAAM,CAACwE,QAAP,EAHuB,IAGH,CAAC,CAACA,QAHC,OAIvBvE,aAAa,CAACuE,QAJS,IAIE,CAAC,CAACA,QAJJ,OAKvBxE,MAAM,CAAC+E,gBAAP,EALuB,IAKKR,iBALL,QAA1B,CAQA,IAAIS,OAAO,GAAG,IAAd,CACA,IAAIjB,QAAJ,EAAc,UACZ,IAAMkB,YAAY,GAAGtF,EAAE,CAAC,KAAKgE,uBAAL,EAAD,mBACpB3D,MAAM,CAACgF,OAAP,CAAe,KAAKhD,KAApB,CADoB,IACS,IADT,OAEpBhC,MAAM,CAACkF,WAAP,CAAmB,KAAKlD,KAAxB,CAFoB,IAEasC,eAAe,KAAK,MAFjC,OAGpBtE,MAAM,CAACmF,eAAP,CAAuB,KAAKnD,KAA5B,CAHoB,IAGiB,CAAC,CAACwC,QAHnB,QAAvB,CAKAQ,OAAO,gBAAG,8BAAM,SAAS,EAAEC,YAAjB,IAAgClB,QAAhC,CAAV,CACD,CAED,oBACE,oBAAC,aAAD,aAAe,WAAW,EAAE,KAAKqB,WAAjC,IAAkD,KAAK9E,KAAvD,gBACE,+BAAO,YAAUH,cAAc,CAACC,IAAhC,EAAsC,SAAS,EAAEyE,eAAjD,iBACE,6BACE,SAAS,EAAElF,EAAE,CAAC,KAAKgD,sBAAL,EAAD,mBACV3C,MAAM,CAACqF,MAAP,CAAc,KAAKrD,KAAnB,CADU,IACkB,IADlB,OAEVhC,MAAM,CAACsF,WAAP,EAFU,IAEahB,eAAe,KAAK,MAFjC,OAGVtE,MAAM,CAACuF,SAAP,CAAiB,KAAKvD,KAAtB,CAHU,IAGqB,CAAC,CAACzC,OAHvB,OAIVS,MAAM,CAACwF,OAAP,CAAe,KAAKxD,KAApB,CAJU,IAImB,CAAC,CAACgC,KAJrB,OAKVhE,MAAM,CAACyF,OAAP,CAAe,KAAKzD,KAApB,CALU,IAKmB,CAACwC,QAAD,IAAa,CAAC,CAAC,KAAK7C,KAAL,CAAWH,UAL7C,QADf,iBASE,+BACE,IAAI,EAAC,UADP,EAEE,OAAO,EAAEN,OAFX,EAGE,QAAQ,EAAE,KAAKJ,YAHjB,EAIE,SAAS,EAAEnB,EAAE,CAAC,KAAKwD,qBAAL,EAAD,EAA+BpD,WAAW,CAAC,KAAKiC,KAAN,CAAX,IAA2BhC,MAAM,CAAC0F,SAAP,CAAiB,KAAK1D,KAAtB,CAA1D,mBACVhC,MAAM,CAACS,KAAP,CAAa,KAAKuB,KAAlB,CADU,IACiB,IADjB,QAJf,EAOE,OAAO,EAAE,KAAKV,WAPhB,EAQE,MAAM,EAAE,KAAKG,UARf,EASE,GAAG,EAAE,KAAKb,QATZ,EAUE,QAAQ,EAAE4D,QAVZ,EAWE,EAAE,EAAEN,EAXN,EAYE,IAAI,EAAC,QAZP,EAaE,cAAYE,SAbd,EAcE,oBAAkBD,eAdpB,GATF,eAyBE,6BACE,SAAS,EAAEM,mBADb,EAEE,KAAK,EACHvD,OAAO,IAAI+C,KAAX,IAAoB,CAACO,QAArB,GACI,EACEmB,eAAe,EAAE1B,KADnB,EAEE2B,SAAS,uBAAqB3B,KAFhC,EADJ,GAKI4B,SARR,IAWG,CAAC9F,WAAW,CAAC,KAAKiC,KAAN,CAAZ,iBACC,6BACE,SAAS,EAAErC,EAAE,CAACK,MAAM,CAAC8F,gBAAP,EAAD,EAA4B7F,aAAa,CAAC8F,UAA1C,mBACV/F,MAAM,CAACgG,uBAAP,CAA+B,KAAKhE,KAApC,CADU,IACmCqC,OADnC,OAEVrE,MAAM,CAACiG,kBAAP,CAA0B,KAAKjE,KAA/B,CAFU,IAE8BwC,QAF9B,QADf,EAKE,KAAK,EACHtD,OAAO,IAAI+C,KAAX,IAAoB,CAACO,QAArB,GACI,EACEmB,eAAe,EAAE1B,KADnB,EAEE2B,SAAS,uBAAqB3B,KAFhC,EADJ,GAKI4B,SAXR,GAZJ,CAzBF,eAqDE,6BACE,SAAS,EAAElG,EAAE,CAAC,KAAK4C,sBAAL,EAAD,EAAgCtC,aAAa,CAACiG,MAA9C,mBACVlG,MAAM,CAACkG,MAAP,CAAc,KAAKlE,KAAnB,CADU,IACkB,IADlB,OAEVhC,MAAM,CAACmG,cAAP,CAAsB,KAAKnE,KAA3B,CAFU,IAE0BwC,QAF1B,QADf,GArDF,CADF,EA6DGQ,OA7DH,CADF,CADF,CAmED,CAzQH,QAkTU7D,cAlTV,GAkTE,0BAAyB;AACvB,WAAO,KAAKb,KAAL,CAAWY,OAAX,KAAuB2E,SAA9B;AACD,GApTH,iBAA4BxG,KAAK,CAAC+G,SAAlC,WACgBC,mBADhB,GACsC,QADtC,UAEgBC,WAFhB,GAE8B,QAF9B,UAIgBC,SAJhB,GAI4B,EACxBrF,OAAO,EAAE5B,SAAS,CAACkH,IADK,EAExB5E,cAAc,EAAEtC,SAAS,CAACkH,IAFF,EAGxBhC,QAAQ,EAAElF,SAAS,CAACkH,IAHI,EAIxBxC,KAAK,EAAE1E,SAAS,CAACkH,IAJO,EAKxBnC,OAAO,EAAE/E,SAAS,CAACkH,IALK,EAMxBjH,OAAO,EAAED,SAAS,CAACkH,IANK,EAOxBxF,aAAa,EAAE1B,SAAS,CAACmH,IAPD,EAQxBxC,KAAK,EAAE,eAAC3D,KAAD,EAAwB,CAC7B,IAAIA,KAAK,CAAC2D,KAAN,IAAe,CAAC/D,iBAApB,EAAuC,CACrCX,OAAO,CAAC,KAAD,iGAAP,CACAW,iBAAiB,GAAG,IAApB,CACD,CACF,CAbuB,EAJ5B,UAoBgBM,YApBhB,GAoB6C,EACzCgE,QAAQ,EAAE,KAD+B,EAEzCH,OAAO,EAAE,KAFgC,EAGzCC,eAAe,EAAE,OAHwB,EAIzCC,iBAAiB,EAAEzE,SAJsB,EAKzCqC,IAAI,EAAE,OALmC,EApB7C","sourcesContent":["import React, { AriaAttributes } from 'react';\nimport PropTypes from 'prop-types';\nimport warning from 'warning';\n\nimport { keyListener } from '../../lib/events/keyListener';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { SizeProp } from '../../lib/types/props';\n\nimport { styles, globalClasses } from './Toggle.styles';\n\n/**\n * @deprecated use SizeProp\n */\nexport type ToggleSize = SizeProp;\n\nlet colorWarningShown = false;\n\nexport interface ToggleProps extends Pick<AriaAttributes, 'aria-label' | 'aria-describedby'>, CommonProps {\n children?: React.ReactNode;\n /**\n * Положение `children` относительно переключателя.\n * @default 'right'\n */\n captionPosition?: 'left' | 'right';\n /**\n * Состояние `тогла`, если `true` - `тогл` будет включён, иначе выключен.\n * @default false\n */\n checked?: boolean;\n /**\n * Делает `тогл` включенным по умолчанию.\n */\n defaultChecked?: boolean;\n /**\n * Отключает `тогл`.\n */\n disabled?: boolean;\n /**\n * Событие вызывающееся, когда значение `тогла` меняется, передаёт текущее значение тогла в переданную функцию.\n */\n onValueChange?: (value: boolean) => void;\n /**\n * Событие вызывающееся при клике на `тогл`.\n */\n onChange?: React.ChangeEventHandler<HTMLInputElement>;\n /**\n * Состояние валидации при предупреждении.\n * @default false\n */\n warning?: boolean;\n /**\n * Состояние валидации при ошибке.\n * @default false\n */\n error?: boolean;\n /**\n * Добавляет стили для состояния `loading` и отключает `тогл`.\n */\n loading?: boolean;\n /**\n * Если true, выставляет фокус на `тогле` после загрузки страницы.\n */\n autoFocus?: boolean;\n /** Размер */\n size?: SizeProp;\n /**\n * Событие вызывающееся, когда `тогл` получает фокус.\n */\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n /**\n * Событие вызывающееся, когда `тогл` теряет фокус.\n */\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n /**\n * @deprecated используйте переменную темы `toggleBgChecked` вместо этого пропа.\n */\n color?: React.CSSProperties['color'];\n /**\n * HTML-атрибут `id` для передачи во внутренний `<input />`.\n */\n id?: string;\n /**\n * Не показывать анимацию\n */\n disableAnimations?: boolean;\n}\n\nexport interface ToggleState {\n checked?: boolean;\n focusByTab?: boolean;\n}\n\nexport const ToggleDataTids = {\n root: 'Toggle__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<ToggleProps, 'disabled' | 'loading' | 'captionPosition' | 'disableAnimations' | 'size'>\n>;\n\n/**\n * _Примечание:_ под тоглом понимается полный компонент т.е. надпись + переключатель, а не просто переключатель.\n */\n@rootNode\nexport class Toggle extends React.Component<ToggleProps, ToggleState> {\n public static __KONTUR_REACT_UI__ = 'Toggle';\n public static displayName = 'Toggle';\n\n public static propTypes = {\n checked: PropTypes.bool,\n defaultChecked: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n loading: PropTypes.bool,\n warning: PropTypes.bool,\n onValueChange: PropTypes.func,\n color: (props: ToggleProps) => {\n if (props.color && !colorWarningShown) {\n warning(false, `[Toggle]: prop 'color' is deprecated. Please, use theme variable 'toggleBgChecked' instead. `);\n colorWarningShown = true;\n }\n },\n };\n\n public static defaultProps: DefaultProps = {\n disabled: false,\n loading: false,\n captionPosition: 'right',\n disableAnimations: isTestEnv,\n size: 'small',\n };\n\n private getProps = createPropsGetter(Toggle.defaultProps);\n\n private theme!: Theme;\n private input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: ToggleProps) {\n super(props);\n\n this.state = {\n focusByTab: false,\n checked: props.defaultChecked,\n };\n }\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n /**\n * @public\n */\n public focus = () => {\n if (this.input) {\n keyListener.isTabPressed = true;\n this.input.focus();\n }\n };\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private getContainerSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.containerLarge(this.theme);\n case 'medium':\n return styles.containerMedium(this.theme);\n case 'small':\n default:\n return styles.containerSmall(this.theme);\n }\n }\n\n private getHandleSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.handleLarge(this.theme);\n case 'medium':\n return styles.handleMedium(this.theme);\n case 'small':\n default:\n return styles.handleSmall(this.theme);\n }\n }\n\n private getButtonSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.buttonLarge(this.theme);\n case 'medium':\n return styles.buttonMedium(this.theme);\n case 'small':\n default:\n return styles.buttonSmall(this.theme);\n }\n }\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 getInputSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.inputLarge(this.theme);\n case 'medium':\n return styles.inputMedium(this.theme);\n case 'small':\n default:\n return styles.inputSmall(this.theme);\n }\n }\n\n private getActiveHandleSizeClassName() {\n if (isTheme2022(this.theme)) {\n return '';\n }\n switch (this.getProps().size) {\n case 'large':\n return styles.activeHandleLarge(this.theme);\n case 'medium':\n return styles.activeHandleMedium(this.theme);\n case 'small':\n default:\n return styles.activeHandleSmall(this.theme);\n }\n }\n\n private getCaptionSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return styles.captionLarge(this.theme);\n case 'medium':\n return styles.captionMedium(this.theme);\n case 'small':\n default:\n return styles.captionSmall(this.theme);\n }\n }\n\n private renderMain() {\n const {\n children,\n warning,\n error,\n color,\n id,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n } = this.props;\n const { loading, captionPosition, disableAnimations } = this.getProps();\n const disabled = this.getProps().disabled || loading;\n const checked = this.isUncontrolled() ? this.state.checked : this.props.checked;\n\n const containerClassNames = cx(this.getContainerSizeClassName(), {\n [styles.container(this.theme)]: true,\n [styles.containerDisabled(this.theme)]: !!disabled,\n [globalClasses.container]: true,\n [globalClasses.containerDisabled]: !!disabled,\n [globalClasses.containerLoading]: loading,\n });\n\n const labelClassNames = cx(this.getRootSizeClassName(), this.getActiveHandleSizeClassName(), {\n [styles.root(this.theme)]: true,\n [styles.rootLeft()]: captionPosition === 'left',\n [styles.disabled()]: !!disabled,\n [globalClasses.disabled]: !!disabled,\n [styles.disableAnimation()]: disableAnimations,\n });\n\n let caption = null;\n if (children) {\n const captionClass = cx(this.getCaptionSizeClassName(), {\n [styles.caption(this.theme)]: true,\n [styles.captionLeft(this.theme)]: captionPosition === 'left',\n [styles.disabledCaption(this.theme)]: !!disabled,\n });\n caption = <span className={captionClass}>{children}</span>;\n }\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <label data-tid={ToggleDataTids.root} className={labelClassNames}>\n <div\n className={cx(this.getButtonSizeClassName(), {\n [styles.button(this.theme)]: true,\n [styles.buttonRight()]: captionPosition === 'left',\n [styles.isWarning(this.theme)]: !!warning,\n [styles.isError(this.theme)]: !!error,\n [styles.focused(this.theme)]: !disabled && !!this.state.focusByTab,\n })}\n >\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={this.handleChange}\n className={cx(this.getInputSizeClassName(), isTheme2022(this.theme) && styles.input2022(this.theme), {\n [styles.input(this.theme)]: true,\n })}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n ref={this.inputRef}\n disabled={disabled}\n id={id}\n role=\"switch\"\n aria-label={ariaLabel}\n aria-describedby={ariaDescribedby}\n />\n <div\n className={containerClassNames}\n style={\n checked && color && !disabled\n ? {\n backgroundColor: color,\n boxShadow: `inset 0 0 0 1px ${color}`,\n }\n : undefined\n }\n >\n {!isTheme2022(this.theme) && (\n <div\n className={cx(styles.activeBackground(), globalClasses.background, {\n [styles.activeBackgroundLoading(this.theme)]: loading,\n [styles.disabledBackground(this.theme)]: disabled,\n })}\n style={\n checked && color && !disabled\n ? {\n backgroundColor: color,\n boxShadow: `inset 0 0 0 1px ${color}`,\n }\n : undefined\n }\n />\n )}\n </div>\n <div\n className={cx(this.getHandleSizeClassName(), globalClasses.handle, {\n [styles.handle(this.theme)]: true,\n [styles.handleDisabled(this.theme)]: disabled,\n })}\n />\n </div>\n {caption}\n </label>\n </CommonWrapper>\n );\n }\n\n private inputRef = (element: HTMLInputElement) => {\n this.input = element;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.checked);\n }\n\n if (this.isUncontrolled()) {\n this.setState({\n checked: event.target.checked,\n });\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n\n if (keyListener.isTabPressed) {\n this.setState({ focusByTab: true });\n }\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n this.setState({\n focusByTab: false,\n });\n };\n\n private isUncontrolled() {\n return this.props.checked === undefined;\n }\n}\n"]}
|
|
@@ -88,6 +88,7 @@ declare type DefaultProps = Required<Pick<ToggleProps, 'disabled' | 'loading' |
|
|
|
88
88
|
*/
|
|
89
89
|
export declare class Toggle extends React.Component<ToggleProps, ToggleState> {
|
|
90
90
|
static __KONTUR_REACT_UI__: string;
|
|
91
|
+
static displayName: string;
|
|
91
92
|
static propTypes: {
|
|
92
93
|
checked: PropTypes.Requireable<boolean>;
|
|
93
94
|
defaultChecked: PropTypes.Requireable<boolean>;
|
|
@@ -102,7 +102,7 @@ export var Token = (_dec = locale('Token', TokenLocaleHelper), rootNode(_class =
|
|
|
102
102
|
side: 16,
|
|
103
103
|
color: "inherit",
|
|
104
104
|
colorHover: "inherit",
|
|
105
|
-
|
|
105
|
+
"aria-label": removeButtonAriaLabel,
|
|
106
106
|
tabbable: false
|
|
107
107
|
}) : /*#__PURE__*/React.createElement(CrossIcon, null);
|
|
108
108
|
var classNames = '';
|
|
@@ -138,4 +138,4 @@ export var Token = (_dec = locale('Token', TokenLocaleHelper), rootNode(_class =
|
|
|
138
138
|
};
|
|
139
139
|
|
|
140
140
|
return Token;
|
|
141
|
-
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Token', _temp)) || _class) || _class);
|
|
141
|
+
}(React.Component), _class2.__KONTUR_REACT_UI__ = 'Token', _class2.displayName = 'Token', _temp)) || _class) || _class);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Token.tsx"],"names":["React","locale","CrossIcon","emptyHandler","getChildrenText","ThemeContext","CommonWrapper","cx","rootNode","isTheme2022","CloseButtonIcon","styles","colorStyles","globalClasses","TokenLocaleHelper","getValidation","error","warning","TokenDataTids","root","removeIcon","Token","onRemoveClick","event","props","disabled","onRemove","preventDefault","render","theme","renderMain","children","isActive","colors","idle","active","ariaDescribedby","onClick","onDoubleClick","onMouseEnter","onMouseLeave","onFocus","onBlur","validation","removeButtonAriaLabel","icon","classNames","tokenDefaultIdle2022","tokenDefaultIdleHovering2022","tokenDefaultActive2022","tokenWarning2022","tokenError2022","tokenDisabled2022","defaultDisabled","defaultDisabledWarning","defaultDisabledError","tokenClassNames","token","setRootNode","text","undefined","Component","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { CrossIcon } from '../../internal/icons/CrossIcon';\nimport { emptyHandler, getChildrenText } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\n\nimport { styles, colorStyles, globalClasses } from './Token.styles';\nimport { TokenLocale, TokenLocaleHelper } from './locale';\n\nexport type TokenColorName = keyof typeof colorStyles;\n\nexport interface TokenColors {\n idle: TokenColorName;\n active?: TokenColorName;\n}\n\nexport interface TokenProps extends Pick<AriaAttributes, 'aria-describedby'>, CommonProps {\n colors?: TokenColors;\n isActive?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n disabled?: boolean;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n onDoubleClick?: React.MouseEventHandler<HTMLDivElement>;\n onRemove?: React.MouseEventHandler<HTMLElement>;\n onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;\n onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;\n onFocus?: React.FocusEventHandler<HTMLDivElement>;\n onBlur?: React.FocusEventHandler<HTMLDivElement>;\n}\n\nconst getValidation = (error: TokenProps['error'], warning: TokenProps['warning']) => {\n if (error) {\n return 'error';\n } else if (warning) {\n return 'warning';\n }\n\n return null;\n};\n\nexport const TokenDataTids = {\n root: 'Token__root',\n removeIcon: 'Token__removeIcon',\n} as const;\n\n@rootNode\n@locale('Token', TokenLocaleHelper)\nexport class Token extends React.Component<TokenProps> {\n public static __KONTUR_REACT_UI__ = 'Token';\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private readonly locale!: TokenLocale;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n children,\n isActive,\n colors = { idle: 'defaultIdle', active: 'defaultActive' },\n error,\n warning,\n disabled,\n 'aria-describedby': ariaDescribedby,\n onClick = emptyHandler,\n onDoubleClick = emptyHandler,\n onMouseEnter = emptyHandler,\n onMouseLeave = emptyHandler,\n onFocus = emptyHandler,\n onBlur = emptyHandler,\n } = this.props;\n\n const theme = this.theme;\n\n const validation = getValidation(error, warning);\n const removeButtonAriaLabel = this.locale.removeButtonAriaLabel + ' ' + getChildrenText(children);\n\n const icon = isTheme2022(theme) ? (\n <CloseButtonIcon side={16} color=\"inherit\" colorHover=\"inherit\" role=\"none\" tabbable={false} />\n ) : (\n <CrossIcon />\n );\n\n let classNames = '';\n if (isTheme2022(theme)) {\n classNames = cx(\n styles.tokenDefaultIdle2022(theme),\n !isActive && !warning && !error && !disabled && styles.tokenDefaultIdleHovering2022(theme),\n isActive && styles.tokenDefaultActive2022(theme),\n warning && styles.tokenWarning2022(theme),\n error && styles.tokenError2022(theme),\n disabled && styles.tokenDisabled2022(theme),\n );\n } else {\n classNames = cx(\n colorStyles[colors.idle](theme, validation),\n !!isActive && colorStyles[colors.active || colors.idle](theme, validation),\n !!disabled && styles.disabled(theme),\n !!disabled && colorStyles.defaultDisabled(theme),\n !!disabled && warning && colorStyles.defaultDisabledWarning(theme),\n !!disabled && error && colorStyles.defaultDisabledError(theme),\n );\n }\n\n const tokenClassNames = cx(styles.token(this.theme), classNames);\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={TokenDataTids.root}\n className={tokenClassNames}\n aria-describedby={ariaDescribedby}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n <span className={styles.text(this.theme)}>{children}</span>\n <span\n role={isTheme2022(theme) ? undefined : 'button'}\n aria-label={isTheme2022(theme) ? undefined : removeButtonAriaLabel}\n className={cx(styles.removeIcon(this.theme), globalClasses.removeIcon)}\n onClick={this.onRemoveClick}\n data-tid={TokenDataTids.removeIcon}\n >\n {icon}\n </span>\n </div>\n </CommonWrapper>\n );\n }\n\n private onRemoveClick = (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n const { disabled, onRemove = emptyHandler } = this.props;\n\n if (disabled) {\n event.preventDefault();\n return;\n }\n\n onRemove(event);\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Token.tsx"],"names":["React","locale","CrossIcon","emptyHandler","getChildrenText","ThemeContext","CommonWrapper","cx","rootNode","isTheme2022","CloseButtonIcon","styles","colorStyles","globalClasses","TokenLocaleHelper","getValidation","error","warning","TokenDataTids","root","removeIcon","Token","onRemoveClick","event","props","disabled","onRemove","preventDefault","render","theme","renderMain","children","isActive","colors","idle","active","ariaDescribedby","onClick","onDoubleClick","onMouseEnter","onMouseLeave","onFocus","onBlur","validation","removeButtonAriaLabel","icon","classNames","tokenDefaultIdle2022","tokenDefaultIdleHovering2022","tokenDefaultActive2022","tokenWarning2022","tokenError2022","tokenDisabled2022","defaultDisabled","defaultDisabledWarning","defaultDisabledError","tokenClassNames","token","setRootNode","text","undefined","Component","__KONTUR_REACT_UI__","displayName"],"mappings":"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","sourcesContent":["import React, { AriaAttributes } from 'react';\n\nimport { locale } from '../../lib/locale/decorators';\nimport { CrossIcon } from '../../internal/icons/CrossIcon';\nimport { emptyHandler, getChildrenText } from '../../lib/utils';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isTheme2022 } from '../../lib/theming/ThemeHelpers';\nimport { CloseButtonIcon } from '../../internal/CloseButtonIcon/CloseButtonIcon';\n\nimport { styles, colorStyles, globalClasses } from './Token.styles';\nimport { TokenLocale, TokenLocaleHelper } from './locale';\n\nexport type TokenColorName = keyof typeof colorStyles;\n\nexport interface TokenColors {\n idle: TokenColorName;\n active?: TokenColorName;\n}\n\nexport interface TokenProps extends Pick<AriaAttributes, 'aria-describedby'>, CommonProps {\n colors?: TokenColors;\n isActive?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n disabled?: boolean;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n onDoubleClick?: React.MouseEventHandler<HTMLDivElement>;\n onRemove?: React.MouseEventHandler<HTMLElement>;\n onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;\n onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;\n onFocus?: React.FocusEventHandler<HTMLDivElement>;\n onBlur?: React.FocusEventHandler<HTMLDivElement>;\n}\n\nconst getValidation = (error: TokenProps['error'], warning: TokenProps['warning']) => {\n if (error) {\n return 'error';\n } else if (warning) {\n return 'warning';\n }\n\n return null;\n};\n\nexport const TokenDataTids = {\n root: 'Token__root',\n removeIcon: 'Token__removeIcon',\n} as const;\n\n@rootNode\n@locale('Token', TokenLocaleHelper)\nexport class Token extends React.Component<TokenProps> {\n public static __KONTUR_REACT_UI__ = 'Token';\n public static displayName = 'Token';\n\n private theme!: Theme;\n private setRootNode!: TSetRootNode;\n private readonly locale!: TokenLocale;\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n children,\n isActive,\n colors = { idle: 'defaultIdle', active: 'defaultActive' },\n error,\n warning,\n disabled,\n 'aria-describedby': ariaDescribedby,\n onClick = emptyHandler,\n onDoubleClick = emptyHandler,\n onMouseEnter = emptyHandler,\n onMouseLeave = emptyHandler,\n onFocus = emptyHandler,\n onBlur = emptyHandler,\n } = this.props;\n\n const theme = this.theme;\n\n const validation = getValidation(error, warning);\n const removeButtonAriaLabel = this.locale.removeButtonAriaLabel + ' ' + getChildrenText(children);\n\n const icon = isTheme2022(theme) ? (\n <CloseButtonIcon\n side={16}\n color=\"inherit\"\n colorHover=\"inherit\"\n aria-label={removeButtonAriaLabel}\n tabbable={false}\n />\n ) : (\n <CrossIcon />\n );\n\n let classNames = '';\n if (isTheme2022(theme)) {\n classNames = cx(\n styles.tokenDefaultIdle2022(theme),\n !isActive && !warning && !error && !disabled && styles.tokenDefaultIdleHovering2022(theme),\n isActive && styles.tokenDefaultActive2022(theme),\n warning && styles.tokenWarning2022(theme),\n error && styles.tokenError2022(theme),\n disabled && styles.tokenDisabled2022(theme),\n );\n } else {\n classNames = cx(\n colorStyles[colors.idle](theme, validation),\n !!isActive && colorStyles[colors.active || colors.idle](theme, validation),\n !!disabled && styles.disabled(theme),\n !!disabled && colorStyles.defaultDisabled(theme),\n !!disabled && warning && colorStyles.defaultDisabledWarning(theme),\n !!disabled && error && colorStyles.defaultDisabledError(theme),\n );\n }\n\n const tokenClassNames = cx(styles.token(this.theme), classNames);\n\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <div\n data-tid={TokenDataTids.root}\n className={tokenClassNames}\n aria-describedby={ariaDescribedby}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n <span className={styles.text(this.theme)}>{children}</span>\n <span\n role={isTheme2022(theme) ? undefined : 'button'}\n aria-label={isTheme2022(theme) ? undefined : removeButtonAriaLabel}\n className={cx(styles.removeIcon(this.theme), globalClasses.removeIcon)}\n onClick={this.onRemoveClick}\n data-tid={TokenDataTids.removeIcon}\n >\n {icon}\n </span>\n </div>\n </CommonWrapper>\n );\n }\n\n private onRemoveClick = (event: React.MouseEvent<HTMLElement, MouseEvent>) => {\n const { disabled, onRemove = emptyHandler } = this.props;\n\n if (disabled) {\n event.preventDefault();\n return;\n }\n\n onRemove(event);\n };\n}\n"]}
|
|
@@ -1296,7 +1296,7 @@ export var TokenInput = (_dec = locale('TokenInput', TokenInputLocaleHelper), ro
|
|
|
1296
1296
|
}]);
|
|
1297
1297
|
|
|
1298
1298
|
return TokenInput;
|
|
1299
|
-
}(React.PureComponent), _class2.__KONTUR_REACT_UI__ = 'TokenInput', _class2.defaultProps = {
|
|
1299
|
+
}(React.PureComponent), _class2.__KONTUR_REACT_UI__ = 'TokenInput', _class2.displayName = 'TokenInput', _class2.defaultProps = {
|
|
1300
1300
|
selectedItems: [],
|
|
1301
1301
|
// TEMP_FAKE_FLAG помогает узнать, остались ли разделители дефолтными или пользователь передал их равными дефолтным.
|
|
1302
1302
|
delimiters: [',', ' ', TEMP_FAKE_FLAG],
|