@wix/patterns 1.131.0 → 1.133.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 (247) hide show
  1. package/dist/cjs/bm/testProviderPropsOverrides.js +2 -1
  2. package/dist/cjs/bm/testProviderPropsOverrides.js.map +1 -1
  3. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  4. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  5. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  6. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  7. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +3 -3
  8. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  10. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  11. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  12. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  13. package/dist/cjs/components/CustomFieldsForm/CustomFieldsForm.js +13 -15
  14. package/dist/cjs/components/CustomFieldsForm/CustomFieldsForm.js.map +1 -1
  15. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsAllNamespacesForm.js +84 -0
  16. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsAllNamespacesForm.js.map +1 -0
  17. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsEmptyStateOverrides.js +2 -0
  18. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsEmptyStateOverrides.js.map +1 -0
  19. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js +11 -14
  20. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js.map +1 -1
  21. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsNamespaceSectionForm.js +93 -0
  22. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsNamespaceSectionForm.js.map +1 -0
  23. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidget.js +7 -16
  24. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidget.js.map +1 -1
  25. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.js +17 -4
  26. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.js.map +1 -1
  27. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetContent.js +9 -26
  28. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetContent.js.map +1 -1
  29. package/dist/cjs/components/CustomFieldsWidget/useCustomFieldsFormState.js +22 -0
  30. package/dist/cjs/components/CustomFieldsWidget/useCustomFieldsFormState.js.map +1 -0
  31. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  32. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  33. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  34. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  35. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  36. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  37. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  38. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  39. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  40. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  41. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  42. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  43. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  44. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  45. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  46. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  47. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  48. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  49. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  50. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  51. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  52. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  53. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  54. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  55. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  56. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  57. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  58. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  59. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  60. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  61. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  62. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  63. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  64. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  65. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  66. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  67. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js +2 -2
  68. package/dist/cjs/components/Table/TableVirtualHeader.st.css.js.map +1 -1
  69. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  70. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  71. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  72. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  73. package/dist/cjs/components/Tags/Tags.js.map +1 -1
  74. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  75. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  76. package/dist/cjs/components/common.st.css.js +4 -4
  77. package/dist/cjs/components/common.st.css.js.map +1 -1
  78. package/dist/cjs/dashboard/WixPatternsDashboardTestProvider.js +3 -2
  79. package/dist/cjs/dashboard/WixPatternsDashboardTestProvider.js.map +1 -1
  80. package/dist/cjs/fields/DateTime/DateTime.js.map +1 -1
  81. package/dist/cjs/hooks/useCustomFieldsWidget.js +10 -2
  82. package/dist/cjs/hooks/useCustomFieldsWidget.js.map +1 -1
  83. package/dist/cjs/state/CustomFields/CustomFieldsAllNamespacesFormState.js +38 -3
  84. package/dist/cjs/state/CustomFields/CustomFieldsAllNamespacesFormState.js.map +1 -1
  85. package/dist/cjs/state/CustomFields/CustomFieldsFormState.js +54 -7
  86. package/dist/cjs/state/CustomFields/CustomFieldsFormState.js.map +1 -1
  87. package/dist/cjs/state/CustomFields/CustomFieldsWidgetState.js +31 -11
  88. package/dist/cjs/state/CustomFields/CustomFieldsWidgetState.js.map +1 -1
  89. package/dist/cjs/state/TagsBulkAssignAsyncState.js +137 -0
  90. package/dist/cjs/state/TagsBulkAssignAsyncState.js.map +1 -0
  91. package/dist/cjs/state/TagsBulkAssignPopoverState.js +38 -125
  92. package/dist/cjs/state/TagsBulkAssignPopoverState.js.map +1 -1
  93. package/dist/cjs/state/TagsBulkAssignSyncState.js +145 -0
  94. package/dist/cjs/state/TagsBulkAssignSyncState.js.map +1 -0
  95. package/dist/cjs/styles.global.css +1 -1
  96. package/dist/cjs/test-utils/AsyncJobMocks.js +50 -0
  97. package/dist/cjs/test-utils/AsyncJobMocks.js.map +1 -0
  98. package/dist/cjs/test-utils/ExtensionWidget.js +1 -1
  99. package/dist/cjs/test-utils/ExtensionWidget.js.map +1 -1
  100. package/dist/cjs/test-utils/index.js +6 -0
  101. package/dist/cjs/test-utils/index.js.map +1 -1
  102. package/dist/cjs/version.js +1 -1
  103. package/dist/cjs/version.js.map +1 -1
  104. package/dist/esm/bm/testProviderPropsOverrides.js +2 -0
  105. package/dist/esm/bm/testProviderPropsOverrides.js.map +1 -1
  106. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  107. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  108. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  109. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  110. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  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/CustomFieldsForm/CustomFieldsForm.js +5 -8
  114. package/dist/esm/components/CustomFieldsForm/CustomFieldsForm.js.map +1 -1
  115. package/dist/esm/components/CustomFieldsWidget/CustomFieldsAllNamespacesForm.js +29 -0
  116. package/dist/esm/components/CustomFieldsWidget/CustomFieldsAllNamespacesForm.js.map +1 -0
  117. package/dist/esm/components/CustomFieldsWidget/CustomFieldsEmptyStateOverrides.js +2 -0
  118. package/dist/esm/components/CustomFieldsWidget/CustomFieldsEmptyStateOverrides.js.map +1 -0
  119. package/dist/esm/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js +12 -11
  120. package/dist/esm/components/CustomFieldsWidget/CustomFieldsNamespaceForm.js.map +1 -1
  121. package/dist/esm/components/CustomFieldsWidget/CustomFieldsNamespaceSectionForm.js +23 -0
  122. package/dist/esm/components/CustomFieldsWidget/CustomFieldsNamespaceSectionForm.js.map +1 -0
  123. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidget.js +2 -8
  124. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidget.js.map +1 -1
  125. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.js +18 -5
  126. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.js.map +1 -1
  127. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetContent.js +3 -10
  128. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetContent.js.map +1 -1
  129. package/dist/esm/components/CustomFieldsWidget/useCustomFieldsFormState.js +14 -0
  130. package/dist/esm/components/CustomFieldsWidget/useCustomFieldsFormState.js.map +1 -0
  131. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  132. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  133. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  134. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  135. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  136. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  137. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  138. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  139. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  140. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  141. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  142. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  143. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  144. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  145. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  146. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  147. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  148. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  149. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  150. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  151. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  152. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  153. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  154. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  155. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  156. package/dist/esm/components/Table/TableVirtualHeader.st.css.js +2 -2
  157. package/dist/esm/components/Table/TableVirtualHeader.st.css.js.map +1 -1
  158. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  159. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  160. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  161. package/dist/esm/components/Tags/Tags.js.map +1 -1
  162. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  163. package/dist/esm/components/common.st.css.js +2 -2
  164. package/dist/esm/components/common.st.css.js.map +1 -1
  165. package/dist/esm/dashboard/WixPatternsDashboardTestProvider.js +2 -0
  166. package/dist/esm/dashboard/WixPatternsDashboardTestProvider.js.map +1 -1
  167. package/dist/esm/hooks/useCustomFieldsWidget.js +8 -1
  168. package/dist/esm/hooks/useCustomFieldsWidget.js.map +1 -1
  169. package/dist/esm/state/CustomFields/CustomFieldsAllNamespacesFormState.js +28 -1
  170. package/dist/esm/state/CustomFields/CustomFieldsAllNamespacesFormState.js.map +1 -1
  171. package/dist/esm/state/CustomFields/CustomFieldsFormState.js +30 -5
  172. package/dist/esm/state/CustomFields/CustomFieldsFormState.js.map +1 -1
  173. package/dist/esm/state/CustomFields/CustomFieldsWidgetState.js +21 -12
  174. package/dist/esm/state/CustomFields/CustomFieldsWidgetState.js.map +1 -1
  175. package/dist/esm/state/TagsBulkAssignAsyncState.js +94 -0
  176. package/dist/esm/state/TagsBulkAssignAsyncState.js.map +1 -0
  177. package/dist/esm/state/TagsBulkAssignPopoverState.js +35 -93
  178. package/dist/esm/state/TagsBulkAssignPopoverState.js.map +1 -1
  179. package/dist/esm/state/TagsBulkAssignSyncState.js +92 -0
  180. package/dist/esm/state/TagsBulkAssignSyncState.js.map +1 -0
  181. package/dist/esm/styles.global.css +1 -1
  182. package/dist/esm/test-utils/AsyncJobMocks.js +38 -0
  183. package/dist/esm/test-utils/AsyncJobMocks.js.map +1 -0
  184. package/dist/esm/test-utils/ExtensionWidget.js +1 -1
  185. package/dist/esm/test-utils/ExtensionWidget.js.map +1 -1
  186. package/dist/esm/test-utils/index.js +1 -0
  187. package/dist/esm/test-utils/index.js.map +1 -1
  188. package/dist/esm/version.js +1 -1
  189. package/dist/types/bm/testProviderPropsOverrides.d.ts.map +1 -1
  190. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  191. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  192. package/dist/types/components/CustomFieldsForm/CustomFieldsForm.d.ts +1 -2
  193. package/dist/types/components/CustomFieldsForm/CustomFieldsForm.d.ts.map +1 -1
  194. package/dist/types/components/CustomFieldsWidget/CustomFieldsAllNamespacesForm.d.ts +15 -0
  195. package/dist/types/components/CustomFieldsWidget/CustomFieldsAllNamespacesForm.d.ts.map +1 -0
  196. package/dist/types/components/CustomFieldsWidget/CustomFieldsEmptyStateOverrides.d.ts +5 -0
  197. package/dist/types/components/CustomFieldsWidget/CustomFieldsEmptyStateOverrides.d.ts.map +1 -0
  198. package/dist/types/components/CustomFieldsWidget/CustomFieldsNamespaceForm.d.ts +1 -2
  199. package/dist/types/components/CustomFieldsWidget/CustomFieldsNamespaceForm.d.ts.map +1 -1
  200. package/dist/types/components/CustomFieldsWidget/CustomFieldsNamespaceSectionForm.d.ts +15 -0
  201. package/dist/types/components/CustomFieldsWidget/CustomFieldsNamespaceSectionForm.d.ts.map +1 -0
  202. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.d.ts.map +1 -1
  203. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts +33 -7
  204. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts.map +1 -1
  205. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetContent.d.ts +2 -4
  206. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidgetContent.d.ts.map +1 -1
  207. package/dist/types/components/CustomFieldsWidget/useCustomFieldsFormState.d.ts +9 -0
  208. package/dist/types/components/CustomFieldsWidget/useCustomFieldsFormState.d.ts.map +1 -0
  209. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  210. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  211. package/dist/types/components/NestedTable/NestedTableRow.st.css.d.ts.map +1 -1
  212. package/dist/types/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.d.ts.map +1 -1
  213. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  214. package/dist/types/components/PickerTableListItem/PickerTableListItem.st.css.d.ts.map +1 -1
  215. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  216. package/dist/types/components/Table/TableVirtualHeader.st.css.d.ts.map +1 -1
  217. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
  218. package/dist/types/components/Tags/Tags.d.ts +2 -1
  219. package/dist/types/components/Tags/Tags.d.ts.map +1 -1
  220. package/dist/types/components/common.st.css.d.ts.map +1 -1
  221. package/dist/types/dashboard/WixPatternsDashboardTestProvider.d.ts.map +1 -1
  222. package/dist/types/hooks/useCustomFieldsWidget.d.ts +3 -1
  223. package/dist/types/hooks/useCustomFieldsWidget.d.ts.map +1 -1
  224. package/dist/types/state/CustomFields/CustomFieldsAllNamespacesFormState.d.ts +7 -1
  225. package/dist/types/state/CustomFields/CustomFieldsAllNamespacesFormState.d.ts.map +1 -1
  226. package/dist/types/state/CustomFields/CustomFieldsFormState.d.ts +7 -4
  227. package/dist/types/state/CustomFields/CustomFieldsFormState.d.ts.map +1 -1
  228. package/dist/types/state/CustomFields/CustomFieldsWidgetState.d.ts +9 -2
  229. package/dist/types/state/CustomFields/CustomFieldsWidgetState.d.ts.map +1 -1
  230. package/dist/types/state/TagsBulkAssignAsyncState.d.ts +40 -0
  231. package/dist/types/state/TagsBulkAssignAsyncState.d.ts.map +1 -0
  232. package/dist/types/state/TagsBulkAssignPopoverState.d.ts +5 -15
  233. package/dist/types/state/TagsBulkAssignPopoverState.d.ts.map +1 -1
  234. package/dist/types/state/TagsBulkAssignSyncState.d.ts +31 -0
  235. package/dist/types/state/TagsBulkAssignSyncState.d.ts.map +1 -0
  236. package/dist/types/test-utils/AsyncJobMocks.d.ts +13 -0
  237. package/dist/types/test-utils/AsyncJobMocks.d.ts.map +1 -0
  238. package/dist/types/test-utils/index.d.ts +1 -0
  239. package/dist/types/test-utils/index.d.ts.map +1 -1
  240. package/dist/types/testkit/enzyme.d.ts +31 -3
  241. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  242. package/dist/types/testkit/jsdom.d.ts +31 -3
  243. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  244. package/dist/types/testkit/puppeteer.d.ts +31 -3
  245. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  246. package/dist/types/version.d.ts +1 -1
  247. package/package.json +4 -4
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ exports.__esModule = true;
5
+ exports.TagsBulkAssignAsyncState = exports.POLL_INTERVAL = void 0;
6
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
+ var _mobx = require("mobx");
8
+ var _http = require("@wix/bex-utils/@wix/ambassador-infra-asyncjobs-v1-async-job/http");
9
+ const POLL_INTERVAL = exports.POLL_INTERVAL = 500;
10
+ class TagsBulkAssignAsyncState {
11
+ constructor(params) {
12
+ (0, _defineProperty2.default)(this, "collectionState", void 0);
13
+ (0, _defineProperty2.default)(this, "optimisticActions", void 0);
14
+ (0, _defineProperty2.default)(this, "container", void 0);
15
+ (0, _defineProperty2.default)(this, "tagsBIReporter", void 0);
16
+ (0, _defineProperty2.default)(this, "asyncBulkUpdateTags", void 0);
17
+ (0, _defineProperty2.default)(this, "job", null);
18
+ (0, _defineProperty2.default)(this, "pollTimeout", null);
19
+ (0, _defineProperty2.default)(this, "isDuringApplyChanges", false);
20
+ const {
21
+ collectionState,
22
+ optimisticActions,
23
+ container,
24
+ tagsBIReporter,
25
+ asyncBulkUpdateTags
26
+ } = params;
27
+ this.collectionState = collectionState;
28
+ this.optimisticActions = optimisticActions;
29
+ this.container = container;
30
+ this.tagsBIReporter = tagsBIReporter;
31
+ this.asyncBulkUpdateTags = asyncBulkUpdateTags;
32
+ (0, _mobx.makeObservable)(this, {
33
+ job: _mobx.observable.ref,
34
+ isDuringApplyChanges: _mobx.observable,
35
+ init: _mobx.action,
36
+ applyChanges: _mobx.action,
37
+ checkJobStatus: _mobx.action,
38
+ canBulkAssignAsync: _mobx.computed,
39
+ isJobCompleted: _mobx.computed,
40
+ isJobFailed: _mobx.computed,
41
+ isJobEnded: _mobx.computed,
42
+ isJobInProgress: _mobx.computed
43
+ });
44
+ }
45
+ init() {
46
+ const disposers = [() => {
47
+ if (this.pollTimeout) {
48
+ clearTimeout(this.pollTimeout);
49
+ }
50
+ }];
51
+ return () => {
52
+ disposers.forEach(disposer => disposer());
53
+ };
54
+ }
55
+ async applyChanges({
56
+ newAssignedTagIds,
57
+ newUnassignedTagIds
58
+ }) {
59
+ if (!this.asyncBulkUpdateTags) {
60
+ throw new Error('tried to bulk assign tags async without asyncBulkUpdateTags prop given');
61
+ }
62
+ this.isDuringApplyChanges = true;
63
+ const {
64
+ bulkSelect,
65
+ result
66
+ } = this.collectionState;
67
+ const {
68
+ allSelected,
69
+ selectedValues,
70
+ uncheckedValues
71
+ } = bulkSelect;
72
+ const {
73
+ jobId
74
+ } = await this.asyncBulkUpdateTags({
75
+ allSelected,
76
+ selectedValues,
77
+ uncheckedValues,
78
+ query: result.originQuery,
79
+ assignTags: {
80
+ privateTags: {
81
+ tagIds: newAssignedTagIds
82
+ }
83
+ },
84
+ unassignTags: {
85
+ privateTags: {
86
+ tagIds: newUnassignedTagIds
87
+ }
88
+ }
89
+ });
90
+ await this.checkJobStatus(jobId);
91
+ }
92
+ async checkJobStatus(jobId) {
93
+ try {
94
+ const {
95
+ data: {
96
+ job
97
+ }
98
+ } = await this.container.httpClient.request((0, _http.getAsyncJob)({
99
+ jobId
100
+ }));
101
+ (0, _mobx.runInAction)(() => {
102
+ this.job = job;
103
+ });
104
+ } catch (error) {
105
+ console.error('failed to get job status', error);
106
+ }
107
+ (0, _mobx.runInAction)(() => {
108
+ if (this.isJobInProgress) {
109
+ this.pollTimeout = setTimeout(() => this.checkJobStatus(jobId), POLL_INTERVAL);
110
+ } else {
111
+ if (this.isJobEnded) {
112
+ this.isDuringApplyChanges = false;
113
+ }
114
+ }
115
+ });
116
+ }
117
+ get isJobCompleted() {
118
+ var _this$job;
119
+ return ((_this$job = this.job) == null ? void 0 : _this$job.status) === 'FINISHED';
120
+ }
121
+ get isJobFailed() {
122
+ var _this$job2;
123
+ return ((_this$job2 = this.job) == null ? void 0 : _this$job2.status) === 'FAILED';
124
+ }
125
+ get isJobEnded() {
126
+ return this.isJobCompleted || this.isJobFailed;
127
+ }
128
+ get isJobInProgress() {
129
+ var _this$job3, _this$job4;
130
+ return ((_this$job3 = this.job) == null ? void 0 : _this$job3.status) === 'PROCESSING' || ((_this$job4 = this.job) == null ? void 0 : _this$job4.status) === 'INITIALIZED';
131
+ }
132
+ get canBulkAssignAsync() {
133
+ return !!this.asyncBulkUpdateTags;
134
+ }
135
+ }
136
+ exports.TagsBulkAssignAsyncState = TagsBulkAssignAsyncState;
137
+ //# sourceMappingURL=TagsBulkAssignAsyncState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_mobx","require","_http","POLL_INTERVAL","exports","TagsBulkAssignAsyncState","constructor","params","_defineProperty2","default","collectionState","optimisticActions","container","tagsBIReporter","asyncBulkUpdateTags","makeObservable","job","observable","ref","isDuringApplyChanges","init","action","applyChanges","checkJobStatus","canBulkAssignAsync","computed","isJobCompleted","isJobFailed","isJobEnded","isJobInProgress","disposers","pollTimeout","clearTimeout","forEach","disposer","newAssignedTagIds","newUnassignedTagIds","Error","bulkSelect","result","allSelected","selectedValues","uncheckedValues","jobId","query","originQuery","assignTags","privateTags","tagIds","unassignTags","data","httpClient","request","getAsyncJob","runInAction","error","console","setTimeout","_this$job","status","_this$job2","_this$job3","_this$job4"],"sources":["../../../src/state/TagsBulkAssignAsyncState.ts"],"sourcesContent":["import { FiltersMap, Tags } from '@wix/bex-core';\n\nimport {\n TagsBulkAssignPopoverState,\n TagsBulkAssignPopoverStateParams,\n} from './TagsBulkAssignPopoverState';\nimport { BulkActionModalRenderPropParams } from '../components/BulkAction';\nimport {\n computed,\n makeObservable,\n observable,\n runInAction,\n action,\n} from 'mobx';\nimport { getAsyncJob } from '@wix/bex-utils/@wix/ambassador-infra-asyncjobs-v1-async-job/http';\nimport { AsyncJob } from '@wix/bex-utils/@wix/ambassador-infra-asyncjobs-v1-async-job/types';\n\nexport const POLL_INTERVAL = 500;\nexport interface AsyncBulkUpdateTagsParams<T, F extends FiltersMap>\n extends Pick<\n BulkActionModalRenderPropParams<T, F>,\n 'allSelected' | 'selectedValues' | 'uncheckedValues' | 'query'\n > {\n assignTags: Tags;\n unassignTags: Tags;\n}\n\nexport interface TagsBulkAssignAsyncStateParams<T, F extends FiltersMap>\n extends Pick<\n TagsBulkAssignPopoverStateParams<T, F>,\n 'asyncBulkUpdateTags' | 'collectionState'\n > {\n container: TagsBulkAssignPopoverState<T, F>['container'];\n optimisticActions: TagsBulkAssignPopoverState<T, F>['optimisticActions'];\n tagsBIReporter: TagsBulkAssignPopoverState<T, F>['tagsBIReporter'];\n}\n\nexport class TagsBulkAssignAsyncState<T, F extends FiltersMap> {\n readonly collectionState;\n readonly optimisticActions;\n readonly container;\n readonly tagsBIReporter;\n readonly asyncBulkUpdateTags;\n\n job: AsyncJob | null = null;\n pollTimeout: NodeJS.Timeout | null = null;\n isDuringApplyChanges = false;\n\n constructor(params: TagsBulkAssignAsyncStateParams<T, F>) {\n const {\n collectionState,\n optimisticActions,\n container,\n tagsBIReporter,\n asyncBulkUpdateTags,\n } = params;\n this.collectionState = collectionState;\n this.optimisticActions = optimisticActions;\n this.container = container;\n this.tagsBIReporter = tagsBIReporter;\n this.asyncBulkUpdateTags = asyncBulkUpdateTags;\n\n makeObservable(this, {\n job: observable.ref,\n isDuringApplyChanges: observable,\n init: action,\n applyChanges: action,\n checkJobStatus: action,\n canBulkAssignAsync: computed,\n isJobCompleted: computed,\n isJobFailed: computed,\n isJobEnded: computed,\n isJobInProgress: computed,\n });\n }\n\n init() {\n const disposers = [\n () => {\n if (this.pollTimeout) {\n clearTimeout(this.pollTimeout);\n }\n },\n ];\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n async applyChanges({\n newAssignedTagIds,\n newUnassignedTagIds,\n }: {\n newAssignedTagIds: string[];\n newUnassignedTagIds: string[];\n }) {\n if (!this.asyncBulkUpdateTags) {\n throw new Error(\n 'tried to bulk assign tags async without asyncBulkUpdateTags prop given',\n );\n }\n\n this.isDuringApplyChanges = true;\n const { bulkSelect, result } = this.collectionState;\n const { allSelected, selectedValues, uncheckedValues } = bulkSelect;\n\n const { jobId } = await this.asyncBulkUpdateTags({\n allSelected,\n selectedValues,\n uncheckedValues,\n query: result.originQuery,\n assignTags: { privateTags: { tagIds: newAssignedTagIds } },\n unassignTags: { privateTags: { tagIds: newUnassignedTagIds } },\n });\n\n await this.checkJobStatus(jobId);\n }\n\n async checkJobStatus(jobId: string) {\n try {\n const {\n data: { job },\n } = await this.container.httpClient.request(getAsyncJob({ jobId }));\n runInAction(() => {\n this.job = job as AsyncJob;\n });\n } catch (error) {\n console.error('failed to get job status', error);\n }\n\n runInAction(() => {\n if (this.isJobInProgress) {\n this.pollTimeout = setTimeout(\n () => this.checkJobStatus(jobId),\n POLL_INTERVAL,\n );\n } else {\n if (this.isJobEnded) {\n this.isDuringApplyChanges = false;\n }\n }\n });\n }\n\n get isJobCompleted() {\n return this.job?.status === 'FINISHED';\n }\n\n get isJobFailed() {\n return this.job?.status === 'FAILED';\n }\n\n get isJobEnded() {\n return this.isJobCompleted || this.isJobFailed;\n }\n\n get isJobInProgress() {\n return (\n this.job?.status === 'PROCESSING' || this.job?.status === 'INITIALIZED'\n );\n }\n\n get canBulkAssignAsync() {\n return !!this.asyncBulkUpdateTags;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,13 +2,16 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  exports.__esModule = true;
5
- exports.TagsBulkAssignPopoverState = void 0;
5
+ exports.TagsBulkAssignPopoverState = exports.MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _mobx = require("mobx");
8
8
  var _bexCore = require("@wix/bex-core");
9
9
  var _bi = require("@wix/bex-core/bi");
10
10
  var _uuid = require("uuid");
11
+ var _TagsBulkAssignAsyncState = require("./TagsBulkAssignAsyncState");
12
+ var _TagsBulkAssignSyncState = require("./TagsBulkAssignSyncState");
11
13
  const origin = 'bulk_assign_popover';
14
+ const MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC = exports.MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC = 100;
12
15
  class TagsBulkAssignPopoverState {
13
16
  constructor({
14
17
  tagsManagementState,
@@ -22,8 +25,8 @@ class TagsBulkAssignPopoverState {
22
25
  (0, _defineProperty2.default)(this, "collectionState", void 0);
23
26
  (0, _defineProperty2.default)(this, "optimisticActions", void 0);
24
27
  (0, _defineProperty2.default)(this, "tagsModalState", void 0);
25
- (0, _defineProperty2.default)(this, "bulkUpdateTags", void 0);
26
- (0, _defineProperty2.default)(this, "asyncBulkUpdateTags", void 0);
28
+ (0, _defineProperty2.default)(this, "bulkAssignSyncState", void 0);
29
+ (0, _defineProperty2.default)(this, "bulkAssignAsyncState", void 0);
27
30
  (0, _defineProperty2.default)(this, "container", void 0);
28
31
  (0, _defineProperty2.default)(this, "tagsBIReporter", void 0);
29
32
  (0, _defineProperty2.default)(this, "getTags", void 0);
@@ -34,67 +37,6 @@ class TagsBulkAssignPopoverState {
34
37
  (0, _defineProperty2.default)(this, "optimisticNewTag", null);
35
38
  (0, _defineProperty2.default)(this, "isShown", false);
36
39
  (0, _defineProperty2.default)(this, "searchValue", '');
37
- (0, _defineProperty2.default)(this, "jobId", undefined);
38
- (0, _defineProperty2.default)(this, "maxSelectedEntitiesNum", 100);
39
- (0, _defineProperty2.default)(this, "bulkUpdateTagsSync", () => {
40
- this._reportApplyBi();
41
- const items = this._calcOptimisticItems();
42
- const entityIds = this.collectionState.bulkSelect.selectedIds;
43
- const assignedTagIds = this.newAssignedTagIds;
44
- const newUnassignedTagIds = this.newUnassignedTagIds;
45
- this.optimisticActions.updateMany(items, {
46
- keepPosition: true,
47
- submit: async () => {
48
- return this.bulkUpdateTags({
49
- entityIds,
50
- assignTags: {
51
- privateTags: {
52
- tagIds: assignedTagIds
53
- }
54
- },
55
- unassignTags: {
56
- privateTags: {
57
- tagIds: newUnassignedTagIds
58
- }
59
- }
60
- });
61
- },
62
- successToast: {
63
- biName: 'cairo-update-bulk-assign-tags-success',
64
- message: this.container.translate('cairo.tags.applyChanges.toast.success')
65
- },
66
- showUndoToast: true,
67
- errorToast: () => ({
68
- biName: 'cairo-update-bulk-assign-tags-error',
69
- message: this.container.translate('cairo.tags.collectionPage.toast.update.error')
70
- }),
71
- onUndo: this._reportUndoBi
72
- });
73
- });
74
- (0, _defineProperty2.default)(this, "bulkUpdateTagsAsync", async () => {
75
- var _this$asyncBulkUpdate;
76
- const {
77
- jobId
78
- } = (await ((_this$asyncBulkUpdate = this.asyncBulkUpdateTags) == null ? void 0 : _this$asyncBulkUpdate.call(this, {
79
- allSelected: this.collectionState.bulkSelect.allSelected,
80
- selectedValues: this.collectionState.bulkSelect.selectedValues,
81
- uncheckedValues: this.collectionState.bulkSelect.uncheckedValues,
82
- query: this.collectionState.result.originQuery,
83
- assignTags: {
84
- privateTags: {
85
- tagIds: this.newAssignedTagIds
86
- }
87
- },
88
- unassignTags: {
89
- privateTags: {
90
- tagIds: this.newUnassignedTagIds
91
- }
92
- }
93
- }))) || {
94
- jobId: undefined
95
- };
96
- this.jobId = jobId;
97
- });
98
40
  (0, _defineProperty2.default)(this, "assignTag", async ({
99
41
  tag
100
42
  }) => {
@@ -149,38 +91,7 @@ class TagsBulkAssignPopoverState {
149
91
  indeterminateTagIds
150
92
  };
151
93
  });
152
- (0, _defineProperty2.default)(this, "_calItemUpdatedTagsIds", item => {
153
- var _this$getTags2, _tags$privateTags2;
154
- const tags = item.tags ?? ((_this$getTags2 = this.getTags) == null ? void 0 : _this$getTags2.call(this, item));
155
- const currentTagIds = (tags == null || (_tags$privateTags2 = tags.privateTags) == null ? void 0 : _tags$privateTags2.tagIds) || [];
156
- const updatedTagIds = Array.from(new Set([...currentTagIds, ...this.newAssignedTagIds].filter(tagId => !this.newUnassignedTagIds.includes(tagId))));
157
- return updatedTagIds;
158
- });
159
- (0, _defineProperty2.default)(this, "_calcOptimisticItems", () => {
160
- return this.collectionState.result.items.map(item => {
161
- const selectedIds = this.collectionState.bulkSelect.selectedIds;
162
- const itemKey = this.collectionState.itemKey(item);
163
- if (!selectedIds.includes(itemKey)) {
164
- return item;
165
- }
166
- const updatedTagIds = this._calItemUpdatedTagsIds(item);
167
- return {
168
- ...item,
169
- tags: {
170
- privateTags: {
171
- tagIds: updatedTagIds
172
- }
173
- }
174
- };
175
- });
176
- });
177
94
  (0, _defineProperty2.default)(this, "_isInitialUnassignedTag", tag => !this.initialIndeterminateTagIds.includes(tag.id) && !this.initialSelectedIds.includes(tag.id));
178
- (0, _defineProperty2.default)(this, "_reportUndoBi", () => {
179
- this.tagsBIReporter.reportBi((0, _bi.cairoUndoClicked)({
180
- actionName: 'Save',
181
- changedAttributes: 'Tags Assignment'
182
- }));
183
- });
184
95
  this.tagsManagementState = tagsManagementState;
185
96
  this.collectionState = collectionState;
186
97
  this.optimisticActions = collectionState._optimisticActions ?? new _bexCore.CollectionOptimisticActions({
@@ -196,14 +107,26 @@ class TagsBulkAssignPopoverState {
196
107
  location: 'Bulk assign tags popover'
197
108
  });
198
109
  this.tagsModalState = tagsModalState;
199
- this.bulkUpdateTags = bulkUpdateTags;
200
- this.asyncBulkUpdateTags = asyncBulkUpdateTags;
201
110
  this.container = tagsManagementState.container;
202
111
  this.getTags = getTags;
112
+ this.bulkAssignSyncState = new _TagsBulkAssignSyncState.TagsBulkAssignSyncState({
113
+ collectionState,
114
+ optimisticActions: this.optimisticActions,
115
+ container: this.container,
116
+ tagsBIReporter: this.tagsBIReporter,
117
+ getTags,
118
+ bulkUpdateTags
119
+ });
120
+ this.bulkAssignAsyncState = new _TagsBulkAssignAsyncState.TagsBulkAssignAsyncState({
121
+ collectionState,
122
+ optimisticActions: this.optimisticActions,
123
+ container: this.container,
124
+ tagsBIReporter: this.tagsBIReporter,
125
+ asyncBulkUpdateTags
126
+ });
203
127
  (0, _mobx.makeObservable)(this, {
204
128
  init: _mobx.action,
205
129
  isShown: _mobx.observable,
206
- jobId: _mobx.observable,
207
130
  initialSelectedIds: _mobx.observable,
208
131
  initialIndeterminateTagIds: _mobx.observable,
209
132
  indeterminateTagIds: _mobx.observable,
@@ -222,7 +145,7 @@ class TagsBulkAssignPopoverState {
222
145
  });
223
146
  }
224
147
  init() {
225
- const disposers = [this.optimisticActions.init()];
148
+ const disposers = [this.optimisticActions.init(), this.bulkAssignAsyncState.init()];
226
149
  return () => {
227
150
  disposers.forEach(disposer => disposer());
228
151
  };
@@ -284,10 +207,20 @@ class TagsBulkAssignPopoverState {
284
207
  });
285
208
  }
286
209
  async applyChanges() {
210
+ const {
211
+ searchValue,
212
+ newAssignedTagIds,
213
+ newUnassignedTagIds
214
+ } = this;
215
+ const params = {
216
+ searchValue,
217
+ newAssignedTagIds,
218
+ newUnassignedTagIds
219
+ };
287
220
  if (this.shouldlUseBulkSync) {
288
- this.bulkUpdateTagsSync();
221
+ this.bulkAssignSyncState.applyChanges(params);
289
222
  } else {
290
- await this.bulkUpdateTagsAsync();
223
+ await this.bulkAssignAsyncState.applyChanges(params);
291
224
  }
292
225
  this.closePopover();
293
226
  }
@@ -364,11 +297,11 @@ class TagsBulkAssignPopoverState {
364
297
  allSelectedItemsFetched,
365
298
  selectedCountOrTotal
366
299
  } = this.collectionState.bulkSelect;
367
- return allSelectedItemsFetched && selectedCountOrTotal < this.maxSelectedEntitiesNum;
300
+ return allSelectedItemsFetched && selectedCountOrTotal < MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC;
368
301
  }
369
302
  get canUseBulkUpdate() {
370
- // if we have jobId we are in the middle of async job and should not run another one
371
- if (this.jobId) {
303
+ // Cannot invoke bulk assign while applying async changes
304
+ if (this.bulkAssignAsyncState.isDuringApplyChanges) {
372
305
  return false;
373
306
  }
374
307
 
@@ -378,7 +311,7 @@ class TagsBulkAssignPopoverState {
378
311
  }
379
312
 
380
313
  // can use async
381
- return !!this.asyncBulkUpdateTags;
314
+ return this.bulkAssignAsyncState.canBulkAssignAsync;
382
315
  }
383
316
  get isError() {
384
317
  return this.tagsManagementState.isError;
@@ -413,26 +346,6 @@ class TagsBulkAssignPopoverState {
413
346
  _reportSearchEventsBi(event) {
414
347
  return this.tagsBIReporter.events.emit(event);
415
348
  }
416
- _reportApplyBi() {
417
- let actionName = 'Both';
418
- if (this.newAssignedTagIds.length === 0) {
419
- actionName = 'Remove';
420
- } else if (this.newUnassignedTagIds.length === 0) {
421
- actionName = 'Assign';
422
- }
423
- const {
424
- selectedIds: selectedItemsIds
425
- } = this.collectionState.bulkSelect;
426
- this.tagsBIReporter.reportBi((0, _bi.cairoAssignTagsToEntities)({
427
- actionName,
428
- isFromSearch: this.searchValue !== '',
429
- itemIds: JSON.stringify(selectedItemsIds),
430
- numItems: selectedItemsIds.length,
431
- assignedTags: JSON.stringify(this.newAssignedTagIds),
432
- unAssignedTags: JSON.stringify(this.newUnassignedTagIds),
433
- origin: 'Assign Tags Modal'
434
- }));
435
- }
436
349
  }
437
350
  exports.TagsBulkAssignPopoverState = TagsBulkAssignPopoverState;
438
351
  //# sourceMappingURL=TagsBulkAssignPopoverState.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_bexCore","_bi","_uuid","origin","TagsBulkAssignPopoverState","constructor","tagsManagementState","collectionState","tagsModalState","bulkUpdateTags","asyncBulkUpdateTags","getTags","_defineProperty2","default","undefined","_reportApplyBi","items","_calcOptimisticItems","entityIds","bulkSelect","selectedIds","assignedTagIds","newAssignedTagIds","newUnassignedTagIds","optimisticActions","updateMany","keepPosition","submit","assignTags","privateTags","tagIds","unassignTags","successToast","biName","message","container","translate","showUndoToast","errorToast","onUndo","_reportUndoBi","_this$asyncBulkUpdate","jobId","call","allSelected","selectedValues","uncheckedValues","query","result","originQuery","tag","optimisticNewTag","includes","id","push","tagName","tagId","name","createdDate","Date","updatedAssignedTagIds","filter","assignedTagId","selectedKeyedItems","tagsCount","reduce","forEach","selectedKeyedItem","_this$getTags","_tags$privateTags","tags","item","entityTagIds","Set","entityTagId","selectedTagIds","indeterminateTagIds","tagCount","Object","entries","length","_this$getTags2","_tags$privateTags2","currentTagIds","updatedTagIds","Array","from","map","itemKey","_calItemUpdatedTagsIds","initialIndeterminateTagIds","initialSelectedIds","tagsBIReporter","reportBi","cairoUndoClicked","actionName","changedAttributes","_optimisticActions","CollectionOptimisticActions","collection","TagsBIReporter","createBILogger","componentType","fqdn","location","makeObservable","init","action","isShown","observable","searchValue","showPopover","closePopover","applyChanges","handleManageTagsCtaClick","handleItemSelect","handleSearchChange","createAndAssignTag","retry","ref","assignedTags","computed","disposers","disposer","_reportPopoverShowChangedBi","_initSelectionState","_reportSearchEventsBi","slice","TAG_MAX_LENGTH","uuid","assignTagOptimistic","createTag","filteredListSize","isFromSearch","onSuccess","newTag","assignTag","optimisticActionParams","error","_this$container$error","_this$container$error2","resolvedError","errorHandler","getResolvedError","shouldlUseBulkSync","bulkUpdateTagsSync","bulkUpdateTagsAsync","openManageTagsModal","tagSubOrigin","itemId","currentTag","find","indeterminateTagId","assignedWithOptimisticTagIds","unassignTag","_reportSearchChangedBi","isInEmptyState","isSuccessful","tagOptions","sort","tag1","tag2","isTag1InitialUnassigned","_isInitialUnassignedTag","isTag2InitialUnassigned","valueOf","savedAssignedTags","element","Boolean","allSelectedItemsFetched","selectedCountOrTotal","maxSelectedEntitiesNum","canUseBulkUpdate","isError","isLoading","isDirty","_calcTagsCount","_getSelectedTagsIdsStatus","isOpened","cairoFiltersPanelUsed","feature","onSearch","_clearAllEvents","event","events","emit","selectedItemsIds","cairoAssignTagsToEntities","itemIds","JSON","stringify","numItems","unAssignedTags","exports"],"sources":["../../../src/state/TagsBulkAssignPopoverState.ts"],"sourcesContent":["import { action, makeObservable, computed, observable } from 'mobx';\nimport { TagsModalState } from './TagsModalState';\nimport { Tag } from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport {\n CollectionOptimisticActions,\n CollectionState,\n FiltersMap,\n KeyedItem,\n TAG_MAX_LENGTH,\n Tags,\n TagsBIReporter,\n TagsManagementState,\n} from '@wix/bex-core';\nimport {\n cairoAssignTagsToEntities,\n cairoFiltersPanelUsed,\n cairoUndoClicked,\n} from '@wix/bex-core/bi';\nimport { v4 as uuid } from 'uuid';\nimport { TagsProps } from '../components/Tags';\nimport { BulkActionModalRenderPropParams } from '../components/BulkAction';\n\nconst origin = 'bulk_assign_popover';\n\nexport interface BulkUpdateTagsParams {\n entityIds: string[];\n assignTags: Tags;\n unassignTags: Tags;\n}\n\nexport interface TagsBulkAssignPopoverStateParams<T, F extends FiltersMap>\n extends Pick<\n TagsProps<T, F>,\n 'bulkUpdateTags' | 'asyncBulkUpdateTags' | 'getTags'\n > {\n readonly tagsManagementState: TagsManagementState;\n readonly tagsModalState: TagsModalState;\n readonly collectionState: CollectionState<T, F>;\n}\n\nexport interface AsyncBulkUpdateTagsParams<T, F extends FiltersMap>\n extends Pick<\n BulkActionModalRenderPropParams<T, F>,\n 'allSelected' | 'selectedValues' | 'uncheckedValues' | 'query'\n > {\n assignTags: Tags;\n unassignTags: Tags;\n}\n\nexport class TagsBulkAssignPopoverState<T, F extends FiltersMap> {\n readonly tagsManagementState: TagsManagementState;\n readonly collectionState;\n readonly optimisticActions: CollectionOptimisticActions<T, F>;\n readonly tagsModalState;\n readonly bulkUpdateTags: TagsProps<T, F>['bulkUpdateTags'];\n readonly asyncBulkUpdateTags: TagsProps<T, F>['asyncBulkUpdateTags'];\n readonly container;\n readonly tagsBIReporter: TagsBIReporter;\n readonly getTags?: (item: T) => Tags;\n initialSelectedIds: string[] = [];\n initialIndeterminateTagIds: string[] = [];\n indeterminateTagIds: string[] = [];\n assignedTagIds: string[] = [];\n optimisticNewTag: Tag | null = null;\n isShown = false;\n searchValue: string = '';\n jobId?: string = undefined;\n\n maxSelectedEntitiesNum = 100;\n\n constructor({\n tagsManagementState,\n collectionState,\n tagsModalState,\n bulkUpdateTags,\n asyncBulkUpdateTags,\n getTags,\n }: TagsBulkAssignPopoverStateParams<T, F>) {\n this.tagsManagementState = tagsManagementState;\n this.collectionState = collectionState;\n this.optimisticActions =\n collectionState._optimisticActions ??\n new CollectionOptimisticActions<T, F>({\n container: this.tagsManagementState.container,\n collection: this.collectionState,\n });\n this.tagsBIReporter = new TagsBIReporter({\n collection: this.tagsManagementState.collection,\n reportBi: this.tagsManagementState.container.createBILogger({\n componentType: 'TagsBulkAssignPopover',\n ...tagsManagementState.fqdn,\n }),\n location: 'Bulk assign tags popover',\n });\n this.tagsModalState = tagsModalState;\n this.bulkUpdateTags = bulkUpdateTags;\n this.asyncBulkUpdateTags = asyncBulkUpdateTags;\n this.container = tagsManagementState.container;\n this.getTags = getTags;\n\n makeObservable(this, {\n init: action,\n isShown: observable,\n jobId: observable,\n initialSelectedIds: observable,\n initialIndeterminateTagIds: observable,\n indeterminateTagIds: observable,\n searchValue: observable,\n showPopover: action,\n closePopover: action,\n applyChanges: action,\n handleManageTagsCtaClick: action,\n handleItemSelect: action,\n handleSearchChange: action,\n createAndAssignTag: action,\n retry: action,\n assignedTagIds: observable,\n optimisticNewTag: observable.ref,\n assignedTags: computed,\n });\n }\n\n init() {\n const disposers = [this.optimisticActions.init()];\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n async showPopover() {\n if (this.isShown) {\n return;\n }\n\n this.isShown = true;\n this._reportPopoverShowChangedBi(true);\n const { selectedTagIds, indeterminateTagIds } = this._initSelectionState();\n this.initialSelectedIds = selectedTagIds;\n this.assignedTagIds = selectedTagIds;\n this.initialIndeterminateTagIds = indeterminateTagIds;\n this.indeterminateTagIds = indeterminateTagIds;\n }\n\n closePopover() {\n this._reportPopoverShowChangedBi(false);\n this._reportSearchEventsBi('blur');\n this.isShown = false;\n this.assignedTagIds = [];\n this.initialSelectedIds = [];\n this.initialIndeterminateTagIds = [];\n this.indeterminateTagIds = [];\n }\n\n async createAndAssignTag(name: string) {\n this._reportSearchEventsBi('add');\n const tagName = name.slice(0, TAG_MAX_LENGTH);\n const id = uuid();\n this.assignTagOptimistic(tagName, id);\n this.tagsManagementState.createTag({\n name,\n id,\n filteredListSize: 0,\n origin,\n isFromSearch: true,\n tagsBIReporter: this.tagsBIReporter,\n onSuccess: (newTag) => this.assignTag({ tag: newTag }),\n optimisticActionParams: {\n successToast: {\n biName: 'cairo-save-new-tag-success',\n message: this.container.translate(\n 'cairo.tags.popover.tagCreated.toast.success',\n ),\n },\n errorToast: (error) => {\n const resolvedError =\n this.container.errorHandler.getResolvedError?.(error);\n return {\n biName: 'cairo-save-new-tag-error',\n message:\n resolvedError?.message ??\n this.container.translate(\n 'cairo.tags.collectionPage.toast.create.error',\n ),\n action: resolvedError?.action,\n };\n },\n },\n });\n }\n\n async applyChanges() {\n if (this.shouldlUseBulkSync) {\n this.bulkUpdateTagsSync();\n } else {\n await this.bulkUpdateTagsAsync();\n }\n\n this.closePopover();\n }\n\n bulkUpdateTagsSync = () => {\n this._reportApplyBi();\n const items = this._calcOptimisticItems();\n const entityIds = this.collectionState.bulkSelect.selectedIds;\n const assignedTagIds = this.newAssignedTagIds;\n const newUnassignedTagIds = this.newUnassignedTagIds;\n this.optimisticActions.updateMany(items, {\n keepPosition: true,\n submit: async () => {\n return this.bulkUpdateTags({\n entityIds,\n assignTags: { privateTags: { tagIds: assignedTagIds } },\n unassignTags: { privateTags: { tagIds: newUnassignedTagIds } },\n });\n },\n successToast: {\n biName: 'cairo-update-bulk-assign-tags-success',\n message: this.container.translate(\n 'cairo.tags.applyChanges.toast.success',\n ),\n },\n showUndoToast: true,\n errorToast: () => ({\n biName: 'cairo-update-bulk-assign-tags-error',\n message: this.container.translate(\n 'cairo.tags.collectionPage.toast.update.error',\n ),\n }),\n onUndo: this._reportUndoBi,\n });\n };\n\n bulkUpdateTagsAsync = async () => {\n const { jobId } = (await this.asyncBulkUpdateTags?.({\n allSelected: this.collectionState.bulkSelect.allSelected,\n selectedValues: this.collectionState.bulkSelect.selectedValues,\n uncheckedValues: this.collectionState.bulkSelect.uncheckedValues,\n query: this.collectionState.result.originQuery,\n assignTags: { privateTags: { tagIds: this.newAssignedTagIds } },\n unassignTags: { privateTags: { tagIds: this.newUnassignedTagIds } },\n })) || { jobId: undefined };\n\n this.jobId = jobId;\n };\n\n handleManageTagsCtaClick() {\n this.closePopover();\n this.tagsModalState.openManageTagsModal({\n origin,\n tagSubOrigin: 'bulkAssignPopover',\n });\n }\n\n handleItemSelect(itemId: string) {\n const currentTag = this.tagsManagementState.items.find(\n (tag) => tag.id === itemId,\n );\n if (!currentTag) {\n return;\n }\n\n this._reportSearchEventsBi('select');\n\n if (\n this.initialIndeterminateTagIds.includes(itemId) &&\n this.indeterminateTagIds.includes(itemId)\n ) {\n this.indeterminateTagIds = this.indeterminateTagIds.filter(\n (indeterminateTagId) => indeterminateTagId !== itemId,\n );\n }\n\n if (this.assignedWithOptimisticTagIds.includes(itemId)) {\n this.unassignTag({ tag: currentTag });\n } else {\n this.assignTag({ tag: currentTag });\n }\n }\n\n handleSearchChange(searchValue: string) {\n this._reportSearchChangedBi(searchValue);\n this.searchValue = searchValue;\n }\n\n retry() {\n this.tagsManagementState.retry();\n }\n\n get isInEmptyState() {\n return (\n this.tagsManagementState.isSuccessful &&\n this.tagsManagementState.items.length === 0\n );\n }\n\n get tagOptions() {\n return this.tagsManagementState.items.sort((tag1, tag2) => {\n const isTag1InitialUnassigned = this._isInitialUnassignedTag(tag1);\n const isTag2InitialUnassigned = this._isInitialUnassignedTag(tag2);\n\n // Showing first assigned/indeterminate tags, and unassigned tags below it\n if (!isTag1InitialUnassigned && isTag2InitialUnassigned) {\n return -1;\n }\n\n if (isTag1InitialUnassigned && !isTag2InitialUnassigned) {\n return 1;\n }\n\n // Sub order by showing first newer tags\n return (\n new Date(tag2.createdDate!).valueOf() -\n new Date(tag1.createdDate!).valueOf()\n );\n });\n }\n\n get assignedTags() {\n const savedAssignedTags = this.assignedTagIds\n .map((tagId) => {\n return this.tagsManagementState.items.find((tag) => tag.id === tagId);\n })\n .filter((element) => Boolean(element)) as Tag[];\n return this.optimisticNewTag\n ? [...savedAssignedTags, this.optimisticNewTag]\n : savedAssignedTags;\n }\n\n get assignedWithOptimisticTagIds() {\n return this.assignedTags.map((tag) => tag.id!);\n }\n\n get newAssignedTagIds() {\n return this.assignedTagIds.filter(\n (tagId) => !this.initialSelectedIds.includes(tagId),\n );\n }\n\n get newUnassignedTagIds() {\n return [\n ...this.initialSelectedIds.filter(\n (tagId) => !this.assignedTagIds.includes(tagId),\n ),\n ...this.initialIndeterminateTagIds.filter(\n (tagId) =>\n ![...this.assignedTagIds, ...this.indeterminateTagIds].includes(\n tagId,\n ),\n ),\n ];\n }\n\n get shouldlUseBulkSync() {\n const { allSelectedItemsFetched, selectedCountOrTotal } =\n this.collectionState.bulkSelect;\n\n return (\n allSelectedItemsFetched &&\n selectedCountOrTotal < this.maxSelectedEntitiesNum\n );\n }\n\n get canUseBulkUpdate() {\n // if we have jobId we are in the middle of async job and should not run another one\n if (this.jobId) {\n return false;\n }\n\n // can use sync\n if (this.shouldlUseBulkSync) {\n return true;\n }\n\n // can use async\n return !!this.asyncBulkUpdateTags;\n }\n\n get isError() {\n return this.tagsManagementState.isError;\n }\n\n get isLoading() {\n return this.tagsManagementState.isLoading;\n }\n\n get isDirty() {\n return (\n this.newAssignedTagIds.length > 0 || this.newUnassignedTagIds.length > 0\n );\n }\n\n assignTag = async ({ tag }: { tag: Tag }) => {\n this.optimisticNewTag = null;\n if (this.assignedTagIds.includes(tag.id!)) {\n return;\n }\n\n this.assignedTagIds.push(tag.id!);\n };\n\n assignTagOptimistic = (tagName: string, tagId: string = 'fake tag id') => {\n this.optimisticNewTag = {\n id: tagId,\n name: tagName,\n createdDate: new Date(),\n };\n };\n\n unassignTag = async ({ tag }: { tag: Tag }) => {\n const updatedAssignedTagIds = this.assignedTagIds.filter(\n (assignedTagId) => assignedTagId !== tag.id,\n );\n\n this.assignedTagIds = updatedAssignedTagIds;\n };\n\n private _calcTagsCount = (selectedKeyedItems: KeyedItem<T>[]) => {\n const tagsCount = this.tagsManagementState.items.reduce(\n (result: Record<string, number>, tag) => {\n result[tag.id!] = 0;\n return result;\n },\n {},\n );\n\n selectedKeyedItems.forEach((selectedKeyedItem) => {\n const tags: Tags =\n (selectedKeyedItem.item as any).tags ??\n this.getTags?.(selectedKeyedItem.item);\n\n const entityTagIds = (tags?.privateTags?.tagIds as string[]) || [];\n\n [...new Set(entityTagIds)].forEach((entityTagId) => {\n if (entityTagId in tagsCount) {\n tagsCount[entityTagId]++;\n }\n });\n });\n return tagsCount;\n };\n\n private _getSelectedTagsIdsStatus = (\n tagsCount: Record<string, number>,\n selectedKeyedItems: KeyedItem<T>[],\n ) => {\n const selectedTagIds: string[] = [];\n const indeterminateTagIds: string[] = [];\n for (const [tagId, tagCount] of Object.entries(tagsCount)) {\n if (tagCount === selectedKeyedItems.length) {\n selectedTagIds.push(tagId);\n } else if (tagCount > 0) {\n indeterminateTagIds.push(tagId);\n }\n }\n return { selectedTagIds, indeterminateTagIds };\n };\n\n private _calItemUpdatedTagsIds = (item: T) => {\n const tags: Tags = (item as any).tags ?? this.getTags?.(item);\n\n const currentTagIds = (tags?.privateTags?.tagIds as string[]) || [];\n\n const updatedTagIds = Array.from(\n new Set(\n [...currentTagIds, ...this.newAssignedTagIds].filter(\n (tagId) => !this.newUnassignedTagIds.includes(tagId),\n ),\n ),\n );\n return updatedTagIds;\n };\n\n private _calcOptimisticItems = () => {\n return this.collectionState.result.items.map((item: T) => {\n const selectedIds = this.collectionState.bulkSelect.selectedIds;\n const itemKey = this.collectionState.itemKey(item);\n if (!selectedIds.includes(itemKey)) {\n return item;\n }\n const updatedTagIds = this._calItemUpdatedTagsIds(item);\n return { ...item, tags: { privateTags: { tagIds: updatedTagIds } } };\n });\n };\n\n private _initSelectionState() {\n const { selectedKeyedItems } = this.collectionState.bulkSelect;\n const tagsCount = this._calcTagsCount(selectedKeyedItems);\n return this._getSelectedTagsIdsStatus(tagsCount, selectedKeyedItems);\n }\n\n private _isInitialUnassignedTag = (tag: Tag) =>\n !this.initialIndeterminateTagIds.includes(tag.id!) &&\n !this.initialSelectedIds.includes(tag.id!);\n\n private _reportPopoverShowChangedBi(isOpened: boolean) {\n this.tagsBIReporter.reportBi(\n cairoFiltersPanelUsed({\n isOpened,\n feature: 'Tags',\n origin: 'Assign Tags',\n }),\n );\n }\n\n private _reportSearchChangedBi(searchValue: string) {\n if (searchValue !== '') {\n this.tagsBIReporter.onSearch(searchValue);\n } else {\n this.tagsBIReporter._clearAllEvents();\n }\n }\n\n private _reportSearchEventsBi(event: 'add' | 'select' | 'blur') {\n return this.tagsBIReporter.events.emit(event);\n }\n\n private _reportApplyBi() {\n let actionName = 'Both';\n if (this.newAssignedTagIds.length === 0) {\n actionName = 'Remove';\n } else if (this.newUnassignedTagIds.length === 0) {\n actionName = 'Assign';\n }\n\n const { selectedIds: selectedItemsIds } = this.collectionState.bulkSelect;\n\n this.tagsBIReporter.reportBi(\n cairoAssignTagsToEntities({\n actionName,\n isFromSearch: this.searchValue !== '',\n itemIds: JSON.stringify(selectedItemsIds),\n numItems: selectedItemsIds.length,\n assignedTags: JSON.stringify(this.newAssignedTagIds),\n unAssignedTags: JSON.stringify(this.newUnassignedTagIds),\n origin: 'Assign Tags Modal',\n }),\n );\n }\n\n private _reportUndoBi = () => {\n this.tagsBIReporter.reportBi(\n cairoUndoClicked({\n actionName: 'Save',\n changedAttributes: 'Tags Assignment',\n }),\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_bexCore","_bi","_uuid","_TagsBulkAssignAsyncState","_TagsBulkAssignSyncState","origin","MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC","exports","TagsBulkAssignPopoverState","constructor","tagsManagementState","collectionState","tagsModalState","bulkUpdateTags","asyncBulkUpdateTags","getTags","_defineProperty2","default","tag","optimisticNewTag","assignedTagIds","includes","id","push","tagName","tagId","name","createdDate","Date","updatedAssignedTagIds","filter","assignedTagId","selectedKeyedItems","tagsCount","items","reduce","result","forEach","selectedKeyedItem","_this$getTags","_tags$privateTags","tags","item","call","entityTagIds","privateTags","tagIds","Set","entityTagId","selectedTagIds","indeterminateTagIds","tagCount","Object","entries","length","initialIndeterminateTagIds","initialSelectedIds","optimisticActions","_optimisticActions","CollectionOptimisticActions","container","collection","tagsBIReporter","TagsBIReporter","reportBi","createBILogger","componentType","fqdn","location","bulkAssignSyncState","TagsBulkAssignSyncState","bulkAssignAsyncState","TagsBulkAssignAsyncState","makeObservable","init","action","isShown","observable","searchValue","showPopover","closePopover","applyChanges","handleManageTagsCtaClick","handleItemSelect","handleSearchChange","createAndAssignTag","retry","ref","assignedTags","computed","disposers","disposer","_reportPopoverShowChangedBi","_initSelectionState","_reportSearchEventsBi","slice","TAG_MAX_LENGTH","uuid","assignTagOptimistic","createTag","filteredListSize","isFromSearch","onSuccess","newTag","assignTag","optimisticActionParams","successToast","biName","message","translate","errorToast","error","_this$container$error","_this$container$error2","resolvedError","errorHandler","getResolvedError","newAssignedTagIds","newUnassignedTagIds","params","shouldlUseBulkSync","openManageTagsModal","tagSubOrigin","itemId","currentTag","find","indeterminateTagId","assignedWithOptimisticTagIds","unassignTag","_reportSearchChangedBi","isInEmptyState","isSuccessful","tagOptions","sort","tag1","tag2","isTag1InitialUnassigned","_isInitialUnassignedTag","isTag2InitialUnassigned","valueOf","savedAssignedTags","map","element","Boolean","allSelectedItemsFetched","selectedCountOrTotal","bulkSelect","canUseBulkUpdate","isDuringApplyChanges","canBulkAssignAsync","isError","isLoading","isDirty","_calcTagsCount","_getSelectedTagsIdsStatus","isOpened","cairoFiltersPanelUsed","feature","onSearch","_clearAllEvents","event","events","emit"],"sources":["../../../src/state/TagsBulkAssignPopoverState.ts"],"sourcesContent":["import { action, makeObservable, computed, observable } from 'mobx';\nimport { TagsModalState } from './TagsModalState';\nimport { Tag } from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport {\n CollectionOptimisticActions,\n CollectionState,\n FiltersMap,\n KeyedItem,\n TAG_MAX_LENGTH,\n Tags,\n TagsBIReporter,\n TagsManagementState,\n} from '@wix/bex-core';\nimport { cairoFiltersPanelUsed } from '@wix/bex-core/bi';\nimport { v4 as uuid } from 'uuid';\nimport { TagsProps } from '../components/Tags';\nimport { TagsBulkAssignAsyncState } from './TagsBulkAssignAsyncState';\nimport { TagsBulkAssignSyncState } from './TagsBulkAssignSyncState';\n\nconst origin = 'bulk_assign_popover';\n\nexport interface BulkUpdateTagsParams {\n entityIds: string[];\n assignTags: Tags;\n unassignTags: Tags;\n}\n\nexport interface TagsBulkAssignPopoverStateParams<T, F extends FiltersMap>\n extends Pick<\n TagsProps<T, F>,\n 'bulkUpdateTags' | 'asyncBulkUpdateTags' | 'getTags'\n > {\n readonly tagsManagementState: TagsManagementState;\n readonly tagsModalState: TagsModalState;\n readonly collectionState: CollectionState<T, F>;\n}\n\nexport const MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC = 100;\n\nexport class TagsBulkAssignPopoverState<T, F extends FiltersMap> {\n readonly tagsManagementState: TagsManagementState;\n readonly collectionState;\n readonly optimisticActions: CollectionOptimisticActions<T, F>;\n readonly tagsModalState;\n readonly bulkAssignSyncState: TagsBulkAssignSyncState<T, F>;\n readonly bulkAssignAsyncState: TagsBulkAssignAsyncState<T, F>;\n readonly container;\n readonly tagsBIReporter: TagsBIReporter;\n readonly getTags?: (item: T) => Tags;\n initialSelectedIds: string[] = [];\n initialIndeterminateTagIds: string[] = [];\n indeterminateTagIds: string[] = [];\n assignedTagIds: string[] = [];\n optimisticNewTag: Tag | null = null;\n isShown = false;\n searchValue: string = '';\n\n constructor({\n tagsManagementState,\n collectionState,\n tagsModalState,\n bulkUpdateTags,\n asyncBulkUpdateTags,\n getTags,\n }: TagsBulkAssignPopoverStateParams<T, F>) {\n this.tagsManagementState = tagsManagementState;\n this.collectionState = collectionState;\n this.optimisticActions =\n collectionState._optimisticActions ??\n new CollectionOptimisticActions<T, F>({\n container: this.tagsManagementState.container,\n collection: this.collectionState,\n });\n this.tagsBIReporter = new TagsBIReporter({\n collection: this.tagsManagementState.collection,\n reportBi: this.tagsManagementState.container.createBILogger({\n componentType: 'TagsBulkAssignPopover',\n ...tagsManagementState.fqdn,\n }),\n location: 'Bulk assign tags popover',\n });\n this.tagsModalState = tagsModalState;\n this.container = tagsManagementState.container;\n this.getTags = getTags;\n this.bulkAssignSyncState = new TagsBulkAssignSyncState({\n collectionState,\n optimisticActions: this.optimisticActions,\n container: this.container,\n tagsBIReporter: this.tagsBIReporter,\n getTags,\n bulkUpdateTags,\n });\n this.bulkAssignAsyncState = new TagsBulkAssignAsyncState({\n collectionState,\n optimisticActions: this.optimisticActions,\n container: this.container,\n tagsBIReporter: this.tagsBIReporter,\n asyncBulkUpdateTags,\n });\n\n makeObservable(this, {\n init: action,\n isShown: observable,\n initialSelectedIds: observable,\n initialIndeterminateTagIds: observable,\n indeterminateTagIds: observable,\n searchValue: observable,\n showPopover: action,\n closePopover: action,\n applyChanges: action,\n handleManageTagsCtaClick: action,\n handleItemSelect: action,\n handleSearchChange: action,\n createAndAssignTag: action,\n retry: action,\n assignedTagIds: observable,\n optimisticNewTag: observable.ref,\n assignedTags: computed,\n });\n }\n\n init() {\n const disposers = [\n this.optimisticActions.init(),\n this.bulkAssignAsyncState.init(),\n ];\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n async showPopover() {\n if (this.isShown) {\n return;\n }\n\n this.isShown = true;\n this._reportPopoverShowChangedBi(true);\n const { selectedTagIds, indeterminateTagIds } = this._initSelectionState();\n this.initialSelectedIds = selectedTagIds;\n this.assignedTagIds = selectedTagIds;\n this.initialIndeterminateTagIds = indeterminateTagIds;\n this.indeterminateTagIds = indeterminateTagIds;\n }\n\n closePopover() {\n this._reportPopoverShowChangedBi(false);\n this._reportSearchEventsBi('blur');\n this.isShown = false;\n this.assignedTagIds = [];\n this.initialSelectedIds = [];\n this.initialIndeterminateTagIds = [];\n this.indeterminateTagIds = [];\n }\n\n async createAndAssignTag(name: string) {\n this._reportSearchEventsBi('add');\n const tagName = name.slice(0, TAG_MAX_LENGTH);\n const id = uuid();\n this.assignTagOptimistic(tagName, id);\n this.tagsManagementState.createTag({\n name,\n id,\n filteredListSize: 0,\n origin,\n isFromSearch: true,\n tagsBIReporter: this.tagsBIReporter,\n onSuccess: (newTag) => this.assignTag({ tag: newTag }),\n optimisticActionParams: {\n successToast: {\n biName: 'cairo-save-new-tag-success',\n message: this.container.translate(\n 'cairo.tags.popover.tagCreated.toast.success',\n ),\n },\n errorToast: (error) => {\n const resolvedError =\n this.container.errorHandler.getResolvedError?.(error);\n return {\n biName: 'cairo-save-new-tag-error',\n message:\n resolvedError?.message ??\n this.container.translate(\n 'cairo.tags.collectionPage.toast.create.error',\n ),\n action: resolvedError?.action,\n };\n },\n },\n });\n }\n\n async applyChanges() {\n const { searchValue, newAssignedTagIds, newUnassignedTagIds } = this;\n const params = {\n searchValue,\n newAssignedTagIds,\n newUnassignedTagIds,\n };\n if (this.shouldlUseBulkSync) {\n this.bulkAssignSyncState.applyChanges(params);\n } else {\n await this.bulkAssignAsyncState.applyChanges(params);\n }\n\n this.closePopover();\n }\n\n handleManageTagsCtaClick() {\n this.closePopover();\n this.tagsModalState.openManageTagsModal({\n origin,\n tagSubOrigin: 'bulkAssignPopover',\n });\n }\n\n handleItemSelect(itemId: string) {\n const currentTag = this.tagsManagementState.items.find(\n (tag) => tag.id === itemId,\n );\n if (!currentTag) {\n return;\n }\n\n this._reportSearchEventsBi('select');\n\n if (\n this.initialIndeterminateTagIds.includes(itemId) &&\n this.indeterminateTagIds.includes(itemId)\n ) {\n this.indeterminateTagIds = this.indeterminateTagIds.filter(\n (indeterminateTagId) => indeterminateTagId !== itemId,\n );\n }\n\n if (this.assignedWithOptimisticTagIds.includes(itemId)) {\n this.unassignTag({ tag: currentTag });\n } else {\n this.assignTag({ tag: currentTag });\n }\n }\n\n handleSearchChange(searchValue: string) {\n this._reportSearchChangedBi(searchValue);\n this.searchValue = searchValue;\n }\n\n retry() {\n this.tagsManagementState.retry();\n }\n\n get isInEmptyState() {\n return (\n this.tagsManagementState.isSuccessful &&\n this.tagsManagementState.items.length === 0\n );\n }\n\n get tagOptions() {\n return this.tagsManagementState.items.sort((tag1, tag2) => {\n const isTag1InitialUnassigned = this._isInitialUnassignedTag(tag1);\n const isTag2InitialUnassigned = this._isInitialUnassignedTag(tag2);\n\n // Showing first assigned/indeterminate tags, and unassigned tags below it\n if (!isTag1InitialUnassigned && isTag2InitialUnassigned) {\n return -1;\n }\n\n if (isTag1InitialUnassigned && !isTag2InitialUnassigned) {\n return 1;\n }\n\n // Sub order by showing first newer tags\n return (\n new Date(tag2.createdDate!).valueOf() -\n new Date(tag1.createdDate!).valueOf()\n );\n });\n }\n\n get assignedTags() {\n const savedAssignedTags = this.assignedTagIds\n .map((tagId) => {\n return this.tagsManagementState.items.find((tag) => tag.id === tagId);\n })\n .filter((element) => Boolean(element)) as Tag[];\n return this.optimisticNewTag\n ? [...savedAssignedTags, this.optimisticNewTag]\n : savedAssignedTags;\n }\n\n get assignedWithOptimisticTagIds() {\n return this.assignedTags.map((tag) => tag.id!);\n }\n\n get newAssignedTagIds() {\n return this.assignedTagIds.filter(\n (tagId) => !this.initialSelectedIds.includes(tagId),\n );\n }\n\n get newUnassignedTagIds() {\n return [\n ...this.initialSelectedIds.filter(\n (tagId) => !this.assignedTagIds.includes(tagId),\n ),\n ...this.initialIndeterminateTagIds.filter(\n (tagId) =>\n ![...this.assignedTagIds, ...this.indeterminateTagIds].includes(\n tagId,\n ),\n ),\n ];\n }\n\n get shouldlUseBulkSync() {\n const { allSelectedItemsFetched, selectedCountOrTotal } =\n this.collectionState.bulkSelect;\n\n return (\n allSelectedItemsFetched &&\n selectedCountOrTotal < MAX_SELECTED_ENTITIES_FOR_BULK_ASSIGN_SYNC\n );\n }\n\n get canUseBulkUpdate() {\n // Cannot invoke bulk assign while applying async changes\n if (this.bulkAssignAsyncState.isDuringApplyChanges) {\n return false;\n }\n\n // can use sync\n if (this.shouldlUseBulkSync) {\n return true;\n }\n\n // can use async\n return this.bulkAssignAsyncState.canBulkAssignAsync;\n }\n\n get isError() {\n return this.tagsManagementState.isError;\n }\n\n get isLoading() {\n return this.tagsManagementState.isLoading;\n }\n\n get isDirty() {\n return (\n this.newAssignedTagIds.length > 0 || this.newUnassignedTagIds.length > 0\n );\n }\n\n assignTag = async ({ tag }: { tag: Tag }) => {\n this.optimisticNewTag = null;\n if (this.assignedTagIds.includes(tag.id!)) {\n return;\n }\n\n this.assignedTagIds.push(tag.id!);\n };\n\n assignTagOptimistic = (tagName: string, tagId: string = 'fake tag id') => {\n this.optimisticNewTag = {\n id: tagId,\n name: tagName,\n createdDate: new Date(),\n };\n };\n\n unassignTag = async ({ tag }: { tag: Tag }) => {\n const updatedAssignedTagIds = this.assignedTagIds.filter(\n (assignedTagId) => assignedTagId !== tag.id,\n );\n\n this.assignedTagIds = updatedAssignedTagIds;\n };\n\n private _calcTagsCount = (selectedKeyedItems: KeyedItem<T>[]) => {\n const tagsCount = this.tagsManagementState.items.reduce(\n (result: Record<string, number>, tag) => {\n result[tag.id!] = 0;\n return result;\n },\n {},\n );\n\n selectedKeyedItems.forEach((selectedKeyedItem) => {\n const tags: Tags =\n (selectedKeyedItem.item as any).tags ??\n this.getTags?.(selectedKeyedItem.item);\n\n const entityTagIds = (tags?.privateTags?.tagIds as string[]) || [];\n\n [...new Set(entityTagIds)].forEach((entityTagId) => {\n if (entityTagId in tagsCount) {\n tagsCount[entityTagId]++;\n }\n });\n });\n return tagsCount;\n };\n\n private _getSelectedTagsIdsStatus = (\n tagsCount: Record<string, number>,\n selectedKeyedItems: KeyedItem<T>[],\n ) => {\n const selectedTagIds: string[] = [];\n const indeterminateTagIds: string[] = [];\n for (const [tagId, tagCount] of Object.entries(tagsCount)) {\n if (tagCount === selectedKeyedItems.length) {\n selectedTagIds.push(tagId);\n } else if (tagCount > 0) {\n indeterminateTagIds.push(tagId);\n }\n }\n return { selectedTagIds, indeterminateTagIds };\n };\n\n private _initSelectionState() {\n const { selectedKeyedItems } = this.collectionState.bulkSelect;\n const tagsCount = this._calcTagsCount(selectedKeyedItems);\n return this._getSelectedTagsIdsStatus(tagsCount, selectedKeyedItems);\n }\n\n private _isInitialUnassignedTag = (tag: Tag) =>\n !this.initialIndeterminateTagIds.includes(tag.id!) &&\n !this.initialSelectedIds.includes(tag.id!);\n\n private _reportPopoverShowChangedBi(isOpened: boolean) {\n this.tagsBIReporter.reportBi(\n cairoFiltersPanelUsed({\n isOpened,\n feature: 'Tags',\n origin: 'Assign Tags',\n }),\n );\n }\n\n private _reportSearchChangedBi(searchValue: string) {\n if (searchValue !== '') {\n this.tagsBIReporter.onSearch(searchValue);\n } else {\n this.tagsBIReporter._clearAllEvents();\n }\n }\n\n private _reportSearchEventsBi(event: 'add' | 'select' | 'blur') {\n return this.tagsBIReporter.events.emit(event);\n }\n}\n"],"mappings":"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","ignoreList":[]}