@uniformdev/tms-sdk 19.154.1-alpha.14 → 19.154.1-alpha.17

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.
package/dist/index.esm.js CHANGED
@@ -51,26 +51,72 @@ var collectTranslationPayload = ({
51
51
  },
52
52
  components: {}
53
53
  };
54
- walkNodeTree(entity, ({ node: component, type, actions }) => {
55
- var _a;
56
- if (!component.type || !component._id) {
54
+ walkNodeTree(entity, ({ node, actions }) => {
55
+ if (!node.type || !node._id) {
57
56
  actions.stopProcessingDescendants();
58
57
  return;
59
58
  }
60
- const parameters = {};
61
- const overrides = {};
62
- const parametersOrFields = type == "component" ? component.parameters : component.fields;
63
- Object.entries(parametersOrFields != null ? parametersOrFields : {}).forEach(([paramKey, param]) => {
64
- var _a2, _b;
65
- const sourceLocaleValue = (_a2 = param.locales) == null ? void 0 : _a2[uniformSourceLocale];
66
- const targetLocaleValue = (_b = param.locales) == null ? void 0 : _b[uniformTargetLocale];
59
+ const { parameters, _overrides } = collectFromNode({
60
+ uniformSourceLocale,
61
+ uniformTargetLocale,
62
+ overrideModifiedTargetLocale,
63
+ node
64
+ });
65
+ if (parameters || _overrides) {
66
+ payload.components[node._id] = {
67
+ type: node.type,
68
+ parameters,
69
+ _overrides
70
+ };
71
+ }
72
+ });
73
+ return { payload };
74
+ };
75
+ var collectFromNode = ({
76
+ node,
77
+ uniformSourceLocale,
78
+ uniformTargetLocale,
79
+ overrideModifiedTargetLocale
80
+ }) => {
81
+ var _a, _b;
82
+ const parameters = {};
83
+ const overrides = {};
84
+ const componentParameters = "parameters" in node ? node.parameters : void 0;
85
+ const entryFields = "fields" in node ? node.fields : void 0;
86
+ Object.entries((_a = componentParameters != null ? componentParameters : entryFields) != null ? _a : {}).forEach(([paramKey, param]) => {
87
+ var _a2, _b2;
88
+ const sourceLocaleValue = (_a2 = param.locales) == null ? void 0 : _a2[uniformSourceLocale];
89
+ const targetLocaleValue = (_b2 = param.locales) == null ? void 0 : _b2[uniformTargetLocale];
90
+ if (!canTranslateParameterValue(param, sourceLocaleValue)) {
91
+ return;
92
+ }
93
+ if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
94
+ return;
95
+ }
96
+ parameters[paramKey] = {
97
+ type: param.type,
98
+ locales: {
99
+ [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
100
+ [TRANSLATION_PAYLOAD_TARGET_KEY]: sourceLocaleValue,
101
+ [TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY]: targetLocaleValue
102
+ }
103
+ };
104
+ });
105
+ Object.entries((_b = node._overrides) != null ? _b : {}).forEach(([overrideKey, override]) => {
106
+ var _a2, _b2;
107
+ Object.entries((_a2 = override.parameters) != null ? _a2 : {}).forEach(([paramKey, param]) => {
108
+ var _a3, _b3, _c, _d, _e;
109
+ const sourceLocaleValue = (_a3 = param.locales) == null ? void 0 : _a3[uniformSourceLocale];
110
+ const targetLocaleValue = (_b3 = param.locales) == null ? void 0 : _b3[uniformTargetLocale];
67
111
  if (!canTranslateParameterValue(param, sourceLocaleValue)) {
68
112
  return;
69
113
  }
70
114
  if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
71
115
  return;
72
116
  }
73
- parameters[paramKey] = {
117
+ (_c = overrides[overrideKey]) != null ? _c : overrides[overrideKey] = {};
118
+ (_e = (_d = overrides[overrideKey]).parameters) != null ? _e : _d.parameters = {};
119
+ overrides[overrideKey].parameters[paramKey] = {
74
120
  type: param.type,
75
121
  locales: {
76
122
  [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
@@ -79,41 +125,41 @@ var collectTranslationPayload = ({
79
125
  }
80
126
  };
81
127
  });
82
- Object.entries((_a = component._overrides) != null ? _a : {}).forEach(([componentId, override]) => {
83
- var _a2;
84
- Object.entries((_a2 = override.parameters) != null ? _a2 : {}).forEach(([paramKey, param]) => {
85
- var _a3, _b, _c, _d, _e;
86
- const sourceLocaleValue = (_a3 = param.locales) == null ? void 0 : _a3[uniformSourceLocale];
87
- const targetLocaleValue = (_b = param.locales) == null ? void 0 : _b[uniformTargetLocale];
88
- if (!canTranslateParameterValue(param, sourceLocaleValue)) {
89
- return;
90
- }
91
- if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
92
- return;
93
- }
94
- (_c = overrides[componentId]) != null ? _c : overrides[componentId] = {};
95
- (_e = (_d = overrides[componentId]).parameters) != null ? _e : _d.parameters = {};
96
- overrides[componentId].parameters[paramKey] = {
97
- type: param.type,
98
- locales: {
99
- [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
100
- [TRANSLATION_PAYLOAD_TARGET_KEY]: sourceLocaleValue,
101
- [TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY]: targetLocaleValue
128
+ Object.entries((_b2 = override.slots) != null ? _b2 : {}).forEach(([slotKey, slotComponents]) => {
129
+ slotComponents.map((slotComponent) => {
130
+ walkNodeTree(slotComponent, ({ node: node2, actions }) => {
131
+ var _a3, _b3, _c, _d, _e;
132
+ if (!node2.type || !node2._id) {
133
+ actions.stopProcessingDescendants();
134
+ return;
102
135
  }
103
- };
136
+ const { parameters: parameters2, _overrides } = collectFromNode({
137
+ uniformSourceLocale,
138
+ uniformTargetLocale,
139
+ overrideModifiedTargetLocale,
140
+ node: node2
141
+ });
142
+ if (parameters2 || _overrides) {
143
+ (_a3 = overrides[overrideKey]) != null ? _a3 : overrides[overrideKey] = {};
144
+ (_c = (_b3 = overrides[overrideKey]).slots) != null ? _c : _b3.slots = {};
145
+ (_e = (_d = overrides[overrideKey].slots)[slotKey]) != null ? _e : _d[slotKey] = [];
146
+ overrides[overrideKey].slots[slotKey].push({
147
+ _id: node2._id,
148
+ type: node2.type,
149
+ parameters: parameters2,
150
+ _overrides
151
+ });
152
+ }
153
+ });
104
154
  });
105
155
  });
106
- const hasParameters = Object.keys(parameters).length > 0;
107
- const hasOverrides = Object.keys(overrides).length > 0;
108
- if (hasParameters || hasOverrides) {
109
- payload.components[component._id] = {
110
- type: component.type,
111
- parameters: hasParameters ? parameters : void 0,
112
- _overrides: hasOverrides ? overrides : void 0
113
- };
114
- }
115
156
  });
116
- return { payload };
157
+ const hasParameters = Object.keys(parameters).length > 0;
158
+ const hasOverrides = Object.keys(overrides).length > 0;
159
+ return {
160
+ parameters: hasParameters ? parameters : void 0,
161
+ _overrides: hasOverrides ? overrides : void 0
162
+ };
117
163
  };
118
164
  var canTranslateParameterValue = (parameter, value) => {
119
165
  if (parameter.type === "text") {
@@ -211,12 +257,62 @@ var MERGE_TRANSLATION_ERRORS2 = {
211
257
  var createErrorResult2 = (errorKind) => {
212
258
  return { updated: false, errorKind, errorText: MERGE_TRANSLATION_ERRORS2[errorKind] };
213
259
  };
260
+ var processComponentTranslation = ({
261
+ uniformSourceLocale,
262
+ uniformTargetLocale,
263
+ overrideModifiedTargetLocale,
264
+ originalNode,
265
+ translatedComponent
266
+ }) => {
267
+ var _a, _b;
268
+ let updated = false;
269
+ if (!originalNode.type || !originalNode._id) {
270
+ return { updated };
271
+ }
272
+ const componentParameters = "parameters" in originalNode ? originalNode.parameters : void 0;
273
+ const entryFields = "fields" in originalNode ? originalNode.fields : void 0;
274
+ const originalParametersOrFields = componentParameters != null ? componentParameters : entryFields;
275
+ Object.entries((_a = translatedComponent.parameters) != null ? _a : {}).forEach(([paramKey, parameter]) => {
276
+ const originalParameter = originalParametersOrFields == null ? void 0 : originalParametersOrFields[paramKey];
277
+ if (!originalParameter) {
278
+ return;
279
+ }
280
+ const result = processParameterTranslation({
281
+ uniformSourceLocale,
282
+ uniformTargetLocale,
283
+ overrideModifiedTargetLocale,
284
+ originalParameter,
285
+ parameter
286
+ });
287
+ if (result.updated) {
288
+ updated = true;
289
+ }
290
+ });
291
+ Object.entries((_b = translatedComponent._overrides) != null ? _b : {}).forEach(([overrideKey, override]) => {
292
+ var _a2;
293
+ const originalOverride = (_a2 = originalNode._overrides) == null ? void 0 : _a2[overrideKey];
294
+ if (!originalOverride) {
295
+ return;
296
+ }
297
+ const result = processOverrideTranslation({
298
+ uniformSourceLocale,
299
+ uniformTargetLocale,
300
+ overrideModifiedTargetLocale,
301
+ originalOverride,
302
+ override
303
+ });
304
+ if (result.updated) {
305
+ updated = true;
306
+ }
307
+ });
308
+ return { updated };
309
+ };
214
310
  var processParameterTranslation = ({
215
311
  uniformSourceLocale,
216
312
  uniformTargetLocale,
313
+ overrideModifiedTargetLocale,
217
314
  originalParameter,
218
- parameter,
219
- overrideModifiedTargetLocale
315
+ parameter
220
316
  }) => {
221
317
  var _a, _b, _c;
222
318
  if (!originalParameter.locales) {
@@ -244,19 +340,19 @@ var processParameterTranslation = ({
244
340
  var processOverrideTranslation = ({
245
341
  uniformSourceLocale,
246
342
  uniformTargetLocale,
343
+ overrideModifiedTargetLocale,
247
344
  originalOverride,
248
- override,
249
- overrideModifiedTargetLocale
345
+ override
250
346
  }) => {
251
- var _a;
347
+ var _a, _b;
252
348
  let updated = false;
253
349
  Object.entries((_a = override.parameters) != null ? _a : {}).forEach(([paramKey, parameter]) => {
254
- var _a2, _b, _c, _d;
350
+ var _a2, _b2, _c, _d;
255
351
  const originalParameter = (_a2 = originalOverride.parameters) == null ? void 0 : _a2[paramKey];
256
352
  if (!originalParameter || !originalParameter.locales) {
257
353
  return;
258
354
  }
259
- const sourceValue = (_b = parameter.locales) == null ? void 0 : _b[TRANSLATION_PAYLOAD_SOURCE_KEY];
355
+ const sourceValue = (_b2 = parameter.locales) == null ? void 0 : _b2[TRANSLATION_PAYLOAD_SOURCE_KEY];
260
356
  const targetValue = (_c = parameter.locales) == null ? void 0 : _c[TRANSLATION_PAYLOAD_TARGET_KEY];
261
357
  const originalTargetValue = (_d = parameter.locales) == null ? void 0 : _d[TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY];
262
358
  const isSourceValueUntouched = isSameParameterValue({
@@ -274,6 +370,34 @@ var processOverrideTranslation = ({
274
370
  updated = true;
275
371
  }
276
372
  });
373
+ Object.entries((_b = override.slots) != null ? _b : {}).forEach(([slotKey, slotComponents]) => {
374
+ var _a2;
375
+ const originalSlotComponents = (_a2 = originalOverride.slots) == null ? void 0 : _a2[slotKey];
376
+ if (!(originalSlotComponents == null ? void 0 : originalSlotComponents.length)) {
377
+ return;
378
+ }
379
+ slotComponents.forEach((slotComponent) => {
380
+ if (!slotComponent.type || !slotComponent._id) {
381
+ return;
382
+ }
383
+ const originalComponent = originalSlotComponents.find(
384
+ (x) => x._id === slotComponent._id && x.type === slotComponent.type
385
+ );
386
+ if (!originalComponent) {
387
+ return;
388
+ }
389
+ const { updated: isComponentUpdated } = processComponentTranslation({
390
+ uniformSourceLocale,
391
+ uniformTargetLocale,
392
+ overrideModifiedTargetLocale,
393
+ originalNode: originalComponent,
394
+ translatedComponent: slotComponent
395
+ });
396
+ if (isComponentUpdated) {
397
+ updated = true;
398
+ }
399
+ });
400
+ });
277
401
  return { updated };
278
402
  };
279
403
  var isSameParameterValue = ({
@@ -324,7 +448,6 @@ var translateComposition = ({
324
448
  draft.composition._locales.push(uniformTargetLocale);
325
449
  }
326
450
  walkNodeTree2(draft.composition, ({ node: component, type, actions }) => {
327
- var _a3, _b2;
328
451
  if (type !== "component") {
329
452
  actions.stopProcessingDescendants();
330
453
  return;
@@ -337,40 +460,16 @@ var translateComposition = ({
337
460
  if (!translatedComponent || component.type !== translatedComponent.type) {
338
461
  return;
339
462
  }
340
- Object.entries((_a3 = translatedComponent.parameters) != null ? _a3 : {}).forEach(([paramKey, param]) => {
341
- var _a4;
342
- const originalParameter = (_a4 = component.parameters) == null ? void 0 : _a4[paramKey];
343
- if (!originalParameter) {
344
- return;
345
- }
346
- const result = processParameterTranslation({
347
- uniformSourceLocale,
348
- uniformTargetLocale,
349
- originalParameter,
350
- parameter: param,
351
- overrideModifiedTargetLocale: overrideModifiedTargetLocale != null ? overrideModifiedTargetLocale : false
352
- });
353
- if (result.updated) {
354
- updated = true;
355
- }
356
- });
357
- Object.entries((_b2 = translatedComponent._overrides) != null ? _b2 : {}).forEach(([componentId, override]) => {
358
- var _a4;
359
- const originalOverride = (_a4 = component._overrides) == null ? void 0 : _a4[componentId];
360
- if (!originalOverride) {
361
- return;
362
- }
363
- const result = processOverrideTranslation({
364
- uniformSourceLocale,
365
- uniformTargetLocale,
366
- originalOverride,
367
- override,
368
- overrideModifiedTargetLocale
369
- });
370
- if (result.updated) {
371
- updated = true;
372
- }
463
+ const { updated: isComponentUpdated } = processComponentTranslation({
464
+ uniformSourceLocale,
465
+ uniformTargetLocale,
466
+ overrideModifiedTargetLocale,
467
+ originalNode: component,
468
+ translatedComponent
373
469
  });
470
+ if (isComponentUpdated) {
471
+ updated = true;
472
+ }
374
473
  });
375
474
  });
376
475
  return { result: translatedComposition, updated };
@@ -479,7 +578,6 @@ var translateEntry = ({
479
578
  draft.entry._locales.push(uniformTargetLocale);
480
579
  }
481
580
  walkNodeTree3(draft.entry, ({ node: component, type, actions }) => {
482
- var _a3, _b2;
483
581
  if (type !== "entry") {
484
582
  actions.stopProcessingDescendants();
485
583
  return;
@@ -492,40 +590,16 @@ var translateEntry = ({
492
590
  if (!translatedComponent || component.type !== translatedComponent.type) {
493
591
  return;
494
592
  }
495
- Object.entries((_a3 = translatedComponent.parameters) != null ? _a3 : {}).forEach(([paramKey, parameter]) => {
496
- var _a4;
497
- const originalParameter = (_a4 = component.fields) == null ? void 0 : _a4[paramKey];
498
- if (!originalParameter) {
499
- return;
500
- }
501
- const result = processParameterTranslation({
502
- uniformSourceLocale,
503
- uniformTargetLocale,
504
- originalParameter,
505
- parameter,
506
- overrideModifiedTargetLocale
507
- });
508
- if (result.updated) {
509
- updated = true;
510
- }
511
- });
512
- Object.entries((_b2 = translatedComponent._overrides) != null ? _b2 : {}).forEach(([componentId, override]) => {
513
- var _a4;
514
- const originalOverride = (_a4 = component._overrides) == null ? void 0 : _a4[componentId];
515
- if (!originalOverride) {
516
- return;
517
- }
518
- const result = processOverrideTranslation({
519
- uniformSourceLocale,
520
- uniformTargetLocale,
521
- originalOverride,
522
- override,
523
- overrideModifiedTargetLocale
524
- });
525
- if (result.updated) {
526
- updated = true;
527
- }
593
+ const { updated: isComponentUpdated } = processComponentTranslation({
594
+ uniformSourceLocale,
595
+ uniformTargetLocale,
596
+ overrideModifiedTargetLocale,
597
+ originalNode: component,
598
+ translatedComponent
528
599
  });
600
+ if (isComponentUpdated) {
601
+ updated = true;
602
+ }
529
603
  });
530
604
  });
531
605
  return { result: translatedEntry, updated };
package/dist/index.js CHANGED
@@ -81,26 +81,72 @@ var collectTranslationPayload = ({
81
81
  },
82
82
  components: {}
83
83
  };
84
- (0, import_canvas.walkNodeTree)(entity, ({ node: component, type, actions }) => {
85
- var _a;
86
- if (!component.type || !component._id) {
84
+ (0, import_canvas.walkNodeTree)(entity, ({ node, actions }) => {
85
+ if (!node.type || !node._id) {
87
86
  actions.stopProcessingDescendants();
88
87
  return;
89
88
  }
90
- const parameters = {};
91
- const overrides = {};
92
- const parametersOrFields = type == "component" ? component.parameters : component.fields;
93
- Object.entries(parametersOrFields != null ? parametersOrFields : {}).forEach(([paramKey, param]) => {
94
- var _a2, _b;
95
- const sourceLocaleValue = (_a2 = param.locales) == null ? void 0 : _a2[uniformSourceLocale];
96
- const targetLocaleValue = (_b = param.locales) == null ? void 0 : _b[uniformTargetLocale];
89
+ const { parameters, _overrides } = collectFromNode({
90
+ uniformSourceLocale,
91
+ uniformTargetLocale,
92
+ overrideModifiedTargetLocale,
93
+ node
94
+ });
95
+ if (parameters || _overrides) {
96
+ payload.components[node._id] = {
97
+ type: node.type,
98
+ parameters,
99
+ _overrides
100
+ };
101
+ }
102
+ });
103
+ return { payload };
104
+ };
105
+ var collectFromNode = ({
106
+ node,
107
+ uniformSourceLocale,
108
+ uniformTargetLocale,
109
+ overrideModifiedTargetLocale
110
+ }) => {
111
+ var _a, _b;
112
+ const parameters = {};
113
+ const overrides = {};
114
+ const componentParameters = "parameters" in node ? node.parameters : void 0;
115
+ const entryFields = "fields" in node ? node.fields : void 0;
116
+ Object.entries((_a = componentParameters != null ? componentParameters : entryFields) != null ? _a : {}).forEach(([paramKey, param]) => {
117
+ var _a2, _b2;
118
+ const sourceLocaleValue = (_a2 = param.locales) == null ? void 0 : _a2[uniformSourceLocale];
119
+ const targetLocaleValue = (_b2 = param.locales) == null ? void 0 : _b2[uniformTargetLocale];
120
+ if (!canTranslateParameterValue(param, sourceLocaleValue)) {
121
+ return;
122
+ }
123
+ if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
124
+ return;
125
+ }
126
+ parameters[paramKey] = {
127
+ type: param.type,
128
+ locales: {
129
+ [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
130
+ [TRANSLATION_PAYLOAD_TARGET_KEY]: sourceLocaleValue,
131
+ [TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY]: targetLocaleValue
132
+ }
133
+ };
134
+ });
135
+ Object.entries((_b = node._overrides) != null ? _b : {}).forEach(([overrideKey, override]) => {
136
+ var _a2, _b2;
137
+ Object.entries((_a2 = override.parameters) != null ? _a2 : {}).forEach(([paramKey, param]) => {
138
+ var _a3, _b3, _c, _d, _e;
139
+ const sourceLocaleValue = (_a3 = param.locales) == null ? void 0 : _a3[uniformSourceLocale];
140
+ const targetLocaleValue = (_b3 = param.locales) == null ? void 0 : _b3[uniformTargetLocale];
97
141
  if (!canTranslateParameterValue(param, sourceLocaleValue)) {
98
142
  return;
99
143
  }
100
144
  if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
101
145
  return;
102
146
  }
103
- parameters[paramKey] = {
147
+ (_c = overrides[overrideKey]) != null ? _c : overrides[overrideKey] = {};
148
+ (_e = (_d = overrides[overrideKey]).parameters) != null ? _e : _d.parameters = {};
149
+ overrides[overrideKey].parameters[paramKey] = {
104
150
  type: param.type,
105
151
  locales: {
106
152
  [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
@@ -109,41 +155,41 @@ var collectTranslationPayload = ({
109
155
  }
110
156
  };
111
157
  });
112
- Object.entries((_a = component._overrides) != null ? _a : {}).forEach(([componentId, override]) => {
113
- var _a2;
114
- Object.entries((_a2 = override.parameters) != null ? _a2 : {}).forEach(([paramKey, param]) => {
115
- var _a3, _b, _c, _d, _e;
116
- const sourceLocaleValue = (_a3 = param.locales) == null ? void 0 : _a3[uniformSourceLocale];
117
- const targetLocaleValue = (_b = param.locales) == null ? void 0 : _b[uniformTargetLocale];
118
- if (!canTranslateParameterValue(param, sourceLocaleValue)) {
119
- return;
120
- }
121
- if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
122
- return;
123
- }
124
- (_c = overrides[componentId]) != null ? _c : overrides[componentId] = {};
125
- (_e = (_d = overrides[componentId]).parameters) != null ? _e : _d.parameters = {};
126
- overrides[componentId].parameters[paramKey] = {
127
- type: param.type,
128
- locales: {
129
- [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
130
- [TRANSLATION_PAYLOAD_TARGET_KEY]: sourceLocaleValue,
131
- [TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY]: targetLocaleValue
158
+ Object.entries((_b2 = override.slots) != null ? _b2 : {}).forEach(([slotKey, slotComponents]) => {
159
+ slotComponents.map((slotComponent) => {
160
+ (0, import_canvas.walkNodeTree)(slotComponent, ({ node: node2, actions }) => {
161
+ var _a3, _b3, _c, _d, _e;
162
+ if (!node2.type || !node2._id) {
163
+ actions.stopProcessingDescendants();
164
+ return;
132
165
  }
133
- };
166
+ const { parameters: parameters2, _overrides } = collectFromNode({
167
+ uniformSourceLocale,
168
+ uniformTargetLocale,
169
+ overrideModifiedTargetLocale,
170
+ node: node2
171
+ });
172
+ if (parameters2 || _overrides) {
173
+ (_a3 = overrides[overrideKey]) != null ? _a3 : overrides[overrideKey] = {};
174
+ (_c = (_b3 = overrides[overrideKey]).slots) != null ? _c : _b3.slots = {};
175
+ (_e = (_d = overrides[overrideKey].slots)[slotKey]) != null ? _e : _d[slotKey] = [];
176
+ overrides[overrideKey].slots[slotKey].push({
177
+ _id: node2._id,
178
+ type: node2.type,
179
+ parameters: parameters2,
180
+ _overrides
181
+ });
182
+ }
183
+ });
134
184
  });
135
185
  });
136
- const hasParameters = Object.keys(parameters).length > 0;
137
- const hasOverrides = Object.keys(overrides).length > 0;
138
- if (hasParameters || hasOverrides) {
139
- payload.components[component._id] = {
140
- type: component.type,
141
- parameters: hasParameters ? parameters : void 0,
142
- _overrides: hasOverrides ? overrides : void 0
143
- };
144
- }
145
186
  });
146
- return { payload };
187
+ const hasParameters = Object.keys(parameters).length > 0;
188
+ const hasOverrides = Object.keys(overrides).length > 0;
189
+ return {
190
+ parameters: hasParameters ? parameters : void 0,
191
+ _overrides: hasOverrides ? overrides : void 0
192
+ };
147
193
  };
148
194
  var canTranslateParameterValue = (parameter, value) => {
149
195
  if (parameter.type === "text") {
@@ -241,12 +287,62 @@ var MERGE_TRANSLATION_ERRORS2 = {
241
287
  var createErrorResult2 = (errorKind) => {
242
288
  return { updated: false, errorKind, errorText: MERGE_TRANSLATION_ERRORS2[errorKind] };
243
289
  };
290
+ var processComponentTranslation = ({
291
+ uniformSourceLocale,
292
+ uniformTargetLocale,
293
+ overrideModifiedTargetLocale,
294
+ originalNode,
295
+ translatedComponent
296
+ }) => {
297
+ var _a, _b;
298
+ let updated = false;
299
+ if (!originalNode.type || !originalNode._id) {
300
+ return { updated };
301
+ }
302
+ const componentParameters = "parameters" in originalNode ? originalNode.parameters : void 0;
303
+ const entryFields = "fields" in originalNode ? originalNode.fields : void 0;
304
+ const originalParametersOrFields = componentParameters != null ? componentParameters : entryFields;
305
+ Object.entries((_a = translatedComponent.parameters) != null ? _a : {}).forEach(([paramKey, parameter]) => {
306
+ const originalParameter = originalParametersOrFields == null ? void 0 : originalParametersOrFields[paramKey];
307
+ if (!originalParameter) {
308
+ return;
309
+ }
310
+ const result = processParameterTranslation({
311
+ uniformSourceLocale,
312
+ uniformTargetLocale,
313
+ overrideModifiedTargetLocale,
314
+ originalParameter,
315
+ parameter
316
+ });
317
+ if (result.updated) {
318
+ updated = true;
319
+ }
320
+ });
321
+ Object.entries((_b = translatedComponent._overrides) != null ? _b : {}).forEach(([overrideKey, override]) => {
322
+ var _a2;
323
+ const originalOverride = (_a2 = originalNode._overrides) == null ? void 0 : _a2[overrideKey];
324
+ if (!originalOverride) {
325
+ return;
326
+ }
327
+ const result = processOverrideTranslation({
328
+ uniformSourceLocale,
329
+ uniformTargetLocale,
330
+ overrideModifiedTargetLocale,
331
+ originalOverride,
332
+ override
333
+ });
334
+ if (result.updated) {
335
+ updated = true;
336
+ }
337
+ });
338
+ return { updated };
339
+ };
244
340
  var processParameterTranslation = ({
245
341
  uniformSourceLocale,
246
342
  uniformTargetLocale,
343
+ overrideModifiedTargetLocale,
247
344
  originalParameter,
248
- parameter,
249
- overrideModifiedTargetLocale
345
+ parameter
250
346
  }) => {
251
347
  var _a, _b, _c;
252
348
  if (!originalParameter.locales) {
@@ -274,19 +370,19 @@ var processParameterTranslation = ({
274
370
  var processOverrideTranslation = ({
275
371
  uniformSourceLocale,
276
372
  uniformTargetLocale,
373
+ overrideModifiedTargetLocale,
277
374
  originalOverride,
278
- override,
279
- overrideModifiedTargetLocale
375
+ override
280
376
  }) => {
281
- var _a;
377
+ var _a, _b;
282
378
  let updated = false;
283
379
  Object.entries((_a = override.parameters) != null ? _a : {}).forEach(([paramKey, parameter]) => {
284
- var _a2, _b, _c, _d;
380
+ var _a2, _b2, _c, _d;
285
381
  const originalParameter = (_a2 = originalOverride.parameters) == null ? void 0 : _a2[paramKey];
286
382
  if (!originalParameter || !originalParameter.locales) {
287
383
  return;
288
384
  }
289
- const sourceValue = (_b = parameter.locales) == null ? void 0 : _b[TRANSLATION_PAYLOAD_SOURCE_KEY];
385
+ const sourceValue = (_b2 = parameter.locales) == null ? void 0 : _b2[TRANSLATION_PAYLOAD_SOURCE_KEY];
290
386
  const targetValue = (_c = parameter.locales) == null ? void 0 : _c[TRANSLATION_PAYLOAD_TARGET_KEY];
291
387
  const originalTargetValue = (_d = parameter.locales) == null ? void 0 : _d[TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY];
292
388
  const isSourceValueUntouched = isSameParameterValue({
@@ -304,6 +400,34 @@ var processOverrideTranslation = ({
304
400
  updated = true;
305
401
  }
306
402
  });
403
+ Object.entries((_b = override.slots) != null ? _b : {}).forEach(([slotKey, slotComponents]) => {
404
+ var _a2;
405
+ const originalSlotComponents = (_a2 = originalOverride.slots) == null ? void 0 : _a2[slotKey];
406
+ if (!(originalSlotComponents == null ? void 0 : originalSlotComponents.length)) {
407
+ return;
408
+ }
409
+ slotComponents.forEach((slotComponent) => {
410
+ if (!slotComponent.type || !slotComponent._id) {
411
+ return;
412
+ }
413
+ const originalComponent = originalSlotComponents.find(
414
+ (x) => x._id === slotComponent._id && x.type === slotComponent.type
415
+ );
416
+ if (!originalComponent) {
417
+ return;
418
+ }
419
+ const { updated: isComponentUpdated } = processComponentTranslation({
420
+ uniformSourceLocale,
421
+ uniformTargetLocale,
422
+ overrideModifiedTargetLocale,
423
+ originalNode: originalComponent,
424
+ translatedComponent: slotComponent
425
+ });
426
+ if (isComponentUpdated) {
427
+ updated = true;
428
+ }
429
+ });
430
+ });
307
431
  return { updated };
308
432
  };
309
433
  var isSameParameterValue = ({
@@ -354,7 +478,6 @@ var translateComposition = ({
354
478
  draft.composition._locales.push(uniformTargetLocale);
355
479
  }
356
480
  (0, import_canvas4.walkNodeTree)(draft.composition, ({ node: component, type, actions }) => {
357
- var _a3, _b2;
358
481
  if (type !== "component") {
359
482
  actions.stopProcessingDescendants();
360
483
  return;
@@ -367,40 +490,16 @@ var translateComposition = ({
367
490
  if (!translatedComponent || component.type !== translatedComponent.type) {
368
491
  return;
369
492
  }
370
- Object.entries((_a3 = translatedComponent.parameters) != null ? _a3 : {}).forEach(([paramKey, param]) => {
371
- var _a4;
372
- const originalParameter = (_a4 = component.parameters) == null ? void 0 : _a4[paramKey];
373
- if (!originalParameter) {
374
- return;
375
- }
376
- const result = processParameterTranslation({
377
- uniformSourceLocale,
378
- uniformTargetLocale,
379
- originalParameter,
380
- parameter: param,
381
- overrideModifiedTargetLocale: overrideModifiedTargetLocale != null ? overrideModifiedTargetLocale : false
382
- });
383
- if (result.updated) {
384
- updated = true;
385
- }
386
- });
387
- Object.entries((_b2 = translatedComponent._overrides) != null ? _b2 : {}).forEach(([componentId, override]) => {
388
- var _a4;
389
- const originalOverride = (_a4 = component._overrides) == null ? void 0 : _a4[componentId];
390
- if (!originalOverride) {
391
- return;
392
- }
393
- const result = processOverrideTranslation({
394
- uniformSourceLocale,
395
- uniformTargetLocale,
396
- originalOverride,
397
- override,
398
- overrideModifiedTargetLocale
399
- });
400
- if (result.updated) {
401
- updated = true;
402
- }
493
+ const { updated: isComponentUpdated } = processComponentTranslation({
494
+ uniformSourceLocale,
495
+ uniformTargetLocale,
496
+ overrideModifiedTargetLocale,
497
+ originalNode: component,
498
+ translatedComponent
403
499
  });
500
+ if (isComponentUpdated) {
501
+ updated = true;
502
+ }
404
503
  });
405
504
  });
406
505
  return { result: translatedComposition, updated };
@@ -509,7 +608,6 @@ var translateEntry = ({
509
608
  draft.entry._locales.push(uniformTargetLocale);
510
609
  }
511
610
  (0, import_canvas6.walkNodeTree)(draft.entry, ({ node: component, type, actions }) => {
512
- var _a3, _b2;
513
611
  if (type !== "entry") {
514
612
  actions.stopProcessingDescendants();
515
613
  return;
@@ -522,40 +620,16 @@ var translateEntry = ({
522
620
  if (!translatedComponent || component.type !== translatedComponent.type) {
523
621
  return;
524
622
  }
525
- Object.entries((_a3 = translatedComponent.parameters) != null ? _a3 : {}).forEach(([paramKey, parameter]) => {
526
- var _a4;
527
- const originalParameter = (_a4 = component.fields) == null ? void 0 : _a4[paramKey];
528
- if (!originalParameter) {
529
- return;
530
- }
531
- const result = processParameterTranslation({
532
- uniformSourceLocale,
533
- uniformTargetLocale,
534
- originalParameter,
535
- parameter,
536
- overrideModifiedTargetLocale
537
- });
538
- if (result.updated) {
539
- updated = true;
540
- }
541
- });
542
- Object.entries((_b2 = translatedComponent._overrides) != null ? _b2 : {}).forEach(([componentId, override]) => {
543
- var _a4;
544
- const originalOverride = (_a4 = component._overrides) == null ? void 0 : _a4[componentId];
545
- if (!originalOverride) {
546
- return;
547
- }
548
- const result = processOverrideTranslation({
549
- uniformSourceLocale,
550
- uniformTargetLocale,
551
- originalOverride,
552
- override,
553
- overrideModifiedTargetLocale
554
- });
555
- if (result.updated) {
556
- updated = true;
557
- }
623
+ const { updated: isComponentUpdated } = processComponentTranslation({
624
+ uniformSourceLocale,
625
+ uniformTargetLocale,
626
+ overrideModifiedTargetLocale,
627
+ originalNode: component,
628
+ translatedComponent
558
629
  });
630
+ if (isComponentUpdated) {
631
+ updated = true;
632
+ }
559
633
  });
560
634
  });
561
635
  return { result: translatedEntry, updated };
package/dist/index.mjs CHANGED
@@ -51,26 +51,72 @@ var collectTranslationPayload = ({
51
51
  },
52
52
  components: {}
53
53
  };
54
- walkNodeTree(entity, ({ node: component, type, actions }) => {
55
- var _a;
56
- if (!component.type || !component._id) {
54
+ walkNodeTree(entity, ({ node, actions }) => {
55
+ if (!node.type || !node._id) {
57
56
  actions.stopProcessingDescendants();
58
57
  return;
59
58
  }
60
- const parameters = {};
61
- const overrides = {};
62
- const parametersOrFields = type == "component" ? component.parameters : component.fields;
63
- Object.entries(parametersOrFields != null ? parametersOrFields : {}).forEach(([paramKey, param]) => {
64
- var _a2, _b;
65
- const sourceLocaleValue = (_a2 = param.locales) == null ? void 0 : _a2[uniformSourceLocale];
66
- const targetLocaleValue = (_b = param.locales) == null ? void 0 : _b[uniformTargetLocale];
59
+ const { parameters, _overrides } = collectFromNode({
60
+ uniformSourceLocale,
61
+ uniformTargetLocale,
62
+ overrideModifiedTargetLocale,
63
+ node
64
+ });
65
+ if (parameters || _overrides) {
66
+ payload.components[node._id] = {
67
+ type: node.type,
68
+ parameters,
69
+ _overrides
70
+ };
71
+ }
72
+ });
73
+ return { payload };
74
+ };
75
+ var collectFromNode = ({
76
+ node,
77
+ uniformSourceLocale,
78
+ uniformTargetLocale,
79
+ overrideModifiedTargetLocale
80
+ }) => {
81
+ var _a, _b;
82
+ const parameters = {};
83
+ const overrides = {};
84
+ const componentParameters = "parameters" in node ? node.parameters : void 0;
85
+ const entryFields = "fields" in node ? node.fields : void 0;
86
+ Object.entries((_a = componentParameters != null ? componentParameters : entryFields) != null ? _a : {}).forEach(([paramKey, param]) => {
87
+ var _a2, _b2;
88
+ const sourceLocaleValue = (_a2 = param.locales) == null ? void 0 : _a2[uniformSourceLocale];
89
+ const targetLocaleValue = (_b2 = param.locales) == null ? void 0 : _b2[uniformTargetLocale];
90
+ if (!canTranslateParameterValue(param, sourceLocaleValue)) {
91
+ return;
92
+ }
93
+ if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
94
+ return;
95
+ }
96
+ parameters[paramKey] = {
97
+ type: param.type,
98
+ locales: {
99
+ [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
100
+ [TRANSLATION_PAYLOAD_TARGET_KEY]: sourceLocaleValue,
101
+ [TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY]: targetLocaleValue
102
+ }
103
+ };
104
+ });
105
+ Object.entries((_b = node._overrides) != null ? _b : {}).forEach(([overrideKey, override]) => {
106
+ var _a2, _b2;
107
+ Object.entries((_a2 = override.parameters) != null ? _a2 : {}).forEach(([paramKey, param]) => {
108
+ var _a3, _b3, _c, _d, _e;
109
+ const sourceLocaleValue = (_a3 = param.locales) == null ? void 0 : _a3[uniformSourceLocale];
110
+ const targetLocaleValue = (_b3 = param.locales) == null ? void 0 : _b3[uniformTargetLocale];
67
111
  if (!canTranslateParameterValue(param, sourceLocaleValue)) {
68
112
  return;
69
113
  }
70
114
  if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
71
115
  return;
72
116
  }
73
- parameters[paramKey] = {
117
+ (_c = overrides[overrideKey]) != null ? _c : overrides[overrideKey] = {};
118
+ (_e = (_d = overrides[overrideKey]).parameters) != null ? _e : _d.parameters = {};
119
+ overrides[overrideKey].parameters[paramKey] = {
74
120
  type: param.type,
75
121
  locales: {
76
122
  [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
@@ -79,41 +125,41 @@ var collectTranslationPayload = ({
79
125
  }
80
126
  };
81
127
  });
82
- Object.entries((_a = component._overrides) != null ? _a : {}).forEach(([componentId, override]) => {
83
- var _a2;
84
- Object.entries((_a2 = override.parameters) != null ? _a2 : {}).forEach(([paramKey, param]) => {
85
- var _a3, _b, _c, _d, _e;
86
- const sourceLocaleValue = (_a3 = param.locales) == null ? void 0 : _a3[uniformSourceLocale];
87
- const targetLocaleValue = (_b = param.locales) == null ? void 0 : _b[uniformTargetLocale];
88
- if (!canTranslateParameterValue(param, sourceLocaleValue)) {
89
- return;
90
- }
91
- if (!overrideModifiedTargetLocale && !isTargetLocaleUntouched(sourceLocaleValue, targetLocaleValue)) {
92
- return;
93
- }
94
- (_c = overrides[componentId]) != null ? _c : overrides[componentId] = {};
95
- (_e = (_d = overrides[componentId]).parameters) != null ? _e : _d.parameters = {};
96
- overrides[componentId].parameters[paramKey] = {
97
- type: param.type,
98
- locales: {
99
- [TRANSLATION_PAYLOAD_SOURCE_KEY]: sourceLocaleValue,
100
- [TRANSLATION_PAYLOAD_TARGET_KEY]: sourceLocaleValue,
101
- [TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY]: targetLocaleValue
128
+ Object.entries((_b2 = override.slots) != null ? _b2 : {}).forEach(([slotKey, slotComponents]) => {
129
+ slotComponents.map((slotComponent) => {
130
+ walkNodeTree(slotComponent, ({ node: node2, actions }) => {
131
+ var _a3, _b3, _c, _d, _e;
132
+ if (!node2.type || !node2._id) {
133
+ actions.stopProcessingDescendants();
134
+ return;
102
135
  }
103
- };
136
+ const { parameters: parameters2, _overrides } = collectFromNode({
137
+ uniformSourceLocale,
138
+ uniformTargetLocale,
139
+ overrideModifiedTargetLocale,
140
+ node: node2
141
+ });
142
+ if (parameters2 || _overrides) {
143
+ (_a3 = overrides[overrideKey]) != null ? _a3 : overrides[overrideKey] = {};
144
+ (_c = (_b3 = overrides[overrideKey]).slots) != null ? _c : _b3.slots = {};
145
+ (_e = (_d = overrides[overrideKey].slots)[slotKey]) != null ? _e : _d[slotKey] = [];
146
+ overrides[overrideKey].slots[slotKey].push({
147
+ _id: node2._id,
148
+ type: node2.type,
149
+ parameters: parameters2,
150
+ _overrides
151
+ });
152
+ }
153
+ });
104
154
  });
105
155
  });
106
- const hasParameters = Object.keys(parameters).length > 0;
107
- const hasOverrides = Object.keys(overrides).length > 0;
108
- if (hasParameters || hasOverrides) {
109
- payload.components[component._id] = {
110
- type: component.type,
111
- parameters: hasParameters ? parameters : void 0,
112
- _overrides: hasOverrides ? overrides : void 0
113
- };
114
- }
115
156
  });
116
- return { payload };
157
+ const hasParameters = Object.keys(parameters).length > 0;
158
+ const hasOverrides = Object.keys(overrides).length > 0;
159
+ return {
160
+ parameters: hasParameters ? parameters : void 0,
161
+ _overrides: hasOverrides ? overrides : void 0
162
+ };
117
163
  };
118
164
  var canTranslateParameterValue = (parameter, value) => {
119
165
  if (parameter.type === "text") {
@@ -211,12 +257,62 @@ var MERGE_TRANSLATION_ERRORS2 = {
211
257
  var createErrorResult2 = (errorKind) => {
212
258
  return { updated: false, errorKind, errorText: MERGE_TRANSLATION_ERRORS2[errorKind] };
213
259
  };
260
+ var processComponentTranslation = ({
261
+ uniformSourceLocale,
262
+ uniformTargetLocale,
263
+ overrideModifiedTargetLocale,
264
+ originalNode,
265
+ translatedComponent
266
+ }) => {
267
+ var _a, _b;
268
+ let updated = false;
269
+ if (!originalNode.type || !originalNode._id) {
270
+ return { updated };
271
+ }
272
+ const componentParameters = "parameters" in originalNode ? originalNode.parameters : void 0;
273
+ const entryFields = "fields" in originalNode ? originalNode.fields : void 0;
274
+ const originalParametersOrFields = componentParameters != null ? componentParameters : entryFields;
275
+ Object.entries((_a = translatedComponent.parameters) != null ? _a : {}).forEach(([paramKey, parameter]) => {
276
+ const originalParameter = originalParametersOrFields == null ? void 0 : originalParametersOrFields[paramKey];
277
+ if (!originalParameter) {
278
+ return;
279
+ }
280
+ const result = processParameterTranslation({
281
+ uniformSourceLocale,
282
+ uniformTargetLocale,
283
+ overrideModifiedTargetLocale,
284
+ originalParameter,
285
+ parameter
286
+ });
287
+ if (result.updated) {
288
+ updated = true;
289
+ }
290
+ });
291
+ Object.entries((_b = translatedComponent._overrides) != null ? _b : {}).forEach(([overrideKey, override]) => {
292
+ var _a2;
293
+ const originalOverride = (_a2 = originalNode._overrides) == null ? void 0 : _a2[overrideKey];
294
+ if (!originalOverride) {
295
+ return;
296
+ }
297
+ const result = processOverrideTranslation({
298
+ uniformSourceLocale,
299
+ uniformTargetLocale,
300
+ overrideModifiedTargetLocale,
301
+ originalOverride,
302
+ override
303
+ });
304
+ if (result.updated) {
305
+ updated = true;
306
+ }
307
+ });
308
+ return { updated };
309
+ };
214
310
  var processParameterTranslation = ({
215
311
  uniformSourceLocale,
216
312
  uniformTargetLocale,
313
+ overrideModifiedTargetLocale,
217
314
  originalParameter,
218
- parameter,
219
- overrideModifiedTargetLocale
315
+ parameter
220
316
  }) => {
221
317
  var _a, _b, _c;
222
318
  if (!originalParameter.locales) {
@@ -244,19 +340,19 @@ var processParameterTranslation = ({
244
340
  var processOverrideTranslation = ({
245
341
  uniformSourceLocale,
246
342
  uniformTargetLocale,
343
+ overrideModifiedTargetLocale,
247
344
  originalOverride,
248
- override,
249
- overrideModifiedTargetLocale
345
+ override
250
346
  }) => {
251
- var _a;
347
+ var _a, _b;
252
348
  let updated = false;
253
349
  Object.entries((_a = override.parameters) != null ? _a : {}).forEach(([paramKey, parameter]) => {
254
- var _a2, _b, _c, _d;
350
+ var _a2, _b2, _c, _d;
255
351
  const originalParameter = (_a2 = originalOverride.parameters) == null ? void 0 : _a2[paramKey];
256
352
  if (!originalParameter || !originalParameter.locales) {
257
353
  return;
258
354
  }
259
- const sourceValue = (_b = parameter.locales) == null ? void 0 : _b[TRANSLATION_PAYLOAD_SOURCE_KEY];
355
+ const sourceValue = (_b2 = parameter.locales) == null ? void 0 : _b2[TRANSLATION_PAYLOAD_SOURCE_KEY];
260
356
  const targetValue = (_c = parameter.locales) == null ? void 0 : _c[TRANSLATION_PAYLOAD_TARGET_KEY];
261
357
  const originalTargetValue = (_d = parameter.locales) == null ? void 0 : _d[TRANSLATION_PAYLOAD_ORIGINAL_TARGET_KEY];
262
358
  const isSourceValueUntouched = isSameParameterValue({
@@ -274,6 +370,34 @@ var processOverrideTranslation = ({
274
370
  updated = true;
275
371
  }
276
372
  });
373
+ Object.entries((_b = override.slots) != null ? _b : {}).forEach(([slotKey, slotComponents]) => {
374
+ var _a2;
375
+ const originalSlotComponents = (_a2 = originalOverride.slots) == null ? void 0 : _a2[slotKey];
376
+ if (!(originalSlotComponents == null ? void 0 : originalSlotComponents.length)) {
377
+ return;
378
+ }
379
+ slotComponents.forEach((slotComponent) => {
380
+ if (!slotComponent.type || !slotComponent._id) {
381
+ return;
382
+ }
383
+ const originalComponent = originalSlotComponents.find(
384
+ (x) => x._id === slotComponent._id && x.type === slotComponent.type
385
+ );
386
+ if (!originalComponent) {
387
+ return;
388
+ }
389
+ const { updated: isComponentUpdated } = processComponentTranslation({
390
+ uniformSourceLocale,
391
+ uniformTargetLocale,
392
+ overrideModifiedTargetLocale,
393
+ originalNode: originalComponent,
394
+ translatedComponent: slotComponent
395
+ });
396
+ if (isComponentUpdated) {
397
+ updated = true;
398
+ }
399
+ });
400
+ });
277
401
  return { updated };
278
402
  };
279
403
  var isSameParameterValue = ({
@@ -324,7 +448,6 @@ var translateComposition = ({
324
448
  draft.composition._locales.push(uniformTargetLocale);
325
449
  }
326
450
  walkNodeTree2(draft.composition, ({ node: component, type, actions }) => {
327
- var _a3, _b2;
328
451
  if (type !== "component") {
329
452
  actions.stopProcessingDescendants();
330
453
  return;
@@ -337,40 +460,16 @@ var translateComposition = ({
337
460
  if (!translatedComponent || component.type !== translatedComponent.type) {
338
461
  return;
339
462
  }
340
- Object.entries((_a3 = translatedComponent.parameters) != null ? _a3 : {}).forEach(([paramKey, param]) => {
341
- var _a4;
342
- const originalParameter = (_a4 = component.parameters) == null ? void 0 : _a4[paramKey];
343
- if (!originalParameter) {
344
- return;
345
- }
346
- const result = processParameterTranslation({
347
- uniformSourceLocale,
348
- uniformTargetLocale,
349
- originalParameter,
350
- parameter: param,
351
- overrideModifiedTargetLocale: overrideModifiedTargetLocale != null ? overrideModifiedTargetLocale : false
352
- });
353
- if (result.updated) {
354
- updated = true;
355
- }
356
- });
357
- Object.entries((_b2 = translatedComponent._overrides) != null ? _b2 : {}).forEach(([componentId, override]) => {
358
- var _a4;
359
- const originalOverride = (_a4 = component._overrides) == null ? void 0 : _a4[componentId];
360
- if (!originalOverride) {
361
- return;
362
- }
363
- const result = processOverrideTranslation({
364
- uniformSourceLocale,
365
- uniformTargetLocale,
366
- originalOverride,
367
- override,
368
- overrideModifiedTargetLocale
369
- });
370
- if (result.updated) {
371
- updated = true;
372
- }
463
+ const { updated: isComponentUpdated } = processComponentTranslation({
464
+ uniformSourceLocale,
465
+ uniformTargetLocale,
466
+ overrideModifiedTargetLocale,
467
+ originalNode: component,
468
+ translatedComponent
373
469
  });
470
+ if (isComponentUpdated) {
471
+ updated = true;
472
+ }
374
473
  });
375
474
  });
376
475
  return { result: translatedComposition, updated };
@@ -479,7 +578,6 @@ var translateEntry = ({
479
578
  draft.entry._locales.push(uniformTargetLocale);
480
579
  }
481
580
  walkNodeTree3(draft.entry, ({ node: component, type, actions }) => {
482
- var _a3, _b2;
483
581
  if (type !== "entry") {
484
582
  actions.stopProcessingDescendants();
485
583
  return;
@@ -492,40 +590,16 @@ var translateEntry = ({
492
590
  if (!translatedComponent || component.type !== translatedComponent.type) {
493
591
  return;
494
592
  }
495
- Object.entries((_a3 = translatedComponent.parameters) != null ? _a3 : {}).forEach(([paramKey, parameter]) => {
496
- var _a4;
497
- const originalParameter = (_a4 = component.fields) == null ? void 0 : _a4[paramKey];
498
- if (!originalParameter) {
499
- return;
500
- }
501
- const result = processParameterTranslation({
502
- uniformSourceLocale,
503
- uniformTargetLocale,
504
- originalParameter,
505
- parameter,
506
- overrideModifiedTargetLocale
507
- });
508
- if (result.updated) {
509
- updated = true;
510
- }
511
- });
512
- Object.entries((_b2 = translatedComponent._overrides) != null ? _b2 : {}).forEach(([componentId, override]) => {
513
- var _a4;
514
- const originalOverride = (_a4 = component._overrides) == null ? void 0 : _a4[componentId];
515
- if (!originalOverride) {
516
- return;
517
- }
518
- const result = processOverrideTranslation({
519
- uniformSourceLocale,
520
- uniformTargetLocale,
521
- originalOverride,
522
- override,
523
- overrideModifiedTargetLocale
524
- });
525
- if (result.updated) {
526
- updated = true;
527
- }
593
+ const { updated: isComponentUpdated } = processComponentTranslation({
594
+ uniformSourceLocale,
595
+ uniformTargetLocale,
596
+ overrideModifiedTargetLocale,
597
+ originalNode: component,
598
+ translatedComponent
528
599
  });
600
+ if (isComponentUpdated) {
601
+ updated = true;
602
+ }
529
603
  });
530
604
  });
531
605
  return { result: translatedEntry, updated };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniformdev/tms-sdk",
3
- "version": "19.154.1-alpha.14+6d8f85cd07",
3
+ "version": "19.154.1-alpha.17+6880d18fa0",
4
4
  "description": "Uniform Translation Management System SDK",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "main": "./dist/index.js",
@@ -33,9 +33,9 @@
33
33
  "access": "public"
34
34
  },
35
35
  "dependencies": {
36
- "@uniformdev/canvas": "19.154.1-alpha.14+6d8f85cd07",
36
+ "@uniformdev/canvas": "19.154.1-alpha.17+6880d18fa0",
37
37
  "dequal": "2.0.3",
38
38
  "immer": "10.0.4"
39
39
  },
40
- "gitHead": "6d8f85cd07989bfda0ad73c6ec2e1532949553dd"
40
+ "gitHead": "6880d18fa0b6ce32cd5629d0cdf87fd63127720e"
41
41
  }