@axinom/mosaic-cli 0.26.0 → 0.27.0-rc.1
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/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/create-extension-config/create-extension-config.js +1 -1
- package/dist/commands/create-extension-config/create-extension-config.js.map +1 -1
- package/dist/commands/msg-codegen/lint.js +25 -21
- package/dist/commands/msg-codegen/lint.js.map +1 -1
- package/package.json +7 -5
- package/src/commands/msg-codegen/lint.ts +14 -18
package/dist/cli/index.js
CHANGED
|
@@ -30,7 +30,7 @@ const run = () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
|
30
30
|
//adding cli extensions:
|
|
31
31
|
yield Promise.all((0, create_extension_config_1.getExtensions)().map((library) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
32
32
|
try {
|
|
33
|
-
const { cliExtension } = yield
|
|
33
|
+
const { cliExtension } = yield import(library);
|
|
34
34
|
if (cliExtension) {
|
|
35
35
|
cliExtension().map((cmd) => {
|
|
36
36
|
yargs.command(cmd);
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;AAAA,+BAA+B;AAC/B,iEAA6D;AAC7D,iFAG6C;AAC7C,mEAA8D;AAC9D,2DAAuD;AACvD,iDAA8C;AAC9C,yDAAqD;AACrD,mDAA+C;AAC/C,iDAA6C;AAC7C,2EAAqE;AACrE,iEAA6D;AAEtD,MAAM,GAAG,GAAG,GAAwB,EAAE;IAC3C,KAAK;SACF,UAAU,CAAC,QAAQ,CAAC;SACpB,GAAG,EAAE;SACL,OAAO,CAAC,gCAAc,CAAC;SACvB,OAAO,CAAC,iCAAc,CAAC;SACvB,OAAO,CAAC,wCAAiB,CAAC;SAC1B,OAAO,CAAC,gBAAM,CAAC;SACf,OAAO,CAAC,wBAAU,CAAC;SACnB,OAAO,CAAC,kBAAO,CAAC;SAChB,OAAO,CAAC,sDAA4B,CAAC;SACrC,OAAO,CAAC,0BAAW,CAAC;SACpB,OAAO,CAAC,iBAAO,CAAC;SAChB,OAAO,CAAC,gCAAc,CAAC,CAAC;IAE3B,wBAAwB;IACxB,MAAM,OAAO,CAAC,GAAG,CACf,IAAA,uCAAa,GAAE,CAAC,GAAG,CAAC,CAAO,OAAO,EAAE,EAAE;QACpC,IAAI;YACF,MAAM,EAAE,YAAY,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;AAAA,+BAA+B;AAC/B,iEAA6D;AAC7D,iFAG6C;AAC7C,mEAA8D;AAC9D,2DAAuD;AACvD,iDAA8C;AAC9C,yDAAqD;AACrD,mDAA+C;AAC/C,iDAA6C;AAC7C,2EAAqE;AACrE,iEAA6D;AAEtD,MAAM,GAAG,GAAG,GAAwB,EAAE;IAC3C,KAAK;SACF,UAAU,CAAC,QAAQ,CAAC;SACpB,GAAG,EAAE;SACL,OAAO,CAAC,gCAAc,CAAC;SACvB,OAAO,CAAC,iCAAc,CAAC;SACvB,OAAO,CAAC,wCAAiB,CAAC;SAC1B,OAAO,CAAC,gBAAM,CAAC;SACf,OAAO,CAAC,wBAAU,CAAC;SACnB,OAAO,CAAC,kBAAO,CAAC;SAChB,OAAO,CAAC,sDAA4B,CAAC;SACrC,OAAO,CAAC,0BAAW,CAAC;SACpB,OAAO,CAAC,iBAAO,CAAC;SAChB,OAAO,CAAC,gCAAc,CAAC,CAAC;IAE3B,wBAAwB;IACxB,MAAM,OAAO,CAAC,GAAG,CACf,IAAA,uCAAa,GAAE,CAAC,GAAG,CAAC,CAAO,OAAO,EAAE,EAAE;QACpC,IAAI;YACF,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,YAAY,EAAE;gBAChB,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACzB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;aACJ;SACF;QAAC,OAAO,KAAK,EAAE;YACd,gEAAgE;SACjE;IACH,CAAC,CAAA,CAAC,CACH,CAAC;IAEF,KAAK;SACF,aAAa,EAAE;SACf,IAAI,EAAE;SACN,MAAM,CAAC,wDAAwD,CAAC,CAAC,IAAI,CAAC;AAC3E,CAAC,CAAA,CAAC;AAnCW,QAAA,GAAG,OAmCd"}
|
|
@@ -66,7 +66,7 @@ const createExtensionConfig = () => tslib_1.__awaiter(void 0, void 0, void 0, fu
|
|
|
66
66
|
yield Promise.all(installedMosaicLibs.map((lib) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
67
67
|
//filter libraries, that have cli extension
|
|
68
68
|
try {
|
|
69
|
-
const result = yield
|
|
69
|
+
const result = yield import(lib);
|
|
70
70
|
if (result.cliExtension) {
|
|
71
71
|
extensions.push(lib);
|
|
72
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-extension-config.js","sourceRoot":"","sources":["../../../src/commands/create-extension-config/create-extension-config.ts"],"names":[],"mappings":";;;;AAAA,iDAAqC;AACrC,qDAAqD;AACrD,yBAAyB;AACzB,6BAA6B;AAC7B,+BAAiC;AACjC,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,oBAAI,CAAC,CAAC;AAElC;;;GAGG;AACH,MAAM,uBAAuB,GAAG,YAAY,CAAC;AAE7C;;GAEG;AACH,MAAM,kBAAkB,GACtB,yDAAyD,CAAC;AAE5D;;;GAGG;AACH,MAAM,qBAAqB,GAAG,GAA4B,EAAE;;IAC1D,IAAI,mBAAmB,GAAa,EAAE,CAAC;IACvC,MAAM,iBAAiB,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAErD,IAAI,iBAAiB,CAAC,MAAM,EAAE;QAC5B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;KACvC;IAED,IAAI,iBAAiB,CAAC,MAAM,EAAE;QAC5B,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,IAAI,CACtD,iBAAiB,CAAC,MAAM,CACzB;YACC,CAAC,CAAC,gDAAgD;YAClD,CAAC,CAAC,0DAA0D,CAAC;QAE/D,MAAM,kBAAkB,GAAG,MAAM,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAChE,IAAI,kBAAkB,CAAC,MAAM,EAAE;YAC7B,mBAAmB,GAAG;gBACpB,GAAG,IAAI,GAAG,CAAC,MAAA,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,mCAAI,EAAE,CAAC;aACtE,CAAC;SACH;QACD,IAAI,kBAAkB,CAAC,MAAM,EAAE;YAC7B,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;SACxC;KACF;IACD,OAAO,mBAAmB,CAAC;AAC7B,CAAC,CAAA,CAAC;AAEF;;;GAGG;AACI,MAAM,sBAAsB,GAAG,GAAW,EAAE;IACjD,MAAM,gBAAgB,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IACtD,IAAI,gBAAgB,EAAE;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,SAAS,CAAC,CAAC;KAChE;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC,CAAC;AANW,QAAA,sBAAsB,0BAMjC;AAEF;;GAEG;AACI,MAAM,qBAAqB,GAAG,GAAwB,EAAE;IAC7D,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAC5D,MAAM,mBAAmB,GAAG,MAAM,qBAAqB,EAAE,CAAC;IAC1D,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,OAAO,CAAC,GAAG,CACf,mBAAmB,CAAC,GAAG,CAAC,CAAO,GAAW,EAAE,EAAE;QAC5C,2CAA2C;QAC3C,IAAI;YACF,MAAM,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"create-extension-config.js","sourceRoot":"","sources":["../../../src/commands/create-extension-config/create-extension-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.lint = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const
|
|
5
|
+
const spectral_core_1 = require("@stoplight/spectral-core");
|
|
6
|
+
const Parsers = require("@stoplight/spectral-parsers");
|
|
7
|
+
const with_loader_1 = require("@stoplight/spectral-ruleset-bundler/with-loader");
|
|
8
|
+
const spectral_runtime_1 = require("@stoplight/spectral-runtime");
|
|
6
9
|
const fs = require("fs");
|
|
7
10
|
const glob = require("glob");
|
|
8
11
|
const path = require("path");
|
|
@@ -10,10 +13,8 @@ function lint(options) {
|
|
|
10
13
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
14
|
console.log(`Linting schemas at ${options.inputDir}.`);
|
|
12
15
|
// Configure Spectral
|
|
13
|
-
const spectral = new
|
|
14
|
-
spectral.
|
|
15
|
-
spectral.registerFormat('json-schema-draft4', spectral_1.isJSONSchemaDraft4);
|
|
16
|
-
spectral.loadRuleset(getRuleset(options));
|
|
16
|
+
const spectral = new spectral_core_1.Spectral({});
|
|
17
|
+
spectral.setRuleset(yield getRuleset(options));
|
|
17
18
|
let lintingErrors = false;
|
|
18
19
|
// Find JSON schemas and lint
|
|
19
20
|
const schemas = glob.sync(path.join(options.inputDir, '/**/*.json'), {
|
|
@@ -25,7 +26,7 @@ function lint(options) {
|
|
|
25
26
|
}
|
|
26
27
|
for (const schema of schemas) {
|
|
27
28
|
// console.log(schema);
|
|
28
|
-
const document = new
|
|
29
|
+
const document = new spectral_core_1.Document(fs.readFileSync(schema, 'utf-8'), Parsers.Json, schema);
|
|
29
30
|
const results = yield spectral.run(document);
|
|
30
31
|
const errors = results.filter((r) => r.severity === 0);
|
|
31
32
|
if (errors.length > 0) {
|
|
@@ -47,21 +48,24 @@ function lint(options) {
|
|
|
47
48
|
}
|
|
48
49
|
exports.lint = lint;
|
|
49
50
|
function getRuleset(options) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
// This has to be an abs path, otherwise Spectral will fall back to network resolution.
|
|
53
|
+
let rulesetPath;
|
|
54
|
+
if (!options.rulesetPath) {
|
|
55
|
+
console.log('No ruleset path provided, trying to find one in the input directory.');
|
|
56
|
+
const defaultRulesetPath = path.resolve(options.inputDir, '.spectral.yaml');
|
|
57
|
+
if (!fs.existsSync(defaultRulesetPath)) {
|
|
58
|
+
console.log(`Could not find default ruleset at ${defaultRulesetPath}, exiting.`);
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
rulesetPath = defaultRulesetPath;
|
|
58
62
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
ruleset
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
else {
|
|
64
|
+
rulesetPath = path.resolve(options.rulesetPath);
|
|
65
|
+
}
|
|
66
|
+
console.log(`Using ruleset ${rulesetPath}`);
|
|
67
|
+
const ruleset = yield (0, with_loader_1.bundleAndLoadRuleset)(rulesetPath, { fs, fetch: spectral_runtime_1.fetch });
|
|
68
|
+
return ruleset;
|
|
69
|
+
});
|
|
66
70
|
}
|
|
67
71
|
//# sourceMappingURL=lint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../../src/commands/msg-codegen/lint.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../../src/commands/msg-codegen/lint.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axinom/mosaic-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0-rc.1",
|
|
4
4
|
"description": "The Axinom Mosaic CLI",
|
|
5
5
|
"author": "Axinom",
|
|
6
6
|
"license": "PROPRIETARY",
|
|
@@ -33,10 +33,12 @@
|
|
|
33
33
|
"@asyncapi/diff": "^0.4.1",
|
|
34
34
|
"@asyncapi/modelina": "^1.8.4",
|
|
35
35
|
"@asyncapi/parser": "^2.0.2",
|
|
36
|
-
"@axinom/mosaic-id-link-be": "^0.
|
|
37
|
-
"@axinom/mosaic-service-common": "^0.
|
|
36
|
+
"@axinom/mosaic-id-link-be": "^0.15.0-rc.1",
|
|
37
|
+
"@axinom/mosaic-service-common": "^0.43.0-rc.1",
|
|
38
38
|
"@graphql-inspector/core": "^3.1.2",
|
|
39
|
-
"@stoplight/spectral": "^
|
|
39
|
+
"@stoplight/spectral-core": "^1.18.3",
|
|
40
|
+
"@stoplight/spectral-parsers": "^1.0.3",
|
|
41
|
+
"@stoplight/spectral-ruleset-bundler": "^1.5.2",
|
|
40
42
|
"axios": "^0.19.2",
|
|
41
43
|
"chalk": "^4.1.0",
|
|
42
44
|
"diff": "^5.0.0",
|
|
@@ -68,5 +70,5 @@
|
|
|
68
70
|
"publishConfig": {
|
|
69
71
|
"access": "public"
|
|
70
72
|
},
|
|
71
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "77b807466fa307f1b992b4d7f538070d91ebb073"
|
|
72
74
|
}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Parsers,
|
|
6
|
-
Spectral,
|
|
7
|
-
} from '@stoplight/spectral';
|
|
1
|
+
import { Document, Ruleset, Spectral } from '@stoplight/spectral-core';
|
|
2
|
+
import * as Parsers from '@stoplight/spectral-parsers';
|
|
3
|
+
import { bundleAndLoadRuleset } from '@stoplight/spectral-ruleset-bundler/with-loader';
|
|
4
|
+
import { fetch } from '@stoplight/spectral-runtime';
|
|
8
5
|
import * as fs from 'fs';
|
|
9
6
|
import * as glob from 'glob';
|
|
10
7
|
import * as path from 'path';
|
|
@@ -15,9 +12,7 @@ export async function lint(options: MessageCodegenOptions): Promise<void> {
|
|
|
15
12
|
|
|
16
13
|
// Configure Spectral
|
|
17
14
|
const spectral = new Spectral({});
|
|
18
|
-
spectral.
|
|
19
|
-
spectral.registerFormat('json-schema-draft4', isJSONSchemaDraft4);
|
|
20
|
-
spectral.loadRuleset(getRuleset(options));
|
|
15
|
+
spectral.setRuleset(await getRuleset(options));
|
|
21
16
|
|
|
22
17
|
let lintingErrors = false;
|
|
23
18
|
// Find JSON schemas and lint
|
|
@@ -56,29 +51,30 @@ export async function lint(options: MessageCodegenOptions): Promise<void> {
|
|
|
56
51
|
}
|
|
57
52
|
}
|
|
58
53
|
|
|
59
|
-
function getRuleset(options: MessageCodegenOptions):
|
|
54
|
+
async function getRuleset(options: MessageCodegenOptions): Promise<Ruleset> {
|
|
60
55
|
// This has to be an abs path, otherwise Spectral will fall back to network resolution.
|
|
61
|
-
let
|
|
56
|
+
let rulesetPath: string;
|
|
62
57
|
|
|
63
58
|
if (!options.rulesetPath) {
|
|
64
59
|
console.log(
|
|
65
60
|
'No ruleset path provided, trying to find one in the input directory.',
|
|
66
61
|
);
|
|
67
62
|
|
|
68
|
-
const
|
|
63
|
+
const defaultRulesetPath = path.resolve(options.inputDir, '.spectral.yaml');
|
|
69
64
|
|
|
70
|
-
if (!fs.existsSync(
|
|
65
|
+
if (!fs.existsSync(defaultRulesetPath)) {
|
|
71
66
|
console.log(
|
|
72
|
-
`Could not find default ruleset at ${
|
|
67
|
+
`Could not find default ruleset at ${defaultRulesetPath}, exiting.`,
|
|
73
68
|
);
|
|
74
69
|
process.exit(1);
|
|
75
70
|
}
|
|
76
|
-
|
|
71
|
+
rulesetPath = defaultRulesetPath;
|
|
77
72
|
} else {
|
|
78
|
-
|
|
73
|
+
rulesetPath = path.resolve(options.rulesetPath);
|
|
79
74
|
}
|
|
80
75
|
|
|
81
|
-
console.log(`Using ruleset ${
|
|
76
|
+
console.log(`Using ruleset ${rulesetPath}`);
|
|
77
|
+
const ruleset = await bundleAndLoadRuleset(rulesetPath, { fs, fetch });
|
|
82
78
|
|
|
83
79
|
return ruleset;
|
|
84
80
|
}
|