@skmtc/core 0.0.543 → 0.0.545
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/esm/context/CoreContext.d.ts +5 -5
- package/esm/context/CoreContext.d.ts.map +1 -1
- package/esm/context/CoreContext.js +5 -5
- package/esm/context/ParseContext.d.ts +4 -3
- package/esm/context/ParseContext.d.ts.map +1 -1
- package/esm/context/ParseContext.js +32 -24
- package/esm/run/transform.d.ts +2 -2
- package/esm/run/transform.d.ts.map +1 -1
- package/esm/run/transform.js +2 -2
- package/package.json +3 -1
- package/script/context/CoreContext.d.ts +5 -5
- package/script/context/CoreContext.d.ts.map +1 -1
- package/script/context/CoreContext.js +5 -5
- package/script/context/ParseContext.d.ts +4 -3
- package/script/context/ParseContext.d.ts.map +1 -1
- package/script/context/ParseContext.js +37 -48
- package/script/run/transform.d.ts +2 -2
- package/script/run/transform.d.ts.map +1 -1
- package/script/run/transform.js +2 -2
|
@@ -8,7 +8,7 @@ import type { ResultType } from '../types/Results.js';
|
|
|
8
8
|
import * as log from '../deps/jsr.io/@std/log/0.224.8/mod.js';
|
|
9
9
|
import type { GeneratorKey } from '../types/GeneratorKeys.js';
|
|
10
10
|
import type { GeneratorType, GeneratorsMap } from '../types/GeneratorType.js';
|
|
11
|
-
import { Preview } from '../types/Preview.js';
|
|
11
|
+
import type { Preview } from '../types/Preview.js';
|
|
12
12
|
export type ParsePhase = {
|
|
13
13
|
type: 'parse';
|
|
14
14
|
context: ParseContext;
|
|
@@ -36,17 +36,17 @@ export declare class CoreContext {
|
|
|
36
36
|
#private;
|
|
37
37
|
logger: log.Logger;
|
|
38
38
|
constructor({ spanId, logsPath }: CoreContextArgs);
|
|
39
|
-
parse(schema: string): {
|
|
39
|
+
parse(schema: string): Promise<{
|
|
40
40
|
oasDocument: OasDocument;
|
|
41
41
|
extensions: Record<string, unknown>;
|
|
42
|
-
}
|
|
43
|
-
transform({ schema, settings, toGeneratorsMap, prettier }: TransformArgs): {
|
|
42
|
+
}>;
|
|
43
|
+
transform({ schema, settings, toGeneratorsMap, prettier }: TransformArgs): Promise<{
|
|
44
44
|
results: import("../types/Results.js").ResultsItem;
|
|
45
45
|
files: Record<string, import("../types/Manifest.js").ManifestEntry>;
|
|
46
46
|
previews: Record<string, Record<string, Preview>>;
|
|
47
47
|
pinnable: Partial<Record<GeneratorKey, string>>;
|
|
48
48
|
artifacts: Record<string, string>;
|
|
49
|
-
}
|
|
49
|
+
}>;
|
|
50
50
|
trace<T>(token: string | string[], fn: () => T): T;
|
|
51
51
|
captureCurrentResult(result: ResultType): void;
|
|
52
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreContext.d.ts","sourceRoot":"","sources":["../../src/context/CoreContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAG7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAM7D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"CoreContext.d.ts","sourceRoot":"","sources":["../../src/context/CoreContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAG7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAM7D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,eAAe,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,aAAa,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,aAAa,GAAG,WAAW,CAAA;AAYrE,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAUD,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;IACpC,eAAe,EAAE,CAAC,cAAc,OAAO,aAAa,CAClD,aAAa,CAAC,cAAc,CAAC,EAC7B,cAAc,CACf,CAAA;IACD,QAAQ,CAAC,EAAE,kBAAkB,CAAA;CAC9B,CAAA;AAOD,qBAAa,WAAW;;IACtB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;gBAKN,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,eAAe;IAiD3C,KAAK,CAAC,MAAM,EAAE,MAAM;;;;IAapB,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,aAAa;;;;;;;IAsE9E,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAiClD,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;CAwB/C;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,GAAG,CAAC,SAAS,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,cAAc,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,iBAAiB,GAAG,MAAM,CAQnF"}
|
|
@@ -36,16 +36,16 @@ export class CoreContext {
|
|
|
36
36
|
__classPrivateFieldSet(this, _CoreContext_results, new ResultsLog(), "f");
|
|
37
37
|
this.logger = __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupLogger).call(this, { spanId, logsPath });
|
|
38
38
|
}
|
|
39
|
-
parse(schema) {
|
|
39
|
+
async parse(schema) {
|
|
40
40
|
__classPrivateFieldSet(this, _CoreContext_phase, __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupParsePhase).call(this, schema), "f");
|
|
41
|
-
const oasDocument = __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
41
|
+
const oasDocument = await __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
42
42
|
const extensions = __classPrivateFieldGet(this, _CoreContext_phase, "f").context.extentions;
|
|
43
43
|
return {
|
|
44
44
|
oasDocument,
|
|
45
45
|
extensions
|
|
46
46
|
};
|
|
47
47
|
}
|
|
48
|
-
transform({ schema, settings, toGeneratorsMap, prettier }) {
|
|
48
|
+
async transform({ schema, settings, toGeneratorsMap, prettier }) {
|
|
49
49
|
// Temp workaround to extract generator keys during
|
|
50
50
|
// 'render' by invoking a callback passed during 'generate'
|
|
51
51
|
try {
|
|
@@ -54,9 +54,9 @@ export class CoreContext {
|
|
|
54
54
|
__classPrivateFieldGet(this, _CoreContext_phase, "f").context.addGeneratorKey({ generatorKey });
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
|
-
const oasDocument = this.trace('parse', () => {
|
|
57
|
+
const oasDocument = await this.trace('parse', async () => {
|
|
58
58
|
__classPrivateFieldSet(this, _CoreContext_phase, __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupParsePhase).call(this, schema), "f");
|
|
59
|
-
return __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
59
|
+
return await __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
60
60
|
});
|
|
61
61
|
const { files, previews } = this.trace('generate', () => {
|
|
62
62
|
__classPrivateFieldSet(this, _CoreContext_phase, __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupGeneratePhase).call(this, {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OpenAPIV3 } from 'openapi-types';
|
|
1
|
+
import type { OpenAPIV2, OpenAPIV3, OpenAPIV3_1 } from 'openapi-types';
|
|
2
2
|
import { OasDocument } from '../oas/document/Document.js';
|
|
3
3
|
import type * as log from '../deps/jsr.io/@std/log/0.224.8/mod.js';
|
|
4
4
|
import type { StackTrail } from './StackTrail.js';
|
|
@@ -24,11 +24,12 @@ export declare class ParseContext {
|
|
|
24
24
|
stackTrail: StackTrail;
|
|
25
25
|
extentions: Record<string, unknown>;
|
|
26
26
|
constructor({ schema, logger, stackTrail }: ConstructorArgs);
|
|
27
|
-
parse(): OasDocument
|
|
27
|
+
parse(): Promise<OasDocument>;
|
|
28
28
|
trace<T>(token: string | string[], fn: () => T): T;
|
|
29
29
|
registerExtension({ extensionFields, stackTrail, type }: RegisterExtensionArgs): void;
|
|
30
30
|
logSkippedFields(skipped: Record<string, unknown>): void;
|
|
31
31
|
}
|
|
32
|
-
export declare const
|
|
32
|
+
export declare const stringToSchema: (schema: string) => OpenAPIV2.Document | OpenAPIV3.Document | OpenAPIV3_1.Document;
|
|
33
|
+
export declare const toV3Document: (schema: OpenAPIV2.Document | OpenAPIV3.Document | OpenAPIV3_1.Document) => Promise<OpenAPIV3.Document>;
|
|
33
34
|
export {};
|
|
34
35
|
//# sourceMappingURL=ParseContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAUjD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACzC,CAAA;AAED,qBAAa,YAAY;;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAEvB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,eAAe;IAQrD,KAAK;IAWX,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAalD,iBAAiB,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,qBAAqB,GAAG,IAAI;IAIrF,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlD;AAED,eAAO,MAAM,cAAc,WACjB,MAAM,KACb,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,QAMxD,CAAA;AAED,eAAO,MAAM,YAAY,WACf,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,KACrE,OAAO,CAAC,SAAS,CAAC,QAAQ,CAsB5B,CAAA"}
|
|
@@ -3,14 +3,15 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
3
3
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
|
-
var _ParseContext_instances,
|
|
6
|
+
var _ParseContext_instances, _ParseContext_parseDocument;
|
|
7
7
|
import { setWith } from 'lodash-es';
|
|
8
|
-
import * as Sentry from '@sentry/deno';
|
|
9
8
|
import { parse as parseYaml } from '../deps/jsr.io/@std/yaml/0.215.0/mod.js';
|
|
10
9
|
import { toDocumentFieldsV3 } from '../oas/document/toDocumentFieldsV3.js';
|
|
11
10
|
import { OasDocument } from '../oas/document/Document.js';
|
|
12
11
|
import { tracer } from '../helpers/tracer.js';
|
|
13
|
-
import { Converter } from '@apiture/openapi-down-convert';
|
|
12
|
+
import { Converter as ThreeOneToThreeZeroConverter } from '@apiture/openapi-down-convert';
|
|
13
|
+
import { match, P } from 'ts-pattern';
|
|
14
|
+
import converter from 'swagger2openapi';
|
|
14
15
|
export class ParseContext {
|
|
15
16
|
constructor({ schema, logger, stackTrail }) {
|
|
16
17
|
_ParseContext_instances.add(this);
|
|
@@ -50,19 +51,12 @@ export class ParseContext {
|
|
|
50
51
|
this.extentions = {};
|
|
51
52
|
this.oasDocument = new OasDocument();
|
|
52
53
|
}
|
|
53
|
-
parse() {
|
|
54
|
-
const documentObject =
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
allOfTransform: true
|
|
60
|
-
};
|
|
61
|
-
const converter = new Converter(documentObject, options);
|
|
62
|
-
const oas30Document = converter.convert();
|
|
63
|
-
return __classPrivateFieldGet(this, _ParseContext_instances, "m", _ParseContext_parseDocument).call(this, oas30Document);
|
|
64
|
-
}
|
|
65
|
-
return __classPrivateFieldGet(this, _ParseContext_instances, "m", _ParseContext_parseDocument).call(this, documentObject);
|
|
54
|
+
async parse() {
|
|
55
|
+
const documentObject = stringToSchema(this.schema);
|
|
56
|
+
const oas30Document = await toV3Document(documentObject);
|
|
57
|
+
const oasDocument = __classPrivateFieldGet(this, _ParseContext_instances, "m", _ParseContext_parseDocument).call(this, oas30Document);
|
|
58
|
+
console.log('OAS DOCUMENT', JSON.stringify(oasDocument, null, 2));
|
|
59
|
+
return oasDocument;
|
|
66
60
|
}
|
|
67
61
|
trace(token, fn) {
|
|
68
62
|
return tracer(this.stackTrail, token, fn);
|
|
@@ -80,20 +74,14 @@ export class ParseContext {
|
|
|
80
74
|
});
|
|
81
75
|
}
|
|
82
76
|
}
|
|
83
|
-
_ParseContext_instances = new WeakSet(),
|
|
84
|
-
const documentObject = Sentry.startSpan({ name: 'Parse string schema to object' }, () => parseSchema(this.schema));
|
|
85
|
-
return documentObject;
|
|
86
|
-
}, _ParseContext_parseDocument = function _ParseContext_parseDocument(documentObject) {
|
|
87
|
-
if (!documentObject.openapi.startsWith('3.0.')) {
|
|
88
|
-
throw new Error('Only OpenAPI v3 is supported');
|
|
89
|
-
}
|
|
77
|
+
_ParseContext_instances = new WeakSet(), _ParseContext_parseDocument = function _ParseContext_parseDocument(documentObject) {
|
|
90
78
|
this.oasDocument.fields = toDocumentFieldsV3({
|
|
91
79
|
documentObject,
|
|
92
80
|
context: this
|
|
93
81
|
});
|
|
94
82
|
return this.oasDocument;
|
|
95
83
|
};
|
|
96
|
-
export const
|
|
84
|
+
export const stringToSchema = (schema) => {
|
|
97
85
|
if (schema.trimStart().startsWith('{')) {
|
|
98
86
|
return JSON.parse(schema);
|
|
99
87
|
}
|
|
@@ -101,3 +89,23 @@ export const parseSchema = (schema) => {
|
|
|
101
89
|
return parseYaml(schema);
|
|
102
90
|
}
|
|
103
91
|
};
|
|
92
|
+
export const toV3Document = async (schema) => {
|
|
93
|
+
return await match(schema)
|
|
94
|
+
.with({ openapi: P.string.startsWith('3.0.') }, doc => doc)
|
|
95
|
+
.with({ openapi: P.string.startsWith('3.1.') }, doc => {
|
|
96
|
+
const options = {
|
|
97
|
+
verbose: false,
|
|
98
|
+
deleteExampleWithId: false,
|
|
99
|
+
allOfTransform: true
|
|
100
|
+
};
|
|
101
|
+
const converter = new ThreeOneToThreeZeroConverter(doc, options);
|
|
102
|
+
return converter.convert();
|
|
103
|
+
})
|
|
104
|
+
.with({ swagger: '2.0.0' }, async (doc) => {
|
|
105
|
+
const parsed = await converter.convertObj(doc, {});
|
|
106
|
+
return parsed;
|
|
107
|
+
})
|
|
108
|
+
.otherwise(() => {
|
|
109
|
+
throw new Error('Unrecognized OpenAPI version');
|
|
110
|
+
});
|
|
111
|
+
};
|
package/esm/run/transform.d.ts
CHANGED
|
@@ -12,9 +12,9 @@ type TransformArgs = {
|
|
|
12
12
|
toGeneratorsMap: <EnrichmentType>() => GeneratorsMap<GeneratorType<EnrichmentType>, EnrichmentType>;
|
|
13
13
|
startAt: number;
|
|
14
14
|
};
|
|
15
|
-
export declare const transform: ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }: TransformArgs) => {
|
|
15
|
+
export declare const transform: ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }: TransformArgs) => Promise<{
|
|
16
16
|
artifacts: Record<string, string>;
|
|
17
17
|
manifest: ManifestContent;
|
|
18
|
-
}
|
|
18
|
+
}>;
|
|
19
19
|
export {};
|
|
20
20
|
//# sourceMappingURL=transform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/run/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAEpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE7E,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,EAAE,kBAAkB,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,CAAC,cAAc,OAAO,aAAa,CAClD,aAAa,CAAC,cAAc,CAAC,EAC7B,cAAc,CACf,CAAA;IACD,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,SAAS,wFASnB,aAAa;;;
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/run/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAEpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE7E,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,EAAE,kBAAkB,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,CAAC,cAAc,OAAO,aAAa,CAClD,aAAa,CAAC,cAAc,CAAC,EAC7B,cAAc,CACf,CAAA;IACD,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,SAAS,wFASnB,aAAa;;;EAwBf,CAAA"}
|
package/esm/run/transform.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as dntShim from "../_dnt.shims.js";
|
|
2
2
|
import { CoreContext } from '../context/CoreContext.js';
|
|
3
|
-
export const transform = ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }) => {
|
|
3
|
+
export const transform = async ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }) => {
|
|
4
4
|
const context = new CoreContext({ spanId, logsPath });
|
|
5
|
-
const { artifacts, files, previews, pinnable, results } = context.transform({
|
|
5
|
+
const { artifacts, files, previews, pinnable, results } = await context.transform({
|
|
6
6
|
settings,
|
|
7
7
|
toGeneratorsMap,
|
|
8
8
|
prettier,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skmtc/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.545",
|
|
4
4
|
"main": "./script/mod.js",
|
|
5
5
|
"module": "./esm/mod.js",
|
|
6
6
|
"exports": {
|
|
@@ -65,8 +65,10 @@
|
|
|
65
65
|
"@sentry/deno": "8.47.0",
|
|
66
66
|
"@types/babel__helper-validator-identifier": "7.15.2",
|
|
67
67
|
"@types/lodash-es": "4.17.12",
|
|
68
|
+
"@types/swagger2openapi": "7.0.4",
|
|
68
69
|
"lodash-es": "4.17.21",
|
|
69
70
|
"openapi-types": "12.1.3",
|
|
71
|
+
"swagger2openapi": "7.0.8",
|
|
70
72
|
"tiny-invariant": "1.3.3",
|
|
71
73
|
"ts-pattern": "5.6.0",
|
|
72
74
|
"zod": "3.24.1",
|
|
@@ -8,7 +8,7 @@ import type { ResultType } from '../types/Results.js';
|
|
|
8
8
|
import * as log from '../deps/jsr.io/@std/log/0.224.8/mod.js';
|
|
9
9
|
import type { GeneratorKey } from '../types/GeneratorKeys.js';
|
|
10
10
|
import type { GeneratorType, GeneratorsMap } from '../types/GeneratorType.js';
|
|
11
|
-
import { Preview } from '../types/Preview.js';
|
|
11
|
+
import type { Preview } from '../types/Preview.js';
|
|
12
12
|
export type ParsePhase = {
|
|
13
13
|
type: 'parse';
|
|
14
14
|
context: ParseContext;
|
|
@@ -36,17 +36,17 @@ export declare class CoreContext {
|
|
|
36
36
|
#private;
|
|
37
37
|
logger: log.Logger;
|
|
38
38
|
constructor({ spanId, logsPath }: CoreContextArgs);
|
|
39
|
-
parse(schema: string): {
|
|
39
|
+
parse(schema: string): Promise<{
|
|
40
40
|
oasDocument: OasDocument;
|
|
41
41
|
extensions: Record<string, unknown>;
|
|
42
|
-
}
|
|
43
|
-
transform({ schema, settings, toGeneratorsMap, prettier }: TransformArgs): {
|
|
42
|
+
}>;
|
|
43
|
+
transform({ schema, settings, toGeneratorsMap, prettier }: TransformArgs): Promise<{
|
|
44
44
|
results: import("../types/Results.js").ResultsItem;
|
|
45
45
|
files: Record<string, import("../types/Manifest.js").ManifestEntry>;
|
|
46
46
|
previews: Record<string, Record<string, Preview>>;
|
|
47
47
|
pinnable: Partial<Record<GeneratorKey, string>>;
|
|
48
48
|
artifacts: Record<string, string>;
|
|
49
|
-
}
|
|
49
|
+
}>;
|
|
50
50
|
trace<T>(token: string | string[], fn: () => T): T;
|
|
51
51
|
captureCurrentResult(result: ResultType): void;
|
|
52
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreContext.d.ts","sourceRoot":"","sources":["../../src/context/CoreContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAG7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAM7D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"CoreContext.d.ts","sourceRoot":"","sources":["../../src/context/CoreContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAG7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAM7D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC7E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,eAAe,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,aAAa,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,aAAa,GAAG,WAAW,CAAA;AAYrE,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAUD,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;IACpC,eAAe,EAAE,CAAC,cAAc,OAAO,aAAa,CAClD,aAAa,CAAC,cAAc,CAAC,EAC7B,cAAc,CACf,CAAA;IACD,QAAQ,CAAC,EAAE,kBAAkB,CAAA;CAC9B,CAAA;AAOD,qBAAa,WAAW;;IACtB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;gBAKN,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,eAAe;IAiD3C,KAAK,CAAC,MAAM,EAAE,MAAM;;;;IAapB,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,aAAa;;;;;;;IAsE9E,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAiClD,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;CAwB/C;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,GAAG,CAAC,SAAS,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,cAAc,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,iBAAiB,GAAG,MAAM,CAQnF"}
|
|
@@ -63,16 +63,16 @@ class CoreContext {
|
|
|
63
63
|
__classPrivateFieldSet(this, _CoreContext_results, new ResultsLog_js_1.ResultsLog(), "f");
|
|
64
64
|
this.logger = __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupLogger).call(this, { spanId, logsPath });
|
|
65
65
|
}
|
|
66
|
-
parse(schema) {
|
|
66
|
+
async parse(schema) {
|
|
67
67
|
__classPrivateFieldSet(this, _CoreContext_phase, __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupParsePhase).call(this, schema), "f");
|
|
68
|
-
const oasDocument = __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
68
|
+
const oasDocument = await __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
69
69
|
const extensions = __classPrivateFieldGet(this, _CoreContext_phase, "f").context.extentions;
|
|
70
70
|
return {
|
|
71
71
|
oasDocument,
|
|
72
72
|
extensions
|
|
73
73
|
};
|
|
74
74
|
}
|
|
75
|
-
transform({ schema, settings, toGeneratorsMap, prettier }) {
|
|
75
|
+
async transform({ schema, settings, toGeneratorsMap, prettier }) {
|
|
76
76
|
// Temp workaround to extract generator keys during
|
|
77
77
|
// 'render' by invoking a callback passed during 'generate'
|
|
78
78
|
try {
|
|
@@ -81,9 +81,9 @@ class CoreContext {
|
|
|
81
81
|
__classPrivateFieldGet(this, _CoreContext_phase, "f").context.addGeneratorKey({ generatorKey });
|
|
82
82
|
}
|
|
83
83
|
};
|
|
84
|
-
const oasDocument = this.trace('parse', () => {
|
|
84
|
+
const oasDocument = await this.trace('parse', async () => {
|
|
85
85
|
__classPrivateFieldSet(this, _CoreContext_phase, __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupParsePhase).call(this, schema), "f");
|
|
86
|
-
return __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
86
|
+
return await __classPrivateFieldGet(this, _CoreContext_phase, "f").context.parse();
|
|
87
87
|
});
|
|
88
88
|
const { files, previews } = this.trace('generate', () => {
|
|
89
89
|
__classPrivateFieldSet(this, _CoreContext_phase, __classPrivateFieldGet(this, _CoreContext_instances, "m", _CoreContext_setupGeneratePhase).call(this, {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OpenAPIV3 } from 'openapi-types';
|
|
1
|
+
import type { OpenAPIV2, OpenAPIV3, OpenAPIV3_1 } from 'openapi-types';
|
|
2
2
|
import { OasDocument } from '../oas/document/Document.js';
|
|
3
3
|
import type * as log from '../deps/jsr.io/@std/log/0.224.8/mod.js';
|
|
4
4
|
import type { StackTrail } from './StackTrail.js';
|
|
@@ -24,11 +24,12 @@ export declare class ParseContext {
|
|
|
24
24
|
stackTrail: StackTrail;
|
|
25
25
|
extentions: Record<string, unknown>;
|
|
26
26
|
constructor({ schema, logger, stackTrail }: ConstructorArgs);
|
|
27
|
-
parse(): OasDocument
|
|
27
|
+
parse(): Promise<OasDocument>;
|
|
28
28
|
trace<T>(token: string | string[], fn: () => T): T;
|
|
29
29
|
registerExtension({ extensionFields, stackTrail, type }: RegisterExtensionArgs): void;
|
|
30
30
|
logSkippedFields(skipped: Record<string, unknown>): void;
|
|
31
31
|
}
|
|
32
|
-
export declare const
|
|
32
|
+
export declare const stringToSchema: (schema: string) => OpenAPIV2.Document | OpenAPIV3.Document | OpenAPIV3_1.Document;
|
|
33
|
+
export declare const toV3Document: (schema: OpenAPIV2.Document | OpenAPIV3.Document | OpenAPIV3_1.Document) => Promise<OpenAPIV3.Document>;
|
|
33
34
|
export {};
|
|
34
35
|
//# sourceMappingURL=ParseContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"ParseContext.d.ts","sourceRoot":"","sources":["../../src/context/ParseContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,KAAK,GAAG,MAAM,wCAAwC,CAAA;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAUjD,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAA;AAED,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACzC,CAAA;AAED,qBAAa,YAAY;;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAC,MAAM,CAAA;IAClB,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBAEvB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,eAAe;IAQrD,KAAK;IAWX,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAalD,iBAAiB,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,qBAAqB,GAAG,IAAI;IAIrF,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlD;AAED,eAAO,MAAM,cAAc,WACjB,MAAM,KACb,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,QAMxD,CAAA;AAED,eAAO,MAAM,YAAY,WACf,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAQ,KACrE,OAAO,CAAC,SAAS,CAAC,QAAQ,CAsB5B,CAAA"}
|
|
@@ -1,42 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
26
3
|
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
27
4
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
28
5
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
29
6
|
};
|
|
30
|
-
var
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
var _ParseContext_instances, _ParseContext_parseDocument;
|
|
31
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
-
exports.
|
|
12
|
+
exports.toV3Document = exports.stringToSchema = exports.ParseContext = void 0;
|
|
33
13
|
const lodash_es_1 = require("lodash-es");
|
|
34
|
-
const Sentry = __importStar(require("@sentry/deno"));
|
|
35
14
|
const mod_js_1 = require("../deps/jsr.io/@std/yaml/0.215.0/mod.js");
|
|
36
15
|
const toDocumentFieldsV3_js_1 = require("../oas/document/toDocumentFieldsV3.js");
|
|
37
16
|
const Document_js_1 = require("../oas/document/Document.js");
|
|
38
17
|
const tracer_js_1 = require("../helpers/tracer.js");
|
|
39
18
|
const openapi_down_convert_1 = require("@apiture/openapi-down-convert");
|
|
19
|
+
const ts_pattern_1 = require("ts-pattern");
|
|
20
|
+
const swagger2openapi_1 = __importDefault(require("swagger2openapi"));
|
|
40
21
|
class ParseContext {
|
|
41
22
|
constructor({ schema, logger, stackTrail }) {
|
|
42
23
|
_ParseContext_instances.add(this);
|
|
@@ -76,19 +57,12 @@ class ParseContext {
|
|
|
76
57
|
this.extentions = {};
|
|
77
58
|
this.oasDocument = new Document_js_1.OasDocument();
|
|
78
59
|
}
|
|
79
|
-
parse() {
|
|
80
|
-
const documentObject =
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
allOfTransform: true
|
|
86
|
-
};
|
|
87
|
-
const converter = new openapi_down_convert_1.Converter(documentObject, options);
|
|
88
|
-
const oas30Document = converter.convert();
|
|
89
|
-
return __classPrivateFieldGet(this, _ParseContext_instances, "m", _ParseContext_parseDocument).call(this, oas30Document);
|
|
90
|
-
}
|
|
91
|
-
return __classPrivateFieldGet(this, _ParseContext_instances, "m", _ParseContext_parseDocument).call(this, documentObject);
|
|
60
|
+
async parse() {
|
|
61
|
+
const documentObject = (0, exports.stringToSchema)(this.schema);
|
|
62
|
+
const oas30Document = await (0, exports.toV3Document)(documentObject);
|
|
63
|
+
const oasDocument = __classPrivateFieldGet(this, _ParseContext_instances, "m", _ParseContext_parseDocument).call(this, oas30Document);
|
|
64
|
+
console.log('OAS DOCUMENT', JSON.stringify(oasDocument, null, 2));
|
|
65
|
+
return oasDocument;
|
|
92
66
|
}
|
|
93
67
|
trace(token, fn) {
|
|
94
68
|
return (0, tracer_js_1.tracer)(this.stackTrail, token, fn);
|
|
@@ -107,20 +81,14 @@ class ParseContext {
|
|
|
107
81
|
}
|
|
108
82
|
}
|
|
109
83
|
exports.ParseContext = ParseContext;
|
|
110
|
-
_ParseContext_instances = new WeakSet(),
|
|
111
|
-
const documentObject = Sentry.startSpan({ name: 'Parse string schema to object' }, () => (0, exports.parseSchema)(this.schema));
|
|
112
|
-
return documentObject;
|
|
113
|
-
}, _ParseContext_parseDocument = function _ParseContext_parseDocument(documentObject) {
|
|
114
|
-
if (!documentObject.openapi.startsWith('3.0.')) {
|
|
115
|
-
throw new Error('Only OpenAPI v3 is supported');
|
|
116
|
-
}
|
|
84
|
+
_ParseContext_instances = new WeakSet(), _ParseContext_parseDocument = function _ParseContext_parseDocument(documentObject) {
|
|
117
85
|
this.oasDocument.fields = (0, toDocumentFieldsV3_js_1.toDocumentFieldsV3)({
|
|
118
86
|
documentObject,
|
|
119
87
|
context: this
|
|
120
88
|
});
|
|
121
89
|
return this.oasDocument;
|
|
122
90
|
};
|
|
123
|
-
const
|
|
91
|
+
const stringToSchema = (schema) => {
|
|
124
92
|
if (schema.trimStart().startsWith('{')) {
|
|
125
93
|
return JSON.parse(schema);
|
|
126
94
|
}
|
|
@@ -128,4 +96,25 @@ const parseSchema = (schema) => {
|
|
|
128
96
|
return (0, mod_js_1.parse)(schema);
|
|
129
97
|
}
|
|
130
98
|
};
|
|
131
|
-
exports.
|
|
99
|
+
exports.stringToSchema = stringToSchema;
|
|
100
|
+
const toV3Document = async (schema) => {
|
|
101
|
+
return await (0, ts_pattern_1.match)(schema)
|
|
102
|
+
.with({ openapi: ts_pattern_1.P.string.startsWith('3.0.') }, doc => doc)
|
|
103
|
+
.with({ openapi: ts_pattern_1.P.string.startsWith('3.1.') }, doc => {
|
|
104
|
+
const options = {
|
|
105
|
+
verbose: false,
|
|
106
|
+
deleteExampleWithId: false,
|
|
107
|
+
allOfTransform: true
|
|
108
|
+
};
|
|
109
|
+
const converter = new openapi_down_convert_1.Converter(doc, options);
|
|
110
|
+
return converter.convert();
|
|
111
|
+
})
|
|
112
|
+
.with({ swagger: '2.0.0' }, async (doc) => {
|
|
113
|
+
const parsed = await swagger2openapi_1.default.convertObj(doc, {});
|
|
114
|
+
return parsed;
|
|
115
|
+
})
|
|
116
|
+
.otherwise(() => {
|
|
117
|
+
throw new Error('Unrecognized OpenAPI version');
|
|
118
|
+
});
|
|
119
|
+
};
|
|
120
|
+
exports.toV3Document = toV3Document;
|
|
@@ -12,9 +12,9 @@ type TransformArgs = {
|
|
|
12
12
|
toGeneratorsMap: <EnrichmentType>() => GeneratorsMap<GeneratorType<EnrichmentType>, EnrichmentType>;
|
|
13
13
|
startAt: number;
|
|
14
14
|
};
|
|
15
|
-
export declare const transform: ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }: TransformArgs) => {
|
|
15
|
+
export declare const transform: ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }: TransformArgs) => Promise<{
|
|
16
16
|
artifacts: Record<string, string>;
|
|
17
17
|
manifest: ManifestContent;
|
|
18
|
-
}
|
|
18
|
+
}>;
|
|
19
19
|
export {};
|
|
20
20
|
//# sourceMappingURL=transform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/run/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAEpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE7E,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,EAAE,kBAAkB,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,CAAC,cAAc,OAAO,aAAa,CAClD,aAAa,CAAC,cAAc,CAAC,EAC7B,cAAc,CACf,CAAA;IACD,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,SAAS,wFASnB,aAAa;;;
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/run/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAEpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAE7E,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,cAAc,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,EAAE,kBAAkB,CAAA;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,CAAC,cAAc,OAAO,aAAa,CAClD,aAAa,CAAC,cAAc,CAAC,EAC7B,cAAc,CACf,CAAA;IACD,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,SAAS,wFASnB,aAAa;;;EAwBf,CAAA"}
|
package/script/run/transform.js
CHANGED
|
@@ -26,9 +26,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.transform = void 0;
|
|
27
27
|
const dntShim = __importStar(require("../_dnt.shims.js"));
|
|
28
28
|
const CoreContext_js_1 = require("../context/CoreContext.js");
|
|
29
|
-
const transform = ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }) => {
|
|
29
|
+
const transform = async ({ traceId, spanId, schema, settings, prettier, toGeneratorsMap, logsPath, startAt }) => {
|
|
30
30
|
const context = new CoreContext_js_1.CoreContext({ spanId, logsPath });
|
|
31
|
-
const { artifacts, files, previews, pinnable, results } = context.transform({
|
|
31
|
+
const { artifacts, files, previews, pinnable, results } = await context.transform({
|
|
32
32
|
settings,
|
|
33
33
|
toGeneratorsMap,
|
|
34
34
|
prettier,
|