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,416 @@
|
|
|
1
|
+
export const INTROSPECTION_SQL = `
|
|
2
|
+
-- ===========================================================
|
|
3
|
+
-- Enhanced introspect.sql
|
|
4
|
+
-- Includes user-defined types (UDTs) and
|
|
5
|
+
-- FILTERS composite types to ONLY those created by hand
|
|
6
|
+
-- (standalone composites: pg_class.relkind = 'c').
|
|
7
|
+
-- ===========================================================
|
|
8
|
+
|
|
9
|
+
WITH base AS (
|
|
10
|
+
SELECT
|
|
11
|
+
current_database() AS database_name,
|
|
12
|
+
n.nspname AS schema_name,
|
|
13
|
+
c.relname AS relation_name,
|
|
14
|
+
CASE c.relkind
|
|
15
|
+
WHEN 'r' THEN 'table'
|
|
16
|
+
WHEN 'p' THEN 'partitioned table'
|
|
17
|
+
WHEN 'v' THEN 'view'
|
|
18
|
+
WHEN 'm' THEN 'materialized view'
|
|
19
|
+
WHEN 'f' THEN 'foreign table'
|
|
20
|
+
ELSE c.relkind::text
|
|
21
|
+
END AS relation_kind,
|
|
22
|
+
|
|
23
|
+
obj_description(c.oid, 'pg_class') AS table_comment,
|
|
24
|
+
|
|
25
|
+
a.attname AS column_name,
|
|
26
|
+
col_description(a.attrelid, a.attnum) AS column_comment,
|
|
27
|
+
|
|
28
|
+
(NOT a.attnotnull) AS is_nullable,
|
|
29
|
+
|
|
30
|
+
(ad.adbin IS NOT NULL) AS has_default,
|
|
31
|
+
CASE
|
|
32
|
+
WHEN ad.adbin IS NOT NULL THEN pg_get_expr(ad.adbin, ad.adrelid)
|
|
33
|
+
ELSE NULL
|
|
34
|
+
END AS column_default,
|
|
35
|
+
|
|
36
|
+
COALESCE(bt.typname, t.typname) AS pg_type,
|
|
37
|
+
|
|
38
|
+
format_type(a.atttypid, a.atttypmod) AS formatted_type,
|
|
39
|
+
|
|
40
|
+
(et.typcategory = 'A') AS is_array,
|
|
41
|
+
|
|
42
|
+
CASE WHEN et.typcategory = 'A'
|
|
43
|
+
THEN COALESCE(elem_bt.typname, elem.typname)
|
|
44
|
+
END AS array_element_pg_type,
|
|
45
|
+
CASE WHEN et.typcategory = 'A'
|
|
46
|
+
THEN format_type(COALESCE(elem_bt.oid, elem.oid), a.atttypmod)
|
|
47
|
+
END AS array_element_formatted_type,
|
|
48
|
+
|
|
49
|
+
CASE
|
|
50
|
+
WHEN (
|
|
51
|
+
(et.typcategory = 'A' AND COALESCE(elem_bt.typname, elem.typname) IN ('varchar','bpchar'))
|
|
52
|
+
OR (et.typcategory <> 'A' AND COALESCE(bt.typname, t.typname) IN ('varchar','bpchar'))
|
|
53
|
+
) THEN NULLIF(a.atttypmod - 4, -1)
|
|
54
|
+
ELSE NULL
|
|
55
|
+
END AS length,
|
|
56
|
+
|
|
57
|
+
CASE
|
|
58
|
+
WHEN (
|
|
59
|
+
(et.typcategory = 'A' AND COALESCE(elem_bt.typname, elem.typname) = 'numeric')
|
|
60
|
+
OR (et.typcategory <> 'A' AND COALESCE(bt.typname, t.typname) = 'numeric')
|
|
61
|
+
) THEN information_schema._pg_numeric_precision(COALESCE(elem_bt.oid, elem.oid, a.atttypid), a.atttypmod)
|
|
62
|
+
ELSE NULL
|
|
63
|
+
END AS precision,
|
|
64
|
+
|
|
65
|
+
CASE
|
|
66
|
+
WHEN (
|
|
67
|
+
(et.typcategory = 'A' AND COALESCE(elem_bt.typname, elem.typname) = 'numeric')
|
|
68
|
+
OR (et.typcategory <> 'A' AND COALESCE(bt.typname, t.typname) = 'numeric')
|
|
69
|
+
) THEN information_schema._pg_numeric_scale(COALESCE(elem_bt.oid, elem.oid, a.atttypid), a.atttypmod)
|
|
70
|
+
ELSE NULL
|
|
71
|
+
END AS scale,
|
|
72
|
+
|
|
73
|
+
EXISTS (
|
|
74
|
+
SELECT 1
|
|
75
|
+
FROM pg_index i
|
|
76
|
+
WHERE i.indrelid = c.oid
|
|
77
|
+
AND i.indisprimary
|
|
78
|
+
AND a.attnum = ANY(i.indkey)
|
|
79
|
+
) AS is_primary_key,
|
|
80
|
+
|
|
81
|
+
EXISTS (
|
|
82
|
+
SELECT 1
|
|
83
|
+
FROM pg_index i
|
|
84
|
+
WHERE i.indrelid = c.oid
|
|
85
|
+
AND i.indisunique
|
|
86
|
+
AND a.attnum = ANY(i.indkey)
|
|
87
|
+
) AS is_unique,
|
|
88
|
+
|
|
89
|
+
EXISTS (
|
|
90
|
+
SELECT 1
|
|
91
|
+
FROM pg_constraint con
|
|
92
|
+
WHERE con.conrelid = c.oid
|
|
93
|
+
AND con.contype = 'f'
|
|
94
|
+
AND a.attnum = ANY(con.conkey)
|
|
95
|
+
) AS is_foreign_key,
|
|
96
|
+
|
|
97
|
+
(
|
|
98
|
+
SELECT jsonb_agg(jsonb_build_object(
|
|
99
|
+
'constraint_name', con.conname,
|
|
100
|
+
'schema', n2.nspname,
|
|
101
|
+
'table', c2.relname,
|
|
102
|
+
'columns',
|
|
103
|
+
(
|
|
104
|
+
SELECT jsonb_agg(a2.attname ORDER BY k2.ord)
|
|
105
|
+
FROM unnest(con.confkey) WITH ORDINALITY AS k2(attnum, ord)
|
|
106
|
+
JOIN pg_attribute a2 ON a2.attrelid = con.confrelid AND a2.attnum = k2.attnum
|
|
107
|
+
),
|
|
108
|
+
'referenced_columns',
|
|
109
|
+
(
|
|
110
|
+
SELECT jsonb_agg(a1.attname ORDER BY k1.ord)
|
|
111
|
+
FROM unnest(con.conkey) WITH ORDINALITY AS k1(attnum, ord)
|
|
112
|
+
JOIN pg_attribute a1 ON a1.attrelid = con.conrelid AND a1.attnum = k1.attnum
|
|
113
|
+
)
|
|
114
|
+
) ORDER BY con.conname)
|
|
115
|
+
FROM pg_constraint con
|
|
116
|
+
JOIN pg_class c2 ON c2.oid = con.confrelid
|
|
117
|
+
JOIN pg_namespace n2 ON n2.oid = c2.relnamespace
|
|
118
|
+
WHERE con.conrelid = c.oid
|
|
119
|
+
AND con.contype = 'f'
|
|
120
|
+
AND a.attnum = ANY(con.conkey)
|
|
121
|
+
) AS fk_info,
|
|
122
|
+
|
|
123
|
+
EXISTS (
|
|
124
|
+
SELECT 1
|
|
125
|
+
FROM pg_constraint con
|
|
126
|
+
WHERE con.conrelid = c.oid
|
|
127
|
+
AND con.contype = 'c'
|
|
128
|
+
AND a.attnum = ANY(con.conkey)
|
|
129
|
+
) AS is_check_constrained,
|
|
130
|
+
|
|
131
|
+
(
|
|
132
|
+
SELECT string_agg(pg_get_constraintdef(con.oid), ' AND ')
|
|
133
|
+
FROM pg_constraint con
|
|
134
|
+
WHERE con.conrelid = c.oid
|
|
135
|
+
AND con.contype = 'c'
|
|
136
|
+
AND a.attnum = ANY(con.conkey)
|
|
137
|
+
) AS check_constraints,
|
|
138
|
+
|
|
139
|
+
CASE
|
|
140
|
+
WHEN et.typcategory = 'A' THEN EXISTS (
|
|
141
|
+
SELECT 1 FROM pg_type tt
|
|
142
|
+
WHERE tt.oid = COALESCE(elem_bt.oid, elem.oid)
|
|
143
|
+
AND tt.typtype = 'e'
|
|
144
|
+
)
|
|
145
|
+
ELSE EXISTS (
|
|
146
|
+
SELECT 1 FROM pg_type tt
|
|
147
|
+
WHERE tt.oid = COALESCE(bt.oid, t.oid)
|
|
148
|
+
AND tt.typtype = 'e'
|
|
149
|
+
)
|
|
150
|
+
END AS is_enum,
|
|
151
|
+
|
|
152
|
+
CASE
|
|
153
|
+
WHEN et.typcategory = 'A' THEN (
|
|
154
|
+
SELECT ns.nspname || '.' || tt.typname
|
|
155
|
+
FROM pg_type tt
|
|
156
|
+
JOIN pg_namespace ns ON ns.oid = tt.typnamespace
|
|
157
|
+
WHERE tt.oid = COALESCE(elem_bt.oid, elem.oid)
|
|
158
|
+
AND tt.typtype = 'e'
|
|
159
|
+
)
|
|
160
|
+
ELSE (
|
|
161
|
+
SELECT ns.nspname || '.' || tt.typname
|
|
162
|
+
FROM pg_type tt
|
|
163
|
+
JOIN pg_namespace ns ON ns.oid = tt.typnamespace
|
|
164
|
+
WHERE tt.oid = COALESCE(bt.oid, t.oid)
|
|
165
|
+
AND tt.typtype = 'e'
|
|
166
|
+
)
|
|
167
|
+
END AS enum_type_name,
|
|
168
|
+
|
|
169
|
+
CASE
|
|
170
|
+
WHEN et.typcategory = 'A' THEN (
|
|
171
|
+
SELECT array_agg(e.enumlabel ORDER BY e.enumsortorder)
|
|
172
|
+
FROM pg_enum e
|
|
173
|
+
WHERE e.enumtypid = COALESCE(elem_bt.oid, elem.oid)
|
|
174
|
+
)
|
|
175
|
+
ELSE (
|
|
176
|
+
SELECT array_agg(e.enumlabel ORDER BY e.enumsortorder)
|
|
177
|
+
FROM pg_enum e
|
|
178
|
+
WHERE e.enumtypid = COALESCE(bt.oid, t.oid)
|
|
179
|
+
)
|
|
180
|
+
END AS enum_labels,
|
|
181
|
+
|
|
182
|
+
t.oid AS type_oid
|
|
183
|
+
|
|
184
|
+
FROM pg_attribute a
|
|
185
|
+
JOIN pg_class c ON c.oid = a.attrelid
|
|
186
|
+
JOIN pg_namespace n ON n.oid = c.relnamespace
|
|
187
|
+
JOIN pg_type t ON t.oid = a.atttypid
|
|
188
|
+
LEFT JOIN pg_type bt ON t.typtype = 'd' AND bt.oid = t.typbasetype
|
|
189
|
+
LEFT JOIN pg_type et ON et.oid = COALESCE(bt.oid, t.oid)
|
|
190
|
+
LEFT JOIN pg_type elem ON elem.oid = CASE WHEN et.typcategory = 'A' THEN et.typelem END
|
|
191
|
+
LEFT JOIN pg_type elem_bt ON elem.typtype = 'd' AND elem_bt.oid = elem.typbasetype
|
|
192
|
+
LEFT JOIN pg_attrdef ad ON ad.adrelid = a.attrelid AND ad.adnum = a.attnum
|
|
193
|
+
WHERE
|
|
194
|
+
a.attnum > 0
|
|
195
|
+
AND NOT a.attisdropped
|
|
196
|
+
AND c.relkind IN ('r','p','v','m','f')
|
|
197
|
+
AND n.nspname NOT IN ('pg_catalog','information_schema')
|
|
198
|
+
)
|
|
199
|
+
|
|
200
|
+
-- 1) Standalone composite types only (created by hand)
|
|
201
|
+
, composite AS (
|
|
202
|
+
SELECT
|
|
203
|
+
current_database() AS database_name,
|
|
204
|
+
n.nspname AS schema_name,
|
|
205
|
+
t.typname AS relation_name,
|
|
206
|
+
'composite type' AS relation_kind,
|
|
207
|
+
obj_description(t.oid, 'pg_type') AS table_comment,
|
|
208
|
+
|
|
209
|
+
a.attname AS column_name,
|
|
210
|
+
col_description(c.oid, a.attnum) AS column_comment,
|
|
211
|
+
|
|
212
|
+
NOT a.attnotnull AS is_nullable,
|
|
213
|
+
FALSE AS has_default,
|
|
214
|
+
NULL::text AS column_default,
|
|
215
|
+
|
|
216
|
+
COALESCE(bt.typname, ty.typname) AS pg_type,
|
|
217
|
+
format_type(a.atttypid, a.atttypmod) AS formatted_type,
|
|
218
|
+
|
|
219
|
+
(et.typcategory = 'A') AS is_array,
|
|
220
|
+
CASE WHEN et.typcategory = 'A' THEN COALESCE(elem_bt.typname, elem.typname) END AS array_element_pg_type,
|
|
221
|
+
CASE WHEN et.typcategory = 'A' THEN format_type(COALESCE(elem_bt.oid, elem.oid), a.atttypmod) END AS array_element_formatted_type,
|
|
222
|
+
|
|
223
|
+
CASE
|
|
224
|
+
WHEN et.typcategory IN ('S','E','P','R') THEN NULL
|
|
225
|
+
WHEN et.typcategory = 'A' THEN NULL
|
|
226
|
+
ELSE information_schema._pg_char_max_length(a.atttypid, a.atttypmod)
|
|
227
|
+
END AS length,
|
|
228
|
+
|
|
229
|
+
information_schema._pg_numeric_precision(COALESCE(elem_bt.oid, elem.oid, a.atttypid), a.atttypmod) AS precision,
|
|
230
|
+
information_schema._pg_numeric_scale(COALESCE(elem_bt.oid, elem.oid, a.atttypid), a.atttypmod) AS scale,
|
|
231
|
+
|
|
232
|
+
FALSE AS is_primary_key,
|
|
233
|
+
FALSE AS is_unique,
|
|
234
|
+
FALSE AS is_foreign_key,
|
|
235
|
+
NULL::jsonb AS fk_info,
|
|
236
|
+
|
|
237
|
+
FALSE AS is_check_constrained,
|
|
238
|
+
NULL::text AS check_constraints,
|
|
239
|
+
|
|
240
|
+
EXISTS (
|
|
241
|
+
SELECT 1 FROM pg_type tt
|
|
242
|
+
WHERE tt.oid = COALESCE(elem_bt.oid, elem.oid, bt.oid, ty.oid) AND tt.typtype = 'e'
|
|
243
|
+
) AS is_enum,
|
|
244
|
+
|
|
245
|
+
CASE
|
|
246
|
+
WHEN EXISTS (
|
|
247
|
+
SELECT 1 FROM pg_type tt
|
|
248
|
+
WHERE tt.oid = COALESCE(elem_bt.oid, elem.oid) AND tt.typtype = 'e'
|
|
249
|
+
) THEN (
|
|
250
|
+
SELECT ns.nspname || '.' || tt.typname
|
|
251
|
+
FROM pg_type tt JOIN pg_namespace ns ON ns.oid = tt.typnamespace
|
|
252
|
+
WHERE tt.oid = COALESCE(elem_bt.oid, elem.oid)
|
|
253
|
+
)
|
|
254
|
+
WHEN EXISTS (
|
|
255
|
+
SELECT 1 FROM pg_type tt
|
|
256
|
+
WHERE tt.oid = COALESCE(bt.oid, ty.oid) AND tt.typtype = 'e'
|
|
257
|
+
) THEN (
|
|
258
|
+
SELECT ns.nspname || '.' || tt.typname
|
|
259
|
+
FROM pg_type tt JOIN pg_namespace ns ON ns.oid = tt.typnamespace
|
|
260
|
+
WHERE tt.oid = COALESCE(bt.oid, ty.oid)
|
|
261
|
+
)
|
|
262
|
+
ELSE NULL
|
|
263
|
+
END AS enum_type_name,
|
|
264
|
+
|
|
265
|
+
CASE
|
|
266
|
+
WHEN EXISTS (
|
|
267
|
+
SELECT 1 FROM pg_type tt
|
|
268
|
+
WHERE tt.oid = COALESCE(elem_bt.oid, elem.oid) AND tt.typtype = 'e'
|
|
269
|
+
) THEN (
|
|
270
|
+
SELECT array_agg(e.enumlabel ORDER BY e.enumsortorder)
|
|
271
|
+
FROM pg_enum e WHERE e.enumtypid = COALESCE(elem_bt.oid, elem.oid)
|
|
272
|
+
)
|
|
273
|
+
WHEN EXISTS (
|
|
274
|
+
SELECT 1 FROM pg_type tt
|
|
275
|
+
WHERE tt.oid = COALESCE(bt.oid, ty.oid) AND tt.typtype = 'e'
|
|
276
|
+
) THEN (
|
|
277
|
+
SELECT array_agg(e.enumlabel ORDER BY e.enumsortorder)
|
|
278
|
+
FROM pg_enum e WHERE e.enumtypid = COALESCE(bt.oid, ty.oid)
|
|
279
|
+
)
|
|
280
|
+
ELSE NULL
|
|
281
|
+
END AS enum_labels,
|
|
282
|
+
|
|
283
|
+
a.atttypid AS type_oid
|
|
284
|
+
|
|
285
|
+
FROM pg_type t
|
|
286
|
+
JOIN pg_namespace n ON n.oid = t.typnamespace
|
|
287
|
+
JOIN pg_class c ON c.oid = t.typrelid
|
|
288
|
+
JOIN pg_attribute a ON a.attrelid = c.oid
|
|
289
|
+
JOIN pg_type ty ON ty.oid = a.atttypid
|
|
290
|
+
LEFT JOIN pg_type bt ON ty.typtype = 'd' AND bt.oid = ty.typbasetype
|
|
291
|
+
LEFT JOIN pg_type et ON et.oid = COALESCE(bt.oid, ty.oid)
|
|
292
|
+
LEFT JOIN pg_type elem ON elem.oid = CASE WHEN et.typcategory = 'A' THEN et.typelem END
|
|
293
|
+
LEFT JOIN pg_type elem_bt ON elem.typtype = 'd' AND elem_bt.oid = elem.typbasetype
|
|
294
|
+
WHERE t.typtype = 'c'
|
|
295
|
+
AND c.relkind = 'c' -- <<< filter to standalone composites created by hand
|
|
296
|
+
AND a.attnum > 0 AND NOT a.attisdropped
|
|
297
|
+
AND n.nspname NOT IN ('pg_catalog','information_schema')
|
|
298
|
+
)
|
|
299
|
+
|
|
300
|
+
-- 2) Enum types: one row per label
|
|
301
|
+
, enum_rows AS (
|
|
302
|
+
SELECT
|
|
303
|
+
current_database() AS database_name,
|
|
304
|
+
n.nspname AS schema_name,
|
|
305
|
+
t.typname AS relation_name,
|
|
306
|
+
'enum type' AS relation_kind,
|
|
307
|
+
obj_description(t.oid, 'pg_type') AS table_comment,
|
|
308
|
+
|
|
309
|
+
e.enumlabel AS column_name,
|
|
310
|
+
NULL::text AS column_comment,
|
|
311
|
+
|
|
312
|
+
NULL::boolean AS is_nullable,
|
|
313
|
+
FALSE AS has_default,
|
|
314
|
+
NULL::text AS column_default,
|
|
315
|
+
|
|
316
|
+
'text' AS pg_type,
|
|
317
|
+
'text' AS formatted_type,
|
|
318
|
+
|
|
319
|
+
FALSE AS is_array,
|
|
320
|
+
NULL::text AS array_element_pg_type,
|
|
321
|
+
NULL::text AS array_element_formatted_type,
|
|
322
|
+
|
|
323
|
+
NULL::integer AS length,
|
|
324
|
+
NULL::integer AS precision,
|
|
325
|
+
NULL::integer AS scale,
|
|
326
|
+
|
|
327
|
+
FALSE AS is_primary_key,
|
|
328
|
+
FALSE AS is_unique,
|
|
329
|
+
FALSE AS is_foreign_key,
|
|
330
|
+
NULL::jsonb AS fk_info,
|
|
331
|
+
|
|
332
|
+
TRUE AS is_check_constrained,
|
|
333
|
+
NULL::text AS check_constraints,
|
|
334
|
+
|
|
335
|
+
TRUE AS is_enum,
|
|
336
|
+
n.nspname || '.' || t.typname AS enum_type_name,
|
|
337
|
+
NULL::text[] AS enum_labels,
|
|
338
|
+
|
|
339
|
+
t.oid AS type_oid
|
|
340
|
+
FROM pg_type t
|
|
341
|
+
JOIN pg_namespace n ON n.oid = t.typnamespace
|
|
342
|
+
JOIN pg_enum e ON e.enumtypid = t.oid
|
|
343
|
+
WHERE t.typtype = 'e'
|
|
344
|
+
AND n.nspname NOT IN ('pg_catalog','information_schema')
|
|
345
|
+
)
|
|
346
|
+
|
|
347
|
+
-- 3) Domain types: one synthetic "(base)" row with CHECKs
|
|
348
|
+
, domain_rows AS (
|
|
349
|
+
SELECT
|
|
350
|
+
current_database() AS database_name,
|
|
351
|
+
n.nspname AS schema_name,
|
|
352
|
+
t.typname AS relation_name,
|
|
353
|
+
'domain type' AS relation_kind,
|
|
354
|
+
obj_description(t.oid, 'pg_type') AS table_comment,
|
|
355
|
+
|
|
356
|
+
'(base)' AS column_name,
|
|
357
|
+
NULL::text AS column_comment,
|
|
358
|
+
|
|
359
|
+
NULL::boolean AS is_nullable,
|
|
360
|
+
FALSE AS has_default,
|
|
361
|
+
NULL::text AS column_default,
|
|
362
|
+
|
|
363
|
+
COALESCE(bt.typname, baset.typname) AS pg_type,
|
|
364
|
+
format_type(t.typbasetype, t.typtypmod) AS formatted_type,
|
|
365
|
+
|
|
366
|
+
FALSE AS is_array,
|
|
367
|
+
NULL::text AS array_element_pg_type,
|
|
368
|
+
NULL::text AS array_element_formatted_type,
|
|
369
|
+
|
|
370
|
+
information_schema._pg_char_max_length(t.typbasetype, t.typtypmod) AS length,
|
|
371
|
+
information_schema._pg_numeric_precision(t.typbasetype, t.typtypmod) AS precision,
|
|
372
|
+
information_schema._pg_numeric_scale(t.typbasetype, t.typtypmod) AS scale,
|
|
373
|
+
|
|
374
|
+
FALSE AS is_primary_key,
|
|
375
|
+
FALSE AS is_unique,
|
|
376
|
+
FALSE AS is_foreign_key,
|
|
377
|
+
NULL::jsonb AS fk_info,
|
|
378
|
+
|
|
379
|
+
(EXISTS (SELECT 1 FROM pg_constraint con WHERE con.contypid = t.oid AND con.contype = 'c')) AS is_check_constrained,
|
|
380
|
+
(
|
|
381
|
+
SELECT string_agg(pg_get_constraintdef(con.oid), ' AND ')
|
|
382
|
+
FROM pg_constraint con
|
|
383
|
+
WHERE con.contypid = t.oid AND con.contype = 'c'
|
|
384
|
+
) AS check_constraints,
|
|
385
|
+
|
|
386
|
+
EXISTS (SELECT 1 FROM pg_type tt WHERE tt.oid = t.typbasetype AND tt.typtype = 'e') AS is_enum,
|
|
387
|
+
CASE
|
|
388
|
+
WHEN EXISTS (SELECT 1 FROM pg_type tt WHERE tt.oid = t.typbasetype AND tt.typtype = 'e')
|
|
389
|
+
THEN (
|
|
390
|
+
SELECT ns.nspname || '.' || tt.typname
|
|
391
|
+
FROM pg_type tt JOIN pg_namespace ns ON ns.oid = tt.typnamespace
|
|
392
|
+
WHERE tt.oid = t.typbasetype
|
|
393
|
+
)
|
|
394
|
+
ELSE NULL
|
|
395
|
+
END AS enum_type_name,
|
|
396
|
+
NULL::text[] AS enum_labels,
|
|
397
|
+
|
|
398
|
+
t.oid AS type_oid
|
|
399
|
+
FROM pg_type t
|
|
400
|
+
JOIN pg_namespace n ON n.oid = t.typnamespace
|
|
401
|
+
LEFT JOIN pg_type baset ON baset.oid = t.typbasetype
|
|
402
|
+
LEFT JOIN pg_type bt ON baset.typtype = 'd' AND bt.oid = baset.typbasetype
|
|
403
|
+
WHERE t.typtype = 'd'
|
|
404
|
+
AND n.nspname NOT IN ('pg_catalog','information_schema')
|
|
405
|
+
)
|
|
406
|
+
|
|
407
|
+
SELECT * FROM base
|
|
408
|
+
UNION ALL
|
|
409
|
+
SELECT * FROM composite
|
|
410
|
+
UNION ALL
|
|
411
|
+
SELECT * FROM enum_rows
|
|
412
|
+
UNION ALL
|
|
413
|
+
SELECT * FROM domain_rows
|
|
414
|
+
ORDER BY schema_name, relation_name, column_name;
|
|
415
|
+
`;
|
|
416
|
+
//# sourceMappingURL=introspect-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspect-query.js","sourceRoot":"","sources":["../../../src/database/introspect/introspect-query.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8ZhC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export interface ColumnIntrospection {
|
|
2
|
+
database_name: string;
|
|
3
|
+
schema_name: string;
|
|
4
|
+
relation_name: string;
|
|
5
|
+
relation_kind: 'table' | 'view' | 'materialized view' | 'partitioned table' | 'foreign table' | 'enum type' | 'composite type';
|
|
6
|
+
table_comment: string | null;
|
|
7
|
+
column_name: string;
|
|
8
|
+
column_comment: string | null;
|
|
9
|
+
is_nullable: boolean;
|
|
10
|
+
has_default: boolean;
|
|
11
|
+
column_default: string | null;
|
|
12
|
+
pg_type: string;
|
|
13
|
+
formatted_type: string;
|
|
14
|
+
is_array: boolean;
|
|
15
|
+
array_element_pg_type: string | null;
|
|
16
|
+
array_element_formatted_type: string | null;
|
|
17
|
+
length: number | null;
|
|
18
|
+
precision: number | null;
|
|
19
|
+
scale: number | null;
|
|
20
|
+
is_primary_key: boolean;
|
|
21
|
+
is_unique: boolean;
|
|
22
|
+
is_foreign_key: boolean;
|
|
23
|
+
fk_info: ForeignKeyInfo[] | null;
|
|
24
|
+
is_check_constrained: boolean;
|
|
25
|
+
check_constraints: CheckConstraintInfo[] | null;
|
|
26
|
+
is_enum: boolean;
|
|
27
|
+
enum_type_name: string | null;
|
|
28
|
+
enum_labels: string[] | string | null;
|
|
29
|
+
type_oid: number;
|
|
30
|
+
}
|
|
31
|
+
export interface ForeignKeyInfo {
|
|
32
|
+
constraint_name: string;
|
|
33
|
+
ref_schema: string;
|
|
34
|
+
ref_table: string;
|
|
35
|
+
ref_columns: string[];
|
|
36
|
+
column_positions: number[];
|
|
37
|
+
update_action: 'NO ACTION' | 'RESTRICT' | 'CASCADE' | 'SET NULL' | 'SET DEFAULT';
|
|
38
|
+
delete_action: 'NO ACTION' | 'RESTRICT' | 'CASCADE' | 'SET NULL' | 'SET DEFAULT';
|
|
39
|
+
match_type: 'SIMPLE' | 'FULL' | 'PARTIAL';
|
|
40
|
+
}
|
|
41
|
+
export interface CheckConstraintInfo {
|
|
42
|
+
constraint_name: string;
|
|
43
|
+
definition: string;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=introspect-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspect-types.d.ts","sourceRoot":"","sources":["../../../src/database/introspect/introspect-types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EACT,OAAO,GACP,MAAM,GACN,mBAAmB,GACnB,mBAAmB,GACnB,eAAe,GACf,WAAW,GACX,gBAAgB,CAAC;IACrB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,iBAAiB,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;IACjF,aAAa,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;IACjF,UAAU,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspect-types.js","sourceRoot":"","sources":["../../../src/database/introspect/introspect-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { PostgreSQLDatabase } from '../../../postgresql/index.js';
|
|
2
|
+
import { SchemaContainer } from '../../schema/schema-container.js';
|
|
3
|
+
import { SchemaObject } from '../../schema/schema-object.js';
|
|
4
|
+
import { SchemaScope } from '../../schema/schema-scope.js';
|
|
5
|
+
import { ColumnIntrospection } from './introspect-types.js';
|
|
6
|
+
export type ColumnMapper = (r: ColumnIntrospection, s: SchemaScope) => SchemaObject | unknown;
|
|
7
|
+
type TypesIndex = Record<string, SchemaObject>;
|
|
8
|
+
export interface ConstantType {
|
|
9
|
+
[name: string]: string[];
|
|
10
|
+
}
|
|
11
|
+
export declare class PostgreSQLIntrospector {
|
|
12
|
+
protected db: PostgreSQLDatabase;
|
|
13
|
+
constructor(db: PostgreSQLDatabase);
|
|
14
|
+
protected createTypes(schema: SchemaContainer, records: ColumnIntrospection[], mapper: ColumnMapper | undefined, index: TypesIndex): void;
|
|
15
|
+
protected createEnumTypes(schema: SchemaContainer, records: ColumnIntrospection[]): void;
|
|
16
|
+
introstectConstantTypes(): Promise<ConstantType>;
|
|
17
|
+
introspect(schema: SchemaContainer, mapper?: ColumnMapper): Promise<void>;
|
|
18
|
+
protected mapPgTypeToTypescript(data: ColumnIntrospection, s: SchemaScope): SchemaObject | null;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=introspect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../../src/database/introspect/introspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,EAAE,WAAW,KAAK,YAAY,GAAG,OAAO,CAAC;AAE9F,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAE/C,MAAM,WAAW,YAAY;IAC3B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC1B;AAED,qBAAa,sBAAsB;IACjC,SAAS,CAAC,EAAE,EAAE,kBAAkB,CAAC;gBAErB,EAAE,EAAE,kBAAkB;IAIlC,SAAS,CAAC,WAAW,CACnB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,mBAAmB,EAAE,EAC9B,MAAM,EAAE,YAAY,GAAG,SAAS,EAChC,KAAK,EAAE,UAAU;IAiFnB,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,mBAAmB,EAAE;IAe3E,uBAAuB;IA6BvB,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,YAAY;IA4B/D,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,IAAI;CAmIhG"}
|