blendsdk 5.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +125 -0
- package/dist/cmdline/cmdline.d.ts +144 -0
- package/dist/cmdline/cmdline.d.ts.map +1 -0
- package/dist/cmdline/cmdline.js +683 -0
- package/dist/cmdline/cmdline.js.map +1 -0
- package/dist/cmdline/errors.d.ts +105 -0
- package/dist/cmdline/errors.d.ts.map +1 -0
- package/dist/cmdline/errors.js +153 -0
- package/dist/cmdline/errors.js.map +1 -0
- package/dist/cmdline/index.d.ts +5 -0
- package/dist/cmdline/index.d.ts.map +1 -0
- package/dist/cmdline/index.js +5 -0
- package/dist/cmdline/index.js.map +1 -0
- package/dist/cmdline/types.d.ts +260 -0
- package/dist/cmdline/types.d.ts.map +1 -0
- package/dist/cmdline/types.js +9 -0
- package/dist/cmdline/types.js.map +1 -0
- package/dist/cmdline/validators.d.ts +28 -0
- package/dist/cmdline/validators.d.ts.map +1 -0
- package/dist/cmdline/validators.js +211 -0
- package/dist/cmdline/validators.js.map +1 -0
- package/dist/codegen/database/index.d.ts +3 -0
- package/dist/codegen/database/index.d.ts.map +1 -0
- package/dist/codegen/database/index.js +3 -0
- package/dist/codegen/database/index.js.map +1 -0
- package/dist/codegen/database/introspect/index.d.ts +3 -0
- package/dist/codegen/database/introspect/index.d.ts.map +1 -0
- package/dist/codegen/database/introspect/index.js +3 -0
- package/dist/codegen/database/introspect/index.js.map +1 -0
- package/dist/codegen/database/introspect/introspect-query.d.ts +2 -0
- package/dist/codegen/database/introspect/introspect-query.d.ts.map +1 -0
- package/dist/codegen/database/introspect/introspect-query.js +416 -0
- package/dist/codegen/database/introspect/introspect-query.js.map +1 -0
- package/dist/codegen/database/introspect/introspect-types.d.ts +45 -0
- package/dist/codegen/database/introspect/introspect-types.d.ts.map +1 -0
- package/dist/codegen/database/introspect/introspect-types.js +2 -0
- package/dist/codegen/database/introspect/introspect-types.js.map +1 -0
- package/dist/codegen/database/introspect/introspect.d.ts +21 -0
- package/dist/codegen/database/introspect/introspect.d.ts.map +1 -0
- package/dist/codegen/database/introspect/introspect.js +223 -0
- package/dist/codegen/database/introspect/introspect.js.map +1 -0
- package/dist/codegen/database/schema/check-constraint.d.ts +8 -0
- package/dist/codegen/database/schema/check-constraint.d.ts.map +1 -0
- package/dist/codegen/database/schema/check-constraint.js +12 -0
- package/dist/codegen/database/schema/check-constraint.js.map +1 -0
- package/dist/codegen/database/schema/column-schema.d.ts +7 -0
- package/dist/codegen/database/schema/column-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/column-schema.js +9 -0
- package/dist/codegen/database/schema/column-schema.js.map +1 -0
- package/dist/codegen/database/schema/constraint-base.d.ts +13 -0
- package/dist/codegen/database/schema/constraint-base.d.ts.map +1 -0
- package/dist/codegen/database/schema/constraint-base.js +32 -0
- package/dist/codegen/database/schema/constraint-base.js.map +1 -0
- package/dist/codegen/database/schema/database-schema.d.ts +19 -0
- package/dist/codegen/database/schema/database-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/database-schema.js +48 -0
- package/dist/codegen/database/schema/database-schema.js.map +1 -0
- package/dist/codegen/database/schema/dataobject-schema.d.ts +9 -0
- package/dist/codegen/database/schema/dataobject-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/dataobject-schema.js +18 -0
- package/dist/codegen/database/schema/dataobject-schema.js.map +1 -0
- package/dist/codegen/database/schema/fkey-constraints.d.ts +21 -0
- package/dist/codegen/database/schema/fkey-constraints.d.ts.map +1 -0
- package/dist/codegen/database/schema/fkey-constraints.js +58 -0
- package/dist/codegen/database/schema/fkey-constraints.js.map +1 -0
- package/dist/codegen/database/schema/index-constraint.d.ts +34 -0
- package/dist/codegen/database/schema/index-constraint.d.ts.map +1 -0
- package/dist/codegen/database/schema/index-constraint.js +79 -0
- package/dist/codegen/database/schema/index-constraint.js.map +1 -0
- package/dist/codegen/database/schema/index.d.ts +5 -0
- package/dist/codegen/database/schema/index.d.ts.map +1 -0
- package/dist/codegen/database/schema/index.js +5 -0
- package/dist/codegen/database/schema/index.js.map +1 -0
- package/dist/codegen/database/schema/primarykey-constraint.d.ts +4 -0
- package/dist/codegen/database/schema/primarykey-constraint.d.ts.map +1 -0
- package/dist/codegen/database/schema/primarykey-constraint.js +4 -0
- package/dist/codegen/database/schema/primarykey-constraint.js.map +1 -0
- package/dist/codegen/database/schema/relation-schema.d.ts +16 -0
- package/dist/codegen/database/schema/relation-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/relation-schema.js +32 -0
- package/dist/codegen/database/schema/relation-schema.js.map +1 -0
- package/dist/codegen/database/schema/table-column-schema.d.ts +59 -0
- package/dist/codegen/database/schema/table-column-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/table-column-schema.js +137 -0
- package/dist/codegen/database/schema/table-column-schema.js.map +1 -0
- package/dist/codegen/database/schema/table-schema.d.ts +48 -0
- package/dist/codegen/database/schema/table-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/table-schema.js +219 -0
- package/dist/codegen/database/schema/table-schema.js.map +1 -0
- package/dist/codegen/database/schema/types.d.ts +13 -0
- package/dist/codegen/database/schema/types.d.ts.map +1 -0
- package/dist/codegen/database/schema/types.js +175 -0
- package/dist/codegen/database/schema/types.js.map +1 -0
- package/dist/codegen/database/schema/unique-constraint.d.ts +4 -0
- package/dist/codegen/database/schema/unique-constraint.d.ts.map +1 -0
- package/dist/codegen/database/schema/unique-constraint.js +4 -0
- package/dist/codegen/database/schema/unique-constraint.js.map +1 -0
- package/dist/codegen/database/schema/view-schema.d.ts +14 -0
- package/dist/codegen/database/schema/view-schema.d.ts.map +1 -0
- package/dist/codegen/database/schema/view-schema.js +32 -0
- package/dist/codegen/database/schema/view-schema.js.map +1 -0
- package/dist/codegen/generator/ctype-generator.d.ts +5 -0
- package/dist/codegen/generator/ctype-generator.d.ts.map +1 -0
- package/dist/codegen/generator/ctype-generator.js +26 -0
- package/dist/codegen/generator/ctype-generator.js.map +1 -0
- package/dist/codegen/generator/generator.d.ts +17 -0
- package/dist/codegen/generator/generator.d.ts.map +1 -0
- package/dist/codegen/generator/generator.js +57 -0
- package/dist/codegen/generator/generator.js.map +1 -0
- package/dist/codegen/generator/index.d.ts +8 -0
- package/dist/codegen/generator/index.d.ts.map +1 -0
- package/dist/codegen/generator/index.js +8 -0
- package/dist/codegen/generator/index.js.map +1 -0
- package/dist/codegen/generator/openapi-generator.d.ts +239 -0
- package/dist/codegen/generator/openapi-generator.d.ts.map +1 -0
- package/dist/codegen/generator/openapi-generator.js +434 -0
- package/dist/codegen/generator/openapi-generator.js.map +1 -0
- package/dist/codegen/generator/openapi-types.d.ts +263 -0
- package/dist/codegen/generator/openapi-types.d.ts.map +1 -0
- package/dist/codegen/generator/openapi-types.js +11 -0
- package/dist/codegen/generator/openapi-types.js.map +1 -0
- package/dist/codegen/generator/postgres-schema-generator.d.ts +48 -0
- package/dist/codegen/generator/postgres-schema-generator.d.ts.map +1 -0
- package/dist/codegen/generator/postgres-schema-generator.js +339 -0
- package/dist/codegen/generator/postgres-schema-generator.js.map +1 -0
- package/dist/codegen/generator/type-generator.d.ts +113 -0
- package/dist/codegen/generator/type-generator.d.ts.map +1 -0
- package/dist/codegen/generator/type-generator.js +249 -0
- package/dist/codegen/generator/type-generator.js.map +1 -0
- package/dist/codegen/generator/zod-generator.d.ts +15 -0
- package/dist/codegen/generator/zod-generator.d.ts.map +1 -0
- package/dist/codegen/generator/zod-generator.js +86 -0
- package/dist/codegen/generator/zod-generator.js.map +1 -0
- package/dist/codegen/generator/zod-to-openapi.d.ts +69 -0
- package/dist/codegen/generator/zod-to-openapi.d.ts.map +1 -0
- package/dist/codegen/generator/zod-to-openapi.js +480 -0
- package/dist/codegen/generator/zod-to-openapi.js.map +1 -0
- package/dist/codegen/index.d.ts +4 -0
- package/dist/codegen/index.d.ts.map +1 -0
- package/dist/codegen/index.js +4 -0
- package/dist/codegen/index.js.map +1 -0
- package/dist/codegen/schema/any-schema.d.ts +6 -0
- package/dist/codegen/schema/any-schema.d.ts.map +1 -0
- package/dist/codegen/schema/any-schema.js +12 -0
- package/dist/codegen/schema/any-schema.js.map +1 -0
- package/dist/codegen/schema/boolean-schema.d.ts +6 -0
- package/dist/codegen/schema/boolean-schema.d.ts.map +1 -0
- package/dist/codegen/schema/boolean-schema.js +12 -0
- package/dist/codegen/schema/boolean-schema.js.map +1 -0
- package/dist/codegen/schema/date-schema.d.ts +6 -0
- package/dist/codegen/schema/date-schema.d.ts.map +1 -0
- package/dist/codegen/schema/date-schema.js +12 -0
- package/dist/codegen/schema/date-schema.js.map +1 -0
- package/dist/codegen/schema/index.d.ts +10 -0
- package/dist/codegen/schema/index.d.ts.map +1 -0
- package/dist/codegen/schema/index.js +10 -0
- package/dist/codegen/schema/index.js.map +1 -0
- package/dist/codegen/schema/object-schema.d.ts +10 -0
- package/dist/codegen/schema/object-schema.d.ts.map +1 -0
- package/dist/codegen/schema/object-schema.js +21 -0
- package/dist/codegen/schema/object-schema.js.map +1 -0
- package/dist/codegen/schema/primitive-schema.d.ts +20 -0
- package/dist/codegen/schema/primitive-schema.d.ts.map +1 -0
- package/dist/codegen/schema/primitive-schema.js +48 -0
- package/dist/codegen/schema/primitive-schema.js.map +1 -0
- package/dist/codegen/schema/ref-schema.d.ts +6 -0
- package/dist/codegen/schema/ref-schema.d.ts.map +1 -0
- package/dist/codegen/schema/ref-schema.js +11 -0
- package/dist/codegen/schema/ref-schema.js.map +1 -0
- package/dist/codegen/schema/schema-container.d.ts +14 -0
- package/dist/codegen/schema/schema-container.d.ts.map +1 -0
- package/dist/codegen/schema/schema-container.js +38 -0
- package/dist/codegen/schema/schema-container.js.map +1 -0
- package/dist/codegen/schema/schema-object.d.ts +42 -0
- package/dist/codegen/schema/schema-object.d.ts.map +1 -0
- package/dist/codegen/schema/schema-object.js +90 -0
- package/dist/codegen/schema/schema-object.js.map +1 -0
- package/dist/codegen/schema/schema-scope.d.ts +23 -0
- package/dist/codegen/schema/schema-scope.d.ts.map +1 -0
- package/dist/codegen/schema/schema-scope.js +67 -0
- package/dist/codegen/schema/schema-scope.js.map +1 -0
- package/dist/codegen/schema/utils.d.ts +17 -0
- package/dist/codegen/schema/utils.d.ts.map +1 -0
- package/dist/codegen/schema/utils.js +47 -0
- package/dist/codegen/schema/utils.js.map +1 -0
- package/dist/dbcore/crud-statement.d.ts +67 -0
- package/dist/dbcore/crud-statement.d.ts.map +1 -0
- package/dist/dbcore/crud-statement.js +75 -0
- package/dist/dbcore/crud-statement.js.map +1 -0
- package/dist/dbcore/database.d.ts +272 -0
- package/dist/dbcore/database.d.ts.map +1 -0
- package/dist/dbcore/database.js +53 -0
- package/dist/dbcore/database.js.map +1 -0
- package/dist/dbcore/dataservice-base.d.ts +18 -0
- package/dist/dbcore/dataservice-base.d.ts.map +1 -0
- package/dist/dbcore/dataservice-base.js +19 -0
- package/dist/dbcore/dataservice-base.js.map +1 -0
- package/dist/dbcore/delete-statement.d.ts +29 -0
- package/dist/dbcore/delete-statement.d.ts.map +1 -0
- package/dist/dbcore/delete-statement.js +30 -0
- package/dist/dbcore/delete-statement.js.map +1 -0
- package/dist/dbcore/filterable-statement.d.ts +126 -0
- package/dist/dbcore/filterable-statement.d.ts.map +1 -0
- package/dist/dbcore/filterable-statement.js +178 -0
- package/dist/dbcore/filterable-statement.js.map +1 -0
- package/dist/dbcore/from-statement.d.ts +120 -0
- package/dist/dbcore/from-statement.d.ts.map +1 -0
- package/dist/dbcore/from-statement.js +150 -0
- package/dist/dbcore/from-statement.js.map +1 -0
- package/dist/dbcore/index.d.ts +21 -0
- package/dist/dbcore/index.d.ts.map +1 -0
- package/dist/dbcore/index.js +21 -0
- package/dist/dbcore/index.js.map +1 -0
- package/dist/dbcore/insert-statement.d.ts +48 -0
- package/dist/dbcore/insert-statement.d.ts.map +1 -0
- package/dist/dbcore/insert-statement.js +52 -0
- package/dist/dbcore/insert-statement.js.map +1 -0
- package/dist/dbcore/query-dataservice.d.ts +144 -0
- package/dist/dbcore/query-dataservice.d.ts.map +1 -0
- package/dist/dbcore/query-dataservice.js +144 -0
- package/dist/dbcore/query-dataservice.js.map +1 -0
- package/dist/dbcore/statement.d.ts +133 -0
- package/dist/dbcore/statement.d.ts.map +1 -0
- package/dist/dbcore/statement.js +138 -0
- package/dist/dbcore/statement.js.map +1 -0
- package/dist/dbcore/update-statement.d.ts +48 -0
- package/dist/dbcore/update-statement.d.ts.map +1 -0
- package/dist/dbcore/update-statement.js +52 -0
- package/dist/dbcore/update-statement.js.map +1 -0
- package/dist/expression/builders/comparison-builder.d.ts +47 -0
- package/dist/expression/builders/comparison-builder.d.ts.map +1 -0
- package/dist/expression/builders/comparison-builder.js +197 -0
- package/dist/expression/builders/comparison-builder.js.map +1 -0
- package/dist/expression/builders/query-builder.d.ts +80 -0
- package/dist/expression/builders/query-builder.d.ts.map +1 -0
- package/dist/expression/builders/query-builder.js +229 -0
- package/dist/expression/builders/query-builder.js.map +1 -0
- package/dist/expression/compiler/postgresql-compiler.d.ts +56 -0
- package/dist/expression/compiler/postgresql-compiler.d.ts.map +1 -0
- package/dist/expression/compiler/postgresql-compiler.js +217 -0
- package/dist/expression/compiler/postgresql-compiler.js.map +1 -0
- package/dist/expression/core/ast-node.d.ts +47 -0
- package/dist/expression/core/ast-node.d.ts.map +1 -0
- package/dist/expression/core/ast-node.js +154 -0
- package/dist/expression/core/ast-node.js.map +1 -0
- package/dist/expression/core/parameter-manager.d.ts +84 -0
- package/dist/expression/core/parameter-manager.d.ts.map +1 -0
- package/dist/expression/core/parameter-manager.js +164 -0
- package/dist/expression/core/parameter-manager.js.map +1 -0
- package/dist/expression/core/query-builder-interfaces.d.ts +188 -0
- package/dist/expression/core/query-builder-interfaces.d.ts.map +1 -0
- package/dist/expression/core/query-builder-interfaces.js +6 -0
- package/dist/expression/core/query-builder-interfaces.js.map +1 -0
- package/dist/expression/core/types.d.ts +239 -0
- package/dist/expression/core/types.d.ts.map +1 -0
- package/dist/expression/core/types.js +121 -0
- package/dist/expression/core/types.js.map +1 -0
- package/dist/expression/index.d.ts +11 -0
- package/dist/expression/index.d.ts.map +1 -0
- package/dist/expression/index.js +11 -0
- package/dist/expression/index.js.map +1 -0
- package/dist/i18n/content-file-source.d.ts +109 -0
- package/dist/i18n/content-file-source.d.ts.map +1 -0
- package/dist/i18n/content-file-source.js +218 -0
- package/dist/i18n/content-file-source.js.map +1 -0
- package/dist/i18n/index.d.ts +19 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +21 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/json-file-source.d.ts +96 -0
- package/dist/i18n/json-file-source.d.ts.map +1 -0
- package/dist/i18n/json-file-source.js +258 -0
- package/dist/i18n/json-file-source.js.map +1 -0
- package/dist/i18n/merge-catalogs.d.ts +20 -0
- package/dist/i18n/merge-catalogs.d.ts.map +1 -0
- package/dist/i18n/merge-catalogs.js +34 -0
- package/dist/i18n/merge-catalogs.js.map +1 -0
- package/dist/i18n/node.d.ts +20 -0
- package/dist/i18n/node.d.ts.map +1 -0
- package/dist/i18n/node.js +19 -0
- package/dist/i18n/node.js.map +1 -0
- package/dist/i18n/translation-source.d.ts +35 -0
- package/dist/i18n/translation-source.d.ts.map +1 -0
- package/dist/i18n/translation-source.js +2 -0
- package/dist/i18n/translation-source.js.map +1 -0
- package/dist/i18n/translator.d.ts +162 -0
- package/dist/i18n/translator.d.ts.map +1 -0
- package/dist/i18n/translator.js +259 -0
- package/dist/i18n/translator.js.map +1 -0
- package/dist/i18n/types.d.ts +80 -0
- package/dist/i18n/types.d.ts.map +1 -0
- package/dist/i18n/types.js +2 -0
- package/dist/i18n/types.js.map +1 -0
- package/dist/postgresql/database.d.ts +204 -0
- package/dist/postgresql/database.d.ts.map +1 -0
- package/dist/postgresql/database.js +321 -0
- package/dist/postgresql/database.js.map +1 -0
- package/dist/postgresql/delete-statement.d.ts +36 -0
- package/dist/postgresql/delete-statement.d.ts.map +1 -0
- package/dist/postgresql/delete-statement.js +54 -0
- package/dist/postgresql/delete-statement.js.map +1 -0
- package/dist/postgresql/index.d.ts +12 -0
- package/dist/postgresql/index.d.ts.map +1 -0
- package/dist/postgresql/index.js +12 -0
- package/dist/postgresql/index.js.map +1 -0
- package/dist/postgresql/insert-statement.d.ts +34 -0
- package/dist/postgresql/insert-statement.d.ts.map +1 -0
- package/dist/postgresql/insert-statement.js +48 -0
- package/dist/postgresql/insert-statement.js.map +1 -0
- package/dist/postgresql/update-statement.d.ts +38 -0
- package/dist/postgresql/update-statement.d.ts.map +1 -0
- package/dist/postgresql/update-statement.js +75 -0
- package/dist/postgresql/update-statement.js.map +1 -0
- package/dist/stdlib/formatString.d.ts +52 -0
- package/dist/stdlib/formatString.d.ts.map +1 -0
- package/dist/stdlib/formatString.js +118 -0
- package/dist/stdlib/formatString.js.map +1 -0
- package/dist/stdlib/index.d.ts +8 -0
- package/dist/stdlib/index.d.ts.map +1 -0
- package/dist/stdlib/index.js +8 -0
- package/dist/stdlib/index.js.map +1 -0
- package/dist/stdlib/isBoolean.d.ts +15 -0
- package/dist/stdlib/isBoolean.d.ts.map +1 -0
- package/dist/stdlib/isBoolean.js +17 -0
- package/dist/stdlib/isBoolean.js.map +1 -0
- package/dist/stdlib/isNullOrUndef.d.ts +24 -0
- package/dist/stdlib/isNullOrUndef.d.ts.map +1 -0
- package/dist/stdlib/isNullOrUndef.js +28 -0
- package/dist/stdlib/isNullOrUndef.js.map +1 -0
- package/dist/stdlib/isNumeric.d.ts +20 -0
- package/dist/stdlib/isNumeric.d.ts.map +1 -0
- package/dist/stdlib/isNumeric.js +39 -0
- package/dist/stdlib/isNumeric.js.map +1 -0
- package/dist/stdlib/isString.d.ts +15 -0
- package/dist/stdlib/isString.d.ts.map +1 -0
- package/dist/stdlib/isString.js +17 -0
- package/dist/stdlib/isString.js.map +1 -0
- package/dist/stdlib/isTemplateString.d.ts +18 -0
- package/dist/stdlib/isTemplateString.d.ts.map +1 -0
- package/dist/stdlib/isTemplateString.js +38 -0
- package/dist/stdlib/isTemplateString.js.map +1 -0
- package/dist/stdlib/wrapInArray.d.ts +14 -0
- package/dist/stdlib/wrapInArray.d.ts.map +1 -0
- package/dist/stdlib/wrapInArray.js +17 -0
- package/dist/stdlib/wrapInArray.js.map +1 -0
- package/dist/webafx/application/application-settings.d.ts +129 -0
- package/dist/webafx/application/application-settings.d.ts.map +1 -0
- package/dist/webafx/application/application-settings.js +162 -0
- package/dist/webafx/application/application-settings.js.map +1 -0
- package/dist/webafx/application/base-controller.d.ts +128 -0
- package/dist/webafx/application/base-controller.d.ts.map +1 -0
- package/dist/webafx/application/base-controller.js +122 -0
- package/dist/webafx/application/base-controller.js.map +1 -0
- package/dist/webafx/application/console-logger.d.ts +81 -0
- package/dist/webafx/application/console-logger.d.ts.map +1 -0
- package/dist/webafx/application/console-logger.js +111 -0
- package/dist/webafx/application/console-logger.js.map +1 -0
- package/dist/webafx/application/controller-registry.d.ts +34 -0
- package/dist/webafx/application/controller-registry.d.ts.map +1 -0
- package/dist/webafx/application/controller-registry.js +32 -0
- package/dist/webafx/application/controller-registry.js.map +1 -0
- package/dist/webafx/application/error-handler-middleware.d.ts +22 -0
- package/dist/webafx/application/error-handler-middleware.d.ts.map +1 -0
- package/dist/webafx/application/error-handler-middleware.js +70 -0
- package/dist/webafx/application/error-handler-middleware.js.map +1 -0
- package/dist/webafx/application/index.d.ts +13 -0
- package/dist/webafx/application/index.d.ts.map +1 -0
- package/dist/webafx/application/index.js +13 -0
- package/dist/webafx/application/index.js.map +1 -0
- package/dist/webafx/application/logger.d.ts +2 -0
- package/dist/webafx/application/logger.d.ts.map +1 -0
- package/dist/webafx/application/logger.js +2 -0
- package/dist/webafx/application/logger.js.map +1 -0
- package/dist/webafx/application/plugin.d.ts +73 -0
- package/dist/webafx/application/plugin.d.ts.map +1 -0
- package/dist/webafx/application/plugin.js +90 -0
- package/dist/webafx/application/plugin.js.map +1 -0
- package/dist/webafx/application/rate-limiter.d.ts +35 -0
- package/dist/webafx/application/rate-limiter.d.ts.map +1 -0
- package/dist/webafx/application/rate-limiter.js +74 -0
- package/dist/webafx/application/rate-limiter.js.map +1 -0
- package/dist/webafx/application/request-context.d.ts +62 -0
- package/dist/webafx/application/request-context.d.ts.map +1 -0
- package/dist/webafx/application/request-context.js +54 -0
- package/dist/webafx/application/request-context.js.map +1 -0
- package/dist/webafx/application/request-id-middleware.d.ts +30 -0
- package/dist/webafx/application/request-id-middleware.d.ts.map +1 -0
- package/dist/webafx/application/request-id-middleware.js +57 -0
- package/dist/webafx/application/request-id-middleware.js.map +1 -0
- package/dist/webafx/application/route-builder.d.ts +231 -0
- package/dist/webafx/application/route-builder.d.ts.map +1 -0
- package/dist/webafx/application/route-builder.js +182 -0
- package/dist/webafx/application/route-builder.js.map +1 -0
- package/dist/webafx/application/service-container.d.ts +144 -0
- package/dist/webafx/application/service-container.d.ts.map +1 -0
- package/dist/webafx/application/service-container.js +192 -0
- package/dist/webafx/application/service-container.js.map +1 -0
- package/dist/webafx/application/services.d.ts +27 -0
- package/dist/webafx/application/services.d.ts.map +1 -0
- package/dist/webafx/application/services.js +33 -0
- package/dist/webafx/application/services.js.map +1 -0
- package/dist/webafx/application/structured-logger.d.ts +99 -0
- package/dist/webafx/application/structured-logger.d.ts.map +1 -0
- package/dist/webafx/application/structured-logger.js +132 -0
- package/dist/webafx/application/structured-logger.js.map +1 -0
- package/dist/webafx/application/type.d.ts +29 -0
- package/dist/webafx/application/type.d.ts.map +1 -0
- package/dist/webafx/application/type.js +2 -0
- package/dist/webafx/application/type.js.map +1 -0
- package/dist/webafx/application/web-application.d.ts +257 -0
- package/dist/webafx/application/web-application.d.ts.map +1 -0
- package/dist/webafx/application/web-application.js +611 -0
- package/dist/webafx/application/web-application.js.map +1 -0
- package/dist/webafx/errors/api-error.d.ts +21 -0
- package/dist/webafx/errors/api-error.d.ts.map +1 -0
- package/dist/webafx/errors/api-error.js +38 -0
- package/dist/webafx/errors/api-error.js.map +1 -0
- package/dist/webafx/errors/http-errors.d.ts +56 -0
- package/dist/webafx/errors/http-errors.d.ts.map +1 -0
- package/dist/webafx/errors/http-errors.js +74 -0
- package/dist/webafx/errors/http-errors.js.map +1 -0
- package/dist/webafx/errors/index.d.ts +4 -0
- package/dist/webafx/errors/index.d.ts.map +1 -0
- package/dist/webafx/errors/index.js +4 -0
- package/dist/webafx/errors/index.js.map +1 -0
- package/dist/webafx/errors/types.d.ts +42 -0
- package/dist/webafx/errors/types.d.ts.map +1 -0
- package/dist/webafx/errors/types.js +2 -0
- package/dist/webafx/errors/types.js.map +1 -0
- package/dist/webafx/index.d.ts +3 -0
- package/dist/webafx/index.d.ts.map +1 -0
- package/dist/webafx/index.js +3 -0
- package/dist/webafx/index.js.map +1 -0
- package/dist/webafx-auth/abstract-auth-provider.d.ts +178 -0
- package/dist/webafx-auth/abstract-auth-provider.d.ts.map +1 -0
- package/dist/webafx-auth/abstract-auth-provider.js +240 -0
- package/dist/webafx-auth/abstract-auth-provider.js.map +1 -0
- package/dist/webafx-auth/index.d.ts +27 -0
- package/dist/webafx-auth/index.d.ts.map +1 -0
- package/dist/webafx-auth/index.js +32 -0
- package/dist/webafx-auth/index.js.map +1 -0
- package/dist/webafx-auth/jwt-auth-provider.d.ts +100 -0
- package/dist/webafx-auth/jwt-auth-provider.d.ts.map +1 -0
- package/dist/webafx-auth/jwt-auth-provider.js +154 -0
- package/dist/webafx-auth/jwt-auth-provider.js.map +1 -0
- package/dist/webafx-auth/memory-auth-provider.d.ts +100 -0
- package/dist/webafx-auth/memory-auth-provider.d.ts.map +1 -0
- package/dist/webafx-auth/memory-auth-provider.js +122 -0
- package/dist/webafx-auth/memory-auth-provider.js.map +1 -0
- package/dist/webafx-auth/types.d.ts +333 -0
- package/dist/webafx-auth/types.d.ts.map +1 -0
- package/dist/webafx-auth/types.js +24 -0
- package/dist/webafx-auth/types.js.map +1 -0
- package/dist/webafx-cache/abstract-cache-provider.d.ts +185 -0
- package/dist/webafx-cache/abstract-cache-provider.d.ts.map +1 -0
- package/dist/webafx-cache/abstract-cache-provider.js +133 -0
- package/dist/webafx-cache/abstract-cache-provider.js.map +1 -0
- package/dist/webafx-cache/abstract-pubsub-provider.d.ts +170 -0
- package/dist/webafx-cache/abstract-pubsub-provider.d.ts.map +1 -0
- package/dist/webafx-cache/abstract-pubsub-provider.js +132 -0
- package/dist/webafx-cache/abstract-pubsub-provider.js.map +1 -0
- package/dist/webafx-cache/cache-plugin.d.ts +114 -0
- package/dist/webafx-cache/cache-plugin.d.ts.map +1 -0
- package/dist/webafx-cache/cache-plugin.js +176 -0
- package/dist/webafx-cache/cache-plugin.js.map +1 -0
- package/dist/webafx-cache/index.d.ts +33 -0
- package/dist/webafx-cache/index.d.ts.map +1 -0
- package/dist/webafx-cache/index.js +44 -0
- package/dist/webafx-cache/index.js.map +1 -0
- package/dist/webafx-cache/memory-cache-provider.d.ts +99 -0
- package/dist/webafx-cache/memory-cache-provider.d.ts.map +1 -0
- package/dist/webafx-cache/memory-cache-provider.js +251 -0
- package/dist/webafx-cache/memory-cache-provider.js.map +1 -0
- package/dist/webafx-cache/memory-pubsub-provider.d.ts +124 -0
- package/dist/webafx-cache/memory-pubsub-provider.d.ts.map +1 -0
- package/dist/webafx-cache/memory-pubsub-provider.js +195 -0
- package/dist/webafx-cache/memory-pubsub-provider.js.map +1 -0
- package/dist/webafx-cache/pubsub-plugin.d.ts +128 -0
- package/dist/webafx-cache/pubsub-plugin.d.ts.map +1 -0
- package/dist/webafx-cache/pubsub-plugin.js +182 -0
- package/dist/webafx-cache/pubsub-plugin.js.map +1 -0
- package/dist/webafx-cache/redis-cache-provider.d.ts +81 -0
- package/dist/webafx-cache/redis-cache-provider.d.ts.map +1 -0
- package/dist/webafx-cache/redis-cache-provider.js +209 -0
- package/dist/webafx-cache/redis-cache-provider.js.map +1 -0
- package/dist/webafx-cache/redis-pubsub-provider.d.ts +164 -0
- package/dist/webafx-cache/redis-pubsub-provider.d.ts.map +1 -0
- package/dist/webafx-cache/redis-pubsub-provider.js +329 -0
- package/dist/webafx-cache/redis-pubsub-provider.js.map +1 -0
- package/dist/webafx-cache/types.d.ts +206 -0
- package/dist/webafx-cache/types.d.ts.map +1 -0
- package/dist/webafx-cache/types.js +27 -0
- package/dist/webafx-cache/types.js.map +1 -0
- package/dist/webafx-i18n/i18n-plugin.d.ts +29 -0
- package/dist/webafx-i18n/i18n-plugin.d.ts.map +1 -0
- package/dist/webafx-i18n/i18n-plugin.js +145 -0
- package/dist/webafx-i18n/i18n-plugin.js.map +1 -0
- package/dist/webafx-i18n/index.d.ts +12 -0
- package/dist/webafx-i18n/index.d.ts.map +1 -0
- package/dist/webafx-i18n/index.js +12 -0
- package/dist/webafx-i18n/index.js.map +1 -0
- package/dist/webafx-i18n/locale-resolver.d.ts +33 -0
- package/dist/webafx-i18n/locale-resolver.d.ts.map +1 -0
- package/dist/webafx-i18n/locale-resolver.js +67 -0
- package/dist/webafx-i18n/locale-resolver.js.map +1 -0
- package/dist/webafx-i18n/postgresql-source.d.ts +101 -0
- package/dist/webafx-i18n/postgresql-source.d.ts.map +1 -0
- package/dist/webafx-i18n/postgresql-source.js +101 -0
- package/dist/webafx-i18n/postgresql-source.js.map +1 -0
- package/dist/webafx-i18n/types.d.ts +70 -0
- package/dist/webafx-i18n/types.d.ts.map +1 -0
- package/dist/webafx-i18n/types.js +2 -0
- package/dist/webafx-i18n/types.js.map +1 -0
- package/dist/webafx-mailer/abstract-mail-provider.d.ts +55 -0
- package/dist/webafx-mailer/abstract-mail-provider.d.ts.map +1 -0
- package/dist/webafx-mailer/abstract-mail-provider.js +37 -0
- package/dist/webafx-mailer/abstract-mail-provider.js.map +1 -0
- package/dist/webafx-mailer/index.d.ts +24 -0
- package/dist/webafx-mailer/index.d.ts.map +1 -0
- package/dist/webafx-mailer/index.js +34 -0
- package/dist/webafx-mailer/index.js.map +1 -0
- package/dist/webafx-mailer/mail-plugin.d.ts +98 -0
- package/dist/webafx-mailer/mail-plugin.d.ts.map +1 -0
- package/dist/webafx-mailer/mail-plugin.js +155 -0
- package/dist/webafx-mailer/mail-plugin.js.map +1 -0
- package/dist/webafx-mailer/memory-mail-provider.d.ts +85 -0
- package/dist/webafx-mailer/memory-mail-provider.d.ts.map +1 -0
- package/dist/webafx-mailer/memory-mail-provider.js +111 -0
- package/dist/webafx-mailer/memory-mail-provider.js.map +1 -0
- package/dist/webafx-mailer/smtp-mail-provider.d.ts +65 -0
- package/dist/webafx-mailer/smtp-mail-provider.d.ts.map +1 -0
- package/dist/webafx-mailer/smtp-mail-provider.js +113 -0
- package/dist/webafx-mailer/smtp-mail-provider.js.map +1 -0
- package/dist/webafx-mailer/types.d.ts +136 -0
- package/dist/webafx-mailer/types.d.ts.map +1 -0
- package/dist/webafx-mailer/types.js +13 -0
- package/dist/webafx-mailer/types.js.map +1 -0
- package/package.json +159 -0
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
// ─── Public API ─────────────────────────────────────────────────────────────
|
|
2
|
+
/**
|
|
3
|
+
* Convert a Zod v4 schema to an OpenAPI JSON Schema object.
|
|
4
|
+
*
|
|
5
|
+
* This is the main entry point for schema conversion. It extracts the
|
|
6
|
+
* internal `_zod` node from the schema and delegates to the recursive
|
|
7
|
+
* node converter.
|
|
8
|
+
*
|
|
9
|
+
* @param zodSchema - Any Zod v4 schema instance (z.string(), z.object(), etc.)
|
|
10
|
+
* @returns An OpenAPI-compatible JSON Schema object
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import { z } from 'zod';
|
|
15
|
+
* import { zodToOpenAPISchema } from './zod-to-openapi.js';
|
|
16
|
+
*
|
|
17
|
+
* const schema = z.object({ name: z.string().min(1), age: z.number().int() });
|
|
18
|
+
* const openApiSchema = zodToOpenAPISchema(schema);
|
|
19
|
+
* // { type: 'object', properties: { name: { type: 'string', minLength: 1 }, age: { type: 'integer' } }, required: ['name', 'age'] }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export function zodToOpenAPISchema(zodSchema) {
|
|
23
|
+
const node = extractZodNode(zodSchema);
|
|
24
|
+
if (!node) {
|
|
25
|
+
// Fallback for unrecognized schemas
|
|
26
|
+
return { type: 'object' };
|
|
27
|
+
}
|
|
28
|
+
return convertNode(node);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Convert a Zod v4 object schema into an array of OpenAPI query parameters.
|
|
32
|
+
*
|
|
33
|
+
* Each top-level property of the Zod object becomes a separate query parameter.
|
|
34
|
+
* Optional properties become non-required parameters. Default values are included.
|
|
35
|
+
*
|
|
36
|
+
* @param zodSchema - A Zod v4 object schema (z.object({ ... }))
|
|
37
|
+
* @returns Array of OpenAPI parameter objects with `in: 'query'`
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* const schema = z.object({
|
|
42
|
+
* page: z.coerce.number().default(1),
|
|
43
|
+
* search: z.string().optional(),
|
|
44
|
+
* });
|
|
45
|
+
* const params = zodToQueryParameters(schema);
|
|
46
|
+
* // [
|
|
47
|
+
* // { name: 'page', in: 'query', schema: { type: 'number', default: 1 } },
|
|
48
|
+
* // { name: 'search', in: 'query', schema: { type: 'string' } },
|
|
49
|
+
* // ]
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export function zodToQueryParameters(zodSchema) {
|
|
53
|
+
const node = extractZodNode(zodSchema);
|
|
54
|
+
if (!node) {
|
|
55
|
+
return [];
|
|
56
|
+
}
|
|
57
|
+
// Unwrap wrappers (optional, default, nullable) to find the object schema
|
|
58
|
+
const objectNode = unwrapToObject(node);
|
|
59
|
+
if (!objectNode || objectNode.def.type !== 'object' || !objectNode.def.shape) {
|
|
60
|
+
return [];
|
|
61
|
+
}
|
|
62
|
+
const parameters = [];
|
|
63
|
+
for (const [propName, propNode] of Object.entries(objectNode.def.shape)) {
|
|
64
|
+
const { schema: propSchema, isOptional } = convertPropertyWithOptional(propNode);
|
|
65
|
+
const param = {
|
|
66
|
+
name: propName,
|
|
67
|
+
in: 'query',
|
|
68
|
+
schema: propSchema,
|
|
69
|
+
};
|
|
70
|
+
// Query params are required only if the property is not optional/default
|
|
71
|
+
if (!isOptional) {
|
|
72
|
+
param.required = true;
|
|
73
|
+
}
|
|
74
|
+
parameters.push(param);
|
|
75
|
+
}
|
|
76
|
+
return parameters;
|
|
77
|
+
}
|
|
78
|
+
// ─── Internal Conversion Logic ──────────────────────────────────────────────
|
|
79
|
+
/**
|
|
80
|
+
* Extract the internal `_zod` node from a Zod schema instance.
|
|
81
|
+
*
|
|
82
|
+
* @param zodSchema - A Zod schema (or any value)
|
|
83
|
+
* @returns The internal ZodNode, or null if not a valid Zod schema
|
|
84
|
+
*/
|
|
85
|
+
function extractZodNode(zodSchema) {
|
|
86
|
+
if (zodSchema &&
|
|
87
|
+
typeof zodSchema === 'object' &&
|
|
88
|
+
'_zod' in zodSchema &&
|
|
89
|
+
typeof zodSchema._zod === 'object' &&
|
|
90
|
+
zodSchema._zod?.def) {
|
|
91
|
+
return zodSchema._zod;
|
|
92
|
+
}
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Unwrap optional/nullable/default wrappers to find an underlying object node.
|
|
97
|
+
* Used by query parameter conversion to reach the object shape.
|
|
98
|
+
*
|
|
99
|
+
* @param node - The ZodNode to unwrap
|
|
100
|
+
* @returns The unwrapped ZodNode (possibly the same node if it's already an object)
|
|
101
|
+
*/
|
|
102
|
+
function unwrapToObject(node) {
|
|
103
|
+
const type = node.def.type;
|
|
104
|
+
if (type === 'object') {
|
|
105
|
+
return node;
|
|
106
|
+
}
|
|
107
|
+
// Unwrap wrappers that contain an innerType
|
|
108
|
+
if ((type === 'optional' || type === 'nullable' || type === 'default') && node.def.innerType) {
|
|
109
|
+
return unwrapToObject(node.def.innerType);
|
|
110
|
+
}
|
|
111
|
+
// Unwrap pipe (transform/pipe) — use the input schema for OpenAPI
|
|
112
|
+
if (type === 'pipe' && node.def.in?._zod) {
|
|
113
|
+
return unwrapToObject(node.def.in._zod);
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Convert a ZodNode to an OpenAPI schema object.
|
|
119
|
+
* This is the main recursive dispatcher that handles all Zod types.
|
|
120
|
+
*
|
|
121
|
+
* @param node - The internal Zod node to convert
|
|
122
|
+
* @returns The corresponding OpenAPI schema
|
|
123
|
+
*/
|
|
124
|
+
function convertNode(node) {
|
|
125
|
+
const type = node.def.type;
|
|
126
|
+
switch (type) {
|
|
127
|
+
case 'string':
|
|
128
|
+
return convertString(node);
|
|
129
|
+
case 'number':
|
|
130
|
+
return convertNumber(node);
|
|
131
|
+
case 'boolean':
|
|
132
|
+
return convertBoolean();
|
|
133
|
+
case 'enum':
|
|
134
|
+
return convertEnum(node);
|
|
135
|
+
case 'literal':
|
|
136
|
+
return convertLiteral(node);
|
|
137
|
+
case 'array':
|
|
138
|
+
return convertArray(node);
|
|
139
|
+
case 'object':
|
|
140
|
+
return convertObject(node);
|
|
141
|
+
case 'optional':
|
|
142
|
+
return convertOptional(node);
|
|
143
|
+
case 'nullable':
|
|
144
|
+
return convertNullable(node);
|
|
145
|
+
case 'default':
|
|
146
|
+
return convertDefault(node);
|
|
147
|
+
case 'union':
|
|
148
|
+
return convertUnion(node);
|
|
149
|
+
case 'pipe':
|
|
150
|
+
return convertPipe(node);
|
|
151
|
+
default:
|
|
152
|
+
// Fallback for unsupported types — return generic object
|
|
153
|
+
return { type: 'object' };
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Convert a Zod string schema to OpenAPI string schema.
|
|
158
|
+
* Extracts format, minLength, and maxLength from checks.
|
|
159
|
+
*
|
|
160
|
+
* @param node - String ZodNode
|
|
161
|
+
* @returns OpenAPI string schema with constraints
|
|
162
|
+
*/
|
|
163
|
+
function convertString(node) {
|
|
164
|
+
const schema = { type: 'string' };
|
|
165
|
+
// Process checks for constraints and format
|
|
166
|
+
if (node.def.checks) {
|
|
167
|
+
for (const check of node.def.checks) {
|
|
168
|
+
const checkDef = check._zod?.def;
|
|
169
|
+
if (!checkDef) {
|
|
170
|
+
continue;
|
|
171
|
+
}
|
|
172
|
+
switch (checkDef.check) {
|
|
173
|
+
case 'min_length':
|
|
174
|
+
if (checkDef.minimum !== undefined) {
|
|
175
|
+
schema.minLength = checkDef.minimum;
|
|
176
|
+
}
|
|
177
|
+
break;
|
|
178
|
+
case 'max_length':
|
|
179
|
+
if (checkDef.maximum !== undefined) {
|
|
180
|
+
schema.maxLength = checkDef.maximum;
|
|
181
|
+
}
|
|
182
|
+
break;
|
|
183
|
+
case 'string_format':
|
|
184
|
+
// Map Zod format names to OpenAPI format names
|
|
185
|
+
if (checkDef.format) {
|
|
186
|
+
schema.format = checkDef.format;
|
|
187
|
+
}
|
|
188
|
+
break;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
return schema;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Convert a Zod number schema to OpenAPI number/integer schema.
|
|
196
|
+
* Extracts minimum, maximum, and determines if integer from checks.
|
|
197
|
+
*
|
|
198
|
+
* @param node - Number ZodNode
|
|
199
|
+
* @returns OpenAPI number or integer schema with constraints
|
|
200
|
+
*/
|
|
201
|
+
function convertNumber(node) {
|
|
202
|
+
const schema = { type: 'number' };
|
|
203
|
+
let isInt = false;
|
|
204
|
+
// Process checks for constraints and format
|
|
205
|
+
if (node.def.checks) {
|
|
206
|
+
for (const check of node.def.checks) {
|
|
207
|
+
const checkDef = check._zod?.def;
|
|
208
|
+
if (!checkDef) {
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
switch (checkDef.check) {
|
|
212
|
+
case 'greater_than':
|
|
213
|
+
if (checkDef.value !== undefined) {
|
|
214
|
+
// OpenAPI uses minimum/exclusiveMinimum
|
|
215
|
+
if (checkDef.inclusive) {
|
|
216
|
+
schema.minimum = checkDef.value;
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
// For exclusive, use the value + note: OpenAPI 3.1 supports exclusiveMinimum as number
|
|
220
|
+
schema.minimum = checkDef.value;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
break;
|
|
224
|
+
case 'less_than':
|
|
225
|
+
if (checkDef.value !== undefined) {
|
|
226
|
+
if (checkDef.inclusive) {
|
|
227
|
+
schema.maximum = checkDef.value;
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
schema.maximum = checkDef.value;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
break;
|
|
234
|
+
case 'number_format':
|
|
235
|
+
// 'safeint' format means .int() was called
|
|
236
|
+
if (checkDef.format === 'safeint') {
|
|
237
|
+
isInt = true;
|
|
238
|
+
}
|
|
239
|
+
break;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
// Use 'integer' type when .int() is applied
|
|
244
|
+
if (isInt) {
|
|
245
|
+
schema.type = 'integer';
|
|
246
|
+
}
|
|
247
|
+
return schema;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Convert a Zod boolean schema to OpenAPI boolean schema.
|
|
251
|
+
*
|
|
252
|
+
* @returns OpenAPI boolean schema
|
|
253
|
+
*/
|
|
254
|
+
function convertBoolean() {
|
|
255
|
+
return { type: 'boolean' };
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Convert a Zod enum schema to OpenAPI string schema with enum values.
|
|
259
|
+
*
|
|
260
|
+
* @param node - Enum ZodNode with `def.entries`
|
|
261
|
+
* @returns OpenAPI string schema with enum array
|
|
262
|
+
*/
|
|
263
|
+
function convertEnum(node) {
|
|
264
|
+
const schema = { type: 'string' };
|
|
265
|
+
if (node.def.entries) {
|
|
266
|
+
// Entries is Record<value, value> — extract the values
|
|
267
|
+
schema.enum = Object.values(node.def.entries);
|
|
268
|
+
}
|
|
269
|
+
return schema;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Convert a Zod literal schema to OpenAPI schema with enum containing the literal value.
|
|
273
|
+
*
|
|
274
|
+
* @param node - Literal ZodNode with `def.values`
|
|
275
|
+
* @returns OpenAPI schema with enum for the literal value
|
|
276
|
+
*/
|
|
277
|
+
function convertLiteral(node) {
|
|
278
|
+
const values = node.def.values || [];
|
|
279
|
+
if (values.length === 1) {
|
|
280
|
+
const val = values[0];
|
|
281
|
+
const schema = {
|
|
282
|
+
type: typeof val === 'number' ? 'number' : typeof val === 'boolean' ? 'boolean' : 'string',
|
|
283
|
+
enum: [val],
|
|
284
|
+
};
|
|
285
|
+
return schema;
|
|
286
|
+
}
|
|
287
|
+
// Multiple literal values — use enum
|
|
288
|
+
return { enum: values };
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Convert a Zod array schema to OpenAPI array schema.
|
|
292
|
+
* Extracts minItems and maxItems from checks.
|
|
293
|
+
*
|
|
294
|
+
* @param node - Array ZodNode with `def.element`
|
|
295
|
+
* @returns OpenAPI array schema with items and constraints
|
|
296
|
+
*/
|
|
297
|
+
function convertArray(node) {
|
|
298
|
+
const schema = { type: 'array' };
|
|
299
|
+
// Convert element type
|
|
300
|
+
if (node.def.element) {
|
|
301
|
+
schema.items = convertNode(node.def.element);
|
|
302
|
+
}
|
|
303
|
+
// Process array-specific checks (min/max items)
|
|
304
|
+
if (node.def.checks) {
|
|
305
|
+
for (const check of node.def.checks) {
|
|
306
|
+
const checkDef = check._zod?.def;
|
|
307
|
+
if (!checkDef) {
|
|
308
|
+
continue;
|
|
309
|
+
}
|
|
310
|
+
switch (checkDef.check) {
|
|
311
|
+
case 'min_length':
|
|
312
|
+
if (checkDef.minimum !== undefined) {
|
|
313
|
+
schema.minItems = checkDef.minimum;
|
|
314
|
+
}
|
|
315
|
+
break;
|
|
316
|
+
case 'max_length':
|
|
317
|
+
if (checkDef.maximum !== undefined) {
|
|
318
|
+
schema.maxItems = checkDef.maximum;
|
|
319
|
+
}
|
|
320
|
+
break;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
return schema;
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Convert a Zod object schema to OpenAPI object schema.
|
|
328
|
+
* Iterates over shape properties and determines which are required.
|
|
329
|
+
*
|
|
330
|
+
* @param node - Object ZodNode with `def.shape`
|
|
331
|
+
* @returns OpenAPI object schema with properties and required list
|
|
332
|
+
*/
|
|
333
|
+
function convertObject(node) {
|
|
334
|
+
const schema = { type: 'object' };
|
|
335
|
+
if (!node.def.shape) {
|
|
336
|
+
return schema;
|
|
337
|
+
}
|
|
338
|
+
const properties = {};
|
|
339
|
+
const required = [];
|
|
340
|
+
for (const [propName, propNode] of Object.entries(node.def.shape)) {
|
|
341
|
+
const { schema: propSchema, isOptional } = convertPropertyWithOptional(propNode);
|
|
342
|
+
properties[propName] = propSchema;
|
|
343
|
+
// Add to required list if not optional and not default
|
|
344
|
+
if (!isOptional) {
|
|
345
|
+
required.push(propName);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
if (Object.keys(properties).length > 0) {
|
|
349
|
+
schema.properties = properties;
|
|
350
|
+
}
|
|
351
|
+
if (required.length > 0) {
|
|
352
|
+
schema.required = required;
|
|
353
|
+
}
|
|
354
|
+
return schema;
|
|
355
|
+
}
|
|
356
|
+
/**
|
|
357
|
+
* Convert a property ZodNode, tracking whether it is optional.
|
|
358
|
+
* Unwraps optional/default wrappers and returns both the schema
|
|
359
|
+
* and an isOptional flag for the parent to use.
|
|
360
|
+
*
|
|
361
|
+
* @param node - The property's ZodNode
|
|
362
|
+
* @returns Object with the converted schema and optionality flag
|
|
363
|
+
*/
|
|
364
|
+
function convertPropertyWithOptional(node) {
|
|
365
|
+
const type = node.def.type;
|
|
366
|
+
if (type === 'optional') {
|
|
367
|
+
// Unwrap optional and convert inner type
|
|
368
|
+
if (node.def.innerType) {
|
|
369
|
+
const innerResult = convertPropertyWithOptional(node.def.innerType);
|
|
370
|
+
return { schema: innerResult.schema, isOptional: true };
|
|
371
|
+
}
|
|
372
|
+
return { schema: { type: 'object' }, isOptional: true };
|
|
373
|
+
}
|
|
374
|
+
if (type === 'default') {
|
|
375
|
+
// Unwrap default, convert inner type, and add default value
|
|
376
|
+
if (node.def.innerType) {
|
|
377
|
+
const innerResult = convertPropertyWithOptional(node.def.innerType);
|
|
378
|
+
const schema = { ...innerResult.schema };
|
|
379
|
+
if (node.def.defaultValue !== undefined) {
|
|
380
|
+
schema.default = node.def.defaultValue;
|
|
381
|
+
}
|
|
382
|
+
// Properties with defaults are treated as optional (not required)
|
|
383
|
+
return { schema, isOptional: true };
|
|
384
|
+
}
|
|
385
|
+
return { schema: { type: 'object' }, isOptional: true };
|
|
386
|
+
}
|
|
387
|
+
// For all other types, convert normally
|
|
388
|
+
return { schema: convertNode(node), isOptional: false };
|
|
389
|
+
}
|
|
390
|
+
/**
|
|
391
|
+
* Convert a Zod optional schema to OpenAPI schema.
|
|
392
|
+
* When encountered at a non-property level (e.g., as a standalone schema),
|
|
393
|
+
* simply returns the inner type's schema.
|
|
394
|
+
*
|
|
395
|
+
* @param node - Optional ZodNode with `def.innerType`
|
|
396
|
+
* @returns The inner type's OpenAPI schema
|
|
397
|
+
*/
|
|
398
|
+
function convertOptional(node) {
|
|
399
|
+
if (node.def.innerType) {
|
|
400
|
+
return convertNode(node.def.innerType);
|
|
401
|
+
}
|
|
402
|
+
return { type: 'object' };
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* Convert a Zod nullable schema to OpenAPI schema.
|
|
406
|
+
* Adds `nullable: true` to the inner type's schema.
|
|
407
|
+
*
|
|
408
|
+
* @param node - Nullable ZodNode with `def.innerType`
|
|
409
|
+
* @returns The inner type's OpenAPI schema with nullable flag
|
|
410
|
+
*/
|
|
411
|
+
function convertNullable(node) {
|
|
412
|
+
if (node.def.innerType) {
|
|
413
|
+
const schema = convertNode(node.def.innerType);
|
|
414
|
+
schema.nullable = true;
|
|
415
|
+
return schema;
|
|
416
|
+
}
|
|
417
|
+
return { type: 'object', nullable: true };
|
|
418
|
+
}
|
|
419
|
+
/**
|
|
420
|
+
* Convert a Zod default schema to OpenAPI schema.
|
|
421
|
+
* Adds the `default` value to the inner type's schema.
|
|
422
|
+
*
|
|
423
|
+
* @param node - Default ZodNode with `def.innerType` and `def.defaultValue`
|
|
424
|
+
* @returns The inner type's OpenAPI schema with default value
|
|
425
|
+
*/
|
|
426
|
+
function convertDefault(node) {
|
|
427
|
+
if (node.def.innerType) {
|
|
428
|
+
const schema = convertNode(node.def.innerType);
|
|
429
|
+
if (node.def.defaultValue !== undefined) {
|
|
430
|
+
schema.default = node.def.defaultValue;
|
|
431
|
+
}
|
|
432
|
+
return schema;
|
|
433
|
+
}
|
|
434
|
+
return { type: 'object' };
|
|
435
|
+
}
|
|
436
|
+
/**
|
|
437
|
+
* Convert a Zod union schema to OpenAPI anyOf schema.
|
|
438
|
+
*
|
|
439
|
+
* @param node - Union ZodNode with `def.options`
|
|
440
|
+
* @returns OpenAPI schema with anyOf containing all union members
|
|
441
|
+
*/
|
|
442
|
+
function convertUnion(node) {
|
|
443
|
+
if (!node.def.options || node.def.options.length === 0) {
|
|
444
|
+
return { type: 'object' };
|
|
445
|
+
}
|
|
446
|
+
const schemas = node.def.options.map(optionNode => convertNode(optionNode));
|
|
447
|
+
return { anyOf: schemas };
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Convert a Zod pipe schema to OpenAPI schema.
|
|
451
|
+
*
|
|
452
|
+
* Pipe types are created by `.transform()` and `.pipe()`. They have:
|
|
453
|
+
* - `def.in` — the input schema (what the API consumer sends)
|
|
454
|
+
* - `def.out` — the output schema (what the code receives after transformation)
|
|
455
|
+
*
|
|
456
|
+
* For OpenAPI, we use the **input** schema because that represents what the
|
|
457
|
+
* API consumer needs to send. The transform/pipe output is a runtime concern
|
|
458
|
+
* that doesn't affect the API contract.
|
|
459
|
+
*
|
|
460
|
+
* @example
|
|
461
|
+
* ```typescript
|
|
462
|
+
* // z.string().transform(val => val.split(',')) → { type: 'string' }
|
|
463
|
+
* // z.string().pipe(z.number()) → { type: 'string' }
|
|
464
|
+
* // z.object({...}).transform(obj => obj.name) → { type: 'object', ... }
|
|
465
|
+
* ```
|
|
466
|
+
*
|
|
467
|
+
* @param node - Pipe ZodNode with `def.in` (input) and `def.out` (output)
|
|
468
|
+
* @returns The input schema's OpenAPI representation
|
|
469
|
+
*/
|
|
470
|
+
function convertPipe(node) {
|
|
471
|
+
// Extract the input schema from the pipe — this is a full Zod schema
|
|
472
|
+
// object (not a ZodNode), so we access _zod to get the node
|
|
473
|
+
const inputNode = node.def.in?._zod;
|
|
474
|
+
if (inputNode) {
|
|
475
|
+
return convertNode(inputNode);
|
|
476
|
+
}
|
|
477
|
+
// Fallback if no input schema found
|
|
478
|
+
return { type: 'object' };
|
|
479
|
+
}
|
|
480
|
+
//# sourceMappingURL=zod-to-openapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zod-to-openapi.js","sourceRoot":"","sources":["../../src/generator/zod-to-openapi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"any-schema.d.ts","sourceRoot":"","sources":["../../src/schema/any-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,SAAU,SAAQ,YAAY;gBAC7B,SAAS,EAAE,eAAe;CAQvC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SchemaObject } from './schema-object.js';
|
|
2
|
+
export class AnySchema extends SchemaObject {
|
|
3
|
+
constructor(container) {
|
|
4
|
+
super(container);
|
|
5
|
+
this.setData({
|
|
6
|
+
primitive: true,
|
|
7
|
+
tsType: 'any',
|
|
8
|
+
zodType: 'any',
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=any-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"any-schema.js","sourceRoot":"","sources":["../../src/schema/any-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,SAAU,SAAQ,YAAY;IACzC,YAAY,SAA0B;QACpC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boolean-schema.d.ts","sourceRoot":"","sources":["../../src/schema/boolean-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,aAAc,SAAQ,YAAY;gBACjC,SAAS,EAAE,eAAe;CAQvC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SchemaObject } from './schema-object.js';
|
|
2
|
+
export class BooleanSchema extends SchemaObject {
|
|
3
|
+
constructor(container) {
|
|
4
|
+
super(container);
|
|
5
|
+
this.setData({
|
|
6
|
+
primitive: true,
|
|
7
|
+
tsType: 'boolean',
|
|
8
|
+
zodType: 'boolean'
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=boolean-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boolean-schema.js","sourceRoot":"","sources":["../../src/schema/boolean-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC7C,YAAY,SAA0B;QACpC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,SAAS;YACjB,OAAO,EAAC,SAAS;SAClB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-schema.d.ts","sourceRoot":"","sources":["../../src/schema/date-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,UAAW,SAAQ,YAAY;gBAC9B,SAAS,EAAE,eAAe;CAQvC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SchemaObject } from './schema-object.js';
|
|
2
|
+
export class DateSchema extends SchemaObject {
|
|
3
|
+
constructor(container) {
|
|
4
|
+
super(container);
|
|
5
|
+
this.setData({
|
|
6
|
+
primitive: true,
|
|
7
|
+
tsType: 'Date',
|
|
8
|
+
zodType: 'date',
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=date-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-schema.js","sourceRoot":"","sources":["../../src/schema/date-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,UAAW,SAAQ,YAAY;IAC1C,YAAY,SAA0B;QACpC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC;YACX,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './any-schema.js';
|
|
2
|
+
export * from './boolean-schema.js';
|
|
3
|
+
export * from './date-schema.js';
|
|
4
|
+
export * from './object-schema.js';
|
|
5
|
+
export * from './primitive-schema.js';
|
|
6
|
+
export * from './ref-schema.js';
|
|
7
|
+
export * from './schema-container.js';
|
|
8
|
+
export * from './schema-scope.js';
|
|
9
|
+
export * from './utils.js';
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './any-schema.js';
|
|
2
|
+
export * from './boolean-schema.js';
|
|
3
|
+
export * from './date-schema.js';
|
|
4
|
+
export * from './object-schema.js';
|
|
5
|
+
export * from './primitive-schema.js';
|
|
6
|
+
export * from './ref-schema.js';
|
|
7
|
+
export * from './schema-container.js';
|
|
8
|
+
export * from './schema-scope.js';
|
|
9
|
+
export * from './utils.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SchemaContainer } from './schema-container.js';
|
|
2
|
+
import { SchemaObject } from './schema-object.js';
|
|
3
|
+
export type ObjectProps = Record<string, SchemaObject>;
|
|
4
|
+
export declare class ObjectSchema extends SchemaObject {
|
|
5
|
+
protected props: ObjectProps;
|
|
6
|
+
constructor(container: SchemaContainer);
|
|
7
|
+
properties(props: ObjectProps): void;
|
|
8
|
+
getProperties(): ObjectProps;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=object-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-schema.d.ts","sourceRoot":"","sources":["../../src/schema/object-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEvD,qBAAa,YAAa,SAAQ,YAAY;IAC5C,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC;gBACjB,SAAS,EAAE,eAAe;IAUtC,UAAU,CAAC,KAAK,EAAE,WAAW;IAK7B,aAAa;CAGd"}
|