@salutejs/plasma-new-hope 0.335.0-canary.2196.17375511532.0 → 0.335.0-canary.2197.17377664818.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 (208) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +6 -1
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +13 -43
  4. package/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js.map +1 -1
  5. package/cjs/components/Carousel/CarouselNew/Carousel.js +3 -4
  6. package/cjs/components/Carousel/CarouselNew/Carousel.js.map +1 -1
  7. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +1 -6
  8. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js.map +1 -1
  9. package/cjs/components/Combobox/ComboboxNew/Combobox.js +34 -18
  10. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  11. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +2 -3
  12. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  13. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +11 -5
  14. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  15. package/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +13 -43
  16. package/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js.map +1 -1
  17. package/cjs/components/DatePicker/RangeDate/RangeDate.js +1 -3
  18. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  19. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +2 -5
  20. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  21. package/cjs/components/DatePicker/SingleDate/SingleDate.js +2 -4
  22. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  23. package/cjs/components/Popup/ClientOnlyPortal.js +2 -15
  24. package/cjs/components/Popup/ClientOnlyPortal.js.map +1 -1
  25. package/cjs/components/Popup/PopupContext.js +5 -26
  26. package/cjs/components/Popup/PopupContext.js.map +1 -1
  27. package/cjs/components/Select/Select.js +4 -3
  28. package/cjs/components/Select/Select.js.map +1 -1
  29. package/cjs/components/Select/Select.styles.js +2 -3
  30. package/cjs/components/Select/Select.styles.js.map +1 -1
  31. package/cjs/components/Select/ui/Inner/Inner.js +11 -5
  32. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  33. package/cjs/components/Select/ui/VirtualList/VirtualList.js +13 -43
  34. package/cjs/components/Select/ui/VirtualList/VirtualList.js.map +1 -1
  35. package/emotion/cjs/components/Autocomplete/Autocomplete.js +8 -1
  36. package/emotion/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +16 -84
  37. package/emotion/cjs/components/Carousel/CarouselNew/Carousel.js +2 -2
  38. package/emotion/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +1 -6
  39. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +48 -28
  40. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +15 -15
  41. package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +50 -9
  42. package/emotion/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +16 -84
  43. package/emotion/cjs/components/Combobox/ComboboxNew/utils/index.js +0 -4
  44. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +1 -3
  45. package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -5
  46. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +2 -4
  47. package/emotion/cjs/components/Popup/ClientOnlyPortal.js +2 -14
  48. package/emotion/cjs/components/Popup/PopupContext.js +6 -25
  49. package/emotion/cjs/components/Select/Select.js +4 -2
  50. package/emotion/cjs/components/Select/Select.styles.js +7 -7
  51. package/emotion/cjs/components/Select/ui/Inner/Inner.js +50 -9
  52. package/emotion/cjs/components/Select/ui/VirtualList/VirtualList.js +16 -84
  53. package/emotion/cjs/examples/components/Combobox/Combobox.js +15 -0
  54. package/emotion/es/components/Autocomplete/Autocomplete.js +9 -2
  55. package/emotion/es/components/Autocomplete/ui/VirtualList/VirtualList.js +13 -45
  56. package/emotion/es/components/Carousel/CarouselNew/Carousel.js +2 -2
  57. package/emotion/es/components/Carousel/CarouselNew/hooks/useCarousel.js +1 -6
  58. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +34 -14
  59. package/emotion/es/components/Combobox/ComboboxNew/Combobox.styles.js +15 -15
  60. package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +11 -6
  61. package/emotion/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +13 -45
  62. package/emotion/es/components/Combobox/ComboboxNew/utils/index.js +0 -1
  63. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +1 -3
  64. package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -5
  65. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +2 -4
  66. package/emotion/es/components/Popup/ClientOnlyPortal.js +2 -14
  67. package/emotion/es/components/Popup/PopupContext.js +6 -25
  68. package/emotion/es/components/Select/Select.js +4 -2
  69. package/emotion/es/components/Select/Select.styles.js +7 -7
  70. package/emotion/es/components/Select/ui/Inner/Inner.js +11 -6
  71. package/emotion/es/components/Select/ui/VirtualList/VirtualList.js +13 -45
  72. package/es/components/Autocomplete/Autocomplete.js +7 -2
  73. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  74. package/es/components/Autocomplete/ui/VirtualList/VirtualList.js +13 -44
  75. package/es/components/Autocomplete/ui/VirtualList/VirtualList.js.map +1 -1
  76. package/es/components/Carousel/CarouselNew/Carousel.js +4 -5
  77. package/es/components/Carousel/CarouselNew/Carousel.js.map +1 -1
  78. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js +1 -6
  79. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js.map +1 -1
  80. package/es/components/Combobox/ComboboxNew/Combobox.js +34 -18
  81. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  82. package/es/components/Combobox/ComboboxNew/Combobox.styles.js +2 -3
  83. package/es/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  84. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +12 -6
  85. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  86. package/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +13 -44
  87. package/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js.map +1 -1
  88. package/es/components/DatePicker/RangeDate/RangeDate.js +1 -3
  89. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  90. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +2 -5
  91. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  92. package/es/components/DatePicker/SingleDate/SingleDate.js +2 -4
  93. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  94. package/es/components/Popup/ClientOnlyPortal.js +2 -15
  95. package/es/components/Popup/ClientOnlyPortal.js.map +1 -1
  96. package/es/components/Popup/PopupContext.js +5 -26
  97. package/es/components/Popup/PopupContext.js.map +1 -1
  98. package/es/components/Select/Select.js +4 -3
  99. package/es/components/Select/Select.js.map +1 -1
  100. package/es/components/Select/Select.styles.js +2 -3
  101. package/es/components/Select/Select.styles.js.map +1 -1
  102. package/es/components/Select/ui/Inner/Inner.js +12 -6
  103. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  104. package/es/components/Select/ui/VirtualList/VirtualList.js +13 -44
  105. package/es/components/Select/ui/VirtualList/VirtualList.js.map +1 -1
  106. package/package.json +3 -2
  107. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +8 -1
  108. package/styled-components/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +16 -84
  109. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.js +2 -2
  110. package/styled-components/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +1 -6
  111. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +48 -28
  112. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +8 -8
  113. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +50 -9
  114. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +16 -84
  115. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/index.js +0 -4
  116. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +1 -3
  117. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -5
  118. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +2 -4
  119. package/styled-components/cjs/components/Popup/ClientOnlyPortal.js +2 -14
  120. package/styled-components/cjs/components/Popup/PopupContext.js +6 -25
  121. package/styled-components/cjs/components/Select/Select.js +4 -2
  122. package/styled-components/cjs/components/Select/Select.styles.js +4 -4
  123. package/styled-components/cjs/components/Select/ui/Inner/Inner.js +50 -9
  124. package/styled-components/cjs/components/Select/ui/VirtualList/VirtualList.js +16 -84
  125. package/styled-components/es/components/Autocomplete/Autocomplete.js +9 -2
  126. package/styled-components/es/components/Autocomplete/ui/VirtualList/VirtualList.js +13 -45
  127. package/styled-components/es/components/Carousel/CarouselNew/Carousel.js +2 -2
  128. package/styled-components/es/components/Carousel/CarouselNew/hooks/useCarousel.js +1 -6
  129. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +34 -14
  130. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.styles.js +8 -8
  131. package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +11 -6
  132. package/styled-components/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +13 -45
  133. package/styled-components/es/components/Combobox/ComboboxNew/utils/index.js +0 -1
  134. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +1 -3
  135. package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +3 -5
  136. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +2 -4
  137. package/styled-components/es/components/Popup/ClientOnlyPortal.js +2 -14
  138. package/styled-components/es/components/Popup/PopupContext.js +6 -25
  139. package/styled-components/es/components/Select/Select.js +4 -2
  140. package/styled-components/es/components/Select/Select.styles.js +4 -4
  141. package/styled-components/es/components/Select/ui/Inner/Inner.js +11 -6
  142. package/styled-components/es/components/Select/ui/VirtualList/VirtualList.js +13 -45
  143. package/styled-components/es/examples/components/Combobox/Combobox.js +0 -7
  144. package/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  145. package/types/components/Autocomplete/Autocomplete.types.d.ts +17 -17
  146. package/types/components/Autocomplete/Autocomplete.types.d.ts.map +1 -1
  147. package/types/components/Autocomplete/ui/VirtualList/VirtualList.d.ts +1 -1
  148. package/types/components/Autocomplete/ui/VirtualList/VirtualList.d.ts.map +1 -1
  149. package/types/components/Carousel/CarouselNew/Carousel.d.ts.map +1 -1
  150. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts +0 -5
  151. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts.map +1 -1
  152. package/types/components/Carousel/CarouselNew/hooks/useCarousel.d.ts.map +1 -1
  153. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  154. package/types/components/Combobox/ComboboxNew/Combobox.styles.d.ts +0 -1
  155. package/types/components/Combobox/ComboboxNew/Combobox.styles.d.ts.map +1 -1
  156. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +7 -7
  157. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
  158. package/types/components/Combobox/ComboboxNew/ui/Inner/Inner.d.ts.map +1 -1
  159. package/types/components/Combobox/ComboboxNew/ui/Inner/Inner.type.d.ts +2 -1
  160. package/types/components/Combobox/ComboboxNew/ui/Inner/Inner.type.d.ts.map +1 -1
  161. package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.types.d.ts +6 -2
  162. package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
  163. package/types/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.d.ts +1 -1
  164. package/types/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.d.ts.map +1 -1
  165. package/types/components/Combobox/ComboboxNew/utils/index.d.ts +0 -1
  166. package/types/components/Combobox/ComboboxNew/utils/index.d.ts.map +1 -1
  167. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  168. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
  169. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
  170. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  171. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +0 -4
  172. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  173. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +18 -18
  174. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
  175. package/types/components/Popup/ClientOnlyPortal.d.ts +0 -1
  176. package/types/components/Popup/ClientOnlyPortal.d.ts.map +1 -1
  177. package/types/components/Popup/PopupContext.d.ts +1 -5
  178. package/types/components/Popup/PopupContext.d.ts.map +1 -1
  179. package/types/components/Select/Select.d.ts.map +1 -1
  180. package/types/components/Select/Select.styles.d.ts +0 -1
  181. package/types/components/Select/Select.styles.d.ts.map +1 -1
  182. package/types/components/Select/Select.types.d.ts +14 -14
  183. package/types/components/Select/Select.types.d.ts.map +1 -1
  184. package/types/components/Select/ui/Inner/Inner.d.ts.map +1 -1
  185. package/types/components/Select/ui/Inner/Inner.type.d.ts +2 -1
  186. package/types/components/Select/ui/Inner/Inner.type.d.ts.map +1 -1
  187. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts +11 -3
  188. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
  189. package/types/components/Select/ui/VirtualList/VirtualList.d.ts +1 -1
  190. package/types/components/Select/ui/VirtualList/VirtualList.d.ts.map +1 -1
  191. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +18 -18
  192. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts.map +1 -1
  193. package/types/examples/components/Autocomplete/Autocomplete.d.ts +40 -40
  194. package/types/examples/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  195. package/types/examples/components/Combobox/Combobox.d.ts +48 -48
  196. package/types/examples/components/Combobox/Combobox.d.ts.map +1 -1
  197. package/types/examples/components/Select/Select.d.ts +18 -18
  198. package/types/examples/components/Select/Select.d.ts.map +1 -1
  199. package/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +0 -24
  200. package/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js.map +0 -1
  201. package/emotion/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +0 -25
  202. package/emotion/es/components/Combobox/ComboboxNew/utils/getTextValue.js +0 -16
  203. package/es/components/Combobox/ComboboxNew/utils/getTextValue.js +0 -20
  204. package/es/components/Combobox/ComboboxNew/utils/getTextValue.js.map +0 -1
  205. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +0 -25
  206. package/styled-components/es/components/Combobox/ComboboxNew/utils/getTextValue.js +0 -16
  207. package/types/components/Combobox/ComboboxNew/utils/getTextValue.d.ts +0 -4
  208. package/types/components/Combobox/ComboboxNew/utils/getTextValue.d.ts.map +0 -1
@@ -8,101 +8,33 @@ Object.defineProperty(exports, "VirtualList", {
8
8
  return VirtualList;
9
9
  }
10
10
  });
11
- var _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
12
- var _reactvirtual = require("@tanstack/react-virtual");
11
+ var _react = /*#__PURE__*/ _interop_require_default(require("react"));
12
+ var _rcvirtuallist = /*#__PURE__*/ _interop_require_default(require("rc-virtual-list"));
13
13
  var _utils = require("../../../../utils");
14
14
  var _ui = require("../Inner/ui");
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
15
+ function _interop_require_default(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
38
18
  };
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;
55
19
  }
56
20
  var VirtualList = function(param) {
57
21
  var items = param.items, listMaxHeight = param.listMaxHeight, onScroll = param.onScroll;
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
- },
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",
78
28
  onScroll: onScroll
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],
29
+ }, function(item, index, props) {
30
+ return /*#__PURE__*/ _react.default.createElement("div", props, /*#__PURE__*/ _react.default.createElement(_ui.Item, {
31
+ item: item,
100
32
  path: [
101
33
  'root'
102
34
  ],
103
35
  currentLevel: 0,
104
- index: virtualRow.index,
36
+ index: index,
105
37
  ariaLevel: 1
106
38
  }));
107
- }))));
39
+ });
108
40
  };
@@ -1 +1,16 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "Combobox", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Combobox;
9
+ }
10
+ });
11
+ var _engines = require("../../../engines");
12
+ var _ = require("../../..");
13
+ var _Comboboxconfig = require("./Combobox.config");
14
+ var mergedConfig = (0, _engines.mergeConfig)(_.comboboxNewConfig, _Comboboxconfig.config);
15
+ var ComboboxComponent = (0, _engines.component)(mergedConfig);
16
+ var Combobox = ComboboxComponent;
@@ -99,7 +99,7 @@ function _unsupported_iterable_to_array(o, minLen) {
99
99
  if (n === "Map" || n === "Set") return Array.from(n);
100
100
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
101
101
  }
102
- import React, { forwardRef, useState, useReducer, useRef } from "react";
102
+ import React, { forwardRef, useState, useReducer, useLayoutEffect, useRef } from "react";
103
103
  import { safeUseId } from "../../utils";
104
104
  import { useDidMountEffect, useOutsideClick } from "../../hooks";
105
105
  import { FloatingPopover } from "./FloatingPopover";
@@ -150,7 +150,7 @@ import { useKeyNavigation } from "./hooks/useKeyboardNavigation";
150
150
  "_offset"
151
151
  ]);
152
152
  var _useReducer = _sliced_to_array(useReducer(focusedReducer, null), 2), focused = _useReducer[0], dispatchFocused = _useReducer[1];
153
- var _useState = _sliced_to_array(useState(defaultValue || ''), 2), innerValue = _useState[0], setInnerValue = _useState[1];
153
+ var _useState = _sliced_to_array(useState(''), 2), innerValue = _useState[0], setInnerValue = _useState[1];
154
154
  var _useState1 = _sliced_to_array(useState(false), 2), isOpen = _useState1[0], setIsOpen = _useState1[1];
155
155
  var listId = safeUseId();
156
156
  var value = outerValue !== null && outerValue !== void 0 ? outerValue : innerValue;
@@ -206,6 +206,13 @@ import { useKeyNavigation } from "./hooks/useKeyboardNavigation";
206
206
  }, [
207
207
  value
208
208
  ]);
209
+ useLayoutEffect(function() {
210
+ if (defaultValue) {
211
+ setInnerValue(defaultValue);
212
+ }
213
+ }, [
214
+ defaultValue
215
+ ]);
209
216
  return /*#__PURE__*/ React.createElement(Root, {
210
217
  view: view,
211
218
  size: size,
@@ -1,55 +1,23 @@
1
- import React, { useRef } from "react";
2
- import { useVirtualizer } from "@tanstack/react-virtual";
1
+ import React from "react";
2
+ import List from "rc-virtual-list";
3
3
  import { getHeightAsNumber } from "../../../../utils";
4
4
  import { SuggestionItem } from "../SuggestionItem/SuggestionItem";
5
5
  export var VirtualList = function(param) {
6
6
  var items = param.items, onClick = param.onClick, listId = param.listId, listMaxHeight = param.listMaxHeight, onScroll = param.onScroll, renderItem = param.renderItem;
7
- var _virtualItems_;
8
- var parentRef = useRef(null);
9
- var virtualizer = useVirtualizer({
10
- count: items.length,
11
- getScrollElement: function() {
12
- return parentRef.current;
13
- },
14
- estimateSize: function() {
15
- return 48;
16
- }
17
- });
18
- var virtualItems = virtualizer.getVirtualItems();
19
- var _virtualItems__start;
20
- return /*#__PURE__*/ React.createElement("div", {
21
- ref: parentRef,
22
- style: {
23
- height: 'auto',
24
- maxHeight: getHeightAsNumber(listMaxHeight),
25
- overflowY: 'auto'
26
- },
7
+ return /*#__PURE__*/ React.createElement(List, {
8
+ data: items,
9
+ height: getHeightAsNumber(listMaxHeight),
10
+ fullHeight: false,
11
+ itemHeight: 100,
12
+ itemKey: "id",
27
13
  onScroll: onScroll
28
- }, /*#__PURE__*/ React.createElement("div", {
29
- style: {
30
- height: virtualizer.getTotalSize(),
31
- width: '100%',
32
- position: 'relative'
33
- }
34
- }, /*#__PURE__*/ React.createElement("div", {
35
- style: {
36
- position: 'absolute',
37
- top: 0,
38
- left: 0,
39
- width: '100%',
40
- 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)")
41
- }
42
- }, virtualItems.map(function(virtualRow) {
43
- return /*#__PURE__*/ React.createElement("div", {
44
- key: virtualRow.key,
45
- "data-index": virtualRow.index,
46
- ref: virtualizer.measureElement
47
- }, /*#__PURE__*/ React.createElement(SuggestionItem, {
48
- item: items[virtualRow.index],
14
+ }, function(item, index, props) {
15
+ return /*#__PURE__*/ React.createElement("div", props, /*#__PURE__*/ React.createElement(SuggestionItem, {
16
+ item: item,
49
17
  onClick: onClick,
50
- id: "".concat(listId, "/").concat(virtualRow.index),
18
+ id: "".concat(listId, "/").concat(index),
51
19
  focused: false,
52
20
  renderItem: renderItem
53
21
  }));
54
- }))));
22
+ });
55
23
  };
@@ -59,9 +59,9 @@ var DOTS_CENTERED_DEFAULT = false;
59
59
  * Компонент для создания списков с прокруткой.
60
60
  */ export var carouselNewRoot = function(Root) {
61
61
  return /*#__PURE__*/ forwardRef(function(param, ref) {
62
- var view = param.view, size = param.size, _param_scrollAlign = param.scrollAlign, scrollAlign = _param_scrollAlign === void 0 ? 'start' : _param_scrollAlign, children = param.children, _param_controlArrowsDisabled = param.controlArrowsDisabled, controlArrowsDisabled = _param_controlArrowsDisabled === void 0 ? false : _param_controlArrowsDisabled, paginationOptions = param.paginationOptions, _param_gap = param.gap, gap = _param_gap === void 0 ? '20px' : _param_gap, className = param.className, style = param.style, defaultIndex = param.defaultIndex;
62
+ var view = param.view, size = param.size, _param_scrollAlign = param.scrollAlign, scrollAlign = _param_scrollAlign === void 0 ? 'start' : _param_scrollAlign, children = param.children, _param_controlArrowsDisabled = param.controlArrowsDisabled, controlArrowsDisabled = _param_controlArrowsDisabled === void 0 ? false : _param_controlArrowsDisabled, paginationOptions = param.paginationOptions, _param_gap = param.gap, gap = _param_gap === void 0 ? '20px' : _param_gap, className = param.className, style = param.style;
63
+ var _useState = _sliced_to_array(useState(0), 2), index = _useState[0], setIndex = _useState[1];
63
64
  var slidesAmount = Children.count(children);
64
- var _useState = _sliced_to_array(useState(defaultIndex && defaultIndex >= 0 ? Math.min(slidesAmount - 1, defaultIndex) : 0), 2), index = _useState[0], setIndex = _useState[1];
65
65
  var handleClickLeft = function() {
66
66
  setIndex(Math.max(0, index - 1));
67
67
  };
@@ -34,7 +34,6 @@ export var useCarousel = function(param) {
34
34
  var index = param.index, scrollAlign = param.scrollAlign;
35
35
  var scrollRef = useRef(null);
36
36
  var trackRef = useRef(null);
37
- var isFirstRender = useRef(true);
38
37
  // Прокрутка до нужной позиции индекса, если индекс изменился.
39
38
  useEffect(function() {
40
39
  if (!scrollRef.current || !trackRef.current) {
@@ -50,13 +49,9 @@ export var useCarousel = function(param) {
50
49
  scrollAlign: scrollAlign
51
50
  });
52
51
  scrollRef.current.scrollTo({
53
- left: pos,
54
- behavior: isFirstRender.current ? 'instant' : 'smooth'
52
+ left: pos
55
53
  });
56
54
  }
57
- if (isFirstRender.current) {
58
- isFirstRender.current = false;
59
- }
60
55
  }, [
61
56
  index
62
57
  ]);
@@ -141,13 +141,14 @@ function _unsupported_iterable_to_array(o, minLen) {
141
141
  }
142
142
  import React, { forwardRef, useState, useReducer, useMemo, useLayoutEffect, useRef } from "react";
143
143
  import { useForkRef } from "@salutejs/plasma-core";
144
- import { safeUseId, isEmpty } from "../../../utils";
145
- import { useOutsideClick, useDidMountLayoutEffect } from "../../../hooks";
144
+ import { safeUseId } from "../../../utils";
145
+ import { isEmpty } from "../../../utils";
146
+ import { useOutsideClick } from "../../../hooks";
146
147
  import { sizeToIconSize } from "../../Select/utils";
147
148
  import { classes } from "./Combobox.tokens";
148
149
  import { FloatingPopover } from "./FloatingPopover";
149
150
  import { useKeyNavigation, getItemByFocused } from "./hooks/useKeyboardNavigation";
150
- import { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, filterItems, getItemId, getRemovedElement, getTextValue } from "./utils";
151
+ import { initialItemsTransform, updateAncestors, updateDescendants, updateSingleAncestors, filterItems, getItemId, getRemovedElement } from "./utils";
151
152
  import { Inner, StyledTextField, VirtualList, SelectAll } from "./ui";
152
153
  import { pathReducer, focusedPathReducer } from "./reducers";
153
154
  import { getPathMap, getTreeMaps } from "./hooks/getPathMaps";
@@ -160,7 +161,7 @@ import { Context } from "./Combobox.context";
160
161
  * Поле ввода с выпадающим списком и возможностью фильтрации и выбора элементов.
161
162
  */ export var comboboxRoot = function(Root) {
162
163
  return /*#__PURE__*/ forwardRef(function(props, ref) {
163
- var _getItemByFocused;
164
+ var _valueToItemMap_get, _getItemByFocused;
164
165
  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
165
166
  _offset = props._offset, rest = _object_without_properties(props, [
166
167
  "name",
@@ -218,15 +219,17 @@ import { Context } from "./Combobox.context";
218
219
  }, [
219
220
  items
220
221
  ]), 3), valueToCheckedMap = _useMemo[0], valueToItemMap = _useMemo[1], labelToItemMap = _useMemo[2];
221
- var _useState = _sliced_to_array(useState(getTextValue(multiple, outerValue, valueToItemMap, renderValue)), 2), textValue = _useState[0], setTextValue = _useState[1];
222
+ var _useState = _sliced_to_array(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];
222
223
  var _useState1 = _sliced_to_array(useState(multiple ? [] : ''), 2), internalValue = _useState1[0], setInternalValue = _useState1[1];
223
224
  var value = outerValue !== null && outerValue !== undefined ? outerValue : internalValue;
224
225
  var inputRef = useRef(null);
225
226
  var floatingPopoverRef = useRef(null);
226
227
  var inputForkRef = useForkRef(inputRef, ref);
227
228
  var treeId = safeUseId();
229
+ var listWrapperRef = useRef(null);
228
230
  var filteredItems = useMemo(function() {
229
- return filterItems(transformedItems, textValue, getTextValue(multiple, value, valueToItemMap, renderValue), filter);
231
+ var _valueToItemMap_get;
232
+ return filterItems(transformedItems, textValue, ((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || value, filter);
230
233
  }, [
231
234
  transformedItems,
232
235
  textValue,
@@ -263,19 +266,30 @@ import { Context } from "./Combobox.context";
263
266
  if (onToggle) {
264
267
  onToggle(false);
265
268
  }
266
- // Возвращаем актуальное значение поля ввода после закрытия выпадающего списка.
267
- setTextValue(getTextValue(multiple, value, valueToItemMap, renderValue));
269
+ // Проверяем, отличается ли значение в инпуте от выбранного value после закрытия дропдауна.
270
+ // Если изменилось, то возвращаем label выбранного айтема.
271
+ // Если нет выбранного элемента, то стираем значение инпута.
272
+ if (textValue !== value) {
273
+ if (isEmpty(value)) {
274
+ setTextValue('');
275
+ } else if (multiple) {
276
+ setTextValue('');
277
+ } else {
278
+ var _valueToItemMap_get;
279
+ setTextValue(((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || value || '');
280
+ }
281
+ }
268
282
  }, floatingPopoverRef);
269
283
  // Эта функция срабатывает при изменении Combobox и
270
284
  // при изменении нативного Select для формы (срабатывает только после изменения internalValue и рендера).
271
285
  var onChange = function(newValue, item) {
272
286
  // Условие для отправки изменений наружу
273
287
  if (props.onChange) {
274
- // Условие для отправки, если комбобокс используется без формы.
288
+ // Условие для отправки если комбобокс используется без формы.
275
289
  if (!props.name && (typeof newValue === 'string' || Array.isArray(newValue))) {
276
290
  props.onChange(newValue, item || null);
277
291
  }
278
- // Условие для отправки, если комбобокс используется с формой.
292
+ // Условие для отправки если комбобокс используется с формой.
279
293
  if (props.name && (typeof newValue === "undefined" ? "undefined" : _type_of(newValue)) === 'object' && !Array.isArray(newValue)) {
280
294
  props.onChange(newValue);
281
295
  }
@@ -511,6 +525,10 @@ import { Context } from "./Combobox.context";
511
525
  }
512
526
  }
513
527
  setChecked(checkedCopy);
528
+ if (!multiple && textValue === value && valueToItemMap.has(value)) {
529
+ var _valueToItemMap_get;
530
+ setTextValue(((_valueToItemMap_get = valueToItemMap.get(value)) === null || _valueToItemMap_get === void 0 ? void 0 : _valueToItemMap_get.label) || '');
531
+ }
514
532
  // В deps мы кладем именно outerValue и internalValue, а не просто value.
515
533
  // Т.к. вначале нужно отфильтровать и провалидировать outerValue и результат положить в переменную.
516
534
  // А переменную, содержащую сложные типы данных, нельзя помещать в deps.
@@ -520,8 +538,9 @@ import { Context } from "./Combobox.context";
520
538
  items
521
539
  ]);
522
540
  // При изменении value нужно возвращать значение в инпуте к исходному.
523
- useDidMountLayoutEffect(function() {
524
- setTextValue(getTextValue(multiple, value, valueToItemMap, renderValue));
541
+ useLayoutEffect(function() {
542
+ var _valueToItemMap_get;
543
+ 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()) || '');
525
544
  }, [
526
545
  outerValue,
527
546
  internalValue
@@ -628,6 +647,7 @@ import { Context } from "./Combobox.context";
628
647
  readOnly: readOnly,
629
648
  name: name
630
649
  }, /*#__PURE__*/ React.createElement(ListWrapper, {
650
+ ref: listWrapperRef,
631
651
  listWidth: listWidth
632
652
  }, /*#__PURE__*/ React.createElement(Ul, {
633
653
  role: "tree",
@@ -636,7 +656,6 @@ import { Context } from "./Combobox.context";
636
656
  listMaxHeight: listMaxHeight || listHeight,
637
657
  ref: targetRef,
638
658
  virtual: virtual,
639
- listOverflow: listOverflow,
640
659
  onScroll: virtual ? undefined : onScroll
641
660
  }, beforeList, isEmpty(filteredItems) ? /*#__PURE__*/ React.createElement(StyledEmptyState, {
642
661
  className: classes.emptyStateWrapper,
@@ -658,7 +677,8 @@ import { Context } from "./Combobox.context";
658
677
  path: path,
659
678
  dispatchPath: dispatchPath,
660
679
  index: index,
661
- listWidth: listWidth
680
+ listWidth: listWidth,
681
+ portal: listWrapperRef
662
682
  });
663
683
  })), afterList)))))));
664
684
  });