@wix/bex-core 2.332.0 → 2.336.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 (186) hide show
  1. package/dist/cjs/assets/locale/messages_ar.json +13 -2
  2. package/dist/cjs/assets/locale/messages_bg.json +13 -2
  3. package/dist/cjs/assets/locale/messages_ca.json +13 -2
  4. package/dist/cjs/assets/locale/messages_cs.json +11 -0
  5. package/dist/cjs/assets/locale/messages_da.json +11 -0
  6. package/dist/cjs/assets/locale/messages_de.json +11 -0
  7. package/dist/cjs/assets/locale/messages_el.json +13 -2
  8. package/dist/cjs/assets/locale/messages_en.json +13 -2
  9. package/dist/cjs/assets/locale/messages_es.json +11 -0
  10. package/dist/cjs/assets/locale/messages_fi.json +13 -2
  11. package/dist/cjs/assets/locale/messages_fr.json +11 -0
  12. package/dist/cjs/assets/locale/messages_he.json +13 -2
  13. package/dist/cjs/assets/locale/messages_hi.json +11 -0
  14. package/dist/cjs/assets/locale/messages_hu.json +13 -2
  15. package/dist/cjs/assets/locale/messages_id.json +11 -0
  16. package/dist/cjs/assets/locale/messages_it.json +11 -0
  17. package/dist/cjs/assets/locale/messages_ja.json +11 -0
  18. package/dist/cjs/assets/locale/messages_ko.json +11 -0
  19. package/dist/cjs/assets/locale/messages_lt.json +13 -2
  20. package/dist/cjs/assets/locale/messages_ms.json +13 -2
  21. package/dist/cjs/assets/locale/messages_nl.json +11 -0
  22. package/dist/cjs/assets/locale/messages_no.json +11 -0
  23. package/dist/cjs/assets/locale/messages_pl.json +11 -0
  24. package/dist/cjs/assets/locale/messages_pt.json +11 -0
  25. package/dist/cjs/assets/locale/messages_ro.json +13 -2
  26. package/dist/cjs/assets/locale/messages_ru.json +11 -0
  27. package/dist/cjs/assets/locale/messages_sk.json +13 -2
  28. package/dist/cjs/assets/locale/messages_sl.json +13 -2
  29. package/dist/cjs/assets/locale/messages_sv.json +11 -0
  30. package/dist/cjs/assets/locale/messages_th.json +11 -0
  31. package/dist/cjs/assets/locale/messages_tl.json +13 -2
  32. package/dist/cjs/assets/locale/messages_tr.json +11 -0
  33. package/dist/cjs/assets/locale/messages_uk.json +11 -0
  34. package/dist/cjs/assets/locale/messages_vi.json +11 -0
  35. package/dist/cjs/assets/locale/messages_zh.json +11 -0
  36. package/dist/cjs/assets/locale/version_file +1 -1
  37. package/dist/cjs/assets/visual-e2e-locale/messages_visuale2e.json +29 -2
  38. package/dist/cjs/hooks/index.js +6 -6
  39. package/dist/cjs/hooks/index.js.map +1 -1
  40. package/dist/cjs/hooks/useImport.js +4 -0
  41. package/dist/cjs/hooks/useImport.js.map +1 -1
  42. package/dist/cjs/hooks/useSchemaSource.js +11 -0
  43. package/dist/cjs/hooks/useSchemaSource.js.map +1 -0
  44. package/dist/cjs/index.js +4 -9
  45. package/dist/cjs/index.js.map +1 -1
  46. package/dist/cjs/services/translations.js.map +1 -1
  47. package/dist/cjs/state/CustomFieldModalState.js +12 -0
  48. package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
  49. package/dist/cjs/state/ImportState/ImportState.js +415 -136
  50. package/dist/cjs/state/ImportState/ImportState.js.map +1 -1
  51. package/dist/cjs/state/ImportState/__tests__/ImportState.engine.spec.js +417 -82
  52. package/dist/cjs/state/ImportState/__tests__/ImportState.engine.spec.js.map +1 -1
  53. package/dist/cjs/state/ImportState/__tests__/buildImportConfig.spec.js +156 -0
  54. package/dist/cjs/state/ImportState/__tests__/buildImportConfig.spec.js.map +1 -0
  55. package/dist/cjs/state/ImportState/detectFieldType.js +41 -0
  56. package/dist/cjs/state/ImportState/detectFieldType.js.map +1 -1
  57. package/dist/cjs/state/ImportState/fieldEdit.js +49 -0
  58. package/dist/cjs/state/ImportState/fieldEdit.js.map +1 -1
  59. package/dist/cjs/state/SourceState.js +150 -0
  60. package/dist/cjs/state/SourceState.js.map +1 -0
  61. package/dist/cjs/state/index.js +7 -0
  62. package/dist/cjs/state/index.js.map +1 -1
  63. package/dist/cjs/testkit/createInMemorySchemaSource.js +190 -0
  64. package/dist/cjs/testkit/createInMemorySchemaSource.js.map +1 -0
  65. package/dist/cjs/testkit/hubJobImportMocks.js +18 -2
  66. package/dist/cjs/testkit/hubJobImportMocks.js.map +1 -1
  67. package/dist/cjs/testkit/index.js +6 -0
  68. package/dist/cjs/testkit/index.js.map +1 -1
  69. package/dist/cjs/types/Field.js.map +1 -1
  70. package/dist/cjs/types/Schema.js.map +1 -1
  71. package/dist/cjs/types/SchemaSource.js +31 -21
  72. package/dist/cjs/types/SchemaSource.js.map +1 -1
  73. package/dist/esm/assets/locale/messages_ar.json +13 -2
  74. package/dist/esm/assets/locale/messages_bg.json +13 -2
  75. package/dist/esm/assets/locale/messages_ca.json +13 -2
  76. package/dist/esm/assets/locale/messages_cs.json +11 -0
  77. package/dist/esm/assets/locale/messages_da.json +11 -0
  78. package/dist/esm/assets/locale/messages_de.json +11 -0
  79. package/dist/esm/assets/locale/messages_el.json +13 -2
  80. package/dist/esm/assets/locale/messages_en.json +13 -2
  81. package/dist/esm/assets/locale/messages_es.json +11 -0
  82. package/dist/esm/assets/locale/messages_fi.json +13 -2
  83. package/dist/esm/assets/locale/messages_fr.json +11 -0
  84. package/dist/esm/assets/locale/messages_he.json +13 -2
  85. package/dist/esm/assets/locale/messages_hi.json +11 -0
  86. package/dist/esm/assets/locale/messages_hu.json +13 -2
  87. package/dist/esm/assets/locale/messages_id.json +11 -0
  88. package/dist/esm/assets/locale/messages_it.json +11 -0
  89. package/dist/esm/assets/locale/messages_ja.json +11 -0
  90. package/dist/esm/assets/locale/messages_ko.json +11 -0
  91. package/dist/esm/assets/locale/messages_lt.json +13 -2
  92. package/dist/esm/assets/locale/messages_ms.json +13 -2
  93. package/dist/esm/assets/locale/messages_nl.json +11 -0
  94. package/dist/esm/assets/locale/messages_no.json +11 -0
  95. package/dist/esm/assets/locale/messages_pl.json +11 -0
  96. package/dist/esm/assets/locale/messages_pt.json +11 -0
  97. package/dist/esm/assets/locale/messages_ro.json +13 -2
  98. package/dist/esm/assets/locale/messages_ru.json +11 -0
  99. package/dist/esm/assets/locale/messages_sk.json +13 -2
  100. package/dist/esm/assets/locale/messages_sl.json +13 -2
  101. package/dist/esm/assets/locale/messages_sv.json +11 -0
  102. package/dist/esm/assets/locale/messages_th.json +11 -0
  103. package/dist/esm/assets/locale/messages_tl.json +13 -2
  104. package/dist/esm/assets/locale/messages_tr.json +11 -0
  105. package/dist/esm/assets/locale/messages_uk.json +11 -0
  106. package/dist/esm/assets/locale/messages_vi.json +11 -0
  107. package/dist/esm/assets/locale/messages_zh.json +11 -0
  108. package/dist/esm/assets/locale/version_file +1 -1
  109. package/dist/esm/assets/visual-e2e-locale/messages_visuale2e.json +29 -2
  110. package/dist/esm/hooks/index.js +1 -1
  111. package/dist/esm/hooks/index.js.map +1 -1
  112. package/dist/esm/hooks/useImport.js +3 -1
  113. package/dist/esm/hooks/useImport.js.map +1 -1
  114. package/dist/esm/hooks/useSchemaSource.js +7 -0
  115. package/dist/esm/hooks/useSchemaSource.js.map +1 -0
  116. package/dist/esm/index.js +1 -2
  117. package/dist/esm/index.js.map +1 -1
  118. package/dist/esm/state/CustomFieldModalState.js +8 -0
  119. package/dist/esm/state/CustomFieldModalState.js.map +1 -1
  120. package/dist/esm/state/ImportState/ImportState.js +306 -113
  121. package/dist/esm/state/ImportState/ImportState.js.map +1 -1
  122. package/dist/esm/state/ImportState/__tests__/ImportState.engine.spec.js +297 -70
  123. package/dist/esm/state/ImportState/__tests__/ImportState.engine.spec.js.map +1 -1
  124. package/dist/esm/state/ImportState/__tests__/buildImportConfig.spec.js +100 -0
  125. package/dist/esm/state/ImportState/__tests__/buildImportConfig.spec.js.map +1 -0
  126. package/dist/esm/state/ImportState/detectFieldType.js +34 -15
  127. package/dist/esm/state/ImportState/detectFieldType.js.map +1 -1
  128. package/dist/esm/state/ImportState/fieldEdit.js +44 -0
  129. package/dist/esm/state/ImportState/fieldEdit.js.map +1 -1
  130. package/dist/esm/state/SourceState.js +131 -0
  131. package/dist/esm/state/SourceState.js.map +1 -0
  132. package/dist/esm/state/index.js +1 -0
  133. package/dist/esm/state/index.js.map +1 -1
  134. package/dist/esm/testkit/createInMemorySchemaSource.js +141 -0
  135. package/dist/esm/testkit/createInMemorySchemaSource.js.map +1 -0
  136. package/dist/esm/testkit/hubJobImportMocks.js +17 -1
  137. package/dist/esm/testkit/hubJobImportMocks.js.map +1 -1
  138. package/dist/esm/testkit/index.js +1 -0
  139. package/dist/esm/testkit/index.js.map +1 -1
  140. package/dist/esm/types/SchemaSource.js +21 -14
  141. package/dist/esm/types/SchemaSource.js.map +1 -1
  142. package/dist/types/hooks/index.d.ts +1 -1
  143. package/dist/types/hooks/index.d.ts.map +1 -1
  144. package/dist/types/hooks/useImport.d.ts +9 -3
  145. package/dist/types/hooks/useImport.d.ts.map +1 -1
  146. package/dist/types/hooks/useSchemaSource.d.ts +4 -0
  147. package/dist/types/hooks/useSchemaSource.d.ts.map +1 -0
  148. package/dist/types/index.d.ts +2 -3
  149. package/dist/types/index.d.ts.map +1 -1
  150. package/dist/types/services/translations.d.ts +7 -1
  151. package/dist/types/services/translations.d.ts.map +1 -1
  152. package/dist/types/state/CustomFieldModalState.d.ts +9 -0
  153. package/dist/types/state/CustomFieldModalState.d.ts.map +1 -1
  154. package/dist/types/state/ImportState/ImportState.d.ts +208 -65
  155. package/dist/types/state/ImportState/ImportState.d.ts.map +1 -1
  156. package/dist/types/state/ImportState/__tests__/buildImportConfig.spec.d.ts +2 -0
  157. package/dist/types/state/ImportState/__tests__/buildImportConfig.spec.d.ts.map +1 -0
  158. package/dist/types/state/ImportState/detectFieldType.d.ts +5 -0
  159. package/dist/types/state/ImportState/detectFieldType.d.ts.map +1 -1
  160. package/dist/types/state/ImportState/fieldEdit.d.ts +6 -0
  161. package/dist/types/state/ImportState/fieldEdit.d.ts.map +1 -1
  162. package/dist/types/state/SourceState.d.ts +39 -0
  163. package/dist/types/state/SourceState.d.ts.map +1 -0
  164. package/dist/types/state/index.d.ts +1 -0
  165. package/dist/types/state/index.d.ts.map +1 -1
  166. package/dist/types/testkit/WixPatternsContainer.driver.d.ts +4 -0
  167. package/dist/types/testkit/WixPatternsContainer.driver.d.ts.map +1 -1
  168. package/dist/types/testkit/createInMemorySchemaSource.d.ts +43 -0
  169. package/dist/types/testkit/createInMemorySchemaSource.d.ts.map +1 -0
  170. package/dist/types/testkit/hubJobImportMocks.d.ts +11 -1
  171. package/dist/types/testkit/hubJobImportMocks.d.ts.map +1 -1
  172. package/dist/types/testkit/index.d.ts +1 -0
  173. package/dist/types/testkit/index.d.ts.map +1 -1
  174. package/dist/types/types/Field.d.ts +3 -0
  175. package/dist/types/types/Field.d.ts.map +1 -1
  176. package/dist/types/types/Schema.d.ts +10 -6
  177. package/dist/types/types/Schema.d.ts.map +1 -1
  178. package/dist/types/types/SchemaSource.d.ts +30 -13
  179. package/dist/types/types/SchemaSource.d.ts.map +1 -1
  180. package/package.json +4 -4
  181. package/dist/cjs/hooks/useImportConfig.js +0 -12
  182. package/dist/cjs/hooks/useImportConfig.js.map +0 -1
  183. package/dist/esm/hooks/useImportConfig.js +0 -6
  184. package/dist/esm/hooks/useImportConfig.js.map +0 -1
  185. package/dist/types/hooks/useImportConfig.d.ts +0 -5
  186. package/dist/types/hooks/useImportConfig.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ImportState.js","sourceRoot":"","sources":["../../../../src/state/ImportState/ImportState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImportState.js","sourceRoot":"","sources":["../../../../src/state/ImportState/ImportState.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,13 @@ jest.mock('../hubJobClient');
13
13
  const COMPLETED_JOB = {
14
14
  id: 'job-1',
15
15
  status: JobStatus.COMPLETED,
16
- progress: { itemsSuccessful: 2, itemsRejected: 0, total: 2, current: 2 },
16
+ progress: {
17
+ itemsSuccessful: 2,
18
+ itemsRejected: 0,
19
+ total: 2,
20
+ current: 2,
21
+ itemsSuccessfulInfo: { itemsCreated: 1, itemsUpdated: 1 },
22
+ },
17
23
  };
18
24
  function setup(clientOverrides = {}, extra = {}) {
19
25
  const client = {
@@ -26,17 +32,31 @@ function setup(clientOverrides = {}, extra = {}) {
26
32
  };
27
33
  createHubJobClient.mockReturnValue(client);
28
34
  const importModalState = { close: jest.fn() };
29
- const collection = {
30
- clearResultAndMoveToStart: jest.fn(),
31
- };
32
35
  const showToast = jest.fn();
33
36
  const downloadCsv = jest.fn();
34
37
  const translate = (key, params) => params ? `${key}:${JSON.stringify(params)}` : key;
35
- const { detectColumnType, config: configOverride, ...configOverrides } = extra;
38
+ const { detectColumnType, config: configOverride, collectionId, destination, updateSchema, createFields, fieldManagement, mergeFields, fields, idFieldKey, backup, jobApplicationErrorMap, } = extra;
39
+ const collection = {
40
+ clearResultAndMoveToStart: jest.fn(),
41
+ queryName: collectionId ?? 'Movies',
42
+ };
43
+ const dataSource = destination
44
+ ? {
45
+ destination,
46
+ ...(createFields && { createFields }),
47
+ ...(fieldManagement && { fieldManagement }),
48
+ }
49
+ : {
50
+ collectionId: collectionId ?? 'Movies',
51
+ ...(updateSchema && { updateSchema }),
52
+ };
36
53
  const config = configOverride ?? {
37
- fields: [{ id: 'name', header: 'Name' }],
38
- collectionId: 'Movies',
39
- ...configOverrides,
54
+ fields: fields ?? [{ id: 'name', header: 'Name' }],
55
+ dataSource,
56
+ ...(mergeFields && { mergeFields }),
57
+ ...(idFieldKey && { idFieldKey }),
58
+ ...(backup && { backup }),
59
+ ...(jobApplicationErrorMap && { jobApplicationErrorMap }),
40
60
  };
41
61
  const props = {
42
62
  config,
@@ -72,8 +92,8 @@ function setup(clientOverrides = {}, extra = {}) {
72
92
  }
73
93
  describe('ImportState engine (data-hub job)', () => {
74
94
  beforeEach(() => {
75
- // The success path awaits a real setTimeout (completion linger); make sure
76
- // timers are real even if the preset defaults to fake ones.
95
+ // The poll loop awaits real setTimeouts between polls; make sure timers are
96
+ // real even if the preset defaults to fake ones.
77
97
  jest.useRealTimers();
78
98
  });
79
99
  it('uploads the aligned file, submits a job, and reports success', async () => {
@@ -86,14 +106,53 @@ describe('ImportState engine (data-hub job)', () => {
86
106
  name: 'data.csv',
87
107
  destination: { wixDataCollection: { collectionId: 'Movies' } },
88
108
  });
89
- expect(state.result).toEqual({ succeeded: 2, failed: 0 });
109
+ // created/updated come from the job's itemsSuccessfulInfo.
110
+ expect(state.result).toEqual({
111
+ succeeded: 2,
112
+ failed: 0,
113
+ created: 1,
114
+ updated: 1,
115
+ });
90
116
  expect(state.importStatus.status).toBe('success');
91
- expect(importModalState.close).toHaveBeenCalled();
117
+ // The modal stays open on the summary step; the collection is refreshed now
118
+ // so the table is current once the user closes it via `done`.
119
+ expect(state.currentStep).toBe('summary');
120
+ expect(importModalState.close).not.toHaveBeenCalled();
92
121
  expect(collection.clearResultAndMoveToStart).toHaveBeenCalledWith({
93
122
  force: true,
94
123
  });
95
124
  });
96
- it('shows a partial-success toast when some rows are rejected', async () => {
125
+ it('holds the completed (100%) progress bar on the progress step before the summary (CAIRO-4476)', async () => {
126
+ const { state } = setup();
127
+ // The job reports counts only when it finishes, so the bar can only reach
128
+ // 100% at the very end. Capture the step + counts at the moment the linger
129
+ // starts to prove the user sees the completed bar before the summary
130
+ // replaces it.
131
+ let atLinger = null;
132
+ const spy = jest
133
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
134
+ .spyOn(state, '_lingerOnCompletion')
135
+ .mockImplementation(() => {
136
+ atLinger = {
137
+ step: state.currentStep,
138
+ processed: state.processedCount,
139
+ total: state.totalCount,
140
+ };
141
+ return Promise.resolve();
142
+ });
143
+ await state.startImport();
144
+ expect(atLinger).toEqual({ step: 'progress', processed: 2, total: 2 });
145
+ expect(state.currentStep).toBe('summary');
146
+ spy.mockRestore();
147
+ });
148
+ it('closes the modal only when the user dismisses the summary via done', async () => {
149
+ const { state, importModalState } = setup();
150
+ await state.startImport();
151
+ expect(importModalState.close).not.toHaveBeenCalled();
152
+ state.done();
153
+ expect(importModalState.close).toHaveBeenCalled();
154
+ });
155
+ it('shows the summary step (no toast) when some rows are rejected', async () => {
97
156
  const { state, showToast, importModalState } = setup({
98
157
  getJob: jest.fn(async () => ({
99
158
  id: 'job-1',
@@ -103,16 +162,24 @@ describe('ImportState engine (data-hub job)', () => {
103
162
  itemsRejected: 1,
104
163
  total: 2,
105
164
  current: 2,
165
+ itemsSuccessfulInfo: { itemsCreated: 1, itemsUpdated: 0 },
106
166
  },
107
167
  })),
108
168
  });
109
169
  await state.startImport();
110
- expect(state.result).toEqual({ succeeded: 1, failed: 1 });
111
- expect(showToast).toHaveBeenCalledWith(expect.objectContaining({ type: 'WARNING' }));
112
- expect(importModalState.close).toHaveBeenCalled();
170
+ expect(state.result).toEqual({
171
+ succeeded: 1,
172
+ failed: 1,
173
+ created: 1,
174
+ updated: 0,
175
+ });
176
+ expect(state.currentStep).toBe('summary');
177
+ // The completion toast is gone — the summary step reports the outcome.
178
+ expect(showToast).not.toHaveBeenCalled();
179
+ expect(importModalState.close).not.toHaveBeenCalled();
113
180
  });
114
181
  it('maps the failed "row N" by record (unaffected by an embedded-newline cell)', async () => {
115
- const { state, downloadCsv, showToast } = setup({
182
+ const { state, downloadCsv } = setup({
116
183
  getJob: jest.fn(async () => ({
117
184
  id: 'job-1',
118
185
  status: JobStatus.PARTIALLY_SUCCESSFUL,
@@ -142,15 +209,14 @@ describe('ImportState engine (data-hub job)', () => {
142
209
  };
143
210
  });
144
211
  await state.startImport();
145
- const toast = showToast.mock.calls[0][0];
146
- await toast.action.onClick();
212
+ await state.downloadFailedRows();
147
213
  // "row 4" → csvRows[2] (Mango), NOT shifted by the embedded newline in row 0.
148
214
  const [content] = downloadCsv.mock.calls[0];
149
215
  expect(content).toContain('Mango');
150
216
  expect(content).not.toContain('Apple');
151
217
  });
152
- it('downloads a re-importable CSV of the failed rows from the partial toast action', async () => {
153
- const { state, client, showToast, downloadCsv } = setup({
218
+ it('downloads a re-importable CSV of the failed rows, each prefixed with its failure reason', async () => {
219
+ const { state, client, downloadCsv } = setup({
154
220
  getJob: jest.fn(async () => ({
155
221
  id: 'job-1',
156
222
  status: JobStatus.PARTIALLY_SUCCESSFUL,
@@ -159,18 +225,21 @@ describe('ImportState engine (data-hub job)', () => {
159
225
  // csvRows[1] (the "Pear" row) failed → file line 3 → "row 3".
160
226
  listMovementLogs: jest.fn(async () => ({
161
227
  logs: [
162
- { sourceItemId: 'row 3', failure: { code: 'bad', description: 'x' } },
228
+ {
229
+ sourceItemId: 'row 3',
230
+ failure: { code: 'bad', description: 'Invalid value' },
231
+ },
163
232
  ],
164
233
  pagingMetadata: { hasNext: false },
165
234
  })),
166
235
  });
167
236
  await state.startImport();
168
- // Trigger the toast's download action.
169
- const toast = showToast.mock.calls[0][0];
170
- await toast.action.onClick();
237
+ await state.downloadFailedRows();
171
238
  expect(client.listMovementLogs).toHaveBeenCalledWith('job-1', undefined);
172
- // Original headers + only the failed row, ready to fix and re-upload.
173
- expect(downloadCsv).toHaveBeenCalledWith('Name\r\nPear', 'failed-data.csv');
239
+ // A leading reason column (the translated header) + original headers, then
240
+ // the failed row prefixed with the server's failure reason — ready to fix
241
+ // and re-upload. `translate` here echoes the key for the column header.
242
+ expect(downloadCsv).toHaveBeenCalledWith('cairo.import.failureReasonColumn,Name\r\nInvalid value,Pear', 'failed-data.csv');
174
243
  });
175
244
  it('surfaces an error state with an application-error-shaped error when the job fails', async () => {
176
245
  const { state, importModalState, collection } = setup({
@@ -190,26 +259,21 @@ describe('ImportState engine (data-hub job)', () => {
190
259
  expect(importModalState.close).not.toHaveBeenCalled();
191
260
  expect(collection.clearResultAndMoveToStart).not.toHaveBeenCalled();
192
261
  });
193
- it('hands a failed job to onJobError, which surfaces the wrapped error', async () => {
194
- // Wiring only: the consumer forwards `run` to their withErrorHandler exactly
195
- // as documented, and the error it re-rejects is the one surfaced to the UI
196
- // (with the application-error-shaped code intact). End-to-end resolution
197
- // against the real error handler is covered in the cairo
198
- // Table.importButton spec, which has a real errorHandler instance.
199
- // Mirror `(run) => errorHandler.withErrorHandler(run, errorCodesMap)`;
200
- // a passthrough stub, so this just runs `run` and re-rejects.
201
- const withErrorHandler = (fn) => fn();
202
- const onJobError = jest.fn((run) => withErrorHandler(run));
262
+ it('resolves a failed job through the consumer jobApplicationErrorMap', async () => {
263
+ // ImportState wraps the failure with `errorHandler.withErrorHandler(run,
264
+ // jobApplicationErrorMap)` itself; the consumer only supplies the per-code
265
+ // map. The surfaced error keeps the application-error-shaped code intact.
266
+ // End-to-end resolution against the real error handler (getResolvedError) is
267
+ // covered in the cairo Table.importButton spec.
268
+ const jobApplicationErrorMap = { duplicate_key: () => ({ message: 'Bad rows' }) };
203
269
  const { state } = setup({
204
270
  getJob: jest.fn(async () => ({
205
271
  id: 'job-1',
206
272
  status: JobStatus.FAILED,
207
273
  error: { code: 'duplicate_key', description: 'Bad rows' },
208
274
  })),
209
- }, { onJobError });
275
+ }, { jobApplicationErrorMap });
210
276
  await state.startImport();
211
- expect(onJobError).toHaveBeenCalledTimes(1);
212
- expect(typeof onJobError.mock.calls[0][0]).toBe('function');
213
277
  expect(state.importStatus.status).toBe('error');
214
278
  const error = state.importStatus.error;
215
279
  expect(error.response?.data?.details?.applicationError?.code).toBe('duplicate_key');
@@ -251,30 +315,20 @@ describe('ImportState engine (data-hub job)', () => {
251
315
  // forever; it must stop after the first fetch.
252
316
  expect(client.getJob).toHaveBeenCalledTimes(1);
253
317
  });
254
- it('does not restore when closed during the success completion linger', async () => {
318
+ it('does not restore a completed import when the summary is closed', async () => {
255
319
  const restoreFn = jest.fn().mockResolvedValue(undefined);
256
320
  const { state, importModalState, collection } = setup({}, { backup: async () => ({ restore: restoreFn }) });
257
- // A 0ms macrotask drains the pending async chain without firing the 600ms
258
- // linger timer.
259
- const flush = () => new Promise((resolve) => setTimeout(resolve, 0));
260
- const promise = state.startImport();
261
- // Run backup → upload → submit → poll (terminal) → success, parking on the
262
- // 600ms completion linger (still on the 'progress' step) without firing it.
263
- await flush();
264
- await flush();
265
- await flush();
321
+ await state.startImport();
322
+ // The import finished on the summary step and the collection was refreshed.
266
323
  expect(state.importStatus.isSuccess).toBe(true);
267
- expect(state.currentStep).toBe('progress');
268
- // User closes the modal mid-linger.
269
- await state.close();
270
- await promise;
271
- // A successful import must not be reverted; the modal closes and the
272
- // collection refreshes.
273
- expect(restoreFn).not.toHaveBeenCalled();
274
- expect(importModalState.close).toHaveBeenCalled();
324
+ expect(state.currentStep).toBe('summary');
275
325
  expect(collection.clearResultAndMoveToStart).toHaveBeenCalledWith({
276
326
  force: true,
277
327
  });
328
+ // Closing the summary must not revert a successful import.
329
+ await state.close();
330
+ expect(restoreFn).not.toHaveBeenCalled();
331
+ expect(importModalState.close).toHaveBeenCalled();
278
332
  });
279
333
  });
280
334
  describe('ImportState writePolicy (id-collision handling)', () => {
@@ -475,6 +529,84 @@ describe('ImportState platformized destination (non–Wix-Data)', () => {
475
529
  const wixData = setup().state;
476
530
  expect(wixData.canConfigureWritePolicy).toBe(true);
477
531
  });
532
+ describe('DataExtension create fields (destination branch)', () => {
533
+ it('enables create-new-field when the destination branch supplies createFields', () => {
534
+ const withCreate = setup({}, {
535
+ destination: { storesCatalogProducts: {} },
536
+ createFields: jest.fn(async () => undefined),
537
+ }).state;
538
+ expect(withCreate.canCreateNewField).toBe(true);
539
+ const withoutCreate = setup({}, { destination: { storesCatalogProducts: {} } }).state;
540
+ expect(withoutCreate.canCreateNewField).toBe(false);
541
+ });
542
+ it('hands createFields the deduped pending columns (source builds its own def)', async () => {
543
+ const createFields = jest.fn(async () => undefined);
544
+ const { state, client } = setup({}, { destination: { storesCatalogProducts: {} }, createFields });
545
+ runInAction(() => {
546
+ state.csvHeaders = ['Name', 'Color'];
547
+ state.csvRows = [
548
+ ['Apple', 'Red'],
549
+ ['Pear', 'Green'],
550
+ ];
551
+ state.mappingByHeader = {
552
+ Name: { kind: 'existing', fieldId: 'name' },
553
+ Color: { kind: 'new', fieldType: 'text' },
554
+ };
555
+ });
556
+ await state.startImport();
557
+ expect(createFields).toHaveBeenCalledTimes(1);
558
+ // Core passes the neutral pending column (deduped key + name + the mapping);
559
+ // the DataExtension source turns it into its own field shape.
560
+ expect(createFields).toHaveBeenCalledWith([
561
+ {
562
+ key: 'color',
563
+ displayName: 'Color',
564
+ mapping: { kind: 'new', fieldType: 'text' },
565
+ },
566
+ ]);
567
+ // The consumer's destination is still sent verbatim.
568
+ expect(client.submitImportJob).toHaveBeenCalledWith(expect.objectContaining({
569
+ destination: { storesCatalogProducts: {} },
570
+ }));
571
+ });
572
+ it('carries the edited mapping config (precise type, permissions, PII) in the pending column', async () => {
573
+ const createFields = jest.fn(async () => undefined);
574
+ const { state } = setup({}, { destination: { storesCatalogProducts: {} }, createFields });
575
+ const config = {
576
+ deType: 'decimal',
577
+ isPii: true,
578
+ permissions: {
579
+ installedApps: { defaultRead: true, defaultWrite: false },
580
+ },
581
+ };
582
+ runInAction(() => {
583
+ state.csvHeaders = ['Name', 'Count'];
584
+ state.csvRows = [['Apple', '3']];
585
+ state.mappingByHeader = {
586
+ Name: { kind: 'existing', fieldId: 'name' },
587
+ Count: {
588
+ kind: 'new',
589
+ fieldType: 'number',
590
+ displayName: 'Count',
591
+ config,
592
+ },
593
+ };
594
+ });
595
+ await state.startImport();
596
+ expect(createFields).toHaveBeenCalledWith([
597
+ {
598
+ key: 'count',
599
+ displayName: 'Count',
600
+ mapping: {
601
+ kind: 'new',
602
+ fieldType: 'number',
603
+ displayName: 'Count',
604
+ config,
605
+ },
606
+ },
607
+ ]);
608
+ });
609
+ });
478
610
  describe('created fields (CAIRO-4400)', () => {
479
611
  const RETURNED_FIELDS = {
480
612
  name: { id: 'name', displayName: 'Name', type: 'SHORT_TEXT' },
@@ -558,25 +690,29 @@ describe('ImportState platformized destination (non–Wix-Data)', () => {
558
690
  throw new Error('merge boom');
559
691
  });
560
692
  const updateSchema = jest.fn(async () => RETURNED_FIELDS);
561
- const { state, importModalState, collection } = setup({}, { updateSchema, mergeFields });
693
+ const { state, collection } = setup({}, { updateSchema, mergeFields });
562
694
  withNewFieldMapping(state);
563
695
  await state.startImport();
564
696
  expect(mergeFields).toHaveBeenCalledTimes(1);
565
697
  // A throwing merge is swallowed — the completed import is untouched.
566
698
  expect(state.importStatus.status).toBe('success');
567
- expect(importModalState.close).toHaveBeenCalled();
699
+ expect(state.currentStep).toBe('summary');
568
700
  expect(collection.clearResultAndMoveToStart).toHaveBeenCalled();
569
701
  consoleError.mockRestore();
570
702
  });
571
703
  });
572
704
  describe('schema-backed config (live getters + create-field permission)', () => {
573
- // A schema-backed config sets canAddFields explicitly and supplies
574
- // updateSchema/idFieldKey the shape a SchemaImportRef satisfies.
705
+ // A schema-backed config: the CMS `dataSource` branch a SchemaImportRef
706
+ // satisfies. It supplies `updateSchema` only when create is permitted — its
707
+ // presence is the create-new-field opt-in (no separate flag).
575
708
  const schemaConfig = (over = {}) => ({
576
- fields: [{ id: 'name', header: 'Name' }],
577
- collectionId: 'RefCollection',
578
- canAddFields: false,
579
- ...over,
709
+ fields: over.fields ?? [{ id: 'name', header: 'Name' }],
710
+ dataSource: {
711
+ collectionId: over.collectionId ?? 'RefCollection',
712
+ ...(over.updateSchema && { updateSchema: over.updateSchema }),
713
+ },
714
+ ...(over.idFieldKey && { idFieldKey: over.idFieldKey }),
715
+ ...(over.mergeFields && { mergeFields: over.mergeFields }),
580
716
  });
581
717
  it('reads fields live from the config rather than snapshotting them', () => {
582
718
  const config = schemaConfig();
@@ -591,10 +727,12 @@ describe('ImportState platformized destination (non–Wix-Data)', () => {
591
727
  config.fields = updated;
592
728
  expect(state.fields).toBe(updated);
593
729
  });
594
- it('gates create-new-field on canAddFields even when updateSchema is present', () => {
595
- const off = setup({}, { config: schemaConfig({ canAddFields: false, updateSchema: jest.fn() }) });
730
+ it('gates create-new-field on the presence of a create callback (updateSchema)', () => {
731
+ // No create callback create-new-field off (the source didn't permit it).
732
+ const off = setup({}, { config: schemaConfig() });
596
733
  expect(off.state.canCreateNewField).toBe(false);
597
- const on = setup({}, { config: schemaConfig({ canAddFields: true }) });
734
+ // A create callback present on.
735
+ const on = setup({}, { config: schemaConfig({ updateSchema: jest.fn() }) });
598
736
  expect(on.state.canCreateNewField).toBe(true);
599
737
  });
600
738
  it('builds the destination from the config collectionId', async () => {
@@ -609,7 +747,7 @@ describe('ImportState platformized destination (non–Wix-Data)', () => {
609
747
  name: { id: 'name', displayName: 'Name', type: 'SHORT_TEXT' },
610
748
  year: { id: 'year', displayName: 'Year', type: 'NUMBER' },
611
749
  }));
612
- const { state } = setup({}, { config: schemaConfig({ canAddFields: true, updateSchema }) });
750
+ const { state } = setup({}, { config: schemaConfig({ updateSchema }) });
613
751
  runInAction(() => {
614
752
  state.csvHeaders = ['Name', 'Year'];
615
753
  state.csvRows = [['Apple', '1999']];
@@ -632,4 +770,93 @@ describe('ImportState platformized destination (non–Wix-Data)', () => {
632
770
  });
633
771
  });
634
772
  });
773
+ describe('ImportState required fields (CAIRO-4452)', () => {
774
+ beforeEach(() => {
775
+ jest.useRealTimers();
776
+ });
777
+ it('is satisfied when a required field has a column mapped to it', () => {
778
+ const { state } = setup({}, {
779
+ config: {
780
+ fields: [{ id: 'name', header: 'Name', required: true }],
781
+ dataSource: { collectionId: 'Movies' },
782
+ },
783
+ });
784
+ // The seeded mapping maps the "Name" column to the `name` field.
785
+ expect(state.hasMissingRequiredFields).toBe(false);
786
+ expect(state.missingRequiredFields).toEqual([]);
787
+ });
788
+ it('flags a required field the user set to "don\'t import"', () => {
789
+ const { state } = setup({}, {
790
+ config: {
791
+ fields: [{ id: 'name', header: 'Name', required: true }],
792
+ dataSource: { collectionId: 'Movies' },
793
+ },
794
+ });
795
+ state.setMapping('Name', null);
796
+ expect(state.hasMissingRequiredFields).toBe(true);
797
+ expect(state.missingRequiredFields.map((f) => f.id)).toEqual(['name']);
798
+ });
799
+ it('ignores unmapped fields that are not required', () => {
800
+ const { state } = setup({}, {
801
+ config: {
802
+ fields: [
803
+ { id: 'name', header: 'Name' },
804
+ { id: 'year', header: 'Year', required: false },
805
+ ],
806
+ dataSource: { collectionId: 'Movies' },
807
+ },
808
+ });
809
+ state.setMapping('Name', null);
810
+ expect(state.hasMissingRequiredFields).toBe(false);
811
+ });
812
+ it('is not satisfied by a create-new-field mapping', () => {
813
+ const { state } = setup({}, {
814
+ config: {
815
+ fields: [{ id: 'name', header: 'Name', required: true }],
816
+ dataSource: {
817
+ collectionId: 'Movies',
818
+ updateSchema: async () => undefined,
819
+ },
820
+ },
821
+ });
822
+ // Mapping the column to a brand-new field can't fill the existing required
823
+ // field, so it stays missing.
824
+ state.setNewFieldMapping('Name');
825
+ expect(state.hasMissingRequiredFields).toBe(true);
826
+ });
827
+ it('blocks startImport and shows an error toast when a required field is missing', async () => {
828
+ const { state, client, showToast } = setup({}, {
829
+ config: {
830
+ fields: [
831
+ { id: 'name', header: 'Name', required: true },
832
+ { id: 'year', header: 'Year' },
833
+ ],
834
+ dataSource: { collectionId: 'Movies' },
835
+ },
836
+ });
837
+ // Keep a mapping (so the import isn't blocked by "no mappings") but leave the
838
+ // required `name` field unmapped.
839
+ runInAction(() => {
840
+ state.csvHeaders = ['Name', 'Year'];
841
+ state.csvRows = [['Apple', '2020']];
842
+ });
843
+ state.setMapping('Name', null);
844
+ state.setMapping('Year', 'year');
845
+ await state.startImport();
846
+ expect(client.uploadFile).not.toHaveBeenCalled();
847
+ expect(client.submitImportJob).not.toHaveBeenCalled();
848
+ expect(state.currentStep).not.toBe('progress');
849
+ expect(showToast).toHaveBeenCalledWith(expect.objectContaining({ type: 'ERROR' }));
850
+ });
851
+ it('proceeds with import when all required fields are mapped', async () => {
852
+ const { state, client } = setup({}, {
853
+ config: {
854
+ fields: [{ id: 'name', header: 'Name', required: true }],
855
+ dataSource: { collectionId: 'Movies' },
856
+ },
857
+ });
858
+ await state.startImport();
859
+ expect(client.submitImportJob).toHaveBeenCalledTimes(1);
860
+ });
861
+ });
635
862
  //# sourceMappingURL=ImportState.engine.spec.js.map