@wix/patterns 1.32.0 → 1.34.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 (354) hide show
  1. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  2. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  3. package/dist/cjs/components/CollectionTable/CollectionTable.js +10 -10
  4. package/dist/cjs/components/CollectionTable/CollectionTable.js.map +1 -1
  5. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  6. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  7. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +3 -3
  8. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionToolbarFilters/CollectionToolbarFilters.js.map +1 -1
  10. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  11. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  12. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  13. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  14. package/dist/cjs/components/CtaProps.js.map +1 -1
  15. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.st.css.js +3 -3
  16. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.st.css.js.map +1 -1
  17. package/dist/cjs/components/DragAndDrop/CollectionDragAndDropState.js +8 -12
  18. package/dist/cjs/components/DragAndDrop/CollectionDragAndDropState.js.map +1 -1
  19. package/dist/cjs/components/DragAndDrop/DragAndDrop.js.map +1 -1
  20. package/dist/cjs/components/DragAndDrop/DragAndDropCategoriesProps.js +4 -0
  21. package/dist/cjs/components/DragAndDrop/DragAndDropCategoriesProps.js.map +1 -0
  22. package/dist/cjs/components/DragAndDrop/DragAndDropState.js +6 -1
  23. package/dist/cjs/components/DragAndDrop/DragAndDropState.js.map +1 -1
  24. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  25. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  26. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  27. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  28. package/dist/cjs/components/Grid/Grid.js +6 -6
  29. package/dist/cjs/components/Grid/Grid.js.map +1 -1
  30. package/dist/cjs/components/Grid/GridItemBaseProps.js.map +1 -1
  31. package/dist/cjs/components/GridSections/GridSectionsState.js.map +1 -1
  32. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  33. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  34. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  35. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  36. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  37. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  38. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  39. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  40. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  41. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  42. package/dist/cjs/components/NestedTable/NestedTable.js +3 -3
  43. package/dist/cjs/components/NestedTable/NestedTable.js.map +1 -1
  44. package/dist/cjs/components/NestedTable/NestedTable.uni.driver.js +2 -0
  45. package/dist/cjs/components/NestedTable/NestedTable.uni.driver.js.map +1 -1
  46. package/dist/cjs/components/NestedTable/NestedTableContent.js +9 -2
  47. package/dist/cjs/components/NestedTable/NestedTableContent.js.map +1 -1
  48. package/dist/cjs/components/NestedTable/NestedTableParentCell.js +24 -13
  49. package/dist/cjs/components/NestedTable/NestedTableParentCell.js.map +1 -1
  50. package/dist/cjs/components/NestedTable/NestedTableParentCell.uni.driver.js +9 -2
  51. package/dist/cjs/components/NestedTable/NestedTableParentCell.uni.driver.js.map +1 -1
  52. package/dist/cjs/components/NestedTable/NestedTableRow.js +6 -2
  53. package/dist/cjs/components/NestedTable/NestedTableRow.js.map +1 -1
  54. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  55. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  56. package/dist/cjs/components/NestedTable/NestedTableWSRTable.js +2 -3
  57. package/dist/cjs/components/NestedTable/NestedTableWSRTable.js.map +1 -1
  58. package/dist/cjs/components/NestedTable/useModeTableProps.js.map +1 -1
  59. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDrop.js +1 -1
  60. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDrop.js.map +1 -1
  61. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropContext.js +13 -6
  62. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropContext.js.map +1 -1
  63. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropState.js +203 -47
  64. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropState.js.map +1 -1
  65. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableGhostIndentationCell.js +1 -1
  66. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableGhostIndentationCell.js.map +1 -1
  67. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableGhostRow.uni.driver.js +2 -9
  68. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableGhostRow.uni.driver.js.map +1 -1
  69. package/dist/cjs/components/NestedTableDragAndDrop/validateNestedTableDragAndDropProps.js +19 -0
  70. package/dist/cjs/components/NestedTableDragAndDrop/validateNestedTableDragAndDropProps.js.map +1 -0
  71. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  72. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  73. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  74. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  75. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  76. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  77. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  78. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  79. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  80. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  81. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  82. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  83. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js +2 -2
  84. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js.map +1 -1
  85. package/dist/cjs/components/TableGridSwitch/TableGridSwitch.js +4 -4
  86. package/dist/cjs/components/TableGridSwitch/TableGridSwitch.js.map +1 -1
  87. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  88. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  89. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  90. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  91. package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js +3 -3
  92. package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
  93. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  94. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  95. package/dist/cjs/components/common.st.css.js +4 -4
  96. package/dist/cjs/components/common.st.css.js.map +1 -1
  97. package/dist/cjs/hooks/useCreateNestedOptimisticActions.js +3 -1
  98. package/dist/cjs/hooks/useCreateNestedOptimisticActions.js.map +1 -1
  99. package/dist/cjs/hooks/useNestedTable.js +9 -1
  100. package/dist/cjs/hooks/useNestedTable.js.map +1 -1
  101. package/dist/cjs/hooks/useOptionalCachedState.js +3 -3
  102. package/dist/cjs/hooks/useOptionalCachedState.js.map +1 -1
  103. package/dist/cjs/hooks/useSyncCollectionOnEntityReturn.js +100 -0
  104. package/dist/cjs/hooks/useSyncCollectionOnEntityReturn.js.map +1 -0
  105. package/dist/cjs/hooks/useSyncCollectionOnEntityUpdate.js +43 -0
  106. package/dist/cjs/hooks/useSyncCollectionOnEntityUpdate.js.map +1 -0
  107. package/dist/cjs/index.js +4 -2
  108. package/dist/cjs/index.js.map +1 -1
  109. package/dist/cjs/model/tableColumn.js.map +1 -1
  110. package/dist/cjs/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.js +19 -0
  111. package/dist/cjs/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.js.map +1 -0
  112. package/dist/cjs/state/EntityPage/EntityPageState.js +4 -5
  113. package/dist/cjs/state/EntityPage/EntityPageState.js.map +1 -1
  114. package/dist/cjs/state/NestedTableState/NestedCollectionLevelDescriptor.js.map +1 -1
  115. package/dist/cjs/state/NestedTableState/NestedCollectionNodeState.js +15 -5
  116. package/dist/cjs/state/NestedTableState/NestedCollectionNodeState.js.map +1 -1
  117. package/dist/cjs/state/NestedTableState/NestedCollectionState.js +11 -1
  118. package/dist/cjs/state/NestedTableState/NestedCollectionState.js.map +1 -1
  119. package/dist/cjs/state/NestedTableState/NestedTableFlatModeState.js +4 -2
  120. package/dist/cjs/state/NestedTableState/NestedTableFlatModeState.js.map +1 -1
  121. package/dist/cjs/state/NestedTableState/NestedTableLevelDescriptor.js.map +1 -1
  122. package/dist/cjs/state/NestedTableState/NestedTableNestedModeState.js +35 -6
  123. package/dist/cjs/state/NestedTableState/NestedTableNestedModeState.js.map +1 -1
  124. package/dist/cjs/state/NestedTableState/NestedTableNodeState.js +14 -26
  125. package/dist/cjs/state/NestedTableState/NestedTableNodeState.js.map +1 -1
  126. package/dist/cjs/state/NestedTableState/NestedTableState.js +6 -1
  127. package/dist/cjs/state/NestedTableState/NestedTableState.js.map +1 -1
  128. package/dist/cjs/state/TableVirtualState.js +5 -2
  129. package/dist/cjs/state/TableVirtualState.js.map +1 -1
  130. package/dist/cjs/state/ToolbarCollectionState.js +3 -0
  131. package/dist/cjs/state/ToolbarCollectionState.js.map +1 -1
  132. package/dist/cjs/state/WixPatternsRouterState.js.map +1 -1
  133. package/dist/cjs/styles.global.css +1 -1
  134. package/dist/cjs/test-utils/getUniDriverStyle.js +14 -0
  135. package/dist/cjs/test-utils/getUniDriverStyle.js.map +1 -0
  136. package/dist/cjs/version.js +1 -1
  137. package/dist/cjs/version.js.map +1 -1
  138. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  139. package/dist/esm/components/CollectionTable/CollectionTable.js.map +1 -1
  140. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  141. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  142. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  143. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  144. package/dist/esm/components/CollectionToolbarFilters/CollectionToolbarFilters.js.map +1 -1
  145. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  146. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  147. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  148. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.st.css.js +2 -2
  149. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.st.css.js.map +1 -1
  150. package/dist/esm/components/DragAndDrop/CollectionDragAndDropState.js +6 -11
  151. package/dist/esm/components/DragAndDrop/CollectionDragAndDropState.js.map +1 -1
  152. package/dist/esm/components/DragAndDrop/DragAndDropCategoriesProps.js +2 -0
  153. package/dist/esm/components/DragAndDrop/DragAndDropCategoriesProps.js.map +1 -0
  154. package/dist/esm/components/DragAndDrop/DragAndDropState.js +4 -1
  155. package/dist/esm/components/DragAndDrop/DragAndDropState.js.map +1 -1
  156. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  157. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  158. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  159. package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
  160. package/dist/esm/components/Grid/Grid.js.map +1 -1
  161. package/dist/esm/components/GridSections/GridSectionsState.js.map +1 -1
  162. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  163. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  164. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  165. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  166. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  167. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  168. package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
  169. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  170. package/dist/esm/components/NestedTable/NestedTable.js.map +1 -1
  171. package/dist/esm/components/NestedTable/NestedTable.uni.driver.js +2 -0
  172. package/dist/esm/components/NestedTable/NestedTable.uni.driver.js.map +1 -1
  173. package/dist/esm/components/NestedTable/NestedTableContent.js +6 -1
  174. package/dist/esm/components/NestedTable/NestedTableContent.js.map +1 -1
  175. package/dist/esm/components/NestedTable/NestedTableParentCell.js +8 -2
  176. package/dist/esm/components/NestedTable/NestedTableParentCell.js.map +1 -1
  177. package/dist/esm/components/NestedTable/NestedTableParentCell.uni.driver.js +7 -1
  178. package/dist/esm/components/NestedTable/NestedTableParentCell.uni.driver.js.map +1 -1
  179. package/dist/esm/components/NestedTable/NestedTableRow.js +4 -1
  180. package/dist/esm/components/NestedTable/NestedTableRow.js.map +1 -1
  181. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  182. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  183. package/dist/esm/components/NestedTable/NestedTableWSRTable.js +2 -2
  184. package/dist/esm/components/NestedTable/NestedTableWSRTable.js.map +1 -1
  185. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDrop.js +1 -1
  186. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDrop.js.map +1 -1
  187. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropContext.js +10 -2
  188. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropContext.js.map +1 -1
  189. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropState.js +176 -41
  190. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropState.js.map +1 -1
  191. package/dist/esm/components/NestedTableDragAndDrop/NestedTableGhostIndentationCell.js.map +1 -1
  192. package/dist/esm/components/NestedTableDragAndDrop/NestedTableGhostRow.uni.driver.js +2 -9
  193. package/dist/esm/components/NestedTableDragAndDrop/NestedTableGhostRow.uni.driver.js.map +1 -1
  194. package/dist/esm/components/NestedTableDragAndDrop/validateNestedTableDragAndDropProps.js +15 -0
  195. package/dist/esm/components/NestedTableDragAndDrop/validateNestedTableDragAndDropProps.js.map +1 -0
  196. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  197. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  198. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  199. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  200. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  201. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  202. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  203. package/dist/esm/components/Table/TableVirtualHeader.st.css.js +2 -2
  204. package/dist/esm/components/TableGridSwitch/TableGridSwitch.js.map +1 -1
  205. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  206. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  207. package/dist/esm/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
  208. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  209. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  210. package/dist/esm/components/common.st.css.js +2 -2
  211. package/dist/esm/hooks/useCreateNestedOptimisticActions.js +2 -0
  212. package/dist/esm/hooks/useCreateNestedOptimisticActions.js.map +1 -1
  213. package/dist/esm/hooks/useNestedTable.js +8 -1
  214. package/dist/esm/hooks/useNestedTable.js.map +1 -1
  215. package/dist/esm/hooks/useOptionalCachedState.js +3 -3
  216. package/dist/esm/hooks/useOptionalCachedState.js.map +1 -1
  217. package/dist/esm/hooks/useSyncCollectionOnEntityReturn.js +92 -0
  218. package/dist/esm/hooks/useSyncCollectionOnEntityReturn.js.map +1 -0
  219. package/dist/esm/hooks/useSyncCollectionOnEntityUpdate.js +38 -0
  220. package/dist/esm/hooks/useSyncCollectionOnEntityUpdate.js.map +1 -0
  221. package/dist/esm/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.js +11 -0
  222. package/dist/esm/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.js.map +1 -0
  223. package/dist/esm/state/EntityPage/EntityPageState.js +2 -5
  224. package/dist/esm/state/EntityPage/EntityPageState.js.map +1 -1
  225. package/dist/esm/state/NestedTableState/NestedCollectionNodeState.js +12 -3
  226. package/dist/esm/state/NestedTableState/NestedCollectionNodeState.js.map +1 -1
  227. package/dist/esm/state/NestedTableState/NestedCollectionState.js +9 -0
  228. package/dist/esm/state/NestedTableState/NestedCollectionState.js.map +1 -1
  229. package/dist/esm/state/NestedTableState/NestedTableFlatModeState.js +2 -2
  230. package/dist/esm/state/NestedTableState/NestedTableFlatModeState.js.map +1 -1
  231. package/dist/esm/state/NestedTableState/NestedTableNestedModeState.js +19 -2
  232. package/dist/esm/state/NestedTableState/NestedTableNestedModeState.js.map +1 -1
  233. package/dist/esm/state/NestedTableState/NestedTableNodeState.js +10 -16
  234. package/dist/esm/state/NestedTableState/NestedTableNodeState.js.map +1 -1
  235. package/dist/esm/state/NestedTableState/NestedTableState.js +6 -1
  236. package/dist/esm/state/NestedTableState/NestedTableState.js.map +1 -1
  237. package/dist/esm/state/TableVirtualState.js +4 -2
  238. package/dist/esm/state/TableVirtualState.js.map +1 -1
  239. package/dist/esm/state/ToolbarCollectionState.js +3 -0
  240. package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
  241. package/dist/esm/styles.global.css +1 -1
  242. package/dist/esm/test-utils/getUniDriverStyle.js +9 -0
  243. package/dist/esm/test-utils/getUniDriverStyle.js.map +1 -0
  244. package/dist/esm/version.js +1 -1
  245. package/dist/types/components/CollectionTable/CollectionTable.d.ts +3 -1
  246. package/dist/types/components/CollectionTable/CollectionTable.d.ts.map +1 -1
  247. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  248. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  249. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  250. package/dist/types/components/CtaProps.d.ts +13 -0
  251. package/dist/types/components/CtaProps.d.ts.map +1 -1
  252. package/dist/types/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.st.css.d.ts.map +1 -1
  253. package/dist/types/components/DragAndDrop/CollectionDragAndDropState.d.ts.map +1 -1
  254. package/dist/types/components/DragAndDrop/DragAndDrop.d.ts +2 -1
  255. package/dist/types/components/DragAndDrop/DragAndDrop.d.ts.map +1 -1
  256. package/dist/types/components/DragAndDrop/DragAndDropCategoriesProps.d.ts +12 -0
  257. package/dist/types/components/DragAndDrop/DragAndDropCategoriesProps.d.ts.map +1 -0
  258. package/dist/types/components/DragAndDrop/DragAndDropState.d.ts +2 -1
  259. package/dist/types/components/DragAndDrop/DragAndDropState.d.ts.map +1 -1
  260. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  261. package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
  262. package/dist/types/components/Grid/Grid.d.ts +8 -2
  263. package/dist/types/components/Grid/Grid.d.ts.map +1 -1
  264. package/dist/types/components/GridSections/GridSectionsState.d.ts +13 -0
  265. package/dist/types/components/GridSections/GridSectionsState.d.ts.map +1 -1
  266. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  267. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  268. package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
  269. package/dist/types/components/NestedTable/NestedTable.d.ts +3 -35
  270. package/dist/types/components/NestedTable/NestedTable.d.ts.map +1 -1
  271. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +4 -0
  272. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
  273. package/dist/types/components/NestedTable/NestedTableContent.d.ts +3 -1
  274. package/dist/types/components/NestedTable/NestedTableContent.d.ts.map +1 -1
  275. package/dist/types/components/NestedTable/NestedTableParentCell.d.ts.map +1 -1
  276. package/dist/types/components/NestedTable/NestedTableParentCell.uni.driver.d.ts +1 -0
  277. package/dist/types/components/NestedTable/NestedTableParentCell.uni.driver.d.ts.map +1 -1
  278. package/dist/types/components/NestedTable/NestedTableRow.d.ts.map +1 -1
  279. package/dist/types/components/NestedTable/NestedTableRow.st.css.d.ts.map +1 -1
  280. package/dist/types/components/NestedTable/NestedTableWSRTable.d.ts.map +1 -1
  281. package/dist/types/components/NestedTable/useModeTableProps.d.ts +3 -3
  282. package/dist/types/components/NestedTable/useModeTableProps.d.ts.map +1 -1
  283. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDrop.d.ts +1 -1
  284. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropContext.d.ts +1 -2
  285. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropContext.d.ts.map +1 -1
  286. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropState.d.ts +46 -7
  287. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropState.d.ts.map +1 -1
  288. package/dist/types/components/NestedTableDragAndDrop/NestedTableGhostIndentationCell.d.ts.map +1 -1
  289. package/dist/types/components/NestedTableDragAndDrop/NestedTableGhostRow.uni.driver.d.ts.map +1 -1
  290. package/dist/types/components/NestedTableDragAndDrop/validateNestedTableDragAndDropProps.d.ts +3 -0
  291. package/dist/types/components/NestedTableDragAndDrop/validateNestedTableDragAndDropProps.d.ts.map +1 -0
  292. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  293. package/dist/types/components/TableGridSwitch/TableGridSwitch.d.ts +2 -1
  294. package/dist/types/components/TableGridSwitch/TableGridSwitch.d.ts.map +1 -1
  295. package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts +14 -19
  296. package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts.map +1 -1
  297. package/dist/types/components/ToolbarItemBox/ToolbarItemBox.st.css.d.ts.map +1 -1
  298. package/dist/types/hooks/useCreateNestedOptimisticActions.d.ts +5 -3
  299. package/dist/types/hooks/useCreateNestedOptimisticActions.d.ts.map +1 -1
  300. package/dist/types/hooks/useNestedTable.d.ts.map +1 -1
  301. package/dist/types/hooks/useOptionalCachedState.d.ts +2 -1
  302. package/dist/types/hooks/useOptionalCachedState.d.ts.map +1 -1
  303. package/dist/types/hooks/useSyncCollectionOnEntityReturn.d.ts +10 -0
  304. package/dist/types/hooks/useSyncCollectionOnEntityReturn.d.ts.map +1 -0
  305. package/dist/types/hooks/useSyncCollectionOnEntityUpdate.d.ts +4 -0
  306. package/dist/types/hooks/useSyncCollectionOnEntityUpdate.d.ts.map +1 -0
  307. package/dist/types/index.d.ts +1 -1
  308. package/dist/types/index.d.ts.map +1 -1
  309. package/dist/types/model/tableColumn.d.ts +1 -1
  310. package/dist/types/model/tableColumn.d.ts.map +1 -1
  311. package/dist/types/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.d.ts +4 -0
  312. package/dist/types/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.d.ts.map +1 -0
  313. package/dist/types/state/EntityPage/EntityPageState.d.ts.map +1 -1
  314. package/dist/types/state/NestedTableState/NestedCollectionLevelDescriptor.d.ts +7 -2
  315. package/dist/types/state/NestedTableState/NestedCollectionLevelDescriptor.d.ts.map +1 -1
  316. package/dist/types/state/NestedTableState/NestedCollectionNodeState.d.ts +2 -0
  317. package/dist/types/state/NestedTableState/NestedCollectionNodeState.d.ts.map +1 -1
  318. package/dist/types/state/NestedTableState/NestedCollectionState.d.ts +8 -1
  319. package/dist/types/state/NestedTableState/NestedCollectionState.d.ts.map +1 -1
  320. package/dist/types/state/NestedTableState/NestedTableFlatModeState.d.ts +4 -2
  321. package/dist/types/state/NestedTableState/NestedTableFlatModeState.d.ts.map +1 -1
  322. package/dist/types/state/NestedTableState/NestedTableLevelDescriptor.d.ts +4 -1
  323. package/dist/types/state/NestedTableState/NestedTableLevelDescriptor.d.ts.map +1 -1
  324. package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts +8 -1
  325. package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts.map +1 -1
  326. package/dist/types/state/NestedTableState/NestedTableNodeState.d.ts +3 -8
  327. package/dist/types/state/NestedTableState/NestedTableNodeState.d.ts.map +1 -1
  328. package/dist/types/state/NestedTableState/NestedTableState.d.ts +2 -1
  329. package/dist/types/state/NestedTableState/NestedTableState.d.ts.map +1 -1
  330. package/dist/types/state/TableFoldersState.d.ts +1 -1
  331. package/dist/types/state/TableFoldersState.d.ts.map +1 -1
  332. package/dist/types/state/TableState.d.ts +1 -1
  333. package/dist/types/state/TableState.d.ts.map +1 -1
  334. package/dist/types/state/TableVirtualState.d.ts +10 -6
  335. package/dist/types/state/TableVirtualState.d.ts.map +1 -1
  336. package/dist/types/state/ToolbarCollectionState.d.ts +1 -0
  337. package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
  338. package/dist/types/state/WixPatternsRouterState.d.ts +1 -1
  339. package/dist/types/test-utils/getUniDriverStyle.d.ts +3 -0
  340. package/dist/types/test-utils/getUniDriverStyle.d.ts.map +1 -0
  341. package/dist/types/testkit/enzyme.d.ts +4 -0
  342. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  343. package/dist/types/testkit/jsdom.d.ts +4 -0
  344. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  345. package/dist/types/testkit/puppeteer.d.ts +4 -0
  346. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  347. package/dist/types/version.d.ts +1 -1
  348. package/package.json +3 -3
  349. package/dist/cjs/hooks/useCachedUpdatedEntity.js +0 -101
  350. package/dist/cjs/hooks/useCachedUpdatedEntity.js.map +0 -1
  351. package/dist/esm/hooks/useCachedUpdatedEntity.js +0 -99
  352. package/dist/esm/hooks/useCachedUpdatedEntity.js.map +0 -1
  353. package/dist/types/hooks/useCachedUpdatedEntity.d.ts +0 -3
  354. package/dist/types/hooks/useCachedUpdatedEntity.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","_NestedTableNodeStateBIReporter","NestedTableNodeState","constructor","params","_defineProperty2","default","TaskState","Map","createAtom","node","collection","retryErrorState","nestedTable","parentNode","parent","levelDescriptor","bi","NestedTableNodeStateBIReporter","multi","MultiCollectionSupport","collections","makeObservable","keyedItems","computed","_keyedItemsIfExpanded","_isNotExpandableWhenEmpty","init","action","createNode","_preRegisterAll","_toggleExpand","_notify","_notifyAll","_keyedItemsMap","getKeyedItem","_register","depth","_expanded","columns","renderMainColumn","showHoverHighlight","hoveredOrParentHovered","_changeHover","hovered","showEmptyState","showLoadingState","showInitialLoader","showRefreshLoader","showErrorState","errorStatus","result","isFetchAllAborted","Array","fill","map","_","index","id","key","pageIndex","indexWithinPage","item","state","originalKeyedItem","undefined","keyedItem","parentKeyToChildrenMap","parentKeyToChildrenMapAtom","reportObserved","flatMap","_parentKeyToChildrenM","get","getKeyedItemByIndex","ind","getCollectionSnapshot","_toolbar$viewsState","_originQuery$sort","originQuery","toolbar","viewShown","viewsState","views","currentView","tabShown","getCurrentTabName","sortOrderApplied","sort","length","JSON","stringify","filtersApplied","filtersKey","filteredListSizeShown","total","set","delete","_this$parentNode","promise","reportExpandCollapse","reportChanged","runInAction","_this$parentNode2","Promise","all","dispose","initTask","status","forEach","skipCollectionInit","disposers","runOnce","expandAll","d","existing","nextLevelDescriptor","levels","nextLevelNode","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNodeState.ts"],"sourcesContent":["import {\n FiltersMap,\n KeyedItem,\n MultiCollectionSupport,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport {\n action,\n computed,\n createAtom,\n makeObservable,\n runInAction,\n} from 'mobx';\nimport { TableColumn } from '../../model';\nimport { NestedTableNestedModeState } from './NestedTableNestedModeState';\nimport { ReactNode } from 'react';\nimport { NestedTableNodeStateBIReporter } from './NestedTableNodeStateBIReporter';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\n\nexport interface NestedTableDataItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: KeyedItem<T>;\n}\n\ninterface NestedTableSkeletonItem<C extends string, T, F extends FiltersMap> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: undefined;\n}\n\nexport type NestedTableItem<C extends string, T, F extends FiltersMap> =\n | NestedTableDataItem<C, T, F>\n | NestedTableSkeletonItem<C, T, F>;\n\nexport type NestedTableKeyedItem<\n C extends string,\n T,\n F extends FiltersMap,\n> = KeyedItem<NestedTableItem<C, T, F>>;\n\nexport type RenderMainColumn<T> = (item: T) => {\n title?: string;\n subtitle?: string;\n image?: ReactNode;\n};\n\nexport type NestedTableNestColumns<C extends string, T> = Partial<\n Record<C, TableColumn<T>['render']>\n>;\n\nexport interface NestedTableNodeStateParams<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n readonly nestedTable: NestedTableNestedModeState<C>;\n readonly node: NestedCollectionNodeState<T, F>;\n readonly levelDescriptor: NestedTableLevelDescriptor<C, T, F>;\n readonly parentNode: NestedTableNodeState<C, any, any> | null;\n readonly parent: KeyedItem<unknown> | null;\n}\n\nexport class NestedTableNodeState<C extends string, T, F extends FiltersMap> {\n readonly nestedTable;\n readonly node;\n\n readonly levelDescriptor;\n readonly parentNode;\n readonly parent;\n readonly bi: NestedTableNodeStateBIReporter<C, T, F>;\n\n readonly multi;\n\n _rowNum?: number;\n\n readonly initTask = new TaskState();\n\n readonly parentKeyToChildrenMap = new Map<\n string,\n NestedTableNodeState<C, any, any>\n >();\n\n readonly parentKeyToChildrenMapAtom = createAtom(\n 'parentKeyToChildrenMapAtom',\n );\n\n constructor(params: NestedTableNodeStateParams<C, T, F>) {\n this.nestedTable = params.nestedTable;\n this.node = params.node;\n this.parentNode = params.parentNode;\n this.parent = params.parent;\n this.levelDescriptor = params.levelDescriptor;\n this.bi = new NestedTableNodeStateBIReporter(this);\n\n this.multi = new MultiCollectionSupport({\n collections: [this.node.collection],\n });\n\n makeObservable(this, {\n keyedItems: computed,\n _keyedItemsIfExpanded: computed,\n _isNotExpandableWhenEmpty: computed,\n init: action,\n createNode: action,\n _preRegisterAll: action,\n _toggleExpand: action,\n _notify: action,\n _notifyAll: action,\n _keyedItemsMap: computed,\n getKeyedItem: action,\n });\n\n this._register();\n }\n\n get collection() {\n return this.node.collection;\n }\n\n get depth() {\n return this.levelDescriptor.depth;\n }\n\n get _expanded() {\n return this.node._expanded;\n }\n\n get columns() {\n return this.levelDescriptor.columns;\n }\n\n get renderMainColumn() {\n return this.levelDescriptor.renderMainColumn;\n }\n\n get showHoverHighlight() {\n return this.node.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this.node._changeHover(hovered);\n }\n\n get showEmptyState() {\n return this.node.collection.showEmptyState;\n }\n\n get showLoadingState() {\n return (\n this.node.collection.showInitialLoader ||\n this.node.collection.showRefreshLoader\n );\n }\n\n get showErrorState() {\n return this.node.collection.showErrorState;\n }\n\n get errorStatus() {\n return this.node.collection.result.errorStatus;\n }\n\n retryErrorState = () => this.node.collection.retryErrorState();\n\n get _isNotExpandableWhenEmpty() {\n const {\n nestedTable: { isFetchAllAborted },\n node: {\n collection: { showEmptyState },\n },\n } = this;\n return !isFetchAllAborted && showEmptyState;\n }\n\n get _keyedItemsIfExpanded(): NestedTableKeyedItem<C, any, any>[] {\n const {\n parent,\n nestedTable: { isFetchAllAborted },\n _expanded,\n node: {\n collection: { showRefreshLoader, showEmptyState, showErrorState },\n },\n } = this;\n\n if (!_expanded) {\n return [];\n }\n\n return [\n ...this.keyedItems,\n ...(parent &&\n isFetchAllAborted &&\n (showRefreshLoader || showEmptyState || showErrorState)\n ? new Array(1).fill(null).map((_, index) => ({\n id: `placeholder-states-${parent.key}`,\n key: `placeholder-states-${parent.key}`,\n index,\n pageIndex: 0,\n indexWithinPage: index,\n item: {\n state: this,\n originalKeyedItem: undefined,\n },\n }))\n : []),\n ];\n }\n\n get _keyedItemsMap(): Map<string, NestedTableKeyedItem<C, any, any>> {\n return new Map(\n this.keyedItems.map((keyedItem) => [keyedItem.key, keyedItem]),\n );\n }\n\n get keyedItems(): NestedTableKeyedItem<C, any, any>[] {\n const { node, parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n parentKeyToChildrenMapAtom.reportObserved();\n\n return keyedItems\n .flatMap((keyedItem) => [\n {\n ...keyedItem,\n item: {\n state: this,\n originalKeyedItem: keyedItem,\n },\n },\n ...(parentKeyToChildrenMap.get(keyedItem.key)?._keyedItemsIfExpanded ??\n []),\n ])\n .map((keyedItem, index) => ({ ...keyedItem, index }));\n }\n\n getKeyedItem(key: string) {\n return this._keyedItemsMap.get(key);\n }\n\n getKeyedItemByIndex(ind: number) {\n return this.keyedItems[ind];\n }\n\n getCollectionSnapshot() {\n const {\n collection: {\n result: { originQuery },\n },\n nestedTable: { toolbar },\n } = this;\n\n return {\n viewShown: toolbar.viewsState?.views.currentView?.id,\n tabShown: toolbar.getCurrentTabName(),\n sortOrderApplied: originQuery.sort?.length\n ? JSON.stringify(originQuery.sort)\n : undefined,\n filtersApplied: JSON.stringify(originQuery.filtersKey),\n filteredListSizeShown: this.collection.result.total,\n };\n }\n\n _register() {\n const { parent, parentNode } = this;\n\n if (parent == null || parentNode == null) {\n return;\n }\n\n parentNode.parentKeyToChildrenMap.set(parent.key, this);\n\n return () => {\n parentNode.parentKeyToChildrenMap.delete(parent.key);\n };\n }\n\n async _toggleExpand() {\n const promise = this.node._toggleExpand();\n this.bi.reportExpandCollapse();\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n await promise;\n runInAction(() => {\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n });\n }\n\n async _preRegisterAll() {\n const { node } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n await Promise.all(\n keyedItems.map(async (keyedItem) => {\n const state = this.createNode({ parent: keyedItem });\n if (state == null) {\n return;\n }\n const dispose = state.init();\n await state.initTask.status.promise;\n dispose();\n }),\n );\n }\n\n _notify() {\n const { parentKeyToChildrenMapAtom } = this;\n parentKeyToChildrenMapAtom.reportChanged();\n }\n\n _notifyAll() {\n const { parentKeyToChildrenMap } = this;\n this._notify();\n parentKeyToChildrenMap.forEach((state) => {\n state._notifyAll();\n });\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { node, initTask, nestedTable } = this;\n\n const disposers = [node.init({ skipCollectionInit })];\n\n initTask.runOnce(async () => {\n node.initTask.runOnce();\n await node.initTask.status.promise;\n\n await runInAction(async () => {\n if (!nestedTable.isFetchAllAborted && nestedTable.expandAll) {\n await this._preRegisterAll();\n if (this.depth === 0) {\n this._notifyAll();\n }\n }\n return;\n });\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n createNode({\n parent,\n }: {\n parent: KeyedItem<any>;\n }): NestedTableNodeState<C, any, any> | null {\n const { nestedTable, node, depth, parentKeyToChildrenMap } = this;\n\n const existing = parentKeyToChildrenMap.get(parent.key);\n\n if (existing != null) {\n return existing;\n }\n\n const nextLevelDescriptor = nestedTable.levels[depth + 1];\n\n if (nextLevelDescriptor == null) {\n return null;\n }\n\n const nextLevelNode = node._createNode(parent, {\n levelDescriptor: nextLevelDescriptor,\n });\n\n if (nextLevelNode == null) {\n return null;\n }\n\n return new NestedTableNodeState({\n parent,\n parentNode: this,\n nestedTable,\n node: nextLevelNode,\n levelDescriptor: nextLevelDescriptor,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","_NestedTableNodeStateBIReporter","NestedTableNodeState","constructor","params","_defineProperty2","default","TaskState","Map","createAtom","node","collection","retryErrorState","nestedTable","parentNode","parent","levelDescriptor","bi","NestedTableNodeStateBIReporter","multi","MultiCollectionSupport","collections","makeObservable","keyedItems","computed","_keyedItemsIfExpanded","_isNotExpandableWhenEmpty","init","action","createNode","_preRegisterAll","_toggleExpand","_notify","_notifyAll","_keyedItemsMap","getKeyedItem","_register","depth","_expanded","columns","renderMainColumn","showHoverHighlight","hoveredOrParentHovered","_changeHover","hovered","showEmptyState","showLoadingState","showInitialLoader","showRefreshLoader","showErrorState","errorStatus","result","isFetchAllAborted","Array","fill","map","_","index","id","key","pageIndex","indexWithinPage","item","state","originalKeyedItem","undefined","keyedItem","parentKeyToChildrenMap","parentKeyToChildrenMapAtom","reportObserved","flatMap","_parentKeyToChildrenM","get","getKeyedItemByIndex","ind","set","delete","_this$parentNode","promise","reportExpandCollapse","reportChanged","runInAction","_this$parentNode2","Promise","all","preRegister","dispose","initTask","status","forEach","skipCollectionInit","nestedTableDragAndDrop","disposers","initCollection","runOnce","expandAll","d","existing","nextLevelDescriptor","levels","nextLevelNode","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNodeState.ts"],"sourcesContent":["import {\n FiltersMap,\n KeyedItem,\n MultiCollectionSupport,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport {\n action,\n computed,\n createAtom,\n makeObservable,\n runInAction,\n} from 'mobx';\nimport { TableColumn } from '../../model';\nimport { NestedTableNestedModeState } from './NestedTableNestedModeState';\nimport { ReactNode } from 'react';\nimport { NestedTableNodeStateBIReporter } from './NestedTableNodeStateBIReporter';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\n\nexport interface NestedTableDataItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: KeyedItem<T>;\n}\n\ninterface NestedTableSkeletonItem<C extends string, T, F extends FiltersMap> {\n state: NestedTableNodeState<C, T, F>;\n originalKeyedItem: undefined;\n}\n\nexport type NestedTableItem<C extends string, T, F extends FiltersMap> =\n | NestedTableDataItem<C, T, F>\n | NestedTableSkeletonItem<C, T, F>;\n\nexport type NestedTableKeyedItem<\n C extends string,\n T,\n F extends FiltersMap,\n> = KeyedItem<NestedTableItem<C, T, F>>;\n\nexport type RenderMainColumn<T> = (item: T) => {\n title?: string;\n subtitle?: string;\n image?: ReactNode;\n};\n\nexport type NestedTableNestColumns<C extends string, T> = Partial<\n Record<C, TableColumn<T>['render']>\n>;\n\nexport interface NestedTableNodeStateParams<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n readonly nestedTable: NestedTableNestedModeState<C>;\n readonly node: NestedCollectionNodeState<T, F>;\n readonly levelDescriptor: NestedTableLevelDescriptor<C, T, F>;\n readonly parentNode: NestedTableNodeState<C, any, any> | null;\n readonly parent: KeyedItem<unknown> | null;\n readonly preRegister?: boolean;\n}\n\nexport class NestedTableNodeState<C extends string, T, F extends FiltersMap> {\n readonly nestedTable;\n readonly node;\n\n readonly levelDescriptor;\n readonly parentNode;\n readonly parent;\n readonly bi: NestedTableNodeStateBIReporter<C, T, F>;\n\n readonly multi;\n\n _rowNum?: number;\n\n readonly initTask = new TaskState();\n\n readonly parentKeyToChildrenMap = new Map<\n string,\n NestedTableNodeState<C, any, any>\n >();\n\n readonly parentKeyToChildrenMapAtom = createAtom(\n 'parentKeyToChildrenMapAtom',\n );\n\n constructor(params: NestedTableNodeStateParams<C, T, F>) {\n this.nestedTable = params.nestedTable;\n this.node = params.node;\n this.parentNode = params.parentNode;\n this.parent = params.parent;\n this.levelDescriptor = params.levelDescriptor;\n this.bi = new NestedTableNodeStateBIReporter(this);\n\n this.multi = new MultiCollectionSupport({\n collections: [this.node.collection],\n });\n\n makeObservable(this, {\n keyedItems: computed,\n _keyedItemsIfExpanded: computed,\n _isNotExpandableWhenEmpty: computed,\n init: action,\n createNode: action,\n _preRegisterAll: action,\n _toggleExpand: action,\n _notify: action,\n _notifyAll: action,\n _keyedItemsMap: computed,\n getKeyedItem: action,\n });\n\n this._register();\n }\n\n get collection() {\n return this.node.collection;\n }\n\n get depth() {\n return this.levelDescriptor.depth;\n }\n\n get _expanded() {\n return this.node._expanded;\n }\n\n get columns() {\n return this.levelDescriptor.columns;\n }\n\n get renderMainColumn() {\n return this.levelDescriptor.renderMainColumn;\n }\n\n get showHoverHighlight() {\n return this.node.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this.node._changeHover(hovered);\n }\n\n get showEmptyState() {\n return this.node.collection.showEmptyState;\n }\n\n get showLoadingState() {\n return (\n this.node.collection.showInitialLoader ||\n this.node.collection.showRefreshLoader\n );\n }\n\n get showErrorState() {\n return this.node.collection.showErrorState;\n }\n\n get errorStatus() {\n return this.node.collection.result.errorStatus;\n }\n\n retryErrorState = () => this.node.collection.retryErrorState();\n\n get _isNotExpandableWhenEmpty() {\n const {\n nestedTable: { isFetchAllAborted },\n node: {\n collection: { showEmptyState },\n },\n } = this;\n return !isFetchAllAborted && showEmptyState;\n }\n\n get _keyedItemsIfExpanded(): NestedTableKeyedItem<C, any, any>[] {\n const {\n parent,\n nestedTable: { isFetchAllAborted },\n _expanded,\n node: {\n collection: { showRefreshLoader, showEmptyState, showErrorState },\n },\n } = this;\n\n if (!_expanded) {\n return [];\n }\n\n return [\n ...this.keyedItems,\n ...(parent &&\n isFetchAllAborted &&\n (showRefreshLoader || showEmptyState || showErrorState)\n ? new Array(1).fill(null).map((_, index) => ({\n id: `placeholder-states-${parent.key}`,\n key: `placeholder-states-${parent.key}`,\n index,\n pageIndex: 0,\n indexWithinPage: index,\n item: {\n state: this,\n originalKeyedItem: undefined,\n },\n }))\n : []),\n ];\n }\n\n get _keyedItemsMap(): Map<string, NestedTableKeyedItem<C, any, any>> {\n return new Map(\n this.keyedItems.map((keyedItem) => [keyedItem.key, keyedItem]),\n );\n }\n\n get keyedItems(): NestedTableKeyedItem<C, any, any>[] {\n const { node, parentKeyToChildrenMap, parentKeyToChildrenMapAtom } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n parentKeyToChildrenMapAtom.reportObserved();\n\n return keyedItems\n .flatMap((keyedItem) => [\n {\n ...keyedItem,\n item: {\n state: this,\n originalKeyedItem: keyedItem,\n },\n },\n ...(parentKeyToChildrenMap.get(keyedItem.key)?._keyedItemsIfExpanded ??\n []),\n ])\n .map((keyedItem, index) => ({ ...keyedItem, index }));\n }\n\n getKeyedItem(key: string) {\n return this._keyedItemsMap.get(key);\n }\n\n getKeyedItemByIndex(ind: number) {\n return this.keyedItems[ind];\n }\n\n _register() {\n const { parent, parentNode } = this;\n\n if (parent == null || parentNode == null) {\n return;\n }\n\n parentNode.parentKeyToChildrenMap.set(parent.key, this);\n\n return () => {\n parentNode.parentKeyToChildrenMap.delete(parent.key);\n };\n }\n\n async _toggleExpand() {\n const promise = this.node._toggleExpand();\n this.bi.reportExpandCollapse();\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n await promise;\n runInAction(() => {\n this.parentNode?.parentKeyToChildrenMapAtom.reportChanged();\n });\n }\n\n async _preRegisterAll() {\n const { node } = this;\n const {\n collection: {\n result: { keyedItems },\n },\n } = node;\n\n await Promise.all(\n keyedItems.map(async (keyedItem) => {\n const state = this.createNode({ parent: keyedItem, preRegister: true });\n if (state == null) {\n return;\n }\n const dispose = state.init();\n await state.initTask.status.promise;\n dispose();\n }),\n );\n }\n\n _notify() {\n const { parentKeyToChildrenMapAtom } = this;\n parentKeyToChildrenMapAtom.reportChanged();\n }\n\n _notifyAll() {\n const { parentKeyToChildrenMap } = this;\n this._notify();\n parentKeyToChildrenMap.forEach((state) => {\n state._notifyAll();\n });\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { node, initTask, nestedTable, collection } = this;\n\n const { nestedTableDragAndDrop } = nestedTable;\n\n const disposers = [\n node.init({ skipCollectionInit }),\n nestedTableDragAndDrop?.initCollection(collection),\n ];\n\n initTask.runOnce(async () => {\n node.initTask.runOnce();\n await node.initTask.status.promise;\n\n await runInAction(async () => {\n if (!nestedTable.isFetchAllAborted && nestedTable.expandAll) {\n await this._preRegisterAll();\n if (this.depth === 0) {\n this._notifyAll();\n }\n }\n return;\n });\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n createNode({\n parent,\n preRegister,\n }: {\n parent: KeyedItem<any>;\n preRegister?: boolean;\n }): NestedTableNodeState<C, any, any> | null {\n const { nestedTable, node, depth, parentKeyToChildrenMap } = this;\n\n const existing = parentKeyToChildrenMap.get(parent.key);\n\n if (existing != null) {\n return existing;\n }\n\n const nextLevelDescriptor = nestedTable.levels[depth + 1];\n\n if (nextLevelDescriptor == null) {\n return null;\n }\n\n const nextLevelNode = node._createNode(parent, {\n levelDescriptor: nextLevelDescriptor,\n preRegister,\n });\n\n if (nextLevelNode == null) {\n return null;\n }\n\n return new NestedTableNodeState({\n parent,\n parentNode: this,\n nestedTable,\n node: nextLevelNode,\n levelDescriptor: nextLevelDescriptor,\n preRegister,\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,KAAA,GAAAD,OAAA;AAUA,IAAAE,+BAAA,GAAAF,OAAA;AAkDO,MAAMG,oBAAoB,CAA4C;EAwB3EC,WAAWA,CAACC,MAA2C,EAAE;IAAA,IAAAC,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,oBAXrC,IAAIC,kBAAS,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,kCAED,IAAIE,GAAG,CAGvC,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,sCAEmC,IAAAG,gBAAU,EAC9C,4BACF,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,2BA8EiB,MAAM,IAAI,CAACI,IAAI,CAACC,UAAU,CAACC,eAAe,CAAC,CAAC;IA3E5D,IAAI,CAACC,WAAW,GAAGT,MAAM,CAACS,WAAW;IACrC,IAAI,CAACH,IAAI,GAAGN,MAAM,CAACM,IAAI;IACvB,IAAI,CAACI,UAAU,GAAGV,MAAM,CAACU,UAAU;IACnC,IAAI,CAACC,MAAM,GAAGX,MAAM,CAACW,MAAM;IAC3B,IAAI,CAACC,eAAe,GAAGZ,MAAM,CAACY,eAAe;IAC7C,IAAI,CAACC,EAAE,GAAG,IAAIC,8DAA8B,CAAC,IAAI,CAAC;IAElD,IAAI,CAACC,KAAK,GAAG,IAAIC,+BAAsB,CAAC;MACtCC,WAAW,EAAE,CAAC,IAAI,CAACX,IAAI,CAACC,UAAU;IACpC,CAAC,CAAC;IAEF,IAAAW,oBAAc,EAAC,IAAI,EAAE;MACnBC,UAAU,EAAEC,cAAQ;MACpBC,qBAAqB,EAAED,cAAQ;MAC/BE,yBAAyB,EAAEF,cAAQ;MACnCG,IAAI,EAAEC,YAAM;MACZC,UAAU,EAAED,YAAM;MAClBE,eAAe,EAAEF,YAAM;MACvBG,aAAa,EAAEH,YAAM;MACrBI,OAAO,EAAEJ,YAAM;MACfK,UAAU,EAAEL,YAAM;MAClBM,cAAc,EAAEV,cAAQ;MACxBW,YAAY,EAAEP;IAChB,CAAC,CAAC;IAEF,IAAI,CAACQ,SAAS,CAAC,CAAC;EAClB;EAEA,IAAIzB,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACD,IAAI,CAACC,UAAU;EAC7B;EAEA,IAAI0B,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACrB,eAAe,CAACqB,KAAK;EACnC;EAEA,IAAIC,SAASA,CAAA,EAAG;IACd,OAAO,IAAI,CAAC5B,IAAI,CAAC4B,SAAS;EAC5B;EAEA,IAAIC,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACvB,eAAe,CAACuB,OAAO;EACrC;EAEA,IAAIC,gBAAgBA,CAAA,EAAG;IACrB,OAAO,IAAI,CAACxB,eAAe,CAACwB,gBAAgB;EAC9C;EAEA,IAAIC,kBAAkBA,CAAA,EAAG;IACvB,OAAO,IAAI,CAAC/B,IAAI,CAACgC,sBAAsB;EACzC;EAEAC,YAAYA,CAACC,OAAgB,EAAE;IAC7B,IAAI,CAAClC,IAAI,CAACiC,YAAY,CAACC,OAAO,CAAC;EACjC;EAEA,IAAIC,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACnC,IAAI,CAACC,UAAU,CAACkC,cAAc;EAC5C;EAEA,IAAIC,gBAAgBA,CAAA,EAAG;IACrB,OACE,IAAI,CAACpC,IAAI,CAACC,UAAU,CAACoC,iBAAiB,IACtC,IAAI,CAACrC,IAAI,CAACC,UAAU,CAACqC,iBAAiB;EAE1C;EAEA,IAAIC,cAAcA,CAAA,EAAG;IACnB,OAAO,IAAI,CAACvC,IAAI,CAACC,UAAU,CAACsC,cAAc;EAC5C;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACxC,IAAI,CAACC,UAAU,CAACwC,MAAM,CAACD,WAAW;EAChD;EAIA,IAAIxB,yBAAyBA,CAAA,EAAG;IAC9B,MAAM;MACJb,WAAW,EAAE;QAAEuC;MAAkB,CAAC;MAClC1C,IAAI,EAAE;QACJC,UAAU,EAAE;UAAEkC;QAAe;MAC/B;IACF,CAAC,GAAG,IAAI;IACR,OAAO,CAACO,iBAAiB,IAAIP,cAAc;EAC7C;EAEA,IAAIpB,qBAAqBA,CAAA,EAAwC;IAC/D,MAAM;MACJV,MAAM;MACNF,WAAW,EAAE;QAAEuC;MAAkB,CAAC;MAClCd,SAAS;MACT5B,IAAI,EAAE;QACJC,UAAU,EAAE;UAAEqC,iBAAiB;UAAEH,cAAc;UAAEI;QAAe;MAClE;IACF,CAAC,GAAG,IAAI;IAER,IAAI,CAACX,SAAS,EAAE;MACd,OAAO,EAAE;IACX;IAEA,OAAO,CACL,GAAG,IAAI,CAACf,UAAU,EAClB,IAAIR,MAAM,IACVqC,iBAAiB,KAChBJ,iBAAiB,IAAIH,cAAc,IAAII,cAAc,CAAC,GACnD,IAAII,KAAK,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,CAACC,GAAG,CAAC,CAACC,CAAC,EAAEC,KAAK,MAAM;MACzCC,EAAE,EAAE,sBAAsB3C,MAAM,CAAC4C,GAAG,EAAE;MACtCA,GAAG,EAAE,sBAAsB5C,MAAM,CAAC4C,GAAG,EAAE;MACvCF,KAAK;MACLG,SAAS,EAAE,CAAC;MACZC,eAAe,EAAEJ,KAAK;MACtBK,IAAI,EAAE;QACJC,KAAK,EAAE,IAAI;QACXC,iBAAiB,EAAEC;MACrB;IACF,CAAC,CAAC,CAAC,GACH,EAAE,CAAC,CACR;EACH;EAEA,IAAI/B,cAAcA,CAAA,EAAmD;IACnE,OAAO,IAAI1B,GAAG,CACZ,IAAI,CAACe,UAAU,CAACgC,GAAG,CAAEW,SAAS,IAAK,CAACA,SAAS,CAACP,GAAG,EAAEO,SAAS,CAAC,CAC/D,CAAC;EACH;EAEA,IAAI3C,UAAUA,CAAA,EAAwC;IACpD,MAAM;MAAEb,IAAI;MAAEyD,sBAAsB;MAAEC;IAA2B,CAAC,GAAG,IAAI;IACzE,MAAM;MACJzD,UAAU,EAAE;QACVwC,MAAM,EAAE;UAAE5B;QAAW;MACvB;IACF,CAAC,GAAGb,IAAI;IAER0D,0BAA0B,CAACC,cAAc,CAAC,CAAC;IAE3C,OAAO9C,UAAU,CACd+C,OAAO,CAAEJ,SAAS;MAAA,IAAAK,qBAAA;MAAA,OAAK,CACtB;QACE,GAAGL,SAAS;QACZJ,IAAI,EAAE;UACJC,KAAK,EAAE,IAAI;UACXC,iBAAiB,EAAEE;QACrB;MACF,CAAC,EACD,IAAI,EAAAK,qBAAA,GAAAJ,sBAAsB,CAACK,GAAG,CAACN,SAAS,CAACP,GAAG,CAAC,qBAAzCY,qBAAA,CAA2C9C,qBAAqB,KAClE,EAAE,CAAC,CACN;IAAA,EAAC,CACD8B,GAAG,CAAC,CAACW,SAAS,EAAET,KAAK,MAAM;MAAE,GAAGS,SAAS;MAAET;IAAM,CAAC,CAAC,CAAC;EACzD;EAEAtB,YAAYA,CAACwB,GAAW,EAAE;IACxB,OAAO,IAAI,CAACzB,cAAc,CAACsC,GAAG,CAACb,GAAG,CAAC;EACrC;EAEAc,mBAAmBA,CAACC,GAAW,EAAE;IAC/B,OAAO,IAAI,CAACnD,UAAU,CAACmD,GAAG,CAAC;EAC7B;EAEAtC,SAASA,CAAA,EAAG;IACV,MAAM;MAAErB,MAAM;MAAED;IAAW,CAAC,GAAG,IAAI;IAEnC,IAAIC,MAAM,IAAI,IAAI,IAAID,UAAU,IAAI,IAAI,EAAE;MACxC;IACF;IAEAA,UAAU,CAACqD,sBAAsB,CAACQ,GAAG,CAAC5D,MAAM,CAAC4C,GAAG,EAAE,IAAI,CAAC;IAEvD,OAAO,MAAM;MACX7C,UAAU,CAACqD,sBAAsB,CAACS,MAAM,CAAC7D,MAAM,CAAC4C,GAAG,CAAC;IACtD,CAAC;EACH;EAEA,MAAM5B,aAAaA,CAAA,EAAG;IAAA,IAAA8C,gBAAA;IACpB,MAAMC,OAAO,GAAG,IAAI,CAACpE,IAAI,CAACqB,aAAa,CAAC,CAAC;IACzC,IAAI,CAACd,EAAE,CAAC8D,oBAAoB,CAAC,CAAC;IAC9B,CAAAF,gBAAA,OAAI,CAAC/D,UAAU,aAAf+D,gBAAA,CAAiBT,0BAA0B,CAACY,aAAa,CAAC,CAAC;IAC3D,MAAMF,OAAO;IACb,IAAAG,iBAAW,EAAC,MAAM;MAAA,IAAAC,iBAAA;MAChB,CAAAA,iBAAA,OAAI,CAACpE,UAAU,aAAfoE,iBAAA,CAAiBd,0BAA0B,CAACY,aAAa,CAAC,CAAC;IAC7D,CAAC,CAAC;EACJ;EAEA,MAAMlD,eAAeA,CAAA,EAAG;IACtB,MAAM;MAAEpB;IAAK,CAAC,GAAG,IAAI;IACrB,MAAM;MACJC,UAAU,EAAE;QACVwC,MAAM,EAAE;UAAE5B;QAAW;MACvB;IACF,CAAC,GAAGb,IAAI;IAER,MAAMyE,OAAO,CAACC,GAAG,CACf7D,UAAU,CAACgC,GAAG,CAAC,MAAOW,SAAS,IAAK;MAClC,MAAMH,KAAK,GAAG,IAAI,CAAClC,UAAU,CAAC;QAAEd,MAAM,EAAEmD,SAAS;QAAEmB,WAAW,EAAE;MAAK,CAAC,CAAC;MACvE,IAAItB,KAAK,IAAI,IAAI,EAAE;QACjB;MACF;MACA,MAAMuB,OAAO,GAAGvB,KAAK,CAACpC,IAAI,CAAC,CAAC;MAC5B,MAAMoC,KAAK,CAACwB,QAAQ,CAACC,MAAM,CAACV,OAAO;MACnCQ,OAAO,CAAC,CAAC;IACX,CAAC,CACH,CAAC;EACH;EAEAtD,OAAOA,CAAA,EAAG;IACR,MAAM;MAAEoC;IAA2B,CAAC,GAAG,IAAI;IAC3CA,0BAA0B,CAACY,aAAa,CAAC,CAAC;EAC5C;EAEA/C,UAAUA,CAAA,EAAG;IACX,MAAM;MAAEkC;IAAuB,CAAC,GAAG,IAAI;IACvC,IAAI,CAACnC,OAAO,CAAC,CAAC;IACdmC,sBAAsB,CAACsB,OAAO,CAAE1B,KAAK,IAAK;MACxCA,KAAK,CAAC9B,UAAU,CAAC,CAAC;IACpB,CAAC,CAAC;EACJ;EAEAN,IAAIA,CAAC;IAAE+D;EAAqD,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,MAAM;MAAEhF,IAAI;MAAE6E,QAAQ;MAAE1E,WAAW;MAAEF;IAAW,CAAC,GAAG,IAAI;IAExD,MAAM;MAAEgF;IAAuB,CAAC,GAAG9E,WAAW;IAE9C,MAAM+E,SAAS,GAAG,CAChBlF,IAAI,CAACiB,IAAI,CAAC;MAAE+D;IAAmB,CAAC,CAAC,EACjCC,sBAAsB,oBAAtBA,sBAAsB,CAAEE,cAAc,CAAClF,UAAU,CAAC,CACnD;IAED4E,QAAQ,CAACO,OAAO,CAAC,YAAY;MAC3BpF,IAAI,CAAC6E,QAAQ,CAACO,OAAO,CAAC,CAAC;MACvB,MAAMpF,IAAI,CAAC6E,QAAQ,CAACC,MAAM,CAACV,OAAO;MAElC,MAAM,IAAAG,iBAAW,EAAC,YAAY;QAC5B,IAAI,CAACpE,WAAW,CAACuC,iBAAiB,IAAIvC,WAAW,CAACkF,SAAS,EAAE;UAC3D,MAAM,IAAI,CAACjE,eAAe,CAAC,CAAC;UAC5B,IAAI,IAAI,CAACO,KAAK,KAAK,CAAC,EAAE;YACpB,IAAI,CAACJ,UAAU,CAAC,CAAC;UACnB;QACF;QACA;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,MAAM;MACX2D,SAAS,CAACH,OAAO,CAAEO,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IACjC,CAAC;EACH;EAEAnE,UAAUA,CAAC;IACTd,MAAM;IACNsE;EAIF,CAAC,EAA4C;IAC3C,MAAM;MAAExE,WAAW;MAAEH,IAAI;MAAE2B,KAAK;MAAE8B;IAAuB,CAAC,GAAG,IAAI;IAEjE,MAAM8B,QAAQ,GAAG9B,sBAAsB,CAACK,GAAG,CAACzD,MAAM,CAAC4C,GAAG,CAAC;IAEvD,IAAIsC,QAAQ,IAAI,IAAI,EAAE;MACpB,OAAOA,QAAQ;IACjB;IAEA,MAAMC,mBAAmB,GAAGrF,WAAW,CAACsF,MAAM,CAAC9D,KAAK,GAAG,CAAC,CAAC;IAEzD,IAAI6D,mBAAmB,IAAI,IAAI,EAAE;MAC/B,OAAO,IAAI;IACb;IAEA,MAAME,aAAa,GAAG1F,IAAI,CAAC2F,WAAW,CAACtF,MAAM,EAAE;MAC7CC,eAAe,EAAEkF,mBAAmB;MACpCb;IACF,CAAC,CAAC;IAEF,IAAIe,aAAa,IAAI,IAAI,EAAE;MACzB,OAAO,IAAI;IACb;IAEA,OAAO,IAAIlG,oBAAoB,CAAC;MAC9Ba,MAAM;MACND,UAAU,EAAE,IAAI;MAChBD,WAAW;MACXH,IAAI,EAAE0F,aAAa;MACnBpF,eAAe,EAAEkF,mBAAmB;MACpCb;IACF,CAAC,CAAC;EACJ;AACF;AAACiB,OAAA,CAAApG,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -26,6 +26,7 @@ class NestedTableState {
26
26
  (0, _defineProperty2.default)(this, "query", void 0);
27
27
  (0, _defineProperty2.default)(this, "nested", void 0);
28
28
  (0, _defineProperty2.default)(this, "flat", void 0);
29
+ (0, _defineProperty2.default)(this, "sequences", new Map());
29
30
  this.container = params.container;
30
31
  this.query = new _bexCore.QueryState({
31
32
  filters: {}
@@ -43,7 +44,11 @@ class NestedTableState {
43
44
  if (rootLevelDescriptor == null) {
44
45
  throw new Error('NestedTableState must have at least one level');
45
46
  }
46
- this.rootNodeCollection = rootLevelDescriptor.createCollection();
47
+ this.rootNodeCollection = rootLevelDescriptor.createCollection({
48
+ parent: null,
49
+ sequences: this.sequences,
50
+ query: this.query
51
+ });
47
52
  const {
48
53
  collection
49
54
  } = this.rootNodeCollection;
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_ToolbarCollectionState","_TableState","_NestedTableNestedModeState","_NestedTableFlatModeState","_NestedCollectionFetchAllState","_util","_mobx","NestedTableState","constructor","params","_defineProperty2","default","TaskState","container","query","QueryState","filters","levels","map","level","i","depth","options","fetchAllThreshold","expandAllThreshold","mainColumn","rootLevelDescriptor","Error","rootNodeCollection","createCollection","collection","syncWithSharedQuery","reportBi","reportProps","isFetchAllAborted","componentStatus","toolbar","ToolbarCollectionState","componentType","setNewColumns","columns","column","render","tableState","TableState","nested","NestedTableNestedModeState","wrapper","flat","NestedTableFlatModeState","expandAll","nestedCollection","_attemptFetchAllAndPopulateCache","initTask","init","runOnce","fetchAllState","NestedCollectionFetchAllState","nestedCollectionState","disposers","status","promise","forEach","d","isFlatMode","hasActiveFilters","attemptFetchAllState","reaction","_fields","add","delete","fireImmediately","addEventListener","emitter","sections","featuresInitializers","reset","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n QueryState,\n ReportBI,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { ToolbarCollectionState } from '../ToolbarCollectionState';\nimport { TableState } from '../TableState';\nimport { TableColumn } from '../../model';\nimport { NestedTableColumn } from './NestedTableColumn';\nimport { NestedTableNestedModeState } from './NestedTableNestedModeState';\nimport { NestedTableFlatModeState } from './NestedTableFlatModeState';\nimport { NestedCollectionFetchAllState } from './NestedCollectionFetchAllState';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\nimport { EagerLazyModeOptions } from './types';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { reaction } from 'mobx';\nimport { ICollectionComponentState } from '../ICollectionComponentState';\n\nexport interface NestedTableStateBaseParams<C extends string> {\n /**\n * If the total items in the server are less or equal to this threshold, all items will be fetched and rendered at once, in expanded state (referred to as \"Eager\" mode).\n * @default 1000\n */\n fetchAllThreshold?: number;\n /**\n * In \"Eager\" mode, items will be in expanded state. This threshold allows to use collapsed state if the total items in the server are greater than this threshold.\n * @default 0\n */\n expandAllThreshold?: number;\n /**\n * Columns to be rendered in the nested table. Same as [regular table columns](./?path=/story/base-components-collections-table-table--table) - without rendering logic of cells (defined for each level individually in the `levels` prop).\n */\n columns: NestedTableColumn<C>[];\n /**\n * Main column of the nested table.\n * An object with the following properties:\n * - `title`: The title of the column. @default ''\n * - `width`: The width of the column. Can be a number (in pixels) or a string (percentage). @default '326px'\n */\n mainColumn?: {\n title?: string;\n width?: number | string;\n };\n /**\n * Defines the collection for each level in the nested table.\n * Each level needs to specify:\n * - `createCollection`: A function that creates a collection for the current level (using `useCreateCollection` hook), and returns the collection state and a reference to a filter object within this collection that filters the collection by the parent key.\n * - `parentKey`: A function that accepts the item of the current level and returns the key of the parent item, for example: `(item) => item.parentId`.\n * - `breadcrumbs`: A function that accepts the item of the current level and returns an array of breadcrumbs to be displayed in the toolbar. Each breadcrumb is an object with `id` and `name` properties. `fetchData` will be called with `query.fields` that contains the value `breadcrumbs` to signal that the breadcrumbs should be fetched.\n * - `columns` (optional): Render logic of the cells for this level. By default all cells will be empty.\n * - `renderMainColumn` (optional): Render logic of the main column for this level.\n * - `actionCell` (optional): A table's last column. Use this column to add an action at the end of each row. For example, a delete button to delete an item. Pass an [`ActionCellProps`](https://www.docs.wixdesignsystem.com/?path=/story/components-lists-table--tableactioncell) object, or a function that returns an `ActionCellProps` object.\n<\n */\n levels: Omit<NestedTableLevelDescriptor<C, any, any>, 'depth'>[];\n}\n\nexport interface NestedTableStateParams<C extends string>\n extends NestedTableStateBaseParams<C> {\n container: WixPatternsContainer;\n}\n\nexport interface NestedTableStatePublicAPI {\n /**\n * Underlying [ToolbarCollectionState](./?path=/story/common-state--toolbarcollectionstate) instance\n */\n readonly toolbar: ToolbarCollectionState<unknown, {}>;\n /**\n * Underlying [TableState](./?path=/story/base-components-collections-table-tablestate--tablestate) instance\n */\n readonly tableState: TableState<unknown, {}>;\n}\n\nexport class NestedTableState<C extends string = string>\n implements ICollectionComponentState, NestedTableStatePublicAPI\n{\n readonly container;\n readonly reportBi: ReportBI;\n readonly toolbar;\n readonly tableState;\n readonly mainColumn;\n readonly options: EagerLazyModeOptions;\n\n readonly initTask = new TaskState();\n\n readonly levels: NestedTableLevelDescriptor<C, any, any>[];\n\n readonly rootNodeCollection;\n readonly query;\n\n readonly nested: NestedTableNestedModeState<C>;\n readonly flat: NestedTableFlatModeState<C>;\n\n constructor(params: NestedTableStateParams<C>) {\n this.container = params.container;\n\n this.query = new QueryState({\n filters: {},\n });\n\n this.levels = params.levels.map((level, i) => ({\n ...level,\n depth: i,\n }));\n\n this.options = {\n fetchAllThreshold: params.fetchAllThreshold ?? 1000,\n expandAllThreshold: params.expandAllThreshold ?? 0,\n };\n\n this.mainColumn = params.mainColumn;\n const rootLevelDescriptor = this.levels[0];\n\n if (rootLevelDescriptor == null) {\n throw new Error('NestedTableState must have at least one level');\n }\n\n this.rootNodeCollection = rootLevelDescriptor.createCollection();\n\n const { collection } = this.rootNodeCollection;\n\n syncWithSharedQuery(collection.query, this.query);\n\n this.reportBi = (reportProps) => {\n const { isFetchAllAborted } = this;\n this.container.reportBi({\n ...reportProps,\n params: {\n ...reportProps.params,\n ...(isFetchAllAborted != null && {\n componentStatus: isFetchAllAborted\n ? 'All items collapsed'\n : 'All items expanded',\n }),\n },\n });\n };\n\n this.toolbar = new ToolbarCollectionState({\n collection: this.rootNodeCollection.collection,\n container: params.container,\n componentType: 'NestedTable',\n reportBi: this.reportBi,\n });\n\n this.toolbar.setNewColumns(\n params.columns.map((column) => ({\n ...column,\n render: () => null,\n })) as TableColumn<unknown>[],\n );\n\n this.tableState = new TableState({\n collection: this.rootNodeCollection.collection,\n container: params.container,\n toolbar: this.toolbar,\n });\n\n this.nested = new NestedTableNestedModeState({\n wrapper: this,\n reportBi: this.reportBi,\n });\n\n this.flat = new NestedTableFlatModeState({\n wrapper: this,\n });\n }\n\n get isFetchAllAborted() {\n return this.nested.isFetchAllAborted;\n }\n\n get expandAll() {\n return this.nested.expandAll;\n }\n\n get nestedCollection() {\n return this.nested.nestedCollection;\n }\n\n _attemptFetchAllAndPopulateCache() {\n const initTask = new TaskState();\n return {\n initTask,\n init: () => {\n initTask.runOnce(async () => {\n const fetchAllState = new NestedCollectionFetchAllState({\n options: this.options,\n query: this.nested.query,\n nestedCollectionState: this.nested.nestedCollection,\n });\n\n const disposers = [fetchAllState.init()];\n\n try {\n await fetchAllState.initTask.status.promise;\n } finally {\n disposers.forEach((d) => d());\n }\n });\n\n return () => {};\n },\n };\n }\n\n get isFlatMode() {\n return this.query.hasActiveFilters;\n }\n\n init() {\n const { initTask, tableState, query, rootNodeCollection, flat } = this;\n\n const attemptFetchAllState = this._attemptFetchAllAndPopulateCache();\n\n const disposers = [\n query.init(),\n reaction(\n () => this.isFlatMode,\n (isFlatMode) => {\n const {\n query: { _fields },\n } = this;\n if (isFlatMode) {\n _fields.add('breadcrumbs');\n } else {\n _fields.delete('breadcrumbs');\n }\n },\n { fireImmediately: true },\n ),\n addEventListener(\n rootNodeCollection.collection.emitter,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n ...flat.sections.map(({ collection }) =>\n addEventListener(\n collection.emitter,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n ),\n attemptFetchAllState.init(),\n tableState.init({\n featuresInitializers: [],\n }),\n ];\n\n initTask.runOnce(async () => {\n tableState.initTask.runOnce();\n attemptFetchAllState.initTask.runOnce();\n await attemptFetchAllState.initTask.status.promise;\n await tableState.initTask.status.promise;\n });\n\n return () => {\n initTask.reset();\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_ToolbarCollectionState","_TableState","_NestedTableNestedModeState","_NestedTableFlatModeState","_NestedCollectionFetchAllState","_util","_mobx","NestedTableState","constructor","params","_defineProperty2","default","TaskState","Map","container","query","QueryState","filters","levels","map","level","i","depth","options","fetchAllThreshold","expandAllThreshold","mainColumn","rootLevelDescriptor","Error","rootNodeCollection","createCollection","parent","sequences","collection","syncWithSharedQuery","reportBi","reportProps","isFetchAllAborted","componentStatus","toolbar","ToolbarCollectionState","componentType","setNewColumns","columns","column","render","tableState","TableState","nested","NestedTableNestedModeState","wrapper","flat","NestedTableFlatModeState","expandAll","nestedCollection","_attemptFetchAllAndPopulateCache","initTask","init","runOnce","fetchAllState","NestedCollectionFetchAllState","nestedCollectionState","disposers","status","promise","forEach","d","isFlatMode","hasActiveFilters","attemptFetchAllState","reaction","_fields","add","delete","fireImmediately","addEventListener","emitter","sections","featuresInitializers","reset","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n QueryState,\n ReportBI,\n syncWithSharedQuery,\n TaskState,\n CollectionOptimisticSequenceExecutor,\n} from '@wix/bex-core';\nimport { ToolbarCollectionState } from '../ToolbarCollectionState';\nimport { TableState } from '../TableState';\nimport { TableColumn } from '../../model';\nimport { NestedTableColumn } from './NestedTableColumn';\nimport { NestedTableNestedModeState } from './NestedTableNestedModeState';\nimport { NestedTableFlatModeState } from './NestedTableFlatModeState';\nimport { NestedCollectionFetchAllState } from './NestedCollectionFetchAllState';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\nimport { EagerLazyModeOptions } from './types';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { reaction } from 'mobx';\nimport { ICollectionComponentState } from '../ICollectionComponentState';\n\nexport interface NestedTableStateBaseParams<C extends string> {\n /**\n * If the total items in the server are less or equal to this threshold, all items will be fetched and rendered at once, in expanded state (referred to as \"Eager\" mode).\n * @default 1000\n */\n fetchAllThreshold?: number;\n /**\n * In \"Eager\" mode, items will be in expanded state. This threshold allows to use collapsed state if the total items in the server are greater than this threshold.\n * @default 0\n */\n expandAllThreshold?: number;\n /**\n * Columns to be rendered in the nested table. Same as [regular table columns](./?path=/story/base-components-collections-table-table--table) - without rendering logic of cells (defined for each level individually in the `levels` prop).\n */\n columns: NestedTableColumn<C>[];\n /**\n * Main column of the nested table.\n * An object with the following properties:\n * - `title`: The title of the column. @default ''\n * - `width`: The width of the column. Can be a number (in pixels) or a string (percentage). @default '326px'\n */\n mainColumn?: {\n title?: string;\n width?: number | string;\n };\n /**\n * Defines the collection for each level in the nested table.\n * Each level needs to specify:\n * - `createCollection`: A function that creates a collection for the current level (using `useCreateCollection` hook), and returns the collection state and a reference to a filter object within this collection that filters the collection by the parent key.\n * - `parentKey`: A function that accepts the item of the current level and returns the key of the parent item, for example: `(item) => item.parentId`.\n * - `breadcrumbs`: A function that accepts the item of the current level and returns an array of breadcrumbs to be displayed in the toolbar. Each breadcrumb is an object with `id` and `name` properties. `fetchData` will be called with `query.fields` that contains the value `breadcrumbs` to signal that the breadcrumbs should be fetched.\n * - `columns` (optional): Render logic of the cells for this level. By default all cells will be empty.\n * - `renderMainColumn` (optional): Render logic of the main column for this level.\n * - `actionCell` (optional): A table's last column. Use this column to add an action at the end of each row. For example, a delete button to delete an item. Pass an [`ActionCellProps`](https://www.docs.wixdesignsystem.com/?path=/story/components-lists-table--tableactioncell) object, or a function that returns an `ActionCellProps` object.\n<\n */\n levels: Omit<NestedTableLevelDescriptor<C, any, any>, 'depth'>[];\n}\n\nexport interface NestedTableStateParams<C extends string>\n extends NestedTableStateBaseParams<C> {\n container: WixPatternsContainer;\n}\n\nexport interface NestedTableStatePublicAPI {\n /**\n * Underlying [ToolbarCollectionState](./?path=/story/common-state--toolbarcollectionstate) instance\n */\n readonly toolbar: ToolbarCollectionState<unknown, {}>;\n /**\n * Underlying [TableState](./?path=/story/base-components-collections-table-tablestate--tablestate) instance\n */\n readonly tableState: TableState<unknown, {}>;\n}\n\nexport class NestedTableState<C extends string = string>\n implements ICollectionComponentState, NestedTableStatePublicAPI\n{\n readonly container;\n readonly reportBi: ReportBI;\n readonly toolbar;\n readonly tableState;\n readonly mainColumn;\n readonly options: EagerLazyModeOptions;\n\n readonly initTask = new TaskState();\n\n readonly levels: NestedTableLevelDescriptor<C, any, any>[];\n\n readonly rootNodeCollection;\n readonly query;\n\n readonly nested: NestedTableNestedModeState<C>;\n readonly flat: NestedTableFlatModeState<C>;\n\n readonly sequences = new Map<string, CollectionOptimisticSequenceExecutor>();\n\n constructor(params: NestedTableStateParams<C>) {\n this.container = params.container;\n\n this.query = new QueryState({\n filters: {},\n });\n\n this.levels = params.levels.map((level, i) => ({\n ...level,\n depth: i,\n }));\n\n this.options = {\n fetchAllThreshold: params.fetchAllThreshold ?? 1000,\n expandAllThreshold: params.expandAllThreshold ?? 0,\n };\n\n this.mainColumn = params.mainColumn;\n const rootLevelDescriptor = this.levels[0];\n\n if (rootLevelDescriptor == null) {\n throw new Error('NestedTableState must have at least one level');\n }\n\n this.rootNodeCollection = rootLevelDescriptor.createCollection({\n parent: null,\n sequences: this.sequences,\n query: this.query,\n });\n\n const { collection } = this.rootNodeCollection;\n\n syncWithSharedQuery(collection.query, this.query);\n\n this.reportBi = (reportProps) => {\n const { isFetchAllAborted } = this;\n this.container.reportBi({\n ...reportProps,\n params: {\n ...reportProps.params,\n ...(isFetchAllAborted != null && {\n componentStatus: isFetchAllAborted\n ? 'All items collapsed'\n : 'All items expanded',\n }),\n },\n });\n };\n\n this.toolbar = new ToolbarCollectionState({\n collection: this.rootNodeCollection.collection,\n container: params.container,\n componentType: 'NestedTable',\n reportBi: this.reportBi,\n });\n\n this.toolbar.setNewColumns(\n params.columns.map((column) => ({\n ...column,\n render: () => null,\n })) as TableColumn<unknown>[],\n );\n\n this.tableState = new TableState({\n collection: this.rootNodeCollection.collection,\n container: params.container,\n toolbar: this.toolbar,\n });\n\n this.nested = new NestedTableNestedModeState({\n wrapper: this,\n reportBi: this.reportBi,\n });\n\n this.flat = new NestedTableFlatModeState({\n wrapper: this,\n });\n }\n\n get isFetchAllAborted() {\n return this.nested.isFetchAllAborted;\n }\n\n get expandAll() {\n return this.nested.expandAll;\n }\n\n get nestedCollection() {\n return this.nested.nestedCollection;\n }\n\n _attemptFetchAllAndPopulateCache() {\n const initTask = new TaskState();\n return {\n initTask,\n init: () => {\n initTask.runOnce(async () => {\n const fetchAllState = new NestedCollectionFetchAllState({\n options: this.options,\n query: this.nested.query,\n nestedCollectionState: this.nested.nestedCollection,\n });\n\n const disposers = [fetchAllState.init()];\n\n try {\n await fetchAllState.initTask.status.promise;\n } finally {\n disposers.forEach((d) => d());\n }\n });\n\n return () => {};\n },\n };\n }\n\n get isFlatMode() {\n return this.query.hasActiveFilters;\n }\n\n init() {\n const { initTask, tableState, query, rootNodeCollection, flat } = this;\n\n const attemptFetchAllState = this._attemptFetchAllAndPopulateCache();\n\n const disposers = [\n query.init(),\n reaction(\n () => this.isFlatMode,\n (isFlatMode) => {\n const {\n query: { _fields },\n } = this;\n if (isFlatMode) {\n _fields.add('breadcrumbs');\n } else {\n _fields.delete('breadcrumbs');\n }\n },\n { fireImmediately: true },\n ),\n addEventListener(\n rootNodeCollection.collection.emitter,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n ...flat.sections.map(({ collection }) =>\n addEventListener(\n collection.emitter,\n 'beforeInitialFetch',\n () => attemptFetchAllState.initTask.status.promise,\n ),\n ),\n attemptFetchAllState.init(),\n tableState.init({\n featuresInitializers: [],\n }),\n ];\n\n initTask.runOnce(async () => {\n tableState.initTask.runOnce();\n attemptFetchAllState.initTask.runOnce();\n await attemptFetchAllState.initTask.status.promise;\n await tableState.initTask.status.promise;\n });\n\n return () => {\n initTask.reset();\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@ class TableVirtualState {
12
12
  constructor(params) {
13
13
  (0, _defineProperty2.default)(this, "gridRef", void 0);
14
14
  (0, _defineProperty2.default)(this, "table", void 0);
15
+ (0, _defineProperty2.default)(this, "getVirtualItemKey", void 0);
15
16
  (0, _defineProperty2.default)(this, "forceRenderIndexes", undefined);
16
17
  (0, _defineProperty2.default)(this, "gap", 0);
17
18
  (0, _defineProperty2.default)(this, "rowHeight", 0);
@@ -27,6 +28,7 @@ class TableVirtualState {
27
28
  };
28
29
  });
29
30
  this.table = params.table;
31
+ this.getVirtualItemKey = params.getVirtualItemKey;
30
32
  (0, _mobx.makeObservable)(this, {
31
33
  forceRenderIndexes: _mobx.observable.ref,
32
34
  rowHeight: _mobx.observable.ref,
@@ -62,13 +64,14 @@ class TableVirtualState {
62
64
  }
63
65
  get itemKeyRecyclerOverride() {
64
66
  const {
67
+ getVirtualItemKey,
65
68
  table: {
66
69
  keyedItems
67
70
  }
68
71
  } = this;
69
72
  return index => {
70
- var _keyedItems$index;
71
- return ((_keyedItems$index = keyedItems[index]) == null ? void 0 : _keyedItems$index.key) ?? index;
73
+ const keyedItem = keyedItems[index];
74
+ return (getVirtualItemKey == null ? void 0 : getVirtualItemKey(keyedItem)) ?? (keyedItem == null ? void 0 : keyedItem.key) ?? index;
72
75
  };
73
76
  }
74
77
  get itemsToRenderCount() {
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","TableVirtualState","container","table","toolbar","constructor","params","_defineProperty2","default","undefined","size","key","rowHeights","makeObservable","forceRenderIndexes","observable","ref","rowHeight","estimatedRowHeight","calcGridProps","computed","rowHeightFunc","itemsToRenderCount","itemKeyRecyclerOverride","init","action","setVariableRowHeight","disposers","reaction","_this$gridRef","gridRef","resetAfterIndices","columnIndex","rowIndex","shouldForceUpdate","forEach","disposer","itemsContentWidth","itemsContentRect","rect","width","keyedItems","index","_keyedItems$index","length","rowHeightProp","process","env","NODE_ENV","item","itemsContentHeight","avgRowHeight","overscanCount","Math","round","columnCount","columnWidth","columnWidthIncludingGap","rowHeightIncludingGap","exports"],"sources":["../../../src/state/TableVirtualState.ts"],"sourcesContent":["import { FiltersMap, KeyedItem } from '@wix/bex-core';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { action, computed, makeObservable, observable, reaction } from 'mobx';\nimport { ReactWindowGridRef } from '../components/VirtualGridRepeater/VirtualGridRepeaterState';\n\nexport interface TableVirtualStateParams<U, T, F extends FiltersMap> {\n readonly table: {\n keyedItems: KeyedItem<U>[];\n toolbar: ToolbarCollectionState<T, F>;\n };\n}\n\nexport class TableVirtualState<U, T, F extends FiltersMap> {\n gridRef?: ReactWindowGridRef | null;\n\n readonly table;\n\n forceRenderIndexes: { rowIndex: number; columnIndex: number }[] | undefined =\n undefined;\n\n gap = 0;\n\n rowHeight?: number | ((item: U, index: number) => number) = 0;\n estimatedRowHeight?: number = 80;\n\n rowHeights = {} as Record<number | string, number>;\n\n get container() {\n return this.table.toolbar.container;\n }\n\n constructor(params: TableVirtualStateParams<U, T, F>) {\n this.table = params.table;\n\n makeObservable(this, {\n forceRenderIndexes: observable.ref,\n rowHeight: observable.ref,\n estimatedRowHeight: observable.ref,\n rowHeights: observable.ref,\n calcGridProps: computed,\n rowHeightFunc: computed,\n itemsToRenderCount: computed,\n itemKeyRecyclerOverride: computed,\n init: action,\n setVariableRowHeight: action,\n });\n\n this.init();\n }\n\n init() {\n const disposers = [\n reaction(\n () => this.rowHeights,\n async () => {\n this.gridRef?.resetAfterIndices({\n columnIndex: 0,\n rowIndex: 0,\n shouldForceUpdate: true,\n });\n },\n ),\n ];\n\n return () => {\n disposers.forEach((disposer) => disposer?.());\n };\n }\n\n setVariableRowHeight = ({\n size,\n key,\n }: {\n size: number;\n key: number | string;\n }) => {\n this.rowHeights = {\n ...this.rowHeights,\n [key]: size,\n };\n };\n\n get toolbar() {\n return this.table.toolbar;\n }\n\n get itemsContentWidth() {\n return this.table.toolbar.itemsContentRect.rect.width ?? 0;\n }\n\n get itemKeyRecyclerOverride() {\n const {\n table: { keyedItems },\n } = this;\n return (index: number) => {\n return keyedItems[index]?.key ?? index;\n };\n }\n\n get itemsToRenderCount() {\n return this.table.keyedItems.length;\n }\n\n get rowHeightFunc() {\n const {\n rowHeight: rowHeightProp,\n table: { keyedItems },\n } = this;\n\n if (process.env.NODE_ENV === 'test' && rowHeightProp == null) {\n // need to provide rowHeight for tests\n return () => 20;\n }\n\n if (rowHeightProp == null) {\n return undefined;\n }\n\n if (typeof rowHeightProp === 'number') {\n return () => rowHeightProp as number;\n }\n\n return action((index: number) =>\n rowHeightProp(keyedItems[index].item, index),\n );\n }\n\n get calcGridProps() {\n const {\n rowHeightFunc: rowHeight,\n itemsContentWidth,\n table: { toolbar },\n estimatedRowHeight,\n } = this;\n\n const { itemsContentHeight } = toolbar;\n const avgRowHeight = rowHeight?.(0) ?? estimatedRowHeight;\n\n const overscanCount =\n avgRowHeight == null\n ? 10\n : Math.round((itemsContentHeight / avgRowHeight) * 1.5);\n\n return {\n columnCount: 1,\n width: itemsContentWidth,\n columnWidth: () => itemsContentWidth,\n columnWidthIncludingGap: () => itemsContentWidth,\n rowHeight,\n rowHeightIncludingGap: ({\n index,\n key,\n }: {\n index: number;\n key: number | string;\n }) => {\n if (rowHeight != null) {\n return rowHeight(index);\n }\n return this.rowHeights[key];\n },\n estimatedRowHeight,\n overscanCount,\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","TableVirtualState","container","table","toolbar","constructor","params","_defineProperty2","default","undefined","size","key","rowHeights","getVirtualItemKey","makeObservable","forceRenderIndexes","observable","ref","rowHeight","estimatedRowHeight","calcGridProps","computed","rowHeightFunc","itemsToRenderCount","itemKeyRecyclerOverride","init","action","setVariableRowHeight","disposers","reaction","_this$gridRef","gridRef","resetAfterIndices","columnIndex","rowIndex","shouldForceUpdate","forEach","disposer","itemsContentWidth","itemsContentRect","rect","width","keyedItems","index","keyedItem","length","rowHeightProp","process","env","NODE_ENV","item","itemsContentHeight","avgRowHeight","overscanCount","Math","round","columnCount","columnWidth","columnWidthIncludingGap","rowHeightIncludingGap","exports"],"sources":["../../../src/state/TableVirtualState.ts"],"sourcesContent":["import { FiltersMap, KeyedItem } from '@wix/bex-core';\nimport { ToolbarCollectionState } from './ToolbarCollectionState';\nimport { action, computed, makeObservable, observable, reaction } from 'mobx';\nimport { ReactWindowGridRef } from '../components/VirtualGridRepeater/VirtualGridRepeaterState';\n\nexport interface TableVirtualStateParams<\n K extends KeyedItem<any>,\n T,\n F extends FiltersMap,\n> {\n readonly table: {\n keyedItems: K[];\n toolbar: ToolbarCollectionState<T, F>;\n };\n getVirtualItemKey?: (item: K) => string;\n}\n\ntype InferItem<K> = K extends KeyedItem<infer T> ? T : never;\n\nexport class TableVirtualState<\n K extends KeyedItem<any>,\n T,\n F extends FiltersMap,\n> {\n gridRef?: ReactWindowGridRef | null;\n\n readonly table;\n readonly getVirtualItemKey;\n\n forceRenderIndexes: { rowIndex: number; columnIndex: number }[] | undefined =\n undefined;\n\n gap = 0;\n\n rowHeight?: number | ((item: InferItem<K>, index: number) => number) = 0;\n estimatedRowHeight?: number = 80;\n\n rowHeights = {} as Record<number | string, number>;\n\n get container() {\n return this.table.toolbar.container;\n }\n\n constructor(params: TableVirtualStateParams<K, T, F>) {\n this.table = params.table;\n this.getVirtualItemKey = params.getVirtualItemKey;\n\n makeObservable(this, {\n forceRenderIndexes: observable.ref,\n rowHeight: observable.ref,\n estimatedRowHeight: observable.ref,\n rowHeights: observable.ref,\n calcGridProps: computed,\n rowHeightFunc: computed,\n itemsToRenderCount: computed,\n itemKeyRecyclerOverride: computed,\n init: action,\n setVariableRowHeight: action,\n });\n\n this.init();\n }\n\n init() {\n const disposers = [\n reaction(\n () => this.rowHeights,\n async () => {\n this.gridRef?.resetAfterIndices({\n columnIndex: 0,\n rowIndex: 0,\n shouldForceUpdate: true,\n });\n },\n ),\n ];\n\n return () => {\n disposers.forEach((disposer) => disposer?.());\n };\n }\n\n setVariableRowHeight = ({\n size,\n key,\n }: {\n size: number;\n key: number | string;\n }) => {\n this.rowHeights = {\n ...this.rowHeights,\n [key]: size,\n };\n };\n\n get toolbar() {\n return this.table.toolbar;\n }\n\n get itemsContentWidth() {\n return this.table.toolbar.itemsContentRect.rect.width ?? 0;\n }\n\n get itemKeyRecyclerOverride() {\n const {\n getVirtualItemKey,\n table: { keyedItems },\n } = this;\n return (index: number) => {\n const keyedItem = keyedItems[index];\n return getVirtualItemKey?.(keyedItem) ?? keyedItem?.key ?? index;\n };\n }\n\n get itemsToRenderCount() {\n return this.table.keyedItems.length;\n }\n\n get rowHeightFunc() {\n const {\n rowHeight: rowHeightProp,\n table: { keyedItems },\n } = this;\n\n if (process.env.NODE_ENV === 'test' && rowHeightProp == null) {\n // need to provide rowHeight for tests\n return () => 20;\n }\n\n if (rowHeightProp == null) {\n return undefined;\n }\n\n if (typeof rowHeightProp === 'number') {\n return () => rowHeightProp as number;\n }\n\n return action((index: number) =>\n rowHeightProp(keyedItems[index].item, index),\n );\n }\n\n get calcGridProps() {\n const {\n rowHeightFunc: rowHeight,\n itemsContentWidth,\n table: { toolbar },\n estimatedRowHeight,\n } = this;\n\n const { itemsContentHeight } = toolbar;\n const avgRowHeight = rowHeight?.(0) ?? estimatedRowHeight;\n\n const overscanCount =\n avgRowHeight == null\n ? 10\n : Math.round((itemsContentHeight / avgRowHeight) * 1.5);\n\n return {\n columnCount: 1,\n width: itemsContentWidth,\n columnWidth: () => itemsContentWidth,\n columnWidthIncludingGap: () => itemsContentWidth,\n rowHeight,\n rowHeightIncludingGap: ({\n index,\n key,\n }: {\n index: number;\n key: number | string;\n }) => {\n if (rowHeight != null) {\n return rowHeight(index);\n }\n return this.rowHeights[key];\n },\n estimatedRowHeight,\n overscanCount,\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -674,6 +674,9 @@ class ToolbarCollectionState {
674
674
  clearResult: true
675
675
  });
676
676
  }
677
+ openFiltersPanel() {
678
+ this.panels.openSidePanel('filters');
679
+ }
677
680
  _onSelectAllCheckboxClick() {}
678
681
  get activeFiltersEntries() {
679
682
  return Array.from(this.multi.collections.flatMap(({
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_bexCore","_simplifyColumns","_ToolbarBIReporter","_SidePanelsState","_RectState","_BulkActionToolbarState","_util","_simplifyExtendedColumns","ToolbarCollectionState","constructor","params","_defineProperty2","default","idArrayFilter","TaskState","moreFiltersButton","ValueBox","appliedFiltersTagList","exportButton","exportModal","observable","array","undefined","current","Map","contentPadding","height","top","_this$viewsState","_originQuery$sort","collection","result","originQuery","viewShown","viewsState","views","currentView","id","tabShown","getCurrentTabName","sortOrderApplied","sort","length","JSON","stringify","filtersApplied","filtersKey","filteredListSizeShown","total","column","defaultHidden","hideable","hiddenFromCustomColumnsSelection","isSelected","selectedColumns","customColumnsState","customColumnsProps","customColumnsStateInitialized","initTask","mergedColumns","mergeNewColumns","defaultValue","columns","map","col","_toStoredColumn","status","isSuccess","refresh","setValue","allColumns","sidePanel","close","action","multi","isError","runOnce","retryErrorState","bulk","_selectionStartTime","performance","now","_selectedIds","change","panels","closeSidePanel","type","toggleSelectAll","location","deselectAll","value","selectOne","deselectOne","_this$collectionDataE","origin","toolbarBIReporter","cairoDataExAddCustomField","collectionDataExtension","dataExtension","openCustomFieldModal","_this$tagsCollectionS","tagsCollectionState","openManageTagsModal","items","_resetQueryAndAddItems","newItemCreationEnd","_collection$_optimist","_collection$scrollabl","query","resetFilters","resetSorting","clearResultAndMoveToStart","_optimisticActions","createMany","submit","scrollableContent","scrollTo","behavior","container","componentType","fedopsReporter","FedopsReporter","componentName","internalMonitor","MultiCollectionSupport","collections","itemsContentRect","RectState","toolbarRect","SidePanelsState","panelGroupName","queryName","ToolbarBIReporter","toolbar","reportBi","ev","_commonDynamicBiParams","BulkActionToolbarState","translate","scrollToTop","_this$collection$scro","left","namespace","environment","componentId","join","dataCapsule","createEssentials","reportBiBase","makeObservable","_userColumns","ref","_extendedColumns","computed","viewsProps","dragAndDropCategories","filtersProps","shouldDisplayFiltersTags","totalStickyContentHeight","showInitialLoader","showEmptyState","showErrorState","hasSubToolbarComponents","containerRect","setFilterTagsPropsIfChanged","_initDefaultSortableColumn","minimizedHeaderHeight","tabsFilterProps","toolbarFiltersStateInitialized","hasToolbarTabs","itemsContentHeight","setNewColumns","addFeatureColumn","setNewExtendedColumns","_adjustSortWithNewColumns","setToolbarFiltersStateInitialized","activeFiltersEntries","internalScroll","rect","bottom","right","width","containerTop","_this$containerRect","scrollElementRect","process","env","NODE_ENV","toolbarOffsetTop","sidePanelComponents","isLoading","isIdle","showRefreshLoader","errorStatus","featuredComponents","reorderModeState","_this$_dnd","_dnd","_this$featuredCompone","state","tags","isReorderModeToolbarVisible","_this$reorderModeStat","isReorderModePending","_this$reorderModeStat2","_featureColumns","selectedOrderedColumnsOrAll","selectedOrderedColumns","_viewsState$views$cur","_viewsState$views","_viewsState$views2","currentTab","isPredefined","isPreset","filters","numFiltersInView","_numberFiltersInView","visibleColumnsOrder","title","name","numColumns","numFiltersActive","activeFiltersCount","view","filterName","Object","keys","filter","Array","isArray","tabs","entries","rawFilters","key","flatMap","itemKey","getPendingFilter","_this$pendingQuery","pendingQuery","getApplicableFilter","init","featuresInitializers","hasMultiLevelSorting","biReporters","CollectionBIReporter","tableFeatures","t","tableFeatInit","disposers","_tableInit","reaction","_columns","replace","c","fireImmediately","availableCustomFields","customFields","b","addEventListener","bulkSelect","events","modals","actionModal","modal","open","emitter","broadcast","message","num","startTime","loadStart","forEach","_tagsCollectionState$","_collectionDataExtens","Promise","all","promise","catch","_t$initTask","loadEnd","e","d","tableColumns","simplifyColumns","featureColumn","push","simplifyColumn","_adjustSelectedColumns","fields","_this$collectionDataE2","simplifyExtendedColumns","toExtendedFields","_this$liveRegionRef$c","liveRegionRef","defaultSortableColumns","sortable","defaultSortOrder","sortQuery","field","direction","setSortQuery","slice","tableColumnsIds","Set","has","s","remove","emit","scheduleSort","clearResult","_onSelectAllCheckboxClick","from","_","search","reduce","entry","set","values","exports"],"sources":["../../../src/state/ToolbarCollectionState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable, reaction } from 'mobx';\nimport type {\n WixPatternsContainer,\n ModalState,\n QueryPendingState,\n SortOrder,\n} from '@wix/bex-core';\nimport {\n CollectionBIReporter,\n CollectionState,\n CustomField,\n FedopsReporter,\n Filter,\n FiltersMap,\n idArrayFilter,\n MultiCollectionSupport,\n ReportBI,\n TaskState,\n ValueBox,\n} from '@wix/bex-core';\nimport { Column, FilterProps, PrivateView, TableColumn } from '../model';\nimport { CustomColumnsProps } from '../components/CustomColumns';\nimport type {\n LiveRegionRefType,\n TableProps,\n LiveRegionState,\n} from '@wix/design-system';\nimport type { AppliedFiltersTagListState } from '../components/AppliedFiltersTagList/AppliedFiltersTagListState';\nimport { ToolbarFeatureInitializer } from './toolbarFeatureInitializer';\nimport { simplifyColumn, simplifyColumns } from './simplifyColumns';\nimport type { CollectionViewsState } from './CollectionViewsState';\nimport { ReactElement } from 'react';\nimport { ToolbarBIReporter } from './ToolbarBIReporter';\nimport { DragAndDropState } from '../components/DragAndDrop';\nimport { CollectionViewsDropdownProps } from '../components/CollectionViewsDropdown';\nimport { ActionCellProps } from '../components/ActionCell';\nimport { ActionCellAPI } from './ItemActionsState';\nimport { CustomColumnsState } from './CustomColumnsState';\nimport { SidePanelsState } from './SidePanelsState';\nimport { CollectionToolbarFiltersState } from '../components/CollectionToolbarFilters/CollectionToolbarFiltersState';\nimport { MultiLevelSortingState } from './MultiLevelSortingState';\nimport { RectState } from './RectState';\nimport { BulkActionToolbarState } from './BulkActionToolbarState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { simplifyExtendedColumns } from './simplifyExtendedColumns';\nimport type { AddApplyFiltersButton } from '../components/FiltersPanel/AddApplyFiltersButton';\nimport { TabsFilterState } from '../components/TabsFilter/TabsFilterState';\nimport { CollectionDataExtensionState } from '../components/DataExtension';\nimport { TagsCollectionState } from './TagsCollectionState';\nimport {\n AdditionalFeaturesAvailabilityBIParams,\n FeaturesAvailabilityBIParams,\n} from './FeaturesAvailabilityBIParams';\nimport { ExtensionMenuItemsState } from './ExtensionMenuItemsState';\n\nexport type Component<C> = () => C;\n\nexport interface ToolbarCollectionStateParamsInitParams {\n featuresInitializers: (ToolbarFeatureInitializer | undefined)[];\n hasMultiLevelSorting?: boolean;\n}\n\nexport interface ToolbarCollectionStateParams<T, F extends FiltersMap> {\n readonly container: WixPatternsContainer;\n readonly collection: CollectionState<T, F>;\n readonly componentType: string;\n readonly reportBi?: ReportBI;\n}\n\nexport class ToolbarCollectionState<T, F extends FiltersMap = FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly selectedColumns = idArrayFilter<{\n id: string;\n isSelected: boolean;\n }>();\n readonly initTask = new TaskState();\n readonly fedopsReporter;\n readonly dataCapsule;\n readonly container: WixPatternsContainer;\n readonly namespace;\n readonly reportBi: ReportBI;\n readonly featuredComponents = {\n moreFiltersButton: new ValueBox<Component<{}> | null>(null),\n appliedFiltersTagList: new ValueBox<{\n component: Component<{}>;\n state: AppliedFiltersTagListState<T, F>;\n } | null>(null),\n exportButton: new ValueBox<ReactElement | null>(null),\n exportModal: new ValueBox<ReactElement<{}> | null>(null),\n };\n readonly toolbarRect;\n readonly itemsContentRect;\n readonly panels;\n readonly bulk;\n readonly multi;\n readonly componentType;\n\n _userColumns: Column[] = []; // columns propagated from user\n _featureColumns: Column[] = observable.array(); // columns propagated from installed features\n _extendedColumns: Column[] = []; // columns propagated from data-extension (can be merged with above?)\n internalScroll = undefined as boolean | undefined;\n customColumnsState: CustomColumnsState<T, F> | null = null;\n customColumnsStateInitialized = false;\n multiLevelSorting: MultiLevelSortingState<T, F> | null = null;\n liveRegionRef: { current: null | LiveRegionRefType } = {\n current: null,\n };\n collectionDataExtension: CollectionDataExtensionState<T, F> | null = null;\n menuItemExtensions = new Map<string, ExtensionMenuItemsState>();\n tagsCollectionState: TagsCollectionState<T, F> | null = null;\n toolbarFiltersState: CollectionToolbarFiltersState<T, F> | null = null;\n toolbarFiltersStateInitialized = false;\n _dnd: DragAndDropState<T, F> | null = null;\n toolbarBIReporter: ToolbarBIReporter<T, F>;\n filtersProps: FilterProps<any>[] | null = null;\n viewsProps: CollectionViewsDropdownProps<F> | null | undefined = null;\n dragAndDropCategories: (keyof F)[][] | null | undefined = null;\n customColumnsProps: CustomColumnsProps | null | undefined = null;\n selectionProps = new ValueBox<{ showSelection?: boolean }>({});\n featuresAvailability: FeaturesAvailabilityBIParams = {};\n additionalFeaturesAvailability: AdditionalFeaturesAvailabilityBIParams = {};\n actionCell = new ValueBox<\n | undefined\n | ActionCellProps\n | ((item: T, index: number, api: ActionCellAPI<T, F>) => ActionCellProps)\n >(undefined);\n contentPadding = 24;\n contentPaddingPx = `${this.contentPadding}px`;\n\n scrollElementRect = observable<{\n height?: number | null;\n top?: number | null;\n }>({\n height: null,\n top: null,\n });\n scrollTopBeforeUnmount: number = 0;\n minimizedHeaderHeight = 0;\n tabsFilterProps?: {\n filter: Filter<any>;\n } = undefined;\n viewsState?: CollectionViewsState<T, F>;\n exportState?: ModalState;\n pendingQuery?: QueryPendingState;\n AddApplyFiltersButton?: typeof AddApplyFiltersButton;\n tabs?: TabsFilterState<T, F>;\n\n constructor(params: ToolbarCollectionStateParams<T, F>) {\n this.collection = params.collection;\n this.container = params.container;\n this.componentType = params.componentType;\n\n this.fedopsReporter = new FedopsReporter({\n componentName: this.componentType,\n collection: this.collection,\n internalMonitor: this.container.internalMonitor,\n });\n\n this.multi = new MultiCollectionSupport<F>({\n collections: [this.collection as CollectionState<unknown, F>],\n });\n\n this.itemsContentRect = new RectState(params);\n this.toolbarRect = new RectState(params);\n\n this.panels = new SidePanelsState({\n container: this.container,\n panelGroupName: this.collection.queryName,\n });\n\n this.toolbarBIReporter = new ToolbarBIReporter<T, F>({\n toolbar: this,\n collection: this.collection,\n reportBi: (ev) => {\n this.reportBi({\n ...ev,\n params: {\n ...this._commonDynamicBiParams(),\n ...ev.params,\n },\n });\n },\n });\n\n this.bulk = new BulkActionToolbarState({\n toolbarBIReporter: this.toolbarBIReporter,\n panels: this.panels,\n multi: this.multi,\n translate: this.container.translate,\n scrollToTop: () => {\n this.collection.scrollableContent?.scrollTo({\n top: 0,\n left: 0,\n });\n },\n });\n\n this.namespace = [\n this.container.environment.componentId,\n this.collection.queryName,\n ].join('.');\n\n const { dataCapsule } = this.container.createEssentials({\n dataCapsule: {\n namespace: this.namespace,\n },\n });\n\n this.dataCapsule = dataCapsule;\n\n const reportBiBase = params.reportBi ?? this.container.reportBi;\n\n this.reportBi = (ev) => {\n reportBiBase({\n ...ev,\n params: {\n ...this._commonDynamicBiParams(),\n ...ev.params,\n },\n });\n };\n\n makeObservable(this, {\n _userColumns: observable.ref,\n _extendedColumns: observable.ref,\n columns: computed,\n customColumnsStateInitialized: observable.ref,\n viewsProps: observable.ref,\n dragAndDropCategories: observable.ref,\n customColumnsProps: observable.ref,\n filtersProps: observable.ref,\n shouldDisplayFiltersTags: computed,\n totalStickyContentHeight: computed,\n showInitialLoader: computed,\n showEmptyState: computed,\n showErrorState: computed,\n hasSubToolbarComponents: computed,\n containerRect: computed,\n setFilterTagsPropsIfChanged: action,\n _initDefaultSortableColumn: action,\n minimizedHeaderHeight: observable.ref,\n tabsFilterProps: observable.ref,\n toolbarFiltersStateInitialized: observable.ref,\n hasToolbarTabs: computed,\n itemsContentHeight: computed,\n setNewColumns: action,\n addFeatureColumn: action,\n setNewExtendedColumns: action,\n _commonDynamicBiParams: action,\n _adjustSortWithNewColumns: action,\n setToolbarFiltersStateInitialized: action,\n activeFiltersEntries: computed,\n });\n }\n\n get containerRect() {\n const { itemsContentRect, toolbarRect, internalScroll } = this;\n\n if (internalScroll && itemsContentRect.rect.height) {\n return {\n ...itemsContentRect.rect,\n };\n }\n\n if (itemsContentRect.rect.left && toolbarRect.rect.left) {\n const top = toolbarRect.rect.bottom;\n const bottom = top + itemsContentRect.rect.height;\n const left = toolbarRect.rect.left;\n const right = left + toolbarRect.rect.width;\n return {\n left,\n right,\n top,\n bottom,\n height: bottom - top,\n width: right - left,\n };\n }\n\n return undefined;\n }\n\n get containerTop() {\n return this.containerRect?.top;\n }\n\n /**\n * How much height left for the content inside the viewport\n */\n get itemsContentHeight() {\n const {\n toolbarRect,\n scrollElementRect,\n contentPadding,\n internalScroll,\n itemsContentRect,\n } = this;\n\n if (internalScroll && itemsContentRect.rect.height) {\n return itemsContentRect.rect.height;\n }\n\n if (\n toolbarRect.rect.height == null ||\n toolbarRect.rect.top == null ||\n scrollElementRect.height == null ||\n scrollElementRect.top == null\n ) {\n return 0;\n }\n\n if (process.env.NODE_ENV === 'test') {\n return 796;\n }\n\n const toolbarOffsetTop = toolbarRect.rect.top - scrollElementRect.top;\n\n return (\n scrollElementRect.height -\n toolbarOffsetTop -\n toolbarRect.rect.height -\n contentPadding\n );\n }\n\n get totalStickyContentHeight() {\n const { toolbarRect, minimizedHeaderHeight } = this;\n if (toolbarRect.rect.height == null) {\n return null;\n }\n\n return toolbarRect.rect.height + minimizedHeaderHeight;\n }\n\n get sidePanel() {\n return this.panels.sidePanel;\n }\n\n get sidePanelComponents() {\n return this.panels.sidePanelComponents;\n }\n\n get showInitialLoader() {\n const { multi, initTask } = this;\n\n return (\n multi.showInitialLoader ||\n initTask.status.isLoading ||\n initTask.status.isIdle\n );\n }\n\n get showEmptyState() {\n const {\n showInitialLoader,\n multi: { showRefreshLoader, showEmptyState },\n } = this;\n return showEmptyState && !showInitialLoader && !showRefreshLoader;\n }\n\n get errorStatus() {\n const { initTask, multi } = this;\n return initTask.errorStatus ?? multi.errorStatus;\n }\n\n get showErrorState() {\n const {\n showInitialLoader,\n multi: { showRefreshLoader, showErrorState },\n initTask,\n } = this;\n\n return (\n (showErrorState || initTask.status.isError) &&\n !showInitialLoader &&\n !showRefreshLoader\n );\n }\n\n get hasSubToolbarComponents() {\n const { appliedFiltersTagList } = this.featuredComponents;\n return appliedFiltersTagList.value != null;\n }\n\n get reorderModeState() {\n return this._dnd?.reorderModeState;\n }\n\n get shouldDisplayFiltersTags() {\n return !!this.featuredComponents.appliedFiltersTagList.value?.state.tags\n .length;\n }\n\n get hasToolbarTabs() {\n return this.tabsFilterProps != null;\n }\n\n get isReorderModeToolbarVisible() {\n return this.reorderModeState?.isReorderModeToolbarVisible;\n }\n\n get isReorderModePending() {\n return this.reorderModeState?.isReorderModePending;\n }\n\n get columns(): Column[] {\n const { _userColumns, _featureColumns, _extendedColumns } = this;\n return [..._userColumns, ..._featureColumns, ..._extendedColumns];\n }\n\n get selectedOrderedColumnsOrAll() {\n const { columns, customColumnsState } = this;\n\n if (customColumnsState) {\n return customColumnsState.selectedOrderedColumns;\n }\n\n return columns;\n }\n\n _commonDynamicBiParams(query = this.collection.result.originQuery) {\n const { collection, viewsState } = this;\n\n return {\n componentType: this.componentType,\n ...collection._commonDynamicBiParams(query),\n currentTab: this.getCurrentTabName(),\n ...(viewsState && { currentView: viewsState.views.currentView?.id }),\n ...(viewsState?.views?.currentView && {\n isPredefined: viewsState.views.currentView.isPreset,\n }),\n ...(viewsState?.views?.currentView?.filters && {\n numFiltersInView: this._numberFiltersInView(\n viewsState.views.currentView,\n ),\n }),\n visibleColumnsOrder: this.selectedOrderedColumnsOrAll\n .map((col) => col.id ?? col.title ?? col.name)\n .join(','),\n numColumns: this.selectedOrderedColumnsOrAll.length,\n numFiltersActive: collection.query.activeFiltersCount,\n };\n }\n\n _numberFiltersInView(view: PrivateView<F>) {\n let numFiltersInView = 0;\n\n if (view.filters) {\n for (const filterName of Object.keys(view.filters)) {\n const filter = view.filters[filterName];\n\n if (filter && filter.value) {\n if (Array.isArray(filter.value)) {\n numFiltersInView += filter.value.length;\n } else if (filter.value) {\n numFiltersInView += 1;\n }\n }\n }\n }\n\n return numFiltersInView;\n }\n\n getCurrentTabName() {\n const {\n tabsFilterProps,\n collection: {\n result: { originQuery: query },\n },\n } = this;\n\n const tabs =\n tabsFilterProps &&\n Object.entries(query.rawFilters)\n .filter(([key]) => key === tabsFilterProps.filter.name)\n .flatMap(([, value]) =>\n Array.isArray(value)\n ? value.map(tabsFilterProps.filter.itemKey)\n : value,\n );\n\n return tabs?.[0] as string;\n }\n\n getCollectionSnapshot = (): {\n [key: string]: string | number | undefined;\n } => {\n const {\n collection: {\n result: { originQuery },\n },\n } = this;\n\n return {\n viewShown: this.viewsState?.views.currentView?.id,\n tabShown: this.getCurrentTabName(),\n sortOrderApplied: originQuery.sort?.length\n ? JSON.stringify(originQuery.sort)\n : undefined,\n filtersApplied: JSON.stringify(originQuery.filtersKey),\n filteredListSizeShown: this.collection.result.total,\n };\n };\n\n getPendingFilter<A>(filter: A) {\n return this.pendingQuery?.getApplicableFilter(filter) ?? filter;\n }\n\n init({\n featuresInitializers,\n hasMultiLevelSorting,\n }: ToolbarCollectionStateParamsInitParams) {\n const {\n collection,\n multi,\n initTask,\n panels,\n sidePanel,\n collectionDataExtension,\n tagsCollectionState,\n bulk,\n customColumnsState,\n viewsState,\n } = this;\n\n const biReporters = multi.collections.map(\n (collection) =>\n new CollectionBIReporter({\n collection,\n reportBi: (ev) => {\n this.reportBi({\n ...ev,\n params: {\n ...collection._commonDynamicBiParams(),\n ...ev.params,\n },\n });\n },\n }),\n );\n\n // must call `initOptionalFeatures` before collection init because we want to allow features to customize the collection before collection.init\n const tableFeatures = featuresInitializers\n .filter((t): t is ToolbarFeatureInitializer => t != null)\n .map((tableFeatInit) => tableFeatInit(this));\n\n // should be initialized before collection.init() so the sort query will be updated before the time of the first request.\n this._initDefaultSortableColumn(hasMultiLevelSorting);\n\n const disposers = [\n collectionDataExtension?.init(), // dataExtensionState should be initialized and beforeInitialFetch promise listener registered before customColumnsState?._tableInit() because custom columns might use data extensions\n customColumnsState?._tableInit(),\n viewsState?.init(),\n // register table feature first as they might register to the collection `beforeInitialFetch`\n ...tableFeatures.map((t) => t.init()),\n reaction(\n () => this.selectedOrderedColumnsOrAll,\n (columns) => {\n collection.query._columns.replace(columns.map((c) => c.id));\n },\n {\n fireImmediately: true,\n },\n ),\n reaction(\n () => collectionDataExtension?.dataExtension.availableCustomFields,\n (customFields) => {\n this.setNewExtendedColumns(customFields ?? []);\n },\n ),\n multi.init(),\n ...biReporters.map((b) => b.init()),\n panels.init(),\n sidePanel.init(),\n bulk.init(),\n tagsCollectionState?.init(),\n addEventListener(\n collection.bulkSelect.events,\n 'openModal',\n this.bulk.modals.actionModal.modal.open,\n ),\n addEventListener(\n collection.bulkSelect.events,\n 'closeModal',\n this.bulk.modals.actionModal.modal.close,\n ),\n addEventListener(this.collection.emitter, 'resultUpdated', () => {\n this.broadcast({\n message: this.container.translate(\n 'cairo.a11y.liveRegion.resultsFound',\n { num: this.collection.result.total },\n ),\n });\n }),\n ];\n\n const startTime = performance.now();\n\n initTask.runOnce(async () => {\n this.toolbarBIReporter.loadStart();\n\n multi.initTask.runOnce();\n customColumnsState?.initTask.runOnce();\n\n tableFeatures.forEach(({ initTask }) => {\n if (initTask) {\n initTask.runOnce();\n }\n });\n\n try {\n await Promise.all([\n multi.initTask.status.promise,\n tagsCollectionState?.initTask.status.promise?.catch(() => null), // resilience to failed request\n collectionDataExtension?.initTask.status.promise?.catch(() => null), // resilience to failed request\n customColumnsState?.initTask.status.promise,\n ...tableFeatures.map((t) => t.initTask?.status.promise),\n ]);\n\n this.toolbarBIReporter.loadEnd(startTime);\n } catch (e) {\n throw e;\n }\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n setFilterTagsPropsIfChanged(filtersProps: FilterProps<any>[] | null) {\n if (this.filtersProps !== filtersProps) {\n this.filtersProps = filtersProps;\n }\n }\n\n _toStoredColumn = (column: Column) => {\n const { id, defaultHidden, hideable, hiddenFromCustomColumnsSelection } =\n column;\n\n return {\n id,\n isSelected:\n !hideable || hiddenFromCustomColumnsSelection || !defaultHidden,\n };\n };\n\n setNewColumns(tableColumns: TableColumn<T>[]) {\n this._userColumns = simplifyColumns(tableColumns);\n }\n\n addFeatureColumn(featureColumn: TableColumn<T>) {\n this._featureColumns.push(simplifyColumn(featureColumn));\n\n this._adjustSelectedColumns();\n }\n\n setNewExtendedColumns(\n fields: CustomField[] = [],\n { defaultHidden = false }: { defaultHidden?: boolean } = {},\n ) {\n if (\n !this.collectionDataExtension?.dataExtension.initTask.status.isSuccess\n ) {\n return;\n }\n\n this._extendedColumns = simplifyExtendedColumns<T>({\n fields,\n toExtendedFields: this.collection.toExtendedFields,\n defaultHidden,\n });\n\n this._adjustSelectedColumns();\n }\n\n broadcast(params: LiveRegionState) {\n this.liveRegionRef.current?.broadcast(params);\n }\n\n setToolbarFiltersStateInitialized(value: boolean) {\n this.toolbarFiltersStateInitialized = value;\n }\n\n _initDefaultSortableColumn(hasMultiLevelSorting = false) {\n const {\n columns,\n collection: { query },\n } = this;\n\n const defaultSortableColumns = columns.filter(\n (col): col is Column & { defaultSortOrder: SortOrder } =>\n col.sortable === true && col.id != null && col.defaultSortOrder != null,\n );\n\n if (defaultSortableColumns.length && !query.sort.value.length) {\n const sortQuery = defaultSortableColumns.map((column) => ({\n field: column.id,\n direction: column.defaultSortOrder,\n }));\n\n query.sort.setSortQuery(\n hasMultiLevelSorting ? sortQuery : sortQuery.slice(0, 1),\n );\n }\n }\n\n _adjustSelectedColumns = () => {\n const {\n selectedColumns,\n customColumnsState,\n customColumnsProps,\n customColumnsStateInitialized,\n } = this;\n\n // as long as consumer rendered `<CustomColumns/>` at least once, use `mergeNewColumns` strategy when re-rendering new columns prop\n if (customColumnsProps != null || customColumnsStateInitialized) {\n // if `customColumns` is not set yet - do nothing\n if (customColumnsState) {\n const { initTask } = customColumnsState;\n const mergedColumns = customColumnsState.mergeNewColumns();\n selectedColumns.defaultValue = this.columns.map((col) => {\n const { id, isSelected } = this._toStoredColumn(col);\n return { id, isSelected };\n });\n if (initTask.status.isSuccess) {\n selectedColumns.refresh(mergedColumns);\n } else {\n selectedColumns.setValue(mergedColumns);\n }\n }\n } else {\n const allColumns = this.columns.map(({ id }) => ({\n id,\n isSelected: true,\n }));\n selectedColumns.defaultValue = allColumns;\n selectedColumns.setValue(allColumns);\n }\n };\n\n _adjustSortWithNewColumns(tableColumns: TableColumn<T>[]) {\n const {\n collection: { query },\n } = this;\n const tableColumnsIds = new Set(tableColumns.map((column) => column.id));\n\n query.sort.value\n .filter(({ field }) => !tableColumnsIds.has(field))\n .forEach((s) => {\n query.sort.value.remove(s);\n });\n query.sort.events.emit('change');\n this.collection.scheduleSort({ clearResult: true });\n }\n\n closeSidePanel = () => {\n this.sidePanel.close();\n };\n\n retryErrorState = action(() => {\n const { initTask, multi } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else {\n multi.retryErrorState();\n }\n });\n\n onSelectionStarted = () => {\n this.bulk._selectionStartTime = performance.now();\n };\n\n _onSelectAllCheckboxClick() {}\n\n get activeFiltersEntries() {\n return Array.from(\n this.multi.collections\n .flatMap(({ query }) =>\n query.activeFiltersEntries.filter(\n ([_, filter]) => filter !== query.search,\n ),\n )\n .reduce(\n (map, entry) => map.set(entry[0], entry),\n new Map<string, [string, Filter<unknown>]>(),\n )\n .values(),\n );\n }\n\n onSelectionChanged: Required<TableProps>['onSelectionChanged'] = action(\n (_selectedIds, change) => {\n if (change == null) {\n return;\n }\n\n const { panels, bulk } = this;\n\n panels.closeSidePanel();\n\n switch (change.type) {\n case 'ALL':\n bulk.toggleSelectAll({ location: 'Checkbox' });\n break;\n case 'NONE':\n bulk.deselectAll({ location: 'Checkbox' });\n break;\n case 'SINGLE_TOGGLE':\n if (change.value) {\n bulk.selectOne(change.id);\n } else {\n bulk.deselectOne(change.id);\n }\n break;\n }\n },\n );\n\n openCustomFieldModal = () => {\n const origin = 'external';\n this.toolbarBIReporter.cairoDataExAddCustomField(origin);\n return this.collectionDataExtension?.dataExtension?.openCustomFieldModal({\n origin,\n });\n };\n\n openManageTagsModal = () => {\n return this.tagsCollectionState?.openManageTagsModal();\n };\n\n onAddItemActionComplete = async (items: T[]) => {\n await this._resetQueryAndAddItems(items);\n\n this.toolbarBIReporter.newItemCreationEnd(items);\n };\n\n _resetQueryAndAddItems = async (items: T[]) => {\n const { collection } = this;\n const { query } = collection;\n\n query.resetFilters();\n query.resetSorting();\n\n await collection.clearResultAndMoveToStart();\n\n collection._optimisticActions?.createMany(items, {\n submit: async () => items,\n });\n\n collection.scrollableContent?.scrollTo?.({\n top: 0,\n behavior: 'smooth',\n });\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_bexCore","_simplifyColumns","_ToolbarBIReporter","_SidePanelsState","_RectState","_BulkActionToolbarState","_util","_simplifyExtendedColumns","ToolbarCollectionState","constructor","params","_defineProperty2","default","idArrayFilter","TaskState","moreFiltersButton","ValueBox","appliedFiltersTagList","exportButton","exportModal","observable","array","undefined","current","Map","contentPadding","height","top","_this$viewsState","_originQuery$sort","collection","result","originQuery","viewShown","viewsState","views","currentView","id","tabShown","getCurrentTabName","sortOrderApplied","sort","length","JSON","stringify","filtersApplied","filtersKey","filteredListSizeShown","total","column","defaultHidden","hideable","hiddenFromCustomColumnsSelection","isSelected","selectedColumns","customColumnsState","customColumnsProps","customColumnsStateInitialized","initTask","mergedColumns","mergeNewColumns","defaultValue","columns","map","col","_toStoredColumn","status","isSuccess","refresh","setValue","allColumns","sidePanel","close","action","multi","isError","runOnce","retryErrorState","bulk","_selectionStartTime","performance","now","_selectedIds","change","panels","closeSidePanel","type","toggleSelectAll","location","deselectAll","value","selectOne","deselectOne","_this$collectionDataE","origin","toolbarBIReporter","cairoDataExAddCustomField","collectionDataExtension","dataExtension","openCustomFieldModal","_this$tagsCollectionS","tagsCollectionState","openManageTagsModal","items","_resetQueryAndAddItems","newItemCreationEnd","_collection$_optimist","_collection$scrollabl","query","resetFilters","resetSorting","clearResultAndMoveToStart","_optimisticActions","createMany","submit","scrollableContent","scrollTo","behavior","container","componentType","fedopsReporter","FedopsReporter","componentName","internalMonitor","MultiCollectionSupport","collections","itemsContentRect","RectState","toolbarRect","SidePanelsState","panelGroupName","queryName","ToolbarBIReporter","toolbar","reportBi","ev","_commonDynamicBiParams","BulkActionToolbarState","translate","scrollToTop","_this$collection$scro","left","namespace","environment","componentId","join","dataCapsule","createEssentials","reportBiBase","makeObservable","_userColumns","ref","_extendedColumns","computed","viewsProps","dragAndDropCategories","filtersProps","shouldDisplayFiltersTags","totalStickyContentHeight","showInitialLoader","showEmptyState","showErrorState","hasSubToolbarComponents","containerRect","setFilterTagsPropsIfChanged","_initDefaultSortableColumn","minimizedHeaderHeight","tabsFilterProps","toolbarFiltersStateInitialized","hasToolbarTabs","itemsContentHeight","setNewColumns","addFeatureColumn","setNewExtendedColumns","_adjustSortWithNewColumns","setToolbarFiltersStateInitialized","activeFiltersEntries","internalScroll","rect","bottom","right","width","containerTop","_this$containerRect","scrollElementRect","process","env","NODE_ENV","toolbarOffsetTop","sidePanelComponents","isLoading","isIdle","showRefreshLoader","errorStatus","featuredComponents","reorderModeState","_this$_dnd","_dnd","_this$featuredCompone","state","tags","isReorderModeToolbarVisible","_this$reorderModeStat","isReorderModePending","_this$reorderModeStat2","_featureColumns","selectedOrderedColumnsOrAll","selectedOrderedColumns","_viewsState$views$cur","_viewsState$views","_viewsState$views2","currentTab","isPredefined","isPreset","filters","numFiltersInView","_numberFiltersInView","visibleColumnsOrder","title","name","numColumns","numFiltersActive","activeFiltersCount","view","filterName","Object","keys","filter","Array","isArray","tabs","entries","rawFilters","key","flatMap","itemKey","getPendingFilter","_this$pendingQuery","pendingQuery","getApplicableFilter","init","featuresInitializers","hasMultiLevelSorting","biReporters","CollectionBIReporter","tableFeatures","t","tableFeatInit","disposers","_tableInit","reaction","_columns","replace","c","fireImmediately","availableCustomFields","customFields","b","addEventListener","bulkSelect","events","modals","actionModal","modal","open","emitter","broadcast","message","num","startTime","loadStart","forEach","_tagsCollectionState$","_collectionDataExtens","Promise","all","promise","catch","_t$initTask","loadEnd","e","d","tableColumns","simplifyColumns","featureColumn","push","simplifyColumn","_adjustSelectedColumns","fields","_this$collectionDataE2","simplifyExtendedColumns","toExtendedFields","_this$liveRegionRef$c","liveRegionRef","defaultSortableColumns","sortable","defaultSortOrder","sortQuery","field","direction","setSortQuery","slice","tableColumnsIds","Set","has","s","remove","emit","scheduleSort","clearResult","openFiltersPanel","openSidePanel","_onSelectAllCheckboxClick","from","_","search","reduce","entry","set","values","exports"],"sources":["../../../src/state/ToolbarCollectionState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable, reaction } from 'mobx';\nimport type {\n WixPatternsContainer,\n ModalState,\n QueryPendingState,\n SortOrder,\n} from '@wix/bex-core';\nimport {\n CollectionBIReporter,\n CollectionState,\n CustomField,\n FedopsReporter,\n Filter,\n FiltersMap,\n idArrayFilter,\n MultiCollectionSupport,\n ReportBI,\n TaskState,\n ValueBox,\n} from '@wix/bex-core';\nimport { Column, FilterProps, PrivateView, TableColumn } from '../model';\nimport { CustomColumnsProps } from '../components/CustomColumns';\nimport type {\n LiveRegionRefType,\n TableProps,\n LiveRegionState,\n} from '@wix/design-system';\nimport type { AppliedFiltersTagListState } from '../components/AppliedFiltersTagList/AppliedFiltersTagListState';\nimport { ToolbarFeatureInitializer } from './toolbarFeatureInitializer';\nimport { simplifyColumn, simplifyColumns } from './simplifyColumns';\nimport type { CollectionViewsState } from './CollectionViewsState';\nimport { ReactElement } from 'react';\nimport { ToolbarBIReporter } from './ToolbarBIReporter';\nimport { DragAndDropState } from '../components/DragAndDrop';\nimport { CollectionViewsDropdownProps } from '../components/CollectionViewsDropdown';\nimport { ActionCellProps } from '../components/ActionCell';\nimport { ActionCellAPI } from './ItemActionsState';\nimport { CustomColumnsState } from './CustomColumnsState';\nimport { SidePanelsState } from './SidePanelsState';\nimport { CollectionToolbarFiltersState } from '../components/CollectionToolbarFilters/CollectionToolbarFiltersState';\nimport { MultiLevelSortingState } from './MultiLevelSortingState';\nimport { RectState } from './RectState';\nimport { BulkActionToolbarState } from './BulkActionToolbarState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { simplifyExtendedColumns } from './simplifyExtendedColumns';\nimport type { AddApplyFiltersButton } from '../components/FiltersPanel/AddApplyFiltersButton';\nimport { TabsFilterState } from '../components/TabsFilter/TabsFilterState';\nimport { CollectionDataExtensionState } from '../components/DataExtension';\nimport { TagsCollectionState } from './TagsCollectionState';\nimport {\n AdditionalFeaturesAvailabilityBIParams,\n FeaturesAvailabilityBIParams,\n} from './FeaturesAvailabilityBIParams';\nimport { ExtensionMenuItemsState } from './ExtensionMenuItemsState';\n\nexport type Component<C> = () => C;\n\nexport interface ToolbarCollectionStateParamsInitParams {\n featuresInitializers: (ToolbarFeatureInitializer | undefined)[];\n hasMultiLevelSorting?: boolean;\n}\n\nexport interface ToolbarCollectionStateParams<T, F extends FiltersMap> {\n readonly container: WixPatternsContainer;\n readonly collection: CollectionState<T, F>;\n readonly componentType: string;\n readonly reportBi?: ReportBI;\n}\n\nexport class ToolbarCollectionState<T, F extends FiltersMap = FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly selectedColumns = idArrayFilter<{\n id: string;\n isSelected: boolean;\n }>();\n readonly initTask = new TaskState();\n readonly fedopsReporter;\n readonly dataCapsule;\n readonly container: WixPatternsContainer;\n readonly namespace;\n readonly reportBi: ReportBI;\n readonly featuredComponents = {\n moreFiltersButton: new ValueBox<Component<{}> | null>(null),\n appliedFiltersTagList: new ValueBox<{\n component: Component<{}>;\n state: AppliedFiltersTagListState<T, F>;\n } | null>(null),\n exportButton: new ValueBox<ReactElement | null>(null),\n exportModal: new ValueBox<ReactElement<{}> | null>(null),\n };\n readonly toolbarRect;\n readonly itemsContentRect;\n readonly panels;\n readonly bulk;\n readonly multi;\n readonly componentType;\n\n _userColumns: Column[] = []; // columns propagated from user\n _featureColumns: Column[] = observable.array(); // columns propagated from installed features\n _extendedColumns: Column[] = []; // columns propagated from data-extension (can be merged with above?)\n internalScroll = undefined as boolean | undefined;\n customColumnsState: CustomColumnsState<T, F> | null = null;\n customColumnsStateInitialized = false;\n multiLevelSorting: MultiLevelSortingState<T, F> | null = null;\n liveRegionRef: { current: null | LiveRegionRefType } = {\n current: null,\n };\n collectionDataExtension: CollectionDataExtensionState<T, F> | null = null;\n menuItemExtensions = new Map<string, ExtensionMenuItemsState>();\n tagsCollectionState: TagsCollectionState<T, F> | null = null;\n toolbarFiltersState: CollectionToolbarFiltersState<T, F> | null = null;\n toolbarFiltersStateInitialized = false;\n _dnd: DragAndDropState<T, F> | null = null;\n toolbarBIReporter: ToolbarBIReporter<T, F>;\n filtersProps: FilterProps<any>[] | null = null;\n viewsProps: CollectionViewsDropdownProps<F> | null | undefined = null;\n dragAndDropCategories: (keyof F)[][] | null | undefined = null;\n customColumnsProps: CustomColumnsProps | null | undefined = null;\n selectionProps = new ValueBox<{ showSelection?: boolean }>({});\n featuresAvailability: FeaturesAvailabilityBIParams = {};\n additionalFeaturesAvailability: AdditionalFeaturesAvailabilityBIParams = {};\n actionCell = new ValueBox<\n | undefined\n | ActionCellProps\n | ((item: T, index: number, api: ActionCellAPI<T, F>) => ActionCellProps)\n >(undefined);\n contentPadding = 24;\n contentPaddingPx = `${this.contentPadding}px`;\n\n scrollElementRect = observable<{\n height?: number | null;\n top?: number | null;\n }>({\n height: null,\n top: null,\n });\n scrollTopBeforeUnmount: number = 0;\n minimizedHeaderHeight = 0;\n tabsFilterProps?: {\n filter: Filter<any>;\n } = undefined;\n viewsState?: CollectionViewsState<T, F>;\n exportState?: ModalState;\n pendingQuery?: QueryPendingState;\n AddApplyFiltersButton?: typeof AddApplyFiltersButton;\n tabs?: TabsFilterState<T, F>;\n\n constructor(params: ToolbarCollectionStateParams<T, F>) {\n this.collection = params.collection;\n this.container = params.container;\n this.componentType = params.componentType;\n\n this.fedopsReporter = new FedopsReporter({\n componentName: this.componentType,\n collection: this.collection,\n internalMonitor: this.container.internalMonitor,\n });\n\n this.multi = new MultiCollectionSupport<F>({\n collections: [this.collection as CollectionState<unknown, F>],\n });\n\n this.itemsContentRect = new RectState(params);\n this.toolbarRect = new RectState(params);\n\n this.panels = new SidePanelsState({\n container: this.container,\n panelGroupName: this.collection.queryName,\n });\n\n this.toolbarBIReporter = new ToolbarBIReporter<T, F>({\n toolbar: this,\n collection: this.collection,\n reportBi: (ev) => {\n this.reportBi({\n ...ev,\n params: {\n ...this._commonDynamicBiParams(),\n ...ev.params,\n },\n });\n },\n });\n\n this.bulk = new BulkActionToolbarState({\n toolbarBIReporter: this.toolbarBIReporter,\n panels: this.panels,\n multi: this.multi,\n translate: this.container.translate,\n scrollToTop: () => {\n this.collection.scrollableContent?.scrollTo({\n top: 0,\n left: 0,\n });\n },\n });\n\n this.namespace = [\n this.container.environment.componentId,\n this.collection.queryName,\n ].join('.');\n\n const { dataCapsule } = this.container.createEssentials({\n dataCapsule: {\n namespace: this.namespace,\n },\n });\n\n this.dataCapsule = dataCapsule;\n\n const reportBiBase = params.reportBi ?? this.container.reportBi;\n\n this.reportBi = (ev) => {\n reportBiBase({\n ...ev,\n params: {\n ...this._commonDynamicBiParams(),\n ...ev.params,\n },\n });\n };\n\n makeObservable(this, {\n _userColumns: observable.ref,\n _extendedColumns: observable.ref,\n columns: computed,\n customColumnsStateInitialized: observable.ref,\n viewsProps: observable.ref,\n dragAndDropCategories: observable.ref,\n customColumnsProps: observable.ref,\n filtersProps: observable.ref,\n shouldDisplayFiltersTags: computed,\n totalStickyContentHeight: computed,\n showInitialLoader: computed,\n showEmptyState: computed,\n showErrorState: computed,\n hasSubToolbarComponents: computed,\n containerRect: computed,\n setFilterTagsPropsIfChanged: action,\n _initDefaultSortableColumn: action,\n minimizedHeaderHeight: observable.ref,\n tabsFilterProps: observable.ref,\n toolbarFiltersStateInitialized: observable.ref,\n hasToolbarTabs: computed,\n itemsContentHeight: computed,\n setNewColumns: action,\n addFeatureColumn: action,\n setNewExtendedColumns: action,\n _commonDynamicBiParams: action,\n _adjustSortWithNewColumns: action,\n setToolbarFiltersStateInitialized: action,\n activeFiltersEntries: computed,\n });\n }\n\n get containerRect() {\n const { itemsContentRect, toolbarRect, internalScroll } = this;\n\n if (internalScroll && itemsContentRect.rect.height) {\n return {\n ...itemsContentRect.rect,\n };\n }\n\n if (itemsContentRect.rect.left && toolbarRect.rect.left) {\n const top = toolbarRect.rect.bottom;\n const bottom = top + itemsContentRect.rect.height;\n const left = toolbarRect.rect.left;\n const right = left + toolbarRect.rect.width;\n return {\n left,\n right,\n top,\n bottom,\n height: bottom - top,\n width: right - left,\n };\n }\n\n return undefined;\n }\n\n get containerTop() {\n return this.containerRect?.top;\n }\n\n /**\n * How much height left for the content inside the viewport\n */\n get itemsContentHeight() {\n const {\n toolbarRect,\n scrollElementRect,\n contentPadding,\n internalScroll,\n itemsContentRect,\n } = this;\n\n if (internalScroll && itemsContentRect.rect.height) {\n return itemsContentRect.rect.height;\n }\n\n if (\n toolbarRect.rect.height == null ||\n toolbarRect.rect.top == null ||\n scrollElementRect.height == null ||\n scrollElementRect.top == null\n ) {\n return 0;\n }\n\n if (process.env.NODE_ENV === 'test') {\n return 796;\n }\n\n const toolbarOffsetTop = toolbarRect.rect.top - scrollElementRect.top;\n\n return (\n scrollElementRect.height -\n toolbarOffsetTop -\n toolbarRect.rect.height -\n contentPadding\n );\n }\n\n get totalStickyContentHeight() {\n const { toolbarRect, minimizedHeaderHeight } = this;\n if (toolbarRect.rect.height == null) {\n return null;\n }\n\n return toolbarRect.rect.height + minimizedHeaderHeight;\n }\n\n get sidePanel() {\n return this.panels.sidePanel;\n }\n\n get sidePanelComponents() {\n return this.panels.sidePanelComponents;\n }\n\n get showInitialLoader() {\n const { multi, initTask } = this;\n\n return (\n multi.showInitialLoader ||\n initTask.status.isLoading ||\n initTask.status.isIdle\n );\n }\n\n get showEmptyState() {\n const {\n showInitialLoader,\n multi: { showRefreshLoader, showEmptyState },\n } = this;\n return showEmptyState && !showInitialLoader && !showRefreshLoader;\n }\n\n get errorStatus() {\n const { initTask, multi } = this;\n return initTask.errorStatus ?? multi.errorStatus;\n }\n\n get showErrorState() {\n const {\n showInitialLoader,\n multi: { showRefreshLoader, showErrorState },\n initTask,\n } = this;\n\n return (\n (showErrorState || initTask.status.isError) &&\n !showInitialLoader &&\n !showRefreshLoader\n );\n }\n\n get hasSubToolbarComponents() {\n const { appliedFiltersTagList } = this.featuredComponents;\n return appliedFiltersTagList.value != null;\n }\n\n get reorderModeState() {\n return this._dnd?.reorderModeState;\n }\n\n get shouldDisplayFiltersTags() {\n return !!this.featuredComponents.appliedFiltersTagList.value?.state.tags\n .length;\n }\n\n get hasToolbarTabs() {\n return this.tabsFilterProps != null;\n }\n\n get isReorderModeToolbarVisible() {\n return this.reorderModeState?.isReorderModeToolbarVisible;\n }\n\n get isReorderModePending() {\n return this.reorderModeState?.isReorderModePending;\n }\n\n get columns(): Column[] {\n const { _userColumns, _featureColumns, _extendedColumns } = this;\n return [..._userColumns, ..._featureColumns, ..._extendedColumns];\n }\n\n get selectedOrderedColumnsOrAll() {\n const { columns, customColumnsState } = this;\n\n if (customColumnsState) {\n return customColumnsState.selectedOrderedColumns;\n }\n\n return columns;\n }\n\n _commonDynamicBiParams(query = this.collection.result.originQuery) {\n const { collection, viewsState } = this;\n\n return {\n componentType: this.componentType,\n ...collection._commonDynamicBiParams(query),\n currentTab: this.getCurrentTabName(),\n ...(viewsState && { currentView: viewsState.views.currentView?.id }),\n ...(viewsState?.views?.currentView && {\n isPredefined: viewsState.views.currentView.isPreset,\n }),\n ...(viewsState?.views?.currentView?.filters && {\n numFiltersInView: this._numberFiltersInView(\n viewsState.views.currentView,\n ),\n }),\n visibleColumnsOrder: this.selectedOrderedColumnsOrAll\n .map((col) => col.id ?? col.title ?? col.name)\n .join(','),\n numColumns: this.selectedOrderedColumnsOrAll.length,\n numFiltersActive: collection.query.activeFiltersCount,\n };\n }\n\n _numberFiltersInView(view: PrivateView<F>) {\n let numFiltersInView = 0;\n\n if (view.filters) {\n for (const filterName of Object.keys(view.filters)) {\n const filter = view.filters[filterName];\n\n if (filter && filter.value) {\n if (Array.isArray(filter.value)) {\n numFiltersInView += filter.value.length;\n } else if (filter.value) {\n numFiltersInView += 1;\n }\n }\n }\n }\n\n return numFiltersInView;\n }\n\n getCurrentTabName() {\n const {\n tabsFilterProps,\n collection: {\n result: { originQuery: query },\n },\n } = this;\n\n const tabs =\n tabsFilterProps &&\n Object.entries(query.rawFilters)\n .filter(([key]) => key === tabsFilterProps.filter.name)\n .flatMap(([, value]) =>\n Array.isArray(value)\n ? value.map(tabsFilterProps.filter.itemKey)\n : value,\n );\n\n return tabs?.[0] as string;\n }\n\n getCollectionSnapshot = (): {\n [key: string]: string | number | undefined;\n } => {\n const {\n collection: {\n result: { originQuery },\n },\n } = this;\n\n return {\n viewShown: this.viewsState?.views.currentView?.id,\n tabShown: this.getCurrentTabName(),\n sortOrderApplied: originQuery.sort?.length\n ? JSON.stringify(originQuery.sort)\n : undefined,\n filtersApplied: JSON.stringify(originQuery.filtersKey),\n filteredListSizeShown: this.collection.result.total,\n };\n };\n\n getPendingFilter<A>(filter: A) {\n return this.pendingQuery?.getApplicableFilter(filter) ?? filter;\n }\n\n init({\n featuresInitializers,\n hasMultiLevelSorting,\n }: ToolbarCollectionStateParamsInitParams) {\n const {\n collection,\n multi,\n initTask,\n panels,\n sidePanel,\n collectionDataExtension,\n tagsCollectionState,\n bulk,\n customColumnsState,\n viewsState,\n } = this;\n\n const biReporters = multi.collections.map(\n (collection) =>\n new CollectionBIReporter({\n collection,\n reportBi: (ev) => {\n this.reportBi({\n ...ev,\n params: {\n ...collection._commonDynamicBiParams(),\n ...ev.params,\n },\n });\n },\n }),\n );\n\n // must call `initOptionalFeatures` before collection init because we want to allow features to customize the collection before collection.init\n const tableFeatures = featuresInitializers\n .filter((t): t is ToolbarFeatureInitializer => t != null)\n .map((tableFeatInit) => tableFeatInit(this));\n\n // should be initialized before collection.init() so the sort query will be updated before the time of the first request.\n this._initDefaultSortableColumn(hasMultiLevelSorting);\n\n const disposers = [\n collectionDataExtension?.init(), // dataExtensionState should be initialized and beforeInitialFetch promise listener registered before customColumnsState?._tableInit() because custom columns might use data extensions\n customColumnsState?._tableInit(),\n viewsState?.init(),\n // register table feature first as they might register to the collection `beforeInitialFetch`\n ...tableFeatures.map((t) => t.init()),\n reaction(\n () => this.selectedOrderedColumnsOrAll,\n (columns) => {\n collection.query._columns.replace(columns.map((c) => c.id));\n },\n {\n fireImmediately: true,\n },\n ),\n reaction(\n () => collectionDataExtension?.dataExtension.availableCustomFields,\n (customFields) => {\n this.setNewExtendedColumns(customFields ?? []);\n },\n ),\n multi.init(),\n ...biReporters.map((b) => b.init()),\n panels.init(),\n sidePanel.init(),\n bulk.init(),\n tagsCollectionState?.init(),\n addEventListener(\n collection.bulkSelect.events,\n 'openModal',\n this.bulk.modals.actionModal.modal.open,\n ),\n addEventListener(\n collection.bulkSelect.events,\n 'closeModal',\n this.bulk.modals.actionModal.modal.close,\n ),\n addEventListener(this.collection.emitter, 'resultUpdated', () => {\n this.broadcast({\n message: this.container.translate(\n 'cairo.a11y.liveRegion.resultsFound',\n { num: this.collection.result.total },\n ),\n });\n }),\n ];\n\n const startTime = performance.now();\n\n initTask.runOnce(async () => {\n this.toolbarBIReporter.loadStart();\n\n multi.initTask.runOnce();\n customColumnsState?.initTask.runOnce();\n\n tableFeatures.forEach(({ initTask }) => {\n if (initTask) {\n initTask.runOnce();\n }\n });\n\n try {\n await Promise.all([\n multi.initTask.status.promise,\n tagsCollectionState?.initTask.status.promise?.catch(() => null), // resilience to failed request\n collectionDataExtension?.initTask.status.promise?.catch(() => null), // resilience to failed request\n customColumnsState?.initTask.status.promise,\n ...tableFeatures.map((t) => t.initTask?.status.promise),\n ]);\n\n this.toolbarBIReporter.loadEnd(startTime);\n } catch (e) {\n throw e;\n }\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n setFilterTagsPropsIfChanged(filtersProps: FilterProps<any>[] | null) {\n if (this.filtersProps !== filtersProps) {\n this.filtersProps = filtersProps;\n }\n }\n\n _toStoredColumn = (column: Column) => {\n const { id, defaultHidden, hideable, hiddenFromCustomColumnsSelection } =\n column;\n\n return {\n id,\n isSelected:\n !hideable || hiddenFromCustomColumnsSelection || !defaultHidden,\n };\n };\n\n setNewColumns(tableColumns: TableColumn<T>[]) {\n this._userColumns = simplifyColumns(tableColumns);\n }\n\n addFeatureColumn(featureColumn: TableColumn<T>) {\n this._featureColumns.push(simplifyColumn(featureColumn));\n\n this._adjustSelectedColumns();\n }\n\n setNewExtendedColumns(\n fields: CustomField[] = [],\n { defaultHidden = false }: { defaultHidden?: boolean } = {},\n ) {\n if (\n !this.collectionDataExtension?.dataExtension.initTask.status.isSuccess\n ) {\n return;\n }\n\n this._extendedColumns = simplifyExtendedColumns<T>({\n fields,\n toExtendedFields: this.collection.toExtendedFields,\n defaultHidden,\n });\n\n this._adjustSelectedColumns();\n }\n\n broadcast(params: LiveRegionState) {\n this.liveRegionRef.current?.broadcast(params);\n }\n\n setToolbarFiltersStateInitialized(value: boolean) {\n this.toolbarFiltersStateInitialized = value;\n }\n\n _initDefaultSortableColumn(hasMultiLevelSorting = false) {\n const {\n columns,\n collection: { query },\n } = this;\n\n const defaultSortableColumns = columns.filter(\n (col): col is Column & { defaultSortOrder: SortOrder } =>\n col.sortable === true && col.id != null && col.defaultSortOrder != null,\n );\n\n if (defaultSortableColumns.length && !query.sort.value.length) {\n const sortQuery = defaultSortableColumns.map((column) => ({\n field: column.id,\n direction: column.defaultSortOrder,\n }));\n\n query.sort.setSortQuery(\n hasMultiLevelSorting ? sortQuery : sortQuery.slice(0, 1),\n );\n }\n }\n\n _adjustSelectedColumns = () => {\n const {\n selectedColumns,\n customColumnsState,\n customColumnsProps,\n customColumnsStateInitialized,\n } = this;\n\n // as long as consumer rendered `<CustomColumns/>` at least once, use `mergeNewColumns` strategy when re-rendering new columns prop\n if (customColumnsProps != null || customColumnsStateInitialized) {\n // if `customColumns` is not set yet - do nothing\n if (customColumnsState) {\n const { initTask } = customColumnsState;\n const mergedColumns = customColumnsState.mergeNewColumns();\n selectedColumns.defaultValue = this.columns.map((col) => {\n const { id, isSelected } = this._toStoredColumn(col);\n return { id, isSelected };\n });\n if (initTask.status.isSuccess) {\n selectedColumns.refresh(mergedColumns);\n } else {\n selectedColumns.setValue(mergedColumns);\n }\n }\n } else {\n const allColumns = this.columns.map(({ id }) => ({\n id,\n isSelected: true,\n }));\n selectedColumns.defaultValue = allColumns;\n selectedColumns.setValue(allColumns);\n }\n };\n\n _adjustSortWithNewColumns(tableColumns: TableColumn<T>[]) {\n const {\n collection: { query },\n } = this;\n const tableColumnsIds = new Set(tableColumns.map((column) => column.id));\n\n query.sort.value\n .filter(({ field }) => !tableColumnsIds.has(field))\n .forEach((s) => {\n query.sort.value.remove(s);\n });\n query.sort.events.emit('change');\n this.collection.scheduleSort({ clearResult: true });\n }\n\n closeSidePanel = () => {\n this.sidePanel.close();\n };\n\n openFiltersPanel() {\n this.panels.openSidePanel('filters');\n }\n\n retryErrorState = action(() => {\n const { initTask, multi } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else {\n multi.retryErrorState();\n }\n });\n\n onSelectionStarted = () => {\n this.bulk._selectionStartTime = performance.now();\n };\n\n _onSelectAllCheckboxClick() {}\n\n get activeFiltersEntries() {\n return Array.from(\n this.multi.collections\n .flatMap(({ query }) =>\n query.activeFiltersEntries.filter(\n ([_, filter]) => filter !== query.search,\n ),\n )\n .reduce(\n (map, entry) => map.set(entry[0], entry),\n new Map<string, [string, Filter<unknown>]>(),\n )\n .values(),\n );\n }\n\n onSelectionChanged: Required<TableProps>['onSelectionChanged'] = action(\n (_selectedIds, change) => {\n if (change == null) {\n return;\n }\n\n const { panels, bulk } = this;\n\n panels.closeSidePanel();\n\n switch (change.type) {\n case 'ALL':\n bulk.toggleSelectAll({ location: 'Checkbox' });\n break;\n case 'NONE':\n bulk.deselectAll({ location: 'Checkbox' });\n break;\n case 'SINGLE_TOGGLE':\n if (change.value) {\n bulk.selectOne(change.id);\n } else {\n bulk.deselectOne(change.id);\n }\n break;\n }\n },\n );\n\n openCustomFieldModal = () => {\n const origin = 'external';\n this.toolbarBIReporter.cairoDataExAddCustomField(origin);\n return this.collectionDataExtension?.dataExtension?.openCustomFieldModal({\n origin,\n });\n };\n\n openManageTagsModal = () => {\n return this.tagsCollectionState?.openManageTagsModal();\n };\n\n onAddItemActionComplete = async (items: T[]) => {\n await this._resetQueryAndAddItems(items);\n\n this.toolbarBIReporter.newItemCreationEnd(items);\n };\n\n _resetQueryAndAddItems = async (items: T[]) => {\n const { collection } = this;\n const { query } = collection;\n\n query.resetFilters();\n query.resetSorting();\n\n await collection.clearResultAndMoveToStart();\n\n collection._optimisticActions?.createMany(items, {\n submit: async () => items,\n });\n\n collection.scrollableContent?.scrollTo?.({\n top: 0,\n behavior: 'smooth',\n });\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_getCollectionComponentUniqueId","WixPatternsRouterState","constructor","_defineProperty2","default","Map","makeObservable","currentState","observable","setCurrentState","action","state","saveState","uniqueId","getCollectionComponentUniqueId","stateRefs","set","exports"],"sources":["../../../src/state/WixPatternsRouterState.ts"],"sourcesContent":["import { action, makeObservable, observable } from 'mobx';\nimport { getCollectionComponentUniqueId } from '../utils/getCollectionComponentUniqueId';\nimport { ICollectionComponentState } from './ICollectionComponentState';\n\nexport class WixPatternsRouterState {\n readonly stateRefs: Map<string, ICollectionComponentState> = new Map();\n currentState: unknown = null;\n isUsingCache = false;\n\n constructor() {\n makeObservable(this, {\n currentState: observable,\n setCurrentState: action,\n });\n }\n\n setCurrentState(state: unknown) {\n this.currentState = state;\n }\n\n saveState<T extends ICollectionComponentState>(state: T) {\n const uniqueId = getCollectionComponentUniqueId(state);\n this.stateRefs.set(uniqueId, state);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,+BAAA,GAAAD,OAAA;AAGO,MAAME,sBAAsB,CAAC;EAKlCC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA,qBAJ+C,IAAIC,GAAG,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,wBAC9C,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,wBACb,KAAK;IAGlB,IAAAE,oBAAc,EAAC,IAAI,EAAE;MACnBC,YAAY,EAAEC,gBAAU;MACxBC,eAAe,EAAEC;IACnB,CAAC,CAAC;EACJ;EAEAD,eAAeA,CAACE,KAAc,EAAE;IAC9B,IAAI,CAACJ,YAAY,GAAGI,KAAK;EAC3B;EAEAC,SAASA,CAAsCD,KAAQ,EAAE;IACvD,MAAME,QAAQ,GAAG,IAAAC,8DAA8B,EAACH,KAAK,CAAC;IACtD,IAAI,CAACI,SAAS,CAACC,GAAG,CAACH,QAAQ,EAAEF,KAAK,CAAC;EACrC;AACF;AAACM,OAAA,CAAAhB,sBAAA,GAAAA,sBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_getCollectionComponentUniqueId","WixPatternsRouterState","constructor","_defineProperty2","default","Map","makeObservable","currentState","observable","setCurrentState","action","state","saveState","uniqueId","getCollectionComponentUniqueId","stateRefs","set","exports"],"sources":["../../../src/state/WixPatternsRouterState.ts"],"sourcesContent":["import { action, makeObservable, observable } from 'mobx';\nimport { getCollectionComponentUniqueId } from '../utils/getCollectionComponentUniqueId';\nimport { ICollectionComponentState } from './ICollectionComponentState';\n\nexport class WixPatternsRouterState {\n readonly stateRefs: Map<string, ICollectionComponentState> = new Map();\n currentState: unknown = null;\n isUsingCache = false;\n\n constructor() {\n makeObservable(this, {\n currentState: observable,\n setCurrentState: action,\n });\n }\n\n setCurrentState(state: unknown) {\n this.currentState = state;\n }\n\n saveState<S extends ICollectionComponentState>(state: S) {\n const uniqueId = getCollectionComponentUniqueId(state);\n this.stateRefs.set(uniqueId, state);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,+BAAA,GAAAD,OAAA;AAGO,MAAME,sBAAsB,CAAC;EAKlCC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA,qBAJ+C,IAAIC,GAAG,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,wBAC9C,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,wBACb,KAAK;IAGlB,IAAAE,oBAAc,EAAC,IAAI,EAAE;MACnBC,YAAY,EAAEC,gBAAU;MACxBC,eAAe,EAAEC;IACnB,CAAC,CAAC;EACJ;EAEAD,eAAeA,CAACE,KAAc,EAAE;IAC9B,IAAI,CAACJ,YAAY,GAAGI,KAAK;EAC3B;EAEAC,SAASA,CAAsCD,KAAQ,EAAE;IACvD,MAAME,QAAQ,GAAG,IAAAC,8DAA8B,EAACH,KAAK,CAAC;IACtD,IAAI,CAACI,SAAS,CAACC,GAAG,CAACH,QAAQ,EAAEF,KAAK,CAAC;EACrC;AACF;AAACM,OAAA,CAAAhB,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -1 +1 @@
1
- .Collapse1598272728__root{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.Collapse1598272728__exit{height:0}.CollectionToolbar3382178832__left{min-width:0}.CollectionToolbar3382178832__left.CollectionToolbar3382178832--expandable{flex:auto}.CollectionToolbar3382178832__root .CollectionToolbar3382178832__right{justify-content:flex-end!important;flex:auto}.CollectionToolbar3382178832__root .CollectionToolbar3382178832__right.CollectionToolbar3382178832__fullWidth{margin-inline-start:0!important}.SearchOrCustomFilter1267168195__search{min-width:140px;max-width:240px;flex:1 0}.AutoCompleteReadonly4157437575__root.AutoCompleteReadonly4157437575--disableEditing{cursor:pointer}.AutoCompleteReadonly4157437575__root.AutoCompleteReadonly4157437575--disableEditing input{cursor:pointer}.ViewsDropdown2859773591__root{width:200px}.CustomFieldsViewWidgetSection488990687__breakWord{overflow-wrap:break-word}.DragHandle4126252376__root{display:flex;align-items:center}.DragHandle4126252376__root:not(.DragHandle4126252376--disabled){cursor:grab;color:#a8caff}.DragHandle4126252376__root.DragHandle4126252376--disabled{color:#acafc4}.DragHandle4126252376__root:focus-visible:not(.DragHandle4126252376--disabled){outline:0;box-shadow:0 0 0 3px #a6d0ff}.DragHandle4126252376__root.DragHandle4126252376--disabled{pointer-events:none}.DragHandle4126252376__root.DragHandle4126252376--dragging:not(.DragHandle4126252376--disabled){cursor:grabbing}.Fade1909900573__root{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);opacity:1}.Fade1909900573__root.Fade1909900573--exit{opacity:0}.Heading3913004426__root{visibility:visible}.Heading3913004426__root.Heading3913004426--appearanceH2{font-size:28px!important;line-height:36px!important}.InputOverflow3256724686__root.InputOverflow3256724686--selected:not(.InputOverflow3256724686--focused) input::placeholder{color:#000624}.MaxHeightText720031613__root{opacity:1}.MaxHeightText720031613__root.MaxHeightText720031613--height24{line-height:24px}.MaxLines795424826__root{overflow:hidden}.MaxLines795424826__root.MaxLines795424826--clamp{-webkit-box-orient:vertical;display:-webkit-box}.MultiBulkActionToolbar2258754658__root{min-width:0}.NestedTableRow2448990440__firstLevel td{padding-top:18px!important;padding-bottom:18px!important}.NestedTableRow2448990440__root:hover{background-color:#e7f0ff}.NestedTableRow2448990440__root.NestedTableRow2448990440--expandable{cursor:pointer}.NestedTableRow2448990440__placeholder td{padding:0!important;width:100%}.NestedTableRow2448990440__root:hover td:first-of-type::before,.NestedTableRow2448990440__parentHovered td:first-of-type::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:#5999ff}.PickerContent2439821551__root{display:flex}.PickerContentAdditionalStep2033742758__titles{display:flex;justify-content:center;flex:1 1 auto;overflow:hidden;flex-direction:column}.PickerContentAdditionalStep2033742758__suffix{display:flex;align-items:center;flex:0 0 auto;overflow:hidden}.PickerTableListItem3602111583__root{box-sizing:border-box}.ScrollableContent3531372324__root.ScrollableContent3531372324--overflowY{overflow-y:auto}.ScrollableContent3531372324__root.ScrollableContent3531372324--overflowX{overflow-x:auto}.ScrollableContent3531372324__root.ScrollableContent3531372324--smooth{scroll-behavior:smooth}.SkeletonCard2078429280__headerLoading{display:block!important}.SlidingModal4269159961__root{transition:transform .4s ease 0s;position:fixed;z-index:1}.SlidingModal4269159961__root:not(.SlidingModal4269159961--exited){box-shadow:0 3px 24px 0 rgba(22,45,61,.18),0 8px 8px 0 rgba(22,45,61,.12)}.TableVirtualHeader2329088750__root{display:flex}.TabsFilter2225712801__root .TabsFilter2225712801__title{color:inherit!important}.ManageTagsModal2561159483__root{display:flex}.ToolbarItemBox4108010595__root{min-width:0}.ToolbarItemBox4108010595__root.ToolbarItemBox4108010595--removeStartPadding{margin-left:-24px}.ToolbarItemBox4108010595__root.ToolbarItemBox4108010595--expandable{flex:1 0}.common2238181777__column{display:flex;flex-direction:column}.common2238181777__fullHeight{height:100%;min-height:0}
1
+ .Collapse3317767631__root{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.Collapse3317767631__exit{height:0}.CollectionToolbar637713990__left{min-width:0}.CollectionToolbar637713990__left.CollectionToolbar637713990--expandable{flex:auto}.CollectionToolbar637713990__root .CollectionToolbar637713990__right{justify-content:flex-end!important;flex:auto}.CollectionToolbar637713990__root .CollectionToolbar637713990__right.CollectionToolbar637713990__fullWidth{margin-inline-start:0!important}.SearchOrCustomFilter571984131__search{min-width:140px;max-width:240px;flex:1 0}.AutoCompleteReadonly2612522858__root.AutoCompleteReadonly2612522858--disableEditing{cursor:pointer}.AutoCompleteReadonly2612522858__root.AutoCompleteReadonly2612522858--disableEditing input{cursor:pointer}.ViewsDropdown238261939__root{width:200px}.CustomFieldsViewWidgetSection2062923859__breakWord{overflow-wrap:break-word}.DragHandle322401840__root{display:flex;align-items:center}.DragHandle322401840__root:not(.DragHandle322401840--disabled){cursor:grab;color:#a8caff}.DragHandle322401840__root.DragHandle322401840--disabled{color:#acafc4}.DragHandle322401840__root:focus-visible:not(.DragHandle322401840--disabled){outline:0;box-shadow:0 0 0 3px #a6d0ff}.DragHandle322401840__root.DragHandle322401840--disabled{pointer-events:none}.DragHandle322401840__root.DragHandle322401840--dragging:not(.DragHandle322401840--disabled){cursor:grabbing}.Fade292952755__root{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);opacity:1}.Fade292952755__root.Fade292952755--exit{opacity:0}.Heading663405394__root{visibility:visible}.Heading663405394__root.Heading663405394--appearanceH2{font-size:28px!important;line-height:36px!important}.InputOverflow1916381449__root.InputOverflow1916381449--selected:not(.InputOverflow1916381449--focused) input::placeholder{color:#000624}.MaxHeightText2915621430__root{opacity:1}.MaxHeightText2915621430__root.MaxHeightText2915621430--height24{line-height:24px}.MaxLines2049735775__root{overflow:hidden}.MaxLines2049735775__root.MaxLines2049735775--clamp{-webkit-box-orient:vertical;display:-webkit-box}.MultiBulkActionToolbar3161318651__root{min-width:0}.NestedTableRow796097406__firstLevel td{padding-top:18px!important;padding-bottom:18px!important}.NestedTableRow796097406__root:hover{background-color:#e7f0ff}.NestedTableRow796097406__root.NestedTableRow796097406--expandable{cursor:pointer}.NestedTableRow796097406__placeholder td{padding:0!important;width:100%}.NestedTableRow796097406__root:hover td:first-of-type::before,.NestedTableRow796097406__parentHovered td:first-of-type::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:#5999ff}.PickerContent2973192338__root{display:flex}.PickerContentAdditionalStep1340674953__titles{display:flex;justify-content:center;flex:1 1 auto;overflow:hidden;flex-direction:column}.PickerContentAdditionalStep1340674953__suffix{display:flex;align-items:center;flex:0 0 auto;overflow:hidden}.PickerTableListItem2753010380__root{box-sizing:border-box}.ScrollableContent244187131__root.ScrollableContent244187131--overflowY{overflow-y:auto}.ScrollableContent244187131__root.ScrollableContent244187131--overflowX{overflow-x:auto}.ScrollableContent244187131__root.ScrollableContent244187131--smooth{scroll-behavior:smooth}.SkeletonCard2784032012__headerLoading{display:block!important}.SlidingModal2089398123__root{transition:transform .4s ease 0s;position:fixed;z-index:1}.SlidingModal2089398123__root:not(.SlidingModal2089398123--exited){box-shadow:0 3px 24px 0 rgba(22,45,61,.18),0 8px 8px 0 rgba(22,45,61,.12)}.TableVirtualHeader3769753427__root{display:flex}.TabsFilter3720081163__root .TabsFilter3720081163__title{color:inherit!important}.ManageTagsModal3616274961__root{display:flex}.ToolbarItemBox211139048__root{min-width:0}.ToolbarItemBox211139048__root.ToolbarItemBox211139048--removeStartPadding{margin-left:-24px}.ToolbarItemBox211139048__root.ToolbarItemBox211139048--expandable{flex:1 0}.common2716210403__column{display:flex;flex-direction:column}.common2716210403__fullHeight{height:100%;min-height:0}