@wix/bex-core 2.79.0 → 2.81.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 (163) hide show
  1. package/dist/cjs/assets/locale/messages_cs.json +8 -5
  2. package/dist/cjs/assets/locale/messages_da.json +12 -9
  3. package/dist/cjs/assets/locale/messages_de.json +11 -8
  4. package/dist/cjs/assets/locale/messages_en.json +6 -3
  5. package/dist/cjs/assets/locale/messages_es.json +11 -8
  6. package/dist/cjs/assets/locale/messages_fr.json +11 -8
  7. package/dist/cjs/assets/locale/messages_hi.json +5 -2
  8. package/dist/cjs/assets/locale/messages_id.json +11 -8
  9. package/dist/cjs/assets/locale/messages_it.json +11 -8
  10. package/dist/cjs/assets/locale/messages_ja.json +8 -5
  11. package/dist/cjs/assets/locale/messages_ko.json +11 -8
  12. package/dist/cjs/assets/locale/messages_nl.json +11 -8
  13. package/dist/cjs/assets/locale/messages_no.json +11 -8
  14. package/dist/cjs/assets/locale/messages_pl.json +11 -8
  15. package/dist/cjs/assets/locale/messages_pt.json +11 -8
  16. package/dist/cjs/assets/locale/messages_ru.json +11 -8
  17. package/dist/cjs/assets/locale/messages_sv.json +11 -8
  18. package/dist/cjs/assets/locale/messages_th.json +11 -8
  19. package/dist/cjs/assets/locale/messages_tr.json +11 -8
  20. package/dist/cjs/assets/locale/messages_uk.json +11 -8
  21. package/dist/cjs/assets/locale/messages_vi.json +11 -8
  22. package/dist/cjs/assets/locale/messages_zh.json +11 -8
  23. package/dist/cjs/hooks/useExport.js +4 -2
  24. package/dist/cjs/hooks/useExport.js.map +1 -1
  25. package/dist/cjs/model/wixPatternsEssentials.js.map +1 -1
  26. package/dist/cjs/providers/CairoProvider/CairoProvider.js +5 -3
  27. package/dist/cjs/providers/CairoProvider/CairoProvider.js.map +1 -1
  28. package/dist/cjs/services/DataExtensionService/createDataExtensionSchemaErrors.js.map +1 -1
  29. package/dist/cjs/services/DataExtensionService/dataExtensionService.js +27 -11
  30. package/dist/cjs/services/DataExtensionService/dataExtensionService.js.map +1 -1
  31. package/dist/cjs/services/DataExtensionService/updateDataExtensionSchemaErrors.js.map +1 -1
  32. package/dist/cjs/services/tagsService/createTagErrors.js.map +1 -0
  33. package/dist/cjs/services/tagsService/index.js +10 -0
  34. package/dist/cjs/services/tagsService/index.js.map +1 -0
  35. package/dist/cjs/services/tagsService/tagsService.js +78 -0
  36. package/dist/cjs/services/tagsService/tagsService.js.map +1 -0
  37. package/dist/cjs/services/translations.js.map +1 -1
  38. package/dist/cjs/state/CollectionOptimisticExecutor.js +10 -3
  39. package/dist/cjs/state/CollectionOptimisticExecutor.js.map +1 -1
  40. package/dist/cjs/state/CustomFieldModalState.js +42 -35
  41. package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
  42. package/dist/cjs/state/DataExtensionState.js +7 -2
  43. package/dist/cjs/state/DataExtensionState.js.map +1 -1
  44. package/dist/cjs/state/ExportState/ExportState.js +17 -11
  45. package/dist/cjs/state/ExportState/ExportState.js.map +1 -1
  46. package/dist/cjs/state/ExportState/createExportAsyncJobErrors.js.map +1 -1
  47. package/dist/cjs/state/ExportState/getExportAsyncJobErrors.js.map +1 -1
  48. package/dist/cjs/state/OptimisticActions.js.map +1 -1
  49. package/dist/cjs/state/TagsState/TagsManagementState.js +15 -21
  50. package/dist/cjs/state/TagsState/TagsManagementState.js.map +1 -1
  51. package/dist/cjs/state/WixPatternsContainer.js +6 -0
  52. package/dist/cjs/state/WixPatternsContainer.js.map +1 -1
  53. package/dist/cjs/state/buildWixPatternsContainer.js +5 -1
  54. package/dist/cjs/state/buildWixPatternsContainer.js.map +1 -1
  55. package/dist/cjs/state/optimistic-simulation/filterByApplyAllPatches.js +3 -0
  56. package/dist/cjs/state/optimistic-simulation/filterByApplyAllPatches.js.map +1 -1
  57. package/dist/cjs/testkit/WixPatternsContainer.driver.js +3 -1
  58. package/dist/cjs/testkit/WixPatternsContainer.driver.js.map +1 -1
  59. package/dist/esm/assets/locale/messages_cs.json +8 -5
  60. package/dist/esm/assets/locale/messages_da.json +12 -9
  61. package/dist/esm/assets/locale/messages_de.json +11 -8
  62. package/dist/esm/assets/locale/messages_en.json +6 -3
  63. package/dist/esm/assets/locale/messages_es.json +11 -8
  64. package/dist/esm/assets/locale/messages_fr.json +11 -8
  65. package/dist/esm/assets/locale/messages_hi.json +5 -2
  66. package/dist/esm/assets/locale/messages_id.json +11 -8
  67. package/dist/esm/assets/locale/messages_it.json +11 -8
  68. package/dist/esm/assets/locale/messages_ja.json +8 -5
  69. package/dist/esm/assets/locale/messages_ko.json +11 -8
  70. package/dist/esm/assets/locale/messages_nl.json +11 -8
  71. package/dist/esm/assets/locale/messages_no.json +11 -8
  72. package/dist/esm/assets/locale/messages_pl.json +11 -8
  73. package/dist/esm/assets/locale/messages_pt.json +11 -8
  74. package/dist/esm/assets/locale/messages_ru.json +11 -8
  75. package/dist/esm/assets/locale/messages_sv.json +11 -8
  76. package/dist/esm/assets/locale/messages_th.json +11 -8
  77. package/dist/esm/assets/locale/messages_tr.json +11 -8
  78. package/dist/esm/assets/locale/messages_uk.json +11 -8
  79. package/dist/esm/assets/locale/messages_vi.json +11 -8
  80. package/dist/esm/assets/locale/messages_zh.json +11 -8
  81. package/dist/esm/hooks/useExport.js +2 -1
  82. package/dist/esm/hooks/useExport.js.map +1 -1
  83. package/dist/esm/providers/CairoProvider/CairoProvider.js +2 -1
  84. package/dist/esm/providers/CairoProvider/CairoProvider.js.map +1 -1
  85. package/dist/esm/services/DataExtensionService/createDataExtensionSchemaErrors.js.map +1 -1
  86. package/dist/esm/services/DataExtensionService/dataExtensionService.js +17 -11
  87. package/dist/esm/services/DataExtensionService/dataExtensionService.js.map +1 -1
  88. package/dist/esm/services/DataExtensionService/updateDataExtensionSchemaErrors.js.map +1 -1
  89. package/dist/esm/services/tagsService/createTagErrors.js.map +1 -0
  90. package/dist/esm/services/tagsService/index.js +2 -0
  91. package/dist/esm/services/tagsService/index.js.map +1 -0
  92. package/dist/esm/services/tagsService/tagsService.js +43 -0
  93. package/dist/esm/services/tagsService/tagsService.js.map +1 -0
  94. package/dist/esm/state/CollectionOptimisticExecutor.js +8 -3
  95. package/dist/esm/state/CollectionOptimisticExecutor.js.map +1 -1
  96. package/dist/esm/state/CustomFieldModalState.js +38 -32
  97. package/dist/esm/state/CustomFieldModalState.js.map +1 -1
  98. package/dist/esm/state/DataExtensionState.js +4 -0
  99. package/dist/esm/state/DataExtensionState.js.map +1 -1
  100. package/dist/esm/state/ExportState/ExportState.js +16 -13
  101. package/dist/esm/state/ExportState/ExportState.js.map +1 -1
  102. package/dist/esm/state/ExportState/createExportAsyncJobErrors.js.map +1 -1
  103. package/dist/esm/state/ExportState/getExportAsyncJobErrors.js.map +1 -1
  104. package/dist/esm/state/TagsState/TagsManagementState.js +14 -11
  105. package/dist/esm/state/TagsState/TagsManagementState.js.map +1 -1
  106. package/dist/esm/state/WixPatternsContainer.js +4 -0
  107. package/dist/esm/state/WixPatternsContainer.js.map +1 -1
  108. package/dist/esm/state/buildWixPatternsContainer.js +4 -2
  109. package/dist/esm/state/buildWixPatternsContainer.js.map +1 -1
  110. package/dist/esm/state/optimistic-simulation/filterByApplyAllPatches.js +5 -0
  111. package/dist/esm/state/optimistic-simulation/filterByApplyAllPatches.js.map +1 -1
  112. package/dist/esm/testkit/WixPatternsContainer.driver.js +5 -1
  113. package/dist/esm/testkit/WixPatternsContainer.driver.js.map +1 -1
  114. package/dist/types/hooks/useExport.d.ts.map +1 -1
  115. package/dist/types/model/wixPatternsEssentials.d.ts +7 -0
  116. package/dist/types/model/wixPatternsEssentials.d.ts.map +1 -1
  117. package/dist/types/providers/CairoProvider/CairoProvider.d.ts +3 -2
  118. package/dist/types/providers/CairoProvider/CairoProvider.d.ts.map +1 -1
  119. package/dist/types/services/DataExtensionService/createDataExtensionSchemaErrors.d.ts +0 -1
  120. package/dist/types/services/DataExtensionService/createDataExtensionSchemaErrors.d.ts.map +1 -1
  121. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts +4 -1
  122. package/dist/types/services/DataExtensionService/dataExtensionService.d.ts.map +1 -1
  123. package/dist/types/services/DataExtensionService/updateDataExtensionSchemaErrors.d.ts +0 -1
  124. package/dist/types/services/DataExtensionService/updateDataExtensionSchemaErrors.d.ts.map +1 -1
  125. package/dist/types/{state/TagsState → services/tagsService}/createTagErrors.d.ts +3 -2
  126. package/dist/types/services/tagsService/createTagErrors.d.ts.map +1 -0
  127. package/dist/types/services/tagsService/index.d.ts +2 -0
  128. package/dist/types/services/tagsService/index.d.ts.map +1 -0
  129. package/dist/types/services/tagsService/tagsService.d.ts +19 -0
  130. package/dist/types/services/tagsService/tagsService.d.ts.map +1 -0
  131. package/dist/types/services/translations.d.ts +4 -1
  132. package/dist/types/services/translations.d.ts.map +1 -1
  133. package/dist/types/state/CollectionOptimisticExecutor.d.ts +6 -2
  134. package/dist/types/state/CollectionOptimisticExecutor.d.ts.map +1 -1
  135. package/dist/types/state/CustomFieldModalBiReporter.d.ts +1 -0
  136. package/dist/types/state/CustomFieldModalBiReporter.d.ts.map +1 -1
  137. package/dist/types/state/CustomFieldModalState.d.ts +3 -0
  138. package/dist/types/state/CustomFieldModalState.d.ts.map +1 -1
  139. package/dist/types/state/DataExtensionState.d.ts +2 -0
  140. package/dist/types/state/DataExtensionState.d.ts.map +1 -1
  141. package/dist/types/state/ExportState/ExportState.d.ts +3 -1
  142. package/dist/types/state/ExportState/ExportState.d.ts.map +1 -1
  143. package/dist/types/state/ExportState/createExportAsyncJobErrors.d.ts +2 -2
  144. package/dist/types/state/ExportState/createExportAsyncJobErrors.d.ts.map +1 -1
  145. package/dist/types/state/ExportState/getExportAsyncJobErrors.d.ts +2 -2
  146. package/dist/types/state/ExportState/getExportAsyncJobErrors.d.ts.map +1 -1
  147. package/dist/types/state/OptimisticActions.d.ts +4 -2
  148. package/dist/types/state/OptimisticActions.d.ts.map +1 -1
  149. package/dist/types/state/TagsState/TagsManagementState.d.ts +2 -0
  150. package/dist/types/state/TagsState/TagsManagementState.d.ts.map +1 -1
  151. package/dist/types/state/WixPatternsContainer.d.ts +5 -1
  152. package/dist/types/state/WixPatternsContainer.d.ts.map +1 -1
  153. package/dist/types/state/buildWixPatternsContainer.d.ts +3 -2
  154. package/dist/types/state/buildWixPatternsContainer.d.ts.map +1 -1
  155. package/dist/types/state/optimistic-simulation/filterByApplyAllPatches.d.ts.map +1 -1
  156. package/dist/types/testkit/WixPatternsContainer.driver.d.ts +2 -1
  157. package/dist/types/testkit/WixPatternsContainer.driver.d.ts.map +1 -1
  158. package/package.json +3 -3
  159. package/dist/cjs/state/TagsState/createTagErrors.js.map +0 -1
  160. package/dist/esm/state/TagsState/createTagErrors.js.map +0 -1
  161. package/dist/types/state/TagsState/createTagErrors.d.ts.map +0 -1
  162. /package/dist/cjs/{state/TagsState → services/tagsService}/createTagErrors.js +0 -0
  163. /package/dist/esm/{state/TagsState → services/tagsService}/createTagErrors.js +0 -0
@@ -5,7 +5,6 @@ exports.__esModule = true;
5
5
  exports.TagsManagementState = exports.TAG_MAX_LENGTH = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _mobx = require("mobx");
8
- var _http = require("@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http");
9
8
  var _types = require("@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types");
10
9
  var _uuid = require("uuid");
11
10
  var _events = require("events");
@@ -14,7 +13,8 @@ var _CollectionOptimisticActions = require("../CollectionOptimisticActions");
14
13
  var _TaskState = require("../TaskState");
15
14
  var _util = require("../../util");
16
15
  var _services = require("../../services");
17
- var _createTagErrors = require("./createTagErrors");
16
+ var _createTagErrors = require("../../services/tagsService/createTagErrors");
17
+ var _tagsService = require("../../services/tagsService");
18
18
  const TAG_MAX_LENGTH = exports.TAG_MAX_LENGTH = 30;
19
19
  const MAX_TAGS = 100;
20
20
  class TagsManagementState {
@@ -24,26 +24,23 @@ class TagsManagementState {
24
24
  (0, _defineProperty2.default)(this, "container", void 0);
25
25
  (0, _defineProperty2.default)(this, "fqdn", void 0);
26
26
  (0, _defineProperty2.default)(this, "initTask", new _TaskState.TaskState());
27
+ (0, _defineProperty2.default)(this, "tagsService", void 0);
27
28
  (0, _defineProperty2.default)(this, "events", new _events.EventEmitter());
28
29
  (0, _defineProperty2.default)(this, "overrideShowToast", false);
29
30
  this.container = params.container;
30
31
  this.fqdn = params.fqdn;
32
+ this.tagsService = new _tagsService.TagsService({
33
+ container: this.container
34
+ });
31
35
  this.collection = new _CollectionState.CollectionState({
32
36
  ...params.container,
33
37
  events: {},
34
38
  queryName: [this.fqdnString, 'tags'].join('/'),
35
39
  fetchData: async () => {
36
- const fetchedItems = await this.container.httpClient.request((0, _http.listTags)({
40
+ const fetchedItems = await this.tagsService.listTags({
37
41
  fqdn: this.fqdnString,
38
42
  exposure: _types.TagExposure.PRIVATE
39
- })).then(({
40
- data: {
41
- tags = []
42
- }
43
- }) => tags.filter(({
44
- id,
45
- name
46
- }) => id && name));
43
+ });
47
44
  return {
48
45
  items: fetchedItems,
49
46
  total: fetchedItems.length
@@ -239,14 +236,11 @@ class TagsManagementState {
239
236
  };
240
237
  this.optimisticActions.createOne(newTag, {
241
238
  submit: async () => {
242
- (0, _createTagErrors.createTagErrors)({
243
- translate: this.container.translate,
239
+ const serverCreatedTag = await this.tagsService.createTag({
240
+ tag: newTag
241
+ }, {
244
242
  visualType
245
243
  });
246
- const createTagResponse = await this.container.httpClient.request((0, _http.createTag)({
247
- tag: newTag
248
- }));
249
- const serverCreatedTag = createTagResponse.data.tag;
250
244
  await (onSuccess == null ? void 0 : onSuccess(serverCreatedTag));
251
245
  return [serverCreatedTag];
252
246
  },
@@ -285,9 +279,9 @@ class TagsManagementState {
285
279
  revision: (+tagToUpdate.revision + 1).toString()
286
280
  }, {
287
281
  submit: async () => {
288
- return this.container.httpClient.request((0, _http.updateTag)({
282
+ return this.tagsService.updateTag({
289
283
  tag: tagToUpdate
290
- }));
284
+ });
291
285
  },
292
286
  ...this._optimisticActionBaseParams(optimisticActionParams, {
293
287
  tagsBIReporter,
@@ -320,9 +314,9 @@ class TagsManagementState {
320
314
  });
321
315
  await this.optimisticActions.deleteOne(tagToDelete, {
322
316
  submit: async () => {
323
- return this.container.httpClient.request((0, _http.deleteTag)({
317
+ return this.tagsService.deleteTag({
324
318
  tagId: tagToDelete.id
325
- }));
319
+ });
326
320
  },
327
321
  ...this._optimisticActionBaseParams(optimisticActionParams, {
328
322
  tagsBIReporter,
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_http","_types","_uuid","_events","_CollectionState","_CollectionOptimisticActions","_TaskState","_util","_services","_createTagErrors","TAG_MAX_LENGTH","exports","MAX_TAGS","TagsManagementState","constructor","params","_defineProperty2","default","TaskState","EventEmitter","container","fqdn","collection","CollectionState","events","queryName","fqdnString","join","fetchData","fetchedItems","httpClient","request","listTags","exposure","TagExposure","PRIVATE","then","data","tags","filter","id","name","items","total","length","itemKey","itemName","filters","showToast","toastConfig","_params$container","overrideShowToast","emit","remove","optimisticActions","CollectionOptimisticActions","orderBy","sort","fieldName","createdDate","Date","valueOf","order","makeObservable","init","action","createTag","updateTag","deleteTag","retry","_isFqdnValid","disposers","initTask","runOnce","status","promise","forEach","disposer","result","isError","isLoading","isIdle","isSuccessful","isSuccess","fqdnToString","getTagById","tagId","_this$collection$resu","_keyedItemsMap","get","item","getTagNameById","_this$getTagById","resource","undefined","_optimisticActionBaseParams","optimisticActionParams","tagsBIReporter","actionName","origin","tagName","filteredListSize","isFromSearch","errorCode","onError","onTryAgain","onUndo","otherOptimisticActionParams","error","internalMonitor","reportError","WixPatternsError","originalException","category","hasReachedTagsLimit","showTagsLimitErrorToast","visualType","message","getTagsReachedLimitErrorMessage","translate","biName","type","tagSubOrigin","uuid","onSuccess","onAction","newTag","createOne","submit","createTagErrors","createTagResponse","tag","serverCreatedTag","tagToUpdate","previousName","updateOne","revision","toString","tagToDelete","deleteOne"],"sources":["../../../../src/state/TagsState/TagsManagementState.ts"],"sourcesContent":["import { action, makeObservable } from 'mobx';\nimport {\n listTags,\n createTag,\n updateTag,\n deleteTag,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/http';\nimport {\n Tag,\n TagExposure,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { TagsBIReporter } from './TagsBIReporter';\nimport { v4 as uuid } from 'uuid';\nimport { EventEmitter } from 'events';\nimport { WixPatternsContainer } from '../WixPatternsContainer';\nimport { Fqdn, ToastConfig } from '../../model';\nimport { CollectionState } from '../CollectionState';\nimport { CollectionOptimisticActions } from '../CollectionOptimisticActions';\nimport { TaskState } from '../TaskState';\nimport { TagErrorVisualType, TypedEmitter, fqdnToString } from '../../util';\nimport { WixPatternsError, WixPatternsErrorCode } from '../../services';\nimport {\n CreateManyParams,\n DeleteManyParams,\n OptimisticActionBasis,\n UpdateManyParams,\n} from '../OptimisticActions';\nimport {\n createTagErrors,\n getTagsReachedLimitErrorMessage,\n} from './createTagErrors';\n\nexport const TAG_MAX_LENGTH = 30;\nconst MAX_TAGS = 100;\n\nexport interface TagsManagementStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n}\n\nexport class TagsManagementState {\n readonly collection: CollectionState<Tag>;\n readonly optimisticActions: CollectionOptimisticActions<Tag, {}>;\n readonly container;\n readonly fqdn;\n readonly initTask = new TaskState();\n readonly events = new EventEmitter() as TypedEmitter<{\n showToast: (toastConfig: ToastConfig) => unknown;\n hideToast: (toastConfig: ToastConfig) => unknown;\n }>;\n overrideShowToast = false;\n\n constructor(params: TagsManagementStateParams) {\n this.container = params.container;\n this.fqdn = params.fqdn;\n this.collection = new CollectionState<Tag>({\n ...params.container,\n events: {},\n queryName: [this.fqdnString, 'tags'].join('/'),\n fetchData: async () => {\n const fetchedItems = await this.container.httpClient\n .request(\n listTags({ fqdn: this.fqdnString, exposure: TagExposure.PRIVATE }),\n )\n .then(({ data: { tags = [] } }) =>\n tags.filter(({ id, name }) => id && name),\n );\n\n return {\n items: fetchedItems,\n total: fetchedItems.length,\n };\n },\n itemKey: ({ id }) => id!,\n itemName: ({ name }) => name!,\n filters: {},\n showToast: (toastConfig: ToastConfig) => {\n if (this.overrideShowToast) {\n this.events.emit('showToast', toastConfig);\n return {\n remove: () => {\n this.events.emit('hideToast', toastConfig);\n },\n };\n }\n if (params?.container?.showToast) {\n return params.container.showToast(toastConfig);\n }\n return { remove: () => {} };\n },\n });\n\n this.optimisticActions = new CollectionOptimisticActions<Tag, {}>({\n container: this.container,\n collection: this.collection,\n orderBy: ({ sort }) => [\n ...(sort || []),\n {\n fieldName: ({ createdDate }) => (createdDate ?? new Date()).valueOf(),\n order: 'asc',\n },\n ],\n });\n\n makeObservable(this, {\n init: action,\n createTag: action,\n updateTag: action,\n deleteTag: action,\n retry: action,\n });\n }\n\n init() {\n if (!this._isFqdnValid()) {\n return;\n }\n\n const { collection, optimisticActions } = this;\n\n const disposers = [collection.init(), optimisticActions.init()];\n\n this.initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n retry() {\n this.collection.initTask.runOnce();\n }\n\n get items() {\n return this.collection.result.items;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n get isLoading() {\n const { status } = this.collection.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isSuccessful() {\n const { status } = this.collection.initTask;\n return status.isSuccess;\n }\n\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n getTagById(tagId: string) {\n return this.collection.result._keyedItemsMap?.get(tagId)?.item;\n }\n\n getTagNameById(tagId: string) {\n return this.getTagById(tagId)?.name;\n }\n\n private _isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n private _optimisticActionBaseParams<T extends OptimisticActionBasis>(\n optimisticActionParams: T,\n {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch = false,\n errorCode,\n }: {\n tagsBIReporter: TagsBIReporter;\n actionName: string;\n origin: string;\n tagName: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n errorCode: WixPatternsErrorCode;\n },\n ) {\n const { onError, onTryAgain, onUndo, ...otherOptimisticActionParams } =\n optimisticActionParams;\n\n return {\n onError: (error: unknown) => {\n tagsBIReporter.onError(\n {\n tagName,\n actionName,\n origin,\n },\n error,\n );\n this.container.internalMonitor.reportError({\n error: new WixPatternsError({\n errorCode,\n originalException: error,\n }),\n category: 'Tags',\n });\n\n onError?.(error);\n },\n onTryAgain: () => {\n tagsBIReporter.onTryAgain({\n actionName,\n isFromSearch,\n filteredListSize,\n });\n onTryAgain?.();\n },\n onUndo: () => {\n tagsBIReporter.onUndo({ actionName });\n onUndo?.();\n },\n ...otherOptimisticActionParams,\n };\n }\n\n private hasReachedTagsLimit() {\n return this.collection.result.total >= MAX_TAGS;\n }\n\n private showTagsLimitErrorToast(visualType: TagErrorVisualType) {\n this.collection.showToast({\n message: getTagsReachedLimitErrorMessage({\n visualType,\n translate: this.container.translate,\n }),\n biName: 'cairo-max-tags-error',\n type: 'ERROR',\n });\n }\n\n async createTag({\n name,\n origin,\n tagSubOrigin,\n filteredListSize,\n id = uuid(),\n isFromSearch = false,\n onSuccess,\n optimisticActionParams = {},\n tagsBIReporter,\n visualType = 'toast',\n }: {\n name: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n id?: string;\n isFromSearch?: boolean;\n onSuccess?: (tag: Tag) => void | Promise<void>;\n optimisticActionParams?: Partial<CreateManyParams<Tag>>;\n tagsBIReporter: TagsBIReporter;\n visualType?: TagErrorVisualType;\n }) {\n const actionName = 'Add tag';\n\n tagsBIReporter.onAction({\n tagName: name,\n isFromSearch,\n actionName,\n origin,\n tagSubOrigin,\n });\n\n if (this.hasReachedTagsLimit()) {\n return this.showTagsLimitErrorToast(visualType);\n }\n\n const newTag = {\n id,\n name,\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n createdDate: new Date(),\n };\n\n this.optimisticActions.createOne(newTag, {\n submit: async () => {\n createTagErrors({\n translate: this.container.translate,\n visualType,\n });\n\n const createTagResponse = await this.container.httpClient.request(\n createTag({ tag: newTag }),\n );\n\n const serverCreatedTag = createTagResponse.data.tag!;\n await onSuccess?.(serverCreatedTag);\n\n return [serverCreatedTag];\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: name,\n isFromSearch,\n errorCode: 'CreateTagFailed',\n }),\n });\n }\n\n async updateTag({\n tagToUpdate,\n previousName,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = false,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToUpdate: Tag;\n previousName: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<UpdateManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const actionName = 'Rename tag';\n\n tagsBIReporter.onAction({\n actionName,\n previousName,\n tagName: tagToUpdate.name!,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n this.optimisticActions.updateOne(\n { ...tagToUpdate, revision: (+tagToUpdate.revision! + 1).toString() },\n {\n submit: async () => {\n return this.container.httpClient.request(\n updateTag({ tag: tagToUpdate }),\n );\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: previousName,\n isFromSearch,\n errorCode: 'UpdateTagFailed',\n }),\n },\n );\n }\n\n async deleteTag({\n tagToDelete,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = true,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToDelete: Tag;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<DeleteManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const tagName = tagToDelete.name!;\n const actionName = 'Delete tag';\n\n tagsBIReporter.onAction({\n actionName,\n tagName,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n await this.optimisticActions.deleteOne(tagToDelete, {\n submit: async () => {\n return this.container.httpClient.request(\n deleteTag({ tagId: tagToDelete.id! }),\n );\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch,\n errorCode: 'RemovetagFailed',\n }),\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_types","_uuid","_events","_CollectionState","_CollectionOptimisticActions","_TaskState","_util","_services","_createTagErrors","_tagsService","TAG_MAX_LENGTH","exports","MAX_TAGS","TagsManagementState","constructor","params","_defineProperty2","default","TaskState","EventEmitter","container","fqdn","tagsService","TagsService","collection","CollectionState","events","queryName","fqdnString","join","fetchData","fetchedItems","listTags","exposure","TagExposure","PRIVATE","items","total","length","itemKey","id","itemName","name","filters","showToast","toastConfig","_params$container","overrideShowToast","emit","remove","optimisticActions","CollectionOptimisticActions","orderBy","sort","fieldName","createdDate","Date","valueOf","order","makeObservable","init","action","createTag","updateTag","deleteTag","retry","_isFqdnValid","disposers","initTask","runOnce","status","promise","forEach","disposer","result","isError","isLoading","isIdle","isSuccessful","isSuccess","fqdnToString","getTagById","tagId","_this$collection$resu","_keyedItemsMap","get","item","getTagNameById","_this$getTagById","resource","undefined","_optimisticActionBaseParams","optimisticActionParams","tagsBIReporter","actionName","origin","tagName","filteredListSize","isFromSearch","errorCode","onError","onTryAgain","onUndo","otherOptimisticActionParams","error","internalMonitor","reportError","WixPatternsError","originalException","category","hasReachedTagsLimit","showTagsLimitErrorToast","visualType","message","getTagsReachedLimitErrorMessage","translate","biName","type","tagSubOrigin","uuid","onSuccess","onAction","newTag","createOne","submit","serverCreatedTag","tag","tagToUpdate","previousName","updateOne","revision","toString","tagToDelete","deleteOne"],"sources":["../../../../src/state/TagsState/TagsManagementState.ts"],"sourcesContent":["import { action, makeObservable } from 'mobx';\nimport {\n Tag,\n TagExposure,\n} from '@wix/bex-utils/@wix/ambassador-os-tags-v1-tag/types';\nimport { TagsBIReporter } from './TagsBIReporter';\nimport { v4 as uuid } from 'uuid';\nimport { EventEmitter } from 'events';\nimport { WixPatternsContainer } from '../WixPatternsContainer';\nimport { Fqdn, ToastConfig } from '../../model';\nimport { CollectionState } from '../CollectionState';\nimport { CollectionOptimisticActions } from '../CollectionOptimisticActions';\nimport { TaskState } from '../TaskState';\nimport { TagErrorVisualType, TypedEmitter, fqdnToString } from '../../util';\nimport { WixPatternsError, WixPatternsErrorCode } from '../../services';\nimport {\n CreateManyParams,\n DeleteManyParams,\n OptimisticActionBasis,\n UpdateManyParams,\n} from '../OptimisticActions';\nimport { getTagsReachedLimitErrorMessage } from '../../services/tagsService/createTagErrors';\nimport { TagsService } from '../../services/tagsService';\n\nexport const TAG_MAX_LENGTH = 30;\nconst MAX_TAGS = 100;\n\nexport interface TagsManagementStateParams {\n readonly container: WixPatternsContainer;\n readonly fqdn: Fqdn;\n}\n\nexport class TagsManagementState {\n readonly collection: CollectionState<Tag>;\n readonly optimisticActions: CollectionOptimisticActions<Tag, {}>;\n readonly container;\n readonly fqdn;\n readonly initTask = new TaskState();\n readonly tagsService;\n readonly events = new EventEmitter() as TypedEmitter<{\n showToast: (toastConfig: ToastConfig) => unknown;\n hideToast: (toastConfig: ToastConfig) => unknown;\n }>;\n overrideShowToast = false;\n\n constructor(params: TagsManagementStateParams) {\n this.container = params.container;\n this.fqdn = params.fqdn;\n this.tagsService = new TagsService({\n container: this.container,\n });\n\n this.collection = new CollectionState<Tag>({\n ...params.container,\n events: {},\n queryName: [this.fqdnString, 'tags'].join('/'),\n fetchData: async () => {\n const fetchedItems = await this.tagsService.listTags({\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n });\n\n return {\n items: fetchedItems,\n total: fetchedItems.length,\n };\n },\n itemKey: ({ id }) => id!,\n itemName: ({ name }) => name!,\n filters: {},\n showToast: (toastConfig: ToastConfig) => {\n if (this.overrideShowToast) {\n this.events.emit('showToast', toastConfig);\n return {\n remove: () => {\n this.events.emit('hideToast', toastConfig);\n },\n };\n }\n if (params?.container?.showToast) {\n return params.container.showToast(toastConfig);\n }\n return { remove: () => {} };\n },\n });\n\n this.optimisticActions = new CollectionOptimisticActions<Tag, {}>({\n container: this.container,\n collection: this.collection,\n orderBy: ({ sort }) => [\n ...(sort || []),\n {\n fieldName: ({ createdDate }) => (createdDate ?? new Date()).valueOf(),\n order: 'asc',\n },\n ],\n });\n\n makeObservable(this, {\n init: action,\n createTag: action,\n updateTag: action,\n deleteTag: action,\n retry: action,\n });\n }\n\n init() {\n if (!this._isFqdnValid()) {\n return;\n }\n\n const { collection, optimisticActions } = this;\n\n const disposers = [collection.init(), optimisticActions.init()];\n\n this.initTask.runOnce(async () => {\n collection.initTask.runOnce();\n\n await collection.initTask.status.promise;\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n retry() {\n this.collection.initTask.runOnce();\n }\n\n get items() {\n return this.collection.result.items;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n\n get isLoading() {\n const { status } = this.collection.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isSuccessful() {\n const { status } = this.collection.initTask;\n return status.isSuccess;\n }\n\n get fqdnString() {\n return fqdnToString(this.fqdn);\n }\n\n getTagById(tagId: string) {\n return this.collection.result._keyedItemsMap?.get(tagId)?.item;\n }\n\n getTagNameById(tagId: string) {\n return this.getTagById(tagId)?.name;\n }\n\n private _isFqdnValid() {\n return this.fqdn.resource !== undefined;\n }\n\n private _optimisticActionBaseParams<T extends OptimisticActionBasis>(\n optimisticActionParams: T,\n {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch = false,\n errorCode,\n }: {\n tagsBIReporter: TagsBIReporter;\n actionName: string;\n origin: string;\n tagName: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n errorCode: WixPatternsErrorCode;\n },\n ) {\n const { onError, onTryAgain, onUndo, ...otherOptimisticActionParams } =\n optimisticActionParams;\n\n return {\n onError: (error: unknown) => {\n tagsBIReporter.onError(\n {\n tagName,\n actionName,\n origin,\n },\n error,\n );\n this.container.internalMonitor.reportError({\n error: new WixPatternsError({\n errorCode,\n originalException: error,\n }),\n category: 'Tags',\n });\n\n onError?.(error);\n },\n onTryAgain: () => {\n tagsBIReporter.onTryAgain({\n actionName,\n isFromSearch,\n filteredListSize,\n });\n onTryAgain?.();\n },\n onUndo: () => {\n tagsBIReporter.onUndo({ actionName });\n onUndo?.();\n },\n ...otherOptimisticActionParams,\n };\n }\n\n private hasReachedTagsLimit() {\n return this.collection.result.total >= MAX_TAGS;\n }\n\n private showTagsLimitErrorToast(visualType: TagErrorVisualType) {\n this.collection.showToast({\n message: getTagsReachedLimitErrorMessage({\n visualType,\n translate: this.container.translate,\n }),\n biName: 'cairo-max-tags-error',\n type: 'ERROR',\n });\n }\n\n async createTag({\n name,\n origin,\n tagSubOrigin,\n filteredListSize,\n id = uuid(),\n isFromSearch = false,\n onSuccess,\n optimisticActionParams = {},\n tagsBIReporter,\n visualType = 'toast',\n }: {\n name: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n id?: string;\n isFromSearch?: boolean;\n onSuccess?: (tag: Tag) => void | Promise<void>;\n optimisticActionParams?: Partial<CreateManyParams<Tag>>;\n tagsBIReporter: TagsBIReporter;\n visualType?: TagErrorVisualType;\n }) {\n const actionName = 'Add tag';\n\n tagsBIReporter.onAction({\n tagName: name,\n isFromSearch,\n actionName,\n origin,\n tagSubOrigin,\n });\n\n if (this.hasReachedTagsLimit()) {\n return this.showTagsLimitErrorToast(visualType);\n }\n\n const newTag = {\n id,\n name,\n fqdn: this.fqdnString,\n exposure: TagExposure.PRIVATE,\n createdDate: new Date(),\n };\n\n this.optimisticActions.createOne(newTag, {\n submit: async () => {\n const serverCreatedTag = await this.tagsService.createTag(\n {\n tag: newTag,\n },\n {\n visualType,\n },\n );\n\n await onSuccess?.(serverCreatedTag);\n\n return [serverCreatedTag];\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: name,\n isFromSearch,\n errorCode: 'CreateTagFailed',\n }),\n });\n }\n\n async updateTag({\n tagToUpdate,\n previousName,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = false,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToUpdate: Tag;\n previousName: string;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<UpdateManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const actionName = 'Rename tag';\n\n tagsBIReporter.onAction({\n actionName,\n previousName,\n tagName: tagToUpdate.name!,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n this.optimisticActions.updateOne(\n { ...tagToUpdate, revision: (+tagToUpdate.revision! + 1).toString() },\n {\n submit: async () => {\n return this.tagsService.updateTag({ tag: tagToUpdate });\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n filteredListSize,\n tagName: previousName,\n isFromSearch,\n errorCode: 'UpdateTagFailed',\n }),\n },\n );\n }\n\n async deleteTag({\n tagToDelete,\n origin,\n tagSubOrigin,\n filteredListSize,\n isFromSearch = true,\n optimisticActionParams = {},\n tagsBIReporter,\n }: {\n tagToDelete: Tag;\n origin: string;\n tagSubOrigin?: string;\n filteredListSize: number;\n isFromSearch?: boolean;\n optimisticActionParams?: Partial<DeleteManyParams<Tag, {}>>;\n tagsBIReporter: TagsBIReporter;\n }) {\n const tagName = tagToDelete.name!;\n const actionName = 'Delete tag';\n\n tagsBIReporter.onAction({\n actionName,\n tagName,\n isFromSearch,\n origin,\n tagSubOrigin,\n });\n\n await this.optimisticActions.deleteOne(tagToDelete, {\n submit: async () => {\n return this.tagsService.deleteTag({ tagId: tagToDelete.id! });\n },\n ...this._optimisticActionBaseParams(optimisticActionParams, {\n tagsBIReporter,\n actionName,\n origin,\n tagName,\n filteredListSize,\n isFromSearch,\n errorCode: 'RemovetagFailed',\n }),\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -20,12 +20,14 @@ class WixPatternsContainer {
20
20
  var _params$initialProps;
21
21
  (0, _defineProperty2.default)(this, "createEssentials", void 0);
22
22
  (0, _defineProperty2.default)(this, "errorMonitor", void 0);
23
+ (0, _defineProperty2.default)(this, "errorHandler", void 0);
23
24
  (0, _defineProperty2.default)(this, "internalMonitor", void 0);
24
25
  (0, _defineProperty2.default)(this, "internalExperiments", void 0);
25
26
  (0, _defineProperty2.default)(this, "experiments", void 0);
26
27
  (0, _defineProperty2.default)(this, "httpClient", void 0);
27
28
  (0, _defineProperty2.default)(this, "onlineManager", void 0);
28
29
  (0, _defineProperty2.default)(this, "focusManager", void 0);
30
+ (0, _defineProperty2.default)(this, "contextType", void 0);
29
31
  (0, _defineProperty2.default)(this, "history", void 0);
30
32
  (0, _defineProperty2.default)(this, "window", void 0);
31
33
  (0, _defineProperty2.default)(this, "useTranslation", void 0);
@@ -86,8 +88,12 @@ class WixPatternsContainer {
86
88
  this.onNavigationModal = params.onNavigationModal ?? new _ConditionalModalState.ConditionalModalState();
87
89
  this.environment = (0, _model.wixPatternsEnvironment)(params.environment);
88
90
  this.user = params.user;
91
+ this.contextType = params.contextType ?? 'SITE';
89
92
  this.createComponentSettings = params.createComponentSettings ?? _createComponentSettings.createComponentSettings;
90
93
  this.errorMonitor = params.errorMonitor;
94
+ this.errorHandler = params.errorHandler ?? {
95
+ withErrorHandler: fn => fn()
96
+ };
91
97
  this.httpClient = params.httpClient;
92
98
  this.onlineManager = params.onlineManager;
93
99
  this.focusManager = params.focusManager;
@@ -1 +1 @@
1
- {"version":3,"names":["_services","require","_model","_mobx","_TaskState","_OnlineState","_createComponentSettings","_ConditionalModalState","_events","_useExperimentsCompat","_uuid","_BeforeUnloadCompatState","WixPatternsContainer","constructor","params","_params$initialProps","_defineProperty2","default","TaskState","defaultParams","reportProps","environment","cairoSessionId","biLogger","report","artifactId","componentName","cairoVersion","uiLibVersion","csid","createEssentials","lodash","patchesCache","events","EventEmitter","_messagesEnImport","messagesEnImport","messagesEnImportGlobal","_fetchTranslations","fetchTranslations","onNavigationModal","ConditionalModalState","wixPatternsEnvironment","user","createComponentSettings","errorMonitor","httpClient","onlineManager","focusManager","history","useTranslation","useExperiments","createUseExperimentsCompat","experiments","showToast","usePageLocation","navigateTo","onNavigation","getHostContainer","window","queryCache","appendModalsToBody","onSidePanelOpen","closeSidePanel","onBeforeUnload","i18n","biLoggerFactory","fedopsLogger","internalFedops","internalErrorMonitor","internalExperiments","useSuspense","disableAutoInit","asyncMessagesLoader","locale","messages","initialProps","dsn","process","env","NODE_ENV","fedops","appName","scopes","STORYBOOK_VISUAL_E2E","options","fallbackLng","uuid","logger","internalMonitor","WixPatternsMonitor","translate","args","initTask","status","t","Trans","onlineState","OnlineState","reportBi","createBILogger","makeObservable","init","action","bound","initialFetch","dateFormatters","computed","isLoading","isSuccess","promise","run","Promise","all","ready","catch","e","console","error","medium","Intl","DateTimeFormat","language","dateStyle","mediumTime","timeStyle","time","disposers","BeforeUnloadCompatState","forEach","d","exports"],"sources":["../../../src/state/WixPatternsContainer.ts"],"sourcesContent":["import type { Essentials } from '@wix/fe-essentials/core';\nimport type { Trans, useTranslation } from '@wix/fe-essentials/react';\nimport type { ReportProps } from '@wix/fe-essentials/bi';\nimport {\n WixPatternsMonitor,\n Environment,\n ErrorMonitor,\n fetchTranslations,\n FocusManager,\n History,\n messagesEnImportGlobal,\n ModalLayoutProps,\n OnlineManager,\n PartialLodash,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { QueryCache } from 'react-query/core';\nimport {\n wixPatternsEnvironment,\n WixPatternsEssentials,\n WixPatternsInitialProps,\n CloseSidePanel,\n GetHostContainer,\n OnNavigation,\n OnSidePanelOpen,\n ShowToast,\n} from '../model';\nimport { action, computed, IObservableArray, makeObservable } from 'mobx';\nimport { TaskState } from './TaskState';\nimport { OnlineState } from './OnlineState';\nimport { createComponentSettings } from '../services/createComponentSettings';\nimport { OptimisticPatch } from './CollectionOptimisticPatch';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { TransitionState } from './TransitionState';\nimport { ReactElement } from 'react';\nimport { createUseExperimentsCompat } from './useExperimentsCompat';\nimport { v4 as uuid } from 'uuid';\nimport { BeforeUnloadCompatState } from './BeforeUnloadCompatState';\n\ntype WixPatternsContainerEvents = TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n}>;\n\nexport interface WixPatternsContainerParams {\n readonly initialProps?: WixPatternsInitialProps;\n readonly createEssentials: WixPatternsEssentials['createEssentials'];\n readonly biLogger?: WixPatternsEssentials['biLogger'];\n readonly messagesEnImport?: () => Promise<{}>;\n readonly fetchTranslations?: (p: {\n readonly errorMonitor: ErrorMonitor;\n }) => (locale: string) => Promise<{}>;\n readonly createComponentSettings?: WixPatternsEssentials['createComponentSettings'];\n readonly errorMonitor: ErrorMonitor;\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly onlineManager: OnlineManager;\n readonly focusManager: FocusManager;\n readonly history: History;\n readonly window: PartialWindow;\n readonly useTranslation: typeof useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments: WixPatternsEssentials['useExperiments'];\n readonly experiments: WixPatternsEssentials['experiments'];\n readonly environment: WixPatternsEssentials['environment'];\n readonly user: WixPatternsEssentials['user'];\n readonly showToast?: ShowToast;\n readonly usePageLocation?: WixPatternsEssentials['usePageLocation'];\n readonly navigateTo?: WixPatternsEssentials['navigateTo'];\n readonly onNavigation?: OnNavigation;\n readonly getHostContainer?: GetHostContainer;\n readonly queryCache: QueryCache;\n readonly patchesCache: Map<string, IObservableArray<OptimisticPatch<any>>>;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly lodash: PartialLodash;\n readonly events?: WixPatternsContainerEvents;\n readonly sidePanel?: TransitionState<string>;\n readonly onNavigationModal?: ConditionalModalState<ModalLayoutProps>;\n readonly sidePanelComponents?: Map<string, ReactElement>;\n readonly appendModalsToBody?: boolean;\n readonly onBeforeUnload?: WixPatternsEssentials['onBeforeUnload'];\n}\n\nexport class WixPatternsContainer {\n readonly createEssentials;\n readonly errorMonitor: WixPatternsContainerParams['errorMonitor'];\n readonly internalMonitor: WixPatternsMonitor;\n readonly internalExperiments;\n readonly experiments;\n readonly httpClient: WixPatternsContainerParams['httpClient'];\n readonly onlineManager;\n readonly focusManager;\n readonly history: WixPatternsContainerParams['history'];\n readonly window: WixPatternsContainerParams['window'];\n readonly useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments;\n readonly showToast?;\n readonly usePageLocation?;\n readonly navigateTo?;\n readonly onNavigation;\n readonly onBeforeUnload;\n readonly getHostContainer;\n readonly environment: Environment;\n readonly appendModalsToBody?: boolean;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly translate: Translate;\n readonly lodash;\n readonly i18n: Essentials['i18n'];\n readonly reportBi: ReportBI;\n readonly _messagesEnImport;\n readonly _fetchTranslations;\n\n queryCache: QueryCache;\n readonly patchesCache;\n\n readonly initTask = new TaskState<void>();\n readonly onlineState: OnlineState;\n\n readonly onNavigationModal;\n\n readonly events: TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n }>;\n\n readonly user;\n\n readonly cairoSessionId: string;\n\n readonly biLogger;\n\n readonly createComponentSettings;\n\n constructor(params: Readonly<WixPatternsContainerParams>) {\n this.createEssentials = params.createEssentials;\n this.lodash = params.lodash;\n this.patchesCache = params.patchesCache;\n this.events =\n params.events ?? (new EventEmitter() as WixPatternsContainerEvents);\n this._messagesEnImport = params.messagesEnImport ?? messagesEnImportGlobal;\n this._fetchTranslations = params.fetchTranslations ?? fetchTranslations;\n\n this.onNavigationModal =\n params.onNavigationModal ?? new ConditionalModalState();\n\n this.environment = wixPatternsEnvironment(params.environment);\n this.user = params.user;\n\n this.createComponentSettings =\n params.createComponentSettings ?? createComponentSettings;\n\n this.errorMonitor = params.errorMonitor;\n this.httpClient = params.httpClient;\n this.onlineManager = params.onlineManager;\n this.focusManager = params.focusManager;\n this.history = params.history;\n this.useTranslation = params.useTranslation;\n this.useExperiments = createUseExperimentsCompat(params.useExperiments);\n this.experiments = params.experiments;\n this.showToast = params.showToast;\n this.usePageLocation = params.usePageLocation;\n this.navigateTo = params.navigateTo;\n this.onNavigation = params.onNavigation;\n this.getHostContainer = params.getHostContainer;\n this.window = params.window;\n this.queryCache = params.queryCache;\n this.appendModalsToBody = params.appendModalsToBody;\n this.onSidePanelOpen = params.onSidePanelOpen;\n this.closeSidePanel = params.closeSidePanel;\n this.onBeforeUnload = params.onBeforeUnload;\n\n const {\n i18n,\n biLoggerFactory,\n fedopsLogger: internalFedops,\n errorMonitor: internalErrorMonitor,\n experiments: internalExperiments,\n } = this.createEssentials({\n i18n: {\n useSuspense: false,\n disableAutoInit: true,\n asyncMessagesLoader: async (locale) => {\n if (locale === 'en') {\n return this._messagesEnImport();\n }\n return this._fetchTranslations(this)(locale);\n },\n messages: params.initialProps?.messages,\n },\n errorMonitor: {\n dsn:\n process.env.NODE_ENV === 'production'\n ? 'https://9b9586a905eb429cbda9ea49d5d721f6@sentry-next.wixpress.com/8780'\n : '',\n /*\n TODO: not used in sentry-next API, need to be merged from reportError API with tags & extraData\n For Example: errorMonitor.captureException(error, { tags, contexts: { runtime: extraData }})\n beforeSend: (event, hint) => {\n this.internalMonitor.reportErrorThrownOncePerFlow();\n\n if (!event.tags) {\n event.tags = {};\n }\n\n if (!event.extra) {\n event.extra = {};\n }\n\n if (hint && hint.originalException) {\n event.extra.exception = hint.originalException;\n\n if (hint.originalException instanceof Error) {\n event.fingerprint = [\n `${hint.originalException.name}:${hint.originalException.message}`,\n ];\n }\n }\n\n event.tags.componentName = this.environment.componentName;\n event.tags.componentId = this.environment.componentId;\n event.tags.artifactId = this.environment.artifactId;\n event.tags.cairoVersion = this.environment.uiLibVersion;\n\n return event;\n },\n */\n },\n fedops: {\n appName: 'cairo',\n },\n experiments: {\n scopes: ['cairo'],\n },\n });\n\n if (\n typeof process !== 'undefined' &&\n process.env.STORYBOOK_VISUAL_E2E === 'true'\n ) {\n i18n.options.fallbackLng = [];\n }\n\n this.cairoSessionId = uuid();\n this.biLogger = params.biLogger ?? biLoggerFactory?.().logger();\n this.i18n = i18n;\n this.internalMonitor = new WixPatternsMonitor({\n errorMonitor: params.errorMonitor,\n internalErrorMonitor,\n internalFedops,\n environment: this.environment,\n csid: this.cairoSessionId,\n });\n this.internalExperiments = internalExperiments;\n\n this.translate = (...args) => {\n void this.initTask.status; // status is observable so reading it here starts mobx reactivity\n return this.i18n.t(...args);\n };\n\n this.Trans = params.Trans;\n\n this.onlineState = new OnlineState({\n onlineManager: this.onlineManager,\n focusManager: this.focusManager,\n translate: this.translate,\n showToast: this.showToast,\n });\n\n this.reportBi = this.createBILogger({});\n\n makeObservable(this, {\n init: action.bound,\n initialFetch: action.bound,\n dateFormatters: computed,\n });\n }\n\n _createComponentSettings(options: { namespace: string }) {\n return this.createComponentSettings(this)(options);\n }\n\n createBILogger = <P>(defaultParams: P): ReportBI => {\n return (reportProps: ReportProps) => {\n const { environment, cairoSessionId, biLogger } = this;\n\n return biLogger?.report({\n ...reportProps,\n params: {\n artifactId: environment.artifactId,\n componentName: environment.componentName,\n cairoVersion: environment.uiLibVersion,\n csid: cairoSessionId,\n ...defaultParams,\n ...reportProps.params,\n },\n });\n };\n };\n\n async initialFetch() {\n const { initTask, i18n, internalExperiments, experiments } = this;\n if (initTask.status.isLoading || initTask.status.isSuccess) {\n return initTask.status.promise;\n }\n\n await initTask.run(async () => {\n await Promise.all([\n i18n.init(),\n internalExperiments?.ready().catch((e) => {\n console.error(e);\n }),\n experiments.ready().catch((e) => {\n console.error(e);\n }),\n this._messagesEnImport(), // not all translation files contain all the keys, so en is required otherwise show error state\n ]);\n });\n\n return initTask.status.promise;\n }\n\n get dateFormatters() {\n return {\n medium: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n }),\n mediumTime: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n timeStyle: 'short',\n }),\n time: new Intl.DateTimeFormat(this.environment.language, {\n timeStyle: 'short',\n }),\n };\n }\n\n init() {\n const { onlineState } = this;\n\n this.initialFetch().catch((e) => {\n console.error(e);\n });\n\n const disposers = [\n onlineState.init(),\n new BeforeUnloadCompatState(this).init(),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_services","require","_model","_mobx","_TaskState","_OnlineState","_createComponentSettings","_ConditionalModalState","_events","_useExperimentsCompat","_uuid","_BeforeUnloadCompatState","WixPatternsContainer","constructor","params","_params$initialProps","_defineProperty2","default","TaskState","defaultParams","reportProps","environment","cairoSessionId","biLogger","report","artifactId","componentName","cairoVersion","uiLibVersion","csid","createEssentials","lodash","patchesCache","events","EventEmitter","_messagesEnImport","messagesEnImport","messagesEnImportGlobal","_fetchTranslations","fetchTranslations","onNavigationModal","ConditionalModalState","wixPatternsEnvironment","user","contextType","createComponentSettings","errorMonitor","errorHandler","withErrorHandler","fn","httpClient","onlineManager","focusManager","history","useTranslation","useExperiments","createUseExperimentsCompat","experiments","showToast","usePageLocation","navigateTo","onNavigation","getHostContainer","window","queryCache","appendModalsToBody","onSidePanelOpen","closeSidePanel","onBeforeUnload","i18n","biLoggerFactory","fedopsLogger","internalFedops","internalErrorMonitor","internalExperiments","useSuspense","disableAutoInit","asyncMessagesLoader","locale","messages","initialProps","dsn","process","env","NODE_ENV","fedops","appName","scopes","STORYBOOK_VISUAL_E2E","options","fallbackLng","uuid","logger","internalMonitor","WixPatternsMonitor","translate","args","initTask","status","t","Trans","onlineState","OnlineState","reportBi","createBILogger","makeObservable","init","action","bound","initialFetch","dateFormatters","computed","isLoading","isSuccess","promise","run","Promise","all","ready","catch","e","console","error","medium","Intl","DateTimeFormat","language","dateStyle","mediumTime","timeStyle","time","disposers","BeforeUnloadCompatState","forEach","d","exports"],"sources":["../../../src/state/WixPatternsContainer.ts"],"sourcesContent":["import type { Essentials } from '@wix/fe-essentials/core';\nimport type { Trans, useTranslation } from '@wix/fe-essentials/react';\nimport type { ReportProps } from '@wix/fe-essentials/bi';\nimport {\n WixPatternsMonitor,\n Environment,\n ErrorMonitor,\n fetchTranslations,\n FocusManager,\n History,\n messagesEnImportGlobal,\n ModalLayoutProps,\n OnlineManager,\n PartialLodash,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { QueryCache } from 'react-query/core';\nimport {\n wixPatternsEnvironment,\n WixPatternsEssentials,\n WixPatternsInitialProps,\n CloseSidePanel,\n GetHostContainer,\n OnNavigation,\n OnSidePanelOpen,\n ShowToast,\n ContextType,\n} from '../model';\nimport { action, computed, IObservableArray, makeObservable } from 'mobx';\nimport { TaskState } from './TaskState';\nimport { OnlineState } from './OnlineState';\nimport { createComponentSettings } from '../services/createComponentSettings';\nimport { OptimisticPatch } from './CollectionOptimisticPatch';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { TransitionState } from './TransitionState';\nimport { ReactElement } from 'react';\nimport { createUseExperimentsCompat } from './useExperimentsCompat';\nimport { v4 as uuid } from 'uuid';\nimport { BeforeUnloadCompatState } from './BeforeUnloadCompatState';\n\ntype WixPatternsContainerEvents = TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n}>;\n\nexport interface WixPatternsContainerParams {\n readonly initialProps?: WixPatternsInitialProps;\n readonly createEssentials: WixPatternsEssentials['createEssentials'];\n readonly biLogger?: WixPatternsEssentials['biLogger'];\n readonly messagesEnImport?: () => Promise<{}>;\n readonly fetchTranslations?: (p: {\n readonly errorMonitor: ErrorMonitor;\n }) => (locale: string) => Promise<{}>;\n readonly createComponentSettings?: WixPatternsEssentials['createComponentSettings'];\n readonly errorMonitor: ErrorMonitor;\n readonly httpClient: WixPatternsEssentials['httpClient'];\n readonly onlineManager: OnlineManager;\n readonly focusManager: FocusManager;\n readonly contextType?: ContextType;\n readonly history: History;\n readonly window: PartialWindow;\n readonly useTranslation: typeof useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments: WixPatternsEssentials['useExperiments'];\n readonly experiments: WixPatternsEssentials['experiments'];\n readonly environment: WixPatternsEssentials['environment'];\n readonly errorHandler?: WixPatternsEssentials['errorHandler'];\n readonly user: WixPatternsEssentials['user'];\n readonly showToast?: ShowToast;\n readonly usePageLocation?: WixPatternsEssentials['usePageLocation'];\n readonly navigateTo?: WixPatternsEssentials['navigateTo'];\n readonly onNavigation?: OnNavigation;\n readonly getHostContainer?: GetHostContainer;\n readonly queryCache: QueryCache;\n readonly patchesCache: Map<string, IObservableArray<OptimisticPatch<any>>>;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly lodash: PartialLodash;\n readonly events?: WixPatternsContainerEvents;\n readonly sidePanel?: TransitionState<string>;\n readonly onNavigationModal?: ConditionalModalState<ModalLayoutProps>;\n readonly sidePanelComponents?: Map<string, ReactElement>;\n readonly appendModalsToBody?: boolean;\n readonly onBeforeUnload?: WixPatternsEssentials['onBeforeUnload'];\n}\n\nexport class WixPatternsContainer {\n readonly createEssentials;\n readonly errorMonitor: WixPatternsContainerParams['errorMonitor'];\n readonly errorHandler;\n readonly internalMonitor: WixPatternsMonitor;\n readonly internalExperiments;\n readonly experiments;\n readonly httpClient: WixPatternsContainerParams['httpClient'];\n readonly onlineManager;\n readonly focusManager;\n readonly contextType: ContextType;\n readonly history: WixPatternsContainerParams['history'];\n readonly window: WixPatternsContainerParams['window'];\n readonly useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments;\n readonly showToast?;\n readonly usePageLocation?;\n readonly navigateTo?;\n readonly onNavigation;\n readonly onBeforeUnload;\n readonly getHostContainer;\n readonly environment: Environment;\n readonly appendModalsToBody?: boolean;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly translate: Translate;\n readonly lodash;\n readonly i18n: Essentials['i18n'];\n readonly reportBi: ReportBI;\n readonly _messagesEnImport;\n readonly _fetchTranslations;\n\n queryCache: QueryCache;\n readonly patchesCache;\n\n readonly initTask = new TaskState<void>();\n readonly onlineState: OnlineState;\n\n readonly onNavigationModal;\n\n readonly events: TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n }>;\n\n readonly user;\n\n readonly cairoSessionId: string;\n\n readonly biLogger;\n\n readonly createComponentSettings;\n\n constructor(params: Readonly<WixPatternsContainerParams>) {\n this.createEssentials = params.createEssentials;\n this.lodash = params.lodash;\n this.patchesCache = params.patchesCache;\n this.events =\n params.events ?? (new EventEmitter() as WixPatternsContainerEvents);\n this._messagesEnImport = params.messagesEnImport ?? messagesEnImportGlobal;\n this._fetchTranslations = params.fetchTranslations ?? fetchTranslations;\n\n this.onNavigationModal =\n params.onNavigationModal ?? new ConditionalModalState();\n\n this.environment = wixPatternsEnvironment(params.environment);\n this.user = params.user;\n this.contextType = params.contextType ?? 'SITE';\n\n this.createComponentSettings =\n params.createComponentSettings ?? createComponentSettings;\n\n this.errorMonitor = params.errorMonitor;\n this.errorHandler = params.errorHandler ?? {\n withErrorHandler: (fn) => fn(),\n };\n this.httpClient = params.httpClient;\n this.onlineManager = params.onlineManager;\n this.focusManager = params.focusManager;\n this.history = params.history;\n this.useTranslation = params.useTranslation;\n this.useExperiments = createUseExperimentsCompat(params.useExperiments);\n this.experiments = params.experiments;\n this.showToast = params.showToast;\n this.usePageLocation = params.usePageLocation;\n this.navigateTo = params.navigateTo;\n this.onNavigation = params.onNavigation;\n this.getHostContainer = params.getHostContainer;\n this.window = params.window;\n this.queryCache = params.queryCache;\n this.appendModalsToBody = params.appendModalsToBody;\n this.onSidePanelOpen = params.onSidePanelOpen;\n this.closeSidePanel = params.closeSidePanel;\n this.onBeforeUnload = params.onBeforeUnload;\n\n const {\n i18n,\n biLoggerFactory,\n fedopsLogger: internalFedops,\n errorMonitor: internalErrorMonitor,\n experiments: internalExperiments,\n } = this.createEssentials({\n i18n: {\n useSuspense: false,\n disableAutoInit: true,\n asyncMessagesLoader: async (locale) => {\n if (locale === 'en') {\n return this._messagesEnImport();\n }\n return this._fetchTranslations(this)(locale);\n },\n messages: params.initialProps?.messages,\n },\n errorMonitor: {\n dsn:\n process.env.NODE_ENV === 'production'\n ? 'https://9b9586a905eb429cbda9ea49d5d721f6@sentry-next.wixpress.com/8780'\n : '',\n /*\n TODO: not used in sentry-next API, need to be merged from reportError API with tags & extraData\n For Example: errorMonitor.captureException(error, { tags, contexts: { runtime: extraData }})\n beforeSend: (event, hint) => {\n this.internalMonitor.reportErrorThrownOncePerFlow();\n\n if (!event.tags) {\n event.tags = {};\n }\n\n if (!event.extra) {\n event.extra = {};\n }\n\n if (hint && hint.originalException) {\n event.extra.exception = hint.originalException;\n\n if (hint.originalException instanceof Error) {\n event.fingerprint = [\n `${hint.originalException.name}:${hint.originalException.message}`,\n ];\n }\n }\n\n event.tags.componentName = this.environment.componentName;\n event.tags.componentId = this.environment.componentId;\n event.tags.artifactId = this.environment.artifactId;\n event.tags.cairoVersion = this.environment.uiLibVersion;\n\n return event;\n },\n */\n },\n fedops: {\n appName: 'cairo',\n },\n experiments: {\n scopes: ['cairo'],\n },\n });\n\n if (\n typeof process !== 'undefined' &&\n process.env.STORYBOOK_VISUAL_E2E === 'true'\n ) {\n i18n.options.fallbackLng = [];\n }\n\n this.cairoSessionId = uuid();\n this.biLogger = params.biLogger ?? biLoggerFactory?.().logger();\n this.i18n = i18n;\n this.internalMonitor = new WixPatternsMonitor({\n errorMonitor: params.errorMonitor,\n internalErrorMonitor,\n internalFedops,\n environment: this.environment,\n csid: this.cairoSessionId,\n });\n this.internalExperiments = internalExperiments;\n\n this.translate = (...args) => {\n void this.initTask.status; // status is observable so reading it here starts mobx reactivity\n return this.i18n.t(...args);\n };\n\n this.Trans = params.Trans;\n\n this.onlineState = new OnlineState({\n onlineManager: this.onlineManager,\n focusManager: this.focusManager,\n translate: this.translate,\n showToast: this.showToast,\n });\n\n this.reportBi = this.createBILogger({});\n\n makeObservable(this, {\n init: action.bound,\n initialFetch: action.bound,\n dateFormatters: computed,\n });\n }\n\n _createComponentSettings(options: { namespace: string }) {\n return this.createComponentSettings(this)(options);\n }\n\n createBILogger = <P>(defaultParams: P): ReportBI => {\n return (reportProps: ReportProps) => {\n const { environment, cairoSessionId, biLogger } = this;\n\n return biLogger?.report({\n ...reportProps,\n params: {\n artifactId: environment.artifactId,\n componentName: environment.componentName,\n cairoVersion: environment.uiLibVersion,\n csid: cairoSessionId,\n ...defaultParams,\n ...reportProps.params,\n },\n });\n };\n };\n\n async initialFetch() {\n const { initTask, i18n, internalExperiments, experiments } = this;\n if (initTask.status.isLoading || initTask.status.isSuccess) {\n return initTask.status.promise;\n }\n\n await initTask.run(async () => {\n await Promise.all([\n i18n.init(),\n internalExperiments?.ready().catch((e) => {\n console.error(e);\n }),\n experiments.ready().catch((e) => {\n console.error(e);\n }),\n this._messagesEnImport(), // not all translation files contain all the keys, so en is required otherwise show error state\n ]);\n });\n\n return initTask.status.promise;\n }\n\n get dateFormatters() {\n return {\n medium: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n }),\n mediumTime: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n timeStyle: 'short',\n }),\n time: new Intl.DateTimeFormat(this.environment.language, {\n timeStyle: 'short',\n }),\n };\n }\n\n init() {\n const { onlineState } = this;\n\n this.initialFetch().catch((e) => {\n console.error(e);\n });\n\n const disposers = [\n onlineState.init(),\n new BeforeUnloadCompatState(this).init(),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -22,7 +22,8 @@ const patchesCache = new Map();
22
22
  function buildWixPatternsContainer(wixPatternsEssentials, {
23
23
  containerOverrides,
24
24
  initialProps,
25
- localCache
25
+ localCache,
26
+ contextType
26
27
  } = {}) {
27
28
  const {
28
29
  errorMonitor,
@@ -35,6 +36,7 @@ function buildWixPatternsContainer(wixPatternsEssentials, {
35
36
  environment,
36
37
  showToast,
37
38
  experiments,
39
+ errorHandler,
38
40
  onNavigation,
39
41
  getHostContainer,
40
42
  onSidePanelOpen,
@@ -55,6 +57,7 @@ function buildWixPatternsContainer(wixPatternsEssentials, {
55
57
  onlineManager,
56
58
  focusManager: _core.focusManager,
57
59
  createEssentials,
60
+ contextType,
58
61
  createComponentSettings,
59
62
  history: process.env.NODE_ENV === 'test' ? require('history').createMemoryHistory() : history ?? (0, _history.createBrowserHistory)(),
60
63
  experiments,
@@ -63,6 +66,7 @@ function buildWixPatternsContainer(wixPatternsEssentials, {
63
66
  Trans,
64
67
  useExperiments,
65
68
  environment,
69
+ errorHandler,
66
70
  user,
67
71
  showToast,
68
72
  usePageLocation,
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_mobx","_WixPatternsContainer","_history","_PartialWindowMock","_debounce","_interopRequireDefault","_throttle","_partialLodashMock","_jest","configure","isolateGlobalState","computedRequiresReaction","process","env","NODE_ENV","disableErrorBoundaries","DISABLE_ERROR_BOUNDARIES","defaultQueryCache","QueryCache","patchesCache","Map","buildWixPatternsContainer","wixPatternsEssentials","containerOverrides","initialProps","localCache","errorMonitor","httpClient","createEssentials","createComponentSettings","useTranslation","Trans","useExperiments","environment","showToast","experiments","onNavigation","getHostContainer","onSidePanelOpen","closeSidePanel","history","user","queryCache","onlineManager","defaultOnlineManager","usePageLocation","navigateTo","onBeforeUnload","biLogger","WixPatternsContainer","focusManager","createMemoryHistory","createBrowserHistory","window","PartialWindowMock","matchMedia","args","location","download","uri","saveAs","link","document","createElement","href","body","appendChild","click","removeChild","close","lodash","isTestEnvironment","isJestExists","jest","isMockFunction","setTimeout","partialLodashMock","debounce","throttle"],"sources":["../../../src/state/buildWixPatternsContainer.ts"],"sourcesContent":["import {\n focusManager,\n onlineManager as defaultOnlineManager,\n QueryCache,\n} from 'react-query/core';\nimport { configure } from 'mobx';\nimport { WixPatternsEssentials, WixPatternsInitialProps } from '../model';\nimport {\n WixPatternsContainer,\n WixPatternsContainerParams,\n} from './WixPatternsContainer';\nimport { createBrowserHistory } from 'history';\nimport { PartialWindowMock } from '../mocks/PartialWindowMock';\nimport debounce from 'lodash/debounce';\nimport throttle from 'lodash/throttle';\nimport { partialLodashMock } from '../mocks/partialLodashMock';\nimport { isJestExists, isTestEnvironment } from '../test-utils/jest';\n\nconfigure({\n isolateGlobalState: true,\n computedRequiresReaction: process.env.NODE_ENV === 'development',\n disableErrorBoundaries:\n process.env.NODE_ENV !== 'production' &&\n typeof process !== 'undefined' &&\n process.env.DISABLE_ERROR_BOUNDARIES === 'true',\n});\n\nconst defaultQueryCache = new QueryCache();\nconst patchesCache: WixPatternsContainerParams['patchesCache'] = new Map();\n\nexport function buildWixPatternsContainer(\n wixPatternsEssentials: WixPatternsEssentials,\n {\n containerOverrides,\n initialProps,\n localCache,\n }: {\n containerOverrides?: Partial<WixPatternsContainerParams>;\n initialProps?: WixPatternsInitialProps;\n localCache?: boolean;\n } = {},\n) {\n const {\n errorMonitor,\n httpClient,\n createEssentials,\n createComponentSettings,\n useTranslation,\n Trans,\n useExperiments,\n environment,\n showToast,\n experiments,\n onNavigation,\n getHostContainer,\n onSidePanelOpen,\n closeSidePanel,\n history,\n user,\n queryCache = defaultQueryCache,\n onlineManager = defaultOnlineManager,\n usePageLocation,\n navigateTo,\n onBeforeUnload,\n biLogger,\n } = wixPatternsEssentials;\n\n return new WixPatternsContainer({\n initialProps,\n errorMonitor,\n httpClient,\n onlineManager,\n focusManager,\n createEssentials,\n createComponentSettings,\n history:\n process.env.NODE_ENV === 'test'\n ? require('history').createMemoryHistory()\n : history ?? createBrowserHistory(),\n experiments,\n biLogger,\n useTranslation,\n Trans,\n useExperiments,\n environment,\n user,\n showToast,\n usePageLocation,\n navigateTo,\n onNavigation,\n onBeforeUnload,\n getHostContainer,\n onSidePanelOpen,\n closeSidePanel,\n queryCache:\n process.env.NODE_ENV === 'test' || localCache\n ? new QueryCache()\n : queryCache,\n patchesCache: process.env.NODE_ENV === 'test' ? new Map() : patchesCache,\n window:\n process.env.NODE_ENV === 'test'\n ? new PartialWindowMock()\n : {\n matchMedia: (...args) => window.matchMedia(...args),\n location: window.location,\n download: (uri, saveAs) => {\n const link = document.createElement('a');\n link.href = uri;\n if (saveAs) {\n link.download = saveAs;\n }\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n },\n close: window.close,\n },\n lodash:\n isTestEnvironment() && isJestExists() && jest.isMockFunction(setTimeout)\n ? partialLodashMock()\n : { debounce, throttle },\n ...containerOverrides,\n });\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_mobx","_WixPatternsContainer","_history","_PartialWindowMock","_debounce","_interopRequireDefault","_throttle","_partialLodashMock","_jest","configure","isolateGlobalState","computedRequiresReaction","process","env","NODE_ENV","disableErrorBoundaries","DISABLE_ERROR_BOUNDARIES","defaultQueryCache","QueryCache","patchesCache","Map","buildWixPatternsContainer","wixPatternsEssentials","containerOverrides","initialProps","localCache","contextType","errorMonitor","httpClient","createEssentials","createComponentSettings","useTranslation","Trans","useExperiments","environment","showToast","experiments","errorHandler","onNavigation","getHostContainer","onSidePanelOpen","closeSidePanel","history","user","queryCache","onlineManager","defaultOnlineManager","usePageLocation","navigateTo","onBeforeUnload","biLogger","WixPatternsContainer","focusManager","createMemoryHistory","createBrowserHistory","window","PartialWindowMock","matchMedia","args","location","download","uri","saveAs","link","document","createElement","href","body","appendChild","click","removeChild","close","lodash","isTestEnvironment","isJestExists","jest","isMockFunction","setTimeout","partialLodashMock","debounce","throttle"],"sources":["../../../src/state/buildWixPatternsContainer.ts"],"sourcesContent":["import {\n focusManager,\n onlineManager as defaultOnlineManager,\n QueryCache,\n} from 'react-query/core';\nimport { configure } from 'mobx';\nimport {\n ContextType,\n WixPatternsEssentials,\n WixPatternsInitialProps,\n} from '../model';\nimport {\n WixPatternsContainer,\n WixPatternsContainerParams,\n} from './WixPatternsContainer';\nimport { createBrowserHistory } from 'history';\nimport { PartialWindowMock } from '../mocks/PartialWindowMock';\nimport debounce from 'lodash/debounce';\nimport throttle from 'lodash/throttle';\nimport { partialLodashMock } from '../mocks/partialLodashMock';\nimport { isJestExists, isTestEnvironment } from '../test-utils/jest';\n\nconfigure({\n isolateGlobalState: true,\n computedRequiresReaction: process.env.NODE_ENV === 'development',\n disableErrorBoundaries:\n process.env.NODE_ENV !== 'production' &&\n typeof process !== 'undefined' &&\n process.env.DISABLE_ERROR_BOUNDARIES === 'true',\n});\n\nconst defaultQueryCache = new QueryCache();\nconst patchesCache: WixPatternsContainerParams['patchesCache'] = new Map();\n\nexport function buildWixPatternsContainer(\n wixPatternsEssentials: WixPatternsEssentials,\n {\n containerOverrides,\n initialProps,\n localCache,\n contextType,\n }: {\n containerOverrides?: Partial<WixPatternsContainerParams>;\n initialProps?: WixPatternsInitialProps;\n localCache?: boolean;\n contextType?: ContextType;\n } = {},\n) {\n const {\n errorMonitor,\n httpClient,\n createEssentials,\n createComponentSettings,\n useTranslation,\n Trans,\n useExperiments,\n environment,\n showToast,\n experiments,\n errorHandler,\n onNavigation,\n getHostContainer,\n onSidePanelOpen,\n closeSidePanel,\n history,\n user,\n queryCache = defaultQueryCache,\n onlineManager = defaultOnlineManager,\n usePageLocation,\n navigateTo,\n onBeforeUnload,\n biLogger,\n } = wixPatternsEssentials;\n\n return new WixPatternsContainer({\n initialProps,\n errorMonitor,\n httpClient,\n onlineManager,\n focusManager,\n createEssentials,\n contextType,\n createComponentSettings,\n history:\n process.env.NODE_ENV === 'test'\n ? require('history').createMemoryHistory()\n : history ?? createBrowserHistory(),\n experiments,\n biLogger,\n useTranslation,\n Trans,\n useExperiments,\n environment,\n errorHandler,\n user,\n showToast,\n usePageLocation,\n navigateTo,\n onNavigation,\n onBeforeUnload,\n getHostContainer,\n onSidePanelOpen,\n closeSidePanel,\n queryCache:\n process.env.NODE_ENV === 'test' || localCache\n ? new QueryCache()\n : queryCache,\n patchesCache: process.env.NODE_ENV === 'test' ? new Map() : patchesCache,\n window:\n process.env.NODE_ENV === 'test'\n ? new PartialWindowMock()\n : {\n matchMedia: (...args) => window.matchMedia(...args),\n location: window.location,\n download: (uri, saveAs) => {\n const link = document.createElement('a');\n link.href = uri;\n if (saveAs) {\n link.download = saveAs;\n }\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n },\n close: window.close,\n },\n lodash:\n isTestEnvironment() && isJestExists() && jest.isMockFunction(setTimeout)\n ? partialLodashMock()\n : { debounce, throttle },\n ...containerOverrides,\n });\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,9 @@ exports.filterByApplyAllPatches = void 0;
5
5
  const filterByApplyAllPatches = (patches, {
6
6
  itemPredicate
7
7
  }) => item => {
8
+ if (patches.some(patch => (patch.actionType === 'deleteMany' || patch.actionType === 'deleteAll') && patch.selector(item))) {
9
+ return false;
10
+ }
8
11
  const i = patches.reduce((acc, {
9
12
  patch
10
13
  }) => {
@@ -1 +1 @@
1
- {"version":3,"names":["filterByApplyAllPatches","patches","itemPredicate","item","i","reduce","acc","patch","exports"],"sources":["../../../../src/state/optimistic-simulation/filterByApplyAllPatches.ts"],"sourcesContent":["import { OptimisticPatch } from '../CollectionOptimisticPatch';\n\nexport const filterByApplyAllPatches =\n <T>(\n patches: OptimisticPatch<T>[],\n { itemPredicate }: { itemPredicate: (item: T) => boolean },\n ) =>\n (item: T) => {\n const i = patches.reduce<T>((acc, { patch }) => {\n return {\n ...acc,\n ...patch(item),\n };\n }, item);\n\n return itemPredicate(i);\n };\n"],"mappings":";;;;AAEO,MAAMA,uBAAuB,GAClCA,CACEC,OAA6B,EAC7B;EAAEC;AAAuD,CAAC,KAE3DC,IAAO,IAAK;EACX,MAAMC,CAAC,GAAGH,OAAO,CAACI,MAAM,CAAI,CAACC,GAAG,EAAE;IAAEC;EAAM,CAAC,KAAK;IAC9C,OAAO;MACL,GAAGD,GAAG;MACN,GAAGC,KAAK,CAACJ,IAAI;IACf,CAAC;EACH,CAAC,EAAEA,IAAI,CAAC;EAER,OAAOD,aAAa,CAACE,CAAC,CAAC;AACzB,CAAC;AAACI,OAAA,CAAAR,uBAAA,GAAAA,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["filterByApplyAllPatches","patches","itemPredicate","item","some","patch","actionType","selector","i","reduce","acc","exports"],"sources":["../../../../src/state/optimistic-simulation/filterByApplyAllPatches.ts"],"sourcesContent":["import { OptimisticPatch } from '../CollectionOptimisticPatch';\n\nexport const filterByApplyAllPatches =\n <T>(\n patches: OptimisticPatch<T>[],\n { itemPredicate }: { itemPredicate: (item: T) => boolean },\n ) =>\n (item: T) => {\n if (\n patches.some(\n (patch) =>\n (patch.actionType === 'deleteMany' ||\n patch.actionType === 'deleteAll') &&\n patch.selector(item),\n )\n ) {\n return false;\n }\n\n const i = patches.reduce<T>((acc, { patch }) => {\n return {\n ...acc,\n ...patch(item),\n };\n }, item);\n\n return itemPredicate(i);\n };\n"],"mappings":";;;;AAEO,MAAMA,uBAAuB,GAClCA,CACEC,OAA6B,EAC7B;EAAEC;AAAuD,CAAC,KAE3DC,IAAO,IAAK;EACX,IACEF,OAAO,CAACG,IAAI,CACTC,KAAK,IACJ,CAACA,KAAK,CAACC,UAAU,KAAK,YAAY,IAChCD,KAAK,CAACC,UAAU,KAAK,WAAW,KAClCD,KAAK,CAACE,QAAQ,CAACJ,IAAI,CACvB,CAAC,EACD;IACA,OAAO,KAAK;EACd;EAEA,MAAMK,CAAC,GAAGP,OAAO,CAACQ,MAAM,CAAI,CAACC,GAAG,EAAE;IAAEL;EAAM,CAAC,KAAK;IAC9C,OAAO;MACL,GAAGK,GAAG;MACN,GAAGL,KAAK,CAACF,IAAI;IACf,CAAC;EACH,CAAC,EAAEA,IAAI,CAAC;EAER,OAAOD,aAAa,CAACM,CAAC,CAAC;AACzB,CAAC;AAACG,OAAA,CAAAX,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -24,7 +24,8 @@ class WixPatternsContainerDriver {
24
24
  return this.dataCapsuleInstances.get('cairo.cairo-test-component.wix.cairo.products.v1.product');
25
25
  }
26
26
  constructor(overrides = {
27
- asMobileView: false
27
+ asMobileView: false,
28
+ contextType: 'SITE'
28
29
  }) {
29
30
  var _overrides$history, _overrides$i18nOverri, _overrides$i18nOverri2;
30
31
  (0, _defineProperty2.default)(this, "testContext", void 0);
@@ -175,6 +176,7 @@ class WixPatternsContainerDriver {
175
176
  patchesCache: this.patchesCache,
176
177
  errorMonitor: this.testContext.errorMonitor,
177
178
  history: this.history,
179
+ contextType: overrides.contextType,
178
180
  environment: {
179
181
  ...this.testContext.environment,
180
182
  ...(overrides == null ? void 0 : overrides.environment),
@@ -1 +1 @@
1
- {"version":3,"names":["_events","require","_core","_history","_testkit","_react","_client","_dataCapsule","_state","_partialLodashMock","_lodash","_exportServiceMocks","_navigationManager","_matchMediaMock","_jest","_appSettingsMocks","WixPatternsContainerDriver","tableDataCapsule","dataCapsuleInstances","get","constructor","overrides","asMobileView","_overrides$history","_overrides$i18nOverri","_overrides$i18nOverri2","_defineProperty2","default","EventEmitter","_isOnline","setIsOnline","value","emit","isOnline","subscribe","listener","on","removeListener","_isFocused","setIsFocused","isFocused","QueryCache","Map","exportServiceMocks","whenRequest","testContext","testkit","getTestContext","experiments","bag","environment","language","i18n","messages","errorMonitor","httpClient","scenarios","appSettingsCustomMocks","appSettingsMocks","mocks","httpMocks","essentials","_parent","artifactId","asyncExperiments","ready","window","location","href","download","jest","fn","matchMedia","mockImplementation","query","matchMediaMock","matches","close","dispatchEvent","Event","navigationManager","NavigationManager","showToast","remove","usePageLocation","navigateTo","onNavigation","callback","state","prevented","pause","onBeforeUnloadMissingInEnvironment","onBeforeUnload","resume","preventDefault","events","once","leave","history","historyInstance","createMemoryHistory","search","replaceHistory","container","WixPatternsContainer","queryCache","patchesCache","componentId","join","providerType","user","permissions","onlineManager","focusManager","useTranslation","Trans","useExperiments","createComponentSettings","componentSettingsLocalStorage","undefined","namespace","_overrides$componentS","componentSettings","DataCapsule","scope","strategy","AppSettingsStorageStrategy","host","data","componentSettingsEntries","key","Object","entries","setItem","componentSettingsInstances","set","messagesEnImport","i18nOverrides","fetchTranslations","createEssentials","options","i18nOptions","childEssentials","createChildEssentials","asyncMessagesLoader","locale","_overrides$i18nOverri3","Promise","all","then","reduce","assign","internalExperiments","dataCapsule","push","_overrides$dataCapsul","to","_this$navigateTo","call","navigateToPage","getHostContainer","lodash","isTestEnvironment","isJestExists","isMockFunction","setTimeout","partialLodashMock","debounce","throttle","init","onlineState","biLoggerFactory","searchParams","toString","replace","exports"],"sources":["../../../src/testkit/WixPatternsContainer.driver.ts"],"sourcesContent":["import { EventEmitter } from 'events';\nimport { QueryCache } from 'react-query/core';\nimport { createMemoryHistory, History } from 'history';\nimport {\n StandaloneEssentialsTestOptions,\n TestContext,\n testkit,\n} from '@wix/fe-essentials-standalone/testkit';\nimport {\n Trans,\n useExperiments,\n useTranslation,\n} from '@wix/fe-essentials-standalone/react';\nimport { ExperimentsBag } from '@wix/fe-essentials-standalone/experiments';\nimport { whenRequest } from '@wix/fe-essentials/http-client/testkit/client';\nimport type { AnyScenario } from '@wix/fe-essentials/http-client/testkit';\nimport { Essentials } from '@wix/fe-essentials/core';\nimport {\n AppSettingsStorageStrategy,\n DataCapsule,\n IDataCapsule,\n} from '@wix/fe-essentials/data-capsule';\nimport { WixPatternsContainer } from '../state';\nimport { ErrorMonitor, PartialWindow, Translate } from '../services';\nimport {\n GetHostContainer,\n OnBeforeUnload,\n OnNavigation,\n ShowToast,\n WixPatternsEssentials,\n} from '../model';\nimport { partialLodashMock } from '../mocks/partialLodashMock';\nimport { debounce, throttle } from 'lodash';\nimport { exportServiceMocks } from './exportServiceMocks';\nimport { NavigationManager } from '../services/navigationManager';\nimport { matchMediaMock } from './matchMediaMock';\nimport { isJestExists, isTestEnvironment } from '../test-utils/jest';\nimport { appSettingsMocks } from './appSettingsMocks';\n\nexport interface WixPatternsContainerDriverOverrides {\n readonly environment?: Partial<{ language: string; uiLibVersion: string }>;\n readonly user?: Partial<WixPatternsEssentials['user']>;\n readonly location?: Partial<{ href: string }>;\n readonly history?: Partial<{ search: URLSearchParams }>;\n readonly historyInstance?: History;\n readonly httpMocks?: AnyScenario[];\n readonly appSettingsCustomMocks?: AnyScenario[];\n readonly showToast?: ShowToast;\n readonly usePageLocation?: WixPatternsEssentials['usePageLocation'];\n readonly navigateTo?: WixPatternsEssentials['navigateTo'];\n readonly asMobileView?: boolean;\n readonly dataCapsule?: Partial<{ entries: Record<string, unknown> }>;\n readonly componentSettingsEntries?: Record<string, object>;\n readonly componentSettingsLocalStorage?: boolean;\n readonly onNavigation?: OnNavigation;\n readonly onBeforeUnload?: OnBeforeUnload;\n readonly onBeforeUnloadMissingInEnvironment?: boolean;\n readonly experiments?: ExperimentsBag;\n readonly asyncExperiments?: () => Promise<ExperimentsBag>;\n readonly internalExperiments?: ExperimentsBag;\n readonly i18nOverrides?: StandaloneEssentialsTestOptions['i18n'] & {\n messagesEnImport?: () => Promise<{}>;\n fetchTranslations?: (p: {\n readonly errorMonitor: ErrorMonitor;\n }) => (language: string) => Promise<{}>;\n };\n readonly getHostContainer?: GetHostContainer;\n readonly fqdn?: string;\n}\n\nexport class WixPatternsContainerDriver {\n readonly testContext: TestContext;\n readonly showToast: ShowToast;\n readonly usePageLocation: WixPatternsEssentials['usePageLocation'];\n readonly navigateTo: WixPatternsEssentials['navigateTo'];\n readonly onNavigation: OnNavigation;\n readonly onBeforeUnload?: OnBeforeUnload;\n\n readonly onlineManager = {\n _events: new EventEmitter(),\n _isOnline: true,\n setIsOnline(value: boolean) {\n this._isOnline = value;\n this._events.emit('default');\n },\n isOnline() {\n return this._isOnline;\n },\n subscribe(listener?: () => unknown) {\n if (listener) {\n this._events.on('default', listener);\n }\n return () => {\n if (listener) {\n this._events.removeListener('default', listener);\n }\n };\n },\n };\n\n readonly focusManager = {\n _events: new EventEmitter(),\n _isFocused: true,\n setIsFocused(value: boolean) {\n this._isFocused = value;\n this._events.emit('default');\n },\n isFocused() {\n return this._isFocused;\n },\n subscribe(listener?: () => unknown) {\n if (listener) {\n this._events.on('default', listener);\n }\n return () => {\n if (listener) {\n this._events.removeListener('default', listener);\n }\n };\n },\n };\n\n readonly queryCache = new QueryCache();\n readonly patchesCache = new Map();\n\n readonly window: PartialWindow;\n readonly navigationManager: NavigationManager;\n\n readonly history: History;\n\n readonly container: WixPatternsContainer;\n\n readonly dataCapsule: IDataCapsule[] = [];\n readonly dataCapsuleInstances = new Map<string, IDataCapsule>();\n\n get tableDataCapsule() {\n return this.dataCapsuleInstances.get(\n 'cairo.cairo-test-component.wix.cairo.products.v1.product',\n ) as IDataCapsule;\n }\n\n readonly componentSettingsInstances = new Map<string, DataCapsule>();\n\n readonly exportServiceMocks;\n\n constructor(\n overrides: WixPatternsContainerDriverOverrides = { asMobileView: false },\n ) {\n this.exportServiceMocks = exportServiceMocks(whenRequest);\n\n this.testContext = testkit.getTestContext({\n experiments: {\n bag: overrides.experiments,\n },\n environment: {\n language: 'en',\n ...overrides?.environment,\n },\n i18n: {\n messages: (language) =>\n require(`../assets/locale/messages_${language}.json`),\n },\n errorMonitor: {},\n httpClient: {\n scenarios: [\n /* metro-testkit currently takes the first mock it encounters per API,\n so overrides must be added before appSettingsMocks(whenRequest) */\n ...(overrides.appSettingsCustomMocks ?? []),\n ...appSettingsMocks(whenRequest),\n ...this.exportServiceMocks.mocks,\n ...(overrides.httpMocks ?? []),\n ],\n },\n });\n\n (this.testContext as any).essentials._parent.environment.artifactId =\n 'cairo';\n\n const { asyncExperiments } = overrides;\n if (asyncExperiments) {\n this.testContext.experiments.ready = async () => {\n await asyncExperiments();\n };\n }\n\n this.window = {\n location: {\n href: 'https://cairo.test',\n ...overrides.location,\n },\n download: jest.fn(),\n matchMedia: jest.fn().mockImplementation((query) => ({\n ...matchMediaMock(query),\n matches: !overrides.asMobileView,\n })),\n close: () => {\n window.dispatchEvent(new Event('beforeunload'));\n window.dispatchEvent(new Event('unload'));\n },\n };\n\n this.navigationManager = new NavigationManager(this.window);\n\n this.showToast =\n overrides?.showToast ??\n jest.fn().mockImplementation(() => ({ remove: () => {} }));\n\n this.usePageLocation = overrides.usePageLocation ?? jest.fn();\n\n this.navigateTo = overrides?.navigateTo ?? jest.fn();\n\n this.onNavigation =\n overrides?.onNavigation ??\n jest\n .fn()\n .mockImplementation(\n (callback: (pause: () => { resume: () => unknown }) => unknown) => {\n const remove = this.navigationManager.subscribe((state) => {\n state.prevented = true;\n callback(state.pause);\n });\n\n return {\n remove,\n };\n },\n );\n\n if (!overrides.onBeforeUnloadMissingInEnvironment) {\n this.onBeforeUnload =\n overrides?.onBeforeUnload ??\n jest.fn().mockImplementation((callback: (event: {}) => unknown) => {\n const remove = this.navigationManager.subscribe((state) => {\n const { resume } = state.pause();\n\n callback({\n preventDefault: () => {\n state.prevented = true;\n this.navigationManager.events.once(\n 'navigationPromptResult',\n (leave) => {\n if (leave) {\n resume();\n }\n },\n );\n },\n });\n });\n\n return {\n remove,\n };\n });\n }\n\n this.history = overrides.historyInstance || createMemoryHistory();\n\n if (overrides?.history?.search) {\n this.replaceHistory(overrides.history.search);\n }\n\n this.container = new WixPatternsContainer({\n queryCache: this.queryCache,\n patchesCache: this.patchesCache,\n errorMonitor: this.testContext.errorMonitor,\n history: this.history,\n environment: {\n ...this.testContext.environment,\n ...overrides?.environment,\n componentId: [\n this.testContext.environment.artifactId,\n 'cairo-test-component',\n ].join('.'),\n providerType: 'bm',\n },\n user: {\n permissions: [],\n ...overrides?.user,\n },\n httpClient: this.testContext.httpClient,\n experiments: this.testContext.experiments,\n onlineManager: this.onlineManager,\n focusManager: this.focusManager,\n window: this.window,\n useTranslation,\n Trans,\n useExperiments,\n createComponentSettings: overrides.componentSettingsLocalStorage\n ? undefined\n : () =>\n ({ namespace }) => {\n const componentSettings = new DataCapsule({\n namespace,\n scope: '',\n strategy: new AppSettingsStorageStrategy({\n host: 'other',\n httpClient: this.testContext.httpClient,\n }),\n });\n\n const data = overrides.componentSettingsEntries?.[namespace];\n\n if (data) {\n for (const [key, value] of Object.entries(data)) {\n componentSettings.setItem(key, value);\n }\n }\n\n this.componentSettingsInstances.set(namespace, componentSettings);\n\n return componentSettings;\n },\n messagesEnImport: overrides.i18nOverrides?.messagesEnImport,\n fetchTranslations: overrides.i18nOverrides?.fetchTranslations,\n createEssentials: (options) => {\n const i18nOptions = options.i18n;\n\n const childEssentials = this.testContext.createChildEssentials({\n ...options,\n ...(i18nOptions && {\n i18n: {\n ...i18nOptions,\n asyncMessagesLoader: (locale) =>\n Promise.all([\n i18nOptions.asyncMessagesLoader?.(locale) ?? {},\n overrides.i18nOverrides?.asyncMessagesLoader?.(locale) ?? {},\n ]).then((messages) => messages.reduce(Object.assign, {})),\n },\n }),\n ...(options.experiments && {\n experiments: {\n bag: {\n ...('bag' in options.experiments\n ? options.experiments.bag\n : undefined),\n ...overrides.internalExperiments,\n },\n },\n }),\n });\n\n if (options.dataCapsule && childEssentials.dataCapsule) {\n this.dataCapsule.push(childEssentials.dataCapsule);\n this.dataCapsuleInstances.set(\n options.dataCapsule.namespace,\n childEssentials.dataCapsule,\n );\n for (const [key, value] of Object.entries(\n overrides.dataCapsule?.entries ?? {},\n )) {\n childEssentials.dataCapsule.setItem(key, value);\n }\n }\n\n return childEssentials;\n },\n showToast: this.showToast,\n usePageLocation: this.usePageLocation,\n navigateTo: (to) => {\n this.navigateTo?.(to);\n this.navigationManager.navigateToPage(to);\n },\n onNavigation: this.onNavigation,\n onBeforeUnload: this.onBeforeUnload,\n getHostContainer: overrides?.getHostContainer,\n lodash:\n isTestEnvironment() && isJestExists() && jest.isMockFunction(setTimeout)\n ? partialLodashMock()\n : { debounce, throttle },\n });\n\n this.container.init();\n }\n\n get errorMonitor() {\n return this.testContext.errorMonitor;\n }\n\n get i18n(): Pick<Essentials['i18n'], 'init'> & { t: Translate } {\n return this.container.i18n;\n }\n\n get onlineState() {\n return this.container.onlineState;\n }\n\n get environment() {\n return this.container.environment;\n }\n\n get getHostContainer() {\n return this.container.getHostContainer;\n }\n\n get biLoggerFactory() {\n return this.testContext.biLoggerFactory;\n }\n\n replaceHistory(searchParams: URLSearchParams) {\n const search = searchParams.toString();\n this.history.replace({\n ...this.history.location,\n search: search ? `?${search}` : '',\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_events","require","_core","_history","_testkit","_react","_client","_dataCapsule","_state","_partialLodashMock","_lodash","_exportServiceMocks","_navigationManager","_matchMediaMock","_jest","_appSettingsMocks","WixPatternsContainerDriver","tableDataCapsule","dataCapsuleInstances","get","constructor","overrides","asMobileView","contextType","_overrides$history","_overrides$i18nOverri","_overrides$i18nOverri2","_defineProperty2","default","EventEmitter","_isOnline","setIsOnline","value","emit","isOnline","subscribe","listener","on","removeListener","_isFocused","setIsFocused","isFocused","QueryCache","Map","exportServiceMocks","whenRequest","testContext","testkit","getTestContext","experiments","bag","environment","language","i18n","messages","errorMonitor","httpClient","scenarios","appSettingsCustomMocks","appSettingsMocks","mocks","httpMocks","essentials","_parent","artifactId","asyncExperiments","ready","window","location","href","download","jest","fn","matchMedia","mockImplementation","query","matchMediaMock","matches","close","dispatchEvent","Event","navigationManager","NavigationManager","showToast","remove","usePageLocation","navigateTo","onNavigation","callback","state","prevented","pause","onBeforeUnloadMissingInEnvironment","onBeforeUnload","resume","preventDefault","events","once","leave","history","historyInstance","createMemoryHistory","search","replaceHistory","container","WixPatternsContainer","queryCache","patchesCache","componentId","join","providerType","user","permissions","onlineManager","focusManager","useTranslation","Trans","useExperiments","createComponentSettings","componentSettingsLocalStorage","undefined","namespace","_overrides$componentS","componentSettings","DataCapsule","scope","strategy","AppSettingsStorageStrategy","host","data","componentSettingsEntries","key","Object","entries","setItem","componentSettingsInstances","set","messagesEnImport","i18nOverrides","fetchTranslations","createEssentials","options","i18nOptions","childEssentials","createChildEssentials","asyncMessagesLoader","locale","_overrides$i18nOverri3","Promise","all","then","reduce","assign","internalExperiments","dataCapsule","push","_overrides$dataCapsul","to","_this$navigateTo","call","navigateToPage","getHostContainer","lodash","isTestEnvironment","isJestExists","isMockFunction","setTimeout","partialLodashMock","debounce","throttle","init","onlineState","biLoggerFactory","searchParams","toString","replace","exports"],"sources":["../../../src/testkit/WixPatternsContainer.driver.ts"],"sourcesContent":["import { EventEmitter } from 'events';\nimport { QueryCache } from 'react-query/core';\nimport { createMemoryHistory, History } from 'history';\nimport {\n StandaloneEssentialsTestOptions,\n TestContext,\n testkit,\n} from '@wix/fe-essentials-standalone/testkit';\nimport {\n Trans,\n useExperiments,\n useTranslation,\n} from '@wix/fe-essentials-standalone/react';\nimport { ExperimentsBag } from '@wix/fe-essentials-standalone/experiments';\nimport { whenRequest } from '@wix/fe-essentials/http-client/testkit/client';\nimport type { AnyScenario } from '@wix/fe-essentials/http-client/testkit';\nimport { Essentials } from '@wix/fe-essentials/core';\nimport {\n AppSettingsStorageStrategy,\n DataCapsule,\n IDataCapsule,\n} from '@wix/fe-essentials/data-capsule';\nimport { WixPatternsContainer } from '../state';\nimport { ErrorMonitor, PartialWindow, Translate } from '../services';\nimport {\n ContextType,\n GetHostContainer,\n OnBeforeUnload,\n OnNavigation,\n ShowToast,\n WixPatternsEssentials,\n} from '../model';\nimport { partialLodashMock } from '../mocks/partialLodashMock';\nimport { debounce, throttle } from 'lodash';\nimport { exportServiceMocks } from './exportServiceMocks';\nimport { NavigationManager } from '../services/navigationManager';\nimport { matchMediaMock } from './matchMediaMock';\nimport { isJestExists, isTestEnvironment } from '../test-utils/jest';\nimport { appSettingsMocks } from './appSettingsMocks';\n\nexport interface WixPatternsContainerDriverOverrides {\n readonly environment?: Partial<{ language: string; uiLibVersion: string }>;\n readonly user?: Partial<WixPatternsEssentials['user']>;\n readonly location?: Partial<{ href: string }>;\n readonly history?: Partial<{ search: URLSearchParams }>;\n readonly historyInstance?: History;\n readonly httpMocks?: AnyScenario[];\n readonly appSettingsCustomMocks?: AnyScenario[];\n readonly showToast?: ShowToast;\n readonly usePageLocation?: WixPatternsEssentials['usePageLocation'];\n readonly navigateTo?: WixPatternsEssentials['navigateTo'];\n readonly asMobileView?: boolean;\n readonly dataCapsule?: Partial<{ entries: Record<string, unknown> }>;\n readonly contextType?: ContextType;\n readonly componentSettingsEntries?: Record<string, object>;\n readonly componentSettingsLocalStorage?: boolean;\n readonly onNavigation?: OnNavigation;\n readonly onBeforeUnload?: OnBeforeUnload;\n readonly onBeforeUnloadMissingInEnvironment?: boolean;\n readonly experiments?: ExperimentsBag;\n readonly asyncExperiments?: () => Promise<ExperimentsBag>;\n readonly internalExperiments?: ExperimentsBag;\n readonly i18nOverrides?: StandaloneEssentialsTestOptions['i18n'] & {\n messagesEnImport?: () => Promise<{}>;\n fetchTranslations?: (p: {\n readonly errorMonitor: ErrorMonitor;\n }) => (language: string) => Promise<{}>;\n };\n readonly getHostContainer?: GetHostContainer;\n readonly fqdn?: string;\n}\n\nexport class WixPatternsContainerDriver {\n readonly testContext: TestContext;\n readonly showToast: ShowToast;\n readonly usePageLocation: WixPatternsEssentials['usePageLocation'];\n readonly navigateTo: WixPatternsEssentials['navigateTo'];\n readonly onNavigation: OnNavigation;\n readonly onBeforeUnload?: OnBeforeUnload;\n\n readonly onlineManager = {\n _events: new EventEmitter(),\n _isOnline: true,\n setIsOnline(value: boolean) {\n this._isOnline = value;\n this._events.emit('default');\n },\n isOnline() {\n return this._isOnline;\n },\n subscribe(listener?: () => unknown) {\n if (listener) {\n this._events.on('default', listener);\n }\n return () => {\n if (listener) {\n this._events.removeListener('default', listener);\n }\n };\n },\n };\n\n readonly focusManager = {\n _events: new EventEmitter(),\n _isFocused: true,\n setIsFocused(value: boolean) {\n this._isFocused = value;\n this._events.emit('default');\n },\n isFocused() {\n return this._isFocused;\n },\n subscribe(listener?: () => unknown) {\n if (listener) {\n this._events.on('default', listener);\n }\n return () => {\n if (listener) {\n this._events.removeListener('default', listener);\n }\n };\n },\n };\n\n readonly queryCache = new QueryCache();\n readonly patchesCache = new Map();\n\n readonly window: PartialWindow;\n readonly navigationManager: NavigationManager;\n\n readonly history: History;\n\n readonly container: WixPatternsContainer;\n\n readonly dataCapsule: IDataCapsule[] = [];\n readonly dataCapsuleInstances = new Map<string, IDataCapsule>();\n\n get tableDataCapsule() {\n return this.dataCapsuleInstances.get(\n 'cairo.cairo-test-component.wix.cairo.products.v1.product',\n ) as IDataCapsule;\n }\n\n readonly componentSettingsInstances = new Map<string, DataCapsule>();\n\n readonly exportServiceMocks;\n\n constructor(\n overrides: WixPatternsContainerDriverOverrides = {\n asMobileView: false,\n contextType: 'SITE',\n },\n ) {\n this.exportServiceMocks = exportServiceMocks(whenRequest);\n\n this.testContext = testkit.getTestContext({\n experiments: {\n bag: overrides.experiments,\n },\n environment: {\n language: 'en',\n ...overrides?.environment,\n },\n i18n: {\n messages: (language) =>\n require(`../assets/locale/messages_${language}.json`),\n },\n errorMonitor: {},\n httpClient: {\n scenarios: [\n /* metro-testkit currently takes the first mock it encounters per API,\n so overrides must be added before appSettingsMocks(whenRequest) */\n ...(overrides.appSettingsCustomMocks ?? []),\n ...appSettingsMocks(whenRequest),\n ...this.exportServiceMocks.mocks,\n ...(overrides.httpMocks ?? []),\n ],\n },\n });\n\n (this.testContext as any).essentials._parent.environment.artifactId =\n 'cairo';\n\n const { asyncExperiments } = overrides;\n if (asyncExperiments) {\n this.testContext.experiments.ready = async () => {\n await asyncExperiments();\n };\n }\n\n this.window = {\n location: {\n href: 'https://cairo.test',\n ...overrides.location,\n },\n download: jest.fn(),\n matchMedia: jest.fn().mockImplementation((query) => ({\n ...matchMediaMock(query),\n matches: !overrides.asMobileView,\n })),\n close: () => {\n window.dispatchEvent(new Event('beforeunload'));\n window.dispatchEvent(new Event('unload'));\n },\n };\n\n this.navigationManager = new NavigationManager(this.window);\n\n this.showToast =\n overrides?.showToast ??\n jest.fn().mockImplementation(() => ({ remove: () => {} }));\n\n this.usePageLocation = overrides.usePageLocation ?? jest.fn();\n\n this.navigateTo = overrides?.navigateTo ?? jest.fn();\n\n this.onNavigation =\n overrides?.onNavigation ??\n jest\n .fn()\n .mockImplementation(\n (callback: (pause: () => { resume: () => unknown }) => unknown) => {\n const remove = this.navigationManager.subscribe((state) => {\n state.prevented = true;\n callback(state.pause);\n });\n\n return {\n remove,\n };\n },\n );\n\n if (!overrides.onBeforeUnloadMissingInEnvironment) {\n this.onBeforeUnload =\n overrides?.onBeforeUnload ??\n jest.fn().mockImplementation((callback: (event: {}) => unknown) => {\n const remove = this.navigationManager.subscribe((state) => {\n const { resume } = state.pause();\n\n callback({\n preventDefault: () => {\n state.prevented = true;\n this.navigationManager.events.once(\n 'navigationPromptResult',\n (leave) => {\n if (leave) {\n resume();\n }\n },\n );\n },\n });\n });\n\n return {\n remove,\n };\n });\n }\n\n this.history = overrides.historyInstance || createMemoryHistory();\n\n if (overrides?.history?.search) {\n this.replaceHistory(overrides.history.search);\n }\n\n this.container = new WixPatternsContainer({\n queryCache: this.queryCache,\n patchesCache: this.patchesCache,\n errorMonitor: this.testContext.errorMonitor,\n history: this.history,\n contextType: overrides.contextType,\n environment: {\n ...this.testContext.environment,\n ...overrides?.environment,\n componentId: [\n this.testContext.environment.artifactId,\n 'cairo-test-component',\n ].join('.'),\n providerType: 'bm',\n },\n user: {\n permissions: [],\n ...overrides?.user,\n },\n httpClient: this.testContext.httpClient,\n experiments: this.testContext.experiments,\n onlineManager: this.onlineManager,\n focusManager: this.focusManager,\n window: this.window,\n useTranslation,\n Trans,\n useExperiments,\n createComponentSettings: overrides.componentSettingsLocalStorage\n ? undefined\n : () =>\n ({ namespace }) => {\n const componentSettings = new DataCapsule({\n namespace,\n scope: '',\n strategy: new AppSettingsStorageStrategy({\n host: 'other',\n httpClient: this.testContext.httpClient,\n }),\n });\n\n const data = overrides.componentSettingsEntries?.[namespace];\n\n if (data) {\n for (const [key, value] of Object.entries(data)) {\n componentSettings.setItem(key, value);\n }\n }\n\n this.componentSettingsInstances.set(namespace, componentSettings);\n\n return componentSettings;\n },\n messagesEnImport: overrides.i18nOverrides?.messagesEnImport,\n fetchTranslations: overrides.i18nOverrides?.fetchTranslations,\n createEssentials: (options) => {\n const i18nOptions = options.i18n;\n\n const childEssentials = this.testContext.createChildEssentials({\n ...options,\n ...(i18nOptions && {\n i18n: {\n ...i18nOptions,\n asyncMessagesLoader: (locale) =>\n Promise.all([\n i18nOptions.asyncMessagesLoader?.(locale) ?? {},\n overrides.i18nOverrides?.asyncMessagesLoader?.(locale) ?? {},\n ]).then((messages) => messages.reduce(Object.assign, {})),\n },\n }),\n ...(options.experiments && {\n experiments: {\n bag: {\n ...('bag' in options.experiments\n ? options.experiments.bag\n : undefined),\n ...overrides.internalExperiments,\n },\n },\n }),\n });\n\n if (options.dataCapsule && childEssentials.dataCapsule) {\n this.dataCapsule.push(childEssentials.dataCapsule);\n this.dataCapsuleInstances.set(\n options.dataCapsule.namespace,\n childEssentials.dataCapsule,\n );\n for (const [key, value] of Object.entries(\n overrides.dataCapsule?.entries ?? {},\n )) {\n childEssentials.dataCapsule.setItem(key, value);\n }\n }\n\n return childEssentials;\n },\n showToast: this.showToast,\n usePageLocation: this.usePageLocation,\n navigateTo: (to) => {\n this.navigateTo?.(to);\n this.navigationManager.navigateToPage(to);\n },\n onNavigation: this.onNavigation,\n onBeforeUnload: this.onBeforeUnload,\n getHostContainer: overrides?.getHostContainer,\n lodash:\n isTestEnvironment() && isJestExists() && jest.isMockFunction(setTimeout)\n ? partialLodashMock()\n : { debounce, throttle },\n });\n\n this.container.init();\n }\n\n get errorMonitor() {\n return this.testContext.errorMonitor;\n }\n\n get i18n(): Pick<Essentials['i18n'], 'init'> & { t: Translate } {\n return this.container.i18n;\n }\n\n get onlineState() {\n return this.container.onlineState;\n }\n\n get environment() {\n return this.container.environment;\n }\n\n get getHostContainer() {\n return this.container.getHostContainer;\n }\n\n get biLoggerFactory() {\n return this.testContext.biLoggerFactory;\n }\n\n replaceHistory(searchParams: URLSearchParams) {\n const search = searchParams.toString();\n this.history.replace({\n ...this.history.location,\n search: search ? `?${search}` : '',\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}