@salutejs/plasma-new-hope 0.194.1-canary.1569.11907567976.0 → 0.194.1-dev.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Combobox/ComboboxNew/Combobox.js +18 -4
- package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +1 -2
- package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
- package/cjs/components/Combobox/ComboboxOld/Combobox.css +5 -4
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.css +5 -4
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.css +5 -4
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.css +5 -4
- package/cjs/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.css +5 -4
- package/cjs/components/Dropdown/Dropdown.css +5 -4
- package/cjs/components/Dropdown/Dropdown.js +4 -2
- package/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.css +5 -4
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +3 -2
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +7 -1
- package/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js.map +1 -1
- package/cjs/components/Dropdown/ui/DropdownItem/{DropdownItem.styles_1b439rx.css → DropdownItem.styles_14yih1y.css} +1 -0
- package/cjs/components/Select/Select.js +0 -1
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/ui/Inner/ui/Item/Item.js +1 -2
- package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +18 -3
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/cjs/components/Switch/Switch.css +1 -1
- package/cjs/components/Switch/Switch.tokens.js +1 -2
- package/cjs/components/Switch/Switch.tokens.js.map +1 -1
- package/cjs/components/Switch/_toggleSize/base.js +1 -1
- package/cjs/components/Switch/_toggleSize/base.js.map +1 -1
- package/cjs/components/Switch/_toggleSize/base_1d0b3t4.css +1 -0
- package/cjs/index.css +6 -5
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +22 -4
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +1 -2
- package/emotion/cjs/components/Dropdown/Dropdown.js +4 -2
- package/emotion/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +3 -2
- package/emotion/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +15 -11
- package/emotion/cjs/components/Select/Select.js +0 -1
- package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.js +1 -2
- package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +24 -3
- package/emotion/cjs/components/Switch/Switch.tokens.js +1 -2
- package/emotion/cjs/components/Switch/_toggleSize/base.js +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +8 -8
- package/emotion/cjs/examples/plasma_b2c/components/Switch/Switch.outline.config.js +8 -8
- package/emotion/cjs/examples/plasma_web/components/Switch/Switch.config.js +8 -8
- package/emotion/cjs/examples/plasma_web/components/Switch/Switch.outline.config.js +8 -8
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +22 -4
- package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +1 -2
- package/emotion/es/components/Dropdown/Dropdown.js +4 -2
- package/emotion/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +4 -3
- package/emotion/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +15 -11
- package/emotion/es/components/Select/Select.js +0 -1
- package/emotion/es/components/Select/ui/Inner/ui/Item/Item.js +1 -2
- package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +24 -3
- package/emotion/es/components/Switch/Switch.tokens.js +1 -2
- package/emotion/es/components/Switch/_toggleSize/base.js +2 -2
- package/emotion/es/examples/plasma_b2c/components/Switch/Switch.config.js +8 -8
- package/emotion/es/examples/plasma_b2c/components/Switch/Switch.outline.config.js +8 -8
- package/emotion/es/examples/plasma_web/components/Switch/Switch.config.js +8 -8
- package/emotion/es/examples/plasma_web/components/Switch/Switch.outline.config.js +8 -8
- package/es/components/Combobox/ComboboxNew/Combobox.js +19 -5
- package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +1 -2
- package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
- package/es/components/Combobox/ComboboxOld/Combobox.css +5 -4
- package/es/components/Combobox/ComboboxOld/ui/ComboboxDivider/ComboboxDivider.css +5 -4
- package/es/components/Combobox/ComboboxOld/ui/ComboboxFooter/ComboboxFooter.css +5 -4
- package/es/components/Combobox/ComboboxOld/ui/ComboboxGroup/ComboboxGroup.css +5 -4
- package/es/components/Combobox/ComboboxOld/ui/ComboboxHeader/ComboboxHeader.css +5 -4
- package/es/components/Dropdown/Dropdown.css +5 -4
- package/es/components/Dropdown/Dropdown.js +4 -2
- package/es/components/Dropdown/Dropdown.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.css +5 -4
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +4 -3
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +7 -2
- package/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js.map +1 -1
- package/es/components/Dropdown/ui/DropdownItem/{DropdownItem.styles_1b439rx.css → DropdownItem.styles_14yih1y.css} +1 -0
- package/es/components/Select/Select.js +0 -1
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/ui/Inner/ui/Item/Item.js +1 -2
- package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +19 -4
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/es/components/Switch/Switch.css +1 -1
- package/es/components/Switch/Switch.tokens.js +1 -2
- package/es/components/Switch/Switch.tokens.js.map +1 -1
- package/es/components/Switch/_toggleSize/base.js +1 -1
- package/es/components/Switch/_toggleSize/base.js.map +1 -1
- package/es/components/Switch/_toggleSize/base_1d0b3t4.css +1 -0
- package/es/index.css +6 -5
- package/package.json +3 -2
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +22 -4
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +1 -2
- package/styled-components/cjs/components/Dropdown/Dropdown.js +4 -2
- package/styled-components/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.js +3 -2
- package/styled-components/cjs/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +5 -2
- package/styled-components/cjs/components/Select/Select.js +0 -1
- package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.js +1 -2
- package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +24 -3
- package/styled-components/cjs/components/Switch/Switch.tokens.js +1 -2
- package/styled-components/cjs/components/Switch/_toggleSize/base.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Switch/Switch.outline.config.js +1 -1
- package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.config.js +1 -1
- package/styled-components/cjs/examples/plasma_web/components/Switch/Switch.outline.config.js +1 -1
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +22 -4
- package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +1 -2
- package/styled-components/es/components/Dropdown/Dropdown.js +4 -2
- package/styled-components/es/components/Dropdown/ui/DropdownItem/DropdownItem.js +4 -3
- package/styled-components/es/components/Dropdown/ui/DropdownItem/DropdownItem.styles.js +5 -2
- package/styled-components/es/components/Select/Select.js +0 -1
- package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.js +1 -2
- package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +24 -3
- package/styled-components/es/components/Switch/Switch.tokens.js +1 -2
- package/styled-components/es/components/Switch/_toggleSize/base.js +2 -2
- package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.config.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/Switch/Switch.outline.config.js +1 -1
- package/styled-components/es/examples/plasma_web/components/Switch/Switch.config.js +1 -1
- package/styled-components/es/examples/plasma_web/components/Switch/Switch.outline.config.js +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +1 -2
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.d.ts.map +1 -1
- package/types/components/Dropdown/Dropdown.d.ts +50 -2
- package/types/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/types/components/Dropdown/Dropdown.types.d.ts +11 -6
- package/types/components/Dropdown/Dropdown.types.d.ts.map +1 -1
- package/types/components/Dropdown/index.d.ts +1 -0
- package/types/components/Dropdown/index.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.d.ts.map +1 -1
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.styles.d.ts +1 -0
- package/types/components/Dropdown/ui/DropdownItem/DropdownItem.styles.d.ts.map +1 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/Select.types.d.ts +1 -2
- package/types/components/Select/Select.types.d.ts.map +1 -1
- package/types/components/Select/ui/Inner/ui/Item/Item.d.ts.map +1 -1
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
- package/types/components/Switch/Switch.tokens.d.ts +1 -2
- package/types/components/Switch/Switch.tokens.d.ts.map +1 -1
- package/types/components/Switch/_toggleSize/base.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Dropdown/Dropdown.d.ts +25 -1
- package/types/examples/plasma_b2c/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Switch/Switch.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Switch/Switch.outline.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Dropdown/Dropdown.d.ts +25 -1
- package/types/examples/plasma_web/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Switch/Switch.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Switch/Switch.outline.config.d.ts.map +1 -1
- package/cjs/components/Switch/_toggleSize/base_o6rjc1.css +0 -1
- package/es/components/Switch/_toggleSize/base_o6rjc1.css +0 -1
@@ -41,8 +41,9 @@
|
|
41
41
|
|
42
42
|
.CellTextbox_styles_rgpies_cz0uqdu__c842929b{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--plasma-cell-textbox-gap);}
|
43
43
|
|
44
|
-
.
|
44
|
+
.DropdownItem_styles_14yih1y_c1gkzlls__bf539568{--plasma-cell-title-color:var(--text-primary);--plasma-cell-background-color:var(--plasma-colors-transparent);--plasma-cell-padding:var(--plasma-dropdown-cell-padding);--plasma-cell-padding-left-content:var(--plasma-dropdown-cell-padding-left-content);--plasma-cell-padding-content:var(--plasma-dropdown-cell-padding-content);--plasma-cell-padding-right-content:var(--plasma-dropdown-cell-padding-right-content);--plasma-cell-textbox-gap:var(--plasma-dropdown-cell-textbox-gap);--plasma-cell-gap:var(--plasma-dropdown-cell-gap);--plasma-cell-title-font-family:var(--plasma-dropdown-cell-title-font-family);--plasma-cell-title-font-size:var(--plasma-dropdown-cell-title-font-size);--plasma-cell-title-font-style:var(--plasma-dropdown-cell-title-font-style);--plasma-cell-title-font-weight:var(--plasma-dropdown-cell-title-font-weight);--plasma-cell-title-letter-spacing:var(--plasma-dropdown-cell-title-letter-spacing);--plasma-cell-title-line-height:var(--plasma-dropdown-cell-title-line-height);width:100%;}
|
45
45
|
|
46
|
-
.
|
47
|
-
.
|
48
|
-
.
|
46
|
+
.DropdownItem_styles_14yih1y_d1m97l2m__bf539568{line-height:0;color:var(--text-secondary);}
|
47
|
+
.DropdownItem_styles_14yih1y_doib72h__bf539568{height:1px;margin-top:var(--doib72h-0);margin-right:var(--plasma-dropdown-divider-margin-right);margin-bottom:var(--doib72h-1);margin-left:var(--plasma-dropdown-divider-margin-left);background:var(--plasma-dropdown-divider-color);}
|
48
|
+
.DropdownItem_styles_14yih1y_w6l2f0g__bf539568{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:var(--plasma-dropdown-item-height);margin:0;box-sizing:content-box;padding:var(--w6l2f0g-0);font-family:var(--plasma-dropdown-item-font-family);font-size:var(--plasma-dropdown-item-font-size);font-style:var(--plasma-dropdown-item-font-style);font-weight:var(--plasma-dropdown-item-letter-spacing);-webkit-letter-spacing:var(--plasma-dropdown-item-line-height);-moz-letter-spacing:var(--plasma-dropdown-item-line-height);-ms-letter-spacing:var(--plasma-dropdown-item-line-height);letter-spacing:var(--plasma-dropdown-item-line-height);line-height:var(--plasma-dropdown-item-font-weight);background-color:var(--plasma-colors-transparent);border-radius:var(--plasma-dropdown-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-right:0.125rem solid transparent;border-left:0.125rem solid transparent;background-clip:padding-box;position:relative;}.DropdownItem_styles_14yih1y_w6l2f0g__bf539568:hover:not(.DropdownItem_styles_14yih1y_dropdownItemIsDisabled__bf539568){cursor:pointer;background-color:var(--plasma-dropdown-item-background-hover);}.DropdownItem_styles_14yih1y_w6l2f0g__bf539568.DropdownItem_styles_14yih1y_dropdownItemIsActive__bf539568{background-color:var(--plasma-dropdown-item-background-hover);}.DropdownItem_styles_14yih1y_w6l2f0g__bf539568.DropdownItem_styles_14yih1y_dropdownItemIsDisabled__bf539568{opacity:0.4;cursor:not-allowed;}.DropdownItem_styles_14yih1y_w6l2f0g__bf539568:focus{outline:none;}.DropdownItem_styles_14yih1y_w6l2f0g__bf539568::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-dropdown-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.DropdownItem_styles_14yih1y_w6l2f0g__bf539568.DropdownItem_styles_14yih1y_dropdownItemIsFocused__bf539568:before{outline:none;box-shadow:0 0 0 0.0625rem var(--surface-accent);}
|
49
|
+
.DropdownItem_styles_14yih1y_r1jav4ek__bf539568{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
@@ -2,7 +2,7 @@ import React, { useRef, useContext, useEffect } from 'react';
|
|
2
2
|
import { classes } from '../../Dropdown.tokens.js';
|
3
3
|
import { cx } from '../../../../utils/index.js';
|
4
4
|
import { Context } from '../../Dropdown.js';
|
5
|
-
import { Divider, Wrapper, CellWrapper, StyledCell, DisclosureIconWrapper } from './DropdownItem.styles.js';
|
5
|
+
import { Divider, Wrapper, RenderItemWrapper, CellWrapper, StyledCell, DisclosureIconWrapper } from './DropdownItem.styles.js';
|
6
6
|
import { getItemId } from '../../utils/getItemId.js';
|
7
7
|
import { IconDisclosureRight } from '../../../_Icon/Icons/IconDisclosureRight.js';
|
8
8
|
|
@@ -35,7 +35,8 @@ var DropdownItem = function DropdownItem(_ref) {
|
|
35
35
|
onItemSelect = _useContext.onItemSelect,
|
36
36
|
onItemClick = _useContext.onItemClick,
|
37
37
|
hasArrow = _useContext.hasArrow,
|
38
|
-
treeId = _useContext.treeId
|
38
|
+
treeId = _useContext.treeId,
|
39
|
+
renderItem = _useContext.renderItem;
|
39
40
|
var hasDescendants = Boolean(item.items);
|
40
41
|
var disclosureIconSize = size === 'xs' ? 'xs' : 's';
|
41
42
|
var isDisabledClassName = disabled || isDisabled ? classes.dropdownItemIsDisabled : undefined;
|
@@ -86,7 +87,7 @@ var DropdownItem = function DropdownItem(_ref) {
|
|
86
87
|
"aria-expanded": ariaExpanded,
|
87
88
|
"aria-level": ariaLevel,
|
88
89
|
"aria-label": ariaLabel
|
89
|
-
}, /*#__PURE__*/React.createElement(CellWrapper, null, /*#__PURE__*/React.createElement(StyledCell, {
|
90
|
+
}, renderItem ? /*#__PURE__*/React.createElement(RenderItemWrapper, null, renderItem(item)) : /*#__PURE__*/React.createElement(CellWrapper, null, /*#__PURE__*/React.createElement(StyledCell, {
|
90
91
|
contentLeft: contentLeft,
|
91
92
|
contentRight: contentRight,
|
92
93
|
alignContentLeft: "center",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownItem.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, FC, useContext } from 'react';\n\nimport { classes } from '../../Dropdown.tokens';\nimport { cx } from '../../../../utils';\nimport { IconDisclosureRight } from '../../../_Icon';\nimport { Context } from '../../Dropdown';\nimport { getItemId } from '../../utils';\n\nimport {
|
1
|
+
{"version":3,"file":"DropdownItem.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.tsx"],"sourcesContent":["import React, { useEffect, useRef, FC, useContext } from 'react';\n\nimport { classes } from '../../Dropdown.tokens';\nimport { cx } from '../../../../utils';\nimport { IconDisclosureRight } from '../../../_Icon';\nimport { Context } from '../../Dropdown';\nimport { getItemId } from '../../utils';\n\nimport {\n Wrapper,\n DisclosureIconWrapper,\n Divider,\n CellWrapper,\n StyledCell,\n RenderItemWrapper,\n} from './DropdownItem.styles';\nimport type { DropdownItemProps } from './DropdownItem.type';\n\nexport const DropdownItem: FC<DropdownItemProps> = ({\n item,\n path,\n currentLevel,\n index,\n ariaControls,\n ariaExpanded,\n ariaLevel,\n ariaLabel,\n}) => {\n const { value, label, disabled, isDisabled, contentLeft, contentRight, dividerBefore, dividerAfter } = item;\n\n const ref = useRef<HTMLLIElement | null>(null);\n\n const {\n focusedPath,\n size,\n variant,\n itemRole,\n handleGlobalToggle,\n closeOnSelect,\n onHover,\n onItemSelect,\n onItemClick,\n hasArrow,\n treeId,\n renderItem,\n } = useContext(Context);\n\n const hasDescendants = Boolean(item.items);\n const disclosureIconSize = size === 'xs' ? 'xs' : 's';\n const isDisabledClassName = disabled || isDisabled ? classes.dropdownItemIsDisabled : undefined;\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 useEffect(() => {\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 handleClick = (event: React.MouseEvent<HTMLLIElement>): void => {\n if (disabled || isDisabled) {\n return;\n }\n\n if (onItemSelect) {\n onItemSelect(item, event);\n }\n\n if (onItemClick) {\n onItemClick(item, event);\n }\n\n // Закрываем весь дропдаун целиком при клике на айтем без потомков. Только при closeOnSelect === true.\n if (closeOnSelect && !hasDescendants) {\n handleGlobalToggle(false, event);\n }\n };\n\n const handleHover = () => {\n if (onHover) {\n onHover(index);\n }\n };\n\n return (\n <>\n {dividerBefore && <Divider variant={variant} />}\n\n <Wrapper\n ref={ref}\n className={cx(isDisabledClassName, focusedClass, activeClass)}\n id={getItemId(treeId, value.toString())}\n role={itemRole}\n onClick={handleClick}\n onMouseEnter={handleHover}\n variant={variant}\n aria-disabled={disabled || isDisabled}\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n >\n {renderItem ? (\n <RenderItemWrapper>{renderItem(item)}</RenderItemWrapper>\n ) : (\n <CellWrapper>\n <StyledCell\n contentLeft={contentLeft}\n contentRight={contentRight}\n alignContentLeft=\"center\"\n alignContentRight=\"center\"\n title={label}\n />\n </CellWrapper>\n )}\n\n {item.items && hasArrow && (\n <DisclosureIconWrapper>\n <IconDisclosureRight size={disclosureIconSize} color=\"inherit\" />\n </DisclosureIconWrapper>\n )}\n </Wrapper>\n\n {dividerAfter && <Divider variant={variant} />}\n </>\n );\n};\n"],"names":["DropdownItem","_ref","item","path","currentLevel","index","ariaControls","ariaExpanded","ariaLevel","ariaLabel","value","label","disabled","isDisabled","contentLeft","contentRight","dividerBefore","dividerAfter","ref","useRef","_useContext","useContext","Context","focusedPath","size","variant","itemRole","handleGlobalToggle","closeOnSelect","onHover","onItemSelect","onItemClick","hasArrow","treeId","renderItem","hasDescendants","Boolean","items","disclosureIconSize","isDisabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useEffect","current","scrollIntoView","behavior","block","inline","handleClick","event","handleHover","React","createElement","Fragment","Divider","Wrapper","className","cx","id","getItemId","toString","role","onClick","onMouseEnter","RenderItemWrapper","CellWrapper","StyledCell","alignContentLeft","alignContentRight","title","DisclosureIconWrapper","IconDisclosureRight","color"],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import './DropdownItem.
|
1
|
+
import './DropdownItem.styles_14yih1y.css';
|
2
2
|
import { styled } from '@linaria/react';
|
3
3
|
import { tokens } from '../../Dropdown.tokens.js';
|
4
4
|
import { component, mergeConfig } from '../../../../engines/common.js';
|
@@ -59,6 +59,11 @@ var Wrapper = /*#__PURE__*/styled('li')({
|
|
59
59
|
"w6l2f0g-0": [/*#__PURE__*/_exp37()]
|
60
60
|
}
|
61
61
|
});
|
62
|
+
var RenderItemWrapper = /*#__PURE__*/styled('div')({
|
63
|
+
name: "RenderItemWrapper",
|
64
|
+
"class": "r1jav4ek",
|
65
|
+
propsAsIs: false
|
66
|
+
});
|
62
67
|
|
63
|
-
export { CellWrapper, DisclosureIconWrapper, Divider, StyledCell, Wrapper };
|
68
|
+
export { CellWrapper, DisclosureIconWrapper, Divider, RenderItemWrapper, StyledCell, Wrapper };
|
64
69
|
//# sourceMappingURL=DropdownItem.styles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownItem.styles.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { classes, tokens, constants } from '../../Dropdown.tokens';\nimport { addFocus } from '../../../../mixins';\nimport { DropdownProps } from '../../Dropdown.types';\nimport { cellConfig, cellTokens } from '../../../Cell';\nimport { component, mergeConfig } from '../../../../engines';\n\nconst mergedCellConfig = mergeConfig(cellConfig);\nconst Cell = component(mergedCellConfig);\n\nexport const CellWrapper = styled.div`\n ${cellTokens.cellTitleColor}: var(${constants.cellTitleColor});\n ${cellTokens.cellBackgroundColor}: var(${constants.cellBackgroundColor});\n ${cellTokens.cellPadding}: var(${tokens.cellPadding});\n ${cellTokens.cellPaddingLeftContent}: var(${tokens.cellPaddingLeftContent});\n ${cellTokens.cellPaddingContent}: var(${tokens.cellPaddingContent});\n ${cellTokens.cellPaddingRightContent}: var(${tokens.cellPaddingRightContent});\n ${cellTokens.cellTextboxGap}: var(${tokens.cellTextboxGap});\n ${cellTokens.cellGap}: var(${tokens.cellGap});\n ${cellTokens.cellTitleFontFamily}: var(${tokens.cellTitleFontFamily});\n ${cellTokens.cellTitleFontSize}: var(${tokens.cellTitleFontSize});\n ${cellTokens.cellTitleFontStyle}: var(${tokens.cellTitleFontStyle});\n ${cellTokens.cellTitleFontWeight}: var(${tokens.cellTitleFontWeight});\n ${cellTokens.cellTitleLetterSpacing}: var(${tokens.cellTitleLetterSpacing});\n ${cellTokens.cellTitleLineHeight}: var(${tokens.cellTitleLineHeight});\n width: 100%;\n`;\n\nexport const StyledCell = styled(Cell)``;\n\nexport const DisclosureIconWrapper = styled.div`\n line-height: 0;\n color: var(${constants.disclosureIconColor});\n`;\n\nexport const Divider = styled.div<{ variant: DropdownProps['variant'] }>`\n height: 1px;\n margin-top: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.dividerMarginTopTight : tokens.dividerMarginTop})`};\n margin-right: var(${tokens.dividerMarginRight});\n margin-bottom: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.dividerMarginBottomTight : tokens.dividerMarginBottom})`};\n margin-left: var(${tokens.dividerMarginLeft});\n background: var(${tokens.dividerColor});\n`;\n\nexport const Wrapper = styled.li<{ variant: DropdownProps['variant'] }>`\n display: flex;\n align-items: center;\n min-height: var(${tokens.itemHeight});\n margin: 0;\n box-sizing: content-box;\n padding: ${({ variant }) => `var(${variant === 'tight' ? tokens.itemPaddingTight : tokens.itemPadding})`};\n font-family: var(${tokens.itemFontFamily});\n font-size: var(${tokens.itemFontSize});\n font-style: var(${tokens.itemFontStyle});\n font-weight: var(${tokens.itemFontWeightBold});\n letter-spacing: var(${tokens.itemFontLetterSpacing});\n line-height: var(${tokens.itemFontLineHeight});\n background-color: var(${constants.itemBackground});\n border-radius: var(${tokens.borderRadius});\n user-select: none;\n border-right: 0.125rem solid transparent;\n border-left: 0.125rem solid transparent;\n background-clip: padding-box;\n\n &:hover:not(.${classes.dropdownItemIsDisabled}) {\n cursor: pointer;\n background-color: var(${tokens.itemBackgroundHover});\n }\n\n &.${classes.dropdownItemIsActive} {\n background-color: var(${tokens.itemBackgroundHover});\n }\n\n &.${classes.dropdownItemIsDisabled} {\n opacity: ${constants.opacity};\n cursor: not-allowed;\n }\n\n :focus {\n outline: none;\n }\n\n ${addFocus({\n outlineSize: '0.0625rem',\n outlineOffset: '0',\n outlineColor: `var(${constants.focusColor})`,\n outlineRadius: `var(${tokens.itemBorderRadius})`,\n hasTransition: false,\n customFocusRules: `\n &.${classes.dropdownItemIsFocused}:before {\n outline: none;\n box-shadow: 0 0 0 0.0625rem var(${constants.focusColor});\n }\n `,\n })};\n`;\n"],"names":["mergedCellConfig","mergeConfig","cellConfig","Cell","component","CellWrapper","styled","name","class","propsAsIs","_exp29","StyledCell","DisclosureIconWrapper","_exp31","_ref","variant","tokens","dividerMarginTopTight","dividerMarginTop","_exp33","_ref2","dividerMarginBottomTight","dividerMarginBottom","Divider","vars","_exp37","_ref3","itemPaddingTight","itemPadding","Wrapper"],"mappings":";;;;;AAQA,IAAMA,gBAAgB,gBAAGC,WAAW,CAACC,UAAU,CAAC,CAAA;AAChD,IAAMC,IAAI,gBAAGC,SAAS,CAACJ,gBAAgB,CAAC,CAAA;AAEjC,IAAMK,WAAW,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAgBhC,EAAA;AAAC,IAAAC,MAAA,GA1BgBA,SA0BhBA,MAAAA,GAAA;AAAA,EAAA,OAE+BP,IAAI,CAAA;AAAA,CAAA,CAAA;AAA9B,IAAMQ,UAAU,gBAAGL,MAAM,CAAAI,MAAA,EAAA,CAAA,CAAA;AAAAH,EAAAA,IAAA,EAAA,YAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,IAAA;AAAA,CAAQ,EAAA;AAEjC,IAAMG,qBAAqB,gBAAGN,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,uBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAG1C,EAAA;AAAC,IAAAI,MAAA,GAjCgBA,SAiChBA,MAAAA,GAAA;AAAA,EAAA,OAIgB,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,OAAAA,GAAAA,IAAAA,CAAAA,OAAAA,CAAAA;AAAAA,IAAAA,OAAAA,MAAAA,CAAAA,MAAAA,CACNA,OAAO,KAAK,OAAO,GAAGC,MAAM,CAACC,qBAAqB,GAAGD,MAAM,CAACE,gBAAiB,EAAA,GAAA,CAAA,CAAA;GAAE,CAAA;AAAA,CAAA,CAAA;AAAA,IAAAC,MAAA,GAtC5EA,SAsC4EA,MAAAA,GAAA;AAAA,EAAA,OAEzE,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGL,OAAAA,GAAAA,KAAAA,CAAAA,OAAAA,CAAAA;AAAAA,IAAAA,OAAAA,MAAAA,CAAAA,MAAAA,CACTA,OAAO,KAAK,OAAO,GAAGC,MAAM,CAACK,wBAAwB,GAAGL,MAAM,CAACM,mBAAoB,EAAA,GAAA,CAAA,CAAA;GAAE,CAAA;AAAA,CAAA,CAAA;AAN7F,IAAMC,OAAO,gBAAGjB,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,SAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAe,EAAAA,IAAA,EAAA;AAAA,IAAA,WAAA,EAAA,cAEXX,MAC4E,EAAA,CAAA;AAAA,IAAA,WAAA,EAAA,cAEzEM,MAC+E,EAAA,CAAA;AAAA,GAAA;AAAA,CAGnG,EAAA;AAAC,IAAAM,MAAA,GA5CgBA,SA4ChBA,MAAAA,GAAA;AAAA,EAAA,OAQa,UAAAC,KAAA,EAAA;AAAA,IAAA,IAAGX,OAAAA,GAAAA,KAAAA,CAAAA,OAAAA,CAAAA;AAAAA,IAAAA,OAAAA,MAAAA,CAAAA,MAAAA,CAAqBA,OAAO,KAAK,OAAO,GAAGC,MAAM,CAACW,gBAAgB,GAAGX,MAAM,CAACY,WAAY,EAAA,GAAA,CAAA,CAAA;GAAE,CAAA;AAAA,CAAA,CAAA;AANrG,IAAMC,OAAO,gBAAGvB,MAAM,CAAA,IAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,SAAA;AAAAC,EAAAA,OAAAA,EAAA,SAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAe,EAAAA,IAAA,EAAA;AAAA,IAAA,WAAA,EAAA,cAMdC,MAA6F,EAAA,CAAA;AAAA,GAAA;AAAA,CA6C3G;;;;"}
|
1
|
+
{"version":3,"file":"DropdownItem.styles.js","sources":["../../../../../src/components/Dropdown/ui/DropdownItem/DropdownItem.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\n\nimport { classes, tokens, constants } from '../../Dropdown.tokens';\nimport { addFocus, applyEllipsis } from '../../../../mixins';\nimport { DropdownProps } from '../../Dropdown.types';\nimport { cellConfig, cellTokens } from '../../../Cell';\nimport { component, mergeConfig } from '../../../../engines';\n\nconst mergedCellConfig = mergeConfig(cellConfig);\nconst Cell = component(mergedCellConfig);\n\nexport const CellWrapper = styled.div`\n ${cellTokens.cellTitleColor}: var(${constants.cellTitleColor});\n ${cellTokens.cellBackgroundColor}: var(${constants.cellBackgroundColor});\n ${cellTokens.cellPadding}: var(${tokens.cellPadding});\n ${cellTokens.cellPaddingLeftContent}: var(${tokens.cellPaddingLeftContent});\n ${cellTokens.cellPaddingContent}: var(${tokens.cellPaddingContent});\n ${cellTokens.cellPaddingRightContent}: var(${tokens.cellPaddingRightContent});\n ${cellTokens.cellTextboxGap}: var(${tokens.cellTextboxGap});\n ${cellTokens.cellGap}: var(${tokens.cellGap});\n ${cellTokens.cellTitleFontFamily}: var(${tokens.cellTitleFontFamily});\n ${cellTokens.cellTitleFontSize}: var(${tokens.cellTitleFontSize});\n ${cellTokens.cellTitleFontStyle}: var(${tokens.cellTitleFontStyle});\n ${cellTokens.cellTitleFontWeight}: var(${tokens.cellTitleFontWeight});\n ${cellTokens.cellTitleLetterSpacing}: var(${tokens.cellTitleLetterSpacing});\n ${cellTokens.cellTitleLineHeight}: var(${tokens.cellTitleLineHeight});\n width: 100%;\n`;\n\nexport const StyledCell = styled(Cell)``;\n\nexport const DisclosureIconWrapper = styled.div`\n line-height: 0;\n color: var(${constants.disclosureIconColor});\n`;\n\nexport const Divider = styled.div<{ variant: DropdownProps['variant'] }>`\n height: 1px;\n margin-top: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.dividerMarginTopTight : tokens.dividerMarginTop})`};\n margin-right: var(${tokens.dividerMarginRight});\n margin-bottom: ${({ variant }) =>\n `var(${variant === 'tight' ? tokens.dividerMarginBottomTight : tokens.dividerMarginBottom})`};\n margin-left: var(${tokens.dividerMarginLeft});\n background: var(${tokens.dividerColor});\n`;\n\nexport const Wrapper = styled.li<{ variant: DropdownProps['variant'] }>`\n display: flex;\n align-items: center;\n min-height: var(${tokens.itemHeight});\n margin: 0;\n box-sizing: content-box;\n padding: ${({ variant }) => `var(${variant === 'tight' ? tokens.itemPaddingTight : tokens.itemPadding})`};\n font-family: var(${tokens.itemFontFamily});\n font-size: var(${tokens.itemFontSize});\n font-style: var(${tokens.itemFontStyle});\n font-weight: var(${tokens.itemFontWeightBold});\n letter-spacing: var(${tokens.itemFontLetterSpacing});\n line-height: var(${tokens.itemFontLineHeight});\n background-color: var(${constants.itemBackground});\n border-radius: var(${tokens.borderRadius});\n user-select: none;\n border-right: 0.125rem solid transparent;\n border-left: 0.125rem solid transparent;\n background-clip: padding-box;\n\n &:hover:not(.${classes.dropdownItemIsDisabled}) {\n cursor: pointer;\n background-color: var(${tokens.itemBackgroundHover});\n }\n\n &.${classes.dropdownItemIsActive} {\n background-color: var(${tokens.itemBackgroundHover});\n }\n\n &.${classes.dropdownItemIsDisabled} {\n opacity: ${constants.opacity};\n cursor: not-allowed;\n }\n\n :focus {\n outline: none;\n }\n\n ${addFocus({\n outlineSize: '0.0625rem',\n outlineOffset: '0',\n outlineColor: `var(${constants.focusColor})`,\n outlineRadius: `var(${tokens.itemBorderRadius})`,\n hasTransition: false,\n customFocusRules: `\n &.${classes.dropdownItemIsFocused}:before {\n outline: none;\n box-shadow: 0 0 0 0.0625rem var(${constants.focusColor});\n }\n `,\n })};\n`;\n\nexport const RenderItemWrapper = styled.div`\n ${applyEllipsis()};\n flex: 1;\n`;\n"],"names":["mergedCellConfig","mergeConfig","cellConfig","Cell","component","CellWrapper","styled","name","class","propsAsIs","_exp29","StyledCell","DisclosureIconWrapper","_exp31","_ref","variant","tokens","dividerMarginTopTight","dividerMarginTop","_exp33","_ref2","dividerMarginBottomTight","dividerMarginBottom","Divider","vars","_exp37","_ref3","itemPaddingTight","itemPadding","Wrapper","RenderItemWrapper"],"mappings":"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"}
|
@@ -3,3 +3,4 @@
|
|
3
3
|
.d1m97l2m{line-height:0;color:var(--text-secondary);}
|
4
4
|
.doib72h{height:1px;margin-top:var(--doib72h-0);margin-right:var(--plasma-dropdown-divider-margin-right);margin-bottom:var(--doib72h-1);margin-left:var(--plasma-dropdown-divider-margin-left);background:var(--plasma-dropdown-divider-color);}
|
5
5
|
.w6l2f0g{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:var(--plasma-dropdown-item-height);margin:0;box-sizing:content-box;padding:var(--w6l2f0g-0);font-family:var(--plasma-dropdown-item-font-family);font-size:var(--plasma-dropdown-item-font-size);font-style:var(--plasma-dropdown-item-font-style);font-weight:var(--plasma-dropdown-item-letter-spacing);-webkit-letter-spacing:var(--plasma-dropdown-item-line-height);-moz-letter-spacing:var(--plasma-dropdown-item-line-height);-ms-letter-spacing:var(--plasma-dropdown-item-line-height);letter-spacing:var(--plasma-dropdown-item-line-height);line-height:var(--plasma-dropdown-item-font-weight);background-color:var(--plasma-colors-transparent);border-radius:var(--plasma-dropdown-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-right:0.125rem solid transparent;border-left:0.125rem solid transparent;background-clip:padding-box;position:relative;}.w6l2f0g:hover:not(.dropdown-item-is-disabled){cursor:pointer;background-color:var(--plasma-dropdown-item-background-hover);}.w6l2f0g.dropdown-item-is-active{background-color:var(--plasma-dropdown-item-background-hover);}.w6l2f0g.dropdown-item-is-disabled{opacity:0.4;cursor:not-allowed;}.w6l2f0g:focus{outline:none;}.w6l2f0g::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:var(--plasma-dropdown-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.w6l2f0g.dropdown-item-is-focused:before{outline:none;box-shadow:0 0 0 0.0625rem var(--surface-accent);}
|
6
|
+
.r1jav4ek{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n getView,\n getInitialValue,\n} from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base } from './Select.styles';\nimport type { ItemContext, MergedSelectProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap] = usePathMaps(\n transformedItems,\n );\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value =\n outerValue !== null && outerValue !== undefined\n ? getInitialValue(outerValue, valueToItemMap)\n : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const view = target === 'textfield-like' && disabled ? 'default' : getView(status, outerView);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | number | Array<string | number>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled) {\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 const handleListToggle = (opened: boolean) => {\n if (disabled) {\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\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\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);\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 | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\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 (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\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) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n target={(referenceRef) => (\n <Target\n ref={ref}\n target={target}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n handleClickArrow={handleClickArrow}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n separator={separator}\n />\n )}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\n ref={targetRef}\n >\n {transformedItems.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 </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["Context","createContext","selectRoot","Root","forwardRef","props","ref","_getItemByFocused","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","outerView","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","getInitialValue","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","getView","targetRef","useOutsideClick","type","newValue","handleClickArrow","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","Array","isArray","val","updateSingleAncestors","React","createElement","_extends","Provider","FloatingPopover","onToggle","referenceRef","Target","selectProps","inputWrapperRef","Ul","role","id","concat","onScroll","map","index","Inner","currentLevel","selectConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n getView,\n getInitialValue,\n} from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base } from './Select.styles';\nimport type { ItemContext, MergedSelectProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap] = usePathMaps(\n transformedItems,\n );\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value =\n outerValue !== null && outerValue !== undefined\n ? getInitialValue(outerValue, valueToItemMap)\n : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const view = target === 'textfield-like' && disabled ? 'default' : getView(status, outerView);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | number | Array<string | number>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled) {\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 const handleListToggle = (opened: boolean) => {\n if (disabled) {\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\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\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);\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 | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\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 (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\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) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n target={(referenceRef) => (\n <Target\n ref={ref}\n target={target}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n handleClickArrow={handleClickArrow}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n separator={separator}\n />\n )}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n {...(rest as any)}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\n ref={targetRef}\n >\n {transformedItems.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 </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["Context","createContext","selectRoot","Root","forwardRef","props","ref","_getItemByFocused","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","outerView","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","getInitialValue","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","getView","targetRef","useOutsideClick","type","newValue","handleClickArrow","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","Array","isArray","val","updateSingleAncestors","React","createElement","_extends","Provider","FloatingPopover","onToggle","referenceRef","Target","selectProps","inputWrapperRef","Ul","role","id","concat","onScroll","map","index","Inner","currentLevel","selectConfig","name","tag","layout","base","variations","defaults"],"mappings":"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"}
|
@@ -36,7 +36,6 @@ var Item = function Item(_ref) {
|
|
36
36
|
handleItemClick = _useContext.handleItemClick,
|
37
37
|
variant = _useContext.variant,
|
38
38
|
renderItem = _useContext.renderItem,
|
39
|
-
valueToItemMap = _useContext.valueToItemMap,
|
40
39
|
treeId = _useContext.treeId;
|
41
40
|
var itemDisabled = Boolean(disabled || isDisabled);
|
42
41
|
var disabledClassName = itemDisabled ? classes.dropdownItemIsDisabled : undefined;
|
@@ -91,7 +90,7 @@ var Item = function Item(_ref) {
|
|
91
90
|
}))), !multiselect && checked.get(item.value) === 'done' && /*#__PURE__*/React.createElement(IconDone, {
|
92
91
|
size: sizeToIconSize(size, variant),
|
93
92
|
color: "inherit"
|
94
|
-
})), renderItem ? /*#__PURE__*/React.createElement(StyledText, null, renderItem(
|
93
|
+
})), renderItem ? /*#__PURE__*/React.createElement(StyledText, null, renderItem(item)) : /*#__PURE__*/React.createElement(StyledWrapper, null, /*#__PURE__*/React.createElement(StyledCell, {
|
95
94
|
contentLeft: contentLeft,
|
96
95
|
contentRight: contentRight
|
97
96
|
// TODO: #1548
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Item.js","sources":["../../../../../../../src/components/Select/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { IconDisclosureRightCentered, IconDone } from '../../../../../_Icon';\nimport { Context } from '../../../../Select';\nimport { useDidMountEffect } from '../../../../../../hooks';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledWrapper,\n StyledCell,\n StyledCheckbox,\n StyledIndicator,\n DisclosureIconWrapper,\n IconWrapper,\n StyledText,\n Wrapper,\n StyledCheckboxWrapper,\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, isDisabled, contentLeft, contentRight } = item;\n\n const ref = useRef<HTMLLIElement | null>(null);\n\n const {\n focusedPath,\n checked,\n multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n } = useContext(Context);\n\n const itemDisabled = Boolean(disabled || isDisabled);\n\n const disabledClassName = itemDisabled ? classes.dropdownItemIsDisabled : undefined;\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 (itemDisabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (itemDisabled) {\n e.stopPropagation();\n return;\n }\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n className={cx(disabledClassName, focusedClass, activeClass)}\n id={getItemId(treeId, value.toString())}\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 {multiselect && (\n <StyledCheckboxWrapper onClick={(e) => e.stopPropagation()}>\n <StyledCheckbox\n checked={Boolean(checked.get(item.value))}\n indeterminate={checked.get(item.value) === 'indeterminate'}\n onChange={handleChange}\n />\n </StyledCheckboxWrapper>\n )}\n\n {!multiselect && checked.get(item.value) === 'dot' && <StyledIndicator size=\"s\" view=\"default\" />}\n\n {!multiselect && checked.get(item.value) === 'done' && (\n <IconDone size={sizeToIconSize(size, variant)} color=\"inherit\" />\n )}\n </IconWrapper>\n\n {renderItem ? (\n <StyledText>{renderItem(valueToItemMap.get(value)!)}</StyledText>\n ) : (\n <StyledWrapper>\n <StyledCell\n contentLeft={contentLeft}\n contentRight={contentRight}\n // TODO: #1548\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n title={<span>{label}</span>}\n />\n </StyledWrapper>\n )}\n\n {!isEmpty(item.items) && (\n <DisclosureIconWrapper>\n <IconDisclosureRightCentered 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","isDisabled","contentLeft","contentRight","ref","useRef","_useContext","useContext","Context","focusedPath","checked","multiselect","size","handleCheckboxChange","handleItemClick","variant","renderItem","valueToItemMap","treeId","itemDisabled","Boolean","disabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useDidMountEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","className","cx","id","getItemId","toString","onClick","role","get","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","indeterminate","onChange","_StyledIndicator","StyledIndicator","view","IconDone","sizeToIconSize","color","StyledText","StyledWrapper","StyledCell","title","isEmpty","items","DisclosureIconWrapper","IconDisclosureRightCentered"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Item.js","sources":["../../../../../../../src/components/Select/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { IconDisclosureRightCentered, IconDone } from '../../../../../_Icon';\nimport { Context } from '../../../../Select';\nimport { useDidMountEffect } from '../../../../../../hooks';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledWrapper,\n StyledCell,\n StyledCheckbox,\n StyledIndicator,\n DisclosureIconWrapper,\n IconWrapper,\n StyledText,\n Wrapper,\n StyledCheckboxWrapper,\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, isDisabled, contentLeft, contentRight } = item;\n\n const ref = useRef<HTMLLIElement | null>(null);\n\n const {\n focusedPath,\n checked,\n multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n } = useContext(Context);\n\n const itemDisabled = Boolean(disabled || isDisabled);\n\n const disabledClassName = itemDisabled ? classes.dropdownItemIsDisabled : undefined;\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 (itemDisabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (itemDisabled) {\n e.stopPropagation();\n return;\n }\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n className={cx(disabledClassName, focusedClass, activeClass)}\n id={getItemId(treeId, value.toString())}\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 {multiselect && (\n <StyledCheckboxWrapper onClick={(e) => e.stopPropagation()}>\n <StyledCheckbox\n checked={Boolean(checked.get(item.value))}\n indeterminate={checked.get(item.value) === 'indeterminate'}\n onChange={handleChange}\n />\n </StyledCheckboxWrapper>\n )}\n\n {!multiselect && checked.get(item.value) === 'dot' && <StyledIndicator size=\"s\" view=\"default\" />}\n\n {!multiselect && checked.get(item.value) === 'done' && (\n <IconDone size={sizeToIconSize(size, variant)} color=\"inherit\" />\n )}\n </IconWrapper>\n\n {renderItem ? (\n <StyledText>{renderItem(item)}</StyledText>\n ) : (\n <StyledWrapper>\n <StyledCell\n contentLeft={contentLeft}\n contentRight={contentRight}\n // TODO: #1548\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n title={<span>{label}</span>}\n />\n </StyledWrapper>\n )}\n\n {!isEmpty(item.items) && (\n <DisclosureIconWrapper>\n <IconDisclosureRightCentered 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","isDisabled","contentLeft","contentRight","ref","useRef","_useContext","useContext","Context","focusedPath","checked","multiselect","size","handleCheckboxChange","handleItemClick","variant","renderItem","treeId","itemDisabled","Boolean","disabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useDidMountEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","className","cx","id","getItemId","toString","onClick","role","get","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","indeterminate","onChange","_StyledIndicator","StyledIndicator","view","IconDone","sizeToIconSize","color","StyledText","StyledWrapper","StyledCell","title","isEmpty","items","DisclosureIconWrapper","IconDisclosureRightCentered"],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { extends as _extends } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
1
|
+
import { extends as _extends, toConsumableArray as _toConsumableArray } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
2
2
|
import React, { forwardRef } from 'react';
|
3
3
|
import { classes } from '../../../../Select.tokens.js';
|
4
4
|
import { StyledTextField, IconArrowWrapper, StyledArrow } from './Textfield.styles.js';
|
@@ -49,9 +49,24 @@ var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
49
49
|
|
50
50
|
// Обработчик чипов
|
51
51
|
var handleChipsChange = function handleChipsChange(chipLabels) {
|
52
|
-
|
53
|
-
|
54
|
-
|
52
|
+
if (!Array.isArray(value)) return;
|
53
|
+
|
54
|
+
// TODO: #1564
|
55
|
+
// Из лейблов чипов получаем value у item и далее прокидываем его в onChange.
|
56
|
+
if (renderValue && !isTargetAmount) {
|
57
|
+
var resultValues = _toConsumableArray(value);
|
58
|
+
value.forEach(function (_, index) {
|
59
|
+
var labelAfterRenderValue = renderValue(labelToItemMap.get(valueToItemMap.get(value[index]).label));
|
60
|
+
if (!chipLabels.includes(labelAfterRenderValue)) {
|
61
|
+
resultValues.splice(index, 1);
|
62
|
+
}
|
63
|
+
});
|
64
|
+
onChange(resultValues);
|
65
|
+
} else {
|
66
|
+
onChange(chipLabels.map(function (chipLabel) {
|
67
|
+
return labelToItemMap.get(chipLabel).value;
|
68
|
+
}));
|
69
|
+
}
|
55
70
|
};
|
56
71
|
return /*#__PURE__*/React.createElement(StyledTextField, _extends({
|
57
72
|
ref: ref,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { IconArrowWrapper, StyledArrow, StyledTextField } from './Textfield.styles';\nimport { TextfieldProps } from './Textfield.types';\n\nexport const Textfield = forwardRef<HTMLInputElement, TextfieldProps>(\n (\n {\n inputWrapperRef,\n opened,\n multiselect,\n value,\n label,\n placeholder,\n onKeyDown,\n labelPlacement,\n size,\n view,\n handleClickArrow,\n contentLeft,\n helperText,\n treeId,\n activeDescendantItemValue,\n disabled,\n isTargetAmount,\n valueToItemMap,\n renderValue,\n onChange,\n labelToItemMap,\n chipView,\n },\n ref,\n ) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getChips = (): string[] => {\n if (multiselect && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n const renderValueMapper =\n renderValue && ((stringValue: string | number) => renderValue(valueToItemMap.get(stringValue)!));\n const valueToItemMapper = (stringValue: string | number) => valueToItemMap.get(stringValue)!.label;\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n return (\n <StyledTextField\n ref={ref}\n inputWrapperRef={inputWrapperRef}\n readOnly\n value={multiselect ? undefined : valueToItemMap.get(value.toString())?.label || ''}\n size={size}\n view={view}\n chipView={chipView}\n labelPlacement={labelPlacement}\n disabled={disabled}\n label={label}\n placeholder={value instanceof Array && value.length ? '' : placeholder}\n contentLeft={contentLeft as React.ReactElement}\n contentRight={\n <IconArrowWrapper disabled={Boolean(disabled)} onClick={handleClickArrow}>\n <StyledArrow color=\"inherit\" size={sizeToIconSize(size)} className={withArrowInverse} />\n </IconArrowWrapper>\n }\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={opened}\n aria-activedescendant={activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''}\n {...(multiselect\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n opened={opened}\n // TODO: #1547\n _forceChipManipulationWithReadonly\n />\n );\n },\n);\n"],"names":["Textfield","forwardRef","_ref","ref","_valueToItemMap$get","inputWrapperRef","opened","multiselect","value","label","placeholder","onKeyDown","labelPlacement","size","view","handleClickArrow","contentLeft","helperText","treeId","activeDescendantItemValue","disabled","isTargetAmount","valueToItemMap","renderValue","onChange","labelToItemMap","chipView","withArrowInverse","classes","arrowInverse","undefined","getChips","Array","isArray","length","concat","renderValueMapper","stringValue","get","valueToItemMapper","map","handleChipsChange","chipLabels","chipLabel","React","createElement","StyledTextField","_extends","readOnly","toString","contentRight","IconArrowWrapper","Boolean","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","_forceChipManipulationWithReadonly"],"mappings":";;;;;;;AAQO,IAAMA,SAAS,gBAAGC,UAAU,CAC/B,UAAAC,IAAA,EAyBIC,GAAG,EACF;AAAA,EAAA,IAAAC,mBAAA,CAAA;AAAA,EAAA,IAxBGC,eAAe,GAAAH,IAAA,CAAfG,eAAe;IACfC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,WAAW,GAAAL,IAAA,CAAXK,WAAW;IACXC,KAAK,GAAAN,IAAA,CAALM,KAAK;IACLC,KAAK,GAAAP,IAAA,CAALO,KAAK;IACLC,WAAW,GAAAR,IAAA,CAAXQ,WAAW;IACXC,SAAS,GAAAT,IAAA,CAATS,SAAS;IACTC,cAAc,GAAAV,IAAA,CAAdU,cAAc;IACdC,IAAI,GAAAX,IAAA,CAAJW,IAAI;IACJC,IAAI,GAAAZ,IAAA,CAAJY,IAAI;IACJC,gBAAgB,GAAAb,IAAA,CAAhBa,gBAAgB;IAChBC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IACXC,UAAU,GAAAf,IAAA,CAAVe,UAAU;IACVC,MAAM,GAAAhB,IAAA,CAANgB,MAAM;IACNC,yBAAyB,GAAAjB,IAAA,CAAzBiB,yBAAyB;IACzBC,QAAQ,GAAAlB,IAAA,CAARkB,QAAQ;IACRC,cAAc,GAAAnB,IAAA,CAAdmB,cAAc;IACdC,cAAc,GAAApB,IAAA,CAAdoB,cAAc;IACdC,WAAW,GAAArB,IAAA,CAAXqB,WAAW;IACXC,QAAQ,GAAAtB,IAAA,CAARsB,QAAQ;IACRC,cAAc,GAAAvB,IAAA,CAAduB,cAAc;IACdC,QAAQ,GAAAxB,IAAA,CAARwB,QAAQ,CAAA;EAIZ,IAAMC,gBAAgB,GAAGrB,MAAM,GAAGsB,OAAO,CAACC,YAAY,GAAGC,SAAS,CAAA;AAElE,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,GAAmB;IAC7B,IAAIxB,WAAW,IAAIyB,KAAK,CAACC,OAAO,CAACzB,KAAK,CAAC,EAAE;AACrC,MAAA,IAAIA,KAAK,CAAC0B,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;AAEjC,MAAA,IAAIb,cAAc,EAAE;AAChB,QAAA,OAAO,+CAAAc,MAAA,CAAY3B,KAAK,CAAC0B,MAAM,CAAG,CAAA,CAAA;AACtC,OAAA;AAEA,MAAA,IAAME,iBAAiB,GACnBb,WAAW,IAAK,UAACc,WAA4B,EAAA;QAAA,OAAKd,WAAW,CAACD,cAAc,CAACgB,GAAG,CAACD,WAAW,CAAE,CAAC,CAAA;OAAC,CAAA;AACpG,MAAA,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIF,WAA4B,EAAA;AAAA,QAAA,OAAKf,cAAc,CAACgB,GAAG,CAACD,WAAW,CAAC,CAAE5B,KAAK,CAAA;AAAA,OAAA,CAAA;AAElG,MAAA,OAAOD,KAAK,CAACgC,GAAG,CAACJ,iBAAiB,IAAIG,iBAAiB,CAAC,CAAA;AAC5D,KAAA;AAEA,IAAA,OAAO,EAAE,CAAA;GACZ,CAAA;;AAED;AACA,EAAA,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,UAAiB,EAAK;
|
1
|
+
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { IconArrowWrapper, StyledArrow, StyledTextField } from './Textfield.styles';\nimport { TextfieldProps } from './Textfield.types';\n\nexport const Textfield = forwardRef<HTMLInputElement, TextfieldProps>(\n (\n {\n inputWrapperRef,\n opened,\n multiselect,\n value,\n label,\n placeholder,\n onKeyDown,\n labelPlacement,\n size,\n view,\n handleClickArrow,\n contentLeft,\n helperText,\n treeId,\n activeDescendantItemValue,\n disabled,\n isTargetAmount,\n valueToItemMap,\n renderValue,\n onChange,\n labelToItemMap,\n chipView,\n },\n ref,\n ) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getChips = (): string[] => {\n if (multiselect && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n const renderValueMapper =\n renderValue && ((stringValue: string | number) => renderValue(valueToItemMap.get(stringValue)!));\n const valueToItemMapper = (stringValue: string | number) => valueToItemMap.get(stringValue)!.label;\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\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 labelAfterRenderValue = renderValue(\n labelToItemMap.get(valueToItemMap.get(value[index])!.label)!,\n );\n\n if (!chipLabels.includes(labelAfterRenderValue)) {\n resultValues.splice(index, 1);\n }\n });\n\n onChange(resultValues);\n } else {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n }\n };\n\n return (\n <StyledTextField\n ref={ref}\n inputWrapperRef={inputWrapperRef}\n readOnly\n value={multiselect ? undefined : valueToItemMap.get(value.toString())?.label || ''}\n size={size}\n view={view}\n chipView={chipView}\n labelPlacement={labelPlacement}\n disabled={disabled}\n label={label}\n placeholder={value instanceof Array && value.length ? '' : placeholder}\n contentLeft={contentLeft as React.ReactElement}\n contentRight={\n <IconArrowWrapper disabled={Boolean(disabled)} onClick={handleClickArrow}>\n <StyledArrow color=\"inherit\" size={sizeToIconSize(size)} className={withArrowInverse} />\n </IconArrowWrapper>\n }\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={opened}\n aria-activedescendant={activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''}\n {...(multiselect\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n opened={opened}\n // TODO: #1547\n _forceChipManipulationWithReadonly\n />\n );\n },\n);\n"],"names":["Textfield","forwardRef","_ref","ref","_valueToItemMap$get","inputWrapperRef","opened","multiselect","value","label","placeholder","onKeyDown","labelPlacement","size","view","handleClickArrow","contentLeft","helperText","treeId","activeDescendantItemValue","disabled","isTargetAmount","valueToItemMap","renderValue","onChange","labelToItemMap","chipView","withArrowInverse","classes","arrowInverse","undefined","getChips","Array","isArray","length","concat","renderValueMapper","stringValue","get","valueToItemMapper","map","handleChipsChange","chipLabels","resultValues","_toConsumableArray","forEach","_","index","labelAfterRenderValue","includes","splice","chipLabel","React","createElement","StyledTextField","_extends","readOnly","toString","contentRight","IconArrowWrapper","Boolean","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","_forceChipManipulationWithReadonly"],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
.base_1tcl212_bm1v11h__e2c572a3 .base_1tcl212_s10fscgc__e2c572a3{font-family:var(--plasma-switch-font-family);font-style:var(--plasma-switch-font-style);font-weight:var(--plasma-switch-font-weight);-webkit-letter-spacing:var(--plasma-switch-letter-spacing);-moz-letter-spacing:var(--plasma-switch-letter-spacing);-ms-letter-spacing:var(--plasma-switch-letter-spacing);letter-spacing:var(--plasma-switch-letter-spacing);line-height:var(--plasma-switch-line-height);font-size:var(--plasma-switch-font-size);}.base_1tcl212_bm1v11h__e2c572a3 .base_1tcl212_sdjnckq__e2c572a3{font-family:var(--plasma-switch-description-font-family);font-style:var(--plasma-switch-description-font-style);font-weight:var(--plasma-switch-description-font-weight);-webkit-letter-spacing:var(--plasma-switch-description-letter-spacing);-moz-letter-spacing:var(--plasma-switch-description-letter-spacing);-ms-letter-spacing:var(--plasma-switch-description-letter-spacing);letter-spacing:var(--plasma-switch-description-letter-spacing);line-height:var(--plasma-switch-description-line-height);font-size:var(--plasma-switch-description-font-size);}.base_1tcl212_bm1v11h__e2c572a3 .base_1tcl212_s1ilr5eq__e2c572a3{margin:var(--plasma_private-switch__label-offset,0);}
|
2
2
|
|
3
|
-
.
|
3
|
+
.base_1d0b3t4_b1wld3h3__ac2a0bcf .base_1d0b3t4_s2cs3kf__ac2a0bcf{box-sizing:border-box;-webkit-flex:0 0 var(--plasma-switch__track-width);-ms-flex:0 0 var(--plasma-switch__track-width);flex:0 0 var(--plasma-switch__track-width);border-style:solid;border-width:var(--plasma-switch__track-border);border-radius:var(--plasma-switch__track-border-radius);width:var(--plasma-switch__track-width);height:var(--plasma-switch__track-height);}.base_1d0b3t4_b1wld3h3__ac2a0bcf .base_1d0b3t4_s2cs3kf__ac2a0bcf::after{width:var(--plasma-switch__thumb-size);height:var(--plasma-switch__thumb-size);border-radius:var(--plasma-switch__thumb-border-radius);margin:auto var(--plasma-switch__thumb-offset);}.base_1d0b3t4_b1wld3h3__ac2a0bcf:active:not([disabled]) .base_1d0b3t4_s2cs3kf__ac2a0bcf::after{width:calc(var(--plasma-switch__thumb-size) * var(--plasma-switch__thumb-scale,1));}
|
4
4
|
|
5
5
|
.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_s2cs3kf__64acd499{background-color:var(--plasma-switch__track_checked_false-bg-color);border-color:var(--plasma-switch__track-checked_false-border-color);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:not([disabled]) ~ .base_15atbyp_s2cs3kf__64acd499:hover{background-color:var(--plasma-switch__track_checked_false_hovered_true-bg-color,var(--plasma-switch__track_checked_false-bg-color));border-color:var(--plasma-switch__track-checked_false_hovered_true-border-color,var(--plasma-switch__track-checked_false-border-color));}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:checked ~ .base_15atbyp_s2cs3kf__64acd499{background-color:var(--plasma-switch__track_checked_true-bg-color);border-color:var(--plasma-switch__track-checked_true-border-color);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:checked:not([disabled]) ~ .base_15atbyp_s2cs3kf__64acd499:hover{background-color:var(--plasma-switch__track_checked_true_hovered_true-bg-color,var(--plasma-switch__track_checked_true-bg-color));border-color:var(--plasma-switch__track-checked_true_hovered_true-border-color,var(--plasma-switch__track-checked_true-border-color));}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_s2cs3kf__64acd499::after{background-color:var(--plasma-switch__thumb-checked_false-bg-color);box-shadow:var(--plasma-switch__thumb-box-shadow);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_ssthlx1__64acd499:checked ~ .base_15atbyp_s2cs3kf__64acd499::after{background-color:var(--plasma-switch__thumb_checked_true-bg-color);box-shadow:var(--plasma-switch__thumb-box-shadow_checked_true,var(--plasma-switch__thumb-box-shadow));}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_s1ilr5eq__64acd499{color:var(--plasma-switch__label-color);}.base_15atbyp_b1g0jmh3__64acd499 .base_15atbyp_sdjnckq__64acd499{color:var(--plasma-switch__description-color);}
|
6
6
|
|
@@ -23,8 +23,7 @@ var tokens = {
|
|
23
23
|
verticalGap: '--plasma-switch-vertical-gap',
|
24
24
|
trackWidth: '--plasma-switch__track-width',
|
25
25
|
trackHeight: '--plasma-switch__track-height',
|
26
|
-
|
27
|
-
trackBorderWidthOff: '--plasma-switch__track-checked_false-border-width',
|
26
|
+
trackBorderWidth: '--plasma-switch__track-border',
|
28
27
|
trackBorderColorOn: '--plasma-switch__track-checked_true-border-color',
|
29
28
|
trackBorderColorOnHover: '--plasma-switch__track-checked_true_hovered_true-border-color',
|
30
29
|
trackBorderColorOff: '--plasma-switch__track-checked_false-border-color',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Switch.tokens.js","sources":["../../../src/components/Switch/Switch.tokens.ts"],"sourcesContent":["export const tokens = {\n fontFamily: '--plasma-switch-font-family',\n fontStyle: '--plasma-switch-font-style',\n fontSize: '--plasma-switch-font-size',\n fontWeight: '--plasma-switch-font-weight',\n letterSpacing: '--plasma-switch-letter-spacing',\n lineHeight: '--plasma-switch-line-height',\n\n /* Токены description */\n descriptionFontFamily: '--plasma-switch-description-font-family',\n descriptionFontStyle: '--plasma-switch-description-font-style',\n descriptionFontSize: '--plasma-switch-description-font-size',\n descriptionFontWeight: '--plasma-switch-description-font-weight',\n descriptionLetterSpacing: '--plasma-switch-description-letter-spacing',\n descriptionLineHeight: '--plasma-switch-description-line-height',\n\n /* Цвет подписи */\n labelColor: '--plasma-switch__label-color',\n labelOffset: '--plasma-switch__label-offset',\n\n /* Цвет описания */\n descriptionColor: '--plasma-switch__description-color',\n descriptionOffset: '--plasma-switch__description-offset',\n\n /** Прозрачность для всего компонента в состоянии disabled */\n disabledOpacity: '--plasma-switch-disabled-opacity',\n\n verticalGap: '--plasma-switch-vertical-gap',\n trackWidth: '--plasma-switch__track-width',\n trackHeight: '--plasma-switch__track-height',\n
|
1
|
+
{"version":3,"file":"Switch.tokens.js","sources":["../../../src/components/Switch/Switch.tokens.ts"],"sourcesContent":["export const tokens = {\n fontFamily: '--plasma-switch-font-family',\n fontStyle: '--plasma-switch-font-style',\n fontSize: '--plasma-switch-font-size',\n fontWeight: '--plasma-switch-font-weight',\n letterSpacing: '--plasma-switch-letter-spacing',\n lineHeight: '--plasma-switch-line-height',\n\n /* Токены description */\n descriptionFontFamily: '--plasma-switch-description-font-family',\n descriptionFontStyle: '--plasma-switch-description-font-style',\n descriptionFontSize: '--plasma-switch-description-font-size',\n descriptionFontWeight: '--plasma-switch-description-font-weight',\n descriptionLetterSpacing: '--plasma-switch-description-letter-spacing',\n descriptionLineHeight: '--plasma-switch-description-line-height',\n\n /* Цвет подписи */\n labelColor: '--plasma-switch__label-color',\n labelOffset: '--plasma-switch__label-offset',\n\n /* Цвет описания */\n descriptionColor: '--plasma-switch__description-color',\n descriptionOffset: '--plasma-switch__description-offset',\n\n /** Прозрачность для всего компонента в состоянии disabled */\n disabledOpacity: '--plasma-switch-disabled-opacity',\n\n verticalGap: '--plasma-switch-vertical-gap',\n trackWidth: '--plasma-switch__track-width',\n trackHeight: '--plasma-switch__track-height',\n trackBorderWidth: '--plasma-switch__track-border',\n trackBorderColorOn: '--plasma-switch__track-checked_true-border-color',\n trackBorderColorOnHover: '--plasma-switch__track-checked_true_hovered_true-border-color',\n trackBorderColorOff: '--plasma-switch__track-checked_false-border-color',\n trackBorderColorOffHover: '--plasma-switch__track-checked_false_hovered_true-border-color',\n\n trackBorderRadius: '--plasma-switch__track-border-radius',\n // NOTE: could be intersection with checked\n trackBackgroundColorOn: '--plasma-switch__track_checked_true-bg-color',\n trackBackgroundColorOnHover: '--plasma-switch__track_checked_true_hovered_true-bg-color',\n trackBackgroundColorOff: '--plasma-switch__track_checked_false-bg-color',\n trackBackgroundColorOffHover: '--plasma-switch__track_checked_false_hovered_true-bg-color',\n\n trackFocusColor: '--plasma-switch__track-focus-color',\n\n thumbSize: '--plasma-switch__thumb-size',\n thumbOffset: '--plasma-switch__thumb-offset',\n thumbBorderRadius: '--plasma-switch__thumb-border-radius',\n\n thumbPressScale: '--plasma-switch__thumb-scale',\n\n thumbBackgroundColorOn: '--plasma-switch__thumb_checked_true-bg-color',\n thumbBackgroundColorOff: '--plasma-switch__thumb-checked_false-bg-color',\n thumbBoxShadow: '--plasma-switch__thumb-box-shadow',\n thumbBoxShadowOn: '--plasma-switch__thumb-box-shadow_checked_true',\n\n labelOffsetPrivate: '--plasma_private-switch__label-offset',\n};\n\nexport const classes = {\n beforeSwitchLabelPosition: 'switch-label-position-before',\n afterSwitchLabelPosition: 'switch-label-position-after',\n};\n"],"names":["tokens","fontFamily","fontStyle","fontSize","fontWeight","letterSpacing","lineHeight","descriptionFontFamily","descriptionFontStyle","descriptionFontSize","descriptionFontWeight","descriptionLetterSpacing","descriptionLineHeight","labelColor","labelOffset","descriptionColor","descriptionOffset","disabledOpacity","verticalGap","trackWidth","trackHeight","trackBorderWidth","trackBorderColorOn","trackBorderColorOnHover","trackBorderColorOff","trackBorderColorOffHover","trackBorderRadius","trackBackgroundColorOn","trackBackgroundColorOnHover","trackBackgroundColorOff","trackBackgroundColorOffHover","trackFocusColor","thumbSize","thumbOffset","thumbBorderRadius","thumbPressScale","thumbBackgroundColorOn","thumbBackgroundColorOff","thumbBoxShadow","thumbBoxShadowOn","labelOffsetPrivate","classes","beforeSwitchLabelPosition","afterSwitchLabelPosition"],"mappings":"AAAO,IAAMA,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,6BAA6B;AACzCC,EAAAA,SAAS,EAAE,4BAA4B;AACvCC,EAAAA,QAAQ,EAAE,2BAA2B;AACrCC,EAAAA,UAAU,EAAE,6BAA6B;AACzCC,EAAAA,aAAa,EAAE,gCAAgC;AAC/CC,EAAAA,UAAU,EAAE,6BAA6B;AAEzC;AACAC,EAAAA,qBAAqB,EAAE,yCAAyC;AAChEC,EAAAA,oBAAoB,EAAE,wCAAwC;AAC9DC,EAAAA,mBAAmB,EAAE,uCAAuC;AAC5DC,EAAAA,qBAAqB,EAAE,yCAAyC;AAChEC,EAAAA,wBAAwB,EAAE,4CAA4C;AACtEC,EAAAA,qBAAqB,EAAE,yCAAyC;AAEhE;AACAC,EAAAA,UAAU,EAAE,8BAA8B;AAC1CC,EAAAA,WAAW,EAAE,+BAA+B;AAE5C;AACAC,EAAAA,gBAAgB,EAAE,oCAAoC;AACtDC,EAAAA,iBAAiB,EAAE,qCAAqC;AAExD;AACAC,EAAAA,eAAe,EAAE,kCAAkC;AAEnDC,EAAAA,WAAW,EAAE,8BAA8B;AAC3CC,EAAAA,UAAU,EAAE,8BAA8B;AAC1CC,EAAAA,WAAW,EAAE,+BAA+B;AAC5CC,EAAAA,gBAAgB,EAAE,+BAA+B;AACjDC,EAAAA,kBAAkB,EAAE,kDAAkD;AACtEC,EAAAA,uBAAuB,EAAE,+DAA+D;AACxFC,EAAAA,mBAAmB,EAAE,mDAAmD;AACxEC,EAAAA,wBAAwB,EAAE,gEAAgE;AAE1FC,EAAAA,iBAAiB,EAAE,sCAAsC;AACzD;AACAC,EAAAA,sBAAsB,EAAE,8CAA8C;AACtEC,EAAAA,2BAA2B,EAAE,2DAA2D;AACxFC,EAAAA,uBAAuB,EAAE,+CAA+C;AACxEC,EAAAA,4BAA4B,EAAE,4DAA4D;AAE1FC,EAAAA,eAAe,EAAE,oCAAoC;AAErDC,EAAAA,SAAS,EAAE,6BAA6B;AACxCC,EAAAA,WAAW,EAAE,+BAA+B;AAC5CC,EAAAA,iBAAiB,EAAE,sCAAsC;AAEzDC,EAAAA,eAAe,EAAE,8BAA8B;AAE/CC,EAAAA,sBAAsB,EAAE,8CAA8C;AACtEC,EAAAA,uBAAuB,EAAE,+CAA+C;AACxEC,EAAAA,cAAc,EAAE,mCAAmC;AACnDC,EAAAA,gBAAgB,EAAE,gDAAgD;AAElEC,EAAAA,kBAAkB,EAAE,uCAAA;AACxB,EAAC;AAEM,IAAMC,OAAO,GAAG;AACnBC,EAAAA,yBAAyB,EAAE,8BAA8B;AACzDC,EAAAA,wBAAwB,EAAE,6BAAA;AAC9B;;;;"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"base.js","sources":["../../../../src/components/Switch/_toggleSize/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { tokens } from '../Switch.tokens';\nimport {
|
1
|
+
{"version":3,"file":"base.js","sources":["../../../../src/components/Switch/_toggleSize/base.ts"],"sourcesContent":["import { css } from '@linaria/core';\n\nimport { tokens } from '../Switch.tokens';\nimport { StyledTrigger } from '../Switch.styles';\n\nexport const base = css`\n ${StyledTrigger} {\n box-sizing: border-box;\n flex: 0 0 var(${tokens.trackWidth});\n\n border-style: solid;\n border-width: var(${tokens.trackBorderWidth});\n border-radius: var(${tokens.trackBorderRadius});\n\n width: var(${tokens.trackWidth});\n height: var(${tokens.trackHeight});\n\n &::after {\n width: var(${tokens.thumbSize});\n height: var(${tokens.thumbSize});\n border-radius: var(${tokens.thumbBorderRadius});\n margin: auto var(${tokens.thumbOffset});\n }\n }\n\n :active:not([disabled]) ${StyledTrigger}::after {\n width: calc(var(${tokens.thumbSize}) * var(${tokens.thumbPressScale}, 1));\n }\n`;\n"],"names":["base"],"mappings":"AAKO,IAAMA,IAAI,GAuBhB;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
.b1wld3h3 .s2cs3kf{box-sizing:border-box;-webkit-flex:0 0 var(--plasma-switch__track-width);-ms-flex:0 0 var(--plasma-switch__track-width);flex:0 0 var(--plasma-switch__track-width);border-style:solid;border-width:var(--plasma-switch__track-border);border-radius:var(--plasma-switch__track-border-radius);width:var(--plasma-switch__track-width);height:var(--plasma-switch__track-height);}.b1wld3h3 .s2cs3kf::after{width:var(--plasma-switch__thumb-size);height:var(--plasma-switch__thumb-size);border-radius:var(--plasma-switch__thumb-border-radius);margin:auto var(--plasma-switch__thumb-offset);}.b1wld3h3:active:not([disabled]) .s2cs3kf::after{width:calc(var(--plasma-switch__thumb-size) * var(--plasma-switch__thumb-scale,1));}
|