@salutejs/plasma-new-hope 0.194.0-canary.1565.11870784206.0 → 0.194.0-canary.1568.11891833298.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. package/cjs/components/Switch/Switch.css +2 -2
  2. package/cjs/components/Switch/Switch.tokens.js +7 -1
  3. package/cjs/components/Switch/Switch.tokens.js.map +1 -1
  4. package/cjs/components/Switch/_toggleSize/base.js +1 -1
  5. package/cjs/components/Switch/_toggleSize/base.js.map +1 -1
  6. package/cjs/components/Switch/_toggleSize/base_1d0b3t4.css +1 -0
  7. package/cjs/components/Switch/_view/base.js +1 -1
  8. package/cjs/components/Switch/_view/base.js.map +1 -1
  9. package/cjs/components/Switch/_view/base_15atbyp.css +1 -0
  10. package/cjs/components/TextField/TextField.js +3 -27
  11. package/cjs/components/TextField/TextField.js.map +1 -1
  12. package/cjs/index.css +2 -2
  13. package/cjs/utils/constants.js +0 -4
  14. package/cjs/utils/constants.js.map +1 -1
  15. package/emotion/cjs/components/Card/Card.api.mdx +184 -0
  16. package/emotion/cjs/components/Switch/Switch.tokens.js +7 -1
  17. package/emotion/cjs/components/Switch/_toggleSize/base.js +1 -1
  18. package/emotion/cjs/components/Switch/_view/base.js +1 -1
  19. package/emotion/cjs/components/TextField/TextField.js +4 -27
  20. package/emotion/cjs/components/TextField/TextField.template-doc.mdx +0 -330
  21. package/emotion/cjs/components/TextField/hooks/index.js +1 -8
  22. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +8 -8
  23. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.js +5 -2
  24. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.outline.config.js +37 -0
  25. package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  26. package/emotion/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  27. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.config.js +8 -8
  28. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.js +5 -2
  29. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.outline.config.js +37 -0
  30. package/emotion/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  31. package/emotion/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  32. package/emotion/cjs/utils/constants.js +2 -4
  33. package/emotion/es/components/Card/Card.api.mdx +184 -0
  34. package/emotion/es/components/Switch/Switch.tokens.js +7 -1
  35. package/emotion/es/components/Switch/_toggleSize/base.js +1 -1
  36. package/emotion/es/components/Switch/_view/base.js +1 -1
  37. package/emotion/es/components/TextField/TextField.js +5 -28
  38. package/emotion/es/components/TextField/TextField.template-doc.mdx +0 -330
  39. package/emotion/es/components/TextField/hooks/index.js +1 -2
  40. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.config.js +8 -8
  41. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.js +4 -1
  42. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.outline.config.js +31 -0
  43. package/emotion/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  44. package/emotion/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  45. package/emotion/es/examples/plasma_web/components/Switch/Switch.config.js +8 -8
  46. package/emotion/es/examples/plasma_web/components/Switch/Switch.js +4 -1
  47. package/emotion/es/examples/plasma_web/components/Switch/Switch.outline.config.js +31 -0
  48. package/emotion/es/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  49. package/emotion/es/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  50. package/emotion/es/utils/constants.js +1 -3
  51. package/es/components/Switch/Switch.css +2 -2
  52. package/es/components/Switch/Switch.tokens.js +7 -1
  53. package/es/components/Switch/Switch.tokens.js.map +1 -1
  54. package/es/components/Switch/_toggleSize/base.js +1 -1
  55. package/es/components/Switch/_toggleSize/base.js.map +1 -1
  56. package/es/components/Switch/_toggleSize/base_1d0b3t4.css +1 -0
  57. package/es/components/Switch/_view/base.js +1 -1
  58. package/es/components/Switch/_view/base.js.map +1 -1
  59. package/es/components/Switch/_view/base_15atbyp.css +1 -0
  60. package/es/components/TextField/TextField.js +3 -27
  61. package/es/components/TextField/TextField.js.map +1 -1
  62. package/es/index.css +2 -2
  63. package/es/utils/constants.js +1 -3
  64. package/es/utils/constants.js.map +1 -1
  65. package/package.json +2 -2
  66. package/styled-components/cjs/components/Card/Card.api.mdx +184 -0
  67. package/styled-components/cjs/components/Switch/Switch.tokens.js +7 -1
  68. package/styled-components/cjs/components/Switch/_toggleSize/base.js +1 -1
  69. package/styled-components/cjs/components/Switch/_view/base.js +1 -1
  70. package/styled-components/cjs/components/TextField/TextField.js +3 -26
  71. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +0 -330
  72. package/styled-components/cjs/components/TextField/hooks/index.js +1 -8
  73. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
  74. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.js +5 -2
  75. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.outline.config.js +37 -0
  76. package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  77. package/styled-components/cjs/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  78. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.config.js +1 -1
  79. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.js +5 -2
  80. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.outline.config.js +37 -0
  81. package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  82. package/styled-components/cjs/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  83. package/styled-components/cjs/utils/constants.js +2 -4
  84. package/styled-components/es/components/Card/Card.api.mdx +184 -0
  85. package/styled-components/es/components/Switch/Switch.tokens.js +7 -1
  86. package/styled-components/es/components/Switch/_toggleSize/base.js +1 -1
  87. package/styled-components/es/components/Switch/_view/base.js +1 -1
  88. package/styled-components/es/components/TextField/TextField.js +4 -27
  89. package/styled-components/es/components/TextField/TextField.template-doc.mdx +0 -330
  90. package/styled-components/es/components/TextField/hooks/index.js +1 -2
  91. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
  92. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.js +4 -1
  93. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.outline.config.js +31 -0
  94. package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.stories.tsx +33 -1
  95. package/styled-components/es/examples/plasma_b2c/components/TextField/TextField.stories.tsx +1 -253
  96. package/styled-components/es/examples/plasma_web/components/Switch/Switch.config.js +1 -1
  97. package/styled-components/es/examples/plasma_web/components/Switch/Switch.js +4 -1
  98. package/styled-components/es/examples/plasma_web/components/Switch/Switch.outline.config.js +31 -0
  99. package/styled-components/es/examples/plasma_web/components/Switch/Switch.stories.tsx +33 -1
  100. package/styled-components/es/examples/plasma_web/components/TextField/TextField.stories.tsx +0 -252
  101. package/styled-components/es/utils/constants.js +1 -3
  102. package/types/components/Autocomplete/Autocomplete.types.d.ts +2 -2
  103. package/types/components/Autocomplete/Autocomplete.types.d.ts.map +1 -1
  104. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts +92 -1676
  105. package/types/components/Autocomplete/ui/TextField/TextField.styles.d.ts.map +1 -1
  106. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts +92 -1676
  107. package/types/components/Combobox/ComboboxNew/ui/Target/Target.styles.d.ts.map +1 -1
  108. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts +92 -1676
  109. package/types/components/DatePicker/SingleDate/SingleDate.styles.d.ts.map +1 -1
  110. package/types/components/Range/Range.styles.d.ts +92 -1676
  111. package/types/components/Range/Range.styles.d.ts.map +1 -1
  112. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +92 -1676
  113. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts.map +1 -1
  114. package/types/components/Slider/components/Double/Double.styles.d.ts +92 -1676
  115. package/types/components/Slider/components/Double/Double.styles.d.ts.map +1 -1
  116. package/types/components/Switch/Switch.tokens.d.ts +7 -1
  117. package/types/components/Switch/Switch.tokens.d.ts.map +1 -1
  118. package/types/components/Switch/_toggleSize/base.d.ts.map +1 -1
  119. package/types/components/Switch/_view/base.d.ts.map +1 -1
  120. package/types/components/TextField/TextField.d.ts.map +1 -1
  121. package/types/components/TextField/TextField.types.d.ts +1 -51
  122. package/types/components/TextField/TextField.types.d.ts.map +1 -1
  123. package/types/components/TextField/hooks/index.d.ts +0 -1
  124. package/types/components/TextField/hooks/index.d.ts.map +1 -1
  125. package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.d.ts +2 -64
  126. package/types/examples/plasma_b2c/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  127. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +92 -2732
  128. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +1 -1
  129. package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts.map +1 -1
  130. package/types/examples/plasma_b2c/components/Switch/Switch.d.ts +20 -0
  131. package/types/examples/plasma_b2c/components/Switch/Switch.d.ts.map +1 -1
  132. package/types/examples/plasma_b2c/components/Switch/Switch.outline.config.d.ts +30 -0
  133. package/types/examples/plasma_b2c/components/Switch/Switch.outline.config.d.ts.map +1 -0
  134. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts +92 -1676
  135. package/types/examples/plasma_b2c/components/TextField/TextField.d.ts.map +1 -1
  136. package/types/examples/plasma_web/components/Autocomplete/Autocomplete.d.ts +2 -64
  137. package/types/examples/plasma_web/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  138. package/types/examples/plasma_web/components/Mask/Mask.d.ts +92 -2732
  139. package/types/examples/plasma_web/components/Mask/Mask.d.ts.map +1 -1
  140. package/types/examples/plasma_web/components/Switch/Switch.config.d.ts.map +1 -1
  141. package/types/examples/plasma_web/components/Switch/Switch.d.ts +20 -0
  142. package/types/examples/plasma_web/components/Switch/Switch.d.ts.map +1 -1
  143. package/types/examples/plasma_web/components/Switch/Switch.outline.config.d.ts +30 -0
  144. package/types/examples/plasma_web/components/Switch/Switch.outline.config.d.ts.map +1 -0
  145. package/types/examples/plasma_web/components/TextField/TextField.d.ts +92 -1676
  146. package/types/examples/plasma_web/components/TextField/TextField.d.ts.map +1 -1
  147. package/types/utils/constants.d.ts +0 -2
  148. package/types/utils/constants.d.ts.map +1 -1
  149. package/cjs/components/Switch/_toggleSize/base_6i0904.css +0 -1
  150. package/cjs/components/Switch/_view/base_yxkf3s.css +0 -1
  151. package/cjs/components/TextField/hooks/useValidation.js +0 -273
  152. package/cjs/components/TextField/hooks/useValidation.js.map +0 -1
  153. package/emotion/cjs/components/TextField/hooks/useValidation.js +0 -276
  154. package/emotion/es/components/TextField/hooks/useValidation.js +0 -270
  155. package/es/components/Switch/_toggleSize/base_6i0904.css +0 -1
  156. package/es/components/Switch/_view/base_yxkf3s.css +0 -1
  157. package/es/components/TextField/hooks/useValidation.js +0 -269
  158. package/es/components/TextField/hooks/useValidation.js.map +0 -1
  159. package/styled-components/cjs/components/TextField/hooks/useValidation.js +0 -276
  160. package/styled-components/es/components/TextField/hooks/useValidation.js +0 -270
  161. package/types/components/TextField/hooks/useValidation.d.ts +0 -7
  162. package/types/components/TextField/hooks/useValidation.d.ts.map +0 -1
@@ -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 {\n FormEventHandler,\n ChangeEventHandler,\n KeyboardEvent,\n ChangeEvent,\n MouseEventHandler,\n FocusEvent,\n} from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport type { ChipValues, TextFieldPrimitiveValue, TextFieldProps, TextFieldRootProps } from './TextField.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_read-only/base';\nimport { base as labelPlacementCSS } from './variations/_label-placement/base';\nimport { base as hintViewCSS } from './variations/_hint-view/base';\nimport { base as hintSizeCSS } from './variations/_hint-size/base';\nimport {\n Input,\n InputContainer,\n LeftHelper,\n Label,\n InputWrapper,\n InputLabelWrapper,\n StyledContentLeft,\n StyledContentRight,\n StyledChips,\n StyledTextBefore,\n StyledTextAfter,\n StyledIndicator,\n StyledOptionalText,\n InputPlaceholder,\n OuterLabelWrapper,\n TitleCaption,\n StyledHintWrapper,\n StyledIndicatorWrapper,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation, useValidation } from './hooks';\nimport { HintComponent } from './ui/Hint/Hint';\n\nconst optionalText = 'optional';\n\nexport const base = css`\n /* NOTE: Webkit не применяет opacity к inline тегам */\n display: block;\n`;\n\nconst HINT_DEFAULT_OFFSET: [number, number] = [0, 0];\n\nexport const textFieldRoot = (Root: RootProps<HTMLDivElement, TextFieldRootProps>) =>\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 titleCaption,\n\n // hint\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintPlacement = 'auto',\n hintHasArrow,\n hintOffset = HINT_DEFAULT_OFFSET,\n hintWidth,\n hintContentLeft,\n\n // variations\n view,\n size,\n readOnly = false,\n disabled = false,\n required = false,\n clear = false,\n optional,\n hasDivider,\n\n // controlled\n value: outerValue,\n chips: values,\n\n // validation\n validationType,\n options,\n passwordHidden,\n onValidate,\n\n // events\n onChange,\n onBlur,\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 [hasValue, setHasValue] = useState(\n Boolean(outerValue) || Boolean(inputRef?.current?.value) || Boolean(rest?.defaultValue),\n );\n const [chips, setChips] = useState<Array<ChipValues>>([]);\n const [isHintVisible, setIsHintVisible] = useState(false);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const labelId = safeUseId();\n const helperTextId = safeUseId();\n\n const isDefaultView = view === 'default' || readOnly || disabled;\n\n const isChipEnumeration = enumerationType === 'chip';\n const isChipsVisible = isChipEnumeration && Boolean(chips?.length);\n const withHasChips = isChipsVisible ? classes.hasChips : undefined;\n\n const hasLabelValue = Boolean(label);\n const hasInnerLabel = size !== 'xs' && labelPlacement === 'inner' && !isChipsVisible && hasLabelValue;\n const hasOuterLabel = labelPlacement === 'outer' && hasLabelValue;\n const hasPlaceholder = Boolean(placeholder) && !hasInnerLabel;\n\n const innerLabelValue = hasInnerLabel || hasOuterLabel ? label : undefined;\n const innerLabelPlacementValue = labelPlacement === 'inner' && !hasInnerLabel ? undefined : labelPlacement;\n\n const innerPlaceholderValue = hasPlaceholder ? placeholder : undefined;\n const placeholderShown = Boolean(innerPlaceholderValue) && !hasValue;\n\n const clearClass = clear ? classes.clear : undefined;\n const hasDividerClass = hasDivider ? classes.hasDivider : undefined;\n const hasHintClass = hintText ? classes.hasHint : undefined;\n const requiredPlacementClass = requiredPlacement === 'right' ? classes.requiredAlignRight : undefined;\n const labelPlacementClass = innerLabelPlacementValue\n ? classes[`${innerLabelPlacementValue}LabelPlacement` as keyof typeof classes]\n : undefined;\n const hasValueClass = hasValue ? classes.hasValue : undefined;\n\n const wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible ? classes.hasEmptyContentRight : undefined;\n\n const isPasswordHidden = validationType === 'password' && passwordHidden;\n\n const hintRef = useOutsideClick<HTMLDivElement>(() => {\n setIsHintVisible(false);\n });\n const hintInnerRef = useRef<HTMLDivElement>(null);\n const hintForkRef = useForkRef(hintRef, hintInnerRef);\n\n const handleInput: FormEventHandler<HTMLInputElement> = (event) => {\n setHasValue(Boolean((event.target as HTMLInputElement).value));\n };\n\n const handleHintShow = () => setIsHintVisible(true);\n const handleHintHide = () => setIsHintVisible(false);\n const handleHintClick: MouseEventHandler = (event) => {\n if (!hintText || hintTrigger !== 'click') {\n return;\n }\n\n event.stopPropagation();\n const targetIsPopover = event.target === hintInnerRef.current;\n const rootHasTarget = hintInnerRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n setIsHintVisible(true);\n }\n };\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 { handleValidationBlur, handleValidationKeyDown } = useValidation({\n validationType,\n options,\n onValidate,\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 onEnterDisabled: (rest as any).onEnterDisabled,\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 handleInputBlur = (event: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(event);\n }\n\n handleValidationBlur(event);\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 handleValidationKeyDown(event);\n\n if (onKeyDown) {\n onKeyDown(event);\n }\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 useEffect(() => {\n setHasValue(Boolean(rest?.defaultValue));\n }, [rest.defaultValue]);\n\n useEffect(() => {\n setHasValue(Boolean(outerValue) || Boolean(inputRef?.current?.value));\n }, [outerValue, inputRef?.current?.value]);\n\n const innerOptional = Boolean(required ? false : optional);\n const hasPlaceholderOptional = innerOptional && !innerLabelValue && !hasOuterLabel;\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? innerPlaceholderValue : innerLabelValue) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n clear={clear}\n labelPlacement={innerLabelPlacementValue}\n onClick={handleInputFocus}\n className={cx(\n labelPlacementClass,\n clearClass,\n hasDividerClass,\n hasHintClass,\n classes.textFieldGroupItem,\n className,\n )}\n style={style}\n {...(hintText && { hintView, hintSize })}\n >\n {(hasOuterLabel || titleCaption) && (\n <OuterLabelWrapper isInnerLabel={labelPlacement === 'inner'}>\n {hasOuterLabel && (\n <StyledIndicatorWrapper>\n <Label id={labelId} htmlFor={id}>\n {innerLabelValue}\n </Label>\n\n {hintText && (\n <StyledHintWrapper>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n {required && (\n <StyledIndicator\n className={cx(\n classes.outerLabelPlacement,\n requiredPlacementClass,\n hasHintClass,\n )}\n />\n )}\n {optionalTextNode}\n </StyledIndicatorWrapper>\n )}\n {titleCaption && <TitleCaption>{titleCaption}</TitleCaption>}\n </OuterLabelWrapper>\n )}\n <InputWrapper\n // Ref для внутреннего использования. Не отдается наружу.\n ref={(rest as any).inputWrapperRef}\n // TODO: #1544, и после убрать classes.inputWrapper\n className={cx(\n withHasChips,\n wrapperWithoutLeftContent,\n wrapperWithoutRightContent,\n classes.inputWrapper,\n )}\n >\n {!hasOuterLabel && (\n <>\n {required && (\n <StyledIndicator\n className={cx(classes.innerLabelPlacement, requiredPlacementClass)}\n />\n )}\n {hintText && (\n <StyledHintWrapper className={classes.innerLabelPlacement}>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n </>\n )}\n {contentLeft && (\n <StyledContentLeft isClear={clear} isDefaultView={isDefaultView}>\n {contentLeft}\n </StyledContentLeft>\n )}\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 // TODO: #1547\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n _forceChipManipulationWithReadonly={\n // eslint-disable-next-line no-underscore-dangle\n (rest as any)._forceChipManipulationWithReadonly\n }\n />\n );\n })}\n </StyledChips>\n )}\n <InputContainer>\n <Input\n ref={inputForkRef}\n id={innerId}\n value={outerValue}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n className={cx(hasValueClass)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onInput={handleInput}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n onBlur={handleInputBlur}\n {...rest}\n {...(isPasswordHidden && { type: 'password' })}\n />\n {hasInnerLabel && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n {optionalTextNode}\n </Label>\n )}\n {placeholderShown && !hasValue && (\n <InputPlaceholder>\n {innerPlaceholderValue}\n {hasPlaceholderOptional && optionalTextNode}\n </InputPlaceholder>\n )}\n </InputContainer>\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 clear: {\n css: clearCSS,\n attrs: true,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n labelPlacement: {\n css: labelPlacementCSS,\n },\n hintView: {\n css: hintViewCSS,\n },\n hintSize: {\n css: hintSizeCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["optionalText","base","HINT_DEFAULT_OFFSET","textFieldRoot","Root","forwardRef","_ref","ref","_inputRef$current","_inputRef$current3","id","className","style","contentLeft","contentRight","label","labelPlacement","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","_ref$requiredPlacemen","requiredPlacement","titleCaption","_ref$hintTrigger","hintTrigger","hintText","_ref$hintView","hintView","_ref$hintSize","hintSize","hintTargetIcon","_ref$hintPlacement","hintPlacement","hintHasArrow","_ref$hintOffset","hintOffset","hintWidth","hintContentLeft","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","_ref$required","required","_ref$clear","clear","optional","hasDivider","outerValue","value","values","chips","validationType","options","passwordHidden","onValidate","onChange","onBlur","onChangeChips","onSearch","onKeyDown","rest","contentRef","useRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","Boolean","current","defaultValue","_useState2","_slicedToArray","hasValue","setHasValue","_useState3","_useState4","setChips","_useState5","_useState6","isHintVisible","setIsHintVisible","uniqId","safeUseId","innerId","labelId","helperTextId","isDefaultView","isChipEnumeration","isChipsVisible","length","withHasChips","classes","hasChips","undefined","hasLabelValue","hasInnerLabel","hasOuterLabel","hasPlaceholder","innerLabelValue","innerLabelPlacementValue","innerPlaceholderValue","placeholderShown","clearClass","hasDividerClass","hasHintClass","hasHint","requiredPlacementClass","requiredAlignRight","labelPlacementClass","concat","hasValueClass","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","isPasswordHidden","hintRef","useOutsideClick","hintInnerRef","hintForkRef","handleInput","event","target","handleHintShow","handleHintHide","handleHintClick","_hintInnerRef$current","stopPropagation","targetIsPopover","rootHasTarget","contains","handleChange","_event$target","maxLength","updateChips","newChips","newValues","_useValidation","useValidation","handleValidationBlur","handleValidationKeyDown","_useKeyNavigation","useKeyNavigation","onEnterDisabled","handleInputKeydown","handleChipKeyDown","onChipClear","handleContentKeyDown","onChipClick","handleInputFocus","scrollTo","top","left","offsetLeft","behavior","focus","handleInputBlur","getRef","element","index","handleOnKeyDown","useEffect","map","text","_inputRef$current2","innerOptional","hasPlaceholderOptional","optionalTextNode","React","createElement","StyledOptionalText","_extends","onClick","cx","textFieldGroupItem","OuterLabelWrapper","isInnerLabel","StyledIndicatorWrapper","Label","htmlFor","StyledHintWrapper","HintComponent","StyledIndicator","outerLabelPlacement","TitleCaption","InputWrapper","inputWrapperRef","inputWrapper","Fragment","innerLabelPlacement","StyledContentLeft","isClear","InputLabelWrapper","tabIndex","StyledTextBefore","StyledChips","_ref2","chipId","TextFieldChip","key","onClear","_forceChipManipulationWithReadonly","InputContainer","Input","onInput","type","InputPlaceholder","StyledTextAfter","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","clearCSS","attrs","disabledCSS","readOnlyCSS","labelPlacementCSS","hintViewCSS","hintSizeCSS","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 { FormEventHandler, ChangeEventHandler, KeyboardEvent, ChangeEvent, MouseEventHandler } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\nimport { css } from '@linaria/core';\n\nimport type { RootProps } from '../../engines';\nimport { cx } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport type { ChipValues, TextFieldPrimitiveValue, TextFieldProps, TextFieldRootProps } from './TextField.types';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as clearCSS } from './variations/_clear/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readOnlyCSS } from './variations/_read-only/base';\nimport { base as labelPlacementCSS } from './variations/_label-placement/base';\nimport { base as hintViewCSS } from './variations/_hint-view/base';\nimport { base as hintSizeCSS } from './variations/_hint-size/base';\nimport {\n Input,\n InputContainer,\n LeftHelper,\n Label,\n InputWrapper,\n InputLabelWrapper,\n StyledContentLeft,\n StyledContentRight,\n StyledChips,\n StyledTextBefore,\n StyledTextAfter,\n StyledIndicator,\n StyledOptionalText,\n InputPlaceholder,\n OuterLabelWrapper,\n TitleCaption,\n StyledHintWrapper,\n StyledIndicatorWrapper,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\nimport { HintComponent } from './ui/Hint/Hint';\n\nconst optionalText = 'optional';\n\nexport const base = css`\n /* NOTE: Webkit не применяет opacity к inline тегам */\n display: block;\n`;\n\nconst HINT_DEFAULT_OFFSET: [number, number] = [0, 0];\n\nexport const textFieldRoot = (Root: RootProps<HTMLDivElement, TextFieldRootProps>) =>\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 titleCaption,\n\n // hint\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintPlacement = 'auto',\n hintHasArrow,\n hintOffset = HINT_DEFAULT_OFFSET,\n hintWidth,\n hintContentLeft,\n\n // variations\n view,\n size,\n readOnly = false,\n disabled = false,\n required = false,\n clear = false,\n optional,\n hasDivider,\n\n // controlled\n value: outerValue,\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 [hasValue, setHasValue] = useState(\n Boolean(outerValue) || Boolean(inputRef?.current?.value) || Boolean(rest?.defaultValue),\n );\n const [chips, setChips] = useState<Array<ChipValues>>([]);\n const [isHintVisible, setIsHintVisible] = useState(false);\n\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const labelId = safeUseId();\n const helperTextId = safeUseId();\n\n const isDefaultView = view === 'default' || readOnly || disabled;\n\n const isChipEnumeration = enumerationType === 'chip';\n const isChipsVisible = isChipEnumeration && Boolean(chips?.length);\n const withHasChips = isChipsVisible ? classes.hasChips : undefined;\n\n const hasLabelValue = Boolean(label);\n const hasInnerLabel = size !== 'xs' && labelPlacement === 'inner' && !isChipsVisible && hasLabelValue;\n const hasOuterLabel = labelPlacement === 'outer' && hasLabelValue;\n const hasPlaceholder = Boolean(placeholder) && !hasInnerLabel;\n\n const innerLabelValue = hasInnerLabel || hasOuterLabel ? label : undefined;\n const innerLabelPlacementValue = labelPlacement === 'inner' && !hasInnerLabel ? undefined : labelPlacement;\n\n const innerPlaceholderValue = hasPlaceholder ? placeholder : undefined;\n const placeholderShown = Boolean(innerPlaceholderValue) && !hasValue;\n\n const clearClass = clear ? classes.clear : undefined;\n const hasDividerClass = hasDivider ? classes.hasDivider : undefined;\n const hasHintClass = hintText ? classes.hasHint : undefined;\n const requiredPlacementClass = requiredPlacement === 'right' ? classes.requiredAlignRight : undefined;\n const labelPlacementClass = innerLabelPlacementValue\n ? classes[`${innerLabelPlacementValue}LabelPlacement` as keyof typeof classes]\n : undefined;\n const hasValueClass = hasValue ? classes.hasValue : undefined;\n\n const wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible ? classes.hasEmptyContentRight : undefined;\n\n const hintRef = useOutsideClick<HTMLDivElement>(() => {\n setIsHintVisible(false);\n });\n const hintInnerRef = useRef<HTMLDivElement>(null);\n const hintForkRef = useForkRef(hintRef, hintInnerRef);\n\n const handleInput: FormEventHandler<HTMLInputElement> = (event) => {\n setHasValue(Boolean((event.target as HTMLInputElement).value));\n };\n\n const handleHintShow = () => setIsHintVisible(true);\n const handleHintHide = () => setIsHintVisible(false);\n const handleHintClick: MouseEventHandler = (event) => {\n if (!hintText || hintTrigger !== 'click') {\n return;\n }\n\n event.stopPropagation();\n const targetIsPopover = event.target === hintInnerRef.current;\n const rootHasTarget = hintInnerRef.current?.contains(event.target as Element);\n\n if (!targetIsPopover && !rootHasTarget) {\n setIsHintVisible(true);\n }\n };\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 onEnterDisabled: (rest as any).onEnterDisabled,\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\n if (onKeyDown) {\n onKeyDown(event);\n }\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 useEffect(() => {\n setHasValue(Boolean(rest?.defaultValue));\n }, [rest.defaultValue]);\n\n useEffect(() => {\n setHasValue(Boolean(outerValue) || Boolean(inputRef?.current?.value));\n }, [outerValue, inputRef?.current?.value]);\n\n const innerOptional = Boolean(required ? false : optional);\n const hasPlaceholderOptional = innerOptional && !innerLabelValue && !hasOuterLabel;\n const optionalTextNode = innerOptional ? (\n <StyledOptionalText>\n {Boolean(hasPlaceholderOptional ? innerPlaceholderValue : innerLabelValue) && '\\xa0'}\n {optionalText}\n </StyledOptionalText>\n ) : null;\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n clear={clear}\n labelPlacement={innerLabelPlacementValue}\n onClick={handleInputFocus}\n className={cx(\n labelPlacementClass,\n clearClass,\n hasDividerClass,\n hasHintClass,\n classes.textFieldGroupItem,\n className,\n )}\n style={style}\n {...(hintText && { hintView, hintSize })}\n >\n {(hasOuterLabel || titleCaption) && (\n <OuterLabelWrapper isInnerLabel={labelPlacement === 'inner'}>\n {hasOuterLabel && (\n <StyledIndicatorWrapper>\n <Label id={labelId} htmlFor={id}>\n {innerLabelValue}\n </Label>\n\n {hintText && (\n <StyledHintWrapper>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n {required && (\n <StyledIndicator\n className={cx(\n classes.outerLabelPlacement,\n requiredPlacementClass,\n hasHintClass,\n )}\n />\n )}\n {optionalTextNode}\n </StyledIndicatorWrapper>\n )}\n {titleCaption && <TitleCaption>{titleCaption}</TitleCaption>}\n </OuterLabelWrapper>\n )}\n <InputWrapper\n // Ref для внутреннего использования. Не отдается наружу.\n ref={(rest as any).inputWrapperRef}\n // TODO: #1544, и после убрать classes.inputWrapper\n className={cx(\n withHasChips,\n wrapperWithoutLeftContent,\n wrapperWithoutRightContent,\n classes.inputWrapper,\n )}\n >\n {!hasOuterLabel && (\n <>\n {required && (\n <StyledIndicator\n className={cx(classes.innerLabelPlacement, requiredPlacementClass)}\n />\n )}\n {hintText && (\n <StyledHintWrapper className={classes.innerLabelPlacement}>\n <HintComponent\n ref={hintForkRef}\n hintText={hintText}\n hintTrigger={hintTrigger}\n isHintVisible={isHintVisible}\n hintTargetIcon={hintTargetIcon}\n hintPlacement={hintPlacement}\n hintHasArrow={hintHasArrow}\n hintOffset={hintOffset}\n hintWidth={hintWidth}\n hintContentLeft={hintContentLeft}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n />\n </StyledHintWrapper>\n )}\n </>\n )}\n {contentLeft && (\n <StyledContentLeft isClear={clear} isDefaultView={isDefaultView}>\n {contentLeft}\n </StyledContentLeft>\n )}\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 // TODO: #1547\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n _forceChipManipulationWithReadonly={\n // eslint-disable-next-line no-underscore-dangle\n (rest as any)._forceChipManipulationWithReadonly\n }\n />\n );\n })}\n </StyledChips>\n )}\n <InputContainer>\n <Input\n ref={inputForkRef}\n id={innerId}\n value={outerValue}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n className={cx(hasValueClass)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onInput={handleInput}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n {...rest}\n />\n {hasInnerLabel && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n {optionalTextNode}\n </Label>\n )}\n {placeholderShown && !hasValue && (\n <InputPlaceholder>\n {innerPlaceholderValue}\n {hasPlaceholderOptional && optionalTextNode}\n </InputPlaceholder>\n )}\n </InputContainer>\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 clear: {\n css: clearCSS,\n attrs: true,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readOnlyCSS,\n attrs: true,\n },\n labelPlacement: {\n css: labelPlacementCSS,\n },\n hintView: {\n css: hintViewCSS,\n },\n hintSize: {\n css: hintSizeCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["optionalText","base","HINT_DEFAULT_OFFSET","textFieldRoot","Root","forwardRef","_ref","ref","_inputRef$current","_inputRef$current3","id","className","style","contentLeft","contentRight","label","labelPlacement","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","_ref$requiredPlacemen","requiredPlacement","titleCaption","_ref$hintTrigger","hintTrigger","hintText","_ref$hintView","hintView","_ref$hintSize","hintSize","hintTargetIcon","_ref$hintPlacement","hintPlacement","hintHasArrow","_ref$hintOffset","hintOffset","hintWidth","hintContentLeft","view","size","_ref$readOnly","readOnly","_ref$disabled","disabled","_ref$required","required","_ref$clear","clear","optional","hasDivider","outerValue","value","values","chips","onChange","onChangeChips","onSearch","onKeyDown","rest","contentRef","useRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","Boolean","current","defaultValue","_useState2","_slicedToArray","hasValue","setHasValue","_useState3","_useState4","setChips","_useState5","_useState6","isHintVisible","setIsHintVisible","uniqId","safeUseId","innerId","labelId","helperTextId","isDefaultView","isChipEnumeration","isChipsVisible","length","withHasChips","classes","hasChips","undefined","hasLabelValue","hasInnerLabel","hasOuterLabel","hasPlaceholder","innerLabelValue","innerLabelPlacementValue","innerPlaceholderValue","placeholderShown","clearClass","hasDividerClass","hasHintClass","hasHint","requiredPlacementClass","requiredAlignRight","labelPlacementClass","concat","hasValueClass","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","hintRef","useOutsideClick","hintInnerRef","hintForkRef","handleInput","event","target","handleHintShow","handleHintHide","handleHintClick","_hintInnerRef$current","stopPropagation","targetIsPopover","rootHasTarget","contains","handleChange","_event$target","maxLength","updateChips","newChips","newValues","_useKeyNavigation","useKeyNavigation","onEnterDisabled","handleInputKeydown","handleChipKeyDown","onChipClear","handleContentKeyDown","onChipClick","handleInputFocus","scrollTo","top","left","offsetLeft","behavior","focus","getRef","element","index","handleOnKeyDown","useEffect","map","text","_inputRef$current2","innerOptional","hasPlaceholderOptional","optionalTextNode","React","createElement","StyledOptionalText","_extends","onClick","cx","textFieldGroupItem","OuterLabelWrapper","isInnerLabel","StyledIndicatorWrapper","Label","htmlFor","StyledHintWrapper","HintComponent","StyledIndicator","outerLabelPlacement","TitleCaption","InputWrapper","inputWrapperRef","inputWrapper","Fragment","innerLabelPlacement","StyledContentLeft","isClear","InputLabelWrapper","tabIndex","StyledTextBefore","StyledChips","_ref2","chipId","TextFieldChip","key","onClear","_forceChipManipulationWithReadonly","InputContainer","Input","onInput","InputPlaceholder","StyledTextAfter","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","clearCSS","attrs","disabledCSS","readOnlyCSS","labelPlacementCSS","hintViewCSS","hintSizeCSS","defaults"],"mappings":"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"}
package/es/index.css CHANGED
@@ -215,9 +215,9 @@
215
215
 
216
216
  .base_1tcl212_bm1v11h__e2c572a3 .base_1tcl212_s10fscgc__e2c572a3{font-family:var(--plasma-switch-font-family);font-style:var(--plasma-switch-font-style);font-weight:var(--plasma-switch-font-weight);-webkit-letter-spacing:var(--plasma-switch-letter-spacing);-moz-letter-spacing:var(--plasma-switch-letter-spacing);-ms-letter-spacing:var(--plasma-switch-letter-spacing);letter-spacing:var(--plasma-switch-letter-spacing);line-height:var(--plasma-switch-line-height);font-size:var(--plasma-switch-font-size);}.base_1tcl212_bm1v11h__e2c572a3 .base_1tcl212_sdjnckq__e2c572a3{font-family:var(--plasma-switch-description-font-family);font-style:var(--plasma-switch-description-font-style);font-weight:var(--plasma-switch-description-font-weight);-webkit-letter-spacing:var(--plasma-switch-description-letter-spacing);-moz-letter-spacing:var(--plasma-switch-description-letter-spacing);-ms-letter-spacing:var(--plasma-switch-description-letter-spacing);letter-spacing:var(--plasma-switch-description-letter-spacing);line-height:var(--plasma-switch-description-line-height);font-size:var(--plasma-switch-description-font-size);}.base_1tcl212_bm1v11h__e2c572a3 .base_1tcl212_s1ilr5eq__e2c572a3{margin:var(--plasma_private-switch__label-offset,0);}
217
217
 
218
- .base_6i0904_b1wld3h3__fa866566 .base_6i0904_s2cs3kf__fa866566{-webkit-flex:0 0 var(--plasma-switch__track-width);-ms-flex:0 0 var(--plasma-switch__track-width);flex:0 0 var(--plasma-switch__track-width);width:var(--plasma-switch__track-width);height:var(--plasma-switch__track-height);border-radius:var(--plasma-switch__track-border-radius);}.base_6i0904_b1wld3h3__fa866566 .base_6i0904_s2cs3kf__fa866566::after{width:var(--plasma-switch__thumb-size);height:var(--plasma-switch__thumb-size);border-radius:var(--plasma-switch__thumb-border-radius);margin:auto var(--plasma-switch__thumb-offset);}.base_6i0904_b1wld3h3__fa866566:active:not([disabled]) .base_6i0904_s2cs3kf__fa866566::after{width:calc(var(--plasma-switch__thumb-size) * var(--plasma-switch__thumb-scale,1));}
218
+ .base_1d0b3t4_b1wld3h3__ac2a0bcf .base_1d0b3t4_s2cs3kf__ac2a0bcf{box-sizing:border-box;-webkit-flex:0 0 var(--plasma-switch__track-width);-ms-flex:0 0 var(--plasma-switch__track-width);flex:0 0 var(--plasma-switch__track-width);border-style:solid;border-width:var(--plasma-switch__track-border);border-radius:var(--plasma-switch__track-border-radius);width:var(--plasma-switch__track-width);height:var(--plasma-switch__track-height);}.base_1d0b3t4_b1wld3h3__ac2a0bcf .base_1d0b3t4_s2cs3kf__ac2a0bcf::after{width:var(--plasma-switch__thumb-size);height:var(--plasma-switch__thumb-size);border-radius:var(--plasma-switch__thumb-border-radius);margin:auto var(--plasma-switch__thumb-offset);}.base_1d0b3t4_b1wld3h3__ac2a0bcf:active:not([disabled]) .base_1d0b3t4_s2cs3kf__ac2a0bcf::after{width:calc(var(--plasma-switch__thumb-size) * var(--plasma-switch__thumb-scale,1));}
219
219
 
220
- .base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_s2cs3kf__d59e59a0{background-color:var(--plasma-switch__track_checked_false-bg-color);}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_ssthlx1__d59e59a0:not([disabled]) ~ .base_yxkf3s_s2cs3kf__d59e59a0:hover{background-color:var(--plasma-switch__track_checked_false_hovered_true-bg-color,var(--plasma-switch__track_checked_false-bg-color));}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_ssthlx1__d59e59a0:checked ~ .base_yxkf3s_s2cs3kf__d59e59a0{background-color:var(--plasma-switch__track_checked_true-bg-color);}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_ssthlx1__d59e59a0:checked:not([disabled]) ~ .base_yxkf3s_s2cs3kf__d59e59a0:hover{background-color:var(--plasma-switch__track_checked_true_hovered_true-bg-color,var(--plasma-switch__track_checked_true-bg-color));}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_s2cs3kf__d59e59a0::after{background-color:var(--plasma-switch__thumb-bg-color);box-shadow:var(--plasma-switch__thumb-box-shadow);}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_ssthlx1__d59e59a0:checked ~ .base_yxkf3s_s2cs3kf__d59e59a0::after{box-shadow:var(--plasma-switch__thumb-box-shadow_checked_true,var(--plasma-switch__thumb-box-shadow));}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_s1ilr5eq__d59e59a0{color:var(--plasma-switch__label-color);}.base_yxkf3s_b1g0jmh3__d59e59a0 .base_yxkf3s_sdjnckq__d59e59a0{color:var(--plasma-switch__description-color);}
220
+ .base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_s2cs3kf__64acd499{background-color:var(--plasma-switch__track_checked_false-bg-color);border-color:var(--plasma-switch__track-checked_false-border-color);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:not([disabled]) ~ .base_15atbyp_s2cs3kf__64acd499:hover{background-color:var(--plasma-switch__track_checked_false_hovered_true-bg-color,var(--plasma-switch__track_checked_false-bg-color));border-color:var(--plasma-switch__track-checked_false_hovered_true-border-color,var(--plasma-switch__track-checked_false-border-color));}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:checked ~ .base_15atbyp_s2cs3kf__64acd499{background-color:var(--plasma-switch__track_checked_true-bg-color);border-color:var(--plasma-switch__track-checked_true-border-color);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:checked:not([disabled]) ~ .base_15atbyp_s2cs3kf__64acd499:hover{background-color:var(--plasma-switch__track_checked_true_hovered_true-bg-color,var(--plasma-switch__track_checked_true-bg-color));border-color:var(--plasma-switch__track-checked_true_hovered_true-border-color,var(--plasma-switch__track-checked_true-border-color));}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_s2cs3kf__64acd499::after{background-color:var(--plasma-switch__thumb-checked_false-bg-color);box-shadow:var(--plasma-switch__thumb-box-shadow);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:checked ~ .base_15atbyp_s2cs3kf__64acd499::after{background-color:var(--plasma-switch__thumb_checked_true-bg-color);box-shadow:var(--plasma-switch__thumb-box-shadow_checked_true,var(--plasma-switch__thumb-box-shadow));}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_s1ilr5eq__64acd499{color:var(--plasma-switch__label-color);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_sdjnckq__64acd499{color:var(--plasma-switch__description-color);}
221
221
 
222
222
  .base_sz3n0x_bvwxj2r__a36bed54 .base_sz3n0x_s2cs3kf__a36bed54::before{content:'';position:absolute;inset:-0.125rem;display:block;box-sizing:content-box;border-radius:calc(0.125rem + var(--plasma-switch__track-border-radius));border:0.125rem solid transparent;pointer-events:none;-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;}.base_sz3n0x_bvwxj2r__a36bed54 .base_sz3n0x_ssthlx1__a36bed54.base_sz3n0x_focusVisible__a36bed54 ~ .base_sz3n0x_s2cs3kf__a36bed54::before{box-shadow:0 0 0 0.125rem var(--plasma-switch__track-focus-color);}
223
223
 
@@ -11,8 +11,6 @@ var keyCodes = {
11
11
  Space: 32,
12
12
  Escape: 27
13
13
  };
14
- var emailPattern = /^[^\s@]+@([^\s@.,]+\.)+[^\s@.,]{2,}$/;
15
- var specialCharacters = /[!@#$%^&*(),.?":{}|<>]/;
16
14
 
17
- export { emailPattern, keyCodes, specialCharacters };
15
+ export { keyCodes };
18
16
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../src/utils/constants.ts"],"sourcesContent":["export const keyCodes = {\n PageUp: 33,\n PageDown: 34,\n Home: 36,\n End: 35,\n Left: 37,\n Right: 39,\n Up: 38,\n Down: 40,\n Enter: 13,\n Space: 32,\n Escape: 27,\n};\n\nexport const emailPattern = /^[^\\s@]+@([^\\s@.,]+\\.)+[^\\s@.,]{2,}$/;\nexport const specialCharacters = /[!@#$%^&*(),.?\":{}|<>]/;\n"],"names":["keyCodes","PageUp","PageDown","Home","End","Left","Right","Up","Down","Enter","Space","Escape","emailPattern","specialCharacters"],"mappings":"AAAO,IAAMA,QAAQ,GAAG;AACpBC,EAAAA,MAAM,EAAE,EAAE;AACVC,EAAAA,QAAQ,EAAE,EAAE;AACZC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,GAAG,EAAE,EAAE;AACPC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,EAAE,EAAE,EAAE;AACNC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,MAAM,EAAE,EAAA;AACZ,EAAC;AAEM,IAAMC,YAAY,GAAG,uCAAsC;AAC3D,IAAMC,iBAAiB,GAAG;;;;"}
1
+ {"version":3,"file":"constants.js","sources":["../../src/utils/constants.ts"],"sourcesContent":["export const keyCodes = {\n PageUp: 33,\n PageDown: 34,\n Home: 36,\n End: 35,\n Left: 37,\n Right: 39,\n Up: 38,\n Down: 40,\n Enter: 13,\n Space: 32,\n Escape: 27,\n};\n"],"names":["keyCodes","PageUp","PageDown","Home","End","Left","Right","Up","Down","Enter","Space","Escape"],"mappings":"AAAO,IAAMA,QAAQ,GAAG;AACpBC,EAAAA,MAAM,EAAE,EAAE;AACVC,EAAAA,QAAQ,EAAE,EAAE;AACZC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,GAAG,EAAE,EAAE;AACPC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,EAAE,EAAE,EAAE;AACNC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,KAAK,EAAE,EAAE;AACTC,EAAAA,MAAM,EAAE,EAAA;AACZ;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.194.0-canary.1565.11870784206.0",
3
+ "version": "0.194.0-canary.1568.11891833298.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -128,5 +128,5 @@
128
128
  "sideEffects": [
129
129
  "*.css"
130
130
  ],
131
- "gitHead": "a115c361e7d369974acc59964bb9cfb72fa74bf5"
131
+ "gitHead": "cefe6714d8c07097e31273c50d13370ae9b222b9"
132
132
  }
@@ -0,0 +1,184 @@
1
+ ---
2
+ id: card
3
+ title: Card
4
+ ---
5
+
6
+ отличия от https://plasma.sberdevices.ru/b2c/components/card/:
7
+ * избавляемся от CardBody
8
+ * убираем дублирование disabled
9
+
10
+ примеры дизайна https://www.figma.com/design/MXl0ZkXEqEhIFDS2H6b3yk/StarDS-Cards?node-id=2-690&node-type=instance&t=TJN8Nqyiky3Dfw2T-0
11
+
12
+ другие либы:
13
+ https://ant.design/components/card#
14
+ https://mui.com/material-ui/react-card/
15
+
16
+ ```tsx live
17
+ import React, { ReactNode } from "react";
18
+
19
+ /**
20
+ * Набор часто встречающихся скруглений.
21
+ */
22
+
23
+ export const radiuses = {
24
+ 250: 15.625,
25
+ 32: 2,
26
+ 28: 1.75,
27
+ 24: 1.5,
28
+ 20: 1.25,
29
+ 18: 1.125,
30
+ 16: 1,
31
+ 14: 0.875,
32
+ 12: 0.75,
33
+ 8: 0.5,
34
+ 0: 0,
35
+ };
36
+
37
+ export type Roundness = keyof typeof radiuses;
38
+
39
+ export interface RoundnessProps {
40
+ /** Скругленность */
41
+ roundness: Roundness;
42
+ }
43
+
44
+ interface Card {
45
+ /** Компонент в фокусе */
46
+ focused?: boolean;
47
+ /** Увеличение по фокусу */
48
+ scaleOnFocus?: boolean;
49
+ /** Компонент неактивен */
50
+ disabled?: boolean;
51
+ /** Добавить рамку при фокусе */
52
+ outlined?: boolean;
53
+ /** Цвет подложки */
54
+ background?: string;
55
+ /** Делает карточку квадратной */
56
+ square?: boolean;
57
+ /** Заголовок */
58
+ title?: string | ReactNode;
59
+ /** Подзаголовок */
60
+ subtitle?: string | ReactNode;
61
+ /** Расположение заголовка и подзаголовка, пока нет в дизайне */
62
+ titlePlacement?: "inner" | "outer";
63
+ /** Выравнивание заголовка и подзаголовка */
64
+ titleAlign?: "left" | "center";
65
+ /** Подвал, или вынести в
66
+ * <CardContent footer={<CardTimeline />} /> или <CardFooter><CardTimeline /></CardFooter>
67
+ * */
68
+ footer?: ReactNode;
69
+ }
70
+
71
+ const ratios = {
72
+ "1 / 1": "100",
73
+ "1/1": "100",
74
+ "3 / 4": "133.3333",
75
+ "3/4": "133.3333",
76
+ "4 / 3": "75",
77
+ "4/3": "75",
78
+ "9 / 16": "177.7778",
79
+ "9/16": "177.7778",
80
+ "16 / 9": "56.25",
81
+ "16/9": "56.25",
82
+ "1 / 2": "200",
83
+ "1/2": "200",
84
+ "2 / 1": "50",
85
+ "2/1": "50",
86
+ };
87
+
88
+ export type Ratio = keyof typeof ratios;
89
+
90
+ /**
91
+ * CardMedia из текущей реализации
92
+ * Стоит ли заменить пропсом `cover?: ReactNode;` в Card как в Ant?
93
+ * а width и height передавать в style...
94
+ *
95
+ * имхо, нет. у Card может быть title и subtitle под карточкой
96
+ * скорее всего, на них свойство height не должно распространяться
97
+ * стоит подождать финальный дизайн
98
+ */
99
+ interface CardMedia {
100
+ base?: "img" | "div";
101
+ height?: string | number;
102
+ ratio?: Ratio;
103
+ customRatio?: string;
104
+ }
105
+
106
+ interface CardContent {
107
+ topLeft?: string | ReactNode;
108
+ topRight?: string | ReactNode;
109
+ bottomLeft?: string | ReactNode;
110
+ bottomRight?: string | ReactNode;
111
+ children?: ReactNode;
112
+ }
113
+
114
+ /** или */
115
+ interface CardContent {
116
+ placement?: "top-left" | "top-right" | "bottom-left" | "bottom-right";
117
+ children?: ReactNode;
118
+ }
119
+
120
+ interface CardTimeline {
121
+ /**
122
+ * Описание, например время до конца фильма. Возможно,
123
+ * не нужно и стоит указывать bottomRight контент
124
+ */
125
+ text?: string;
126
+ progress?: string | number;
127
+ /**
128
+ * Не увеличивать высоту карточки
129
+ * @default true
130
+ */
131
+ inline?: boolean;
132
+ }
133
+ ```
134
+
135
+ ```tsx live
136
+ <Card title="Title" subtitle="Subtitle">
137
+ <CardContent placement="top-left">
138
+ <SomeIcon />
139
+ </CardContent>
140
+ <CardContent placement="top-right">
141
+ <SaveButton saved={isSaved} />
142
+ </CardContent>
143
+ <CardContent placement="bottom-right">18+</CardContent>
144
+ </Card>;
145
+
146
+ <Card title="Title" subtitle="Subtitle">
147
+ <CardContent
148
+ topLeft={<SomeIcon />}
149
+ topRight={<SaveButton saved={isSaved} />}
150
+ bottomRight="18+"
151
+ />
152
+ </Card>;
153
+
154
+ <Card title="Title" subtitle="Subtitle">
155
+ <CardMedia src={someSrc} alt="trailer" />
156
+ <CardContent
157
+ topLeft={<SomeIcon />}
158
+ topRight={<SaveButton saved={isSaved} />}
159
+ bottomRight="18+"
160
+ />
161
+ <CardTimeline text="еще 1ч 23мин" progress={56} />
162
+ </Card>;
163
+
164
+ <Card title="Title" subtitle="Subtitle">
165
+ <CardContent topLeft={<SomeIcon />} topRight={<SaveButton saved={isSaved} />}>
166
+ <CardMedia src={someSrc} alt="trailer" />
167
+ </CardContent>
168
+ <CardTimeline text="еще 1ч 23мин" progress={56} />
169
+ </Card>;
170
+
171
+ <Card
172
+ title="Title"
173
+ subtitle="Subtitle"
174
+ // как в ant, но кажется, что так менее гибко
175
+ cover={<CardMedia src={someSrc} alt="trailer" />}
176
+ square
177
+ >
178
+ <CardContent
179
+ topLeft={<SomeIcon />}
180
+ topRight={<SaveButton saved={isSaved} />}
181
+ />
182
+ <CardTimeline text="еще 1ч 23мин" progress={56} />
183
+ </Card>;
184
+ ```
@@ -29,6 +29,11 @@ var tokens = exports.tokens = {
29
29
  verticalGap: '--plasma-switch-vertical-gap',
30
30
  trackWidth: '--plasma-switch__track-width',
31
31
  trackHeight: '--plasma-switch__track-height',
32
+ trackBorderWidth: '--plasma-switch__track-border',
33
+ trackBorderColorOn: '--plasma-switch__track-checked_true-border-color',
34
+ trackBorderColorOnHover: '--plasma-switch__track-checked_true_hovered_true-border-color',
35
+ trackBorderColorOff: '--plasma-switch__track-checked_false-border-color',
36
+ trackBorderColorOffHover: '--plasma-switch__track-checked_false_hovered_true-border-color',
32
37
  trackBorderRadius: '--plasma-switch__track-border-radius',
33
38
  // NOTE: could be intersection with checked
34
39
  trackBackgroundColorOn: '--plasma-switch__track_checked_true-bg-color',
@@ -40,7 +45,8 @@ var tokens = exports.tokens = {
40
45
  thumbOffset: '--plasma-switch__thumb-offset',
41
46
  thumbBorderRadius: '--plasma-switch__thumb-border-radius',
42
47
  thumbPressScale: '--plasma-switch__thumb-scale',
43
- thumbBackgroundColor: '--plasma-switch__thumb-bg-color',
48
+ thumbBackgroundColorOn: '--plasma-switch__thumb_checked_true-bg-color',
49
+ thumbBackgroundColorOff: '--plasma-switch__thumb-checked_false-bg-color',
44
50
  thumbBoxShadow: '--plasma-switch__thumb-box-shadow',
45
51
  thumbBoxShadowOn: '--plasma-switch__thumb-box-shadow_checked_true',
46
52
  labelOffsetPrivate: '--plasma_private-switch__label-offset'
@@ -7,4 +7,4 @@ exports.base = void 0;
7
7
  var _styledComponents = /*#__PURE__*/require("styled-components");
8
8
  var _Switch = /*#__PURE__*/require("../Switch.tokens");
9
9
  var _Switch2 = /*#__PURE__*/require("../Switch.styles");
10
- var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["", "{flex:0 0 var(", ");width:var(", ");height:var(", ");border-radius:var(", ");&::after{width:var(", ");height:var(", ");border-radius:var(", ");margin:auto var(", ");}}:active:not([disabled]) ", "::after{width:calc(var(", ") * var(", ",1));}"], _Switch2.StyledTrigger, _Switch.tokens.trackWidth, _Switch.tokens.trackWidth, _Switch.tokens.trackHeight, _Switch.tokens.trackBorderRadius, _Switch.tokens.thumbSize, _Switch.tokens.thumbSize, _Switch.tokens.thumbBorderRadius, _Switch.tokens.thumbOffset, _Switch2.StyledTrigger, _Switch.tokens.thumbSize, _Switch.tokens.thumbPressScale);
10
+ var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["", "{box-sizing:border-box;flex:0 0 var(", ");border-style:solid;border-width:var(", ");border-radius:var(", ");width:var(", ");height:var(", ");&::after{width:var(", ");height:var(", ");border-radius:var(", ");margin:auto var(", ");}}:active:not([disabled]) ", "::after{width:calc(var(", ") * var(", ",1));}"], _Switch2.StyledTrigger, _Switch.tokens.trackWidth, _Switch.tokens.trackBorderWidth, _Switch.tokens.trackBorderRadius, _Switch.tokens.trackWidth, _Switch.tokens.trackHeight, _Switch.tokens.thumbSize, _Switch.tokens.thumbSize, _Switch.tokens.thumbBorderRadius, _Switch.tokens.thumbOffset, _Switch2.StyledTrigger, _Switch.tokens.thumbSize, _Switch.tokens.thumbPressScale);
@@ -7,4 +7,4 @@ exports.base = void 0;
7
7
  var _styledComponents = /*#__PURE__*/require("styled-components");
8
8
  var _Switch = /*#__PURE__*/require("../Switch.tokens");
9
9
  var _Switch2 = /*#__PURE__*/require("../Switch.styles");
10
- var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["", "{background-color:var(", ");}", ":not([disabled]) ~ ", ":hover{background-color:var(", ",var(", "));}", ":checked ~ ", "{background-color:var(", ");}", ":checked:not([disabled]) ~ ", ":hover{background-color:var(", ",var(", "));}", "::after{background-color:var(", ");box-shadow:var(", ");}", ":checked ~ ", "::after{box-shadow:var(", ",var(", "));}", "{color:var(", ");}", "{color:var(", ");}"], _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOff, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOffHover, _Switch.tokens.trackBackgroundColorOff, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOn, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOnHover, _Switch.tokens.trackBackgroundColorOn, _Switch2.StyledTrigger, _Switch.tokens.thumbBackgroundColor, _Switch.tokens.thumbBoxShadow, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.thumbBoxShadowOn, _Switch.tokens.thumbBoxShadow, _Switch2.StyledLabel, _Switch.tokens.labelColor, _Switch2.StyledDescription, _Switch.tokens.descriptionColor);
10
+ var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["", "{background-color:var(", ");border-color:var(", ");}", ":not([disabled]) ~ ", ":hover{background-color:var(", ",var(", "));border-color:var(", ",var(", "));}", ":checked ~ ", "{background-color:var(", ");border-color:var(", ");}", ":checked:not([disabled]) ~ ", ":hover{background-color:var(", ",var(", "));border-color:var(", ",var(", "));}", "::after{background-color:var(", ");box-shadow:var(", ");}", ":checked ~ ", "::after{background-color:var(", ");box-shadow:var(", ",var(", "));}", "{color:var(", ");}", "{color:var(", ");}"], _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOff, _Switch.tokens.trackBorderColorOff, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOffHover, _Switch.tokens.trackBackgroundColorOff, _Switch.tokens.trackBorderColorOffHover, _Switch.tokens.trackBorderColorOff, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOn, _Switch.tokens.trackBorderColorOn, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.trackBackgroundColorOnHover, _Switch.tokens.trackBackgroundColorOn, _Switch.tokens.trackBorderColorOnHover, _Switch.tokens.trackBorderColorOn, _Switch2.StyledTrigger, _Switch.tokens.thumbBackgroundColorOff, _Switch.tokens.thumbBoxShadow, _Switch2.StyledInput, _Switch2.StyledTrigger, _Switch.tokens.thumbBackgroundColorOn, _Switch.tokens.thumbBoxShadowOn, _Switch.tokens.thumbBoxShadow, _Switch2.StyledLabel, _Switch.tokens.labelColor, _Switch2.StyledDescription, _Switch.tokens.descriptionColor);
@@ -23,7 +23,7 @@ var _TextField2 = /*#__PURE__*/require("./TextField.tokens");
23
23
  var _ui = /*#__PURE__*/require("./ui");
24
24
  var _hooks2 = /*#__PURE__*/require("./hooks");
25
25
  var _Hint = /*#__PURE__*/require("./ui/Hint/Hint");
26
- var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "textBefore", "textAfter", "placeholder", "leftHelper", "enumerationType", "requiredPlacement", "titleCaption", "hintTrigger", "hintText", "hintView", "hintSize", "hintTargetIcon", "hintPlacement", "hintHasArrow", "hintOffset", "hintWidth", "hintContentLeft", "view", "size", "readOnly", "disabled", "required", "clear", "optional", "hasDivider", "value", "chips", "validationType", "options", "passwordHidden", "onValidate", "onChange", "onBlur", "onChangeChips", "onSearch", "onKeyDown"];
26
+ var _excluded = ["id", "className", "style", "contentLeft", "contentRight", "label", "labelPlacement", "textBefore", "textAfter", "placeholder", "leftHelper", "enumerationType", "requiredPlacement", "titleCaption", "hintTrigger", "hintText", "hintView", "hintSize", "hintTargetIcon", "hintPlacement", "hintHasArrow", "hintOffset", "hintWidth", "hintContentLeft", "view", "size", "readOnly", "disabled", "required", "clear", "optional", "hasDivider", "value", "chips", "onChange", "onChangeChips", "onSearch", "onKeyDown"];
27
27
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
28
28
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
29
29
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -86,12 +86,7 @@ var textFieldRoot = exports.textFieldRoot = function textFieldRoot(Root) {
86
86
  hasDivider = _ref.hasDivider,
87
87
  outerValue = _ref.value,
88
88
  values = _ref.chips,
89
- validationType = _ref.validationType,
90
- options = _ref.options,
91
- passwordHidden = _ref.passwordHidden,
92
- onValidate = _ref.onValidate,
93
89
  onChange = _ref.onChange,
94
- onBlur = _ref.onBlur,
95
90
  onChangeChips = _ref.onChangeChips,
96
91
  onSearch = _ref.onSearch,
97
92
  onKeyDown = _ref.onKeyDown,
@@ -141,7 +136,6 @@ var textFieldRoot = exports.textFieldRoot = function textFieldRoot(Root) {
141
136
  var hasValueClass = hasValue ? _TextField2.classes.hasValue : undefined;
142
137
  var wrapperWithoutLeftContent = !contentLeft && isChipsVisible ? _TextField2.classes.hasEmptyContentLeft : undefined;
143
138
  var wrapperWithoutRightContent = !contentRight && isChipsVisible ? _TextField2.classes.hasEmptyContentRight : undefined;
144
- var isPasswordHidden = validationType === 'password' && passwordHidden;
145
139
  var hintRef = (0, _hooks.useOutsideClick)(function () {
146
140
  setIsHintVisible(false);
147
141
  });
@@ -184,13 +178,6 @@ var textFieldRoot = exports.textFieldRoot = function textFieldRoot(Root) {
184
178
  setChips(newChips);
185
179
  onChangeChips === null || onChangeChips === void 0 || onChangeChips(newValues);
186
180
  };
187
- var _useValidation = (0, _hooks2.useValidation)({
188
- validationType: validationType,
189
- options: options,
190
- onValidate: onValidate
191
- }),
192
- handleValidationBlur = _useValidation.handleValidationBlur,
193
- handleValidationKeyDown = _useValidation.handleValidationKeyDown;
194
181
  var _useKeyNavigation = (0, _hooks2.useKeyNavigation)({
195
182
  controlledRefs: controlledRefs,
196
183
  disabled: disabled,
@@ -220,12 +207,6 @@ var textFieldRoot = exports.textFieldRoot = function textFieldRoot(Root) {
220
207
  });
221
208
  inputRef.current.focus();
222
209
  };
223
- var handleInputBlur = function handleInputBlur(event) {
224
- if (onBlur) {
225
- onBlur(event);
226
- }
227
- handleValidationBlur(event);
228
- };
229
210
  var getRef = function getRef(element, index) {
230
211
  if (element && chipsRefs !== null && chipsRefs !== void 0 && chipsRefs.current) {
231
212
  chipsRefs.current[index] = element;
@@ -233,7 +214,6 @@ var textFieldRoot = exports.textFieldRoot = function textFieldRoot(Root) {
233
214
  };
234
215
  var handleOnKeyDown = function handleOnKeyDown(event) {
235
216
  handleInputKeydown(event);
236
- handleValidationKeyDown(event);
237
217
  if (onKeyDown) {
238
218
  onKeyDown(event);
239
219
  }
@@ -367,11 +347,8 @@ var textFieldRoot = exports.textFieldRoot = function textFieldRoot(Root) {
367
347
  readOnly: !disabled && readOnly,
368
348
  onInput: handleInput,
369
349
  onChange: handleChange,
370
- onKeyDown: handleOnKeyDown,
371
- onBlur: handleInputBlur
372
- }, rest, isPasswordHidden && {
373
- type: 'password'
374
- })), hasInnerLabel && /*#__PURE__*/_react["default"].createElement(_TextField.Label, {
350
+ onKeyDown: handleOnKeyDown
351
+ }, rest)), hasInnerLabel && /*#__PURE__*/_react["default"].createElement(_TextField.Label, {
375
352
  id: labelId,
376
353
  htmlFor: innerId
377
354
  }, innerLabelValue, optionalTextNode), placeholderShown && !hasValue && /*#__PURE__*/_react["default"].createElement(_TextField.InputPlaceholder, null, innerPlaceholderValue, hasPlaceholderOptional && optionalTextNode)), textAfter && /*#__PURE__*/_react["default"].createElement(_TextField.StyledTextAfter, null, textAfter)), contentRight && /*#__PURE__*/_react["default"].createElement(_TextField.StyledContentRight, null, contentRight)), leftHelper && /*#__PURE__*/_react["default"].createElement(_TextField.LeftHelper, {