@kontent-ai/migration-toolkit 1.4.0 → 1.5.1
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/README.md +1 -4
- package/dist/es2022/core/helpers/workflow-helper.d.ts +1 -0
- package/dist/es2022/core/helpers/workflow-helper.js +6 -4
- package/dist/es2022/core/helpers/workflow-helper.js.map +1 -1
- package/dist/es2022/core/logs/loggers.js +13 -22
- package/dist/es2022/core/logs/loggers.js.map +1 -1
- package/dist/es2022/core/models/core.models.d.ts +16 -6
- package/dist/es2022/core/models/migration.schema.d.ts +247 -0
- package/dist/es2022/core/models/migration.schema.js +12 -2
- package/dist/es2022/core/models/migration.schema.js.map +1 -1
- package/dist/es2022/core/utils/array.utils.js.map +1 -1
- package/dist/es2022/core/utils/binary-data.utils.js +2 -6
- package/dist/es2022/core/utils/binary-data.utils.js.map +1 -1
- package/dist/es2022/core/utils/confirm.utils.js +10 -14
- package/dist/es2022/core/utils/confirm.utils.js.map +1 -1
- package/dist/es2022/core/utils/error.utils.js +35 -27
- package/dist/es2022/core/utils/error.utils.js.map +1 -1
- package/dist/es2022/core/utils/http.utils.js +7 -11
- package/dist/es2022/core/utils/http.utils.js.map +1 -1
- package/dist/es2022/core/utils/management-client-utils.d.ts +2 -1
- package/dist/es2022/core/utils/management-client-utils.js +11 -1
- package/dist/es2022/core/utils/management-client-utils.js.map +1 -1
- package/dist/es2022/core/utils/run.utils.js +12 -10
- package/dist/es2022/core/utils/run.utils.js.map +1 -1
- package/dist/es2022/export/context/export-context-fetcher.js +2 -1
- package/dist/es2022/export/context/export-context-fetcher.js.map +1 -1
- package/dist/es2022/export/export-manager.js +8 -0
- package/dist/es2022/export/export-manager.js.map +1 -1
- package/dist/es2022/export/export.models.d.ts +2 -1
- package/dist/es2022/import/comparers/asset-comparer.d.ts +2 -1
- package/dist/es2022/import/comparers/asset-comparer.js +9 -17
- package/dist/es2022/import/comparers/asset-comparer.js.map +1 -1
- package/dist/es2022/import/context/import-context-fetcher.js +120 -40
- package/dist/es2022/import/context/import-context-fetcher.js.map +1 -1
- package/dist/es2022/import/import.models.d.ts +2 -1
- package/dist/es2022/import/importers/assets-importer.js +25 -7
- package/dist/es2022/import/importers/assets-importer.js.map +1 -1
- package/dist/es2022/import/importers/language-variant-importer.js +95 -87
- package/dist/es2022/import/importers/language-variant-importer.js.map +1 -1
- package/dist/es2022/import/importers/workflow-importer.d.ts +41 -4
- package/dist/es2022/import/importers/workflow-importer.js +158 -17
- package/dist/es2022/import/importers/workflow-importer.js.map +1 -1
- package/dist/es2022/metadata.js +2 -2
- package/dist/es2022/node/cli/app.js +8 -12
- package/dist/es2022/node/cli/app.js.map +1 -1
- package/dist/es2022/node/cli/args/args-fetcher.js +9 -10
- package/dist/es2022/node/cli/args/args-fetcher.js.map +1 -1
- package/dist/es2022/toolkit/migrate.d.ts +1 -3
- package/dist/es2022/toolkit/migrate.js.map +1 -1
- package/dist/es2022/translation/extraction/items-extraction.processor.js +17 -17
- package/dist/es2022/translation/extraction/items-extraction.processor.js.map +1 -1
- package/dist/es2022/zip/zip-packager.js +13 -18
- package/dist/es2022/zip/zip-packager.js.map +1 -1
- package/dist/es2022/zip/zip-transformer.js +3 -1
- package/dist/es2022/zip/zip-transformer.js.map +1 -1
- package/lib/core/helpers/workflow-helper.ts +8 -8
- package/lib/core/logs/loggers.ts +14 -22
- package/lib/core/models/core.models.ts +23 -4
- package/lib/core/models/migration.schema.ts +13 -2
- package/lib/core/utils/array.utils.ts +2 -10
- package/lib/core/utils/binary-data.utils.ts +2 -7
- package/lib/core/utils/confirm.utils.ts +18 -24
- package/lib/core/utils/error.utils.ts +50 -30
- package/lib/core/utils/http.utils.ts +14 -15
- package/lib/core/utils/management-client-utils.ts +188 -176
- package/lib/core/utils/run.utils.ts +27 -18
- package/lib/export/context/export-context-fetcher.ts +2 -1
- package/lib/export/export-manager.ts +14 -3
- package/lib/export/export.models.ts +3 -1
- package/lib/import/comparers/asset-comparer.ts +16 -24
- package/lib/import/context/import-context-fetcher.ts +179 -85
- package/lib/import/import.models.ts +2 -0
- package/lib/import/importers/assets-importer.ts +41 -25
- package/lib/import/importers/language-variant-importer.ts +119 -111
- package/lib/import/importers/workflow-importer.ts +228 -20
- package/lib/metadata.ts +2 -2
- package/lib/node/cli/app.ts +11 -12
- package/lib/node/cli/args/args-fetcher.ts +12 -14
- package/lib/toolkit/migrate.ts +1 -3
- package/lib/translation/extraction/items-extraction.processor.ts +93 -93
- package/lib/zip/zip-packager.ts +26 -28
- package/lib/zip/zip-transformer.ts +3 -1
- package/package.json +13 -12
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { findRequired, is404Error, isNotUndefined, managementClientUtils, processItemsAsync, runMapiRequestAsync, workflowHelper } from '../../core/index.js';
|
|
1
|
+
import { findRequired, is404Error, isNotUndefined, managementClientUtils, processItemsAsync, runMapiRequestAsync, workflowHelper as workflowHelperInit } from '../../core/index.js';
|
|
2
2
|
import { itemsExtractionProcessor } from '../../translation/index.js';
|
|
3
3
|
import chalk from 'chalk';
|
|
4
|
+
import { match } from 'ts-pattern';
|
|
4
5
|
export async function importContextFetcherAsync(config) {
|
|
5
6
|
const getEnvironmentDataAsync = async () => {
|
|
6
7
|
const mapiUtils = managementClientUtils(config.managementClient, config.logger);
|
|
@@ -10,19 +11,19 @@ export async function importContextFetcherAsync(config) {
|
|
|
10
11
|
collections: await mapiUtils.getAllCollectionsAsync(spinnerData),
|
|
11
12
|
languages: await mapiUtils.getAllLanguagesAsync(spinnerData),
|
|
12
13
|
workflows: await mapiUtils.getAllWorkflowsAsync(spinnerData),
|
|
13
|
-
types: await mapiUtils.getFlattenedContentTypesAsync(spinnerData)
|
|
14
|
+
types: await mapiUtils.getFlattenedContentTypesAsync(spinnerData),
|
|
15
|
+
assetFolders: await mapiUtils.getAllAssetFoldersAsync(spinnerData)
|
|
14
16
|
};
|
|
15
17
|
spinnerData({ type: 'info', message: `Environmental data loaded` });
|
|
16
18
|
return environmentData;
|
|
17
19
|
});
|
|
18
20
|
};
|
|
19
21
|
const environmentData = await getEnvironmentDataAsync();
|
|
22
|
+
const workflowHelper = workflowHelperInit(environmentData.workflows);
|
|
20
23
|
const getElement = () => {
|
|
21
24
|
const getFlattenedElement = (contentTypeCodename, elementCodename, sourceType) => {
|
|
22
25
|
const contentType = findRequired(environmentData.types, (type) => type.contentTypeCodename === contentTypeCodename, `Content type with codename '${chalk.red(contentTypeCodename)}' was not found.`);
|
|
23
|
-
const element = findRequired(contentType.elements, (element) => element.codename === elementCodename, `Element type with codename '${chalk.red(elementCodename)}' was not found in content type '${chalk.red(contentTypeCodename)}'. Available elements are '${contentType.elements
|
|
24
|
-
.map((element) => chalk.yellow(element.codename))
|
|
25
|
-
.join(', ')}'`);
|
|
26
|
+
const element = findRequired(contentType.elements, (element) => element.codename === elementCodename, `Element type with codename '${chalk.red(elementCodename)}' was not found in content type '${chalk.red(contentTypeCodename)}'. Available elements are '${contentType.elements.map((element) => chalk.yellow(element.codename)).join(', ')}'`);
|
|
26
27
|
if (sourceType !== element.type) {
|
|
27
28
|
throw Error(`Element '${chalk.red(element.codename)}' in content type '${chalk.yellow(contentType.contentTypeCodename)}' is of type '${chalk.red(element.type)}', but source type is '${chalk.yellow(sourceType)}'.`);
|
|
28
29
|
}
|
|
@@ -30,7 +31,54 @@ export async function importContextFetcherAsync(config) {
|
|
|
30
31
|
};
|
|
31
32
|
return getFlattenedElement;
|
|
32
33
|
};
|
|
33
|
-
const
|
|
34
|
+
const getLatestLanguageVariantAsync = async (logSpinner, migrationItem) => {
|
|
35
|
+
try {
|
|
36
|
+
const latestLanguageVariant = await runMapiRequestAsync({
|
|
37
|
+
logger: config.logger,
|
|
38
|
+
func: async () => (await config.managementClient
|
|
39
|
+
.viewLanguageVariant()
|
|
40
|
+
.byItemCodename(migrationItem.system.codename)
|
|
41
|
+
.byLanguageCodename(migrationItem.system.language.codename)
|
|
42
|
+
.toPromise()).data,
|
|
43
|
+
action: 'view',
|
|
44
|
+
type: 'languageVariant',
|
|
45
|
+
logSpinner: logSpinner,
|
|
46
|
+
itemName: `latest -> codename -> ${migrationItem.system.codename} (${migrationItem.system.language.codename})`
|
|
47
|
+
});
|
|
48
|
+
return latestLanguageVariant;
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
if (!is404Error(error)) {
|
|
52
|
+
throw error;
|
|
53
|
+
}
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
const getPublishedLanguageVariantAsync = async (logSpinner, migrationItem) => {
|
|
58
|
+
try {
|
|
59
|
+
const draftLanguageVariant = await runMapiRequestAsync({
|
|
60
|
+
logger: config.logger,
|
|
61
|
+
func: async () => (await config.managementClient
|
|
62
|
+
.viewLanguageVariant()
|
|
63
|
+
.byItemCodename(migrationItem.system.codename)
|
|
64
|
+
.byLanguageCodename(migrationItem.system.language.codename)
|
|
65
|
+
.published()
|
|
66
|
+
.toPromise()).data,
|
|
67
|
+
action: 'view',
|
|
68
|
+
type: 'languageVariant',
|
|
69
|
+
logSpinner: logSpinner,
|
|
70
|
+
itemName: `published -> codename -> ${migrationItem.system.codename} (${migrationItem.system.language.codename})`
|
|
71
|
+
});
|
|
72
|
+
return draftLanguageVariant;
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
if (!is404Error(error)) {
|
|
76
|
+
throw error;
|
|
77
|
+
}
|
|
78
|
+
return undefined;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const getLanguageVariantWrappersAsync = async (migrationItems) => {
|
|
34
82
|
return (await processItemsAsync({
|
|
35
83
|
action: 'Fetching language variants',
|
|
36
84
|
logger: config.logger,
|
|
@@ -43,30 +91,25 @@ export async function importContextFetcherAsync(config) {
|
|
|
43
91
|
};
|
|
44
92
|
},
|
|
45
93
|
processAsync: async (item, logSpinner) => {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
.toPromise()).data,
|
|
54
|
-
action: 'view',
|
|
55
|
-
type: 'languageVariant',
|
|
56
|
-
logSpinner: logSpinner,
|
|
57
|
-
itemName: `codename -> ${item.system.codename} (${item.system.language.codename})`
|
|
58
|
-
});
|
|
94
|
+
const latestLanguageVariant = await getLatestLanguageVariantAsync(logSpinner, item);
|
|
95
|
+
if (!latestLanguageVariant) {
|
|
96
|
+
// there is neither published or draft version as latest version does not exist at all
|
|
97
|
+
return undefined;
|
|
98
|
+
}
|
|
99
|
+
if (workflowHelper.isPublishedStepById(latestLanguageVariant.workflow.stepIdentifier.id ?? '')) {
|
|
100
|
+
// if latest version is published, it means that there is no draft, but there is published version
|
|
59
101
|
return {
|
|
60
|
-
|
|
61
|
-
|
|
102
|
+
migrationItem: item,
|
|
103
|
+
draftLanguageVariant: undefined,
|
|
104
|
+
publishedLanguageVariant: latestLanguageVariant
|
|
62
105
|
};
|
|
63
106
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
}
|
|
107
|
+
// if latest version is a draft version, check if there is published version as well
|
|
108
|
+
return {
|
|
109
|
+
migrationItem: item,
|
|
110
|
+
draftLanguageVariant: latestLanguageVariant,
|
|
111
|
+
publishedLanguageVariant: await getPublishedLanguageVariantAsync(logSpinner, item)
|
|
112
|
+
};
|
|
70
113
|
}
|
|
71
114
|
})).filter(isNotUndefined);
|
|
72
115
|
};
|
|
@@ -134,29 +177,66 @@ export async function importContextFetcherAsync(config) {
|
|
|
134
177
|
}
|
|
135
178
|
})).filter(isNotUndefined);
|
|
136
179
|
};
|
|
180
|
+
const getVariantState = (languageVariant) => {
|
|
181
|
+
const variantWorkflowId = languageVariant.workflow.workflowIdentifier.id;
|
|
182
|
+
const variantStepId = languageVariant.workflow.stepIdentifier.id;
|
|
183
|
+
const { workflow, step } = workflowHelper.getWorkflowAndStep({
|
|
184
|
+
workflowMatcher: {
|
|
185
|
+
errorMessage: `Could not workflow with id '${chalk.red(variantWorkflowId)}' in target project`,
|
|
186
|
+
match: (workflow) => workflow.id == variantWorkflowId
|
|
187
|
+
},
|
|
188
|
+
stepMatcher: {
|
|
189
|
+
errorMessage: `Could not workflow step with id '${chalk.red(variantStepId)}' in workflow '${chalk.yellow(variantWorkflowId)}'`,
|
|
190
|
+
match: (step) => step.id == variantStepId
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
return {
|
|
194
|
+
languageVariant: languageVariant,
|
|
195
|
+
workflow: workflow,
|
|
196
|
+
workflowState: getWorkflowState(step, languageVariant)
|
|
197
|
+
};
|
|
198
|
+
};
|
|
137
199
|
const getVariantStatesAsync = async (migrationItems) => {
|
|
138
|
-
const
|
|
200
|
+
const variantWrappers = await getLanguageVariantWrappersAsync(migrationItems);
|
|
139
201
|
return migrationItems.map((migrationItem) => {
|
|
140
|
-
const
|
|
202
|
+
const variantWrapper = variantWrappers.find((m) => m.migrationItem.system.codename === migrationItem.system.codename &&
|
|
141
203
|
m.migrationItem.system.language === migrationItem.system.language);
|
|
142
|
-
const variantWorkflowId = variant?.languageVariant?.workflow?.workflowIdentifier?.id;
|
|
143
|
-
const variantStepId = variant?.languageVariant?.workflow?.stepIdentifier?.id;
|
|
144
|
-
const workflow = environmentData.workflows.find((workflow) => workflow.id === variantWorkflowId);
|
|
145
204
|
return {
|
|
146
205
|
itemCodename: migrationItem.system.codename,
|
|
147
206
|
languageCodename: migrationItem.system.language.codename,
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
match: (step) => step.id == variantStepId
|
|
154
|
-
})
|
|
207
|
+
draftLanguageVariant: variantWrapper?.draftLanguageVariant
|
|
208
|
+
? getVariantState(variantWrapper.draftLanguageVariant)
|
|
209
|
+
: undefined,
|
|
210
|
+
publishedLanguageVariant: variantWrapper?.publishedLanguageVariant
|
|
211
|
+
? getVariantState(variantWrapper.publishedLanguageVariant)
|
|
155
212
|
: undefined,
|
|
156
|
-
state:
|
|
213
|
+
state: variantWrapper ? 'exists' : 'doesNotExists'
|
|
157
214
|
};
|
|
158
215
|
});
|
|
159
216
|
};
|
|
217
|
+
const getWorkflowState = (step, variant) => {
|
|
218
|
+
if (!variant) {
|
|
219
|
+
return undefined;
|
|
220
|
+
}
|
|
221
|
+
const getScheduledState = () => {
|
|
222
|
+
return match(variant.schedule)
|
|
223
|
+
.returnType()
|
|
224
|
+
.when((schedule) => schedule.publishTime && schedule.publishDisplayTimezone, () => 'scheduledPublish')
|
|
225
|
+
.when((schedule) => schedule.unpublishTime && schedule.unpublishDisplayTimezone, () => 'scheduledUnpublish')
|
|
226
|
+
.otherwise(() => 'n/a');
|
|
227
|
+
};
|
|
228
|
+
const getWorkflowState = () => {
|
|
229
|
+
return match(step.codename)
|
|
230
|
+
.returnType()
|
|
231
|
+
.when((stepCodename) => workflowHelper.isPublishedStepByCodename(stepCodename), () => 'published')
|
|
232
|
+
.when((stepCodename) => workflowHelper.isArchivedStepByCodename(stepCodename), () => 'archived')
|
|
233
|
+
.otherwise(() => 'draft');
|
|
234
|
+
};
|
|
235
|
+
return {
|
|
236
|
+
workflowState: getWorkflowState(),
|
|
237
|
+
scheduledState: getScheduledState()
|
|
238
|
+
};
|
|
239
|
+
};
|
|
160
240
|
const getItemStatesAsync = async (itemCodenames) => {
|
|
161
241
|
const items = await getContentItemsByCodenamesAsync(itemCodenames);
|
|
162
242
|
return Array.from(itemCodenames).map((codename) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-context-fetcher.js","sourceRoot":"","sources":["../../../../lib/import/context/import-context-fetcher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"import-context-fetcher.js","sourceRoot":"","sources":["../../../../lib/import/context/import-context-fetcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { MigrationItem, MigrationAsset, Logger, AssetStateInTargetEnvironmentByCodename, ItemStateInTargetEnvironmentByCodename, ReferencedDataInMigrationItems, LanguageVariantStateInTargetEnvironmentByCodename, ExternalIdGenerator, FlattenedContentTypeElement, MigrationElementValue, MigrationElementType, MigrationData, ManagementClientConfig, FlattenedContentType } from '../core/index.js';
|
|
2
|
-
import { AssetModels, CollectionModels, ContentItemModels, ElementContracts, LanguageModels, LanguageVariantModels, ManagementClient, WorkflowModels } from '@kontent-ai/management-sdk';
|
|
2
|
+
import { AssetFolderModels, AssetModels, CollectionModels, ContentItemModels, ElementContracts, LanguageModels, LanguageVariantModels, ManagementClient, WorkflowModels } from '@kontent-ai/management-sdk';
|
|
3
3
|
export interface ImportContextConfig {
|
|
4
4
|
readonly logger: Logger;
|
|
5
5
|
readonly managementClient: Readonly<ManagementClient>;
|
|
@@ -8,6 +8,7 @@ export interface ImportContextConfig {
|
|
|
8
8
|
}
|
|
9
9
|
export interface ImportContextEnvironmentData {
|
|
10
10
|
readonly languages: readonly Readonly<LanguageModels.LanguageModel>[];
|
|
11
|
+
readonly assetFolders: readonly Readonly<AssetFolderModels.AssetFolder>[];
|
|
11
12
|
readonly collections: readonly Readonly<CollectionModels.Collection>[];
|
|
12
13
|
readonly workflows: readonly Readonly<WorkflowModels.Workflow>[];
|
|
13
14
|
readonly types: readonly Readonly<FlattenedContentType>[];
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import { processItemsAsync, runMapiRequestAsync, geSizeInBytes, isNotUndefined } from '../../core/index.js';
|
|
2
|
-
import mime from 'mime';
|
|
3
1
|
import chalk from 'chalk';
|
|
2
|
+
import mime from 'mime';
|
|
3
|
+
import { geSizeInBytes, isNotUndefined, processItemsAsync, runMapiRequestAsync } from '../../core/index.js';
|
|
4
4
|
import { shouldReplaceBinaryFile, shouldUpdateAsset } from '../comparers/asset-comparer.js';
|
|
5
5
|
export function assetsImporter(data) {
|
|
6
6
|
const getAssetsToUpload = () => {
|
|
7
|
-
return data.importContext.categorizedImportData.assets
|
|
7
|
+
return data.importContext.categorizedImportData.assets
|
|
8
|
+
.filter((asset) => {
|
|
8
9
|
return data.importContext.getAssetStateInTargetEnvironment(asset.codename).state === 'doesNotExists';
|
|
9
|
-
})
|
|
10
|
+
})
|
|
11
|
+
.map((asset) => ({ ...asset, descriptions: asset.descriptions?.filter(filterInvalidLanguages) }));
|
|
10
12
|
};
|
|
11
13
|
const getAssetsToEdit = () => {
|
|
12
14
|
return data.importContext.categorizedImportData.assets
|
|
@@ -18,13 +20,17 @@ export function assetsImporter(data) {
|
|
|
18
20
|
if (!shouldUpdateAsset({
|
|
19
21
|
collections: data.importContext.environmentData.collections,
|
|
20
22
|
languages: data.importContext.environmentData.languages,
|
|
23
|
+
assetFolders: data.importContext.environmentData.assetFolders,
|
|
21
24
|
migrationAsset: migrationAsset,
|
|
22
25
|
targetAsset: assetState.asset
|
|
23
26
|
})) {
|
|
24
27
|
return undefined;
|
|
25
28
|
}
|
|
26
29
|
return {
|
|
27
|
-
migrationAsset:
|
|
30
|
+
migrationAsset: {
|
|
31
|
+
...migrationAsset,
|
|
32
|
+
descriptions: migrationAsset.descriptions?.filter(filterInvalidLanguages)
|
|
33
|
+
},
|
|
28
34
|
replaceBinaryFile: shouldReplaceBinaryFile({
|
|
29
35
|
migrationAsset: migrationAsset,
|
|
30
36
|
targetAsset: assetState.asset
|
|
@@ -66,7 +72,8 @@ export function assetsImporter(data) {
|
|
|
66
72
|
title: assetEditRequest.migrationAsset.title,
|
|
67
73
|
descriptions: mapAssetDescriptions(assetEditRequest.migrationAsset.descriptions),
|
|
68
74
|
collection: mapAssetCollection(assetEditRequest.migrationAsset.collection),
|
|
69
|
-
file_reference: uploadedBinaryFile ?? undefined
|
|
75
|
+
file_reference: uploadedBinaryFile ?? undefined,
|
|
76
|
+
folder: mapAssetFolder(assetEditRequest.migrationAsset.folder)
|
|
70
77
|
};
|
|
71
78
|
})
|
|
72
79
|
.toPromise()).data;
|
|
@@ -79,6 +86,9 @@ export function assetsImporter(data) {
|
|
|
79
86
|
}
|
|
80
87
|
});
|
|
81
88
|
};
|
|
89
|
+
const filterInvalidLanguages = (description) => {
|
|
90
|
+
return data.importContext.environmentData.languages.find((lang) => lang.codename === description.language.codename);
|
|
91
|
+
};
|
|
82
92
|
const mapAssetCollection = (migrationCollection) => {
|
|
83
93
|
return migrationCollection
|
|
84
94
|
? {
|
|
@@ -88,6 +98,13 @@ export function assetsImporter(data) {
|
|
|
88
98
|
}
|
|
89
99
|
: undefined;
|
|
90
100
|
};
|
|
101
|
+
const mapAssetFolder = (migrationFolder) => {
|
|
102
|
+
return migrationFolder
|
|
103
|
+
? {
|
|
104
|
+
codename: migrationFolder.codename
|
|
105
|
+
}
|
|
106
|
+
: undefined;
|
|
107
|
+
};
|
|
91
108
|
const mapAssetDescriptions = (migrationDescription) => {
|
|
92
109
|
return (migrationDescription ?? []).map((m) => {
|
|
93
110
|
const assetDescription = {
|
|
@@ -149,7 +166,8 @@ export function assetsImporter(data) {
|
|
|
149
166
|
title: migrationAsset.title,
|
|
150
167
|
external_id: assetStateInTargetEnv.externalIdToUse,
|
|
151
168
|
collection: mapAssetCollection(migrationAsset.collection),
|
|
152
|
-
descriptions: mapAssetDescriptions(migrationAsset.descriptions)
|
|
169
|
+
descriptions: mapAssetDescriptions(migrationAsset.descriptions),
|
|
170
|
+
folder: mapAssetFolder(migrationAsset.folder)
|
|
153
171
|
};
|
|
154
172
|
return assetRequestData;
|
|
155
173
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assets-importer.js","sourceRoot":"","sources":["../../../../lib/import/importers/assets-importer.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"assets-importer.js","sourceRoot":"","sources":["../../../../lib/import/importers/assets-importer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { match } from 'ts-pattern';
|
|
2
|
+
import { processItemsAsync, runMapiRequestAsync, workflowHelper, findRequired, isNotUndefined } from '../../core/index.js';
|
|
2
3
|
import chalk from 'chalk';
|
|
3
4
|
import { importTransforms } from '../../translation/index.js';
|
|
4
|
-
import { workflowImporter } from './workflow-importer.js';
|
|
5
|
+
import { workflowImporter as workflowImporterInit } from './workflow-importer.js';
|
|
5
6
|
import { throwErrorForMigrationItem } from '../utils/import.utils.js';
|
|
6
7
|
export function languageVariantImporter(config) {
|
|
8
|
+
const workflowImporter = workflowImporterInit({
|
|
9
|
+
logger: config.logger,
|
|
10
|
+
managementClient: config.client,
|
|
11
|
+
workflows: config.importContext.environmentData.workflows
|
|
12
|
+
});
|
|
7
13
|
const upsertLanguageVariantAsync = async (data) => {
|
|
8
14
|
return await runMapiRequestAsync({
|
|
9
15
|
logger: config.logger,
|
|
@@ -43,7 +49,7 @@ export function languageVariantImporter(config) {
|
|
|
43
49
|
throwErrorForMigrationItem(migrationItem, `There can be only 1 published version. There are '${publishedVersions.length}' published versions for the item.`);
|
|
44
50
|
}
|
|
45
51
|
if (draftVersions.length > 1) {
|
|
46
|
-
throwErrorForMigrationItem(migrationItem, `There can be only 1 draft version. There are '${
|
|
52
|
+
throwErrorForMigrationItem(migrationItem, `There can be only 1 draft version. There are '${draftVersions.length}' draft versions for the item.`);
|
|
47
53
|
}
|
|
48
54
|
return {
|
|
49
55
|
draftVersion: draftVersions?.[0],
|
|
@@ -56,13 +62,11 @@ export function languageVariantImporter(config) {
|
|
|
56
62
|
workflowCodename: data.migrationItem.system.workflow.codename,
|
|
57
63
|
stepCodename: data.migrationItemVersion.workflow_step.codename
|
|
58
64
|
});
|
|
59
|
-
//
|
|
60
|
-
if (data.
|
|
61
|
-
await
|
|
65
|
+
// create new version if necessary. This is needed when both draft & published version are imported
|
|
66
|
+
if (data.createNewVersion) {
|
|
67
|
+
await workflowImporter.createNewVersionOfLanguageVariantAsync({
|
|
62
68
|
logSpinner: data.logSpinner,
|
|
63
|
-
|
|
64
|
-
migrationItem: data.migrationItem,
|
|
65
|
-
workflow
|
|
69
|
+
migrationItem: data.migrationItem
|
|
66
70
|
});
|
|
67
71
|
}
|
|
68
72
|
// upsert language variant
|
|
@@ -74,112 +78,116 @@ export function languageVariantImporter(config) {
|
|
|
74
78
|
workflow
|
|
75
79
|
});
|
|
76
80
|
// set workflow accordingly (publish, move to workflow step, archive ...)
|
|
77
|
-
await workflowImporter({
|
|
78
|
-
logger: config.logger,
|
|
79
|
-
managementClient: config.client,
|
|
80
|
-
workflows: config.importContext.environmentData.workflows
|
|
81
|
-
}).setWorkflowOfLanguageVariantAsync({
|
|
81
|
+
await workflowImporter.setWorkflowOfLanguageVariantAsync({
|
|
82
82
|
logSpinner: data.logSpinner,
|
|
83
83
|
migrationItem: data.migrationItem,
|
|
84
84
|
workflowCodename: workflow.codename,
|
|
85
|
-
stepCodename: step.codename
|
|
85
|
+
stepCodename: step.codename,
|
|
86
|
+
migrationItemVersion: data.migrationItemVersion
|
|
87
|
+
});
|
|
88
|
+
// set scheduling
|
|
89
|
+
await workflowImporter.setScheduledStateOfLanguageVariantAsync({
|
|
90
|
+
logSpinner: data.logSpinner,
|
|
91
|
+
migrationItem: data.migrationItem,
|
|
92
|
+
migrationItemVersion: data.migrationItemVersion
|
|
86
93
|
});
|
|
87
94
|
return languageVariant;
|
|
88
95
|
};
|
|
89
96
|
const importLanguageVariantAsync = async (logSpinner, migrationItem, preparedContentItem) => {
|
|
90
97
|
const { draftVersion, publishedVersion } = categorizeVersions(migrationItem);
|
|
91
|
-
let publishedLanguageVariant;
|
|
92
|
-
let draftLanguageVariant;
|
|
93
|
-
let lastWorkflowStepCodenameInTargetEnvironment;
|
|
94
|
-
const workflow = workflowHelper(config.importContext.environmentData.workflows).getWorkflowByCodename(migrationItem.system.workflow.codename);
|
|
95
98
|
// get initial state of language variant from target env
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
99
|
+
const targetVariantState = config.importContext.getLanguageVariantStateInTargetEnvironment(migrationItem.system.codename, migrationItem.system.language.codename);
|
|
100
|
+
// prepare language variant for import (unpublish, create new version, un-schedule ...)
|
|
101
|
+
await prepareTargetEnvironmentVariantForImportAsync({
|
|
102
|
+
logSpinner,
|
|
103
|
+
migrationItem,
|
|
104
|
+
targetVariantState
|
|
105
|
+
});
|
|
101
106
|
// first import published version if it exists
|
|
102
|
-
|
|
103
|
-
|
|
107
|
+
const publishedLanguageVariant = publishedVersion
|
|
108
|
+
? await importVersionAsync({
|
|
104
109
|
logSpinner: logSpinner,
|
|
105
110
|
migrationItem: migrationItem,
|
|
106
111
|
preparedContentItem: preparedContentItem,
|
|
107
|
-
migrationItemVersion: publishedVersion
|
|
108
|
-
|
|
112
|
+
migrationItemVersion: publishedVersion
|
|
113
|
+
})
|
|
114
|
+
: undefined;
|
|
115
|
+
// if target env contains published version & imported version not, unpublish it from the target env
|
|
116
|
+
if (targetVariantState.publishedLanguageVariant && !publishedVersion) {
|
|
117
|
+
await workflowImporter.unpublishLanguageVariantAsync({
|
|
118
|
+
logSpinner,
|
|
119
|
+
migrationItem
|
|
120
|
+
});
|
|
121
|
+
await workflowImporter.moveToDraftStepAsync({
|
|
122
|
+
logSpinner,
|
|
123
|
+
migrationItem
|
|
109
124
|
});
|
|
110
|
-
// set last published workflow step to publish as language variant has just been published in target environment
|
|
111
|
-
lastWorkflowStepCodenameInTargetEnvironment = workflow.publishedStep.codename;
|
|
112
125
|
}
|
|
113
|
-
|
|
114
|
-
|
|
126
|
+
const draftLanguageVariant = draftVersion
|
|
127
|
+
? await importVersionAsync({
|
|
115
128
|
logSpinner: logSpinner,
|
|
116
129
|
migrationItem: migrationItem,
|
|
117
130
|
preparedContentItem: preparedContentItem,
|
|
118
131
|
migrationItemVersion: draftVersion,
|
|
119
|
-
|
|
120
|
-
})
|
|
121
|
-
|
|
122
|
-
return [
|
|
132
|
+
createNewVersion: publishedLanguageVariant ? true : false
|
|
133
|
+
})
|
|
134
|
+
: undefined;
|
|
135
|
+
return [publishedLanguageVariant, draftLanguageVariant].filter(isNotUndefined);
|
|
123
136
|
};
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
137
|
+
const cancelScheduledStateAsync = async (data) => {
|
|
138
|
+
const changeWorkflowData = {
|
|
139
|
+
logSpinner: data.logSpinner,
|
|
140
|
+
migrationItem: data.migrationItem
|
|
141
|
+
};
|
|
142
|
+
await match(data.scheduledState)
|
|
143
|
+
.with('scheduledPublish', async () => {
|
|
144
|
+
// cancel scheduled publish if language variant is scheduled to be published
|
|
145
|
+
await workflowImporter.cancelScheduledPublishAsync(changeWorkflowData);
|
|
146
|
+
})
|
|
147
|
+
.with('scheduledUnpublish', async () => {
|
|
148
|
+
// cancel scheduled unpublish if language variant is scheduled to be unpublished
|
|
149
|
+
await workflowImporter.cancelScheduledUnpublishAsync(changeWorkflowData);
|
|
150
|
+
})
|
|
151
|
+
.otherwise(() => { });
|
|
139
152
|
};
|
|
140
|
-
const
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
logger: config.logger,
|
|
145
|
-
func: async () => {
|
|
146
|
-
await config.client
|
|
147
|
-
.changeWorkflowOfLanguageVariant()
|
|
148
|
-
.byItemCodename(migrationItem.system.codename)
|
|
149
|
-
.byLanguageCodename(migrationItem.system.language.codename)
|
|
150
|
-
.withData({
|
|
151
|
-
workflow_identifier: {
|
|
152
|
-
codename: workflow.codename
|
|
153
|
-
},
|
|
154
|
-
step_identifier: {
|
|
155
|
-
codename: firstWorkflowStep.codename
|
|
156
|
-
}
|
|
157
|
-
})
|
|
158
|
-
.toPromise();
|
|
159
|
-
},
|
|
160
|
-
action: 'changeWorkflowStep',
|
|
161
|
-
type: 'languageVariant',
|
|
162
|
-
logSpinner: logSpinner,
|
|
163
|
-
itemName: `${migrationItem.system.codename} (${migrationItem.system.language.codename}) -> ${firstWorkflowStep.codename}`
|
|
164
|
-
});
|
|
153
|
+
const prepareTargetEnvironmentVariantForImportAsync = async (data) => {
|
|
154
|
+
if (!data.targetVariantState) {
|
|
155
|
+
// no need to prepare language variant as it doesn't exist in target environment
|
|
156
|
+
return;
|
|
165
157
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
if (
|
|
170
|
-
|
|
158
|
+
// when language variant exists in target env, we need to prepare it for import by unscheduling, moving to draft etc...
|
|
159
|
+
// we use draft language variant if it exists, otherwise we use published language variant
|
|
160
|
+
const languageVariantToPrepare = data.targetVariantState.draftLanguageVariant ?? data.targetVariantState.publishedLanguageVariant;
|
|
161
|
+
if (!languageVariantToPrepare) {
|
|
162
|
+
return;
|
|
171
163
|
}
|
|
172
|
-
//
|
|
173
|
-
|
|
174
|
-
|
|
164
|
+
// there is likely a bug which causes /published endpoint to return invalid scheduled state
|
|
165
|
+
// use conditions below to determine scheduled state to use - this will be fixed in future
|
|
166
|
+
if (languageVariantToPrepare.workflowState?.scheduledState) {
|
|
167
|
+
await cancelScheduledStateAsync({
|
|
168
|
+
logSpinner: data.logSpinner,
|
|
169
|
+
migrationItem: data.migrationItem,
|
|
170
|
+
scheduledState: languageVariantToPrepare.workflowState.scheduledState
|
|
171
|
+
});
|
|
175
172
|
}
|
|
173
|
+
const changeWorkflowData = {
|
|
174
|
+
logSpinner: data.logSpinner,
|
|
175
|
+
migrationItem: data.migrationItem
|
|
176
|
+
};
|
|
177
|
+
await match(languageVariantToPrepare.workflowState?.workflowState)
|
|
178
|
+
.with('published', async () => {
|
|
179
|
+
// create new version if language variant is published
|
|
180
|
+
await workflowImporter.createNewVersionOfLanguageVariantAsync(changeWorkflowData);
|
|
181
|
+
})
|
|
182
|
+
.with('archived', async () => {
|
|
183
|
+
// move to draft step if language variant is archived
|
|
184
|
+
await workflowImporter.moveToDraftStepAsync(changeWorkflowData);
|
|
185
|
+
})
|
|
186
|
+
.otherwise(() => { });
|
|
176
187
|
};
|
|
177
188
|
const isPublishedWorkflowStep = (stepCodename, workflow) => {
|
|
178
189
|
return workflow.publishedStep.codename === stepCodename;
|
|
179
190
|
};
|
|
180
|
-
const isArchivedWorkflowStep = (stepCodename, workflow) => {
|
|
181
|
-
return workflow.archivedStep.codename === stepCodename;
|
|
182
|
-
};
|
|
183
191
|
const getElementContract = (migrationItem, element, elementCodename) => {
|
|
184
192
|
const importTransformResult = importTransforms[config.importContext.getElement(migrationItem.system.type.codename, elementCodename, element.type).type]({
|
|
185
193
|
elementCodename: elementCodename,
|