@tsed/schema 7.49.0 → 7.50.0
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/jest.config.js +2 -2
- package/lib/browser/schema.umd.min.js +1 -1
- package/lib/browser/schema.umd.min.js.map +1 -1
- package/lib/cjs/components/async-api/channelsMapper.js +62 -0
- package/lib/cjs/components/async-api/channelsMapper.js.map +1 -0
- package/lib/cjs/components/async-api/generate.js +20 -0
- package/lib/cjs/components/async-api/generate.js.map +1 -0
- package/lib/cjs/components/async-api/messageMapper.js +44 -0
- package/lib/cjs/components/async-api/messageMapper.js.map +1 -0
- package/lib/cjs/components/async-api/payloadMapper.js +52 -0
- package/lib/cjs/components/async-api/payloadMapper.js.map +1 -0
- package/lib/cjs/components/async-api/responseMapper.js +58 -0
- package/lib/cjs/components/async-api/responseMapper.js.map +1 -0
- package/lib/cjs/components/{anyMapper.js → default/anyMapper.js} +9 -9
- package/lib/cjs/components/default/anyMapper.js.map +1 -0
- package/lib/cjs/components/{classMapper.js → default/classMapper.js} +11 -9
- package/lib/cjs/components/default/classMapper.js.map +1 -0
- package/lib/cjs/components/{genericsMapper.js → default/genericsMapper.js} +6 -6
- package/lib/cjs/components/default/genericsMapper.js.map +1 -0
- package/lib/cjs/components/{inheritedClassMapper.js → default/inheritedClassMapper.js} +3 -3
- package/lib/cjs/components/default/inheritedClassMapper.js.map +1 -0
- package/lib/cjs/components/{itemMapper.js → default/itemMapper.js} +2 -2
- package/lib/cjs/components/default/itemMapper.js.map +1 -0
- package/lib/cjs/components/{lazyRefMapper.js → default/lazyRefMapper.js} +4 -4
- package/lib/cjs/components/default/lazyRefMapper.js.map +1 -0
- package/lib/cjs/components/{mapMapper.js → default/mapMapper.js} +3 -3
- package/lib/cjs/components/default/mapMapper.js.map +1 -0
- package/lib/cjs/components/{objectMapper.js → default/objectMapper.js} +5 -5
- package/lib/cjs/components/default/objectMapper.js.map +1 -0
- package/lib/cjs/components/{ofMapper.js → default/ofMapper.js} +2 -2
- package/lib/cjs/components/default/ofMapper.js.map +1 -0
- package/lib/cjs/components/{propertiesMapper.js → default/propertiesMapper.js} +3 -3
- package/lib/cjs/components/default/propertiesMapper.js.map +1 -0
- package/lib/cjs/components/{schemaMapper.js → default/schemaMapper.js} +16 -16
- package/lib/cjs/components/default/schemaMapper.js.map +1 -0
- package/lib/cjs/components/index.js +26 -20
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/components/open-spec/generate.js +24 -0
- package/lib/cjs/components/open-spec/generate.js.map +1 -0
- package/lib/cjs/components/{operationInFilesMapper.js → open-spec/operationInFilesMapper.js} +1 -1
- package/lib/cjs/components/open-spec/operationInFilesMapper.js.map +1 -0
- package/lib/cjs/components/{operationInParameterMapper.js → open-spec/operationInParameterMapper.js} +7 -7
- package/lib/cjs/components/open-spec/operationInParameterMapper.js.map +1 -0
- package/lib/cjs/components/{operationInParametersMapper.js → open-spec/operationInParametersMapper.js} +2 -2
- package/lib/cjs/components/open-spec/operationInParametersMapper.js.map +1 -0
- package/lib/cjs/components/{operationInQueryMapper.js → open-spec/operationInQueryMapper.js} +4 -4
- package/lib/cjs/components/open-spec/operationInQueryMapper.js.map +1 -0
- package/lib/cjs/components/{operationMapper.js → open-spec/operationMapper.js} +6 -6
- package/lib/cjs/components/open-spec/operationMapper.js.map +1 -0
- package/lib/cjs/components/{operationMediaMapper.js → open-spec/operationMediaMapper.js} +2 -2
- package/lib/cjs/components/open-spec/operationMediaMapper.js.map +1 -0
- package/lib/cjs/components/{operationRequestBodyMapper.js → open-spec/operationRequestBodyMapper.js} +5 -5
- package/lib/cjs/components/open-spec/operationRequestBodyMapper.js.map +1 -0
- package/lib/cjs/components/{operationResponseMapper.js → open-spec/operationResponseMapper.js} +2 -2
- package/lib/cjs/components/open-spec/operationResponseMapper.js.map +1 -0
- package/lib/cjs/components/{pathsMapper.js → open-spec/pathsMapper.js} +38 -33
- package/lib/cjs/components/open-spec/pathsMapper.js.map +1 -0
- package/lib/cjs/constants/OperationVerbs.js +36 -0
- package/lib/cjs/constants/OperationVerbs.js.map +1 -0
- package/lib/cjs/decorators/operations/operation.js +45 -0
- package/lib/cjs/decorators/operations/operation.js.map +1 -0
- package/lib/cjs/decorators/operations/operationPath.js.map +1 -1
- package/lib/cjs/decorators/operations/publish.js +10 -0
- package/lib/cjs/decorators/operations/publish.js.map +1 -0
- package/lib/cjs/decorators/operations/route.js +14 -49
- package/lib/cjs/decorators/operations/route.js.map +1 -1
- package/lib/cjs/decorators/operations/subscribe.js +10 -0
- package/lib/cjs/decorators/operations/subscribe.js.map +1 -0
- package/lib/cjs/domain/JsonEntityStore.js +0 -4
- package/lib/cjs/domain/JsonEntityStore.js.map +1 -1
- package/lib/cjs/domain/JsonMap.js +1 -1
- package/lib/cjs/domain/JsonMap.js.map +1 -1
- package/lib/cjs/domain/JsonOperation.js +6 -0
- package/lib/cjs/domain/JsonOperation.js.map +1 -1
- package/lib/cjs/domain/JsonOperationPathsMap.js +4 -5
- package/lib/cjs/domain/JsonOperationPathsMap.js.map +1 -1
- package/lib/cjs/domain/JsonParameter.js +1 -1
- package/lib/cjs/domain/JsonParameter.js.map +1 -1
- package/lib/cjs/domain/JsonSchema.js +1 -1
- package/lib/cjs/domain/JsonSchema.js.map +1 -1
- package/lib/cjs/domain/SpecTypes.js +1 -0
- package/lib/cjs/domain/SpecTypes.js.map +1 -1
- package/lib/cjs/index.js +33 -22
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/registries/JsonSchemaMapperContainer.js +13 -11
- package/lib/cjs/registries/JsonSchemaMapperContainer.js.map +1 -1
- package/lib/cjs/utils/getJsonSchema.js +7 -4
- package/lib/cjs/utils/getJsonSchema.js.map +1 -1
- package/lib/cjs/utils/getOperationsRoutes.js +3 -3
- package/lib/cjs/utils/getOperationsRoutes.js.map +1 -1
- package/lib/cjs/utils/getSpec.js +4 -14
- package/lib/cjs/utils/getSpec.js.map +1 -1
- package/lib/cjs/utils/mapOperationOptions.js +31 -0
- package/lib/cjs/utils/mapOperationOptions.js.map +1 -0
- package/lib/cjs/utils/operationIdFormatter.js +5 -1
- package/lib/cjs/utils/operationIdFormatter.js.map +1 -1
- package/lib/cjs/utils/ref.js +2 -2
- package/lib/cjs/utils/ref.js.map +1 -1
- package/lib/cjs/utils/removeHiddenOperation.js +8 -0
- package/lib/cjs/utils/removeHiddenOperation.js.map +1 -0
- package/lib/cjs/utils/somethingOf.js +16 -0
- package/lib/cjs/utils/somethingOf.js.map +1 -0
- package/lib/esm/components/async-api/channelsMapper.js +58 -0
- package/lib/esm/components/async-api/channelsMapper.js.map +1 -0
- package/lib/esm/components/async-api/generate.js +18 -0
- package/lib/esm/components/async-api/generate.js.map +1 -0
- package/lib/esm/components/async-api/messageMapper.js +40 -0
- package/lib/esm/components/async-api/messageMapper.js.map +1 -0
- package/lib/esm/components/async-api/payloadMapper.js +48 -0
- package/lib/esm/components/async-api/payloadMapper.js.map +1 -0
- package/lib/esm/components/async-api/responseMapper.js +54 -0
- package/lib/esm/components/async-api/responseMapper.js.map +1 -0
- package/lib/esm/components/{anyMapper.js → default/anyMapper.js} +9 -9
- package/lib/esm/components/default/anyMapper.js.map +1 -0
- package/lib/esm/components/{classMapper.js → default/classMapper.js} +11 -9
- package/lib/esm/components/default/classMapper.js.map +1 -0
- package/lib/esm/components/{genericsMapper.js → default/genericsMapper.js} +6 -6
- package/lib/esm/components/default/genericsMapper.js.map +1 -0
- package/lib/esm/components/{inheritedClassMapper.js → default/inheritedClassMapper.js} +3 -3
- package/lib/esm/components/default/inheritedClassMapper.js.map +1 -0
- package/lib/esm/components/default/itemMapper.js +6 -0
- package/lib/esm/components/default/itemMapper.js.map +1 -0
- package/lib/esm/components/{lazyRefMapper.js → default/lazyRefMapper.js} +4 -4
- package/lib/esm/components/default/lazyRefMapper.js.map +1 -0
- package/lib/esm/components/{mapMapper.js → default/mapMapper.js} +3 -3
- package/lib/esm/components/default/mapMapper.js.map +1 -0
- package/lib/esm/components/{objectMapper.js → default/objectMapper.js} +5 -5
- package/lib/esm/components/default/objectMapper.js.map +1 -0
- package/lib/esm/components/{ofMapper.js → default/ofMapper.js} +2 -2
- package/lib/esm/components/default/ofMapper.js.map +1 -0
- package/lib/esm/components/{propertiesMapper.js → default/propertiesMapper.js} +3 -3
- package/lib/esm/components/default/propertiesMapper.js.map +1 -0
- package/lib/esm/components/{schemaMapper.js → default/schemaMapper.js} +17 -17
- package/lib/esm/components/default/schemaMapper.js.map +1 -0
- package/lib/esm/components/index.js +26 -20
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/components/open-spec/generate.js +22 -0
- package/lib/esm/components/open-spec/generate.js.map +1 -0
- package/lib/esm/components/{operationInFilesMapper.js → open-spec/operationInFilesMapper.js} +1 -1
- package/lib/esm/components/open-spec/operationInFilesMapper.js.map +1 -0
- package/lib/esm/components/{operationInParameterMapper.js → open-spec/operationInParameterMapper.js} +7 -7
- package/lib/esm/components/open-spec/operationInParameterMapper.js.map +1 -0
- package/lib/esm/components/{operationInParametersMapper.js → open-spec/operationInParametersMapper.js} +2 -2
- package/lib/esm/components/open-spec/operationInParametersMapper.js.map +1 -0
- package/lib/esm/components/{operationInQueryMapper.js → open-spec/operationInQueryMapper.js} +4 -4
- package/lib/esm/components/open-spec/operationInQueryMapper.js.map +1 -0
- package/lib/esm/components/{operationMapper.js → open-spec/operationMapper.js} +6 -6
- package/lib/esm/components/open-spec/operationMapper.js.map +1 -0
- package/lib/esm/components/open-spec/operationMediaMapper.js +7 -0
- package/lib/esm/components/open-spec/operationMediaMapper.js.map +1 -0
- package/lib/esm/components/{operationRequestBodyMapper.js → open-spec/operationRequestBodyMapper.js} +5 -5
- package/lib/esm/components/open-spec/operationRequestBodyMapper.js.map +1 -0
- package/lib/esm/components/{operationResponseMapper.js → open-spec/operationResponseMapper.js} +2 -2
- package/lib/esm/components/open-spec/operationResponseMapper.js.map +1 -0
- package/lib/esm/components/open-spec/pathsMapper.js +91 -0
- package/lib/esm/components/open-spec/pathsMapper.js.map +1 -0
- package/lib/esm/constants/OperationVerbs.js +33 -0
- package/lib/esm/constants/OperationVerbs.js.map +1 -0
- package/lib/esm/decorators/operations/operation.js +41 -0
- package/lib/esm/decorators/operations/operation.js.map +1 -0
- package/lib/esm/decorators/operations/operationPath.js.map +1 -1
- package/lib/esm/decorators/operations/publish.js +6 -0
- package/lib/esm/decorators/operations/publish.js.map +1 -0
- package/lib/esm/decorators/operations/route.js +14 -48
- package/lib/esm/decorators/operations/route.js.map +1 -1
- package/lib/esm/decorators/operations/subscribe.js +6 -0
- package/lib/esm/decorators/operations/subscribe.js.map +1 -0
- package/lib/esm/domain/JsonEntityStore.js +0 -4
- package/lib/esm/domain/JsonEntityStore.js.map +1 -1
- package/lib/esm/domain/JsonMap.js +1 -1
- package/lib/esm/domain/JsonMap.js.map +1 -1
- package/lib/esm/domain/JsonOperation.js +6 -0
- package/lib/esm/domain/JsonOperation.js.map +1 -1
- package/lib/esm/domain/JsonOperationPathsMap.js +4 -5
- package/lib/esm/domain/JsonOperationPathsMap.js.map +1 -1
- package/lib/esm/domain/JsonParameter.js +1 -1
- package/lib/esm/domain/JsonParameter.js.map +1 -1
- package/lib/esm/domain/JsonSchema.js +1 -1
- package/lib/esm/domain/JsonSchema.js.map +1 -1
- package/lib/esm/domain/SpecTypes.js +1 -0
- package/lib/esm/domain/SpecTypes.js.map +1 -1
- package/lib/esm/index.js +33 -22
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/registries/JsonSchemaMapperContainer.js +13 -11
- package/lib/esm/registries/JsonSchemaMapperContainer.js.map +1 -1
- package/lib/esm/utils/getJsonSchema.js +7 -4
- package/lib/esm/utils/getJsonSchema.js.map +1 -1
- package/lib/esm/utils/getOperationsRoutes.js +3 -3
- package/lib/esm/utils/getOperationsRoutes.js.map +1 -1
- package/lib/esm/utils/getSpec.js +5 -15
- package/lib/esm/utils/getSpec.js.map +1 -1
- package/lib/{cjs/utils/mapRouteOptions.js → esm/utils/mapOperationOptions.js} +9 -8
- package/lib/esm/utils/mapOperationOptions.js.map +1 -0
- package/lib/esm/utils/operationIdFormatter.js +3 -0
- package/lib/esm/utils/operationIdFormatter.js.map +1 -1
- package/lib/esm/utils/ref.js +3 -3
- package/lib/esm/utils/ref.js.map +1 -1
- package/lib/esm/utils/removeHiddenOperation.js +4 -0
- package/lib/esm/utils/removeHiddenOperation.js.map +1 -0
- package/lib/esm/utils/somethingOf.js +12 -0
- package/lib/esm/utils/somethingOf.js.map +1 -0
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/components/async-api/channelsMapper.d.ts +2 -0
- package/lib/types/components/async-api/generate.d.ts +1 -0
- package/lib/types/components/async-api/messageMapper.d.ts +6 -0
- package/lib/types/components/async-api/payloadMapper.d.ts +4 -0
- package/lib/types/components/async-api/responseMapper.d.ts +6 -0
- package/lib/types/components/{anyMapper.d.ts → default/anyMapper.d.ts} +1 -1
- package/lib/types/components/default/classMapper.d.ts +3 -0
- package/lib/types/components/{genericsMapper.d.ts → default/genericsMapper.d.ts} +1 -1
- package/lib/types/components/{inheritedClassMapper.d.ts → default/inheritedClassMapper.d.ts} +1 -1
- package/lib/types/components/{itemMapper.d.ts → default/itemMapper.d.ts} +1 -1
- package/lib/types/components/default/lazyRefMapper.d.ts +3 -0
- package/lib/types/components/{mapMapper.d.ts → default/mapMapper.d.ts} +1 -1
- package/lib/types/components/{objectMapper.d.ts → default/objectMapper.d.ts} +1 -1
- package/lib/types/components/default/ofMapper.d.ts +3 -0
- package/lib/types/components/default/propertiesMapper.d.ts +3 -0
- package/lib/types/components/default/schemaMapper.d.ts +3 -0
- package/lib/types/components/index.d.ts +26 -20
- package/lib/types/components/open-spec/generate.d.ts +1 -0
- package/lib/types/components/{operationInParameterMapper.d.ts → open-spec/operationInParameterMapper.d.ts} +2 -2
- package/lib/types/components/open-spec/operationInParametersMapper.d.ts +3 -0
- package/lib/types/components/open-spec/operationMapper.d.ts +3 -0
- package/lib/types/components/open-spec/operationMediaMapper.d.ts +3 -0
- package/lib/types/components/{operationRequestBodyMapper.d.ts → open-spec/operationRequestBodyMapper.d.ts} +2 -2
- package/lib/types/components/open-spec/operationResponseMapper.d.ts +3 -0
- package/lib/types/components/{pathsMapper.d.ts → open-spec/pathsMapper.d.ts} +1 -1
- package/lib/types/constants/OperationVerbs.d.ts +20 -0
- package/lib/types/decorators/operations/operation.d.ts +60 -0
- package/lib/types/decorators/operations/operationPath.d.ts +2 -2
- package/lib/types/decorators/operations/publish.d.ts +1 -0
- package/lib/types/decorators/operations/route.d.ts +11 -66
- package/lib/types/decorators/operations/subscribe.d.ts +1 -0
- package/lib/types/domain/JsonOperation.d.ts +1 -0
- package/lib/types/domain/SpecTypes.d.ts +2 -1
- package/lib/types/index.d.ts +33 -22
- package/lib/types/interfaces/JsonSchemaOptions.d.ts +3 -4
- package/lib/types/registries/JsonSchemaMapperContainer.d.ts +6 -5
- package/lib/types/utils/getOperationsRoutes.d.ts +2 -0
- package/lib/types/utils/getSpec.d.ts +5 -1
- package/lib/types/utils/{mapRouteOptions.d.ts → mapOperationOptions.d.ts} +1 -1
- package/lib/types/utils/operationIdFormatter.d.ts +2 -0
- package/lib/types/utils/removeHiddenOperation.d.ts +2 -0
- package/lib/types/utils/somethingOf.d.ts +1 -0
- package/package.json +6 -6
- package/lib/cjs/components/anyMapper.js.map +0 -1
- package/lib/cjs/components/classMapper.js.map +0 -1
- package/lib/cjs/components/genericsMapper.js.map +0 -1
- package/lib/cjs/components/inheritedClassMapper.js.map +0 -1
- package/lib/cjs/components/itemMapper.js.map +0 -1
- package/lib/cjs/components/lazyRefMapper.js.map +0 -1
- package/lib/cjs/components/mapMapper.js.map +0 -1
- package/lib/cjs/components/objectMapper.js.map +0 -1
- package/lib/cjs/components/ofMapper.js.map +0 -1
- package/lib/cjs/components/operationInFilesMapper.js.map +0 -1
- package/lib/cjs/components/operationInParameterMapper.js.map +0 -1
- package/lib/cjs/components/operationInParametersMapper.js.map +0 -1
- package/lib/cjs/components/operationInQueryMapper.js.map +0 -1
- package/lib/cjs/components/operationMapper.js.map +0 -1
- package/lib/cjs/components/operationMediaMapper.js.map +0 -1
- package/lib/cjs/components/operationRequestBodyMapper.js.map +0 -1
- package/lib/cjs/components/operationResponseMapper.js.map +0 -1
- package/lib/cjs/components/pathsMapper.js.map +0 -1
- package/lib/cjs/components/propertiesMapper.js.map +0 -1
- package/lib/cjs/components/schemaMapper.js.map +0 -1
- package/lib/cjs/constants/httpMethods.js +0 -46
- package/lib/cjs/constants/httpMethods.js.map +0 -1
- package/lib/cjs/utils/mapRouteOptions.js.map +0 -1
- package/lib/esm/components/anyMapper.js.map +0 -1
- package/lib/esm/components/classMapper.js.map +0 -1
- package/lib/esm/components/genericsMapper.js.map +0 -1
- package/lib/esm/components/inheritedClassMapper.js.map +0 -1
- package/lib/esm/components/itemMapper.js +0 -6
- package/lib/esm/components/itemMapper.js.map +0 -1
- package/lib/esm/components/lazyRefMapper.js.map +0 -1
- package/lib/esm/components/mapMapper.js.map +0 -1
- package/lib/esm/components/objectMapper.js.map +0 -1
- package/lib/esm/components/ofMapper.js.map +0 -1
- package/lib/esm/components/operationInFilesMapper.js.map +0 -1
- package/lib/esm/components/operationInParameterMapper.js.map +0 -1
- package/lib/esm/components/operationInParametersMapper.js.map +0 -1
- package/lib/esm/components/operationInQueryMapper.js.map +0 -1
- package/lib/esm/components/operationMapper.js.map +0 -1
- package/lib/esm/components/operationMediaMapper.js +0 -7
- package/lib/esm/components/operationMediaMapper.js.map +0 -1
- package/lib/esm/components/operationRequestBodyMapper.js.map +0 -1
- package/lib/esm/components/operationResponseMapper.js.map +0 -1
- package/lib/esm/components/pathsMapper.js +0 -86
- package/lib/esm/components/pathsMapper.js.map +0 -1
- package/lib/esm/components/propertiesMapper.js.map +0 -1
- package/lib/esm/components/schemaMapper.js.map +0 -1
- package/lib/esm/constants/httpMethods.js +0 -43
- package/lib/esm/constants/httpMethods.js.map +0 -1
- package/lib/esm/utils/mapRouteOptions.js +0 -22
- package/lib/esm/utils/mapRouteOptions.js.map +0 -1
- package/lib/types/components/classMapper.d.ts +0 -3
- package/lib/types/components/lazyRefMapper.d.ts +0 -3
- package/lib/types/components/ofMapper.d.ts +0 -3
- package/lib/types/components/operationInParametersMapper.d.ts +0 -3
- package/lib/types/components/operationMapper.d.ts +0 -3
- package/lib/types/components/operationMediaMapper.d.ts +0 -3
- package/lib/types/components/operationResponseMapper.d.ts +0 -3
- package/lib/types/components/propertiesMapper.d.ts +0 -3
- package/lib/types/components/schemaMapper.d.ts +0 -3
- package/lib/types/constants/httpMethods.d.ts +0 -12
- /package/lib/types/components/{operationInFilesMapper.d.ts → open-spec/operationInFilesMapper.d.ts} +0 -0
- /package/lib/types/components/{operationInQueryMapper.d.ts → open-spec/operationInQueryMapper.d.ts} +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getJsonSchema = void 0;
|
|
4
|
+
const core_1 = require("@tsed/core");
|
|
4
5
|
require("../components/index");
|
|
5
6
|
const SpecTypes_1 = require("../domain/SpecTypes");
|
|
6
7
|
const JsonSchemaMapperContainer_1 = require("../registries/JsonSchemaMapperContainer");
|
|
@@ -22,9 +23,9 @@ function get(entity, options) {
|
|
|
22
23
|
const cache = entity.store.get(CACHE_KEY) || new Map();
|
|
23
24
|
const key = getKey(options);
|
|
24
25
|
if (!cache.has(key)) {
|
|
25
|
-
const schema = (0, JsonSchemaMapperContainer_1.execMapper)("schema", entity.schema, options);
|
|
26
|
-
if (Object.keys(options.schemas).length) {
|
|
27
|
-
schema.definitions = options.schemas;
|
|
26
|
+
const schema = (0, JsonSchemaMapperContainer_1.execMapper)("schema", [entity.schema], options);
|
|
27
|
+
if (Object.keys((0, core_1.getValue)(options, "components.schemas", {})).length) {
|
|
28
|
+
schema.definitions = options.components.schemas;
|
|
28
29
|
}
|
|
29
30
|
cache.set(key, schema);
|
|
30
31
|
}
|
|
@@ -40,7 +41,9 @@ function getJsonSchema(model, options = {}) {
|
|
|
40
41
|
inlineEnums: specType === SpecTypes_1.SpecTypes.JSON,
|
|
41
42
|
...options,
|
|
42
43
|
specType,
|
|
43
|
-
|
|
44
|
+
components: {
|
|
45
|
+
schemas: {}
|
|
46
|
+
}
|
|
44
47
|
};
|
|
45
48
|
if (entity.decoratorType === "parameter") {
|
|
46
49
|
options = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getJsonSchema.js","sourceRoot":"","sources":["../../../src/utils/getJsonSchema.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"getJsonSchema.js","sourceRoot":"","sources":["../../../src/utils/getJsonSchema.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAC1C,+BAA6B;AAE7B,mDAA8C;AAE9C,uFAAmE;AACnE,6DAAwD;AAExD;;GAEG;AACH,MAAM,SAAS,GAAG,gBAAgB,CAAC;AAEnC;;GAEG;AACH,SAAS,MAAM,CAAC,OAAY;IAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAS,GAAG,CAAC,MAAuB,EAAE,OAAY;IAChD,MAAM,KAAK,GAAqB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACzE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACnB,MAAM,MAAM,GAAG,IAAA,sCAAU,EAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;QAE9D,IAAI,MAAM,CAAC,IAAI,CAAC,IAAA,eAAQ,EAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;YACnE,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;SACjD;QAED,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KACxB;IAED,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAEnC,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAgB,aAAa,CAAC,KAAsB,EAAE,UAA6B,EAAE;IACnF,MAAM,MAAM,GAAG,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,qBAAS,CAAC,IAAI,CAAC;IACpD,OAAO,GAAG;QACR,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE;QACV,WAAW,EAAE,QAAQ,KAAK,qBAAS,CAAC,IAAI;QACxC,GAAG,OAAO;QACV,QAAQ;QACR,UAAU,EAAE;YACV,OAAO,EAAE,EAAE;SACZ;KACF,CAAC;IAEF,IAAI,MAAM,CAAC,aAAa,KAAK,WAAW,EAAE;QACxC,OAAO,GAAG;YACR,GAAG,OAAO;YACV,YAAY,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;YACtC,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM;SACjC,CAAC;KACH;IAED,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC9B,CAAC;AAxBD,sCAwBC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getOperationsRoutes = void 0;
|
|
4
|
-
const getOperationsStores_1 = require("./getOperationsStores");
|
|
5
4
|
const JsonOperationRoute_1 = require("../domain/JsonOperationRoute");
|
|
6
|
-
const getJsonEntityStore_1 = require("./getJsonEntityStore");
|
|
7
5
|
const concatPath_1 = require("./concatPath");
|
|
6
|
+
const getJsonEntityStore_1 = require("./getJsonEntityStore");
|
|
7
|
+
const getOperationsStores_1 = require("./getOperationsStores");
|
|
8
8
|
function getOperationsRoutes(token, options = {}) {
|
|
9
9
|
const store = token.isStore ? token : (0, getJsonEntityStore_1.getJsonEntityStore)(token);
|
|
10
10
|
const basePath = (0, concatPath_1.concatPath)(options.basePath, store.path);
|
|
@@ -21,7 +21,7 @@ function getOperationsRoutes(token, options = {}) {
|
|
|
21
21
|
return [...(0, getOperationsStores_1.getOperationsStores)(token).values()].reduce((routes, endpoint) => {
|
|
22
22
|
const { operation } = endpoint;
|
|
23
23
|
if (operation) {
|
|
24
|
-
operation.
|
|
24
|
+
operation.getAllowedOperationPath(options.allowedVerbs).forEach((operationPath) => {
|
|
25
25
|
routes.push(new JsonOperationRoute_1.JsonOperationRoute({
|
|
26
26
|
basePath,
|
|
27
27
|
token,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOperationsRoutes.js","sourceRoot":"","sources":["../../../src/utils/getOperationsRoutes.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"getOperationsRoutes.js","sourceRoot":"","sources":["../../../src/utils/getOperationsRoutes.ts"],"names":[],"mappings":";;;AAIA,qEAAgE;AAChE,6CAAwC;AACxC,6DAAwD;AACxD,+DAA0D;AAQ1D,SAAgB,mBAAmB,CACjC,KAAsB,EACtB,UAAsC,EAAE;IAExC,MAAM,KAAK,GAAoB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;IACjF,MAAM,QAAQ,GAAG,IAAA,uBAAU,EAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,gBAAgB,GAAiC,EAAE,CAAC;IAExD,IAAI,OAAO,CAAC,YAAY,EAAE;QACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAS,qBAAqB,EAAE,EAAE,CAAC,CAAC;QAE9D,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE;YAC7D,OAAO,gBAAgB,CAAC,MAAM,CAC5B,mBAAmB,CAAC,KAAK,EAAE;gBACzB,GAAG,OAAO;gBACV,QAAQ;aACT,CAAC,CACH,CAAC;QACJ,CAAC,EAAE,gBAAgB,CAAC,CAAC;KACtB;IAED,OAAO,CAAC,GAAG,IAAA,yCAAmB,EAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;QAC1E,MAAM,EAAC,SAAS,EAAC,GAAG,QAAQ,CAAC;QAE7B,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;gBAChF,MAAM,CAAC,IAAI,CACT,IAAI,uCAAkB,CAAS;oBAC7B,QAAQ;oBACR,KAAK;oBACL,QAAQ;oBACR,aAAa;iBACd,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,gBAAgB,CAAC,CAAC;AACvB,CAAC;AAvCD,kDAuCC"}
|
package/lib/cjs/utils/getSpec.js
CHANGED
|
@@ -28,7 +28,6 @@ function get(model, options, cb) {
|
|
|
28
28
|
function generate(model, options) {
|
|
29
29
|
const store = (0, getJsonEntityStore_1.getJsonEntityStore)(model);
|
|
30
30
|
const { rootPath = "/" } = options;
|
|
31
|
-
const specType = SpecTypes_1.SpecTypes.OPENAPI;
|
|
32
31
|
options = {
|
|
33
32
|
...options,
|
|
34
33
|
rootPath,
|
|
@@ -37,19 +36,9 @@ function generate(model, options) {
|
|
|
37
36
|
name: store.schema.getName(),
|
|
38
37
|
description: store.schema.get("description")
|
|
39
38
|
})
|
|
40
|
-
]
|
|
41
|
-
specType
|
|
39
|
+
]
|
|
42
40
|
};
|
|
43
|
-
|
|
44
|
-
paths: (0, JsonSchemaMapperContainer_1.execMapper)("paths", model, options)
|
|
45
|
-
};
|
|
46
|
-
specJson.tags = (0, core_1.uniqBy)(options.tags, "name");
|
|
47
|
-
if (Object.keys(options.schemas).length) {
|
|
48
|
-
specJson.components = {
|
|
49
|
-
schemas: options.schemas
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
return specJson;
|
|
41
|
+
return (0, JsonSchemaMapperContainer_1.execMapper)("generate", [store], options);
|
|
53
42
|
}
|
|
54
43
|
/**
|
|
55
44
|
* Return the swagger or open spec for the given class.
|
|
@@ -62,7 +51,8 @@ function getSpec(model, options = {}) {
|
|
|
62
51
|
...options,
|
|
63
52
|
tags: [],
|
|
64
53
|
paths: {},
|
|
65
|
-
|
|
54
|
+
channels: {},
|
|
55
|
+
components: {},
|
|
66
56
|
operationIdFormatter: options.operationIdFormatter || (0, operationIdFormatter_1.operationIdFormatter)(options.operationIdPattern),
|
|
67
57
|
root: false
|
|
68
58
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSpec.js","sourceRoot":"","sources":["../../../src/utils/getSpec.ts"],"names":[],"mappings":";;;AAAA,qCAA8D;AAE9D,mDAA8C;AAE9C,uFAAmE;AACnE,6DAAwD;AACxD,2CAAsC;AACtC,iEAA4D;
|
|
1
|
+
{"version":3,"file":"getSpec.js","sourceRoot":"","sources":["../../../src/utils/getSpec.ts"],"names":[],"mappings":";;;AAAA,qCAA8D;AAE9D,mDAA8C;AAE9C,uFAAmE;AACnE,6DAAwD;AACxD,2CAAsC;AACtC,iEAA4D;AA2B5D;;GAEG;AACH,MAAM,MAAM,GAAqC,IAAI,GAAG,EAAE,CAAC;AAE3D;;GAEG;AACH,SAAS,GAAG,CAAC,KAAgB,EAAE,OAAY,EAAE,EAAO;IAClD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACtB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;KAC9B;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAEpC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACnB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;KACtB;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAgB,EAAE,OAA8B;IAChE,MAAM,KAAK,GAAG,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;IACxC,MAAM,EAAC,QAAQ,GAAG,GAAG,EAAC,GAAG,OAAO,CAAC;IAEjC,OAAO,GAAG;QACR,GAAG,OAAO;QACV,QAAQ;QACR,WAAW,EAAE;YACX,IAAA,kBAAW,EAAC;gBACV,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;gBAC5B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;aAC7C,CAAC;SACH;KACF,CAAC;IAEF,OAAO,IAAA,sCAAU,EAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CAAC,KAAmC,EAAE,UAAiC,EAAE;IAC9F,OAAO,GAAG;QACR,QAAQ,EAAE,qBAAS,CAAC,OAAO;QAC3B,GAAG,OAAO;QACV,IAAI,EAAE,EAAE;QACR,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,IAAA,2CAAoB,EAAC,OAAO,CAAC,kBAAkB,CAAC;QACtG,IAAI,EAAE,KAAK;KACZ,CAAC;IAEF,IAAI,IAAA,cAAO,EAAC,KAAK,CAAC,EAAE;QAClB,IAAI,SAAS,GAAQ,EAAE,CAAC;QAExB,OAAO,GAAG;YACR,GAAG,OAAO;YACV,MAAM,CAAC,IAAS;gBACd,SAAS,GAAG,IAAA,qBAAS,EAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC;SACF,CAAC;QAEF,KAAK,CAAC,OAAO,CAAC,CAAC,EAAC,KAAK,EAAE,GAAG,IAAI,EAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE;gBAC1B,GAAG,OAAO;gBACV,GAAG,IAAI;aACR,CAAC,CAAC;YAEH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAC7D,CAAC;AAnCD,0BAmCC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mapOperationOptions = void 0;
|
|
4
|
+
const OperationVerbs_1 = require("../constants/OperationVerbs");
|
|
5
|
+
const ALLOWED_VERBS = new Set([
|
|
6
|
+
...Object.keys(OperationVerbs_1.OperationVerbs)
|
|
7
|
+
.filter((v) => v !== OperationVerbs_1.OperationVerbs.CUSTOM)
|
|
8
|
+
.map((v) => v.toLowerCase())
|
|
9
|
+
]);
|
|
10
|
+
function mapOperationOptions(args) {
|
|
11
|
+
let method = undefined;
|
|
12
|
+
let path = undefined;
|
|
13
|
+
const handlers = args.filter((arg) => {
|
|
14
|
+
if (typeof arg === "string" && ALLOWED_VERBS.has(arg.toLowerCase())) {
|
|
15
|
+
method = arg.toLocaleUpperCase();
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
if (typeof arg === "string" || arg instanceof RegExp) {
|
|
19
|
+
path = arg || "/";
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return !!arg;
|
|
23
|
+
});
|
|
24
|
+
return {
|
|
25
|
+
path,
|
|
26
|
+
method,
|
|
27
|
+
use: handlers
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
exports.mapOperationOptions = mapOperationOptions;
|
|
31
|
+
//# sourceMappingURL=mapOperationOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapOperationOptions.js","sourceRoot":"","sources":["../../../src/utils/mapOperationOptions.ts"],"names":[],"mappings":";;;AAAA,gEAA2D;AAE3D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,GAAG,MAAM,CAAC,IAAI,CAAC,+BAAc,CAAC;SAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,+BAAc,CAAC,MAAM,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;CAC/B,CAAC,CAAC;AAEH,SAAgB,mBAAmB,CAAC,IAAW;IAC7C,IAAI,MAAM,GAAuB,SAAS,CAAC;IAC3C,IAAI,IAAI,GAAgC,SAAS,CAAC;IAElD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE;QACxC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE;YACnE,MAAM,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAEjC,OAAO,KAAK,CAAC;SACd;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,YAAY,MAAM,EAAE;YACpD,IAAI,GAAG,GAAG,IAAI,GAAG,CAAC;YAElB,OAAO,KAAK,CAAC;SACd;QAED,OAAO,CAAC,CAAC,GAAG,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,IAAI;QACJ,MAAM;QACN,GAAG,EAAE,QAAQ;KACd,CAAC;AACJ,CAAC;AAzBD,kDAyBC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.operationIdFormatter = void 0;
|
|
3
|
+
exports.getOperationId = exports.operationIdFormatter = void 0;
|
|
4
4
|
const change_case_1 = require("change-case");
|
|
5
5
|
const DEFAULT_PATTERN = "%c.%m";
|
|
6
6
|
/**
|
|
@@ -34,4 +34,8 @@ function operationIdFormatter(pattern = "") {
|
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
exports.operationIdFormatter = operationIdFormatter;
|
|
37
|
+
function getOperationId(path, { store, operationIdFormatter }) {
|
|
38
|
+
return operationIdFormatter(store.parent.schema.get("name") || store.parent.targetName, store.propertyName, path);
|
|
39
|
+
}
|
|
40
|
+
exports.getOperationId = getOperationId;
|
|
37
41
|
//# sourceMappingURL=operationIdFormatter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operationIdFormatter.js","sourceRoot":"","sources":["../../../src/utils/operationIdFormatter.ts"],"names":[],"mappings":";;;AAAA,6CAAsC;
|
|
1
|
+
{"version":3,"file":"operationIdFormatter.js","sourceRoot":"","sources":["../../../src/utils/operationIdFormatter.ts"],"names":[],"mappings":";;;AAAA,6CAAsC;AAGtC,MAAM,eAAe,GAAG,OAAO,CAAC;AAEhC;;GAEG;AACH,SAAgB,oBAAoB,CAAC,UAAkB,EAAE;IACvD,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEhD,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,WAAmB,EAAE,EAAE;QACtD,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACxF,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAA,uBAAS,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/C,CAAC,CAAC;IAEF,OAAO,CAAC,IAAY,EAAE,WAAmB,EAAE,OAAe,EAAE,EAAE,EAAE;QAC9D,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,IAAI,GAAG,WAAW,CAAC;QAExC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACpC,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAEnC,OAAO,WAAW,CAAC;SACpB;QAED,iBAAiB;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,MAAM,EAAE;YACV,MAAM,YAAY,GAAG,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAEpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBACpC,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAEnC,OAAO,IAAA,uBAAS,EAAC,GAAG,WAAW,OAAO,MAAM,EAAE,CAAC,CAAC;aACjD;SACF;QAED,MAAM,EAAE,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAE,GAAG,CAAC,CAAC;QAChD,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAEpC,OAAO,GAAG,WAAW,IAAI,EAAE,EAAE,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC;AAnCD,oDAmCC;AAED,SAAgB,cAAc,CAAC,IAAY,EAAE,EAAC,KAAK,EAAE,oBAAoB,EAAoB;IAC3F,OAAO,oBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AACrH,CAAC;AAFD,wCAEC"}
|
package/lib/cjs/utils/ref.js
CHANGED
|
@@ -9,7 +9,7 @@ const SpecTypes_1 = require("../domain/SpecTypes");
|
|
|
9
9
|
* @param options
|
|
10
10
|
*/
|
|
11
11
|
function getHost(options) {
|
|
12
|
-
const { host = `#/${options.specType
|
|
12
|
+
const { host = `#/${[SpecTypes_1.SpecTypes.OPENAPI, SpecTypes_1.SpecTypes.ASYNCAPI].includes(options.specType) ? "components/schemas" : "definitions"}` } = options;
|
|
13
13
|
return host;
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
@@ -58,7 +58,7 @@ exports.createRef = createRef;
|
|
|
58
58
|
*/
|
|
59
59
|
function toRef(value, schema, options) {
|
|
60
60
|
const name = createRefName(value.getName(), options);
|
|
61
|
-
options.schemas
|
|
61
|
+
(0, core_1.setValue)(options, `components.schemas.${name}`, schema);
|
|
62
62
|
return createRef(name, value, options);
|
|
63
63
|
}
|
|
64
64
|
exports.toRef = toRef;
|
package/lib/cjs/utils/ref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ref.js","sourceRoot":"","sources":["../../../src/utils/ref.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"ref.js","sourceRoot":"","sources":["../../../src/utils/ref.ts"],"names":[],"mappings":";;;AAAA,qCAAiD;AACjD,6CAAuC;AAEvC,mDAA8C;AAG9C;;;GAGG;AACH,SAAS,OAAO,CAAC,OAA0B;IACzC,MAAM,EAAC,IAAI,GAAG,KAAK,CAAC,qBAAS,CAAC,OAAO,EAAE,qBAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAS,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,aAAa,EAAE,EAAC,GAC9H,OAAO,CAAC;IAEV,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,IAAY,EAAE,OAA0B;IACpE,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAC3C,OAAO,IAAA,wBAAU,EAAC,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;KAChF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAND,sCAMC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,IAAY,EAAE,MAAkB,EAAE,OAA0B;IACpF,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG;QACV,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,EAAE;KACxB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;IACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC;IAErC,IAAI,QAAQ,IAAI,QAAQ,IAAI,SAAS,EAAE;QACrC,QAAQ,OAAO,CAAC,QAAQ,EAAE;YACxB,KAAK,qBAAS,CAAC,OAAO;gBACpB,OAAO,IAAA,kBAAW,EAAC;oBACjB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACrC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACrC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACvC,KAAK,EAAE,CAAC,GAAG,CAAC;iBACb,CAAC,CAAC;YACL,KAAK,qBAAS,CAAC,IAAI;gBACjB,OAAO,IAAA,kBAAW,EAAC;oBACjB,QAAQ;oBACR,SAAS;oBACT,KAAK,EAAE,CAAC,GAAG,CAAC;iBACb,CAAC,CAAC;SACN;KACF;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AA7BD,8BA6BC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAC,KAAiB,EAAE,MAAW,EAAE,OAA0B;IAC9E,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAErD,IAAA,eAAQ,EAAC,OAAO,EAAE,sBAAsB,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IAExD,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAND,sBAMC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.removeHiddenOperation = void 0;
|
|
4
|
+
function removeHiddenOperation(operationStore) {
|
|
5
|
+
return !operationStore.store.get("hidden");
|
|
6
|
+
}
|
|
7
|
+
exports.removeHiddenOperation = removeHiddenOperation;
|
|
8
|
+
//# sourceMappingURL=removeHiddenOperation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeHiddenOperation.js","sourceRoot":"","sources":["../../../src/utils/removeHiddenOperation.ts"],"names":[],"mappings":";;;AAEA,SAAgB,qBAAqB,CAAC,cAA+B;IACnE,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAFD,sDAEC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeOf = void 0;
|
|
4
|
+
function makeOf(key, schemes) {
|
|
5
|
+
if (schemes.length) {
|
|
6
|
+
if (schemes.length === 1) {
|
|
7
|
+
return schemes[0];
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
return { [key]: schemes };
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
exports.makeOf = makeOf;
|
|
16
|
+
//# sourceMappingURL=somethingOf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"somethingOf.js","sourceRoot":"","sources":["../../../src/utils/somethingOf.ts"],"names":[],"mappings":";;;AAAA,SAAgB,MAAM,CAAC,GAAW,EAAE,OAAkB;IACpD,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,EAAC,CAAC,GAAG,CAAC,EAAE,OAAO,EAAC,CAAC;SACzB;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAVD,wBAUC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { camelCase } from "change-case";
|
|
2
|
+
import { OperationVerbs } from "../../constants/OperationVerbs.js";
|
|
3
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
+
import { buildPath } from "../../utils/buildPath.js";
|
|
5
|
+
import { getJsonEntityStore } from "../../utils/getJsonEntityStore.js";
|
|
6
|
+
import { getOperationsStores } from "../../utils/getOperationsStores.js";
|
|
7
|
+
import { removeHiddenOperation } from "../../utils/removeHiddenOperation.js";
|
|
8
|
+
const ALLOWED_VERBS = [OperationVerbs.PUBLISH, OperationVerbs.SUBSCRIBE];
|
|
9
|
+
function pushToChannels(options) {
|
|
10
|
+
return (channels, { operationPath, operationStore }) => {
|
|
11
|
+
const path = options.ctrlRootPath || "/";
|
|
12
|
+
const method = operationPath.method.toLowerCase();
|
|
13
|
+
const operationId = camelCase(`${method.toLowerCase()} ${operationStore.parent.schema.getName()}`);
|
|
14
|
+
const message = execMapper("message", [operationStore, operationPath], options);
|
|
15
|
+
return {
|
|
16
|
+
...channels,
|
|
17
|
+
[path]: {
|
|
18
|
+
...channels[path],
|
|
19
|
+
[method]: {
|
|
20
|
+
...channels[path]?.[method],
|
|
21
|
+
operationId,
|
|
22
|
+
message: {
|
|
23
|
+
oneOf: [...(channels[path]?.[method]?.message?.oneOf || []), message]
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
function expandOperationPaths(options) {
|
|
31
|
+
return (operationStore) => {
|
|
32
|
+
const operationPaths = operationStore.operation.getAllowedOperationPath(ALLOWED_VERBS);
|
|
33
|
+
if (operationPaths.length === 0) {
|
|
34
|
+
return [];
|
|
35
|
+
}
|
|
36
|
+
return operationPaths.map((operationPath) => {
|
|
37
|
+
return {
|
|
38
|
+
operationPath,
|
|
39
|
+
operationStore
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export function channelsMapper(model, { channels, rootPath, ...options }) {
|
|
45
|
+
const store = getJsonEntityStore(model);
|
|
46
|
+
const ctrlPath = store.path;
|
|
47
|
+
const ctrlRootPath = buildPath(rootPath + ctrlPath);
|
|
48
|
+
options = {
|
|
49
|
+
...options,
|
|
50
|
+
ctrlRootPath
|
|
51
|
+
};
|
|
52
|
+
return [...getOperationsStores(model).values()]
|
|
53
|
+
.filter(removeHiddenOperation)
|
|
54
|
+
.flatMap(expandOperationPaths(options))
|
|
55
|
+
.reduce(pushToChannels(options), channels);
|
|
56
|
+
}
|
|
57
|
+
registerJsonSchemaMapper("channels", channelsMapper);
|
|
58
|
+
//# sourceMappingURL=channelsMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channelsMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/channelsMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAC;AAI9D,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAC,mBAAmB,EAAC,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAC,qBAAqB,EAAC,MAAM,mCAAmC,CAAC;AAExE,MAAM,aAAa,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;AAEzE,SAAS,cAAc,CAAC,OAA0B;IAChD,OAAO,CACL,QAAa,EACb,EACE,aAAa,EACb,cAAc,EAIf,EACD,EAAE;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC;QACzC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAEnG,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEhF,OAAO;YACL,GAAG,QAAQ;YACX,CAAC,IAAI,CAAC,EAAE;gBACN,GAAI,QAAgB,CAAC,IAAI,CAAC;gBAC1B,CAAC,MAAM,CAAC,EAAE;oBACR,GAAI,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;oBACpC,WAAW;oBACX,OAAO,EAAE;wBACP,KAAK,EAAE,CAAC,GAAG,CAAE,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC;qBAC/E;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA0B;IACtD,OAAO,CAAC,cAA+B,EAAE,EAAE;QACzC,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAEvF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC;SACX;QAED,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;YAC1C,OAAO;gBACL,aAAa;gBACb,cAAc;aACf,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAU,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAoB;IAC5F,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;IAC5B,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAEpD,OAAO,GAAG;QACR,GAAG,OAAO;QACV,YAAY;KACb,CAAC;IAEF,OAAO,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;SAC5C,MAAM,CAAC,qBAAqB,CAAC;SAC7B,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;SACtC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,wBAAwB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { uniqBy } from "@tsed/core";
|
|
2
|
+
import { SpecTypes } from "../../domain/SpecTypes.js";
|
|
3
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
+
function generate(model, options) {
|
|
5
|
+
const specJson = {
|
|
6
|
+
channels: execMapper("channels", [model], options)
|
|
7
|
+
};
|
|
8
|
+
specJson.tags = uniqBy(options.tags, "name");
|
|
9
|
+
if (options.components?.schemas && Object.keys(options.components.schemas).length) {
|
|
10
|
+
specJson.components = {
|
|
11
|
+
...options.components,
|
|
12
|
+
schemas: options.components.schemas
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
return specJson;
|
|
16
|
+
}
|
|
17
|
+
registerJsonSchemaMapper("generate", generate, SpecTypes.ASYNCAPI);
|
|
18
|
+
//# sourceMappingURL=generate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../../src/components/async-api/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAGhG,SAAS,QAAQ,CAAC,KAAgB,EAAE,OAA8B;IAChE,MAAM,QAAQ,GAAQ;QACpB,QAAQ,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;KACnD,CAAC;IAEF,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE7C,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;QACjF,QAAQ,CAAC,UAAU,GAAG;YACpB,GAAG,OAAO,CAAC,UAAU;YACrB,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;SACpC,CAAC;KACH;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,wBAAwB,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { cleanObject, getValue } from "@tsed/core";
|
|
2
|
+
import { OperationVerbs } from "../../constants/OperationVerbs.js";
|
|
3
|
+
import { SpecTypes } from "../../domain/SpecTypes.js";
|
|
4
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
5
|
+
import { makeOf } from "../../utils/somethingOf.js";
|
|
6
|
+
export function messageMapper(jsonOperationStore, operationPath, { tags = [], defaultTags = [], ...options } = {}) {
|
|
7
|
+
const { path: event, method } = operationPath;
|
|
8
|
+
const messageKey = String(event);
|
|
9
|
+
let message = getValue(options.components, "messages." + event, cleanObject({
|
|
10
|
+
description: jsonOperationStore.operation.get("description"),
|
|
11
|
+
summary: jsonOperationStore.operation.get("summary")
|
|
12
|
+
}));
|
|
13
|
+
if (method.toUpperCase() === OperationVerbs.PUBLISH) {
|
|
14
|
+
const payload = execMapper("payload", [jsonOperationStore, operationPath], options);
|
|
15
|
+
if (payload) {
|
|
16
|
+
message.payload = payload;
|
|
17
|
+
}
|
|
18
|
+
const responses = jsonOperationStore.operation
|
|
19
|
+
.getAllowedOperationPath([OperationVerbs.SUBSCRIBE])
|
|
20
|
+
.map((operationPath) => {
|
|
21
|
+
return execMapper("message", [jsonOperationStore, operationPath], options);
|
|
22
|
+
})
|
|
23
|
+
.filter(Boolean);
|
|
24
|
+
const responsesSchema = makeOf("oneOf", responses);
|
|
25
|
+
if (responsesSchema) {
|
|
26
|
+
message["x-response"] = responsesSchema;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const response = execMapper("response", [jsonOperationStore, operationPath], options);
|
|
31
|
+
if (response) {
|
|
32
|
+
message["x-response"] = response;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
options.components.messages = options.components.messages || {};
|
|
36
|
+
options.components.messages[messageKey] = message;
|
|
37
|
+
return { $ref: `#/components/messages/${messageKey}` };
|
|
38
|
+
}
|
|
39
|
+
registerJsonSchemaMapper("message", messageMapper, SpecTypes.ASYNCAPI);
|
|
40
|
+
//# sourceMappingURL=messageMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/messageMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AACjD,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAC,MAAM,EAAC,MAAM,yBAAyB,CAAC;AAE/C,MAAM,UAAU,aAAa,CAC3B,kBAAmC,EACnC,aAA6B,EAC7B,EAAC,IAAI,GAAG,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,OAAO,KAAuB,EAAE;IAEjE,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,aAAa,CAAC;IAE5C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAEjC,IAAI,OAAO,GAAQ,QAAQ,CACzB,OAAO,CAAC,UAAU,EAClB,WAAW,GAAG,KAAK,EACnB,WAAW,CAAC;QACV,WAAW,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;QAC5D,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;KACrD,CAAC,CACH,CAAC;IAEF,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,OAAO,EAAE;QACnD,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEpF,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;SAC3B;QAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS;aAC3C,uBAAuB,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;aACnD,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;YACrB,OAAO,UAAU,CAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7E,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnB,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAEnD,IAAI,eAAe,EAAE;YACnB,OAAO,CAAC,YAAY,CAAC,GAAG,eAAe,CAAC;SACzC;KACF;SAAM;QACL,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEtF,IAAI,QAAQ,EAAE;YACZ,OAAO,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC;SAClC;KACF;IAED,OAAO,CAAC,UAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;IAClE,OAAO,CAAC,UAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;IAEnD,OAAO,EAAC,IAAI,EAAE,yBAAyB,UAAU,EAAE,EAAC,CAAC;AACvD,CAAC;AAED,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { setValue } from "@tsed/core";
|
|
2
|
+
import { pascalCase } from "change-case";
|
|
3
|
+
import { isParameterType, JsonParameterTypes } from "../../domain/JsonParameterTypes.js";
|
|
4
|
+
import { SpecTypes } from "../../domain/SpecTypes.js";
|
|
5
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
6
|
+
import { popGenerics } from "../../utils/generics.js";
|
|
7
|
+
import { makeOf } from "../../utils/somethingOf.js";
|
|
8
|
+
function mapOptions(parameter, options = {}) {
|
|
9
|
+
return {
|
|
10
|
+
...options,
|
|
11
|
+
groups: parameter.groups,
|
|
12
|
+
groupsName: parameter.groupsName
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function getParameters(jsonOperation, options) {
|
|
16
|
+
return jsonOperation.get("parameters").filter((parameter) => isParameterType(parameter.get("in")));
|
|
17
|
+
}
|
|
18
|
+
export function payloadMapper(jsonOperationStore, operationPath, options) {
|
|
19
|
+
const parameters = getParameters(jsonOperationStore.operation, options);
|
|
20
|
+
const payloadName = pascalCase([operationPath.path, operationPath.method, "Payload"].join(" "));
|
|
21
|
+
setValue(options, `components.schemas.${payloadName}`, {});
|
|
22
|
+
const allOf = parameters
|
|
23
|
+
.map((parameter) => {
|
|
24
|
+
const opts = mapOptions(parameter, options);
|
|
25
|
+
const jsonSchema = execMapper("item", [parameter.$schema], {
|
|
26
|
+
...opts,
|
|
27
|
+
...popGenerics(parameter)
|
|
28
|
+
});
|
|
29
|
+
switch (parameter.get("in")) {
|
|
30
|
+
case JsonParameterTypes.BODY:
|
|
31
|
+
return jsonSchema;
|
|
32
|
+
case JsonParameterTypes.QUERY:
|
|
33
|
+
case JsonParameterTypes.PATH:
|
|
34
|
+
case JsonParameterTypes.HEADER:
|
|
35
|
+
return {
|
|
36
|
+
type: "object",
|
|
37
|
+
properties: {
|
|
38
|
+
[parameter.get("name")]: jsonSchema
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
return jsonSchema;
|
|
43
|
+
}, {})
|
|
44
|
+
.filter(Boolean);
|
|
45
|
+
return makeOf("allOf", allOf);
|
|
46
|
+
}
|
|
47
|
+
registerJsonSchemaMapper("payload", payloadMapper, SpecTypes.ASYNCAPI);
|
|
48
|
+
//# sourceMappingURL=payloadMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payloadMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/payloadMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAIvC,OAAO,EAAC,eAAe,EAAE,kBAAkB,EAAC,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAC,MAAM,EAAC,MAAM,yBAAyB,CAAC;AAE/C,SAAS,UAAU,CAAC,SAAwB,EAAE,UAA6B,EAAE;IAC3E,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,UAAU,EAAE,SAAS,CAAC,UAAU;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,aAA4B,EAAE,OAA0B;IAC7E,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,SAAwB,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpH,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,kBAAmC,EAAE,aAA6B,EAAE,OAA0B;IAC1H,MAAM,UAAU,GAAG,aAAa,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAEhG,QAAQ,CAAC,OAAO,EAAE,sBAAsB,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAE3D,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YACzD,GAAG,IAAI;YACP,GAAG,WAAW,CAAC,SAAS,CAAC;SAC1B,CAAC,CAAC;QAEH,QAAQ,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC3B,KAAK,kBAAkB,CAAC,IAAI;gBAC1B,OAAO,UAAU,CAAC;YACpB,KAAK,kBAAkB,CAAC,KAAK,CAAC;YAC9B,KAAK,kBAAkB,CAAC,IAAI,CAAC;YAC7B,KAAK,kBAAkB,CAAC,MAAM;gBAC5B,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU;qBACpC;iBACF,CAAC;SACL;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC;SACL,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,OAAO,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { setValue } from "@tsed/core";
|
|
2
|
+
import { pascalCase } from "change-case";
|
|
3
|
+
import { SpecTypes } from "../../domain/SpecTypes.js";
|
|
4
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
5
|
+
import { makeOf } from "../../utils/somethingOf.js";
|
|
6
|
+
export function responsePayloadMapper(jsonOperationStore, operationPath, options) {
|
|
7
|
+
const responses = jsonOperationStore.operation.getResponses();
|
|
8
|
+
const statuses = [];
|
|
9
|
+
const statusesTexts = [];
|
|
10
|
+
const successSchemes = [];
|
|
11
|
+
const errorSchemes = [];
|
|
12
|
+
[...responses.entries()].forEach(([status, jsonResponse]) => {
|
|
13
|
+
const response = execMapper("map", [jsonResponse], options);
|
|
14
|
+
statuses.push(+status);
|
|
15
|
+
statusesTexts.push(response.description);
|
|
16
|
+
if (+status !== 204) {
|
|
17
|
+
const { content } = response;
|
|
18
|
+
const schema = content[Object.keys(content)[0]];
|
|
19
|
+
if (+status >= 200 && +status < 400) {
|
|
20
|
+
successSchemes.push(schema);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
successSchemes.push(schema);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
const responsePayloadName = pascalCase([operationPath.path, operationPath.method, "Response"].join(" "));
|
|
28
|
+
const responsePayload = {
|
|
29
|
+
type: "object",
|
|
30
|
+
properties: {
|
|
31
|
+
status: {
|
|
32
|
+
type: "number",
|
|
33
|
+
enum: statuses
|
|
34
|
+
},
|
|
35
|
+
statusText: {
|
|
36
|
+
type: "string",
|
|
37
|
+
enum: statusesTexts
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
required: ["status"]
|
|
41
|
+
};
|
|
42
|
+
const dataSchema = makeOf("oneOf", successSchemes);
|
|
43
|
+
if (dataSchema) {
|
|
44
|
+
setValue(responsePayload, "properties.data", dataSchema);
|
|
45
|
+
}
|
|
46
|
+
const errorSchema = makeOf("oneOf", errorSchemes);
|
|
47
|
+
if (errorSchemes.length) {
|
|
48
|
+
setValue(responsePayload, "properties.error", errorSchema);
|
|
49
|
+
}
|
|
50
|
+
setValue(options, `components.schemas.${responsePayloadName}`, responsePayload);
|
|
51
|
+
return { $ref: `#/components/schemas/${responsePayloadName}` };
|
|
52
|
+
}
|
|
53
|
+
registerJsonSchemaMapper("response", responsePayloadMapper, SpecTypes.ASYNCAPI);
|
|
54
|
+
//# sourceMappingURL=responseMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responseMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/responseMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAC,MAAM,EAAC,MAAM,yBAAyB,CAAC;AAE/C,MAAM,UAAU,qBAAqB,CAAC,kBAAmC,EAAE,aAA6B,EAAE,OAA0B;IAClI,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;IAC9D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,cAAc,GAAc,EAAE,CAAC;IACrC,MAAM,YAAY,GAAc,EAAE,CAAC;IAEnC,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE;QAC1D,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QAE5D,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;QAEvB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;YACnB,MAAM,EAAC,OAAO,EAAC,GAAG,QAAQ,CAAC;YAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACnC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC7B;iBAAM;gBACL,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC7B;SACF;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,UAAU,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACzG,MAAM,eAAe,GAAG;QACtB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;aACf;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,aAAa;aACpB;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB,CAAC;IAEF,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAEnD,IAAI,UAAU,EAAE;QACd,QAAQ,CAAC,eAAe,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;KAC1D;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAElD,IAAI,YAAY,CAAC,MAAM,EAAE;QACvB,QAAQ,CAAC,eAAe,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;KAC5D;IAED,QAAQ,CAAC,OAAO,EAAE,sBAAsB,mBAAmB,EAAE,EAAE,eAAe,CAAC,CAAC;IAEhF,OAAO,EAAC,IAAI,EAAE,wBAAwB,mBAAmB,EAAE,EAAC,CAAC;AAC/D,CAAC;AAED,wBAAwB,CAAC,UAAU,EAAE,qBAAqB,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { JsonLazyRef } from "
|
|
2
|
-
import { JsonSchema } from "
|
|
3
|
-
import { execMapper, oneOfMapper, registerJsonSchemaMapper } from "
|
|
4
|
-
import { mapGenericsOptions } from "
|
|
5
|
-
import { toRef } from "
|
|
1
|
+
import { JsonLazyRef } from "../../domain/JsonLazyRef.js";
|
|
2
|
+
import { JsonSchema } from "../../domain/JsonSchema.js";
|
|
3
|
+
import { execMapper, oneOfMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
+
import { mapGenericsOptions } from "../../utils/generics.js";
|
|
5
|
+
import { toRef } from "../../utils/ref.js";
|
|
6
6
|
export function anyMapper(input, options = {}) {
|
|
7
7
|
if (typeof input !== "object" || input === null) {
|
|
8
8
|
return input;
|
|
9
9
|
}
|
|
10
10
|
if (input instanceof JsonLazyRef) {
|
|
11
|
-
return execMapper("lazyRef", input, options);
|
|
11
|
+
return execMapper("lazyRef", [input], options);
|
|
12
12
|
}
|
|
13
13
|
if (input instanceof JsonSchema && input.get("enum") instanceof JsonSchema) {
|
|
14
14
|
const enumSchema = input.get("enum");
|
|
15
15
|
return toRef(enumSchema, enumSchema.toJSON(options), options);
|
|
16
16
|
}
|
|
17
17
|
if (input.$kind && input.$isJsonDocument) {
|
|
18
|
-
const kind = oneOfMapper(input.$kind, "map");
|
|
19
|
-
const schema = execMapper(kind, input, mapGenericsOptions(options));
|
|
18
|
+
const kind = oneOfMapper([input.$kind, "map"], options);
|
|
19
|
+
const schema = execMapper(kind, [input], mapGenericsOptions(options));
|
|
20
20
|
return input.canRef ? toRef(input, schema, options) : schema;
|
|
21
21
|
}
|
|
22
|
-
return execMapper("object", input, options);
|
|
22
|
+
return execMapper("object", [input], options);
|
|
23
23
|
}
|
|
24
24
|
registerJsonSchemaMapper("any", anyMapper);
|
|
25
25
|
//# sourceMappingURL=anyMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anyMapper.js","sourceRoot":"","sources":["../../../../src/components/default/anyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,yBAAyB,CAAC;AAEnD,OAAO,EAAC,UAAU,EAAE,WAAW,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAC7G,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC,MAAM,UAAU,SAAS,CAAC,KAAU,EAAE,UAA6B,EAAE;IACnE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;QAC/C,OAAO,KAAK,CAAC;KACd;IAED,IAAI,KAAK,YAAY,WAAW,EAAE;QAChC,OAAO,UAAU,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;KAChD;IAED,IAAI,KAAK,YAAY,UAAU,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,UAAU,EAAE;QAC1E,MAAM,UAAU,GAAe,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEjD,OAAO,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;KAC/D;IAED,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,eAAe,EAAE;QACxC,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;QAEtE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;KAC9D;IAED,OAAO,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { getValue, setValue } from "@tsed/core";
|
|
2
|
+
import { JsonEntityStore } from "../../domain/JsonEntityStore.js";
|
|
3
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
+
import { mapGenericsOptions, popGenerics } from "../../utils/generics.js";
|
|
5
|
+
import { createRef, createRefName } from "../../utils/ref.js";
|
|
5
6
|
export function classMapper(value, options) {
|
|
6
7
|
const store = JsonEntityStore.from(value.class);
|
|
7
8
|
const name = createRefName(store.schema.getName() || value.getName(), options);
|
|
@@ -9,7 +10,7 @@ export function classMapper(value, options) {
|
|
|
9
10
|
// Inline generic
|
|
10
11
|
const { type, properties, additionalProperties, items, ...props } = value.toJSON(options);
|
|
11
12
|
const schema = {
|
|
12
|
-
...execMapper("any", store.schema, {
|
|
13
|
+
...execMapper("any", [store.schema], {
|
|
13
14
|
...options,
|
|
14
15
|
...popGenerics(value),
|
|
15
16
|
root: false
|
|
@@ -18,15 +19,16 @@ export function classMapper(value, options) {
|
|
|
18
19
|
};
|
|
19
20
|
if (schema.title) {
|
|
20
21
|
const name = createRefName(schema.title, options);
|
|
21
|
-
options.schemas
|
|
22
|
+
setValue(options.components, `schemas.${name}`, schema);
|
|
22
23
|
delete schema.title;
|
|
23
24
|
return createRef(name, value, options);
|
|
24
25
|
}
|
|
25
26
|
return schema;
|
|
26
27
|
}
|
|
27
|
-
if (options
|
|
28
|
-
|
|
29
|
-
options.schemas
|
|
28
|
+
if (!getValue(options, `components.schemas.${name}`)) {
|
|
29
|
+
// avoid infinite calls
|
|
30
|
+
setValue(options, `components.schemas.${name}`, {});
|
|
31
|
+
options.components.schemas[name] = execMapper("any", [store.schema], mapGenericsOptions({
|
|
30
32
|
...options,
|
|
31
33
|
root: false
|
|
32
34
|
}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classMapper.js","sourceRoot":"","sources":["../../../../src/components/default/classMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAG7D,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,4CAA4C,CAAC;AAChG,OAAO,EAAC,kBAAkB,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAC,SAAS,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAEzD,MAAM,UAAU,WAAW,CAAC,KAAiB,EAAE,OAA0B;IACvE,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAE/E,IAAI,KAAK,CAAC,WAAW,EAAE;QACrB,iBAAiB;QACjB,MAAM,EAAC,IAAI,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,GAAG,KAAK,EAAC,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxF,MAAM,MAAM,GAAG;YACb,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBACnC,GAAG,OAAO;gBACV,GAAG,WAAW,CAAC,KAAK,CAAC;gBACrB,IAAI,EAAE,KAAK;aACZ,CAAC;YACF,GAAG,KAAK;SACT,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAClD,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;YAExD,OAAO,MAAM,CAAC,KAAK,CAAC;YAEpB,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;SACxC;QAED,OAAO,MAAM,CAAC;KACf;IAED,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,IAAI,EAAE,CAAC,EAAE;QACpD,uBAAuB;QACvB,QAAQ,CAAC,OAAO,EAAE,sBAAsB,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAEpD,OAAO,CAAC,UAAW,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAC5C,KAAK,EACL,CAAC,KAAK,CAAC,MAAM,CAAC,EACd,kBAAkB,CAAC;YACjB,GAAG,OAAO;YACV,IAAI,EAAE,KAAK;SACZ,CAAC,CACH,CAAC;KACH;IAED,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,wBAAwB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC"}
|