@wix/patterns 1.134.0 → 1.136.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 (244) 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/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  4. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  5. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +3 -3
  6. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  7. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  8. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  10. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  11. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  12. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  13. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  14. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  15. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  16. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  17. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  18. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  19. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  20. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  21. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  22. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  23. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  24. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  25. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  26. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  27. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  28. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  29. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  30. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  31. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  32. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  33. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  34. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  35. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  36. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  37. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  38. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  39. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  40. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  41. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  42. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  43. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  44. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  45. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  46. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  47. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js +2 -2
  48. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js.map +1 -1
  49. package/dist/cjs/components/Table/useTableSyncProps.js +4 -0
  50. package/dist/cjs/components/Table/useTableSyncProps.js.map +1 -1
  51. package/dist/cjs/components/TableFolders/TableFoldersLayout.js +4 -2
  52. package/dist/cjs/components/TableFolders/TableFoldersLayout.js.map +1 -1
  53. package/dist/cjs/components/TableFolders/useTableFoldersSyncProps.js +4 -0
  54. package/dist/cjs/components/TableFolders/useTableFoldersSyncProps.js.map +1 -1
  55. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  56. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  57. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  58. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  59. package/dist/cjs/components/Tags/TagsFolders.js +21 -0
  60. package/dist/cjs/components/Tags/TagsFolders.js.map +1 -0
  61. package/dist/cjs/components/Tags/index.js +6 -0
  62. package/dist/cjs/components/Tags/index.js.map +1 -1
  63. package/dist/cjs/components/Tags/useTagsBulkAssignBaseUtils.js +28 -0
  64. package/dist/cjs/components/Tags/useTagsBulkAssignBaseUtils.js.map +1 -0
  65. package/dist/cjs/components/Tags/useTagsBulkAssignFoldersUtils.js +30 -0
  66. package/dist/cjs/components/Tags/useTagsBulkAssignFoldersUtils.js.map +1 -0
  67. package/dist/cjs/components/Tags/useTagsBulkAssignUtils.js +29 -0
  68. package/dist/cjs/components/Tags/useTagsBulkAssignUtils.js.map +1 -0
  69. package/dist/cjs/components/TagsAssignButton/TagsAssignButton.js +11 -8
  70. package/dist/cjs/components/TagsAssignButton/TagsAssignButton.js.map +1 -1
  71. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  72. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  73. package/dist/cjs/components/common.st.css.js +4 -4
  74. package/dist/cjs/components/common.st.css.js.map +1 -1
  75. package/dist/cjs/exports/testkit/unidriver.js +3 -1
  76. package/dist/cjs/exports/testkit/unidriver.js.map +1 -1
  77. package/dist/cjs/hooks/useCreateNestedOptimisticActions.js +3 -9
  78. package/dist/cjs/hooks/useCreateNestedOptimisticActions.js.map +1 -1
  79. package/dist/cjs/state/FoldersAndItemsCollectionsState.js +5 -1
  80. package/dist/cjs/state/FoldersAndItemsCollectionsState.js.map +1 -1
  81. package/dist/cjs/state/NestedTableState/NestedCollectionFetchAllCollectionState.js +5 -0
  82. package/dist/cjs/state/NestedTableState/NestedCollectionFetchAllCollectionState.js.map +1 -1
  83. package/dist/cjs/state/NestedTableState/NestedCollectionLevelDescriptor.js.map +1 -1
  84. package/dist/cjs/state/NestedTableState/NestedCollectionNodeState.js +11 -4
  85. package/dist/cjs/state/NestedTableState/NestedCollectionNodeState.js.map +1 -1
  86. package/dist/cjs/state/NestedTableState/NestedTableFlatModeSectionState.js +11 -2
  87. package/dist/cjs/state/NestedTableState/NestedTableFlatModeSectionState.js.map +1 -1
  88. package/dist/cjs/state/NestedTableState/NestedTableFlatModeState.js +2 -1
  89. package/dist/cjs/state/NestedTableState/NestedTableFlatModeState.js.map +1 -1
  90. package/dist/cjs/state/NestedTableState/NestedTableNestedModeState.js +9 -2
  91. package/dist/cjs/state/NestedTableState/NestedTableNestedModeState.js.map +1 -1
  92. package/dist/cjs/state/NestedTableState/NestedTableState.js +7 -3
  93. package/dist/cjs/state/NestedTableState/NestedTableState.js.map +1 -1
  94. package/dist/cjs/state/NestedTableState/createNestedOptimisticActions.js +27 -0
  95. package/dist/cjs/state/NestedTableState/createNestedOptimisticActions.js.map +1 -0
  96. package/dist/cjs/state/NestedTableState/createParentIdPredicate.js +21 -0
  97. package/dist/cjs/state/NestedTableState/createParentIdPredicate.js.map +1 -0
  98. package/dist/cjs/state/TagsBulkAssignButtonState.js +29 -0
  99. package/dist/cjs/state/TagsBulkAssignButtonState.js.map +1 -0
  100. package/dist/cjs/state/TagsBulkAssignPopoverState.js +3 -0
  101. package/dist/cjs/state/TagsBulkAssignPopoverState.js.map +1 -1
  102. package/dist/cjs/styles.global.css +1 -1
  103. package/dist/cjs/version.js +1 -1
  104. package/dist/cjs/version.js.map +1 -1
  105. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  106. package/dist/esm/components/Collapse/Collapse.st.css.js.map +1 -1
  107. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  108. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  109. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  110. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  111. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  112. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  113. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  114. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  115. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  116. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  117. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  118. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  119. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  120. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  121. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  122. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  123. package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
  124. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  125. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  126. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  127. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  128. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  129. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  130. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  131. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  132. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  133. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  134. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  135. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  136. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  137. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  138. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  139. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  140. package/dist/esm/components/Table/TableVirtualHeader.st.css.js +2 -2
  141. package/dist/esm/components/Table/useTableSyncProps.js +2 -0
  142. package/dist/esm/components/Table/useTableSyncProps.js.map +1 -1
  143. package/dist/esm/components/TableFolders/TableFoldersLayout.js +2 -2
  144. package/dist/esm/components/TableFolders/TableFoldersLayout.js.map +1 -1
  145. package/dist/esm/components/TableFolders/useTableFoldersSyncProps.js +4 -0
  146. package/dist/esm/components/TableFolders/useTableFoldersSyncProps.js.map +1 -1
  147. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  148. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  149. package/dist/esm/components/Tags/TagsFolders.js +6 -0
  150. package/dist/esm/components/Tags/TagsFolders.js.map +1 -0
  151. package/dist/esm/components/Tags/index.js +1 -0
  152. package/dist/esm/components/Tags/index.js.map +1 -1
  153. package/dist/esm/components/Tags/useTagsBulkAssignBaseUtils.js +16 -0
  154. package/dist/esm/components/Tags/useTagsBulkAssignBaseUtils.js.map +1 -0
  155. package/dist/esm/components/Tags/useTagsBulkAssignFoldersUtils.js +19 -0
  156. package/dist/esm/components/Tags/useTagsBulkAssignFoldersUtils.js.map +1 -0
  157. package/dist/esm/components/Tags/useTagsBulkAssignUtils.js +16 -0
  158. package/dist/esm/components/Tags/useTagsBulkAssignUtils.js.map +1 -0
  159. package/dist/esm/components/TagsAssignButton/TagsAssignButton.js +3 -2
  160. package/dist/esm/components/TagsAssignButton/TagsAssignButton.js.map +1 -1
  161. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  162. package/dist/esm/components/common.st.css.js +2 -2
  163. package/dist/esm/exports/testkit/unidriver.js +1 -0
  164. package/dist/esm/exports/testkit/unidriver.js.map +1 -1
  165. package/dist/esm/hooks/useCreateNestedOptimisticActions.js +4 -10
  166. package/dist/esm/hooks/useCreateNestedOptimisticActions.js.map +1 -1
  167. package/dist/esm/state/FoldersAndItemsCollectionsState.js +4 -0
  168. package/dist/esm/state/FoldersAndItemsCollectionsState.js.map +1 -1
  169. package/dist/esm/state/NestedTableState/NestedCollectionFetchAllCollectionState.js +5 -0
  170. package/dist/esm/state/NestedTableState/NestedCollectionFetchAllCollectionState.js.map +1 -1
  171. package/dist/esm/state/NestedTableState/NestedCollectionNodeState.js +12 -5
  172. package/dist/esm/state/NestedTableState/NestedCollectionNodeState.js.map +1 -1
  173. package/dist/esm/state/NestedTableState/NestedTableFlatModeSectionState.js +9 -1
  174. package/dist/esm/state/NestedTableState/NestedTableFlatModeSectionState.js.map +1 -1
  175. package/dist/esm/state/NestedTableState/NestedTableFlatModeState.js +1 -0
  176. package/dist/esm/state/NestedTableState/NestedTableFlatModeState.js.map +1 -1
  177. package/dist/esm/state/NestedTableState/NestedTableNestedModeState.js +8 -1
  178. package/dist/esm/state/NestedTableState/NestedTableNestedModeState.js.map +1 -1
  179. package/dist/esm/state/NestedTableState/NestedTableState.js +7 -3
  180. package/dist/esm/state/NestedTableState/NestedTableState.js.map +1 -1
  181. package/dist/esm/state/NestedTableState/createNestedOptimisticActions.js +25 -0
  182. package/dist/esm/state/NestedTableState/createNestedOptimisticActions.js.map +1 -0
  183. package/dist/esm/state/NestedTableState/createParentIdPredicate.js +18 -0
  184. package/dist/esm/state/NestedTableState/createParentIdPredicate.js.map +1 -0
  185. package/dist/esm/state/TagsBulkAssignButtonState.js +22 -0
  186. package/dist/esm/state/TagsBulkAssignButtonState.js.map +1 -0
  187. package/dist/esm/state/TagsBulkAssignPopoverState.js +2 -0
  188. package/dist/esm/state/TagsBulkAssignPopoverState.js.map +1 -1
  189. package/dist/esm/styles.global.css +1 -1
  190. package/dist/esm/version.js +1 -1
  191. package/dist/types/components/Collapse/Collapse.st.css.d.ts.map +1 -1
  192. package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
  193. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  194. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  195. package/dist/types/components/InputOverflow/InputOverflow.st.css.d.ts.map +1 -1
  196. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  197. package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
  198. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
  199. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  200. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  201. package/dist/types/components/SkeletonCard/SkeletonCard.st.css.d.ts.map +1 -1
  202. package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
  203. package/dist/types/components/Table/useTableSyncProps.d.ts.map +1 -1
  204. package/dist/types/components/TableFolders/TableFoldersLayout.d.ts +2 -0
  205. package/dist/types/components/TableFolders/TableFoldersLayout.d.ts.map +1 -1
  206. package/dist/types/components/TableFolders/useTableFoldersSyncProps.d.ts +3 -11
  207. package/dist/types/components/TableFolders/useTableFoldersSyncProps.d.ts.map +1 -1
  208. package/dist/types/components/Tags/TagsFolders.d.ts +7 -0
  209. package/dist/types/components/Tags/TagsFolders.d.ts.map +1 -0
  210. package/dist/types/components/Tags/index.d.ts +1 -0
  211. package/dist/types/components/Tags/index.d.ts.map +1 -1
  212. package/dist/types/components/Tags/useTagsBulkAssignBaseUtils.d.ts +15 -0
  213. package/dist/types/components/Tags/useTagsBulkAssignBaseUtils.d.ts.map +1 -0
  214. package/dist/types/components/Tags/useTagsBulkAssignFoldersUtils.d.ts +8 -0
  215. package/dist/types/components/Tags/useTagsBulkAssignFoldersUtils.d.ts.map +1 -0
  216. package/dist/types/components/Tags/useTagsBulkAssignUtils.d.ts +8 -0
  217. package/dist/types/components/Tags/useTagsBulkAssignUtils.d.ts.map +1 -0
  218. package/dist/types/components/TagsAssignButton/TagsAssignButton.d.ts.map +1 -1
  219. package/dist/types/exports/testkit/unidriver.d.ts +1 -0
  220. package/dist/types/exports/testkit/unidriver.d.ts.map +1 -1
  221. package/dist/types/hooks/useCreateNestedOptimisticActions.d.ts +3 -6
  222. package/dist/types/hooks/useCreateNestedOptimisticActions.d.ts.map +1 -1
  223. package/dist/types/state/FoldersAndItemsCollectionsState.d.ts +1 -0
  224. package/dist/types/state/FoldersAndItemsCollectionsState.d.ts.map +1 -1
  225. package/dist/types/state/NestedTableState/NestedCollectionFetchAllCollectionState.d.ts.map +1 -1
  226. package/dist/types/state/NestedTableState/NestedCollectionLevelDescriptor.d.ts +7 -6
  227. package/dist/types/state/NestedTableState/NestedCollectionLevelDescriptor.d.ts.map +1 -1
  228. package/dist/types/state/NestedTableState/NestedCollectionNodeState.d.ts.map +1 -1
  229. package/dist/types/state/NestedTableState/NestedTableFlatModeSectionState.d.ts +2 -0
  230. package/dist/types/state/NestedTableState/NestedTableFlatModeSectionState.d.ts.map +1 -1
  231. package/dist/types/state/NestedTableState/NestedTableFlatModeState.d.ts.map +1 -1
  232. package/dist/types/state/NestedTableState/NestedTableNestedModeState.d.ts.map +1 -1
  233. package/dist/types/state/NestedTableState/NestedTableState.d.ts +2 -2
  234. package/dist/types/state/NestedTableState/NestedTableState.d.ts.map +1 -1
  235. package/dist/types/state/NestedTableState/createNestedOptimisticActions.d.ts +11 -0
  236. package/dist/types/state/NestedTableState/createNestedOptimisticActions.d.ts.map +1 -0
  237. package/dist/types/state/NestedTableState/createParentIdPredicate.d.ts +4 -0
  238. package/dist/types/state/NestedTableState/createParentIdPredicate.d.ts.map +1 -0
  239. package/dist/types/state/TagsBulkAssignButtonState.d.ts +10 -0
  240. package/dist/types/state/TagsBulkAssignButtonState.d.ts.map +1 -0
  241. package/dist/types/state/TagsBulkAssignPopoverState.d.ts +2 -0
  242. package/dist/types/state/TagsBulkAssignPopoverState.d.ts.map +1 -1
  243. package/dist/types/version.d.ts +1 -1
  244. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_designSystem","_wixUiIconsCommon","_ToolbarCollectionContext","_","_BulkAssignTagsPopover","_DisabledTooltip","_mobxReactLite","_jsxFileName","_TagsAssignButton","toolbarCollectionState","useToolbarCollectionContext","translate","t","useWixPatternsContainer","tagsBulkAssignPopoverState","tagsCollectionState","default","createElement","BulkAssignTagsPopover","state","popoverElement","Box","__self","__source","fileName","lineNumber","columnNumber","DisabledTooltip","content","disabled","canUseBulkUpdate","dataHook","Button","skin","priority","size","ellipsis","prefixIcon","TagSmall","onClick","showPopover","TagsAssignButton","exports","observer"],"sources":["../../../../src/components/TagsAssignButton/TagsAssignButton.tsx"],"sourcesContent":["import React from 'react';\nimport { Box, Button } from '@wix/design-system';\nimport { TagSmall } from '@wix/wix-ui-icons-common';\nimport { useToolbarCollectionContext } from '../ToolbarCollectionContext';\nimport { useWixPatternsContainer } from '../..';\nimport { BulkAssignTagsPopover } from '../Tags/BulkAssignTagsPopover';\nimport { DisabledTooltip } from '../DisabledTooltip';\nimport { observer } from 'mobx-react-lite';\n\nconst _TagsAssignButton = () => {\n const toolbarCollectionState = useToolbarCollectionContext();\n const { translate: t } = useWixPatternsContainer();\n\n const { tagsBulkAssignPopoverState } =\n toolbarCollectionState.tagsCollectionState ?? {};\n\n if (!tagsBulkAssignPopoverState) {\n return null;\n }\n\n return (\n <BulkAssignTagsPopover\n state={tagsBulkAssignPopoverState}\n popoverElement={\n <Box>\n <DisabledTooltip\n content={t('cairo.tags.popover.bulkItemLimit.tooltip')}\n disabled={tagsBulkAssignPopoverState.canUseBulkUpdate}\n dataHook=\"tags-assign-button-disabled-tooltip\"\n >\n <Button\n skin=\"standard\"\n priority=\"secondary\"\n size=\"small\"\n ellipsis\n prefixIcon={<TagSmall />}\n dataHook=\"tags-assign-button\"\n onClick={() => {\n tagsBulkAssignPopoverState.showPopover();\n }}\n disabled={!tagsBulkAssignPopoverState.canUseBulkUpdate}\n >\n {t('cairo.tags.collectionPage.add.CTA')}\n </Button>\n </DisabledTooltip>\n </Box>\n }\n />\n );\n};\n\nexport const TagsAssignButton = observer(_TagsAssignButton);\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,yBAAA,GAAAH,OAAA;AACA,IAAAI,CAAA,GAAAJ,OAAA;AACA,IAAAK,sBAAA,GAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AAA2C,IAAAQ,YAAA;AAE3C,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EAC9B,MAAMC,sBAAsB,GAAG,IAAAC,qDAA2B,EAAC,CAAC;EAC5D,MAAM;IAAEC,SAAS,EAAEC;EAAE,CAAC,GAAG,IAAAC,yBAAuB,EAAC,CAAC;EAElD,MAAM;IAAEC;EAA2B,CAAC,GAClCL,sBAAsB,CAACM,mBAAmB,IAAI,CAAC,CAAC;EAElD,IAAI,CAACD,0BAA0B,EAAE;IAC/B,OAAO,IAAI;EACb;EAEA,oBACEjB,MAAA,CAAAmB,OAAA,CAAAC,aAAA,CAACb,sBAAA,CAAAc,qBAAqB;IACpBC,KAAK,EAAEL,0BAA2B;IAClCM,cAAc,eACZvB,MAAA,CAAAmB,OAAA,CAAAC,aAAA,CAACjB,aAAA,CAAAqB,GAAG;MAAAC,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAjB,YAAA;QAAAkB,UAAA;QAAAC,YAAA;MAAA;IAAA,gBACF7B,MAAA,CAAAmB,OAAA,CAAAC,aAAA,CAACZ,gBAAA,CAAAsB,eAAe;MACdC,OAAO,EAAEhB,CAAC,CAAC,0CAA0C,CAAE;MACvDiB,QAAQ,EAAEf,0BAA0B,CAACgB,gBAAiB;MACtDC,QAAQ,EAAC,qCAAqC;MAAAT,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAjB,YAAA;QAAAkB,UAAA;QAAAC,YAAA;MAAA;IAAA,gBAE9C7B,MAAA,CAAAmB,OAAA,CAAAC,aAAA,CAACjB,aAAA,CAAAgC,MAAM;MACLC,IAAI,EAAC,UAAU;MACfC,QAAQ,EAAC,WAAW;MACpBC,IAAI,EAAC,OAAO;MACZC,QAAQ;MACRC,UAAU,eAAExC,MAAA,CAAAmB,OAAA,CAAAC,aAAA,CAAChB,iBAAA,CAAAqC,QAAQ;QAAAhB,MAAA;QAAAC,QAAA;UAAAC,QAAA,EAAAjB,YAAA;UAAAkB,UAAA;UAAAC,YAAA;QAAA;MAAA,CAAE,CAAE;MACzBK,QAAQ,EAAC,oBAAoB;MAC7BQ,OAAO,EAAEA,CAAA,KAAM;QACbzB,0BAA0B,CAAC0B,WAAW,CAAC,CAAC;MAC1C,CAAE;MACFX,QAAQ,EAAE,CAACf,0BAA0B,CAACgB,gBAAiB;MAAAR,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAjB,YAAA;QAAAkB,UAAA;QAAAC,YAAA;MAAA;IAAA,GAEtDd,CAAC,CAAC,mCAAmC,CAChC,CACO,CACd,CACN;IAAAU,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAjB,YAAA;MAAAkB,UAAA;MAAAC,YAAA;IAAA;EAAA,CACF,CAAC;AAEN,CAAC;AAEM,MAAMe,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,IAAAE,uBAAQ,EAACnC,iBAAiB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_designSystem","_wixUiIconsCommon","_ToolbarCollectionContext","_","_BulkAssignTagsPopover","_DisabledTooltip","_mobxReactLite","_jsxFileName","_TagsAssignButton","toolbarCollectionState","useToolbarCollectionContext","translate","t","useWixPatternsContainer","tagsBulkAssignPopoverState","tagsCollectionState","tagsBulkAssignButtonState","default","createElement","BulkAssignTagsPopover","state","popoverElement","Box","__self","__source","fileName","lineNumber","columnNumber","DisabledTooltip","content","tooltipContent","disabled","isDisabled","dataHook","Button","skin","priority","size","ellipsis","prefixIcon","TagSmall","onClick","showPopover","TagsAssignButton","exports","observer"],"sources":["../../../../src/components/TagsAssignButton/TagsAssignButton.tsx"],"sourcesContent":["import React from 'react';\nimport { Box, Button } from '@wix/design-system';\nimport { TagSmall } from '@wix/wix-ui-icons-common';\nimport { useToolbarCollectionContext } from '../ToolbarCollectionContext';\nimport { useWixPatternsContainer } from '../..';\nimport { BulkAssignTagsPopover } from '../Tags/BulkAssignTagsPopover';\nimport { DisabledTooltip } from '../DisabledTooltip';\nimport { observer } from 'mobx-react-lite';\n\nconst _TagsAssignButton = () => {\n const toolbarCollectionState = useToolbarCollectionContext();\n const { translate: t } = useWixPatternsContainer();\n\n const { tagsBulkAssignPopoverState } =\n toolbarCollectionState.tagsCollectionState ?? {};\n\n if (!tagsBulkAssignPopoverState) {\n return null;\n }\n\n const { tagsBulkAssignButtonState } = tagsBulkAssignPopoverState;\n\n return (\n <BulkAssignTagsPopover\n state={tagsBulkAssignPopoverState}\n popoverElement={\n <Box>\n <DisabledTooltip\n content={tagsBulkAssignButtonState.tooltipContent}\n disabled={!tagsBulkAssignButtonState.isDisabled}\n dataHook=\"tags-assign-button-disabled-tooltip\"\n >\n <Button\n skin=\"standard\"\n priority=\"secondary\"\n size=\"small\"\n ellipsis\n prefixIcon={<TagSmall />}\n dataHook=\"tags-assign-button\"\n onClick={() => {\n tagsBulkAssignPopoverState.showPopover();\n }}\n disabled={tagsBulkAssignButtonState.isDisabled}\n >\n {t('cairo.tags.collectionPage.add.CTA')}\n </Button>\n </DisabledTooltip>\n </Box>\n }\n />\n );\n};\n\nexport const TagsAssignButton = observer(_TagsAssignButton);\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,yBAAA,GAAAH,OAAA;AACA,IAAAI,CAAA,GAAAJ,OAAA;AACA,IAAAK,sBAAA,GAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AAA2C,IAAAQ,YAAA;AAE3C,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EAC9B,MAAMC,sBAAsB,GAAG,IAAAC,qDAA2B,EAAC,CAAC;EAC5D,MAAM;IAAEC,SAAS,EAAEC;EAAE,CAAC,GAAG,IAAAC,yBAAuB,EAAC,CAAC;EAElD,MAAM;IAAEC;EAA2B,CAAC,GAClCL,sBAAsB,CAACM,mBAAmB,IAAI,CAAC,CAAC;EAElD,IAAI,CAACD,0BAA0B,EAAE;IAC/B,OAAO,IAAI;EACb;EAEA,MAAM;IAAEE;EAA0B,CAAC,GAAGF,0BAA0B;EAEhE,oBACEjB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACd,sBAAA,CAAAe,qBAAqB;IACpBC,KAAK,EAAEN,0BAA2B;IAClCO,cAAc,eACZxB,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAClB,aAAA,CAAAsB,GAAG;MAAAC,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAlB,YAAA;QAAAmB,UAAA;QAAAC,YAAA;MAAA;IAAA,gBACF9B,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACb,gBAAA,CAAAuB,eAAe;MACdC,OAAO,EAAEb,yBAAyB,CAACc,cAAe;MAClDC,QAAQ,EAAE,CAACf,yBAAyB,CAACgB,UAAW;MAChDC,QAAQ,EAAC,qCAAqC;MAAAV,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAlB,YAAA;QAAAmB,UAAA;QAAAC,YAAA;MAAA;IAAA,gBAE9C9B,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAAClB,aAAA,CAAAkC,MAAM;MACLC,IAAI,EAAC,UAAU;MACfC,QAAQ,EAAC,WAAW;MACpBC,IAAI,EAAC,OAAO;MACZC,QAAQ;MACRC,UAAU,eAAE1C,MAAA,CAAAoB,OAAA,CAAAC,aAAA,CAACjB,iBAAA,CAAAuC,QAAQ;QAAAjB,MAAA;QAAAC,QAAA;UAAAC,QAAA,EAAAlB,YAAA;UAAAmB,UAAA;UAAAC,YAAA;QAAA;MAAA,CAAE,CAAE;MACzBM,QAAQ,EAAC,oBAAoB;MAC7BQ,OAAO,EAAEA,CAAA,KAAM;QACb3B,0BAA0B,CAAC4B,WAAW,CAAC,CAAC;MAC1C,CAAE;MACFX,QAAQ,EAAEf,yBAAyB,CAACgB,UAAW;MAAAT,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAAlB,YAAA;QAAAmB,UAAA;QAAAC,YAAA;MAAA;IAAA,GAE9Cf,CAAC,CAAC,mCAAmC,CAChC,CACO,CACd,CACN;IAAAW,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAlB,YAAA;MAAAmB,UAAA;MAAAC,YAAA;IAAA;EAAA,CACF,CAAC;AAEN,CAAC;AAEM,MAAMgB,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,IAAAE,uBAAQ,EAACrC,iBAAiB,CAAC","ignoreList":[]}
@@ -5,14 +5,14 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
5
5
  var _stylableEsmRuntime = require("../../stylable-esm-runtime.js");
6
6
  // @ts-nocheck
7
7
 
8
- var _namespace_ = "ToolbarItemBox2807617035";
8
+ var _namespace_ = "ToolbarItemBox4196081527";
9
9
  var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
10
10
  var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
11
11
  var style = exports.style = _style_;
12
12
  var st = exports.st = _style_;
13
13
  var namespace = exports.namespace = _namespace_;
14
14
  var classes = exports.classes = {
15
- "root": "ToolbarItemBox2807617035__root"
15
+ "root": "ToolbarItemBox4196081527__root"
16
16
  };
17
17
  var keyframes = exports.keyframes = {};
18
18
  var layers = exports.layers = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"ToolbarItemBox2807617035\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"ToolbarItemBox2807617035__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,0BAA0B;AAC5C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAgC,CAAC;AACvD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"ToolbarItemBox4196081527\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"ToolbarItemBox4196081527__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,0BAA0B;AAC5C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAgC,CAAC;AACvD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
@@ -5,16 +5,16 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
5
5
  var _stylableEsmRuntime = require("../stylable-esm-runtime.js");
6
6
  // @ts-nocheck
7
7
 
8
- var _namespace_ = "common4027982878";
8
+ var _namespace_ = "common3891434864";
9
9
  var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
10
10
  var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
11
11
  var style = exports.style = _style_;
12
12
  var st = exports.st = _style_;
13
13
  var namespace = exports.namespace = _namespace_;
14
14
  var classes = exports.classes = {
15
- "root": "common4027982878__root",
16
- "column": "common4027982878__column",
17
- "fullHeight": "common4027982878__fullHeight"
15
+ "root": "common3891434864__root",
16
+ "column": "common3891434864__column",
17
+ "fullHeight": "common3891434864__fullHeight"
18
18
  };
19
19
  var keyframes = exports.keyframes = {};
20
20
  var layers = exports.layers = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../src/components/common.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"common4027982878\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"common4027982878__root\",\"column\":\"common4027982878__column\",\"fullHeight\":\"common4027982878__fullHeight\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,kBAAkB;AACpC,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC,wBAAwB;EAAC,QAAQ,EAAC,0BAA0B;EAAC,YAAY,EAAC;AAA8B,CAAC;AAC/H,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../src/components/common.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"common3891434864\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"common3891434864__root\",\"column\":\"common3891434864__column\",\"fullHeight\":\"common3891434864__fullHeight\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,kBAAkB;AACpC,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC,wBAAwB;EAAC,QAAQ,EAAC,0BAA0B;EAAC,YAAY,EAAC;AAA8B,CAAC;AAC/H,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.TableUniDriver = exports.PickerUniDriver = exports.PickerStandaloneUniDriver = exports.PickerModalUniDriver = void 0;
4
+ exports.TableUniDriver = exports.PickerUniDriver = exports.PickerStandaloneUniDriver = exports.PickerModalUniDriver = exports.GridUniDriver = void 0;
5
5
  var _PickerUni = require("../../components/Picker/Picker.uni.driver");
6
6
  exports.PickerUniDriver = _PickerUni.PickerUniDriver;
7
7
  var _PickerModalUni = require("../../components/PickerModal/PickerModal.uni.driver");
@@ -10,4 +10,6 @@ var _PickerStandaloneUni = require("../../components/PickerStandalone/PickerStan
10
10
  exports.PickerStandaloneUniDriver = _PickerStandaloneUni.PickerStandaloneUniDriver;
11
11
  var _TableUni = require("../../components/Table/Table.uni.driver");
12
12
  exports.TableUniDriver = _TableUni.TableUniDriver;
13
+ var _GridUni = require("../../components/Grid/Grid.uni.driver");
14
+ exports.GridUniDriver = _GridUni.GridUniDriver;
13
15
  //# sourceMappingURL=unidriver.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_PickerUni","require","exports","PickerUniDriver","_PickerModalUni","PickerModalUniDriver","_PickerStandaloneUni","PickerStandaloneUniDriver","_TableUni","TableUniDriver"],"sources":["../../../../src/exports/testkit/unidriver.ts"],"sourcesContent":["export { PickerUniDriver } from '../../components/Picker/Picker.uni.driver';\nexport { PickerModalUniDriver } from '../../components/PickerModal/PickerModal.uni.driver';\nexport { PickerStandaloneUniDriver } from '../../components/PickerStandalone/PickerStandalone.uni.driver';\nexport { TableUniDriver } from '../../components/Table/Table.uni.driver';\n"],"mappings":";;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAA4EC,OAAA,CAAAC,eAAA,GAAAH,UAAA,CAAAG,eAAA;AAC5E,IAAAC,eAAA,GAAAH,OAAA;AAA2FC,OAAA,CAAAG,oBAAA,GAAAD,eAAA,CAAAC,oBAAA;AAC3F,IAAAC,oBAAA,GAAAL,OAAA;AAA0GC,OAAA,CAAAK,yBAAA,GAAAD,oBAAA,CAAAC,yBAAA;AAC1G,IAAAC,SAAA,GAAAP,OAAA;AAAyEC,OAAA,CAAAO,cAAA,GAAAD,SAAA,CAAAC,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_PickerUni","require","exports","PickerUniDriver","_PickerModalUni","PickerModalUniDriver","_PickerStandaloneUni","PickerStandaloneUniDriver","_TableUni","TableUniDriver","_GridUni","GridUniDriver"],"sources":["../../../../src/exports/testkit/unidriver.ts"],"sourcesContent":["export { PickerUniDriver } from '../../components/Picker/Picker.uni.driver';\nexport { PickerModalUniDriver } from '../../components/PickerModal/PickerModal.uni.driver';\nexport { PickerStandaloneUniDriver } from '../../components/PickerStandalone/PickerStandalone.uni.driver';\nexport { TableUniDriver } from '../../components/Table/Table.uni.driver';\nexport { GridUniDriver } from '../../components/Grid/Grid.uni.driver';\n"],"mappings":";;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAA4EC,OAAA,CAAAC,eAAA,GAAAH,UAAA,CAAAG,eAAA;AAC5E,IAAAC,eAAA,GAAAH,OAAA;AAA2FC,OAAA,CAAAG,oBAAA,GAAAD,eAAA,CAAAC,oBAAA;AAC3F,IAAAC,oBAAA,GAAAL,OAAA;AAA0GC,OAAA,CAAAK,yBAAA,GAAAD,oBAAA,CAAAC,yBAAA;AAC1G,IAAAC,SAAA,GAAAP,OAAA;AAAyEC,OAAA,CAAAO,cAAA,GAAAD,SAAA,CAAAC,cAAA;AACzE,IAAAC,QAAA,GAAAT,OAAA;AAAsEC,OAAA,CAAAS,aAAA,GAAAD,QAAA,CAAAC,aAAA","ignoreList":[]}
@@ -4,17 +4,11 @@ exports.__esModule = true;
4
4
  exports.useCreateNestedOptimisticActions = useCreateNestedOptimisticActions;
5
5
  var _react = require("react");
6
6
  var _react2 = require("@wix/bex-core/react");
7
+ var _createNestedOptimisticActions = require("../state/NestedTableState/createNestedOptimisticActions");
7
8
  function useCreateNestedOptimisticActions() {
8
- const createOptimisticActions = (0, _react2.useCreateOptimisticActions)();
9
+ const container = (0, _react2.useWixPatternsContainer)();
9
10
  return (0, _react.useCallback)((collection, state, params) => {
10
- const optimisticActions = createOptimisticActions(collection, {
11
- ...params,
12
- cacheNamespace: state == null ? void 0 : state.parentId,
13
- sequences: state == null ? void 0 : state.sequences,
14
- query: state == null ? void 0 : state.query
15
- });
16
- optimisticActions._commitMode = false;
17
- return optimisticActions;
11
+ return (0, _createNestedOptimisticActions.createNestedOptimisticActions)(container, collection, state, params);
18
12
  }, []);
19
13
  }
20
14
  //# sourceMappingURL=useCreateNestedOptimisticActions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_react2","useCreateNestedOptimisticActions","createOptimisticActions","useCreateOptimisticActions","useCallback","collection","state","params","optimisticActions","cacheNamespace","parentId","sequences","query","_commitMode"],"sources":["../../../src/hooks/useCreateNestedOptimisticActions.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport {\n CollectionOptimisticActionsBaseParams,\n CollectionOptimisticSequenceExecutor,\n CollectionState,\n FiltersMap,\n QueryState,\n} from '@wix/bex-core';\nimport { useCreateOptimisticActions } from '@wix/bex-core/react';\n\nexport function useCreateNestedOptimisticActions() {\n const createOptimisticActions = useCreateOptimisticActions();\n\n return useCallback(\n <T, F extends FiltersMap>(\n collection: CollectionState<T, F>,\n state?: {\n readonly parentId?: string;\n readonly sequences: Map<string, CollectionOptimisticSequenceExecutor>;\n readonly query: QueryState<F>;\n },\n params?: Partial<CollectionOptimisticActionsBaseParams<T, F>>,\n ) => {\n const optimisticActions = createOptimisticActions(collection, {\n ...params,\n cacheNamespace: state?.parentId,\n sequences: state?.sequences,\n query: state?.query,\n });\n\n optimisticActions._commitMode = false;\n\n return optimisticActions;\n },\n [],\n );\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAQA,IAAAC,OAAA,GAAAD,OAAA;AAEO,SAASE,gCAAgCA,CAAA,EAAG;EACjD,MAAMC,uBAAuB,GAAG,IAAAC,kCAA0B,EAAC,CAAC;EAE5D,OAAO,IAAAC,kBAAW,EAChB,CACEC,UAAiC,EACjCC,KAIC,EACDC,MAA6D,KAC1D;IACH,MAAMC,iBAAiB,GAAGN,uBAAuB,CAACG,UAAU,EAAE;MAC5D,GAAGE,MAAM;MACTE,cAAc,EAAEH,KAAK,oBAALA,KAAK,CAAEI,QAAQ;MAC/BC,SAAS,EAAEL,KAAK,oBAALA,KAAK,CAAEK,SAAS;MAC3BC,KAAK,EAAEN,KAAK,oBAALA,KAAK,CAAEM;IAChB,CAAC,CAAC;IAEFJ,iBAAiB,CAACK,WAAW,GAAG,KAAK;IAErC,OAAOL,iBAAiB;EAC1B,CAAC,EACD,EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_react2","_createNestedOptimisticActions","useCreateNestedOptimisticActions","container","useWixPatternsContainer","useCallback","collection","state","params","createNestedOptimisticActions"],"sources":["../../../src/hooks/useCreateNestedOptimisticActions.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport {\n CollectionOptimisticActionsBaseParams,\n CollectionState,\n FiltersMap,\n} from '@wix/bex-core';\nimport { useWixPatternsContainer } from '@wix/bex-core/react';\nimport {\n createNestedOptimisticActions,\n NestedOptimisticActionsState,\n} from '../state/NestedTableState/createNestedOptimisticActions';\n\nexport function useCreateNestedOptimisticActions() {\n const container = useWixPatternsContainer();\n\n return useCallback(\n <T, F extends FiltersMap>(\n collection: CollectionState<T, F>,\n state?: NestedOptimisticActionsState<T, F>,\n params?: Partial<CollectionOptimisticActionsBaseParams<T, F>>,\n ) => {\n return createNestedOptimisticActions(\n container,\n collection,\n state,\n params,\n );\n },\n [],\n );\n}\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAMA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,8BAAA,GAAAF,OAAA;AAKO,SAASG,gCAAgCA,CAAA,EAAG;EACjD,MAAMC,SAAS,GAAG,IAAAC,+BAAuB,EAAC,CAAC;EAE3C,OAAO,IAAAC,kBAAW,EAChB,CACEC,UAAiC,EACjCC,KAA0C,EAC1CC,MAA6D,KAC1D;IACH,OAAO,IAAAC,4DAA6B,EAClCN,SAAS,EACTG,UAAU,EACVC,KAAK,EACLC,MACF,CAAC;EACH,CAAC,EACD,EACF,CAAC;AACH","ignoreList":[]}
@@ -27,7 +27,8 @@ class FoldersAndItemsCollectionsState {
27
27
  (0, _mobx.makeObservable)(this, {
28
28
  hasItemsOnlyActiveFilters: _mobx.computed,
29
29
  hasFoldersOnlyActiveFilters: _mobx.computed,
30
- showEmptyState: _mobx.computed
30
+ showEmptyState: _mobx.computed,
31
+ hasBulkSelectFolders: _mobx.computed
31
32
  });
32
33
  }
33
34
  get hasFoldersOnlyActiveFilters() {
@@ -93,6 +94,9 @@ class FoldersAndItemsCollectionsState {
93
94
  get query() {
94
95
  return this.items.query;
95
96
  }
97
+ get hasBulkSelectFolders() {
98
+ return !!this.folders.bulkSelect.selectedIds.length;
99
+ }
96
100
  init(initParams) {
97
101
  const {
98
102
  items,
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_util","_mobx","isActiveFilterAndNotInCollection","query","filtersArray","f1","isEmpty","some","f2","FoldersAndItemsCollectionsState","constructor","params","_defineProperty2","default","toolbar","items","folders","multi","collections","push","syncWithSharedQuery","bulkSelect","useNewSelectAllLogic","makeObservable","hasItemsOnlyActiveFilters","computed","hasFoldersOnlyActiveFilters","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","init","initParams","disposers","addEventListener","emitter","clearResult","_runSearch","clearResultAndMoveToStart","_runSort","emit","forEach","d","exports"],"sources":["../../../src/state/FoldersAndItemsCollectionsState.ts"],"sourcesContent":["import {\n CollectionState,\n Filter,\n FiltersMap,\n syncWithSharedQuery,\n} from '@wix/bex-core';\nimport {\n ToolbarCollectionState,\n ToolbarCollectionStateParamsInitParams,\n} from './ToolbarCollectionState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { computed, makeObservable } from 'mobx';\n\nexport type PartialAllFilters<\n F1 extends FiltersMap,\n F2 extends FiltersMap,\n> = Partial<F1 & F2>;\n\nconst isActiveFilterAndNotInCollection =\n <T>({ query: { filtersArray } }: CollectionState<T, {}>) =>\n (f1: Filter<unknown>) =>\n !f1.isEmpty && !filtersArray.some((f2) => f2 === f1);\n\nexport interface FoldersAndItemsCollectionsStateInitParams\n extends ToolbarCollectionStateParamsInitParams {}\n\nexport interface FoldersAndItemsCollectionsStateParams<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> {\n readonly items: CollectionState<T1, F1>;\n readonly folders: CollectionState<T2, F2>;\n readonly toolbar: ToolbarCollectionState<T1, PartialAllFilters<F1, F2>>;\n}\n\nexport class FoldersAndItemsCollectionsState<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> {\n readonly toolbar;\n readonly items;\n readonly folders;\n\n constructor(params: FoldersAndItemsCollectionsStateParams<T1, F1, T2, F2>) {\n this.toolbar = params.toolbar;\n this.items = params.items;\n this.folders = params.folders;\n\n this.toolbar.multi.collections.push(\n this.folders as CollectionState<unknown, {}>,\n );\n\n syncWithSharedQuery(this.folders.query, this.items.query);\n this.items.bulkSelect.useNewSelectAllLogic = true;\n this.folders.bulkSelect.useNewSelectAllLogic = true;\n\n makeObservable(this, {\n hasItemsOnlyActiveFilters: computed,\n hasFoldersOnlyActiveFilters: computed,\n showEmptyState: computed,\n });\n }\n\n get hasFoldersOnlyActiveFilters() {\n const { folders, items } = this;\n return folders.query.filtersArray.some(\n isActiveFilterAndNotInCollection(items),\n );\n }\n\n get hasItemsOnlyActiveFilters() {\n const { folders, items } = this;\n return items.query.filtersArray.some(\n isActiveFilterAndNotInCollection(folders),\n );\n }\n\n get showEmptyState() {\n const {\n toolbar: {\n multi: { showEmptyState },\n },\n items,\n folders,\n hasFoldersOnlyActiveFilters,\n hasItemsOnlyActiveFilters,\n } = this;\n return (\n showEmptyState ||\n (folders.showEmptyState && hasFoldersOnlyActiveFilters) ||\n (items.showEmptyState && hasItemsOnlyActiveFilters)\n );\n }\n\n get hasAvailableItems() {\n const {\n toolbar: {\n multi: { hasAvailableItems },\n },\n items,\n folders,\n } = this;\n return (\n hasAvailableItems || folders.hasAvailableItems || items.hasAvailableItems\n );\n }\n\n get resultOriginQuerySearch() {\n const {\n toolbar: {\n multi: { resultOriginQuerySearch },\n },\n } = this;\n return resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n const {\n toolbar: {\n multi: { hasNonPersistentActiveFilters },\n },\n } = this;\n return hasNonPersistentActiveFilters;\n }\n\n get query() {\n return this.items.query;\n }\n\n init(initParams: FoldersAndItemsCollectionsStateInitParams) {\n const { items, folders, toolbar } = this;\n const disposers = [\n toolbar.init(initParams),\n addEventListener(items.emitter, 'search', ({ clearResult }) => {\n folders._runSearch(clearResult);\n }),\n addEventListener(items.emitter, 'clearSearch', () => {\n folders.clearResultAndMoveToStart();\n }),\n addEventListener(items.emitter, 'sort', (params) => {\n folders._runSort(params);\n }),\n addEventListener(items.emitter, 'beforeSortStart', (params) => {\n folders.emitter.emit('beforeSortStart', params);\n }),\n addEventListener(items.emitter, 'sortStart', (params) => {\n folders.emitter.emit('sortStart', params);\n }),\n ];\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAUA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAOA,MAAMG,gCAAgC,GACpCA,CAAI;EAAEC,KAAK,EAAE;IAAEC;EAAa;AAA0B,CAAC,KACtDC,EAAmB,IAClB,CAACA,EAAE,CAACC,OAAO,IAAI,CAACF,YAAY,CAACG,IAAI,CAAEC,EAAE,IAAKA,EAAE,KAAKH,EAAE,CAAC;AAgBjD,MAAMI,+BAA+B,CAK1C;EAKAC,WAAWA,CAACC,MAA6D,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IACzE,IAAI,CAACC,OAAO,GAAGH,MAAM,CAACG,OAAO;IAC7B,IAAI,CAACC,KAAK,GAAGJ,MAAM,CAACI,KAAK;IACzB,IAAI,CAACC,OAAO,GAAGL,MAAM,CAACK,OAAO;IAE7B,IAAI,CAACF,OAAO,CAACG,KAAK,CAACC,WAAW,CAACC,IAAI,CACjC,IAAI,CAACH,OACP,CAAC;IAED,IAAAI,4BAAmB,EAAC,IAAI,CAACJ,OAAO,CAACb,KAAK,EAAE,IAAI,CAACY,KAAK,CAACZ,KAAK,CAAC;IACzD,IAAI,CAACY,KAAK,CAACM,UAAU,CAACC,oBAAoB,GAAG,IAAI;IACjD,IAAI,CAACN,OAAO,CAACK,UAAU,CAACC,oBAAoB,GAAG,IAAI;IAEnD,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,yBAAyB,EAAEC,cAAQ;MACnCC,2BAA2B,EAAED,cAAQ;MACrCE,cAAc,EAAEF;IAClB,CAAC,CAAC;EACJ;EAEA,IAAIC,2BAA2BA,CAAA,EAAG;IAChC,MAAM;MAAEV,OAAO;MAAED;IAAM,CAAC,GAAG,IAAI;IAC/B,OAAOC,OAAO,CAACb,KAAK,CAACC,YAAY,CAACG,IAAI,CACpCL,gCAAgC,CAACa,KAAK,CACxC,CAAC;EACH;EAEA,IAAIS,yBAAyBA,CAAA,EAAG;IAC9B,MAAM;MAAER,OAAO;MAAED;IAAM,CAAC,GAAG,IAAI;IAC/B,OAAOA,KAAK,CAACZ,KAAK,CAACC,YAAY,CAACG,IAAI,CAClCL,gCAAgC,CAACc,OAAO,CAC1C,CAAC;EACH;EAEA,IAAIW,cAAcA,CAAA,EAAG;IACnB,MAAM;MACJb,OAAO,EAAE;QACPG,KAAK,EAAE;UAAEU;QAAe;MAC1B,CAAC;MACDZ,KAAK;MACLC,OAAO;MACPU,2BAA2B;MAC3BF;IACF,CAAC,GAAG,IAAI;IACR,OACEG,cAAc,IACbX,OAAO,CAACW,cAAc,IAAID,2BAA4B,IACtDX,KAAK,CAACY,cAAc,IAAIH,yBAA0B;EAEvD;EAEA,IAAII,iBAAiBA,CAAA,EAAG;IACtB,MAAM;MACJd,OAAO,EAAE;QACPG,KAAK,EAAE;UAAEW;QAAkB;MAC7B,CAAC;MACDb,KAAK;MACLC;IACF,CAAC,GAAG,IAAI;IACR,OACEY,iBAAiB,IAAIZ,OAAO,CAACY,iBAAiB,IAAIb,KAAK,CAACa,iBAAiB;EAE7E;EAEA,IAAIC,uBAAuBA,CAAA,EAAG;IAC5B,MAAM;MACJf,OAAO,EAAE;QACPG,KAAK,EAAE;UAAEY;QAAwB;MACnC;IACF,CAAC,GAAG,IAAI;IACR,OAAOA,uBAAuB;EAChC;EAEA,IAAIC,6BAA6BA,CAAA,EAAG;IAClC,MAAM;MACJhB,OAAO,EAAE;QACPG,KAAK,EAAE;UAAEa;QAA8B;MACzC;IACF,CAAC,GAAG,IAAI;IACR,OAAOA,6BAA6B;EACtC;EAEA,IAAI3B,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACY,KAAK,CAACZ,KAAK;EACzB;EAEA4B,IAAIA,CAACC,UAAqD,EAAE;IAC1D,MAAM;MAAEjB,KAAK;MAAEC,OAAO;MAAEF;IAAQ,CAAC,GAAG,IAAI;IACxC,MAAMmB,SAAS,GAAG,CAChBnB,OAAO,CAACiB,IAAI,CAACC,UAAU,CAAC,EACxB,IAAAE,sBAAgB,EAACnB,KAAK,CAACoB,OAAO,EAAE,QAAQ,EAAE,CAAC;MAAEC;IAAY,CAAC,KAAK;MAC7DpB,OAAO,CAACqB,UAAU,CAACD,WAAW,CAAC;IACjC,CAAC,CAAC,EACF,IAAAF,sBAAgB,EAACnB,KAAK,CAACoB,OAAO,EAAE,aAAa,EAAE,MAAM;MACnDnB,OAAO,CAACsB,yBAAyB,CAAC,CAAC;IACrC,CAAC,CAAC,EACF,IAAAJ,sBAAgB,EAACnB,KAAK,CAACoB,OAAO,EAAE,MAAM,EAAGxB,MAAM,IAAK;MAClDK,OAAO,CAACuB,QAAQ,CAAC5B,MAAM,CAAC;IAC1B,CAAC,CAAC,EACF,IAAAuB,sBAAgB,EAACnB,KAAK,CAACoB,OAAO,EAAE,iBAAiB,EAAGxB,MAAM,IAAK;MAC7DK,OAAO,CAACmB,OAAO,CAACK,IAAI,CAAC,iBAAiB,EAAE7B,MAAM,CAAC;IACjD,CAAC,CAAC,EACF,IAAAuB,sBAAgB,EAACnB,KAAK,CAACoB,OAAO,EAAE,WAAW,EAAGxB,MAAM,IAAK;MACvDK,OAAO,CAACmB,OAAO,CAACK,IAAI,CAAC,WAAW,EAAE7B,MAAM,CAAC;IAC3C,CAAC,CAAC,CACH;IAED,OAAO,MAAM;MACXsB,SAAS,CAACQ,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;EACH;AACF;AAACC,OAAA,CAAAlC,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_util","_mobx","isActiveFilterAndNotInCollection","query","filtersArray","f1","isEmpty","some","f2","FoldersAndItemsCollectionsState","constructor","params","_defineProperty2","default","toolbar","items","folders","multi","collections","push","syncWithSharedQuery","bulkSelect","useNewSelectAllLogic","makeObservable","hasItemsOnlyActiveFilters","computed","hasFoldersOnlyActiveFilters","showEmptyState","hasBulkSelectFolders","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","selectedIds","length","init","initParams","disposers","addEventListener","emitter","clearResult","_runSearch","clearResultAndMoveToStart","_runSort","emit","forEach","d","exports"],"sources":["../../../src/state/FoldersAndItemsCollectionsState.ts"],"sourcesContent":["import {\n CollectionState,\n Filter,\n FiltersMap,\n syncWithSharedQuery,\n} from '@wix/bex-core';\nimport {\n ToolbarCollectionState,\n ToolbarCollectionStateParamsInitParams,\n} from './ToolbarCollectionState';\nimport { addEventListener } from '@wix/bex-core/util';\nimport { computed, makeObservable } from 'mobx';\n\nexport type PartialAllFilters<\n F1 extends FiltersMap,\n F2 extends FiltersMap,\n> = Partial<F1 & F2>;\n\nconst isActiveFilterAndNotInCollection =\n <T>({ query: { filtersArray } }: CollectionState<T, {}>) =>\n (f1: Filter<unknown>) =>\n !f1.isEmpty && !filtersArray.some((f2) => f2 === f1);\n\nexport interface FoldersAndItemsCollectionsStateInitParams\n extends ToolbarCollectionStateParamsInitParams {}\n\nexport interface FoldersAndItemsCollectionsStateParams<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> {\n readonly items: CollectionState<T1, F1>;\n readonly folders: CollectionState<T2, F2>;\n readonly toolbar: ToolbarCollectionState<T1, PartialAllFilters<F1, F2>>;\n}\n\nexport class FoldersAndItemsCollectionsState<\n T1,\n F1 extends FiltersMap,\n T2,\n F2 extends FiltersMap,\n> {\n readonly toolbar;\n readonly items;\n readonly folders;\n\n constructor(params: FoldersAndItemsCollectionsStateParams<T1, F1, T2, F2>) {\n this.toolbar = params.toolbar;\n this.items = params.items;\n this.folders = params.folders;\n\n this.toolbar.multi.collections.push(\n this.folders as CollectionState<unknown, {}>,\n );\n\n syncWithSharedQuery(this.folders.query, this.items.query);\n this.items.bulkSelect.useNewSelectAllLogic = true;\n this.folders.bulkSelect.useNewSelectAllLogic = true;\n\n makeObservable(this, {\n hasItemsOnlyActiveFilters: computed,\n hasFoldersOnlyActiveFilters: computed,\n showEmptyState: computed,\n hasBulkSelectFolders: computed,\n });\n }\n\n get hasFoldersOnlyActiveFilters() {\n const { folders, items } = this;\n return folders.query.filtersArray.some(\n isActiveFilterAndNotInCollection(items),\n );\n }\n\n get hasItemsOnlyActiveFilters() {\n const { folders, items } = this;\n return items.query.filtersArray.some(\n isActiveFilterAndNotInCollection(folders),\n );\n }\n\n get showEmptyState() {\n const {\n toolbar: {\n multi: { showEmptyState },\n },\n items,\n folders,\n hasFoldersOnlyActiveFilters,\n hasItemsOnlyActiveFilters,\n } = this;\n return (\n showEmptyState ||\n (folders.showEmptyState && hasFoldersOnlyActiveFilters) ||\n (items.showEmptyState && hasItemsOnlyActiveFilters)\n );\n }\n\n get hasAvailableItems() {\n const {\n toolbar: {\n multi: { hasAvailableItems },\n },\n items,\n folders,\n } = this;\n return (\n hasAvailableItems || folders.hasAvailableItems || items.hasAvailableItems\n );\n }\n\n get resultOriginQuerySearch() {\n const {\n toolbar: {\n multi: { resultOriginQuerySearch },\n },\n } = this;\n return resultOriginQuerySearch;\n }\n\n get hasNonPersistentActiveFilters() {\n const {\n toolbar: {\n multi: { hasNonPersistentActiveFilters },\n },\n } = this;\n return hasNonPersistentActiveFilters;\n }\n\n get query() {\n return this.items.query;\n }\n\n get hasBulkSelectFolders() {\n return !!this.folders.bulkSelect.selectedIds.length;\n }\n\n init(initParams: FoldersAndItemsCollectionsStateInitParams) {\n const { items, folders, toolbar } = this;\n const disposers = [\n toolbar.init(initParams),\n addEventListener(items.emitter, 'search', ({ clearResult }) => {\n folders._runSearch(clearResult);\n }),\n addEventListener(items.emitter, 'clearSearch', () => {\n folders.clearResultAndMoveToStart();\n }),\n addEventListener(items.emitter, 'sort', (params) => {\n folders._runSort(params);\n }),\n addEventListener(items.emitter, 'beforeSortStart', (params) => {\n folders.emitter.emit('beforeSortStart', params);\n }),\n addEventListener(items.emitter, 'sortStart', (params) => {\n folders.emitter.emit('sortStart', params);\n }),\n ];\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,7 @@ exports.NestedCollectionFetchAllCollectionState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _bexCore = require("@wix/bex-core");
8
8
  var _mobx = require("mobx");
9
+ var _createNestedOptimisticActions = require("./createNestedOptimisticActions");
9
10
  class NestedCollectionFetchAllCollectionState {
10
11
  constructor(params) {
11
12
  (0, _defineProperty2.default)(this, "collection", void 0);
@@ -23,6 +24,10 @@ class NestedCollectionFetchAllCollectionState {
23
24
  collection,
24
25
  parentFilter
25
26
  } = levelDescriptor.createCollection();
27
+ (0, _createNestedOptimisticActions.createNestedOptimisticActions)(params.fetchAllState.nestedCollectionState.container, collection, {
28
+ levelDescriptor: this.levelDescriptor,
29
+ parentFilter
30
+ });
26
31
  this.collection = collection;
27
32
  this.parentFilter = parentFilter;
28
33
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","NestedCollectionFetchAllCollectionState","constructor","params","_defineProperty2","default","TaskState","levelDescriptor","fetchAllState","collection","parentFilter","createCollection","query","sharedQuery","options","fetchAllThreshold","syncWithSharedQuery","originalLimit","pagination","limit","makeObservable","init","action","_populateCache","_emitFetchAllAbortSignalIfExceedsThreshold","_setWithParentFilterQueryData","itemsByParentId","queryClient","_queryKey","queryName","computedQuery","asComputed","parentId","subItems","Array","from","entries","setQueryData","filtersKey","name","items","total","length","cursor","available","_setSectionQueryData","result","_populateCacheWithEmptyResult","parents","Map","map","id","next","parentKey","keyedItems","_otherLevelSameCollectionExists","reduce","groups","item","String","group","get","has","set","push","_exceedsTotalThreshold","_exceedsLevelThreshold","_exceedsThreshold","isFetchAllAborted","events","emit","initTask","disposers","skipFilterListeners","runOnce","collectionPromise","Promise","resolve","reject","status","promise","e","race","fetchedAllPromise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionFetchAllCollectionState.ts"],"sourcesContent":["import {\n DataResultKeyed,\n FiltersMap,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionFetchAllState } from './NestedCollectionFetchAllState';\nimport { action, makeObservable } from 'mobx';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\n\nexport interface NestedCollectionFetchAllCollectionStateParas<\n T,\n F extends FiltersMap,\n> {\n readonly fetchAllState: NestedCollectionFetchAllState;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n}\n\nexport class NestedCollectionFetchAllCollectionState<T, F extends FiltersMap> {\n readonly collection;\n readonly levelDescriptor;\n readonly parentFilter;\n readonly fetchAllState;\n\n readonly initTask = new TaskState();\n\n readonly originalLimit;\n\n constructor(params: NestedCollectionFetchAllCollectionStateParas<T, F>) {\n const { levelDescriptor } = params;\n this.levelDescriptor = levelDescriptor;\n this.fetchAllState = params.fetchAllState;\n\n const { collection, parentFilter } = levelDescriptor.createCollection();\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n fetchAllState: {\n query: sharedQuery,\n options: { fetchAllThreshold },\n },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n this.originalLimit = query.pagination.limit;\n query.pagination.limit =\n levelDescriptor.fetchAllThreshold ?? fetchAllThreshold;\n\n makeObservable(this, {\n init: action,\n _populateCache: action,\n _emitFetchAllAbortSignalIfExceedsThreshold: action,\n });\n }\n\n _setWithParentFilterQueryData(itemsByParentId: Map<string, T[]>) {\n const { collection, parentFilter } = this;\n\n const { queryClient, _queryKey, query } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n for (const [parentId, subItems] of Array.from(itemsByParentId.entries())) {\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n filtersKey: {\n ...computedQuery.filtersKey,\n ...(parentFilter && {\n [parentFilter.name]: [parentId],\n }),\n },\n limit: this.originalLimit,\n },\n ],\n {\n items: subItems,\n total: subItems.length,\n cursor: null,\n available: null,\n },\n );\n }\n }\n\n _setSectionQueryData() {\n const { collection } = this;\n\n const {\n queryClient,\n _queryKey,\n query,\n result: { items },\n } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n limit: this.originalLimit,\n },\n ],\n {\n items,\n total: items.length,\n cursor: null,\n available: null,\n },\n );\n }\n\n _populateCacheWithEmptyResult(parents: { id: string }[]) {\n this._setWithParentFilterQueryData(\n new Map(parents.map(({ id }) => [id, []])),\n );\n }\n\n _populateCache(\n next: NestedCollectionFetchAllCollectionState<any, any> | null,\n ) {\n const {\n fetchAllState,\n collection,\n levelDescriptor: { parentKey },\n } = this;\n\n const {\n result: { items, keyedItems },\n } = collection;\n\n if (fetchAllState._otherLevelSameCollectionExists(this)) {\n this._populateCacheWithEmptyResult(keyedItems);\n }\n\n const itemsByParentId = items.reduce((groups, item) => {\n const parentId = String(parentKey(item));\n const group = groups.get(parentId) ?? [];\n if (!groups.has(parentId)) {\n groups.set(parentId, group);\n }\n group.push(item);\n return groups;\n }, new Map<string, T[]>([]));\n\n this._setWithParentFilterQueryData(itemsByParentId);\n this._setSectionQueryData();\n\n // also include current collection items treated as parents,\n // so if the next level doesn't have any items that their parent id is one of the current collection items,\n // there's still a cache entry for them\n next?._populateCacheWithEmptyResult(keyedItems);\n }\n\n _exceedsTotalThreshold() {\n const {\n fetchAllState: {\n options: { fetchAllThreshold },\n total,\n },\n } = this;\n return total > fetchAllThreshold;\n }\n\n _exceedsLevelThreshold() {\n const {\n levelDescriptor: { fetchAllThreshold },\n collection,\n } = this;\n return (\n fetchAllThreshold != null && collection.result.total > fetchAllThreshold\n );\n }\n\n _exceedsThreshold() {\n return this._exceedsTotalThreshold() || this._exceedsLevelThreshold();\n }\n\n _emitFetchAllAbortSignalIfExceedsThreshold() {\n const { fetchAllState } = this;\n\n if (fetchAllState.isFetchAllAborted) {\n return;\n }\n\n if (this._exceedsThreshold()) {\n fetchAllState.events.emit('fetchAllAbortSignal');\n fetchAllState.isFetchAllAborted = true;\n }\n }\n\n init() {\n const { initTask, collection, fetchAllState } = this;\n\n const disposers = [collection.init({ skipFilterListeners: true })];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n const collectionPromise = new Promise<void>(async (resolve, reject) => {\n try {\n await collection.initTask.status.promise;\n this._emitFetchAllAbortSignalIfExceedsThreshold();\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n\n await Promise.race([fetchAllState.fetchedAllPromise, collectionPromise]);\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","_mobx","_createNestedOptimisticActions","NestedCollectionFetchAllCollectionState","constructor","params","_defineProperty2","default","TaskState","levelDescriptor","fetchAllState","collection","parentFilter","createCollection","createNestedOptimisticActions","nestedCollectionState","container","query","sharedQuery","options","fetchAllThreshold","syncWithSharedQuery","originalLimit","pagination","limit","makeObservable","init","action","_populateCache","_emitFetchAllAbortSignalIfExceedsThreshold","_setWithParentFilterQueryData","itemsByParentId","queryClient","_queryKey","queryName","computedQuery","asComputed","parentId","subItems","Array","from","entries","setQueryData","filtersKey","name","items","total","length","cursor","available","_setSectionQueryData","result","_populateCacheWithEmptyResult","parents","Map","map","id","next","parentKey","keyedItems","_otherLevelSameCollectionExists","reduce","groups","item","String","group","get","has","set","push","_exceedsTotalThreshold","_exceedsLevelThreshold","_exceedsThreshold","isFetchAllAborted","events","emit","initTask","disposers","skipFilterListeners","runOnce","collectionPromise","Promise","resolve","reject","status","promise","e","race","fetchedAllPromise","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedCollectionFetchAllCollectionState.ts"],"sourcesContent":["import {\n DataResultKeyed,\n FiltersMap,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedCollectionFetchAllState } from './NestedCollectionFetchAllState';\nimport { action, makeObservable } from 'mobx';\nimport { NestedCollectionLevelDescriptor } from './NestedCollectionLevelDescriptor';\nimport { createNestedOptimisticActions } from './createNestedOptimisticActions';\n\nexport interface NestedCollectionFetchAllCollectionStateParas<\n T,\n F extends FiltersMap,\n> {\n readonly fetchAllState: NestedCollectionFetchAllState;\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n}\n\nexport class NestedCollectionFetchAllCollectionState<T, F extends FiltersMap> {\n readonly collection;\n readonly levelDescriptor;\n readonly parentFilter;\n readonly fetchAllState;\n\n readonly initTask = new TaskState();\n\n readonly originalLimit;\n\n constructor(params: NestedCollectionFetchAllCollectionStateParas<T, F>) {\n const { levelDescriptor } = params;\n this.levelDescriptor = levelDescriptor;\n this.fetchAllState = params.fetchAllState;\n\n const { collection, parentFilter } = levelDescriptor.createCollection();\n\n createNestedOptimisticActions(\n params.fetchAllState.nestedCollectionState.container,\n collection,\n {\n levelDescriptor: this.levelDescriptor,\n parentFilter,\n },\n );\n\n this.collection = collection;\n this.parentFilter = parentFilter;\n\n const {\n fetchAllState: {\n query: sharedQuery,\n options: { fetchAllThreshold },\n },\n } = this;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n this.originalLimit = query.pagination.limit;\n query.pagination.limit =\n levelDescriptor.fetchAllThreshold ?? fetchAllThreshold;\n\n makeObservable(this, {\n init: action,\n _populateCache: action,\n _emitFetchAllAbortSignalIfExceedsThreshold: action,\n });\n }\n\n _setWithParentFilterQueryData(itemsByParentId: Map<string, T[]>) {\n const { collection, parentFilter } = this;\n\n const { queryClient, _queryKey, query } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n for (const [parentId, subItems] of Array.from(itemsByParentId.entries())) {\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n filtersKey: {\n ...computedQuery.filtersKey,\n ...(parentFilter && {\n [parentFilter.name]: [parentId],\n }),\n },\n limit: this.originalLimit,\n },\n ],\n {\n items: subItems,\n total: subItems.length,\n cursor: null,\n available: null,\n },\n );\n }\n }\n\n _setSectionQueryData() {\n const { collection } = this;\n\n const {\n queryClient,\n _queryKey,\n query,\n result: { items },\n } = collection;\n\n const [queryName, computedQuery] = _queryKey(query.asComputed);\n\n queryClient.setQueryData<DataResultKeyed<T>>(\n [\n queryName,\n {\n ...computedQuery,\n limit: this.originalLimit,\n },\n ],\n {\n items,\n total: items.length,\n cursor: null,\n available: null,\n },\n );\n }\n\n _populateCacheWithEmptyResult(parents: { id: string }[]) {\n this._setWithParentFilterQueryData(\n new Map(parents.map(({ id }) => [id, []])),\n );\n }\n\n _populateCache(\n next: NestedCollectionFetchAllCollectionState<any, any> | null,\n ) {\n const {\n fetchAllState,\n collection,\n levelDescriptor: { parentKey },\n } = this;\n\n const {\n result: { items, keyedItems },\n } = collection;\n\n if (fetchAllState._otherLevelSameCollectionExists(this)) {\n this._populateCacheWithEmptyResult(keyedItems);\n }\n\n const itemsByParentId = items.reduce((groups, item) => {\n const parentId = String(parentKey(item));\n const group = groups.get(parentId) ?? [];\n if (!groups.has(parentId)) {\n groups.set(parentId, group);\n }\n group.push(item);\n return groups;\n }, new Map<string, T[]>([]));\n\n this._setWithParentFilterQueryData(itemsByParentId);\n this._setSectionQueryData();\n\n // also include current collection items treated as parents,\n // so if the next level doesn't have any items that their parent id is one of the current collection items,\n // there's still a cache entry for them\n next?._populateCacheWithEmptyResult(keyedItems);\n }\n\n _exceedsTotalThreshold() {\n const {\n fetchAllState: {\n options: { fetchAllThreshold },\n total,\n },\n } = this;\n return total > fetchAllThreshold;\n }\n\n _exceedsLevelThreshold() {\n const {\n levelDescriptor: { fetchAllThreshold },\n collection,\n } = this;\n return (\n fetchAllThreshold != null && collection.result.total > fetchAllThreshold\n );\n }\n\n _exceedsThreshold() {\n return this._exceedsTotalThreshold() || this._exceedsLevelThreshold();\n }\n\n _emitFetchAllAbortSignalIfExceedsThreshold() {\n const { fetchAllState } = this;\n\n if (fetchAllState.isFetchAllAborted) {\n return;\n }\n\n if (this._exceedsThreshold()) {\n fetchAllState.events.emit('fetchAllAbortSignal');\n fetchAllState.isFetchAllAborted = true;\n }\n }\n\n init() {\n const { initTask, collection, fetchAllState } = this;\n\n const disposers = [collection.init({ skipFilterListeners: true })];\n\n initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n const collectionPromise = new Promise<void>(async (resolve, reject) => {\n try {\n await collection.initTask.status.promise;\n this._emitFetchAllAbortSignalIfExceedsThreshold();\n resolve();\n } catch (e) {\n reject(e);\n }\n });\n\n await Promise.race([fetchAllState.fetchedAllPromise, collectionPromise]);\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/NestedCollectionLevelDescriptor.ts"],"sourcesContent":["import {\n CollectionOptimisticSequenceExecutor,\n CollectionState,\n Filter,\n FiltersMap,\n QueryState,\n} from '@wix/bex-core';\n\nexport interface NestedCollectionLevelDescriptor<T, F extends FiltersMap> {\n readonly depth: number;\n /**\n * A function that accepts the item of the current level and returns the key of the parent item, for example: `(item) => item.parentId`.\n */\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 /**\n * A function that creates a collection for the current level (using [useCreateCollection](./?path=/story/common-hooks--usecreatecollection) hook), and returns the collection state and a reference to a filter object within this collection that filters the collection by the parent key.\n * @overrideType (state) => { collection: [CollectionState](./?path=/story/common-state--collectionstate); parentFilter?: [Filter<string[]>](./?path=/story/features-filter-factories--stringsarrayfilter); }\n */\n readonly createCollection: (params?: {\n readonly parentId?: string;\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 readonly isSameEntityAsOtherLevels?: boolean;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../../src/state/NestedTableState/NestedCollectionLevelDescriptor.ts"],"sourcesContent":["import {\n CollectionState,\n ComputedQuery,\n Filter,\n FiltersMap,\n} from '@wix/bex-core';\nimport { NestedOptimisticActionsState } from './createNestedOptimisticActions';\n\nexport interface NestedCollectionLevelDescriptor<T, F extends FiltersMap> {\n readonly depth: number;\n /**\n * A function that accepts the item of the current level and returns the key of the parent item, for example: `(item) => item.parentId`.\n */\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 /**\n * A function that creates a collection for the current level (using [useCreateCollection](./?path=/story/common-hooks--usecreatecollection) hook), and returns the collection state and a reference to a filter object within this collection that filters the collection by the parent key.\n * @overrideType (state) => { collection: [CollectionState](./?path=/story/common-state--collectionstate); parentFilter?: [Filter<string[]>](./?path=/story/features-filter-factories--stringsarrayfilter); }\n */\n readonly createCollection: (params?: NestedOptimisticActionsState<T, F>) => {\n collection: CollectionState<T, F>;\n parentFilter?: Filter<string[]>;\n\n };\n readonly fetchAllThreshold?: number;\n readonly isSameEntityAsOtherLevels?: boolean;\n /**\n * A [predicate](./?path=/story/features-actions-updates--useoptimisticactions) function to pass to the internal [OptimisticActions](/?path=/story/features-actions-updates--collectionoptimisticactions) created by NestedTable\n */\n readonly optimisticActionsPredicate?: (\n query: ComputedQuery<F>,\n ) => (item: T) => boolean;\n}\n"],"mappings":"","ignoreList":[]}
@@ -6,6 +6,7 @@ exports.NestedCollectionNodeState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _bexCore = require("@wix/bex-core");
8
8
  var _mobx = require("mobx");
9
+ var _createNestedOptimisticActions = require("./createNestedOptimisticActions");
9
10
  class NestedCollectionNodeState {
10
11
  constructor(params) {
11
12
  var _this$parent;
@@ -33,13 +34,19 @@ class NestedCollectionNodeState {
33
34
  (0, _mobx.runInAction)(() => {
34
35
  this._expanded = !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;
35
36
  });
37
+ const nestedOptimisticActionsState = {
38
+ parentId: ((_this$parent = this.parent) == null ? void 0 : _this$parent.id) ?? 'null',
39
+ sequences: nestedCollection.sequences,
40
+ query: nestedCollection.query,
41
+ levelDescriptor: this.levelDescriptor
42
+ };
36
43
  const {
37
44
  collection,
38
45
  parentFilter
39
- } = params.nodeCollection ?? this.levelDescriptor.createCollection({
40
- parentId: ((_this$parent = this.parent) == null ? void 0 : _this$parent.id) ?? 'null',
41
- sequences: nestedCollection.sequences,
42
- query: nestedCollection.query
46
+ } = params.nodeCollection ?? this.levelDescriptor.createCollection(nestedOptimisticActionsState);
47
+ (0, _createNestedOptimisticActions.createNestedOptimisticActions)(this.nestedCollection.container, collection, {
48
+ ...nestedOptimisticActionsState,
49
+ parentFilter
43
50
  });
44
51
  if (!nestedCollection.isFetchAllAborted) {
45
52
  collection.queryObserver.setOptions({
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","NestedCollectionNodeState","constructor","params","_this$parent","_defineProperty2","default","observable","map","deep","TaskState","nestedCollection","levelDescriptor","parent","parentNode","_notifyAll","notifyAll","runInAction","_expanded","isFetchAllAborted","expandAll","collection","parentFilter","nodeCollection","createCollection","parentId","id","sequences","query","queryObserver","setOptions","options","staleTime","Infinity","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","skipFilterListeners","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 notifyAll?: 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 _notifyAll;\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._notifyAll = params.notifyAll;\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 parentId: this.parent?.id ?? 'null',\n sequences: nestedCollection.sequences,\n query: nestedCollection.query as QueryState<F>,\n });\n\n if (!nestedCollection.isFetchAllAborted) {\n collection.queryObserver.setOptions({\n ...collection.queryObserver.options,\n staleTime: Infinity,\n });\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({\n skipInitialFetch:\n nestedCollection.isFetchAllAborted === true && !this._expanded,\n skipFilterListeners: true,\n })\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 notifyAll: params.notifyAll,\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,YAAA;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,GAAGR,MAAM;IACnC,IAAI,CAACQ,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACC,eAAe,GAAGT,MAAM,CAACS,eAAe;IAC7C,IAAI,CAACC,MAAM,GAAGV,MAAM,CAACU,MAAM;IAC3B,IAAI,CAACC,UAAU,GAAGX,MAAM,CAACW,UAAU;IACnC,IAAI,CAACC,UAAU,GAAGZ,MAAM,CAACa,SAAS;IAElC,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,GAChCnB,MAAM,CAACoB,cAAc,IACrB,IAAI,CAACX,eAAe,CAACY,gBAAgB,CAAC;MACpCC,QAAQ,EAAE,EAAArB,YAAA,OAAI,CAACS,MAAM,qBAAXT,YAAA,CAAasB,EAAE,KAAI,MAAM;MACnCC,SAAS,EAAEhB,gBAAgB,CAACgB,SAAS;MACrCC,KAAK,EAAEjB,gBAAgB,CAACiB;IAC1B,CAAC,CAAC;IAEJ,IAAI,CAACjB,gBAAgB,CAACQ,iBAAiB,EAAE;MACvCE,UAAU,CAACQ,aAAa,CAACC,UAAU,CAAC;QAClC,GAAGT,UAAU,CAACQ,aAAa,CAACE,OAAO;QACnCC,SAAS,EAAEC;MACb,CAAC,CAAC;IACJ;IAEA,IAAI,CAACZ,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACC,YAAY,GAAGA,YAAY;IAEhC,MAAM;MACJT,MAAM;MACNF,gBAAgB,EAAE;QAAEiB,KAAK,EAAEM;MAAY;IACzC,CAAC,GAAG,IAAI;IAER,MAAM;MAAEN;IAAM,CAAC,GAAGP,UAAU;IAE5B,IAAAc,4BAAmB,EAACP,KAAK,EAAEM,WAAW,CAAC;IAEvC,IAAIrB,MAAM,IAAI,IAAI,IAAIS,YAAY,IAAI,IAAI,EAAE;MAC1CA,YAAY,CAACc,UAAU,GAAG,IAAI;MAC9Bd,YAAY,CAACe,QAAQ,CAAC,CAACxB,MAAM,CAACyB,GAAG,CAAC,CAAC;IACrC;IAEA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM;MACZC,aAAa,EAAED,YAAM;MACrBE,YAAY,EAAEF,YAAM;MACpBvB,SAAS,EAAEX,gBAAU,CAACqC,GAAG;MACzBC,QAAQ,EAAEtC,gBAAU,CAACqC,GAAG;MACxBE,sBAAsB,EAAEC;IAC1B,CAAC,CAAC;EACJ;EAEA,MAAML,aAAaA,CAAA,EAAG;IACpB,IAAI,CAACxB,SAAS,GAAG,CAAC,IAAI,CAACA,SAAS;IAChC,IAAI,IAAI,CAACA,SAAS,EAAE;MAClB,IAAI;QACF,MAAM,IAAI,CAACG,UAAU,CAAC2B,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,CAACtC,UAAU,aAAfsC,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;MAAElC,UAAU;MAAEV;IAAiB,CAAC,GAAG,IAAI;IAEvD,IAAIU,UAAU,CAACmC,kBAAkB,EAAE;MACjC7C,gBAAgB,CAAC8C,MAAM,CAACC,EAAE,CACxB,SAAS,EACTrC,UAAU,CAACmC,kBAAkB,CAAChB,IAAI,CAAC,CACrC,CAAC;IACH;IAEA,MAAMmB,SAAS,GAAG,CAChB,CAACL,kBAAkB,GACfjC,UAAU,CAACmB,IAAI,CAAC;MACdoB,gBAAgB,EACdjD,gBAAgB,CAACQ,iBAAiB,KAAK,IAAI,IAAI,CAAC,IAAI,CAACD,SAAS;MAChE2C,mBAAmB,EAAE;IACvB,CAAC,CAAC,GACFC,SAAS,CACd;IAEDP,QAAQ,CAACQ,OAAO,CAAC,YAAY;MAC3B1C,UAAU,CAACkC,QAAQ,CAACQ,OAAO,CAAC,CAAC;MAC7B,MAAM1C,UAAU,CAACkC,QAAQ,CAACS,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,CACTvD,MAAsB,EACtBV,MAAqD,EACrD;IACA,MAAM;MAAEQ;IAAiB,CAAC,GAAG,IAAI;IAEjC,OAAO,IAAIV,yBAAyB,CAAC;MACnCY,MAAM;MACNC,UAAU,EAAE,IAAI;MAChBH,gBAAgB;MAChBC,eAAe,EAAET,MAAM,CAACS,eAAe;MACvCI,SAAS,EAAEb,MAAM,CAACa;IACpB,CAAC,CAAC;EACJ;AACF;AAACqD,OAAA,CAAApE,yBAAA,GAAAA,yBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","_createNestedOptimisticActions","NestedCollectionNodeState","constructor","params","_this$parent","_defineProperty2","default","observable","map","deep","TaskState","nestedCollection","levelDescriptor","parent","parentNode","_notifyAll","notifyAll","runInAction","_expanded","isFetchAllAborted","expandAll","nestedOptimisticActionsState","parentId","id","sequences","query","collection","parentFilter","nodeCollection","createCollection","createNestedOptimisticActions","container","queryObserver","setOptions","options","staleTime","Infinity","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","skipFilterListeners","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';\nimport { createNestedOptimisticActions } from './createNestedOptimisticActions';\n\nexport interface NestedCollectionNodeStateBaseParams<T, F extends FiltersMap> {\n readonly levelDescriptor: NestedCollectionLevelDescriptor<T, F>;\n readonly notifyAll?: 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 _notifyAll;\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._notifyAll = params.notifyAll;\n\n runInAction(() => {\n this._expanded =\n !nestedCollection.isFetchAllAborted && nestedCollection.expandAll;\n });\n\n const nestedOptimisticActionsState = {\n parentId: this.parent?.id ?? 'null',\n sequences: nestedCollection.sequences,\n query: nestedCollection.query as QueryState<F>,\n levelDescriptor: this.levelDescriptor,\n };\n\n const { collection, parentFilter } =\n params.nodeCollection ??\n this.levelDescriptor.createCollection(nestedOptimisticActionsState);\n\n createNestedOptimisticActions(\n this.nestedCollection.container,\n collection,\n {\n ...nestedOptimisticActionsState,\n parentFilter,\n },\n );\n\n if (!nestedCollection.isFetchAllAborted) {\n collection.queryObserver.setOptions({\n ...collection.queryObserver.options,\n staleTime: Infinity,\n });\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({\n skipInitialFetch:\n nestedCollection.isFetchAllAborted === true && !this._expanded,\n skipFilterListeners: true,\n })\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 notifyAll: params.notifyAll,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ exports.__esModule = true;
5
5
  exports.NestedTableFlatModeSectionState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _bexCore = require("@wix/bex-core");
8
+ var _createNestedOptimisticActions = require("./createNestedOptimisticActions");
8
9
  class NestedTableFlatModeSectionState {
9
10
  constructor(params) {
10
11
  (0, _defineProperty2.default)(this, "collection", void 0);
@@ -15,9 +16,17 @@ class NestedTableFlatModeSectionState {
15
16
  levelDescriptor
16
17
  } = params;
17
18
  this.levelDescriptor = levelDescriptor;
19
+ const nestedOptimisticActionsState = {
20
+ levelDescriptor: this.levelDescriptor
21
+ };
18
22
  const {
19
- collection
20
- } = levelDescriptor.createCollection();
23
+ collection,
24
+ parentFilter
25
+ } = levelDescriptor.createCollection(nestedOptimisticActionsState);
26
+ (0, _createNestedOptimisticActions.createNestedOptimisticActions)(params.flatModeState.wrapper.container, collection, {
27
+ ...nestedOptimisticActionsState,
28
+ parentFilter
29
+ });
21
30
  this.collection = collection;
22
31
  const {
23
32
  query: sharedQuery
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","NestedTableFlatModeSectionState","constructor","params","_defineProperty2","default","TaskState","levelDescriptor","collection","createCollection","query","sharedQuery","syncWithSharedQuery","columns","renderMainColumn","breadcrumbs","init","_collection$_optimist","disposers","_optimisticActions","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableFlatModeSectionState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n KeyedItem,\n QueryState,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\n\nexport interface NestedTableFlatDataItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableFlatModeSectionState<C, T, F>;\n originalKeyedItem: KeyedItem<T>;\n}\n\nexport type NestedTableFlatKeyedItem<\n C extends string,\n T,\n F extends FiltersMap,\n> = KeyedItem<NestedTableFlatDataItem<C, T, F>>;\n\nexport interface NestedTableFlatModeSectionStateParams<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n readonly levelDescriptor: NestedTableLevelDescriptor<C, T, F>;\n readonly query: QueryState<{}>;\n}\n\nexport interface NestedTableSectionStatePublicAPI<T, F extends FiltersMap> {\n /**\n * The collection of the section\n * @overrideType [CollectionState](./?path=/story/common-state--collectionstate)\n */\n readonly collection: CollectionState<T, F>;\n}\n\nexport class NestedTableFlatModeSectionState<\n C extends string,\n T,\n F extends FiltersMap,\n> implements NestedTableSectionStatePublicAPI<T, F>\n{\n collection;\n readonly levelDescriptor;\n readonly levelDescriptors = [] as NestedTableLevelDescriptor<C, T, F>[];\n\n readonly initTask = new TaskState();\n\n constructor(params: NestedTableFlatModeSectionStateParams<C, T, F>) {\n const { levelDescriptor } = params;\n this.levelDescriptor = levelDescriptor;\n\n const { collection } = levelDescriptor.createCollection();\n this.collection = collection;\n\n const { query: sharedQuery } = params;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n }\n\n get query() {\n return this.collection.query;\n }\n\n get columns() {\n return this.levelDescriptor.columns;\n }\n\n get renderMainColumn() {\n return this.levelDescriptor.renderMainColumn;\n }\n\n get breadcrumbs() {\n return this.levelDescriptor.breadcrumbs;\n }\n\n init() {\n const { collection } = this;\n const disposers = [collection._optimisticActions?.init()];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AA0CO,MAAMC,+BAA+B,CAK5C;EAOEC,WAAWA,CAACC,MAAsD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,4BAJxC,EAAE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAEV,IAAIC,kBAAS,CAAC,CAAC;IAGjC,MAAM;MAAEC;IAAgB,CAAC,GAAGJ,MAAM;IAClC,IAAI,CAACI,eAAe,GAAGA,eAAe;IAEtC,MAAM;MAAEC;IAAW,CAAC,GAAGD,eAAe,CAACE,gBAAgB,CAAC,CAAC;IACzD,IAAI,CAACD,UAAU,GAAGA,UAAU;IAE5B,MAAM;MAAEE,KAAK,EAAEC;IAAY,CAAC,GAAGR,MAAM;IAErC,MAAM;MAAEO;IAAM,CAAC,GAAGF,UAAU;IAE5B,IAAAI,4BAAmB,EAACF,KAAK,EAAEC,WAAW,CAAC;EACzC;EAEA,IAAID,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACF,UAAU,CAACE,KAAK;EAC9B;EAEA,IAAIG,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACN,eAAe,CAACM,OAAO;EACrC;EAEA,IAAIC,gBAAgBA,CAAA,EAAG;IACrB,OAAO,IAAI,CAACP,eAAe,CAACO,gBAAgB;EAC9C;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACR,eAAe,CAACQ,WAAW;EACzC;EAEAC,IAAIA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IACL,MAAM;MAAET;IAAW,CAAC,GAAG,IAAI;IAC3B,MAAMU,SAAS,GAAG,EAAAD,qBAAA,GAACT,UAAU,CAACW,kBAAkB,qBAA7BF,qBAAA,CAA+BD,IAAI,CAAC,CAAC,CAAC;IAEzD,OAAO,MAAM;MACXE,SAAS,CAACE,OAAO,CAAEC,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IACjC,CAAC;EACH;AACF;AAACC,OAAA,CAAArB,+BAAA,GAAAA,+BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_createNestedOptimisticActions","NestedTableFlatModeSectionState","constructor","params","_defineProperty2","default","TaskState","levelDescriptor","nestedOptimisticActionsState","collection","parentFilter","createCollection","createNestedOptimisticActions","flatModeState","wrapper","container","query","sharedQuery","syncWithSharedQuery","columns","renderMainColumn","breadcrumbs","init","_collection$_optimist","disposers","_optimisticActions","forEach","d","exports"],"sources":["../../../../src/state/NestedTableState/NestedTableFlatModeSectionState.ts"],"sourcesContent":["import {\n CollectionState,\n FiltersMap,\n KeyedItem,\n QueryState,\n syncWithSharedQuery,\n TaskState,\n} from '@wix/bex-core';\nimport { NestedTableLevelDescriptor } from './NestedTableLevelDescriptor';\nimport { createNestedOptimisticActions } from './createNestedOptimisticActions';\nimport { NestedTableFlatModeState } from './NestedTableFlatModeState';\n\nexport interface NestedTableFlatDataItem<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n state: NestedTableFlatModeSectionState<C, T, F>;\n originalKeyedItem: KeyedItem<T>;\n}\n\nexport type NestedTableFlatKeyedItem<\n C extends string,\n T,\n F extends FiltersMap,\n> = KeyedItem<NestedTableFlatDataItem<C, T, F>>;\n\nexport interface NestedTableFlatModeSectionStateParams<\n C extends string,\n T,\n F extends FiltersMap,\n> {\n readonly levelDescriptor: NestedTableLevelDescriptor<C, T, F>;\n readonly query: QueryState<{}>;\n readonly flatModeState: NestedTableFlatModeState<C>;\n}\n\nexport interface NestedTableSectionStatePublicAPI<T, F extends FiltersMap> {\n /**\n * The collection of the section\n * @overrideType [CollectionState](./?path=/story/common-state--collectionstate)\n */\n readonly collection: CollectionState<T, F>;\n}\n\nexport class NestedTableFlatModeSectionState<\n C extends string,\n T,\n F extends FiltersMap,\n> implements NestedTableSectionStatePublicAPI<T, F>\n{\n collection;\n readonly levelDescriptor;\n readonly levelDescriptors = [] as NestedTableLevelDescriptor<C, T, F>[];\n\n readonly initTask = new TaskState();\n\n constructor(params: NestedTableFlatModeSectionStateParams<C, T, F>) {\n const { levelDescriptor } = params;\n this.levelDescriptor = levelDescriptor;\n\n const nestedOptimisticActionsState = {\n levelDescriptor: this.levelDescriptor,\n };\n\n const { collection, parentFilter } = levelDescriptor.createCollection(\n nestedOptimisticActionsState,\n );\n\n createNestedOptimisticActions(\n params.flatModeState.wrapper.container,\n collection,\n {\n ...nestedOptimisticActionsState,\n parentFilter,\n },\n );\n\n this.collection = collection;\n\n const { query: sharedQuery } = params;\n\n const { query } = collection;\n\n syncWithSharedQuery(query, sharedQuery);\n }\n\n get query() {\n return this.collection.query;\n }\n\n get columns() {\n return this.levelDescriptor.columns;\n }\n\n get renderMainColumn() {\n return this.levelDescriptor.renderMainColumn;\n }\n\n get breadcrumbs() {\n return this.levelDescriptor.breadcrumbs;\n }\n\n init() {\n const { collection } = this;\n const disposers = [collection._optimisticActions?.init()];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AASA,IAAAC,8BAAA,GAAAD,OAAA;AAoCO,MAAME,+BAA+B,CAK5C;EAOEC,WAAWA,CAACC,MAAsD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,4BAJxC,EAAE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,oBAEV,IAAIC,kBAAS,CAAC,CAAC;IAGjC,MAAM;MAAEC;IAAgB,CAAC,GAAGJ,MAAM;IAClC,IAAI,CAACI,eAAe,GAAGA,eAAe;IAEtC,MAAMC,4BAA4B,GAAG;MACnCD,eAAe,EAAE,IAAI,CAACA;IACxB,CAAC;IAED,MAAM;MAAEE,UAAU;MAAEC;IAAa,CAAC,GAAGH,eAAe,CAACI,gBAAgB,CACnEH,4BACF,CAAC;IAED,IAAAI,4DAA6B,EAC3BT,MAAM,CAACU,aAAa,CAACC,OAAO,CAACC,SAAS,EACtCN,UAAU,EACV;MACE,GAAGD,4BAA4B;MAC/BE;IACF,CACF,CAAC;IAED,IAAI,CAACD,UAAU,GAAGA,UAAU;IAE5B,MAAM;MAAEO,KAAK,EAAEC;IAAY,CAAC,GAAGd,MAAM;IAErC,MAAM;MAAEa;IAAM,CAAC,GAAGP,UAAU;IAE5B,IAAAS,4BAAmB,EAACF,KAAK,EAAEC,WAAW,CAAC;EACzC;EAEA,IAAID,KAAKA,CAAA,EAAG;IACV,OAAO,IAAI,CAACP,UAAU,CAACO,KAAK;EAC9B;EAEA,IAAIG,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACZ,eAAe,CAACY,OAAO;EACrC;EAEA,IAAIC,gBAAgBA,CAAA,EAAG;IACrB,OAAO,IAAI,CAACb,eAAe,CAACa,gBAAgB;EAC9C;EAEA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACd,eAAe,CAACc,WAAW;EACzC;EAEAC,IAAIA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IACL,MAAM;MAAEd;IAAW,CAAC,GAAG,IAAI;IAC3B,MAAMe,SAAS,GAAG,EAAAD,qBAAA,GAACd,UAAU,CAACgB,kBAAkB,qBAA7BF,qBAAA,CAA+BD,IAAI,CAAC,CAAC,CAAC;IAEzD,OAAO,MAAM;MACXE,SAAS,CAACE,OAAO,CAAEC,CAAC,IAAKA,CAAC,oBAADA,CAAC,CAAG,CAAC,CAAC;IACjC,CAAC;EACH;AACF;AAACC,OAAA,CAAA3B,+BAAA,GAAAA,+BAAA","ignoreList":[]}
@@ -63,7 +63,8 @@ class NestedTableFlatModeState {
63
63
  this.sections = Array.from(levels.map(levelDescriptor => {
64
64
  return new _NestedTableFlatModeSectionState.NestedTableFlatModeSectionState({
65
65
  levelDescriptor,
66
- query: _query
66
+ query: _query,
67
+ flatModeState: this
67
68
  });
68
69
  }).reduce((map, section) => {
69
70
  const query = section.collection.getCurrentQuery();
@@ -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","search","isEmpty","reset","_populateCacheAndSearch","sections","forEach","collection","clearResultAndMoveToStart","wrapper","levels","bi","NestedTableFlatModeStateBIReporter","Array","from","map","levelDescriptor","NestedTableFlatModeSectionState","reduce","section","getCurrentQuery","existingSection","get","levelDescriptors","push","set","Map","values","MultiCollectionSupport","collections","virtual","TableVirtualState","table","initSearchState","_getSearchInitState","makeObservable","keyedItems","computed","toolbar","tableState","acc","result","keyedItem","item","state","originalKeyedItem","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isIdle","isLoading","errorStatus","reportSearchResults","_createReportSearchResults","fetchAll","_attemptFetchAllAndPopulateCache","init","promise","Promise","all","_runSearch","disposers","addEventListener","emitter","d","isUsingCache","events","isSuccess","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 readonly initSearchState;\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 const query = section.collection.getCurrentQuery();\n const existingSection = map.get(query);\n if (existingSection) {\n existingSection.levelDescriptors.push(section.levelDescriptor);\n } else {\n map.set(query, section);\n section.levelDescriptors.push(section.levelDescriptor);\n }\n return map;\n }, new Map<unknown, NestedTableFlatModeSectionState<C, any, any>>())\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 this.initSearchState = this._getSearchInitState();\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 async _populateCacheAndSearch() {\n const { wrapper, bi } = this;\n\n const reportSearchResults = bi._createReportSearchResults();\n const fetchAll = wrapper._attemptFetchAllAndPopulateCache();\n fetchAll.init();\n await fetchAll.initTask.status.promise;\n await Promise.all(\n this.sections.map(({ collection }) => collection._runSearch(true)),\n );\n reportSearchResults();\n }\n\n _runSearch = action(async () => {\n const { query, refreshTask } = this;\n if (query.search.isEmpty) {\n return;\n }\n\n refreshTask.reset();\n\n refreshTask.runOnce(() => this._populateCacheAndSearch());\n });\n\n _getSearchInitState() {\n const initTask = new TaskState();\n\n const disposers = [\n ...this.sections.map(({ collection }) =>\n addEventListener(\n collection.emitter,\n 'beforeInitialFetch',\n () => initTask.status.promise,\n ),\n ),\n ];\n\n return {\n initTask,\n init: () => {\n initTask.runOnce(async () => {\n await this._populateCacheAndSearch();\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n },\n };\n }\n\n init({ isUsingCache = false } = {}) {\n const { initTask, wrapper, multi, sections, initSearchState } = this;\n\n const { query } = wrapper;\n\n const disposers = [\n wrapper.init(),\n initSearchState.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 initSearchState.initTask.runOnce();\n multi.initTask.runOnce();\n\n await wrapper.initTask.status.promise;\n await initSearchState.initTask.status.promise;\n await multi.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n\n _refreshAll = action(() => {\n this.sections.forEach(({ collection }) => {\n collection.clearResultAndMoveToStart();\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","search","isEmpty","reset","_populateCacheAndSearch","sections","forEach","collection","clearResultAndMoveToStart","wrapper","levels","bi","NestedTableFlatModeStateBIReporter","Array","from","map","levelDescriptor","NestedTableFlatModeSectionState","flatModeState","reduce","section","getCurrentQuery","existingSection","get","levelDescriptors","push","set","Map","values","MultiCollectionSupport","collections","virtual","TableVirtualState","table","initSearchState","_getSearchInitState","makeObservable","keyedItems","computed","toolbar","tableState","acc","result","keyedItem","item","state","originalKeyedItem","showEmptyState","hasAvailableItems","resultOriginQuerySearch","hasNonPersistentActiveFilters","showErrorState","showLoadingState","isIdle","isLoading","errorStatus","reportSearchResults","_createReportSearchResults","fetchAll","_attemptFetchAllAndPopulateCache","init","promise","Promise","all","_runSearch","disposers","addEventListener","emitter","d","isUsingCache","events","isSuccess","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 readonly initSearchState;\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 flatModeState: this,\n });\n })\n .reduce((map, section) => {\n const query = section.collection.getCurrentQuery();\n const existingSection = map.get(query);\n if (existingSection) {\n existingSection.levelDescriptors.push(section.levelDescriptor);\n } else {\n map.set(query, section);\n section.levelDescriptors.push(section.levelDescriptor);\n }\n return map;\n }, new Map<unknown, NestedTableFlatModeSectionState<C, any, any>>())\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 this.initSearchState = this._getSearchInitState();\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 async _populateCacheAndSearch() {\n const { wrapper, bi } = this;\n\n const reportSearchResults = bi._createReportSearchResults();\n const fetchAll = wrapper._attemptFetchAllAndPopulateCache();\n fetchAll.init();\n await fetchAll.initTask.status.promise;\n await Promise.all(\n this.sections.map(({ collection }) => collection._runSearch(true)),\n );\n reportSearchResults();\n }\n\n _runSearch = action(async () => {\n const { query, refreshTask } = this;\n if (query.search.isEmpty) {\n return;\n }\n\n refreshTask.reset();\n\n refreshTask.runOnce(() => this._populateCacheAndSearch());\n });\n\n _getSearchInitState() {\n const initTask = new TaskState();\n\n const disposers = [\n ...this.sections.map(({ collection }) =>\n addEventListener(\n collection.emitter,\n 'beforeInitialFetch',\n () => initTask.status.promise,\n ),\n ),\n ];\n\n return {\n initTask,\n init: () => {\n initTask.runOnce(async () => {\n await this._populateCacheAndSearch();\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n },\n };\n }\n\n init({ isUsingCache = false } = {}) {\n const { initTask, wrapper, multi, sections, initSearchState } = this;\n\n const { query } = wrapper;\n\n const disposers = [\n wrapper.init(),\n initSearchState.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 initSearchState.initTask.runOnce();\n multi.initTask.runOnce();\n\n await wrapper.initTask.status.promise;\n await initSearchState.initTask.status.promise;\n await multi.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n\n _refreshAll = action(() => {\n this.sections.forEach(({ collection }) => {\n collection.clearResultAndMoveToStart();\n });\n });\n}\n"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@ var _mobx = require("mobx");
12
12
  var _getNodeOrLeaf = require("./getNodeOrLeaf");
13
13
  var _NestedTableNestedModeStateBIReporter = require("./NestedTableNestedModeStateBIReporter");
14
14
  var _util = require("@wix/bex-core/util");
15
+ var _createNestedOptimisticActions = require("./createNestedOptimisticActions");
15
16
  class NestedTableNestedModeState {
16
17
  constructor(params) {
17
18
  (0, _defineProperty2.default)(this, "wrapper", void 0);
@@ -56,10 +57,16 @@ class NestedTableNestedModeState {
56
57
  if (rootLevelDescriptor == null) {
57
58
  throw new Error('NestedTableState must have at least one level');
58
59
  }
59
- const rootNodeCollection = rootLevelDescriptor.createCollection({
60
+ const nestedOptimisticActionsState = {
60
61
  parentId: 'null',
61
62
  sequences: wrapper.sequences,
62
- query: wrapper.query
63
+ query: wrapper.query,
64
+ levelDescriptor: rootLevelDescriptor
65
+ };
66
+ const rootNodeCollection = rootLevelDescriptor.createCollection(nestedOptimisticActionsState);
67
+ (0, _createNestedOptimisticActions.createNestedOptimisticActions)(this.container, rootNodeCollection.collection, {
68
+ ...nestedOptimisticActionsState,
69
+ parentFilter: rootNodeCollection.parentFilter
63
70
  });
64
71
  this.nestedCollection = new _NestedCollectionState.NestedCollectionState({
65
72
  container: this.container,