@salutejs/plasma-new-hope 0.138.0-canary.1406.10670971125.0 → 0.138.0-canary.1406.10679978473.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (28) hide show
  1. package/cjs/components/Combobox/ComboboxNew/Combobox.js +63 -62
  2. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  3. package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +8 -8
  4. package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
  5. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +2 -2
  6. package/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
  7. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +63 -62
  8. package/emotion/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +8 -8
  9. package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +2 -2
  10. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +63 -62
  11. package/emotion/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +8 -8
  12. package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +2 -2
  13. package/es/components/Combobox/ComboboxNew/Combobox.js +63 -62
  14. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  15. package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +8 -8
  16. package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
  17. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +2 -2
  18. package/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js.map +1 -1
  19. package/package.json +2 -2
  20. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +63 -62
  21. package/styled-components/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +8 -8
  22. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +2 -2
  23. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +63 -62
  24. package/styled-components/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +8 -8
  25. package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.js +2 -2
  26. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  27. package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts +2 -2
  28. package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts.map +1 -1
@@ -129,7 +129,7 @@ var comboboxRoot = function comboboxRoot(Root) {
129
129
  type: 'reset'
130
130
  });
131
131
 
132
- // Проверяем, отличается ли значение инпуте от выбранного value после закрытия дропдауна.
132
+ // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.
133
133
  // Если изменилось, то возвращаем label выбранного айтема.
134
134
  // Если нет выбранного элемента, то стираем значение инпута.
135
135
  if (textValue !== value) {
@@ -184,7 +184,7 @@ var comboboxRoot = function comboboxRoot(Root) {
184
184
  };
185
185
 
186
186
  // Обработчик открытия/закрытия выпадающего списка
187
- var handleToggle = function handleToggle(opened) {
187
+ var handleListToggle = function handleListToggle(opened) {
188
188
  if (disabled) {
189
189
  return;
190
190
  }
@@ -204,44 +204,45 @@ var comboboxRoot = function comboboxRoot(Root) {
204
204
 
205
205
  // Обработчик выбора чекбоксов (только при multiple)
206
206
  var handleCheckboxChange = function handleCheckboxChange(item) {
207
- if (multiple) {
208
- var checkedCopy = new Map(checked);
209
- if (!checkedCopy.get(item.value)) {
210
- checkedCopy.set(item.value, true);
211
- updateDescendants.updateDescendants(item, checkedCopy, true);
212
- } else {
213
- checkedCopy.set(item.value, false);
214
- updateDescendants.updateDescendants(item, checkedCopy, false);
207
+ if (!multiple) {
208
+ return;
209
+ }
210
+ var checkedCopy = new Map(checked);
211
+ if (!checkedCopy.get(item.value)) {
212
+ checkedCopy.set(item.value, true);
213
+ updateDescendants.updateDescendants(item, checkedCopy, true);
214
+ } else {
215
+ checkedCopy.set(item.value, false);
216
+ updateDescendants.updateDescendants(item, checkedCopy, false);
217
+ }
218
+ updateAncestors.updateAncestors(item, checkedCopy);
219
+ var newValues = [];
220
+ valueToItemMap.forEach(function (item, key) {
221
+ if (checkedCopy.get(key)) {
222
+ newValues.push(item.value);
215
223
  }
216
- updateAncestors.updateAncestors(item, checkedCopy);
217
- var newValues = [];
218
- valueToItemMap.forEach(function (item, key) {
219
- if (checkedCopy.get(key)) {
220
- newValues.push(item.value);
221
- }
224
+ });
225
+ if (closeAfterSelect) {
226
+ dispatchPath({
227
+ type: 'reset'
222
228
  });
223
- if (closeAfterSelect) {
224
- dispatchPath({
225
- type: 'reset'
226
- });
227
- dispatchFocusedPath({
228
- type: 'reset'
229
+ dispatchFocusedPath({
230
+ type: 'reset'
231
+ });
232
+ }
233
+ if (onChange) {
234
+ onChange(newValues);
235
+ }
236
+
237
+ // После выбора/снятия чекбокса скроллим к инпуту
238
+ setTimeout(function () {
239
+ if (inputRef.current) {
240
+ inputRef.current.scrollIntoView({
241
+ behavior: 'smooth',
242
+ inline: 'start'
229
243
  });
230
244
  }
231
- if (onChange) {
232
- onChange(newValues);
233
- }
234
-
235
- // После выбора/снятия чекбокса скроллим к инпуту
236
- setTimeout(function () {
237
- if (inputRef.current) {
238
- inputRef.current.scrollIntoView({
239
- behavior: 'smooth',
240
- inline: 'start'
241
- });
242
- }
243
- }, 1);
244
- }
245
+ }, 1);
245
246
  };
246
247
 
247
248
  // Обработчик клика по айтему выпадающего списка
@@ -251,31 +252,31 @@ var comboboxRoot = function comboboxRoot(Root) {
251
252
  }
252
253
  if (multiple) {
253
254
  handleCheckboxChange(item);
254
- } else {
255
- if (e) {
256
- e.stopPropagation();
257
- }
258
- var checkedCopy = new Map(checked);
259
- var isCurrentChecked = checkedCopy.get(item.value);
260
- checkedCopy.forEach(function (_, key) {
261
- checkedCopy.set(key, false);
255
+ return;
256
+ }
257
+ if (e) {
258
+ e.stopPropagation();
259
+ }
260
+ var checkedCopy = new Map(checked);
261
+ var isCurrentChecked = checkedCopy.get(item.value);
262
+ checkedCopy.forEach(function (_, key) {
263
+ checkedCopy.set(key, false);
264
+ });
265
+ if (!isCurrentChecked) {
266
+ checkedCopy.set(item.value, 'done');
267
+ updateSingleAncestors.updateSingleAncestors(item, checkedCopy, 'dot');
268
+ }
269
+ setTextValue(isCurrentChecked ? '' : item.label);
270
+ if (closeAfterSelect) {
271
+ dispatchPath({
272
+ type: 'reset'
262
273
  });
263
- if (!isCurrentChecked) {
264
- checkedCopy.set(item.value, 'done');
265
- updateSingleAncestors.updateSingleAncestors(item, checkedCopy, 'dot');
266
- }
267
- setTextValue(isCurrentChecked ? '' : item.label);
268
- if (closeAfterSelect) {
269
- dispatchPath({
270
- type: 'reset'
271
- });
272
- dispatchFocusedPath({
273
- type: 'reset'
274
- });
275
- }
276
- if (onChange) {
277
- onChange(isCurrentChecked ? '' : item.value);
278
- }
274
+ dispatchFocusedPath({
275
+ type: 'reset'
276
+ });
277
+ }
278
+ if (onChange) {
279
+ onChange(isCurrentChecked ? '' : item.value);
279
280
  }
280
281
  };
281
282
  var getChips = function getChips() {
@@ -304,7 +305,7 @@ var comboboxRoot = function comboboxRoot(Root) {
304
305
  dispatchPath: dispatchPath,
305
306
  pathMap: pathMap,
306
307
  focusedToValueMap: focusedToValueMap,
307
- handleToggle: handleToggle,
308
+ handleListToggle: handleListToggle,
308
309
  handlePressDown: handlePressDown,
309
310
  multiselect: multiple,
310
311
  setTextValue: setTextValue
@@ -355,7 +356,7 @@ var comboboxRoot = function comboboxRoot(Root) {
355
356
  ref: floatingPopoverRef,
356
357
  opened: isCurrentListOpen,
357
358
  onToggle: function onToggle(opened) {
358
- return opened && handleToggle(true);
359
+ return opened && handleListToggle(true);
359
360
  },
360
361
  placement: placement,
361
362
  portal: portal,
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n} from './utils';\nimport { Inner, StyledTextField } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState } from './Combobox.styles';\nimport type { ItemContext, ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n isTargetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n readOnly = false,\n disabled = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n ...rest\n } = props;\n const [textValue, setTextValue] = useState('');\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue || internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(items), [items]);\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n // Проверяем, отличается ли значение инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | Array<string>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleToggle = (opened: boolean) => {\n if (disabled) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (multiple) {\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> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n }\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n } 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 setTextValue(isCurrentChecked ? '' : item.label);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n }\n };\n\n const getChips = (): string[] => {\n if (multiple) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n return (value as []).map((value) => valueToItemMap.get(value)!.label);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n multiselect: multiple,\n setTextValue,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root size={size} view={view} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleToggle(true)}\n placement={placement}\n portal={portal}\n target={(referenceRef) => (\n <StyledTextField\n ref={inputForkRef}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n ref={targetRef}\n >\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description=\"Ничего не найдено\"\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["Context","createContext","comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_getItemByFocused","multiple","outerValue","value","outerOnChange","onChange","isTargetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listWidth","portal","renderItem","view","size","labelPlacement","_props$readOnly","readOnly","_props$disabled","disabled","filter","outerCloseAfterSelect","closeAfterSelect","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","transformedItems","useMemo","initialItemsTransform","_useMemo","getTreeMaps","_useMemo2","valueToCheckedMap","valueToItemMap","labelToItemMap","filteredItems","filterItems","get","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","undefined","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get2","newValue","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","map","chipLabel","handleToggle","opened","handleCheckboxChange","item","checkedCopy","Map","set","updateDescendants","updateAncestors","newValues","forEach","key","push","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","_","updateSingleAncestors","getChips","length","concat","handlePressDown","_useKeyNavigation","useKeyNavigation","multiselect","onKeyDown","useLayoutEffect","Array","isArray","val","React","createElement","Provider","FloatingPopover","onToggle","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","Ul","id","StyledEmptyState","emptyStateWrapper","description","index","Inner","currentLevel","comboboxConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Combobox.js","sources":["../../../../src/components/Combobox/ComboboxNew/Combobox.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect, useRef } from 'react';\nimport type { ChangeEvent } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../../engines';\nimport { isEmpty } from '../../../utils';\nimport { useOutsideClick } from '../../../hooks';\nimport { sizeToIconSize } from '../../Select/utils';\n\nimport { classes } from './Combobox.tokens';\nimport { FloatingPopover } from './FloatingPopover';\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport {\n initialItemsTransform,\n updateAncestors,\n updateDescendants,\n updateSingleAncestors,\n filterItems,\n getItemId,\n} from './utils';\nimport { Inner, StyledTextField } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { getPathMap, getTreeMaps } from './hooks/getPathMaps';\nimport { Ul, base, StyledArrow, IconArrowWrapper, StyledEmptyState } from './Combobox.styles';\nimport type { ItemContext, ComboboxProps } from './Combobox.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, Omit<ComboboxProps, 'items'>>) =>\n forwardRef<HTMLInputElement, ComboboxProps>((props, ref) => {\n const {\n multiple,\n value: outerValue,\n onChange: outerOnChange,\n isTargetAmount,\n items,\n placement = 'bottom-start',\n label,\n placeholder,\n helperText,\n contentLeft,\n textBefore,\n textAfter,\n variant = 'normal',\n listOverflow,\n listHeight,\n listWidth,\n portal,\n renderItem,\n view,\n size,\n labelPlacement,\n readOnly = false,\n disabled = false,\n filter,\n closeAfterSelect: outerCloseAfterSelect,\n ...rest\n } = props;\n const [textValue, setTextValue] = useState('');\n const [internalValue, setInternalValue] = useState<string | string[]>(multiple ? [] : '');\n\n const value = outerValue || internalValue;\n\n const inputRef = useRef<HTMLInputElement>(null);\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n const inputForkRef = useForkRef(inputRef, ref);\n const treeId = safeUseId();\n\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [valueToCheckedMap, valueToItemMap, labelToItemMap] = useMemo(() => getTreeMaps(items), [items]);\n\n const filteredItems = filterItems(\n transformedItems,\n textValue,\n valueToItemMap.get(value as string)?.label as string,\n filter,\n );\n\n const [pathMap, focusedToValueMap] = useMemo(() => getPathMap(filteredItems), [filteredItems, textValue]);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value || '';\n const withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;\n const closeAfterSelect = outerCloseAfterSelect ?? !multiple;\n\n // Логика работы при клике за пределами выпадающего списка\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.\n // Если изменилось, то возвращаем label выбранного айтема.\n // Если нет выбранного элемента, то стираем значение инпута.\n if (textValue !== value) {\n if (isEmpty(value)) {\n setTextValue('');\n } else {\n setTextValue(valueToItemMap.get(value as string)?.label || '');\n }\n }\n }, floatingPopoverRef);\n\n const onChange = (newValue: string | Array<string>) => {\n if (outerOnChange) {\n outerOnChange(newValue as any);\n }\n\n setInternalValue(newValue);\n };\n\n const handleClickArrow = () => {\n if (disabled) {\n return;\n }\n\n if (isCurrentListOpen) {\n dispatchPath({ type: 'reset' });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n }\n\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик изменения значения в инпуте\n const handleTextValueChange = (e: ChangeEvent<HTMLInputElement>) => {\n setTextValue(e.target.value);\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'reset' });\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n onChange(chipLabels.map((chipLabel) => labelToItemMap.get(chipLabel)!.value));\n };\n\n // Обработчик открытия/закрытия выпадающего списка\n const handleListToggle = (opened: boolean) => {\n if (disabled) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n };\n\n // Обработчик выбора чекбоксов (только при multiple)\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n if (!multiple) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues);\n }\n\n // После выбора/снятия чекбокса скроллим к инпуту\n setTimeout(() => {\n if (inputRef.current) {\n inputRef.current.scrollIntoView({\n behavior: 'smooth',\n inline: 'start',\n });\n }\n }, 1);\n };\n\n // Обработчик клика по айтему выпадающего списка\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiple) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const 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 setTextValue(isCurrentChecked ? '' : item.label);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value);\n }\n };\n\n const getChips = (): string[] => {\n if (multiple) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n return (value as []).map((value) => valueToItemMap.get(value)!.label);\n }\n\n return [];\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiple) {\n handleCheckboxChange(item);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n multiselect: multiple,\n setTextValue,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root size={size} view={view} labelPlacement={labelPlacement} disabled={disabled} readOnly={readOnly}>\n <div>\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={(opened: boolean) => opened && handleListToggle(true)}\n placement={placement}\n portal={portal}\n target={(referenceRef) => (\n <StyledTextField\n ref={inputForkRef}\n inputWrapperRef={referenceRef}\n value={textValue}\n onChange={handleTextValueChange}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n label={label}\n placeholder={placeholder}\n contentLeft={contentLeft}\n contentRight={\n <IconArrowWrapper disabled={disabled} onClick={handleClickArrow}>\n <StyledArrow\n color=\"inherit\"\n size={sizeToIconSize(size)}\n className={withArrowInverse}\n />\n </IconArrowWrapper>\n }\n textBefore={textBefore}\n textAfter={textAfter}\n onKeyDown={onKeyDown}\n leftHelper={helperText}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={isCurrentListOpen}\n aria-activedescendant={\n activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''\n }\n {...(multiple\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n }\n : { enumerationType: 'plain' })}\n {...rest}\n onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n />\n )}\n >\n <Root\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n readOnly={readOnly}\n >\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(multiple)}\n listHeight={listHeight}\n listOverflow={listOverflow}\n listWidth={listWidth}\n ref={targetRef}\n >\n {isEmpty(filteredItems) ? (\n <StyledEmptyState\n className={classes.emptyStateWrapper}\n size={size}\n description=\"Ничего не найдено\"\n />\n ) : (\n filteredItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))\n )}\n </Ul>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </div>\n </Root>\n );\n });\n\nexport const comboboxConfig = {\n name: 'Select',\n tag: 'div',\n layout: comboboxRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n readOnly: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n },\n};\n"],"names":["Context","createContext","comboboxRoot","Root","forwardRef","props","ref","_valueToItemMap$get","_getItemByFocused","multiple","outerValue","value","outerOnChange","onChange","isTargetAmount","items","_props$placement","placement","label","placeholder","helperText","contentLeft","textBefore","textAfter","_props$variant","variant","listOverflow","listHeight","listWidth","portal","renderItem","view","size","labelPlacement","_props$readOnly","readOnly","_props$disabled","disabled","filter","outerCloseAfterSelect","closeAfterSelect","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","textValue","setTextValue","_useState3","_useState4","internalValue","setInternalValue","inputRef","useRef","floatingPopoverRef","inputForkRef","useForkRef","treeId","safeUseId","transformedItems","useMemo","initialItemsTransform","_useMemo","getTreeMaps","_useMemo2","valueToCheckedMap","valueToItemMap","labelToItemMap","filteredItems","filterItems","get","_useMemo3","getPathMap","_useMemo4","pathMap","focusedToValueMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState5","_useState6","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","withArrowInverse","classes","arrowInverse","undefined","targetRef","useOutsideClick","type","isEmpty","_valueToItemMap$get2","newValue","handleClickArrow","handleTextValueChange","e","target","handleChipsChange","chipLabels","map","chipLabel","handleListToggle","opened","handleCheckboxChange","item","checkedCopy","Map","set","updateDescendants","updateAncestors","newValues","forEach","key","push","setTimeout","current","scrollIntoView","behavior","inline","handleItemClick","stopPropagation","isCurrentChecked","_","updateSingleAncestors","getChips","length","concat","handlePressDown","_useKeyNavigation","useKeyNavigation","multiselect","onKeyDown","useLayoutEffect","Array","isArray","val","React","createElement","Provider","FloatingPopover","onToggle","referenceRef","StyledTextField","_extends","inputWrapperRef","contentRight","IconArrowWrapper","onClick","StyledArrow","color","sizeToIconSize","className","leftHelper","role","getItemId","enumerationType","chips","onChangeChips","onEnterDisabled","Ul","id","StyledEmptyState","emptyStateWrapper","description","index","Inner","currentLevel","comboboxConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -31,7 +31,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
31
31
  dispatchPath = _ref.dispatchPath,
32
32
  pathMap = _ref.pathMap,
33
33
  focusedToValueMap = _ref.focusedToValueMap,
34
- handleToggle = _ref.handleToggle,
34
+ handleListToggle = _ref.handleListToggle,
35
35
  handlePressDown = _ref.handlePressDown,
36
36
  multiselect = _ref.multiselect,
37
37
  setTextValue = _ref.setTextValue;
@@ -60,7 +60,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
60
60
  dispatchFocusedPath({
61
61
  type: 'set_initial_focus'
62
62
  });
63
- handleToggle(true);
63
+ handleListToggle(true);
64
64
  }
65
65
  if (path[0]) {
66
66
  event.stopPropagation();
@@ -89,7 +89,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
89
89
  dispatchFocusedPath({
90
90
  type: 'set_initial_focus'
91
91
  });
92
- handleToggle(true);
92
+ handleListToggle(true);
93
93
  }
94
94
  if (path[0]) {
95
95
  event.stopPropagation();
@@ -114,7 +114,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
114
114
  }
115
115
  }
116
116
  if (path.length === 1) {
117
- handleToggle(false);
117
+ handleListToggle(false);
118
118
  }
119
119
  }
120
120
  break;
@@ -211,7 +211,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
211
211
  dispatchFocusedPath({
212
212
  type: 'reset'
213
213
  });
214
- handleToggle(false);
214
+ handleListToggle(false);
215
215
  setTextValue('');
216
216
  break;
217
217
  }
@@ -223,7 +223,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
223
223
  dispatchFocusedPath({
224
224
  type: 'reset'
225
225
  });
226
- handleToggle(false);
226
+ handleListToggle(false);
227
227
  break;
228
228
  }
229
229
  case keys.Home:
@@ -245,7 +245,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
245
245
  dispatchFocusedPath({
246
246
  type: 'set_initial_focus'
247
247
  });
248
- handleToggle(true);
248
+ handleListToggle(true);
249
249
  }
250
250
  break;
251
251
  }
@@ -269,7 +269,7 @@ var useKeyNavigation = function useKeyNavigation(_ref) {
269
269
  type: 'change_last_focus',
270
270
  value: (pathMap.get('root') || 0) - 1
271
271
  });
272
- handleToggle(true);
272
+ handleListToggle(true);
273
273
  }
274
274
  break;
275
275
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../../src/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { KeyboardEvent, Dispatch } from 'react';\nimport React from 'react';\n\nimport { PathAction, PathState, FocusedPathAction, FocusedPathState } from '../reducers';\nimport { ComboboxProps } from '../Combobox.types';\nimport type { ItemOptionTransformed } from '../ui/Inner/ui/Item/Item.types';\n\nimport { PathMapType, FocusedToValueMapType } from './getPathMaps';\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\nexport const getItemByFocused = (focusedPath: FocusedPathState, focusedToValueMap: FocusedToValueMapType) => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n\n return focusedToValueMap.get(focusedPathAsString);\n};\n\ntype 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 multiselect: ComboboxProps['multiple'];\n setTextValue: React.Dispatch<React.SetStateAction<string>>;\n};\n\ntype 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 multiselect,\n setTextValue,\n}: Props): ReturnedProps => {\n const currentIndex: number = focusedPath?.[focusedPath.length - 1] || 0;\n const currentLength: number = pathMap.get(path?.[focusedPath.length - 1]) || 0;\n\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.key) {\n case keys.ArrowUp: {\n if (focusedPath.length) {\n if (currentIndex > 0) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n break;\n }\n\n case keys.ArrowDown: {\n if (focusedPath.length) {\n if (currentIndex + 1 < currentLength) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n break;\n }\n\n case keys.ArrowLeft: {\n if (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n\n if (focusedPath.length) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n } else {\n dispatchFocusedPath({ type: 'return_prev_focus' });\n }\n }\n\n if (path.length === 1) {\n handleToggle(false);\n }\n }\n\n break;\n }\n\n case keys.ArrowRight: {\n if (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n\n if (!focusedPath.length) {\n break;\n }\n\n const currentItem = getItemByFocused(focusedPath, focusedToValueMap);\n\n console.log('currentItem', currentItem, focusedPath, focusedToValueMap);\n\n if (currentItem?.items) {\n if (path.length > focusedPath.length) {\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n } else {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n }\n }\n }\n\n break;\n }\n\n case keys.Backspace: {\n if (!multiselect) break;\n\n break;\n }\n\n // case keys.Space: {\n // event.preventDefault();\n //\n // const currentItem = getItemByFocused(focusedPath, focusedToValueMap);\n //\n // if (!path[0]) {\n // dispatchPath({ type: 'opened_first_level' });\n // dispatchFocusedPath({ type: 'set_initial_focus' });\n // break;\n // }\n //\n // if (!currentItem || currentItem?.disabled) {\n // break;\n // }\n //\n // handlePressDown(currentItem);\n //\n // break;\n // }\n\n case keys.Enter: {\n event.preventDefault();\n\n const currentItem = getItemByFocused(focusedPath, focusedToValueMap)!;\n\n if (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 // if (path.length > focusedPath.length) {\n // dispatchFocusedPath({ type: 'add_focus', value: 0 });\n // } else {\n // dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n // }\n //\n // break;\n // }\n\n if (currentItem) {\n handlePressDown(currentItem);\n }\n\n break;\n }\n\n case keys.Tab: {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n handleToggle(false);\n setTextValue('');\n\n break;\n }\n\n case keys.Escape: {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n handleToggle(false);\n\n break;\n }\n\n case keys.Home: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\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 (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\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","getItemByFocused","focusedPath","focusedToValueMap","focusedPathAsString","reduce","acc","n","concat","replace","get","useKeyNavigation","_ref","dispatchFocusedPath","path","dispatchPath","pathMap","handleToggle","handlePressDown","multiselect","setTextValue","currentIndex","length","currentLength","onKeyDown","event","key","type","value","stopPropagation","preventDefault","currentItem","console","log","items","toString","disabled"],"mappings":"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"}
1
+ {"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../../src/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { KeyboardEvent, Dispatch } from 'react';\nimport React from 'react';\n\nimport { PathAction, PathState, FocusedPathAction, FocusedPathState } from '../reducers';\nimport { ComboboxProps } from '../Combobox.types';\nimport type { ItemOptionTransformed } from '../ui/Inner/ui/Item/Item.types';\n\nimport { PathMapType, FocusedToValueMapType } from './getPathMaps';\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\nexport const getItemByFocused = (focusedPath: FocusedPathState, focusedToValueMap: FocusedToValueMapType) => {\n const focusedPathAsString = focusedPath.reduce((acc, n) => `${acc}/${n}`, '').replace(/^(\\/)/, '');\n\n return focusedToValueMap.get(focusedPathAsString);\n};\n\ntype Props = {\n focusedPath: FocusedPathState;\n dispatchFocusedPath: Dispatch<FocusedPathAction>;\n path: PathState;\n dispatchPath: Dispatch<PathAction>;\n pathMap: PathMapType;\n focusedToValueMap: FocusedToValueMapType;\n handleListToggle: (opened: boolean) => void;\n handlePressDown: (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => void;\n multiselect: ComboboxProps['multiple'];\n setTextValue: React.Dispatch<React.SetStateAction<string>>;\n};\n\ntype 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 handleListToggle,\n handlePressDown,\n multiselect,\n setTextValue,\n}: Props): ReturnedProps => {\n const currentIndex: number = focusedPath?.[focusedPath.length - 1] || 0;\n const currentLength: number = pathMap.get(path?.[focusedPath.length - 1]) || 0;\n\n const onKeyDown = (event: KeyboardEvent<HTMLElement>) => {\n switch (event.key) {\n case keys.ArrowUp: {\n if (focusedPath.length) {\n if (currentIndex > 0) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 handleListToggle(true);\n }\n\n if (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n break;\n }\n\n case keys.ArrowDown: {\n if (focusedPath.length) {\n if (currentIndex + 1 < currentLength) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 handleListToggle(true);\n }\n\n if (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n break;\n }\n\n case keys.ArrowLeft: {\n if (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n\n if (focusedPath.length) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n } else {\n dispatchFocusedPath({ type: 'return_prev_focus' });\n }\n }\n\n if (path.length === 1) {\n handleListToggle(false);\n }\n }\n\n break;\n }\n\n case keys.ArrowRight: {\n if (path[0]) {\n event.stopPropagation();\n event.preventDefault();\n\n if (!focusedPath.length) {\n break;\n }\n\n const currentItem = getItemByFocused(focusedPath, focusedToValueMap);\n\n console.log('currentItem', currentItem, focusedPath, focusedToValueMap);\n\n if (currentItem?.items) {\n if (path.length > focusedPath.length) {\n dispatchFocusedPath({ type: 'add_focus', value: 0 });\n } else {\n dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n }\n }\n }\n\n break;\n }\n\n case keys.Backspace: {\n if (!multiselect) break;\n\n break;\n }\n\n // case keys.Space: {\n // event.preventDefault();\n //\n // const currentItem = getItemByFocused(focusedPath, focusedToValueMap);\n //\n // if (!path[0]) {\n // dispatchPath({ type: 'opened_first_level' });\n // dispatchFocusedPath({ type: 'set_initial_focus' });\n // break;\n // }\n //\n // if (!currentItem || currentItem?.disabled) {\n // break;\n // }\n //\n // handlePressDown(currentItem);\n //\n // break;\n // }\n\n case keys.Enter: {\n event.preventDefault();\n\n const currentItem = getItemByFocused(focusedPath, focusedToValueMap)!;\n\n if (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 // if (path.length > focusedPath.length) {\n // dispatchFocusedPath({ type: 'add_focus', value: 0 });\n // } else {\n // dispatchPath({ type: 'added_next_level', value: currentItem.value.toString() });\n // }\n //\n // break;\n // }\n\n if (currentItem) {\n handlePressDown(currentItem);\n }\n\n break;\n }\n\n case keys.Tab: {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n handleListToggle(false);\n setTextValue('');\n\n break;\n }\n\n case keys.Escape: {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n handleListToggle(false);\n\n break;\n }\n\n case keys.Home: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\n dispatchFocusedPath({ type: 'change_last_focus', value: 0 });\n } else {\n dispatchPath({ type: 'opened_first_level' });\n dispatchFocusedPath({ type: 'set_initial_focus' });\n\n handleListToggle(true);\n }\n\n break;\n }\n\n case keys.End: {\n if (path[0]) {\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\n }\n\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 handleListToggle(true);\n }\n\n break;\n }\n\n case keys.PageUp: {\n if (!path[0]) {\n break;\n }\n\n if (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\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 (path.length > focusedPath.length) {\n dispatchPath({ type: 'removed_last_level' });\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","getItemByFocused","focusedPath","focusedToValueMap","focusedPathAsString","reduce","acc","n","concat","replace","get","useKeyNavigation","_ref","dispatchFocusedPath","path","dispatchPath","pathMap","handleListToggle","handlePressDown","multiselect","setTextValue","currentIndex","length","currentLength","onKeyDown","event","key","type","value","stopPropagation","preventDefault","currentItem","console","log","items","toString","disabled"],"mappings":"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"}
@@ -42,7 +42,7 @@ var Item = function Item(_ref) {
42
42
  renderItem = _useContext.renderItem,
43
43
  valueToItemMap = _useContext.valueToItemMap,
44
44
  treeId = _useContext.treeId;
45
- var isDisabledClassName = disabled ? Combobox_tokens.classes.dropdownItemIsDisabled : undefined;
45
+ var disabledClassName = disabled ? Combobox_tokens.classes.dropdownItemIsDisabled : undefined;
46
46
  var focusedClass = currentLevel === focusedPath.length - 1 && index$1 === (focusedPath === null || focusedPath === void 0 ? void 0 : focusedPath[currentLevel]) ? Combobox_tokens.classes.dropdownItemIsFocused : undefined;
47
47
  var activeClass = value === (path === null || path === void 0 ? void 0 : path[currentLevel + 1]) ? Combobox_tokens.classes.dropdownItemIsActive : undefined;
48
48
  useDidMountEffect.useDidMountEffect(function () {
@@ -67,7 +67,7 @@ var Item = function Item(_ref) {
67
67
  handleItemClick(item, e);
68
68
  };
69
69
  return /*#__PURE__*/React.createElement(Item_styles.Wrapper, {
70
- className: index.cx(isDisabledClassName, focusedClass, activeClass),
70
+ className: index.cx(disabledClassName, focusedClass, activeClass),
71
71
  id: getItemId.getItemId(treeId, value),
72
72
  ref: ref,
73
73
  onClick: handleClick,
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sources":["../../../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Combobox.tokens';\nimport { cx, isEmpty } from '../../../../../../../utils';\nimport { IconDisclosureRightCentered, IconDone } from '../../../../../../_Icon';\nimport { Context } from '../../../../Combobox';\nimport { useDidMountEffect } from '../../../../../../../hooks';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledWrapper,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n StyledCheckbox,\n IconWrapper,\n StyledIndicator,\n StyledCheckboxWrapper,\n StyledCell,\n} 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 multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n } = useContext(Context);\n\n const isDisabledClassName = disabled ? classes.dropdownItemIsDisabled : undefined;\n\n const focusedClass =\n currentLevel === focusedPath.length - 1 && index === focusedPath?.[currentLevel]\n ? classes.dropdownItemIsFocused\n : undefined;\n const activeClass = value === path?.[currentLevel + 1] ? classes.dropdownItemIsActive : undefined;\n\n useDidMountEffect(() => {\n if (focusedClass && ref?.current) {\n ref.current.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n }\n }, [focusedClass]);\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (disabled) {\n e.stopPropagation();\n return;\n }\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n className={cx(isDisabledClassName, focusedClass, activeClass)}\n id={getItemId(treeId, value)}\n ref={ref}\n onClick={handleClick}\n variant={variant}\n role=\"treeitem\"\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n aria-selected={Boolean(checked.get(item.value))}\n >\n <IconWrapper variant={variant}>\n {multiple && (\n <StyledCheckboxWrapper onClick={(e) => e.stopPropagation()}>\n <StyledCheckbox\n 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 {!multiple && checked.get(item.value) === 'dot' && <StyledIndicator size=\"s\" view=\"default\" />}\n\n {!multiple && checked.get(item.value) === 'done' && (\n <IconDone size={sizeToIconSize(size, variant)} color=\"inherit\" />\n )}\n </IconWrapper>\n\n {renderItem ? (\n <StyledText>{renderItem(valueToItemMap.get(value)!)}</StyledText>\n ) : (\n <StyledWrapper>\n <StyledCell\n view=\"default\"\n size=\"l\"\n contentLeft={contentLeft}\n contentRight={contentRight}\n alignContentLeft=\"center\"\n alignContentRight=\"center\"\n title={label}\n />\n </StyledWrapper>\n )}\n\n {!isEmpty(item.items) && (\n <DisclosureIconWrapper>\n <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","multiple","size","handleCheckboxChange","handleItemClick","variant","renderItem","valueToItemMap","treeId","isDisabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useDidMountEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","className","cx","id","getItemId","onClick","role","Boolean","get","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","indeterminate","onChange","selectItemCheckbox","_StyledIndicator","StyledIndicator","view","IconDone","sizeToIconSize","color","StyledText","StyledWrapper","StyledCell","alignContentLeft","alignContentRight","title","isEmpty","items","DisclosureIconWrapper","IconDisclosureRightCentered"],"mappings":"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"}
1
+ {"version":3,"file":"Item.js","sources":["../../../../../../../../src/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.tsx"],"sourcesContent":["import React, { useRef, FC, useContext } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Combobox.tokens';\nimport { cx, isEmpty } from '../../../../../../../utils';\nimport { IconDisclosureRightCentered, IconDone } from '../../../../../../_Icon';\nimport { Context } from '../../../../Combobox';\nimport { useDidMountEffect } from '../../../../../../../hooks';\n\nimport { ItemProps } from './Item.types';\nimport {\n StyledWrapper,\n StyledText,\n Wrapper,\n DisclosureIconWrapper,\n StyledCheckbox,\n IconWrapper,\n StyledIndicator,\n StyledCheckboxWrapper,\n StyledCell,\n} 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 multiple,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n valueToItemMap,\n treeId,\n } = useContext(Context);\n\n const disabledClassName = disabled ? classes.dropdownItemIsDisabled : undefined;\n\n const focusedClass =\n currentLevel === focusedPath.length - 1 && index === focusedPath?.[currentLevel]\n ? classes.dropdownItemIsFocused\n : undefined;\n const activeClass = value === path?.[currentLevel + 1] ? classes.dropdownItemIsActive : undefined;\n\n useDidMountEffect(() => {\n if (focusedClass && ref?.current) {\n ref.current.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n }\n }, [focusedClass]);\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (disabled) return;\n\n e.stopPropagation();\n\n handleCheckboxChange(item);\n };\n\n const handleClick = (e: React.MouseEvent<HTMLElement>) => {\n if (disabled) {\n e.stopPropagation();\n return;\n }\n\n handleItemClick(item, e);\n };\n\n return (\n <Wrapper\n className={cx(disabledClassName, focusedClass, activeClass)}\n id={getItemId(treeId, value)}\n ref={ref}\n onClick={handleClick}\n variant={variant}\n role=\"treeitem\"\n aria-controls={ariaControls}\n aria-expanded={ariaExpanded}\n aria-level={ariaLevel}\n aria-label={ariaLabel}\n aria-selected={Boolean(checked.get(item.value))}\n >\n <IconWrapper variant={variant}>\n {multiple && (\n <StyledCheckboxWrapper onClick={(e) => e.stopPropagation()}>\n <StyledCheckbox\n 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 {!multiple && checked.get(item.value) === 'dot' && <StyledIndicator size=\"s\" view=\"default\" />}\n\n {!multiple && checked.get(item.value) === 'done' && (\n <IconDone size={sizeToIconSize(size, variant)} color=\"inherit\" />\n )}\n </IconWrapper>\n\n {renderItem ? (\n <StyledText>{renderItem(valueToItemMap.get(value)!)}</StyledText>\n ) : (\n <StyledWrapper>\n <StyledCell\n view=\"default\"\n size=\"l\"\n contentLeft={contentLeft}\n contentRight={contentRight}\n alignContentLeft=\"center\"\n alignContentRight=\"center\"\n title={label}\n />\n </StyledWrapper>\n )}\n\n {!isEmpty(item.items) && (\n <DisclosureIconWrapper>\n <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","multiple","size","handleCheckboxChange","handleItemClick","variant","renderItem","valueToItemMap","treeId","disabledClassName","classes","dropdownItemIsDisabled","undefined","focusedClass","length","dropdownItemIsFocused","activeClass","dropdownItemIsActive","useDidMountEffect","current","scrollIntoView","behavior","block","inline","handleChange","e","stopPropagation","handleClick","React","createElement","Wrapper","className","cx","id","getItemId","onClick","role","Boolean","get","IconWrapper","StyledCheckboxWrapper","StyledCheckbox","indeterminate","onChange","selectItemCheckbox","_StyledIndicator","StyledIndicator","view","IconDone","sizeToIconSize","color","StyledText","StyledWrapper","StyledCell","alignContentLeft","alignContentRight","title","isEmpty","items","DisclosureIconWrapper","IconDisclosureRightCentered"],"mappings":"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"}