@goast/core 0.3.8 → 0.4.0-beta2
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/LICENSE +21 -0
- package/README.md +2 -4
- package/esm/_dnt.shims.d.ts +11 -0
- package/esm/_dnt.shims.d.ts.map +1 -0
- package/esm/_dnt.shims.js +66 -0
- package/esm/index.d.ts +6 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/lib/ast/index.d.ts +2 -0
- package/esm/lib/ast/index.d.ts.map +1 -0
- package/{types → esm}/lib/ast/node.d.ts +2 -1
- package/esm/lib/ast/node.d.ts.map +1 -0
- package/esm/lib/ast/node.js +6 -0
- package/{types → esm}/lib/codegen/config.d.ts +3 -2
- package/esm/lib/codegen/config.d.ts.map +1 -0
- package/{types → esm}/lib/codegen/endpoints-generator.d.ts +9 -6
- package/esm/lib/codegen/endpoints-generator.d.ts.map +1 -0
- package/esm/lib/codegen/endpoints-generator.js +9 -4
- package/{types → esm}/lib/codegen/generator.d.ts +11 -11
- package/esm/lib/codegen/generator.d.ts.map +1 -0
- package/esm/lib/codegen/generator.js +24 -10
- package/esm/lib/codegen/index.d.ts +7 -0
- package/esm/lib/codegen/index.d.ts.map +1 -0
- package/{types → esm}/lib/codegen/internal-utils.d.ts +1 -0
- package/esm/lib/codegen/internal-utils.d.ts.map +1 -0
- package/{types → esm}/lib/codegen/schemas-generator.d.ts +9 -6
- package/esm/lib/codegen/schemas-generator.d.ts.map +1 -0
- package/esm/lib/codegen/schemas-generator.js +11 -5
- package/{types → esm}/lib/codegen/services-generator.d.ts +9 -6
- package/esm/lib/codegen/services-generator.d.ts.map +1 -0
- package/esm/lib/codegen/services-generator.js +9 -4
- package/{types → esm}/lib/codegen/types.d.ts +5 -3
- package/esm/lib/codegen/types.d.ts.map +1 -0
- package/esm/lib/collect/collector.d.ts +4 -0
- package/esm/lib/collect/collector.d.ts.map +1 -0
- package/{types → esm}/lib/collect/helpers.d.ts +3 -2
- package/esm/lib/collect/helpers.d.ts.map +1 -0
- package/esm/lib/collect/index.d.ts +4 -0
- package/esm/lib/collect/index.d.ts.map +1 -0
- package/{types → esm}/lib/collect/types.d.ts +2 -1
- package/esm/lib/collect/types.d.ts.map +1 -0
- package/{types → esm}/lib/internal-utils.d.ts +1 -0
- package/esm/lib/internal-utils.d.ts.map +1 -0
- package/esm/lib/parse/deref-proxy.d.ts +4 -0
- package/esm/lib/parse/deref-proxy.d.ts.map +1 -0
- package/esm/lib/parse/deref-proxy.js +18 -3
- package/esm/lib/parse/index.d.ts +4 -0
- package/esm/lib/parse/index.d.ts.map +1 -0
- package/{types → esm}/lib/parse/openapi-types.d.ts +1 -0
- package/esm/lib/parse/openapi-types.d.ts.map +1 -0
- package/{types → esm}/lib/parse/parser.d.ts +4 -3
- package/esm/lib/parse/parser.d.ts.map +1 -0
- package/esm/lib/parse/parser.js +17 -6
- package/{types → esm}/lib/parse/types.d.ts +3 -2
- package/esm/lib/parse/types.d.ts.map +1 -0
- package/{types → esm}/lib/transform/api-types.d.ts +3 -2
- package/esm/lib/transform/api-types.d.ts.map +1 -0
- package/{types → esm}/lib/transform/helpers.d.ts +4 -3
- package/esm/lib/transform/helpers.d.ts.map +1 -0
- package/esm/lib/transform/helpers.js +9 -3
- package/esm/lib/transform/index.d.ts +3 -0
- package/esm/lib/transform/index.d.ts.map +1 -0
- package/esm/lib/transform/transform-document.d.ts +4 -0
- package/esm/lib/transform/transform-document.d.ts.map +1 -0
- package/esm/lib/transform/transform-endpoint.d.ts +5 -0
- package/esm/lib/transform/transform-endpoint.d.ts.map +1 -0
- package/esm/lib/transform/transform-schema.d.ts +5 -0
- package/esm/lib/transform/transform-schema.d.ts.map +1 -0
- package/esm/lib/transform/transform-schema.js +3 -1
- package/esm/lib/transform/transformer.d.ts +5 -0
- package/esm/lib/transform/transformer.d.ts.map +1 -0
- package/esm/lib/transform/transformer.js +1 -1
- package/{types → esm}/lib/transform/types.d.ts +5 -4
- package/esm/lib/transform/types.d.ts.map +1 -0
- package/{types → esm}/lib/utils/action-provider.d.ts +2 -1
- package/esm/lib/utils/action-provider.d.ts.map +1 -0
- package/esm/lib/utils/action-provider.js +6 -1
- package/{types → esm}/lib/utils/array.utils.d.ts +1 -0
- package/esm/lib/utils/array.utils.d.ts.map +1 -0
- package/esm/lib/utils/asset-manager.d.ts +8 -0
- package/esm/lib/utils/asset-manager.d.ts.map +1 -0
- package/esm/lib/utils/asset-manager.js +49 -0
- package/{types → esm}/lib/utils/class.utils.d.ts +1 -0
- package/esm/lib/utils/class.utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/common.utils.d.ts +2 -1
- package/esm/lib/utils/common.utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/condition.d.ts +1 -0
- package/esm/lib/utils/condition.d.ts.map +1 -0
- package/esm/lib/utils/endpoint.utils.d.ts +3 -0
- package/esm/lib/utils/endpoint.utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/error.utils.d.ts +1 -0
- package/esm/lib/utils/error.utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/factory.d.ts +2 -1
- package/esm/lib/utils/factory.d.ts.map +1 -0
- package/esm/lib/utils/factory.js +6 -1
- package/{types → esm}/lib/utils/file-system.utils.d.ts +2 -1
- package/esm/lib/utils/file-system.utils.d.ts.map +1 -0
- package/esm/lib/utils/file-system.utils.js +1 -1
- package/{types → esm}/lib/utils/generator.utils.d.ts +1 -0
- package/esm/lib/utils/generator.utils.d.ts.map +1 -0
- package/esm/lib/utils/index.d.ts +16 -0
- package/esm/lib/utils/index.d.ts.map +1 -0
- package/esm/lib/utils/index.js +1 -0
- package/{types → esm}/lib/utils/object.utils.d.ts +1 -0
- package/esm/lib/utils/object.utils.d.ts.map +1 -0
- package/esm/lib/utils/object.utils.js +6 -1
- package/{types → esm}/lib/utils/schema.utils.d.ts +3 -2
- package/esm/lib/utils/schema.utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/source-builder.d.ts +8 -6
- package/esm/lib/utils/source-builder.d.ts.map +1 -0
- package/esm/lib/utils/source-builder.js +39 -6
- package/esm/lib/utils/string-builder/index.d.ts +4 -0
- package/esm/lib/utils/string-builder/index.d.ts.map +1 -0
- package/{types → esm}/lib/utils/string-builder/options.d.ts +1 -0
- package/esm/lib/utils/string-builder/options.d.ts.map +1 -0
- package/esm/lib/utils/string-builder/options.js +1 -1
- package/{types → esm}/lib/utils/string-builder/string-builder.d.ts +3 -2
- package/esm/lib/utils/string-builder/string-builder.d.ts.map +1 -0
- package/esm/lib/utils/string-builder/string-builder.js +12 -1
- package/{types → esm}/lib/utils/string-builder/utils.d.ts +3 -2
- package/esm/lib/utils/string-builder/utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/string.utils.d.ts +3 -2
- package/esm/lib/utils/string.utils.d.ts.map +1 -0
- package/{types → esm}/lib/utils/string.utils.types.d.ts +1 -0
- package/esm/lib/utils/string.utils.types.d.ts.map +1 -0
- package/{types → esm}/lib/utils/type.utils.d.ts +2 -0
- package/esm/lib/utils/type.utils.d.ts.map +1 -0
- package/esm/package.json +3 -0
- package/package.json +23 -31
- package/script/_dnt.shims.d.ts +11 -0
- package/script/_dnt.shims.d.ts.map +1 -0
- package/script/_dnt.shims.js +75 -0
- package/script/index.d.ts +6 -0
- package/script/index.d.ts.map +1 -0
- package/script/index.js +8 -0
- package/script/lib/ast/index.d.ts +2 -0
- package/script/lib/ast/index.d.ts.map +1 -0
- package/{cjs → script}/lib/ast/index.js +1 -1
- package/script/lib/ast/node.d.ts +15 -0
- package/script/lib/ast/node.d.ts.map +1 -0
- package/{cjs → script}/lib/ast/node.js +6 -0
- package/script/lib/codegen/config.d.ts +16 -0
- package/script/lib/codegen/config.d.ts.map +1 -0
- package/script/lib/codegen/config.js +11 -0
- package/script/lib/codegen/endpoints-generator.d.ts +18 -0
- package/script/lib/codegen/endpoints-generator.d.ts.map +1 -0
- package/{cjs → script}/lib/codegen/endpoints-generator.js +13 -8
- package/script/lib/codegen/generator.d.ts +39 -0
- package/script/lib/codegen/generator.d.ts.map +1 -0
- package/{cjs → script}/lib/codegen/generator.js +33 -19
- package/script/lib/codegen/index.d.ts +7 -0
- package/script/lib/codegen/index.d.ts.map +1 -0
- package/script/lib/codegen/index.js +9 -0
- package/script/lib/codegen/internal-utils.d.ts +2 -0
- package/script/lib/codegen/internal-utils.d.ts.map +1 -0
- package/script/lib/codegen/schemas-generator.d.ts +19 -0
- package/script/lib/codegen/schemas-generator.d.ts.map +1 -0
- package/{cjs → script}/lib/codegen/schemas-generator.js +17 -11
- package/script/lib/codegen/services-generator.d.ts +18 -0
- package/script/lib/codegen/services-generator.d.ts.map +1 -0
- package/{cjs → script}/lib/codegen/services-generator.js +13 -8
- package/script/lib/codegen/types.d.ts +19 -0
- package/script/lib/codegen/types.d.ts.map +1 -0
- package/script/lib/collect/collector.d.ts +4 -0
- package/script/lib/collect/collector.d.ts.map +1 -0
- package/{cjs → script}/lib/collect/collector.js +28 -28
- package/script/lib/collect/helpers.d.ts +5 -0
- package/script/lib/collect/helpers.d.ts.map +1 -0
- package/{cjs → script}/lib/collect/helpers.js +2 -2
- package/script/lib/collect/index.d.ts +4 -0
- package/script/lib/collect/index.d.ts.map +1 -0
- package/script/lib/collect/index.js +6 -0
- package/script/lib/collect/types.d.ts +13 -0
- package/script/lib/collect/types.d.ts.map +1 -0
- package/script/lib/internal-utils.d.ts +2 -0
- package/script/lib/internal-utils.d.ts.map +1 -0
- package/script/lib/parse/deref-proxy.d.ts +4 -0
- package/script/lib/parse/deref-proxy.d.ts.map +1 -0
- package/{cjs → script}/lib/parse/deref-proxy.js +21 -6
- package/script/lib/parse/index.d.ts +4 -0
- package/script/lib/parse/index.d.ts.map +1 -0
- package/script/lib/parse/index.js +6 -0
- package/script/lib/parse/openapi-types.d.ts +898 -0
- package/script/lib/parse/openapi-types.d.ts.map +1 -0
- package/script/lib/parse/parser.d.ts +19 -0
- package/script/lib/parse/parser.d.ts.map +1 -0
- package/{cjs → script}/lib/parse/parser.js +32 -21
- package/script/lib/parse/types.d.ts +24 -0
- package/script/lib/parse/types.d.ts.map +1 -0
- package/script/lib/parse/types.js +5 -0
- package/script/lib/transform/api-types.d.ts +195 -0
- package/script/lib/transform/api-types.d.ts.map +1 -0
- package/script/lib/transform/helpers.d.ts +51 -0
- package/script/lib/transform/helpers.d.ts.map +1 -0
- package/{cjs → script}/lib/transform/helpers.js +16 -10
- package/script/lib/transform/index.d.ts +3 -0
- package/script/lib/transform/index.d.ts.map +1 -0
- package/script/lib/transform/index.js +5 -0
- package/script/lib/transform/transform-document.d.ts +4 -0
- package/script/lib/transform/transform-document.d.ts.map +1 -0
- package/{cjs → script}/lib/transform/transform-document.js +2 -2
- package/script/lib/transform/transform-endpoint.d.ts +5 -0
- package/script/lib/transform/transform-endpoint.d.ts.map +1 -0
- package/{cjs → script}/lib/transform/transform-endpoint.js +18 -18
- package/script/lib/transform/transform-schema.d.ts +5 -0
- package/script/lib/transform/transform-schema.d.ts.map +1 -0
- package/{cjs → script}/lib/transform/transform-schema.js +14 -12
- package/script/lib/transform/transformer.d.ts +5 -0
- package/script/lib/transform/transformer.d.ts.map +1 -0
- package/{cjs → script}/lib/transform/transformer.js +10 -10
- package/script/lib/transform/types.d.ts +36 -0
- package/script/lib/transform/types.d.ts.map +1 -0
- package/script/lib/utils/action-provider.d.ts +29 -0
- package/script/lib/utils/action-provider.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/action-provider.js +6 -1
- package/script/lib/utils/array.utils.d.ts +2 -0
- package/script/lib/utils/array.utils.d.ts.map +1 -0
- package/script/lib/utils/asset-manager.d.ts +8 -0
- package/script/lib/utils/asset-manager.d.ts.map +1 -0
- package/script/lib/utils/asset-manager.js +54 -0
- package/script/lib/utils/class.utils.d.ts +8 -0
- package/script/lib/utils/class.utils.d.ts.map +1 -0
- package/script/lib/utils/common.utils.d.ts +16 -0
- package/script/lib/utils/common.utils.d.ts.map +1 -0
- package/script/lib/utils/condition.d.ts +4 -0
- package/script/lib/utils/condition.d.ts.map +1 -0
- package/script/lib/utils/endpoint.utils.d.ts +3 -0
- package/script/lib/utils/endpoint.utils.d.ts.map +1 -0
- package/script/lib/utils/error.utils.d.ts +2 -0
- package/script/lib/utils/error.utils.d.ts.map +1 -0
- package/script/lib/utils/factory.d.ts +21 -0
- package/script/lib/utils/factory.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/factory.js +6 -1
- package/script/lib/utils/file-system.utils.d.ts +9 -0
- package/script/lib/utils/file-system.utils.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/file-system.utils.js +2 -2
- package/script/lib/utils/generator.utils.d.ts +2 -0
- package/script/lib/utils/generator.utils.d.ts.map +1 -0
- package/script/lib/utils/index.d.ts +16 -0
- package/script/lib/utils/index.d.ts.map +1 -0
- package/script/lib/utils/index.js +18 -0
- package/script/lib/utils/object.utils.d.ts +3 -0
- package/script/lib/utils/object.utils.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/object.utils.js +6 -1
- package/script/lib/utils/schema.utils.d.ts +11 -0
- package/script/lib/utils/schema.utils.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/schema.utils.js +2 -2
- package/script/lib/utils/source-builder.d.ts +233 -0
- package/script/lib/utils/source-builder.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/source-builder.js +59 -26
- package/script/lib/utils/string-builder/index.d.ts +4 -0
- package/script/lib/utils/string-builder/index.d.ts.map +1 -0
- package/script/lib/utils/string-builder/index.js +8 -0
- package/script/lib/utils/string-builder/options.d.ts +15 -0
- package/script/lib/utils/string-builder/options.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/string-builder/options.js +2 -2
- package/script/lib/utils/string-builder/string-builder.d.ts +73 -0
- package/script/lib/utils/string-builder/string-builder.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/string-builder/string-builder.js +17 -6
- package/script/lib/utils/string-builder/utils.d.ts +22 -0
- package/script/lib/utils/string-builder/utils.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/string-builder/utils.js +4 -4
- package/script/lib/utils/string.utils.d.ts +130 -0
- package/script/lib/utils/string.utils.d.ts.map +1 -0
- package/{cjs → script}/lib/utils/string.utils.js +2 -2
- package/script/lib/utils/string.utils.types.d.ts +150 -0
- package/script/lib/utils/string.utils.types.d.ts.map +1 -0
- package/script/lib/utils/type.utils.d.ts +57 -0
- package/script/lib/utils/type.utils.d.ts.map +1 -0
- package/script/package.json +3 -0
- package/cjs/index.js +0 -8
- package/cjs/lib/codegen/config.js +0 -11
- package/cjs/lib/codegen/index.js +0 -9
- package/cjs/lib/collect/index.js +0 -6
- package/cjs/lib/parse/index.js +0 -6
- package/cjs/lib/parse/types.js +0 -5
- package/cjs/lib/transform/index.js +0 -5
- package/cjs/lib/utils/index.js +0 -17
- package/cjs/lib/utils/string-builder/index.js +0 -8
- package/cjs/package.json +0 -1
- package/types/index.d.ts +0 -5
- package/types/lib/ast/index.d.ts +0 -1
- package/types/lib/codegen/index.d.ts +0 -6
- package/types/lib/collect/collector.d.ts +0 -3
- package/types/lib/collect/index.d.ts +0 -3
- package/types/lib/parse/deref-proxy.d.ts +0 -3
- package/types/lib/parse/index.d.ts +0 -3
- package/types/lib/transform/index.d.ts +0 -2
- package/types/lib/transform/transform-document.d.ts +0 -3
- package/types/lib/transform/transform-endpoint.d.ts +0 -4
- package/types/lib/transform/transform-schema.d.ts +0 -4
- package/types/lib/transform/transformer.d.ts +0 -4
- package/types/lib/utils/endpoint.utils.d.ts +0 -2
- package/types/lib/utils/index.d.ts +0 -14
- package/types/lib/utils/string-builder/index.d.ts +0 -3
- /package/{cjs → script}/lib/codegen/internal-utils.js +0 -0
- /package/{cjs → script}/lib/codegen/types.js +0 -0
- /package/{cjs → script}/lib/collect/types.js +0 -0
- /package/{cjs → script}/lib/internal-utils.js +0 -0
- /package/{cjs → script}/lib/parse/openapi-types.js +0 -0
- /package/{cjs → script}/lib/transform/api-types.js +0 -0
- /package/{cjs → script}/lib/transform/types.js +0 -0
- /package/{cjs → script}/lib/utils/array.utils.js +0 -0
- /package/{cjs → script}/lib/utils/class.utils.js +0 -0
- /package/{cjs → script}/lib/utils/common.utils.js +0 -0
- /package/{cjs → script}/lib/utils/condition.js +0 -0
- /package/{cjs → script}/lib/utils/endpoint.utils.js +0 -0
- /package/{cjs → script}/lib/utils/error.utils.js +0 -0
- /package/{cjs → script}/lib/utils/generator.utils.js +0 -0
- /package/{cjs → script}/lib/utils/string.utils.types.js +0 -0
- /package/{cjs → script}/lib/utils/type.utils.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi-types.d.ts","sourceRoot":"","sources":["../../../src/lib/parse/openapi-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { OpenApiDocument } from './openapi-types.js';
|
|
2
|
+
import { type Deref, type OpenApiParserOptions } from './types.js';
|
|
3
|
+
import type { ApiData } from '../transform/index.js';
|
|
4
|
+
export declare class OpenApiParser {
|
|
5
|
+
private readonly _loadedDocuments;
|
|
6
|
+
private readonly _config;
|
|
7
|
+
constructor(config?: Partial<OpenApiParserOptions>);
|
|
8
|
+
parseApisAndTransform(...fileNames: (string | string[])[]): Promise<ApiData>;
|
|
9
|
+
parseApi(fileName: string): Promise<Deref<OpenApiDocument>>;
|
|
10
|
+
transformApis(apis: Deref<OpenApiDocument>[]): ApiData;
|
|
11
|
+
private dereference;
|
|
12
|
+
private resolveReference;
|
|
13
|
+
private loadDocument;
|
|
14
|
+
private getDocumentContent;
|
|
15
|
+
private isUrl;
|
|
16
|
+
private tryParseJson;
|
|
17
|
+
private tryParseYaml;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/lib/parse/parser.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAkD,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAA+B,KAAK,KAAK,EAAE,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEhG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAWrD,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqC;IACtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;gBAEnC,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC;IAIrC,qBAAqB,CAAC,GAAG,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAS5E,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAMjE,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,GAAG,OAAO;YAM/C,WAAW;YAiDX,gBAAgB;YAuBhB,YAAY;YA4CZ,kBAAkB;IAYhC,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;CAOrB"}
|
|
@@ -3,20 +3,31 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.OpenApiParser = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
6
|
-
const
|
|
7
|
-
const
|
|
6
|
+
const dntShim = tslib_1.__importStar(require("../../_dnt.shims.js"));
|
|
7
|
+
const node_path_1 = tslib_1.__importDefault(require("node:path"));
|
|
8
|
+
const node_process_1 = require("node:process");
|
|
8
9
|
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const utils_1 = require("../utils");
|
|
10
|
+
const YAML = tslib_1.__importStar(require("yaml"));
|
|
11
|
+
const deref_proxy_js_1 = require("./deref-proxy.js");
|
|
12
|
+
const types_js_1 = require("./types.js");
|
|
13
|
+
const collector_js_1 = require("../collect/collector.js");
|
|
14
|
+
const transformer_js_1 = require("../transform/transformer.js");
|
|
15
|
+
const index_js_1 = require("../utils/index.js");
|
|
16
16
|
class OpenApiParser {
|
|
17
17
|
constructor(config) {
|
|
18
|
-
this
|
|
19
|
-
|
|
18
|
+
Object.defineProperty(this, "_loadedDocuments", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
configurable: true,
|
|
21
|
+
writable: true,
|
|
22
|
+
value: new Map()
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(this, "_config", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
configurable: true,
|
|
27
|
+
writable: true,
|
|
28
|
+
value: void 0
|
|
29
|
+
});
|
|
30
|
+
this._config = { ...types_js_1.defaultOpenApiParserOptions, ...config };
|
|
20
31
|
}
|
|
21
32
|
async parseApisAndTransform(...fileNames) {
|
|
22
33
|
const flatFileNames = [].concat(...fileNames);
|
|
@@ -25,13 +36,13 @@ class OpenApiParser {
|
|
|
25
36
|
return transformed;
|
|
26
37
|
}
|
|
27
38
|
async parseApi(fileName) {
|
|
28
|
-
const absoluteFilePath = this.isUrl(fileName) ? fileName :
|
|
39
|
+
const absoluteFilePath = this.isUrl(fileName) ? fileName : node_path_1.default.resolve((0, node_process_1.cwd)(), fileName);
|
|
29
40
|
const doc = await this.loadDocument(absoluteFilePath);
|
|
30
41
|
return await this.dereference(absoluteFilePath, '', doc.document);
|
|
31
42
|
}
|
|
32
43
|
transformApis(apis) {
|
|
33
|
-
const collectedData = (0,
|
|
34
|
-
const transformedData = (0,
|
|
44
|
+
const collectedData = (0, collector_js_1.collectOpenApi)(apis);
|
|
45
|
+
const transformedData = (0, transformer_js_1.transformOpenApi)(collectedData, this._config);
|
|
35
46
|
return transformedData;
|
|
36
47
|
}
|
|
37
48
|
async dereference(file, path, value) {
|
|
@@ -45,7 +56,7 @@ class OpenApiParser {
|
|
|
45
56
|
else {
|
|
46
57
|
existingDocument = await this.loadDocument(file);
|
|
47
58
|
}
|
|
48
|
-
const result = (0,
|
|
59
|
+
const result = (0, deref_proxy_js_1.createDerefProxy)(value, {
|
|
49
60
|
file,
|
|
50
61
|
path,
|
|
51
62
|
document: existingDocument.dereferencedDocument,
|
|
@@ -59,7 +70,7 @@ class OpenApiParser {
|
|
|
59
70
|
if (key === '$ref')
|
|
60
71
|
continue;
|
|
61
72
|
const v = value[key];
|
|
62
|
-
if ((0,
|
|
73
|
+
if ((0, index_js_1.isNullish)(v))
|
|
63
74
|
continue;
|
|
64
75
|
if (typeof v === 'object') {
|
|
65
76
|
if (Array.isArray(v)) {
|
|
@@ -89,7 +100,7 @@ class OpenApiParser {
|
|
|
89
100
|
absoluteRefFile = file;
|
|
90
101
|
}
|
|
91
102
|
else if (!this.isUrl(refFile)) {
|
|
92
|
-
absoluteRefFile =
|
|
103
|
+
absoluteRefFile = node_path_1.default.resolve(node_path_1.default.dirname(file), refFile);
|
|
93
104
|
}
|
|
94
105
|
const doc = await this.loadDocument(absoluteRefFile);
|
|
95
106
|
const value = refPath ? getDeepProperty(doc.document, refPath.replace(/[/]/g, '.')) : doc.document;
|
|
@@ -104,7 +115,7 @@ class OpenApiParser {
|
|
|
104
115
|
return existingDocument;
|
|
105
116
|
}
|
|
106
117
|
const documentContent = await this.getDocumentContent(fileOrUrl);
|
|
107
|
-
const extname =
|
|
118
|
+
const extname = node_path_1.default.extname(fileOrUrl).toLowerCase();
|
|
108
119
|
let parsedDocument;
|
|
109
120
|
if (extname === '.json') {
|
|
110
121
|
parsedDocument = this.tryParseJson(documentContent);
|
|
@@ -122,7 +133,7 @@ class OpenApiParser {
|
|
|
122
133
|
throw new Error(`Unable to parse ${fileOrUrl}`);
|
|
123
134
|
}
|
|
124
135
|
const doc = (parsedDocument !== null && parsedDocument !== void 0 ? parsedDocument : {});
|
|
125
|
-
const deref = (0,
|
|
136
|
+
const deref = (0, deref_proxy_js_1.createDerefProxy)(doc, {
|
|
126
137
|
file: fileOrUrl,
|
|
127
138
|
path: '',
|
|
128
139
|
originalComponent: doc,
|
|
@@ -141,7 +152,7 @@ class OpenApiParser {
|
|
|
141
152
|
}
|
|
142
153
|
async getDocumentContent(fileOrUrl) {
|
|
143
154
|
if (this.isUrl(fileOrUrl)) {
|
|
144
|
-
const res = await
|
|
155
|
+
const res = await dntShim.fetch(fileOrUrl);
|
|
145
156
|
if (!res.ok) {
|
|
146
157
|
throw new Error(`Unable to download ${fileOrUrl}: ${res.statusText}`);
|
|
147
158
|
}
|
|
@@ -164,7 +175,7 @@ class OpenApiParser {
|
|
|
164
175
|
}
|
|
165
176
|
tryParseYaml(yaml) {
|
|
166
177
|
try {
|
|
167
|
-
return
|
|
178
|
+
return YAML.parse(yaml);
|
|
168
179
|
}
|
|
169
180
|
catch (_a) {
|
|
170
181
|
return undefined;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { OpenApiDiscriminator, OpenApiDocument, OpenApiReference, OpenApiSchema } from './openapi-types.js';
|
|
2
|
+
import { type OpenApiTransformerOptions } from '../transform/types.js';
|
|
3
|
+
export type DerefSource<T> = {
|
|
4
|
+
file: string;
|
|
5
|
+
path: string;
|
|
6
|
+
document: Deref<OpenApiDocument>;
|
|
7
|
+
originalComponent: T;
|
|
8
|
+
};
|
|
9
|
+
type _DerefDiscriminator = Omit<OpenApiDiscriminator, 'mapping'> & {
|
|
10
|
+
mapping?: Record<string, Deref<OpenApiSchema>>;
|
|
11
|
+
};
|
|
12
|
+
type _Deref<T extends object> = T extends OpenApiDiscriminator ? _DerefDiscriminator : {
|
|
13
|
+
[K in keyof T as K extends keyof OpenApiReference ? never : K]: Deref<T[K]>;
|
|
14
|
+
} & {
|
|
15
|
+
$src: DerefSource<T>;
|
|
16
|
+
$ref?: Deref<T>;
|
|
17
|
+
};
|
|
18
|
+
export type Deref<T> = T extends object ? (T extends (infer A)[] ? Deref<A>[] : _Deref<T>) : T;
|
|
19
|
+
export type OpenApiParserOptions = OpenApiTransformerOptions;
|
|
20
|
+
export declare const defaultOpenApiParserOptions: {
|
|
21
|
+
unknownTypeBehavior: "keep-unknown" | "object-if-properties" | "always-object";
|
|
22
|
+
};
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/parse/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACjH,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAEzG,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IACjC,iBAAiB,EAAE,CAAC,CAAC;CACtB,CAAC;AAEF,KAAK,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,GAAG;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;CAChD,CAAC;AACF,KAAK,MAAM,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,oBAAoB,GAAG,mBAAmB,GAE9E;KACC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,gBAAgB,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5E,GACC;IACA,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;CACjB,CAAC;AACN,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE/F,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAE7D,eAAO,MAAM,2BAA2B;;CAA0C,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defaultOpenApiParserOptions = void 0;
|
|
4
|
+
const types_js_1 = require("../transform/types.js");
|
|
5
|
+
exports.defaultOpenApiParserOptions = { ...types_js_1.defaultOpenApiTransformerOptions };
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import type { Deref, DerefSource, KnownOpenApiParameterTarget, OpenApiHeader, OpenApiHttpMethod, OpenApiMediaType, OpenApiOperation, OpenApiParameter, OpenApiPathItem, OpenApiRequestBody, OpenApiResponse, OpenApiSchema, OpenApiTag } from '../parse/index.js';
|
|
2
|
+
import type { OptionalProperties } from '../utils/index.js';
|
|
3
|
+
export type ApiData = {
|
|
4
|
+
services: ApiService[];
|
|
5
|
+
endpoints: ApiEndpoint[];
|
|
6
|
+
schemas: ApiSchema[];
|
|
7
|
+
};
|
|
8
|
+
export type ApiComponentSource<T> = DerefSource<T> & {
|
|
9
|
+
component: Deref<T>;
|
|
10
|
+
};
|
|
11
|
+
export type Transformed<T> = T extends OpenApiTag ? ApiService : T extends OpenApiPathItem ? ApiPath : T extends OpenApiParameter ? ApiParameter : T extends OpenApiRequestBody ? ApiRequestBody : T extends OpenApiResponse ? ApiResponse : T extends OpenApiMediaType ? ApiContent : T extends OpenApiHeader ? ApiHeader : T extends OpenApiSchema ? ApiSchema : undefined;
|
|
12
|
+
export type ApiComponent<T> = {
|
|
13
|
+
id: string;
|
|
14
|
+
$src: ApiComponentSource<T>;
|
|
15
|
+
$ref: Transformed<T> | undefined;
|
|
16
|
+
};
|
|
17
|
+
export type ApiMethod = OpenApiHttpMethod;
|
|
18
|
+
export type ApiParameterTarget = KnownOpenApiParameterTarget;
|
|
19
|
+
export type ApiServiceComponent = OptionalProperties<ApiComponent<OpenApiTag>, '$src'>;
|
|
20
|
+
export type ApiService = ApiServiceComponent & {
|
|
21
|
+
name: string;
|
|
22
|
+
description: string | undefined;
|
|
23
|
+
endpoints: ApiEndpoint[];
|
|
24
|
+
};
|
|
25
|
+
export type ApiPathComponent = ApiComponent<OpenApiPathItem>;
|
|
26
|
+
export type ApiPath = ApiPathComponent & {
|
|
27
|
+
summary: string | undefined;
|
|
28
|
+
description: string | undefined;
|
|
29
|
+
path: string;
|
|
30
|
+
parameters: ApiParameter[];
|
|
31
|
+
} & {
|
|
32
|
+
[K in ApiMethod]: ApiEndpoint | undefined;
|
|
33
|
+
};
|
|
34
|
+
export type ApiEndpointComponent = ApiComponent<OpenApiOperation>;
|
|
35
|
+
export type ApiEndpoint = ApiEndpointComponent & {
|
|
36
|
+
name: string;
|
|
37
|
+
path: string;
|
|
38
|
+
pathInfo: ApiPath;
|
|
39
|
+
method: ApiMethod;
|
|
40
|
+
summary: string | undefined;
|
|
41
|
+
description: string | undefined;
|
|
42
|
+
parameters: ApiParameter[];
|
|
43
|
+
deprecated: boolean;
|
|
44
|
+
requestBody: ApiRequestBody | undefined;
|
|
45
|
+
responses: ApiResponse[];
|
|
46
|
+
tags: string[];
|
|
47
|
+
custom: Record<string, unknown>;
|
|
48
|
+
};
|
|
49
|
+
export type ApiParameterComponent = ApiComponent<OpenApiParameter>;
|
|
50
|
+
export type ApiParameter = ApiParameterComponent & {
|
|
51
|
+
name: string;
|
|
52
|
+
target: ApiParameterTarget;
|
|
53
|
+
description: string | undefined;
|
|
54
|
+
required: boolean;
|
|
55
|
+
deprecated: boolean;
|
|
56
|
+
allowEmptyValue: boolean | undefined;
|
|
57
|
+
style: string | undefined;
|
|
58
|
+
explode: boolean | undefined;
|
|
59
|
+
allowReserved: boolean | undefined;
|
|
60
|
+
schema: ApiSchema | undefined;
|
|
61
|
+
};
|
|
62
|
+
export type ApiRequestBodyComponent = ApiComponent<OpenApiRequestBody>;
|
|
63
|
+
export type ApiRequestBody = ApiRequestBodyComponent & {
|
|
64
|
+
description: string | undefined;
|
|
65
|
+
content: ApiContent[];
|
|
66
|
+
required: boolean;
|
|
67
|
+
};
|
|
68
|
+
export type ApiContentComponent = ApiComponent<OpenApiMediaType>;
|
|
69
|
+
export type ApiContent = ApiContentComponent & {
|
|
70
|
+
type: string;
|
|
71
|
+
schema: ApiSchema | undefined;
|
|
72
|
+
};
|
|
73
|
+
export type ApiExampleComponent = ApiComponent<OpenApiResponse>;
|
|
74
|
+
export type ApiResponse = ApiExampleComponent & {
|
|
75
|
+
statusCode: number | undefined;
|
|
76
|
+
description: string | undefined;
|
|
77
|
+
headers: ApiHeader[];
|
|
78
|
+
contentOptions: ApiContent[];
|
|
79
|
+
};
|
|
80
|
+
export type ApiHeaderComponent = Omit<ApiComponent<OpenApiHeader> | ApiComponent<OpenApiSchema>, '$ref'> & {
|
|
81
|
+
$ref: ApiHeader | undefined;
|
|
82
|
+
};
|
|
83
|
+
export type ApiHeader = ApiHeaderComponent & Omit<ApiParameter, 'target'>;
|
|
84
|
+
export type ApiSchemaType = 'string' | 'number' | 'integer' | 'array' | 'boolean' | 'null' | 'object' | string;
|
|
85
|
+
export type ApiSchemaKind = 'oneOf' | 'multi-type' | 'string' | 'number' | 'integer' | 'array' | 'boolean' | 'null' | 'object' | 'combined' | 'unknown';
|
|
86
|
+
export type ApiSchemaAccessibility = 'all' | 'readOnly' | 'writeOnly' | 'none';
|
|
87
|
+
export type ApiSchemaProperty = {
|
|
88
|
+
name: string;
|
|
89
|
+
schema: ApiSchema;
|
|
90
|
+
};
|
|
91
|
+
export type ApiSchemaDiscriminator = {
|
|
92
|
+
propertyName: string;
|
|
93
|
+
mapping: Record<string, ApiSchema>;
|
|
94
|
+
};
|
|
95
|
+
export type ApiSchemaComponent = ApiComponent<OpenApiSchema>;
|
|
96
|
+
export type ApiSchemaBase = ApiSchemaComponent & {
|
|
97
|
+
name: string;
|
|
98
|
+
isNameGenerated: boolean;
|
|
99
|
+
description: string | undefined;
|
|
100
|
+
deprecated: boolean;
|
|
101
|
+
accessibility: ApiSchemaAccessibility;
|
|
102
|
+
enum: unknown[] | undefined;
|
|
103
|
+
const: unknown | undefined;
|
|
104
|
+
default: unknown | undefined;
|
|
105
|
+
example: unknown | undefined;
|
|
106
|
+
nullable: boolean;
|
|
107
|
+
required: Set<string>;
|
|
108
|
+
custom: Record<string, unknown>;
|
|
109
|
+
not: ApiSchema | undefined;
|
|
110
|
+
discriminator: ApiSchemaDiscriminator | undefined;
|
|
111
|
+
inheritedSchemas: (ApiSchema & {
|
|
112
|
+
discriminator: NonNullable<ApiSchema['discriminator']>;
|
|
113
|
+
})[];
|
|
114
|
+
};
|
|
115
|
+
export type ApiSchema<T extends ApiSchemaKind = ApiSchemaKind> = ApiSchemaBase & ApiSchemaExtensions<T>;
|
|
116
|
+
type AdditionalCombinedSchemaProperties = {
|
|
117
|
+
allOf: ApiSchema[];
|
|
118
|
+
anyOf: ApiSchema[];
|
|
119
|
+
};
|
|
120
|
+
type AdditionalArraySchemaProperties = {
|
|
121
|
+
items: ApiSchema | undefined;
|
|
122
|
+
minItems: number | undefined;
|
|
123
|
+
maxItems: number | undefined;
|
|
124
|
+
};
|
|
125
|
+
type AdditionalObjectSchemaProperties = {
|
|
126
|
+
properties: Map<string, ApiSchemaProperty>;
|
|
127
|
+
additionalProperties: boolean | undefined | ApiSchema;
|
|
128
|
+
} & AdditionalCombinedSchemaProperties;
|
|
129
|
+
type AdditionalNumberSchemaProperties = {
|
|
130
|
+
minimum: number | undefined;
|
|
131
|
+
maximum: number | undefined;
|
|
132
|
+
};
|
|
133
|
+
type AdditionalStringSchemaProperties = {
|
|
134
|
+
pattern: string | undefined;
|
|
135
|
+
minLength: number | undefined;
|
|
136
|
+
maxLength: number | undefined;
|
|
137
|
+
};
|
|
138
|
+
type AdditionalPrimitiveSchemaProperties = {
|
|
139
|
+
format: string | undefined;
|
|
140
|
+
};
|
|
141
|
+
export type ApiSchemaExtensions<T extends ApiSchemaKind> = T extends 'oneOf' ? {
|
|
142
|
+
kind: 'oneOf';
|
|
143
|
+
oneOf: ApiSchema[];
|
|
144
|
+
} : T extends 'multi-type' ? {
|
|
145
|
+
kind: 'multi-type';
|
|
146
|
+
type: ApiSchemaType[];
|
|
147
|
+
} & AdditionalArraySchemaProperties & AdditionalObjectSchemaProperties & AdditionalNumberSchemaProperties & AdditionalStringSchemaProperties & AdditionalPrimitiveSchemaProperties : T extends 'string' ? {
|
|
148
|
+
kind: 'string';
|
|
149
|
+
type: 'string';
|
|
150
|
+
} & AdditionalStringSchemaProperties & AdditionalPrimitiveSchemaProperties : T extends 'boolean' ? {
|
|
151
|
+
kind: 'boolean';
|
|
152
|
+
type: 'boolean';
|
|
153
|
+
} & AdditionalPrimitiveSchemaProperties : T extends 'null' ? {
|
|
154
|
+
kind: 'null';
|
|
155
|
+
type: 'null';
|
|
156
|
+
} : T extends 'number' | 'integer' ? {
|
|
157
|
+
kind: 'number' | 'integer';
|
|
158
|
+
type: T;
|
|
159
|
+
} & AdditionalNumberSchemaProperties & AdditionalPrimitiveSchemaProperties : T extends 'array' ? {
|
|
160
|
+
kind: 'array';
|
|
161
|
+
type: 'array';
|
|
162
|
+
} & AdditionalArraySchemaProperties : T extends 'object' ? {
|
|
163
|
+
kind: 'object';
|
|
164
|
+
type: 'object';
|
|
165
|
+
} & AdditionalObjectSchemaProperties : T extends 'combined' ? {
|
|
166
|
+
kind: 'combined';
|
|
167
|
+
} & AdditionalCombinedSchemaProperties : {
|
|
168
|
+
kind: 'unknown';
|
|
169
|
+
};
|
|
170
|
+
export type CombinedLikeApiSchema = ApiSchemaBase & {
|
|
171
|
+
kind: 'combined' | 'object' | 'multi-type';
|
|
172
|
+
type?: 'object' | string[];
|
|
173
|
+
} & AdditionalCombinedSchemaProperties;
|
|
174
|
+
export type NumberLikeApiSchema = ApiSchemaBase & {
|
|
175
|
+
kind: 'number' | 'integer' | 'multi-type';
|
|
176
|
+
type: 'number' | 'integer' | string[];
|
|
177
|
+
} & AdditionalNumberSchemaProperties & AdditionalPrimitiveSchemaProperties;
|
|
178
|
+
export type ArrayLikeApiSchema = ApiSchemaBase & {
|
|
179
|
+
kind: 'array' | 'multi-type';
|
|
180
|
+
type: 'array' | string[];
|
|
181
|
+
} & AdditionalArraySchemaProperties;
|
|
182
|
+
export type ObjectLikeApiSchema = ApiSchemaBase & {
|
|
183
|
+
kind: 'object' | 'multi-type';
|
|
184
|
+
type: 'object' | string[];
|
|
185
|
+
} & AdditionalObjectSchemaProperties;
|
|
186
|
+
export type StringLikeApiSchema = ApiSchemaBase & {
|
|
187
|
+
kind: 'string' | 'multi-type';
|
|
188
|
+
type: 'string' | string[];
|
|
189
|
+
} & AdditionalStringSchemaProperties & AdditionalPrimitiveSchemaProperties;
|
|
190
|
+
export type PrimitiveLikeApiSchema = ApiSchemaBase & {
|
|
191
|
+
kind: 'string' | 'number' | 'integer' | 'boolean' | 'null' | 'multi-type';
|
|
192
|
+
type: 'string' | 'number' | 'integer' | 'boolean' | 'null' | string[];
|
|
193
|
+
} & AdditionalPrimitiveSchemaProperties;
|
|
194
|
+
export {};
|
|
195
|
+
//# sourceMappingURL=api-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../../src/lib/transform/api-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { ApiSchema, ApiSchemaAccessibility, ApiSchemaKind, ApiSchemaProperty } from './api-types.js';
|
|
2
|
+
import type { OpenApiTransformerContext } from './types.js';
|
|
3
|
+
import type { Deref, DerefSource, OpenApiObject } from '../parse/index.js';
|
|
4
|
+
export declare function determineSchemaKind<T extends {
|
|
5
|
+
oneOf?: unknown;
|
|
6
|
+
allOf?: unknown;
|
|
7
|
+
anyOf?: unknown;
|
|
8
|
+
type?: string | string[];
|
|
9
|
+
properties?: Record<string, unknown>;
|
|
10
|
+
additionalProperties?: unknown;
|
|
11
|
+
}>(ctx: OpenApiTransformerContext, schema: T): ApiSchemaKind;
|
|
12
|
+
export declare function determineSchemaName(schema: {
|
|
13
|
+
title?: string;
|
|
14
|
+
$src: DerefSource<any>;
|
|
15
|
+
}, id: string): {
|
|
16
|
+
name: string;
|
|
17
|
+
isGenerated: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare function determineSchemaAccessibility(schema: {
|
|
20
|
+
readOnly?: boolean;
|
|
21
|
+
writeOnly?: boolean;
|
|
22
|
+
}): ApiSchemaAccessibility;
|
|
23
|
+
export declare function updateSchemaAccessibility(accessibility: ApiSchemaAccessibility, schema: {
|
|
24
|
+
readOnly?: boolean;
|
|
25
|
+
writeOnly?: boolean;
|
|
26
|
+
}): ApiSchemaAccessibility;
|
|
27
|
+
type CustomFields<T extends Record<string, unknown>> = {
|
|
28
|
+
[K in keyof T as K extends `x-${string}` ? K : never]: T[K];
|
|
29
|
+
};
|
|
30
|
+
export declare function getCustomFields<T extends Record<string, unknown>>(schema: T): CustomFields<T>;
|
|
31
|
+
export declare function determineEndpointName(endpointInfo: {
|
|
32
|
+
method: string;
|
|
33
|
+
path: string;
|
|
34
|
+
operation: {
|
|
35
|
+
operationId?: string;
|
|
36
|
+
};
|
|
37
|
+
}): string;
|
|
38
|
+
export declare function transformAdditionalProperties<TAdditionalProperties>(context: OpenApiTransformerContext, schema: {
|
|
39
|
+
additionalProperties?: TAdditionalProperties;
|
|
40
|
+
}, transformSchema: (context: OpenApiTransformerContext, schema: Exclude<TAdditionalProperties, undefined | boolean>) => ApiSchema): boolean | ApiSchema | undefined;
|
|
41
|
+
export declare function transformSchemaProperties<TProperties>(context: OpenApiTransformerContext, schema: {
|
|
42
|
+
properties?: Record<string, TProperties>;
|
|
43
|
+
required?: string[];
|
|
44
|
+
}, transformSchema: (context: OpenApiTransformerContext, schema: TProperties) => ApiSchema): Map<string, ApiSchemaProperty>;
|
|
45
|
+
export declare class IdGenerator {
|
|
46
|
+
private readonly _idMap;
|
|
47
|
+
generateId(name: string): string;
|
|
48
|
+
}
|
|
49
|
+
export declare function getOpenApiObjectIdentifier(obj: Deref<OpenApiObject<string>>): string;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/lib/transform/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,16 +10,17 @@ exports.determineEndpointName = determineEndpointName;
|
|
|
10
10
|
exports.transformAdditionalProperties = transformAdditionalProperties;
|
|
11
11
|
exports.transformSchemaProperties = transformSchemaProperties;
|
|
12
12
|
exports.getOpenApiObjectIdentifier = getOpenApiObjectIdentifier;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
13
|
+
const node_path_1 = require("node:path");
|
|
14
|
+
const internal_utils_js_1 = require("../internal-utils.js");
|
|
15
|
+
const index_js_1 = require("../utils/index.js");
|
|
16
|
+
const common_utils_js_1 = require("../utils/common.utils.js");
|
|
17
17
|
function determineSchemaKind(ctx, schema) {
|
|
18
18
|
if (schema.oneOf) {
|
|
19
19
|
return 'oneOf';
|
|
20
20
|
}
|
|
21
21
|
else if (schema.type !== 'object' && (schema.allOf || schema.anyOf)) {
|
|
22
|
-
const hasProperties = (schema.properties && Object.keys(schema.properties).length > 0) ||
|
|
22
|
+
const hasProperties = (schema.properties && Object.keys(schema.properties).length > 0) ||
|
|
23
|
+
schema.additionalProperties;
|
|
23
24
|
return hasProperties ? 'object' : 'combined';
|
|
24
25
|
}
|
|
25
26
|
else if (Array.isArray(schema.type)) {
|
|
@@ -48,7 +49,7 @@ function determineSchemaName(schema, id) {
|
|
|
48
49
|
console.log('woot?');
|
|
49
50
|
}
|
|
50
51
|
if (schema.$src.path === '/')
|
|
51
|
-
return { name: (0,
|
|
52
|
+
return { name: (0, node_path_1.parse)(schema.$src.file).name, isGenerated: true };
|
|
52
53
|
const schemaNameMatch = schema.$src.path.match(/(?<=\/components\/schemas\/|\/definitions\/)[^/]+$/i);
|
|
53
54
|
if (schemaNameMatch) {
|
|
54
55
|
return { name: schemaNameMatch[0], isGenerated: false };
|
|
@@ -79,7 +80,7 @@ function determineSchemaName(schema, id) {
|
|
|
79
80
|
}
|
|
80
81
|
const parentSchemaMatch = schema.$src.path.match(/(.*)\/properties\/([^/]*)$/);
|
|
81
82
|
if (parentSchemaMatch) {
|
|
82
|
-
const parentSchema = (0,
|
|
83
|
+
const parentSchema = (0, index_js_1.getDeepProperty)(schema.$src.document, parentSchemaMatch[1].split('/').filter(Boolean));
|
|
83
84
|
const parentSchemaName = determineSchemaName({
|
|
84
85
|
title: parentSchema === null || parentSchema === void 0 ? void 0 : parentSchema.title,
|
|
85
86
|
$src: {
|
|
@@ -128,7 +129,7 @@ function determineEndpointName(endpointInfo) {
|
|
|
128
129
|
return endpointInfo.method + endpointInfo.path.replace(/\{([^}]+)\}/g, ':$1').replace(/\//g, '_');
|
|
129
130
|
}
|
|
130
131
|
function transformAdditionalProperties(context, schema, transformSchema) {
|
|
131
|
-
if ((0,
|
|
132
|
+
if ((0, common_utils_js_1.isNullish)(schema.additionalProperties))
|
|
132
133
|
return undefined;
|
|
133
134
|
if (typeof schema.additionalProperties === 'boolean')
|
|
134
135
|
return schema.additionalProperties;
|
|
@@ -139,7 +140,7 @@ function transformSchemaProperties(context, schema, transformSchema) {
|
|
|
139
140
|
if (!schema.properties)
|
|
140
141
|
return result;
|
|
141
142
|
for (const name of Object.keys(schema.properties)) {
|
|
142
|
-
if (!(0,
|
|
143
|
+
if (!(0, internal_utils_js_1.isOpenApiObjectProperty)(name))
|
|
143
144
|
continue;
|
|
144
145
|
result.set(name, {
|
|
145
146
|
name,
|
|
@@ -150,7 +151,12 @@ function transformSchemaProperties(context, schema, transformSchema) {
|
|
|
150
151
|
}
|
|
151
152
|
class IdGenerator {
|
|
152
153
|
constructor() {
|
|
153
|
-
this
|
|
154
|
+
Object.defineProperty(this, "_idMap", {
|
|
155
|
+
enumerable: true,
|
|
156
|
+
configurable: true,
|
|
157
|
+
writable: true,
|
|
158
|
+
value: new Map()
|
|
159
|
+
});
|
|
154
160
|
}
|
|
155
161
|
generateId(name) {
|
|
156
162
|
var _a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/transform/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { OpenApiTransformerContext } from './types.js';
|
|
2
|
+
import type { Deref, OpenApiDocument } from '../parse/index.js';
|
|
3
|
+
export declare function transformDocument(context: OpenApiTransformerContext, document: Deref<OpenApiDocument>): void;
|
|
4
|
+
//# sourceMappingURL=transform-document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-document.d.ts","sourceRoot":"","sources":["../../../src/lib/transform/transform-document.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAc,MAAM,mBAAmB,CAAC;AAE5E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,KAAK,CAAC,eAAe,CAAC,QAIrG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.transformDocument = transformDocument;
|
|
4
|
-
const
|
|
4
|
+
const helpers_js_1 = require("./helpers.js");
|
|
5
5
|
function transformDocument(context, document) {
|
|
6
6
|
var _a;
|
|
7
7
|
for (const tag of (_a = document.tags) !== null && _a !== void 0 ? _a : []) {
|
|
@@ -10,7 +10,7 @@ function transformDocument(context, document) {
|
|
|
10
10
|
}
|
|
11
11
|
function transformTag(context, tag, isReference = false) {
|
|
12
12
|
var _a;
|
|
13
|
-
const openApiObjectId = (0,
|
|
13
|
+
const openApiObjectId = (0, helpers_js_1.getOpenApiObjectIdentifier)(tag);
|
|
14
14
|
const existing = context.transformed.services.get(openApiObjectId);
|
|
15
15
|
if (existing)
|
|
16
16
|
return existing;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ApiEndpoint } from './api-types.js';
|
|
2
|
+
import type { OpenApiTransformerContext } from './types.js';
|
|
3
|
+
import type { OpenApiCollectorEndpointInfo } from '../collect/index.js';
|
|
4
|
+
export declare function transformEndpoint(context: OpenApiTransformerContext, endpointInfo: OpenApiCollectorEndpointInfo): ApiEndpoint;
|
|
5
|
+
//# sourceMappingURL=transform-endpoint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-endpoint.d.ts","sourceRoot":"","sources":["../../../src/lib/transform/transform-endpoint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,WAAW,EAOZ,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAaxE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,4BAA4B,eAiD/G"}
|