@venizia/ignis 0.1.1-8 → 0.1.1
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/base/applications/abstract.d.ts +1 -3
- package/dist/base/applications/abstract.d.ts.map +1 -1
- package/dist/base/applications/abstract.js +4 -10
- package/dist/base/applications/abstract.js.map +1 -1
- package/dist/base/applications/base.d.ts +9 -3
- package/dist/base/applications/base.d.ts.map +1 -1
- package/dist/base/applications/base.js +40 -33
- package/dist/base/applications/base.js.map +1 -1
- package/dist/base/controllers/common/types.d.ts +4 -10
- package/dist/base/controllers/common/types.d.ts.map +1 -1
- package/dist/base/controllers/common/types.js.map +1 -1
- package/dist/base/controllers/factory/controller.d.ts.map +1 -1
- package/dist/base/controllers/factory/controller.js +2 -2
- package/dist/base/controllers/factory/crud/abstract.d.ts +1 -2
- package/dist/base/controllers/factory/crud/abstract.d.ts.map +1 -1
- package/dist/base/controllers/factory/crud/abstract.js +1 -2
- package/dist/base/controllers/factory/crud/abstract.js.map +1 -1
- package/dist/base/controllers/factory/definition.d.ts.map +1 -1
- package/dist/base/controllers/factory/definition.js +3 -9
- package/dist/base/controllers/factory/definition.js.map +1 -1
- package/dist/base/controllers/grpc/abstract.d.ts +5 -1
- package/dist/base/controllers/grpc/abstract.d.ts.map +1 -1
- package/dist/base/controllers/grpc/abstract.js +9 -10
- package/dist/base/controllers/grpc/abstract.js.map +1 -1
- package/dist/base/controllers/grpc/adapter.d.ts +5 -9
- package/dist/base/controllers/grpc/adapter.d.ts.map +1 -1
- package/dist/base/controllers/grpc/adapter.js +16 -16
- package/dist/base/controllers/grpc/adapter.js.map +1 -1
- package/dist/base/controllers/grpc/common/types.d.ts +21 -1
- package/dist/base/controllers/grpc/common/types.d.ts.map +1 -1
- package/dist/base/controllers/rest/abstract.d.ts +1 -4
- package/dist/base/controllers/rest/abstract.d.ts.map +1 -1
- package/dist/base/controllers/rest/abstract.js +12 -20
- package/dist/base/controllers/rest/abstract.js.map +1 -1
- package/dist/base/controllers/rest/base.d.ts +1 -3
- package/dist/base/controllers/rest/base.d.ts.map +1 -1
- package/dist/base/controllers/rest/base.js +1 -3
- package/dist/base/controllers/rest/base.js.map +1 -1
- package/dist/base/datasources/abstract.d.ts +2 -4
- package/dist/base/datasources/abstract.d.ts.map +1 -1
- package/dist/base/datasources/abstract.js +2 -4
- package/dist/base/datasources/abstract.js.map +1 -1
- package/dist/base/datasources/common/types.d.ts +11 -5
- package/dist/base/datasources/common/types.d.ts.map +1 -1
- package/dist/base/datasources/common/types.js +11 -2
- package/dist/base/datasources/common/types.js.map +1 -1
- package/dist/base/metadata/persistents.d.ts.map +1 -1
- package/dist/base/metadata/persistents.js +31 -23
- package/dist/base/metadata/persistents.js.map +1 -1
- package/dist/base/metadata/routes/common.d.ts +1 -4
- package/dist/base/metadata/routes/common.d.ts.map +1 -1
- package/dist/base/metadata/routes/common.js +1 -4
- package/dist/base/metadata/routes/common.js.map +1 -1
- package/dist/base/middlewares/app-error/app-error.middleware.d.ts +9 -3
- package/dist/base/middlewares/app-error/app-error.middleware.d.ts.map +1 -1
- package/dist/base/middlewares/app-error/app-error.middleware.js +47 -9
- package/dist/base/middlewares/app-error/app-error.middleware.js.map +1 -1
- package/dist/base/middlewares/app-error/database.handler.d.ts +2 -7
- package/dist/base/middlewares/app-error/database.handler.d.ts.map +1 -1
- package/dist/base/middlewares/app-error/database.handler.js +4 -12
- package/dist/base/middlewares/app-error/database.handler.js.map +1 -1
- package/dist/base/middlewares/app-error/definition.d.ts +3 -8
- package/dist/base/middlewares/app-error/definition.d.ts.map +1 -1
- package/dist/base/middlewares/app-error/definition.js +9 -14
- package/dist/base/middlewares/app-error/definition.js.map +1 -1
- package/dist/base/middlewares/app-error/types.d.ts +2 -0
- package/dist/base/middlewares/app-error/types.d.ts.map +1 -1
- package/dist/base/middlewares/app-error/zod.handler.d.ts.map +1 -1
- package/dist/base/middlewares/app-error/zod.handler.js +1 -2
- package/dist/base/middlewares/app-error/zod.handler.js.map +1 -1
- package/dist/base/middlewares/common/errors.d.ts +18 -0
- package/dist/base/middlewares/common/errors.d.ts.map +1 -0
- package/dist/base/middlewares/common/errors.js +13 -0
- package/dist/base/middlewares/common/errors.js.map +1 -0
- package/dist/base/middlewares/common/index.d.ts +2 -0
- package/dist/base/middlewares/common/index.d.ts.map +1 -0
- package/dist/base/middlewares/common/index.js +18 -0
- package/dist/base/middlewares/common/index.js.map +1 -0
- package/dist/base/middlewares/index.d.ts +1 -0
- package/dist/base/middlewares/index.d.ts.map +1 -1
- package/dist/base/middlewares/index.js +1 -0
- package/dist/base/middlewares/index.js.map +1 -1
- package/dist/base/middlewares/request-spy/request-spy.middleware.d.ts.map +1 -1
- package/dist/base/middlewares/request-spy/request-spy.middleware.js +4 -7
- package/dist/base/middlewares/request-spy/request-spy.middleware.js.map +1 -1
- package/dist/base/repositories/common/constants.d.ts +13 -4
- package/dist/base/repositories/common/constants.d.ts.map +1 -1
- package/dist/base/repositories/common/constants.js +14 -5
- package/dist/base/repositories/common/constants.js.map +1 -1
- package/dist/base/repositories/common/errors.d.ts +18 -0
- package/dist/base/repositories/common/errors.d.ts.map +1 -0
- package/dist/base/repositories/common/errors.js +13 -0
- package/dist/base/repositories/common/errors.js.map +1 -0
- package/dist/base/repositories/common/index.d.ts +3 -1
- package/dist/base/repositories/common/index.d.ts.map +1 -1
- package/dist/base/repositories/common/index.js +3 -1
- package/dist/base/repositories/common/index.js.map +1 -1
- package/dist/base/repositories/common/types.d.ts +34 -17
- package/dist/base/repositories/common/types.d.ts.map +1 -1
- package/dist/base/repositories/common/types.js +1 -2
- package/dist/base/repositories/common/types.js.map +1 -1
- package/dist/base/repositories/core/abstract.d.ts +31 -20
- package/dist/base/repositories/core/abstract.d.ts.map +1 -1
- package/dist/base/repositories/core/abstract.js +33 -23
- package/dist/base/repositories/core/abstract.js.map +1 -1
- package/dist/base/repositories/query-schemas/index.d.ts +3 -7
- package/dist/base/repositories/query-schemas/index.d.ts.map +1 -1
- package/dist/base/repositories/query-schemas/index.js +10 -21
- package/dist/base/repositories/query-schemas/index.js.map +1 -1
- package/dist/common/error-codes.d.ts +1 -4
- package/dist/common/error-codes.d.ts.map +1 -1
- package/dist/common/error-codes.js +2 -8
- package/dist/common/error-codes.js.map +1 -1
- package/dist/components/api-reference/component.d.ts.map +1 -1
- package/dist/components/api-reference/component.js +1 -2
- package/dist/components/api-reference/component.js.map +1 -1
- package/dist/components/auth/authenticate/common/errors.d.ts +91 -0
- package/dist/components/auth/authenticate/common/errors.d.ts.map +1 -0
- package/dist/components/auth/authenticate/common/errors.js +80 -0
- package/dist/components/auth/authenticate/common/errors.js.map +1 -0
- package/dist/components/auth/authenticate/common/index.d.ts +1 -0
- package/dist/components/auth/authenticate/common/index.d.ts.map +1 -1
- package/dist/components/auth/authenticate/common/index.js +1 -0
- package/dist/components/auth/authenticate/common/index.js.map +1 -1
- package/dist/components/auth/authenticate/common/types.d.ts +7 -1
- package/dist/components/auth/authenticate/common/types.d.ts.map +1 -1
- package/dist/components/auth/authenticate/controllers/factory.d.ts.map +1 -1
- package/dist/components/auth/authenticate/controllers/jwks/definitions.d.ts.map +1 -1
- package/dist/components/auth/authenticate/controllers/jwks/definitions.js +1 -2
- package/dist/components/auth/authenticate/controllers/jwks/definitions.js.map +1 -1
- package/dist/components/auth/authenticate/providers/authentication.provider.d.ts.map +1 -1
- package/dist/components/auth/authenticate/providers/authentication.provider.js +8 -6
- package/dist/components/auth/authenticate/providers/authentication.provider.js.map +1 -1
- package/dist/components/auth/authenticate/services/basic/service.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/basic/service.js +6 -7
- package/dist/components/auth/authenticate/services/basic/service.js.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/abstract.service.d.ts +4 -3
- package/dist/components/auth/authenticate/services/bearer/abstract.service.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/abstract.service.js +11 -9
- package/dist/components/auth/authenticate/services/bearer/abstract.service.js.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.d.ts +1 -4
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.js +1 -4
- package/dist/components/auth/authenticate/services/bearer/jwks/abstract.service.js.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.js +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/issuer.service.js.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.js +1 -0
- package/dist/components/auth/authenticate/services/bearer/jwks/verifier.service.js.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jws.service.d.ts.map +1 -1
- package/dist/components/auth/authenticate/services/bearer/jws.service.js +1 -0
- package/dist/components/auth/authenticate/services/bearer/jws.service.js.map +1 -1
- package/dist/components/auth/authorize/adapters/base-filtered.d.ts +2 -8
- package/dist/components/auth/authorize/adapters/base-filtered.d.ts.map +1 -1
- package/dist/components/auth/authorize/adapters/base-filtered.js +2 -8
- package/dist/components/auth/authorize/adapters/base-filtered.js.map +1 -1
- package/dist/components/auth/authorize/adapters/scoped-casbin.adapter.d.ts +5 -22
- package/dist/components/auth/authorize/adapters/scoped-casbin.adapter.d.ts.map +1 -1
- package/dist/components/auth/authorize/adapters/scoped-casbin.adapter.js +44 -61
- package/dist/components/auth/authorize/adapters/scoped-casbin.adapter.js.map +1 -1
- package/dist/components/auth/authorize/adapters/types.d.ts +1 -5
- package/dist/components/auth/authorize/adapters/types.d.ts.map +1 -1
- package/dist/components/auth/authorize/builders/grant.builder.d.ts +16 -16
- package/dist/components/auth/authorize/builders/grant.builder.d.ts.map +1 -1
- package/dist/components/auth/authorize/builders/grant.builder.js +76 -78
- package/dist/components/auth/authorize/builders/grant.builder.js.map +1 -1
- package/dist/components/auth/authorize/builders/permission.builder.d.ts +4 -18
- package/dist/components/auth/authorize/builders/permission.builder.d.ts.map +1 -1
- package/dist/components/auth/authorize/builders/permission.builder.js +4 -18
- package/dist/components/auth/authorize/builders/permission.builder.js.map +1 -1
- package/dist/components/auth/authorize/builders/policy.builder.d.ts +5 -20
- package/dist/components/auth/authorize/builders/policy.builder.d.ts.map +1 -1
- package/dist/components/auth/authorize/builders/policy.builder.js +5 -20
- package/dist/components/auth/authorize/builders/policy.builder.js.map +1 -1
- package/dist/components/auth/authorize/common/constants.d.ts +9 -39
- package/dist/components/auth/authorize/common/constants.d.ts.map +1 -1
- package/dist/components/auth/authorize/common/constants.js +9 -39
- package/dist/components/auth/authorize/common/constants.js.map +1 -1
- package/dist/components/auth/authorize/common/errors.d.ts +51 -0
- package/dist/components/auth/authorize/common/errors.d.ts.map +1 -0
- package/dist/components/auth/authorize/common/errors.js +43 -0
- package/dist/components/auth/authorize/common/errors.js.map +1 -0
- package/dist/components/auth/authorize/common/index.d.ts +1 -0
- package/dist/components/auth/authorize/common/index.d.ts.map +1 -1
- package/dist/components/auth/authorize/common/index.js +1 -0
- package/dist/components/auth/authorize/common/index.js.map +1 -1
- package/dist/components/auth/authorize/common/types.d.ts +4 -16
- package/dist/components/auth/authorize/common/types.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.d.ts +4 -16
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.js +21 -45
- package/dist/components/auth/authorize/enforcers/casbin.enforcer.js.map +1 -1
- package/dist/components/auth/authorize/enforcers/models/rbac-domain.model.d.ts +1 -5
- package/dist/components/auth/authorize/enforcers/models/rbac-domain.model.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/models/rbac-domain.model.js +3 -5
- package/dist/components/auth/authorize/enforcers/models/rbac-domain.model.js.map +1 -1
- package/dist/components/auth/authorize/enforcers/resource-role-manager.d.ts +2 -10
- package/dist/components/auth/authorize/enforcers/resource-role-manager.d.ts.map +1 -1
- package/dist/components/auth/authorize/enforcers/resource-role-manager.js +2 -10
- package/dist/components/auth/authorize/enforcers/resource-role-manager.js.map +1 -1
- package/dist/components/auth/authorize/providers/authorization.provider.d.ts.map +1 -1
- package/dist/components/auth/authorize/providers/authorization.provider.js +23 -25
- package/dist/components/auth/authorize/providers/authorization.provider.js.map +1 -1
- package/dist/components/auth/authorize/providers/request-domain.d.ts +1 -4
- package/dist/components/auth/authorize/providers/request-domain.d.ts.map +1 -1
- package/dist/components/auth/authorize/providers/request-domain.js +1 -4
- package/dist/components/auth/authorize/providers/request-domain.js.map +1 -1
- package/dist/components/controller/grpc/common/types.d.ts +4 -0
- package/dist/components/controller/grpc/common/types.d.ts.map +1 -1
- package/dist/components/controller/grpc/common/types.js.map +1 -1
- package/dist/components/controller/grpc/grpc.component.d.ts.map +1 -1
- package/dist/components/controller/grpc/grpc.component.js +6 -0
- package/dist/components/controller/grpc/grpc.component.js.map +1 -1
- package/dist/components/controller/index.js +1 -1
- package/dist/components/health-check/controller.d.ts.map +1 -1
- package/dist/components/health-check/controller.js +2 -8
- package/dist/components/health-check/controller.js.map +1 -1
- package/dist/components/mail/common/constants.d.ts +1 -4
- package/dist/components/mail/common/constants.d.ts.map +1 -1
- package/dist/components/mail/common/constants.js +1 -4
- package/dist/components/mail/common/constants.js.map +1 -1
- package/dist/components/mail/common/errors.d.ts +35 -0
- package/dist/components/mail/common/errors.d.ts.map +1 -0
- package/dist/components/mail/common/errors.js +24 -0
- package/dist/components/mail/common/errors.js.map +1 -0
- package/dist/components/mail/common/index.d.ts +1 -0
- package/dist/components/mail/common/index.d.ts.map +1 -1
- package/dist/components/mail/common/index.js +1 -0
- package/dist/components/mail/common/index.js.map +1 -1
- package/dist/components/mail/common/types.d.ts +14 -1
- package/dist/components/mail/common/types.d.ts.map +1 -1
- package/dist/components/mail/component.d.ts.map +1 -1
- package/dist/components/mail/component.js +2 -4
- package/dist/components/mail/component.js.map +1 -1
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.d.ts +2 -8
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.js +5 -15
- package/dist/components/mail/helpers/executors/bull-mq-executor.helper.js.map +1 -1
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.d.ts +1 -4
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.js +2 -7
- package/dist/components/mail/helpers/executors/internal-queue-executor.helper.js.map +1 -1
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.d.ts +7 -6
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.js +6 -9
- package/dist/components/mail/helpers/transporters/mailgun-transporter.helper.js.map +1 -1
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.d.ts +6 -2
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.d.ts.map +1 -1
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.js +4 -3
- package/dist/components/mail/helpers/transporters/nodemail-transporter.helper.js.map +1 -1
- package/dist/components/mail/providers/mail-transporter.provider.js +2 -2
- package/dist/components/mail/providers/mail-transporter.provider.js.map +1 -1
- package/dist/components/mail/services/generator.service.d.ts.map +1 -1
- package/dist/components/mail/services/generator.service.js.map +1 -1
- package/dist/components/mail/services/mail.service.d.ts.map +1 -1
- package/dist/components/mail/services/mail.service.js +4 -8
- package/dist/components/mail/services/mail.service.js.map +1 -1
- package/dist/components/mail/services/template.service.d.ts.map +1 -1
- package/dist/components/mail/services/template.service.js +9 -10
- package/dist/components/mail/services/template.service.js.map +1 -1
- package/dist/components/static-asset/common/errors.d.ts +66 -0
- package/dist/components/static-asset/common/errors.d.ts.map +1 -0
- package/dist/components/static-asset/common/errors.js +55 -0
- package/dist/components/static-asset/common/errors.js.map +1 -0
- package/dist/components/static-asset/common/index.d.ts +1 -0
- package/dist/components/static-asset/common/index.d.ts.map +1 -1
- package/dist/components/static-asset/common/index.js +1 -0
- package/dist/components/static-asset/common/index.js.map +1 -1
- package/dist/components/static-asset/common/types.d.ts +2 -2
- package/dist/components/static-asset/common/types.d.ts.map +1 -1
- package/dist/components/static-asset/component.d.ts.map +1 -1
- package/dist/components/static-asset/component.js +1 -2
- package/dist/components/static-asset/component.js.map +1 -1
- package/dist/components/static-asset/controller/base.definition.d.ts.map +1 -1
- package/dist/components/static-asset/controller/base.definition.js +3 -6
- package/dist/components/static-asset/controller/base.definition.js.map +1 -1
- package/dist/components/static-asset/controller/factory.d.ts.map +1 -1
- package/dist/components/static-asset/controller/factory.js +42 -98
- package/dist/components/static-asset/controller/factory.js.map +1 -1
- package/dist/components/static-asset/repositories/base.repository.d.ts +3 -3
- package/dist/components/static-asset/repositories/base.repository.d.ts.map +1 -1
- package/dist/components/static-asset/repositories/base.repository.js +2 -2
- package/dist/components/static-asset/repositories/base.repository.js.map +1 -1
- package/dist/connectors/meilisearch/compiler.d.ts +1 -2
- package/dist/connectors/meilisearch/compiler.d.ts.map +1 -1
- package/dist/connectors/meilisearch/compiler.js.map +1 -1
- package/dist/connectors/meilisearch/connector.d.ts +11 -24
- package/dist/connectors/meilisearch/connector.d.ts.map +1 -1
- package/dist/connectors/meilisearch/connector.js +38 -57
- package/dist/connectors/meilisearch/connector.js.map +1 -1
- package/dist/connectors/meilisearch/datasources/datasource.d.ts +1 -4
- package/dist/connectors/meilisearch/datasources/datasource.d.ts.map +1 -1
- package/dist/connectors/meilisearch/datasources/datasource.js +1 -4
- package/dist/connectors/meilisearch/datasources/datasource.js.map +1 -1
- package/dist/connectors/meilisearch/internal/connector-internal.d.ts +1 -4
- package/dist/connectors/meilisearch/internal/connector-internal.d.ts.map +1 -1
- package/dist/connectors/meilisearch/internal/connector-internal.js +1 -4
- package/dist/connectors/meilisearch/internal/connector-internal.js.map +1 -1
- package/dist/connectors/meilisearch/repositories/dialect/query-dialect.d.ts +29 -13
- package/dist/connectors/meilisearch/repositories/dialect/query-dialect.d.ts.map +1 -1
- package/dist/connectors/meilisearch/repositories/dialect/query-dialect.js +188 -82
- package/dist/connectors/meilisearch/repositories/dialect/query-dialect.js.map +1 -1
- package/dist/connectors/meilisearch/types.d.ts +1 -4
- package/dist/connectors/meilisearch/types.d.ts.map +1 -1
- package/dist/connectors/postgres/datasources/abstract.d.ts +11 -42
- package/dist/connectors/postgres/datasources/abstract.d.ts.map +1 -1
- package/dist/connectors/postgres/datasources/abstract.js +16 -141
- package/dist/connectors/postgres/datasources/abstract.js.map +1 -1
- package/dist/connectors/postgres/datasources/base.d.ts +9 -15
- package/dist/connectors/postgres/datasources/base.d.ts.map +1 -1
- package/dist/connectors/postgres/datasources/base.js +20 -105
- package/dist/connectors/postgres/datasources/base.js.map +1 -1
- package/dist/connectors/postgres/datasources/common/guards.d.ts +4 -1
- package/dist/connectors/postgres/datasources/common/guards.d.ts.map +1 -1
- package/dist/connectors/postgres/datasources/common/guards.js +6 -2
- package/dist/connectors/postgres/datasources/common/guards.js.map +1 -1
- package/dist/connectors/postgres/datasources/common/types.d.ts +19 -26
- package/dist/connectors/postgres/datasources/common/types.d.ts.map +1 -1
- package/dist/connectors/postgres/datasources/common/types.js.map +1 -1
- package/dist/connectors/postgres/datasources/index.d.ts +1 -2
- package/dist/connectors/postgres/datasources/index.d.ts.map +1 -1
- package/dist/connectors/postgres/datasources/index.js +6 -6
- package/dist/connectors/postgres/datasources/index.js.map +1 -1
- package/dist/connectors/postgres/drivers/driver.d.ts +10 -40
- package/dist/connectors/postgres/drivers/driver.d.ts.map +1 -1
- package/dist/connectors/postgres/drivers/node-postgres.d.ts +3 -3
- package/dist/connectors/postgres/drivers/pglite.d.ts +49 -0
- package/dist/connectors/postgres/drivers/pglite.d.ts.map +1 -0
- package/dist/connectors/postgres/drivers/pglite.js +126 -0
- package/dist/connectors/postgres/drivers/pglite.js.map +1 -0
- package/dist/connectors/postgres/drivers/postgres-js.d.ts +3 -3
- package/dist/connectors/postgres/models/base.d.ts +1 -29
- package/dist/connectors/postgres/models/base.d.ts.map +1 -1
- package/dist/connectors/postgres/models/base.js +2 -41
- package/dist/connectors/postgres/models/base.js.map +1 -1
- package/dist/connectors/postgres/models/common/columns.d.ts +1 -2
- package/dist/connectors/postgres/models/common/columns.d.ts.map +1 -1
- package/dist/connectors/postgres/models/common/columns.js +1 -2
- package/dist/connectors/postgres/models/common/columns.js.map +1 -1
- package/dist/connectors/postgres/models/common/types.d.ts +1 -3
- package/dist/connectors/postgres/models/common/types.d.ts.map +1 -1
- package/dist/connectors/postgres/models/common/types.js +4 -4
- package/dist/connectors/postgres/models/common/types.js.map +1 -1
- package/dist/connectors/postgres/models/enrichers/data-type.enricher.d.ts.map +1 -1
- package/dist/connectors/postgres/models/enrichers/data-type.enricher.js +9 -6
- package/dist/connectors/postgres/models/enrichers/data-type.enricher.js.map +1 -1
- package/dist/connectors/postgres/models/enrichers/tz.enricher.d.ts +1 -3
- package/dist/connectors/postgres/models/enrichers/tz.enricher.d.ts.map +1 -1
- package/dist/connectors/postgres/models/enrichers/tz.enricher.js +2 -2
- package/dist/connectors/postgres/models/enrichers/tz.enricher.js.map +1 -1
- package/dist/connectors/postgres/repositories/common/shared.d.ts +2 -3
- package/dist/connectors/postgres/repositories/common/shared.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/common/shared.js +4 -11
- package/dist/connectors/postgres/repositories/common/shared.js.map +1 -1
- package/dist/connectors/postgres/repositories/common/types.d.ts +13 -38
- package/dist/connectors/postgres/repositories/common/types.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/base.d.ts +12 -242
- package/dist/connectors/postgres/repositories/core/base.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/base.js +9 -189
- package/dist/connectors/postgres/repositories/core/base.js.map +1 -1
- package/dist/connectors/postgres/repositories/core/default.d.ts +7 -6
- package/dist/connectors/postgres/repositories/core/default.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/default.js +5 -6
- package/dist/connectors/postgres/repositories/core/default.js.map +1 -1
- package/dist/connectors/postgres/repositories/core/index.d.ts +2 -7
- package/dist/connectors/postgres/repositories/core/index.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/index.js +2 -14
- package/dist/connectors/postgres/repositories/core/index.js.map +1 -1
- package/dist/connectors/postgres/repositories/core/persistable.d.ts +7 -180
- package/dist/connectors/postgres/repositories/core/persistable.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/persistable.js +5 -184
- package/dist/connectors/postgres/repositories/core/persistable.js.map +1 -1
- package/dist/connectors/postgres/repositories/core/readable.d.ts +7 -161
- package/dist/connectors/postgres/repositories/core/readable.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/readable.js +5 -216
- package/dist/connectors/postgres/repositories/core/readable.js.map +1 -1
- package/dist/connectors/postgres/repositories/core/soft-deletable.d.ts +15 -111
- package/dist/connectors/postgres/repositories/core/soft-deletable.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/core/soft-deletable.js +5 -81
- package/dist/connectors/postgres/repositories/core/soft-deletable.js.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/filter.d.ts +18 -88
- package/dist/connectors/postgres/repositories/dialect/filter.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/filter.js +17 -511
- package/dist/connectors/postgres/repositories/dialect/filter.js.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/index.d.ts +1 -0
- package/dist/connectors/postgres/repositories/dialect/index.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/index.js +1 -0
- package/dist/connectors/postgres/repositories/dialect/index.js.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/query-dialect.d.ts +23 -0
- package/dist/connectors/postgres/repositories/dialect/query-dialect.d.ts.map +1 -0
- package/dist/connectors/postgres/repositories/dialect/query-dialect.js +28 -0
- package/dist/connectors/postgres/repositories/dialect/query-dialect.js.map +1 -0
- package/dist/connectors/postgres/repositories/dialect/query.d.ts +1 -2
- package/dist/connectors/postgres/repositories/dialect/query.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/query.js +4 -9
- package/dist/connectors/postgres/repositories/dialect/query.js.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/relation.d.ts +1 -10
- package/dist/connectors/postgres/repositories/dialect/relation.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/relation.js +4 -40
- package/dist/connectors/postgres/repositories/dialect/relation.js.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/update.d.ts +18 -21
- package/dist/connectors/postgres/repositories/dialect/update.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/dialect/update.js +17 -112
- package/dist/connectors/postgres/repositories/dialect/update.js.map +1 -1
- package/dist/connectors/postgres/repositories/executor.d.ts +31 -0
- package/dist/connectors/postgres/repositories/executor.d.ts.map +1 -0
- package/dist/connectors/postgres/repositories/executor.js +158 -0
- package/dist/connectors/postgres/repositories/executor.js.map +1 -0
- package/dist/connectors/postgres/repositories/index.d.ts +1 -0
- package/dist/connectors/postgres/repositories/index.d.ts.map +1 -1
- package/dist/connectors/postgres/repositories/index.js +3 -0
- package/dist/connectors/postgres/repositories/index.js.map +1 -1
- package/dist/connectors/postgres/supabase/index.js +1 -2
- package/dist/connectors/postgres/supabase/index.js.map +1 -1
- package/dist/connectors/postgres/supabase/pooler.d.ts +1 -3
- package/dist/connectors/postgres/supabase/pooler.d.ts.map +1 -1
- package/dist/connectors/postgres/supabase/pooler.js +1 -3
- package/dist/connectors/postgres/supabase/pooler.js.map +1 -1
- package/dist/connectors/postgres/supabase/rls.d.ts +1 -4
- package/dist/connectors/postgres/supabase/rls.d.ts.map +1 -1
- package/dist/connectors/postgres/supabase/rls.js +2 -7
- package/dist/connectors/postgres/supabase/rls.js.map +1 -1
- package/dist/connectors/relational/datasources/abstract.d.ts +71 -0
- package/dist/connectors/relational/datasources/abstract.d.ts.map +1 -0
- package/dist/connectors/relational/datasources/abstract.js +173 -0
- package/dist/connectors/relational/datasources/abstract.js.map +1 -0
- package/dist/connectors/relational/datasources/base.d.ts +22 -0
- package/dist/connectors/relational/datasources/base.d.ts.map +1 -0
- package/dist/connectors/relational/datasources/base.js +99 -0
- package/dist/connectors/relational/datasources/base.js.map +1 -0
- package/dist/connectors/relational/datasources/common/guards.d.ts +5 -0
- package/dist/connectors/relational/datasources/common/guards.d.ts.map +1 -0
- package/dist/connectors/relational/datasources/common/guards.js +9 -0
- package/dist/connectors/relational/datasources/common/guards.js.map +1 -0
- package/dist/connectors/relational/datasources/common/index.d.ts +3 -0
- package/dist/connectors/relational/datasources/common/index.d.ts.map +1 -0
- package/dist/connectors/relational/datasources/common/index.js +19 -0
- package/dist/connectors/relational/datasources/common/index.js.map +1 -0
- package/dist/connectors/relational/datasources/common/types.d.ts +24 -0
- package/dist/connectors/relational/datasources/common/types.d.ts.map +1 -0
- package/dist/connectors/relational/datasources/common/types.js +3 -0
- package/dist/connectors/relational/datasources/common/types.js.map +1 -0
- package/dist/connectors/relational/datasources/index.d.ts +4 -0
- package/dist/connectors/relational/datasources/index.d.ts.map +1 -0
- package/dist/connectors/relational/datasources/index.js +20 -0
- package/dist/connectors/relational/datasources/index.js.map +1 -0
- package/dist/connectors/relational/drivers/driver.d.ts +31 -0
- package/dist/connectors/relational/drivers/driver.d.ts.map +1 -0
- package/dist/connectors/relational/drivers/driver.js +3 -0
- package/dist/connectors/relational/drivers/driver.js.map +1 -0
- package/dist/connectors/relational/drivers/index.d.ts +2 -0
- package/dist/connectors/relational/drivers/index.d.ts.map +1 -0
- package/dist/connectors/relational/drivers/index.js +18 -0
- package/dist/connectors/relational/drivers/index.js.map +1 -0
- package/dist/connectors/relational/index.d.ts +5 -0
- package/dist/connectors/relational/index.d.ts.map +1 -0
- package/dist/connectors/relational/index.js +21 -0
- package/dist/connectors/relational/index.js.map +1 -0
- package/dist/connectors/relational/models/base.d.ts +29 -0
- package/dist/connectors/relational/models/base.d.ts.map +1 -0
- package/dist/connectors/relational/models/base.js +44 -0
- package/dist/connectors/relational/models/base.js.map +1 -0
- package/dist/connectors/relational/models/common/index.d.ts +2 -0
- package/dist/connectors/relational/models/common/index.d.ts.map +1 -0
- package/dist/connectors/relational/models/common/index.js +18 -0
- package/dist/connectors/relational/models/common/index.js.map +1 -0
- package/dist/connectors/relational/models/common/types.d.ts +30 -0
- package/dist/connectors/relational/models/common/types.d.ts.map +1 -0
- package/dist/connectors/relational/models/common/types.js +8 -0
- package/dist/connectors/relational/models/common/types.js.map +1 -0
- package/dist/connectors/relational/models/index.d.ts +3 -0
- package/dist/connectors/relational/models/index.d.ts.map +1 -0
- package/dist/connectors/relational/models/index.js +19 -0
- package/dist/connectors/relational/models/index.js.map +1 -0
- package/dist/connectors/relational/repositories/common/executor.d.ts +69 -0
- package/dist/connectors/relational/repositories/common/executor.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/common/executor.js +3 -0
- package/dist/connectors/relational/repositories/common/executor.js.map +1 -0
- package/dist/connectors/relational/repositories/common/index.d.ts +4 -0
- package/dist/connectors/relational/repositories/common/index.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/common/index.js +20 -0
- package/dist/connectors/relational/repositories/common/index.js.map +1 -0
- package/dist/connectors/relational/repositories/common/shared.d.ts +4 -0
- package/dist/connectors/relational/repositories/common/shared.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/common/shared.js +15 -0
- package/dist/connectors/relational/repositories/common/shared.js.map +1 -0
- package/dist/connectors/relational/repositories/common/types.d.ts +66 -0
- package/dist/connectors/relational/repositories/common/types.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/common/types.js +3 -0
- package/dist/connectors/relational/repositories/common/types.js.map +1 -0
- package/dist/connectors/relational/repositories/core/base.d.ts +233 -0
- package/dist/connectors/relational/repositories/core/base.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/core/base.js +185 -0
- package/dist/connectors/relational/repositories/core/base.js.map +1 -0
- package/dist/connectors/relational/repositories/core/default.d.ts +9 -0
- package/dist/connectors/relational/repositories/core/default.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/core/default.js +9 -0
- package/dist/connectors/relational/repositories/core/default.js.map +1 -0
- package/dist/connectors/relational/repositories/core/index.d.ts +6 -0
- package/dist/connectors/relational/repositories/core/index.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/core/index.js +22 -0
- package/dist/connectors/relational/repositories/core/index.js.map +1 -0
- package/dist/connectors/relational/repositories/core/persistable.d.ts +181 -0
- package/dist/connectors/relational/repositories/core/persistable.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/core/persistable.js +185 -0
- package/dist/connectors/relational/repositories/core/persistable.js.map +1 -0
- package/dist/connectors/relational/repositories/core/readable.d.ts +164 -0
- package/dist/connectors/relational/repositories/core/readable.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/core/readable.js +207 -0
- package/dist/connectors/relational/repositories/core/readable.js.map +1 -0
- package/dist/connectors/relational/repositories/core/soft-deletable.d.ts +119 -0
- package/dist/connectors/relational/repositories/core/soft-deletable.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/core/soft-deletable.js +85 -0
- package/dist/connectors/relational/repositories/core/soft-deletable.js.map +1 -0
- package/dist/connectors/relational/repositories/dialect/filter.d.ts +191 -0
- package/dist/connectors/relational/repositories/dialect/filter.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/dialect/filter.js +570 -0
- package/dist/connectors/relational/repositories/dialect/filter.js.map +1 -0
- package/dist/connectors/relational/repositories/dialect/index.d.ts +5 -0
- package/dist/connectors/relational/repositories/dialect/index.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/dialect/index.js +23 -0
- package/dist/connectors/relational/repositories/dialect/index.js.map +1 -0
- package/dist/connectors/{postgres → relational}/repositories/dialect/internal/json-utils.d.ts +4 -1
- package/dist/connectors/relational/repositories/dialect/internal/json-utils.d.ts.map +1 -0
- package/dist/connectors/{postgres → relational}/repositories/dialect/internal/json-utils.js +5 -2
- package/dist/connectors/relational/repositories/dialect/internal/json-utils.js.map +1 -0
- package/dist/connectors/relational/repositories/dialect/relation.d.ts +11 -0
- package/dist/connectors/relational/repositories/dialect/relation.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/dialect/relation.js +43 -0
- package/dist/connectors/relational/repositories/dialect/relation.js.map +1 -0
- package/dist/connectors/relational/repositories/dialect/update.d.ts +38 -0
- package/dist/connectors/relational/repositories/dialect/update.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/dialect/update.js +92 -0
- package/dist/connectors/relational/repositories/dialect/update.js.map +1 -0
- package/dist/connectors/relational/repositories/index.d.ts +4 -0
- package/dist/connectors/relational/repositories/index.d.ts.map +1 -0
- package/dist/connectors/relational/repositories/index.js +20 -0
- package/dist/connectors/relational/repositories/index.js.map +1 -0
- package/dist/connectors/search/common/errors.d.ts +54 -0
- package/dist/connectors/search/common/errors.d.ts.map +1 -0
- package/dist/connectors/search/common/errors.js +40 -0
- package/dist/connectors/search/common/errors.js.map +1 -0
- package/dist/connectors/search/common/index.d.ts +2 -0
- package/dist/connectors/search/common/index.d.ts.map +1 -0
- package/dist/connectors/search/common/index.js +18 -0
- package/dist/connectors/search/common/index.js.map +1 -0
- package/dist/connectors/search/connector.d.ts +3 -8
- package/dist/connectors/search/connector.d.ts.map +1 -1
- package/dist/connectors/search/connector.js +1 -3
- package/dist/connectors/search/connector.js.map +1 -1
- package/dist/connectors/search/controllers/abstract.d.ts +1 -4
- package/dist/connectors/search/controllers/abstract.d.ts.map +1 -1
- package/dist/connectors/search/controllers/abstract.js +2 -6
- package/dist/connectors/search/controllers/abstract.js.map +1 -1
- package/dist/connectors/search/controllers/factory.d.ts +2 -6
- package/dist/connectors/search/controllers/factory.d.ts.map +1 -1
- package/dist/connectors/search/controllers/factory.js +1 -4
- package/dist/connectors/search/controllers/factory.js.map +1 -1
- package/dist/connectors/search/datasources/abstract.d.ts +1 -3
- package/dist/connectors/search/datasources/abstract.d.ts.map +1 -1
- package/dist/connectors/search/datasources/abstract.js.map +1 -1
- package/dist/connectors/search/datasources/base.d.ts +8 -19
- package/dist/connectors/search/datasources/base.d.ts.map +1 -1
- package/dist/connectors/search/datasources/base.js +11 -25
- package/dist/connectors/search/datasources/base.js.map +1 -1
- package/dist/connectors/search/datasources/common/types.d.ts +1 -2
- package/dist/connectors/search/datasources/common/types.d.ts.map +1 -1
- package/dist/connectors/search/index.d.ts +1 -0
- package/dist/connectors/search/index.d.ts.map +1 -1
- package/dist/connectors/search/index.js +1 -0
- package/dist/connectors/search/index.js.map +1 -1
- package/dist/connectors/search/internal/search-connector-internal.d.ts.map +1 -1
- package/dist/connectors/search/internal/search-connector-internal.js +5 -8
- package/dist/connectors/search/internal/search-connector-internal.js.map +1 -1
- package/dist/connectors/search/models/base.d.ts +1 -3
- package/dist/connectors/search/models/base.d.ts.map +1 -1
- package/dist/connectors/search/models/base.js +1 -3
- package/dist/connectors/search/models/base.js.map +1 -1
- package/dist/connectors/search/models/define-search-collection.d.ts +2 -7
- package/dist/connectors/search/models/define-search-collection.d.ts.map +1 -1
- package/dist/connectors/search/models/define-search-collection.js +42 -25
- package/dist/connectors/search/models/define-search-collection.js.map +1 -1
- package/dist/connectors/search/models/types.d.ts +3 -6
- package/dist/connectors/search/models/types.d.ts.map +1 -1
- package/dist/connectors/search/models/zod-derivation.d.ts.map +1 -1
- package/dist/connectors/search/models/zod-derivation.js +1 -2
- package/dist/connectors/search/models/zod-derivation.js.map +1 -1
- package/dist/connectors/search/repositories/common/constants.d.ts +2 -5
- package/dist/connectors/search/repositories/common/constants.d.ts.map +1 -1
- package/dist/connectors/search/repositories/common/constants.js +5 -13
- package/dist/connectors/search/repositories/common/constants.js.map +1 -1
- package/dist/connectors/search/repositories/common/dialect-helpers.d.ts +64 -4
- package/dist/connectors/search/repositories/common/dialect-helpers.d.ts.map +1 -1
- package/dist/connectors/search/repositories/common/dialect-helpers.js +121 -5
- package/dist/connectors/search/repositories/common/dialect-helpers.js.map +1 -1
- package/dist/connectors/search/repositories/common/types.d.ts +79 -10
- package/dist/connectors/search/repositories/common/types.d.ts.map +1 -1
- package/dist/connectors/search/repositories/common/types.js +21 -0
- package/dist/connectors/search/repositories/common/types.js.map +1 -1
- package/dist/connectors/search/repositories/core/base.d.ts +56 -14
- package/dist/connectors/search/repositories/core/base.d.ts.map +1 -1
- package/dist/connectors/search/repositories/core/base.js +100 -26
- package/dist/connectors/search/repositories/core/base.js.map +1 -1
- package/dist/connectors/search/repositories/core/persistable.d.ts +17 -8
- package/dist/connectors/search/repositories/core/persistable.d.ts.map +1 -1
- package/dist/connectors/search/repositories/core/persistable.js +34 -24
- package/dist/connectors/search/repositories/core/persistable.js.map +1 -1
- package/dist/connectors/search/repositories/core/readable.d.ts +26 -5
- package/dist/connectors/search/repositories/core/readable.d.ts.map +1 -1
- package/dist/connectors/search/repositories/core/readable.js +74 -28
- package/dist/connectors/search/repositories/core/readable.js.map +1 -1
- package/dist/connectors/sqlite/datasources/abstract.d.ts +16 -0
- package/dist/connectors/sqlite/datasources/abstract.d.ts.map +1 -0
- package/dist/connectors/sqlite/datasources/abstract.js +23 -0
- package/dist/connectors/sqlite/datasources/abstract.js.map +1 -0
- package/dist/connectors/sqlite/datasources/base.d.ts +30 -0
- package/dist/connectors/sqlite/datasources/base.d.ts.map +1 -0
- package/dist/connectors/sqlite/datasources/base.js +78 -0
- package/dist/connectors/sqlite/datasources/base.js.map +1 -0
- package/dist/connectors/sqlite/datasources/common/guards.d.ts +8 -0
- package/dist/connectors/sqlite/datasources/common/guards.d.ts.map +1 -0
- package/dist/connectors/sqlite/datasources/common/guards.js +13 -0
- package/dist/connectors/sqlite/datasources/common/guards.js.map +1 -0
- package/dist/connectors/sqlite/datasources/common/index.d.ts +3 -0
- package/dist/connectors/sqlite/datasources/common/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/datasources/common/index.js +19 -0
- package/dist/connectors/sqlite/datasources/common/index.js.map +1 -0
- package/dist/connectors/sqlite/datasources/common/types.d.ts +48 -0
- package/dist/connectors/sqlite/datasources/common/types.d.ts.map +1 -0
- package/dist/connectors/sqlite/datasources/common/types.js +18 -0
- package/dist/connectors/sqlite/datasources/common/types.js.map +1 -0
- package/dist/connectors/sqlite/datasources/index.d.ts +4 -0
- package/dist/connectors/sqlite/datasources/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/datasources/index.js +20 -0
- package/dist/connectors/sqlite/datasources/index.js.map +1 -0
- package/dist/connectors/sqlite/drivers/driver.d.ts +20 -0
- package/dist/connectors/sqlite/drivers/driver.d.ts.map +1 -0
- package/dist/connectors/sqlite/drivers/driver.js +3 -0
- package/dist/connectors/sqlite/drivers/driver.js.map +1 -0
- package/dist/connectors/sqlite/drivers/index.d.ts +2 -0
- package/dist/connectors/sqlite/drivers/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/drivers/index.js +18 -0
- package/dist/connectors/sqlite/drivers/index.js.map +1 -0
- package/dist/connectors/sqlite/drivers/libsql.d.ts +53 -0
- package/dist/connectors/sqlite/drivers/libsql.d.ts.map +1 -0
- package/dist/connectors/sqlite/drivers/libsql.js +151 -0
- package/dist/connectors/sqlite/drivers/libsql.js.map +1 -0
- package/dist/connectors/sqlite/index.d.ts +5 -0
- package/dist/connectors/sqlite/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/index.js +21 -0
- package/dist/connectors/sqlite/index.js.map +1 -0
- package/dist/connectors/sqlite/models/base.d.ts +10 -0
- package/dist/connectors/sqlite/models/base.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/base.js +13 -0
- package/dist/connectors/sqlite/models/base.js.map +1 -0
- package/dist/connectors/sqlite/models/common/columns.d.ts +18 -0
- package/dist/connectors/sqlite/models/common/columns.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/common/columns.js +46 -0
- package/dist/connectors/sqlite/models/common/columns.js.map +1 -0
- package/dist/connectors/sqlite/models/common/index.d.ts +3 -0
- package/dist/connectors/sqlite/models/common/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/common/index.js +19 -0
- package/dist/connectors/sqlite/models/common/index.js.map +1 -0
- package/dist/connectors/sqlite/models/common/types.d.ts +88 -0
- package/dist/connectors/sqlite/models/common/types.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/common/types.js +8 -0
- package/dist/connectors/sqlite/models/common/types.js.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/data-type.enricher.d.ts +22 -0
- package/dist/connectors/sqlite/models/enrichers/data-type.enricher.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/data-type.enricher.js +41 -0
- package/dist/connectors/sqlite/models/enrichers/data-type.enricher.js.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/id.enricher.d.ts +25 -0
- package/dist/connectors/sqlite/models/enrichers/id.enricher.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/id.enricher.js +37 -0
- package/dist/connectors/sqlite/models/enrichers/id.enricher.js.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/index.d.ts +6 -0
- package/dist/connectors/sqlite/models/enrichers/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/index.js +22 -0
- package/dist/connectors/sqlite/models/enrichers/index.js.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/principal.enricher.d.ts +23 -0
- package/dist/connectors/sqlite/models/enrichers/principal.enricher.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/principal.enricher.js +49 -0
- package/dist/connectors/sqlite/models/enrichers/principal.enricher.js.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/tz.enricher.d.ts +26 -0
- package/dist/connectors/sqlite/models/enrichers/tz.enricher.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/tz.enricher.js +36 -0
- package/dist/connectors/sqlite/models/enrichers/tz.enricher.js.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.d.ts +14 -0
- package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.js +70 -0
- package/dist/connectors/sqlite/models/enrichers/user-audit.enricher.js.map +1 -0
- package/dist/connectors/sqlite/models/index.d.ts +4 -0
- package/dist/connectors/sqlite/models/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/models/index.js +20 -0
- package/dist/connectors/sqlite/models/index.js.map +1 -0
- package/dist/connectors/sqlite/repositories/common/index.d.ts +2 -0
- package/dist/connectors/sqlite/repositories/common/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/common/index.js +18 -0
- package/dist/connectors/sqlite/repositories/common/index.js.map +1 -0
- package/dist/connectors/sqlite/repositories/common/types.d.ts +15 -0
- package/dist/connectors/sqlite/repositories/common/types.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/common/types.js +3 -0
- package/dist/connectors/sqlite/repositories/common/types.js.map +1 -0
- package/dist/connectors/sqlite/repositories/core/base.d.ts +14 -0
- package/dist/connectors/sqlite/repositories/core/base.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/core/base.js +13 -0
- package/dist/connectors/sqlite/repositories/core/base.js.map +1 -0
- package/dist/connectors/sqlite/repositories/core/default.d.ts +13 -0
- package/dist/connectors/sqlite/repositories/core/default.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/core/default.js +12 -0
- package/dist/connectors/sqlite/repositories/core/default.js.map +1 -0
- package/dist/connectors/sqlite/repositories/core/index.d.ts +6 -0
- package/dist/connectors/sqlite/repositories/core/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/core/index.js +22 -0
- package/dist/connectors/sqlite/repositories/core/index.js.map +1 -0
- package/dist/connectors/sqlite/repositories/core/persistable.d.ts +12 -0
- package/dist/connectors/sqlite/repositories/core/persistable.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/core/persistable.js +11 -0
- package/dist/connectors/sqlite/repositories/core/persistable.js.map +1 -0
- package/dist/connectors/sqlite/repositories/core/readable.d.ts +10 -0
- package/dist/connectors/sqlite/repositories/core/readable.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/core/readable.js +9 -0
- package/dist/connectors/sqlite/repositories/core/readable.js.map +1 -0
- package/dist/connectors/sqlite/repositories/core/soft-deletable.d.ts +27 -0
- package/dist/connectors/sqlite/repositories/core/soft-deletable.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/core/soft-deletable.js +13 -0
- package/dist/connectors/sqlite/repositories/core/soft-deletable.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/filter.d.ts +43 -0
- package/dist/connectors/sqlite/repositories/dialect/filter.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/filter.js +71 -0
- package/dist/connectors/sqlite/repositories/dialect/filter.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/index.d.ts +5 -0
- package/dist/connectors/sqlite/repositories/dialect/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/index.js +21 -0
- package/dist/connectors/sqlite/repositories/dialect/index.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-column.d.ts +14 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-column.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-column.js +22 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-column.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-path.d.ts +22 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-path.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-path.js +45 -0
- package/dist/connectors/sqlite/repositories/dialect/internal/json-path.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/query-dialect.d.ts +23 -0
- package/dist/connectors/sqlite/repositories/dialect/query-dialect.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/query-dialect.js +28 -0
- package/dist/connectors/sqlite/repositories/dialect/query-dialect.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/query.d.ts +42 -0
- package/dist/connectors/sqlite/repositories/dialect/query.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/query.js +103 -0
- package/dist/connectors/sqlite/repositories/dialect/query.js.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/update.d.ts +27 -0
- package/dist/connectors/sqlite/repositories/dialect/update.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/dialect/update.js +46 -0
- package/dist/connectors/sqlite/repositories/dialect/update.js.map +1 -0
- package/dist/connectors/sqlite/repositories/executor.d.ts +40 -0
- package/dist/connectors/sqlite/repositories/executor.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/executor.js +162 -0
- package/dist/connectors/sqlite/repositories/executor.js.map +1 -0
- package/dist/connectors/sqlite/repositories/index.d.ts +5 -0
- package/dist/connectors/sqlite/repositories/index.d.ts.map +1 -0
- package/dist/connectors/sqlite/repositories/index.js +23 -0
- package/dist/connectors/sqlite/repositories/index.js.map +1 -0
- package/dist/connectors/typesense/compiler.d.ts.map +1 -1
- package/dist/connectors/typesense/compiler.js +71 -32
- package/dist/connectors/typesense/compiler.js.map +1 -1
- package/dist/connectors/typesense/connector.d.ts +23 -0
- package/dist/connectors/typesense/connector.d.ts.map +1 -1
- package/dist/connectors/typesense/connector.js +231 -53
- package/dist/connectors/typesense/connector.js.map +1 -1
- package/dist/connectors/typesense/datasources/datasource.d.ts +1 -2
- package/dist/connectors/typesense/datasources/datasource.d.ts.map +1 -1
- package/dist/connectors/typesense/datasources/datasource.js.map +1 -1
- package/dist/connectors/typesense/index.d.ts.map +1 -1
- package/dist/connectors/typesense/index.js +1 -2
- package/dist/connectors/typesense/index.js.map +1 -1
- package/dist/connectors/typesense/internal/connector-internal.d.ts +33 -0
- package/dist/connectors/typesense/internal/connector-internal.d.ts.map +1 -1
- package/dist/connectors/typesense/internal/connector-internal.js +48 -3
- package/dist/connectors/typesense/internal/connector-internal.js.map +1 -1
- package/dist/connectors/typesense/repositories/common/types.d.ts +8 -3
- package/dist/connectors/typesense/repositories/common/types.d.ts.map +1 -1
- package/dist/connectors/typesense/repositories/dialect/query-dialect.d.ts +32 -17
- package/dist/connectors/typesense/repositories/dialect/query-dialect.d.ts.map +1 -1
- package/dist/connectors/typesense/repositories/dialect/query-dialect.js +235 -105
- package/dist/connectors/typesense/repositories/dialect/query-dialect.js.map +1 -1
- package/dist/connectors/typesense/types.d.ts.map +1 -1
- package/dist/connectors/typesense/types.js.map +1 -1
- package/dist/helpers/inversion/common/types.d.ts +10 -1
- package/dist/helpers/inversion/common/types.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/controllers/grpc.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/controllers/grpc.js +1 -2
- package/dist/helpers/inversion/mixins/controllers/grpc.js.map +1 -1
- package/dist/helpers/inversion/mixins/controllers/rest.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/controllers/rest.js +1 -3
- package/dist/helpers/inversion/mixins/controllers/rest.js.map +1 -1
- package/dist/helpers/inversion/mixins/model.mixin.d.ts +1 -4
- package/dist/helpers/inversion/mixins/model.mixin.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/model.mixin.js +33 -34
- package/dist/helpers/inversion/mixins/model.mixin.js.map +1 -1
- package/dist/helpers/inversion/mixins/repository.mixin.d.ts +16 -7
- package/dist/helpers/inversion/mixins/repository.mixin.d.ts.map +1 -1
- package/dist/helpers/inversion/mixins/repository.mixin.js +21 -14
- package/dist/helpers/inversion/mixins/repository.mixin.js.map +1 -1
- package/dist/helpers/inversion/registry.d.ts +1 -4
- package/dist/helpers/inversion/registry.d.ts.map +1 -1
- package/dist/helpers/inversion/registry.js +1 -4
- package/dist/helpers/inversion/registry.js.map +1 -1
- package/dist/utilities/error.utility.d.ts +1 -4
- package/dist/utilities/error.utility.d.ts.map +1 -1
- package/dist/utilities/error.utility.js +1 -4
- package/dist/utilities/error.utility.js.map +1 -1
- package/dist/utilities/network.utility.d.ts +1 -4
- package/dist/utilities/network.utility.d.ts.map +1 -1
- package/dist/utilities/network.utility.js +14 -13
- package/dist/utilities/network.utility.js.map +1 -1
- package/package.json +37 -9
- package/dist/base/repositories/common/operators.d.ts +0 -49
- package/dist/base/repositories/common/operators.d.ts.map +0 -1
- package/dist/base/repositories/common/operators.js +0 -118
- package/dist/base/repositories/common/operators.js.map +0 -1
- package/dist/base/repositories/query-schemas/fields.d.ts +0 -6
- package/dist/base/repositories/query-schemas/fields.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/fields.js +0 -17
- package/dist/base/repositories/query-schemas/fields.js.map +0 -1
- package/dist/base/repositories/query-schemas/filter.d.ts +0 -23
- package/dist/base/repositories/query-schemas/filter.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/filter.js +0 -72
- package/dist/base/repositories/query-schemas/filter.js.map +0 -1
- package/dist/base/repositories/query-schemas/limit.d.ts +0 -4
- package/dist/base/repositories/query-schemas/limit.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/limit.js +0 -12
- package/dist/base/repositories/query-schemas/limit.js.map +0 -1
- package/dist/base/repositories/query-schemas/offset.d.ts +0 -4
- package/dist/base/repositories/query-schemas/offset.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/offset.js +0 -12
- package/dist/base/repositories/query-schemas/offset.js.map +0 -1
- package/dist/base/repositories/query-schemas/order-by.d.ts +0 -4
- package/dist/base/repositories/query-schemas/order-by.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/order-by.js +0 -18
- package/dist/base/repositories/query-schemas/order-by.js.map +0 -1
- package/dist/base/repositories/query-schemas/skip.d.ts +0 -4
- package/dist/base/repositories/query-schemas/skip.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/skip.js +0 -12
- package/dist/base/repositories/query-schemas/skip.js.map +0 -1
- package/dist/base/repositories/query-schemas/where.d.ts +0 -9
- package/dist/base/repositories/query-schemas/where.d.ts.map +0 -1
- package/dist/base/repositories/query-schemas/where.js +0 -27
- package/dist/base/repositories/query-schemas/where.js.map +0 -1
- package/dist/connectors/postgres/repositories/dialect/internal/json-utils.d.ts.map +0 -1
- package/dist/connectors/postgres/repositories/dialect/internal/json-utils.js.map +0 -1
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import type { ITransaction } from '../../../../base/datasources';
|
|
2
|
-
import type { TFilter, TLockOptions } from '../../../../base/repositories/common';
|
|
2
|
+
import type { TFilter, TLockOptions, TWhere } from '../../../../base/repositories/common';
|
|
3
3
|
import { AbstractRepository } from '../../../../base/repositories/core';
|
|
4
4
|
import type { AbstractSearchDataSource } from '../../../../connectors/search/datasources';
|
|
5
5
|
import type { BaseSearchEntity } from '../../../../connectors/search/models';
|
|
6
6
|
import type { TClass } from '@venizia/ignis-helpers';
|
|
7
|
-
import type { ISearchQuery, ISearchQueryDialect } from '../../../../connectors/search/repositories/common';
|
|
8
|
-
/** Search-repository plumbing on `AbstractRepository`. `TDataSource` carries the concrete connector
|
|
9
|
-
* type through `this.connector`: a concretely-bound repository reaches its engine's verbs uncast,
|
|
10
|
-
* while an engine-agnostic one is forced by the compiler to write `connector.alias?.…`. */
|
|
7
|
+
import type { ISearchQuery, ISearchQueryDialect, TCompiledWhere } from '../../../../connectors/search/repositories/common';
|
|
8
|
+
/** Search-repository plumbing on `AbstractRepository`. `TDataSource` carries the concrete connector type through `this.connector`, so a concretely-bound repository reaches its engine's verbs uncast while an engine-agnostic one is forced to write `connector.alias?.…`. */
|
|
11
9
|
export declare abstract class SearchBaseRepository<TDocument extends object = object, TDataSource extends AbstractSearchDataSource = AbstractSearchDataSource> extends AbstractRepository<TDocument, TDocument> {
|
|
12
10
|
constructor(dataSource?: TDataSource, opts?: {
|
|
13
11
|
scope?: string;
|
|
@@ -24,26 +22,70 @@ export declare abstract class SearchBaseRepository<TDocument extends object = ob
|
|
|
24
22
|
setDataSource(opts: {
|
|
25
23
|
dataSource: TDataSource;
|
|
26
24
|
}): void;
|
|
27
|
-
/** WRITE responses never pass through the engine's exclude-fields filter, so hiddenProperties are
|
|
28
|
-
* stripped here - the relational branch gets the same guarantee from `.returning(visibleProperties)`. */
|
|
25
|
+
/** WRITE responses never pass through the engine's exclude-fields filter, so hiddenProperties are stripped here - the relational branch gets the same guarantee from `.returning(visibleProperties)`. */
|
|
29
26
|
protected omitHiddenFields<R>(document: R): R;
|
|
30
27
|
protected omitHiddenFieldsAll<R>(documents: R[]): R[];
|
|
31
|
-
/**
|
|
32
|
-
* Typesense has no transaction primitive - a caller-supplied options.transaction is rejected
|
|
33
|
-
* loudly instead of silently running outside the transaction the caller expects.
|
|
34
|
-
*/
|
|
28
|
+
/** No search engine here has a transaction primitive (this tier is engine-neutral - Typesense and Meilisearch both inherit it) - a caller-supplied options.transaction is rejected loudly instead of silently running outside the transaction the caller expects. */
|
|
35
29
|
protected assertNoTransaction(opts?: {
|
|
36
30
|
transaction?: ITransaction;
|
|
37
31
|
}): void;
|
|
38
|
-
/** Row-level locking (SELECT ... FOR UPDATE) has no
|
|
32
|
+
/** Row-level locking (SELECT ... FOR UPDATE) has no search-engine equivalent - same NotSupported convention as assertNoTransaction. */
|
|
39
33
|
protected assertNoLock(opts?: {
|
|
40
34
|
lock?: TLockOptions;
|
|
41
35
|
}): void;
|
|
42
|
-
|
|
36
|
+
private _collectionFields?;
|
|
37
|
+
/**
|
|
38
|
+
* Field names the collection declares, or undefined when it declares none - which means
|
|
39
|
+
* "unvalidated", not "no fields": an entity carrying no `ISearchCollectionDefinition` must
|
|
40
|
+
* compile exactly as it did before field checking existed.
|
|
41
|
+
*
|
|
42
|
+
* Read from the entity's own typed `schema` rather than by casting into `entity.constructor`;
|
|
43
|
+
* `BaseSearchEntity.schema` is instance-side and already an `ISearchCollectionDefinition`.
|
|
44
|
+
* Memoized per repository instance - the definition is frozen after boot.
|
|
45
|
+
*/
|
|
46
|
+
protected get collectionFields(): ReadonlySet<string> | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Builds a dialect-translated query, always stripping hiddenFields.
|
|
49
|
+
*
|
|
50
|
+
* The caller's `where` and the repository-owned `defaultWhere` are compiled SEPARATELY and
|
|
51
|
+
* combined after, rather than merged into one tree first. Merging first makes the two
|
|
52
|
+
* indistinguishable, and the repository's own clause would then have to satisfy the
|
|
53
|
+
* caller-facing field check: `SprocketDocument` in integration-wiring.test.ts declares
|
|
54
|
+
* [title, secretCode] but carries `defaultFilter: { where: { isActive: true } }`, so every
|
|
55
|
+
* request through it would 400 ITSELF. Compiling separately makes the trust boundary a matter
|
|
56
|
+
* of WHICH CALL IS MADE, which - unlike a flag threaded through the recursion - cannot be wrong
|
|
57
|
+
* at a nested level.
|
|
58
|
+
*/
|
|
43
59
|
protected buildQuery(opts: {
|
|
44
60
|
filter?: TFilter;
|
|
45
61
|
shouldSkipDefaultFilter?: boolean;
|
|
46
62
|
}): ISearchQuery;
|
|
47
|
-
|
|
63
|
+
/**
|
|
64
|
+
* Refuses a caller-supplied page larger than this model allows.
|
|
65
|
+
*
|
|
66
|
+
* POLICY, and the counterweight to a guardrail this tier removed: an engine used to refuse more
|
|
67
|
+
* than 250 hits per page, so an unreasonable `limit` failed fast and cheap. Now that such a page
|
|
68
|
+
* is served, something has to decide when it is unreasonable, and the framework would otherwise
|
|
69
|
+
* be less safe than before it could satisfy the request.
|
|
70
|
+
*
|
|
71
|
+
* It lives in `buildQuery` because that is the one point BOTH `find()` and `search()` pass
|
|
72
|
+
* through - enforcing in `find()` alone would leave `search()` as a way around it, which is not
|
|
73
|
+
* a ceiling. `mode: 'raw'` bypasses `buildQuery` and therefore bypasses this deliberately: raw
|
|
74
|
+
* is the documented escape hatch and its callers own the consequences. They still cannot exceed
|
|
75
|
+
* the connector's physical ceiling, which is the intended layering - policy is opt-out-able,
|
|
76
|
+
* physics is not.
|
|
77
|
+
*/
|
|
78
|
+
protected assertLimitWithinCeiling(opts: {
|
|
79
|
+
limit?: number;
|
|
80
|
+
}): void;
|
|
81
|
+
/**
|
|
82
|
+
* Compiles the caller clause (field-checked) and the repository-owned default clause
|
|
83
|
+
* (unchecked), then ANDs them via the dialect - `defaultWhere` first, preserving the order the
|
|
84
|
+
* previous `{ and: [defaultWhere, where] }` merge produced.
|
|
85
|
+
*/
|
|
86
|
+
protected compileEffectiveWhere(opts: {
|
|
87
|
+
where?: TWhere;
|
|
88
|
+
defaultWhere?: TWhere;
|
|
89
|
+
}): TCompiledWhere;
|
|
48
90
|
}
|
|
49
91
|
//# sourceMappingURL=base.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAI9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACf,MAAM,yCAAyC,CAAC;AAGjD,+QAA+Q;AAC/Q,8BAAsB,oBAAoB,CACxC,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,WAAW,SAAS,wBAAwB,GAAG,wBAAwB,CACvE,SAAQ,kBAAkB,CAAC,SAAS,EAAE,SAAS,CAAC;gBAE9C,UAAU,CAAC,EAAE,WAAW,EACxB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAA;KAAE;IAKnE,IAAa,UAAU,IAAI,WAAW,CAErC;IAED,IAAa,UAAU,CAAC,KAAK,EAAE,WAAW,EAEzC;IAED,IAAa,MAAM,IAAI,gBAAgB,CAEtC;IAED,IAAa,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAE1C;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,SAAS,KAAK,SAAS,IAAI,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,CAEjE;IAED,SAAS,KAAK,YAAY,IAAI,mBAAmB,CAEhD;IAED,IAAI,WAAW,IAAI,WAAW,CAAC,aAAa,CAAC,CAE5C;IAEQ,aAAa,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,WAAW,CAAA;KAAE,GAAG,IAAI;IAI/D,yMAAyM;IACzM,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAgB7C,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;IAQrD,qQAAqQ;IACrQ,SAAS,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAY1E,uIAAuI;IACvI,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,YAAY,CAAA;KAAE,GAAG,IAAI;IAY5D,OAAO,CAAC,iBAAiB,CAAC,CAAc;IAExC;;;;;;;;OAQG;IACH,SAAS,KAAK,gBAAgB,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAOhE;IAED;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QACzB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,uBAAuB,CAAC,EAAE,OAAO,CAAC;KACnC,GAAG,YAAY;IAoChB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAclE;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc;CAiBjG"}
|
|
@@ -2,10 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SearchBaseRepository = void 0;
|
|
4
4
|
const core_1 = require("../../../../base/repositories/core");
|
|
5
|
+
const common_1 = require("../../../../base/repositories/common");
|
|
6
|
+
const common_2 = require("../../../../connectors/search/common");
|
|
7
|
+
const ignis_helpers_1 = require("@venizia/ignis-helpers");
|
|
5
8
|
const utilities_1 = require("../../../../utilities");
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
* while an engine-agnostic one is forced by the compiler to write `connector.alias?.…`. */
|
|
9
|
+
const common_3 = require("../../../../connectors/search/repositories/common");
|
|
10
|
+
/** Search-repository plumbing on `AbstractRepository`. `TDataSource` carries the concrete connector type through `this.connector`, so a concretely-bound repository reaches its engine's verbs uncast while an engine-agnostic one is forced to write `connector.alias?.…`. */
|
|
9
11
|
class SearchBaseRepository extends core_1.AbstractRepository {
|
|
10
12
|
constructor(dataSource, opts) {
|
|
11
13
|
super(dataSource, opts);
|
|
@@ -37,8 +39,7 @@ class SearchBaseRepository extends core_1.AbstractRepository {
|
|
|
37
39
|
setDataSource(opts) {
|
|
38
40
|
super.setDataSource(opts);
|
|
39
41
|
}
|
|
40
|
-
/** WRITE responses never pass through the engine's exclude-fields filter, so hiddenProperties are
|
|
41
|
-
* stripped here - the relational branch gets the same guarantee from `.returning(visibleProperties)`. */
|
|
42
|
+
/** WRITE responses never pass through the engine's exclude-fields filter, so hiddenProperties are stripped here - the relational branch gets the same guarantee from `.returning(visibleProperties)`. */
|
|
42
43
|
omitHiddenFields(document) {
|
|
43
44
|
const hiddenFields = this.hiddenFields;
|
|
44
45
|
if (hiddenFields.length === 0 || document === null || typeof document !== 'object') {
|
|
@@ -56,10 +57,7 @@ class SearchBaseRepository extends core_1.AbstractRepository {
|
|
|
56
57
|
}
|
|
57
58
|
return documents.map(document => this.omitHiddenFields(document));
|
|
58
59
|
}
|
|
59
|
-
/**
|
|
60
|
-
* Typesense has no transaction primitive - a caller-supplied options.transaction is rejected
|
|
61
|
-
* loudly instead of silently running outside the transaction the caller expects.
|
|
62
|
-
*/
|
|
60
|
+
/** No search engine here has a transaction primitive (this tier is engine-neutral - Typesense and Meilisearch both inherit it) - a caller-supplied options.transaction is rejected loudly instead of silently running outside the transaction the caller expects. */
|
|
63
61
|
assertNoTransaction(opts) {
|
|
64
62
|
if (!opts?.transaction) {
|
|
65
63
|
return;
|
|
@@ -70,7 +68,7 @@ class SearchBaseRepository extends core_1.AbstractRepository {
|
|
|
70
68
|
logger: this.logger,
|
|
71
69
|
});
|
|
72
70
|
}
|
|
73
|
-
/** Row-level locking (SELECT ... FOR UPDATE) has no
|
|
71
|
+
/** Row-level locking (SELECT ... FOR UPDATE) has no search-engine equivalent - same NotSupported convention as assertNoTransaction. */
|
|
74
72
|
assertNoLock(opts) {
|
|
75
73
|
if (!opts?.lock) {
|
|
76
74
|
return;
|
|
@@ -81,30 +79,106 @@ class SearchBaseRepository extends core_1.AbstractRepository {
|
|
|
81
79
|
logger: this.logger,
|
|
82
80
|
});
|
|
83
81
|
}
|
|
84
|
-
/**
|
|
82
|
+
/**
|
|
83
|
+
* Field names the collection declares, or undefined when it declares none - which means
|
|
84
|
+
* "unvalidated", not "no fields": an entity carrying no `ISearchCollectionDefinition` must
|
|
85
|
+
* compile exactly as it did before field checking existed.
|
|
86
|
+
*
|
|
87
|
+
* Read from the entity's own typed `schema` rather than by casting into `entity.constructor`;
|
|
88
|
+
* `BaseSearchEntity.schema` is instance-side and already an `ISearchCollectionDefinition`.
|
|
89
|
+
* Memoized per repository instance - the definition is frozen after boot.
|
|
90
|
+
*/
|
|
91
|
+
get collectionFields() {
|
|
92
|
+
if (!this._collectionFields) {
|
|
93
|
+
const fields = this.entity?.schema?.fields;
|
|
94
|
+
this._collectionFields = new Set((fields ?? []).map(field => field.name));
|
|
95
|
+
}
|
|
96
|
+
return this._collectionFields.size > 0 ? this._collectionFields : undefined;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Builds a dialect-translated query, always stripping hiddenFields.
|
|
100
|
+
*
|
|
101
|
+
* The caller's `where` and the repository-owned `defaultWhere` are compiled SEPARATELY and
|
|
102
|
+
* combined after, rather than merged into one tree first. Merging first makes the two
|
|
103
|
+
* indistinguishable, and the repository's own clause would then have to satisfy the
|
|
104
|
+
* caller-facing field check: `SprocketDocument` in integration-wiring.test.ts declares
|
|
105
|
+
* [title, secretCode] but carries `defaultFilter: { where: { isActive: true } }`, so every
|
|
106
|
+
* request through it would 400 ITSELF. Compiling separately makes the trust boundary a matter
|
|
107
|
+
* of WHICH CALL IS MADE, which - unlike a flag threaded through the recursion - cannot be wrong
|
|
108
|
+
* at a nested level.
|
|
109
|
+
*/
|
|
85
110
|
buildQuery(opts) {
|
|
86
111
|
const { filter, shouldSkipDefaultFilter } = opts;
|
|
87
112
|
const defaultWhere = shouldSkipDefaultFilter ? undefined : this.defaultWhere;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
: undefined;
|
|
94
|
-
return this.queryDialect.build({
|
|
95
|
-
filter: effectiveFilter,
|
|
113
|
+
this.assertLimitWithinCeiling({ limit: filter?.limit });
|
|
114
|
+
// `where` is withheld from `build` and compiled below: handing it over merged would field-check
|
|
115
|
+
// the repository's own clause along with the caller's.
|
|
116
|
+
const query = this.queryDialect.build({
|
|
117
|
+
filter: filter ? { ...filter, where: undefined } : undefined,
|
|
96
118
|
hiddenFields: this.hiddenFields,
|
|
119
|
+
capabilities: { fields: this.collectionFields },
|
|
97
120
|
});
|
|
121
|
+
const compiled = this.compileEffectiveWhere({ where: filter?.where, defaultWhere });
|
|
122
|
+
switch (compiled.outcome) {
|
|
123
|
+
case common_3.SearchFilterOutcomes.FILTER: {
|
|
124
|
+
query.filterBy = compiled.filterBy;
|
|
125
|
+
break;
|
|
126
|
+
}
|
|
127
|
+
case common_3.SearchFilterOutcomes.MATCH_NONE: {
|
|
128
|
+
query.matchNone = true;
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
case common_3.SearchFilterOutcomes.MATCH_ALL:
|
|
132
|
+
default: {
|
|
133
|
+
// Vacuously true - nothing to set and nothing to short-circuit. Spelled out rather than
|
|
134
|
+
// left as an unwritten else, so all three outcomes are visibly accounted for.
|
|
135
|
+
break;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return query;
|
|
98
139
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
140
|
+
/**
|
|
141
|
+
* Refuses a caller-supplied page larger than this model allows.
|
|
142
|
+
*
|
|
143
|
+
* POLICY, and the counterweight to a guardrail this tier removed: an engine used to refuse more
|
|
144
|
+
* than 250 hits per page, so an unreasonable `limit` failed fast and cheap. Now that such a page
|
|
145
|
+
* is served, something has to decide when it is unreasonable, and the framework would otherwise
|
|
146
|
+
* be less safe than before it could satisfy the request.
|
|
147
|
+
*
|
|
148
|
+
* It lives in `buildQuery` because that is the one point BOTH `find()` and `search()` pass
|
|
149
|
+
* through - enforcing in `find()` alone would leave `search()` as a way around it, which is not
|
|
150
|
+
* a ceiling. `mode: 'raw'` bypasses `buildQuery` and therefore bypasses this deliberately: raw
|
|
151
|
+
* is the documented escape hatch and its callers own the consequences. They still cannot exceed
|
|
152
|
+
* the connector's physical ceiling, which is the intended layering - policy is opt-out-able,
|
|
153
|
+
* physics is not.
|
|
154
|
+
*/
|
|
155
|
+
assertLimitWithinCeiling(opts) {
|
|
156
|
+
const { limit } = opts;
|
|
157
|
+
const ceiling = this.maxLimit ?? common_1.DEFAULT_MAX_LIMIT;
|
|
158
|
+
if (limit === undefined || limit <= ceiling) {
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
throw (0, ignis_helpers_1.getError)({
|
|
162
|
+
error: common_2.SearchErrors.PAGE_TOO_LARGE,
|
|
163
|
+
message: `[${this.constructor.name}][buildQuery] Requested page exceeds this model's limit | collection: '${this.collectionName}' | requested: ${limit} | maximum: ${ceiling} | raise it with @model settings.maxLimit if larger pages are genuinely needed`,
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Compiles the caller clause (field-checked) and the repository-owned default clause
|
|
168
|
+
* (unchecked), then ANDs them via the dialect - `defaultWhere` first, preserving the order the
|
|
169
|
+
* previous `{ and: [defaultWhere, where] }` merge produced.
|
|
170
|
+
*/
|
|
171
|
+
compileEffectiveWhere(opts) {
|
|
172
|
+
const { where, defaultWhere } = opts;
|
|
173
|
+
const dialect = this.queryDialect;
|
|
174
|
+
const clauses = [];
|
|
175
|
+
if (defaultWhere) {
|
|
176
|
+
clauses.push(dialect.compileWhere({ where: defaultWhere }));
|
|
103
177
|
}
|
|
104
|
-
if (
|
|
105
|
-
|
|
178
|
+
if (where) {
|
|
179
|
+
clauses.push(dialect.compileWhere({ where, capabilities: { fields: this.collectionFields } }));
|
|
106
180
|
}
|
|
107
|
-
return {
|
|
181
|
+
return dialect.conjoin({ clauses });
|
|
108
182
|
}
|
|
109
183
|
}
|
|
110
184
|
exports.SearchBaseRepository = SearchBaseRepository;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":";;;AAEA,mDAA8D;
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,9 +63,7 @@ export declare class PersistableSearchRepository<TDocument extends object = obje
|
|
|
63
63
|
}): Promise<TCount & {
|
|
64
64
|
data: R;
|
|
65
65
|
}>;
|
|
66
|
-
/** Count-only
|
|
67
|
-
* is always `null`, `shouldReturn` rejected at the type level. Callers wanting the affected
|
|
68
|
-
* documents read them explicitly before updating. */
|
|
66
|
+
/** Count-only: search engines have no RETURNING and no extra read is bolted on, so `data` is always `null` and `shouldReturn` is rejected at the type level - callers wanting the affected documents read them before updating. */
|
|
69
67
|
updateAll(opts: {
|
|
70
68
|
data: Partial<TDocument>;
|
|
71
69
|
where?: TWhere;
|
|
@@ -91,9 +89,7 @@ export declare class PersistableSearchRepository<TDocument extends object = obje
|
|
|
91
89
|
}): Promise<TCount & {
|
|
92
90
|
data: R;
|
|
93
91
|
}>;
|
|
94
|
-
/** Count-only like updateAll
|
|
95
|
-
* collection only when neither where nor defaultFilter is present - truncate reports no
|
|
96
|
-
* per-document count, so that path returns { count: 0, data: null }. */
|
|
92
|
+
/** Count-only like updateAll: filter-delete when there is an effective where, truncating the whole collection only when neither where nor defaultFilter is present - truncate reports no per-document count, so that path returns { count: 0, data: null }. */
|
|
97
93
|
deleteAll(opts?: {
|
|
98
94
|
where?: TWhere;
|
|
99
95
|
options?: Omit<IExtraOptions, 'shouldReturn'> & {
|
|
@@ -102,8 +98,7 @@ export declare class PersistableSearchRepository<TDocument extends object = obje
|
|
|
102
98
|
}): Promise<TCount & {
|
|
103
99
|
data: null;
|
|
104
100
|
}>;
|
|
105
|
-
/** Bulk import through the neutral document facade. Per-row write `action` is Typesense-only
|
|
106
|
-
* vocabulary - callers needing it use `dataSource.getConnector().importDocuments(...)` directly. */
|
|
101
|
+
/** Bulk import through the neutral document facade. Per-row write `action` is Typesense-only vocabulary - callers needing it use `dataSource.getConnector().importDocuments(...)` directly. */
|
|
107
102
|
import(opts: {
|
|
108
103
|
documents: TDocument[];
|
|
109
104
|
batchSize?: number;
|
|
@@ -113,5 +108,19 @@ export declare class PersistableSearchRepository<TDocument extends object = obje
|
|
|
113
108
|
where?: TWhere;
|
|
114
109
|
shouldSkipDefaultFilter?: boolean;
|
|
115
110
|
}): string | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* The write-path filter as THREE outcomes, because two of them are catastrophically different
|
|
113
|
+
* here: `filterBy: undefined` means "no effective where", which `deleteAll` treats as licence to
|
|
114
|
+
* truncate when `force` is set. An absorbing where must never land there -
|
|
115
|
+
* `deleteAll({ where: { or: permittedIds.map(...) } })` on an EMPTY permission list has to
|
|
116
|
+
* delete nothing, not the entire collection. `matchNone` is what keeps the two apart.
|
|
117
|
+
*/
|
|
118
|
+
protected buildScopedFilter(opts: {
|
|
119
|
+
where?: TWhere;
|
|
120
|
+
shouldSkipDefaultFilter?: boolean;
|
|
121
|
+
}): {
|
|
122
|
+
filterBy?: string;
|
|
123
|
+
matchNone: boolean;
|
|
124
|
+
};
|
|
116
125
|
}
|
|
117
126
|
//# sourceMappingURL=persistable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistable.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/persistable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEhF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAa,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"persistable.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/persistable.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEhF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAa,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAOtD,iHAAiH;AACjH,qBAAa,2BAA2B,CACtC,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,WAAW,SAAS,wBAAwB,GAAG,wBAAwB,CACvE,SAAQ,wBAAwB,CAAC,SAAS,EAAE,WAAW,CAAC;gBAC5C,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAA;KAAE;IAKtF,MAAM,CAAC,IAAI,EAAE;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,OAAO,EAAE,aAAa,GAAG;YAAE,YAAY,EAAE,KAAK,CAAA;SAAE,CAAC;KAClD,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE,CAAC;IAEvC,MAAM,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE;QACnC,IAAI,EAAE,SAAS,CAAC;QAChB,OAAO,CAAC,EAAE,aAAa,GAAG;YAAE,YAAY,CAAC,EAAE,IAAI,CAAA;SAAE,CAAC;KACnD,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;IAqBxB,SAAS,CAAC,IAAI,EAAE;QACvB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACvB,OAAO,EAAE,aAAa,GAAG;YAAE,YAAY,EAAE,KAAK,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACtE,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE,CAAC;IAEvC,SAAS,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE;QACtC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACvB,OAAO,CAAC,EAAE,aAAa,GAAG;YAAE,YAAY,CAAC,EAAE,IAAI,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACvE,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;IA0B/B,UAAU,CAAC,IAAI,EAAE;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACzB,OAAO,EAAE,aAAa,GAAG;YAAE,YAAY,EAAE,KAAK,CAAA;SAAE,CAAC;KAClD,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE,CAAC;IAEvC,UAAU,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE;QACvC,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACzB,OAAO,CAAC,EAAE,aAAa,GAAG;YAAE,YAAY,CAAC,EAAE,IAAI,CAAA;SAAE,CAAC;KACnD,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;IAqCjC,mOAAmO;IACpN,SAAS,CAAC,IAAI,EAAE;QAC7B,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACzB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,GAAG;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KACrE,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;IA+B3B,UAAU,CAAC,IAAI,EAAE;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,aAAa,GAAG;YAAE,YAAY,EAAE,KAAK,CAAA;SAAE,CAAC;KAClD,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAA;KAAE,CAAC;IAEvC,UAAU,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE;QACvC,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,CAAC,EAAE,aAAa,GAAG;YAAE,YAAY,CAAC,EAAE,IAAI,CAAA;SAAE,CAAC;KACnD,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC;IAmCjC,+PAA+P;IAChP,SAAS,CAAC,IAAI,CAAC,EAAE;QAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,GAAG;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;KACrE,GAAG,OAAO,CAAC,MAAM,GAAG;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;IA+CpC,+LAA+L;IAC/L,MAAM,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAmB7F,+LAA+L;IAC/L,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE;QAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,uBAAuB,CAAC,EAAE,OAAO,CAAC;KACnC,GAAG,MAAM,GAAG,SAAS;IAItB;;;;;;OAMG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,uBAAuB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG;QACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,OAAO,CAAC;KACpB;CAUF"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PersistableSearchRepository = void 0;
|
|
4
|
-
const common_1 = require("../../../../common");
|
|
4
|
+
const common_1 = require("../../../../connectors/search/common");
|
|
5
5
|
const common_2 = require("../../../../base/repositories/common");
|
|
6
6
|
const ignis_helpers_1 = require("@venizia/ignis-helpers");
|
|
7
7
|
const readable_1 = require("./readable");
|
|
8
|
-
/** Narrows one `IImportResult.responses` row
|
|
9
|
-
* = unknown>`) enough to read the per-row `success` flag `createAll` filters on. */
|
|
8
|
+
/** Narrows one `unknown` `IImportResult.responses` row enough to read the per-row `success` flag `createAll` filters on. */
|
|
10
9
|
const isImportRowLike = (value) => {
|
|
11
10
|
return typeof value === 'object' && value !== null;
|
|
12
11
|
};
|
|
@@ -28,8 +27,7 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
28
27
|
}
|
|
29
28
|
return { count: 1, data: this.omitHiddenFields(created) };
|
|
30
29
|
}
|
|
31
|
-
/** Delegates to import(). Typesense's bulk import reports only per-row success/fail
|
|
32
|
-
* document), so "created" is just the caller's input rows filtered to the accepted ones. */
|
|
30
|
+
/** Delegates to import(). Typesense's bulk import reports only per-row success/fail with no echoed document, so "created" is the caller's input rows filtered to the accepted ones. */
|
|
33
31
|
async createAll(opts) {
|
|
34
32
|
this.assertNoTransaction(opts.options);
|
|
35
33
|
this.assertNoLock(opts.options);
|
|
@@ -42,8 +40,7 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
42
40
|
const response = rs.responses[index];
|
|
43
41
|
return isImportRowLike(response) ? response.success !== false : true;
|
|
44
42
|
});
|
|
45
|
-
// `created` is the caller's own input rows (bulk import echoes nothing back), so R is the
|
|
46
|
-
// caller's unchecked assertion here exactly as it is on the non-hidden path.
|
|
43
|
+
// `created` is the caller's own input rows (bulk import echoes nothing back), so R is the caller's unchecked assertion, as on the non-hidden path.
|
|
47
44
|
return { count: rs.count.success, data: this.omitHiddenFieldsAll(created) };
|
|
48
45
|
}
|
|
49
46
|
/** Guards against defaultWhere by re-reading via findById first (costs one read; skippable via shouldSkipDefaultFilter). A guard failure throws the same sanitized 404 as a missing document. */
|
|
@@ -55,8 +52,7 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
55
52
|
const found = await this.findById({ id, options });
|
|
56
53
|
if (!found) {
|
|
57
54
|
throw (0, ignis_helpers_1.getError)({
|
|
58
|
-
|
|
59
|
-
messageCode: common_1.SearchErrorCodes.NOT_FOUND,
|
|
55
|
+
error: common_1.SearchErrors.NOT_FOUND,
|
|
60
56
|
message: `[${this.constructor.name}][updateById] Document not found or excluded by the default filter | Collection: ${this.collectionName} | Id: ${id}`,
|
|
61
57
|
});
|
|
62
58
|
}
|
|
@@ -71,17 +67,20 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
71
67
|
}
|
|
72
68
|
return { count: 1, data: this.omitHiddenFields(updated) };
|
|
73
69
|
}
|
|
74
|
-
/** Count-only
|
|
75
|
-
* is always `null`, `shouldReturn` rejected at the type level. Callers wanting the affected
|
|
76
|
-
* documents read them explicitly before updating. */
|
|
70
|
+
/** Count-only: search engines have no RETURNING and no extra read is bolted on, so `data` is always `null` and `shouldReturn` is rejected at the type level - callers wanting the affected documents read them before updating. */
|
|
77
71
|
async updateAll(opts) {
|
|
78
72
|
this.assertNoTransaction(opts.options);
|
|
79
73
|
this.assertNoLock(opts.options);
|
|
80
74
|
const { data, where, options } = opts;
|
|
81
|
-
const filterBy = this.
|
|
75
|
+
const { filterBy, matchNone } = this.buildScopedFilter({
|
|
82
76
|
where,
|
|
83
77
|
shouldSkipDefaultFilter: options?.shouldSkipDefaultFilter,
|
|
84
78
|
});
|
|
79
|
+
// Checked BEFORE the undefined guard: an absorbing where selects no document, which is a
|
|
80
|
+
// well-formed request to update nothing - not the "no effective where" the guard refuses.
|
|
81
|
+
if (matchNone) {
|
|
82
|
+
return { count: 0, data: null };
|
|
83
|
+
}
|
|
85
84
|
if (filterBy === undefined) {
|
|
86
85
|
throw (0, ignis_helpers_1.getError)({
|
|
87
86
|
message: `[${this.constructor.name}][updateAll] DENY to perform | Collection: ${this.collectionName} | No effective where condition (no where and no @model defaultFilter) - refusing an unfiltered bulk update`,
|
|
@@ -113,26 +112,28 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
113
112
|
if (!didDelete) {
|
|
114
113
|
return { count: 0, data: null };
|
|
115
114
|
}
|
|
116
|
-
// Typesense's delete has no RETURNING equivalent - `data` is only
|
|
117
|
-
// defaultFilter guard above already read the document; no extra read is done purely for shouldReturn.
|
|
115
|
+
// Typesense's delete has no RETURNING equivalent - `data` is populated only when the defaultFilter guard above already read the document; no extra read is done for shouldReturn.
|
|
118
116
|
const data = options?.shouldReturn === false ? null : (found ?? null);
|
|
119
117
|
return { count: 1, data };
|
|
120
118
|
}
|
|
121
|
-
/** Count-only like updateAll
|
|
122
|
-
* collection only when neither where nor defaultFilter is present - truncate reports no
|
|
123
|
-
* per-document count, so that path returns { count: 0, data: null }. */
|
|
119
|
+
/** Count-only like updateAll: filter-delete when there is an effective where, truncating the whole collection only when neither where nor defaultFilter is present - truncate reports no per-document count, so that path returns { count: 0, data: null }. */
|
|
124
120
|
async deleteAll(opts) {
|
|
125
121
|
this.assertNoTransaction(opts?.options);
|
|
126
122
|
this.assertNoLock(opts?.options);
|
|
127
123
|
const logger = this.logger.for(this.deleteAll.name);
|
|
128
124
|
const { where, options } = opts ?? {};
|
|
129
|
-
const filterBy = this.
|
|
125
|
+
const { filterBy, matchNone } = this.buildScopedFilter({
|
|
130
126
|
where,
|
|
131
127
|
shouldSkipDefaultFilter: options?.shouldSkipDefaultFilter,
|
|
132
128
|
});
|
|
129
|
+
// Checked BEFORE the undefined guard, and the reason `matchNone` exists as a distinct outcome:
|
|
130
|
+
// an absorbing where selects no document. Collapsing it to `undefined` would enter the branch
|
|
131
|
+
// below and, with `force`, TRUNCATE the collection - the exact inversion of what was asked.
|
|
132
|
+
if (matchNone) {
|
|
133
|
+
return { count: 0, data: null };
|
|
134
|
+
}
|
|
133
135
|
if (filterBy === undefined) {
|
|
134
|
-
// `where: {}` compiles to NO filter; wiping a collection must be asked for explicitly,
|
|
135
|
-
// exactly as Postgres demands `force` for an empty-where delete.
|
|
136
|
+
// `where: {}` compiles to NO filter; wiping a collection must be asked for explicitly, exactly as Postgres demands `force` for an empty-where delete.
|
|
136
137
|
if (!options?.force) {
|
|
137
138
|
throw (0, ignis_helpers_1.getError)({
|
|
138
139
|
message: `[${this.constructor.name}][deleteAll] DENY to perform | Collection: ${this.collectionName} | No effective where condition (no where and no @model defaultFilter) - pass options.force to truncate the collection`,
|
|
@@ -150,8 +151,7 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
150
151
|
});
|
|
151
152
|
return { count: deletedCount, data: null };
|
|
152
153
|
}
|
|
153
|
-
/** Bulk import through the neutral document facade. Per-row write `action` is Typesense-only
|
|
154
|
-
* vocabulary - callers needing it use `dataSource.getConnector().importDocuments(...)` directly. */
|
|
154
|
+
/** Bulk import through the neutral document facade. Per-row write `action` is Typesense-only vocabulary - callers needing it use `dataSource.getConnector().importDocuments(...)` directly. */
|
|
155
155
|
import(opts) {
|
|
156
156
|
const { documents, batchSize } = opts;
|
|
157
157
|
const importOpts = {
|
|
@@ -165,12 +165,22 @@ class PersistableSearchRepository extends readable_1.ReadableSearchRepository {
|
|
|
165
165
|
}
|
|
166
166
|
/** Resolves filterBy, AND-merging defaultWhere unless shouldSkipDefaultFilter. Returns undefined when there's no effective where - callers decide (updateAll refuses; deleteAll truncates). */
|
|
167
167
|
buildFilterBy(opts) {
|
|
168
|
+
return this.buildScopedFilter(opts).filterBy;
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* The write-path filter as THREE outcomes, because two of them are catastrophically different
|
|
172
|
+
* here: `filterBy: undefined` means "no effective where", which `deleteAll` treats as licence to
|
|
173
|
+
* truncate when `force` is set. An absorbing where must never land there -
|
|
174
|
+
* `deleteAll({ where: { or: permittedIds.map(...) } })` on an EMPTY permission list has to
|
|
175
|
+
* delete nothing, not the entire collection. `matchNone` is what keeps the two apart.
|
|
176
|
+
*/
|
|
177
|
+
buildScopedFilter(opts) {
|
|
168
178
|
const { where, shouldSkipDefaultFilter } = opts;
|
|
169
179
|
const query = this.buildQuery({
|
|
170
180
|
filter: where !== undefined ? { where } : undefined,
|
|
171
181
|
shouldSkipDefaultFilter,
|
|
172
182
|
});
|
|
173
|
-
return query.filterBy;
|
|
183
|
+
return { filterBy: query.filterBy, matchNone: query.matchNone === true };
|
|
174
184
|
}
|
|
175
185
|
}
|
|
176
186
|
exports.PersistableSearchRepository = PersistableSearchRepository;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistable.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/persistable.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"persistable.js","sourceRoot":"","sources":["../../../../../src/connectors/search/repositories/core/persistable.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,13 @@ import type { IExtraOptions, TCount, TDataWithRange, TFilter, TFindOneOptions, T
|
|
|
3
3
|
import type { IdType } from '../../../../base/models';
|
|
4
4
|
import type { ISearchResult } from '../../../../connectors/search';
|
|
5
5
|
import type { TSearchInput } from '../../../../connectors/search/repositories/common';
|
|
6
|
+
import { SearchModes } from '../../../../connectors/search/repositories/common';
|
|
6
7
|
import type { AbstractSearchDataSource } from '../../../../connectors/search/datasources';
|
|
7
8
|
import { SearchBaseRepository } from './base';
|
|
9
|
+
/** The inputs the dialect translates - `raw` has already returned by the time these are resolved, and `applySearchInput` accepts only this narrowed union. */
|
|
10
|
+
type TTranslatableSearchInput = Exclude<TSearchInput, {
|
|
11
|
+
mode: typeof SearchModes.RAW;
|
|
12
|
+
}>;
|
|
8
13
|
/** Read-only search-repository tier - translates filters via the datasource's dialect and executes through the connector. */
|
|
9
14
|
export declare class ReadableSearchRepository<TDocument extends object = object, TDataSource extends AbstractSearchDataSource = AbstractSearchDataSource> extends SearchBaseRepository<TDocument, TDataSource> {
|
|
10
15
|
count(opts: {
|
|
@@ -27,17 +32,28 @@ export declare class ReadableSearchRepository<TDocument extends object = object,
|
|
|
27
32
|
filter: TFilter;
|
|
28
33
|
options?: TFindOneOptions<IExtraOptions, R>;
|
|
29
34
|
}): Promise<TNullable<R>>;
|
|
30
|
-
/**
|
|
35
|
+
/**
|
|
36
|
+
* Delegates to findOne with id in where - routing through buildQuery is what makes
|
|
37
|
+
* hiddenFields/defaultFilter apply, so a soft-deleted document resolves to null. `where` is spread
|
|
38
|
+
* away last so a projection can never widen the id lookup.
|
|
39
|
+
*/
|
|
31
40
|
findById<R = TDocument>(opts: {
|
|
32
41
|
id: IdType;
|
|
42
|
+
filter?: Omit<TFilter, 'where'>;
|
|
33
43
|
options?: TFindOneOptions<IExtraOptions, R>;
|
|
34
44
|
}): Promise<TNullable<R>>;
|
|
35
|
-
/**
|
|
36
|
-
*
|
|
37
|
-
*
|
|
45
|
+
/**
|
|
46
|
+
* Unified search entry discriminated by `mode`: `raw` is a full passthrough - no dialect, no
|
|
47
|
+
* defaultFilter, no hiddenFields - while keyword/semantic/hybrid translate through the dialect
|
|
48
|
+
* like `find()`. Nothing engine-specific lives here; `ISearchQueryDialect.applySearchInput`
|
|
49
|
+
* owns it.
|
|
50
|
+
*/
|
|
38
51
|
search<R extends object = TDocument>(opts: TSearchInput & {
|
|
39
52
|
options?: IExtraOptions;
|
|
40
53
|
}): Promise<ISearchResult<R>>;
|
|
54
|
+
protected withDefaultQueryBy(opts: {
|
|
55
|
+
input: TTranslatableSearchInput;
|
|
56
|
+
}): TTranslatableSearchInput;
|
|
41
57
|
/** @throws Error - disabled in a read-only repository; unlocked progressively by Persistable/DefaultSearchRepository. */
|
|
42
58
|
create(opts: {
|
|
43
59
|
data: TDocument;
|
|
@@ -91,7 +107,11 @@ export declare class ReadableSearchRepository<TDocument extends object = object,
|
|
|
91
107
|
}): Promise<TCount & {
|
|
92
108
|
data: R;
|
|
93
109
|
}>;
|
|
94
|
-
/**
|
|
110
|
+
/**
|
|
111
|
+
* @throws Error - disabled in a read-only repository. `where` is optional where the base contract
|
|
112
|
+
* requires it: the `@model` defaultFilter alone can supply the effective filter, and Persistable
|
|
113
|
+
* refuses the write outright when neither is present.
|
|
114
|
+
*/
|
|
95
115
|
updateAll(_opts: {
|
|
96
116
|
data: Partial<TDocument>;
|
|
97
117
|
where?: TWhere;
|
|
@@ -128,4 +148,5 @@ export declare class ReadableSearchRepository<TDocument extends object = object,
|
|
|
128
148
|
data: null;
|
|
129
149
|
}>;
|
|
130
150
|
}
|
|
151
|
+
export {};
|
|
131
152
|
//# sourceMappingURL=readable.d.ts.map
|