@salutejs/plasma-new-hope 0.134.0-canary.1352.10591857563.0 → 0.134.0-canary.1352.10609199302.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Autocomplete/Autocomplete.css +9 -8
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +9 -8
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +9 -8
- package/cjs/components/DatePicker/SingleDate/SingleDate.css +9 -8
- package/cjs/components/Range/Range.css +9 -8
- package/cjs/components/Slider/Slider.css +9 -8
- package/cjs/components/Slider/components/Double/Double.css +9 -8
- package/cjs/components/Switch/Switch.tokens.js +1 -1
- package/cjs/components/Switch/Switch.tokens.js.map +1 -1
- package/cjs/components/Switch/_size/base.js +1 -1
- package/cjs/components/Switch/_size/base.js.map +1 -1
- package/cjs/components/Switch/_size/{base_9sphki.css → base_1sjw39x.css} +1 -1
- package/cjs/components/Switch/_view/base.js +1 -1
- package/cjs/components/Switch/_view/base.js.map +1 -1
- package/cjs/components/Switch/_view/base_d10e49.css +1 -0
- package/cjs/components/TextArea/TextArea.js +18 -11
- package/cjs/components/TextArea/TextArea.js.map +1 -1
- package/cjs/components/TextArea/TextArea.styles.js +42 -36
- package/cjs/components/TextArea/TextArea.styles.js.map +1 -1
- package/cjs/components/TextArea/TextArea.styles_av6xxy.css +11 -0
- package/cjs/components/TextField/TextField.js +16 -9
- package/cjs/components/TextField/TextField.js.map +1 -1
- package/cjs/components/TextField/TextField.styles.js +8 -2
- package/cjs/components/TextField/TextField.styles.js.map +1 -1
- package/{es/components/TextField/TextField.styles_x7rboj.css → cjs/components/TextField/TextField.styles_1lfge6n.css} +3 -2
- package/cjs/index.css +22 -20
- package/emotion/cjs/components/Switch/Switch.tokens.js +1 -1
- package/emotion/cjs/components/Switch/_size/base.js +1 -1
- package/emotion/cjs/components/Switch/_view/base.js +1 -1
- package/emotion/cjs/components/TextArea/TextArea.js +19 -12
- package/emotion/cjs/components/TextArea/TextArea.styles.js +16 -12
- package/emotion/cjs/components/TextField/TextField.js +17 -10
- package/emotion/cjs/components/TextField/TextField.styles.js +30 -26
- package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +4 -4
- package/emotion/cjs/examples/plasma_b2c/components/TextArea/TextArea.config.js +12 -9
- package/emotion/cjs/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +9 -0
- package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +15 -12
- package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +9 -1
- package/emotion/cjs/examples/plasma_web/components/Switch/Switch.config.js +4 -4
- package/emotion/cjs/examples/plasma_web/components/TextArea/TextArea.stories.tsx +10 -45
- package/emotion/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +10 -43
- package/emotion/es/components/Switch/Switch.tokens.js +1 -1
- package/emotion/es/components/Switch/_size/base.js +1 -1
- package/emotion/es/components/Switch/_view/base.js +1 -1
- package/emotion/es/components/TextArea/TextArea.js +20 -13
- package/emotion/es/components/TextArea/TextArea.styles.js +15 -11
- package/emotion/es/components/TextField/TextField.js +18 -11
- package/emotion/es/components/TextField/TextField.styles.js +29 -25
- package/emotion/es/examples/plasma_b2c/components/Switch/Switch.config.js +4 -4
- package/emotion/es/examples/plasma_b2c/components/TextArea/TextArea.config.js +12 -9
- package/emotion/es/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +9 -0
- package/emotion/es/examples/plasma_b2c/components/TextField/TextField.config.js +15 -12
- package/emotion/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +9 -1
- package/emotion/es/examples/plasma_web/components/Switch/Switch.config.js +4 -4
- package/emotion/es/examples/plasma_web/components/TextArea/TextArea.stories.tsx +10 -45
- package/emotion/es/examples/plasma_web/components/TextField/TextField.stories.tsx +10 -43
- package/es/components/Autocomplete/Autocomplete.css +9 -8
- package/es/components/DatePicker/RangeDate/RangeDate.css +9 -8
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +9 -8
- package/es/components/DatePicker/SingleDate/SingleDate.css +9 -8
- package/es/components/Range/Range.css +9 -8
- package/es/components/Slider/Slider.css +9 -8
- package/es/components/Slider/components/Double/Double.css +9 -8
- package/es/components/Switch/Switch.tokens.js +1 -1
- package/es/components/Switch/Switch.tokens.js.map +1 -1
- package/es/components/Switch/_size/base.js +1 -1
- package/es/components/Switch/_size/base.js.map +1 -1
- package/es/components/Switch/_size/{base_9sphki.css → base_1sjw39x.css} +1 -1
- package/es/components/Switch/_view/base.js +1 -1
- package/es/components/Switch/_view/base.js.map +1 -1
- package/es/components/Switch/_view/base_d10e49.css +1 -0
- package/es/components/TextArea/TextArea.js +19 -12
- package/es/components/TextArea/TextArea.js.map +1 -1
- package/es/components/TextArea/TextArea.styles.js +42 -37
- package/es/components/TextArea/TextArea.styles.js.map +1 -1
- package/es/components/TextArea/TextArea.styles_av6xxy.css +11 -0
- package/es/components/TextField/TextField.js +17 -10
- package/es/components/TextField/TextField.js.map +1 -1
- package/es/components/TextField/TextField.styles.js +8 -3
- package/es/components/TextField/TextField.styles.js.map +1 -1
- package/{cjs/components/TextField/TextField.styles_x7rboj.css → es/components/TextField/TextField.styles_1lfge6n.css} +3 -2
- package/es/index.css +22 -20
- package/package.json +4 -4
- package/styled-components/cjs/components/Switch/Switch.tokens.js +1 -1
- package/styled-components/cjs/components/Switch/_size/base.js +1 -1
- package/styled-components/cjs/components/Switch/_view/base.js +1 -1
- package/styled-components/cjs/components/TextArea/TextArea.js +18 -11
- package/styled-components/cjs/components/TextArea/TextArea.styles.js +14 -11
- package/styled-components/cjs/components/TextField/TextField.js +16 -9
- package/styled-components/cjs/components/TextField/TextField.styles.js +6 -3
- package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/TextArea/TextArea.config.js +7 -4
- package/styled-components/cjs/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +9 -0
- package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.config.js +7 -4
- package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +9 -1
- package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.config.js +1 -1
- package/styled-components/cjs/examples/plasma_web/components/TextArea/TextArea.stories.tsx +10 -45
- package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +10 -43
- package/styled-components/es/components/Switch/Switch.tokens.js +1 -1
- package/styled-components/es/components/Switch/_size/base.js +1 -1
- package/styled-components/es/components/Switch/_view/base.js +1 -1
- package/styled-components/es/components/TextArea/TextArea.js +19 -12
- package/styled-components/es/components/TextArea/TextArea.styles.js +13 -10
- package/styled-components/es/components/TextField/TextField.js +17 -10
- package/styled-components/es/components/TextField/TextField.styles.js +5 -2
- package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/TextArea/TextArea.config.js +7 -4
- package/styled-components/es/examples/plasma_b2c/components/TextArea/TextArea.stories.tsx +9 -0
- package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.config.js +7 -4
- package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +9 -1
- package/styled-components/es/examples/plasma_web/components/Switch/Switch.config.js +1 -1
- package/styled-components/es/examples/plasma_web/components/TextArea/TextArea.stories.tsx +10 -45
- package/styled-components/es/examples/plasma_web/components/TextField/TextField.stories.tsx +10 -43
- package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +4 -2
- package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +4 -2
- package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
- package/types/components/Range/Range.styles.d.ts +4 -2
- package/types/components/Range/Range.styles.d.ts.map +1 -1
- package/types/components/Slider/components/Double/Double.styles.d.ts +4 -2
- package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
- package/types/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/components/TextArea/TextArea.styles.d.ts +1 -0
- package/types/components/TextArea/TextArea.styles.d.ts.map +1 -1
- package/types/components/TextArea/TextArea.types.d.ts +6 -2
- package/types/components/TextArea/TextArea.types.d.ts.map +1 -1
- package/types/components/TextField/TextField.d.ts.map +1 -1
- package/types/components/TextField/TextField.styles.d.ts +1 -0
- package/types/components/TextField/TextField.styles.d.ts.map +1 -1
- package/types/components/TextField/TextField.types.d.ts +6 -2
- package/types/components/TextField/TextField.types.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextArea/TextArea.config.d.ts +3 -0
- package/types/examples/plasma_b2c/components/TextArea/TextArea.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts +3 -0
- package/types/examples/plasma_b2c/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts +3 -0
- package/types/examples/plasma_b2c/components/TextField/TextField.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +7 -2
- package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Switch/Switch.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/TextField/TextField.d.ts +4 -2
- package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
- package/types/examples/sds_engineer/components/TextField/TextField.d.ts +4 -2
- package/types/examples/sds_engineer/components/TextField/TextField.d.ts.map +1 -1
- package/cjs/components/Switch/_view/base_b0jyco.css +0 -1
- package/cjs/components/TextArea/TextArea.styles_wt773g.css +0 -10
- package/es/components/Switch/_view/base_b0jyco.css +0 -1
- package/es/components/TextArea/TextArea.styles_wt773g.css +0 -10
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as requiredCSS } from './variations/_required/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, autoResize, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !autoResize &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && (rows || autoResize)) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required,\n requiredAlign,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = innerRef && 'current' in innerRef ? innerRef : createRef<HTMLTextAreaElement>();\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n const placeLabel = labelPlacement === 'inner' && label && size !== 'xs' ? label : placeholder;\n\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const requiredAlignClass = requiredAlign === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize, outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n ...(rows ? { rows } : { autoResize }),\n },\n focused,\n );\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n required={required}\n style={{ width: helperWidth, ...style }}\n className={className}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && <StyledIndicator className={cx('placement-outer', requiredAlignClass)} />}\n {label}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx('placement-inner', requiredAlignClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={styledTextArea}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={outerRef}\n disabled={disabled}\n height={autoResize ? minAuto : height}\n width={width}\n placeholder={placeLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeLabel}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n required: {\n css: requiredCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","autoResize","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","required","requiredAlign","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","hasHelper","Boolean","overriddenView","textareaHelperId","applyCustomWidth","placeLabel","hasOuterLabel","requiredAlignClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","dynamicLabelClasses","_objectSpread","React","createElement","StyledLabel","StyledIndicator","cx","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","requiredCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"TextArea.js","sources":["../../../src/components/TextArea/TextArea.tsx"],"sourcesContent":["import React, { forwardRef, useState, createRef, useCallback } from 'react';\nimport { css } from '@linaria/core';\nimport { useResizeObserver } from '@salutejs/plasma-core';\n\nimport { cx } from '../../utils';\nimport type { RootProps } from '../../engines/types';\n\nimport { applyDynamicLabel } from './mixins';\nimport { useAutoResize, ROOT_FONT_SIZE } from './hooks';\nimport {\n StyledContent,\n StyledHelpers,\n StyledLeftHelper,\n StyledRightHelper,\n StyledLabel,\n StyledPlaceholder,\n StyledTextArea,\n StyledTextAreaWrapper,\n StyledContainer,\n StyledIndicator,\n StyledOptionalText,\n} from './TextArea.styles';\nimport { classes } from './TextArea.tokens';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as requiredCSS } from './variations/_required/base';\nimport type { TextAreaProps } from './TextArea.types';\n\nconst {\n innerPlaceholderUp,\n focusedOuterPlaceholderColor,\n hidePlaceHolder,\n styledContainer,\n styledTextArea,\n styledTextAreaWrapper,\n styledPlaceholder,\n styledHelpers,\n} = classes;\n\nconst optionalText = 'optional';\n\nconst base = css`\n ${applyDynamicLabel};\n\n position: relative;\n box-sizing: border-box;\n`;\n\n// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c\nconst fallbackStatusMap = {\n '': 'primary',\n success: 'positive',\n warning: 'warning',\n error: 'negative',\n};\n\n// TODO: Перенести этот метод в файл applyDynamicLabel.ts\nexport const getDynamicLabelClasses = (props: TextAreaProps, focused: boolean) => {\n const { readOnly, label, labelPlacement, autoResize, rows, value, size } = props;\n\n // Добавить класс отвечающий за изменение цвета плейсхолдера при фокусе\n const withFocusedOuterUpPlaceholder =\n !readOnly && focused && (!label || labelPlacement === 'outer') ? focusedOuterPlaceholderColor : undefined;\n\n // Добавить класс отвечающий за поднятие и уменьшение плейсхолдера\n const withInnerPlaceholderUp =\n labelPlacement === 'inner' &&\n label &&\n !autoResize &&\n !rows &&\n size !== 'xs' &&\n ((!readOnly && (value || focused)) || (readOnly && value))\n ? innerPlaceholderUp\n : undefined;\n\n // Добавить класс отвечающий за скрытие плейсхолдера\n const withHidePlaceholder =\n (value && !label) ||\n (labelPlacement === 'inner' && ((focused && !readOnly) || value) && label && (rows || autoResize)) ||\n (labelPlacement === 'outer' && value) ||\n (labelPlacement === 'inner' && size === 'xs' && value)\n ? hidePlaceHolder\n : undefined;\n\n return [withFocusedOuterUpPlaceholder, withInnerPlaceholderUp, withHidePlaceholder];\n};\n\nexport const textAreaRoot = (Root: RootProps<HTMLTextAreaElement, TextAreaProps>) =>\n forwardRef<HTMLTextAreaElement, TextAreaProps>((props, innerRef) => {\n const {\n helperText,\n status,\n resize,\n rightHelper,\n leftHelper,\n contentRight,\n autoResize = false,\n minAuto = 0,\n maxAuto,\n label,\n labelPlacement = 'inner',\n placeholder,\n defaultValue,\n height,\n width,\n value,\n disabled,\n required,\n requiredPlacement = 'right',\n optional,\n size,\n view,\n id,\n style,\n className,\n readOnly,\n rows,\n cols,\n onChange,\n ...rest\n } = props;\n\n const [helperWidth, setHelperWidth] = useState<string>(width ? `${width}rem` : '100%');\n const [focused, setFocused] = useState(false);\n const [uncontrolledValue, setUncontrolledValue] = useState<string | undefined>();\n\n const outerRef = innerRef && 'current' in innerRef ? innerRef : createRef<HTMLTextAreaElement>();\n const hasHelper = Boolean(leftHelper || rightHelper || helperText);\n const hasOuterLabel = Boolean(label && labelPlacement === 'outer');\n const overriddenView = status !== undefined ? fallbackStatusMap[status] : view;\n const textareaHelperId = id ? `${id}-helper` : undefined;\n const applyCustomWidth = resize !== 'horizontal' && resize !== 'both' && !cols;\n let placeholderLabel = labelPlacement === 'inner' && label && size !== 'xs' ? label : placeholder;\n\n if (optional && !hasOuterLabel) {\n placeholderLabel = placeholderLabel ? `${placeholderLabel}\\xa0${optionalText}` : optionalText;\n }\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n\n useResizeObserver(outerRef, (currentElement) => {\n const { width: inlineWidth } = currentElement.style;\n\n if (inlineWidth || cols) {\n const { width: elementWidth } = currentElement.getBoundingClientRect();\n setHelperWidth(`${elementWidth / ROOT_FONT_SIZE}rem`);\n }\n });\n\n useAutoResize(autoResize, outerRef, value, minAuto, maxAuto);\n\n const onFocusHandler = useCallback(() => {\n setFocused(true);\n }, []);\n\n const onBlurHandler = useCallback(() => {\n setFocused(false);\n }, []);\n\n const onChangeHandler = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n // INFO: Для крайне редких кейсов, когда value снаружи не контролируется\n if (value === undefined) {\n setUncontrolledValue(event?.target.value);\n }\n\n onChange?.(event);\n },\n [value, onChange],\n );\n\n const dynamicLabelClasses = getDynamicLabelClasses(\n {\n size,\n readOnly,\n label,\n labelPlacement,\n value: value || uncontrolledValue || defaultValue,\n ...(rows ? { rows } : { autoResize }),\n },\n focused,\n );\n\n const optionalTextNode = optional ? (\n <StyledOptionalText>\n {Boolean(label) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={overriddenView}\n size={size}\n disabled={disabled}\n readOnly={readOnly}\n required={required}\n style={{ width: helperWidth, ...style }}\n className={className}\n >\n {hasOuterLabel && (\n <StyledLabel>\n {required && <StyledIndicator className={cx('placement-outer', requiredPlacementClass)} />}\n {label}\n {optionalTextNode}\n </StyledLabel>\n )}\n <StyledContainer\n className={cx(styledContainer, ...dynamicLabelClasses)}\n width={helperWidth}\n onFocus={onFocusHandler}\n onBlur={onBlurHandler}\n >\n {required && !hasOuterLabel && (\n <StyledIndicator className={cx('placement-inner', requiredPlacementClass)} />\n )}\n {contentRight && <StyledContent>{contentRight}</StyledContent>}\n <StyledTextAreaWrapper className={styledTextAreaWrapper} hasHelper={hasHelper}>\n <StyledTextArea\n className={styledTextArea}\n id={id}\n hasContentRight={Boolean(contentRight)}\n hasHelper={hasHelper}\n applyCustomWidth={applyCustomWidth}\n ref={outerRef}\n disabled={disabled}\n height={autoResize ? minAuto : height}\n width={width}\n placeholder={placeholderLabel}\n aria-describedby={textareaHelperId}\n value={value}\n readOnly={readOnly}\n rows={rows}\n cols={cols}\n resize={resize}\n defaultValue={defaultValue}\n onChange={onChangeHandler}\n {...rest}\n />\n </StyledTextAreaWrapper>\n {hasHelper && (\n <StyledHelpers className={styledHelpers} id={textareaHelperId}>\n {(leftHelper || helperText) && (\n <StyledLeftHelper>{leftHelper || helperText}</StyledLeftHelper>\n )}\n {rightHelper && <StyledRightHelper>{rightHelper}</StyledRightHelper>}\n </StyledHelpers>\n )}\n {placeholderLabel && (\n <StyledPlaceholder\n hasContentRight={Boolean(contentRight)}\n className={styledPlaceholder}\n htmlFor={id}\n >\n {placeholderLabel}\n </StyledPlaceholder>\n )}\n </StyledContainer>\n </Root>\n );\n });\n\nexport const textAreaConfig = {\n name: 'TextArea',\n tag: 'div',\n layout: textAreaRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n required: {\n css: requiredCSS,\n attrs: true,\n },\n readOnly: {\n attrs: true,\n },\n },\n defaults: {\n size: 'm',\n view: 'primary',\n },\n};\n"],"names":["innerPlaceholderUp","classes","focusedOuterPlaceholderColor","hidePlaceHolder","styledContainer","styledTextArea","styledTextAreaWrapper","styledPlaceholder","styledHelpers","optionalText","base","fallbackStatusMap","success","warning","error","getDynamicLabelClasses","props","focused","readOnly","label","labelPlacement","autoResize","rows","value","size","withFocusedOuterUpPlaceholder","undefined","withInnerPlaceholderUp","withHidePlaceholder","textAreaRoot","Root","forwardRef","innerRef","helperText","status","resize","rightHelper","leftHelper","contentRight","_props$autoResize","_props$minAuto","minAuto","maxAuto","_props$labelPlacement","placeholder","defaultValue","height","width","disabled","required","_props$requiredPlacem","requiredPlacement","optional","view","id","style","className","cols","onChange","rest","_excluded","_useState","useState","concat","_useState2","_slicedToArray","helperWidth","setHelperWidth","_useState3","_useState4","setFocused","_useState5","_useState6","uncontrolledValue","setUncontrolledValue","outerRef","createRef","hasHelper","Boolean","hasOuterLabel","overriddenView","textareaHelperId","applyCustomWidth","placeholderLabel","requiredPlacementClass","useResizeObserver","currentElement","inlineWidth","_currentElement$getBo","getBoundingClientRect","elementWidth","ROOT_FONT_SIZE","useAutoResize","onFocusHandler","useCallback","onBlurHandler","onChangeHandler","event","target","dynamicLabelClasses","_objectSpread","optionalTextNode","React","createElement","StyledOptionalText","StyledLabel","StyledIndicator","cx","StyledContainer","apply","_toConsumableArray","onFocus","onBlur","StyledContent","StyledTextAreaWrapper","StyledTextArea","_extends","hasContentRight","ref","StyledHelpers","StyledLeftHelper","StyledRightHelper","StyledPlaceholder","htmlFor","textAreaConfig","name","tag","layout","variations","css","sizeCSS","viewCSS","disabledCSS","attrs","requiredCSS","defaults"],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import './TextArea.
|
1
|
+
import './TextArea.styles_av6xxy.css';
|
2
2
|
'use strict';
|
3
3
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
@@ -11,13 +11,18 @@ var StyledLabel = /*#__PURE__*/react.styled('div')({
|
|
11
11
|
"class": "s1luq7vd",
|
12
12
|
propsAsIs: false
|
13
13
|
});
|
14
|
-
var
|
14
|
+
var StyledOptionalText = /*#__PURE__*/react.styled('span')({
|
15
|
+
name: "StyledOptionalText",
|
16
|
+
"class": "s1r1fvk8",
|
17
|
+
propsAsIs: false
|
18
|
+
});
|
19
|
+
var _exp11 = function _exp11() {
|
15
20
|
return function (_ref) {
|
16
21
|
var hasHelper = _ref.hasHelper;
|
17
22
|
return hasHelper ? "var(".concat(TextArea_tokens.tokens.inputPaddingBottomWithHelpers, ")") : "var(".concat(TextArea_tokens.tokens.inputPaddingBottom, ")");
|
18
23
|
};
|
19
24
|
};
|
20
|
-
var
|
25
|
+
var _exp12 = function _exp12() {
|
21
26
|
return function (_ref2) {
|
22
27
|
var hasHelper = _ref2.hasHelper;
|
23
28
|
return hasHelper ? "var(".concat(TextArea_tokens.tokens.borderRadiusWithHelpers, ")") : "var(".concat(TextArea_tokens.tokens.borderRadius, ")");
|
@@ -25,19 +30,19 @@ var _exp11 = function _exp11() {
|
|
25
30
|
};
|
26
31
|
var StyledTextAreaWrapper = /*#__PURE__*/react.styled('div')({
|
27
32
|
name: "StyledTextAreaWrapper",
|
28
|
-
"class": "
|
33
|
+
"class": "surmvwq",
|
29
34
|
propsAsIs: false,
|
30
35
|
vars: {
|
31
|
-
"
|
32
|
-
"
|
36
|
+
"surmvwq-0": [/*#__PURE__*/_exp11()],
|
37
|
+
"surmvwq-1": [/*#__PURE__*/_exp12()]
|
33
38
|
}
|
34
39
|
});
|
35
40
|
var StyledContent = /*#__PURE__*/react.styled('div')({
|
36
41
|
name: "StyledContent",
|
37
|
-
"class": "
|
42
|
+
"class": "s18bd513",
|
38
43
|
propsAsIs: false
|
39
44
|
});
|
40
|
-
var
|
45
|
+
var _exp16 = function _exp16() {
|
41
46
|
return function (_ref3) {
|
42
47
|
var width = _ref3.width;
|
43
48
|
return width;
|
@@ -45,55 +50,55 @@ var _exp15 = function _exp15() {
|
|
45
50
|
};
|
46
51
|
var StyledContainer = /*#__PURE__*/react.styled('div')({
|
47
52
|
name: "StyledContainer",
|
48
|
-
"class": "
|
53
|
+
"class": "s7alcr2",
|
49
54
|
propsAsIs: false,
|
50
55
|
vars: {
|
51
|
-
"
|
56
|
+
"s7alcr2-0": [/*#__PURE__*/_exp16()]
|
52
57
|
}
|
53
58
|
});
|
54
|
-
var
|
59
|
+
var _exp19 = function _exp19() {
|
55
60
|
return function (_ref4) {
|
56
61
|
var resize = _ref4.resize;
|
57
62
|
return resize || 'none';
|
58
63
|
};
|
59
64
|
};
|
60
|
-
var
|
65
|
+
var _exp20 = function _exp20() {
|
61
66
|
return function (_ref5) {
|
62
67
|
var height = _ref5.height;
|
63
68
|
return !Number.isNaN(Number(height)) ? "calc(".concat(height, "rem - 0.875rem)") : height || "var(".concat(TextArea_tokens.tokens.inputHeight, ")");
|
64
69
|
};
|
65
70
|
};
|
66
|
-
var
|
71
|
+
var _exp21 = function _exp21() {
|
67
72
|
return function (_ref6) {
|
68
73
|
var width = _ref6.width;
|
69
74
|
return !Number.isNaN(Number(width)) ? "".concat(width, "rem") : width || "var(".concat(TextArea_tokens.tokens.inputWidth, ")");
|
70
75
|
};
|
71
76
|
};
|
72
|
-
var
|
77
|
+
var _exp22 = function _exp22() {
|
73
78
|
return function (_ref7) {
|
74
79
|
var rows = _ref7.rows;
|
75
80
|
return rows ? 'unset' : 'var(--plasma_private-textarea-height)';
|
76
81
|
};
|
77
82
|
};
|
78
|
-
var
|
83
|
+
var _exp23 = function _exp23() {
|
79
84
|
return function (_ref8) {
|
80
85
|
var cols = _ref8.cols;
|
81
86
|
return cols ? 'unset' : 'var(--plasma_private-textarea-width)';
|
82
87
|
};
|
83
88
|
};
|
84
|
-
var
|
89
|
+
var _exp25 = function _exp25() {
|
85
90
|
return function (_ref9) {
|
86
91
|
var applyCustomWidth = _ref9.applyCustomWidth;
|
87
92
|
return applyCustomWidth ? 'var(--plasma_private-textarea-width)' : 'auto';
|
88
93
|
};
|
89
94
|
};
|
90
|
-
var
|
95
|
+
var _exp27 = function _exp27() {
|
91
96
|
return function (_ref10) {
|
92
97
|
var hasContentRight = _ref10.hasContentRight;
|
93
98
|
return hasContentRight ? "var(".concat(TextArea_tokens.tokens.inputPaddingRightWithRightContent, ")") : "var(".concat(TextArea_tokens.tokens.inputPaddingRight, ")");
|
94
99
|
};
|
95
100
|
};
|
96
|
-
var
|
101
|
+
var _exp34 = function _exp34() {
|
97
102
|
return function (_ref11) {
|
98
103
|
var hasHelper = _ref11.hasHelper,
|
99
104
|
rows = _ref11.rows;
|
@@ -102,38 +107,38 @@ var _exp33 = function _exp33() {
|
|
102
107
|
};
|
103
108
|
var StyledTextArea = /*#__PURE__*/react.styled('textarea')({
|
104
109
|
name: "StyledTextArea",
|
105
|
-
"class": "
|
110
|
+
"class": "si9oz50",
|
106
111
|
propsAsIs: false,
|
107
112
|
vars: {
|
108
|
-
"
|
109
|
-
"
|
110
|
-
"
|
111
|
-
"
|
112
|
-
"
|
113
|
-
"
|
114
|
-
"
|
115
|
-
"
|
113
|
+
"si9oz50-0": [/*#__PURE__*/_exp19()],
|
114
|
+
"si9oz50-1": [/*#__PURE__*/_exp20()],
|
115
|
+
"si9oz50-2": [/*#__PURE__*/_exp21()],
|
116
|
+
"si9oz50-3": [/*#__PURE__*/_exp22()],
|
117
|
+
"si9oz50-4": [/*#__PURE__*/_exp23()],
|
118
|
+
"si9oz50-5": [/*#__PURE__*/_exp25()],
|
119
|
+
"si9oz50-6": [/*#__PURE__*/_exp27()],
|
120
|
+
"si9oz50-7": [/*#__PURE__*/_exp34()]
|
116
121
|
}
|
117
122
|
});
|
118
123
|
var StyledHelpers = /*#__PURE__*/react.styled('div')({
|
119
124
|
name: "StyledHelpers",
|
120
|
-
"class": "
|
125
|
+
"class": "s18tpn65",
|
121
126
|
propsAsIs: false
|
122
127
|
});
|
123
128
|
var StyledLeftHelper = /*#__PURE__*/react.styled('span')({
|
124
129
|
name: "StyledLeftHelper",
|
125
|
-
"class": "
|
130
|
+
"class": "s19sfsrt",
|
126
131
|
propsAsIs: false
|
127
132
|
});
|
128
|
-
var
|
133
|
+
var _exp57 = function _exp57() {
|
129
134
|
return StyledLeftHelper;
|
130
135
|
};
|
131
|
-
var StyledRightHelper = /*#__PURE__*/react.styled(
|
136
|
+
var StyledRightHelper = /*#__PURE__*/react.styled(_exp57())({
|
132
137
|
name: "StyledRightHelper",
|
133
|
-
"class": "
|
138
|
+
"class": "sfype23",
|
134
139
|
propsAsIs: true
|
135
140
|
});
|
136
|
-
var
|
141
|
+
var _exp62 = function _exp62() {
|
137
142
|
return function (_ref12) {
|
138
143
|
var hasContentRight = _ref12.hasContentRight;
|
139
144
|
return hasContentRight ? "var(".concat(TextArea_tokens.tokens.inputPaddingRightWithRightContent, ")") : "var(".concat(TextArea_tokens.tokens.inputPaddingRight, ")");
|
@@ -141,15 +146,15 @@ var _exp61 = function _exp61() {
|
|
141
146
|
};
|
142
147
|
var StyledPlaceholder = /*#__PURE__*/react.styled('label')({
|
143
148
|
name: "StyledPlaceholder",
|
144
|
-
"class": "
|
149
|
+
"class": "s3wsw3p",
|
145
150
|
propsAsIs: false,
|
146
151
|
vars: {
|
147
|
-
"
|
152
|
+
"s3wsw3p-0": [/*#__PURE__*/_exp62()]
|
148
153
|
}
|
149
154
|
});
|
150
155
|
var StyledIndicator = /*#__PURE__*/react.styled('div')({
|
151
156
|
name: "StyledIndicator",
|
152
|
-
"class": "
|
157
|
+
"class": "stc5t23",
|
153
158
|
propsAsIs: false
|
154
159
|
});
|
155
160
|
|
@@ -159,6 +164,7 @@ exports.StyledHelpers = StyledHelpers;
|
|
159
164
|
exports.StyledIndicator = StyledIndicator;
|
160
165
|
exports.StyledLabel = StyledLabel;
|
161
166
|
exports.StyledLeftHelper = StyledLeftHelper;
|
167
|
+
exports.StyledOptionalText = StyledOptionalText;
|
162
168
|
exports.StyledPlaceholder = StyledPlaceholder;
|
163
169
|
exports.StyledRightHelper = StyledRightHelper;
|
164
170
|
exports.StyledTextArea = StyledTextArea;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TextArea.styles.js","sources":["../../../src/components/TextArea/TextArea.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { applyEllipsis } from '../../mixins';\n\nimport { tokens } from './TextArea.tokens';\n\nexport const StyledLabel = styled.div`\n position: relative;\n display: inline-block;\n margin-bottom: var(${tokens.labelMarginBottom});\n\n font-family: var(${tokens.inputFontFamily});\n font-size: var(${tokens.inputFontSize});\n font-style: var(${tokens.inputFontStyle});\n font-weight: var(${tokens.inputFontWeight});\n letter-spacing: var(${tokens.inputLetterSpacing});\n line-height: var(${tokens.inputLineHeight});\n`;\n\nexport const StyledTextAreaWrapper = styled.div<{\n hasHelper: boolean;\n}>`\n background-color: var(${tokens.inputBackgroundColor});\n\n padding-top: var(${tokens.inputPaddingTop});\n padding-bottom: ${({ hasHelper }) =>\n hasHelper ? `var(${tokens.inputPaddingBottomWithHelpers})` : `var(${tokens.inputPaddingBottom})`};\n\n border-radius: ${({ hasHelper }) =>\n hasHelper ? `var(${tokens.borderRadiusWithHelpers})` : `var(${tokens.borderRadius})`};\n`;\n\nexport const StyledContent = styled.div`\n position: absolute;\n display: flex;\n align-items: center;\n bottom: 0;\n z-index: 1;\n\n top: var(${tokens.rightContentTop});\n right: var(${tokens.rightContentRight});\n\n height: var(${tokens.rightContentHeight});\n`;\n\nexport const StyledContainer = styled.div<{ width: string }>`\n display: inline-flex;\n flex-direction: column;\n\n width: ${({ width }) => width};\n\n position: relative;\n`;\n\nexport const StyledTextArea = styled.textarea<{\n hasHelper: boolean;\n hasContentRight: boolean;\n applyCustomWidth: boolean;\n width?: string | number;\n height?: string | number;\n resize?: string;\n}>`\n display: block;\n box-sizing: border-box;\n outline: none;\n border: none;\n -webkit-appearance: none; /* для отображение рамок на iOS */\n background-color: transparent;\n\n color: var(${tokens.inputColor});\n caret-color: var(${tokens.inputCaretColor});\n\n resize: ${({ resize }) => resize || 'none'};\n\n --plasma_private-textarea-height: ${({ height }) =>\n !Number.isNaN(Number(height)) ? `calc(${height}rem - 0.875rem)` : height || `var(${tokens.inputHeight})`};\n\n --plasma_private-textarea-width: ${({ width }) =>\n !Number.isNaN(Number(width)) ? `${width}rem` : width || `var(${tokens.inputWidth})`};\n\n --plasma_private-textarea-computed-height: ${({ rows }) =>\n rows ? 'unset' : 'var(--plasma_private-textarea-height)'};\n --plasma_private-textarea-computed-width: ${({ cols }) =>\n cols ? 'unset' : 'var(--plasma_private-textarea-width)'};\n\n height: var(--plasma_private-textarea-computed-height);\n width: var(--plasma_private-textarea-computed-width);\n\n min-width: ${({ applyCustomWidth }) => (applyCustomWidth ? 'var(--plasma_private-textarea-width)' : 'auto')};\n max-width: ${({ applyCustomWidth }) => (applyCustomWidth ? 'var(--plasma_private-textarea-width)' : 'auto')};\n\n min-height: var(${tokens.inputMinHeight});\n\n padding-right: ${({ hasContentRight }) =>\n hasContentRight ? `var(${tokens.inputPaddingRightWithRightContent})` : `var(${tokens.inputPaddingRight})`};\n padding-left: var(${tokens.inputPaddingLeft});\n padding-top: 0;\n padding-bottom: 0;\n\n /* INFO: Высчитываем высоту блока с подсказками */\n --plasma_private-textarea-helpers-computed-height: calc(\n var(${tokens.helpersPaddingTop}) + var(${tokens.helpersPaddingBottom}) + var(${tokens.helpersLineHeight})\n );\n\n --plasma_private-textarea-input-with-helpers-height: calc(\n var(--plasma_private-textarea-height) - var(--plasma_private-textarea-helpers-computed-height) +\n var(${tokens.helpersOffset})\n );\n --plasma_private-textarea-input-without-helpers-height: calc(\n var(--plasma_private-textarea-computed-height) - var(${tokens.inputPaddingBottom})\n );\n\n --plasma_private-textarea-input-actual-height: ${({ hasHelper, rows }) =>\n hasHelper && !rows\n ? 'var(--plasma_private-textarea-input-with-helpers-height)'\n : 'var(--plasma_private-textarea-input-without-helpers-height)'};\n\n height: var(--plasma_private-textarea-input-actual-height);\n\n font-family: var(${tokens.inputFontFamily});\n font-size: var(${tokens.inputFontSize});\n font-style: var(${tokens.inputFontStyle});\n font-weight: var(${tokens.inputFontWeight});\n letter-spacing: var(${tokens.inputLetterSpacing});\n line-height: var(${tokens.inputLineHeight});\n\n &::placeholder {\n opacity: 0;\n }\n\n &:read-only {\n cursor: default;\n }\n\n &:focus:not(:disabled) {\n color: var(${tokens.inputColorFocus});\n }\n`;\n\nexport const StyledHelpers = styled.div`\n box-sizing: border-box;\n display: flex;\n justify-content: space-between;\n\n transition: background-color 0.1s ease-in-out;\n\n background-color: var(${tokens.helpersBackgroundColor});\n\n padding-top: var(${tokens.helpersPaddingTop});\n padding-right: var(${tokens.helpersPaddingRight});\n padding-bottom: var(${tokens.helpersPaddingBottom});\n padding-left: var(${tokens.helpersPaddingLeft});\n\n border-bottom-left-radius: var(${tokens.borderRadius});\n border-bottom-right-radius: var(${tokens.borderRadius});\n`;\n\nexport const StyledLeftHelper = styled.span`\n ${applyEllipsis()};\n\n display: block;\n\n font-family: var(${tokens.helpersFontFamily});\n font-size: var(${tokens.helpersFontSize});\n font-style: var(${tokens.helpersFontStyle});\n font-weight: var(${tokens.helpersFontWeight});\n letter-spacing: var(${tokens.helpersLetterSpacing});\n line-height: var(${tokens.helpersLineHeight});\n\n color: var(${tokens.leftHelperColor});\n`;\n\nexport const StyledRightHelper = styled(StyledLeftHelper)`\n color: var(${tokens.rightHelperColor});\n margin-left: auto;\n`;\n\nexport const StyledPlaceholder = styled.label<{\n hasContentRight: boolean;\n}>`\n box-sizing: border-box;\n position: absolute;\n pointer-events: none;\n display: inline-flex;\n align-items: center;\n\n transition: all 0.1s ease-in-out;\n transform-origin: top left;\n\n color: var(${tokens.placeholderColor});\n\n width: 100%;\n height: auto;\n\n top: var(${tokens.inputPaddingTop});\n padding-left: var(${tokens.inputPaddingLeft});\n padding-right: ${({ hasContentRight }) =>\n hasContentRight ? `var(${tokens.inputPaddingRightWithRightContent})` : `var(${tokens.inputPaddingRight})`};\n\n font-family: var(${tokens.inputFontFamily});\n font-size: var(${tokens.inputFontSize});\n font-style: var(${tokens.inputFontStyle});\n font-weight: var(${tokens.inputFontWeight});\n letter-spacing: var(${tokens.inputLetterSpacing});\n line-height: var(${tokens.inputLineHeight});\n`;\n\nexport const StyledIndicator = styled.div`\n position: absolute;\n border-radius: 50%;\n\n background-color: var(${tokens.indicatorColor});\n\n &.placement-outer {\n width: var(${tokens.indicatorSizeOuter});\n height: var(${tokens.indicatorSizeOuter});\n inset: var(${tokens.indicatorLabelPlacementOuter});\n\n &.align-right {\n inset: var(${tokens.indicatorLabelPlacementOuterRight});\n }\n }\n\n &.placement-inner {\n width: var(${tokens.indicatorSizeInner});\n height: var(${tokens.indicatorSizeInner});\n inset: var(${tokens.indicatorLabelPlacementInner});\n\n &.align-right {\n inset: var(${tokens.indicatorLabelPlacementInnerRight});\n }\n }\n`;\n"],"names":["StyledLabel","styled","name","class","propsAsIs","_exp10","_ref","hasHelper","concat","tokens","inputPaddingBottomWithHelpers","inputPaddingBottom","_exp11","_ref2","borderRadiusWithHelpers","borderRadius","StyledTextAreaWrapper","vars","StyledContent","_exp15","_ref3","width","StyledContainer","_exp18","_ref4","resize","_exp19","_ref5","height","Number","isNaN","inputHeight","_exp20","_ref6","inputWidth","_exp21","_ref7","rows","_exp22","_ref8","cols","_exp24","_ref9","applyCustomWidth","_exp26","_ref10","hasContentRight","inputPaddingRightWithRightContent","inputPaddingRight","_exp33","_ref11","StyledTextArea","StyledHelpers","StyledLeftHelper","_exp56","StyledRightHelper","_exp61","_ref12","StyledPlaceholder","StyledIndicator"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"TextArea.styles.js","sources":["../../../src/components/TextArea/TextArea.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { applyEllipsis } from '../../mixins';\n\nimport { tokens } from './TextArea.tokens';\n\nexport const StyledLabel = styled.div`\n position: relative;\n display: inline-flex;\n margin-bottom: var(${tokens.labelMarginBottom});\n\n font-family: var(${tokens.inputFontFamily});\n font-size: var(${tokens.inputFontSize});\n font-style: var(${tokens.inputFontStyle});\n font-weight: var(${tokens.inputFontWeight});\n letter-spacing: var(${tokens.inputLetterSpacing});\n line-height: var(${tokens.inputLineHeight});\n`;\n\nexport const StyledOptionalText = styled.span`\n color: var(${tokens.placeholderColor});\n`;\n\nexport const StyledTextAreaWrapper = styled.div<{\n hasHelper: boolean;\n}>`\n background-color: var(${tokens.inputBackgroundColor});\n\n padding-top: var(${tokens.inputPaddingTop});\n padding-bottom: ${({ hasHelper }) =>\n hasHelper ? `var(${tokens.inputPaddingBottomWithHelpers})` : `var(${tokens.inputPaddingBottom})`};\n\n border-radius: ${({ hasHelper }) =>\n hasHelper ? `var(${tokens.borderRadiusWithHelpers})` : `var(${tokens.borderRadius})`};\n`;\n\nexport const StyledContent = styled.div`\n position: absolute;\n display: flex;\n align-items: center;\n bottom: 0;\n z-index: 1;\n\n top: var(${tokens.rightContentTop});\n right: var(${tokens.rightContentRight});\n\n height: var(${tokens.rightContentHeight});\n`;\n\nexport const StyledContainer = styled.div<{ width: string }>`\n display: inline-flex;\n flex-direction: column;\n\n width: ${({ width }) => width};\n\n position: relative;\n`;\n\nexport const StyledTextArea = styled.textarea<{\n hasHelper: boolean;\n hasContentRight: boolean;\n applyCustomWidth: boolean;\n width?: string | number;\n height?: string | number;\n resize?: string;\n}>`\n display: block;\n box-sizing: border-box;\n outline: none;\n border: none;\n -webkit-appearance: none; /* для отображение рамок на iOS */\n background-color: transparent;\n\n color: var(${tokens.inputColor});\n caret-color: var(${tokens.inputCaretColor});\n\n resize: ${({ resize }) => resize || 'none'};\n\n --plasma_private-textarea-height: ${({ height }) =>\n !Number.isNaN(Number(height)) ? `calc(${height}rem - 0.875rem)` : height || `var(${tokens.inputHeight})`};\n\n --plasma_private-textarea-width: ${({ width }) =>\n !Number.isNaN(Number(width)) ? `${width}rem` : width || `var(${tokens.inputWidth})`};\n\n --plasma_private-textarea-computed-height: ${({ rows }) =>\n rows ? 'unset' : 'var(--plasma_private-textarea-height)'};\n --plasma_private-textarea-computed-width: ${({ cols }) =>\n cols ? 'unset' : 'var(--plasma_private-textarea-width)'};\n\n height: var(--plasma_private-textarea-computed-height);\n width: var(--plasma_private-textarea-computed-width);\n\n min-width: ${({ applyCustomWidth }) => (applyCustomWidth ? 'var(--plasma_private-textarea-width)' : 'auto')};\n max-width: ${({ applyCustomWidth }) => (applyCustomWidth ? 'var(--plasma_private-textarea-width)' : 'auto')};\n\n min-height: var(${tokens.inputMinHeight});\n\n padding-right: ${({ hasContentRight }) =>\n hasContentRight ? `var(${tokens.inputPaddingRightWithRightContent})` : `var(${tokens.inputPaddingRight})`};\n padding-left: var(${tokens.inputPaddingLeft});\n padding-top: 0;\n padding-bottom: 0;\n\n /* INFO: Высчитываем высоту блока с подсказками */\n --plasma_private-textarea-helpers-computed-height: calc(\n var(${tokens.helpersPaddingTop}) + var(${tokens.helpersPaddingBottom}) + var(${tokens.helpersLineHeight})\n );\n\n --plasma_private-textarea-input-with-helpers-height: calc(\n var(--plasma_private-textarea-height) - var(--plasma_private-textarea-helpers-computed-height) +\n var(${tokens.helpersOffset})\n );\n --plasma_private-textarea-input-without-helpers-height: calc(\n var(--plasma_private-textarea-computed-height) - var(${tokens.inputPaddingBottom})\n );\n\n --plasma_private-textarea-input-actual-height: ${({ hasHelper, rows }) =>\n hasHelper && !rows\n ? 'var(--plasma_private-textarea-input-with-helpers-height)'\n : 'var(--plasma_private-textarea-input-without-helpers-height)'};\n\n height: var(--plasma_private-textarea-input-actual-height);\n\n font-family: var(${tokens.inputFontFamily});\n font-size: var(${tokens.inputFontSize});\n font-style: var(${tokens.inputFontStyle});\n font-weight: var(${tokens.inputFontWeight});\n letter-spacing: var(${tokens.inputLetterSpacing});\n line-height: var(${tokens.inputLineHeight});\n\n &::placeholder {\n opacity: 0;\n }\n\n &:read-only {\n cursor: default;\n }\n\n &:focus:not(:disabled) {\n color: var(${tokens.inputColorFocus});\n }\n`;\n\nexport const StyledHelpers = styled.div`\n box-sizing: border-box;\n display: flex;\n justify-content: space-between;\n\n transition: background-color 0.1s ease-in-out;\n\n background-color: var(${tokens.helpersBackgroundColor});\n\n padding-top: var(${tokens.helpersPaddingTop});\n padding-right: var(${tokens.helpersPaddingRight});\n padding-bottom: var(${tokens.helpersPaddingBottom});\n padding-left: var(${tokens.helpersPaddingLeft});\n\n border-bottom-left-radius: var(${tokens.borderRadius});\n border-bottom-right-radius: var(${tokens.borderRadius});\n`;\n\nexport const StyledLeftHelper = styled.span`\n ${applyEllipsis()};\n\n display: block;\n\n font-family: var(${tokens.helpersFontFamily});\n font-size: var(${tokens.helpersFontSize});\n font-style: var(${tokens.helpersFontStyle});\n font-weight: var(${tokens.helpersFontWeight});\n letter-spacing: var(${tokens.helpersLetterSpacing});\n line-height: var(${tokens.helpersLineHeight});\n\n color: var(${tokens.leftHelperColor});\n`;\n\nexport const StyledRightHelper = styled(StyledLeftHelper)`\n color: var(${tokens.rightHelperColor});\n margin-left: auto;\n`;\n\nexport const StyledPlaceholder = styled.label<{\n hasContentRight: boolean;\n}>`\n box-sizing: border-box;\n position: absolute;\n pointer-events: none;\n display: inline-flex;\n align-items: center;\n\n transition: all 0.1s ease-in-out;\n transform-origin: top left;\n\n color: var(${tokens.placeholderColor});\n\n width: 100%;\n height: auto;\n\n top: var(${tokens.inputPaddingTop});\n padding-left: var(${tokens.inputPaddingLeft});\n padding-right: ${({ hasContentRight }) =>\n hasContentRight ? `var(${tokens.inputPaddingRightWithRightContent})` : `var(${tokens.inputPaddingRight})`};\n\n font-family: var(${tokens.inputFontFamily});\n font-size: var(${tokens.inputFontSize});\n font-style: var(${tokens.inputFontStyle});\n font-weight: var(${tokens.inputFontWeight});\n letter-spacing: var(${tokens.inputLetterSpacing});\n line-height: var(${tokens.inputLineHeight});\n`;\n\nexport const StyledIndicator = styled.div`\n position: absolute;\n border-radius: 50%;\n\n background-color: var(${tokens.indicatorColor});\n\n &.placement-outer {\n width: var(${tokens.indicatorSizeOuter});\n height: var(${tokens.indicatorSizeOuter});\n inset: var(${tokens.indicatorLabelPlacementOuter});\n\n &.align-right {\n inset: var(${tokens.indicatorLabelPlacementOuterRight});\n }\n }\n\n &.placement-inner {\n width: var(${tokens.indicatorSizeInner});\n height: var(${tokens.indicatorSizeInner});\n inset: var(${tokens.indicatorLabelPlacementInner});\n\n &.align-right {\n inset: var(${tokens.indicatorLabelPlacementInnerRight});\n }\n }\n`;\n"],"names":["StyledLabel","styled","name","class","propsAsIs","StyledOptionalText","_exp11","_ref","hasHelper","concat","tokens","inputPaddingBottomWithHelpers","inputPaddingBottom","_exp12","_ref2","borderRadiusWithHelpers","borderRadius","StyledTextAreaWrapper","vars","StyledContent","_exp16","_ref3","width","StyledContainer","_exp19","_ref4","resize","_exp20","_ref5","height","Number","isNaN","inputHeight","_exp21","_ref6","inputWidth","_exp22","_ref7","rows","_exp23","_ref8","cols","_exp25","_ref9","applyCustomWidth","_exp27","_ref10","hasContentRight","inputPaddingRightWithRightContent","inputPaddingRight","_exp34","_ref11","StyledTextArea","StyledHelpers","StyledLeftHelper","_exp57","StyledRightHelper","_exp62","_ref12","StyledPlaceholder","StyledIndicator"],"mappings":"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"}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
.s1luq7vd{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;margin-bottom:var(--plasma-textarea-label-margin-bottom);font-family:var(--plasma-textarea-input-font-family);font-size:var(--plasma-textarea-input-font-size);font-style:var(--plasma-textarea-input-font-style);font-weight:var(--plasma-textarea-input-font-weight);-webkit-letter-spacing:var(--plasma-textarea-input-letter-spacing);-moz-letter-spacing:var(--plasma-textarea-input-letter-spacing);-ms-letter-spacing:var(--plasma-textarea-input-letter-spacing);letter-spacing:var(--plasma-textarea-input-letter-spacing);line-height:var(--plasma-textarea-input-line-height);}
|
2
|
+
.s1r1fvk8{color:var(--plasma-textarea-placeholder-color);}
|
3
|
+
.surmvwq{background-color:var(--plasma-textarea-input-background-color);padding-top:var(--plasma-textarea-input-padding-top);padding-bottom:var(--surmvwq-0);border-radius:var(--surmvwq-1);}
|
4
|
+
.s18bd513{position:absolute;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;bottom:0;z-index:1;top:var(--plasma-textarea-right-content-top);right:var(--plasma-textarea-right-content-right);height:var(--plasma-textarea-right-content-height);}
|
5
|
+
.s7alcr2{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;width:var(--s7alcr2-0);position:relative;}
|
6
|
+
.si9oz50{display:block;box-sizing:border-box;outline:none;border:none;-webkit-appearance:none;background-color:transparent;color:var(--plasma-textarea-input-color);caret-color:var(--plasma-textarea-input-caret-color);resize:var(--si9oz50-0);--plasma_private-textarea-height:var(--si9oz50-1);--plasma_private-textarea-width:var(--si9oz50-2);--plasma_private-textarea-computed-height:var(--si9oz50-3);--plasma_private-textarea-computed-width:var(--si9oz50-4);height:var(--plasma_private-textarea-computed-height);width:var(--plasma_private-textarea-computed-width);min-width:var(--si9oz50-5);max-width:var(--si9oz50-5);min-height:var(--plasma-textarea-input-min-height);padding-right:var(--si9oz50-6);padding-left:var(--plasma-textarea-input-padding-left);padding-top:0;padding-bottom:0;--plasma_private-textarea-helpers-computed-height:calc( var(--plasma-textarea-helpers-padding-top) + var(--plasma-textarea-helpers-padding-bottom) + var(--plasma-textarea-helpers-line-height) );--plasma_private-textarea-input-with-helpers-height:calc( var(--plasma_private-textarea-height) - var(--plasma_private-textarea-helpers-computed-height) + var(--plasma-textarea-helpers-offset) );--plasma_private-textarea-input-without-helpers-height:calc( var(--plasma_private-textarea-computed-height) - var(--plasma-textarea-input-padding-bottom) );--plasma_private-textarea-input-actual-height:var(--si9oz50-7);height:var(--plasma_private-textarea-input-actual-height);font-family:var(--plasma-textarea-input-font-family);font-size:var(--plasma-textarea-input-font-size);font-style:var(--plasma-textarea-input-font-style);font-weight:var(--plasma-textarea-input-font-weight);-webkit-letter-spacing:var(--plasma-textarea-input-letter-spacing);-moz-letter-spacing:var(--plasma-textarea-input-letter-spacing);-ms-letter-spacing:var(--plasma-textarea-input-letter-spacing);letter-spacing:var(--plasma-textarea-input-letter-spacing);line-height:var(--plasma-textarea-input-line-height);}.si9oz50::-webkit-input-placeholder{opacity:0;}.si9oz50::-moz-placeholder{opacity:0;}.si9oz50:-ms-input-placeholder{opacity:0;}.si9oz50::placeholder{opacity:0;}.si9oz50:-moz-read-only{cursor:default;}.si9oz50:read-only{cursor:default;}.si9oz50:focus:not(:disabled){color:var(--plasma-textarea-input-color-focus);}
|
7
|
+
.s18tpn65{box-sizing:border-box;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-transition:background-color 0.1s ease-in-out;transition:background-color 0.1s ease-in-out;background-color:var(--plasma-textarea-helpers-background-color);padding-top:var(--plasma-textarea-helpers-padding-top);padding-right:var(--plasma-textarea-helpers-padding-right);padding-bottom:var(--plasma-textarea-helpers-padding-bottom);padding-left:var(--plasma-textarea-helpers-padding-left);border-bottom-left-radius:var(--plasma-textarea-border-radius);border-bottom-right-radius:var(--plasma-textarea-border-radius);}
|
8
|
+
.s19sfsrt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;font-family:var(--plasma-textarea-helpers-font-family);font-size:var(--plasma-textarea-helpers-font-size);font-style:var(--plasma-textarea-helpers-font-style);font-weight:var(--plasma-textarea-helpers-font-weight);-webkit-letter-spacing:var(--plasma-textarea-helpers-letter-spacing);-moz-letter-spacing:var(--plasma-textarea-helpers-letter-spacing);-ms-letter-spacing:var(--plasma-textarea-helpers-letter-spacing);letter-spacing:var(--plasma-textarea-helpers-letter-spacing);line-height:var(--plasma-textarea-helpers-line-height);color:var(--plasma-textarea-left-helper-color);}
|
9
|
+
.sfype23.s19sfsrt{color:var(--plasma-textarea-right-helper-color);margin-left:auto;}
|
10
|
+
.s3wsw3p{box-sizing:border-box;position:absolute;pointer-events:none;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:all 0.1s ease-in-out;transition:all 0.1s ease-in-out;-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;color:var(--plasma-textarea-placeholder-color);width:100%;height:auto;top:var(--plasma-textarea-input-padding-top);padding-left:var(--plasma-textarea-input-padding-left);padding-right:var(--s3wsw3p-0);font-family:var(--plasma-textarea-input-font-family);font-size:var(--plasma-textarea-input-font-size);font-style:var(--plasma-textarea-input-font-style);font-weight:var(--plasma-textarea-input-font-weight);-webkit-letter-spacing:var(--plasma-textarea-input-letter-spacing);-moz-letter-spacing:var(--plasma-textarea-input-letter-spacing);-ms-letter-spacing:var(--plasma-textarea-input-letter-spacing);letter-spacing:var(--plasma-textarea-input-letter-spacing);line-height:var(--plasma-textarea-input-line-height);}
|
11
|
+
.stc5t23{position:absolute;border-radius:50%;background-color:var(--plasma-textarea-indicator-color);}.stc5t23.placement-outer{width:var(--plasma-textarea-indicator-size-outer);height:var(--plasma-textarea-indicator-size-outer);inset:var(--plasma-textarea-indicator-placement-outer);}.stc5t23.placement-outer.align-right{inset:var(--plasma-textarea-indicator-placement-outer-right);}.stc5t23.placement-inner{width:var(--plasma-textarea-indicator-size-inner);height:var(--plasma-textarea-indicator-size-inner);inset:var(--plasma-textarea-indicator-placement-inner);}.stc5t23.placement-inner.align-right{inset:var(--plasma-textarea-indicator-placement-inner-right);}
|
@@ -18,7 +18,8 @@ var TextField_tokens = require('./TextField.tokens.js');
|
|
18
18
|
var TextFieldChip = require('./ui/TextFieldChip/TextFieldChip.js');
|
19
19
|
var useKeyNavigation = require('./hooks/useKeyNavigation.js');
|
20
20
|
|
21
|
-
var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "textBefore", "textAfter", "placeholder", "leftHelper", "enumerationType", "
|
21
|
+
var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "textBefore", "textAfter", "placeholder", "leftHelper", "enumerationType", "requiredPlacement", "view", "size", "readOnly", "disabled", "required", "optional", "chips", "onChange", "onChangeChips", "onSearch", "onKeyDown"];
|
22
|
+
var optionalText = 'optional';
|
22
23
|
var base = "bpunezx";
|
23
24
|
var textFieldRoot = function textFieldRoot(Root) {
|
24
25
|
return /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
@@ -35,8 +36,8 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
35
36
|
leftHelper = _ref.leftHelper,
|
36
37
|
_ref$enumerationType = _ref.enumerationType,
|
37
38
|
enumerationType = _ref$enumerationType === void 0 ? 'plain' : _ref$enumerationType,
|
38
|
-
_ref$
|
39
|
-
|
39
|
+
_ref$requiredPlacemen = _ref.requiredPlacement,
|
40
|
+
requiredPlacement = _ref$requiredPlacemen === void 0 ? 'right' : _ref$requiredPlacemen,
|
40
41
|
view = _ref.view,
|
41
42
|
size = _ref.size,
|
42
43
|
_ref$readOnly = _ref.readOnly,
|
@@ -45,6 +46,8 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
45
46
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
46
47
|
_ref$required = _ref.required,
|
47
48
|
required = _ref$required === void 0 ? false : _ref$required,
|
49
|
+
_ref$optional = _ref.optional,
|
50
|
+
optional = _ref$optional === void 0 ? false : _ref$optional,
|
48
51
|
values = _ref.chips,
|
49
52
|
onChange = _ref.onChange,
|
50
53
|
onChangeChips = _ref.onChangeChips,
|
@@ -72,10 +75,13 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
72
75
|
var hideLabel = (size === 'xs' || isChipEnumeration) && labelPlacement === 'inner';
|
73
76
|
var labelInside = size !== 'xs' && labelPlacement === 'inner';
|
74
77
|
var innerLabelPlacementValue = hideLabel ? 'outer' : labelPlacement;
|
75
|
-
var innerPlaceholderValue = hideLabel ? label : placeholder;
|
76
78
|
var innerLabelValue = hideLabel ? undefined : label;
|
77
79
|
var hasOuterLabel = Boolean(!labelInside && innerLabelValue);
|
78
|
-
var
|
80
|
+
var innerPlaceholderValue = hideLabel ? label : placeholder;
|
81
|
+
if (optional && !innerLabelValue && !hasOuterLabel) {
|
82
|
+
innerPlaceholderValue = innerPlaceholderValue ? "".concat(innerPlaceholderValue, "\xA0").concat(optionalText) : optionalText;
|
83
|
+
}
|
84
|
+
var requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;
|
79
85
|
var hideLabelClass = hideLabel && label ? TextField_tokens.classes.hideLabel : undefined;
|
80
86
|
var labelPlacementClass = TextField_tokens.classes["".concat(labelPlacement, "LabelPlacement")];
|
81
87
|
var isChipsVisible = isChipEnumeration && (chips === null || chips === void 0 ? void 0 : chips.length);
|
@@ -147,6 +153,7 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
147
153
|
})) || [];
|
148
154
|
setChips(newChips);
|
149
155
|
}, [isChipEnumeration, values]);
|
156
|
+
var optionalTextNode = optional ? /*#__PURE__*/React.createElement(TextField_styles.StyledOptionalText, null, Boolean(innerLabelValue) && '\xa0', optionalText) : null;
|
150
157
|
return /*#__PURE__*/React.createElement(Root, {
|
151
158
|
view: view,
|
152
159
|
size: size,
|
@@ -161,11 +168,11 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
161
168
|
id: labelId,
|
162
169
|
htmlFor: id
|
163
170
|
}, required && /*#__PURE__*/React.createElement(TextField_styles.StyledIndicator, {
|
164
|
-
className: index.cx('placement-outer',
|
165
|
-
}), innerLabelValue), /*#__PURE__*/React.createElement(TextField_styles.InputWrapper, {
|
171
|
+
className: index.cx('placement-outer', requiredPlacementClass)
|
172
|
+
}), innerLabelValue, optionalTextNode), /*#__PURE__*/React.createElement(TextField_styles.InputWrapper, {
|
166
173
|
className: index.cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent)
|
167
174
|
}, !hasOuterLabel && required && /*#__PURE__*/React.createElement(TextField_styles.StyledIndicator, {
|
168
|
-
className: index.cx('placement-inner',
|
175
|
+
className: index.cx('placement-inner', requiredPlacementClass)
|
169
176
|
}), contentLeft && /*#__PURE__*/React.createElement(TextField_styles.StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(TextField_styles.InputLabelWrapper, {
|
170
177
|
tabIndex: -1,
|
171
178
|
ref: contentRef,
|
@@ -205,7 +212,7 @@ var textFieldRoot = function textFieldRoot(Root) {
|
|
205
212
|
}, rest)), labelInside && /*#__PURE__*/React.createElement(TextField_styles.Label, {
|
206
213
|
id: labelId,
|
207
214
|
htmlFor: innerId
|
208
|
-
}, innerLabelValue), textAfter && /*#__PURE__*/React.createElement(TextField_styles.StyledTextAfter, null, textAfter)), contentRight && /*#__PURE__*/React.createElement(TextField_styles.StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/React.createElement(TextField_styles.LeftHelper, {
|
215
|
+
}, innerLabelValue, optionalTextNode), textAfter && /*#__PURE__*/React.createElement(TextField_styles.StyledTextAfter, null, textAfter)), contentRight && /*#__PURE__*/React.createElement(TextField_styles.StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/React.createElement(TextField_styles.LeftHelper, {
|
209
216
|
id: helperTextId
|
210
217
|
}, leftHelper));
|
211
218
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TextField.js","sources":["../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport type { ChangeEventHandler, KeyboardEvent, ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\n\nimport type { ChipValues, TextFieldPrimitiveValue, TextFieldProps } from './TextField.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_read-only/base';\nimport { base as requiredCSS } from './variations/_required/base';\nimport { base as labelPlacementCSS } from './variations/_label-placement/base';\nimport {\n Input,\n LeftHelper,\n Label,\n InputWrapper,\n InputLabelWrapper,\n StyledContentLeft,\n StyledContentRight,\n StyledChips,\n StyledTextBefore,\n StyledTextAfter,\n StyledIndicator,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\n\nexport const base = css`\n /* NOTE: Webkit не применяет opacity к inline тегам */\n display: block;\n`;\n\nexport const textFieldRoot = (Root: RootProps<HTMLDivElement, TextFieldProps>) =>\n forwardRef<HTMLInputElement, TextFieldProps>(\n (\n {\n id,\n className,\n style,\n\n // layout\n contentLeft,\n contentRight,\n label,\n labelPlacement,\n textBefore,\n textAfter,\n placeholder,\n leftHelper,\n enumerationType = 'plain',\n requiredAlign = 'left',\n\n // variations\n view,\n size,\n readOnly = false,\n disabled = false,\n required = false,\n\n // controlled\n chips: values,\n\n // events\n onChange,\n onChangeChips,\n onSearch,\n onKeyDown,\n\n ...rest\n },\n ref,\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n\n const controlledRefs = { contentRef, inputRef, chipsRefs };\n\n const [chips, setChips] = useState<Array<ChipValues>>([]);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const labelId = safeUseId();\n const helperTextId = safeUseId();\n\n const isChipEnumeration = enumerationType === 'chip';\n const hideLabel = (size === 'xs' || isChipEnumeration) && labelPlacement === 'inner';\n const labelInside = size !== 'xs' && labelPlacement === 'inner';\n const innerLabelPlacementValue = hideLabel ? 'outer' : labelPlacement;\n const innerPlaceholderValue = hideLabel ? label : placeholder;\n const innerLabelValue = hideLabel ? undefined : label;\n const hasOuterLabel = Boolean(!labelInside && innerLabelValue);\n const requiredAlignClass = requiredAlign === 'right' ? 'align-right ' : undefined;\n const hideLabelClass = hideLabel && label ? classes.hideLabel : undefined;\n const labelPlacementClass = classes[`${labelPlacement}LabelPlacement` as keyof typeof classes];\n\n const isChipsVisible = isChipEnumeration && chips?.length;\n const withHasChips = isChipsVisible ? classes.hasChips : undefined;\n const wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible ? classes.hasEmptyContentRight : undefined;\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const { maxLength, value } = event.target;\n\n if (maxLength !== -1 && value.length > maxLength) {\n return;\n }\n\n onChange?.(event);\n };\n\n const updateChips = (newChips: Array<ChipValues>, newValues: Array<TextFieldPrimitiveValue>) => {\n setChips(newChips);\n onChangeChips?.(newValues);\n };\n\n const { handleInputKeydown, handleChipKeyDown, onChipClear, handleContentKeyDown } = useKeyNavigation({\n controlledRefs,\n disabled,\n readOnly,\n chips,\n enumerationType,\n updateChips,\n onSearch,\n onChange,\n });\n\n const onChipClick = (event: React.MouseEvent<HTMLButtonElement>) => event.stopPropagation();\n\n const handleInputFocus = () => {\n if (readOnly || disabled || !inputRef?.current) {\n return;\n }\n\n inputRef.current.scrollTo({\n top: 0,\n left: inputRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n inputRef.current.focus();\n };\n\n const getRef = (element: HTMLButtonElement | null, index: number) => {\n if (element && chipsRefs?.current) {\n chipsRefs.current[index] = element;\n }\n };\n\n const handleOnKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n handleInputKeydown(event);\n onKeyDown && onKeyDown(event);\n };\n\n useEffect(() => {\n if (!isChipEnumeration && !values?.length) {\n return;\n }\n\n const newChips =\n values?.map((value, index) => ({\n id: `${index}_${value}`,\n text: value,\n })) || [];\n\n setChips(newChips);\n }, [isChipEnumeration, values]);\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n required={required}\n readOnly={!disabled && readOnly}\n labelPlacement={innerLabelPlacementValue}\n onClick={handleInputFocus}\n className={cx(labelPlacementClass, hideLabelClass, className)}\n style={style}\n >\n {hasOuterLabel && (\n <Label id={labelId} htmlFor={id}>\n {required && <StyledIndicator className={cx('placement-outer', requiredAlignClass)} />}\n {innerLabelValue}\n </Label>\n )}\n <InputWrapper className={cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent)}>\n {!hasOuterLabel && required && (\n <StyledIndicator className={cx('placement-inner', requiredAlignClass)} />\n )}\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n <InputLabelWrapper\n tabIndex={-1}\n ref={contentRef}\n onKeyDown={handleContentKeyDown}\n className={withHasChips}\n >\n {textBefore && <StyledTextBefore>{textBefore}</StyledTextBefore>}\n {isChipEnumeration && Boolean(chips?.length) && (\n <StyledChips>\n {chips?.map(({ id: chipId, text }, index) => {\n return (\n <TextFieldChip\n id={chipId}\n ref={(element) => getRef(element, index)}\n key={`${chipId}_${index}`}\n disabled={disabled}\n readOnly={readOnly}\n value={text}\n text={text}\n onKeyDown={(event) => handleChipKeyDown(event, chipId, index)}\n onClear={() => onChipClear(chipId, index)}\n onClick={onChipClick}\n />\n );\n })}\n </StyledChips>\n )}\n <Input\n ref={inputForkRef}\n id={innerId}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n {...rest}\n />\n {labelInside && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n </Label>\n )}\n {textAfter && <StyledTextAfter>{textAfter}</StyledTextAfter>}\n </InputLabelWrapper>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n </InputWrapper>\n {leftHelper && <LeftHelper id={helperTextId}>{leftHelper}</LeftHelper>}\n </Root>\n );\n },\n );\n\nexport const textFieldConfig = {\n name: 'TextField',\n tag: 'div',\n layout: textFieldRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n required: {\n css: requiredCSS,\n attrs: true,\n },\n labelPlacement: {\n css: labelPlacementCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["base","textFieldRoot","Root","forwardRef","_ref","ref","id","className","style","contentLeft","contentRight","label","labelPlacement","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","_ref$requiredAlign","requiredAlign","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","_ref$required","required","values","chips","onChange","onChangeChips","onSearch","onKeyDown","rest","contentRef","useRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","_useState2","_slicedToArray","setChips","uniqId","safeUseId","innerId","labelId","helperTextId","isChipEnumeration","hideLabel","labelInside","innerLabelPlacementValue","innerPlaceholderValue","innerLabelValue","undefined","hasOuterLabel","Boolean","requiredAlignClass","hideLabelClass","classes","labelPlacementClass","concat","isChipsVisible","length","withHasChips","hasChips","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","handleChange","event","_event$target","target","maxLength","value","updateChips","newChips","newValues","_useKeyNavigation","useKeyNavigation","handleInputKeydown","handleChipKeyDown","onChipClear","handleContentKeyDown","onChipClick","stopPropagation","handleInputFocus","current","scrollTo","top","left","offsetLeft","behavior","focus","getRef","element","index","handleOnKeyDown","useEffect","map","text","React","createElement","onClick","cx","Label","htmlFor","StyledIndicator","InputWrapper","StyledContentLeft","InputLabelWrapper","tabIndex","StyledTextBefore","StyledChips","_ref2","chipId","TextFieldChip","key","onClear","Input","_extends","StyledTextAfter","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","requiredCSS","labelPlacementCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"TextField.js","sources":["../../../src/components/TextField/TextField.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useRef, useState } from 'react';\nimport type { ChangeEventHandler, KeyboardEvent, ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\n\nimport type { ChipValues, TextFieldPrimitiveValue, TextFieldProps } from './TextField.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_read-only/base';\nimport { base as requiredCSS } from './variations/_required/base';\nimport { base as labelPlacementCSS } from './variations/_label-placement/base';\nimport {\n Input,\n LeftHelper,\n Label,\n InputWrapper,\n InputLabelWrapper,\n StyledContentLeft,\n StyledContentRight,\n StyledChips,\n StyledTextBefore,\n StyledTextAfter,\n StyledIndicator,\n StyledOptionalText,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\n\nconst optionalText = 'optional';\n\nexport const base = css`\n /* NOTE: Webkit не применяет opacity к inline тегам */\n display: block;\n`;\n\nexport const textFieldRoot = (Root: RootProps<HTMLDivElement, TextFieldProps>) =>\n forwardRef<HTMLInputElement, TextFieldProps>(\n (\n {\n id,\n className,\n style,\n\n // layout\n contentLeft,\n contentRight,\n label,\n labelPlacement,\n textBefore,\n textAfter,\n placeholder,\n leftHelper,\n enumerationType = 'plain',\n requiredPlacement = 'right',\n\n // variations\n view,\n size,\n readOnly = false,\n disabled = false,\n required = false,\n optional = false,\n\n // controlled\n chips: values,\n\n // events\n onChange,\n onChangeChips,\n onSearch,\n onKeyDown,\n\n ...rest\n },\n ref,\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n\n const controlledRefs = { contentRef, inputRef, chipsRefs };\n\n const [chips, setChips] = useState<Array<ChipValues>>([]);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const labelId = safeUseId();\n const helperTextId = safeUseId();\n\n const isChipEnumeration = enumerationType === 'chip';\n const hideLabel = (size === 'xs' || isChipEnumeration) && labelPlacement === 'inner';\n const labelInside = size !== 'xs' && labelPlacement === 'inner';\n const innerLabelPlacementValue = hideLabel ? 'outer' : labelPlacement;\n const innerLabelValue = hideLabel ? undefined : label;\n const hasOuterLabel = Boolean(!labelInside && innerLabelValue);\n let innerPlaceholderValue = hideLabel ? label : placeholder;\n if (optional && !innerLabelValue && !hasOuterLabel) {\n innerPlaceholderValue = innerPlaceholderValue\n ? `${innerPlaceholderValue}\\xa0${optionalText}`\n : optionalText;\n }\n const requiredPlacementClass = requiredPlacement === 'right' ? 'align-right ' : undefined;\n const hideLabelClass = hideLabel && label ? classes.hideLabel : undefined;\n const labelPlacementClass = classes[`${labelPlacement}LabelPlacement` as keyof typeof classes];\n\n const isChipsVisible = isChipEnumeration && chips?.length;\n const withHasChips = isChipsVisible ? classes.hasChips : undefined;\n const wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible ? classes.hasEmptyContentRight : undefined;\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n if (disabled || readOnly) {\n return;\n }\n\n const { maxLength, value } = event.target;\n\n if (maxLength !== -1 && value.length > maxLength) {\n return;\n }\n\n onChange?.(event);\n };\n\n const updateChips = (newChips: Array<ChipValues>, newValues: Array<TextFieldPrimitiveValue>) => {\n setChips(newChips);\n onChangeChips?.(newValues);\n };\n\n const { handleInputKeydown, handleChipKeyDown, onChipClear, handleContentKeyDown } = useKeyNavigation({\n controlledRefs,\n disabled,\n readOnly,\n chips,\n enumerationType,\n updateChips,\n onSearch,\n onChange,\n });\n\n const onChipClick = (event: React.MouseEvent<HTMLButtonElement>) => event.stopPropagation();\n\n const handleInputFocus = () => {\n if (readOnly || disabled || !inputRef?.current) {\n return;\n }\n\n inputRef.current.scrollTo({\n top: 0,\n left: inputRef.current.offsetLeft,\n behavior: 'smooth',\n });\n\n inputRef.current.focus();\n };\n\n const getRef = (element: HTMLButtonElement | null, index: number) => {\n if (element && chipsRefs?.current) {\n chipsRefs.current[index] = element;\n }\n };\n\n const handleOnKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n handleInputKeydown(event);\n onKeyDown && onKeyDown(event);\n };\n\n useEffect(() => {\n if (!isChipEnumeration && !values?.length) {\n return;\n }\n\n const newChips =\n values?.map((value, index) => ({\n id: `${index}_${value}`,\n text: value,\n })) || [];\n\n setChips(newChips);\n }, [isChipEnumeration, values]);\n\n const optionalTextNode = optional ? (\n <StyledOptionalText>\n {Boolean(innerLabelValue) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n required={required}\n readOnly={!disabled && readOnly}\n labelPlacement={innerLabelPlacementValue}\n onClick={handleInputFocus}\n className={cx(labelPlacementClass, hideLabelClass, className)}\n style={style}\n >\n {hasOuterLabel && (\n <Label id={labelId} htmlFor={id}>\n {required && <StyledIndicator className={cx('placement-outer', requiredPlacementClass)} />}\n {innerLabelValue}\n {optionalTextNode}\n </Label>\n )}\n <InputWrapper className={cx(withHasChips, wrapperWithoutLeftContent, wrapperWithoutRightContent)}>\n {!hasOuterLabel && required && (\n <StyledIndicator className={cx('placement-inner', requiredPlacementClass)} />\n )}\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n <InputLabelWrapper\n tabIndex={-1}\n ref={contentRef}\n onKeyDown={handleContentKeyDown}\n className={withHasChips}\n >\n {textBefore && <StyledTextBefore>{textBefore}</StyledTextBefore>}\n {isChipEnumeration && Boolean(chips?.length) && (\n <StyledChips>\n {chips?.map(({ id: chipId, text }, index) => {\n return (\n <TextFieldChip\n id={chipId}\n ref={(element) => getRef(element, index)}\n key={`${chipId}_${index}`}\n disabled={disabled}\n readOnly={readOnly}\n value={text}\n text={text}\n onKeyDown={(event) => handleChipKeyDown(event, chipId, index)}\n onClear={() => onChipClear(chipId, index)}\n onClick={onChipClick}\n />\n );\n })}\n </StyledChips>\n )}\n <Input\n ref={inputForkRef}\n id={innerId}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n {...rest}\n />\n {labelInside && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n {optionalTextNode}\n </Label>\n )}\n {textAfter && <StyledTextAfter>{textAfter}</StyledTextAfter>}\n </InputLabelWrapper>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n </InputWrapper>\n {leftHelper && <LeftHelper id={helperTextId}>{leftHelper}</LeftHelper>}\n </Root>\n );\n },\n );\n\nexport const textFieldConfig = {\n name: 'TextField',\n tag: 'div',\n layout: textFieldRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n required: {\n css: requiredCSS,\n attrs: true,\n },\n labelPlacement: {\n css: labelPlacementCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["optionalText","base","textFieldRoot","Root","forwardRef","_ref","ref","id","className","style","contentLeft","contentRight","label","labelPlacement","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","_ref$requiredPlacemen","requiredPlacement","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","_ref$required","required","_ref$optional","optional","values","chips","onChange","onChangeChips","onSearch","onKeyDown","rest","contentRef","useRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","_useState2","_slicedToArray","setChips","uniqId","safeUseId","innerId","labelId","helperTextId","isChipEnumeration","hideLabel","labelInside","innerLabelPlacementValue","innerLabelValue","undefined","hasOuterLabel","Boolean","innerPlaceholderValue","concat","requiredPlacementClass","hideLabelClass","classes","labelPlacementClass","isChipsVisible","length","withHasChips","hasChips","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","handleChange","event","_event$target","target","maxLength","value","updateChips","newChips","newValues","_useKeyNavigation","useKeyNavigation","handleInputKeydown","handleChipKeyDown","onChipClear","handleContentKeyDown","onChipClick","stopPropagation","handleInputFocus","current","scrollTo","top","left","offsetLeft","behavior","focus","getRef","element","index","handleOnKeyDown","useEffect","map","text","optionalTextNode","React","createElement","StyledOptionalText","onClick","cx","Label","htmlFor","StyledIndicator","InputWrapper","StyledContentLeft","InputLabelWrapper","tabIndex","StyledTextBefore","StyledChips","_ref2","chipId","TextFieldChip","key","onClear","Input","_extends","StyledTextAfter","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","readOnlyCSS","requiredCSS","labelPlacementCSS","defaults"],"mappings":"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"}
|