@uniformdev/tms-sdk 19.154.1-alpha.15 → 19.154.1-alpha.18
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 +191 -117
- package/dist/index.js +191 -117
- package/dist/index.mjs +191 -117
- package/package.json +3 -3
package/dist/index.esm.js
CHANGED
|
@@ -51,26 +51,72 @@ var collectTranslationPayload = ({
|
|
|
51
51
|
},
|
|
52
52
|
components: {}
|
|
53
53
|
};
|
|
54
|
-
walkNodeTree(entity, ({ node
|
|
55
|
-
|
|
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
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
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
|
-
|
|
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((
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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
|
-
|
|
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,
|
|
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 = (
|
|
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
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
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
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
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
|
|
85
|
-
|
|
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
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
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
|
-
|
|
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((
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
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
|
-
|
|
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,
|
|
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 = (
|
|
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
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
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
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
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
|
|
55
|
-
|
|
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
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
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
|
-
|
|
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((
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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
|
-
|
|
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,
|
|
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 = (
|
|
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
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
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
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
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.
|
|
3
|
+
"version": "19.154.1-alpha.18+f536f6f825",
|
|
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.
|
|
36
|
+
"@uniformdev/canvas": "19.154.1-alpha.18+f536f6f825",
|
|
37
37
|
"dequal": "2.0.3",
|
|
38
38
|
"immer": "10.0.4"
|
|
39
39
|
},
|
|
40
|
-
"gitHead": "
|
|
40
|
+
"gitHead": "f536f6f825fc69847243031929c0f458272494ad"
|
|
41
41
|
}
|