@wix/patterns 1.176.0 → 1.178.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 (385) hide show
  1. package/dist/cjs/components/ActionControl/ActionPopover.js +10 -8
  2. package/dist/cjs/components/ActionControl/ActionPopover.js.map +1 -1
  3. package/dist/cjs/components/ActionControl/ActionSubItemProps.js.map +1 -1
  4. package/dist/cjs/components/AppliedFiltersTagList/AppliedFiltersTagListState.js +3 -1
  5. package/dist/cjs/components/AppliedFiltersTagList/AppliedFiltersTagListState.js.map +1 -1
  6. package/dist/cjs/components/Collapse/Collapse.js +13 -5
  7. package/dist/cjs/components/Collapse/Collapse.js.map +1 -1
  8. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  9. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  10. package/dist/cjs/components/CollectionActionsBar.js +0 -1
  11. package/dist/cjs/components/CollectionActionsBar.js.map +1 -1
  12. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  13. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  14. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +3 -3
  15. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  16. package/dist/cjs/components/CollectionToolbarFilters/CollectionToolbarFiltersState.js +1 -1
  17. package/dist/cjs/components/CollectionToolbarFilters/CollectionToolbarFiltersState.js.map +1 -1
  18. package/dist/cjs/components/CollectionToolbars/ToolbarState.js +4 -4
  19. package/dist/cjs/components/CollectionToolbars/ToolbarState.js.map +1 -1
  20. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  21. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  22. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonlyState.js +1 -1
  23. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonlyState.js.map +1 -1
  24. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  25. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  26. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidget.js +1 -1
  27. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidget.js.map +1 -1
  28. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js +1 -0
  29. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js.map +1 -1
  30. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCard.js +1 -1
  31. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCard.js.map +1 -1
  32. package/dist/cjs/components/DateRangePicker/DateRangePicker.js +14 -15
  33. package/dist/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  34. package/dist/cjs/components/DragAndDrop/DragAndDrop.uni.driver.js +5 -5
  35. package/dist/cjs/components/DragAndDrop/DragAndDrop.uni.driver.js.map +1 -1
  36. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  37. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  38. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  39. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  40. package/dist/cjs/components/FormPageCard/FormPageCard.js +9 -3
  41. package/dist/cjs/components/FormPageCard/FormPageCard.js.map +1 -1
  42. package/dist/cjs/components/Grid/GridCardItem.js +4 -2
  43. package/dist/cjs/components/Grid/GridCardItem.js.map +1 -1
  44. package/dist/cjs/components/Grid/renderFolderItem.js +2 -2
  45. package/dist/cjs/components/Grid/renderFolderItem.js.map +1 -1
  46. package/dist/cjs/components/GridDragAndDropDndKit/GridDraggableCardItem.js +1 -1
  47. package/dist/cjs/components/GridDragAndDropDndKit/GridDraggableCardItem.js.map +1 -1
  48. package/dist/cjs/components/Heading/Heading.js +3 -3
  49. package/dist/cjs/components/Heading/Heading.js.map +1 -1
  50. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  51. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  52. package/dist/cjs/components/InputOverflow/InputOverflow.js +17 -19
  53. package/dist/cjs/components/InputOverflow/InputOverflow.js.map +1 -1
  54. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  55. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  56. package/dist/cjs/components/ListDragAndDrop/DraggableListItem.js +1 -1
  57. package/dist/cjs/components/ListDragAndDrop/DraggableListItem.js.map +1 -1
  58. package/dist/cjs/components/LoadingRow/AILoadingLottiePoster.js +1 -1
  59. package/dist/cjs/components/LoadingRow/AILoadingLottiePoster.js.map +1 -1
  60. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  61. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  62. package/dist/cjs/components/LoadingRow/LoadingRowState.js +1 -1
  63. package/dist/cjs/components/LoadingRow/LoadingRowState.js.map +1 -1
  64. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  65. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  66. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  67. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  68. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  69. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  70. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingColumnSelect.js +6 -3
  71. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingColumnSelect.js.map +1 -1
  72. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js +10 -8
  73. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js.map +1 -1
  74. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.js +1 -0
  75. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.js.map +1 -1
  76. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  77. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  78. package/dist/cjs/components/NestedTable/NestedTableRow.js +1 -0
  79. package/dist/cjs/components/NestedTable/NestedTableRow.js.map +1 -1
  80. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  81. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  82. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  83. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  84. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  85. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  86. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  87. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  88. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  89. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  90. package/dist/cjs/components/PickerStandaloneLayout/PickerStandaloneLayoutTitles.js +1 -1
  91. package/dist/cjs/components/PickerStandaloneLayout/PickerStandaloneLayoutTitles.js.map +1 -1
  92. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  93. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  94. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  95. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  96. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  97. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  98. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  99. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  100. package/dist/cjs/components/Table/Table.uni.driver.js +7 -6
  101. package/dist/cjs/components/Table/Table.uni.driver.js.map +1 -1
  102. package/dist/cjs/components/Table/TableBaseRow.js +2 -0
  103. package/dist/cjs/components/Table/TableBaseRow.js.map +1 -1
  104. package/dist/cjs/components/Table/useTableSyncProps.js +7 -2
  105. package/dist/cjs/components/Table/useTableSyncProps.js.map +1 -1
  106. package/dist/cjs/components/TableTopNotification/TableTopNotification.js +1 -1
  107. package/dist/cjs/components/TableTopNotification/TableTopNotification.js.map +1 -1
  108. package/dist/cjs/components/TabsFilter/TabTitle.js +1 -1
  109. package/dist/cjs/components/TabsFilter/TabTitle.js.map +1 -1
  110. package/dist/cjs/components/TabsFilter/TabsDropdown.js +1 -1
  111. package/dist/cjs/components/TabsFilter/TabsDropdown.js.map +1 -1
  112. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  113. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  114. package/dist/cjs/components/TabsFilter/TabsResponsiveState.js +1 -1
  115. package/dist/cjs/components/TabsFilter/TabsResponsiveState.js.map +1 -1
  116. package/dist/cjs/components/Tags/BulkAssignTagsPopover/EmptyState.js +41 -48
  117. package/dist/cjs/components/Tags/BulkAssignTagsPopover/EmptyState.js.map +1 -1
  118. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  119. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  120. package/dist/cjs/components/TagsFilter/tagsFilterBuilder.js +2 -0
  121. package/dist/cjs/components/TagsFilter/tagsFilterBuilder.js.map +1 -1
  122. package/dist/cjs/components/ToolbarCollectionContentAutoSizer/ToolbarCollectionContentAutoSizer.js +1 -1
  123. package/dist/cjs/components/ToolbarCollectionContentAutoSizer/ToolbarCollectionContentAutoSizer.js.map +1 -1
  124. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  125. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  126. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  127. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  128. package/dist/cjs/components/VirtualGridRepeater/TableForceRenderIndexes.js +1 -0
  129. package/dist/cjs/components/VirtualGridRepeater/TableForceRenderIndexes.js.map +1 -1
  130. package/dist/cjs/components/VirtualGridRepeater/VirtualGridRepeaterState.js +3 -1
  131. package/dist/cjs/components/VirtualGridRepeater/VirtualGridRepeaterState.js.map +1 -1
  132. package/dist/cjs/components/VirtualGridRepeater/VirtualInternalMemoItem.js +2 -2
  133. package/dist/cjs/components/VirtualGridRepeater/VirtualInternalMemoItem.js.map +1 -1
  134. package/dist/cjs/components/VirtualGridRepeater/VirtualTableRowMutated.js +1 -1
  135. package/dist/cjs/components/VirtualGridRepeater/VirtualTableRowMutated.js.map +1 -1
  136. package/dist/cjs/components/WixPatternsModalsContainer.js +2 -2
  137. package/dist/cjs/components/WixPatternsModalsContainer.js.map +1 -1
  138. package/dist/cjs/components/common.st.css.js +4 -4
  139. package/dist/cjs/components/common.st.css.js.map +1 -1
  140. package/dist/cjs/components/useCollectionReachBottom.js +1 -1
  141. package/dist/cjs/components/useCollectionReachBottom.js.map +1 -1
  142. package/dist/cjs/external-types.d.js.map +1 -1
  143. package/dist/cjs/hooks/usePickerModal/PickerModalState.js +8 -3
  144. package/dist/cjs/hooks/usePickerModal/PickerModalState.js.map +1 -1
  145. package/dist/cjs/hooks/useRafRender.js +2 -2
  146. package/dist/cjs/hooks/useRafRender.js.map +1 -1
  147. package/dist/cjs/hooks/useSyncCollectionOnEntityReturn.js +3 -3
  148. package/dist/cjs/hooks/useSyncCollectionOnEntityReturn.js.map +1 -1
  149. package/dist/cjs/hooks/useSyncTotal.js +3 -1
  150. package/dist/cjs/hooks/useSyncTotal.js.map +1 -1
  151. package/dist/cjs/state/NestedTableState/NestedCollectionFetchAllState.js +2 -1
  152. package/dist/cjs/state/NestedTableState/NestedCollectionFetchAllState.js.map +1 -1
  153. package/dist/cjs/state/RectState.js +2 -2
  154. package/dist/cjs/state/RectState.js.map +1 -1
  155. package/dist/cjs/state/Responsive/HorizontalOverflowState.js +1 -1
  156. package/dist/cjs/state/Responsive/HorizontalOverflowState.js.map +1 -1
  157. package/dist/cjs/state/Responsive/HorizontalSpaceAvailableState.js +1 -1
  158. package/dist/cjs/state/Responsive/HorizontalSpaceAvailableState.js.map +1 -1
  159. package/dist/cjs/state/TagsBulkAssignAsyncState.js +13 -14
  160. package/dist/cjs/state/TagsBulkAssignAsyncState.js.map +1 -1
  161. package/dist/cjs/state/TagsBulkAssignPopoverState.js +3 -0
  162. package/dist/cjs/state/TagsBulkAssignPopoverState.js.map +1 -1
  163. package/dist/cjs/state/TagsModalState.js +34 -17
  164. package/dist/cjs/state/TagsModalState.js.map +1 -1
  165. package/dist/cjs/state/ToolbarCollectionState.js +11 -9
  166. package/dist/cjs/state/ToolbarCollectionState.js.map +1 -1
  167. package/dist/cjs/styles.global.css +1 -1
  168. package/dist/cjs/test-utils/AsyncJobMocks.js +1 -1
  169. package/dist/cjs/test-utils/AsyncJobMocks.js.map +1 -1
  170. package/dist/cjs/test-utils/HttpErrorMocks.js +1 -1
  171. package/dist/cjs/test-utils/HttpErrorMocks.js.map +1 -1
  172. package/dist/cjs/test-utils/TagsMocks.js +28 -10
  173. package/dist/cjs/test-utils/TagsMocks.js.map +1 -1
  174. package/dist/cjs/version.js +1 -1
  175. package/dist/cjs/version.js.map +1 -1
  176. package/dist/esm/components/ActionControl/ActionPopover.js +5 -3
  177. package/dist/esm/components/ActionControl/ActionPopover.js.map +1 -1
  178. package/dist/esm/components/AppliedFiltersTagList/AppliedFiltersTagListState.js +2 -0
  179. package/dist/esm/components/AppliedFiltersTagList/AppliedFiltersTagListState.js.map +1 -1
  180. package/dist/esm/components/Collapse/Collapse.js +12 -4
  181. package/dist/esm/components/Collapse/Collapse.js.map +1 -1
  182. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  183. package/dist/esm/components/Collapse/Collapse.st.css.js.map +1 -1
  184. package/dist/esm/components/CollectionActionsBar.js +1 -1
  185. package/dist/esm/components/CollectionActionsBar.js.map +1 -1
  186. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  187. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  188. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  189. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  190. package/dist/esm/components/CollectionToolbarFilters/CollectionToolbarFiltersState.js +1 -1
  191. package/dist/esm/components/CollectionToolbarFilters/CollectionToolbarFiltersState.js.map +1 -1
  192. package/dist/esm/components/CollectionToolbars/ToolbarState.js +4 -4
  193. package/dist/esm/components/CollectionToolbars/ToolbarState.js.map +1 -1
  194. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  195. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonlyState.js +1 -1
  196. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonlyState.js.map +1 -1
  197. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  198. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidget.js +1 -1
  199. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidget.js.map +1 -1
  200. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js +1 -1
  201. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js.map +1 -1
  202. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCard.js +1 -1
  203. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCard.js.map +1 -1
  204. package/dist/esm/components/DateRangePicker/DateRangePicker.js +0 -1
  205. package/dist/esm/components/DateRangePicker/DateRangePicker.js.map +1 -1
  206. package/dist/esm/components/DragAndDrop/DragAndDrop.uni.driver.js +3 -3
  207. package/dist/esm/components/DragAndDrop/DragAndDrop.uni.driver.js.map +1 -1
  208. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  209. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  210. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  211. package/dist/esm/components/FormPageCard/FormPageCard.js +8 -2
  212. package/dist/esm/components/FormPageCard/FormPageCard.js.map +1 -1
  213. package/dist/esm/components/Grid/GridCardItem.js +3 -1
  214. package/dist/esm/components/Grid/GridCardItem.js.map +1 -1
  215. package/dist/esm/components/Grid/renderFolderItem.js +2 -2
  216. package/dist/esm/components/Grid/renderFolderItem.js.map +1 -1
  217. package/dist/esm/components/GridDragAndDropDndKit/GridDraggableCardItem.js +1 -1
  218. package/dist/esm/components/GridDragAndDropDndKit/GridDraggableCardItem.js.map +1 -1
  219. package/dist/esm/components/Heading/Heading.js +3 -3
  220. package/dist/esm/components/Heading/Heading.js.map +1 -1
  221. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  222. package/dist/esm/components/InputOverflow/InputOverflow.js +10 -14
  223. package/dist/esm/components/InputOverflow/InputOverflow.js.map +1 -1
  224. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  225. package/dist/esm/components/ListDragAndDrop/DraggableListItem.js +1 -1
  226. package/dist/esm/components/ListDragAndDrop/DraggableListItem.js.map +1 -1
  227. package/dist/esm/components/LoadingRow/AILoadingLottiePoster.js +1 -1
  228. package/dist/esm/components/LoadingRow/AILoadingLottiePoster.js.map +1 -1
  229. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  230. package/dist/esm/components/LoadingRow/LoadingRowState.js +1 -1
  231. package/dist/esm/components/LoadingRow/LoadingRowState.js.map +1 -1
  232. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  233. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  234. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  235. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  236. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  237. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingColumnSelect.js +6 -3
  238. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingColumnSelect.js.map +1 -1
  239. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js +1 -1
  240. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js.map +1 -1
  241. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.js +1 -1
  242. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.js.map +1 -1
  243. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  244. package/dist/esm/components/NestedTable/NestedTableRow.js +1 -1
  245. package/dist/esm/components/NestedTable/NestedTableRow.js.map +1 -1
  246. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  247. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  248. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  249. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  250. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  251. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  252. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  253. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  254. package/dist/esm/components/PickerStandaloneLayout/PickerStandaloneLayoutTitles.js +1 -1
  255. package/dist/esm/components/PickerStandaloneLayout/PickerStandaloneLayoutTitles.js.map +1 -1
  256. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  257. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  258. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  259. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  260. package/dist/esm/components/Table/Table.uni.driver.js +3 -2
  261. package/dist/esm/components/Table/Table.uni.driver.js.map +1 -1
  262. package/dist/esm/components/Table/TableBaseRow.js +2 -1
  263. package/dist/esm/components/Table/TableBaseRow.js.map +1 -1
  264. package/dist/esm/components/Table/useTableSyncProps.js +10 -5
  265. package/dist/esm/components/Table/useTableSyncProps.js.map +1 -1
  266. package/dist/esm/components/TableTopNotification/TableTopNotification.js +1 -1
  267. package/dist/esm/components/TableTopNotification/TableTopNotification.js.map +1 -1
  268. package/dist/esm/components/TabsFilter/TabTitle.js +2 -2
  269. package/dist/esm/components/TabsFilter/TabTitle.js.map +1 -1
  270. package/dist/esm/components/TabsFilter/TabsDropdown.js +2 -2
  271. package/dist/esm/components/TabsFilter/TabsDropdown.js.map +1 -1
  272. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  273. package/dist/esm/components/TabsFilter/TabsResponsiveState.js +1 -1
  274. package/dist/esm/components/TabsFilter/TabsResponsiveState.js.map +1 -1
  275. package/dist/esm/components/Tags/BulkAssignTagsPopover/EmptyState.js +6 -7
  276. package/dist/esm/components/Tags/BulkAssignTagsPopover/EmptyState.js.map +1 -1
  277. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  278. package/dist/esm/components/TagsFilter/tagsFilterBuilder.js +1 -1
  279. package/dist/esm/components/TagsFilter/tagsFilterBuilder.js.map +1 -1
  280. package/dist/esm/components/ToolbarCollectionContentAutoSizer/ToolbarCollectionContentAutoSizer.js +1 -1
  281. package/dist/esm/components/ToolbarCollectionContentAutoSizer/ToolbarCollectionContentAutoSizer.js.map +1 -1
  282. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  283. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  284. package/dist/esm/components/VirtualGridRepeater/TableForceRenderIndexes.js +1 -1
  285. package/dist/esm/components/VirtualGridRepeater/TableForceRenderIndexes.js.map +1 -1
  286. package/dist/esm/components/VirtualGridRepeater/VirtualGridRepeaterState.js +3 -1
  287. package/dist/esm/components/VirtualGridRepeater/VirtualGridRepeaterState.js.map +1 -1
  288. package/dist/esm/components/VirtualGridRepeater/VirtualInternalMemoItem.js +2 -2
  289. package/dist/esm/components/VirtualGridRepeater/VirtualInternalMemoItem.js.map +1 -1
  290. package/dist/esm/components/VirtualGridRepeater/VirtualTableRowMutated.js +1 -1
  291. package/dist/esm/components/VirtualGridRepeater/VirtualTableRowMutated.js.map +1 -1
  292. package/dist/esm/components/WixPatternsModalsContainer.js +2 -2
  293. package/dist/esm/components/WixPatternsModalsContainer.js.map +1 -1
  294. package/dist/esm/components/common.st.css.js +2 -2
  295. package/dist/esm/components/useCollectionReachBottom.js +1 -1
  296. package/dist/esm/components/useCollectionReachBottom.js.map +1 -1
  297. package/dist/esm/hooks/usePickerModal/PickerModalState.js +10 -3
  298. package/dist/esm/hooks/usePickerModal/PickerModalState.js.map +1 -1
  299. package/dist/esm/hooks/useRafRender.js +2 -2
  300. package/dist/esm/hooks/useRafRender.js.map +1 -1
  301. package/dist/esm/hooks/useSyncCollectionOnEntityReturn.js +3 -3
  302. package/dist/esm/hooks/useSyncCollectionOnEntityReturn.js.map +1 -1
  303. package/dist/esm/hooks/useSyncTotal.js +4 -2
  304. package/dist/esm/hooks/useSyncTotal.js.map +1 -1
  305. package/dist/esm/state/NestedTableState/NestedCollectionFetchAllState.js +2 -1
  306. package/dist/esm/state/NestedTableState/NestedCollectionFetchAllState.js.map +1 -1
  307. package/dist/esm/state/RectState.js +2 -2
  308. package/dist/esm/state/RectState.js.map +1 -1
  309. package/dist/esm/state/Responsive/HorizontalOverflowState.js +1 -1
  310. package/dist/esm/state/Responsive/HorizontalOverflowState.js.map +1 -1
  311. package/dist/esm/state/Responsive/HorizontalSpaceAvailableState.js +1 -1
  312. package/dist/esm/state/Responsive/HorizontalSpaceAvailableState.js.map +1 -1
  313. package/dist/esm/state/TagsBulkAssignAsyncState.js +5 -8
  314. package/dist/esm/state/TagsBulkAssignAsyncState.js.map +1 -1
  315. package/dist/esm/state/TagsBulkAssignPopoverState.js +3 -0
  316. package/dist/esm/state/TagsBulkAssignPopoverState.js.map +1 -1
  317. package/dist/esm/state/TagsModalState.js +28 -14
  318. package/dist/esm/state/TagsModalState.js.map +1 -1
  319. package/dist/esm/state/ToolbarCollectionState.js +6 -4
  320. package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
  321. package/dist/esm/styles.global.css +1 -1
  322. package/dist/esm/test-utils/AsyncJobMocks.js +1 -1
  323. package/dist/esm/test-utils/AsyncJobMocks.js.map +1 -1
  324. package/dist/esm/test-utils/HttpErrorMocks.js +1 -1
  325. package/dist/esm/test-utils/HttpErrorMocks.js.map +1 -1
  326. package/dist/esm/test-utils/TagsMocks.js +17 -9
  327. package/dist/esm/test-utils/TagsMocks.js.map +1 -1
  328. package/dist/esm/version.js +1 -1
  329. package/dist/types/components/ActionControl/ActionPopover.d.ts.map +1 -1
  330. package/dist/types/components/ActionControl/ActionSubItemProps.d.ts +5 -0
  331. package/dist/types/components/ActionControl/ActionSubItemProps.d.ts.map +1 -1
  332. package/dist/types/components/AppliedFiltersTagList/AppliedFiltersTagListState.d.ts +1 -0
  333. package/dist/types/components/AppliedFiltersTagList/AppliedFiltersTagListState.d.ts.map +1 -1
  334. package/dist/types/components/Collapse/Collapse.d.ts.map +1 -1
  335. package/dist/types/components/Collapse/Collapse.st.css.d.ts.map +1 -1
  336. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +2 -0
  337. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts.map +1 -1
  338. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  339. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts +1 -1
  340. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts.map +1 -1
  341. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  342. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  343. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  344. package/dist/types/components/FormPageCard/FormPageCard.d.ts.map +1 -1
  345. package/dist/types/components/Grid/GridCardItem.d.ts.map +1 -1
  346. package/dist/types/components/InputOverflow/InputOverflow.d.ts +1 -3
  347. package/dist/types/components/InputOverflow/InputOverflow.d.ts.map +1 -1
  348. package/dist/types/components/LoadingRow/LoadingRowState.d.ts.map +1 -1
  349. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  350. package/dist/types/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.d.ts.map +1 -1
  351. package/dist/types/components/MultiLevelSortingPanel/MultiLevelSortingColumnSelect.d.ts.map +1 -1
  352. package/dist/types/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.d.ts.map +1 -1
  353. package/dist/types/components/NestedTable/NestedTablePlaceholderStatesRow.d.ts +3 -1
  354. package/dist/types/components/NestedTable/NestedTablePlaceholderStatesRow.d.ts.map +1 -1
  355. package/dist/types/components/NestedTable/NestedTableRow.d.ts +3 -1
  356. package/dist/types/components/NestedTable/NestedTableRow.d.ts.map +1 -1
  357. package/dist/types/components/NestedTable/NestedTableRow.st.css.d.ts.map +1 -1
  358. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  359. package/dist/types/components/PickerContent/PickerContentAdditionalStep.st.css.d.ts.map +1 -1
  360. package/dist/types/components/Table/Table.uni.driver.d.ts +22 -13
  361. package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
  362. package/dist/types/components/Table/TableBaseRow.d.ts.map +1 -1
  363. package/dist/types/components/Table/useTableSyncProps.d.ts.map +1 -1
  364. package/dist/types/components/TabsFilter/TabTitle.d.ts.map +1 -1
  365. package/dist/types/components/TabsFilter/TabsDropdown.d.ts.map +1 -1
  366. package/dist/types/components/Tags/BulkAssignTagsPopover/EmptyState.d.ts.map +1 -1
  367. package/dist/types/components/TagsFilter/tagsFilterBuilder.d.ts.map +1 -1
  368. package/dist/types/components/VirtualGridRepeater/TableForceRenderIndexes.d.ts.map +1 -1
  369. package/dist/types/components/VirtualGridRepeater/VirtualGridRepeaterState.d.ts.map +1 -1
  370. package/dist/types/components/useCollectionReachBottom.d.ts +1 -1
  371. package/dist/types/hooks/usePickerModal/PickerModalState.d.ts +1 -1
  372. package/dist/types/hooks/usePickerModal/PickerModalState.d.ts.map +1 -1
  373. package/dist/types/hooks/useSyncTotal.d.ts.map +1 -1
  374. package/dist/types/state/NestedTableState/NestedCollectionFetchAllState.d.ts.map +1 -1
  375. package/dist/types/state/TagsBulkAssignAsyncState.d.ts +1 -2
  376. package/dist/types/state/TagsBulkAssignAsyncState.d.ts.map +1 -1
  377. package/dist/types/state/TagsBulkAssignPopoverState.d.ts +1 -0
  378. package/dist/types/state/TagsBulkAssignPopoverState.d.ts.map +1 -1
  379. package/dist/types/state/TagsModalState.d.ts +4 -0
  380. package/dist/types/state/TagsModalState.d.ts.map +1 -1
  381. package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
  382. package/dist/types/test-utils/TagsMocks.d.ts +8 -2
  383. package/dist/types/test-utils/TagsMocks.d.ts.map +1 -1
  384. package/dist/types/version.d.ts +1 -1
  385. package/package.json +7 -5
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","VirtualGridRepeaterState","constructor","params","_defineProperty2","default","index","gridState","itemKeyRecyclerOverride","forceKey","makeObservable","calcGridProps","computed","rowCount","height","width","itemKeyRecycler","toolbar","itemsContentHeight","itemsContentWidth","itemsToRenderCount","columnCount","Math","ceil","rowIndex","columnIndex","_itemKeyRecycler","init","container","scrollableContainer","onScroll","ev","process","env","NODE_ENV","gridRef","_testScroll","scrollTopValue","state","scrollTop","scrollTo","requestAnimationFrame","action","innerElement","top","innerElementTop","getBoundingClientRect","containerTop","offsetTop","max","addEventListener","removeEventListener","exports"],"sources":["../../../../src/components/VirtualGridRepeater/VirtualGridRepeaterState.ts"],"sourcesContent":["import { action, computed, makeObservable } from 'mobx';\nimport { GridState } from './GridState';\nimport { VariableSizeGrid } from 'react-window';\nimport { CSSProperties } from 'react';\n\nexport interface ReactWindowGridRef extends VariableSizeGrid {\n readonly state: {\n readonly scrollTop: number;\n };\n _getVerticalRangeToRender(): number[];\n _getHorizontalRangeToRender(): number[];\n _getItemStyle(rowIndex: number, columnIndex: number): CSSProperties;\n _getItemStyleCache(...args: any[]): unknown;\n}\n\nexport interface VirtualGridRepeaterStateParams {\n gridState: GridState;\n}\n\nexport class VirtualGridRepeaterState {\n readonly gridState;\n\n gridRef?: ReactWindowGridRef | null;\n\n scrollHeight?: number | string | null;\n\n innerElement?: HTMLElement | null = null;\n\n constructor(params: VirtualGridRepeaterStateParams) {\n this.gridState = params.gridState;\n\n makeObservable(this, {\n calcGridProps: computed,\n rowCount: computed,\n height: computed,\n width: computed,\n itemKeyRecycler: computed,\n });\n }\n\n get height() {\n return this.gridState.toolbar.itemsContentHeight;\n }\n\n get width() {\n return this.gridState.itemsContentWidth;\n }\n\n get calcGridProps() {\n return this.gridState.calcGridProps;\n }\n\n get rowCount() {\n const {\n gridState: { itemsToRenderCount },\n calcGridProps: { columnCount },\n } = this;\n\n return Math.ceil(itemsToRenderCount / columnCount);\n }\n\n _itemKeyRecycler = (index: number) => {\n const {\n gridState: { itemKeyRecyclerOverride },\n } = this;\n\n const forceKey = itemKeyRecyclerOverride?.(index);\n\n if (forceKey != null) {\n return forceKey;\n }\n\n // https://github.com/wix-private/cairo/pull/1142\n // const [verticalStartIndex, verticalEndIndex] = this.gridRef?._getVerticalRangeToRender() ?? [];\n // const verticalCount = verticalEndIndex - verticalStartIndex + 1;\n // return index % (verticalCount * columnCount);\n\n return index;\n };\n\n get itemKeyRecycler() {\n const {\n gridState: { itemKeyRecyclerOverride },\n calcGridProps: { columnCount },\n } = this;\n\n void itemKeyRecyclerOverride;\n\n return ({\n rowIndex,\n columnIndex,\n }: {\n columnIndex: number;\n rowIndex: number;\n }) => {\n const index = rowIndex * columnCount + columnIndex;\n return this._itemKeyRecycler(index);\n };\n }\n\n init({ container: scrollableContainer }: { container?: HTMLElement | null }) {\n if (!scrollableContainer) {\n return;\n }\n\n const onScroll = (ev: Event) => {\n if (process.env.NODE_ENV === 'test') {\n if (this.gridRef == null) {\n return;\n }\n\n const { _testScroll } = (ev ?? {}) as { _testScroll?: 'top' | 'up' };\n\n let scrollTopValue =\n this.gridRef.state.scrollTop +\n this.gridState.toolbar.itemsContentHeight;\n\n if (_testScroll === 'top') {\n scrollTopValue = 0;\n }\n\n if (_testScroll === 'up') {\n scrollTopValue = -this.gridState.toolbar.itemsContentHeight;\n }\n\n this.gridRef.scrollTo({\n scrollTop: scrollTopValue,\n });\n\n return;\n }\n\n requestAnimationFrame(\n action(() => {\n if (this.gridRef == null || this.innerElement == null) {\n return;\n }\n\n const { innerElement, gridState } = this;\n const { top: innerElementTop } = innerElement.getBoundingClientRect();\n const { containerTop } = gridState.toolbar;\n\n if (containerTop == null) {\n return;\n }\n\n const offsetTop = innerElementTop - containerTop;\n\n this.gridRef.scrollTo({\n scrollTop: Math.max(-offsetTop, 0),\n });\n }),\n );\n };\n\n scrollableContainer.addEventListener('scroll', onScroll);\n\n return () => {\n scrollableContainer.removeEventListener('scroll', onScroll);\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","VirtualGridRepeaterState","constructor","params","_defineProperty2","default","index","gridState","itemKeyRecyclerOverride","forceKey","makeObservable","calcGridProps","computed","rowCount","height","width","itemKeyRecycler","toolbar","itemsContentHeight","itemsContentWidth","itemsToRenderCount","columnCount","Math","ceil","rowIndex","columnIndex","_itemKeyRecycler","init","container","scrollableContainer","animationFrameId","onScroll","ev","process","env","NODE_ENV","gridRef","_testScroll","scrollTopValue","state","scrollTop","scrollTo","window","requestAnimationFrame","action","innerElement","top","innerElementTop","getBoundingClientRect","containerTop","offsetTop","max","addEventListener","removeEventListener","cancelAnimationFrame","exports"],"sources":["../../../../src/components/VirtualGridRepeater/VirtualGridRepeaterState.ts"],"sourcesContent":["import { action, computed, makeObservable } from 'mobx';\nimport { GridState } from './GridState';\nimport { VariableSizeGrid } from 'react-window';\nimport { CSSProperties } from 'react';\n\nexport interface ReactWindowGridRef extends VariableSizeGrid {\n readonly state: {\n readonly scrollTop: number;\n };\n _getVerticalRangeToRender(): number[];\n _getHorizontalRangeToRender(): number[];\n _getItemStyle(rowIndex: number, columnIndex: number): CSSProperties;\n _getItemStyleCache(...args: any[]): unknown;\n}\n\nexport interface VirtualGridRepeaterStateParams {\n gridState: GridState;\n}\n\nexport class VirtualGridRepeaterState {\n readonly gridState;\n\n gridRef?: ReactWindowGridRef | null;\n\n scrollHeight?: number | string | null;\n\n innerElement?: HTMLElement | null = null;\n\n constructor(params: VirtualGridRepeaterStateParams) {\n this.gridState = params.gridState;\n\n makeObservable(this, {\n calcGridProps: computed,\n rowCount: computed,\n height: computed,\n width: computed,\n itemKeyRecycler: computed,\n });\n }\n\n get height() {\n return this.gridState.toolbar.itemsContentHeight;\n }\n\n get width() {\n return this.gridState.itemsContentWidth;\n }\n\n get calcGridProps() {\n return this.gridState.calcGridProps;\n }\n\n get rowCount() {\n const {\n gridState: { itemsToRenderCount },\n calcGridProps: { columnCount },\n } = this;\n\n return Math.ceil(itemsToRenderCount / columnCount);\n }\n\n _itemKeyRecycler = (index: number) => {\n const {\n gridState: { itemKeyRecyclerOverride },\n } = this;\n\n const forceKey = itemKeyRecyclerOverride?.(index);\n\n if (forceKey != null) {\n return forceKey;\n }\n\n // https://github.com/wix-private/cairo/pull/1142\n // const [verticalStartIndex, verticalEndIndex] = this.gridRef?._getVerticalRangeToRender() ?? [];\n // const verticalCount = verticalEndIndex - verticalStartIndex + 1;\n // return index % (verticalCount * columnCount);\n\n return index;\n };\n\n get itemKeyRecycler() {\n const {\n gridState: { itemKeyRecyclerOverride },\n calcGridProps: { columnCount },\n } = this;\n\n void itemKeyRecyclerOverride;\n\n return ({\n rowIndex,\n columnIndex,\n }: {\n columnIndex: number;\n rowIndex: number;\n }) => {\n const index = rowIndex * columnCount + columnIndex;\n return this._itemKeyRecycler(index);\n };\n }\n\n init({ container: scrollableContainer }: { container?: HTMLElement | null }) {\n let animationFrameId: number;\n if (!scrollableContainer) {\n return;\n }\n\n const onScroll = (ev: Event) => {\n if (process.env.NODE_ENV === 'test') {\n if (this.gridRef == null) {\n return;\n }\n\n const { _testScroll } = (ev ?? {}) as { _testScroll?: 'top' | 'up' };\n\n let scrollTopValue =\n this.gridRef.state.scrollTop +\n this.gridState.toolbar.itemsContentHeight;\n\n if (_testScroll === 'top') {\n scrollTopValue = 0;\n }\n\n if (_testScroll === 'up') {\n scrollTopValue = -this.gridState.toolbar.itemsContentHeight;\n }\n\n this.gridRef.scrollTo({\n scrollTop: scrollTopValue,\n });\n\n return;\n }\n\n animationFrameId = window.requestAnimationFrame(\n action(() => {\n if (this.gridRef == null || this.innerElement == null) {\n return;\n }\n\n const { innerElement, gridState } = this;\n const { top: innerElementTop } = innerElement.getBoundingClientRect();\n const { containerTop } = gridState.toolbar;\n\n if (containerTop == null) {\n return;\n }\n\n const offsetTop = innerElementTop - containerTop;\n\n this.gridRef.scrollTo({\n scrollTop: Math.max(-offsetTop, 0),\n });\n }),\n );\n };\n\n scrollableContainer.addEventListener('scroll', onScroll);\n\n return () => {\n scrollableContainer.removeEventListener('scroll', onScroll);\n window.cancelAnimationFrame(animationFrameId);\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -19,11 +19,11 @@ const _VirtualInternalMemoItem = ({
19
19
  (0, _react.useEffect)(() => {
20
20
  if (!ready) {
21
21
  // An optimization for rendering the item lazily when scrolling fast (this is experimental and might be changed)
22
- const requestId = requestAnimationFrame(() => {
22
+ const id = window.requestAnimationFrame(() => {
23
23
  setReady(true);
24
24
  });
25
25
  return () => {
26
- cancelAnimationFrame(requestId);
26
+ window.cancelAnimationFrame(id);
27
27
  };
28
28
  }
29
29
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_mobx","_mobxReactLite","_VirtualInternalMemoItem","index","rowIndex","columnIndex","renderItem","itemKey","state","style","timeoutProps","ready","setReady","useState","runInAction","gridState","toolbar","isScrolling","useEffect","requestId","requestAnimationFrame","cancelAnimationFrame","undefined","_itemKeyRecycler","index2d","VirtualInternalMemoItem","exports","memo","observer","a","b","in"],"sources":["../../../../src/components/VirtualGridRepeater/VirtualInternalMemoItem.tsx"],"sourcesContent":["import { CSSProperties, memo, useEffect, useState } from 'react';\nimport { RenderItem } from './RenderItem';\nimport { VirtualGridRepeaterState } from './VirtualGridRepeaterState';\nimport { TimeoutProps } from 'react-transition-group/Transition';\nimport { runInAction } from 'mobx';\nimport { observer } from 'mobx-react-lite';\n\nexport type VirtualInternalMemoItemProps = {\n index: number;\n rowIndex: number;\n columnIndex: number;\n renderItem: RenderItem;\n state: VirtualGridRepeaterState;\n itemKey: (params: {\n columnIndex: number;\n rowIndex: number;\n }) => string | number;\n style?: CSSProperties;\n} & Partial<TimeoutProps<undefined>>;\n\nconst _VirtualInternalMemoItem = ({\n index,\n rowIndex,\n columnIndex,\n renderItem,\n itemKey,\n state,\n style,\n ...timeoutProps\n}: VirtualInternalMemoItemProps) => {\n const [ready, setReady] = useState(() =>\n runInAction(() => !state.gridState.toolbar.isScrolling),\n );\n\n useEffect(() => {\n if (!ready) {\n // An optimization for rendering the item lazily when scrolling fast (this is experimental and might be changed)\n const requestId = requestAnimationFrame(() => {\n setReady(true);\n });\n\n return () => {\n cancelAnimationFrame(requestId);\n };\n }\n\n return undefined;\n }, [ready]);\n\n return renderItem(index, {\n timeoutProps,\n style,\n itemKey: state._itemKeyRecycler,\n index2d: { rowIndex, columnIndex },\n });\n};\n\nexport const VirtualInternalMemoItem = memo(\n observer(_VirtualInternalMemoItem),\n (a, b) =>\n a.index === b.index &&\n a.in === b.in &&\n a.renderItem === b.renderItem &&\n a.itemKey === b.itemKey &&\n a.style === b.style,\n);\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAeA,MAAMG,wBAAwB,GAAGA,CAAC;EAChCC,KAAK;EACLC,QAAQ;EACRC,WAAW;EACXC,UAAU;EACVC,OAAO;EACPC,KAAK;EACLC,KAAK;EACL,GAAGC;AACyB,CAAC,KAAK;EAClC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,EAAC,MACjC,IAAAC,iBAAW,EAAC,MAAM,CAACN,KAAK,CAACO,SAAS,CAACC,OAAO,CAACC,WAAW,CACxD,CAAC;EAED,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACP,KAAK,EAAE;MACV;MACA,MAAMQ,SAAS,GAAGC,qBAAqB,CAAC,MAAM;QAC5CR,QAAQ,CAAC,IAAI,CAAC;MAChB,CAAC,CAAC;MAEF,OAAO,MAAM;QACXS,oBAAoB,CAACF,SAAS,CAAC;MACjC,CAAC;IACH;IAEA,OAAOG,SAAS;EAClB,CAAC,EAAE,CAACX,KAAK,CAAC,CAAC;EAEX,OAAOL,UAAU,CAACH,KAAK,EAAE;IACvBO,YAAY;IACZD,KAAK;IACLF,OAAO,EAAEC,KAAK,CAACe,gBAAgB;IAC/BC,OAAO,EAAE;MAAEpB,QAAQ;MAAEC;IAAY;EACnC,CAAC,CAAC;AACJ,CAAC;AAEM,MAAMoB,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,gBAAG,IAAAE,WAAI,EACzC,IAAAC,uBAAQ,EAAC1B,wBAAwB,CAAC,EAClC,CAAC2B,CAAC,EAAEC,CAAC,KACHD,CAAC,CAAC1B,KAAK,KAAK2B,CAAC,CAAC3B,KAAK,IACnB0B,CAAC,CAACE,EAAE,KAAKD,CAAC,CAACC,EAAE,IACbF,CAAC,CAACvB,UAAU,KAAKwB,CAAC,CAACxB,UAAU,IAC7BuB,CAAC,CAACtB,OAAO,KAAKuB,CAAC,CAACvB,OAAO,IACvBsB,CAAC,CAACpB,KAAK,KAAKqB,CAAC,CAACrB,KAClB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_mobx","_mobxReactLite","_VirtualInternalMemoItem","index","rowIndex","columnIndex","renderItem","itemKey","state","style","timeoutProps","ready","setReady","useState","runInAction","gridState","toolbar","isScrolling","useEffect","id","window","requestAnimationFrame","cancelAnimationFrame","undefined","_itemKeyRecycler","index2d","VirtualInternalMemoItem","exports","memo","observer","a","b","in"],"sources":["../../../../src/components/VirtualGridRepeater/VirtualInternalMemoItem.tsx"],"sourcesContent":["import { CSSProperties, memo, useEffect, useState } from 'react';\nimport { RenderItem } from './RenderItem';\nimport { VirtualGridRepeaterState } from './VirtualGridRepeaterState';\nimport { TimeoutProps } from 'react-transition-group/Transition';\nimport { runInAction } from 'mobx';\nimport { observer } from 'mobx-react-lite';\n\nexport type VirtualInternalMemoItemProps = {\n index: number;\n rowIndex: number;\n columnIndex: number;\n renderItem: RenderItem;\n state: VirtualGridRepeaterState;\n itemKey: (params: {\n columnIndex: number;\n rowIndex: number;\n }) => string | number;\n style?: CSSProperties;\n} & Partial<TimeoutProps<undefined>>;\n\nconst _VirtualInternalMemoItem = ({\n index,\n rowIndex,\n columnIndex,\n renderItem,\n itemKey,\n state,\n style,\n ...timeoutProps\n}: VirtualInternalMemoItemProps) => {\n const [ready, setReady] = useState(() =>\n runInAction(() => !state.gridState.toolbar.isScrolling),\n );\n\n useEffect(() => {\n if (!ready) {\n // An optimization for rendering the item lazily when scrolling fast (this is experimental and might be changed)\n const id = window.requestAnimationFrame(() => {\n setReady(true);\n });\n\n return () => {\n window.cancelAnimationFrame(id);\n };\n }\n\n return undefined;\n }, [ready]);\n\n return renderItem(index, {\n timeoutProps,\n style,\n itemKey: state._itemKeyRecycler,\n index2d: { rowIndex, columnIndex },\n });\n};\n\nexport const VirtualInternalMemoItem = memo(\n observer(_VirtualInternalMemoItem),\n (a, b) =>\n a.index === b.index &&\n a.in === b.in &&\n a.renderItem === b.renderItem &&\n a.itemKey === b.itemKey &&\n a.style === b.style,\n);\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAeA,MAAMG,wBAAwB,GAAGA,CAAC;EAChCC,KAAK;EACLC,QAAQ;EACRC,WAAW;EACXC,UAAU;EACVC,OAAO;EACPC,KAAK;EACLC,KAAK;EACL,GAAGC;AACyB,CAAC,KAAK;EAClC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,EAAC,MACjC,IAAAC,iBAAW,EAAC,MAAM,CAACN,KAAK,CAACO,SAAS,CAACC,OAAO,CAACC,WAAW,CACxD,CAAC;EAED,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACP,KAAK,EAAE;MACV;MACA,MAAMQ,EAAE,GAAGC,MAAM,CAACC,qBAAqB,CAAC,MAAM;QAC5CT,QAAQ,CAAC,IAAI,CAAC;MAChB,CAAC,CAAC;MAEF,OAAO,MAAM;QACXQ,MAAM,CAACE,oBAAoB,CAACH,EAAE,CAAC;MACjC,CAAC;IACH;IAEA,OAAOI,SAAS;EAClB,CAAC,EAAE,CAACZ,KAAK,CAAC,CAAC;EAEX,OAAOL,UAAU,CAACH,KAAK,EAAE;IACvBO,YAAY;IACZD,KAAK;IACLF,OAAO,EAAEC,KAAK,CAACgB,gBAAgB;IAC/BC,OAAO,EAAE;MAAErB,QAAQ;MAAEC;IAAY;EACnC,CAAC,CAAC;AACJ,CAAC;AAEM,MAAMqB,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,gBAAG,IAAAE,WAAI,EACzC,IAAAC,uBAAQ,EAAC3B,wBAAwB,CAAC,EAClC,CAAC4B,CAAC,EAAEC,CAAC,KACHD,CAAC,CAAC3B,KAAK,KAAK4B,CAAC,CAAC5B,KAAK,IACnB2B,CAAC,CAACE,EAAE,KAAKD,CAAC,CAACC,EAAE,IACbF,CAAC,CAACxB,UAAU,KAAKyB,CAAC,CAACzB,UAAU,IAC7BwB,CAAC,CAACvB,OAAO,KAAKwB,CAAC,CAACxB,OAAO,IACvBuB,CAAC,CAACrB,KAAK,KAAKsB,CAAC,CAACtB,KAClB,CAAC","ignoreList":[]}
@@ -15,7 +15,7 @@ function VirtualTableRowMutated(props) {
15
15
  } = props;
16
16
  const gridState = (0, _VirtualGridStateContext.useVirtualGridStateContext)();
17
17
  const element = children[index];
18
- const rowRef = (0, _react.useRef)(null);
18
+ const rowRef = (0, _react.useRef)();
19
19
  const [state] = (0, _react.useState)(() => new _VirtualTableRowMutatedState.VirtualTableRowMutatedState({
20
20
  rowRef,
21
21
  state: gridState,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_VirtualGridStateContext","_VirtualTableRowMutatedState","VirtualTableRowMutated","props","children","index","style","itemKey","rowIndex","gridState","useVirtualGridStateContext","element","rowRef","useRef","state","useState","VirtualTableRowMutatedState","useEffect","_measureRowContentsHeight","init","ref","useCallback","el","current","cloneElement","rowProps","process","env","NODE_ENV","undefined"],"sources":["../../../../src/components/VirtualGridRepeater/VirtualTableRowMutated.tsx"],"sourcesContent":["import {\n cloneElement,\n CSSProperties,\n ReactElement,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { useVirtualGridStateContext } from './VirtualGridStateContext';\nimport { VirtualTableRowMutatedState } from './VirtualTableRowMutatedState';\n\nexport function VirtualTableRowMutated(props: {\n index: number;\n style?: CSSProperties;\n itemKey?: (index: number) => number | string;\n rowIndex?: number;\n children: ReactElement[];\n}) {\n const { children, index, style, itemKey, rowIndex } = props;\n\n const gridState = useVirtualGridStateContext();\n\n const element = children[index];\n\n const rowRef = useRef<HTMLTableRowElement | null | undefined>(null);\n\n const [state] = useState(\n () =>\n new VirtualTableRowMutatedState({\n rowRef,\n state: gridState,\n itemKey,\n index,\n rowIndex,\n }),\n );\n\n useEffect(() => {\n state.index = index;\n }, [index]);\n\n useEffect(() => {\n state.rowIndex = rowIndex;\n }, [rowIndex]);\n\n useEffect(() => {\n state.itemKey = itemKey;\n }, [itemKey]);\n\n useEffect(() => {\n state._measureRowContentsHeight();\n }, [rowRef, rowIndex]);\n\n useEffect(() => state.init(), []);\n\n const ref = useCallback((el: HTMLTableRowElement | null | undefined) => {\n rowRef.current = el;\n }, []);\n\n if (element == null) {\n return null;\n }\n\n return cloneElement(element, {\n style: { ...(element.props.style ?? {}), ...style },\n rowProps: {\n ...(element.props.rowProps ?? {}),\n 'data-key':\n process.env.NODE_ENV === 'development' ? itemKey?.(index) : undefined,\n 'data-index': `index-${index}`,\n ref,\n },\n });\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASA,IAAAC,wBAAA,GAAAD,OAAA;AACA,IAAAE,4BAAA,GAAAF,OAAA;AAEO,SAASG,sBAAsBA,CAACC,KAMtC,EAAE;EACD,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,KAAK;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAE3D,MAAMM,SAAS,GAAG,IAAAC,mDAA0B,EAAC,CAAC;EAE9C,MAAMC,OAAO,GAAGP,QAAQ,CAACC,KAAK,CAAC;EAE/B,MAAMO,MAAM,GAAG,IAAAC,aAAM,EAAyC,IAAI,CAAC;EAEnE,MAAM,CAACC,KAAK,CAAC,GAAG,IAAAC,eAAQ,EACtB,MACE,IAAIC,wDAA2B,CAAC;IAC9BJ,MAAM;IACNE,KAAK,EAAEL,SAAS;IAChBF,OAAO;IACPF,KAAK;IACLG;EACF,CAAC,CACL,CAAC;EAED,IAAAS,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACT,KAAK,GAAGA,KAAK;EACrB,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,IAAAY,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACN,QAAQ,GAAGA,QAAQ;EAC3B,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAAS,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACP,OAAO,GAAGA,OAAO;EACzB,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAAU,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACI,yBAAyB,CAAC,CAAC;EACnC,CAAC,EAAE,CAACN,MAAM,EAAEJ,QAAQ,CAAC,CAAC;EAEtB,IAAAS,gBAAS,EAAC,MAAMH,KAAK,CAACK,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC;EAEjC,MAAMC,GAAG,GAAG,IAAAC,kBAAW,EAAEC,EAA0C,IAAK;IACtEV,MAAM,CAACW,OAAO,GAAGD,EAAE;EACrB,CAAC,EAAE,EAAE,CAAC;EAEN,IAAIX,OAAO,IAAI,IAAI,EAAE;IACnB,OAAO,IAAI;EACb;EAEA,oBAAO,IAAAa,mBAAY,EAACb,OAAO,EAAE;IAC3BL,KAAK,EAAE;MAAE,IAAIK,OAAO,CAACR,KAAK,CAACG,KAAK,IAAI,CAAC,CAAC,CAAC;MAAE,GAAGA;IAAM,CAAC;IACnDmB,QAAQ,EAAE;MACR,IAAId,OAAO,CAACR,KAAK,CAACsB,QAAQ,IAAI,CAAC,CAAC,CAAC;MACjC,UAAU,EACRC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,GAAGrB,OAAO,oBAAPA,OAAO,CAAGF,KAAK,CAAC,GAAGwB,SAAS;MACvE,YAAY,EAAE,SAASxB,KAAK,EAAE;MAC9Be;IACF;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_VirtualGridStateContext","_VirtualTableRowMutatedState","VirtualTableRowMutated","props","children","index","style","itemKey","rowIndex","gridState","useVirtualGridStateContext","element","rowRef","useRef","state","useState","VirtualTableRowMutatedState","useEffect","_measureRowContentsHeight","init","ref","useCallback","el","current","cloneElement","rowProps","process","env","NODE_ENV","undefined"],"sources":["../../../../src/components/VirtualGridRepeater/VirtualTableRowMutated.tsx"],"sourcesContent":["import {\n cloneElement,\n CSSProperties,\n ReactElement,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { useVirtualGridStateContext } from './VirtualGridStateContext';\nimport { VirtualTableRowMutatedState } from './VirtualTableRowMutatedState';\n\nexport function VirtualTableRowMutated(props: {\n index: number;\n style?: CSSProperties;\n itemKey?: (index: number) => number | string;\n rowIndex?: number;\n children: ReactElement[];\n}) {\n const { children, index, style, itemKey, rowIndex } = props;\n\n const gridState = useVirtualGridStateContext();\n\n const element = children[index];\n\n const rowRef = useRef<HTMLTableRowElement>();\n\n const [state] = useState(\n () =>\n new VirtualTableRowMutatedState({\n rowRef,\n state: gridState,\n itemKey,\n index,\n rowIndex,\n }),\n );\n\n useEffect(() => {\n state.index = index;\n }, [index]);\n\n useEffect(() => {\n state.rowIndex = rowIndex;\n }, [rowIndex]);\n\n useEffect(() => {\n state.itemKey = itemKey;\n }, [itemKey]);\n\n useEffect(() => {\n state._measureRowContentsHeight();\n }, [rowRef, rowIndex]);\n\n useEffect(() => state.init(), []);\n\n const ref = useCallback((el: HTMLTableRowElement | undefined) => {\n rowRef.current = el;\n }, []);\n\n if (element == null) {\n return null;\n }\n\n return cloneElement(element, {\n style: { ...(element.props.style ?? {}), ...style },\n rowProps: {\n ...(element.props.rowProps ?? {}),\n 'data-key':\n process.env.NODE_ENV === 'development' ? itemKey?.(index) : undefined,\n 'data-index': `index-${index}`,\n ref,\n },\n });\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASA,IAAAC,wBAAA,GAAAD,OAAA;AACA,IAAAE,4BAAA,GAAAF,OAAA;AAEO,SAASG,sBAAsBA,CAACC,KAMtC,EAAE;EACD,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,KAAK;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAE3D,MAAMM,SAAS,GAAG,IAAAC,mDAA0B,EAAC,CAAC;EAE9C,MAAMC,OAAO,GAAGP,QAAQ,CAACC,KAAK,CAAC;EAE/B,MAAMO,MAAM,GAAG,IAAAC,aAAM,EAAsB,CAAC;EAE5C,MAAM,CAACC,KAAK,CAAC,GAAG,IAAAC,eAAQ,EACtB,MACE,IAAIC,wDAA2B,CAAC;IAC9BJ,MAAM;IACNE,KAAK,EAAEL,SAAS;IAChBF,OAAO;IACPF,KAAK;IACLG;EACF,CAAC,CACL,CAAC;EAED,IAAAS,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACT,KAAK,GAAGA,KAAK;EACrB,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,IAAAY,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACN,QAAQ,GAAGA,QAAQ;EAC3B,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAAS,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACP,OAAO,GAAGA,OAAO;EACzB,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAAU,gBAAS,EAAC,MAAM;IACdH,KAAK,CAACI,yBAAyB,CAAC,CAAC;EACnC,CAAC,EAAE,CAACN,MAAM,EAAEJ,QAAQ,CAAC,CAAC;EAEtB,IAAAS,gBAAS,EAAC,MAAMH,KAAK,CAACK,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC;EAEjC,MAAMC,GAAG,GAAG,IAAAC,kBAAW,EAAEC,EAAmC,IAAK;IAC/DV,MAAM,CAACW,OAAO,GAAGD,EAAE;EACrB,CAAC,EAAE,EAAE,CAAC;EAEN,IAAIX,OAAO,IAAI,IAAI,EAAE;IACnB,OAAO,IAAI;EACb;EAEA,oBAAO,IAAAa,mBAAY,EAACb,OAAO,EAAE;IAC3BL,KAAK,EAAE;MAAE,IAAIK,OAAO,CAACR,KAAK,CAACG,KAAK,IAAI,CAAC,CAAC,CAAC;MAAE,GAAGA;IAAM,CAAC;IACnDmB,QAAQ,EAAE;MACR,IAAId,OAAO,CAACR,KAAK,CAACsB,QAAQ,IAAI,CAAC,CAAC,CAAC;MACjC,UAAU,EACRC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,GAAGrB,OAAO,oBAAPA,OAAO,CAAGF,KAAK,CAAC,GAAGwB,SAAS;MACvE,YAAY,EAAE,SAASxB,KAAK,EAAE;MAC9Be;IACF;EACF,CAAC,CAAC;AACJ","ignoreList":[]}
@@ -34,14 +34,14 @@ function WixPatternsModalsContainer(props) {
34
34
  top: null
35
35
  };
36
36
  const setTop = lodash.throttle(() => {
37
- const animationFrameId = window.requestAnimationFrame(() => {
37
+ const id = window.requestAnimationFrame(() => {
38
38
  setRender({
39
39
  top: top ?? container.getBoundingClientRect().top,
40
40
  left: container.getBoundingClientRect().right,
41
41
  anchor: (anchorRef == null ? void 0 : anchorRef.current) ?? container
42
42
  });
43
43
  });
44
- disposers.push(() => window.cancelAnimationFrame(animationFrameId));
44
+ disposers.push(() => window.cancelAnimationFrame(id));
45
45
  }, 300);
46
46
  const disposers = [(0, _bexCore.addResizeObserver)(container, setTop)];
47
47
  setTop();
@@ -1 +1 @@
1
- {"version":3,"names":["_SidePanelModal","require","_react","_interopRequireWildcard","_reactDom","_react2","_bexCore","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WixPatternsModalsContainer","props","state","rootRef","anchorRef","zIndex","appendModalsToBody","lodash","useWixPatternsContainer","render","setRender","useState","useEffect","container","top","document","body","current","setTop","throttle","animationFrameId","window","requestAnimationFrame","getBoundingClientRect","left","right","anchor","disposers","push","cancelAnimationFrame","addResizeObserver","cancel","forEach","d","modalsContainerStyle","useMemo","position","child","createElement","style","__self","__source","fileName","lineNumber","columnNumber","SidePanelModal","createPortal"],"sources":["../../../src/components/WixPatternsModalsContainer.tsx"],"sourcesContent":["import { SidePanelModal } from './SidePanelModal';\nimport React, {\n CSSProperties,\n RefObject,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\nimport { addResizeObserver } from '@wix/bex-core';\nimport { SidePanelsState } from '../state/SidePanelsState';\n\nexport interface WixPatternsModalsContainerProps {\n rootRef?: RefObject<HTMLElement | null | undefined>;\n anchorRef?: RefObject<HTMLElement | null | undefined>;\n zIndex?: CSSProperties['zIndex'];\n state: SidePanelsState;\n}\n\nexport function WixPatternsModalsContainer(\n props: WixPatternsModalsContainerProps,\n) {\n const { state, rootRef, anchorRef, zIndex = 1 } = props;\n\n const { appendModalsToBody, lodash } = useWixPatternsContainer();\n\n const [render, setRender] = useState<{\n top?: number;\n left?: number;\n anchor?: HTMLElement | null;\n }>({});\n\n useEffect(() => {\n const { container, top } = appendModalsToBody\n ? {\n container: document.body,\n top: 0,\n }\n : {\n container: rootRef?.current ?? document.body,\n top: null,\n };\n\n const setTop = lodash.throttle(() => {\n const animationFrameId = window.requestAnimationFrame(() => {\n setRender({\n top: top ?? container.getBoundingClientRect().top,\n left: container.getBoundingClientRect().right,\n anchor: anchorRef?.current ?? container,\n });\n });\n\n disposers.push(() => window.cancelAnimationFrame(animationFrameId));\n }, 300);\n\n const disposers = [addResizeObserver(container, setTop)];\n\n setTop();\n\n return () => {\n setTop.cancel();\n disposers.forEach((d) => d?.());\n };\n }, []);\n\n // creates a new stacking context\n const modalsContainerStyle = useMemo(\n () => ({\n position: 'relative' as const,\n zIndex,\n }),\n [zIndex],\n );\n\n let child = (\n <div style={modalsContainerStyle} data-hook=\"cairo-modals-container\">\n {render.top != null && (\n <SidePanelModal state={state} top={render.top} left={render.left} />\n )}\n </div>\n );\n\n if (render.anchor == null) {\n return null;\n }\n\n child = createPortal(child, render.anchor);\n\n return child;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_SidePanelModal","require","_react","_interopRequireWildcard","_reactDom","_react2","_bexCore","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WixPatternsModalsContainer","props","state","rootRef","anchorRef","zIndex","appendModalsToBody","lodash","useWixPatternsContainer","render","setRender","useState","useEffect","container","top","document","body","current","setTop","throttle","id","window","requestAnimationFrame","getBoundingClientRect","left","right","anchor","disposers","push","cancelAnimationFrame","addResizeObserver","cancel","forEach","d","modalsContainerStyle","useMemo","position","child","createElement","style","__self","__source","fileName","lineNumber","columnNumber","SidePanelModal","createPortal"],"sources":["../../../src/components/WixPatternsModalsContainer.tsx"],"sourcesContent":["import { SidePanelModal } from './SidePanelModal';\nimport React, {\n CSSProperties,\n RefObject,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\nimport { addResizeObserver } from '@wix/bex-core';\nimport { SidePanelsState } from '../state/SidePanelsState';\n\nexport interface WixPatternsModalsContainerProps {\n rootRef?: RefObject<HTMLElement | null | undefined>;\n anchorRef?: RefObject<HTMLElement | null | undefined>;\n zIndex?: CSSProperties['zIndex'];\n state: SidePanelsState;\n}\n\nexport function WixPatternsModalsContainer(\n props: WixPatternsModalsContainerProps,\n) {\n const { state, rootRef, anchorRef, zIndex = 1 } = props;\n\n const { appendModalsToBody, lodash } = useWixPatternsContainer();\n\n const [render, setRender] = useState<{\n top?: number;\n left?: number;\n anchor?: HTMLElement | null;\n }>({});\n\n useEffect(() => {\n const { container, top } = appendModalsToBody\n ? {\n container: document.body,\n top: 0,\n }\n : {\n container: rootRef?.current ?? document.body,\n top: null,\n };\n\n const setTop = lodash.throttle(() => {\n const id = window.requestAnimationFrame(() => {\n setRender({\n top: top ?? container.getBoundingClientRect().top,\n left: container.getBoundingClientRect().right,\n anchor: anchorRef?.current ?? container,\n });\n });\n\n disposers.push(() => window.cancelAnimationFrame(id));\n }, 300);\n\n const disposers = [addResizeObserver(container, setTop)];\n\n setTop();\n\n return () => {\n setTop.cancel();\n disposers.forEach((d) => d?.());\n };\n }, []);\n\n // creates a new stacking context\n const modalsContainerStyle = useMemo(\n () => ({\n position: 'relative' as const,\n zIndex,\n }),\n [zIndex],\n );\n\n let child = (\n <div style={modalsContainerStyle} data-hook=\"cairo-modals-container\">\n {render.top != null && (\n <SidePanelModal state={state} top={render.top} left={render.left} />\n )}\n </div>\n );\n\n if (render.anchor == null) {\n return null;\n }\n\n child = createPortal(child, render.anchor);\n\n return child;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,16 +5,16 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
5
5
  var _stylableEsmRuntime = require("../stylable-esm-runtime.js");
6
6
  // @ts-nocheck
7
7
 
8
- var _namespace_ = "common3877067016";
8
+ var _namespace_ = "common1952285816";
9
9
  var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
10
10
  var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
11
11
  var style = exports.style = _style_;
12
12
  var st = exports.st = _style_;
13
13
  var namespace = exports.namespace = _namespace_;
14
14
  var classes = exports.classes = {
15
- "root": "common3877067016__root",
16
- "column": "common3877067016__column",
17
- "fullHeight": "common3877067016__fullHeight"
15
+ "root": "common1952285816__root",
16
+ "column": "common1952285816__column",
17
+ "fullHeight": "common1952285816__fullHeight"
18
18
  };
19
19
  var keyframes = exports.keyframes = {};
20
20
  var layers = exports.layers = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../src/components/common.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"common3877067016\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"common3877067016__root\",\"column\":\"common3877067016__column\",\"fullHeight\":\"common3877067016__fullHeight\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,kBAAkB;AACpC,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC,wBAAwB;EAAC,QAAQ,EAAC,0BAA0B;EAAC,YAAY,EAAC;AAA8B,CAAC;AAC/H,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../src/components/common.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"common1952285816\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"common1952285816__root\",\"column\":\"common1952285816__column\",\"fullHeight\":\"common1952285816__fullHeight\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,kBAAkB;AACpC,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC,wBAAwB;EAAC,QAAQ,EAAC,0BAA0B;EAAC,YAAY,EAAC;AAA8B,CAAC;AAC/H,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
@@ -10,7 +10,7 @@ function useCollectionReachBottom({
10
10
  containerRef,
11
11
  scrollMoreAlways
12
12
  }) {
13
- const targetRef = (0, _react.useRef)();
13
+ const targetRef = (0, _react.useRef)(null);
14
14
  const {
15
15
  lodash
16
16
  } = (0, _react2.useWixPatternsContainer)();
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_CollectionReachBottom","_react2","useCollectionReachBottom","collection","containerRef","scrollMoreAlways","targetRef","useRef","lodash","useWixPatternsContainer","result","keyedItems","collectionReachBottom","useState","CollectionReachBottom","useEffect","current","reachBottom","container","target","subscribe","unsubscribe","_containerRef$current","process","env","NODE_ENV","scrollHeight","triggerListenerIfReached","length"],"sources":["../../../src/components/useCollectionReachBottom.tsx"],"sourcesContent":["import { RefObject, useEffect, useRef, useState } from 'react';\nimport { CollectionReachBottom } from '../state/CollectionReachBottom';\nimport { ScrollableWindow } from '../reach-bottom-listener';\nimport { CollectionState, FiltersMap } from '@wix/bex-core';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\n\nexport interface UseCollectionReachBottomParams<\n T,\n F extends FiltersMap = FiltersMap,\n> {\n collection: CollectionState<T, F>;\n containerRef?: RefObject<ScrollableWindow | null | undefined>;\n scrollMoreAlways?: boolean;\n}\n\nexport function useCollectionReachBottom<T, F extends FiltersMap = FiltersMap>({\n collection,\n containerRef,\n scrollMoreAlways,\n}: UseCollectionReachBottomParams<T, F>) {\n const targetRef = useRef<HTMLElement | null>();\n\n const { lodash } = useWixPatternsContainer();\n\n const {\n result: { keyedItems },\n } = collection;\n\n const [collectionReachBottom] = useState(\n () =>\n new CollectionReachBottom({\n collection,\n lodash,\n }),\n );\n\n useEffect(() => {\n if (containerRef?.current == null) {\n return;\n }\n\n collectionReachBottom.reachBottom.container = containerRef?.current;\n collectionReachBottom.reachBottom.target = targetRef?.current;\n\n collectionReachBottom.subscribe();\n return () => {\n collectionReachBottom.reachBottom.target = null;\n collectionReachBottom.unsubscribe();\n };\n }, []);\n\n // Check if should load more items (scrollable container is not filled yet) after new data has been rendered\n useEffect(() => {\n // In jsdom element dimensions are always 0, so calculations inside `CollectionReachBottom` are not relevant.\n if (process.env.NODE_ENV === 'test') {\n return;\n }\n if (scrollMoreAlways || containerRef?.current?.scrollHeight) {\n collectionReachBottom.triggerListenerIfReached();\n }\n }, [keyedItems.length]);\n\n return { containerRef, targetRef };\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAWO,SAASG,wBAAwBA,CAAuC;EAC7EC,UAAU;EACVC,YAAY;EACZC;AACoC,CAAC,EAAE;EACvC,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAqB,CAAC;EAE9C,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,+BAAuB,EAAC,CAAC;EAE5C,MAAM;IACJC,MAAM,EAAE;MAAEC;IAAW;EACvB,CAAC,GAAGR,UAAU;EAEd,MAAM,CAACS,qBAAqB,CAAC,GAAG,IAAAC,eAAQ,EACtC,MACE,IAAIC,4CAAqB,CAAC;IACxBX,UAAU;IACVK;EACF,CAAC,CACL,CAAC;EAED,IAAAO,gBAAS,EAAC,MAAM;IACd,IAAI,CAAAX,YAAY,oBAAZA,YAAY,CAAEY,OAAO,KAAI,IAAI,EAAE;MACjC;IACF;IAEAJ,qBAAqB,CAACK,WAAW,CAACC,SAAS,GAAGd,YAAY,oBAAZA,YAAY,CAAEY,OAAO;IACnEJ,qBAAqB,CAACK,WAAW,CAACE,MAAM,GAAGb,SAAS,oBAATA,SAAS,CAAEU,OAAO;IAE7DJ,qBAAqB,CAACQ,SAAS,CAAC,CAAC;IACjC,OAAO,MAAM;MACXR,qBAAqB,CAACK,WAAW,CAACE,MAAM,GAAG,IAAI;MAC/CP,qBAAqB,CAACS,WAAW,CAAC,CAAC;IACrC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,IAAAN,gBAAS,EAAC,MAAM;IAAA,IAAAO,qBAAA;IACd;IACA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;IACF;IACA,IAAIpB,gBAAgB,IAAID,YAAY,aAAAkB,qBAAA,GAAZlB,YAAY,CAAEY,OAAO,aAArBM,qBAAA,CAAuBI,YAAY,EAAE;MAC3Dd,qBAAqB,CAACe,wBAAwB,CAAC,CAAC;IAClD;EACF,CAAC,EAAE,CAAChB,UAAU,CAACiB,MAAM,CAAC,CAAC;EAEvB,OAAO;IAAExB,YAAY;IAAEE;EAAU,CAAC;AACpC","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_CollectionReachBottom","_react2","useCollectionReachBottom","collection","containerRef","scrollMoreAlways","targetRef","useRef","lodash","useWixPatternsContainer","result","keyedItems","collectionReachBottom","useState","CollectionReachBottom","useEffect","current","reachBottom","container","target","subscribe","unsubscribe","_containerRef$current","process","env","NODE_ENV","scrollHeight","triggerListenerIfReached","length"],"sources":["../../../src/components/useCollectionReachBottom.tsx"],"sourcesContent":["import { RefObject, useEffect, useRef, useState } from 'react';\nimport { CollectionReachBottom } from '../state/CollectionReachBottom';\nimport { ScrollableWindow } from '../reach-bottom-listener';\nimport { CollectionState, FiltersMap } from '@wix/bex-core';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\n\nexport interface UseCollectionReachBottomParams<\n T,\n F extends FiltersMap = FiltersMap,\n> {\n collection: CollectionState<T, F>;\n containerRef?: RefObject<ScrollableWindow | null | undefined>;\n scrollMoreAlways?: boolean;\n}\n\nexport function useCollectionReachBottom<T, F extends FiltersMap = FiltersMap>({\n collection,\n containerRef,\n scrollMoreAlways,\n}: UseCollectionReachBottomParams<T, F>) {\n const targetRef = useRef<HTMLElement>(null);\n\n const { lodash } = useWixPatternsContainer();\n\n const {\n result: { keyedItems },\n } = collection;\n\n const [collectionReachBottom] = useState(\n () =>\n new CollectionReachBottom({\n collection,\n lodash,\n }),\n );\n\n useEffect(() => {\n if (containerRef?.current == null) {\n return;\n }\n\n collectionReachBottom.reachBottom.container = containerRef?.current;\n collectionReachBottom.reachBottom.target = targetRef?.current;\n\n collectionReachBottom.subscribe();\n return () => {\n collectionReachBottom.reachBottom.target = null;\n collectionReachBottom.unsubscribe();\n };\n }, []);\n\n // Check if should load more items (scrollable container is not filled yet) after new data has been rendered\n useEffect(() => {\n // In jsdom element dimensions are always 0, so calculations inside `CollectionReachBottom` are not relevant.\n if (process.env.NODE_ENV === 'test') {\n return;\n }\n if (scrollMoreAlways || containerRef?.current?.scrollHeight) {\n collectionReachBottom.triggerListenerIfReached();\n }\n }, [keyedItems.length]);\n\n return { containerRef, targetRef };\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAD,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAWO,SAASG,wBAAwBA,CAAuC;EAC7EC,UAAU;EACVC,YAAY;EACZC;AACoC,CAAC,EAAE;EACvC,MAAMC,SAAS,GAAG,IAAAC,aAAM,EAAc,IAAI,CAAC;EAE3C,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,+BAAuB,EAAC,CAAC;EAE5C,MAAM;IACJC,MAAM,EAAE;MAAEC;IAAW;EACvB,CAAC,GAAGR,UAAU;EAEd,MAAM,CAACS,qBAAqB,CAAC,GAAG,IAAAC,eAAQ,EACtC,MACE,IAAIC,4CAAqB,CAAC;IACxBX,UAAU;IACVK;EACF,CAAC,CACL,CAAC;EAED,IAAAO,gBAAS,EAAC,MAAM;IACd,IAAI,CAAAX,YAAY,oBAAZA,YAAY,CAAEY,OAAO,KAAI,IAAI,EAAE;MACjC;IACF;IAEAJ,qBAAqB,CAACK,WAAW,CAACC,SAAS,GAAGd,YAAY,oBAAZA,YAAY,CAAEY,OAAO;IACnEJ,qBAAqB,CAACK,WAAW,CAACE,MAAM,GAAGb,SAAS,oBAATA,SAAS,CAAEU,OAAO;IAE7DJ,qBAAqB,CAACQ,SAAS,CAAC,CAAC;IACjC,OAAO,MAAM;MACXR,qBAAqB,CAACK,WAAW,CAACE,MAAM,GAAG,IAAI;MAC/CP,qBAAqB,CAACS,WAAW,CAAC,CAAC;IACrC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,IAAAN,gBAAS,EAAC,MAAM;IAAA,IAAAO,qBAAA;IACd;IACA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;IACF;IACA,IAAIpB,gBAAgB,IAAID,YAAY,aAAAkB,qBAAA,GAAZlB,YAAY,CAAEY,OAAO,aAArBM,qBAAA,CAAuBI,YAAY,EAAE;MAC3Dd,qBAAqB,CAACe,wBAAwB,CAAC,CAAC;IAClD;EACF,CAAC,EAAE,CAAChB,UAAU,CAACiB,MAAM,CAAC,CAAC;EAEvB,OAAO;IAAExB,YAAY;IAAEE;EAAU,CAAC;AACpC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../src/external-types.d.ts"],"sourcesContent":["declare module '*.st.css' {\n const stylesheet: import('@stylable/runtime').RuntimeStylesheet;\n export = stylesheet;\n}\ndeclare module 'react-module-container';\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../src/external-types.d.ts"],"sourcesContent":["declare module '*.st.css' {\n const stylesheet: import('@stylable/runtime').RuntimeStylesheet;\n export = stylesheet;\n}\ndeclare module 'react-module-container';\ndeclare module 'is-ci' {\n export default boolean;\n}\n"],"mappings":"","ignoreList":[]}
@@ -355,13 +355,18 @@ class PickerModalState {
355
355
  // if the modal is already open, report startLoad BI, otherwise prefetch dependencies
356
356
  if (!this.isModalOpen) {
357
357
  // the timeout delay (500) indicates how soon (or late) we want to execute the callback, in case requestIdleCallback is not implemented
358
- const _requestIdleCallback = window.requestIdleCallback ?? (cb => setTimeout(cb, 500));
359
- const _cancelIdleCallback = window.cancelIdleCallback ?? clearTimeout;
358
+ const _requestIdleCallback = window.requestIdleCallback ?? (cb => {
359
+ return window.setTimeout(cb, 500);
360
+ });
360
361
  const requestId = _requestIdleCallback(() => {
361
362
  this.fetchFirstPage.once();
362
363
  });
363
364
  return () => {
364
- _cancelIdleCallback(requestId);
365
+ if (window.cancelIdleCallback) {
366
+ window.cancelIdleCallback(requestId);
367
+ } else {
368
+ window.clearTimeout(requestId);
369
+ }
365
370
  };
366
371
  }
367
372
  return;
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_bexUtils","_mapValues","_interopRequireDefault","_some","_bi","PickerModalState","constructor","params","_defineProperty2","default","reactive","undefined","Promise","all","fetchPickerComponent","once","fetchFirstPage","fetchInitialProps","e","console","error","bi","report","pickerPickerOpenButton","action","_commonDynamicBiParams","prefetch","items","_pickerContentRef$cur","pickerContentRef","_isCustomContentVisible","current","onCreateNew","value","state","additionalStepData","picker","indeterminateMap","collection","_isModalOpen","onSelectRef","bulkSelect","selectedValues","uncheckedValues","allSelected","indeterminateSet","select","selectedCount","result","total","length","isSelectAll","partiallySelectedIds","Array","from","partialModeKeys","values","toArray","map","status","item","defaultStatus","_isOpenButtonClicked","type","data","firstPageResult","withoutFiltersResult","disableAutoSelectionRef","someHidden","pickerPickModalCtaButtonClickOrImmediateCta","isImmediate","itemsCnt","listSize","filteredListSize","selectionStatusWixPatternsPreset","checked","multiple","multipleRef","Number","isInteger","onSelect","errorMonitor","biLoggerFactory","environment","queryName","isOpenInitially","skipFirstPagePrefetch","minContentHeight","fetchData","limit","_paginationModeRef","paginationMode","events","filters","shouldFilterNotAffectTotalCount","updateDefaults","providerType","_hostingPlatform","artifactId","componentName","cairoVersion","uiLibVersion","parseFqdn","componentType","logger","onPrefetchPromiseError","err","_this$events","captureException","onError","isOnline","PromiseState","fn","prefetchComputedQuery","queryFilters","hasActiveFilters","some","filter","initialValue","page","offset","cursor","search","rawSearch","rawFilters","hasNonPersistentActiveFilters","firstPagePromise","mapValues","withoutFiltersPromise","strictFiltersOnlyPromise","_","filterName","strictFiltersResult","pickerContentComponent","cairoMessages","prefetchTranslations","language","catch","isCustomContentVisible","isModalOpen","isOpenButtonClicked","noFiltersTotal","strictFiltersOnlyTotal","noAvailableItemsFound","_fetchFirstPage$statu","available","showButtonLoadingIndication","customContent","_customContent","maxItems","getMaxItems","onIsOpenChanged","_reportModalLoaded","init","_requestIdleCallback","window","requestIdleCallback","cb","setTimeout","_cancelIdleCallback","cancelIdleCallback","clearTimeout","requestId","withoutDefaults","loadStart","url","fixDomainForBI","location","href","featuresAvailability","JSON","stringify","exports"],"sources":["../../../../src/hooks/usePickerModal/PickerModalState.ts"],"sourcesContent":["import {\n ComputedQuery,\n Filter,\n FiltersMap,\n fixDomainForBI,\n PaginationModeRef,\n parseFqdn,\n PickerState,\n prefetchTranslations,\n RawFilters,\n selectionStatusWixPatternsPreset,\n withoutDefaults,\n} from '@wix/bex-core';\nimport { PromiseState, reactive } from '@wix/bex-utils';\nimport { UsePickerModalParams } from './usePickerModal';\nimport { MultipleSelection } from '../../components/MaxSelection';\nimport { OnSelectOptions, RawFiltersParams } from './UsePickerModalParamsBase';\nimport { CustomModalContent } from '../customModalContent';\nimport mapValues from 'lodash/mapValues';\nimport some from 'lodash/some';\nimport {\n loadStart,\n pickerPickerOpenButton,\n pickerPickModalCtaButtonClickOrImmediateCta,\n} from '@wix/bex-core/bi';\nimport type { PickerContentState } from '../../state';\n\nexport class PickerModalState<T, F extends FiltersMap> {\n readonly multipleRef = {} as { current: MultipleSelection | undefined };\n readonly pickerContentRef = {} as {\n current:\n | {\n onCreateNew?: (items?: T[]) => unknown;\n }\n | undefined;\n };\n readonly onSelectRef = {} as {\n current: (items: T[], options: OnSelectOptions<T>) => unknown;\n };\n readonly disableAutoSelectionRef = {} as { current: boolean | undefined };\n\n readonly bi;\n readonly _isModalOpen;\n readonly _isCustomContentVisible = reactive(false);\n readonly _customContent = reactive<CustomModalContent<T> | undefined>(\n undefined,\n );\n readonly _isOpenButtonClicked = reactive(false);\n\n readonly fetchFirstPage;\n readonly fetchPickerComponent;\n readonly fetchInitialProps;\n\n readonly minContentHeight;\n readonly shouldFilterNotAffectTotalCount;\n readonly queryName;\n readonly fetchData;\n readonly limit;\n readonly _paginationModeRef = {} as PaginationModeRef;\n readonly events;\n readonly filters;\n readonly environment;\n\n constructor(params: UsePickerModalParams<T, F>) {\n const {\n onSelect,\n errorMonitor,\n biLoggerFactory,\n environment,\n queryName,\n isOpenInitially = false,\n skipFirstPagePrefetch,\n } = params;\n\n this.minContentHeight = params.minContentHeight ?? 300;\n this.queryName = params.queryName;\n this.fetchData = params.fetchData;\n this.limit = params.limit;\n this._paginationModeRef.current = params.paginationMode;\n this.events = params.events;\n this.filters = params.filters ?? ({} as Partial<RawFiltersParams<F>>);\n this.shouldFilterNotAffectTotalCount =\n params.shouldFilterNotAffectTotalCount ?? (() => false);\n\n this.environment = environment;\n this.bi = biLoggerFactory()\n .updateDefaults({\n ...(environment.providerType === 'bm' && {\n _hostingPlatform: 'business-manager',\n }),\n artifactId: environment.artifactId,\n componentName: environment.componentName,\n cairoVersion: environment.uiLibVersion,\n ...parseFqdn(queryName),\n type: 'modal',\n componentType: 'Picker Modal',\n })\n .logger();\n\n this._isModalOpen = reactive(isOpenInitially);\n this.onSelectRef = { current: onSelect };\n\n const onPrefetchPromiseError = (err: unknown) => {\n errorMonitor.captureException(err);\n this.events?.onError?.({\n err,\n isOnline: true,\n });\n };\n\n this.fetchFirstPage = new PromiseState({\n onError: onPrefetchPromiseError,\n fn: async () => {\n const prefetchComputedQuery = ({\n filters: queryFilters,\n }: {\n filters: RawFilters<F>;\n }): ComputedQuery<F> => {\n const hasActiveFilters = some(\n queryFilters,\n (filter) => filter?.initialValue != null,\n );\n return {\n page: 1,\n limit: params.limit ?? 100,\n offset: 0,\n cursor: null,\n search: undefined,\n rawSearch: '',\n filters: queryFilters,\n rawFilters: queryFilters,\n hasActiveFilters,\n hasNonPersistentActiveFilters: hasActiveFilters,\n };\n };\n\n const firstPagePromise = !skipFirstPagePrefetch\n ? this.fetchData(\n prefetchComputedQuery({\n filters: mapValues(this.filters, (filter) =>\n filter != null ? filter.initialValue : filter,\n ) as ComputedQuery<F & { search: Filter<string> }>['filters'],\n }),\n )\n : undefined;\n\n const withoutFiltersPromise = some(this.filters)\n ? this.fetchData(\n prefetchComputedQuery({\n filters: {} as RawFilters<F>,\n }),\n )\n : undefined;\n\n const strictFiltersOnlyPromise = some(\n this.filters,\n (_, filterName) => !this.shouldFilterNotAffectTotalCount(filterName),\n )\n ? this.fetchData(\n prefetchComputedQuery({\n filters: mapValues(this.filters, (filter, filterName) =>\n this.shouldFilterNotAffectTotalCount(filterName)\n ? undefined\n : filter?.initialValue,\n ) as ComputedQuery<F & { search: Filter<string> }>['filters'],\n }),\n )\n : undefined;\n\n const [firstPageResult, withoutFiltersResult, strictFiltersResult] =\n await Promise.all([\n firstPagePromise,\n withoutFiltersPromise,\n strictFiltersOnlyPromise,\n ]);\n\n return {\n firstPageResult,\n withoutFiltersResult,\n strictFiltersResult,\n };\n },\n });\n this.fetchPickerComponent = new PromiseState({\n onError: onPrefetchPromiseError,\n fn: async () => {\n return (await params.pickerContentComponent()).default;\n },\n });\n this.fetchInitialProps = new PromiseState({\n onError: onPrefetchPromiseError,\n fn: async () => {\n const [cairoMessages] = await Promise.all([\n prefetchTranslations({ errorMonitor })(environment.language).catch(\n (e) => {\n console.error(e);\n // Fallback to `PickerModalContent` -> `WixPatternsContainer` i18n init\n return {};\n },\n ),\n params.fetchInitialProps?.(),\n ]);\n\n return { cairoMessages };\n },\n });\n }\n\n get isCustomContentVisible() {\n return this._isCustomContentVisible.value;\n }\n\n get isModalOpen() {\n return this._isModalOpen.value;\n }\n\n get paginationMode() {\n return this._paginationModeRef.current;\n }\n\n set paginationMode(value: 'offset' | 'cursor' | undefined) {\n this._paginationModeRef.current = value;\n }\n\n prefetch = async () => {\n try {\n await Promise.all([\n this.fetchPickerComponent.once(),\n this.fetchFirstPage.once(),\n this.fetchInitialProps.once(),\n ]);\n return true;\n } catch (e) {\n console.error(e);\n return false;\n }\n };\n\n hover = () => {\n this.bi.report(\n pickerPickerOpenButton({\n action: 'hover',\n ...this._commonDynamicBiParams(),\n }),\n );\n this.prefetch();\n };\n\n onCreateNew = async (items?: T[]) => {\n const { pickerContentRef, _isCustomContentVisible } = this;\n\n pickerContentRef.current?.onCreateNew?.(items);\n\n if (_isCustomContentVisible.value) {\n _isCustomContentVisible.value = false;\n }\n };\n\n onPrimaryButtonClick = (\n state:\n | (PickerContentState<T, F> & {\n // Before multiple status refactor compat\n indeterminateMap?: { partialModeKeys?: string[] };\n })\n | PickerState<T, F>,\n additionalStepData?: unknown,\n ) => {\n const { picker, indeterminateMap } =\n 'picker' in state\n ? state\n : { picker: state, indeterminateMap: undefined };\n\n const { collection } = picker;\n const { _isModalOpen, onSelectRef } = this;\n const {\n bulkSelect: {\n selectedValues,\n uncheckedValues,\n allSelected,\n indeterminateSet,\n select,\n },\n } = collection;\n _isModalOpen.value = false;\n const selectedCount = allSelected\n ? collection.result.total - uncheckedValues.length\n : selectedValues.length;\n\n onSelectRef.current(selectedValues, {\n uncheckedValues,\n isSelectAll: allSelected,\n selectedCount,\n // backwards compat with pikachu GA\n partiallySelectedIds: indeterminateSet\n ? Array.from(indeterminateSet)\n : indeterminateMap?.partialModeKeys ?? [],\n\n values: (select.toArray ?? []).map(({ value, status }) => ({\n status,\n value: value.item,\n })),\n defaultStatus: select.defaultStatus,\n additionalStepData,\n });\n };\n\n openModal = () => {\n const { _isOpenButtonClicked, _isModalOpen } = this;\n _isOpenButtonClicked.value = true;\n _isModalOpen.value = true;\n };\n\n closeModal = () => {\n const { _isModalOpen } = this;\n _isModalOpen.value = false;\n };\n\n openModalOrCTA = async () => {\n const { bi, _isOpenButtonClicked, fetchFirstPage, onSelectRef } = this;\n bi.report(\n pickerPickerOpenButton({\n action: 'click',\n ...this._commonDynamicBiParams(),\n }),\n );\n\n _isOpenButtonClicked.value = true;\n\n try {\n await fetchFirstPage.once();\n const { status } = fetchFirstPage;\n\n if (\n status.value.type === 'success' &&\n status.value.data.firstPageResult != null\n ) {\n const {\n firstPageResult: { total, items },\n withoutFiltersResult,\n } = status.value.data;\n\n if (\n !this.disableAutoSelectionRef.current &&\n total === 1 &&\n this.someHidden === false\n ) {\n bi.report(\n pickerPickModalCtaButtonClickOrImmediateCta({\n isImmediate: true,\n itemsCnt: 1,\n listSize: withoutFiltersResult?.total ?? total,\n filteredListSize: total,\n ...this._commonDynamicBiParams(),\n }),\n );\n onSelectRef.current(items, {\n uncheckedValues: [],\n isSelectAll: false,\n selectedCount: items.length,\n partiallySelectedIds: [],\n values: [],\n defaultStatus: selectionStatusWixPatternsPreset.checked,\n });\n return;\n }\n }\n } catch (e) {\n console.error(e);\n }\n\n this._isModalOpen.value = true;\n };\n\n get isOpenButtonClicked() {\n return this._isOpenButtonClicked.value;\n }\n\n get someHidden() {\n const { fetchFirstPage } = this;\n if (fetchFirstPage.status.value.type !== 'success') {\n return null;\n }\n const { firstPageResult, strictFiltersResult, withoutFiltersResult } =\n fetchFirstPage.status.value.data;\n\n if (firstPageResult == null) {\n return false;\n }\n\n // in case no filters request was not executed, it means that there are not filters - same total as with filters\n const noFiltersTotal = withoutFiltersResult?.total ?? firstPageResult.total;\n\n // in case strict filters only request was not executed, it means that all filters should not affect total - same total as without filters\n const strictFiltersOnlyTotal = strictFiltersResult?.total ?? noFiltersTotal;\n\n if (noFiltersTotal == null || strictFiltersOnlyTotal == null) {\n return null;\n }\n\n return noFiltersTotal > strictFiltersOnlyTotal;\n }\n\n get noAvailableItemsFound() {\n const { fetchFirstPage } = this;\n return (\n fetchFirstPage.status.value.type === 'success' &&\n fetchFirstPage.status.value.data.firstPageResult?.available === 0\n );\n }\n\n get showButtonLoadingIndication() {\n const { _isOpenButtonClicked, fetchFirstPage } = this;\n return (\n _isOpenButtonClicked.value &&\n fetchFirstPage.status.value.type === 'loading'\n );\n }\n\n get customContent() {\n return this._customContent.value;\n }\n\n _commonDynamicBiParams(): {} {\n return {\n maxItems: this.getMaxItems(),\n };\n }\n\n getMaxItems = () => {\n const { current: multiple } = this.multipleRef;\n return typeof multiple === 'number' && Number.isInteger(multiple)\n ? multiple\n : multiple\n ? undefined\n : 1;\n };\n\n onIsOpenChanged() {\n const { isModalOpen } = this;\n\n if (isModalOpen) {\n this.prefetch();\n this._reportModalLoaded();\n }\n }\n\n init() {\n const { bi } = this;\n\n bi.report(\n pickerPickerOpenButton({\n action: 'render',\n ...this._commonDynamicBiParams(),\n }),\n );\n\n // if the modal is already open, report startLoad BI, otherwise prefetch dependencies\n if (!this.isModalOpen) {\n // the timeout delay (500) indicates how soon (or late) we want to execute the callback, in case requestIdleCallback is not implemented\n const _requestIdleCallback =\n window.requestIdleCallback ?? ((cb: () => void) => setTimeout(cb, 500));\n\n const _cancelIdleCallback = window.cancelIdleCallback ?? clearTimeout;\n\n const requestId = _requestIdleCallback(() => {\n this.fetchFirstPage.once();\n });\n\n return () => {\n _cancelIdleCallback(requestId as number);\n };\n }\n\n return;\n }\n\n _reportModalLoaded() {\n this.bi.report(\n withoutDefaults(loadStart)({\n ...this._commonDynamicBiParams(),\n url: fixDomainForBI(window.location.href),\n featuresAvailability: JSON.stringify({}),\n }),\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_bexUtils","_mapValues","_interopRequireDefault","_some","_bi","PickerModalState","constructor","params","_defineProperty2","default","reactive","undefined","Promise","all","fetchPickerComponent","once","fetchFirstPage","fetchInitialProps","e","console","error","bi","report","pickerPickerOpenButton","action","_commonDynamicBiParams","prefetch","items","_pickerContentRef$cur","pickerContentRef","_isCustomContentVisible","current","onCreateNew","value","state","additionalStepData","picker","indeterminateMap","collection","_isModalOpen","onSelectRef","bulkSelect","selectedValues","uncheckedValues","allSelected","indeterminateSet","select","selectedCount","result","total","length","isSelectAll","partiallySelectedIds","Array","from","partialModeKeys","values","toArray","map","status","item","defaultStatus","_isOpenButtonClicked","type","data","firstPageResult","withoutFiltersResult","disableAutoSelectionRef","someHidden","pickerPickModalCtaButtonClickOrImmediateCta","isImmediate","itemsCnt","listSize","filteredListSize","selectionStatusWixPatternsPreset","checked","multiple","multipleRef","Number","isInteger","onSelect","errorMonitor","biLoggerFactory","environment","queryName","isOpenInitially","skipFirstPagePrefetch","minContentHeight","fetchData","limit","_paginationModeRef","paginationMode","events","filters","shouldFilterNotAffectTotalCount","updateDefaults","providerType","_hostingPlatform","artifactId","componentName","cairoVersion","uiLibVersion","parseFqdn","componentType","logger","onPrefetchPromiseError","err","_this$events","captureException","onError","isOnline","PromiseState","fn","prefetchComputedQuery","queryFilters","hasActiveFilters","some","filter","initialValue","page","offset","cursor","search","rawSearch","rawFilters","hasNonPersistentActiveFilters","firstPagePromise","mapValues","withoutFiltersPromise","strictFiltersOnlyPromise","_","filterName","strictFiltersResult","pickerContentComponent","cairoMessages","prefetchTranslations","language","catch","isCustomContentVisible","isModalOpen","isOpenButtonClicked","noFiltersTotal","strictFiltersOnlyTotal","noAvailableItemsFound","_fetchFirstPage$statu","available","showButtonLoadingIndication","customContent","_customContent","maxItems","getMaxItems","onIsOpenChanged","_reportModalLoaded","init","_requestIdleCallback","window","requestIdleCallback","cb","setTimeout","requestId","cancelIdleCallback","clearTimeout","withoutDefaults","loadStart","url","fixDomainForBI","location","href","featuresAvailability","JSON","stringify","exports"],"sources":["../../../../src/hooks/usePickerModal/PickerModalState.ts"],"sourcesContent":["import {\n ComputedQuery,\n Filter,\n FiltersMap,\n fixDomainForBI,\n PaginationModeRef,\n parseFqdn,\n PickerState,\n prefetchTranslations,\n RawFilters,\n selectionStatusWixPatternsPreset,\n withoutDefaults,\n} from '@wix/bex-core';\nimport { PromiseState, reactive } from '@wix/bex-utils';\nimport { UsePickerModalParams } from './usePickerModal';\nimport { MultipleSelection } from '../../components/MaxSelection';\nimport { OnSelectOptions, RawFiltersParams } from './UsePickerModalParamsBase';\nimport { CustomModalContent } from '../customModalContent';\nimport mapValues from 'lodash/mapValues';\nimport some from 'lodash/some';\nimport {\n loadStart,\n pickerPickerOpenButton,\n pickerPickModalCtaButtonClickOrImmediateCta,\n} from '@wix/bex-core/bi';\nimport type { PickerContentState } from '../../state';\n\nexport class PickerModalState<T, F extends FiltersMap> {\n readonly multipleRef = {} as { current: MultipleSelection | undefined };\n readonly pickerContentRef = {} as {\n current:\n | {\n onCreateNew?: (items?: T[]) => unknown;\n }\n | undefined;\n };\n readonly onSelectRef = {} as {\n current: (items: T[], options: OnSelectOptions<T>) => unknown;\n };\n readonly disableAutoSelectionRef = {} as { current: boolean | undefined };\n\n readonly bi;\n readonly _isModalOpen;\n readonly _isCustomContentVisible = reactive(false);\n readonly _customContent = reactive<CustomModalContent<T> | undefined>(\n undefined,\n );\n readonly _isOpenButtonClicked = reactive(false);\n\n readonly fetchFirstPage;\n readonly fetchPickerComponent;\n readonly fetchInitialProps;\n\n readonly minContentHeight;\n readonly shouldFilterNotAffectTotalCount;\n readonly queryName;\n readonly fetchData;\n readonly limit;\n readonly _paginationModeRef = {} as PaginationModeRef;\n readonly events;\n readonly filters;\n readonly environment;\n\n constructor(params: UsePickerModalParams<T, F>) {\n const {\n onSelect,\n errorMonitor,\n biLoggerFactory,\n environment,\n queryName,\n isOpenInitially = false,\n skipFirstPagePrefetch,\n } = params;\n\n this.minContentHeight = params.minContentHeight ?? 300;\n this.queryName = params.queryName;\n this.fetchData = params.fetchData;\n this.limit = params.limit;\n this._paginationModeRef.current = params.paginationMode;\n this.events = params.events;\n this.filters = params.filters ?? ({} as Partial<RawFiltersParams<F>>);\n this.shouldFilterNotAffectTotalCount =\n params.shouldFilterNotAffectTotalCount ?? (() => false);\n\n this.environment = environment;\n this.bi = biLoggerFactory()\n .updateDefaults({\n ...(environment.providerType === 'bm' && {\n _hostingPlatform: 'business-manager',\n }),\n artifactId: environment.artifactId,\n componentName: environment.componentName,\n cairoVersion: environment.uiLibVersion,\n ...parseFqdn(queryName),\n type: 'modal',\n componentType: 'Picker Modal',\n })\n .logger();\n\n this._isModalOpen = reactive(isOpenInitially);\n this.onSelectRef = { current: onSelect };\n\n const onPrefetchPromiseError = (err: unknown) => {\n errorMonitor.captureException(err);\n this.events?.onError?.({\n err,\n isOnline: true,\n });\n };\n\n this.fetchFirstPage = new PromiseState({\n onError: onPrefetchPromiseError,\n fn: async () => {\n const prefetchComputedQuery = ({\n filters: queryFilters,\n }: {\n filters: RawFilters<F>;\n }): ComputedQuery<F> => {\n const hasActiveFilters = some(\n queryFilters,\n (filter) => filter?.initialValue != null,\n );\n return {\n page: 1,\n limit: params.limit ?? 100,\n offset: 0,\n cursor: null,\n search: undefined,\n rawSearch: '',\n filters: queryFilters,\n rawFilters: queryFilters,\n hasActiveFilters,\n hasNonPersistentActiveFilters: hasActiveFilters,\n };\n };\n\n const firstPagePromise = !skipFirstPagePrefetch\n ? this.fetchData(\n prefetchComputedQuery({\n filters: mapValues(this.filters, (filter) =>\n filter != null ? filter.initialValue : filter,\n ) as ComputedQuery<F & { search: Filter<string> }>['filters'],\n }),\n )\n : undefined;\n\n const withoutFiltersPromise = some(this.filters)\n ? this.fetchData(\n prefetchComputedQuery({\n filters: {} as RawFilters<F>,\n }),\n )\n : undefined;\n\n const strictFiltersOnlyPromise = some(\n this.filters,\n (_, filterName) => !this.shouldFilterNotAffectTotalCount(filterName),\n )\n ? this.fetchData(\n prefetchComputedQuery({\n filters: mapValues(this.filters, (filter, filterName) =>\n this.shouldFilterNotAffectTotalCount(filterName)\n ? undefined\n : filter?.initialValue,\n ) as ComputedQuery<F & { search: Filter<string> }>['filters'],\n }),\n )\n : undefined;\n\n const [firstPageResult, withoutFiltersResult, strictFiltersResult] =\n await Promise.all([\n firstPagePromise,\n withoutFiltersPromise,\n strictFiltersOnlyPromise,\n ]);\n\n return {\n firstPageResult,\n withoutFiltersResult,\n strictFiltersResult,\n };\n },\n });\n this.fetchPickerComponent = new PromiseState({\n onError: onPrefetchPromiseError,\n fn: async () => {\n return (await params.pickerContentComponent()).default;\n },\n });\n this.fetchInitialProps = new PromiseState({\n onError: onPrefetchPromiseError,\n fn: async () => {\n const [cairoMessages] = await Promise.all([\n prefetchTranslations({ errorMonitor })(environment.language).catch(\n (e) => {\n console.error(e);\n // Fallback to `PickerModalContent` -> `WixPatternsContainer` i18n init\n return {};\n },\n ),\n params.fetchInitialProps?.(),\n ]);\n\n return { cairoMessages };\n },\n });\n }\n\n get isCustomContentVisible() {\n return this._isCustomContentVisible.value;\n }\n\n get isModalOpen() {\n return this._isModalOpen.value;\n }\n\n get paginationMode() {\n return this._paginationModeRef.current;\n }\n\n set paginationMode(value: 'offset' | 'cursor' | undefined) {\n this._paginationModeRef.current = value;\n }\n\n prefetch = async () => {\n try {\n await Promise.all([\n this.fetchPickerComponent.once(),\n this.fetchFirstPage.once(),\n this.fetchInitialProps.once(),\n ]);\n return true;\n } catch (e) {\n console.error(e);\n return false;\n }\n };\n\n hover = () => {\n this.bi.report(\n pickerPickerOpenButton({\n action: 'hover',\n ...this._commonDynamicBiParams(),\n }),\n );\n this.prefetch();\n };\n\n onCreateNew = async (items?: T[]) => {\n const { pickerContentRef, _isCustomContentVisible } = this;\n\n pickerContentRef.current?.onCreateNew?.(items);\n\n if (_isCustomContentVisible.value) {\n _isCustomContentVisible.value = false;\n }\n };\n\n onPrimaryButtonClick = (\n state:\n | (PickerContentState<T, F> & {\n // Before multiple status refactor compat\n indeterminateMap?: { partialModeKeys?: string[] };\n })\n | PickerState<T, F>,\n additionalStepData?: unknown,\n ) => {\n const { picker, indeterminateMap } =\n 'picker' in state\n ? state\n : { picker: state, indeterminateMap: undefined };\n\n const { collection } = picker;\n const { _isModalOpen, onSelectRef } = this;\n const {\n bulkSelect: {\n selectedValues,\n uncheckedValues,\n allSelected,\n indeterminateSet,\n select,\n },\n } = collection;\n _isModalOpen.value = false;\n const selectedCount = allSelected\n ? collection.result.total - uncheckedValues.length\n : selectedValues.length;\n\n onSelectRef.current(selectedValues, {\n uncheckedValues,\n isSelectAll: allSelected,\n selectedCount,\n // backwards compat with pikachu GA\n partiallySelectedIds: indeterminateSet\n ? Array.from(indeterminateSet)\n : indeterminateMap?.partialModeKeys ?? [],\n\n values: (select.toArray ?? []).map(({ value, status }) => ({\n status,\n value: value.item,\n })),\n defaultStatus: select.defaultStatus,\n additionalStepData,\n });\n };\n\n openModal = () => {\n const { _isOpenButtonClicked, _isModalOpen } = this;\n _isOpenButtonClicked.value = true;\n _isModalOpen.value = true;\n };\n\n closeModal = () => {\n const { _isModalOpen } = this;\n _isModalOpen.value = false;\n };\n\n openModalOrCTA = async () => {\n const { bi, _isOpenButtonClicked, fetchFirstPage, onSelectRef } = this;\n bi.report(\n pickerPickerOpenButton({\n action: 'click',\n ...this._commonDynamicBiParams(),\n }),\n );\n\n _isOpenButtonClicked.value = true;\n\n try {\n await fetchFirstPage.once();\n const { status } = fetchFirstPage;\n\n if (\n status.value.type === 'success' &&\n status.value.data.firstPageResult != null\n ) {\n const {\n firstPageResult: { total, items },\n withoutFiltersResult,\n } = status.value.data;\n\n if (\n !this.disableAutoSelectionRef.current &&\n total === 1 &&\n this.someHidden === false\n ) {\n bi.report(\n pickerPickModalCtaButtonClickOrImmediateCta({\n isImmediate: true,\n itemsCnt: 1,\n listSize: withoutFiltersResult?.total ?? total,\n filteredListSize: total,\n ...this._commonDynamicBiParams(),\n }),\n );\n onSelectRef.current(items, {\n uncheckedValues: [],\n isSelectAll: false,\n selectedCount: items.length,\n partiallySelectedIds: [],\n values: [],\n defaultStatus: selectionStatusWixPatternsPreset.checked,\n });\n return;\n }\n }\n } catch (e) {\n console.error(e);\n }\n\n this._isModalOpen.value = true;\n };\n\n get isOpenButtonClicked() {\n return this._isOpenButtonClicked.value;\n }\n\n get someHidden() {\n const { fetchFirstPage } = this;\n if (fetchFirstPage.status.value.type !== 'success') {\n return null;\n }\n const { firstPageResult, strictFiltersResult, withoutFiltersResult } =\n fetchFirstPage.status.value.data;\n\n if (firstPageResult == null) {\n return false;\n }\n\n // in case no filters request was not executed, it means that there are not filters - same total as with filters\n const noFiltersTotal = withoutFiltersResult?.total ?? firstPageResult.total;\n\n // in case strict filters only request was not executed, it means that all filters should not affect total - same total as without filters\n const strictFiltersOnlyTotal = strictFiltersResult?.total ?? noFiltersTotal;\n\n if (noFiltersTotal == null || strictFiltersOnlyTotal == null) {\n return null;\n }\n\n return noFiltersTotal > strictFiltersOnlyTotal;\n }\n\n get noAvailableItemsFound() {\n const { fetchFirstPage } = this;\n return (\n fetchFirstPage.status.value.type === 'success' &&\n fetchFirstPage.status.value.data.firstPageResult?.available === 0\n );\n }\n\n get showButtonLoadingIndication() {\n const { _isOpenButtonClicked, fetchFirstPage } = this;\n return (\n _isOpenButtonClicked.value &&\n fetchFirstPage.status.value.type === 'loading'\n );\n }\n\n get customContent() {\n return this._customContent.value;\n }\n\n _commonDynamicBiParams(): {} {\n return {\n maxItems: this.getMaxItems(),\n };\n }\n\n getMaxItems = () => {\n const { current: multiple } = this.multipleRef;\n return typeof multiple === 'number' && Number.isInteger(multiple)\n ? multiple\n : multiple\n ? undefined\n : 1;\n };\n\n onIsOpenChanged() {\n const { isModalOpen } = this;\n\n if (isModalOpen) {\n this.prefetch();\n this._reportModalLoaded();\n }\n }\n\n init() {\n const { bi } = this;\n\n bi.report(\n pickerPickerOpenButton({\n action: 'render',\n ...this._commonDynamicBiParams(),\n }),\n );\n\n // if the modal is already open, report startLoad BI, otherwise prefetch dependencies\n if (!this.isModalOpen) {\n // the timeout delay (500) indicates how soon (or late) we want to execute the callback, in case requestIdleCallback is not implemented\n const _requestIdleCallback =\n window.requestIdleCallback ??\n ((cb: () => void) => {\n return window.setTimeout(cb, 500);\n });\n\n const requestId = _requestIdleCallback(() => {\n this.fetchFirstPage.once();\n });\n\n return () => {\n if (window.cancelIdleCallback) {\n window.cancelIdleCallback(requestId);\n } else {\n window.clearTimeout(requestId);\n }\n };\n }\n\n return;\n }\n\n _reportModalLoaded() {\n this.bi.report(\n withoutDefaults(loadStart)({\n ...this._commonDynamicBiParams(),\n url: fixDomainForBI(window.location.href),\n featuresAvailability: JSON.stringify({}),\n }),\n );\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAaA,IAAAC,SAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,KAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,GAAA,GAAAL,OAAA;AAOO,MAAMM,gBAAgB,CAA0B;EAoCrDC,WAAWA,CAACC,MAAkC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,uBAnCzB,CAAC,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,4BACG,CAAC,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,uBAOP,CAAC,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA,mCAGU,CAAC,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,mCAIF,IAAAC,kBAAQ,EAAC,KAAK,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,0BACxB,IAAAC,kBAAQ,EAChCC,SACF,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,gCAC+B,IAAAC,kBAAQ,EAAC,KAAK,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,8BAWjB,CAAC,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAsKrB,YAAY;MACrB,IAAI;QACF,MAAMG,OAAO,CAACC,GAAG,CAAC,CAChB,IAAI,CAACC,oBAAoB,CAACC,IAAI,CAAC,CAAC,EAChC,IAAI,CAACC,cAAc,CAACD,IAAI,CAAC,CAAC,EAC1B,IAAI,CAACE,iBAAiB,CAACF,IAAI,CAAC,CAAC,CAC9B,CAAC;QACF,OAAO,IAAI;MACb,CAAC,CAAC,OAAOG,CAAC,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;QAChB,OAAO,KAAK;MACd;IACF,CAAC;IAAA,IAAAV,gBAAA,CAAAC,OAAA,iBAEO,MAAM;MACZ,IAAI,CAACY,EAAE,CAACC,MAAM,CACZ,IAAAC,0BAAsB,EAAC;QACrBC,MAAM,EAAE,OAAO;QACf,GAAG,IAAI,CAACC,sBAAsB,CAAC;MACjC,CAAC,CACH,CAAC;MACD,IAAI,CAACC,QAAQ,CAAC,CAAC;IACjB,CAAC;IAAA,IAAAlB,gBAAA,CAAAC,OAAA,uBAEa,MAAOkB,KAAW,IAAK;MAAA,IAAAC,qBAAA;MACnC,MAAM;QAAEC,gBAAgB;QAAEC;MAAwB,CAAC,GAAG,IAAI;MAE1D,CAAAF,qBAAA,GAAAC,gBAAgB,CAACE,OAAO,aAAxBH,qBAAA,CAA0BI,WAAW,YAArCJ,qBAAA,CAA0BI,WAAW,CAAGL,KAAK,CAAC;MAE9C,IAAIG,uBAAuB,CAACG,KAAK,EAAE;QACjCH,uBAAuB,CAACG,KAAK,GAAG,KAAK;MACvC;IACF,CAAC;IAAA,IAAAzB,gBAAA,CAAAC,OAAA,gCAEsB,CACrByB,KAKqB,EACrBC,kBAA4B,KACzB;MACH,MAAM;QAAEC,MAAM;QAAEC;MAAiB,CAAC,GAChC,QAAQ,IAAIH,KAAK,GACbA,KAAK,GACL;QAAEE,MAAM,EAAEF,KAAK;QAAEG,gBAAgB,EAAE1B;MAAU,CAAC;MAEpD,MAAM;QAAE2B;MAAW,CAAC,GAAGF,MAAM;MAC7B,MAAM;QAAEG,YAAY;QAAEC;MAAY,CAAC,GAAG,IAAI;MAC1C,MAAM;QACJC,UAAU,EAAE;UACVC,cAAc;UACdC,eAAe;UACfC,WAAW;UACXC,gBAAgB;UAChBC;QACF;MACF,CAAC,GAAGR,UAAU;MACdC,YAAY,CAACN,KAAK,GAAG,KAAK;MAC1B,MAAMc,aAAa,GAAGH,WAAW,GAC7BN,UAAU,CAACU,MAAM,CAACC,KAAK,GAAGN,eAAe,CAACO,MAAM,GAChDR,cAAc,CAACQ,MAAM;MAEzBV,WAAW,CAACT,OAAO,CAACW,cAAc,EAAE;QAClCC,eAAe;QACfQ,WAAW,EAAEP,WAAW;QACxBG,aAAa;QACb;QACAK,oBAAoB,EAAEP,gBAAgB,GAClCQ,KAAK,CAACC,IAAI,CAACT,gBAAgB,CAAC,GAC5B,CAAAR,gBAAgB,oBAAhBA,gBAAgB,CAAEkB,eAAe,KAAI,EAAE;QAE3CC,MAAM,EAAE,CAACV,MAAM,CAACW,OAAO,IAAI,EAAE,EAAEC,GAAG,CAAC,CAAC;UAAEzB,KAAK;UAAE0B;QAAO,CAAC,MAAM;UACzDA,MAAM;UACN1B,KAAK,EAAEA,KAAK,CAAC2B;QACf,CAAC,CAAC,CAAC;QACHC,aAAa,EAAEf,MAAM,CAACe,aAAa;QACnC1B;MACF,CAAC,CAAC;IACJ,CAAC;IAAA,IAAA3B,gBAAA,CAAAC,OAAA,qBAEW,MAAM;MAChB,MAAM;QAAEqD,oBAAoB;QAAEvB;MAAa,CAAC,GAAG,IAAI;MACnDuB,oBAAoB,CAAC7B,KAAK,GAAG,IAAI;MACjCM,YAAY,CAACN,KAAK,GAAG,IAAI;IAC3B,CAAC;IAAA,IAAAzB,gBAAA,CAAAC,OAAA,sBAEY,MAAM;MACjB,MAAM;QAAE8B;MAAa,CAAC,GAAG,IAAI;MAC7BA,YAAY,CAACN,KAAK,GAAG,KAAK;IAC5B,CAAC;IAAA,IAAAzB,gBAAA,CAAAC,OAAA,0BAEgB,YAAY;MAC3B,MAAM;QAAEY,EAAE;QAAEyC,oBAAoB;QAAE9C,cAAc;QAAEwB;MAAY,CAAC,GAAG,IAAI;MACtEnB,EAAE,CAACC,MAAM,CACP,IAAAC,0BAAsB,EAAC;QACrBC,MAAM,EAAE,OAAO;QACf,GAAG,IAAI,CAACC,sBAAsB,CAAC;MACjC,CAAC,CACH,CAAC;MAEDqC,oBAAoB,CAAC7B,KAAK,GAAG,IAAI;MAEjC,IAAI;QACF,MAAMjB,cAAc,CAACD,IAAI,CAAC,CAAC;QAC3B,MAAM;UAAE4C;QAAO,CAAC,GAAG3C,cAAc;QAEjC,IACE2C,MAAM,CAAC1B,KAAK,CAAC8B,IAAI,KAAK,SAAS,IAC/BJ,MAAM,CAAC1B,KAAK,CAAC+B,IAAI,CAACC,eAAe,IAAI,IAAI,EACzC;UACA,MAAM;YACJA,eAAe,EAAE;cAAEhB,KAAK;cAAEtB;YAAM,CAAC;YACjCuC;UACF,CAAC,GAAGP,MAAM,CAAC1B,KAAK,CAAC+B,IAAI;UAErB,IACE,CAAC,IAAI,CAACG,uBAAuB,CAACpC,OAAO,IACrCkB,KAAK,KAAK,CAAC,IACX,IAAI,CAACmB,UAAU,KAAK,KAAK,EACzB;YACA/C,EAAE,CAACC,MAAM,CACP,IAAA+C,+CAA2C,EAAC;cAC1CC,WAAW,EAAE,IAAI;cACjBC,QAAQ,EAAE,CAAC;cACXC,QAAQ,EAAE,CAAAN,oBAAoB,oBAApBA,oBAAoB,CAAEjB,KAAK,KAAIA,KAAK;cAC9CwB,gBAAgB,EAAExB,KAAK;cACvB,GAAG,IAAI,CAACxB,sBAAsB,CAAC;YACjC,CAAC,CACH,CAAC;YACDe,WAAW,CAACT,OAAO,CAACJ,KAAK,EAAE;cACzBgB,eAAe,EAAE,EAAE;cACnBQ,WAAW,EAAE,KAAK;cAClBJ,aAAa,EAAEpB,KAAK,CAACuB,MAAM;cAC3BE,oBAAoB,EAAE,EAAE;cACxBI,MAAM,EAAE,EAAE;cACVK,aAAa,EAAEa,yCAAgC,CAACC;YAClD,CAAC,CAAC;YACF;UACF;QACF;MACF,CAAC,CAAC,OAAOzD,CAAC,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;MAClB;MAEA,IAAI,CAACqB,YAAY,CAACN,KAAK,GAAG,IAAI;IAChC,CAAC;IAAA,IAAAzB,gBAAA,CAAAC,OAAA,uBAyDa,MAAM;MAClB,MAAM;QAAEsB,OAAO,EAAE6C;MAAS,CAAC,GAAG,IAAI,CAACC,WAAW;MAC9C,OAAO,OAAOD,QAAQ,KAAK,QAAQ,IAAIE,MAAM,CAACC,SAAS,CAACH,QAAQ,CAAC,GAC7DA,QAAQ,GACRA,QAAQ,GACRjE,SAAS,GACT,CAAC;IACP,CAAC;IAnXC,MAAM;MACJqE,QAAQ;MACRC,YAAY;MACZC,eAAe;MACfC,WAAW;MACXC,SAAS;MACTC,eAAe,GAAG,KAAK;MACvBC;IACF,CAAC,GAAG/E,MAAM;IAEV,IAAI,CAACgF,gBAAgB,GAAGhF,MAAM,CAACgF,gBAAgB,IAAI,GAAG;IACtD,IAAI,CAACH,SAAS,GAAG7E,MAAM,CAAC6E,SAAS;IACjC,IAAI,CAACI,SAAS,GAAGjF,MAAM,CAACiF,SAAS;IACjC,IAAI,CAACC,KAAK,GAAGlF,MAAM,CAACkF,KAAK;IACzB,IAAI,CAACC,kBAAkB,CAAC3D,OAAO,GAAGxB,MAAM,CAACoF,cAAc;IACvD,IAAI,CAACC,MAAM,GAAGrF,MAAM,CAACqF,MAAM;IAC3B,IAAI,CAACC,OAAO,GAAGtF,MAAM,CAACsF,OAAO,IAAK,CAAC,CAAkC;IACrE,IAAI,CAACC,+BAA+B,GAClCvF,MAAM,CAACuF,+BAA+B,KAAK,MAAM,KAAK,CAAC;IAEzD,IAAI,CAACX,WAAW,GAAGA,WAAW;IAC9B,IAAI,CAAC9D,EAAE,GAAG6D,eAAe,CAAC,CAAC,CACxBa,cAAc,CAAC;MACd,IAAIZ,WAAW,CAACa,YAAY,KAAK,IAAI,IAAI;QACvCC,gBAAgB,EAAE;MACpB,CAAC,CAAC;MACFC,UAAU,EAAEf,WAAW,CAACe,UAAU;MAClCC,aAAa,EAAEhB,WAAW,CAACgB,aAAa;MACxCC,YAAY,EAAEjB,WAAW,CAACkB,YAAY;MACtC,GAAG,IAAAC,kBAAS,EAAClB,SAAS,CAAC;MACvBrB,IAAI,EAAE,OAAO;MACbwC,aAAa,EAAE;IACjB,CAAC,CAAC,CACDC,MAAM,CAAC,CAAC;IAEX,IAAI,CAACjE,YAAY,GAAG,IAAA7B,kBAAQ,EAAC2E,eAAe,CAAC;IAC7C,IAAI,CAAC7C,WAAW,GAAG;MAAET,OAAO,EAAEiD;IAAS,CAAC;IAExC,MAAMyB,sBAAsB,GAAIC,GAAY,IAAK;MAAA,IAAAC,YAAA;MAC/C1B,YAAY,CAAC2B,gBAAgB,CAACF,GAAG,CAAC;MAClC,CAAAC,YAAA,OAAI,CAACf,MAAM,aAAXe,YAAA,CAAaE,OAAO,YAApBF,YAAA,CAAaE,OAAO,CAAG;QACrBH,GAAG;QACHI,QAAQ,EAAE;MACZ,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC9F,cAAc,GAAG,IAAI+F,sBAAY,CAAC;MACrCF,OAAO,EAAEJ,sBAAsB;MAC/BO,EAAE,EAAE,MAAAA,CAAA,KAAY;QACd,MAAMC,qBAAqB,GAAGA,CAAC;UAC7BpB,OAAO,EAAEqB;QAGX,CAAC,KAAuB;UACtB,MAAMC,gBAAgB,GAAG,IAAAC,aAAI,EAC3BF,YAAY,EACXG,MAAM,IAAK,CAAAA,MAAM,oBAANA,MAAM,CAAEC,YAAY,KAAI,IACtC,CAAC;UACD,OAAO;YACLC,IAAI,EAAE,CAAC;YACP9B,KAAK,EAAElF,MAAM,CAACkF,KAAK,IAAI,GAAG;YAC1B+B,MAAM,EAAE,CAAC;YACTC,MAAM,EAAE,IAAI;YACZC,MAAM,EAAE/G,SAAS;YACjBgH,SAAS,EAAE,EAAE;YACb9B,OAAO,EAAEqB,YAAY;YACrBU,UAAU,EAAEV,YAAY;YACxBC,gBAAgB;YAChBU,6BAA6B,EAAEV;UACjC,CAAC;QACH,CAAC;QAED,MAAMW,gBAAgB,GAAG,CAACxC,qBAAqB,GAC3C,IAAI,CAACE,SAAS,CACZyB,qBAAqB,CAAC;UACpBpB,OAAO,EAAE,IAAAkC,kBAAS,EAAC,IAAI,CAAClC,OAAO,EAAGwB,MAAM,IACtCA,MAAM,IAAI,IAAI,GAAGA,MAAM,CAACC,YAAY,GAAGD,MACzC;QACF,CAAC,CACH,CAAC,GACD1G,SAAS;QAEb,MAAMqH,qBAAqB,GAAG,IAAAZ,aAAI,EAAC,IAAI,CAACvB,OAAO,CAAC,GAC5C,IAAI,CAACL,SAAS,CACZyB,qBAAqB,CAAC;UACpBpB,OAAO,EAAE,CAAC;QACZ,CAAC,CACH,CAAC,GACDlF,SAAS;QAEb,MAAMsH,wBAAwB,GAAG,IAAAb,aAAI,EACnC,IAAI,CAACvB,OAAO,EACZ,CAACqC,CAAC,EAAEC,UAAU,KAAK,CAAC,IAAI,CAACrC,+BAA+B,CAACqC,UAAU,CACrE,CAAC,GACG,IAAI,CAAC3C,SAAS,CACZyB,qBAAqB,CAAC;UACpBpB,OAAO,EAAE,IAAAkC,kBAAS,EAAC,IAAI,CAAClC,OAAO,EAAE,CAACwB,MAAM,EAAEc,UAAU,KAClD,IAAI,CAACrC,+BAA+B,CAACqC,UAAU,CAAC,GAC5CxH,SAAS,GACT0G,MAAM,oBAANA,MAAM,CAAEC,YACd;QACF,CAAC,CACH,CAAC,GACD3G,SAAS;QAEb,MAAM,CAACsD,eAAe,EAAEC,oBAAoB,EAAEkE,mBAAmB,CAAC,GAChE,MAAMxH,OAAO,CAACC,GAAG,CAAC,CAChBiH,gBAAgB,EAChBE,qBAAqB,EACrBC,wBAAwB,CACzB,CAAC;QAEJ,OAAO;UACLhE,eAAe;UACfC,oBAAoB;UACpBkE;QACF,CAAC;MACH;IACF,CAAC,CAAC;IACF,IAAI,CAACtH,oBAAoB,GAAG,IAAIiG,sBAAY,CAAC;MAC3CF,OAAO,EAAEJ,sBAAsB;MAC/BO,EAAE,EAAE,MAAAA,CAAA,KAAY;QACd,OAAO,CAAC,MAAMzG,MAAM,CAAC8H,sBAAsB,CAAC,CAAC,EAAE5H,OAAO;MACxD;IACF,CAAC,CAAC;IACF,IAAI,CAACQ,iBAAiB,GAAG,IAAI8F,sBAAY,CAAC;MACxCF,OAAO,EAAEJ,sBAAsB;MAC/BO,EAAE,EAAE,MAAAA,CAAA,KAAY;QACd,MAAM,CAACsB,aAAa,CAAC,GAAG,MAAM1H,OAAO,CAACC,GAAG,CAAC,CACxC,IAAA0H,6BAAoB,EAAC;UAAEtD;QAAa,CAAC,CAAC,CAACE,WAAW,CAACqD,QAAQ,CAAC,CAACC,KAAK,CAC/DvH,CAAC,IAAK;UACLC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;UAChB;UACA,OAAO,CAAC,CAAC;QACX,CACF,CAAC,EACDX,MAAM,CAACU,iBAAiB,oBAAxBV,MAAM,CAACU,iBAAiB,CAAG,CAAC,CAC7B,CAAC;QAEF,OAAO;UAAEqH;QAAc,CAAC;MAC1B;IACF,CAAC,CAAC;EACJ;EAEA,IAAII,sBAAsBA,CAAA,EAAG;IAC3B,OAAO,IAAI,CAAC5G,uBAAuB,CAACG,KAAK;EAC3C;EAEA,IAAI0G,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACpG,YAAY,CAACN,KAAK;EAChC;EAEA,IAAI0D,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACD,kBAAkB,CAAC3D,OAAO;EACxC;EAEA,IAAI4D,cAAcA,CAAC1D,KAAsC,EAAE;IACzD,IAAI,CAACyD,kBAAkB,CAAC3D,OAAO,GAAGE,KAAK;EACzC;EAuJA,IAAI2G,mBAAmBA,CAAA,EAAG;IACxB,OAAO,IAAI,CAAC9E,oBAAoB,CAAC7B,KAAK;EACxC;EAEA,IAAImC,UAAUA,CAAA,EAAG;IACf,MAAM;MAAEpD;IAAe,CAAC,GAAG,IAAI;IAC/B,IAAIA,cAAc,CAAC2C,MAAM,CAAC1B,KAAK,CAAC8B,IAAI,KAAK,SAAS,EAAE;MAClD,OAAO,IAAI;IACb;IACA,MAAM;MAAEE,eAAe;MAAEmE,mBAAmB;MAAElE;IAAqB,CAAC,GAClElD,cAAc,CAAC2C,MAAM,CAAC1B,KAAK,CAAC+B,IAAI;IAElC,IAAIC,eAAe,IAAI,IAAI,EAAE;MAC3B,OAAO,KAAK;IACd;;IAEA;IACA,MAAM4E,cAAc,GAAG,CAAA3E,oBAAoB,oBAApBA,oBAAoB,CAAEjB,KAAK,KAAIgB,eAAe,CAAChB,KAAK;;IAE3E;IACA,MAAM6F,sBAAsB,GAAG,CAAAV,mBAAmB,oBAAnBA,mBAAmB,CAAEnF,KAAK,KAAI4F,cAAc;IAE3E,IAAIA,cAAc,IAAI,IAAI,IAAIC,sBAAsB,IAAI,IAAI,EAAE;MAC5D,OAAO,IAAI;IACb;IAEA,OAAOD,cAAc,GAAGC,sBAAsB;EAChD;EAEA,IAAIC,qBAAqBA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IAC1B,MAAM;MAAEhI;IAAe,CAAC,GAAG,IAAI;IAC/B,OACEA,cAAc,CAAC2C,MAAM,CAAC1B,KAAK,CAAC8B,IAAI,KAAK,SAAS,IAC9C,EAAAiF,qBAAA,GAAAhI,cAAc,CAAC2C,MAAM,CAAC1B,KAAK,CAAC+B,IAAI,CAACC,eAAe,qBAAhD+E,qBAAA,CAAkDC,SAAS,MAAK,CAAC;EAErE;EAEA,IAAIC,2BAA2BA,CAAA,EAAG;IAChC,MAAM;MAAEpF,oBAAoB;MAAE9C;IAAe,CAAC,GAAG,IAAI;IACrD,OACE8C,oBAAoB,CAAC7B,KAAK,IAC1BjB,cAAc,CAAC2C,MAAM,CAAC1B,KAAK,CAAC8B,IAAI,KAAK,SAAS;EAElD;EAEA,IAAIoF,aAAaA,CAAA,EAAG;IAClB,OAAO,IAAI,CAACC,cAAc,CAACnH,KAAK;EAClC;EAEAR,sBAAsBA,CAAA,EAAO;IAC3B,OAAO;MACL4H,QAAQ,EAAE,IAAI,CAACC,WAAW,CAAC;IAC7B,CAAC;EACH;EAWAC,eAAeA,CAAA,EAAG;IAChB,MAAM;MAAEZ;IAAY,CAAC,GAAG,IAAI;IAE5B,IAAIA,WAAW,EAAE;MACf,IAAI,CAACjH,QAAQ,CAAC,CAAC;MACf,IAAI,CAAC8H,kBAAkB,CAAC,CAAC;IAC3B;EACF;EAEAC,IAAIA,CAAA,EAAG;IACL,MAAM;MAAEpI;IAAG,CAAC,GAAG,IAAI;IAEnBA,EAAE,CAACC,MAAM,CACP,IAAAC,0BAAsB,EAAC;MACrBC,MAAM,EAAE,QAAQ;MAChB,GAAG,IAAI,CAACC,sBAAsB,CAAC;IACjC,CAAC,CACH,CAAC;;IAED;IACA,IAAI,CAAC,IAAI,CAACkH,WAAW,EAAE;MACrB;MACA,MAAMe,oBAAoB,GACxBC,MAAM,CAACC,mBAAmB,KACxBC,EAAc,IAAK;QACnB,OAAOF,MAAM,CAACG,UAAU,CAACD,EAAE,EAAE,GAAG,CAAC;MACnC,CAAC,CAAC;MAEJ,MAAME,SAAS,GAAGL,oBAAoB,CAAC,MAAM;QAC3C,IAAI,CAAC1I,cAAc,CAACD,IAAI,CAAC,CAAC;MAC5B,CAAC,CAAC;MAEF,OAAO,MAAM;QACX,IAAI4I,MAAM,CAACK,kBAAkB,EAAE;UAC7BL,MAAM,CAACK,kBAAkB,CAACD,SAAS,CAAC;QACtC,CAAC,MAAM;UACLJ,MAAM,CAACM,YAAY,CAACF,SAAS,CAAC;QAChC;MACF,CAAC;IACH;IAEA;EACF;EAEAP,kBAAkBA,CAAA,EAAG;IACnB,IAAI,CAACnI,EAAE,CAACC,MAAM,CACZ,IAAA4I,wBAAe,EAACC,aAAS,CAAC,CAAC;MACzB,GAAG,IAAI,CAAC1I,sBAAsB,CAAC,CAAC;MAChC2I,GAAG,EAAE,IAAAC,uBAAc,EAACV,MAAM,CAACW,QAAQ,CAACC,IAAI,CAAC;MACzCC,oBAAoB,EAAEC,IAAI,CAACC,SAAS,CAAC,CAAC,CAAC;IACzC,CAAC,CACH,CAAC;EACH;AACF;AAACC,OAAA,CAAAtK,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -6,11 +6,11 @@ var _react = require("react");
6
6
  function useRafRender() {
7
7
  const [entered, setEntered] = (0, _react.useState)(false);
8
8
  (0, _react.useEffect)(() => {
9
- const handle = requestAnimationFrame(() => {
9
+ const id = window.requestAnimationFrame(() => {
10
10
  setEntered(true);
11
11
  });
12
12
  return () => {
13
- cancelAnimationFrame(handle);
13
+ window.cancelAnimationFrame(id);
14
14
  };
15
15
  }, []);
16
16
  return entered;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","useRafRender","entered","setEntered","useState","useEffect","handle","requestAnimationFrame","cancelAnimationFrame"],"sources":["../../../src/hooks/useRafRender.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nexport function useRafRender() {\n const [entered, setEntered] = useState(false);\n\n useEffect(() => {\n const handle = requestAnimationFrame(() => {\n setEntered(true);\n });\n\n return () => {\n cancelAnimationFrame(handle);\n };\n }, []);\n\n return entered;\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,YAAYA,CAAA,EAAG;EAC7B,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAE7C,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,MAAM,GAAGC,qBAAqB,CAAC,MAAM;MACzCJ,UAAU,CAAC,IAAI,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,MAAM;MACXK,oBAAoB,CAACF,MAAM,CAAC;IAC9B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOJ,OAAO;AAChB","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","useRafRender","entered","setEntered","useState","useEffect","id","window","requestAnimationFrame","cancelAnimationFrame"],"sources":["../../../src/hooks/useRafRender.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nexport function useRafRender() {\n const [entered, setEntered] = useState(false);\n\n useEffect(() => {\n const id = window.requestAnimationFrame(() => {\n setEntered(true);\n });\n\n return () => {\n window.cancelAnimationFrame(id);\n };\n }, []);\n\n return entered;\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,YAAYA,CAAA,EAAG;EAC7B,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAE7C,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,EAAE,GAAGC,MAAM,CAACC,qBAAqB,CAAC,MAAM;MAC5CL,UAAU,CAAC,IAAI,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,MAAM;MACXI,MAAM,CAACE,oBAAoB,CAACH,EAAE,CAAC;IACjC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOJ,OAAO;AAChB","ignoreList":[]}
@@ -15,7 +15,7 @@ function useSyncCollectionOnEntityReturn({
15
15
  }) {
16
16
  const container = (0, _react2.useWixPatternsContainer)();
17
17
  const router = (0, _WixPatternsRouterProvider.useWixPatternsRouter)();
18
- const timeoutRef = (0, _react.useRef)(null);
18
+ const timeoutRef = (0, _react.useRef)();
19
19
  const routeState = (0, _useSelector.useSelector)(() => router == null ? void 0 : router.currentState);
20
20
  const entity = (0, _react.useMemo)(() => routeState ? getEntityFromRouterState(routeState) : null, [getEntityFromRouterState, routeState]);
21
21
  const collections = (0, _react.useMemo)(() => {
@@ -56,7 +56,7 @@ function useSyncCollectionOnEntityReturn({
56
56
  collections.forEach(collection => {
57
57
  updateCollection(collection, entity);
58
58
  });
59
- const timeoutId = setTimeout(() => {
59
+ const timeoutId = window.setTimeout(() => {
60
60
  Promise.all(collections.map(collection => checkIfViewSynced(collection, entity))).then(results => {
61
61
  const isViewSynced = results.some(Boolean) && !router.isCollectionStale;
62
62
  if (!isViewSynced) {
@@ -101,7 +101,7 @@ function useSyncCollectionOnEntityReturn({
101
101
  (0, _react.useEffect)(() => {
102
102
  return () => {
103
103
  if (timeoutRef.current) {
104
- clearTimeout(timeoutRef.current);
104
+ window.clearTimeout(timeoutRef.current);
105
105
  }
106
106
  currentToast == null || currentToast.remove();
107
107
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_WixPatternsRouterProvider","_react2","_useSelector","useSyncCollectionOnEntityReturn","cachedState","updateCollection","checkIfViewSynced","getEntityFromRouterState","getCollectionsToUpdate","container","useWixPatternsContainer","router","useWixPatternsRouter","timeoutRef","useRef","routeState","useSelector","currentState","entity","useMemo","collections","toolbar","collection","currentToast","setCurrentToast","useState","showViewUpdatedToast","toast","showToast","type","timeout","message","translate","onCloseClick","biName","action","text","onClick","forEach","clearResultAndMoveToStart","force","useEffect","timeoutId","setTimeout","Promise","all","map","then","results","isViewSynced","some","Boolean","isCollectionStale","current","removeToast","remove","onFetch","isUsingCache","emitter","on","off","clearTimeout"],"sources":["../../../src/hooks/useSyncCollectionOnEntityReturn.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport { useWixPatternsRouter } from '../providers/WixPatternsRouterProvider';\nimport { ICollectionComponentState } from '../state/ICollectionComponentState';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\nimport { CollectionState, RemoveToast } from '@wix/bex-core';\nimport { useSelector } from '../useSelector';\n\nexport function useSyncCollectionOnEntityReturn<\n T,\n S extends ICollectionComponentState,\n>({\n cachedState,\n updateCollection,\n checkIfViewSynced,\n getEntityFromRouterState,\n getCollectionsToUpdate,\n}: {\n cachedState?: S;\n updateCollection: (collectionToUpdate: CollectionState<T>, entity: T) => void;\n checkIfViewSynced: (\n collectionToUpdate: CollectionState<T>,\n entity: T,\n ) => Promise<boolean>;\n getEntityFromRouterState: (state: {\n _updatedEntity?: T;\n _createdEntity?: T;\n }) => T | undefined;\n getCollectionsToUpdate?: (state: S, entity: T) => CollectionState<T>[] | null;\n}) {\n const container = useWixPatternsContainer();\n const router = useWixPatternsRouter();\n const timeoutRef = useRef<NodeJS.Timeout | null>(null);\n\n const routeState = useSelector(() => router?.currentState);\n\n const entity = useMemo(\n () => (routeState ? getEntityFromRouterState(routeState) : null),\n [getEntityFromRouterState, routeState],\n );\n const collections = useMemo(() => {\n if (!cachedState) {\n return null;\n }\n if (!entity) {\n return [cachedState.toolbar.collection];\n }\n\n return (\n getCollectionsToUpdate?.(cachedState, entity) || [\n cachedState.toolbar.collection,\n ]\n );\n }, [cachedState, entity]);\n\n const [currentToast, setCurrentToast] = useState<{\n remove: RemoveToast;\n } | null>(null);\n\n const showViewUpdatedToast = () => {\n const toast = container.showToast?.({\n type: 'STANDARD',\n timeout: 'NONE',\n message: container.translate(\n 'cairo.updatedView.collectionPage.toast.desc',\n ),\n onCloseClick: () => {\n setCurrentToast(null);\n },\n biName: 'cairo-collection-page-updated-toast',\n action: {\n text: container.translate('cairo.updatedView.collectionPage.toast.cta'),\n onClick: () => {\n collections?.forEach((collection) =>\n collection.clearResultAndMoveToStart({ force: true }),\n );\n setCurrentToast(null);\n },\n },\n });\n\n if (toast) {\n setCurrentToast(toast);\n }\n };\n\n useEffect(() => {\n if (entity && collections && router) {\n collections.forEach((collection) => {\n updateCollection(collection, entity);\n });\n\n const timeoutId = setTimeout(() => {\n Promise.all(\n collections.map((collection) =>\n checkIfViewSynced(collection, entity),\n ),\n ).then((results) => {\n const isViewSynced =\n results.some(Boolean) && !router.isCollectionStale;\n if (!isViewSynced) {\n router.isCollectionStale = true;\n showViewUpdatedToast();\n }\n });\n }, 3000);\n\n timeoutRef.current = timeoutId;\n } else if (router?.isCollectionStale) {\n showViewUpdatedToast();\n }\n }, [collections, entity]);\n\n useEffect(() => {\n if (!currentToast || !cachedState) {\n return () => {};\n }\n\n const removeToast = () => {\n currentToast?.remove();\n setCurrentToast(null);\n };\n\n const onFetch = () => {\n removeToast();\n if (router) {\n router.isUsingCache = false;\n router.isCollectionStale = false;\n }\n };\n\n collections?.forEach((collection) => {\n collection?.emitter.on('fetch', () => {\n onFetch();\n });\n });\n return () => {\n collections?.forEach((collection) => {\n collection?.emitter.off('fetch', () => {\n onFetch();\n });\n });\n };\n }, [currentToast, collections]);\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n\n currentToast?.remove();\n };\n }, [currentToast]);\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,YAAA,GAAAH,OAAA;AAEO,SAASI,+BAA+BA,CAG7C;EACAC,WAAW;EACXC,gBAAgB;EAChBC,iBAAiB;EACjBC,wBAAwB;EACxBC;AAaF,CAAC,EAAE;EACD,MAAMC,SAAS,GAAG,IAAAC,+BAAuB,EAAC,CAAC;EAC3C,MAAMC,MAAM,GAAG,IAAAC,+CAAoB,EAAC,CAAC;EACrC,MAAMC,UAAU,GAAG,IAAAC,aAAM,EAAwB,IAAI,CAAC;EAEtD,MAAMC,UAAU,GAAG,IAAAC,wBAAW,EAAC,MAAML,MAAM,oBAANA,MAAM,CAAEM,YAAY,CAAC;EAE1D,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MAAOJ,UAAU,GAAGR,wBAAwB,CAACQ,UAAU,CAAC,GAAG,IAAK,EAChE,CAACR,wBAAwB,EAAEQ,UAAU,CACvC,CAAC;EACD,MAAMK,WAAW,GAAG,IAAAD,cAAO,EAAC,MAAM;IAChC,IAAI,CAACf,WAAW,EAAE;MAChB,OAAO,IAAI;IACb;IACA,IAAI,CAACc,MAAM,EAAE;MACX,OAAO,CAACd,WAAW,CAACiB,OAAO,CAACC,UAAU,CAAC;IACzC;IAEA,OACE,CAAAd,sBAAsB,oBAAtBA,sBAAsB,CAAGJ,WAAW,EAAEc,MAAM,CAAC,KAAI,CAC/Cd,WAAW,CAACiB,OAAO,CAACC,UAAU,CAC/B;EAEL,CAAC,EAAE,CAAClB,WAAW,EAAEc,MAAM,CAAC,CAAC;EAEzB,MAAM,CAACK,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAC,eAAQ,EAEtC,IAAI,CAAC;EAEf,MAAMC,oBAAoB,GAAGA,CAAA,KAAM;IACjC,MAAMC,KAAK,GAAGlB,SAAS,CAACmB,SAAS,oBAAnBnB,SAAS,CAACmB,SAAS,CAAG;MAClCC,IAAI,EAAE,UAAU;MAChBC,OAAO,EAAE,MAAM;MACfC,OAAO,EAAEtB,SAAS,CAACuB,SAAS,CAC1B,6CACF,CAAC;MACDC,YAAY,EAAEA,CAAA,KAAM;QAClBT,eAAe,CAAC,IAAI,CAAC;MACvB,CAAC;MACDU,MAAM,EAAE,qCAAqC;MAC7CC,MAAM,EAAE;QACNC,IAAI,EAAE3B,SAAS,CAACuB,SAAS,CAAC,4CAA4C,CAAC;QACvEK,OAAO,EAAEA,CAAA,KAAM;UACbjB,WAAW,YAAXA,WAAW,CAAEkB,OAAO,CAAEhB,UAAU,IAC9BA,UAAU,CAACiB,yBAAyB,CAAC;YAAEC,KAAK,EAAE;UAAK,CAAC,CACtD,CAAC;UACDhB,eAAe,CAAC,IAAI,CAAC;QACvB;MACF;IACF,CAAC,CAAC;IAEF,IAAIG,KAAK,EAAE;MACTH,eAAe,CAACG,KAAK,CAAC;IACxB;EACF,CAAC;EAED,IAAAc,gBAAS,EAAC,MAAM;IACd,IAAIvB,MAAM,IAAIE,WAAW,IAAIT,MAAM,EAAE;MACnCS,WAAW,CAACkB,OAAO,CAAEhB,UAAU,IAAK;QAClCjB,gBAAgB,CAACiB,UAAU,EAAEJ,MAAM,CAAC;MACtC,CAAC,CAAC;MAEF,MAAMwB,SAAS,GAAGC,UAAU,CAAC,MAAM;QACjCC,OAAO,CAACC,GAAG,CACTzB,WAAW,CAAC0B,GAAG,CAAExB,UAAU,IACzBhB,iBAAiB,CAACgB,UAAU,EAAEJ,MAAM,CACtC,CACF,CAAC,CAAC6B,IAAI,CAAEC,OAAO,IAAK;UAClB,MAAMC,YAAY,GAChBD,OAAO,CAACE,IAAI,CAACC,OAAO,CAAC,IAAI,CAACxC,MAAM,CAACyC,iBAAiB;UACpD,IAAI,CAACH,YAAY,EAAE;YACjBtC,MAAM,CAACyC,iBAAiB,GAAG,IAAI;YAC/B1B,oBAAoB,CAAC,CAAC;UACxB;QACF,CAAC,CAAC;MACJ,CAAC,EAAE,IAAI,CAAC;MAERb,UAAU,CAACwC,OAAO,GAAGX,SAAS;IAChC,CAAC,MAAM,IAAI/B,MAAM,YAANA,MAAM,CAAEyC,iBAAiB,EAAE;MACpC1B,oBAAoB,CAAC,CAAC;IACxB;EACF,CAAC,EAAE,CAACN,WAAW,EAAEF,MAAM,CAAC,CAAC;EAEzB,IAAAuB,gBAAS,EAAC,MAAM;IACd,IAAI,CAAClB,YAAY,IAAI,CAACnB,WAAW,EAAE;MACjC,OAAO,MAAM,CAAC,CAAC;IACjB;IAEA,MAAMkD,WAAW,GAAGA,CAAA,KAAM;MACxB/B,YAAY,YAAZA,YAAY,CAAEgC,MAAM,CAAC,CAAC;MACtB/B,eAAe,CAAC,IAAI,CAAC;IACvB,CAAC;IAED,MAAMgC,OAAO,GAAGA,CAAA,KAAM;MACpBF,WAAW,CAAC,CAAC;MACb,IAAI3C,MAAM,EAAE;QACVA,MAAM,CAAC8C,YAAY,GAAG,KAAK;QAC3B9C,MAAM,CAACyC,iBAAiB,GAAG,KAAK;MAClC;IACF,CAAC;IAEDhC,WAAW,YAAXA,WAAW,CAAEkB,OAAO,CAAEhB,UAAU,IAAK;MACnCA,UAAU,YAAVA,UAAU,CAAEoC,OAAO,CAACC,EAAE,CAAC,OAAO,EAAE,MAAM;QACpCH,OAAO,CAAC,CAAC;MACX,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,OAAO,MAAM;MACXpC,WAAW,YAAXA,WAAW,CAAEkB,OAAO,CAAEhB,UAAU,IAAK;QACnCA,UAAU,YAAVA,UAAU,CAAEoC,OAAO,CAACE,GAAG,CAAC,OAAO,EAAE,MAAM;UACrCJ,OAAO,CAAC,CAAC;QACX,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC;EACH,CAAC,EAAE,CAACjC,YAAY,EAAEH,WAAW,CAAC,CAAC;EAE/B,IAAAqB,gBAAS,EAAC,MAAM;IACd,OAAO,MAAM;MACX,IAAI5B,UAAU,CAACwC,OAAO,EAAE;QACtBQ,YAAY,CAAChD,UAAU,CAACwC,OAAO,CAAC;MAClC;MAEA9B,YAAY,YAAZA,YAAY,CAAEgC,MAAM,CAAC,CAAC;IACxB,CAAC;EACH,CAAC,EAAE,CAAChC,YAAY,CAAC,CAAC;AACpB","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_WixPatternsRouterProvider","_react2","_useSelector","useSyncCollectionOnEntityReturn","cachedState","updateCollection","checkIfViewSynced","getEntityFromRouterState","getCollectionsToUpdate","container","useWixPatternsContainer","router","useWixPatternsRouter","timeoutRef","useRef","routeState","useSelector","currentState","entity","useMemo","collections","toolbar","collection","currentToast","setCurrentToast","useState","showViewUpdatedToast","toast","showToast","type","timeout","message","translate","onCloseClick","biName","action","text","onClick","forEach","clearResultAndMoveToStart","force","useEffect","timeoutId","window","setTimeout","Promise","all","map","then","results","isViewSynced","some","Boolean","isCollectionStale","current","removeToast","remove","onFetch","isUsingCache","emitter","on","off","clearTimeout"],"sources":["../../../src/hooks/useSyncCollectionOnEntityReturn.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport { useWixPatternsRouter } from '../providers/WixPatternsRouterProvider';\nimport { ICollectionComponentState } from '../state/ICollectionComponentState';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\nimport { CollectionState, RemoveToast } from '@wix/bex-core';\nimport { useSelector } from '../useSelector';\n\nexport function useSyncCollectionOnEntityReturn<\n T,\n S extends ICollectionComponentState,\n>({\n cachedState,\n updateCollection,\n checkIfViewSynced,\n getEntityFromRouterState,\n getCollectionsToUpdate,\n}: {\n cachedState?: S;\n updateCollection: (collectionToUpdate: CollectionState<T>, entity: T) => void;\n checkIfViewSynced: (\n collectionToUpdate: CollectionState<T>,\n entity: T,\n ) => Promise<boolean>;\n getEntityFromRouterState: (state: {\n _updatedEntity?: T;\n _createdEntity?: T;\n }) => T | undefined;\n getCollectionsToUpdate?: (state: S, entity: T) => CollectionState<T>[] | null;\n}) {\n const container = useWixPatternsContainer();\n const router = useWixPatternsRouter();\n const timeoutRef = useRef<number>();\n\n const routeState = useSelector(() => router?.currentState);\n\n const entity = useMemo(\n () => (routeState ? getEntityFromRouterState(routeState) : null),\n [getEntityFromRouterState, routeState],\n );\n const collections = useMemo(() => {\n if (!cachedState) {\n return null;\n }\n if (!entity) {\n return [cachedState.toolbar.collection];\n }\n\n return (\n getCollectionsToUpdate?.(cachedState, entity) || [\n cachedState.toolbar.collection,\n ]\n );\n }, [cachedState, entity]);\n\n const [currentToast, setCurrentToast] = useState<{\n remove: RemoveToast;\n } | null>(null);\n\n const showViewUpdatedToast = () => {\n const toast = container.showToast?.({\n type: 'STANDARD',\n timeout: 'NONE',\n message: container.translate(\n 'cairo.updatedView.collectionPage.toast.desc',\n ),\n onCloseClick: () => {\n setCurrentToast(null);\n },\n biName: 'cairo-collection-page-updated-toast',\n action: {\n text: container.translate('cairo.updatedView.collectionPage.toast.cta'),\n onClick: () => {\n collections?.forEach((collection) =>\n collection.clearResultAndMoveToStart({ force: true }),\n );\n setCurrentToast(null);\n },\n },\n });\n\n if (toast) {\n setCurrentToast(toast);\n }\n };\n\n useEffect(() => {\n if (entity && collections && router) {\n collections.forEach((collection) => {\n updateCollection(collection, entity);\n });\n\n const timeoutId = window.setTimeout(() => {\n Promise.all(\n collections.map((collection) =>\n checkIfViewSynced(collection, entity),\n ),\n ).then((results) => {\n const isViewSynced =\n results.some(Boolean) && !router.isCollectionStale;\n if (!isViewSynced) {\n router.isCollectionStale = true;\n showViewUpdatedToast();\n }\n });\n }, 3000);\n\n timeoutRef.current = timeoutId;\n } else if (router?.isCollectionStale) {\n showViewUpdatedToast();\n }\n }, [collections, entity]);\n\n useEffect(() => {\n if (!currentToast || !cachedState) {\n return () => {};\n }\n\n const removeToast = () => {\n currentToast?.remove();\n setCurrentToast(null);\n };\n\n const onFetch = () => {\n removeToast();\n if (router) {\n router.isUsingCache = false;\n router.isCollectionStale = false;\n }\n };\n\n collections?.forEach((collection) => {\n collection?.emitter.on('fetch', () => {\n onFetch();\n });\n });\n return () => {\n collections?.forEach((collection) => {\n collection?.emitter.off('fetch', () => {\n onFetch();\n });\n });\n };\n }, [currentToast, collections]);\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n window.clearTimeout(timeoutRef.current);\n }\n\n currentToast?.remove();\n };\n }, [currentToast]);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,9 @@ const useSyncTotal = state => {
9
9
  const pageState = (0, _providers.useCollectionPageContext)();
10
10
  (0, _react.useEffect)(() => {
11
11
  if (state.totalStatus === 'success') {
12
- pageState.total = state.total;
12
+ (0, _mobx.runInAction)(() => {
13
+ pageState.total = state.total;
14
+ });
13
15
  }
14
16
  return (0, _mobx.reaction)(() => ({
15
17
  status: state.totalStatus,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_providers","_mobx","useSyncTotal","state","pageState","useCollectionPageContext","useEffect","totalStatus","total","reaction","status","exports"],"sources":["../../../src/hooks/useSyncTotal.ts"],"sourcesContent":["import { CollectionState, FiltersMap } from '@wix/bex-core';\nimport { useEffect } from 'react';\nimport { useCollectionPageContext } from '../providers';\nimport { reaction } from 'mobx';\n\nexport const useSyncTotal = <T, F extends FiltersMap>(\n state: CollectionState<T, F>,\n) => {\n const pageState = useCollectionPageContext();\n\n useEffect(() => {\n if (state.totalStatus === 'success') {\n pageState.total = state.total;\n }\n\n return reaction(\n () => ({\n status: state.totalStatus,\n total: state.total,\n }),\n ({ status, total }) => {\n pageState.total = status === 'success' ? total : false;\n },\n );\n }, []);\n};\n"],"mappings":";;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEO,MAAMG,YAAY,GACvBC,KAA4B,IACzB;EACH,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAAC,CAAC;EAE5C,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIH,KAAK,CAACI,WAAW,KAAK,SAAS,EAAE;MACnCH,SAAS,CAACI,KAAK,GAAGL,KAAK,CAACK,KAAK;IAC/B;IAEA,OAAO,IAAAC,cAAQ,EACb,OAAO;MACLC,MAAM,EAAEP,KAAK,CAACI,WAAW;MACzBC,KAAK,EAAEL,KAAK,CAACK;IACf,CAAC,CAAC,EACF,CAAC;MAAEE,MAAM;MAAEF;IAAM,CAAC,KAAK;MACrBJ,SAAS,CAACI,KAAK,GAAGE,MAAM,KAAK,SAAS,GAAGF,KAAK,GAAG,KAAK;IACxD,CACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR,CAAC;AAACG,OAAA,CAAAT,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_providers","_mobx","useSyncTotal","state","pageState","useCollectionPageContext","useEffect","totalStatus","runInAction","total","reaction","status","exports"],"sources":["../../../src/hooks/useSyncTotal.ts"],"sourcesContent":["import { CollectionState, FiltersMap } from '@wix/bex-core';\nimport { useEffect } from 'react';\nimport { useCollectionPageContext } from '../providers';\nimport { reaction, runInAction } from 'mobx';\n\nexport const useSyncTotal = <T, F extends FiltersMap>(\n state: CollectionState<T, F>,\n) => {\n const pageState = useCollectionPageContext();\n\n useEffect(() => {\n if (state.totalStatus === 'success') {\n runInAction(() => {\n pageState.total = state.total;\n });\n }\n\n return reaction(\n () => ({\n status: state.totalStatus,\n total: state.total,\n }),\n ({ status, total }) => {\n pageState.total = status === 'success' ? total : false;\n },\n );\n }, []);\n};\n"],"mappings":";;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEO,MAAMG,YAAY,GACvBC,KAA4B,IACzB;EACH,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAAC,CAAC;EAE5C,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIH,KAAK,CAACI,WAAW,KAAK,SAAS,EAAE;MACnC,IAAAC,iBAAW,EAAC,MAAM;QAChBJ,SAAS,CAACK,KAAK,GAAGN,KAAK,CAACM,KAAK;MAC/B,CAAC,CAAC;IACJ;IAEA,OAAO,IAAAC,cAAQ,EACb,OAAO;MACLC,MAAM,EAAER,KAAK,CAACI,WAAW;MACzBE,KAAK,EAAEN,KAAK,CAACM;IACf,CAAC,CAAC,EACF,CAAC;MAAEE,MAAM;MAAEF;IAAM,CAAC,KAAK;MACrBL,SAAS,CAACK,KAAK,GAAGE,MAAM,KAAK,SAAS,GAAGF,KAAK,GAAG,KAAK;IACxD,CACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR,CAAC;AAACG,OAAA,CAAAV,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -37,7 +37,8 @@ class NestedCollectionFetchAllState {
37
37
  });
38
38
  });
39
39
  (0, _mobx.makeObservable)(this, {
40
- total: _mobx.computed
40
+ total: _mobx.computed,
41
+ _setInitialExpandAllByThreshold: _mobx.action
41
42
  });
42
43
  }
43
44
  init({