@kontent-ai/migration-toolkit 2.9.0 → 2.9.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/dist/core/utils/global.utils.d.ts +7 -0
- package/dist/core/utils/global.utils.js +53 -0
- package/dist/core/utils/global.utils.js.map +1 -1
- package/dist/import/importers/language-variant-importer.js.map +1 -1
- package/dist/metadata.js +2 -2
- package/dist/toolkit/export.js +18 -1
- package/dist/toolkit/export.js.map +1 -1
- package/dist/toolkit/file.js +41 -10
- package/dist/toolkit/file.js.map +1 -1
- package/dist/toolkit/import.js +28 -11
- package/dist/toolkit/import.js.map +1 -1
- package/dist/toolkit/migrate.js +33 -15
- package/dist/toolkit/migrate.js.map +1 -1
- package/lib/core/utils/global.utils.ts +65 -0
- package/lib/import/importers/language-variant-importer.ts +13 -13
- package/lib/metadata.ts +2 -2
- package/lib/toolkit/export.ts +18 -1
- package/lib/toolkit/file.ts +40 -9
- package/lib/toolkit/import.ts +28 -11
- package/lib/toolkit/migrate.ts +34 -16
- package/package.json +2 -3
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import type { ITrackingEventData } from '@kontent-ai-consulting/tools-analytics';
|
|
1
2
|
import type { EnvContext } from '../models/core.models.js';
|
|
3
|
+
import type { Logger } from '../models/log.models.js';
|
|
2
4
|
export type Writeable<T> = {
|
|
3
5
|
-readonly [P in keyof T]: T[P];
|
|
4
6
|
};
|
|
@@ -11,3 +13,8 @@ export declare function exitProgram(data: {
|
|
|
11
13
|
}): never;
|
|
12
14
|
export declare function getCurrentEnvironment(): EnvContext;
|
|
13
15
|
export declare const defaultZipFilename: string;
|
|
16
|
+
export declare function executeWithTrackingAsync<TResult>(data: {
|
|
17
|
+
readonly func: () => Promise<TResult extends void ? void : Readonly<TResult>>;
|
|
18
|
+
readonly event: Readonly<ITrackingEventData>;
|
|
19
|
+
readonly logger?: Logger;
|
|
20
|
+
}): Promise<TResult extends void ? void : Readonly<TResult>>;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { getTrackingService } from '@kontent-ai-consulting/tools-analytics';
|
|
1
2
|
import { isBrowser, isNode, isWebWorker } from 'browser-or-node';
|
|
2
3
|
import { format } from 'bytes';
|
|
4
|
+
import { getDefaultLogger } from '../logs/loggers.js';
|
|
5
|
+
import { extractErrorData } from './error.utils.js';
|
|
3
6
|
export const isNotUndefined = (item) => item !== undefined;
|
|
4
7
|
export const isString = (value) => typeof value === 'string';
|
|
5
8
|
export const isArray = (value) => Array.isArray(value);
|
|
@@ -19,4 +22,54 @@ export function getCurrentEnvironment() {
|
|
|
19
22
|
throw Error(`Invalid current environment. This library can be used in node.js or in browsers.`);
|
|
20
23
|
}
|
|
21
24
|
export const defaultZipFilename = 'data.zip';
|
|
25
|
+
export async function executeWithTrackingAsync(data) {
|
|
26
|
+
const trackingService = getTrackingService();
|
|
27
|
+
const logger = data.logger ?? getDefaultLogger();
|
|
28
|
+
const event = await runTrackingFuncWithErrorHadlingAsync({
|
|
29
|
+
func: async () => {
|
|
30
|
+
return await trackingService.trackEventAsync(data.event);
|
|
31
|
+
},
|
|
32
|
+
logger: logger
|
|
33
|
+
});
|
|
34
|
+
try {
|
|
35
|
+
const result = await data.func();
|
|
36
|
+
if (event) {
|
|
37
|
+
await runTrackingFuncWithErrorHadlingAsync({
|
|
38
|
+
func: async () => {
|
|
39
|
+
await trackingService.setEventResultAsync({
|
|
40
|
+
eventId: event.eventId,
|
|
41
|
+
result: 'success'
|
|
42
|
+
});
|
|
43
|
+
},
|
|
44
|
+
logger: logger
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return result;
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
if (event) {
|
|
51
|
+
await runTrackingFuncWithErrorHadlingAsync({
|
|
52
|
+
func: async () => {
|
|
53
|
+
await trackingService.setEventResultAsync({
|
|
54
|
+
eventId: event.eventId,
|
|
55
|
+
result: 'fail'
|
|
56
|
+
});
|
|
57
|
+
},
|
|
58
|
+
logger: logger
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
throw error;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
async function runTrackingFuncWithErrorHadlingAsync(data) {
|
|
65
|
+
try {
|
|
66
|
+
return await data.func();
|
|
67
|
+
}
|
|
68
|
+
catch (trackingError) {
|
|
69
|
+
data.logger.log({
|
|
70
|
+
message: `Failed to track event. ${extractErrorData(trackingError).message}`,
|
|
71
|
+
type: 'warning'
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
22
75
|
//# sourceMappingURL=global.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/global.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"global.utils.js","sourceRoot":"","sources":["../../../lib/core/utils/global.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIpD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAI,IAAmB,EAAa,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC;AAExF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;AACvF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAI,KAAc,EAAqB,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEtF,MAAM,UAAU,WAAW,CAAC,KAAa;IACrC,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAkC;IAC1D,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,qBAAqB;IACjC,IAAI,MAAM,EAAE,CAAC;QACT,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;QAC3B,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,CAAC,kFAAkF,CAAC,CAAC;AACpG,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAW,UAAU,CAAC;AAErD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAU,IAIvD;IACG,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;IAEjD,MAAM,KAAK,GAAG,MAAM,oCAAoC,CAAC;QACrD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,OAAO,MAAM,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,EAAE,MAAM;KACjB,CAAC,CAAC;IAEH,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAEjC,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,oCAAoC,CAAC;gBACvC,IAAI,EAAE,KAAK,IAAI,EAAE;oBACb,MAAM,eAAe,CAAC,mBAAmB,CAAC;wBACtC,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,MAAM,EAAE,SAAS;qBACpB,CAAC,CAAC;gBACP,CAAC;gBACD,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;QACP,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,oCAAoC,CAAC;gBACvC,IAAI,EAAE,KAAK,IAAI,EAAE;oBACb,MAAM,eAAe,CAAC,mBAAmB,CAAC;wBACtC,OAAO,EAAE,KAAK,CAAC,OAAO;wBACtB,MAAM,EAAE,MAAM;qBACjB,CAAC,CAAC;gBACP,CAAC;gBACD,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;QACP,CAAC;QAED,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED,KAAK,UAAU,oCAAoC,CAAI,IAGtD;IACG,IAAI,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAAC,OAAO,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACZ,OAAO,EAAE,0BAA0B,gBAAgB,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;YAC5E,IAAI,EAAE,SAAS;SAClB,CAAC,CAAC;IACP,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"language-variant-importer.js","sourceRoot":"","sources":["../../../lib/import/importers/language-variant-importer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"language-variant-importer.js","sourceRoot":"","sources":["../../../lib/import/importers/language-variant-importer.ts"],"names":[],"mappings":"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"}
|
package/dist/metadata.js
CHANGED
package/dist/toolkit/export.js
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
|
+
import { executeWithTrackingAsync } from '../core/index.js';
|
|
1
2
|
import { exportManager } from '../export/index.js';
|
|
3
|
+
import { libMetadata } from '../metadata.js';
|
|
2
4
|
export async function exportAsync(config) {
|
|
3
|
-
return await
|
|
5
|
+
return await executeWithTrackingAsync({
|
|
6
|
+
event: {
|
|
7
|
+
tool: 'migrationToolkit',
|
|
8
|
+
package: {
|
|
9
|
+
name: libMetadata.name,
|
|
10
|
+
version: libMetadata.version
|
|
11
|
+
},
|
|
12
|
+
action: 'export',
|
|
13
|
+
relatedEnvironmentId: undefined,
|
|
14
|
+
details: {}
|
|
15
|
+
},
|
|
16
|
+
func: async () => {
|
|
17
|
+
return await exportManager(config).exportAsync();
|
|
18
|
+
},
|
|
19
|
+
logger: config.logger
|
|
20
|
+
});
|
|
4
21
|
}
|
|
5
22
|
//# sourceMappingURL=export.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../lib/toolkit/export.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../lib/toolkit/export.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB;IAClD,OAAO,MAAM,wBAAwB,CAAC;QAClC,KAAK,EAAE;YACH,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE;gBACL,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC/B;YACD,MAAM,EAAE,QAAQ;YAChB,oBAAoB,EAAE,SAAS;YAC/B,OAAO,EAAE,EAAE;SACd;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,OAAO,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,CAAC;QACD,MAAM,EAAE,MAAM,CAAC,MAAM;KACxB,CAAC,CAAC;AACP,CAAC"}
|
package/dist/toolkit/file.js
CHANGED
|
@@ -1,22 +1,53 @@
|
|
|
1
1
|
import { Buffer as BufferProxy } from 'buffer';
|
|
2
|
-
import { defaultZipFilename, getDefaultLogger } from '../core/index.js';
|
|
2
|
+
import { defaultZipFilename, executeWithTrackingAsync, getDefaultLogger } from '../core/index.js';
|
|
3
3
|
import { fileManager } from '../file/index.js';
|
|
4
|
+
import { libMetadata } from '../metadata.js';
|
|
4
5
|
import { zipManager } from '../zip/index.js';
|
|
5
6
|
export async function storeAsync(config) {
|
|
6
7
|
const logger = config.logger ?? getDefaultLogger();
|
|
7
8
|
const filename = config.filename ?? defaultZipFilename;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
await executeWithTrackingAsync({
|
|
10
|
+
event: {
|
|
11
|
+
tool: 'migrationToolkit',
|
|
12
|
+
package: {
|
|
13
|
+
name: libMetadata.name,
|
|
14
|
+
version: libMetadata.version
|
|
15
|
+
},
|
|
16
|
+
action: 'store',
|
|
17
|
+
relatedEnvironmentId: undefined,
|
|
18
|
+
details: {}
|
|
19
|
+
},
|
|
20
|
+
func: async () => {
|
|
21
|
+
const zipData = await zipManager(logger).createZipAsync(config.data);
|
|
22
|
+
if (zipData instanceof BufferProxy) {
|
|
23
|
+
await fileManager(logger).writeFileAsync(filename, zipData);
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
throw Error(`Cannot store '${filename}' on File system because the provided zip is not a Buffer`);
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
logger: config.logger
|
|
30
|
+
});
|
|
15
31
|
}
|
|
16
32
|
export async function extractAsync(config) {
|
|
17
33
|
const logger = config.logger ?? getDefaultLogger();
|
|
18
34
|
const filename = config.filename ?? defaultZipFilename;
|
|
19
|
-
|
|
20
|
-
|
|
35
|
+
return await executeWithTrackingAsync({
|
|
36
|
+
event: {
|
|
37
|
+
tool: 'migrationToolkit',
|
|
38
|
+
package: {
|
|
39
|
+
name: libMetadata.name,
|
|
40
|
+
version: libMetadata.version
|
|
41
|
+
},
|
|
42
|
+
action: 'extract',
|
|
43
|
+
relatedEnvironmentId: undefined,
|
|
44
|
+
details: {}
|
|
45
|
+
},
|
|
46
|
+
func: async () => {
|
|
47
|
+
const fileData = await fileManager(logger).loadFileAsync(filename);
|
|
48
|
+
return await zipManager(logger).parseZipAsync(fileData);
|
|
49
|
+
},
|
|
50
|
+
logger: config.logger
|
|
51
|
+
});
|
|
21
52
|
}
|
|
22
53
|
//# sourceMappingURL=file.js.map
|
package/dist/toolkit/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../lib/toolkit/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../lib/toolkit/file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAmB;IAChD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,kBAAkB,CAAC;IAEvD,MAAM,wBAAwB,CAAO;QACjC,KAAK,EAAE;YACH,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE;gBACL,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC/B;YACD,MAAM,EAAE,OAAO;YACf,oBAAoB,EAAE,SAAS;YAC/B,OAAO,EAAE,EAAE;SACd;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAErE,IAAI,OAAO,YAAY,WAAW,EAAE,CAAC;gBACjC,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACJ,MAAM,KAAK,CAAC,iBAAiB,QAAQ,2DAA2D,CAAC,CAAC;YACtG,CAAC;QACL,CAAC;QACD,MAAM,EAAE,MAAM,CAAC,MAAM;KACxB,CAAC,CAAC;AACP,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAqB;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,kBAAkB,CAAC;IAEvD,OAAO,MAAM,wBAAwB,CAAC;QAClC,KAAK,EAAE;YACH,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE;gBACL,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC/B;YACD,MAAM,EAAE,SAAS;YACjB,oBAAoB,EAAE,SAAS;YAC/B,OAAO,EAAE,EAAE;SACd;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACnE,OAAO,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC5D,CAAC;QACD,MAAM,EAAE,MAAM,CAAC,MAAM;KACxB,CAAC,CAAC;AACP,CAAC"}
|
package/dist/toolkit/import.js
CHANGED
|
@@ -1,17 +1,34 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { writeFile } from 'fs/promises';
|
|
3
|
+
import { executeWithTrackingAsync } from '../core/index.js';
|
|
3
4
|
import { importManager as _importManager } from '../import/index.js';
|
|
5
|
+
import { libMetadata } from '../metadata.js';
|
|
4
6
|
export async function importAsync(config) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
return await executeWithTrackingAsync({
|
|
8
|
+
event: {
|
|
9
|
+
tool: 'migrationToolkit',
|
|
10
|
+
package: {
|
|
11
|
+
name: libMetadata.name,
|
|
12
|
+
version: libMetadata.version
|
|
13
|
+
},
|
|
14
|
+
action: 'import',
|
|
15
|
+
relatedEnvironmentId: undefined,
|
|
16
|
+
details: {}
|
|
17
|
+
},
|
|
18
|
+
func: async () => {
|
|
19
|
+
const importManager = _importManager(config);
|
|
20
|
+
const importResult = await importManager.importAsync();
|
|
21
|
+
if (config.createReportFile) {
|
|
22
|
+
const reportFile = importManager.getReportFile(importResult);
|
|
23
|
+
await writeFile(reportFile.filename, reportFile.content);
|
|
24
|
+
config.logger?.log({
|
|
25
|
+
type: 'writeFs',
|
|
26
|
+
message: `Report '${chalk.yellow(reportFile.filename)}' was created`
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
return importResult;
|
|
30
|
+
},
|
|
31
|
+
logger: config.logger
|
|
32
|
+
});
|
|
16
33
|
}
|
|
17
34
|
//# sourceMappingURL=import.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../lib/toolkit/import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../lib/toolkit/import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB;IAClD,OAAO,MAAM,wBAAwB,CAAC;QAClC,KAAK,EAAE;YACH,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE;gBACL,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC/B;YACD,MAAM,EAAE,QAAQ;YAChB,oBAAoB,EAAE,SAAS;YAC/B,OAAO,EAAE,EAAE;SACd;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,YAAY,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC;YAEvD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;gBAC7D,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;gBACzD,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;oBACf,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,WAAW,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe;iBACvE,CAAC,CAAC;YACP,CAAC;YAED,OAAO,YAAY,CAAC;QACxB,CAAC;QACD,MAAM,EAAE,MAAM,CAAC,MAAM;KACxB,CAAC,CAAC;AACP,CAAC"}
|
package/dist/toolkit/migrate.js
CHANGED
|
@@ -1,22 +1,40 @@
|
|
|
1
|
-
import { getDefaultLogger } from '../core/index.js';
|
|
1
|
+
import { executeWithTrackingAsync, getDefaultLogger } from '../core/index.js';
|
|
2
|
+
import { libMetadata } from '../metadata.js';
|
|
2
3
|
import { exportAsync } from './export.js';
|
|
3
4
|
import { importAsync } from './import.js';
|
|
4
5
|
export async function migrateAsync(config) {
|
|
5
6
|
const logger = config.logger ?? getDefaultLogger();
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
return await executeWithTrackingAsync({
|
|
8
|
+
event: {
|
|
9
|
+
tool: 'migrationToolkit',
|
|
10
|
+
package: {
|
|
11
|
+
name: libMetadata.name,
|
|
12
|
+
version: libMetadata.version
|
|
13
|
+
},
|
|
14
|
+
action: 'migrate',
|
|
15
|
+
relatedEnvironmentId: undefined,
|
|
16
|
+
details: {
|
|
17
|
+
itemsCount: config.sourceEnvironment.items.length
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
func: async () => {
|
|
21
|
+
const migrationData = await exportAsync({
|
|
22
|
+
...config.sourceEnvironment,
|
|
23
|
+
logger: logger,
|
|
24
|
+
exportItems: config.sourceEnvironment.items
|
|
25
|
+
});
|
|
26
|
+
const importResult = await importAsync({
|
|
27
|
+
...config.targetEnvironment,
|
|
28
|
+
logger: logger,
|
|
29
|
+
data: migrationData,
|
|
30
|
+
externalIdGenerator: config.externalIdGenerator
|
|
31
|
+
});
|
|
32
|
+
return {
|
|
33
|
+
importResult,
|
|
34
|
+
migrationData
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
logger: config.logger
|
|
10
38
|
});
|
|
11
|
-
const importResult = await importAsync({
|
|
12
|
-
...config.targetEnvironment,
|
|
13
|
-
logger: logger,
|
|
14
|
-
data: migrationData,
|
|
15
|
-
externalIdGenerator: config.externalIdGenerator
|
|
16
|
-
});
|
|
17
|
-
return {
|
|
18
|
-
importResult,
|
|
19
|
-
migrationData
|
|
20
|
-
};
|
|
21
39
|
}
|
|
22
40
|
//# sourceMappingURL=migrate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../lib/toolkit/migrate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../lib/toolkit/migrate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAG9E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAmB1C,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAuB;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;IAEnD,OAAO,MAAM,wBAAwB,CAAC;QAClC,KAAK,EAAE;YACH,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE;gBACL,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC/B;YACD,MAAM,EAAE,SAAS;YACjB,oBAAoB,EAAE,SAAS;YAC/B,OAAO,EAAE;gBACL,UAAU,EAAE,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM;aACpD;SACJ;QACD,IAAI,EAAE,KAAK,IAAI,EAAE;YACb,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC;gBACpC,GAAG,MAAM,CAAC,iBAAiB;gBAC3B,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,MAAM,CAAC,iBAAiB,CAAC,KAAK;aAC9C,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC;gBACnC,GAAG,MAAM,CAAC,iBAAiB;gBAC3B,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,aAAa;gBACnB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;aAClD,CAAC,CAAC;YAEH,OAAO;gBACH,YAAY;gBACZ,aAAa;aAChB,CAAC;QACN,CAAC;QACD,MAAM,EAAE,MAAM,CAAC,MAAM;KACxB,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
+
import type { ITrackingEventData } from '@kontent-ai-consulting/tools-analytics';
|
|
2
|
+
import { getTrackingService } from '@kontent-ai-consulting/tools-analytics';
|
|
1
3
|
import { isBrowser, isNode, isWebWorker } from 'browser-or-node';
|
|
2
4
|
import { format } from 'bytes';
|
|
5
|
+
import { getDefaultLogger } from '../logs/loggers.js';
|
|
3
6
|
import type { EnvContext } from '../models/core.models.js';
|
|
7
|
+
import type { Logger } from '../models/log.models.js';
|
|
8
|
+
import { extractErrorData } from './error.utils.js';
|
|
4
9
|
|
|
5
10
|
export type Writeable<T> = { -readonly [P in keyof T]: T[P] };
|
|
6
11
|
|
|
@@ -30,4 +35,64 @@ export function getCurrentEnvironment(): EnvContext {
|
|
|
30
35
|
|
|
31
36
|
export const defaultZipFilename: string = 'data.zip';
|
|
32
37
|
|
|
38
|
+
export async function executeWithTrackingAsync<TResult>(data: {
|
|
39
|
+
readonly func: () => Promise<TResult extends void ? void : Readonly<TResult>>;
|
|
40
|
+
readonly event: Readonly<ITrackingEventData>;
|
|
41
|
+
readonly logger?: Logger;
|
|
42
|
+
}): Promise<TResult extends void ? void : Readonly<TResult>> {
|
|
43
|
+
const trackingService = getTrackingService();
|
|
44
|
+
const logger = data.logger ?? getDefaultLogger();
|
|
33
45
|
|
|
46
|
+
const event = await runTrackingFuncWithErrorHadlingAsync({
|
|
47
|
+
func: async () => {
|
|
48
|
+
return await trackingService.trackEventAsync(data.event);
|
|
49
|
+
},
|
|
50
|
+
logger: logger
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
try {
|
|
54
|
+
const result = await data.func();
|
|
55
|
+
|
|
56
|
+
if (event) {
|
|
57
|
+
await runTrackingFuncWithErrorHadlingAsync({
|
|
58
|
+
func: async () => {
|
|
59
|
+
await trackingService.setEventResultAsync({
|
|
60
|
+
eventId: event.eventId,
|
|
61
|
+
result: 'success'
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
logger: logger
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
return result;
|
|
69
|
+
} catch (error) {
|
|
70
|
+
if (event) {
|
|
71
|
+
await runTrackingFuncWithErrorHadlingAsync({
|
|
72
|
+
func: async () => {
|
|
73
|
+
await trackingService.setEventResultAsync({
|
|
74
|
+
eventId: event.eventId,
|
|
75
|
+
result: 'fail'
|
|
76
|
+
});
|
|
77
|
+
},
|
|
78
|
+
logger: logger
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
throw error;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
async function runTrackingFuncWithErrorHadlingAsync<T>(data: {
|
|
87
|
+
readonly func: () => Promise<T>;
|
|
88
|
+
readonly logger: Logger;
|
|
89
|
+
}): Promise<T | void> {
|
|
90
|
+
try {
|
|
91
|
+
return await data.func();
|
|
92
|
+
} catch (trackingError) {
|
|
93
|
+
data.logger.log({
|
|
94
|
+
message: `Failed to track event. ${extractErrorData(trackingError).message}`,
|
|
95
|
+
type: 'warning'
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -174,11 +174,11 @@ export function languageVariantImporter(config: {
|
|
|
174
174
|
// first import published version if it exists
|
|
175
175
|
const publishedLanguageVariant: Readonly<LanguageVariantModels.ContentItemLanguageVariant> | undefined = publishedVersion
|
|
176
176
|
? await importVersionAsync({
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
177
|
+
logSpinner: logSpinner,
|
|
178
|
+
migrationItem: migrationItem,
|
|
179
|
+
preparedContentItem: preparedContentItem,
|
|
180
|
+
migrationItemVersion: publishedVersion
|
|
181
|
+
})
|
|
182
182
|
: undefined;
|
|
183
183
|
|
|
184
184
|
// if target env contains published version & imported version not, unpublish it from the target env
|
|
@@ -194,12 +194,12 @@ export function languageVariantImporter(config: {
|
|
|
194
194
|
}
|
|
195
195
|
const draftLanguageVariant: Readonly<LanguageVariantModels.ContentItemLanguageVariant> | undefined = draftVersion
|
|
196
196
|
? await importVersionAsync({
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
197
|
+
logSpinner: logSpinner,
|
|
198
|
+
migrationItem: migrationItem,
|
|
199
|
+
preparedContentItem: preparedContentItem,
|
|
200
|
+
migrationItemVersion: draftVersion,
|
|
201
|
+
createNewVersion: publishedLanguageVariant ? true : false
|
|
202
|
+
})
|
|
203
203
|
: undefined;
|
|
204
204
|
|
|
205
205
|
return [publishedLanguageVariant, draftLanguageVariant].filter(isNotUndefined);
|
|
@@ -224,7 +224,7 @@ export function languageVariantImporter(config: {
|
|
|
224
224
|
// cancel scheduled unpublish if language variant is scheduled to be unpublished
|
|
225
225
|
await workflowImporter.cancelScheduledUnpublishAsync(changeWorkflowData);
|
|
226
226
|
})
|
|
227
|
-
.otherwise(() => {});
|
|
227
|
+
.otherwise(() => { });
|
|
228
228
|
};
|
|
229
229
|
|
|
230
230
|
const prepareTargetEnvironmentVariantForImportAsync = async (data: {
|
|
@@ -269,7 +269,7 @@ export function languageVariantImporter(config: {
|
|
|
269
269
|
// move to draft step if language variant is archived
|
|
270
270
|
await workflowImporter.moveToDraftStepAsync(changeWorkflowData);
|
|
271
271
|
})
|
|
272
|
-
.otherwise(() => {});
|
|
272
|
+
.otherwise(() => { });
|
|
273
273
|
};
|
|
274
274
|
|
|
275
275
|
const isPublishedWorkflowStep = (stepCodename: string, workflow: Readonly<WorkflowModels.Workflow>): boolean => {
|
package/lib/metadata.ts
CHANGED
package/lib/toolkit/export.ts
CHANGED
|
@@ -1,7 +1,24 @@
|
|
|
1
1
|
import type { MigrationData } from '../core/index.js';
|
|
2
|
+
import { executeWithTrackingAsync } from '../core/index.js';
|
|
2
3
|
import type { ExportConfig } from '../export/index.js';
|
|
3
4
|
import { exportManager } from '../export/index.js';
|
|
5
|
+
import { libMetadata } from '../metadata.js';
|
|
4
6
|
|
|
5
7
|
export async function exportAsync(config: ExportConfig): Promise<MigrationData> {
|
|
6
|
-
return await
|
|
8
|
+
return await executeWithTrackingAsync({
|
|
9
|
+
event: {
|
|
10
|
+
tool: 'migrationToolkit',
|
|
11
|
+
package: {
|
|
12
|
+
name: libMetadata.name,
|
|
13
|
+
version: libMetadata.version
|
|
14
|
+
},
|
|
15
|
+
action: 'export',
|
|
16
|
+
relatedEnvironmentId: undefined,
|
|
17
|
+
details: {}
|
|
18
|
+
},
|
|
19
|
+
func: async () => {
|
|
20
|
+
return await exportManager(config).exportAsync();
|
|
21
|
+
},
|
|
22
|
+
logger: config.logger
|
|
23
|
+
});
|
|
7
24
|
}
|
package/lib/toolkit/file.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Buffer as BufferProxy } from 'buffer';
|
|
2
2
|
import type { Logger, MigrationData } from '../core/index.js';
|
|
3
|
-
import { defaultZipFilename, getDefaultLogger } from '../core/index.js';
|
|
3
|
+
import { defaultZipFilename, executeWithTrackingAsync, getDefaultLogger } from '../core/index.js';
|
|
4
4
|
import { fileManager } from '../file/index.js';
|
|
5
|
+
import { libMetadata } from '../metadata.js';
|
|
5
6
|
import { zipManager } from '../zip/index.js';
|
|
6
7
|
|
|
7
8
|
export interface StoreConfig {
|
|
@@ -19,19 +20,49 @@ export async function storeAsync(config: StoreConfig): Promise<void> {
|
|
|
19
20
|
const logger = config.logger ?? getDefaultLogger();
|
|
20
21
|
const filename = config.filename ?? defaultZipFilename;
|
|
21
22
|
|
|
22
|
-
|
|
23
|
+
await executeWithTrackingAsync<void>({
|
|
24
|
+
event: {
|
|
25
|
+
tool: 'migrationToolkit',
|
|
26
|
+
package: {
|
|
27
|
+
name: libMetadata.name,
|
|
28
|
+
version: libMetadata.version
|
|
29
|
+
},
|
|
30
|
+
action: 'store',
|
|
31
|
+
relatedEnvironmentId: undefined,
|
|
32
|
+
details: {}
|
|
33
|
+
},
|
|
34
|
+
func: async () => {
|
|
35
|
+
const zipData = await zipManager(logger).createZipAsync(config.data);
|
|
23
36
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
37
|
+
if (zipData instanceof BufferProxy) {
|
|
38
|
+
await fileManager(logger).writeFileAsync(filename, zipData);
|
|
39
|
+
} else {
|
|
40
|
+
throw Error(`Cannot store '${filename}' on File system because the provided zip is not a Buffer`);
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
logger: config.logger
|
|
44
|
+
});
|
|
29
45
|
}
|
|
30
46
|
|
|
31
47
|
export async function extractAsync(config: ExtractConfig): Promise<MigrationData> {
|
|
32
48
|
const logger = config.logger ?? getDefaultLogger();
|
|
33
49
|
const filename = config.filename ?? defaultZipFilename;
|
|
34
50
|
|
|
35
|
-
|
|
36
|
-
|
|
51
|
+
return await executeWithTrackingAsync({
|
|
52
|
+
event: {
|
|
53
|
+
tool: 'migrationToolkit',
|
|
54
|
+
package: {
|
|
55
|
+
name: libMetadata.name,
|
|
56
|
+
version: libMetadata.version
|
|
57
|
+
},
|
|
58
|
+
action: 'extract',
|
|
59
|
+
relatedEnvironmentId: undefined,
|
|
60
|
+
details: {}
|
|
61
|
+
},
|
|
62
|
+
func: async () => {
|
|
63
|
+
const fileData = await fileManager(logger).loadFileAsync(filename);
|
|
64
|
+
return await zipManager(logger).parseZipAsync(fileData);
|
|
65
|
+
},
|
|
66
|
+
logger: config.logger
|
|
67
|
+
});
|
|
37
68
|
}
|
package/lib/toolkit/import.ts
CHANGED
|
@@ -1,20 +1,37 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { writeFile } from 'fs/promises';
|
|
3
|
+
import { executeWithTrackingAsync } from '../core/index.js';
|
|
3
4
|
import type { ImportConfig, ImportResult } from '../import/index.js';
|
|
4
5
|
import { importManager as _importManager } from '../import/index.js';
|
|
6
|
+
import { libMetadata } from '../metadata.js';
|
|
5
7
|
|
|
6
8
|
export async function importAsync(config: ImportConfig): Promise<ImportResult> {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
return await executeWithTrackingAsync({
|
|
10
|
+
event: {
|
|
11
|
+
tool: 'migrationToolkit',
|
|
12
|
+
package: {
|
|
13
|
+
name: libMetadata.name,
|
|
14
|
+
version: libMetadata.version
|
|
15
|
+
},
|
|
16
|
+
action: 'import',
|
|
17
|
+
relatedEnvironmentId: undefined,
|
|
18
|
+
details: {}
|
|
19
|
+
},
|
|
20
|
+
func: async () => {
|
|
21
|
+
const importManager = _importManager(config);
|
|
22
|
+
const importResult = await importManager.importAsync();
|
|
9
23
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
24
|
+
if (config.createReportFile) {
|
|
25
|
+
const reportFile = importManager.getReportFile(importResult);
|
|
26
|
+
await writeFile(reportFile.filename, reportFile.content);
|
|
27
|
+
config.logger?.log({
|
|
28
|
+
type: 'writeFs',
|
|
29
|
+
message: `Report '${chalk.yellow(reportFile.filename)}' was created`
|
|
30
|
+
});
|
|
31
|
+
}
|
|
18
32
|
|
|
19
|
-
|
|
33
|
+
return importResult;
|
|
34
|
+
},
|
|
35
|
+
logger: config.logger
|
|
36
|
+
});
|
|
20
37
|
}
|
package/lib/toolkit/migrate.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { IRetryStrategyOptions } from '@kontent-ai/core-sdk';
|
|
2
2
|
import type { ExternalIdGenerator, Logger, ManagementClientConfig, MigrationData } from '../core/index.js';
|
|
3
|
-
import { getDefaultLogger } from '../core/index.js';
|
|
3
|
+
import { executeWithTrackingAsync, getDefaultLogger } from '../core/index.js';
|
|
4
4
|
import type { SourceExportItem } from '../export/index.js';
|
|
5
5
|
import type { ImportResult } from '../import/index.js';
|
|
6
|
+
import { libMetadata } from '../metadata.js';
|
|
6
7
|
import { exportAsync } from './export.js';
|
|
7
8
|
import { importAsync } from './import.js';
|
|
8
9
|
|
|
@@ -26,21 +27,38 @@ export interface MigrationResult {
|
|
|
26
27
|
export async function migrateAsync(config: MigrationConfig): Promise<MigrationResult> {
|
|
27
28
|
const logger = config.logger ?? getDefaultLogger();
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
return await executeWithTrackingAsync({
|
|
31
|
+
event: {
|
|
32
|
+
tool: 'migrationToolkit',
|
|
33
|
+
package: {
|
|
34
|
+
name: libMetadata.name,
|
|
35
|
+
version: libMetadata.version
|
|
36
|
+
},
|
|
37
|
+
action: 'migrate',
|
|
38
|
+
relatedEnvironmentId: undefined,
|
|
39
|
+
details: {
|
|
40
|
+
itemsCount: config.sourceEnvironment.items.length
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
func: async () => {
|
|
44
|
+
const migrationData = await exportAsync({
|
|
45
|
+
...config.sourceEnvironment,
|
|
46
|
+
logger: logger,
|
|
47
|
+
exportItems: config.sourceEnvironment.items
|
|
48
|
+
});
|
|
34
49
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
50
|
+
const importResult = await importAsync({
|
|
51
|
+
...config.targetEnvironment,
|
|
52
|
+
logger: logger,
|
|
53
|
+
data: migrationData,
|
|
54
|
+
externalIdGenerator: config.externalIdGenerator
|
|
55
|
+
});
|
|
41
56
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
57
|
+
return {
|
|
58
|
+
importResult,
|
|
59
|
+
migrationData
|
|
60
|
+
};
|
|
61
|
+
},
|
|
62
|
+
logger: config.logger
|
|
63
|
+
});
|
|
46
64
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kontent-ai/migration-toolkit",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.1",
|
|
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,
|
|
@@ -50,6 +50,7 @@
|
|
|
50
50
|
],
|
|
51
51
|
"license": "MIT",
|
|
52
52
|
"dependencies": {
|
|
53
|
+
"@kontent-ai-consulting/tools-analytics": "0.0.9",
|
|
53
54
|
"@kontent-ai/management-sdk": "8.0.0",
|
|
54
55
|
"browser-or-node": "3.0.0",
|
|
55
56
|
"buffer": "6.0.3",
|
|
@@ -74,8 +75,6 @@
|
|
|
74
75
|
"@types/node": "24.10.0",
|
|
75
76
|
"@types/prompts": "2.4.9",
|
|
76
77
|
"@types/yargs": "17.0.34",
|
|
77
|
-
"@typescript-eslint/eslint-plugin": "8.46.4",
|
|
78
|
-
"@typescript-eslint/parser": "8.46.4",
|
|
79
78
|
"eslint": "9.39.1",
|
|
80
79
|
"standard-version": "9.5.0",
|
|
81
80
|
"tslib": "2.8.1",
|