@skbkontur/react-ui 6.0.8 → 6.1.1-9752b.0
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 +26 -0
- package/components/Autocomplete/Autocomplete.js +15 -4
- package/components/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/Autocomplete.styles.js.map +1 -1
- package/components/Autocomplete/getAutocompleteTheme.js.map +1 -1
- package/components/Autocomplete/index.js.map +1 -1
- package/components/Autocomplete/locale/index.js.map +1 -1
- package/components/Autocomplete/locale/locales/en.js.map +1 -1
- package/components/Autocomplete/locale/locales/ru.js.map +1 -1
- package/components/Autocomplete/locale/types.js.map +1 -1
- package/components/Button/ArrowLeftIcon.js.map +1 -1
- package/components/Button/ArrowRightIcon.js.map +1 -1
- package/components/Button/Button.d.ts +1 -1
- package/components/Button/Button.js +5 -4
- package/components/Button/Button.js.map +1 -1
- package/components/Button/Button.mixins.js.map +1 -1
- package/components/Button/Button.styles.js.map +1 -1
- package/components/Button/ButtonArrow.js.map +1 -1
- package/components/Button/ButtonIcon.js.map +1 -1
- package/components/Button/ButtonIcon.styles.js.map +1 -1
- package/components/Button/LoadingButtonIcon.js.map +1 -1
- package/components/Button/getInnerLinkTheme.js.map +1 -1
- package/components/Button/index.js.map +1 -1
- package/components/Calendar/Calendar.js.map +1 -1
- package/components/Calendar/Calendar.styles.js.map +1 -1
- package/components/Calendar/CalendarContext.js.map +1 -1
- package/components/Calendar/CalendarDateShape.js.map +1 -1
- package/components/Calendar/CalendarDay.js +3 -0
- package/components/Calendar/CalendarDay.js.map +1 -1
- package/components/Calendar/CalendarScrollEvents.js.map +1 -1
- package/components/Calendar/CalendarUtils.js.map +1 -1
- package/components/Calendar/DayCellView.js.map +1 -1
- package/components/Calendar/DayCellView.styles.d.ts +1 -0
- package/components/Calendar/DayCellView.styles.js +6 -3
- package/components/Calendar/DayCellView.styles.js.map +1 -1
- package/components/Calendar/DayCellViewModel.js.map +1 -1
- package/components/Calendar/Month.js.map +1 -1
- package/components/Calendar/MonthView.js.map +1 -1
- package/components/Calendar/MonthView.styles.js.map +1 -1
- package/components/Calendar/MonthViewModel.js.map +1 -1
- package/components/Calendar/config.js.map +1 -1
- package/components/Calendar/index.js.map +1 -1
- package/components/Calendar/locale/locales/en.js.map +1 -1
- package/components/Calendar/locale/locales/ru.js.map +1 -1
- package/components/Calendar/locale/types.js.map +1 -1
- package/components/Center/Center.js.map +1 -1
- package/components/Center/Center.styles.js.map +1 -1
- package/components/Center/index.js.map +1 -1
- package/components/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.mixins.js.map +1 -1
- package/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/components/Checkbox/CheckedIcon.js.map +1 -1
- package/components/Checkbox/IndeterminateIcon.js.map +1 -1
- package/components/Checkbox/index.js.map +1 -1
- package/components/ComboBox/ComboBox.js.map +1 -1
- package/components/ComboBox/index.js.map +1 -1
- package/components/CurrencyInput/CurrencyHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInput.js.map +1 -1
- package/components/CurrencyInput/CurrencyInputHelper.js.map +1 -1
- package/components/CurrencyInput/CurrencyInputKeyboardActions.js.map +1 -1
- package/components/CurrencyInput/CursorHelper.js.map +1 -1
- package/components/CurrencyInput/SelectionHelper.js.map +1 -1
- package/components/CurrencyInput/constants.js.map +1 -1
- package/components/CurrencyInput/index.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/index.js.map +1 -1
- package/components/DateInput/CalendarIcon.js.map +1 -1
- package/components/DateInput/DateFragmentsView.js.map +1 -1
- package/components/DateInput/DateFragmentsView.styles.js.map +1 -1
- package/components/DateInput/DateInput.js.map +1 -1
- package/components/DateInput/DateInput.styles.js.map +1 -1
- package/components/DateInput/helpers/DateInputKeyboardActions.js.map +1 -1
- package/components/DateInput/helpers/InternalDateMediator.js.map +1 -1
- package/components/DateInput/helpers/inputNumber.js.map +1 -1
- package/components/DateInput/index.js.map +1 -1
- package/components/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.styles.js.map +1 -1
- package/components/DatePicker/MobilePicker.js +1 -1
- package/components/DatePicker/MobilePicker.js.map +1 -1
- package/components/DatePicker/MobilePicker.styles.js.map +1 -1
- package/components/DatePicker/getMobilePickerTheme.js.map +1 -1
- package/components/DatePicker/index.js.map +1 -1
- package/components/DatePicker/locale/index.js.map +1 -1
- package/components/DatePicker/locale/locales/en.js.map +1 -1
- package/components/DatePicker/locale/locales/ru.js.map +1 -1
- package/components/DatePicker/locale/types.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.js +1 -1
- package/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/components/DateRangePicker/DateRangePicker.styles.js.map +1 -1
- package/components/DateRangePicker/DateRangePickerContext.js.map +1 -1
- package/components/DateRangePicker/DateRangePickerInput.js.map +1 -1
- package/components/DateRangePicker/DateRangePickerSeparator.js.map +1 -1
- package/components/DateRangePicker/DateRangePickerTheme.js.map +1 -1
- package/components/DateRangePicker/helpers/getStateForValue.js.map +1 -1
- package/components/DateRangePicker/helpers/validateDateRangePicker.js.map +1 -1
- package/components/DateRangePicker/index.js.map +1 -1
- package/components/DateRangePicker/locale/index.js.map +1 -1
- package/components/DateRangePicker/locale/locales/en.js.map +1 -1
- package/components/DateRangePicker/locale/locales/ru.js.map +1 -1
- package/components/DateRangePicker/locale/types.js.map +1 -1
- package/components/Dropdown/Dropdown.js.map +1 -1
- package/components/Dropdown/getDropdownTheme.js.map +1 -1
- package/components/Dropdown/index.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/getDropdownMenuTheme.js.map +1 -1
- package/components/DropdownMenu/index.js.map +1 -1
- package/components/FileUploader/FileUploader.js.map +1 -1
- package/components/FileUploader/FileUploader.mixins.js.map +1 -1
- package/components/FileUploader/FileUploader.styles.js.map +1 -1
- package/components/FileUploader/FileUploaderControlContext.js.map +1 -1
- package/components/FileUploader/FileUploaderControlProvider.js.map +1 -1
- package/components/FileUploader/FileUploaderFile.js.map +1 -1
- package/components/FileUploader/FileUploaderFile.styles.js.map +1 -1
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
- package/components/FileUploader/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
- package/components/FileUploader/FileUploaderFileStatusIcon.js.map +1 -1
- package/components/FileUploader/FileUploaderFileTypeIcon.js.map +1 -1
- package/components/FileUploader/FileUploaderFileValidationResult.js.map +1 -1
- package/components/FileUploader/fileUtils.js.map +1 -1
- package/components/FileUploader/hooks/useControlLocale.js.map +1 -1
- package/components/FileUploader/hooks/useFileUploaderSize.js.map +1 -1
- package/components/FileUploader/hooks/useUpload.js.map +1 -1
- package/components/FileUploader/icons/DeleteIcon.js.map +1 -1
- package/components/FileUploader/icons/UploadIcon.js.map +1 -1
- package/components/FileUploader/icons/row/ArchiveIcon.js.map +1 -1
- package/components/FileUploader/icons/row/DocTextIcon.js.map +1 -1
- package/components/FileUploader/icons/row/FolderIcon.js.map +1 -1
- package/components/FileUploader/icons/row/MarkupIcon.js.map +1 -1
- package/components/FileUploader/icons/row/PdfIcon.js.map +1 -1
- package/components/FileUploader/icons/row/PictureIcon.js.map +1 -1
- package/components/FileUploader/icons/row/PresentationIcon.js.map +1 -1
- package/components/FileUploader/icons/row/RowUploadIcon.js.map +1 -1
- package/components/FileUploader/icons/row/TableIcon.js.map +1 -1
- package/components/FileUploader/icons/row/TextIcon.js.map +1 -1
- package/components/FileUploader/icons/row/ValidationErrorIcon.js.map +1 -1
- package/components/FileUploader/icons/row/ValidationWarningIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/ArchiveIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/DocTextIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/FolderIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/MarkupIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/PdfIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/PictureIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/PresentationIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/TableIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/TextIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/TileUploadIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/ValidationErrorIcon.js.map +1 -1
- package/components/FileUploader/icons/tile/ValidationWarningIcon.js.map +1 -1
- package/components/FileUploader/index.js.map +1 -1
- package/components/FileUploader/locale/index.js.map +1 -1
- package/components/FileUploader/locale/locales/en.js.map +1 -1
- package/components/FileUploader/locale/locales/ru.js.map +1 -1
- package/components/FileUploader/locale/types.js.map +1 -1
- package/components/FileUploader/withFileUploaderControlProvider.js.map +1 -1
- package/components/FxInput/FxInput.js.map +1 -1
- package/components/FxInput/FxInputRestoreBtn.js +1 -1
- package/components/FxInput/FxInputRestoreBtn.js.map +1 -1
- package/components/FxInput/MathFunctionIcon.js.map +1 -1
- package/components/FxInput/UndoIcon.js.map +1 -1
- package/components/FxInput/index.js.map +1 -1
- package/components/Gapped/Gapped.js.map +1 -1
- package/components/Gapped/index.js.map +1 -1
- package/components/GlobalLoader/GlobalLoader.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.js.map +1 -1
- package/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -1
- package/components/GlobalLoader/index.js.map +1 -1
- package/components/GlobalLoader/useParams.js.map +1 -1
- package/components/Group/Group.js.map +1 -1
- package/components/Group/Group.styles.js.map +1 -1
- package/components/Group/index.js.map +1 -1
- package/components/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.styles.js.map +1 -1
- package/components/Hint/index.js.map +1 -1
- package/components/Input/Input.d.ts +19 -1
- package/components/Input/Input.js +10 -3
- package/components/Input/Input.js.map +1 -1
- package/components/Input/Input.styles.js.map +1 -1
- package/components/Input/Input.typings.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.d.ts +3 -1
- package/components/Input/InputLayout/InputLayout.js +5 -2
- package/components/Input/InputLayout/InputLayout.js.map +1 -1
- package/components/Input/InputLayout/InputLayout.styles.d.ts +6 -0
- package/components/Input/InputLayout/InputLayout.styles.js +19 -1
- package/components/Input/InputLayout/InputLayout.styles.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAside.d.ts +2 -0
- package/components/Input/InputLayout/InputLayoutAside.js +2 -2
- package/components/Input/InputLayout/InputLayoutAside.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideCounter.d.ts +11 -0
- package/components/Input/InputLayout/InputLayoutAsideCounter.js +74 -0
- package/components/Input/InputLayout/InputLayoutAsideCounter.js.map +1 -0
- package/components/Input/InputLayout/InputLayoutAsideIcon.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutAsideText.js.map +1 -1
- package/components/Input/InputLayout/InputLayoutContext.js.map +1 -1
- package/components/Input/index.js.map +1 -1
- package/components/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.styles.js.map +1 -1
- package/components/Kebab/KebabIcon.js.map +1 -1
- package/components/Kebab/index.js.map +1 -1
- package/components/Link/Link.js.map +1 -1
- package/components/Link/Link.mixins.js.map +1 -1
- package/components/Link/Link.styles.js.map +1 -1
- package/components/Link/LinkIcon.js.map +1 -1
- package/components/Link/index.js.map +1 -1
- package/components/Loader/Loader.d.ts +12 -4
- package/components/Loader/Loader.js +18 -7
- package/components/Loader/Loader.js.map +1 -1
- package/components/Loader/Loader.styles.js.map +1 -1
- package/components/Loader/index.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/ColorableInputElement.styles.js.map +1 -1
- package/components/MaskedInput/ColorableInputElement/index.js.map +1 -1
- package/components/MaskedInput/FixedIMaskInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.helpers.js.map +1 -1
- package/components/MaskedInput/MaskedInput.js.map +1 -1
- package/components/MaskedInput/MaskedInput.styles.js.map +1 -1
- package/components/MaskedInput/index.js.map +1 -1
- package/components/MenuFooter/MenuFooter.js.map +1 -1
- package/components/MenuFooter/MenuFooter.mixins.js.map +1 -1
- package/components/MenuFooter/MenuFooter.styles.js.map +1 -1
- package/components/MenuFooter/index.js.map +1 -1
- package/components/MenuHeader/MenuHeader.js.map +1 -1
- package/components/MenuHeader/MenuHeader.mixins.js.map +1 -1
- package/components/MenuHeader/MenuHeader.styles.js.map +1 -1
- package/components/MenuHeader/index.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +1 -0
- package/components/MenuItem/MenuItem.js +17 -1
- package/components/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.mixins.js.map +1 -1
- package/components/MenuItem/MenuItem.styles.d.ts +3 -0
- package/components/MenuItem/MenuItem.styles.js +25 -16
- package/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/components/MenuItem/index.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.js.map +1 -1
- package/components/MenuSeparator/MenuSeparator.styles.js.map +1 -1
- package/components/MenuSeparator/index.js.map +1 -1
- package/components/MiniModal/MiniModal.js.map +1 -1
- package/components/MiniModal/MiniModal.styles.js.map +1 -1
- package/components/MiniModal/MiniModalBody.js.map +1 -1
- package/components/MiniModal/MiniModalFooter.js.map +1 -1
- package/components/MiniModal/MiniModalHeader.js.map +1 -1
- package/components/MiniModal/MiniModalIndent.js.map +1 -1
- package/components/MiniModal/getMiniModalTheme.js.map +1 -1
- package/components/MiniModal/index.js.map +1 -1
- package/components/Modal/Modal.js.map +1 -1
- package/components/Modal/Modal.styles.js.map +1 -1
- package/components/Modal/ModalBody.js.map +1 -1
- package/components/Modal/ModalClose.js.map +1 -1
- package/components/Modal/ModalContext.js.map +1 -1
- package/components/Modal/ModalFooter.js.map +1 -1
- package/components/Modal/ModalHeader.js.map +1 -1
- package/components/Modal/ModalSeparator.js.map +1 -1
- package/components/Modal/getModalBodyTheme.js.map +1 -1
- package/components/Modal/getModalTheme.js.map +1 -1
- package/components/Modal/index.js.map +1 -1
- package/components/Modal/locale/index.js.map +1 -1
- package/components/Modal/locale/locales/en.js.map +1 -1
- package/components/Modal/locale/locales/ru.js.map +1 -1
- package/components/Modal/locale/types.js.map +1 -1
- package/components/Paging/DotsIcon.js.map +1 -1
- package/components/Paging/ForwardIcon.js.map +1 -1
- package/components/Paging/NavigationHelper.js.map +1 -1
- package/components/Paging/Paging.js.map +1 -1
- package/components/Paging/Paging.styles.js.map +1 -1
- package/components/Paging/PagingDefaultComponent.js.map +1 -1
- package/components/Paging/PagingHelper.js.map +1 -1
- package/components/Paging/index.js.map +1 -1
- package/components/Paging/locale/index.js.map +1 -1
- package/components/Paging/locale/locales/en.js.map +1 -1
- package/components/Paging/locale/locales/ru.js.map +1 -1
- package/components/Paging/locale/types.js.map +1 -1
- package/components/PasswordInput/ClosedIcon.js.map +1 -1
- package/components/PasswordInput/OpenedIcon.js.map +1 -1
- package/components/PasswordInput/PasswordInput.js.map +1 -1
- package/components/PasswordInput/PasswordInput.styles.js.map +1 -1
- package/components/PasswordInput/PasswordInputIcon.js.map +1 -1
- package/components/PasswordInput/index.js.map +1 -1
- package/components/PasswordInput/locale/index.js.map +1 -1
- package/components/PasswordInput/locale/locales/en.js.map +1 -1
- package/components/PasswordInput/locale/locales/ru.js.map +1 -1
- package/components/PasswordInput/locale/types.js.map +1 -1
- package/components/Radio/Radio.js.map +1 -1
- package/components/Radio/Radio.mixins.js.map +1 -1
- package/components/Radio/Radio.styles.js.map +1 -1
- package/components/Radio/index.js.map +1 -1
- package/components/RadioGroup/Prevent.js.map +1 -1
- package/components/RadioGroup/RadioGroup.js.map +1 -1
- package/components/RadioGroup/RadioGroup.styles.js.map +1 -1
- package/components/RadioGroup/RadioGroupContext.js.map +1 -1
- package/components/RadioGroup/index.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayout.js.map +1 -1
- package/components/ResponsiveLayout/ResponsiveLayoutEvents.js.map +1 -1
- package/components/ResponsiveLayout/decorator.js.map +1 -1
- package/components/ResponsiveLayout/index.js.map +1 -1
- package/components/ResponsiveLayout/types.js.map +1 -1
- package/components/ResponsiveLayout/useResponsiveLayout.js.map +1 -1
- package/components/ScrollContainer/ScrollBar.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.constants.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.helpers.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.js.map +1 -1
- package/components/ScrollContainer/ScrollContainer.styles.js.map +1 -1
- package/components/ScrollContainer/index.js.map +1 -1
- package/components/Select/ArrowDownIcon.js.map +1 -1
- package/components/Select/Item.js.map +1 -1
- package/components/Select/Select.js +11 -1
- package/components/Select/Select.js.map +1 -1
- package/components/Select/Select.styles.js.map +1 -1
- package/components/Select/index.js.map +1 -1
- package/components/Select/locale/index.js.map +1 -1
- package/components/Select/locale/locales/en.js.map +1 -1
- package/components/Select/locale/locales/ru.js.map +1 -1
- package/components/Select/locale/types.js.map +1 -1
- package/components/Select/selectTheme.js.map +1 -1
- package/components/Select/tids.js.map +1 -1
- package/components/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePageBody.js.map +1 -1
- package/components/SidePage/SidePageCloseButton.js.map +1 -1
- package/components/SidePage/SidePageContainer.js.map +1 -1
- package/components/SidePage/SidePageContext.js.map +1 -1
- package/components/SidePage/SidePageFooter.js.map +1 -1
- package/components/SidePage/SidePageHeader.js.map +1 -1
- package/components/SidePage/index.js.map +1 -1
- package/components/SidePage/locale/index.js.map +1 -1
- package/components/SidePage/locale/locales/en.js.map +1 -1
- package/components/SidePage/locale/locales/ru.js.map +1 -1
- package/components/SidePage/locale/types.js.map +1 -1
- package/components/SingleToast/SingleToast.d.ts +9 -6
- package/components/SingleToast/SingleToast.js +9 -6
- package/components/SingleToast/SingleToast.js.map +1 -1
- package/components/SingleToast/index.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +23 -33
- package/components/Spinner/Spinner.js +23 -19
- package/components/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.styles.d.ts +0 -3
- package/components/Spinner/Spinner.styles.js +6 -15
- package/components/Spinner/Spinner.styles.js.map +1 -1
- package/components/Spinner/index.js.map +1 -1
- package/components/Sticky/Sticky.js.map +1 -1
- package/components/Sticky/Sticky.styles.js.map +1 -1
- package/components/Sticky/index.js.map +1 -1
- package/components/Switcher/Switcher.js +1 -0
- package/components/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.styles.js.map +1 -1
- package/components/Switcher/helpers.js.map +1 -1
- package/components/Switcher/index.js.map +1 -1
- package/components/Switcher/switcherTheme.js.map +1 -1
- package/components/Tabs/Indicator.js.map +1 -1
- package/components/Tabs/Indicator.styles.js.map +1 -1
- package/components/Tabs/Tab.js.map +1 -1
- package/components/Tabs/Tab.styles.js.map +1 -1
- package/components/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/Tabs.styles.js.map +1 -1
- package/components/Tabs/TabsContext.js.map +1 -1
- package/components/Tabs/helpers.js.map +1 -1
- package/components/Tabs/index.js.map +1 -1
- package/components/Textarea/Textarea.js +1 -1
- package/components/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.mixins.js.map +1 -1
- package/components/Textarea/Textarea.styles.d.ts +1 -0
- package/components/Textarea/Textarea.styles.js +7 -4
- package/components/Textarea/Textarea.styles.js.map +1 -1
- package/components/Textarea/TextareaCounter.d.ts +2 -0
- package/components/Textarea/TextareaCounter.js +22 -4
- package/components/Textarea/TextareaCounter.js.map +1 -1
- package/components/Textarea/TextareaHelpers.js.map +1 -1
- package/components/Textarea/TextareaWithSafari17Workaround.js.map +1 -1
- package/components/Textarea/index.js.map +1 -1
- package/components/Toast/Toast.d.ts +13 -14
- package/components/Toast/Toast.js +3 -3
- package/components/Toast/Toast.js.map +1 -1
- package/components/Toast/Toast.styles.js.map +1 -1
- package/components/Toast/ToastView.d.ts +8 -5
- package/components/Toast/ToastView.js +28 -8
- package/components/Toast/ToastView.js.map +1 -1
- package/components/Toast/ToastView.styles.d.ts +7 -0
- package/components/Toast/ToastView.styles.js +30 -8
- package/components/Toast/ToastView.styles.js.map +1 -1
- package/components/Toast/index.js.map +1 -1
- package/components/Toast/locale/index.js.map +1 -1
- package/components/Toast/locale/locales/en.js.map +1 -1
- package/components/Toast/locale/locales/ru.js.map +1 -1
- package/components/Toast/locale/types.js.map +1 -1
- package/components/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.mixins.js.map +1 -1
- package/components/Toggle/Toggle.styles.js.map +1 -1
- package/components/Toggle/index.js.map +1 -1
- package/components/Token/Token.js.map +1 -1
- package/components/Token/Token.mixins.js.map +1 -1
- package/components/Token/Token.styles.js.map +1 -1
- package/components/Token/TokenView.js.map +1 -1
- package/components/Token/index.js.map +1 -1
- package/components/Token/locale/index.js.map +1 -1
- package/components/Token/locale/locales/en.js.map +1 -1
- package/components/Token/locale/locales/ru.js.map +1 -1
- package/components/Token/locale/types.js.map +1 -1
- package/components/TokenInput/TextWidthHelper.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +18 -2
- package/components/TokenInput/TokenInput.js +236 -79
- package/components/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.mixins.js.map +1 -1
- package/components/TokenInput/TokenInput.styles.d.ts +1 -0
- package/components/TokenInput/TokenInput.styles.js +12 -9
- package/components/TokenInput/TokenInput.styles.js.map +1 -1
- package/components/TokenInput/TokenInputMenu.d.ts +2 -1
- package/components/TokenInput/TokenInputMenu.js +1 -1
- package/components/TokenInput/TokenInputMenu.js.map +1 -1
- package/components/TokenInput/TokenInputMobileMenu.d.ts +25 -0
- package/components/TokenInput/TokenInputMobileMenu.js +40 -0
- package/components/TokenInput/TokenInputMobileMenu.js.map +1 -0
- package/components/TokenInput/TokenInputReducer.d.ts +2 -0
- package/components/TokenInput/TokenInputReducer.js +14 -0
- package/components/TokenInput/TokenInputReducer.js.map +1 -1
- package/components/TokenInput/index.js.map +1 -1
- package/components/TokenInput/locale/index.js.map +1 -1
- package/components/TokenInput/locale/locales/en.js.map +1 -1
- package/components/TokenInput/locale/locales/ru.js.map +1 -1
- package/components/TokenInput/locale/types.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +4 -0
- package/components/Tooltip/Tooltip.js +50 -11
- package/components/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/components/Tooltip/index.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/index.js.map +1 -1
- package/hooks/useDrop.js.map +1 -1
- package/hooks/useEffectWithoutInitCall.js.map +1 -1
- package/hooks/useMemoObject.js.map +1 -1
- package/index.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.js.map +1 -1
- package/internal/ClearCrossIcon/ClearCrossIcon.styles.js.map +1 -1
- package/internal/ClearCrossIcon/CrossIcon.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.js +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.js.map +1 -1
- package/internal/CloseButtonIcon/CloseButtonIcon.styles.js.map +1 -1
- package/internal/CloseButtonIcon/CrossIcon.js.map +1 -1
- package/internal/CommonWrapper/CommonWrapper.js +5 -0
- package/internal/CommonWrapper/CommonWrapper.js.map +1 -1
- package/internal/CommonWrapper/index.js.map +1 -1
- package/internal/CommonWrapper/types.js.map +1 -1
- package/internal/CommonWrapper/utils/extractCommonProps.js.map +1 -1
- package/internal/CommonWrapper/utils/getCommonVisualStateDataAttributes.js.map +1 -1
- package/internal/CommonWrapper/utils/getVisualStateDataAttributes.js.map +1 -1
- package/internal/CommonWrapper/utils/tryGetBoolean.js.map +1 -1
- package/internal/CustomComboBox/ArrowDownIcon.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxMenu.js +1 -1
- package/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView.js +13 -2
- package/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBox.styles.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxTypes.js.map +1 -1
- package/internal/CustomComboBox/getComboBoxTheme.js.map +1 -1
- package/internal/CustomComboBox/index.js.map +1 -1
- package/internal/CustomComboBox/locale/index.js.map +1 -1
- package/internal/CustomComboBox/locale/locales/en.js.map +1 -1
- package/internal/CustomComboBox/locale/locales/ru.js.map +1 -1
- package/internal/CustomComboBox/locale/types.js.map +1 -1
- package/internal/CustomComboBox/tids.js.map +1 -1
- package/internal/DateSelect/DateSelect.js.map +1 -1
- package/internal/DateSelect/DateSelect.styles.js.map +1 -1
- package/internal/DateSelect/index.js.map +1 -1
- package/internal/DateSelect/locale/index.js.map +1 -1
- package/internal/DateSelect/locale/locales/en.js.map +1 -1
- package/internal/DateSelect/locale/locales/ru.js.map +1 -1
- package/internal/DateSelect/locale/types.js.map +1 -1
- package/internal/FocusControlWrapper/FocusControlWrapper.js.map +1 -1
- package/internal/FocusControlWrapper/index.js.map +1 -1
- package/internal/FocusControlWrapper/useFocusControl.js.map +1 -1
- package/internal/FocusTrap/FocusTrap.js.map +1 -1
- package/internal/FocusTrap/index.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/HideBodyVerticalScroll/index.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.d.ts +1 -1
- package/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/InputLikeText/InputLikeText.styles.js.map +1 -1
- package/internal/InputLikeText/index.js.map +1 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.js.map +1 -1
- package/internal/InternalTextareaWithLayout/InternalTextareaWithLayout.styles.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.js.map +1 -1
- package/internal/MaskCharLowLine/MaskCharLowLine.styles.js.map +1 -1
- package/internal/MaskCharLowLine/index.js.map +1 -1
- package/internal/Menu/Menu.js +3 -0
- package/internal/Menu/Menu.js.map +1 -1
- package/internal/Menu/Menu.styles.d.ts +1 -0
- package/internal/Menu/Menu.styles.js +13 -10
- package/internal/Menu/Menu.styles.js.map +1 -1
- package/internal/Menu/MenuContext.js.map +1 -1
- package/internal/Menu/MenuNavigation.js.map +1 -1
- package/internal/Menu/index.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.js +17 -1
- package/internal/MenuMessage/MenuMessage.js.map +1 -1
- package/internal/MenuMessage/MenuMessage.styles.d.ts +3 -0
- package/internal/MenuMessage/MenuMessage.styles.js +13 -4
- package/internal/MenuMessage/MenuMessage.styles.js.map +1 -1
- package/internal/MenuMessage/index.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.d.ts +8 -0
- package/internal/MobilePopup/MobilePopup.js +34 -11
- package/internal/MobilePopup/MobilePopup.js.map +1 -1
- package/internal/MobilePopup/MobilePopup.styles.d.ts +7 -0
- package/internal/MobilePopup/MobilePopup.styles.js +34 -10
- package/internal/MobilePopup/MobilePopup.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.d.ts +8 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js +18 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.d.ts +3 -0
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js +14 -4
- package/internal/MobilePopup/MobilePopupFooter/MobilePopupFooter.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupFooter/index.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.d.ts +4 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js +48 -11
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.d.ts +6 -0
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js +28 -8
- package/internal/MobilePopup/MobilePopupHeader/MobilePopupHeader.styles.js.map +1 -1
- package/internal/MobilePopup/MobilePopupHeader/index.js.map +1 -1
- package/internal/MobilePopup/index.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.js.map +1 -1
- package/internal/NativeDateInput/NativeDateInput.styles.js.map +1 -1
- package/internal/NativeDateInput/index.js.map +1 -1
- package/internal/NativeDateInput/utils.js.map +1 -1
- package/internal/Popup/Popup.d.ts +9 -3
- package/internal/Popup/Popup.js +117 -15
- package/internal/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.styles.js +1 -1
- package/internal/Popup/Popup.styles.js.map +1 -1
- package/internal/Popup/PopupHelper.d.ts +4 -0
- package/internal/Popup/PopupHelper.js +8 -0
- package/internal/Popup/PopupHelper.js.map +1 -1
- package/internal/Popup/PopupPin.d.ts +19 -4
- package/internal/Popup/PopupPin.js +109 -8
- package/internal/Popup/PopupPin.js.map +1 -1
- package/internal/Popup/PopupPin.styles.d.ts +2 -0
- package/internal/Popup/PopupPin.styles.js +11 -5
- package/internal/Popup/PopupPin.styles.js.map +1 -1
- package/internal/Popup/index.js.map +1 -1
- package/internal/Popup/types.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.styles.js.map +1 -1
- package/internal/PopupMenu/index.js.map +1 -1
- package/internal/PopupMenu/tids.js.map +1 -1
- package/internal/PopupMenu/validatePositions.js.map +1 -1
- package/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/RenderContainer/RenderContainerTypes.js.map +1 -1
- package/internal/RenderContainer/RenderInnerContainer.js.map +1 -1
- package/internal/RenderContainer/index.js.map +1 -1
- package/internal/RenderLayer/RenderLayer.js.map +1 -1
- package/internal/RenderLayer/index.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.js.map +1 -1
- package/internal/ResizeDetector/ResizeDetector.styles.js.map +1 -1
- package/internal/ResizeDetector/index.js.map +1 -1
- package/internal/SpinnerIcon/SpinnerIcon.d.ts +3 -3
- package/internal/SpinnerIcon/SpinnerIcon.js +4 -4
- package/internal/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/SpinnerIcon/SpinnerIcon.styles.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.js.map +1 -1
- package/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -1
- package/internal/ZIndex/ZIndex.js.map +1 -1
- package/internal/ZIndex/ZIndexStorage.js.map +1 -1
- package/internal/ZIndex/index.js.map +1 -1
- package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon16Light.js.map +1 -1
- package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon20Light.js.map +1 -1
- package/internal/icons2022/ArrowALeftIcon/ArrowALeftIcon24Regular.js.map +1 -1
- package/internal/icons2022/ArrowARightIcon/ArrowARightIcon16Light.js.map +1 -1
- package/internal/icons2022/ArrowARightIcon/ArrowARightIcon20Light.js.map +1 -1
- package/internal/icons2022/ArrowARightIcon/ArrowARightIcon24Regular.js.map +1 -1
- package/internal/icons2022/ArrowAUpIcon/ArrowAUp16Light.js.map +1 -1
- package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon16Regular.js.map +1 -1
- package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon20Regular.js.map +1 -1
- package/internal/icons2022/ArrowCDownIcon/ArrowCDownIcon24Regular.js.map +1 -1
- package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon16Light.js.map +1 -1
- package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon20Light.js.map +1 -1
- package/internal/icons2022/ArrowCRightIcon/ArrowCRightIcon24Regular.js.map +1 -1
- package/internal/icons2022/ArrowCollapseCVOpenIcon/ArrowCollapseCVOpenIcon16Regular.js.map +1 -1
- package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon16Light.js.map +1 -1
- package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon20Light.js.map +1 -1
- package/internal/icons2022/ArrowShapeDRadiusUpLeftIcon/ArrowShapeDRadiusUpLeftIcon24Regular.js.map +1 -1
- package/internal/icons2022/BaseIcon.js.map +1 -1
- package/internal/icons2022/BaseIcon.styles.js.map +1 -1
- package/internal/icons2022/CalendarIcon/CalendarIcon16Light.js.map +1 -1
- package/internal/icons2022/CalendarIcon/CalendarIcon20Light.js.map +1 -1
- package/internal/icons2022/CalendarIcon/CalendarIcon24Regular.js.map +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon16Solid.js.map +1 -1
- package/internal/icons2022/CheckAIcon/CheckAIcon20Solid.js.map +1 -1
- package/internal/icons2022/EyeClosedIcon/EyeClosedIcon16Light.js.map +1 -1
- package/internal/icons2022/EyeClosedIcon/EyeClosedIcon20Light.js.map +1 -1
- package/internal/icons2022/EyeClosedIcon/EyeClosedIcon24Regular.js.map +1 -1
- package/internal/icons2022/EyeOpenIcon/EyeOpenIcon16Light.js.map +1 -1
- package/internal/icons2022/EyeOpenIcon/EyeOpenIcon20Light.js.map +1 -1
- package/internal/icons2022/EyeOpenIcon/EyeOpenIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypeArchiveIcon/ArchiveIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypeDocTextIcon/DocTextIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypeFolderIcon/FolderIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypeFolderIcon/FolderIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypeFolderIcon/FolderIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeFolderIcon/FolderIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypeFolderIcon/FolderIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypeFolderIcon/FolderIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypeMarkupIcon/MarkupIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypePdfIcon/PdfIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypePdfIcon/PdfIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypePdfIcon/PdfIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypePdfIcon/PdfIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypePdfIcon/PdfIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypePdfIcon/PdfIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypePictureIcon/PictureIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypePictureIcon/PictureIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypePictureIcon/PictureIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypePictureIcon/PictureIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypePictureIcon/PictureIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypePictureIcon/PictureIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypePresentationIcon/PresentationIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypePresentationIcon/PresentationIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypePresentationIcon/PresentationIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypePresentationIcon/PresentationIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypePresentationIcon/PresentationIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypePresentationIcon/PresentationIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypeTableIcon/TableIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypeTableIcon/TableIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypeTableIcon/TableIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeTableIcon/TableIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypeTableIcon/TableIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypeTableIcon/TableIcon64Regular.js.map +1 -1
- package/internal/icons2022/FileTypeTextIcon/TextIcon16Solid.js.map +1 -1
- package/internal/icons2022/FileTypeTextIcon/TextIcon20Solid.js.map +1 -1
- package/internal/icons2022/FileTypeTextIcon/TextIcon24Regular.js.map +1 -1
- package/internal/icons2022/FileTypeTextIcon/TextIcon24Solid.js.map +1 -1
- package/internal/icons2022/FileTypeTextIcon/TextIcon32Regular.js.map +1 -1
- package/internal/icons2022/FileTypeTextIcon/TextIcon64Regular.js.map +1 -1
- package/internal/icons2022/InfoCircleIcon/InfoCircleIcon64Regular.js.map +1 -1
- package/internal/icons2022/LoadingIcon.js +1 -1
- package/internal/icons2022/LoadingIcon.js.map +1 -1
- package/internal/icons2022/MathFunctionIcon/MathFunctionIcon16Light.js.map +1 -1
- package/internal/icons2022/MathFunctionIcon/MathFunctionIcon20Light.js.map +1 -1
- package/internal/icons2022/MathFunctionIcon/MathFunctionIcon24Regular.js.map +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon16Light.js.map +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon20Regular.js.map +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon24Regular.js.map +1 -1
- package/internal/icons2022/NetUploadIcon/NetUploadIcon32Regular.js.map +1 -1
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Light.d.ts +2 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Light.js +21 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Light.js.map +1 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Solid.js.map +1 -1
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon20Regular.d.ts +2 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon20Regular.js +21 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon20Regular.js.map +1 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon24Regular.d.ts +2 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon24Regular.js +21 -0
- package/internal/icons2022/QuestionCircleIcon/QuestionCircleIcon24Regular.js.map +1 -0
- package/internal/icons2022/ShapeSquareIcon/ShapeSquareIcon16Solid.js.map +1 -1
- package/internal/icons2022/UiMenuDots3HIcon/UiMenuDots3HIcon16Regular.js.map +1 -1
- package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon16Light.js.map +1 -1
- package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon20Regular.js.map +1 -1
- package/internal/icons2022/UiMenuDotsThreeVIcon/UiMenuDotsThreeVIcon24Regular.js.map +1 -1
- package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon16Solid.js.map +1 -1
- package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon20Solid.js.map +1 -1
- package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon24Regular.js.map +1 -1
- package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon24Solid.js.map +1 -1
- package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon32Regular.js.map +1 -1
- package/internal/icons2022/WarningTriangleIcon/WarningTriangleIcon64Regular.js.map +1 -1
- package/internal/icons2022/XCircleIcon/XCircleIcon16Solid.js.map +1 -1
- package/internal/icons2022/XCircleIcon/XCircleIcon20Solid.js.map +1 -1
- package/internal/icons2022/XCircleIcon/XCircleIcon24Regular.js.map +1 -1
- package/internal/icons2022/XCircleIcon/XCircleIcon24Solid.js.map +1 -1
- package/internal/icons2022/XCircleIcon/XCircleIcon32Regular.js.map +1 -1
- package/internal/icons2022/XCircleIcon/XCircleIcon64Regular.js.map +1 -1
- package/internal/icons2022/XIcon/XIcon16Light.js.map +1 -1
- package/internal/icons2022/XIcon/XIcon20Light.js.map +1 -1
- package/internal/icons2022/XIcon/XIcon20Regular.js.map +1 -1
- package/internal/icons2022/XIcon/XIcon24Regular.js.map +1 -1
- package/internal/icons2022/iconConstants.js.map +1 -1
- package/internal/icons2022/iconSizer.js.map +1 -1
- package/internal/react-focus-lock/Combination.js.map +1 -1
- package/internal/react-focus-lock/FocusGuard.js.map +1 -1
- package/internal/react-focus-lock/Lock.js.map +1 -1
- package/internal/react-focus-lock/Trap.js.map +1 -1
- package/internal/react-focus-lock/constants.js.map +1 -1
- package/internal/react-focus-lock/index.js.map +1 -1
- package/internal/react-focus-lock/medium.js.map +1 -1
- package/internal/react-focus-lock/scope.js.map +1 -1
- package/internal/react-focus-lock/util.js.map +1 -1
- package/internal/themes/BasicTheme.d.ts +83 -4
- package/internal/themes/BasicTheme.js +186 -5
- package/internal/themes/BasicTheme.js.map +1 -1
- package/internal/themes/DarkTheme6_0.js.map +1 -1
- package/internal/themes/DarkTheme6_1.d.ts +1 -0
- package/internal/themes/DarkTheme6_1.js +41 -0
- package/internal/themes/DarkTheme6_1.js.map +1 -0
- package/internal/themes/LightTheme6_0.js.map +1 -1
- package/internal/themes/LightTheme6_1.d.ts +1 -0
- package/internal/themes/LightTheme6_1.js +39 -0
- package/internal/themes/LightTheme6_1.js.map +1 -0
- package/lib/ConditionalHandler.js.map +1 -1
- package/lib/InstanceWithAnchorElement.js.map +1 -1
- package/lib/LayoutEvents.js.map +1 -1
- package/lib/ModalStack.js.map +1 -1
- package/lib/Upgrades.js.map +1 -1
- package/lib/animation/index.js.map +1 -1
- package/lib/animation/presets.js.map +1 -1
- package/lib/animation/stepper.js.map +1 -1
- package/lib/blink.js.map +1 -1
- package/lib/callChildRef/callChildRef.js.map +1 -1
- package/lib/chars.js.map +1 -1
- package/lib/client.js.map +1 -1
- package/lib/createPropsGetter.js.map +1 -1
- package/lib/currentEnvironment.js.map +1 -1
- package/lib/date/InternalDate.js.map +1 -1
- package/lib/date/InternalDateCalculator.js.map +1 -1
- package/lib/date/InternalDateGetter.js.map +1 -1
- package/lib/date/InternalDateSetter.js.map +1 -1
- package/lib/date/InternalDateTransformer.js.map +1 -1
- package/lib/date/InternalDateValidator.js.map +1 -1
- package/lib/date/comparison.js.map +1 -1
- package/lib/date/constants.js.map +1 -1
- package/lib/date/localeSets.js.map +1 -1
- package/lib/date/types.js.map +1 -1
- package/lib/delay.js.map +1 -1
- package/lib/dom/getDOMRect.js.map +1 -1
- package/lib/dom/getParentOrShadowHost.js.map +1 -1
- package/lib/dom/getScrollWidth.js.map +1 -1
- package/lib/dom/scrollYCenterIntoNearestScrollable.js.map +1 -1
- package/lib/dom/selectionHelpers.js.map +1 -1
- package/lib/dom/tabbableHelpers.js.map +1 -1
- package/lib/events/MouseDrag.js.map +1 -1
- package/lib/events/fixFirefoxModifiedClickOnLabel.js.map +1 -1
- package/lib/events/keyListener.js.map +1 -1
- package/lib/events/keyboard/KeyboardEventCodes.js.map +1 -1
- package/lib/events/keyboard/KeyboardMapKeys.js.map +1 -1
- package/lib/events/keyboard/extractCode.js.map +1 -1
- package/lib/events/keyboard/identifiers.js.map +1 -1
- package/lib/extractKeyboardAction.js.map +1 -1
- package/lib/featureFlagsContext/FeatureFlagsHelpers.js.map +1 -1
- package/lib/featureFlagsContext/ReactUIFeatureFlagsContext.js.map +1 -1
- package/lib/featureFlagsContext/index.js.map +1 -1
- package/lib/filterProps.js.map +1 -1
- package/lib/forwardRefAndName.js.map +1 -1
- package/lib/getElementRef.js.map +1 -1
- package/lib/getMenuPositions.js.map +1 -1
- package/lib/globalObject.js.map +1 -1
- package/lib/isInstanceOf.js.map +1 -1
- package/lib/listenFocusOutside.js.map +1 -1
- package/lib/locale/LocaleContext.js.map +1 -1
- package/lib/locale/LocaleHelper.js.map +1 -1
- package/lib/locale/constants.js.map +1 -1
- package/lib/locale/decorators.js.map +1 -1
- package/lib/locale/index.js.map +1 -1
- package/lib/locale/types.js.map +1 -1
- package/lib/locale/useLocaleForControl.js.map +1 -1
- package/lib/memo.js.map +1 -1
- package/lib/mergeRefs.js.map +1 -1
- package/lib/needsPolyfillPlaceholder.js.map +1 -1
- package/lib/pluralize.js.map +1 -1
- package/lib/react-is.js.map +1 -1
- package/lib/reactGetTextContent.js.map +1 -1
- package/lib/renderEnvironment/RenderEnvironmentContext.js.map +1 -1
- package/lib/renderEnvironment/RenderEnvironmentDecorator.js.map +1 -1
- package/lib/renderEnvironment/index.js.map +1 -1
- package/lib/rootNode/getRootNode.js.map +1 -1
- package/lib/rootNode/index.js.map +1 -1
- package/lib/rootNode/rootNodeDecorator.js.map +1 -1
- package/lib/scrollInputCaretIntoView.js.map +1 -1
- package/lib/size/SizeControlContext.js.map +1 -1
- package/lib/size/SizeDecorator.js.map +1 -1
- package/lib/size/constants.js.map +1 -1
- package/lib/size/index.js.map +1 -1
- package/lib/size/useSizeControl.js.map +1 -1
- package/lib/stringUtils.js.map +1 -1
- package/lib/styles/ColorFactory.js.map +1 -1
- package/lib/styles/ColorFunctions.js.map +1 -1
- package/lib/styles/ColorHelpers.js.map +1 -1
- package/lib/styles/ColorKeywords.js.map +1 -1
- package/lib/styles/ColorObject.js.map +1 -1
- package/lib/styles/DimensionFunctions.js.map +1 -1
- package/lib/styles/Mixins.js.map +1 -1
- package/lib/styles/UiFont.js.map +1 -1
- package/lib/styles/getLabGrotesqueBaselineCompensation.js.map +1 -1
- package/lib/taskWithDelayAndMinimalDuration.js.map +1 -1
- package/lib/theming/AnimationKeyframes.js.map +1 -1
- package/lib/theming/Emotion.js.map +1 -1
- package/lib/theming/Theme.js.map +1 -1
- package/lib/theming/ThemeContext.js.map +1 -1
- package/lib/theming/ThemeFactory.js.map +1 -1
- package/lib/theming/ThemeHelpers.js.map +1 -1
- package/lib/theming/ThemeVersions.js.map +1 -1
- package/lib/theming/themes/DarkTheme.d.ts +1 -0
- package/lib/theming/themes/DarkTheme.js +3 -1
- package/lib/theming/themes/DarkTheme.js.map +1 -1
- package/lib/theming/themes/LightTheme.d.ts +1 -0
- package/lib/theming/themes/LightTheme.js +3 -1
- package/lib/theming/themes/LightTheme.js.map +1 -1
- package/lib/theming/useTheme.js.map +1 -1
- package/lib/toKebabCase.js.map +1 -1
- package/lib/typeGuards.js.map +1 -1
- package/lib/types/button-link.js.map +1 -1
- package/lib/types/polymorphic-component.js.map +1 -1
- package/lib/types/props.js.map +1 -1
- package/lib/uidUtils.js.map +1 -1
- package/lib/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AriaAttributes, HTMLAttributes, JSX, ReactElement } from 'react';
|
|
1
|
+
import type { AriaAttributes, HTMLAttributes, JSX, ReactElement, ReactNode } from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { CommonProps } from '../../internal/CommonWrapper/index.js';
|
|
4
4
|
import type { TGetRootNode } from '../../lib/rootNode/index.js';
|
|
@@ -60,6 +60,20 @@ export interface InputProps extends CommonProps, Pick<HTMLAttributes<unknown>, '
|
|
|
60
60
|
suffix?: React.ReactNode;
|
|
61
61
|
/** Выделяет введённое значение при фокусе в поле. Работает с типами `text`, `password`, `tel`, `search`, `url`. */
|
|
62
62
|
selectAllOnFocus?: boolean;
|
|
63
|
+
/** Отображает счётчик введённых символов. */
|
|
64
|
+
showLengthCounter?: boolean;
|
|
65
|
+
/** Допустимое количество символов в поле. Отображается в счётчике символов.
|
|
66
|
+
* @default maxLength */
|
|
67
|
+
lengthCounter?: number;
|
|
68
|
+
/** Подсказка для счётчика символов.
|
|
69
|
+
*
|
|
70
|
+
* Если передать `ReactNode`, рисует тултип со встроенной иконкой.
|
|
71
|
+
* Если передать функцию, рисует произвольный элемент.
|
|
72
|
+
* @example
|
|
73
|
+
* ```
|
|
74
|
+
* counterHelp={() => <Hint text="..."><Icon /></Hint>}
|
|
75
|
+
* ``` */
|
|
76
|
+
counterHelp?: ReactNode | (() => ReactNode);
|
|
63
77
|
/** Устанавливает обработчик на случай некорректного ввода.
|
|
64
78
|
* Если передан onUnexpectedInput, он будет вызван при ошибке, а эффект мигания можно запустить вручную через публичный метод blink.
|
|
65
79
|
* @param {string} value - значение поля. */
|
|
@@ -75,10 +89,13 @@ export interface InputState {
|
|
|
75
89
|
focused: boolean;
|
|
76
90
|
hovered: boolean;
|
|
77
91
|
clearCrossShowed: boolean;
|
|
92
|
+
isCounterVisible: boolean;
|
|
78
93
|
}
|
|
79
94
|
export declare const InputDataTids: {
|
|
80
95
|
readonly root: "Input__root";
|
|
81
96
|
readonly clearCross: "Input__clearCross";
|
|
97
|
+
readonly counter: "Input__counter";
|
|
98
|
+
readonly counterHelpIcon: "Input__counterHelpIcon";
|
|
82
99
|
};
|
|
83
100
|
type DefaultProps = Required<Pick<InputProps, 'type' | 'showClearIcon'>>;
|
|
84
101
|
/**
|
|
@@ -139,6 +156,7 @@ export declare class Input extends React.Component<InputProps, InputState> {
|
|
|
139
156
|
private cancelDelayedSelectAll;
|
|
140
157
|
private getInput;
|
|
141
158
|
private renderMain;
|
|
159
|
+
private handleCloseCounterHelp;
|
|
142
160
|
private getSizeClassName;
|
|
143
161
|
private refInput;
|
|
144
162
|
private handleClearInput;
|
|
@@ -47,6 +47,7 @@ import warning from 'warning';
|
|
|
47
47
|
import { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon.js';
|
|
48
48
|
import { CommonWrapper } from '../../internal/CommonWrapper/index.js';
|
|
49
49
|
import { FocusControlWrapper } from '../../internal/FocusControlWrapper/index.js';
|
|
50
|
+
import { RenderLayer } from '../../internal/RenderLayer/index.js';
|
|
50
51
|
import { blink } from '../../lib/blink.js';
|
|
51
52
|
import { createPropsGetter } from '../../lib/createPropsGetter.js';
|
|
52
53
|
import { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers.js';
|
|
@@ -81,6 +82,8 @@ export var calculateClearCrossShowedState = function (_a) {
|
|
|
81
82
|
export var InputDataTids = {
|
|
82
83
|
root: 'Input__root',
|
|
83
84
|
clearCross: 'Input__clearCross',
|
|
85
|
+
counter: 'Input__counter',
|
|
86
|
+
counterHelpIcon: 'Input__counterHelpIcon',
|
|
84
87
|
};
|
|
85
88
|
/**
|
|
86
89
|
* Поле ввода позволяет ввести или отредактировать значение.
|
|
@@ -109,6 +112,7 @@ var Input = /** @class */ (function (_super) {
|
|
|
109
112
|
_this.state = {
|
|
110
113
|
focused: false,
|
|
111
114
|
hovered: false,
|
|
115
|
+
isCounterVisible: false,
|
|
112
116
|
clearCrossShowed: _this.getClearCrossShowed({
|
|
113
117
|
focused: false,
|
|
114
118
|
hasInitialValue: Boolean(_this.props.value || _this.props.defaultValue),
|
|
@@ -144,8 +148,8 @@ var Input = /** @class */ (function (_super) {
|
|
|
144
148
|
};
|
|
145
149
|
_this.renderMain = function (props) {
|
|
146
150
|
var _a, _b;
|
|
147
|
-
var onMouseEnter = props.onMouseEnter, onMouseLeave = props.onMouseLeave, onMouseOver = props.onMouseOver, onKeyDown = props.onKeyDown, onKeyPress = props.onKeyPress, onValueChange = props.onValueChange, width = props.width, error = props.error, role = props.role, warning = props.warning, leftIcon = props.leftIcon, rightIcon = props.rightIcon, borderless = props.borderless, value = props.value, align = props.align, type = props.type, size = props.size, placeholder = props.placeholder, selectAllOnFocus = props.selectAllOnFocus, disabled = props.disabled, onUnexpectedInput = props.onUnexpectedInput, prefix = props.prefix, suffix = props.suffix, corners = props.corners, ariaDescribedby = props["aria-describedby"], ariaControls = props["aria-controls"], ariaLabel = props["aria-label"], element = props.element, showClearIcon = props.showClearIcon, rest = __rest(props, ["onMouseEnter", "onMouseLeave", "onMouseOver", "onKeyDown", "onKeyPress", "onValueChange", "width", "error", "role", "warning", "leftIcon", "rightIcon", "borderless", "value", "align", "type", "size", "placeholder", "selectAllOnFocus", "disabled", "onUnexpectedInput", "prefix", "suffix", "corners", 'aria-describedby', 'aria-controls', 'aria-label', "element", "showClearIcon"]);
|
|
148
|
-
var
|
|
151
|
+
var onMouseEnter = props.onMouseEnter, onMouseLeave = props.onMouseLeave, onMouseOver = props.onMouseOver, onKeyDown = props.onKeyDown, onKeyPress = props.onKeyPress, onValueChange = props.onValueChange, width = props.width, error = props.error, role = props.role, warning = props.warning, leftIcon = props.leftIcon, rightIcon = props.rightIcon, borderless = props.borderless, value = props.value, align = props.align, type = props.type, size = props.size, placeholder = props.placeholder, selectAllOnFocus = props.selectAllOnFocus, showLengthCounter = props.showLengthCounter, lengthCounter = props.lengthCounter, counterHelp = props.counterHelp, disabled = props.disabled, onUnexpectedInput = props.onUnexpectedInput, prefix = props.prefix, suffix = props.suffix, corners = props.corners, ariaDescribedby = props["aria-describedby"], ariaControls = props["aria-controls"], ariaLabel = props["aria-label"], element = props.element, showClearIcon = props.showClearIcon, rest = __rest(props, ["onMouseEnter", "onMouseLeave", "onMouseOver", "onKeyDown", "onKeyPress", "onValueChange", "width", "error", "role", "warning", "leftIcon", "rightIcon", "borderless", "value", "align", "type", "size", "placeholder", "selectAllOnFocus", "showLengthCounter", "lengthCounter", "counterHelp", "disabled", "onUnexpectedInput", "prefix", "suffix", "corners", 'aria-describedby', 'aria-controls', 'aria-label', "element", "showClearIcon"]);
|
|
152
|
+
var _c = _this.state, focused = _c.focused, isCounterVisible = _c.isCounterVisible;
|
|
149
153
|
var labelProps = {
|
|
150
154
|
className: _this.cx(_this.styles.root(_this.theme), _this.getSizeClassName(), (_a = {},
|
|
151
155
|
_a[_this.styles.focus(_this.theme)] = focused && !warning && !error,
|
|
@@ -170,8 +174,10 @@ var Input = /** @class */ (function (_super) {
|
|
|
170
174
|
var getRightIcon = function () {
|
|
171
175
|
return _this.state.clearCrossShowed ? (React.createElement(ClearCrossIcon, { "data-tid": InputDataTids.clearCross, size: _this.size, onClick: _this.handleClearInput })) : (rightIcon);
|
|
172
176
|
};
|
|
173
|
-
return (React.createElement(
|
|
177
|
+
return (React.createElement(RenderLayer, { onFocusOutside: _this.handleCloseCounterHelp, onClickOutside: _this.handleCloseCounterHelp, active: isCounterVisible },
|
|
178
|
+
React.createElement(InputLayout, { leftIcon: leftIcon, rightIcon: getRightIcon(), prefix: prefix, suffix: suffix, value: value, showLengthCounter: showLengthCounter, isCounterVisible: isCounterVisible, lengthCounter: lengthCounter, counterHelp: counterHelp, onCloseCounterHelp: _this.handleCloseCounterHelp, maxLength: _this.props.maxLength, size: _this.size, labelProps: labelProps, context: { disabled: Boolean(disabled), focused: focused, size: _this.size } }, input)));
|
|
174
179
|
};
|
|
180
|
+
_this.handleCloseCounterHelp = function () { return _this.setState({ isCounterVisible: false }); };
|
|
175
181
|
_this.refInput = function (element) {
|
|
176
182
|
if (element && 'input' in element) {
|
|
177
183
|
_this.input = element.input;
|
|
@@ -224,6 +230,7 @@ var Input = /** @class */ (function (_super) {
|
|
|
224
230
|
_this.handleFocus = function (event) {
|
|
225
231
|
_this.setState({
|
|
226
232
|
focused: true,
|
|
233
|
+
isCounterVisible: true,
|
|
227
234
|
clearCrossShowed: _this.getClearCrossShowed({ focused: true, hovered: _this.state.hovered }),
|
|
228
235
|
});
|
|
229
236
|
if (_this.props.selectAllOnFocus) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../components/Input/Input.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport invariant from 'invariant';\nimport type { AriaAttributes, ClassAttributes, HTMLAttributes, JSX, ReactElement } from 'react';\nimport React, { createRef } from 'react';\nimport warning from 'warning';\n\nimport { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon.js';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper/index.js';\nimport { blink } from '../../lib/blink.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { getRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport { withSize } from '../../lib/size/SizeDecorator.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { catchUnreachableWarning } from '../../lib/typeGuards.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport type { Override } from '../../typings/utility-types.js';\nimport { getStyles } from './Input.styles.js';\nimport type { InputElement, InputElementProps } from './Input.typings.js';\nimport { InputLayout } from './InputLayout/InputLayout.js';\n\nexport const inputTypes = ['password', 'text', 'number', 'tel', 'search', 'time', 'date', 'url', 'email'] as const;\n\nexport type InputAlign = 'left' | 'center' | 'right';\nexport type ShowClearIcon = 'auto' | 'always' | 'never';\nexport type InputType = (typeof inputTypes)[number];\nexport type InputIconType = React.ReactNode | (() => React.ReactNode);\n\nexport const selectionAllowedTypes: InputType[] = ['text', 'password', 'tel', 'search', 'url'];\nexport const selectionErrorMessage = (type: InputType, allowedTypes: InputType[] = selectionAllowedTypes): string => {\n return `<Input />. Selection is not supported by the type \"${type}\". Types that support selection: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}. Reason: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange.`;\n};\n\nexport const calculateClearCrossShowedState = ({\n showClearIcon,\n notEmptyValue,\n focused,\n hovered,\n}: {\n showClearIcon: ShowClearIcon;\n notEmptyValue: boolean;\n focused?: boolean;\n hovered?: boolean;\n}): boolean => {\n switch (showClearIcon) {\n case 'always':\n return notEmptyValue;\n case 'auto':\n return Boolean((focused || hovered) && notEmptyValue);\n case 'never':\n return false;\n default:\n return catchUnreachableWarning(showClearIcon, false);\n }\n};\n\nexport interface InputProps\n extends\n CommonProps,\n Pick<HTMLAttributes<unknown>, 'role'>,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-controls' | 'aria-label'>,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Показывает иконку очистки значения в заполненном поле.\n * @default never */\n showClearIcon?: ShowClearIcon;\n\n /** Добавляет иконку слева.\n * При использовании `ReactNode` применяются дефолтные стили для иконки.\n * При использовании `() => ReactNode` применяются только стили для позиционирования. */\n leftIcon?: InputIconType;\n\n /** Добавляет иконку справа.\n * При использовании `ReactNode` применяются дефолтные стили для иконки.\n * При использовании `() => ReactNode` применяются только стили для позиционирования. */\n rightIcon?: InputIconType;\n\n /** Переводит поле в состояние ошибки. */\n error?: boolean;\n\n /** Переводит поле в состояние предупреждения. */\n warning?: boolean;\n\n /** Убирает обводку поля. */\n borderless?: boolean;\n\n /** Выравнивает контент внутри поля. */\n align?: InputAlign;\n\n /** Размер поля.\n * @default small\n */\n size?: SizeProp;\n\n /** Событие изменения значения `value` в поле. */\n onValueChange?: (value: string) => void;\n\n /** @ignore */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** @ignore */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** @ignore */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Тип поля ввода. */\n type?: InputType;\n\n /** Значение внутри поля. */\n value?: string;\n\n /** Устанавливает префикс `ReactNode` перед значением, но после иконки. */\n prefix?: React.ReactNode;\n\n /** Устанавливает суффикс `ReactNode` после значения, но перед правой иконкой. */\n suffix?: React.ReactNode;\n\n /** Выделяет введённое значение при фокусе в поле. Работает с типами `text`, `password`, `tel`, `search`, `url`. */\n selectAllOnFocus?: boolean;\n\n /** Устанавливает обработчик на случай некорректного ввода.\n * Если передан onUnexpectedInput, он будет вызван при ошибке, а эффект мигания можно запустить вручную через публичный метод blink.\n * @param {string} value - значение поля. */\n onUnexpectedInput?: (value: string) => void;\n\n /** Устанавливает радиус скруглений углов.\n * @ignore */\n corners?: Partial<\n Pick<\n React.CSSProperties,\n 'borderTopRightRadius' | 'borderBottomRightRadius' | 'borderBottomLeftRadius' | 'borderTopLeftRadius'\n >\n >;\n\n /** Устанавливает элемент, заменяющий нативный input. Должен иметь пропсы `InputElementProps` и тип `InputElement`. */\n element?: ReactElement<InputElementProps>;\n }\n > {}\n\nexport interface InputState {\n focused: boolean;\n hovered: boolean;\n clearCrossShowed: boolean;\n}\n\nexport const InputDataTids = {\n root: 'Input__root',\n clearCross: 'Input__clearCross',\n} as const;\n\ntype DefaultProps = Required<Pick<InputProps, 'type' | 'showClearIcon'>>;\n\n/**\n * Поле ввода позволяет ввести или отредактировать значение.\n */\n@withRenderEnvironment\n@rootNode\n@withSize\nexport class Input extends React.Component<InputProps, InputState> {\n public static __KONTUR_REACT_UI__ = 'Input';\n public static displayName = 'Input';\n\n public static defaultProps: DefaultProps = {\n type: 'text',\n showClearIcon: 'never',\n };\n private size!: SizeProp;\n\n private getProps = createPropsGetter(Input.defaultProps);\n\n private selectAllId: number | null = null;\n private globalObject!: GlobalObject;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n public input: HTMLInputElement | null = null;\n public labelRef = createRef<HTMLLabelElement>();\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n private getClearCrossShowed = ({\n focused,\n hovered,\n hasInitialValue,\n }: {\n focused?: boolean;\n hovered?: boolean;\n hasInitialValue?: boolean;\n }): boolean => {\n if (this.props.disabled) {\n return false;\n }\n return calculateClearCrossShowedState({\n showClearIcon: this.getProps().showClearIcon,\n notEmptyValue: Boolean(this.input?.value || hasInitialValue),\n focused,\n hovered,\n });\n };\n\n public state: InputState = {\n focused: false,\n hovered: false,\n clearCrossShowed: this.getClearCrossShowed({\n focused: false,\n hasInitialValue: Boolean(this.props.value || this.props.defaultValue),\n }),\n };\n\n public componentWillUnmount() {\n this.cancelDelayedSelectAll();\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus(): void {\n invariant(this.input, 'Cannot call \"focus\" because Input is not mounted');\n this.input.focus();\n }\n\n /** Программно снимает фокус с поля.\n * @public\n */\n public blur(): void {\n invariant(this.input, 'Cannot call \"blur\" because Input is not mounted');\n this.input.blur();\n }\n\n /** Возвращает DOM-узел поля ввода.\n * @public\n */\n public getNode(): HTMLInputElement | null {\n return this.input;\n }\n\n /** Кратковременно визуально подсвечивает поле ввода, чтобы привлечь внимание пользователя.\n * @public\n */\n public blink(): void {\n blink({ el: this.labelRef.current, blinkColor: this.theme.inputBlinkColor });\n }\n\n /** start - инициирует последовательное изменение числового значения: начинает повторяющееся увеличение/уменьшение, обычно используется при удерживании кнопки «+» или «−» для числового Input. end - останавливает ранее запущенное числоизменение, инициируемое numberStart.\n * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange(start: number, end: number): void {\n // https://github.com/facebook/react/issues/7769\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n if (!selectionAllowedTypes.includes(this.getProps().type)) {\n warning(false, selectionErrorMessage(this.getProps().type));\n\n return;\n }\n\n if (!this.input) {\n warning(false, 'Cannot call \"setSelectionRange\" on unmounted Input');\n return;\n }\n\n if (this.globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n\n this.input?.setSelectionRange(start, end);\n }\n\n public render(): JSX.Element {\n this.styles = getStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Переводит фокус в поле (если ещё не в фокусе) и выделяет весь текст в нём.\n * Работает с типами `text`, `password`, `tel`, `search`, `url`.\n * @public\n */\n public selectAll = (): void => this._selectAll();\n\n public delaySelectAll = (): number | null => {\n return (this.selectAllId = this.globalObject.requestAnimationFrame?.(this._selectAll) ?? null);\n };\n\n private _selectAll = (): void => {\n if (this.input) {\n this.setSelectionRange(0, this.input.value.length);\n }\n };\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n this.globalObject.cancelAnimationFrame?.(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private getInput = (inputProps: InputElementProps & ClassAttributes<HTMLInputElement>) => {\n if (this.props.element) {\n return React.cloneElement(this.props.element, inputProps);\n }\n\n return React.createElement('input', inputProps);\n };\n\n private renderMain = (props: CommonWrapperRestProps<InputProps>) => {\n const {\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onKeyPress,\n onValueChange,\n width,\n error,\n role,\n warning,\n leftIcon,\n rightIcon,\n borderless,\n value,\n align,\n type,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n corners,\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n element,\n showClearIcon,\n ...rest\n } = props;\n\n const { focused } = this.state;\n\n const labelProps = {\n className: this.cx(this.styles.root(this.theme), this.getSizeClassName(), {\n [this.styles.focus(this.theme)]: focused && !warning && !error,\n [this.styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [this.styles.borderless()]: borderless && !focused,\n [this.styles.disabled(this.theme)]: disabled,\n [this.styles.warning(this.theme)]: warning,\n [this.styles.error(this.theme)]: error,\n }),\n 'aria-controls': ariaControls,\n style: { width, ...corners },\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n onMouseOver,\n ref: this.labelRef,\n };\n\n const inputProps: InputElementProps & ClassAttributes<HTMLInputElement> = {\n ...rest,\n className: this.cx(this.styles.input(this.theme), {\n [this.styles.inputFocus(this.theme)]: focused,\n [this.styles.inputDisabled(this.theme)]: disabled,\n }),\n value,\n role,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onKeyDown: this.handleKeyDown,\n onKeyPress: this.handleKeyPress,\n onBlur: this.handleBlur,\n style: { textAlign: align },\n ref: this.refInput,\n type,\n placeholder,\n disabled,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n };\n\n const input = (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>{this.getInput(inputProps)}</FocusControlWrapper>\n );\n\n const getRightIcon = () => {\n return this.state.clearCrossShowed ? (\n <ClearCrossIcon data-tid={InputDataTids.clearCross} size={this.size} onClick={this.handleClearInput} />\n ) : (\n rightIcon\n );\n };\n return (\n <InputLayout\n leftIcon={leftIcon}\n rightIcon={getRightIcon()}\n prefix={prefix}\n suffix={suffix}\n labelProps={labelProps}\n context={{ disabled: Boolean(disabled), focused, size: this.size }}\n >\n {input}\n </InputLayout>\n );\n };\n\n private getSizeClassName() {\n switch (this.size) {\n case 'large':\n return this.cx({\n [this.styles.sizeLarge(this.theme)]: true,\n });\n case 'medium':\n return this.cx({\n [this.styles.sizeMedium(this.theme)]: true,\n });\n case 'small':\n default:\n return this.cx({\n [this.styles.sizeSmall(this.theme)]: true,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InputElement | null) => {\n if (element && 'input' in element) {\n this.input = element.input;\n } else {\n this.input = element;\n }\n };\n\n private handleClearInput = () => {\n if (this.input) {\n this.input.value = '';\n }\n\n this.setState({ clearCrossShowed: false });\n\n if (this.props.onValueChange) {\n this.props.onValueChange('');\n }\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n\n const clearCrossShowed = this.getClearCrossShowed({ focused: this.state.focused, hovered: this.state.hovered });\n\n if (this.state.clearCrossShowed !== clearCrossShowed) {\n this.setState({\n clearCrossShowed,\n });\n }\n };\n\n private handleMouseEnter = (e: React.MouseEvent<HTMLLabelElement, MouseEvent>) => {\n this.setState({\n hovered: true,\n clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: true }),\n });\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n private handleMouseLeave = (e: React.MouseEvent<HTMLLabelElement, MouseEvent>) => {\n this.setState({\n hovered: false,\n clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: false }),\n });\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({\n focused: true,\n clearCrossShowed: this.getClearCrossShowed({ focused: true, hovered: this.state.hovered }),\n });\n\n if (this.props.selectAllOnFocus) {\n this.input && this.selectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n\n const isDeleteKey = someKeys(isKeyBackspace, isKeyDelete)(e);\n\n if (!e.currentTarget.value && isDeleteKey && !e.repeat) {\n this.handleUnexpectedInput();\n }\n };\n\n private handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyPress) {\n this.props.onKeyPress(event);\n }\n\n if (this.props.maxLength === event.currentTarget.value.length) {\n this.handleUnexpectedInput(event.currentTarget.value);\n }\n };\n\n private handleUnexpectedInput = (value: string = this.props.value || '') => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(value);\n } else {\n this.blink();\n }\n };\n\n private resetFocus = () => this.setState({ focused: false });\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n const showClearIcon = this.props.showClearIcon;\n if (showClearIcon && getRootNode(this)?.contains(event.relatedTarget)) {\n this.setState({ focused: false });\n } else {\n const clearCrossShowed = this.getClearCrossShowed({ focused: false, hovered: this.state.hovered });\n this.setState({\n focused: false,\n clearCrossShowed,\n });\n this.props.onBlur?.(event);\n }\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Input.js","sourceRoot":"","sources":["Input.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\nimport invariant from 'invariant';\nimport type { AriaAttributes, ClassAttributes, HTMLAttributes, JSX, ReactElement, ReactNode } from 'react';\nimport React, { createRef } from 'react';\nimport warning from 'warning';\n\nimport { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon.js';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../internal/CommonWrapper/index.js';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper/index.js';\nimport { RenderLayer } from '../../internal/RenderLayer/index.js';\nimport { blink } from '../../lib/blink.js';\nimport { createPropsGetter } from '../../lib/createPropsGetter.js';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers.js';\nimport type { GlobalObject } from '../../lib/globalObject.js';\nimport { withRenderEnvironment } from '../../lib/renderEnvironment/index.js';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode/index.js';\nimport { getRootNode, rootNode } from '../../lib/rootNode/index.js';\nimport { withSize } from '../../lib/size/SizeDecorator.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\nimport { ThemeContext } from '../../lib/theming/ThemeContext.js';\nimport { catchUnreachableWarning } from '../../lib/typeGuards.js';\nimport type { SizeProp } from '../../lib/types/props.js';\nimport type { Override } from '../../typings/utility-types.js';\nimport { getStyles } from './Input.styles.js';\nimport type { InputElement, InputElementProps } from './Input.typings.js';\nimport { InputLayout } from './InputLayout/InputLayout.js';\n\nexport const inputTypes = ['password', 'text', 'number', 'tel', 'search', 'time', 'date', 'url', 'email'] as const;\n\nexport type InputAlign = 'left' | 'center' | 'right';\nexport type ShowClearIcon = 'auto' | 'always' | 'never';\nexport type InputType = (typeof inputTypes)[number];\nexport type InputIconType = React.ReactNode | (() => React.ReactNode);\n\nexport const selectionAllowedTypes: InputType[] = ['text', 'password', 'tel', 'search', 'url'];\nexport const selectionErrorMessage = (type: InputType, allowedTypes: InputType[] = selectionAllowedTypes): string => {\n return `<Input />. Selection is not supported by the type \"${type}\". Types that support selection: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}. Reason: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange.`;\n};\n\nexport const calculateClearCrossShowedState = ({\n showClearIcon,\n notEmptyValue,\n focused,\n hovered,\n}: {\n showClearIcon: ShowClearIcon;\n notEmptyValue: boolean;\n focused?: boolean;\n hovered?: boolean;\n}): boolean => {\n switch (showClearIcon) {\n case 'always':\n return notEmptyValue;\n case 'auto':\n return Boolean((focused || hovered) && notEmptyValue);\n case 'never':\n return false;\n default:\n return catchUnreachableWarning(showClearIcon, false);\n }\n};\n\nexport interface InputProps\n extends\n CommonProps,\n Pick<HTMLAttributes<unknown>, 'role'>,\n Pick<AriaAttributes, 'aria-describedby' | 'aria-controls' | 'aria-label'>,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Показывает иконку очистки значения в заполненном поле.\n * @default never */\n showClearIcon?: ShowClearIcon;\n\n /** Добавляет иконку слева.\n * При использовании `ReactNode` применяются дефолтные стили для иконки.\n * При использовании `() => ReactNode` применяются только стили для позиционирования. */\n leftIcon?: InputIconType;\n\n /** Добавляет иконку справа.\n * При использовании `ReactNode` применяются дефолтные стили для иконки.\n * При использовании `() => ReactNode` применяются только стили для позиционирования. */\n rightIcon?: InputIconType;\n\n /** Переводит поле в состояние ошибки. */\n error?: boolean;\n\n /** Переводит поле в состояние предупреждения. */\n warning?: boolean;\n\n /** Убирает обводку поля. */\n borderless?: boolean;\n\n /** Выравнивает контент внутри поля. */\n align?: InputAlign;\n\n /** Размер поля.\n * @default small\n */\n size?: SizeProp;\n\n /** Событие изменения значения `value` в поле. */\n onValueChange?: (value: string) => void;\n\n /** @ignore */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** @ignore */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** @ignore */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n\n /** Тип поля ввода. */\n type?: InputType;\n\n /** Значение внутри поля. */\n value?: string;\n\n /** Устанавливает префикс `ReactNode` перед значением, но после иконки. */\n prefix?: React.ReactNode;\n\n /** Устанавливает суффикс `ReactNode` после значения, но перед правой иконкой. */\n suffix?: React.ReactNode;\n\n /** Выделяет введённое значение при фокусе в поле. Работает с типами `text`, `password`, `tel`, `search`, `url`. */\n selectAllOnFocus?: boolean;\n\n /** Отображает счётчик введённых символов. */\n showLengthCounter?: boolean;\n\n /** Допустимое количество символов в поле. Отображается в счётчике символов.\n * @default maxLength */\n lengthCounter?: number;\n\n /** Подсказка для счётчика символов.\n *\n * Если передать `ReactNode`, рисует тултип со встроенной иконкой.\n * Если передать функцию, рисует произвольный элемент.\n * @example\n * ```\n * counterHelp={() => <Hint text=\"...\"><Icon /></Hint>}\n * ``` */\n counterHelp?: ReactNode | (() => ReactNode);\n\n /** Устанавливает обработчик на случай некорректного ввода.\n * Если передан onUnexpectedInput, он будет вызван при ошибке, а эффект мигания можно запустить вручную через публичный метод blink.\n * @param {string} value - значение поля. */\n onUnexpectedInput?: (value: string) => void;\n\n /** Устанавливает радиус скруглений углов.\n * @ignore */\n corners?: Partial<\n Pick<\n React.CSSProperties,\n 'borderTopRightRadius' | 'borderBottomRightRadius' | 'borderBottomLeftRadius' | 'borderTopLeftRadius'\n >\n >;\n\n /** Устанавливает элемент, заменяющий нативный input. Должен иметь пропсы `InputElementProps` и тип `InputElement`. */\n element?: ReactElement<InputElementProps>;\n }\n > {}\n\nexport interface InputState {\n focused: boolean;\n hovered: boolean;\n clearCrossShowed: boolean;\n isCounterVisible: boolean;\n}\n\nexport const InputDataTids = {\n root: 'Input__root',\n clearCross: 'Input__clearCross',\n counter: 'Input__counter',\n counterHelpIcon: 'Input__counterHelpIcon',\n} as const;\n\ntype DefaultProps = Required<Pick<InputProps, 'type' | 'showClearIcon'>>;\n\n/**\n * Поле ввода позволяет ввести или отредактировать значение.\n */\n@withRenderEnvironment\n@rootNode\n@withSize\nexport class Input extends React.Component<InputProps, InputState> {\n public static __KONTUR_REACT_UI__ = 'Input';\n public static displayName = 'Input';\n\n public static defaultProps: DefaultProps = {\n type: 'text',\n showClearIcon: 'never',\n };\n private size!: SizeProp;\n\n private getProps = createPropsGetter(Input.defaultProps);\n\n private selectAllId: number | null = null;\n private globalObject!: GlobalObject;\n private emotion!: Emotion;\n private cx!: Emotion['cx'];\n private styles!: ReturnType<typeof getStyles>;\n private theme!: Theme;\n public input: HTMLInputElement | null = null;\n public labelRef = createRef<HTMLLabelElement>();\n public getRootNode!: TGetRootNode;\n private setRootNode!: TSetRootNode;\n\n private getClearCrossShowed = ({\n focused,\n hovered,\n hasInitialValue,\n }: {\n focused?: boolean;\n hovered?: boolean;\n hasInitialValue?: boolean;\n }): boolean => {\n if (this.props.disabled) {\n return false;\n }\n return calculateClearCrossShowedState({\n showClearIcon: this.getProps().showClearIcon,\n notEmptyValue: Boolean(this.input?.value || hasInitialValue),\n focused,\n hovered,\n });\n };\n\n public state: InputState = {\n focused: false,\n hovered: false,\n isCounterVisible: false,\n clearCrossShowed: this.getClearCrossShowed({\n focused: false,\n hasInitialValue: Boolean(this.props.value || this.props.defaultValue),\n }),\n };\n\n public componentWillUnmount() {\n this.cancelDelayedSelectAll();\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus(): void {\n invariant(this.input, 'Cannot call \"focus\" because Input is not mounted');\n this.input.focus();\n }\n\n /** Программно снимает фокус с поля.\n * @public\n */\n public blur(): void {\n invariant(this.input, 'Cannot call \"blur\" because Input is not mounted');\n this.input.blur();\n }\n\n /** Возвращает DOM-узел поля ввода.\n * @public\n */\n public getNode(): HTMLInputElement | null {\n return this.input;\n }\n\n /** Кратковременно визуально подсвечивает поле ввода, чтобы привлечь внимание пользователя.\n * @public\n */\n public blink(): void {\n blink({ el: this.labelRef.current, blinkColor: this.theme.inputBlinkColor });\n }\n\n /** start - инициирует последовательное изменение числового значения: начинает повторяющееся увеличение/уменьшение, обычно используется при удерживании кнопки «+» или «−» для числового Input. end - останавливает ранее запущенное числоизменение, инициируемое numberStart.\n * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange(start: number, end: number): void {\n // https://github.com/facebook/react/issues/7769\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n if (!selectionAllowedTypes.includes(this.getProps().type)) {\n warning(false, selectionErrorMessage(this.getProps().type));\n\n return;\n }\n\n if (!this.input) {\n warning(false, 'Cannot call \"setSelectionRange\" on unmounted Input');\n return;\n }\n\n if (this.globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n\n this.input?.setSelectionRange(start, end);\n }\n\n public render(): JSX.Element {\n this.styles = getStyles(this.emotion);\n\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Переводит фокус в поле (если ещё не в фокусе) и выделяет весь текст в нём.\n * Работает с типами `text`, `password`, `tel`, `search`, `url`.\n * @public\n */\n public selectAll = (): void => this._selectAll();\n\n public delaySelectAll = (): number | null => {\n return (this.selectAllId = this.globalObject.requestAnimationFrame?.(this._selectAll) ?? null);\n };\n\n private _selectAll = (): void => {\n if (this.input) {\n this.setSelectionRange(0, this.input.value.length);\n }\n };\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n this.globalObject.cancelAnimationFrame?.(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private getInput = (inputProps: InputElementProps & ClassAttributes<HTMLInputElement>) => {\n if (this.props.element) {\n return React.cloneElement(this.props.element, inputProps);\n }\n\n return React.createElement('input', inputProps);\n };\n\n private renderMain = (props: CommonWrapperRestProps<InputProps>) => {\n const {\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onKeyPress,\n onValueChange,\n width,\n error,\n role,\n warning,\n leftIcon,\n rightIcon,\n borderless,\n value,\n align,\n type,\n size,\n placeholder,\n selectAllOnFocus,\n showLengthCounter,\n lengthCounter,\n counterHelp,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n corners,\n 'aria-describedby': ariaDescribedby,\n 'aria-controls': ariaControls,\n 'aria-label': ariaLabel,\n element,\n showClearIcon,\n ...rest\n } = props;\n\n const { focused, isCounterVisible } = this.state;\n\n const labelProps = {\n className: this.cx(this.styles.root(this.theme), this.getSizeClassName(), {\n [this.styles.focus(this.theme)]: focused && !warning && !error,\n [this.styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [this.styles.borderless()]: borderless && !focused,\n [this.styles.disabled(this.theme)]: disabled,\n [this.styles.warning(this.theme)]: warning,\n [this.styles.error(this.theme)]: error,\n }),\n 'aria-controls': ariaControls,\n style: { width, ...corners },\n onMouseEnter: this.handleMouseEnter,\n onMouseLeave: this.handleMouseLeave,\n onMouseOver,\n ref: this.labelRef,\n };\n\n const inputProps: InputElementProps & ClassAttributes<HTMLInputElement> = {\n ...rest,\n className: this.cx(this.styles.input(this.theme), {\n [this.styles.inputFocus(this.theme)]: focused,\n [this.styles.inputDisabled(this.theme)]: disabled,\n }),\n value,\n role,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onKeyDown: this.handleKeyDown,\n onKeyPress: this.handleKeyPress,\n onBlur: this.handleBlur,\n style: { textAlign: align },\n ref: this.refInput,\n type,\n placeholder,\n disabled,\n 'aria-describedby': ariaDescribedby,\n 'aria-label': ariaLabel,\n };\n\n const input = (\n <FocusControlWrapper onBlurWhenDisabled={this.resetFocus}>{this.getInput(inputProps)}</FocusControlWrapper>\n );\n\n const getRightIcon = () => {\n return this.state.clearCrossShowed ? (\n <ClearCrossIcon data-tid={InputDataTids.clearCross} size={this.size} onClick={this.handleClearInput} />\n ) : (\n rightIcon\n );\n };\n return (\n <RenderLayer\n onFocusOutside={this.handleCloseCounterHelp}\n onClickOutside={this.handleCloseCounterHelp}\n active={isCounterVisible}\n >\n <InputLayout\n leftIcon={leftIcon}\n rightIcon={getRightIcon()}\n prefix={prefix}\n suffix={suffix}\n value={value}\n showLengthCounter={showLengthCounter}\n isCounterVisible={isCounterVisible}\n lengthCounter={lengthCounter}\n counterHelp={counterHelp}\n onCloseCounterHelp={this.handleCloseCounterHelp}\n maxLength={this.props.maxLength}\n size={this.size}\n labelProps={labelProps}\n context={{ disabled: Boolean(disabled), focused, size: this.size }}\n >\n {input}\n </InputLayout>\n </RenderLayer>\n );\n };\n\n private handleCloseCounterHelp = () => this.setState({ isCounterVisible: false });\n\n private getSizeClassName() {\n switch (this.size) {\n case 'large':\n return this.cx({\n [this.styles.sizeLarge(this.theme)]: true,\n });\n case 'medium':\n return this.cx({\n [this.styles.sizeMedium(this.theme)]: true,\n });\n case 'small':\n default:\n return this.cx({\n [this.styles.sizeSmall(this.theme)]: true,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InputElement | null) => {\n if (element && 'input' in element) {\n this.input = element.input;\n } else {\n this.input = element;\n }\n };\n\n private handleClearInput = () => {\n if (this.input) {\n this.input.value = '';\n }\n\n this.setState({ clearCrossShowed: false });\n\n if (this.props.onValueChange) {\n this.props.onValueChange('');\n }\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n\n const clearCrossShowed = this.getClearCrossShowed({ focused: this.state.focused, hovered: this.state.hovered });\n\n if (this.state.clearCrossShowed !== clearCrossShowed) {\n this.setState({\n clearCrossShowed,\n });\n }\n };\n\n private handleMouseEnter = (e: React.MouseEvent<HTMLLabelElement, MouseEvent>) => {\n this.setState({\n hovered: true,\n clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: true }),\n });\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n private handleMouseLeave = (e: React.MouseEvent<HTMLLabelElement, MouseEvent>) => {\n this.setState({\n hovered: false,\n clearCrossShowed: this.getClearCrossShowed({ focused: this.state.focused, hovered: false }),\n });\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({\n focused: true,\n isCounterVisible: true,\n clearCrossShowed: this.getClearCrossShowed({ focused: true, hovered: this.state.hovered }),\n });\n\n if (this.props.selectAllOnFocus) {\n this.input && this.selectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n\n const isDeleteKey = someKeys(isKeyBackspace, isKeyDelete)(e);\n\n if (!e.currentTarget.value && isDeleteKey && !e.repeat) {\n this.handleUnexpectedInput();\n }\n };\n\n private handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyPress) {\n this.props.onKeyPress(event);\n }\n\n if (this.props.maxLength === event.currentTarget.value.length) {\n this.handleUnexpectedInput(event.currentTarget.value);\n }\n };\n\n private handleUnexpectedInput = (value: string = this.props.value || '') => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(value);\n } else {\n this.blink();\n }\n };\n\n private resetFocus = () => this.setState({ focused: false });\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n const showClearIcon = this.props.showClearIcon;\n if (showClearIcon && getRootNode(this)?.contains(event.relatedTarget)) {\n this.setState({ focused: false });\n } else {\n const clearCrossShowed = this.getClearCrossShowed({ focused: false, hovered: this.state.hovered });\n this.setState({\n focused: false,\n clearCrossShowed,\n });\n this.props.onBlur?.(event);\n }\n };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.styles.js","sourceRoot":"","sources":["../../../components/Input/Input.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { shift } from '../../lib/styles/DimensionFunctions.js';\nimport { resetText } from '../../lib/styles/Mixins.js';\nimport { memoizeGetStyles } from '../../lib/theming/Emotion.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\n\nexport const getStyles = memoizeGetStyles(({ css }: Emotion) => ({\n wrapper() {\n return css`\n align-items: center;\n display: flex;\n margin: 0;\n min-width: 0;\n overflow: hidden;\n position: relative;\n text-overflow: clip;\n white-space: nowrap;\n width: 100%;\n\n &::before {\n content: '\\\\A0';\n display: inline-block;\n width: 0;\n }\n `;\n },\n\n root(t: Theme) {\n return css`\n ${resetText()};\n\n align-items: center;\n background-clip: ${t.inputBackgroundClip};\n background-color: ${t.inputBg};\n border: ${t.inputBorderWidth} solid ${t.inputBorderColor};\n border-top-color: ${t.inputBorderTopColor};\n transition: border-color ${t.transitionDuration} ${t.transitionTimingFunction};\n box-shadow: ${t.inputShadow};\n box-sizing: border-box;\n color: ${t.inputColor};\n cursor: text;\n display: inline-flex;\n outline: none;\n position: relative;\n width: ${t.inputWidth};\n\n & * {\n box-sizing: border-box;\n }\n `;\n },\n\n hovering(t: Theme) {\n return css`\n &:hover {\n border-color: ${t.inputBorderColorHover};\n }\n `;\n },\n\n borderless() {\n return css`\n box-shadow: none;\n border-color: transparent;\n background-clip: padding-box;\n `;\n },\n\n focus(t: Theme) {\n return css`\n background-color: ${t.inputFocusedBg};\n border-color: ${t.inputBorderColorFocus};\n box-shadow: ${t.inputFocusShadow};\n outline: none;\n z-index: 2;\n `;\n },\n\n placeholder(t: Theme) {\n return css`\n -ms-user-select: none;\n color: ${t.inputPlaceholderColor};\n cursor: text;\n font-size: inherit;\n height: 100%;\n left: 0;\n overflow: hidden;\n pointer-events: none;\n position: absolute;\n top: 0;\n user-select: none;\n white-space: nowrap;\n width: 100%;\n `;\n },\n\n placeholderFocus(t: Theme) {\n return css`\n color: ${t.inputPlaceholderColorLight};\n `;\n },\n\n placeholderDisabled(t: Theme) {\n return css`\n color: ${t.inputPlaceholderColorDisabled};\n `;\n },\n\n input(t: Theme) {\n return css`\n -webkit-appearance: none;\n background: transparent;\n border: 0 none;\n color: ${t.inputTextColor};\n font: inherit;\n line-height: inherit;\n margin: 0;\n outline: none;\n padding: 0;\n text-overflow: clip;\n white-space: nowrap;\n width: 100%;\n color-scheme: ${t.inputColorScheme};\n\n &:-moz-placeholder {\n opacity: 1;\n }\n &::-moz-placeholder {\n opacity: 1;\n }\n &::-ms-clear {\n display: none;\n }\n &:-moz-placeholder {\n color: ${t.inputPlaceholderColor};\n }\n &::-moz-placeholder {\n color: ${t.inputPlaceholderColor};\n }\n &::placeholder {\n color: ${t.inputPlaceholderColor};\n }\n `;\n },\n\n inputFocus(t: Theme) {\n return css`\n &:-moz-placeholder {\n color: ${t.inputPlaceholderColorLight};\n }\n &::-moz-placeholder {\n color: ${t.inputPlaceholderColorLight};\n }\n &::placeholder {\n color: ${t.inputPlaceholderColorLight};\n }\n `;\n },\n\n inputDisabled(t: Theme) {\n return css`\n color: ${t.inputTextColorDisabled};\n /* fix text color in safari https://bugs.webkit.org/show_bug.cgi?id=115510 */\n -webkit-text-fill-color: ${t.inputTextColorDisabled};\n\n &:-moz-placeholder {\n -webkit-text-fill-color: ${t.inputPlaceholderColorDisabled};\n }\n &::-moz-placeholder {\n -webkit-text-fill-color: ${t.inputPlaceholderColorDisabled};\n }\n &::placeholder {\n -webkit-text-fill-color: ${t.inputPlaceholderColorDisabled};\n }\n `;\n },\n\n warning(t: Theme) {\n return css`\n border-color: ${t.inputBorderColorWarning};\n box-shadow: 0 0 0 ${t.inputOutlineWidth} ${t.inputBorderColorWarning};\n z-index: 2;\n `;\n },\n\n error(t: Theme) {\n return css`\n border-color: ${t.inputBorderColorError};\n box-shadow: 0 0 0 ${t.inputOutlineWidth} ${t.inputBorderColorError};\n z-index: 2;\n `;\n },\n\n disabled(t: Theme) {\n return css`\n background-color: ${t.inputDisabledBg};\n border-color: ${t.inputDisabledBorderColor};\n box-shadow: none;\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeSmall};\n line-height: ${t.inputLineHeightSmall};\n padding-top: ${t.inputPaddingYSmall};\n padding-bottom: ${t.inputPaddingYSmall};\n padding-left: ${t.inputPaddingXSmall};\n padding-right: ${t.inputPaddingXSmall};\n height: ${t.inputHeightSmall};\n border-radius: ${t.inputBorderRadiusSmall};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeMedium};\n line-height: ${t.inputLineHeightMedium};\n padding-top: ${t.inputPaddingYMedium};\n padding-bottom: ${t.inputPaddingYMedium};\n padding-left: ${t.inputPaddingXMedium};\n padding-right: ${t.inputPaddingXMedium};\n height: ${t.inputHeightMedium};\n border-radius: ${t.inputBorderRadiusMedium};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeLarge};\n line-height: ${t.inputLineHeightLarge};\n height: ${t.inputHeightLarge};\n padding-top: ${shift(t.inputPaddingYLarge, '0')};\n padding-bottom: ${shift(t.inputPaddingYLarge, '0')};\n padding-left: ${t.inputPaddingXLarge};\n padding-right: ${t.inputPaddingXLarge};\n border-radius: ${t.inputBorderRadiusLarge};\n `;\n },\n\n hideBlinkingCursor() {\n return css`\n caret-color: transparent;\n `;\n },\n}));\n"]}
|
|
1
|
+
{"version":3,"file":"Input.styles.js","sourceRoot":"","sources":["Input.styles.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { shift } from '../../lib/styles/DimensionFunctions.js';\nimport { resetText } from '../../lib/styles/Mixins.js';\nimport { memoizeGetStyles } from '../../lib/theming/Emotion.js';\nimport type { Theme } from '../../lib/theming/Theme.js';\n\nexport const getStyles = memoizeGetStyles(({ css }: Emotion) => ({\n wrapper() {\n return css`\n align-items: center;\n display: flex;\n margin: 0;\n min-width: 0;\n overflow: hidden;\n position: relative;\n text-overflow: clip;\n white-space: nowrap;\n width: 100%;\n\n &::before {\n content: '\\\\A0';\n display: inline-block;\n width: 0;\n }\n `;\n },\n\n root(t: Theme) {\n return css`\n ${resetText()};\n\n align-items: center;\n background-clip: ${t.inputBackgroundClip};\n background-color: ${t.inputBg};\n border: ${t.inputBorderWidth} solid ${t.inputBorderColor};\n border-top-color: ${t.inputBorderTopColor};\n transition: border-color ${t.transitionDuration} ${t.transitionTimingFunction};\n box-shadow: ${t.inputShadow};\n box-sizing: border-box;\n color: ${t.inputColor};\n cursor: text;\n display: inline-flex;\n outline: none;\n position: relative;\n width: ${t.inputWidth};\n\n & * {\n box-sizing: border-box;\n }\n `;\n },\n\n hovering(t: Theme) {\n return css`\n &:hover {\n border-color: ${t.inputBorderColorHover};\n }\n `;\n },\n\n borderless() {\n return css`\n box-shadow: none;\n border-color: transparent;\n background-clip: padding-box;\n `;\n },\n\n focus(t: Theme) {\n return css`\n background-color: ${t.inputFocusedBg};\n border-color: ${t.inputBorderColorFocus};\n box-shadow: ${t.inputFocusShadow};\n outline: none;\n z-index: 2;\n `;\n },\n\n placeholder(t: Theme) {\n return css`\n -ms-user-select: none;\n color: ${t.inputPlaceholderColor};\n cursor: text;\n font-size: inherit;\n height: 100%;\n left: 0;\n overflow: hidden;\n pointer-events: none;\n position: absolute;\n top: 0;\n user-select: none;\n white-space: nowrap;\n width: 100%;\n `;\n },\n\n placeholderFocus(t: Theme) {\n return css`\n color: ${t.inputPlaceholderColorLight};\n `;\n },\n\n placeholderDisabled(t: Theme) {\n return css`\n color: ${t.inputPlaceholderColorDisabled};\n `;\n },\n\n input(t: Theme) {\n return css`\n -webkit-appearance: none;\n background: transparent;\n border: 0 none;\n color: ${t.inputTextColor};\n font: inherit;\n line-height: inherit;\n margin: 0;\n outline: none;\n padding: 0;\n text-overflow: clip;\n white-space: nowrap;\n width: 100%;\n color-scheme: ${t.inputColorScheme};\n\n &:-moz-placeholder {\n opacity: 1;\n }\n &::-moz-placeholder {\n opacity: 1;\n }\n &::-ms-clear {\n display: none;\n }\n &:-moz-placeholder {\n color: ${t.inputPlaceholderColor};\n }\n &::-moz-placeholder {\n color: ${t.inputPlaceholderColor};\n }\n &::placeholder {\n color: ${t.inputPlaceholderColor};\n }\n `;\n },\n\n inputFocus(t: Theme) {\n return css`\n &:-moz-placeholder {\n color: ${t.inputPlaceholderColorLight};\n }\n &::-moz-placeholder {\n color: ${t.inputPlaceholderColorLight};\n }\n &::placeholder {\n color: ${t.inputPlaceholderColorLight};\n }\n `;\n },\n\n inputDisabled(t: Theme) {\n return css`\n color: ${t.inputTextColorDisabled};\n /* fix text color in safari https://bugs.webkit.org/show_bug.cgi?id=115510 */\n -webkit-text-fill-color: ${t.inputTextColorDisabled};\n\n &:-moz-placeholder {\n -webkit-text-fill-color: ${t.inputPlaceholderColorDisabled};\n }\n &::-moz-placeholder {\n -webkit-text-fill-color: ${t.inputPlaceholderColorDisabled};\n }\n &::placeholder {\n -webkit-text-fill-color: ${t.inputPlaceholderColorDisabled};\n }\n `;\n },\n\n warning(t: Theme) {\n return css`\n border-color: ${t.inputBorderColorWarning};\n box-shadow: 0 0 0 ${t.inputOutlineWidth} ${t.inputBorderColorWarning};\n z-index: 2;\n `;\n },\n\n error(t: Theme) {\n return css`\n border-color: ${t.inputBorderColorError};\n box-shadow: 0 0 0 ${t.inputOutlineWidth} ${t.inputBorderColorError};\n z-index: 2;\n `;\n },\n\n disabled(t: Theme) {\n return css`\n background-color: ${t.inputDisabledBg};\n border-color: ${t.inputDisabledBorderColor};\n box-shadow: none;\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeSmall};\n line-height: ${t.inputLineHeightSmall};\n padding-top: ${t.inputPaddingYSmall};\n padding-bottom: ${t.inputPaddingYSmall};\n padding-left: ${t.inputPaddingXSmall};\n padding-right: ${t.inputPaddingXSmall};\n height: ${t.inputHeightSmall};\n border-radius: ${t.inputBorderRadiusSmall};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeMedium};\n line-height: ${t.inputLineHeightMedium};\n padding-top: ${t.inputPaddingYMedium};\n padding-bottom: ${t.inputPaddingYMedium};\n padding-left: ${t.inputPaddingXMedium};\n padding-right: ${t.inputPaddingXMedium};\n height: ${t.inputHeightMedium};\n border-radius: ${t.inputBorderRadiusMedium};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n font-size: ${t.inputFontSizeLarge};\n line-height: ${t.inputLineHeightLarge};\n height: ${t.inputHeightLarge};\n padding-top: ${shift(t.inputPaddingYLarge, '0')};\n padding-bottom: ${shift(t.inputPaddingYLarge, '0')};\n padding-left: ${t.inputPaddingXLarge};\n padding-right: ${t.inputPaddingXLarge};\n border-radius: ${t.inputBorderRadiusLarge};\n `;\n },\n\n hideBlinkingCursor() {\n return css`\n caret-color: transparent;\n `;\n },\n}));\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.typings.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"Input.typings.js","sourceRoot":"","sources":["Input.typings.ts"],"names":[],"mappings":"","sourcesContent":["import type React from 'react';\n\nexport type InputElement = (HTMLInputElement | { input: HTMLInputElement | null }) & {\n getRootNode: () => HTMLElement | null;\n};\n\nexport type InputElementProps = React.InputHTMLAttributes<HTMLInputElement>;\n"]}
|
|
@@ -2,12 +2,14 @@ import React from 'react';
|
|
|
2
2
|
import type { CommonProps } from '../../../internal/CommonWrapper/index.js';
|
|
3
3
|
import type { InputProps } from '../Input.js';
|
|
4
4
|
import type { InputLayoutContextProps } from './InputLayoutContext.js';
|
|
5
|
-
type InputLayoutRootFromInputProps = Pick<InputProps, 'leftIcon' | 'rightIcon' | 'prefix' | 'suffix'>;
|
|
5
|
+
type InputLayoutRootFromInputProps = Pick<InputProps, 'leftIcon' | 'rightIcon' | 'prefix' | 'suffix' | 'value' | 'showLengthCounter' | 'lengthCounter' | 'counterHelp' | 'maxLength' | 'size'>;
|
|
6
6
|
export interface InputLayoutRootProps extends InputLayoutRootFromInputProps, CommonProps {
|
|
7
7
|
labelProps: React.LabelHTMLAttributes<HTMLLabelElement> & {
|
|
8
8
|
ref?: React.Ref<HTMLLabelElement>;
|
|
9
9
|
};
|
|
10
10
|
context: Partial<InputLayoutContextProps>;
|
|
11
|
+
isCounterVisible?: boolean;
|
|
12
|
+
onCloseCounterHelp?: () => void;
|
|
11
13
|
tag?: 'label' | 'span';
|
|
12
14
|
}
|
|
13
15
|
export declare const InputLayout: import("../../../lib/forwardRefAndName.js").ReactUIComponentWithRef<HTMLLabelElement, InputLayoutRootProps> & Record<never, never>;
|
|
@@ -17,17 +17,20 @@ import { useStyles } from '../../../lib/renderEnvironment/index.js';
|
|
|
17
17
|
import { InputDataTids } from '../Input.js';
|
|
18
18
|
import { getStylesLayout } from './InputLayout.styles.js';
|
|
19
19
|
import { InputLayoutAside } from './InputLayoutAside.js';
|
|
20
|
+
import { InputLayoutAsideCounter } from './InputLayoutAsideCounter.js';
|
|
20
21
|
import { InputLayoutContext, InputLayoutContextDefault } from './InputLayoutContext.js';
|
|
21
22
|
export var InputLayout = forwardRefAndName('InputLayout', function (props, ref) {
|
|
23
|
+
var _a;
|
|
22
24
|
var stylesLayout = useStyles(getStylesLayout);
|
|
23
|
-
var leftIcon = props.leftIcon, rightIcon = props.rightIcon, prefix = props.prefix, suffix = props.suffix, labelProps = props.labelProps, context = props.context, children = props.children,
|
|
25
|
+
var leftIcon = props.leftIcon, rightIcon = props.rightIcon, prefix = props.prefix, suffix = props.suffix, value = props.value, showLengthCounter = props.showLengthCounter, isCounterVisible = props.isCounterVisible, lengthCounter = props.lengthCounter, counterHelp = props.counterHelp, onCloseCounterHelp = props.onCloseCounterHelp, maxLength = props.maxLength, size = props.size, labelProps = props.labelProps, context = props.context, children = props.children, _b = props.tag, tag = _b === void 0 ? 'label' : _b;
|
|
24
26
|
var _context = __assign(__assign({}, InputLayoutContextDefault), context);
|
|
25
27
|
var Tag = tag;
|
|
28
|
+
var counter = showLengthCounter && isCounterVisible ? (React.createElement(InputLayoutAsideCounter, { key: "counter", inputValue: value, length: (_a = maxLength !== null && maxLength !== void 0 ? maxLength : lengthCounter) !== null && _a !== void 0 ? _a : 0, help: counterHelp, onCloseHelp: onCloseCounterHelp, size: size })) : undefined;
|
|
26
29
|
return (React.createElement(InputLayoutContext.Provider, { value: _context },
|
|
27
30
|
React.createElement(CommonWrapper, __assign({}, props),
|
|
28
31
|
React.createElement(Tag, __assign({ "data-tid": InputDataTids.root }, labelProps, { ref: mergeRefs(ref, labelProps.ref) }),
|
|
29
32
|
React.createElement(InputLayoutAside, { icon: leftIcon, text: prefix, side: "left" }),
|
|
30
33
|
React.createElement("span", { className: stylesLayout.input() }, children),
|
|
31
|
-
React.createElement(InputLayoutAside, { icon: rightIcon, text: suffix, side: "right" })))));
|
|
34
|
+
React.createElement(InputLayoutAside, { icon: rightIcon, text: suffix, counter: counter, side: "right" })))));
|
|
32
35
|
});
|
|
33
36
|
//# sourceMappingURL=InputLayout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputLayout.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"InputLayout.js","sourceRoot":"","sources":["InputLayout.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAyBxF,MAAM,CAAC,IAAM,WAAW,GAAG,iBAAiB,CAAyC,aAAa,EAAE,UAAC,KAAK,EAAE,GAAG;;IAC7G,IAAM,YAAY,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IAE9C,IAAA,QAAQ,GAgBN,KAAK,SAhBC,EACR,SAAS,GAeP,KAAK,UAfE,EACT,MAAM,GAcJ,KAAK,OAdD,EACN,MAAM,GAaJ,KAAK,OAbD,EACN,KAAK,GAYH,KAAK,MAZF,EACL,iBAAiB,GAWf,KAAK,kBAXU,EACjB,gBAAgB,GAUd,KAAK,iBAVS,EAChB,aAAa,GASX,KAAK,cATM,EACb,WAAW,GAQT,KAAK,YARI,EACX,kBAAkB,GAOhB,KAAK,mBAPW,EAClB,SAAS,GAMP,KAAK,UANE,EACT,IAAI,GAKF,KAAK,KALH,EACJ,UAAU,GAIR,KAAK,WAJG,EACV,OAAO,GAGL,KAAK,QAHA,EACP,QAAQ,GAEN,KAAK,SAFC,EACR,KACE,KAAK,IADM,EAAb,GAAG,mBAAG,OAAO,KAAA,CACL;IACV,IAAM,QAAQ,yBAAiC,yBAAyB,GAAK,OAAO,CAAE,CAAC;IACvF,IAAM,GAAG,GAAG,GAAG,CAAC;IAChB,IAAM,OAAO,GACX,iBAAiB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CACtC,oBAAC,uBAAuB,IACtB,GAAG,EAAC,SAAS,EACb,UAAU,EAAE,KAAK,EACjB,MAAM,EAAE,MAAA,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,aAAa,mCAAI,CAAC,EACvC,IAAI,EAAE,WAAW,EACjB,WAAW,EAAE,kBAAkB,EAC/B,IAAI,EAAE,IAAI,GACV,CACH,CAAC,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,CACL,oBAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ;QAC1C,oBAAC,aAAa,eAAK,KAAK;YACtB,oBAAC,GAAG,yBAAW,aAAa,CAAC,IAAI,IAAM,UAAU,IAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC;gBACpF,oBAAC,gBAAgB,IAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC,MAAM,GAAG;gBAC9D,8BAAM,SAAS,EAAE,YAAY,CAAC,KAAK,EAAE,IAAG,QAAQ,CAAQ;gBACxD,oBAAC,gBAAgB,IAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,OAAO,GAAG,CAC9E,CACQ,CACY,CAC/B,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import React from 'react';\n\nimport type { CommonProps } from '../../../internal/CommonWrapper/index.js';\nimport { CommonWrapper } from '../../../internal/CommonWrapper/index.js';\nimport { forwardRefAndName } from '../../../lib/forwardRefAndName.js';\nimport { mergeRefs } from '../../../lib/mergeRefs.js';\nimport { useStyles } from '../../../lib/renderEnvironment/index.js';\nimport { InputDataTids } from '../Input.js';\nimport type { InputProps } from '../Input.js';\nimport { getStylesLayout } from './InputLayout.styles.js';\nimport { InputLayoutAside } from './InputLayoutAside.js';\nimport { InputLayoutAsideCounter } from './InputLayoutAsideCounter.js';\nimport { InputLayoutContext, InputLayoutContextDefault } from './InputLayoutContext.js';\nimport type { InputLayoutContextProps } from './InputLayoutContext.js';\n\ntype InputLayoutRootFromInputProps = Pick<\n InputProps,\n | 'leftIcon'\n | 'rightIcon'\n | 'prefix'\n | 'suffix'\n | 'value'\n | 'showLengthCounter'\n | 'lengthCounter'\n | 'counterHelp'\n | 'maxLength'\n | 'size'\n>;\n\nexport interface InputLayoutRootProps extends InputLayoutRootFromInputProps, CommonProps {\n labelProps: React.LabelHTMLAttributes<HTMLLabelElement> & { ref?: React.Ref<HTMLLabelElement> };\n context: Partial<InputLayoutContextProps>;\n isCounterVisible?: boolean;\n onCloseCounterHelp?: () => void;\n tag?: 'label' | 'span';\n}\n\nexport const InputLayout = forwardRefAndName<HTMLLabelElement, InputLayoutRootProps>('InputLayout', (props, ref) => {\n const stylesLayout = useStyles(getStylesLayout);\n const {\n leftIcon,\n rightIcon,\n prefix,\n suffix,\n value,\n showLengthCounter,\n isCounterVisible,\n lengthCounter,\n counterHelp,\n onCloseCounterHelp,\n maxLength,\n size,\n labelProps,\n context,\n children,\n tag = 'label',\n } = props;\n const _context: InputLayoutContextProps = { ...InputLayoutContextDefault, ...context };\n const Tag = tag;\n const counter =\n showLengthCounter && isCounterVisible ? (\n <InputLayoutAsideCounter\n key=\"counter\"\n inputValue={value}\n length={maxLength ?? lengthCounter ?? 0}\n help={counterHelp}\n onCloseHelp={onCloseCounterHelp}\n size={size}\n />\n ) : undefined;\n\n return (\n <InputLayoutContext.Provider value={_context}>\n <CommonWrapper {...props}>\n <Tag data-tid={InputDataTids.root} {...labelProps} ref={mergeRefs(ref, labelProps.ref)}>\n <InputLayoutAside icon={leftIcon} text={prefix} side=\"left\" />\n <span className={stylesLayout.input()}>{children}</span>\n <InputLayoutAside icon={rightIcon} text={suffix} counter={counter} side=\"right\" />\n </Tag>\n </CommonWrapper>\n </InputLayoutContext.Provider>\n );\n});\n"]}
|
|
@@ -8,4 +8,10 @@ export declare const getStylesLayout: import("../../../lib/theming/Emotion.js").
|
|
|
8
8
|
iconDisabled(t: Theme): string;
|
|
9
9
|
text(t: Theme): string;
|
|
10
10
|
textDisabled(t: Theme): string;
|
|
11
|
+
counter(t: Theme): string;
|
|
12
|
+
counterSmall(t: Theme): string;
|
|
13
|
+
counterMedium(t: Theme): string;
|
|
14
|
+
counterLarge(t: Theme): string;
|
|
15
|
+
counterError(t: Theme): string;
|
|
16
|
+
counterHelp(t: Theme): string;
|
|
11
17
|
}>;
|
|
@@ -32,7 +32,25 @@ export var getStylesLayout = memoizeGetStyles(function (emotion) {
|
|
|
32
32
|
textDisabled: function (t) {
|
|
33
33
|
return emotion.css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n color: ", ";\n "], ["\n color: ", ";\n "])), t.inputPlaceholderColorDisabled);
|
|
34
34
|
},
|
|
35
|
+
counter: function (t) {
|
|
36
|
+
return emotion.css(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n font-variant-numeric: tabular-nums;\n color: ", ";\n "], ["\n font-variant-numeric: tabular-nums;\n color: ", ";\n "])), t.inputCounterColor);
|
|
37
|
+
},
|
|
38
|
+
counterSmall: function (t) {
|
|
39
|
+
return emotion.css(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n margin-left: ", ";\n "], ["\n margin-left: ", ";\n "])), t.inputCounterMarginLeftSmall);
|
|
40
|
+
},
|
|
41
|
+
counterMedium: function (t) {
|
|
42
|
+
return emotion.css(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n margin-left: ", ";\n "], ["\n margin-left: ", ";\n "])), t.inputCounterMarginLeftMedium);
|
|
43
|
+
},
|
|
44
|
+
counterLarge: function (t) {
|
|
45
|
+
return emotion.css(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n margin-left: ", ";\n "], ["\n margin-left: ", ";\n "])), t.inputCounterMarginLeftLarge);
|
|
46
|
+
},
|
|
47
|
+
counterError: function (t) {
|
|
48
|
+
return emotion.css(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n color: ", ";\n "], ["\n color: ", ";\n "])), t.inputCounterColorError);
|
|
49
|
+
},
|
|
50
|
+
counterHelp: function (t) {
|
|
51
|
+
return emotion.css(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n margin-left: ", ";\n "], ["\n margin-left: ", ";\n "])), t.inputCounterHelpMarginLeft);
|
|
52
|
+
},
|
|
35
53
|
};
|
|
36
54
|
});
|
|
37
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
|
|
55
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;
|
|
38
56
|
//# sourceMappingURL=InputLayout.styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputLayout.styles.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"InputLayout.styles.js","sourceRoot":"","sources":["InputLayout.styles.ts"],"names":[],"mappings":";;;;AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,IAAM,eAAe,GAAG,gBAAgB,CAAC,UAAC,OAAgB;IAC/D,IAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAElC,OAAO;QACL,IAAI,YAAC,CAAQ;YACX,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;QACD,KAAK;YACH,OAAO,OAAO,CAAC,GAAG,0MAAA,uIAMjB,KAAC;QACJ,CAAC;QACD,KAAK;YACH,OAAO,OAAO,CAAC,GAAG,iOAAA,qIAMF,EAAoB,uBAEnC,KAFe,oBAAoB,EAElC;QACJ,CAAC;QACD,IAAI,YAAC,CAAQ;YACX,OAAO,OAAO,CAAC,GAAG,mGAAA,mBACP,EAAgB,WAC1B,KADU,CAAC,CAAC,cAAc,EACzB;QACJ,CAAC;QACD,SAAS,YAAC,CAAQ;YAChB,OAAO,OAAO,CAAC,GAAG,mGAAA,mBACP,EAAuB,WACjC,KADU,CAAC,CAAC,qBAAqB,EAChC;QACJ,CAAC;QACD,YAAY,YAAC,CAAQ;YACnB,OAAO,OAAO,CAAC,GAAG,6HAAA,6CAEP,EAAwB,WAClC,KADU,CAAC,CAAC,sBAAsB,EACjC;QACJ,CAAC;QACD,IAAI,YAAC,CAAQ;YACX,OAAO,OAAO,CAAC,GAAG,mGAAA,mBACP,EAAuB,WACjC,KADU,CAAC,CAAC,qBAAqB,EAChC;QACJ,CAAC;QACD,YAAY,YAAC,CAAQ;YACnB,OAAO,OAAO,CAAC,GAAG,mGAAA,mBACP,EAA+B,WACzC,KADU,CAAC,CAAC,6BAA6B,EACxC;QACJ,CAAC;QACD,OAAO,YAAC,CAAQ;YACd,OAAO,OAAO,CAAC,GAAG,gJAAA,gEAEP,EAAmB,WAC7B,KADU,CAAC,CAAC,iBAAiB,EAC5B;QACJ,CAAC;QACD,YAAY,YAAC,CAAQ;YACnB,OAAO,OAAO,CAAC,GAAG,yGAAA,yBACD,EAA6B,WAC7C,KADgB,CAAC,CAAC,2BAA2B,EAC5C;QACJ,CAAC;QACD,aAAa,YAAC,CAAQ;YACpB,OAAO,OAAO,CAAC,GAAG,2GAAA,yBACD,EAA8B,WAC9C,KADgB,CAAC,CAAC,4BAA4B,EAC7C;QACJ,CAAC;QACD,YAAY,YAAC,CAAQ;YACnB,OAAO,OAAO,CAAC,GAAG,2GAAA,yBACD,EAA6B,WAC7C,KADgB,CAAC,CAAC,2BAA2B,EAC5C;QACJ,CAAC;QACD,YAAY,YAAC,CAAQ;YACnB,OAAO,OAAO,CAAC,GAAG,qGAAA,mBACP,EAAwB,WAClC,KADU,CAAC,CAAC,sBAAsB,EACjC;QACJ,CAAC;QACD,WAAW,YAAC,CAAQ;YAClB,OAAO,OAAO,CAAC,GAAG,2GAAA,yBACD,EAA4B,WAC5C,KADgB,CAAC,CAAC,0BAA0B,EAC3C;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import type { Emotion } from '@emotion/css/create-instance';\n\nimport { ZERO_WIDTH_SPACE_CSS } from '../../../lib/chars.js';\nimport { memoizeGetStyles } from '../../../lib/theming/Emotion.js';\nimport type { Theme } from '../../../lib/theming/Theme.js';\nimport { getStyles } from '../Input.styles.js';\n\nexport const getStylesLayout = memoizeGetStyles((emotion: Emotion) => {\n const styles = getStyles(emotion);\n\n return {\n root(t: Theme) {\n return styles.root(t);\n },\n input() {\n return emotion.css`\n min-width: 0;\n overflow: hidden;\n position: relative;\n width: 100%;\n display: flex;\n `;\n },\n aside() {\n return emotion.css`\n display: inline-flex;\n align-items: center;\n flex-shrink: 0;\n\n &::before {\n content: '${ZERO_WIDTH_SPACE_CSS}';\n }\n `;\n },\n icon(t: Theme) {\n return emotion.css`\n color: ${t.inputIconColor};\n `;\n },\n iconFocus(t: Theme) {\n return emotion.css`\n color: ${t.inputFocusedIconColor};\n `;\n },\n iconDisabled(t: Theme) {\n return emotion.css`\n cursor: default;\n color: ${t.inputIconColorDisabled};\n `;\n },\n text(t: Theme) {\n return emotion.css`\n color: ${t.inputPlaceholderColor};\n `;\n },\n textDisabled(t: Theme) {\n return emotion.css`\n color: ${t.inputPlaceholderColorDisabled};\n `;\n },\n counter(t: Theme) {\n return emotion.css`\n font-variant-numeric: tabular-nums;\n color: ${t.inputCounterColor};\n `;\n },\n counterSmall(t: Theme) {\n return emotion.css`\n margin-left: ${t.inputCounterMarginLeftSmall};\n `;\n },\n counterMedium(t: Theme) {\n return emotion.css`\n margin-left: ${t.inputCounterMarginLeftMedium};\n `;\n },\n counterLarge(t: Theme) {\n return emotion.css`\n margin-left: ${t.inputCounterMarginLeftLarge};\n `;\n },\n counterError(t: Theme) {\n return emotion.css`\n color: ${t.inputCounterColorError};\n `;\n },\n counterHelp(t: Theme) {\n return emotion.css`\n margin-left: ${t.inputCounterHelpMarginLeft};\n `;\n },\n };\n});\n"]}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { ReactElement } from 'react';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import type { InputProps } from '../Input.js';
|
|
3
4
|
export interface InputLayoutAsideProps {
|
|
4
5
|
icon: InputProps['leftIcon'] | InputProps['rightIcon'];
|
|
5
6
|
text: InputProps['prefix'] | InputProps['suffix'];
|
|
7
|
+
counter?: ReactElement;
|
|
6
8
|
side: 'left' | 'right';
|
|
7
9
|
}
|
|
8
10
|
export declare const InputLayoutAside: React.FunctionComponent<InputLayoutAsideProps>;
|
|
@@ -4,12 +4,12 @@ import { getStylesLayout } from './InputLayout.styles.js';
|
|
|
4
4
|
import { InputLayoutAsideIcon } from './InputLayoutAsideIcon.js';
|
|
5
5
|
import { InputLayoutAsideText } from './InputLayoutAsideText.js';
|
|
6
6
|
export var InputLayoutAside = function (_a) {
|
|
7
|
-
var icon = _a.icon, text = _a.text, side = _a.side;
|
|
7
|
+
var icon = _a.icon, text = _a.text, counter = _a.counter, side = _a.side;
|
|
8
8
|
var stylesLayout = useStyles(getStylesLayout);
|
|
9
9
|
var asideClassName = stylesLayout.aside();
|
|
10
10
|
var _icon = React.createElement(InputLayoutAsideIcon, { key: "icon", icon: icon, side: side });
|
|
11
11
|
var _text = React.createElement(InputLayoutAsideText, { key: "text", text: text });
|
|
12
|
-
var child = side === 'left' ? [_icon, _text] : [_text, _icon];
|
|
12
|
+
var child = side === 'left' ? [_icon, _text] : [_text, counter, _icon];
|
|
13
13
|
return React.createElement("span", { className: asideClassName }, child);
|
|
14
14
|
};
|
|
15
15
|
//# sourceMappingURL=InputLayoutAside.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputLayoutAside.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"InputLayoutAside.js","sourceRoot":"","sources":["InputLayoutAside.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AASjE,MAAM,CAAC,IAAM,gBAAgB,GAAmD,UAAC,EAA6B;QAA3B,IAAI,UAAA,EAAE,IAAI,UAAA,EAAE,OAAO,aAAA,EAAE,IAAI,UAAA;IAC1G,IAAM,YAAY,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IAChD,IAAM,cAAc,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC;IAE5C,IAAM,KAAK,GAAG,oBAAC,oBAAoB,IAAC,GAAG,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAI,CAAC;IAC1E,IAAM,KAAK,GAAG,oBAAC,oBAAoB,IAAC,GAAG,EAAC,MAAM,EAAC,IAAI,EAAE,IAAI,GAAI,CAAC;IAE9D,IAAM,KAAK,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAEzE,OAAO,8BAAM,SAAS,EAAE,cAAc,IAAG,KAAK,CAAQ,CAAC;AACzD,CAAC,CAAC","sourcesContent":["import type { ReactElement } from 'react';\nimport React from 'react';\n\nimport { useStyles } from '../../../lib/renderEnvironment/index.js';\nimport type { InputProps } from '../Input.js';\nimport { getStylesLayout } from './InputLayout.styles.js';\nimport { InputLayoutAsideIcon } from './InputLayoutAsideIcon.js';\nimport { InputLayoutAsideText } from './InputLayoutAsideText.js';\n\nexport interface InputLayoutAsideProps {\n icon: InputProps['leftIcon'] | InputProps['rightIcon'];\n text: InputProps['prefix'] | InputProps['suffix'];\n counter?: ReactElement;\n side: 'left' | 'right';\n}\n\nexport const InputLayoutAside: React.FunctionComponent<InputLayoutAsideProps> = ({ icon, text, counter, side }) => {\n const stylesLayout = useStyles(getStylesLayout);\n const asideClassName = stylesLayout.aside();\n\n const _icon = <InputLayoutAsideIcon key=\"icon\" icon={icon} side={side} />;\n const _text = <InputLayoutAsideText key=\"text\" text={text} />;\n\n const child = side === 'left' ? [_icon, _text] : [_text, counter, _icon];\n\n return <span className={asideClassName}>{child}</span>;\n};\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { SizeProp } from '../../../lib/types/props.js';
|
|
3
|
+
import { type InputProps } from '../Input.js';
|
|
4
|
+
export interface InputLayoutAsideCounterProps {
|
|
5
|
+
length: number;
|
|
6
|
+
inputValue: InputProps['value'];
|
|
7
|
+
help: InputProps['counterHelp'];
|
|
8
|
+
onCloseHelp?: () => void;
|
|
9
|
+
size?: SizeProp;
|
|
10
|
+
}
|
|
11
|
+
export declare const InputLayoutAsideCounter: React.FunctionComponent<InputLayoutAsideCounterProps>;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
import React, { useCallback } from 'react';
|
|
13
|
+
import { Tooltip } from '../../../components/Tooltip/Tooltip.js';
|
|
14
|
+
import { QuestionCircleIcon16Light } from '../../../internal/icons2022/QuestionCircleIcon/QuestionCircleIcon16Light.js';
|
|
15
|
+
import { QuestionCircleIcon20Regular } from '../../../internal/icons2022/QuestionCircleIcon/QuestionCircleIcon20Regular.js';
|
|
16
|
+
import { QuestionCircleIcon24Regular } from '../../../internal/icons2022/QuestionCircleIcon/QuestionCircleIcon24Regular.js';
|
|
17
|
+
import { useEmotion, useStyles } from '../../../lib/renderEnvironment/index.js';
|
|
18
|
+
import { ThemeContext } from '../../../lib/theming/ThemeContext.js';
|
|
19
|
+
import { isFunction } from '../../../lib/utils.js';
|
|
20
|
+
import { InputDataTids } from '../Input.js';
|
|
21
|
+
import { getStylesLayout } from './InputLayout.styles.js';
|
|
22
|
+
var handleHelpMouseDown = function (e) { return e.preventDefault(); };
|
|
23
|
+
export var InputLayoutAsideCounter = function (_a) {
|
|
24
|
+
var _b;
|
|
25
|
+
var length = _a.length, inputValue = _a.inputValue, help = _a.help, onCloseHelp = _a.onCloseHelp, size = _a.size;
|
|
26
|
+
var theme = React.useContext(ThemeContext);
|
|
27
|
+
var cx = useEmotion().cx;
|
|
28
|
+
var stylesLayout = useStyles(getStylesLayout);
|
|
29
|
+
var renderTooltipContent = useCallback(function () {
|
|
30
|
+
if (typeof help === 'function') {
|
|
31
|
+
return help();
|
|
32
|
+
}
|
|
33
|
+
return help;
|
|
34
|
+
}, [help]);
|
|
35
|
+
var getHelpIcon = function () {
|
|
36
|
+
switch (size) {
|
|
37
|
+
case 'large':
|
|
38
|
+
return React.createElement(QuestionCircleIcon24Regular, __assign({}, helpIconProps));
|
|
39
|
+
case 'medium':
|
|
40
|
+
return React.createElement(QuestionCircleIcon20Regular, __assign({}, helpIconProps));
|
|
41
|
+
case 'small':
|
|
42
|
+
default:
|
|
43
|
+
return React.createElement(QuestionCircleIcon16Light, __assign({}, helpIconProps));
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
var helpIconProps = {
|
|
47
|
+
onMouseDown: handleHelpMouseDown,
|
|
48
|
+
color: theme.inputCounterHelpIconColor,
|
|
49
|
+
'data-tid': InputDataTids.counterHelpIcon,
|
|
50
|
+
style: { cursor: 'pointer' },
|
|
51
|
+
};
|
|
52
|
+
var counterHelp = isFunction(help) ? (help()) : (React.createElement(Tooltip, { pos: 'right bottom', trigger: 'click', render: renderTooltipContent, onCloseClick: onCloseHelp, size: size }, getHelpIcon()));
|
|
53
|
+
var asideClassName = stylesLayout.aside();
|
|
54
|
+
var getCounterSizeClassName = function () {
|
|
55
|
+
switch (size) {
|
|
56
|
+
case 'large':
|
|
57
|
+
return stylesLayout.counterLarge(theme);
|
|
58
|
+
case 'medium':
|
|
59
|
+
return stylesLayout.counterMedium(theme);
|
|
60
|
+
case 'small':
|
|
61
|
+
default:
|
|
62
|
+
return stylesLayout.counterSmall(theme);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
var inputValueLength = inputValue ? inputValue.length : 0;
|
|
66
|
+
var counterValue = length - inputValueLength;
|
|
67
|
+
var isNegativeValue = counterValue < 0;
|
|
68
|
+
return (React.createElement("span", { "data-tid": InputDataTids.counter, className: cx(asideClassName, getCounterSizeClassName(), stylesLayout.counter(theme), (_b = {},
|
|
69
|
+
_b[stylesLayout.counterError(theme)] = isNegativeValue,
|
|
70
|
+
_b)) },
|
|
71
|
+
isNegativeValue ? "\u2013".concat(-counterValue) : counterValue,
|
|
72
|
+
help && React.createElement("span", { className: stylesLayout.counterHelp(theme) }, counterHelp)));
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=InputLayoutAsideCounter.js.map
|