@salutejs/plasma-new-hope 0.320.1-canary.1918.14488682861.0 → 0.320.1-canary.1921.14492825856.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.
- package/cjs/components/Checkbox/Checkbox.js +18 -3
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/IconsSvg.js +39 -0
- package/cjs/components/Checkbox/IconsSvg.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.js +5 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +4 -2
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
- package/cjs/components/Radiobox/Radiobox.js.map +1 -1
- package/cjs/components/Select/Select.js +5 -1
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/ui/Inner/ui/Item/Item.js +4 -2
- package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
- package/cjs/components/Sheet/Sheet.css +5 -5
- package/cjs/components/Sheet/Sheet.js +9 -2
- package/cjs/components/Sheet/Sheet.js.map +1 -1
- package/cjs/components/Sheet/Sheet.styles.js +17 -17
- package/cjs/components/Sheet/Sheet.styles.js.map +1 -1
- package/cjs/components/Sheet/{Sheet.styles_o73i75.css → Sheet.styles_fnrgwh.css} +1 -1
- package/cjs/components/Sheet/Sheet.tokens.js +2 -1
- package/cjs/components/Sheet/Sheet.tokens.js.map +1 -1
- package/cjs/components/Sheet/variations/_handlePlacement/base.js +9 -0
- package/cjs/components/Sheet/variations/_handlePlacement/base.js.map +1 -0
- package/cjs/components/Sheet/variations/_handlePlacement/base_x642ct.css +1 -0
- package/cjs/components/Table/Table.css +12 -12
- package/cjs/components/Table/Table.js +8 -0
- package/cjs/components/Table/Table.js.map +1 -1
- package/cjs/components/Table/Table.styles.js +9 -9
- package/cjs/components/Table/Table.styles.js.map +1 -1
- package/cjs/components/Table/{Table.styles_as90a.css → Table.styles_sl2dfn.css} +1 -1
- package/cjs/components/Table/Table.tokens.js +3 -0
- package/cjs/components/Table/Table.tokens.js.map +1 -1
- package/cjs/components/Table/ui/Cell/Cell.css +12 -12
- package/cjs/components/Table/ui/EditableCell/EditableCell.css +12 -12
- package/cjs/components/Table/ui/HeadCell/HeadCell.css +12 -12
- package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +12 -12
- package/cjs/index.css +17 -17
- package/emotion/cjs/components/Checkbox/Checkbox.js +18 -3
- package/emotion/cjs/components/Checkbox/IconsSvg.js +38 -1
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +5 -1
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +4 -2
- package/emotion/cjs/components/Select/Select.js +5 -1
- package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.js +4 -2
- package/emotion/cjs/components/Sheet/Sheet.js +9 -2
- package/emotion/cjs/components/Sheet/Sheet.styles.js +6 -6
- package/emotion/cjs/components/Sheet/Sheet.tokens.js +2 -1
- package/emotion/cjs/components/Sheet/variations/_handlePlacement/base.js +8 -0
- package/emotion/cjs/components/Sheet/variations/_handlePlacement/tokens.json +1 -0
- package/emotion/cjs/components/Table/Table.js +8 -0
- package/emotion/cjs/components/Table/Table.styles.js +12 -12
- package/emotion/cjs/components/Table/Table.tokens.js +3 -0
- package/emotion/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.js +6 -3
- package/emotion/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.outline.config.js +13 -13
- package/emotion/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.stories.tsx +6 -0
- package/emotion/cjs/examples/plasma_b2c/components/Radiobox/Radiobox.js +3 -3
- package/emotion/cjs/examples/plasma_b2c/components/Sheet/Sheet.config.js +7 -2
- package/emotion/cjs/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +24 -3
- package/emotion/cjs/examples/plasma_b2c/components/Table/Table.config.js +5 -5
- package/emotion/cjs/examples/plasma_web/components/Checkbox/Checkbox.js +3 -3
- package/emotion/cjs/examples/plasma_web/components/Radiobox/Radiobox.js +3 -3
- package/emotion/cjs/examples/plasma_web/components/Sheet/Sheet.config.js +5 -1
- package/emotion/cjs/examples/plasma_web/components/Sheet/Sheet.stories.tsx +24 -3
- package/emotion/cjs/examples/plasma_web/components/Table/Table.config.js +5 -5
- package/emotion/es/components/Checkbox/Checkbox.js +19 -4
- package/emotion/es/components/Checkbox/IconsSvg.js +37 -0
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +5 -1
- package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +4 -2
- package/emotion/es/components/Select/Select.js +5 -1
- package/emotion/es/components/Select/ui/Inner/ui/Item/Item.js +4 -2
- package/emotion/es/components/Sheet/Sheet.js +9 -2
- package/emotion/es/components/Sheet/Sheet.styles.js +6 -6
- package/emotion/es/components/Sheet/Sheet.tokens.js +2 -1
- package/emotion/es/components/Sheet/variations/_handlePlacement/base.js +2 -0
- package/emotion/es/components/Sheet/variations/_handlePlacement/tokens.json +1 -0
- package/emotion/es/components/Table/Table.js +8 -0
- package/emotion/es/components/Table/Table.styles.js +12 -12
- package/emotion/es/components/Table/Table.tokens.js +3 -0
- package/emotion/es/examples/plasma_b2c/components/Checkbox/Checkbox.js +5 -2
- package/emotion/es/examples/plasma_b2c/components/Checkbox/Checkbox.outline.config.js +13 -13
- package/emotion/es/examples/plasma_b2c/components/Checkbox/Checkbox.stories.tsx +6 -0
- package/emotion/es/examples/plasma_b2c/components/Radiobox/Radiobox.js +2 -2
- package/emotion/es/examples/plasma_b2c/components/Sheet/Sheet.config.js +7 -2
- package/emotion/es/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +24 -3
- package/emotion/es/examples/plasma_b2c/components/Table/Table.config.js +5 -5
- package/emotion/es/examples/plasma_web/components/Checkbox/Checkbox.js +2 -2
- package/emotion/es/examples/plasma_web/components/Radiobox/Radiobox.js +2 -2
- package/emotion/es/examples/plasma_web/components/Sheet/Sheet.config.js +5 -1
- package/emotion/es/examples/plasma_web/components/Sheet/Sheet.stories.tsx +24 -3
- package/emotion/es/examples/plasma_web/components/Table/Table.config.js +5 -5
- package/es/components/Checkbox/Checkbox.js +19 -4
- package/es/components/Checkbox/Checkbox.js.map +1 -1
- package/es/components/Checkbox/IconsSvg.js +38 -1
- package/es/components/Checkbox/IconsSvg.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/Combobox.js +5 -1
- package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +4 -2
- package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
- package/es/components/Radiobox/Radiobox.js.map +1 -1
- package/es/components/Select/Select.js +5 -1
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/ui/Inner/ui/Item/Item.js +4 -2
- package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
- package/es/components/Sheet/Sheet.css +5 -5
- package/es/components/Sheet/Sheet.js +9 -2
- package/es/components/Sheet/Sheet.js.map +1 -1
- package/es/components/Sheet/Sheet.styles.js +17 -17
- package/es/components/Sheet/Sheet.styles.js.map +1 -1
- package/es/components/Sheet/{Sheet.styles_o73i75.css → Sheet.styles_fnrgwh.css} +1 -1
- package/es/components/Sheet/Sheet.tokens.js +2 -1
- package/es/components/Sheet/Sheet.tokens.js.map +1 -1
- package/es/components/Sheet/variations/_handlePlacement/base.js +5 -0
- package/es/components/Sheet/variations/_handlePlacement/base.js.map +1 -0
- package/es/components/Sheet/variations/_handlePlacement/base_x642ct.css +1 -0
- package/es/components/Table/Table.css +12 -12
- package/es/components/Table/Table.js +8 -0
- package/es/components/Table/Table.js.map +1 -1
- package/es/components/Table/Table.styles.js +9 -9
- package/es/components/Table/Table.styles.js.map +1 -1
- package/es/components/Table/{Table.styles_as90a.css → Table.styles_sl2dfn.css} +1 -1
- package/es/components/Table/Table.tokens.js +3 -0
- package/es/components/Table/Table.tokens.js.map +1 -1
- package/es/components/Table/ui/Cell/Cell.css +12 -12
- package/es/components/Table/ui/EditableCell/EditableCell.css +12 -12
- package/es/components/Table/ui/HeadCell/HeadCell.css +12 -12
- package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +12 -12
- package/es/index.css +17 -17
- package/package.json +5 -5
- package/styled-components/cjs/components/Checkbox/Checkbox.js +18 -3
- package/styled-components/cjs/components/Checkbox/IconsSvg.js +38 -1
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +5 -1
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +4 -2
- package/styled-components/cjs/components/Select/Select.js +5 -1
- package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.js +4 -2
- package/styled-components/cjs/components/Sheet/Sheet.js +9 -2
- package/styled-components/cjs/components/Sheet/Sheet.styles.js +1 -1
- package/styled-components/cjs/components/Sheet/Sheet.tokens.js +2 -1
- package/styled-components/cjs/components/Sheet/variations/_handlePlacement/base.js +8 -0
- package/styled-components/cjs/components/Sheet/variations/_handlePlacement/tokens.json +1 -0
- package/styled-components/cjs/components/Table/Table.js +8 -0
- package/styled-components/cjs/components/Table/Table.styles.js +1 -1
- package/styled-components/cjs/components/Table/Table.tokens.js +3 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.js +6 -3
- package/styled-components/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.outline.config.js +2 -2
- package/styled-components/cjs/examples/plasma_b2c/components/Checkbox/Checkbox.stories.tsx +6 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Radiobox/Radiobox.js +3 -3
- package/styled-components/cjs/examples/plasma_b2c/components/Sheet/Sheet.config.js +6 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +24 -3
- package/styled-components/cjs/examples/plasma_b2c/components/Table/Table.config.js +3 -3
- package/styled-components/cjs/examples/plasma_web/components/Checkbox/Checkbox.js +3 -3
- package/styled-components/cjs/examples/plasma_web/components/Radiobox/Radiobox.js +3 -3
- package/styled-components/cjs/examples/plasma_web/components/Sheet/Sheet.config.js +4 -0
- package/styled-components/cjs/examples/plasma_web/components/Sheet/Sheet.stories.tsx +24 -3
- package/styled-components/cjs/examples/plasma_web/components/Table/Table.config.js +3 -3
- package/styled-components/es/components/Checkbox/Checkbox.js +19 -4
- package/styled-components/es/components/Checkbox/IconsSvg.js +37 -0
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +5 -1
- package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +4 -2
- package/styled-components/es/components/Select/Select.js +5 -1
- package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.js +4 -2
- package/styled-components/es/components/Sheet/Sheet.js +9 -2
- package/styled-components/es/components/Sheet/Sheet.styles.js +1 -1
- package/styled-components/es/components/Sheet/Sheet.tokens.js +2 -1
- package/styled-components/es/components/Sheet/variations/_handlePlacement/base.js +2 -0
- package/styled-components/es/components/Sheet/variations/_handlePlacement/tokens.json +1 -0
- package/styled-components/es/components/Table/Table.js +8 -0
- package/styled-components/es/components/Table/Table.styles.js +1 -1
- package/styled-components/es/components/Table/Table.tokens.js +3 -0
- package/styled-components/es/examples/plasma_b2c/components/Checkbox/Checkbox.js +5 -2
- package/styled-components/es/examples/plasma_b2c/components/Checkbox/Checkbox.outline.config.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/Checkbox/Checkbox.stories.tsx +6 -0
- package/styled-components/es/examples/plasma_b2c/components/Radiobox/Radiobox.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/Sheet/Sheet.config.js +6 -1
- package/styled-components/es/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +24 -3
- package/styled-components/es/examples/plasma_b2c/components/Table/Table.config.js +3 -3
- package/styled-components/es/examples/plasma_web/components/Checkbox/Checkbox.js +2 -2
- package/styled-components/es/examples/plasma_web/components/Radiobox/Radiobox.js +2 -2
- package/styled-components/es/examples/plasma_web/components/Sheet/Sheet.config.js +4 -0
- package/styled-components/es/examples/plasma_web/components/Sheet/Sheet.stories.tsx +24 -3
- package/styled-components/es/examples/plasma_web/components/Table/Table.config.js +3 -3
- package/types/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/types/components/Checkbox/Checkbox.types.d.ts +1 -0
- package/types/components/Checkbox/Checkbox.types.d.ts.map +1 -1
- package/types/components/Checkbox/IconsSvg.d.ts +2 -0
- package/types/components/Checkbox/IconsSvg.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.d.ts.map +1 -1
- package/types/components/Radiobox/Radiobox.d.ts +3 -3
- package/types/components/Radiobox/Radiobox.d.ts.map +1 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/ui/Inner/ui/Item/Item.d.ts.map +1 -1
- package/types/components/Sheet/Sheet.d.ts +4 -0
- package/types/components/Sheet/Sheet.d.ts.map +1 -1
- package/types/components/Sheet/Sheet.styles.d.ts.map +1 -1
- package/types/components/Sheet/Sheet.tokens.d.ts +1 -0
- package/types/components/Sheet/Sheet.tokens.d.ts.map +1 -1
- package/types/components/Sheet/Sheet.types.d.ts +4 -0
- package/types/components/Sheet/Sheet.types.d.ts.map +1 -1
- package/types/components/Sheet/variations/_handlePlacement/base.d.ts +2 -0
- package/types/components/Sheet/variations/_handlePlacement/base.d.ts.map +1 -0
- package/types/components/Table/Table.d.ts.map +1 -1
- package/types/components/Table/Table.tokens.d.ts +3 -0
- package/types/components/Table/Table.tokens.d.ts.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Checkbox.js","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useMemo, useRef } from 'react';\nimport { safeUseId, useForkRef, extractTextFrom } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as focusedCSS } from './variations/_focused/base';\nimport { Done, Indeterminate } from './IconsSvg';\nimport {\n StyledContent,\n StyledContentWrapper,\n StyledDescription,\n StyledInput,\n StyledLabel,\n StyledTrigger,\n base,\n StyledTriggerWrapper,\n} from './Checkbox.styles';\nimport type { CheckboxProps } from './Checkbox.types';\nimport { classes } from './Checkbox.tokens';\n\nexport const checkboxRoot = (Root: RootProps<HTMLInputElement, CheckboxProps>) =>\n forwardRef<HTMLInputElement, CheckboxProps>((props, ref) => {\n const {\n size,\n view,\n focused,\n disabled,\n id,\n label,\n description,\n indeterminate,\n style,\n className,\n singleLine = false,\n 'aria-label': ariaLabelExternal,\n ...rest\n } = props;\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n const forkRef = useForkRef(inputRef, ref);\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.indeterminate = Boolean(indeterminate);\n }\n }, [inputRef, indeterminate]);\n\n const uniqId = safeUseId();\n const uniqLabelId = `label-${uniqId}`;\n const uniqDescriptionId = `description-${uniqId}`;\n const checkboxId = id || `input-${uniqId}`;\n\n const ariaLabel = useMemo(() => ariaLabelExternal || extractTextFrom(label), [ariaLabelExternal, label]);\n const isLabelAriaHidden = typeof label === 'string';\n const canFocused = focused ? 0 : -1;\n const hasContent = label || description;\n const singleLineClass = singleLine ? classes.singleLine : undefined;\n const onlyDescriptionClass = !label && description ? classes.onlyDescription : undefined;\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n focused={focused}\n style={style}\n className={className}\n tabIndex={-1}\n >\n <StyledInput\n {...rest}\n id={checkboxId}\n ref={forkRef}\n type=\"checkbox\"\n disabled={disabled}\n aria-label={ariaLabel}\n aria-describedby={uniqDescriptionId}\n tabIndex={canFocused}\n />\n <StyledContentWrapper htmlFor={checkboxId} className={singleLineClass}>\n <StyledTriggerWrapper>\n <StyledTrigger className={classes.checkboxTrigger}>\n {indeterminate ? <Indeterminate /> : <Done />}\n </StyledTrigger>\n </StyledTriggerWrapper>\n {hasContent && (\n <StyledContent className={singleLineClass}>\n {label && (\n <StyledLabel\n className={singleLineClass}\n id={uniqLabelId}\n aria-hidden={isLabelAriaHidden}\n >\n {label}\n </StyledLabel>\n )}\n {description && (\n <StyledDescription\n className={cx(singleLineClass, onlyDescriptionClass)}\n id={uniqDescriptionId}\n >\n {description}\n </StyledDescription>\n )}\n </StyledContent>\n )}\n </StyledContentWrapper>\n </Root>\n );\n });\n\nexport const checkboxConfig = {\n name: 'Checkbox',\n tag: 'div',\n layout: checkboxRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n },\n focused: {\n css: focusedCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'accent',\n },\n};\n"],"names":["checkboxRoot","Root","forwardRef","props","ref","size","view","focused","disabled","id","label","description","indeterminate","style","className","_props$singleLine","singleLine","ariaLabelExternal","rest","_objectWithoutProperties","_excluded","inputRef","useRef","forkRef","useForkRef","useEffect","current","Boolean","uniqId","safeUseId","uniqLabelId","concat","uniqDescriptionId","checkboxId","ariaLabel","useMemo","extractTextFrom","isLabelAriaHidden","canFocused","hasContent","singleLineClass","classes","undefined","onlyDescriptionClass","onlyDescription","React","createElement","tabIndex","StyledInput","_extends","type","StyledContentWrapper","htmlFor","StyledTriggerWrapper","StyledTrigger","checkboxTrigger","_Indeterminate","Indeterminate","_Done","Done","StyledContent","StyledLabel","StyledDescription","cx","checkboxConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","focusedCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Checkbox.js","sources":["../../../src/components/Checkbox/Checkbox.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useMemo, useRef } from 'react';\nimport { safeUseId, useForkRef, extractTextFrom } from '@salutejs/plasma-core';\n\nimport type { RootProps } from '../../engines/types';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as focusedCSS } from './variations/_focused/base';\nimport { Done, Indeterminate, DoneThin, IndeterminateThin } from './IconsSvg';\nimport {\n StyledContent,\n StyledContentWrapper,\n StyledDescription,\n StyledInput,\n StyledLabel,\n StyledTrigger,\n base,\n StyledTriggerWrapper,\n} from './Checkbox.styles';\nimport type { CheckboxProps } from './Checkbox.types';\nimport { classes } from './Checkbox.tokens';\n\nexport const checkboxRoot = (Root: RootProps<HTMLInputElement, CheckboxProps>) =>\n forwardRef<HTMLInputElement, CheckboxProps>((props, ref) => {\n const {\n size,\n view,\n focused,\n disabled,\n id,\n label,\n description,\n indeterminate,\n appearance,\n style,\n className,\n singleLine = false,\n 'aria-label': ariaLabelExternal,\n ...rest\n } = props;\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n const forkRef = useForkRef(inputRef, ref);\n\n useEffect(() => {\n if (inputRef.current) {\n inputRef.current.indeterminate = Boolean(indeterminate);\n }\n }, [inputRef, indeterminate]);\n\n const uniqId = safeUseId();\n const uniqLabelId = `label-${uniqId}`;\n const uniqDescriptionId = `description-${uniqId}`;\n const checkboxId = id || `input-${uniqId}`;\n\n const ariaLabel = useMemo(() => ariaLabelExternal || extractTextFrom(label), [ariaLabelExternal, label]);\n const isLabelAriaHidden = typeof label === 'string';\n const canFocused = focused ? 0 : -1;\n const hasContent = label || description;\n const singleLineClass = singleLine ? classes.singleLine : undefined;\n const onlyDescriptionClass = !label && description ? classes.onlyDescription : undefined;\n\n // Временное решение\n const getIcon = () => {\n if (appearance === 'outline') {\n return <DoneThin />;\n }\n\n return <Done />;\n };\n\n const getIndeterminate = () => {\n if (appearance === 'outline') {\n return <IndeterminateThin />;\n }\n\n return <Indeterminate />;\n };\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n focused={focused}\n style={style}\n className={className}\n tabIndex={-1}\n >\n <StyledInput\n {...rest}\n id={checkboxId}\n ref={forkRef}\n type=\"checkbox\"\n disabled={disabled}\n aria-label={ariaLabel}\n aria-describedby={uniqDescriptionId}\n tabIndex={canFocused}\n />\n <StyledContentWrapper htmlFor={checkboxId} className={singleLineClass}>\n <StyledTriggerWrapper>\n <StyledTrigger className={classes.checkboxTrigger}>\n {indeterminate ? getIndeterminate() : getIcon()}\n </StyledTrigger>\n </StyledTriggerWrapper>\n {hasContent && (\n <StyledContent className={singleLineClass}>\n {label && (\n <StyledLabel\n className={singleLineClass}\n id={uniqLabelId}\n aria-hidden={isLabelAriaHidden}\n >\n {label}\n </StyledLabel>\n )}\n {description && (\n <StyledDescription\n className={cx(singleLineClass, onlyDescriptionClass)}\n id={uniqDescriptionId}\n >\n {description}\n </StyledDescription>\n )}\n </StyledContent>\n )}\n </StyledContentWrapper>\n </Root>\n );\n });\n\nexport const checkboxConfig = {\n name: 'Checkbox',\n tag: 'div',\n layout: checkboxRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n },\n focused: {\n css: focusedCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'accent',\n },\n};\n"],"names":["checkboxRoot","Root","forwardRef","props","ref","size","view","focused","disabled","id","label","description","indeterminate","appearance","style","className","_props$singleLine","singleLine","ariaLabelExternal","rest","_objectWithoutProperties","_excluded","inputRef","useRef","forkRef","useForkRef","useEffect","current","Boolean","uniqId","safeUseId","uniqLabelId","concat","uniqDescriptionId","checkboxId","ariaLabel","useMemo","extractTextFrom","isLabelAriaHidden","canFocused","hasContent","singleLineClass","classes","undefined","onlyDescriptionClass","onlyDescription","getIcon","_DoneThin","React","createElement","DoneThin","_Done","Done","getIndeterminate","_IndeterminateThin","IndeterminateThin","_Indeterminate","Indeterminate","tabIndex","StyledInput","_extends","type","StyledContentWrapper","htmlFor","StyledTriggerWrapper","StyledTrigger","checkboxTrigger","StyledContent","StyledLabel","StyledDescription","cx","checkboxConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","focusedCSS","defaults"],"mappings":"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"}
|
@@ -18,6 +18,24 @@ var Done = function Done() {
|
|
18
18
|
d: "m5.70711,8.15582c-0.39053,-0.39052 -1.02369,-0.39052 -1.41422,0c-0.39052,0.39053 -0.39052,1.02369 0,1.41422l3.70666,3.70666l6.71095,-6.70248c0.3908,-0.39027 0.3912,-1.02344 0.0009,-1.41421c-0.3903,-0.39077 -1.02344,-0.39117 -1.41421,-0.00089l-5.29674,5.29004l-2.29334,-2.29334z"
|
19
19
|
})));
|
20
20
|
};
|
21
|
+
var DoneThin = function DoneThin() {
|
22
|
+
return /*#__PURE__*/React.createElement("div", {
|
23
|
+
style: {
|
24
|
+
display: 'inline-flex'
|
25
|
+
}
|
26
|
+
}, /*#__PURE__*/React.createElement("svg", {
|
27
|
+
width: "10",
|
28
|
+
height: "8",
|
29
|
+
viewBox: "0 0 10 8",
|
30
|
+
fill: "none",
|
31
|
+
style: {
|
32
|
+
width: "var(".concat(tokens.triggerSize, ")")
|
33
|
+
}
|
34
|
+
}, /*#__PURE__*/React.createElement("path", {
|
35
|
+
d: "M0.5 4L3.5 7L9.5 1",
|
36
|
+
stroke: "var(".concat(tokens.iconColor, ")")
|
37
|
+
})));
|
38
|
+
};
|
21
39
|
var Indeterminate = function Indeterminate() {
|
22
40
|
return /*#__PURE__*/React.createElement("div", {
|
23
41
|
style: {
|
@@ -37,6 +55,25 @@ var Indeterminate = function Indeterminate() {
|
|
37
55
|
d: "m5.09449,9.0315l8,0"
|
38
56
|
})));
|
39
57
|
};
|
58
|
+
var IndeterminateThin = function IndeterminateThin() {
|
59
|
+
return /*#__PURE__*/React.createElement("div", {
|
60
|
+
style: {
|
61
|
+
display: 'inline-flex'
|
62
|
+
}
|
63
|
+
}, /*#__PURE__*/React.createElement("svg", {
|
64
|
+
width: "100%",
|
65
|
+
viewBox: "0 0 18 18",
|
66
|
+
fill: "none",
|
67
|
+
style: {
|
68
|
+
width: "var(".concat(tokens.triggerSize, ")")
|
69
|
+
}
|
70
|
+
}, /*#__PURE__*/React.createElement("path", {
|
71
|
+
strokeLinecap: "round",
|
72
|
+
strokeWidth: "1",
|
73
|
+
stroke: "var(".concat(tokens.iconColor, ")"),
|
74
|
+
d: "m5.09449,9.0315l8,0"
|
75
|
+
})));
|
76
|
+
};
|
40
77
|
|
41
|
-
export { Done, Indeterminate };
|
78
|
+
export { Done, DoneThin, Indeterminate, IndeterminateThin };
|
42
79
|
//# sourceMappingURL=IconsSvg.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"IconsSvg.js","sources":["../../../src/components/Checkbox/IconsSvg.tsx"],"sourcesContent":["import React from 'react';\n\nimport { tokens } from './Checkbox.tokens';\n\nexport const Done = () => (\n <div style={{ display: 'inline-flex' }}>\n <svg width=\"100%\" viewBox=\"0 0 18 18\" fill=\"none\" style={{ width: `var(${tokens.triggerSize})` }}>\n <path\n fill={`var(${tokens.iconColor})`}\n d=\"m5.70711,8.15582c-0.39053,-0.39052 -1.02369,-0.39052 -1.41422,0c-0.39052,0.39053 -0.39052,1.02369 0,1.41422l3.70666,3.70666l6.71095,-6.70248c0.3908,-0.39027 0.3912,-1.02344 0.0009,-1.41421c-0.3903,-0.39077 -1.02344,-0.39117 -1.41421,-0.00089l-5.29674,5.29004l-2.29334,-2.29334z\"\n />\n </svg>\n </div>\n);\n\nexport const Indeterminate = () => (\n <div style={{ display: 'inline-flex' }}>\n <svg width=\"100%\" viewBox=\"0 0 18 18\" fill=\"none\" style={{ width: `var(${tokens.triggerSize})` }}>\n <path strokeLinecap=\"round\" strokeWidth=\"2\" stroke={`var(${tokens.iconColor})`} d=\"m5.09449,9.0315l8,0\" />\n </svg>\n </div>\n);\n"],"names":["Done","React","createElement","style","display","width","viewBox","fill","concat","tokens","triggerSize","iconColor","d","Indeterminate","strokeLinecap","strokeWidth","
|
1
|
+
{"version":3,"file":"IconsSvg.js","sources":["../../../src/components/Checkbox/IconsSvg.tsx"],"sourcesContent":["import React from 'react';\n\nimport { tokens } from './Checkbox.tokens';\n\nexport const Done = () => (\n <div style={{ display: 'inline-flex' }}>\n <svg width=\"100%\" viewBox=\"0 0 18 18\" fill=\"none\" style={{ width: `var(${tokens.triggerSize})` }}>\n <path\n fill={`var(${tokens.iconColor})`}\n d=\"m5.70711,8.15582c-0.39053,-0.39052 -1.02369,-0.39052 -1.41422,0c-0.39052,0.39053 -0.39052,1.02369 0,1.41422l3.70666,3.70666l6.71095,-6.70248c0.3908,-0.39027 0.3912,-1.02344 0.0009,-1.41421c-0.3903,-0.39077 -1.02344,-0.39117 -1.41421,-0.00089l-5.29674,5.29004l-2.29334,-2.29334z\"\n />\n </svg>\n </div>\n);\n\nexport const DoneThin = () => (\n <div style={{ display: 'inline-flex' }}>\n <svg width=\"10\" height=\"8\" viewBox=\"0 0 10 8\" fill=\"none\" style={{ width: `var(${tokens.triggerSize})` }}>\n <path d=\"M0.5 4L3.5 7L9.5 1\" stroke={`var(${tokens.iconColor})`} />\n </svg>\n </div>\n);\n\nexport const Indeterminate = () => (\n <div style={{ display: 'inline-flex' }}>\n <svg width=\"100%\" viewBox=\"0 0 18 18\" fill=\"none\" style={{ width: `var(${tokens.triggerSize})` }}>\n <path strokeLinecap=\"round\" strokeWidth=\"2\" stroke={`var(${tokens.iconColor})`} d=\"m5.09449,9.0315l8,0\" />\n </svg>\n </div>\n);\n\nexport const IndeterminateThin = () => (\n <div style={{ display: 'inline-flex' }}>\n <svg width=\"100%\" viewBox=\"0 0 18 18\" fill=\"none\" style={{ width: `var(${tokens.triggerSize})` }}>\n <path strokeLinecap=\"round\" strokeWidth=\"1\" stroke={`var(${tokens.iconColor})`} d=\"m5.09449,9.0315l8,0\" />\n </svg>\n </div>\n);\n"],"names":["Done","React","createElement","style","display","width","viewBox","fill","concat","tokens","triggerSize","iconColor","d","DoneThin","height","stroke","Indeterminate","strokeLinecap","strokeWidth","IndeterminateThin"],"mappings":"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"}
|
@@ -465,7 +465,11 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
465
465
|
handleItemClick: handleItemClick,
|
466
466
|
variant: variant,
|
467
467
|
renderItem: renderItem,
|
468
|
-
treeId: treeId
|
468
|
+
treeId: treeId,
|
469
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
470
|
+
// @ts-ignore
|
471
|
+
// eslint-disable-next-line no-underscore-dangle
|
472
|
+
_checkboxAppearance: rest._checkboxAppearance
|
469
473
|
}
|
470
474
|
}, /*#__PURE__*/React.createElement(FloatingPopover, {
|
471
475
|
ref: floatingPopoverRef,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent, ForwardedRef } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n getRemovedElement,\n} from './utils';\nimport { Inner, StyledTextField, VirtualList } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState, StyledLeftHelper } from './Combobox.styles';\nimport type { ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed, ItemOption } from './ui/Inner/ui/Item/Item.types';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Combobox.context';\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\n\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n name,\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n defaultValue,\n isTargetAmount,\n targetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n keepPlaceholder,\n readOnly = false,\n disabled = false,\n alwaysOpened = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n renderValue,\n zIndex,\n beforeList,\n afterList,\n virtual = false,\n hintView,\n hintSize,\n emptyStateDescription,\n onChangeValue,\n onScroll,\n onToggle,\n ...rest\n } = props;\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(transformedItems), [\n items,\n ]);\n\n const [textValue, setTextValue] = useState(\n multiple || Array.isArray(outerValue)\n ? ''\n : valueToItemMap.get(outerValue as string)?.label || outerValue?.toString() || '',\n );\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false);\n }\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n // Эта функция срабатывает при изменении Combobox и\n // при изменении нативного Select для формы (срабатывает только после изменения internalValue и рендера).\n const onChange = (\n newValue: string | Array<string> | ChangeEvent<HTMLSelectElement> | null,\n item?: ItemOption | null,\n ) => {\n // Условие для отправки изменений наружу\n if (props.onChange) {\n // Условие для отправки если комбобокс используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если комбобокс используется с формой.\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleClickArrow = () => {\n if (disabled || readOnly) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onChangeValue) {\n onChangeValue(e.target.value);\n }\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n if (!Array.isArray(value)) return;\n\n // TODO: #1564\n // Из лейблов чипов получаем value у item и далее прокидываем его в onChange.\n if (renderValue && !isTargetAmount) {\n const resultValues = [...value];\n\n value.forEach((_, index) => {\n const stringValue = value[index];\n const label = valueToItemMap.get(stringValue)?.label;\n\n const labelAfterRenderValue = renderValue(\n label\n ? labelToItemMap.get(label)!\n : {\n value: stringValue,\n label: stringValue.toString(),\n },\n );\n\n if (!chipLabels.includes(labelAfterRenderValue)) {\n resultValues.splice(index, 1);\n }\n });\n\n const removedItemValue = getRemovedElement(value, resultValues, isTargetAmount);\n\n onChange(\n resultValues,\n removedItemValue\n ? valueToItemMap.get(removedItemValue) || {\n value: removedItemValue,\n label: removedItemValue.toString(),\n }\n : null,\n );\n } else {\n const newValues = chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)?.value || chipLabel);\n const removedItemValue = getRemovedElement(value, newValues, isTargetAmount);\n\n onChange(\n newValues,\n removedItemValue\n ? valueToItemMap.get(removedItemValue) || {\n value: removedItemValue,\n label: removedItemValue.toString(),\n }\n : null,\n );\n }\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${targetAmount || value.length}`];\n }\n\n const renderValueMapper =\n renderValue &&\n ((stringValue: string) =>\n renderValue(\n valueToItemMap.get(stringValue) || { value: stringValue, label: stringValue.toString() },\n ));\n const valueToItemMapper = (stringValue: string) =>\n valueToItemMap.get(stringValue)?.label || stringValue.toString();\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const helperTextStopPropagation = (event: React.MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n setTextValue,\n multiple,\n value,\n textValue,\n valueToItemMap,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n setTextValue(multiple ? '' : valueToItemMap.get(value as string)?.label || value?.toString() || '');\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n return (\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n name={name}\n hintView={hintView}\n hintSize={hintSize}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiple={multiple}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLInputElement>}\n />\n )}\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n target={(referenceRef) => (\n <StyledTextField\n ref={name ? inputRef : (inputForkRef as ForwardedRef<HTMLInputElement>)}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={\n helperText && (\n <StyledLeftHelper onClick={helperTextStopPropagation}>\n {helperText}\n </StyledLeftHelper>\n )\n }\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n labelPlacement={labelPlacement}\n keepPlaceholder={keepPlaceholder}\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n _onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n zIndex={zIndex}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n name={name}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listMaxHeight={listMaxHeight || listHeight}\n listWidth={listWidth}\n ref={targetRef}\n virtual={virtual}\n listOverflow={listOverflow}\n onScroll={virtual ? undefined : onScroll}\n >\n {beforeList}\n\n {virtual ? (\n <VirtualList\n items={filteredItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\n ) : (\n <>\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description={emptyStateDescription || 'Ничего не найдено'}\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </>\n )}\n\n {afterList}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_valueToItemMap$get2","_getItemByFocused","_StyledLeftHelper","name","multiple","outerValue","value","defaultValue","isTargetAmount","targetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listMaxHeight","listWidth","portal","renderItem","view","size","labelPlacement","keepPlaceholder","_props$readOnly","readOnly","_props$disabled","disabled","_props$alwaysOpened","alwaysOpened","filter","outerCloseAfterSelect","closeAfterSelect","renderValue","zIndex","beforeList","afterList","_props$virtual","virtual","hintView","hintSize","emptyStateDescription","onChangeValue","onScroll","onToggle","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_useMemo","getTreeMaps","_useMemo2","_slicedToArray","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","Array","isArray","get","toString","_useState2","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","undefined","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","filteredItems","filterItems","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get3","onChange","newValue","item","_typeof","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","resultValues","_toConsumableArray","forEach","_","index","_valueToItemMap$get4","stringValue","labelAfterRenderValue","includes","splice","removedItemValue","getRemovedElement","newValues","map","chipLabel","_labelToItemMap$get","handleListToggle","opened","handleCheckboxChange","checkedCopy","Map","set","updateDescendants","updateAncestors","key","push","val","has","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","getChips","length","concat","renderValueMapper","valueToItemMapper","_valueToItemMap$get5","handlePressDown","helperTextStopPropagation","event","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_valueToItemMap$get6","updateSingleAncestors","React","createElement","SelectNative","onSetValue","Context","Provider","FloatingPopover","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","StyledLeftHelper","role","getItemId","enumerationType","chips","onChangeChips","_onEnterDisabled","Ul","id","VirtualList","Fragment","StyledEmptyState","emptyStateWrapper","description","Inner","currentLevel","comboboxConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent, ForwardedRef } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n getRemovedElement,\n} from './utils';\nimport { Inner, StyledTextField, VirtualList } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState, StyledLeftHelper } from './Combobox.styles';\nimport type { ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed, ItemOption } from './ui/Inner/ui/Item/Item.types';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Combobox.context';\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\n\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n name,\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n defaultValue,\n isTargetAmount,\n targetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n keepPlaceholder,\n readOnly = false,\n disabled = false,\n alwaysOpened = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n renderValue,\n zIndex,\n beforeList,\n afterList,\n virtual = false,\n hintView,\n hintSize,\n emptyStateDescription,\n onChangeValue,\n onScroll,\n onToggle,\n ...rest\n } = props;\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(transformedItems), [\n items,\n ]);\n\n const [textValue, setTextValue] = useState(\n multiple || Array.isArray(outerValue)\n ? ''\n : valueToItemMap.get(outerValue as string)?.label || outerValue?.toString() || '',\n );\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = alwaysOpened || Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false);\n }\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n // Эта функция срабатывает при изменении Combobox и\n // при изменении нативного Select для формы (срабатывает только после изменения internalValue и рендера).\n const onChange = (\n newValue: string | Array<string> | ChangeEvent<HTMLSelectElement> | null,\n item?: ItemOption | null,\n ) => {\n // Условие для отправки изменений наружу\n if (props.onChange) {\n // Условие для отправки если комбобокс используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если комбобокс используется с формой.\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleClickArrow = () => {\n if (disabled || readOnly) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onChangeValue) {\n onChangeValue(e.target.value);\n }\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n if (!Array.isArray(value)) return;\n\n // TODO: #1564\n // Из лейблов чипов получаем value у item и далее прокидываем его в onChange.\n if (renderValue && !isTargetAmount) {\n const resultValues = [...value];\n\n value.forEach((_, index) => {\n const stringValue = value[index];\n const label = valueToItemMap.get(stringValue)?.label;\n\n const labelAfterRenderValue = renderValue(\n label\n ? labelToItemMap.get(label)!\n : {\n value: stringValue,\n label: stringValue.toString(),\n },\n );\n\n if (!chipLabels.includes(labelAfterRenderValue)) {\n resultValues.splice(index, 1);\n }\n });\n\n const removedItemValue = getRemovedElement(value, resultValues, isTargetAmount);\n\n onChange(\n resultValues,\n removedItemValue\n ? valueToItemMap.get(removedItemValue) || {\n value: removedItemValue,\n label: removedItemValue.toString(),\n }\n : null,\n );\n } else {\n const newValues = chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)?.value || chipLabel);\n const removedItemValue = getRemovedElement(value, newValues, isTargetAmount);\n\n onChange(\n newValues,\n removedItemValue\n ? valueToItemMap.get(removedItemValue) || {\n value: removedItemValue,\n label: removedItemValue.toString(),\n }\n : null,\n );\n }\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (!alwaysOpened && closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${targetAmount || value.length}`];\n }\n\n const renderValueMapper =\n renderValue &&\n ((stringValue: string) =>\n renderValue(\n valueToItemMap.get(stringValue) || { value: stringValue, label: stringValue.toString() },\n ));\n const valueToItemMapper = (stringValue: string) =>\n valueToItemMap.get(stringValue)?.label || stringValue.toString();\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const helperTextStopPropagation = (event: React.MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n setTextValue,\n multiple,\n value,\n textValue,\n valueToItemMap,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n setTextValue(multiple ? '' : valueToItemMap.get(value as string)?.label || value?.toString() || '');\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue);\n }\n }, [defaultValue]);\n\n return (\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n name={name}\n hintView={hintView}\n hintSize={hintSize}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiple={multiple}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLInputElement>}\n />\n )}\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n target={(referenceRef) => (\n <StyledTextField\n ref={name ? inputRef : (inputForkRef as ForwardedRef<HTMLInputElement>)}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={\n helperText && (\n <StyledLeftHelper onClick={helperTextStopPropagation}>\n {helperText}\n </StyledLeftHelper>\n )\n }\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n labelPlacement={labelPlacement}\n keepPlaceholder={keepPlaceholder}\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n _onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n zIndex={zIndex}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n name={name}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listMaxHeight={listMaxHeight || listHeight}\n listWidth={listWidth}\n ref={targetRef}\n virtual={virtual}\n listOverflow={listOverflow}\n onScroll={virtual ? undefined : onScroll}\n >\n {beforeList}\n\n {virtual ? (\n <VirtualList\n items={filteredItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\n ) : (\n <>\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description={emptyStateDescription || 'Ничего не найдено'}\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </>\n )}\n\n {afterList}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_valueToItemMap$get2","_getItemByFocused","_StyledLeftHelper","name","multiple","outerValue","value","defaultValue","isTargetAmount","targetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listMaxHeight","listWidth","portal","renderItem","view","size","labelPlacement","keepPlaceholder","_props$readOnly","readOnly","_props$disabled","disabled","_props$alwaysOpened","alwaysOpened","filter","outerCloseAfterSelect","closeAfterSelect","renderValue","zIndex","beforeList","afterList","_props$virtual","virtual","hintView","hintSize","emptyStateDescription","onChangeValue","onScroll","onToggle","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_useMemo","getTreeMaps","_useMemo2","_slicedToArray","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","Array","isArray","get","toString","_useState2","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","undefined","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","filteredItems","filterItems","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get3","onChange","newValue","item","_typeof","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","resultValues","_toConsumableArray","forEach","_","index","_valueToItemMap$get4","stringValue","labelAfterRenderValue","includes","splice","removedItemValue","getRemovedElement","newValues","map","chipLabel","_labelToItemMap$get","handleListToggle","opened","handleCheckboxChange","checkedCopy","Map","set","updateDescendants","updateAncestors","key","push","val","has","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","getChips","length","concat","renderValueMapper","valueToItemMapper","_valueToItemMap$get5","handlePressDown","helperTextStopPropagation","event","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_valueToItemMap$get6","updateSingleAncestors","React","createElement","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","StyledLeftHelper","role","getItemId","enumerationType","chips","onChangeChips","_onEnterDisabled","Ul","id","VirtualList","Fragment","StyledEmptyState","emptyStateWrapper","description","Inner","currentLevel","comboboxConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
|
@@ -37,7 +37,8 @@ var Item = function Item(_ref) {
|
|
37
37
|
handleItemClick = _useContext.handleItemClick,
|
38
38
|
variant = _useContext.variant,
|
39
39
|
renderItem = _useContext.renderItem,
|
40
|
-
treeId = _useContext.treeId
|
40
|
+
treeId = _useContext.treeId,
|
41
|
+
_checkboxAppearance = _useContext._checkboxAppearance;
|
41
42
|
var disabledClassName = disabled ? classes.dropdownItemIsDisabled : undefined;
|
42
43
|
var focusedClass = currentLevel === focusedPath.length - 1 && index === (focusedPath === null || focusedPath === void 0 ? void 0 : focusedPath[currentLevel]) ? classes.dropdownItemIsFocused : undefined;
|
43
44
|
var activeClass = value === (path === null || path === void 0 ? void 0 : path[currentLevel + 1]) ? classes.dropdownItemIsActive : undefined;
|
@@ -84,7 +85,8 @@ var Item = function Item(_ref) {
|
|
84
85
|
disabled: disabled,
|
85
86
|
checked: Boolean(checked.get(item.value)),
|
86
87
|
indeterminate: checked.get(item.value) === 'indeterminate',
|
87
|
-
onChange: handleChange
|
88
|
+
onChange: handleChange,
|
89
|
+
appearance: _checkboxAppearance !== null && _checkboxAppearance !== void 0 ? _checkboxAppearance : 'default'
|
88
90
|
})), !multiple && checked.get(item.value) === 'dot' && (_StyledIndicator || (_StyledIndicator = /*#__PURE__*/React.createElement(StyledIndicator, {
|
89
91
|
size: "s",
|
90
92
|
view: "default"
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Item.js","sources":["../../../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Combobox.tokens';\nimport { cx, isEmpty } from '../../../../../../../utils';\nimport { Context } from '../../../../Combobox.context';\nimport { useDidMountEffect } from '../../../../../../../hooks';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledWrapper,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n StyledCheckbox,\n IconWrapper,\n StyledIndicator,\n StyledCheckboxWrapper,\n StyledCell,\n StyledIconDone,\n StyledArrow,\n} from './Item.styles';\n\nexport const Item: FC<ItemProps> = ({\n item,\n path,\n currentLevel,\n index,\n ariaControls,\n ariaExpanded,\n ariaLevel,\n ariaLabel,\n}) => {\n const { value, label, disabled, contentLeft, contentRight, className, ...rest } = item;\n\n const ref = useRef<HTMLLIElement | null>(null);\n\n const {\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n } = useContext(Context);\n\n const disabledClassName = disabled ? classes.dropdownItemIsDisabled : undefined;\n\n const focusedClass =\n currentLevel === focusedPath.length - 1 && index === focusedPath?.[currentLevel]\n ? classes.dropdownItemIsFocused\n : undefined;\n const activeClass = value === path?.[currentLevel + 1] ? classes.dropdownItemIsActive : undefined;\n\n useDidMountEffect(() => {\n if (focusedClass && ref?.current) {\n ref.current.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n }\n }, [focusedClass]);\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (disabled) {\n e.stopPropagation();\n return;\n }\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n {...rest}\n className={cx(disabledClassName, focusedClass, activeClass, className)}\n id={getItemId(treeId, value)}\n ref={ref}\n onClick={handleClick}\n variant={variant}\n role=\"treeitem\"\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n aria-selected={Boolean(checked.get(item.value))}\n >\n <IconWrapper variant={variant}>\n {multiple && (\n <StyledCheckboxWrapper onClick={(e) => e.stopPropagation()}>\n <StyledCheckbox\n disabled={disabled}\n checked={Boolean(checked.get(item.value))}\n indeterminate={checked.get(item.value) === 'indeterminate'}\n onChange={handleChange}\n />\n </StyledCheckboxWrapper>\n )}\n\n {!multiple && checked.get(item.value) === 'dot' && <StyledIndicator size=\"s\" view=\"default\" />}\n\n {!multiple && checked.get(item.value) === 'done' && (\n <StyledIconDone size={sizeToIconSize(size, variant)} color=\"inherit\" />\n )}\n </IconWrapper>\n\n {renderItem ? (\n <StyledText>{renderItem(item)}</StyledText>\n ) : (\n <StyledWrapper>\n <StyledCell\n view=\"default\"\n size=\"l\"\n contentLeft={contentLeft}\n contentRight={contentRight}\n alignContentLeft=\"center\"\n alignContentRight=\"center\"\n title={label}\n />\n </StyledWrapper>\n )}\n\n {!isEmpty(item.items) && (\n <DisclosureIconWrapper>\n <StyledArrow size={sizeToIconSize(size, variant)} color=\"inherit\" />\n </DisclosureIconWrapper>\n )}\n </Wrapper>\n );\n};\n"],"names":["Item","_ref","item","path","currentLevel","index","ariaControls","ariaExpanded","ariaLevel","ariaLabel","value","label","disabled","contentLeft","contentRight","className","rest","_objectWithoutProperties","_excluded","ref","useRef","_useContext","useContext","Context","focusedPath","checked","multiple","size","handleCheckboxChange","handleItemClick","variant","renderItem","treeId","disabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useDidMountEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","_extends","cx","id","getItemId","onClick","role","Boolean","get","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","indeterminate","onChange","_StyledIndicator","StyledIndicator","view","StyledIconDone","sizeToIconSize","color","StyledText","StyledWrapper","StyledCell","alignContentLeft","alignContentRight","title","isEmpty","items","DisclosureIconWrapper","StyledArrow"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Item.js","sources":["../../../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Combobox.tokens';\nimport { cx, isEmpty } from '../../../../../../../utils';\nimport { Context } from '../../../../Combobox.context';\nimport { useDidMountEffect } from '../../../../../../../hooks';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledWrapper,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n StyledCheckbox,\n IconWrapper,\n StyledIndicator,\n StyledCheckboxWrapper,\n StyledCell,\n StyledIconDone,\n StyledArrow,\n} from './Item.styles';\n\nexport const Item: FC<ItemProps> = ({\n item,\n path,\n currentLevel,\n index,\n ariaControls,\n ariaExpanded,\n ariaLevel,\n ariaLabel,\n}) => {\n const { value, label, disabled, contentLeft, contentRight, className, ...rest } = item;\n\n const ref = useRef<HTMLLIElement | null>(null);\n\n const {\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n _checkboxAppearance,\n } = useContext(Context);\n\n const disabledClassName = disabled ? classes.dropdownItemIsDisabled : undefined;\n\n const focusedClass =\n currentLevel === focusedPath.length - 1 && index === focusedPath?.[currentLevel]\n ? classes.dropdownItemIsFocused\n : undefined;\n const activeClass = value === path?.[currentLevel + 1] ? classes.dropdownItemIsActive : undefined;\n\n useDidMountEffect(() => {\n if (focusedClass && ref?.current) {\n ref.current.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n }\n }, [focusedClass]);\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (disabled) {\n e.stopPropagation();\n return;\n }\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n {...rest}\n className={cx(disabledClassName, focusedClass, activeClass, className)}\n id={getItemId(treeId, value)}\n ref={ref}\n onClick={handleClick}\n variant={variant}\n role=\"treeitem\"\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n aria-selected={Boolean(checked.get(item.value))}\n >\n <IconWrapper variant={variant}>\n {multiple && (\n <StyledCheckboxWrapper onClick={(e) => e.stopPropagation()}>\n <StyledCheckbox\n disabled={disabled}\n checked={Boolean(checked.get(item.value))}\n indeterminate={checked.get(item.value) === 'indeterminate'}\n onChange={handleChange}\n appearance={_checkboxAppearance ?? 'default'}\n />\n </StyledCheckboxWrapper>\n )}\n\n {!multiple && checked.get(item.value) === 'dot' && <StyledIndicator size=\"s\" view=\"default\" />}\n\n {!multiple && checked.get(item.value) === 'done' && (\n <StyledIconDone size={sizeToIconSize(size, variant)} color=\"inherit\" />\n )}\n </IconWrapper>\n\n {renderItem ? (\n <StyledText>{renderItem(item)}</StyledText>\n ) : (\n <StyledWrapper>\n <StyledCell\n view=\"default\"\n size=\"l\"\n contentLeft={contentLeft}\n contentRight={contentRight}\n alignContentLeft=\"center\"\n alignContentRight=\"center\"\n title={label}\n />\n </StyledWrapper>\n )}\n\n {!isEmpty(item.items) && (\n <DisclosureIconWrapper>\n <StyledArrow size={sizeToIconSize(size, variant)} color=\"inherit\" />\n </DisclosureIconWrapper>\n )}\n </Wrapper>\n );\n};\n"],"names":["Item","_ref","item","path","currentLevel","index","ariaControls","ariaExpanded","ariaLevel","ariaLabel","value","label","disabled","contentLeft","contentRight","className","rest","_objectWithoutProperties","_excluded","ref","useRef","_useContext","useContext","Context","focusedPath","checked","multiple","size","handleCheckboxChange","handleItemClick","variant","renderItem","treeId","_checkboxAppearance","disabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useDidMountEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","_extends","cx","id","getItemId","onClick","role","Boolean","get","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","indeterminate","onChange","appearance","_StyledIndicator","StyledIndicator","view","StyledIconDone","sizeToIconSize","color","StyledText","StyledWrapper","StyledCell","alignContentLeft","alignContentRight","title","isEmpty","items","DisclosureIconWrapper","StyledArrow"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Radiobox.js","sources":["../../../src/components/Radiobox/Radiobox.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\nimport { safeUseId, extractTextFrom } from '@salutejs/plasma-core';\n\nimport type { InputHTMLAttributes } from '../../types';\nimport type { Filter, RootProps } from '../../engines/types';\nimport {\n StyledContentWrapper,\n StyledDescription,\n StyledInput,\n StyledLabel,\n StyledContent,\n StyledTrigger,\n StyledTriggerWrapper,\n} from '../Checkbox/Checkbox.styles';\nimport { BaseboxProps } from '../Checkbox/Checkbox.types';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as focusedCSS } from './variations/_focused/base';\nimport { StyledEllipse, base } from './Radiobox.styles';\nimport { classes } from './Radiobox.tokens';\n\ntype RadioboxProps = Filter<InputHTMLAttributes<HTMLInputElement>, 'size'>
|
1
|
+
{"version":3,"file":"Radiobox.js","sources":["../../../src/components/Radiobox/Radiobox.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\nimport { safeUseId, extractTextFrom } from '@salutejs/plasma-core';\n\nimport type { InputHTMLAttributes } from '../../types';\nimport type { Filter, RootProps } from '../../engines/types';\nimport {\n StyledContentWrapper,\n StyledDescription,\n StyledInput,\n StyledLabel,\n StyledContent,\n StyledTrigger,\n StyledTriggerWrapper,\n} from '../Checkbox/Checkbox.styles';\nimport { BaseboxProps } from '../Checkbox/Checkbox.types';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as focusedCSS } from './variations/_focused/base';\nimport { StyledEllipse, base } from './Radiobox.styles';\nimport { classes } from './Radiobox.tokens';\n\ntype RadioboxProps = Filter<InputHTMLAttributes<HTMLInputElement>, 'size'> &\n Omit<BaseboxProps, 'indeterminate' | 'appearance'>;\n\nexport const radioboxRoot = (Root: RootProps<HTMLInputElement, RadioboxProps>) =>\n forwardRef<HTMLInputElement, RadioboxProps>((props, ref) => {\n const {\n size,\n view,\n focused,\n disabled,\n id,\n label,\n description,\n style,\n className,\n singleLine = false,\n 'aria-label': ariaLabelExternal,\n ...rest\n } = props;\n\n const uniqId = safeUseId();\n const uniqLabelId = `label-${uniqId}`;\n const uniqDescriptionId = `description-${uniqId}`;\n const radioboxId = id || `input-${uniqId}`;\n\n const ariaLabel = useMemo(() => ariaLabelExternal || extractTextFrom(label), [ariaLabelExternal, label]);\n const isLabelAriaHidden = typeof label === 'string';\n const canFocused = focused ? 0 : -1;\n const hasContent = label || description;\n const singleLineClass = singleLine ? classes.singleLine : undefined;\n const onlyDescriptionClass = !label && description ? classes.onlyDescription : undefined;\n\n return (\n <Root\n view={view}\n size={size}\n disabled={disabled}\n focused={focused}\n style={style}\n className={className}\n tabIndex={-1}\n >\n <StyledInput\n {...rest}\n id={radioboxId}\n ref={ref}\n type=\"radio\"\n disabled={disabled}\n aria-label={ariaLabel}\n aria-describedby={uniqDescriptionId}\n tabIndex={canFocused}\n />\n <StyledContentWrapper htmlFor={radioboxId} className={singleLineClass}>\n <StyledTriggerWrapper>\n <StyledTrigger className={classes.radioboxTrigger}>\n <StyledEllipse />\n </StyledTrigger>\n </StyledTriggerWrapper>\n {hasContent && (\n <StyledContent className={singleLineClass}>\n {label && (\n <StyledLabel\n className={cx(singleLineClass, onlyDescriptionClass)}\n id={uniqLabelId}\n aria-hidden={isLabelAriaHidden}\n >\n {label}\n </StyledLabel>\n )}\n {description && (\n <StyledDescription className={singleLineClass} id={uniqDescriptionId}>\n {description}\n </StyledDescription>\n )}\n </StyledContent>\n )}\n </StyledContentWrapper>\n </Root>\n );\n });\n\nexport const radioboxConfig = {\n name: 'Radiobox',\n tag: 'div',\n layout: radioboxRoot,\n base,\n variations: {\n size: {\n css: sizeCSS,\n },\n view: {\n css: viewCSS,\n },\n disabled: {\n css: disabledCSS,\n },\n focused: {\n css: focusedCSS,\n },\n },\n defaults: {\n size: 'm',\n view: 'accent',\n },\n};\n"],"names":["radioboxRoot","Root","forwardRef","props","ref","size","view","focused","disabled","id","label","description","style","className","_props$singleLine","singleLine","ariaLabelExternal","rest","_objectWithoutProperties","_excluded","uniqId","safeUseId","uniqLabelId","concat","uniqDescriptionId","radioboxId","ariaLabel","useMemo","extractTextFrom","isLabelAriaHidden","canFocused","hasContent","singleLineClass","classes","undefined","onlyDescriptionClass","onlyDescription","React","createElement","tabIndex","StyledInput","_extends","type","StyledContentWrapper","htmlFor","StyledTriggerWrapper","StyledTrigger","radioboxTrigger","_StyledEllipse","StyledEllipse","StyledContent","StyledLabel","cx","StyledDescription","radioboxConfig","name","tag","layout","base","variations","css","sizeCSS","viewCSS","disabledCSS","focusedCSS","defaults"],"mappings":"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"}
|
@@ -353,7 +353,11 @@ var selectRoot = function selectRoot(Root) {
|
|
353
353
|
handleItemClick: handleItemClick,
|
354
354
|
variant: variant,
|
355
355
|
renderItem: renderItem,
|
356
|
-
treeId: treeId
|
356
|
+
treeId: treeId,
|
357
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
358
|
+
// @ts-ignore
|
359
|
+
// eslint-disable-next-line no-underscore-dangle
|
360
|
+
_checkboxAppearance: rest._checkboxAppearance
|
357
361
|
}
|
358
362
|
}, /*#__PURE__*/React.createElement(FloatingPopover, {
|
359
363
|
ref: floatingPopoverRef,
|