@ama-openapi/cli 14.1.0-prerelease.3 → 14.1.0-prerelease.31

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  # @ama-openapi/cli
2
2
 
3
3
  > [!WARNING]
4
- > [Experimental](https://github.com/AmadeusITGroup/otter/blob/main/README.md#experimental): This package is available in early access, it will be part of the v14 release.
4
+ > [Experimental](https://github.com/AmadeusITGroup/otter/blob/main/README.md#experimental): This package is available in early access, the final version will be released in v15.
5
5
 
6
6
  [![Stable Version](https://img.shields.io/npm/v/@ama-openapi/cli?style=for-the-badge)](https://www.npmjs.com/package/@ama-openapi/cli)
7
7
  [![Bundle Size](https://img.shields.io/bundlephobia/min/@ama-openapi/cli?color=green&style=for-the-badge)](https://www.npmjs.com/package/@ama-openapi/cli)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ama-openapi/cli",
3
- "version": "14.1.0-prerelease.3",
3
+ "version": "14.1.0-prerelease.31",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -32,13 +32,13 @@
32
32
  }
33
33
  },
34
34
  "dependencies": {
35
- "@ama-openapi/core": "~14.1.0-prerelease.3",
35
+ "@ama-openapi/core": "~14.1.0-prerelease.31",
36
36
  "tslib": "^2.6.2",
37
37
  "yargs": "~18.0.0"
38
38
  },
39
39
  "peerDependencies": {
40
- "@o3r/telemetry": "~14.1.0-prerelease.3",
41
- "chokidar": "^4.0.3"
40
+ "@o3r/telemetry": "~14.1.0-prerelease.31",
41
+ "chokidar": "^4.0.0 || ^5.0.0"
42
42
  },
43
43
  "peerDependenciesMeta": {
44
44
  "@o3r/telemetry": {
@@ -49,30 +49,31 @@
49
49
  }
50
50
  },
51
51
  "devDependencies": {
52
+ "@angular/cli": "~21.1.0",
52
53
  "@babel/core": "~7.29.0",
53
54
  "@babel/preset-env": "~7.29.0",
54
55
  "@babel/preset-typescript": "~7.28.0",
55
56
  "@compodoc/compodoc": "^1.1.32",
56
57
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.0",
57
- "@nx/eslint": "~22.3.3",
58
- "@nx/eslint-plugin": "~22.3.3",
59
- "@nx/jest": "~22.3.3",
60
- "@nx/js": "~22.3.3",
61
- "@o3r/build-helpers": "~14.1.0-prerelease.3",
62
- "@o3r/eslint-plugin": "~14.1.0-prerelease.3",
63
- "@o3r/telemetry": "~14.1.0-prerelease.3",
64
- "@o3r/test-helpers": "~14.1.0-prerelease.3",
65
- "@stylistic/eslint-plugin": "~5.6.0",
58
+ "@nx/eslint": "~22.5.0",
59
+ "@nx/eslint-plugin": "~22.5.0",
60
+ "@nx/jest": "~22.5.0",
61
+ "@nx/js": "~22.5.0",
62
+ "@o3r/build-helpers": "~14.1.0-prerelease.31",
63
+ "@o3r/eslint-plugin": "~14.1.0-prerelease.31",
64
+ "@o3r/telemetry": "~14.1.0-prerelease.31",
65
+ "@o3r/test-helpers": "~14.1.0-prerelease.31",
66
+ "@stylistic/eslint-plugin": "~5.7.0",
66
67
  "@types/jest": "~30.0.0",
67
68
  "@types/js-yaml": "^4.0.5",
68
69
  "@types/minimist": "^1.2.2",
69
70
  "@types/node": "~24.10.0",
70
71
  "@types/semver": "^7.3.13",
71
72
  "@types/yargs": "~17.0.33",
72
- "@typescript-eslint/parser": "~8.52.0",
73
- "angular-eslint": "~21.0.1",
73
+ "@typescript-eslint/parser": "~8.54.0",
74
+ "angular-eslint": "~21.2.0",
74
75
  "babel-jest": "^30.0.5",
75
- "chokidar": "^4.0.3",
76
+ "chokidar": "~5.0.0",
76
77
  "cpy-cli": "^6.0.0",
77
78
  "eslint": "~9.39.0",
78
79
  "eslint-import-resolver-node": "~0.3.9",
@@ -80,7 +81,7 @@
80
81
  "eslint-plugin-import": "~2.32.0",
81
82
  "eslint-plugin-import-newlines": "~1.4.0",
82
83
  "eslint-plugin-jest": "~29.12.0",
83
- "eslint-plugin-jsdoc": "~61.5.0",
84
+ "eslint-plugin-jsdoc": "~61.7.0",
84
85
  "eslint-plugin-prefer-arrow": "~1.2.3",
85
86
  "eslint-plugin-unicorn": "~62.0.0",
86
87
  "eslint-plugin-unused-imports": "~4.3.0",
@@ -90,13 +91,13 @@
90
91
  "jest-resolve": "~30.2.0",
91
92
  "jest-util": "~30.2.0",
92
93
  "jsonc-eslint-parser": "~2.4.0",
93
- "nx": "~22.3.3",
94
+ "nx": "~22.5.0",
94
95
  "ts-jest": "~29.4.0",
95
96
  "typescript": "~5.9.2",
96
- "typescript-eslint": "~8.52.0"
97
+ "typescript-eslint": "~8.54.0"
97
98
  },
98
99
  "engines": {
99
- "node": "^20.19.0 || ^22.17.0 || ^24.0.0"
100
+ "node": "^22.17.0 || ^24.0.0"
100
101
  },
101
102
  "contributors": [
102
103
  {
package/src/main.mjs CHANGED
@@ -1,6 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  /* eslint-disable no-console -- required for CLI feedback */
3
- import { DEFAULT_MANIFEST_FILENAMES, generateValidationSchemaFiles, getLogger, installDependencies,
3
+ import { existsSync, } from 'node:fs';
4
+ import { rm, } from 'node:fs/promises';
5
+ import { resolve, } from 'node:path';
6
+ import { DEFAULT_MANIFEST_FILENAMES, DEFAULT_SCHEMA_OUTPUT_DIRECTORY, generateValidationSchemaFiles, getLogger, installDependencies, OPENAPI_NPM_KEYWORDS,
4
7
  // eslint-disable-next-line import/no-unresolved -- Cannot resolve mjs file in current setup (see #3738)
5
8
  } from '@ama-openapi/core';
6
9
  import yargs from 'yargs';
@@ -19,13 +22,33 @@ void yargs(hideBin(process.argv))
19
22
  return yargsInstance
20
23
  .option('output', {
21
24
  type: 'string',
25
+ default: DEFAULT_SCHEMA_OUTPUT_DIRECTORY,
22
26
  alias: 'o',
23
27
  description: 'Output directory where generating the schemas'
28
+ })
29
+ .option('keywords', {
30
+ type: 'string',
31
+ array: true,
32
+ alias: 'k',
33
+ default: OPENAPI_NPM_KEYWORDS,
34
+ description: 'List of NPM Keywords to use when searching for packages exposing OpenAPI specifications'
35
+ })
36
+ .option('clean', {
37
+ type: 'boolean',
38
+ alias: 'c',
39
+ default: false,
40
+ description: 'Clean the output directory before generating the schemas'
24
41
  });
25
42
  }, async (args) => {
26
43
  const logger = args.logLevel === 'silent' ? undefined : getLogger(args.logLevel, console);
27
44
  try {
28
- await generateValidationSchemaFiles(process.cwd(), { logger, outputDirectory: args.output });
45
+ const outputDirectory = args.output;
46
+ const outputDirectoryPath = resolve(process.cwd(), outputDirectory);
47
+ if (args.clean && existsSync(outputDirectoryPath)) {
48
+ logger?.info(`Cleaning output directory "${outputDirectory}"...`);
49
+ await rm(outputDirectoryPath, { recursive: true, force: true });
50
+ }
51
+ await generateValidationSchemaFiles(process.cwd(), { logger, outputDirectory, keywordsWhitelist: args.keywords.map(String) });
29
52
  }
30
53
  catch (e) {
31
54
  (logger?.error ?? console.error)(e);
@@ -62,5 +85,6 @@ void yargs(hideBin(process.argv))
62
85
  });
63
86
  });
64
87
  })
88
+ .strictCommands()
65
89
  .parse();
66
90
  //# sourceMappingURL=main.mjs.map
package/src/main.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.mjs","sourceRoot":"","sources":["../../src/main.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.mjs","sourceRoot":"","sources":["../../src/main.mts"],"names":[],"mappings":"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"}