@tsed/schema 8.9.5 → 8.10.0-rc.2
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/components/async-api/channelsMapper.js +51 -0
- package/lib/browser/components/async-api/channelsMapper.js.map +1 -0
- package/lib/browser/components/async-api/generate.js +15 -0
- package/lib/browser/components/async-api/generate.js.map +1 -0
- package/lib/browser/components/async-api/messageMapper.js +31 -0
- package/lib/browser/components/async-api/messageMapper.js.map +1 -0
- package/lib/browser/components/async-api/payloadMapper.js +47 -0
- package/lib/browser/components/async-api/payloadMapper.js.map +1 -0
- package/lib/browser/components/async-api/responseMapper.js +37 -0
- package/lib/browser/components/async-api/responseMapper.js.map +1 -0
- package/lib/browser/components/default/anyMapper.js +25 -0
- package/lib/browser/components/default/anyMapper.js.map +1 -0
- package/lib/browser/components/default/classMapper.js +36 -0
- package/lib/browser/components/default/classMapper.js.map +1 -0
- package/lib/browser/components/default/discriminatorMappingMapper.js +22 -0
- package/lib/browser/components/default/discriminatorMappingMapper.js.map +1 -0
- package/lib/browser/components/default/enumsMapper.js +10 -0
- package/lib/browser/components/default/enumsMapper.js.map +1 -0
- package/lib/browser/components/default/genericsMapper.js +51 -0
- package/lib/browser/components/default/genericsMapper.js.map +1 -0
- package/lib/browser/components/default/inheritedClassMapper.js +30 -0
- package/lib/browser/components/default/inheritedClassMapper.js.map +1 -0
- package/lib/browser/components/default/itemMapper.js +9 -0
- package/lib/browser/components/default/itemMapper.js.map +1 -0
- package/lib/browser/components/default/lazyRefMapper.js +17 -0
- package/lib/browser/components/default/lazyRefMapper.js.map +1 -0
- package/lib/browser/components/default/mapMapper.js +10 -0
- package/lib/browser/components/default/mapMapper.js.map +1 -0
- package/lib/browser/components/default/nullableMapper.js +32 -0
- package/lib/browser/components/default/nullableMapper.js.map +1 -0
- package/lib/browser/components/default/objectMapper.js +24 -0
- package/lib/browser/components/default/objectMapper.js.map +1 -0
- package/lib/browser/components/default/ofMapper.js +14 -0
- package/lib/browser/components/default/ofMapper.js.map +1 -0
- package/lib/browser/components/default/propertiesMapper.js +21 -0
- package/lib/browser/components/default/propertiesMapper.js.map +1 -0
- package/lib/browser/components/default/requiredMapper.js +28 -0
- package/lib/browser/components/default/requiredMapper.js.map +1 -0
- package/lib/browser/components/default/schemaMapper.js +68 -0
- package/lib/browser/components/default/schemaMapper.js.map +1 -0
- package/lib/browser/components/index.js +66 -0
- package/lib/browser/components/index.js.map +1 -0
- package/lib/browser/components/open-spec/discriminatorMappingMapper.js +7 -0
- package/lib/browser/components/open-spec/discriminatorMappingMapper.js.map +1 -0
- package/lib/browser/components/open-spec/enumsMapper.js +13 -0
- package/lib/browser/components/open-spec/enumsMapper.js.map +1 -0
- package/lib/browser/components/open-spec/generate.js +18 -0
- package/lib/browser/components/open-spec/generate.js.map +1 -0
- package/lib/browser/components/open-spec/nullableMapper.js +36 -0
- package/lib/browser/components/open-spec/nullableMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationInFilesMapper.js +21 -0
- package/lib/browser/components/open-spec/operationInFilesMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationInParameterMapper.js +31 -0
- package/lib/browser/components/open-spec/operationInParameterMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationInParametersMapper.js +9 -0
- package/lib/browser/components/open-spec/operationInParametersMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationInQueryMapper.js +46 -0
- package/lib/browser/components/open-spec/operationInQueryMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationMapper.js +33 -0
- package/lib/browser/components/open-spec/operationMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationMediaMapper.js +10 -0
- package/lib/browser/components/open-spec/operationMediaMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationRequestBodyMapper.js +40 -0
- package/lib/browser/components/open-spec/operationRequestBodyMapper.js.map +1 -0
- package/lib/browser/components/open-spec/operationResponseMapper.js +17 -0
- package/lib/browser/components/open-spec/operationResponseMapper.js.map +1 -0
- package/lib/browser/components/open-spec/pathsMapper.js +88 -0
- package/lib/browser/components/open-spec/pathsMapper.js.map +1 -0
- package/lib/browser/constants/OperationVerbs.js +24 -0
- package/lib/browser/constants/OperationVerbs.js.map +1 -0
- package/lib/browser/constants/httpStatusMessages.js +25 -0
- package/lib/browser/constants/httpStatusMessages.js.map +1 -0
- package/lib/browser/constants/jsonSchemaProperties.js +21 -0
- package/lib/browser/constants/jsonSchemaProperties.js.map +1 -0
- package/lib/browser/decorators/class/children.js +13 -0
- package/lib/browser/decorators/class/children.js.map +1 -0
- package/lib/browser/decorators/class/discriminatorValue.js +11 -0
- package/lib/browser/decorators/class/discriminatorValue.js.map +1 -0
- package/lib/browser/decorators/collections/collectionContains.js +8 -0
- package/lib/browser/decorators/collections/collectionContains.js.map +1 -0
- package/lib/browser/decorators/collections/collectionOf.js +26 -0
- package/lib/browser/decorators/collections/collectionOf.js.map +1 -0
- package/lib/browser/decorators/collections/maxItems.js +13 -0
- package/lib/browser/decorators/collections/maxItems.js.map +1 -0
- package/lib/browser/decorators/collections/maxProperties.js +13 -0
- package/lib/browser/decorators/collections/maxProperties.js.map +1 -0
- package/lib/browser/decorators/collections/minItems.js +13 -0
- package/lib/browser/decorators/collections/minItems.js.map +1 -0
- package/lib/browser/decorators/collections/minProperties.js +13 -0
- package/lib/browser/decorators/collections/minProperties.js.map +1 -0
- package/lib/browser/decorators/collections/uniqueItems.js +9 -0
- package/lib/browser/decorators/collections/uniqueItems.js.map +1 -0
- package/lib/browser/decorators/common/additionalProperties.js +10 -0
- package/lib/browser/decorators/common/additionalProperties.js.map +1 -0
- package/lib/browser/decorators/common/allOf.js +10 -0
- package/lib/browser/decorators/common/allOf.js.map +1 -0
- package/lib/browser/decorators/common/allow.js +16 -0
- package/lib/browser/decorators/common/allow.js.map +1 -0
- package/lib/browser/decorators/common/any.js +10 -0
- package/lib/browser/decorators/common/any.js.map +1 -0
- package/lib/browser/decorators/common/anyOf.js +10 -0
- package/lib/browser/decorators/common/anyOf.js.map +1 -0
- package/lib/browser/decorators/common/const.js +10 -0
- package/lib/browser/decorators/common/const.js.map +1 -0
- package/lib/browser/decorators/common/customKey.js +18 -0
- package/lib/browser/decorators/common/customKey.js.map +1 -0
- package/lib/browser/decorators/common/default.js +10 -0
- package/lib/browser/decorators/common/default.js.map +1 -0
- package/lib/browser/decorators/common/defaultMsg.js +9 -0
- package/lib/browser/decorators/common/defaultMsg.js.map +1 -0
- package/lib/browser/decorators/common/description.js +23 -0
- package/lib/browser/decorators/common/description.js.map +1 -0
- package/lib/browser/decorators/common/discriminatorKey.js +15 -0
- package/lib/browser/decorators/common/discriminatorKey.js.map +1 -0
- package/lib/browser/decorators/common/enum.js +12 -0
- package/lib/browser/decorators/common/enum.js.map +1 -0
- package/lib/browser/decorators/common/errorMsg.js +11 -0
- package/lib/browser/decorators/common/errorMsg.js.map +1 -0
- package/lib/browser/decorators/common/example.js +10 -0
- package/lib/browser/decorators/common/example.js.map +1 -0
- package/lib/browser/decorators/common/examples.js +10 -0
- package/lib/browser/decorators/common/examples.js.map +1 -0
- package/lib/browser/decorators/common/exclusiveMaximum.js +7 -0
- package/lib/browser/decorators/common/exclusiveMaximum.js.map +1 -0
- package/lib/browser/decorators/common/exclusiveMinimum.js +7 -0
- package/lib/browser/decorators/common/exclusiveMinimum.js.map +1 -0
- package/lib/browser/decorators/common/format.js +16 -0
- package/lib/browser/decorators/common/format.js.map +1 -0
- package/lib/browser/decorators/common/forwardGroups.js +10 -0
- package/lib/browser/decorators/common/forwardGroups.js.map +1 -0
- package/lib/browser/decorators/common/groups.js +31 -0
- package/lib/browser/decorators/common/groups.js.map +1 -0
- package/lib/browser/decorators/common/hidden.js +8 -0
- package/lib/browser/decorators/common/hidden.js.map +1 -0
- package/lib/browser/decorators/common/ignore.js +10 -0
- package/lib/browser/decorators/common/ignore.js.map +1 -0
- package/lib/browser/decorators/common/integer.js +10 -0
- package/lib/browser/decorators/common/integer.js.map +1 -0
- package/lib/browser/decorators/common/jsonEntityFn.js +11 -0
- package/lib/browser/decorators/common/jsonEntityFn.js.map +1 -0
- package/lib/browser/decorators/common/labelledAs.js +10 -0
- package/lib/browser/decorators/common/labelledAs.js.map +1 -0
- package/lib/browser/decorators/common/maxLength.js +13 -0
- package/lib/browser/decorators/common/maxLength.js.map +1 -0
- package/lib/browser/decorators/common/maximum.js +10 -0
- package/lib/browser/decorators/common/maximum.js.map +1 -0
- package/lib/browser/decorators/common/minLength.js +13 -0
- package/lib/browser/decorators/common/minLength.js.map +1 -0
- package/lib/browser/decorators/common/minimum.js +10 -0
- package/lib/browser/decorators/common/minimum.js.map +1 -0
- package/lib/browser/decorators/common/multipleOf.js +13 -0
- package/lib/browser/decorators/common/multipleOf.js.map +1 -0
- package/lib/browser/decorators/common/name.js +20 -0
- package/lib/browser/decorators/common/name.js.map +1 -0
- package/lib/browser/decorators/common/nullable.js +10 -0
- package/lib/browser/decorators/common/nullable.js.map +1 -0
- package/lib/browser/decorators/common/oneOf.js +10 -0
- package/lib/browser/decorators/common/oneOf.js.map +1 -0
- package/lib/browser/decorators/common/optional.js +18 -0
- package/lib/browser/decorators/common/optional.js.map +1 -0
- package/lib/browser/decorators/common/pattern.js +9 -0
- package/lib/browser/decorators/common/pattern.js.map +1 -0
- package/lib/browser/decorators/common/property.js +11 -0
- package/lib/browser/decorators/common/property.js.map +1 -0
- package/lib/browser/decorators/common/readOnly.js +10 -0
- package/lib/browser/decorators/common/readOnly.js.map +1 -0
- package/lib/browser/decorators/common/recordOf.js +15 -0
- package/lib/browser/decorators/common/recordOf.js.map +1 -0
- package/lib/browser/decorators/common/required.js +8 -0
- package/lib/browser/decorators/common/required.js.map +1 -0
- package/lib/browser/decorators/common/requiredGroups.js +11 -0
- package/lib/browser/decorators/common/requiredGroups.js.map +1 -0
- package/lib/browser/decorators/common/schema.js +16 -0
- package/lib/browser/decorators/common/schema.js.map +1 -0
- package/lib/browser/decorators/common/title.js +10 -0
- package/lib/browser/decorators/common/title.js.map +1 -0
- package/lib/browser/decorators/common/typeError.js +10 -0
- package/lib/browser/decorators/common/typeError.js.map +1 -0
- package/lib/browser/decorators/common/writeOnly.js +10 -0
- package/lib/browser/decorators/common/writeOnly.js.map +1 -0
- package/lib/browser/decorators/config/jsonEntityComponent.js +10 -0
- package/lib/browser/decorators/config/jsonEntityComponent.js.map +1 -0
- package/lib/browser/decorators/generics/genericOf.js +19 -0
- package/lib/browser/decorators/generics/genericOf.js.map +1 -0
- package/lib/browser/decorators/generics/generics.js +11 -0
- package/lib/browser/decorators/generics/generics.js.map +1 -0
- package/lib/browser/decorators/operations/acceptMime.js +9 -0
- package/lib/browser/decorators/operations/acceptMime.js.map +1 -0
- package/lib/browser/decorators/operations/consumes.js +20 -0
- package/lib/browser/decorators/operations/consumes.js.map +1 -0
- package/lib/browser/decorators/operations/contentType.js +8 -0
- package/lib/browser/decorators/operations/contentType.js.map +1 -0
- package/lib/browser/decorators/operations/deprecated.js +26 -0
- package/lib/browser/decorators/operations/deprecated.js.map +1 -0
- package/lib/browser/decorators/operations/header.js +9 -0
- package/lib/browser/decorators/operations/header.js.map +1 -0
- package/lib/browser/decorators/operations/in.js +27 -0
- package/lib/browser/decorators/operations/in.js.map +1 -0
- package/lib/browser/decorators/operations/inFile.js +27 -0
- package/lib/browser/decorators/operations/inFile.js.map +1 -0
- package/lib/browser/decorators/operations/location.js +8 -0
- package/lib/browser/decorators/operations/location.js.map +1 -0
- package/lib/browser/decorators/operations/operation.js +45 -0
- package/lib/browser/decorators/operations/operation.js.map +1 -0
- package/lib/browser/decorators/operations/operationId.js +13 -0
- package/lib/browser/decorators/operations/operationId.js.map +1 -0
- package/lib/browser/decorators/operations/operationPath.js +13 -0
- package/lib/browser/decorators/operations/operationPath.js.map +1 -0
- package/lib/browser/decorators/operations/partial.js +8 -0
- package/lib/browser/decorators/operations/partial.js.map +1 -0
- package/lib/browser/decorators/operations/path.js +13 -0
- package/lib/browser/decorators/operations/path.js.map +1 -0
- package/lib/browser/decorators/operations/produces.js +20 -0
- package/lib/browser/decorators/operations/produces.js.map +1 -0
- package/lib/browser/decorators/operations/publish.js +9 -0
- package/lib/browser/decorators/operations/publish.js.map +1 -0
- package/lib/browser/decorators/operations/redirect.js +20 -0
- package/lib/browser/decorators/operations/redirect.js.map +1 -0
- package/lib/browser/decorators/operations/returns.js +180 -0
- package/lib/browser/decorators/operations/returns.js.map +1 -0
- package/lib/browser/decorators/operations/route.js +37 -0
- package/lib/browser/decorators/operations/route.js.map +1 -0
- package/lib/browser/decorators/operations/security.js +20 -0
- package/lib/browser/decorators/operations/security.js.map +1 -0
- package/lib/browser/decorators/operations/status.js +8 -0
- package/lib/browser/decorators/operations/status.js.map +1 -0
- package/lib/browser/decorators/operations/subscribe.js +9 -0
- package/lib/browser/decorators/operations/subscribe.js.map +1 -0
- package/lib/browser/decorators/operations/summary.js +13 -0
- package/lib/browser/decorators/operations/summary.js.map +1 -0
- package/lib/browser/decorators/operations/tags.js +25 -0
- package/lib/browser/decorators/operations/tags.js.map +1 -0
- package/lib/browser/decorators/operations/view.js +8 -0
- package/lib/browser/decorators/operations/view.js.map +1 -0
- package/lib/browser/domain/DecoratorContext.js +62 -0
- package/lib/browser/domain/DecoratorContext.js.map +1 -0
- package/lib/browser/domain/JsonAliasMap.js +7 -0
- package/lib/browser/domain/JsonAliasMap.js.map +1 -0
- package/lib/browser/domain/JsonClassStore.js +32 -0
- package/lib/browser/domain/JsonClassStore.js.map +1 -0
- package/lib/browser/domain/JsonDiscriminator.js +41 -0
- package/lib/browser/domain/JsonDiscriminator.js.map +1 -0
- package/lib/browser/domain/JsonEntityStore.js +131 -0
- package/lib/browser/domain/JsonEntityStore.js.map +1 -0
- package/lib/browser/domain/JsonFormatTypes.js +5 -0
- package/lib/browser/domain/JsonFormatTypes.js.map +1 -0
- package/lib/browser/domain/JsonLazyRef.js +20 -0
- package/lib/browser/domain/JsonLazyRef.js.map +1 -0
- package/lib/browser/domain/JsonMap.js +19 -0
- package/lib/browser/domain/JsonMap.js.map +1 -0
- package/lib/browser/domain/JsonMedia.js +16 -0
- package/lib/browser/domain/JsonMedia.js.map +1 -0
- package/lib/browser/domain/JsonMethodStore.js +121 -0
- package/lib/browser/domain/JsonMethodStore.js.map +1 -0
- package/lib/browser/domain/JsonOperation.js +129 -0
- package/lib/browser/domain/JsonOperation.js.map +1 -0
- package/lib/browser/domain/JsonOperationPathsMap.js +13 -0
- package/lib/browser/domain/JsonOperationPathsMap.js.map +1 -0
- package/lib/browser/domain/JsonOperationRoute.js +54 -0
- package/lib/browser/domain/JsonOperationRoute.js.map +1 -0
- package/lib/browser/domain/JsonParameter.js +41 -0
- package/lib/browser/domain/JsonParameter.js.map +1 -0
- package/lib/browser/domain/JsonParameterStore.js +69 -0
- package/lib/browser/domain/JsonParameterStore.js.map +1 -0
- package/lib/browser/domain/JsonParameterTypes.js +13 -0
- package/lib/browser/domain/JsonParameterTypes.js.map +1 -0
- package/lib/browser/domain/JsonPropertyStore.js +64 -0
- package/lib/browser/domain/JsonPropertyStore.js.map +1 -0
- package/lib/browser/domain/JsonRequestBody.js +24 -0
- package/lib/browser/domain/JsonRequestBody.js.map +1 -0
- package/lib/browser/domain/JsonResponse.js +36 -0
- package/lib/browser/domain/JsonResponse.js.map +1 -0
- package/lib/browser/domain/JsonSchema.js +625 -0
- package/lib/browser/domain/JsonSchema.js.map +1 -0
- package/lib/browser/domain/SpecTypes.js +5 -0
- package/lib/browser/domain/SpecTypes.js.map +1 -0
- package/lib/browser/domain/__fixtures__/inspectOperationsPaths.js +10 -0
- package/lib/browser/domain/__fixtures__/inspectOperationsPaths.js.map +1 -0
- package/lib/browser/fn/allOf.js +8 -0
- package/lib/browser/fn/allOf.js.map +1 -0
- package/lib/browser/fn/any.js +8 -0
- package/lib/browser/fn/any.js.map +1 -0
- package/lib/browser/fn/anyOf.js +8 -0
- package/lib/browser/fn/anyOf.js.map +1 -0
- package/lib/browser/fn/boolean.js +8 -0
- package/lib/browser/fn/boolean.js.map +1 -0
- package/lib/browser/fn/collection.js +16 -0
- package/lib/browser/fn/collection.js.map +1 -0
- package/lib/browser/fn/date.js +17 -0
- package/lib/browser/fn/date.js.map +1 -0
- package/lib/browser/fn/email.js +9 -0
- package/lib/browser/fn/email.js.map +1 -0
- package/lib/browser/fn/enums.js +10 -0
- package/lib/browser/fn/enums.js.map +1 -0
- package/lib/browser/fn/from.js +18 -0
- package/lib/browser/fn/from.js.map +1 -0
- package/lib/browser/fn/integer.js +8 -0
- package/lib/browser/fn/integer.js.map +1 -0
- package/lib/browser/fn/lazyRef.js +14 -0
- package/lib/browser/fn/lazyRef.js.map +1 -0
- package/lib/browser/fn/number.js +8 -0
- package/lib/browser/fn/number.js.map +1 -0
- package/lib/browser/fn/object.js +8 -0
- package/lib/browser/fn/object.js.map +1 -0
- package/lib/browser/fn/oneOf.js +8 -0
- package/lib/browser/fn/oneOf.js.map +1 -0
- package/lib/browser/fn/string.js +8 -0
- package/lib/browser/fn/string.js.map +1 -0
- package/lib/browser/fn/uri.js +9 -0
- package/lib/browser/fn/uri.js.map +1 -0
- package/lib/browser/fn/url.js +9 -0
- package/lib/browser/fn/url.js.map +1 -0
- package/lib/browser/hooks/alterIgnore.js +12 -0
- package/lib/browser/hooks/alterIgnore.js.map +1 -0
- package/lib/browser/hooks/alterOneOf.js +30 -0
- package/lib/browser/hooks/alterOneOf.js.map +1 -0
- package/lib/browser/hooks/alterRequiredGroups.js +8 -0
- package/lib/browser/hooks/alterRequiredGroups.js.map +1 -0
- package/lib/browser/index.js +450 -0
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/registries/JsonSchemaMapperContainer.js +27 -0
- package/lib/browser/registries/JsonSchemaMapperContainer.js.map +1 -0
- package/lib/browser/registries/enumRegistries.js +5 -0
- package/lib/browser/registries/enumRegistries.js.map +1 -0
- package/lib/browser/utils/buildPath.js +7 -0
- package/lib/browser/utils/buildPath.js.map +1 -0
- package/lib/browser/utils/concatParameters.js +7 -0
- package/lib/browser/utils/concatParameters.js.map +1 -0
- package/lib/browser/utils/concatPath.js +17 -0
- package/lib/browser/utils/concatPath.js.map +1 -0
- package/lib/browser/utils/defineStatusModel.js +12 -0
- package/lib/browser/utils/defineStatusModel.js.map +1 -0
- package/lib/browser/utils/generateSpec.js +24 -0
- package/lib/browser/utils/generateSpec.js.map +1 -0
- package/lib/browser/utils/generics.js +26 -0
- package/lib/browser/utils/generics.js.map +1 -0
- package/lib/browser/utils/getComputedType.js +8 -0
- package/lib/browser/utils/getComputedType.js.map +1 -0
- package/lib/browser/utils/getInheritedStores.js +10 -0
- package/lib/browser/utils/getInheritedStores.js.map +1 -0
- package/lib/browser/utils/getJsonEntityStore.js +17 -0
- package/lib/browser/utils/getJsonEntityStore.js.map +1 -0
- package/lib/browser/utils/getJsonPathParameters.js +51 -0
- package/lib/browser/utils/getJsonPathParameters.js.map +1 -0
- package/lib/browser/utils/getJsonSchema.js +72 -0
- package/lib/browser/utils/getJsonSchema.js.map +1 -0
- package/lib/browser/utils/getJsonType.js +10 -0
- package/lib/browser/utils/getJsonType.js.map +1 -0
- package/lib/browser/utils/getOperationsRoutes.js +30 -0
- package/lib/browser/utils/getOperationsRoutes.js.map +1 -0
- package/lib/browser/utils/getOperationsStores.js +24 -0
- package/lib/browser/utils/getOperationsStores.js.map +1 -0
- package/lib/browser/utils/getPropertiesStores.js +26 -0
- package/lib/browser/utils/getPropertiesStores.js.map +1 -0
- package/lib/browser/utils/getSpec.js +56 -0
- package/lib/browser/utils/getSpec.js.map +1 -0
- package/lib/browser/utils/getSpecType.js +12 -0
- package/lib/browser/utils/getSpecType.js.map +1 -0
- package/lib/browser/utils/isSuccessStatus.js +6 -0
- package/lib/browser/utils/isSuccessStatus.js.map +1 -0
- package/lib/browser/utils/mapHeaders.js +14 -0
- package/lib/browser/utils/mapHeaders.js.map +1 -0
- package/lib/browser/utils/mapOpenSpec.js +27 -0
- package/lib/browser/utils/mapOpenSpec.js.map +1 -0
- package/lib/browser/utils/mapOpenSpec2.js +40 -0
- package/lib/browser/utils/mapOpenSpec2.js.map +1 -0
- package/lib/browser/utils/mapOpenSpec3.js +19 -0
- package/lib/browser/utils/mapOpenSpec3.js.map +1 -0
- package/lib/browser/utils/mapOpenSpecInfo.js +16 -0
- package/lib/browser/utils/mapOpenSpecInfo.js.map +1 -0
- package/lib/browser/utils/mapOperationOptions.js +17 -0
- package/lib/browser/utils/mapOperationOptions.js.map +1 -0
- package/lib/browser/utils/matchGroups.js +27 -0
- package/lib/browser/utils/matchGroups.js.map +1 -0
- package/lib/browser/utils/mergeSpec.js +23 -0
- package/lib/browser/utils/mergeSpec.js.map +1 -0
- package/lib/browser/utils/operationIdFormatter.js +29 -0
- package/lib/browser/utils/operationIdFormatter.js.map +1 -0
- package/lib/browser/utils/ref.js +32 -0
- package/lib/browser/utils/ref.js.map +1 -0
- package/lib/browser/utils/removeHiddenOperation.js +7 -0
- package/lib/browser/utils/removeHiddenOperation.js.map +1 -0
- package/lib/browser/utils/serializeEnumValues.js +11 -0
- package/lib/browser/utils/serializeEnumValues.js.map +1 -0
- package/lib/browser/utils/somethingOf.js +7 -0
- package/lib/browser/utils/somethingOf.js.map +1 -0
- package/lib/browser/utils/toJsonMapCollection.js +8 -0
- package/lib/browser/utils/toJsonMapCollection.js.map +1 -0
- package/lib/browser/utils/toJsonRegex.js +7 -0
- package/lib/browser/utils/toJsonRegex.js.map +1 -0
- package/lib/browser/utils/transformToOS2.js +302 -0
- package/lib/browser/utils/transformToOS2.js.map +1 -0
- package/lib/browser/utils/withErrorMsg.js +31 -0
- package/lib/browser/utils/withErrorMsg.js.map +1 -0
- package/lib/esm/domain/JsonEntityStore.js +6 -0
- package/lib/esm/domain/JsonEntityStore.js.map +1 -1
- package/lib/types/domain/JsonEntityStore.d.ts +2 -0
- package/package.json +19 -16
- package/src/domain/JsonEntityStore.ts +8 -0
- package/vite.config.mts +45 -0
- package/lib/browser/schema.umd.min.js +0 -3
- package/lib/browser/schema.umd.min.js.LICENSE.txt +0 -6
- package/lib/browser/schema.umd.min.js.map +0 -1
- package/webpack.config.cjs +0 -8
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { OperationVerbs as n } from "../../constants/OperationVerbs.js";
|
|
2
|
+
import { registerJsonSchemaMapper as u, execMapper as P } from "../../registries/JsonSchemaMapperContainer.js";
|
|
3
|
+
import { buildPath as h } from "../../utils/buildPath.js";
|
|
4
|
+
import { concatParameters as l } from "../../utils/concatParameters.js";
|
|
5
|
+
import { getJsonEntityStore as O } from "../../utils/getJsonEntityStore.js";
|
|
6
|
+
import { getJsonPathParameters as d } from "../../utils/getJsonPathParameters.js";
|
|
7
|
+
import { getOperationsStores as g } from "../../utils/getOperationsStores.js";
|
|
8
|
+
import { getOperationId as E } from "../../utils/operationIdFormatter.js";
|
|
9
|
+
import { removeHiddenOperation as T } from "../../utils/removeHiddenOperation.js";
|
|
10
|
+
const c = [
|
|
11
|
+
n.ALL,
|
|
12
|
+
n.GET,
|
|
13
|
+
n.POST,
|
|
14
|
+
n.PUT,
|
|
15
|
+
n.PATCH,
|
|
16
|
+
n.HEAD,
|
|
17
|
+
n.OPTIONS,
|
|
18
|
+
n.DELETE,
|
|
19
|
+
n.TRACE
|
|
20
|
+
];
|
|
21
|
+
function A(t, {
|
|
22
|
+
path: r,
|
|
23
|
+
method: e,
|
|
24
|
+
operation: o
|
|
25
|
+
}) {
|
|
26
|
+
return {
|
|
27
|
+
...t,
|
|
28
|
+
[r]: {
|
|
29
|
+
...t[r],
|
|
30
|
+
[e.toLowerCase()]: o
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
function L(t) {
|
|
35
|
+
return ({
|
|
36
|
+
operationPath: r,
|
|
37
|
+
operation: e,
|
|
38
|
+
operationStore: o
|
|
39
|
+
}) => {
|
|
40
|
+
const { path: i, method: m } = r;
|
|
41
|
+
return d(t.ctrlRootPath, i).map(({ path: a, parameters: p }) => (a = a || "/", p = l(
|
|
42
|
+
p.map(({ type: s, ...f }) => ({
|
|
43
|
+
...f,
|
|
44
|
+
schema: {
|
|
45
|
+
type: s
|
|
46
|
+
}
|
|
47
|
+
})),
|
|
48
|
+
e
|
|
49
|
+
), {
|
|
50
|
+
operation: {
|
|
51
|
+
...e,
|
|
52
|
+
...r.toJSON(t),
|
|
53
|
+
parameters: p,
|
|
54
|
+
operationId: e.operationId || E(a, {
|
|
55
|
+
...t,
|
|
56
|
+
store: o
|
|
57
|
+
})
|
|
58
|
+
},
|
|
59
|
+
method: m,
|
|
60
|
+
path: a
|
|
61
|
+
}));
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
function I(t) {
|
|
65
|
+
return (r) => {
|
|
66
|
+
const e = r.operation.getAllowedOperationPath(c);
|
|
67
|
+
if (e.length === 0)
|
|
68
|
+
return [];
|
|
69
|
+
const o = P("operation", [r.operation], t);
|
|
70
|
+
return e.map((i) => ({
|
|
71
|
+
operationPath: i,
|
|
72
|
+
operation: o,
|
|
73
|
+
operationStore: r
|
|
74
|
+
}));
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function M(t, { paths: r, rootPath: e, ...o }) {
|
|
78
|
+
const m = O(t).path, a = h(e + m);
|
|
79
|
+
return o = {
|
|
80
|
+
...o,
|
|
81
|
+
ctrlRootPath: a
|
|
82
|
+
}, [...g(t).values()].filter(T).filter((p) => p.operation.getAllowedOperationPath(c).length > 0).flatMap(I(o)).flatMap(L(o)).reduce(A, r);
|
|
83
|
+
}
|
|
84
|
+
u("paths", M);
|
|
85
|
+
export {
|
|
86
|
+
M as pathsMapper
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=pathsMapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathsMapper.js","sources":["../../../../src/components/open-spec/pathsMapper.ts"],"sourcesContent":["import {OS3Operation, OS3Paths} from \"@tsed/openspec\";\n\nimport {OperationVerbs} from \"../../constants/OperationVerbs.js\";\nimport {JsonMethodStore} from \"../../domain/JsonMethodStore.js\";\nimport {JsonMethodPath} from \"../../domain/JsonOperation.js\";\nimport {JsonSchemaOptions} from \"../../interfaces/JsonSchemaOptions.js\";\nimport {execMapper, registerJsonSchemaMapper} from \"../../registries/JsonSchemaMapperContainer.js\";\nimport {buildPath} from \"../../utils/buildPath.js\";\nimport {concatParameters} from \"../../utils/concatParameters.js\";\nimport {getJsonEntityStore} from \"../../utils/getJsonEntityStore.js\";\nimport {getJsonPathParameters} from \"../../utils/getJsonPathParameters.js\";\nimport {getOperationsStores} from \"../../utils/getOperationsStores.js\";\nimport {getOperationId} from \"../../utils/operationIdFormatter.js\";\nimport {removeHiddenOperation} from \"../../utils/removeHiddenOperation.js\";\n\nconst ALLOWED_VERBS = [\n OperationVerbs.ALL,\n OperationVerbs.GET,\n OperationVerbs.POST,\n OperationVerbs.PUT,\n OperationVerbs.PATCH,\n OperationVerbs.HEAD,\n OperationVerbs.OPTIONS,\n OperationVerbs.DELETE,\n OperationVerbs.TRACE\n];\n\nfunction pushToPath(\n paths: OS3Paths,\n {\n path,\n method,\n operation\n }: {\n method: string;\n path: string;\n operation: OS3Operation;\n }\n) {\n return {\n ...paths,\n [path]: {\n ...(paths as any)[path],\n [method.toLowerCase()]: operation\n }\n };\n}\n\nfunction mapOperationInPathParameters(options: JsonSchemaOptions) {\n return ({\n operationPath,\n operation,\n operationStore\n }: {\n operationPath: JsonMethodPath;\n operation: OS3Operation;\n operationStore: JsonMethodStore;\n }) => {\n const {path, method} = operationPath;\n\n return getJsonPathParameters(options.ctrlRootPath, path).map(({path, parameters}) => {\n path = path ? path : \"/\";\n\n parameters = concatParameters(\n parameters.map(({type, ...param}) => {\n return {\n ...param,\n schema: {\n type\n }\n };\n }),\n operation\n );\n\n return {\n operation: {\n ...operation,\n ...operationPath.toJSON(options),\n parameters,\n operationId:\n operation.operationId ||\n getOperationId(path, {\n ...options,\n store: operationStore\n })\n },\n method,\n path\n };\n });\n };\n}\n\nfunction mapOperation(options: JsonSchemaOptions) {\n return (operationStore: JsonMethodStore) => {\n const operationPaths = operationStore.operation.getAllowedOperationPath(ALLOWED_VERBS);\n\n if (operationPaths.length === 0) {\n return [];\n }\n\n const operation = execMapper(\"operation\", [operationStore.operation], options);\n\n return operationPaths.map((operationPath) => {\n return {\n operationPath,\n operation,\n operationStore\n };\n });\n };\n}\n\nexport function pathsMapper(model: any, {paths, rootPath, ...options}: JsonSchemaOptions) {\n const store = getJsonEntityStore(model);\n const ctrlPath = store.path;\n const ctrlRootPath = buildPath(rootPath + ctrlPath);\n\n options = {\n ...options,\n ctrlRootPath\n };\n\n return [...getOperationsStores(model).values()]\n .filter(removeHiddenOperation)\n .filter((operationStore) => operationStore.operation.getAllowedOperationPath(ALLOWED_VERBS).length > 0)\n .flatMap(mapOperation(options))\n .flatMap(mapOperationInPathParameters(options))\n .reduce(pushToPath, paths);\n}\n\nregisterJsonSchemaMapper(\"paths\", pathsMapper);\n"],"names":["ALLOWED_VERBS","OperationVerbs","pushToPath","paths","path","method","operation","mapOperationInPathParameters","options","operationPath","operationStore","getJsonPathParameters","parameters","concatParameters","type","param","getOperationId","mapOperation","operationPaths","execMapper","pathsMapper","model","rootPath","ctrlPath","getJsonEntityStore","ctrlRootPath","buildPath","getOperationsStores","removeHiddenOperation","registerJsonSchemaMapper"],"mappings":";;;;;;;;;AAeA,MAAMA,IAAgB;AAAA,EACpBC,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AAAA,EACfA,EAAe;AACjB;AAEA,SAASC,EACPC,GACA;AAAA,EACE,MAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC;AACF,GAKA;AACO,SAAA;AAAA,IACL,GAAGH;AAAA,IACH,CAACC,CAAI,GAAG;AAAA,MACN,GAAID,EAAcC,CAAI;AAAA,MACtB,CAACC,EAAO,aAAa,GAAGC;AAAA,IAAA;AAAA,EAE5B;AACF;AAEA,SAASC,EAA6BC,GAA4B;AAChE,SAAO,CAAC;AAAA,IACN,eAAAC;AAAA,IACA,WAAAH;AAAA,IACA,gBAAAI;AAAA,EAAA,MAKI;AACE,UAAA,EAAC,MAAAN,GAAM,QAAAC,EAAA,IAAUI;AAEhB,WAAAE,EAAsBH,EAAQ,cAAcJ,CAAI,EAAE,IAAI,CAAC,EAAC,MAAAA,GAAM,YAAAQ,SACnER,IAAOA,KAAc,KAERQ,IAAAC;AAAA,MACXD,EAAW,IAAI,CAAC,EAAC,MAAAE,GAAM,GAAGC,SACjB;AAAA,QACL,GAAGA;AAAA,QACH,QAAQ;AAAA,UACN,MAAAD;AAAA,QAAA;AAAA,MAEJ,EACD;AAAA,MACDR;AAAA,IACF,GAEO;AAAA,MACL,WAAW;AAAA,QACT,GAAGA;AAAA,QACH,GAAGG,EAAc,OAAOD,CAAO;AAAA,QAC/B,YAAAI;AAAA,QACA,aACEN,EAAU,eACVU,EAAeZ,GAAM;AAAA,UACnB,GAAGI;AAAA,UACH,OAAOE;AAAA,QACR,CAAA;AAAA,MACL;AAAA,MACA,QAAAL;AAAA,MACA,MAAAD;AAAAA,IACF,EACD;AAAA,EACH;AACF;AAEA,SAASa,EAAaT,GAA4B;AAChD,SAAO,CAACE,MAAoC;AAC1C,UAAMQ,IAAiBR,EAAe,UAAU,wBAAwBV,CAAa;AAEjF,QAAAkB,EAAe,WAAW;AAC5B,aAAO,CAAC;AAGV,UAAMZ,IAAYa,EAAW,aAAa,CAACT,EAAe,SAAS,GAAGF,CAAO;AAEtE,WAAAU,EAAe,IAAI,CAACT,OAClB;AAAA,MACL,eAAAA;AAAA,MACA,WAAAH;AAAA,MACA,gBAAAI;AAAA,IACF,EACD;AAAA,EACH;AACF;AAEO,SAASU,EAAYC,GAAY,EAAC,OAAAlB,GAAO,UAAAmB,GAAU,GAAGd,KAA6B;AAExF,QAAMe,IADQC,EAAmBH,CAAK,EACf,MACjBI,IAAeC,EAAUJ,IAAWC,CAAQ;AAExC,SAAAf,IAAA;AAAA,IACR,GAAGA;AAAA,IACH,cAAAiB;AAAA,EACF,GAEO,CAAC,GAAGE,EAAoBN,CAAK,EAAE,OAAQ,CAAA,EAC3C,OAAOO,CAAqB,EAC5B,OAAO,CAAClB,MAAmBA,EAAe,UAAU,wBAAwBV,CAAa,EAAE,SAAS,CAAC,EACrG,QAAQiB,EAAaT,CAAO,CAAC,EAC7B,QAAQD,EAA6BC,CAAO,CAAC,EAC7C,OAAON,GAAYC,CAAK;AAC7B;AAEA0B,EAAyB,SAAST,CAAW;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
var E = /* @__PURE__ */ ((T) => (T.ALL = "ALL", T.GET = "GET", T.POST = "POST", T.PUT = "PUT", T.PATCH = "PATCH", T.HEAD = "HEAD", T.DELETE = "DELETE", T.OPTIONS = "OPTIONS", T.TRACE = "TRACE", T.PUBLISH = "PUBLISH", T.SUBSCRIBE = "SUBSCRIBE", T.CUSTOM = "CUSTOM", T))(E || {});
|
|
2
|
+
const S = [
|
|
3
|
+
"ALL",
|
|
4
|
+
"GET",
|
|
5
|
+
"POST",
|
|
6
|
+
"PUT",
|
|
7
|
+
"PATCH",
|
|
8
|
+
"HEAD",
|
|
9
|
+
"DELETE",
|
|
10
|
+
"OPTIONS",
|
|
11
|
+
"TRACE",
|
|
12
|
+
"CUSTOM"
|
|
13
|
+
/* CUSTOM */
|
|
14
|
+
], P = [
|
|
15
|
+
"PUBLISH",
|
|
16
|
+
"SUBSCRIBE"
|
|
17
|
+
/* SUBSCRIBE */
|
|
18
|
+
];
|
|
19
|
+
export {
|
|
20
|
+
S as OPERATION_HTTP_VERBS,
|
|
21
|
+
P as OPERATION_WS_VERBS,
|
|
22
|
+
E as OperationVerbs
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=OperationVerbs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OperationVerbs.js","sources":["../../../src/constants/OperationVerbs.ts"],"sourcesContent":["export enum OperationVerbs {\n ALL = \"ALL\", // special key\n GET = \"GET\",\n POST = \"POST\",\n PUT = \"PUT\",\n PATCH = \"PATCH\",\n HEAD = \"HEAD\",\n DELETE = \"DELETE\",\n OPTIONS = \"OPTIONS\",\n TRACE = \"TRACE\",\n PUBLISH = \"PUBLISH\",\n SUBSCRIBE = \"SUBSCRIBE\",\n CUSTOM = \"CUSTOM\"\n}\n\nexport const OPERATION_HTTP_VERBS = [\n OperationVerbs.ALL,\n OperationVerbs.GET,\n OperationVerbs.POST,\n OperationVerbs.PUT,\n OperationVerbs.PATCH,\n OperationVerbs.HEAD,\n OperationVerbs.DELETE,\n OperationVerbs.OPTIONS,\n OperationVerbs.TRACE,\n OperationVerbs.CUSTOM\n];\n\nexport const OPERATION_WS_VERBS = [OperationVerbs.PUBLISH, OperationVerbs.SUBSCRIBE];\n"],"names":["OperationVerbs","OPERATION_HTTP_VERBS","OPERATION_WS_VERBS"],"mappings":"AAAY,IAAAA,sBAAAA,OACVA,EAAA,MAAM,OACNA,EAAA,MAAM,OACNA,EAAA,OAAO,QACPA,EAAA,MAAM,OACNA,EAAA,QAAQ,SACRA,EAAA,OAAO,QACPA,EAAA,SAAS,UACTA,EAAA,UAAU,WACVA,EAAA,QAAQ,SACRA,EAAA,UAAU,WACVA,EAAA,YAAY,aACZA,EAAA,SAAS,UAZCA,IAAAA,KAAA,CAAA,CAAA;AAeL,MAAMC,IAAuB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AACF,GAEaC,IAAqB;AAAA,EAAC;AAAA,EAAwB;AAAA;AAAwB;"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { constantCase as r } from "/home/runner/work/tsed/tsed/node_modules/change-case/dist/index.js";
|
|
2
|
+
import o from "/home/runner/work/tsed/tsed/node_modules/statuses/index.js";
|
|
3
|
+
const s = o.codes.reduce((e, t) => {
|
|
4
|
+
const n = String(o(t));
|
|
5
|
+
return {
|
|
6
|
+
...e,
|
|
7
|
+
[String(t)]: { label: n, code: r(n) }
|
|
8
|
+
};
|
|
9
|
+
}, {});
|
|
10
|
+
s[200].label = "Success";
|
|
11
|
+
s[200].code = "SUCCESS";
|
|
12
|
+
function c(e) {
|
|
13
|
+
var t;
|
|
14
|
+
return (t = s[e]) == null ? void 0 : t.code;
|
|
15
|
+
}
|
|
16
|
+
function u(e) {
|
|
17
|
+
var t;
|
|
18
|
+
return (t = s[e]) == null ? void 0 : t.label;
|
|
19
|
+
}
|
|
20
|
+
export {
|
|
21
|
+
s as HTTP_STATUS_MESSAGES,
|
|
22
|
+
c as getStatusConstant,
|
|
23
|
+
u as getStatusMessage
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=httpStatusMessages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpStatusMessages.js","sources":["../../../src/constants/httpStatusMessages.ts"],"sourcesContent":["import {constantCase} from \"change-case\";\nimport statuses from \"statuses\";\n\nexport const HTTP_STATUS_MESSAGES = statuses.codes.reduce((map: Record<string, {label: string; code: string}>, code: number) => {\n const message: string = String(statuses(code));\n return {\n ...map,\n [String(code)]: {label: message, code: constantCase(message)}\n };\n}, {});\n\nHTTP_STATUS_MESSAGES[\"200\"].label = \"Success\";\nHTTP_STATUS_MESSAGES[\"200\"].code = \"SUCCESS\";\n\nexport function getStatusConstant(status: number | string) {\n return (HTTP_STATUS_MESSAGES as any)[status]?.code;\n}\n\nexport function getStatusMessage(status: number | string) {\n return (HTTP_STATUS_MESSAGES as any)[status]?.label;\n}\n"],"names":["HTTP_STATUS_MESSAGES","statuses","map","code","message","constantCase","getStatusConstant","status","_a","getStatusMessage"],"mappings":";;AAGO,MAAMA,IAAuBC,EAAS,MAAM,OAAO,CAACC,GAAoDC,MAAiB;AAC9H,QAAMC,IAAkB,OAAOH,EAASE,CAAI,CAAC;AACtC,SAAA;AAAA,IACL,GAAGD;AAAA,IACH,CAAC,OAAOC,CAAI,CAAC,GAAG,EAAC,OAAOC,GAAS,MAAMC,EAAaD,CAAO,EAAC;AAAA,EAC9D;AACF,GAAG,CAAE,CAAA;AAELJ,EAAqB,GAAK,EAAE,QAAQ;AACpCA,EAAqB,GAAK,EAAE,OAAO;AAE5B,SAASM,EAAkBC,GAAyB;;AACjD,UAAAC,IAAAR,EAA6BO,CAAM,MAAnC,gBAAAC,EAAsC;AAChD;AAEO,SAASC,EAAiBF,GAAyB;;AAChD,UAAAC,IAAAR,EAA6BO,CAAM,MAAnC,gBAAAC,EAAsC;AAChD;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const n = ["oneOf", "allOf", "anyOf"], t = ["minLength", "maxLength", "pattern", "format"], m = [], e = ["minimum", "maximum", "exclusiveMinimum", "exclusiveMaximum", "multipleOf"], i = ["maxItems", "minItems", "uniqueItems", "items", "contains", "maxContains", "minContains"], s = [
|
|
2
|
+
"maxItems",
|
|
3
|
+
"minItems",
|
|
4
|
+
"uniqueItems",
|
|
5
|
+
"items",
|
|
6
|
+
"contains",
|
|
7
|
+
"maxContains",
|
|
8
|
+
"minContains",
|
|
9
|
+
"patternProperties",
|
|
10
|
+
"dependencies"
|
|
11
|
+
], a = ["const", "enum"];
|
|
12
|
+
export {
|
|
13
|
+
i as ARRAY_PROPERTIES,
|
|
14
|
+
m as BOOLEAN_PROPERTIES,
|
|
15
|
+
a as COMMON_PROPERTIES,
|
|
16
|
+
n as MANY_OF_PROPERTIES,
|
|
17
|
+
e as NUMBER_PROPERTIES,
|
|
18
|
+
s as OBJECT_PROPERTIES,
|
|
19
|
+
t as STRING_PROPERTIES
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=jsonSchemaProperties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonSchemaProperties.js","sources":["../../../src/constants/jsonSchemaProperties.ts"],"sourcesContent":["export const MANY_OF_PROPERTIES = [\"oneOf\", \"allOf\", \"anyOf\"];\nexport const STRING_PROPERTIES = [\"minLength\", \"maxLength\", \"pattern\", \"format\"];\nexport const BOOLEAN_PROPERTIES = [];\nexport const NUMBER_PROPERTIES = [\"minimum\", \"maximum\", \"exclusiveMinimum\", \"exclusiveMaximum\", \"multipleOf\"];\nexport const ARRAY_PROPERTIES = [\"maxItems\", \"minItems\", \"uniqueItems\", \"items\", \"contains\", \"maxContains\", \"minContains\"];\nexport const OBJECT_PROPERTIES = [\n \"maxItems\",\n \"minItems\",\n \"uniqueItems\",\n \"items\",\n \"contains\",\n \"maxContains\",\n \"minContains\",\n \"patternProperties\",\n \"dependencies\"\n];\nexport const COMMON_PROPERTIES = [\"const\", \"enum\"];\n"],"names":["MANY_OF_PROPERTIES","STRING_PROPERTIES","BOOLEAN_PROPERTIES","NUMBER_PROPERTIES","ARRAY_PROPERTIES","OBJECT_PROPERTIES","COMMON_PROPERTIES"],"mappings":"AAAO,MAAMA,IAAqB,CAAC,SAAS,SAAS,OAAO,GAC/CC,IAAoB,CAAC,aAAa,aAAa,WAAW,QAAQ,GAClEC,IAAqB,CAAA,GACrBC,IAAoB,CAAC,WAAW,WAAW,oBAAoB,oBAAoB,YAAY,GAC/FC,IAAmB,CAAC,YAAY,YAAY,eAAe,SAAS,YAAY,eAAe,aAAa,GAC5GC,IAAoB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GACaC,IAAoB,CAAC,SAAS,MAAM;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Store as n } from "@tsed/core";
|
|
2
|
+
import { JsonEntityFn as e } from "../common/jsonEntityFn.js";
|
|
3
|
+
function l(...r) {
|
|
4
|
+
return e((o) => {
|
|
5
|
+
o.store.set("childrenControllers", r), r.forEach((t) => {
|
|
6
|
+
n.from(t).set("parentController", o.token);
|
|
7
|
+
});
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
l as Children
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=children.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"children.js","sources":["../../../../src/decorators/class/children.ts"],"sourcesContent":["import {Store, Type} from \"@tsed/core\";\n\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * Add Children class to compose routes\n *\n * @decorator\n * @swagger\n * @schema\n * @classDecorator\n * @param children\n */\nexport function Children(...children: Type<any>[]): ClassDecorator {\n return JsonEntityFn((store) => {\n store.store.set(\"childrenControllers\", children);\n\n children.forEach((childToken) => {\n Store.from(childToken).set(\"parentController\", store.token);\n });\n });\n}\n"],"names":["Children","children","JsonEntityFn","store","childToken","Store"],"mappings":";;AAaO,SAASA,KAAYC,GAAuC;AAC1D,SAAAC,EAAa,CAACC,MAAU;AACvB,IAAAA,EAAA,MAAM,IAAI,uBAAuBF,CAAQ,GAEtCA,EAAA,QAAQ,CAACG,MAAe;AAC/B,MAAAC,EAAM,KAAKD,CAAU,EAAE,IAAI,oBAAoBD,EAAM,KAAK;AAAA,IAAA,CAC3D;AAAA,EAAA,CACF;AACH;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { snakeCase as t } from "/home/runner/work/tsed/tsed/node_modules/change-case/dist/index.js";
|
|
2
|
+
import { JsonEntityFn as m } from "../common/jsonEntityFn.js";
|
|
3
|
+
function c(i, ...n) {
|
|
4
|
+
return m((r) => {
|
|
5
|
+
i = i || t(r.targetName), r.discriminatorAncestor && r.schema.discriminatorValue(i, ...n);
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
export {
|
|
9
|
+
c as DiscriminatorValue
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=discriminatorValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discriminatorValue.js","sources":["../../../../src/decorators/class/discriminatorValue.ts"],"sourcesContent":["import {snakeCase} from \"change-case\";\n\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * Declare a Discriminator value on a child class.\n *\n * ```ts\n * export class Event {\n * @DiscriminatorKey() // declare this property a discriminator key\n * type: string;\n *\n * @Property()\n * value: string;\n * }\n *\n * @DiscriminatorValue(\"page_view\")\n * export class PageView extends Event {\n * @Required()\n * url: string;\n * }\n *\n * @DiscriminatorValue(\"action\")\n * export class Action extends Event {\n * @Required()\n * event: string;\n * }\n *\n * @DiscriminatorValue()\n * export class CustomAction extends Event {\n * @Required()\n * event: string;\n *\n * @Property()\n * meta: string;\n * }\n * ```\n *\n * @decorator\n * @swagger\n * @schema\n * @classDecorator\n * @param value\n * @param values\n */\nexport function DiscriminatorValue(value?: string, ...values: string[]): ClassDecorator {\n return JsonEntityFn((store) => {\n value = value || snakeCase(store.targetName);\n if (store.discriminatorAncestor) {\n store.schema.discriminatorValue(value, ...values);\n }\n });\n}\n"],"names":["DiscriminatorValue","value","values","JsonEntityFn","store","snakeCase"],"mappings":";;AA6CgB,SAAAA,EAAmBC,MAAmBC,GAAkC;AAC/E,SAAAC,EAAa,CAACC,MAAU;AACrB,IAAAH,IAAAA,KAASI,EAAUD,EAAM,UAAU,GACvCA,EAAM,yBACRA,EAAM,OAAO,mBAAmBH,GAAO,GAAGC,CAAM;AAAA,EAClD,CACD;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collectionContains.js","sources":["../../../../src/decorators/collections/collectionContains.ts"],"sourcesContent":["import {CollectionOf} from \"./collectionOf.js\";\n\n/**\n * Set the type of the item collection. The possible value is String, Boolean, Number, Date, Object, Class, etc...\n *\n * The array instance will be valid against \"contains\" if at least one of its elements is valid against the given schema.\n *\n * ```typescript\n * class Model {\n * @CollectionContains(String).MinLength(0).MaxLength(0)\n * property: string[];\n * }\n * ```\n *\n * @param {Type<any>} type\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n */\nexport function CollectionContains(type: any) {\n return CollectionOf(type).Contains();\n}\n"],"names":["CollectionContains","type","CollectionOf"],"mappings":";AAsBO,SAASA,EAAmBC,GAAW;AACrC,SAAAC,EAAaD,CAAI,EAAE,SAAS;AACrC;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { JsonEntityStore as m } from "../../domain/JsonEntityStore.js";
|
|
2
|
+
function a(n, s) {
|
|
3
|
+
if (!n)
|
|
4
|
+
throw new Error(
|
|
5
|
+
"A type is required on `@CollectionOf(type)` decorator. Please give a type or wrap it inside an arrow function if you have a circular reference."
|
|
6
|
+
);
|
|
7
|
+
const i = {};
|
|
8
|
+
let o = !1;
|
|
9
|
+
const e = (...r) => {
|
|
10
|
+
const t = m.from(...r);
|
|
11
|
+
s && (t.collectionType = s, t.schema.type(s)), t.type = n, t.itemSchema.type(n), t.schema.assign(i), t.isArray && o && (t.schema.set("contains", t.schema.get("items")), t.schema.delete("items"));
|
|
12
|
+
};
|
|
13
|
+
return e.MinItems = (r) => (i.minItems = r, e), e.MaxItems = (r) => (i.maxItems = r, e), e.MinProperties = (r) => (i.minProperties = r, e), e.MaxProperties = (r) => (i.maxProperties = r, e), e.Contains = () => (o = !0, e), e.UniqueItems = (r = !0) => (i.uniqueItems = r, e), e;
|
|
14
|
+
}
|
|
15
|
+
function u(n) {
|
|
16
|
+
return a(n, Array);
|
|
17
|
+
}
|
|
18
|
+
function f(n) {
|
|
19
|
+
return a(n, Map);
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
u as ArrayOf,
|
|
23
|
+
a as CollectionOf,
|
|
24
|
+
f as MapOf
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=collectionOf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collectionOf.js","sources":["../../../../src/decorators/collections/collectionOf.ts"],"sourcesContent":["import {JsonEntityStore} from \"../../domain/JsonEntityStore.js\";\n\nexport interface ArrayOfChainedDecorators {\n (...args: any): any;\n\n /**\n * An array instance is valid against `minItems` if its size is greater than, or equal to, the value of this keyword.\n *\n * ::: warning\n * The value `minItems` MUST be a non-negative integer.\n * :::\n *\n * ::: tip\n * Omitting this keyword has the same behavior as a value of 0.\n * :::\n * @deprecated Since 2025-05-12. Use MinItems decorator instead.\n */\n MinItems(minItems: number): this;\n\n /**\n * The value `maxItems` MUST be a non-negative integer.\n *\n * An array instance is valid against `maxItems` if its size is less than, or equal to, the value of this keyword.\n *\n * :: warning\n * The value `maxItems` MUST be a non-negative integer.\n * :::\n * @deprecated Since 2025-05-12. Use MaxItems decorator instead.\n */\n MaxItems(maxItems: number): this;\n\n /**\n * Set the type of the item collection. The possible value is String, Boolean, Number, Date, Object, Class, etc...\n *\n * The array instance will be valid against \"contains\" if at least one of its elements is valid against the given schema.\n * @deprecated Since 2025-05-12. Use Contains decorator instead.\n */\n Contains(): this;\n\n /**\n * If this keyword has boolean value false, the instance validates successfully. If it has boolean value true, the instance validates successfully if all of its elements are unique.\n * @deprecated Since 2025-05-12. Use UniqueItems decorator instead.\n */\n UniqueItems(uniqueItems?: boolean): this;\n}\n\nexport interface MapOfChainedDecorators {\n (...args: any): any;\n\n /**\n * An object instance is valid against `minProperties` if its number of properties is less than, or equal to, the value of this keyword.\n *\n * ::: warning\n * The value of this keyword MUST be a non-negative integer.\n * :::\n * @deprecated Since 2025-05-12. Use MinProperties decorator instead.\n */\n MinProperties(minProperties: number): this;\n\n /**\n * An object instance is valid against `maxProperties` if its number of properties is less than, or equal to, the value of this keyword.\n *\n * ::: warning\n * The value of this keyword MUST be a non-negative integer.\n * :::\n * @deprecated Since 2025-05-12. Use MaxProperties decorator instead.\n */\n MaxProperties(maxProperties: number): this;\n}\n\nexport interface CollectionOfChainedDecorators extends MapOfChainedDecorators, ArrayOfChainedDecorators {}\n\n/**\n * Set the type of the item collection. The possible value is String, Boolean, Number, Date, Object, Class, etc...\n *\n * ```typescript\n * class Model {\n * @CollectionOf(String).MinLength(0).MaxLength(0)\n * property: string[];\n * }\n * ```\n * ::: warning\n * You mustn't use the `type Type = string | number` as parameters Type.\n *\n * This example doesn't work:\n *\n * ```typescript\n * type Type = \"string\" | \"number\"\n * class Model {\n * @CollectionOf(Type)\n * property: Type[];\n * }\n * ```\n * :::\n *\n * @param {Type<any>} type\n * @param collectionType\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n */\nexport function CollectionOf(type: any, collectionType?: any): CollectionOfChainedDecorators {\n if (!type) {\n throw new Error(\n \"A type is required on `@CollectionOf(type)` decorator. Please give a type or wrap it inside an arrow function if you have a circular reference.\"\n );\n }\n\n const schema: any = {};\n let contains: boolean = false;\n\n const decorator = (...args: any) => {\n const store = JsonEntityStore.from(...args);\n\n if (collectionType) {\n store.collectionType = collectionType;\n store.schema.type(collectionType);\n }\n\n store.type = type;\n store.itemSchema.type(type);\n\n store.schema.assign(schema);\n\n if (store.isArray && contains) {\n store.schema.set(\"contains\", store.schema.get(\"items\"));\n store.schema.delete(\"items\");\n }\n };\n /**\n * @deprecated Since 2025-05-12. Use MinItems decorator instead.\n */\n decorator.MinItems = (minItems: number) => {\n schema.minItems = minItems;\n\n return decorator;\n };\n /**\n * @deprecated Since 2025-05-12. Use MaxItems decorator instead.\n */\n decorator.MaxItems = (maxItems: number) => {\n schema.maxItems = maxItems;\n\n return decorator;\n };\n /**\n * @deprecated Since 2025-05-12. Use MinProperties decorator instead.\n */\n decorator.MinProperties = (minProperties: number) => {\n schema.minProperties = minProperties;\n\n return decorator;\n };\n /**\n * @deprecated Since 2025-05-12. Use MaxProperties decorator instead.\n */\n decorator.MaxProperties = (maxProperties: number) => {\n schema.maxProperties = maxProperties;\n\n return decorator;\n };\n\n /**\n * @deprecated Since 2025-05-12. Use Contains decorator instead.\n */\n decorator.Contains = () => {\n contains = true;\n\n return decorator;\n };\n\n /**\n * @deprecated Since 2025-05-12. Use UniqueItems decorator instead.\n */\n decorator.UniqueItems = (uniqueItems = true) => {\n schema.uniqueItems = uniqueItems;\n\n return decorator;\n };\n\n return decorator;\n}\n\n/**\n * Alias of @@GenericOf@@ decorator.\n * @param type\n * @decorator\n */\nexport function ArrayOf(type: any): ArrayOfChainedDecorators {\n return CollectionOf(type, Array);\n}\n\n/**\n * Alias of @@GenericOf@@ decorator.\n * @param type\n * @decorator\n */\nexport function MapOf(type: any): MapOfChainedDecorators {\n return CollectionOf(type, Map);\n}\n"],"names":["CollectionOf","type","collectionType","schema","contains","decorator","args","store","JsonEntityStore","minItems","maxItems","minProperties","maxProperties","uniqueItems","ArrayOf","MapOf"],"mappings":";AAwGgB,SAAAA,EAAaC,GAAWC,GAAqD;AAC3F,MAAI,CAACD;AACH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAGF,QAAME,IAAc,CAAC;AACrB,MAAIC,IAAoB;AAElB,QAAAC,IAAY,IAAIC,MAAc;AAClC,UAAMC,IAAQC,EAAgB,KAAK,GAAGF,CAAI;AAE1C,IAAIJ,MACFK,EAAM,iBAAiBL,GACjBK,EAAA,OAAO,KAAKL,CAAc,IAGlCK,EAAM,OAAON,GACPM,EAAA,WAAW,KAAKN,CAAI,GAEpBM,EAAA,OAAO,OAAOJ,CAAM,GAEtBI,EAAM,WAAWH,MACnBG,EAAM,OAAO,IAAI,YAAYA,EAAM,OAAO,IAAI,OAAO,CAAC,GAChDA,EAAA,OAAO,OAAO,OAAO;AAAA,EAE/B;AAIU,SAAAF,EAAA,WAAW,CAACI,OACpBN,EAAO,WAAWM,GAEXJ,IAKCA,EAAA,WAAW,CAACK,OACpBP,EAAO,WAAWO,GAEXL,IAKCA,EAAA,gBAAgB,CAACM,OACzBR,EAAO,gBAAgBQ,GAEhBN,IAKCA,EAAA,gBAAgB,CAACO,OACzBT,EAAO,gBAAgBS,GAEhBP,IAMTA,EAAU,WAAW,OACRD,IAAA,IAEJC,IAMCA,EAAA,cAAc,CAACQ,IAAc,QACrCV,EAAO,cAAcU,GAEdR,IAGFA;AACT;AAOO,SAASS,EAAQb,GAAqC;AACpD,SAAAD,EAAaC,GAAM,KAAK;AACjC;AAOO,SAASc,EAAMd,GAAmC;AAChD,SAAAD,EAAaC,GAAM,GAAG;AAC/B;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { withErrorMsg as t } from "../../utils/withErrorMsg.js";
|
|
2
|
+
import { JsonEntityFn as o } from "../common/jsonEntityFn.js";
|
|
3
|
+
const a = t("maxItems", (r) => {
|
|
4
|
+
if (r < 0)
|
|
5
|
+
throw new Error("The value of maxItems MUST be a non-negative integer.");
|
|
6
|
+
return o((e) => {
|
|
7
|
+
e.schema.maxItems(r);
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
export {
|
|
11
|
+
a as MaxItems
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=maxItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxItems.js","sources":["../../../../src/decorators/collections/maxItems.ts"],"sourcesContent":["import {withErrorMsg} from \"../../utils/withErrorMsg.js\";\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * The value `maxItems` MUST be a non-negative integer.\n *\n * An array instance is valid against `maxItems` if its size is less than, or equal to, the value of this keyword.\n *\n * :: warning\n * The value `maxItems` MUST be a non-negative integer.\n * :::\n *\n * :: warning\n * This decorator will be removed in v7.\n * For v6 user, use @@MaxItems@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * ## Example\n *\n * ```typescript\n * class Model {\n * @CollectionOf(String)\n * @MaxItems(10)\n * property: string[];\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"number\",\n * \"maxItems\": 10\n * }\n * }\n * }\n * ```\n *\n * @param {number} maxItems\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n * @ajv-errors\n */\nexport const MaxItems = withErrorMsg(\"maxItems\", (maxItems: number) => {\n if (maxItems < 0) {\n throw new Error(\"The value of maxItems MUST be a non-negative integer.\");\n }\n\n return JsonEntityFn((storedJson) => {\n storedJson.schema.maxItems(maxItems);\n });\n});\n"],"names":["MaxItems","withErrorMsg","maxItems","JsonEntityFn","storedJson"],"mappings":";;AAkDO,MAAMA,IAAWC,EAAa,YAAY,CAACC,MAAqB;AACrE,MAAIA,IAAW;AACP,UAAA,IAAI,MAAM,uDAAuD;AAGlE,SAAAC,EAAa,CAACC,MAAe;AACvB,IAAAA,EAAA,OAAO,SAASF,CAAQ;AAAA,EAAA,CACpC;AACH,CAAC;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { withErrorMsg as o } from "../../utils/withErrorMsg.js";
|
|
2
|
+
import { JsonEntityFn as t } from "../common/jsonEntityFn.js";
|
|
3
|
+
const m = o("maxProperties", (r) => {
|
|
4
|
+
if (r < 0)
|
|
5
|
+
throw new Error("The value of maxProperties MUST be a non-negative integer.");
|
|
6
|
+
return t((e) => {
|
|
7
|
+
e.isCollection ? e.schema.maxProperties(r) : e.itemSchema.maxProperties(r);
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
export {
|
|
11
|
+
m as MaxProperties
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=maxProperties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"maxProperties.js","sources":["../../../../src/decorators/collections/maxProperties.ts"],"sourcesContent":["import {withErrorMsg} from \"../../utils/withErrorMsg.js\";\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * An object instance is valid against `maxProperties` if its number of properties is less than, or equal to, the value of this keyword.\n *\n * ::: warning\n * The value of this keyword MUST be a non-negative integer.\n * :::\n *\n * ::: warning\n * This decorator will be removed in v7.\n * For v6 user, use @@MaxProperties@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * ## Example\n * ### On prop\n * ```typescript\n * class Model {\n * @MaxProperties(10)\n * property: any;\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"any\",\n * \"maxProperties\": 10\n * }\n * }\n * }\n * ```\n *\n * ### On class\n *\n * ```typescript\n * @MaxProperties(10)\n * class Model {\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"maxProperties\": 10\n * }\n * ```\n *\n * ### On Parameter\n *\n * ```typescript\n *\n * class Model {\n * method(@Any() @MaxProperties(10) obj: any){}\n * }\n * ```\n *\n * @param {number} maxProperties The maximum properties allowed on the given object\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n * @ajv-errors\n */\nexport const MaxProperties = withErrorMsg(\"maxProperties\", (maxProperties: number) => {\n if (maxProperties < 0) {\n throw new Error(\"The value of maxProperties MUST be a non-negative integer.\");\n }\n\n return JsonEntityFn((store) => {\n store.isCollection ? store.schema.maxProperties(maxProperties) : store.itemSchema.maxProperties(maxProperties);\n });\n});\n"],"names":["MaxProperties","withErrorMsg","maxProperties","JsonEntityFn","store"],"mappings":";;AAyEO,MAAMA,IAAgBC,EAAa,iBAAiB,CAACC,MAA0B;AACpF,MAAIA,IAAgB;AACZ,UAAA,IAAI,MAAM,4DAA4D;AAGvE,SAAAC,EAAa,CAACC,MAAU;AACvB,IAAAA,EAAA,eAAeA,EAAM,OAAO,cAAcF,CAAa,IAAIE,EAAM,WAAW,cAAcF,CAAa;AAAA,EAAA,CAC9G;AACH,CAAC;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { withErrorMsg as t } from "../../utils/withErrorMsg.js";
|
|
2
|
+
import { JsonEntityFn as n } from "../common/jsonEntityFn.js";
|
|
3
|
+
const m = t("minItems", (r) => {
|
|
4
|
+
if (r < 0)
|
|
5
|
+
throw new Error("The value of minItems MUST be a non-negative integer.");
|
|
6
|
+
return n((e) => {
|
|
7
|
+
e.schema.minItems(r);
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
export {
|
|
11
|
+
m as MinItems
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=minItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minItems.js","sources":["../../../../src/decorators/collections/minItems.ts"],"sourcesContent":["import {withErrorMsg} from \"../../utils/withErrorMsg.js\";\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * An array instance is valid against `minItems` if its size is greater than, or equal to, the value of this keyword.\n *\n * ::: warning\n * The value `minItems` MUST be a non-negative integer.\n * :::\n *\n * ::: tip\n * Omitting this keyword has the same behavior as a value of 0.\n * :::\n *\n * ::: warning\n * For v6 user, use @@MinItems@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * ## Example\n *\n * ```typescript\n * class Model {\n * @CollectionOf(String)\n * @MinItems(10)\n * property: string[];\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"array\",\n * \"minItems\": 10,\n * \"items\": {\n * \"type\": \"string\"\n * }\n * }\n * }\n * }\n * ```\n *\n * @param {number} minItems\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n * @ajv-errors\n */\nexport const MinItems = withErrorMsg(\"minItems\", (minItems: number) => {\n if (minItems < 0) {\n throw new Error(\"The value of minItems MUST be a non-negative integer.\");\n }\n\n return JsonEntityFn((storedJson) => {\n storedJson.schema.minItems(minItems);\n });\n});\n"],"names":["MinItems","withErrorMsg","minItems","JsonEntityFn","storedJson"],"mappings":";;AAsDO,MAAMA,IAAWC,EAAa,YAAY,CAACC,MAAqB;AACrE,MAAIA,IAAW;AACP,UAAA,IAAI,MAAM,uDAAuD;AAGlE,SAAAC,EAAa,CAACC,MAAe;AACvB,IAAAA,EAAA,OAAO,SAASF,CAAQ;AAAA,EAAA,CACpC;AACH,CAAC;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { withErrorMsg as i } from "../../utils/withErrorMsg.js";
|
|
2
|
+
import { JsonEntityFn as o } from "../common/jsonEntityFn.js";
|
|
3
|
+
const m = i("minProperties", (r) => {
|
|
4
|
+
if (r < 0)
|
|
5
|
+
throw new Error("The value of minProperties MUST be a non-negative integer.");
|
|
6
|
+
return o((e) => {
|
|
7
|
+
e.isCollection ? e.schema.minProperties(r) : e.itemSchema.minProperties(r);
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
export {
|
|
11
|
+
m as MinProperties
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=minProperties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minProperties.js","sources":["../../../../src/decorators/collections/minProperties.ts"],"sourcesContent":["import {withErrorMsg} from \"../../utils/withErrorMsg.js\";\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * An object instance is valid against `minProperties` if its number of properties is less than, or equal to, the value of this keyword.\n *\n * ::: warning\n * The value of this keyword MUST be a non-negative integer.\n * :::\n *\n * ::: warning\n * For v6 user, use @@MinProperties@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * ## Example\n * ### On prop\n * ```typescript\n * class Model {\n * @MinProperties(10)\n * property: any;\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"any\",\n * \"minProperties\": 10\n * }\n * }\n * }\n * ```\n *\n * ### On class\n *\n * ```typescript\n * @MinProperties(10)\n * class Model {\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"minProperties\": 10\n * }\n * ```\n *\n * ### On Parameter\n *\n * ```typescript\n *\n * class Model {\n * method(@Any() @MinProperties(10) obj: any){}\n * }\n * ```\n *\n * @param {number} minProperties The minimum properties allowed on the object.\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n * @ajv-errors\n */\nexport const MinProperties = withErrorMsg(\"minProperties\", (minProperties: number) => {\n if (minProperties < 0) {\n throw new Error(\"The value of minProperties MUST be a non-negative integer.\");\n }\n\n return JsonEntityFn((store) => {\n store.isCollection ? store.schema.minProperties(minProperties) : store.itemSchema.minProperties(minProperties);\n });\n});\n"],"names":["MinProperties","withErrorMsg","minProperties","JsonEntityFn","store"],"mappings":";;AAwEO,MAAMA,IAAgBC,EAAa,iBAAiB,CAACC,MAA0B;AACpF,MAAIA,IAAgB;AACZ,UAAA,IAAI,MAAM,4DAA4D;AAGvE,SAAAC,EAAa,CAACC,MAAU;AACvB,IAAAA,EAAA,eAAeA,EAAM,OAAO,cAAcF,CAAa,IAAIE,EAAM,WAAW,cAAcF,CAAa;AAAA,EAAA,CAC9G;AACH,CAAC;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { withErrorMsg as e } from "../../utils/withErrorMsg.js";
|
|
2
|
+
import { JsonEntityFn as m } from "../common/jsonEntityFn.js";
|
|
3
|
+
const i = e("uniqueItems", (t = !0) => m((r) => {
|
|
4
|
+
r.schema.uniqueItems(t);
|
|
5
|
+
}));
|
|
6
|
+
export {
|
|
7
|
+
i as UniqueItems
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=uniqueItems.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uniqueItems.js","sources":["../../../../src/decorators/collections/uniqueItems.ts"],"sourcesContent":["import {JsonEntityStore} from \"../../domain/JsonEntityStore.js\";\nimport {withErrorMsg} from \"../../utils/withErrorMsg.js\";\nimport {JsonEntityFn} from \"../common/jsonEntityFn.js\";\n\n/**\n * If this keyword has boolean value false, the instance validates successfully. If it has boolean value true, the instance validates successfully if all of its elements are unique.\n *\n * ::: warning\n * For v6 user, use @@UniqueItems@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * ## Example\n *\n * ```typescript\n * class Model {\n * @UniqueItems() // default true\n * property: number[];\n * }\n * ```\n *\n * * ```typescript\n * class Model {\n * @CollectionOf(String)\n * @UniqueItems()\n * property: string[];\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"array\",\n * \"uniqueItems\": true,\n * \"items\": {\n * \"type\": \"string\"\n * }\n * }\n * }\n * }\n * ```\n *\n * @param {boolean} uniqueItems\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @collections\n * @ajv-errors\n */\nexport const UniqueItems = withErrorMsg(\"uniqueItems\", (uniqueItems: boolean = true) => {\n return JsonEntityFn((store: JsonEntityStore) => {\n store.schema.uniqueItems(uniqueItems);\n });\n});\n"],"names":["UniqueItems","withErrorMsg","uniqueItems","JsonEntityFn","store"],"mappings":";;AAsDO,MAAMA,IAAcC,EAAa,eAAe,CAACC,IAAuB,OACtEC,EAAa,CAACC,MAA2B;AACxC,EAAAA,EAAA,OAAO,YAAYF,CAAW;AAAA,CACrC,CACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"additionalProperties.js","sources":["../../../../src/decorators/common/additionalProperties.ts"],"sourcesContent":["import {AnyJsonSchema} from \"../../domain/JsonSchema.js\";\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * Accept unknown properties on the deserialized model.\n *\n * @param schema\n * @decorator\n * @validation\n * @swagger\n * @schema\n */\nexport function AdditionalProperties(schema: boolean | AnyJsonSchema) {\n return JsonEntityFn((entity, parameters) => {\n entity.itemSchema.additionalProperties(schema);\n });\n}\n"],"names":["AdditionalProperties","schema","JsonEntityFn","entity","parameters"],"mappings":";AAYO,SAASA,EAAqBC,GAAiC;AAC7D,SAAAC,EAAa,CAACC,GAAQC,MAAe;AACnC,IAAAD,EAAA,WAAW,qBAAqBF,CAAM;AAAA,EAAA,CAC9C;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"allOf.js","sources":["../../../../src/decorators/common/allOf.ts"],"sourcesContent":["import {AnyJsonSchema} from \"../../domain/JsonSchema.js\";\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * See https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.26\n *\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @classDecorator\n * @input\n * @param allOf\n */\nexport function AllOf(...allOf: AnyJsonSchema[]) {\n return JsonEntityFn((entity) => {\n entity.itemSchema.allOf(allOf);\n });\n}\n"],"names":["AllOf","allOf","JsonEntityFn","entity"],"mappings":";AAcO,SAASA,KAASC,GAAwB;AACxC,SAAAC,EAAa,CAACC,MAAW;AACvB,IAAAA,EAAA,WAAW,MAAMF,CAAK;AAAA,EAAA,CAC9B;AACH;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { isClass as a, useDecorators as i, DecoratorTypes as t } from "@tsed/core";
|
|
2
|
+
import { JsonEntityFn as p } from "./jsonEntityFn.js";
|
|
3
|
+
import { Property as m } from "./property.js";
|
|
4
|
+
function y(...o) {
|
|
5
|
+
const e = o.find((r) => a(r));
|
|
6
|
+
return i(
|
|
7
|
+
e && m(e),
|
|
8
|
+
p((r, n) => {
|
|
9
|
+
r.decoratorType === t.PARAM && (r.required = !0), r.decoratorType === t.PROP && r.parentSchema.addRequired(r.propertyName), r.schema.allow(...o);
|
|
10
|
+
})
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
export {
|
|
14
|
+
y as Allow
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=allow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"allow.js","sources":["../../../../src/decorators/common/allow.ts"],"sourcesContent":["import {DecoratorTypes, isClass, useDecorators} from \"@tsed/core\";\n\nimport type {JsonParameterStore} from \"../../domain/JsonParameterStore.js\";\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\nimport {Property} from \"./property.js\";\n\n/**\n * Add allowed values when the property or parameters is required.\n *\n * #### Example on parameter:\n *\n * ```typescript\n * @Post(\"/\")\n * async method(@Allow(\"\") @BodyParams(\"field\") field: string) {}\n * ```\n * > Required will throw a BadRequest when the given value is `null` or `undefined` but not for an empty string.\n *\n * #### Example on model:\n *\n * ```typescript\n * class Model {\n * @Allow(\"\")\n * field: string;\n * }\n * ```\n *\n * @returns {Function}\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n */\nexport function Allow(...values: any[]) {\n const model = values.find((item) => isClass(item));\n return useDecorators(\n model && Property(model),\n JsonEntityFn((store, args) => {\n if (store.decoratorType === DecoratorTypes.PARAM) {\n (store as JsonParameterStore).required = true;\n }\n\n if (store.decoratorType === DecoratorTypes.PROP) {\n store.parentSchema.addRequired(store.propertyName);\n }\n\n store.schema.allow(...values);\n })\n );\n}\n"],"names":["Allow","values","model","item","isClass","useDecorators","Property","JsonEntityFn","store","args","DecoratorTypes"],"mappings":";;;AAiCO,SAASA,KAASC,GAAe;AACtC,QAAMC,IAAQD,EAAO,KAAK,CAACE,MAASC,EAAQD,CAAI,CAAC;AAC1C,SAAAE;AAAA,IACLH,KAASI,EAASJ,CAAK;AAAA,IACvBK,EAAa,CAACC,GAAOC,MAAS;AACxB,MAAAD,EAAM,kBAAkBE,EAAe,UACxCF,EAA6B,WAAW,KAGvCA,EAAM,kBAAkBE,EAAe,QACnCF,EAAA,aAAa,YAAYA,EAAM,YAAY,GAG7CA,EAAA,OAAO,MAAM,GAAGP,CAAM;AAAA,IAC7B,CAAA;AAAA,EACH;AACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"any.js","sources":["../../../../src/decorators/common/any.ts"],"sourcesContent":["import {Type} from \"@tsed/core\";\nimport type {JSONSchema6TypeName} from \"json-schema\";\n\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * Set the type of the array items.\n *\n * ## Example\n *\n * ```typescript\n * class Model {\n * @Any()\n * property: any;\n *\n * @Any(String, Number, Boolean)\n * property: string | number | boolean;\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": [\"integer\", \"number\", \"string\", \"boolean\", \"array\", \"object\", \"null\"]\n * }\n * }\n * }\n * ```\n *\n * @returns {Function}\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n */\nexport function Any(...types: (JSONSchema6TypeName | Type<any> | any)[]) {\n return JsonEntityFn((store) => {\n store.itemSchema.any(...types);\n });\n}\n"],"names":["Any","types","JsonEntityFn","store"],"mappings":";AAwCO,SAASA,KAAOC,GAAkD;AAChE,SAAAC,EAAa,CAACC,MAAU;AACvB,IAAAA,EAAA,WAAW,IAAI,GAAGF,CAAK;AAAA,EAAA,CAC9B;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anyOf.js","sources":["../../../../src/decorators/common/anyOf.ts"],"sourcesContent":["import {AnyJsonSchema} from \"../../domain/JsonSchema.js\";\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * See https://tools.ietf.org/html/draft-wright-json-schema-validation-01#section-6.27\n *\n * ::: warning\n * AnyOf isn't supported by OS2\n * :::\n *\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @classDecorator\n * @input\n * @param anyOf\n */\nexport function AnyOf(...anyOf: AnyJsonSchema[]) {\n return JsonEntityFn((entity) => {\n entity.itemSchema.anyOf(anyOf);\n });\n}\n"],"names":["AnyOf","anyOf","JsonEntityFn","entity"],"mappings":";AAkBO,SAASA,KAASC,GAAwB;AACxC,SAAAC,EAAa,CAACC,MAAW;AACvB,IAAAA,EAAA,WAAW,MAAMF,CAAK;AAAA,EAAA,CAC9B;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"const.js","sources":["../../../../src/decorators/common/const.ts"],"sourcesContent":["import type {JSONSchema6Type} from \"json-schema\";\n\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * The const keyword is used to restrict a value to a fixed value.\n *\n * ::: warning\n * For v6 user, use @@Const@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * ## Example\n * ### With a string\n *\n * ```typescript\n * class Model {\n * @Const(\"value1\")\n * property: \"value1\";\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"string\",\n * \"const\": \"value1\"\n * }\n * }\n * }\n * ```\n * * ### With a boolean\n *\n * ```typescript\n * class Model {\n * @Const(true)\n * property: boolean;\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"boolean\",\n * \"const\": true\n * }\n * }\n * }\n * ```\n *\n * @param {string | number | boolean } constValue\n * @decorator\n * @validation\n * @swagger\n * @schema\n */\nexport function Const(constValue: JSONSchema6Type | any) {\n return JsonEntityFn((store) => {\n store.itemSchema.const(constValue);\n });\n}\n"],"names":["Const","constValue","JsonEntityFn","store"],"mappings":";AA+DO,SAASA,EAAMC,GAAmC;AAChD,SAAAC,EAAa,CAACC,MAAU;AACvB,IAAAA,EAAA,WAAW,MAAMF,CAAU;AAAA,EAAA,CAClC;AACH;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { JsonEntityFn as m } from "./jsonEntityFn.js";
|
|
2
|
+
function c(t, e) {
|
|
3
|
+
return m((o) => {
|
|
4
|
+
o.itemSchema.customKey(t, e);
|
|
5
|
+
});
|
|
6
|
+
}
|
|
7
|
+
function u(t) {
|
|
8
|
+
return m((e) => {
|
|
9
|
+
Object.entries(t).forEach(([o, n]) => {
|
|
10
|
+
e.itemSchema.customKey(o, n);
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
c as CustomKey,
|
|
16
|
+
u as CustomKeys
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=customKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customKey.js","sources":["../../../../src/decorators/common/customKey.ts"],"sourcesContent":["import {JsonEntityStore} from \"../../domain/JsonEntityStore.js\";\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * Set a custom key on JsonSchema that is not a part of the official spec.\n *\n * This custom key can only be displayed if the @@getJsonSchema@@ is called with `{customKeys: true}`.\n *\n * @returns {Function}\n * @decorator\n * @validation\n * @property\n * @parameter\n * @schema\n */\nexport function CustomKey(key: string, value: any) {\n return JsonEntityFn((store: JsonEntityStore) => {\n store.itemSchema.customKey(key, value);\n });\n}\n/**\n * Set a group of custom keys on JsonSchema that is not a part of the official spec.\n *\n * This custom key can only be displayed if the @@getJsonSchema@@ is called with `{customKeys: true}`.\n *\n * @returns {Function}\n * @decorator\n * @validation\n * @property\n * @parameter\n * @schema\n */\nexport function CustomKeys(obj: Record<string, any>) {\n return JsonEntityFn((store: JsonEntityStore) => {\n Object.entries(obj).forEach(([key, value]) => {\n store.itemSchema.customKey(key, value);\n });\n });\n}\n"],"names":["CustomKey","key","value","JsonEntityFn","store","CustomKeys","obj"],"mappings":";AAegB,SAAAA,EAAUC,GAAaC,GAAY;AAC1C,SAAAC,EAAa,CAACC,MAA2B;AACxC,IAAAA,EAAA,WAAW,UAAUH,GAAKC,CAAK;AAAA,EAAA,CACtC;AACH;AAaO,SAASG,EAAWC,GAA0B;AAC5C,SAAAH,EAAa,CAACC,MAA2B;AACvC,WAAA,QAAQE,CAAG,EAAE,QAAQ,CAAC,CAACL,GAAKC,CAAK,MAAM;AACtC,MAAAE,EAAA,WAAW,UAAUH,GAAKC,CAAK;AAAA,IAAA,CACtC;AAAA,EAAA,CACF;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default.js","sources":["../../../../src/decorators/common/default.ts"],"sourcesContent":["import type {JSONSchema6Type} from \"json-schema\";\n\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * There are no restrictions placed on the value of this keyword.\n *\n * ::: warning\n * For v6 user, use @@Default@@ from @tsed/schema instead of @tsed/platform-http.\n * :::\n *\n * This keyword can be used to supply a default JSON value associated with a particular schema.\n * It is RECOMMENDED that a default value be valid against the associated schema.\n *\n * ## Example\n *\n * ```typescript\n * class Model {\n * @Default(\"10\")\n * property: string = \"10\";\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": {\n * \"type\": \"string\",\n * \"default\": \"10\"\n * }\n * }\n * }\n * ```\n *\n * @param {string | number | boolean | {}} defaultValue\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n */\nexport function Default(defaultValue: JSONSchema6Type | undefined | (() => JSONSchema6Type)) {\n return JsonEntityFn((store) => {\n store.itemSchema.default(defaultValue);\n });\n}\n"],"names":["Default","defaultValue","JsonEntityFn","store"],"mappings":";AA4CO,SAASA,EAAQC,GAAqE;AACpF,SAAAC,EAAa,CAACC,MAAU;AACvB,IAAAA,EAAA,WAAW,QAAQF,CAAY;AAAA,EAAA,CACtC;AACH;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaultMsg.js","sources":["../../../../src/decorators/common/defaultMsg.ts"],"sourcesContent":["import {useDecorators} from \"@tsed/core\";\n\nimport {ErrorMsg} from \"./errorMsg.js\";\n\n/**\n * Set default error message.\n *\n * ## Example\n *\n * ```typescript\n * @DefaultMsg(\"foo should be a string\")\n * class Model {\n * property: number;\n * }\n * ```\n *\n * Will produce:\n *\n * ```json\n * {\n * \"type\": \"object\",\n * \"properties\": {\n * \"property\": \"number\"\n * }\n * \"errorMessage\": {\n * \"_\": \"foo should be a string\"\n * }\n * }\n * ```\n *\n * @decorator\n * @validation\n * @swagger\n * @schema\n */\nexport function DefaultMsg(message: string): ClassDecorator {\n return useDecorators(ErrorMsg({_: message}));\n}\n"],"names":["DefaultMsg","message","useDecorators","ErrorMsg"],"mappings":";;AAmCO,SAASA,EAAWC,GAAiC;AAC1D,SAAOC,EAAcC,EAAS,EAAC,GAAGF,EAAQ,CAAA,CAAC;AAC7C;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { decoratorTypeOf as c, DecoratorTypes as e } from "@tsed/core";
|
|
2
|
+
import { JsonEntityFn as i } from "./jsonEntityFn.js";
|
|
3
|
+
function s(r) {
|
|
4
|
+
return i((a, t) => {
|
|
5
|
+
var o;
|
|
6
|
+
switch (c(t)) {
|
|
7
|
+
case e.PROP:
|
|
8
|
+
case e.CLASS:
|
|
9
|
+
a.schema.description(r);
|
|
10
|
+
break;
|
|
11
|
+
case e.PARAM:
|
|
12
|
+
a.parameter.description(r);
|
|
13
|
+
break;
|
|
14
|
+
case e.METHOD:
|
|
15
|
+
(o = a.operation) == null || o.description(r);
|
|
16
|
+
break;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
export {
|
|
21
|
+
s as Description
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=description.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"description.js","sources":["../../../../src/decorators/common/description.ts"],"sourcesContent":["import {DecoratorParameters, decoratorTypeOf, DecoratorTypes} from \"@tsed/core\";\n\nimport {JsonEntityStore} from \"../../domain/JsonEntityStore.js\";\nimport type {JsonMethodStore} from \"../../domain/JsonMethodStore.js\";\nimport type {JsonParameterStore} from \"../../domain/JsonParameterStore.js\";\nimport {JsonEntityFn} from \"./jsonEntityFn.js\";\n\n/**\n * Add a description to the class, method or property\n *\n * ## Examples\n * ### On class\n *\n * ```typescript\n * @Description(\"description\")\n * class Model {\n *\n * }\n * ```\n *\n * ### On method\n *\n * ```typescript\n * @Controller(\"/\")\n * class ModelCtrl {\n * @Description(\"description\")\n * async method() {}\n * }\n * ```\n *\n * ### On parameter\n *\n * ```typescript\n * @Controller(\"/\")\n * class ModelCtrl {\n * async method(@Description(\"description\") @PathParam(\"id\") id: string) {}\n * }\n * ```\n *\n * ### On property\n *\n * ```typescript\n * class Model {\n * @Description(\"description\")\n * id: string;\n * }\n * ```\n *\n * @param {string} description\n * @decorator\n * @validation\n * @swagger\n * @schema\n * @input\n * @classDecorator\n * @methodDecorator\n * @propertyDecorator\n * @parameterDecorator\n */\nexport function Description(description: any) {\n return JsonEntityFn((store: JsonEntityStore, args: DecoratorParameters) => {\n switch (decoratorTypeOf(args)) {\n case DecoratorTypes.PROP:\n case DecoratorTypes.CLASS:\n store.schema.description(description);\n break;\n\n case DecoratorTypes.PARAM:\n (store as JsonParameterStore).parameter.description(description);\n break;\n\n case DecoratorTypes.METHOD:\n (store as JsonMethodStore).operation?.description(description);\n break;\n }\n });\n}\n"],"names":["Description","description","JsonEntityFn","store","args","decoratorTypeOf","DecoratorTypes","_a"],"mappings":";;AA2DO,SAASA,EAAYC,GAAkB;AACrC,SAAAC,EAAa,CAACC,GAAwBC,MAA8B;;AACjE,YAAAC,EAAgBD,CAAI,GAAG;AAAA,MAC7B,KAAKE,EAAe;AAAA,MACpB,KAAKA,EAAe;AACZ,QAAAH,EAAA,OAAO,YAAYF,CAAW;AACpC;AAAA,MAEF,KAAKK,EAAe;AACjB,QAAAH,EAA6B,UAAU,YAAYF,CAAW;AAC/D;AAAA,MAEF,KAAKK,EAAe;AACjB,SAAAC,IAAAJ,EAA0B,cAA1B,QAAAI,EAAqC,YAAYN;AAClD;AAAA,IAAA;AAAA,EACJ,CACD;AACH;"}
|