@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.
- package/README.md +11 -0
- package/dist/index.cjs +7 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/codegen/config.cjs +6 -0
- package/dist/lib/codegen/config.cjs.map +1 -0
- package/dist/lib/codegen/config.d.ts +6 -0
- package/dist/lib/codegen/config.js +3 -0
- package/dist/lib/codegen/config.js.map +1 -0
- package/dist/lib/codegen/endpoints-generator.cjs +31 -0
- package/dist/lib/codegen/endpoints-generator.cjs.map +1 -0
- package/dist/lib/codegen/endpoints-generator.d.ts +15 -0
- package/dist/lib/codegen/endpoints-generator.js +27 -0
- package/dist/lib/codegen/endpoints-generator.js.map +1 -0
- package/dist/lib/codegen/generator.cjs +103 -0
- package/dist/lib/codegen/generator.cjs.map +1 -0
- package/dist/lib/codegen/generator.d.ts +36 -0
- package/dist/lib/codegen/generator.js +98 -0
- package/dist/lib/codegen/generator.js.map +1 -0
- package/dist/lib/codegen/index.cjs +10 -0
- package/dist/lib/codegen/index.cjs.map +1 -0
- package/dist/lib/codegen/index.d.ts +6 -0
- package/dist/lib/codegen/index.js +7 -0
- package/dist/lib/codegen/index.js.map +1 -0
- package/dist/lib/codegen/internal-utils.cjs +10 -0
- package/dist/lib/codegen/internal-utils.cjs.map +1 -0
- package/dist/lib/codegen/internal-utils.d.ts +1 -0
- package/dist/lib/codegen/internal-utils.js +6 -0
- package/dist/lib/codegen/internal-utils.js.map +1 -0
- package/dist/lib/codegen/schemas-generator.cjs +43 -0
- package/dist/lib/codegen/schemas-generator.cjs.map +1 -0
- package/dist/lib/codegen/schemas-generator.d.ts +16 -0
- package/dist/lib/codegen/schemas-generator.js +39 -0
- package/dist/lib/codegen/schemas-generator.js.map +1 -0
- package/dist/lib/codegen/services-generator.cjs +31 -0
- package/dist/lib/codegen/services-generator.cjs.map +1 -0
- package/dist/lib/codegen/services-generator.d.ts +15 -0
- package/dist/lib/codegen/services-generator.js +27 -0
- package/dist/lib/codegen/services-generator.js.map +1 -0
- package/dist/lib/codegen/types.cjs +3 -0
- package/dist/lib/codegen/types.cjs.map +1 -0
- package/dist/lib/codegen/types.d.ts +17 -0
- package/dist/lib/codegen/types.js +2 -0
- package/dist/lib/codegen/types.js.map +1 -0
- package/dist/lib/collect/collector.cjs +116 -0
- package/dist/lib/collect/collector.cjs.map +1 -0
- package/dist/lib/collect/collector.d.ts +3 -0
- package/dist/lib/collect/collector.js +112 -0
- package/dist/lib/collect/collector.js.map +1 -0
- package/dist/lib/collect/helpers.cjs +33 -0
- package/dist/lib/collect/helpers.cjs.map +1 -0
- package/dist/lib/collect/helpers.d.ts +3 -0
- package/dist/lib/collect/helpers.js +28 -0
- package/dist/lib/collect/helpers.js.map +1 -0
- package/dist/lib/collect/index.cjs +7 -0
- package/dist/lib/collect/index.cjs.map +1 -0
- package/dist/lib/collect/index.d.ts +3 -0
- package/dist/lib/collect/index.js +4 -0
- package/dist/lib/collect/index.js.map +1 -0
- package/dist/lib/collect/types.cjs +3 -0
- package/dist/lib/collect/types.cjs.map +1 -0
- package/dist/lib/collect/types.d.ts +12 -0
- package/dist/lib/collect/types.js +2 -0
- package/dist/lib/collect/types.js.map +1 -0
- package/dist/lib/internal-utils.cjs +8 -0
- package/dist/lib/internal-utils.cjs.map +1 -0
- package/dist/lib/internal-utils.d.ts +1 -0
- package/dist/lib/internal-utils.js +4 -0
- package/dist/lib/internal-utils.js.map +1 -0
- package/dist/lib/parse/deref-proxy.cjs +46 -0
- package/dist/lib/parse/deref-proxy.cjs.map +1 -0
- package/dist/lib/parse/deref-proxy.d.ts +3 -0
- package/dist/lib/parse/deref-proxy.js +42 -0
- package/dist/lib/parse/deref-proxy.js.map +1 -0
- package/dist/lib/parse/index.cjs +7 -0
- package/dist/lib/parse/index.cjs.map +1 -0
- package/dist/lib/parse/index.d.ts +3 -0
- package/dist/lib/parse/index.js +4 -0
- package/dist/lib/parse/index.js.map +1 -0
- package/dist/lib/parse/openapi-types.cjs +3 -0
- package/dist/lib/parse/openapi-types.cjs.map +1 -0
- package/dist/lib/parse/openapi-types.d.ts +897 -0
- package/dist/lib/parse/openapi-types.js +2 -0
- package/dist/lib/parse/openapi-types.js.map +1 -0
- package/dist/lib/parse/parser.cjs +189 -0
- package/dist/lib/parse/parser.cjs.map +1 -0
- package/dist/lib/parse/parser.d.ts +16 -0
- package/dist/lib/parse/parser.js +185 -0
- package/dist/lib/parse/parser.js.map +1 -0
- package/dist/lib/parse/types.cjs +3 -0
- package/dist/lib/parse/types.cjs.map +1 -0
- package/dist/lib/parse/types.d.ts +15 -0
- package/dist/lib/parse/types.js +2 -0
- package/dist/lib/parse/types.js.map +1 -0
- package/dist/lib/transform/api-types.cjs +3 -0
- package/dist/lib/transform/api-types.cjs.map +1 -0
- package/dist/lib/transform/api-types.d.ts +186 -0
- package/dist/lib/transform/api-types.js +2 -0
- package/dist/lib/transform/api-types.js.map +1 -0
- package/dist/lib/transform/helpers.cjs +121 -0
- package/dist/lib/transform/helpers.cjs.map +1 -0
- package/dist/lib/transform/helpers.d.ts +50 -0
- package/dist/lib/transform/helpers.js +108 -0
- package/dist/lib/transform/helpers.js.map +1 -0
- package/dist/lib/transform/index.cjs +6 -0
- package/dist/lib/transform/index.cjs.map +1 -0
- package/dist/lib/transform/index.d.ts +2 -0
- package/dist/lib/transform/index.js +3 -0
- package/dist/lib/transform/index.js.map +1 -0
- package/dist/lib/transform/transform-document.cjs +33 -0
- package/dist/lib/transform/transform-document.cjs.map +1 -0
- package/dist/lib/transform/transform-document.d.ts +3 -0
- package/dist/lib/transform/transform-document.js +29 -0
- package/dist/lib/transform/transform-document.js.map +1 -0
- package/dist/lib/transform/transform-endpoint.cjs +254 -0
- package/dist/lib/transform/transform-endpoint.cjs.map +1 -0
- package/dist/lib/transform/transform-endpoint.d.ts +4 -0
- package/dist/lib/transform/transform-endpoint.js +250 -0
- package/dist/lib/transform/transform-endpoint.js.map +1 -0
- package/dist/lib/transform/transform-schema.cjs +142 -0
- package/dist/lib/transform/transform-schema.cjs.map +1 -0
- package/dist/lib/transform/transform-schema.d.ts +4 -0
- package/dist/lib/transform/transform-schema.js +138 -0
- package/dist/lib/transform/transform-schema.js.map +1 -0
- package/dist/lib/transform/transformer.cjs +44 -0
- package/dist/lib/transform/transformer.cjs.map +1 -0
- package/dist/lib/transform/transformer.d.ts +3 -0
- package/dist/lib/transform/transformer.js +40 -0
- package/dist/lib/transform/transformer.js.map +1 -0
- package/dist/lib/transform/types.cjs +3 -0
- package/dist/lib/transform/types.cjs.map +1 -0
- package/dist/lib/transform/types.d.ts +23 -0
- package/dist/lib/transform/types.js +2 -0
- package/dist/lib/transform/types.js.map +1 -0
- package/dist/lib/utils/action-provider.cjs +35 -0
- package/dist/lib/utils/action-provider.cjs.map +1 -0
- package/dist/lib/utils/action-provider.d.ts +28 -0
- package/dist/lib/utils/action-provider.js +31 -0
- package/dist/lib/utils/action-provider.js.map +1 -0
- package/dist/lib/utils/common.utils.cjs +12 -0
- package/dist/lib/utils/common.utils.cjs.map +1 -0
- package/dist/lib/utils/common.utils.d.ts +3 -0
- package/dist/lib/utils/common.utils.js +7 -0
- package/dist/lib/utils/common.utils.js.map +1 -0
- package/dist/lib/utils/condition.cjs +9 -0
- package/dist/lib/utils/condition.cjs.map +1 -0
- package/dist/lib/utils/condition.d.ts +3 -0
- package/dist/lib/utils/condition.js +5 -0
- package/dist/lib/utils/condition.js.map +1 -0
- package/dist/lib/utils/endpoint.utils.cjs +13 -0
- package/dist/lib/utils/endpoint.utils.cjs.map +1 -0
- package/dist/lib/utils/endpoint.utils.d.ts +2 -0
- package/dist/lib/utils/endpoint.utils.js +9 -0
- package/dist/lib/utils/endpoint.utils.js.map +1 -0
- package/dist/lib/utils/factory.cjs +29 -0
- package/dist/lib/utils/factory.cjs.map +1 -0
- package/dist/lib/utils/factory.d.ts +20 -0
- package/dist/lib/utils/factory.js +25 -0
- package/dist/lib/utils/factory.js.map +1 -0
- package/dist/lib/utils/generator.utils.cjs +11 -0
- package/dist/lib/utils/generator.utils.cjs.map +1 -0
- package/dist/lib/utils/generator.utils.d.ts +1 -0
- package/dist/lib/utils/generator.utils.js +7 -0
- package/dist/lib/utils/generator.utils.js.map +1 -0
- package/dist/lib/utils/index.cjs +14 -0
- package/dist/lib/utils/index.cjs.map +1 -0
- package/dist/lib/utils/index.d.ts +10 -0
- package/dist/lib/utils/index.js +11 -0
- package/dist/lib/utils/index.js.map +1 -0
- package/dist/lib/utils/object.utils.cjs +21 -0
- package/dist/lib/utils/object.utils.cjs.map +1 -0
- package/dist/lib/utils/object.utils.d.ts +1 -0
- package/dist/lib/utils/object.utils.js +17 -0
- package/dist/lib/utils/object.utils.js.map +1 -0
- package/dist/lib/utils/schema.utils.cjs +55 -0
- package/dist/lib/utils/schema.utils.cjs.map +1 -0
- package/dist/lib/utils/schema.utils.d.ts +10 -0
- package/dist/lib/utils/schema.utils.js +50 -0
- package/dist/lib/utils/schema.utils.js.map +1 -0
- package/dist/lib/utils/source-builder.cjs +378 -0
- package/dist/lib/utils/source-builder.cjs.map +1 -0
- package/dist/lib/utils/source-builder.d.ts +216 -0
- package/dist/lib/utils/source-builder.js +374 -0
- package/dist/lib/utils/source-builder.js.map +1 -0
- package/dist/lib/utils/string.utils.cjs +337 -0
- package/dist/lib/utils/string.utils.cjs.map +1 -0
- package/dist/lib/utils/string.utils.d.ts +173 -0
- package/dist/lib/utils/string.utils.js +324 -0
- package/dist/lib/utils/string.utils.js.map +1 -0
- package/dist/lib/utils/string.utils.types.cjs +3 -0
- package/dist/lib/utils/string.utils.types.cjs.map +1 -0
- package/dist/lib/utils/string.utils.types.d.ts +148 -0
- package/dist/lib/utils/string.utils.types.js +2 -0
- package/dist/lib/utils/string.utils.types.js.map +1 -0
- package/dist/lib/utils/type.utils.cjs +3 -0
- package/dist/lib/utils/type.utils.cjs.map +1 -0
- package/dist/lib/utils/type.utils.d.ts +15 -0
- package/dist/lib/utils/type.utils.js +2 -0
- package/dist/lib/utils/type.utils.js.map +1 -0
- package/package.json +27 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transformer.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/transform/transformer.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AACxC,6DAAyD;AACzD,6DAAyD;AACzD,yDAAqD;AAIrD,SAAgB,gBAAgB,CAAC,IAA0B;IACzD,MAAM,OAAO,GAA8B;QACzC,WAAW,EAAE,IAAI,qBAAW,EAAE;QAC9B,KAAK,EAAE,IAAI;QACX,iBAAiB,EAAE,IAAI,GAAG,EAAE;QAC5B,KAAK,EAAE,IAAI,GAAG,EAAE;QAChB,QAAQ,EAAE,IAAI,GAAG,EAAE;QACnB,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,OAAO,EAAE,IAAI,GAAG,EAAE;QAElB,WAAW,EAAE;YACX,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,KAAK,EAAE,IAAI,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,GAAG,EAAE;YACrB,aAAa,EAAE,IAAI,GAAG,EAAE;YACxB,SAAS,EAAE,IAAI,GAAG,EAAE;YACpB,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,OAAO,EAAE,IAAI,GAAG,EAAE;SACnB;KACF,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;QACrC,IAAA,sCAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;KACtC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;QACnD,IAAA,kCAAe,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KAClC;IACD,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;QACvD,IAAA,sCAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;KACtC;IAED,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC/C,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC;AArCD,4CAqCC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { IdGenerator } from './helpers';
|
|
2
|
+
import { transformDocument } from './transform-document';
|
|
3
|
+
import { transformEndpoint } from './transform-endpoint';
|
|
4
|
+
import { transformSchema } from './transform-schema';
|
|
5
|
+
export function transformOpenApi(data) {
|
|
6
|
+
const context = {
|
|
7
|
+
idGenerator: new IdGenerator(),
|
|
8
|
+
input: data,
|
|
9
|
+
incompleteSchemas: new Map(),
|
|
10
|
+
paths: new Map(),
|
|
11
|
+
services: new Map(),
|
|
12
|
+
endpoints: new Map(),
|
|
13
|
+
schemas: new Map(),
|
|
14
|
+
transformed: {
|
|
15
|
+
services: new Map(),
|
|
16
|
+
paths: new Map(),
|
|
17
|
+
parameters: new Map(),
|
|
18
|
+
requestBodies: new Map(),
|
|
19
|
+
responses: new Map(),
|
|
20
|
+
content: new Map(),
|
|
21
|
+
headers: new Map(),
|
|
22
|
+
schemas: new Map(),
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
for (const document of data.documents) {
|
|
26
|
+
transformDocument(context, document);
|
|
27
|
+
}
|
|
28
|
+
for (const schema of context.input.schemas.values()) {
|
|
29
|
+
transformSchema(context, schema);
|
|
30
|
+
}
|
|
31
|
+
for (const endpoint of context.input.endpoints.values()) {
|
|
32
|
+
transformEndpoint(context, endpoint);
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
services: Array.from(context.services.values()),
|
|
36
|
+
endpoints: Array.from(context.endpoints.values()),
|
|
37
|
+
schemas: Array.from(context.schemas.values()),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=transformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/transform/transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,MAAM,UAAU,gBAAgB,CAAC,IAA0B;IACzD,MAAM,OAAO,GAA8B;QACzC,WAAW,EAAE,IAAI,WAAW,EAAE;QAC9B,KAAK,EAAE,IAAI;QACX,iBAAiB,EAAE,IAAI,GAAG,EAAE;QAC5B,KAAK,EAAE,IAAI,GAAG,EAAE;QAChB,QAAQ,EAAE,IAAI,GAAG,EAAE;QACnB,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,OAAO,EAAE,IAAI,GAAG,EAAE;QAElB,WAAW,EAAE;YACX,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,KAAK,EAAE,IAAI,GAAG,EAAE;YAChB,UAAU,EAAE,IAAI,GAAG,EAAE;YACrB,aAAa,EAAE,IAAI,GAAG,EAAE;YACxB,SAAS,EAAE,IAAI,GAAG,EAAE;YACpB,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,OAAO,EAAE,IAAI,GAAG,EAAE;SACnB;KACF,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;QACrC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;KACtC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;QACnD,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KAClC;IACD,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE;QACvD,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;KACtC;IAED,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC/C,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACjD,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/transform/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ApiSchema, ApiSchemaExtensions, ApiSchemaKind, ApiPath, ApiData, ApiService, ApiParameter, ApiRequestBody, ApiResponse, ApiContent, ApiHeader } from './api-types';
|
|
2
|
+
import { IdGenerator } from './helpers';
|
|
3
|
+
import { OpenApiCollectorData } from '../collect/types';
|
|
4
|
+
import { ArrayItem } from '../utils/type.utils';
|
|
5
|
+
export type IncompleteApiSchema = Omit<ApiSchema, Exclude<keyof ApiSchemaExtensions<ApiSchemaKind>, 'kind'>>;
|
|
6
|
+
export type OpenApiTransformerContext = {
|
|
7
|
+
idGenerator: IdGenerator;
|
|
8
|
+
input: OpenApiCollectorData;
|
|
9
|
+
incompleteSchemas: Map<string, IncompleteApiSchema>;
|
|
10
|
+
paths: Map<string, ApiPath>;
|
|
11
|
+
transformed: {
|
|
12
|
+
services: Map<string, ApiService>;
|
|
13
|
+
paths: Map<string, ApiPath>;
|
|
14
|
+
parameters: Map<string, ApiParameter>;
|
|
15
|
+
requestBodies: Map<string, ApiRequestBody>;
|
|
16
|
+
responses: Map<string, ApiResponse>;
|
|
17
|
+
content: Map<string, ApiContent>;
|
|
18
|
+
headers: Map<string, ApiHeader>;
|
|
19
|
+
schemas: Map<string, ApiSchema>;
|
|
20
|
+
};
|
|
21
|
+
} & {
|
|
22
|
+
[K in keyof ApiData]: Map<string, ArrayItem<ApiData[K]>>;
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/transform/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ActionProvider = void 0;
|
|
5
|
+
class Foo {
|
|
6
|
+
bar(value) {
|
|
7
|
+
return `Hello, ${value}!`;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
class ActionProvider {
|
|
11
|
+
constructor(_runner) {
|
|
12
|
+
this._runner = _runner;
|
|
13
|
+
}
|
|
14
|
+
run(...args) {
|
|
15
|
+
switch (this._runner.kind) {
|
|
16
|
+
case 'ctor':
|
|
17
|
+
return new this._runner.factory()[this._runner.functionName](...args);
|
|
18
|
+
case 'fn':
|
|
19
|
+
return this._runner.action(...args);
|
|
20
|
+
case 'value':
|
|
21
|
+
return this._runner.value[this._runner.functionName](...args);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
static fromType(type, functionName) {
|
|
25
|
+
return new ActionProvider({ kind: 'ctor', factory: type, functionName: functionName });
|
|
26
|
+
}
|
|
27
|
+
static fromFn(fn) {
|
|
28
|
+
return new ActionProvider({ kind: 'fn', action: fn });
|
|
29
|
+
}
|
|
30
|
+
static fromValue(value, functionName) {
|
|
31
|
+
return new ActionProvider({ kind: 'value', value, functionName: functionName });
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.ActionProvider = ActionProvider;
|
|
35
|
+
//# sourceMappingURL=action-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-provider.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/action-provider.ts"],"names":[],"mappings":";AAAA,uDAAuD;;;AAyBvD,MAAM,GAAG;IACA,GAAG,CAAC,KAAa;QACtB,OAAO,UAAU,KAAK,GAAG,CAAC;IAC5B,CAAC;CACF;AAID,MAAa,cAAc;IACzB,YAA6B,OAA8B;QAA9B,YAAO,GAAP,OAAO,CAAuB;IAAG,CAAC;IAExD,GAAG,CAAC,GAAG,IAAyB;QACrC,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YACzB,KAAK,MAAM;gBACT,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/E,KAAK,IAAI;gBACP,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;YACtC,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;SACxE;IACH,CAAC;IAEM,MAAM,CAAC,QAAQ,CACpB,IAAyB,EACzB,YAAmB;QAEnB,OAAO,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAmB,EAAE,CAAC,CAAC;IAChG,CAAC;IAEM,MAAM,CAAC,MAAM,CAA0C,EAAW;QACvE,OAAO,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAEM,MAAM,CAAC,SAAS,CACrB,KAAQ,EACR,YAAmB;QAEnB,OAAO,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,YAAmB,EAAE,CAAC,CAAC;IACzF,CAAC;CACF;AA/BD,wCA+BC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { EmptyConstructor, FunctionNames } from './type.utils';
|
|
2
|
+
type MatchingFunctionNames<T, TAction> = {
|
|
3
|
+
[K in keyof T]: T[K] extends TAction ? K : never;
|
|
4
|
+
}[keyof T];
|
|
5
|
+
type CtorActionRunner<T, TAction> = {
|
|
6
|
+
kind: 'ctor';
|
|
7
|
+
factory: EmptyConstructor<T>;
|
|
8
|
+
functionName: MatchingFunctionNames<T, TAction>;
|
|
9
|
+
};
|
|
10
|
+
type FnActionRunner<TAction> = {
|
|
11
|
+
kind: 'fn';
|
|
12
|
+
action: TAction;
|
|
13
|
+
};
|
|
14
|
+
type ValueActionRunner<T, TAction> = {
|
|
15
|
+
kind: 'value';
|
|
16
|
+
value: T;
|
|
17
|
+
functionName: MatchingFunctionNames<T, TAction>;
|
|
18
|
+
};
|
|
19
|
+
type ActionRunner<TAction> = CtorActionRunner<any, TAction> | FnActionRunner<TAction> | ValueActionRunner<any, TAction>;
|
|
20
|
+
export declare class ActionProvider<TAction extends (...args: any[]) => any> {
|
|
21
|
+
private readonly _runner;
|
|
22
|
+
constructor(_runner: ActionRunner<TAction>);
|
|
23
|
+
run(...args: Parameters<TAction>): ReturnType<TAction>;
|
|
24
|
+
static fromType<T, TName extends FunctionNames<T>>(type: EmptyConstructor<T>, functionName: TName): ActionProvider<T[TName] extends (...args: any[]) => any ? T[TName] : never>;
|
|
25
|
+
static fromFn<TAction extends (...args: any[]) => any>(fn: TAction): ActionProvider<TAction>;
|
|
26
|
+
static fromValue<T, TName extends FunctionNames<T>>(value: T, functionName: TName): ActionProvider<T[TName] extends (...args: any[]) => any ? T[TName] : never>;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
class Foo {
|
|
3
|
+
bar(value) {
|
|
4
|
+
return `Hello, ${value}!`;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export class ActionProvider {
|
|
8
|
+
constructor(_runner) {
|
|
9
|
+
this._runner = _runner;
|
|
10
|
+
}
|
|
11
|
+
run(...args) {
|
|
12
|
+
switch (this._runner.kind) {
|
|
13
|
+
case 'ctor':
|
|
14
|
+
return new this._runner.factory()[this._runner.functionName](...args);
|
|
15
|
+
case 'fn':
|
|
16
|
+
return this._runner.action(...args);
|
|
17
|
+
case 'value':
|
|
18
|
+
return this._runner.value[this._runner.functionName](...args);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
static fromType(type, functionName) {
|
|
22
|
+
return new ActionProvider({ kind: 'ctor', factory: type, functionName: functionName });
|
|
23
|
+
}
|
|
24
|
+
static fromFn(fn) {
|
|
25
|
+
return new ActionProvider({ kind: 'fn', action: fn });
|
|
26
|
+
}
|
|
27
|
+
static fromValue(value, functionName) {
|
|
28
|
+
return new ActionProvider({ kind: 'value', value, functionName: functionName });
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=action-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action-provider.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/action-provider.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAyBvD,MAAM,GAAG;IACA,GAAG,CAAC,KAAa;QACtB,OAAO,UAAU,KAAK,GAAG,CAAC;IAC5B,CAAC;CACF;AAID,MAAM,OAAO,cAAc;IACzB,YAA6B,OAA8B;QAA9B,YAAO,GAAP,OAAO,CAAuB;IAAG,CAAC;IAExD,GAAG,CAAC,GAAG,IAAyB;QACrC,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YACzB,KAAK,MAAM;gBACT,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/E,KAAK,IAAI;gBACP,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;YACtC,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;SACxE;IACH,CAAC;IAEM,MAAM,CAAC,QAAQ,CACpB,IAAyB,EACzB,YAAmB;QAEnB,OAAO,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,YAAmB,EAAE,CAAC,CAAC;IAChG,CAAC;IAEM,MAAM,CAAC,MAAM,CAA0C,EAAW;QACvE,OAAO,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACxD,CAAC;IAEM,MAAM,CAAC,SAAS,CACrB,KAAQ,EACR,YAAmB;QAEnB,OAAO,IAAI,cAAc,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,YAAmB,EAAE,CAAC,CAAC;IACzF,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.notNullish = exports.isNullish = void 0;
|
|
4
|
+
function isNullish(value) {
|
|
5
|
+
return value === null || value === undefined;
|
|
6
|
+
}
|
|
7
|
+
exports.isNullish = isNullish;
|
|
8
|
+
function notNullish(value) {
|
|
9
|
+
return !isNullish(value);
|
|
10
|
+
}
|
|
11
|
+
exports.notNullish = notNullish;
|
|
12
|
+
//# sourceMappingURL=common.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.utils.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/common.utils.ts"],"names":[],"mappings":";;;AAEA,SAAgB,SAAS,CAAC,KAAc;IACtC,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;AAC/C,CAAC;AAFD,8BAEC;AAED,SAAgB,UAAU,CAAI,KAAkB;IAC9C,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAFD,gCAEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.utils.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/common.utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,UAAU,CAAI,KAAkB;IAC9C,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.evalCondition = void 0;
|
|
4
|
+
function evalCondition(condition, ctx) {
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
6
|
+
return typeof condition === 'function' ? condition(ctx) : condition;
|
|
7
|
+
}
|
|
8
|
+
exports.evalCondition = evalCondition;
|
|
9
|
+
//# sourceMappingURL=condition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"condition.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/condition.ts"],"names":[],"mappings":";;;AAGA,SAAgB,aAAa,CAAI,SAAuB,EAAE,GAAO;IAC/D,oEAAoE;IACpE,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC;AAHD,sCAGC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"condition.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/condition.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,aAAa,CAAI,SAAuB,EAAE,GAAO;IAC/D,oEAAoE;IACpE,OAAO,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getEndpointUrlPreview = void 0;
|
|
4
|
+
function getEndpointUrlPreview(endpoint) {
|
|
5
|
+
let url = endpoint.path;
|
|
6
|
+
const queryParams = endpoint.parameters.filter((p) => p.target === 'query');
|
|
7
|
+
if (queryParams.length > 0) {
|
|
8
|
+
url += '?' + queryParams.map((p) => (p.required ? `${p.name}={${p.name}}` : `[${p.name}={${p.name}}]`)).join('&');
|
|
9
|
+
}
|
|
10
|
+
return url;
|
|
11
|
+
}
|
|
12
|
+
exports.getEndpointUrlPreview = getEndpointUrlPreview;
|
|
13
|
+
//# sourceMappingURL=endpoint.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint.utils.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/endpoint.utils.ts"],"names":[],"mappings":";;;AAEA,SAAgB,qBAAqB,CAAC,QAAqB;IACzD,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;IACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IAC5E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1B,GAAG,IAAI,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnH;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAPD,sDAOC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export function getEndpointUrlPreview(endpoint) {
|
|
2
|
+
let url = endpoint.path;
|
|
3
|
+
const queryParams = endpoint.parameters.filter((p) => p.target === 'query');
|
|
4
|
+
if (queryParams.length > 0) {
|
|
5
|
+
url += '?' + queryParams.map((p) => (p.required ? `${p.name}={${p.name}}` : `[${p.name}={${p.name}}]`)).join('&');
|
|
6
|
+
}
|
|
7
|
+
return url;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=endpoint.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint.utils.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/endpoint.utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,qBAAqB,CAAC,QAAqB;IACzD,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;IACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IAC5E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;QAC1B,GAAG,IAAI,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnH;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Factory = void 0;
|
|
4
|
+
class Factory {
|
|
5
|
+
constructor(_provider) {
|
|
6
|
+
this._provider = _provider;
|
|
7
|
+
}
|
|
8
|
+
create(...args) {
|
|
9
|
+
switch (this._provider.kind) {
|
|
10
|
+
case 'ctor':
|
|
11
|
+
return new this._provider.factory(...args);
|
|
12
|
+
case 'fn':
|
|
13
|
+
return this._provider.factory(...args);
|
|
14
|
+
case 'value':
|
|
15
|
+
return this._provider.factory;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
static fromType(type) {
|
|
19
|
+
return new Factory({ kind: 'ctor', factory: type });
|
|
20
|
+
}
|
|
21
|
+
static fromFn(fn) {
|
|
22
|
+
return new Factory({ kind: 'fn', factory: fn });
|
|
23
|
+
}
|
|
24
|
+
static fromValue(value) {
|
|
25
|
+
return new Factory({ kind: 'value', factory: value });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.Factory = Factory;
|
|
29
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/factory.ts"],"names":[],"mappings":";;;AAiBA,MAAa,OAAO;IAClB,YAA6B,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IAAG,CAAC;IAE9D,MAAM,CAAC,GAAG,IAAW;QAC1B,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAC3B,KAAK,MAAM;gBACT,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YAC7C,KAAK,IAAI;gBACP,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YACzC,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SACjC;IACH,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAyB,IAA2B;QACxE,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAEM,MAAM,CAAC,MAAM,CAAyB,EAAyB;QACpE,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,SAAS,CAAI,KAAQ;QACjC,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;CACF;AAzBD,0BAyBC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Constructor } from './type.utils';
|
|
2
|
+
type FactoryProvider<T, TArgs extends any[]> = {
|
|
3
|
+
kind: 'ctor';
|
|
4
|
+
factory: Constructor<T, TArgs>;
|
|
5
|
+
} | {
|
|
6
|
+
kind: 'fn';
|
|
7
|
+
factory: (...args: TArgs) => T;
|
|
8
|
+
} | {
|
|
9
|
+
kind: 'value';
|
|
10
|
+
factory: T;
|
|
11
|
+
};
|
|
12
|
+
export declare class Factory<T, TArgs extends any[]> {
|
|
13
|
+
private readonly _provider;
|
|
14
|
+
constructor(_provider: FactoryProvider<T, TArgs>);
|
|
15
|
+
create(...args: TArgs): T;
|
|
16
|
+
static fromType<T, TArgs extends any[]>(type: Constructor<T, TArgs>): Factory<T, TArgs>;
|
|
17
|
+
static fromFn<T, TArgs extends any[]>(fn: (...args: TArgs) => T): Factory<T, TArgs>;
|
|
18
|
+
static fromValue<T>(value: T): Factory<T, []>;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class Factory {
|
|
2
|
+
constructor(_provider) {
|
|
3
|
+
this._provider = _provider;
|
|
4
|
+
}
|
|
5
|
+
create(...args) {
|
|
6
|
+
switch (this._provider.kind) {
|
|
7
|
+
case 'ctor':
|
|
8
|
+
return new this._provider.factory(...args);
|
|
9
|
+
case 'fn':
|
|
10
|
+
return this._provider.factory(...args);
|
|
11
|
+
case 'value':
|
|
12
|
+
return this._provider.factory;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
static fromType(type) {
|
|
16
|
+
return new Factory({ kind: 'ctor', factory: type });
|
|
17
|
+
}
|
|
18
|
+
static fromFn(fn) {
|
|
19
|
+
return new Factory({ kind: 'fn', factory: fn });
|
|
20
|
+
}
|
|
21
|
+
static fromValue(value) {
|
|
22
|
+
return new Factory({ kind: 'value', factory: value });
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/factory.ts"],"names":[],"mappings":"AAiBA,MAAM,OAAO,OAAO;IAClB,YAA6B,SAAoC;QAApC,cAAS,GAAT,SAAS,CAA2B;IAAG,CAAC;IAE9D,MAAM,CAAC,GAAG,IAAW;QAC1B,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAC3B,KAAK,MAAM;gBACT,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YAC7C,KAAK,IAAI;gBACP,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YACzC,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SACjC;IACH,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAyB,IAA2B;QACxE,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAEM,MAAM,CAAC,MAAM,CAAyB,EAAyB;QACpE,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,SAAS,CAAI,KAAQ;QACjC,OAAO,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getInitializedValue = void 0;
|
|
4
|
+
function getInitializedValue(value) {
|
|
5
|
+
if (value === undefined) {
|
|
6
|
+
throw new Error('Generator not initialized.');
|
|
7
|
+
}
|
|
8
|
+
return value;
|
|
9
|
+
}
|
|
10
|
+
exports.getInitializedValue = getInitializedValue;
|
|
11
|
+
//# sourceMappingURL=generator.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.utils.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/generator.utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,mBAAmB,CAAI,KAAoB;IACzD,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;KAC/C;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AALD,kDAKC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getInitializedValue<T>(value: T | undefined): T;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.utils.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/generator.utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,mBAAmB,CAAI,KAAoB;IACzD,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;KAC/C;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./common.utils"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./endpoint.utils"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./factory"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./generator.utils"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./object.utils"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./schema.utils"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./source-builder"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./string.utils"), exports);
|
|
12
|
+
tslib_1.__exportStar(require("./string.utils.types"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./type.utils"), exports);
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,2DAAiC;AACjC,oDAA0B;AAC1B,4DAAkC;AAClC,yDAA+B;AAC/B,yDAA+B;AAC/B,2DAAiC;AACjC,yDAA+B;AAC/B,+DAAqC;AACrC,uDAA6B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './common.utils';
|
|
2
|
+
export * from './endpoint.utils';
|
|
3
|
+
export * from './factory';
|
|
4
|
+
export * from './generator.utils';
|
|
5
|
+
export * from './object.utils';
|
|
6
|
+
export * from './schema.utils';
|
|
7
|
+
export * from './source-builder';
|
|
8
|
+
export * from './string.utils';
|
|
9
|
+
export * from './string.utils.types';
|
|
10
|
+
export * from './type.utils';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './common.utils';
|
|
2
|
+
export * from './endpoint.utils';
|
|
3
|
+
export * from './factory';
|
|
4
|
+
export * from './generator.utils';
|
|
5
|
+
export * from './object.utils';
|
|
6
|
+
export * from './schema.utils';
|
|
7
|
+
export * from './source-builder';
|
|
8
|
+
export * from './string.utils';
|
|
9
|
+
export * from './string.utils.types';
|
|
10
|
+
export * from './type.utils';
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createOverwriteProxy = void 0;
|
|
4
|
+
function createOverwriteProxy(target) {
|
|
5
|
+
return new Proxy(target, new OverwriteProxyHandler());
|
|
6
|
+
}
|
|
7
|
+
exports.createOverwriteProxy = createOverwriteProxy;
|
|
8
|
+
class OverwriteProxyHandler {
|
|
9
|
+
constructor() {
|
|
10
|
+
this._overwrittenValues = {};
|
|
11
|
+
}
|
|
12
|
+
get(target, prop) {
|
|
13
|
+
var _a;
|
|
14
|
+
return (_a = this._overwrittenValues[prop]) !== null && _a !== void 0 ? _a : target[prop];
|
|
15
|
+
}
|
|
16
|
+
set(target, prop, value) {
|
|
17
|
+
this._overwrittenValues[prop] = value;
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=object.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.utils.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/object.utils.ts"],"names":[],"mappings":";;;AAAA,SAAgB,oBAAoB,CAAmB,MAAS;IAC9D,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,qBAAqB,EAAE,CAAC,CAAC;AACxD,CAAC;AAFD,oDAEC;AAED,MAAM,qBAAqB;IAA3B;QACmB,uBAAkB,GAAiC,EAAE,CAAC;IAUzE,CAAC;IARQ,GAAG,CAAC,MAAS,EAAE,IAAiB;;QACrC,OAAO,MAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAAK,MAAuC,CAAC,IAAI,CAAC,CAAC;IACzF,CAAC;IAEM,GAAG,CAAC,MAAS,EAAE,IAAiB,EAAE,KAAc;QACrD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function createOverwriteProxy<T extends object>(target: T): T;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function createOverwriteProxy(target) {
|
|
2
|
+
return new Proxy(target, new OverwriteProxyHandler());
|
|
3
|
+
}
|
|
4
|
+
class OverwriteProxyHandler {
|
|
5
|
+
constructor() {
|
|
6
|
+
this._overwrittenValues = {};
|
|
7
|
+
}
|
|
8
|
+
get(target, prop) {
|
|
9
|
+
var _a;
|
|
10
|
+
return (_a = this._overwrittenValues[prop]) !== null && _a !== void 0 ? _a : target[prop];
|
|
11
|
+
}
|
|
12
|
+
set(target, prop, value) {
|
|
13
|
+
this._overwrittenValues[prop] = value;
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=object.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.utils.js","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/object.utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAmB,MAAS;IAC9D,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,qBAAqB,EAAE,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,qBAAqB;IAA3B;QACmB,uBAAkB,GAAiC,EAAE,CAAC;IAUzE,CAAC;IARQ,GAAG,CAAC,MAAS,EAAE,IAAiB;;QACrC,OAAO,MAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,mCAAK,MAAuC,CAAC,IAAI,CAAC,CAAC;IACzF,CAAC;IAEM,GAAG,CAAC,MAAS,EAAE,IAAiB,EAAE,KAAc;QACrD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getSchemaReference = exports.resolveAnyOfAndAllOf = void 0;
|
|
4
|
+
const internal_utils_1 = require("../internal-utils");
|
|
5
|
+
function resolveAnyOfAndAllOf(schema, ignoreNonObjectParts) {
|
|
6
|
+
if (!ignoreNonObjectParts && (hasInvalidSubSchema(schema.anyOf) || hasInvalidSubSchema(schema.allOf))) {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
const required = new Set(schema.required);
|
|
10
|
+
const properties = new Map();
|
|
11
|
+
collectSubSchemaProperties(schema.allOf, properties, required, false);
|
|
12
|
+
collectSubSchemaProperties(schema.anyOf, properties, required, true);
|
|
13
|
+
if (properties.size === 0) {
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
return Object.assign(Object.assign({}, schema), { kind: 'object', type: 'object', anyOf: [], allOf: [], properties: properties, required: required, additionalProperties: false });
|
|
17
|
+
}
|
|
18
|
+
exports.resolveAnyOfAndAllOf = resolveAnyOfAndAllOf;
|
|
19
|
+
function collectSubSchemaProperties(subSchemas, properties, required, optional) {
|
|
20
|
+
for (const subSchema of subSchemas) {
|
|
21
|
+
if (subSchema.kind === 'object') {
|
|
22
|
+
for (const prop of subSchema.properties.values()) {
|
|
23
|
+
if (!properties.has(prop.name)) {
|
|
24
|
+
properties.set(prop.name, prop);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (!optional) {
|
|
28
|
+
for (const prop of subSchema.required) {
|
|
29
|
+
required.add(prop);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
if (subSchema.kind === 'object' || subSchema.kind === 'combined') {
|
|
34
|
+
collectSubSchemaProperties(subSchema.allOf, properties, required, optional);
|
|
35
|
+
collectSubSchemaProperties(subSchema.anyOf, properties, required, true);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function hasInvalidSubSchema(subSchemas) {
|
|
40
|
+
return subSchemas.some((x) => x.kind !== 'object' && (x.kind !== 'combined' || (!hasInvalidSubSchema(x.allOf) && !hasInvalidSubSchema(x.anyOf))));
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Retrieves the first schema reference and the reference chain of a given schema that
|
|
44
|
+
* defines some schema properties. (e.g. schemas with just "$ref" are skipped)
|
|
45
|
+
* @param schema The schema to retrieve the reference from.
|
|
46
|
+
* @param propertiesToIgnore The properties to ignore when checking for a schema definition.
|
|
47
|
+
*/
|
|
48
|
+
function getSchemaReference(schema, propertiesToIgnore) {
|
|
49
|
+
if (!schema.$ref)
|
|
50
|
+
return schema;
|
|
51
|
+
const hasPropertiesDefined = Object.keys(schema.$src.originalComponent).some((key) => (0, internal_utils_1.isOpenApiObjectProperty)(key) && !propertiesToIgnore.includes(key));
|
|
52
|
+
return hasPropertiesDefined ? schema : getSchemaReference(schema.$ref, propertiesToIgnore);
|
|
53
|
+
}
|
|
54
|
+
exports.getSchemaReference = getSchemaReference;
|
|
55
|
+
//# sourceMappingURL=schema.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.utils.cjs","sourceRoot":"","sources":["../../../../../../packages/core/src/lib/utils/schema.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { OpenApiSchema } from '../parse';
|
|
2
|
+
import { ApiSchema } from '../transform';
|
|
3
|
+
export declare function resolveAnyOfAndAllOf(schema: ApiSchema<'combined' | 'object'>, ignoreNonObjectParts: boolean): ApiSchema<'object'> | undefined;
|
|
4
|
+
/**
|
|
5
|
+
* Retrieves the first schema reference and the reference chain of a given schema that
|
|
6
|
+
* defines some schema properties. (e.g. schemas with just "$ref" are skipped)
|
|
7
|
+
* @param schema The schema to retrieve the reference from.
|
|
8
|
+
* @param propertiesToIgnore The properties to ignore when checking for a schema definition.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getSchemaReference(schema: ApiSchema, propertiesToIgnore: (keyof OpenApiSchema)[]): ApiSchema;
|