@ama-openapi/cli 14.0.0-next.7 → 14.0.0-next.9
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 +18 -3
- package/package.json +12 -12
- package/src/main.mjs +20 -3
- package/src/main.mjs.map +1 -1
package/README.md
CHANGED
|
@@ -39,9 +39,9 @@ The following global options can be used with any command:
|
|
|
39
39
|
| `--log-level`, `-l` | `"silent" \| "error" \| "warning" \| "info" \| "debug"` | `error` | Define the specific level of logs to display in the console |
|
|
40
40
|
| `--help`, `-h` | | | Show help information |
|
|
41
41
|
|
|
42
|
-
## Available
|
|
42
|
+
## Available commands
|
|
43
43
|
|
|
44
|
-
###
|
|
44
|
+
### `install` command
|
|
45
45
|
|
|
46
46
|
This command scans for [manifest files](https://github.com/AmadeusITGroup/otter/tree/main/docs/openapi/MANIFEST_CONFIGURATION.md) in the current working directory and installs all [OpenAPI specifications](https://www.openapis.org/) specified in those files. The installation process will download and process the OpenAPI specifications according to the configuration in your manifest.
|
|
47
47
|
|
|
@@ -62,7 +62,7 @@ ama-openapi install --debug
|
|
|
62
62
|
ama-openapi install --silent
|
|
63
63
|
```
|
|
64
64
|
|
|
65
|
-
###
|
|
65
|
+
### `watch` command
|
|
66
66
|
|
|
67
67
|
This command starts a file watcher that monitors manifest files for changes. When a manifest file is modified, it automatically triggers the installation process, ensuring your [OpenAPI specifications](https://www.openapis.org/) are always up to date during development.
|
|
68
68
|
|
|
@@ -80,6 +80,21 @@ ama-openapi watch
|
|
|
80
80
|
ama-openapi watch --debug
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
+
### `generate-schema` command
|
|
84
|
+
|
|
85
|
+
Generate the [JSON Schemas](https://json-schema.org/) that can be used for configuration auto completion.
|
|
86
|
+
|
|
87
|
+
```shell
|
|
88
|
+
npm exec @ama-openapi/cli generate-schema -- [options]
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
#### Options
|
|
92
|
+
|
|
93
|
+
| Option | Alias | Description | Default value |
|
|
94
|
+
| --- | --- | --- | --- |
|
|
95
|
+
| `--output` | `-o` | Output directory where to generate the schemas | `'./schemas'` |
|
|
96
|
+
| `--keywords` | `-k` | List of the keywords to include in the artifact to be considered in the schema generation | `['openapi']` |
|
|
97
|
+
|
|
83
98
|
## Expose shareable models
|
|
84
99
|
|
|
85
100
|
To expose models from the OpenAPI package, the following setups are required:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ama-openapi/cli",
|
|
3
|
-
"version": "14.0.0-next.
|
|
3
|
+
"version": "14.0.0-next.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@ama-openapi/core": "~14.0.0-next.
|
|
35
|
+
"@ama-openapi/core": "~14.0.0-next.9",
|
|
36
36
|
"tslib": "^2.6.2",
|
|
37
37
|
"yargs": "~18.0.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"@o3r/telemetry": "~14.0.0-next.
|
|
40
|
+
"@o3r/telemetry": "~14.0.0-next.9",
|
|
41
41
|
"chokidar": "^4.0.3"
|
|
42
42
|
},
|
|
43
43
|
"peerDependenciesMeta": {
|
|
@@ -58,10 +58,10 @@
|
|
|
58
58
|
"@nx/eslint-plugin": "~21.6.0",
|
|
59
59
|
"@nx/jest": "~21.6.0",
|
|
60
60
|
"@nx/js": "~21.6.0",
|
|
61
|
-
"@o3r/build-helpers": "~14.0.0-next.
|
|
62
|
-
"@o3r/eslint-plugin": "~14.0.0-next.
|
|
63
|
-
"@o3r/telemetry": "~14.0.0-next.
|
|
64
|
-
"@o3r/test-helpers": "~14.0.0-next.
|
|
61
|
+
"@o3r/build-helpers": "~14.0.0-next.9",
|
|
62
|
+
"@o3r/eslint-plugin": "~14.0.0-next.9",
|
|
63
|
+
"@o3r/telemetry": "~14.0.0-next.9",
|
|
64
|
+
"@o3r/test-helpers": "~14.0.0-next.9",
|
|
65
65
|
"@stylistic/eslint-plugin": "~5.6.0",
|
|
66
66
|
"@types/jest": "~30.0.0",
|
|
67
67
|
"@types/js-yaml": "^4.0.5",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"@types/node": "~24.10.0",
|
|
70
70
|
"@types/semver": "^7.3.13",
|
|
71
71
|
"@types/yargs": "~17.0.33",
|
|
72
|
-
"@typescript-eslint/parser": "~8.
|
|
72
|
+
"@typescript-eslint/parser": "~8.51.0",
|
|
73
73
|
"angular-eslint": "~20.6.0",
|
|
74
74
|
"babel-jest": "^30.0.5",
|
|
75
75
|
"chokidar": "^4.0.3",
|
|
@@ -79,10 +79,10 @@
|
|
|
79
79
|
"eslint-import-resolver-typescript": "~4.4.0",
|
|
80
80
|
"eslint-plugin-import": "~2.32.0",
|
|
81
81
|
"eslint-plugin-import-newlines": "~1.4.0",
|
|
82
|
-
"eslint-plugin-jest": "~29.
|
|
83
|
-
"eslint-plugin-jsdoc": "~
|
|
82
|
+
"eslint-plugin-jest": "~29.11.0",
|
|
83
|
+
"eslint-plugin-jsdoc": "~61.5.0",
|
|
84
84
|
"eslint-plugin-prefer-arrow": "~1.2.3",
|
|
85
|
-
"eslint-plugin-unicorn": "~
|
|
85
|
+
"eslint-plugin-unicorn": "~62.0.0",
|
|
86
86
|
"eslint-plugin-unused-imports": "~4.3.0",
|
|
87
87
|
"globals": "^16.0.0",
|
|
88
88
|
"jest": "~30.2.0",
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
"nx": "~21.6.0",
|
|
94
94
|
"ts-jest": "~29.4.0",
|
|
95
95
|
"typescript": "~5.9.2",
|
|
96
|
-
"typescript-eslint": "~8.
|
|
96
|
+
"typescript-eslint": "~8.51.0"
|
|
97
97
|
},
|
|
98
98
|
"engines": {
|
|
99
99
|
"node": "^20.19.0 || ^22.17.0 || ^24.0.0"
|
package/src/main.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/* eslint-disable no-console -- required for CLI feedback */
|
|
3
|
-
import { DEFAULT_MANIFEST_FILENAMES, getLogger, installDependencies,
|
|
3
|
+
import { DEFAULT_MANIFEST_FILENAMES, generateValidationSchemaFiles, getLogger, installDependencies,
|
|
4
4
|
// eslint-disable-next-line import/no-unresolved -- Cannot resolve mjs file in current setup (see #3738)
|
|
5
5
|
} from '@ama-openapi/core';
|
|
6
6
|
import yargs from 'yargs';
|
|
@@ -14,14 +14,31 @@ void yargs(hideBin(process.argv))
|
|
|
14
14
|
choices: logLevels,
|
|
15
15
|
description: 'Determine the level of logs to display',
|
|
16
16
|
default: 'error'
|
|
17
|
+
})
|
|
18
|
+
.command('generate-schema', 'Generate the schema that can be used for configuration auto completion', (yargsInstance) => {
|
|
19
|
+
return yargsInstance
|
|
20
|
+
.option('output', {
|
|
21
|
+
type: 'string',
|
|
22
|
+
alias: 'o',
|
|
23
|
+
description: 'Output directory where generating the schemas'
|
|
24
|
+
});
|
|
25
|
+
}, async (args) => {
|
|
26
|
+
const logger = args.logLevel === 'silent' ? undefined : getLogger(args.logLevel, console);
|
|
27
|
+
try {
|
|
28
|
+
await generateValidationSchemaFiles(process.cwd(), { logger, outputDirectory: args.output });
|
|
29
|
+
}
|
|
30
|
+
catch (e) {
|
|
31
|
+
(logger?.error ?? console.error)(e);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
}
|
|
17
34
|
})
|
|
18
35
|
.command('install', 'Install the OpenAPI specifications from manifest files', () => { }, async (args) => {
|
|
36
|
+
const logger = args.logLevel === 'silent' ? undefined : getLogger(args.logLevel, console);
|
|
19
37
|
try {
|
|
20
|
-
const logger = args.logLevel === 'silent' ? undefined : getLogger(args.logLevel, console);
|
|
21
38
|
await installDependencies(process.cwd(), { logger });
|
|
22
39
|
}
|
|
23
40
|
catch (e) {
|
|
24
|
-
console.error(e);
|
|
41
|
+
(logger?.error ?? console.error)(e);
|
|
25
42
|
process.exit(1);
|
|
26
43
|
}
|
|
27
44
|
})
|
package/src/main.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.mjs","sourceRoot":"","sources":["../../src/main.mts"],"names":[],"mappings":";AAEA,4DAA4D;AAE5D,OAAO,EACL,0BAA0B,EAC1B,SAAS,EACT,mBAAmB;AAEnB,wGAAwG;EACzG,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,OAAO,GACR,MAAM,eAAe,CAAC;AAEvB,4BAA4B;AAC5B,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAA+B,CAAC;AAE7F,KAAK,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC9B,MAAM,CAAC,WAAW,EAAE;IACnB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,wCAAwC;IACrD,OAAO,EAAE,OAAO;CACjB,CAAC;
|
|
1
|
+
{"version":3,"file":"main.mjs","sourceRoot":"","sources":["../../src/main.mts"],"names":[],"mappings":"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"}
|