@salutejs/plasma-new-hope 0.88.0-canary.1233.9420319803.0 → 0.88.0-canary.1233.9437372350.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Chip/Chip.css +5 -5
- package/cjs/components/Chip/Chip.styles.js +1 -1
- package/cjs/components/Chip/Chip.styles.js.map +1 -1
- package/cjs/components/Chip/{Chip.styles_1l2rsrr.css → Chip.styles_1mwwhiw.css} +1 -1
- package/cjs/components/Combobox/Combobox.css +5 -5
- package/cjs/components/Combobox/ui/ComboboxChip/ComboboxChip.css +5 -5
- package/cjs/components/Combobox/ui/ComboboxTarget/ComboboxTarget.css +5 -5
- package/cjs/components/Pagination/Pagination.css +10 -11
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +10 -11
- package/cjs/components/Range/Range.css +5 -5
- package/cjs/components/Select/Select.css +10 -11
- package/cjs/components/Select/Select.js +10 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.styles.js +2 -0
- package/cjs/components/Select/Select.styles.js.map +1 -1
- package/cjs/components/Select/elements/Inner/Inner.css +10 -11
- package/cjs/components/Select/elements/Inner/Inner.js +7 -2
- package/cjs/components/Select/elements/Inner/Inner.js.map +1 -1
- package/cjs/components/Select/elements/Inner/elements/Item/Item.css +10 -11
- package/cjs/components/Select/elements/Inner/elements/Item/Item.js +17 -6
- package/cjs/components/Select/elements/Inner/elements/Item/Item.js.map +1 -1
- package/cjs/components/Select/elements/Target/Target.css +10 -11
- package/cjs/components/Select/elements/Target/Target.js +9 -3
- package/cjs/components/Select/elements/Target/Target.js.map +1 -1
- package/cjs/components/Select/elements/Target/elements/Button/Button.css +5 -6
- package/cjs/components/Select/elements/Target/elements/Button/Button.js +28 -32
- package/cjs/components/Select/elements/Target/elements/Button/Button.js.map +1 -1
- package/cjs/components/Select/elements/Target/elements/Button/Button.styles.js +2 -8
- package/cjs/components/Select/elements/Target/elements/Button/Button.styles.js.map +1 -1
- package/cjs/components/Select/elements/Target/elements/Button/{Button.styles_1bweq1y.css → Button.styles_1r519o1.css} +1 -2
- package/cjs/components/Select/elements/Target/elements/Textfield/Textfield.css +5 -5
- package/cjs/components/Select/elements/Target/elements/Textfield/Textfield.js +25 -7
- package/cjs/components/Select/elements/Target/elements/Textfield/Textfield.js.map +1 -1
- package/cjs/components/Select/elements/Target/elements/Textfield/elements/Chip/Chip.css +5 -5
- package/cjs/components/Select/hooks/useKeyboardNavigation.js +2 -2
- package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/Select/utils/getButtonLabel.js +47 -0
- package/cjs/components/Select/utils/getButtonLabel.js.map +1 -0
- package/cjs/components/Slider/Slider.css +5 -5
- package/cjs/components/Slider/components/Double/Double.css +5 -5
- package/cjs/components/TextField/ui/TextFieldChip/TextFieldChip.css +5 -5
- package/cjs/index.css +10 -11
- package/es/components/Chip/Chip.css +5 -5
- package/es/components/Chip/Chip.styles.js +1 -1
- package/es/components/Chip/Chip.styles.js.map +1 -1
- package/es/components/Chip/{Chip.styles_1l2rsrr.css → Chip.styles_1mwwhiw.css} +1 -1
- package/es/components/Combobox/Combobox.css +5 -5
- package/es/components/Combobox/ui/ComboboxChip/ComboboxChip.css +5 -5
- package/es/components/Combobox/ui/ComboboxTarget/ComboboxTarget.css +5 -5
- package/es/components/Pagination/Pagination.css +10 -11
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +10 -11
- package/es/components/Range/Range.css +5 -5
- package/es/components/Select/Select.css +10 -11
- package/es/components/Select/Select.js +10 -6
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/Select.styles.js +2 -0
- package/es/components/Select/Select.styles.js.map +1 -1
- package/es/components/Select/elements/Inner/Inner.css +10 -11
- package/es/components/Select/elements/Inner/Inner.js +7 -2
- package/es/components/Select/elements/Inner/Inner.js.map +1 -1
- package/es/components/Select/elements/Inner/elements/Item/Item.css +10 -11
- package/es/components/Select/elements/Inner/elements/Item/Item.js +17 -6
- package/es/components/Select/elements/Inner/elements/Item/Item.js.map +1 -1
- package/es/components/Select/elements/Target/Target.css +10 -11
- package/es/components/Select/elements/Target/Target.js +9 -3
- package/es/components/Select/elements/Target/Target.js.map +1 -1
- package/es/components/Select/elements/Target/elements/Button/Button.css +5 -6
- package/es/components/Select/elements/Target/elements/Button/Button.js +29 -33
- package/es/components/Select/elements/Target/elements/Button/Button.js.map +1 -1
- package/es/components/Select/elements/Target/elements/Button/Button.styles.js +3 -8
- package/es/components/Select/elements/Target/elements/Button/Button.styles.js.map +1 -1
- package/es/components/Select/elements/Target/elements/Button/{Button.styles_1bweq1y.css → Button.styles_1r519o1.css} +1 -2
- package/es/components/Select/elements/Target/elements/Textfield/Textfield.css +5 -5
- package/es/components/Select/elements/Target/elements/Textfield/Textfield.js +25 -7
- package/es/components/Select/elements/Target/elements/Textfield/Textfield.js.map +1 -1
- package/es/components/Select/elements/Target/elements/Textfield/elements/Chip/Chip.css +5 -5
- package/es/components/Select/hooks/useKeyboardNavigation.js +2 -2
- package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/Select/utils/getButtonLabel.js +43 -0
- package/es/components/Select/utils/getButtonLabel.js.map +1 -0
- package/es/components/Slider/Slider.css +5 -5
- package/es/components/Slider/components/Double/Double.css +5 -5
- package/es/components/TextField/ui/TextFieldChip/TextFieldChip.css +5 -5
- package/es/index.css +10 -11
- package/package.json +2 -2
- package/styled-components/cjs/components/Chip/Chip.styles.js +1 -1
- package/styled-components/cjs/components/Select/Select.js +20 -16
- package/styled-components/cjs/components/Select/elements/Inner/Inner.js +7 -2
- package/styled-components/cjs/components/Select/elements/Inner/elements/Item/Item.js +16 -5
- package/styled-components/cjs/components/Select/elements/Target/Target.js +9 -3
- package/styled-components/cjs/components/Select/elements/Target/elements/Button/Button.js +28 -31
- package/styled-components/cjs/components/Select/elements/Target/elements/Button/Button.styles.js +3 -6
- package/styled-components/cjs/components/Select/elements/Target/elements/Textfield/Textfield.js +25 -7
- package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +2 -2
- package/styled-components/cjs/components/Select/utils/getButtonLabel.js +43 -0
- package/styled-components/cjs/components/Select/utils/index.js +8 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Select/Select.stories.tsx +2 -2
- package/styled-components/es/components/Chip/Chip.styles.js +1 -1
- package/styled-components/es/components/Select/Select.js +10 -6
- package/styled-components/es/components/Select/elements/Inner/Inner.js +7 -2
- package/styled-components/es/components/Select/elements/Inner/elements/Item/Item.js +16 -5
- package/styled-components/es/components/Select/elements/Target/Target.js +9 -3
- package/styled-components/es/components/Select/elements/Target/elements/Button/Button.js +30 -33
- package/styled-components/es/components/Select/elements/Target/elements/Button/Button.styles.js +2 -5
- package/styled-components/es/components/Select/elements/Target/elements/Textfield/Textfield.js +25 -7
- package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +2 -2
- package/styled-components/es/components/Select/utils/getButtonLabel.js +37 -0
- package/styled-components/es/components/Select/utils/index.js +2 -1
- package/styled-components/es/examples/plasma_b2c/components/Select/Select.stories.tsx +2 -2
- package/types/components/Chip/Chip.styles.d.ts.map +1 -1
- package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +12 -8
- package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/Select.types.d.ts +20 -8
- package/types/components/Select/Select.types.d.ts.map +1 -1
- package/types/components/Select/elements/Inner/Inner.d.ts.map +1 -1
- package/types/components/Select/elements/Inner/elements/Item/Item.d.ts.map +1 -1
- package/types/components/Select/elements/Inner/elements/Item/Item.types.d.ts +37 -1
- package/types/components/Select/elements/Inner/elements/Item/Item.types.d.ts.map +1 -1
- package/types/components/Select/elements/Target/Target.d.ts.map +1 -1
- package/types/components/Select/elements/Target/Target.types.d.ts +5 -3
- package/types/components/Select/elements/Target/Target.types.d.ts.map +1 -1
- package/types/components/Select/elements/Target/elements/Button/Button.d.ts.map +1 -1
- package/types/components/Select/elements/Target/elements/Button/Button.styles.d.ts +0 -1
- package/types/components/Select/elements/Target/elements/Button/Button.styles.d.ts.map +1 -1
- package/types/components/Select/elements/Target/elements/Button/Button.types.d.ts +1 -1
- package/types/components/Select/elements/Target/elements/Button/Button.types.d.ts.map +1 -1
- package/types/components/Select/elements/Target/elements/Textfield/Textfield.d.ts.map +1 -1
- package/types/components/Select/elements/Target/elements/Textfield/Textfield.types.d.ts +1 -1
- package/types/components/Select/elements/Target/elements/Textfield/Textfield.types.d.ts.map +1 -1
- package/types/components/Select/utils/getButtonLabel.d.ts +3 -0
- package/types/components/Select/utils/getButtonLabel.d.ts.map +1 -0
- package/types/components/Select/utils/index.d.ts +1 -0
- package/types/components/Select/utils/index.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Select/Select.d.ts +12 -8
- package/types/examples/plasma_b2c/components/Select/Select.d.ts.map +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/elements/Target/elements/Textfield/Textfield.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { TextfieldProps, GetLabelProps } from './Textfield.types';\nimport { Chip } from './elements/Chip/Chip';\nimport {\n StyledButton,\n StyledArrow,\n Wrapper,\n ChipWrapper,\n TextfieldWrapper,\n IconArrowWrapper,\n Label,\n Placeholder,\n InnerLabel,\n InnerLabelWrapper,\n ContentLeftWrapper,\n Value,\n} from './Textfield.styles';\n\nconst getLabel = ({\n value,\n isTargetAmount,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n focusedChipIndex,\n labelPlacement,\n size,\n}: GetLabelProps) => {\n if (isEmpty(value)) {\n if (!label || labelPlacement === 'outer') {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n\n return <Label>{label}</Label>;\n }\n\n if (Array.isArray(value) && isTargetAmount) {\n return <Chip text={`Выбрано: ${value.length}`} isTargetAmount={isTargetAmount} />;\n }\n\n if (Array.isArray(value)) {\n return value.map((currentValue, index) => (\n <Chip\n text={valueToItemMap.get(currentValue)!.label}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n e.stopPropagation();\n onChipClick(currentValue);\n }}\n focused={focusedChipIndex === index}\n />\n ));\n }\n\n if (!label || labelPlacement === 'outer') {\n return <Value>{valueToItemMap.get(value)!.label}</Value>;\n }\n\n return (\n <InnerLabelWrapper>\n {size !== 'xs' && <InnerLabel>{label}</InnerLabel>}\n <Value>{valueToItemMap.get(value)!.label}</Value>\n </InnerLabelWrapper>\n );\n};\n\nexport const Textfield: React.FC<TextfieldProps> = ({\n opened,\n value,\n isTargetAmount,\n multiselect,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n onKeyDown,\n focusedChipIndex,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const iconSize = size === 'xs' ? 'xs' : 's';\n\n return (\n <TextfieldWrapper opened={opened} value={value}>\n <StyledButton\n stretching=\"filled\"\n className={cx(\n classes.textfieldTarget,\n opened || focusedChipIndex !== null ? classes.selectWithoutBoxShadow : undefined,\n )}\n onKeyDown={onKeyDown}\n disabled={disabled}\n >\n <Wrapper>\n {contentLeft && (!multiselect || isEmpty(value)) && (\n <ContentLeftWrapper>{contentLeft}</ContentLeftWrapper>\n )}\n\n <ChipWrapper>\n {getLabel({\n value,\n isTargetAmount,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n focusedChipIndex,\n labelPlacement,\n size,\n })}\n </ChipWrapper>\n\n <IconArrowWrapper>\n <StyledArrow\n size={iconSize}\n color=\"inherit\"\n className={cx(classes.selectTargetArrow, withArrowInverse)}\n />\n </IconArrowWrapper>\n </Wrapper>\n </StyledButton>\n </TextfieldWrapper>\n );\n};\n"],"names":["getLabel","_ref","value","isTargetAmount","valueToItemMap","onChipClick","label","placeholder","focusedChipIndex","labelPlacement","size","isEmpty","React","createElement","Placeholder","Label","Array","isArray","Chip","text","concat","length","map","currentValue","index","get","onClick","e","stopPropagation","focused","Value","InnerLabelWrapper","InnerLabel","Textfield","_ref2","opened","multiselect","onKeyDown","contentLeft","disabled","withArrowInverse","classes","arrowInverse","undefined","iconSize","TextfieldWrapper","StyledButton","stretching","className","cx","textfieldTarget","selectWithoutBoxShadow","Wrapper","ContentLeftWrapper","ChipWrapper","IconArrowWrapper","StyledArrow","color","selectTargetArrow"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/elements/Target/elements/Textfield/Textfield.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { TextfieldProps, GetTextfieldLabelProps } from './Textfield.types';\nimport { Chip } from './elements/Chip/Chip';\nimport {\n StyledButton,\n StyledArrow,\n Wrapper,\n ChipWrapper,\n TextfieldWrapper,\n IconArrowWrapper,\n Label,\n Placeholder,\n InnerLabel,\n InnerLabelWrapper,\n ContentLeftWrapper,\n Value,\n} from './Textfield.styles';\n\nconst getLabel = ({\n value,\n isTargetAmount,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n focusedChipIndex,\n labelPlacement,\n size,\n renderValue,\n}: GetTextfieldLabelProps) => {\n if (isEmpty(value)) {\n if (!label || labelPlacement === 'outer') {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n\n return <Label>{label}</Label>;\n }\n\n if (Array.isArray(value) && isTargetAmount) {\n return <Chip text={`Выбрано: ${value.length}`} isTargetAmount={isTargetAmount} />;\n }\n\n if (Array.isArray(value)) {\n return value.map((currentValue, index) => {\n const itemLabel = valueToItemMap.get(currentValue)!.label;\n\n return (\n <Chip\n text={renderValue ? renderValue(currentValue, itemLabel) : itemLabel}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n e.stopPropagation();\n onChipClick(currentValue);\n }}\n focused={focusedChipIndex === index}\n />\n );\n });\n }\n\n const itemLabel = valueToItemMap.get(value)!.label;\n\n if (!label || labelPlacement === 'outer') {\n return <Value>{renderValue ? renderValue(value, itemLabel) : itemLabel}</Value>;\n }\n\n return (\n <InnerLabelWrapper>\n {size !== 'xs' && <InnerLabel>{label}</InnerLabel>}\n <Value>{renderValue ? renderValue(value, itemLabel) : itemLabel}</Value>\n </InnerLabelWrapper>\n );\n};\n\nexport const Textfield: React.FC<TextfieldProps> = ({\n opened,\n value,\n isTargetAmount,\n multiselect,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n onKeyDown,\n focusedChipIndex,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const iconSize = size === 'xs' ? 'xs' : 's';\n\n const getActiveDescendant = () => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n return focusedToValueMap?.get(focusedPathAsString)?.value.toString();\n };\n\n return (\n <TextfieldWrapper opened={opened} value={value}>\n <StyledButton\n stretching=\"filled\"\n className={cx(\n classes.textfieldTarget,\n opened || focusedChipIndex !== null ? classes.selectWithoutBoxShadow : undefined,\n )}\n onKeyDown={onKeyDown}\n disabled={disabled}\n role=\"combobox\"\n aria-controls=\"tree_level_1\"\n aria-expanded={opened}\n aria-activedescendant={getActiveDescendant()}\n >\n <Wrapper>\n {contentLeft && (!multiselect || isEmpty(value)) && (\n <ContentLeftWrapper>{contentLeft}</ContentLeftWrapper>\n )}\n\n <ChipWrapper>\n {getLabel({\n value,\n isTargetAmount,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n focusedChipIndex,\n labelPlacement,\n size,\n renderValue,\n })}\n </ChipWrapper>\n\n <IconArrowWrapper>\n <StyledArrow\n size={iconSize}\n color=\"inherit\"\n className={cx(classes.selectTargetArrow, withArrowInverse)}\n />\n </IconArrowWrapper>\n </Wrapper>\n </StyledButton>\n </TextfieldWrapper>\n );\n};\n"],"names":["getLabel","_ref","value","isTargetAmount","valueToItemMap","onChipClick","label","placeholder","focusedChipIndex","labelPlacement","size","renderValue","isEmpty","React","createElement","Placeholder","Label","Array","isArray","Chip","text","concat","length","map","currentValue","index","itemLabel","get","onClick","e","stopPropagation","focused","Value","InnerLabelWrapper","InnerLabel","Textfield","_ref2","opened","multiselect","onKeyDown","contentLeft","disabled","focusedPath","focusedToValueMap","withArrowInverse","classes","arrowInverse","undefined","iconSize","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","replace","toString","TextfieldWrapper","StyledButton","stretching","className","cx","textfieldTarget","selectWithoutBoxShadow","role","Wrapper","ContentLeftWrapper","ChipWrapper","IconArrowWrapper","StyledArrow","color","selectTargetArrow"],"mappings":"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"}
|
@@ -12,10 +12,10 @@
|
|
12
12
|
|
13
13
|
.base_3kce4h_bvcavwi__c6ad5ca5.base_3kce4h_chipPilled__c6ad5ca5{border-radius:var(--plasma-chip-pilled-border-radius);}
|
14
14
|
|
15
|
-
.
|
16
|
-
.
|
17
|
-
.
|
18
|
-
.
|
19
|
-
.
|
15
|
+
.Chip_styles_1mwwhiw_bol5daj__07da4d18{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}
|
16
|
+
.Chip_styles_1mwwhiw_sj20on5__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-left-content-margin-left);margin-right:var(--plasma-chip-left-content-margin-right);}
|
17
|
+
.Chip_styles_1mwwhiw_s1ror4o9__07da4d18{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
18
|
+
.Chip_styles_1mwwhiw_swddmyi__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-right-content-margin-left);margin-right:var(--plasma-chip-right-content-margin-right);}
|
19
|
+
.Chip_styles_1mwwhiw_s1pcflhj__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-clear-content-margin-left);margin-right:var(--plasma-chip-clear-content-margin-right);color:var(--plasma-chip-close-icon-color);}
|
20
20
|
|
21
21
|
.Chip_styles_k6znfr_s19m2v6c__1d0542ff{--plasma-chip-color:var(--plasma-select-chip-color);--plasma-chip-color-hover:var(--plasma-select-chip-color);--plasma-chip-color-active:var(--plasma-select-chip-color);--plasma-chip-background:var(--plasma-select-chip-background);--plasma-chip-background-hover:var(--plasma-select-chip-background-hover);--plasma-chip-background-active:var(--plasma-select-chip-background-active);--plasma-chip-border-radius:var(--plasma-select-chip-border-radius);--plasma-chip-height:var(--plasma-select-chip-height);--plasma-chip-padding-right:var(--plasma-select-chip-padding-right);--plasma-chip-padding-left:var(--plasma-select-chip-padding-left);--plasma-chip-font-family:var(--plasma-select-font-family);--plasma-chip-font-size:var(--plasma-select-font-size);--plasma-chip-font-style:var(--plasma-select-font-style);--plasma-chip-font-weight:var(--plasma-select-font-weight);--plasma-chip-letter-spacing:var(--plasma-select-font-letter-spacing);--plasma-chip-lineheight:var(--plasma-select-font-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-select-chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-select-chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-select-chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-select-chip-color);--plasma-chip-focus-color:var(--surface-accent);position:relative;}.Chip_styles_k6znfr_s19m2v6c__1d0542ff::before{content:'';position:absolute;top:calc(var(--plasma-select-focus-offset) * -1);left:calc(var(--plasma-select-focus-offset) * -1);right:calc(var(--plasma-select-focus-offset) * -1);bottom:calc(var(--plasma-select-focus-offset) * -1);z-index:1;display:block;box-sizing:content-box;border:0.125rem solid transparent;border-radius:calc(var(--plasma-select-chip-border-radius) + var(--plasma-select-focus-offset));-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.Chip_styles_k6znfr_s19m2v6c__1d0542ff.Chip_styles_k6znfr_selectChipIsFocused__1d0542ff:before{outline:none;box-shadow:0 0 0 0.0625rem var(--surface-accent);}
|
@@ -160,7 +160,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
|
|
160
160
|
{
|
161
161
|
event.preventDefault();
|
162
162
|
var _currentItem2 = getFurtherPath(focusedPath, focusedToValueMap);
|
163
|
-
if (!_currentItem2 || _currentItem2 !== null && _currentItem2 !== void 0 && _currentItem2.isDisabled) {
|
163
|
+
if (!_currentItem2 || _currentItem2 !== null && _currentItem2 !== void 0 && _currentItem2.isDisabled || _currentItem2 !== null && _currentItem2 !== void 0 && _currentItem2.disabled) {
|
164
164
|
break;
|
165
165
|
}
|
166
166
|
handlePressDown(_currentItem2);
|
@@ -175,7 +175,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
|
|
175
175
|
});
|
176
176
|
}
|
177
177
|
var _currentItem3 = getFurtherPath(focusedPath, focusedToValueMap);
|
178
|
-
if (_currentItem3 !== null && _currentItem3 !== void 0 && _currentItem3.isDisabled) {
|
178
|
+
if (_currentItem3 !== null && _currentItem3 !== void 0 && _currentItem3.isDisabled || _currentItem3 !== null && _currentItem3 !== void 0 && _currentItem3.disabled) {
|
179
179
|
break;
|
180
180
|
}
|
181
181
|
if (!path[0]) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/Select/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { KeyboardEvent, Dispatch } from 'react';\nimport React from 'react';\n\nimport {\n PathAction,\n PathState,\n FocusedPathAction,\n FocusedPathState,\n FocusedChipIndexState,\n FocusedChipIndexAction,\n} from '../reducers';\nimport { SelectProps } from '../Select.types';\nimport type { ItemOptionTransformed } from '../elements/Inner/elements/Item/Item.types';\n\nimport { PathMapType, FocusedToValueMapType, ValueToItemMapType } from './usePathMaps';\n\nconst JUMP_SIZE = 10;\n\nexport const keys = {\n Enter: 'Enter',\n Space: 'Space',\n Tab: 'Tab',\n Escape: 'Escape',\n Backspace: 'Backspace',\n ArrowLeft: 'ArrowLeft',\n ArrowRight: 'ArrowRight',\n ArrowUp: 'ArrowUp',\n ArrowDown: 'ArrowDown',\n Home: 'Home',\n End: 'End',\n PageUp: 'PageUp',\n PageDown: 'PageDown',\n};\n\nconst getFurtherPath = (focusedPath: FocusedPathState, focusedToValueMap: FocusedToValueMapType) => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n\n return focusedToValueMap.get(focusedPathAsString);\n};\n\ninterface Props {\n focusedPath: FocusedPathState;\n dispatchFocusedPath: Dispatch<FocusedPathAction>;\n path: PathState;\n dispatchPath: Dispatch<PathAction>;\n pathMap: PathMapType;\n focusedToValueMap: FocusedToValueMapType;\n handleToggle: (opened: boolean) => void;\n handlePressDown: (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => void;\n focusedChipIndex: FocusedChipIndexState;\n dispatchFocusedChipIndex: Dispatch<FocusedChipIndexAction>;\n value: SelectProps['value'];\n valueToItemMap: ValueToItemMapType;\n multiselect: boolean;\n isTargetAmount: SelectProps['isTargetAmount'];\n}\n\ninterface ReturnedProps {\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\n}\n\nexport const useKeyNavigation = ({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n value,\n valueToItemMap,\n multiselect,\n isTargetAmount,\n}: Props): ReturnedProps => {\n const currentLength: number = pathMap.get(path?.[path.length - 1]) || 0;\n const currentIndex: number = focusedPath?.[focusedPath.length - 1] || 0;\n\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.code) {\n case keys.ArrowUp: {\n if (focusedPath.length) {\n if (currentIndex > 0) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowDown: {\n if (focusedPath.length) {\n if (currentIndex + 1 < currentLength) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowLeft: {\n if (path[0]) {\n if (focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n dispatchFocusedPath({ type: 'return_prev_focus' });\n }\n\n if (focusedPath.length === 1) {\n handleToggle(false);\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n }\n\n break;\n }\n\n case keys.ArrowRight: {\n if (path[0]) {\n if (!focusedPath.length) {\n break;\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (currentItem?.items) {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveRight', total: value.length });\n }\n\n break;\n }\n\n case keys.Backspace: {\n if (!multiselect) break;\n\n if (focusedChipIndex !== null) {\n const currentItem = valueToItemMap.get(value[focusedChipIndex])!;\n\n handlePressDown(currentItem);\n\n if (value.length === 1) {\n dispatchFocusedChipIndex({ type: 'reset' });\n\n break;\n }\n\n if (focusedChipIndex === value.length - 1) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n\n break;\n }\n }\n\n break;\n }\n\n case keys.Space: {\n event.preventDefault();\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (!currentItem || currentItem?.isDisabled) {\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Enter: {\n event.preventDefault();\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap)!;\n\n if (currentItem?.isDisabled) {\n break;\n }\n\n if (!path[0]) {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n break;\n }\n\n if (currentItem?.items) {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Tab:\n case keys.Escape: {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n handleToggle(false);\n\n break;\n }\n\n case keys.Home: {\n if (path[0]) {\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.End: {\n if (path[0]) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'change_last_focus', value: (pathMap.get('root') || 0) - 1 });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.PageUp: {\n if (!path[0]) {\n break;\n }\n\n if (currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - JUMP_SIZE });\n }\n\n break;\n }\n\n case keys.PageDown: {\n if (!path[0]) {\n break;\n }\n\n if (currentLength - currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + JUMP_SIZE });\n }\n\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["JUMP_SIZE","keys","Enter","Space","Tab","Escape","Backspace","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown","getFurtherPath","focusedPath","focusedToValueMap","focusedPathAsString","reduce","acc","n","concat","replace","get","useKeyNavigation","_ref","dispatchFocusedPath","path","dispatchPath","pathMap","handleToggle","handlePressDown","focusedChipIndex","dispatchFocusedChipIndex","value","valueToItemMap","multiselect","isTargetAmount","currentLength","length","currentIndex","onKeyDown","event","code","type","Array","isArray","currentItem","items","toString","total","preventDefault","isDisabled"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/Select/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { KeyboardEvent, Dispatch } from 'react';\nimport React from 'react';\n\nimport {\n PathAction,\n PathState,\n FocusedPathAction,\n FocusedPathState,\n FocusedChipIndexState,\n FocusedChipIndexAction,\n} from '../reducers';\nimport { SelectProps } from '../Select.types';\nimport type { ItemOptionTransformed } from '../elements/Inner/elements/Item/Item.types';\n\nimport { PathMapType, FocusedToValueMapType, ValueToItemMapType } from './usePathMaps';\n\nconst JUMP_SIZE = 10;\n\nexport const keys = {\n Enter: 'Enter',\n Space: 'Space',\n Tab: 'Tab',\n Escape: 'Escape',\n Backspace: 'Backspace',\n ArrowLeft: 'ArrowLeft',\n ArrowRight: 'ArrowRight',\n ArrowUp: 'ArrowUp',\n ArrowDown: 'ArrowDown',\n Home: 'Home',\n End: 'End',\n PageUp: 'PageUp',\n PageDown: 'PageDown',\n};\n\nconst getFurtherPath = (focusedPath: FocusedPathState, focusedToValueMap: FocusedToValueMapType) => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n\n return focusedToValueMap.get(focusedPathAsString);\n};\n\ninterface Props {\n focusedPath: FocusedPathState;\n dispatchFocusedPath: Dispatch<FocusedPathAction>;\n path: PathState;\n dispatchPath: Dispatch<PathAction>;\n pathMap: PathMapType;\n focusedToValueMap: FocusedToValueMapType;\n handleToggle: (opened: boolean) => void;\n handlePressDown: (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => void;\n focusedChipIndex: FocusedChipIndexState;\n dispatchFocusedChipIndex: Dispatch<FocusedChipIndexAction>;\n value: SelectProps['value'];\n valueToItemMap: ValueToItemMapType;\n multiselect: boolean;\n isTargetAmount: SelectProps['isTargetAmount'];\n}\n\ninterface ReturnedProps {\n onKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;\n}\n\nexport const useKeyNavigation = ({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n value,\n valueToItemMap,\n multiselect,\n isTargetAmount,\n}: Props): ReturnedProps => {\n const currentLength: number = pathMap.get(path?.[path.length - 1]) || 0;\n const currentIndex: number = focusedPath?.[focusedPath.length - 1] || 0;\n\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.code) {\n case keys.ArrowUp: {\n if (focusedPath.length) {\n if (currentIndex > 0) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowDown: {\n if (focusedPath.length) {\n if (currentIndex + 1 < currentLength) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + 1 });\n }\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n handleToggle(true);\n }\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n break;\n }\n\n case keys.ArrowLeft: {\n if (path[0]) {\n if (focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n dispatchFocusedPath({ type: 'return_prev_focus' });\n }\n\n if (focusedPath.length === 1) {\n handleToggle(false);\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n }\n\n break;\n }\n\n case keys.ArrowRight: {\n if (path[0]) {\n if (!focusedPath.length) {\n break;\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (currentItem?.items) {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n }\n } else if (Array.isArray(value) && !isTargetAmount) {\n dispatchFocusedChipIndex({ type: 'moveRight', total: value.length });\n }\n\n break;\n }\n\n case keys.Backspace: {\n if (!multiselect) break;\n\n if (focusedChipIndex !== null) {\n const currentItem = valueToItemMap.get(value[focusedChipIndex])!;\n\n handlePressDown(currentItem);\n\n if (value.length === 1) {\n dispatchFocusedChipIndex({ type: 'reset' });\n\n break;\n }\n\n if (focusedChipIndex === value.length - 1) {\n dispatchFocusedChipIndex({ type: 'moveLeft' });\n\n break;\n }\n }\n\n break;\n }\n\n case keys.Space: {\n event.preventDefault();\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap);\n\n if (!currentItem || currentItem?.isDisabled || currentItem?.disabled) {\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Enter: {\n event.preventDefault();\n\n if (Array.isArray(value)) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n\n const currentItem = getFurtherPath(focusedPath, focusedToValueMap)!;\n\n if (currentItem?.isDisabled || currentItem?.disabled) {\n break;\n }\n\n if (!path[0]) {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n break;\n }\n\n if (currentItem?.items) {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n break;\n }\n\n handlePressDown(currentItem);\n\n break;\n }\n\n case keys.Tab:\n case keys.Escape: {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n handleToggle(false);\n\n break;\n }\n\n case keys.Home: {\n if (path[0]) {\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.End: {\n if (path[0]) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'change_last_focus', value: (pathMap.get('root') || 0) - 1 });\n\n handleToggle(true);\n }\n\n break;\n }\n\n case keys.PageUp: {\n if (!path[0]) {\n break;\n }\n\n if (currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex - JUMP_SIZE });\n }\n\n break;\n }\n\n case keys.PageDown: {\n if (!path[0]) {\n break;\n }\n\n if (currentLength - currentIndex <= JUMP_SIZE) {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentLength - 1 });\n } else {\n dispatchFocusedPath({ type: 'change_last_focus', value: currentIndex + JUMP_SIZE });\n }\n\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["JUMP_SIZE","keys","Enter","Space","Tab","Escape","Backspace","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown","getFurtherPath","focusedPath","focusedToValueMap","focusedPathAsString","reduce","acc","n","concat","replace","get","useKeyNavigation","_ref","dispatchFocusedPath","path","dispatchPath","pathMap","handleToggle","handlePressDown","focusedChipIndex","dispatchFocusedChipIndex","value","valueToItemMap","multiselect","isTargetAmount","currentLength","length","currentIndex","onKeyDown","event","code","type","Array","isArray","currentItem","items","toString","total","preventDefault","isDisabled","disabled"],"mappings":"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"}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
import 'react';
|
2
|
+
import '../../../utils/react.js';
|
3
|
+
import { isEmpty } from '../../../utils/isEmpty.js';
|
4
|
+
|
5
|
+
var getLabel = function getLabel(_ref) {
|
6
|
+
var renderValue = _ref.renderValue,
|
7
|
+
value = _ref.value,
|
8
|
+
valueToItemMap = _ref.valueToItemMap;
|
9
|
+
var _ref2 = valueToItemMap.get(value.toString()),
|
10
|
+
label = _ref2.label;
|
11
|
+
return renderValue ? renderValue(value, label) : label;
|
12
|
+
};
|
13
|
+
var getButtonLabel = function getButtonLabel(_ref3) {
|
14
|
+
var value = _ref3.value,
|
15
|
+
label = _ref3.label,
|
16
|
+
isTargetAmount = _ref3.isTargetAmount,
|
17
|
+
multiselect = _ref3.multiselect,
|
18
|
+
valueToItemMap = _ref3.valueToItemMap,
|
19
|
+
renderValue = _ref3.renderValue;
|
20
|
+
if (isEmpty(value)) {
|
21
|
+
return label;
|
22
|
+
}
|
23
|
+
if (multiselect && isTargetAmount) {
|
24
|
+
return "\u0412\u044B\u0431\u0440\u0430\u043D\u043E: ".concat(value.length);
|
25
|
+
}
|
26
|
+
if (multiselect && Array.isArray(value)) {
|
27
|
+
return value.map(function (itemValue) {
|
28
|
+
return getLabel({
|
29
|
+
renderValue: renderValue,
|
30
|
+
value: itemValue,
|
31
|
+
valueToItemMap: valueToItemMap
|
32
|
+
});
|
33
|
+
}).join(', ');
|
34
|
+
}
|
35
|
+
return getLabel({
|
36
|
+
renderValue: renderValue,
|
37
|
+
value: value,
|
38
|
+
valueToItemMap: valueToItemMap
|
39
|
+
});
|
40
|
+
};
|
41
|
+
|
42
|
+
export { getButtonLabel };
|
43
|
+
//# sourceMappingURL=getButtonLabel.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"getButtonLabel.js","sources":["../../../../src/components/Select/utils/getButtonLabel.ts"],"sourcesContent":["import { GetButtonLabelProps } from '../elements/Target/elements/Button/Button.types';\nimport { isEmpty } from '../../../utils';\n\nconst getLabel = ({ renderValue, value, valueToItemMap }: GetButtonLabelProps) => {\n const { label } = valueToItemMap.get(value.toString())!;\n\n return renderValue ? renderValue(value as string, label) : label;\n};\n\nexport const getButtonLabel = ({\n value,\n label,\n isTargetAmount,\n multiselect,\n valueToItemMap,\n renderValue,\n}: GetButtonLabelProps) => {\n if (isEmpty(value)) {\n return label;\n }\n\n if (multiselect && isTargetAmount) {\n return `Выбрано: ${value.length}`;\n }\n\n if (multiselect && Array.isArray(value)) {\n return value\n .map((itemValue) =>\n getLabel({\n renderValue,\n value: itemValue,\n valueToItemMap,\n }),\n )\n .join(', ');\n }\n\n return getLabel({\n renderValue,\n value,\n valueToItemMap,\n });\n};\n"],"names":["getLabel","_ref","renderValue","value","valueToItemMap","_ref2","get","toString","label","getButtonLabel","_ref3","isTargetAmount","multiselect","isEmpty","concat","length","Array","isArray","map","itemValue","join"],"mappings":";;;;AAGA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAAoE;AAAA,EAAA,IAA9DC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAEC,cAAc,GAAAH,IAAA,CAAdG,cAAc,CAAA;EAClD,IAAAC,KAAA,GAAkBD,cAAc,CAACE,GAAG,CAACH,KAAK,CAACI,QAAQ,EAAE,CAAC;IAA9CC,KAAK,GAAAH,KAAA,CAALG,KAAK,CAAA;EAEb,OAAON,WAAW,GAAGA,WAAW,CAACC,KAAK,EAAYK,KAAK,CAAC,GAAGA,KAAK,CAAA;AACpE,CAAC,CAAA;IAEYC,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA,EAOA;AAAA,EAAA,IANvBP,KAAK,GAAAO,KAAA,CAALP,KAAK;IACLK,KAAK,GAAAE,KAAA,CAALF,KAAK;IACLG,cAAc,GAAAD,KAAA,CAAdC,cAAc;IACdC,WAAW,GAAAF,KAAA,CAAXE,WAAW;IACXR,cAAc,GAAAM,KAAA,CAAdN,cAAc;IACdF,WAAW,GAAAQ,KAAA,CAAXR,WAAW,CAAA;AAEX,EAAA,IAAIW,OAAO,CAACV,KAAK,CAAC,EAAE;AAChB,IAAA,OAAOK,KAAK,CAAA;AAChB,GAAA;EAEA,IAAII,WAAW,IAAID,cAAc,EAAE;AAC/B,IAAA,OAAA,8CAAA,CAAAG,MAAA,CAAmBX,KAAK,CAACY,MAAM,CAAA,CAAA;AACnC,GAAA;EAEA,IAAIH,WAAW,IAAII,KAAK,CAACC,OAAO,CAACd,KAAK,CAAC,EAAE;AACrC,IAAA,OAAOA,KAAK,CACPe,GAAG,CAAC,UAACC,SAAS,EAAA;AAAA,MAAA,OACXnB,QAAQ,CAAC;AACLE,QAAAA,WAAW,EAAXA,WAAW;AACXC,QAAAA,KAAK,EAAEgB,SAAS;AAChBf,QAAAA,cAAc,EAAdA,cAAAA;AACJ,OAAC,CAAC,CAAA;AAAA,KACN,CAAC,CACAgB,IAAI,CAAC,IAAI,CAAC,CAAA;AACnB,GAAA;AAEA,EAAA,OAAOpB,QAAQ,CAAC;AACZE,IAAAA,WAAW,EAAXA,WAAW;AACXC,IAAAA,KAAK,EAALA,KAAK;AACLC,IAAAA,cAAc,EAAdA,cAAAA;AACJ,GAAC,CAAC,CAAA;AACN;;;;"}
|
@@ -52,11 +52,11 @@
|
|
52
52
|
|
53
53
|
.base_3kce4h_bvcavwi__c6ad5ca5.base_3kce4h_chipPilled__c6ad5ca5{border-radius:var(--plasma-chip-pilled-border-radius);}
|
54
54
|
|
55
|
-
.
|
56
|
-
.
|
57
|
-
.
|
58
|
-
.
|
59
|
-
.
|
55
|
+
.Chip_styles_1mwwhiw_bol5daj__07da4d18{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}
|
56
|
+
.Chip_styles_1mwwhiw_sj20on5__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-left-content-margin-left);margin-right:var(--plasma-chip-left-content-margin-right);}
|
57
|
+
.Chip_styles_1mwwhiw_s1ror4o9__07da4d18{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
58
|
+
.Chip_styles_1mwwhiw_swddmyi__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-right-content-margin-left);margin-right:var(--plasma-chip-right-content-margin-right);}
|
59
|
+
.Chip_styles_1mwwhiw_s1pcflhj__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-clear-content-margin-left);margin-right:var(--plasma-chip-clear-content-margin-right);color:var(--plasma-chip-close-icon-color);}
|
60
60
|
|
61
61
|
.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding-right:var(--plasma-textfield__chip-padding-right);--plasma-chip-padding-left:var(--plasma-textfield__chip-padding-left);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-scale-hover:var(--plasma-textfield__chip-scale-hover);--plasma-chip-scale-active:var(--plasma-textfield__chip-scale-active);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);-webkit-scroll-snap-align:center;-moz-scroll-snap-align:center;-ms-scroll-snap-align:center;scroll-snap-align:center;-webkit-scroll-snap-stop:normal;-moz-scroll-snap-stop:normal;-ms-scroll-snap-stop:normal;scroll-snap-stop:normal;position:relative;}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676.TextFieldChip_styles_1y8n7la_focusVisible__8f291676:focus::before,.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
|
62
62
|
|
@@ -45,11 +45,11 @@
|
|
45
45
|
|
46
46
|
.base_3kce4h_bvcavwi__c6ad5ca5.base_3kce4h_chipPilled__c6ad5ca5{border-radius:var(--plasma-chip-pilled-border-radius);}
|
47
47
|
|
48
|
-
.
|
49
|
-
.
|
50
|
-
.
|
51
|
-
.
|
52
|
-
.
|
48
|
+
.Chip_styles_1mwwhiw_bol5daj__07da4d18{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}
|
49
|
+
.Chip_styles_1mwwhiw_sj20on5__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-left-content-margin-left);margin-right:var(--plasma-chip-left-content-margin-right);}
|
50
|
+
.Chip_styles_1mwwhiw_s1ror4o9__07da4d18{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
51
|
+
.Chip_styles_1mwwhiw_swddmyi__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-right-content-margin-left);margin-right:var(--plasma-chip-right-content-margin-right);}
|
52
|
+
.Chip_styles_1mwwhiw_s1pcflhj__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-clear-content-margin-left);margin-right:var(--plasma-chip-clear-content-margin-right);color:var(--plasma-chip-close-icon-color);}
|
53
53
|
|
54
54
|
.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding-right:var(--plasma-textfield__chip-padding-right);--plasma-chip-padding-left:var(--plasma-textfield__chip-padding-left);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-scale-hover:var(--plasma-textfield__chip-scale-hover);--plasma-chip-scale-active:var(--plasma-textfield__chip-scale-active);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);-webkit-scroll-snap-align:center;-moz-scroll-snap-align:center;-ms-scroll-snap-align:center;scroll-snap-align:center;-webkit-scroll-snap-stop:normal;-moz-scroll-snap-stop:normal;-ms-scroll-snap-stop:normal;scroll-snap-stop:normal;position:relative;}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676.TextFieldChip_styles_1y8n7la_focusVisible__8f291676:focus::before,.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
|
55
55
|
|
@@ -12,10 +12,10 @@
|
|
12
12
|
|
13
13
|
.base_3kce4h_bvcavwi__c6ad5ca5.base_3kce4h_chipPilled__c6ad5ca5{border-radius:var(--plasma-chip-pilled-border-radius);}
|
14
14
|
|
15
|
-
.
|
16
|
-
.
|
17
|
-
.
|
18
|
-
.
|
19
|
-
.
|
15
|
+
.Chip_styles_1mwwhiw_bol5daj__07da4d18{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}
|
16
|
+
.Chip_styles_1mwwhiw_sj20on5__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-left-content-margin-left);margin-right:var(--plasma-chip-left-content-margin-right);}
|
17
|
+
.Chip_styles_1mwwhiw_s1ror4o9__07da4d18{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
18
|
+
.Chip_styles_1mwwhiw_swddmyi__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-right-content-margin-left);margin-right:var(--plasma-chip-right-content-margin-right);}
|
19
|
+
.Chip_styles_1mwwhiw_s1pcflhj__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-clear-content-margin-left);margin-right:var(--plasma-chip-clear-content-margin-right);color:var(--plasma-chip-close-icon-color);}
|
20
20
|
|
21
21
|
.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding-right:var(--plasma-textfield__chip-padding-right);--plasma-chip-padding-left:var(--plasma-textfield__chip-padding-left);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-scale-hover:var(--plasma-textfield__chip-scale-hover);--plasma-chip-scale-active:var(--plasma-textfield__chip-scale-active);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);-webkit-scroll-snap-align:center;-moz-scroll-snap-align:center;-ms-scroll-snap-align:center;scroll-snap-align:center;-webkit-scroll-snap-stop:normal;-moz-scroll-snap-stop:normal;-ms-scroll-snap-stop:normal;scroll-snap-stop:normal;position:relative;}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676.TextFieldChip_styles_1y8n7la_focusVisible__8f291676:focus::before,.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_1y8n7la_s32p7ut__8f291676[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
|
package/es/index.css
CHANGED
@@ -47,11 +47,11 @@
|
|
47
47
|
|
48
48
|
.base_3kce4h_bvcavwi__c6ad5ca5.base_3kce4h_chipPilled__c6ad5ca5{border-radius:var(--plasma-chip-pilled-border-radius);}
|
49
49
|
|
50
|
-
.
|
51
|
-
.
|
52
|
-
.
|
53
|
-
.
|
54
|
-
.
|
50
|
+
.Chip_styles_1mwwhiw_bol5daj__07da4d18{position:relative;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);}
|
51
|
+
.Chip_styles_1mwwhiw_sj20on5__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-left-content-margin-left);margin-right:var(--plasma-chip-left-content-margin-right);}
|
52
|
+
.Chip_styles_1mwwhiw_s1ror4o9__07da4d18{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
53
|
+
.Chip_styles_1mwwhiw_swddmyi__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-right-content-margin-left);margin-right:var(--plasma-chip-right-content-margin-right);}
|
54
|
+
.Chip_styles_1mwwhiw_s1pcflhj__07da4d18{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:var(--plasma-chip-clear-content-margin-left);margin-right:var(--plasma-chip-clear-content-margin-right);color:var(--plasma-chip-close-icon-color);}
|
55
55
|
|
56
56
|
.Cell_styles_ygfo1w_b1wikybr__e668c908.Cell_styles_ygfo1w_b1wikybr__e668c908.Cell_styles_ygfo1w_cellStretchingFixed__e668c908{width:var(--plasma-cell-width);}.Cell_styles_ygfo1w_b1wikybr__e668c908.Cell_styles_ygfo1w_b1wikybr__e668c908.Cell_styles_ygfo1w_cellStretchingFilled__e668c908{width:100%;}.Cell_styles_ygfo1w_b1wikybr__e668c908.Cell_styles_ygfo1w_b1wikybr__e668c908.Cell_styles_ygfo1w_cellStretchingAuto__e668c908{width:auto;}
|
57
57
|
|
@@ -512,12 +512,11 @@
|
|
512
512
|
.Item_styles_545sy7_s1vkcneb__b99228e8{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
513
513
|
.Item_styles_545sy7_w1nwrhpk__b99228e8{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-select-item-height);margin:0;box-sizing:content-box;padding:var(--w1nwrhpk-0);font-family:var(--plasma-select-font-family);font-size:var(--plasma-select-font-size);font-style:var(--plasma-select-font-style);font-weight:var(--plasma-select-font-weight);-webkit-letter-spacing:var(--plasma-select-font-letter-spacing);-moz-letter-spacing:var(--plasma-select-font-letter-spacing);-ms-letter-spacing:var(--plasma-select-font-letter-spacing);letter-spacing:var(--plasma-select-font-letter-spacing);line-height:var(--plasma-select-font-line-height);background:var(--plasma-colors-transparent);color:var(--text-primary);border-radius:var(--plasma-select-item-border-radius);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}.Item_styles_545sy7_w1nwrhpk__b99228e8:hover:not(.Item_styles_545sy7_dropdownItemIsDisabled__b99228e8){cursor:pointer;background:var(--surface-transparent-secondary);}.Item_styles_545sy7_w1nwrhpk__b99228e8.Item_styles_545sy7_dropdownItemIsActive__b99228e8{background:var(--surface-transparent-secondary);}.Item_styles_545sy7_w1nwrhpk__b99228e8.Item_styles_545sy7_dropdownItemIsDisabled__b99228e8{opacity:0.4;cursor:not-allowed;}.Item_styles_545sy7_w1nwrhpk__b99228e8:focus{outline:none;}.Item_styles_545sy7_w1nwrhpk__b99228e8::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-select-item-border-radius);-webkit-transition:none;transition:none;pointer-events:none;}.Item_styles_545sy7_w1nwrhpk__b99228e8.Item_styles_545sy7_dropdownItemIsFocused__b99228e8:before{outline:none;box-shadow:0 0 0 0.0625rem var(--surface-accent);}
|
514
514
|
|
515
|
-
.
|
516
|
-
.
|
517
|
-
.
|
518
|
-
.
|
519
|
-
.
|
520
|
-
.Button_styles_1bweq1y_l1gczdbd__7958f749{width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
515
|
+
.Button_styles_1r519o1_s1n7gats__2349e77a{--plasma-button-color:var(--plasma-select-target-button-color);--plasma-button-color-hover:var(--plasma-select-target-button-color-hover);--plasma-button-color-active:var(--plasma-select-target-button-color-active);--plasma-button-background-color:var(--plasma-select-target-button-background-color);--plasma-button-background-color-hover:var(--plasma-select-target-button-background-color-hover);--plasma-button-background-color-active:var(--plasma-select-target-button-background-color-active);--plasma-button-right-content-margin:var(--plasma-select-target-button-arrow-margin);--plasma-button-height:var(--plasma-select-target-height);--plasma-button-width:100%;--plasma-button-padding:var(--plasma-select-target-button-padding);--plasma-button-radius:var(--plasma-select-border-radius);--plasma-button-font-family:var(--plasma-select-font-family);--plasma-button-font-size:var(--plasma-select-font-size);--plasma-button-font-style:var(--plasma-select-font-style);--plasma-button-font-weight:600;--plasma-button-letter-spacing:var(--plasma-select-font-letter-spacing);--plasma-button-line-height:var(--plasma-select-font-line-height);--plasma-button-disabled-opacity:0.4;--plasma-button-focus-color:var(--surface-accent);}
|
516
|
+
.Button_styles_1r519o1_isdqa5a__2349e77a{line-height:0;color:var(--plasma-select-target-button-arrow-color);}.Button_styles_1r519o1_isdqa5a__2349e77a:hover{color:var(--plasma-select-target-button-arrow-color-hover);}.Button_styles_1r519o1_isdqa5a__2349e77a:active{color:var(--plasma-select-target-button-arrow-color-active);}
|
517
|
+
.Button_styles_1r519o1_s1yfglds__2349e77a{-webkit-transition:color 0.3s ease-in,-webkit-transform 0.15s ease-in;-webkit-transition:color 0.3s ease-in,transform 0.15s ease-in;transition:color 0.3s ease-in,transform 0.15s ease-in;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
|
518
|
+
.Button_styles_1r519o1_brzvbcx__2349e77a{display:inline;}.Button_styles_1r519o1_brzvbcx__2349e77a .Button_styles_1r519o1_selectWithoutBoxShadow__2349e77a::before{box-shadow:none !important;}
|
519
|
+
.Button_styles_1r519o1_logt3wm__2349e77a{display:inline;width:100%;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.Button_styles_1r519o1_logt3wm__2349e77a .Button_styles_1r519o1_arrowInverse__2349e77a{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg);}
|
521
520
|
|
522
521
|
.Chip_styles_k6znfr_s19m2v6c__1d0542ff{--plasma-chip-color:var(--plasma-select-chip-color);--plasma-chip-color-hover:var(--plasma-select-chip-color);--plasma-chip-color-active:var(--plasma-select-chip-color);--plasma-chip-background:var(--plasma-select-chip-background);--plasma-chip-background-hover:var(--plasma-select-chip-background-hover);--plasma-chip-background-active:var(--plasma-select-chip-background-active);--plasma-chip-border-radius:var(--plasma-select-chip-border-radius);--plasma-chip-height:var(--plasma-select-chip-height);--plasma-chip-padding-right:var(--plasma-select-chip-padding-right);--plasma-chip-padding-left:var(--plasma-select-chip-padding-left);--plasma-chip-font-family:var(--plasma-select-font-family);--plasma-chip-font-size:var(--plasma-select-font-size);--plasma-chip-font-style:var(--plasma-select-font-style);--plasma-chip-font-weight:var(--plasma-select-font-weight);--plasma-chip-letter-spacing:var(--plasma-select-font-letter-spacing);--plasma-chip-lineheight:var(--plasma-select-font-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-select-chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-select-chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-select-chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-select-chip-color);--plasma-chip-focus-color:var(--surface-accent);position:relative;}.Chip_styles_k6znfr_s19m2v6c__1d0542ff::before{content:'';position:absolute;top:calc(var(--plasma-select-focus-offset) * -1);left:calc(var(--plasma-select-focus-offset) * -1);right:calc(var(--plasma-select-focus-offset) * -1);bottom:calc(var(--plasma-select-focus-offset) * -1);z-index:1;display:block;box-sizing:content-box;border:0.125rem solid transparent;border-radius:calc(var(--plasma-select-chip-border-radius) + var(--plasma-select-focus-offset));-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.Chip_styles_k6znfr_s19m2v6c__1d0542ff.Chip_styles_k6znfr_selectChipIsFocused__1d0542ff:before{outline:none;box-shadow:0 0 0 0.0625rem var(--surface-accent);}
|
523
522
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@salutejs/plasma-new-hope",
|
3
|
-
"version": "0.88.0-canary.1233.
|
3
|
+
"version": "0.88.0-canary.1233.9437372350.0",
|
4
4
|
"description": "Salute Design System blueprint",
|
5
5
|
"main": "cjs/index.js",
|
6
6
|
"module": "es/index.js",
|
@@ -103,5 +103,5 @@
|
|
103
103
|
"react-popper": "2.3.0",
|
104
104
|
"storeon": "3.1.5"
|
105
105
|
},
|
106
|
-
"gitHead": "
|
106
|
+
"gitHead": "88bce0981cce1a16446b17ea48373d4ee57a4e4e"
|
107
107
|
}
|
@@ -22,4 +22,4 @@ var StyledContentRight = exports.StyledContentRight = /*#__PURE__*/_styledCompon
|
|
22
22
|
})(["display:flex;margin-left:var(", ");margin-right:var(", ");"], _Chip.tokens.rightContentMarginLeft, _Chip.tokens.rightContentMarginRight);
|
23
23
|
var StyledContentClear = exports.StyledContentClear = /*#__PURE__*/_styledComponents["default"].div.withConfig({
|
24
24
|
componentId: "plasma-new-hope__sc-bm1fxi-3"
|
25
|
-
})(["display:flex;margin-left:var(", ");margin-right:var(", ");color:var(", ")
|
25
|
+
})(["display:flex;margin-left:var(", ");margin-right:var(", ");color:var(", ");"], _Chip.tokens.clearContentMarginLeft, _Chip.tokens.clearContentMarginRight, _Chip.tokens.closeIconColor);
|
@@ -8,8 +8,9 @@ exports.selectRoot = exports.selectConfig = exports.Context = void 0;
|
|
8
8
|
var _react = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("react"));
|
9
9
|
var _utils = /*#__PURE__*/require("../../utils");
|
10
10
|
var _hooks = /*#__PURE__*/require("../../hooks");
|
11
|
+
var _utils2 = /*#__PURE__*/require("../Dropdown/utils");
|
11
12
|
var _useKeyboardNavigation = /*#__PURE__*/require("./hooks/useKeyboardNavigation");
|
12
|
-
var
|
13
|
+
var _utils3 = /*#__PURE__*/require("./utils");
|
13
14
|
var _Inner = /*#__PURE__*/require("./elements/Inner/Inner");
|
14
15
|
var _SelectNotFoundContent = /*#__PURE__*/require("./elements/SelectNotFoundContent/SelectNotFoundContent");
|
15
16
|
var _Target = /*#__PURE__*/require("./elements/Target/Target");
|
@@ -19,7 +20,7 @@ var _Select = /*#__PURE__*/require("./Select.styles");
|
|
19
20
|
var _base = /*#__PURE__*/require("./variations/_view/base");
|
20
21
|
var _base2 = /*#__PURE__*/require("./variations/_size/base");
|
21
22
|
var _SelectNotFoundConten;
|
22
|
-
var _excluded = ["value", "onChange", "target", "
|
23
|
+
var _excluded = ["value", "onChange", "target", "separator", "items", "placement", "label", "labelPlacement", "placeholder", "helperText", "isTargetAmount", "disabled", "view", "size", "isOpen", "listOverflow", "listHeight", "listWidth", "status", "contentLeft", "onScrollBottom", "isInfiniteLoading", "notFoundContent", "chipView", "variant", "portal", "renderValue"];
|
23
24
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
24
25
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
25
26
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
@@ -42,10 +43,10 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
42
43
|
onChange = props.onChange,
|
43
44
|
_props$target = props.target,
|
44
45
|
target = _props$target === void 0 ? 'textfield' : _props$target,
|
45
|
-
_props$multiselect = props.multiselect,
|
46
|
-
multiselect = _props$multiselect === void 0 ? false : _props$multiselect,
|
47
46
|
separator = props.separator,
|
48
47
|
items = props.items,
|
48
|
+
_props$placement = props.placement,
|
49
|
+
placement = _props$placement === void 0 ? 'bottom' : _props$placement,
|
49
50
|
label = props.label,
|
50
51
|
_props$labelPlacement = props.labelPlacement,
|
51
52
|
labelPlacement = _props$labelPlacement === void 0 ? 'outer' : _props$labelPlacement,
|
@@ -70,10 +71,11 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
70
71
|
_props$variant = props.variant,
|
71
72
|
variant = _props$variant === void 0 ? 'normal' : _props$variant,
|
72
73
|
portal = props.portal,
|
73
|
-
|
74
|
+
renderValue = props.renderValue,
|
74
75
|
rest = _objectWithoutProperties(props, _excluded);
|
76
|
+
var multiselect = Array.isArray(value);
|
75
77
|
var transformedItems = (0, _react.useMemo)(function () {
|
76
|
-
return (0,
|
78
|
+
return (0, _utils3.initialItemsTransform)(items);
|
77
79
|
}, [items]);
|
78
80
|
var _usePathMaps = (0, _usePathMaps3.usePathMaps)(transformedItems),
|
79
81
|
_usePathMaps2 = _slicedToArray(_usePathMaps, 4),
|
@@ -125,12 +127,12 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
125
127
|
var checkedCopy = new Map(checked);
|
126
128
|
if (!checkedCopy.get(item.value.toString())) {
|
127
129
|
checkedCopy.set(item.value.toString(), true);
|
128
|
-
(0,
|
130
|
+
(0, _utils3.updateDescendants)(item, checkedCopy, true);
|
129
131
|
} else {
|
130
132
|
checkedCopy.set(item.value.toString(), false);
|
131
|
-
(0,
|
133
|
+
(0, _utils3.updateDescendants)(item, checkedCopy, false);
|
132
134
|
}
|
133
|
-
(0,
|
135
|
+
(0, _utils3.updateAncestors)(item, checkedCopy);
|
134
136
|
var newValues = [];
|
135
137
|
valueToItemMap.forEach(function (item, key) {
|
136
138
|
if (checkedCopy.get(key)) {
|
@@ -154,7 +156,7 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
154
156
|
});
|
155
157
|
if (!isCurrentChecked) {
|
156
158
|
checkedCopy.set(item.value, 'done');
|
157
|
-
(0,
|
159
|
+
(0, _utils3.updateSingleAncestors)(item, checkedCopy, 'dot');
|
158
160
|
}
|
159
161
|
onChange(isCurrentChecked ? '' : item.value);
|
160
162
|
}
|
@@ -206,12 +208,12 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
206
208
|
if (multiselect && Array.isArray(value)) {
|
207
209
|
value.forEach(function (val) {
|
208
210
|
checkedCopy.set(val, true);
|
209
|
-
(0,
|
210
|
-
(0,
|
211
|
+
(0, _utils3.updateDescendants)(valueToItemMap.get(val), checkedCopy, true);
|
212
|
+
(0, _utils3.updateAncestors)(valueToItemMap.get(val), checkedCopy);
|
211
213
|
});
|
212
214
|
} else {
|
213
215
|
checkedCopy.set(value, 'done');
|
214
|
-
(0,
|
216
|
+
(0, _utils3.updateSingleAncestors)(valueToItemMap.get(value), checkedCopy, 'dot');
|
215
217
|
}
|
216
218
|
}
|
217
219
|
setChecked(checkedCopy);
|
@@ -219,7 +221,7 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
219
221
|
return /*#__PURE__*/_react["default"].createElement(Root, _extends({
|
220
222
|
ref: ref,
|
221
223
|
size: size,
|
222
|
-
view: (0,
|
224
|
+
view: (0, _utils3.getView)(view, status),
|
223
225
|
chipView: chipView,
|
224
226
|
items: items
|
225
227
|
}, rest), label && labelPlacement === 'outer' && target !== 'button' && /*#__PURE__*/_react["default"].createElement(_Select.OuterLabel, null, label), /*#__PURE__*/_react["default"].createElement(Context.Provider, {
|
@@ -235,9 +237,9 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
235
237
|
}, /*#__PURE__*/_react["default"].createElement(_Select.StyledPopover, {
|
236
238
|
ref: targetRef,
|
237
239
|
isOpen: isCurrentListOpen,
|
240
|
+
placement: (0, _utils2.getPlacements)(placement),
|
238
241
|
usePortal: Boolean(portal),
|
239
242
|
frame: portal,
|
240
|
-
placement: "bottom-start",
|
241
243
|
onToggle: handleToggle,
|
242
244
|
trigger: "click",
|
243
245
|
target: /*#__PURE__*/_react["default"].createElement(_Target.Target, {
|
@@ -247,6 +249,8 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
247
249
|
isTargetAmount: isTargetAmount,
|
248
250
|
multiselect: multiselect,
|
249
251
|
valueToItemMap: valueToItemMap,
|
252
|
+
focusedPath: focusedPath,
|
253
|
+
focusedToValueMap: focusedToValueMap,
|
250
254
|
onChipClick: handleChipClick,
|
251
255
|
label: label,
|
252
256
|
placeholder: placeholder,
|
@@ -256,7 +260,7 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
|
|
256
260
|
size: size,
|
257
261
|
contentLeft: contentLeft,
|
258
262
|
disabled: disabled,
|
259
|
-
|
263
|
+
renderValue: renderValue
|
260
264
|
}),
|
261
265
|
preventOverflow: false,
|
262
266
|
closeOnOverlayClick: true
|
@@ -44,7 +44,11 @@ var Inner = exports.Inner = function Inner(_ref) {
|
|
44
44
|
item: item,
|
45
45
|
path: path,
|
46
46
|
currentLevel: currentLevel,
|
47
|
-
index: index
|
47
|
+
index: index,
|
48
|
+
ariaControls: listId,
|
49
|
+
ariaExpanded: isCurrentListOpen,
|
50
|
+
ariaLevel: nextLevel,
|
51
|
+
ariaLabel: item.label
|
48
52
|
}),
|
49
53
|
onToggle: handleToggle,
|
50
54
|
isFocusTrapped: false,
|
@@ -70,6 +74,7 @@ var Inner = exports.Inner = function Inner(_ref) {
|
|
70
74
|
item: item,
|
71
75
|
path: path,
|
72
76
|
index: index,
|
73
|
-
currentLevel: currentLevel
|
77
|
+
currentLevel: currentLevel,
|
78
|
+
itemRole: "option"
|
74
79
|
});
|
75
80
|
};
|
@@ -19,9 +19,15 @@ var Item = exports.Item = function Item(_ref) {
|
|
19
19
|
var item = _ref.item,
|
20
20
|
path = _ref.path,
|
21
21
|
currentLevel = _ref.currentLevel,
|
22
|
-
index = _ref.index
|
22
|
+
index = _ref.index,
|
23
|
+
ariaControls = _ref.ariaControls,
|
24
|
+
ariaExpanded = _ref.ariaExpanded,
|
25
|
+
ariaLevel = _ref.ariaLevel,
|
26
|
+
ariaLabel = _ref.ariaLabel,
|
27
|
+
itemRole = _ref.itemRole;
|
23
28
|
var value = item.value,
|
24
29
|
label = item.label,
|
30
|
+
disabled = item.disabled,
|
25
31
|
isDisabled = item.isDisabled,
|
26
32
|
contentLeft = item.contentLeft,
|
27
33
|
contentRight = item.contentRight;
|
@@ -34,7 +40,7 @@ var Item = exports.Item = function Item(_ref) {
|
|
34
40
|
handleCheckboxChange = _useContext.handleCheckboxChange,
|
35
41
|
handleItemClick = _useContext.handleItemClick,
|
36
42
|
variant = _useContext.variant;
|
37
|
-
var isDisabledClassName = isDisabled ? _Select.classes.dropdownItemIsDisabled : undefined;
|
43
|
+
var isDisabledClassName = disabled || isDisabled ? _Select.classes.dropdownItemIsDisabled : undefined;
|
38
44
|
var focusedClass = currentLevel === focusedPath.length - 1 && index === (focusedPath === null || focusedPath === void 0 ? void 0 : focusedPath[currentLevel]) ? _Select.classes.dropdownItemIsFocused : undefined;
|
39
45
|
var activeClass = value === (path === null || path === void 0 ? void 0 : path[currentLevel + 1]) ? _Select.classes.dropdownItemIsActive : undefined;
|
40
46
|
(0, _react.useEffect)(function () {
|
@@ -47,12 +53,12 @@ var Item = exports.Item = function Item(_ref) {
|
|
47
53
|
}
|
48
54
|
}, [focusedClass]);
|
49
55
|
var handleChange = function handleChange(e) {
|
50
|
-
if (isDisabled) return;
|
56
|
+
if (disabled || isDisabled) return;
|
51
57
|
e.stopPropagation();
|
52
58
|
handleCheckboxChange(item);
|
53
59
|
};
|
54
60
|
var handleClick = function handleClick(e) {
|
55
|
-
if (isDisabled) return;
|
61
|
+
if (disabled || isDisabled) return;
|
56
62
|
handleItemClick(item, e);
|
57
63
|
};
|
58
64
|
return /*#__PURE__*/_react["default"].createElement(_Item.Wrapper, {
|
@@ -60,7 +66,12 @@ var Item = exports.Item = function Item(_ref) {
|
|
60
66
|
id: value.toString(),
|
61
67
|
ref: ref,
|
62
68
|
onClick: handleClick,
|
63
|
-
variant: variant
|
69
|
+
variant: variant,
|
70
|
+
"aria-controls": ariaControls,
|
71
|
+
"aria-expanded": ariaExpanded,
|
72
|
+
"aria-level": ariaLevel,
|
73
|
+
"aria-label": ariaLabel,
|
74
|
+
role: itemRole
|
64
75
|
}, /*#__PURE__*/_react["default"].createElement(_Item.IconWrapper, {
|
65
76
|
variant: variant
|
66
77
|
}, multiselect && /*#__PURE__*/_react["default"].createElement("span", {
|