@salutejs/plasma-new-hope 0.122.0-canary.1349.10334518391.0 → 0.122.0-canary.1349.10339496739.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +1 -1
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/components/Select/Select.js +2 -1
  4. package/cjs/components/Select/Select.js.map +1 -1
  5. package/cjs/components/Select/ui/Inner/ui/Item/Item.js +3 -2
  6. package/cjs/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  7. package/cjs/components/Select/ui/Target/ui/Button/Button.js +3 -1
  8. package/cjs/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  9. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  10. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  11. package/cjs/components/Select/utils/getButtonLabel.js +5 -5
  12. package/cjs/components/Select/utils/getButtonLabel.js.map +1 -1
  13. package/emotion/cjs/components/Autocomplete/Autocomplete.js +1 -1
  14. package/emotion/cjs/components/Select/Select.js +2 -1
  15. package/emotion/cjs/components/Select/ui/Inner/ui/Item/Item.js +3 -2
  16. package/emotion/cjs/components/Select/ui/Target/ui/Button/Button.js +3 -1
  17. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  18. package/emotion/cjs/components/Select/utils/getButtonLabel.js +5 -5
  19. package/emotion/es/components/Autocomplete/Autocomplete.js +1 -1
  20. package/emotion/es/components/Select/Select.js +2 -1
  21. package/emotion/es/components/Select/ui/Inner/ui/Item/Item.js +3 -2
  22. package/emotion/es/components/Select/ui/Target/ui/Button/Button.js +3 -1
  23. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  24. package/emotion/es/components/Select/utils/getButtonLabel.js +5 -5
  25. package/es/components/Autocomplete/Autocomplete.js +1 -1
  26. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  27. package/es/components/Select/Select.js +2 -1
  28. package/es/components/Select/Select.js.map +1 -1
  29. package/es/components/Select/ui/Inner/ui/Item/Item.js +3 -2
  30. package/es/components/Select/ui/Inner/ui/Item/Item.js.map +1 -1
  31. package/es/components/Select/ui/Target/ui/Button/Button.js +3 -1
  32. package/es/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  33. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  34. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  35. package/es/components/Select/utils/getButtonLabel.js +5 -5
  36. package/es/components/Select/utils/getButtonLabel.js.map +1 -1
  37. package/package.json +2 -2
  38. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +1 -1
  39. package/styled-components/cjs/components/Select/Select.js +2 -1
  40. package/styled-components/cjs/components/Select/ui/Inner/ui/Item/Item.js +3 -2
  41. package/styled-components/cjs/components/Select/ui/Target/ui/Button/Button.js +3 -1
  42. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  43. package/styled-components/cjs/components/Select/utils/getButtonLabel.js +5 -5
  44. package/styled-components/es/components/Autocomplete/Autocomplete.js +1 -1
  45. package/styled-components/es/components/Select/Select.js +2 -1
  46. package/styled-components/es/components/Select/ui/Inner/ui/Item/Item.js +3 -2
  47. package/styled-components/es/components/Select/ui/Target/ui/Button/Button.js +3 -1
  48. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  49. package/styled-components/es/components/Select/utils/getButtonLabel.js +5 -5
  50. package/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  51. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +12 -12
  52. package/types/components/Select/Select.d.ts.map +1 -1
  53. package/types/components/Select/Select.types.d.ts +8 -7
  54. package/types/components/Select/Select.types.d.ts.map +1 -1
  55. package/types/components/Select/ui/Inner/ui/Item/Item.d.ts.map +1 -1
  56. package/types/components/Select/ui/Target/ui/Button/Button.d.ts.map +1 -1
  57. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
  58. package/types/examples/plasma_b2c/components/Select/Select.d.ts +12 -12
  59. package/types/examples/plasma_web/components/Select/Select.d.ts +12 -12
@@ -61,7 +61,7 @@ var autocompleteRoot = function autocompleteRoot(Root) {
61
61
  isOpen = _useState4[0],
62
62
  setIsOpen = _useState4[1];
63
63
  var listId = plasmaCore.safeUseId();
64
- var value = outerValue || innerValue;
64
+ var value = outerValue !== null && outerValue !== void 0 ? outerValue : innerValue;
65
65
  var helperTextId = plasmaCore.safeUseId();
66
66
  var targetRef = useOutsideClick.useOutsideClick(function () {
67
67
  setIsOpen(false);
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","sources":["../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { useDidMountEffect, useOutsideClick } from '../../hooks';\nimport { RootProps } from '../../engines';\nimport { getPlacements } from '../../utils';\n\nimport { focusedReducer } from './reducers/focusedReducer';\nimport { SuggestionItem, StyledTextField } from './ui';\nimport { StyledPopover, Ul, LeftHelper, base, InfiniteLoaderWrapper } from './Autocomplete.styles';\nimport type { AutocompleteProps, SuggestionItemType } from './Autocomplete.types';\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\n\n/**\n * Компонент Autocomplete. Поле ввода с подсказками в выпадающем списке.\n */\nexport const autocompleteRoot = (Root: RootProps<HTMLInputElement, AutocompleteProps>) =>\n forwardRef<HTMLInputElement, AutocompleteProps>(\n (\n {\n value: outerValue,\n onChange,\n suggestions,\n view,\n size,\n labelPlacement,\n disabled,\n readOnly,\n label,\n leftHelper,\n contentLeft,\n contentRight,\n textBefore,\n textAfter,\n onScroll,\n listMaxHeight,\n listWidth,\n portal,\n filter,\n onSuggestionSelect,\n threshold = 2,\n renderList,\n renderListEnd,\n onSearch,\n ...rest\n },\n ref,\n ) => {\n const [focused, dispatchFocused] = useReducer(focusedReducer, null);\n const [innerValue, setInnerValue] = useState<string | number>('');\n const [isOpen, setIsOpen] = useState(false);\n\n const listId = safeUseId();\n const value = outerValue || innerValue;\n const helperTextId = safeUseId();\n\n const targetRef = useOutsideClick<HTMLDivElement>(() => {\n setIsOpen(false);\n });\n\n const handleFocus = () => {\n if (value.toString().length >= threshold) {\n setIsOpen(true);\n }\n };\n\n const handleItemClick = (e: SuggestionItemType) => {\n setInnerValue(e.label);\n\n if (onSuggestionSelect) {\n onSuggestionSelect(e);\n }\n\n setIsOpen(false);\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const currentValue = e.target.value;\n\n setInnerValue(currentValue);\n\n if (onChange) {\n onChange(e);\n }\n\n if (currentValue.toString().length >= threshold) {\n setIsOpen(true);\n } else {\n setIsOpen(false);\n }\n };\n\n const defaultFilterCallback = ({ label }: { label: string }) => {\n return label.toLowerCase().includes(value.toString().toLowerCase());\n };\n\n const finalResults = suggestions?.filter(filter || defaultFilterCallback) || [];\n\n const { onKeyDown } = useKeyNavigation({\n isOpen,\n setIsOpen,\n focused,\n dispatchFocused,\n finalResults,\n handleItemClick,\n });\n\n useDidMountEffect(() => {\n dispatchFocused({ type: 'reset' });\n }, [value]);\n\n return (\n <Root view={view} size={size} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <StyledPopover\n isOpen={isOpen}\n offset={[0, 0]}\n placement={getPlacements('bottom')}\n isFocusTrapped={false}\n usePortal={Boolean(portal)}\n frame={portal}\n target={\n <StyledTextField\n value={value}\n onChange={handleChange}\n onSearch={focused === null ? onSearch : undefined}\n ref={ref}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n contentLeft={contentLeft}\n contentRight={contentRight}\n textBefore={textBefore}\n textAfter={textAfter}\n onFocus={handleFocus}\n onKeyDown={onKeyDown}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={listId}\n aria-expanded={isOpen}\n aria-activedescendant={`${listId}/${focused}`}\n aria-describedby={helperTextId}\n {...rest}\n />\n }\n preventOverflow={false}\n ref={targetRef}\n listWidth={listWidth}\n >\n {(renderList && renderList(finalResults)) ||\n (Boolean(finalResults.length) && (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n id={listId}\n role=\"listbox\"\n aria-label={label}\n onScroll={onScroll}\n listMaxHeight={listMaxHeight}\n >\n {finalResults.map((suggestion, index) => (\n <SuggestionItem\n key={index}\n item={suggestion}\n onClick={handleItemClick}\n id={`${listId}/${index}`}\n focused={focused === index}\n />\n ))}\n\n {renderListEnd && (\n <InfiniteLoaderWrapper>{renderListEnd()}</InfiniteLoaderWrapper>\n )}\n </Ul>\n </Root>\n ))}\n </StyledPopover>\n\n {/* TODO: Дублируем хелпер для корректного позиционирования списка подсказок */}\n {leftHelper && (\n <LeftHelper id={helperTextId} disabled={disabled} readOnly={readOnly}>\n {leftHelper}\n </LeftHelper>\n )}\n </Root>\n );\n },\n );\n\nexport const autocompleteConfig = {\n name: 'Autocomplete',\n tag: 'div',\n layout: autocompleteRoot,\n base,\n defaults: {\n view: 'default',\n size: 'l',\n labelPlacement: 'outer',\n },\n variations: {\n view: {\n css: '',\n },\n },\n};\n"],"names":["autocompleteRoot","Root","forwardRef","_ref","ref","outerValue","value","onChange","suggestions","view","size","labelPlacement","disabled","readOnly","label","leftHelper","contentLeft","contentRight","textBefore","textAfter","onScroll","listMaxHeight","listWidth","portal","filter","onSuggestionSelect","_ref$threshold","threshold","renderList","renderListEnd","onSearch","rest","_objectWithoutProperties","_excluded","_useReducer","useReducer","focusedReducer","_useReducer2","_slicedToArray","focused","dispatchFocused","_useState","useState","_useState2","innerValue","setInnerValue","_useState3","_useState4","isOpen","setIsOpen","listId","safeUseId","helperTextId","targetRef","useOutsideClick","handleFocus","toString","length","handleItemClick","e","handleChange","currentValue","target","defaultFilterCallback","_ref2","toLowerCase","includes","finalResults","_useKeyNavigation","useKeyNavigation","onKeyDown","useDidMountEffect","type","React","createElement","StyledPopover","offset","placement","getPlacements","isFocusTrapped","usePortal","Boolean","frame","StyledTextField","_extends","undefined","onFocus","role","concat","preventOverflow","Ul","id","map","suggestion","index","SuggestionItem","key","item","onClick","InfiniteLoaderWrapper","LeftHelper","autocompleteConfig","name","tag","layout","base","defaults","variations","css"],"mappings":"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"}
1
+ {"version":3,"file":"Autocomplete.js","sources":["../../../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer } from 'react';\nimport { safeUseId } from '@salutejs/plasma-core';\n\nimport { useDidMountEffect, useOutsideClick } from '../../hooks';\nimport { RootProps } from '../../engines';\nimport { getPlacements } from '../../utils';\n\nimport { focusedReducer } from './reducers/focusedReducer';\nimport { SuggestionItem, StyledTextField } from './ui';\nimport { StyledPopover, Ul, LeftHelper, base, InfiniteLoaderWrapper } from './Autocomplete.styles';\nimport type { AutocompleteProps, SuggestionItemType } from './Autocomplete.types';\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\n\n/**\n * Компонент Autocomplete. Поле ввода с подсказками в выпадающем списке.\n */\nexport const autocompleteRoot = (Root: RootProps<HTMLInputElement, AutocompleteProps>) =>\n forwardRef<HTMLInputElement, AutocompleteProps>(\n (\n {\n value: outerValue,\n onChange,\n suggestions,\n view,\n size,\n labelPlacement,\n disabled,\n readOnly,\n label,\n leftHelper,\n contentLeft,\n contentRight,\n textBefore,\n textAfter,\n onScroll,\n listMaxHeight,\n listWidth,\n portal,\n filter,\n onSuggestionSelect,\n threshold = 2,\n renderList,\n renderListEnd,\n onSearch,\n ...rest\n },\n ref,\n ) => {\n const [focused, dispatchFocused] = useReducer(focusedReducer, null);\n const [innerValue, setInnerValue] = useState<string | number>('');\n const [isOpen, setIsOpen] = useState(false);\n\n const listId = safeUseId();\n const value = outerValue ?? innerValue;\n\n const helperTextId = safeUseId();\n\n const targetRef = useOutsideClick<HTMLDivElement>(() => {\n setIsOpen(false);\n });\n\n const handleFocus = () => {\n if (value.toString().length >= threshold) {\n setIsOpen(true);\n }\n };\n\n const handleItemClick = (e: SuggestionItemType) => {\n setInnerValue(e.label);\n\n if (onSuggestionSelect) {\n onSuggestionSelect(e);\n }\n\n setIsOpen(false);\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const currentValue = e.target.value;\n\n setInnerValue(currentValue);\n\n if (onChange) {\n onChange(e);\n }\n\n if (currentValue.toString().length >= threshold) {\n setIsOpen(true);\n } else {\n setIsOpen(false);\n }\n };\n\n const defaultFilterCallback = ({ label }: { label: string }) => {\n return label.toLowerCase().includes(value.toString().toLowerCase());\n };\n\n const finalResults = suggestions?.filter(filter || defaultFilterCallback) || [];\n\n const { onKeyDown } = useKeyNavigation({\n isOpen,\n setIsOpen,\n focused,\n dispatchFocused,\n finalResults,\n handleItemClick,\n });\n\n useDidMountEffect(() => {\n dispatchFocused({ type: 'reset' });\n }, [value]);\n\n return (\n <Root view={view} size={size} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <StyledPopover\n isOpen={isOpen}\n offset={[0, 0]}\n placement={getPlacements('bottom')}\n isFocusTrapped={false}\n usePortal={Boolean(portal)}\n frame={portal}\n target={\n <StyledTextField\n value={value}\n onChange={handleChange}\n onSearch={focused === null ? onSearch : undefined}\n ref={ref}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n contentLeft={contentLeft}\n contentRight={contentRight}\n textBefore={textBefore}\n textAfter={textAfter}\n onFocus={handleFocus}\n onKeyDown={onKeyDown}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={listId}\n aria-expanded={isOpen}\n aria-activedescendant={`${listId}/${focused}`}\n aria-describedby={helperTextId}\n {...rest}\n />\n }\n preventOverflow={false}\n ref={targetRef}\n listWidth={listWidth}\n >\n {(renderList && renderList(finalResults)) ||\n (Boolean(finalResults.length) && (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n id={listId}\n role=\"listbox\"\n aria-label={label}\n onScroll={onScroll}\n listMaxHeight={listMaxHeight}\n >\n {finalResults.map((suggestion, index) => (\n <SuggestionItem\n key={index}\n item={suggestion}\n onClick={handleItemClick}\n id={`${listId}/${index}`}\n focused={focused === index}\n />\n ))}\n\n {renderListEnd && (\n <InfiniteLoaderWrapper>{renderListEnd()}</InfiniteLoaderWrapper>\n )}\n </Ul>\n </Root>\n ))}\n </StyledPopover>\n\n {/* TODO: Дублируем хелпер для корректного позиционирования списка подсказок */}\n {leftHelper && (\n <LeftHelper id={helperTextId} disabled={disabled} readOnly={readOnly}>\n {leftHelper}\n </LeftHelper>\n )}\n </Root>\n );\n },\n );\n\nexport const autocompleteConfig = {\n name: 'Autocomplete',\n tag: 'div',\n layout: autocompleteRoot,\n base,\n defaults: {\n view: 'default',\n size: 'l',\n labelPlacement: 'outer',\n },\n variations: {\n view: {\n css: '',\n },\n },\n};\n"],"names":["autocompleteRoot","Root","forwardRef","_ref","ref","outerValue","value","onChange","suggestions","view","size","labelPlacement","disabled","readOnly","label","leftHelper","contentLeft","contentRight","textBefore","textAfter","onScroll","listMaxHeight","listWidth","portal","filter","onSuggestionSelect","_ref$threshold","threshold","renderList","renderListEnd","onSearch","rest","_objectWithoutProperties","_excluded","_useReducer","useReducer","focusedReducer","_useReducer2","_slicedToArray","focused","dispatchFocused","_useState","useState","_useState2","innerValue","setInnerValue","_useState3","_useState4","isOpen","setIsOpen","listId","safeUseId","helperTextId","targetRef","useOutsideClick","handleFocus","toString","length","handleItemClick","e","handleChange","currentValue","target","defaultFilterCallback","_ref2","toLowerCase","includes","finalResults","_useKeyNavigation","useKeyNavigation","onKeyDown","useDidMountEffect","type","React","createElement","StyledPopover","offset","placement","getPlacements","isFocusTrapped","usePortal","Boolean","frame","StyledTextField","_extends","undefined","onFocus","role","concat","preventOverflow","Ul","id","map","suggestion","index","SuggestionItem","key","item","onClick","InfiniteLoaderWrapper","LeftHelper","autocompleteConfig","name","tag","layout","base","defaults","variations","css"],"mappings":"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"}
@@ -246,7 +246,8 @@ var selectRoot = function selectRoot(Root) {
246
246
  handleCheckboxChange: handleCheckboxChange,
247
247
  handleItemClick: handleItemClick,
248
248
  variant: variant,
249
- renderItem: renderItem
249
+ renderItem: renderItem,
250
+ valueToItemMap: valueToItemMap
250
251
  }
251
252
  }, /*#__PURE__*/React.createElement(Select_styles.StyledPopover, {
252
253
  ref: targetRef,
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty, getPlacements } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer, focusedChipIndexReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { StyledPopover, Ul, base, OuterLabel, HelperText } from './Select.styles';\nimport type { ItemContext, MergedSelectProps } from './Select.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\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 = 'outer',\n placeholder,\n helperText,\n disabled = false,\n view,\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 ...rest\n } = props;\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n outerValue || props.multiselect ? [] : '',\n );\n\n const value = outerValue || internalValue;\n\n const onChange = (e: string | number | Array<string | number>) => {\n if (outerOnChange) {\n outerOnChange(e as any);\n }\n\n setInternalValue(e);\n };\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [focusedChipIndex, dispatchFocusedChipIndex] = useReducer(focusedChipIndexReducer, null);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const targetRef = useOutsideClick<HTMLDivElement>(() => {\n if (focusedChipIndex != null) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n });\n\n const handleToggle = (opened: boolean) => {\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (props.multiselect) {\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 (onChange) {\n onChange(newValues);\n }\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 } else {\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n\n if (onItemSelect) {\n onItemSelect(item);\n }\n }\n };\n\n const handleChipClick = (currentValue: string) => {\n handleCheckboxChange(valueToItemMap.get(currentValue)!);\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 value,\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n valueToItemMap,\n multiselect: props.multiselect,\n isTargetAmount: props.isTargetAmount,\n });\n\n const isCurrentListOpen = Boolean(path[0]);\n\n // В данном эффекте мы следим за изменениями value и вносим коррективы в дерево чекбоксов.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value as string, 'done');\n updateSingleAncestors(valueToItemMap.get(value as string)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root ref={ref} size={size} view={status ? getView(status) : view} chipView={chipView} {...(rest as any)}>\n {label && labelPlacement === 'outer' && target !== 'button-like' && <OuterLabel>{label}</OuterLabel>}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n }}\n >\n <StyledPopover\n ref={targetRef}\n isOpen={isCurrentListOpen}\n placement={getPlacements(placement)}\n usePortal={Boolean(portal)}\n frame={portal}\n onToggle={handleToggle}\n trigger=\"click\"\n target={\n <Target\n opened={isCurrentListOpen}\n value={value}\n valueToItemMap={valueToItemMap}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n onChipClick={handleChipClick}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n focusedChipIndex={focusedChipIndex}\n labelPlacement={labelPlacement}\n selectProps={props}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n separator={separator}\n />\n }\n preventOverflow={false}\n closeOnOverlayClick\n >\n {items && (\n <Root size={size} {...(rest as any)}>\n <Ul\n role=\"tree\"\n id=\"tree_level_1\"\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\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 )}\n </StyledPopover>\n </Context.Provider>\n {helperText && target === 'textfield-like' && <HelperText>{helperText}</HelperText>}\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n chipView: 'default',\n size: 'm',\n },\n};\n"],"names":["Context","createContext","selectRoot","Root","forwardRef","props","ref","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","_props$labelPlacement","labelPlacement","placeholder","helperText","_props$disabled","disabled","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","rest","_objectWithoutProperties","_excluded","_useState","useState","multiselect","_useState2","_slicedToArray","internalValue","setInternalValue","e","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useReducer5","focusedChipIndexReducer","_useReducer6","focusedChipIndex","dispatchFocusedChipIndex","_useState3","_useState4","checked","setChecked","targetRef","useOutsideClick","type","handleToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","isEmpty","stopPropagation","isCurrentChecked","_","updateSingleAncestors","handleChipClick","currentValue","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","isTargetAmount","onKeyDown","isCurrentListOpen","Boolean","useLayoutEffect","Array","isArray","val","React","createElement","_extends","getView","OuterLabel","Provider","StyledPopover","isOpen","getPlacements","usePortal","frame","onToggle","trigger","Target","onChipClick","selectProps","preventOverflow","closeOnOverlayClick","Ul","role","id","onScroll","map","index","Inner","concat","currentLevel","HelperText","selectConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","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 } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty, getPlacements } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer, focusedChipIndexReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { StyledPopover, Ul, base, OuterLabel, HelperText } from './Select.styles';\nimport type { ItemContext, MergedSelectProps } from './Select.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\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 = 'outer',\n placeholder,\n helperText,\n disabled = false,\n view,\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 ...rest\n } = props;\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n outerValue || props.multiselect ? [] : '',\n );\n\n const value = outerValue || internalValue;\n\n const onChange = (e: string | number | Array<string | number>) => {\n if (outerOnChange) {\n outerOnChange(e as any);\n }\n\n setInternalValue(e);\n };\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [focusedChipIndex, dispatchFocusedChipIndex] = useReducer(focusedChipIndexReducer, null);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const targetRef = useOutsideClick<HTMLDivElement>(() => {\n if (focusedChipIndex != null) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n });\n\n const handleToggle = (opened: boolean) => {\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (props.multiselect) {\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 (onChange) {\n onChange(newValues);\n }\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 } else {\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n\n if (onItemSelect) {\n onItemSelect(item);\n }\n }\n };\n\n const handleChipClick = (currentValue: string) => {\n handleCheckboxChange(valueToItemMap.get(currentValue)!);\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 value,\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n valueToItemMap,\n multiselect: props.multiselect,\n isTargetAmount: props.isTargetAmount,\n });\n\n const isCurrentListOpen = Boolean(path[0]);\n\n // В данном эффекте мы следим за изменениями value и вносим коррективы в дерево чекбоксов.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value as string, 'done');\n updateSingleAncestors(valueToItemMap.get(value as string)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root ref={ref} size={size} view={status ? getView(status) : view} chipView={chipView} {...(rest as any)}>\n {label && labelPlacement === 'outer' && target !== 'button-like' && <OuterLabel>{label}</OuterLabel>}\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 }}\n >\n <StyledPopover\n ref={targetRef}\n isOpen={isCurrentListOpen}\n placement={getPlacements(placement)}\n usePortal={Boolean(portal)}\n frame={portal}\n onToggle={handleToggle}\n trigger=\"click\"\n target={\n <Target\n opened={isCurrentListOpen}\n value={value}\n valueToItemMap={valueToItemMap}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n onChipClick={handleChipClick}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n focusedChipIndex={focusedChipIndex}\n labelPlacement={labelPlacement}\n selectProps={props}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n separator={separator}\n />\n }\n preventOverflow={false}\n closeOnOverlayClick\n >\n {items && (\n <Root size={size} {...(rest as any)}>\n <Ul\n role=\"tree\"\n id=\"tree_level_1\"\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\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 )}\n </StyledPopover>\n </Context.Provider>\n {helperText && target === 'textfield-like' && <HelperText>{helperText}</HelperText>}\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n chipView: 'default',\n size: 'm',\n },\n};\n"],"names":["Context","createContext","selectRoot","Root","forwardRef","props","ref","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","_props$labelPlacement","labelPlacement","placeholder","helperText","_props$disabled","disabled","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","rest","_objectWithoutProperties","_excluded","_useState","useState","multiselect","_useState2","_slicedToArray","internalValue","setInternalValue","e","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useReducer5","focusedChipIndexReducer","_useReducer6","focusedChipIndex","dispatchFocusedChipIndex","_useState3","_useState4","checked","setChecked","targetRef","useOutsideClick","type","handleToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","isEmpty","stopPropagation","isCurrentChecked","_","updateSingleAncestors","handleChipClick","currentValue","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","isTargetAmount","onKeyDown","isCurrentListOpen","Boolean","useLayoutEffect","Array","isArray","val","React","createElement","_extends","getView","OuterLabel","Provider","StyledPopover","isOpen","getPlacements","usePortal","frame","onToggle","trigger","Target","onChipClick","selectProps","preventOverflow","closeOnOverlayClick","Ul","role","id","onScroll","map","index","Inner","concat","currentLevel","HelperText","selectConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -37,7 +37,8 @@ var Item = function Item(_ref) {
37
37
  handleCheckboxChange = _useContext.handleCheckboxChange,
38
38
  handleItemClick = _useContext.handleItemClick,
39
39
  variant = _useContext.variant,
40
- renderItem = _useContext.renderItem;
40
+ renderItem = _useContext.renderItem,
41
+ valueToItemMap = _useContext.valueToItemMap;
41
42
  var isDisabledClassName = disabled ? Select_tokens.classes.dropdownItemIsDisabled : undefined;
42
43
  var focusedClass = currentLevel === focusedPath.length - 1 && index$1 === (focusedPath === null || focusedPath === void 0 ? void 0 : focusedPath[currentLevel]) ? Select_tokens.classes.dropdownItemIsFocused : undefined;
43
44
  var activeClass = value === (path === null || path === void 0 ? void 0 : path[currentLevel + 1]) ? Select_tokens.classes.dropdownItemIsActive : undefined;
@@ -87,7 +88,7 @@ var Item = function Item(_ref) {
87
88
  }))), !multiselect && checked.get(item.value) === 'done' && /*#__PURE__*/React.createElement(IconDone.IconDone, {
88
89
  size: sizeToIconSize.sizeToIconSize(size, variant),
89
90
  color: "inherit"
90
- })), contentLeft && /*#__PURE__*/React.createElement(Item_styles.StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(Item_styles.StyledText, null, renderItem && renderItem(value.toString(), label) || label), contentRight && /*#__PURE__*/React.createElement(Item_styles.StyledContentRight, null, contentRight), !isEmpty.isEmpty(item.items) && /*#__PURE__*/React.createElement(Item_styles.DisclosureIconWrapper, null, /*#__PURE__*/React.createElement(IconDisclosureRightCentered.IconDisclosureRightCentered, {
91
+ })), contentLeft && /*#__PURE__*/React.createElement(Item_styles.StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(Item_styles.StyledText, null, renderItem && renderItem(valueToItemMap.get(value)) || label), contentRight && /*#__PURE__*/React.createElement(Item_styles.StyledContentRight, null, contentRight), !isEmpty.isEmpty(item.items) && /*#__PURE__*/React.createElement(Item_styles.DisclosureIconWrapper, null, /*#__PURE__*/React.createElement(IconDisclosureRightCentered.IconDisclosureRightCentered, {
91
92
  size: sizeToIconSize.sizeToIconSize(size, variant),
92
93
  color: "inherit"
93
94
  })));
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sources":["../../../../../../../src/components/Select/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useEffect, useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { IconDisclosureRightCentered, IconDone } from '../../../../../_Icon';\nimport { Context } from '../../../../Select';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledContentLeft,\n StyledContentRight,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n StyledCheckbox,\n IconWrapper,\n StyledIndicator,\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, contentLeft, contentRight } = item;\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 } = useContext(Context);\n\n const isDisabledClassName = disabled ? 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 handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (disabled) return;\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n className={cx(isDisabledClassName, focusedClass, activeClass)}\n id={value.toString()}\n ref={ref}\n onClick={handleClick}\n variant={variant}\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n role=\"treeitem\"\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 className={classes.selectItemCheckbox}\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 {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n\n <StyledText>{(renderItem && renderItem(value.toString(), label)) || label}</StyledText>\n\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\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","contentLeft","contentRight","ref","useRef","_useContext","useContext","Context","focusedPath","checked","multiselect","size","handleCheckboxChange","handleItemClick","variant","renderItem","isDisabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","className","cx","id","toString","onClick","role","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","Boolean","get","indeterminate","onChange","selectItemCheckbox","_StyledIndicator","StyledIndicator","view","IconDone","sizeToIconSize","color","StyledContentLeft","StyledText","StyledContentRight","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, { useEffect, useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { IconDisclosureRightCentered, IconDone } from '../../../../../_Icon';\nimport { Context } from '../../../../Select';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledContentLeft,\n StyledContentRight,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n StyledCheckbox,\n IconWrapper,\n StyledIndicator,\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, contentLeft, contentRight } = item;\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 } = useContext(Context);\n\n const isDisabledClassName = disabled ? 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 handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (disabled) return;\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n className={cx(isDisabledClassName, focusedClass, activeClass)}\n id={value.toString()}\n ref={ref}\n onClick={handleClick}\n variant={variant}\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n role=\"treeitem\"\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 className={classes.selectItemCheckbox}\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 {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n\n <StyledText>{(renderItem && renderItem(valueToItemMap.get(value)!)) || label}</StyledText>\n\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\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","contentLeft","contentRight","ref","useRef","_useContext","useContext","Context","focusedPath","checked","multiselect","size","handleCheckboxChange","handleItemClick","variant","renderItem","valueToItemMap","isDisabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","className","cx","id","toString","onClick","role","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","Boolean","get","indeterminate","onChange","selectItemCheckbox","_StyledIndicator","StyledIndicator","view","IconDone","sizeToIconSize","color","StyledContentLeft","StyledText","StyledContentRight","isEmpty","items","DisclosureIconWrapper","IconDisclosureRightCentered"],"mappings":"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"}
@@ -46,7 +46,9 @@ var Button = function Button(_ref) {
46
46
  "aria-activedescendant": getActiveDescendant(),
47
47
  "aria-label": label,
48
48
  renderTarget: Boolean(selectProps.renderTarget)
49
- }, selectProps.renderTarget ? selectProps.renderTarget(value) : /*#__PURE__*/React.createElement(Button_styles.Label, null, getButtonLabel.getButtonLabel({
49
+ }, selectProps.renderTarget ? selectProps.renderTarget(Array.isArray(value) ? value.map(function (value) {
50
+ return valueToItemMap.get(value);
51
+ }) : valueToItemMap.get(value)) : /*#__PURE__*/React.createElement(Button_styles.Label, null, getButtonLabel.getButtonLabel({
50
52
  value: value,
51
53
  valueToItemMap: valueToItemMap,
52
54
  label: label,
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Button/Button.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { getButtonLabel, sizeToIconSize } from '../../../../utils';\n\nimport { ButtonProps } from './Button.types';\nimport { StyledButton, StyledArrow, Label, ButtonWrapper, IconArrowWrapper } from './Button.styles';\n\nexport const Button: React.FC<ButtonProps> = ({\n opened,\n value,\n valueToItemMap,\n onKeyDown,\n label,\n size,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n selectProps,\n separator,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\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 <ButtonWrapper>\n <StyledButton\n stretching=\"filled\"\n onKeyDown={onKeyDown}\n className={opened ? classes.selectWithoutBoxShadow : undefined}\n disabled={disabled}\n contentRight={\n <IconArrowWrapper>\n <StyledArrow\n size={sizeToIconSize(size)}\n color=\"inherit\"\n className={cx(classes.selectTargetArrow, withArrowInverse)}\n />\n </IconArrowWrapper>\n }\n role=\"combobox\"\n aria-controls=\"tree_level_1\"\n aria-expanded={opened}\n aria-activedescendant={getActiveDescendant()}\n aria-label={label}\n renderTarget={Boolean(selectProps.renderTarget)}\n >\n {selectProps.renderTarget ? (\n selectProps.renderTarget(value as any)\n ) : (\n <Label>\n {getButtonLabel({\n value,\n valueToItemMap,\n label,\n renderValue,\n selectProps,\n separator,\n })}\n </Label>\n )}\n </StyledButton>\n </ButtonWrapper>\n );\n};\n"],"names":["Button","_ref","opened","value","valueToItemMap","onKeyDown","label","size","disabled","renderValue","focusedPath","focusedToValueMap","selectProps","separator","withArrowInverse","classes","arrowInverse","undefined","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","concat","replace","get","toString","React","createElement","ButtonWrapper","StyledButton","stretching","className","selectWithoutBoxShadow","contentRight","IconArrowWrapper","StyledArrow","sizeToIconSize","color","cx","selectTargetArrow","role","renderTarget","Boolean","Label","getButtonLabel"],"mappings":"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"}
1
+ {"version":3,"file":"Button.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Button/Button.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { getButtonLabel, sizeToIconSize } from '../../../../utils';\n\nimport { ButtonProps } from './Button.types';\nimport { StyledButton, StyledArrow, Label, ButtonWrapper, IconArrowWrapper } from './Button.styles';\n\nexport const Button: React.FC<ButtonProps> = ({\n opened,\n value,\n valueToItemMap,\n onKeyDown,\n label,\n size,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n selectProps,\n separator,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\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 <ButtonWrapper>\n <StyledButton\n stretching=\"filled\"\n onKeyDown={onKeyDown}\n className={opened ? classes.selectWithoutBoxShadow : undefined}\n disabled={disabled}\n contentRight={\n <IconArrowWrapper>\n <StyledArrow\n size={sizeToIconSize(size)}\n color=\"inherit\"\n className={cx(classes.selectTargetArrow, withArrowInverse)}\n />\n </IconArrowWrapper>\n }\n role=\"combobox\"\n aria-controls=\"tree_level_1\"\n aria-expanded={opened}\n aria-activedescendant={getActiveDescendant()}\n aria-label={label}\n renderTarget={Boolean(selectProps.renderTarget)}\n >\n {selectProps.renderTarget ? (\n selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n )\n ) : (\n <Label>\n {getButtonLabel({\n value,\n valueToItemMap,\n label,\n renderValue,\n selectProps,\n separator,\n })}\n </Label>\n )}\n </StyledButton>\n </ButtonWrapper>\n );\n};\n"],"names":["Button","_ref","opened","value","valueToItemMap","onKeyDown","label","size","disabled","renderValue","focusedPath","focusedToValueMap","selectProps","separator","withArrowInverse","classes","arrowInverse","undefined","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","concat","replace","get","toString","React","createElement","ButtonWrapper","StyledButton","stretching","className","selectWithoutBoxShadow","contentRight","IconArrowWrapper","StyledArrow","sizeToIconSize","color","cx","selectTargetArrow","role","renderTarget","Boolean","Array","isArray","map","Label","getButtonLabel"],"mappings":"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"}
@@ -37,7 +37,7 @@ var getLabel = function getLabel(_ref) {
37
37
  return value.map(function (currentValue, index) {
38
38
  var itemLabel = valueToItemMap.get(currentValue).label;
39
39
  return /*#__PURE__*/React.createElement(Chip.Chip, {
40
- text: renderValue ? renderValue(currentValue, itemLabel) : itemLabel,
40
+ text: renderValue ? renderValue(valueToItemMap.get(currentValue)) : itemLabel,
41
41
  onClick: function onClick(e) {
42
42
  e.stopPropagation();
43
43
  onChipClick(currentValue);
@@ -48,9 +48,9 @@ var getLabel = function getLabel(_ref) {
48
48
  }
49
49
  var itemLabel = valueToItemMap.get(value).label;
50
50
  if (!label || labelPlacement === 'outer') {
51
- return /*#__PURE__*/React.createElement(Textfield_styles.Value, null, renderValue ? renderValue(value, itemLabel) : itemLabel);
51
+ return /*#__PURE__*/React.createElement(Textfield_styles.Value, null, renderValue ? renderValue(valueToItemMap.get(value)) : itemLabel);
52
52
  }
53
- return /*#__PURE__*/React.createElement(Textfield_styles.InnerLabelWrapper, null, size !== 'xs' && /*#__PURE__*/React.createElement(Textfield_styles.InnerLabel, null, label), /*#__PURE__*/React.createElement(Textfield_styles.Value, null, renderValue ? renderValue(value, itemLabel) : itemLabel));
53
+ return /*#__PURE__*/React.createElement(Textfield_styles.InnerLabelWrapper, null, size !== 'xs' && /*#__PURE__*/React.createElement(Textfield_styles.InnerLabel, null, label), /*#__PURE__*/React.createElement(Textfield_styles.Value, null, renderValue ? renderValue(valueToItemMap.get(value)) : itemLabel));
54
54
  };
55
55
  var Textfield = function Textfield(_ref2) {
56
56
  var opened = _ref2.opened,
@@ -91,7 +91,9 @@ var Textfield = function Textfield(_ref2) {
91
91
  "aria-activedescendant": getActiveDescendant(),
92
92
  "aria-label": label,
93
93
  renderTarget: Boolean(selectProps.renderTarget)
94
- }, /*#__PURE__*/React.createElement(Textfield_styles.Wrapper, null, selectProps !== null && selectProps !== void 0 && selectProps.renderTarget ? selectProps.renderTarget(value) : /*#__PURE__*/React.createElement(React.Fragment, null, contentLeft && (!selectProps.multiselect || isEmpty.isEmpty(value)) && /*#__PURE__*/React.createElement(Textfield_styles.ContentLeftWrapper, null, contentLeft), /*#__PURE__*/React.createElement(Textfield_styles.ChipWrapper, null, getLabel({
94
+ }, /*#__PURE__*/React.createElement(Textfield_styles.Wrapper, null, selectProps !== null && selectProps !== void 0 && selectProps.renderTarget ? selectProps.renderTarget(Array.isArray(value) ? value.map(function (value) {
95
+ return valueToItemMap.get(value);
96
+ }) : valueToItemMap.get(value)) : /*#__PURE__*/React.createElement(React.Fragment, null, contentLeft && (!selectProps.multiselect || isEmpty.isEmpty(value)) && /*#__PURE__*/React.createElement(Textfield_styles.ContentLeftWrapper, null, contentLeft), /*#__PURE__*/React.createElement(Textfield_styles.ChipWrapper, null, getLabel({
95
97
  value: value,
96
98
  valueToItemMap: valueToItemMap,
97
99
  onChipClick: onChipClick,
@@ -1 +1 @@
1
- {"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { sizeToIconSize } from '../../../../utils';\n\nimport { TextfieldProps, GetTextfieldLabelProps } from './Textfield.types';\nimport { Chip } from './ui';\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 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 selectProps,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\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 aria-label={label}\n renderTarget={Boolean(selectProps.renderTarget)}\n >\n <Wrapper>\n {selectProps?.renderTarget ? (\n selectProps.renderTarget(value as any)\n ) : (\n <>\n {contentLeft && (!selectProps.multiselect || isEmpty(value)) && (\n <ContentLeftWrapper>{contentLeft}</ContentLeftWrapper>\n )}\n\n <ChipWrapper>\n {getLabel({\n value,\n valueToItemMap,\n onChipClick,\n focusedChipIndex,\n label,\n labelPlacement,\n placeholder,\n isTargetAmount: selectProps.isTargetAmount,\n renderValue,\n size,\n })}\n </ChipWrapper>\n </>\n )}\n\n <IconArrowWrapper>\n <StyledArrow\n size={sizeToIconSize(size)}\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","onKeyDown","contentLeft","disabled","focusedPath","focusedToValueMap","selectProps","withArrowInverse","classes","arrowInverse","undefined","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","replace","toString","TextfieldWrapper","StyledButton","stretching","className","cx","textfieldTarget","selectWithoutBoxShadow","role","renderTarget","Boolean","Wrapper","Fragment","multiselect","ContentLeftWrapper","ChipWrapper","IconArrowWrapper","StyledArrow","sizeToIconSize","color","selectTargetArrow"],"mappings":"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"}
1
+ {"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React from 'react';\n\nimport { cx, isEmpty } from '../../../../../../utils';\nimport { classes } from '../../../../Select.tokens';\nimport { sizeToIconSize } from '../../../../utils';\n\nimport { TextfieldProps, GetTextfieldLabelProps } from './Textfield.types';\nimport { Chip } from './ui';\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(valueToItemMap.get(currentValue)!) : 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(valueToItemMap.get(value)!) : itemLabel}</Value>;\n }\n\n return (\n <InnerLabelWrapper>\n {size !== 'xs' && <InnerLabel>{label}</InnerLabel>}\n <Value>{renderValue ? renderValue(valueToItemMap.get(value)!) : itemLabel}</Value>\n </InnerLabelWrapper>\n );\n};\n\nexport const Textfield: React.FC<TextfieldProps> = ({\n opened,\n value,\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 selectProps,\n}) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\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 aria-label={label}\n renderTarget={Boolean(selectProps.renderTarget)}\n >\n <Wrapper>\n {selectProps?.renderTarget ? (\n selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n )\n ) : (\n <>\n {contentLeft && (!selectProps.multiselect || isEmpty(value)) && (\n <ContentLeftWrapper>{contentLeft}</ContentLeftWrapper>\n )}\n\n <ChipWrapper>\n {getLabel({\n value,\n valueToItemMap,\n onChipClick,\n focusedChipIndex,\n label,\n labelPlacement,\n placeholder,\n isTargetAmount: selectProps.isTargetAmount,\n renderValue,\n size,\n })}\n </ChipWrapper>\n </>\n )}\n\n <IconArrowWrapper>\n <StyledArrow\n size={sizeToIconSize(size)}\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","onKeyDown","contentLeft","disabled","focusedPath","focusedToValueMap","selectProps","withArrowInverse","classes","arrowInverse","undefined","getActiveDescendant","_focusedToValueMap$ge","focusedPathAsString","reduce","acc","n","replace","toString","TextfieldWrapper","StyledButton","stretching","className","cx","textfieldTarget","selectWithoutBoxShadow","role","renderTarget","Boolean","Wrapper","Fragment","multiselect","ContentLeftWrapper","ChipWrapper","IconArrowWrapper","StyledArrow","sizeToIconSize","color","selectTargetArrow"],"mappings":"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"}
@@ -10,9 +10,9 @@ var getLabel = function getLabel(_ref) {
10
10
  var value = _ref.value,
11
11
  valueToItemMap = _ref.valueToItemMap,
12
12
  renderValue = _ref.renderValue;
13
- var _ref2 = valueToItemMap.get(value === null || value === void 0 ? void 0 : value.toString()),
13
+ var _ref2 = valueToItemMap.get(value),
14
14
  label = _ref2.label;
15
- return renderValue ? renderValue(value, label) : label;
15
+ return renderValue ? renderValue(valueToItemMap.get(value)) : label;
16
16
  };
17
17
  var getButtonLabel = function getButtonLabel(_ref3) {
18
18
  var value = _ref3.value,
@@ -37,9 +37,9 @@ var getButtonLabel = function getButtonLabel(_ref3) {
37
37
  }).join(separator || ', ');
38
38
  }
39
39
  return getLabel({
40
- renderValue: renderValue,
41
- value: value,
42
- valueToItemMap: valueToItemMap
40
+ value: value.toString(),
41
+ valueToItemMap: valueToItemMap,
42
+ renderValue: renderValue
43
43
  });
44
44
  };
45
45
 
@@ -1 +1 @@
1
- {"version":3,"file":"getButtonLabel.js","sources":["../../../../src/components/Select/utils/getButtonLabel.ts"],"sourcesContent":["import { GetButtonLabelProps } from '../ui/Target/ui/Button/Button.types';\nimport { isEmpty } from '../../../utils';\n\nconst getLabel = ({\n value,\n valueToItemMap,\n renderValue,\n}: Omit<GetButtonLabelProps, 'label' | 'selectProps'>): string => {\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 valueToItemMap,\n label,\n renderValue,\n selectProps,\n separator,\n}: GetButtonLabelProps): string => {\n if (isEmpty(value)) {\n return label || '';\n }\n\n if (selectProps.multiselect && selectProps.isTargetAmount) {\n return `Выбрано: ${value.length}`;\n }\n\n if (selectProps.multiselect && Array.isArray(value)) {\n return value\n ?.map((itemValue) =>\n getLabel({\n value: itemValue,\n valueToItemMap,\n renderValue,\n }),\n )\n .join(separator || ', ');\n }\n\n return getLabel({\n renderValue,\n value,\n valueToItemMap,\n });\n};\n"],"names":["getLabel","_ref","value","valueToItemMap","renderValue","_ref2","get","toString","label","getButtonLabel","_ref3","selectProps","separator","isEmpty","multiselect","isTargetAmount","concat","length","Array","isArray","map","itemValue","join"],"mappings":";;;;;;;;AAGA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAIoD;AAAA,EAAA,IAH9DC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,WAAW,GAAAH,IAAA,CAAXG,WAAW,CAAA;AAEX,EAAA,IAAAC,KAAA,GAAkBF,cAAc,CAACG,GAAG,CAACJ,KAAK,KAALA,IAAAA,IAAAA,KAAK,uBAALA,KAAK,CAAEK,QAAQ,EAAE,CAAC;IAA/CC,KAAK,GAAAH,KAAA,CAALG,KAAK,CAAA;EAEb,OAAOJ,WAAW,GAAGA,WAAW,CAACF,KAAK,EAAYM,KAAK,CAAC,GAAGA,KAAK,CAAA;AACpE,CAAC,CAAA;IAEYC,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA,EAOQ;AAAA,EAAA,IAN/BR,KAAK,GAAAQ,KAAA,CAALR,KAAK;IACLC,cAAc,GAAAO,KAAA,CAAdP,cAAc;IACdK,KAAK,GAAAE,KAAA,CAALF,KAAK;IACLJ,WAAW,GAAAM,KAAA,CAAXN,WAAW;IACXO,WAAW,GAAAD,KAAA,CAAXC,WAAW;IACXC,SAAS,GAAAF,KAAA,CAATE,SAAS,CAAA;AAET,EAAA,IAAIC,eAAO,CAACX,KAAK,CAAC,EAAE;IAChB,OAAOM,KAAK,IAAI,EAAE,CAAA;AACtB,GAAA;AAEA,EAAA,IAAIG,WAAW,CAACG,WAAW,IAAIH,WAAW,CAACI,cAAc,EAAE;AACvD,IAAA,OAAA,8CAAA,CAAAC,MAAA,CAAmBd,KAAK,CAACe,MAAM,CAAA,CAAA;AACnC,GAAA;EAEA,IAAIN,WAAW,CAACG,WAAW,IAAII,KAAK,CAACC,OAAO,CAACjB,KAAK,CAAC,EAAE;IACjD,OAAOA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CACNkB,GAAG,CAAC,UAACC,SAAS,EAAA;AAAA,MAAA,OACZrB,QAAQ,CAAC;AACLE,QAAAA,KAAK,EAAEmB,SAAS;AAChBlB,QAAAA,cAAc,EAAdA,cAAc;AACdC,QAAAA,WAAW,EAAXA,WAAAA;AACJ,OAAC,CAAC,CAAA;AAAA,KACN,CAAC,CACAkB,IAAI,CAACV,SAAS,IAAI,IAAI,CAAC,CAAA;AAChC,GAAA;AAEA,EAAA,OAAOZ,QAAQ,CAAC;AACZI,IAAAA,WAAW,EAAXA,WAAW;AACXF,IAAAA,KAAK,EAALA,KAAK;AACLC,IAAAA,cAAc,EAAdA,cAAAA;AACJ,GAAC,CAAC,CAAA;AACN;;;;"}
1
+ {"version":3,"file":"getButtonLabel.js","sources":["../../../../src/components/Select/utils/getButtonLabel.ts"],"sourcesContent":["import { GetButtonLabelProps } from '../ui/Target/ui/Button/Button.types';\nimport { isEmpty } from '../../../utils';\n\nconst getLabel = ({\n value,\n valueToItemMap,\n renderValue,\n}: Omit<GetButtonLabelProps, 'label' | 'selectProps' | 'value'> & { value: string }): string => {\n const { label } = valueToItemMap.get(value)!;\n\n return renderValue ? renderValue(valueToItemMap.get(value)!) : label;\n};\n\nexport const getButtonLabel = ({\n value,\n valueToItemMap,\n label,\n renderValue,\n selectProps,\n separator,\n}: GetButtonLabelProps): string => {\n if (isEmpty(value)) {\n return label || '';\n }\n\n if (selectProps.multiselect && selectProps.isTargetAmount) {\n return `Выбрано: ${value.length}`;\n }\n\n if (selectProps.multiselect && Array.isArray(value)) {\n return value\n ?.map((itemValue) =>\n getLabel({\n value: itemValue,\n valueToItemMap,\n renderValue,\n }),\n )\n .join(separator || ', ');\n }\n\n return getLabel({\n value: value.toString(),\n valueToItemMap,\n renderValue,\n });\n};\n"],"names":["getLabel","_ref","value","valueToItemMap","renderValue","_ref2","get","label","getButtonLabel","_ref3","selectProps","separator","isEmpty","multiselect","isTargetAmount","concat","length","Array","isArray","map","itemValue","join","toString"],"mappings":";;;;;;;;AAGA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAIkF;AAAA,EAAA,IAH5FC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IACdC,WAAW,GAAAH,IAAA,CAAXG,WAAW,CAAA;AAEX,EAAA,IAAAC,KAAA,GAAkBF,cAAc,CAACG,GAAG,CAACJ,KAAK,CAAC;IAAnCK,KAAK,GAAAF,KAAA,CAALE,KAAK,CAAA;AAEb,EAAA,OAAOH,WAAW,GAAGA,WAAW,CAACD,cAAc,CAACG,GAAG,CAACJ,KAAK,CAAE,CAAC,GAAGK,KAAK,CAAA;AACxE,CAAC,CAAA;IAEYC,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,KAAA,EAOQ;AAAA,EAAA,IAN/BP,KAAK,GAAAO,KAAA,CAALP,KAAK;IACLC,cAAc,GAAAM,KAAA,CAAdN,cAAc;IACdI,KAAK,GAAAE,KAAA,CAALF,KAAK;IACLH,WAAW,GAAAK,KAAA,CAAXL,WAAW;IACXM,WAAW,GAAAD,KAAA,CAAXC,WAAW;IACXC,SAAS,GAAAF,KAAA,CAATE,SAAS,CAAA;AAET,EAAA,IAAIC,eAAO,CAACV,KAAK,CAAC,EAAE;IAChB,OAAOK,KAAK,IAAI,EAAE,CAAA;AACtB,GAAA;AAEA,EAAA,IAAIG,WAAW,CAACG,WAAW,IAAIH,WAAW,CAACI,cAAc,EAAE;AACvD,IAAA,OAAA,8CAAA,CAAAC,MAAA,CAAmBb,KAAK,CAACc,MAAM,CAAA,CAAA;AACnC,GAAA;EAEA,IAAIN,WAAW,CAACG,WAAW,IAAII,KAAK,CAACC,OAAO,CAAChB,KAAK,CAAC,EAAE;IACjD,OAAOA,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CACNiB,GAAG,CAAC,UAACC,SAAS,EAAA;AAAA,MAAA,OACZpB,QAAQ,CAAC;AACLE,QAAAA,KAAK,EAAEkB,SAAS;AAChBjB,QAAAA,cAAc,EAAdA,cAAc;AACdC,QAAAA,WAAW,EAAXA,WAAAA;AACJ,OAAC,CAAC,CAAA;AAAA,KACN,CAAC,CACAiB,IAAI,CAACV,SAAS,IAAI,IAAI,CAAC,CAAA;AAChC,GAAA;AAEA,EAAA,OAAOX,QAAQ,CAAC;AACZE,IAAAA,KAAK,EAAEA,KAAK,CAACoB,QAAQ,EAAE;AACvBnB,IAAAA,cAAc,EAAdA,cAAc;AACdC,IAAAA,WAAW,EAAXA,WAAAA;AACJ,GAAC,CAAC,CAAA;AACN;;;;"}
@@ -69,7 +69,7 @@ var autocompleteRoot = exports.autocompleteRoot = function autocompleteRoot(Root
69
69
  isOpen = _useState4[0],
70
70
  setIsOpen = _useState4[1];
71
71
  var listId = (0, _plasmaCore.safeUseId)();
72
- var value = outerValue || innerValue;
72
+ var value = outerValue !== null && outerValue !== void 0 ? outerValue : innerValue;
73
73
  var helperTextId = (0, _plasmaCore.safeUseId)();
74
74
  var targetRef = (0, _hooks.useOutsideClick)(function () {
75
75
  setIsOpen(false);
@@ -245,7 +245,8 @@ var selectRoot = exports.selectRoot = function selectRoot(Root) {
245
245
  handleCheckboxChange: handleCheckboxChange,
246
246
  handleItemClick: handleItemClick,
247
247
  variant: variant,
248
- renderItem: renderItem
248
+ renderItem: renderItem,
249
+ valueToItemMap: valueToItemMap
249
250
  }
250
251
  }, /*#__PURE__*/_react["default"].createElement(_Select.StyledPopover, {
251
252
  ref: targetRef,
@@ -38,7 +38,8 @@ var Item = exports.Item = function Item(_ref) {
38
38
  handleCheckboxChange = _useContext.handleCheckboxChange,
39
39
  handleItemClick = _useContext.handleItemClick,
40
40
  variant = _useContext.variant,
41
- renderItem = _useContext.renderItem;
41
+ renderItem = _useContext.renderItem,
42
+ valueToItemMap = _useContext.valueToItemMap;
42
43
  var isDisabledClassName = disabled ? _Select.classes.dropdownItemIsDisabled : undefined;
43
44
  var focusedClass = currentLevel === focusedPath.length - 1 && index === (focusedPath === null || focusedPath === void 0 ? void 0 : focusedPath[currentLevel]) ? _Select.classes.dropdownItemIsFocused : undefined;
44
45
  var activeClass = value === (path === null || path === void 0 ? void 0 : path[currentLevel + 1]) ? _Select.classes.dropdownItemIsActive : undefined;
@@ -88,7 +89,7 @@ var Item = exports.Item = function Item(_ref) {
88
89
  }))), !multiselect && checked.get(item.value) === 'done' && /*#__PURE__*/_react["default"].createElement(_Icon.IconDone, {
89
90
  size: (0, _utils.sizeToIconSize)(size, variant),
90
91
  color: "inherit"
91
- })), contentLeft && /*#__PURE__*/_react["default"].createElement(_Item.StyledContentLeft, null, contentLeft), /*#__PURE__*/_react["default"].createElement(_Item.StyledText, null, renderItem && renderItem(value.toString(), label) || label), contentRight && /*#__PURE__*/_react["default"].createElement(_Item.StyledContentRight, null, contentRight), !(0, _utils2.isEmpty)(item.items) && /*#__PURE__*/_react["default"].createElement(_Item.DisclosureIconWrapper, null, /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureRightCentered, {
92
+ })), contentLeft && /*#__PURE__*/_react["default"].createElement(_Item.StyledContentLeft, null, contentLeft), /*#__PURE__*/_react["default"].createElement(_Item.StyledText, null, renderItem && renderItem(valueToItemMap.get(value)) || label), contentRight && /*#__PURE__*/_react["default"].createElement(_Item.StyledContentRight, null, contentRight), !(0, _utils2.isEmpty)(item.items) && /*#__PURE__*/_react["default"].createElement(_Item.DisclosureIconWrapper, null, /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureRightCentered, {
92
93
  size: (0, _utils.sizeToIconSize)(size, variant),
93
94
  color: "inherit"
94
95
  })));
@@ -47,7 +47,9 @@ var Button = exports.Button = function Button(_ref) {
47
47
  "aria-activedescendant": getActiveDescendant(),
48
48
  "aria-label": label,
49
49
  renderTarget: Boolean(selectProps.renderTarget)
50
- }, selectProps.renderTarget ? selectProps.renderTarget(value) : /*#__PURE__*/_react["default"].createElement(_Button.Label, null, (0, _utils2.getButtonLabel)({
50
+ }, selectProps.renderTarget ? selectProps.renderTarget(Array.isArray(value) ? value.map(function (value) {
51
+ return valueToItemMap.get(value);
52
+ }) : valueToItemMap.get(value)) : /*#__PURE__*/_react["default"].createElement(_Button.Label, null, (0, _utils2.getButtonLabel)({
51
53
  value: value,
52
54
  valueToItemMap: valueToItemMap,
53
55
  label: label,