@skbkontur/react-ui 5.6.2-07e9a.0 → 5.6.2-a27b9.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.
|
@@ -578,7 +578,7 @@ Input = exports.Input = (0, _rootNode.rootNode)(_class = (0, _SizeDecorator.with
|
|
|
578
578
|
|
|
579
579
|
var clearCrossShowed = _this.getClearCrossShowed({ focused: _this.state.focused, hovered: _this.state.hovered });
|
|
580
580
|
|
|
581
|
-
if (_this.state.clearCrossShowed
|
|
581
|
+
if (clearCrossShowed !== _this.state.clearCrossShowed) {
|
|
582
582
|
_this.setState({
|
|
583
583
|
clearCrossShowed: clearCrossShowed
|
|
584
584
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_invariant","_interopRequireDefault","require","_react","_interopRequireWildcard","_warning","_globalObject","_client","_identifiers","_needsPolyfillPlaceholder","_InternalMaskedInput","_ThemeContext","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_FocusControlWrapper","_ClearCrossIcon","_typeGuards","_blink2","_SizeDecorator","_Input2","_InputLayout","_PolyfillPlaceholder","_excluded","_class","_Input","inputTypes","exports","selectionAllowedTypes","selectionErrorMessage","type","allowedTypes","map","i","join","maskForbiddenTypes","maskAllowedTypes","filter","includes","maskErrorMessage","calculateClearCrossShowedState","_ref","showClearIcon","notEmptyValue","focused","hovered","Boolean","catchUnreachableWarning","InputDataTids","root","clearCross","Input","rootNode","withSize","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","selectAllId","input","labelRef","createRef","getClearCrossShowed","_ref2","_this$input","hasInitialValue","props","disabled","value","state","needsPolyfillPlaceholder","clearCrossShowed","defaultValue","selectAll","_selectAll","delaySelectAll","_globalObject$request","globalObject","requestAnimationFrame","setSelectionRange","cancelDelayedSelectAll","cancelAnimationFrame","getInput","inputProps","element","React","cloneElement","mask","canBeUsedWithMask","renderMaskedInput","createElement","renderMain","_cx","_cx2","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","role","warning","leftIcon","rightIcon","borderless","align","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","onUnexpectedInput","prefix","suffix","formatChars","corners","ariaDescribedby","ariaControls","ariaLabel","rest","_objectWithoutPropertiesLoose2","default","labelProps","className","cx","styles","theme","getSizeClassName","focus","hovering","focusFallback","isIE11","isEdge","warningFallback","errorFallback","style","_extends2","handleMouseEnter","handleMouseLeave","ref","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","refInput","isMaskVisible","undefined","FocusControlWrapper","onBlurWhenDisabled","resetFocus","getRightIcon","ClearCrossIcon","onClick","handleClearInput","InputLayout","context","PolyfillPlaceholder","InternalMaskedInput","setState","event","fieldIsEmpty","target","e","isDeleteKey","someKeys","isKeyBackspace","isKeyDelete","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","blink","_getRootNode","getRootNode","contains","relatedTarget","_inheritsLoose2","_proto","prototype","outputMaskError","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","invariant","blur","getNode","el","current","blinkColor","inputBlinkColor","start","end","_globalObject$documen","_this$props$value","_this2","Error","document","activeElement","setTimeout","_this2$input","_this$input2","render","_this3","ThemeContext","Consumer","CommonWrapper","rootNodeRef","setRootNode","_cx3","_cx4","_cx5","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","_createClass2","key","get","_this$props","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Input.tsx"],"sourcesContent":["// TODO: Enable this rule in functional components.\nimport invariant from 'invariant';\nimport type { AriaAttributes, ClassAttributes, HTMLAttributes, ReactElement } from 'react';\nimport React, { createRef } from 'react';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport type { Nullable, Override } from '../../typings/utility-types';\nimport { InternalMaskedInput } from '../../internal/InternalMaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\nimport { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon';\nimport { catchUnreachableWarning } from '../../lib/typeGuards';\nimport { blink } from '../../lib/blink';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport type { InputElement, InputElementProps } from './Input.typings';\nimport { styles } from './Input.styles';\nimport { InputLayout } from './InputLayout/InputLayout';\nimport { PolyfillPlaceholder } from './InputLayout/PolyfillPlaceholder';\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) => {\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 maskForbiddenTypes: InputType[] = ['number', 'date', 'time'];\nexport const maskAllowedTypes: InputType[] = inputTypes.filter((type) => {\n return !maskForbiddenTypes.includes(type);\n});\nexport const maskErrorMessage = (type: InputType, allowedTypes: InputType[] = maskAllowedTypes) => {\n return `<Input />. Prop \"mask\" does not support type \"${type}\". Supported types: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}.`;\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 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 /** Меняет визуальное отображение поля на состояние «ошибка». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n error?: boolean;\n\n /** Меняет визуальное отображение поля на состояние «предупреждение». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n warning?: boolean;\n\n /** Убирает обводку поля. */\n borderless?: boolean;\n\n /** Выравнивает контент внутри поля. */\n align?: InputAlign;\n\n /** Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url`\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n mask?: Nullable<string>;\n\n /** Устанавливает символ маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n maskChar?: Nullable<string>;\n\n /** Словарь символов-регулярок для задания маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput.\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }. */\n formatChars?: Record<string, string>;\n\n /** Включает показ символов маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n alwaysShowMask?: boolean;\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 /** @deprecated Со следующей мажорной версии Input перестанет поддерживать проп `capture`. */\n capture?: boolean;\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 needsPolyfillPlaceholder: 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@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 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 needsPolyfillPlaceholder,\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 private outputMaskError() {\n warning(!(this.props.mask && this.canBeUsedWithMask), maskErrorMessage(this.getProps().type));\n }\n\n public componentDidMount() {\n this.outputMaskError();\n }\n\n public componentDidUpdate(prevProps: Readonly<InputProps>) {\n if (this.props.type !== prevProps.type || this.props.mask !== prevProps.mask) {\n this.outputMaskError();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedSelectAll();\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus() {\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() {\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() {\n return this.input;\n }\n\n /** Кратковременно визуально подсвечивает поле ввода, чтобы привлечь внимание пользователя.\n * @public\n */\n public blink() {\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) {\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 throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n globalObject.setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private get canBeUsedWithMask() {\n return maskForbiddenTypes.includes(this.getProps().type);\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 = 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 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 this.props.mask && !this.canBeUsedWithMask\n ? this.renderMaskedInput(inputProps, this.props.mask)\n : 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 mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\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: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused && !warning && !error,\n [styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\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: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [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: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\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 {this.state.needsPolyfillPlaceholder && (\n <PolyfillPlaceholder\n isMaskVisible={this.isMaskVisible}\n value={value}\n defaultValue={this.props.defaultValue}\n align={align}\n >\n {placeholder}\n </PolyfillPlaceholder>\n )}\n </InputLayout>\n );\n };\n\n private renderMaskedInput(inputProps: React.InputHTMLAttributes<HTMLInputElement>, mask: string) {\n return (\n <InternalMaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getSizeClassName() {\n switch (this.size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InternalMaskedInput | InputElement | null) => {\n if (element instanceof InternalMaskedInput || (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 (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\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 && !isIE11 ? this.selectAll() : this.delaySelectAll();\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 handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_invariant","_interopRequireDefault","require","_react","_interopRequireWildcard","_warning","_globalObject","_client","_identifiers","_needsPolyfillPlaceholder","_InternalMaskedInput","_ThemeContext","_CommonWrapper","_Emotion","_rootNode","_createPropsGetter","_FocusControlWrapper","_ClearCrossIcon","_typeGuards","_blink2","_SizeDecorator","_Input2","_InputLayout","_PolyfillPlaceholder","_excluded","_class","_Input","inputTypes","exports","selectionAllowedTypes","selectionErrorMessage","type","allowedTypes","map","i","join","maskForbiddenTypes","maskAllowedTypes","filter","includes","maskErrorMessage","calculateClearCrossShowedState","_ref","showClearIcon","notEmptyValue","focused","hovered","Boolean","catchUnreachableWarning","InputDataTids","root","clearCross","Input","rootNode","withSize","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","selectAllId","input","labelRef","createRef","getClearCrossShowed","_ref2","_this$input","hasInitialValue","props","disabled","value","state","needsPolyfillPlaceholder","clearCrossShowed","defaultValue","selectAll","_selectAll","delaySelectAll","_globalObject$request","globalObject","requestAnimationFrame","setSelectionRange","cancelDelayedSelectAll","cancelAnimationFrame","getInput","inputProps","element","React","cloneElement","mask","canBeUsedWithMask","renderMaskedInput","createElement","renderMain","_cx","_cx2","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","role","warning","leftIcon","rightIcon","borderless","align","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","onUnexpectedInput","prefix","suffix","formatChars","corners","ariaDescribedby","ariaControls","ariaLabel","rest","_objectWithoutPropertiesLoose2","default","labelProps","className","cx","styles","theme","getSizeClassName","focus","hovering","focusFallback","isIE11","isEdge","warningFallback","errorFallback","style","_extends2","handleMouseEnter","handleMouseLeave","ref","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","refInput","isMaskVisible","undefined","FocusControlWrapper","onBlurWhenDisabled","resetFocus","getRightIcon","ClearCrossIcon","onClick","handleClearInput","InputLayout","context","PolyfillPlaceholder","InternalMaskedInput","setState","event","fieldIsEmpty","target","e","isDeleteKey","someKeys","isKeyBackspace","isKeyDelete","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","blink","_getRootNode","getRootNode","contains","relatedTarget","_inheritsLoose2","_proto","prototype","outputMaskError","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","invariant","blur","getNode","el","current","blinkColor","inputBlinkColor","start","end","_globalObject$documen","_this$props$value","_this2","Error","document","activeElement","setTimeout","_this2$input","_this$input2","render","_this3","ThemeContext","Consumer","CommonWrapper","rootNodeRef","setRootNode","_cx3","_cx4","_cx5","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","_createClass2","key","get","_this$props","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Input.tsx"],"sourcesContent":["// TODO: Enable this rule in functional components.\nimport invariant from 'invariant';\nimport type { AriaAttributes, ClassAttributes, HTMLAttributes, ReactElement } from 'react';\nimport React, { createRef } from 'react';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport type { Nullable, Override } from '../../typings/utility-types';\nimport { InternalMaskedInput } from '../../internal/InternalMaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\nimport { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon';\nimport { catchUnreachableWarning } from '../../lib/typeGuards';\nimport { blink } from '../../lib/blink';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport type { InputElement, InputElementProps } from './Input.typings';\nimport { styles } from './Input.styles';\nimport { InputLayout } from './InputLayout/InputLayout';\nimport { PolyfillPlaceholder } from './InputLayout/PolyfillPlaceholder';\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) => {\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 maskForbiddenTypes: InputType[] = ['number', 'date', 'time'];\nexport const maskAllowedTypes: InputType[] = inputTypes.filter((type) => {\n return !maskForbiddenTypes.includes(type);\n});\nexport const maskErrorMessage = (type: InputType, allowedTypes: InputType[] = maskAllowedTypes) => {\n return `<Input />. Prop \"mask\" does not support type \"${type}\". Supported types: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}.`;\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 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 /** Меняет визуальное отображение поля на состояние «ошибка». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n error?: boolean;\n\n /** Меняет визуальное отображение поля на состояние «предупреждение». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n warning?: boolean;\n\n /** Убирает обводку поля. */\n borderless?: boolean;\n\n /** Выравнивает контент внутри поля. */\n align?: InputAlign;\n\n /** Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url`\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n mask?: Nullable<string>;\n\n /** Устанавливает символ маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n maskChar?: Nullable<string>;\n\n /** Словарь символов-регулярок для задания маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput.\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }. */\n formatChars?: Record<string, string>;\n\n /** Включает показ символов маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n alwaysShowMask?: boolean;\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 /** @deprecated Со следующей мажорной версии Input перестанет поддерживать проп `capture`. */\n capture?: boolean;\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 needsPolyfillPlaceholder: 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@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 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 needsPolyfillPlaceholder,\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 private outputMaskError() {\n warning(!(this.props.mask && this.canBeUsedWithMask), maskErrorMessage(this.getProps().type));\n }\n\n public componentDidMount() {\n this.outputMaskError();\n }\n\n public componentDidUpdate(prevProps: Readonly<InputProps>) {\n if (this.props.type !== prevProps.type || this.props.mask !== prevProps.mask) {\n this.outputMaskError();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedSelectAll();\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus() {\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() {\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() {\n return this.input;\n }\n\n /** Кратковременно визуально подсвечивает поле ввода, чтобы привлечь внимание пользователя.\n * @public\n */\n public blink() {\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) {\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 throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n globalObject.setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private get canBeUsedWithMask() {\n return maskForbiddenTypes.includes(this.getProps().type);\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 = 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 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 this.props.mask && !this.canBeUsedWithMask\n ? this.renderMaskedInput(inputProps, this.props.mask)\n : 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 mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\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: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused && !warning && !error,\n [styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\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: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [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: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\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 {this.state.needsPolyfillPlaceholder && (\n <PolyfillPlaceholder\n isMaskVisible={this.isMaskVisible}\n value={value}\n defaultValue={this.props.defaultValue}\n align={align}\n >\n {placeholder}\n </PolyfillPlaceholder>\n )}\n </InputLayout>\n );\n };\n\n private renderMaskedInput(inputProps: React.InputHTMLAttributes<HTMLInputElement>, mask: string) {\n return (\n <InternalMaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getSizeClassName() {\n switch (this.size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InternalMaskedInput | InputElement | null) => {\n if (element instanceof InternalMaskedInput || (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 (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\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 (clearCrossShowed !== this.state.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 && !isIE11 ? this.selectAll() : this.delaySelectAll();\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 handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(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"],"mappings":"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","ignoreList":[]}
|
|
@@ -274,7 +274,7 @@ export var Input = rootNode(_class = withSize(_class = (_Input = /*#__PURE__*/fu
|
|
|
274
274
|
focused: _this.state.focused,
|
|
275
275
|
hovered: _this.state.hovered
|
|
276
276
|
});
|
|
277
|
-
if (_this.state.clearCrossShowed
|
|
277
|
+
if (clearCrossShowed !== _this.state.clearCrossShowed) {
|
|
278
278
|
_this.setState({
|
|
279
279
|
clearCrossShowed: clearCrossShowed
|
|
280
280
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["invariant","React","createRef","warning","globalObject","isEdge","isIE11","isKeyBackspace","isKeyDelete","someKeys","needsPolyfillPlaceholder","InternalMaskedInput","ThemeContext","CommonWrapper","cx","getRootNode","rootNode","createPropsGetter","FocusControlWrapper","ClearCrossIcon","catchUnreachableWarning","blink","withSize","styles","InputLayout","PolyfillPlaceholder","inputTypes","selectionAllowedTypes","selectionErrorMessage","type","allowedTypes","map","i","join","maskForbiddenTypes","maskAllowedTypes","filter","includes","maskErrorMessage","calculateClearCrossShowedState","_ref","showClearIcon","notEmptyValue","focused","hovered","Boolean","InputDataTids","root","clearCross","Input","_class","_Input","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","selectAllId","input","labelRef","getClearCrossShowed","_ref2","_this$input","hasInitialValue","props","disabled","value","state","clearCrossShowed","defaultValue","selectAll","_selectAll","delaySelectAll","_globalObject$request","requestAnimationFrame","setSelectionRange","cancelDelayedSelectAll","cancelAnimationFrame","getInput","inputProps","element","cloneElement","mask","canBeUsedWithMask","renderMaskedInput","createElement","renderMain","_cx","_cx2","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","role","leftIcon","rightIcon","borderless","align","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","onUnexpectedInput","prefix","suffix","formatChars","corners","ariaDescribedby","ariaControls","ariaLabel","rest","_objectWithoutPropertiesLoose","_excluded","labelProps","className","theme","getSizeClassName","focus","hovering","focusFallback","warningFallback","errorFallback","style","_extends","handleMouseEnter","handleMouseLeave","ref","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","refInput","isMaskVisible","undefined","onBlurWhenDisabled","resetFocus","getRightIcon","onClick","handleClearInput","context","setState","event","fieldIsEmpty","target","e","isDeleteKey","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","_getRootNode","contains","relatedTarget","_inheritsLoose","_proto","prototype","outputMaskError","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","blur","getNode","el","current","blinkColor","inputBlinkColor","start","end","_globalObject$documen","_this$props$value","_this2","Error","document","activeElement","setTimeout","_this2$input","_this$input2","render","_this3","Consumer","rootNodeRef","setRootNode","_cx3","_cx4","_cx5","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","_createClass","key","get","_this$props","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Input.tsx"],"sourcesContent":["// TODO: Enable this rule in functional components.\nimport invariant from 'invariant';\nimport type { AriaAttributes, ClassAttributes, HTMLAttributes, ReactElement } from 'react';\nimport React, { createRef } from 'react';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport type { Nullable, Override } from '../../typings/utility-types';\nimport { InternalMaskedInput } from '../../internal/InternalMaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\nimport { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon';\nimport { catchUnreachableWarning } from '../../lib/typeGuards';\nimport { blink } from '../../lib/blink';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport type { InputElement, InputElementProps } from './Input.typings';\nimport { styles } from './Input.styles';\nimport { InputLayout } from './InputLayout/InputLayout';\nimport { PolyfillPlaceholder } from './InputLayout/PolyfillPlaceholder';\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) => {\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 maskForbiddenTypes: InputType[] = ['number', 'date', 'time'];\nexport const maskAllowedTypes: InputType[] = inputTypes.filter((type) => {\n return !maskForbiddenTypes.includes(type);\n});\nexport const maskErrorMessage = (type: InputType, allowedTypes: InputType[] = maskAllowedTypes) => {\n return `<Input />. Prop \"mask\" does not support type \"${type}\". Supported types: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}.`;\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 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 /** Меняет визуальное отображение поля на состояние «ошибка». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n error?: boolean;\n\n /** Меняет визуальное отображение поля на состояние «предупреждение». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n warning?: boolean;\n\n /** Убирает обводку поля. */\n borderless?: boolean;\n\n /** Выравнивает контент внутри поля. */\n align?: InputAlign;\n\n /** Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url`\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n mask?: Nullable<string>;\n\n /** Устанавливает символ маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n maskChar?: Nullable<string>;\n\n /** Словарь символов-регулярок для задания маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput.\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }. */\n formatChars?: Record<string, string>;\n\n /** Включает показ символов маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n alwaysShowMask?: boolean;\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 /** @deprecated Со следующей мажорной версии Input перестанет поддерживать проп `capture`. */\n capture?: boolean;\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 needsPolyfillPlaceholder: 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@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 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 needsPolyfillPlaceholder,\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 private outputMaskError() {\n warning(!(this.props.mask && this.canBeUsedWithMask), maskErrorMessage(this.getProps().type));\n }\n\n public componentDidMount() {\n this.outputMaskError();\n }\n\n public componentDidUpdate(prevProps: Readonly<InputProps>) {\n if (this.props.type !== prevProps.type || this.props.mask !== prevProps.mask) {\n this.outputMaskError();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedSelectAll();\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus() {\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() {\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() {\n return this.input;\n }\n\n /** Кратковременно визуально подсвечивает поле ввода, чтобы привлечь внимание пользователя.\n * @public\n */\n public blink() {\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) {\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 throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n globalObject.setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private get canBeUsedWithMask() {\n return maskForbiddenTypes.includes(this.getProps().type);\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 = 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 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 this.props.mask && !this.canBeUsedWithMask\n ? this.renderMaskedInput(inputProps, this.props.mask)\n : 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 mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\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: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused && !warning && !error,\n [styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\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: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [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: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\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 {this.state.needsPolyfillPlaceholder && (\n <PolyfillPlaceholder\n isMaskVisible={this.isMaskVisible}\n value={value}\n defaultValue={this.props.defaultValue}\n align={align}\n >\n {placeholder}\n </PolyfillPlaceholder>\n )}\n </InputLayout>\n );\n };\n\n private renderMaskedInput(inputProps: React.InputHTMLAttributes<HTMLInputElement>, mask: string) {\n return (\n <InternalMaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getSizeClassName() {\n switch (this.size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InternalMaskedInput | InputElement | null) => {\n if (element instanceof InternalMaskedInput || (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 (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\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 && !isIE11 ? this.selectAll() : this.delaySelectAll();\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 handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["invariant","React","createRef","warning","globalObject","isEdge","isIE11","isKeyBackspace","isKeyDelete","someKeys","needsPolyfillPlaceholder","InternalMaskedInput","ThemeContext","CommonWrapper","cx","getRootNode","rootNode","createPropsGetter","FocusControlWrapper","ClearCrossIcon","catchUnreachableWarning","blink","withSize","styles","InputLayout","PolyfillPlaceholder","inputTypes","selectionAllowedTypes","selectionErrorMessage","type","allowedTypes","map","i","join","maskForbiddenTypes","maskAllowedTypes","filter","includes","maskErrorMessage","calculateClearCrossShowedState","_ref","showClearIcon","notEmptyValue","focused","hovered","Boolean","InputDataTids","root","clearCross","Input","_class","_Input","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","selectAllId","input","labelRef","getClearCrossShowed","_ref2","_this$input","hasInitialValue","props","disabled","value","state","clearCrossShowed","defaultValue","selectAll","_selectAll","delaySelectAll","_globalObject$request","requestAnimationFrame","setSelectionRange","cancelDelayedSelectAll","cancelAnimationFrame","getInput","inputProps","element","cloneElement","mask","canBeUsedWithMask","renderMaskedInput","createElement","renderMain","_cx","_cx2","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","role","leftIcon","rightIcon","borderless","align","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","onUnexpectedInput","prefix","suffix","formatChars","corners","ariaDescribedby","ariaControls","ariaLabel","rest","_objectWithoutPropertiesLoose","_excluded","labelProps","className","theme","getSizeClassName","focus","hovering","focusFallback","warningFallback","errorFallback","style","_extends","handleMouseEnter","handleMouseLeave","ref","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","refInput","isMaskVisible","undefined","onBlurWhenDisabled","resetFocus","getRightIcon","onClick","handleClearInput","context","setState","event","fieldIsEmpty","target","e","isDeleteKey","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","_getRootNode","contains","relatedTarget","_inheritsLoose","_proto","prototype","outputMaskError","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","blur","getNode","el","current","blinkColor","inputBlinkColor","start","end","_globalObject$documen","_this$props$value","_this2","Error","document","activeElement","setTimeout","_this2$input","_this$input2","render","_this3","Consumer","rootNodeRef","setRootNode","_cx3","_cx4","_cx5","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","_createClass","key","get","_this$props","Component","__KONTUR_REACT_UI__","displayName"],"sources":["Input.tsx"],"sourcesContent":["// TODO: Enable this rule in functional components.\nimport invariant from 'invariant';\nimport type { AriaAttributes, ClassAttributes, HTMLAttributes, ReactElement } from 'react';\nimport React, { createRef } from 'react';\nimport warning from 'warning';\nimport { globalObject } from '@skbkontur/global-object';\n\nimport { isEdge, isIE11 } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport type { Nullable, Override } from '../../typings/utility-types';\nimport { InternalMaskedInput } from '../../internal/InternalMaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport type { Theme } from '../../lib/theming/Theme';\nimport type { CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { CommonWrapper } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport type { TGetRootNode, TSetRootNode } from '../../lib/rootNode';\nimport { getRootNode, rootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport type { SizeProp } from '../../lib/types/props';\nimport { FocusControlWrapper } from '../../internal/FocusControlWrapper';\nimport { ClearCrossIcon } from '../../internal/ClearCrossIcon/ClearCrossIcon';\nimport { catchUnreachableWarning } from '../../lib/typeGuards';\nimport { blink } from '../../lib/blink';\nimport { withSize } from '../../lib/size/SizeDecorator';\n\nimport type { InputElement, InputElementProps } from './Input.typings';\nimport { styles } from './Input.styles';\nimport { InputLayout } from './InputLayout/InputLayout';\nimport { PolyfillPlaceholder } from './InputLayout/PolyfillPlaceholder';\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) => {\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 maskForbiddenTypes: InputType[] = ['number', 'date', 'time'];\nexport const maskAllowedTypes: InputType[] = inputTypes.filter((type) => {\n return !maskForbiddenTypes.includes(type);\n});\nexport const maskErrorMessage = (type: InputType, allowedTypes: InputType[] = maskAllowedTypes) => {\n return `<Input />. Prop \"mask\" does not support type \"${type}\". Supported types: ${allowedTypes\n .map((i) => `\"${i}\"`)\n .join(', ')}.`;\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 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 /** Меняет визуальное отображение поля на состояние «ошибка». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n error?: boolean;\n\n /** Меняет визуальное отображение поля на состояние «предупреждение». Может быть полезен при разработке собственной валидации, если вы не используете пакет [React UI Validations](https://tech.skbkontur.ru/kontur-ui/?path=/docs/react-ui-validations_displaying-getting-started--docs). */\n warning?: boolean;\n\n /** Убирает обводку поля. */\n borderless?: boolean;\n\n /** Выравнивает контент внутри поля. */\n align?: InputAlign;\n\n /** Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url`\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n mask?: Nullable<string>;\n\n /** Устанавливает символ маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n maskChar?: Nullable<string>;\n\n /** Словарь символов-регулярок для задания маски\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput.\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }. */\n formatChars?: Record<string, string>;\n\n /** Включает показ символов маски.\n * @deprecated Со следующей мажорной версии Input перестанет поддерживать маску. Используйте MaskedInput. */\n alwaysShowMask?: boolean;\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 /** @deprecated Со следующей мажорной версии Input перестанет поддерживать проп `capture`. */\n capture?: boolean;\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 needsPolyfillPlaceholder: 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@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 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 needsPolyfillPlaceholder,\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 private outputMaskError() {\n warning(!(this.props.mask && this.canBeUsedWithMask), maskErrorMessage(this.getProps().type));\n }\n\n public componentDidMount() {\n this.outputMaskError();\n }\n\n public componentDidUpdate(prevProps: Readonly<InputProps>) {\n if (this.props.type !== prevProps.type || this.props.mask !== prevProps.mask) {\n this.outputMaskError();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedSelectAll();\n }\n\n /** Программно устанавливает фокус на поле.\n * Появляется фокусная рамка, элемент получает клавиатурные события и воспринимается как текущий элемент для чтения скринридерами.\n * @public\n */\n public focus() {\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() {\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() {\n return this.input;\n }\n\n /** Кратковременно визуально подсвечивает поле ввода, чтобы привлечь внимание пользователя.\n * @public\n */\n public blink() {\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) {\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 throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (globalObject.document?.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n globalObject.setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private get canBeUsedWithMask() {\n return maskForbiddenTypes.includes(this.getProps().type);\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 = 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 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 this.props.mask && !this.canBeUsedWithMask\n ? this.renderMaskedInput(inputProps, this.props.mask)\n : 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 mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\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: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused && !warning && !error,\n [styles.hovering(this.theme)]: !focused && !disabled && !warning && !error && !borderless,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\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: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [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: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\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 {this.state.needsPolyfillPlaceholder && (\n <PolyfillPlaceholder\n isMaskVisible={this.isMaskVisible}\n value={value}\n defaultValue={this.props.defaultValue}\n align={align}\n >\n {placeholder}\n </PolyfillPlaceholder>\n )}\n </InputLayout>\n );\n };\n\n private renderMaskedInput(inputProps: React.InputHTMLAttributes<HTMLInputElement>, mask: string) {\n return (\n <InternalMaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getSizeClassName() {\n switch (this.size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | InternalMaskedInput | InputElement | null) => {\n if (element instanceof InternalMaskedInput || (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 (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\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 (clearCrossShowed !== this.state.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 && !isIE11 ? this.selectAll() : this.delaySelectAll();\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 handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(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"],"mappings":"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","ignoreList":[]}
|