@venizia/ignis 0.0.7-8 → 0.0.7
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 +2757 -28
- package/dist/base/applications/abstract.d.ts.map +1 -1
- package/dist/base/applications/abstract.js +0 -8
- package/dist/base/applications/abstract.js.map +1 -1
- package/dist/base/applications/base.d.ts.map +1 -1
- package/dist/base/applications/base.js +0 -17
- package/dist/base/applications/base.js.map +1 -1
- package/dist/base/applications/types.d.ts.map +1 -1
- package/dist/base/applications/types.js.map +1 -1
- package/dist/base/components/base.d.ts.map +1 -1
- package/dist/base/components/base.js +0 -2
- package/dist/base/components/base.js.map +1 -1
- package/dist/base/controllers/abstract.d.ts +10 -124
- package/dist/base/controllers/abstract.d.ts.map +1 -1
- package/dist/base/controllers/abstract.js +6 -82
- package/dist/base/controllers/abstract.js.map +1 -1
- package/dist/base/controllers/base.d.ts +5 -113
- package/dist/base/controllers/base.d.ts.map +1 -1
- package/dist/base/controllers/base.js +5 -113
- package/dist/base/controllers/base.js.map +1 -1
- package/dist/base/controllers/common/constants.d.ts +1 -16
- package/dist/base/controllers/common/constants.d.ts.map +1 -1
- package/dist/base/controllers/common/constants.js +1 -20
- package/dist/base/controllers/common/constants.js.map +1 -1
- package/dist/base/controllers/common/types.d.ts +16 -167
- package/dist/base/controllers/common/types.d.ts.map +1 -1
- package/dist/base/controllers/common/types.js +1 -4
- package/dist/base/controllers/common/types.js.map +1 -1
- package/dist/base/controllers/factory/controller.d.ts +26 -207
- package/dist/base/controllers/factory/controller.d.ts.map +1 -1
- package/dist/base/controllers/factory/controller.js +13 -140
- package/dist/base/controllers/factory/controller.js.map +1 -1
- package/dist/base/controllers/factory/definition.d.ts +11 -16
- package/dist/base/controllers/factory/definition.d.ts.map +1 -1
- package/dist/base/controllers/factory/definition.js +4 -30
- package/dist/base/controllers/factory/definition.js.map +1 -1
- package/dist/base/datasources/base.d.ts +2 -31
- package/dist/base/datasources/base.d.ts.map +1 -1
- package/dist/base/datasources/base.js +2 -39
- package/dist/base/datasources/base.js.map +1 -1
- package/dist/base/datasources/common/types.d.ts +2 -4
- package/dist/base/datasources/common/types.d.ts.map +1 -1
- package/dist/base/datasources/common/types.js +1 -8
- package/dist/base/datasources/common/types.js.map +1 -1
- package/dist/base/metadata/injectors.d.ts +1 -30
- package/dist/base/metadata/injectors.d.ts.map +1 -1
- package/dist/base/metadata/injectors.js +1 -30
- package/dist/base/metadata/injectors.js.map +1 -1
- package/dist/base/metadata/persistents.d.ts +3 -63
- package/dist/base/metadata/persistents.d.ts.map +1 -1
- package/dist/base/metadata/persistents.js +11 -88
- package/dist/base/metadata/persistents.js.map +1 -1
- package/dist/base/metadata/routes.d.ts +1 -24
- package/dist/base/metadata/routes.d.ts.map +1 -1
- package/dist/base/metadata/routes.js +1 -27
- package/dist/base/metadata/routes.js.map +1 -1
- package/dist/base/middlewares/app-error.middleware.d.ts +1 -10
- package/dist/base/middlewares/app-error.middleware.d.ts.map +1 -1
- package/dist/base/middlewares/app-error.middleware.js +2 -14
- package/dist/base/middlewares/app-error.middleware.js.map +1 -1
- package/dist/base/middlewares/emoji-favicon.middleware.d.ts +1 -7
- package/dist/base/middlewares/emoji-favicon.middleware.d.ts.map +1 -1
- package/dist/base/middlewares/emoji-favicon.middleware.js +1 -7
- package/dist/base/middlewares/emoji-favicon.middleware.js.map +1 -1
- package/dist/base/middlewares/not-found.middleware.d.ts +1 -8
- package/dist/base/middlewares/not-found.middleware.d.ts.map +1 -1
- package/dist/base/middlewares/not-found.middleware.js +1 -8
- package/dist/base/middlewares/not-found.middleware.js.map +1 -1
- package/dist/base/middlewares/request-spy.middleware.d.ts +3 -19
- package/dist/base/middlewares/request-spy.middleware.d.ts.map +1 -1
- package/dist/base/middlewares/request-spy.middleware.js +3 -23
- package/dist/base/middlewares/request-spy.middleware.js.map +1 -1
- package/dist/base/mixins/component.mixin.d.ts.map +1 -1
- package/dist/base/mixins/controller.mixin.d.ts.map +1 -1
- package/dist/base/mixins/repository.mixin.d.ts.map +1 -1
- package/dist/base/mixins/service.mixin.d.ts.map +1 -1
- package/dist/base/models/base.d.ts +4 -21
- package/dist/base/models/base.d.ts.map +1 -1
- package/dist/base/models/base.js +1 -11
- package/dist/base/models/base.js.map +1 -1
- package/dist/base/models/common/types.d.ts.map +1 -1
- package/dist/base/models/common/types.js +0 -2
- package/dist/base/models/common/types.js.map +1 -1
- package/dist/base/models/enrichers/id.enricher.d.ts.map +1 -1
- package/dist/base/models/enrichers/id.enricher.js.map +1 -1
- package/dist/base/models/enrichers/user-audit.enricher.d.ts.map +1 -1
- package/dist/base/models/enrichers/user-audit.enricher.js +1 -6
- package/dist/base/models/enrichers/user-audit.enricher.js.map +1 -1
- package/dist/base/repositories/common/constants.d.ts +5 -59
- package/dist/base/repositories/common/constants.d.ts.map +1 -1
- package/dist/base/repositories/common/constants.js +3 -51
- package/dist/base/repositories/common/constants.js.map +1 -1
- package/dist/base/repositories/common/shared.d.ts +1 -13
- package/dist/base/repositories/common/shared.d.ts.map +1 -1
- package/dist/base/repositories/common/shared.js +2 -19
- package/dist/base/repositories/common/shared.js.map +1 -1
- package/dist/base/repositories/common/types.d.ts +32 -461
- package/dist/base/repositories/common/types.d.ts.map +1 -1
- package/dist/base/repositories/common/types.js +13 -159
- package/dist/base/repositories/common/types.js.map +1 -1
- package/dist/base/repositories/core/abstract.d.ts +10 -204
- package/dist/base/repositories/core/abstract.d.ts.map +1 -1
- package/dist/base/repositories/core/abstract.js +6 -126
- package/dist/base/repositories/core/abstract.js.map +1 -1
- package/dist/base/repositories/core/default-crud.d.ts +1 -36
- package/dist/base/repositories/core/default-crud.d.ts.map +1 -1
- package/dist/base/repositories/core/default-crud.js +1 -36
- package/dist/base/repositories/core/default-crud.js.map +1 -1
- package/dist/base/repositories/core/index.d.ts +1 -0
- package/dist/base/repositories/core/index.d.ts.map +1 -1
- package/dist/base/repositories/core/index.js +1 -0
- package/dist/base/repositories/core/index.js.map +1 -1
- package/dist/base/repositories/core/persistable.d.ts +2 -71
- package/dist/base/repositories/core/persistable.d.ts.map +1 -1
- package/dist/base/repositories/core/persistable.js +2 -100
- package/dist/base/repositories/core/persistable.js.map +1 -1
- package/dist/base/repositories/core/readable.d.ts +12 -127
- package/dist/base/repositories/core/readable.d.ts.map +1 -1
- package/dist/base/repositories/core/readable.js +8 -124
- package/dist/base/repositories/core/readable.js.map +1 -1
- package/dist/base/repositories/core/soft-deletable.d.ts +140 -0
- package/dist/base/repositories/core/soft-deletable.d.ts.map +1 -0
- package/dist/base/repositories/core/soft-deletable.js +99 -0
- package/dist/base/repositories/core/soft-deletable.js.map +1 -0
- package/dist/base/repositories/mixins/default-filter.d.ts +3 -49
- package/dist/base/repositories/mixins/default-filter.d.ts.map +1 -1
- package/dist/base/repositories/mixins/default-filter.js +3 -57
- package/dist/base/repositories/mixins/default-filter.js.map +1 -1
- package/dist/base/repositories/mixins/fields-visibility.d.ts +3 -59
- package/dist/base/repositories/mixins/fields-visibility.d.ts.map +1 -1
- package/dist/base/repositories/mixins/fields-visibility.js +3 -67
- package/dist/base/repositories/mixins/fields-visibility.js.map +1 -1
- package/dist/base/repositories/operators/filter.d.ts +10 -115
- package/dist/base/repositories/operators/filter.d.ts.map +1 -1
- package/dist/base/repositories/operators/filter.js +13 -154
- package/dist/base/repositories/operators/filter.js.map +1 -1
- package/dist/base/repositories/operators/json-utils.d.ts +5 -38
- package/dist/base/repositories/operators/json-utils.d.ts.map +1 -1
- package/dist/base/repositories/operators/json-utils.js +5 -47
- package/dist/base/repositories/operators/json-utils.js.map +1 -1
- package/dist/base/repositories/operators/query.d.ts +3 -56
- package/dist/base/repositories/operators/query.d.ts.map +1 -1
- package/dist/base/repositories/operators/query.js +11 -106
- package/dist/base/repositories/operators/query.js.map +1 -1
- package/dist/base/repositories/operators/relation.d.ts +1 -33
- package/dist/base/repositories/operators/relation.d.ts.map +1 -1
- package/dist/base/repositories/operators/relation.js +1 -36
- package/dist/base/repositories/operators/relation.js.map +1 -1
- package/dist/base/repositories/operators/update.d.ts +7 -72
- package/dist/base/repositories/operators/update.d.ts.map +1 -1
- package/dist/base/repositories/operators/update.js +6 -91
- package/dist/base/repositories/operators/update.js.map +1 -1
- package/dist/base/services/types.d.ts.map +1 -1
- package/dist/common/bindings.d.ts +2 -17
- package/dist/common/bindings.d.ts.map +1 -1
- package/dist/common/bindings.js +2 -14
- package/dist/common/bindings.js.map +1 -1
- package/dist/common/constants.d.ts +1 -3
- package/dist/common/constants.d.ts.map +1 -1
- package/dist/common/constants.js +1 -4
- package/dist/common/constants.js.map +1 -1
- package/dist/common/environments.d.ts +1 -4
- package/dist/common/environments.d.ts.map +1 -1
- package/dist/common/environments.js +1 -4
- package/dist/common/environments.js.map +1 -1
- package/dist/common/statuses.d.ts +6 -19
- package/dist/common/statuses.d.ts.map +1 -1
- package/dist/common/statuses.js +6 -27
- package/dist/common/statuses.js.map +1 -1
- package/dist/components/auth/authenticate/common/codecs.d.ts +11 -0
- package/dist/components/auth/authenticate/common/codecs.d.ts.map +1 -0
- package/dist/components/auth/authenticate/common/codecs.js +28 -0
- package/dist/components/auth/authenticate/common/codecs.js.map +1 -0
- package/dist/components/auth/authenticate/common/constants.d.ts +28 -4
- package/dist/components/auth/authenticate/common/constants.d.ts.map +1 -1
- package/dist/components/auth/authenticate/common/constants.js +37 -9
- package/dist/components/auth/authenticate/common/constants.js.map +1 -1
- package/dist/components/auth/authenticate/common/index.d.ts +1 -0
- package/dist/components/auth/authenticate/common/index.d.ts.map +1 -1
- package/dist/components/auth/authenticate/common/index.js +1 -0
- package/dist/components/auth/authenticate/common/index.js.map +1 -1
- package/dist/components/auth/authenticate/common/keys.d.ts +1 -0
- package/dist/components/auth/authenticate/common/keys.d.ts.map +1 -1
- package/dist/components/auth/authenticate/common/keys.js +1 -0
- package/dist/components/auth/authenticate/common/keys.js.map +1 -1
- package/dist/components/auth/authenticate/common/types.d.ts +56 -34
- package/dist/components/auth/authenticate/common/types.d.ts.map +1 -1
- package/dist/components/auth/authenticate/component.d.ts +3 -16
- package/dist/components/auth/authenticate/component.d.ts.map +1 -1
- package/dist/components/auth/authenticate/component.js +105 -73
- package/dist/components/auth/authenticate/component.js.map +1 -1
- package/dist/components/auth/authenticate/controllers/factory.d.ts.map +1 -1
- package/dist/components/auth/authenticate/controllers/factory.js +2 -2
- package/dist/components/auth/authenticate/controllers/factory.js.map +1 -1
- package/dist/components/auth/authenticate/controllers/index.d.ts +1 -0
- package/dist/components/auth/authenticate/controllers/index.d.ts.map +1 -1
- package/dist/components/auth/authenticate/controllers/index.js +1 -0
- package/dist/components/auth/authenticate/controllers/index.js.map +1 -1
- package/dist/components/auth/authenticate/controllers/jwks/controller.d.ts +9 -0
- package/dist/components/auth/authenticate/controllers/jwks/controller.d.ts.map +1 -0
- package/dist/components/auth/authenticate/controllers/jwks/controller.js +54 -0
- package/dist/components/auth/authenticate/controllers/jwks/controller.js.map +1 -0
- package/dist/components/auth/authenticate/controllers/jwks/definitions.d.ts +66 -0
- package/dist/components/auth/authenticate/controllers/jwks/definitions.d.ts.map +1 -0
- package/dist/components/auth/authenticate/controllers/jwks/definitions.js +32 -0
- package/dist/components/auth/authenticate/controllers/jwks/definitions.js.map +1 -0
- package/dist/components/auth/authenticate/controllers/jwks/index.d.ts +2 -0
- package/dist/components/auth/authenticate/controllers/jwks/index.d.ts.map +1 -0
- package/dist/components/auth/authenticate/controllers/jwks/index.js +18 -0
- package/dist/components/auth/authenticate/controllers/jwks/index.js.map +1 -0
- package/dist/components/auth/authenticate/middlewares/authenticate.middleware.d.ts.map +1 -1
- package/dist/components/auth/authenticate/middlewares/authenticate.middleware.js +0 -2
- package/dist/components/auth/authenticate/middlewares/authenticate.middleware.js.map +1 -1
- package/dist/components/auth/authenticate/providers/authentication.provider.d.ts.map +1 -1
- package/dist/components/auth/authenticate/providers/authentication.provider.js +0 -7
- package/dist/components/auth/authenticate/providers/authentication.provider.js.map +1 -1
- package/dist/components/auth/authenticate/services/basic/index.d.ts +2 -0
- package/dist/components/auth/authenticate/services/basic/index.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/basic/index.js +18 -0
- package/dist/components/auth/authenticate/services/basic/index.js.map +1 -0
- package/dist/components/auth/authenticate/services/basic/service.d.ts +24 -0
- package/dist/components/auth/authenticate/services/basic/service.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/{basic-token.service.js → basic/service.js} +7 -45
- package/dist/components/auth/authenticate/services/basic/service.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/abstract.service.d.ts +52 -0
- package/dist/components/auth/authenticate/services/bearer/abstract.service.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/abstract.service.js +177 -0
- package/dist/components/auth/authenticate/services/bearer/abstract.service.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/index.d.ts +4 -0
- package/dist/components/auth/authenticate/services/bearer/index.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/index.js +20 -0
- package/dist/components/auth/authenticate/services/bearer/index.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.d.ts +16 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.js +32 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/index.d.ts +4 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/index.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/index.js +20 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/index.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.d.ts +46 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.js +168 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.d.ts +18 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.js +73 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.js.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jws.service.d.ts +19 -0
- package/dist/components/auth/authenticate/services/bearer/jws.service.d.ts.map +1 -0
- package/dist/components/auth/authenticate/services/bearer/jws.service.js +76 -0
- package/dist/components/auth/authenticate/services/bearer/jws.service.js.map +1 -0
- package/dist/components/auth/authenticate/services/index.d.ts +2 -2
- package/dist/components/auth/authenticate/services/index.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/index.js +2 -2
- package/dist/components/auth/authenticate/services/index.js.map +1 -1
- package/dist/components/auth/authenticate/strategies/basic.strategy.d.ts +1 -22
- package/dist/components/auth/authenticate/strategies/basic.strategy.d.ts.map +1 -1
- package/dist/components/auth/authenticate/strategies/basic.strategy.js +9 -23
- package/dist/components/auth/authenticate/strategies/basic.strategy.js.map +1 -1
- package/dist/components/auth/authenticate/strategies/index.d.ts +2 -1
- package/dist/components/auth/authenticate/strategies/index.d.ts.map +1 -1
- package/dist/components/auth/authenticate/strategies/index.js +2 -1
- package/dist/components/auth/authenticate/strategies/index.js.map +1 -1
- package/dist/components/auth/authenticate/strategies/jwks.strategy.d.ts +21 -0
- package/dist/components/auth/authenticate/strategies/jwks.strategy.d.ts.map +1 -0
- package/dist/components/auth/authenticate/strategies/jwks.strategy.js +68 -0
- package/dist/components/auth/authenticate/strategies/jwks.strategy.js.map +1 -0
- package/dist/components/auth/authenticate/strategies/{jwt.strategy.d.ts → jws.strategy.d.ts} +5 -4
- package/dist/components/auth/authenticate/strategies/jws.strategy.d.ts.map +1 -0
- package/dist/components/auth/authenticate/strategies/{jwt.strategy.js → jws.strategy.js} +18 -10
- package/dist/components/auth/authenticate/strategies/jws.strategy.js.map +1 -0
- package/dist/components/auth/authenticate/strategies/strategy-registry.d.ts.map +1 -1
- package/dist/components/auth/authenticate/strategies/strategy-registry.js +0 -5
- package/dist/components/auth/authenticate/strategies/strategy-registry.js.map +1 -1
- package/dist/components/auth/authorize/adapters/base-filtered.d.ts +73 -0
- package/dist/components/auth/authorize/adapters/base-filtered.d.ts.map +1 -0
- package/dist/components/auth/authorize/adapters/base-filtered.js +90 -0
- package/dist/components/auth/authorize/adapters/base-filtered.js.map +1 -0
- package/dist/components/auth/authorize/adapters/drizzle-casbin.d.ts +40 -0
- package/dist/components/auth/authorize/adapters/drizzle-casbin.d.ts.map +1 -0
- package/dist/components/auth/authorize/adapters/drizzle-casbin.js +99 -0
- package/dist/components/auth/authorize/adapters/drizzle-casbin.js.map +1 -0
- package/dist/components/auth/authorize/adapters/index.d.ts +3 -0
- package/dist/components/auth/authorize/adapters/index.d.ts.map +1 -0
- package/dist/components/auth/authorize/adapters/index.js +19 -0
- package/dist/components/auth/authorize/adapters/index.js.map +1 -0
- package/dist/components/auth/authorize/common/constants.d.ts +37 -4
- package/dist/components/auth/authorize/common/constants.d.ts.map +1 -1
- package/dist/components/auth/authorize/common/constants.js +61 -9
- package/dist/components/auth/authorize/common/constants.js.map +1 -1
- package/dist/components/auth/authorize/common/keys.d.ts +1 -2
- package/dist/components/auth/authorize/common/keys.d.ts.map +1 -1
- package/dist/components/auth/authorize/common/keys.js +3 -2
- package/dist/components/auth/authorize/common/keys.js.map +1 -1
- package/dist/components/auth/authorize/common/types.d.ts +78 -98
- package/dist/components/auth/authorize/common/types.d.ts.map +1 -1
- package/dist/components/auth/authorize/component.d.ts +1 -0
- package/dist/components/auth/authorize/component.d.ts.map +1 -1
- package/dist/components/auth/authorize/component.js +12 -34
- package/dist/components/auth/authorize/component.js.map +1 -1
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.d.ts +45 -11
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.js +198 -39
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.js.map +1 -1
- package/dist/components/auth/authorize/enforcers/enforcer-registry.d.ts +12 -6
- package/dist/components/auth/authorize/enforcers/enforcer-registry.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/enforcer-registry.js +30 -14
- package/dist/components/auth/authorize/enforcers/enforcer-registry.js.map +1 -1
- package/dist/components/auth/authorize/enforcers/index.d.ts +0 -1
- package/dist/components/auth/authorize/enforcers/index.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/index.js +0 -1
- package/dist/components/auth/authorize/enforcers/index.js.map +1 -1
- package/dist/components/auth/authorize/index.d.ts +1 -0
- package/dist/components/auth/authorize/index.d.ts.map +1 -1
- package/dist/components/auth/authorize/index.js +1 -0
- package/dist/components/auth/authorize/index.js.map +1 -1
- package/dist/components/auth/authorize/middlewares/authorize.middleware.d.ts.map +1 -1
- package/dist/components/auth/authorize/middlewares/authorize.middleware.js +0 -2
- package/dist/components/auth/authorize/middlewares/authorize.middleware.js.map +1 -1
- package/dist/components/auth/authorize/models/abilities/index.d.ts +3 -0
- package/dist/components/auth/authorize/models/abilities/index.d.ts.map +1 -0
- package/dist/components/auth/authorize/models/abilities/index.js +19 -0
- package/dist/components/auth/authorize/models/abilities/index.js.map +1 -0
- package/dist/components/auth/authorize/models/abilities/string-action.model.d.ts +14 -0
- package/dist/components/auth/authorize/models/abilities/string-action.model.d.ts.map +1 -0
- package/dist/components/auth/authorize/models/abilities/string-action.model.js +23 -0
- package/dist/components/auth/authorize/models/abilities/string-action.model.js.map +1 -0
- package/dist/components/auth/authorize/models/abilities/string-resource.model.d.ts +13 -0
- package/dist/components/auth/authorize/models/abilities/string-resource.model.d.ts.map +1 -0
- package/dist/components/auth/authorize/models/abilities/string-resource.model.js +19 -0
- package/dist/components/auth/authorize/models/abilities/string-resource.model.js.map +1 -0
- package/dist/components/auth/authorize/models/authorization-role.model.d.ts.map +1 -1
- package/dist/components/auth/authorize/models/authorization-role.model.js +0 -1
- package/dist/components/auth/authorize/models/authorization-role.model.js.map +1 -1
- package/dist/components/auth/authorize/models/index.d.ts +1 -0
- package/dist/components/auth/authorize/models/index.d.ts.map +1 -1
- package/dist/components/auth/authorize/models/index.js +1 -0
- package/dist/components/auth/authorize/models/index.js.map +1 -1
- package/dist/components/auth/authorize/providers/authorization.provider.d.ts.map +1 -1
- package/dist/components/auth/authorize/providers/authorization.provider.js +48 -43
- package/dist/components/auth/authorize/providers/authorization.provider.js.map +1 -1
- package/dist/components/auth/base/abstract-auth-registry.d.ts +1 -0
- package/dist/components/auth/base/abstract-auth-registry.d.ts.map +1 -1
- package/dist/components/auth/base/abstract-auth-registry.js +3 -3
- package/dist/components/auth/base/abstract-auth-registry.js.map +1 -1
- package/dist/components/auth/context-variables.d.ts +14 -0
- package/dist/components/auth/context-variables.d.ts.map +1 -0
- package/dist/components/auth/context-variables.js +3 -0
- package/dist/components/auth/context-variables.js.map +1 -0
- package/dist/components/auth/index.d.ts +1 -0
- package/dist/components/auth/index.d.ts.map +1 -1
- package/dist/components/auth/index.js +1 -0
- package/dist/components/auth/index.js.map +1 -1
- package/dist/components/auth/models/entities/index.d.ts +1 -2
- package/dist/components/auth/models/entities/index.d.ts.map +1 -1
- package/dist/components/auth/models/entities/index.js +1 -2
- package/dist/components/auth/models/entities/index.js.map +1 -1
- package/dist/components/auth/models/entities/permission.model.d.ts +0 -1
- package/dist/components/auth/models/entities/permission.model.d.ts.map +1 -1
- package/dist/components/auth/models/entities/permission.model.js +0 -2
- package/dist/components/auth/models/entities/permission.model.js.map +1 -1
- package/dist/components/auth/models/entities/policy-definition.model.d.ts +24 -0
- package/dist/components/auth/models/entities/policy-definition.model.d.ts.map +1 -0
- package/dist/components/auth/models/entities/policy-definition.model.js +39 -0
- package/dist/components/auth/models/entities/policy-definition.model.js.map +1 -0
- package/dist/components/auth/models/entities/role.model.d.ts +3 -1
- package/dist/components/auth/models/entities/role.model.d.ts.map +1 -1
- package/dist/components/auth/models/entities/role.model.js +4 -2
- package/dist/components/auth/models/entities/role.model.js.map +1 -1
- package/dist/components/auth/models/entities/user.model.d.ts +4 -2
- package/dist/components/auth/models/entities/user.model.d.ts.map +1 -1
- package/dist/components/auth/models/entities/user.model.js +5 -4
- package/dist/components/auth/models/entities/user.model.js.map +1 -1
- package/dist/components/health-check/controller.d.ts.map +1 -1
- package/dist/components/health-check/controller.js +0 -1
- package/dist/components/health-check/controller.js.map +1 -1
- package/dist/components/mail/common/types.d.ts +1 -1
- package/dist/components/mail/common/types.d.ts.map +1 -1
- package/dist/components/mail/component.d.ts.map +1 -1
- package/dist/components/mail/component.js +2 -7
- package/dist/components/mail/component.js.map +1 -1
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.d.ts +2 -1
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.js +7 -7
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.js.map +1 -1
- package/dist/components/mail/helpers/executors/direct-executor.helper.d.ts +1 -1
- package/dist/components/mail/helpers/executors/direct-executor.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/executors/direct-executor.helper.js +3 -3
- package/dist/components/mail/helpers/executors/direct-executor.helper.js.map +1 -1
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.d.ts +1 -1
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.js +4 -4
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.js.map +1 -1
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.d.ts +1 -1
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.js +3 -3
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.js.map +1 -1
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.d.ts +1 -1
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.js +3 -3
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.js.map +1 -1
- package/dist/components/mail/providers/mail-queue-executor.provider.d.ts.map +1 -1
- package/dist/components/mail/providers/mail-queue-executor.provider.js +8 -8
- package/dist/components/mail/providers/mail-queue-executor.provider.js.map +1 -1
- package/dist/components/mail/providers/mail-transporter.provider.d.ts.map +1 -1
- package/dist/components/mail/providers/mail-transporter.provider.js +6 -6
- package/dist/components/mail/providers/mail-transporter.provider.js.map +1 -1
- package/dist/components/mail/services/mail.service.d.ts +1 -1
- package/dist/components/mail/services/mail.service.d.ts.map +1 -1
- package/dist/components/mail/services/mail.service.js +9 -9
- package/dist/components/mail/services/mail.service.js.map +1 -1
- package/dist/components/mail/services/template.service.d.ts +1 -1
- package/dist/components/mail/services/template.service.d.ts.map +1 -1
- package/dist/components/mail/services/template.service.js +4 -4
- package/dist/components/mail/services/template.service.js.map +1 -1
- package/dist/components/mail/utilities/type.utility.d.ts +1 -1
- package/dist/components/mail/utilities/type.utility.d.ts.map +1 -1
- package/dist/components/socket-io/component.d.ts.map +1 -1
- package/dist/components/socket-io/component.js +0 -4
- package/dist/components/socket-io/component.js.map +1 -1
- package/dist/components/static-asset/common/constants.d.ts +1 -0
- package/dist/components/static-asset/common/constants.d.ts.map +1 -1
- package/dist/components/static-asset/common/constants.js +2 -1
- package/dist/components/static-asset/common/constants.js.map +1 -1
- package/dist/components/static-asset/common/types.d.ts +43 -1
- package/dist/components/static-asset/common/types.d.ts.map +1 -1
- package/dist/components/static-asset/controller/base.definition.d.ts +81 -80
- package/dist/components/static-asset/controller/base.definition.d.ts.map +1 -1
- package/dist/components/static-asset/controller/base.definition.js +1 -2
- package/dist/components/static-asset/controller/base.definition.js.map +1 -1
- package/dist/components/static-asset/controller/factory.d.ts +2 -6
- package/dist/components/static-asset/controller/factory.d.ts.map +1 -1
- package/dist/components/static-asset/controller/factory.js +41 -42
- package/dist/components/static-asset/controller/factory.js.map +1 -1
- package/dist/components/static-asset/models/base.model.d.ts +49 -19
- package/dist/components/static-asset/models/base.model.d.ts.map +1 -1
- package/dist/components/static-asset/models/base.model.js +3 -7
- package/dist/components/static-asset/models/base.model.js.map +1 -1
- package/dist/components/swagger/ui-factory.d.ts.map +1 -1
- package/dist/components/swagger/ui-factory.js +0 -2
- package/dist/components/swagger/ui-factory.js.map +1 -1
- package/dist/components/websocket/component.d.ts.map +1 -1
- package/dist/components/websocket/component.js +0 -3
- package/dist/components/websocket/component.js.map +1 -1
- package/dist/helpers/base-helper.d.ts +2 -0
- package/dist/helpers/base-helper.d.ts.map +1 -0
- package/dist/helpers/base-helper.js +6 -0
- package/dist/helpers/base-helper.js.map +1 -0
- package/dist/helpers/index.d.ts +2 -1
- package/dist/helpers/index.d.ts.map +1 -1
- package/dist/helpers/index.js +1 -1
- package/dist/helpers/index.js.map +1 -1
- package/dist/helpers/inversion/common/keys.d.ts.map +1 -1
- package/dist/helpers/inversion/common/keys.js +0 -2
- package/dist/helpers/inversion/common/keys.js.map +1 -1
- package/dist/helpers/inversion/common/types.d.ts +18 -56
- package/dist/helpers/inversion/common/types.d.ts.map +1 -1
- package/dist/helpers/inversion/container.d.ts.map +1 -1
- package/dist/helpers/inversion/container.js +0 -1
- package/dist/helpers/inversion/container.js.map +1 -1
- package/dist/helpers/inversion/index.d.ts +1 -1
- package/dist/helpers/inversion/index.d.ts.map +1 -1
- package/dist/helpers/inversion/index.js +5 -1
- package/dist/helpers/inversion/index.js.map +1 -1
- package/dist/helpers/inversion/mixins/controller.mixin.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/controller.mixin.js +0 -3
- package/dist/helpers/inversion/mixins/controller.mixin.js.map +1 -1
- package/dist/helpers/inversion/mixins/datasource.mixin.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/datasource.mixin.js +0 -3
- package/dist/helpers/inversion/mixins/datasource.mixin.js.map +1 -1
- package/dist/helpers/inversion/mixins/model.mixin.d.ts +29 -1
- package/dist/helpers/inversion/mixins/model.mixin.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/model.mixin.js +66 -2
- package/dist/helpers/inversion/mixins/model.mixin.js.map +1 -1
- package/dist/helpers/inversion/mixins/repository.mixin.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/repository.mixin.js +0 -2
- package/dist/helpers/inversion/mixins/repository.mixin.js.map +1 -1
- package/dist/helpers/inversion/registry.d.ts +22 -0
- package/dist/helpers/inversion/registry.d.ts.map +1 -1
- package/dist/utilities/jsx.utility.d.ts +2 -16
- package/dist/utilities/jsx.utility.d.ts.map +1 -1
- package/dist/utilities/jsx.utility.js +2 -16
- package/dist/utilities/jsx.utility.js.map +1 -1
- package/dist/utilities/schema.utility.d.ts.map +1 -1
- package/dist/utilities/schema.utility.js +0 -2
- package/dist/utilities/schema.utility.js.map +1 -1
- package/package.json +97 -71
- package/dist/components/auth/authenticate/services/basic-token.service.d.ts +0 -60
- package/dist/components/auth/authenticate/services/basic-token.service.d.ts.map +0 -1
- package/dist/components/auth/authenticate/services/basic-token.service.js.map +0 -1
- package/dist/components/auth/authenticate/services/jwt-token.service.d.ts +0 -34
- package/dist/components/auth/authenticate/services/jwt-token.service.d.ts.map +0 -1
- package/dist/components/auth/authenticate/services/jwt-token.service.js +0 -218
- package/dist/components/auth/authenticate/services/jwt-token.service.js.map +0 -1
- package/dist/components/auth/authenticate/strategies/jwt.strategy.d.ts.map +0 -1
- package/dist/components/auth/authenticate/strategies/jwt.strategy.js.map +0 -1
- package/dist/components/auth/authorize/enforcers/default.enforcer.d.ts +0 -37
- package/dist/components/auth/authorize/enforcers/default.enforcer.d.ts.map +0 -1
- package/dist/components/auth/authorize/enforcers/default.enforcer.js +0 -125
- package/dist/components/auth/authorize/enforcers/default.enforcer.js.map +0 -1
- package/dist/components/auth/models/entities/permission-mapping.model.d.ts +0 -26
- package/dist/components/auth/models/entities/permission-mapping.model.d.ts.map +0 -1
- package/dist/components/auth/models/entities/permission-mapping.model.js +0 -33
- package/dist/components/auth/models/entities/permission-mapping.model.js.map +0 -1
- package/dist/components/auth/models/entities/user-role.model.d.ts +0 -17
- package/dist/components/auth/models/entities/user-role.model.d.ts.map +0 -1
- package/dist/components/auth/models/entities/user-role.model.js +0 -34
- package/dist/components/auth/models/entities/user-role.model.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/base/datasources/base.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAoB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AACtC,OAAO,EACL,WAAW,EAEX,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EAEpB,sBAAsB,EACvB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/base/datasources/base.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAoB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEtF,OAAO,EAAE,IAAI,EAAc,MAAM,IAAI,CAAC;AACtC,OAAO,EACL,WAAW,EAEX,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EAEpB,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAElB,8BAAsB,kBAAkB,CACtC,QAAQ,SAAS,MAAM,GAAG,EAAE,EAC5B,MAAM,SAAS,oBAAoB,GAAG,oBAAoB,EAC1D,mBAAmB,SAAS,MAAM,GAAG,EAAE,CAEvC,SAAQ,UACR,YAAW,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,CAAC;IAE7D,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;IAErB,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,cAAc,CAAC,IAAI,CAAC;IACpE,QAAQ,CAAC,mBAAmB,IAAI,cAAc,CAAC,MAAM,CAAC;IACtD,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAEpF,WAAW;IAIX,YAAY;IAIZ,SAAS,IAAI,MAAM;CAQpB;AAED,+EAA+E;AAC/E,8BAAsB,cAAc,CAClC,QAAQ,SAAS,MAAM,GAAG,EAAE,EAC5B,MAAM,SAAS,oBAAoB,GAAG,oBAAoB,EAC1D,mBAAmB,SAAS,MAAM,GAAG,EAAE,CACvC,SAAQ,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,CAAC;gBACrD,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAWrE,wEAAwE;IAC/D,SAAS,IAAI,MAAM;IAO5B,SAAS,CAAC,cAAc,IAAI,MAAM;IA0BlC,qBAAqB,IAAI,OAAO;IAK1B,gBAAgB,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;CAoDlF"}
|
|
@@ -5,7 +5,6 @@ const inversion_1 = require("../../helpers/inversion");
|
|
|
5
5
|
const ignis_helpers_1 = require("@venizia/ignis-helpers");
|
|
6
6
|
const node_postgres_1 = require("drizzle-orm/node-postgres");
|
|
7
7
|
const common_1 = require("./common");
|
|
8
|
-
// --------------------------------------------------------------------------------------
|
|
9
8
|
class AbstractDataSource extends ignis_helpers_1.BaseHelper {
|
|
10
9
|
getSettings() {
|
|
11
10
|
return this.settings;
|
|
@@ -23,33 +22,8 @@ class AbstractDataSource extends ignis_helpers_1.BaseHelper {
|
|
|
23
22
|
}
|
|
24
23
|
}
|
|
25
24
|
exports.AbstractDataSource = AbstractDataSource;
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Base DataSource with auto-discovery support.
|
|
29
|
-
*
|
|
30
|
-
* Features:
|
|
31
|
-
* - Schema auto-discovered from registered repositories
|
|
32
|
-
*
|
|
33
|
-
* Usage:
|
|
34
|
-
* ```typescript
|
|
35
|
-
* @datasource({})
|
|
36
|
-
* export class PostgresDataSource extends BaseDataSource<IDbConfig> {
|
|
37
|
-
* constructor() {
|
|
38
|
-
* super({
|
|
39
|
-
* name: PostgresDataSource.name,
|
|
40
|
-
* config: { host: '...', port: 5432, ... },
|
|
41
|
-
* // schema auto-discovered from repositories
|
|
42
|
-
* });
|
|
43
|
-
* }
|
|
44
|
-
* }
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
25
|
+
/** Base DataSource with schema auto-discovery from registered repositories. */
|
|
47
26
|
class BaseDataSource extends AbstractDataSource {
|
|
48
|
-
/**
|
|
49
|
-
* @param opts.name - DataSource name (usually class name)
|
|
50
|
-
* @param opts.config - Database connection settings
|
|
51
|
-
* @param opts.schema - Optional, auto-discovered from repositories if not provided
|
|
52
|
-
*/
|
|
53
27
|
constructor(opts) {
|
|
54
28
|
super({ scope: opts.name });
|
|
55
29
|
this.name = opts.name;
|
|
@@ -58,18 +32,13 @@ class BaseDataSource extends AbstractDataSource {
|
|
|
58
32
|
this.schema = opts.schema;
|
|
59
33
|
}
|
|
60
34
|
}
|
|
61
|
-
/**
|
|
62
|
-
* Get the schema - auto-discovers if not manually provided.
|
|
63
|
-
*/
|
|
35
|
+
/** Auto-discovers schema from repositories if not manually provided. */
|
|
64
36
|
getSchema() {
|
|
65
37
|
if (!this.schema) {
|
|
66
38
|
this.schema = this.discoverSchema();
|
|
67
39
|
}
|
|
68
40
|
return this.schema;
|
|
69
41
|
}
|
|
70
|
-
/**
|
|
71
|
-
* Build schema from registered repositories that reference this datasource.
|
|
72
|
-
*/
|
|
73
42
|
discoverSchema() {
|
|
74
43
|
const registry = inversion_1.MetadataRegistry.getInstance();
|
|
75
44
|
const metadata = registry.getDataSourceMetadata({ target: this.constructor });
|
|
@@ -90,9 +59,6 @@ class BaseDataSource extends AbstractDataSource {
|
|
|
90
59
|
const registry = inversion_1.MetadataRegistry.getInstance();
|
|
91
60
|
return registry.hasModels({ dataSource: this.constructor });
|
|
92
61
|
}
|
|
93
|
-
// ---------------------------------------------------------------------------
|
|
94
|
-
// Transaction Support
|
|
95
|
-
// ---------------------------------------------------------------------------
|
|
96
62
|
async beginTransaction(opts) {
|
|
97
63
|
if (!this.pool) {
|
|
98
64
|
throw (0, ignis_helpers_1.getError)({
|
|
@@ -106,11 +72,9 @@ class BaseDataSource extends AbstractDataSource {
|
|
|
106
72
|
return {
|
|
107
73
|
isolationLevel,
|
|
108
74
|
connector: (0, node_postgres_1.drizzle)({ client, schema: this.schema }),
|
|
109
|
-
// On-demand check transaction state
|
|
110
75
|
get isActive() {
|
|
111
76
|
return isActive;
|
|
112
77
|
},
|
|
113
|
-
// COMMIT Action
|
|
114
78
|
commit: async () => {
|
|
115
79
|
if (!isActive) {
|
|
116
80
|
throw (0, ignis_helpers_1.getError)({ message: '[Transaction][commit] Transaction already ended' });
|
|
@@ -126,7 +90,6 @@ class BaseDataSource extends AbstractDataSource {
|
|
|
126
90
|
client.release();
|
|
127
91
|
}
|
|
128
92
|
},
|
|
129
|
-
// ROLLBACK Action
|
|
130
93
|
rollback: async () => {
|
|
131
94
|
if (!isActive) {
|
|
132
95
|
throw (0, ignis_helpers_1.getError)({ message: '[Transaction][rollback] Transaction already ended' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/base/datasources/base.ts"],"names":[],"mappings":";;;AAAA,mDAAuD;AACvD,0DAAsF;AACtF,6DAAoD;AAEpD,qCAQkB;AAElB,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/base/datasources/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,12 +9,10 @@ export declare class DataSourceDrivers {
|
|
|
9
9
|
export type TDataSourceDriver = TConstValue<typeof DataSourceDrivers>;
|
|
10
10
|
export type TAnyDataSourceSchema = Record<string, any>;
|
|
11
11
|
export type TNodePostgresConnector<DataSourceSchema extends TAnyDataSourceSchema = TAnyDataSourceSchema, Client extends NodePgClient = NodePgClient> = ReturnType<typeof nodePostgresConnector<DataSourceSchema, Client>>;
|
|
12
|
+
/** Uses PoolClient specifically for transaction isolation. */
|
|
12
13
|
export type TNodePostgresTransactionConnector<DataSourceSchema extends TAnyDataSourceSchema = TAnyDataSourceSchema> = ReturnType<typeof nodePostgresConnector<DataSourceSchema, PoolClient>>;
|
|
13
14
|
export type TAnyConnector<DataSourceSchema extends TAnyDataSourceSchema = TAnyDataSourceSchema> = TNodePostgresConnector<DataSourceSchema> | TNodePostgresTransactionConnector<DataSourceSchema>;
|
|
14
|
-
/**
|
|
15
|
-
* PostgreSQL transaction isolation levels.
|
|
16
|
-
* Uses static class pattern per code-style-standards.md
|
|
17
|
-
*/
|
|
15
|
+
/** PostgreSQL transaction isolation levels. */
|
|
18
16
|
export declare class IsolationLevels {
|
|
19
17
|
static readonly READ_COMMITTED = "READ COMMITTED";
|
|
20
18
|
static readonly REPEATABLE_READ = "REPEATABLE READ";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/base/datasources/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,KAAK,OAAO,IAAI,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/base/datasources/common/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,KAAK,OAAO,IAAI,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAChG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AACrC,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,aAAa,mBAAmB;IAEhD,MAAM,CAAC,QAAQ,CAAC,UAAU,cAAiC;IAE3D,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGvC;AAED,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAC;AACtE,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEvD,MAAM,MAAM,sBAAsB,CAChC,gBAAgB,SAAS,oBAAoB,GAAG,oBAAoB,EACpE,MAAM,SAAS,YAAY,GAAG,YAAY,IACxC,UAAU,CAAC,OAAO,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;AAEvE,8DAA8D;AAC9D,MAAM,MAAM,iCAAiC,CAC3C,gBAAgB,SAAS,oBAAoB,GAAG,oBAAoB,IAClE,UAAU,CAAC,OAAO,qBAAqB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC;AAE3E,MAAM,MAAM,aAAa,CAAC,gBAAgB,SAAS,oBAAoB,GAAG,oBAAoB,IAC1F,sBAAsB,CAAC,gBAAgB,CAAC,GACxC,iCAAiC,CAAC,gBAAgB,CAAC,CAAC;AACxD,+CAA+C;AAC/C,qBAAa,eAAe;IAC1B,MAAM,CAAC,QAAQ,CAAC,cAAc,oBAAoB;IAClD,MAAM,CAAC,QAAQ,CAAC,eAAe,qBAAqB;IACpD,MAAM,CAAC,QAAQ,CAAC,YAAY,kBAAkB;IAE9C,MAAM,CAAC,QAAQ,CAAC,UAAU,cAIvB;IAEH,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGvC;AAED,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,eAAe,CAAC,CAAC;AAElE,MAAM,WAAW,mBAAmB;IAClC,cAAc,CAAC,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,YAAY,CAAC,MAAM,SAAS,oBAAoB,GAAG,oBAAoB;IACtF,SAAS,EAAE,iCAAiC,CAAC,MAAM,CAAC,CAAC;IACrD,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,eAAe,CAAC;IAEhC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW,CAC1B,QAAQ,SAAS,MAAM,GAAG,EAAE,EAC5B,MAAM,SAAS,oBAAoB,GAAG,oBAAoB,EAC1D,mBAAmB,SAAS,MAAM,GAAG,EAAE,CACvC,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,EAAE,MAAM,CAAC;IAEf,mBAAmB,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9C,WAAW,IAAI,QAAQ,CAAC;IACxB,YAAY,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC/C,SAAS,IAAI,MAAM,CAAC;IACpB,gBAAgB,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;CAC7E"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.IsolationLevels = exports.DataSourceDrivers = void 0;
|
|
4
|
-
// ----------------------------------------------------------------------------------------------------------------------------------------
|
|
5
4
|
class DataSourceDrivers {
|
|
6
5
|
static { this.NODE_POSTGRES = 'node-postgres'; }
|
|
7
6
|
static { this.SCHEME_SET = new Set([this.NODE_POSTGRES]); }
|
|
@@ -10,13 +9,7 @@ class DataSourceDrivers {
|
|
|
10
9
|
}
|
|
11
10
|
}
|
|
12
11
|
exports.DataSourceDrivers = DataSourceDrivers;
|
|
13
|
-
|
|
14
|
-
// Transaction Support
|
|
15
|
-
// ----------------------------------------------------------------------------------------------------------------------------------------
|
|
16
|
-
/**
|
|
17
|
-
* PostgreSQL transaction isolation levels.
|
|
18
|
-
* Uses static class pattern per code-style-standards.md
|
|
19
|
-
*/
|
|
12
|
+
/** PostgreSQL transaction isolation levels. */
|
|
20
13
|
class IsolationLevels {
|
|
21
14
|
static { this.READ_COMMITTED = 'READ COMMITTED'; }
|
|
22
15
|
static { this.REPEATABLE_READ = 'REPEATABLE READ'; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/base/datasources/common/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/base/datasources/common/types.ts"],"names":[],"mappings":";;;AAGA,MAAa,iBAAiB;aACZ,kBAAa,GAAG,eAAe,CAAC;aAEhC,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAE3D,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAPH,8CAQC;AAkBD,+CAA+C;AAC/C,MAAa,eAAe;aACV,mBAAc,GAAG,gBAAgB,CAAC;aAClC,oBAAe,GAAG,iBAAiB,CAAC;aACpC,iBAAY,GAAG,cAAc,CAAC;aAE9B,eAAU,GAAG,IAAI,GAAG,CAAC;QACnC,IAAI,CAAC,cAAc;QACnB,IAAI,CAAC,eAAe;QACpB,IAAI,CAAC,YAAY;KAClB,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AAbH,0CAcC"}
|
|
@@ -1,35 +1,6 @@
|
|
|
1
1
|
import { IInjectableMetadata } from '../../helpers/inversion';
|
|
2
2
|
export declare const injectable: (metadata: IInjectableMetadata) => ClassDecorator;
|
|
3
|
-
/**
|
|
4
|
-
* @inject decorator - Marks a property or constructor parameter for dependency injection
|
|
5
|
-
*
|
|
6
|
-
* Usage examples:
|
|
7
|
-
*
|
|
8
|
-
* 1. Property injection:
|
|
9
|
-
* ```typescript
|
|
10
|
-
* class UserService {
|
|
11
|
-
* @inject({ key: 'UserRepository' })
|
|
12
|
-
* userRepository: UserRepository;
|
|
13
|
-
* }
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* 2. Constructor parameter injection:
|
|
17
|
-
* ```typescript
|
|
18
|
-
* class UserService {
|
|
19
|
-
* constructor(
|
|
20
|
-
* @inject({ key: 'UserRepository' })
|
|
21
|
-
* private userRepository: UserRepository,
|
|
22
|
-
*
|
|
23
|
-
* @inject({ key: 'Logger', optional: true })
|
|
24
|
-
* private logger?: Logger
|
|
25
|
-
* ) {}
|
|
26
|
-
* }
|
|
27
|
-
* ```
|
|
28
|
-
*
|
|
29
|
-
* @param opts - Injection options
|
|
30
|
-
* @param opts.key - The binding key to inject (can be string or symbol)
|
|
31
|
-
* @param opts.optional - Whether the dependency is optional (defaults to false)
|
|
32
|
-
*/
|
|
3
|
+
/** Marks a property or constructor parameter for dependency injection. */
|
|
33
4
|
export declare const inject: (opts: {
|
|
34
5
|
key: string | symbol;
|
|
35
6
|
isOptional?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectors.d.ts","sourceRoot":"","sources":["../../../src/base/metadata/injectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAoB,MAAM,qBAAqB,CAAC;AAG5E,eAAO,MAAM,UAAU,GAAI,UAAU,mBAAmB,KAAG,cAE1D,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"injectors.d.ts","sourceRoot":"","sources":["../../../src/base/metadata/injectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAoB,MAAM,qBAAqB,CAAC;AAG5E,eAAO,MAAM,UAAU,GAAI,UAAU,mBAAmB,KAAG,cAE1D,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,MAAM,GAAI,MAAM;IAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,8FAE1E,CAAC"}
|
|
@@ -7,36 +7,7 @@ const injectable = (metadata) => {
|
|
|
7
7
|
return (0, ignis_inversion_1.injectable)(metadata, inversion_1.MetadataRegistry.getInstance());
|
|
8
8
|
};
|
|
9
9
|
exports.injectable = injectable;
|
|
10
|
-
/**
|
|
11
|
-
* @inject decorator - Marks a property or constructor parameter for dependency injection
|
|
12
|
-
*
|
|
13
|
-
* Usage examples:
|
|
14
|
-
*
|
|
15
|
-
* 1. Property injection:
|
|
16
|
-
* ```typescript
|
|
17
|
-
* class UserService {
|
|
18
|
-
* @inject({ key: 'UserRepository' })
|
|
19
|
-
* userRepository: UserRepository;
|
|
20
|
-
* }
|
|
21
|
-
* ```
|
|
22
|
-
*
|
|
23
|
-
* 2. Constructor parameter injection:
|
|
24
|
-
* ```typescript
|
|
25
|
-
* class UserService {
|
|
26
|
-
* constructor(
|
|
27
|
-
* @inject({ key: 'UserRepository' })
|
|
28
|
-
* private userRepository: UserRepository,
|
|
29
|
-
*
|
|
30
|
-
* @inject({ key: 'Logger', optional: true })
|
|
31
|
-
* private logger?: Logger
|
|
32
|
-
* ) {}
|
|
33
|
-
* }
|
|
34
|
-
* ```
|
|
35
|
-
*
|
|
36
|
-
* @param opts - Injection options
|
|
37
|
-
* @param opts.key - The binding key to inject (can be string or symbol)
|
|
38
|
-
* @param opts.optional - Whether the dependency is optional (defaults to false)
|
|
39
|
-
*/
|
|
10
|
+
/** Marks a property or constructor parameter for dependency injection. */
|
|
40
11
|
const inject = (opts) => {
|
|
41
12
|
return (0, ignis_inversion_1.inject)({ ...opts, registry: inversion_1.MetadataRegistry.getInstance() });
|
|
42
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injectors.js","sourceRoot":"","sources":["../../../src/base/metadata/injectors.ts"],"names":[],"mappings":";;;AAAA,mDAA4E;AAC5E,8DAA8F;AAEvF,MAAM,UAAU,GAAG,CAAC,QAA6B,EAAkB,EAAE;IAC1E,OAAO,IAAA,4BAAc,EAAC,QAAQ,EAAE,4BAAgB,CAAC,WAAW,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEF
|
|
1
|
+
{"version":3,"file":"injectors.js","sourceRoot":"","sources":["../../../src/base/metadata/injectors.ts"],"names":[],"mappings":";;;AAAA,mDAA4E;AAC5E,8DAA8F;AAEvF,MAAM,UAAU,GAAG,CAAC,QAA6B,EAAkB,EAAE;IAC1E,OAAO,IAAA,4BAAc,EAAC,QAAQ,EAAE,4BAAgB,CAAC,WAAW,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAEF,0EAA0E;AACnE,MAAM,MAAM,GAAG,CAAC,IAAoD,EAAE,EAAE;IAC7E,OAAO,IAAA,wBAAU,EAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,4BAAgB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAC3E,CAAC,CAAC;AAFW,QAAA,MAAM,UAEjB"}
|
|
@@ -2,70 +2,10 @@ import { IDataSourceMetadata, IModelMetadata, IRepositoryMetadata } from '../../
|
|
|
2
2
|
import { IDataSource } from '../datasources';
|
|
3
3
|
import { BaseEntity } from '../models';
|
|
4
4
|
import { TTableSchemaWithId } from '../models/common';
|
|
5
|
-
/**
|
|
6
|
-
* @model decorator - Registers a model class with its static schema and relations.
|
|
7
|
-
*
|
|
8
|
-
* Usage with static schema (Option A - Power Users):
|
|
9
|
-
* ```typescript
|
|
10
|
-
* @model({ type: 'entity' })
|
|
11
|
-
* export class User extends BaseEntity {
|
|
12
|
-
* static schema = pgTable('User', { ... });
|
|
13
|
-
* static relations = () => ({ ... });
|
|
14
|
-
* }
|
|
15
|
-
* ```
|
|
16
|
-
*/
|
|
5
|
+
/** Registers a model class with its static schema and relations. */
|
|
17
6
|
export declare const model: (metadata: IModelMetadata) => ClassDecorator;
|
|
18
|
-
/**
|
|
19
|
-
* @datasource decorator - Registers a datasource with driver and auto-discovery.
|
|
20
|
-
*
|
|
21
|
-
* The driver is automatically read by BaseDataSource from this decorator,
|
|
22
|
-
* so you don't need to pass it in the constructor.
|
|
23
|
-
*
|
|
24
|
-
* Usage:
|
|
25
|
-
* ```typescript
|
|
26
|
-
* @datasource({ driver: 'node-postgres' })
|
|
27
|
-
* export class PostgresDataSource extends BaseDataSource<TNodePostgresConnector, IDbConfig> {
|
|
28
|
-
* constructor() {
|
|
29
|
-
* super({
|
|
30
|
-
* name: PostgresDataSource.name,
|
|
31
|
-
* config: { host: '...', port: 5432, ... },
|
|
32
|
-
* // driver read from decorator - no need to pass here!
|
|
33
|
-
* // schema auto-discovered from repositories
|
|
34
|
-
* });
|
|
35
|
-
* }
|
|
36
|
-
* }
|
|
37
|
-
* ```
|
|
38
|
-
*/
|
|
7
|
+
/** Registers a datasource with driver and auto-discovery settings. */
|
|
39
8
|
export declare const datasource: (metadata: IDataSourceMetadata) => ClassDecorator;
|
|
40
|
-
/**
|
|
41
|
-
* @repository decorator - Binds a repository to a model and datasource.
|
|
42
|
-
*
|
|
43
|
-
* IMPORTANT: Both `model` AND `dataSource` are required for schema auto-discovery.
|
|
44
|
-
* Without both, the model won't be registered and relational queries will fail.
|
|
45
|
-
*
|
|
46
|
-
* Supports these injection patterns:
|
|
47
|
-
*
|
|
48
|
-
* 1. Zero boilerplate - dataSource auto-injected from metadata:
|
|
49
|
-
* ```typescript
|
|
50
|
-
* @repository({ model: User, dataSource: PostgresDataSource })
|
|
51
|
-
* export class UserRepository extends PersistableRepository<typeof User.schema> {
|
|
52
|
-
* // No constructor needed - datasource auto-injected at param index 0
|
|
53
|
-
* }
|
|
54
|
-
* ```
|
|
55
|
-
*
|
|
56
|
-
* 2. Explicit @inject with @repository - when you need constructor control:
|
|
57
|
-
* ```typescript
|
|
58
|
-
* @repository({ model: User, dataSource: PostgresDataSource })
|
|
59
|
-
* export class UserRepository extends PersistableRepository<typeof User.schema> {
|
|
60
|
-
* constructor(
|
|
61
|
-
* @inject({ key: 'datasources.PostgresDataSource' })
|
|
62
|
-
* ds: PostgresDataSource,
|
|
63
|
-
* ) {
|
|
64
|
-
* super(ds, { entityClass: User });
|
|
65
|
-
* }
|
|
66
|
-
* }
|
|
67
|
-
* ```
|
|
68
|
-
* Note: When @inject is at param index 0, auto-injection is skipped (your @inject takes precedence).
|
|
69
|
-
*/
|
|
9
|
+
/** Binds a repository to a model and datasource for schema auto-discovery. */
|
|
70
10
|
export declare const repository: <Schema extends TTableSchemaWithId = TTableSchemaWithId, Model extends BaseEntity<Schema> = BaseEntity<Schema>, DataSource extends IDataSource = IDataSource>(metadata: IRepositoryMetadata<Schema, Model, DataSource>) => ClassDecorator;
|
|
71
11
|
//# sourceMappingURL=persistents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistents.d.ts","sourceRoot":"","sources":["../../../src/base/metadata/persistents.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EAGpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAsB,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD
|
|
1
|
+
{"version":3,"file":"persistents.d.ts","sourceRoot":"","sources":["../../../src/base/metadata/persistents.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EAGpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAsB,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,oEAAoE;AACpE,eAAO,MAAM,KAAK,GAAI,UAAU,cAAc,KAAG,cAUhD,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,UAAU,GAAI,UAAU,mBAAmB,KAAG,cAI1D,CAAC;AA6HF,8EAA8E;AAC9E,eAAO,MAAM,UAAU,GACrB,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,EACtD,KAAK,SAAS,UAAU,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,EACrD,UAAU,SAAS,WAAW,GAAG,WAAW,EAE5C,UAAU,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,KACvD,cAYF,CAAC"}
|
|
@@ -5,56 +5,26 @@ const bindings_1 = require("../../common/bindings");
|
|
|
5
5
|
const inversion_1 = require("../../helpers/inversion");
|
|
6
6
|
const ignis_helpers_1 = require("@venizia/ignis-helpers");
|
|
7
7
|
const datasources_1 = require("../datasources");
|
|
8
|
-
/**
|
|
9
|
-
* @model decorator - Registers a model class with its static schema and relations.
|
|
10
|
-
*
|
|
11
|
-
* Usage with static schema (Option A - Power Users):
|
|
12
|
-
* ```typescript
|
|
13
|
-
* @model({ type: 'entity' })
|
|
14
|
-
* export class User extends BaseEntity {
|
|
15
|
-
* static schema = pgTable('User', { ... });
|
|
16
|
-
* static relations = () => ({ ... });
|
|
17
|
-
* }
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
8
|
+
/** Registers a model class with its static schema and relations. */
|
|
20
9
|
const model = (metadata) => {
|
|
21
10
|
return target => {
|
|
22
|
-
//
|
|
23
|
-
|
|
11
|
+
// Auto-populate AUTHORIZATION_SUBJECT from authorize.principal if not already set
|
|
12
|
+
const principal = metadata.settings?.authorize?.principal;
|
|
13
|
+
if (principal && !Object.hasOwn(target, 'AUTHORIZATION_SUBJECT')) {
|
|
14
|
+
target.AUTHORIZATION_SUBJECT = principal;
|
|
15
|
+
}
|
|
24
16
|
inversion_1.MetadataRegistry.getInstance().registerModel({ target, metadata });
|
|
25
17
|
};
|
|
26
18
|
};
|
|
27
19
|
exports.model = model;
|
|
28
|
-
/**
|
|
29
|
-
* @datasource decorator - Registers a datasource with driver and auto-discovery.
|
|
30
|
-
*
|
|
31
|
-
* The driver is automatically read by BaseDataSource from this decorator,
|
|
32
|
-
* so you don't need to pass it in the constructor.
|
|
33
|
-
*
|
|
34
|
-
* Usage:
|
|
35
|
-
* ```typescript
|
|
36
|
-
* @datasource({ driver: 'node-postgres' })
|
|
37
|
-
* export class PostgresDataSource extends BaseDataSource<TNodePostgresConnector, IDbConfig> {
|
|
38
|
-
* constructor() {
|
|
39
|
-
* super({
|
|
40
|
-
* name: PostgresDataSource.name,
|
|
41
|
-
* config: { host: '...', port: 5432, ... },
|
|
42
|
-
* // driver read from decorator - no need to pass here!
|
|
43
|
-
* // schema auto-discovered from repositories
|
|
44
|
-
* });
|
|
45
|
-
* }
|
|
46
|
-
* }
|
|
47
|
-
* ```
|
|
48
|
-
*/
|
|
20
|
+
/** Registers a datasource with driver and auto-discovery settings. */
|
|
49
21
|
const datasource = (metadata) => {
|
|
50
22
|
return target => {
|
|
51
23
|
inversion_1.MetadataRegistry.getInstance().setDataSourceMetadata({ target, metadata });
|
|
52
24
|
};
|
|
53
25
|
};
|
|
54
26
|
exports.datasource = datasource;
|
|
55
|
-
/**
|
|
56
|
-
* Validate repository metadata - both model and dataSource must be provided together.
|
|
57
|
-
*/
|
|
27
|
+
/** Validates that both model and dataSource are provided together. */
|
|
58
28
|
const validateRepositoryMetadata = (opts) => {
|
|
59
29
|
const { metadata, target } = opts;
|
|
60
30
|
if (!metadata.model) {
|
|
@@ -68,18 +38,12 @@ const validateRepositoryMetadata = (opts) => {
|
|
|
68
38
|
});
|
|
69
39
|
}
|
|
70
40
|
};
|
|
71
|
-
/**
|
|
72
|
-
* Register dataSource injection metadata if not already explicitly defined.
|
|
73
|
-
* Validates that first constructor param is a DataSource.
|
|
74
|
-
*/
|
|
41
|
+
/** Auto-injects dataSource at constructor param[0] unless explicit @inject exists. */
|
|
75
42
|
const registerDataSourceInjection = (opts) => {
|
|
76
43
|
const { target, registry, resolvedDataSource } = opts;
|
|
77
|
-
// 1. Get constructor parameter types using reflection metadata
|
|
78
44
|
const paramTypes = Reflect.getMetadata('design:paramtypes', target);
|
|
79
45
|
const firstParamType = paramTypes?.[0];
|
|
80
|
-
// 2. Validate first parameter type must satisfy IDataSource (extend AbstractDataSource)
|
|
81
46
|
if (firstParamType) {
|
|
82
|
-
// Check if firstParamType extends AbstractDataSource
|
|
83
47
|
const isDataSourceType = firstParamType === datasources_1.AbstractDataSource ||
|
|
84
48
|
firstParamType.prototype instanceof datasources_1.AbstractDataSource;
|
|
85
49
|
if (!isDataSourceType) {
|
|
@@ -87,7 +51,6 @@ const registerDataSourceInjection = (opts) => {
|
|
|
87
51
|
message: `[@repository][${target.name}] Invalid constructor | First parameter must extend AbstractDataSource | Received: '${firstParamType.name}'`,
|
|
88
52
|
});
|
|
89
53
|
}
|
|
90
|
-
// Additionally validate that resolvedDataSource is compatible with firstParamType
|
|
91
54
|
if (typeof resolvedDataSource === 'function') {
|
|
92
55
|
const isCompatible = firstParamType === resolvedDataSource ||
|
|
93
56
|
resolvedDataSource.prototype instanceof firstParamType;
|
|
@@ -98,11 +61,9 @@ const registerDataSourceInjection = (opts) => {
|
|
|
98
61
|
}
|
|
99
62
|
}
|
|
100
63
|
}
|
|
101
|
-
// Check if user already has explicit @inject for param 0
|
|
102
64
|
const existingInjects = registry.getInjectMetadata({ target });
|
|
103
65
|
const injectAtIndex0 = existingInjects?.find(m => m.index === 0);
|
|
104
66
|
if (injectAtIndex0) {
|
|
105
|
-
// Validate that the explicit @inject at param 0 is a DataSource
|
|
106
67
|
const injectKey = injectAtIndex0.key;
|
|
107
68
|
const isDataSourceKey = typeof injectKey === 'string' && injectKey.startsWith(`${bindings_1.BindingNamespaces.DATASOURCE}.`);
|
|
108
69
|
if (!isDataSourceKey) {
|
|
@@ -110,10 +71,8 @@ const registerDataSourceInjection = (opts) => {
|
|
|
110
71
|
message: `[@repository][${target.name}] Invalid constructor | First parameter must be a DataSource | Found @inject with key: '${injectKey.toString()}' | Expected key starting with '${bindings_1.BindingNamespaces.DATASOURCE}.'`,
|
|
111
72
|
});
|
|
112
73
|
}
|
|
113
|
-
// User has valid explicit @inject for DataSource, skip auto-injection
|
|
114
74
|
return;
|
|
115
75
|
}
|
|
116
|
-
// Build binding key and register injection metadata
|
|
117
76
|
const dsName = typeof resolvedDataSource === 'string' ? resolvedDataSource : resolvedDataSource.name;
|
|
118
77
|
const dsBindingKey = inversion_1.BindingKeys.build({ namespace: bindings_1.BindingNamespaces.DATASOURCE, key: dsName });
|
|
119
78
|
registry.setInjectMetadata({
|
|
@@ -122,26 +81,20 @@ const registerDataSourceInjection = (opts) => {
|
|
|
122
81
|
metadata: { key: dsBindingKey, index: 0, isOptional: false },
|
|
123
82
|
});
|
|
124
83
|
};
|
|
125
|
-
/**
|
|
126
|
-
* Resolve repository metadata and register bindings if model and dataSource are provided.
|
|
127
|
-
*/
|
|
84
|
+
/** Resolves repository metadata and registers bindings for schema auto-discovery. */
|
|
128
85
|
const resolveRepositoryMetadata = (opts) => {
|
|
129
86
|
const { metadata, target, registry } = opts;
|
|
130
|
-
// Validate metadata - throws if invalid
|
|
131
87
|
validateRepositoryMetadata({ metadata, target });
|
|
132
|
-
// Early return if neither model nor dataSource provided (valid case)
|
|
133
88
|
if (!metadata.model || !metadata.dataSource) {
|
|
134
89
|
return undefined;
|
|
135
90
|
}
|
|
136
91
|
const resolvedModel = (0, ignis_helpers_1.resolveValue)(metadata.model);
|
|
137
92
|
const resolvedDataSource = (0, ignis_helpers_1.resolveClass)(metadata.dataSource);
|
|
138
|
-
// Register the binding for auto-discovery
|
|
139
93
|
registry.registerRepositoryBinding({
|
|
140
94
|
repository: target,
|
|
141
95
|
model: resolvedModel,
|
|
142
96
|
dataSource: resolvedDataSource,
|
|
143
97
|
});
|
|
144
|
-
// Auto-inject dataSource at constructor parameter index 0
|
|
145
98
|
registerDataSourceInjection({ target, registry, resolvedDataSource });
|
|
146
99
|
return {
|
|
147
100
|
model: resolvedModel,
|
|
@@ -149,41 +102,11 @@ const resolveRepositoryMetadata = (opts) => {
|
|
|
149
102
|
operationScope: metadata.operationScope,
|
|
150
103
|
};
|
|
151
104
|
};
|
|
152
|
-
/**
|
|
153
|
-
* @repository decorator - Binds a repository to a model and datasource.
|
|
154
|
-
*
|
|
155
|
-
* IMPORTANT: Both `model` AND `dataSource` are required for schema auto-discovery.
|
|
156
|
-
* Without both, the model won't be registered and relational queries will fail.
|
|
157
|
-
*
|
|
158
|
-
* Supports these injection patterns:
|
|
159
|
-
*
|
|
160
|
-
* 1. Zero boilerplate - dataSource auto-injected from metadata:
|
|
161
|
-
* ```typescript
|
|
162
|
-
* @repository({ model: User, dataSource: PostgresDataSource })
|
|
163
|
-
* export class UserRepository extends PersistableRepository<typeof User.schema> {
|
|
164
|
-
* // No constructor needed - datasource auto-injected at param index 0
|
|
165
|
-
* }
|
|
166
|
-
* ```
|
|
167
|
-
*
|
|
168
|
-
* 2. Explicit @inject with @repository - when you need constructor control:
|
|
169
|
-
* ```typescript
|
|
170
|
-
* @repository({ model: User, dataSource: PostgresDataSource })
|
|
171
|
-
* export class UserRepository extends PersistableRepository<typeof User.schema> {
|
|
172
|
-
* constructor(
|
|
173
|
-
* @inject({ key: 'datasources.PostgresDataSource' })
|
|
174
|
-
* ds: PostgresDataSource,
|
|
175
|
-
* ) {
|
|
176
|
-
* super(ds, { entityClass: User });
|
|
177
|
-
* }
|
|
178
|
-
* }
|
|
179
|
-
* ```
|
|
180
|
-
* Note: When @inject is at param index 0, auto-injection is skipped (your @inject takes precedence).
|
|
181
|
-
*/
|
|
105
|
+
/** Binds a repository to a model and datasource for schema auto-discovery. */
|
|
182
106
|
const repository = (metadata) => {
|
|
183
107
|
return target => {
|
|
184
108
|
const registry = inversion_1.MetadataRegistry.getInstance();
|
|
185
109
|
const resolved = resolveRepositoryMetadata({ metadata, target, registry });
|
|
186
|
-
// Store metadata with resolved references
|
|
187
110
|
registry.setRepositoryMetadata({
|
|
188
111
|
target,
|
|
189
112
|
metadata: { ...metadata, _resolved: resolved },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistents.js","sourceRoot":"","sources":["../../../src/base/metadata/persistents.ts"],"names":[],"mappings":";;;AAAA,gDAAsD;AACtD,mDAO6B;AAC7B,0DAA8E;AAC9E,gDAAiE;AAIjE
|
|
1
|
+
{"version":3,"file":"persistents.js","sourceRoot":"","sources":["../../../src/base/metadata/persistents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,7 @@
|
|
|
1
1
|
import { IControllerMetadata } from '../../helpers/inversion';
|
|
2
2
|
import { IAuthRouteConfig as IAuthRouteConfig } from '../controllers';
|
|
3
3
|
export declare const controller: (metadata: IControllerMetadata) => ClassDecorator;
|
|
4
|
-
/**
|
|
5
|
-
* Decorator for defining API routes.
|
|
6
|
-
*
|
|
7
|
-
* Registers the route configuration with the metadata registry.
|
|
8
|
-
* Use `valid<T>('target')` for explicit typing of validated request data.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* const config = {
|
|
13
|
-
* path: '/ping',
|
|
14
|
-
* method: 'post',
|
|
15
|
-
* request: { body: jsonContent({ schema: z.object({ message: z.string() }) }) },
|
|
16
|
-
* responses: { 200: jsonContent({ schema: z.object({ reply: z.string() }) }) }
|
|
17
|
-
* } as const;
|
|
18
|
-
*
|
|
19
|
-
* class MyController extends BaseController {
|
|
20
|
-
* @api({ configs: config })
|
|
21
|
-
* pingPong(context: TTypedContext) {
|
|
22
|
-
* const { message } = context.req.valid<{ message: string }>('json');
|
|
23
|
-
* return context.json({ reply: message }, 200);
|
|
24
|
-
* }
|
|
25
|
-
* }
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
4
|
+
/** Generic route decorator. Registers route config in metadata registry. */
|
|
28
5
|
export declare const api: <RouteConfig extends IAuthRouteConfig>(opts: {
|
|
29
6
|
configs: RouteConfig;
|
|
30
7
|
}) => (target: any, propertyKey: string | symbol, _descriptor: PropertyDescriptor) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/base/metadata/routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAoB,MAAM,qBAAqB,CAAC;AAE5E,OAAO,EAAE,gBAAgB,IAAI,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/base/metadata/routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAoB,MAAM,qBAAqB,CAAC;AAE5E,OAAO,EAAE,gBAAgB,IAAI,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEtE,eAAO,MAAM,UAAU,GAAI,UAAU,mBAAmB,KAAG,cAI1D,CAAC;AAEF,4EAA4E;AAC5E,eAAO,MAAM,GAAG,GAAI,WAAW,SAAS,gBAAgB,EAAE,MAAM;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,MAEpF,QAAQ,GAAG,EACX,aAAa,MAAM,GAAG,MAAM,EAC5B,aAAa,kBAAkB,KAC9B,IAOJ,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,GAAG,GAAI,WAAW,SAAS,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAC9E,OAAO,EAAE,WAAW,CAAC;CACtB,cAfW,GAAG,eACE,MAAM,GAAG,MAAM,eACf,kBAAkB,KAC9B,IAkBJ,CAAC;AAEF,wFAAwF;AACxF,eAAO,MAAM,IAAI,GAAI,WAAW,SAAS,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAC/E,OAAO,EAAE,WAAW,CAAC;CACtB,cA1BW,GAAG,eACE,MAAM,GAAG,MAAM,eACf,kBAAkB,KAC9B,IA6BJ,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,GAAG,GAAI,WAAW,SAAS,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAC9E,OAAO,EAAE,WAAW,CAAC;CACtB,cArCW,GAAG,eACE,MAAM,GAAG,MAAM,eACf,kBAAkB,KAC9B,IAwCJ,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,KAAK,GAAI,WAAW,SAAS,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAChF,OAAO,EAAE,WAAW,CAAC;CACtB,cAhDW,GAAG,eACE,MAAM,GAAG,MAAM,eACf,kBAAkB,KAC9B,IAmDJ,CAAC;AAEF,4FAA4F;AAC5F,eAAO,MAAM,GAAG,GAAI,WAAW,SAAS,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM;IAC9E,OAAO,EAAE,WAAW,CAAC;CACtB,cA3DW,GAAG,eACE,MAAM,GAAG,MAAM,eACf,kBAAkB,KAC9B,IA8DJ,CAAC"}
|
|
@@ -3,38 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.del = exports.patch = exports.put = exports.post = exports.get = exports.api = exports.controller = void 0;
|
|
4
4
|
const inversion_1 = require("../../helpers/inversion");
|
|
5
5
|
const ignis_helpers_1 = require("@venizia/ignis-helpers");
|
|
6
|
-
// --------------------------------------------------------------------------------------------
|
|
7
6
|
const controller = (metadata) => {
|
|
8
7
|
return target => {
|
|
9
8
|
inversion_1.MetadataRegistry.getInstance().setControllerMetadata({ target, metadata });
|
|
10
9
|
};
|
|
11
10
|
};
|
|
12
11
|
exports.controller = controller;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Decorator for defining API routes.
|
|
16
|
-
*
|
|
17
|
-
* Registers the route configuration with the metadata registry.
|
|
18
|
-
* Use `valid<T>('target')` for explicit typing of validated request data.
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* const config = {
|
|
23
|
-
* path: '/ping',
|
|
24
|
-
* method: 'post',
|
|
25
|
-
* request: { body: jsonContent({ schema: z.object({ message: z.string() }) }) },
|
|
26
|
-
* responses: { 200: jsonContent({ schema: z.object({ reply: z.string() }) }) }
|
|
27
|
-
* } as const;
|
|
28
|
-
*
|
|
29
|
-
* class MyController extends BaseController {
|
|
30
|
-
* @api({ configs: config })
|
|
31
|
-
* pingPong(context: TTypedContext) {
|
|
32
|
-
* const { message } = context.req.valid<{ message: string }>('json');
|
|
33
|
-
* return context.json({ reply: message }, 200);
|
|
34
|
-
* }
|
|
35
|
-
* }
|
|
36
|
-
* ```
|
|
37
|
-
*/
|
|
12
|
+
/** Generic route decorator. Registers route config in metadata registry. */
|
|
38
13
|
const api = (opts) => {
|
|
39
14
|
return function (target, propertyKey, _descriptor) {
|
|
40
15
|
inversion_1.MetadataRegistry.getInstance().addRoute({
|
|
@@ -45,7 +20,6 @@ const api = (opts) => {
|
|
|
45
20
|
};
|
|
46
21
|
};
|
|
47
22
|
exports.api = api;
|
|
48
|
-
// --------------------------------------------------------------------------------------------
|
|
49
23
|
/** GET route decorator. Equivalent to @api but automatically sets method to 'get'. */
|
|
50
24
|
const get = (opts) => {
|
|
51
25
|
return (0, exports.api)({
|