@salutejs/plasma-new-hope 0.114.0-dev.0 → 0.115.0-canary.1335.10199765951.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. package/cjs/components/Combobox/Combobox.js +16 -13
  2. package/cjs/components/Combobox/Combobox.js.map +1 -1
  3. package/cjs/components/Select/Select.js +1 -1
  4. package/cjs/components/Select/Select.js.map +1 -1
  5. package/cjs/components/Select/ui/Target/Target.js +3 -3
  6. package/cjs/components/Select/ui/Target/Target.js.map +1 -1
  7. package/cjs/components/Select/ui/Target/ui/Button/Button.js +4 -4
  8. package/cjs/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  9. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  10. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  11. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +2 -2
  12. package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  13. package/cjs/components/Sheet/Sheet.js +8 -6
  14. package/cjs/components/Sheet/Sheet.js.map +1 -1
  15. package/cjs/components/Sheet/hooks/useOverflow.js +3 -3
  16. package/cjs/components/Sheet/hooks/useOverflow.js.map +1 -1
  17. package/cjs/components/Sheet/utils/handleTransition.js.map +1 -1
  18. package/emotion/cjs/components/Combobox/Combobox.js +16 -13
  19. package/emotion/cjs/components/Select/Select.js +1 -1
  20. package/emotion/cjs/components/Select/ui/Target/Target.js +3 -3
  21. package/emotion/cjs/components/Select/ui/Target/ui/Button/Button.js +4 -4
  22. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  23. package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +14 -14
  24. package/emotion/cjs/components/Sheet/Sheet.js +8 -6
  25. package/emotion/cjs/components/Sheet/Sheet.template-doc.mdx +6 -6
  26. package/emotion/cjs/components/Sheet/hooks/useOverflow.js +3 -3
  27. package/emotion/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +1 -1
  28. package/emotion/cjs/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +5 -5
  29. package/emotion/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -1
  30. package/emotion/cjs/examples/plasma_web/components/Sheet/Sheet.stories.tsx +5 -5
  31. package/emotion/es/components/Combobox/Combobox.js +16 -13
  32. package/emotion/es/components/Select/Select.js +1 -1
  33. package/emotion/es/components/Select/ui/Target/Target.js +3 -3
  34. package/emotion/es/components/Select/ui/Target/ui/Button/Button.js +4 -4
  35. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  36. package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +14 -14
  37. package/emotion/es/components/Sheet/Sheet.js +8 -6
  38. package/emotion/es/components/Sheet/Sheet.template-doc.mdx +6 -6
  39. package/emotion/es/components/Sheet/hooks/useOverflow.js +3 -3
  40. package/emotion/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +1 -1
  41. package/emotion/es/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +5 -5
  42. package/emotion/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -1
  43. package/emotion/es/examples/plasma_web/components/Sheet/Sheet.stories.tsx +5 -5
  44. package/es/components/Combobox/Combobox.js +16 -13
  45. package/es/components/Combobox/Combobox.js.map +1 -1
  46. package/es/components/Select/Select.js +1 -1
  47. package/es/components/Select/Select.js.map +1 -1
  48. package/es/components/Select/ui/Target/Target.js +3 -3
  49. package/es/components/Select/ui/Target/Target.js.map +1 -1
  50. package/es/components/Select/ui/Target/ui/Button/Button.js +4 -4
  51. package/es/components/Select/ui/Target/ui/Button/Button.js.map +1 -1
  52. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  53. package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
  54. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +2 -2
  55. package/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js.map +1 -1
  56. package/es/components/Sheet/Sheet.js +8 -6
  57. package/es/components/Sheet/Sheet.js.map +1 -1
  58. package/es/components/Sheet/hooks/useOverflow.js +3 -3
  59. package/es/components/Sheet/hooks/useOverflow.js.map +1 -1
  60. package/es/components/Sheet/utils/handleTransition.js.map +1 -1
  61. package/package.json +2 -2
  62. package/styled-components/cjs/components/Combobox/Combobox.js +16 -13
  63. package/styled-components/cjs/components/Select/Select.js +1 -1
  64. package/styled-components/cjs/components/Select/ui/Target/Target.js +3 -3
  65. package/styled-components/cjs/components/Select/ui/Target/ui/Button/Button.js +4 -4
  66. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  67. package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +2 -2
  68. package/styled-components/cjs/components/Sheet/Sheet.js +8 -6
  69. package/styled-components/cjs/components/Sheet/Sheet.template-doc.mdx +6 -6
  70. package/styled-components/cjs/components/Sheet/hooks/useOverflow.js +3 -3
  71. package/styled-components/cjs/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +1 -1
  72. package/styled-components/cjs/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +5 -5
  73. package/styled-components/cjs/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -1
  74. package/styled-components/cjs/examples/plasma_web/components/Sheet/Sheet.stories.tsx +5 -5
  75. package/styled-components/es/components/Combobox/Combobox.js +16 -13
  76. package/styled-components/es/components/Select/Select.js +1 -1
  77. package/styled-components/es/components/Select/ui/Target/Target.js +3 -3
  78. package/styled-components/es/components/Select/ui/Target/ui/Button/Button.js +4 -4
  79. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +6 -4
  80. package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.styles.js +2 -2
  81. package/styled-components/es/components/Sheet/Sheet.js +8 -6
  82. package/styled-components/es/components/Sheet/Sheet.template-doc.mdx +6 -6
  83. package/styled-components/es/components/Sheet/hooks/useOverflow.js +3 -3
  84. package/styled-components/es/examples/plasma_b2c/components/Combobox/Combobox.stories.tsx +1 -1
  85. package/styled-components/es/examples/plasma_b2c/components/Sheet/Sheet.stories.tsx +5 -5
  86. package/styled-components/es/examples/plasma_web/components/Combobox/Combobox.stories.tsx +1 -1
  87. package/styled-components/es/examples/plasma_web/components/Sheet/Sheet.stories.tsx +5 -5
  88. package/types/components/Combobox/Combobox.d.ts.map +1 -1
  89. package/types/components/Combobox/Combobox.types.d.ts +7 -0
  90. package/types/components/Combobox/Combobox.types.d.ts.map +1 -1
  91. package/types/components/Select/ui/Target/Target.types.d.ts +2 -1
  92. package/types/components/Select/ui/Target/Target.types.d.ts.map +1 -1
  93. package/types/components/Select/ui/Target/ui/Button/Button.types.d.ts +1 -1
  94. package/types/components/Select/ui/Target/ui/Button/Button.types.d.ts.map +1 -1
  95. package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
  96. package/types/components/Select/ui/Target/ui/Textfield/Textfield.styles.d.ts +1 -1
  97. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts +1 -1
  98. package/types/components/Select/ui/Target/ui/Textfield/Textfield.types.d.ts.map +1 -1
  99. package/types/components/Sheet/Sheet.d.ts.map +1 -1
  100. package/types/components/Sheet/Sheet.types.d.ts +5 -3
  101. package/types/components/Sheet/Sheet.types.d.ts.map +1 -1
  102. package/types/components/Sheet/hooks/useOverflow.d.ts +1 -1
  103. package/types/components/Sheet/utils/handleTransition.d.ts +1 -1
@@ -26,7 +26,7 @@ export function App() {
26
26
  <>
27
27
  <Button onClick={() => setOpened(true)}>Открыть</Button>
28
28
 
29
- <Sheet opened={opened}
29
+ <Sheet isOpen={opened}
30
30
  onClose={() => setOpened(false)}
31
31
  contentHeader={
32
32
  <div>
@@ -50,7 +50,7 @@ export function App() {
50
50
 
51
51
  ### Закрепление заголовка и футера
52
52
 
53
- С помощью свойств `isHeaderFixed` и `isFooterFixed` можно закрепить заголовок и футер.
53
+ С помощью свойств `isHeaderFixed` и `isFooterFixed` можно закрепить заголовок и футер.
54
54
  В этом случае при появлении прокрутки контент будет скроллиться под них.
55
55
 
56
56
  ```tsx live
@@ -64,7 +64,7 @@ export function App() {
64
64
  return (
65
65
  <>
66
66
  <Button onClick={() => setOpened(true)}>Открыть</Button>
67
- <Sheet opened={opened}
67
+ <Sheet isOpen={opened}
68
68
  onClose={() => setOpened(false)}
69
69
  contentHeader={
70
70
  <div>
@@ -105,7 +105,7 @@ export function App() {
105
105
  <Button onClick={() => setOpened(!opened)}>
106
106
  {opened ? 'Закрыть' : 'Открыть'}
107
107
  </Button>
108
- <Sheet opened={opened}
108
+ <Sheet isOpen={opened}
109
109
  onClose={() => setOpened(false)}
110
110
  withOverlay={false}
111
111
  >
@@ -131,7 +131,7 @@ export function App() {
131
131
  <Button onClick={() => setOpened(!opened)}>
132
132
  {opened ? 'Закрыть' : 'Открыть'}
133
133
  </Button>
134
- <Sheet opened={opened}
134
+ <Sheet isOpen={opened}
135
135
  onClose={() => setOpened(false)}
136
136
  withBlur
137
137
  >
@@ -140,4 +140,4 @@ export function App() {
140
140
  </>
141
141
  );
142
142
  }
143
- ```
143
+ ```
@@ -1,15 +1,15 @@
1
1
  import { useEffect, useRef } from 'react';
2
2
  export var useOverflow = function useOverflow(_ref) {
3
- var opened = _ref.opened;
3
+ var isOpen = _ref.isOpen;
4
4
  var overflow = useRef(document.body.style.overflowY);
5
5
 
6
6
  // linaria не поддерживает динамический global
7
7
  useEffect(function () {
8
- if (opened) {
8
+ if (isOpen) {
9
9
  overflow.current = document.body.style.overflowY;
10
10
  document.body.style.overflowY = 'hidden';
11
11
  return;
12
12
  }
13
13
  document.body.style.overflowY = overflow.current;
14
- }, [opened]);
14
+ }, [isOpen]);
15
15
  };
@@ -222,7 +222,7 @@ const StoryAddCustomItem = (args: StorySelectProps) => {
222
222
  view={view}
223
223
  disabled={disabled}
224
224
  readOnly={readOnly}
225
- opened={opened}
225
+ isOpen={opened}
226
226
  onToggle={onToggle}
227
227
  onChangeValue={onChangeValue}
228
228
  onKeyDown={onKeyDown}
@@ -49,7 +49,7 @@ const StoryDefault = ({
49
49
  <>
50
50
  <Button onClick={() => setOpened(true)}>Открыть</Button>
51
51
  <Sheet
52
- opened={opened}
52
+ isOpen={opened}
53
53
  withOverlay={withOverlay}
54
54
  withTransition={withTransition}
55
55
  onClose={() => setOpened(false)}
@@ -92,7 +92,7 @@ const StoryWithoutOverlay = () => {
92
92
  return (
93
93
  <>
94
94
  <Button onClick={() => setOpened(true)}>Открыть</Button>
95
- <Sheet opened={opened} withOverlay={false} onClose={() => setOpened(false)}>
95
+ <Sheet isOpen={opened} withOverlay={false} onClose={() => setOpened(false)}>
96
96
  <StyledBody>
97
97
  Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae tempore vitae porro laboriosam
98
98
  consectetur fugiat assumenda, earum nesciunt. Distinctio minima nesciunt dicta rem quae vel illum ea
@@ -125,7 +125,7 @@ const StoryWithScroll = ({
125
125
  <>
126
126
  <Button onClick={() => setOpened(true)}>Открыть</Button>
127
127
  <Sheet
128
- opened={opened}
128
+ isOpen={opened}
129
129
  withOverlay={withOverlay}
130
130
  withTransition={withTransition}
131
131
  onClose={() => setOpened(false)}
@@ -195,7 +195,7 @@ const StoryWithInsideScroll = ({
195
195
  <>
196
196
  <Button onClick={() => setOpened(true)}>Открыть</Button>
197
197
  <Sheet
198
- opened={opened}
198
+ isOpen={opened}
199
199
  withOverlay={withOverlay}
200
200
  withTransition={withTransition}
201
201
  onClose={() => setOpened(false)}
@@ -267,7 +267,7 @@ const StoryWithDoubleScroll = ({
267
267
  <>
268
268
  <Button onClick={() => setOpened(true)}>Открыть</Button>
269
269
  <Sheet
270
- opened={opened}
270
+ isOpen={opened}
271
271
  withOverlay={withOverlay}
272
272
  withTransition={withTransition}
273
273
  onClose={() => setOpened(false)}
@@ -222,7 +222,7 @@ const StoryAddCustomItem = (args: StorySelectProps) => {
222
222
  view={view}
223
223
  disabled={disabled}
224
224
  readOnly={readOnly}
225
- opened={opened}
225
+ isOpen={opened}
226
226
  onToggle={onToggle}
227
227
  onChangeValue={onChangeValue}
228
228
  onKeyDown={onKeyDown}
@@ -49,7 +49,7 @@ const StoryDefault = ({
49
49
  <>
50
50
  <Button onClick={() => setOpened(true)}>Открыть</Button>
51
51
  <Sheet
52
- opened={opened}
52
+ isOpen={opened}
53
53
  withOverlay={withOverlay}
54
54
  withTransition={withTransition}
55
55
  onClose={() => setOpened(false)}
@@ -92,7 +92,7 @@ const StoryWithoutOverlay = () => {
92
92
  return (
93
93
  <>
94
94
  <Button onClick={() => setOpened(true)}>Открыть</Button>
95
- <Sheet opened={opened} withOverlay={false} onClose={() => setOpened(false)}>
95
+ <Sheet isOpen={opened} withOverlay={false} onClose={() => setOpened(false)}>
96
96
  <StyledBody>
97
97
  Lorem ipsum dolor sit amet consectetur adipisicing elit. Quae tempore vitae porro laboriosam
98
98
  consectetur fugiat assumenda, earum nesciunt. Distinctio minima nesciunt dicta rem quae vel illum ea
@@ -125,7 +125,7 @@ const StoryWithScroll = ({
125
125
  <>
126
126
  <Button onClick={() => setOpened(true)}>Открыть</Button>
127
127
  <Sheet
128
- opened={opened}
128
+ isOpen={opened}
129
129
  withOverlay={withOverlay}
130
130
  withTransition={withTransition}
131
131
  onClose={() => setOpened(false)}
@@ -195,7 +195,7 @@ const StoryWithInsideScroll = ({
195
195
  <>
196
196
  <Button onClick={() => setOpened(true)}>Открыть</Button>
197
197
  <Sheet
198
- opened={opened}
198
+ isOpen={opened}
199
199
  withOverlay={withOverlay}
200
200
  withTransition={withTransition}
201
201
  onClose={() => setOpened(false)}
@@ -267,7 +267,7 @@ const StoryWithDoubleScroll = ({
267
267
  <>
268
268
  <Button onClick={() => setOpened(true)}>Открыть</Button>
269
269
  <Sheet
270
- opened={opened}
270
+ isOpen={opened}
271
271
  withOverlay={withOverlay}
272
272
  withTransition={withTransition}
273
273
  onClose={() => setOpened(false)}
@@ -18,7 +18,7 @@ import { ComboboxTarget } from './ui/ComboboxTarget/ComboboxTarget.js';
18
18
  import { StyledRoot, StyledNativeSelect, StyledPopover, StyledCombobox, ComboboxItemNotFound } from './Combobox.styles.js';
19
19
  import { getPlacements } from '../../utils/getPopoverPlacement.js';
20
20
 
21
- var _excluded = ["name", "form", "readOnly", "disabled", "label", "placeholder", "id", "children", "role", "view", "size", "frame", "usePortal", "negativeResultContent", "enumerationType", "opened", "placement", "onToggle", "onKeyDown", "filterFunction"];
21
+ var _excluded = ["name", "form", "readOnly", "disabled", "label", "placeholder", "id", "children", "role", "view", "size", "frame", "usePortal", "negativeResultContent", "enumerationType", "opened", "isOpen", "placement", "onToggle", "onKeyDown", "filterFunction"];
22
22
  /**
23
23
  * Выпадающий список без внешнего контроля видимости.
24
24
  */
@@ -44,12 +44,15 @@ var comboboxRoot = function comboboxRoot(Root) {
44
44
  enumerationType = _ref$enumerationType === void 0 ? 'comma' : _ref$enumerationType,
45
45
  _ref$opened = _ref.opened,
46
46
  opened = _ref$opened === void 0 ? false : _ref$opened,
47
+ _ref$isOpen = _ref.isOpen,
48
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
47
49
  _ref$placement = _ref.placement,
48
50
  placement = _ref$placement === void 0 ? 'bottom' : _ref$placement,
49
51
  onToggle = _ref.onToggle,
50
52
  onKeyDown = _ref.onKeyDown,
51
53
  filterFunction = _ref.filterFunction,
52
54
  rest = _objectWithoutProperties(_ref, _excluded);
55
+ var innerIsOpen = opened || isOpen;
53
56
  var forceUpdate = useForceUpdate();
54
57
  var uniqId = safeUseId();
55
58
  var innerId = id || uniqId;
@@ -74,10 +77,10 @@ var comboboxRoot = function comboboxRoot(Root) {
74
77
  itemsRefs: itemsRefs,
75
78
  inputRef: inputRef
76
79
  };
77
- var _useState3 = useState(opened),
80
+ var _useState3 = useState(innerIsOpen),
78
81
  _useState4 = _slicedToArray(_useState3, 2),
79
- innerOpened = _useState4[0],
80
- setInnerOpened = _useState4[1];
82
+ isVisible = _useState4[0],
83
+ setIsVisible = _useState4[1];
81
84
  var _useState5 = useState(''),
82
85
  _useState6 = _slicedToArray(_useState5, 2),
83
86
  search = _useState6[0],
@@ -100,11 +103,11 @@ var comboboxRoot = function comboboxRoot(Root) {
100
103
  if (disabled || readOnly) {
101
104
  return;
102
105
  }
103
- setInnerOpened(opened);
104
- }, [opened, disabled, readOnly]);
106
+ setIsVisible(innerIsOpen);
107
+ }, [innerIsOpen, disabled, readOnly]);
105
108
  useEffect(function () {
106
109
  // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список
107
- if (opened) {
110
+ if (innerIsOpen) {
108
111
  setFilterValue('');
109
112
  }
110
113
  }, []);
@@ -114,14 +117,14 @@ var comboboxRoot = function comboboxRoot(Root) {
114
117
  }
115
118
 
116
119
  // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список
117
- if (!innerOpened) {
120
+ if (!isVisible) {
118
121
  setFilterValue('');
119
122
  }
120
123
  if (onToggle) {
121
124
  onToggle(openValue, event);
122
125
  return;
123
126
  }
124
- setInnerOpened(openValue);
127
+ setIsVisible(openValue);
125
128
  };
126
129
  var closedWithoutChanges = useRef(true);
127
130
  var updateValue = function updateValue(item, event) {
@@ -153,7 +156,7 @@ var comboboxRoot = function comboboxRoot(Root) {
153
156
  };
154
157
  var _useKeyNavigation = useKeyNavigation({
155
158
  controlledRefs: controlledRefs,
156
- opened: innerOpened,
159
+ opened: isVisible,
157
160
  enumerationType: enumerationType,
158
161
  valueType: valueType,
159
162
  componentType: 'combobox',
@@ -173,7 +176,7 @@ var comboboxRoot = function comboboxRoot(Root) {
173
176
  var onSearch = function onSearch(newSearch, newOpened) {
174
177
  setSearch(newSearch);
175
178
  setFilterValue(newSearch);
176
- setInnerOpened(newOpened !== null && newOpened !== void 0 ? newOpened : true);
179
+ setIsVisible(newOpened !== null && newOpened !== void 0 ? newOpened : true);
177
180
  };
178
181
  var onKeyDownHandle = function onKeyDownHandle(event) {
179
182
  onKeyDown === null || onKeyDown === void 0 || onKeyDown(event);
@@ -192,10 +195,10 @@ var comboboxRoot = function comboboxRoot(Root) {
192
195
  disabled: disabled || readOnly
193
196
  }), /*#__PURE__*/React.createElement(StyledPopover, {
194
197
  role: role,
195
- isOpen: innerOpened,
198
+ isOpen: isVisible,
196
199
  onToggle: onInnerToggle,
197
200
  target: /*#__PURE__*/React.createElement(ComboboxTarget, _extends({
198
- opened: innerOpened,
201
+ opened: isVisible,
199
202
  values: values,
200
203
  label: label,
201
204
  placeholder: placeholder,
@@ -1 +1 @@
1
- {"version":3,"file":"Combobox.js","sources":["../../../src/components/Combobox/Combobox.tsx"],"sourcesContent":["import React, { Children, forwardRef, useEffect, useRef, useState } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { cx, getPlacements } from '../../utils';\nimport { useDidMountEffect, useForceUpdate } from '../../hooks';\n\nimport { getChildren, getNewSelected, getValues } from './utils';\nimport { useKeyNavigation } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { ComboboxTarget } from './ui';\nimport { ComboboxItemNotFound, StyledPopover, StyledRoot, StyledCombobox, StyledNativeSelect } from './Combobox.styles';\nimport type { ComboboxPrimitiveValue, ComboboxProps } from './Combobox.types';\n\n/**\n * Выпадающий список без внешнего контроля видимости.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, ComboboxProps>) =>\n forwardRef<HTMLInputElement, ComboboxProps>(\n (\n {\n name,\n form,\n readOnly,\n disabled,\n label,\n placeholder,\n id,\n children,\n role,\n view,\n size,\n frame,\n usePortal,\n negativeResultContent = 'Элементы не найдены',\n enumerationType = 'comma',\n opened = false,\n placement = 'bottom',\n onToggle,\n onKeyDown,\n filterFunction,\n ...rest\n },\n outerRootRef,\n ) => {\n const forceUpdate = useForceUpdate();\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const { valueType = 'single', value } = rest;\n const offset = [0, 4] as [number, number];\n\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n const targetRef = useRef<HTMLInputElement>(null);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n const comboboxRef = useRef<HTMLDivElement>(null);\n const itemsRefs = useRef<Array<HTMLDivElement>>([]);\n const inputRef = useRef<HTMLInputElement>(null);\n const handleRef = useForkRef<HTMLInputElement>(targetRef, outerRootRef);\n const controlledRefs = { targetRef, chipsRefs, selectRef: comboboxRef, itemsRefs, inputRef };\n\n const [innerOpened, setInnerOpened] = useState(opened);\n const [search, setSearch] = useState<string | undefined>('');\n const [filterValue, setFilterValue] = useState(search);\n\n // INFO: нужно высчитывать для корректной работы портала\n const dynamicTargetWidth = targetRef.current?.offsetWidth;\n\n // INFO: Из-за того, что классы передаются через ref,\n // состояние пропсов после изменения view, size\n // всегда предыдущее, поэтому нужно делать форс-ререндер\n useDidMountEffect(() => {\n forceUpdate();\n }, [view, size]);\n\n useEffect(() => {\n if (disabled || readOnly) {\n return;\n }\n\n setInnerOpened(opened);\n }, [opened, disabled, readOnly]);\n\n useEffect(() => {\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (opened) {\n setFilterValue('');\n }\n }, []);\n\n const onInnerToggle = (openValue: boolean, event: React.SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (!innerOpened) {\n setFilterValue('');\n }\n\n if (onToggle) {\n onToggle(openValue, event);\n\n return;\n }\n\n setInnerOpened(openValue);\n };\n\n const closedWithoutChanges = useRef(true);\n\n const updateValue = (item: HTMLElement, event: React.SyntheticEvent | Event) => {\n const {\n dataset: { value: newValue },\n } = item;\n\n if (rest.valueType === 'multiple') {\n const newSelected = getNewSelected(rest.value, newValue, rest.valueType);\n rest.onChangeValue?.(newSelected);\n\n return;\n }\n\n const newSelected = getNewSelected(rest.value, newValue, 'single');\n\n rest.onChangeValue?.(newSelected);\n\n onInnerToggle?.(false, event);\n\n closedWithoutChanges.current = false;\n };\n\n const onClickChildrenItem = (event: React.MouseEvent<HTMLDivElement>) => {\n // INFO: Для корректной работы компонента Popper\n event.stopPropagation();\n\n const item = event.currentTarget as HTMLElement;\n\n updateValue(item, event);\n };\n\n const onChangeChipValue = (newValue?: Array<ComboboxPrimitiveValue>) => {\n if (rest.valueType !== 'multiple') {\n return;\n }\n\n rest.onChangeValue?.(newValue);\n };\n\n const { onKeyDownTarget, onKeyDownSelect } = useKeyNavigation({\n controlledRefs,\n opened: innerOpened,\n enumerationType,\n valueType,\n componentType: 'combobox',\n value,\n search: filterValue,\n updateOpened: onInnerToggle,\n updateValue,\n });\n\n const childrenArray = Children.toArray(children) as React.ReactElement[];\n\n const childrenMemo = getChildren(\n childrenArray,\n { onClick: onClickChildrenItem, childrenRefs: itemsRefs },\n value,\n filterValue,\n filterFunction,\n ).filter(Boolean);\n\n const values = getValues(childrenArray, value);\n\n const onSearch = (newSearch?: string, newOpened?: boolean) => {\n setSearch(newSearch);\n setFilterValue(newSearch);\n setInnerOpened(newOpened ?? true);\n };\n\n const onKeyDownHandle = (event: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown?.(event);\n onKeyDownTarget(event);\n };\n\n return (\n <StyledRoot ref={comboboxRef}>\n <StyledNativeSelect\n aria-invalid=\"false\"\n aria-hidden=\"true\"\n aria-readonly={readOnly}\n tabIndex={-1}\n form={form}\n name={name}\n value={`${value}`}\n disabled={disabled || readOnly}\n />\n <StyledPopover\n role={role}\n isOpen={innerOpened}\n onToggle={onInnerToggle}\n target={\n <ComboboxTarget\n opened={innerOpened}\n values={values}\n label={label}\n placeholder={placeholder}\n search={search}\n enumerationType={enumerationType}\n valueType={valueType}\n readOnly={readOnly}\n disabled={disabled}\n size={size}\n closedWithoutChanges={closedWithoutChanges}\n ref={handleRef}\n chipsRefs={chipsRefs}\n inputRef={inputRef}\n id={innerId}\n onChange={onChangeChipValue}\n onSearch={onSearch}\n onKeyDown={onKeyDownHandle}\n {...rest}\n />\n }\n className={cx(ref?.classList.toString())} // INFO: Прокидываем стили для Popover\n id={innerId}\n offset={offset}\n placement={getPlacements(placement)}\n usePortal={usePortal}\n selectWidth={dynamicTargetWidth}\n frame={frame}\n trigger=\"click\"\n isFocusTrapped={false}\n preventOverflow={false}\n closeOnEsc={false}\n closeOnOverlayClick\n >\n <Root ref={setRef} view={view} size={size}>\n <StyledCombobox onKeyDown={onKeyDownSelect}>\n {childrenMemo.length ? (\n childrenMemo\n ) : (\n <ComboboxItemNotFound>{negativeResultContent}</ComboboxItemNotFound>\n )}\n </StyledCombobox>\n </Root>\n </StyledPopover>\n </StyledRoot>\n );\n },\n );\n\nexport const comboboxConfig = {\n name: 'Combobox',\n tag: 'div',\n layout: comboboxRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["comboboxRoot","Root","forwardRef","_ref","outerRootRef","_targetRef$current","name","form","readOnly","disabled","label","placeholder","id","children","role","view","size","frame","usePortal","_ref$negativeResultCo","negativeResultContent","_ref$enumerationType","enumerationType","_ref$opened","opened","_ref$placement","placement","onToggle","onKeyDown","filterFunction","rest","_objectWithoutProperties","_excluded","forceUpdate","useForceUpdate","uniqId","safeUseId","innerId","_rest$valueType","valueType","value","offset","_useState","useState","_useState2","_slicedToArray","ref","setRef","targetRef","useRef","chipsRefs","comboboxRef","itemsRefs","inputRef","handleRef","useForkRef","controlledRefs","selectRef","_useState3","_useState4","innerOpened","setInnerOpened","_useState5","_useState6","search","setSearch","_useState7","_useState8","filterValue","setFilterValue","dynamicTargetWidth","current","offsetWidth","useDidMountEffect","useEffect","onInnerToggle","openValue","event","closedWithoutChanges","updateValue","item","_rest$onChangeValue2","newValue","dataset","_rest$onChangeValue","newSelected","getNewSelected","onChangeValue","call","onClickChildrenItem","stopPropagation","currentTarget","onChangeChipValue","_rest$onChangeValue3","_useKeyNavigation","useKeyNavigation","componentType","updateOpened","onKeyDownTarget","onKeyDownSelect","childrenArray","Children","toArray","childrenMemo","getChildren","onClick","childrenRefs","filter","Boolean","values","getValues","onSearch","newSearch","newOpened","onKeyDownHandle","React","createElement","StyledRoot","StyledNativeSelect","tabIndex","concat","StyledPopover","isOpen","target","ComboboxTarget","_extends","onChange","className","cx","classList","toString","getPlacements","selectWidth","trigger","isFocusTrapped","preventOverflow","closeOnEsc","closeOnOverlayClick","StyledCombobox","length","ComboboxItemNotFound","comboboxConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Combobox.js","sources":["../../../src/components/Combobox/Combobox.tsx"],"sourcesContent":["import React, { Children, forwardRef, useEffect, useRef, useState } from 'react';\nimport { safeUseId, useForkRef } from '@salutejs/plasma-core';\n\nimport { RootProps } from '../../engines';\nimport { cx, getPlacements } from '../../utils';\nimport { useDidMountEffect, useForceUpdate } from '../../hooks';\n\nimport { getChildren, getNewSelected, getValues } from './utils';\nimport { useKeyNavigation } from './hooks';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { ComboboxTarget } from './ui';\nimport { ComboboxItemNotFound, StyledPopover, StyledRoot, StyledCombobox, StyledNativeSelect } from './Combobox.styles';\nimport type { ComboboxPrimitiveValue, ComboboxProps } from './Combobox.types';\n\n/**\n * Выпадающий список без внешнего контроля видимости.\n */\nexport const comboboxRoot = (Root: RootProps<HTMLInputElement, ComboboxProps>) =>\n forwardRef<HTMLInputElement, ComboboxProps>(\n (\n {\n name,\n form,\n readOnly,\n disabled,\n label,\n placeholder,\n id,\n children,\n role,\n view,\n size,\n frame,\n usePortal,\n negativeResultContent = 'Элементы не найдены',\n enumerationType = 'comma',\n opened = false,\n isOpen = false,\n placement = 'bottom',\n onToggle,\n onKeyDown,\n filterFunction,\n ...rest\n },\n outerRootRef,\n ) => {\n const innerIsOpen = opened || isOpen;\n\n const forceUpdate = useForceUpdate();\n const uniqId = safeUseId();\n const innerId = id || uniqId;\n const { valueType = 'single', value } = rest;\n const offset = [0, 4] as [number, number];\n\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n const targetRef = useRef<HTMLInputElement>(null);\n const chipsRefs = useRef<Array<HTMLButtonElement>>([]);\n const comboboxRef = useRef<HTMLDivElement>(null);\n const itemsRefs = useRef<Array<HTMLDivElement>>([]);\n const inputRef = useRef<HTMLInputElement>(null);\n const handleRef = useForkRef<HTMLInputElement>(targetRef, outerRootRef);\n const controlledRefs = { targetRef, chipsRefs, selectRef: comboboxRef, itemsRefs, inputRef };\n\n const [isVisible, setIsVisible] = useState(innerIsOpen);\n const [search, setSearch] = useState<string | undefined>('');\n const [filterValue, setFilterValue] = useState(search);\n\n // INFO: нужно высчитывать для корректной работы портала\n const dynamicTargetWidth = targetRef.current?.offsetWidth;\n\n // INFO: Из-за того, что классы передаются через ref,\n // состояние пропсов после изменения view, size\n // всегда предыдущее, поэтому нужно делать форс-ререндер\n useDidMountEffect(() => {\n forceUpdate();\n }, [view, size]);\n\n useEffect(() => {\n if (disabled || readOnly) {\n return;\n }\n\n setIsVisible(innerIsOpen);\n }, [innerIsOpen, disabled, readOnly]);\n\n useEffect(() => {\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (innerIsOpen) {\n setFilterValue('');\n }\n }, []);\n\n const onInnerToggle = (openValue: boolean, event: React.SyntheticEvent | Event) => {\n if (disabled || readOnly) {\n return;\n }\n\n // INFO: Для кейсов, когда значение выбрано и нужно вывести весь список\n if (!isVisible) {\n setFilterValue('');\n }\n\n if (onToggle) {\n onToggle(openValue, event);\n\n return;\n }\n\n setIsVisible(openValue);\n };\n\n const closedWithoutChanges = useRef(true);\n\n const updateValue = (item: HTMLElement, event: React.SyntheticEvent | Event) => {\n const {\n dataset: { value: newValue },\n } = item;\n\n if (rest.valueType === 'multiple') {\n const newSelected = getNewSelected(rest.value, newValue, rest.valueType);\n rest.onChangeValue?.(newSelected);\n\n return;\n }\n\n const newSelected = getNewSelected(rest.value, newValue, 'single');\n\n rest.onChangeValue?.(newSelected);\n\n onInnerToggle?.(false, event);\n\n closedWithoutChanges.current = false;\n };\n\n const onClickChildrenItem = (event: React.MouseEvent<HTMLDivElement>) => {\n // INFO: Для корректной работы компонента Popper\n event.stopPropagation();\n\n const item = event.currentTarget as HTMLElement;\n\n updateValue(item, event);\n };\n\n const onChangeChipValue = (newValue?: Array<ComboboxPrimitiveValue>) => {\n if (rest.valueType !== 'multiple') {\n return;\n }\n\n rest.onChangeValue?.(newValue);\n };\n\n const { onKeyDownTarget, onKeyDownSelect } = useKeyNavigation({\n controlledRefs,\n opened: isVisible,\n enumerationType,\n valueType,\n componentType: 'combobox',\n value,\n search: filterValue,\n updateOpened: onInnerToggle,\n updateValue,\n });\n\n const childrenArray = Children.toArray(children) as React.ReactElement[];\n\n const childrenMemo = getChildren(\n childrenArray,\n { onClick: onClickChildrenItem, childrenRefs: itemsRefs },\n value,\n filterValue,\n filterFunction,\n ).filter(Boolean);\n\n const values = getValues(childrenArray, value);\n\n const onSearch = (newSearch?: string, newOpened?: boolean) => {\n setSearch(newSearch);\n setFilterValue(newSearch);\n setIsVisible(newOpened ?? true);\n };\n\n const onKeyDownHandle = (event: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown?.(event);\n onKeyDownTarget(event);\n };\n\n return (\n <StyledRoot ref={comboboxRef}>\n <StyledNativeSelect\n aria-invalid=\"false\"\n aria-hidden=\"true\"\n aria-readonly={readOnly}\n tabIndex={-1}\n form={form}\n name={name}\n value={`${value}`}\n disabled={disabled || readOnly}\n />\n <StyledPopover\n role={role}\n isOpen={isVisible}\n onToggle={onInnerToggle}\n target={\n <ComboboxTarget\n opened={isVisible}\n values={values}\n label={label}\n placeholder={placeholder}\n search={search}\n enumerationType={enumerationType}\n valueType={valueType}\n readOnly={readOnly}\n disabled={disabled}\n size={size}\n closedWithoutChanges={closedWithoutChanges}\n ref={handleRef}\n chipsRefs={chipsRefs}\n inputRef={inputRef}\n id={innerId}\n onChange={onChangeChipValue}\n onSearch={onSearch}\n onKeyDown={onKeyDownHandle}\n {...rest}\n />\n }\n className={cx(ref?.classList.toString())} // INFO: Прокидываем стили для Popover\n id={innerId}\n offset={offset}\n placement={getPlacements(placement)}\n usePortal={usePortal}\n selectWidth={dynamicTargetWidth}\n frame={frame}\n trigger=\"click\"\n isFocusTrapped={false}\n preventOverflow={false}\n closeOnEsc={false}\n closeOnOverlayClick\n >\n <Root ref={setRef} view={view} size={size}>\n <StyledCombobox onKeyDown={onKeyDownSelect}>\n {childrenMemo.length ? (\n childrenMemo\n ) : (\n <ComboboxItemNotFound>{negativeResultContent}</ComboboxItemNotFound>\n )}\n </StyledCombobox>\n </Root>\n </StyledPopover>\n </StyledRoot>\n );\n },\n );\n\nexport const comboboxConfig = {\n name: 'Combobox',\n tag: 'div',\n layout: comboboxRoot,\n base: '',\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["comboboxRoot","Root","forwardRef","_ref","outerRootRef","_targetRef$current","name","form","readOnly","disabled","label","placeholder","id","children","role","view","size","frame","usePortal","_ref$negativeResultCo","negativeResultContent","_ref$enumerationType","enumerationType","_ref$opened","opened","_ref$isOpen","isOpen","_ref$placement","placement","onToggle","onKeyDown","filterFunction","rest","_objectWithoutProperties","_excluded","innerIsOpen","forceUpdate","useForceUpdate","uniqId","safeUseId","innerId","_rest$valueType","valueType","value","offset","_useState","useState","_useState2","_slicedToArray","ref","setRef","targetRef","useRef","chipsRefs","comboboxRef","itemsRefs","inputRef","handleRef","useForkRef","controlledRefs","selectRef","_useState3","_useState4","isVisible","setIsVisible","_useState5","_useState6","search","setSearch","_useState7","_useState8","filterValue","setFilterValue","dynamicTargetWidth","current","offsetWidth","useDidMountEffect","useEffect","onInnerToggle","openValue","event","closedWithoutChanges","updateValue","item","_rest$onChangeValue2","newValue","dataset","_rest$onChangeValue","newSelected","getNewSelected","onChangeValue","call","onClickChildrenItem","stopPropagation","currentTarget","onChangeChipValue","_rest$onChangeValue3","_useKeyNavigation","useKeyNavigation","componentType","updateOpened","onKeyDownTarget","onKeyDownSelect","childrenArray","Children","toArray","childrenMemo","getChildren","onClick","childrenRefs","filter","Boolean","values","getValues","onSearch","newSearch","newOpened","onKeyDownHandle","React","createElement","StyledRoot","StyledNativeSelect","tabIndex","concat","StyledPopover","target","ComboboxTarget","_extends","onChange","className","cx","classList","toString","getPlacements","selectWidth","trigger","isFocusTrapped","preventOverflow","closeOnEsc","closeOnOverlayClick","StyledCombobox","length","ComboboxItemNotFound","comboboxConfig","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAeA;AACA;AACA;IACaA,YAAY,GAAG,SAAfA,YAAYA,CAAIC,IAAgD,EAAA;AAAA,EAAA,oBACzEC,UAAU,CACN,UAAAC,IAAA,EAyBIC,YAAY,EACX;AAAA,IAAA,IAAAC,kBAAA,CAAA;AAAA,IAAA,IAxBGC,IAAI,GAAAH,IAAA,CAAJG,IAAI;MACJC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;MACJC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;MACRC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;MACRC,KAAK,GAAAP,IAAA,CAALO,KAAK;MACLC,WAAW,GAAAR,IAAA,CAAXQ,WAAW;MACXC,EAAE,GAAAT,IAAA,CAAFS,EAAE;MACFC,QAAQ,GAAAV,IAAA,CAARU,QAAQ;MACRC,IAAI,GAAAX,IAAA,CAAJW,IAAI;MACJC,IAAI,GAAAZ,IAAA,CAAJY,IAAI;MACJC,IAAI,GAAAb,IAAA,CAAJa,IAAI;MACJC,KAAK,GAAAd,IAAA,CAALc,KAAK;MACLC,SAAS,GAAAf,IAAA,CAATe,SAAS;MAAAC,qBAAA,GAAAhB,IAAA,CACTiB,qBAAqB;AAArBA,MAAAA,qBAAqB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,qBAAqB,GAAAA,qBAAA;MAAAE,oBAAA,GAAAlB,IAAA,CAC7CmB,eAAe;AAAfA,MAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,oBAAA;MAAAE,WAAA,GAAApB,IAAA,CACzBqB,MAAM;AAANA,MAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,WAAA;MAAAE,WAAA,GAAAtB,IAAA,CACduB,MAAM;AAANA,MAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,WAAA;MAAAE,cAAA,GAAAxB,IAAA,CACdyB,SAAS;AAATA,MAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,cAAA;MACpBE,QAAQ,GAAA1B,IAAA,CAAR0B,QAAQ;MACRC,SAAS,GAAA3B,IAAA,CAAT2B,SAAS;MACTC,cAAc,GAAA5B,IAAA,CAAd4B,cAAc;AACXC,MAAAA,IAAI,GAAAC,wBAAA,CAAA9B,IAAA,EAAA+B,SAAA,CAAA,CAAA;AAIX,IAAA,IAAMC,WAAW,GAAGX,MAAM,IAAIE,MAAM,CAAA;AAEpC,IAAA,IAAMU,WAAW,GAAGC,cAAc,EAAE,CAAA;AACpC,IAAA,IAAMC,MAAM,GAAGC,SAAS,EAAE,CAAA;AAC1B,IAAA,IAAMC,OAAO,GAAG5B,EAAE,IAAI0B,MAAM,CAAA;AAC5B,IAAA,IAAAG,eAAA,GAAwCT,IAAI,CAApCU,SAAS;AAATA,MAAAA,SAAS,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,eAAA;MAAEE,KAAK,GAAKX,IAAI,CAAdW,KAAK,CAAA;AACnC,IAAA,IAAMC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAqB,CAAA;AAEzC,IAAA,IAAAC,SAAA,GAAsBC,QAAQ,CAA0B,IAAI,CAAC;MAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDI,MAAAA,GAAG,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,MAAM,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAElB,IAAA,IAAMI,SAAS,GAAGC,MAAM,CAAmB,IAAI,CAAC,CAAA;AAChD,IAAA,IAAMC,SAAS,GAAGD,MAAM,CAA2B,EAAE,CAAC,CAAA;AACtD,IAAA,IAAME,WAAW,GAAGF,MAAM,CAAiB,IAAI,CAAC,CAAA;AAChD,IAAA,IAAMG,SAAS,GAAGH,MAAM,CAAwB,EAAE,CAAC,CAAA;AACnD,IAAA,IAAMI,QAAQ,GAAGJ,MAAM,CAAmB,IAAI,CAAC,CAAA;AAC/C,IAAA,IAAMK,SAAS,GAAGC,UAAU,CAAmBP,SAAS,EAAE/C,YAAY,CAAC,CAAA;AACvE,IAAA,IAAMuD,cAAc,GAAG;AAAER,MAAAA,SAAS,EAATA,SAAS;AAAEE,MAAAA,SAAS,EAATA,SAAS;AAAEO,MAAAA,SAAS,EAAEN,WAAW;AAAEC,MAAAA,SAAS,EAATA,SAAS;AAAEC,MAAAA,QAAQ,EAARA,QAAAA;KAAU,CAAA;AAE5F,IAAA,IAAAK,UAAA,GAAkCf,QAAQ,CAACX,WAAW,CAAC;MAAA2B,UAAA,GAAAd,cAAA,CAAAa,UAAA,EAAA,CAAA,CAAA;AAAhDE,MAAAA,SAAS,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAC9B,IAAA,IAAAG,UAAA,GAA4BnB,QAAQ,CAAqB,EAAE,CAAC;MAAAoB,UAAA,GAAAlB,cAAA,CAAAiB,UAAA,EAAA,CAAA,CAAA;AAArDE,MAAAA,MAAM,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AACxB,IAAA,IAAAG,UAAA,GAAsCvB,QAAQ,CAACqB,MAAM,CAAC;MAAAG,UAAA,GAAAtB,cAAA,CAAAqB,UAAA,EAAA,CAAA,CAAA;AAA/CE,MAAAA,WAAW,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,MAAAA,cAAc,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;;AAElC;AACA,IAAA,IAAMG,kBAAkB,GAAA,CAAApE,kBAAA,GAAG8C,SAAS,CAACuB,OAAO,MAAA,IAAA,IAAArE,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,kBAAA,CAAmBsE,WAAW,CAAA;;AAEzD;AACA;AACA;AACAC,IAAAA,iBAAiB,CAAC,YAAM;AACpBxC,MAAAA,WAAW,EAAE,CAAA;AACjB,KAAC,EAAE,CAACrB,IAAI,EAAEC,IAAI,CAAC,CAAC,CAAA;AAEhB6D,IAAAA,SAAS,CAAC,YAAM;MACZ,IAAIpE,QAAQ,IAAID,QAAQ,EAAE;AACtB,QAAA,OAAA;AACJ,OAAA;MAEAwD,YAAY,CAAC7B,WAAW,CAAC,CAAA;KAC5B,EAAE,CAACA,WAAW,EAAE1B,QAAQ,EAAED,QAAQ,CAAC,CAAC,CAAA;AAErCqE,IAAAA,SAAS,CAAC,YAAM;AACZ;AACA,MAAA,IAAI1C,WAAW,EAAE;QACbqC,cAAc,CAAC,EAAE,CAAC,CAAA;AACtB,OAAA;KACH,EAAE,EAAE,CAAC,CAAA;IAEN,IAAMM,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,SAAkB,EAAEC,KAAmC,EAAK;MAC/E,IAAIvE,QAAQ,IAAID,QAAQ,EAAE;AACtB,QAAA,OAAA;AACJ,OAAA;;AAEA;MACA,IAAI,CAACuD,SAAS,EAAE;QACZS,cAAc,CAAC,EAAE,CAAC,CAAA;AACtB,OAAA;AAEA,MAAA,IAAI3C,QAAQ,EAAE;AACVA,QAAAA,QAAQ,CAACkD,SAAS,EAAEC,KAAK,CAAC,CAAA;AAE1B,QAAA,OAAA;AACJ,OAAA;MAEAhB,YAAY,CAACe,SAAS,CAAC,CAAA;KAC1B,CAAA;AAED,IAAA,IAAME,oBAAoB,GAAG7B,MAAM,CAAC,IAAI,CAAC,CAAA;IAEzC,IAAM8B,WAAW,GAAG,SAAdA,WAAWA,CAAIC,IAAiB,EAAEH,KAAmC,EAAK;AAAA,MAAA,IAAAI,oBAAA,CAAA;AAC5E,MAAA,IACsBC,QAAQ,GAC1BF,IAAI,CADJG,OAAO,CAAI3C,KAAK,CAAA;AAGpB,MAAA,IAAIX,IAAI,CAACU,SAAS,KAAK,UAAU,EAAE;AAAA,QAAA,IAAA6C,mBAAA,CAAA;AAC/B,QAAA,IAAMC,YAAW,GAAGC,cAAc,CAACzD,IAAI,CAACW,KAAK,EAAE0C,QAAQ,EAAErD,IAAI,CAACU,SAAS,CAAC,CAAA;AACxE,QAAA,CAAA6C,mBAAA,GAAAvD,IAAI,CAAC0D,aAAa,MAAAH,IAAAA,IAAAA,mBAAA,KAAlBA,KAAAA,CAAAA,IAAAA,mBAAA,CAAAI,IAAA,CAAA3D,IAAI,EAAiBwD,YAAW,CAAC,CAAA;AAEjC,QAAA,OAAA;AACJ,OAAA;MAEA,IAAMA,WAAW,GAAGC,cAAc,CAACzD,IAAI,CAACW,KAAK,EAAE0C,QAAQ,EAAE,QAAQ,CAAC,CAAA;AAElE,MAAA,CAAAD,oBAAA,GAAApD,IAAI,CAAC0D,aAAa,MAAAN,IAAAA,IAAAA,oBAAA,KAAlBA,KAAAA,CAAAA,IAAAA,oBAAA,CAAAO,IAAA,CAAA3D,IAAI,EAAiBwD,WAAW,CAAC,CAAA;MAEjCV,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAbA,KAAAA,CAAAA,IAAAA,aAAa,CAAG,KAAK,EAAEE,KAAK,CAAC,CAAA;MAE7BC,oBAAoB,CAACP,OAAO,GAAG,KAAK,CAAA;KACvC,CAAA;AAED,IAAA,IAAMkB,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIZ,KAAuC,EAAK;AACrE;MACAA,KAAK,CAACa,eAAe,EAAE,CAAA;AAEvB,MAAA,IAAMV,IAAI,GAAGH,KAAK,CAACc,aAA4B,CAAA;AAE/CZ,MAAAA,WAAW,CAACC,IAAI,EAAEH,KAAK,CAAC,CAAA;KAC3B,CAAA;AAED,IAAA,IAAMe,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIV,QAAwC,EAAK;AAAA,MAAA,IAAAW,oBAAA,CAAA;AACpE,MAAA,IAAIhE,IAAI,CAACU,SAAS,KAAK,UAAU,EAAE;AAC/B,QAAA,OAAA;AACJ,OAAA;AAEA,MAAA,CAAAsD,oBAAA,GAAAhE,IAAI,CAAC0D,aAAa,MAAAM,IAAAA,IAAAA,oBAAA,KAAlBA,KAAAA,CAAAA,IAAAA,oBAAA,CAAAL,IAAA,CAAA3D,IAAI,EAAiBqD,QAAQ,CAAC,CAAA;KACjC,CAAA;IAED,IAAAY,iBAAA,GAA6CC,gBAAgB,CAAC;AAC1DvC,QAAAA,cAAc,EAAdA,cAAc;AACdnC,QAAAA,MAAM,EAAEuC,SAAS;AACjBzC,QAAAA,eAAe,EAAfA,eAAe;AACfoB,QAAAA,SAAS,EAATA,SAAS;AACTyD,QAAAA,aAAa,EAAE,UAAU;AACzBxD,QAAAA,KAAK,EAALA,KAAK;AACLwB,QAAAA,MAAM,EAAEI,WAAW;AACnB6B,QAAAA,YAAY,EAAEtB,aAAa;AAC3BI,QAAAA,WAAW,EAAXA,WAAAA;AACJ,OAAC,CAAC;MAVMmB,eAAe,GAAAJ,iBAAA,CAAfI,eAAe;MAAEC,eAAe,GAAAL,iBAAA,CAAfK,eAAe,CAAA;AAYxC,IAAA,IAAMC,aAAa,GAAGC,QAAQ,CAACC,OAAO,CAAC5F,QAAQ,CAAyB,CAAA;AAExE,IAAA,IAAM6F,YAAY,GAAGC,WAAW,CAC5BJ,aAAa,EACb;AAAEK,MAAAA,OAAO,EAAEhB,mBAAmB;AAAEiB,MAAAA,YAAY,EAAEtD,SAAAA;KAAW,EACzDZ,KAAK,EACL4B,WAAW,EACXxC,cACJ,CAAC,CAAC+E,MAAM,CAACC,OAAO,CAAC,CAAA;AAEjB,IAAA,IAAMC,MAAM,GAAGC,SAAS,CAACV,aAAa,EAAE5D,KAAK,CAAC,CAAA;IAE9C,IAAMuE,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,SAAkB,EAAEC,SAAmB,EAAK;MAC1DhD,SAAS,CAAC+C,SAAS,CAAC,CAAA;MACpB3C,cAAc,CAAC2C,SAAS,CAAC,CAAA;MACzBnD,YAAY,CAACoD,SAAS,KAATA,IAAAA,IAAAA,SAAS,cAATA,SAAS,GAAI,IAAI,CAAC,CAAA;KAClC,CAAA;AAED,IAAA,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIrC,KAA4C,EAAK;AACtElD,MAAAA,SAAS,aAATA,SAAS,KAAA,KAAA,CAAA,IAATA,SAAS,CAAGkD,KAAK,CAAC,CAAA;MAClBqB,eAAe,CAACrB,KAAK,CAAC,CAAA;KACzB,CAAA;AAED,IAAA,oBACIsC,KAAA,CAAAC,aAAA,CAACC,UAAU,EAAA;AAACvE,MAAAA,GAAG,EAAEK,WAAAA;AAAY,KAAA,eACzBgE,KAAA,CAAAC,aAAA,CAACE,kBAAkB,EAAA;AACf,MAAA,cAAA,EAAa,OAAO;AACpB,MAAA,aAAA,EAAY,MAAM;AAClB,MAAA,eAAA,EAAejH,QAAS;MACxBkH,QAAQ,EAAE,CAAC,CAAE;AACbnH,MAAAA,IAAI,EAAEA,IAAK;AACXD,MAAAA,IAAI,EAAEA,IAAK;AACXqC,MAAAA,KAAK,EAAAgF,EAAAA,CAAAA,MAAA,CAAKhF,KAAK,CAAG;MAClBlC,QAAQ,EAAEA,QAAQ,IAAID,QAAAA;AAAS,KAClC,CAAC,eACF8G,KAAA,CAAAC,aAAA,CAACK,aAAa,EAAA;AACV9G,MAAAA,IAAI,EAAEA,IAAK;AACXY,MAAAA,MAAM,EAAEqC,SAAU;AAClBlC,MAAAA,QAAQ,EAAEiD,aAAc;AACxB+C,MAAAA,MAAM,eACFP,KAAA,CAAAC,aAAA,CAACO,cAAc,EAAAC,QAAA,CAAA;AACXvG,QAAAA,MAAM,EAAEuC,SAAU;AAClBiD,QAAAA,MAAM,EAAEA,MAAO;AACftG,QAAAA,KAAK,EAAEA,KAAM;AACbC,QAAAA,WAAW,EAAEA,WAAY;AACzBwD,QAAAA,MAAM,EAAEA,MAAO;AACf7C,QAAAA,eAAe,EAAEA,eAAgB;AACjCoB,QAAAA,SAAS,EAAEA,SAAU;AACrBlC,QAAAA,QAAQ,EAAEA,QAAS;AACnBC,QAAAA,QAAQ,EAAEA,QAAS;AACnBO,QAAAA,IAAI,EAAEA,IAAK;AACXiE,QAAAA,oBAAoB,EAAEA,oBAAqB;AAC3ChC,QAAAA,GAAG,EAAEQ,SAAU;AACfJ,QAAAA,SAAS,EAAEA,SAAU;AACrBG,QAAAA,QAAQ,EAAEA,QAAS;AACnB5C,QAAAA,EAAE,EAAE4B,OAAQ;AACZwF,QAAAA,QAAQ,EAAEjC,iBAAkB;AAC5BmB,QAAAA,QAAQ,EAAEA,QAAS;AACnBpF,QAAAA,SAAS,EAAEuF,eAAAA;OACPrF,EAAAA,IAAI,CACX,CACJ;AACDiG,MAAAA,SAAS,EAAEC,EAAE,CAACjF,GAAG,aAAHA,GAAG,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAHA,GAAG,CAAEkF,SAAS,CAACC,QAAQ,EAAE,CAAE;AAAC;AAC1CxH,MAAAA,EAAE,EAAE4B,OAAQ;AACZI,MAAAA,MAAM,EAAEA,MAAO;AACfhB,MAAAA,SAAS,EAAEyG,aAAa,CAACzG,SAAS,CAAE;AACpCV,MAAAA,SAAS,EAAEA,SAAU;AACrBoH,MAAAA,WAAW,EAAE7D,kBAAmB;AAChCxD,MAAAA,KAAK,EAAEA,KAAM;AACbsH,MAAAA,OAAO,EAAC,OAAO;AACfC,MAAAA,cAAc,EAAE,KAAM;AACtBC,MAAAA,eAAe,EAAE,KAAM;AACvBC,MAAAA,UAAU,EAAE,KAAM;MAClBC,mBAAmB,EAAA,IAAA;AAAA,KAAA,eAEnBrB,KAAA,CAAAC,aAAA,CAACtH,IAAI,EAAA;AAACgD,MAAAA,GAAG,EAAEC,MAAO;AAACnC,MAAAA,IAAI,EAAEA,IAAK;AAACC,MAAAA,IAAI,EAAEA,IAAAA;AAAK,KAAA,eACtCsG,KAAA,CAAAC,aAAA,CAACqB,cAAc,EAAA;AAAC9G,MAAAA,SAAS,EAAEwE,eAAAA;AAAgB,KAAA,EACtCI,YAAY,CAACmC,MAAM,GAChBnC,YAAY,gBAEZY,KAAA,CAAAC,aAAA,CAACuB,oBAAoB,EAAE1H,IAAAA,EAAAA,qBAA4C,CAE3D,CACd,CACK,CACP,CAAC,CAAA;AAErB,GACJ,CAAC,CAAA;AAAA,EAAA;AAEE,IAAM2H,cAAc,GAAG;AAC1BzI,EAAAA,IAAI,EAAE,UAAU;AAChB0I,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,MAAM,EAAEjJ,YAAY;AACpBkJ,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,UAAU,EAAE;AACRpI,IAAAA,IAAI,EAAE;AACFqI,MAAAA,GAAG,EAAEC,IAAAA;KACR;AACDrI,IAAAA,IAAI,EAAE;AACFoI,MAAAA,GAAG,EAAEE,MAAAA;AACT,KAAA;GACH;AACDC,EAAAA,QAAQ,EAAE;AACNxI,IAAAA,IAAI,EAAE,SAAS;AACfC,IAAAA,IAAI,EAAE,GAAA;AACV,GAAA;AACJ;;;;"}
@@ -248,7 +248,7 @@ var selectRoot = function selectRoot(Root) {
248
248
  onToggle: handleToggle,
249
249
  trigger: "click",
250
250
  target: /*#__PURE__*/React.createElement(Target, {
251
- opened: isCurrentListOpen,
251
+ isOpen: isCurrentListOpen,
252
252
  target: target,
253
253
  value: value,
254
254
  isTargetAmount: isTargetAmount,
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty, getPlacements } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors } from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer, focusedChipIndexReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { StyledPopover, Ul, base, OuterLabel, HelperText } from './Select.styles';\nimport type { SelectProps, ItemContext } from './Select.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<SelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, SelectProps>((props, ref) => {\n const {\n multiselect = false,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement = 'outer',\n placeholder,\n helperText,\n isTargetAmount = false,\n disabled = false,\n view,\n size,\n listOverflow,\n listHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n ...rest\n } = props;\n\n const [internalValue, setInternalValue] = useState<string | string[]>(outerValue || multiselect ? [] : '');\n\n const value = outerValue || internalValue;\n\n const onChange = (e: string | string[]) => {\n if (outerOnChange) {\n outerOnChange(e as any);\n }\n\n setInternalValue(e);\n };\n\n const transformedItems = useMemo(() => initialItemsTransform(items), [items]);\n\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [focusedChipIndex, dispatchFocusedChipIndex] = useReducer(focusedChipIndexReducer, null);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const targetRef = useOutsideClick<HTMLDivElement>(() => {\n if (focusedChipIndex != null) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n });\n\n const handleToggle = (opened: boolean) => {\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n };\n\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value.toString())) {\n checkedCopy.set(item.value.toString(), true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value.toString(), false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value.toString());\n }\n });\n\n if (onChange) {\n onChange(newValues as any);\n }\n };\n\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiselect) {\n handleCheckboxChange(item);\n } else {\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n if (onChange) {\n onChange((isCurrentChecked ? '' : item.value) as any);\n }\n }\n };\n\n const handleChipClick = (currentValue: string) => {\n handleCheckboxChange(valueToItemMap.get(currentValue)!);\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n value,\n valueToItemMap,\n multiselect,\n isTargetAmount,\n });\n\n const isCurrentListOpen = Boolean(path[0]);\n\n // В данном эффекте мы следим за изменениями value и вносим коррективы в дерево чекбоксов.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value as string, 'done');\n updateSingleAncestors(valueToItemMap.get(value as string)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root ref={ref} size={size} view={view} chipView={chipView} {...(rest as any)}>\n {label && labelPlacement === 'outer' && target !== 'button-like' && <OuterLabel>{label}</OuterLabel>}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n }}\n >\n <StyledPopover\n ref={targetRef}\n isOpen={isCurrentListOpen}\n placement={getPlacements(placement)}\n usePortal={Boolean(portal)}\n frame={portal}\n onToggle={handleToggle}\n trigger=\"click\"\n target={\n <Target\n opened={isCurrentListOpen}\n target={target}\n value={value}\n isTargetAmount={isTargetAmount}\n multiselect={multiselect}\n valueToItemMap={valueToItemMap}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n onChipClick={handleChipClick}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n focusedChipIndex={focusedChipIndex}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n />\n }\n preventOverflow={false}\n closeOnOverlayClick\n >\n <Root size={size} {...(rest as any)}>\n <Ul\n role=\"tree\"\n id=\"tree_level_1\"\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\n >\n {transformedItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </Root>\n </StyledPopover>\n </Context.Provider>\n {helperText && target === 'textfield-like' && <HelperText>{helperText}</HelperText>}\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n chipView: 'default',\n size: 'm',\n },\n};\n"],"names":["Context","createContext","selectRoot","Root","forwardRef","props","ref","_props$multiselect","multiselect","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","_props$labelPlacement","labelPlacement","placeholder","helperText","_props$isTargetAmount","isTargetAmount","_props$disabled","disabled","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","internalValue","setInternalValue","e","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useReducer5","focusedChipIndexReducer","_useReducer6","focusedChipIndex","dispatchFocusedChipIndex","_useState3","_useState4","checked","setChecked","targetRef","useOutsideClick","type","handleToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","toString","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","isEmpty","stopPropagation","isCurrentChecked","_","updateSingleAncestors","handleChipClick","currentValue","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","isCurrentListOpen","Boolean","useLayoutEffect","Array","isArray","val","React","createElement","_extends","OuterLabel","Provider","StyledPopover","isOpen","getPlacements","usePortal","frame","onToggle","trigger","Target","onChipClick","preventOverflow","closeOnOverlayClick","Ul","role","id","onScroll","map","index","Inner","concat","currentLevel","HelperText","selectConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import React, { forwardRef, useState, useReducer, useMemo, createContext, useLayoutEffect } from 'react';\n\nimport { RootProps } from '../../engines';\nimport { isEmpty, getPlacements } from '../../utils';\nimport { useOutsideClick } from '../../hooks';\n\nimport { useKeyNavigation } from './hooks/useKeyboardNavigation';\nimport { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors } from './utils';\nimport { Inner, Target } from './ui';\nimport { pathReducer, focusedPathReducer, focusedChipIndexReducer } from './reducers';\nimport { usePathMaps } from './hooks/usePathMaps';\nimport { StyledPopover, Ul, base, OuterLabel, HelperText } from './Select.styles';\nimport type { SelectProps, ItemContext } from './Select.types';\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport type { ItemOptionTransformed } from './ui/Inner/ui/Item/Item.types';\n\nexport const Context = createContext<ItemContext>({} as ItemContext);\n\n/**\n * Выпадающий список. Поддерживает выбор одного или нескольких значений.\n */\nexport const selectRoot = (Root: RootProps<HTMLButtonElement, Omit<SelectProps, 'items'>>) =>\n forwardRef<HTMLButtonElement, SelectProps>((props, ref) => {\n const {\n multiselect = false,\n value: outerValue,\n onChange: outerOnChange,\n target = 'textfield-like',\n items,\n placement = 'bottom',\n label,\n labelPlacement = 'outer',\n placeholder,\n helperText,\n isTargetAmount = false,\n disabled = false,\n view,\n size,\n listOverflow,\n listHeight,\n listWidth,\n contentLeft,\n onScrollBottom,\n chipView,\n variant = 'normal',\n portal,\n renderValue,\n renderItem,\n ...rest\n } = props;\n\n const [internalValue, setInternalValue] = useState<string | string[]>(outerValue || multiselect ? [] : '');\n\n const value = outerValue || internalValue;\n\n const onChange = (e: string | string[]) => {\n if (outerOnChange) {\n outerOnChange(e as any);\n }\n\n setInternalValue(e);\n };\n\n const transformedItems = useMemo(() => initialItemsTransform(items), [items]);\n\n const [pathMap, focusedToValueMap, valueToCheckedMap, valueToItemMap] = usePathMaps(transformedItems);\n\n const [path, dispatchPath] = useReducer(pathReducer, []);\n const [focusedPath, dispatchFocusedPath] = useReducer(focusedPathReducer, []);\n const [focusedChipIndex, dispatchFocusedChipIndex] = useReducer(focusedChipIndexReducer, null);\n const [checked, setChecked] = useState(valueToCheckedMap);\n\n const targetRef = useOutsideClick<HTMLDivElement>(() => {\n if (focusedChipIndex != null) {\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n });\n\n const handleToggle = (opened: boolean) => {\n if (opened) {\n dispatchPath({ type: 'opened_first_level' });\n } else {\n dispatchFocusedPath({ type: 'reset' });\n dispatchPath({ type: 'reset' });\n dispatchFocusedChipIndex({ type: 'reset' });\n }\n };\n\n const handleCheckboxChange = (item: ItemOptionTransformed) => {\n const checkedCopy = new Map(checked);\n\n if (!checkedCopy.get(item.value.toString())) {\n checkedCopy.set(item.value.toString(), true);\n updateDescendants(item, checkedCopy, true);\n } else {\n checkedCopy.set(item.value.toString(), false);\n updateDescendants(item, checkedCopy, false);\n }\n\n updateAncestors(item, checkedCopy);\n\n const newValues: Array<string> = [];\n\n valueToItemMap.forEach((item, key) => {\n if (checkedCopy.get(key)) {\n newValues.push(item.value.toString());\n }\n });\n\n if (onChange) {\n onChange(newValues as any);\n }\n };\n\n const handleItemClick = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (!isEmpty(item?.items)) {\n return;\n }\n\n if (multiselect) {\n handleCheckboxChange(item);\n } else {\n if (e) {\n e.stopPropagation();\n }\n\n const checkedCopy = new Map(checked);\n\n const isCurrentChecked = checkedCopy.get(item.value);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isCurrentChecked) {\n checkedCopy.set(item.value, 'done');\n updateSingleAncestors(item, checkedCopy, 'dot');\n }\n\n if (onChange) {\n onChange((isCurrentChecked ? '' : item.value) as any);\n }\n }\n };\n\n const handleChipClick = (currentValue: string) => {\n handleCheckboxChange(valueToItemMap.get(currentValue)!);\n };\n\n const handlePressDown = (item: ItemOptionTransformed, e?: React.MouseEvent<HTMLElement>) => {\n if (isEmpty(item.items)) {\n handleItemClick(item, e);\n } else if (multiselect) {\n handleCheckboxChange(item);\n }\n };\n\n const handleScroll = (e: React.UIEvent<HTMLUListElement>) => {\n if (!onScrollBottom) return;\n\n const { target } = e;\n\n if (\n (target as HTMLElement).scrollHeight - (target as HTMLElement).scrollTop ===\n (target as HTMLElement).clientHeight\n ) {\n onScrollBottom(e);\n }\n };\n\n const { onKeyDown } = useKeyNavigation({\n focusedPath,\n dispatchFocusedPath,\n path,\n dispatchPath,\n pathMap,\n focusedToValueMap,\n handleToggle,\n handlePressDown,\n focusedChipIndex,\n dispatchFocusedChipIndex,\n value,\n valueToItemMap,\n multiselect,\n isTargetAmount,\n });\n\n const isCurrentListOpen = Boolean(path[0]);\n\n // В данном эффекте мы следим за изменениями value и вносим коррективы в дерево чекбоксов.\n useLayoutEffect(() => {\n const checkedCopy = new Map(checked);\n\n checkedCopy.forEach((_, key) => {\n checkedCopy.set(key, false);\n });\n\n if (!isEmpty(value)) {\n if (Array.isArray(value)) {\n value.forEach((val) => {\n checkedCopy.set(val, true);\n updateDescendants(valueToItemMap.get(val)!, checkedCopy, true);\n updateAncestors(valueToItemMap.get(val)!, checkedCopy);\n });\n } else {\n checkedCopy.set(value as string, 'done');\n updateSingleAncestors(valueToItemMap.get(value as string)!, checkedCopy, 'dot');\n }\n }\n\n setChecked(checkedCopy);\n }, [value]);\n\n return (\n <Root ref={ref} size={size} view={view} chipView={chipView} {...(rest as any)}>\n {label && labelPlacement === 'outer' && target !== 'button-like' && <OuterLabel>{label}</OuterLabel>}\n <Context.Provider\n value={{\n focusedPath,\n checked,\n multiselect,\n size,\n handleCheckboxChange,\n handleItemClick,\n variant,\n renderItem,\n }}\n >\n <StyledPopover\n ref={targetRef}\n isOpen={isCurrentListOpen}\n placement={getPlacements(placement)}\n usePortal={Boolean(portal)}\n frame={portal}\n onToggle={handleToggle}\n trigger=\"click\"\n target={\n <Target\n isOpen={isCurrentListOpen}\n target={target}\n value={value}\n isTargetAmount={isTargetAmount}\n multiselect={multiselect}\n valueToItemMap={valueToItemMap}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n onChipClick={handleChipClick}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n focusedChipIndex={focusedChipIndex}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n />\n }\n preventOverflow={false}\n closeOnOverlayClick\n >\n <Root size={size} {...(rest as any)}>\n <Ul\n role=\"tree\"\n id=\"tree_level_1\"\n listHeight={listHeight}\n listOverflow={listOverflow}\n onScroll={handleScroll}\n listWidth={listWidth}\n >\n {transformedItems.map((item, index) => (\n <Inner\n key={`${index}/0`}\n item={item}\n currentLevel={0}\n path={path}\n dispatchPath={dispatchPath}\n index={index}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </Root>\n </StyledPopover>\n </Context.Provider>\n {helperText && target === 'textfield-like' && <HelperText>{helperText}</HelperText>}\n </Root>\n );\n });\n\nexport const selectConfig = {\n name: 'Select',\n tag: 'div',\n layout: selectRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n },\n defaults: {\n view: 'default',\n chipView: 'default',\n size: 'm',\n },\n};\n"],"names":["Context","createContext","selectRoot","Root","forwardRef","props","ref","_props$multiselect","multiselect","outerValue","value","outerOnChange","onChange","_props$target","target","items","_props$placement","placement","label","_props$labelPlacement","labelPlacement","placeholder","helperText","_props$isTargetAmount","isTargetAmount","_props$disabled","disabled","view","size","listOverflow","listHeight","listWidth","contentLeft","onScrollBottom","chipView","_props$variant","variant","portal","renderValue","renderItem","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","internalValue","setInternalValue","e","transformedItems","useMemo","initialItemsTransform","_usePathMaps","usePathMaps","_usePathMaps2","pathMap","focusedToValueMap","valueToCheckedMap","valueToItemMap","_useReducer","useReducer","pathReducer","_useReducer2","path","dispatchPath","_useReducer3","focusedPathReducer","_useReducer4","focusedPath","dispatchFocusedPath","_useReducer5","focusedChipIndexReducer","_useReducer6","focusedChipIndex","dispatchFocusedChipIndex","_useState3","_useState4","checked","setChecked","targetRef","useOutsideClick","type","handleToggle","opened","handleCheckboxChange","item","checkedCopy","Map","get","toString","set","updateDescendants","updateAncestors","newValues","forEach","key","push","handleItemClick","isEmpty","stopPropagation","isCurrentChecked","_","updateSingleAncestors","handleChipClick","currentValue","handlePressDown","handleScroll","scrollHeight","scrollTop","clientHeight","_useKeyNavigation","useKeyNavigation","onKeyDown","isCurrentListOpen","Boolean","useLayoutEffect","Array","isArray","val","React","createElement","_extends","OuterLabel","Provider","StyledPopover","isOpen","getPlacements","usePortal","frame","onToggle","trigger","Target","onChipClick","preventOverflow","closeOnOverlayClick","Ul","role","id","onScroll","map","index","Inner","concat","currentLevel","HelperText","selectConfig","name","tag","layout","base","variations","css","viewCSS","sizeCSS","defaults"],"mappings":"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"}
@@ -7,7 +7,7 @@ var Target = function Target(_ref) {
7
7
  multiselect = _ref.multiselect,
8
8
  isTargetAmount = _ref.isTargetAmount,
9
9
  target = _ref.target,
10
- opened = _ref.opened,
10
+ isOpen = _ref.isOpen,
11
11
  valueToItemMap = _ref.valueToItemMap,
12
12
  onChipClick = _ref.onChipClick,
13
13
  label = _ref.label,
@@ -22,7 +22,7 @@ var Target = function Target(_ref) {
22
22
  focusedPath = _ref.focusedPath,
23
23
  focusedToValueMap = _ref.focusedToValueMap;
24
24
  return target === 'button-like' ? /*#__PURE__*/React.createElement(Button, {
25
- opened: opened,
25
+ isOpen: isOpen,
26
26
  value: value,
27
27
  isTargetAmount: isTargetAmount,
28
28
  multiselect: multiselect,
@@ -35,7 +35,7 @@ var Target = function Target(_ref) {
35
35
  focusedPath: focusedPath,
36
36
  focusedToValueMap: focusedToValueMap
37
37
  }) : /*#__PURE__*/React.createElement(Textfield, {
38
- opened: opened,
38
+ isOpen: isOpen,
39
39
  value: value,
40
40
  isTargetAmount: isTargetAmount,
41
41
  multiselect: multiselect,
@@ -1 +1 @@
1
- {"version":3,"file":"Target.js","sources":["../../../../../src/components/Select/ui/Target/Target.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { TargetProps } from './Target.types';\nimport { Button, Textfield } from './ui';\n\nexport const Target: React.FC<TargetProps> = ({\n value,\n multiselect,\n isTargetAmount,\n target,\n opened,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n onKeyDown,\n focusedChipIndex,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n}) => {\n return target === 'button-like' ? (\n <Button\n opened={opened}\n value={value}\n isTargetAmount={isTargetAmount}\n multiselect={multiselect}\n valueToItemMap={valueToItemMap}\n onKeyDown={onKeyDown}\n label={label}\n size={size}\n disabled={disabled}\n renderValue={renderValue}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n />\n ) : (\n <Textfield\n opened={opened}\n value={value}\n isTargetAmount={isTargetAmount}\n multiselect={multiselect}\n valueToItemMap={valueToItemMap}\n onChipClick={onChipClick}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n focusedChipIndex={focusedChipIndex}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n />\n );\n};\n"],"names":["Target","_ref","value","multiselect","isTargetAmount","target","opened","valueToItemMap","onChipClick","label","placeholder","onKeyDown","focusedChipIndex","labelPlacement","size","contentLeft","disabled","renderValue","focusedPath","focusedToValueMap","React","createElement","Button","Textfield"],"mappings":";;;;IAKaA,MAA6B,GAAG,SAAhCA,MAA6BA,CAAAC,IAAA,EAmBpC;AAAA,EAAA,IAlBFC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,cAAc,GAAAH,IAAA,CAAdG,cAAc;IACdC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,MAAM,GAAAL,IAAA,CAANK,MAAM;IACNC,cAAc,GAAAN,IAAA,CAAdM,cAAc;IACdC,WAAW,GAAAP,IAAA,CAAXO,WAAW;IACXC,KAAK,GAAAR,IAAA,CAALQ,KAAK;IACLC,WAAW,GAAAT,IAAA,CAAXS,WAAW;IACXC,SAAS,GAAAV,IAAA,CAATU,SAAS;IACTC,gBAAgB,GAAAX,IAAA,CAAhBW,gBAAgB;IAChBC,cAAc,GAAAZ,IAAA,CAAdY,cAAc;IACdC,IAAI,GAAAb,IAAA,CAAJa,IAAI;IACJC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IACXC,QAAQ,GAAAf,IAAA,CAARe,QAAQ;IACRC,WAAW,GAAAhB,IAAA,CAAXgB,WAAW;IACXC,WAAW,GAAAjB,IAAA,CAAXiB,WAAW;IACXC,iBAAiB,GAAAlB,IAAA,CAAjBkB,iBAAiB,CAAA;EAEjB,OAAOd,MAAM,KAAK,aAAa,gBAC3Be,KAAA,CAAAC,aAAA,CAACC,MAAM,EAAA;AACHhB,IAAAA,MAAM,EAAEA,MAAO;AACfJ,IAAAA,KAAK,EAAEA,KAAM;AACbE,IAAAA,cAAc,EAAEA,cAAe;AAC/BD,IAAAA,WAAW,EAAEA,WAAY;AACzBI,IAAAA,cAAc,EAAEA,cAAe;AAC/BI,IAAAA,SAAS,EAAEA,SAAU;AACrBF,IAAAA,KAAK,EAAEA,KAAM;AACbK,IAAAA,IAAI,EAAEA,IAAK;AACXE,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,iBAAiB,EAAEA,iBAAAA;AAAkB,GACxC,CAAC,gBAEFC,KAAA,CAAAC,aAAA,CAACE,SAAS,EAAA;AACNjB,IAAAA,MAAM,EAAEA,MAAO;AACfJ,IAAAA,KAAK,EAAEA,KAAM;AACbE,IAAAA,cAAc,EAAEA,cAAe;AAC/BD,IAAAA,WAAW,EAAEA,WAAY;AACzBI,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,KAAK,EAAEA,KAAM;AACbC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,SAAS,EAAEA,SAAU;AACrBC,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,iBAAiB,EAAEA,iBAAAA;AAAkB,GACxC,CACJ,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"Target.js","sources":["../../../../../src/components/Select/ui/Target/Target.tsx"],"sourcesContent":["import React from 'react';\n\nimport type { TargetProps } from './Target.types';\nimport { Button, Textfield } from './ui';\n\nexport const Target: React.FC<TargetProps> = ({\n value,\n multiselect,\n isTargetAmount,\n target,\n isOpen,\n valueToItemMap,\n onChipClick,\n label,\n placeholder,\n onKeyDown,\n focusedChipIndex,\n labelPlacement,\n size,\n contentLeft,\n disabled,\n renderValue,\n focusedPath,\n focusedToValueMap,\n}) => {\n return target === 'button-like' ? (\n <Button\n isOpen={isOpen}\n value={value}\n isTargetAmount={isTargetAmount}\n multiselect={multiselect}\n valueToItemMap={valueToItemMap}\n onKeyDown={onKeyDown}\n label={label}\n size={size}\n disabled={disabled}\n renderValue={renderValue}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n />\n ) : (\n <Textfield\n isOpen={isOpen}\n value={value}\n isTargetAmount={isTargetAmount}\n multiselect={multiselect}\n valueToItemMap={valueToItemMap}\n onChipClick={onChipClick}\n label={label}\n placeholder={placeholder}\n onKeyDown={onKeyDown}\n focusedChipIndex={focusedChipIndex}\n labelPlacement={labelPlacement}\n size={size}\n contentLeft={contentLeft}\n disabled={disabled}\n renderValue={renderValue}\n focusedPath={focusedPath}\n focusedToValueMap={focusedToValueMap}\n />\n );\n};\n"],"names":["Target","_ref","value","multiselect","isTargetAmount","target","isOpen","valueToItemMap","onChipClick","label","placeholder","onKeyDown","focusedChipIndex","labelPlacement","size","contentLeft","disabled","renderValue","focusedPath","focusedToValueMap","React","createElement","Button","Textfield"],"mappings":";;;;IAKaA,MAA6B,GAAG,SAAhCA,MAA6BA,CAAAC,IAAA,EAmBpC;AAAA,EAAA,IAlBFC,KAAK,GAAAD,IAAA,CAALC,KAAK;IACLC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,cAAc,GAAAH,IAAA,CAAdG,cAAc;IACdC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IACNC,MAAM,GAAAL,IAAA,CAANK,MAAM;IACNC,cAAc,GAAAN,IAAA,CAAdM,cAAc;IACdC,WAAW,GAAAP,IAAA,CAAXO,WAAW;IACXC,KAAK,GAAAR,IAAA,CAALQ,KAAK;IACLC,WAAW,GAAAT,IAAA,CAAXS,WAAW;IACXC,SAAS,GAAAV,IAAA,CAATU,SAAS;IACTC,gBAAgB,GAAAX,IAAA,CAAhBW,gBAAgB;IAChBC,cAAc,GAAAZ,IAAA,CAAdY,cAAc;IACdC,IAAI,GAAAb,IAAA,CAAJa,IAAI;IACJC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IACXC,QAAQ,GAAAf,IAAA,CAARe,QAAQ;IACRC,WAAW,GAAAhB,IAAA,CAAXgB,WAAW;IACXC,WAAW,GAAAjB,IAAA,CAAXiB,WAAW;IACXC,iBAAiB,GAAAlB,IAAA,CAAjBkB,iBAAiB,CAAA;EAEjB,OAAOd,MAAM,KAAK,aAAa,gBAC3Be,KAAA,CAAAC,aAAA,CAACC,MAAM,EAAA;AACHhB,IAAAA,MAAM,EAAEA,MAAO;AACfJ,IAAAA,KAAK,EAAEA,KAAM;AACbE,IAAAA,cAAc,EAAEA,cAAe;AAC/BD,IAAAA,WAAW,EAAEA,WAAY;AACzBI,IAAAA,cAAc,EAAEA,cAAe;AAC/BI,IAAAA,SAAS,EAAEA,SAAU;AACrBF,IAAAA,KAAK,EAAEA,KAAM;AACbK,IAAAA,IAAI,EAAEA,IAAK;AACXE,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,iBAAiB,EAAEA,iBAAAA;AAAkB,GACxC,CAAC,gBAEFC,KAAA,CAAAC,aAAA,CAACE,SAAS,EAAA;AACNjB,IAAAA,MAAM,EAAEA,MAAO;AACfJ,IAAAA,KAAK,EAAEA,KAAM;AACbE,IAAAA,cAAc,EAAEA,cAAe;AAC/BD,IAAAA,WAAW,EAAEA,WAAY;AACzBI,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,KAAK,EAAEA,KAAM;AACbC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,SAAS,EAAEA,SAAU;AACrBC,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,QAAQ,EAAEA,QAAS;AACnBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,iBAAiB,EAAEA,iBAAAA;AAAkB,GACxC,CACJ,CAAA;AACL;;;;"}
@@ -6,7 +6,7 @@ import { getButtonLabel } from '../../../../utils/getButtonLabel.js';
6
6
  import { ButtonWrapper, StyledButton, IconArrowWrapper, StyledArrow, Label } from './Button.styles.js';
7
7
 
8
8
  var Button = function Button(_ref) {
9
- var opened = _ref.opened,
9
+ var isOpen = _ref.isOpen,
10
10
  value = _ref.value,
11
11
  isTargetAmount = _ref.isTargetAmount,
12
12
  multiselect = _ref.multiselect,
@@ -18,7 +18,7 @@ var Button = function Button(_ref) {
18
18
  renderValue = _ref.renderValue,
19
19
  focusedPath = _ref.focusedPath,
20
20
  focusedToValueMap = _ref.focusedToValueMap;
21
- var withArrowInverse = opened ? classes.arrowInverse : undefined;
21
+ var withArrowInverse = isOpen ? classes.arrowInverse : undefined;
22
22
  var getActiveDescendant = function getActiveDescendant() {
23
23
  var _focusedToValueMap$ge;
24
24
  var focusedPathAsString = focusedPath.reduce(function (acc, n) {
@@ -29,7 +29,7 @@ var Button = function Button(_ref) {
29
29
  return /*#__PURE__*/React.createElement(ButtonWrapper, null, /*#__PURE__*/React.createElement(StyledButton, {
30
30
  stretching: "filled",
31
31
  onKeyDown: onKeyDown,
32
- className: opened ? classes.selectWithoutBoxShadow : undefined,
32
+ className: isOpen ? classes.selectWithoutBoxShadow : undefined,
33
33
  disabled: disabled,
34
34
  contentRight: /*#__PURE__*/React.createElement(IconArrowWrapper, null, /*#__PURE__*/React.createElement(StyledArrow, {
35
35
  size: sizeToIconSize(size),
@@ -38,7 +38,7 @@ var Button = function Button(_ref) {
38
38
  })),
39
39
  role: "combobox",
40
40
  "aria-controls": "tree_level_1",
41
- "aria-expanded": opened,
41
+ "aria-expanded": isOpen,
42
42
  "aria-activedescendant": getActiveDescendant(),
43
43
  "aria-label": label
44
44
  }, /*#__PURE__*/React.createElement(Label, null, getButtonLabel({