@ama-sdk/schematics 10.1.0-prerelease.8 → 10.1.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -0
- package/package.json +10 -10
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.generator.d.ts.map +1 -1
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.generator.js +8 -5
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.generator.js.map +1 -1
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.options.d.ts +13 -0
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.options.d.ts.map +1 -1
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.options.js +2 -1
- package/schematics/code-generator/open-api-cli-generator/open-api-cli.options.js.map +1 -1
- package/schematics/java/client-core/swagger-codegen-java-client/target/javaClient-swagger-codegen-tests.jar +0 -0
- package/schematics/java/client-core/swagger-codegen-java-client/target/javaClient-swagger-codegen.jar +0 -0
- package/schematics/typescript/core/index.d.ts.map +1 -1
- package/schematics/typescript/core/index.js +150 -96
- package/schematics/typescript/core/index.js.map +1 -1
- package/schematics/typescript/core/openapi-codegen-typescript/target/typescriptFetch-openapi-generator-tests.jar +0 -0
- package/schematics/typescript/core/openapi-codegen-typescript/target/typescriptFetch-openapi-generator.jar +0 -0
- package/schematics/typescript/core/schema.d.ts +16 -3
- package/schematics/typescript/core/schema.d.ts.map +1 -1
- package/schematics/typescript/core/schema.json +13 -5
- package/schematics/typescript/shell/index.d.ts.map +1 -1
- package/schematics/typescript/shell/index.js +2 -0
- package/schematics/typescript/shell/index.js.map +1 -1
- package/schematics/typescript/shell/schema.d.ts +2 -0
- package/schematics/typescript/shell/schema.d.ts.map +1 -1
- package/schematics/typescript/shell/schema.json +5 -0
- package/schematics/typescript/shell/templates/base/openapitools.json.template +15 -0
- package/schematics/typescript/shell/templates/base/package.json.template +11 -8
- package/schematics/typescript/shell/templates/base/testing/tsconfig.spec.json +0 -1
- package/schematics/typescript/shell/templates/base/openapitools.json +0 -8
package/README.md
CHANGED
|
@@ -119,6 +119,90 @@ Example:
|
|
|
119
119
|
yarn schematics @ama-sdk/schematics:typescript-core --spec-path ./swagger-spec.yaml --global-property allowModelExtension
|
|
120
120
|
```
|
|
121
121
|
|
|
122
|
+
#### Generator Configuration
|
|
123
|
+
|
|
124
|
+
##### Parameters
|
|
125
|
+
|
|
126
|
+
It is possible to configure the SDK code generation by passing parameters to the generator command line to override the default configuration values.
|
|
127
|
+
The available parameters are:
|
|
128
|
+
* `--spec-path`: Path to the swagger specification used to generate the SDK
|
|
129
|
+
* `--spec-config-path`: Path to the spec generation configuration
|
|
130
|
+
* `--global-property`: Comma separated string of options to give to the openapi-generator-cli
|
|
131
|
+
* `--output-path`: Output path for the generated SDK
|
|
132
|
+
* `--generator-custom-path`: Path to a custom generator
|
|
133
|
+
|
|
134
|
+
#### openapitools.json
|
|
135
|
+
|
|
136
|
+
There is also a possibility to configure the SDK code generation in `openapitools.json`. The structure for this file looks something like this:
|
|
137
|
+
|
|
138
|
+
```json5
|
|
139
|
+
{
|
|
140
|
+
"$schema": "https://raw.githubusercontent.com/OpenAPITools/openapi-generator-cli/master/apps/generator-cli/src/config.schema.json",
|
|
141
|
+
"generator-cli": {
|
|
142
|
+
"version": "0.0.0",
|
|
143
|
+
"storageDir": ".openapi-generator",
|
|
144
|
+
"generators": { // optional
|
|
145
|
+
"example-sdk": { // any name you like (can be referenced using --generator-key)
|
|
146
|
+
"generatorName": "typescriptFetch",
|
|
147
|
+
"output": ".",
|
|
148
|
+
"inputSpec": "./swagger-spec.yaml"
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
`example-sdk` corresponds to the key of the generator which can be referenced in the generator command as a parameter, for example:
|
|
156
|
+
|
|
157
|
+
```shell
|
|
158
|
+
yarn schematics @ama-sdk/schematics:typescript-core --generator-key example-sdk
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
The properties `generatorName`, `output`, and `inputSpec` are required and additional properties can be added (available properties described in the schema
|
|
162
|
+
[here](https://github.com/OpenAPITools/openapi-generator-cli/blob/master/apps/generator-cli/src/config.schema.json)). For example, we can add the previously
|
|
163
|
+
described global properties `stringifyDate` and `allowModelExtension`:
|
|
164
|
+
|
|
165
|
+
```json
|
|
166
|
+
{
|
|
167
|
+
"$schema": "https://raw.githubusercontent.com/OpenAPITools/openapi-generator-cli/master/apps/generator-cli/src/config.schema.json",
|
|
168
|
+
"generator-cli": {
|
|
169
|
+
"version": "0.0.0",
|
|
170
|
+
"storageDir": ".openapi-generator",
|
|
171
|
+
"generators": {
|
|
172
|
+
"example-sdk": {
|
|
173
|
+
"generatorName": "typescriptFetch",
|
|
174
|
+
"output": ".",
|
|
175
|
+
"inputSpec": "./swagger-spec.yaml",
|
|
176
|
+
"globalProperty": {
|
|
177
|
+
"stringifyDate": true,
|
|
178
|
+
"allowModelExtension": true
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
We have added the possibility in the generator command to both specify the generator key and override specific properties of said key.
|
|
187
|
+
For example, if we want to use the properties of `example-sdk` from `openapitools.json` but override the global properties we can do so like this:
|
|
188
|
+
|
|
189
|
+
```shell
|
|
190
|
+
yarn schematics @ama-sdk/schematics:typescript-core --generator-key example-sdk --global-property stringifyDate=false
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
> [!CAUTION]
|
|
194
|
+
> If the parameter `--generator-key` is provided in combination with other parameters to be overridden, the limitation is that not all
|
|
195
|
+
> properties from `openapitools.json` will be taken into account (contrary to the case when there is only the `--generator-key` parameter).
|
|
196
|
+
> As of now, the only properties that will be taken into account are `output`, `inputSpec`, `config`, `globalProperty` which can be
|
|
197
|
+
> overridden with the parameters `--output-path`, `--spec-path`, `--spec-config-path`, and `--global-property`.
|
|
198
|
+
|
|
199
|
+
> [!NOTE]
|
|
200
|
+
> The parameter `--generator-custom-path` is not impacted and will always be taken into account if provided.
|
|
201
|
+
|
|
202
|
+
> [!NOTE]
|
|
203
|
+
> The values provided by the parameter `--global-property` will actually be merged with the values of `globalProperty` from
|
|
204
|
+
> `openapitools.json` (rather than override them like the other properties).
|
|
205
|
+
|
|
122
206
|
### Debug
|
|
123
207
|
|
|
124
208
|
The OpenApi generator extracts an enhanced JSON data model from the specification YAML and uses this data model to feed the templates to generate the code.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ama-sdk/schematics",
|
|
3
|
-
"version": "10.1.0-
|
|
3
|
+
"version": "10.1.0-rc.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -48,13 +48,13 @@
|
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@ama-sdk/core": "^10.1.0-
|
|
51
|
+
"@ama-sdk/core": "^10.1.0-rc.0",
|
|
52
52
|
"@angular-devkit/core": "~17.2.0",
|
|
53
53
|
"@angular-devkit/schematics": "~17.2.0",
|
|
54
54
|
"@angular-devkit/schematics-cli": "^17.0.1",
|
|
55
55
|
"@angular/cli": "^17.0.1",
|
|
56
|
-
"@o3r/schematics": "^10.1.0-
|
|
57
|
-
"@openapitools/openapi-generator-cli": "~2.
|
|
56
|
+
"@o3r/schematics": "^10.1.0-rc.0",
|
|
57
|
+
"@openapitools/openapi-generator-cli": "~2.10.0",
|
|
58
58
|
"@schematics/angular": "~17.2.0"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
@@ -68,17 +68,17 @@
|
|
|
68
68
|
"tslib": "^2.5.3"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
|
-
"@ama-sdk/core": "^10.1.0-
|
|
71
|
+
"@ama-sdk/core": "^10.1.0-rc.0",
|
|
72
72
|
"@angular-devkit/schematics-cli": "~17.2.0",
|
|
73
73
|
"@angular-eslint/eslint-plugin": "~17.2.0",
|
|
74
74
|
"@angular/cli": "~17.2.0",
|
|
75
75
|
"@nx/eslint-plugin": "~18.0.2",
|
|
76
76
|
"@nx/jest": "~18.0.2",
|
|
77
|
-
"@o3r/build-helpers": "^10.1.0-
|
|
78
|
-
"@o3r/eslint-plugin": "^10.1.0-
|
|
79
|
-
"@o3r/schematics": "^10.1.0-
|
|
80
|
-
"@o3r/test-helpers": "^10.1.0-
|
|
81
|
-
"@openapitools/openapi-generator-cli": "~2.
|
|
77
|
+
"@o3r/build-helpers": "^10.1.0-rc.0",
|
|
78
|
+
"@o3r/eslint-plugin": "^10.1.0-rc.0",
|
|
79
|
+
"@o3r/schematics": "^10.1.0-rc.0",
|
|
80
|
+
"@o3r/test-helpers": "^10.1.0-rc.0",
|
|
81
|
+
"@openapitools/openapi-generator-cli": "~2.10.0",
|
|
82
82
|
"@schematics/angular": "~17.2.0",
|
|
83
83
|
"@stylistic/eslint-plugin-ts": "^1.5.4",
|
|
84
84
|
"@types/jest": "~29.5.2",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-api-cli.generator.d.ts","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAoC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAI5F;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,iBAAiB,CAAC;IAEvE,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,GAAG,MAAM,CAAC;IAClD,SAAS,KAAK,oBAAoB,IAAI,KAAK,GAAG,MAAM,CAEnD;IAED,kBAAkB;IAClB,SAAS,CAAC,QAAQ,CAAC,aAAa,6BAA6B;gBAEjD,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,EAAE,CAAA;KAAE;IAK9D;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAelC;;;;OAIG;IACH,OAAO,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"open-api-cli.generator.d.ts","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAoC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAI5F;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa,CAAC,iBAAiB,CAAC;IAEvE,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,KAAK,GAAG,MAAM,CAAC;IAClD,SAAS,KAAK,oBAAoB,IAAI,KAAK,GAAG,MAAM,CAEnD;IAED,kBAAkB;IAClB,SAAS,CAAC,QAAQ,CAAC,aAAa,6BAA6B;gBAEjD,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,EAAE,CAAA;KAAE;IAK9D;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAelC;;;;OAIG;IACH,OAAO,CAAC,YAAY;IA0BpB,kBAAkB;IAClB,SAAS,CAAC,iBAAiB,0BAA2C;IAEtE,kBAAkB;IAClB,SAAS,CAAC,uBAAuB,oBAAoB;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,yBAI5C,iBAAiB,wBAclD;CACH"}
|
|
@@ -68,11 +68,14 @@ class OpenApiCliGenerator extends code_generator_1.CodeGenerator {
|
|
|
68
68
|
'openapi-generator-cli',
|
|
69
69
|
'generate',
|
|
70
70
|
generatorOptions.generatorCustomPath ? `--custom-generator=${generatorOptions.generatorCustomPath}` : '',
|
|
71
|
-
'-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
...generatorOptions.generatorKey ? ['--generator-key', generatorOptions.generatorKey] :
|
|
72
|
+
[
|
|
73
|
+
'-g', generatorOptions.generatorName,
|
|
74
|
+
'-i', generatorOptions.specPath,
|
|
75
|
+
...generatorOptions.specConfigPath ? ['-c', generatorOptions.specConfigPath] : [],
|
|
76
|
+
'-o', generatorOptions.outputPath,
|
|
77
|
+
...generatorOptions.globalProperty ? ['--global-property', generatorOptions.globalProperty] : []
|
|
78
|
+
]
|
|
76
79
|
];
|
|
77
80
|
return new Promise((resolve, reject) => {
|
|
78
81
|
(0, node_child_process_1.spawn)(this.packageManagerRunner, args, spawnOptions)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-api-cli.generator.js","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.generator.ts"],"names":[],"mappings":";;;AAAA,sDAAgD;AAChD,2DAAuD;AACvD,iEAA4F;AAC5F,kCAAkC;AAClC,6DAAmE;AAEnE;;GAEG;AACH,MAAa,mBAAoB,SAAQ,8BAAgC;IAGvE,IAAc,oBAAoB;QAChC,OAAO,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,CAAC;IAKD,YAAY,OAAkD;QAC5D,KAAK,EAAE,CAAC;QAJV,kBAAkB;QACC,kBAAa,GAAG,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"open-api-cli.generator.js","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,9 +32,22 @@ export type OpenApiCliOptions = CodegenTaskOptions & {
|
|
|
32
32
|
* ```typescript
|
|
33
33
|
* 'debugOperations'
|
|
34
34
|
* ```
|
|
35
|
+
* @example To generate the dates as string types
|
|
36
|
+
* ```typescript
|
|
37
|
+
* 'stringifyDate'
|
|
38
|
+
* ```
|
|
39
|
+
* @example To be able to extend the SDK models and ensure that revivers are generated
|
|
40
|
+
* ```typescript
|
|
41
|
+
* 'allowModelExtension'
|
|
42
|
+
* ```
|
|
35
43
|
* @default ''
|
|
36
44
|
*/
|
|
37
45
|
globalProperty: string;
|
|
46
|
+
/**
|
|
47
|
+
* Run generator by key (from openapitools.json)
|
|
48
|
+
* @default ''
|
|
49
|
+
*/
|
|
50
|
+
generatorKey: string;
|
|
38
51
|
};
|
|
39
52
|
/**
|
|
40
53
|
* Default options to run our custom typescript generator
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-api-cli.options.d.ts","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAGrD;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IACnD;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B
|
|
1
|
+
{"version":3,"file":"open-api-cli.options.d.ts","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAGrD;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IACnD;;;;;;OAMG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iCAAiC,EAAE,iBAS/C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-api-cli.options.js","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.options.ts"],"names":[],"mappings":";;;AACA,kCAAkC;
|
|
1
|
+
{"version":3,"file":"open-api-cli.options.js","sourceRoot":"","sources":["../../../../schematics/code-generator/open-api-cli-generator/open-api-cli.options.ts"],"names":[],"mappings":";;;AACA,kCAAkC;AAqDlC;;GAEG;AACU,QAAA,iCAAiC,GAAsB;IAClE,gBAAgB,EAAE,EAAE;IACpB,aAAa,EAAE,iBAAiB;IAChC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,4BAA4B,EAAE,QAAQ,EAAE,uCAAuC,CAAC;IAC5J,QAAQ,EAAE,mBAAmB;IAC7B,UAAU,EAAE,GAAG;IACf,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;CACjB,CAAC"}
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,IAAI,EAKL,MAAM,4BAA4B,CAAC;AAUpC,OAAO,EAAE,2CAA2C,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,IAAI,EAKL,MAAM,4BAA4B,CAAC;AAUpC,OAAO,EAAE,2CAA2C,EAAE,MAAM,UAAU,CAAC;AA+NvE;;;GAGG;AACH,eAAO,MAAM,uBAAuB,gEAAmE,CAAC"}
|
|
@@ -9,6 +9,8 @@ const semver = require("semver");
|
|
|
9
9
|
const sway = require("sway");
|
|
10
10
|
const tree_glob_1 = require("../../helpers/tree-glob");
|
|
11
11
|
const open_api_cli_generator_1 = require("../../code-generator/open-api-cli-generator/open-api-cli.generator");
|
|
12
|
+
const JAVA_OPTIONS = ['specPath', 'specConfigPath', 'globalProperty', 'outputPath'];
|
|
13
|
+
const OPEN_API_TOOLS_OPTIONS = ['generatorName', 'output', 'inputSpec', 'config', 'globalProperty'];
|
|
12
14
|
const getRegexpTemplate = (regexp) => `new RegExp('${regexp.toString().replace(/\/(.*)\//, '$1').replace(/\\\//g, '/')}')`;
|
|
13
15
|
const getPathObjectTemplate = (pathObj) => {
|
|
14
16
|
return `{
|
|
@@ -18,110 +20,162 @@ const getPathObjectTemplate = (pathObj) => {
|
|
|
18
20
|
}).join(',')}
|
|
19
21
|
}`;
|
|
20
22
|
};
|
|
23
|
+
const getGlobalProperties = (globalPropertyMap, globalProperties) => {
|
|
24
|
+
const globalPropertiesArray = globalProperties.split(',');
|
|
25
|
+
globalPropertiesArray.forEach((property) => {
|
|
26
|
+
const [propName, propValue] = property.split('=');
|
|
27
|
+
globalPropertyMap.set(propName, propValue ?? true);
|
|
28
|
+
});
|
|
29
|
+
return globalPropertyMap;
|
|
30
|
+
};
|
|
31
|
+
const getGeneratorOptions = (tree, context, options) => {
|
|
32
|
+
let openApiToolsJson;
|
|
33
|
+
let openApiToolsJsonGenerator;
|
|
34
|
+
const openApiToolsPath = path.posix.join(options.directory || '', 'openapitools.json');
|
|
35
|
+
// read openapitools.json
|
|
36
|
+
if (tree.exists(openApiToolsPath)) {
|
|
37
|
+
try {
|
|
38
|
+
openApiToolsJson = tree.readJson(openApiToolsPath);
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
context.logger.warn(`File ${openApiToolsPath} could not be parsed. Error message:\n${e}`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
context.logger.warn(`File not found at ${openApiToolsPath}`);
|
|
46
|
+
}
|
|
47
|
+
const openApiVersion = openApiToolsJson?.['generator-cli'].version;
|
|
48
|
+
// get generator config if generator key is provided
|
|
49
|
+
if (openApiToolsJson && options.generatorKey) {
|
|
50
|
+
openApiToolsJsonGenerator = openApiToolsJson['generator-cli'].generators?.[options.generatorKey];
|
|
51
|
+
if (!openApiToolsJsonGenerator) {
|
|
52
|
+
context.logger.warn(`Generator ${options.generatorKey} not found in ${openApiToolsPath} file`);
|
|
53
|
+
}
|
|
54
|
+
else if (openApiToolsJsonGenerator.generatorName !== 'typescriptFetch') {
|
|
55
|
+
context.logger.warn(`Generator ${openApiToolsJsonGenerator.generatorName} is not supported. By default, the generator name is set to typescriptFetch (the only supported generator).`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
const specPath = options.specPath || openApiToolsJsonGenerator?.inputSpec;
|
|
59
|
+
if (!specPath) {
|
|
60
|
+
throw new Error('Path to the swagger/open-api specification is undefined');
|
|
61
|
+
}
|
|
62
|
+
const generatorOptions = { specPath };
|
|
63
|
+
const packageJsonFile = JSON.parse(((0, node_fs_1.readFileSync)(path.join(__dirname, '..', '..', '..', 'package.json'))).toString());
|
|
64
|
+
const packageOpenApiSupportedVersionRange = packageJsonFile.openApiSupportedVersion;
|
|
65
|
+
const packageOpenApiSupportedVersion = packageOpenApiSupportedVersionRange && semver.minVersion(packageOpenApiSupportedVersionRange)?.version;
|
|
66
|
+
if (!!packageOpenApiSupportedVersionRange && !!packageOpenApiSupportedVersion
|
|
67
|
+
&& semver.valid(packageOpenApiSupportedVersion) && (!openApiVersion || !semver.satisfies(openApiVersion, packageOpenApiSupportedVersionRange))) {
|
|
68
|
+
generatorOptions.generatorVersion = packageOpenApiSupportedVersion;
|
|
69
|
+
context.logger.warn((openApiVersion ? `Version ${openApiVersion} is not supported` : `Version not provided`) + `, fallback to ${packageOpenApiSupportedVersion}`);
|
|
70
|
+
}
|
|
71
|
+
else if (!!openApiVersion && semver.valid(openApiVersion)) {
|
|
72
|
+
generatorOptions.generatorVersion = openApiVersion;
|
|
73
|
+
}
|
|
74
|
+
const specConfigPath = options.specConfigPath || openApiToolsJsonGenerator?.config;
|
|
75
|
+
const outputPath = options.outputPath || openApiToolsJsonGenerator?.output;
|
|
76
|
+
// combine global properties from openapitools.json and options
|
|
77
|
+
let globalPropertyMap = new Map();
|
|
78
|
+
if (openApiToolsJsonGenerator?.globalProperty) {
|
|
79
|
+
if (typeof openApiToolsJsonGenerator.globalProperty === 'object') {
|
|
80
|
+
Object.entries(openApiToolsJsonGenerator.globalProperty).forEach(([key, value]) => globalPropertyMap.set(key, value));
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
globalPropertyMap = getGlobalProperties(globalPropertyMap, openApiToolsJsonGenerator.globalProperty);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
if (options.globalProperty) {
|
|
87
|
+
globalPropertyMap = getGlobalProperties(globalPropertyMap, options.globalProperty);
|
|
88
|
+
}
|
|
89
|
+
const globalProperty = Array.from(globalPropertyMap).map(([key, value]) => `${key}=${value}`).join(',');
|
|
90
|
+
// log warning of options that won't be taken into account if generator key and other options are provided in the command
|
|
91
|
+
if (options.generatorKey && openApiToolsJsonGenerator && JAVA_OPTIONS.some((optionName) => typeof options[optionName] !== undefined)) {
|
|
92
|
+
Object.keys(openApiToolsJsonGenerator).filter((option) => !OPEN_API_TOOLS_OPTIONS.includes(option))
|
|
93
|
+
.forEach((ignoredOption) => context.logger.warn(`Option ${ignoredOption} from ${openApiToolsPath} will not be taken into account`));
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
...generatorOptions,
|
|
97
|
+
...(outputPath ? { outputPath } : {}),
|
|
98
|
+
...(specConfigPath ? { specConfigPath } : {}),
|
|
99
|
+
...(globalProperty ? { globalProperty } : {}),
|
|
100
|
+
...(options.generatorCustomPath ? { generatorCustomPath: options.generatorCustomPath } : {})
|
|
101
|
+
};
|
|
102
|
+
};
|
|
21
103
|
/**
|
|
22
104
|
* Generate a typescript SDK source code base on swagger specification
|
|
23
105
|
* @param options
|
|
24
106
|
*/
|
|
25
107
|
function ngGenerateTypescriptSDKFn(options) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
108
|
+
return (tree, context) => {
|
|
109
|
+
const targetPath = options.directory || '';
|
|
110
|
+
const generatorOptions = getGeneratorOptions(tree, context, options);
|
|
111
|
+
/**
|
|
112
|
+
* rule to clear previous SDK generation
|
|
113
|
+
*/
|
|
114
|
+
const clearGeneratedCode = () => {
|
|
115
|
+
(0, tree_glob_1.treeGlob)(tree, path.posix.join(targetPath, 'src', 'api', '**', '*.ts')).forEach((file) => tree.delete(file));
|
|
116
|
+
(0, tree_glob_1.treeGlob)(tree, path.posix.join(targetPath, 'src', 'models', 'base', '**', '!(index).ts')).forEach((file) => tree.delete(file));
|
|
117
|
+
(0, tree_glob_1.treeGlob)(tree, path.posix.join(targetPath, 'src', 'spec', '!(operation-adapter|index).ts')).forEach((file) => tree.delete(file));
|
|
118
|
+
return tree;
|
|
32
119
|
};
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
(0, schematics_1.move)(targetPath),
|
|
74
|
-
(0, schematics_1.renameTemplateFiles)()
|
|
75
|
-
]), schematics_1.MergeStrategy.Overwrite);
|
|
76
|
-
};
|
|
77
|
-
/**
|
|
78
|
-
* Update local swagger spec file
|
|
79
|
-
* @param tree
|
|
80
|
-
* @param _context
|
|
81
|
-
*/
|
|
82
|
-
const updateSpec = (tree, _context) => {
|
|
83
|
-
const readmeFile = path.posix.join(targetPath, 'readme.md');
|
|
84
|
-
const specContent = (0, node_fs_1.readFileSync)(specPath).toString();
|
|
85
|
-
if (tree.exists(readmeFile)) {
|
|
86
|
-
const swaggerVersion = /version: ([0-9]+\.[0-9]+\.[0-9]+)/.exec(specContent);
|
|
87
|
-
if (swaggerVersion) {
|
|
88
|
-
const readmeContent = tree.read(readmeFile).toString('utf8');
|
|
89
|
-
tree.overwrite(readmeFile, readmeContent.replace(/Based on Swagger spec .*/i, `Based on Swagger spec ${swaggerVersion[1]}`));
|
|
120
|
+
const generateOperationFinder = async () => {
|
|
121
|
+
const swayOptions = {
|
|
122
|
+
definition: path.resolve(generatorOptions.specPath)
|
|
123
|
+
};
|
|
124
|
+
const swayApi = await sway.create(swayOptions);
|
|
125
|
+
const extraction = swayApi.getPaths().map((obj) => ({
|
|
126
|
+
path: obj.path,
|
|
127
|
+
regexp: obj.regexp,
|
|
128
|
+
operations: obj.getOperations().map((op) => ({ method: op.method, operationId: op.operationId }))
|
|
129
|
+
}));
|
|
130
|
+
return extraction || [];
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* rule to update readme and generate mandatory code source
|
|
134
|
+
*/
|
|
135
|
+
const generateSource = async () => {
|
|
136
|
+
const pathObjects = await generateOperationFinder();
|
|
137
|
+
const swayOperationAdapter = `[${pathObjects.map((pathObj) => getPathObjectTemplate(pathObj)).join(',')}]`;
|
|
138
|
+
return (0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('./templates'), [
|
|
139
|
+
(0, schematics_1.template)({
|
|
140
|
+
...options,
|
|
141
|
+
swayOperationAdapter,
|
|
142
|
+
empty: ''
|
|
143
|
+
}),
|
|
144
|
+
(0, schematics_1.move)(targetPath),
|
|
145
|
+
(0, schematics_1.renameTemplateFiles)()
|
|
146
|
+
]), schematics_1.MergeStrategy.Overwrite);
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Update local swagger spec file
|
|
150
|
+
*/
|
|
151
|
+
const updateSpec = () => {
|
|
152
|
+
const readmeFile = path.posix.join(targetPath, 'readme.md');
|
|
153
|
+
const specContent = (0, node_fs_1.readFileSync)(generatorOptions.specPath).toString();
|
|
154
|
+
if (tree.exists(readmeFile)) {
|
|
155
|
+
const specVersion = /version: *([0-9]+\.[0-9]+\.[0-9]+(?:-[^ ]+)?)/.exec(specContent);
|
|
156
|
+
if (specVersion) {
|
|
157
|
+
const readmeContent = tree.read(readmeFile).toString('utf8');
|
|
158
|
+
tree.overwrite(readmeFile, readmeContent.replace(/Based on Swagger spec .*/i, `Based on Swagger spec ${specVersion[1]}`));
|
|
159
|
+
}
|
|
90
160
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
catch {
|
|
109
|
-
context.logger.warn('No openapitools.json file found in the project');
|
|
110
|
-
}
|
|
111
|
-
if (!!packageOpenApiSupportedVersion && semver.valid(packageOpenApiSupportedVersion) && (!packageOpenApiSupportedVersion || !semver.satisfies(openApiVersion, packageOpenApiSupportedVersion))) {
|
|
112
|
-
generatorOptions.generatorVersion = packageOpenApiSupportedVersion;
|
|
113
|
-
}
|
|
114
|
-
if (options.specConfigPath) {
|
|
115
|
-
generatorOptions.specConfigPath = options.specConfigPath;
|
|
116
|
-
}
|
|
117
|
-
return () => (new open_api_cli_generator_1.OpenApiCliGenerator(options)).getGeneratorRunSchematic(generatorOptions, { rootDirectory: options.directory || undefined });
|
|
161
|
+
if (tree.exists(path.posix.join(targetPath, 'swagger-spec.yaml'))) {
|
|
162
|
+
tree.overwrite(path.posix.join(targetPath, 'swagger-spec.yaml'), specContent);
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
tree.create(path.posix.join(targetPath, 'swagger-spec.yaml'), specContent);
|
|
166
|
+
}
|
|
167
|
+
return () => tree;
|
|
168
|
+
};
|
|
169
|
+
const runGeneratorRule = () => {
|
|
170
|
+
return () => (new open_api_cli_generator_1.OpenApiCliGenerator(options)).getGeneratorRunSchematic((options.generatorKey && JAVA_OPTIONS.every((optionName) => options[optionName] === undefined)) ? { generatorKey: options.generatorKey } : generatorOptions, { rootDirectory: options.directory || undefined });
|
|
171
|
+
};
|
|
172
|
+
return (0, schematics_1.chain)([
|
|
173
|
+
clearGeneratedCode,
|
|
174
|
+
generateSource,
|
|
175
|
+
updateSpec,
|
|
176
|
+
runGeneratorRule
|
|
177
|
+
]);
|
|
118
178
|
};
|
|
119
|
-
return (0, schematics_1.chain)([
|
|
120
|
-
clearGeneratedCode,
|
|
121
|
-
generateSource,
|
|
122
|
-
updateSpec,
|
|
123
|
-
runGeneratorRule
|
|
124
|
-
]);
|
|
125
179
|
}
|
|
126
180
|
/**
|
|
127
181
|
* Generate a typescript SDK source code base on swagger specification
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/typescript/core/index.ts"],"names":[],"mappings":";;;AAAA,2DAYoC;AAEpC,gDAAwE;AACxE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/typescript/core/index.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
|
Binary file
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { SchematicOptionObject } from '@o3r/schematics';
|
|
2
2
|
export interface NgGenerateTypescriptSDKCoreSchematicsSchema extends SchematicOptionObject {
|
|
3
3
|
/** Path to the swagger specification used to generate the SDK */
|
|
4
|
-
specPath
|
|
4
|
+
specPath?: string;
|
|
5
5
|
/** Directory where to generate the SDK */
|
|
6
6
|
directory?: string | undefined;
|
|
7
7
|
/** Package manager to be used in the generated SDK */
|
|
@@ -12,14 +12,27 @@ export interface NgGenerateTypescriptSDKCoreSchematicsSchema extends SchematicOp
|
|
|
12
12
|
* Comma separated string of options to give to the openapi-generator-cli
|
|
13
13
|
* @example To log the full json structure used to generate models
|
|
14
14
|
* ```typescript
|
|
15
|
-
* '
|
|
15
|
+
* 'debugModels'
|
|
16
16
|
* ```
|
|
17
17
|
* @example To log the full json structure used to generate operations
|
|
18
18
|
* ```typescript
|
|
19
19
|
* 'debugOperations'
|
|
20
20
|
* ```
|
|
21
|
-
* @
|
|
21
|
+
* @example To generate the dates as string types
|
|
22
|
+
* ```typescript
|
|
23
|
+
* 'stringifyDate'
|
|
24
|
+
* ```
|
|
25
|
+
* @example To be able to extend the SDK models and ensure that revivers are generated
|
|
26
|
+
* ```typescript
|
|
27
|
+
* 'allowModelExtension'
|
|
28
|
+
* ```
|
|
22
29
|
*/
|
|
23
30
|
globalProperty: string | undefined;
|
|
31
|
+
/** Run generator by key (from openapitools.json) */
|
|
32
|
+
generatorKey: string | undefined;
|
|
33
|
+
/** Output path for the generated SDK */
|
|
34
|
+
outputPath: string | undefined;
|
|
35
|
+
/** Path to a custom generator */
|
|
36
|
+
generatorCustomPath: string | undefined;
|
|
24
37
|
}
|
|
25
38
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/core/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,2CAA4C,SAAQ,qBAAqB;IACxF,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/core/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,2CAA4C,SAAQ,qBAAqB;IACxF,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/B,sDAAsD;IACtD,cAAc,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IAE3C,gDAAgD;IAChD,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC;;;;;;;;;;;;;;;;;;OAkBG;IACH,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC,oDAAoD;IACpD,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,wCAAwC;IACxC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/B,iCAAiC;IACjC,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC"}
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
"specPath": {
|
|
8
8
|
"type": "string",
|
|
9
9
|
"description": "Path to the swagger/open-api specification used to generate the SDK",
|
|
10
|
-
"x-prompt": "Path to the swagger / open-api spec",
|
|
11
10
|
"$default": {
|
|
12
11
|
"$source": "argv",
|
|
13
12
|
"index": 0
|
|
@@ -32,10 +31,19 @@
|
|
|
32
31
|
"globalProperty": {
|
|
33
32
|
"type": "string",
|
|
34
33
|
"description": "Comma separated string of options to give to the openapi-generator-cli"
|
|
34
|
+
},
|
|
35
|
+
"generatorKey": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Run generator by key (from openapitools.json)"
|
|
38
|
+
},
|
|
39
|
+
"outputPath": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"description": "Output path for the generated SDK"
|
|
42
|
+
},
|
|
43
|
+
"generatorCustomPath": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"description": "Path to a custom generator"
|
|
35
46
|
}
|
|
36
47
|
},
|
|
37
|
-
"additionalProperties": true
|
|
38
|
-
"required": [
|
|
39
|
-
"specPath"
|
|
40
|
-
]
|
|
48
|
+
"additionalProperties": true
|
|
41
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/shell/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,IAAI,EAIL,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAC,4CAA4C,EAAC,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/shell/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,IAAI,EAIL,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAC,4CAA4C,EAAC,MAAM,UAAU,CAAC;AAkG3E;;;GAGG;AACH,eAAO,MAAM,uBAAuB,iEAAmE,CAAC"}
|
|
@@ -54,6 +54,8 @@ function ngGenerateTypescriptSDKFn(options) {
|
|
|
54
54
|
projectDescription: options.description,
|
|
55
55
|
packageManager: (0, node_install_1.getPackageManagerName)(options.packageManager),
|
|
56
56
|
projectHosting: options.hosting,
|
|
57
|
+
exactO3rVersion: options.exactO3rVersion,
|
|
58
|
+
sdkCoreRange: `${options.exactO3rVersion ? '' : '~'}${amaSdkSchematicsPackageJson.version}`,
|
|
57
59
|
sdkCoreVersion: amaSdkSchematicsPackageJson.version,
|
|
58
60
|
angularVersion: amaSdkSchematicsPackageJson.dependencies['@angular-devkit/core'],
|
|
59
61
|
angularEslintVersion: amaSdkSchematicsPackageJson.devDependencies['@angular-eslint/eslint-plugin'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/typescript/shell/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../schematics/typescript/shell/index.ts"],"names":[],"mappings":";;;AAAA,2DAWoC;AACpC,gDAAwE;AACxE,qCAAmC;AACnC,yCAAsD;AACtD,6DAA6E;AAC7E,6DAA2D;AAG3D;;;GAGG;AACH,SAAS,yBAAyB,CAAC,OAAqD;IAEtF,MAAM,WAAW,GAAG,CAAC,KAAW,EAAE,OAAyB,EAAE,EAAE;QAC7D,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,sBAAU,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,oBAAQ,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACpJ,MAAM,WAAW,GAAG,IAAI,yBAAU,CAAC,EAAC,gBAAgB,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,YAAY,EAAE,KAAK,EAAC,CAAC,CAAC;QACpH,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,KAAK,EAAE,IAAU,EAAE,OAAyB,EAAE,EAAE;QAChE,MAAM,2BAA2B,GAAG,MAAM,IAAA,8BAAe,GAAE,CAAC;QAE5D,yDAAyD;QACzD,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,2BAA2B,CAAC,YAAa,CAAC,KAAK;YACxD,aAAa,EAAE,2BAA2B,CAAC,eAAgB,CAAC,aAAa,CAAC;YAC1E,aAAa,EAAE,2BAA2B,CAAC,eAAgB,CAAC,aAAa,CAAC;YAC1E,kCAAkC,EAAE,2BAA2B,CAAC,eAAgB,CAAC,kCAAkC,CAAC;YACpH,2BAA2B,EAAE,2BAA2B,CAAC,eAAgB,CAAC,2BAA2B,CAAC;YACtG,QAAQ,EAAE,2BAA2B,CAAC,eAAgB,CAAC,MAAM;YAC7D,oBAAoB,EAAE,2BAA2B,CAAC,eAAgB,CAAC,oBAAoB,CAAC;YACxF,qBAAqB,EAAE,2BAA2B,CAAC,eAAgB,CAAC,qBAAqB,CAAC;YAC1F,4BAA4B,EAAE,2BAA2B,CAAC,eAAgB,CAAC,4BAA4B,CAAC;YACxG,uBAAuB,EAAE,2BAA2B,CAAC,eAAgB,CAAC,uBAAuB,CAAC;YAC9F,kBAAkB,EAAE,2BAA2B,CAAC,eAAgB,CAAC,kBAAkB,CAAC;YACpF,SAAS,EAAE,2BAA2B,CAAC,eAAgB,CAAC,SAAS,CAAC;YAClE,MAAM,EAAE,2BAA2B,CAAC,eAAgB,CAAC,IAAI;YACzD,SAAS,EAAE,2BAA2B,CAAC,eAAgB,CAAC,SAAS,CAAC;YAClE,QAAQ,EAAE,2BAA2B,CAAC,eAAgB,CAAC,MAAM;YAC7D,YAAY,EAAE,2BAA2B,CAAC,eAAgB,CAAC,UAAU;YACrE,qCAAqC,EAAE,2BAA2B,CAAC,eAAgB,CAAC,qCAAqC,CAAC;YAC1H,MAAM,EAAE,2BAA2B,CAAC,YAAa,CAAC,IAAI;SACvD,CAAC;QACF,MAAM,uBAAuB,GAAG,OAAO,2BAA2B,CAAC,uBAAuB,KAAK,QAAQ;YACrG,2BAA2B,CAAC,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC7D,MAAM,cAAc,GAAG;YACrB,MAAM,EAAE,2BAA2B,CAAC,OAAQ,CAAC,IAAI;YACjD,KAAK,EAAE,2BAA2B,CAAC,OAAQ,CAAC,GAAG;YAC/C,MAAM,EAAE,2BAA2B,CAAC,OAAQ,CAAC,IAAI;SAClD,CAAC;QAEF,MAAM,UAAU,GAAG;YACjB,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,kBAAkB,EAAE,OAAO,CAAC,OAAO;YACnC,kBAAkB,EAAE,OAAO,CAAC,WAAW;YACvC,cAAc,EAAE,IAAA,oCAAqB,EAAC,OAAO,CAAC,cAAc,CAAC;YAC7D,cAAc,EAAE,OAAO,CAAC,OAAO;YAC/B,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,YAAY,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,2BAA2B,CAAC,OAAO,EAAE;YAC3F,cAAc,EAAE,2BAA2B,CAAC,OAAO;YACnD,cAAc,EAAE,2BAA2B,CAAC,YAAa,CAAC,sBAAsB,CAAC;YACjF,oBAAoB,EAAE,2BAA2B,CAAC,eAAgB,CAAC,+BAA+B,CAAC;YACnG,QAAQ;YACR,GAAG,uBAAuB,CAAC,CAAC,CAAC,EAAC,uBAAuB,EAAC,CAAC,CAAC,CAAC,EAAE;YAC3D,cAAc;YACd,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvD,IAAI,UAAU,CAAC,cAAc,KAAK,MAAM,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,iBAAK,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,CAAC,IAAA,cAAI,EAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAQ,CAAC;YAC7F,MAAM,CAAC,UAAU,KAAK,KAAK,CAAC;YAC5B,MAAM,CAAC,iBAAiB,KAAK,EAAE,CAAC;YAChC,MAAM,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,GAAG;gBAClD,YAAY,EAAE;oBACZ,kBAAkB,EAAE,2BAA2B,CAAC,eAAgB,CAAC,kBAAkB,CAAC;iBACrF;aACF,CAAC;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAA,cAAI,EAAC,MAAM,EAAE,EAAC,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,IAAA,cAAI,EAAC,MAAM,EAAE,EAAC,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,sBAAS,EAAC,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,kBAAkB,CAAC,EAAE;YACxD,IAAA,qBAAQ,EAAC,UAAU,CAAC;YACpB,IAAA,iBAAI,EAAC,UAAU,CAAC;YAChB,IAAA,gCAAmB,GAAE;SACtB,CAAC,EAAE,0BAAa,CAAC,SAAS,CAAC,CAAC;QAE7B,OAAO,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,IAAA,kBAAK,EAAC;QACX,SAAS;QACT,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;KAC9C,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACU,QAAA,uBAAuB,GAAG,IAAA,kDAAqC,EAAC,yBAAyB,CAAC,CAAC"}
|
|
@@ -12,5 +12,7 @@ export interface NgGenerateTypescriptSDKShellSchematicsSchema extends SchematicO
|
|
|
12
12
|
packageManager?: 'npm' | 'yarn' | undefined;
|
|
13
13
|
/** Skip NPM install */
|
|
14
14
|
skipInstall: boolean;
|
|
15
|
+
/** Use a pinned version for otter packages */
|
|
16
|
+
exactO3rVersion?: boolean;
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/shell/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,4CAA6C,SAAQ,qBAAqB;IACzF,+FAA+F;IAC/F,IAAI,EAAE,MAAM,CAAC;IAEb,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;IAEhB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/B,sDAAsD;IACtD,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IAE5C,uBAAuB;IACvB,WAAW,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../schematics/typescript/shell/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,4CAA6C,SAAQ,qBAAqB;IACzF,+FAA+F;IAC/F,IAAI,EAAE,MAAM,CAAC;IAEb,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;IAEhB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/B,sDAAsD;IACtD,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IAE5C,uBAAuB;IACvB,WAAW,EAAE,OAAO,CAAC;IAErB,8CAA8C;IAC9C,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B"}
|
|
@@ -35,6 +35,11 @@
|
|
|
35
35
|
"yarn"
|
|
36
36
|
],
|
|
37
37
|
"description": "Package manager to be used in the generated SDK"
|
|
38
|
+
},
|
|
39
|
+
"exactO3rVersion": {
|
|
40
|
+
"type": "boolean",
|
|
41
|
+
"description": "Use a pinned version for otter packages",
|
|
42
|
+
"default": false
|
|
38
43
|
}
|
|
39
44
|
},
|
|
40
45
|
"additionalProperties": true,
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://raw.githubusercontent.com/OpenAPITools/openapi-generator-cli/master/apps/generator-cli/src/config.schema.json",
|
|
3
|
+
"spaces": 2,
|
|
4
|
+
"generator-cli": {
|
|
5
|
+
"version": "<%= openApiSupportedVersion %>",
|
|
6
|
+
"storageDir": ".openapi-generator",
|
|
7
|
+
"generators": {
|
|
8
|
+
"<%=projectName%>-<%=projectPackageName%>": {
|
|
9
|
+
"generatorName": "typescriptFetch",
|
|
10
|
+
"output": ".",
|
|
11
|
+
"inputSpec": "./swagger-spec.yaml"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"set:version": "o3r-set-version --placeholder 0.0.0-placeholder",
|
|
41
41
|
"resolve": "node -e 'process.stdout.write(require.resolve(process.argv[1]));'",
|
|
42
42
|
"generate": "schematics @ama-sdk/schematics:typescript-core",
|
|
43
|
-
"spec:regen": "<%=packageManager%> run generate <% if (packageManager === 'npm') {%>-- <%}%>--
|
|
43
|
+
"spec:regen": "<%=packageManager%> run generate <% if (packageManager === 'npm') {%>-- <%}%>--generator-key <%=projectName%>-<%=projectPackageName%> && amasdk-clear-index",
|
|
44
44
|
"files:pack": "amasdk-files-pack",
|
|
45
45
|
"test": "jest --passWithNoTests",
|
|
46
46
|
"publish:package": "npm publish ./dist",
|
|
@@ -74,12 +74,12 @@
|
|
|
74
74
|
"@commitlint/cli": "^17.0.0",
|
|
75
75
|
"@schematics/angular": "<%= angularVersion %>",
|
|
76
76
|
"@commitlint/config-conventional": "^17.0.0",
|
|
77
|
-
"@ama-sdk/schematics": "
|
|
78
|
-
"@ama-sdk/core": "
|
|
79
|
-
"@o3r/eslint-config-otter": "
|
|
80
|
-
"@o3r/eslint-plugin": "
|
|
81
|
-
"@o3r/schematics": "
|
|
82
|
-
"@o3r/workspace": "
|
|
77
|
+
"@ama-sdk/schematics": "<%= sdkCoreRange %>",
|
|
78
|
+
"@ama-sdk/core": "<%= sdkCoreRange %>",
|
|
79
|
+
"@o3r/eslint-config-otter": "<%= sdkCoreRange %>",
|
|
80
|
+
"@o3r/eslint-plugin": "<%= sdkCoreRange %>",
|
|
81
|
+
"@o3r/schematics": "<%= sdkCoreRange %>",
|
|
82
|
+
"@o3r/workspace": "<%= sdkCoreRange %>",
|
|
83
83
|
"@openapitools/openapi-generator-cli": "<%= versions['@openapitools/openapi-generator-cli'] %>",
|
|
84
84
|
"@swc/cli": "^0.1.57",
|
|
85
85
|
"@swc/core": "^1.3.85",
|
|
@@ -106,7 +106,10 @@
|
|
|
106
106
|
"typedoc": "~0.25.0",
|
|
107
107
|
"tsc-watch": "^6.0.0",
|
|
108
108
|
"typescript": "<%= versions['typescript'] %>"
|
|
109
|
-
}
|
|
109
|
+
},<% if (exactO3rVersion) { %>
|
|
110
|
+
"<%= packageManager == 'yarn' ? 'resolutions' : 'overrides' %>": {
|
|
111
|
+
"@o3r/schematics": "<%= sdkCoreRange %>"
|
|
112
|
+
},<% } %>
|
|
110
113
|
"peerDependencies": {
|
|
111
114
|
"@ama-sdk/core": "~<%= sdkCoreVersion %>",
|
|
112
115
|
"isomorphic-fetch": "<%= versions['isomorphic-fetch'] %>"
|