@ama-openapi/core 0.0.0-placeholder.6 → 0.0.0-placeholder.8

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 (59) hide show
  1. package/package.json +5 -5
  2. package/renovate/default.json +10 -0
  3. package/schemas/manifest.schema.json +16 -7
  4. package/src/constants.d.mts +7 -4
  5. package/src/constants.d.mts.map +1 -1
  6. package/src/constants.mjs +8 -3
  7. package/src/constants.mjs.map +1 -1
  8. package/src/context.d.mts +11 -0
  9. package/src/context.d.mts.map +1 -0
  10. package/src/context.mjs +2 -0
  11. package/src/context.mjs.map +1 -0
  12. package/src/core/file-system/cleaner.d.mts +3 -2
  13. package/src/core/file-system/cleaner.d.mts.map +1 -1
  14. package/src/core/file-system/cleaner.mjs +6 -3
  15. package/src/core/file-system/cleaner.mjs.map +1 -1
  16. package/src/core/file-system/write-model.d.mts +3 -1
  17. package/src/core/file-system/write-model.d.mts.map +1 -1
  18. package/src/core/file-system/write-model.mjs +7 -3
  19. package/src/core/file-system/write-model.mjs.map +1 -1
  20. package/src/core/manifest/extract-dependency-models.d.mts +9 -8
  21. package/src/core/manifest/extract-dependency-models.d.mts.map +1 -1
  22. package/src/core/manifest/extract-dependency-models.mjs +22 -14
  23. package/src/core/manifest/extract-dependency-models.mjs.map +1 -1
  24. package/src/core/manifest/manifest.d.mts.map +1 -1
  25. package/src/core/manifest/manifest.mjs +6 -6
  26. package/src/core/manifest/manifest.mjs.map +1 -1
  27. package/src/core/process.d.mts +3 -3
  28. package/src/core/process.d.mts.map +1 -1
  29. package/src/core/process.mjs +6 -5
  30. package/src/core/process.mjs.map +1 -1
  31. package/src/core/serialization.mjs +2 -2
  32. package/src/core/serialization.mjs.map +1 -1
  33. package/src/core/transforms/add-annotation.d.mts +3 -3
  34. package/src/core/transforms/add-annotation.d.mts.map +1 -1
  35. package/src/core/transforms/add-annotation.mjs +4 -2
  36. package/src/core/transforms/add-annotation.mjs.map +1 -1
  37. package/src/core/transforms/apply-mask.d.mts +4 -4
  38. package/src/core/transforms/apply-mask.d.mts.map +1 -1
  39. package/src/core/transforms/apply-mask.mjs +131 -41
  40. package/src/core/transforms/apply-mask.mjs.map +1 -1
  41. package/src/core/transforms/rename.d.mts +3 -3
  42. package/src/core/transforms/rename.d.mts.map +1 -1
  43. package/src/core/transforms/rename.mjs +4 -2
  44. package/src/core/transforms/rename.mjs.map +1 -1
  45. package/src/core/transforms/to-reference.d.mts +3 -3
  46. package/src/core/transforms/to-reference.d.mts.map +1 -1
  47. package/src/core/transforms/to-reference.mjs +9 -5
  48. package/src/core/transforms/to-reference.mjs.map +1 -1
  49. package/src/core/transforms/transform.d.mts +7 -2
  50. package/src/core/transforms/transform.d.mts.map +1 -1
  51. package/src/core/transforms/transform.mjs +8 -1
  52. package/src/core/transforms/transform.mjs.map +1 -1
  53. package/src/core/transforms/update-references.d.mts +3 -8
  54. package/src/core/transforms/update-references.d.mts.map +1 -1
  55. package/src/core/transforms/update-references.mjs +34 -16
  56. package/src/core/transforms/update-references.mjs.map +1 -1
  57. package/src/main.d.mts.map +1 -1
  58. package/src/main.mjs +8 -4
  59. package/src/main.mjs.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ama-openapi/core",
3
- "version": "0.0.0-placeholder.6",
3
+ "version": "0.0.0-placeholder.8",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -62,10 +62,10 @@
62
62
  "@nx/eslint-plugin": "~21.6.0",
63
63
  "@nx/jest": "~21.6.0",
64
64
  "@nx/js": "~21.6.0",
65
- "@o3r/build-helpers": "~0.0.0-placeholder.6",
66
- "@o3r/eslint-plugin": "~0.0.0-placeholder.6",
67
- "@o3r/telemetry": "~0.0.0-placeholder.6",
68
- "@o3r/test-helpers": "~0.0.0-placeholder.6",
65
+ "@o3r/build-helpers": "0.0.0-placeholder.8",
66
+ "@o3r/eslint-plugin": "0.0.0-placeholder.8",
67
+ "@o3r/telemetry": "0.0.0-placeholder.8",
68
+ "@o3r/test-helpers": "0.0.0-placeholder.8",
69
69
  "@stylistic/eslint-plugin": "~5.5.0",
70
70
  "@types/jest": "~29.5.2",
71
71
  "@types/js-yaml": "^4.0.5",
@@ -3,5 +3,15 @@
3
3
  "description": "Default Renovate configuration for @ama-openapi packages",
4
4
  "extends": [
5
5
  "github>AmadeusITGroup/otter//tools/renovate/group/otter"
6
+ ],
7
+ "packageRules": [
8
+ {
9
+ "matchPackageNames": [
10
+ "/^@ama-openapi/",
11
+ "/^@redocly/"
12
+ ],
13
+ "groupName": "Build Tools dependencies",
14
+ "groupSlug": "build-tools-dependencies"
15
+ }
6
16
  ]
7
17
  }
@@ -33,11 +33,19 @@
33
33
  },
34
34
  "titleRename": {
35
35
  "type": "string",
36
- "description": "Rename the model title. The keyword `$1` can be used to refer to original name (ex: a prefix would be `myPrefix_$1`)"
36
+ "description": "Rename the model title. The keyword `$1` can be used to refer to original name (ex: a prefix would be `myPrefix_$1`)",
37
+ "examples": [
38
+ "myPrefix_$1",
39
+ "myModel"
40
+ ]
37
41
  },
38
42
  "fileRename": {
39
43
  "type": "string",
40
- "description": "Rename the outputted file (to be specified without extension)."
44
+ "description": "Rename the outputted file. The keyword `$1` can be used to refer to original name (ex: a prefix would be `my-prefix-$1`)",
45
+ "examples": [
46
+ "my-prefix-$1",
47
+ "myModel.v1.yaml"
48
+ ]
41
49
  }
42
50
  },
43
51
  "additionalProperties": false,
@@ -58,7 +66,7 @@
58
66
  {
59
67
  "path": "models/ExampleModel.v1.yaml",
60
68
  "transform": {
61
- "mask": { "data": true },
69
+ "mask": { "properties": { "field": true } },
62
70
  "fileRename": "MyPrefix_$1"
63
71
  }
64
72
  }
@@ -67,19 +75,19 @@
67
75
  {
68
76
  "type": "boolean",
69
77
  "default": true,
70
- "description": "Include the default model from the artifact"
78
+ "description": "Include the default model exposed by the artifact"
71
79
  },
72
80
  {
73
81
  "type": "string",
74
- "description": "Path to the model to include as is"
82
+ "description": "Path to the specific model to include as is. The path is relative to the artifact root (e.g., 'models/ExampleModel.v1.yaml')"
75
83
  },
76
84
  {
77
85
  "type": "object",
78
- "description": "Model definition within a dependency",
86
+ "description": "Detailed model inclusion with optional transformations to apply",
79
87
  "properties": {
80
88
  "path": {
81
89
  "type": "string",
82
- "description": "Path to the model in the artifact"
90
+ "description": "Path to the specific model to include as is. The path is relative to the artifact root (e.g., 'models/ExampleModel.v1.yaml')"
83
91
  },
84
92
  "transform": {
85
93
  "oneOf": [
@@ -88,6 +96,7 @@
88
96
  },
89
97
  {
90
98
  "type": "array",
99
+ "description": "List of transforms to apply in sequence. Each transform will result to a new model being created in the output.",
91
100
  "items": {
92
101
  "$ref": "#/definitions/transform"
93
102
  }
@@ -1,15 +1,18 @@
1
1
  /** Directory containing the extracted module */
2
2
  export declare const OUTPUT_DIRECTORY = "models_external";
3
+ export declare const SUB_MASK_DIRECTORY = "sub-masks";
3
4
  /** Default manifest filenames to look for */
4
- export declare const DEFAULT_MANIFEST_FILENAMES: readonly ["ama-openapi.manifest.json", "ama-openapi.manifest.yaml", "openapi.manifest.json", "openapi.manifest.yaml", "package.json"];
5
+ export declare const DEFAULT_MANIFEST_FILENAMES: readonly ["ama-openapi.manifest.json", "ama-openapi.manifest.yaml", "ama-openapi.manifest.yml", "openapi.manifest.json", "openapi.manifest.yaml", "openapi.manifest.yml", "package.json"];
5
6
  /** Key to mark masked properties */
6
7
  export declare const MASKED_PROPERTY_KEY = "x-internal-masked";
7
8
  /** Key to mark touched properties */
8
9
  export declare const TOUCHED_PROPERTY_KEY = "x-internal-touched";
9
- /** Key to indicate the source of the model */
10
+ /** Key to indicate the source of the model (e.g: `<package>/<model-path>`) */
10
11
  export declare const SOURCE_PROPERTY_KEY = "x-internal-source";
11
12
  /** Key to indicate the version of the model */
12
13
  export declare const VERSION_PROPERTY_KEY = "x-internal-version";
13
- /** Key to indicate reference rewrites */
14
- export declare const REF_REWRITE_PROPERTY_KEY = "x-internal-reference-rewrite";
14
+ /** Key to indicate the reference is rewritten */
15
+ export declare const REF_REWRITTEN_PROPERTY_KEY = "x-internal-reference-rewritten";
16
+ /** Key to indicate generated $ref references */
17
+ export declare const GENERATED_REF_PROPERTY_KEY = "x-internal-reference-generated";
15
18
  //# sourceMappingURL=constants.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../src/constants.mts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAElD,6CAA6C;AAC7C,eAAO,MAAM,0BAA0B,uIAM7B,CAAC;AAIX,oCAAoC;AACpC,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AACvD,qCAAqC;AACrC,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,8CAA8C;AAC9C,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AACvD,+CAA+C;AAC/C,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,yCAAyC;AACzC,eAAO,MAAM,wBAAwB,iCAAiC,CAAC"}
1
+ {"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../src/constants.mts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAElD,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAE9C,6CAA6C;AAC7C,eAAO,MAAM,0BAA0B,2LAQ7B,CAAC;AAIX,oCAAoC;AACpC,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AACvD,qCAAqC;AACrC,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,8EAA8E;AAC9E,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AACvD,+CAA+C;AAC/C,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AACzD,iDAAiD;AACjD,eAAO,MAAM,0BAA0B,mCAAmC,CAAC;AAC3E,gDAAgD;AAChD,eAAO,MAAM,0BAA0B,mCAAmC,CAAC"}
package/src/constants.mjs CHANGED
@@ -1,11 +1,14 @@
1
1
  /** Directory containing the extracted module */
2
2
  export const OUTPUT_DIRECTORY = 'models_external';
3
+ export const SUB_MASK_DIRECTORY = 'sub-masks';
3
4
  /** Default manifest filenames to look for */
4
5
  export const DEFAULT_MANIFEST_FILENAMES = [
5
6
  'ama-openapi.manifest.json',
6
7
  'ama-openapi.manifest.yaml',
8
+ 'ama-openapi.manifest.yml',
7
9
  'openapi.manifest.json',
8
10
  'openapi.manifest.yaml',
11
+ 'openapi.manifest.yml',
9
12
  'package.json'
10
13
  ];
11
14
  // Internal property keys :
@@ -13,10 +16,12 @@ export const DEFAULT_MANIFEST_FILENAMES = [
13
16
  export const MASKED_PROPERTY_KEY = 'x-internal-masked';
14
17
  /** Key to mark touched properties */
15
18
  export const TOUCHED_PROPERTY_KEY = 'x-internal-touched';
16
- /** Key to indicate the source of the model */
19
+ /** Key to indicate the source of the model (e.g: `<package>/<model-path>`) */
17
20
  export const SOURCE_PROPERTY_KEY = 'x-internal-source';
18
21
  /** Key to indicate the version of the model */
19
22
  export const VERSION_PROPERTY_KEY = 'x-internal-version';
20
- /** Key to indicate reference rewrites */
21
- export const REF_REWRITE_PROPERTY_KEY = 'x-internal-reference-rewrite';
23
+ /** Key to indicate the reference is rewritten */
24
+ export const REF_REWRITTEN_PROPERTY_KEY = 'x-internal-reference-rewritten';
25
+ /** Key to indicate generated $ref references */
26
+ export const GENERATED_REF_PROPERTY_KEY = 'x-internal-reference-generated';
22
27
  //# sourceMappingURL=constants.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../src/constants.mts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAElD,6CAA6C;AAC7C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,2BAA2B;IAC3B,2BAA2B;IAC3B,uBAAuB;IACvB,uBAAuB;IACvB,cAAc;CACN,CAAC;AAEX,2BAA2B;AAE3B,oCAAoC;AACpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AACvD,qCAAqC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AACzD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AACvD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AACzD,yCAAyC;AACzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,8BAA8B,CAAC"}
1
+ {"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../src/constants.mts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAElD,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAE9C,6CAA6C;AAC7C,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,2BAA2B;IAC3B,2BAA2B;IAC3B,0BAA0B;IAC1B,uBAAuB;IACvB,uBAAuB;IACvB,sBAAsB;IACtB,cAAc;CACN,CAAC;AAEX,2BAA2B;AAE3B,oCAAoC;AACpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AACvD,qCAAqC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AACzD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AACvD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AACzD,iDAAiD;AACjD,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;AAC3E,gDAAgD;AAChD,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { Logger } from './logger.mjs';
2
+ /**
3
+ * Context interface for AMA OpenAPI processing
4
+ */
5
+ export interface Context {
6
+ /** Current working directory */
7
+ cwd: string;
8
+ /** Logger instance */
9
+ logger?: Logger;
10
+ }
11
+ //# sourceMappingURL=context.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.mts","sourceRoot":"","sources":["../../src/context.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,gCAAgC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=context.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.mjs","sourceRoot":"","sources":["../../src/context.mts"],"names":[],"mappings":""}
@@ -1,6 +1,7 @@
1
+ import type { Context } from '../../context.mjs';
1
2
  /**
2
3
  * Clean the dependency output directory
3
- * @param cwd
4
+ * @param context
4
5
  */
5
- export declare const cleanOutputDirectory: (cwd: string) => Promise<void>;
6
+ export declare const cleanOutputDirectory: (context: Context) => Promise<void>;
6
7
  //# sourceMappingURL=cleaner.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cleaner.d.mts","sourceRoot":"","sources":["../../../../src/core/file-system/cleaner.mts"],"names":[],"mappings":"AAUA;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,KAAK,MAAM,kBAE/C,CAAC"}
1
+ {"version":3,"file":"cleaner.d.mts","sourceRoot":"","sources":["../../../../src/core/file-system/cleaner.mts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAE3B;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,SAAS,OAAO,kBAKpD,CAAC"}
@@ -3,9 +3,12 @@ import { resolve, } from 'node:path';
3
3
  import { OUTPUT_DIRECTORY, } from '../../constants.mjs';
4
4
  /**
5
5
  * Clean the dependency output directory
6
- * @param cwd
6
+ * @param context
7
7
  */
8
- export const cleanOutputDirectory = (cwd) => {
9
- return fs.rm(resolve(cwd, OUTPUT_DIRECTORY), { force: true, recursive: true });
8
+ export const cleanOutputDirectory = (context) => {
9
+ const { cwd, logger } = context;
10
+ const outputDirectory = resolve(cwd, OUTPUT_DIRECTORY);
11
+ logger?.debug?.(`Removing directory ${outputDirectory}`);
12
+ return fs.rm(outputDirectory, { force: true, recursive: true });
10
13
  };
11
14
  //# sourceMappingURL=cleaner.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cleaner.mjs","sourceRoot":"","sources":["../../../../src/core/file-system/cleaner.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,OAAO,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAE7B;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAE,EAAE;IAClD,OAAO,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACjF,CAAC,CAAC"}
1
+ {"version":3,"file":"cleaner.mjs","sourceRoot":"","sources":["../../../../src/core/file-system/cleaner.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,OAAO,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAK7B;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAgB,EAAE,EAAE;IACvD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IACvD,MAAM,EAAE,KAAK,EAAE,CAAC,sBAAsB,eAAe,EAAE,CAAC,CAAC;IACzD,OAAO,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC"}
@@ -1,7 +1,9 @@
1
+ import type { Context } from '../../context.mjs';
1
2
  import type { RetrievedDependencyModel } from '../manifest/extract-dependency-models.mjs';
2
3
  /**
3
4
  * Write the model file in the dependencies folder.
4
5
  * @param retrievedModel
6
+ * @param context
5
7
  */
6
- export declare const writeModelFile: (retrievedModel: RetrievedDependencyModel) => Promise<void>;
8
+ export declare const writeModelFile: (retrievedModel: RetrievedDependencyModel, context: Context) => Promise<void>;
7
9
  //# sourceMappingURL=write-model.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"write-model.d.mts","sourceRoot":"","sources":["../../../../src/core/file-system/write-model.mts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAU,gBAAgB,wBAAwB,kBAS5E,CAAC"}
1
+ {"version":3,"file":"write-model.d.mts","sourceRoot":"","sources":["../../../../src/core/file-system/write-model.mts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AAEnD;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAU,gBAAgB,wBAAwB,EAAE,SAAS,OAAO,kBAY9F,CAAC"}
@@ -3,14 +3,18 @@ import { dirname, } from 'node:path';
3
3
  /**
4
4
  * Write the model file in the dependencies folder.
5
5
  * @param retrievedModel
6
+ * @param context
6
7
  */
7
- export const writeModelFile = async (retrievedModel) => {
8
+ export const writeModelFile = async (retrievedModel, context) => {
8
9
  const { outputFilePath, content } = retrievedModel;
10
+ const { logger } = context;
11
+ const directory = dirname(outputFilePath);
9
12
  try {
10
- await fs.mkdir(dirname(outputFilePath), { recursive: true });
13
+ logger?.debug?.(`Creating directory for model file at ${directory}`);
14
+ await fs.mkdir(directory, { recursive: true });
11
15
  }
12
16
  catch {
13
- // ignore folder creation failure because it can be due to existing one. If not the next command will fail.
17
+ logger?.debug?.(`Directory ${directory} may already exist, continuing...`);
14
18
  }
15
19
  await fs.writeFile(outputFilePath, content, { encoding: 'utf8' });
16
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"write-model.mjs","sourceRoot":"","sources":["../../../../src/core/file-system/write-model.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,OAAO,GACR,MAAM,WAAW,CAAC;AAKnB;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,cAAwC,EAAE,EAAE;IAC/E,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,2GAA2G;IAC7G,CAAC;IAED,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;AACpE,CAAC,CAAC"}
1
+ {"version":3,"file":"write-model.mjs","sourceRoot":"","sources":["../../../../src/core/file-system/write-model.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,OAAO,GACR,MAAM,WAAW,CAAC;AAQnB;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,cAAwC,EAAE,OAAgB,EAAE,EAAE;IACjG,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC;IACnD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,EAAE,KAAK,EAAE,CAAC,wCAAwC,SAAS,EAAE,CAAC,CAAC;QACrE,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,EAAE,KAAK,EAAE,CAAC,aAAa,SAAS,mCAAmC,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;AACpE,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Logger } from '../../logger.mjs';
1
+ import type { Context } from '../../context.mjs';
2
2
  import type { Manifest, Model, Transform } from './manifest.mjs';
3
3
  /**
4
4
  * Extracted dependency model information
@@ -16,8 +16,10 @@ export interface RetrievedDependencyModel {
16
16
  model: Model & {
17
17
  path: string;
18
18
  };
19
- /** Indicates if the model file is a JSON file */
20
- isJson: boolean;
19
+ /** Indicates if the input model file is a JSON file */
20
+ isInputJson: boolean;
21
+ /** Indicates if the output model file is a JSON file */
22
+ isOutputJson: boolean;
21
23
  /** Absolute path to the artifact root folder */
22
24
  artifactBasePath: string;
23
25
  /** Absolute path to the output for the generated file */
@@ -27,18 +29,17 @@ export interface RetrievedDependencyModel {
27
29
  }
28
30
  /**
29
31
  * Extract dependency model given full model definition
30
- * @param cwd
31
32
  * @param artifactName
32
33
  * @param model
33
34
  * @param transformPromise
35
+ * @param context
34
36
  * @param outputDirectory
35
37
  */
36
- export declare const extractDependencyModelsObject: (cwd: string, artifactName: string, model: Model, transformPromise: Promise<Transform | undefined>, outputDirectory?: string) => Promise<RetrievedDependencyModel>;
38
+ export declare const extractDependencyModelsObject: (artifactName: string, model: Model, transformPromise: Promise<Transform | undefined>, context: Context, outputDirectory?: string) => Promise<RetrievedDependencyModel>;
37
39
  /**
38
40
  * Extract dependency models from the manifest
39
- * @param cwd
40
41
  * @param manifest
41
- * @param _logger
42
+ * @param context
42
43
  */
43
- export declare const extractDependencyModels: (cwd: string, manifest: Manifest, _logger?: Logger) => Promise<RetrievedDependencyModel>[];
44
+ export declare const extractDependencyModels: (manifest: Manifest, context: Context) => Promise<RetrievedDependencyModel>[];
44
45
  //# sourceMappingURL=extract-dependency-models.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-dependency-models.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACV,MAAM,gBAAgB,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,KAAK,EAAE,KAAK,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB;IACpB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAiED;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,GACxC,KAAK,MAAM,EACX,cAAc,MAAM,EACpB,OAAO,KAAK,EACZ,kBAAkB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,EAChD,wBAAkC,KAAG,OAAO,CAAC,wBAAwB,CA2BtE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAAI,KAAK,MAAM,EAAE,UAAU,QAAQ,EAAE,UAAU,MAAM,wCAUxF,CAAC"}
1
+ {"version":3,"file":"extract-dependency-models.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAO3B,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACV,MAAM,gBAAgB,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,KAAK,EAAE,KAAK,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,uDAAuD;IACvD,WAAW,EAAE,OAAO,CAAC;IACrB,wDAAwD;IACxD,YAAY,EAAE,OAAO,CAAC;IACtB,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB;IACpB,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAoED;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B,GACxC,cAAc,MAAM,EACpB,OAAO,KAAK,EACZ,kBAAkB,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,EAChD,SAAS,OAAO,EAChB,wBAAkC,KAAG,OAAO,CAAC,wBAAwB,CA8BtE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,QAAQ,EAAE,SAAS,OAAO,wCAa3E,CAAC"}
@@ -4,7 +4,6 @@ import { basename, dirname, extname, join, resolve, } from 'node:path';
4
4
  import { load, } from 'js-yaml';
5
5
  import { OUTPUT_DIRECTORY, } from '../../constants.mjs';
6
6
  import { isJsonFile, } from '../file-system/parse-file.mjs';
7
- const require = createRequire(import.meta.url);
8
7
  /**
9
8
  * Sanitize the package path to be used in file system
10
9
  * @param artifactName
@@ -34,9 +33,12 @@ const retrieveTransform = async (cwd, transform) => {
34
33
  * @param cwd
35
34
  * @param artifactName
36
35
  * @param modelName
36
+ * @param logger
37
37
  * @param outputDirectory
38
38
  */
39
- const extractDependencyModelsSimple = async (cwd, artifactName, modelName, outputDirectory = OUTPUT_DIRECTORY) => {
39
+ const extractDependencyModelsSimple = async (cwd, artifactName, modelName, logger, outputDirectory = OUTPUT_DIRECTORY) => {
40
+ logger?.debug?.(`extracting model ${modelName} from ${outputDirectory}`);
41
+ const require = createRequire(resolve(cwd, 'package.json'));
40
42
  const artifactPackageJson = require.resolve(`${artifactName}/package.json`);
41
43
  const artifactBasePath = dirname(artifactPackageJson);
42
44
  const modelPath = typeof modelName === 'string' ? join(artifactBasePath, modelName) : require.resolve(artifactName);
@@ -55,27 +57,30 @@ const extractDependencyModelsSimple = async (cwd, artifactName, modelName, outpu
55
57
  model: {
56
58
  path
57
59
  },
58
- isJson: isJsonFile(modelPath)
60
+ isInputJson: isJsonFile(modelPath),
61
+ isOutputJson: isJsonFile(outputFilePath)
59
62
  };
60
63
  };
61
64
  /**
62
65
  * Extract dependency model given full model definition
63
- * @param cwd
64
66
  * @param artifactName
65
67
  * @param model
66
68
  * @param transformPromise
69
+ * @param context
67
70
  * @param outputDirectory
68
71
  */
69
- export const extractDependencyModelsObject = async (cwd, artifactName, model, transformPromise, outputDirectory = OUTPUT_DIRECTORY) => {
72
+ export const extractDependencyModelsObject = async (artifactName, model, transformPromise, context, outputDirectory = OUTPUT_DIRECTORY) => {
73
+ const { cwd, logger } = context;
74
+ const require = createRequire(resolve(cwd, 'package.json'));
70
75
  const transform = await transformPromise;
71
76
  const artifactPackageJson = require.resolve(`${artifactName}/package.json`);
72
77
  const artifactBasePath = dirname(artifactPackageJson);
73
78
  const modelPath = model.path ? join(artifactBasePath, model.path) : require.resolve(artifactName);
74
79
  const version = await fs.readFile(artifactPackageJson, { encoding: 'utf8' }).then((data) => JSON.parse(data).version || 'latest');
75
80
  const content = await fs.readFile(modelPath, { encoding: 'utf8' });
81
+ logger?.debug?.(`extracting model ${modelPath} from ${outputDirectory}`);
76
82
  const path = model.path || require.resolve(artifactName).split(artifactName)[1];
77
- const fileExtension = extname(path);
78
- const replaceName = transform?.fileRename && path.replace(new RegExp(`(${basename(path, fileExtension)})${fileExtension}$`), transform.fileRename + fileExtension);
83
+ const replaceName = transform?.fileRename && path.replace(new RegExp(`(${basename(path).replaceAll('.', '\\.')})$`), transform.fileRename);
79
84
  const fileNameOutput = replaceName || path;
80
85
  const outputFilePath = resolve(cwd, outputDirectory, sanitizePackagePath(artifactName), fileNameOutput);
81
86
  return {
@@ -90,24 +95,27 @@ export const extractDependencyModelsObject = async (cwd, artifactName, model, tr
90
95
  ...model,
91
96
  path
92
97
  },
93
- isJson: isJsonFile(modelPath)
98
+ isInputJson: isJsonFile(modelPath),
99
+ isOutputJson: isJsonFile(outputFilePath)
94
100
  };
95
101
  };
96
102
  /**
97
103
  * Extract dependency models from the manifest
98
- * @param cwd
99
104
  * @param manifest
100
- * @param _logger
105
+ * @param context
101
106
  */
102
- export const extractDependencyModels = (cwd, manifest, _logger) => {
107
+ export const extractDependencyModels = (manifest, context) => {
108
+ const { logger, cwd } = context;
109
+ logger?.info(`${Object.keys(manifest.models).length} dependencies models found in the manifest`);
110
+ logger?.debug?.('Extracting information from the manifest configuration: ', manifest);
103
111
  return Object.entries(manifest.models).flatMap(([dependencyName, modelDefinition]) => {
104
112
  const models = Array.isArray(modelDefinition) ? modelDefinition : [modelDefinition];
105
113
  return models
106
114
  .flatMap((model) => typeof model === 'string' || typeof model === 'boolean'
107
- ? [extractDependencyModelsSimple(cwd, dependencyName, model)]
115
+ ? [extractDependencyModelsSimple(cwd, dependencyName, model, logger)]
108
116
  : (Array.isArray(model.transform)
109
- ? (model.transform.length > 0 ? model.transform : [undefined]).map((transform) => extractDependencyModelsObject(cwd, dependencyName, model, retrieveTransform(cwd, transform)))
110
- : [extractDependencyModelsObject(cwd, dependencyName, model, retrieveTransform(cwd, model.transform))]));
117
+ ? (model.transform.length > 0 ? model.transform : [undefined]).map((transform) => extractDependencyModelsObject(dependencyName, model, retrieveTransform(cwd, transform), context))
118
+ : [extractDependencyModelsObject(dependencyName, model, retrieveTransform(cwd, model.transform), context)]));
111
119
  });
112
120
  };
113
121
  //# sourceMappingURL=extract-dependency-models.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-dependency-models.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extract-dependency-models.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,WAAW,CAAC;AAInB,OAAO,KAAK,EACV,MAAM,EACP,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,oBAAoB;IACpB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,KAAK,oBAAoB,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,CAAC;CAC3D;AAED,2CAA2C;AAC3C,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AAE3D,0BAA0B;AAC1B,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,CAAC,CAAC;AAEjF,8BAA8B;AAC9B,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA2BxD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,oBAAoB,MAAM,EAAE,SAAQ,MAAgB,KAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAoBzH,CAAC"}
1
+ {"version":3,"file":"manifest.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,WAAW,CAAC;AAInB,OAAO,KAAK,EACV,MAAM,EACP,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,oBAAoB;IACpB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,KAAK,oBAAoB,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,CAAC;CAC3D;AAED,2CAA2C;AAC3C,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AAE3D,0BAA0B;AAC1B,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,CAAC,CAAC;AAEjF,8BAA8B;AAC9B,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA2BxD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,oBAAoB,MAAM,EAAE,SAAS,MAAM,KAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAoBhH,CAAC"}
@@ -20,8 +20,8 @@ const isValidManifest = async (manifest, manifestPath, logger) => {
20
20
  const validate = ajv.compile(schema);
21
21
  const isValid = validate(manifest);
22
22
  if (!isValid) {
23
- logger.error(`${manifestPath} is invalid. Errors:`);
24
- logger.error(validate.errors);
23
+ logger?.error(`${manifestPath} is invalid. Errors:`);
24
+ logger?.error(validate.errors);
25
25
  throw new Error('Invalid models definitions');
26
26
  }
27
27
  return true;
@@ -31,11 +31,11 @@ const isValidManifest = async (manifest, manifestPath, logger) => {
31
31
  * @param workspaceDirectory
32
32
  * @param logger
33
33
  */
34
- export const retrieveManifest = async (workspaceDirectory, logger = console) => {
34
+ export const retrieveManifest = async (workspaceDirectory, logger) => {
35
35
  for (const manifestFileName of DEFAULT_MANIFEST_FILENAMES) {
36
36
  const manifestPath = resolve(workspaceDirectory, manifestFileName);
37
37
  if (!existsSync(manifestPath)) {
38
- logger.debug?.(`Manifest file not found at ${manifestPath}`);
38
+ logger?.debug?.(`Manifest file not found at ${manifestPath}`);
39
39
  continue;
40
40
  }
41
41
  const content = await fs.readFile(manifestPath, { encoding: 'utf8' });
@@ -43,11 +43,11 @@ export const retrieveManifest = async (workspaceDirectory, logger = console) =>
43
43
  ? JSON.parse(content)
44
44
  : load(content));
45
45
  if (await isValidManifest(manifest, manifestPath, logger)) {
46
- logger.info?.(`Manifest file found at ${manifestPath}`);
46
+ logger?.info?.(`Manifest file found at ${manifestPath}`);
47
47
  return manifest;
48
48
  }
49
49
  else {
50
- logger.debug?.(`Manifest file at ${manifestPath} is not conform to the expected schema`);
50
+ logger?.debug?.(`Manifest file at ${manifestPath} is not conform to the expected schema`);
51
51
  }
52
52
  }
53
53
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,OAAO,EACP,OAAO,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,GAAG,GACJ,MAAM,KAAK,CAAC;AACb,OAAO,EACL,IAAI,GACL,MAAM,SAAS,CAAC;AAIjB,OAAO,EACL,0BAA0B,GAC3B,MAAM,qBAAqB,CAAC;AA+C7B;;;;;GAKG;AACH,MAAM,eAAe,GAAG,KAAK,EAAE,QAAa,EAAE,YAAoB,EAAE,MAAc,EAAoB,EAAE;IACtG,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACtB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;IAC9H,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAW,CAAC;IACzF,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,sBAAsB,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,kBAA0B,EAAE,SAAiB,OAAO,EAAiC,EAAE;IAC5H,KAAK,MAAM,gBAAgB,IAAI,0BAA0B,EAAE,CAAC;QAC1D,MAAM,YAAY,GAAG,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,EAAE,CAAC,8BAA8B,YAAY,EAAE,CAAC,CAAC;YAC7D,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO;YAC/D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YACrB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAa,CAAC;QAC/B,IAAI,MAAM,eAAe,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,IAAI,EAAE,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;YACxD,OAAO,QAAQ,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,EAAE,CAAC,oBAAoB,YAAY,wCAAwC,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
1
+ {"version":3,"file":"manifest.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,OAAO,EACP,OAAO,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,GAAG,GACJ,MAAM,KAAK,CAAC;AACb,OAAO,EACL,IAAI,GACL,MAAM,SAAS,CAAC;AAIjB,OAAO,EACL,0BAA0B,GAC3B,MAAM,qBAAqB,CAAC;AA+C7B;;;;;GAKG;AACH,MAAM,eAAe,GAAG,KAAK,EAAE,QAAa,EAAE,YAAoB,EAAE,MAAe,EAAoB,EAAE;IACvG,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACtB,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC;IAC9H,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAW,CAAC;IACzF,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,EAAE,KAAK,CAAC,GAAG,YAAY,sBAAsB,CAAC,CAAC;QACrD,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,kBAA0B,EAAE,MAAe,EAAiC,EAAE;IACnH,KAAK,MAAM,gBAAgB,IAAI,0BAA0B,EAAE,CAAC;QAC1D,MAAM,YAAY,GAAG,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,MAAM,EAAE,KAAK,EAAE,CAAC,8BAA8B,YAAY,EAAE,CAAC,CAAC;YAC9D,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO;YAC/D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YACrB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAa,CAAC;QAC/B,IAAI,MAAM,eAAe,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;YAC1D,MAAM,EAAE,IAAI,EAAE,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;YACzD,OAAO,QAAQ,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,KAAK,EAAE,CAAC,oBAAoB,YAAY,wCAAwC,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
@@ -1,9 +1,9 @@
1
- import type { Logger } from '../logger.mjs';
1
+ import type { Context } from '../context.mjs';
2
2
  import type { RetrievedDependencyModel } from './manifest/extract-dependency-models.mjs';
3
3
  /**
4
4
  * Process a set of retrieved dependency models to apply transformations and write them to files
5
5
  * @param models
6
- * @param logger
6
+ * @param context
7
7
  */
8
- export declare const processModel: (models: Promise<RetrievedDependencyModel>[], logger?: Logger) => Promise<void>[];
8
+ export declare const processModel: (models: Promise<RetrievedDependencyModel>[], context: Context) => Promise<void>[];
9
9
  //# sourceMappingURL=process.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process.d.mts","sourceRoot":"","sources":["../../../src/core/process.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,eAAe,CAAC;AAIvB,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,0CAA0C,CAAC;AAqBlD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,OAAO,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,MAAM,oBAgBxF,CAAC"}
1
+ {"version":3,"file":"process.d.mts","sourceRoot":"","sources":["../../../src/core/process.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,gBAAgB,CAAC;AAIxB,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,0CAA0C,CAAC;AAqBlD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,OAAO,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,OAAO,oBAkBzF,CAAC"}
@@ -8,22 +8,23 @@ import { updateReferences, } from './transforms/update-references.mjs';
8
8
  /**
9
9
  * Process a set of retrieved dependency models to apply transformations and write them to files
10
10
  * @param models
11
- * @param logger
11
+ * @param context
12
12
  */
13
- export const processModel = (models, logger) => {
13
+ export const processModel = (models, context) => {
14
+ const { logger } = context;
14
15
  return models
15
16
  .map(async (retrievedModelPromise) => {
16
17
  const retrievedModel = await retrievedModelPromise;
17
- logger?.debug?.(`Retrieving model from ${retrievedModel.artifactName} at ${retrievedModel.modelPath}`);
18
+ logger?.debug?.(`Retrieved model from ${retrievedModel.artifactName} at ${retrievedModel.modelPath}`);
18
19
  const transforms = [toReference, addAnnotation, applyMask, updateReferences, renameTitle];
19
- const modelObj = transforms.reduce((acc, transform) => transform(acc, retrievedModel, logger), deserialize(retrievedModel.content, retrievedModel));
20
+ const modelObj = await transforms.reduce(async (acc, transform) => transform(await acc, retrievedModel, context), Promise.resolve(deserialize(retrievedModel.content, retrievedModel)));
20
21
  return {
21
22
  ...retrievedModel,
22
23
  content: serialize(modelObj, retrievedModel)
23
24
  };
24
25
  })
25
26
  .map(async (processedModel) => {
26
- await writeModelFile(await processedModel);
27
+ await writeModelFile(await processedModel, context);
27
28
  });
28
29
  };
29
30
  //# sourceMappingURL=process.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"process.mjs","sourceRoot":"","sources":["../../../src/core/process.mts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,GACf,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,SAAS,GACV,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,GACZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gBAAgB,GACjB,MAAM,oCAAoC,CAAC;AAE5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAA2C,EAAE,MAAe,EAAE,EAAE;IAC3F,OAAO,MAAM;SACV,GAAG,CAAC,KAAK,EAAE,qBAAqB,EAAE,EAAE;QACnC,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;QACnD,MAAM,EAAE,KAAK,EAAE,CAAC,yBAAyB,cAAc,CAAC,YAAY,OAAO,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;QAEvG,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAW,CAAC,CAAC;QAC9J,OAAO;YACL,GAAG,cAAc;YACjB,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,cAAc,CAAC;SAC7C,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE;QAC5B,MAAM,cAAc,CAAC,MAAM,cAAc,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
1
+ {"version":3,"file":"process.mjs","sourceRoot":"","sources":["../../../src/core/process.mts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,GACf,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EACL,WAAW,EACX,SAAS,GACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,SAAS,GACV,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,GACZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gBAAgB,GACjB,MAAM,oCAAoC,CAAC;AAE5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAA2C,EAAE,OAAgB,EAAE,EAAE;IAC5F,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,OAAO,MAAM;SACV,GAAG,CAAC,KAAK,EAAE,qBAAqB,EAAE,EAAE;QACnC,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAAC;QACnD,MAAM,EAAE,KAAK,EAAE,CAAC,wBAAwB,cAAc,CAAC,YAAY,OAAO,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;QAEtG,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAC1F,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,CAChE,SAAS,CAAC,MAAM,GAAG,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAS,WAAW,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;QAC/H,OAAO;YACL,GAAG,cAAc;YACjB,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,cAAc,CAAC;SAC7C,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE;QAC5B,MAAM,cAAc,CAAC,MAAM,cAAc,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC"}
@@ -5,7 +5,7 @@ import { dump, load, } from 'js-yaml';
5
5
  * @param model
6
6
  */
7
7
  export const deserialize = (specification, model) => {
8
- if (model.isJson) {
8
+ if (model.isInputJson) {
9
9
  return JSON.parse(specification);
10
10
  }
11
11
  return load(specification);
@@ -16,7 +16,7 @@ export const deserialize = (specification, model) => {
16
16
  * @param model
17
17
  */
18
18
  export const serialize = (specification, model) => {
19
- if (model.isJson) {
19
+ if (model.isOutputJson) {
20
20
  return JSON.stringify(specification, null, 2);
21
21
  }
22
22
  return dump(specification);
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.mjs","sourceRoot":"","sources":["../../../src/core/serialization.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,IAAI,GACL,MAAM,SAAS,CAAC;AAKjB;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,aAAqB,EAAE,KAA+B,EAAO,EAAE;IACzF,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,aAAkB,EAAE,KAA+B,EAAU,EAAE;IACvF,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC;AAC7B,CAAC,CAAC"}
1
+ {"version":3,"file":"serialization.mjs","sourceRoot":"","sources":["../../../src/core/serialization.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,IAAI,GACL,MAAM,SAAS,CAAC;AAKjB;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,aAAqB,EAAE,KAA+B,EAAO,EAAE;IACzF,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,aAAkB,EAAE,KAA+B,EAAU,EAAE;IACvF,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC;AAC7B,CAAC,CAAC"}