@salutejs/plasma-new-hope 0.252.0-canary.1738.13067280086.0 → 0.252.0-dev.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.
Files changed (27) hide show
  1. package/cjs/components/TextField/TextField.js +1 -1
  2. package/cjs/components/TextField/TextField.js.map +1 -1
  3. package/cjs/components/Toast/ToastController.js +1 -13
  4. package/cjs/components/Toast/ToastController.js.map +1 -1
  5. package/cjs/components/Toast/ToastProvider/ToastProvider.js +16 -3
  6. package/cjs/components/Toast/ToastProvider/ToastProvider.js.map +1 -1
  7. package/emotion/cjs/components/TextField/TextField.js +2 -2
  8. package/emotion/cjs/components/Toast/ToastController.js +3 -16
  9. package/emotion/cjs/components/Toast/ToastProvider/ToastProvider.js +16 -3
  10. package/emotion/es/components/TextField/TextField.js +2 -2
  11. package/emotion/es/components/Toast/ToastController.js +2 -14
  12. package/emotion/es/components/Toast/ToastProvider/ToastProvider.js +16 -3
  13. package/es/components/TextField/TextField.js +1 -1
  14. package/es/components/TextField/TextField.js.map +1 -1
  15. package/es/components/Toast/ToastController.js +2 -14
  16. package/es/components/Toast/ToastController.js.map +1 -1
  17. package/es/components/Toast/ToastProvider/ToastProvider.js +16 -3
  18. package/es/components/Toast/ToastProvider/ToastProvider.js.map +1 -1
  19. package/package.json +2 -2
  20. package/styled-components/cjs/components/TextField/TextField.js +1 -1
  21. package/styled-components/cjs/components/Toast/ToastController.js +3 -16
  22. package/styled-components/cjs/components/Toast/ToastProvider/ToastProvider.js +16 -3
  23. package/styled-components/es/components/TextField/TextField.js +1 -1
  24. package/styled-components/es/components/Toast/ToastController.js +2 -14
  25. package/styled-components/es/components/Toast/ToastProvider/ToastProvider.js +16 -3
  26. package/types/components/Toast/ToastController.d.ts.map +1 -1
  27. package/types/components/Toast/ToastProvider/ToastProvider.d.ts.map +1 -1
@@ -396,7 +396,7 @@ var textFieldRoot = function textFieldRoot(Root) {
396
396
  ref: inputForkRef,
397
397
  id: innerId,
398
398
  value: outerValue,
399
- required: enumerationType === 'chip' ? chips.length === 0 && required : required,
399
+ required: required,
400
400
  "aria-labelledby": labelId,
401
401
  "aria-describedby": helperTextId,
402
402
  placeholder: innerPlaceholderValue,
@@ -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 { 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 StyledContentRightWrapper,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\nimport { HintComponent } from './ui/Hint/Hint';\nimport { getInputWidth } from './getInputWidth';\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 keepPlaceholder,\n textBefore,\n textAfter,\n placeholder,\n leftHelper,\n enumerationType = 'plain',\n requiredPlacement = 'right',\n titleCaption,\n chipView = 'default',\n chipValidator,\n\n // hint\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintTargetPlacement = 'outer',\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 chipType = 'default',\n\n // events\n onChange,\n onChangeChips,\n onSearch,\n onKeyDown,\n onFocus,\n onBlur,\n\n ...rest\n },\n ref,\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const inputContainerRef = 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 [hasFocus, setHasFocus] = useState(false);\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 innerKeepPlaceholder = keepPlaceholder && labelPlacement === 'inner';\n const hasPlaceholder = Boolean(placeholder) && (innerKeepPlaceholder || !hasInnerLabel);\n let hasTextAfter = Boolean(textAfter);\n let hasTextBefore = textBefore && !isChipEnumeration;\n if (labelPlacement === 'inner') {\n if (!hasValue && !hasPlaceholder && !hasFocus) {\n hasTextAfter = false;\n hasTextBefore = false;\n }\n }\n\n const hasPlaceholderPadding = hasInnerLabel && keepPlaceholder && size !== 'xs';\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 hasInnerHintClass = hintText && hintTargetPlacement === 'outer' ? classes.hasHint : 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 const keepPlaceholderClass = hasPlaceholder && placeholderShown && classes.keepPlaceholder;\n\n const wrapperWithoutLeftContent =\n !contentLeft && isChipsVisible && chipType === 'default' ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible && chipType === 'default' ? classes.hasEmptyContentRight : undefined;\n\n const contentRightCompensationMargin =\n !hasOuterLabel && hintText && hintTargetPlacement === 'inner'\n ? classes.contentRightCompensationMargin\n : 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 const { value } = event.target as HTMLInputElement;\n if (hasTextAfter) {\n const textWidth = getInputWidth(event.currentTarget, inputContainerRef.current);\n event.currentTarget.style.width = `${textWidth}px`;\n }\n setHasValue(Boolean(value));\n };\n\n useEffect(() => {\n if (hasTextAfter && inputRef.current) {\n const textWidth = getInputWidth(inputRef.current, inputContainerRef.current);\n inputRef.current.style.width = `${textWidth}px`;\n } else {\n inputRef.current?.style.removeProperty('width');\n }\n }, [hasTextAfter]);\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n setHasFocus(true);\n onFocus?.(event);\n };\n\n const handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n setHasFocus(false);\n onBlur?.(event);\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 chipView={chipView}\n onClick={handleInputFocus}\n className={cx(\n labelPlacementClass,\n clearClass,\n hasDividerClass,\n hasInnerHintClass,\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 && hintTargetPlacement === 'outer' && (\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 size={size}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n isInnerLabel\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 {Boolean(textBefore && isChipEnumeration) && (\n <StyledTextBefore>{textBefore}</StyledTextBefore>\n )}\n {isChipEnumeration && Boolean(chips?.length) && (\n <StyledChips className={classes.chipsWrapper}>\n {chips?.map(({ id: chipId, text }, index) => {\n const validationView = chipValidator?.(String(text));\n const resView = validationView?.view || chipView;\n\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 chipType={chipType}\n view={resView}\n rootWrapper={Root}\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 ref={inputContainerRef} hasDynamicWidth={hasTextAfter}>\n {hasTextBefore && <StyledTextBefore>{textBefore}</StyledTextBefore>}\n <Input\n ref={inputForkRef}\n id={innerId}\n value={outerValue}\n required={enumerationType === 'chip' ? chips.length === 0 && required : required}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n className={cx(hasValueClass, keepPlaceholderClass)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onInput={handleInput}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...rest}\n />\n {hasInnerLabel && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n {optionalTextNode}\n </Label>\n )}\n {placeholderShown && !hasValue && (\n <InputPlaceholder hasPadding={hasPlaceholderPadding}>\n {hasTextBefore && <StyledTextBefore isHidden>{textBefore}</StyledTextBefore>}\n {innerPlaceholderValue}\n {hasPlaceholderOptional && optionalTextNode}\n </InputPlaceholder>\n )}\n {hasTextAfter && <StyledTextAfter>{textAfter}</StyledTextAfter>}\n </InputContainer>\n </InputLabelWrapper>\n <StyledContentRightWrapper className={cx(contentRightCompensationMargin)}>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n\n {!hasOuterLabel && hintText && hintTargetPlacement === 'inner' && (\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 size={size}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n isInnerLabel\n />\n )}\n </StyledContentRightWrapper>\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$current4","id","className","style","contentLeft","contentRight","label","labelPlacement","keepPlaceholder","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","_ref$requiredPlacemen","requiredPlacement","titleCaption","_ref$chipView","chipView","chipValidator","_ref$hintTrigger","hintTrigger","hintText","_ref$hintView","hintView","_ref$hintSize","hintSize","hintTargetIcon","_ref$hintTargetPlacem","hintTargetPlacement","_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","_ref$chipType","chipType","onChange","onChangeChips","onSearch","onKeyDown","onFocus","onBlur","rest","contentRef","useRef","inputContainerRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","Boolean","current","defaultValue","_useState2","_slicedToArray","hasValue","setHasValue","_useState3","_useState4","hasFocus","setHasFocus","_useState5","_useState6","setChips","_useState7","_useState8","isHintVisible","setIsHintVisible","uniqId","safeUseId","innerId","labelId","helperTextId","isDefaultView","isChipEnumeration","isChipsVisible","length","withHasChips","classes","hasChips","undefined","hasLabelValue","hasInnerLabel","hasOuterLabel","innerKeepPlaceholder","hasPlaceholder","hasTextAfter","hasTextBefore","hasPlaceholderPadding","innerLabelValue","innerLabelPlacementValue","innerPlaceholderValue","placeholderShown","clearClass","hasDividerClass","hasInnerHintClass","hasHint","hasHintClass","requiredPlacementClass","requiredAlignRight","labelPlacementClass","concat","hasValueClass","keepPlaceholderClass","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","contentRightCompensationMargin","hintRef","useOutsideClick","hintInnerRef","hintForkRef","handleInput","event","_ref2","target","textWidth","getInputWidth","currentTarget","width","useEffect","_inputRef$current2","removeProperty","handleFocus","handleBlur","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","map","text","_inputRef$current3","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","chipsWrapper","_ref3","chipId","validationView","String","resView","TextFieldChip","key","onClear","rootWrapper","_forceChipManipulationWithReadonly","InputContainer","hasDynamicWidth","Input","onInput","InputPlaceholder","hasPadding","isHidden","StyledTextAfter","StyledContentRightWrapper","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 StyledContentRightWrapper,\n} from './TextField.styles';\nimport { classes } from './TextField.tokens';\nimport { TextFieldChip } from './ui';\nimport { useKeyNavigation } from './hooks';\nimport { HintComponent } from './ui/Hint/Hint';\nimport { getInputWidth } from './getInputWidth';\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 keepPlaceholder,\n textBefore,\n textAfter,\n placeholder,\n leftHelper,\n enumerationType = 'plain',\n requiredPlacement = 'right',\n titleCaption,\n chipView = 'default',\n chipValidator,\n\n // hint\n hintTrigger = 'hover',\n hintText,\n hintView = 'default',\n hintSize = 'm',\n hintTargetIcon,\n hintTargetPlacement = 'outer',\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 chipType = 'default',\n\n // events\n onChange,\n onChangeChips,\n onSearch,\n onKeyDown,\n onFocus,\n onBlur,\n\n ...rest\n },\n ref,\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const inputContainerRef = 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 [hasFocus, setHasFocus] = useState(false);\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 innerKeepPlaceholder = keepPlaceholder && labelPlacement === 'inner';\n const hasPlaceholder = Boolean(placeholder) && (innerKeepPlaceholder || !hasInnerLabel);\n let hasTextAfter = Boolean(textAfter);\n let hasTextBefore = textBefore && !isChipEnumeration;\n if (labelPlacement === 'inner') {\n if (!hasValue && !hasPlaceholder && !hasFocus) {\n hasTextAfter = false;\n hasTextBefore = false;\n }\n }\n\n const hasPlaceholderPadding = hasInnerLabel && keepPlaceholder && size !== 'xs';\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 hasInnerHintClass = hintText && hintTargetPlacement === 'outer' ? classes.hasHint : 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 const keepPlaceholderClass = hasPlaceholder && placeholderShown && classes.keepPlaceholder;\n\n const wrapperWithoutLeftContent =\n !contentLeft && isChipsVisible && chipType === 'default' ? classes.hasEmptyContentLeft : undefined;\n const wrapperWithoutRightContent =\n !contentRight && isChipsVisible && chipType === 'default' ? classes.hasEmptyContentRight : undefined;\n\n const contentRightCompensationMargin =\n !hasOuterLabel && hintText && hintTargetPlacement === 'inner'\n ? classes.contentRightCompensationMargin\n : 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 const { value } = event.target as HTMLInputElement;\n if (hasTextAfter) {\n const textWidth = getInputWidth(event.currentTarget, inputContainerRef.current);\n event.currentTarget.style.width = `${textWidth}px`;\n }\n setHasValue(Boolean(value));\n };\n\n useEffect(() => {\n if (hasTextAfter && inputRef.current) {\n const textWidth = getInputWidth(inputRef.current, inputContainerRef.current);\n inputRef.current.style.width = `${textWidth}px`;\n } else {\n inputRef.current?.style.removeProperty('width');\n }\n }, [hasTextAfter]);\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n setHasFocus(true);\n onFocus?.(event);\n };\n\n const handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n setHasFocus(false);\n onBlur?.(event);\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 chipView={chipView}\n onClick={handleInputFocus}\n className={cx(\n labelPlacementClass,\n clearClass,\n hasDividerClass,\n hasInnerHintClass,\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 && hintTargetPlacement === 'outer' && (\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 size={size}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n isInnerLabel\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 {Boolean(textBefore && isChipEnumeration) && (\n <StyledTextBefore>{textBefore}</StyledTextBefore>\n )}\n {isChipEnumeration && Boolean(chips?.length) && (\n <StyledChips className={classes.chipsWrapper}>\n {chips?.map(({ id: chipId, text }, index) => {\n const validationView = chipValidator?.(String(text));\n const resView = validationView?.view || chipView;\n\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 chipType={chipType}\n view={resView}\n rootWrapper={Root}\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 ref={inputContainerRef} hasDynamicWidth={hasTextAfter}>\n {hasTextBefore && <StyledTextBefore>{textBefore}</StyledTextBefore>}\n <Input\n ref={inputForkRef}\n id={innerId}\n value={outerValue}\n required={required}\n aria-labelledby={labelId}\n aria-describedby={helperTextId}\n placeholder={innerPlaceholderValue}\n className={cx(hasValueClass, keepPlaceholderClass)}\n disabled={disabled}\n readOnly={!disabled && readOnly}\n onInput={handleInput}\n onChange={handleChange}\n onKeyDown={handleOnKeyDown}\n onFocus={handleFocus}\n onBlur={handleBlur}\n {...rest}\n />\n {hasInnerLabel && (\n <Label id={labelId} htmlFor={innerId}>\n {innerLabelValue}\n {optionalTextNode}\n </Label>\n )}\n {placeholderShown && !hasValue && (\n <InputPlaceholder hasPadding={hasPlaceholderPadding}>\n {hasTextBefore && <StyledTextBefore isHidden>{textBefore}</StyledTextBefore>}\n {innerPlaceholderValue}\n {hasPlaceholderOptional && optionalTextNode}\n </InputPlaceholder>\n )}\n {hasTextAfter && <StyledTextAfter>{textAfter}</StyledTextAfter>}\n </InputContainer>\n </InputLabelWrapper>\n <StyledContentRightWrapper className={cx(contentRightCompensationMargin)}>\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n\n {!hasOuterLabel && hintText && hintTargetPlacement === 'inner' && (\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 size={size}\n handleHintShow={handleHintShow}\n handleHintHide={handleHintHide}\n handleHintClick={handleHintClick}\n isInnerLabel\n />\n )}\n </StyledContentRightWrapper>\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$current4","id","className","style","contentLeft","contentRight","label","labelPlacement","keepPlaceholder","textBefore","textAfter","placeholder","leftHelper","_ref$enumerationType","enumerationType","_ref$requiredPlacemen","requiredPlacement","titleCaption","_ref$chipView","chipView","chipValidator","_ref$hintTrigger","hintTrigger","hintText","_ref$hintView","hintView","_ref$hintSize","hintSize","hintTargetIcon","_ref$hintTargetPlacem","hintTargetPlacement","_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","_ref$chipType","chipType","onChange","onChangeChips","onSearch","onKeyDown","onFocus","onBlur","rest","contentRef","useRef","inputContainerRef","inputRef","inputForkRef","useForkRef","chipsRefs","controlledRefs","_useState","useState","Boolean","current","defaultValue","_useState2","_slicedToArray","hasValue","setHasValue","_useState3","_useState4","hasFocus","setHasFocus","_useState5","_useState6","setChips","_useState7","_useState8","isHintVisible","setIsHintVisible","uniqId","safeUseId","innerId","labelId","helperTextId","isDefaultView","isChipEnumeration","isChipsVisible","length","withHasChips","classes","hasChips","undefined","hasLabelValue","hasInnerLabel","hasOuterLabel","innerKeepPlaceholder","hasPlaceholder","hasTextAfter","hasTextBefore","hasPlaceholderPadding","innerLabelValue","innerLabelPlacementValue","innerPlaceholderValue","placeholderShown","clearClass","hasDividerClass","hasInnerHintClass","hasHint","hasHintClass","requiredPlacementClass","requiredAlignRight","labelPlacementClass","concat","hasValueClass","keepPlaceholderClass","wrapperWithoutLeftContent","hasEmptyContentLeft","wrapperWithoutRightContent","hasEmptyContentRight","contentRightCompensationMargin","hintRef","useOutsideClick","hintInnerRef","hintForkRef","handleInput","event","_ref2","target","textWidth","getInputWidth","currentTarget","width","useEffect","_inputRef$current2","removeProperty","handleFocus","handleBlur","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","map","text","_inputRef$current3","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","chipsWrapper","_ref3","chipId","validationView","String","resView","TextFieldChip","key","onClear","rootWrapper","_forceChipManipulationWithReadonly","InputContainer","hasDynamicWidth","Input","onInput","InputPlaceholder","hasPadding","isHidden","StyledTextAfter","StyledContentRightWrapper","StyledContentRight","LeftHelper","textFieldConfig","name","tag","layout","variations","css","viewCSS","sizeCSS","clearCSS","attrs","disabledCSS","readOnlyCSS","labelPlacementCSS","hintViewCSS","hintSizeCSS","defaults"],"mappings":"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"}
@@ -24,9 +24,7 @@ var ToastControllerHoc = function ToastControllerHoc(ToastComponent) {
24
24
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(props, _excluded);
25
25
  var _useToastInner = ToastProvider.useToastInner(),
26
26
  hideToast = _useToastInner.hideToast,
27
- isVisible = _useToastInner.isVisible,
28
- hideTimeout = _useToastInner.hideTimeout,
29
- animationRunTimeout = _useToastInner.animationRunTimeout;
27
+ isVisible = _useToastInner.isVisible;
30
28
  var toastKey = "".concat(text).concat(position);
31
29
  var showedClass = isVisible ? Toast_tokens.classes.toastShowed : Toast_tokens.classes.toastHidden;
32
30
  var showedFadeClass = isVisible ? Toast_tokens.classes.toastFadeShowed : Toast_tokens.classes.toastFadeHidden;
@@ -34,16 +32,6 @@ var ToastControllerHoc = function ToastControllerHoc(ToastComponent) {
34
32
  text: text,
35
33
  onCloseButtonClick: hideToast
36
34
  }, rest);
37
- React.useEffect(function () {
38
- return function () {
39
- if (hideTimeout !== null && hideTimeout !== void 0 && hideTimeout.current) {
40
- clearTimeout(hideTimeout.current);
41
- }
42
- if (animationRunTimeout !== null && animationRunTimeout !== void 0 && animationRunTimeout.current) {
43
- clearTimeout(animationRunTimeout.current);
44
- }
45
- };
46
- }, []);
47
35
  if (!text) {
48
36
  return null;
49
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ToastController.js","sources":["../../../src/components/Toast/ToastController.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport type { FC } from 'react';\n\nimport { classes } from './Toast.tokens';\nimport { ToastControllerProps, ToastProps } from './Toast.types';\nimport { StyledOverlay, StyledRoot } from './Toast.styles';\nimport { useToastInner } from './ToastProvider';\nimport { FADE_Z_INDEX, gradients } from './utils';\n\nexport const ToastControllerHoc = <T extends ToastProps>(ToastComponent: FC<T>) =>\n function ToastController(props: ToastControllerProps) {\n const { position = 'bottom', offset, fade, text, ...rest } = props;\n\n const { hideToast, isVisible, hideTimeout, animationRunTimeout } = useToastInner();\n const toastKey = `${text}${position}`;\n\n const showedClass = isVisible ? classes.toastShowed : classes.toastHidden;\n const showedFadeClass = isVisible ? classes.toastFadeShowed : classes.toastFadeHidden;\n\n const toastProps = {\n text,\n onCloseButtonClick: hideToast,\n ...rest,\n } as T;\n\n useEffect(() => {\n return () => {\n if (hideTimeout?.current) {\n clearTimeout(hideTimeout.current);\n }\n if (animationRunTimeout?.current) {\n clearTimeout(animationRunTimeout.current);\n }\n };\n }, []);\n\n if (!text) {\n return null;\n }\n\n return (\n <>\n {fade && (\n <StyledOverlay\n className={showedFadeClass}\n zIndex={FADE_Z_INDEX}\n backgroundColorProperty={gradients[position]}\n isClickable={false}\n />\n )}\n <StyledRoot\n key={toastKey}\n position={position}\n offset={offset}\n isVisible={isVisible}\n className={showedClass}\n >\n <ToastComponent {...toastProps} />\n </StyledRoot>\n </>\n );\n };\n"],"names":["ToastControllerHoc","ToastComponent","ToastController","props","_props$position","position","offset","fade","text","rest","_objectWithoutProperties","_excluded","_useToastInner","useToastInner","hideToast","isVisible","hideTimeout","animationRunTimeout","toastKey","concat","showedClass","classes","toastShowed","toastHidden","showedFadeClass","toastFadeShowed","toastFadeHidden","toastProps","_objectSpread","onCloseButtonClick","useEffect","current","clearTimeout","React","createElement","Fragment","StyledOverlay","className","zIndex","FADE_Z_INDEX","backgroundColorProperty","gradients","isClickable","StyledRoot","key"],"mappings":";;;;;;;;;;;;;;;;IASaA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAA0BC,cAAqB,EAAA;AAAA,EAAA,OAC1E,SAASC,eAAeA,CAACC,KAA2B,EAAE;AAClD,IAAA,IAAAC,eAAA,GAA6DD,KAAK,CAA1DE,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,eAAA;MAAEE,MAAM,GAA0BH,KAAK,CAArCG,MAAM;MAAEC,IAAI,GAAoBJ,KAAK,CAA7BI,IAAI;MAAEC,IAAI,GAAcL,KAAK,CAAvBK,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAKP,KAAK,EAAAQ,SAAA,CAAA,CAAA;AAElE,IAAA,IAAAC,cAAA,GAAmEC,2BAAa,EAAE;MAA1EC,SAAS,GAAAF,cAAA,CAATE,SAAS;MAAEC,SAAS,GAAAH,cAAA,CAATG,SAAS;MAAEC,WAAW,GAAAJ,cAAA,CAAXI,WAAW;MAAEC,mBAAmB,GAAAL,cAAA,CAAnBK,mBAAmB,CAAA;IAC9D,IAAMC,QAAQ,MAAAC,MAAA,CAAMX,IAAI,CAAAW,CAAAA,MAAA,CAAGd,QAAQ,CAAE,CAAA;IAErC,IAAMe,WAAW,GAAGL,SAAS,GAAGM,oBAAO,CAACC,WAAW,GAAGD,oBAAO,CAACE,WAAW,CAAA;IACzE,IAAMC,eAAe,GAAGT,SAAS,GAAGM,oBAAO,CAACI,eAAe,GAAGJ,oBAAO,CAACK,eAAe,CAAA;IAErF,IAAMC,UAAU,GAAAC,uCAAA,CAAA;AACZpB,MAAAA,IAAI,EAAJA,IAAI;AACJqB,MAAAA,kBAAkB,EAAEf,SAAAA;AAAS,KAAA,EAC1BL,IAAI,CACL,CAAA;AAENqB,IAAAA,eAAS,CAAC,YAAM;AACZ,MAAA,OAAO,YAAM;AACT,QAAA,IAAId,WAAW,KAAXA,IAAAA,IAAAA,WAAW,eAAXA,WAAW,CAAEe,OAAO,EAAE;AACtBC,UAAAA,YAAY,CAAChB,WAAW,CAACe,OAAO,CAAC,CAAA;AACrC,SAAA;AACA,QAAA,IAAId,mBAAmB,KAAnBA,IAAAA,IAAAA,mBAAmB,eAAnBA,mBAAmB,CAAEc,OAAO,EAAE;AAC9BC,UAAAA,YAAY,CAACf,mBAAmB,CAACc,OAAO,CAAC,CAAA;AAC7C,SAAA;OACH,CAAA;KACJ,EAAE,EAAE,CAAC,CAAA;IAEN,IAAI,CAACvB,IAAI,EAAE;AACP,MAAA,OAAO,IAAI,CAAA;AACf,KAAA;AAEA,IAAA,oBACIyB,sBAAA,CAAAC,aAAA,CAAAD,sBAAA,CAAAE,QAAA,EACK5B,IAAAA,EAAAA,IAAI,iBACD0B,sBAAA,CAAAC,aAAA,CAACE,0BAAa,EAAA;AACVC,MAAAA,SAAS,EAAEb,eAAgB;AAC3Bc,MAAAA,MAAM,EAAEC,kBAAa;AACrBC,MAAAA,uBAAuB,EAAEC,eAAS,CAACpC,QAAQ,CAAE;AAC7CqC,MAAAA,WAAW,EAAE,KAAA;AAAM,KACtB,CACJ,eACDT,sBAAA,CAAAC,aAAA,CAACS,uBAAU,EAAA;AACPC,MAAAA,GAAG,EAAE1B,QAAS;AACdb,MAAAA,QAAQ,EAAEA,QAAS;AACnBC,MAAAA,MAAM,EAAEA,MAAO;AACfS,MAAAA,SAAS,EAAEA,SAAU;AACrBsB,MAAAA,SAAS,EAAEjB,WAAAA;KAEXa,eAAAA,sBAAA,CAAAC,aAAA,CAACjC,cAAc,EAAK0B,UAAa,CACzB,CACd,CAAC,CAAA;GAEV,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"ToastController.js","sources":["../../../src/components/Toast/ToastController.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\n\nimport { classes } from './Toast.tokens';\nimport { ToastControllerProps, ToastProps } from './Toast.types';\nimport { StyledOverlay, StyledRoot } from './Toast.styles';\nimport { useToastInner } from './ToastProvider';\nimport { FADE_Z_INDEX, gradients } from './utils';\n\nexport const ToastControllerHoc = <T extends ToastProps>(ToastComponent: FC<T>) =>\n function ToastController(props: ToastControllerProps) {\n const { position = 'bottom', offset, fade, text, ...rest } = props;\n\n const { hideToast, isVisible } = useToastInner();\n const toastKey = `${text}${position}`;\n\n const showedClass = isVisible ? classes.toastShowed : classes.toastHidden;\n const showedFadeClass = isVisible ? classes.toastFadeShowed : classes.toastFadeHidden;\n\n const toastProps = {\n text,\n onCloseButtonClick: hideToast,\n ...rest,\n } as T;\n\n if (!text) {\n return null;\n }\n\n return (\n <>\n {fade && (\n <StyledOverlay\n className={showedFadeClass}\n zIndex={FADE_Z_INDEX}\n backgroundColorProperty={gradients[position]}\n isClickable={false}\n />\n )}\n <StyledRoot\n key={toastKey}\n position={position}\n offset={offset}\n isVisible={isVisible}\n className={showedClass}\n >\n <ToastComponent {...toastProps} />\n </StyledRoot>\n </>\n );\n };\n"],"names":["ToastControllerHoc","ToastComponent","ToastController","props","_props$position","position","offset","fade","text","rest","_objectWithoutProperties","_excluded","_useToastInner","useToastInner","hideToast","isVisible","toastKey","concat","showedClass","classes","toastShowed","toastHidden","showedFadeClass","toastFadeShowed","toastFadeHidden","toastProps","_objectSpread","onCloseButtonClick","React","createElement","Fragment","StyledOverlay","className","zIndex","FADE_Z_INDEX","backgroundColorProperty","gradients","isClickable","StyledRoot","key"],"mappings":";;;;;;;;;;;;;;;;IASaA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAA0BC,cAAqB,EAAA;AAAA,EAAA,OAC1E,SAASC,eAAeA,CAACC,KAA2B,EAAE;AAClD,IAAA,IAAAC,eAAA,GAA6DD,KAAK,CAA1DE,QAAQ;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,eAAA;MAAEE,MAAM,GAA0BH,KAAK,CAArCG,MAAM;MAAEC,IAAI,GAAoBJ,KAAK,CAA7BI,IAAI;MAAEC,IAAI,GAAcL,KAAK,CAAvBK,IAAI;AAAKC,MAAAA,IAAI,GAAAC,iDAAA,CAAKP,KAAK,EAAAQ,SAAA,CAAA,CAAA;AAElE,IAAA,IAAAC,cAAA,GAAiCC,2BAAa,EAAE;MAAxCC,SAAS,GAAAF,cAAA,CAATE,SAAS;MAAEC,SAAS,GAAAH,cAAA,CAATG,SAAS,CAAA;IAC5B,IAAMC,QAAQ,MAAAC,MAAA,CAAMT,IAAI,CAAAS,CAAAA,MAAA,CAAGZ,QAAQ,CAAE,CAAA;IAErC,IAAMa,WAAW,GAAGH,SAAS,GAAGI,oBAAO,CAACC,WAAW,GAAGD,oBAAO,CAACE,WAAW,CAAA;IACzE,IAAMC,eAAe,GAAGP,SAAS,GAAGI,oBAAO,CAACI,eAAe,GAAGJ,oBAAO,CAACK,eAAe,CAAA;IAErF,IAAMC,UAAU,GAAAC,uCAAA,CAAA;AACZlB,MAAAA,IAAI,EAAJA,IAAI;AACJmB,MAAAA,kBAAkB,EAAEb,SAAAA;AAAS,KAAA,EAC1BL,IAAI,CACL,CAAA;IAEN,IAAI,CAACD,IAAI,EAAE;AACP,MAAA,OAAO,IAAI,CAAA;AACf,KAAA;AAEA,IAAA,oBACIoB,sBAAA,CAAAC,aAAA,CAAAD,sBAAA,CAAAE,QAAA,EACKvB,IAAAA,EAAAA,IAAI,iBACDqB,sBAAA,CAAAC,aAAA,CAACE,0BAAa,EAAA;AACVC,MAAAA,SAAS,EAAEV,eAAgB;AAC3BW,MAAAA,MAAM,EAAEC,kBAAa;AACrBC,MAAAA,uBAAuB,EAAEC,eAAS,CAAC/B,QAAQ,CAAE;AAC7CgC,MAAAA,WAAW,EAAE,KAAA;AAAM,KACtB,CACJ,eACDT,sBAAA,CAAAC,aAAA,CAACS,uBAAU,EAAA;AACPC,MAAAA,GAAG,EAAEvB,QAAS;AACdX,MAAAA,QAAQ,EAAEA,QAAS;AACnBC,MAAAA,MAAM,EAAEA,MAAO;AACfS,MAAAA,SAAS,EAAEA,SAAU;AACrBiB,MAAAA,SAAS,EAAEd,WAAAA;KAEXU,eAAAA,sBAAA,CAAAC,aAAA,CAAC5B,cAAc,EAAKwB,UAAa,CACzB,CACd,CAAC,CAAA;GAEV,CAAA;AAAA;;;;"}
@@ -148,13 +148,13 @@ var ToastProviderHoc = function ToastProviderHoc(ToastComponent) {
148
148
  var onHide = toastInfo.onHide,
149
149
  timeout = toastInfo.timeout;
150
150
  var hideToast = React.useCallback(function () {
151
- if (!isVisible) {
152
- return;
153
- }
154
151
  if (hideTimeout !== null && hideTimeout !== void 0 && hideTimeout.current) {
155
152
  clearTimeout(hideTimeout.current);
156
153
  hideTimeout.current = null;
157
154
  }
155
+ if (!isVisible) {
156
+ return;
157
+ }
158
158
  onHide === null || onHide === void 0 || onHide();
159
159
  setIsVisible(false);
160
160
  animationRunTimeout.current = setTimeout(function () {
@@ -167,13 +167,26 @@ var ToastProviderHoc = function ToastProviderHoc(ToastComponent) {
167
167
  clearTimeout(animationRunTimeout.current);
168
168
  animationRunTimeout.current = null;
169
169
  }
170
+ return function () {
171
+ if (animationRunTimeout !== null && animationRunTimeout !== void 0 && animationRunTimeout.current) {
172
+ clearTimeout(animationRunTimeout.current);
173
+ }
174
+ };
170
175
  }, [timeout]);
176
+
177
+ // очистка таймаутов перенесена из ToastController, т. к. в StrictМоde react делает дополнительный unmount
171
178
  React.useEffect(function () {
172
179
  if (timeout && isVisible) {
173
180
  hideTimeout.current = setTimeout(function () {
174
181
  hideToast();
175
182
  }, timeout);
176
183
  }
184
+ return function () {
185
+ if (hideTimeout !== null && hideTimeout !== void 0 && hideTimeout.current) {
186
+ clearTimeout(hideTimeout.current);
187
+ hideTimeout.current = null;
188
+ }
189
+ };
177
190
  }, [isVisible, timeout]);
178
191
  return /*#__PURE__*/React__default.default.createElement(ToastContext.Provider, {
179
192
  value: {
@@ -1 +1 @@
1
- {"version":3,"file":"ToastProvider.js","sources":["../../../../src/components/Toast/ToastProvider/ToastProvider.tsx"],"sourcesContent":["import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport type { ReactNode, FC } from 'react';\n\nimport type { CustomToastProps, ToastControllerProps, ToastProps } from '../Toast.types';\nimport { DEFAULT_FADE, DEFAULT_POSITION, TIMER_DELAY } from '../utils';\n\nimport type { ShowToast, ShowToastArgs, ShowToastCallSignature, ToastContextType } from './ToastProvider.types';\n\nexport const ToastContext = createContext<ToastContextType | null>(null);\n\nexport const useToastInner = () => {\n const context = useContext(ToastContext);\n if (!context) {\n throw new Error('useToast must be used within a ToastProvider');\n }\n return context;\n};\n\nexport const useToast = () => {\n const { showToast, hideToast } = useToastInner();\n return { showToast, hideToast };\n};\n\nconst initialToastData = {\n text: undefined,\n offset: undefined,\n position: DEFAULT_POSITION,\n fade: DEFAULT_FADE,\n timeout: undefined,\n contentLeft: undefined,\n role: undefined,\n pilled: undefined,\n hasClose: undefined,\n width: undefined,\n size: 'm',\n view: 'primary',\n} as CustomToastProps;\n\nconst getShowToastCallSignature = (args: ShowToastCallSignature) => {\n if (typeof args[0] === 'object' && 'text' in args[0]) {\n return args[0];\n }\n\n // TODO: issue https://github.com/salute-developers/plasma/issues/333\n const [text, position, timeout, fade, contentLeft, role, offset, pilled, width, hasClose, size, view] = args;\n\n return { text, position, timeout, fade, contentLeft, role, offset, pilled, width, hasClose, size, view };\n};\n\nexport const ToastProviderHoc = <T extends ToastProps>(ToastComponent: FC<T>) =>\n function ToastProvider({ children }: { children: ReactNode }) {\n const [isVisible, setIsVisible] = useState(false);\n const [isHidden, setIsHidden] = useState(true);\n const hideTimeout = useRef<number | null>(null);\n const animationRunTimeout = useRef<number | null>(null);\n\n const [toastProps, setToastProps] = useState<ToastControllerProps>(initialToastData);\n const [toastInfo, setToastInfo] = useState<Pick<ShowToastArgs, 'timeout' | 'onHide'>>({\n timeout: undefined,\n onHide: undefined,\n });\n\n const showToastCallback: ShowToast = (...args: ShowToastCallSignature) => {\n if (isVisible) {\n return;\n }\n\n const {\n text,\n offset,\n position = DEFAULT_POSITION,\n fade = DEFAULT_FADE,\n timeout,\n contentLeft,\n role,\n pilled,\n hasClose,\n size,\n view,\n width,\n onHide,\n onShow,\n } = getShowToastCallSignature(args);\n\n setToastProps({\n text,\n width,\n position,\n offset,\n fade,\n contentLeft,\n role,\n pilled,\n hasClose,\n size,\n view,\n });\n\n setToastInfo({ timeout, onHide });\n\n setIsHidden(false);\n setIsVisible(true);\n onShow?.();\n };\n\n const showToast = useCallback(showToastCallback, []);\n\n const { onHide, timeout } = toastInfo;\n\n const hideToast = useCallback(() => {\n if (!isVisible) {\n return;\n }\n\n if (hideTimeout?.current) {\n clearTimeout(hideTimeout.current);\n hideTimeout.current = null;\n }\n\n onHide?.();\n setIsVisible(false);\n\n animationRunTimeout.current = setTimeout(() => {\n setIsHidden(true);\n setToastProps(initialToastData);\n }, TIMER_DELAY);\n }, [onHide, isVisible, isHidden]);\n\n useEffect(() => {\n if (timeout === null && animationRunTimeout.current !== null) {\n clearTimeout(animationRunTimeout.current);\n animationRunTimeout.current = null;\n }\n }, [timeout]);\n\n useEffect(() => {\n if (timeout && isVisible) {\n hideTimeout.current = setTimeout(() => {\n hideToast();\n }, timeout);\n }\n }, [isVisible, timeout]);\n\n return (\n <ToastContext.Provider value={{ showToast, hideToast, isVisible, hideTimeout, animationRunTimeout }}>\n {children}\n {!isHidden && <ToastComponent {...(toastProps as T)} />}\n </ToastContext.Provider>\n );\n };\n"],"names":["ToastContext","createContext","useToastInner","context","useContext","Error","useToast","_useToastInner","showToast","hideToast","initialToastData","text","undefined","offset","position","DEFAULT_POSITION","fade","DEFAULT_FADE","timeout","contentLeft","role","pilled","hasClose","width","size","view","getShowToastCallSignature","args","_typeof","_args","_slicedToArray","ToastProviderHoc","ToastComponent","ToastProvider","_ref","children","_useState","useState","_useState2","isVisible","setIsVisible","_useState3","_useState4","isHidden","setIsHidden","hideTimeout","useRef","animationRunTimeout","_useState5","_useState6","toastProps","setToastProps","_useState7","onHide","_useState8","toastInfo","setToastInfo","showToastCallback","_len","arguments","length","Array","_key","_getShowToastCallSign","_getShowToastCallSign2","_getShowToastCallSign3","onShow","useCallback","current","clearTimeout","setTimeout","TIMER_DELAY","useEffect","React","createElement","Provider","value"],"mappings":"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"}
1
+ {"version":3,"file":"ToastProvider.js","sources":["../../../../src/components/Toast/ToastProvider/ToastProvider.tsx"],"sourcesContent":["import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport type { ReactNode, FC } from 'react';\n\nimport type { CustomToastProps, ToastControllerProps, ToastProps } from '../Toast.types';\nimport { DEFAULT_FADE, DEFAULT_POSITION, TIMER_DELAY } from '../utils';\n\nimport type { ShowToast, ShowToastArgs, ShowToastCallSignature, ToastContextType } from './ToastProvider.types';\n\nexport const ToastContext = createContext<ToastContextType | null>(null);\n\nexport const useToastInner = () => {\n const context = useContext(ToastContext);\n if (!context) {\n throw new Error('useToast must be used within a ToastProvider');\n }\n return context;\n};\n\nexport const useToast = () => {\n const { showToast, hideToast } = useToastInner();\n return { showToast, hideToast };\n};\n\nconst initialToastData = {\n text: undefined,\n offset: undefined,\n position: DEFAULT_POSITION,\n fade: DEFAULT_FADE,\n timeout: undefined,\n contentLeft: undefined,\n role: undefined,\n pilled: undefined,\n hasClose: undefined,\n width: undefined,\n size: 'm',\n view: 'primary',\n} as CustomToastProps;\n\nconst getShowToastCallSignature = (args: ShowToastCallSignature) => {\n if (typeof args[0] === 'object' && 'text' in args[0]) {\n return args[0];\n }\n\n // TODO: issue https://github.com/salute-developers/plasma/issues/333\n const [text, position, timeout, fade, contentLeft, role, offset, pilled, width, hasClose, size, view] = args;\n\n return { text, position, timeout, fade, contentLeft, role, offset, pilled, width, hasClose, size, view };\n};\n\nexport const ToastProviderHoc = <T extends ToastProps>(ToastComponent: FC<T>) =>\n function ToastProvider({ children }: { children: ReactNode }) {\n const [isVisible, setIsVisible] = useState(false);\n const [isHidden, setIsHidden] = useState(true);\n const hideTimeout = useRef<number | null>(null);\n const animationRunTimeout = useRef<number | null>(null);\n\n const [toastProps, setToastProps] = useState<ToastControllerProps>(initialToastData);\n const [toastInfo, setToastInfo] = useState<Pick<ShowToastArgs, 'timeout' | 'onHide'>>({\n timeout: undefined,\n onHide: undefined,\n });\n\n const showToastCallback: ShowToast = (...args: ShowToastCallSignature) => {\n if (isVisible) {\n return;\n }\n\n const {\n text,\n offset,\n position = DEFAULT_POSITION,\n fade = DEFAULT_FADE,\n timeout,\n contentLeft,\n role,\n pilled,\n hasClose,\n size,\n view,\n width,\n onHide,\n onShow,\n } = getShowToastCallSignature(args);\n\n setToastProps({\n text,\n width,\n position,\n offset,\n fade,\n contentLeft,\n role,\n pilled,\n hasClose,\n size,\n view,\n });\n\n setToastInfo({ timeout, onHide });\n\n setIsHidden(false);\n setIsVisible(true);\n onShow?.();\n };\n\n const showToast = useCallback(showToastCallback, []);\n\n const { onHide, timeout } = toastInfo;\n\n const hideToast = useCallback(() => {\n if (hideTimeout?.current) {\n clearTimeout(hideTimeout.current);\n hideTimeout.current = null;\n }\n\n if (!isVisible) {\n return;\n }\n\n onHide?.();\n setIsVisible(false);\n\n animationRunTimeout.current = setTimeout(() => {\n setIsHidden(true);\n setToastProps(initialToastData);\n }, TIMER_DELAY);\n }, [onHide, isVisible, isHidden]);\n\n useEffect(() => {\n if (timeout === null && animationRunTimeout.current !== null) {\n clearTimeout(animationRunTimeout.current);\n animationRunTimeout.current = null;\n }\n\n return () => {\n if (animationRunTimeout?.current) {\n clearTimeout(animationRunTimeout.current);\n }\n };\n }, [timeout]);\n\n // очистка таймаутов перенесена из ToastController, т. к. в StrictМоde react делает дополнительный unmount\n useEffect(() => {\n if (timeout && isVisible) {\n hideTimeout.current = setTimeout(() => {\n hideToast();\n }, timeout);\n }\n\n return () => {\n if (hideTimeout?.current) {\n clearTimeout(hideTimeout.current);\n hideTimeout.current = null;\n }\n };\n }, [isVisible, timeout]);\n\n return (\n <ToastContext.Provider value={{ showToast, hideToast, isVisible, hideTimeout, animationRunTimeout }}>\n {children}\n {!isHidden && <ToastComponent {...(toastProps as T)} />}\n </ToastContext.Provider>\n );\n };\n"],"names":["ToastContext","createContext","useToastInner","context","useContext","Error","useToast","_useToastInner","showToast","hideToast","initialToastData","text","undefined","offset","position","DEFAULT_POSITION","fade","DEFAULT_FADE","timeout","contentLeft","role","pilled","hasClose","width","size","view","getShowToastCallSignature","args","_typeof","_args","_slicedToArray","ToastProviderHoc","ToastComponent","ToastProvider","_ref","children","_useState","useState","_useState2","isVisible","setIsVisible","_useState3","_useState4","isHidden","setIsHidden","hideTimeout","useRef","animationRunTimeout","_useState5","_useState6","toastProps","setToastProps","_useState7","onHide","_useState8","toastInfo","setToastInfo","showToastCallback","_len","arguments","length","Array","_key","_getShowToastCallSign","_getShowToastCallSign2","_getShowToastCallSign3","onShow","useCallback","current","clearTimeout","setTimeout","TIMER_DELAY","useEffect","React","createElement","Provider","value"],"mappings":"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"}