@tsed/schema 7.86.3 → 7.87.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/lib/browser/schema.umd.min.js +1 -1
- package/lib/browser/schema.umd.min.js.map +1 -1
- package/lib/cjs/components/default/anyMapper.js +1 -2
- package/lib/cjs/components/default/anyMapper.js.map +1 -1
- package/lib/cjs/components/default/classMapper.js +2 -22
- package/lib/cjs/components/default/classMapper.js.map +1 -1
- package/lib/cjs/components/default/discriminatorMappingMapper.js.map +1 -1
- package/lib/cjs/components/default/genericsMapper.js +61 -47
- package/lib/cjs/components/default/genericsMapper.js.map +1 -1
- package/lib/cjs/components/default/inheritedClassMapper.js.map +1 -1
- package/lib/cjs/components/default/lazyRefMapper.js +1 -2
- package/lib/cjs/components/default/lazyRefMapper.js.map +1 -1
- package/lib/cjs/components/default/mapMapper.js +0 -2
- package/lib/cjs/components/default/mapMapper.js.map +1 -1
- package/lib/cjs/components/default/nextMapper.js +80 -0
- package/lib/cjs/components/default/nextMapper.js.map +1 -0
- package/lib/cjs/components/default/nullableMapper.js.map +1 -1
- package/lib/cjs/components/default/objectMapper.js +8 -3
- package/lib/cjs/components/default/objectMapper.js.map +1 -1
- package/lib/cjs/components/default/ofMapper.js +2 -5
- package/lib/cjs/components/default/ofMapper.js.map +1 -1
- package/lib/cjs/components/default/requiredMapper.js +2 -2
- package/lib/cjs/components/default/requiredMapper.js.map +1 -1
- package/lib/cjs/components/default/schemaMapper.js +9 -7
- package/lib/cjs/components/default/schemaMapper.js.map +1 -1
- package/lib/cjs/components/index.js +1 -7
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/components/open-spec/enumsMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/generate.js.map +1 -1
- package/lib/cjs/components/open-spec/nullableMapper.js +5 -1
- package/lib/cjs/components/open-spec/nullableMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/operationInFilesMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/operationInParameterMapper.js +3 -7
- package/lib/cjs/components/open-spec/operationInParameterMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/operationInQueryMapper.js +21 -16
- package/lib/cjs/components/open-spec/operationInQueryMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/operationMediaMapper.js +5 -2
- package/lib/cjs/components/open-spec/operationMediaMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/operationRequestBodyMapper.js +4 -3
- package/lib/cjs/components/open-spec/operationRequestBodyMapper.js.map +1 -1
- package/lib/cjs/components/open-spec/pathsMapper.js +1 -0
- package/lib/cjs/components/open-spec/pathsMapper.js.map +1 -1
- package/lib/cjs/constants/VendorKeys.js +15 -0
- package/lib/cjs/constants/VendorKeys.js.map +1 -0
- package/lib/cjs/constants/httpStatusMessages.js +1 -1
- package/lib/cjs/constants/httpStatusMessages.js.map +1 -1
- package/lib/cjs/decorators/class/children.js.map +1 -1
- package/lib/cjs/decorators/collections/collectionOf.js +29 -0
- package/lib/cjs/decorators/collections/collectionOf.js.map +1 -1
- package/lib/cjs/decorators/common/allow.js.map +1 -1
- package/lib/cjs/decorators/common/any.js.map +1 -1
- package/lib/cjs/decorators/common/defaultMsg.js.map +1 -1
- package/lib/cjs/decorators/common/description.js +8 -11
- package/lib/cjs/decorators/common/description.js.map +1 -1
- package/lib/cjs/decorators/common/discriminatorKey.js +1 -1
- package/lib/cjs/decorators/common/discriminatorKey.js.map +1 -1
- package/lib/cjs/decorators/common/enum.js.map +1 -1
- package/lib/cjs/decorators/common/examples.js.map +1 -1
- package/lib/cjs/decorators/common/format.js.map +1 -1
- package/lib/cjs/decorators/common/forwardGroups.js +1 -1
- package/lib/cjs/decorators/common/forwardGroups.js.map +1 -1
- package/lib/cjs/decorators/common/groups.js +15 -26
- package/lib/cjs/decorators/common/groups.js.map +1 -1
- package/lib/cjs/decorators/common/integer.js.map +1 -1
- package/lib/cjs/decorators/common/oneOf.js +1 -2
- package/lib/cjs/decorators/common/oneOf.js.map +1 -1
- package/lib/cjs/decorators/common/optional.js.map +1 -1
- package/lib/cjs/decorators/config/jsonEntityComponent.js.map +1 -1
- package/lib/cjs/decorators/generics/genericOf.js +7 -16
- package/lib/cjs/decorators/generics/genericOf.js.map +1 -1
- package/lib/cjs/decorators/generics/generics.js +3 -3
- package/lib/cjs/decorators/generics/generics.js.map +1 -1
- package/lib/cjs/decorators/operations/acceptMime.js.map +1 -1
- package/lib/cjs/decorators/operations/consumes.js.map +1 -1
- package/lib/cjs/decorators/operations/deprecated.js.map +1 -1
- package/lib/cjs/decorators/operations/header.js.map +1 -1
- package/lib/cjs/decorators/operations/in.js.map +1 -1
- package/lib/cjs/decorators/operations/inFile.js +2 -2
- package/lib/cjs/decorators/operations/inFile.js.map +1 -1
- package/lib/cjs/decorators/operations/operation.js +5 -1
- package/lib/cjs/decorators/operations/operation.js.map +1 -1
- package/lib/cjs/decorators/operations/operationId.js.map +1 -1
- package/lib/cjs/decorators/operations/operationPath.js +1 -1
- package/lib/cjs/decorators/operations/operationPath.js.map +1 -1
- package/lib/cjs/decorators/operations/path.js.map +1 -1
- package/lib/cjs/decorators/operations/produces.js.map +1 -1
- package/lib/cjs/decorators/operations/redirect.js +1 -1
- package/lib/cjs/decorators/operations/redirect.js.map +1 -1
- package/lib/cjs/decorators/operations/returns.js +39 -62
- package/lib/cjs/decorators/operations/returns.js.map +1 -1
- package/lib/cjs/decorators/operations/security.js.map +1 -1
- package/lib/cjs/decorators/operations/status.js.map +1 -1
- package/lib/cjs/decorators/operations/summary.js.map +1 -1
- package/lib/cjs/decorators/operations/tags.js +10 -1
- package/lib/cjs/decorators/operations/tags.js.map +1 -1
- package/lib/cjs/domain/DecoratorContext.js.map +1 -1
- package/lib/cjs/domain/JsonClassStore.js +1 -1
- package/lib/cjs/domain/JsonClassStore.js.map +1 -1
- package/lib/cjs/domain/JsonEntityStore.js +40 -35
- package/lib/cjs/domain/JsonEntityStore.js.map +1 -1
- package/lib/cjs/domain/JsonLazyRef.js.map +1 -1
- package/lib/cjs/domain/JsonMap.js.map +1 -1
- package/lib/cjs/domain/JsonMedia.js +27 -6
- package/lib/cjs/domain/JsonMedia.js.map +1 -1
- package/lib/cjs/domain/JsonMethodStore.js +27 -8
- package/lib/cjs/domain/JsonMethodStore.js.map +1 -1
- package/lib/cjs/domain/JsonOperation.js +36 -8
- package/lib/cjs/domain/JsonOperation.js.map +1 -1
- package/lib/cjs/domain/JsonParameter.js +20 -5
- package/lib/cjs/domain/JsonParameter.js.map +1 -1
- package/lib/cjs/domain/JsonParameterStore.js +15 -25
- package/lib/cjs/domain/JsonParameterStore.js.map +1 -1
- package/lib/cjs/domain/JsonPropertyStore.js +14 -45
- package/lib/cjs/domain/JsonPropertyStore.js.map +1 -1
- package/lib/cjs/domain/JsonSchema.js +286 -79
- package/lib/cjs/domain/JsonSchema.js.map +1 -1
- package/lib/cjs/domain/__fixtures__/inspectOperationsPaths.js +11 -0
- package/lib/cjs/domain/__fixtures__/inspectOperationsPaths.js.map +1 -0
- package/lib/cjs/fn/email.js +2 -2
- package/lib/cjs/fn/email.js.map +1 -1
- package/lib/cjs/fn/uri.js +2 -2
- package/lib/cjs/fn/uri.js.map +1 -1
- package/lib/cjs/fn/url.js +2 -2
- package/lib/cjs/fn/url.js.map +1 -1
- package/lib/cjs/index.js +4 -8
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/utils/generics.js +5 -36
- package/lib/cjs/utils/generics.js.map +1 -1
- package/lib/cjs/utils/getJsonEntityStore.js +3 -3
- package/lib/cjs/utils/getJsonEntityStore.js.map +1 -1
- package/lib/cjs/utils/getJsonSchema.js +24 -17
- package/lib/cjs/utils/getJsonSchema.js.map +1 -1
- package/lib/cjs/utils/getOperationsStores.js.map +1 -1
- package/lib/cjs/utils/getPropertiesStores.js.map +1 -1
- package/lib/cjs/utils/getSpec.js.map +1 -1
- package/lib/cjs/utils/mergeSchema.js +103 -0
- package/lib/cjs/utils/mergeSchema.js.map +1 -0
- package/lib/cjs/utils/ref.js +15 -13
- package/lib/cjs/utils/ref.js.map +1 -1
- package/lib/esm/components/default/anyMapper.js +1 -2
- package/lib/esm/components/default/anyMapper.js.map +1 -1
- package/lib/esm/components/default/classMapper.js +2 -22
- package/lib/esm/components/default/classMapper.js.map +1 -1
- package/lib/esm/components/default/discriminatorMappingMapper.js.map +1 -1
- package/lib/esm/components/default/genericsMapper.js +62 -48
- package/lib/esm/components/default/genericsMapper.js.map +1 -1
- package/lib/esm/components/default/inheritedClassMapper.js.map +1 -1
- package/lib/esm/components/default/lazyRefMapper.js +1 -2
- package/lib/esm/components/default/lazyRefMapper.js.map +1 -1
- package/lib/esm/components/default/mapMapper.js +0 -2
- package/lib/esm/components/default/mapMapper.js.map +1 -1
- package/lib/esm/components/default/nextMapper.js +75 -0
- package/lib/esm/components/default/nextMapper.js.map +1 -0
- package/lib/esm/components/default/nullableMapper.js.map +1 -1
- package/lib/esm/components/default/objectMapper.js +8 -3
- package/lib/esm/components/default/objectMapper.js.map +1 -1
- package/lib/esm/components/default/ofMapper.js +2 -5
- package/lib/esm/components/default/ofMapper.js.map +1 -1
- package/lib/esm/components/default/requiredMapper.js +2 -2
- package/lib/esm/components/default/requiredMapper.js.map +1 -1
- package/lib/esm/components/default/schemaMapper.js +10 -8
- package/lib/esm/components/default/schemaMapper.js.map +1 -1
- package/lib/esm/components/index.js +1 -7
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/components/open-spec/enumsMapper.js.map +1 -1
- package/lib/esm/components/open-spec/generate.js.map +1 -1
- package/lib/esm/components/open-spec/nullableMapper.js +5 -1
- package/lib/esm/components/open-spec/nullableMapper.js.map +1 -1
- package/lib/esm/components/open-spec/operationInFilesMapper.js.map +1 -1
- package/lib/esm/components/open-spec/operationInParameterMapper.js +3 -7
- package/lib/esm/components/open-spec/operationInParameterMapper.js.map +1 -1
- package/lib/esm/components/open-spec/operationInQueryMapper.js +22 -17
- package/lib/esm/components/open-spec/operationInQueryMapper.js.map +1 -1
- package/lib/esm/components/open-spec/operationMediaMapper.js +5 -2
- package/lib/esm/components/open-spec/operationMediaMapper.js.map +1 -1
- package/lib/esm/components/open-spec/operationRequestBodyMapper.js +4 -3
- package/lib/esm/components/open-spec/operationRequestBodyMapper.js.map +1 -1
- package/lib/esm/components/open-spec/pathsMapper.js +1 -0
- package/lib/esm/components/open-spec/pathsMapper.js.map +1 -1
- package/lib/esm/constants/VendorKeys.js +12 -0
- package/lib/esm/constants/VendorKeys.js.map +1 -0
- package/lib/esm/constants/httpStatusMessages.js +1 -1
- package/lib/esm/constants/httpStatusMessages.js.map +1 -1
- package/lib/esm/decorators/class/children.js.map +1 -1
- package/lib/esm/decorators/collections/collectionOf.js +29 -0
- package/lib/esm/decorators/collections/collectionOf.js.map +1 -1
- package/lib/esm/decorators/common/allow.js.map +1 -1
- package/lib/esm/decorators/common/any.js.map +1 -1
- package/lib/esm/decorators/common/defaultMsg.js.map +1 -1
- package/lib/esm/decorators/common/description.js +9 -12
- package/lib/esm/decorators/common/description.js.map +1 -1
- package/lib/esm/decorators/common/discriminatorKey.js +1 -1
- package/lib/esm/decorators/common/discriminatorKey.js.map +1 -1
- package/lib/esm/decorators/common/enum.js.map +1 -1
- package/lib/esm/decorators/common/examples.js.map +1 -1
- package/lib/esm/decorators/common/format.js.map +1 -1
- package/lib/esm/decorators/common/forwardGroups.js +1 -1
- package/lib/esm/decorators/common/forwardGroups.js.map +1 -1
- package/lib/esm/decorators/common/groups.js +15 -26
- package/lib/esm/decorators/common/groups.js.map +1 -1
- package/lib/esm/decorators/common/integer.js.map +1 -1
- package/lib/esm/decorators/common/oneOf.js +1 -2
- package/lib/esm/decorators/common/oneOf.js.map +1 -1
- package/lib/esm/decorators/common/optional.js.map +1 -1
- package/lib/esm/decorators/config/jsonEntityComponent.js.map +1 -1
- package/lib/esm/decorators/generics/genericOf.js +8 -17
- package/lib/esm/decorators/generics/genericOf.js.map +1 -1
- package/lib/esm/decorators/generics/generics.js +3 -3
- package/lib/esm/decorators/generics/generics.js.map +1 -1
- package/lib/esm/decorators/operations/acceptMime.js.map +1 -1
- package/lib/esm/decorators/operations/consumes.js.map +1 -1
- package/lib/esm/decorators/operations/deprecated.js.map +1 -1
- package/lib/esm/decorators/operations/header.js.map +1 -1
- package/lib/esm/decorators/operations/in.js.map +1 -1
- package/lib/esm/decorators/operations/inFile.js +2 -2
- package/lib/esm/decorators/operations/inFile.js.map +1 -1
- package/lib/esm/decorators/operations/operation.js +5 -1
- package/lib/esm/decorators/operations/operation.js.map +1 -1
- package/lib/esm/decorators/operations/operationId.js.map +1 -1
- package/lib/esm/decorators/operations/operationPath.js +1 -1
- package/lib/esm/decorators/operations/operationPath.js.map +1 -1
- package/lib/esm/decorators/operations/path.js.map +1 -1
- package/lib/esm/decorators/operations/produces.js.map +1 -1
- package/lib/esm/decorators/operations/redirect.js +1 -1
- package/lib/esm/decorators/operations/redirect.js.map +1 -1
- package/lib/esm/decorators/operations/returns.js +40 -63
- package/lib/esm/decorators/operations/returns.js.map +1 -1
- package/lib/esm/decorators/operations/security.js.map +1 -1
- package/lib/esm/decorators/operations/status.js.map +1 -1
- package/lib/esm/decorators/operations/summary.js.map +1 -1
- package/lib/esm/decorators/operations/tags.js +10 -1
- package/lib/esm/decorators/operations/tags.js.map +1 -1
- package/lib/esm/domain/DecoratorContext.js.map +1 -1
- package/lib/esm/domain/JsonClassStore.js +1 -1
- package/lib/esm/domain/JsonClassStore.js.map +1 -1
- package/lib/esm/domain/JsonEntityStore.js +40 -35
- package/lib/esm/domain/JsonEntityStore.js.map +1 -1
- package/lib/esm/domain/JsonLazyRef.js.map +1 -1
- package/lib/esm/domain/JsonMap.js.map +1 -1
- package/lib/esm/domain/JsonMedia.js +27 -6
- package/lib/esm/domain/JsonMedia.js.map +1 -1
- package/lib/esm/domain/JsonMethodStore.js +28 -9
- package/lib/esm/domain/JsonMethodStore.js.map +1 -1
- package/lib/esm/domain/JsonOperation.js +34 -7
- package/lib/esm/domain/JsonOperation.js.map +1 -1
- package/lib/esm/domain/JsonParameter.js +20 -5
- package/lib/esm/domain/JsonParameter.js.map +1 -1
- package/lib/esm/domain/JsonParameterStore.js +16 -26
- package/lib/esm/domain/JsonParameterStore.js.map +1 -1
- package/lib/esm/domain/JsonPropertyStore.js +15 -46
- package/lib/esm/domain/JsonPropertyStore.js.map +1 -1
- package/lib/esm/domain/JsonSchema.js +287 -80
- package/lib/esm/domain/JsonSchema.js.map +1 -1
- package/lib/esm/domain/__fixtures__/inspectOperationsPaths.js +7 -0
- package/lib/esm/domain/__fixtures__/inspectOperationsPaths.js.map +1 -0
- package/lib/esm/fn/email.js +2 -2
- package/lib/esm/fn/email.js.map +1 -1
- package/lib/esm/fn/uri.js +2 -2
- package/lib/esm/fn/uri.js.map +1 -1
- package/lib/esm/fn/url.js +2 -2
- package/lib/esm/fn/url.js.map +1 -1
- package/lib/esm/index.js +4 -8
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/utils/generics.js +3 -32
- package/lib/esm/utils/generics.js.map +1 -1
- package/lib/esm/utils/getJsonEntityStore.js +3 -3
- package/lib/esm/utils/getJsonEntityStore.js.map +1 -1
- package/lib/esm/utils/getJsonSchema.js +24 -17
- package/lib/esm/utils/getJsonSchema.js.map +1 -1
- package/lib/esm/utils/getOperationsStores.js.map +1 -1
- package/lib/esm/utils/getPropertiesStores.js.map +1 -1
- package/lib/esm/utils/getSpec.js.map +1 -1
- package/lib/esm/utils/mergeSchema.js +99 -0
- package/lib/esm/utils/mergeSchema.js.map +1 -0
- package/lib/esm/utils/ref.js +14 -13
- package/lib/esm/utils/ref.js.map +1 -1
- package/lib/types/components/default/classMapper.d.ts +1 -1
- package/lib/types/components/default/genericsMapper.d.ts +9 -2
- package/lib/types/components/default/lazyRefMapper.d.ts +1 -1
- package/lib/types/components/default/nextMapper.d.ts +5 -0
- package/lib/types/components/default/ofMapper.d.ts +1 -1
- package/lib/types/components/index.d.ts +1 -7
- package/lib/types/components/open-spec/nullableMapper.d.ts +2 -1
- package/lib/types/components/open-spec/operationInQueryMapper.d.ts +1 -1
- package/lib/types/constants/VendorKeys.d.ts +10 -0
- package/lib/types/decorators/collections/collectionOf.d.ts +6 -0
- package/lib/types/decorators/generics/genericOf.d.ts +3 -0
- package/lib/types/decorators/generics/generics.d.ts +2 -2
- package/lib/types/decorators/operations/acceptMime.d.ts +1 -1
- package/lib/types/decorators/operations/consumes.d.ts +1 -1
- package/lib/types/decorators/operations/header.d.ts +1 -1
- package/lib/types/decorators/operations/operationId.d.ts +1 -1
- package/lib/types/decorators/operations/operationPath.d.ts +1 -1
- package/lib/types/decorators/operations/path.d.ts +1 -1
- package/lib/types/decorators/operations/returns.d.ts +11 -9
- package/lib/types/decorators/operations/tags.d.ts +11 -2
- package/lib/types/domain/JsonClassStore.d.ts +1 -1
- package/lib/types/domain/JsonEntityStore.d.ts +20 -16
- package/lib/types/domain/JsonMedia.d.ts +4 -5
- package/lib/types/domain/JsonMethodStore.d.ts +9 -2
- package/lib/types/domain/JsonOperation.d.ts +7 -4
- package/lib/types/domain/JsonParameter.d.ts +4 -7
- package/lib/types/domain/JsonParameterStore.d.ts +1 -4
- package/lib/types/domain/JsonPropertyStore.d.ts +2 -21
- package/lib/types/domain/JsonSchema.d.ts +83 -40
- package/lib/types/domain/__fixtures__/inspectOperationsPaths.d.ts +5 -0
- package/lib/types/index.d.ts +4 -8
- package/lib/types/interfaces/JsonSchemaOptions.d.ts +16 -2
- package/lib/types/utils/generics.d.ts +7 -48
- package/lib/types/utils/getJsonEntityStore.d.ts +3 -3
- package/lib/types/utils/getJsonSchema.d.ts +3 -2
- package/lib/types/utils/mergeSchema.d.ts +2 -0
- package/lib/types/utils/ref.d.ts +4 -2
- package/lib/types-esm/components/default/classMapper.d.ts +1 -1
- package/lib/types-esm/components/default/genericsMapper.d.ts +9 -2
- package/lib/types-esm/components/default/lazyRefMapper.d.ts +1 -1
- package/lib/types-esm/components/default/nextMapper.d.ts +5 -0
- package/lib/types-esm/components/default/ofMapper.d.ts +1 -1
- package/lib/types-esm/components/index.d.ts +1 -7
- package/lib/types-esm/components/open-spec/nullableMapper.d.ts +2 -1
- package/lib/types-esm/components/open-spec/operationInQueryMapper.d.ts +1 -1
- package/lib/types-esm/constants/VendorKeys.d.ts +10 -0
- package/lib/types-esm/decorators/collections/collectionOf.d.ts +6 -0
- package/lib/types-esm/decorators/generics/genericOf.d.ts +3 -0
- package/lib/types-esm/decorators/generics/generics.d.ts +2 -2
- package/lib/types-esm/decorators/operations/acceptMime.d.ts +1 -1
- package/lib/types-esm/decorators/operations/consumes.d.ts +1 -1
- package/lib/types-esm/decorators/operations/header.d.ts +1 -1
- package/lib/types-esm/decorators/operations/operationId.d.ts +1 -1
- package/lib/types-esm/decorators/operations/operationPath.d.ts +1 -1
- package/lib/types-esm/decorators/operations/path.d.ts +1 -1
- package/lib/types-esm/decorators/operations/returns.d.ts +11 -9
- package/lib/types-esm/decorators/operations/tags.d.ts +11 -2
- package/lib/types-esm/domain/JsonClassStore.d.ts +1 -1
- package/lib/types-esm/domain/JsonEntityStore.d.ts +20 -16
- package/lib/types-esm/domain/JsonMedia.d.ts +4 -5
- package/lib/types-esm/domain/JsonMethodStore.d.ts +9 -2
- package/lib/types-esm/domain/JsonOperation.d.ts +7 -4
- package/lib/types-esm/domain/JsonParameter.d.ts +4 -7
- package/lib/types-esm/domain/JsonParameterStore.d.ts +1 -4
- package/lib/types-esm/domain/JsonPropertyStore.d.ts +2 -21
- package/lib/types-esm/domain/JsonSchema.d.ts +83 -40
- package/lib/types-esm/domain/__fixtures__/inspectOperationsPaths.d.ts +5 -0
- package/lib/types-esm/index.d.ts +4 -8
- package/lib/types-esm/interfaces/JsonSchemaOptions.d.ts +16 -2
- package/lib/types-esm/utils/generics.d.ts +7 -48
- package/lib/types-esm/utils/getJsonEntityStore.d.ts +3 -3
- package/lib/types-esm/utils/getJsonSchema.d.ts +3 -2
- package/lib/types-esm/utils/mergeSchema.d.ts +2 -0
- package/lib/types-esm/utils/ref.d.ts +4 -2
- package/package.json +6 -6
- package/lib/cjs/components/async-api/channelsMapper.js +0 -62
- package/lib/cjs/components/async-api/channelsMapper.js.map +0 -1
- package/lib/cjs/components/async-api/generate.js +0 -20
- package/lib/cjs/components/async-api/generate.js.map +0 -1
- package/lib/cjs/components/async-api/messageMapper.js +0 -44
- package/lib/cjs/components/async-api/messageMapper.js.map +0 -1
- package/lib/cjs/components/async-api/payloadMapper.js +0 -52
- package/lib/cjs/components/async-api/payloadMapper.js.map +0 -1
- package/lib/cjs/components/async-api/responseMapper.js +0 -58
- package/lib/cjs/components/async-api/responseMapper.js.map +0 -1
- package/lib/cjs/components/default/itemMapper.js +0 -10
- package/lib/cjs/components/default/itemMapper.js.map +0 -1
- package/lib/cjs/components/default/propertiesMapper.js +0 -25
- package/lib/cjs/components/default/propertiesMapper.js.map +0 -1
- package/lib/cjs/utils/somethingOf.js +0 -16
- package/lib/cjs/utils/somethingOf.js.map +0 -1
- package/lib/esm/components/async-api/channelsMapper.js +0 -58
- package/lib/esm/components/async-api/channelsMapper.js.map +0 -1
- package/lib/esm/components/async-api/generate.js +0 -18
- package/lib/esm/components/async-api/generate.js.map +0 -1
- package/lib/esm/components/async-api/messageMapper.js +0 -40
- package/lib/esm/components/async-api/messageMapper.js.map +0 -1
- package/lib/esm/components/async-api/payloadMapper.js +0 -48
- package/lib/esm/components/async-api/payloadMapper.js.map +0 -1
- package/lib/esm/components/async-api/responseMapper.js +0 -54
- package/lib/esm/components/async-api/responseMapper.js.map +0 -1
- package/lib/esm/components/default/itemMapper.js +0 -6
- package/lib/esm/components/default/itemMapper.js.map +0 -1
- package/lib/esm/components/default/propertiesMapper.js +0 -21
- package/lib/esm/components/default/propertiesMapper.js.map +0 -1
- package/lib/esm/utils/somethingOf.js +0 -12
- package/lib/esm/utils/somethingOf.js.map +0 -1
- package/lib/types/components/async-api/channelsMapper.d.ts +0 -2
- package/lib/types/components/async-api/generate.d.ts +0 -1
- package/lib/types/components/async-api/messageMapper.d.ts +0 -6
- package/lib/types/components/async-api/payloadMapper.d.ts +0 -4
- package/lib/types/components/async-api/responseMapper.d.ts +0 -6
- package/lib/types/components/default/itemMapper.d.ts +0 -2
- package/lib/types/components/default/propertiesMapper.d.ts +0 -3
- package/lib/types/utils/somethingOf.d.ts +0 -1
- package/lib/types-esm/components/async-api/channelsMapper.d.ts +0 -2
- package/lib/types-esm/components/async-api/generate.d.ts +0 -1
- package/lib/types-esm/components/async-api/messageMapper.d.ts +0 -6
- package/lib/types-esm/components/async-api/payloadMapper.d.ts +0 -4
- package/lib/types-esm/components/async-api/responseMapper.d.ts +0 -6
- package/lib/types-esm/components/default/itemMapper.d.ts +0 -2
- package/lib/types-esm/components/default/propertiesMapper.d.ts +0 -3
- package/lib/types-esm/utils/somethingOf.d.ts +0 -1
package/lib/cjs/utils/ref.js
CHANGED
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.toRef = exports.createRef = exports.createRefName = void 0;
|
|
3
|
+
exports.toRef = exports.createRef = exports.createRefName = exports.getSchemaFromRef = void 0;
|
|
4
4
|
const core_1 = require("@tsed/core");
|
|
5
5
|
const change_case_1 = require("change-case");
|
|
6
6
|
const SpecTypes_js_1 = require("../domain/SpecTypes.js");
|
|
7
|
+
const mergeSchema_js_1 = require("./mergeSchema.js");
|
|
8
|
+
function getSchemaFromRef($ref, options) {
|
|
9
|
+
const { components } = options;
|
|
10
|
+
if (components?.schemas && $ref) {
|
|
11
|
+
const host = getHost(options);
|
|
12
|
+
const refName = $ref.replace(`${host}/`, "");
|
|
13
|
+
return components.schemas[refName];
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.getSchemaFromRef = getSchemaFromRef;
|
|
7
17
|
/**
|
|
8
18
|
* ignore
|
|
9
19
|
* @param options
|
|
@@ -27,19 +37,11 @@ exports.createRefName = createRefName;
|
|
|
27
37
|
*/
|
|
28
38
|
function createRef(name, schema, options) {
|
|
29
39
|
const host = getHost(options);
|
|
30
|
-
|
|
40
|
+
return (0, mergeSchema_js_1.mergeSchema)({
|
|
31
41
|
$ref: `${host}/${name}`
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
return (0, core_1.cleanObject)({
|
|
36
|
-
readOnly: readOnly ? true : undefined,
|
|
37
|
-
writeOnly: writeOnly ? true : undefined,
|
|
38
|
-
...(readOnly || writeOnly
|
|
39
|
-
? {
|
|
40
|
-
anyOf: [ref]
|
|
41
|
-
}
|
|
42
|
-
: ref)
|
|
42
|
+
}, {
|
|
43
|
+
...(schema.isReadOnly ? { readOnly: true } : {}),
|
|
44
|
+
...(schema.isWriteOnly ? { writeOnly: true } : {})
|
|
43
45
|
});
|
|
44
46
|
}
|
|
45
47
|
exports.createRef = createRef;
|
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,qCAAoC;AACpC,6CAAuC;AAIvC,yDAAiD;AAEjD,qDAA6C;AAE7C,SAAgB,gBAAgB,CAAC,IAAwB,EAAE,OAA0B;IACnF,MAAM,EAAC,UAAU,EAAC,GAAG,OAAO,CAAC;IAE7B,IAAI,UAAU,EAAE,OAAO,IAAI,IAAI,EAAE;QAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QAE7C,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;KACpC;AACH,CAAC;AATD,4CASC;AAED;;;GAGG;AACH,SAAS,OAAO,CAAC,OAA0B;IACzC,MAAM,EAAC,IAAI,GAAG,KAAK,CAAC,wBAAS,CAAC,OAAO,EAAE,wBAAS,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;IAE9B,OAAO,IAAA,4BAAW,EAChB;QACE,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,EAAE;KACxB,EACD;QACE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CACF,CAAC;AACJ,CAAC;AAZD,8BAYC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAC,KAAiB,EAAE,MAAsC,EAAE,OAA0B;IACzG,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IAErD,IAAI,MAAM,EAAE;QACV,IAAA,eAAQ,EAAC,OAAO,EAAE,sBAAsB,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;KACzD;IAED,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AARD,sBAQC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { JsonLazyRef } from "../../domain/JsonLazyRef.js";
|
|
2
2
|
import { JsonSchema } from "../../domain/JsonSchema.js";
|
|
3
3
|
import { execMapper, execOneOfMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
-
import { mapGenericsOptions } from "../../utils/generics.js";
|
|
5
4
|
import { toRef } from "../../utils/ref.js";
|
|
6
5
|
export function anyMapper(input, options = {}) {
|
|
7
6
|
if (typeof input !== "object" || input === null) {
|
|
@@ -16,7 +15,7 @@ export function anyMapper(input, options = {}) {
|
|
|
16
15
|
}
|
|
17
16
|
if (input.$kind && input.$isJsonDocument) {
|
|
18
17
|
const kind = execOneOfMapper([input.$kind, "map"], options);
|
|
19
|
-
const schema = execMapper(kind, [input],
|
|
18
|
+
const schema = execMapper(kind, [input], options);
|
|
20
19
|
return input.canRef ? toRef(input, schema, options) : schema;
|
|
21
20
|
}
|
|
22
21
|
return execMapper("object", [input], options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anyMapper.js","sourceRoot":"","sources":["../../../../src/components/default/anyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAC,UAAU,EAAC,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACpH,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"anyMapper.js","sourceRoot":"","sources":["../../../../src/components/default/anyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAC,UAAU,EAAC,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACpH,OAAO,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAEzC,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,CAAE,CAAC;QAElD,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,eAAe,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QAElD,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,37 +1,17 @@
|
|
|
1
1
|
import { getValue, setValue } from "@tsed/core";
|
|
2
2
|
import { JsonEntityStore } from "../../domain/JsonEntityStore.js";
|
|
3
3
|
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
-
import { mapGenericsOptions, popGenerics } from "../../utils/generics.js";
|
|
5
4
|
import { createRef, createRefName } from "../../utils/ref.js";
|
|
6
5
|
export function classMapper(value, options) {
|
|
7
6
|
const store = JsonEntityStore.from(value.class);
|
|
8
7
|
const name = createRefName(store.schema.getName() || value.getName(), options);
|
|
9
|
-
if (value.hasGenerics) {
|
|
10
|
-
// Inline generic
|
|
11
|
-
const { type, properties, additionalProperties, items, ...props } = value.toJSON(options);
|
|
12
|
-
const schema = {
|
|
13
|
-
...execMapper("any", [store.schema], {
|
|
14
|
-
...options,
|
|
15
|
-
...popGenerics(value),
|
|
16
|
-
root: false
|
|
17
|
-
}),
|
|
18
|
-
...props
|
|
19
|
-
};
|
|
20
|
-
if (schema.title) {
|
|
21
|
-
const name = createRefName(schema.title, options);
|
|
22
|
-
setValue(options.components, `schemas.${name}`, schema);
|
|
23
|
-
delete schema.title;
|
|
24
|
-
return createRef(name, value, options);
|
|
25
|
-
}
|
|
26
|
-
return schema;
|
|
27
|
-
}
|
|
28
8
|
if (!getValue(options, `components.schemas.${name}`)) {
|
|
29
9
|
// avoid infinite calls
|
|
30
10
|
setValue(options, `components.schemas.${name}`, {});
|
|
31
|
-
options.components.schemas[name] = execMapper("any", [store.schema],
|
|
11
|
+
options.components.schemas[name] = execMapper("any", [store.schema], {
|
|
32
12
|
...options,
|
|
33
13
|
root: false
|
|
34
|
-
})
|
|
14
|
+
});
|
|
35
15
|
}
|
|
36
16
|
return createRef(name, value, options);
|
|
37
17
|
}
|
|
@@ -1 +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;
|
|
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;AAE9C,OAAO,EAAC,eAAe,EAAC,MAAM,iCAAiC,CAAC;AAGhE,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAC,SAAS,EAAE,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAE5D,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,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,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YACpE,GAAG,OAAO;YACV,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;KACJ;IAED,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,wBAAwB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discriminatorMappingMapper.js","sourceRoot":"","sources":["../../../../src/components/default/discriminatorMappingMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAIpC,OAAO,EAAC,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAMzC,MAAM,UAAU,0BAA0B,CAAC,GAA4B,EAAE,CAAa,EAAE,OAA0B;IAChH,IAAI,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAA2B,EAAE,CAAC;QAE9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE;YAClC,UAAU,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"discriminatorMappingMapper.js","sourceRoot":"","sources":["../../../../src/components/default/discriminatorMappingMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAIpC,OAAO,EAAC,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAMzC,MAAM,UAAU,0BAA0B,CAAC,GAA4B,EAAE,CAAa,EAAE,OAA0B;IAChH,IAAI,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAA2B,EAAE,CAAC;QAE9C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE;YAClC,UAAU,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAK,CAAC;SAC/E;QAED,GAAG,CAAC,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC;KACxC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,iCAAiC,CAAC,GAA4B;IACrE,IAAI,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE;QAC9B,OAAO,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC;KAClC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wBAAwB,CAAC,sBAAsB,EAAE,iCAAiC,CAAC,CAAC"}
|
|
@@ -1,58 +1,72 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { isObject } from "@tsed/core";
|
|
2
|
+
import { VendorKeys } from "../../constants/VendorKeys.js";
|
|
3
|
+
import { JsonSchema } from "../../domain/JsonSchema.js";
|
|
3
4
|
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
|
-
import {
|
|
5
|
-
|
|
5
|
+
import { toRef } from "../../utils/ref.js";
|
|
6
|
+
function getNestedSchema(propertyKey, schema, options) {
|
|
7
|
+
if ("isLazyRef" in schema) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
if (schema.isGeneric) {
|
|
11
|
+
const genericLabel = schema.get(VendorKeys.GENERIC_LABEL);
|
|
12
|
+
const genericValue = options.generics?.[genericLabel];
|
|
13
|
+
if (!genericValue) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const [model, next] = genericValue;
|
|
17
|
+
const refSchema = JsonSchema.from(model);
|
|
18
|
+
const modelSchema = execMapper("schema", [refSchema], {
|
|
19
|
+
...options,
|
|
20
|
+
generics: next
|
|
21
|
+
});
|
|
22
|
+
if (next || !refSchema.isClass) {
|
|
23
|
+
return modelSchema;
|
|
24
|
+
}
|
|
25
|
+
return toRef(refSchema, modelSchema, options);
|
|
26
|
+
}
|
|
27
|
+
if (schema?.has("items")) {
|
|
28
|
+
const nestedSchema = getNestedSchema(propertyKey, schema.get("items"), options);
|
|
29
|
+
if (nestedSchema) {
|
|
30
|
+
return {
|
|
31
|
+
type: "array",
|
|
32
|
+
items: nestedSchema
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (schema.has("additionalProperties") && isObject(schema.get("additionalProperties"))) {
|
|
37
|
+
const nestedSchema = getNestedSchema(propertyKey, schema.get("additionalProperties"), options);
|
|
38
|
+
if (nestedSchema) {
|
|
39
|
+
return {
|
|
40
|
+
type: "object",
|
|
41
|
+
additionalProperties: nestedSchema
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
6
47
|
/**
|
|
7
48
|
* @ignore
|
|
8
49
|
*/
|
|
9
|
-
export function genericsMapper(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
if (type === Date) {
|
|
20
|
-
return {
|
|
21
|
-
type: "string",
|
|
22
|
-
format: "date-time"
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
if (type.toJSON) {
|
|
26
|
-
return type.toJSON({
|
|
27
|
-
...options,
|
|
28
|
-
generics: undefined
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
if (type === Object) {
|
|
32
|
-
return {
|
|
33
|
-
type: "object"
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
if (isClass(type)) {
|
|
37
|
-
const model = {
|
|
38
|
-
class: type
|
|
39
|
-
};
|
|
40
|
-
if (options.nestedGenerics.length === 0) {
|
|
41
|
-
return execMapper("class", [model], {
|
|
42
|
-
...options,
|
|
43
|
-
generics: undefined
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
const store = JsonEntityStore.from(model.class);
|
|
47
|
-
return execMapper("schema", [store.schema], {
|
|
48
|
-
...options,
|
|
49
|
-
...popGenerics(options),
|
|
50
|
-
root: false
|
|
51
|
-
});
|
|
50
|
+
export function genericsMapper(baseObj, schema, options) {
|
|
51
|
+
if (schema.genericLabels?.length && schema.has("properties")) {
|
|
52
|
+
const properties = schema.get("properties");
|
|
53
|
+
let hasProps = false;
|
|
54
|
+
const additionalObj = Object.entries(properties || {}).reduce((obj, [propertyKey, jsonSchema]) => {
|
|
55
|
+
const nestedSchema = getNestedSchema(propertyKey, jsonSchema, options);
|
|
56
|
+
if (nestedSchema) {
|
|
57
|
+
obj[propertyKey] = nestedSchema;
|
|
58
|
+
hasProps = true;
|
|
52
59
|
}
|
|
60
|
+
return obj;
|
|
61
|
+
}, {});
|
|
62
|
+
if (hasProps) {
|
|
63
|
+
return {
|
|
64
|
+
allOf: [toRef(schema, baseObj, options), { properties: additionalObj, type: "object" }]
|
|
65
|
+
};
|
|
53
66
|
}
|
|
67
|
+
return baseObj;
|
|
54
68
|
}
|
|
55
|
-
return
|
|
69
|
+
return baseObj;
|
|
56
70
|
}
|
|
57
71
|
registerJsonSchemaMapper("generics", genericsMapper);
|
|
58
72
|
//# sourceMappingURL=genericsMapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"genericsMapper.js","sourceRoot":"","sources":["../../../../src/components/default/genericsMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"genericsMapper.js","sourceRoot":"","sources":["../../../../src/components/default/genericsMapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inheritedClassMapper.js","sourceRoot":"","sources":["../../../../src/components/default/inheritedClassMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"inheritedClassMapper.js","sourceRoot":"","sources":["../../../../src/components/default/inheritedClassMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAG9C,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAC,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AAErE,SAAS,UAAU,CAAC,CAAS,EAAE,GAAQ;IACrC,IAAI,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,IAAI,EAAE;QAC1B,MAAM,EAAC,IAAI,EAAE,GAAG,MAAM,EAAC,GAAG,GAAG,CAAC;QAE9B,GAAG,GAAG;YACJ,KAAK,EAAE;gBACL;oBACE,IAAI;iBACL;gBACD,MAAM;aACP;SACF,CAAC;KACH;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAQ,EAAE,EAAC,MAAM,EAAE,GAAG,OAAO,EAAoB;IACpF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAExH,IAAI,MAAM,CAAC,MAAM,EAAE;QACjB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9C,OAAO,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,EAAC,KAAK,EAAE,UAAU,EAAC,CAAC,CAAC;QAC5F,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,OAAO,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,EAAC,KAAK,EAAE,UAAU,EAAC,CAAC,CAAC;KACpD;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wBAAwB,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
2
|
-
import { mapGenericsOptions } from "../../utils/generics.js";
|
|
3
2
|
import { createRef, toRef } from "../../utils/ref.js";
|
|
4
3
|
export function lazyRefMapper(jsonLazyRef, options) {
|
|
5
4
|
const name = jsonLazyRef.name;
|
|
@@ -7,7 +6,7 @@ export function lazyRefMapper(jsonLazyRef, options) {
|
|
|
7
6
|
return createRef(name, jsonLazyRef.schema, options);
|
|
8
7
|
}
|
|
9
8
|
options.$refs = [...(options.$refs || []), jsonLazyRef.target];
|
|
10
|
-
const schema = jsonLazyRef.getType() && execMapper("schema", [jsonLazyRef.schema],
|
|
9
|
+
const schema = jsonLazyRef.getType() && execMapper("schema", [jsonLazyRef.schema], options);
|
|
11
10
|
return toRef(jsonLazyRef.schema, schema, options);
|
|
12
11
|
}
|
|
13
12
|
registerJsonSchemaMapper("lazyRef", lazyRefMapper);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazyRefMapper.js","sourceRoot":"","sources":["../../../../src/components/default/lazyRefMapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"lazyRefMapper.js","sourceRoot":"","sources":["../../../../src/components/default/lazyRefMapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAC,SAAS,EAAE,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAEpD,MAAM,UAAU,aAAa,CAAC,WAAwB,EAAE,OAA0B;IAChF,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IAE9B,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,MAAM,CAAC,EAAE;QAC7D,OAAO,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrD;IAED,OAAO,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAE/D,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IAE5F,OAAO,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,wBAAwB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { mapGenericsOptions } from "../../utils/generics.js";
|
|
2
1
|
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
3
2
|
/**
|
|
4
3
|
* Serialize class which inherit from Map like JsonMap, JsonOperation, JsonParameter.
|
|
@@ -8,7 +7,6 @@ import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchem
|
|
|
8
7
|
* @ignore
|
|
9
8
|
*/
|
|
10
9
|
export function mapMapper(input, { ignore = [], ...options } = {}) {
|
|
11
|
-
options = mapGenericsOptions(options);
|
|
12
10
|
return Array.from(input.entries()).reduce((obj, [key, value]) => {
|
|
13
11
|
if (ignore.includes(key)) {
|
|
14
12
|
return obj;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapMapper.js","sourceRoot":"","sources":["../../../../src/components/default/mapMapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mapMapper.js","sourceRoot":"","sources":["../../../../src/components/default/mapMapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAEnG;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,KAAuB,EAAE,EAAC,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,KAAuB,EAAE;IAClG,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACnE,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxB,OAAO,GAAG,CAAC;SACZ;QAED,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { JsonSchema } from "../../domain/JsonSchema.js";
|
|
2
|
+
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
3
|
+
import { getGenericsOptions } from "../../utils/generics.js";
|
|
4
|
+
import { mergeSchema } from "../../utils/mergeSchema.js";
|
|
5
|
+
function getMapper(input, mapper, root) {
|
|
6
|
+
if (input.isClass && !input.isLocalSchema && !root) {
|
|
7
|
+
return mapper || "class";
|
|
8
|
+
}
|
|
9
|
+
return "any";
|
|
10
|
+
}
|
|
11
|
+
function buildAndMergeSchemas(mapper, schema1, schema2, options) {
|
|
12
|
+
const schema = execMapper(getMapper(schema2, mapper, options.root), [schema2], {
|
|
13
|
+
...options,
|
|
14
|
+
root: false,
|
|
15
|
+
mapper: mapper === "next" ? options.mapper : undefined
|
|
16
|
+
});
|
|
17
|
+
let extraSchema = execMapper(options.root ? "any" : mapper, [schema1], {
|
|
18
|
+
...options,
|
|
19
|
+
root: false,
|
|
20
|
+
generics: undefined,
|
|
21
|
+
mapper: mapper === "next" ? options.mapper : undefined
|
|
22
|
+
});
|
|
23
|
+
if ((schema.$ref || schema.allOf) && extraSchema.type && Object.keys(extraSchema).length === 1) {
|
|
24
|
+
extraSchema = {};
|
|
25
|
+
}
|
|
26
|
+
if (schema1.canRef) {
|
|
27
|
+
const name = extraSchema.$ref.split("/").pop();
|
|
28
|
+
const titleSchema = options.components.schemas[name];
|
|
29
|
+
options.components.schemas[name] = mergeSchema(schema, titleSchema);
|
|
30
|
+
return extraSchema;
|
|
31
|
+
}
|
|
32
|
+
return mergeSchema(schema, extraSchema);
|
|
33
|
+
}
|
|
34
|
+
export function itemMapper(input, options) {
|
|
35
|
+
if (input && input instanceof JsonSchema) {
|
|
36
|
+
if (!input.isCollection && input?.itemSchema?.()) {
|
|
37
|
+
const { generics, mapper } = getGenericsOptions(input, options);
|
|
38
|
+
const schema1 = input;
|
|
39
|
+
const schema2 = input.itemSchema();
|
|
40
|
+
return buildAndMergeSchemas("next", schema1, schema2, { ...options, generics, mapper });
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return execMapper("next", [input], options);
|
|
44
|
+
}
|
|
45
|
+
export function nextMapper(input, options) {
|
|
46
|
+
if (input && input instanceof JsonSchema && !input.isLocalSchema) {
|
|
47
|
+
const refSchema = input.getRefSchema();
|
|
48
|
+
if (refSchema) {
|
|
49
|
+
let { generics, mapper } = getGenericsOptions(input, options);
|
|
50
|
+
mapper = getMapper(input, mapper);
|
|
51
|
+
return buildAndMergeSchemas(mapper, input, refSchema, {
|
|
52
|
+
...options,
|
|
53
|
+
generics
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return execMapper(getMapper(input, options.mapper), [input], {
|
|
58
|
+
...options,
|
|
59
|
+
root: false,
|
|
60
|
+
mapper: undefined
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
registerJsonSchemaMapper("item", itemMapper);
|
|
64
|
+
registerJsonSchemaMapper("next", nextMapper);
|
|
65
|
+
registerJsonSchemaMapper("properties", nextMapper);
|
|
66
|
+
registerJsonSchemaMapper("items", nextMapper);
|
|
67
|
+
registerJsonSchemaMapper("additionalProperties", nextMapper);
|
|
68
|
+
registerJsonSchemaMapper("propertyNames", nextMapper);
|
|
69
|
+
registerJsonSchemaMapper("contains", nextMapper);
|
|
70
|
+
registerJsonSchemaMapper("dependencies", nextMapper);
|
|
71
|
+
registerJsonSchemaMapper("patternProperties", nextMapper);
|
|
72
|
+
registerJsonSchemaMapper("additionalItems", nextMapper);
|
|
73
|
+
registerJsonSchemaMapper("not", nextMapper);
|
|
74
|
+
registerJsonSchemaMapper("definitions", nextMapper);
|
|
75
|
+
//# sourceMappingURL=nextMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nextMapper.js","sourceRoot":"","sources":["../../../../src/components/default/nextMapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nullableMapper.js","sourceRoot":"","sources":["../../../../src/components/default/nullableMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"nullableMapper.js","sourceRoot":"","sources":["../../../../src/components/default/nullableMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAC,kBAAkB,EAAC,MAAM,yCAAyC,CAAC;AAE3E,OAAO,EAAC,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAEvF,MAAM,UAAU,cAAc,CAAC,GAAQ,EAAE,MAAyB;IAChE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE;QACvB,OAAO,GAAG,CAAC;KACZ;IAED,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;QACtB,IAAI,GAAG,CAAC,IAAI,EAAE;YACZ,GAAG,GAAG,WAAW,CAAC;gBAChB,GAAG,GAAG;gBACN,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE;oBACL,EAAC,IAAI,EAAE,MAAM,EAAC;oBACd;wBACE,IAAI,EAAE,GAAG,CAAC,IAAI;qBACf;iBACF;aACF,CAAC,CAAC;SACJ;aAAM;YACL,kBAAkB,CAAC,IAAI,CAAC,CAAC,OAAe,EAAE,EAAE;gBAC1C,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE;oBAChB,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;oBAExE,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;wBAE1B,GAAG,GAAG,WAAW,CAAC;4BAChB,GAAG,GAAG;4BACN,GAAG,IAAI,CAAC,CAAC,CAAC;4BACV,CAAC,OAAO,CAAC,EAAE,SAAS;4BACpB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;yBAC5E,CAAC,CAAC;qBACJ;yBAAM;wBACL,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;4BACrE,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gCACrC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;6BACvB;4BACD,OAAO,IAAI,CAAC;wBACd,CAAC,CAAC,CAAC;wBACH,OAAO,GAAG,CAAC,IAAI,CAAC;qBACjB;iBACF;YACH,CAAC,CAAC,CAAC;SACJ;KACF;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wBAAwB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { isArray } from "@tsed/core";
|
|
2
|
+
import { VendorKeys } from "../../constants/VendorKeys.js";
|
|
2
3
|
import { alterIgnore } from "../../hooks/alterIgnore.js";
|
|
3
4
|
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
4
5
|
/**
|
|
@@ -8,16 +9,20 @@ import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchem
|
|
|
8
9
|
* @ignore
|
|
9
10
|
*/
|
|
10
11
|
export function objectMapper(input, options) {
|
|
11
|
-
const { specType, operationIdFormatter, root, components,
|
|
12
|
+
const { specType, operationIdFormatter, root, components, useAlias, ...ctx } = options;
|
|
12
13
|
return Object.entries(input).reduce((obj, [key, value]) => {
|
|
13
14
|
if (options.withIgnoredProps !== false && !alterIgnore(value, ctx)) {
|
|
14
15
|
const opts = {
|
|
15
16
|
...options,
|
|
16
|
-
|
|
17
|
+
parent: value,
|
|
18
|
+
groups: input?.get?.(VendorKeys.FORWARD_GROUPS) || value?.get?.(VendorKeys.FORWARD_GROUPS) ? options.groups : undefined
|
|
17
19
|
};
|
|
18
|
-
// remove groups to avoid bad schema generation over children models
|
|
19
20
|
obj[key] = execMapper("item", [value], opts);
|
|
20
21
|
obj[key] = execMapper("nullable", [obj[key], value], opts);
|
|
22
|
+
if (value.isGeneric && obj[key]?.type) {
|
|
23
|
+
const { type, ...rest } = obj[key];
|
|
24
|
+
obj[key] = rest;
|
|
25
|
+
}
|
|
21
26
|
}
|
|
22
27
|
return obj;
|
|
23
28
|
}, isArray(input) ? [] : {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"objectMapper.js","sourceRoot":"","sources":["../../../../src/components/default/objectMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAEnG;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAU,EAAE,OAA0B;IACjE,MAAM,EAAC,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"objectMapper.js","sourceRoot":"","sources":["../../../../src/components/default/objectMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAC,UAAU,EAAC,MAAM,+BAA+B,CAAC;AAEzD,OAAO,EAAC,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAEnG;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAU,EAAE,OAA0B;IACjE,MAAM,EAAC,QAAQ,EAAE,oBAAoB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,GAAG,EAAC,GAAG,OAAO,CAAC;IAErF,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAA6B,EAAE,EAAE;QAChD,IAAI,OAAO,CAAC,gBAAgB,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;YAClE,MAAM,IAAI,GAAG;gBACX,GAAG,OAAO;gBACV,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;aACxH,CAAC;YAEF,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;YAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;YAE3D,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE;gBACrC,MAAM,EAAC,IAAI,EAAE,GAAG,IAAI,EAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;aACjB;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EACD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC;AACJ,CAAC;AAED,wBAAwB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
|
|
2
|
-
export function ofMapper(input, options
|
|
2
|
+
export function ofMapper(input, options) {
|
|
3
3
|
return input.map((value) => {
|
|
4
|
-
return execMapper("item", [value],
|
|
5
|
-
...options,
|
|
6
|
-
genericLabels: parent.genericLabels
|
|
7
|
-
});
|
|
4
|
+
return execMapper("item", [value], options);
|
|
8
5
|
});
|
|
9
6
|
}
|
|
10
7
|
registerJsonSchemaMapper("anyOf", ofMapper);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ofMapper.js","sourceRoot":"","sources":["../../../../src/components/default/ofMapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ofMapper.js","sourceRoot":"","sources":["../../../../src/components/default/ofMapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAEnG,MAAM,UAAU,QAAQ,CAAC,KAA2B,EAAE,OAA0B;IAC9E,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAuB,EAAE,EAAE;QAC3C,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC5C,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC5C,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC"}
|
|
@@ -14,7 +14,7 @@ function mapRequiredProps(obj, schema, options = {}) {
|
|
|
14
14
|
}
|
|
15
15
|
function extractRequiredProps(obj, schema, options) {
|
|
16
16
|
let required = obj.required || [];
|
|
17
|
-
required = [...required, ...schema
|
|
17
|
+
required = [...required, ...schema.getRequiredFields()];
|
|
18
18
|
if (schema.get("properties")) {
|
|
19
19
|
required = Object.entries(schema.get("properties")).reduce((required, [key, prop]) => {
|
|
20
20
|
if (prop && prop.$selfRequired !== undefined) {
|
|
@@ -26,7 +26,7 @@ function extractRequiredProps(obj, schema, options) {
|
|
|
26
26
|
return alterRequiredGroups(uniq(required), schema, options);
|
|
27
27
|
}
|
|
28
28
|
export function requiredMapper(obj, schema, options) {
|
|
29
|
-
if (options.groups && options.groups
|
|
29
|
+
if (options.groups && options.groups?.includes("partial")) {
|
|
30
30
|
if (obj.discriminator) {
|
|
31
31
|
return {
|
|
32
32
|
...obj,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requiredMapper.js","sourceRoot":"","sources":["../../../../src/components/default/requiredMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"requiredMapper.js","sourceRoot":"","sources":["../../../../src/components/default/requiredMapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getValue,
|
|
1
|
+
import { getValue, isFunction, isObject } from "@tsed/core";
|
|
2
2
|
import { mapAliasedProperties } from "../../domain/JsonAliasMap.js";
|
|
3
3
|
import { SpecTypes } from "../../domain/SpecTypes.js";
|
|
4
4
|
import { alterOneOf } from "../../hooks/alterOneOf.js";
|
|
@@ -13,6 +13,7 @@ const IGNORES = ["name", "$required", "$hooks", "_nestedGenerics", SpecTypes.OPE
|
|
|
13
13
|
const IGNORES_OPENSPEC = [];
|
|
14
14
|
/**
|
|
15
15
|
* @ignore
|
|
16
|
+
* TODO check if we can remove this
|
|
16
17
|
*/
|
|
17
18
|
function isEmptyProperties(key, value) {
|
|
18
19
|
return typeof value === "object" && ["items", "properties", "additionalProperties"].includes(key) && Object.keys(value).length === 0;
|
|
@@ -28,7 +29,8 @@ function shouldMapAlias(key, value, useAlias) {
|
|
|
28
29
|
*/
|
|
29
30
|
function shouldSkipKey(key, { specType = SpecTypes.JSON, customKeys = false }) {
|
|
30
31
|
return (IGNORES.includes(key) ||
|
|
31
|
-
|
|
32
|
+
key.startsWith("x-") ||
|
|
33
|
+
(key.startsWith("#") && (!customKeys || specType !== SpecTypes.JSON)) ||
|
|
32
34
|
(specType !== SpecTypes.JSON && IGNORES_OPENSPEC.includes(key)));
|
|
33
35
|
}
|
|
34
36
|
function isExample(key, value, options) {
|
|
@@ -81,17 +83,13 @@ function mapKeys(schema, options) {
|
|
|
81
83
|
}
|
|
82
84
|
function serializeSchema(schema, options) {
|
|
83
85
|
let obj = mapKeys(schema, options);
|
|
84
|
-
if (schema.isClass) {
|
|
86
|
+
if (schema.isClass && !schema.isLocalSchema) {
|
|
85
87
|
obj = execMapper("inheritedClass", [obj], {
|
|
86
88
|
...options,
|
|
87
89
|
root: false,
|
|
88
|
-
target: schema.
|
|
90
|
+
target: schema.class
|
|
89
91
|
});
|
|
90
92
|
}
|
|
91
|
-
obj = execMapper("generics", [obj], {
|
|
92
|
-
...options,
|
|
93
|
-
root: false
|
|
94
|
-
});
|
|
95
93
|
if (schema.has(options.specType)) {
|
|
96
94
|
obj = {
|
|
97
95
|
...obj,
|
|
@@ -106,6 +104,10 @@ function serializeSchema(schema, options) {
|
|
|
106
104
|
obj = alterOneOf(obj, schema, options);
|
|
107
105
|
obj = execMapper("enums", [obj, schema], options);
|
|
108
106
|
obj = execMapper("discriminatorMapping", [obj, schema], options);
|
|
107
|
+
obj = execMapper("generics", [obj, schema], options);
|
|
108
|
+
if (obj.type === "array" && !obj.items && !obj.contains) {
|
|
109
|
+
obj.items = {};
|
|
110
|
+
}
|
|
109
111
|
return obj;
|
|
110
112
|
}
|
|
111
113
|
export function schemaMapper(schema, opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemaMapper.js","sourceRoot":"","sources":["../../../../src/components/default/schemaMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"schemaMapper.js","sourceRoot":"","sources":["../../../../src/components/default/schemaMapper.ts"],"names":[],"mappings":"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"}
|