@salutejs/plasma-new-hope 0.336.0-canary.2220.17591054284.0 → 0.336.0-canary.2220.17654170001.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.css +2 -1
  2. package/cjs/components/Combobox/ComboboxNew/Combobox.css +2 -1
  3. package/cjs/components/Combobox/ComboboxNew/Combobox.js +39 -12
  4. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  5. package/cjs/components/DatePicker/RangeDate/RangeDate.css +2 -1
  6. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -1
  7. package/cjs/components/DatePicker/SingleDate/SingleDate.css +2 -1
  8. package/cjs/components/Pagination/Pagination.css +2 -1
  9. package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +2 -1
  10. package/cjs/components/Range/Range.css +2 -1
  11. package/cjs/components/Select/Select.css +2 -1
  12. package/cjs/components/Select/Select.js +24 -11
  13. package/cjs/components/Select/Select.js.map +1 -1
  14. package/cjs/components/Select/hooks/usePathMaps.js +1 -4
  15. package/cjs/components/Select/hooks/usePathMaps.js.map +1 -1
  16. package/cjs/components/Select/ui/Target/Target.css +2 -1
  17. package/cjs/components/Select/ui/Target/Target.js +0 -2
  18. package/cjs/components/Select/ui/Target/Target.js.map +1 -1
  19. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +2 -1
  20. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -49
  21. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  22. package/cjs/components/Slider/Slider.css +2 -1
  23. package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +2 -1
  24. package/cjs/components/Table/Table.css +2 -1
  25. package/cjs/components/Table/ui/Cell/Cell.css +2 -1
  26. package/cjs/components/Table/ui/EditableCell/EditableCell.css +2 -1
  27. package/cjs/components/Table/ui/HeadCell/HeadCell.css +2 -1
  28. package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +2 -1
  29. package/cjs/components/TextField/TextField.js +7 -2
  30. package/cjs/components/TextField/TextField.js.map +1 -1
  31. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.css +25 -21
  32. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +15 -3
  33. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js.map +1 -1
  34. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +1 -1
  35. package/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js.map +1 -1
  36. package/{es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_119gtz1.css → cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_y9tozi.css} +1 -0
  37. package/cjs/engines/common.js +11 -1
  38. package/cjs/engines/common.js.map +1 -1
  39. package/cjs/index.css +2 -1
  40. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +36 -9
  41. package/emotion/cjs/components/Select/Select.js +27 -9
  42. package/emotion/cjs/components/Select/hooks/usePathMaps.js +2 -5
  43. package/emotion/cjs/components/Select/ui/Target/Target.js +1 -2
  44. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -71
  45. package/emotion/cjs/components/Select/utils/index.js +0 -4
  46. package/emotion/cjs/components/TextField/TextField.js +7 -3
  47. package/emotion/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
  48. package/emotion/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +22 -5
  49. package/emotion/cjs/engines/common.js +14 -1
  50. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +36 -9
  51. package/emotion/es/components/Select/Select.js +27 -9
  52. package/emotion/es/components/Select/hooks/usePathMaps.js +2 -5
  53. package/emotion/es/components/Select/ui/Target/Target.js +1 -2
  54. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -72
  55. package/emotion/es/components/Select/utils/index.js +0 -1
  56. package/emotion/es/components/TextField/TextField.js +7 -3
  57. package/emotion/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
  58. package/emotion/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +11 -2
  59. package/emotion/es/engines/common.js +14 -1
  60. package/es/components/Autocomplete/Autocomplete.css +2 -1
  61. package/es/components/Combobox/ComboboxNew/Combobox.css +2 -1
  62. package/es/components/Combobox/ComboboxNew/Combobox.js +39 -12
  63. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  64. package/es/components/DatePicker/RangeDate/RangeDate.css +2 -1
  65. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +2 -1
  66. package/es/components/DatePicker/SingleDate/SingleDate.css +2 -1
  67. package/es/components/Pagination/Pagination.css +2 -1
  68. package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +2 -1
  69. package/es/components/Range/Range.css +2 -1
  70. package/es/components/Select/Select.css +2 -1
  71. package/es/components/Select/Select.js +24 -11
  72. package/es/components/Select/Select.js.map +1 -1
  73. package/es/components/Select/hooks/usePathMaps.js +1 -4
  74. package/es/components/Select/hooks/usePathMaps.js.map +1 -1
  75. package/es/components/Select/ui/Target/Target.css +2 -1
  76. package/es/components/Select/ui/Target/Target.js +0 -2
  77. package/es/components/Select/ui/Target/Target.js.map +1 -1
  78. package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +2 -1
  79. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -50
  80. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  81. package/es/components/Slider/Slider.css +2 -1
  82. package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +2 -1
  83. package/es/components/Table/Table.css +2 -1
  84. package/es/components/Table/ui/Cell/Cell.css +2 -1
  85. package/es/components/Table/ui/EditableCell/EditableCell.css +2 -1
  86. package/es/components/Table/ui/HeadCell/HeadCell.css +2 -1
  87. package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +2 -1
  88. package/es/components/TextField/TextField.js +7 -2
  89. package/es/components/TextField/TextField.js.map +1 -1
  90. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.css +25 -21
  91. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +15 -3
  92. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js.map +1 -1
  93. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +1 -1
  94. package/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js.map +1 -1
  95. package/{cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_119gtz1.css → es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles_y9tozi.css} +1 -0
  96. package/es/engines/common.js +12 -2
  97. package/es/engines/common.js.map +1 -1
  98. package/es/index.css +2 -1
  99. package/package.json +2 -2
  100. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +36 -9
  101. package/styled-components/cjs/components/Select/Select.js +27 -9
  102. package/styled-components/cjs/components/Select/hooks/usePathMaps.js +2 -5
  103. package/styled-components/cjs/components/Select/ui/Target/Target.js +1 -2
  104. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +32 -71
  105. package/styled-components/cjs/components/Select/utils/index.js +0 -4
  106. package/styled-components/cjs/components/TextField/TextField.js +6 -2
  107. package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
  108. package/styled-components/cjs/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +31 -4
  109. package/styled-components/cjs/engines/common.js +14 -1
  110. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +36 -9
  111. package/styled-components/es/components/Select/Select.js +27 -9
  112. package/styled-components/es/components/Select/hooks/usePathMaps.js +2 -5
  113. package/styled-components/es/components/Select/ui/Target/Target.js +1 -2
  114. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +33 -72
  115. package/styled-components/es/components/Select/utils/index.js +0 -1
  116. package/styled-components/es/components/TextField/TextField.js +6 -2
  117. package/styled-components/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.js +13 -4
  118. package/styled-components/es/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.js +20 -1
  119. package/styled-components/es/engines/common.js +14 -1
  120. package/styled-components/es/examples/components/Combobox/Combobox.js +7 -0
  121. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  122. package/types/components/NumberFormat/NumberFormat.d.ts.map +1 -1
  123. package/types/components/NumberFormat/NumberFormat.types.d.ts +1 -1
  124. package/types/components/Select/Select.d.ts.map +1 -1
  125. package/types/components/Select/hooks/usePathMaps.d.ts +1 -2
  126. package/types/components/Select/hooks/usePathMaps.d.ts.map +1 -1
  127. package/types/components/Select/ui/Target/Target.d.ts +0 -1
  128. package/types/components/Select/ui/Target/Target.d.ts.map +1 -1
  129. package/types/components/Select/ui/Target/Target.types.d.ts +1 -2
  130. package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
  131. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
  132. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts +1 -1
  133. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts.map +1 -1
  134. package/types/components/Select/utils/index.d.ts +0 -1
  135. package/types/components/Select/utils/index.d.ts.map +1 -1
  136. package/types/components/TextField/TextField.d.ts.map +1 -1
  137. package/types/components/TextField/TextField.types.d.ts +2 -2
  138. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.d.ts +2 -0
  139. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.d.ts.map +1 -1
  140. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.d.ts +1 -0
  141. package/types/components/TextField/ui/TextFieldChipNew/TextFieldChipNew.styles.d.ts.map +1 -1
  142. package/types/engines/common.d.ts.map +1 -1
  143. package/types/examples/components/NumberFormat/NumberFormat.d.ts.map +1 -1
  144. package/cjs/components/Select/utils/getRemovedElement.js +0 -17
  145. package/cjs/components/Select/utils/getRemovedElement.js.map +0 -1
  146. package/emotion/cjs/components/Select/utils/getRemovedElement.js +0 -20
  147. package/emotion/es/components/Select/utils/getRemovedElement.js +0 -10
  148. package/es/components/Select/utils/getRemovedElement.js +0 -13
  149. package/es/components/Select/utils/getRemovedElement.js.map +0 -1
  150. package/styled-components/cjs/components/Select/utils/getRemovedElement.js +0 -20
  151. package/styled-components/es/components/Select/utils/getRemovedElement.js +0 -10
  152. package/types/components/Select/utils/getRemovedElement.d.ts +0 -2
  153. package/types/components/Select/utils/getRemovedElement.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { RootProps } from 'src/engines';\nimport { isEmpty, safeUseId } from 'src/utils';\nimport { useOutsideClick } from 'src/hooks';\n\nimport type { HintProps } from '../TextField/TextField.types';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target, VirtualList, SelectAll } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base, ListWrapper } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n // eslint-disable-block @typescript-eslint/ban-ts-comment\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n readOnly = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n onScroll,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n virtual = false,\n onToggle,\n chipType,\n multiselect,\n mode = 'default',\n // @ts-ignore\n _offset,\n\n // Извлекаем пропсы для required и hint, чтобы они не попадали в DOM.\n // @ts-ignore\n required,\n // @ts-ignore\n requiredPlacement,\n // @ts-ignore\n hasRequiredIndicator,\n // @ts-ignore\n optional,\n // @ts-ignore\n hintText,\n // @ts-ignore\n hintTrigger,\n // @ts-ignore\n hintView,\n // @ts-ignore\n hintSize,\n // @ts-ignore\n hintTargetPlacement,\n // @ts-ignore\n hintPlacement,\n // @ts-ignore\n hintWidth,\n // @ts-ignore\n hintHasArrow,\n // @ts-ignore\n hasHint,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap] = usePathMaps(\n transformedItems,\n );\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const listWrapperRef = useRef<HTMLDivElement>(null);\n const view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView(status, outerView);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required,\n requiredPlacement,\n hasRequiredIndicator,\n optional,\n } as RequiredProps);\n\n // Собираем объект с пропсами для hint и прокидываем их напрямую в компонент Textfield.\n const hintProps =\n props.target === 'button-like'\n ? undefined\n : ({\n hintText,\n hintTrigger,\n hintView,\n hintSize,\n hintTargetPlacement,\n hintPlacement,\n hintWidth,\n hintHasArrow,\n } as HintProps);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false);\n }\n }, floatingPopoverRef);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n item?: MergedDropdownNodeTransformed | null,\n ) => {\n if (props.onChange) {\n // Условие для отправки если компонент используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если компонент используется с формой.\n // Убрать условие \"typeof ref === 'function'\" в PLASMA 2.0\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any, item || null);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value)) {\n checkedCopy.set(item.value, true);\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n } else {\n checkedCopy.set(item.value, false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string | number> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value);\n }\n });\n\n // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n // Закрываем список, если элемент уже выбран.\n if (mode === 'radio' && isCurrentChecked) {\n return;\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (onScroll) {\n onScroll(e);\n }\n\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n id={id}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n offset={_offset}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n readOnly={readOnly}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n hintProps={hintProps}\n />\n )}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n {...(rest as any)}\n >\n <ListWrapper ref={listWrapperRef} listWidth={listWidth}>\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={virtual ? undefined : handleScroll}\n ref={targetRef}\n virtual={virtual}\n >\n {beforeList}\n\n {props.multiselect && props.selectAllOptions && (\n // TODO: #2004\n <SelectAll selectAllOptions={props.selectAllOptions} variant={variant} />\n )}\n\n {virtual ? (\n <VirtualList\n items={transformedItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\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 portal={listWrapperRef}\n />\n ))\n )}\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","_props$readOnly","readOnly","outerView","view","size","listHeight","listMaxHeight","listWidth","contentLeft","onScrollBottom","onScroll","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","_props$virtual","virtual","onToggle","_props$mode","mode","_offset","required","requiredPlacement","hasRequiredIndicator","optional","hintText","hintTrigger","hintView","hintSize","hintTargetPlacement","hintPlacement","hintWidth","hintHasArrow","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","labelToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","listWrapperRef","getView","requiredProps","hintProps","targetRef","useOutsideClick","type","onChange","newValue","item","Array","isArray","_typeof","handleListToggle","opened","handleCheckboxChange","checkedCopy","Map","get","set","updateDescendants","updateAncestors","newValues","forEach","key","push","val","has","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","offset","referenceRef","Target","selectProps","inputWrapperRef","isInner","ListWrapper","Ul","role","concat","selectAllOptions","SelectAll","VirtualList","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useState,\n useReducer,\n useMemo,\n useLayoutEffect,\n useRef,\n ChangeEvent,\n ForwardedRef,\n} from 'react';\nimport { RootProps } from 'src/engines';\nimport { isEmpty, safeUseId } from 'src/utils';\nimport { useOutsideClick } from 'src/hooks';\n\nimport type { HintProps } from '../TextField/TextField.types';\n\nimport { useKeyNavigation, getItemByFocused } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, getView } from './utils';\nimport { Inner, Target, VirtualList, SelectAll } from './ui';\nimport { pathReducer, focusedPathReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { Ul, base, ListWrapper } from './Select.styles';\nimport type { MergedSelectProps, RequiredProps } from './Select.types';\nimport type { MergedDropdownNodeTransformed } from './ui/Inner/ui/Item/Item.types';\nimport { FloatingPopover } from './FloatingPopover';\nimport { SelectNative } from './ui/SelectNative/SelectNative';\nimport { Context } from './Select.context';\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<MergedSelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, MergedSelectProps>((props, ref) => {\n const {\n // eslint-disable-block @typescript-eslint/ban-ts-comment\n id,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement,\n placeholder,\n helperText,\n disabled = false,\n readOnly = false,\n view: outerView,\n size,\n listOverflow,\n listHeight,\n listMaxHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n onScroll,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n status,\n onItemSelect,\n separator,\n closeAfterSelect: outerCloseAfterSelect,\n isTargetAmount,\n beforeList,\n afterList,\n zIndex,\n name,\n defaultValue,\n virtual = false,\n onToggle,\n chipType,\n multiselect,\n mode = 'default',\n // @ts-ignore\n _offset,\n\n // Извлекаем пропсы для required и hint, чтобы они не попадали в DOM.\n // @ts-ignore\n required,\n // @ts-ignore\n requiredPlacement,\n // @ts-ignore\n hasRequiredIndicator,\n // @ts-ignore\n optional,\n // @ts-ignore\n hintText,\n // @ts-ignore\n hintTrigger,\n // @ts-ignore\n hintView,\n // @ts-ignore\n hintSize,\n // @ts-ignore\n hintTargetPlacement,\n // @ts-ignore\n hintPlacement,\n // @ts-ignore\n hintWidth,\n // @ts-ignore\n hintHasArrow,\n // @ts-ignore\n hasHint,\n ...rest\n } = props;\n const transformedItems = useMemo(() => initialItemsTransform(items || []), [items]);\n\n // Создаем структуры для быстрой работы с деревом\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [internalValue, setInternalValue] = useState<string | number | Array<string | number>>(\n props.multiselect ? [] : '',\n );\n\n const value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;\n\n const floatingPopoverRef = useRef<HTMLDivElement>(null);\n\n // Состояния дерева элементов\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const isCurrentListOpen = Boolean(path[0]);\n const activeDescendantItemValue = getItemByFocused(focusedPath, focusedToValueMap)?.value.toString() || '';\n const closeAfterSelect = outerCloseAfterSelect ?? !props.multiselect;\n const treeId = safeUseId();\n const listWrapperRef = useRef<HTMLDivElement>(null);\n const view = target === 'textfield-like' && (disabled || readOnly) ? 'default' : getView(status, outerView);\n\n // Собираем объект с пропсами для required и прокидываем их напрямую в компонент Textfield.\n const requiredProps =\n props.target === 'button-like'\n ? undefined\n : ({\n required,\n requiredPlacement,\n hasRequiredIndicator,\n optional,\n } as RequiredProps);\n\n // Собираем объект с пропсами для hint и прокидываем их напрямую в компонент Textfield.\n const hintProps =\n props.target === 'button-like'\n ? undefined\n : ({\n hintText,\n hintTrigger,\n hintView,\n hintSize,\n hintTargetPlacement,\n hintPlacement,\n hintWidth,\n hintHasArrow,\n } as HintProps);\n\n const targetRef = useOutsideClick<HTMLUListElement>(() => {\n if (!isCurrentListOpen) {\n return;\n }\n\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n\n if (onToggle) {\n onToggle(false);\n }\n }, floatingPopoverRef);\n\n const onChange = (\n newValue?: string | number | Array<string | number> | ChangeEvent<HTMLSelectElement> | null,\n item?: MergedDropdownNodeTransformed | null,\n ) => {\n if (props.onChange) {\n // Условие для отправки если компонент используется без формы.\n if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {\n props.onChange(newValue as any, item || null);\n }\n\n // Условие для отправки если компонент используется с формой.\n // Убрать условие \"typeof ref === 'function'\" в PLASMA 2.0\n if (props.name && typeof newValue === 'object' && !Array.isArray(newValue)) {\n props.onChange(newValue as any, item || null);\n }\n }\n\n // Условие для изменения внутреннего значения (только если newValue строка или массив строк).\n if (typeof newValue === 'string' || Array.isArray(newValue)) {\n setInternalValue(newValue);\n }\n };\n\n const handleListToggle = (opened: boolean) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n }\n\n if (onToggle) {\n onToggle(opened);\n }\n };\n\n const handleCheckboxChange = (item: MergedDropdownNodeTransformed) => {\n if (!props.multiselect) {\n return;\n }\n\n const checkedCopy = new Map(checked);\n\n switch (checkedCopy.get(item.value)) {\n // Если чекбокс в состоянии indeterminate\n case 'indeterminate': {\n // checkedCopy.set(item.value, true); ??\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n break;\n }\n // Если чекбокс в состоянии checked\n case true: {\n updateDescendants(item, checkedCopy, false, valueToItemMap);\n checkedCopy.set(item.value, false);\n break;\n }\n // Если чекбокс в состоянии unchecked\n case false: {\n updateDescendants(item, checkedCopy, true, valueToItemMap);\n checkedCopy.set(item.value, true);\n break;\n }\n default: {\n break;\n }\n }\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 // Оставляем values, которых нет в items.\n if (Array.isArray(value)) {\n value.forEach((val: string) => {\n if (!valueToItemMap.has(val)) {\n newValues.push(val);\n }\n });\n }\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n if (onChange) {\n onChange(newValues, item);\n }\n };\n\n const handleItemClick = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (props.multiselect) {\n handleCheckboxChange(item);\n return;\n }\n\n if (e) {\n e.stopPropagation();\n }\n\n const isCurrentChecked = checked.get(item.value);\n\n if (closeAfterSelect) {\n dispatchPath({ type: 'reset' });\n dispatchFocusedPath({ type: 'reset' });\n }\n\n // Закрываем список, если элемент уже выбран.\n if (mode === 'radio' && isCurrentChecked) {\n return;\n }\n\n if (onChange) {\n onChange(isCurrentChecked ? '' : item.value, item);\n }\n\n if (onItemSelect) {\n onItemSelect(item, e!);\n }\n };\n\n const handlePressDown = (item: MergedDropdownNodeTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (props.multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (onScroll) {\n onScroll(e);\n }\n\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleListToggle,\n handlePressDown,\n });\n\n // В данном эффекте мы следим за изменениями value снаружи и вносим коррективы в дерево чекбоксов.\n // Пример: когда юзер очистил value извне, тогда нужно пройтись по элементам и выключить все чекбоксы.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value) || typeof value === 'number') {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n // Только если value находится в items, т.к. value может и не существовать в items.\n if (valueToItemMap.has(val)) {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n }\n });\n } else {\n // Только если value находится в items, т.к. value может и не существовать в items.\n // eslint-disable-next-line no-lonely-if\n if (valueToItemMap.has(value)) {\n checkedCopy.set(value, 'done');\n updateSingleAncestors(valueToItemMap.get(value)!, checkedCopy, 'dot');\n }\n }\n }\n\n setChecked(checkedCopy);\n\n // В deps мы кладем именно outerValue и internalValue, а не просто value.\n // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.\n // А переменную, содержащую сложные типы данных, нельзя помещать в deps.\n }, [outerValue, internalValue, items]);\n\n useLayoutEffect(() => {\n if (defaultValue) {\n setInternalValue(defaultValue as string | string[]);\n }\n }, [defaultValue]);\n\n return (\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n id={id}\n {...(rest as any)}\n >\n {name && (\n <SelectNative\n items={valueToItemMap}\n name={name}\n value={internalValue}\n multiselect={props.multiselect}\n onChange={onChange}\n onSetValue={setInternalValue}\n ref={ref as ForwardedRef<HTMLButtonElement>}\n />\n )}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect: props.multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n treeId,\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n // eslint-disable-next-line no-underscore-dangle\n _checkboxAppearance: (rest as any)._checkboxAppearance,\n }}\n >\n <FloatingPopover\n ref={floatingPopoverRef}\n opened={isCurrentListOpen}\n onToggle={handleListToggle}\n placement={placement}\n portal={portal}\n listWidth={listWidth}\n offset={_offset}\n target={(referenceRef) => (\n <Target\n ref={name ? null : ref}\n value={value}\n opened={isCurrentListOpen}\n valueToItemMap={valueToItemMap}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n readOnly={readOnly}\n renderValue={renderValue}\n selectProps={props}\n inputWrapperRef={referenceRef as React.MutableRefObject<HTMLDivElement>}\n multiselect={props.multiselect}\n view={view}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n isTargetAmount={isTargetAmount}\n onChange={onChange}\n chipView={chipView}\n separator={separator}\n requiredProps={requiredProps}\n hintProps={hintProps}\n />\n )}\n zIndex={zIndex}\n isInner={false}\n >\n <Root\n view={view}\n size={size}\n labelPlacement={labelPlacement}\n chipView={chipView}\n disabled={disabled}\n readOnly={readOnly}\n {...(rest as any)}\n >\n <ListWrapper ref={listWrapperRef} listWidth={listWidth}>\n <Ul\n role=\"tree\"\n id={`${treeId}_tree_level_1`}\n aria-multiselectable={Boolean(props.multiselect)}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={virtual ? undefined : handleScroll}\n ref={targetRef}\n virtual={virtual}\n >\n {beforeList}\n\n {props.multiselect && props.selectAllOptions && (\n // TODO: #2004\n <SelectAll selectAllOptions={props.selectAllOptions} variant={variant} />\n )}\n\n {virtual ? (\n <VirtualList\n items={transformedItems}\n listMaxHeight={listMaxHeight || listHeight}\n onScroll={onScroll}\n />\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 portal={listWrapperRef}\n />\n ))\n )}\n {afterList}\n </Ul>\n </ListWrapper>\n </Root>\n </FloatingPopover>\n </Context.Provider>\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {},\n defaults: {\n view: 'default',\n size: 'm',\n labelPlacement: 'outer',\n chipView: 'default',\n },\n};\n"],"names":["selectRoot","Root","forwardRef","props","ref","_getItemByFocused","id","outerValue","value","_props$target","target","items","_props$placement","placement","label","labelPlacement","placeholder","helperText","_props$disabled","disabled","_props$readOnly","readOnly","outerView","view","size","listHeight","listMaxHeight","listWidth","contentLeft","onScrollBottom","onScroll","chipView","_props$variant","variant","portal","renderValue","renderItem","status","onItemSelect","separator","outerCloseAfterSelect","closeAfterSelect","isTargetAmount","beforeList","afterList","zIndex","name","defaultValue","_props$virtual","virtual","onToggle","_props$mode","mode","_offset","required","requiredPlacement","hasRequiredIndicator","optional","hintText","hintTrigger","hintView","hintSize","hintTargetPlacement","hintPlacement","hintWidth","hintHasArrow","rest","_objectWithoutProperties","_excluded","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","_slicedToArray","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useState","useState","multiselect","_useState2","internalValue","setInternalValue","undefined","floatingPopoverRef","useRef","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useState3","_useState4","checked","setChecked","isCurrentListOpen","Boolean","activeDescendantItemValue","getItemByFocused","toString","treeId","safeUseId","listWrapperRef","getView","requiredProps","hintProps","targetRef","useOutsideClick","type","onChange","newValue","item","Array","isArray","_typeof","handleListToggle","opened","handleCheckboxChange","checkedCopy","Map","get","updateDescendants","set","newValues","forEach","key","push","val","has","handleItemClick","e","isEmpty","stopPropagation","isCurrentChecked","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","useLayoutEffect","_","updateAncestors","updateSingleAncestors","React","createElement","_extends","SelectNative","onSetValue","Context","Provider","_checkboxAppearance","FloatingPopover","offset","referenceRef","Target","selectProps","inputWrapperRef","isInner","ListWrapper","Ul","role","concat","selectAllOptions","SelectAll","VirtualList","map","index","Inner","currentLevel","selectConfig","tag","layout","base","variations","defaults"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA4BA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,IAAoE,EAAA;AAAA,EAAA,oBAC3FC,UAAU,CAAuC,UAACC,KAAK,EAAEC,GAAG,EAAK;AAAA,IAAA,IAAAC,iBAAA,CAAA;AAC7D,IAAA,IAEIC,EAAE,GAwEFH,KAAK,CAxELG,EAAE,CAAA;MACKC,UAAU,GAuEjBJ,KAAK,CAvELK,KAAK,CAAA;MACGC,aAAA,GAsERN,KAAK,CArELO,MAAM,CAAA;AAANA,MAAAA,MAAM,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,gBAAgB,GAAAA,aAAA,CAAA;MACzBE,KAAK,GAoELR,KAAK,CApELQ,KAAK,CAAA;MAAAC,gBAAA,GAoELT,KAAK,CAnELU,SAAS,CAAA;AAATA,MAAAA,SAAS,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,gBAAA,CAAA;MACpBE,KAAK,GAkELX,KAAK,CAlELW,KAAK,CAAA;MACLC,cAAc,GAiEdZ,KAAK,CAjELY,cAAc,CAAA;MACdC,WAAW,GAgEXb,KAAK,CAhELa,WAAW,CAAA;MACXC,UAAU,GA+DVd,KAAK,CA/DLc,UAAU,CAAA;MAAAC,eAAA,GA+DVf,KAAK,CA9DLgB,QAAQ,CAAA;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;MAAAE,eAAA,GA8DhBjB,KAAK,CA7DLkB,QAAQ,CAAA;AAARA,MAAAA,QAAQ,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,eAAA,CAAA;MACVE,SAAS,GA4DfnB,KAAK,CA5DLoB,IAAI,CAAA;MACJC,IAAI,GA2DJrB,KAAK,CA3DLqB,IAAI,CAAA;MAEJC,UAAU,GAyDVtB,KAAK,CAzDLsB,UAAU,CAAA;MACVC,aAAa,GAwDbvB,KAAK,CAxDLuB,aAAa,CAAA;MACbC,SAAS,GAuDTxB,KAAK,CAvDLwB,SAAS,CAAA;MACTC,WAAW,GAsDXzB,KAAK,CAtDLyB,WAAW,CAAA;MACXC,cAAc,GAqDd1B,KAAK,CArDL0B,cAAc,CAAA;MACdC,QAAQ,GAoDR3B,KAAK,CApDL2B,QAAQ,CAAA;MACRC,QAAQ,GAmDR5B,KAAK,CAnDL4B,QAAQ,CAAA;MAAAC,cAAA,GAmDR7B,KAAK,CAlDL8B,OAAO,CAAA;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,cAAA,CAAA;MAClBE,MAAM,GAiDN/B,KAAK,CAjDL+B,MAAM,CAAA;MACNC,WAAW,GAgDXhC,KAAK,CAhDLgC,WAAW,CAAA;MACXC,UAAU,GA+CVjC,KAAK,CA/CLiC,UAAU,CAAA;MACVC,MAAM,GA8CNlC,KAAK,CA9CLkC,MAAM,CAAA;MACNC,YAAY,GA6CZnC,KAAK,CA7CLmC,YAAY,CAAA;MACZC,SAAS,GA4CTpC,KAAK,CA5CLoC,SAAS,CAAA;MACSC,qBAAqB,GA2CvCrC,KAAK,CA3CLsC,gBAAgB,CAAA;MAChBC,cAAc,GA0CdvC,KAAK,CA1CLuC,cAAc,CAAA;MACdC,UAAU,GAyCVxC,KAAK,CAzCLwC,UAAU,CAAA;MACVC,SAAS,GAwCTzC,KAAK,CAxCLyC,SAAS,CAAA;MACTC,MAAM,GAuCN1C,KAAK,CAvCL0C,MAAM,CAAA;MACNC,IAAI,GAsCJ3C,KAAK,CAtCL2C,IAAI,CAAA;MACJC,YAAY,GAqCZ5C,KAAK,CArCL4C,YAAY,CAAA;MAAAC,cAAA,GAqCZ7C,KAAK,CApCL8C,OAAO,CAAA;AAAPA,MAAAA,OAAO,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,cAAA,CAAA;MACfE,QAAQ,GAmCR/C,KAAK,CAnCL+C,QAAQ,CAAA;MAEGC,WAAA,GAiCXhD,KAAK,CAhCLiD,IAAI,CAAA;AAAJA,MAAAA,IAAI,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,WAAA,CAAA;MAEhBE,OAAO,GA8BPlD,KAAK,CA9BLkD,OAAO,CAAA;MAIPC,QAAQ,GA0BRnD,KAAK,CA1BLmD,QAAQ,CAAA;MAERC,iBAAiB,GAwBjBpD,KAAK,CAxBLoD,iBAAiB,CAAA;MAEjBC,oBAAoB,GAsBpBrD,KAAK,CAtBLqD,oBAAoB,CAAA;MAEpBC,QAAQ,GAoBRtD,KAAK,CApBLsD,QAAQ,CAAA;MAERC,QAAQ,GAkBRvD,KAAK,CAlBLuD,QAAQ,CAAA;MAERC,WAAW,GAgBXxD,KAAK,CAhBLwD,WAAW,CAAA;MAEXC,QAAQ,GAcRzD,KAAK,CAdLyD,QAAQ,CAAA;MAERC,QAAQ,GAYR1D,KAAK,CAZL0D,QAAQ,CAAA;MAERC,mBAAmB,GAUnB3D,KAAK,CAVL2D,mBAAmB,CAAA;MAEnBC,aAAa,GAQb5D,KAAK,CARL4D,aAAa,CAAA;MAEbC,SAAS,GAMT7D,KAAK,CANL6D,SAAS,CAAA;MAETC,YAAY,GAIZ9D,KAAK,CAJL8D,YAAY,CAAA;MAGTC,IAAI,GAAAC,wBAAA,CACPhE,KAAK,EAAAiE,SAAA,EAAA;IACT,IAAMC,gBAAgB,GAAGC,OAAO,CAAC,YAAA;AAAA,MAAA,OAAMC,qBAAqB,CAAC5D,KAAK,IAAI,EAAE,CAAC,CAAA;KAAE,EAAA,CAACA,KAAK,CAAC,CAAC,CAAA;;AAEnF;AACA,IAAA,IAAA6D,YAAA,GAAwEC,WAAW,CAACJ,gBAAgB,CAAC;MAAAK,aAAA,GAAAC,cAAA,CAAAH,YAAA,EAAA,CAAA,CAAA;AAA9FI,MAAAA,OAAO,GAAAF,aAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,iBAAiB,GAAAH,aAAA,CAAA,CAAA,CAAA;AAAEI,MAAAA,iBAAiB,GAAAJ,aAAA,CAAA,CAAA,CAAA;AAAEK,MAAAA,cAAc,GAAAL,aAAA,CAAA,CAAA,CAAA,CAAA;IAEpE,IAAAM,SAAA,GAA0CC,QAAQ,CAC9C9E,KAAK,CAAC+E,WAAW,GAAG,EAAE,GAAG,EAC7B,CAAC;MAAAC,UAAA,GAAAR,cAAA,CAAAK,SAAA,EAAA,CAAA,CAAA;AAFMI,MAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAItC,IAAA,IAAM3E,KAAK,GAAGD,UAAU,KAAK,IAAI,IAAIA,UAAU,KAAK+E,SAAS,GAAG/E,UAAU,GAAG6E,aAAa,CAAA;AAE1F,IAAA,IAAMG,kBAAkB,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;;AAEvD;AACA,IAAA,IAAAC,WAAA,GAA6BC,UAAU,CAACC,WAAW,EAAE,EAAE,CAAC;MAAAC,YAAA,GAAAjB,cAAA,CAAAc,WAAA,EAAA,CAAA,CAAA;AAAjDI,MAAAA,IAAI,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,YAAY,GAAAF,YAAA,CAAA,CAAA,CAAA,CAAA;AACzB,IAAA,IAAAG,YAAA,GAA2CL,UAAU,CAACM,kBAAkB,EAAE,EAAE,CAAC;MAAAC,YAAA,GAAAtB,cAAA,CAAAoB,YAAA,EAAA,CAAA,CAAA;AAAtEG,MAAAA,WAAW,GAAAD,YAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,mBAAmB,GAAAF,YAAA,CAAA,CAAA,CAAA,CAAA;AACvC,IAAA,IAAAG,UAAA,GAA8BnB,QAAQ,CAACH,iBAAiB,CAAC;MAAAuB,UAAA,GAAA1B,cAAA,CAAAyB,UAAA,EAAA,CAAA,CAAA;AAAlDE,MAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;IAE1B,IAAMG,iBAAiB,GAAGC,OAAO,CAACZ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1C,IAAMa,yBAAyB,GAAG,CAAArG,CAAAA,iBAAA,GAAAsG,gBAAgB,CAACT,WAAW,EAAErB,iBAAiB,CAAC,cAAAxE,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhDA,iBAAA,CAAkDG,KAAK,CAACoG,QAAQ,EAAE,KAAI,EAAE,CAAA;IAC1G,IAAMnE,gBAAgB,GAAGD,qBAAqB,KAArBA,IAAAA,IAAAA,qBAAqB,KAArBA,KAAAA,CAAAA,GAAAA,qBAAqB,GAAI,CAACrC,KAAK,CAAC+E,WAAW,CAAA;AACpE,IAAA,IAAM2B,MAAM,GAAGC,SAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,cAAc,GAAGvB,MAAM,CAAiB,IAAI,CAAC,CAAA;AACnD,IAAA,IAAMjE,IAAI,GAAGb,MAAM,KAAK,gBAAgB,KAAKS,QAAQ,IAAIE,QAAQ,CAAC,GAAG,SAAS,GAAG2F,OAAO,CAAC3E,MAAM,EAAEf,SAAS,CAAC,CAAA;;AAE3G;IACA,IAAM2F,aAAa,GACf9G,KAAK,CAACO,MAAM,KAAK,aAAa,GACxB4E,SAAS,GACR;AACGhC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBC,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBC,MAAAA,QAAQ,EAARA,QAAAA;KACe,CAAA;;AAE7B;IACA,IAAMyD,SAAS,GACX/G,KAAK,CAACO,MAAM,KAAK,aAAa,GACxB4E,SAAS,GACR;AACG5B,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,WAAW,EAAXA,WAAW;AACXC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,QAAQ,EAARA,QAAQ;AACRC,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBC,MAAAA,aAAa,EAAbA,aAAa;AACbC,MAAAA,SAAS,EAATA,SAAS;AACTC,MAAAA,YAAY,EAAZA,YAAAA;KACW,CAAA;AAEzB,IAAA,IAAMkD,SAAS,GAAGC,eAAe,CAAmB,YAAM;MACtD,IAAI,CAACZ,iBAAiB,EAAE;AACpB,QAAA,OAAA;AACJ,OAAA;AAEAV,MAAAA,YAAY,CAAC;AAAEuB,QAAAA,IAAI,EAAE,OAAA;AAAQ,OAAC,CAAC,CAAA;AAC/BlB,MAAAA,mBAAmB,CAAC;AAAEkB,QAAAA,IAAI,EAAE,OAAA;AAAQ,OAAC,CAAC,CAAA;AAEtC,MAAA,IAAInE,QAAQ,EAAE;QACVA,QAAQ,CAAC,KAAK,CAAC,CAAA;AACnB,OAAA;KACH,EAAEqC,kBAAkB,CAAC,CAAA;IAEtB,IAAM+B,QAAQ,GAAG,SAAXA,QAAQA,CACVC,QAA2F,EAC3FC,IAA2C,EAC1C;MACD,IAAIrH,KAAK,CAACmH,QAAQ,EAAE;AAChB;AACA,QAAA,IAAI,CAACnH,KAAK,CAAC2C,IAAI,KAAK,OAAOyE,QAAQ,KAAK,QAAQ,IAAIE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,CAAC,EAAE;UAC1EpH,KAAK,CAACmH,QAAQ,CAACC,QAAQ,EAASC,IAAI,IAAI,IAAI,CAAC,CAAA;AACjD,SAAA;;AAEA;AACA;AACA,QAAA,IAAIrH,KAAK,CAAC2C,IAAI,IAAI6E,OAAA,CAAOJ,QAAQ,CAAA,KAAK,QAAQ,IAAI,CAACE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,EAAE;UACxEpH,KAAK,CAACmH,QAAQ,CAACC,QAAQ,EAASC,IAAI,IAAI,IAAI,CAAC,CAAA;AACjD,SAAA;AACJ,OAAA;;AAEA;MACA,IAAI,OAAOD,QAAQ,KAAK,QAAQ,IAAIE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,EAAE;QACzDlC,gBAAgB,CAACkC,QAAQ,CAAC,CAAA;AAC9B,OAAA;KACH,CAAA;AAED,IAAA,IAAMK,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,MAAe,EAAK;MAC1C,IAAI1G,QAAQ,IAAIE,QAAQ,EAAE;AACtB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAIwG,MAAM,EAAE;AACR/B,QAAAA,YAAY,CAAC;AAAEuB,UAAAA,IAAI,EAAE,oBAAA;AAAqB,SAAC,CAAC,CAAA;AAChD,OAAC,MAAM;AACHlB,QAAAA,mBAAmB,CAAC;AAAEkB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AACtCvB,QAAAA,YAAY,CAAC;AAAEuB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AACnC,OAAA;AAEA,MAAA,IAAInE,QAAQ,EAAE;QACVA,QAAQ,CAAC2E,MAAM,CAAC,CAAA;AACpB,OAAA;KACH,CAAA;AAED,IAAA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIN,IAAmC,EAAK;AAClE,MAAA,IAAI,CAACrH,KAAK,CAAC+E,WAAW,EAAE;AACpB,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAM6C,WAAW,GAAG,IAAIC,GAAG,CAAC1B,OAAO,CAAC,CAAA;AAEpC,MAAA,QAAQyB,WAAW,CAACE,GAAG,CAACT,IAAI,CAAChH,KAAK,CAAC;AAC/B;AACA,QAAA,KAAK,eAAe;AAAE,UAAA;AAClB;YACA0H,iBAAiB,CAACV,IAAI,EAAEO,WAAW,EAAE,IAAI,EAAEhD,cAAc,CAAC,CAAA;AAC1D,YAAA,MAAA;AACJ,WAAA;AACA;AACA,QAAA,KAAK,IAAI;AAAE,UAAA;YACPmD,iBAAiB,CAACV,IAAI,EAAEO,WAAW,EAAE,KAAK,EAAEhD,cAAc,CAAC,CAAA;YAC3DgD,WAAW,CAACI,GAAG,CAACX,IAAI,CAAChH,KAAK,EAAE,KAAK,CAAC,CAAA;AAClC,YAAA,MAAA;AACJ,WAAA;AACA;AACA,QAAA,KAAK,KAAK;AAAE,UAAA;YACR0H,iBAAiB,CAACV,IAAI,EAAEO,WAAW,EAAE,IAAI,EAAEhD,cAAc,CAAC,CAAA;YAC1DgD,WAAW,CAACI,GAAG,CAACX,IAAI,CAAChH,KAAK,EAAE,IAAI,CAAC,CAAA;AACjC,YAAA,MAAA;AACJ,WAAA;AAIJ,OAAA;MAEA,IAAM4H,SAAiC,GAAG,EAAE,CAAA;AAE5CrD,MAAAA,cAAc,CAACsD,OAAO,CAAC,UAACb,IAAI,EAAEc,GAAG,EAAK;AAClC,QAAA,IAAIP,WAAW,CAACE,GAAG,CAACK,GAAG,CAAC,EAAE;AACtBF,UAAAA,SAAS,CAACG,IAAI,CAACf,IAAI,CAAChH,KAAK,CAAC,CAAA;AAC9B,SAAA;AACJ,OAAC,CAAC,CAAA;;AAEF;AACA,MAAA,IAAIiH,KAAK,CAACC,OAAO,CAAClH,KAAK,CAAC,EAAE;AACtBA,QAAAA,KAAK,CAAC6H,OAAO,CAAC,UAACG,GAAW,EAAK;AAC3B,UAAA,IAAI,CAACzD,cAAc,CAAC0D,GAAG,CAACD,GAAG,CAAC,EAAE;AAC1BJ,YAAAA,SAAS,CAACG,IAAI,CAACC,GAAG,CAAC,CAAA;AACvB,WAAA;AACJ,SAAC,CAAC,CAAA;AACN,OAAA;AAEA,MAAA,IAAI/F,gBAAgB,EAAE;AAClBqD,QAAAA,YAAY,CAAC;AAAEuB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC/BlB,QAAAA,mBAAmB,CAAC;AAAEkB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC1C,OAAA;AAEA,MAAA,IAAIC,QAAQ,EAAE;AACVA,QAAAA,QAAQ,CAACc,SAAS,EAAEZ,IAAI,CAAC,CAAA;AAC7B,OAAA;KACH,CAAA;IAED,IAAMkB,eAAe,GAAG,SAAlBA,eAAeA,CAAIlB,IAAmC,EAAEmB,CAAiC,EAAK;MAChG,IAAI,CAACC,OAAO,CAACpB,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJA,IAAI,CAAE7G,KAAK,CAAC,EAAE;AACvB,QAAA,OAAA;AACJ,OAAA;MAEA,IAAIR,KAAK,CAAC+E,WAAW,EAAE;QACnB4C,oBAAoB,CAACN,IAAI,CAAC,CAAA;AAC1B,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAImB,CAAC,EAAE;QACHA,CAAC,CAACE,eAAe,EAAE,CAAA;AACvB,OAAA;MAEA,IAAMC,gBAAgB,GAAGxC,OAAO,CAAC2B,GAAG,CAACT,IAAI,CAAChH,KAAK,CAAC,CAAA;AAEhD,MAAA,IAAIiC,gBAAgB,EAAE;AAClBqD,QAAAA,YAAY,CAAC;AAAEuB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC/BlB,QAAAA,mBAAmB,CAAC;AAAEkB,UAAAA,IAAI,EAAE,OAAA;AAAQ,SAAC,CAAC,CAAA;AAC1C,OAAA;;AAEA;AACA,MAAA,IAAIjE,IAAI,KAAK,OAAO,IAAI0F,gBAAgB,EAAE;AACtC,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,IAAIxB,QAAQ,EAAE;QACVA,QAAQ,CAACwB,gBAAgB,GAAG,EAAE,GAAGtB,IAAI,CAAChH,KAAK,EAAEgH,IAAI,CAAC,CAAA;AACtD,OAAA;AAEA,MAAA,IAAIlF,YAAY,EAAE;AACdA,QAAAA,YAAY,CAACkF,IAAI,EAAEmB,CAAE,CAAC,CAAA;AAC1B,OAAA;KACH,CAAA;IAED,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAIvB,IAAmC,EAAEmB,CAAiC,EAAK;AAChG,MAAA,IAAIC,OAAO,CAACpB,IAAI,CAAC7G,KAAK,CAAC,EAAE;AACrB+H,QAAAA,eAAe,CAAClB,IAAI,EAAEmB,CAAC,CAAC,CAAA;AAC5B,OAAC,MAAM,IAAIxI,KAAK,CAAC+E,WAAW,EAAE;QAC1B4C,oBAAoB,CAACN,IAAI,CAAC,CAAA;AAC9B,OAAA;KACH,CAAA;AAED,IAAA,IAAMwB,YAAY,GAAG,SAAfA,YAAYA,CAAIL,CAAkC,EAAK;AACzD,MAAA,IAAI7G,QAAQ,EAAE;QACVA,QAAQ,CAAC6G,CAAC,CAAC,CAAA;AACf,OAAA;MAEA,IAAI,CAAC9G,cAAc,EAAE,OAAA;AAErB,MAAA,IAAQnB,MAAM,GAAKiI,CAAC,CAAZjI,MAAM,CAAA;MAEd,IACKA,MAAM,CAAiBuI,YAAY,GAAIvI,MAAM,CAAiBwI,SAAS,KACvExI,MAAM,CAAiByI,YAAY,EACtC;QACEtH,cAAc,CAAC8G,CAAC,CAAC,CAAA;AACrB,OAAA;KACH,CAAA;IAED,IAAAS,iBAAA,GAAsBC,gBAAgB,CAAC;AACnCnD,QAAAA,WAAW,EAAXA,WAAW;AACXC,QAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBN,QAAAA,IAAI,EAAJA,IAAI;AACJC,QAAAA,YAAY,EAAZA,YAAY;AACZlB,QAAAA,OAAO,EAAPA,OAAO;AACPC,QAAAA,iBAAiB,EAAjBA,iBAAiB;AACjB+C,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBmB,QAAAA,eAAe,EAAfA,eAAAA;AACJ,OAAC,CAAC;MATMO,SAAS,GAAAF,iBAAA,CAATE,SAAS,CAAA;;AAWjB;AACA;AACAC,IAAAA,eAAe,CAAC,YAAM;AAClB,MAAA,IAAMxB,WAAW,GAAG,IAAIC,GAAG,CAAC1B,OAAO,CAAC,CAAA;AAEpCyB,MAAAA,WAAW,CAACM,OAAO,CAAC,UAACmB,CAAC,EAAElB,GAAG,EAAK;AAC5BP,QAAAA,WAAW,CAACI,GAAG,CAACG,GAAG,EAAE,KAAK,CAAC,CAAA;AAC/B,OAAC,CAAC,CAAA;MAEF,IAAI,CAACM,OAAO,CAACpI,KAAK,CAAC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;AAC9C,QAAA,IAAIiH,KAAK,CAACC,OAAO,CAAClH,KAAK,CAAC,EAAE;AACtBA,UAAAA,KAAK,CAAC6H,OAAO,CAAC,UAACG,GAAG,EAAK;AACnB;AACA,YAAA,IAAIzD,cAAc,CAAC0D,GAAG,CAACD,GAAG,CAAC,EAAE;AACzBT,cAAAA,WAAW,CAACI,GAAG,CAACK,GAAG,EAAE,IAAI,CAAC,CAAA;cAC1BN,iBAAiB,CAACnD,cAAc,CAACkD,GAAG,CAACO,GAAG,CAAC,EAAGT,WAAW,EAAE,IAAI,CAAC,CAAA;cAC9D0B,eAAe,CAAC1E,cAAc,CAACkD,GAAG,CAACO,GAAG,CAAC,EAAGT,WAAW,CAAC,CAAA;AAC1D,aAAA;AACJ,WAAC,CAAC,CAAA;AACN,SAAC,MAAM;AACH;AACA;AACA,UAAA,IAAIhD,cAAc,CAAC0D,GAAG,CAACjI,KAAK,CAAC,EAAE;AAC3BuH,YAAAA,WAAW,CAACI,GAAG,CAAC3H,KAAK,EAAE,MAAM,CAAC,CAAA;YAC9BkJ,qBAAqB,CAAC3E,cAAc,CAACkD,GAAG,CAACzH,KAAK,CAAC,EAAGuH,WAAW,EAAE,KAAK,CAAC,CAAA;AACzE,WAAA;AACJ,SAAA;AACJ,OAAA;MAEAxB,UAAU,CAACwB,WAAW,CAAC,CAAA;;AAEvB;AACA;AACA;KACH,EAAE,CAACxH,UAAU,EAAE6E,aAAa,EAAEzE,KAAK,CAAC,CAAC,CAAA;AAEtC4I,IAAAA,eAAe,CAAC,YAAM;AAClB,MAAA,IAAIxG,YAAY,EAAE;QACdsC,gBAAgB,CAACtC,YAAiC,CAAC,CAAA;AACvD,OAAA;AACJ,KAAC,EAAE,CAACA,YAAY,CAAC,CAAC,CAAA;AAElB,IAAA,oBACI4G,KAAA,CAAAC,aAAA,CAAC3J,IAAI,EAAA4J,QAAA,CAAA;AACDtI,MAAAA,IAAI,EAAEA,IAAK;AACXC,MAAAA,IAAI,EAAEA,IAAK;AACXT,MAAAA,cAAc,EAAEA,cAAe;AAC/BgB,MAAAA,QAAQ,EAAEA,QAAS;AACnBZ,MAAAA,QAAQ,EAAEA,QAAS;AACnBE,MAAAA,QAAQ,EAAEA,QAAS;AACnBf,MAAAA,EAAE,EAAEA,EAAAA;KACC4D,EAAAA,IAAI,GAERpB,IAAI,iBACD6G,KAAA,CAAAC,aAAA,CAACE,YAAY,EAAA;AACTnJ,MAAAA,KAAK,EAAEoE,cAAe;AACtBjC,MAAAA,IAAI,EAAEA,IAAK;AACXtC,MAAAA,KAAK,EAAE4E,aAAc;MACrBF,WAAW,EAAE/E,KAAK,CAAC+E,WAAY;AAC/BoC,MAAAA,QAAQ,EAAEA,QAAS;AACnByC,MAAAA,UAAU,EAAE1E,gBAAiB;AAC7BjF,MAAAA,GAAG,EAAEA,GAAAA;KACR,CACJ,eACDuJ,KAAA,CAAAC,aAAA,CAACI,OAAO,CAACC,QAAQ,EAAA;AACbzJ,MAAAA,KAAK,EAAE;AACH0F,QAAAA,WAAW,EAAXA,WAAW;AACXI,QAAAA,OAAO,EAAPA,OAAO;QACPpB,WAAW,EAAE/E,KAAK,CAAC+E,WAAW;AAC9B1D,QAAAA,IAAI,EAAJA,IAAI;AACJsG,QAAAA,oBAAoB,EAApBA,oBAAoB;AACpBY,QAAAA,eAAe,EAAfA,eAAe;AACfzG,QAAAA,OAAO,EAAPA,OAAO;AACPG,QAAAA,UAAU,EAAVA,UAAU;AACVyE,QAAAA,MAAM,EAANA,MAAM;AACN;AACA;AACA;QACAqD,mBAAmB,EAAGhG,IAAI,CAASgG,mBAAAA;AACvC,OAAA;AAAE,KAAA,eAEFP,KAAA,CAAAC,aAAA,CAACO,eAAe,EAAA;AACZ/J,MAAAA,GAAG,EAAEmF,kBAAmB;AACxBsC,MAAAA,MAAM,EAAErB,iBAAkB;AAC1BtD,MAAAA,QAAQ,EAAE0E,gBAAiB;AAC3B/G,MAAAA,SAAS,EAAEA,SAAU;AACrBqB,MAAAA,MAAM,EAAEA,MAAO;AACfP,MAAAA,SAAS,EAAEA,SAAU;AACrByI,MAAAA,MAAM,EAAE/G,OAAQ;MAChB3C,MAAM,EAAE,SAAAA,MAAAA,CAAC2J,YAAY,EAAA;AAAA,QAAA,oBACjBV,KAAA,CAAAC,aAAA,CAACU,MAAM,EAAA;AACHlK,UAAAA,GAAG,EAAE0C,IAAI,GAAG,IAAI,GAAG1C,GAAI;AACvBI,UAAAA,KAAK,EAAEA,KAAM;AACbqH,UAAAA,MAAM,EAAErB,iBAAkB;AAC1BzB,UAAAA,cAAc,EAAEA,cAAe;AAC/BjE,UAAAA,KAAK,EAAEA,KAAM;AACbE,UAAAA,WAAW,EAAEA,WAAY;AACzBsI,UAAAA,SAAS,EAAEA,SAAU;AACrBvI,UAAAA,cAAc,EAAEA,cAAe;AAC/BS,UAAAA,IAAI,EAAEA,IAAK;AACXI,UAAAA,WAAW,EAAEA,WAAY;AACzBT,UAAAA,QAAQ,EAAEA,QAAS;AACnBE,UAAAA,QAAQ,EAAEA,QAAS;AACnBc,UAAAA,WAAW,EAAEA,WAAY;AACzBoI,UAAAA,WAAW,EAAEpK,KAAM;AACnBqK,UAAAA,eAAe,EAAEH,YAAuD;UACxEnF,WAAW,EAAE/E,KAAK,CAAC+E,WAAY;AAC/B3D,UAAAA,IAAI,EAAEA,IAAK;AACXN,UAAAA,UAAU,EAAEA,UAAW;AACvB4F,UAAAA,MAAM,EAAEA,MAAO;AACfH,UAAAA,yBAAyB,EAAEA,yBAA0B;AACrDhE,UAAAA,cAAc,EAAEA,cAAe;AAC/B4E,UAAAA,QAAQ,EAAEA,QAAS;AACnBvF,UAAAA,QAAQ,EAAEA,QAAS;AACnBQ,UAAAA,SAAS,EAAEA,SAAU;AACrB0E,UAAAA,aAAa,EAAEA,aAAc;AAC7BC,UAAAA,SAAS,EAAEA,SAAAA;AAAU,SACxB,CAAC,CAAA;OACJ;AACFrE,MAAAA,MAAM,EAAEA,MAAO;AACf4H,MAAAA,OAAO,EAAE,KAAA;AAAM,KAAA,eAEfd,KAAA,CAAAC,aAAA,CAAC3J,IAAI,EAAA4J,QAAA,CAAA;AACDtI,MAAAA,IAAI,EAAEA,IAAK;AACXC,MAAAA,IAAI,EAAEA,IAAK;AACXT,MAAAA,cAAc,EAAEA,cAAe;AAC/BgB,MAAAA,QAAQ,EAAEA,QAAS;AACnBZ,MAAAA,QAAQ,EAAEA,QAAS;AACnBE,MAAAA,QAAQ,EAAEA,QAAAA;AAAS,KAAA,EACd6C,IAAI,CAETyF,eAAAA,KAAA,CAAAC,aAAA,CAACc,WAAW,EAAA;AAACtK,MAAAA,GAAG,EAAE2G,cAAe;AAACpF,MAAAA,SAAS,EAAEA,SAAAA;AAAU,KAAA,eACnDgI,KAAA,CAAAC,aAAA,CAACe,EAAE,EAAA;AACCC,MAAAA,IAAI,EAAC,MAAM;AACXtK,MAAAA,EAAE,EAAAuK,EAAAA,CAAAA,MAAA,CAAKhE,MAAM,EAAgB,eAAA,CAAA;AAC7B,MAAA,sBAAA,EAAsBJ,OAAO,CAACtG,KAAK,CAAC+E,WAAW,CAAE;MACjDxD,aAAa,EAAEA,aAAa,IAAID,UAAW;AAC3CK,MAAAA,QAAQ,EAAEmB,OAAO,GAAGqC,SAAS,GAAG0D,YAAa;AAC7C5I,MAAAA,GAAG,EAAE+G,SAAU;AACflE,MAAAA,OAAO,EAAEA,OAAAA;KAERN,EAAAA,UAAU,EAEVxC,KAAK,CAAC+E,WAAW,IAAI/E,KAAK,CAAC2K,gBAAgB;AAAA;AACxC;IACAnB,KAAA,CAAAC,aAAA,CAACmB,SAAS,EAAA;MAACD,gBAAgB,EAAE3K,KAAK,CAAC2K,gBAAiB;AAAC7I,MAAAA,OAAO,EAAEA,OAAAA;KAAU,CAC3E,EAEAgB,OAAO,gBACJ0G,KAAA,CAAAC,aAAA,CAACoB,WAAW,EAAA;AACRrK,MAAAA,KAAK,EAAE0D,gBAAiB;MACxB3C,aAAa,EAAEA,aAAa,IAAID,UAAW;AAC3CK,MAAAA,QAAQ,EAAEA,QAAAA;KACb,CAAC,GAEFuC,gBAAgB,CAAC4G,GAAG,CAAC,UAACzD,IAAI,EAAE0D,KAAK,EAAA;AAAA,MAAA,oBAC7BvB,KAAA,CAAAC,aAAA,CAACuB,KAAK,EAAA;AACF7C,QAAAA,GAAG,EAAAuC,EAAAA,CAAAA,MAAA,CAAKK,KAAK,EAAK,IAAA,CAAA;AAClB1D,QAAAA,IAAI,EAAEA,IAAK;AACX4D,QAAAA,YAAY,EAAE,CAAE;AAChBvF,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,YAAY,EAAEA,YAAa;AAC3BoF,QAAAA,KAAK,EAAEA,KAAM;AACbvJ,QAAAA,SAAS,EAAEA,SAAU;AACrBO,QAAAA,MAAM,EAAE6E,cAAAA;AAAe,OAC1B,CAAC,CAAA;KACL,CACJ,EACAnE,SACD,CACK,CACX,CACO,CACH,CAChB,CAAC,CAAA;AAEf,GAAC,CAAC,CAAA;AAAA,EAAA;AAEC,IAAMyI,YAAY,GAAG;AACxBvI,EAAAA,IAAI,EAAE,QAAQ;AACdwI,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEvL,UAAU;AAClBwL,EAAAA,IAAI,EAAJA,IAAI;EACJC,UAAU,EAAE,EAAE;AACdC,EAAAA,QAAQ,EAAE;AACNnK,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAG;AACTT,IAAAA,cAAc,EAAE,OAAO;AACvBgB,IAAAA,QAAQ,EAAE,SAAA;AACd,GAAA;AACJ;;;;"}
@@ -6,20 +6,17 @@ var usePathMaps = function usePathMaps(items) {
6
6
  var focusedToValueMap = new Map();
7
7
  var valueToCheckedMap = new Map();
8
8
  var valueToItemMap = new Map();
9
- var labelToItemMap = new Map();
10
9
  pathMap.set('root', (items === null || items === void 0 ? void 0 : items.length) || 0);
11
10
  var rec = function rec(items) {
12
11
  var prevIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
13
12
  items === null || items === void 0 || items.forEach(function (item, index) {
14
13
  var value = item.value,
15
- label = item.label,
16
14
  innerItems = item.items;
17
15
  var currIndex = "".concat(prevIndex, "/").concat(index).replace(/^(\/)/, '');
18
16
  focusedToValueMap.set(currIndex, item);
19
17
  valueToCheckedMap.set(value, false);
20
18
  if (isEmpty(innerItems) || !innerItems) {
21
19
  valueToItemMap.set(value, item);
22
- labelToItemMap.set(label, item);
23
20
  } else {
24
21
  pathMap.set(value, innerItems.length);
25
22
  rec(innerItems, currIndex);
@@ -27,7 +24,7 @@ var usePathMaps = function usePathMaps(items) {
27
24
  });
28
25
  };
29
26
  rec(items);
30
- return [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap];
27
+ return [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap];
31
28
  };
32
29
 
33
30
  export { usePathMaps };
@@ -1 +1 @@
1
- {"version":3,"file":"usePathMaps.js","sources":["../../../../src/components/Select/hooks/usePathMaps.ts"],"sourcesContent":["import { isEmpty } from 'src/utils';\n\nimport { MergedSelectProps } from '../Select.types';\nimport { MergedDropdownNodeTransformed } from '../ui/Inner/ui/Item/Item.types';\n\nexport type PathMapType = Map<string | number, number>;\nexport type FocusedToValueMapType = Map<string, MergedDropdownNodeTransformed>;\nexport type ValueToCheckedMapType = Map<\n MergedDropdownNodeTransformed['value'],\n boolean | 'done' | 'dot' | 'indeterminate'\n>;\nexport type ValueToItemMapType = Map<MergedDropdownNodeTransformed['value'], MergedDropdownNodeTransformed>;\nexport type LabelToItemMapType = Map<MergedDropdownNodeTransformed['label'], MergedDropdownNodeTransformed>;\n\n// Рекурсивно проходим по дереву items и создаем 4 мапы: открытых путей, фокусов, выбранных элементов и айтемов.\nexport const usePathMaps = (items: MergedSelectProps['items']) => {\n const pathMap: PathMapType = new Map();\n const focusedToValueMap: FocusedToValueMapType = new Map();\n const valueToCheckedMap: ValueToCheckedMapType = new Map();\n const valueToItemMap: ValueToItemMapType = new Map();\n const labelToItemMap: LabelToItemMapType = new Map();\n\n pathMap.set('root', items?.length || 0);\n\n const rec = (items: MergedSelectProps['items'], prevIndex = '') => {\n items?.forEach((item: MergedDropdownNodeTransformed, index: number) => {\n const { value, label, items: innerItems } = item;\n\n const currIndex = `${prevIndex}/${index}`.replace(/^(\\/)/, '');\n focusedToValueMap.set(currIndex, item);\n\n valueToCheckedMap.set(value, false);\n\n if (isEmpty(innerItems) || !innerItems) {\n valueToItemMap.set(value, item);\n labelToItemMap.set(label, item);\n } else {\n pathMap.set(value, innerItems.length);\n rec(innerItems, currIndex);\n }\n });\n };\n rec(items);\n\n return [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap, labelToItemMap] as [\n PathMapType,\n FocusedToValueMapType,\n ValueToCheckedMapType,\n ValueToItemMapType,\n LabelToItemMapType,\n ];\n};\n"],"names":["usePathMaps","items","pathMap","Map","focusedToValueMap","valueToCheckedMap","valueToItemMap","labelToItemMap","set","length","rec","prevIndex","arguments","undefined","forEach","item","index","value","label","innerItems","currIndex","concat","replace","isEmpty"],"mappings":";;AAcA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAiC,EAAK;AAC9D,EAAA,IAAMC,OAAoB,GAAG,IAAIC,GAAG,EAAE,CAAA;AACtC,EAAA,IAAMC,iBAAwC,GAAG,IAAID,GAAG,EAAE,CAAA;AAC1D,EAAA,IAAME,iBAAwC,GAAG,IAAIF,GAAG,EAAE,CAAA;AAC1D,EAAA,IAAMG,cAAkC,GAAG,IAAIH,GAAG,EAAE,CAAA;AACpD,EAAA,IAAMI,cAAkC,GAAG,IAAIJ,GAAG,EAAE,CAAA;AAEpDD,EAAAA,OAAO,CAACM,GAAG,CAAC,MAAM,EAAE,CAAAP,KAAK,KAALA,IAAAA,IAAAA,KAAK,uBAALA,KAAK,CAAEQ,MAAM,KAAI,CAAC,CAAC,CAAA;AAEvC,EAAA,IAAMC,GAAG,GAAG,SAANA,GAAGA,CAAIT,KAAiC,EAAqB;AAAA,IAAA,IAAnBU,SAAS,GAAAC,SAAA,CAAAH,MAAA,GAAA,CAAA,IAAAG,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE,CAAA;IAC1DX,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,IAALA,KAAK,CAAEa,OAAO,CAAC,UAACC,IAAmC,EAAEC,KAAa,EAAK;AACnE,MAAA,IAAQC,KAAK,GAA+BF,IAAI,CAAxCE,KAAK;QAAEC,KAAK,GAAwBH,IAAI,CAAjCG,KAAK;QAASC,UAAU,GAAKJ,IAAI,CAA1Bd,KAAK,CAAA;AAE3B,MAAA,IAAMmB,SAAS,GAAG,EAAA,CAAAC,MAAA,CAAGV,SAAS,EAAAU,GAAAA,CAAAA,CAAAA,MAAA,CAAIL,KAAK,EAAGM,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAC9DlB,MAAAA,iBAAiB,CAACI,GAAG,CAACY,SAAS,EAAEL,IAAI,CAAC,CAAA;AAEtCV,MAAAA,iBAAiB,CAACG,GAAG,CAACS,KAAK,EAAE,KAAK,CAAC,CAAA;AAEnC,MAAA,IAAIM,OAAO,CAACJ,UAAU,CAAC,IAAI,CAACA,UAAU,EAAE;AACpCb,QAAAA,cAAc,CAACE,GAAG,CAACS,KAAK,EAAEF,IAAI,CAAC,CAAA;AAC/BR,QAAAA,cAAc,CAACC,GAAG,CAACU,KAAK,EAAEH,IAAI,CAAC,CAAA;AACnC,OAAC,MAAM;QACHb,OAAO,CAACM,GAAG,CAACS,KAAK,EAAEE,UAAU,CAACV,MAAM,CAAC,CAAA;AACrCC,QAAAA,GAAG,CAACS,UAAU,EAAEC,SAAS,CAAC,CAAA;AAC9B,OAAA;AACJ,KAAC,CAAC,CAAA;GACL,CAAA;EACDV,GAAG,CAACT,KAAK,CAAC,CAAA;EAEV,OAAO,CAACC,OAAO,EAAEE,iBAAiB,EAAEC,iBAAiB,EAAEC,cAAc,EAAEC,cAAc,CAAC,CAAA;AAO1F;;;;"}
1
+ {"version":3,"file":"usePathMaps.js","sources":["../../../../src/components/Select/hooks/usePathMaps.ts"],"sourcesContent":["import { isEmpty } from 'src/utils';\n\nimport { MergedSelectProps } from '../Select.types';\nimport { MergedDropdownNodeTransformed } from '../ui/Inner/ui/Item/Item.types';\n\nexport type PathMapType = Map<string | number, number>;\nexport type FocusedToValueMapType = Map<string, MergedDropdownNodeTransformed>;\nexport type ValueToCheckedMapType = Map<\n MergedDropdownNodeTransformed['value'],\n boolean | 'done' | 'dot' | 'indeterminate'\n>;\nexport type ValueToItemMapType = Map<MergedDropdownNodeTransformed['value'], MergedDropdownNodeTransformed>;\n\n// Рекурсивно проходим по дереву items и создаем 4 мапы: открытых путей, фокусов, выбранных элементов и айтемов.\nexport const usePathMaps = (items: MergedSelectProps['items']) => {\n const pathMap: PathMapType = new Map();\n const focusedToValueMap: FocusedToValueMapType = new Map();\n const valueToCheckedMap: ValueToCheckedMapType = new Map();\n const valueToItemMap: ValueToItemMapType = new Map();\n\n pathMap.set('root', items?.length || 0);\n\n const rec = (items: MergedSelectProps['items'], prevIndex = '') => {\n items?.forEach((item: MergedDropdownNodeTransformed, index: number) => {\n const { value, items: innerItems } = item;\n\n const currIndex = `${prevIndex}/${index}`.replace(/^(\\/)/, '');\n focusedToValueMap.set(currIndex, item);\n\n valueToCheckedMap.set(value, false);\n\n if (isEmpty(innerItems) || !innerItems) {\n valueToItemMap.set(value, item);\n } else {\n pathMap.set(value, innerItems.length);\n rec(innerItems, currIndex);\n }\n });\n };\n rec(items);\n\n return [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] as [\n PathMapType,\n FocusedToValueMapType,\n ValueToCheckedMapType,\n ValueToItemMapType,\n ];\n};\n"],"names":["usePathMaps","items","pathMap","Map","focusedToValueMap","valueToCheckedMap","valueToItemMap","set","length","rec","prevIndex","arguments","undefined","forEach","item","index","value","innerItems","currIndex","concat","replace","isEmpty"],"mappings":";;AAaA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAiC,EAAK;AAC9D,EAAA,IAAMC,OAAoB,GAAG,IAAIC,GAAG,EAAE,CAAA;AACtC,EAAA,IAAMC,iBAAwC,GAAG,IAAID,GAAG,EAAE,CAAA;AAC1D,EAAA,IAAME,iBAAwC,GAAG,IAAIF,GAAG,EAAE,CAAA;AAC1D,EAAA,IAAMG,cAAkC,GAAG,IAAIH,GAAG,EAAE,CAAA;AAEpDD,EAAAA,OAAO,CAACK,GAAG,CAAC,MAAM,EAAE,CAAAN,KAAK,KAALA,IAAAA,IAAAA,KAAK,uBAALA,KAAK,CAAEO,MAAM,KAAI,CAAC,CAAC,CAAA;AAEvC,EAAA,IAAMC,GAAG,GAAG,SAANA,GAAGA,CAAIR,KAAiC,EAAqB;AAAA,IAAA,IAAnBS,SAAS,GAAAC,SAAA,CAAAH,MAAA,GAAA,CAAA,IAAAG,SAAA,CAAA,CAAA,CAAA,KAAAC,SAAA,GAAAD,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE,CAAA;IAC1DV,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,IAALA,KAAK,CAAEY,OAAO,CAAC,UAACC,IAAmC,EAAEC,KAAa,EAAK;AACnE,MAAA,IAAQC,KAAK,GAAwBF,IAAI,CAAjCE,KAAK;QAASC,UAAU,GAAKH,IAAI,CAA1Bb,KAAK,CAAA;AAEpB,MAAA,IAAMiB,SAAS,GAAG,EAAA,CAAAC,MAAA,CAAGT,SAAS,EAAAS,GAAAA,CAAAA,CAAAA,MAAA,CAAIJ,KAAK,EAAGK,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAC9DhB,MAAAA,iBAAiB,CAACG,GAAG,CAACW,SAAS,EAAEJ,IAAI,CAAC,CAAA;AAEtCT,MAAAA,iBAAiB,CAACE,GAAG,CAACS,KAAK,EAAE,KAAK,CAAC,CAAA;AAEnC,MAAA,IAAIK,OAAO,CAACJ,UAAU,CAAC,IAAI,CAACA,UAAU,EAAE;AACpCX,QAAAA,cAAc,CAACC,GAAG,CAACS,KAAK,EAAEF,IAAI,CAAC,CAAA;AACnC,OAAC,MAAM;QACHZ,OAAO,CAACK,GAAG,CAACS,KAAK,EAAEC,UAAU,CAACT,MAAM,CAAC,CAAA;AACrCC,QAAAA,GAAG,CAACQ,UAAU,EAAEC,SAAS,CAAC,CAAA;AAC9B,OAAA;AACJ,KAAC,CAAC,CAAA;GACL,CAAA;EACDT,GAAG,CAACR,KAAK,CAAC,CAAA;EAEV,OAAO,CAACC,OAAO,EAAEE,iBAAiB,EAAEC,iBAAiB,EAAEC,cAAc,CAAC,CAAA;AAM1E;;;;"}
@@ -103,7 +103,8 @@
103
103
  .TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);-webkit-scroll-snap-align:center;-moz-scroll-snap-align:center;-ms-scroll-snap-align:center;scroll-snap-align:center;-webkit-scroll-snap-stop:normal;-moz-scroll-snap-stop:normal;-ms-scroll-snap-stop:normal;scroll-snap-stop:normal;position:relative;}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd.TextFieldChip_styles_14q069b_focusVisible__9f1b34fd:focus::before,.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
104
104
  .TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd{display:block;-webkit-flex:none;-ms-flex:none;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(--plasma-textfield-font-family);font-size:var(--plasma-textfield-font-size);font-style:var(--plasma-textfield-font-style);font-weight:var(--plasma-textfield-font-weight);-webkit-letter-spacing:var(--plasma-textfield-letter-spacing);-moz-letter-spacing:var(--plasma-textfield-letter-spacing);-ms-letter-spacing:var(--plasma-textfield-letter-spacing);letter-spacing:var(--plasma-textfield-letter-spacing);line-height:var(--plasma-textfield-line-height);color:var(--plasma-textfield-color);position:relative;}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd.TextFieldChip_styles_14q069b_focusVisible__9f1b34fd:focus::before,.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd:after{content:',';}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd:last-child:after{content:'';}
105
105
 
106
- .TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);--plasma-chip-disabled-opacity:0.4;position:relative;}.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5.TextFieldChipNew_styles_119gtz1_focusVisible__3dfbc3c5:focus::before,.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
106
+ .TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);--plasma-chip-disabled-opacity:0.4;position:relative;}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7.TextFieldChipNew_styles_y9tozi_focusVisible__d1734be7:focus::before,.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
107
+ .TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7{display:block;-webkit-flex:none;-ms-flex:none;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(--plasma-textfield-font-family);font-size:var(--plasma-textfield-font-size);font-style:var(--plasma-textfield-font-style);font-weight:var(--plasma-textfield-font-weight);-webkit-letter-spacing:var(--plasma-textfield-letter-spacing);-moz-letter-spacing:var(--plasma-textfield-letter-spacing);-ms-letter-spacing:var(--plasma-textfield-letter-spacing);letter-spacing:var(--plasma-textfield-letter-spacing);line-height:var(--plasma-textfield-line-height);color:var(--plasma-textfield-color);position:relative;}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7.TextFieldChipNew_styles_y9tozi_focusVisible__d1734be7:focus::before,.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7:after{content:',';}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7:last-child:after{content:'';}
107
108
 
108
109
  .TextField_1lzb2r1_bpunezx__7d079491{display:block;}
109
110
 
@@ -25,7 +25,6 @@ var Target = /*#__PURE__*/forwardRef(function (_ref, ref) {
25
25
  activeDescendantItemValue = _ref.activeDescendantItemValue,
26
26
  isTargetAmount = _ref.isTargetAmount,
27
27
  onChange = _ref.onChange,
28
- labelToItemMap = _ref.labelToItemMap,
29
28
  chipView = _ref.chipView,
30
29
  separator = _ref.separator,
31
30
  requiredProps = _ref.requiredProps,
@@ -74,7 +73,6 @@ var Target = /*#__PURE__*/forwardRef(function (_ref, ref) {
74
73
  valueToItemMap: valueToItemMap,
75
74
  renderValue: renderValue,
76
75
  onChange: onChange,
77
- labelToItemMap: labelToItemMap,
78
76
  chipView: chipView,
79
77
  requiredProps: requiredProps,
80
78
  hintProps: hintProps,
@@ -1 +1 @@
1
- {"version":3,"file":"Target.js","sources":["../../../../../src/components/Select/ui/Target/Target.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { TargetProps } from './Target.types';\nimport { Button, Textfield } from './ui';\n\nexport const Target = forwardRef<HTMLButtonElement, TargetProps>(\n (\n {\n value,\n opened,\n valueToItemMap,\n label,\n placeholder,\n onKeyDown,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n readOnly,\n renderValue,\n selectProps,\n inputWrapperRef,\n multiselect,\n view,\n helperText,\n treeId,\n activeDescendantItemValue,\n isTargetAmount,\n onChange,\n labelToItemMap,\n chipView,\n separator,\n requiredProps,\n hintProps,\n },\n ref,\n ) => {\n const buttonRef = useForkRef(ref, inputWrapperRef as any);\n\n if (selectProps.renderTarget) {\n return (\n <div ref={inputWrapperRef as any}>\n {selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n opened,\n )}\n </div>\n );\n }\n\n return selectProps.target === 'button-like' ? (\n <Button\n ref={buttonRef}\n opened={opened}\n value={value}\n valueToItemMap={valueToItemMap}\n onKeyDown={onKeyDown}\n label={label}\n size={size}\n disabled={disabled || readOnly}\n renderValue={renderValue}\n selectProps={selectProps}\n separator={separator}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n />\n ) : (\n <Textfield\n ref={ref as MutableRefObject<HTMLInputElement>}\n inputWrapperRef={inputWrapperRef}\n opened={opened}\n multiselect={multiselect}\n value={value}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n view={view}\n contentLeft={contentLeft}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n disabled={disabled}\n readOnly={readOnly}\n isTargetAmount={isTargetAmount}\n valueToItemMap={valueToItemMap}\n renderValue={renderValue}\n onChange={onChange}\n labelToItemMap={labelToItemMap}\n chipView={chipView}\n requiredProps={requiredProps}\n hintProps={hintProps}\n chipType={selectProps.chipType}\n />\n );\n },\n);\n"],"names":["Target","forwardRef","_ref","ref","value","opened","valueToItemMap","label","placeholder","onKeyDown","labelPlacement","size","contentLeft","disabled","readOnly","renderValue","selectProps","inputWrapperRef","multiselect","view","helperText","treeId","activeDescendantItemValue","isTargetAmount","onChange","labelToItemMap","chipView","separator","requiredProps","hintProps","buttonRef","useForkRef","renderTarget","React","createElement","Array","isArray","map","get","target","Button","Textfield","chipType"],"mappings":"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"}
1
+ {"version":3,"file":"Target.js","sources":["../../../../../src/components/Select/ui/Target/Target.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport type { MutableRefObject } from 'react';\nimport { useForkRef } from '@salutejs/plasma-core';\n\nimport type { TargetProps } from './Target.types';\nimport { Button, Textfield } from './ui';\n\nexport const Target = forwardRef<HTMLButtonElement, TargetProps>(\n (\n {\n value,\n opened,\n valueToItemMap,\n label,\n placeholder,\n onKeyDown,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n readOnly,\n renderValue,\n selectProps,\n inputWrapperRef,\n multiselect,\n view,\n helperText,\n treeId,\n activeDescendantItemValue,\n isTargetAmount,\n onChange,\n chipView,\n separator,\n requiredProps,\n hintProps,\n },\n ref,\n ) => {\n const buttonRef = useForkRef(ref, inputWrapperRef as any);\n\n if (selectProps.renderTarget) {\n return (\n <div ref={inputWrapperRef as any}>\n {selectProps.renderTarget(\n Array.isArray(value)\n ? value.map((value) => valueToItemMap.get(value)!)\n : valueToItemMap.get(value)!,\n opened,\n )}\n </div>\n );\n }\n\n return selectProps.target === 'button-like' ? (\n <Button\n ref={buttonRef}\n opened={opened}\n value={value}\n valueToItemMap={valueToItemMap}\n onKeyDown={onKeyDown}\n label={label}\n size={size}\n disabled={disabled || readOnly}\n renderValue={renderValue}\n selectProps={selectProps}\n separator={separator}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n />\n ) : (\n <Textfield\n ref={ref as MutableRefObject<HTMLInputElement>}\n inputWrapperRef={inputWrapperRef}\n opened={opened}\n multiselect={multiselect}\n value={value}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n labelPlacement={labelPlacement}\n size={size}\n view={view}\n contentLeft={contentLeft}\n helperText={helperText}\n treeId={treeId}\n activeDescendantItemValue={activeDescendantItemValue}\n disabled={disabled}\n readOnly={readOnly}\n isTargetAmount={isTargetAmount}\n valueToItemMap={valueToItemMap}\n renderValue={renderValue}\n onChange={onChange}\n chipView={chipView}\n requiredProps={requiredProps}\n hintProps={hintProps}\n chipType={selectProps.chipType}\n />\n );\n },\n);\n"],"names":["Target","forwardRef","_ref","ref","value","opened","valueToItemMap","label","placeholder","onKeyDown","labelPlacement","size","contentLeft","disabled","readOnly","renderValue","selectProps","inputWrapperRef","multiselect","view","helperText","treeId","activeDescendantItemValue","isTargetAmount","onChange","chipView","separator","requiredProps","hintProps","buttonRef","useForkRef","renderTarget","React","createElement","Array","isArray","map","get","target","Button","Textfield","chipType"],"mappings":"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"}
@@ -70,7 +70,8 @@
70
70
  .TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);-webkit-scroll-snap-align:center;-moz-scroll-snap-align:center;-ms-scroll-snap-align:center;scroll-snap-align:center;-webkit-scroll-snap-stop:normal;-moz-scroll-snap-stop:normal;-ms-scroll-snap-stop:normal;scroll-snap-stop:normal;position:relative;}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd.TextFieldChip_styles_14q069b_focusVisible__9f1b34fd:focus::before,.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_14q069b_s32p7ut__9f1b34fd[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
71
71
  .TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd{display:block;-webkit-flex:none;-ms-flex:none;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(--plasma-textfield-font-family);font-size:var(--plasma-textfield-font-size);font-style:var(--plasma-textfield-font-style);font-weight:var(--plasma-textfield-font-weight);-webkit-letter-spacing:var(--plasma-textfield-letter-spacing);-moz-letter-spacing:var(--plasma-textfield-letter-spacing);-ms-letter-spacing:var(--plasma-textfield-letter-spacing);letter-spacing:var(--plasma-textfield-letter-spacing);line-height:var(--plasma-textfield-line-height);color:var(--plasma-textfield-color);position:relative;}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd.TextFieldChip_styles_14q069b_focusVisible__9f1b34fd:focus::before,.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd:after{content:',';}.TextFieldChip_styles_14q069b_t4nir3h__9f1b34fd:last-child:after{content:'';}
72
72
 
73
- .TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);--plasma-chip-disabled-opacity:0.4;position:relative;}.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5.TextFieldChipNew_styles_119gtz1_focusVisible__3dfbc3c5:focus::before,.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_119gtz1_s11qqqhl__3dfbc3c5[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
73
+ .TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7{--plasma-chip-color:var(--plasma-textfield__chip-color);--plasma-chip-background:var(--plasma-textfield__chip-background);--plasma-chip-color-hover:var(--plasma-textfield__chip-color-hover);--plasma-chip-background-hover:var(--plasma-textfield__chip-background-hover);--plasma-chip-color-active:var(--plasma-textfield__chip-color-active);--plasma-chip-background-active:var(--plasma-textfield__chip-background-active);--plasma-chip-background-readonly:var(--plasma-textfield__chip-background-readonly);--plasma-chip-color-readonly:var(--plasma-textfield__chip-color-readonly);--plasma-chip-background-readonly-hover:var(--plasma-textfield__chip-background-readonly-hover);--plasma-chip-color-readonly-hover:var(--plasma-textfield__chip-color-readonly-hover);--plasma-chip-border-radius:var(--plasma-textfield__chip-border-radius);--plasma-chip-width:var(--plasma-textfield__chip-width);--plasma-chip-height:var(--plasma-textfield__chip-height);--plasma-chip-padding:var(--plasma-textfield__chip-padding);--plasma-chip-font-family:var(--plasma-textfield__chip-font-family);--plasma-chip-font-size:var(--plasma-textfield__chip-font-size);--plasma-chip-font-style:var(--plasma-textfield__chip-font-style);--plasma-chip-font-weight:var(--plasma-textfield__chip-font-weight);--plasma-chip-letter-spacing:var(--plasma-textfield__chip-letter-spacing);--plasma-chip-lineheight:var(--plasma-textfield__chip-line-height);--plasma-chip-clear-content-margin-left:var(--plasma-textfield__chip-clear-content-margin-left);--plasma-chip-clear-content-margin-right:var(--plasma-textfield__chip-clear-content-margin-right);--plasma-chip-close-icon-size:var(--plasma-textfield__chip-close-icon-size);--plasma-chip-close-icon-color:var(--plasma-textfield__chip-close-icon-color);--plasma-chip-focus-color:var(--plasma-textfield-focus-color);--plasma-chip-disabled-opacity:0.4;position:relative;}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7.TextFieldChipNew_styles_y9tozi_focusVisible__d1734be7:focus::before,.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_y9tozi_s11qqqhl__d1734be7[readonly]{opacity:var(--plasma-textfield__chip-opacity-readonly);}
74
+ .TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7{display:block;-webkit-flex:none;-ms-flex:none;flex:none;background:none;border:none;outline:none;padding:0;white-space:nowrap;cursor:pointer;font-family:var(--plasma-textfield-font-family);font-size:var(--plasma-textfield-font-size);font-style:var(--plasma-textfield-font-style);font-weight:var(--plasma-textfield-font-weight);-webkit-letter-spacing:var(--plasma-textfield-letter-spacing);-moz-letter-spacing:var(--plasma-textfield-letter-spacing);-ms-letter-spacing:var(--plasma-textfield-letter-spacing);letter-spacing:var(--plasma-textfield-letter-spacing);line-height:var(--plasma-textfield-line-height);color:var(--plasma-textfield-color);position:relative;}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7::before{content:'';position:absolute;top:0.0625rem;left:0.0625rem;right:0.0625rem;bottom:0.0625rem;z-index:1;display:block;box-sizing:content-box;border:0.0625rem solid transparent;border-radius:calc(var(--plasma-textfield__chip-border-radius) - 0.1rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7.TextFieldChipNew_styles_y9tozi_focusVisible__d1734be7:focus::before,.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.0625rem var(--plasma-textfield-focus-color);}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7:after{content:',';}.TextFieldChipNew_styles_y9tozi_t10z5awc__d1734be7:last-child:after{content:'';}
74
75
 
75
76
  .TextField_1lzb2r1_bpunezx__7d079491{display:block;}
76
77
 
@@ -1,10 +1,9 @@
1
- import { extends as _extends, toConsumableArray as _toConsumableArray } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { extends as _extends } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef } from 'react';
3
3
  import { classes } from '../../../../Select.tokens.js';
4
4
  import { StyledTextField, IconArrowWrapper, StyledArrow, StyledLeftHelper } from './Textfield.styles.js';
5
5
  import { sizeToIconSize } from '../../../../utils/sizeToIconSize.js';
6
6
  import { getItemId } from '../../../../utils/getItemId.js';
7
- import { getRemovedElement } from '../../../../utils/getRemovedElement.js';
8
7
 
9
8
  var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
10
9
  var inputWrapperRef = _ref.inputWrapperRef,
@@ -28,7 +27,6 @@ var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
28
27
  valueToItemMap = _ref.valueToItemMap,
29
28
  renderValue = _ref.renderValue,
30
29
  onChange = _ref.onChange,
31
- labelToItemMap = _ref.labelToItemMap,
32
30
  chipView = _ref.chipView,
33
31
  requiredProps = _ref.requiredProps,
34
32
  chipType = _ref.chipType,
@@ -51,59 +49,44 @@ var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
51
49
  if (multiselect && Array.isArray(value)) {
52
50
  if (value.length === 0) return [];
53
51
  if (isTargetAmount) {
54
- return ["\u0412\u044B\u0431\u0440\u0430\u043D\u043E ".concat(value.length)];
52
+ return [{
53
+ value: '_removeAll',
54
+ label: "\u0412\u044B\u0431\u0440\u0430\u043D\u043E ".concat(value.length),
55
+ disabled: value.every(function (val) {
56
+ var _valueToItemMap$get2;
57
+ return valueToItemMap === null || valueToItemMap === void 0 || (_valueToItemMap$get2 = valueToItemMap.get(val)) === null || _valueToItemMap$get2 === void 0 ? void 0 : _valueToItemMap$get2.disabled;
58
+ })
59
+ }];
55
60
  }
56
- var renderValueMapper = renderValue && function (stringValue) {
57
- return renderValue(valueToItemMap.get(stringValue) || {
58
- value: stringValue,
59
- label: stringValue.toString()
60
- });
61
- };
62
- var valueToItemMapper = function valueToItemMapper(stringValue) {
63
- var _valueToItemMap$get2;
64
- return ((_valueToItemMap$get2 = valueToItemMap.get(stringValue)) === null || _valueToItemMap$get2 === void 0 ? void 0 : _valueToItemMap$get2.label) || stringValue.toString();
65
- };
66
- return value.map(renderValueMapper || valueToItemMapper);
61
+ return value.map(function (value) {
62
+ var _valueToItemMap$get3, _valueToItemMap$get4;
63
+ var currentLabel = renderValue ? renderValue(valueToItemMap.get(value) || {
64
+ value: value,
65
+ label: value.toString()
66
+ }) : ((_valueToItemMap$get3 = valueToItemMap.get(value)) === null || _valueToItemMap$get3 === void 0 ? void 0 : _valueToItemMap$get3.label) || value.toString();
67
+ return {
68
+ value: value,
69
+ label: currentLabel,
70
+ disabled: ((_valueToItemMap$get4 = valueToItemMap.get(value)) === null || _valueToItemMap$get4 === void 0 ? void 0 : _valueToItemMap$get4.disabled) || false
71
+ };
72
+ });
67
73
  }
68
74
  return [];
69
75
  };
70
76
 
71
77
  // Обработчик чипов
72
- var handleChipsChange = function handleChipsChange(chipLabels) {
78
+ var handleChipClick = function handleChipClick(chip) {
73
79
  if (!Array.isArray(value)) return;
74
-
75
- // TODO: #1564
76
- // Из лейблов чипов получаем value у item и далее прокидываем его в onChange.
77
- if (renderValue && !isTargetAmount) {
78
- var resultValues = _toConsumableArray(value);
79
- value.forEach(function (_, index) {
80
- var _valueToItemMap$get3;
81
- var stringValue = value[index];
82
- var label = (_valueToItemMap$get3 = valueToItemMap.get(stringValue)) === null || _valueToItemMap$get3 === void 0 ? void 0 : _valueToItemMap$get3.label;
83
- var labelAfterRenderValue = renderValue(label ? labelToItemMap.get(label) : {
84
- value: stringValue,
85
- label: stringValue.toString()
86
- });
87
- if (!chipLabels.includes(labelAfterRenderValue)) {
88
- resultValues.splice(index, 1);
89
- }
90
- });
91
- var removedItemValue = getRemovedElement(value, resultValues, isTargetAmount);
92
- onChange(resultValues, removedItemValue ? valueToItemMap.get(removedItemValue) || {
93
- value: removedItemValue,
94
- label: removedItemValue.toString()
95
- } : null);
80
+ if (isTargetAmount) {
81
+ // При закрытии чипа в режиме isTargetAmount в value оставляем только disabled-элементы
82
+ onChange(value.filter(function (val) {
83
+ var _valueToItemMap$get5;
84
+ return valueToItemMap === null || valueToItemMap === void 0 || (_valueToItemMap$get5 = valueToItemMap.get(val)) === null || _valueToItemMap$get5 === void 0 ? void 0 : _valueToItemMap$get5.disabled;
85
+ }));
96
86
  } else {
97
- var newValues = chipLabels.map(function (chipLabel) {
98
- var _labelToItemMap$get;
99
- return ((_labelToItemMap$get = labelToItemMap.get(chipLabel)) === null || _labelToItemMap$get === void 0 ? void 0 : _labelToItemMap$get.value) || chipLabel;
100
- });
101
- var _removedItemValue = getRemovedElement(value, newValues, isTargetAmount);
102
- var item = _removedItemValue ? valueToItemMap.get(_removedItemValue) || {
103
- value: _removedItemValue,
104
- label: _removedItemValue.toString()
105
- } : null;
106
- onChange(newValues, item);
87
+ onChange(value.filter(function (val) {
88
+ return val !== chip.value;
89
+ }), valueToItemMap.get(chip.value) || null);
107
90
  }
108
91
  };
109
92
  var helperTextStopPropagation = function helperTextStopPropagation(event) {
@@ -142,8 +125,8 @@ var Textfield = /*#__PURE__*/forwardRef(function (_ref, ref) {
142
125
  "aria-activedescendant": activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''
143
126
  }, multiselect ? {
144
127
  enumerationType: 'chip',
145
- chips: getChips(),
146
- onChangeChips: handleChipsChange,
128
+ _chips: getChips(),
129
+ _onChipClick: handleChipClick,
147
130
  chipType: chipType,
148
131
  chipView: chipView
149
132
  } : {
@@ -1 +1 @@
1
- {"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { sizeToIconSize, getItemId, getRemovedElement } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { IconArrowWrapper, StyledArrow, StyledTextField, StyledLeftHelper } from './Textfield.styles';\nimport { TextfieldProps } from './Textfield.types';\n\nexport const Textfield = forwardRef<HTMLInputElement, TextfieldProps>(\n (\n {\n inputWrapperRef,\n opened,\n multiselect,\n value,\n label,\n labelPlacement,\n keepPlaceholder,\n placeholder,\n onKeyDown,\n size,\n view,\n contentLeft,\n helperText,\n treeId,\n activeDescendantItemValue,\n disabled,\n readOnly,\n isTargetAmount,\n valueToItemMap,\n renderValue,\n onChange,\n labelToItemMap,\n chipView,\n requiredProps,\n chipType,\n hintProps,\n },\n ref,\n ) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getValue = () => {\n if (multiselect || Array.isArray(value) || !value) {\n return '';\n }\n\n if (renderValue) {\n return renderValue(valueToItemMap.get(value.toString()) || { value, label: value.toString() });\n }\n\n return valueToItemMap.get(value.toString())?.label || value.toString();\n };\n\n const getChips = (): string[] => {\n if (multiselect && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [`Выбрано ${value.length}`];\n }\n\n const renderValueMapper =\n renderValue &&\n ((stringValue: string | number) =>\n renderValue(\n valueToItemMap.get(stringValue) || { value: stringValue, label: stringValue.toString() },\n ));\n const valueToItemMapper = (stringValue: string | number) =>\n valueToItemMap.get(stringValue)?.label || stringValue.toString();\n\n return value.map(renderValueMapper || valueToItemMapper);\n }\n\n return [];\n };\n\n // Обработчик чипов\n const handleChipsChange = (chipLabels: any[]) => {\n if (!Array.isArray(value)) return;\n\n // TODO: #1564\n // Из лейблов чипов получаем value у item и далее прокидываем его в onChange.\n if (renderValue && !isTargetAmount) {\n const resultValues = [...value];\n\n value.forEach((_, index) => {\n const stringValue = value[index];\n const label = valueToItemMap.get(stringValue)?.label;\n\n const labelAfterRenderValue = renderValue(\n label\n ? labelToItemMap.get(label)!\n : {\n value: stringValue,\n label: stringValue.toString(),\n },\n );\n\n if (!chipLabels.includes(labelAfterRenderValue)) {\n resultValues.splice(index, 1);\n }\n });\n\n const removedItemValue = getRemovedElement(value, resultValues, isTargetAmount);\n\n onChange(\n resultValues,\n removedItemValue\n ? valueToItemMap.get(removedItemValue) || {\n value: removedItemValue,\n label: removedItemValue.toString(),\n }\n : null,\n );\n } else {\n const newValues = chipLabels.map((chipLabel) => {\n return labelToItemMap.get(chipLabel)?.value || chipLabel;\n });\n\n const removedItemValue = getRemovedElement(value, newValues, isTargetAmount);\n const item = removedItemValue\n ? valueToItemMap.get(removedItemValue) || {\n value: removedItemValue,\n label: removedItemValue.toString(),\n }\n : null;\n\n onChange(newValues, item);\n }\n };\n\n const helperTextStopPropagation = (event: React.MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n };\n\n return (\n <StyledTextField\n ref={ref}\n inputWrapperRef={inputWrapperRef}\n readOnly\n className={readOnly ? classes.readOnly : undefined}\n value={getValue()}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n label={label}\n keepPlaceholder={keepPlaceholder}\n placeholder={value instanceof Array && value.length ? '' : placeholder}\n contentLeft={contentLeft as React.ReactElement}\n contentRight={\n <IconArrowWrapper disabled={disabled} readOnly={readOnly}>\n <StyledArrow color=\"inherit\" size={sizeToIconSize(size)} className={withArrowInverse} />\n </IconArrowWrapper>\n }\n onKeyDown={onKeyDown}\n leftHelper={\n helperText && <StyledLeftHelper onClick={helperTextStopPropagation}>{helperText}</StyledLeftHelper>\n }\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={opened}\n aria-activedescendant={activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''}\n {...(multiselect\n ? {\n enumerationType: 'chip',\n chips: getChips(),\n onChangeChips: handleChipsChange,\n chipType,\n chipView,\n }\n : { enumerationType: 'plain' })}\n _onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n opened={opened}\n // TODO: #1547\n _forceChipManipulationWithReadonly={!readOnly}\n {...requiredProps}\n {...hintProps}\n />\n );\n },\n);\n"],"names":["Textfield","forwardRef","_ref","ref","inputWrapperRef","opened","multiselect","value","label","labelPlacement","keepPlaceholder","placeholder","onKeyDown","size","view","contentLeft","helperText","treeId","activeDescendantItemValue","disabled","readOnly","isTargetAmount","valueToItemMap","renderValue","onChange","labelToItemMap","chipView","requiredProps","chipType","hintProps","withArrowInverse","classes","arrowInverse","undefined","getValue","_valueToItemMap$get","Array","isArray","get","toString","getChips","length","concat","renderValueMapper","stringValue","valueToItemMapper","_valueToItemMap$get2","map","handleChipsChange","chipLabels","resultValues","_toConsumableArray","forEach","_","index","_valueToItemMap$get3","labelAfterRenderValue","includes","splice","removedItemValue","getRemovedElement","newValues","chipLabel","_labelToItemMap$get","item","helperTextStopPropagation","event","stopPropagation","React","createElement","StyledTextField","_extends","className","contentRight","IconArrowWrapper","StyledArrow","color","sizeToIconSize","leftHelper","StyledLeftHelper","onClick","role","getItemId","enumerationType","chips","onChangeChips","_onEnterDisabled","_forceChipManipulationWithReadonly"],"mappings":"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"}
1
+ {"version":3,"file":"Textfield.js","sources":["../../../../../../../src/components/Select/ui/Target/ui/Textfield/Textfield.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport { sizeToIconSize, getItemId } from '../../../../utils';\nimport { classes } from '../../../../Select.tokens';\n\nimport { IconArrowWrapper, StyledArrow, StyledTextField, StyledLeftHelper } from './Textfield.styles';\nimport { TextfieldProps } from './Textfield.types';\n\nexport const Textfield = forwardRef<HTMLInputElement, TextfieldProps>(\n (\n {\n inputWrapperRef,\n opened,\n multiselect,\n value,\n label,\n labelPlacement,\n keepPlaceholder,\n placeholder,\n onKeyDown,\n size,\n view,\n contentLeft,\n helperText,\n treeId,\n activeDescendantItemValue,\n disabled,\n readOnly,\n isTargetAmount,\n valueToItemMap,\n renderValue,\n onChange,\n chipView,\n requiredProps,\n chipType,\n hintProps,\n },\n ref,\n ) => {\n const withArrowInverse = opened ? classes.arrowInverse : undefined;\n\n const getValue = () => {\n if (multiselect || Array.isArray(value) || !value) {\n return '';\n }\n\n if (renderValue) {\n return renderValue(valueToItemMap.get(value.toString()) || { value, label: value.toString() });\n }\n\n return valueToItemMap.get(value.toString())?.label || value.toString();\n };\n\n const getChips = (): { value: string | number; label: string; disabled: boolean }[] => {\n if (multiselect && Array.isArray(value)) {\n if (value.length === 0) return [];\n\n if (isTargetAmount) {\n return [\n {\n value: '_removeAll',\n label: `Выбрано ${value.length}`,\n disabled: value.every((val) => valueToItemMap?.get(val)?.disabled),\n },\n ];\n }\n\n return value.map((value) => {\n const currentLabel = renderValue\n ? renderValue(valueToItemMap.get(value) || { value, label: value.toString() })\n : valueToItemMap.get(value)?.label || value.toString();\n\n return {\n value,\n label: currentLabel,\n disabled: valueToItemMap.get(value)?.disabled || false,\n };\n });\n }\n\n return [];\n };\n\n // Обработчик чипов\n const handleChipClick = (chip: { value: string; label: string; disabled: boolean }) => {\n if (!Array.isArray(value)) return;\n\n if (isTargetAmount) {\n // При закрытии чипа в режиме isTargetAmount в value оставляем только disabled-элементы\n onChange(value.filter((val) => valueToItemMap?.get(val)?.disabled));\n } else {\n onChange(\n value.filter((val) => val !== chip.value),\n valueToItemMap.get(chip.value) || null,\n );\n }\n };\n\n const helperTextStopPropagation = (event: React.MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n };\n\n return (\n <StyledTextField\n ref={ref}\n inputWrapperRef={inputWrapperRef}\n readOnly\n className={readOnly ? classes.readOnly : undefined}\n value={getValue()}\n size={size}\n view={view}\n labelPlacement={labelPlacement}\n disabled={disabled}\n label={label}\n keepPlaceholder={keepPlaceholder}\n placeholder={value instanceof Array && value.length ? '' : placeholder}\n contentLeft={contentLeft as React.ReactElement}\n contentRight={\n <IconArrowWrapper disabled={disabled} readOnly={readOnly}>\n <StyledArrow color=\"inherit\" size={sizeToIconSize(size)} className={withArrowInverse} />\n </IconArrowWrapper>\n }\n onKeyDown={onKeyDown}\n leftHelper={\n helperText && <StyledLeftHelper onClick={helperTextStopPropagation}>{helperText}</StyledLeftHelper>\n }\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-controls={`${treeId}_tree_level_1`}\n aria-expanded={opened}\n aria-activedescendant={activeDescendantItemValue ? getItemId(treeId, activeDescendantItemValue) : ''}\n {...(multiselect\n ? {\n enumerationType: 'chip',\n _chips: getChips(),\n _onChipClick: handleChipClick,\n chipType,\n chipView,\n }\n : { enumerationType: 'plain' })}\n _onEnterDisabled // Пропс для отключения обработчика Enter внутри Textfield\n opened={opened}\n // TODO: #1547\n _forceChipManipulationWithReadonly={!readOnly}\n {...requiredProps}\n {...hintProps}\n />\n );\n },\n);\n"],"names":["Textfield","forwardRef","_ref","ref","inputWrapperRef","opened","multiselect","value","label","labelPlacement","keepPlaceholder","placeholder","onKeyDown","size","view","contentLeft","helperText","treeId","activeDescendantItemValue","disabled","readOnly","isTargetAmount","valueToItemMap","renderValue","onChange","chipView","requiredProps","chipType","hintProps","withArrowInverse","classes","arrowInverse","undefined","getValue","_valueToItemMap$get","Array","isArray","get","toString","getChips","length","concat","every","val","_valueToItemMap$get2","map","_valueToItemMap$get3","_valueToItemMap$get4","currentLabel","handleChipClick","chip","filter","_valueToItemMap$get5","helperTextStopPropagation","event","stopPropagation","React","createElement","StyledTextField","_extends","className","contentRight","IconArrowWrapper","StyledArrow","color","sizeToIconSize","leftHelper","StyledLeftHelper","onClick","role","getItemId","enumerationType","_chips","_onChipClick","_onEnterDisabled","_forceChipManipulationWithReadonly"],"mappings":"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"}