@salutejs/plasma-new-hope 0.335.0-canary.2191.17321424209.0 → 0.335.0-canary.2196.17375511532.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 (171) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +1 -6
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +43 -13
  4. package/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js.map +1 -1
  5. package/cjs/components/Carousel/CarouselNew/Carousel.js +4 -3
  6. package/cjs/components/Carousel/CarouselNew/Carousel.js.map +1 -1
  7. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  8. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js.map +1 -1
  9. package/cjs/components/Combobox/ComboboxNew/Combobox.js +15 -30
  10. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  11. package/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +43 -13
  12. package/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js.map +1 -1
  13. package/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +24 -0
  14. package/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js.map +1 -0
  15. package/cjs/components/DatePicker/RangeDate/RangeDate.js +3 -1
  16. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  17. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -2
  18. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  19. package/cjs/components/DatePicker/SingleDate/SingleDate.js +4 -2
  20. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  21. package/cjs/components/Popup/Popup.js +67 -8
  22. package/cjs/components/Popup/Popup.js.map +1 -1
  23. package/cjs/components/Select/ui/VirtualList/VirtualList.js +43 -13
  24. package/cjs/components/Select/ui/VirtualList/VirtualList.js.map +1 -1
  25. package/cjs/components/Slider/ui/Handler/Handler.js +3 -3
  26. package/cjs/components/Slider/ui/Handler/Handler.js.map +1 -1
  27. package/emotion/cjs/components/Autocomplete/Autocomplete.js +1 -8
  28. package/emotion/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +84 -16
  29. package/emotion/cjs/components/Carousel/CarouselNew/Carousel.js +2 -2
  30. package/emotion/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  31. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +26 -44
  32. package/emotion/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +84 -16
  33. package/emotion/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +25 -0
  34. package/emotion/cjs/components/Combobox/ComboboxNew/utils/index.js +4 -0
  35. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +3 -1
  36. package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  37. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +4 -2
  38. package/emotion/cjs/components/Popup/Popup.js +69 -7
  39. package/emotion/cjs/components/Select/ui/VirtualList/VirtualList.js +84 -16
  40. package/emotion/es/components/Autocomplete/Autocomplete.js +2 -9
  41. package/emotion/es/components/Autocomplete/ui/VirtualList/VirtualList.js +45 -13
  42. package/emotion/es/components/Carousel/CarouselNew/Carousel.js +2 -2
  43. package/emotion/es/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  44. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +12 -30
  45. package/emotion/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +45 -13
  46. package/emotion/es/components/Combobox/ComboboxNew/utils/getTextValue.js +16 -0
  47. package/emotion/es/components/Combobox/ComboboxNew/utils/index.js +1 -0
  48. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +3 -1
  49. package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  50. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +4 -2
  51. package/emotion/es/components/Popup/Popup.js +63 -6
  52. package/emotion/es/components/Select/ui/VirtualList/VirtualList.js +45 -13
  53. package/es/components/Autocomplete/Autocomplete.js +2 -7
  54. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  55. package/es/components/Autocomplete/ui/VirtualList/VirtualList.js +44 -13
  56. package/es/components/Autocomplete/ui/VirtualList/VirtualList.js.map +1 -1
  57. package/es/components/Carousel/CarouselNew/Carousel.js +5 -4
  58. package/es/components/Carousel/CarouselNew/Carousel.js.map +1 -1
  59. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  60. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js.map +1 -1
  61. package/es/components/Combobox/ComboboxNew/Combobox.js +15 -30
  62. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  63. package/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +44 -13
  64. package/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js.map +1 -1
  65. package/es/components/Combobox/ComboboxNew/utils/getTextValue.js +20 -0
  66. package/es/components/Combobox/ComboboxNew/utils/getTextValue.js.map +1 -0
  67. package/es/components/DatePicker/RangeDate/RangeDate.js +3 -1
  68. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  69. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -2
  70. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  71. package/es/components/DatePicker/SingleDate/SingleDate.js +4 -2
  72. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  73. package/es/components/Popup/Popup.js +65 -7
  74. package/es/components/Popup/Popup.js.map +1 -1
  75. package/es/components/Select/ui/VirtualList/VirtualList.js +44 -13
  76. package/es/components/Select/ui/VirtualList/VirtualList.js.map +1 -1
  77. package/es/components/Slider/ui/Handler/Handler.js +2 -2
  78. package/es/components/Slider/ui/Handler/Handler.js.map +1 -1
  79. package/package.json +2 -3
  80. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +1 -8
  81. package/styled-components/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +84 -16
  82. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.js +2 -2
  83. package/styled-components/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  84. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +26 -44
  85. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +84 -16
  86. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +25 -0
  87. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/index.js +4 -0
  88. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +3 -1
  89. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  90. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +4 -2
  91. package/styled-components/cjs/components/Popup/Popup.js +69 -7
  92. package/styled-components/cjs/components/Select/ui/VirtualList/VirtualList.js +84 -16
  93. package/styled-components/es/components/Autocomplete/Autocomplete.js +2 -9
  94. package/styled-components/es/components/Autocomplete/ui/VirtualList/VirtualList.js +45 -13
  95. package/styled-components/es/components/Carousel/CarouselNew/Carousel.js +2 -2
  96. package/styled-components/es/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  97. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +12 -30
  98. package/styled-components/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +45 -13
  99. package/styled-components/es/components/Combobox/ComboboxNew/utils/getTextValue.js +16 -0
  100. package/styled-components/es/components/Combobox/ComboboxNew/utils/index.js +1 -0
  101. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +3 -1
  102. package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  103. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +4 -2
  104. package/styled-components/es/components/Popup/Popup.js +63 -6
  105. package/styled-components/es/components/Select/ui/VirtualList/VirtualList.js +45 -13
  106. package/styled-components/es/examples/components/Combobox/Combobox.js +7 -0
  107. package/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  108. package/types/components/Autocomplete/Autocomplete.types.d.ts +17 -17
  109. package/types/components/Autocomplete/Autocomplete.types.d.ts.map +1 -1
  110. package/types/components/Autocomplete/ui/VirtualList/VirtualList.d.ts +1 -1
  111. package/types/components/Autocomplete/ui/VirtualList/VirtualList.d.ts.map +1 -1
  112. package/types/components/Carousel/CarouselNew/Carousel.d.ts.map +1 -1
  113. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts +5 -0
  114. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts.map +1 -1
  115. package/types/components/Carousel/CarouselNew/hooks/useCarousel.d.ts.map +1 -1
  116. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  117. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +2 -2
  118. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
  119. package/types/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.d.ts +1 -1
  120. package/types/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.d.ts.map +1 -1
  121. package/types/components/Combobox/ComboboxNew/utils/getTextValue.d.ts +4 -0
  122. package/types/components/Combobox/ComboboxNew/utils/getTextValue.d.ts.map +1 -0
  123. package/types/components/Combobox/ComboboxNew/utils/index.d.ts +1 -0
  124. package/types/components/Combobox/ComboboxNew/utils/index.d.ts.map +1 -1
  125. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  126. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
  127. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
  128. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  129. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +4 -0
  130. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  131. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +12 -12
  132. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
  133. package/types/components/Popup/Popup.d.ts.map +1 -1
  134. package/types/components/Select/Select.types.d.ts +4 -4
  135. package/types/components/Select/Select.types.d.ts.map +1 -1
  136. package/types/components/Select/ui/VirtualList/VirtualList.d.ts +1 -1
  137. package/types/components/Select/ui/VirtualList/VirtualList.d.ts.map +1 -1
  138. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +12 -12
  139. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts.map +1 -1
  140. package/types/examples/components/Autocomplete/Autocomplete.d.ts +40 -40
  141. package/types/examples/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  142. package/types/examples/components/Combobox/Combobox.d.ts +24 -24
  143. package/types/examples/components/Combobox/Combobox.d.ts.map +1 -1
  144. package/types/examples/components/Select/Select.d.ts +12 -12
  145. package/types/examples/components/Select/Select.d.ts.map +1 -1
  146. package/cjs/components/Popup/ui/Draggable/Draggable.js +0 -33
  147. package/cjs/components/Popup/ui/Draggable/Draggable.js.map +0 -1
  148. package/cjs/components/Popup/ui/Resizable/Resizable.js +0 -79
  149. package/cjs/components/Popup/ui/Resizable/Resizable.js.map +0 -1
  150. package/emotion/cjs/components/Popup/ui/Draggable/Draggable.js +0 -75
  151. package/emotion/cjs/components/Popup/ui/Resizable/Resizable.js +0 -114
  152. package/emotion/cjs/components/Popup/ui/index.js +0 -20
  153. package/emotion/es/components/Popup/ui/Draggable/Draggable.js +0 -19
  154. package/emotion/es/components/Popup/ui/Resizable/Resizable.js +0 -63
  155. package/emotion/es/components/Popup/ui/index.js +0 -2
  156. package/es/components/Popup/ui/Draggable/Draggable.js +0 -24
  157. package/es/components/Popup/ui/Draggable/Draggable.js.map +0 -1
  158. package/es/components/Popup/ui/Resizable/Resizable.js +0 -71
  159. package/es/components/Popup/ui/Resizable/Resizable.js.map +0 -1
  160. package/styled-components/cjs/components/Popup/ui/Draggable/Draggable.js +0 -75
  161. package/styled-components/cjs/components/Popup/ui/Resizable/Resizable.js +0 -114
  162. package/styled-components/cjs/components/Popup/ui/index.js +0 -20
  163. package/styled-components/es/components/Popup/ui/Draggable/Draggable.js +0 -19
  164. package/styled-components/es/components/Popup/ui/Resizable/Resizable.js +0 -63
  165. package/styled-components/es/components/Popup/ui/index.js +0 -2
  166. package/types/components/Popup/ui/Draggable/Draggable.d.ts +0 -6
  167. package/types/components/Popup/ui/Draggable/Draggable.d.ts.map +0 -1
  168. package/types/components/Popup/ui/Resizable/Resizable.d.ts +0 -7
  169. package/types/components/Popup/ui/Resizable/Resizable.d.ts.map +0 -1
  170. package/types/components/Popup/ui/index.d.ts +0 -3
  171. package/types/components/Popup/ui/index.d.ts.map +0 -1
@@ -19,13 +19,12 @@ _export(exports, {
19
19
  var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
20
20
  var _plasmacore = require("@salutejs/plasma-core");
21
21
  var _utils = require("../../../utils");
22
- var _utils1 = require("../../../utils");
23
22
  var _hooks = require("../../../hooks");
24
- var _utils2 = require("../../Select/utils");
23
+ var _utils1 = require("../../Select/utils");
25
24
  var _Comboboxtokens = require("./Combobox.tokens");
26
25
  var _FloatingPopover = require("./FloatingPopover");
27
26
  var _useKeyboardNavigation = require("./hooks/useKeyboardNavigation");
28
- var _utils3 = require("./utils");
27
+ var _utils2 = require("./utils");
29
28
  var _ui = require("./ui");
30
29
  var _reducers = require("./reducers");
31
30
  var _getPathMaps = require("./hooks/getPathMaps");
@@ -218,7 +217,7 @@ function _unsupported_iterable_to_array(o, minLen) {
218
217
  }
219
218
  var comboboxRoot = function(Root) {
220
219
  return /*#__PURE__*/ (0, _react.forwardRef)(function(props, ref) {
221
- var _valueToItemMap_get, _getItemByFocused;
220
+ var _getItemByFocused;
222
221
  var name = props.name, multiple = props.multiple, outerValue = props.value, outerOnChange = props.onChange, defaultValue = props.defaultValue, isTargetAmount = props.isTargetAmount, targetAmount = props.targetAmount, items = props.items, _props_placement = props.placement, placement = _props_placement === void 0 ? 'bottom-start' : _props_placement, label = props.label, placeholder = props.placeholder, helperText = props.helperText, contentLeft = props.contentLeft, textBefore = props.textBefore, textAfter = props.textAfter, _props_variant = props.variant, variant = _props_variant === void 0 ? 'normal' : _props_variant, listOverflow = props.listOverflow, listHeight = props.listHeight, listMaxHeight = props.listMaxHeight, listWidth = props.listWidth, portal = props.portal, renderItem = props.renderItem, view = props.view, size = props.size, labelPlacement = props.labelPlacement, keepPlaceholder = props.keepPlaceholder, _props_readOnly = props.readOnly, readOnly = _props_readOnly === void 0 ? false : _props_readOnly, _props_disabled = props.disabled, disabled = _props_disabled === void 0 ? false : _props_disabled, _props_alwaysOpened = props.alwaysOpened, alwaysOpened = _props_alwaysOpened === void 0 ? false : _props_alwaysOpened, filter = props.filter, outerCloseAfterSelect = props.closeAfterSelect, renderValue = props.renderValue, zIndex = props.zIndex, beforeList = props.beforeList, afterList = props.afterList, _props_virtual = props.virtual, virtual = _props_virtual === void 0 ? false : _props_virtual, hintView = props.hintView, hintSize = props.hintSize, emptyStateDescription = props.emptyStateDescription, onChangeValue = props.onChangeValue, onScroll = props.onScroll, onToggle = props.onToggle, // @ts-ignore
223
222
  _offset = props._offset, rest = _object_without_properties(props, [
224
223
  "name",
@@ -266,7 +265,7 @@ var comboboxRoot = function(Root) {
266
265
  "_offset"
267
266
  ]);
268
267
  var transformedItems = (0, _react.useMemo)(function() {
269
- return (0, _utils3.initialItemsTransform)(items || []);
268
+ return (0, _utils2.initialItemsTransform)(items || []);
270
269
  }, [
271
270
  items
272
271
  ]);
@@ -276,7 +275,7 @@ var comboboxRoot = function(Root) {
276
275
  }, [
277
276
  items
278
277
  ]), 3), valueToCheckedMap = _useMemo[0], valueToItemMap = _useMemo[1], labelToItemMap = _useMemo[2];
279
- var _useState = _sliced_to_array((0, _react.useState)(multiple || Array.isArray(outerValue) ? '' : ((_valueToItemMap_get = valueToItemMap.get(outerValue)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || (outerValue === null || outerValue === void 0 ? void 0 : outerValue.toString()) || ''), 2), textValue = _useState[0], setTextValue = _useState[1];
278
+ var _useState = _sliced_to_array((0, _react.useState)((0, _utils2.getTextValue)(multiple, outerValue, valueToItemMap, renderValue)), 2), textValue = _useState[0], setTextValue = _useState[1];
280
279
  var _useState1 = _sliced_to_array((0, _react.useState)(multiple ? [] : ''), 2), internalValue = _useState1[0], setInternalValue = _useState1[1];
281
280
  var value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;
282
281
  var inputRef = (0, _react.useRef)(null);
@@ -284,8 +283,7 @@ var comboboxRoot = function(Root) {
284
283
  var inputForkRef = (0, _plasmacore.useForkRef)(inputRef, ref);
285
284
  var treeId = (0, _utils.safeUseId)();
286
285
  var filteredItems = (0, _react.useMemo)(function() {
287
- var _valueToItemMap_get;
288
- return (0, _utils3.filterItems)(transformedItems, textValue, ((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || value, filter);
286
+ return (0, _utils2.filterItems)(transformedItems, textValue, (0, _utils2.getTextValue)(multiple, value, valueToItemMap, renderValue), filter);
289
287
  }, [
290
288
  transformedItems,
291
289
  textValue,
@@ -322,30 +320,19 @@ var comboboxRoot = function(Root) {
322
320
  if (onToggle) {
323
321
  onToggle(false);
324
322
  }
325
- // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.
326
- // Если изменилось, то возвращаем label выбранного айтема.
327
- // Если нет выбранного элемента, то стираем значение инпута.
328
- if (textValue !== value) {
329
- if ((0, _utils1.isEmpty)(value)) {
330
- setTextValue('');
331
- } else if (multiple) {
332
- setTextValue('');
333
- } else {
334
- var _valueToItemMap_get;
335
- setTextValue(((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || value || '');
336
- }
337
- }
323
+ // Возвращаем актуальное значение поля ввода после закрытия выпадающего списка.
324
+ setTextValue((0, _utils2.getTextValue)(multiple, value, valueToItemMap, renderValue));
338
325
  }, floatingPopoverRef);
339
326
  // Эта функция срабатывает при изменении Combobox и
340
327
  // при изменении нативного Select для формы (срабатывает только после изменения internalValue и рендера).
341
328
  var onChange = function(newValue, item) {
342
329
  // Условие для отправки изменений наружу
343
330
  if (props.onChange) {
344
- // Условие для отправки если комбобокс используется без формы.
331
+ // Условие для отправки, если комбобокс используется без формы.
345
332
  if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {
346
333
  props.onChange(newValue, item || null);
347
334
  }
348
- // Условие для отправки если комбобокс используется с формой.
335
+ // Условие для отправки, если комбобокс используется с формой.
349
336
  if (props.name && (typeof newValue === "undefined" ? "undefined" : _type_of(newValue)) === 'object' && !Array.isArray(newValue)) {
350
337
  props.onChange(newValue);
351
338
  }
@@ -404,7 +391,7 @@ var comboboxRoot = function(Root) {
404
391
  resultValues.splice(index, 1);
405
392
  }
406
393
  });
407
- var removedItemValue = (0, _utils3.getRemovedElement)(value, resultValues, isTargetAmount);
394
+ var removedItemValue = (0, _utils2.getRemovedElement)(value, resultValues, isTargetAmount);
408
395
  onChange(resultValues, removedItemValue ? valueToItemMap.get(removedItemValue) || {
409
396
  value: removedItemValue,
410
397
  label: removedItemValue.toString()
@@ -414,7 +401,7 @@ var comboboxRoot = function(Root) {
414
401
  var _labelToItemMap_get;
415
402
  return ((_labelToItemMap_get = labelToItemMap.get(chipLabel)) === null || _labelToItemMap_get === void 0 ? void 0 : _labelToItemMap_get.value) || chipLabel;
416
403
  });
417
- var removedItemValue1 = (0, _utils3.getRemovedElement)(value, newValues, isTargetAmount);
404
+ var removedItemValue1 = (0, _utils2.getRemovedElement)(value, newValues, isTargetAmount);
418
405
  onChange(newValues, removedItemValue1 ? valueToItemMap.get(removedItemValue1) || {
419
406
  value: removedItemValue1,
420
407
  label: removedItemValue1.toString()
@@ -450,12 +437,12 @@ var comboboxRoot = function(Root) {
450
437
  var checkedCopy = new Map(checked);
451
438
  if (!checkedCopy.get(item.value)) {
452
439
  checkedCopy.set(item.value, true);
453
- (0, _utils3.updateDescendants)(item, checkedCopy, true, valueToItemMap);
440
+ (0, _utils2.updateDescendants)(item, checkedCopy, true, valueToItemMap);
454
441
  } else {
455
442
  checkedCopy.set(item.value, false);
456
- (0, _utils3.updateDescendants)(item, checkedCopy, false);
443
+ (0, _utils2.updateDescendants)(item, checkedCopy, false);
457
444
  }
458
- (0, _utils3.updateAncestors)(item, checkedCopy);
445
+ (0, _utils2.updateAncestors)(item, checkedCopy);
459
446
  var newValues = [];
460
447
  valueToItemMap.forEach(function(item, key) {
461
448
  if (checkedCopy.get(key)) {
@@ -484,7 +471,7 @@ var comboboxRoot = function(Root) {
484
471
  };
485
472
  // Обработчик клика по айтему выпадающего списка
486
473
  var handleItemClick = function(item, e) {
487
- if (!(0, _utils1.isEmpty)(item === null || item === void 0 ? void 0 : item.items)) {
474
+ if (!(0, _utils.isEmpty)(item === null || item === void 0 ? void 0 : item.items)) {
488
475
  return;
489
476
  }
490
477
  if (multiple) {
@@ -530,7 +517,7 @@ var comboboxRoot = function(Root) {
530
517
  return [];
531
518
  };
532
519
  var handlePressDown = function(item, e) {
533
- if ((0, _utils1.isEmpty)(item.items)) {
520
+ if ((0, _utils.isEmpty)(item.items)) {
534
521
  handleItemClick(item, e);
535
522
  } else if (multiple) {
536
523
  handleCheckboxChange(item);
@@ -561,14 +548,14 @@ var comboboxRoot = function(Root) {
561
548
  checkedCopy.forEach(function(_, key) {
562
549
  checkedCopy.set(key, false);
563
550
  });
564
- if (!(0, _utils1.isEmpty)(value)) {
551
+ if (!(0, _utils.isEmpty)(value)) {
565
552
  if (Array.isArray(value)) {
566
553
  value.forEach(function(val) {
567
554
  // Только если value находится в items, т.к. value может и не существовать в items.
568
555
  if (valueToItemMap.has(val)) {
569
556
  checkedCopy.set(val, true);
570
- (0, _utils3.updateDescendants)(valueToItemMap.get(val), checkedCopy, true);
571
- (0, _utils3.updateAncestors)(valueToItemMap.get(val), checkedCopy);
557
+ (0, _utils2.updateDescendants)(valueToItemMap.get(val), checkedCopy, true);
558
+ (0, _utils2.updateAncestors)(valueToItemMap.get(val), checkedCopy);
572
559
  }
573
560
  });
574
561
  } else {
@@ -576,15 +563,11 @@ var comboboxRoot = function(Root) {
576
563
  // eslint-disable-next-line no-lonely-if
577
564
  if (valueToItemMap.has(value)) {
578
565
  checkedCopy.set(value, 'done');
579
- (0, _utils3.updateSingleAncestors)(valueToItemMap.get(value), checkedCopy, 'dot');
566
+ (0, _utils2.updateSingleAncestors)(valueToItemMap.get(value), checkedCopy, 'dot');
580
567
  }
581
568
  }
582
569
  }
583
570
  setChecked(checkedCopy);
584
- if (!multiple && textValue === value && valueToItemMap.has(value)) {
585
- var _valueToItemMap_get;
586
- setTextValue(((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || '');
587
- }
588
571
  // В deps мы кладем именно outerValue и internalValue, а не просто value.
589
572
  // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.
590
573
  // А переменную, содержащую сложные типы данных, нельзя помещать в deps.
@@ -594,9 +577,8 @@ var comboboxRoot = function(Root) {
594
577
  items
595
578
  ]);
596
579
  // При изменении value нужно возвращать значение в инпуте к исходному.
597
- (0, _react.useLayoutEffect)(function() {
598
- var _valueToItemMap_get;
599
- setTextValue(multiple ? '' : ((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || (value === null || value === void 0 ? void 0 : value.toString()) || '');
580
+ (0, _hooks.useDidMountLayoutEffect)(function() {
581
+ setTextValue((0, _utils2.getTextValue)(multiple, value, valueToItemMap, renderValue));
600
582
  }, [
601
583
  outerValue,
602
584
  internalValue
@@ -667,7 +649,7 @@ var comboboxRoot = function(Root) {
667
649
  onClick: handleClickArrow
668
650
  }, /*#__PURE__*/ _react.default.createElement(_Comboboxstyles.StyledArrow, {
669
651
  color: "inherit",
670
- size: (0, _utils2.sizeToIconSize)(size),
652
+ size: (0, _utils1.sizeToIconSize)(size),
671
653
  className: withArrowInverse
672
654
  })),
673
655
  textBefore: textBefore,
@@ -680,7 +662,7 @@ var comboboxRoot = function(Root) {
680
662
  "aria-autocomplete": "list",
681
663
  "aria-controls": "".concat(treeId, "_tree_level_1"),
682
664
  "aria-expanded": isCurrentListOpen,
683
- "aria-activedescendant": activeDescendantItemValue ? (0, _utils3.getItemId)(treeId, activeDescendantItemValue) : '',
665
+ "aria-activedescendant": activeDescendantItemValue ? (0, _utils2.getItemId)(treeId, activeDescendantItemValue) : '',
684
666
  labelPlacement: labelPlacement,
685
667
  keepPlaceholder: keepPlaceholder
686
668
  }, multiple ? {
@@ -713,7 +695,7 @@ var comboboxRoot = function(Root) {
713
695
  virtual: virtual,
714
696
  listOverflow: listOverflow,
715
697
  onScroll: virtual ? undefined : onScroll
716
- }, beforeList, (0, _utils1.isEmpty)(filteredItems) ? /*#__PURE__*/ _react.default.createElement(_Comboboxstyles.StyledEmptyState, {
698
+ }, beforeList, (0, _utils.isEmpty)(filteredItems) ? /*#__PURE__*/ _react.default.createElement(_Comboboxstyles.StyledEmptyState, {
717
699
  className: _Comboboxtokens.classes.emptyStateWrapper,
718
700
  size: size,
719
701
  description: emptyStateDescription || 'Ничего не найдено'
@@ -8,33 +8,101 @@ Object.defineProperty(exports, "VirtualList", {
8
8
  return VirtualList;
9
9
  }
10
10
  });
11
- var _react = /*#__PURE__*/ _interop_require_default(require("react"));
12
- var _rcvirtuallist = /*#__PURE__*/ _interop_require_default(require("rc-virtual-list"));
11
+ var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
12
+ var _reactvirtual = require("@tanstack/react-virtual");
13
13
  var _utils = require("../../../../../utils");
14
14
  var _ui = require("../Inner/ui");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
15
+ function _getRequireWildcardCache(nodeInterop) {
16
+ if (typeof WeakMap !== "function") return null;
17
+ var cacheBabelInterop = new WeakMap();
18
+ var cacheNodeInterop = new WeakMap();
19
+ return (_getRequireWildcardCache = function(nodeInterop) {
20
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
21
+ })(nodeInterop);
22
+ }
23
+ function _interop_require_wildcard(obj, nodeInterop) {
24
+ if (!nodeInterop && obj && obj.__esModule) {
25
+ return obj;
26
+ }
27
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
28
+ return {
29
+ default: obj
30
+ };
31
+ }
32
+ var cache = _getRequireWildcardCache(nodeInterop);
33
+ if (cache && cache.has(obj)) {
34
+ return cache.get(obj);
35
+ }
36
+ var newObj = {
37
+ __proto__: null
18
38
  };
39
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
40
+ for(var key in obj){
41
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
42
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
43
+ if (desc && (desc.get || desc.set)) {
44
+ Object.defineProperty(newObj, key, desc);
45
+ } else {
46
+ newObj[key] = obj[key];
47
+ }
48
+ }
49
+ }
50
+ newObj.default = obj;
51
+ if (cache) {
52
+ cache.set(obj, newObj);
53
+ }
54
+ return newObj;
19
55
  }
20
56
  var VirtualList = function(param) {
21
57
  var items = param.items, listMaxHeight = param.listMaxHeight, onScroll = param.onScroll;
22
- return /*#__PURE__*/ _react.default.createElement(_rcvirtuallist.default, {
23
- data: items,
24
- height: (0, _utils.getHeightAsNumber)(listMaxHeight),
25
- fullHeight: false,
26
- itemHeight: 100,
27
- itemKey: "id",
58
+ var _virtualItems_;
59
+ var parentRef = (0, _react.useRef)(null);
60
+ var virtualizer = (0, _reactvirtual.useVirtualizer)({
61
+ count: items.length,
62
+ getScrollElement: function() {
63
+ return parentRef.current;
64
+ },
65
+ estimateSize: function() {
66
+ return 48;
67
+ }
68
+ });
69
+ var virtualItems = virtualizer.getVirtualItems();
70
+ var _virtualItems__start;
71
+ return /*#__PURE__*/ _react.default.createElement("div", {
72
+ ref: parentRef,
73
+ style: {
74
+ height: 'auto',
75
+ maxHeight: (0, _utils.getHeightAsNumber)(listMaxHeight),
76
+ overflowY: 'auto'
77
+ },
28
78
  onScroll: onScroll
29
- }, function(item, index, props) {
30
- return /*#__PURE__*/ _react.default.createElement("div", props, /*#__PURE__*/ _react.default.createElement(_ui.Item, {
31
- item: item,
79
+ }, /*#__PURE__*/ _react.default.createElement("div", {
80
+ style: {
81
+ height: virtualizer.getTotalSize(),
82
+ width: '100%',
83
+ position: 'relative'
84
+ }
85
+ }, /*#__PURE__*/ _react.default.createElement("div", {
86
+ style: {
87
+ position: 'absolute',
88
+ top: 0,
89
+ left: 0,
90
+ width: '100%',
91
+ transform: "translateY(".concat((_virtualItems__start = (_virtualItems_ = virtualItems[0]) === null || _virtualItems_ === void 0 ? void 0 : _virtualItems_.start) !== null && _virtualItems__start !== void 0 ? _virtualItems__start : 0, "px)")
92
+ }
93
+ }, virtualItems.map(function(virtualRow) {
94
+ return /*#__PURE__*/ _react.default.createElement("div", {
95
+ key: virtualRow.key,
96
+ "data-index": virtualRow.index,
97
+ ref: virtualizer.measureElement
98
+ }, /*#__PURE__*/ _react.default.createElement(_ui.Item, {
99
+ item: items[virtualRow.index],
32
100
  path: [
33
101
  'root'
34
102
  ],
35
103
  currentLevel: 0,
36
- index: index,
104
+ index: virtualRow.index,
37
105
  ariaLevel: 1
38
106
  }));
39
- });
107
+ }))));
40
108
  };
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "getTextValue", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return getTextValue;
9
+ }
10
+ });
11
+ // Type Guard для multiple.
12
+ // @ts-ignore
13
+ function isMultiple(multiple, value) {
14
+ return Boolean(multiple);
15
+ }
16
+ var getTextValue = function(multiple, value, valueToItemMap, renderValue) {
17
+ var _valueToItemMap_get;
18
+ if (isMultiple(multiple, value) || !value) {
19
+ return '';
20
+ }
21
+ return (renderValue === null || renderValue === void 0 ? void 0 : renderValue({
22
+ value: value,
23
+ label: ''
24
+ })) || ((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || value.toString();
25
+ };
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  get getRemovedElement () {
19
19
  return _getRemovedElement.getRemovedElement;
20
20
  },
21
+ get getTextValue () {
22
+ return _getTextValue.getTextValue;
23
+ },
21
24
  get initialItemsTransform () {
22
25
  return _initialItemsTransform.initialItemsTransform;
23
26
  },
@@ -42,3 +45,4 @@ var _sizeToIconSize = require("./sizeToIconSize");
42
45
  var _filterItems = require("./filterItems");
43
46
  var _getItemId = require("./getItemId");
44
47
  var _getRemovedElement = require("./getRemovedElement");
48
+ var _getTextValue = require("./getTextValue");
@@ -205,7 +205,7 @@ function _unsupported_iterable_to_array(o, minLen) {
205
205
  }
206
206
  var datePickerRangeRoot = function(Root) {
207
207
  return /*#__PURE__*/ (0, _react.forwardRef)(function(_param, ref) {
208
- var className = _param.className, autoComplete = _param.autoComplete, _param_isDoubleCalendar = _param.isDoubleCalendar, isDoubleCalendar = _param_isDoubleCalendar === void 0 ? false : _param_isDoubleCalendar, _param_opened = _param.opened, opened = _param_opened === void 0 ? false : _param_opened, outerValue = _param.value, _param_defaultFirstDate = _param.defaultFirstDate, defaultFirstDate = _param_defaultFirstDate === void 0 ? '' : _param_defaultFirstDate, _param_defaultSecondDate = _param.defaultSecondDate, defaultSecondDate = _param_defaultSecondDate === void 0 ? '' : _param_defaultSecondDate, preserveInvalidOnBlur = _param.preserveInvalidOnBlur, label = _param.label, leftHelper = _param.leftHelper, contentLeft = _param.contentLeft, contentRight = _param.contentRight, view = _param.view, size = _param.size, _param_readOnly = _param.readOnly, readOnly = _param_readOnly === void 0 ? false : _param_readOnly, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, name = _param.name, _param_dividerVariant = _param.dividerVariant, dividerVariant = _param_dividerVariant === void 0 ? 'dash' : _param_dividerVariant, dividerIcon = _param.dividerIcon, firstValueError = _param.firstValueError, secondValueError = _param.secondValueError, firstValueSuccess = _param.firstValueSuccess, secondValueSuccess = _param.secondValueSuccess, firstPlaceholder = _param.firstPlaceholder, secondPlaceholder = _param.secondPlaceholder, firstTextfieldContentLeft = _param.firstTextfieldContentLeft, firstTextfieldContentRight = _param.firstTextfieldContentRight, secondTextfieldContentLeft = _param.secondTextfieldContentLeft, secondTextfieldContentRight = _param.secondTextfieldContentRight, firstTextfieldTextBefore = _param.firstTextfieldTextBefore, secondTextfieldTextBefore = _param.secondTextfieldTextBefore, firstTextfieldTextAfter = _param.firstTextfieldTextAfter, secondTextfieldTextAfter = _param.secondTextfieldTextAfter, required = _param.required, _param_requiredPlacement = _param.requiredPlacement, requiredPlacement = _param_requiredPlacement === void 0 ? 'right' : _param_requiredPlacement, _param_hasRequiredIndicator = _param.hasRequiredIndicator, hasRequiredIndicator = _param_hasRequiredIndicator === void 0 ? true : _param_hasRequiredIndicator, _param_format = _param.format, format = _param_format === void 0 ? 'DD.MM.YYYY' : _param_format, _param_lang = _param.lang, lang = _param_lang === void 0 ? 'ru' : _param_lang, maskWithFormat = _param.maskWithFormat, min = _param.min, max = _param.max, renderFromDate = _param.renderFromDate, _param_includeEdgeDates = _param.includeEdgeDates, includeEdgeDates = _param_includeEdgeDates === void 0 ? false : _param_includeEdgeDates, eventList = _param.eventList, disabledList = _param.disabledList, eventMonthList = _param.eventMonthList, disabledMonthList = _param.disabledMonthList, eventQuarterList = _param.eventQuarterList, disabledQuarterList = _param.disabledQuarterList, eventYearList = _param.eventYearList, disabledYearList = _param.disabledYearList, _param_type = _param.type, type = _param_type === void 0 ? 'Days' : _param_type, _param_frame = _param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = _param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, _param_placement = _param.placement, placement = _param_placement === void 0 ? [
208
+ var className = _param.className, autoComplete = _param.autoComplete, _param_isDoubleCalendar = _param.isDoubleCalendar, isDoubleCalendar = _param_isDoubleCalendar === void 0 ? false : _param_isDoubleCalendar, _param_opened = _param.opened, opened = _param_opened === void 0 ? false : _param_opened, outerValue = _param.value, _param_defaultFirstDate = _param.defaultFirstDate, defaultFirstDate = _param_defaultFirstDate === void 0 ? '' : _param_defaultFirstDate, _param_defaultSecondDate = _param.defaultSecondDate, defaultSecondDate = _param_defaultSecondDate === void 0 ? '' : _param_defaultSecondDate, preserveInvalidOnBlur = _param.preserveInvalidOnBlur, label = _param.label, leftHelper = _param.leftHelper, contentLeft = _param.contentLeft, contentRight = _param.contentRight, view = _param.view, size = _param.size, _param_readOnly = _param.readOnly, readOnly = _param_readOnly === void 0 ? false : _param_readOnly, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, name = _param.name, _param_dividerVariant = _param.dividerVariant, dividerVariant = _param_dividerVariant === void 0 ? 'dash' : _param_dividerVariant, dividerIcon = _param.dividerIcon, firstValueError = _param.firstValueError, secondValueError = _param.secondValueError, firstValueSuccess = _param.firstValueSuccess, secondValueSuccess = _param.secondValueSuccess, firstPlaceholder = _param.firstPlaceholder, secondPlaceholder = _param.secondPlaceholder, firstTextfieldContentLeft = _param.firstTextfieldContentLeft, firstTextfieldContentRight = _param.firstTextfieldContentRight, secondTextfieldContentLeft = _param.secondTextfieldContentLeft, secondTextfieldContentRight = _param.secondTextfieldContentRight, firstTextfieldTextBefore = _param.firstTextfieldTextBefore, secondTextfieldTextBefore = _param.secondTextfieldTextBefore, firstTextfieldTextAfter = _param.firstTextfieldTextAfter, secondTextfieldTextAfter = _param.secondTextfieldTextAfter, required = _param.required, _param_requiredPlacement = _param.requiredPlacement, requiredPlacement = _param_requiredPlacement === void 0 ? 'right' : _param_requiredPlacement, _param_hasRequiredIndicator = _param.hasRequiredIndicator, hasRequiredIndicator = _param_hasRequiredIndicator === void 0 ? true : _param_hasRequiredIndicator, _param_format = _param.format, format = _param_format === void 0 ? 'DD.MM.YYYY' : _param_format, _param_lang = _param.lang, lang = _param_lang === void 0 ? 'ru' : _param_lang, maskWithFormat = _param.maskWithFormat, min = _param.min, max = _param.max, renderFromDate = _param.renderFromDate, _param_includeEdgeDates = _param.includeEdgeDates, includeEdgeDates = _param_includeEdgeDates === void 0 ? false : _param_includeEdgeDates, eventList = _param.eventList, disabledList = _param.disabledList, eventMonthList = _param.eventMonthList, disabledMonthList = _param.disabledMonthList, eventQuarterList = _param.eventQuarterList, disabledQuarterList = _param.disabledQuarterList, eventYearList = _param.eventYearList, disabledYearList = _param.disabledYearList, _param_type = _param.type, type = _param_type === void 0 ? 'Days' : _param_type, _param_frame = _param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = _param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, zIndex = _param.zIndex, _param_placement = _param.placement, placement = _param_placement === void 0 ? [
209
209
  'top',
210
210
  'bottom'
211
211
  ] : _param_placement, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, _param_closeAfterDateSelect = _param.closeAfterDateSelect, closeAfterDateSelect = _param_closeAfterDateSelect === void 0 ? true : _param_closeAfterDateSelect, offset = _param.offset, calendarContainerWidth = _param.calendarContainerWidth, calendarContainerHeight = _param.calendarContainerHeight, stretched = _param.stretched, onToggle = _param.onToggle, onChange = _param.onChange, onChangeFirstValue = _param.onChangeFirstValue, onChangeSecondValue = _param.onChangeSecondValue, onCommitFirstDate = _param.onCommitFirstDate, onCommitSecondDate = _param.onCommitSecondDate, onFocusFirstTextfield = _param.onFocusFirstTextfield, onFocusSecondTextfield = _param.onFocusSecondTextfield, onBlurFirstTextfield = _param.onBlurFirstTextfield, onBlurSecondTextfield = _param.onBlurSecondTextfield, rest = _object_without_properties(_param, [
@@ -263,6 +263,7 @@ var datePickerRangeRoot = function(Root) {
263
263
  "type",
264
264
  "frame",
265
265
  "usePortal",
266
+ "zIndex",
266
267
  "placement",
267
268
  "closeOnOverlayClick",
268
269
  "closeOnEsc",
@@ -632,6 +633,7 @@ var datePickerRangeRoot = function(Root) {
632
633
  renderFromDate: renderFromDate,
633
634
  frame: frame,
634
635
  usePortal: usePortal,
636
+ zIndex: zIndex,
635
637
  placement: placement,
636
638
  closeOnOverlayClick: closeOnOverlayClick,
637
639
  closeOnEsc: closeOnEsc,
@@ -74,7 +74,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
74
74
  return newObj;
75
75
  }
76
76
  var RangeDatePopover = function(param) {
77
- var Root = param.rootWrapper, target = param.target, isOpen = param.isOpen, opened = param.opened, isDoubleCalendar = param.isDoubleCalendar, calendarValue = param.calendarValue, min = param.min, max = param.max, renderFromDate = param.renderFromDate, includeEdgeDates = param.includeEdgeDates, eventList = param.eventList, disabledList = param.disabledList, eventMonthList = param.eventMonthList, disabledMonthList = param.disabledMonthList, eventQuarterList = param.eventQuarterList, disabledQuarterList = param.disabledQuarterList, eventYearList = param.eventYearList, disabledYearList = param.disabledYearList, _param_frame = param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, _param_placement = param.placement, placement = _param_placement === void 0 ? [
77
+ var Root = param.rootWrapper, target = param.target, isOpen = param.isOpen, opened = param.opened, isDoubleCalendar = param.isDoubleCalendar, calendarValue = param.calendarValue, min = param.min, max = param.max, renderFromDate = param.renderFromDate, includeEdgeDates = param.includeEdgeDates, eventList = param.eventList, disabledList = param.disabledList, eventMonthList = param.eventMonthList, disabledMonthList = param.disabledMonthList, eventQuarterList = param.eventQuarterList, disabledQuarterList = param.disabledQuarterList, eventYearList = param.eventYearList, disabledYearList = param.disabledYearList, _param_frame = param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, zIndex = param.zIndex, _param_placement = param.placement, placement = _param_placement === void 0 ? [
78
78
  'top',
79
79
  'bottom'
80
80
  ] : _param_placement, _param_closeOnOverlayClick = param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, closeOnEsc = param.closeOnEsc, offset = param.offset, calendarContainerWidth = param.calendarContainerWidth, calendarContainerHeight = param.calendarContainerHeight, stretched = param.stretched, type = param.type, size = param.size, _param_lang = param.lang, lang = _param_lang === void 0 ? 'ru' : _param_lang, disabled = param.disabled, readOnly = param.readOnly, setIsInnerOpen = param.setIsInnerOpen, onChangeValue = param.onChangeValue, onChangeStartOfRange = param.onChangeStartOfRange, onToggle = param.onToggle;
@@ -107,7 +107,8 @@ var RangeDatePopover = function(param) {
107
107
  closeOnOverlayClick: closeOnOverlayClick,
108
108
  isFocusTrapped: false,
109
109
  target: target,
110
- preventOverflow: false
110
+ preventOverflow: false,
111
+ zIndex: zIndex
111
112
  }, /*#__PURE__*/ _react.default.createElement(Root, {
112
113
  ref: doubleCalendarRootRef,
113
114
  className: (0, _classnames.default)(_DatePickertokens.classes.datePickerRoot, _define_property({}, _DatePickertokens.classes.datePickerstretched, stretched)),
@@ -148,7 +149,8 @@ var RangeDatePopover = function(param) {
148
149
  isFocusTrapped: false,
149
150
  target: target,
150
151
  preventOverflow: false,
151
- closeOnEsc: closeOnEsc
152
+ closeOnEsc: closeOnEsc,
153
+ zIndex: zIndex
152
154
  }, /*#__PURE__*/ _react.default.createElement(Root, {
153
155
  ref: calendarRootRef,
154
156
  className: (0, _classnames.default)(_DatePickertokens.classes.datePickerRoot, _define_property({}, _DatePickertokens.classes.datePickerstretched, stretched)),
@@ -179,7 +179,7 @@ function _unsupported_iterable_to_array(o, minLen) {
179
179
  }
180
180
  var datePickerRoot = function(Root) {
181
181
  return /*#__PURE__*/ (0, _react.forwardRef)(function(_param, ref) {
182
- var className = _param.className, _param_opened = _param.opened, opened = _param_opened === void 0 ? false : _param_opened, outerValue = _param.value, _param_defaultDate = _param.defaultDate, defaultDate = _param_defaultDate === void 0 ? '' : _param_defaultDate, preserveInvalidOnBlur = _param.preserveInvalidOnBlur, label = _param.label, _param_labelPlacement = _param.labelPlacement, labelPlacement = _param_labelPlacement === void 0 ? 'outer' : _param_labelPlacement, keepPlaceholder = _param.keepPlaceholder, _param_required = _param.required, required = _param_required === void 0 ? false : _param_required, _param_requiredPlacement = _param.requiredPlacement, requiredPlacement = _param_requiredPlacement === void 0 ? 'right' : _param_requiredPlacement, _param_hasRequiredIndicator = _param.hasRequiredIndicator, hasRequiredIndicator = _param_hasRequiredIndicator === void 0 ? true : _param_hasRequiredIndicator, placeholder = _param.placeholder, leftHelper = _param.leftHelper, contentLeft = _param.contentLeft, contentRight = _param.contentRight, textBefore = _param.textBefore, textAfter = _param.textAfter, view = _param.view, size = _param.size, _param_readOnly = _param.readOnly, readOnly = _param_readOnly === void 0 ? false : _param_readOnly, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, name = _param.name, valueError = _param.valueError, valueSuccess = _param.valueSuccess, _param_format = _param.format, format = _param_format === void 0 ? 'DD.MM.YYYY' : _param_format, _param_lang = _param.lang, lang = _param_lang === void 0 ? 'ru' : _param_lang, maskWithFormat = _param.maskWithFormat, min = _param.min, max = _param.max, renderFromDate = _param.renderFromDate, _param_includeEdgeDates = _param.includeEdgeDates, includeEdgeDates = _param_includeEdgeDates === void 0 ? false : _param_includeEdgeDates, eventList = _param.eventList, disabledList = _param.disabledList, eventMonthList = _param.eventMonthList, disabledMonthList = _param.disabledMonthList, eventQuarterList = _param.eventQuarterList, disabledQuarterList = _param.disabledQuarterList, eventYearList = _param.eventYearList, disabledYearList = _param.disabledYearList, _param_type = _param.type, type = _param_type === void 0 ? 'Days' : _param_type, _param_frame = _param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = _param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, _param_placement = _param.placement, placement = _param_placement === void 0 ? [
182
+ var className = _param.className, _param_opened = _param.opened, opened = _param_opened === void 0 ? false : _param_opened, outerValue = _param.value, _param_defaultDate = _param.defaultDate, defaultDate = _param_defaultDate === void 0 ? '' : _param_defaultDate, preserveInvalidOnBlur = _param.preserveInvalidOnBlur, label = _param.label, _param_labelPlacement = _param.labelPlacement, labelPlacement = _param_labelPlacement === void 0 ? 'outer' : _param_labelPlacement, keepPlaceholder = _param.keepPlaceholder, _param_required = _param.required, required = _param_required === void 0 ? false : _param_required, _param_requiredPlacement = _param.requiredPlacement, requiredPlacement = _param_requiredPlacement === void 0 ? 'right' : _param_requiredPlacement, _param_hasRequiredIndicator = _param.hasRequiredIndicator, hasRequiredIndicator = _param_hasRequiredIndicator === void 0 ? true : _param_hasRequiredIndicator, placeholder = _param.placeholder, leftHelper = _param.leftHelper, contentLeft = _param.contentLeft, contentRight = _param.contentRight, textBefore = _param.textBefore, textAfter = _param.textAfter, view = _param.view, size = _param.size, _param_readOnly = _param.readOnly, readOnly = _param_readOnly === void 0 ? false : _param_readOnly, _param_disabled = _param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, name = _param.name, valueError = _param.valueError, valueSuccess = _param.valueSuccess, _param_format = _param.format, format = _param_format === void 0 ? 'DD.MM.YYYY' : _param_format, _param_lang = _param.lang, lang = _param_lang === void 0 ? 'ru' : _param_lang, maskWithFormat = _param.maskWithFormat, min = _param.min, max = _param.max, renderFromDate = _param.renderFromDate, _param_includeEdgeDates = _param.includeEdgeDates, includeEdgeDates = _param_includeEdgeDates === void 0 ? false : _param_includeEdgeDates, eventList = _param.eventList, disabledList = _param.disabledList, eventMonthList = _param.eventMonthList, disabledMonthList = _param.disabledMonthList, eventQuarterList = _param.eventQuarterList, disabledQuarterList = _param.disabledQuarterList, eventYearList = _param.eventYearList, disabledYearList = _param.disabledYearList, _param_type = _param.type, type = _param_type === void 0 ? 'Days' : _param_type, _param_frame = _param.frame, frame = _param_frame === void 0 ? 'document' : _param_frame, _param_usePortal = _param.usePortal, usePortal = _param_usePortal === void 0 ? false : _param_usePortal, zIndex = _param.zIndex, _param_placement = _param.placement, placement = _param_placement === void 0 ? [
183
183
  'top',
184
184
  'bottom'
185
185
  ] : _param_placement, _param_closeOnOverlayClick = _param.closeOnOverlayClick, closeOnOverlayClick = _param_closeOnOverlayClick === void 0 ? true : _param_closeOnOverlayClick, _param_closeOnEsc = _param.closeOnEsc, closeOnEsc = _param_closeOnEsc === void 0 ? true : _param_closeOnEsc, _param_closeAfterDateSelect = _param.closeAfterDateSelect, closeAfterDateSelect = _param_closeAfterDateSelect === void 0 ? true : _param_closeAfterDateSelect, offset = _param.offset, calendarContainerWidth = _param.calendarContainerWidth, calendarContainerHeight = _param.calendarContainerHeight, stretched = _param.stretched, onChangeValue = _param.onChangeValue, onCommitDate = _param.onCommitDate, onToggle = _param.onToggle, onFocus = _param.onFocus, onBlur = _param.onBlur, onChange = _param.onChange, autoComplete = _param.autoComplete, rest = _object_without_properties(_param, [
@@ -225,6 +225,7 @@ var datePickerRoot = function(Root) {
225
225
  "type",
226
226
  "frame",
227
227
  "usePortal",
228
+ "zIndex",
228
229
  "placement",
229
230
  "closeOnOverlayClick",
230
231
  "closeOnEsc",
@@ -412,7 +413,8 @@ var datePickerRoot = function(Root) {
412
413
  closeOnOverlayClick: closeOnOverlayClick,
413
414
  isFocusTrapped: false,
414
415
  target: DatePickerInput,
415
- preventOverflow: false
416
+ preventOverflow: false,
417
+ zIndex: zIndex
416
418
  }, /*#__PURE__*/ _react.default.createElement(Root, {
417
419
  ref: calendarRootRef,
418
420
  view: view,
@@ -21,9 +21,11 @@ _export(exports, {
21
21
  });
22
22
  var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
23
23
  var _plasmacore = require("@salutejs/plasma-core");
24
+ var _reactdraggable = /*#__PURE__*/ _interop_require_default(require("react-draggable"));
25
+ var _reresizable = require("re-resizable");
24
26
  var _utils = require("../../utils");
25
27
  var _Portal = require("../Portal");
26
- var _ui = require("./ui");
28
+ var _utils1 = require("./utils");
27
29
  var _PopupRoot = require("./PopupRoot");
28
30
  var _hooks = require("./hooks");
29
31
  var _Popuptokens = require("./Popup.tokens");
@@ -49,6 +51,11 @@ function _define_property(obj, key, value) {
49
51
  }
50
52
  return obj;
51
53
  }
54
+ function _interop_require_default(obj) {
55
+ return obj && obj.__esModule ? obj : {
56
+ default: obj
57
+ };
58
+ }
52
59
  function _getRequireWildcardCache(nodeInterop) {
53
60
  if (typeof WeakMap !== "function") return null;
54
61
  var cacheBabelInterop = new WeakMap();
@@ -248,7 +255,12 @@ var popupRoot = function(Root) {
248
255
  "draggable",
249
256
  "resizable"
250
257
  ]);
258
+ var _resizable_hiddenIcons, _resizable_icons, _resizable_hiddenIcons1, _resizable_icons1, _resizable_hiddenIcons2, _resizable_icons2, _resizable_hiddenIcons3, _resizable_icons3;
259
+ var nodeRef = (0, _react.useRef)(null);
251
260
  var innerIsOpen = isOpen || opened;
261
+ var resizable = typeof outerResizable === 'boolean' ? {
262
+ disabled: !outerResizable
263
+ } : outerResizable;
252
264
  var uniqId = (0, _utils.safeUseId)();
253
265
  var innerId = id || uniqId;
254
266
  var _usePopup = (0, _hooks.usePopup)({
@@ -259,11 +271,22 @@ var popupRoot = function(Root) {
259
271
  }), isVisible = _usePopup.isVisible, animationInfo = _usePopup.animationInfo, setVisible = _usePopup.setVisible, rootId = _usePopup.rootId;
260
272
  var portalRef = (0, _react.useRef)(null);
261
273
  var contentRef = (0, _react.useRef)(null);
274
+ var resizableContainer = (0, _react.useRef)(null);
262
275
  var innerRef = (0, _plasmacore.useForkRef)(contentRef, outerRootRef);
263
276
  if (!isVisible && !innerIsOpen) {
264
277
  return null;
265
278
  }
266
279
  var cls = (0, _utils.cx)(className, (animationInfo === null || animationInfo === void 0 ? void 0 : animationInfo.endAnimation) ? _Popuptokens.classes.endAnimation : '', (animationInfo === null || animationInfo === void 0 ? void 0 : animationInfo.endTransition) ? _Popuptokens.classes.endTransition : '');
280
+ var handleResizeStart = function() {
281
+ if ((resizableContainer === null || resizableContainer === void 0 ? void 0 : resizableContainer.current) && resizableContainer.current.resizable) {
282
+ resizableContainer.current.resizable.classList.toggle(_Popuptokens.classes.resizableContainerNoSelect);
283
+ }
284
+ };
285
+ var handleResizeStop = function() {
286
+ if ((resizableContainer === null || resizableContainer === void 0 ? void 0 : resizableContainer.current) && resizableContainer.current.resizable) {
287
+ resizableContainer.current.resizable.classList.toggle(_Popuptokens.classes.resizableContainerNoSelect);
288
+ }
289
+ };
267
290
  var rootNode = /*#__PURE__*/ _react.default.createElement(Root, {
268
291
  className: cls
269
292
  }, overlay, /*#__PURE__*/ _react.default.createElement(_PopupRoot.PopupRoot, _object_spread({
@@ -274,12 +297,51 @@ var popupRoot = function(Root) {
274
297
  frame: frame,
275
298
  animationInfo: animationInfo,
276
299
  setVisible: setVisible
277
- }, rest), /*#__PURE__*/ _react.default.createElement(_ui.Draggable, {
278
- draggable: draggable
279
- }, /*#__PURE__*/ _react.default.createElement(_ui.Resizable, {
280
- resizable: outerResizable,
281
- placement: placement
282
- }, children))));
300
+ }, rest), /*#__PURE__*/ _react.default.createElement(_reactdraggable.default, {
301
+ nodeRef: nodeRef,
302
+ defaultClassName: draggable ? _Popuptokens.classes.draggablePopupWrapper : undefined,
303
+ defaultClassNameDragging: draggable ? _Popuptokens.classes.draggingPopupWrapper : undefined,
304
+ disabled: !draggable,
305
+ cancel: ".".concat(_Popuptokens.classes.resizableHandleWrapper)
306
+ }, /*#__PURE__*/ _react.default.createElement("div", {
307
+ ref: nodeRef
308
+ }, /*#__PURE__*/ _react.default.createElement(_reresizable.Resizable, {
309
+ ref: resizableContainer,
310
+ enable: resizable && !resizable.disabled ? (0, _utils1.getResizeDirections)(resizable.directions) : false,
311
+ resizeRatio: (0, _utils1.getRatioBasedOnPlacement)(placement),
312
+ defaultSize: resizable === null || resizable === void 0 ? void 0 : resizable.defaultSize,
313
+ minWidth: resizable === null || resizable === void 0 ? void 0 : resizable.minWidth,
314
+ minHeight: resizable === null || resizable === void 0 ? void 0 : resizable.minHeight,
315
+ maxWidth: resizable === null || resizable === void 0 ? void 0 : resizable.maxWidth,
316
+ maxHeight: resizable === null || resizable === void 0 ? void 0 : resizable.maxHeight,
317
+ onResizeStart: handleResizeStart,
318
+ onResizeStop: handleResizeStop,
319
+ handleComponent: {
320
+ topRight: (resizable === null || resizable === void 0 ? void 0 : (_resizable_hiddenIcons = resizable.hiddenIcons) === null || _resizable_hiddenIcons === void 0 ? void 0 : _resizable_hiddenIcons.includes('top-right')) ? undefined : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, (resizable === null || resizable === void 0 ? void 0 : (_resizable_icons = resizable.icons) === null || _resizable_icons === void 0 ? void 0 : _resizable_icons.topRight) || /*#__PURE__*/ _react.default.createElement(_Popupstyles.IconResizeDiagonalStyled, {
321
+ className: _Popuptokens.classes.resizableTopRightIcon,
322
+ color: "inherit",
323
+ size: resizable === null || resizable === void 0 ? void 0 : resizable.iconSize
324
+ })),
325
+ bottomRight: (resizable === null || resizable === void 0 ? void 0 : (_resizable_hiddenIcons1 = resizable.hiddenIcons) === null || _resizable_hiddenIcons1 === void 0 ? void 0 : _resizable_hiddenIcons1.includes('bottom-right')) ? undefined : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, (resizable === null || resizable === void 0 ? void 0 : (_resizable_icons1 = resizable.icons) === null || _resizable_icons1 === void 0 ? void 0 : _resizable_icons1.bottomRight) || /*#__PURE__*/ _react.default.createElement(_Popupstyles.IconResizeDiagonalStyled, {
326
+ className: _Popuptokens.classes.resizableBottomRightIcon,
327
+ color: "inherit",
328
+ size: resizable === null || resizable === void 0 ? void 0 : resizable.iconSize
329
+ })),
330
+ bottomLeft: (resizable === null || resizable === void 0 ? void 0 : (_resizable_hiddenIcons2 = resizable.hiddenIcons) === null || _resizable_hiddenIcons2 === void 0 ? void 0 : _resizable_hiddenIcons2.includes('bottom-left')) ? undefined : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, (resizable === null || resizable === void 0 ? void 0 : (_resizable_icons2 = resizable.icons) === null || _resizable_icons2 === void 0 ? void 0 : _resizable_icons2.bottomLeft) || /*#__PURE__*/ _react.default.createElement(_Popupstyles.IconResizeDiagonalStyled, {
331
+ className: _Popuptokens.classes.resizableBottomLeftIcon,
332
+ color: "inherit",
333
+ size: resizable === null || resizable === void 0 ? void 0 : resizable.iconSize
334
+ })),
335
+ topLeft: (resizable === null || resizable === void 0 ? void 0 : (_resizable_hiddenIcons3 = resizable.hiddenIcons) === null || _resizable_hiddenIcons3 === void 0 ? void 0 : _resizable_hiddenIcons3.includes('top-left')) ? undefined : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, (resizable === null || resizable === void 0 ? void 0 : (_resizable_icons3 = resizable.icons) === null || _resizable_icons3 === void 0 ? void 0 : _resizable_icons3.topLeft) || /*#__PURE__*/ _react.default.createElement(_Popupstyles.IconResizeDiagonalStyled, {
336
+ className: _Popuptokens.classes.resizableTopLeftIcon,
337
+ color: "inherit",
338
+ size: resizable === null || resizable === void 0 ? void 0 : resizable.iconSize
339
+ }))
340
+ },
341
+ className: _Popuptokens.classes.resizableContainer,
342
+ handleStyles: (0, _utils1.getHandleStyles)(),
343
+ handleWrapperClass: _Popuptokens.classes.resizableHandleWrapper
344
+ }, children)))));
283
345
  if (typeof frame !== 'string' && frame && frame.current && _utils.canUseDOM) {
284
346
  return /*#__PURE__*/ _react.default.createElement(_Portal.Portal, {
285
347
  container: frame.current