adorn-api 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +766 -51
- package/dist/adapter/express/bootstrap.d.ts +24 -0
- package/dist/adapter/express/bootstrap.d.ts.map +1 -0
- package/dist/adapter/express/index.d.ts +41 -0
- package/dist/adapter/express/index.d.ts.map +1 -0
- package/dist/adapter/express/merge.d.ts +28 -0
- package/dist/adapter/express/merge.d.ts.map +1 -0
- package/dist/cli.cjs +1571 -0
- package/dist/cli.cjs.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +1552 -2
- package/dist/cli.js.map +1 -1
- package/dist/compiler/analyze/scanControllers.d.ts +35 -0
- package/dist/compiler/analyze/scanControllers.d.ts.map +1 -0
- package/dist/compiler/cache/isStale.d.ts +20 -0
- package/dist/compiler/cache/isStale.d.ts.map +1 -0
- package/dist/compiler/cache/loadArtifacts.d.ts +113 -0
- package/dist/compiler/cache/loadArtifacts.d.ts.map +1 -0
- package/dist/compiler/cache/schema.d.ts +18 -0
- package/dist/compiler/cache/schema.d.ts.map +1 -0
- package/dist/compiler/cache/writeCache.d.ts +8 -0
- package/dist/compiler/cache/writeCache.d.ts.map +1 -0
- package/dist/compiler/manifest/emit.d.ts +7 -0
- package/dist/compiler/manifest/emit.d.ts.map +1 -0
- package/dist/compiler/manifest/format.d.ts +76 -0
- package/dist/compiler/manifest/format.d.ts.map +1 -0
- package/dist/compiler/runner/createProgram.d.ts +8 -0
- package/dist/compiler/runner/createProgram.d.ts.map +1 -0
- package/dist/compiler/schema/extractAnnotations.d.ts +10 -0
- package/dist/compiler/schema/extractAnnotations.d.ts.map +1 -0
- package/dist/compiler/schema/openapi.d.ts +19 -0
- package/dist/compiler/schema/openapi.d.ts.map +1 -0
- package/dist/compiler/schema/typeToJsonSchema.d.ts +49 -0
- package/dist/compiler/schema/typeToJsonSchema.d.ts.map +1 -0
- package/dist/compiler/validation/emitPrecompiledValidators.d.ts +46 -0
- package/dist/compiler/validation/emitPrecompiledValidators.d.ts.map +1 -0
- package/dist/decorators/Auth.d.ts +5 -0
- package/dist/decorators/Auth.d.ts.map +1 -0
- package/dist/decorators/Controller.d.ts +2 -0
- package/dist/decorators/Controller.d.ts.map +1 -0
- package/dist/decorators/Public.d.ts +2 -0
- package/dist/decorators/Public.d.ts.map +1 -0
- package/dist/decorators/Use.d.ts +5 -0
- package/dist/decorators/Use.d.ts.map +1 -0
- package/dist/decorators/index.d.ts +5 -6
- package/dist/decorators/index.d.ts.map +1 -1
- package/dist/decorators/methods.d.ts +5 -145
- package/dist/decorators/methods.d.ts.map +1 -1
- package/dist/express.cjs +775 -0
- package/dist/express.cjs.map +1 -0
- package/dist/express.d.ts +6 -1
- package/dist/express.d.ts.map +1 -1
- package/dist/express.js +738 -1
- package/dist/express.js.map +1 -1
- package/dist/http.d.ts +29 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/index.cjs +573 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +12 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +490 -26
- package/dist/index.js.map +1 -1
- package/dist/metal/index.cjs +219 -0
- package/dist/metal/index.cjs.map +1 -0
- package/dist/metal/index.d.ts +6 -0
- package/dist/metal/index.d.ts.map +1 -0
- package/dist/metal/index.js +188 -0
- package/dist/metal/index.js.map +1 -0
- package/dist/metal/readMetalBag.d.ts +33 -0
- package/dist/metal/readMetalBag.d.ts.map +1 -0
- package/dist/metal/registerMetalEntities.d.ts +6 -0
- package/dist/metal/registerMetalEntities.d.ts.map +1 -0
- package/dist/metal/schemaFromEntity.d.ts +11 -0
- package/dist/metal/schemaFromEntity.d.ts.map +1 -0
- package/dist/metal/symbolMetadata.d.ts +2 -0
- package/dist/metal/symbolMetadata.d.ts.map +1 -0
- package/dist/runtime/auth/runtime.d.ts +34 -0
- package/dist/runtime/auth/runtime.d.ts.map +1 -0
- package/dist/runtime/metadata/bucket.d.ts +3 -0
- package/dist/runtime/metadata/bucket.d.ts.map +1 -0
- package/dist/runtime/metadata/key.d.ts +2 -0
- package/dist/runtime/metadata/key.d.ts.map +1 -0
- package/dist/runtime/metadata/read.d.ts +3 -0
- package/dist/runtime/metadata/read.d.ts.map +1 -0
- package/dist/runtime/metadata/types.d.ts +21 -0
- package/dist/runtime/metadata/types.d.ts.map +1 -0
- package/dist/runtime/polyfill.d.ts +2 -0
- package/dist/runtime/polyfill.d.ts.map +1 -0
- package/dist/runtime/upload.d.ts +7 -0
- package/dist/runtime/upload.d.ts.map +1 -0
- package/dist/runtime/validation/ajv.d.ts +20 -0
- package/dist/runtime/validation/ajv.d.ts.map +1 -0
- package/dist/runtime/validation/index.d.ts +2 -0
- package/dist/runtime/validation/index.d.ts.map +1 -0
- package/dist/schema/decorators.d.ts +37 -0
- package/dist/schema/decorators.d.ts.map +1 -0
- package/dist/schema/index.cjs +214 -0
- package/dist/schema/index.cjs.map +1 -0
- package/dist/schema/index.d.ts +2 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +163 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/scripts/adorn-example.cjs +148 -0
- package/dist/scripts/adorn-example.cjs.map +1 -0
- package/dist/utils/operationId.d.ts +2 -0
- package/dist/utils/operationId.d.ts.map +1 -0
- package/dist/utils/path.d.ts +2 -0
- package/dist/utils/path.d.ts.map +1 -0
- package/package.json +92 -57
- package/dist/adapters/express/createApp.d.ts +0 -158
- package/dist/adapters/express/createApp.d.ts.map +0 -1
- package/dist/adapters/express/createApp.js +0 -141
- package/dist/adapters/express/createApp.js.map +0 -1
- package/dist/adapters/express/index.d.ts +0 -7
- package/dist/adapters/express/index.d.ts.map +0 -1
- package/dist/adapters/express/index.js +0 -7
- package/dist/adapters/express/index.js.map +0 -1
- package/dist/adapters/express/middleware/errorHandler.d.ts +0 -194
- package/dist/adapters/express/middleware/errorHandler.d.ts.map +0 -1
- package/dist/adapters/express/middleware/errorHandler.js +0 -167
- package/dist/adapters/express/middleware/errorHandler.js.map +0 -1
- package/dist/adapters/express/middleware/requestContext.d.ts +0 -2
- package/dist/adapters/express/middleware/requestContext.d.ts.map +0 -1
- package/dist/adapters/express/middleware/requestContext.js +0 -3
- package/dist/adapters/express/middleware/requestContext.js.map +0 -1
- package/dist/adapters/express/router.d.ts +0 -10
- package/dist/adapters/express/router.d.ts.map +0 -1
- package/dist/adapters/express/router.js +0 -105
- package/dist/adapters/express/router.js.map +0 -1
- package/dist/adapters/express/swagger/index.d.ts +0 -2
- package/dist/adapters/express/swagger/index.d.ts.map +0 -1
- package/dist/adapters/express/swagger/index.js +0 -2
- package/dist/adapters/express/swagger/index.js.map +0 -1
- package/dist/adapters/express/swagger/serve.d.ts +0 -12
- package/dist/adapters/express/swagger/serve.d.ts.map +0 -1
- package/dist/adapters/express/swagger/serve.js +0 -72
- package/dist/adapters/express/swagger/serve.js.map +0 -1
- package/dist/adapters/express/transport/request.d.ts +0 -4
- package/dist/adapters/express/transport/request.d.ts.map +0 -1
- package/dist/adapters/express/transport/request.js +0 -12
- package/dist/adapters/express/transport/request.js.map +0 -1
- package/dist/adapters/express/transport/response.d.ts +0 -5
- package/dist/adapters/express/transport/response.d.ts.map +0 -1
- package/dist/adapters/express/transport/response.js +0 -36
- package/dist/adapters/express/transport/response.js.map +0 -1
- package/dist/cli/commands/dev.d.ts +0 -2
- package/dist/cli/commands/dev.d.ts.map +0 -1
- package/dist/cli/commands/dev.js +0 -3
- package/dist/cli/commands/dev.js.map +0 -1
- package/dist/cli/commands/gen.d.ts +0 -2
- package/dist/cli/commands/gen.d.ts.map +0 -1
- package/dist/cli/commands/gen.js +0 -3
- package/dist/cli/commands/gen.js.map +0 -1
- package/dist/cli/main.d.ts +0 -2
- package/dist/cli/main.d.ts.map +0 -1
- package/dist/cli/main.js +0 -3
- package/dist/cli/main.js.map +0 -1
- package/dist/compiler/config/defaults.d.ts +0 -2
- package/dist/compiler/config/defaults.d.ts.map +0 -1
- package/dist/compiler/config/defaults.js +0 -3
- package/dist/compiler/config/defaults.js.map +0 -1
- package/dist/compiler/config/loadConfig.d.ts +0 -2
- package/dist/compiler/config/loadConfig.d.ts.map +0 -1
- package/dist/compiler/config/loadConfig.js +0 -3
- package/dist/compiler/config/loadConfig.js.map +0 -1
- package/dist/compiler/diagnostics/errors.d.ts +0 -2
- package/dist/compiler/diagnostics/errors.d.ts.map +0 -1
- package/dist/compiler/diagnostics/errors.js +0 -3
- package/dist/compiler/diagnostics/errors.js.map +0 -1
- package/dist/compiler/emit/openapi.d.ts +0 -2
- package/dist/compiler/emit/openapi.d.ts.map +0 -1
- package/dist/compiler/emit/openapi.js +0 -3
- package/dist/compiler/emit/openapi.js.map +0 -1
- package/dist/compiler/emit/routes.d.ts +0 -2
- package/dist/compiler/emit/routes.d.ts.map +0 -1
- package/dist/compiler/emit/routes.js +0 -3
- package/dist/compiler/emit/routes.js.map +0 -1
- package/dist/compiler/program/loadTsProgram.d.ts +0 -2
- package/dist/compiler/program/loadTsProgram.d.ts.map +0 -1
- package/dist/compiler/program/loadTsProgram.js +0 -3
- package/dist/compiler/program/loadTsProgram.js.map +0 -1
- package/dist/compiler/scan/actions.d.ts +0 -2
- package/dist/compiler/scan/actions.d.ts.map +0 -1
- package/dist/compiler/scan/actions.js +0 -3
- package/dist/compiler/scan/actions.js.map +0 -1
- package/dist/compiler/scan/controllers.d.ts +0 -2
- package/dist/compiler/scan/controllers.d.ts.map +0 -1
- package/dist/compiler/scan/controllers.js +0 -3
- package/dist/compiler/scan/controllers.js.map +0 -1
- package/dist/compiler/scan/types.d.ts +0 -2
- package/dist/compiler/scan/types.d.ts.map +0 -1
- package/dist/compiler/scan/types.js +0 -3
- package/dist/compiler/scan/types.js.map +0 -1
- package/dist/contracts/context.d.ts +0 -10
- package/dist/contracts/context.d.ts.map +0 -1
- package/dist/contracts/context.js +0 -2
- package/dist/contracts/context.js.map +0 -1
- package/dist/contracts/errors.d.ts +0 -22
- package/dist/contracts/errors.d.ts.map +0 -1
- package/dist/contracts/errors.js +0 -2
- package/dist/contracts/errors.js.map +0 -1
- package/dist/contracts/http.d.ts +0 -2
- package/dist/contracts/http.d.ts.map +0 -1
- package/dist/contracts/http.js +0 -3
- package/dist/contracts/http.js.map +0 -1
- package/dist/contracts/middleware.d.ts +0 -2
- package/dist/contracts/middleware.d.ts.map +0 -1
- package/dist/contracts/middleware.js +0 -3
- package/dist/contracts/middleware.js.map +0 -1
- package/dist/contracts/openapi-v3.d.ts +0 -538
- package/dist/contracts/openapi-v3.d.ts.map +0 -1
- package/dist/contracts/openapi-v3.js +0 -2
- package/dist/contracts/openapi-v3.js.map +0 -1
- package/dist/contracts/openapi.d.ts +0 -2
- package/dist/contracts/openapi.d.ts.map +0 -1
- package/dist/contracts/openapi.js +0 -2
- package/dist/contracts/openapi.js.map +0 -1
- package/dist/contracts/reply.d.ts +0 -119
- package/dist/contracts/reply.d.ts.map +0 -1
- package/dist/contracts/reply.js +0 -43
- package/dist/contracts/reply.js.map +0 -1
- package/dist/contracts/response-types.d.ts +0 -40
- package/dist/contracts/response-types.d.ts.map +0 -1
- package/dist/contracts/response-types.js +0 -2
- package/dist/contracts/response-types.js.map +0 -1
- package/dist/contracts/responses.d.ts +0 -98
- package/dist/contracts/responses.d.ts.map +0 -1
- package/dist/contracts/responses.js +0 -2
- package/dist/contracts/responses.js.map +0 -1
- package/dist/contracts/route-options.d.ts +0 -155
- package/dist/contracts/route-options.d.ts.map +0 -1
- package/dist/contracts/route-options.js +0 -2
- package/dist/contracts/route-options.js.map +0 -1
- package/dist/contracts/route-typing.d.ts +0 -25
- package/dist/contracts/route-typing.d.ts.map +0 -1
- package/dist/contracts/route-typing.js +0 -2
- package/dist/contracts/route-typing.js.map +0 -1
- package/dist/contracts/validator.d.ts +0 -146
- package/dist/contracts/validator.d.ts.map +0 -1
- package/dist/contracts/validator.js +0 -2
- package/dist/contracts/validator.js.map +0 -1
- package/dist/core/binding/binder.d.ts +0 -74
- package/dist/core/binding/binder.d.ts.map +0 -1
- package/dist/core/binding/binder.js +0 -161
- package/dist/core/binding/binder.js.map +0 -1
- package/dist/core/binding/coerce/arrays.d.ts +0 -7
- package/dist/core/binding/coerce/arrays.d.ts.map +0 -1
- package/dist/core/binding/coerce/arrays.js +0 -28
- package/dist/core/binding/coerce/arrays.js.map +0 -1
- package/dist/core/binding/coerce/csv.d.ts +0 -2
- package/dist/core/binding/coerce/csv.d.ts.map +0 -1
- package/dist/core/binding/coerce/csv.js +0 -7
- package/dist/core/binding/coerce/csv.js.map +0 -1
- package/dist/core/binding/coerce/objects.d.ts +0 -2
- package/dist/core/binding/coerce/objects.d.ts.map +0 -1
- package/dist/core/binding/coerce/objects.js +0 -3
- package/dist/core/binding/coerce/objects.js.map +0 -1
- package/dist/core/binding/coerce/primitives.d.ts +0 -70
- package/dist/core/binding/coerce/primitives.d.ts.map +0 -1
- package/dist/core/binding/coerce/primitives.js +0 -88
- package/dist/core/binding/coerce/primitives.js.map +0 -1
- package/dist/core/binding/index.d.ts +0 -2
- package/dist/core/binding/index.d.ts.map +0 -1
- package/dist/core/binding/index.js +0 -2
- package/dist/core/binding/index.js.map +0 -1
- package/dist/core/binding/rules/inferFromHttpMethod.d.ts +0 -6
- package/dist/core/binding/rules/inferFromHttpMethod.d.ts.map +0 -1
- package/dist/core/binding/rules/inferFromHttpMethod.js +0 -11
- package/dist/core/binding/rules/inferFromHttpMethod.js.map +0 -1
- package/dist/core/binding/rules/inferFromPath.d.ts +0 -2
- package/dist/core/binding/rules/inferFromPath.d.ts.map +0 -1
- package/dist/core/binding/rules/inferFromPath.js +0 -9
- package/dist/core/binding/rules/inferFromPath.js.map +0 -1
- package/dist/core/binding/rules/wrappers.d.ts +0 -2
- package/dist/core/binding/rules/wrappers.d.ts.map +0 -1
- package/dist/core/binding/rules/wrappers.js +0 -3
- package/dist/core/binding/rules/wrappers.js.map +0 -1
- package/dist/core/errors/http-error.d.ts +0 -63
- package/dist/core/errors/http-error.d.ts.map +0 -1
- package/dist/core/errors/http-error.js +0 -71
- package/dist/core/errors/http-error.js.map +0 -1
- package/dist/core/errors/index.d.ts +0 -4
- package/dist/core/errors/index.d.ts.map +0 -1
- package/dist/core/errors/index.js +0 -4
- package/dist/core/errors/index.js.map +0 -1
- package/dist/core/errors/problem.d.ts +0 -3
- package/dist/core/errors/problem.d.ts.map +0 -1
- package/dist/core/errors/problem.js +0 -33
- package/dist/core/errors/problem.js.map +0 -1
- package/dist/core/errors/validation-error.d.ts +0 -73
- package/dist/core/errors/validation-error.d.ts.map +0 -1
- package/dist/core/errors/validation-error.js +0 -82
- package/dist/core/errors/validation-error.js.map +0 -1
- package/dist/core/openapi/buildOpenApi.d.ts +0 -79
- package/dist/core/openapi/buildOpenApi.d.ts.map +0 -1
- package/dist/core/openapi/buildOpenApi.js +0 -196
- package/dist/core/openapi/buildOpenApi.js.map +0 -1
- package/dist/core/openapi/index.d.ts +0 -2
- package/dist/core/openapi/index.d.ts.map +0 -1
- package/dist/core/openapi/index.js +0 -2
- package/dist/core/openapi/index.js.map +0 -1
- package/dist/core/openapi/schema/formats.d.ts +0 -2
- package/dist/core/openapi/schema/formats.d.ts.map +0 -1
- package/dist/core/openapi/schema/formats.js +0 -3
- package/dist/core/openapi/schema/formats.js.map +0 -1
- package/dist/core/openapi/schema/registry.d.ts +0 -9
- package/dist/core/openapi/schema/registry.d.ts.map +0 -1
- package/dist/core/openapi/schema/registry.js +0 -21
- package/dist/core/openapi/schema/registry.js.map +0 -1
- package/dist/core/openapi/schema/schemaModel.d.ts +0 -2
- package/dist/core/openapi/schema/schemaModel.d.ts.map +0 -1
- package/dist/core/openapi/schema/schemaModel.js +0 -3
- package/dist/core/openapi/schema/schemaModel.js.map +0 -1
- package/dist/core/openapi/schema/schemaRegistry.d.ts +0 -2
- package/dist/core/openapi/schema/schemaRegistry.d.ts.map +0 -1
- package/dist/core/openapi/schema/schemaRegistry.js +0 -3
- package/dist/core/openapi/schema/schemaRegistry.js.map +0 -1
- package/dist/core/openapi/schema/toOpenApi.d.ts +0 -4
- package/dist/core/openapi/schema/toOpenApi.d.ts.map +0 -1
- package/dist/core/openapi/schema/toOpenApi.js +0 -82
- package/dist/core/openapi/schema/toOpenApi.js.map +0 -1
- package/dist/core/pipeline/compose.d.ts +0 -2
- package/dist/core/pipeline/compose.d.ts.map +0 -1
- package/dist/core/pipeline/compose.js +0 -3
- package/dist/core/pipeline/compose.js.map +0 -1
- package/dist/core/pipeline/errorMap.d.ts +0 -2
- package/dist/core/pipeline/errorMap.d.ts.map +0 -1
- package/dist/core/pipeline/errorMap.js +0 -3
- package/dist/core/pipeline/errorMap.js.map +0 -1
- package/dist/core/pipeline/invoke.d.ts +0 -2
- package/dist/core/pipeline/invoke.d.ts.map +0 -1
- package/dist/core/pipeline/invoke.js +0 -3
- package/dist/core/pipeline/invoke.js.map +0 -1
- package/dist/core/pipeline/result.d.ts +0 -2
- package/dist/core/pipeline/result.d.ts.map +0 -1
- package/dist/core/pipeline/result.js +0 -3
- package/dist/core/pipeline/result.js.map +0 -1
- package/dist/core/registry/buildRegistry.d.ts +0 -3
- package/dist/core/registry/buildRegistry.d.ts.map +0 -1
- package/dist/core/registry/buildRegistry.js +0 -105
- package/dist/core/registry/buildRegistry.js.map +0 -1
- package/dist/core/registry/conflicts.d.ts +0 -6
- package/dist/core/registry/conflicts.d.ts.map +0 -1
- package/dist/core/registry/conflicts.js +0 -21
- package/dist/core/registry/conflicts.js.map +0 -1
- package/dist/core/registry/index.d.ts +0 -5
- package/dist/core/registry/index.d.ts.map +0 -1
- package/dist/core/registry/index.js +0 -5
- package/dist/core/registry/index.js.map +0 -1
- package/dist/core/registry/normalize.d.ts +0 -3
- package/dist/core/registry/normalize.d.ts.map +0 -1
- package/dist/core/registry/normalize.js +0 -24
- package/dist/core/registry/normalize.js.map +0 -1
- package/dist/core/registry/types.d.ts +0 -225
- package/dist/core/registry/types.d.ts.map +0 -1
- package/dist/core/registry/types.js +0 -2
- package/dist/core/registry/types.js.map +0 -1
- package/dist/core/reply/index.d.ts +0 -3
- package/dist/core/reply/index.d.ts.map +0 -1
- package/dist/core/reply/index.js +0 -3
- package/dist/core/reply/index.js.map +0 -1
- package/dist/core/reply/reply.d.ts +0 -102
- package/dist/core/reply/reply.d.ts.map +0 -1
- package/dist/core/reply/reply.js +0 -105
- package/dist/core/reply/reply.js.map +0 -1
- package/dist/core/reply/typed.d.ts +0 -161
- package/dist/core/reply/typed.d.ts.map +0 -1
- package/dist/core/reply/typed.js +0 -154
- package/dist/core/reply/typed.js.map +0 -1
- package/dist/core/responses/helpers.d.ts +0 -10
- package/dist/core/responses/helpers.d.ts.map +0 -1
- package/dist/core/responses/helpers.js +0 -8
- package/dist/core/responses/helpers.js.map +0 -1
- package/dist/core/responses/index.d.ts +0 -4
- package/dist/core/responses/index.d.ts.map +0 -1
- package/dist/core/responses/index.js +0 -4
- package/dist/core/responses/index.js.map +0 -1
- package/dist/core/responses/normalize.d.ts +0 -3
- package/dist/core/responses/normalize.d.ts.map +0 -1
- package/dist/core/responses/normalize.js +0 -33
- package/dist/core/responses/normalize.js.map +0 -1
- package/dist/core/responses/pickStatus.d.ts +0 -3
- package/dist/core/responses/pickStatus.d.ts.map +0 -1
- package/dist/core/responses/pickStatus.js +0 -27
- package/dist/core/responses/pickStatus.js.map +0 -1
- package/dist/core/route/defineRoute.d.ts +0 -74
- package/dist/core/route/defineRoute.d.ts.map +0 -1
- package/dist/core/route/defineRoute.js +0 -59
- package/dist/core/route/defineRoute.js.map +0 -1
- package/dist/core/route/index.d.ts +0 -2
- package/dist/core/route/index.d.ts.map +0 -1
- package/dist/core/route/index.js +0 -2
- package/dist/core/route/index.js.map +0 -1
- package/dist/core/serialization/json.d.ts +0 -2
- package/dist/core/serialization/json.d.ts.map +0 -1
- package/dist/core/serialization/json.js +0 -3
- package/dist/core/serialization/json.js.map +0 -1
- package/dist/core/typing/path-params.d.ts +0 -2
- package/dist/core/typing/path-params.d.ts.map +0 -1
- package/dist/core/typing/path-params.js +0 -2
- package/dist/core/typing/path-params.js.map +0 -1
- package/dist/decorators/binding.d.ts +0 -9
- package/dist/decorators/binding.d.ts.map +0 -1
- package/dist/decorators/binding.js +0 -18
- package/dist/decorators/binding.js.map +0 -1
- package/dist/decorators/controller.d.ts +0 -6
- package/dist/decorators/controller.d.ts.map +0 -1
- package/dist/decorators/controller.js +0 -26
- package/dist/decorators/controller.js.map +0 -1
- package/dist/decorators/db.d.ts +0 -2
- package/dist/decorators/db.d.ts.map +0 -1
- package/dist/decorators/db.js +0 -3
- package/dist/decorators/db.js.map +0 -1
- package/dist/decorators/docs.d.ts +0 -8
- package/dist/decorators/docs.d.ts.map +0 -1
- package/dist/decorators/docs.js +0 -46
- package/dist/decorators/docs.js.map +0 -1
- package/dist/decorators/index.js +0 -7
- package/dist/decorators/index.js.map +0 -1
- package/dist/decorators/methods.js +0 -170
- package/dist/decorators/methods.js.map +0 -1
- package/dist/decorators/middleware.d.ts +0 -2
- package/dist/decorators/middleware.d.ts.map +0 -1
- package/dist/decorators/middleware.js +0 -3
- package/dist/decorators/middleware.js.map +0 -1
- package/dist/decorators/responses.d.ts +0 -7
- package/dist/decorators/responses.d.ts.map +0 -1
- package/dist/decorators/responses.js +0 -44
- package/dist/decorators/responses.js.map +0 -1
- package/dist/decorators/security.d.ts +0 -8
- package/dist/decorators/security.d.ts.map +0 -1
- package/dist/decorators/security.js +0 -39
- package/dist/decorators/security.js.map +0 -1
- package/dist/integrations/metal-orm/index.d.ts +0 -2
- package/dist/integrations/metal-orm/index.d.ts.map +0 -1
- package/dist/integrations/metal-orm/index.js +0 -2
- package/dist/integrations/metal-orm/index.js.map +0 -1
- package/dist/integrations/metal-orm/pagination/executePaged.d.ts +0 -2
- package/dist/integrations/metal-orm/pagination/executePaged.d.ts.map +0 -1
- package/dist/integrations/metal-orm/pagination/executePaged.js +0 -3
- package/dist/integrations/metal-orm/pagination/executePaged.js.map +0 -1
- package/dist/integrations/metal-orm/pagination/page.d.ts +0 -2
- package/dist/integrations/metal-orm/pagination/page.d.ts.map +0 -1
- package/dist/integrations/metal-orm/pagination/page.js +0 -3
- package/dist/integrations/metal-orm/pagination/page.js.map +0 -1
- package/dist/integrations/metal-orm/query/filters.d.ts +0 -2
- package/dist/integrations/metal-orm/query/filters.d.ts.map +0 -1
- package/dist/integrations/metal-orm/query/filters.js +0 -3
- package/dist/integrations/metal-orm/query/filters.js.map +0 -1
- package/dist/integrations/metal-orm/query/search.d.ts +0 -2
- package/dist/integrations/metal-orm/query/search.d.ts.map +0 -1
- package/dist/integrations/metal-orm/query/search.js +0 -3
- package/dist/integrations/metal-orm/query/search.js.map +0 -1
- package/dist/integrations/metal-orm/query/sort.d.ts +0 -2
- package/dist/integrations/metal-orm/query/sort.d.ts.map +0 -1
- package/dist/integrations/metal-orm/query/sort.js +0 -3
- package/dist/integrations/metal-orm/query/sort.js.map +0 -1
- package/dist/integrations/metal-orm/save-graph/helpers.d.ts +0 -2
- package/dist/integrations/metal-orm/save-graph/helpers.d.ts.map +0 -1
- package/dist/integrations/metal-orm/save-graph/helpers.js +0 -3
- package/dist/integrations/metal-orm/save-graph/helpers.js.map +0 -1
- package/dist/integrations/metal-orm/save-graph/types.d.ts +0 -2
- package/dist/integrations/metal-orm/save-graph/types.d.ts.map +0 -1
- package/dist/integrations/metal-orm/save-graph/types.js +0 -3
- package/dist/integrations/metal-orm/save-graph/types.js.map +0 -1
- package/dist/integrations/metal-orm/schema/column-map.d.ts +0 -96
- package/dist/integrations/metal-orm/schema/column-map.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/column-map.js +0 -207
- package/dist/integrations/metal-orm/schema/column-map.js.map +0 -1
- package/dist/integrations/metal-orm/schema/ddl.d.ts +0 -2
- package/dist/integrations/metal-orm/schema/ddl.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/ddl.js +0 -3
- package/dist/integrations/metal-orm/schema/ddl.js.map +0 -1
- package/dist/integrations/metal-orm/schema/dto.d.ts +0 -7
- package/dist/integrations/metal-orm/schema/dto.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/dto.js +0 -34
- package/dist/integrations/metal-orm/schema/dto.js.map +0 -1
- package/dist/integrations/metal-orm/schema/entity.d.ts +0 -99
- package/dist/integrations/metal-orm/schema/entity.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/entity.js +0 -99
- package/dist/integrations/metal-orm/schema/entity.js.map +0 -1
- package/dist/integrations/metal-orm/schema/filters.d.ts +0 -11
- package/dist/integrations/metal-orm/schema/filters.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/filters.js +0 -21
- package/dist/integrations/metal-orm/schema/filters.js.map +0 -1
- package/dist/integrations/metal-orm/schema/index.d.ts +0 -5
- package/dist/integrations/metal-orm/schema/index.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/index.js +0 -5
- package/dist/integrations/metal-orm/schema/index.js.map +0 -1
- package/dist/integrations/metal-orm/schema/openapi/entityToSchema.d.ts +0 -2
- package/dist/integrations/metal-orm/schema/openapi/entityToSchema.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/openapi/entityToSchema.js +0 -3
- package/dist/integrations/metal-orm/schema/openapi/entityToSchema.js.map +0 -1
- package/dist/integrations/metal-orm/schema/openapi/tableDefToSchema.d.ts +0 -2
- package/dist/integrations/metal-orm/schema/openapi/tableDefToSchema.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/openapi/tableDefToSchema.js +0 -3
- package/dist/integrations/metal-orm/schema/openapi/tableDefToSchema.js.map +0 -1
- package/dist/integrations/metal-orm/schema/sqlite.d.ts +0 -2
- package/dist/integrations/metal-orm/schema/sqlite.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/sqlite.js +0 -3
- package/dist/integrations/metal-orm/schema/sqlite.js.map +0 -1
- package/dist/integrations/metal-orm/schema/tabledef.d.ts +0 -4
- package/dist/integrations/metal-orm/schema/tabledef.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/tabledef.js +0 -10
- package/dist/integrations/metal-orm/schema/tabledef.js.map +0 -1
- package/dist/integrations/metal-orm/schema/types.d.ts +0 -7
- package/dist/integrations/metal-orm/schema/types.d.ts.map +0 -1
- package/dist/integrations/metal-orm/schema/types.js +0 -2
- package/dist/integrations/metal-orm/schema/types.js.map +0 -1
- package/dist/integrations/metal-orm/serialization/entitySerializer.d.ts +0 -2
- package/dist/integrations/metal-orm/serialization/entitySerializer.d.ts.map +0 -1
- package/dist/integrations/metal-orm/serialization/entitySerializer.js +0 -3
- package/dist/integrations/metal-orm/serialization/entitySerializer.js.map +0 -1
- package/dist/integrations/metal-orm/serialization/relationPolicy.d.ts +0 -2
- package/dist/integrations/metal-orm/serialization/relationPolicy.d.ts.map +0 -1
- package/dist/integrations/metal-orm/serialization/relationPolicy.js +0 -3
- package/dist/integrations/metal-orm/serialization/relationPolicy.js.map +0 -1
- package/dist/integrations/metal-orm/session/context.d.ts +0 -2
- package/dist/integrations/metal-orm/session/context.d.ts.map +0 -1
- package/dist/integrations/metal-orm/session/context.js +0 -3
- package/dist/integrations/metal-orm/session/context.js.map +0 -1
- package/dist/integrations/metal-orm/session/middleware.d.ts +0 -2
- package/dist/integrations/metal-orm/session/middleware.d.ts.map +0 -1
- package/dist/integrations/metal-orm/session/middleware.js +0 -3
- package/dist/integrations/metal-orm/session/middleware.js.map +0 -1
- package/dist/integrations/metal-orm/session/transaction.d.ts +0 -2
- package/dist/integrations/metal-orm/session/transaction.d.ts.map +0 -1
- package/dist/integrations/metal-orm/session/transaction.js +0 -3
- package/dist/integrations/metal-orm/session/transaction.js.map +0 -1
- package/dist/integrations/metal-orm/testing/setupSchema.d.ts +0 -2
- package/dist/integrations/metal-orm/testing/setupSchema.d.ts.map +0 -1
- package/dist/integrations/metal-orm/testing/setupSchema.js +0 -3
- package/dist/integrations/metal-orm/testing/setupSchema.js.map +0 -1
- package/dist/integrations/metal-orm/testing/sqliteMemory.d.ts +0 -2
- package/dist/integrations/metal-orm/testing/sqliteMemory.d.ts.map +0 -1
- package/dist/integrations/metal-orm/testing/sqliteMemory.js +0 -3
- package/dist/integrations/metal-orm/testing/sqliteMemory.js.map +0 -1
- package/dist/metadata/bag.d.ts +0 -18
- package/dist/metadata/bag.d.ts.map +0 -1
- package/dist/metadata/bag.js +0 -39
- package/dist/metadata/bag.js.map +0 -1
- package/dist/metadata/index.d.ts +0 -4
- package/dist/metadata/index.d.ts.map +0 -1
- package/dist/metadata/index.js +0 -4
- package/dist/metadata/index.js.map +0 -1
- package/dist/metadata/keys.d.ts +0 -254
- package/dist/metadata/keys.d.ts.map +0 -1
- package/dist/metadata/keys.js +0 -23
- package/dist/metadata/keys.js.map +0 -1
- package/dist/metadata/merge.d.ts +0 -9
- package/dist/metadata/merge.d.ts.map +0 -1
- package/dist/metadata/merge.js +0 -30
- package/dist/metadata/merge.js.map +0 -1
- package/dist/metal-orm.d.ts +0 -2
- package/dist/metal-orm.d.ts.map +0 -1
- package/dist/metal-orm.js +0 -2
- package/dist/metal-orm.js.map +0 -1
- package/dist/validation/native/index.d.ts +0 -3
- package/dist/validation/native/index.d.ts.map +0 -1
- package/dist/validation/native/index.js +0 -3
- package/dist/validation/native/index.js.map +0 -1
- package/dist/validation/native/ir.d.ts +0 -38
- package/dist/validation/native/ir.d.ts.map +0 -1
- package/dist/validation/native/ir.js +0 -2
- package/dist/validation/native/ir.js.map +0 -1
- package/dist/validation/native/schema.d.ts +0 -63
- package/dist/validation/native/schema.d.ts.map +0 -1
- package/dist/validation/native/schema.js +0 -271
- package/dist/validation/native/schema.js.map +0 -1
- package/dist/validation/native/validator.d.ts +0 -21
- package/dist/validation/native/validator.d.ts.map +0 -1
- package/dist/validation/native/validator.js +0 -48
- package/dist/validation/native/validator.js.map +0 -1
|
@@ -1,538 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Complete OpenAPI 3.0.3 document structure.
|
|
3
|
-
*
|
|
4
|
-
* This type represents the root OpenAPI document that contains
|
|
5
|
-
* all API metadata, paths, operations, and components.
|
|
6
|
-
*
|
|
7
|
-
* @see https://spec.openapis.org/oas/v3.0.3
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* ```typescript
|
|
11
|
-
* const openApiDoc: OpenApiDocument = {
|
|
12
|
-
* openapi: '3.0.3',
|
|
13
|
-
* info: {
|
|
14
|
-
* title: 'My API',
|
|
15
|
-
* version: '1.0.0',
|
|
16
|
-
* description: 'API for user management'
|
|
17
|
-
* },
|
|
18
|
-
* servers: [
|
|
19
|
-
* { url: 'https://api.example.com/v1', description: 'Production server' }
|
|
20
|
-
* ],
|
|
21
|
-
* paths: {
|
|
22
|
-
* '/users': {
|
|
23
|
-
* get: {
|
|
24
|
-
* summary: 'List users',
|
|
25
|
-
* responses: {
|
|
26
|
-
* '200': { description: 'List of users' }
|
|
27
|
-
* }
|
|
28
|
-
* }
|
|
29
|
-
* }
|
|
30
|
-
* },
|
|
31
|
-
* components: {
|
|
32
|
-
* schemas: {
|
|
33
|
-
* User: {
|
|
34
|
-
* type: 'object',
|
|
35
|
-
* properties: {
|
|
36
|
-
* id: { type: 'string', format: 'uuid' },
|
|
37
|
-
* name: { type: 'string' }
|
|
38
|
-
* }
|
|
39
|
-
* }
|
|
40
|
-
* }
|
|
41
|
-
* }
|
|
42
|
-
* };
|
|
43
|
-
* ```
|
|
44
|
-
*/
|
|
45
|
-
export type OpenApiDocument = {
|
|
46
|
-
/** OpenAPI specification version */
|
|
47
|
-
openapi: '3.0.3' | (string & {});
|
|
48
|
-
/** API metadata including title, version, and description */
|
|
49
|
-
info: {
|
|
50
|
-
title: string;
|
|
51
|
-
version: string;
|
|
52
|
-
description?: string;
|
|
53
|
-
};
|
|
54
|
-
/** Array of server objects */
|
|
55
|
-
servers?: Array<{
|
|
56
|
-
url: string;
|
|
57
|
-
description?: string;
|
|
58
|
-
}>;
|
|
59
|
-
/** Paths and operations */
|
|
60
|
-
paths: Record<string, PathItemObject>;
|
|
61
|
-
/** Reusable components */
|
|
62
|
-
components?: ComponentsObject;
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* Reusable components for OpenAPI specification.
|
|
66
|
-
*
|
|
67
|
-
* Contains schemas, security schemes, and other reusable
|
|
68
|
-
* components that can be referenced throughout the document.
|
|
69
|
-
*
|
|
70
|
-
* @example
|
|
71
|
-
* ```typescript
|
|
72
|
-
* const components: ComponentsObject = {
|
|
73
|
-
* schemas: {
|
|
74
|
-
* User: {
|
|
75
|
-
* type: 'object',
|
|
76
|
-
* properties: {
|
|
77
|
-
* id: { type: 'string', format: 'uuid' },
|
|
78
|
-
* name: { type: 'string' }
|
|
79
|
-
* }
|
|
80
|
-
* }
|
|
81
|
-
* },
|
|
82
|
-
* securitySchemes: {
|
|
83
|
-
* bearerAuth: {
|
|
84
|
-
* type: 'http',
|
|
85
|
-
* scheme: 'bearer',
|
|
86
|
-
* bearerFormat: 'JWT'
|
|
87
|
-
* }
|
|
88
|
-
* }
|
|
89
|
-
* };
|
|
90
|
-
* ```
|
|
91
|
-
*/
|
|
92
|
-
export type ComponentsObject = {
|
|
93
|
-
/** Reusable schema definitions */
|
|
94
|
-
schemas?: Record<string, SchemaObject>;
|
|
95
|
-
/** Security scheme definitions */
|
|
96
|
-
securitySchemes?: Record<string, SecuritySchemeObject>;
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* Path item containing HTTP method operations.
|
|
100
|
-
*
|
|
101
|
-
* Maps HTTP methods to their corresponding operation objects
|
|
102
|
-
* for a specific path.
|
|
103
|
-
*
|
|
104
|
-
* @example
|
|
105
|
-
* ```typescript
|
|
106
|
-
* const pathItem: PathItemObject = {
|
|
107
|
-
* get: {
|
|
108
|
-
* summary: 'Get user',
|
|
109
|
-
* responses: { '200': { description: 'User found' } }
|
|
110
|
-
* },
|
|
111
|
-
* post: {
|
|
112
|
-
* summary: 'Create user',
|
|
113
|
-
* responses: { '201': { description: 'User created' } }
|
|
114
|
-
* }
|
|
115
|
-
* };
|
|
116
|
-
* ```
|
|
117
|
-
*/
|
|
118
|
-
export type PathItemObject = Partial<Record<HttpMethod, OperationObject>>;
|
|
119
|
-
/**
|
|
120
|
-
* HTTP methods supported by OpenAPI.
|
|
121
|
-
*
|
|
122
|
-
* Standard HTTP methods that can be used in path items.
|
|
123
|
-
*/
|
|
124
|
-
export type HttpMethod = 'get' | 'put' | 'post' | 'delete' | 'patch' | 'options' | 'head';
|
|
125
|
-
/**
|
|
126
|
-
* Operation object describing an API endpoint.
|
|
127
|
-
*
|
|
128
|
-
* Contains all information about a single API operation
|
|
129
|
-
* including parameters, request body, responses, and security.
|
|
130
|
-
*
|
|
131
|
-
* @example
|
|
132
|
-
* ```typescript
|
|
133
|
-
* const operation: OperationObject = {
|
|
134
|
-
* operationId: 'getUserById',
|
|
135
|
-
* summary: 'Get user by ID',
|
|
136
|
-
* description: 'Retrieves a user by their unique identifier',
|
|
137
|
-
* tags: ['Users'],
|
|
138
|
-
* deprecated: false,
|
|
139
|
-
* security: [{ bearerAuth: [] }],
|
|
140
|
-
* parameters: [
|
|
141
|
-
* {
|
|
142
|
-
* name: 'id',
|
|
143
|
-
* in: 'path',
|
|
144
|
-
* required: true,
|
|
145
|
-
* schema: { type: 'string', format: 'uuid' }
|
|
146
|
-
* }
|
|
147
|
-
* ],
|
|
148
|
-
* responses: {
|
|
149
|
-
* '200': {
|
|
150
|
-
* description: 'User found',
|
|
151
|
-
* content: {
|
|
152
|
-
* 'application/json': {
|
|
153
|
-
* schema: { $ref: '#/components/schemas/User' }
|
|
154
|
-
* }
|
|
155
|
-
* }
|
|
156
|
-
* },
|
|
157
|
-
* '404': { description: 'User not found' }
|
|
158
|
-
* }
|
|
159
|
-
* };
|
|
160
|
-
* ```
|
|
161
|
-
*/
|
|
162
|
-
export type OperationObject = {
|
|
163
|
-
/** Unique identifier for the operation */
|
|
164
|
-
operationId?: string;
|
|
165
|
-
/** Short summary of the operation */
|
|
166
|
-
summary?: string;
|
|
167
|
-
/** Detailed description of the operation */
|
|
168
|
-
description?: string;
|
|
169
|
-
/** Tags for grouping operations */
|
|
170
|
-
tags?: string[];
|
|
171
|
-
/** Whether the operation is deprecated */
|
|
172
|
-
deprecated?: boolean;
|
|
173
|
-
/** Security requirements */
|
|
174
|
-
security?: SecurityRequirementObject[];
|
|
175
|
-
/** Parameters for the operation */
|
|
176
|
-
parameters?: ParameterObject[];
|
|
177
|
-
/** Request body specification */
|
|
178
|
-
requestBody?: RequestBodyObject;
|
|
179
|
-
/** Responses by status code */
|
|
180
|
-
responses: Record<string, ResponseObject>;
|
|
181
|
-
};
|
|
182
|
-
/**
|
|
183
|
-
* Parameter object for operation parameters.
|
|
184
|
-
*
|
|
185
|
-
* Describes a single parameter that can be passed
|
|
186
|
-
* in path, query, header, or cookie.
|
|
187
|
-
*
|
|
188
|
-
* @example
|
|
189
|
-
* ```typescript
|
|
190
|
-
* // Path parameter
|
|
191
|
-
* const pathParam: ParameterObject = {
|
|
192
|
-
* name: 'id',
|
|
193
|
-
* in: 'path',
|
|
194
|
-
* required: true,
|
|
195
|
-
* schema: { type: 'string', format: 'uuid' }
|
|
196
|
-
* };
|
|
197
|
-
*
|
|
198
|
-
* // Query parameter
|
|
199
|
-
* const queryParam: ParameterObject = {
|
|
200
|
-
* name: 'limit',
|
|
201
|
-
* in: 'query',
|
|
202
|
-
* required: false,
|
|
203
|
-
* schema: { type: 'integer', minimum: 1, maximum: 100 }
|
|
204
|
-
* };
|
|
205
|
-
*
|
|
206
|
-
* // Header parameter
|
|
207
|
-
* const headerParam: ParameterObject = {
|
|
208
|
-
* name: 'X-Request-ID',
|
|
209
|
-
* in: 'header',
|
|
210
|
-
* required: false,
|
|
211
|
-
* schema: { type: 'string' }
|
|
212
|
-
* };
|
|
213
|
-
* ```
|
|
214
|
-
*/
|
|
215
|
-
export type ParameterObject = {
|
|
216
|
-
/** Parameter name */
|
|
217
|
-
name: string;
|
|
218
|
-
/** Parameter location */
|
|
219
|
-
in: 'path' | 'query' | 'header' | 'cookie';
|
|
220
|
-
/** Whether parameter is required */
|
|
221
|
-
required?: boolean;
|
|
222
|
-
/** Parameter schema or reference */
|
|
223
|
-
schema?: SchemaObject | ReferenceObject;
|
|
224
|
-
};
|
|
225
|
-
/**
|
|
226
|
-
* Request body object for operation input.
|
|
227
|
-
*
|
|
228
|
-
* Describes the request body including content types
|
|
229
|
-
* and schemas for different media types.
|
|
230
|
-
*
|
|
231
|
-
* @example
|
|
232
|
-
* ```typescript
|
|
233
|
-
* const requestBody: RequestBodyObject = {
|
|
234
|
-
* required: true,
|
|
235
|
-
* content: {
|
|
236
|
-
* 'application/json': {
|
|
237
|
-
* schema: {
|
|
238
|
-
* type: 'object',
|
|
239
|
-
* properties: {
|
|
240
|
-
* name: { type: 'string' },
|
|
241
|
-
* email: { type: 'string', format: 'email' }
|
|
242
|
-
* },
|
|
243
|
-
* required: ['name', 'email']
|
|
244
|
-
* }
|
|
245
|
-
* },
|
|
246
|
-
* 'application/xml': {
|
|
247
|
-
* schema: { type: 'string' }
|
|
248
|
-
* }
|
|
249
|
-
* }
|
|
250
|
-
* };
|
|
251
|
-
* ```
|
|
252
|
-
*/
|
|
253
|
-
export type RequestBodyObject = {
|
|
254
|
-
/** Whether request body is required */
|
|
255
|
-
required?: boolean;
|
|
256
|
-
/** Content by media type */
|
|
257
|
-
content: Record<string, MediaTypeObject>;
|
|
258
|
-
};
|
|
259
|
-
/**
|
|
260
|
-
* Response object for operation outputs.
|
|
261
|
-
*
|
|
262
|
-
* Describes a single response including status code,
|
|
263
|
-
* headers, and content for different media types.
|
|
264
|
-
*
|
|
265
|
-
* @example
|
|
266
|
-
* ```typescript
|
|
267
|
-
* const response: ResponseObject = {
|
|
268
|
-
* description: 'User created successfully',
|
|
269
|
-
* headers: {
|
|
270
|
-
* 'Location': {
|
|
271
|
-
* description: 'URL of the created user',
|
|
272
|
-
* schema: { type: 'string', format: 'uri' }
|
|
273
|
-
* }
|
|
274
|
-
* },
|
|
275
|
-
* content: {
|
|
276
|
-
* 'application/json': {
|
|
277
|
-
* schema: { $ref: '#/components/schemas/User' },
|
|
278
|
-
* example: {
|
|
279
|
-
* id: '550e8400-e29b-41d4-a716-446655440000',
|
|
280
|
-
* name: 'John Doe',
|
|
281
|
-
* email: 'john@example.com'
|
|
282
|
-
* }
|
|
283
|
-
* }
|
|
284
|
-
* }
|
|
285
|
-
* };
|
|
286
|
-
* ```
|
|
287
|
-
*/
|
|
288
|
-
export type ResponseObject = {
|
|
289
|
-
/** Response description */
|
|
290
|
-
description: string;
|
|
291
|
-
/** Response headers */
|
|
292
|
-
headers?: Record<string, HeaderObject>;
|
|
293
|
-
/** Response content by media type */
|
|
294
|
-
content?: Record<string, MediaTypeObject>;
|
|
295
|
-
};
|
|
296
|
-
/**
|
|
297
|
-
* Header object for response headers.
|
|
298
|
-
*
|
|
299
|
-
* Describes a single response header including
|
|
300
|
-
* its schema and whether it's required.
|
|
301
|
-
*
|
|
302
|
-
* @example
|
|
303
|
-
* ```typescript
|
|
304
|
-
* const header: HeaderObject = {
|
|
305
|
-
* required: true,
|
|
306
|
-
* description: 'Unique request identifier',
|
|
307
|
-
* schema: { type: 'string', format: 'uuid' }
|
|
308
|
-
* };
|
|
309
|
-
* ```
|
|
310
|
-
*/
|
|
311
|
-
export type HeaderObject = {
|
|
312
|
-
/** Whether header is required */
|
|
313
|
-
required?: boolean;
|
|
314
|
-
/** Header description */
|
|
315
|
-
description?: string;
|
|
316
|
-
/** Header schema or reference */
|
|
317
|
-
schema?: SchemaObject | ReferenceObject;
|
|
318
|
-
};
|
|
319
|
-
/**
|
|
320
|
-
* Media type object for request/response content.
|
|
321
|
-
*
|
|
322
|
-
* Describes the structure and examples for
|
|
323
|
-
* a specific media type.
|
|
324
|
-
*
|
|
325
|
-
* @example
|
|
326
|
-
* ```typescript
|
|
327
|
-
* const mediaType: MediaTypeObject = {
|
|
328
|
-
* schema: {
|
|
329
|
-
* type: 'object',
|
|
330
|
-
* properties: {
|
|
331
|
-
* id: { type: 'string', format: 'uuid' },
|
|
332
|
-
* name: { type: 'string' }
|
|
333
|
-
* }
|
|
334
|
-
* },
|
|
335
|
-
* example: {
|
|
336
|
-
* id: '550e8400-e29b-41d4-a716-446655440000',
|
|
337
|
-
* name: 'John Doe'
|
|
338
|
-
* }
|
|
339
|
-
* };
|
|
340
|
-
* ```
|
|
341
|
-
*/
|
|
342
|
-
export type MediaTypeObject = {
|
|
343
|
-
/** Media type schema or reference */
|
|
344
|
-
schema?: SchemaObject | ReferenceObject;
|
|
345
|
-
/** Example value */
|
|
346
|
-
example?: unknown;
|
|
347
|
-
};
|
|
348
|
-
/**
|
|
349
|
-
* Reference object for reusable components.
|
|
350
|
-
*
|
|
351
|
-
* Allows referencing other parts of the OpenAPI
|
|
352
|
-
* document using JSON references.
|
|
353
|
-
*
|
|
354
|
-
* @example
|
|
355
|
-
* ```typescript
|
|
356
|
-
* // Reference to a schema component
|
|
357
|
-
* const schemaRef: ReferenceObject = {
|
|
358
|
-
* $ref: '#/components/schemas/User'
|
|
359
|
-
* };
|
|
360
|
-
*
|
|
361
|
-
* // Reference to a security scheme
|
|
362
|
-
* const securityRef: ReferenceObject = {
|
|
363
|
-
* $ref: '#/components/securitySchemes/bearerAuth'
|
|
364
|
-
* };
|
|
365
|
-
* ```
|
|
366
|
-
*/
|
|
367
|
-
export type ReferenceObject = {
|
|
368
|
-
/** JSON reference to another component */
|
|
369
|
-
$ref: string;
|
|
370
|
-
};
|
|
371
|
-
/**
|
|
372
|
-
* Security requirement object.
|
|
373
|
-
*
|
|
374
|
-
* Specifies which security schemes are required
|
|
375
|
-
* for an operation.
|
|
376
|
-
*
|
|
377
|
-
* @example
|
|
378
|
-
* ```typescript
|
|
379
|
-
* // Bearer token security requirement
|
|
380
|
-
* const securityReq: SecurityRequirementObject = {
|
|
381
|
-
* bearerAuth: []
|
|
382
|
-
* };
|
|
383
|
-
*
|
|
384
|
-
* // Multiple security schemes (OR relationship)
|
|
385
|
-
* const multiSecurityReq: SecurityRequirementObject = {
|
|
386
|
-
* bearerAuth: [],
|
|
387
|
-
* apiKey: []
|
|
388
|
-
* };
|
|
389
|
-
*
|
|
390
|
-
* // Security scheme with scopes (OAuth2)
|
|
391
|
-
* const oauthSecurityReq: SecurityRequirementObject = {
|
|
392
|
-
* oauth2: ['read', 'write']
|
|
393
|
-
* };
|
|
394
|
-
* ```
|
|
395
|
-
*/
|
|
396
|
-
export type SecurityRequirementObject = Record<string, string[]>;
|
|
397
|
-
/**
|
|
398
|
-
* Security scheme object.
|
|
399
|
-
*
|
|
400
|
-
* Defines authentication/authorization schemes
|
|
401
|
-
* that can be used by operations.
|
|
402
|
-
*
|
|
403
|
-
* @example
|
|
404
|
-
* ```typescript
|
|
405
|
-
* // Bearer token security scheme
|
|
406
|
-
* const bearerScheme: SecuritySchemeObject = {
|
|
407
|
-
* type: 'http',
|
|
408
|
-
* scheme: 'bearer',
|
|
409
|
-
* bearerFormat: 'JWT',
|
|
410
|
-
* description: 'Bearer token authentication'
|
|
411
|
-
* };
|
|
412
|
-
*
|
|
413
|
-
* // API key security scheme
|
|
414
|
-
* const apiKeyScheme: SecuritySchemeObject = {
|
|
415
|
-
* type: 'apiKey',
|
|
416
|
-
* name: 'X-API-Key',
|
|
417
|
-
* in: 'header',
|
|
418
|
-
* description: 'API key authentication'
|
|
419
|
-
* };
|
|
420
|
-
*
|
|
421
|
-
* // OAuth2 security scheme
|
|
422
|
-
* const oauthScheme: SecuritySchemeObject = {
|
|
423
|
-
* type: 'oauth2',
|
|
424
|
-
* flows: {
|
|
425
|
-
* authorizationCode: {
|
|
426
|
-
* authorizationUrl: 'https://auth.example.com/authorize',
|
|
427
|
-
* tokenUrl: 'https://auth.example.com/token',
|
|
428
|
-
* scopes: {
|
|
429
|
-
* read: 'Read access',
|
|
430
|
-
* write: 'Write access'
|
|
431
|
-
* }
|
|
432
|
-
* }
|
|
433
|
-
* }
|
|
434
|
-
* };
|
|
435
|
-
* ```
|
|
436
|
-
*/
|
|
437
|
-
export type SecuritySchemeObject = {
|
|
438
|
-
/** Type of security scheme */
|
|
439
|
-
type: 'apiKey' | 'http' | 'oauth2' | 'openIdConnect';
|
|
440
|
-
/** Description of the security scheme */
|
|
441
|
-
description?: string;
|
|
442
|
-
/** Name of the header, query, or cookie parameter */
|
|
443
|
-
name?: string;
|
|
444
|
-
/** Location of the API key */
|
|
445
|
-
in?: 'query' | 'header' | 'cookie';
|
|
446
|
-
/** HTTP scheme (for type: http) */
|
|
447
|
-
scheme?: string;
|
|
448
|
-
/** Bearer format (for type: http with bearer scheme) */
|
|
449
|
-
bearerFormat?: string;
|
|
450
|
-
/** OAuth2 flows */
|
|
451
|
-
flows?: Record<string, unknown>;
|
|
452
|
-
/** OpenID Connect URL */
|
|
453
|
-
openIdConnectUrl?: string;
|
|
454
|
-
};
|
|
455
|
-
/**
|
|
456
|
-
* Schema object for data structure definition.
|
|
457
|
-
*
|
|
458
|
-
* Defines the structure, validation, and constraints
|
|
459
|
-
* for data used in parameters, request bodies, and responses.
|
|
460
|
-
*
|
|
461
|
-
* @example
|
|
462
|
-
* ```typescript
|
|
463
|
-
* // Simple object schema
|
|
464
|
-
* const userSchema: SchemaObject = {
|
|
465
|
-
* type: 'object',
|
|
466
|
-
* properties: {
|
|
467
|
-
* id: { type: 'string', format: 'uuid' },
|
|
468
|
-
* name: { type: 'string', minLength: 3 },
|
|
469
|
-
* email: { type: 'string', format: 'email' },
|
|
470
|
-
* age: { type: 'integer', minimum: 18 }
|
|
471
|
-
* },
|
|
472
|
-
* required: ['name', 'email']
|
|
473
|
-
* };
|
|
474
|
-
*
|
|
475
|
-
* // Array schema
|
|
476
|
-
* const usersArraySchema: SchemaObject = {
|
|
477
|
-
* type: 'array',
|
|
478
|
-
* items: { $ref: '#/components/schemas/User' },
|
|
479
|
-
* minItems: 1,
|
|
480
|
-
* maxItems: 100
|
|
481
|
-
* };
|
|
482
|
-
*
|
|
483
|
-
* // String with validation
|
|
484
|
-
* const usernameSchema: SchemaObject = {
|
|
485
|
-
* type: 'string',
|
|
486
|
-
* minLength: 3,
|
|
487
|
-
* maxLength: 32,
|
|
488
|
-
* pattern: '^[a-zA-Z0-9_]+$'
|
|
489
|
-
* };
|
|
490
|
-
*
|
|
491
|
-
* // Union schema
|
|
492
|
-
* const resultSchema: SchemaObject = {
|
|
493
|
-
* anyOf: [
|
|
494
|
-
* { $ref: '#/components/schemas/User' },
|
|
495
|
-
* { $ref: '#/components/schemas/Error' }
|
|
496
|
-
* ]
|
|
497
|
-
* };
|
|
498
|
-
* ```
|
|
499
|
-
*/
|
|
500
|
-
export type SchemaObject = {
|
|
501
|
-
/** Data type */
|
|
502
|
-
type?: 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object';
|
|
503
|
-
/** Format for primitive types */
|
|
504
|
-
format?: string;
|
|
505
|
-
/** Whether value can be null */
|
|
506
|
-
nullable?: boolean;
|
|
507
|
-
/** Minimum length for strings */
|
|
508
|
-
minLength?: number;
|
|
509
|
-
/** Maximum length for strings */
|
|
510
|
-
maxLength?: number;
|
|
511
|
-
/** Regular expression pattern for strings */
|
|
512
|
-
pattern?: string;
|
|
513
|
-
/** Minimum value for numbers */
|
|
514
|
-
minimum?: number;
|
|
515
|
-
/** Maximum value for numbers */
|
|
516
|
-
maximum?: number;
|
|
517
|
-
/** Minimum number of items for arrays */
|
|
518
|
-
minItems?: number;
|
|
519
|
-
/** Maximum number of items for arrays */
|
|
520
|
-
maxItems?: number;
|
|
521
|
-
/** Object properties */
|
|
522
|
-
properties?: Record<string, SchemaObject | ReferenceObject>;
|
|
523
|
-
/** Required properties */
|
|
524
|
-
required?: string[];
|
|
525
|
-
/** Additional properties policy */
|
|
526
|
-
additionalProperties?: boolean | SchemaObject | ReferenceObject;
|
|
527
|
-
/** Array items schema */
|
|
528
|
-
items?: SchemaObject | ReferenceObject;
|
|
529
|
-
/** Enum values */
|
|
530
|
-
enum?: Array<string | number | boolean | null>;
|
|
531
|
-
/** Any of the schemas (logical OR) */
|
|
532
|
-
anyOf?: Array<SchemaObject | ReferenceObject>;
|
|
533
|
-
/** One of the schemas (exclusive OR) */
|
|
534
|
-
oneOf?: Array<SchemaObject | ReferenceObject>;
|
|
535
|
-
/** All of the schemas (logical AND) */
|
|
536
|
-
allOf?: Array<SchemaObject | ReferenceObject>;
|
|
537
|
-
};
|
|
538
|
-
//# sourceMappingURL=openapi-v3.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-v3.d.ts","sourceRoot":"","sources":["../../src/contracts/openapi-v3.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openapi-v3.js","sourceRoot":"","sources":["../../src/contracts/openapi-v3.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/contracts/openapi.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/contracts/openapi.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Valid types for HTTP response headers.
|
|
3
|
-
*/
|
|
4
|
-
export type ReplyHeaderValue = string | number | boolean;
|
|
5
|
-
/**
|
|
6
|
-
* Collection of HTTP response headers.
|
|
7
|
-
*
|
|
8
|
-
* Key-value pairs where keys are header names and values are
|
|
9
|
-
* header values of valid types.
|
|
10
|
-
*
|
|
11
|
-
* @example
|
|
12
|
-
* ```typescript
|
|
13
|
-
* const headers: ReplyHeaders = {
|
|
14
|
-
* 'Content-Type': 'application/json',
|
|
15
|
-
* 'Cache-Control': 'no-cache',
|
|
16
|
-
* 'X-Request-ID': 'abc-123-def'
|
|
17
|
-
* };
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
20
|
-
export type ReplyHeaders = Record<string, ReplyHeaderValue>;
|
|
21
|
-
/**
|
|
22
|
-
* Typed HTTP response object used by Adorn API.
|
|
23
|
-
*
|
|
24
|
-
* This type represents a complete HTTP response with status code,
|
|
25
|
-
* body, headers, and content type. It's used throughout the framework
|
|
26
|
-
* to return responses from controllers and handlers.
|
|
27
|
-
*
|
|
28
|
-
* @template TBody - Type of the response body
|
|
29
|
-
* @template TStatus - HTTP status code (must be a number literal)
|
|
30
|
-
*
|
|
31
|
-
* @example
|
|
32
|
-
* ```typescript
|
|
33
|
-
* // Simple JSON response
|
|
34
|
-
* const successResponse: Reply<User, 200> = {
|
|
35
|
-
* __adornReply: true,
|
|
36
|
-
* status: 200,
|
|
37
|
-
* body: { id: '123', name: 'John Doe' },
|
|
38
|
-
* headers: { 'Content-Type': 'application/json' }
|
|
39
|
-
* };
|
|
40
|
-
* ```
|
|
41
|
-
*
|
|
42
|
-
* @example
|
|
43
|
-
* ```typescript
|
|
44
|
-
* // Error response
|
|
45
|
-
* const errorResponse: Reply<ErrorDetails, 404> = {
|
|
46
|
-
* __adornReply: true,
|
|
47
|
-
* status: 404,
|
|
48
|
-
* body: { error: 'Not Found', code: 'USER_NOT_FOUND' },
|
|
49
|
-
* headers: { 'Content-Type': 'application/json' }
|
|
50
|
-
* };
|
|
51
|
-
* ```
|
|
52
|
-
*
|
|
53
|
-
* @example
|
|
54
|
-
* ```typescript
|
|
55
|
-
* // Response with custom headers
|
|
56
|
-
* const responseWithHeaders: Reply<string, 201> = {
|
|
57
|
-
* __adornReply: true,
|
|
58
|
-
* status: 201,
|
|
59
|
-
* body: 'Resource created',
|
|
60
|
-
* headers: {
|
|
61
|
-
* 'Location': '/resources/123',
|
|
62
|
-
* 'X-Resource-ID': '123'
|
|
63
|
-
* },
|
|
64
|
-
* contentType: 'text/plain'
|
|
65
|
-
* };
|
|
66
|
-
* ```
|
|
67
|
-
*
|
|
68
|
-
* @see isReply for type guard function
|
|
69
|
-
*/
|
|
70
|
-
export type Reply<TBody = unknown, TStatus extends number = number> = {
|
|
71
|
-
/** Brand property to identify Adorn reply objects */
|
|
72
|
-
readonly __adornReply: true;
|
|
73
|
-
/** HTTP status code */
|
|
74
|
-
readonly status: TStatus;
|
|
75
|
-
/** Response body */
|
|
76
|
-
readonly body?: TBody;
|
|
77
|
-
/** Response headers */
|
|
78
|
-
readonly headers?: ReplyHeaders;
|
|
79
|
-
/** Content type header (convenience property) */
|
|
80
|
-
readonly contentType?: string;
|
|
81
|
-
};
|
|
82
|
-
/**
|
|
83
|
-
* Type guard function to check if an object is an Adorn Reply.
|
|
84
|
-
*
|
|
85
|
-
* This function is used to safely check if an object conforms to
|
|
86
|
-
* the Reply type structure.
|
|
87
|
-
*
|
|
88
|
-
* @param x - Object to check
|
|
89
|
-
* @returns true if the object is a Reply, false otherwise
|
|
90
|
-
*
|
|
91
|
-
* @example
|
|
92
|
-
* ```typescript
|
|
93
|
-
* function handleResponse(response: unknown) {
|
|
94
|
-
* if (isReply(response)) {
|
|
95
|
-
* // TypeScript now knows response is a Reply
|
|
96
|
-
* console.log('Status:', response.status);
|
|
97
|
-
* console.log('Body:', response.body);
|
|
98
|
-
* } else {
|
|
99
|
-
* console.log('Not a reply object');
|
|
100
|
-
* }
|
|
101
|
-
* }
|
|
102
|
-
* ```
|
|
103
|
-
*
|
|
104
|
-
* @example
|
|
105
|
-
* ```typescript
|
|
106
|
-
* // In middleware or error handling
|
|
107
|
-
* if (isReply(error)) {
|
|
108
|
-
* // It's a reply object, can be sent directly to client
|
|
109
|
-
* res.status(error.status).json(error.body);
|
|
110
|
-
* } else {
|
|
111
|
-
* // Handle non-reply errors
|
|
112
|
-
* res.status(500).json({ error: 'Internal Server Error' });
|
|
113
|
-
* }
|
|
114
|
-
* ```
|
|
115
|
-
*
|
|
116
|
-
* @see Reply for the reply object type
|
|
117
|
-
*/
|
|
118
|
-
export declare function isReply(x: unknown): x is Reply<unknown, number>;
|
|
119
|
-
//# sourceMappingURL=reply.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reply.d.ts","sourceRoot":"","sources":["../../src/contracts/reply.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAEzD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,MAAM,MAAM,KAAK,CAAC,KAAK,GAAG,OAAO,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM,IAAI;IACpE,qDAAqD;IACrD,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;IAC5B,uBAAuB;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,oBAAoB;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC;IACtB,uBAAuB;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,iDAAiD;IACjD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAI/D"}
|