@salutejs/plasma-new-hope 0.327.0-canary.1973.15677961605.0 → 0.327.0-canary.1973.15679545656.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23,7 +23,7 @@ var React__default = /*#__PURE__*/_interopDefault(React);
23
23
  var cls__default = /*#__PURE__*/_interopDefault(cls);
24
24
 
25
25
  var _Separator;
26
- var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "screen", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
26
+ var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
27
27
  var codeInputRoot = function codeInputRoot(Root) {
28
28
  return /*#__PURE__*/React.forwardRef(function (_ref, ref) {
29
29
  var className = _ref.className,
@@ -38,8 +38,6 @@ var codeInputRoot = function codeInputRoot(Root) {
38
38
  width = _ref.width,
39
39
  view = _ref.view,
40
40
  size = _ref.size,
41
- _ref$screen = _ref.screen,
42
- screen = _ref$screen === void 0 ? 'medium' : _ref$screen,
43
41
  hidden = _ref.hidden,
44
42
  disabled = _ref.disabled,
45
43
  isError = _ref.isError,
@@ -231,7 +229,6 @@ var codeInputRoot = function codeInputRoot(Root) {
231
229
  view: view,
232
230
  size: size,
233
231
  disabled: disabled,
234
- screen: screen,
235
232
  onClick: handleClick,
236
233
  className: cls__default.default(className, _rollupPluginBabelHelpers.defineProperty({}, CodeInput_tokens.classes.captionAlignLeft, captionAlign === 'left'))
237
234
  }, rest), /*#__PURE__*/React__default.default.createElement(CodeInput_styles.CodeWrapper, {
@@ -1 +1 @@
1
- {"version":3,"file":"CodeInput.js","sources":["../../../src/components/CodeInput/CodeInput.tsx"],"sourcesContent":["import React, { forwardRef, Fragment, useCallback, useEffect, useRef, useState } from 'react';\nimport cls from 'classnames';\nimport type { ChangeEvent, KeyboardEvent, ClipboardEvent } from 'react';\nimport type { RootProps } from 'src/engines';\nimport { useDidMountEffect } from 'src/hooks';\nimport { getSizeValueFromProp } from 'src/utils';\n\nimport type { CodeInputProps } from './CodeInput.types';\nimport { BACKSPACE_KEY, FORBIDDEN_KEYS, ONLY_DIGITS_PATTERN } from './utils/constants';\nimport { getCodeValue, getFieldPattern, getPlaceholderValue, handleCodeError, handleItemError } from './utils';\nimport { classes } from './CodeInput.tokens';\nimport {\n base,\n CaptionWrapper,\n CodeGroup,\n CodeWrapper,\n ItemInput,\n Separator,\n ItemWrapper,\n ItemCircle,\n} from './CodeInput.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const codeInputRoot = (Root: RootProps<HTMLDivElement, CodeInputProps>) =>\n forwardRef<HTMLInputElement, CodeInputProps>(\n (\n {\n className,\n value: outerValue,\n placeholder,\n autoFocus,\n codeLength = 6,\n caption,\n captionAlign = 'left',\n width,\n view,\n size,\n screen = 'medium',\n hidden,\n disabled,\n isError,\n allowedSymbols = ONLY_DIGITS_PATTERN,\n itemErrorBehavior = 'remove-symbol',\n codeErrorBehavior = 'remove-code',\n autoComplete = 'one-time-code',\n setIsError,\n onChange,\n onFullCodeEnter,\n ...rest\n },\n ref,\n ) => {\n const [code, setCode] = useState<Array<string>>(getCodeValue(codeLength, outerValue || ''));\n const [originalValue, setOriginalValue] = useState<string>(code.join(''));\n\n const inputRefs = useRef<Array<HTMLInputElement>>([]);\n const inputContainerRef = useRef<HTMLDivElement | null>(null);\n const captionRef = useRef<HTMLDivElement | null>(null);\n\n const fieldPattern = getFieldPattern(allowedSymbols);\n const placeholderValue = getPlaceholderValue(codeLength, placeholder);\n const parts = codeLength === 6 ? 2 : 1;\n\n const widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;\n\n const getLastActiveIndex = () => {\n if (code.length && code.length < codeLength) {\n return code.length;\n }\n\n const lastEmptyIndex = code.findIndex((digit) => digit === '');\n return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n\n const lastActiveIndex = getLastActiveIndex();\n\n if (inputRefs.current[lastActiveIndex]) {\n inputRefs.current[lastActiveIndex].focus();\n }\n };\n\n const handleOnKeyDown = (\n event: KeyboardEvent<HTMLInputElement | HTMLDivElement>,\n index: number,\n type?: 'circle',\n ) => {\n if (disabled) {\n return;\n }\n\n const { key } = event;\n if (FORBIDDEN_KEYS.includes(key)) {\n event.preventDefault();\n return;\n }\n\n if (key === BACKSPACE_KEY) {\n if (index > 0 && code[index] === '') {\n inputRefs.current[index - 1]?.focus();\n }\n }\n\n if (type === 'circle') {\n handleAddSymbol(key, index);\n inputRefs.current[index]?.focus();\n }\n };\n\n const codeSetter = (newCode: Array<string>) => {\n setCode(newCode);\n setOriginalValue(newCode.join(''));\n\n if (onChange) {\n onChange(newCode.join(''));\n }\n };\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const rawSymbol = event.currentTarget.value;\n const symbol = rawSymbol.charAt(rawSymbol.length - 1);\n handleAddSymbol(symbol, index);\n };\n\n const handleAddSymbol = (symbol: string, index: number) => {\n const newCode = [...code];\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n if (isError) {\n captionRef.current?.classList.remove(classes.captionError);\n\n if (codeErrorBehavior === 'keep') {\n inputContainerRef.current?.classList.remove(classes.codeError, classes.codeErrorAnimation);\n }\n\n if (setIsError) {\n setIsError(false);\n }\n }\n\n if (!fieldPattern) {\n newCode[index] = symbol;\n codeSetter(newCode);\n\n if (symbol && index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n return;\n }\n\n if (!symbol) {\n newCode[index] = '';\n codeSetter(newCode);\n\n return;\n }\n\n if (fieldPattern.test(symbol)) {\n newCode[index] = symbol.charAt(symbol.length - 1);\n codeSetter(newCode);\n\n if (index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n } else {\n newCode[index] = symbol.charAt(symbol.length - 1);\n\n handleItemError({\n currentSymbol: symbol,\n itemErrorBehavior,\n index,\n newCode,\n inputRefs,\n inputContainerRef,\n codeSetter,\n });\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {\n const newCode = [...code];\n\n if (disabled) {\n return;\n }\n\n event.preventDefault();\n\n const rawData = event.clipboardData.getData('text/plain');\n\n const pastedData = (fieldPattern\n ? rawData\n .split('')\n .map((symb) => symb.match(fieldPattern)?.[0] || '')\n .filter(Boolean) || []\n : rawData.split('')\n ).slice(0, codeLength);\n\n pastedData.forEach((element, index) => {\n newCode[index] = element;\n });\n\n const activeIndex = Math.min(pastedData.length, codeLength - 1);\n inputRefs.current[activeIndex]?.focus();\n\n codeSetter(newCode);\n };\n\n const handleFullCodeEnter = useCallback((fullCode: string) => {\n if (onFullCodeEnter) {\n onFullCodeEnter(fullCode);\n }\n }, []);\n\n useEffect(() => {\n inputRefs.current = inputRefs.current.slice(0, codeLength);\n }, [codeLength]);\n\n useEffect(() => {\n if (autoFocus && !disabled) {\n const lastActiveIndex = getLastActiveIndex();\n\n inputRefs.current[lastActiveIndex]?.focus();\n }\n }, [autoFocus]);\n\n useDidMountEffect(() => {\n if (handleFullCodeEnter && originalValue.length === codeLength) {\n handleFullCodeEnter(originalValue);\n }\n }, [originalValue, handleFullCodeEnter]);\n\n useDidMountEffect(() => {\n if (isError) {\n handleCodeError({\n codeLength,\n codeErrorBehavior,\n currentCode: code,\n inputRefs,\n inputContainerRef,\n captionRef,\n setCode,\n codeSetter,\n });\n }\n }, [isError]);\n\n return (\n <Root\n ref={ref}\n view={view}\n size={size}\n disabled={disabled}\n screen={screen}\n onClick={handleClick}\n className={cls(className, {\n [classes.captionAlignLeft]: captionAlign === 'left',\n })}\n {...rest}\n >\n <CodeWrapper ref={inputContainerRef}>\n {[...Array(parts)].map((_, partIndex) => (\n <Fragment key={partIndex}>\n <CodeGroup role=\"group\">\n {[...Array(codeLength / parts)].map((_, i) => {\n const inputCorrectIndex = i + (codeLength / parts) * partIndex;\n\n return (\n <ItemWrapper key={partIndex + i + partIndex * i}>\n {(!code[inputCorrectIndex] ||\n (!!code[inputCorrectIndex] && hidden)) && (\n <ItemCircle\n role=\"tab\"\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n onKeyDown={(e: KeyboardEvent<HTMLDivElement>) => {\n handleOnKeyDown(e, inputCorrectIndex, 'circle');\n }}\n className={cls([\n !!code[inputCorrectIndex] && hidden\n ? classes.itemCirlceFilled\n : '',\n `${classes.itemCircle}-${inputCorrectIndex}`,\n ])}\n />\n )}\n <ItemInput\n ref={(element: HTMLInputElement) => {\n inputRefs.current[inputCorrectIndex] = element;\n }}\n className={cls({\n [classes.hoverEnabled]:\n inputCorrectIndex >= originalValue.length,\n })}\n hide={hidden}\n value={code[inputCorrectIndex] || ''}\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n autoComplete={autoComplete}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n handleChange(e, inputCorrectIndex);\n }}\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n handleOnKeyDown(e, inputCorrectIndex);\n }}\n onPaste={handlePaste}\n {...(placeholderValue && {\n placeholder: placeholderValue[inputCorrectIndex],\n })}\n />\n </ItemWrapper>\n );\n })}\n </CodeGroup>\n {partIndex !== parts - 1 && <Separator />}\n </Fragment>\n ))}\n </CodeWrapper>\n {caption && (\n <CaptionWrapper ref={captionRef} captionAlign={captionAlign} widthValue={widthValue}>\n {caption}\n </CaptionWrapper>\n )}\n </Root>\n );\n },\n );\n\nexport const codeInputConfig = {\n name: 'CodeInput',\n tag: 'div',\n layout: codeInputRoot,\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 },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["codeInputRoot","Root","forwardRef","_ref","ref","className","outerValue","value","placeholder","autoFocus","_ref$codeLength","codeLength","caption","_ref$captionAlign","captionAlign","width","view","size","_ref$screen","screen","hidden","disabled","isError","_ref$allowedSymbols","allowedSymbols","ONLY_DIGITS_PATTERN","_ref$itemErrorBehavio","itemErrorBehavior","_ref$codeErrorBehavio","codeErrorBehavior","_ref$autoComplete","autoComplete","setIsError","onChange","onFullCodeEnter","rest","_objectWithoutProperties","_excluded","_useState","useState","getCodeValue","_useState2","_slicedToArray","code","setCode","_useState3","join","_useState4","originalValue","setOriginalValue","inputRefs","useRef","inputContainerRef","captionRef","fieldPattern","getFieldPattern","placeholderValue","getPlaceholderValue","parts","widthValue","getSizeValueFromProp","undefined","getLastActiveIndex","length","lastEmptyIndex","findIndex","digit","handleClick","lastActiveIndex","current","focus","handleOnKeyDown","event","index","type","key","FORBIDDEN_KEYS","includes","preventDefault","BACKSPACE_KEY","_inputRefs$current","_inputRefs$current$in","handleAddSymbol","codeSetter","newCode","handleChange","rawSymbol","currentTarget","symbol","charAt","_inputRefs$current$in2","_toConsumableArray","classList","remove","classes","itemError","_captionRef$current","captionError","_inputContainerRef$cu","codeError","codeErrorAnimation","_inputRefs$current2","test","_inputRefs$current3","handleItemError","currentSymbol","handlePaste","_inputRefs$current$ac","rawData","clipboardData","getData","pastedData","split","map","symb","_symb$match","match","filter","Boolean","slice","forEach","element","activeIndex","Math","min","handleFullCodeEnter","useCallback","fullCode","useEffect","_inputRefs$current$la","useDidMountEffect","handleCodeError","currentCode","React","createElement","_extends","onClick","cls","_defineProperty","captionAlignLeft","CodeWrapper","Array","_","partIndex","Fragment","CodeGroup","role","i","inputCorrectIndex","ItemWrapper","ItemCircle","tabIndex","onKeyDown","e","itemCirlceFilled","concat","itemCircle","ItemInput","hoverEnabled","hide","onPaste","_Separator","Separator","CaptionWrapper","codeInputConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"CodeInput.js","sources":["../../../src/components/CodeInput/CodeInput.tsx"],"sourcesContent":["import React, { forwardRef, Fragment, useCallback, useEffect, useRef, useState } from 'react';\nimport cls from 'classnames';\nimport type { ChangeEvent, KeyboardEvent, ClipboardEvent } from 'react';\nimport type { RootProps } from 'src/engines';\nimport { useDidMountEffect } from 'src/hooks';\nimport { getSizeValueFromProp } from 'src/utils';\n\nimport type { CodeInputProps } from './CodeInput.types';\nimport { BACKSPACE_KEY, FORBIDDEN_KEYS, ONLY_DIGITS_PATTERN } from './utils/constants';\nimport { getCodeValue, getFieldPattern, getPlaceholderValue, handleCodeError, handleItemError } from './utils';\nimport { classes } from './CodeInput.tokens';\nimport {\n base,\n CaptionWrapper,\n CodeGroup,\n CodeWrapper,\n ItemInput,\n Separator,\n ItemWrapper,\n ItemCircle,\n} from './CodeInput.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const codeInputRoot = (Root: RootProps<HTMLDivElement, CodeInputProps>) =>\n forwardRef<HTMLInputElement, CodeInputProps>(\n (\n {\n className,\n value: outerValue,\n placeholder,\n autoFocus,\n codeLength = 6,\n caption,\n captionAlign = 'left',\n width,\n view,\n size,\n hidden,\n disabled,\n isError,\n allowedSymbols = ONLY_DIGITS_PATTERN,\n itemErrorBehavior = 'remove-symbol',\n codeErrorBehavior = 'remove-code',\n autoComplete = 'one-time-code',\n setIsError,\n onChange,\n onFullCodeEnter,\n ...rest\n },\n ref,\n ) => {\n const [code, setCode] = useState<Array<string>>(getCodeValue(codeLength, outerValue || ''));\n const [originalValue, setOriginalValue] = useState<string>(code.join(''));\n\n const inputRefs = useRef<Array<HTMLInputElement>>([]);\n const inputContainerRef = useRef<HTMLDivElement | null>(null);\n const captionRef = useRef<HTMLDivElement | null>(null);\n\n const fieldPattern = getFieldPattern(allowedSymbols);\n const placeholderValue = getPlaceholderValue(codeLength, placeholder);\n const parts = codeLength === 6 ? 2 : 1;\n\n const widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;\n\n const getLastActiveIndex = () => {\n if (code.length && code.length < codeLength) {\n return code.length;\n }\n\n const lastEmptyIndex = code.findIndex((digit) => digit === '');\n return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n\n const lastActiveIndex = getLastActiveIndex();\n\n if (inputRefs.current[lastActiveIndex]) {\n inputRefs.current[lastActiveIndex].focus();\n }\n };\n\n const handleOnKeyDown = (\n event: KeyboardEvent<HTMLInputElement | HTMLDivElement>,\n index: number,\n type?: 'circle',\n ) => {\n if (disabled) {\n return;\n }\n\n const { key } = event;\n if (FORBIDDEN_KEYS.includes(key)) {\n event.preventDefault();\n return;\n }\n\n if (key === BACKSPACE_KEY) {\n if (index > 0 && code[index] === '') {\n inputRefs.current[index - 1]?.focus();\n }\n }\n\n if (type === 'circle') {\n handleAddSymbol(key, index);\n inputRefs.current[index]?.focus();\n }\n };\n\n const codeSetter = (newCode: Array<string>) => {\n setCode(newCode);\n setOriginalValue(newCode.join(''));\n\n if (onChange) {\n onChange(newCode.join(''));\n }\n };\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const rawSymbol = event.currentTarget.value;\n const symbol = rawSymbol.charAt(rawSymbol.length - 1);\n handleAddSymbol(symbol, index);\n };\n\n const handleAddSymbol = (symbol: string, index: number) => {\n const newCode = [...code];\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n if (isError) {\n captionRef.current?.classList.remove(classes.captionError);\n\n if (codeErrorBehavior === 'keep') {\n inputContainerRef.current?.classList.remove(classes.codeError, classes.codeErrorAnimation);\n }\n\n if (setIsError) {\n setIsError(false);\n }\n }\n\n if (!fieldPattern) {\n newCode[index] = symbol;\n codeSetter(newCode);\n\n if (symbol && index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n return;\n }\n\n if (!symbol) {\n newCode[index] = '';\n codeSetter(newCode);\n\n return;\n }\n\n if (fieldPattern.test(symbol)) {\n newCode[index] = symbol.charAt(symbol.length - 1);\n codeSetter(newCode);\n\n if (index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n } else {\n newCode[index] = symbol.charAt(symbol.length - 1);\n\n handleItemError({\n currentSymbol: symbol,\n itemErrorBehavior,\n index,\n newCode,\n inputRefs,\n inputContainerRef,\n codeSetter,\n });\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {\n const newCode = [...code];\n\n if (disabled) {\n return;\n }\n\n event.preventDefault();\n\n const rawData = event.clipboardData.getData('text/plain');\n\n const pastedData = (fieldPattern\n ? rawData\n .split('')\n .map((symb) => symb.match(fieldPattern)?.[0] || '')\n .filter(Boolean) || []\n : rawData.split('')\n ).slice(0, codeLength);\n\n pastedData.forEach((element, index) => {\n newCode[index] = element;\n });\n\n const activeIndex = Math.min(pastedData.length, codeLength - 1);\n inputRefs.current[activeIndex]?.focus();\n\n codeSetter(newCode);\n };\n\n const handleFullCodeEnter = useCallback((fullCode: string) => {\n if (onFullCodeEnter) {\n onFullCodeEnter(fullCode);\n }\n }, []);\n\n useEffect(() => {\n inputRefs.current = inputRefs.current.slice(0, codeLength);\n }, [codeLength]);\n\n useEffect(() => {\n if (autoFocus && !disabled) {\n const lastActiveIndex = getLastActiveIndex();\n\n inputRefs.current[lastActiveIndex]?.focus();\n }\n }, [autoFocus]);\n\n useDidMountEffect(() => {\n if (handleFullCodeEnter && originalValue.length === codeLength) {\n handleFullCodeEnter(originalValue);\n }\n }, [originalValue, handleFullCodeEnter]);\n\n useDidMountEffect(() => {\n if (isError) {\n handleCodeError({\n codeLength,\n codeErrorBehavior,\n currentCode: code,\n inputRefs,\n inputContainerRef,\n captionRef,\n setCode,\n codeSetter,\n });\n }\n }, [isError]);\n\n return (\n <Root\n ref={ref}\n view={view}\n size={size}\n disabled={disabled}\n onClick={handleClick}\n className={cls(className, {\n [classes.captionAlignLeft]: captionAlign === 'left',\n })}\n {...rest}\n >\n <CodeWrapper ref={inputContainerRef}>\n {[...Array(parts)].map((_, partIndex) => (\n <Fragment key={partIndex}>\n <CodeGroup role=\"group\">\n {[...Array(codeLength / parts)].map((_, i) => {\n const inputCorrectIndex = i + (codeLength / parts) * partIndex;\n\n return (\n <ItemWrapper key={partIndex + i + partIndex * i}>\n {(!code[inputCorrectIndex] ||\n (!!code[inputCorrectIndex] && hidden)) && (\n <ItemCircle\n role=\"tab\"\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n onKeyDown={(e: KeyboardEvent<HTMLDivElement>) => {\n handleOnKeyDown(e, inputCorrectIndex, 'circle');\n }}\n className={cls([\n !!code[inputCorrectIndex] && hidden\n ? classes.itemCirlceFilled\n : '',\n `${classes.itemCircle}-${inputCorrectIndex}`,\n ])}\n />\n )}\n <ItemInput\n ref={(element: HTMLInputElement) => {\n inputRefs.current[inputCorrectIndex] = element;\n }}\n className={cls({\n [classes.hoverEnabled]:\n inputCorrectIndex >= originalValue.length,\n })}\n hide={hidden}\n value={code[inputCorrectIndex] || ''}\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n autoComplete={autoComplete}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n handleChange(e, inputCorrectIndex);\n }}\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n handleOnKeyDown(e, inputCorrectIndex);\n }}\n onPaste={handlePaste}\n {...(placeholderValue && {\n placeholder: placeholderValue[inputCorrectIndex],\n })}\n />\n </ItemWrapper>\n );\n })}\n </CodeGroup>\n {partIndex !== parts - 1 && <Separator />}\n </Fragment>\n ))}\n </CodeWrapper>\n {caption && (\n <CaptionWrapper ref={captionRef} captionAlign={captionAlign} widthValue={widthValue}>\n {caption}\n </CaptionWrapper>\n )}\n </Root>\n );\n },\n );\n\nexport const codeInputConfig = {\n name: 'CodeInput',\n tag: 'div',\n layout: codeInputRoot,\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 },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["codeInputRoot","Root","forwardRef","_ref","ref","className","outerValue","value","placeholder","autoFocus","_ref$codeLength","codeLength","caption","_ref$captionAlign","captionAlign","width","view","size","hidden","disabled","isError","_ref$allowedSymbols","allowedSymbols","ONLY_DIGITS_PATTERN","_ref$itemErrorBehavio","itemErrorBehavior","_ref$codeErrorBehavio","codeErrorBehavior","_ref$autoComplete","autoComplete","setIsError","onChange","onFullCodeEnter","rest","_objectWithoutProperties","_excluded","_useState","useState","getCodeValue","_useState2","_slicedToArray","code","setCode","_useState3","join","_useState4","originalValue","setOriginalValue","inputRefs","useRef","inputContainerRef","captionRef","fieldPattern","getFieldPattern","placeholderValue","getPlaceholderValue","parts","widthValue","getSizeValueFromProp","undefined","getLastActiveIndex","length","lastEmptyIndex","findIndex","digit","handleClick","lastActiveIndex","current","focus","handleOnKeyDown","event","index","type","key","FORBIDDEN_KEYS","includes","preventDefault","BACKSPACE_KEY","_inputRefs$current","_inputRefs$current$in","handleAddSymbol","codeSetter","newCode","handleChange","rawSymbol","currentTarget","symbol","charAt","_inputRefs$current$in2","_toConsumableArray","classList","remove","classes","itemError","_captionRef$current","captionError","_inputContainerRef$cu","codeError","codeErrorAnimation","_inputRefs$current2","test","_inputRefs$current3","handleItemError","currentSymbol","handlePaste","_inputRefs$current$ac","rawData","clipboardData","getData","pastedData","split","map","symb","_symb$match","match","filter","Boolean","slice","forEach","element","activeIndex","Math","min","handleFullCodeEnter","useCallback","fullCode","useEffect","_inputRefs$current$la","useDidMountEffect","handleCodeError","currentCode","React","createElement","_extends","onClick","cls","_defineProperty","captionAlignLeft","CodeWrapper","Array","_","partIndex","Fragment","CodeGroup","role","i","inputCorrectIndex","ItemWrapper","ItemCircle","tabIndex","onKeyDown","e","itemCirlceFilled","concat","itemCircle","ItemInput","hoverEnabled","hide","onPaste","_Separator","Separator","CaptionWrapper","codeInputConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
@@ -17,7 +17,7 @@ var _base = /*#__PURE__*/require("./variations/_view/base");
17
17
  var _base2 = /*#__PURE__*/require("./variations/_size/base");
18
18
  var _base3 = /*#__PURE__*/require("./variations/_disabled/base");
19
19
  var _Separator;
20
- var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "screen", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
20
+ var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
21
21
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
22
22
  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); }
23
23
  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; }
@@ -51,8 +51,6 @@ var codeInputRoot = exports.codeInputRoot = function codeInputRoot(Root) {
51
51
  width = _ref.width,
52
52
  view = _ref.view,
53
53
  size = _ref.size,
54
- _ref$screen = _ref.screen,
55
- screen = _ref$screen === void 0 ? 'medium' : _ref$screen,
56
54
  hidden = _ref.hidden,
57
55
  disabled = _ref.disabled,
58
56
  isError = _ref.isError,
@@ -244,7 +242,6 @@ var codeInputRoot = exports.codeInputRoot = function codeInputRoot(Root) {
244
242
  view: view,
245
243
  size: size,
246
244
  disabled: disabled,
247
- screen: screen,
248
245
  onClick: handleClick,
249
246
  className: (0, _classnames["default"])(className, _defineProperty({}, _CodeInput.classes.captionAlignLeft, captionAlign === 'left'))
250
247
  }, rest), /*#__PURE__*/_react["default"].createElement(_CodeInput2.CodeWrapper, {
@@ -1,6 +1,6 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
2
  var _Separator;
3
- var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "screen", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
3
+ var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
4
4
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
5
5
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
6
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
@@ -42,8 +42,6 @@ export var codeInputRoot = function codeInputRoot(Root) {
42
42
  width = _ref.width,
43
43
  view = _ref.view,
44
44
  size = _ref.size,
45
- _ref$screen = _ref.screen,
46
- screen = _ref$screen === void 0 ? 'medium' : _ref$screen,
47
45
  hidden = _ref.hidden,
48
46
  disabled = _ref.disabled,
49
47
  isError = _ref.isError,
@@ -235,7 +233,6 @@ export var codeInputRoot = function codeInputRoot(Root) {
235
233
  view: view,
236
234
  size: size,
237
235
  disabled: disabled,
238
- screen: screen,
239
236
  onClick: handleClick,
240
237
  className: cls(className, _defineProperty({}, classes.captionAlignLeft, captionAlign === 'left'))
241
238
  }, rest), /*#__PURE__*/React.createElement(CodeWrapper, {
@@ -14,7 +14,7 @@ import { getSizeValueFromProp } from '../../utils/getSizeValueFromProp.js';
14
14
  import { handleItemError } from './utils/handleItemError.js';
15
15
 
16
16
  var _Separator;
17
- var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "screen", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
17
+ var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
18
18
  var codeInputRoot = function codeInputRoot(Root) {
19
19
  return /*#__PURE__*/forwardRef(function (_ref, ref) {
20
20
  var className = _ref.className,
@@ -29,8 +29,6 @@ var codeInputRoot = function codeInputRoot(Root) {
29
29
  width = _ref.width,
30
30
  view = _ref.view,
31
31
  size = _ref.size,
32
- _ref$screen = _ref.screen,
33
- screen = _ref$screen === void 0 ? 'medium' : _ref$screen,
34
32
  hidden = _ref.hidden,
35
33
  disabled = _ref.disabled,
36
34
  isError = _ref.isError,
@@ -222,7 +220,6 @@ var codeInputRoot = function codeInputRoot(Root) {
222
220
  view: view,
223
221
  size: size,
224
222
  disabled: disabled,
225
- screen: screen,
226
223
  onClick: handleClick,
227
224
  className: cls(className, _defineProperty({}, classes.captionAlignLeft, captionAlign === 'left'))
228
225
  }, rest), /*#__PURE__*/React.createElement(CodeWrapper, {
@@ -1 +1 @@
1
- {"version":3,"file":"CodeInput.js","sources":["../../../src/components/CodeInput/CodeInput.tsx"],"sourcesContent":["import React, { forwardRef, Fragment, useCallback, useEffect, useRef, useState } from 'react';\nimport cls from 'classnames';\nimport type { ChangeEvent, KeyboardEvent, ClipboardEvent } from 'react';\nimport type { RootProps } from 'src/engines';\nimport { useDidMountEffect } from 'src/hooks';\nimport { getSizeValueFromProp } from 'src/utils';\n\nimport type { CodeInputProps } from './CodeInput.types';\nimport { BACKSPACE_KEY, FORBIDDEN_KEYS, ONLY_DIGITS_PATTERN } from './utils/constants';\nimport { getCodeValue, getFieldPattern, getPlaceholderValue, handleCodeError, handleItemError } from './utils';\nimport { classes } from './CodeInput.tokens';\nimport {\n base,\n CaptionWrapper,\n CodeGroup,\n CodeWrapper,\n ItemInput,\n Separator,\n ItemWrapper,\n ItemCircle,\n} from './CodeInput.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const codeInputRoot = (Root: RootProps<HTMLDivElement, CodeInputProps>) =>\n forwardRef<HTMLInputElement, CodeInputProps>(\n (\n {\n className,\n value: outerValue,\n placeholder,\n autoFocus,\n codeLength = 6,\n caption,\n captionAlign = 'left',\n width,\n view,\n size,\n screen = 'medium',\n hidden,\n disabled,\n isError,\n allowedSymbols = ONLY_DIGITS_PATTERN,\n itemErrorBehavior = 'remove-symbol',\n codeErrorBehavior = 'remove-code',\n autoComplete = 'one-time-code',\n setIsError,\n onChange,\n onFullCodeEnter,\n ...rest\n },\n ref,\n ) => {\n const [code, setCode] = useState<Array<string>>(getCodeValue(codeLength, outerValue || ''));\n const [originalValue, setOriginalValue] = useState<string>(code.join(''));\n\n const inputRefs = useRef<Array<HTMLInputElement>>([]);\n const inputContainerRef = useRef<HTMLDivElement | null>(null);\n const captionRef = useRef<HTMLDivElement | null>(null);\n\n const fieldPattern = getFieldPattern(allowedSymbols);\n const placeholderValue = getPlaceholderValue(codeLength, placeholder);\n const parts = codeLength === 6 ? 2 : 1;\n\n const widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;\n\n const getLastActiveIndex = () => {\n if (code.length && code.length < codeLength) {\n return code.length;\n }\n\n const lastEmptyIndex = code.findIndex((digit) => digit === '');\n return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n\n const lastActiveIndex = getLastActiveIndex();\n\n if (inputRefs.current[lastActiveIndex]) {\n inputRefs.current[lastActiveIndex].focus();\n }\n };\n\n const handleOnKeyDown = (\n event: KeyboardEvent<HTMLInputElement | HTMLDivElement>,\n index: number,\n type?: 'circle',\n ) => {\n if (disabled) {\n return;\n }\n\n const { key } = event;\n if (FORBIDDEN_KEYS.includes(key)) {\n event.preventDefault();\n return;\n }\n\n if (key === BACKSPACE_KEY) {\n if (index > 0 && code[index] === '') {\n inputRefs.current[index - 1]?.focus();\n }\n }\n\n if (type === 'circle') {\n handleAddSymbol(key, index);\n inputRefs.current[index]?.focus();\n }\n };\n\n const codeSetter = (newCode: Array<string>) => {\n setCode(newCode);\n setOriginalValue(newCode.join(''));\n\n if (onChange) {\n onChange(newCode.join(''));\n }\n };\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const rawSymbol = event.currentTarget.value;\n const symbol = rawSymbol.charAt(rawSymbol.length - 1);\n handleAddSymbol(symbol, index);\n };\n\n const handleAddSymbol = (symbol: string, index: number) => {\n const newCode = [...code];\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n if (isError) {\n captionRef.current?.classList.remove(classes.captionError);\n\n if (codeErrorBehavior === 'keep') {\n inputContainerRef.current?.classList.remove(classes.codeError, classes.codeErrorAnimation);\n }\n\n if (setIsError) {\n setIsError(false);\n }\n }\n\n if (!fieldPattern) {\n newCode[index] = symbol;\n codeSetter(newCode);\n\n if (symbol && index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n return;\n }\n\n if (!symbol) {\n newCode[index] = '';\n codeSetter(newCode);\n\n return;\n }\n\n if (fieldPattern.test(symbol)) {\n newCode[index] = symbol.charAt(symbol.length - 1);\n codeSetter(newCode);\n\n if (index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n } else {\n newCode[index] = symbol.charAt(symbol.length - 1);\n\n handleItemError({\n currentSymbol: symbol,\n itemErrorBehavior,\n index,\n newCode,\n inputRefs,\n inputContainerRef,\n codeSetter,\n });\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {\n const newCode = [...code];\n\n if (disabled) {\n return;\n }\n\n event.preventDefault();\n\n const rawData = event.clipboardData.getData('text/plain');\n\n const pastedData = (fieldPattern\n ? rawData\n .split('')\n .map((symb) => symb.match(fieldPattern)?.[0] || '')\n .filter(Boolean) || []\n : rawData.split('')\n ).slice(0, codeLength);\n\n pastedData.forEach((element, index) => {\n newCode[index] = element;\n });\n\n const activeIndex = Math.min(pastedData.length, codeLength - 1);\n inputRefs.current[activeIndex]?.focus();\n\n codeSetter(newCode);\n };\n\n const handleFullCodeEnter = useCallback((fullCode: string) => {\n if (onFullCodeEnter) {\n onFullCodeEnter(fullCode);\n }\n }, []);\n\n useEffect(() => {\n inputRefs.current = inputRefs.current.slice(0, codeLength);\n }, [codeLength]);\n\n useEffect(() => {\n if (autoFocus && !disabled) {\n const lastActiveIndex = getLastActiveIndex();\n\n inputRefs.current[lastActiveIndex]?.focus();\n }\n }, [autoFocus]);\n\n useDidMountEffect(() => {\n if (handleFullCodeEnter && originalValue.length === codeLength) {\n handleFullCodeEnter(originalValue);\n }\n }, [originalValue, handleFullCodeEnter]);\n\n useDidMountEffect(() => {\n if (isError) {\n handleCodeError({\n codeLength,\n codeErrorBehavior,\n currentCode: code,\n inputRefs,\n inputContainerRef,\n captionRef,\n setCode,\n codeSetter,\n });\n }\n }, [isError]);\n\n return (\n <Root\n ref={ref}\n view={view}\n size={size}\n disabled={disabled}\n screen={screen}\n onClick={handleClick}\n className={cls(className, {\n [classes.captionAlignLeft]: captionAlign === 'left',\n })}\n {...rest}\n >\n <CodeWrapper ref={inputContainerRef}>\n {[...Array(parts)].map((_, partIndex) => (\n <Fragment key={partIndex}>\n <CodeGroup role=\"group\">\n {[...Array(codeLength / parts)].map((_, i) => {\n const inputCorrectIndex = i + (codeLength / parts) * partIndex;\n\n return (\n <ItemWrapper key={partIndex + i + partIndex * i}>\n {(!code[inputCorrectIndex] ||\n (!!code[inputCorrectIndex] && hidden)) && (\n <ItemCircle\n role=\"tab\"\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n onKeyDown={(e: KeyboardEvent<HTMLDivElement>) => {\n handleOnKeyDown(e, inputCorrectIndex, 'circle');\n }}\n className={cls([\n !!code[inputCorrectIndex] && hidden\n ? classes.itemCirlceFilled\n : '',\n `${classes.itemCircle}-${inputCorrectIndex}`,\n ])}\n />\n )}\n <ItemInput\n ref={(element: HTMLInputElement) => {\n inputRefs.current[inputCorrectIndex] = element;\n }}\n className={cls({\n [classes.hoverEnabled]:\n inputCorrectIndex >= originalValue.length,\n })}\n hide={hidden}\n value={code[inputCorrectIndex] || ''}\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n autoComplete={autoComplete}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n handleChange(e, inputCorrectIndex);\n }}\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n handleOnKeyDown(e, inputCorrectIndex);\n }}\n onPaste={handlePaste}\n {...(placeholderValue && {\n placeholder: placeholderValue[inputCorrectIndex],\n })}\n />\n </ItemWrapper>\n );\n })}\n </CodeGroup>\n {partIndex !== parts - 1 && <Separator />}\n </Fragment>\n ))}\n </CodeWrapper>\n {caption && (\n <CaptionWrapper ref={captionRef} captionAlign={captionAlign} widthValue={widthValue}>\n {caption}\n </CaptionWrapper>\n )}\n </Root>\n );\n },\n );\n\nexport const codeInputConfig = {\n name: 'CodeInput',\n tag: 'div',\n layout: codeInputRoot,\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 },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["codeInputRoot","Root","forwardRef","_ref","ref","className","outerValue","value","placeholder","autoFocus","_ref$codeLength","codeLength","caption","_ref$captionAlign","captionAlign","width","view","size","_ref$screen","screen","hidden","disabled","isError","_ref$allowedSymbols","allowedSymbols","ONLY_DIGITS_PATTERN","_ref$itemErrorBehavio","itemErrorBehavior","_ref$codeErrorBehavio","codeErrorBehavior","_ref$autoComplete","autoComplete","setIsError","onChange","onFullCodeEnter","rest","_objectWithoutProperties","_excluded","_useState","useState","getCodeValue","_useState2","_slicedToArray","code","setCode","_useState3","join","_useState4","originalValue","setOriginalValue","inputRefs","useRef","inputContainerRef","captionRef","fieldPattern","getFieldPattern","placeholderValue","getPlaceholderValue","parts","widthValue","getSizeValueFromProp","undefined","getLastActiveIndex","length","lastEmptyIndex","findIndex","digit","handleClick","lastActiveIndex","current","focus","handleOnKeyDown","event","index","type","key","FORBIDDEN_KEYS","includes","preventDefault","BACKSPACE_KEY","_inputRefs$current","_inputRefs$current$in","handleAddSymbol","codeSetter","newCode","handleChange","rawSymbol","currentTarget","symbol","charAt","_inputRefs$current$in2","_toConsumableArray","classList","remove","classes","itemError","_captionRef$current","captionError","_inputContainerRef$cu","codeError","codeErrorAnimation","_inputRefs$current2","test","_inputRefs$current3","handleItemError","currentSymbol","handlePaste","_inputRefs$current$ac","rawData","clipboardData","getData","pastedData","split","map","symb","_symb$match","match","filter","Boolean","slice","forEach","element","activeIndex","Math","min","handleFullCodeEnter","useCallback","fullCode","useEffect","_inputRefs$current$la","useDidMountEffect","handleCodeError","currentCode","React","createElement","_extends","onClick","cls","_defineProperty","captionAlignLeft","CodeWrapper","Array","_","partIndex","Fragment","CodeGroup","role","i","inputCorrectIndex","ItemWrapper","ItemCircle","tabIndex","onKeyDown","e","itemCirlceFilled","concat","itemCircle","ItemInput","hoverEnabled","hide","onPaste","_Separator","Separator","CaptionWrapper","codeInputConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"CodeInput.js","sources":["../../../src/components/CodeInput/CodeInput.tsx"],"sourcesContent":["import React, { forwardRef, Fragment, useCallback, useEffect, useRef, useState } from 'react';\nimport cls from 'classnames';\nimport type { ChangeEvent, KeyboardEvent, ClipboardEvent } from 'react';\nimport type { RootProps } from 'src/engines';\nimport { useDidMountEffect } from 'src/hooks';\nimport { getSizeValueFromProp } from 'src/utils';\n\nimport type { CodeInputProps } from './CodeInput.types';\nimport { BACKSPACE_KEY, FORBIDDEN_KEYS, ONLY_DIGITS_PATTERN } from './utils/constants';\nimport { getCodeValue, getFieldPattern, getPlaceholderValue, handleCodeError, handleItemError } from './utils';\nimport { classes } from './CodeInput.tokens';\nimport {\n base,\n CaptionWrapper,\n CodeGroup,\n CodeWrapper,\n ItemInput,\n Separator,\n ItemWrapper,\n ItemCircle,\n} from './CodeInput.styles';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\n\nexport const codeInputRoot = (Root: RootProps<HTMLDivElement, CodeInputProps>) =>\n forwardRef<HTMLInputElement, CodeInputProps>(\n (\n {\n className,\n value: outerValue,\n placeholder,\n autoFocus,\n codeLength = 6,\n caption,\n captionAlign = 'left',\n width,\n view,\n size,\n hidden,\n disabled,\n isError,\n allowedSymbols = ONLY_DIGITS_PATTERN,\n itemErrorBehavior = 'remove-symbol',\n codeErrorBehavior = 'remove-code',\n autoComplete = 'one-time-code',\n setIsError,\n onChange,\n onFullCodeEnter,\n ...rest\n },\n ref,\n ) => {\n const [code, setCode] = useState<Array<string>>(getCodeValue(codeLength, outerValue || ''));\n const [originalValue, setOriginalValue] = useState<string>(code.join(''));\n\n const inputRefs = useRef<Array<HTMLInputElement>>([]);\n const inputContainerRef = useRef<HTMLDivElement | null>(null);\n const captionRef = useRef<HTMLDivElement | null>(null);\n\n const fieldPattern = getFieldPattern(allowedSymbols);\n const placeholderValue = getPlaceholderValue(codeLength, placeholder);\n const parts = codeLength === 6 ? 2 : 1;\n\n const widthValue = width ? getSizeValueFromProp(width, 'rem') : undefined;\n\n const getLastActiveIndex = () => {\n if (code.length && code.length < codeLength) {\n return code.length;\n }\n\n const lastEmptyIndex = code.findIndex((digit) => digit === '');\n return lastEmptyIndex >= 0 ? lastEmptyIndex : codeLength - 1;\n };\n\n const handleClick = () => {\n if (disabled) {\n return;\n }\n\n const lastActiveIndex = getLastActiveIndex();\n\n if (inputRefs.current[lastActiveIndex]) {\n inputRefs.current[lastActiveIndex].focus();\n }\n };\n\n const handleOnKeyDown = (\n event: KeyboardEvent<HTMLInputElement | HTMLDivElement>,\n index: number,\n type?: 'circle',\n ) => {\n if (disabled) {\n return;\n }\n\n const { key } = event;\n if (FORBIDDEN_KEYS.includes(key)) {\n event.preventDefault();\n return;\n }\n\n if (key === BACKSPACE_KEY) {\n if (index > 0 && code[index] === '') {\n inputRefs.current[index - 1]?.focus();\n }\n }\n\n if (type === 'circle') {\n handleAddSymbol(key, index);\n inputRefs.current[index]?.focus();\n }\n };\n\n const codeSetter = (newCode: Array<string>) => {\n setCode(newCode);\n setOriginalValue(newCode.join(''));\n\n if (onChange) {\n onChange(newCode.join(''));\n }\n };\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>, index: number) => {\n if (disabled) {\n return;\n }\n\n const rawSymbol = event.currentTarget.value;\n const symbol = rawSymbol.charAt(rawSymbol.length - 1);\n handleAddSymbol(symbol, index);\n };\n\n const handleAddSymbol = (symbol: string, index: number) => {\n const newCode = [...code];\n\n inputRefs.current[index]?.classList.remove(classes.itemError);\n if (isError) {\n captionRef.current?.classList.remove(classes.captionError);\n\n if (codeErrorBehavior === 'keep') {\n inputContainerRef.current?.classList.remove(classes.codeError, classes.codeErrorAnimation);\n }\n\n if (setIsError) {\n setIsError(false);\n }\n }\n\n if (!fieldPattern) {\n newCode[index] = symbol;\n codeSetter(newCode);\n\n if (symbol && index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n\n return;\n }\n\n if (!symbol) {\n newCode[index] = '';\n codeSetter(newCode);\n\n return;\n }\n\n if (fieldPattern.test(symbol)) {\n newCode[index] = symbol.charAt(symbol.length - 1);\n codeSetter(newCode);\n\n if (index < codeLength - 1) {\n inputRefs.current[index + 1]?.focus();\n }\n } else {\n newCode[index] = symbol.charAt(symbol.length - 1);\n\n handleItemError({\n currentSymbol: symbol,\n itemErrorBehavior,\n index,\n newCode,\n inputRefs,\n inputContainerRef,\n codeSetter,\n });\n }\n };\n\n const handlePaste = (event: ClipboardEvent<HTMLInputElement>) => {\n const newCode = [...code];\n\n if (disabled) {\n return;\n }\n\n event.preventDefault();\n\n const rawData = event.clipboardData.getData('text/plain');\n\n const pastedData = (fieldPattern\n ? rawData\n .split('')\n .map((symb) => symb.match(fieldPattern)?.[0] || '')\n .filter(Boolean) || []\n : rawData.split('')\n ).slice(0, codeLength);\n\n pastedData.forEach((element, index) => {\n newCode[index] = element;\n });\n\n const activeIndex = Math.min(pastedData.length, codeLength - 1);\n inputRefs.current[activeIndex]?.focus();\n\n codeSetter(newCode);\n };\n\n const handleFullCodeEnter = useCallback((fullCode: string) => {\n if (onFullCodeEnter) {\n onFullCodeEnter(fullCode);\n }\n }, []);\n\n useEffect(() => {\n inputRefs.current = inputRefs.current.slice(0, codeLength);\n }, [codeLength]);\n\n useEffect(() => {\n if (autoFocus && !disabled) {\n const lastActiveIndex = getLastActiveIndex();\n\n inputRefs.current[lastActiveIndex]?.focus();\n }\n }, [autoFocus]);\n\n useDidMountEffect(() => {\n if (handleFullCodeEnter && originalValue.length === codeLength) {\n handleFullCodeEnter(originalValue);\n }\n }, [originalValue, handleFullCodeEnter]);\n\n useDidMountEffect(() => {\n if (isError) {\n handleCodeError({\n codeLength,\n codeErrorBehavior,\n currentCode: code,\n inputRefs,\n inputContainerRef,\n captionRef,\n setCode,\n codeSetter,\n });\n }\n }, [isError]);\n\n return (\n <Root\n ref={ref}\n view={view}\n size={size}\n disabled={disabled}\n onClick={handleClick}\n className={cls(className, {\n [classes.captionAlignLeft]: captionAlign === 'left',\n })}\n {...rest}\n >\n <CodeWrapper ref={inputContainerRef}>\n {[...Array(parts)].map((_, partIndex) => (\n <Fragment key={partIndex}>\n <CodeGroup role=\"group\">\n {[...Array(codeLength / parts)].map((_, i) => {\n const inputCorrectIndex = i + (codeLength / parts) * partIndex;\n\n return (\n <ItemWrapper key={partIndex + i + partIndex * i}>\n {(!code[inputCorrectIndex] ||\n (!!code[inputCorrectIndex] && hidden)) && (\n <ItemCircle\n role=\"tab\"\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n onKeyDown={(e: KeyboardEvent<HTMLDivElement>) => {\n handleOnKeyDown(e, inputCorrectIndex, 'circle');\n }}\n className={cls([\n !!code[inputCorrectIndex] && hidden\n ? classes.itemCirlceFilled\n : '',\n `${classes.itemCircle}-${inputCorrectIndex}`,\n ])}\n />\n )}\n <ItemInput\n ref={(element: HTMLInputElement) => {\n inputRefs.current[inputCorrectIndex] = element;\n }}\n className={cls({\n [classes.hoverEnabled]:\n inputCorrectIndex >= originalValue.length,\n })}\n hide={hidden}\n value={code[inputCorrectIndex] || ''}\n tabIndex={originalValue.length === inputCorrectIndex ? 0 : -1}\n autoComplete={autoComplete}\n onChange={(e: ChangeEvent<HTMLInputElement>) => {\n handleChange(e, inputCorrectIndex);\n }}\n onKeyDown={(e: KeyboardEvent<HTMLInputElement>) => {\n handleOnKeyDown(e, inputCorrectIndex);\n }}\n onPaste={handlePaste}\n {...(placeholderValue && {\n placeholder: placeholderValue[inputCorrectIndex],\n })}\n />\n </ItemWrapper>\n );\n })}\n </CodeGroup>\n {partIndex !== parts - 1 && <Separator />}\n </Fragment>\n ))}\n </CodeWrapper>\n {caption && (\n <CaptionWrapper ref={captionRef} captionAlign={captionAlign} widthValue={widthValue}>\n {caption}\n </CaptionWrapper>\n )}\n </Root>\n );\n },\n );\n\nexport const codeInputConfig = {\n name: 'CodeInput',\n tag: 'div',\n layout: codeInputRoot,\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 },\n defaults: {\n size: 'm',\n view: 'default',\n },\n};\n"],"names":["codeInputRoot","Root","forwardRef","_ref","ref","className","outerValue","value","placeholder","autoFocus","_ref$codeLength","codeLength","caption","_ref$captionAlign","captionAlign","width","view","size","hidden","disabled","isError","_ref$allowedSymbols","allowedSymbols","ONLY_DIGITS_PATTERN","_ref$itemErrorBehavio","itemErrorBehavior","_ref$codeErrorBehavio","codeErrorBehavior","_ref$autoComplete","autoComplete","setIsError","onChange","onFullCodeEnter","rest","_objectWithoutProperties","_excluded","_useState","useState","getCodeValue","_useState2","_slicedToArray","code","setCode","_useState3","join","_useState4","originalValue","setOriginalValue","inputRefs","useRef","inputContainerRef","captionRef","fieldPattern","getFieldPattern","placeholderValue","getPlaceholderValue","parts","widthValue","getSizeValueFromProp","undefined","getLastActiveIndex","length","lastEmptyIndex","findIndex","digit","handleClick","lastActiveIndex","current","focus","handleOnKeyDown","event","index","type","key","FORBIDDEN_KEYS","includes","preventDefault","BACKSPACE_KEY","_inputRefs$current","_inputRefs$current$in","handleAddSymbol","codeSetter","newCode","handleChange","rawSymbol","currentTarget","symbol","charAt","_inputRefs$current$in2","_toConsumableArray","classList","remove","classes","itemError","_captionRef$current","captionError","_inputContainerRef$cu","codeError","codeErrorAnimation","_inputRefs$current2","test","_inputRefs$current3","handleItemError","currentSymbol","handlePaste","_inputRefs$current$ac","rawData","clipboardData","getData","pastedData","split","map","symb","_symb$match","match","filter","Boolean","slice","forEach","element","activeIndex","Math","min","handleFullCodeEnter","useCallback","fullCode","useEffect","_inputRefs$current$la","useDidMountEffect","handleCodeError","currentCode","React","createElement","_extends","onClick","cls","_defineProperty","captionAlignLeft","CodeWrapper","Array","_","partIndex","Fragment","CodeGroup","role","i","inputCorrectIndex","ItemWrapper","ItemCircle","tabIndex","onKeyDown","e","itemCirlceFilled","concat","itemCircle","ItemInput","hoverEnabled","hide","onPaste","_Separator","Separator","CaptionWrapper","codeInputConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","disabledCSS","attrs","defaults"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.327.0-canary.1973.15677961605.0",
3
+ "version": "0.327.0-canary.1973.15679545656.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -137,5 +137,5 @@
137
137
  "sideEffects": [
138
138
  "*.css"
139
139
  ],
140
- "gitHead": "42c27bd1cc6b727fb6b38a778bed80ceb03c5525"
140
+ "gitHead": "63b3362f90f395d516cf533d2a3d2d98303ba6d3"
141
141
  }
@@ -17,7 +17,7 @@ var _base = /*#__PURE__*/require("./variations/_view/base");
17
17
  var _base2 = /*#__PURE__*/require("./variations/_size/base");
18
18
  var _base3 = /*#__PURE__*/require("./variations/_disabled/base");
19
19
  var _Separator;
20
- var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "screen", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
20
+ var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
21
21
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
22
22
  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); }
23
23
  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; }
@@ -51,8 +51,6 @@ var codeInputRoot = exports.codeInputRoot = function codeInputRoot(Root) {
51
51
  width = _ref.width,
52
52
  view = _ref.view,
53
53
  size = _ref.size,
54
- _ref$screen = _ref.screen,
55
- screen = _ref$screen === void 0 ? 'medium' : _ref$screen,
56
54
  hidden = _ref.hidden,
57
55
  disabled = _ref.disabled,
58
56
  isError = _ref.isError,
@@ -244,7 +242,6 @@ var codeInputRoot = exports.codeInputRoot = function codeInputRoot(Root) {
244
242
  view: view,
245
243
  size: size,
246
244
  disabled: disabled,
247
- screen: screen,
248
245
  onClick: handleClick,
249
246
  className: (0, _classnames["default"])(className, _defineProperty({}, _CodeInput.classes.captionAlignLeft, captionAlign === 'left'))
250
247
  }, rest), /*#__PURE__*/_react["default"].createElement(_CodeInput2.CodeWrapper, {
@@ -1,6 +1,6 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
2
  var _Separator;
3
- var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "screen", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
3
+ var _excluded = ["className", "value", "placeholder", "autoFocus", "codeLength", "caption", "captionAlign", "width", "view", "size", "hidden", "disabled", "isError", "allowedSymbols", "itemErrorBehavior", "codeErrorBehavior", "autoComplete", "setIsError", "onChange", "onFullCodeEnter"];
4
4
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
5
5
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
6
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
@@ -42,8 +42,6 @@ export var codeInputRoot = function codeInputRoot(Root) {
42
42
  width = _ref.width,
43
43
  view = _ref.view,
44
44
  size = _ref.size,
45
- _ref$screen = _ref.screen,
46
- screen = _ref$screen === void 0 ? 'medium' : _ref$screen,
47
45
  hidden = _ref.hidden,
48
46
  disabled = _ref.disabled,
49
47
  isError = _ref.isError,
@@ -235,7 +233,6 @@ export var codeInputRoot = function codeInputRoot(Root) {
235
233
  view: view,
236
234
  size: size,
237
235
  disabled: disabled,
238
- screen: screen,
239
236
  onClick: handleClick,
240
237
  className: cls(className, _defineProperty({}, classes.captionAlignLeft, captionAlign === 'left'))
241
238
  }, rest), /*#__PURE__*/React.createElement(CodeWrapper, {
@@ -11,7 +11,6 @@ export declare const codeInputRoot: (Root: RootProps<HTMLDivElement, CodeInputPr
11
11
  hidden?: boolean;
12
12
  view?: string;
13
13
  size?: string;
14
- screen?: "large" | "medium" | "small";
15
14
  disabled?: boolean;
16
15
  isError?: boolean;
17
16
  width?: string | number;
@@ -35,7 +34,6 @@ export declare const codeInputConfig: {
35
34
  hidden?: boolean;
36
35
  view?: string;
37
36
  size?: string;
38
- screen?: "large" | "medium" | "small";
39
37
  disabled?: boolean;
40
38
  isError?: boolean;
41
39
  width?: string | number;
@@ -1 +1 @@
1
- {"version":3,"file":"CodeInput.d.ts","sourceRoot":"","sources":["../../../src/components/CodeInput/CodeInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyE,MAAM,OAAO,CAAC;AAG9F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAkBxD,eAAO,MAAM,aAAa,SAAU,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;sLAsTxE,CAAC;AAEN,eAAO,MAAM,eAAe;;;mBAxTQ,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6U5E,CAAC"}
1
+ {"version":3,"file":"CodeInput.d.ts","sourceRoot":"","sources":["../../../src/components/CodeInput/CodeInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyE,MAAM,OAAO,CAAC;AAG9F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAkBxD,eAAO,MAAM,aAAa,SAAU,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;;;;;;;;;;;;;;;;;;;sLAoTxE,CAAC;AAEN,eAAO,MAAM,eAAe;;;mBAtTQ,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2U5E,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { Dispatch, HTMLAttributes, InputHTMLAttributes, ReactNode, SetStateAction } from 'react';
2
- export type ItemErrorBehavior = 'remove-symbol' | 'keep' | 'remove-code' | 'forbid-enter';
2
+ export type ItemErrorBehavior = 'remove-symbol' | 'keep' | 'forbid-enter';
3
3
  export type CodeErrorBehavior = 'remove-code' | 'keep';
4
4
  export type CodeInputProps = {
5
5
  /**
@@ -41,10 +41,6 @@ export type CodeInputProps = {
41
41
  * Размер компонента
42
42
  */
43
43
  size?: string;
44
- /**
45
- * Размер экрана
46
- */
47
- screen?: 'large' | 'medium' | 'small';
48
44
  /**
49
45
  * Компонент не активен
50
46
  */
@@ -73,7 +69,7 @@ export type CodeInputProps = {
73
69
  * Поведение элемента поля ввода, при вводе некорректного значения
74
70
  * - `remove-symbol` - проигрывается анимация ошибки, значение элемента очищается
75
71
  * - `keep` - проигрывается анимация ошибки, значение остается
76
- * - `remove-code` - проигрывается анимация ошибки, значение всего поля очищается
72
+ * - `forbid-enter` - запрещается ввод некорректного значения
77
73
  * @default 'remove-symbol'
78
74
  */
79
75
  itemErrorBehavior?: ItemErrorBehavior;
@@ -1 +1 @@
1
- {"version":3,"file":"CodeInput.types.d.ts","sourceRoot":"","sources":["../../../src/components/CodeInput/CodeInput.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,mBAAmB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEtG,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG,MAAM,GAAG,aAAa,GAAG,cAAc,CAAC;AAC1F,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACjC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACtC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,GAAG,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC,GAC1E,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"CodeInput.types.d.ts","sourceRoot":"","sources":["../../../src/components/CodeInput/CodeInput.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,mBAAmB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEtG,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG,MAAM,GAAG,cAAc,CAAC;AAC1E,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,MAAM,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvB;;OAEG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACjC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/C;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,GAAG,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC,GAC1E,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC"}