@goast/core 0.0.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.
Files changed (202) hide show
  1. package/README.md +11 -0
  2. package/dist/index.cjs +7 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.ts +3 -0
  5. package/dist/index.js +4 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/lib/codegen/config.cjs +6 -0
  8. package/dist/lib/codegen/config.cjs.map +1 -0
  9. package/dist/lib/codegen/config.d.ts +6 -0
  10. package/dist/lib/codegen/config.js +3 -0
  11. package/dist/lib/codegen/config.js.map +1 -0
  12. package/dist/lib/codegen/endpoints-generator.cjs +31 -0
  13. package/dist/lib/codegen/endpoints-generator.cjs.map +1 -0
  14. package/dist/lib/codegen/endpoints-generator.d.ts +15 -0
  15. package/dist/lib/codegen/endpoints-generator.js +27 -0
  16. package/dist/lib/codegen/endpoints-generator.js.map +1 -0
  17. package/dist/lib/codegen/generator.cjs +103 -0
  18. package/dist/lib/codegen/generator.cjs.map +1 -0
  19. package/dist/lib/codegen/generator.d.ts +36 -0
  20. package/dist/lib/codegen/generator.js +98 -0
  21. package/dist/lib/codegen/generator.js.map +1 -0
  22. package/dist/lib/codegen/index.cjs +10 -0
  23. package/dist/lib/codegen/index.cjs.map +1 -0
  24. package/dist/lib/codegen/index.d.ts +6 -0
  25. package/dist/lib/codegen/index.js +7 -0
  26. package/dist/lib/codegen/index.js.map +1 -0
  27. package/dist/lib/codegen/internal-utils.cjs +10 -0
  28. package/dist/lib/codegen/internal-utils.cjs.map +1 -0
  29. package/dist/lib/codegen/internal-utils.d.ts +1 -0
  30. package/dist/lib/codegen/internal-utils.js +6 -0
  31. package/dist/lib/codegen/internal-utils.js.map +1 -0
  32. package/dist/lib/codegen/schemas-generator.cjs +43 -0
  33. package/dist/lib/codegen/schemas-generator.cjs.map +1 -0
  34. package/dist/lib/codegen/schemas-generator.d.ts +16 -0
  35. package/dist/lib/codegen/schemas-generator.js +39 -0
  36. package/dist/lib/codegen/schemas-generator.js.map +1 -0
  37. package/dist/lib/codegen/services-generator.cjs +31 -0
  38. package/dist/lib/codegen/services-generator.cjs.map +1 -0
  39. package/dist/lib/codegen/services-generator.d.ts +15 -0
  40. package/dist/lib/codegen/services-generator.js +27 -0
  41. package/dist/lib/codegen/services-generator.js.map +1 -0
  42. package/dist/lib/codegen/types.cjs +3 -0
  43. package/dist/lib/codegen/types.cjs.map +1 -0
  44. package/dist/lib/codegen/types.d.ts +17 -0
  45. package/dist/lib/codegen/types.js +2 -0
  46. package/dist/lib/codegen/types.js.map +1 -0
  47. package/dist/lib/collect/collector.cjs +116 -0
  48. package/dist/lib/collect/collector.cjs.map +1 -0
  49. package/dist/lib/collect/collector.d.ts +3 -0
  50. package/dist/lib/collect/collector.js +112 -0
  51. package/dist/lib/collect/collector.js.map +1 -0
  52. package/dist/lib/collect/helpers.cjs +33 -0
  53. package/dist/lib/collect/helpers.cjs.map +1 -0
  54. package/dist/lib/collect/helpers.d.ts +3 -0
  55. package/dist/lib/collect/helpers.js +28 -0
  56. package/dist/lib/collect/helpers.js.map +1 -0
  57. package/dist/lib/collect/index.cjs +7 -0
  58. package/dist/lib/collect/index.cjs.map +1 -0
  59. package/dist/lib/collect/index.d.ts +3 -0
  60. package/dist/lib/collect/index.js +4 -0
  61. package/dist/lib/collect/index.js.map +1 -0
  62. package/dist/lib/collect/types.cjs +3 -0
  63. package/dist/lib/collect/types.cjs.map +1 -0
  64. package/dist/lib/collect/types.d.ts +12 -0
  65. package/dist/lib/collect/types.js +2 -0
  66. package/dist/lib/collect/types.js.map +1 -0
  67. package/dist/lib/internal-utils.cjs +8 -0
  68. package/dist/lib/internal-utils.cjs.map +1 -0
  69. package/dist/lib/internal-utils.d.ts +1 -0
  70. package/dist/lib/internal-utils.js +4 -0
  71. package/dist/lib/internal-utils.js.map +1 -0
  72. package/dist/lib/parse/deref-proxy.cjs +46 -0
  73. package/dist/lib/parse/deref-proxy.cjs.map +1 -0
  74. package/dist/lib/parse/deref-proxy.d.ts +3 -0
  75. package/dist/lib/parse/deref-proxy.js +42 -0
  76. package/dist/lib/parse/deref-proxy.js.map +1 -0
  77. package/dist/lib/parse/index.cjs +7 -0
  78. package/dist/lib/parse/index.cjs.map +1 -0
  79. package/dist/lib/parse/index.d.ts +3 -0
  80. package/dist/lib/parse/index.js +4 -0
  81. package/dist/lib/parse/index.js.map +1 -0
  82. package/dist/lib/parse/openapi-types.cjs +3 -0
  83. package/dist/lib/parse/openapi-types.cjs.map +1 -0
  84. package/dist/lib/parse/openapi-types.d.ts +897 -0
  85. package/dist/lib/parse/openapi-types.js +2 -0
  86. package/dist/lib/parse/openapi-types.js.map +1 -0
  87. package/dist/lib/parse/parser.cjs +189 -0
  88. package/dist/lib/parse/parser.cjs.map +1 -0
  89. package/dist/lib/parse/parser.d.ts +16 -0
  90. package/dist/lib/parse/parser.js +185 -0
  91. package/dist/lib/parse/parser.js.map +1 -0
  92. package/dist/lib/parse/types.cjs +3 -0
  93. package/dist/lib/parse/types.cjs.map +1 -0
  94. package/dist/lib/parse/types.d.ts +15 -0
  95. package/dist/lib/parse/types.js +2 -0
  96. package/dist/lib/parse/types.js.map +1 -0
  97. package/dist/lib/transform/api-types.cjs +3 -0
  98. package/dist/lib/transform/api-types.cjs.map +1 -0
  99. package/dist/lib/transform/api-types.d.ts +186 -0
  100. package/dist/lib/transform/api-types.js +2 -0
  101. package/dist/lib/transform/api-types.js.map +1 -0
  102. package/dist/lib/transform/helpers.cjs +121 -0
  103. package/dist/lib/transform/helpers.cjs.map +1 -0
  104. package/dist/lib/transform/helpers.d.ts +50 -0
  105. package/dist/lib/transform/helpers.js +108 -0
  106. package/dist/lib/transform/helpers.js.map +1 -0
  107. package/dist/lib/transform/index.cjs +6 -0
  108. package/dist/lib/transform/index.cjs.map +1 -0
  109. package/dist/lib/transform/index.d.ts +2 -0
  110. package/dist/lib/transform/index.js +3 -0
  111. package/dist/lib/transform/index.js.map +1 -0
  112. package/dist/lib/transform/transform-document.cjs +33 -0
  113. package/dist/lib/transform/transform-document.cjs.map +1 -0
  114. package/dist/lib/transform/transform-document.d.ts +3 -0
  115. package/dist/lib/transform/transform-document.js +29 -0
  116. package/dist/lib/transform/transform-document.js.map +1 -0
  117. package/dist/lib/transform/transform-endpoint.cjs +254 -0
  118. package/dist/lib/transform/transform-endpoint.cjs.map +1 -0
  119. package/dist/lib/transform/transform-endpoint.d.ts +4 -0
  120. package/dist/lib/transform/transform-endpoint.js +250 -0
  121. package/dist/lib/transform/transform-endpoint.js.map +1 -0
  122. package/dist/lib/transform/transform-schema.cjs +142 -0
  123. package/dist/lib/transform/transform-schema.cjs.map +1 -0
  124. package/dist/lib/transform/transform-schema.d.ts +4 -0
  125. package/dist/lib/transform/transform-schema.js +138 -0
  126. package/dist/lib/transform/transform-schema.js.map +1 -0
  127. package/dist/lib/transform/transformer.cjs +44 -0
  128. package/dist/lib/transform/transformer.cjs.map +1 -0
  129. package/dist/lib/transform/transformer.d.ts +3 -0
  130. package/dist/lib/transform/transformer.js +40 -0
  131. package/dist/lib/transform/transformer.js.map +1 -0
  132. package/dist/lib/transform/types.cjs +3 -0
  133. package/dist/lib/transform/types.cjs.map +1 -0
  134. package/dist/lib/transform/types.d.ts +23 -0
  135. package/dist/lib/transform/types.js +2 -0
  136. package/dist/lib/transform/types.js.map +1 -0
  137. package/dist/lib/utils/action-provider.cjs +35 -0
  138. package/dist/lib/utils/action-provider.cjs.map +1 -0
  139. package/dist/lib/utils/action-provider.d.ts +28 -0
  140. package/dist/lib/utils/action-provider.js +31 -0
  141. package/dist/lib/utils/action-provider.js.map +1 -0
  142. package/dist/lib/utils/common.utils.cjs +12 -0
  143. package/dist/lib/utils/common.utils.cjs.map +1 -0
  144. package/dist/lib/utils/common.utils.d.ts +3 -0
  145. package/dist/lib/utils/common.utils.js +7 -0
  146. package/dist/lib/utils/common.utils.js.map +1 -0
  147. package/dist/lib/utils/condition.cjs +9 -0
  148. package/dist/lib/utils/condition.cjs.map +1 -0
  149. package/dist/lib/utils/condition.d.ts +3 -0
  150. package/dist/lib/utils/condition.js +5 -0
  151. package/dist/lib/utils/condition.js.map +1 -0
  152. package/dist/lib/utils/endpoint.utils.cjs +13 -0
  153. package/dist/lib/utils/endpoint.utils.cjs.map +1 -0
  154. package/dist/lib/utils/endpoint.utils.d.ts +2 -0
  155. package/dist/lib/utils/endpoint.utils.js +9 -0
  156. package/dist/lib/utils/endpoint.utils.js.map +1 -0
  157. package/dist/lib/utils/factory.cjs +29 -0
  158. package/dist/lib/utils/factory.cjs.map +1 -0
  159. package/dist/lib/utils/factory.d.ts +20 -0
  160. package/dist/lib/utils/factory.js +25 -0
  161. package/dist/lib/utils/factory.js.map +1 -0
  162. package/dist/lib/utils/generator.utils.cjs +11 -0
  163. package/dist/lib/utils/generator.utils.cjs.map +1 -0
  164. package/dist/lib/utils/generator.utils.d.ts +1 -0
  165. package/dist/lib/utils/generator.utils.js +7 -0
  166. package/dist/lib/utils/generator.utils.js.map +1 -0
  167. package/dist/lib/utils/index.cjs +14 -0
  168. package/dist/lib/utils/index.cjs.map +1 -0
  169. package/dist/lib/utils/index.d.ts +10 -0
  170. package/dist/lib/utils/index.js +11 -0
  171. package/dist/lib/utils/index.js.map +1 -0
  172. package/dist/lib/utils/object.utils.cjs +21 -0
  173. package/dist/lib/utils/object.utils.cjs.map +1 -0
  174. package/dist/lib/utils/object.utils.d.ts +1 -0
  175. package/dist/lib/utils/object.utils.js +17 -0
  176. package/dist/lib/utils/object.utils.js.map +1 -0
  177. package/dist/lib/utils/schema.utils.cjs +55 -0
  178. package/dist/lib/utils/schema.utils.cjs.map +1 -0
  179. package/dist/lib/utils/schema.utils.d.ts +10 -0
  180. package/dist/lib/utils/schema.utils.js +50 -0
  181. package/dist/lib/utils/schema.utils.js.map +1 -0
  182. package/dist/lib/utils/source-builder.cjs +378 -0
  183. package/dist/lib/utils/source-builder.cjs.map +1 -0
  184. package/dist/lib/utils/source-builder.d.ts +216 -0
  185. package/dist/lib/utils/source-builder.js +374 -0
  186. package/dist/lib/utils/source-builder.js.map +1 -0
  187. package/dist/lib/utils/string.utils.cjs +337 -0
  188. package/dist/lib/utils/string.utils.cjs.map +1 -0
  189. package/dist/lib/utils/string.utils.d.ts +173 -0
  190. package/dist/lib/utils/string.utils.js +324 -0
  191. package/dist/lib/utils/string.utils.js.map +1 -0
  192. package/dist/lib/utils/string.utils.types.cjs +3 -0
  193. package/dist/lib/utils/string.utils.types.cjs.map +1 -0
  194. package/dist/lib/utils/string.utils.types.d.ts +148 -0
  195. package/dist/lib/utils/string.utils.types.js +2 -0
  196. package/dist/lib/utils/string.utils.types.js.map +1 -0
  197. package/dist/lib/utils/type.utils.cjs +3 -0
  198. package/dist/lib/utils/type.utils.cjs.map +1 -0
  199. package/dist/lib/utils/type.utils.d.ts +15 -0
  200. package/dist/lib/utils/type.utils.js +2 -0
  201. package/dist/lib/utils/type.utils.js.map +1 -0
  202. package/package.json +27 -0
@@ -0,0 +1,15 @@
1
+ import { DefaultGenerationProviderConfig, OpenApiGenerationProviderBase } from './generator';
2
+ import { OpenApiGeneratorInput, OpenApiGeneratorOutput, AnyConfig, OpenApiGeneratorContext, OpenApiGenerationProviderContext } from './types';
3
+ import { ApiService } from '../transform';
4
+ export type OpenApiServicesGenerationProviderContext<TInput extends OpenApiGeneratorInput, TOutput extends OpenApiGeneratorOutput, TConfig extends AnyConfig, TServiceOutput extends OpenApiGeneratorOutput> = OpenApiGenerationProviderContext<TInput, TConfig> & {
5
+ existingServiceResults: Map<string, TServiceOutput>;
6
+ output: TOutput;
7
+ };
8
+ export declare abstract class OpenApiServicesGenerationProviderBase<TInput extends OpenApiGeneratorInput, TOutput extends OpenApiGeneratorOutput, TConfig extends AnyConfig, TServiceOutput extends OpenApiGeneratorOutput, TContext extends OpenApiServicesGenerationProviderContext<TInput, TOutput, TConfig, TServiceOutput>> extends OpenApiGenerationProviderBase<TInput, TOutput, TConfig, TContext> {
9
+ protected getProviderContext(context: OpenApiGeneratorContext<TInput>, config: Partial<TConfig> | undefined, defaultConfig: DefaultGenerationProviderConfig<TConfig>): OpenApiServicesGenerationProviderContext<TInput, TOutput, TConfig, TServiceOutput>;
10
+ onGenerate(ctx: TContext): TOutput;
11
+ getServiceResult(ctx: TContext, service: ApiService): TServiceOutput;
12
+ protected abstract initResult(ctx: OpenApiGenerationProviderContext<TInput, TConfig>): TOutput;
13
+ protected abstract generateService(ctx: TContext, service: ApiService): TServiceOutput;
14
+ protected abstract addServiceResult(ctx: TContext, service: ApiService, result: TServiceOutput): void;
15
+ }
@@ -0,0 +1,27 @@
1
+ import { OpenApiGenerationProviderBase } from './generator';
2
+ import { addSourceIfTest } from './internal-utils';
3
+ export class OpenApiServicesGenerationProviderBase extends OpenApiGenerationProviderBase {
4
+ getProviderContext(context, config, defaultConfig) {
5
+ const ctx = super.getProviderContext(context, config, defaultConfig);
6
+ return Object.assign(ctx, {
7
+ existingServiceResults: new Map(),
8
+ output: this.initResult(ctx),
9
+ });
10
+ }
11
+ onGenerate(ctx) {
12
+ for (const service of ctx.data.services) {
13
+ this.getServiceResult(ctx, service);
14
+ }
15
+ return ctx.output;
16
+ }
17
+ getServiceResult(ctx, service) {
18
+ const existingResult = ctx.existingServiceResults.get(service.id);
19
+ if (existingResult)
20
+ return existingResult;
21
+ const result = this.generateService(ctx, service);
22
+ addSourceIfTest(ctx.config, result, () => service.$src ? `${service.$src.file}#${service.$src.path}` : `tag:${service.name}`);
23
+ this.addServiceResult(ctx, service, result);
24
+ return result;
25
+ }
26
+ }
27
+ //# sourceMappingURL=services-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services-generator.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/codegen/services-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAoBnD,MAAM,OAAgB,qCAMpB,SAAQ,6BAAiE;IACtD,kBAAkB,CACnC,OAAwC,EACxC,MAAoC,EACpC,aAAuD;QAEvD,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACxB,sBAAsB,EAAE,IAAI,GAAG,EAA0B;YACzD,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IAEe,UAAU,CAAC,GAAa;QACtC,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;YACvC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;SACrC;QAED,OAAO,GAAG,CAAC,MAAM,CAAC;IACpB,CAAC;IAEM,gBAAgB,CAAC,GAAa,EAAE,OAAmB;QACxD,MAAM,cAAc,GAAG,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,cAAc;YAAE,OAAO,cAAc,CAAC;QAE1C,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAElD,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,OAAO,CAAC,IAAI,EAAE,CACnF,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC;IAChB,CAAC;CAOF"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/codegen/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import { OpenApiGeneratorConfig } from './config';
2
+ import { ApiData } from '../transform';
3
+ export type AnyConfig = Readonly<Record<string, unknown>>;
4
+ export type OpenApiGeneratorInput = Record<string, unknown>;
5
+ export type OpenApiGeneratorOutput = Record<string, unknown> | undefined;
6
+ export type OpenApiGeneratorContext<TInput extends OpenApiGeneratorInput = OpenApiGeneratorInput> = {
7
+ data: ApiData;
8
+ input: TInput;
9
+ config: OpenApiGeneratorConfig;
10
+ };
11
+ export type OpenApiGenerationProviderContext<TInput extends OpenApiGeneratorInput, TConfig extends AnyConfig> = Omit<OpenApiGeneratorContext<TInput>, 'config'> & {
12
+ config: OpenApiGeneratorConfig & TConfig;
13
+ };
14
+ export interface OpenApiGenerationProvider<TInput extends OpenApiGeneratorInput = OpenApiGeneratorInput, TOutput extends OpenApiGeneratorOutput = OpenApiGeneratorOutput, TConfig extends AnyConfig = AnyConfig> {
15
+ generate(...args: Parameters<OpenApiGenerationProviderFn<TInput, TOutput, TConfig>>): ReturnType<OpenApiGenerationProviderFn<TInput, TOutput, TConfig>>;
16
+ }
17
+ export type OpenApiGenerationProviderFn<TInput extends OpenApiGeneratorInput = OpenApiGeneratorInput, TOutput extends OpenApiGeneratorOutput = OpenApiGeneratorOutput, TConfig extends AnyConfig = AnyConfig> = (context: OpenApiGeneratorContext<TInput>, config?: Partial<TConfig>) => TOutput;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/codegen/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.collectOpenApi = void 0;
4
+ const helpers_1 = require("./helpers");
5
+ function collectOpenApi(apis) {
6
+ const data = {
7
+ documents: [],
8
+ schemas: new Map(),
9
+ endpoints: new Map(),
10
+ };
11
+ collectDocument(data, apis);
12
+ return data;
13
+ }
14
+ exports.collectOpenApi = collectOpenApi;
15
+ function collectDocument(data, documents) {
16
+ (0, helpers_1.collect)(data, documents, (data, document) => {
17
+ var _a, _b, _c, _d, _e;
18
+ data.documents.push(document);
19
+ collectPaths(data, document.paths);
20
+ (0, helpers_1.collectRecord)(data, (_a = document.components) === null || _a === void 0 ? void 0 : _a.schemas, collectSchema);
21
+ (0, helpers_1.collectRecord)(data, document.definitions, collectSchema);
22
+ (0, helpers_1.collectRecord)(data, (_b = document.components) === null || _b === void 0 ? void 0 : _b.parameters, collectParameter);
23
+ (0, helpers_1.collectRecord)(data, document.parameters, collectParameter);
24
+ (0, helpers_1.collectRecord)(data, (_c = document.components) === null || _c === void 0 ? void 0 : _c.requestBodies, collectRequestBody);
25
+ (0, helpers_1.collectRecord)(data, (_d = document.components) === null || _d === void 0 ? void 0 : _d.responses, collectResponse);
26
+ (0, helpers_1.collectRecord)(data, document.responses, collectResponse);
27
+ (0, helpers_1.collectRecord)(data, (_e = document.components) === null || _e === void 0 ? void 0 : _e.headers, collectHeader);
28
+ });
29
+ }
30
+ function collectPaths(data, paths) {
31
+ (0, helpers_1.collect)(data, paths, (data, path) => {
32
+ (0, helpers_1.collectRecord)(data, path, collectPathItem);
33
+ });
34
+ }
35
+ function collectPathItem(data, pathItems, path) {
36
+ (0, helpers_1.collect)(data, pathItems, (data, pathItem) => {
37
+ collectParameter(data, pathItem.parameters);
38
+ for (const m of ['get', 'put', 'post', 'delete', 'options', 'head', 'patch', 'trace']) {
39
+ const operation = pathItem[m];
40
+ if (!operation)
41
+ continue;
42
+ const key = `${operation.$src.file}#${operation.$src.path}`;
43
+ if (data.endpoints.has(key))
44
+ continue;
45
+ data.endpoints.set(key, {
46
+ path,
47
+ method: m,
48
+ pathItem,
49
+ operation,
50
+ });
51
+ collectParameter(data, operation.parameters);
52
+ collectRequestBody(data, operation.requestBody);
53
+ (0, helpers_1.collectRecord)(data, operation.responses, collectResponse);
54
+ }
55
+ });
56
+ }
57
+ function collectSchema(data, schemas) {
58
+ (0, helpers_1.collect)(data, schemas, (data, schema) => {
59
+ const key = `${schema.$src.file}#${schema.$src.path}`;
60
+ if (data.schemas.has(key))
61
+ return;
62
+ data.schemas.set(key, schema);
63
+ collectSchema(data, schema.allOf);
64
+ collectSchema(data, schema.anyOf);
65
+ collectSchema(data, schema.oneOf);
66
+ collectSchema(data, schema.items);
67
+ collectSchema(data, schema.not);
68
+ (0, helpers_1.collectRecord)(data, schema.properties, collectSchema);
69
+ (0, helpers_1.collectRecord)(data, schema.patternProperties, collectSchema);
70
+ (0, helpers_1.collectRecord)(data, schema.dependencies, collectSchema);
71
+ (0, helpers_1.collectRecord)(data, schema.definitions, collectSchema);
72
+ if (typeof schema.additionalProperties === 'object') {
73
+ collectSchema(data, schema.additionalProperties);
74
+ }
75
+ if (typeof schema.additionalItems === 'object') {
76
+ collectSchema(data, schema.additionalItems);
77
+ }
78
+ });
79
+ }
80
+ function collectParameter(data, parameters) {
81
+ (0, helpers_1.collect)(data, parameters, (data, parameter) => {
82
+ collectSchema(data, parameter.schema);
83
+ });
84
+ }
85
+ function collectMediaType(data, mediaTypes) {
86
+ (0, helpers_1.collect)(data, mediaTypes, (data, mediaType) => {
87
+ collectSchema(data, mediaType.schema);
88
+ });
89
+ }
90
+ function collectRequestBody(data, requestBody) {
91
+ (0, helpers_1.collect)(data, requestBody, (data, requestBody) => {
92
+ (0, helpers_1.collectRecord)(data, requestBody.content, collectMediaType);
93
+ });
94
+ }
95
+ function isSchema(obj) {
96
+ return obj && typeof obj === 'object' && obj['type'] !== undefined;
97
+ }
98
+ function collectResponse(data, responses) {
99
+ (0, helpers_1.collect)(data, responses, (data, responses) => {
100
+ (0, helpers_1.collectRecord)(data, responses.content, collectMediaType);
101
+ (0, helpers_1.collect)(data, responses.headers, (data, header) => {
102
+ if (isSchema(header)) {
103
+ collectSchema(data, header);
104
+ }
105
+ else {
106
+ collectHeader(data, header);
107
+ }
108
+ });
109
+ });
110
+ }
111
+ function collectHeader(data, headers) {
112
+ (0, helpers_1.collect)(data, headers, (data, headers) => {
113
+ collectSchema(data, headers.schema);
114
+ });
115
+ }
116
+ //# sourceMappingURL=collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collector.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/collector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { OpenApiCollectorData } from './types';
2
+ import { Deref, OpenApiDocument } from '../parse';
3
+ export declare function collectOpenApi(apis: Deref<OpenApiDocument>[]): OpenApiCollectorData;
@@ -0,0 +1,112 @@
1
+ import { collect, collectRecord } from './helpers';
2
+ export function collectOpenApi(apis) {
3
+ const data = {
4
+ documents: [],
5
+ schemas: new Map(),
6
+ endpoints: new Map(),
7
+ };
8
+ collectDocument(data, apis);
9
+ return data;
10
+ }
11
+ function collectDocument(data, documents) {
12
+ collect(data, documents, (data, document) => {
13
+ var _a, _b, _c, _d, _e;
14
+ data.documents.push(document);
15
+ collectPaths(data, document.paths);
16
+ collectRecord(data, (_a = document.components) === null || _a === void 0 ? void 0 : _a.schemas, collectSchema);
17
+ collectRecord(data, document.definitions, collectSchema);
18
+ collectRecord(data, (_b = document.components) === null || _b === void 0 ? void 0 : _b.parameters, collectParameter);
19
+ collectRecord(data, document.parameters, collectParameter);
20
+ collectRecord(data, (_c = document.components) === null || _c === void 0 ? void 0 : _c.requestBodies, collectRequestBody);
21
+ collectRecord(data, (_d = document.components) === null || _d === void 0 ? void 0 : _d.responses, collectResponse);
22
+ collectRecord(data, document.responses, collectResponse);
23
+ collectRecord(data, (_e = document.components) === null || _e === void 0 ? void 0 : _e.headers, collectHeader);
24
+ });
25
+ }
26
+ function collectPaths(data, paths) {
27
+ collect(data, paths, (data, path) => {
28
+ collectRecord(data, path, collectPathItem);
29
+ });
30
+ }
31
+ function collectPathItem(data, pathItems, path) {
32
+ collect(data, pathItems, (data, pathItem) => {
33
+ collectParameter(data, pathItem.parameters);
34
+ for (const m of ['get', 'put', 'post', 'delete', 'options', 'head', 'patch', 'trace']) {
35
+ const operation = pathItem[m];
36
+ if (!operation)
37
+ continue;
38
+ const key = `${operation.$src.file}#${operation.$src.path}`;
39
+ if (data.endpoints.has(key))
40
+ continue;
41
+ data.endpoints.set(key, {
42
+ path,
43
+ method: m,
44
+ pathItem,
45
+ operation,
46
+ });
47
+ collectParameter(data, operation.parameters);
48
+ collectRequestBody(data, operation.requestBody);
49
+ collectRecord(data, operation.responses, collectResponse);
50
+ }
51
+ });
52
+ }
53
+ function collectSchema(data, schemas) {
54
+ collect(data, schemas, (data, schema) => {
55
+ const key = `${schema.$src.file}#${schema.$src.path}`;
56
+ if (data.schemas.has(key))
57
+ return;
58
+ data.schemas.set(key, schema);
59
+ collectSchema(data, schema.allOf);
60
+ collectSchema(data, schema.anyOf);
61
+ collectSchema(data, schema.oneOf);
62
+ collectSchema(data, schema.items);
63
+ collectSchema(data, schema.not);
64
+ collectRecord(data, schema.properties, collectSchema);
65
+ collectRecord(data, schema.patternProperties, collectSchema);
66
+ collectRecord(data, schema.dependencies, collectSchema);
67
+ collectRecord(data, schema.definitions, collectSchema);
68
+ if (typeof schema.additionalProperties === 'object') {
69
+ collectSchema(data, schema.additionalProperties);
70
+ }
71
+ if (typeof schema.additionalItems === 'object') {
72
+ collectSchema(data, schema.additionalItems);
73
+ }
74
+ });
75
+ }
76
+ function collectParameter(data, parameters) {
77
+ collect(data, parameters, (data, parameter) => {
78
+ collectSchema(data, parameter.schema);
79
+ });
80
+ }
81
+ function collectMediaType(data, mediaTypes) {
82
+ collect(data, mediaTypes, (data, mediaType) => {
83
+ collectSchema(data, mediaType.schema);
84
+ });
85
+ }
86
+ function collectRequestBody(data, requestBody) {
87
+ collect(data, requestBody, (data, requestBody) => {
88
+ collectRecord(data, requestBody.content, collectMediaType);
89
+ });
90
+ }
91
+ function isSchema(obj) {
92
+ return obj && typeof obj === 'object' && obj['type'] !== undefined;
93
+ }
94
+ function collectResponse(data, responses) {
95
+ collect(data, responses, (data, responses) => {
96
+ collectRecord(data, responses.content, collectMediaType);
97
+ collect(data, responses.headers, (data, header) => {
98
+ if (isSchema(header)) {
99
+ collectSchema(data, header);
100
+ }
101
+ else {
102
+ collectHeader(data, header);
103
+ }
104
+ });
105
+ });
106
+ }
107
+ function collectHeader(data, headers) {
108
+ collect(data, headers, (data, headers) => {
109
+ collectSchema(data, headers.schema);
110
+ });
111
+ }
112
+ //# sourceMappingURL=collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collector.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/collector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.collectRecord = exports.collect = void 0;
4
+ const internal_utils_1 = require("../internal-utils");
5
+ function collect(data, obj, func) {
6
+ if (!obj)
7
+ return;
8
+ if (Array.isArray(obj)) {
9
+ for (const o of obj) {
10
+ if (!o)
11
+ continue;
12
+ func(data, o);
13
+ }
14
+ }
15
+ else {
16
+ func(data, obj);
17
+ }
18
+ }
19
+ exports.collect = collect;
20
+ function collectRecord(data, obj, func) {
21
+ if (!obj)
22
+ return;
23
+ for (const key in obj) {
24
+ if (!(0, internal_utils_1.isOpenApiObjectProperty)(key))
25
+ continue;
26
+ const value = obj[key];
27
+ if (!value)
28
+ continue;
29
+ func(data, value, key);
30
+ }
31
+ }
32
+ exports.collectRecord = collectRecord;
33
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/helpers.ts"],"names":[],"mappings":";;;AACA,sDAA4D;AAE5D,SAAgB,OAAO,CACrB,IAA0B,EAC1B,GAAwB,EACxB,IAA+D;IAE/D,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACtB,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE;YACnB,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;SACf;KACF;SAAM;QACL,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACjB;AACH,CAAC;AAdD,0BAcC;AAED,SAAgB,aAAa,CAC3B,IAA0B,EAC1B,GAAkC,EAClC,IAA4E;IAE5E,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;QACrB,IAAI,CAAC,IAAA,wCAAuB,EAAC,GAAG,CAAC;YAAE,SAAS;QAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;KACxB;AACH,CAAC;AAZD,sCAYC"}
@@ -0,0 +1,3 @@
1
+ import { OpenApiCollectorData } from './types';
2
+ export declare function collect<T>(data: OpenApiCollectorData, obj: T | T[] | undefined, func: (data: OpenApiCollectorData, obj: NonNullable<T>) => void): void;
3
+ export declare function collectRecord<T>(data: OpenApiCollectorData, obj: Record<string, T> | undefined, func: (data: OpenApiCollectorData, obj: NonNullable<T>, key: string) => void): void;
@@ -0,0 +1,28 @@
1
+ import { isOpenApiObjectProperty } from '../internal-utils';
2
+ export function collect(data, obj, func) {
3
+ if (!obj)
4
+ return;
5
+ if (Array.isArray(obj)) {
6
+ for (const o of obj) {
7
+ if (!o)
8
+ continue;
9
+ func(data, o);
10
+ }
11
+ }
12
+ else {
13
+ func(data, obj);
14
+ }
15
+ }
16
+ export function collectRecord(data, obj, func) {
17
+ if (!obj)
18
+ return;
19
+ for (const key in obj) {
20
+ if (!isOpenApiObjectProperty(key))
21
+ continue;
22
+ const value = obj[key];
23
+ if (!value)
24
+ continue;
25
+ func(data, value, key);
26
+ }
27
+ }
28
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,UAAU,OAAO,CACrB,IAA0B,EAC1B,GAAwB,EACxB,IAA+D;IAE/D,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACtB,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE;YACnB,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;SACf;KACF;SAAM;QACL,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;KACjB;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAA0B,EAC1B,GAAkC,EAClC,IAA4E;IAE5E,IAAI,CAAC,GAAG;QAAE,OAAO;IACjB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;QACrB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;KACxB;AACH,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./collector"), exports);
5
+ tslib_1.__exportStar(require("./helpers"), exports);
6
+ tslib_1.__exportStar(require("./types"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/index.ts"],"names":[],"mappings":";;;AAAA,sDAA4B;AAC5B,oDAA0B;AAC1B,kDAAwB"}
@@ -0,0 +1,3 @@
1
+ export * from './collector';
2
+ export * from './helpers';
3
+ export * from './types';
@@ -0,0 +1,4 @@
1
+ export * from './collector';
2
+ export * from './helpers';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import { Deref, OpenApiDocument, OpenApiHttpMethod, OpenApiOperation, OpenApiPathItem, OpenApiSchema } from '../parse';
2
+ export type OpenApiCollectorEndpointInfo = {
3
+ path: string;
4
+ method: OpenApiHttpMethod;
5
+ pathItem: Deref<OpenApiPathItem>;
6
+ operation: Deref<OpenApiOperation>;
7
+ };
8
+ export type OpenApiCollectorData = {
9
+ documents: Deref<OpenApiDocument>[];
10
+ schemas: Map<string, Deref<OpenApiSchema>>;
11
+ endpoints: Map<string, OpenApiCollectorEndpointInfo>;
12
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/collect/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isOpenApiObjectProperty = void 0;
4
+ function isOpenApiObjectProperty(propertyName) {
5
+ return !propertyName.startsWith('$') && !propertyName.startsWith('x-');
6
+ }
7
+ exports.isOpenApiObjectProperty = isOpenApiObjectProperty;
8
+ //# sourceMappingURL=internal-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal-utils.cjs","sourceRoot":"","sources":["../../../../../packages/core/src/lib/internal-utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,uBAAuB,CACrC,YAAe;IAEf,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AACzE,CAAC;AAJD,0DAIC"}
@@ -0,0 +1 @@
1
+ export declare function isOpenApiObjectProperty<T extends string>(propertyName: T): propertyName is Exclude<T, `$${string}` | `x-${string}`>;
@@ -0,0 +1,4 @@
1
+ export function isOpenApiObjectProperty(propertyName) {
2
+ return !propertyName.startsWith('$') && !propertyName.startsWith('x-');
3
+ }
4
+ //# sourceMappingURL=internal-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal-utils.js","sourceRoot":"","sources":["../../../../../packages/core/src/lib/internal-utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,uBAAuB,CACrC,YAAe;IAEf,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createDerefProxy = void 0;
4
+ const utils_1 = require("../utils");
5
+ function createDerefProxy(obj, source, ref) {
6
+ return new Proxy(obj, new DerefProxyHandler(source, ref));
7
+ }
8
+ exports.createDerefProxy = createDerefProxy;
9
+ const propertiesNotDerivedFromRef = ['title'];
10
+ class DerefProxyHandler {
11
+ constructor(_source, _ref) {
12
+ this._source = _source;
13
+ this._ref = _ref;
14
+ this._overwrittenValues = {};
15
+ }
16
+ get(target, prop) {
17
+ var _a, _b, _c;
18
+ if (prop === '$ref') {
19
+ return this._ref;
20
+ }
21
+ else if (prop === '$src') {
22
+ return this._source;
23
+ }
24
+ return ((_b = (_a = this._overwrittenValues[prop]) !== null && _a !== void 0 ? _a : target[prop]) !== null && _b !== void 0 ? _b : (propertiesNotDerivedFromRef.includes(prop)
25
+ ? undefined
26
+ : (_c = this._ref) === null || _c === void 0 ? void 0 : _c[prop]));
27
+ }
28
+ set(target, prop, value) {
29
+ if (prop === '$ref' && (typeof value === 'object' || typeof value === 'undefined')) {
30
+ this._ref = !value ? undefined : value;
31
+ return true;
32
+ }
33
+ if (prop === '$src') {
34
+ return false;
35
+ }
36
+ this._overwrittenValues[prop] = value;
37
+ return true;
38
+ }
39
+ has(target, prop) {
40
+ return prop in target || (!(0, utils_1.isNullish)(this._ref) && prop in this._ref);
41
+ }
42
+ ownKeys(target) {
43
+ return Array.from(new Set([...Object.keys(target), ...(!(0, utils_1.isNullish)(this._ref) ? Object.keys(this._ref) : []), '$ref', '$src']));
44
+ }
45
+ }
46
+ //# sourceMappingURL=deref-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deref-proxy.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/parse/deref-proxy.ts"],"names":[],"mappings":";;;AAEA,oCAAqC;AAErC,SAAgB,gBAAgB,CAC9B,GAAM,EACN,MAAsB,EACtB,GAAc;IAEd,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,IAAI,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAa,CAAC;AACxE,CAAC;AAND,4CAMC;AAED,MAAM,2BAA2B,GAAkB,CAAC,OAAO,CAAC,CAAC;AAE7D,MAAM,iBAAiB;IAGrB,YAA6B,OAAuB,EAAU,IAAe;QAAhD,YAAO,GAAP,OAAO,CAAgB;QAAU,SAAI,GAAJ,IAAI,CAAW;QAF5D,uBAAkB,GAAiC,EAAE,CAAC;IAES,CAAC;IAE1E,GAAG,CAAC,MAAS,EAAE,IAAiB;;QACrC,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,IAAI,CAAC,IAAI,CAAC;SAClB;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE;YAC1B,OAAO,IAAI,CAAC,OAAO,CAAC;SACrB;QAED,OAAO,CACL,MAAA,MAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAC5B,MAAuC,CAAC,IAAI,CAAC,mCAC9C,CAAC,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAC,IAAI,CAAC,IAAiD,0CAAG,IAAI,CAAC,CAAC,CACrE,CAAC;IACJ,CAAC;IAEM,GAAG,CAAC,MAAS,EAAE,IAAiB,EAAE,KAAc;QACrD,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC,EAAE;YAClF,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,KAAkB,CAAC;YACrD,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,KAAK,CAAC;SACd;QAED,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,GAAG,CAAC,MAAS,EAAE,IAAiB;QACrC,OAAO,IAAI,IAAI,MAAM,IAAI,CAAC,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,CAAC;IAEM,OAAO,CAAC,MAAS;QACtB,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,IAAA,iBAAS,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAC5G,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ import { OpenApiObject } from './openapi-types';
2
+ import { Deref, DerefSource } from './types';
3
+ export declare function createDerefProxy<T extends OpenApiObject<string>>(obj: T, source: DerefSource<T>, ref?: Deref<T>): Deref<T>;
@@ -0,0 +1,42 @@
1
+ import { isNullish } from '../utils';
2
+ export function createDerefProxy(obj, source, ref) {
3
+ return new Proxy(obj, new DerefProxyHandler(source, ref));
4
+ }
5
+ const propertiesNotDerivedFromRef = ['title'];
6
+ class DerefProxyHandler {
7
+ constructor(_source, _ref) {
8
+ this._source = _source;
9
+ this._ref = _ref;
10
+ this._overwrittenValues = {};
11
+ }
12
+ get(target, prop) {
13
+ var _a, _b, _c;
14
+ if (prop === '$ref') {
15
+ return this._ref;
16
+ }
17
+ else if (prop === '$src') {
18
+ return this._source;
19
+ }
20
+ return ((_b = (_a = this._overwrittenValues[prop]) !== null && _a !== void 0 ? _a : target[prop]) !== null && _b !== void 0 ? _b : (propertiesNotDerivedFromRef.includes(prop)
21
+ ? undefined
22
+ : (_c = this._ref) === null || _c === void 0 ? void 0 : _c[prop]));
23
+ }
24
+ set(target, prop, value) {
25
+ if (prop === '$ref' && (typeof value === 'object' || typeof value === 'undefined')) {
26
+ this._ref = !value ? undefined : value;
27
+ return true;
28
+ }
29
+ if (prop === '$src') {
30
+ return false;
31
+ }
32
+ this._overwrittenValues[prop] = value;
33
+ return true;
34
+ }
35
+ has(target, prop) {
36
+ return prop in target || (!isNullish(this._ref) && prop in this._ref);
37
+ }
38
+ ownKeys(target) {
39
+ return Array.from(new Set([...Object.keys(target), ...(!isNullish(this._ref) ? Object.keys(this._ref) : []), '$ref', '$src']));
40
+ }
41
+ }
42
+ //# sourceMappingURL=deref-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deref-proxy.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/parse/deref-proxy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,UAAU,gBAAgB,CAC9B,GAAM,EACN,MAAsB,EACtB,GAAc;IAEd,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,IAAI,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAa,CAAC;AACxE,CAAC;AAED,MAAM,2BAA2B,GAAkB,CAAC,OAAO,CAAC,CAAC;AAE7D,MAAM,iBAAiB;IAGrB,YAA6B,OAAuB,EAAU,IAAe;QAAhD,YAAO,GAAP,OAAO,CAAgB;QAAU,SAAI,GAAJ,IAAI,CAAW;QAF5D,uBAAkB,GAAiC,EAAE,CAAC;IAES,CAAC;IAE1E,GAAG,CAAC,MAAS,EAAE,IAAiB;;QACrC,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,IAAI,CAAC,IAAI,CAAC;SAClB;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE;YAC1B,OAAO,IAAI,CAAC,OAAO,CAAC;SACrB;QAED,OAAO,CACL,MAAA,MAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAC5B,MAAuC,CAAC,IAAI,CAAC,mCAC9C,CAAC,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC;YACzC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAC,IAAI,CAAC,IAAiD,0CAAG,IAAI,CAAC,CAAC,CACrE,CAAC;IACJ,CAAC;IAEM,GAAG,CAAC,MAAS,EAAE,IAAiB,EAAE,KAAc;QACrD,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC,EAAE;YAClF,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,KAAkB,CAAC;YACrD,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,KAAK,CAAC;SACd;QAED,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,GAAG,CAAC,MAAS,EAAE,IAAiB;QACrC,OAAO,IAAI,IAAI,MAAM,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,CAAC;IAEM,OAAO,CAAC,MAAS;QACtB,OAAO,KAAK,CAAC,IAAI,CACf,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAC5G,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./openapi-types"), exports);
5
+ tslib_1.__exportStar(require("./parser"), exports);
6
+ tslib_1.__exportStar(require("./types"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/parse/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,mDAAyB;AACzB,kDAAwB"}
@@ -0,0 +1,3 @@
1
+ export * from './openapi-types';
2
+ export * from './parser';
3
+ export * from './types';