@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
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_mobx","require","createOptimisticActionsOrderByModeReaction","dnd","collection","reaction","isDisabled","_optimisticActions","_orderByMode","fireImmediately"],"sources":["../../../../src/state/DragAndDrop/createOptimisticActionsOrderByModeReaction.ts"],"sourcesContent":["import { DragAndDropState } from '../../components/DragAndDrop';\nimport { CollectionState, FiltersMap } from '@wix/bex-core';\nimport { reaction } from 'mobx';\n\nexport function createOptimisticActionsOrderByModeReaction<\n T,\n F extends FiltersMap,\n>(dnd: DragAndDropState<T, F>, collection: CollectionState<T, F>) {\n return reaction(\n () => dnd.isDisabled,\n (isDisabled) => {\n const { _optimisticActions } = collection;\n if (!_optimisticActions) {\n return;\n }\n\n _optimisticActions._orderByMode = isDisabled ? 'orders' : 'moves';\n },\n { fireImmediately: true },\n );\n}\n"],"mappings":";;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AAEO,SAASC,0CAA0CA,CAGxDC,GAA2B,EAAEC,UAAiC,EAAE;EAChE,OAAO,IAAAC,cAAQ,EACb,MAAMF,GAAG,CAACG,UAAU,EACnBA,UAAU,IAAK;IACd,MAAM;MAAEC;IAAmB,CAAC,GAAGH,UAAU;IACzC,IAAI,CAACG,kBAAkB,EAAE;MACvB;IACF;IAEAA,kBAAkB,CAACC,YAAY,GAAGF,UAAU,GAAG,QAAQ,GAAG,OAAO;EACnE,CAAC,EACD;IAAEG,eAAe,EAAE;EAAK,CAC1B,CAAC;AACH","ignoreList":[]}
@@ -120,17 +120,16 @@ class EntityPageState {
120
120
  this.navigateToParent();
121
121
  }
122
122
  navigateToParent(updatedEntity) {
123
- const entityString = updatedEntity ? JSON.stringify({
123
+ const entityObject = {
124
124
  _updatedEntity: updatedEntity
125
- }) : undefined;
125
+ };
126
126
  if (this._withinRouter) {
127
127
  this.container.navigate(this._parentPath, {
128
- state: entityString
128
+ state: entityObject
129
129
  });
130
130
  } else {
131
131
  this.container.navigateTo({
132
- pageId: this._parentPageId,
133
- appState: entityString
132
+ pageId: this._parentPageId
134
133
  });
135
134
  }
136
135
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","_EntityPageStateBIReporter","_events","EntityPageState","constructor","params","_defineProperty2","default","TaskState","undefined","FormPageState","EventEmitter","fetch","onSave","saveSuccessToast","saveErrorToast","_form","form","_parentPageId","parentPageId","transformEntityToCollectionItem","anEntity","_parentPath","parentPath","container","reportBI","createBILogger","componentType","pageType","route","window","location","pathname","bi","EntityPageStateBIReporter","entityPageState","init","makeObservable","handleSubmit","action","isFetching","computed","_entity","observable","ref","setEntity","_isFormDirty","isFormDirty","withinRouter","_withinRouter","_checkPageParams","initTask","onBeforeUnload","onBeforeUnloadSubscription","event","formState","isSubmitSuccessful","preventDefault","reportOnBeforeUnload","runOnce","_this$bi$appLoaded","_this$bi","data","Promise","all","status","promise","entity","appLoaded","call","remove","retryFetch","newEntity","isLoading","isIdle","flag","_isSubmitSuccessful","formPage","isDirty","onCancel","reportButtonClick","ctaName","navigateToParent","updatedEntity","entityString","JSON","stringify","_updatedEntity","navigate","state","navigateTo","pageId","appState","_showErrorToast","err","e","_this$saveErrorToast","_this$container$showT","_this$container","errorToast","message","showTryAgain","tryAgain","showToast","type","biName","translate","code","uiType","text","onClick","reportSaveTryAgain","removeToastOnClick","_showSuccessToast","_this$saveSuccessToas","_this$container$showT2","_this$container2","submitTask","events","emit","isValid","extraFields","validate","run","savedEntity","onSaveResult","widgetsFormData","errorMonitor","captureException","setError","transformedItem","Error","exports"],"sources":["../../../../src/state/EntityPage/EntityPageState.ts"],"sourcesContent":["import {\n FormPageState,\n ReportBI,\n TaskState,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport { FieldValues, UseFormReturn } from 'react-hook-form';\nimport { EntityPageStateBIReporter } from './EntityPageStateBIReporter';\nimport { EventEmitter, TypedEmitter } from '@wix/bex-core/events';\n\ntype OnSaveParams = {\n widgetsFormData: { [key: string]: any };\n};\n\nexport interface EntityPageStateParams<T, V extends FieldValues = FieldValues> {\n /**\n * A function that fetches the entity data.\n * @returns a promise that resolves to an object containing the entity.\n */\n fetch: () => Promise<{ entity: T | undefined }>;\n\n /**\n * A function to handle the save action.\n * @returns promise that resolves to an object that contains a 'updatedEntity' object.\n */\n onSave: (params: OnSaveParams) => Promise<{ updatedEntity: T }>;\n\n /**\n * An optional object with an optional message, or it can directly get a string message.\n */\n saveSuccessToast?: { message?: string } | string;\n\n /**\n * An optional function to display an error toast message when a save operation fails.\n * @returns an object with an optional message and a `tryAgain` flag, or it can directly return a string message.\n */\n saveErrorToast?: (\n err: unknown,\n ) => { message?: string; tryAgain?: boolean } | string;\n\n /**\n * An optional function to transform the updated entity data before it is passed to the collection page.\n * @param entity the updated entity.\n * @returns an object representing the entity in the collection page.\n */\n transformEntityToCollectionItem?: (entity: T) => any;\n\n /**\n * An object representing the form state and methods, typically returned by a useForm hook.\n */\n form: UseFormReturn<V>;\n\n /**\n * An object representing the container, possibly for dependency injection or component management.\n */\n container: WixPatternsContainer;\n\n /**\n * A string representing the ID of the parent page.\n * Must be passed if not using Patterns Router\n */\n parentPageId?: string;\n\n /**\n * A string representing the path of the parent page.\n * Must be passed if using Patterns Router\n */\n parentPath?: string;\n}\n\nexport interface EntityPageStateInterface {}\n\nexport interface EntityPageWidgetState {\n validate: () => Promise<{ isValid: boolean; values?: any }>;\n isDirty: boolean;\n}\n\nexport class EntityPageState<T, V extends FieldValues = FieldValues>\n implements EntityPageStateInterface\n{\n readonly initTask = new TaskState();\n readonly submitTask = new TaskState();\n\n readonly fetch: EntityPageStateParams<T>['fetch'];\n readonly onSave: EntityPageStateParams<T, V>['onSave'];\n readonly saveSuccessToast?: EntityPageStateParams<T>['saveSuccessToast'];\n readonly saveErrorToast?: EntityPageStateParams<T>['saveErrorToast'];\n readonly transformEntityToCollectionItem: (entity: T) => any;\n\n _entity: T | null = null;\n private readonly _form: UseFormReturn<V>;\n private readonly _parentPageId?: string;\n private readonly _parentPath?: string;\n\n readonly container: WixPatternsContainer;\n readonly reportBI: ReportBI;\n readonly bi: EntityPageStateBIReporter<T, V>;\n\n _isSubmitSuccessful?: boolean = undefined;\n _isFormDirty = false;\n\n _withinRouter = false;\n\n readonly formPage = new FormPageState();\n\n readonly events = new EventEmitter() as TypedEmitter<{\n save: () => void;\n saveError: (err: unknown) => void;\n }>;\n\n constructor(params: EntityPageStateParams<T, V>) {\n this.fetch = params.fetch;\n this.onSave = params.onSave;\n this.saveSuccessToast = params.saveSuccessToast;\n this.saveErrorToast = params.saveErrorToast;\n this._form = params.form;\n this._parentPageId = params.parentPageId;\n this.transformEntityToCollectionItem =\n params.transformEntityToCollectionItem || ((anEntity: T) => anEntity);\n this._parentPath = params.parentPath;\n\n this.container = params.container;\n\n this.reportBI = this.container.createBILogger({\n componentType: 'Entity page',\n pageType: 'Entity',\n route: window.location.pathname,\n });\n\n this.bi = new EntityPageStateBIReporter({\n reportBI: this.reportBI,\n entityPageState: this,\n });\n this.bi.init();\n\n makeObservable(this, {\n handleSubmit: action,\n isFetching: computed,\n _entity: observable.ref,\n setEntity: action,\n _isFormDirty: observable.ref,\n isFormDirty: computed,\n });\n }\n\n init({ withinRouter }: { withinRouter: boolean }) {\n this._withinRouter = withinRouter;\n this._checkPageParams();\n const { initTask, container } = this;\n const { onBeforeUnload } = container;\n\n const onBeforeUnloadSubscription = onBeforeUnload?.(\n action((event) => {\n const { form } = this;\n if (form.formState.isSubmitSuccessful || !this.isFormDirty) {\n return;\n }\n event.preventDefault();\n this.bi.reportOnBeforeUnload();\n }),\n );\n\n initTask.runOnce(async () => {\n const [data] = await Promise.all([\n this.fetch(),\n container.initTask.status.promise,\n ]);\n\n this.setEntity(data.entity ?? null);\n this.bi.appLoaded?.();\n });\n\n return () => {\n onBeforeUnloadSubscription?.remove();\n };\n }\n\n retryFetch() {\n this.initTask.runOnce();\n }\n\n setEntity(newEntity: T | null) {\n this._entity = newEntity;\n }\n\n get entity(): T | null {\n return this._entity;\n }\n\n get isFetching() {\n return this.initTask.status.isLoading || this.initTask.status.isIdle;\n }\n\n get form() {\n return this._form;\n }\n\n set isSubmitSuccessful(flag: boolean) {\n this._isSubmitSuccessful = flag;\n }\n\n set isFormDirty(flag: boolean) {\n this._isFormDirty = flag;\n }\n\n get isFormDirty() {\n return this._isFormDirty || this.formPage.isDirty;\n }\n\n onCancel() {\n this.bi.reportButtonClick({ ctaName: 'Cancel' });\n this.navigateToParent();\n }\n\n navigateToParent(updatedEntity?: any) {\n const entityString = updatedEntity\n ? JSON.stringify({ _updatedEntity: updatedEntity })\n : undefined;\n if (this._withinRouter) {\n this.container.navigate!(this._parentPath!, { state: entityString });\n } else {\n this.container.navigateTo!({\n pageId: this._parentPageId!,\n appState: entityString,\n });\n }\n }\n\n _showErrorToast(err: any, e?: React.BaseSyntheticEvent) {\n const errorToast = this.saveErrorToast?.(err);\n const message =\n typeof errorToast === 'string' ? errorToast : errorToast?.message;\n const showTryAgain =\n typeof errorToast === 'string' ? true : errorToast?.tryAgain !== false;\n\n this.container.showToast?.({\n type: 'ERROR',\n biName: 'cairo-entity-page-save-error-toast',\n message:\n message ??\n this.container.translate(\n err?.code === 'ERR_NETWORK'\n ? 'cairo.entityPage.saveError-offline.toast.description'\n : 'cairo.entityPage.saveError-technical.toast.description',\n ),\n action: showTryAgain\n ? {\n uiType: 'LINK',\n text: this.container.translate('cairo.toast.retry'),\n onClick: () => {\n this.bi.reportSaveTryAgain();\n this.handleSubmit(e);\n },\n removeToastOnClick: true,\n }\n : undefined,\n });\n }\n\n _showSuccessToast() {\n const message =\n typeof this.saveSuccessToast === 'string'\n ? this.saveSuccessToast\n : this.saveSuccessToast?.message;\n\n this.container.showToast?.({\n type: 'SUCCESS',\n biName: 'cairo-entity-page-save-success-toast',\n message:\n message ?? this.container.translate('cairo.entityPage.success.toast'),\n });\n }\n async handleSubmit(e?: React.BaseSyntheticEvent) {\n if (this.submitTask.status.isLoading) {\n return;\n }\n\n this.events.emit('save');\n\n const { isValid, data: extraFields } = await this.formPage.validate();\n\n if (!isValid) {\n this.bi.reportButtonClick({ ctaName: 'Save', isValid: false });\n return;\n }\n\n const { form, submitTask, bi } = this;\n\n submitTask.run(async () => {\n let savedEntity: T | undefined;\n await form.handleSubmit(\n async () => {\n bi.reportButtonClick({ ctaName: 'Save', isValid: true });\n try {\n if (this.isFormDirty) {\n const onSaveResult = await this.onSave({\n widgetsFormData: { ...extraFields },\n });\n savedEntity = onSaveResult?.updatedEntity;\n }\n this._showSuccessToast();\n } catch (err) {\n this._showErrorToast(err, e);\n this.container.errorMonitor.captureException(err);\n this.events.emit('saveError', err);\n form.setError('root.serverError', {}); // https://react-hook-form.com/docs/useform/seterror\n }\n },\n () => {\n bi.reportButtonClick({ ctaName: 'Save', isValid: false });\n }, // can be used to report validation errors\n )(e);\n\n if (!form.formState.isSubmitSuccessful) {\n return;\n }\n\n const transformedItem =\n savedEntity && this.transformEntityToCollectionItem\n ? this.transformEntityToCollectionItem(savedEntity)\n : savedEntity;\n this.navigateToParent(transformedItem);\n });\n await this.submitTask.status.promise;\n }\n\n private _checkPageParams() {\n if (this._withinRouter) {\n if (this._parentPath === undefined) {\n throw new Error('parentPath was not defined in useEntityPage');\n }\n\n if (!this.container.navigate) {\n throw new Error('navigate was not defined in Patterns Provider');\n }\n } else {\n if (this._parentPageId === undefined) {\n throw new Error('parentPageId was not defined in useEntityPage');\n }\n\n if (!this.container.navigateTo) {\n throw new Error('navigateTo was not defined in Patterns Provider');\n }\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAMA,IAAAC,KAAA,GAAAD,OAAA;AAEA,IAAAE,0BAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAqEO,MAAMI,eAAe,CAE5B;EA+BEC,WAAWA,CAACC,MAAmC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,oBA9B7B,IAAIC,kBAAS,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,sBACb,IAAIC,kBAAS,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,mBAQjB,IAAI;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,+BASQE,SAAS;IAAA,IAAAH,gBAAA,CAAAC,OAAA,wBAC1B,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,yBAEJ,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAED,IAAIG,sBAAa,CAAC,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,kBAErB,IAAII,oBAAY,CAAC,CAAC;IAMlC,IAAI,CAACC,KAAK,GAAGP,MAAM,CAACO,KAAK;IACzB,IAAI,CAACC,MAAM,GAAGR,MAAM,CAACQ,MAAM;IAC3B,IAAI,CAACC,gBAAgB,GAAGT,MAAM,CAACS,gBAAgB;IAC/C,IAAI,CAACC,cAAc,GAAGV,MAAM,CAACU,cAAc;IAC3C,IAAI,CAACC,KAAK,GAAGX,MAAM,CAACY,IAAI;IACxB,IAAI,CAACC,aAAa,GAAGb,MAAM,CAACc,YAAY;IACxC,IAAI,CAACC,+BAA+B,GAClCf,MAAM,CAACe,+BAA+B,KAAMC,QAAW,IAAKA,QAAQ,CAAC;IACvE,IAAI,CAACC,WAAW,GAAGjB,MAAM,CAACkB,UAAU;IAEpC,IAAI,CAACC,SAAS,GAAGnB,MAAM,CAACmB,SAAS;IAEjC,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACD,SAAS,CAACE,cAAc,CAAC;MAC5CC,aAAa,EAAE,aAAa;MAC5BC,QAAQ,EAAE,QAAQ;MAClBC,KAAK,EAAEC,MAAM,CAACC,QAAQ,CAACC;IACzB,CAAC,CAAC;IAEF,IAAI,CAACC,EAAE,GAAG,IAAIC,oDAAyB,CAAC;MACtCT,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBU,eAAe,EAAE;IACnB,CAAC,CAAC;IACF,IAAI,CAACF,EAAE,CAACG,IAAI,CAAC,CAAC;IAEd,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,YAAY,EAAEC,YAAM;MACpBC,UAAU,EAAEC,cAAQ;MACpBC,OAAO,EAAEC,gBAAU,CAACC,GAAG;MACvBC,SAAS,EAAEN,YAAM;MACjBO,YAAY,EAAEH,gBAAU,CAACC,GAAG;MAC5BG,WAAW,EAAEN;IACf,CAAC,CAAC;EACJ;EAEAL,IAAIA,CAAC;IAAEY;EAAwC,CAAC,EAAE;IAChD,IAAI,CAACC,aAAa,GAAGD,YAAY;IACjC,IAAI,CAACE,gBAAgB,CAAC,CAAC;IACvB,MAAM;MAAEC,QAAQ;MAAE3B;IAAU,CAAC,GAAG,IAAI;IACpC,MAAM;MAAE4B;IAAe,CAAC,GAAG5B,SAAS;IAEpC,MAAM6B,0BAA0B,GAAGD,cAAc,oBAAdA,cAAc,CAC/C,IAAAb,YAAM,EAAEe,KAAK,IAAK;MAChB,MAAM;QAAErC;MAAK,CAAC,GAAG,IAAI;MACrB,IAAIA,IAAI,CAACsC,SAAS,CAACC,kBAAkB,IAAI,CAAC,IAAI,CAACT,WAAW,EAAE;QAC1D;MACF;MACAO,KAAK,CAACG,cAAc,CAAC,CAAC;MACtB,IAAI,CAACxB,EAAE,CAACyB,oBAAoB,CAAC,CAAC;IAChC,CAAC,CACH,CAAC;IAEDP,QAAQ,CAACQ,OAAO,CAAC,YAAY;MAAA,IAAAC,kBAAA,EAAAC,QAAA;MAC3B,MAAM,CAACC,IAAI,CAAC,GAAG,MAAMC,OAAO,CAACC,GAAG,CAAC,CAC/B,IAAI,CAACpD,KAAK,CAAC,CAAC,EACZY,SAAS,CAAC2B,QAAQ,CAACc,MAAM,CAACC,OAAO,CAClC,CAAC;MAEF,IAAI,CAACrB,SAAS,CAACiB,IAAI,CAACK,MAAM,IAAI,IAAI,CAAC;MACnC,CAAAP,kBAAA,IAAAC,QAAA,OAAI,CAAC5B,EAAE,EAACmC,SAAS,aAAjBR,kBAAA,CAAAS,IAAA,CAAAR,QAAoB,CAAC;IACvB,CAAC,CAAC;IAEF,OAAO,MAAM;MACXR,0BAA0B,YAA1BA,0BAA0B,CAAEiB,MAAM,CAAC,CAAC;IACtC,CAAC;EACH;EAEAC,UAAUA,CAAA,EAAG;IACX,IAAI,CAACpB,QAAQ,CAACQ,OAAO,CAAC,CAAC;EACzB;EAEAd,SAASA,CAAC2B,SAAmB,EAAE;IAC7B,IAAI,CAAC9B,OAAO,GAAG8B,SAAS;EAC1B;EAEA,IAAIL,MAAMA,CAAA,EAAa;IACrB,OAAO,IAAI,CAACzB,OAAO;EACrB;EAEA,IAAIF,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACW,QAAQ,CAACc,MAAM,CAACQ,SAAS,IAAI,IAAI,CAACtB,QAAQ,CAACc,MAAM,CAACS,MAAM;EACtE;EAEA,IAAIzD,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACD,KAAK;EACnB;EAEA,IAAIwC,kBAAkBA,CAACmB,IAAa,EAAE;IACpC,IAAI,CAACC,mBAAmB,GAAGD,IAAI;EACjC;EAEA,IAAI5B,WAAWA,CAAC4B,IAAa,EAAE;IAC7B,IAAI,CAAC7B,YAAY,GAAG6B,IAAI;EAC1B;EAEA,IAAI5B,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACD,YAAY,IAAI,IAAI,CAAC+B,QAAQ,CAACC,OAAO;EACnD;EAEAC,QAAQA,CAAA,EAAG;IACT,IAAI,CAAC9C,EAAE,CAAC+C,iBAAiB,CAAC;MAAEC,OAAO,EAAE;IAAS,CAAC,CAAC;IAChD,IAAI,CAACC,gBAAgB,CAAC,CAAC;EACzB;EAEAA,gBAAgBA,CAACC,aAAmB,EAAE;IACpC,MAAMC,YAAY,GAAGD,aAAa,GAC9BE,IAAI,CAACC,SAAS,CAAC;MAAEC,cAAc,EAAEJ;IAAc,CAAC,CAAC,GACjD1E,SAAS;IACb,IAAI,IAAI,CAACwC,aAAa,EAAE;MACtB,IAAI,CAACzB,SAAS,CAACgE,QAAQ,CAAE,IAAI,CAAClE,WAAW,EAAG;QAAEmE,KAAK,EAAEL;MAAa,CAAC,CAAC;IACtE,CAAC,MAAM;MACL,IAAI,CAAC5D,SAAS,CAACkE,UAAU,CAAE;QACzBC,MAAM,EAAE,IAAI,CAACzE,aAAc;QAC3B0E,QAAQ,EAAER;MACZ,CAAC,CAAC;IACJ;EACF;EAEAS,eAAeA,CAACC,GAAQ,EAAEC,CAA4B,EAAE;IAAA,IAAAC,oBAAA,EAAAC,qBAAA,EAAAC,eAAA;IACtD,MAAMC,UAAU,IAAAH,oBAAA,GAAG,IAAI,CAACjF,cAAc,qBAAnBiF,oBAAA,CAAA3B,IAAA,KAAI,EAAkByB,GAAG,CAAC;IAC7C,MAAMM,OAAO,GACX,OAAOD,UAAU,KAAK,QAAQ,GAAGA,UAAU,GAAGA,UAAU,oBAAVA,UAAU,CAAEC,OAAO;IACnE,MAAMC,YAAY,GAChB,OAAOF,UAAU,KAAK,QAAQ,GAAG,IAAI,GAAG,CAAAA,UAAU,oBAAVA,UAAU,CAAEG,QAAQ,MAAK,KAAK;IAExE,CAAAL,qBAAA,IAAAC,eAAA,OAAI,CAAC1E,SAAS,EAAC+E,SAAS,aAAxBN,qBAAA,CAAA5B,IAAA,CAAA6B,eAAA,EAA2B;MACzBM,IAAI,EAAE,OAAO;MACbC,MAAM,EAAE,oCAAoC;MAC5CL,OAAO,EACLA,OAAO,IACP,IAAI,CAAC5E,SAAS,CAACkF,SAAS,CACtB,CAAAZ,GAAG,oBAAHA,GAAG,CAAEa,IAAI,MAAK,aAAa,GACvB,sDAAsD,GACtD,wDACN,CAAC;MACHpE,MAAM,EAAE8D,YAAY,GAChB;QACEO,MAAM,EAAE,MAAM;QACdC,IAAI,EAAE,IAAI,CAACrF,SAAS,CAACkF,SAAS,CAAC,mBAAmB,CAAC;QACnDI,OAAO,EAAEA,CAAA,KAAM;UACb,IAAI,CAAC7E,EAAE,CAAC8E,kBAAkB,CAAC,CAAC;UAC5B,IAAI,CAACzE,YAAY,CAACyD,CAAC,CAAC;QACtB,CAAC;QACDiB,kBAAkB,EAAE;MACtB,CAAC,GACDvG;IACN,CAAC,CAAC;EACJ;EAEAwG,iBAAiBA,CAAA,EAAG;IAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,gBAAA;IAClB,MAAMhB,OAAO,GACX,OAAO,IAAI,CAACtF,gBAAgB,KAAK,QAAQ,GACrC,IAAI,CAACA,gBAAgB,IAAAoG,qBAAA,GACrB,IAAI,CAACpG,gBAAgB,qBAArBoG,qBAAA,CAAuBd,OAAO;IAEpC,CAAAe,sBAAA,IAAAC,gBAAA,OAAI,CAAC5F,SAAS,EAAC+E,SAAS,aAAxBY,sBAAA,CAAA9C,IAAA,CAAA+C,gBAAA,EAA2B;MACzBZ,IAAI,EAAE,SAAS;MACfC,MAAM,EAAE,sCAAsC;MAC9CL,OAAO,EACLA,OAAO,IAAI,IAAI,CAAC5E,SAAS,CAACkF,SAAS,CAAC,gCAAgC;IACxE,CAAC,CAAC;EACJ;EACA,MAAMpE,YAAYA,CAACyD,CAA4B,EAAE;IAC/C,IAAI,IAAI,CAACsB,UAAU,CAACpD,MAAM,CAACQ,SAAS,EAAE;MACpC;IACF;IAEA,IAAI,CAAC6C,MAAM,CAACC,IAAI,CAAC,MAAM,CAAC;IAExB,MAAM;MAAEC,OAAO;MAAE1D,IAAI,EAAE2D;IAAY,CAAC,GAAG,MAAM,IAAI,CAAC5C,QAAQ,CAAC6C,QAAQ,CAAC,CAAC;IAErE,IAAI,CAACF,OAAO,EAAE;MACZ,IAAI,CAACvF,EAAE,CAAC+C,iBAAiB,CAAC;QAAEC,OAAO,EAAE,MAAM;QAAEuC,OAAO,EAAE;MAAM,CAAC,CAAC;MAC9D;IACF;IAEA,MAAM;MAAEvG,IAAI;MAAEoG,UAAU;MAAEpF;IAAG,CAAC,GAAG,IAAI;IAErCoF,UAAU,CAACM,GAAG,CAAC,YAAY;MACzB,IAAIC,WAA0B;MAC9B,MAAM3G,IAAI,CAACqB,YAAY,CACrB,YAAY;QACVL,EAAE,CAAC+C,iBAAiB,CAAC;UAAEC,OAAO,EAAE,MAAM;UAAEuC,OAAO,EAAE;QAAK,CAAC,CAAC;QACxD,IAAI;UACF,IAAI,IAAI,CAACzE,WAAW,EAAE;YACpB,MAAM8E,YAAY,GAAG,MAAM,IAAI,CAAChH,MAAM,CAAC;cACrCiH,eAAe,EAAE;gBAAE,GAAGL;cAAY;YACpC,CAAC,CAAC;YACFG,WAAW,GAAGC,YAAY,oBAAZA,YAAY,CAAE1C,aAAa;UAC3C;UACA,IAAI,CAAC8B,iBAAiB,CAAC,CAAC;QAC1B,CAAC,CAAC,OAAOnB,GAAG,EAAE;UACZ,IAAI,CAACD,eAAe,CAACC,GAAG,EAAEC,CAAC,CAAC;UAC5B,IAAI,CAACvE,SAAS,CAACuG,YAAY,CAACC,gBAAgB,CAAClC,GAAG,CAAC;UACjD,IAAI,CAACwB,MAAM,CAACC,IAAI,CAAC,WAAW,EAAEzB,GAAG,CAAC;UAClC7E,IAAI,CAACgH,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC;MACF,CAAC,EACD,MAAM;QACJhG,EAAE,CAAC+C,iBAAiB,CAAC;UAAEC,OAAO,EAAE,MAAM;UAAEuC,OAAO,EAAE;QAAM,CAAC,CAAC;MAC3D,CAAC,CAAE;MACL,CAAC,CAACzB,CAAC,CAAC;MAEJ,IAAI,CAAC9E,IAAI,CAACsC,SAAS,CAACC,kBAAkB,EAAE;QACtC;MACF;MAEA,MAAM0E,eAAe,GACnBN,WAAW,IAAI,IAAI,CAACxG,+BAA+B,GAC/C,IAAI,CAACA,+BAA+B,CAACwG,WAAW,CAAC,GACjDA,WAAW;MACjB,IAAI,CAAC1C,gBAAgB,CAACgD,eAAe,CAAC;IACxC,CAAC,CAAC;IACF,MAAM,IAAI,CAACb,UAAU,CAACpD,MAAM,CAACC,OAAO;EACtC;EAEQhB,gBAAgBA,CAAA,EAAG;IACzB,IAAI,IAAI,CAACD,aAAa,EAAE;MACtB,IAAI,IAAI,CAAC3B,WAAW,KAAKb,SAAS,EAAE;QAClC,MAAM,IAAI0H,KAAK,CAAC,6CAA6C,CAAC;MAChE;MAEA,IAAI,CAAC,IAAI,CAAC3G,SAAS,CAACgE,QAAQ,EAAE;QAC5B,MAAM,IAAI2C,KAAK,CAAC,+CAA+C,CAAC;MAClE;IACF,CAAC,MAAM;MACL,IAAI,IAAI,CAACjH,aAAa,KAAKT,SAAS,EAAE;QACpC,MAAM,IAAI0H,KAAK,CAAC,+CAA+C,CAAC;MAClE;MAEA,IAAI,CAAC,IAAI,CAAC3G,SAAS,CAACkE,UAAU,EAAE;QAC9B,MAAM,IAAIyC,KAAK,CAAC,iDAAiD,CAAC;MACpE;IACF;EACF;AACF;AAACC,OAAA,CAAAjI,eAAA,GAAAA,eAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","_EntityPageStateBIReporter","_events","EntityPageState","constructor","params","_defineProperty2","default","TaskState","undefined","FormPageState","EventEmitter","fetch","onSave","saveSuccessToast","saveErrorToast","_form","form","_parentPageId","parentPageId","transformEntityToCollectionItem","anEntity","_parentPath","parentPath","container","reportBI","createBILogger","componentType","pageType","route","window","location","pathname","bi","EntityPageStateBIReporter","entityPageState","init","makeObservable","handleSubmit","action","isFetching","computed","_entity","observable","ref","setEntity","_isFormDirty","isFormDirty","withinRouter","_withinRouter","_checkPageParams","initTask","onBeforeUnload","onBeforeUnloadSubscription","event","formState","isSubmitSuccessful","preventDefault","reportOnBeforeUnload","runOnce","_this$bi$appLoaded","_this$bi","data","Promise","all","status","promise","entity","appLoaded","call","remove","retryFetch","newEntity","isLoading","isIdle","flag","_isSubmitSuccessful","formPage","isDirty","onCancel","reportButtonClick","ctaName","navigateToParent","updatedEntity","entityObject","_updatedEntity","navigate","state","navigateTo","pageId","_showErrorToast","err","e","_this$saveErrorToast","_this$container$showT","_this$container","errorToast","message","showTryAgain","tryAgain","showToast","type","biName","translate","code","uiType","text","onClick","reportSaveTryAgain","removeToastOnClick","_showSuccessToast","_this$saveSuccessToas","_this$container$showT2","_this$container2","submitTask","events","emit","isValid","extraFields","validate","run","savedEntity","onSaveResult","widgetsFormData","errorMonitor","captureException","setError","transformedItem","Error","exports"],"sources":["../../../../src/state/EntityPage/EntityPageState.ts"],"sourcesContent":["import {\n FormPageState,\n ReportBI,\n TaskState,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport { FieldValues, UseFormReturn } from 'react-hook-form';\nimport { EntityPageStateBIReporter } from './EntityPageStateBIReporter';\nimport { EventEmitter, TypedEmitter } from '@wix/bex-core/events';\n\ntype OnSaveParams = {\n widgetsFormData: { [key: string]: any };\n};\n\nexport interface EntityPageStateParams<T, V extends FieldValues = FieldValues> {\n /**\n * A function that fetches the entity data.\n * @returns a promise that resolves to an object containing the entity.\n */\n fetch: () => Promise<{ entity: T | undefined }>;\n\n /**\n * A function to handle the save action.\n * @returns promise that resolves to an object that contains a 'updatedEntity' object.\n */\n onSave: (params: OnSaveParams) => Promise<{ updatedEntity: T }>;\n\n /**\n * An optional object with an optional message, or it can directly get a string message.\n */\n saveSuccessToast?: { message?: string } | string;\n\n /**\n * An optional function to display an error toast message when a save operation fails.\n * @returns an object with an optional message and a `tryAgain` flag, or it can directly return a string message.\n */\n saveErrorToast?: (\n err: unknown,\n ) => { message?: string; tryAgain?: boolean } | string;\n\n /**\n * An optional function to transform the updated entity data before it is passed to the collection page.\n * @param entity the updated entity.\n * @returns an object representing the entity in the collection page.\n */\n transformEntityToCollectionItem?: (entity: T) => any;\n\n /**\n * An object representing the form state and methods, typically returned by a useForm hook.\n */\n form: UseFormReturn<V>;\n\n /**\n * An object representing the container, possibly for dependency injection or component management.\n */\n container: WixPatternsContainer;\n\n /**\n * A string representing the ID of the parent page.\n * Must be passed if not using Patterns Router\n */\n parentPageId?: string;\n\n /**\n * A string representing the path of the parent page.\n * Must be passed if using Patterns Router\n */\n parentPath?: string;\n}\n\nexport interface EntityPageStateInterface {}\n\nexport interface EntityPageWidgetState {\n validate: () => Promise<{ isValid: boolean; values?: any }>;\n isDirty: boolean;\n}\n\nexport class EntityPageState<T, V extends FieldValues = FieldValues>\n implements EntityPageStateInterface\n{\n readonly initTask = new TaskState();\n readonly submitTask = new TaskState();\n\n readonly fetch: EntityPageStateParams<T>['fetch'];\n readonly onSave: EntityPageStateParams<T, V>['onSave'];\n readonly saveSuccessToast?: EntityPageStateParams<T>['saveSuccessToast'];\n readonly saveErrorToast?: EntityPageStateParams<T>['saveErrorToast'];\n readonly transformEntityToCollectionItem: (entity: T) => any;\n\n _entity: T | null = null;\n private readonly _form: UseFormReturn<V>;\n private readonly _parentPageId?: string;\n private readonly _parentPath?: string;\n\n readonly container: WixPatternsContainer;\n readonly reportBI: ReportBI;\n readonly bi: EntityPageStateBIReporter<T, V>;\n\n _isSubmitSuccessful?: boolean = undefined;\n _isFormDirty = false;\n\n _withinRouter = false;\n\n readonly formPage = new FormPageState();\n\n readonly events = new EventEmitter() as TypedEmitter<{\n save: () => void;\n saveError: (err: unknown) => void;\n }>;\n\n constructor(params: EntityPageStateParams<T, V>) {\n this.fetch = params.fetch;\n this.onSave = params.onSave;\n this.saveSuccessToast = params.saveSuccessToast;\n this.saveErrorToast = params.saveErrorToast;\n this._form = params.form;\n this._parentPageId = params.parentPageId;\n this.transformEntityToCollectionItem =\n params.transformEntityToCollectionItem || ((anEntity: T) => anEntity);\n this._parentPath = params.parentPath;\n\n this.container = params.container;\n\n this.reportBI = this.container.createBILogger({\n componentType: 'Entity page',\n pageType: 'Entity',\n route: window.location.pathname,\n });\n\n this.bi = new EntityPageStateBIReporter({\n reportBI: this.reportBI,\n entityPageState: this,\n });\n this.bi.init();\n\n makeObservable(this, {\n handleSubmit: action,\n isFetching: computed,\n _entity: observable.ref,\n setEntity: action,\n _isFormDirty: observable.ref,\n isFormDirty: computed,\n });\n }\n\n init({ withinRouter }: { withinRouter: boolean }) {\n this._withinRouter = withinRouter;\n this._checkPageParams();\n const { initTask, container } = this;\n const { onBeforeUnload } = container;\n\n const onBeforeUnloadSubscription = onBeforeUnload?.(\n action((event) => {\n const { form } = this;\n if (form.formState.isSubmitSuccessful || !this.isFormDirty) {\n return;\n }\n event.preventDefault();\n this.bi.reportOnBeforeUnload();\n }),\n );\n\n initTask.runOnce(async () => {\n const [data] = await Promise.all([\n this.fetch(),\n container.initTask.status.promise,\n ]);\n\n this.setEntity(data.entity ?? null);\n this.bi.appLoaded?.();\n });\n\n return () => {\n onBeforeUnloadSubscription?.remove();\n };\n }\n\n retryFetch() {\n this.initTask.runOnce();\n }\n\n setEntity(newEntity: T | null) {\n this._entity = newEntity;\n }\n\n get entity(): T | null {\n return this._entity;\n }\n\n get isFetching() {\n return this.initTask.status.isLoading || this.initTask.status.isIdle;\n }\n\n get form() {\n return this._form;\n }\n\n set isSubmitSuccessful(flag: boolean) {\n this._isSubmitSuccessful = flag;\n }\n\n set isFormDirty(flag: boolean) {\n this._isFormDirty = flag;\n }\n\n get isFormDirty() {\n return this._isFormDirty || this.formPage.isDirty;\n }\n\n onCancel() {\n this.bi.reportButtonClick({ ctaName: 'Cancel' });\n this.navigateToParent();\n }\n\n navigateToParent(updatedEntity?: any) {\n const entityObject = { _updatedEntity: updatedEntity };\n\n if (this._withinRouter) {\n this.container.navigate!(this._parentPath!, { state: entityObject });\n } else {\n this.container.navigateTo!({\n pageId: this._parentPageId!,\n });\n }\n }\n\n _showErrorToast(err: any, e?: React.BaseSyntheticEvent) {\n const errorToast = this.saveErrorToast?.(err);\n const message =\n typeof errorToast === 'string' ? errorToast : errorToast?.message;\n const showTryAgain =\n typeof errorToast === 'string' ? true : errorToast?.tryAgain !== false;\n\n this.container.showToast?.({\n type: 'ERROR',\n biName: 'cairo-entity-page-save-error-toast',\n message:\n message ??\n this.container.translate(\n err?.code === 'ERR_NETWORK'\n ? 'cairo.entityPage.saveError-offline.toast.description'\n : 'cairo.entityPage.saveError-technical.toast.description',\n ),\n action: showTryAgain\n ? {\n uiType: 'LINK',\n text: this.container.translate('cairo.toast.retry'),\n onClick: () => {\n this.bi.reportSaveTryAgain();\n this.handleSubmit(e);\n },\n removeToastOnClick: true,\n }\n : undefined,\n });\n }\n\n _showSuccessToast() {\n const message =\n typeof this.saveSuccessToast === 'string'\n ? this.saveSuccessToast\n : this.saveSuccessToast?.message;\n\n this.container.showToast?.({\n type: 'SUCCESS',\n biName: 'cairo-entity-page-save-success-toast',\n message:\n message ?? this.container.translate('cairo.entityPage.success.toast'),\n });\n }\n async handleSubmit(e?: React.BaseSyntheticEvent) {\n if (this.submitTask.status.isLoading) {\n return;\n }\n\n this.events.emit('save');\n\n const { isValid, data: extraFields } = await this.formPage.validate();\n\n if (!isValid) {\n this.bi.reportButtonClick({ ctaName: 'Save', isValid: false });\n return;\n }\n\n const { form, submitTask, bi } = this;\n\n submitTask.run(async () => {\n let savedEntity: T | undefined;\n await form.handleSubmit(\n async () => {\n bi.reportButtonClick({ ctaName: 'Save', isValid: true });\n try {\n if (this.isFormDirty) {\n const onSaveResult = await this.onSave({\n widgetsFormData: { ...extraFields },\n });\n savedEntity = onSaveResult?.updatedEntity;\n }\n this._showSuccessToast();\n } catch (err) {\n this._showErrorToast(err, e);\n this.container.errorMonitor.captureException(err);\n this.events.emit('saveError', err);\n form.setError('root.serverError', {}); // https://react-hook-form.com/docs/useform/seterror\n }\n },\n () => {\n bi.reportButtonClick({ ctaName: 'Save', isValid: false });\n }, // can be used to report validation errors\n )(e);\n\n if (!form.formState.isSubmitSuccessful) {\n return;\n }\n\n const transformedItem =\n savedEntity && this.transformEntityToCollectionItem\n ? this.transformEntityToCollectionItem(savedEntity)\n : savedEntity;\n this.navigateToParent(transformedItem);\n });\n await this.submitTask.status.promise;\n }\n\n private _checkPageParams() {\n if (this._withinRouter) {\n if (this._parentPath === undefined) {\n throw new Error('parentPath was not defined in useEntityPage');\n }\n\n if (!this.container.navigate) {\n throw new Error('navigate was not defined in Patterns Provider');\n }\n } else {\n if (this._parentPageId === undefined) {\n throw new Error('parentPageId was not defined in useEntityPage');\n }\n\n if (!this.container.navigateTo) {\n throw new Error('navigateTo was not defined in Patterns Provider');\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../../src/state/NestedTableState/NestedCollectionLevelDescriptor.ts"],"sourcesContent":["import { CollectionState, Filter, FiltersMap, KeyedItem } from '@wix/bex-core';\n\nexport interface NestedCollectionLevelDescriptor<T, F extends FiltersMap> {\n readonly depth: number;\n readonly parentKey: (item: T) => string | null | undefined;\n readonly createCollection: (params?: {\n readonly parent: KeyedItem<any> | null;\n }) => {\n collection: CollectionState<T, F>;\n parentFilter?: Filter<string[]>;\n };\n readonly fetchAllThreshold?: number;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../../src/state/NestedTableState/NestedCollectionLevelDescriptor.ts"],"sourcesContent":["import {\n CollectionOptimisticSequenceExecutor,\n CollectionState,\n Filter,\n FiltersMap,\n KeyedItem,\n QueryState,\n} from '@wix/bex-core';\n\nexport interface NestedCollectionLevelDescriptor<T, F extends FiltersMap> {\n readonly depth: number;\n readonly parentKey: (item: T) => string | null | undefined;\n readonly setParent?: (\n item: T,\n parentId: string | undefined,\n additionalInfo: {\n parentItem?: {};\n },\n ) => T;\n readonly createCollection: (params?: {\n readonly parent?: KeyedItem<any> | null;\n readonly sequences: Map<string, CollectionOptimisticSequenceExecutor>;\n readonly query: QueryState<F>;\n }) => {\n collection: CollectionState<T, F>;\n parentFilter?: Filter<string[]>;\n };\n readonly fetchAllThreshold?: number;\n}\n"],"mappings":"","ignoreList":[]}
@@ -19,6 +19,7 @@ class NestedCollectionNodeState {
19
19
  }));
20
20
  (0, _defineProperty2.default)(this, "_expanded", false);
21
21
  (0, _defineProperty2.default)(this, "_hovered", false);
22
+ (0, _defineProperty2.default)(this, "_firstRender", void 0);
22
23
  (0, _defineProperty2.default)(this, "initTask", new _bexCore.TaskState());
23
24
  const {
24
25
  nestedCollection
@@ -27,13 +28,18 @@ class NestedCollectionNodeState {
27
28
  this.levelDescriptor = params.levelDescriptor;
28
29
  this.parent = params.parent;
29
30
  this.parentNode = params.parentNode;
31
+ this._firstRender = !params.preRegister;
30
32
  (0, _mobx.runInAction)(() => {
31
33
  this._expanded = !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;
32
34
  });
33
35
  const {
34
36
  collection,
35
37
  parentFilter
36
- } = params.nodeCollection ?? this.levelDescriptor.createCollection(this);
38
+ } = params.nodeCollection ?? this.levelDescriptor.createCollection({
39
+ parent: this.parent,
40
+ sequences: nestedCollection.sequences,
41
+ query: nestedCollection.query
42
+ });
37
43
  this.collection = collection;
38
44
  this.parentFilter = parentFilter;
39
45
  const {
@@ -79,14 +85,17 @@ class NestedCollectionNodeState {
79
85
  init({
80
86
  skipCollectionInit
81
87
  } = {}) {
82
- var _collection$_optimist;
83
88
  const {
84
89
  initTask,
85
- collection
90
+ collection,
91
+ nestedCollection
86
92
  } = this;
93
+ if (collection._optimisticActions) {
94
+ nestedCollection.events.on('dispose', collection._optimisticActions.init());
95
+ }
87
96
  const disposers = [!skipCollectionInit ? collection.init({
88
97
  skipInitialFetch: !this._expanded
89
- }) : undefined, (_collection$_optimist = collection._optimisticActions) == null ? void 0 : _collection$_optimist.init()];
98
+ }) : undefined];
90
99
  initTask.runOnce(async () => {
91
100
  collection.initTask.runOnce();
92
101
  await collection.initTask.status.promise;
@@ -103,7 +112,8 @@ class NestedCollectionNodeState {
103
112
  parent,
104
113
  parentNode: this,
105
114
  nestedCollection,
106
- levelDescriptor: params.levelDescriptor
115
+ levelDescriptor: params.levelDescriptor,
116
+ preRegister: params.preRegister
107
117
  });
108
118
  }
109
119
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","NestedCollectionNodeState","constructor","params","_defineProperty2","default","observable","map","deep","TaskState","nestedCollection","levelDescriptor","parent","parentNode","runInAction","_expanded","isFetchAllAborted","expandAll","collection","parentFilter","nodeCollection","createCollection","query","sharedQuery","syncWithSharedQuery","persistent","setValue","key","makeObservable","init","action","_toggleExpand","_changeHover","ref","_hovered","hoveredOrParentHovered","computed","initialFetch","e","console","error","_this$parentNode","hovered","skipCollectionInit","_collection$_optimist","initTask","disposers","skipInitialFetch","undefined","_optimisticActions","runOnce","status","promise","forEach","d","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionNodeState.ts"],"sourcesContent":["import {\n FiltersMap,\n KeyedItem,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\n\nexport interface NestedCollectionNodeStateBaseParams<T, F extends FiltersMap> {\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n}\n\nexport interface NestedCollectionNodeStateParams<T, F extends FiltersMap>\n extends NestedCollectionNodeStateBaseParams<T, F> {\n readonly nestedCollection: NestedCollectionState;\n readonly parentNode: NestedCollectionNodeState<any, any> | null;\n readonly parent: KeyedItem<any> | null;\n readonly nodeCollection?: NodeCollection<T, F>;\n}\n\nexport class NestedCollectionNodeState<T, F extends FiltersMap> {\n readonly nestedCollection;\n readonly collection;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly parent;\n readonly parentNode;\n readonly parentFilter;\n\n readonly parentKeyToChildrenMap = observable.map<\n string,\n NestedCollectionNodeState<any, any>\n >([], {\n deep: false,\n });\n\n _expanded = false;\n _hovered = false;\n\n readonly initTask = new TaskState();\n\n constructor(params: NestedCollectionNodeStateParams<T, F>) {\n const { nestedCollection } = params;\n this.nestedCollection = nestedCollection;\n this.levelDescriptor = params.levelDescriptor;\n this.parent = params.parent;\n this.parentNode = params.parentNode;\n\n runInAction(() => {\n this._expanded =\n !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;\n });\n\n const { collection, parentFilter } =\n params.nodeCollection ?? this.levelDescriptor.createCollection(this);\n\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n parent,\n nestedCollection: { query: sharedQuery },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n\n if (parent != null && parentFilter != null) {\n parentFilter.persistent = true;\n parentFilter.setValue([parent.key]);\n }\n\n makeObservable(this, {\n init: action,\n _toggleExpand: action,\n _changeHover: action,\n _expanded: observable.ref,\n _hovered: observable.ref,\n hoveredOrParentHovered: computed,\n });\n }\n\n async _toggleExpand() {\n this._expanded = !this._expanded;\n if (this._expanded) {\n try {\n await this.collection.initialFetch();\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n get hoveredOrParentHovered(): boolean {\n return this._hovered || !!this.parentNode?.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this._hovered = hovered;\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { initTask, collection } = this;\n\n const disposers = [\n !skipCollectionInit\n ? collection.init({ skipInitialFetch: !this._expanded })\n : undefined,\n collection._optimisticActions?.init(),\n ];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n _createNode(\n parent: KeyedItem<any>,\n params: NestedCollectionNodeStateBaseParams<any, any>,\n ) {\n const { nestedCollection } = this;\n\n return new NestedCollectionNodeState({\n parent,\n parentNode: this,\n nestedCollection,\n levelDescriptor: params.levelDescriptor,\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAMA,IAAAC,KAAA,GAAAD,OAAA;AAuBO,MAAME,yBAAyB,CAA0B;EAoB9DC,WAAWA,CAACC,MAA6C,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,kCAZzBC,gBAAU,CAACC,GAAG,CAG9C,EAAE,EAAE;MACJC,IAAI,EAAE;IACR,CAAC,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,qBAEU,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBACN,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAEI,IAAII,kBAAS,CAAC,CAAC;IAGjC,MAAM;MAAEC;IAAiB,CAAC,GAAGP,MAAM;IACnC,IAAI,CAACO,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACC,eAAe,GAAGR,MAAM,CAACQ,eAAe;IAC7C,IAAI,CAACC,MAAM,GAAGT,MAAM,CAACS,MAAM;IAC3B,IAAI,CAACC,UAAU,GAAGV,MAAM,CAACU,UAAU;IAEnC,IAAAC,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACC,SAAS,GACZ,CAACL,gBAAgB,CAACM,iBAAiB,IAAIN,gBAAgB,CAACO,SAAS;IACrE,CAAC,CAAC;IAEF,MAAM;MAAEC,UAAU;MAAEC;IAAa,CAAC,GAChChB,MAAM,CAACiB,cAAc,IAAI,IAAI,CAACT,eAAe,CAACU,gBAAgB,CAAC,IAAI,CAAC;IAEtE,IAAI,CAACH,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAEhC,MAAM;MACJP,MAAM;MACNF,gBAAgB,EAAE;QAAEY,KAAK,EAAEC;MAAY;IACzC,CAAC,GAAG,IAAI;IAER,MAAM;MAAED;IAAM,CAAC,GAAGJ,UAAU;IAE5B,IAAAM,4BAAmB,EAACF,KAAK,EAAEC,WAAW,CAAC;IAEvC,IAAIX,MAAM,IAAI,IAAI,IAAIO,YAAY,IAAI,IAAI,EAAE;MAC1CA,YAAY,CAACM,UAAU,GAAG,IAAI;MAC9BN,YAAY,CAACO,QAAQ,CAAC,CAACd,MAAM,CAACe,GAAG,CAAC,CAAC;IACrC;IAEA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM;MACZC,aAAa,EAAED,YAAM;MACrBE,YAAY,EAAEF,YAAM;MACpBf,SAAS,EAAET,gBAAU,CAAC2B,GAAG;MACzBC,QAAQ,EAAE5B,gBAAU,CAAC2B,GAAG;MACxBE,sBAAsB,EAAEC;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAML,aAAaA,CAAA,EAAG;IACpB,IAAI,CAAChB,SAAS,GAAG,CAAC,IAAI,CAACA,SAAS;IAChC,IAAI,IAAI,CAACA,SAAS,EAAE;MAClB,IAAI;QACF,MAAM,IAAI,CAACG,UAAU,CAACmB,YAAY,CAAC,CAAC;MACtC,CAAC,CAAC,OAAOC,CAAC,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;MAClB;IACF;EACF;EAEA,IAAIH,sBAAsBA,CAAA,EAAY;IAAA,IAAAM,gBAAA;IACpC,OAAO,IAAI,CAACP,QAAQ,IAAI,CAAC,GAAAO,gBAAA,GAAC,IAAI,CAAC5B,UAAU,aAAf4B,gBAAA,CAAiBN,sBAAsB;EACnE;EAEAH,YAAYA,CAACU,OAAgB,EAAE;IAC7B,IAAI,CAACR,QAAQ,GAAGQ,OAAO;EACzB;EAEAb,IAAIA,CAAC;IAAEc;EAAqD,CAAC,GAAG,CAAC,CAAC,EAAE;IAAA,IAAAC,qBAAA;IAClE,MAAM;MAAEC,QAAQ;MAAE3B;IAAW,CAAC,GAAG,IAAI;IAErC,MAAM4B,SAAS,GAAG,CAChB,CAACH,kBAAkB,GACfzB,UAAU,CAACW,IAAI,CAAC;MAAEkB,gBAAgB,EAAE,CAAC,IAAI,CAAChC;IAAU,CAAC,CAAC,GACtDiC,SAAS,GAAAJ,qBAAA,GACb1B,UAAU,CAAC+B,kBAAkB,qBAA7BL,qBAAA,CAA+Bf,IAAI,CAAC,CAAC,CACtC;IAEDgB,QAAQ,CAACK,OAAO,CAAC,YAAY;MAC3BhC,UAAU,CAAC2B,QAAQ,CAACK,OAAO,CAAC,CAAC;MAC7B,MAAMhC,UAAU,CAAC2B,QAAQ,CAACM,MAAM,CAACC,OAAO;IAC1C,CAAC,CAAC;IAEF,OAAO,MAAM;MACXN,SAAS,CAACO,OAAO,CAAEC,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IACjC,CAAC;EACH;EAEAC,WAAWA,CACT3C,MAAsB,EACtBT,MAAqD,EACrD;IACA,MAAM;MAAEO;IAAiB,CAAC,GAAG,IAAI;IAEjC,OAAO,IAAIT,yBAAyB,CAAC;MACnCW,MAAM;MACNC,UAAU,EAAE,IAAI;MAChBH,gBAAgB;MAChBC,eAAe,EAAER,MAAM,CAACQ;IAC1B,CAAC,CAAC;EACJ;AACF;AAAC6C,OAAA,CAAAvD,yBAAA,GAAAA,yBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","NestedCollectionNodeState","constructor","params","_defineProperty2","default","observable","map","deep","TaskState","nestedCollection","levelDescriptor","parent","parentNode","_firstRender","preRegister","runInAction","_expanded","isFetchAllAborted","expandAll","collection","parentFilter","nodeCollection","createCollection","sequences","query","sharedQuery","syncWithSharedQuery","persistent","setValue","key","makeObservable","init","action","_toggleExpand","_changeHover","ref","_hovered","hoveredOrParentHovered","computed","initialFetch","e","console","error","_this$parentNode","hovered","skipCollectionInit","initTask","_optimisticActions","events","on","disposers","skipInitialFetch","undefined","runOnce","status","promise","forEach","d","_createNode","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionNodeState.ts"],"sourcesContent":["import {\n FiltersMap,\n KeyedItem,\n QueryState,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\n\nexport interface NestedCollectionNodeStateBaseParams<T, F extends FiltersMap> {\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly preRegister?: boolean;\n}\n\nexport interface NestedCollectionNodeStateParams<T, F extends FiltersMap>\n extends NestedCollectionNodeStateBaseParams<T, F> {\n readonly nestedCollection: NestedCollectionState;\n readonly parentNode: NestedCollectionNodeState<any, any> | null;\n readonly parent: KeyedItem<any> | null;\n readonly nodeCollection?: NodeCollection<T, F>;\n}\n\nexport class NestedCollectionNodeState<T, F extends FiltersMap> {\n readonly nestedCollection;\n readonly collection;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly parent;\n readonly parentNode;\n readonly parentFilter;\n\n readonly parentKeyToChildrenMap = observable.map<\n string,\n NestedCollectionNodeState<any, any>\n >([], {\n deep: false,\n });\n\n _expanded = false;\n _hovered = false;\n\n _firstRender;\n\n readonly initTask = new TaskState();\n\n constructor(params: NestedCollectionNodeStateParams<T, F>) {\n const { nestedCollection } = params;\n this.nestedCollection = nestedCollection;\n this.levelDescriptor = params.levelDescriptor;\n this.parent = params.parent;\n this.parentNode = params.parentNode;\n this._firstRender = !params.preRegister;\n\n runInAction(() => {\n this._expanded =\n !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;\n });\n\n const { collection, parentFilter } =\n params.nodeCollection ??\n this.levelDescriptor.createCollection({\n parent: this.parent,\n sequences: nestedCollection.sequences,\n query: nestedCollection.query as QueryState<F>,\n });\n\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n parent,\n nestedCollection: { query: sharedQuery },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n\n if (parent != null && parentFilter != null) {\n parentFilter.persistent = true;\n parentFilter.setValue([parent.key]);\n }\n\n makeObservable(this, {\n init: action,\n _toggleExpand: action,\n _changeHover: action,\n _expanded: observable.ref,\n _hovered: observable.ref,\n hoveredOrParentHovered: computed,\n });\n }\n\n async _toggleExpand() {\n this._expanded = !this._expanded;\n if (this._expanded) {\n try {\n await this.collection.initialFetch();\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n get hoveredOrParentHovered(): boolean {\n return this._hovered || !!this.parentNode?.hoveredOrParentHovered;\n }\n\n _changeHover(hovered: boolean) {\n this._hovered = hovered;\n }\n\n init({ skipCollectionInit }: { skipCollectionInit?: boolean } = {}) {\n const { initTask, collection, nestedCollection } = this;\n\n if (collection._optimisticActions) {\n nestedCollection.events.on(\n 'dispose',\n collection._optimisticActions.init(),\n );\n }\n\n const disposers = [\n !skipCollectionInit\n ? collection.init({ skipInitialFetch: !this._expanded })\n : undefined,\n ];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n\n _createNode(\n parent: KeyedItem<any>,\n params: NestedCollectionNodeStateBaseParams<any, any>,\n ) {\n const { nestedCollection } = this;\n\n return new NestedCollectionNodeState({\n parent,\n parentNode: this,\n nestedCollection,\n levelDescriptor: params.levelDescriptor,\n preRegister: params.preRegister,\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,KAAA,GAAAD,OAAA;AAwBO,MAAME,yBAAyB,CAA0B;EAsB9DC,WAAWA,CAACC,MAA6C,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,kCAdzBC,gBAAU,CAACC,GAAG,CAG9C,EAAE,EAAE;MACJC,IAAI,EAAE;IACR,CAAC,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,qBAEU,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBACN,KAAK;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAII,IAAII,kBAAS,CAAC,CAAC;IAGjC,MAAM;MAAEC;IAAiB,CAAC,GAAGP,MAAM;IACnC,IAAI,CAACO,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACC,eAAe,GAAGR,MAAM,CAACQ,eAAe;IAC7C,IAAI,CAACC,MAAM,GAAGT,MAAM,CAACS,MAAM;IAC3B,IAAI,CAACC,UAAU,GAAGV,MAAM,CAACU,UAAU;IACnC,IAAI,CAACC,YAAY,GAAG,CAACX,MAAM,CAACY,WAAW;IAEvC,IAAAC,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACC,SAAS,GACZ,CAACP,gBAAgB,CAACQ,iBAAiB,IAAIR,gBAAgB,CAACS,SAAS;IACrE,CAAC,CAAC;IAEF,MAAM;MAAEC,UAAU;MAAEC;IAAa,CAAC,GAChClB,MAAM,CAACmB,cAAc,IACrB,IAAI,CAACX,eAAe,CAACY,gBAAgB,CAAC;MACpCX,MAAM,EAAE,IAAI,CAACA,MAAM;MACnBY,SAAS,EAAEd,gBAAgB,CAACc,SAAS;MACrCC,KAAK,EAAEf,gBAAgB,CAACe;IAC1B,CAAC,CAAC;IAEJ,IAAI,CAACL,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAEhC,MAAM;MACJT,MAAM;MACNF,gBAAgB,EAAE;QAAEe,KAAK,EAAEC;MAAY;IACzC,CAAC,GAAG,IAAI;IAER,MAAM;MAAED;IAAM,CAAC,GAAGL,UAAU;IAE5B,IAAAO,4BAAmB,EAACF,KAAK,EAAEC,WAAW,CAAC;IAEvC,IAAId,MAAM,IAAI,IAAI,IAAIS,YAAY,IAAI,IAAI,EAAE;MAC1CA,YAAY,CAACO,UAAU,GAAG,IAAI;MAC9BP,YAAY,CAACQ,QAAQ,CAAC,CAACjB,MAAM,CAACkB,GAAG,CAAC,CAAC;IACrC;IAEA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM;MACZC,aAAa,EAAED,YAAM;MACrBE,YAAY,EAAEF,YAAM;MACpBhB,SAAS,EAAEX,gBAAU,CAAC8B,GAAG;MACzBC,QAAQ,EAAE/B,gBAAU,CAAC8B,GAAG;MACxBE,sBAAsB,EAAEC;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAML,aAAaA,CAAA,EAAG;IACpB,IAAI,CAACjB,SAAS,GAAG,CAAC,IAAI,CAACA,SAAS;IAChC,IAAI,IAAI,CAACA,SAAS,EAAE;MAClB,IAAI;QACF,MAAM,IAAI,CAACG,UAAU,CAACoB,YAAY,CAAC,CAAC;MACtC,CAAC,CAAC,OAAOC,CAAC,EAAE;QACVC,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC;MAClB;IACF;EACF;EAEA,IAAIH,sBAAsBA,CAAA,EAAY;IAAA,IAAAM,gBAAA;IACpC,OAAO,IAAI,CAACP,QAAQ,IAAI,CAAC,GAAAO,gBAAA,GAAC,IAAI,CAAC/B,UAAU,aAAf+B,gBAAA,CAAiBN,sBAAsB;EACnE;EAEAH,YAAYA,CAACU,OAAgB,EAAE;IAC7B,IAAI,CAACR,QAAQ,GAAGQ,OAAO;EACzB;EAEAb,IAAIA,CAAC;IAAEc;EAAqD,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,MAAM;MAAEC,QAAQ;MAAE3B,UAAU;MAAEV;IAAiB,CAAC,GAAG,IAAI;IAEvD,IAAIU,UAAU,CAAC4B,kBAAkB,EAAE;MACjCtC,gBAAgB,CAACuC,MAAM,CAACC,EAAE,CACxB,SAAS,EACT9B,UAAU,CAAC4B,kBAAkB,CAAChB,IAAI,CAAC,CACrC,CAAC;IACH;IAEA,MAAMmB,SAAS,GAAG,CAChB,CAACL,kBAAkB,GACf1B,UAAU,CAACY,IAAI,CAAC;MAAEoB,gBAAgB,EAAE,CAAC,IAAI,CAACnC;IAAU,CAAC,CAAC,GACtDoC,SAAS,CACd;IAEDN,QAAQ,CAACO,OAAO,CAAC,YAAY;MAC3BlC,UAAU,CAAC2B,QAAQ,CAACO,OAAO,CAAC,CAAC;MAC7B,MAAMlC,UAAU,CAAC2B,QAAQ,CAACQ,MAAM,CAACC,OAAO;IAC1C,CAAC,CAAC;IAEF,OAAO,MAAM;MACXL,SAAS,CAACM,OAAO,CAAEC,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IACjC,CAAC;EACH;EAEAC,WAAWA,CACT/C,MAAsB,EACtBT,MAAqD,EACrD;IACA,MAAM;MAAEO;IAAiB,CAAC,GAAG,IAAI;IAEjC,OAAO,IAAIT,yBAAyB,CAAC;MACnCW,MAAM;MACNC,UAAU,EAAE,IAAI;MAChBH,gBAAgB;MAChBC,eAAe,EAAER,MAAM,CAACQ,eAAe;MACvCI,WAAW,EAAEZ,MAAM,CAACY;IACtB,CAAC,CAAC;EACJ;AACF;AAAC6C,OAAA,CAAA3D,yBAAA,GAAAA,yBAAA","ignoreList":[]}
@@ -6,6 +6,7 @@ exports.NestedCollectionState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _mobx = require("mobx");
8
8
  var _NestedCollectionNodeState = require("./NestedCollectionNodeState");
9
+ var _events = require("events");
9
10
  class NestedCollectionState {
10
11
  constructor(params) {
11
12
  var _this$root$parentFilt;
@@ -17,10 +18,13 @@ class NestedCollectionState {
17
18
  (0, _defineProperty2.default)(this, "total", 0);
18
19
  (0, _defineProperty2.default)(this, "root", void 0);
19
20
  (0, _defineProperty2.default)(this, "query", void 0);
21
+ (0, _defineProperty2.default)(this, "sequences", void 0);
22
+ (0, _defineProperty2.default)(this, "events", new _events.EventEmitter());
20
23
  const {
21
24
  container
22
25
  } = params;
23
26
  this.container = container;
27
+ this.sequences = params.sequences;
24
28
  const rootLevelDescriptor = params.levels[0];
25
29
  this.levels = params.levels;
26
30
  this.query = params.query;
@@ -29,13 +33,19 @@ class NestedCollectionState {
29
33
  parentNode: null,
30
34
  parent: null,
31
35
  levelDescriptor: rootLevelDescriptor,
32
- nodeCollection: params.nodeCollection
36
+ nodeCollection: params.nodeCollection,
37
+ preRegister: true
33
38
  });
34
39
  (_this$root$parentFilt = this.root.parentFilter) == null || _this$root$parentFilt.setValue(['null']);
35
40
  (0, _mobx.makeObservable)(this, {
36
41
  total: _mobx.observable.ref
37
42
  });
38
43
  }
44
+ init() {
45
+ return () => {
46
+ return this.events.listeners('dispose').forEach(d => d == null ? void 0 : d());
47
+ };
48
+ }
39
49
  }
40
50
  exports.NestedCollectionState = NestedCollectionState;
41
51
  //# sourceMappingURL=NestedCollectionState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_NestedCollectionNodeState","NestedCollectionState","constructor","params","_this$root$parentFilt","_defineProperty2","default","undefined","container","rootLevelDescriptor","levels","query","root","NestedCollectionNodeState","nestedCollection","parentNode","parent","levelDescriptor","nodeCollection","parentFilter","setValue","makeObservable","total","observable","ref","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionState.ts"],"sourcesContent":["import { WixPatternsContainer, QueryState } from '@wix/bex-core';\nimport { makeObservable, observable } from 'mobx';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\n\nexport interface NestedCollectionStateBaseParams {\n levels: NestedCollectionLevelDescriptor<any, any>[];\n query: QueryState<{}>;\n nodeCollection?: NodeCollection<any, any>;\n}\n\nexport interface NestedCollectionStateParams\n extends NestedCollectionStateBaseParams {\n readonly container: WixPatternsContainer;\n}\n\nexport class NestedCollectionState {\n readonly container;\n\n readonly levels;\n\n isFetchAllAborted = null as null | boolean;\n\n _fetchAllTotal = undefined as undefined | number;\n\n expandAll = true;\n total = 0;\n\n readonly root: NestedCollectionNodeState<any, any>;\n readonly query;\n\n constructor(params: NestedCollectionStateParams) {\n const { container } = params;\n this.container = container;\n\n const rootLevelDescriptor = params.levels[0];\n\n this.levels = params.levels;\n this.query = params.query;\n\n this.root = new NestedCollectionNodeState({\n nestedCollection: this,\n parentNode: null,\n parent: null,\n levelDescriptor: rootLevelDescriptor,\n nodeCollection: params.nodeCollection,\n });\n\n this.root.parentFilter?.setValue(['null']);\n\n makeObservable(this, {\n total: observable.ref,\n });\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AAeO,MAAME,qBAAqB,CAAC;EAejCC,WAAWA,CAACC,MAAmC,EAAE;IAAA,IAAAC,qBAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,6BAV7B,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,0BAEPC,SAAS;IAAA,IAAAF,gBAAA,CAAAC,OAAA,qBAEd,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,iBACR,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAMP,MAAM;MAAEE;IAAU,CAAC,GAAGL,MAAM;IAC5B,IAAI,CAACK,SAAS,GAAGA,SAAS;IAE1B,MAAMC,mBAAmB,GAAGN,MAAM,CAACO,MAAM,CAAC,CAAC,CAAC;IAE5C,IAAI,CAACA,MAAM,GAAGP,MAAM,CAACO,MAAM;IAC3B,IAAI,CAACC,KAAK,GAAGR,MAAM,CAACQ,KAAK;IAEzB,IAAI,CAACC,IAAI,GAAG,IAAIC,oDAAyB,CAAC;MACxCC,gBAAgB,EAAE,IAAI;MACtBC,UAAU,EAAE,IAAI;MAChBC,MAAM,EAAE,IAAI;MACZC,eAAe,EAAER,mBAAmB;MACpCS,cAAc,EAAEf,MAAM,CAACe;IACzB,CAAC,CAAC;IAEF,CAAAd,qBAAA,OAAI,CAACQ,IAAI,CAACO,YAAY,aAAtBf,qBAAA,CAAwBgB,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;IAE1C,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,KAAK,EAAEC,gBAAU,CAACC;IACpB,CAAC,CAAC;EACJ;AACF;AAACC,OAAA,CAAAxB,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_NestedCollectionNodeState","_events","NestedCollectionState","constructor","params","_this$root$parentFilt","_defineProperty2","default","undefined","EventEmitter","container","sequences","rootLevelDescriptor","levels","query","root","NestedCollectionNodeState","nestedCollection","parentNode","parent","levelDescriptor","nodeCollection","preRegister","parentFilter","setValue","makeObservable","total","observable","ref","init","events","listeners","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionState.ts"],"sourcesContent":["import {\n WixPatternsContainer,\n QueryState,\n CollectionOptimisticSequenceExecutor,\n} from '@wix/bex-core';\nimport { makeObservable, observable } from 'mobx';\nimport { NestedCollectionNodeState } from './NestedCollectionNodeState';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { NodeCollection } from './types';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '@wix/bex-core/events';\n\nexport interface NestedCollectionStateBaseParams {\n levels: NestedCollectionLevelDescriptor<any, any>[];\n query: QueryState<{}>;\n nodeCollection?: NodeCollection<any, any>;\n}\n\nexport interface NestedCollectionStateParams\n extends NestedCollectionStateBaseParams {\n readonly container: WixPatternsContainer;\n readonly sequences: Map<string, CollectionOptimisticSequenceExecutor>;\n}\n\nexport class NestedCollectionState {\n readonly container;\n\n readonly levels;\n\n isFetchAllAborted = null as null | boolean;\n\n _fetchAllTotal = undefined as undefined | number;\n\n expandAll = true;\n total = 0;\n\n readonly root: NestedCollectionNodeState<any, any>;\n readonly query;\n readonly sequences;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n dispose: (() => void) | undefined;\n }>;\n\n constructor(params: NestedCollectionStateParams) {\n const { container } = params;\n this.container = container;\n this.sequences = params.sequences;\n\n const rootLevelDescriptor = params.levels[0];\n\n this.levels = params.levels;\n this.query = params.query;\n\n this.root = new NestedCollectionNodeState({\n nestedCollection: this,\n parentNode: null,\n parent: null,\n levelDescriptor: rootLevelDescriptor,\n nodeCollection: params.nodeCollection,\n preRegister: true,\n });\n\n this.root.parentFilter?.setValue(['null']);\n\n makeObservable(this, {\n total: observable.ref,\n });\n }\n\n init() {\n return () => {\n return this.events.listeners('dispose').forEach((d) => d?.());\n };\n }\n}\n"],"mappings":";;;;;;AAKA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,0BAAA,GAAAD,OAAA;AAGA,IAAAE,OAAA,GAAAF,OAAA;AAeO,MAAMG,qBAAqB,CAAC;EAoBjCC,WAAWA,CAACC,MAAmC,EAAE;IAAA,IAAAC,qBAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,6BAf7B,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,0BAEPC,SAAS;IAAA,IAAAF,gBAAA,CAAAC,OAAA,qBAEd,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,iBACR,CAAC;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAMS,IAAIE,oBAAY,CAAC,CAAC;IAKlC,MAAM;MAAEC;IAAU,CAAC,GAAGN,MAAM;IAC5B,IAAI,CAACM,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,SAAS,GAAGP,MAAM,CAACO,SAAS;IAEjC,MAAMC,mBAAmB,GAAGR,MAAM,CAACS,MAAM,CAAC,CAAC,CAAC;IAE5C,IAAI,CAACA,MAAM,GAAGT,MAAM,CAACS,MAAM;IAC3B,IAAI,CAACC,KAAK,GAAGV,MAAM,CAACU,KAAK;IAEzB,IAAI,CAACC,IAAI,GAAG,IAAIC,oDAAyB,CAAC;MACxCC,gBAAgB,EAAE,IAAI;MACtBC,UAAU,EAAE,IAAI;MAChBC,MAAM,EAAE,IAAI;MACZC,eAAe,EAAER,mBAAmB;MACpCS,cAAc,EAAEjB,MAAM,CAACiB,cAAc;MACrCC,WAAW,EAAE;IACf,CAAC,CAAC;IAEF,CAAAjB,qBAAA,OAAI,CAACU,IAAI,CAACQ,YAAY,aAAtBlB,qBAAA,CAAwBmB,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;IAE1C,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,KAAK,EAAEC,gBAAU,CAACC;IACpB,CAAC,CAAC;EACJ;EAEAC,IAAIA,CAAA,EAAG;IACL,OAAO,MAAM;MACX,OAAO,IAAI,CAACC,MAAM,CAACC,SAAS,CAAC,SAAS,CAAC,CAACC,OAAO,CAAEC,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IAC/D,CAAC;EACH;AACF;AAACC,OAAA,CAAAhC,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -148,7 +148,9 @@ class NestedTableFlatModeState {
148
148
  get levels() {
149
149
  return this.wrapper.levels;
150
150
  }
151
- init() {
151
+ init({
152
+ isUsingCache = false
153
+ } = {}) {
152
154
  const {
153
155
  initTask,
154
156
  wrapper,
@@ -159,7 +161,7 @@ class NestedTableFlatModeState {
159
161
  query
160
162
  } = wrapper;
161
163
  const disposers = [wrapper.init(), multi.init(), (0, _util.addEventListener)(query.search.events, 'change', this._runSearch), ...sections.map(section => section.init())];
162
- if (initTask.status.isSuccess) {
164
+ if (!isUsingCache && initTask.status.isSuccess) {
163
165
  this._runSearch();
164
166
  }
165
167
  initTask.runOnce(async () => {
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_bexCore","_TableVirtualState","_NestedTableFlatModeSectionState","_util","_NestedTableFlatModeStateBIReporter","NestedTableFlatModeState","constructor","params","_defineProperty2","default","TaskState","action","initTask","refreshTask","status","isError","runOnce","multi","retryErrorState","query","sections","wrapper","bi","search","isEmpty","reset","reportSearchResults","_createReportSearchResults","fetchAll","_attemptFetchAllAndPopulateCache","init","promise","forEach","collection","_runSearch","levels","NestedTableFlatModeStateBIReporter","Array","from","map","levelDescriptor","NestedTableFlatModeSectionState","reduce","section","set","getCurrentQuery","Map","values","MultiCollectionSupport","collections","virtual","TableVirtualState","table","makeObservable","keyedItems","computed","toolbar","tableState","acc","result","keyedItem","item","state","originalKeyedItem","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isIdle","isLoading","errorStatus","disposers","addEventListener","events","isSuccess","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableFlatModeState.ts"],"sourcesContent":["import { NestedTableState } from './NestedTableState';\nimport { action, computed, makeObservable } from 'mobx';\nimport { MultiCollectionSupport, TaskState } from '@wix/bex-core';\nimport { TableVirtualState } from '../TableVirtualState';\nimport {\n NestedTableFlatKeyedItem,\n NestedTableFlatModeSectionState,\n} from './NestedTableFlatModeSectionState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { NestedTableFlatModeStateBIReporter } from './NestedTableFlatModeStateBIReporter';\n\nexport interface NestedTableFlatStateBaseParams<C extends string> {\n wrapper: NestedTableState<C>;\n}\n\nexport class NestedTableFlatModeState<C extends string = string> {\n readonly wrapper;\n readonly virtual;\n\n readonly initTask = new TaskState();\n readonly refreshTask = new TaskState();\n\n readonly sections;\n readonly multi;\n readonly bi: NestedTableFlatModeStateBIReporter<C>;\n\n constructor(params: NestedTableFlatStateBaseParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n\n const { levels, query } = wrapper;\n\n this.bi = new NestedTableFlatModeStateBIReporter(this);\n\n this.sections = Array.from(\n levels\n .map((levelDescriptor) => {\n return new NestedTableFlatModeSectionState({\n levelDescriptor,\n query,\n });\n })\n .reduce((map, section) => {\n map.set(section.collection.getCurrentQuery(), section);\n return map;\n }, new Map<unknown, NestedTableFlatModeSectionState<C, unknown, {}>>())\n .values(),\n );\n\n this.multi = new MultiCollectionSupport<{}>({\n collections: this.sections.map(({ collection }) => collection),\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n\n makeObservable(this, {\n keyedItems: computed,\n });\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get keyedItems(): NestedTableFlatKeyedItem<C, any, any>[] {\n return this.sections.reduce((acc, section) => {\n const {\n collection: {\n result: { keyedItems },\n },\n } = section;\n\n return [\n ...acc,\n ...keyedItems.map((keyedItem) => ({\n ...keyedItem,\n item: {\n state: section,\n originalKeyedItem: keyedItem,\n },\n })),\n ];\n }, [] as NestedTableFlatKeyedItem<C, any, any>[]);\n }\n\n get showEmptyState() {\n return this.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask, refreshTask, multi } = this;\n return (\n initTask.status.isError ||\n refreshTask.status.isError ||\n multi.showErrorState\n );\n }\n\n get showLoadingState() {\n return (\n this.initTask.status.isIdle ||\n this.initTask.status.isLoading ||\n this.refreshTask.status.isLoading ||\n this.multi.showLoadingState\n );\n }\n\n retryErrorState = action(() => {\n const { initTask, refreshTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else if (refreshTask.status.isError) {\n refreshTask.runOnce();\n } else {\n this.multi.retryErrorState();\n }\n });\n\n get errorStatus() {\n const { initTask, refreshTask, multi } = this;\n return initTask.errorStatus || refreshTask.errorStatus || multi.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n _runSearch = action(async () => {\n const { query, sections, wrapper, refreshTask, bi } = this;\n if (query.search.isEmpty) {\n return;\n }\n\n refreshTask.reset();\n\n refreshTask.runOnce(async () => {\n const reportSearchResults = bi._createReportSearchResults();\n const fetchAll = wrapper._attemptFetchAllAndPopulateCache();\n fetchAll.init();\n await fetchAll.initTask.status.promise;\n sections.forEach(({ collection }) => {\n collection._runSearch(true);\n });\n reportSearchResults();\n });\n });\n\n init() {\n const { initTask, wrapper, multi, sections } = this;\n\n const { query } = wrapper;\n\n const disposers = [\n wrapper.init(),\n multi.init(),\n addEventListener(query.search.events, 'change', this._runSearch),\n ...sections.map((section) => section.init()),\n ];\n\n if (initTask.status.isSuccess) {\n this._runSearch();\n }\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n this._runSearch();\n await wrapper.initTask.status.promise;\n await multi.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_bexCore","_TableVirtualState","_NestedTableFlatModeSectionState","_util","_NestedTableFlatModeStateBIReporter","NestedTableFlatModeState","constructor","params","_defineProperty2","default","TaskState","action","initTask","refreshTask","status","isError","runOnce","multi","retryErrorState","query","sections","wrapper","bi","search","isEmpty","reset","reportSearchResults","_createReportSearchResults","fetchAll","_attemptFetchAllAndPopulateCache","init","promise","forEach","collection","_runSearch","levels","NestedTableFlatModeStateBIReporter","Array","from","map","levelDescriptor","NestedTableFlatModeSectionState","reduce","section","set","getCurrentQuery","Map","values","MultiCollectionSupport","collections","virtual","TableVirtualState","table","makeObservable","keyedItems","computed","toolbar","tableState","acc","result","keyedItem","item","state","originalKeyedItem","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isIdle","isLoading","errorStatus","isUsingCache","disposers","addEventListener","events","isSuccess","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableFlatModeState.ts"],"sourcesContent":["import { NestedTableState } from './NestedTableState';\nimport { action, computed, makeObservable } from 'mobx';\nimport { MultiCollectionSupport, TaskState } from '@wix/bex-core';\nimport { TableVirtualState } from '../TableVirtualState';\nimport {\n NestedTableFlatKeyedItem,\n NestedTableFlatModeSectionState,\n} from './NestedTableFlatModeSectionState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { NestedTableFlatModeStateBIReporter } from './NestedTableFlatModeStateBIReporter';\n\nexport interface NestedTableFlatStateBaseParams<C extends string> {\n wrapper: NestedTableState<C>;\n}\n\nexport class NestedTableFlatModeState<C extends string = string> {\n readonly wrapper;\n readonly virtual;\n\n readonly initTask = new TaskState();\n readonly refreshTask = new TaskState();\n\n readonly sections;\n readonly multi;\n readonly bi: NestedTableFlatModeStateBIReporter<C>;\n\n constructor(params: NestedTableFlatStateBaseParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n\n const { levels, query } = wrapper;\n\n this.bi = new NestedTableFlatModeStateBIReporter(this);\n\n this.sections = Array.from(\n levels\n .map((levelDescriptor) => {\n return new NestedTableFlatModeSectionState({\n levelDescriptor,\n query,\n });\n })\n .reduce((map, section) => {\n map.set(section.collection.getCurrentQuery(), section);\n return map;\n }, new Map<unknown, NestedTableFlatModeSectionState<C, unknown, {}>>())\n .values(),\n );\n\n this.multi = new MultiCollectionSupport<{}>({\n collections: this.sections.map(({ collection }) => collection),\n });\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n\n makeObservable(this, {\n keyedItems: computed,\n });\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get keyedItems(): NestedTableFlatKeyedItem<C, any, any>[] {\n return this.sections.reduce((acc, section) => {\n const {\n collection: {\n result: { keyedItems },\n },\n } = section;\n\n return [\n ...acc,\n ...keyedItems.map((keyedItem) => ({\n ...keyedItem,\n item: {\n state: section,\n originalKeyedItem: keyedItem,\n },\n })),\n ];\n }, [] as NestedTableFlatKeyedItem<C, any, any>[]);\n }\n\n get showEmptyState() {\n return this.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask, refreshTask, multi } = this;\n return (\n initTask.status.isError ||\n refreshTask.status.isError ||\n multi.showErrorState\n );\n }\n\n get showLoadingState() {\n return (\n this.initTask.status.isIdle ||\n this.initTask.status.isLoading ||\n this.refreshTask.status.isLoading ||\n this.multi.showLoadingState\n );\n }\n\n retryErrorState = action(() => {\n const { initTask, refreshTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else if (refreshTask.status.isError) {\n refreshTask.runOnce();\n } else {\n this.multi.retryErrorState();\n }\n });\n\n get errorStatus() {\n const { initTask, refreshTask, multi } = this;\n return initTask.errorStatus || refreshTask.errorStatus || multi.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n _runSearch = action(async () => {\n const { query, sections, wrapper, refreshTask, bi } = this;\n if (query.search.isEmpty) {\n return;\n }\n\n refreshTask.reset();\n\n refreshTask.runOnce(async () => {\n const reportSearchResults = bi._createReportSearchResults();\n const fetchAll = wrapper._attemptFetchAllAndPopulateCache();\n fetchAll.init();\n await fetchAll.initTask.status.promise;\n sections.forEach(({ collection }) => {\n collection._runSearch(true);\n });\n reportSearchResults();\n });\n });\n\n init({ isUsingCache = false } = {}) {\n const { initTask, wrapper, multi, sections } = this;\n\n const { query } = wrapper;\n\n const disposers = [\n wrapper.init(),\n multi.init(),\n addEventListener(query.search.events, 'change', this._runSearch),\n ...sections.map((section) => section.init()),\n ];\n\n if (!isUsingCache && initTask.status.isSuccess) {\n this._runSearch();\n }\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n this._runSearch();\n await wrapper.initTask.status.promise;\n await multi.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../../src/state/NestedTableState/NestedTableLevelDescriptor.ts"],"sourcesContent":["import { FiltersMap } from '@wix/bex-core';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { ActionCell } from '../../components/ActionCell';\nimport {\n NestedTableNestColumns,\n RenderMainColumn,\n} from './NestedTableNodeState';\n\nexport interface NestedTableLevelDescriptor<\n C extends string,\n T,\n F extends FiltersMap,\n> extends NestedCollectionLevelDescriptor<T, F> {\n readonly columns?: NestedTableNestColumns<C, T>;\n readonly renderMainColumn?: RenderMainColumn<T>;\n readonly actionCell?: ActionCell<T, F>;\n readonly breadcrumbs?: (\n item: T,\n ) => { id: string; name: string }[] | null | undefined;\n readonly onAddNewClick?: () => void;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../../src/state/NestedTableState/NestedTableLevelDescriptor.ts"],"sourcesContent":["import { FiltersMap, ToastConfig } from '@wix/bex-core';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { ActionCell } from '../../components/ActionCell';\nimport {\n NestedTableNestColumns,\n RenderMainColumn,\n} from './NestedTableNodeState';\nimport { NestedDragEndEvent } from '../../components/NestedTableDragAndDrop/NestedTableDragAndDropState';\n\nexport interface NestedTableLevelDescriptor<\n C extends string,\n T,\n F extends FiltersMap,\n> extends NestedCollectionLevelDescriptor<T, F> {\n readonly columns?: NestedTableNestColumns<C, T>;\n readonly renderMainColumn?: RenderMainColumn<T>;\n readonly actionCell?: ActionCell<T, F>;\n readonly breadcrumbs?: (\n item: T,\n ) => { id: string; name: string }[] | null | undefined;\n readonly onAddNewClick?: () => void;\n readonly dragAndDropSubmit?: (\n event: NestedDragEndEvent<C, T, F>,\n ) => Promise<void>;\n readonly dragAndDropCancel?: (\n event: NestedDragEndEvent<C, T, F>,\n ) => Omit<ToastConfig, 'type' | 'biName'> | null | undefined | void;\n}\n"],"mappings":"","ignoreList":[]}
@@ -44,20 +44,47 @@ class NestedTableNestedModeState {
44
44
  container: this.container,
45
45
  levels: wrapper.levels,
46
46
  query: wrapper.query,
47
- nodeCollection: wrapper.rootNodeCollection
47
+ nodeCollection: wrapper.rootNodeCollection,
48
+ sequences: wrapper.sequences
48
49
  });
49
50
  this.root = new _NestedTableNodeState.NestedTableNodeState({
50
51
  nestedTable: this,
51
52
  node: this.nestedCollection.root,
52
53
  levelDescriptor: rootLevelDescriptor,
53
54
  parentNode: null,
54
- parent: null
55
+ parent: null,
56
+ preRegister: true
55
57
  });
56
58
  this.reportBi = params.reportBi;
57
59
  this.virtual = new _TableVirtualState.TableVirtualState({
58
- table: this
60
+ table: this,
61
+ getVirtualItemKey: item => {
62
+ var _item$item$state$pare;
63
+ return [item.id, (_item$item$state$pare = item.item.state.parent) == null ? void 0 : _item$item$state$pare.id].filter(Boolean).join('_');
64
+ }
59
65
  });
60
66
  }
67
+ getCollectionSnapshot() {
68
+ var _toolbar$viewsState, _originQuery$sort;
69
+ const {
70
+ toolbar
71
+ } = this;
72
+ const {
73
+ collection: {
74
+ result: {
75
+ originQuery,
76
+ total
77
+ }
78
+ }
79
+ } = toolbar;
80
+ return {
81
+ viewShown: (_toolbar$viewsState = toolbar.viewsState) == null || (_toolbar$viewsState = _toolbar$viewsState.views.currentView) == null ? void 0 : _toolbar$viewsState.id,
82
+ tabShown: toolbar.getCurrentTabName(),
83
+ sortOrderApplied: (_originQuery$sort = originQuery.sort) != null && _originQuery$sort.length ? JSON.stringify(originQuery.sort) : undefined,
84
+ filtersApplied: JSON.stringify(originQuery.filtersKey),
85
+ filteredListSizeShown: total
86
+ };
87
+ }
61
88
  get multi() {
62
89
  return this.toolbar.multi;
63
90
  }
@@ -122,12 +149,14 @@ class NestedTableNestedModeState {
122
149
  const {
123
150
  initTask,
124
151
  wrapper,
125
- root
152
+ root,
153
+ nestedCollection
126
154
  } = this;
127
155
  const disposers = [wrapper.init(), root.init({
128
156
  skipCollectionInit: true
129
- }) // collection is initialized by toolbar state
130
- ];
157
+ }),
158
+ // collection is initialized by toolbar state
159
+ nestedCollection.init()];
131
160
  initTask.runOnce(async () => {
132
161
  wrapper.initTask.runOnce();
133
162
  root.initTask.runOnce();
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_NestedCollectionState","_TableVirtualState","_NestedTableNodeState","_mobx","NestedTableNestedModeState","constructor","params","_defineProperty2","default","TaskState","key","root","getKeyedItem","ind","getKeyedItemByIndex","action","initTask","status","isError","runOnce","wrapper","container","rootLevelDescriptor","levels","Error","nestedCollection","NestedCollectionState","query","nodeCollection","rootNodeCollection","NestedTableNodeState","nestedTable","node","levelDescriptor","parentNode","parent","reportBi","virtual","TableVirtualState","table","multi","toolbar","tableState","total","originQuery","collection","keyedItems","_keyedItemsMap","expandAll","isFetchAllAborted","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isLoading","errorStatus","init","disposers","skipCollectionInit","promise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNestedModeState.ts"],"sourcesContent":["import { ReportBI, TaskState } from '@wix/bex-core';\n\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { TableVirtualState } from '../TableVirtualState';\nimport { NestedTableNodeState } from './NestedTableNodeState';\nimport { action } from 'mobx';\nimport { NestedTableState } from './NestedTableState';\nimport { NestedTableDragAndDropState } from '../../components/NestedTableDragAndDrop/NestedTableDragAndDropState';\n\nexport interface NestedTableNestedModeStateBaseParams {}\n\nexport interface NestedTableNestedModeStateParams<C extends string>\n extends NestedTableNestedModeStateBaseParams {\n wrapper: NestedTableState<C>;\n reportBi: ReportBI;\n}\n\nexport class NestedTableNestedModeState<C extends string = string> {\n readonly wrapper;\n readonly container;\n readonly reportBi: ReportBI;\n readonly nestedCollection: NestedCollectionState;\n readonly virtual;\n\n readonly initTask = new TaskState();\n\n readonly root: NestedTableNodeState<C, any, any>;\n\n nestedTableDragAndDrop: NestedTableDragAndDropState<C> | null = null;\n\n constructor(params: NestedTableNestedModeStateParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n this.container = wrapper.container;\n\n const rootLevelDescriptor = this.wrapper.levels[0];\n\n if (rootLevelDescriptor == null) {\n throw new Error('NestedTableState must have at least one level');\n }\n\n this.nestedCollection = new NestedCollectionState({\n container: this.container,\n levels: wrapper.levels,\n query: wrapper.query,\n nodeCollection: wrapper.rootNodeCollection,\n });\n\n this.root = new NestedTableNodeState({\n nestedTable: this,\n node: this.nestedCollection.root,\n levelDescriptor: rootLevelDescriptor,\n parentNode: null,\n parent: null,\n });\n\n this.reportBi = params.reportBi;\n\n this.virtual = new TableVirtualState({\n table: this,\n });\n }\n\n get multi() {\n return this.toolbar.multi;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get total() {\n return this.nestedCollection.total;\n }\n\n get originQuery() {\n return this.toolbar.collection.originQuery;\n }\n\n get keyedItems() {\n return this.root.keyedItems;\n }\n\n get _keyedItemsMap() {\n return this.root._keyedItemsMap;\n }\n\n _indentationWidth = 28;\n _parentCellPaddingStart = 24;\n\n getKeyedItem = (key: string) => this.root.getKeyedItem(key);\n\n getKeyedItemByIndex = (ind: number) => this.root.getKeyedItemByIndex(ind);\n\n get expandAll() {\n return this.nestedCollection.expandAll;\n }\n\n get isFetchAllAborted() {\n return this.nestedCollection.isFetchAllAborted;\n }\n\n get showEmptyState() {\n return this.toolbar.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.toolbar.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.toolbar.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.toolbar.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask } = this;\n return initTask.status.isError;\n }\n\n get showLoadingState() {\n return this.initTask.status.isLoading;\n }\n\n retryErrorState = action(() => {\n const { initTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n }\n });\n\n get errorStatus() {\n const { initTask } = this;\n return initTask.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n init() {\n const { initTask, wrapper, root } = this;\n\n const disposers = [\n wrapper.init(),\n root.init({ skipCollectionInit: true }), // collection is initialized by toolbar state\n ];\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n root.initTask.runOnce();\n\n await root.initTask.status.promise;\n await wrapper.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_NestedCollectionState","_TableVirtualState","_NestedTableNodeState","_mobx","NestedTableNestedModeState","constructor","params","_defineProperty2","default","TaskState","key","root","getKeyedItem","ind","getKeyedItemByIndex","action","initTask","status","isError","runOnce","wrapper","container","rootLevelDescriptor","levels","Error","nestedCollection","NestedCollectionState","query","nodeCollection","rootNodeCollection","sequences","NestedTableNodeState","nestedTable","node","levelDescriptor","parentNode","parent","preRegister","reportBi","virtual","TableVirtualState","table","getVirtualItemKey","item","_item$item$state$pare","id","state","filter","Boolean","join","getCollectionSnapshot","_toolbar$viewsState","_originQuery$sort","toolbar","collection","result","originQuery","total","viewShown","viewsState","views","currentView","tabShown","getCurrentTabName","sortOrderApplied","sort","length","JSON","stringify","undefined","filtersApplied","filtersKey","filteredListSizeShown","multi","tableState","keyedItems","_keyedItemsMap","expandAll","isFetchAllAborted","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isLoading","errorStatus","init","disposers","skipCollectionInit","promise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableNestedModeState.ts"],"sourcesContent":["import { ReportBI, TaskState } from '@wix/bex-core';\n\nimport { NestedCollectionState } from './NestedCollectionState';\nimport { TableVirtualState } from '../TableVirtualState';\nimport { NestedTableNodeState } from './NestedTableNodeState';\nimport { action } from 'mobx';\nimport { NestedTableState } from './NestedTableState';\nimport { NestedTableDragAndDropState } from '../../components/NestedTableDragAndDrop/NestedTableDragAndDropState';\n\nexport interface NestedTableNestedModeStateBaseParams {}\n\nexport interface NestedTableNestedModeStateParams<C extends string>\n extends NestedTableNestedModeStateBaseParams {\n wrapper: NestedTableState<C>;\n reportBi: ReportBI;\n}\n\nexport class NestedTableNestedModeState<C extends string = string> {\n readonly wrapper;\n readonly container;\n readonly reportBi: ReportBI;\n readonly nestedCollection: NestedCollectionState;\n readonly virtual;\n\n readonly initTask = new TaskState();\n\n readonly root: NestedTableNodeState<C, any, any>;\n\n nestedTableDragAndDrop: NestedTableDragAndDropState<C> | null = null;\n\n constructor(params: NestedTableNestedModeStateParams<C>) {\n const { wrapper } = params;\n this.wrapper = wrapper;\n this.container = wrapper.container;\n\n const rootLevelDescriptor = this.wrapper.levels[0];\n\n if (rootLevelDescriptor == null) {\n throw new Error('NestedTableState must have at least one level');\n }\n\n this.nestedCollection = new NestedCollectionState({\n container: this.container,\n levels: wrapper.levels,\n query: wrapper.query,\n nodeCollection: wrapper.rootNodeCollection,\n sequences: wrapper.sequences,\n });\n\n this.root = new NestedTableNodeState({\n nestedTable: this,\n node: this.nestedCollection.root,\n levelDescriptor: rootLevelDescriptor,\n parentNode: null,\n parent: null,\n preRegister: true,\n });\n\n this.reportBi = params.reportBi;\n\n this.virtual = new TableVirtualState({\n table: this,\n getVirtualItemKey: (item) =>\n [item.id, item.item.state.parent?.id].filter(Boolean).join('_'),\n });\n }\n\n getCollectionSnapshot() {\n const { toolbar } = this;\n\n const {\n collection: {\n result: { originQuery, total },\n },\n } = toolbar;\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: total,\n };\n }\n\n get multi() {\n return this.toolbar.multi;\n }\n\n get tableState() {\n return this.wrapper.tableState;\n }\n\n get toolbar() {\n return this.wrapper.toolbar;\n }\n\n get total() {\n return this.nestedCollection.total;\n }\n\n get originQuery() {\n return this.toolbar.collection.originQuery;\n }\n\n get keyedItems() {\n return this.root.keyedItems;\n }\n\n get _keyedItemsMap() {\n return this.root._keyedItemsMap;\n }\n\n _indentationWidth = 28;\n _parentCellPaddingStart = 24;\n\n getKeyedItem = (key: string) => this.root.getKeyedItem(key);\n\n getKeyedItemByIndex = (ind: number) => this.root.getKeyedItemByIndex(ind);\n\n get expandAll() {\n return this.nestedCollection.expandAll;\n }\n\n get isFetchAllAborted() {\n return this.nestedCollection.isFetchAllAborted;\n }\n\n get showEmptyState() {\n return this.toolbar.multi.showEmptyState;\n }\n\n get hasAvailableItems() {\n return this.toolbar.multi.hasAvailableItems;\n }\n\n get resultOriginQuerySearch() {\n return this.toolbar.multi.resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n return this.toolbar.multi.hasNonPersistentActiveFilters;\n }\n\n get showErrorState() {\n const { initTask } = this;\n return initTask.status.isError;\n }\n\n get showLoadingState() {\n return this.initTask.status.isLoading;\n }\n\n retryErrorState = action(() => {\n const { initTask } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n }\n });\n\n get errorStatus() {\n const { initTask } = this;\n return initTask.errorStatus;\n }\n\n get query() {\n return this.wrapper.query;\n }\n\n get levels() {\n return this.wrapper.levels;\n }\n\n init() {\n const { initTask, wrapper, root, nestedCollection } = this;\n\n const disposers = [\n wrapper.init(),\n root.init({ skipCollectionInit: true }), // collection is initialized by toolbar state\n nestedCollection.init(),\n ];\n\n initTask.runOnce(async () => {\n wrapper.initTask.runOnce();\n root.initTask.runOnce();\n\n await root.initTask.status.promise;\n await wrapper.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -158,26 +158,6 @@ class NestedTableNodeState {
158
158
  getKeyedItemByIndex(ind) {
159
159
  return this.keyedItems[ind];
160
160
  }
161
- getCollectionSnapshot() {
162
- var _toolbar$viewsState, _originQuery$sort;
163
- const {
164
- collection: {
165
- result: {
166
- originQuery
167
- }
168
- },
169
- nestedTable: {
170
- toolbar
171
- }
172
- } = this;
173
- return {
174
- viewShown: (_toolbar$viewsState = toolbar.viewsState) == null || (_toolbar$viewsState = _toolbar$viewsState.views.currentView) == null ? void 0 : _toolbar$viewsState.id,
175
- tabShown: toolbar.getCurrentTabName(),
176
- sortOrderApplied: (_originQuery$sort = originQuery.sort) != null && _originQuery$sort.length ? JSON.stringify(originQuery.sort) : undefined,
177
- filtersApplied: JSON.stringify(originQuery.filtersKey),
178
- filteredListSizeShown: this.collection.result.total
179
- };
180
- }
181
161
  _register() {
182
162
  const {
183
163
  parent,
@@ -215,7 +195,8 @@ class NestedTableNodeState {
215
195
  } = node;
216
196
  await Promise.all(keyedItems.map(async keyedItem => {
217
197
  const state = this.createNode({
218
- parent: keyedItem
198
+ parent: keyedItem,
199
+ preRegister: true
219
200
  });
220
201
  if (state == null) {
221
202
  return;
@@ -246,11 +227,15 @@ class NestedTableNodeState {
246
227
  const {
247
228
  node,
248
229
  initTask,
249
- nestedTable
230
+ nestedTable,
231
+ collection
250
232
  } = this;
233
+ const {
234
+ nestedTableDragAndDrop
235
+ } = nestedTable;
251
236
  const disposers = [node.init({
252
237
  skipCollectionInit
253
- })];
238
+ }), nestedTableDragAndDrop == null ? void 0 : nestedTableDragAndDrop.initCollection(collection)];
254
239
  initTask.runOnce(async () => {
255
240
  node.initTask.runOnce();
256
241
  await node.initTask.status.promise;
@@ -269,7 +254,8 @@ class NestedTableNodeState {
269
254
  };
270
255
  }
271
256
  createNode({
272
- parent
257
+ parent,
258
+ preRegister
273
259
  }) {
274
260
  const {
275
261
  nestedTable,
@@ -286,7 +272,8 @@ class NestedTableNodeState {
286
272
  return null;
287
273
  }
288
274
  const nextLevelNode = node._createNode(parent, {
289
- levelDescriptor: nextLevelDescriptor
275
+ levelDescriptor: nextLevelDescriptor,
276
+ preRegister
290
277
  });
291
278
  if (nextLevelNode == null) {
292
279
  return null;
@@ -296,7 +283,8 @@ class NestedTableNodeState {
296
283
  parentNode: this,
297
284
  nestedTable,
298
285
  node: nextLevelNode,
299
- levelDescriptor: nextLevelDescriptor
286
+ levelDescriptor: nextLevelDescriptor,
287
+ preRegister
300
288
  });
301
289
  }
302
290
  }