@wix/bex-core 2.3.0 → 2.5.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 (246) hide show
  1. package/dist/cjs/assets/locale/messages_da.json +2 -2
  2. package/dist/cjs/model/index.js +12 -12
  3. package/dist/cjs/model/index.js.map +1 -1
  4. package/dist/cjs/model/{cairoEnvironment.js → wixPatternsEnvironment.js} +1 -1
  5. package/dist/cjs/model/wixPatternsEnvironment.js.map +1 -0
  6. package/dist/cjs/model/wixPatternsEssentials.js +4 -0
  7. package/dist/cjs/model/wixPatternsEssentials.js.map +1 -0
  8. package/dist/cjs/model/wixPatternsInitialProps.js +2 -0
  9. package/dist/cjs/model/wixPatternsInitialProps.js.map +1 -0
  10. package/dist/cjs/providers/CairoProvider/CairoProvider.js +7 -7
  11. package/dist/cjs/providers/CairoProvider/CairoProvider.js.map +1 -1
  12. package/dist/cjs/providers/CollectionPageContext.js +1 -1
  13. package/dist/cjs/providers/CollectionPageContext.js.map +1 -1
  14. package/dist/cjs/providers/{CairoContainerOverridesContext.js → WixPatternsContainerOverridesContext.js} +1 -1
  15. package/dist/cjs/providers/WixPatternsContainerOverridesContext.js.map +1 -0
  16. package/dist/cjs/providers/{CairoContainerProvider/CairoContainerProvider.js → WixPatternsContainerProvider/WixPatternsContainerProvider.js} +1 -1
  17. package/dist/cjs/providers/WixPatternsContainerProvider/WixPatternsContainerProvider.js.map +1 -0
  18. package/dist/cjs/providers/WixPatternsContainerProvider/index.js +10 -0
  19. package/dist/cjs/providers/WixPatternsContainerProvider/index.js.map +1 -0
  20. package/dist/cjs/providers/{CairoInitialPropsProvider.js → WixPatternsInitialPropsProvider.js} +1 -1
  21. package/dist/cjs/providers/WixPatternsInitialPropsProvider.js.map +1 -0
  22. package/dist/cjs/providers/index.js +12 -12
  23. package/dist/cjs/providers/index.js.map +1 -1
  24. package/dist/cjs/services/{CairoError.js → WixPatternsError.js} +1 -1
  25. package/dist/cjs/services/WixPatternsError.js.map +1 -0
  26. package/dist/cjs/services/WixPatternsErrorCode.js +2 -0
  27. package/dist/cjs/services/WixPatternsErrorCode.js.map +1 -0
  28. package/dist/cjs/services/cairoMonitor.js +2 -2
  29. package/dist/cjs/services/cairoMonitor.js.map +1 -1
  30. package/dist/cjs/services/dataExtensionService.js.map +1 -1
  31. package/dist/cjs/services/index.js +8 -8
  32. package/dist/cjs/services/index.js.map +1 -1
  33. package/dist/cjs/state/BeforeUnloadCompatState.js.map +1 -1
  34. package/dist/cjs/state/CustomFieldsViewWidgetState.js.map +1 -1
  35. package/dist/cjs/state/DataExtensionState.js +32 -8
  36. package/dist/cjs/state/DataExtensionState.js.map +1 -1
  37. package/dist/cjs/state/SelectState.js +2 -2
  38. package/dist/cjs/state/SelectState.js.map +1 -1
  39. package/dist/cjs/state/{SelectionStatusCairoPreset.js → SelectionStatusWixPatternsPreset.js} +1 -1
  40. package/dist/cjs/state/SelectionStatusWixPatternsPreset.js.map +1 -0
  41. package/dist/cjs/state/TagsState/TagsAssignmentState.js +325 -0
  42. package/dist/cjs/state/TagsState/TagsAssignmentState.js.map +1 -0
  43. package/dist/cjs/state/TagsState/TagsBIReporter.js +156 -0
  44. package/dist/cjs/state/TagsState/TagsBIReporter.js.map +1 -0
  45. package/dist/cjs/state/TagsState/TagsFormState.js +228 -0
  46. package/dist/cjs/state/TagsState/TagsFormState.js.map +1 -0
  47. package/dist/cjs/state/TagsState/TagsManagementState.js +312 -0
  48. package/dist/cjs/state/TagsState/TagsManagementState.js.map +1 -0
  49. package/dist/cjs/state/TagsState/TagsSearchState.js +48 -0
  50. package/dist/cjs/state/TagsState/TagsSearchState.js.map +1 -0
  51. package/dist/cjs/state/TagsState/TagsWidgetState.js +98 -0
  52. package/dist/cjs/state/TagsState/TagsWidgetState.js.map +1 -0
  53. package/dist/cjs/state/TagsState/index.js +46 -0
  54. package/dist/cjs/state/TagsState/index.js.map +1 -0
  55. package/dist/cjs/state/TagsState/tagsTypes.js +2 -0
  56. package/dist/cjs/state/TagsState/tagsTypes.js.map +1 -0
  57. package/dist/cjs/state/{CairoContainer.js → WixPatternsContainer.js} +1 -1
  58. package/dist/cjs/state/WixPatternsContainer.js.map +1 -0
  59. package/dist/cjs/state/{buildCairoContainer.js → buildWixPatternsContainer.js} +3 -3
  60. package/dist/cjs/state/buildWixPatternsContainer.js.map +1 -0
  61. package/dist/cjs/state/index.js +19 -12
  62. package/dist/cjs/state/index.js.map +1 -1
  63. package/dist/cjs/testkit/ProductsCollectionState.driver.js +2 -2
  64. package/dist/cjs/testkit/ProductsCollectionState.driver.js.map +1 -1
  65. package/dist/cjs/testkit/{CairoContainer.driver.js → WixPatternsContainer.driver.js} +1 -1
  66. package/dist/cjs/testkit/WixPatternsContainer.driver.js.map +1 -0
  67. package/dist/cjs/testkit/internal.js +4 -4
  68. package/dist/cjs/testkit/internal.js.map +1 -1
  69. package/dist/esm/assets/locale/messages_da.json +2 -2
  70. package/dist/esm/model/index.js +3 -3
  71. package/dist/esm/model/index.js.map +1 -1
  72. package/dist/esm/model/{cairoEnvironment.js → wixPatternsEnvironment.js} +1 -1
  73. package/dist/esm/model/wixPatternsEnvironment.js.map +1 -0
  74. package/dist/esm/model/wixPatternsEssentials.js +2 -0
  75. package/dist/esm/model/wixPatternsEssentials.js.map +1 -0
  76. package/dist/esm/model/wixPatternsInitialProps.js +2 -0
  77. package/dist/esm/model/wixPatternsInitialProps.js.map +1 -0
  78. package/dist/esm/providers/CairoProvider/CairoProvider.js +3 -3
  79. package/dist/esm/providers/CairoProvider/CairoProvider.js.map +1 -1
  80. package/dist/esm/providers/CollectionPageContext.js +1 -1
  81. package/dist/esm/providers/CollectionPageContext.js.map +1 -1
  82. package/dist/esm/providers/{CairoContainerOverridesContext.js → WixPatternsContainerOverridesContext.js} +1 -1
  83. package/dist/esm/providers/WixPatternsContainerOverridesContext.js.map +1 -0
  84. package/dist/esm/providers/{CairoContainerProvider/CairoContainerProvider.js → WixPatternsContainerProvider/WixPatternsContainerProvider.js} +1 -1
  85. package/dist/esm/providers/WixPatternsContainerProvider/WixPatternsContainerProvider.js.map +1 -0
  86. package/dist/esm/providers/WixPatternsContainerProvider/index.js +2 -0
  87. package/dist/esm/providers/WixPatternsContainerProvider/index.js.map +1 -0
  88. package/dist/esm/providers/{CairoInitialPropsProvider.js → WixPatternsInitialPropsProvider.js} +1 -1
  89. package/dist/esm/providers/WixPatternsInitialPropsProvider.js.map +1 -0
  90. package/dist/esm/providers/index.js +3 -3
  91. package/dist/esm/providers/index.js.map +1 -1
  92. package/dist/esm/services/{CairoError.js → WixPatternsError.js} +1 -1
  93. package/dist/esm/services/WixPatternsError.js.map +1 -0
  94. package/dist/esm/services/WixPatternsErrorCode.js +2 -0
  95. package/dist/esm/services/WixPatternsErrorCode.js.map +1 -0
  96. package/dist/esm/services/cairoMonitor.js +1 -1
  97. package/dist/esm/services/cairoMonitor.js.map +1 -1
  98. package/dist/esm/services/dataExtensionService.js.map +1 -1
  99. package/dist/esm/services/index.js +2 -2
  100. package/dist/esm/services/index.js.map +1 -1
  101. package/dist/esm/state/DataExtensionState.js +18 -5
  102. package/dist/esm/state/DataExtensionState.js.map +1 -1
  103. package/dist/esm/state/SelectState.js +1 -1
  104. package/dist/esm/state/SelectState.js.map +1 -1
  105. package/dist/esm/state/{SelectionStatusCairoPreset.js → SelectionStatusWixPatternsPreset.js} +1 -1
  106. package/dist/esm/state/SelectionStatusWixPatternsPreset.js.map +1 -0
  107. package/dist/esm/state/TagsState/TagsAssignmentState.js +229 -0
  108. package/dist/esm/state/TagsState/TagsAssignmentState.js.map +1 -0
  109. package/dist/esm/state/TagsState/TagsBIReporter.js +115 -0
  110. package/dist/esm/state/TagsState/TagsBIReporter.js.map +1 -0
  111. package/dist/esm/state/TagsState/TagsFormState.js +202 -0
  112. package/dist/esm/state/TagsState/TagsFormState.js.map +1 -0
  113. package/dist/esm/state/TagsState/TagsManagementState.js +208 -0
  114. package/dist/esm/state/TagsState/TagsManagementState.js.map +1 -0
  115. package/dist/esm/state/TagsState/TagsSearchState.js +40 -0
  116. package/dist/esm/state/TagsState/TagsSearchState.js.map +1 -0
  117. package/dist/esm/state/TagsState/TagsWidgetState.js +75 -0
  118. package/dist/esm/state/TagsState/TagsWidgetState.js.map +1 -0
  119. package/dist/esm/state/TagsState/index.js +8 -0
  120. package/dist/esm/state/TagsState/index.js.map +1 -0
  121. package/dist/esm/state/TagsState/tagsTypes.js +2 -0
  122. package/dist/esm/state/TagsState/tagsTypes.js.map +1 -0
  123. package/dist/esm/state/{CairoContainer.js → WixPatternsContainer.js} +1 -1
  124. package/dist/esm/state/WixPatternsContainer.js.map +1 -0
  125. package/dist/esm/state/{buildCairoContainer.js → buildWixPatternsContainer.js} +2 -2
  126. package/dist/esm/state/buildWixPatternsContainer.js.map +1 -0
  127. package/dist/esm/state/index.js +4 -3
  128. package/dist/esm/state/index.js.map +1 -1
  129. package/dist/esm/testkit/ProductsCollectionState.driver.js +1 -1
  130. package/dist/esm/testkit/ProductsCollectionState.driver.js.map +1 -1
  131. package/dist/esm/testkit/{CairoContainer.driver.js → WixPatternsContainer.driver.js} +1 -1
  132. package/dist/esm/testkit/WixPatternsContainer.driver.js.map +1 -0
  133. package/dist/esm/testkit/internal.js +1 -1
  134. package/dist/esm/testkit/internal.js.map +1 -1
  135. package/dist/types/model/index.d.ts +3 -3
  136. package/dist/types/model/index.d.ts.map +1 -1
  137. package/dist/types/model/{cairoEnvironment.d.ts → wixPatternsEnvironment.d.ts} +2 -2
  138. package/dist/types/model/wixPatternsEnvironment.d.ts.map +1 -0
  139. package/dist/types/model/{cairoEssentials.d.ts → wixPatternsEssentials.d.ts} +1 -1
  140. package/dist/types/model/wixPatternsEssentials.d.ts.map +1 -0
  141. package/dist/types/model/{cairoInitialProps.d.ts → wixPatternsInitialProps.d.ts} +1 -1
  142. package/dist/types/model/wixPatternsInitialProps.d.ts.map +1 -0
  143. package/dist/types/providers/CollectionPageContext.d.ts.map +1 -1
  144. package/dist/types/providers/{CairoContainerOverridesContext.d.ts → WixPatternsContainerOverridesContext.d.ts} +1 -1
  145. package/dist/types/providers/WixPatternsContainerOverridesContext.d.ts.map +1 -0
  146. package/dist/types/providers/{CairoContainerProvider/CairoContainerProvider.d.ts → WixPatternsContainerProvider/WixPatternsContainerProvider.d.ts} +1 -1
  147. package/dist/types/providers/WixPatternsContainerProvider/WixPatternsContainerProvider.d.ts.map +1 -0
  148. package/dist/types/providers/WixPatternsContainerProvider/index.d.ts +2 -0
  149. package/dist/types/providers/WixPatternsContainerProvider/index.d.ts.map +1 -0
  150. package/dist/types/providers/{CairoInitialPropsProvider.d.ts → WixPatternsInitialPropsProvider.d.ts} +1 -1
  151. package/dist/types/providers/WixPatternsInitialPropsProvider.d.ts.map +1 -0
  152. package/dist/types/providers/index.d.ts +3 -3
  153. package/dist/types/providers/index.d.ts.map +1 -1
  154. package/dist/types/services/{CairoError.d.ts → WixPatternsError.d.ts} +2 -2
  155. package/dist/types/services/WixPatternsError.d.ts.map +1 -0
  156. package/dist/types/services/{CairoErrorCode.d.ts → WixPatternsErrorCode.d.ts} +1 -1
  157. package/dist/types/services/WixPatternsErrorCode.d.ts.map +1 -0
  158. package/dist/types/services/dataExtensionService.d.ts +2 -0
  159. package/dist/types/services/dataExtensionService.d.ts.map +1 -1
  160. package/dist/types/services/index.d.ts +2 -2
  161. package/dist/types/services/index.d.ts.map +1 -1
  162. package/dist/types/state/BeforeUnloadCompatState.d.ts +1 -1
  163. package/dist/types/state/BeforeUnloadCompatState.d.ts.map +1 -1
  164. package/dist/types/state/CustomFieldsViewWidgetState.d.ts +1 -1
  165. package/dist/types/state/CustomFieldsViewWidgetState.d.ts.map +1 -1
  166. package/dist/types/state/DataExtensionState.d.ts +7 -9
  167. package/dist/types/state/DataExtensionState.d.ts.map +1 -1
  168. package/dist/types/state/{SelectionStatusCairoPreset.d.ts → SelectionStatusWixPatternsPreset.d.ts} +1 -1
  169. package/dist/types/state/SelectionStatusWixPatternsPreset.d.ts.map +1 -0
  170. package/dist/types/state/TagsState/TagsAssignmentState.d.ts +74 -0
  171. package/dist/types/state/TagsState/TagsAssignmentState.d.ts.map +1 -0
  172. package/dist/types/state/TagsState/TagsBIReporter.d.ts +35 -0
  173. package/dist/types/state/TagsState/TagsBIReporter.d.ts.map +1 -0
  174. package/dist/types/state/TagsState/TagsFormState.d.ts +76 -0
  175. package/dist/types/state/TagsState/TagsFormState.d.ts.map +1 -0
  176. package/dist/types/state/TagsState/TagsManagementState.d.ts +65 -0
  177. package/dist/types/state/TagsState/TagsManagementState.d.ts.map +1 -0
  178. package/dist/types/state/TagsState/TagsSearchState.d.ts +13 -0
  179. package/dist/types/state/TagsState/TagsSearchState.d.ts.map +1 -0
  180. package/dist/types/state/TagsState/TagsWidgetState.d.ts +29 -0
  181. package/dist/types/state/TagsState/TagsWidgetState.d.ts.map +1 -0
  182. package/dist/types/state/TagsState/index.d.ts +8 -0
  183. package/dist/types/state/TagsState/index.d.ts.map +1 -0
  184. package/dist/types/state/TagsState/tagsTypes.d.ts +9 -0
  185. package/dist/types/state/TagsState/tagsTypes.d.ts.map +1 -0
  186. package/dist/types/state/{CairoContainer.d.ts → WixPatternsContainer.d.ts} +1 -1
  187. package/dist/types/state/WixPatternsContainer.d.ts.map +1 -0
  188. package/dist/types/state/{buildCairoContainer.d.ts → buildWixPatternsContainer.d.ts} +2 -2
  189. package/dist/types/state/buildWixPatternsContainer.d.ts.map +1 -0
  190. package/dist/types/state/index.d.ts +4 -3
  191. package/dist/types/state/index.d.ts.map +1 -1
  192. package/dist/types/testkit/ProductsCollectionState.driver.d.ts +1 -1
  193. package/dist/types/testkit/ProductsCollectionState.driver.d.ts.map +1 -1
  194. package/dist/types/testkit/{CairoContainer.driver.d.ts → WixPatternsContainer.driver.d.ts} +1 -1
  195. package/dist/types/testkit/WixPatternsContainer.driver.d.ts.map +1 -0
  196. package/dist/types/testkit/internal.d.ts +1 -1
  197. package/dist/types/testkit/internal.d.ts.map +1 -1
  198. package/package.json +3 -3
  199. package/dist/cjs/model/cairoEnvironment.js.map +0 -1
  200. package/dist/cjs/model/cairoEssentials.js +0 -4
  201. package/dist/cjs/model/cairoEssentials.js.map +0 -1
  202. package/dist/cjs/model/cairoInitialProps.js +0 -2
  203. package/dist/cjs/model/cairoInitialProps.js.map +0 -1
  204. package/dist/cjs/providers/CairoContainerOverridesContext.js.map +0 -1
  205. package/dist/cjs/providers/CairoContainerProvider/CairoContainerProvider.js.map +0 -1
  206. package/dist/cjs/providers/CairoContainerProvider/index.js +0 -10
  207. package/dist/cjs/providers/CairoContainerProvider/index.js.map +0 -1
  208. package/dist/cjs/providers/CairoInitialPropsProvider.js.map +0 -1
  209. package/dist/cjs/services/CairoError.js.map +0 -1
  210. package/dist/cjs/services/CairoErrorCode.js +0 -2
  211. package/dist/cjs/services/CairoErrorCode.js.map +0 -1
  212. package/dist/cjs/state/CairoContainer.js.map +0 -1
  213. package/dist/cjs/state/SelectionStatusCairoPreset.js.map +0 -1
  214. package/dist/cjs/state/buildCairoContainer.js.map +0 -1
  215. package/dist/cjs/testkit/CairoContainer.driver.js.map +0 -1
  216. package/dist/esm/model/cairoEnvironment.js.map +0 -1
  217. package/dist/esm/model/cairoEssentials.js +0 -2
  218. package/dist/esm/model/cairoEssentials.js.map +0 -1
  219. package/dist/esm/model/cairoInitialProps.js +0 -2
  220. package/dist/esm/model/cairoInitialProps.js.map +0 -1
  221. package/dist/esm/providers/CairoContainerOverridesContext.js.map +0 -1
  222. package/dist/esm/providers/CairoContainerProvider/CairoContainerProvider.js.map +0 -1
  223. package/dist/esm/providers/CairoContainerProvider/index.js +0 -2
  224. package/dist/esm/providers/CairoContainerProvider/index.js.map +0 -1
  225. package/dist/esm/providers/CairoInitialPropsProvider.js.map +0 -1
  226. package/dist/esm/services/CairoError.js.map +0 -1
  227. package/dist/esm/services/CairoErrorCode.js +0 -2
  228. package/dist/esm/services/CairoErrorCode.js.map +0 -1
  229. package/dist/esm/state/CairoContainer.js.map +0 -1
  230. package/dist/esm/state/SelectionStatusCairoPreset.js.map +0 -1
  231. package/dist/esm/state/buildCairoContainer.js.map +0 -1
  232. package/dist/esm/testkit/CairoContainer.driver.js.map +0 -1
  233. package/dist/types/model/cairoEnvironment.d.ts.map +0 -1
  234. package/dist/types/model/cairoEssentials.d.ts.map +0 -1
  235. package/dist/types/model/cairoInitialProps.d.ts.map +0 -1
  236. package/dist/types/providers/CairoContainerOverridesContext.d.ts.map +0 -1
  237. package/dist/types/providers/CairoContainerProvider/CairoContainerProvider.d.ts.map +0 -1
  238. package/dist/types/providers/CairoContainerProvider/index.d.ts +0 -2
  239. package/dist/types/providers/CairoContainerProvider/index.d.ts.map +0 -1
  240. package/dist/types/providers/CairoInitialPropsProvider.d.ts.map +0 -1
  241. package/dist/types/services/CairoError.d.ts.map +0 -1
  242. package/dist/types/services/CairoErrorCode.d.ts.map +0 -1
  243. package/dist/types/state/CairoContainer.d.ts.map +0 -1
  244. package/dist/types/state/SelectionStatusCairoPreset.d.ts.map +0 -1
  245. package/dist/types/state/buildCairoContainer.d.ts.map +0 -1
  246. package/dist/types/testkit/CairoContainer.driver.d.ts.map +0 -1
@@ -0,0 +1,229 @@
1
+ import { __rest } from "tslib";
2
+ import { cairoTagsAssignTag } from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';
3
+ import { v4 as uuid } from 'uuid';
4
+ import { action, computed, makeObservable, observable } from 'mobx';
5
+ import { CollectionOptimisticActions, } from '../CollectionOptimisticActions';
6
+ import { TaskState } from '../TaskState';
7
+ import { CollectionState } from '../CollectionState';
8
+ import { fqdnToString } from '../../util';
9
+ export class TagsAssignmentState {
10
+ constructor(_a) {
11
+ var { tagsManagementState, entityId, origin, tagsBIReporter } = _a, params = __rest(_a, ["tagsManagementState", "entityId", "origin", "tagsBIReporter"]);
12
+ this.initTask = new TaskState();
13
+ this.initialTags = [];
14
+ this.assignTag = async ({ tag, onSubmit, isFromSearch, optimisticActionParams, }) => {
15
+ if (this.assignedTagIds.includes(tag.id)) {
16
+ return;
17
+ }
18
+ const newIndex = this._getNewIndex();
19
+ await this.optimisticActions.createOne({ id: tag.id, index: newIndex }, Object.assign(Object.assign({}, optimisticActionParams), { submit: async (_) => {
20
+ await this._assignTag({
21
+ tagIds: this.assignedTagIds,
22
+ tag,
23
+ onSubmit,
24
+ isFromSearch,
25
+ });
26
+ return [{ id: tag.id, index: newIndex }];
27
+ } }));
28
+ };
29
+ this.unassignTag = async ({ tag, onSubmit, isFromSearch = false, optimisticActionParams, }) => {
30
+ const tagToUnassign = this.collection.result.items.find((t) => t.id === tag.id);
31
+ await this.optimisticActions.deleteOne(tagToUnassign, Object.assign(Object.assign({}, optimisticActionParams), { submit: async () => {
32
+ this._invokeBiOnAssignUnassign({
33
+ actionName: 'Remove',
34
+ tag,
35
+ isFromSearch,
36
+ });
37
+ await (onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit({
38
+ privateTags: {
39
+ tagIds: this.assignedTagIds.filter((id) => id !== tag.id),
40
+ },
41
+ }));
42
+ } }));
43
+ };
44
+ this.createAndAssignTag = async ({ name, id = uuid(), filteredListSize, onSubmit, assignOptimisticActionParams, createOptimisticActionParams, }) => {
45
+ const newIndex = this._getNewIndex();
46
+ this.optimisticActions.createOne({ id, index: newIndex }, Object.assign(Object.assign({}, assignOptimisticActionParams), { submit: async (_) => {
47
+ const newTag = await this._createAndAssign({
48
+ name,
49
+ id,
50
+ filteredListSize,
51
+ onSubmit,
52
+ createOptimisticActionParams,
53
+ });
54
+ return [{ id: newTag.id, index: newIndex }];
55
+ } }));
56
+ };
57
+ this._assignTag = async ({ tagIds, tag, onSubmit, isFromSearch, }) => {
58
+ this._invokeBiOnAssignUnassign({
59
+ actionName: 'Assign',
60
+ tag,
61
+ isFromSearch,
62
+ });
63
+ await (onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit({
64
+ privateTags: {
65
+ tagIds: Array.from(new Set([...tagIds, tag.id])),
66
+ },
67
+ }));
68
+ };
69
+ this._createAndAssign = async ({ name, id, filteredListSize, onSubmit, createOptimisticActionParams, }) => {
70
+ const isFromSearch = true;
71
+ let assignError;
72
+ let newTag = this.tagsManagementState.items.find((tag) => tag.name === name);
73
+ if (newTag) {
74
+ await this._assignTag({
75
+ tagIds: this.assignedTagIds.filter((tagId) => tagId !== id),
76
+ tag: newTag,
77
+ onSubmit,
78
+ isFromSearch,
79
+ });
80
+ return newTag;
81
+ }
82
+ newTag = await this._createTag({
83
+ name,
84
+ id,
85
+ filteredListSize,
86
+ isFromSearch,
87
+ createOptimisticActionParams,
88
+ onCreateSuccess: async (newTag) => {
89
+ try {
90
+ await this._assignTag({
91
+ tagIds: this.assignedTagIds.filter((tagId) => tagId !== id),
92
+ tag: newTag,
93
+ onSubmit,
94
+ isFromSearch,
95
+ });
96
+ }
97
+ catch (error) {
98
+ assignError = error;
99
+ }
100
+ },
101
+ });
102
+ // We want to throw assign exception in assign optimistic context so assign tryAgain (and not create) will be triggered
103
+ if (assignError) {
104
+ throw assignError;
105
+ }
106
+ return newTag;
107
+ };
108
+ this._createTag = async ({ name, id, filteredListSize, isFromSearch, onCreateSuccess, createOptimisticActionParams, }) => {
109
+ return new Promise(async (resolve) => {
110
+ await this.tagsManagementState.createTag({
111
+ name,
112
+ id,
113
+ filteredListSize,
114
+ origin: this.origin,
115
+ isFromSearch,
116
+ tagsBIReporter: this.tagsBIReporter,
117
+ optimisticActionParams: createOptimisticActionParams,
118
+ onSuccess: async (newTag) => {
119
+ await (onCreateSuccess === null || onCreateSuccess === void 0 ? void 0 : onCreateSuccess(newTag));
120
+ resolve(newTag);
121
+ },
122
+ });
123
+ });
124
+ };
125
+ this.tagsManagementState = tagsManagementState;
126
+ this.origin = origin;
127
+ this.tagsBIReporter = tagsBIReporter;
128
+ this.fqdn = params.fqdn;
129
+ makeObservable(this, {
130
+ initialTags: observable,
131
+ init: action,
132
+ assignTag: action,
133
+ createAndAssignTag: action,
134
+ unassignTag: action,
135
+ clear: action,
136
+ assignedTags: computed,
137
+ initialTagIds: computed,
138
+ isDirty: computed,
139
+ });
140
+ this.collection = new CollectionState(Object.assign(Object.assign({}, tagsManagementState.container), { events: {}, queryName: [this.fqdnString, origin, entityId].join('/'), fetchData: async () => {
141
+ return {
142
+ items: this.initialTags,
143
+ total: this.initialTags.length,
144
+ };
145
+ }, itemKey: (tag) => tag.id, itemName: (tag) => tag.id, fetchErrorMessage: () => '', filters: {} }));
146
+ this.optimisticActions = new CollectionOptimisticActions({
147
+ collection: this.collection,
148
+ container: tagsManagementState.container,
149
+ orderBy: () => [
150
+ {
151
+ fieldName: ({ index }) => index,
152
+ order: 'asc',
153
+ },
154
+ ],
155
+ });
156
+ }
157
+ init({ initialTags, entityId, }) {
158
+ var _a;
159
+ this.initialTags = Array.from(new Set(((_a = initialTags === null || initialTags === void 0 ? void 0 : initialTags.privateTags) === null || _a === void 0 ? void 0 : _a.tagIds) || [])).map((id, index) => ({
160
+ index,
161
+ id,
162
+ }));
163
+ this.entityId = entityId !== null && entityId !== void 0 ? entityId : undefined;
164
+ const { collection, optimisticActions } = this;
165
+ const disposers = [collection.init(), optimisticActions.init()];
166
+ this.initTask.runOnce(async () => {
167
+ await collection.initTask.status.promise;
168
+ this.tagsManagementState.init();
169
+ await this.tagsManagementState.initTask.status.promise;
170
+ });
171
+ return () => {
172
+ disposers.forEach((disposer) => disposer());
173
+ };
174
+ }
175
+ get fqdnString() {
176
+ return fqdnToString(this.fqdn);
177
+ }
178
+ get isLoading() {
179
+ const { status } = this.tagsManagementState.initTask;
180
+ return status.isIdle || status.isLoading || this.initTask.status.isLoading;
181
+ }
182
+ get isError() {
183
+ return (this.tagsManagementState.initTask.status.isError ||
184
+ this.initTask.status.isError);
185
+ }
186
+ retry() {
187
+ this.initTask.runOnce();
188
+ }
189
+ get assignedTags() {
190
+ var _a;
191
+ return (_a = this.collection.result.items) === null || _a === void 0 ? void 0 : _a.map(({ id }) => {
192
+ return this.tagsManagementState.items.find((tag) => tag.id === id);
193
+ }).filter(Boolean);
194
+ }
195
+ get assignedTagIds() {
196
+ return this.collection.result.items.map((tag) => tag.id);
197
+ }
198
+ get initialTagIds() {
199
+ return this.initialTags.map((tag) => tag.id);
200
+ }
201
+ clear() {
202
+ this.collection.result.clear();
203
+ }
204
+ get isDirty() {
205
+ if (this.initialTagIds.length !== this.assignedTagIds.length) {
206
+ return true;
207
+ }
208
+ const unassigendTagIds = this.initialTagIds.filter((id) => !this.assignedTagIds.includes(id));
209
+ const assignedTagIds = this.assignedTagIds.filter((id) => !this.initialTagIds.includes(id));
210
+ return unassigendTagIds.length !== 0 || assignedTagIds.length !== 0;
211
+ }
212
+ _invokeBiOnAssignUnassign({ actionName, tag, isFromSearch = false, }) {
213
+ this.tagsBIReporter.reportBi(cairoTagsAssignTag({
214
+ actionName,
215
+ isFromSearch,
216
+ itemId: this.entityId,
217
+ numItems: 1,
218
+ numTags: this.tagsManagementState.items.length,
219
+ numTagsAssigned: this.assignedTags.length,
220
+ tagName: tag.name,
221
+ origin: this.origin,
222
+ }));
223
+ }
224
+ _getNewIndex() {
225
+ const max = Math.max(0, ...this.collection.result.items.map((tag) => tag.index));
226
+ return max + 1;
227
+ }
228
+ }
229
+ //# sourceMappingURL=TagsAssignmentState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsAssignmentState.js","sourceRoot":"","sources":["../../../../src/state/TagsState/TagsAssignmentState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ import { cairoSearchForTags, cairoTagsAddDeleteTag, cairoTagsModalEndProcess, cairoTagsUnsuccessfulUpdateInServer, cairoTryAgainClicked, cairoUndoClicked, } from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';
2
+ import EventEmitter from 'events';
3
+ import { withoutIrrelevant } from '../../util';
4
+ const ACTIONS = {
5
+ 'Add tag': 'Add',
6
+ 'Rename tag': 'Rename',
7
+ 'Delete tag': 'Delete',
8
+ };
9
+ const withoutDefaults = withoutIrrelevant();
10
+ export class TagsBIReporter {
11
+ constructor(params) {
12
+ this.events = new EventEmitter();
13
+ this.actionsMade = {
14
+ Add: false,
15
+ Delete: false,
16
+ Rename: false,
17
+ };
18
+ this.collection = params.collection;
19
+ this.reportBi = params.reportBi;
20
+ this.location = params.location;
21
+ }
22
+ set setActionsMade(actionName) {
23
+ if (!(actionName in ACTIONS)) {
24
+ throw Error(`Unknown action ${actionName} was invoked`);
25
+ }
26
+ const action = ACTIONS[actionName];
27
+ this.actionsMade = Object.assign(Object.assign({}, this.actionsMade), { [action]: true });
28
+ }
29
+ resetActionsMade() {
30
+ this.actionsMade = {
31
+ Add: false,
32
+ Delete: false,
33
+ Rename: false,
34
+ };
35
+ }
36
+ _clearAllEvents() {
37
+ const { events } = this;
38
+ events.removeAllListeners('select');
39
+ events.removeAllListeners('blur');
40
+ events.removeAllListeners('add');
41
+ events.removeAllListeners('clear');
42
+ }
43
+ _getErrorType(e) {
44
+ const isNetworkError = (e === null || e === void 0 ? void 0 : e.code) === 'ERR_NETWORK';
45
+ return isNetworkError ? 'Network error' : 'Technical issue';
46
+ }
47
+ onSearch(searchValue) {
48
+ const { events } = this;
49
+ const afterSearchParams = {
50
+ searchResultsCnt: this.collection.result.items.filter((item) => item.name.toLowerCase().includes(searchValue.toLowerCase())).length,
51
+ searchTerm: searchValue,
52
+ };
53
+ const reportTagSelectedSearchBI = () => {
54
+ this._clearAllEvents();
55
+ this.reportBi(withoutDefaults(cairoSearchForTags)(Object.assign(Object.assign({}, afterSearchParams), { location: this.location, endType: 'Tag selected' })));
56
+ };
57
+ const reportSearchDismissedSearchBI = () => {
58
+ this._clearAllEvents();
59
+ this.reportBi(withoutDefaults(cairoSearchForTags)(Object.assign(Object.assign({}, afterSearchParams), { location: this.location, endType: 'Search dismissed' })));
60
+ };
61
+ const reportAddNewFromSearchBI = () => {
62
+ this._clearAllEvents();
63
+ this.reportBi(withoutDefaults(cairoSearchForTags)(Object.assign(Object.assign({}, afterSearchParams), { location: this.location, endType: 'Add new tag' })));
64
+ };
65
+ this._clearAllEvents();
66
+ events.once('select', reportTagSelectedSearchBI);
67
+ events.once('blur', reportSearchDismissedSearchBI);
68
+ events.once('clear', reportSearchDismissedSearchBI);
69
+ events.once('add', reportAddNewFromSearchBI);
70
+ }
71
+ onAction(params) {
72
+ if (params.actionName) {
73
+ this.setActionsMade = params.actionName;
74
+ }
75
+ const afterActionParams = {
76
+ numTags: this.collection.result.items.length,
77
+ };
78
+ this.reportBi(withoutDefaults(cairoTagsAddDeleteTag)(Object.assign(Object.assign({}, params), afterActionParams)));
79
+ }
80
+ onError(params, error) {
81
+ const errorParams = {
82
+ numTags: this.collection.result.items.length,
83
+ errorType: this._getErrorType(error),
84
+ };
85
+ this.reportBi(withoutDefaults(cairoTagsUnsuccessfulUpdateInServer)(Object.assign(Object.assign({}, errorParams), params)));
86
+ }
87
+ onTryAgain(params) {
88
+ const tryAgainParams = {
89
+ loaction: 'Toast',
90
+ };
91
+ this.reportBi(withoutDefaults(cairoTryAgainClicked)(Object.assign(Object.assign({}, tryAgainParams), params)));
92
+ }
93
+ onUndo(params) {
94
+ this.reportBi(withoutDefaults(cairoUndoClicked)(params));
95
+ }
96
+ getActionsMadeChangesString() {
97
+ const actionsMadeArray = [];
98
+ this.actionsMade.Add && actionsMadeArray.push('Add');
99
+ this.actionsMade.Delete && actionsMadeArray.push('Delete');
100
+ this.actionsMade.Rename && actionsMadeArray.push('Rename');
101
+ return actionsMadeArray.join('/');
102
+ }
103
+ onModalClose(params) {
104
+ let endType = this.getActionsMadeChangesString();
105
+ if (endType) {
106
+ endType = `Close with changes(${endType})`;
107
+ }
108
+ else {
109
+ endType = 'Close without changes';
110
+ }
111
+ this.reportBi(withoutDefaults(cairoTagsModalEndProcess)(Object.assign(Object.assign({}, params), { numTags: this.collection.result.items.length, endType })));
112
+ this.resetActionsMade();
113
+ }
114
+ }
115
+ //# sourceMappingURL=TagsBIReporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsBIReporter.js","sourceRoot":"","sources":["../../../../src/state/TagsState/TagsBIReporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,202 @@
1
+ import { action, computed, makeObservable, observable } from 'mobx';
2
+ import { cairoTagsWidgetClickOnCta, cairoTagsWidgetLoaded, } from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';
3
+ import { TAG_MAX_LENGTH } from './TagsManagementState';
4
+ import { TagsSearchState } from './TagsSearchState';
5
+ import { TagsAssignmentState, } from './TagsAssignmentState';
6
+ import { TagsBIReporter } from './TagsBIReporter';
7
+ export const ADD_ITEM_OPTION_ID = 'add-item-option';
8
+ export const MANAGE_TAGS_OPTION_ID = 'manage-tags-option';
9
+ export class TagsFormState {
10
+ constructor({ tagsManagementState, origin }) {
11
+ this.previousSearchValue = '';
12
+ this.isMultiSelectOnFocus = false;
13
+ this.assignOptimisticActionParams = (tagName) => ({
14
+ onError: (error) => {
15
+ this.tagsBIReporter.onError({
16
+ tagName,
17
+ actionName: 'Assign tag',
18
+ origin: this.origin,
19
+ }, error);
20
+ },
21
+ errorToast: () => {
22
+ return {
23
+ biName: 'cairo-assign-tag-error',
24
+ message: this.container.translate('cairo.tags.collectionPage.toast.update.error'),
25
+ };
26
+ },
27
+ onTryAgain: () => {
28
+ this.tagsBIReporter.onTryAgain({
29
+ actionName: 'Assign tag',
30
+ });
31
+ },
32
+ });
33
+ this.assignTag = async (tag, onSubmit) => {
34
+ this.tagsAssignmentState.assignTag({
35
+ tag,
36
+ onSubmit,
37
+ isFromSearch: this.previousSearchValue !== '',
38
+ optimisticActionParams: this.assignOptimisticActionParams(tag.name),
39
+ });
40
+ };
41
+ this.unassignTag = async (tagId, onSubmit) => {
42
+ const tagToUnassign = this.tagsAssignmentState.assignedTags.find((tag) => tag.id === tagId);
43
+ if (tagToUnassign) {
44
+ this.tagsAssignmentState.unassignTag({
45
+ tag: tagToUnassign,
46
+ onSubmit,
47
+ isFromSearch: false,
48
+ optimisticActionParams: {
49
+ errorToast: () => {
50
+ return {
51
+ biName: 'cairo-remove-assign-tag-error',
52
+ message: this.container.translate('cairo.tags.collectionPage.toast.update.error'),
53
+ };
54
+ },
55
+ onError: (error) => {
56
+ this.tagsBIReporter.onError({
57
+ tagName: tagToUnassign.name,
58
+ actionName: 'Remove assign tag',
59
+ origin: this.origin,
60
+ }, error);
61
+ },
62
+ onTryAgain: () => {
63
+ this.tagsBIReporter.onTryAgain({
64
+ actionName: 'Remove assign tag',
65
+ });
66
+ },
67
+ },
68
+ });
69
+ }
70
+ };
71
+ this.createAndAssignTag = async (name, onSubmit) => {
72
+ this.tagsAssignmentState.createAndAssignTag({
73
+ name,
74
+ onSubmit,
75
+ filteredListSize: this.displayedTagOptions.length,
76
+ createOptimisticActionParams: {
77
+ errorToast: () => {
78
+ return {
79
+ biName: 'cairo-save-new-tag-error',
80
+ message: this.container.translate('cairo.tags.collectionPage.toast.create.error'),
81
+ };
82
+ },
83
+ },
84
+ assignOptimisticActionParams: this.assignOptimisticActionParams(name),
85
+ });
86
+ };
87
+ this.validate = async () => {
88
+ const tags = {
89
+ privateTags: { tagIds: this.tagsAssignmentState.assignedTagIds },
90
+ };
91
+ return {
92
+ isValid: true,
93
+ tags,
94
+ values: tags,
95
+ };
96
+ };
97
+ this.container = tagsManagementState.container;
98
+ this.origin = origin;
99
+ this.tagsManagementState = tagsManagementState;
100
+ this.tagsBIReporter = new TagsBIReporter({
101
+ collection: this.tagsManagementState.collection,
102
+ reportBi: this.container.createBILogger(Object.assign({ componentType: 'TagsWidget' }, tagsManagementState.fqdn)),
103
+ location: 'Tags widget',
104
+ });
105
+ this.tagsAssignmentState = new TagsAssignmentState({
106
+ tagsManagementState: this.tagsManagementState,
107
+ tagsBIReporter: this.tagsBIReporter,
108
+ origin,
109
+ fqdn: tagsManagementState.fqdn,
110
+ });
111
+ this.tagsSearchState = new TagsSearchState({
112
+ tagsManagementState: this.tagsManagementState,
113
+ });
114
+ makeObservable(this, {
115
+ init: action,
116
+ previousSearchValue: observable,
117
+ isMultiSelectOnFocus: observable,
118
+ displayedAssignedTags: computed,
119
+ displayedTagOptions: computed,
120
+ isDirty: computed,
121
+ handleManageTagsCtaClick: action,
122
+ handleSearchChange: action,
123
+ handleOptionsShow: action,
124
+ setIsMultiSelectOnFocus: action,
125
+ });
126
+ }
127
+ init({ initialTags, entityId, }) {
128
+ var _a, _b, _c;
129
+ this.entityId = entityId;
130
+ const disposers = [
131
+ this.tagsAssignmentState.init({
132
+ initialTags,
133
+ entityId,
134
+ }),
135
+ ];
136
+ this.tagsBIReporter.reportBi(cairoTagsWidgetLoaded({
137
+ itemId: (_a = this.entityId) !== null && _a !== void 0 ? _a : undefined,
138
+ numTags: this.tagsManagementState.items.length,
139
+ numTagsAssigned: (_c = (_b = initialTags === null || initialTags === void 0 ? void 0 : initialTags.privateTags) === null || _b === void 0 ? void 0 : _b.tagIds) === null || _c === void 0 ? void 0 : _c.length,
140
+ }));
141
+ return () => {
142
+ disposers.forEach((disposer) => disposer === null || disposer === void 0 ? void 0 : disposer());
143
+ };
144
+ }
145
+ get displayedAssignedTags() {
146
+ return this.tagsAssignmentState.assignedTags.map((assignedTag) => ({
147
+ id: assignedTag.id,
148
+ label: assignedTag.name,
149
+ }));
150
+ }
151
+ get displayedTagOptions() {
152
+ return this.tagsSearchState.filteredItems
153
+ .filter((tag) => !this.displayedAssignedTags.find((assignedTag) => assignedTag.label === tag.name))
154
+ .map((tag) => {
155
+ return { id: tag.id, value: tag.name };
156
+ });
157
+ }
158
+ get isInEmptyState() {
159
+ return this.tagsManagementState.items.length === 0;
160
+ }
161
+ get searchValue() {
162
+ return this.tagsSearchState.searchValue;
163
+ }
164
+ get shouldShowCreateTagOption() {
165
+ return this.searchValue && !this.tagsSearchState.hasSameTagAsSearch;
166
+ }
167
+ handleTagSelect(option, onSubmit) {
168
+ if (option.id === ADD_ITEM_OPTION_ID) {
169
+ this._invokeBiOnCtaClick('Create tags');
170
+ const tagName = this.previousSearchValue.slice(0, TAG_MAX_LENGTH);
171
+ this.createAndAssignTag(tagName, onSubmit);
172
+ return;
173
+ }
174
+ this.assignTag({ id: option.id, name: option.value }, onSubmit);
175
+ }
176
+ handleManageTagsCtaClick() {
177
+ this._invokeBiOnCtaClick('Manage tags');
178
+ }
179
+ handleSearchChange(newSearchValue) {
180
+ this.previousSearchValue = this.searchValue;
181
+ this.tagsSearchState.searchValue = newSearchValue;
182
+ }
183
+ handleOptionsShow() {
184
+ this._invokeBiOnCtaClick('Assign tags');
185
+ }
186
+ setIsMultiSelectOnFocus(isOnFocusValue) {
187
+ this.isMultiSelectOnFocus = isOnFocusValue;
188
+ }
189
+ get isDirty() {
190
+ return this.tagsAssignmentState.isDirty;
191
+ }
192
+ _invokeBiOnCtaClick(actionName) {
193
+ var _a;
194
+ return this.tagsBIReporter.reportBi(cairoTagsWidgetClickOnCta({
195
+ itemId: (_a = this.entityId) !== null && _a !== void 0 ? _a : undefined,
196
+ numTags: this.tagsManagementState.items.length,
197
+ numTagsAssigned: this.tagsAssignmentState.assignedTags.length,
198
+ actionName,
199
+ }));
200
+ }
201
+ }
202
+ //# sourceMappingURL=TagsFormState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsFormState.js","sourceRoot":"","sources":["../../../../src/state/TagsState/TagsFormState.ts"],"names":[],"mappings":"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"}