@kontent-ai/migration-toolkit 3.0.0-0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/models/core.models.d.ts +2 -0
- package/dist/core/models/error.models.d.ts +12 -0
- package/dist/core/models/error.models.js +79 -0
- package/dist/core/models/error.models.js.map +1 -1
- package/dist/core/models/migration.models.d.ts +4 -6
- package/dist/core/utils/confirm.utils.d.ts +2 -0
- package/dist/core/utils/confirm.utils.js +72 -5
- package/dist/core/utils/confirm.utils.js.map +1 -1
- package/dist/core/utils/error.utils.js +1 -1
- package/dist/core/utils/error.utils.js.map +1 -1
- package/dist/core/utils/management-client-utils.js +3 -0
- package/dist/core/utils/management-client-utils.js.map +1 -1
- package/dist/core/utils/try.utils.d.ts +14 -0
- package/dist/core/utils/try.utils.js +18 -0
- package/dist/core/utils/try.utils.js.map +1 -0
- package/dist/export/export-manager.js +32 -27
- package/dist/export/export-manager.js.map +1 -1
- package/dist/node/cli/actions/export-action.js +1 -0
- package/dist/node/cli/actions/export-action.js.map +1 -1
- package/dist/node/cli/actions/migrate-action.js +1 -0
- package/dist/node/cli/actions/migrate-action.js.map +1 -1
- package/lib/core/models/core.models.ts +2 -0
- package/lib/core/models/error.models.ts +107 -0
- package/lib/core/models/migration.models.ts +3 -6
- package/lib/core/utils/confirm.utils.ts +88 -11
- package/lib/core/utils/error.utils.ts +1 -1
- package/lib/core/utils/management-client-utils.ts +3 -0
- package/lib/core/utils/try.utils.ts +30 -0
- package/lib/export/export-manager.ts +39 -22
- package/lib/node/cli/actions/export-action.ts +1 -0
- package/lib/node/cli/actions/migrate-action.ts +1 -0
- package/package.json +3 -3
|
@@ -81,12 +81,14 @@ export interface PackageDataOverview {
|
|
|
81
81
|
}
|
|
82
82
|
export interface FlattenedContentTypeElement {
|
|
83
83
|
readonly codename: string;
|
|
84
|
+
readonly name: string | undefined;
|
|
84
85
|
readonly id: string;
|
|
85
86
|
readonly type: MigrationElementType;
|
|
86
87
|
readonly element: Readonly<ContentTypeElements.ContentTypeElementModel>;
|
|
87
88
|
}
|
|
88
89
|
export interface FlattenedContentType {
|
|
89
90
|
readonly contentTypeCodename: string;
|
|
91
|
+
readonly name: string;
|
|
90
92
|
readonly contentTypeId: string;
|
|
91
93
|
readonly elements: readonly FlattenedContentTypeElement[];
|
|
92
94
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { ExportItem, ExportItemVersion } from "../../export/export.models.js";
|
|
2
|
+
import type { ErrorData, FlattenedContentType, FlattenedContentTypeElement } from "./core.models.js";
|
|
1
3
|
export type MigrationToolkitErrorType = "confirmationRefused" | "invalidZip" | "invalidFolder" | "unsupportedCommand" | "importFailedForItem" | "invalidElement" | "exportFailedForItem" | "missingContentType" | "invalidEnvironment" | "exitProgram" | "missingItem" | "findRequiredError" | "missingWorkflowStep" | "missingAsset" | "missingTaxonomyTerm" | "invalidValue" | "invalidMultipleChoiceOption";
|
|
2
4
|
export declare class MigrationToolkitError extends Error {
|
|
3
5
|
readonly type: MigrationToolkitErrorType;
|
|
@@ -12,3 +14,13 @@ export declare class MissingAssetError extends MigrationToolkitError {
|
|
|
12
14
|
readonly id: string;
|
|
13
15
|
constructor(id: string);
|
|
14
16
|
}
|
|
17
|
+
export declare class InvalidValueError extends MigrationToolkitError {
|
|
18
|
+
constructor({ element, value, contentType, errorData, exportItem, exportItemVersion, }: {
|
|
19
|
+
readonly exportItem: ExportItem;
|
|
20
|
+
readonly exportItemVersion: ExportItemVersion;
|
|
21
|
+
readonly element: FlattenedContentTypeElement;
|
|
22
|
+
readonly contentType: FlattenedContentType;
|
|
23
|
+
readonly value: unknown;
|
|
24
|
+
readonly errorData: ErrorData;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
|
+
import { match, P } from "ts-pattern";
|
|
3
|
+
const missingReferencesMessage = `You can skip missing references using the '${chalk.green("skipMissingReferences")}' option.`;
|
|
2
4
|
export class MigrationToolkitError extends Error {
|
|
3
5
|
type;
|
|
4
6
|
message;
|
|
@@ -22,4 +24,81 @@ export class MissingAssetError extends MigrationToolkitError {
|
|
|
22
24
|
this.id = id;
|
|
23
25
|
}
|
|
24
26
|
}
|
|
27
|
+
export class InvalidValueError extends MigrationToolkitError {
|
|
28
|
+
constructor({ element, value, contentType, errorData, exportItem, exportItemVersion, }) {
|
|
29
|
+
const { missingReferenceId, isMissingReference } = match(errorData.error)
|
|
30
|
+
.returnType()
|
|
31
|
+
.when((m) => m instanceof MissingAssetError || m instanceof MissingItemError, (m) => {
|
|
32
|
+
return {
|
|
33
|
+
missingReferenceId: m.id,
|
|
34
|
+
isMissingReference: true,
|
|
35
|
+
};
|
|
36
|
+
})
|
|
37
|
+
.otherwise(() => {
|
|
38
|
+
return {
|
|
39
|
+
missingReferenceId: undefined,
|
|
40
|
+
isMissingReference: false,
|
|
41
|
+
};
|
|
42
|
+
});
|
|
43
|
+
const getValueToDisplay = () => {
|
|
44
|
+
let jsonValue;
|
|
45
|
+
try {
|
|
46
|
+
jsonValue = JSON.stringify(value, null, 2);
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
jsonValue = undefined;
|
|
50
|
+
}
|
|
51
|
+
const baseValue = match(jsonValue)
|
|
52
|
+
.returnType()
|
|
53
|
+
.with(P.string, (jsonValue) => jsonValue
|
|
54
|
+
.split("\n")
|
|
55
|
+
.map((line) => ` ${line}`)
|
|
56
|
+
.join("\n"))
|
|
57
|
+
.otherwise(() => value?.toString() ?? "");
|
|
58
|
+
// Highlight missing reference ID in red if present
|
|
59
|
+
return missingReferenceId ? baseValue.replaceAll(missingReferenceId, chalk.red(missingReferenceId)) : baseValue;
|
|
60
|
+
};
|
|
61
|
+
const lines = [
|
|
62
|
+
"",
|
|
63
|
+
chalk.red("❌ Invalid value error"),
|
|
64
|
+
"",
|
|
65
|
+
`${chalk.cyan("📝 Content type:")}`,
|
|
66
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(contentType.name)}`,
|
|
67
|
+
` ${chalk.gray("├─")} Codename: ${chalk.yellow.bold(contentType.contentTypeCodename)}`,
|
|
68
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(contentType.contentTypeId)}`,
|
|
69
|
+
"",
|
|
70
|
+
`${chalk.cyan("🔧 Element:")}`,
|
|
71
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(element.name)}`,
|
|
72
|
+
` ${chalk.gray("├─")} Codename: ${chalk.yellow.bold(element.codename)}`,
|
|
73
|
+
` ${chalk.gray("├─")} Type: ${chalk.green.bold(element.type)}`,
|
|
74
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(element.id)}`,
|
|
75
|
+
"",
|
|
76
|
+
`${chalk.cyan("📦 Item:")}`,
|
|
77
|
+
` ${chalk.gray("├─")} Item codename: ${chalk.yellow.bold(exportItem.requestItem.itemCodename)}`,
|
|
78
|
+
` ${chalk.gray("├─")} Language codename: ${chalk.yellow.bold(exportItem.requestItem.languageCodename)}`,
|
|
79
|
+
` ${chalk.gray("└─")} Version codename: ${chalk.yellow.bold(exportItemVersion.workflowStepCodename)}`,
|
|
80
|
+
"",
|
|
81
|
+
`${chalk.cyan("📦 Item version:")}`,
|
|
82
|
+
` ${chalk.gray("├─")} Workflow step codename: ${chalk.yellow.bold(exportItemVersion.workflowStepCodename)}`,
|
|
83
|
+
` ${chalk.gray("└─")} Language variant: ${chalk.yellow.bold(exportItemVersion.languageVariant.language.codename)}`,
|
|
84
|
+
"",
|
|
85
|
+
chalk.cyan("Invalid Value:"),
|
|
86
|
+
chalk.dim(getValueToDisplay()),
|
|
87
|
+
"",
|
|
88
|
+
...match(errorData.message)
|
|
89
|
+
.returnType()
|
|
90
|
+
.with(P.string, (message) => [chalk.cyan("Error Details:"), chalk.gray(` ${message}`), ""])
|
|
91
|
+
.otherwise(() => []),
|
|
92
|
+
...match(errorData.requestUrl)
|
|
93
|
+
.returnType()
|
|
94
|
+
.with(P.string, (requestUrl) => [chalk.cyan("Request URL:"), chalk.gray(` ${requestUrl}`), ""])
|
|
95
|
+
.otherwise(() => []),
|
|
96
|
+
...match(isMissingReference)
|
|
97
|
+
.returnType()
|
|
98
|
+
.with(true, () => [chalk.cyan("💡 Tip:"), chalk.gray(` ${missingReferencesMessage}`), ""])
|
|
99
|
+
.otherwise(() => []),
|
|
100
|
+
];
|
|
101
|
+
super("invalidValue", lines.join("\n"));
|
|
102
|
+
}
|
|
103
|
+
}
|
|
25
104
|
//# sourceMappingURL=error.models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.models.js","sourceRoot":"","sources":["../../../lib/core/models/error.models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"error.models.js","sourceRoot":"","sources":["../../../lib/core/models/error.models.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { z } from "zod";
|
|
2
|
-
import type { MigrationAssetDescriptionSchema, MigrationAssetSchema, MigrationComponentSchema, MigrationDataSchema, MigrationElementSchema, MigrationElementsSchema, MigrationElementTypeSchema, MigrationElementValueSchema,
|
|
2
|
+
import type { MigrationAssetDescriptionSchema, MigrationAssetSchema, MigrationComponentSchema, MigrationDataSchema, MigrationElementSchema, MigrationElementsSchema, MigrationElementTypeSchema, MigrationElementValueSchema, MigrationItemSystemSchema, MigrationItemVersionSchema, MigrationReferenceSchema, MigrationUrlSlugModeSchema } from "./migration.schema.js";
|
|
3
3
|
export declare namespace MigrationElementModels {
|
|
4
4
|
type MigrationElementDef<TElementType extends MigrationElementType = MigrationElementType, TValue extends MigrationElementValue = MigrationElementValue> = {
|
|
5
5
|
readonly value: TValue | undefined;
|
|
@@ -18,12 +18,10 @@ export declare namespace MigrationElementModels {
|
|
|
18
18
|
export type SubpagesElement = MigrationElementDef<"subpages", MigrationReference[]>;
|
|
19
19
|
export {};
|
|
20
20
|
}
|
|
21
|
-
export type MigrationReference<T extends string = string> = z.infer<typeof MigrationReferenceSchema> & {
|
|
21
|
+
export type MigrationReference<T extends string = string> = Omit<z.infer<typeof MigrationReferenceSchema>, "codename"> & {
|
|
22
22
|
readonly codename: T;
|
|
23
23
|
};
|
|
24
|
-
export type MigrationItemSystem<TTypeCodenames extends string = string, TLanguageCodenames extends string = string, TCollectionCodenames extends string = string, TWorkflowCodenames extends string = string> = z.infer<typeof MigrationItemSystemSchema> & {
|
|
25
|
-
readonly codename: string;
|
|
26
|
-
readonly name: string;
|
|
24
|
+
export type MigrationItemSystem<TTypeCodenames extends string = string, TLanguageCodenames extends string = string, TCollectionCodenames extends string = string, TWorkflowCodenames extends string = string> = Pick<z.infer<typeof MigrationItemSystemSchema>, "codename" | "name"> & {
|
|
27
25
|
readonly language: MigrationReference<TLanguageCodenames>;
|
|
28
26
|
readonly type: MigrationReference<TTypeCodenames>;
|
|
29
27
|
readonly collection: MigrationReference<TCollectionCodenames>;
|
|
@@ -43,7 +41,7 @@ export type MigrationItemVersion<TElements extends MigrationElements = Migration
|
|
|
43
41
|
readonly elements: Readonly<TElements>;
|
|
44
42
|
readonly workflow_step: MigrationReference<TWorkflowStepCodenames>;
|
|
45
43
|
};
|
|
46
|
-
export type MigrationItem<TElements extends MigrationElements = MigrationElements, TSystem extends MigrationItemSystem = MigrationItemSystem, TWorkflowStepCodenames extends string = string> =
|
|
44
|
+
export type MigrationItem<TElements extends MigrationElements = MigrationElements, TSystem extends MigrationItemSystem = MigrationItemSystem, TWorkflowStepCodenames extends string = string> = {
|
|
47
45
|
readonly versions: Readonly<MigrationItemVersion<TElements, TWorkflowStepCodenames>[]>;
|
|
48
46
|
readonly system: TSystem;
|
|
49
47
|
};
|
|
@@ -4,6 +4,7 @@ export declare function confirmExportAsync(data: {
|
|
|
4
4
|
readonly environmentId: string;
|
|
5
5
|
readonly apiKey: string;
|
|
6
6
|
readonly logger: Logger;
|
|
7
|
+
readonly skipMissingReferences: boolean;
|
|
7
8
|
readonly dataToExport: {
|
|
8
9
|
readonly itemsCount: number;
|
|
9
10
|
};
|
|
@@ -18,6 +19,7 @@ export declare function confirmMigrateAsync(data: {
|
|
|
18
19
|
readonly environmentId: string;
|
|
19
20
|
readonly apiKey: string;
|
|
20
21
|
};
|
|
22
|
+
readonly skipMissingReferences: boolean;
|
|
21
23
|
readonly logger: Logger;
|
|
22
24
|
readonly dataToMigrate: {
|
|
23
25
|
readonly itemsCount: number;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
|
+
import { match, P } from "ts-pattern";
|
|
2
3
|
import { MigrationToolkitError } from "../models/error.models.js";
|
|
3
4
|
import { getMigrationManagementClient, managementClientUtils } from "./management-client-utils.js";
|
|
4
5
|
export async function confirmExportAsync(data) {
|
|
@@ -6,7 +7,12 @@ export async function confirmExportAsync(data) {
|
|
|
6
7
|
environmentId: data.environmentId,
|
|
7
8
|
apiKey: data.apiKey,
|
|
8
9
|
}), data.logger).getEnvironmentAsync();
|
|
9
|
-
const text =
|
|
10
|
+
const text = getConfirmText({
|
|
11
|
+
action: "export",
|
|
12
|
+
itemsCount: data.dataToExport.itemsCount,
|
|
13
|
+
sourceEnvironment: environment,
|
|
14
|
+
skipMissingReferences: data.skipMissingReferences,
|
|
15
|
+
});
|
|
10
16
|
await confirmAsync({
|
|
11
17
|
force: data.force,
|
|
12
18
|
logger: data.logger,
|
|
@@ -23,7 +29,13 @@ export async function confirmMigrateAsync(data) {
|
|
|
23
29
|
environmentId: data.targetEnvironment.environmentId,
|
|
24
30
|
apiKey: data.targetEnvironment.apiKey,
|
|
25
31
|
}), data.logger).getEnvironmentAsync();
|
|
26
|
-
const text =
|
|
32
|
+
const text = getConfirmText({
|
|
33
|
+
action: "migrate",
|
|
34
|
+
itemsCount: data.dataToMigrate.itemsCount,
|
|
35
|
+
sourceEnvironment,
|
|
36
|
+
targetEnvironment,
|
|
37
|
+
skipMissingReferences: data.skipMissingReferences,
|
|
38
|
+
});
|
|
27
39
|
await confirmAsync({
|
|
28
40
|
force: data.force,
|
|
29
41
|
logger: data.logger,
|
|
@@ -36,7 +48,11 @@ export async function confirmImportAsync(data) {
|
|
|
36
48
|
environmentId: data.environmentId,
|
|
37
49
|
apiKey: data.apiKey,
|
|
38
50
|
}), data.logger).getEnvironmentAsync();
|
|
39
|
-
const text =
|
|
51
|
+
const text = getConfirmText({
|
|
52
|
+
action: "import",
|
|
53
|
+
targetEnvironment: environment,
|
|
54
|
+
itemsCount: undefined,
|
|
55
|
+
});
|
|
40
56
|
await confirmAsync({
|
|
41
57
|
force: data.force,
|
|
42
58
|
logger: data.logger,
|
|
@@ -64,7 +80,58 @@ async function confirmAsync(data) {
|
|
|
64
80
|
throw new MigrationToolkitError("confirmationRefused", `Confirmation refused.`);
|
|
65
81
|
}
|
|
66
82
|
}
|
|
67
|
-
function
|
|
68
|
-
|
|
83
|
+
function getConfirmText({ action, itemsCount, sourceEnvironment, targetEnvironment, skipMissingReferences, }) {
|
|
84
|
+
const lines = [
|
|
85
|
+
`\n${"=".repeat(70)}`,
|
|
86
|
+
...match(action)
|
|
87
|
+
.returnType()
|
|
88
|
+
.with("export", () => [
|
|
89
|
+
`${chalk.cyan("📤 Source environment:")}`,
|
|
90
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(sourceEnvironment?.name)}`,
|
|
91
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(sourceEnvironment?.environment)}`,
|
|
92
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(sourceEnvironment?.id)}`,
|
|
93
|
+
])
|
|
94
|
+
.with("import", () => [
|
|
95
|
+
`${chalk.cyan("📥 Target environment:")}`,
|
|
96
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(targetEnvironment?.name)}`,
|
|
97
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(targetEnvironment?.environment)}`,
|
|
98
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(targetEnvironment?.id)}`,
|
|
99
|
+
])
|
|
100
|
+
.with("migrate", () => [
|
|
101
|
+
`${chalk.cyan("📤 Source environment:")}`,
|
|
102
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(sourceEnvironment?.name)}`,
|
|
103
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(sourceEnvironment?.environment)}`,
|
|
104
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(sourceEnvironment?.id)}`,
|
|
105
|
+
`${chalk.cyan("📥 Target environment:")}`,
|
|
106
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(targetEnvironment?.name)}`,
|
|
107
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(targetEnvironment?.environment)}`,
|
|
108
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(targetEnvironment?.id)}`,
|
|
109
|
+
])
|
|
110
|
+
.exhaustive(),
|
|
111
|
+
"\n",
|
|
112
|
+
...match(itemsCount)
|
|
113
|
+
.returnType()
|
|
114
|
+
.with(P.nonNullable, (itemsCount) => [
|
|
115
|
+
`${chalk.cyan("📦 Items to process:")}`,
|
|
116
|
+
` ${chalk.gray("├─")} Count: ${chalk.green.bold(itemsCount)}`,
|
|
117
|
+
"",
|
|
118
|
+
])
|
|
119
|
+
.otherwise(() => []),
|
|
120
|
+
...match(action)
|
|
121
|
+
.returnType()
|
|
122
|
+
.with(P.union("export", "migrate"), () => [
|
|
123
|
+
`${chalk.cyan("⚙️ Configuration:")}`,
|
|
124
|
+
` ${chalk.gray("└─")} Skip missing references: ${chalk.green.bold(skipMissingReferences ? "Yes" : "No")}`,
|
|
125
|
+
"",
|
|
126
|
+
])
|
|
127
|
+
.otherwise(() => []),
|
|
128
|
+
`${chalk.yellow("⚠")} ${match(action)
|
|
129
|
+
.returnType()
|
|
130
|
+
.with("export", () => "Are you sure you want to export the data?")
|
|
131
|
+
.with("import", () => "Are you sure you want to import the data?")
|
|
132
|
+
.with("migrate", () => "Are you sure you want to migrate the data?")
|
|
133
|
+
.exhaustive()}`,
|
|
134
|
+
];
|
|
135
|
+
return lines.join("\n");
|
|
69
136
|
}
|
|
70
137
|
//# sourceMappingURL=confirm.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirm.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/confirm.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"confirm.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/confirm.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,6 +61,6 @@ export function handleError(error) {
|
|
|
61
61
|
if (errorData.requestUrl) {
|
|
62
62
|
console.log(`${chalk.red("Request url")}: ${errorData.requestUrl}`);
|
|
63
63
|
}
|
|
64
|
-
console.error(
|
|
64
|
+
console.error(errorData.message);
|
|
65
65
|
}
|
|
66
66
|
//# sourceMappingURL=error.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/error.utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"error.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/error.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -91,6 +91,7 @@ export function managementClientUtils(client, logger) {
|
|
|
91
91
|
}
|
|
92
92
|
const flattenedElement = {
|
|
93
93
|
codename: snippetElement.codename,
|
|
94
|
+
name: snippetElement.name,
|
|
94
95
|
type: snippetElement.type,
|
|
95
96
|
id: snippetElement.id,
|
|
96
97
|
element: snippetElement,
|
|
@@ -100,6 +101,7 @@ export function managementClientUtils(client, logger) {
|
|
|
100
101
|
}
|
|
101
102
|
const flattenedElement = {
|
|
102
103
|
codename: element.codename,
|
|
104
|
+
name: element.name,
|
|
103
105
|
id: element.id,
|
|
104
106
|
type: element.type,
|
|
105
107
|
element: element,
|
|
@@ -126,6 +128,7 @@ export function managementClientUtils(client, logger) {
|
|
|
126
128
|
return [
|
|
127
129
|
...contentTypes.map((contentType) => {
|
|
128
130
|
const importType = {
|
|
131
|
+
name: contentType.name,
|
|
129
132
|
contentTypeCodename: contentType.codename,
|
|
130
133
|
contentTypeId: contentType.id,
|
|
131
134
|
elements: getContentTypeElements(contentType, contentTypeSnippets),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"management-client-utils.js","sourceRoot":"","sources":["../../../lib/core/utils/management-client-utils.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AASrD,MAAM,UAAU,4BAA4B,CAAC,MAA8B;IAC1E,OAAO,sBAAsB,CAAC;QAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,oBAAoB;QAC3D,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE;YACR;gBACC,MAAM,EAAE,UAAU,CAAC,yBAAyB;gBAC5C,KAAK,EAAE,UAAU,CAAC,0BAA0B;aAC5C;SACD;KACD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAkC,EAAE,MAAc;IACvF,MAAM,mBAAmB,GAAG,KAAK,IAA4D,EAAE;QAC9F,OAAO,CAAC,MAAM,MAAM,CAAC,sBAAsB,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IACzE,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,EAAE,UAA0B,EAAoD,EAAE;QACnH,OAAO,MAAM,mBAAmB,CAAC;YAChC,UAAU,EAAE,UAAU;YACtB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YAC1E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,UAAU;SAChB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,KAAK,EAAE,UAA0B,EAAmD,EAAE;QACpH,OAAO,MAAM,mBAAmB,CAAC;YAChC,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW;YAC/E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,YAAY;SAClB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,EAAE,UAA0B,EAA+C,EAAE;QAC9G,OAAO,MAAM,mBAAmB,CAAC;YAChC,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI;YACjE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,UAAU;SAChB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,KAAK,EAAE,UAA0B,EAA+C,EAAE;QAC/G,OAAO,MAAM,mBAAmB,CAAC;YAChC,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,cAAc,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YAC3E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,UAAU;SAChB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,KAAK,EAAE,UAA0B,EAAqD,EAAE;QACvH,OAAO,MAAM,mBAAmB,CAAC;YAChC,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YAC1E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,aAAa;SACnB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAC9B,WAA0C,EAC1C,mBAA2E,EAClC,EAAE;QAC3C,OAAO,WAAW,CAAC,QAAQ;aACzB,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACpB,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvC,OAAO,SAAS,CAAC;YAClB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACnC,OAAO,SAAS,CAAC;YAClB,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,cAAc,GAAG,OAAO,CAAC;gBAE/B,+CAA+C;gBAC/C,MAAM,kBAAkB,GAAG,YAAY,CACtC,mBAAmB,EACnB,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,cAAc,CAAC,OAAO,CAAC,EAAE,EACrD,wFAAwF,KAAK,CAAC,GAAG,CAChG,WAAW,CAAC,QAAQ,CACpB,GAAG,CACJ,CAAC;gBAEF,OAAO,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;oBACzD,IAAI,cAAc,CAAC,IAAI,KAAK,YAAY,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBAC/E,OAAO,SAAS,CAAC;oBAClB,CAAC;oBACD,IAAI,CAAC,CAAC,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC;wBACrD,OAAO,SAAS,CAAC;oBAClB,CAAC;oBAED,MAAM,gBAAgB,GAAgC;wBACrD,QAAQ,EAAE,cAAc,CAAC,QAAQ;wBACjC,IAAI,EAAE,cAAc,CAAC,IAAI;wBACzB,EAAE,EAAE,cAAc,CAAC,EAAE;wBACrB,OAAO,EAAE,cAAc;qBACvB,CAAC;oBAEF,OAAO,gBAAgB,CAAC;gBACzB,CAAC,CAAC,CAAC;YACJ,CAAC;YACD,MAAM,gBAAgB,GAAgC;gBACrD,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO;aAChB,CAAC;YAEF,OAAO,gBAAgB,CAAC;QACzB,CAAC,CAAC;aACD,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,6BAA6B,GAAG,KAAK,EAAE,UAA0B,EAA4C,EAAE;QACpH,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC;YAC9C,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YAC7E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,aAAa;SACnB,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,MAAM,mBAAmB,CAAC;YACrD,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,uBAAuB,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YACpF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;SAC1B,CAAC,CAAC;QAEH,OAAO;YACN,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;gBACnC,MAAM,UAAU,GAAyB;oBACxC,mBAAmB,EAAE,WAAW,CAAC,QAAQ;oBACzC,aAAa,EAAE,WAAW,CAAC,EAAE;oBAC7B,QAAQ,EAAE,sBAAsB,CAAC,WAAW,EAAE,mBAAmB,CAAC;iBAClE,CAAC;gBAEF,OAAO,UAAU,CAAC;YACnB,CAAC,CAAC;SACF,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACN,sBAAsB;QACtB,oBAAoB;QACpB,oBAAoB;QACpB,qBAAqB;QACrB,6BAA6B;QAC7B,mBAAmB;QACnB,uBAAuB;KACvB,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"management-client-utils.js","sourceRoot":"","sources":["../../../lib/core/utils/management-client-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type Success<TData> = {
|
|
2
|
+
readonly success: true;
|
|
3
|
+
readonly data: TData;
|
|
4
|
+
readonly error?: never;
|
|
5
|
+
};
|
|
6
|
+
type Failure<TError = unknown> = {
|
|
7
|
+
readonly success: false;
|
|
8
|
+
readonly data?: never;
|
|
9
|
+
readonly error: TError;
|
|
10
|
+
};
|
|
11
|
+
export type Result<TData, TError = unknown> = Success<TData> | Failure<TError>;
|
|
12
|
+
export declare function tryCatchAsync<T>(fn: () => Promise<T>): Promise<Result<T>>;
|
|
13
|
+
export declare function tryCatch<T>(fn: () => T): Result<T>;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export async function tryCatchAsync(fn) {
|
|
2
|
+
try {
|
|
3
|
+
const data = await fn();
|
|
4
|
+
return { success: true, data };
|
|
5
|
+
}
|
|
6
|
+
catch (error) {
|
|
7
|
+
return { success: false, error };
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export function tryCatch(fn) {
|
|
11
|
+
try {
|
|
12
|
+
return { success: true, data: fn() };
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
return { success: false, error };
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=try.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"try.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/try.utils.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,KAAK,UAAU,aAAa,CAAI,EAAoB;IAC1D,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,EAAE,EAAE,CAAC;QACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAClC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,QAAQ,CAAI,EAAW;IACtC,IAAI,CAAC;QACJ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAClC,CAAC;AACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
2
|
import { getDefaultLogger } from "../core/logs/loggers.js";
|
|
3
|
-
import { MigrationToolkitError } from "../core/models/error.models.js";
|
|
3
|
+
import { InvalidValueError, MigrationToolkitError } from "../core/models/error.models.js";
|
|
4
4
|
import { MigrationAssetsSchema, MigrationItemsSchema } from "../core/models/migration.schema.js";
|
|
5
5
|
import { findRequired } from "../core/utils/array.utils.js";
|
|
6
6
|
import { getBinaryDataFromUrlAsync } from "../core/utils/binary-data.utils.js";
|
|
@@ -8,6 +8,7 @@ import { extractErrorData } from "../core/utils/error.utils.js";
|
|
|
8
8
|
import { isNotUndefined } from "../core/utils/global.utils.js";
|
|
9
9
|
import { getMigrationManagementClient } from "../core/utils/management-client-utils.js";
|
|
10
10
|
import { processItemsAsync } from "../core/utils/processing-utils.js";
|
|
11
|
+
import { tryCatch } from "../core/utils/try.utils.js";
|
|
11
12
|
import { exportTransforms } from "../translation/transforms/export-transforms.js";
|
|
12
13
|
import { exportContextFetcherAsync } from "./context/export-context-fetcher.js";
|
|
13
14
|
export function exportManager(config) {
|
|
@@ -29,8 +30,8 @@ export function exportManager(config) {
|
|
|
29
30
|
},
|
|
30
31
|
},
|
|
31
32
|
versions: exportItem.versions.map((version) => {
|
|
32
|
-
|
|
33
|
-
elements: getMigrationElements(context, exportItem.contentType, version.languageVariant.elements),
|
|
33
|
+
const migrationItemVersion = {
|
|
34
|
+
elements: getMigrationElements(exportItem, version, context, exportItem.contentType, version.languageVariant.elements),
|
|
34
35
|
schedule: {
|
|
35
36
|
publish_time: version.languageVariant.schedule.publishTime ?? undefined,
|
|
36
37
|
publish_display_timezone: version.languageVariant.schedule.publishDisplayTimezone ?? undefined,
|
|
@@ -41,11 +42,12 @@ export function exportManager(config) {
|
|
|
41
42
|
codename: version.workflowStepCodename,
|
|
42
43
|
},
|
|
43
44
|
};
|
|
45
|
+
return migrationItemVersion;
|
|
44
46
|
}),
|
|
45
47
|
};
|
|
46
48
|
return migrationItem;
|
|
47
49
|
};
|
|
48
|
-
const mapToMigrationComponent = (context, component) => {
|
|
50
|
+
const mapToMigrationComponent = (exportItem, exportItemVersion, context, component) => {
|
|
49
51
|
const componentType = context.environmentData.contentTypes.find((m) => m.contentTypeId === component.type.id);
|
|
50
52
|
if (!componentType) {
|
|
51
53
|
throw new MigrationToolkitError("missingContentType", `Could not find content type with id '${chalk.red(component.type.id)}' for component '${chalk.red(component.id)}'`);
|
|
@@ -57,11 +59,11 @@ export function exportManager(config) {
|
|
|
57
59
|
codename: componentType.contentTypeCodename,
|
|
58
60
|
},
|
|
59
61
|
},
|
|
60
|
-
elements: getMigrationElements(context, componentType, component.elements),
|
|
62
|
+
elements: getMigrationElements(exportItem, exportItemVersion, context, componentType, component.elements),
|
|
61
63
|
};
|
|
62
64
|
return migrationItem;
|
|
63
65
|
};
|
|
64
|
-
const getMigrationElements = (context, contentType, elements) => {
|
|
66
|
+
const getMigrationElements = (exportItem, exportItemVersion, context, contentType, elements) => {
|
|
65
67
|
return contentType.elements
|
|
66
68
|
.toSorted((a, b) => {
|
|
67
69
|
if (a.codename < b.codename) {
|
|
@@ -77,6 +79,8 @@ export function exportManager(config) {
|
|
|
77
79
|
model[typeElement.codename] = {
|
|
78
80
|
type: typeElement.type,
|
|
79
81
|
...getMigrationElementToStore({
|
|
82
|
+
exportItem: exportItem,
|
|
83
|
+
exportItemVersion: exportItemVersion,
|
|
80
84
|
context: context,
|
|
81
85
|
contentType: contentType,
|
|
82
86
|
exportElement: itemElement,
|
|
@@ -87,29 +91,30 @@ export function exportManager(config) {
|
|
|
87
91
|
}, {});
|
|
88
92
|
};
|
|
89
93
|
const getMigrationElementToStore = (data) => {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
|
|
94
|
+
const { success, data: migrationElement, error, } = tryCatch(() => exportTransforms[data.typeElement.type]({
|
|
95
|
+
context: data.context,
|
|
96
|
+
typeElement: data.typeElement,
|
|
97
|
+
exportElement: {
|
|
98
|
+
components: data.exportElement.components.map((component) => {
|
|
99
|
+
return mapToMigrationComponent(data.exportItem, data.exportItemVersion, data.context, component);
|
|
100
|
+
}),
|
|
101
|
+
value: data.exportElement.value,
|
|
102
|
+
urlSlugMode: data.exportElement.mode,
|
|
103
|
+
displayTimezone: data.exportElement.display_timezone ?? undefined,
|
|
104
|
+
},
|
|
105
|
+
}));
|
|
106
|
+
if (!success) {
|
|
103
107
|
const errorData = extractErrorData(error);
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
throw new InvalidValueError({
|
|
109
|
+
element: data.typeElement,
|
|
110
|
+
contentType: data.contentType,
|
|
111
|
+
exportItem: data.exportItem,
|
|
112
|
+
exportItemVersion: data.exportItemVersion,
|
|
113
|
+
value: data.exportElement.value,
|
|
114
|
+
errorData: errorData,
|
|
115
|
+
});
|
|
112
116
|
}
|
|
117
|
+
return migrationElement;
|
|
113
118
|
};
|
|
114
119
|
const exportAssetsAsync = async (context) => {
|
|
115
120
|
const assets = Array.from(context.referencedData.assetIds)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-manager.js","sourceRoot":"","sources":["../../lib/export/export-manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"export-manager.js","sourceRoot":"","sources":["../../lib/export/export-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-action.js","sourceRoot":"","sources":["../../../../lib/node/cli/actions/export-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAA+B;IACtE,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,UAAU,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,UAAU,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,UAAU,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,UAAU,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,UAAU,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjE,MAAM,qBAAqB,GAAG,UAAU,CAAC,uBAAuB,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;IACjG,MAAM,QAAQ,GAAG,UAAU,CAAC,wBAAwB,CAAC,UAAU,CAAC,IAAI,kBAAkB,CAAC;IAEvF,MAAM,kBAAkB,CAAC;QACxB,KAAK;QACL,MAAM;QACN,aAAa;QACb,MAAM;QACN,YAAY,EAAE;YACb,UAAU,EAAE,KAAK,CAAC,MAAM;SACxB;
|
|
1
|
+
{"version":3,"file":"export-action.js","sourceRoot":"","sources":["../../../../lib/node/cli/actions/export-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAA+B;IACtE,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,UAAU,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,UAAU,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,UAAU,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,UAAU,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,UAAU,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjE,MAAM,qBAAqB,GAAG,UAAU,CAAC,uBAAuB,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;IACjG,MAAM,QAAQ,GAAG,UAAU,CAAC,wBAAwB,CAAC,UAAU,CAAC,IAAI,kBAAkB,CAAC;IAEvF,MAAM,kBAAkB,CAAC;QACxB,KAAK;QACL,MAAM;QACN,aAAa;QACb,MAAM;QACN,YAAY,EAAE;YACb,UAAU,EAAE,KAAK,CAAC,MAAM;SACxB;QACD,qBAAqB;KACrB,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC;QACtC,MAAM;QACN,aAAa;QACb,MAAM;QACN,OAAO;QACP,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5B,OAAO;gBACN,YAAY,EAAE,CAAC;gBACf,gBAAgB,EAAE,QAAQ;aAC1B,CAAC;QACH,CAAC,CAAC;QACF,qBAAqB;KACrB,CAAC,CAAC;IAEH,MAAM,UAAU,CAAC;QAChB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,MAAM;KACd,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-action.js","sourceRoot":"","sources":["../../../../lib/node/cli/actions/migrate-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAG3D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,WAAgC;IACxE,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,mBAAmB,GAAG,WAAW,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,WAAW,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,mBAAmB,GAAG,WAAW,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,WAAW,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,WAAW,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClE,MAAM,qBAAqB,GAAG,WAAW,CAAC,uBAAuB,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;IAClG,MAAM,KAAK,GAAG,WAAW,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,WAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,YAAY,GAAgC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACjE,OAAO;YACN,YAAY,EAAE,CAAC;YACf,gBAAgB,EAAE,QAAQ;SAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,mBAAmB,CAAC;QACzB,KAAK;QACL,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,aAAa,EAAE,mBAAmB;SAClC;QACD,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,aAAa,EAAE,mBAAmB;SAClC;QACD,MAAM;QACN,aAAa,EAAE;YACd,UAAU,EAAE,YAAY,CAAC,MAAM;SAC/B;KACD,CAAC,CAAC;IAEH,MAAM,YAAY,CAAC;QAClB,MAAM;QACN,iBAAiB,EAAE;YAClB,aAAa,EAAE,mBAAmB;YAClC,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,YAAY;YACnB,qBAAqB;SACrB;QACD,iBAAiB,EAAE;YAClB,aAAa,EAAE,mBAAmB;YAClC,MAAM,EAAE,YAAY;SACpB;KACD,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAC;AAC7E,CAAC"}
|
|
1
|
+
{"version":3,"file":"migrate-action.js","sourceRoot":"","sources":["../../../../lib/node/cli/actions/migrate-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAG3D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,WAAgC;IACxE,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,mBAAmB,GAAG,WAAW,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,WAAW,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,mBAAmB,GAAG,WAAW,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,WAAW,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,WAAW,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAClE,MAAM,qBAAqB,GAAG,WAAW,CAAC,uBAAuB,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;IAClG,MAAM,KAAK,GAAG,WAAW,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,WAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,YAAY,GAAgC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACjE,OAAO;YACN,YAAY,EAAE,CAAC;YACf,gBAAgB,EAAE,QAAQ;SAC1B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,mBAAmB,CAAC;QACzB,qBAAqB;QACrB,KAAK;QACL,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,aAAa,EAAE,mBAAmB;SAClC;QACD,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,aAAa,EAAE,mBAAmB;SAClC;QACD,MAAM;QACN,aAAa,EAAE;YACd,UAAU,EAAE,YAAY,CAAC,MAAM;SAC/B;KACD,CAAC,CAAC;IAEH,MAAM,YAAY,CAAC;QAClB,MAAM;QACN,iBAAiB,EAAE;YAClB,aAAa,EAAE,mBAAmB;YAClC,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,YAAY;YACnB,qBAAqB;SACrB;QACD,iBAAiB,EAAE;YAClB,aAAa,EAAE,mBAAmB;YAClC,MAAM,EAAE,YAAY;SACpB;KACD,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,CAAC;AAC7E,CAAC"}
|
|
@@ -137,6 +137,7 @@ export interface PackageDataOverview {
|
|
|
137
137
|
|
|
138
138
|
export interface FlattenedContentTypeElement {
|
|
139
139
|
readonly codename: string;
|
|
140
|
+
readonly name: string | undefined;
|
|
140
141
|
readonly id: string;
|
|
141
142
|
readonly type: MigrationElementType;
|
|
142
143
|
readonly element: Readonly<ContentTypeElements.ContentTypeElementModel>;
|
|
@@ -144,6 +145,7 @@ export interface FlattenedContentTypeElement {
|
|
|
144
145
|
|
|
145
146
|
export interface FlattenedContentType {
|
|
146
147
|
readonly contentTypeCodename: string;
|
|
148
|
+
readonly name: string;
|
|
147
149
|
readonly contentTypeId: string;
|
|
148
150
|
readonly elements: readonly FlattenedContentTypeElement[];
|
|
149
151
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
|
+
import { match, P } from "ts-pattern";
|
|
3
|
+
import type { ExportItem, ExportItemVersion } from "../../export/export.models.js";
|
|
4
|
+
import type { ErrorData, FlattenedContentType, FlattenedContentTypeElement } from "./core.models.js";
|
|
5
|
+
|
|
6
|
+
const missingReferencesMessage = `You can skip missing references using the '${chalk.green("skipMissingReferences")}' option.`;
|
|
2
7
|
|
|
3
8
|
export type MigrationToolkitErrorType =
|
|
4
9
|
| "confirmationRefused"
|
|
@@ -39,3 +44,105 @@ export class MissingAssetError extends MigrationToolkitError {
|
|
|
39
44
|
super("missingAsset", `Missing asset with id '${chalk.red(id)}'`);
|
|
40
45
|
}
|
|
41
46
|
}
|
|
47
|
+
|
|
48
|
+
export class InvalidValueError extends MigrationToolkitError {
|
|
49
|
+
constructor({
|
|
50
|
+
element,
|
|
51
|
+
value,
|
|
52
|
+
contentType,
|
|
53
|
+
errorData,
|
|
54
|
+
exportItem,
|
|
55
|
+
exportItemVersion,
|
|
56
|
+
}: {
|
|
57
|
+
readonly exportItem: ExportItem;
|
|
58
|
+
readonly exportItemVersion: ExportItemVersion;
|
|
59
|
+
readonly element: FlattenedContentTypeElement;
|
|
60
|
+
readonly contentType: FlattenedContentType;
|
|
61
|
+
readonly value: unknown;
|
|
62
|
+
readonly errorData: ErrorData;
|
|
63
|
+
}) {
|
|
64
|
+
const { missingReferenceId, isMissingReference } = match(errorData.error)
|
|
65
|
+
.returnType<{ readonly missingReferenceId: string | undefined; readonly isMissingReference: boolean }>()
|
|
66
|
+
.when(
|
|
67
|
+
(m) => m instanceof MissingAssetError || m instanceof MissingItemError,
|
|
68
|
+
(m) => {
|
|
69
|
+
return {
|
|
70
|
+
missingReferenceId: m.id,
|
|
71
|
+
isMissingReference: true,
|
|
72
|
+
};
|
|
73
|
+
},
|
|
74
|
+
)
|
|
75
|
+
.otherwise(() => {
|
|
76
|
+
return {
|
|
77
|
+
missingReferenceId: undefined,
|
|
78
|
+
isMissingReference: false,
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
const getValueToDisplay = () => {
|
|
83
|
+
let jsonValue: string | undefined;
|
|
84
|
+
|
|
85
|
+
try {
|
|
86
|
+
jsonValue = JSON.stringify(value, null, 2);
|
|
87
|
+
} catch {
|
|
88
|
+
jsonValue = undefined;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
const baseValue = match(jsonValue)
|
|
92
|
+
.returnType<string>()
|
|
93
|
+
.with(P.string, (jsonValue) =>
|
|
94
|
+
jsonValue
|
|
95
|
+
.split("\n")
|
|
96
|
+
.map((line) => ` ${line}`)
|
|
97
|
+
.join("\n"),
|
|
98
|
+
)
|
|
99
|
+
.otherwise(() => value?.toString() ?? "");
|
|
100
|
+
|
|
101
|
+
// Highlight missing reference ID in red if present
|
|
102
|
+
return missingReferenceId ? baseValue.replaceAll(missingReferenceId, chalk.red(missingReferenceId)) : baseValue;
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
const lines: readonly string[] = [
|
|
106
|
+
"",
|
|
107
|
+
chalk.red("❌ Invalid value error"),
|
|
108
|
+
"",
|
|
109
|
+
`${chalk.cyan("📝 Content type:")}`,
|
|
110
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(contentType.name)}`,
|
|
111
|
+
` ${chalk.gray("├─")} Codename: ${chalk.yellow.bold(contentType.contentTypeCodename)}`,
|
|
112
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(contentType.contentTypeId)}`,
|
|
113
|
+
"",
|
|
114
|
+
`${chalk.cyan("🔧 Element:")}`,
|
|
115
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(element.name)}`,
|
|
116
|
+
` ${chalk.gray("├─")} Codename: ${chalk.yellow.bold(element.codename)}`,
|
|
117
|
+
` ${chalk.gray("├─")} Type: ${chalk.green.bold(element.type)}`,
|
|
118
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(element.id)}`,
|
|
119
|
+
"",
|
|
120
|
+
`${chalk.cyan("📦 Item:")}`,
|
|
121
|
+
` ${chalk.gray("├─")} Item codename: ${chalk.yellow.bold(exportItem.requestItem.itemCodename)}`,
|
|
122
|
+
` ${chalk.gray("├─")} Language codename: ${chalk.yellow.bold(exportItem.requestItem.languageCodename)}`,
|
|
123
|
+
` ${chalk.gray("└─")} Version codename: ${chalk.yellow.bold(exportItemVersion.workflowStepCodename)}`,
|
|
124
|
+
"",
|
|
125
|
+
`${chalk.cyan("📦 Item version:")}`,
|
|
126
|
+
` ${chalk.gray("├─")} Workflow step codename: ${chalk.yellow.bold(exportItemVersion.workflowStepCodename)}`,
|
|
127
|
+
` ${chalk.gray("└─")} Language variant: ${chalk.yellow.bold(exportItemVersion.languageVariant.language.codename)}`,
|
|
128
|
+
"",
|
|
129
|
+
chalk.cyan("Invalid Value:"),
|
|
130
|
+
chalk.dim(getValueToDisplay()),
|
|
131
|
+
"",
|
|
132
|
+
...match(errorData.message)
|
|
133
|
+
.returnType<readonly string[]>()
|
|
134
|
+
.with(P.string, (message) => [chalk.cyan("Error Details:"), chalk.gray(` ${message}`), ""])
|
|
135
|
+
.otherwise(() => []),
|
|
136
|
+
...match(errorData.requestUrl)
|
|
137
|
+
.returnType<readonly string[]>()
|
|
138
|
+
.with(P.string, (requestUrl) => [chalk.cyan("Request URL:"), chalk.gray(` ${requestUrl}`), ""])
|
|
139
|
+
.otherwise(() => []),
|
|
140
|
+
...match(isMissingReference)
|
|
141
|
+
.returnType<readonly string[]>()
|
|
142
|
+
.with(true, () => [chalk.cyan("💡 Tip:"), chalk.gray(` ${missingReferencesMessage}`), ""])
|
|
143
|
+
.otherwise(() => []),
|
|
144
|
+
];
|
|
145
|
+
|
|
146
|
+
super("invalidValue", lines.join("\n"));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
@@ -8,7 +8,6 @@ import type {
|
|
|
8
8
|
MigrationElementsSchema,
|
|
9
9
|
MigrationElementTypeSchema,
|
|
10
10
|
MigrationElementValueSchema,
|
|
11
|
-
MigrationItemSchema,
|
|
12
11
|
MigrationItemSystemSchema,
|
|
13
12
|
MigrationItemVersionSchema,
|
|
14
13
|
MigrationReferenceSchema,
|
|
@@ -37,7 +36,7 @@ export namespace MigrationElementModels {
|
|
|
37
36
|
export type SubpagesElement = MigrationElementDef<"subpages", MigrationReference[]>;
|
|
38
37
|
}
|
|
39
38
|
|
|
40
|
-
export type MigrationReference<T extends string = string> = z.infer<typeof MigrationReferenceSchema> & {
|
|
39
|
+
export type MigrationReference<T extends string = string> = Omit<z.infer<typeof MigrationReferenceSchema>, "codename"> & {
|
|
41
40
|
readonly codename: T;
|
|
42
41
|
};
|
|
43
42
|
|
|
@@ -46,9 +45,7 @@ export type MigrationItemSystem<
|
|
|
46
45
|
TLanguageCodenames extends string = string,
|
|
47
46
|
TCollectionCodenames extends string = string,
|
|
48
47
|
TWorkflowCodenames extends string = string,
|
|
49
|
-
> = z.infer<typeof MigrationItemSystemSchema> & {
|
|
50
|
-
readonly codename: string;
|
|
51
|
-
readonly name: string;
|
|
48
|
+
> = Pick<z.infer<typeof MigrationItemSystemSchema>, "codename" | "name"> & {
|
|
52
49
|
readonly language: MigrationReference<TLanguageCodenames>;
|
|
53
50
|
readonly type: MigrationReference<TTypeCodenames>;
|
|
54
51
|
readonly collection: MigrationReference<TCollectionCodenames>;
|
|
@@ -77,7 +74,7 @@ export type MigrationItem<
|
|
|
77
74
|
TElements extends MigrationElements = MigrationElements,
|
|
78
75
|
TSystem extends MigrationItemSystem = MigrationItemSystem,
|
|
79
76
|
TWorkflowStepCodenames extends string = string,
|
|
80
|
-
> =
|
|
77
|
+
> = {
|
|
81
78
|
readonly versions: Readonly<MigrationItemVersion<TElements, TWorkflowStepCodenames>[]>;
|
|
82
79
|
readonly system: TSystem;
|
|
83
80
|
};
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import type { EnvironmentModels } from "@kontent-ai/management-sdk";
|
|
1
2
|
import chalk from "chalk";
|
|
3
|
+
import { match, P } from "ts-pattern";
|
|
2
4
|
import { MigrationToolkitError } from "../models/error.models.js";
|
|
3
5
|
import type { Logger } from "../models/log.models.js";
|
|
4
6
|
import { getMigrationManagementClient, managementClientUtils } from "./management-client-utils.js";
|
|
@@ -8,6 +10,7 @@ export async function confirmExportAsync(data: {
|
|
|
8
10
|
readonly environmentId: string;
|
|
9
11
|
readonly apiKey: string;
|
|
10
12
|
readonly logger: Logger;
|
|
13
|
+
readonly skipMissingReferences: boolean;
|
|
11
14
|
readonly dataToExport: {
|
|
12
15
|
readonly itemsCount: number;
|
|
13
16
|
};
|
|
@@ -20,9 +23,12 @@ export async function confirmExportAsync(data: {
|
|
|
20
23
|
data.logger,
|
|
21
24
|
).getEnvironmentAsync();
|
|
22
25
|
|
|
23
|
-
const text
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
const text = getConfirmText({
|
|
27
|
+
action: "export",
|
|
28
|
+
itemsCount: data.dataToExport.itemsCount,
|
|
29
|
+
sourceEnvironment: environment,
|
|
30
|
+
skipMissingReferences: data.skipMissingReferences,
|
|
31
|
+
});
|
|
26
32
|
|
|
27
33
|
await confirmAsync({
|
|
28
34
|
force: data.force,
|
|
@@ -42,6 +48,7 @@ export async function confirmMigrateAsync(data: {
|
|
|
42
48
|
readonly environmentId: string;
|
|
43
49
|
readonly apiKey: string;
|
|
44
50
|
};
|
|
51
|
+
readonly skipMissingReferences: boolean;
|
|
45
52
|
readonly logger: Logger;
|
|
46
53
|
readonly dataToMigrate: {
|
|
47
54
|
readonly itemsCount: number;
|
|
@@ -62,11 +69,13 @@ export async function confirmMigrateAsync(data: {
|
|
|
62
69
|
data.logger,
|
|
63
70
|
).getEnvironmentAsync();
|
|
64
71
|
|
|
65
|
-
const text
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
72
|
+
const text = getConfirmText({
|
|
73
|
+
action: "migrate",
|
|
74
|
+
itemsCount: data.dataToMigrate.itemsCount,
|
|
75
|
+
sourceEnvironment,
|
|
76
|
+
targetEnvironment,
|
|
77
|
+
skipMissingReferences: data.skipMissingReferences,
|
|
78
|
+
});
|
|
70
79
|
|
|
71
80
|
await confirmAsync({
|
|
72
81
|
force: data.force,
|
|
@@ -90,7 +99,11 @@ export async function confirmImportAsync(data: {
|
|
|
90
99
|
data.logger,
|
|
91
100
|
).getEnvironmentAsync();
|
|
92
101
|
|
|
93
|
-
const text
|
|
102
|
+
const text = getConfirmText({
|
|
103
|
+
action: "import",
|
|
104
|
+
targetEnvironment: environment,
|
|
105
|
+
itemsCount: undefined,
|
|
106
|
+
});
|
|
94
107
|
|
|
95
108
|
await confirmAsync({
|
|
96
109
|
force: data.force,
|
|
@@ -129,6 +142,70 @@ async function confirmAsync(data: {
|
|
|
129
142
|
}
|
|
130
143
|
}
|
|
131
144
|
|
|
132
|
-
function
|
|
133
|
-
|
|
145
|
+
function getConfirmText({
|
|
146
|
+
action,
|
|
147
|
+
itemsCount,
|
|
148
|
+
sourceEnvironment,
|
|
149
|
+
targetEnvironment,
|
|
150
|
+
skipMissingReferences,
|
|
151
|
+
}: {
|
|
152
|
+
readonly action: "export" | "import" | "migrate";
|
|
153
|
+
readonly skipMissingReferences?: boolean;
|
|
154
|
+
readonly itemsCount?: number;
|
|
155
|
+
readonly sourceEnvironment?: EnvironmentModels.EnvironmentInformationModel;
|
|
156
|
+
readonly targetEnvironment?: EnvironmentModels.EnvironmentInformationModel;
|
|
157
|
+
}): string {
|
|
158
|
+
const lines: readonly string[] = [
|
|
159
|
+
`\n${"=".repeat(70)}`,
|
|
160
|
+
...match(action)
|
|
161
|
+
.returnType<readonly string[]>()
|
|
162
|
+
.with("export", () => [
|
|
163
|
+
`${chalk.cyan("📤 Source environment:")}`,
|
|
164
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(sourceEnvironment?.name)}`,
|
|
165
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(sourceEnvironment?.environment)}`,
|
|
166
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(sourceEnvironment?.id)}`,
|
|
167
|
+
])
|
|
168
|
+
.with("import", () => [
|
|
169
|
+
`${chalk.cyan("📥 Target environment:")}`,
|
|
170
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(targetEnvironment?.name)}`,
|
|
171
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(targetEnvironment?.environment)}`,
|
|
172
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(targetEnvironment?.id)}`,
|
|
173
|
+
])
|
|
174
|
+
.with("migrate", () => [
|
|
175
|
+
`${chalk.cyan("📤 Source environment:")}`,
|
|
176
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(sourceEnvironment?.name)}`,
|
|
177
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(sourceEnvironment?.environment)}`,
|
|
178
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(sourceEnvironment?.id)}`,
|
|
179
|
+
`${chalk.cyan("📥 Target environment:")}`,
|
|
180
|
+
` ${chalk.gray("├─")} Name: ${chalk.yellow.bold(targetEnvironment?.name)}`,
|
|
181
|
+
` ${chalk.gray("├─")} Environment: ${chalk.green.bold(targetEnvironment?.environment)}`,
|
|
182
|
+
` ${chalk.gray("└─")} ID: ${chalk.dim(targetEnvironment?.id)}`,
|
|
183
|
+
])
|
|
184
|
+
.exhaustive(),
|
|
185
|
+
"\n",
|
|
186
|
+
...match(itemsCount)
|
|
187
|
+
.returnType<readonly string[]>()
|
|
188
|
+
.with(P.nonNullable, (itemsCount) => [
|
|
189
|
+
`${chalk.cyan("📦 Items to process:")}`,
|
|
190
|
+
` ${chalk.gray("├─")} Count: ${chalk.green.bold(itemsCount)}`,
|
|
191
|
+
"",
|
|
192
|
+
])
|
|
193
|
+
.otherwise(() => []),
|
|
194
|
+
...match(action)
|
|
195
|
+
.returnType<readonly string[]>()
|
|
196
|
+
.with(P.union("export", "migrate"), () => [
|
|
197
|
+
`${chalk.cyan("⚙️ Configuration:")}`,
|
|
198
|
+
` ${chalk.gray("└─")} Skip missing references: ${chalk.green.bold(skipMissingReferences ? "Yes" : "No")}`,
|
|
199
|
+
"",
|
|
200
|
+
])
|
|
201
|
+
.otherwise(() => []),
|
|
202
|
+
`${chalk.yellow("⚠")} ${match(action)
|
|
203
|
+
.returnType<string>()
|
|
204
|
+
.with("export", () => "Are you sure you want to export the data?")
|
|
205
|
+
.with("import", () => "Are you sure you want to import the data?")
|
|
206
|
+
.with("migrate", () => "Are you sure you want to migrate the data?")
|
|
207
|
+
.exhaustive()}`,
|
|
208
|
+
];
|
|
209
|
+
|
|
210
|
+
return lines.join("\n");
|
|
134
211
|
}
|
|
@@ -134,6 +134,7 @@ export function managementClientUtils(client: Readonly<ManagementClient>, logger
|
|
|
134
134
|
|
|
135
135
|
const flattenedElement: FlattenedContentTypeElement = {
|
|
136
136
|
codename: snippetElement.codename,
|
|
137
|
+
name: snippetElement.name,
|
|
137
138
|
type: snippetElement.type,
|
|
138
139
|
id: snippetElement.id,
|
|
139
140
|
element: snippetElement,
|
|
@@ -144,6 +145,7 @@ export function managementClientUtils(client: Readonly<ManagementClient>, logger
|
|
|
144
145
|
}
|
|
145
146
|
const flattenedElement: FlattenedContentTypeElement = {
|
|
146
147
|
codename: element.codename,
|
|
148
|
+
name: element.name,
|
|
147
149
|
id: element.id,
|
|
148
150
|
type: element.type,
|
|
149
151
|
element: element,
|
|
@@ -174,6 +176,7 @@ export function managementClientUtils(client: Readonly<ManagementClient>, logger
|
|
|
174
176
|
return [
|
|
175
177
|
...contentTypes.map((contentType) => {
|
|
176
178
|
const importType: FlattenedContentType = {
|
|
179
|
+
name: contentType.name,
|
|
177
180
|
contentTypeCodename: contentType.codename,
|
|
178
181
|
contentTypeId: contentType.id,
|
|
179
182
|
elements: getContentTypeElements(contentType, contentTypeSnippets),
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
type Success<TData> = {
|
|
2
|
+
readonly success: true;
|
|
3
|
+
readonly data: TData;
|
|
4
|
+
readonly error?: never;
|
|
5
|
+
};
|
|
6
|
+
|
|
7
|
+
type Failure<TError = unknown> = {
|
|
8
|
+
readonly success: false;
|
|
9
|
+
readonly data?: never;
|
|
10
|
+
readonly error: TError;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export type Result<TData, TError = unknown> = Success<TData> | Failure<TError>;
|
|
14
|
+
|
|
15
|
+
export async function tryCatchAsync<T>(fn: () => Promise<T>): Promise<Result<T>> {
|
|
16
|
+
try {
|
|
17
|
+
const data = await fn();
|
|
18
|
+
return { success: true, data };
|
|
19
|
+
} catch (error) {
|
|
20
|
+
return { success: false, error };
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function tryCatch<T>(fn: () => T): Result<T> {
|
|
25
|
+
try {
|
|
26
|
+
return { success: true, data: fn() };
|
|
27
|
+
} catch (error) {
|
|
28
|
+
return { success: false, error };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -3,7 +3,7 @@ import chalk from "chalk";
|
|
|
3
3
|
import type { Writeable } from "zod/v3";
|
|
4
4
|
import { getDefaultLogger } from "../core/logs/loggers.js";
|
|
5
5
|
import type { FlattenedContentType, FlattenedContentTypeElement } from "../core/models/core.models.js";
|
|
6
|
-
import { MigrationToolkitError } from "../core/models/error.models.js";
|
|
6
|
+
import { InvalidValueError, MigrationToolkitError } from "../core/models/error.models.js";
|
|
7
7
|
import type {
|
|
8
8
|
MigrationAsset,
|
|
9
9
|
MigrationComponent,
|
|
@@ -20,9 +20,10 @@ import { extractErrorData } from "../core/utils/error.utils.js";
|
|
|
20
20
|
import { isNotUndefined } from "../core/utils/global.utils.js";
|
|
21
21
|
import { getMigrationManagementClient } from "../core/utils/management-client-utils.js";
|
|
22
22
|
import { processItemsAsync } from "../core/utils/processing-utils.js";
|
|
23
|
+
import { tryCatch } from "../core/utils/try.utils.js";
|
|
23
24
|
import { exportTransforms } from "../translation/transforms/export-transforms.js";
|
|
24
25
|
import { exportContextFetcherAsync } from "./context/export-context-fetcher.js";
|
|
25
|
-
import type { ExportConfig, ExportContext, ExportItem } from "./export.models.js";
|
|
26
|
+
import type { ExportConfig, ExportContext, ExportItem, ExportItemVersion } from "./export.models.js";
|
|
26
27
|
|
|
27
28
|
export function exportManager(config: ExportConfig) {
|
|
28
29
|
const logger = config.logger ?? getDefaultLogger();
|
|
@@ -45,8 +46,8 @@ export function exportManager(config: ExportConfig) {
|
|
|
45
46
|
},
|
|
46
47
|
},
|
|
47
48
|
versions: exportItem.versions.map<MigrationItemVersion>((version) => {
|
|
48
|
-
|
|
49
|
-
elements: getMigrationElements(context, exportItem.contentType, version.languageVariant.elements),
|
|
49
|
+
const migrationItemVersion: MigrationItemVersion = {
|
|
50
|
+
elements: getMigrationElements(exportItem, version, context, exportItem.contentType, version.languageVariant.elements),
|
|
50
51
|
schedule: {
|
|
51
52
|
publish_time: version.languageVariant.schedule.publishTime ?? undefined,
|
|
52
53
|
publish_display_timezone: version.languageVariant.schedule.publishDisplayTimezone ?? undefined,
|
|
@@ -57,6 +58,8 @@ export function exportManager(config: ExportConfig) {
|
|
|
57
58
|
codename: version.workflowStepCodename,
|
|
58
59
|
},
|
|
59
60
|
};
|
|
61
|
+
|
|
62
|
+
return migrationItemVersion;
|
|
60
63
|
}),
|
|
61
64
|
};
|
|
62
65
|
|
|
@@ -64,6 +67,8 @@ export function exportManager(config: ExportConfig) {
|
|
|
64
67
|
};
|
|
65
68
|
|
|
66
69
|
const mapToMigrationComponent = (
|
|
70
|
+
exportItem: ExportItem,
|
|
71
|
+
exportItemVersion: ExportItemVersion,
|
|
67
72
|
context: ExportContext,
|
|
68
73
|
component: Readonly<ElementModels.ContentItemElementComponent>,
|
|
69
74
|
): MigrationComponent => {
|
|
@@ -83,13 +88,15 @@ export function exportManager(config: ExportConfig) {
|
|
|
83
88
|
codename: componentType.contentTypeCodename,
|
|
84
89
|
},
|
|
85
90
|
},
|
|
86
|
-
elements: getMigrationElements(context, componentType, component.elements),
|
|
91
|
+
elements: getMigrationElements(exportItem, exportItemVersion, context, componentType, component.elements),
|
|
87
92
|
};
|
|
88
93
|
|
|
89
94
|
return migrationItem;
|
|
90
95
|
};
|
|
91
96
|
|
|
92
97
|
const getMigrationElements = (
|
|
98
|
+
exportItem: ExportItem,
|
|
99
|
+
exportItemVersion: ExportItemVersion,
|
|
93
100
|
context: ExportContext,
|
|
94
101
|
contentType: FlattenedContentType,
|
|
95
102
|
elements: readonly Readonly<ElementModels.ContentItemElement>[],
|
|
@@ -114,6 +121,8 @@ export function exportManager(config: ExportConfig) {
|
|
|
114
121
|
model[typeElement.codename] = {
|
|
115
122
|
type: typeElement.type,
|
|
116
123
|
...getMigrationElementToStore({
|
|
124
|
+
exportItem: exportItem,
|
|
125
|
+
exportItemVersion: exportItemVersion,
|
|
117
126
|
context: context,
|
|
118
127
|
contentType: contentType,
|
|
119
128
|
exportElement: itemElement,
|
|
@@ -126,38 +135,46 @@ export function exportManager(config: ExportConfig) {
|
|
|
126
135
|
};
|
|
127
136
|
|
|
128
137
|
const getMigrationElementToStore = (data: {
|
|
138
|
+
readonly exportItem: ExportItem;
|
|
139
|
+
readonly exportItemVersion: ExportItemVersion;
|
|
129
140
|
readonly context: ExportContext;
|
|
130
141
|
readonly contentType: FlattenedContentType;
|
|
131
142
|
readonly typeElement: FlattenedContentTypeElement;
|
|
132
143
|
readonly exportElement: ElementModels.ContentItemElement;
|
|
133
144
|
}): MigrationElementTransformData => {
|
|
134
|
-
|
|
135
|
-
|
|
145
|
+
const {
|
|
146
|
+
success,
|
|
147
|
+
data: migrationElement,
|
|
148
|
+
error,
|
|
149
|
+
} = tryCatch(() =>
|
|
150
|
+
exportTransforms[data.typeElement.type]({
|
|
136
151
|
context: data.context,
|
|
137
152
|
typeElement: data.typeElement,
|
|
138
153
|
exportElement: {
|
|
139
|
-
components: data.exportElement.components.map((component) =>
|
|
154
|
+
components: data.exportElement.components.map((component) => {
|
|
155
|
+
return mapToMigrationComponent(data.exportItem, data.exportItemVersion, data.context, component);
|
|
156
|
+
}),
|
|
140
157
|
value: data.exportElement.value,
|
|
141
158
|
urlSlugMode: data.exportElement.mode,
|
|
142
159
|
displayTimezone: data.exportElement.display_timezone ?? undefined,
|
|
143
160
|
},
|
|
144
|
-
})
|
|
145
|
-
|
|
146
|
-
const errorData = extractErrorData(error);
|
|
147
|
-
let jsonValue = "n/a";
|
|
161
|
+
}),
|
|
162
|
+
);
|
|
148
163
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
} catch (jsonError) {
|
|
152
|
-
console.error(`Failed to convert json value`, jsonError);
|
|
153
|
-
}
|
|
164
|
+
if (!success) {
|
|
165
|
+
const errorData = extractErrorData(error);
|
|
154
166
|
|
|
155
|
-
throw new
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
167
|
+
throw new InvalidValueError({
|
|
168
|
+
element: data.typeElement,
|
|
169
|
+
contentType: data.contentType,
|
|
170
|
+
exportItem: data.exportItem,
|
|
171
|
+
exportItemVersion: data.exportItemVersion,
|
|
172
|
+
value: data.exportElement.value,
|
|
173
|
+
errorData: errorData,
|
|
174
|
+
});
|
|
160
175
|
}
|
|
176
|
+
|
|
177
|
+
return migrationElement;
|
|
161
178
|
};
|
|
162
179
|
|
|
163
180
|
const exportAssetsAsync = async (context: ExportContext): Promise<readonly Readonly<MigrationAsset>[]> => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kontent-ai/migration-toolkit",
|
|
3
|
-
"version": "3.0.0
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "This program can be used to import content related data into Kontent.ai from various sources. The included functionality enables the content & asset export/import from Kontent.ai environments.",
|
|
5
5
|
"preferGlobal": true,
|
|
6
6
|
"private": false,
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"tslib": "2.8.1",
|
|
88
88
|
"tsx": "4.20.6",
|
|
89
89
|
"typescript": "5.9.3",
|
|
90
|
-
"typescript-eslint": "8.
|
|
91
|
-
"vitest": "4.0.
|
|
90
|
+
"typescript-eslint": "8.48.0",
|
|
91
|
+
"vitest": "4.0.14"
|
|
92
92
|
}
|
|
93
93
|
}
|