@ama-openapi/core 14.1.0-prerelease.2 → 14.1.0-prerelease.20
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/package.json +18 -17
- package/src/core/manifest/extract-dependency-models.d.mts +1 -1
- package/src/core/manifest/extract-dependency-models.d.mts.map +1 -1
- package/src/core/manifest/extract-dependency-models.mjs +23 -16
- package/src/core/manifest/extract-dependency-models.mjs.map +1 -1
- package/src/core/manifest/manifest.d.mts +4 -0
- package/src/core/manifest/manifest.d.mts.map +1 -1
- package/src/core/manifest/manifest.mjs.map +1 -1
- package/src/core/process.d.mts.map +1 -1
- package/src/core/process.mjs +7 -1
- package/src/core/process.mjs.map +1 -1
- package/src/core/references/walk-innerpath.d.mts +9 -0
- package/src/core/references/walk-innerpath.d.mts.map +1 -0
- package/src/core/references/walk-innerpath.mjs +12 -0
- package/src/core/references/walk-innerpath.mjs.map +1 -0
- package/src/schema/configurations/model-definitions.d.mts +21 -12
- package/src/schema/configurations/model-definitions.d.mts.map +1 -1
- package/src/schema/configurations/model-definitions.mjs +21 -5
- package/src/schema/configurations/model-definitions.mjs.map +1 -1
- package/src/schema/list-artifacts.d.mts +5 -1
- package/src/schema/list-artifacts.d.mts.map +1 -1
- package/src/schema/list-artifacts.mjs.map +1 -1
- package/src/schema/mask/generate-mask-from-model.d.mts +2 -2
- package/src/schema/mask/generate-mask-from-model.d.mts.map +1 -1
- package/src/schema/mask/generate-mask-from-model.mjs +6 -5
- package/src/schema/mask/generate-mask-from-model.mjs.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ama-openapi/core",
|
|
3
|
-
"version": "14.1.0-prerelease.
|
|
3
|
+
"version": "14.1.0-prerelease.20",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"ajv": "~8.17.1",
|
|
43
|
-
"globby": "~16.
|
|
43
|
+
"globby": "~16.1.0",
|
|
44
44
|
"js-yaml": "^4.1.1",
|
|
45
45
|
"semver": "^7.5.2",
|
|
46
46
|
"tslib": "^2.6.2"
|
|
@@ -54,27 +54,28 @@
|
|
|
54
54
|
}
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
+
"@angular/cli": "~21.1.0",
|
|
57
58
|
"@babel/core": "~7.29.0",
|
|
58
59
|
"@babel/preset-env": "~7.29.0",
|
|
59
60
|
"@babel/preset-typescript": "~7.28.0",
|
|
60
61
|
"@compodoc/compodoc": "^1.1.32",
|
|
61
62
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.4.0",
|
|
62
|
-
"@nx/eslint": "~22.
|
|
63
|
-
"@nx/eslint-plugin": "~22.
|
|
64
|
-
"@nx/jest": "~22.
|
|
65
|
-
"@nx/js": "~22.
|
|
66
|
-
"@o3r/build-helpers": "~14.1.0-prerelease.
|
|
67
|
-
"@o3r/eslint-plugin": "~14.1.0-prerelease.
|
|
68
|
-
"@o3r/telemetry": "~14.1.0-prerelease.
|
|
69
|
-
"@o3r/test-helpers": "~14.1.0-prerelease.
|
|
70
|
-
"@stylistic/eslint-plugin": "~5.
|
|
63
|
+
"@nx/eslint": "~22.5.0",
|
|
64
|
+
"@nx/eslint-plugin": "~22.5.0",
|
|
65
|
+
"@nx/jest": "~22.5.0",
|
|
66
|
+
"@nx/js": "~22.5.0",
|
|
67
|
+
"@o3r/build-helpers": "~14.1.0-prerelease.20",
|
|
68
|
+
"@o3r/eslint-plugin": "~14.1.0-prerelease.20",
|
|
69
|
+
"@o3r/telemetry": "~14.1.0-prerelease.20",
|
|
70
|
+
"@o3r/test-helpers": "~14.1.0-prerelease.20",
|
|
71
|
+
"@stylistic/eslint-plugin": "~5.7.0",
|
|
71
72
|
"@types/jest": "~30.0.0",
|
|
72
73
|
"@types/js-yaml": "^4.0.5",
|
|
73
74
|
"@types/minimist": "^1.2.2",
|
|
74
75
|
"@types/node": "~24.10.0",
|
|
75
76
|
"@types/semver": "^7.3.13",
|
|
76
|
-
"@typescript-eslint/parser": "~8.
|
|
77
|
-
"angular-eslint": "~21.0
|
|
77
|
+
"@typescript-eslint/parser": "~8.54.0",
|
|
78
|
+
"angular-eslint": "~21.2.0",
|
|
78
79
|
"babel-jest": "^30.0.5",
|
|
79
80
|
"babel-plugin-transform-import-meta": "^2.0.0",
|
|
80
81
|
"cpy-cli": "^6.0.0",
|
|
@@ -84,7 +85,7 @@
|
|
|
84
85
|
"eslint-plugin-import": "~2.32.0",
|
|
85
86
|
"eslint-plugin-import-newlines": "~1.4.0",
|
|
86
87
|
"eslint-plugin-jest": "~29.12.0",
|
|
87
|
-
"eslint-plugin-jsdoc": "~61.
|
|
88
|
+
"eslint-plugin-jsdoc": "~61.7.0",
|
|
88
89
|
"eslint-plugin-prefer-arrow": "~1.2.3",
|
|
89
90
|
"eslint-plugin-unicorn": "~62.0.0",
|
|
90
91
|
"eslint-plugin-unused-imports": "~4.3.0",
|
|
@@ -94,12 +95,12 @@
|
|
|
94
95
|
"jest-resolve": "~30.2.0",
|
|
95
96
|
"jest-util": "~30.2.0",
|
|
96
97
|
"jsonc-eslint-parser": "~2.4.0",
|
|
97
|
-
"memfs": "~4.
|
|
98
|
-
"nx": "~22.
|
|
98
|
+
"memfs": "~4.56.0",
|
|
99
|
+
"nx": "~22.5.0",
|
|
99
100
|
"ts-jest": "~29.4.0",
|
|
100
101
|
"type-fest": "^5.3.1",
|
|
101
102
|
"typescript": "~5.9.2",
|
|
102
|
-
"typescript-eslint": "~8.
|
|
103
|
+
"typescript-eslint": "~8.54.0"
|
|
103
104
|
},
|
|
104
105
|
"engines": {
|
|
105
106
|
"node": "^20.19.0 || ^22.17.0 || ^24.0.0"
|
|
@@ -13,7 +13,7 @@ export interface RetrievedDependencyModel {
|
|
|
13
13
|
/** Content of the model file */
|
|
14
14
|
content: string;
|
|
15
15
|
/** Model definition from the manifest */
|
|
16
|
-
model: Model & Required<Pick<Model, 'path'>>;
|
|
16
|
+
model: Model & Required<Pick<Model, 'path' | 'filePath'>>;
|
|
17
17
|
/** Indicates if the input model file is a JSON file */
|
|
18
18
|
isInputJson: boolean;
|
|
19
19
|
/** Indicates if the output model file is a JSON file */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-dependency-models.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACV,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"extract-dependency-models.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,SAAS,EACV,MAAM,gBAAgB,CAAC;AAIxB;;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,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAC1D,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;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,cAAc,MAAM,WAIvD,CAAC;AA0FF;;;;;;;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,CAgCtE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,QAAQ,EAAE,SAAS,OAAO,wCAU3E,CAAC"}
|
|
@@ -3,6 +3,7 @@ import { createRequire, } from 'node:module';
|
|
|
3
3
|
import { basename, dirname, extname, join, resolve, } from 'node:path';
|
|
4
4
|
import { OUTPUT_DIRECTORY, } from '../../constants.mjs';
|
|
5
5
|
import { isJsonFile, parseFile, } from '../file-system/parse-file.mjs';
|
|
6
|
+
const INNER_PATH_SEPARATOR = '#[\\/]';
|
|
6
7
|
/**
|
|
7
8
|
* Sanitize the package path to be used in file system
|
|
8
9
|
* @param artifactName
|
|
@@ -13,21 +14,22 @@ export const sanitizePackagePath = (artifactName) => {
|
|
|
13
14
|
.replace(/^@/, '');
|
|
14
15
|
};
|
|
15
16
|
/**
|
|
16
|
-
*
|
|
17
|
+
* Split model path into file path and inner path
|
|
17
18
|
* @param modelPath
|
|
18
19
|
*/
|
|
19
|
-
const
|
|
20
|
-
|
|
20
|
+
const splitModelPath = (modelPath) => {
|
|
21
|
+
const [filePath, innerPath] = modelPath.split(new RegExp(INNER_PATH_SEPARATOR));
|
|
22
|
+
return { filePath, innerPath };
|
|
21
23
|
};
|
|
22
24
|
/**
|
|
23
25
|
* Get the file name resulting of a model path
|
|
24
26
|
* @param modelPath
|
|
25
27
|
*/
|
|
26
28
|
const getOutFilePathFromModelPath = (modelPath) => {
|
|
27
|
-
const
|
|
28
|
-
return
|
|
29
|
-
? join(dirname(
|
|
30
|
-
:
|
|
29
|
+
const { filePath, innerPath } = splitModelPath(modelPath);
|
|
30
|
+
return innerPath
|
|
31
|
+
? join(dirname(filePath), innerPath + extname(filePath))
|
|
32
|
+
: filePath;
|
|
31
33
|
};
|
|
32
34
|
/**
|
|
33
35
|
* Retrieve the transform object from the manifest
|
|
@@ -65,9 +67,10 @@ const extractDependencyModelsSimple = async (cwd, artifactName, modelName, logge
|
|
|
65
67
|
logger?.debug?.(`extracting model ${modelName} from ${outputDirectory}`);
|
|
66
68
|
const require = createRequire(resolve(cwd, 'package.json'));
|
|
67
69
|
const { artifactBasePath, version } = await getArtifactInfo(require, artifactName);
|
|
68
|
-
const modelPath = typeof modelName === 'string' ? join(artifactBasePath, modelName) : require.resolve(artifactName);
|
|
69
|
-
const content = await fs.readFile(getFilePathFromModelPath(modelPath), { encoding: 'utf8' });
|
|
70
70
|
const path = typeof modelName === 'string' ? modelName : artifactName;
|
|
71
|
+
const { filePath, innerPath } = splitModelPath(path);
|
|
72
|
+
const modelPath = typeof modelName === 'string' ? join(artifactBasePath, filePath) : require.resolve(artifactName);
|
|
73
|
+
const content = await fs.readFile(modelPath, { encoding: 'utf8' });
|
|
71
74
|
const model = { path };
|
|
72
75
|
const fileNameOutput = getOutFilePathFromModelPath(model.path);
|
|
73
76
|
const outputFilePath = resolve(cwd, outputDirectory, sanitizePackagePath(artifactName), fileNameOutput);
|
|
@@ -79,7 +82,9 @@ const extractDependencyModelsSimple = async (cwd, artifactName, modelName, logge
|
|
|
79
82
|
version,
|
|
80
83
|
content,
|
|
81
84
|
model: {
|
|
82
|
-
path
|
|
85
|
+
path,
|
|
86
|
+
filePath,
|
|
87
|
+
innerPath
|
|
83
88
|
},
|
|
84
89
|
isInputJson: isJsonFile(modelPath),
|
|
85
90
|
isOutputJson: isJsonFile(outputFilePath)
|
|
@@ -98,13 +103,13 @@ export const extractDependencyModelsObject = async (artifactName, model, transfo
|
|
|
98
103
|
const require = createRequire(resolve(cwd, 'package.json'));
|
|
99
104
|
const transform = await transformPromise;
|
|
100
105
|
const { artifactBasePath, version } = await getArtifactInfo(require, artifactName);
|
|
101
|
-
const modelPath = model.path ? join(artifactBasePath, model.path) : require.resolve(artifactName);
|
|
102
|
-
const content = await fs.readFile(getFilePathFromModelPath(modelPath), { encoding: 'utf8' });
|
|
103
|
-
logger?.debug?.(`extracting model ${modelPath} from ${outputDirectory}`);
|
|
104
106
|
const path = model.path || require.resolve(artifactName).split(artifactName)[1];
|
|
105
|
-
const
|
|
107
|
+
const { filePath, innerPath } = splitModelPath(path);
|
|
108
|
+
const modelPath = model.path ? join(artifactBasePath, filePath) : require.resolve(artifactName);
|
|
109
|
+
const content = await fs.readFile(modelPath, { encoding: 'utf8' });
|
|
110
|
+
logger?.debug?.(`extracting model ${modelPath} to ${outputDirectory}`);
|
|
106
111
|
const fileNameOutput = transform?.rename
|
|
107
|
-
?
|
|
112
|
+
? filePath.replace(new RegExp(`(${basename(filePath).replaceAll('.', '\\.')})$`), transform.rename)
|
|
108
113
|
: getOutFilePathFromModelPath(path);
|
|
109
114
|
const outputFilePath = resolve(cwd, outputDirectory, sanitizePackagePath(artifactName), fileNameOutput);
|
|
110
115
|
return {
|
|
@@ -117,7 +122,9 @@ export const extractDependencyModelsObject = async (artifactName, model, transfo
|
|
|
117
122
|
content,
|
|
118
123
|
model: {
|
|
119
124
|
...model,
|
|
120
|
-
path
|
|
125
|
+
path,
|
|
126
|
+
filePath,
|
|
127
|
+
innerPath
|
|
121
128
|
},
|
|
122
129
|
isInputJson: isJsonFile(modelPath),
|
|
123
130
|
isOutputJson: isJsonFile(outputFilePath)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-dependency-models.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,IAAI,EACJ,OAAO,GACR,MAAM,WAAW,CAAC;AAInB,OAAO,EACL,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EACL,UAAU,EACV,SAAS,GACV,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"extract-dependency-models.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/extract-dependency-models.mts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,10 @@ type TransformOrReference = Transform | string;
|
|
|
21
21
|
export interface Model {
|
|
22
22
|
/** Path to the model in the artifact */
|
|
23
23
|
path?: string;
|
|
24
|
+
/** Inner path within the model file */
|
|
25
|
+
innerPath?: string;
|
|
26
|
+
/** Path to the model file in the artifact */
|
|
27
|
+
filePath?: string;
|
|
24
28
|
/**
|
|
25
29
|
* Transforms to apply to the model
|
|
26
30
|
* Note that for each transform object, a new definition will be generated
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,kBAAkB,CAAC;AAK1B;;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,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;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,CAAC;CAClC;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;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA6B1C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,oBAAoB,MAAM,EAAE,SAAS,MAAM,KAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAiBhH,CAAC"}
|
|
1
|
+
{"version":3,"file":"manifest.d.mts","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,MAAM,EACP,MAAM,kBAAkB,CAAC;AAK1B;;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,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,oBAAoB,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC;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;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA6B1C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,oBAAoB,MAAM,EAAE,SAAS,MAAM,KAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAiBhH,CAAC"}
|
|
@@ -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,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,GAAG,GACJ,MAAM,KAAK,CAAC;AACb,OAAO,EACL,0BAA0B,GAC3B,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EACL,SAAS,GACV,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"manifest.mjs","sourceRoot":"","sources":["../../../../src/core/manifest/manifest.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
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;AAwBlD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,OAAO,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,OAAO,
|
|
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;AAwBlD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,OAAO,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,OAAO,oBAuBzF,CAAC"}
|
package/src/core/process.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { writeModelFile, } from './file-system/write-model.mjs';
|
|
2
|
+
import { walkInnerPath, } from './references/walk-innerpath.mjs';
|
|
2
3
|
import { deserialize, serialize, } from './serialization.mjs';
|
|
3
4
|
import { addAnnotation, } from './transforms/add-annotation.mjs';
|
|
4
5
|
import { applyMask, } from './transforms/apply-mask.mjs';
|
|
@@ -16,8 +17,13 @@ export const processModel = (models, context) => {
|
|
|
16
17
|
.map(async (retrievedModelPromise) => {
|
|
17
18
|
const retrievedModel = await retrievedModelPromise;
|
|
18
19
|
logger?.debug?.(`Retrieved model from ${retrievedModel.artifactName} at ${retrievedModel.modelPath}`);
|
|
20
|
+
const initialModelObj = walkInnerPath(deserialize(retrievedModel.content, retrievedModel), retrievedModel);
|
|
21
|
+
if (!initialModelObj) {
|
|
22
|
+
logger?.error?.(`Inner path '${retrievedModel.model.innerPath}' not found in model at ${retrievedModel.modelPath}`);
|
|
23
|
+
throw new Error(`The path '${retrievedModel.model.path}' can not be resolved in the model at ${retrievedModel.artifactName}`);
|
|
24
|
+
}
|
|
19
25
|
const transforms = [toReference, addAnnotation, applyMask, updateReferences, renameTitle];
|
|
20
|
-
const modelObj = await transforms.reduce(async (acc, transform) => transform(await acc, retrievedModel, context), Promise.resolve(
|
|
26
|
+
const modelObj = await transforms.reduce(async (acc, transform) => transform(await acc, retrievedModel, context), Promise.resolve(initialModelObj));
|
|
21
27
|
return {
|
|
22
28
|
...retrievedModel,
|
|
23
29
|
content: serialize(modelObj, retrievedModel)
|
package/src/core/process.mjs.map
CHANGED
|
@@ -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;
|
|
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,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,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,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,cAAc,CAAC,CAAC;QAC3G,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,EAAE,KAAK,EAAE,CAAC,eAAe,cAAc,CAAC,KAAK,CAAC,SAAS,2BAA2B,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;YACpH,MAAM,IAAI,KAAK,CAAC,aAAa,cAAc,CAAC,KAAK,CAAC,IAAI,yCAAyC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC;QAChI,CAAC;QACD,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,CAAC,eAAe,CAAC,CAAC,CAAC;QACnF,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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { RetrievedDependencyModel } from '../manifest/extract-dependency-models.mjs';
|
|
2
|
+
import type { SpecificationFile } from '../transforms/transform.mjs';
|
|
3
|
+
/**
|
|
4
|
+
* Walk the inner path of a model to get to the desired specification part
|
|
5
|
+
* @param specification
|
|
6
|
+
* @param retrievedModel
|
|
7
|
+
*/
|
|
8
|
+
export declare const walkInnerPath: (specification: SpecificationFile, retrievedModel: Pick<RetrievedDependencyModel, "model">) => SpecificationFile | undefined;
|
|
9
|
+
//# sourceMappingURL=walk-innerpath.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walk-innerpath.d.mts","sourceRoot":"","sources":["../../../../src/core/references/walk-innerpath.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACzB,MAAM,2CAA2C,CAAC;AACnD,OAAO,KAAK,EACV,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AAErC;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,eAAe,iBAAiB,EAAE,gBAAgB,IAAI,CAAC,wBAAwB,EAAE,OAAO,CAAC,KAAG,iBAAiB,GAAG,SAK7I,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Walk the inner path of a model to get to the desired specification part
|
|
3
|
+
* @param specification
|
|
4
|
+
* @param retrievedModel
|
|
5
|
+
*/
|
|
6
|
+
export const walkInnerPath = (specification, retrievedModel) => {
|
|
7
|
+
const { model } = retrievedModel;
|
|
8
|
+
const innerPath = model.innerPath;
|
|
9
|
+
const parts = innerPath?.split('/').filter((part) => part.length > 0) || [];
|
|
10
|
+
return parts.reduce((acc, part) => acc && typeof acc === 'object' ? acc[part] : undefined, specification);
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=walk-innerpath.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walk-innerpath.mjs","sourceRoot":"","sources":["../../../../src/core/references/walk-innerpath.mts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,aAAgC,EAAE,cAAuD,EAAiC,EAAE;IACxJ,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,MAAM,KAAK,GAAG,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5E,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAC5G,CAAC,CAAC"}
|
|
@@ -6,18 +6,19 @@ import type { SpecificationArtifact } from '../list-artifacts.mjs';
|
|
|
6
6
|
export declare const getModelDefinitions: (artifacts: SpecificationArtifact[]) => {
|
|
7
7
|
[k: string]: {
|
|
8
8
|
oneOf: ({
|
|
9
|
-
type: string;
|
|
10
|
-
default: boolean;
|
|
11
|
-
description: string;
|
|
12
|
-
const?: undefined;
|
|
13
|
-
properties?: undefined;
|
|
14
|
-
required?: undefined;
|
|
15
|
-
additionalProperties?: undefined;
|
|
16
|
-
} | {
|
|
17
9
|
const: string;
|
|
10
|
+
description: string;
|
|
18
11
|
type?: undefined;
|
|
19
|
-
|
|
12
|
+
pattern?: undefined;
|
|
13
|
+
} | {
|
|
14
|
+
type: string;
|
|
15
|
+
pattern: string;
|
|
16
|
+
const?: undefined;
|
|
20
17
|
description?: undefined;
|
|
18
|
+
} | {
|
|
19
|
+
type: string;
|
|
20
|
+
default: boolean;
|
|
21
|
+
description: string;
|
|
21
22
|
properties?: undefined;
|
|
22
23
|
required?: undefined;
|
|
23
24
|
additionalProperties?: undefined;
|
|
@@ -26,8 +27,17 @@ export declare const getModelDefinitions: (artifacts: SpecificationArtifact[]) =
|
|
|
26
27
|
description: string;
|
|
27
28
|
properties: {
|
|
28
29
|
path: {
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
oneOf: ({
|
|
31
|
+
const: string;
|
|
32
|
+
description: string;
|
|
33
|
+
type?: undefined;
|
|
34
|
+
pattern?: undefined;
|
|
35
|
+
} | {
|
|
36
|
+
type: string;
|
|
37
|
+
pattern: string;
|
|
38
|
+
const?: undefined;
|
|
39
|
+
description?: undefined;
|
|
40
|
+
})[];
|
|
31
41
|
};
|
|
32
42
|
transform: {
|
|
33
43
|
$ref: string;
|
|
@@ -36,7 +46,6 @@ export declare const getModelDefinitions: (artifacts: SpecificationArtifact[]) =
|
|
|
36
46
|
required: string[];
|
|
37
47
|
additionalProperties: boolean;
|
|
38
48
|
default?: undefined;
|
|
39
|
-
const?: undefined;
|
|
40
49
|
})[];
|
|
41
50
|
};
|
|
42
51
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-definitions.d.mts","sourceRoot":"","sources":["../../../../src/schema/configurations/model-definitions.mts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"model-definitions.d.mts","sourceRoot":"","sources":["../../../../src/schema/configurations/model-definitions.mts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAW/B;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAW,qBAAqB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDrE,CAAC"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { basename, } from 'node:path';
|
|
2
2
|
import { generateModelNameRef, } from '../generate-model-name.mjs';
|
|
3
|
+
/**
|
|
4
|
+
* Escape special characters in a string for use in a regular expression
|
|
5
|
+
* Note: This function can be removed on node >= 24 as `RegExp.escape` will be available natively
|
|
6
|
+
* @param str String to escape
|
|
7
|
+
*/
|
|
8
|
+
const regExpEscape = (str) => {
|
|
9
|
+
return str.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
|
|
10
|
+
};
|
|
3
11
|
/**
|
|
4
12
|
* Generate model definitions for the given artifacts
|
|
5
13
|
* @param artifacts
|
|
@@ -11,6 +19,17 @@ export const getModelDefinitions = (artifacts) => {
|
|
|
11
19
|
.filter((modelObj) => !!modelObj)
|
|
12
20
|
.map(({ model }) => {
|
|
13
21
|
const modelRef = generateModelNameRef(packageManifestName, model);
|
|
22
|
+
const pathSchemas = [
|
|
23
|
+
{
|
|
24
|
+
const: model,
|
|
25
|
+
description: 'Path to the specific model to include as is. The path is relative to the artifact root (e.g., "models/ExampleModel.v1.yaml")'
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
type: 'string',
|
|
29
|
+
// TODO: give users hint on the available inner paths (cf #3938)
|
|
30
|
+
pattern: `^${regExpEscape(model)}#/.*$`
|
|
31
|
+
}
|
|
32
|
+
];
|
|
14
33
|
return [
|
|
15
34
|
`model-${modelRef}`,
|
|
16
35
|
{
|
|
@@ -22,16 +41,13 @@ export const getModelDefinitions = (artifacts) => {
|
|
|
22
41
|
description: 'Include the default model exposed by the artifact'
|
|
23
42
|
}]
|
|
24
43
|
: [],
|
|
25
|
-
|
|
26
|
-
const: model
|
|
27
|
-
},
|
|
44
|
+
...pathSchemas,
|
|
28
45
|
{
|
|
29
46
|
type: 'object',
|
|
30
47
|
description: 'Detailed model inclusion with optional transformations to apply',
|
|
31
48
|
properties: {
|
|
32
49
|
path: {
|
|
33
|
-
|
|
34
|
-
description: "Path to the specific model to include as is. The path is relative to the artifact root (e.g., 'models/ExampleModel.v1.yaml')"
|
|
50
|
+
oneOf: pathSchemas
|
|
35
51
|
},
|
|
36
52
|
transform: {
|
|
37
53
|
$ref: `#/definitions/transform-${modelRef}`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-definitions.mjs","sourceRoot":"","sources":["../../../../src/schema/configurations/model-definitions.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,GACT,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAKpC;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAkC,EAAE,EAAE;IACxE,OAAO,MAAM,CAAC,WAAW,CACvB,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE;QAC/D,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC5E,OAAO,MAAM;aACV,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;aAChC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACjB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;YAClE,OAAO;gBACL,SAAS,QAAQ,EAAE;gBACnB;oBACE,KAAK,EAAE;wBACL,GAAG,eAAe,CAAC,IAAI;4BACrB,CAAC,CAAC,CAAC;oCACD,IAAI,EAAE,SAAS;oCACf,OAAO,EAAE,IAAI;oCACb,WAAW,EAAE,mDAAmD;iCACjE,CAAC;4BACF,CAAC,CAAC,EAAE;wBACN
|
|
1
|
+
{"version":3,"file":"model-definitions.mjs","sourceRoot":"","sources":["../../../../src/schema/configurations/model-definitions.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,GACT,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAKpC;;;;GAIG;AACH,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE;IAC3C,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAkC,EAAE,EAAE;IACxE,OAAO,MAAM,CAAC,WAAW,CACvB,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE;QAC/D,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC5E,OAAO,MAAM;aACV,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;aAChC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACjB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG;gBAClB;oBACE,KAAK,EAAE,KAAK;oBACZ,WAAW,EAAE,8HAA8H;iBAC5I;gBACD;oBACE,IAAI,EAAE,QAAQ;oBACd,gEAAgE;oBAChE,OAAO,EAAE,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO;iBACxC;aACF,CAAC;YAEF,OAAO;gBACL,SAAS,QAAQ,EAAE;gBACnB;oBACE,KAAK,EAAE;wBACL,GAAG,eAAe,CAAC,IAAI;4BACrB,CAAC,CAAC,CAAC;oCACD,IAAI,EAAE,SAAS;oCACf,OAAO,EAAE,IAAI;oCACb,WAAW,EAAE,mDAAmD;iCACjE,CAAC;4BACF,CAAC,CAAC,EAAE;wBACN,GAAG,WAAW;wBACd;4BACE,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,iEAAiE;4BAC9E,UAAU,EAAE;gCACV,IAAI,EAAE;oCACJ,KAAK,EAAE,WAAW;iCACnB;gCACD,SAAS,EAAE;oCACT,IAAI,EAAE,2BAA2B,QAAQ,EAAE;iCAC5C;6BACF;4BACD,QAAQ,EAAE;gCACR,MAAM;6BACP;4BACD,oBAAoB,EAAE,KAAK;yBAC5B;qBACF;iBACF;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -4,7 +4,11 @@ import type { Context } from '../context.mjs';
|
|
|
4
4
|
* Options controlling how dependencies are listed for a package or project.
|
|
5
5
|
*/
|
|
6
6
|
export interface ListDependenciesOptions {
|
|
7
|
-
/**
|
|
7
|
+
/**
|
|
8
|
+
* List of NPM Keywords to use when searching for packages exposing OpenAPI specifications
|
|
9
|
+
* The whitelisted packages should includes at least one of the listed keywords
|
|
10
|
+
* @default [OPENAPI_NPM_KEYWORDS]
|
|
11
|
+
*/
|
|
8
12
|
keywordsWhitelist?: string[];
|
|
9
13
|
/**
|
|
10
14
|
* List of ignored models file which will not be part of the suggestion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-artifacts.d.mts","sourceRoot":"","sources":["../../../src/schema/list-artifacts.mts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,WAAW,CAAC;AAInB,OAAO,KAAK,EACV,OAAO,EACR,MAAM,gBAAgB,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC
|
|
1
|
+
{"version":3,"file":"list-artifacts.d.mts","sourceRoot":"","sources":["../../../src/schema/list-artifacts.mts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,WAAW,CAAC;AAInB,OAAO,KAAK,EACV,OAAO,EACR,MAAM,gBAAgB,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;CACvC;AAED,2EAA2E;AAC3E,MAAM,WAAW,qBAAqB;IACpC,uBAAuB;IACvB,eAAe,EAAE,WAAW,CAAC;IAC7B,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,MAAM,EAAE;QACN,iBAAiB;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,0BAA0B;QAC1B,SAAS,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;CACL;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAU,SAAS,uBAAuB,GAAG,OAAO,KAAG,OAAO,CAAC,qBAAqB,EAAE,CAyD5H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-artifacts.mjs","sourceRoot":"","sources":["../../../src/schema/list-artifacts.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,GAEL,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,QAAQ,IAAI,EAAE,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,OAAO,EACP,KAAK,EACL,OAAO,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,SAAS,GACV,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,MAAM,GACP,MAAM,QAAQ,CAAC;AAIhB,OAAO,EACL,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"list-artifacts.mjs","sourceRoot":"","sources":["../../../src/schema/list-artifacts.mts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ export interface MaskContext extends Context {
|
|
|
15
15
|
* @param modelPath Path to the model
|
|
16
16
|
* @param ctx Mask context
|
|
17
17
|
*/
|
|
18
|
-
export declare const generateMaskSchemaModelAt: (modelPath: string, ctx: MaskContext) => Promise<Record<string, any
|
|
18
|
+
export declare const generateMaskSchemaModelAt: (modelPath: string, ctx: MaskContext) => Promise<Record<string, any> | undefined>;
|
|
19
19
|
/**
|
|
20
20
|
* Recursive function to generate a JSON Schema of a mask which can be applied to the provided model object and its children
|
|
21
21
|
* Note: this function is recursive and exported only for testing purposes
|
|
@@ -23,5 +23,5 @@ export declare const generateMaskSchemaModelAt: (modelPath: string, ctx: MaskCon
|
|
|
23
23
|
* @param model Model object
|
|
24
24
|
* @param ctx Mask context
|
|
25
25
|
*/
|
|
26
|
-
export declare const generateMaskSchemaFromModel: (model: any, ctx: MaskContext) => Promise<Record<string, any
|
|
26
|
+
export declare const generateMaskSchemaFromModel: (model: any, ctx: MaskContext) => Promise<Record<string, any> | undefined>;
|
|
27
27
|
//# sourceMappingURL=generate-mask-from-model.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-mask-from-model.d.mts","sourceRoot":"","sources":["../../../../src/schema/mask/generate-mask-from-model.mts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAY3B,mBAAmB;AACnB,MAAM,WAAW,WAAY,SAAQ,OAAO;IAC1C,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAU,WAAW,MAAM,EAAE,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"generate-mask-from-model.d.mts","sourceRoot":"","sources":["../../../../src/schema/mask/generate-mask-from-model.mts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,OAAO,EACR,MAAM,mBAAmB,CAAC;AAY3B,mBAAmB;AACnB,MAAM,WAAW,WAAY,SAAQ,OAAO;IAC1C,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAU,WAAW,MAAM,EAAE,KAAK,WAAW,6CAyDlF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GAAU,OAAO,GAAG,EAAE,KAAK,WAAW,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAsEvH,CAAC"}
|
|
@@ -15,7 +15,7 @@ export const generateMaskSchemaModelAt = async (modelPath, ctx) => {
|
|
|
15
15
|
}
|
|
16
16
|
if (ctx.parsedFiles?.includes(modelPath)) {
|
|
17
17
|
logger?.warn(`The reference ${modelPath} is circular, it will be resolve to "any"`);
|
|
18
|
-
return
|
|
18
|
+
return undefined;
|
|
19
19
|
}
|
|
20
20
|
const [filePath, innerPath] = modelPath.split('#/');
|
|
21
21
|
let model = await parseFile(filePath);
|
|
@@ -79,7 +79,7 @@ export const generateMaskSchemaFromModel = async (model, ctx) => {
|
|
|
79
79
|
if (Array.isArray(model)) {
|
|
80
80
|
return {
|
|
81
81
|
type: 'array',
|
|
82
|
-
prefixItems: await Promise.all(model.map((item) => generateMaskSchemaFromModel(item, ctx)))
|
|
82
|
+
prefixItems: (await Promise.all(model.map((item) => generateMaskSchemaFromModel(item, ctx)))).filter((item) => !!item)
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
85
|
// Is referencing another model
|
|
@@ -97,13 +97,14 @@ export const generateMaskSchemaFromModel = async (model, ctx) => {
|
|
|
97
97
|
? {
|
|
98
98
|
properties: {
|
|
99
99
|
type: 'object',
|
|
100
|
-
properties: Object.fromEntries(await Promise.all(Object.entries(model.properties)
|
|
100
|
+
properties: Object.fromEntries((await Promise.all(Object.entries(model.properties)
|
|
101
|
+
.map(async ([key, value]) => ([key, await generateMaskSchemaFromModel(value, ctx)])))).filter(([, value]) => !!value))
|
|
101
102
|
}
|
|
102
103
|
}
|
|
103
104
|
: {},
|
|
104
|
-
...Object.fromEntries(await Promise.all(Object.entries(model)
|
|
105
|
+
...Object.fromEntries((await Promise.all(Object.entries(model)
|
|
105
106
|
.filter(([key]) => !['properties', 'type', '$ref'].includes(key))
|
|
106
|
-
.map(async ([key, value]) => ([key, await generateMaskSchemaFromModel(value, ctx)]))))
|
|
107
|
+
.map(async ([key, value]) => ([key, await generateMaskSchemaFromModel(value, ctx)])))).filter(([, value]) => !!value))
|
|
107
108
|
}
|
|
108
109
|
};
|
|
109
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-mask-from-model.mjs","sourceRoot":"","sources":["../../../../src/schema/mask/generate-mask-from-model.mts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,EACL,GAAG,GACJ,MAAM,WAAW,CAAC;AAInB,OAAO,EACL,SAAS,GACV,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,eAAe,GAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AActC;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,EAAE,SAAiB,EAAE,GAAgB,EAAE,EAAE;IACrF,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAEvB,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC3C,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjB,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;IACnF,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,MAAM,EAAE,IAAI,CAAC,iBAAiB,SAAS,2CAA2C,CAAC,CAAC;QACpF,OAAO,
|
|
1
|
+
{"version":3,"file":"generate-mask-from-model.mjs","sourceRoot":"","sources":["../../../../src/schema/mask/generate-mask-from-model.mts"],"names":[],"mappings":"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"}
|