@venizia/ignis-kernel 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/base/applications/abstract.js.map +1 -1
- package/dist/cjs/base/applications/artifact-group.js.map +1 -1
- package/dist/cjs/base/applications/artifact-index.js.map +1 -1
- package/dist/cjs/base/applications/boot-sequence.js.map +1 -1
- package/dist/cjs/base/applications/common/constants.js.map +1 -1
- package/dist/cjs/base/applications/common/index.js.map +1 -1
- package/dist/cjs/base/applications/common/types/application.js.map +1 -1
- package/dist/cjs/base/applications/common/types/artifacts.js.map +1 -1
- package/dist/cjs/base/applications/common/types/index.js.map +1 -1
- package/dist/cjs/base/applications/common/types/middlewares.js.map +1 -1
- package/dist/cjs/base/applications/index.js.map +1 -1
- package/dist/cjs/base/applications/rest.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/codecs.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/constants/authentication.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/constants/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/constants/jose.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/constants/service-assertion.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/errors.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/keys.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/basic.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/jwt.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/options.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/rest.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/service.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/common/types/strategy.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/middlewares/authenticate.middleware.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/middlewares/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/providers/authentication.provider.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/providers/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/strategies/index.js.map +1 -1
- package/dist/cjs/base/auth/authenticate/strategies/strategy-registry.js.map +1 -1
- package/dist/cjs/base/auth/authorize/builders/grant.builder.js.map +1 -1
- package/dist/cjs/base/auth/authorize/builders/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/builders/permission.builder.js.map +1 -1
- package/dist/cjs/base/auth/authorize/builders/policy.builder.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/constants/authorization.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/constants/binding-keys.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/constants/enforcer.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/constants/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/errors.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/types/enforcer.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/types/grant.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/types/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/common/types/request.js.map +1 -1
- package/dist/cjs/base/auth/authorize/enforcers/enforcer-registry.js.map +1 -1
- package/dist/cjs/base/auth/authorize/enforcers/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/middlewares/authorize.middleware.js.map +1 -1
- package/dist/cjs/base/auth/authorize/middlewares/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/models/authorization-role.model.js.map +1 -1
- package/dist/cjs/base/auth/authorize/models/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/providers/authorization.provider.js.map +1 -1
- package/dist/cjs/base/auth/authorize/providers/index.js.map +1 -1
- package/dist/cjs/base/auth/authorize/providers/request-domain.js.map +1 -1
- package/dist/cjs/base/auth/base/abstract-auth-registry.js.map +1 -1
- package/dist/cjs/base/auth/base/index.js.map +1 -1
- package/dist/cjs/base/auth/context-variables.js.map +1 -1
- package/dist/cjs/base/auth/index.js.map +1 -1
- package/dist/cjs/base/auth/models/index.js.map +1 -1
- package/dist/cjs/base/auth/models/requests/change-password.schema.js.map +1 -1
- package/dist/cjs/base/auth/models/requests/index.js.map +1 -1
- package/dist/cjs/base/auth/models/requests/sign-in.schema.js.map +1 -1
- package/dist/cjs/base/auth/models/requests/sign-up.schema.js.map +1 -1
- package/dist/cjs/base/components/base.js.map +1 -1
- package/dist/cjs/base/components/controller/index.js.map +1 -1
- package/dist/cjs/base/components/controller/rest/common/index.js.map +1 -1
- package/dist/cjs/base/components/controller/rest/common/types.js.map +1 -1
- package/dist/cjs/base/components/controller/rest/index.js.map +1 -1
- package/dist/cjs/base/components/controller/rest/rest.component.js.map +1 -1
- package/dist/cjs/base/components/index.js.map +1 -1
- package/dist/cjs/base/configurations/base.js.map +1 -1
- package/dist/cjs/base/configurations/common/index.js.map +1 -1
- package/dist/cjs/base/configurations/common/types.js.map +1 -1
- package/dist/cjs/base/configurations/index.js.map +1 -1
- package/dist/cjs/base/controllers/common/constants.js.map +1 -1
- package/dist/cjs/base/controllers/common/html-response.js.map +1 -1
- package/dist/cjs/base/controllers/common/index.js.map +1 -1
- package/dist/cjs/base/controllers/common/schema-builders.js.map +1 -1
- package/dist/cjs/base/controllers/common/schemas.js.map +1 -1
- package/dist/cjs/base/controllers/common/types/context.js.map +1 -1
- package/dist/cjs/base/controllers/common/types/controller.js.map +1 -1
- package/dist/cjs/base/controllers/common/types/index.js.map +1 -1
- package/dist/cjs/base/controllers/common/types/route.js.map +1 -1
- package/dist/cjs/base/controllers/context.js.map +1 -1
- package/dist/cjs/base/controllers/factory/controller.js.map +1 -1
- package/dist/cjs/base/controllers/factory/crud/abstract.js.map +1 -1
- package/dist/cjs/base/controllers/factory/crud/index.js.map +1 -1
- package/dist/cjs/base/controllers/factory/crud/persistable.js.map +1 -1
- package/dist/cjs/base/controllers/factory/crud/readable.js.map +1 -1
- package/dist/cjs/base/controllers/factory/definition.js.map +1 -1
- package/dist/cjs/base/controllers/factory/helper.js.map +1 -1
- package/dist/cjs/base/controllers/factory/index.js.map +1 -1
- package/dist/cjs/base/controllers/factory/repository-injection.js.map +1 -1
- package/dist/cjs/base/controllers/index.js.map +1 -1
- package/dist/cjs/base/controllers/rest/abstract.js.map +1 -1
- package/dist/cjs/base/controllers/rest/base.js.map +1 -1
- package/dist/cjs/base/controllers/rest/extras.js.map +1 -1
- package/dist/cjs/base/controllers/rest/index.js.map +1 -1
- package/dist/cjs/base/datasources/abstract.js.map +1 -1
- package/dist/cjs/base/datasources/common/index.js.map +1 -1
- package/dist/cjs/base/datasources/common/types.js.map +1 -1
- package/dist/cjs/base/datasources/index.js.map +1 -1
- package/dist/cjs/base/events/common/constants.js.map +1 -1
- package/dist/cjs/base/events/common/index.js.map +1 -1
- package/dist/cjs/base/events/common/types.js.map +1 -1
- package/dist/cjs/base/events/event-bus.js.map +1 -1
- package/dist/cjs/base/events/index.js.map +1 -1
- package/dist/cjs/base/index.js.map +1 -1
- package/dist/cjs/base/metadata/artifact-keys.js.map +1 -1
- package/dist/cjs/base/metadata/index.js.map +1 -1
- package/dist/cjs/base/metadata/injectable.js.map +1 -1
- package/dist/cjs/base/metadata/injectors.js.map +1 -1
- package/dist/cjs/base/metadata/persistents.js.map +1 -1
- package/dist/cjs/base/metadata/routes/common.js.map +1 -1
- package/dist/cjs/base/metadata/routes/controller.js.map +1 -1
- package/dist/cjs/base/metadata/routes/index.js.map +1 -1
- package/dist/cjs/base/metadata/routes/rest.js.map +1 -1
- package/dist/cjs/base/metadata/routes/rpc.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/app-error.middleware.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/common/index.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/common/types.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/database.handler.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/definition.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/index.js.map +1 -1
- package/dist/cjs/base/middlewares/app-error/zod.handler.js.map +1 -1
- package/dist/cjs/base/middlewares/common/constants.js.map +1 -1
- package/dist/cjs/base/middlewares/common/errors.js.map +1 -1
- package/dist/cjs/base/middlewares/common/index.js.map +1 -1
- package/dist/cjs/base/middlewares/emoji-favicon/emoji-favicon.middleware.js.map +1 -1
- package/dist/cjs/base/middlewares/emoji-favicon/index.js.map +1 -1
- package/dist/cjs/base/middlewares/form-body/form-body.middleware.js.map +1 -1
- package/dist/cjs/base/middlewares/index.js.map +1 -1
- package/dist/cjs/base/middlewares/not-found/index.js.map +1 -1
- package/dist/cjs/base/middlewares/not-found/not-found.middleware.js.map +1 -1
- package/dist/cjs/base/mixins/common/index.js.map +1 -1
- package/dist/cjs/base/mixins/common/types.js.map +1 -1
- package/dist/cjs/base/mixins/index.js.map +1 -1
- package/dist/cjs/base/models/base.js.map +1 -1
- package/dist/cjs/base/models/common/constants.js.map +1 -1
- package/dist/cjs/base/models/common/index.js.map +1 -1
- package/dist/cjs/base/models/common/schemas.js.map +1 -1
- package/dist/cjs/base/models/common/types/id.js.map +1 -1
- package/dist/cjs/base/models/common/types/index.js.map +1 -1
- package/dist/cjs/base/models/common/utilities.js.map +1 -1
- package/dist/cjs/base/models/index.js.map +1 -1
- package/dist/cjs/base/providers/base.js.map +1 -1
- package/dist/cjs/base/providers/index.js.map +1 -1
- package/dist/cjs/base/repositories/common/constants.js.map +1 -1
- package/dist/cjs/base/repositories/common/errors.js.map +1 -1
- package/dist/cjs/base/repositories/common/extra-request.js.map +1 -1
- package/dist/cjs/base/repositories/common/index.js.map +1 -1
- package/dist/cjs/base/repositories/common/response-reader.js.map +1 -1
- package/dist/cjs/base/repositories/common/types/contracts.js.map +1 -1
- package/dist/cjs/base/repositories/common/types/index.js.map +1 -1
- package/dist/cjs/base/repositories/common/types/options.js.map +1 -1
- package/dist/cjs/base/repositories/common/types/query.js.map +1 -1
- package/dist/cjs/base/repositories/common/types/result-schemas.js.map +1 -1
- package/dist/cjs/base/repositories/common/types/results.js.map +1 -1
- package/dist/cjs/base/repositories/core/abstract.js.map +1 -1
- package/dist/cjs/base/repositories/core/index.js.map +1 -1
- package/dist/cjs/base/repositories/index.js.map +1 -1
- package/dist/cjs/base/repositories/query-schemas/index.js.map +1 -1
- package/dist/cjs/base/request-context/common/index.js.map +1 -1
- package/dist/cjs/base/request-context/common/types.js.map +1 -1
- package/dist/cjs/base/request-context/index.js.map +1 -1
- package/dist/cjs/base/request-context/registry.js.map +1 -1
- package/dist/cjs/base/services/base.js.map +1 -1
- package/dist/cjs/base/services/common/index.js.map +1 -1
- package/dist/cjs/base/services/common/types.js.map +1 -1
- package/dist/cjs/base/services/index.js.map +1 -1
- package/dist/cjs/common/bindings.js.map +1 -1
- package/dist/cjs/common/error-codes.js.map +1 -1
- package/dist/cjs/common/index.js.map +1 -1
- package/dist/cjs/common/statuses/common.js.map +1 -1
- package/dist/cjs/common/statuses/index.js.map +1 -1
- package/dist/cjs/common/statuses/migration.js.map +1 -1
- package/dist/cjs/common/statuses/role.js.map +1 -1
- package/dist/cjs/common/statuses/user.js.map +1 -1
- package/dist/cjs/helpers/index.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/constants.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/index.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/keys.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/relation-builder.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/types/artifact.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/types/controller.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/types/index.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/types/injection.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/types/model.js.map +1 -1
- package/dist/cjs/helpers/inversion/common/types/persistence.js.map +1 -1
- package/dist/cjs/helpers/inversion/container.js.map +1 -1
- package/dist/cjs/helpers/inversion/index.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/artifact.mixin.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/controllers/controller.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/controllers/grpc.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/controllers/index.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/controllers/rest.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/datasource.mixin.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/index.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/model.mixin.js.map +1 -1
- package/dist/cjs/helpers/inversion/mixins/repository.mixin.js.map +1 -1
- package/dist/cjs/helpers/inversion/registry.js.map +1 -1
- package/dist/cjs/helpers/singleton-realm.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/metadata.js.map +1 -1
- package/dist/cjs/repository.js.map +1 -1
- package/dist/cjs/utilities/error.utility.js.map +1 -1
- package/dist/cjs/utilities/index.js.map +1 -1
- package/dist/esm/base/applications/abstract.js.map +1 -1
- package/dist/esm/base/applications/artifact-group.js.map +1 -1
- package/dist/esm/base/applications/artifact-index.js.map +1 -1
- package/dist/esm/base/applications/boot-sequence.js.map +1 -1
- package/dist/esm/base/applications/common/constants.js.map +1 -1
- package/dist/esm/base/applications/common/index.js.map +1 -1
- package/dist/esm/base/applications/common/types/application.js.map +1 -1
- package/dist/esm/base/applications/common/types/artifacts.js.map +1 -1
- package/dist/esm/base/applications/common/types/index.js.map +1 -1
- package/dist/esm/base/applications/common/types/middlewares.js.map +1 -1
- package/dist/esm/base/applications/index.js.map +1 -1
- package/dist/esm/base/applications/rest.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/codecs.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/constants/authentication.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/constants/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/constants/jose.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/constants/service-assertion.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/errors.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/keys.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/basic.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/jwt.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/options.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/rest.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/service.js.map +1 -1
- package/dist/esm/base/auth/authenticate/common/types/strategy.js.map +1 -1
- package/dist/esm/base/auth/authenticate/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/middlewares/authenticate.middleware.js.map +1 -1
- package/dist/esm/base/auth/authenticate/middlewares/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/providers/authentication.provider.js.map +1 -1
- package/dist/esm/base/auth/authenticate/providers/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/strategies/index.js.map +1 -1
- package/dist/esm/base/auth/authenticate/strategies/strategy-registry.js.map +1 -1
- package/dist/esm/base/auth/authorize/builders/grant.builder.js.map +1 -1
- package/dist/esm/base/auth/authorize/builders/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/builders/permission.builder.js.map +1 -1
- package/dist/esm/base/auth/authorize/builders/policy.builder.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/constants/authorization.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/constants/binding-keys.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/constants/enforcer.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/constants/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/errors.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/types/enforcer.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/types/grant.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/types/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/common/types/request.js.map +1 -1
- package/dist/esm/base/auth/authorize/enforcers/enforcer-registry.js.map +1 -1
- package/dist/esm/base/auth/authorize/enforcers/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/middlewares/authorize.middleware.js.map +1 -1
- package/dist/esm/base/auth/authorize/middlewares/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/models/authorization-role.model.js.map +1 -1
- package/dist/esm/base/auth/authorize/models/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/providers/authorization.provider.js.map +1 -1
- package/dist/esm/base/auth/authorize/providers/index.js.map +1 -1
- package/dist/esm/base/auth/authorize/providers/request-domain.js.map +1 -1
- package/dist/esm/base/auth/base/abstract-auth-registry.js.map +1 -1
- package/dist/esm/base/auth/base/index.js.map +1 -1
- package/dist/esm/base/auth/context-variables.js.map +1 -1
- package/dist/esm/base/auth/index.js.map +1 -1
- package/dist/esm/base/auth/models/index.js.map +1 -1
- package/dist/esm/base/auth/models/requests/change-password.schema.js.map +1 -1
- package/dist/esm/base/auth/models/requests/index.js.map +1 -1
- package/dist/esm/base/auth/models/requests/sign-in.schema.js.map +1 -1
- package/dist/esm/base/auth/models/requests/sign-up.schema.js.map +1 -1
- package/dist/esm/base/components/base.js.map +1 -1
- package/dist/esm/base/components/controller/index.js.map +1 -1
- package/dist/esm/base/components/controller/rest/common/index.js.map +1 -1
- package/dist/esm/base/components/controller/rest/common/types.js.map +1 -1
- package/dist/esm/base/components/controller/rest/index.js.map +1 -1
- package/dist/esm/base/components/controller/rest/rest.component.js.map +1 -1
- package/dist/esm/base/components/index.js.map +1 -1
- package/dist/esm/base/configurations/base.js.map +1 -1
- package/dist/esm/base/configurations/common/index.js.map +1 -1
- package/dist/esm/base/configurations/common/types.js.map +1 -1
- package/dist/esm/base/configurations/index.js.map +1 -1
- package/dist/esm/base/controllers/common/constants.js.map +1 -1
- package/dist/esm/base/controllers/common/html-response.js.map +1 -1
- package/dist/esm/base/controllers/common/index.js.map +1 -1
- package/dist/esm/base/controllers/common/schema-builders.js.map +1 -1
- package/dist/esm/base/controllers/common/schemas.js.map +1 -1
- package/dist/esm/base/controllers/common/types/context.js.map +1 -1
- package/dist/esm/base/controllers/common/types/controller.js.map +1 -1
- package/dist/esm/base/controllers/common/types/index.js.map +1 -1
- package/dist/esm/base/controllers/common/types/route.js.map +1 -1
- package/dist/esm/base/controllers/context.js.map +1 -1
- package/dist/esm/base/controllers/factory/controller.js.map +1 -1
- package/dist/esm/base/controllers/factory/crud/abstract.js.map +1 -1
- package/dist/esm/base/controllers/factory/crud/index.js.map +1 -1
- package/dist/esm/base/controllers/factory/crud/persistable.js.map +1 -1
- package/dist/esm/base/controllers/factory/crud/readable.js.map +1 -1
- package/dist/esm/base/controllers/factory/definition.js.map +1 -1
- package/dist/esm/base/controllers/factory/helper.js.map +1 -1
- package/dist/esm/base/controllers/factory/index.js.map +1 -1
- package/dist/esm/base/controllers/factory/repository-injection.js.map +1 -1
- package/dist/esm/base/controllers/index.js.map +1 -1
- package/dist/esm/base/controllers/rest/abstract.js.map +1 -1
- package/dist/esm/base/controllers/rest/base.js.map +1 -1
- package/dist/esm/base/controllers/rest/extras.js.map +1 -1
- package/dist/esm/base/controllers/rest/index.js.map +1 -1
- package/dist/esm/base/datasources/abstract.js.map +1 -1
- package/dist/esm/base/datasources/common/index.js.map +1 -1
- package/dist/esm/base/datasources/common/types.js.map +1 -1
- package/dist/esm/base/datasources/index.js.map +1 -1
- package/dist/esm/base/events/common/constants.js.map +1 -1
- package/dist/esm/base/events/common/index.js.map +1 -1
- package/dist/esm/base/events/common/types.js.map +1 -1
- package/dist/esm/base/events/event-bus.js.map +1 -1
- package/dist/esm/base/events/index.js.map +1 -1
- package/dist/esm/base/index.js.map +1 -1
- package/dist/esm/base/metadata/artifact-keys.js.map +1 -1
- package/dist/esm/base/metadata/index.js.map +1 -1
- package/dist/esm/base/metadata/injectable.js.map +1 -1
- package/dist/esm/base/metadata/injectors.js.map +1 -1
- package/dist/esm/base/metadata/persistents.js.map +1 -1
- package/dist/esm/base/metadata/routes/common.js.map +1 -1
- package/dist/esm/base/metadata/routes/controller.js.map +1 -1
- package/dist/esm/base/metadata/routes/index.js.map +1 -1
- package/dist/esm/base/metadata/routes/rest.js.map +1 -1
- package/dist/esm/base/metadata/routes/rpc.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/app-error.middleware.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/common/index.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/common/types.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/database.handler.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/definition.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/index.js.map +1 -1
- package/dist/esm/base/middlewares/app-error/zod.handler.js.map +1 -1
- package/dist/esm/base/middlewares/common/constants.js.map +1 -1
- package/dist/esm/base/middlewares/common/errors.js.map +1 -1
- package/dist/esm/base/middlewares/common/index.js.map +1 -1
- package/dist/esm/base/middlewares/emoji-favicon/emoji-favicon.middleware.js.map +1 -1
- package/dist/esm/base/middlewares/emoji-favicon/index.js.map +1 -1
- package/dist/esm/base/middlewares/form-body/form-body.middleware.js.map +1 -1
- package/dist/esm/base/middlewares/index.js.map +1 -1
- package/dist/esm/base/middlewares/not-found/index.js.map +1 -1
- package/dist/esm/base/middlewares/not-found/not-found.middleware.js.map +1 -1
- package/dist/esm/base/mixins/common/index.js.map +1 -1
- package/dist/esm/base/mixins/common/types.js.map +1 -1
- package/dist/esm/base/mixins/index.js.map +1 -1
- package/dist/esm/base/models/base.js.map +1 -1
- package/dist/esm/base/models/common/constants.js.map +1 -1
- package/dist/esm/base/models/common/index.js.map +1 -1
- package/dist/esm/base/models/common/schemas.js.map +1 -1
- package/dist/esm/base/models/common/types/id.js.map +1 -1
- package/dist/esm/base/models/common/types/index.js.map +1 -1
- package/dist/esm/base/models/common/utilities.js.map +1 -1
- package/dist/esm/base/models/index.js.map +1 -1
- package/dist/esm/base/providers/base.js.map +1 -1
- package/dist/esm/base/providers/index.js.map +1 -1
- package/dist/esm/base/repositories/common/constants.js.map +1 -1
- package/dist/esm/base/repositories/common/errors.js.map +1 -1
- package/dist/esm/base/repositories/common/extra-request.js.map +1 -1
- package/dist/esm/base/repositories/common/index.js.map +1 -1
- package/dist/esm/base/repositories/common/response-reader.js.map +1 -1
- package/dist/esm/base/repositories/common/types/contracts.js.map +1 -1
- package/dist/esm/base/repositories/common/types/index.js.map +1 -1
- package/dist/esm/base/repositories/common/types/options.js.map +1 -1
- package/dist/esm/base/repositories/common/types/query.js.map +1 -1
- package/dist/esm/base/repositories/common/types/result-schemas.js.map +1 -1
- package/dist/esm/base/repositories/common/types/results.js.map +1 -1
- package/dist/esm/base/repositories/core/abstract.js.map +1 -1
- package/dist/esm/base/repositories/core/index.js.map +1 -1
- package/dist/esm/base/repositories/index.js.map +1 -1
- package/dist/esm/base/repositories/query-schemas/index.js.map +1 -1
- package/dist/esm/base/request-context/common/index.js.map +1 -1
- package/dist/esm/base/request-context/common/types.js.map +1 -1
- package/dist/esm/base/request-context/index.js.map +1 -1
- package/dist/esm/base/request-context/registry.js.map +1 -1
- package/dist/esm/base/services/base.js.map +1 -1
- package/dist/esm/base/services/common/index.js.map +1 -1
- package/dist/esm/base/services/common/types.js.map +1 -1
- package/dist/esm/base/services/index.js.map +1 -1
- package/dist/esm/common/bindings.js.map +1 -1
- package/dist/esm/common/error-codes.js.map +1 -1
- package/dist/esm/common/index.js.map +1 -1
- package/dist/esm/common/statuses/common.js.map +1 -1
- package/dist/esm/common/statuses/index.js.map +1 -1
- package/dist/esm/common/statuses/migration.js.map +1 -1
- package/dist/esm/common/statuses/role.js.map +1 -1
- package/dist/esm/common/statuses/user.js.map +1 -1
- package/dist/esm/helpers/index.js.map +1 -1
- package/dist/esm/helpers/inversion/common/constants.js.map +1 -1
- package/dist/esm/helpers/inversion/common/index.js.map +1 -1
- package/dist/esm/helpers/inversion/common/keys.js.map +1 -1
- package/dist/esm/helpers/inversion/common/relation-builder.js.map +1 -1
- package/dist/esm/helpers/inversion/common/types/artifact.js.map +1 -1
- package/dist/esm/helpers/inversion/common/types/controller.js.map +1 -1
- package/dist/esm/helpers/inversion/common/types/index.js.map +1 -1
- package/dist/esm/helpers/inversion/common/types/injection.js.map +1 -1
- package/dist/esm/helpers/inversion/common/types/model.js.map +1 -1
- package/dist/esm/helpers/inversion/common/types/persistence.js.map +1 -1
- package/dist/esm/helpers/inversion/container.js.map +1 -1
- package/dist/esm/helpers/inversion/index.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/artifact.mixin.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/controllers/controller.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/controllers/grpc.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/controllers/index.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/controllers/rest.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/datasource.mixin.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/index.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/model.mixin.js.map +1 -1
- package/dist/esm/helpers/inversion/mixins/repository.mixin.js.map +1 -1
- package/dist/esm/helpers/inversion/registry.js.map +1 -1
- package/dist/esm/helpers/singleton-realm.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/metadata.js.map +1 -1
- package/dist/esm/repository.js.map +1 -1
- package/dist/esm/utilities/error.utility.js.map +1 -1
- package/dist/esm/utilities/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../../../src/base/repositories/core/abstract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abstract.js","sourceRoot":"","sources":["../../../../../src/base/repositories/core/abstract.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AbstractDataSource } from '@/base/datasources';\nimport type { AbstractEntity, IdType } from '@/base/models';\nimport type { IModelMetadata } from '@/helpers/inversion';\nimport { MetadataRegistry } from '@/helpers/inversion';\nimport type { TClass, TNullable } from '@venizia/ignis-helpers/common';\nimport { BaseHelper, getError } from '@venizia/ignis-helpers/core';\nimport { resolveValue } from '@venizia/ignis-helpers/common';\nimport { RetryBackoffStrategies, RetryHelper, RetryJitterModes } from '@venizia/ignis-helpers/core';\nimport type {\n IExtraOptions,\n IPersistableRepository,\n IWithReadRetry,\n TCount,\n TDataWithRange,\n TFindOneOptions,\n TFindOptions,\n TFindRangeOptions,\n TRepositoryOperationScope,\n} from '../common';\n// The file, not the `../common` barrel: the barrel re-exports the OpenAPI schemas, and this module is\n// on the `./repository` entry, which must load without `@hono/zod-openapi` installed.\nimport {\n DEFAULT_MAX_LIMIT,\n RepositoryErrorCodes,\n RepositoryOperationScopes,\n} from '../common/constants';\nimport type { TFilter, TInclusion, TWhere } from '@venizia/ignis-filter';\n\n/**\n * Engine-neutral repository plumbing - lazy dataSource/entity resolution, class-keyed `@model`\n * settings, operation scope. `TOptions` defaults to `IExtraOptions` so connectors can narrow it\n * while staying assignable to this base.\n */\nexport abstract class AbstractRepository<\n TDataObject extends object,\n TPersistObject extends object = TDataObject,\n TOptions extends IExtraOptions = IExtraOptions,\n>\n extends BaseHelper\n implements IPersistableRepository<TDataObject, TPersistObject, TOptions>\n{\n protected _operationScope: TRepositoryOperationScope;\n\n /** Lazy-resolved on first access if not provided in constructor. */\n protected _dataSource?: AbstractDataSource;\n\n /** Lazy-resolved from @repository metadata on first access. */\n protected _entity?: AbstractEntity;\n\n /**\n * Memoized @model settings for `this.entity`'s class. `null` means not yet resolved - `undefined`\n * is itself a valid resolved value: the model declares no settings.\n */\n private _modelSettings: IModelMetadata['settings'] | null = null;\n\n constructor(\n dataSource?: AbstractDataSource,\n opts?: {\n scope?: string;\n entityClass?: TClass<AbstractEntity>;\n operationScope?: TRepositoryOperationScope;\n },\n ) {\n const scopeName =\n opts?.scope ??\n (opts?.entityClass?.name ? [opts.entityClass.name, 'Repository'].join('') : new.target.name);\n\n super({ scope: scopeName });\n\n this._operationScope = opts?.operationScope ?? RepositoryOperationScopes.READ_ONLY;\n\n if (dataSource) {\n this._dataSource = dataSource;\n }\n\n if (opts?.entityClass) {\n this._entity = new opts.entityClass();\n }\n }\n\n get dataSource(): AbstractDataSource {\n if (!this._dataSource) {\n throw getError({\n message: `[${this.constructor.name}] DataSource not available. Use @repository({ model: YourModel, dataSource: YourDataSource }) or pass dataSource in constructor.`,\n });\n }\n\n return this._dataSource;\n }\n\n set dataSource(value: AbstractDataSource) {\n this._dataSource = value;\n }\n\n /** Auto-resolves from @repository metadata if not explicitly set. */\n get entity(): AbstractEntity {\n this._entity ??= this.resolveEntity();\n return this._entity;\n }\n\n set entity(value: AbstractEntity) {\n this._entity = value;\n }\n\n get operationScope(): TRepositoryOperationScope {\n return this._operationScope;\n }\n\n setDataSource(opts: { dataSource: AbstractDataSource }): void {\n this._dataSource = opts.dataSource;\n }\n\n getEntity(): AbstractEntity {\n return this.entity;\n }\n\n /**\n * Resolved `@model` settings for `this.entity`'s class, keyed by Reflect target - not by\n * `entity.name`, which can diverge from the `@model` registry key.\n */\n protected get modelSettings(): IModelMetadata['settings'] {\n if (this._modelSettings !== null) {\n return this._modelSettings;\n }\n\n this._modelSettings = MetadataRegistry.getInstance().getModelMetadata({\n target: this.entity.constructor,\n })?.settings;\n\n return this._modelSettings;\n }\n\n protected get hiddenFields(): string[] {\n return this.modelSettings?.hiddenProperties ?? [];\n }\n\n /** Default where from @model settings.defaultFilter.where, AND-merged into every query unless skipped. */\n protected get defaultWhere(): TWhere | undefined {\n return this.modelSettings?.defaultFilter?.where;\n }\n\n protected get defaultLimit(): number | undefined {\n return this.modelSettings?.defaultLimit;\n }\n\n /** Largest `limit` a caller may ask for, when the model declares one; undefined leaves the tier's own default in force. */\n protected get maxLimit(): number | undefined {\n return this.modelSettings?.maxLimit;\n }\n\n /**\n * Both bounds, in one place, for every tier.\n *\n * The upper bound is the point: `@model({ settings: { maxLimit } })` is public and validated at\n * decoration time, but the relational tier read it nowhere, so `maxLimit: 2` still issued\n * `LIMIT 50000000`.\n *\n * The lower bound matters just as much and is easy to miss: a NEGATIVE limit is not a smaller\n * page. Drizzle renders the LIMIT clause only when the value is `>= 0`, so a negative one removes\n * the clause and returns the whole table. The wire schema now rejects it too, but a server-side\n * caller reaches this method without passing through the schema at all.\n */\n protected assertLimitWithinCeiling(opts: { limit?: number; scope?: string }): void {\n const { limit, scope = 'find' } = opts;\n\n if (limit === undefined) {\n return;\n }\n\n // The shape check first, because it needs no metadata at all.\n if (!Number.isInteger(limit) || limit < 0) {\n throw getError({\n message: `[${this.constructor.name}][${scope}] Invalid 'limit' | Expected a non-negative integer | Got: ${limit}`,\n });\n }\n\n // `maxLimit` reaches `modelSettings`, which resolves the entity - and THAT throws for a\n // repository with no `@repository` model binding. Such a repository is a misconfiguration this\n // method has no business reporting, and the caller path that used to reach `getDefaultLimit()`\n // never touched it either, because `??` short-circuits when a limit is given. So the ceiling is\n // consulted only when the binding that makes it resolvable is actually present.\n const hasModelBinding = Boolean(\n MetadataRegistry.getInstance().getRepositoryBinding({ target: this.constructor })?.model,\n );\n const ceiling = (hasModelBinding ? this.maxLimit : undefined) ?? DEFAULT_MAX_LIMIT;\n\n if (limit > ceiling) {\n throw getError({\n message: `[${this.constructor.name}][${scope}] Requested page exceeds this model's limit | requested: ${limit} | maximum: ${ceiling} | raise it with @model settings.maxLimit if larger pages are genuinely needed`,\n });\n }\n }\n\n /**\n * The whole filter, relations included. Checking only the top-level `limit` left the identical\n * defect reachable one level down: a relation scope's negative limit drops Drizzle's LIMIT clause\n * for that relation and loads the entire related table.\n *\n * A relation's limit gets the SHAPE check only, not a ceiling. The ceiling belongs to the\n * relation's own model, which this repository cannot resolve - claiming otherwise would enforce\n * the parent's `maxLimit` on a different entity.\n */\n protected assertFilterLimits(opts: { filter?: TFilter; scope?: string }): void {\n const { filter, scope = 'find' } = opts;\n\n if (!filter) {\n return;\n }\n\n this.assertLimitWithinCeiling({ limit: filter.limit, scope });\n\n const walk = (inclusions: TInclusion[] | undefined, path: string): void => {\n const inclusionsList = inclusions ?? [];\n for (const inclusion of inclusionsList) {\n const relationScope = inclusion.scope;\n if (!relationScope) {\n continue;\n }\n\n const relationPath = `${path}.${inclusion.relation}`;\n const relationLimit = relationScope.limit;\n\n if (\n relationLimit !== undefined &&\n (!Number.isInteger(relationLimit) || relationLimit < 0)\n ) {\n throw getError({\n message: `[${this.constructor.name}][${scope}] Invalid 'limit' on relation scope | relation: ${relationPath} | Expected a non-negative integer | Got: ${relationLimit}`,\n });\n }\n\n walk(relationScope.include, relationPath);\n }\n };\n\n walk(filter.include, scope);\n }\n\n /** Resolves the entity instance from @repository metadata on first access. */\n protected resolveEntity(): AbstractEntity {\n const registry = MetadataRegistry.getInstance();\n const binding = registry.getRepositoryBinding({ target: this.constructor });\n\n if (!binding?.model) {\n throw getError({\n message: `[${this.constructor.name}] Cannot resolve entity. Either pass entityClass in constructor or use @repository decorator with model option.`,\n });\n }\n\n // resolveValue() erases to the resolved value's structural type, not this class-or-resolver\n // union's member - the `@repository` decorator guarantees a class constructor here.\n const ModelClass = resolveValue({ value: binding.model }) as TClass<AbstractEntity>;\n return new ModelClass();\n }\n\n /** Rejects a verb the current operation scope does not permit. */\n protected denyOperation(opts: { methodName: string }): never {\n throw getError({\n messageCode: RepositoryErrorCodes.OPERATION_NOT_ALLOWED,\n message: `[${opts.methodName}] Repository operation is NOT ALLOWED | scope: ${this.operationScope}`,\n });\n }\n\n /**\n * Shared retry orchestration for read verbs. Inside a transaction retry is skipped - the pool\n * routes transactions to the primary, so there is no replica lag to wait out.\n */\n protected executeReadWithRetry<TResult>(opts: {\n operation: string;\n options: IExtraOptions & IWithReadRetry<TResult>;\n defaultUntil: (result: TResult) => boolean;\n execution: () => Promise<TResult>;\n }): Promise<TResult> {\n const { operation, options, defaultUntil, execution } = opts;\n\n if (!options.retry) {\n return execution();\n }\n\n if (options.transaction) {\n this.logger.for(operation).debug('Read retry skipped inside transaction');\n return execution();\n }\n\n const { maxAttempts, maxTotalMs, signal, backoff, until } = options.retry;\n\n return RetryHelper.executeWithRetryUntil<TResult>({\n operation: [this.constructor.name, operation].join('.'),\n execution,\n until: until ?? defaultUntil,\n maxAttempts,\n maxTotalMs,\n signal,\n backoff: backoff ?? {\n strategy: RetryBackoffStrategies.EXPONENTIAL,\n initialDelayMs: 50,\n maxDelayMs: 500,\n jitter: RetryJitterModes.EQUAL,\n },\n logger: this.logger,\n });\n }\n\n /**\n * A copy of `options` without `retry`, so re-entering a read verb takes its non-retry path - this\n * is what keeps the retry recursion single-depth. Copy-then-delete rather than a rest-destructure\n * (lint rejects the unused rest sibling) or `lodash/omit` (its `Omit<>` return type is not\n * assignable back to `TOptions`).\n */\n private omitReadRetry<TReadOptions extends { retry?: unknown }>(\n options: TReadOptions,\n ): TReadOptions {\n const rest = { ...options };\n delete rest.retry;\n return rest;\n }\n\n /** `find`, re-executed until the retry predicate holds - connectors dispatch here from `find` when `options.retry` is set. */\n protected findUntil<R = TDataObject>(opts: {\n filter: TFilter<TDataObject>;\n options: TFindOptions<TOptions, R>;\n }): Promise<Array<R>> {\n const options = this.omitReadRetry(opts.options);\n\n return this.executeReadWithRetry<Array<R>>({\n operation: 'find',\n options: opts.options,\n defaultUntil: result => result.length > 0,\n execution: () => this.find<R>({ filter: opts.filter, options }),\n });\n }\n\n /** `find` with the range envelope, re-executed until the retry predicate holds - split from `findUntil` so each result shape is checked against its own `find` overload. */\n protected findRangeUntil<R = TDataObject>(opts: {\n filter: TFilter<TDataObject>;\n options: TFindRangeOptions<TOptions, R>;\n }): Promise<TDataWithRange<R>> {\n const options = this.omitReadRetry(opts.options);\n\n return this.executeReadWithRetry<TDataWithRange<R>>({\n operation: 'find',\n options: opts.options,\n defaultUntil: result => result.data.length > 0,\n execution: () => this.find<R>({ filter: opts.filter, options }),\n });\n }\n\n /** `findOne`, re-executed until the retry predicate holds - also serves `findById` via its findOne delegation. */\n protected findOneUntil<R = TDataObject>(opts: {\n filter: TFilter<TDataObject>;\n options: TFindOneOptions<TOptions, R>;\n }): Promise<TNullable<R>> {\n const options = this.omitReadRetry(opts.options);\n\n return this.executeReadWithRetry<TNullable<R>>({\n operation: 'findOne',\n options: opts.options,\n defaultUntil: result => result !== null && result !== undefined,\n execution: () => this.findOne<R>({ filter: opts.filter, options }),\n });\n }\n\n abstract count(opts: { where: TWhere<TDataObject>; options?: TOptions }): Promise<TCount>;\n\n abstract existsWith(opts: { where: TWhere<TDataObject>; options?: TOptions }): Promise<boolean>;\n\n abstract find<R = TDataObject>(opts: {\n filter: TFilter<TDataObject>;\n options: TFindRangeOptions<TOptions, R>;\n }): Promise<TDataWithRange<R>>;\n\n abstract find<R = TDataObject>(opts: {\n filter: TFilter<TDataObject>;\n options?: TFindOptions<TOptions, R>;\n }): Promise<R[]>;\n\n abstract findOne<R = TDataObject>(opts: {\n filter: TFilter<TDataObject>;\n options?: TFindOneOptions<TOptions, R>;\n }): Promise<TNullable<R>>;\n\n abstract findById<R = TDataObject>(opts: {\n id: IdType;\n filter?: Omit<TFilter<TDataObject>, 'where'>;\n options?: TFindOneOptions<TOptions, R>;\n }): Promise<TNullable<R>>;\n\n abstract create(opts: {\n data: TPersistObject;\n options: TOptions & { shouldReturn: false };\n }): Promise<TCount & { data: undefined | null }>;\n\n abstract create<R = TDataObject>(opts: {\n data: TPersistObject;\n options?: TOptions & { shouldReturn?: true };\n }): Promise<TCount & { data: R }>;\n\n abstract createAll(opts: {\n data: Array<TPersistObject>;\n options: TOptions & { shouldReturn: false };\n }): Promise<TCount & { data: undefined | null }>;\n\n abstract createAll<R = TDataObject>(opts: {\n data: Array<TPersistObject>;\n options?: TOptions & { shouldReturn?: true };\n }): Promise<TCount & { data: Array<R> }>;\n\n abstract updateById(opts: {\n id: IdType;\n data: Partial<TPersistObject>;\n options: TOptions & { shouldReturn: false };\n }): Promise<TCount & { data: undefined | null }>;\n\n abstract updateById<R = TDataObject>(opts: {\n id: IdType;\n data: Partial<TPersistObject>;\n options?: TOptions & { shouldReturn?: true };\n }): Promise<TCount & { data: R }>;\n\n abstract updateAll(opts: {\n data: Partial<TPersistObject>;\n where: TWhere<TDataObject>;\n options: TOptions & { shouldReturn: false; force?: boolean };\n }): Promise<TCount & { data: undefined | null }>;\n\n abstract updateAll<R = TDataObject>(opts: {\n data: Partial<TPersistObject>;\n where: TWhere<TDataObject>;\n options?: TOptions & { shouldReturn?: true; force?: boolean };\n }): Promise<TCount & { data: Array<R> | null }>;\n\n /** Alias for updateAll. */\n updateBy(opts: {\n data: Partial<TPersistObject>;\n where: TWhere<TDataObject>;\n options: TOptions & { shouldReturn: false; force?: boolean };\n }): Promise<TCount & { data: undefined | null }>;\n updateBy<R = TDataObject>(opts: {\n data: Partial<TPersistObject>;\n where: TWhere<TDataObject>;\n options?: TOptions & { shouldReturn?: true; force?: boolean };\n }): Promise<TCount & { data: Array<R> | null }>;\n updateBy<R = TDataObject>(opts: {\n data: Partial<TPersistObject>;\n where: TWhere<TDataObject>;\n options?: TOptions & { shouldReturn?: boolean; force?: boolean };\n }): Promise<TCount & { data: TNullable<Array<R>> }> {\n const { data, where, options } = opts;\n\n if (options?.shouldReturn === false) {\n return this.updateAll({ data, where, options: { ...options, shouldReturn: false } });\n }\n\n return this.updateAll<R>({ data, where, options });\n }\n\n abstract deleteById(opts: {\n id: IdType;\n options: TOptions & { shouldReturn: false };\n }): Promise<TCount & { data: undefined | null }>;\n\n abstract deleteById<R = TDataObject>(opts: {\n id: IdType;\n options?: TOptions & { shouldReturn?: true };\n }): Promise<TCount & { data: R }>;\n\n abstract deleteAll(opts: {\n where?: TWhere<TDataObject>;\n options: TOptions & { shouldReturn: false; force?: boolean };\n }): Promise<TCount & { data: undefined | null }>;\n\n abstract deleteAll<R = TDataObject>(opts: {\n where?: TWhere<TDataObject>;\n options?: TOptions & { shouldReturn?: true; force?: boolean };\n }): Promise<TCount & { data: Array<R> | null }>;\n\n /** Alias for deleteAll. */\n deleteBy(opts: {\n where: TWhere<TDataObject>;\n options: TOptions & { shouldReturn: false; force?: boolean };\n }): Promise<TCount & { data: undefined | null }>;\n deleteBy<R = TDataObject>(opts: {\n where: TWhere<TDataObject>;\n options?: TOptions & { shouldReturn?: true; force?: boolean };\n }): Promise<TCount & { data: Array<R> | null }>;\n deleteBy<R = TDataObject>(opts: {\n where: TWhere<TDataObject>;\n options?: TOptions & { shouldReturn?: boolean; force?: boolean };\n }): Promise<TCount & { data: TNullable<Array<R>> }> {\n const { where, options } = opts;\n\n if (options?.shouldReturn === false) {\n return this.deleteAll({ where, options: { ...options, shouldReturn: false } });\n }\n\n return this.deleteAll<R>({ where, options });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/repositories/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/repositories/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B","sourcesContent":["export * from './abstract';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/repositories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/repositories/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,yCAAuB;AACvB,kDAAgC","sourcesContent":["export * from './common';\nexport * from './core';\nexport * from './query-schemas';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/repositories/query-schemas/index.ts"],"names":[],"mappings":";;;;AAAA,2DAAyF;AAEzF,yaAAya;AACza,mDAAsC;AAEtC,wVAAwV;AACxV,MAAM,gBAAgB,GAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;IAC9D,OAAQ,MAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEW,KAST,IAAA,2BAAiB,EAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,EARnD,oBAAY,oBACZ,oBAAY,oBACZ,uBAAe,uBACf,mBAAW,mBACX,oBAAY,oBACZ,qBAAa,qBACb,kBAAU,kBACV,mBAAW,kBACyC;AAEtD;;;;;;;;;GASG;AACU,QAAA,iBAAiB,GAAG,eAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,oBAAY,EAAE,CAAC,CAAC,OAAO,CAAC;IAC1E,WAAW,EAAE,wDAAwD;CACtE,CAAC,CAAC;AAEH;;;;;;;GAOG;AACU,QAAA,gBAAgB,GAAG,eAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,mBAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC;IAClF,WAAW,EAAE,mBAAmB;CACjC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/repositories/query-schemas/index.ts"],"names":[],"mappings":";;;;AAAA,2DAAyF;AAEzF,yaAAya;AACza,mDAAsC;AAEtC,wVAAwV;AACxV,MAAM,gBAAgB,GAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;IAC9D,OAAQ,MAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEW,KAST,IAAA,2BAAiB,EAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,EARnD,oBAAY,oBACZ,oBAAY,oBACZ,uBAAe,uBACf,mBAAW,mBACX,oBAAY,oBACZ,qBAAa,qBACb,kBAAU,kBACV,mBAAW,kBACyC;AAEtD;;;;;;;;;GASG;AACU,QAAA,iBAAiB,GAAG,eAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,oBAAY,EAAE,CAAC,CAAC,OAAO,CAAC;IAC1E,WAAW,EAAE,wDAAwD;CACtE,CAAC,CAAC;AAEH;;;;;;;GAOG;AACU,QAAA,gBAAgB,GAAG,eAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,mBAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC;IAClF,WAAW,EAAE,mBAAmB;CACjC,CAAC,CAAC","sourcesContent":["import { buildQuerySchemas, type TSchemaDecorator } from '@venizia/ignis-filter/schemas';\n\n/** Load order is the point: `@hono/zod-openapi` peers on `zod`, so importing it patches `.openapi()` onto the shared `ZodType` prototype. `buildQuerySchemas` runs at module scope below, and ESM evaluates imports first, so the method exists by the time the decorator is called. Without this import the schemas silently build undecorated whenever this module happens to load before anything else pulls in the OpenAPI layer. */\nimport { z } from '@hono/zod-openapi';\n\n/** The schemas themselves live in `@venizia/ignis-filter`, built with plain `zod` so a browser can use them. Documentation metadata is injected here because it is a server concern - `.openapi()` returns a new schema rather than mutating, and three of the decorations sit on inner nodes, so they cannot be applied after the tree is composed. */\nconst openApiDecorator: TSchemaDecorator = (schema, metadata) => {\n return (schema as any).openapi(metadata);\n};\n\nexport const {\n FieldsSchema,\n FilterSchema,\n InclusionSchema,\n LimitSchema,\n OffsetSchema,\n OrderBySchema,\n SkipSchema,\n WhereSchema,\n} = buildQuerySchemas({ decorate: openApiDecorator });\n\n/**\n * The query shape of a route that accepts a `filter`. The framework's own `find`, `findById` and\n * `findOne` use it, and a hand-written route gets the same contract by naming it.\n *\n * `filter` needs no `.optional()` at the call site - {@link FilterSchema} already carries one, so a\n * second is a no-op and so is a trailing `.partial()`.\n *\n * Extend it rather than rebuilding it when a route takes more than `filter`:\n * `FilterQuerySchema.extend({ q: z.string().optional() })`.\n */\nexport const FilterQuerySchema = z.object({ filter: FilterSchema }).openapi({\n description: 'Filter with where, fields, limit, skip, order, include',\n});\n\n/**\n * The query shape of a route that accepts conditions and nothing else - `count` and anything shaped\n * like it. `where` is OPTIONAL here.\n *\n * `updateBy` and `deleteBy` deliberately do not use this. Their `where` is optional in the query\n * because it may ride in the body instead; the handler refuses a request that carries it in neither\n * place - a missing one there rewrites or deletes every row in the table.\n */\nexport const WhereQuerySchema = z.object({ where: WhereSchema.optional() }).openapi({\n description: 'Filter conditions',\n});\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/request-context/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/request-context/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB","sourcesContent":["export * from './types';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/base/request-context/common/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/base/request-context/common/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { Context } from 'hono';\n\n/**\n * Reads the host's ambient request context, synchronously. `undefined` means THERE IS NO REQUEST\n * CONTEXT - a distinct state from a context that carries no user, and callers act on the difference.\n */\nexport type TRequestContextResolver = () => Context | undefined;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/request-context/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/request-context/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B","sourcesContent":["export * from './common';\nexport * from './registry';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/base/request-context/registry.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAkB3D,MAAa,sBAAsB;aACjB,uBAAkB,GAAG,0BAA0B,CAAC;IAEhE,mGAAmG;IAC3F,MAAM,CAAC,IAAI;QACjB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,sBAAsB,CAAC,kBAAkB;YAC9C,MAAM,EAAE,GAAkB,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAA2C;QAC5D,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,aAAa;QAClB,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;IAClC,CAAC;;AArBH,wDAsBC"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/base/request-context/registry.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAkB3D,MAAa,sBAAsB;aACjB,uBAAkB,GAAG,0BAA0B,CAAC;IAEhE,mGAAmG;IAC3F,MAAM,CAAC,IAAI;QACjB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,sBAAsB,CAAC,kBAAkB;YAC9C,MAAM,EAAE,GAAkB,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;SACvD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAA2C;QAC5D,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,aAAa;QAClB,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;IAClC,CAAC;;AArBH,wDAsBC","sourcesContent":["import { SingletonRealm } from '@/helpers/singleton-realm';\nimport type { Context } from 'hono';\nimport type { TRequestContextResolver } from './common/types';\n\n/**\n * The seam that keeps `hono/context-storage` out of the kernel and the connectors: that module runs\n * `new AsyncLocalStorage()` in its own body, so importing it is a `TypeError` at load in a browser -\n * not a lazy failure at first use. The server layer installs a resolver over it; a host that\n * installs none resolves to `undefined`.\n *\n * `resolve()` returning `undefined` means NO REQUEST CONTEXT. A context that exists but carries no\n * user is a different state, reported by that context's own variables - callers that collapse the\n * two lose the distinction their error handling is built on.\n */\ninterface IResolverSlot {\n resolver: TRequestContextResolver | undefined;\n}\n\nexport class RequestContextRegistry {\n static readonly SINGLETON_REAL_KEY = 'request-context-resolver';\n\n /** Realm-anchored, so a second copy of this package installs the resolver the first copy reads. */\n private static slot(): IResolverSlot {\n return SingletonRealm.resolve({\n key: RequestContextRegistry.SINGLETON_REAL_KEY,\n create: (): IResolverSlot => ({ resolver: undefined }),\n });\n }\n\n static setResolver(opts: { resolver: TRequestContextResolver }): void {\n this.slot().resolver = opts.resolver;\n }\n\n static clearResolver(): void {\n this.slot().resolver = undefined;\n }\n\n static resolve(): Context | undefined {\n return this.slot().resolver?.();\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/base/services/base.ts"],"names":[],"mappings":";;;AAAA,sDAAyD;AAGzD,MAAsB,WAAY,SAAQ,iBAAU;IAClD,YAAY,IAA4C;QACtD,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;CACF;AAJD,kCAIC"}
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/base/services/base.ts"],"names":[],"mappings":";;;AAAA,sDAAyD;AAGzD,MAAsB,WAAY,SAAQ,iBAAU;IAClD,YAAY,IAA4C;QACtD,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;CACF;AAJD,kCAIC","sourcesContent":["import { BaseHelper } from '@venizia/ignis-helpers/core';\nimport type { IService } from './common';\n\nexport abstract class BaseService extends BaseHelper implements IService {\n constructor(opts: { scope: string; identifier?: string }) {\n super(opts);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/services/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/base/services/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB","sourcesContent":["export * from './types';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/base/services/common/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/base/services/common/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface IService {}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,2CAAyB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/base/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,2CAAyB","sourcesContent":["export * from './base';\nexport * from './common';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../../src/common/bindings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../../src/common/bindings.ts"],"names":[],"mappings":"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","sourcesContent":["import { ArtifactTypes, BindingKeys } from '@/helpers/inversion';\nimport type { TConstValue } from '@venizia/ignis-helpers/common';\nimport { getError } from '@venizia/ignis-helpers/core';\n\nexport type TBindingNamespace = TConstValue<typeof BindingNamespaces>;\n\n/** Static binding namespaces for dependency injection. */\nexport class BindingNamespaces {\n // Declared first: every constant below runs through createNamespace while this class initializes.\n private static readonly NAME_PATTERN = /^[^.\\s]+$/;\n\n static readonly COMPONENT = BindingNamespaces.createNamespace({ name: 'components' });\n\n static readonly DATASOURCE = BindingNamespaces.createNamespace({ name: 'datasources' });\n static readonly REPOSITORY = BindingNamespaces.createNamespace({ name: 'repositories' });\n static readonly MODEL = BindingNamespaces.createNamespace({ name: 'models' });\n\n static readonly SERVICE = BindingNamespaces.createNamespace({ name: 'services' });\n static readonly MIDDLEWARE = BindingNamespaces.createNamespace({ name: 'middlewares' });\n static readonly PROVIDER = BindingNamespaces.createNamespace({ name: 'providers' });\n static readonly CONTROLLER = BindingNamespaces.createNamespace({ name: 'controllers' });\n\n static readonly CONFIGURATION = BindingNamespaces.createNamespace({ name: 'configurations' });\n\n /**\n * A namespace is the leading segment of a binding key, and a binding is tagged with that segment\n * alone - a name carrying '.' or whitespace yields a key no boot step can drain by tag.\n */\n static isValid(opts: { name: string }): boolean {\n const { name } = opts;\n return typeof name === 'string' && BindingNamespaces.NAME_PATTERN.test(name);\n }\n\n static createNamespace(opts: { name: string }) {\n const { name } = opts;\n\n if (!BindingNamespaces.isValid({ name })) {\n throw getError({\n message: `[BindingNamespaces][createNamespace] Invalid namespace | Expected a single non-empty segment without '.' or whitespace | Got: '${name}'`,\n });\n }\n\n return name;\n }\n\n /** A namespace-less key is untagged: no boot step drains it and `doVerify` never sees it. */\n static assertArtifactNamespace(opts: { namespace: string; artifact: string; caller: string }) {\n const { namespace, artifact, caller } = opts;\n\n if (BindingNamespaces.isValid({ name: namespace })) {\n return namespace;\n }\n\n throw getError({\n message: `[${caller}] '${artifact}' declares a binding with no usable namespace | namespace: '${namespace}' | A key with no leading namespace segment carries no tag, so no boot step drains it and 'bootChecks.binding.doVerify' never sees it`,\n });\n }\n}\n\n/** Artifact kind -> namespace. `registerArtifact` gets its namespace from the call site; `@injectable` has only the class. */\nexport class ArtifactNamespaces {\n private static readonly BY_TYPE: Record<string, TBindingNamespace> = {\n [ArtifactTypes.CONFIGURATION]: BindingNamespaces.CONFIGURATION,\n [ArtifactTypes.COMPONENT]: BindingNamespaces.COMPONENT,\n [ArtifactTypes.CONTROLLER]: BindingNamespaces.CONTROLLER,\n [ArtifactTypes.SERVICE]: BindingNamespaces.SERVICE,\n [ArtifactTypes.REPOSITORY]: BindingNamespaces.REPOSITORY,\n [ArtifactTypes.DATASOURCE]: BindingNamespaces.DATASOURCE,\n [ArtifactTypes.MODEL]: BindingNamespaces.MODEL,\n };\n\n static resolve(opts: { type: string }): TBindingNamespace {\n const namespace = ArtifactNamespaces.BY_TYPE[opts.type];\n\n if (namespace === undefined) {\n throw getError({\n message: `[ArtifactNamespaces][resolve] No namespace for artifact type | type: '${opts.type}' | known: ${Object.keys(ArtifactNamespaces.BY_TYPE).join(', ')}`,\n });\n }\n\n return namespace;\n }\n}\n\n/** Core binding keys for fundamental application components and configuration. */\nexport class CoreBindings extends BindingKeys {\n static readonly APPLICATION_INSTANCE = '@app/instance';\n static readonly APPLICATION_SERVER = '@app/server';\n static readonly APPLICATION_CONFIG = '@app/config';\n static readonly APPLICATION_PROJECT_ROOT = '@app/project_root';\n\n static readonly APPLICATION_ROOT_ROUTER = '@app/router/root';\n\n static readonly APPLICATION_ENVIRONMENTS = '@app/environments';\n static readonly APPLICATION_MIDDLEWARE_OPTIONS = '@app/middleware_options';\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../../src/common/error-codes.ts"],"names":[],"mappings":";;;AACA,sDAA0D;AAE1D,kSAAkS;AAClS,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAU,EAAE;IAC7C,OAAO,kBAAW,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,oFAAoF;AACpF,MAAa,cAAc;aACT,kBAAa,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;aACjD,sBAAiB,GAAG,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;;AAFtE,wCAGC;AAID,qGAAqG;AACrG,MAAa,gBAAgB;aACX,cAAS,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC;aAC1D,mBAAc,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;aACpE,iBAAY,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;aAChE,2BAAsB,GAAG,KAAK,CAAC;QAC7C,MAAM;QACN,eAAe;QACf,wBAAwB;KACzB,CAAC,CAAC;;AARL,4CASC"}
|
|
1
|
+
{"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../../src/common/error-codes.ts"],"names":[],"mappings":";;;AACA,sDAA0D;AAE1D,kSAAkS;AAClS,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAU,EAAE;IAC7C,OAAO,kBAAW,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,oFAAoF;AACpF,MAAa,cAAc;aACT,kBAAa,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;aACjD,sBAAiB,GAAG,KAAK,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;;AAFtE,wCAGC;AAID,qGAAqG;AACrG,MAAa,gBAAgB;aACX,cAAS,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC;aAC1D,mBAAc,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;aACpE,iBAAY,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;aAChE,2BAAsB,GAAG,KAAK,CAAC;QAC7C,MAAM;QACN,eAAe;QACf,wBAAwB;KACzB,CAAC,CAAC;;AARL,4CASC","sourcesContent":["import type { TConstValue } from '@venizia/ignis-helpers/common';\nimport { MessageCode } from '@venizia/ignis-helpers/core';\n\n/** Every machine-readable code the framework raises - clients branch on the code, so these strings ARE a public contract. Built via {@link MessageCode.build}, which rejects a malformed code at import time; `core.*` and `database.*` belong to IGNIS, applications use their own namespace. */\nconst build = (parts: Array<string>): string => {\n return MessageCode.build({ parts });\n};\n\n/** Framework-level failures that are not specific to one connector or component. */\nexport class CoreErrorCodes {\n static readonly NOT_SUPPORTED = build(['core', 'not_supported']);\n static readonly DATABASE_CONFLICT = build(['database', 'conflict']);\n}\n\nexport type TCoreErrorCode = TConstValue<typeof CoreErrorCodes>;\n\n/** Failures raised by the search connectors (Typesense, Meilisearch) and the neutral search tier. */\nexport class SearchErrorCodes {\n static readonly NOT_FOUND = build(['core', 'search_engine', 'not_found']);\n static readonly ALREADY_EXISTS = build(['core', 'search_engine', 'already_exists']);\n static readonly TASK_TIMEOUT = build(['core', 'search_engine', 'task_timeout']);\n static readonly DEPENDENCY_UNAVAILABLE = build([\n 'core',\n 'search_engine',\n 'dependency_unavailable',\n ]);\n}\n\nexport type TSearchErrorCode = TConstValue<typeof SearchErrorCodes>;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,gDAA8B;AAC9B,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,gDAA8B;AAC9B,6CAA2B","sourcesContent":["export * from './bindings';\nexport * from './error-codes';\nexport * from './statuses';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/common/statuses/common.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/common/statuses/common.ts"],"names":[],"mappings":"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","sourcesContent":["/** Application statuses categorized by lifecycle phase (initial, pending, active, completed, inactive, failed). */\nexport class Statuses {\n // 0xx - Initial\n static readonly UNKNOWN = '000_UNKNOWN';\n static readonly DRAFT = '001_DRAFT';\n\n // 1xx - Pending/Waiting (awaiting action/decision)\n static readonly NEW = '100_NEW';\n static readonly QUEUED = '101_QUEUED';\n static readonly SCHEDULED = '102_SCHEDULED';\n static readonly PENDING = '103_PENDING';\n static readonly IN_REVIEW = '104_IN_REVIEW';\n\n // 2xx - Active/Running (in progress)\n static readonly ENABLED = '200_ENABLED';\n static readonly ACTIVATED = '201_ACTIVATED';\n static readonly RUNNING = '202_RUNNING';\n static readonly PROCESSING = '203_PROCESSING';\n static readonly SENT = '204_SENT';\n static readonly RECEIVED = '205_RECEIVED';\n\n // 3xx - Completed (positive terminal)\n static readonly PARTIAL = '300_PARTIAL';\n static readonly APPROVED = '301_APPROVED';\n static readonly SUCCESS = '302_SUCCESS';\n static readonly COMPLETED = '303_COMPLETED';\n static readonly SETTLED = '304_SETTLED';\n static readonly CONFIRMED = '305_CONFIRMED';\n\n // 4xx - Inactive (negative, reversible)\n static readonly DISABLED = '400_DISABLED';\n static readonly DEACTIVATED = '401_DEACTIVATED';\n static readonly SUSPENDED = '402_SUSPENDED';\n static readonly BLOCKED = '403_BLOCKED';\n static readonly CLOSED = '404_CLOSED';\n static readonly ARCHIVED = '405_ARCHIVED';\n static readonly PAUSED = '406_PAUSED';\n static readonly REVOKED = '407_REVOKED';\n static readonly REFUNDED = '408_REFUNDED';\n\n // 5xx - Failed/Error (negative terminal, final)\n static readonly FAIL = '500_FAIL';\n static readonly EXPIRED = '501_EXPIRED';\n static readonly TIMEOUT = '502_TIMEOUT';\n static readonly SKIPPED = '503_SKIPPED';\n static readonly ABORTED = '504_ABORTED';\n static readonly CANCELLED = '505_CANCELLED';\n static readonly DELETED = '506_DELETED';\n static readonly REJECTED = '507_REJECTED';\n\n static readonly INITIAL_SCHEME_SET = new Set([this.UNKNOWN, this.DRAFT]);\n\n static readonly PENDING_SCHEME_SET = new Set([\n this.NEW,\n this.QUEUED,\n this.SCHEDULED,\n this.PENDING,\n this.IN_REVIEW,\n ]);\n\n static readonly ACTIVE_SCHEME_SET = new Set([\n this.ENABLED,\n this.ACTIVATED,\n this.RUNNING,\n this.PROCESSING,\n this.SENT,\n this.RECEIVED,\n ]);\n\n static readonly COMPLETED_SCHEME_SET = new Set([\n this.COMPLETED,\n this.SUCCESS,\n this.PARTIAL,\n this.SETTLED,\n this.APPROVED,\n this.CONFIRMED,\n ]);\n\n static readonly INACTIVE_SCHEME_SET = new Set([\n this.DISABLED,\n this.DEACTIVATED,\n this.SUSPENDED,\n this.BLOCKED,\n this.CLOSED,\n this.ARCHIVED,\n this.PAUSED,\n this.REVOKED,\n this.REFUNDED,\n ]);\n\n static readonly FAILED_SCHEME_SET = new Set([\n this.FAIL,\n this.EXPIRED,\n this.TIMEOUT,\n this.SKIPPED,\n this.ABORTED,\n this.CANCELLED,\n this.DELETED,\n this.REJECTED,\n ]);\n\n static readonly SCHEME_SET = new Set([\n ...this.INITIAL_SCHEME_SET,\n ...this.PENDING_SCHEME_SET,\n ...this.ACTIVE_SCHEME_SET,\n ...this.COMPLETED_SCHEME_SET,\n ...this.INACTIVE_SCHEME_SET,\n ...this.FAILED_SCHEME_SET,\n ]);\n\n static isInitial(status: string): boolean {\n return this.INITIAL_SCHEME_SET.has(status);\n }\n\n static isPending(status: string): boolean {\n return this.PENDING_SCHEME_SET.has(status);\n }\n\n static isActive(status: string): boolean {\n return this.ACTIVE_SCHEME_SET.has(status);\n }\n\n static isCompleted(status: string): boolean {\n return this.COMPLETED_SCHEME_SET.has(status);\n }\n\n static isInactive(status: string): boolean {\n return this.INACTIVE_SCHEME_SET.has(status);\n }\n\n static isFailed(status: string): boolean {\n return this.FAILED_SCHEME_SET.has(status);\n }\n\n static isValid(status: string): boolean {\n return this.SCHEME_SET.has(status);\n }\n}\n\n/** Common reusable entity statuses. */\nexport class CommonStatuses {\n static readonly UNKNOWN = Statuses.UNKNOWN;\n static readonly ACTIVATED = Statuses.ACTIVATED;\n static readonly DEACTIVATED = Statuses.DEACTIVATED;\n static readonly BLOCKED = Statuses.BLOCKED;\n static readonly ARCHIVED = Statuses.ARCHIVED;\n\n static readonly SCHEME_SET = new Set([\n this.UNKNOWN,\n this.ACTIVATED,\n this.DEACTIVATED,\n this.BLOCKED,\n this.ARCHIVED,\n ]);\n\n static isValid(scheme: string): boolean {\n return this.SCHEME_SET.has(scheme);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/common/statuses/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,yCAAuB;AACvB,yCAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/common/statuses/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,8CAA4B;AAC5B,yCAAuB;AACvB,yCAAuB","sourcesContent":["export * from './common';\nexport * from './migration';\nexport * from './role';\nexport * from './user';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../../src/common/statuses/migration.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AAEpC,mCAAmC;AACnC,MAAa,iBAAiB;aACZ,YAAO,GAAG,iBAAQ,CAAC,OAAO,CAAC;aAC3B,YAAO,GAAG,iBAAQ,CAAC,OAAO,CAAC;aAC3B,SAAI,GAAG,iBAAQ,CAAC,IAAI,CAAC;aAErB,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9E,MAAM,CAAC,OAAO,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;;AATH,8CAUC"}
|
|
1
|
+
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../../src/common/statuses/migration.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AAEpC,mCAAmC;AACnC,MAAa,iBAAiB;aACZ,YAAO,GAAG,iBAAQ,CAAC,OAAO,CAAC;aAC3B,YAAO,GAAG,iBAAQ,CAAC,OAAO,CAAC;aAC3B,SAAI,GAAG,iBAAQ,CAAC,IAAI,CAAC;aAErB,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9E,MAAM,CAAC,OAAO,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;;AATH,8CAUC","sourcesContent":["import { Statuses } from './common';\n\n/** Database migration statuses. */\nexport class MigrationStatuses {\n static readonly UNKNOWN = Statuses.UNKNOWN;\n static readonly SUCCESS = Statuses.SUCCESS;\n static readonly FAIL = Statuses.FAIL;\n\n static readonly SCHEME_SET = new Set([this.UNKNOWN, this.SUCCESS, this.FAIL]);\n\n static isValid(scheme: string): boolean {\n return this.SCHEME_SET.has(scheme);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/common/statuses/role.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,qBAAqB;AACrB,MAAa,YAAa,SAAQ,uBAAc;CAAG;AAAnD,oCAAmD"}
|
|
1
|
+
{"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/common/statuses/role.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,qBAAqB;AACrB,MAAa,YAAa,SAAQ,uBAAc;CAAG;AAAnD,oCAAmD","sourcesContent":["import { CommonStatuses } from './common';\n\n/** Role statuses. */\nexport class RoleStatuses extends CommonStatuses {}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../../src/common/statuses/user.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,qBAAqB;AACrB,MAAa,YAAa,SAAQ,uBAAc;CAAG;AAAnD,oCAAmD;AAEnD,yCAAyC;AACzC,MAAa,SAAS;aACJ,WAAM,GAAG,QAAQ,CAAC;aAClB,WAAM,GAAG,QAAQ,CAAC;aAElB,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjE,MAAM,CAAC,OAAO,CAAC,OAAe;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;;AARH,8BASC"}
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../../src/common/statuses/user.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,qBAAqB;AACrB,MAAa,YAAa,SAAQ,uBAAc;CAAG;AAAnD,oCAAmD;AAEnD,yCAAyC;AACzC,MAAa,SAAS;aACJ,WAAM,GAAG,QAAQ,CAAC;aAClB,WAAM,GAAG,QAAQ,CAAC;aAElB,eAAU,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjE,MAAM,CAAC,OAAO,CAAC,OAAe;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;;AARH,8BASC","sourcesContent":["import { CommonStatuses } from './common';\n\n/** User statuses. */\nexport class UserStatuses extends CommonStatuses {}\n\n/** User types within the application. */\nexport class UserTypes {\n static readonly SYSTEM = 'SYSTEM';\n static readonly LINKED = 'LINKED';\n\n static readonly SCHEME_SET = new Set([this.SYSTEM, this.LINKED]);\n\n static isValid(orgType: string): boolean {\n return this.SCHEME_SET.has(orgType);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B","sourcesContent":["export * from './inversion';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/constants.ts"],"names":[],"mappings":";;;AAAA,iIAAiI;AACjI,MAAa,aAAa;aACR,kBAAa,GAAG,eAAe,CAAC;aAChC,cAAS,GAAG,WAAW,CAAC;aACxB,eAAU,GAAG,YAAY,CAAC;aAC1B,YAAO,GAAG,SAAS,CAAC;aACpB,eAAU,GAAG,YAAY,CAAC;aAC1B,eAAU,GAAG,YAAY,CAAC;aAC1B,UAAK,GAAG,OAAO,CAAC;aAEhB,eAAU,GAAG,IAAI,GAAG,CAAS;QAC3C,IAAI,CAAC,aAAa;QAClB,IAAI,CAAC,SAAS;QACd,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,KAAK;KACX,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AArBH,sCAsBC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/constants.ts"],"names":[],"mappings":";;;AAAA,iIAAiI;AACjI,MAAa,aAAa;aACR,kBAAa,GAAG,eAAe,CAAC;aAChC,cAAS,GAAG,WAAW,CAAC;aACxB,eAAU,GAAG,YAAY,CAAC;aAC1B,YAAO,GAAG,SAAS,CAAC;aACpB,eAAU,GAAG,YAAY,CAAC;aAC1B,eAAU,GAAG,YAAY,CAAC;aAC1B,UAAK,GAAG,OAAO,CAAC;aAEhB,eAAU,GAAG,IAAI,GAAG,CAAS;QAC3C,IAAI,CAAC,aAAa;QAClB,IAAI,CAAC,SAAS;QACd,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,UAAU;QACf,IAAI,CAAC,KAAK;KACX,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;;AArBH,sCAsBC","sourcesContent":["/** What a decorated class is to the application - the one fact the artifact generator and the registration methods both read. */\nexport class ArtifactTypes {\n static readonly CONFIGURATION = 'configuration';\n static readonly COMPONENT = 'component';\n static readonly CONTROLLER = 'controller';\n static readonly SERVICE = 'service';\n static readonly REPOSITORY = 'repository';\n static readonly DATASOURCE = 'datasource';\n static readonly MODEL = 'model';\n\n static readonly SCHEME_SET = new Set<string>([\n this.CONFIGURATION,\n this.COMPONENT,\n this.CONTROLLER,\n this.SERVICE,\n this.REPOSITORY,\n this.DATASOURCE,\n this.MODEL,\n ]);\n\n static isValid(value: string): boolean {\n return this.SCHEME_SET.has(value);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,yCAAuB;AACvB,qDAAmC;AACnC,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,yCAAuB;AACvB,qDAAmC;AACnC,0CAAwB","sourcesContent":["export * from './constants';\nexport * from './keys';\nexport * from './relation-builder';\nexport * from './types';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/keys.ts"],"names":[],"mappings":";;;AAAA,8DAAyE;AAE5D,QAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,8BAAa,EAAE;IAC3D,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1C,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAChE,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAEhE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAE1C,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;CACvC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/keys.ts"],"names":[],"mappings":";;;AAAA,8DAAyE;AAE5D,QAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,8BAAa,EAAE;IAC3D,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1C,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAChE,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAEhE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAE1C,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC;CACvC,CAAC,CAAC","sourcesContent":["import { MetadataKeys as _MetadataKeys } from '@venizia/ignis-inversion';\n\nexport const MetadataKeys = Object.assign({}, _MetadataKeys, {\n CONTROLLER: Symbol.for('ignis:controller'),\n CONTROLLER_REST_ROUTE: Symbol.for('ignis:controller:rest:route'),\n CONTROLLER_GRPC_ROUTE: Symbol.for('ignis:controller:grpc:route'),\n\n MODEL: Symbol.for('ignis:model'),\n DATASOURCE: Symbol.for('ignis:datasource'),\n REPOSITORY: Symbol.for('ignis:repository'),\n\n ARTIFACT: Symbol.for('ignis:artifact'),\n PROVIDES: Symbol.for('ignis:provides'),\n});\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-builder.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/relation-builder.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAiBvD,MAAa,uBAAuB;aAClB,uBAAkB,GAAG,kBAAkB,CAAC;IAExD,uNAAuN;IAC/M,MAAM,CAAC,IAAI;QACjB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,uBAAuB,CAAC,kBAAkB;YAC/C,MAAM,EAAE,GAAiB,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;SACrD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,IAAmC;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;IAC7B,CAAC;;AAjBH,0DAkBC"}
|
|
1
|
+
{"version":3,"file":"relation-builder.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/common/relation-builder.ts"],"names":[],"mappings":";;;AAAA,2DAAuD;AAiBvD,MAAa,uBAAuB;aAClB,uBAAkB,GAAG,kBAAkB,CAAC;IAExD,uNAAuN;IAC/M,MAAM,CAAC,IAAI;QACjB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,uBAAuB,CAAC,kBAAkB;YAC/C,MAAM,EAAE,GAAiB,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;SACrD,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,IAAmC;QAC5C,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;IAC7B,CAAC;;AAjBH,0DAkBC","sourcesContent":["import { SingletonRealm } from '../../singleton-realm';\n\n/** Engine-neutral: the registry is shared across connectors, so each connector narrows at its own call site. */\nexport type TRelationBuilder = (opts: {\n source: unknown;\n relations: unknown;\n}) => { relations?: unknown } | undefined;\n\n/**\n * The relational connector installs itself here from its own module body. The mixin must not import\n * the connector: one value import of `createRelations` drags `drizzle-orm` into every graph that\n * uses `@repository`.\n */\ninterface IBuilderSlot {\n builder: TRelationBuilder | undefined;\n}\n\nexport class RelationBuilderRegistry {\n static readonly SINGLETON_REAL_KEY = 'relation-builder';\n\n /** Realm-anchored like the other cross-package registries: connectors installs into one copy of this package and the `@repository` mixin resolves from the other, which throws \"no relation builder is registered\". */\n private static slot(): IBuilderSlot {\n return SingletonRealm.resolve({\n key: RelationBuilderRegistry.SINGLETON_REAL_KEY,\n create: (): IBuilderSlot => ({ builder: undefined }),\n });\n }\n\n static set(opts: { builder: TRelationBuilder }): void {\n this.slot().builder = opts.builder;\n }\n\n static resolve(): TRelationBuilder | undefined {\n return this.slot().builder;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/artifact.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/artifact.ts"],"names":[],"mappings":"","sourcesContent":["import type { TClass, TConstValue, ValueOrPromise } from '@venizia/ignis-helpers/common';\nimport type { TBindingScope } from '@venizia/ignis-inversion';\nimport { type ArtifactTypes } from '../constants';\n\n/** Decorator target for any constructable class (includes Function for ClassDecorator). */\nexport type TDecoratorTarget<T = unknown> = TClass<T> | Function;\n\nexport type TArtifactType = TConstValue<typeof ArtifactTypes>;\n\n/** Decides at registration time whether the class is registered at all. Sync or async; runs before `preConfigure`, so it may read config and env, never another artifact's binding. */\nexport type TArtifactCondition<ApplicationType = unknown> = (opts: {\n application: ApplicationType;\n}) => ValueOrPromise<boolean>;\n\n/** Registration defaults a class carries for itself; an explicit `TMixinOpts` at the call site still wins. */\nexport interface IArtifactRegistrationOptions<ApplicationType = unknown> {\n binding?: { namespace: string; key: string };\n allowOverride?: boolean;\n scope?: TBindingScope;\n /** Lower registers first within its kind. Default 0; ties keep index order. */\n order?: number;\n when?: TArtifactCondition<ApplicationType>;\n /** Topological ordering for configurations: must run after these configuration classes. */\n after?: ReadonlyArray<TClass<unknown>>;\n}\n\nexport interface IArtifactMetadata<\n ApplicationType = unknown,\n> extends IArtifactRegistrationOptions<ApplicationType> {\n type: TArtifactType;\n}\n\n/** One `@provide` method: the key it binds, and the binding scope of the value (default SINGLETON). */\nexport interface IProvideMetadata {\n methodName: string | symbol;\n key: string;\n scope?: TBindingScope;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/controller.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/controller.ts"],"names":[],"mappings":"","sourcesContent":["import type { TAuthMode, TAuthStrategy } from '@/base/auth/authenticate/common';\nimport type { IAuthorizationSpec } from '@/base/auth/authorize/common/types';\nimport type { ControllerTransports } from '@/base/controllers/common/constants';\nimport type { TGrpcMethod } from '@venizia/ignis-helpers/common';\nimport type { IArtifactRegistrationOptions } from './artifact';\n\ninterface IBaseControllerMetadata extends IArtifactRegistrationOptions {\n path: string;\n tags?: string[];\n description?: string;\n}\n\nexport interface IRestControllerMetadata extends IBaseControllerMetadata {\n transport?: typeof ControllerTransports.REST;\n}\n\nexport interface IGrpcControllerMetadata<ServiceType = unknown> extends IBaseControllerMetadata {\n transport: typeof ControllerTransports.GRPC;\n service: ServiceType;\n}\n\nexport type TControllerMetadata = IRestControllerMetadata | IGrpcControllerMetadata;\n\nexport interface IRpcMetadata {\n /** Proto method name. */\n name: string;\n\n /** RPC method type (unary, server_streaming, etc.). */\n method: TGrpcMethod;\n\n /** Authentication config for this RPC method. */\n authenticate?: { strategies?: TAuthStrategy[]; mode?: TAuthMode };\n\n /** Authorization spec(s) for this RPC method. */\n authorize?: IAuthorizationSpec | IAuthorizationSpec[];\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,+CAA6B;AAC7B,8CAA4B;AAC5B,0CAAwB;AACxB,gDAA8B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,+CAA6B;AAC7B,8CAA4B;AAC5B,0CAAwB;AACxB,gDAA8B","sourcesContent":["export * from './artifact';\nexport * from './controller';\nexport * from './injection';\nexport * from './model';\nexport * from './persistence';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injection.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/injection.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"injection.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/injection.ts"],"names":[],"mappings":"","sourcesContent":["import {\n type IInjectMetadata as _IInjectMetadata,\n type IPropertyMetadata as _IPropertyMetadata,\n} from '@venizia/ignis-inversion';\n\nexport interface IPropertyMetadata extends _IPropertyMetadata {}\n\nexport interface IInjectMetadata extends _IInjectMetadata {}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/model.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/model.ts"],"names":[],"mappings":"","sourcesContent":["import type { AbstractEntity } from '@/base/models';\nimport type {\n ScopeFilters,\n TFilter,\n TScopeFilterMissingBehavior,\n TWhere,\n} from '@/base/repositories';\nimport type { TClass, TNullable, TValueOrResolver } from '@venizia/ignis-helpers/common';\nimport type { IArtifactRegistrationOptions } from './artifact';\n\nexport interface IModelAuthorizeSettings {\n /** The authorization principal name (resource/subject) for this model. */\n principal: string;\n /** Extensible - consumers can add any extra authorization metadata. */\n [extra: string | symbol]: any;\n}\n\n/**\n * Row-scope resolver for `@model` settings.scopeFilter - resolved per query, so it can depend on\n * the current request (tenant, org, membership). Framework-internal escape hatches aside, nothing\n * short of removing this setting from the model turns scoping off.\n */\nexport interface IScopeFilterSettings {\n /**\n * Returns the scope `where`; `ScopeFilters.UNRESTRICTED` to apply no scope for THIS call (an\n * internal operator, a caller the application has decided sees everything); or null/undefined\n * when this caller's scope cannot be determined at all.\n */\n resolve: () => TNullable<TWhere> | typeof ScopeFilters.UNRESTRICTED;\n\n /**\n * What `applyScopeFilter` does when `resolve()` returns null/undefined - no request context, no\n * tenant, a background job. Defaults to `deny`: an unresolved scope matches zero rows, never\n * every row. `allow` is an explicit, reviewed opt-out for migrations and background jobs, declared\n * per MODEL - it cannot express a per-USER bypass; use `ScopeFilters.UNRESTRICTED` for that.\n */\n onMissing?: TScopeFilterMissingBehavior;\n}\n\nexport interface IModelSettings {\n /** Properties excluded from all query results at SQL level. */\n hiddenProperties?: string[];\n\n /** Default filter auto-applied to all repository operations. Bypassable via shouldSkipDefaultFilter. */\n defaultFilter?: TFilter;\n\n /**\n * Row scope: ANDed into every read and write whose scope is expressible as a filter clause, and\n * NOT removable by `shouldSkipDefaultFilter`. Resolved per query, so it can depend on the current\n * request. Ownership resolved per row or through a polymorphic reference is NOT expressible here -\n * that check is still the application's to perform.\n *\n * Relational repositories only - a search-backed model (Typesense, Meilisearch) never reads\n * this setting, so mirroring a scoped entity into a search index needs its own query-time scope.\n */\n scopeFilter?: IScopeFilterSettings;\n\n /** Default row limit when a query omits `limit`. Must be a positive integer. Falls back to DEFAULT_LIMIT (10). */\n defaultLimit?: number;\n\n /**\n * Largest `limit` a CALLER may ask for. Must be a positive integer. Falls back to\n * DEFAULT_MAX_LIMIT (1000).\n *\n * Policy, not capacity - the engine's own ceiling sits far above it. The number is chosen so\n * that reaching it means the caller is doing something unusual, and raising it is how a model\n * says so deliberately.\n */\n maxLimit?: number;\n\n /** Authorization settings for this model (principal name, etc.). */\n authorize?: IModelAuthorizeSettings;\n}\n\nexport interface IModelMetadata extends IArtifactRegistrationOptions {\n type: 'entity' | 'view';\n tableName?: string;\n skipMigrate?: boolean;\n settings?: IModelSettings;\n}\n\nexport interface IEntityStatics {\n schema?: unknown;\n relations?: TValueOrResolver<Array<unknown>>;\n}\n\nexport type TModelClass<Model extends AbstractEntity = AbstractEntity> = TClass<Model> &\n IEntityStatics;\n\n/** Decorator target for model classes (supports both strongly typed and ClassDecorator patterns). */\nexport type TDecoratorModelTarget<Model extends AbstractEntity = AbstractEntity> =\n | TModelClass<Model>\n | (Function & IEntityStatics);\n\nexport interface IModelRegistryEntry<Model extends AbstractEntity = AbstractEntity> {\n target: TValueOrResolver<TClass<Model>>;\n metadata: IModelMetadata;\n schema: unknown;\n\n /** Lazy resolver to avoid circular deps. Resolved when DataSource builds schema. */\n relationsResolver?: TValueOrResolver<Array<unknown>>;\n\n /** Cache populated on first buildSchema() call. */\n _builtRelations?: unknown;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/persistence.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/common/types/persistence.ts"],"names":[],"mappings":"","sourcesContent":["import type { IDataSource, TDataSourceDriverClass } from '@/base/datasources';\nimport type { AbstractEntity } from '@/base/models';\nimport type {\n IRepository,\n RepositoryTypes,\n TRepositoryOperationScope,\n TRepositoryType,\n} from '@/base/repositories';\nimport type { TClass, TValueOrResolver } from '@venizia/ignis-helpers/common';\nimport type { IArtifactRegistrationOptions, TDecoratorTarget } from './artifact';\n\nexport interface IDataSourceMetadata extends IArtifactRegistrationOptions {\n driver?: TDataSourceDriverClass;\n autoDiscovery?: boolean;\n}\n\n/** Members every repository type shares. */\nexport interface IRepositoryMetadataBase<\n DataSource extends IDataSource = IDataSource,\n> extends IArtifactRegistrationOptions {\n dataSource: string | TValueOrResolver<TClass<DataSource>>;\n operationScope?: TRepositoryOperationScope;\n}\n\n/** `RepositoryTypes.MODEL` - the default when `type` is omitted - a model this application declares. */\nexport interface IRepositoryMetadata<\n Model extends AbstractEntity = AbstractEntity,\n DataSource extends IDataSource = IDataSource,\n> extends IRepositoryMetadataBase<DataSource> {\n type?: typeof RepositoryTypes.MODEL;\n model: TValueOrResolver<TClass<Model>>;\n}\n\n/** `RepositoryTypes.REMOTE` - data behind another service's API: a datasource and no model. */\nexport interface IRemoteRepositoryMetadata<\n DataSource extends IDataSource = IDataSource,\n> extends IRepositoryMetadataBase<DataSource> {\n type: typeof RepositoryTypes.REMOTE;\n model?: never;\n}\n\n/** What `@repository` accepts, discriminated on `type`. */\nexport type TRepositoryMetadata<\n Model extends AbstractEntity = AbstractEntity,\n DataSource extends IDataSource = IDataSource,\n> = IRepositoryMetadata<Model, DataSource> | IRemoteRepositoryMetadata<DataSource>;\n\n/** Resolved repository metadata after lazy evaluation. */\nexport interface IResolvedRepositoryMetadata<\n Model extends AbstractEntity = AbstractEntity,\n DataSource extends IDataSource = IDataSource,\n> {\n type?: TRepositoryType;\n model?: TClass<Model>;\n dataSource?: string | TClass<DataSource>;\n operationScope?: TRepositoryOperationScope;\n}\n\nexport interface IRepositoryBinding<\n Model extends AbstractEntity = AbstractEntity,\n DataSource extends IDataSource = IDataSource,\n> {\n model: TValueOrResolver<TClass<Model>>;\n repository: TValueOrResolver<TDecoratorTarget<IRepository>>;\n dataSource: TValueOrResolver<string | TDecoratorTarget<DataSource>>;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/container.ts"],"names":[],"mappings":";;;AACA,sDAAyD;AAEzD,8DAAoE;AACpE,yCAA8C;AAE9C,MAAa,SAAU,SAAQ,2BAAW;IAGxC,qYAAqY;IACrY,YAAY,IAAwB;QAClC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IACrF,CAAC;IAEQ,mBAAmB;QAC1B,OAAO,2BAAgB,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;CACF;AAZD,8BAYC"}
|
|
1
|
+
{"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/container.ts"],"names":[],"mappings":";;;AACA,sDAAyD;AAEzD,8DAAoE;AACpE,yCAA8C;AAE9C,MAAa,SAAU,SAAQ,2BAAW;IAGxC,qYAAqY;IACrY,YAAY,IAAwB;QAClC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAU,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IACrF,CAAC;IAEQ,mBAAmB;QAC1B,OAAO,2BAAgB,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;CACF;AAZD,8BAYC","sourcesContent":["import type { ILogger } from '@venizia/ignis-helpers/core';\nimport { BaseHelper } from '@venizia/ignis-helpers/core';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { Container as DIContainer } from '@venizia/ignis-inversion';\nimport { MetadataRegistry } from './registry';\n\nexport class Container extends DIContainer {\n logger: ILogger;\n\n /** Resolved through `BaseHelper`/`LoggerResolver`, never `LoggerFactory` directly - the resolver's console fallback is what keeps this constructor (and everything that extends it) browser-pure. A server host still gets the real provider: importing `LoggerFactory` as a value anywhere in the process (core's own `helpers/base-helper.ts` already does) installs it as the active resolver. */\n constructor(opts?: { scope: string }) {\n super({ scope: opts?.scope ?? Container.name });\n this.logger = new BaseHelper({ scope: opts?.scope ?? Container.name }).getLogger();\n }\n\n override getMetadataRegistry(): _MetadataRegistry {\n return MetadataRegistry.getInstance();\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mEAAmE;AACnE,4DAckC;AAbhC,0GAAA,OAAO,OAAA;AACP,8GAAA,WAAW,OAAA;AACX,gHAAA,aAAa,OAAA;AACb,oHAAA,iBAAiB,OAAA;AACjB,0GAAA,OAAO,OAAA;AACP,kHAAA,eAAe,OAAA;AACf,sHAAA,mBAAmB,OAAA;AASrB,2CAAyB;AACzB,8CAA4B;AAC5B,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mEAAmE;AACnE,4DAckC;AAbhC,0GAAA,OAAO,OAAA;AACP,8GAAA,WAAW,OAAA;AACX,gHAAA,aAAa,OAAA;AACb,oHAAA,iBAAiB,OAAA;AACjB,0GAAA,OAAO,OAAA;AACP,kHAAA,eAAe,OAAA;AACf,sHAAA,mBAAmB,OAAA;AASrB,2CAAyB;AACzB,8CAA4B;AAC5B,6CAA2B","sourcesContent":["// DI-specific symbols only available in inversion (not in helpers)\nexport {\n Binding,\n BindingKeys,\n BindingScopes,\n BindingValueTypes,\n isClass,\n isClassProvider,\n resolveInjectTarget,\n type IProvider,\n type TBindingKey,\n type TBindingScope,\n type TBindingValueType,\n type IBindingTag,\n type TInjectTarget,\n} from '@venizia/ignis-inversion';\n\nexport * from './common';\nexport * from './container';\nexport * from './registry';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/artifact.mixin.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAGvC,MAAM,qBAAqB,GAAG,CACnC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAAvB;;YACL,mNAAmN;YACnN,wBAAmB,GAAa,EAAE,CAAC;QA8CrC,CAAC;QA5CC,qBAAqB,CAAiC,IAAwB;YAC5E,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,sBAAsB;YACpB,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,4GAA4G;QAC5G,wBAAwB;YACtB,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAChC,CAAC;QAED,mBAAmB,CAA4D,IAG9E;YACC,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5E,CAAC;QAED,gFAAgF;QAChF,mBAAmB,CAAiC,IAEnD;YACC,OAAO,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,CAAC;QAED,kBAAkB,CAAiC,IAGlD;YACC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1F,CAAC;QAED,kBAAkB,CAAiC,IAElD;YACC,OAAO,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC1E,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AApDW,QAAA,qBAAqB,yBAoDhC"}
|
|
1
|
+
{"version":3,"file":"artifact.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/artifact.mixin.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAGvC,MAAM,qBAAqB,GAAG,CACnC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAAvB;;YACL,mNAAmN;YACnN,wBAAmB,GAAa,EAAE,CAAC;QA8CrC,CAAC;QA5CC,qBAAqB,CAAiC,IAAwB;YAC5E,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;QAED,sBAAsB;YACpB,OAAO,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QAED,4GAA4G;QAC5G,wBAAwB;YACtB,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAChC,CAAC;QAED,mBAAmB,CAA4D,IAG9E;YACC,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5E,CAAC;QAED,gFAAgF;QAChF,mBAAmB,CAAiC,IAEnD;YACC,OAAO,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpE,CAAC;QAED,kBAAkB,CAAiC,IAGlD;YACC,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACjE,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1F,CAAC;QAED,kBAAkB,CAAiC,IAElD;YACC,OAAO,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC1E,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AApDW,QAAA,qBAAqB,yBAoDhC","sourcesContent":["import type { TMixinTarget } from '@venizia/ignis-helpers/common';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../common/keys';\nimport type { IArtifactMetadata, IProvideMetadata } from '../common/types';\n\nexport const ArtifactMetadataMixin = <BaseClass extends TMixinTarget<_MetadataRegistry>>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n /** Every class a stereotype decorated, in decoration order - which is import order, and is identical in a bundle. Discovery reads this; registration order still comes from `order` and the configuration sort. */\n discoveredArtifacts: object[] = [];\n\n addDiscoveredArtifact<Target extends object = object>(opts: { target: Target }): void {\n if (this.discoveredArtifacts.includes(opts.target)) {\n return;\n }\n\n this.discoveredArtifacts.push(opts.target);\n }\n\n getDiscoveredArtifacts(): ReadonlyArray<object> {\n return [...this.discoveredArtifacts];\n }\n\n /** Tests only: the list is process-wide and a suite that decorates classes would leak into the next one. */\n clearDiscoveredArtifacts(): void {\n this.discoveredArtifacts = [];\n }\n\n setArtifactMetadata<Target extends object = object, ApplicationType = unknown>(opts: {\n target: Target;\n metadata: IArtifactMetadata<ApplicationType>;\n }): void {\n Reflect.defineMetadata(MetadataKeys.ARTIFACT, opts.metadata, opts.target);\n }\n\n // Own metadata only: a subclass of a decorated class is not itself an artifact.\n getArtifactMetadata<Target extends object = object>(opts: {\n target: Target;\n }): IArtifactMetadata | undefined {\n return Reflect.getOwnMetadata(MetadataKeys.ARTIFACT, opts.target);\n }\n\n addProvideMetadata<Target extends object = object>(opts: {\n target: Target;\n metadata: IProvideMetadata;\n }): void {\n const current = this.getProvideMetadata({ target: opts.target });\n Reflect.defineMetadata(MetadataKeys.PROVIDES, [...current, opts.metadata], opts.target);\n }\n\n getProvideMetadata<Target extends object = object>(opts: {\n target: Target;\n }): IProvideMetadata[] {\n return Reflect.getOwnMetadata(MetadataKeys.PROVIDES, opts.target) ?? [];\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/controller.ts"],"names":[],"mappings":";;;AAAA,mEAA2E;AAG3E,4CAAiD;AAO1C,MAAM,uBAAuB,GAAG,CACrC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,qBAAqB,CAAiC,IAGrD;YACC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;YAC9D,OAAO,CAAC,cAAc,CACpB,mBAAY,CAAC,UAAU,EACvB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,EACrC,MAAM,CACP,CAAC;QACJ,CAAC;QAED,qBAAqB,CAAiC,IAErD;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;QAED,yBAAyB,CAAiC,IAEzD;YACC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,SAAS,KAAK,gCAAoB,CAAC,IAAI,EAAE,CAAC;gBAClE,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,QAAmC,CAAC;QAC7C,CAAC;QAED,yBAAyB,CAAiC,IAEzD;YACC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,QAAQ,EAAE,SAAS,KAAK,gCAAoB,CAAC,IAAI,EAAE,CAAC;gBACtD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,QAAmC,CAAC;QAC7C,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA5CW,QAAA,uBAAuB,2BA4ClC"}
|
|
1
|
+
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/controller.ts"],"names":[],"mappings":";;;AAAA,mEAA2E;AAG3E,4CAAiD;AAO1C,MAAM,uBAAuB,GAAG,CACrC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,qBAAqB,CAAiC,IAGrD;YACC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;YAC9D,OAAO,CAAC,cAAc,CACpB,mBAAY,CAAC,UAAU,EACvB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,EACrC,MAAM,CACP,CAAC;QACJ,CAAC;QAED,qBAAqB,CAAiC,IAErD;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;QAED,yBAAyB,CAAiC,IAEzD;YACC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,SAAS,KAAK,gCAAoB,CAAC,IAAI,EAAE,CAAC;gBAClE,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,QAAmC,CAAC;QAC7C,CAAC;QAED,yBAAyB,CAAiC,IAEzD;YACC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,QAAQ,EAAE,SAAS,KAAK,gCAAoB,CAAC,IAAI,EAAE,CAAC;gBACtD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,QAAmC,CAAC;QAC7C,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA5CW,QAAA,uBAAuB,2BA4ClC","sourcesContent":["import { ControllerTransports } from '@/base/controllers/common/constants';\nimport type { TMixinTarget } from '@venizia/ignis-helpers/common';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../../common/keys';\nimport type {\n IGrpcControllerMetadata,\n IRestControllerMetadata,\n TControllerMetadata,\n} from '../../common/types';\n\nexport const ControllerMetadataMixin = <BaseClass extends TMixinTarget<_MetadataRegistry>>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n setControllerMetadata<Target extends object = object>(opts: {\n target: Target;\n metadata: TControllerMetadata;\n }): void {\n const { target, metadata } = opts;\n const existing = this.getControllerMetadata({ target }) ?? {};\n Reflect.defineMetadata(\n MetadataKeys.CONTROLLER,\n Object.assign({}, existing, metadata),\n target,\n );\n }\n\n getControllerMetadata<Target extends object = object>(opts: {\n target: Target;\n }): TControllerMetadata | undefined {\n const { target } = opts;\n return Reflect.getMetadata(MetadataKeys.CONTROLLER, target);\n }\n\n getRestControllerMetadata<Target extends object = object>(opts: {\n target: Target;\n }): IRestControllerMetadata | undefined {\n const metadata = this.getControllerMetadata(opts);\n if (!metadata || metadata.transport === ControllerTransports.GRPC) {\n return undefined;\n }\n return metadata as IRestControllerMetadata;\n }\n\n getGrpcControllerMetadata<Target extends object = object>(opts: {\n target: Target;\n }): IGrpcControllerMetadata | undefined {\n const metadata = this.getControllerMetadata(opts);\n if (metadata?.transport !== ControllerTransports.GRPC) {\n return undefined;\n }\n return metadata as IGrpcControllerMetadata;\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpc.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/grpc.ts"],"names":[],"mappings":";;;AAEA,4CAAiD;AAG1C,MAAM,2BAA2B,GAAG,CACzC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,MAAM,CAAiC,IAItC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAE7C,sLAAsL;YACtL,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GACR,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAClE,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAE3B,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9B,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,CAAiC,IAEvC;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,CAAiC,IAGtC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACtC,OAAO,IAAI,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CAAiC,IAAwB;YAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA1CW,QAAA,2BAA2B,+BA0CtC"}
|
|
1
|
+
{"version":3,"file":"grpc.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/grpc.ts"],"names":[],"mappings":";;;AAEA,4CAAiD;AAG1C,MAAM,2BAA2B,GAAG,CACzC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,MAAM,CAAiC,IAItC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAE7C,sLAAsL;YACtL,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GACR,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAClE,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAE3B,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9B,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,CAAiC,IAEvC;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,CAAiC,IAGtC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YACtC,OAAO,IAAI,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CAAiC,IAAwB;YAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA1CW,QAAA,2BAA2B,+BA0CtC","sourcesContent":["import type { TMixinTarget } from '@venizia/ignis-helpers/common';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../../common/keys';\nimport type { IRpcMetadata } from '../../common/types';\n\nexport const GrpcControllerMetadataMixin = <BaseClass extends TMixinTarget<_MetadataRegistry>>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n addRpc<Target extends object = object>(opts: {\n target: Target;\n methodName: string | symbol;\n configs: IRpcMetadata;\n }): void {\n const { target, methodName, configs } = opts;\n\n // Copy-on-write, same reason as RestControllerMetadataMixin.addRoute: getRpcs() walks the prototype chain, so mutating the Map it returns would leak a subclass's rpcs onto its base.\n const inherited = this.getRpcs({ target });\n const rpcs: Map<string | symbol, IRpcMetadata> =\n Reflect.getOwnMetadata(MetadataKeys.CONTROLLER_GRPC_ROUTE, target) ??\n new Map(inherited ?? []);\n\n rpcs.set(methodName, configs);\n Reflect.defineMetadata(MetadataKeys.CONTROLLER_GRPC_ROUTE, rpcs, target);\n }\n\n getRpcs<Target extends object = object>(opts: {\n target: Target;\n }): Map<string | symbol, IRpcMetadata> | undefined {\n const { target } = opts;\n return Reflect.getMetadata(MetadataKeys.CONTROLLER_GRPC_ROUTE, target);\n }\n\n getRpc<Target extends object = object>(opts: {\n target: Target;\n methodName: string | symbol;\n }): IRpcMetadata | undefined {\n const { target, methodName } = opts;\n const rpcs = this.getRpcs({ target });\n return rpcs?.get(methodName);\n }\n\n hasRpcs<Target extends object = object>(opts: { target: Target }): boolean {\n const rpcs = this.getRpcs(opts);\n return rpcs !== undefined && rpcs.size > 0;\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB","sourcesContent":["export * from './controller';\nexport * from './grpc';\nexport * from './rest';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/rest.ts"],"names":[],"mappings":";;;AAGA,4CAAiD;AAE1C,MAAM,2BAA2B,GAAG,CACzC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,SAAS,CAAiC,IAEzC;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzE,CAAC;QAED,QAAQ,CAAiC,IAGxC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC;QAED,SAAS,CAAiC,IAAwB;YAChE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QACjD,CAAC;QAED,QAAQ,CAAiC,IAIxC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAE7C,+NAA+N;YAC/N,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7C,MAAM,MAAM,GACV,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAClE,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAE3B,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAEhC,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7E,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA3CW,QAAA,2BAA2B,+BA2CtC"}
|
|
1
|
+
{"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../../../src/helpers/inversion/mixins/controllers/rest.ts"],"names":[],"mappings":";;;AAGA,4CAAiD;AAE1C,MAAM,2BAA2B,GAAG,CACzC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,SAAS,CAAiC,IAEzC;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzE,CAAC;QAED,QAAQ,CAAiC,IAGxC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC;QAED,SAAS,CAAiC,IAAwB;YAChE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QACjD,CAAC;QAED,QAAQ,CAAiC,IAIxC;YACC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAE7C,+NAA+N;YAC/N,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7C,MAAM,MAAM,GACV,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC;gBAClE,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAE3B,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAEhC,OAAO,CAAC,cAAc,CAAC,mBAAY,CAAC,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7E,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA3CW,QAAA,2BAA2B,+BA2CtC","sourcesContent":["import type { IAuthRouteConfig } from '@/base/controllers/common/types';\nimport type { TMixinTarget } from '@venizia/ignis-helpers/common';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../../common/keys';\n\nexport const RestControllerMetadataMixin = <BaseClass extends TMixinTarget<_MetadataRegistry>>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n getRoutes<Target extends object = object>(opts: {\n target: Target;\n }): Map<string | symbol, IAuthRouteConfig> | undefined {\n const { target } = opts;\n return Reflect.getMetadata(MetadataKeys.CONTROLLER_REST_ROUTE, target);\n }\n\n getRoute<Target extends object = object>(opts: {\n target: Target;\n methodName: string | symbol;\n }): IAuthRouteConfig | undefined {\n const { target, methodName } = opts;\n const routes = this.getRoutes({ target });\n return routes?.get(methodName);\n }\n\n hasRoutes<Target extends object = object>(opts: { target: Target }): boolean {\n const routes = this.getRoutes(opts);\n return routes !== undefined && routes.size > 0;\n }\n\n addRoute<Target extends object = object>(opts: {\n target: Target;\n methodName: string | symbol;\n configs: IAuthRouteConfig;\n }): void {\n const { target, methodName, configs } = opts;\n\n // Copy-on-write: getRoutes() walks the prototype chain, so a subclass would otherwise mutate the Map its base owns, leaking its routes onto the base and every sibling. Inherited routes stay visible - copied in, base first.\n const inherited = this.getRoutes({ target });\n const routes: Map<string | symbol, IAuthRouteConfig> =\n Reflect.getOwnMetadata(MetadataKeys.CONTROLLER_REST_ROUTE, target) ??\n new Map(inherited ?? []);\n\n routes.set(methodName, configs);\n\n Reflect.defineMetadata(MetadataKeys.CONTROLLER_REST_ROUTE, routes, target);\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datasource.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/datasource.mixin.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAGvC,MAAM,uBAAuB,GAAG,CACrC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,qBAAqB,CAAiC,IAGrD;YACC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAElC,OAAO,CAAC,cAAc,CACpB,mBAAY,CAAC,UAAU,EACvB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,QAAQ,CAAC,EACpD,MAAM,CACP,CAAC;QACJ,CAAC;QAED,qBAAqB,CAAiC,IAErD;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAxBW,QAAA,uBAAuB,2BAwBlC"}
|
|
1
|
+
{"version":3,"file":"datasource.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/datasource.mixin.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAGvC,MAAM,uBAAuB,GAAG,CACrC,SAAoB,EACpB,EAAE;IACF,OAAO,KAAM,SAAQ,SAAS;QAC5B,qBAAqB,CAAiC,IAGrD;YACC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAElC,OAAO,CAAC,cAAc,CACpB,mBAAY,CAAC,UAAU,EACvB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,QAAQ,CAAC,EACpD,MAAM,CACP,CAAC;QACJ,CAAC;QAED,qBAAqB,CAAiC,IAErD;YACC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC,mBAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAxBW,QAAA,uBAAuB,2BAwBlC","sourcesContent":["import type { TMixinTarget } from '@venizia/ignis-helpers/common';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../common/keys';\nimport type { IDataSourceMetadata } from '../common/types';\n\nexport const DatasourceMetadataMixin = <BaseClass extends TMixinTarget<_MetadataRegistry>>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n setDataSourceMetadata<Target extends object = object>(opts: {\n target: Target;\n metadata?: IDataSourceMetadata;\n }): void {\n const { target, metadata } = opts;\n\n Reflect.defineMetadata(\n MetadataKeys.DATASOURCE,\n Object.assign({}, { autoDiscovery: true }, metadata),\n target,\n );\n }\n\n getDataSourceMetadata<Target extends object = object>(opts: {\n target: Target;\n }): IDataSourceMetadata | undefined {\n const { target } = opts;\n return Reflect.getMetadata(MetadataKeys.DATASOURCE, target);\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,gDAA8B;AAC9B,qDAAmC;AACnC,gDAA8B;AAC9B,qDAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,gDAA8B;AAC9B,qDAAmC;AACnC,gDAA8B;AAC9B,qDAAmC","sourcesContent":["export * from './artifact.mixin';\nexport * from './controllers';\nexport * from './datasource.mixin';\nexport * from './model.mixin';\nexport * from './repository.mixin';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/model.mixin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/model.mixin.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AbstractEntity } from '@/base/models';\nimport type { TMixinTarget } from '@venizia/ignis-helpers/common';\nimport { getError } from '@venizia/ignis-helpers/core';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../common/keys';\nimport type {\n IModelAuthorizeSettings,\n IModelMetadata,\n IModelRegistryEntry,\n TDecoratorModelTarget,\n TModelClass,\n} from '../common/types';\n\n/** Registered models that declare an authorize setting, in registry order. */\nconst collectAuthorizeEntries = (opts: {\n modelRegistry: Map<string, IModelRegistryEntry>;\n}): Array<{ name: string; authorize: IModelAuthorizeSettings; entry: IModelRegistryEntry }> => {\n const result: Array<{\n name: string;\n authorize: IModelAuthorizeSettings;\n entry: IModelRegistryEntry;\n }> = [];\n\n for (const [name, entry] of opts.modelRegistry) {\n const authorize = entry.metadata.settings?.authorize;\n if (!authorize) {\n continue;\n }\n\n result.push({ name, authorize, entry });\n }\n\n return result;\n};\n\n/** Registered models that declare an authorize principal, in registry order. */\nconst collectAuthorizePrincipals = (opts: {\n modelRegistry: Map<string, IModelRegistryEntry>;\n}): Array<{ name: string; principal: string }> => {\n const result: Array<{ name: string; principal: string }> = [];\n\n for (const [name, entry] of opts.modelRegistry) {\n const principal = entry.metadata.settings?.authorize?.principal;\n if (!principal) {\n continue;\n }\n\n result.push({ name, principal });\n }\n\n return result;\n};\n\nexport const ModelMetadataMixin = <BaseClass extends TMixinTarget<_MetadataRegistry>>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n modelRegistry: Map<string, IModelRegistryEntry>;\n modelsBySchema: WeakMap<object, IModelRegistryEntry>;\n\n setModelMetadata<Target extends object = object>(opts: {\n target: Target;\n metadata: IModelMetadata;\n }): void {\n const { target, metadata } = opts;\n Reflect.defineMetadata(MetadataKeys.MODEL, metadata, target);\n }\n\n getModelMetadata<Target extends object = object>(opts: {\n target: Target;\n }): IModelMetadata | undefined {\n const { target } = opts;\n return Reflect.getMetadata(MetadataKeys.MODEL, target);\n }\n\n /** Registers a model (called by @model) - relations are stored as a resolver, not resolved immediately, so circular references between models resolve lazily in buildSchema(). */\n registerModel<Model extends AbstractEntity = AbstractEntity>(opts: {\n target: TDecoratorModelTarget<Model>;\n metadata: IModelMetadata;\n }) {\n const { target, metadata } = opts;\n\n // Decorator target is always a class constructor at runtime\n const modelClass = target as TModelClass<Model>;\n\n // Table name precedence: explicit metadata > static TABLE_NAME > class name. TABLE_NAME is deliberately outside IEntityStatics (not part of the neutral contract) but still honored here via a local cast.\n const tableName =\n [metadata.tableName, (modelClass as { TABLE_NAME?: string }).TABLE_NAME].find(Boolean) ??\n modelClass.name;\n\n // Resolver, not resolved value - executed lazily in buildSchema() once all models are loaded\n const relationsResolver = modelClass.relations;\n\n const entry: IModelRegistryEntry = {\n target: modelClass,\n metadata,\n schema: modelClass.schema,\n relationsResolver,\n };\n this.modelRegistry.set(tableName, entry);\n\n const { schema } = modelClass;\n if (schema && typeof schema === 'object') {\n const claimed = this.modelsBySchema.get(schema);\n if (claimed && claimed.target !== modelClass) {\n this.modelsBySchema.delete(schema);\n } else {\n this.modelsBySchema.set(schema, entry);\n }\n }\n\n // Also mirrored via Reflect so plain metadata lookups (getModelMetadata) still see it\n this.setModelMetadata({ target, metadata });\n }\n\n getModelEntry(opts: { name: string }): IModelRegistryEntry | undefined {\n return this.modelRegistry.get(opts.name);\n }\n\n getModelEntryBySchema(opts: { schema: object }): IModelRegistryEntry | undefined {\n return this.modelsBySchema.get(opts.schema);\n }\n\n getAllModels(): Map<string, IModelRegistryEntry> {\n return this.modelRegistry;\n }\n\n getModelAuthorizeSettings(opts: { name: string }): IModelAuthorizeSettings | undefined {\n const entry = this.getModelEntry(opts);\n return entry?.metadata?.settings?.authorize;\n }\n\n /** Authorization principals across all models that declare an authorize setting. */\n getAuthorizeModelPrincipals(opts: { format: 'array' }): string[];\n getAuthorizeModelPrincipals(opts: { format: 'record' }): Record<string, string>;\n getAuthorizeModelPrincipals(opts: { format: 'array' | 'record' }) {\n switch (opts.format) {\n case 'array': {\n return collectAuthorizePrincipals({ modelRegistry: this.modelRegistry }).map(\n item => item.principal,\n );\n }\n case 'record': {\n const record: Record<string, string> = {};\n\n const authorizePrincipals = collectAuthorizePrincipals({\n modelRegistry: this.modelRegistry,\n });\n for (const item of authorizePrincipals) {\n record[item.name] = item.principal;\n }\n\n return record;\n }\n default: {\n throw getError({\n message: `[getAuthorizeModelPrincipals] Invalid format | format: ${opts.format} | valid: array, record`,\n });\n }\n }\n }\n\n getAuthorizeModelSettings(opts: { format: 'array' }): Array<{\n name: string;\n authorize: IModelAuthorizeSettings;\n entry: IModelRegistryEntry;\n }>;\n getAuthorizeModelSettings(opts: {\n format: 'record';\n }): Record<string, { authorize: IModelAuthorizeSettings; entry: IModelRegistryEntry }>;\n getAuthorizeModelSettings(opts: { format: 'array' | 'record' }) {\n switch (opts.format) {\n case 'array': {\n return collectAuthorizeEntries({ modelRegistry: this.modelRegistry });\n }\n case 'record': {\n const record: Record<\n string,\n { authorize: IModelAuthorizeSettings; entry: IModelRegistryEntry }\n > = {};\n\n const authorizeEntries = collectAuthorizeEntries({ modelRegistry: this.modelRegistry });\n for (const item of authorizeEntries) {\n record[item.name] = { authorize: item.authorize, entry: item.entry };\n }\n\n return record;\n }\n default: {\n throw getError({\n message: `[getAuthorizeModelSettings] Invalid format | format: ${opts.format} | valid: array, record`,\n });\n }\n }\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/repository.mixin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"repository.mixin.js","sourceRoot":"","sources":["../../../../../src/helpers/inversion/mixins/repository.mixin.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IDataSource } from '@/base/datasources';\nimport type { AbstractEntity } from '@/base/models';\nimport type { AnyType, TClass, TMixinTarget } from '@venizia/ignis-helpers/common';\nimport { resolveValue } from '@venizia/ignis-helpers/common';\nimport { getError } from '@venizia/ignis-helpers/core';\nimport type { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { MetadataKeys } from '../common/keys';\nimport { RelationBuilderRegistry } from '../common/relation-builder';\nimport type {\n IModelMetadata,\n IModelRegistryEntry,\n IRepositoryBinding,\n IResolvedRepositoryMetadata,\n TRepositoryMetadata,\n} from '../common/types';\n\nexport const RepositoryMetadataMixin = <\n BaseClass extends TMixinTarget<\n _MetadataRegistry & {\n modelRegistry: Map<string, IModelRegistryEntry>;\n getModelMetadata(opts: { target: object }): IModelMetadata | undefined;\n }\n >,\n>(\n baseClass: BaseClass,\n) => {\n return class extends baseClass {\n /** By repository class name, for the by-name API. Two classes may share a name; `repositoryBindingsByClass` cannot confuse them. */\n repositoryBindings: Map<string, IRepositoryBinding<AbstractEntity>>;\n\n /** By repository class: a minified build renames classes, and two chunks may give two of them one name. */\n repositoryBindingsByClass: Map<Function, IRepositoryBinding<AbstractEntity>>;\n\n /**\n * The model classes each datasource owns, keyed by the datasource class - or by the string a\n * repository named it with (`dataSource: 'PgDataSource'`), which only a class of that name\n * can match. Never by class name alone: a minified build gives two datasources one name.\n */\n datasourceModels: Map<string | Function, Set<TClass<AnyType>>>;\n\n setRepositoryMetadata<\n Target extends object = object,\n Model extends AbstractEntity = AbstractEntity,\n DataSource extends IDataSource = IDataSource,\n >(opts: {\n target: Target;\n metadata: TRepositoryMetadata<Model, DataSource> & {\n _resolved?: IResolvedRepositoryMetadata<Model, DataSource>;\n };\n }): void {\n const { target, metadata } = opts;\n Reflect.defineMetadata(MetadataKeys.REPOSITORY, metadata, target);\n }\n\n getRepositoryMetadata<Target extends object = object>(opts: {\n target: Target;\n }): (TRepositoryMetadata & { _resolved?: IResolvedRepositoryMetadata }) | undefined {\n const { target } = opts;\n return Reflect.getMetadata(MetadataKeys.REPOSITORY, target);\n }\n\n /** Registers a repository binding (called by @repository) linking a repository to its model + datasource. */\n registerRepositoryBinding<\n Model extends AbstractEntity = AbstractEntity,\n DataSource extends IDataSource = IDataSource,\n >(opts: IRepositoryBinding<Model, DataSource>) {\n // Every member of the binding may be a resolver, the escape hatch for circular imports.\n // Reading `.name` off the resolver keys the registry by the arrow's inferred name, and the\n // datasource then silently discovers no schema.\n const repositoryClass = resolveValue({ value: opts.repository });\n this.repositoryBindings.set(repositoryClass.name, opts);\n this.repositoryBindingsByClass.set(repositoryClass, opts);\n\n const dataSourceRef = resolveValue({ value: opts.dataSource });\n const modelClass = resolveValue({ value: opts.model });\n\n if (!this.datasourceModels.has(dataSourceRef)) {\n this.datasourceModels.set(dataSourceRef, new Set());\n }\n\n this.datasourceModels.get(dataSourceRef)!.add(modelClass);\n }\n\n /** By class, walking up to the nearest decorated parent; by name only for callers holding a name. */\n getRepositoryBinding(\n opts: { target: Function } | { name: string },\n ): IRepositoryBinding<AbstractEntity> | undefined {\n if ('name' in opts) {\n return this.repositoryBindings.get(opts.name);\n }\n\n for (\n let current: Function | null = opts.target;\n current && current !== Function.prototype;\n current = Object.getPrototypeOf(current)\n ) {\n const binding = this.repositoryBindingsByClass.get(current);\n if (binding) {\n return binding;\n }\n }\n\n return undefined;\n }\n\n /** A class finds what was registered under it, and under a string equal to its name. */\n getDataSourceModelClasses(opts: {\n dataSource: string | TClass<IDataSource>;\n }): Set<TClass<AnyType>> {\n const { dataSource } = opts;\n\n if (typeof dataSource === 'string') {\n return this.datasourceModels.get(dataSource) ?? new Set();\n }\n\n return new Set([\n ...(this.datasourceModels.get(dataSource) ?? []),\n ...(this.datasourceModels.get(dataSource.name) ?? []),\n ]);\n }\n\n /**\n * Resolves and caches relations for a model entry - called lazily from buildSchema() so that\n * every `@model` class is registered first, which avoids circular-dependency ordering issues.\n * @internal\n */\n resolveModelRelations(modelMeta: IModelRegistryEntry): unknown {\n if (modelMeta._builtRelations !== undefined) {\n return modelMeta._builtRelations;\n }\n\n if (!modelMeta.relationsResolver) {\n return undefined;\n }\n\n const relations = resolveValue({ value: modelMeta.relationsResolver });\n\n if (!relations || !modelMeta.schema) {\n return undefined;\n }\n\n const builder = RelationBuilderRegistry.resolve();\n\n // Relations were declared but no connector installed a builder - silently dropping them\n // would surface much later as an empty `with` clause.\n if (!builder) {\n throw getError({\n message: `[RepositoryMetadataMixin][resolveModelRelations] Model declares relations but no relation builder is registered | Import the relational connector so it installs one`,\n });\n }\n\n const builtRelations = builder({ source: modelMeta.schema, relations });\n\n modelMeta._builtRelations = builtRelations?.relations;\n return modelMeta._builtRelations;\n }\n\n /**\n * Models registered for a datasource, relations resolved lazily. `schema`/`relations` stay\n * `unknown` - the registry is shared across connectors, so each connector narrows at its call\n * site.\n */\n getModels(opts: { dataSource: string | TClass<IDataSource> }): Array<{\n tableName: string;\n schema: unknown;\n relations?: unknown;\n }> {\n const modelClasses = this.getDataSourceModelClasses({ dataSource: opts.dataSource });\n\n const rs = Array.from(modelClasses)\n .map(modelClass => {\n // Read straight off the class: a class -> name -> modelRegistry round-trip collapses two\n // same-named models onto one entry, silently swapping schemas. `modelRegistry` stays\n // name-keyed for the by-name APIs that need it.\n const entry: IModelRegistryEntry = {\n target: modelClass as AnyType,\n metadata:\n this.getModelMetadata({ target: modelClass }) ?? ({ settings: {} } as AnyType),\n schema: (modelClass as AnyType).schema,\n relationsResolver: (modelClass as AnyType).relations,\n };\n\n if (entry.schema === undefined) {\n return null;\n }\n\n return {\n tableName: this.resolveModelKey({ modelClass }),\n schema: entry.schema,\n relations: this.resolveModelRelations(entry),\n };\n })\n .filter((item): item is NonNullable<typeof item> => {\n return item !== undefined && item !== null;\n });\n\n return rs;\n }\n\n /**\n * Like getModels but returns only resolved model classes - used by BaseSearchDataSource, which\n * has no pgTable to resolve.\n */\n getModelClasses(opts: { dataSource: string | TClass<IDataSource> }): Array<TClass<unknown>> {\n // Straight from the stored class refs: a name round-trip through the shared modelRegistry\n // would hand back whichever same-named class registered last.\n return Array.from(this.getDataSourceModelClasses({ dataSource: opts.dataSource }));\n }\n\n /** The key a model occupies in `modelRegistry` - its table name, or its class name when it has none. */\n resolveModelKey(opts: { modelClass: TClass<AnyType> }): string {\n const { modelClass } = opts;\n const modelMetadata = this.getModelMetadata({ target: modelClass });\n\n return (\n [modelMetadata?.tableName, (modelClass as AnyType).TABLE_NAME].find(Boolean) ??\n modelClass.name\n );\n }\n\n /** Assembles table schemas + relations for a datasource's registered models. */\n buildSchema(opts: { dataSource: string | TClass<IDataSource> }): {\n schema: Record<string, unknown>;\n relations: Record<string, unknown>;\n } {\n const { dataSource } = opts;\n const models = this.getModels({ dataSource });\n\n const rs: {\n schema: Record<string, unknown>;\n relations: Record<string, unknown>;\n } = { schema: {}, relations: {} };\n\n for (const model of models) {\n if (model.schema) {\n rs.schema[model.tableName] = model.schema;\n }\n\n if (model.relations) {\n rs.relations[`${model.tableName}Relations`] = model.relations;\n }\n }\n\n return rs;\n }\n\n hasModels(opts: { dataSource: string | TClass<IDataSource> }): boolean {\n return this.getDataSourceModelClasses({ dataSource: opts.dataSource }).size > 0;\n }\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/registry.ts"],"names":[],"mappings":";;;AACA,8DAAiF;AACjF,wDAAoD;AAEpD,qCAQkB;AAElB,MAAM,YAAY,GAAG,IAAA,8BAAqB,EACxC,IAAA,oCAA2B,EACzB,IAAA,oCAA2B,EACzB,IAAA,gCAAuB,EACrB,IAAA,gCAAuB,EAAC,IAAA,2BAAkB,EAAC,IAAA,gCAAuB,EAAC,kCAAiB,CAAC,CAAC,CAAC,CACxF,CACF,CACF,CACF,CAAC;AAEF,iHAAiH;AACjH,MAAa,gBAAiB,SAAQ,YAAY;aAChC,uBAAkB,GAAG,mBAAmB,CAAC;IAEzD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC5D,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAA8B,CAAC;QAChE,IAAI,CAAC,yBAAyB,GAAG,IAAI,GAAG,EAAgC,CAAC;QACzE,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAA2C,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,gBAAgB,CAAC,kBAAkB;YACxC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,gBAAgB,EAAE;SACrC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;;AAzBH,4CA0BC"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/helpers/inversion/registry.ts"],"names":[],"mappings":";;;AACA,8DAAiF;AACjF,wDAAoD;AAEpD,qCAQkB;AAElB,MAAM,YAAY,GAAG,IAAA,8BAAqB,EACxC,IAAA,oCAA2B,EACzB,IAAA,oCAA2B,EACzB,IAAA,gCAAuB,EACrB,IAAA,gCAAuB,EAAC,IAAA,2BAAkB,EAAC,IAAA,gCAAuB,EAAC,kCAAiB,CAAC,CAAC,CAAC,CACxF,CACF,CACF,CACF,CAAC;AAEF,iHAAiH;AACjH,MAAa,gBAAiB,SAAQ,YAAY;aAChC,uBAAkB,GAAG,mBAAmB,CAAC;IAEzD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC5D,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAA8B,CAAC;QAChE,IAAI,CAAC,yBAAyB,GAAG,IAAI,GAAG,EAAgC,CAAC;QACzE,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAA2C,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,OAAO,gCAAc,CAAC,OAAO,CAAC;YAC5B,GAAG,EAAE,gBAAgB,CAAC,kBAAkB;YACxC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,gBAAgB,EAAE;SACrC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAA+B,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;;AAzBH,4CA0BC","sourcesContent":["import type { AnyType, TClass } from '@venizia/ignis-helpers/common';\nimport { MetadataRegistry as _MetadataRegistry } from '@venizia/ignis-inversion';\nimport { SingletonRealm } from '../singleton-realm';\nimport type { IModelRegistryEntry, IRepositoryBinding } from './common/types';\nimport {\n ArtifactMetadataMixin,\n ControllerMetadataMixin,\n DatasourceMetadataMixin,\n GrpcControllerMetadataMixin,\n ModelMetadataMixin,\n RepositoryMetadataMixin,\n RestControllerMetadataMixin,\n} from './mixins';\n\nconst BaseRegistry = ArtifactMetadataMixin(\n GrpcControllerMetadataMixin(\n RestControllerMetadataMixin(\n ControllerMetadataMixin(\n RepositoryMetadataMixin(ModelMetadataMixin(DatasourceMetadataMixin(_MetadataRegistry))),\n ),\n ),\n ),\n);\n\n/** Central metadata registry: decorator metadata, the model registry, repository bindings and auto-discovery. */\nexport class MetadataRegistry extends BaseRegistry {\n static readonly SINGLETON_REAL_KEY = 'metadata-registry';\n\n private constructor() {\n super();\n this.modelRegistry = new Map<string, IModelRegistryEntry>();\n this.modelsBySchema = new WeakMap<object, IModelRegistryEntry>();\n this.repositoryBindings = new Map<string, IRepositoryBinding>();\n this.repositoryBindingsByClass = new Map<Function, IRepositoryBinding>();\n this.datasourceModels = new Map<string | Function, Set<TClass<AnyType>>>();\n }\n\n static getInstance(): MetadataRegistry {\n return SingletonRealm.resolve({\n key: MetadataRegistry.SINGLETON_REAL_KEY,\n create: () => new MetadataRegistry(),\n });\n }\n\n clearAll(): void {\n this.modelRegistry.clear();\n this.modelsBySchema = new WeakMap<object, IModelRegistryEntry>();\n this.repositoryBindings.clear();\n this.repositoryBindingsByClass.clear();\n this.datasourceModels.clear();\n }\n}\n"]}
|