@kontent-ai/migration-toolkit 2.2.2 → 2.4.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.
Files changed (87) hide show
  1. package/README.md +10 -9
  2. package/dist/es2022/core/logs/loggers.js +4 -1
  3. package/dist/es2022/core/logs/loggers.js.map +1 -1
  4. package/dist/es2022/core/models/core.models.d.ts +12 -0
  5. package/dist/es2022/core/models/log.models.d.ts +1 -1
  6. package/dist/es2022/core/models/migration.schema.d.ts +12 -12
  7. package/dist/es2022/core/models/migration.schema.js +2 -2
  8. package/dist/es2022/core/models/migration.schema.js.map +1 -1
  9. package/dist/es2022/core/utils/binary-data.utils.d.ts +4 -4
  10. package/dist/es2022/core/utils/binary-data.utils.js +2 -2
  11. package/dist/es2022/core/utils/binary-data.utils.js.map +1 -1
  12. package/dist/es2022/core/utils/error.utils.js +1 -1
  13. package/dist/es2022/core/utils/error.utils.js.map +1 -1
  14. package/dist/es2022/core/utils/global.utils.d.ts +3 -3
  15. package/dist/es2022/core/utils/global.utils.js +1 -1
  16. package/dist/es2022/core/utils/global.utils.js.map +1 -1
  17. package/dist/es2022/core/utils/http.utils.js +0 -3
  18. package/dist/es2022/core/utils/http.utils.js.map +1 -1
  19. package/dist/es2022/core/utils/processing-utils.d.ts +3 -3
  20. package/dist/es2022/core/utils/processing-utils.js +31 -4
  21. package/dist/es2022/core/utils/processing-utils.js.map +1 -1
  22. package/dist/es2022/export/context/export-context-fetcher.js +13 -7
  23. package/dist/es2022/export/context/export-context-fetcher.js.map +1 -1
  24. package/dist/es2022/export/export-manager.js +5 -4
  25. package/dist/es2022/export/export-manager.js.map +1 -1
  26. package/dist/es2022/file/file-manager.d.ts +3 -2
  27. package/dist/es2022/file/file-manager.js.map +1 -1
  28. package/dist/es2022/import/context/import-context-fetcher.js +14 -8
  29. package/dist/es2022/import/context/import-context-fetcher.js.map +1 -1
  30. package/dist/es2022/import/import-manager.d.ts +4 -0
  31. package/dist/es2022/import/import-manager.js +133 -4
  32. package/dist/es2022/import/import-manager.js.map +1 -1
  33. package/dist/es2022/import/import.models.d.ts +15 -5
  34. package/dist/es2022/import/importers/assets-importer.js.map +1 -1
  35. package/dist/es2022/import/importers/content-items-importer.d.ts +3 -3
  36. package/dist/es2022/import/importers/content-items-importer.js +20 -14
  37. package/dist/es2022/import/importers/content-items-importer.js.map +1 -1
  38. package/dist/es2022/import/importers/language-variant-importer.d.ts +4 -4
  39. package/dist/es2022/import/importers/language-variant-importer.js +4 -4
  40. package/dist/es2022/import/importers/language-variant-importer.js.map +1 -1
  41. package/dist/es2022/metadata.js +2 -2
  42. package/dist/es2022/node/cli/actions/import-action.js +3 -1
  43. package/dist/es2022/node/cli/actions/import-action.js.map +1 -1
  44. package/dist/es2022/toolkit/file.js +2 -2
  45. package/dist/es2022/toolkit/file.js.map +1 -1
  46. package/dist/es2022/toolkit/import.js +14 -2
  47. package/dist/es2022/toolkit/import.js.map +1 -1
  48. package/dist/es2022/translation/extraction/items-extraction.processor.d.ts +1 -1
  49. package/dist/es2022/translation/extraction/items-extraction.processor.js.map +1 -1
  50. package/dist/es2022/translation/helpers/rich-text.processor.d.ts +2 -2
  51. package/dist/es2022/translation/helpers/rich-text.processor.js +1 -1
  52. package/dist/es2022/translation/helpers/rich-text.processor.js.map +1 -1
  53. package/dist/es2022/zip/zip-manager.d.ts +2 -2
  54. package/dist/es2022/zip/zip-manager.js.map +1 -1
  55. package/dist/es2022/zip/zip-packager.js +3 -4
  56. package/dist/es2022/zip/zip-packager.js.map +1 -1
  57. package/dist/es2022/zip/zip-transformer.js.map +1 -1
  58. package/dist/es2022/zip/zip.models.d.ts +4 -4
  59. package/lib/core/logs/loggers.ts +5 -1
  60. package/lib/core/models/core.models.ts +16 -0
  61. package/lib/core/models/log.models.ts +1 -1
  62. package/lib/core/models/migration.schema.ts +2 -2
  63. package/lib/core/utils/binary-data.utils.ts +6 -6
  64. package/lib/core/utils/error.utils.ts +2 -2
  65. package/lib/core/utils/global.utils.ts +8 -5
  66. package/lib/core/utils/http.utils.ts +1 -4
  67. package/lib/core/utils/processing-utils.ts +48 -18
  68. package/lib/export/context/export-context-fetcher.ts +67 -60
  69. package/lib/export/export-manager.ts +58 -56
  70. package/lib/file/file-manager.ts +4 -3
  71. package/lib/import/context/import-context-fetcher.ts +18 -13
  72. package/lib/import/import-manager.ts +174 -10
  73. package/lib/import/import.models.ts +20 -4
  74. package/lib/import/importers/assets-importer.ts +3 -9
  75. package/lib/import/importers/content-items-importer.ts +27 -31
  76. package/lib/import/importers/language-variant-importer.ts +32 -34
  77. package/lib/metadata.ts +2 -2
  78. package/lib/node/cli/actions/import-action.ts +3 -1
  79. package/lib/toolkit/file.ts +2 -2
  80. package/lib/toolkit/import.ts +16 -2
  81. package/lib/translation/extraction/items-extraction.processor.ts +3 -3
  82. package/lib/translation/helpers/rich-text.processor.ts +4 -4
  83. package/lib/zip/zip-manager.ts +2 -2
  84. package/lib/zip/zip-packager.ts +3 -4
  85. package/lib/zip/zip-transformer.ts +1 -1
  86. package/lib/zip/zip.models.ts +3 -3
  87. package/package.json +19 -20
@@ -1,4 +1,4 @@
1
- import { Buffer } from 'buffer';
1
+ import { Buffer as BufferProxy } from 'buffer';
2
2
  import JSZip from 'jszip';
3
3
  import { Logger, MigrationData, getDefaultLogger } from '../core/index.js';
4
4
  import { zipPackager } from './zip-packager.js';
@@ -17,7 +17,7 @@ export function zipManager(logger?: Logger) {
17
17
  return await zipTransformer(zipPackager(new JSZip()), loggerToUse).transformAsync(migrationData);
18
18
  };
19
19
 
20
- const parseZipAsync = async (zipFile: Buffer): Promise<MigrationData> => {
20
+ const parseZipAsync = async (zipFile: BufferProxy): Promise<MigrationData> => {
21
21
  loggerToUse.log({
22
22
  type: 'info',
23
23
  message: `Parsing zip file`
@@ -1,4 +1,4 @@
1
- import { Buffer } from 'buffer';
1
+ import { Buffer as BufferProxy } from 'buffer';
2
2
  import chalk from 'chalk';
3
3
  import JSZip from 'jszip';
4
4
  import { match } from 'ts-pattern';
@@ -23,7 +23,7 @@ export function zipPackager(jsZip: JSZip): ZipPackager {
23
23
  (data) => data.size
24
24
  )
25
25
  .when(
26
- (data) => data instanceof Buffer,
26
+ (data) => data instanceof BufferProxy,
27
27
  (data) => data.byteLength
28
28
  )
29
29
  .otherwise(() => {
@@ -75,8 +75,7 @@ export function zipPackager(jsZip: JSZip): ZipPackager {
75
75
  return result;
76
76
  },
77
77
  async getBinaryDataAsync(filePath: string): Promise<FileBinaryData | undefined> {
78
- const binaryData = await jsZip.file(filePath)?.async(getZipOutputType());
79
- return binaryData;
78
+ return await jsZip.file(filePath)?.async(getZipOutputType());
80
79
  },
81
80
  async getFileContentAsync(filePath: string): Promise<string | undefined> {
82
81
  return await jsZip.file(filePath)?.async('string');
@@ -21,7 +21,7 @@ export function zipTransformer(zip: ZipPackager, logger?: Logger) {
21
21
  const assetsFilename: string = 'assets.json';
22
22
  const assetsBinaryFolderName: string = 'binary_data';
23
23
 
24
- const getAssetFolderConfig = (asset: MigrationAsset): { partialColder: string; fullPath: string } => {
24
+ const getAssetFolderConfig = (asset: MigrationAsset): { readonly partialColder: string; readonly fullPath: string } => {
25
25
  const codenamePartialFolder: string = asset.codename.slice(0, 2);
26
26
  return {
27
27
  partialColder: codenamePartialFolder,
@@ -1,13 +1,13 @@
1
- import { Buffer } from 'buffer';
1
+ import { Buffer as BufferProxy } from 'buffer';
2
2
  import { Logger } from '../core/index.js';
3
3
 
4
- export type FileBinaryData = Buffer | Blob;
4
+ export type FileBinaryData = BufferProxy | Blob;
5
5
  export type ZipCompressionLevel = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
6
6
 
7
7
  export type ZipPackager = {
8
8
  addFile(filePath: string, data: string | FileBinaryData): void;
9
9
  addFolder(name: string): ZipPackager;
10
- generateZipAsync(config: { logger?: Logger; compressionLevel?: ZipCompressionLevel }): Promise<FileBinaryData>;
10
+ generateZipAsync(config: { readonly logger?: Logger; readonly compressionLevel?: ZipCompressionLevel }): Promise<FileBinaryData>;
11
11
  getBinaryDataAsync(filePath: string): Promise<FileBinaryData | undefined>;
12
12
  getFileContentAsync(filePath: string): Promise<string | undefined>;
13
13
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kontent-ai/migration-toolkit",
3
- "version": "2.2.2",
4
- "description": "This program can be used to import content related data into Kontent.ai from various formats. Additionally, it can also be used to export Kontent.ai data using Delivery API.",
3
+ "version": "2.4.0",
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,
7
7
  "bin": {
@@ -20,7 +20,7 @@
20
20
  "type": "module",
21
21
  "directories": {},
22
22
  "scripts": {
23
- "test": "npm run test:all",
23
+ "test": "npm run test:unit",
24
24
  "release": "npm run lint && standard-version && npm run update:version",
25
25
  "release:major": "npm run lint && standard-version --release-as major && npm run update:version",
26
26
  "release:major:beta": "npm run lint && standard-version --prerelease --release-as major && npm run update:version",
@@ -29,7 +29,6 @@
29
29
  "publish:beta": "npm publish --tag=next",
30
30
  "build:es2022": "tsc --p tsconfig.es2022.json",
31
31
  "build": "npm run clean && npm run lint && npm run build:es2022",
32
- "test:all": "npm run build",
33
32
  "test:migrate": "cd scripts/test && tsx test-migrate.ts",
34
33
  "test:import": "cd scripts/test && tsx test-import.ts",
35
34
  "test:export": "cd scripts/test && tsx test-export.ts",
@@ -58,35 +57,35 @@
58
57
  "browser-or-node": "3.0.0",
59
58
  "buffer": "6.0.3",
60
59
  "bytes": "3.1.2",
61
- "chalk": "5.3.0",
60
+ "chalk": "5.4.1",
62
61
  "deep-equal": "2.2.3",
63
- "dotenv": "16.4.5",
62
+ "dotenv": "16.4.7",
64
63
  "jszip": "3.10.1",
65
- "mime": "4.0.4",
66
- "ora": "8.1.0",
67
- "p-limit": "6.1.0",
64
+ "mime": "4.0.6",
65
+ "ora": "8.1.1",
66
+ "p-limit": "6.2.0",
68
67
  "prompts": "2.4.2",
69
- "ts-pattern": "5.5.0",
68
+ "ts-pattern": "5.6.0",
70
69
  "yargs": "17.7.2",
71
- "zod": "3.23.8"
70
+ "zod": "3.24.1"
72
71
  },
73
72
  "devDependencies": {
74
- "@eslint/js": "9.13.0",
73
+ "@eslint/js": "9.17.0",
75
74
  "@types/browser-or-node": "1.3.2",
76
- "@types/bytes": "3.1.4",
75
+ "@types/bytes": "3.1.5",
77
76
  "@types/deep-equal": "1.0.4",
78
77
  "@types/eslint__js": "8.42.3",
79
- "@types/node": "22.8.2",
78
+ "@types/node": "22.10.3",
80
79
  "@types/prompts": "2.4.9",
81
80
  "@types/yargs": "17.0.33",
82
- "@typescript-eslint/eslint-plugin": "8.12.1",
83
- "@typescript-eslint/parser": "8.12.1",
84
- "eslint": "9.13.0",
81
+ "@typescript-eslint/eslint-plugin": "8.19.0",
82
+ "@typescript-eslint/parser": "8.19.0",
83
+ "eslint": "9.17.0",
85
84
  "standard-version": "9.5.0",
86
- "tslib": "2.8.0",
85
+ "tslib": "2.8.1",
87
86
  "tsx": "4.19.2",
88
87
  "typescript": "5.6.3",
89
- "typescript-eslint": "8.12.1",
90
- "vitest": "2.1.4"
88
+ "typescript-eslint": "8.19.0",
89
+ "vitest": "2.1.8"
91
90
  }
92
91
  }