@salutejs/plasma-new-hope 0.335.0-canary.2197.17377664818.0 → 0.335.0-canary.2199.17384366399.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 (216) hide show
  1. package/cjs/components/Autocomplete/Autocomplete.js +5 -7
  2. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  3. package/cjs/components/Autocomplete/FloatingPopover.js +5 -4
  4. package/cjs/components/Autocomplete/FloatingPopover.js.map +1 -1
  5. package/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +43 -13
  6. package/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js.map +1 -1
  7. package/cjs/components/Carousel/CarouselNew/Carousel.js +4 -3
  8. package/cjs/components/Carousel/CarouselNew/Carousel.js.map +1 -1
  9. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  10. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js.map +1 -1
  11. package/cjs/components/Combobox/ComboboxNew/Combobox.js +18 -34
  12. package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  13. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +3 -2
  14. package/cjs/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  15. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +5 -11
  16. package/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  17. package/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +43 -13
  18. package/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js.map +1 -1
  19. package/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +24 -0
  20. package/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js.map +1 -0
  21. package/cjs/components/DatePicker/RangeDate/RangeDate.js +3 -1
  22. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  23. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -2
  24. package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  25. package/cjs/components/DatePicker/SingleDate/SingleDate.js +4 -2
  26. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  27. package/cjs/components/Popup/ClientOnlyPortal.js +15 -2
  28. package/cjs/components/Popup/ClientOnlyPortal.js.map +1 -1
  29. package/cjs/components/Popup/PopupContext.js +26 -5
  30. package/cjs/components/Popup/PopupContext.js.map +1 -1
  31. package/cjs/components/Select/Select.js +3 -4
  32. package/cjs/components/Select/Select.js.map +1 -1
  33. package/cjs/components/Select/Select.styles.js +3 -2
  34. package/cjs/components/Select/Select.styles.js.map +1 -1
  35. package/cjs/components/Select/ui/Inner/Inner.js +5 -11
  36. package/cjs/components/Select/ui/Inner/Inner.js.map +1 -1
  37. package/cjs/components/Select/ui/VirtualList/VirtualList.js +43 -13
  38. package/cjs/components/Select/ui/VirtualList/VirtualList.js.map +1 -1
  39. package/emotion/cjs/components/Autocomplete/Autocomplete.js +4 -9
  40. package/emotion/cjs/components/Autocomplete/FloatingPopover.js +31 -4
  41. package/emotion/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +84 -16
  42. package/emotion/cjs/components/Carousel/CarouselNew/Carousel.js +2 -2
  43. package/emotion/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  44. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +28 -48
  45. package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +15 -15
  46. package/emotion/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +9 -50
  47. package/emotion/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +84 -16
  48. package/emotion/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +25 -0
  49. package/emotion/cjs/components/Combobox/ComboboxNew/utils/index.js +4 -0
  50. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +3 -1
  51. package/emotion/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  52. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +4 -2
  53. package/emotion/cjs/components/Popup/ClientOnlyPortal.js +14 -2
  54. package/emotion/cjs/components/Popup/PopupContext.js +25 -6
  55. package/emotion/cjs/components/Select/Select.js +2 -4
  56. package/emotion/cjs/components/Select/Select.styles.js +7 -7
  57. package/emotion/cjs/components/Select/ui/Inner/Inner.js +9 -50
  58. package/emotion/cjs/components/Select/ui/VirtualList/VirtualList.js +84 -16
  59. package/emotion/cjs/examples/components/Combobox/Combobox.js +0 -15
  60. package/emotion/es/components/Autocomplete/Autocomplete.js +5 -10
  61. package/emotion/es/components/Autocomplete/FloatingPopover.js +31 -4
  62. package/emotion/es/components/Autocomplete/ui/VirtualList/VirtualList.js +45 -13
  63. package/emotion/es/components/Carousel/CarouselNew/Carousel.js +2 -2
  64. package/emotion/es/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  65. package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +14 -34
  66. package/emotion/es/components/Combobox/ComboboxNew/Combobox.styles.js +15 -15
  67. package/emotion/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +6 -11
  68. package/emotion/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +45 -13
  69. package/emotion/es/components/Combobox/ComboboxNew/utils/getTextValue.js +16 -0
  70. package/emotion/es/components/Combobox/ComboboxNew/utils/index.js +1 -0
  71. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +3 -1
  72. package/emotion/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  73. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +4 -2
  74. package/emotion/es/components/Popup/ClientOnlyPortal.js +14 -2
  75. package/emotion/es/components/Popup/PopupContext.js +25 -6
  76. package/emotion/es/components/Select/Select.js +2 -4
  77. package/emotion/es/components/Select/Select.styles.js +7 -7
  78. package/emotion/es/components/Select/ui/Inner/Inner.js +6 -11
  79. package/emotion/es/components/Select/ui/VirtualList/VirtualList.js +45 -13
  80. package/emotion/es/examples/components/Combobox/Combobox.js +7 -0
  81. package/es/components/Autocomplete/Autocomplete.js +6 -8
  82. package/es/components/Autocomplete/Autocomplete.js.map +1 -1
  83. package/es/components/Autocomplete/FloatingPopover.js +6 -5
  84. package/es/components/Autocomplete/FloatingPopover.js.map +1 -1
  85. package/es/components/Autocomplete/ui/VirtualList/VirtualList.js +44 -13
  86. package/es/components/Autocomplete/ui/VirtualList/VirtualList.js.map +1 -1
  87. package/es/components/Carousel/CarouselNew/Carousel.js +5 -4
  88. package/es/components/Carousel/CarouselNew/Carousel.js.map +1 -1
  89. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  90. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js.map +1 -1
  91. package/es/components/Combobox/ComboboxNew/Combobox.js +18 -34
  92. package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
  93. package/es/components/Combobox/ComboboxNew/Combobox.styles.js +3 -2
  94. package/es/components/Combobox/ComboboxNew/Combobox.styles.js.map +1 -1
  95. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +6 -12
  96. package/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js.map +1 -1
  97. package/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +44 -13
  98. package/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js.map +1 -1
  99. package/es/components/Combobox/ComboboxNew/utils/getTextValue.js +20 -0
  100. package/es/components/Combobox/ComboboxNew/utils/getTextValue.js.map +1 -0
  101. package/es/components/DatePicker/RangeDate/RangeDate.js +3 -1
  102. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  103. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -2
  104. package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js.map +1 -1
  105. package/es/components/DatePicker/SingleDate/SingleDate.js +4 -2
  106. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  107. package/es/components/Popup/ClientOnlyPortal.js +15 -2
  108. package/es/components/Popup/ClientOnlyPortal.js.map +1 -1
  109. package/es/components/Popup/PopupContext.js +26 -5
  110. package/es/components/Popup/PopupContext.js.map +1 -1
  111. package/es/components/Select/Select.js +3 -4
  112. package/es/components/Select/Select.js.map +1 -1
  113. package/es/components/Select/Select.styles.js +3 -2
  114. package/es/components/Select/Select.styles.js.map +1 -1
  115. package/es/components/Select/ui/Inner/Inner.js +6 -12
  116. package/es/components/Select/ui/Inner/Inner.js.map +1 -1
  117. package/es/components/Select/ui/VirtualList/VirtualList.js +44 -13
  118. package/es/components/Select/ui/VirtualList/VirtualList.js.map +1 -1
  119. package/package.json +4 -5
  120. package/styled-components/cjs/components/Autocomplete/Autocomplete.js +4 -9
  121. package/styled-components/cjs/components/Autocomplete/FloatingPopover.js +31 -4
  122. package/styled-components/cjs/components/Autocomplete/ui/VirtualList/VirtualList.js +84 -16
  123. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.js +2 -2
  124. package/styled-components/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  125. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +28 -48
  126. package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.styles.js +8 -8
  127. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/Inner/Inner.js +9 -50
  128. package/styled-components/cjs/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +84 -16
  129. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/getTextValue.js +25 -0
  130. package/styled-components/cjs/components/Combobox/ComboboxNew/utils/index.js +4 -0
  131. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +3 -1
  132. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  133. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +4 -2
  134. package/styled-components/cjs/components/Popup/ClientOnlyPortal.js +14 -2
  135. package/styled-components/cjs/components/Popup/PopupContext.js +25 -6
  136. package/styled-components/cjs/components/Select/Select.js +2 -4
  137. package/styled-components/cjs/components/Select/Select.styles.js +4 -4
  138. package/styled-components/cjs/components/Select/ui/Inner/Inner.js +9 -50
  139. package/styled-components/cjs/components/Select/ui/VirtualList/VirtualList.js +84 -16
  140. package/styled-components/es/components/Autocomplete/Autocomplete.js +5 -10
  141. package/styled-components/es/components/Autocomplete/FloatingPopover.js +31 -4
  142. package/styled-components/es/components/Autocomplete/ui/VirtualList/VirtualList.js +45 -13
  143. package/styled-components/es/components/Carousel/CarouselNew/Carousel.js +2 -2
  144. package/styled-components/es/components/Carousel/CarouselNew/hooks/useCarousel.js +6 -1
  145. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +14 -34
  146. package/styled-components/es/components/Combobox/ComboboxNew/Combobox.styles.js +8 -8
  147. package/styled-components/es/components/Combobox/ComboboxNew/ui/Inner/Inner.js +6 -11
  148. package/styled-components/es/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.js +45 -13
  149. package/styled-components/es/components/Combobox/ComboboxNew/utils/getTextValue.js +16 -0
  150. package/styled-components/es/components/Combobox/ComboboxNew/utils/index.js +1 -0
  151. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +3 -1
  152. package/styled-components/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.js +5 -3
  153. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +4 -2
  154. package/styled-components/es/components/Popup/ClientOnlyPortal.js +14 -2
  155. package/styled-components/es/components/Popup/PopupContext.js +25 -6
  156. package/styled-components/es/components/Select/Select.js +2 -4
  157. package/styled-components/es/components/Select/Select.styles.js +4 -4
  158. package/styled-components/es/components/Select/ui/Inner/Inner.js +6 -11
  159. package/styled-components/es/components/Select/ui/VirtualList/VirtualList.js +45 -13
  160. package/types/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  161. package/types/components/Autocomplete/Autocomplete.types.d.ts +23 -17
  162. package/types/components/Autocomplete/Autocomplete.types.d.ts.map +1 -1
  163. package/types/components/Autocomplete/ui/VirtualList/VirtualList.d.ts +1 -1
  164. package/types/components/Autocomplete/ui/VirtualList/VirtualList.d.ts.map +1 -1
  165. package/types/components/Carousel/CarouselNew/Carousel.d.ts.map +1 -1
  166. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts +5 -0
  167. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts.map +1 -1
  168. package/types/components/Carousel/CarouselNew/hooks/useCarousel.d.ts.map +1 -1
  169. package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
  170. package/types/components/Combobox/ComboboxNew/Combobox.styles.d.ts +1 -0
  171. package/types/components/Combobox/ComboboxNew/Combobox.styles.d.ts.map +1 -1
  172. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +7 -7
  173. package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
  174. package/types/components/Combobox/ComboboxNew/ui/Inner/Inner.d.ts.map +1 -1
  175. package/types/components/Combobox/ComboboxNew/ui/Inner/Inner.type.d.ts +1 -2
  176. package/types/components/Combobox/ComboboxNew/ui/Inner/Inner.type.d.ts.map +1 -1
  177. package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.types.d.ts +2 -6
  178. package/types/components/Combobox/ComboboxNew/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
  179. package/types/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.d.ts +1 -1
  180. package/types/components/Combobox/ComboboxNew/ui/VirtualList/VirtualList.d.ts.map +1 -1
  181. package/types/components/Combobox/ComboboxNew/utils/getTextValue.d.ts +4 -0
  182. package/types/components/Combobox/ComboboxNew/utils/getTextValue.d.ts.map +1 -0
  183. package/types/components/Combobox/ComboboxNew/utils/index.d.ts +1 -0
  184. package/types/components/Combobox/ComboboxNew/utils/index.d.ts.map +1 -1
  185. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  186. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts +1 -1
  187. package/types/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.d.ts.map +1 -1
  188. package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
  189. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +4 -0
  190. package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
  191. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts +18 -18
  192. package/types/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.styles.d.ts.map +1 -1
  193. package/types/components/Popup/ClientOnlyPortal.d.ts +1 -0
  194. package/types/components/Popup/ClientOnlyPortal.d.ts.map +1 -1
  195. package/types/components/Popup/PopupContext.d.ts +5 -1
  196. package/types/components/Popup/PopupContext.d.ts.map +1 -1
  197. package/types/components/Select/Select.d.ts.map +1 -1
  198. package/types/components/Select/Select.styles.d.ts +1 -0
  199. package/types/components/Select/Select.styles.d.ts.map +1 -1
  200. package/types/components/Select/Select.types.d.ts +14 -14
  201. package/types/components/Select/Select.types.d.ts.map +1 -1
  202. package/types/components/Select/ui/Inner/Inner.d.ts.map +1 -1
  203. package/types/components/Select/ui/Inner/Inner.type.d.ts +1 -2
  204. package/types/components/Select/ui/Inner/Inner.type.d.ts.map +1 -1
  205. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts +3 -11
  206. package/types/components/Select/ui/Inner/ui/Item/Item.types.d.ts.map +1 -1
  207. package/types/components/Select/ui/VirtualList/VirtualList.d.ts +1 -1
  208. package/types/components/Select/ui/VirtualList/VirtualList.d.ts.map +1 -1
  209. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts +18 -18
  210. package/types/components/Table/ui/HeadCell/ui/Filter/Filter.styles.d.ts.map +1 -1
  211. package/types/examples/components/Autocomplete/Autocomplete.d.ts +48 -40
  212. package/types/examples/components/Autocomplete/Autocomplete.d.ts.map +1 -1
  213. package/types/examples/components/Combobox/Combobox.d.ts +48 -48
  214. package/types/examples/components/Combobox/Combobox.d.ts.map +1 -1
  215. package/types/examples/components/Select/Select.d.ts +18 -18
  216. package/types/examples/components/Select/Select.d.ts.map +1 -1
@@ -1,4 +1,4 @@
1
- import React, { useRef } from 'react';
1
+ import React from 'react';
2
2
  import { ListWrapper, Ul } from '../../Select.styles.js';
3
3
  import { FloatingPopover } from '../../FloatingPopover.js';
4
4
  import { Item } from './ui/Item/Item.js';
@@ -11,8 +11,7 @@ var Inner = function Inner(_ref) {
11
11
  path = _ref.path,
12
12
  dispatchPath = _ref.dispatchPath,
13
13
  index = _ref.index,
14
- listWidth = _ref.listWidth,
15
- portal = _ref.portal;
14
+ listWidth = _ref.listWidth;
16
15
  var handleToggle = function handleToggle(opened) {
17
16
  if (opened) {
18
17
  dispatchPath({
@@ -27,7 +26,6 @@ var Inner = function Inner(_ref) {
27
26
  });
28
27
  }
29
28
  };
30
- var listWrapperRef = useRef(null);
31
29
  var isCurrentListOpen = path[currentLevel + 1] === item.value.toString();
32
30
  var treeId = safeUseId();
33
31
  var listId = "".concat(treeId, "_tree_level_").concat(currentLevel + 2);
@@ -48,16 +46,13 @@ var Inner = function Inner(_ref) {
48
46
  ariaLevel: nextLevel,
49
47
  ariaLabel: item.label
50
48
  }),
51
- isInner: true,
52
- portal: portal
49
+ isInner: true
53
50
  }, /*#__PURE__*/React.createElement(ListWrapper, {
54
- listWidth: listWidth,
55
- ref: listWrapperRef
51
+ listWidth: listWidth
56
52
  }, /*#__PURE__*/React.createElement(Ul, {
57
53
  role: "group",
58
54
  id: listId,
59
- virtual: false,
60
- listMaxHeight: item === null || item === void 0 ? void 0 : item.listMaxHeight
55
+ virtual: false
61
56
  }, (_item$items = item.items) === null || _item$items === void 0 ? void 0 : _item$items.map(function (innerItem, innerIndex) {
62
57
  return /*#__PURE__*/React.createElement(Inner, {
63
58
  key: "".concat(innerIndex, "/").concat(currentLevel),
@@ -66,8 +61,7 @@ var Inner = function Inner(_ref) {
66
61
  path: path,
67
62
  dispatchPath: dispatchPath,
68
63
  index: innerIndex,
69
- listWidth: listWidth,
70
- portal: listWrapperRef
64
+ listWidth: listWidth
71
65
  });
72
66
  }))));
73
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Inner.js","sources":["../../../../../src/components/Select/ui/Inner/Inner.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport type { FC } from 'react';\nimport { isEmpty, safeUseId } from 'src/utils';\n\nimport { Ul, ListWrapper } from '../../Select.styles';\nimport { FloatingPopover } from '../../FloatingPopover';\n\nimport type { MergedDropdownNodeTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui/Item/Item';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth, portal }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const listWrapperRef = useRef<HTMLDivElement>(null);\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement={item?.placement || 'right'}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n target={\n <Item\n item={item}\n path={path}\n currentLevel={currentLevel}\n index={index}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n isInner\n portal={portal}\n >\n <ListWrapper listWidth={listWidth} ref={listWrapperRef}>\n <Ul role=\"group\" id={listId} virtual={false} listMaxHeight={item?.listMaxHeight}>\n {item.items?.map((innerItem: MergedDropdownNodeTransformed, innerIndex: number) => (\n <Inner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n listWidth={listWidth}\n portal={listWrapperRef}\n />\n ))}\n </Ul>\n </ListWrapper>\n </FloatingPopover>\n );\n }\n\n return <Item item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n"],"names":["Inner","_ref","item","currentLevel","path","dispatchPath","index","listWidth","portal","handleToggle","opened","type","value","toString","level","listWrapperRef","useRef","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","isEmpty","items","_item$items","React","createElement","FloatingPopover","placement","onToggle","target","Item","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","isInner","ListWrapper","ref","Ul","role","id","virtual","listMaxHeight","map","innerItem","innerIndex","key"],"mappings":"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"}
1
+ {"version":3,"file":"Inner.js","sources":["../../../../../src/components/Select/ui/Inner/Inner.tsx"],"sourcesContent":["import React from 'react';\nimport type { FC } from 'react';\nimport { isEmpty, safeUseId } from 'src/utils';\n\nimport { Ul, ListWrapper } from '../../Select.styles';\nimport { FloatingPopover } from '../../FloatingPopover';\n\nimport type { MergedDropdownNodeTransformed } from './ui/Item/Item.types';\nimport { Item } from './ui/Item/Item';\nimport { InnerProps } from './Inner.type';\n\nexport const Inner: FC<InnerProps> = ({ item, currentLevel, path, dispatchPath, index, listWidth }) => {\n const handleToggle = (opened: boolean): void => {\n if (opened) {\n dispatchPath({ type: 'changed_on_level', value: item.value.toString(), level: currentLevel + 1 });\n } else {\n dispatchPath({ type: 'cut_by_level', level: currentLevel + 1 });\n }\n };\n\n const isCurrentListOpen = path[currentLevel + 1] === item.value.toString();\n\n const treeId = safeUseId();\n const listId = `${treeId}_tree_level_${currentLevel + 2}`;\n const nextLevel = currentLevel + 1;\n\n if (!isEmpty(item?.items)) {\n return (\n <FloatingPopover\n placement={item?.placement || 'right'}\n opened={isCurrentListOpen}\n onToggle={handleToggle}\n target={\n <Item\n item={item}\n path={path}\n currentLevel={currentLevel}\n index={index}\n ariaControls={listId}\n ariaExpanded={isCurrentListOpen}\n ariaLevel={nextLevel}\n ariaLabel={item.label}\n />\n }\n isInner\n >\n <ListWrapper listWidth={listWidth}>\n <Ul role=\"group\" id={listId} virtual={false}>\n {item.items?.map((innerItem: MergedDropdownNodeTransformed, innerIndex: number) => (\n <Inner\n key={`${innerIndex}/${currentLevel}`}\n item={innerItem}\n currentLevel={nextLevel}\n path={path}\n dispatchPath={dispatchPath}\n index={innerIndex}\n listWidth={listWidth}\n />\n ))}\n </Ul>\n </ListWrapper>\n </FloatingPopover>\n );\n }\n\n return <Item item={item} path={path} index={index} currentLevel={currentLevel} ariaLevel={nextLevel} />;\n};\n"],"names":["Inner","_ref","item","currentLevel","path","dispatchPath","index","listWidth","handleToggle","opened","type","value","toString","level","isCurrentListOpen","treeId","safeUseId","listId","concat","nextLevel","isEmpty","items","_item$items","React","createElement","FloatingPopover","placement","onToggle","target","Item","ariaControls","ariaExpanded","ariaLevel","ariaLabel","label","isInner","ListWrapper","Ul","role","id","virtual","map","innerItem","innerIndex","key"],"mappings":"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"}
@@ -1,28 +1,59 @@
1
- import React from 'react';
2
- import List from 'rc-virtual-list';
1
+ import React, { useRef } from 'react';
2
+ import { useVirtualizer } from '@tanstack/react-virtual';
3
3
  import { getHeightAsNumber } from '../../../../utils/getHeightAsNumber.js';
4
4
  import { Item } from '../Inner/ui/Item/Item.js';
5
5
 
6
6
  var VirtualList = function VirtualList(_ref) {
7
+ var _virtualItems$0$start, _virtualItems$;
7
8
  var items = _ref.items,
8
9
  listMaxHeight = _ref.listMaxHeight,
9
10
  onScroll = _ref.onScroll;
10
- return /*#__PURE__*/React.createElement(List, {
11
- data: items,
12
- height: getHeightAsNumber(listMaxHeight),
13
- fullHeight: false,
14
- itemHeight: 100,
15
- itemKey: "id",
11
+ var parentRef = useRef(null);
12
+ var virtualizer = useVirtualizer({
13
+ count: items.length,
14
+ getScrollElement: function getScrollElement() {
15
+ return parentRef.current;
16
+ },
17
+ estimateSize: function estimateSize() {
18
+ return 48;
19
+ }
20
+ });
21
+ var virtualItems = virtualizer.getVirtualItems();
22
+ return /*#__PURE__*/React.createElement("div", {
23
+ ref: parentRef,
24
+ style: {
25
+ height: 'auto',
26
+ maxHeight: getHeightAsNumber(listMaxHeight),
27
+ overflowY: 'auto'
28
+ },
16
29
  onScroll: onScroll
17
- }, function (item, index, props) {
18
- return /*#__PURE__*/React.createElement("div", props, /*#__PURE__*/React.createElement(Item, {
19
- item: item,
30
+ }, /*#__PURE__*/React.createElement("div", {
31
+ style: {
32
+ height: virtualizer.getTotalSize(),
33
+ width: '100%',
34
+ position: 'relative'
35
+ }
36
+ }, /*#__PURE__*/React.createElement("div", {
37
+ style: {
38
+ position: 'absolute',
39
+ top: 0,
40
+ left: 0,
41
+ width: '100%',
42
+ transform: "translateY(".concat((_virtualItems$0$start = (_virtualItems$ = virtualItems[0]) === null || _virtualItems$ === void 0 ? void 0 : _virtualItems$.start) !== null && _virtualItems$0$start !== void 0 ? _virtualItems$0$start : 0, "px)")
43
+ }
44
+ }, virtualItems.map(function (virtualRow) {
45
+ return /*#__PURE__*/React.createElement("div", {
46
+ key: virtualRow.key,
47
+ "data-index": virtualRow.index,
48
+ ref: virtualizer.measureElement
49
+ }, /*#__PURE__*/React.createElement(Item, {
50
+ item: items[virtualRow.index],
20
51
  path: ['root'],
21
52
  currentLevel: 0,
22
- index: index,
53
+ index: virtualRow.index,
23
54
  ariaLevel: 1
24
55
  }));
25
- });
56
+ }))));
26
57
  };
27
58
 
28
59
  export { VirtualList };
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualList.js","sources":["../../../../../src/components/Select/ui/VirtualList/VirtualList.tsx"],"sourcesContent":["import React, { CSSProperties } from 'react';\nimport List from 'rc-virtual-list';\nimport { getHeightAsNumber } from 'src/utils';\n\nimport type { MergedDropdownNodeTransformed } from '../Inner/ui/Item/Item.types';\nimport { Item } from '../Inner/ui';\n\ninterface Props {\n items: MergedDropdownNodeTransformed[];\n listMaxHeight?: CSSProperties['height'];\n onScroll?: (e: React.UIEvent<HTMLUListElement>) => void;\n}\n\nexport const VirtualList: React.FC<Props> = ({ items, listMaxHeight, onScroll }) => (\n <List\n data={items}\n height={getHeightAsNumber(listMaxHeight)}\n fullHeight={false}\n itemHeight={100}\n itemKey=\"id\"\n onScroll={onScroll}\n >\n {(item, index, props) => (\n <div {...props}>\n <Item item={item} path={['root']} currentLevel={0} index={index} ariaLevel={1} />\n </div>\n )}\n </List>\n);\n"],"names":["VirtualList","_ref","items","listMaxHeight","onScroll","React","createElement","List","data","height","getHeightAsNumber","fullHeight","itemHeight","itemKey","item","index","props","Item","path","currentLevel","ariaLevel"],"mappings":";;;;;IAaaA,WAA4B,GAAG,SAA/BA,WAA4BA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,aAAa,GAAAF,IAAA,CAAbE,aAAa;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ,CAAA;AAAA,EAAA,oBACzEC,KAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AACDC,IAAAA,IAAI,EAAEN,KAAM;AACZO,IAAAA,MAAM,EAAEC,iBAAiB,CAACP,aAAa,CAAE;AACzCQ,IAAAA,UAAU,EAAE,KAAM;AAClBC,IAAAA,UAAU,EAAE,GAAI;AAChBC,IAAAA,OAAO,EAAC,IAAI;AACZT,IAAAA,QAAQ,EAAEA,QAAAA;AAAS,GAAA,EAElB,UAACU,IAAI,EAAEC,KAAK,EAAEC,KAAK,EAAA;IAAA,oBAChBX,KAAA,CAAAC,aAAA,CAASU,KAAAA,EAAAA,KAAK,eACVX,KAAA,CAAAC,aAAA,CAACW,IAAI,EAAA;AAACH,MAAAA,IAAI,EAAEA,IAAK;MAACI,IAAI,EAAE,CAAC,MAAM,CAAE;AAACC,MAAAA,YAAY,EAAE,CAAE;AAACJ,MAAAA,KAAK,EAAEA,KAAM;AAACK,MAAAA,SAAS,EAAE,CAAA;AAAE,KAAE,CAC/E,CAAC,CAAA;AAAA,GAER,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"VirtualList.js","sources":["../../../../../src/components/Select/ui/VirtualList/VirtualList.tsx"],"sourcesContent":["import React, { useRef, CSSProperties } from 'react';\nimport { useVirtualizer } from '@tanstack/react-virtual';\nimport { getHeightAsNumber } from 'src/utils';\n\nimport type { MergedDropdownNodeTransformed } from '../Inner/ui/Item/Item.types';\nimport { Item } from '../Inner/ui';\n\ninterface Props {\n items: MergedDropdownNodeTransformed[];\n listMaxHeight?: CSSProperties['height'];\n onScroll?: (e: React.UIEvent<HTMLElement>) => void;\n}\n\nexport const VirtualList: React.FC<Props> = ({ items, listMaxHeight, onScroll }) => {\n const parentRef = useRef<HTMLDivElement>(null);\n\n const virtualizer = useVirtualizer({\n count: items.length,\n getScrollElement: () => parentRef.current,\n estimateSize: () => 48,\n });\n\n const virtualItems = virtualizer.getVirtualItems();\n\n return (\n <div\n ref={parentRef}\n style={{\n height: 'auto',\n maxHeight: getHeightAsNumber(listMaxHeight),\n overflowY: 'auto',\n }}\n onScroll={onScroll}\n >\n <div\n style={{\n height: virtualizer.getTotalSize(),\n width: '100%',\n position: 'relative',\n }}\n >\n <div\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n transform: `translateY(${virtualItems[0]?.start ?? 0}px)`,\n }}\n >\n {virtualItems.map((virtualRow) => (\n <div\n key={virtualRow.key as React.Key}\n data-index={virtualRow.index}\n ref={virtualizer.measureElement}\n >\n <Item\n item={items[virtualRow.index]}\n path={['root']}\n currentLevel={0}\n index={virtualRow.index}\n ariaLevel={1}\n />\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n};\n"],"names":["VirtualList","_ref","_virtualItems$0$start","_virtualItems$","items","listMaxHeight","onScroll","parentRef","useRef","virtualizer","useVirtualizer","count","length","getScrollElement","current","estimateSize","virtualItems","getVirtualItems","React","createElement","ref","style","height","maxHeight","getHeightAsNumber","overflowY","getTotalSize","width","position","top","left","transform","concat","start","map","virtualRow","key","index","measureElement","Item","item","path","currentLevel","ariaLevel"],"mappings":";;;;;IAaaA,WAA4B,GAAG,SAA/BA,WAA4BA,CAAAC,IAAA,EAA2C;EAAA,IAAAC,qBAAA,EAAAC,cAAA,CAAA;AAAA,EAAA,IAArCC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IAAEC,QAAQ,GAAAL,IAAA,CAARK,QAAQ,CAAA;AACzE,EAAA,IAAMC,SAAS,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;EAE9C,IAAMC,WAAW,GAAGC,cAAc,CAAC;IAC/BC,KAAK,EAAEP,KAAK,CAACQ,MAAM;IACnBC,gBAAgB,EAAE,SAAAA,gBAAA,GAAA;MAAA,OAAMN,SAAS,CAACO,OAAO,CAAA;AAAA,KAAA;IACzCC,YAAY,EAAE,SAAAA,YAAA,GAAA;AAAA,MAAA,OAAM,EAAE,CAAA;AAAA,KAAA;AAC1B,GAAC,CAAC,CAAA;AAEF,EAAA,IAAMC,YAAY,GAAGP,WAAW,CAACQ,eAAe,EAAE,CAAA;EAElD,oBACIC,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACIC,IAAAA,GAAG,EAAEb,SAAU;AACfc,IAAAA,KAAK,EAAE;AACHC,MAAAA,MAAM,EAAE,MAAM;AACdC,MAAAA,SAAS,EAAEC,iBAAiB,CAACnB,aAAa,CAAC;AAC3CoB,MAAAA,SAAS,EAAE,MAAA;KACb;AACFnB,IAAAA,QAAQ,EAAEA,QAAAA;GAEVY,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACIE,IAAAA,KAAK,EAAE;AACHC,MAAAA,MAAM,EAAEb,WAAW,CAACiB,YAAY,EAAE;AAClCC,MAAAA,KAAK,EAAE,MAAM;AACbC,MAAAA,QAAQ,EAAE,UAAA;AACd,KAAA;GAEAV,eAAAA,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACIE,IAAAA,KAAK,EAAE;AACHO,MAAAA,QAAQ,EAAE,UAAU;AACpBC,MAAAA,GAAG,EAAE,CAAC;AACNC,MAAAA,IAAI,EAAE,CAAC;AACPH,MAAAA,KAAK,EAAE,MAAM;MACbI,SAAS,EAAA,aAAA,CAAAC,MAAA,CAAA9B,CAAAA,qBAAA,IAAAC,cAAA,GAAgBa,YAAY,CAAC,CAAC,CAAC,cAAAb,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAfA,cAAA,CAAiB8B,KAAK,cAAA/B,qBAAA,KAAA,KAAA,CAAA,GAAAA,qBAAA,GAAI,CAAC,EAAA,KAAA,CAAA;AACxD,KAAA;AAAE,GAAA,EAEDc,YAAY,CAACkB,GAAG,CAAC,UAACC,UAAU,EAAA;IAAA,oBACzBjB,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;MACIiB,GAAG,EAAED,UAAU,CAACC,GAAiB;MACjC,YAAYD,EAAAA,UAAU,CAACE,KAAM;MAC7BjB,GAAG,EAAEX,WAAW,CAAC6B,cAAAA;AAAe,KAAA,eAEhCpB,KAAA,CAAAC,aAAA,CAACoB,IAAI,EAAA;AACDC,MAAAA,IAAI,EAAEpC,KAAK,CAAC+B,UAAU,CAACE,KAAK,CAAE;MAC9BI,IAAI,EAAE,CAAC,MAAM,CAAE;AACfC,MAAAA,YAAY,EAAE,CAAE;MAChBL,KAAK,EAAEF,UAAU,CAACE,KAAM;AACxBM,MAAAA,SAAS,EAAE,CAAA;AAAE,KAChB,CACA,CAAC,CAAA;GACT,CACA,CACJ,CACJ,CAAC,CAAA;AAEd;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.335.0-canary.2197.17377664818.0",
3
+ "version": "0.335.0-canary.2199.17384366399.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -79,7 +79,7 @@
79
79
  "@rollup/plugin-babel": "^6.0.4",
80
80
  "@rollup/plugin-commonjs": "^25.0.4",
81
81
  "@rollup/plugin-node-resolve": "^15.1.0",
82
- "@salutejs/plasma-sb-utils": "0.206.0",
82
+ "@salutejs/plasma-sb-utils": "0.207.0-canary.2199.17384366399.0",
83
83
  "@salutejs/plasma-themes": "0.37.0",
84
84
  "@storybook/addon-docs": "8.6.12",
85
85
  "@storybook/addon-essentials": "8.6.12",
@@ -117,7 +117,7 @@
117
117
  "@linaria/react": "5.0.3",
118
118
  "@popperjs/core": "2.11.8",
119
119
  "@salutejs/input-core": "2.1.2",
120
- "@salutejs/plasma-core": "1.206.0",
120
+ "@salutejs/plasma-core": "1.207.0-canary.2199.17384366399.0",
121
121
  "@salutejs/react-maskinput": "3.2.6",
122
122
  "@tanstack/react-table": "8.21.2",
123
123
  "@tanstack/react-virtual": "3.13.2",
@@ -127,7 +127,6 @@
127
127
  "lodash.chunk": "4.2.0",
128
128
  "lodash.throttle": "4.1.1",
129
129
  "rc-tree": "5.11.0",
130
- "rc-virtual-list": "3.18.1",
131
130
  "re-resizable": "6.10.3",
132
131
  "react-draggable": "4.5.0",
133
132
  "react-hot-toast": "2.5.2",
@@ -138,5 +137,5 @@
138
137
  "sideEffects": [
139
138
  "*.css"
140
139
  ],
141
- "gitHead": "821811e043c8f2c43fb8a19a113390750a4eec2c"
140
+ "gitHead": "28f274b6a820cb4547b90e65574c3765a7030028"
142
141
  }
@@ -168,7 +168,7 @@ function _unsupported_iterable_to_array(o, minLen) {
168
168
  }
169
169
  var autocompleteRoot = function(Root) {
170
170
  return /*#__PURE__*/ (0, _react.forwardRef)(function(_param, ref) {
171
- var outerValue = _param.value, defaultValue = _param.defaultValue, onChange = _param.onChange, suggestions = _param.suggestions, view = _param.view, size = _param.size, labelPlacement = _param.labelPlacement, keepPlaceholder = _param.keepPlaceholder, disabled = _param.disabled, readOnly = _param.readOnly, label = _param.label, leftHelper = _param.leftHelper, contentLeft = _param.contentLeft, contentRight = _param.contentRight, textBefore = _param.textBefore, textAfter = _param.textAfter, onScroll = _param.onScroll, _param_listMaxHeight = _param.listMaxHeight, listMaxHeight = _param_listMaxHeight === void 0 ? '25rem' : _param_listMaxHeight, listWidth = _param.listWidth, portal = _param.portal, zIndex = _param.zIndex, filter = _param.filter, onSuggestionSelect = _param.onSuggestionSelect, _param_threshold = _param.threshold, threshold = _param_threshold === void 0 ? 2 : _param_threshold, renderList = _param.renderList, renderListEnd = _param.renderListEnd, renderItem = _param.renderItem, onSearch = _param.onSearch, hintText = _param.hintText, _param_hintView = _param.hintView, hintView = _param_hintView === void 0 ? 'default' : _param_hintView, _param_hintSize = _param.hintSize, hintSize = _param_hintSize === void 0 ? 'm' : _param_hintSize, beforeList = _param.beforeList, afterList = _param.afterList, _param_virtual = _param.virtual, virtual = _param_virtual === void 0 ? false : _param_virtual, // @ts-ignore
171
+ var outerValue = _param.value, defaultValue = _param.defaultValue, onChange = _param.onChange, suggestions = _param.suggestions, view = _param.view, size = _param.size, labelPlacement = _param.labelPlacement, keepPlaceholder = _param.keepPlaceholder, disabled = _param.disabled, readOnly = _param.readOnly, label = _param.label, leftHelper = _param.leftHelper, contentLeft = _param.contentLeft, contentRight = _param.contentRight, textBefore = _param.textBefore, textAfter = _param.textAfter, onScroll = _param.onScroll, _param_listMaxHeight = _param.listMaxHeight, listMaxHeight = _param_listMaxHeight === void 0 ? '25rem' : _param_listMaxHeight, listWidth = _param.listWidth, portal = _param.portal, zIndex = _param.zIndex, filter = _param.filter, onSuggestionSelect = _param.onSuggestionSelect, _param_threshold = _param.threshold, threshold = _param_threshold === void 0 ? 2 : _param_threshold, renderList = _param.renderList, renderListEnd = _param.renderListEnd, renderItem = _param.renderItem, onSearch = _param.onSearch, hintText = _param.hintText, _param_hintView = _param.hintView, hintView = _param_hintView === void 0 ? 'default' : _param_hintView, _param_hintSize = _param.hintSize, hintSize = _param_hintSize === void 0 ? 'm' : _param_hintSize, beforeList = _param.beforeList, afterList = _param.afterList, _param_virtual = _param.virtual, virtual = _param_virtual === void 0 ? false : _param_virtual, _param_flip = _param.flip, flip = _param_flip === void 0 ? false : _param_flip, // @ts-ignore
172
172
  _offset = _param._offset, rest = _object_without_properties(_param, [
173
173
  "value",
174
174
  "defaultValue",
@@ -204,10 +204,11 @@ var autocompleteRoot = function(Root) {
204
204
  "beforeList",
205
205
  "afterList",
206
206
  "virtual",
207
+ "flip",
207
208
  "_offset"
208
209
  ]);
209
210
  var _useReducer = _sliced_to_array((0, _react.useReducer)(_focusedReducer.focusedReducer, null), 2), focused = _useReducer[0], dispatchFocused = _useReducer[1];
210
- var _useState = _sliced_to_array((0, _react.useState)(''), 2), innerValue = _useState[0], setInnerValue = _useState[1];
211
+ var _useState = _sliced_to_array((0, _react.useState)(defaultValue || ''), 2), innerValue = _useState[0], setInnerValue = _useState[1];
211
212
  var _useState1 = _sliced_to_array((0, _react.useState)(false), 2), isOpen = _useState1[0], setIsOpen = _useState1[1];
212
213
  var listId = (0, _utils.safeUseId)();
213
214
  var value = outerValue !== null && outerValue !== void 0 ? outerValue : innerValue;
@@ -263,13 +264,6 @@ var autocompleteRoot = function(Root) {
263
264
  }, [
264
265
  value
265
266
  ]);
266
- (0, _react.useLayoutEffect)(function() {
267
- if (defaultValue) {
268
- setInnerValue(defaultValue);
269
- }
270
- }, [
271
- defaultValue
272
- ]);
273
267
  return /*#__PURE__*/ _react.default.createElement(Root, {
274
268
  view: view,
275
269
  size: size,
@@ -285,6 +279,7 @@ var autocompleteRoot = function(Root) {
285
279
  zIndex: zIndex,
286
280
  listWidth: listWidth,
287
281
  offset: _offset,
282
+ flip: flip,
288
283
  target: function(referenceRef) {
289
284
  return /*#__PURE__*/ _react.default.createElement(_ui.StyledTextField, _object_spread({
290
285
  ref: ref,
@@ -11,6 +11,14 @@ Object.defineProperty(exports, "FloatingPopover", {
11
11
  var _react = require("@floating-ui/react");
12
12
  var _react1 = /*#__PURE__*/ _interop_require_wildcard(require("react"));
13
13
  var _utils = require("../../utils");
14
+ function _array_like_to_array(arr, len) {
15
+ if (len == null || len > arr.length) len = arr.length;
16
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
17
+ return arr2;
18
+ }
19
+ function _array_without_holes(arr) {
20
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
21
+ }
14
22
  function _define_property(obj, key, value) {
15
23
  if (key in obj) {
16
24
  Object.defineProperty(obj, key, {
@@ -65,6 +73,12 @@ function _interop_require_wildcard(obj, nodeInterop) {
65
73
  }
66
74
  return newObj;
67
75
  }
76
+ function _iterable_to_array(iter) {
77
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
78
+ }
79
+ function _non_iterable_spread() {
80
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
81
+ }
68
82
  function _object_spread(target) {
69
83
  for(var i = 1; i < arguments.length; i++){
70
84
  var source = arguments[i] != null ? arguments[i] : {};
@@ -104,8 +118,19 @@ function _object_spread_props(target, source) {
104
118
  }
105
119
  return target;
106
120
  }
121
+ function _to_consumable_array(arr) {
122
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
123
+ }
124
+ function _unsupported_iterable_to_array(o, minLen) {
125
+ if (!o) return;
126
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
127
+ var n = Object.prototype.toString.call(o).slice(8, -1);
128
+ if (n === "Object" && o.constructor) n = o.constructor.name;
129
+ if (n === "Map" || n === "Set") return Array.from(n);
130
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
131
+ }
107
132
  var FloatingPopover = /*#__PURE__*/ (0, _react1.forwardRef)(function(param, ref) {
108
- var target = param.target, children = param.children, opened = param.opened, portal = param.portal, zIndex = param.zIndex, listWidth = param.listWidth, offset = param.offset;
133
+ var target = param.target, children = param.children, opened = param.opened, portal = param.portal, zIndex = param.zIndex, listWidth = param.listWidth, offset = param.offset, flipFlag = param.flip;
109
134
  var _useFloating = (0, _react.useFloating)({
110
135
  whileElementsMounted: function whileElementsMounted(referenceEl, floatingEl, update) {
111
136
  return (0, _react.autoUpdate)(referenceEl, floatingEl, update, {
@@ -120,10 +145,12 @@ var FloatingPopover = /*#__PURE__*/ (0, _react1.forwardRef)(function(param, ref)
120
145
  (0, _react.offset)({
121
146
  mainAxis: (offset === null || offset === void 0 ? void 0 : offset[1]) || 0,
122
147
  alignmentAxis: (offset === null || offset === void 0 ? void 0 : offset[0]) || 0
123
- }),
148
+ })
149
+ ].concat(_to_consumable_array(flipFlag ? [
124
150
  (0, _react.flip)({
125
151
  fallbackAxisSideDirection: 'end'
126
- }),
152
+ })
153
+ ] : []), [
127
154
  (0, _react.shift)(),
128
155
  (0, _react.size)({
129
156
  apply: function apply(param) {
@@ -133,7 +160,7 @@ var FloatingPopover = /*#__PURE__*/ (0, _react1.forwardRef)(function(param, ref)
133
160
  });
134
161
  }
135
162
  })
136
- ]
163
+ ])
137
164
  }), refs = _useFloating.refs, floatingStyles = _useFloating.floatingStyles;
138
165
  var wrappedId = (0, _utils.safeUseId)();
139
166
  // Проверка на target. Это может быть как ReactNode, так и функция, в которую пробрасывается ref.
@@ -8,31 +8,99 @@ 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 _SuggestionItem = require("../SuggestionItem/SuggestionItem");
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, onClick = param.onClick, listId = param.listId, listMaxHeight = param.listMaxHeight, onScroll = param.onScroll, renderItem = param.renderItem;
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(_SuggestionItem.SuggestionItem, {
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(_SuggestionItem.SuggestionItem, {
99
+ item: items[virtualRow.index],
32
100
  onClick: onClick,
33
- id: "".concat(listId, "/").concat(index),
101
+ id: "".concat(listId, "/").concat(virtualRow.index),
34
102
  focused: false,
35
103
  renderItem: renderItem
36
104
  }));
37
- });
105
+ }))));
38
106
  };
@@ -116,9 +116,9 @@ var VISIBLE_DOTS_DEFAULT = 10;
116
116
  var DOTS_CENTERED_DEFAULT = false;
117
117
  var carouselNewRoot = function(Root) {
118
118
  return /*#__PURE__*/ (0, _react.forwardRef)(function(param, ref) {
119
- 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;
120
- var _useState = _sliced_to_array((0, _react.useState)(0), 2), index = _useState[0], setIndex = _useState[1];
119
+ 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;
121
120
  var slidesAmount = _react.Children.count(children);
121
+ var _useState = _sliced_to_array((0, _react.useState)(defaultIndex && defaultIndex >= 0 ? Math.min(slidesAmount - 1, defaultIndex) : 0), 2), index = _useState[0], setIndex = _useState[1];
122
122
  var handleClickLeft = function() {
123
123
  setIndex(Math.max(0, index - 1));
124
124
  };
@@ -50,6 +50,7 @@ var useCarousel = function(param) {
50
50
  var index = param.index, scrollAlign = param.scrollAlign;
51
51
  var scrollRef = (0, _react.useRef)(null);
52
52
  var trackRef = (0, _react.useRef)(null);
53
+ var isFirstRender = (0, _react.useRef)(true);
53
54
  // Прокрутка до нужной позиции индекса, если индекс изменился.
54
55
  (0, _react.useEffect)(function() {
55
56
  if (!scrollRef.current || !trackRef.current) {
@@ -65,9 +66,13 @@ var useCarousel = function(param) {
65
66
  scrollAlign: scrollAlign
66
67
  });
67
68
  scrollRef.current.scrollTo({
68
- left: pos
69
+ left: pos,
70
+ behavior: isFirstRender.current ? 'instant' : 'smooth'
69
71
  });
70
72
  }
73
+ if (isFirstRender.current) {
74
+ isFirstRender.current = false;
75
+ }
71
76
  }, [
72
77
  index
73
78
  ]);