@warlock.js/cascade 4.0.48 → 4.0.59
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/cjs/context/database-data-source-context.d.ts +29 -0
- package/cjs/context/database-data-source-context.d.ts.map +1 -0
- package/cjs/context/database-data-source-context.js +28 -0
- package/cjs/context/database-data-source-context.js.map +1 -0
- package/cjs/context/database-transaction-context.d.ts +31 -0
- package/cjs/context/database-transaction-context.d.ts.map +1 -0
- package/cjs/context/database-transaction-context.js +34 -0
- package/cjs/context/database-transaction-context.js.map +1 -0
- package/cjs/contracts/database-driver.contract.d.ts +143 -0
- package/cjs/contracts/database-driver.contract.d.ts.map +1 -0
- package/cjs/contracts/database-id-generator.contract.d.ts +109 -0
- package/cjs/contracts/database-id-generator.contract.d.ts.map +1 -0
- package/cjs/contracts/database-remover.contract.d.ts +104 -0
- package/cjs/contracts/database-remover.contract.d.ts.map +1 -0
- package/cjs/contracts/database-restorer.contract.d.ts +143 -0
- package/cjs/contracts/database-restorer.contract.d.ts.map +1 -0
- package/cjs/contracts/database-writer.contract.d.ts +119 -0
- package/cjs/contracts/database-writer.contract.d.ts.map +1 -0
- package/cjs/contracts/driver-blueprint.contract.d.ts +45 -0
- package/cjs/contracts/driver-blueprint.contract.d.ts.map +1 -0
- package/cjs/contracts/index.d.ts +10 -0
- package/cjs/contracts/index.d.ts.map +1 -0
- package/cjs/contracts/migration-driver.contract.d.ts +365 -0
- package/cjs/contracts/migration-driver.contract.d.ts.map +1 -0
- package/cjs/contracts/query-builder.contract.d.ts +1128 -0
- package/cjs/contracts/query-builder.contract.d.ts.map +1 -0
- package/cjs/contracts/sync-adapter.contract.d.ts +58 -0
- package/cjs/contracts/sync-adapter.contract.d.ts.map +1 -0
- package/cjs/data-source/data-source-registry.d.ts +104 -0
- package/cjs/data-source/data-source-registry.d.ts.map +1 -0
- package/cjs/data-source/data-source-registry.js +138 -0
- package/cjs/data-source/data-source-registry.js.map +1 -0
- package/cjs/data-source/data-source.d.ts +106 -0
- package/cjs/data-source/data-source.d.ts.map +1 -0
- package/cjs/data-source/data-source.js +77 -0
- package/cjs/data-source/data-source.js.map +1 -0
- package/cjs/database-dirty-tracker.d.ts +253 -0
- package/cjs/database-dirty-tracker.d.ts.map +1 -0
- package/cjs/database-dirty-tracker.js +389 -0
- package/cjs/database-dirty-tracker.js.map +1 -0
- package/cjs/drivers/mongo/mongo-id-generator.d.ts +116 -0
- package/cjs/drivers/mongo/mongo-id-generator.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongo-id-generator.js +149 -0
- package/cjs/drivers/mongo/mongo-id-generator.js.map +1 -0
- package/cjs/drivers/mongo/mongo-migration-driver.d.ts +228 -0
- package/cjs/drivers/mongo/mongo-migration-driver.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongo-migration-driver.js +524 -0
- package/cjs/drivers/mongo/mongo-migration-driver.js.map +1 -0
- package/cjs/drivers/mongo/mongo-query-builder.d.ts +922 -0
- package/cjs/drivers/mongo/mongo-query-builder.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongo-query-builder.js +1740 -0
- package/cjs/drivers/mongo/mongo-query-builder.js.map +1 -0
- package/cjs/drivers/mongo/mongo-query-operations.d.ts +226 -0
- package/cjs/drivers/mongo/mongo-query-operations.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongo-query-operations.js +270 -0
- package/cjs/drivers/mongo/mongo-query-operations.js.map +1 -0
- package/cjs/drivers/mongo/mongo-query-parser.d.ts +262 -0
- package/cjs/drivers/mongo/mongo-query-parser.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongo-query-parser.js +1351 -0
- package/cjs/drivers/mongo/mongo-query-parser.js.map +1 -0
- package/cjs/drivers/mongo/mongo-sync-adapter.d.ts +79 -0
- package/cjs/drivers/mongo/mongo-sync-adapter.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongo-sync-adapter.js +146 -0
- package/cjs/drivers/mongo/mongo-sync-adapter.js.map +1 -0
- package/cjs/drivers/mongo/mongodb-blueprint.d.ts +30 -0
- package/cjs/drivers/mongo/mongodb-blueprint.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongodb-blueprint.js +51 -0
- package/cjs/drivers/mongo/mongodb-blueprint.js.map +1 -0
- package/cjs/drivers/mongo/mongodb-driver.d.ts +188 -0
- package/cjs/drivers/mongo/mongodb-driver.d.ts.map +1 -0
- package/cjs/drivers/mongo/mongodb-driver.js +411 -0
- package/cjs/drivers/mongo/mongodb-driver.js.map +1 -0
- package/cjs/drivers/mongo/types.d.ts +43 -0
- package/cjs/drivers/mongo/types.d.ts.map +1 -0
- package/cjs/errors/missing-data-source.error.d.ts +22 -0
- package/cjs/errors/missing-data-source.error.d.ts.map +1 -0
- package/cjs/errors/missing-data-source.error.js +29 -0
- package/cjs/errors/missing-data-source.error.js.map +1 -0
- package/cjs/events/model-events.d.ts +231 -0
- package/cjs/events/model-events.d.ts.map +1 -0
- package/cjs/events/model-events.js +259 -0
- package/cjs/events/model-events.js.map +1 -0
- package/cjs/expressions/aggregate-expressions.d.ts +215 -0
- package/cjs/expressions/aggregate-expressions.d.ts.map +1 -0
- package/cjs/expressions/aggregate-expressions.js +221 -0
- package/cjs/expressions/aggregate-expressions.js.map +1 -0
- package/cjs/expressions/index.d.ts +2 -0
- package/cjs/expressions/index.d.ts.map +1 -0
- package/cjs/index.d.ts +41 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +1 -267
- package/cjs/index.js.map +1 -1
- package/cjs/migration/column-builder.d.ts +167 -0
- package/cjs/migration/column-builder.d.ts.map +1 -0
- package/cjs/migration/column-builder.js +217 -0
- package/cjs/migration/column-builder.js.map +1 -0
- package/cjs/migration/foreign-key-builder.d.ts +110 -0
- package/cjs/migration/foreign-key-builder.d.ts.map +1 -0
- package/cjs/migration/foreign-key-builder.js +129 -0
- package/cjs/migration/foreign-key-builder.js.map +1 -0
- package/cjs/migration/index.d.ts +6 -0
- package/cjs/migration/index.d.ts.map +1 -0
- package/cjs/migration/migration-runner.d.ts +231 -0
- package/cjs/migration/migration-runner.d.ts.map +1 -0
- package/cjs/migration/migration-runner.js +443 -0
- package/cjs/migration/migration-runner.js.map +1 -0
- package/cjs/migration/migration.js +1346 -0
- package/cjs/migration/migration.js.map +1 -0
- package/cjs/migration/types.d.ts +132 -0
- package/cjs/migration/types.d.ts.map +1 -0
- package/cjs/model/model.d.ts +1267 -0
- package/cjs/model/model.d.ts.map +1 -0
- package/cjs/model/model.js +1463 -0
- package/cjs/model/model.js.map +1 -0
- package/cjs/model/register-model.d.ts +80 -0
- package/cjs/model/register-model.d.ts.map +1 -0
- package/cjs/model/register-model.js +91 -0
- package/cjs/model/register-model.js.map +1 -0
- package/cjs/remover/database-remover.d.ts +100 -0
- package/cjs/remover/database-remover.d.ts.map +1 -0
- package/cjs/remover/database-remover.js +209 -0
- package/cjs/remover/database-remover.js.map +1 -0
- package/cjs/restorer/database-restorer.d.ts +131 -0
- package/cjs/restorer/database-restorer.d.ts.map +1 -0
- package/cjs/restorer/database-restorer.js +425 -0
- package/cjs/restorer/database-restorer.js.map +1 -0
- package/cjs/sync/index.d.ts +12 -0
- package/cjs/sync/index.d.ts.map +1 -0
- package/cjs/sync/model-events.d.ts +62 -0
- package/cjs/sync/model-events.d.ts.map +1 -0
- package/cjs/sync/model-events.js +49 -0
- package/cjs/sync/model-events.js.map +1 -0
- package/cjs/sync/model-sync-operation.d.ts +163 -0
- package/cjs/sync/model-sync-operation.d.ts.map +1 -0
- package/cjs/sync/model-sync-operation.js +292 -0
- package/cjs/sync/model-sync-operation.js.map +1 -0
- package/cjs/sync/model-sync.d.ts +130 -0
- package/cjs/sync/model-sync.d.ts.map +1 -0
- package/cjs/sync/model-sync.js +178 -0
- package/cjs/sync/model-sync.js.map +1 -0
- package/cjs/sync/sync-context.d.ts +70 -0
- package/cjs/sync/sync-context.d.ts.map +1 -0
- package/cjs/sync/sync-context.js +101 -0
- package/cjs/sync/sync-context.js.map +1 -0
- package/cjs/sync/sync-manager.d.ts +213 -0
- package/cjs/sync/sync-manager.d.ts.map +1 -0
- package/cjs/sync/sync-manager.js +689 -0
- package/cjs/sync/sync-manager.js.map +1 -0
- package/cjs/sync/types.d.ts +289 -0
- package/cjs/sync/types.d.ts.map +1 -0
- package/cjs/types.d.ts +45 -0
- package/cjs/types.d.ts.map +1 -0
- package/cjs/utils/connect-to-database.d.ts +246 -0
- package/cjs/utils/connect-to-database.d.ts.map +1 -0
- package/cjs/utils/connect-to-database.js +92 -0
- package/cjs/utils/connect-to-database.js.map +1 -0
- package/cjs/utils/database-writer.utils.d.ts +15 -0
- package/cjs/utils/database-writer.utils.d.ts.map +1 -0
- package/cjs/utils/database-writer.utils.js +14 -0
- package/cjs/utils/database-writer.utils.js.map +1 -0
- package/cjs/utils/define-model.js +100 -0
- package/cjs/utils/define-model.js.map +1 -0
- package/cjs/utils/once-connected.d.ts +146 -0
- package/cjs/utils/once-connected.d.ts.map +1 -0
- package/cjs/utils/once-connected.js +252 -0
- package/cjs/utils/once-connected.js.map +1 -0
- package/cjs/validation/database-seal-plugins.d.ts +2 -0
- package/cjs/validation/database-seal-plugins.d.ts.map +1 -0
- package/cjs/validation/database-seal-plugins.js +4 -0
- package/cjs/validation/database-seal-plugins.js.map +1 -0
- package/cjs/validation/database-writer-validation-error.d.ts +97 -0
- package/cjs/validation/database-writer-validation-error.d.ts.map +1 -0
- package/cjs/validation/database-writer-validation-error.js +160 -0
- package/cjs/validation/database-writer-validation-error.js.map +1 -0
- package/cjs/validation/index.d.ts +3 -0
- package/cjs/validation/index.d.ts.map +1 -0
- package/cjs/validation/mutators/embed-mutator.d.ts +9 -0
- package/cjs/validation/mutators/embed-mutator.d.ts.map +1 -0
- package/cjs/validation/mutators/embed-mutator.js +33 -0
- package/cjs/validation/mutators/embed-mutator.js.map +1 -0
- package/cjs/validation/plugins/embed-validator-plugin.d.ts +24 -0
- package/cjs/validation/plugins/embed-validator-plugin.d.ts.map +1 -0
- package/cjs/validation/plugins/embed-validator-plugin.js +18 -0
- package/cjs/validation/plugins/embed-validator-plugin.js.map +1 -0
- package/cjs/validation/rules/database-model-rule.d.ts +7 -0
- package/cjs/validation/rules/database-model-rule.d.ts.map +1 -0
- package/cjs/validation/rules/database-model-rule.js +27 -0
- package/cjs/validation/rules/database-model-rule.js.map +1 -0
- package/cjs/validation/transformers/embed-model-transformer.d.ts +3 -0
- package/cjs/validation/transformers/embed-model-transformer.d.ts.map +1 -0
- package/cjs/validation/transformers/embed-model-transformer.js +18 -0
- package/cjs/validation/transformers/embed-model-transformer.js.map +1 -0
- package/cjs/validation/validators/embed-validator.d.ts +21 -0
- package/cjs/validation/validators/embed-validator.d.ts.map +1 -0
- package/cjs/validation/validators/embed-validator.js +42 -0
- package/cjs/validation/validators/embed-validator.js.map +1 -0
- package/cjs/writer/database-writer.d.ts +181 -0
- package/cjs/writer/database-writer.d.ts.map +1 -0
- package/cjs/writer/database-writer.js +402 -0
- package/cjs/writer/database-writer.js.map +1 -0
- package/esm/context/database-data-source-context.d.ts +29 -0
- package/esm/context/database-data-source-context.d.ts.map +1 -0
- package/esm/context/database-data-source-context.js +28 -0
- package/esm/context/database-data-source-context.js.map +1 -0
- package/esm/context/database-transaction-context.d.ts +31 -0
- package/esm/context/database-transaction-context.d.ts.map +1 -0
- package/esm/context/database-transaction-context.js +34 -0
- package/esm/context/database-transaction-context.js.map +1 -0
- package/esm/contracts/database-driver.contract.d.ts +143 -0
- package/esm/contracts/database-driver.contract.d.ts.map +1 -0
- package/esm/contracts/database-id-generator.contract.d.ts +109 -0
- package/esm/contracts/database-id-generator.contract.d.ts.map +1 -0
- package/esm/contracts/database-remover.contract.d.ts +104 -0
- package/esm/contracts/database-remover.contract.d.ts.map +1 -0
- package/esm/contracts/database-restorer.contract.d.ts +143 -0
- package/esm/contracts/database-restorer.contract.d.ts.map +1 -0
- package/esm/contracts/database-writer.contract.d.ts +119 -0
- package/esm/contracts/database-writer.contract.d.ts.map +1 -0
- package/esm/contracts/driver-blueprint.contract.d.ts +45 -0
- package/esm/contracts/driver-blueprint.contract.d.ts.map +1 -0
- package/esm/contracts/index.d.ts +10 -0
- package/esm/contracts/index.d.ts.map +1 -0
- package/esm/contracts/migration-driver.contract.d.ts +365 -0
- package/esm/contracts/migration-driver.contract.d.ts.map +1 -0
- package/esm/contracts/query-builder.contract.d.ts +1128 -0
- package/esm/contracts/query-builder.contract.d.ts.map +1 -0
- package/esm/contracts/sync-adapter.contract.d.ts +58 -0
- package/esm/contracts/sync-adapter.contract.d.ts.map +1 -0
- package/esm/data-source/data-source-registry.d.ts +104 -0
- package/esm/data-source/data-source-registry.d.ts.map +1 -0
- package/esm/data-source/data-source-registry.js +138 -0
- package/esm/data-source/data-source-registry.js.map +1 -0
- package/esm/data-source/data-source.d.ts +106 -0
- package/esm/data-source/data-source.d.ts.map +1 -0
- package/esm/data-source/data-source.js +77 -0
- package/esm/data-source/data-source.js.map +1 -0
- package/esm/database-dirty-tracker.d.ts +253 -0
- package/esm/database-dirty-tracker.d.ts.map +1 -0
- package/esm/database-dirty-tracker.js +389 -0
- package/esm/database-dirty-tracker.js.map +1 -0
- package/esm/drivers/mongo/mongo-id-generator.d.ts +116 -0
- package/esm/drivers/mongo/mongo-id-generator.d.ts.map +1 -0
- package/esm/drivers/mongo/mongo-id-generator.js +149 -0
- package/esm/drivers/mongo/mongo-id-generator.js.map +1 -0
- package/esm/drivers/mongo/mongo-migration-driver.d.ts +228 -0
- package/esm/drivers/mongo/mongo-migration-driver.d.ts.map +1 -0
- package/esm/drivers/mongo/mongo-migration-driver.js +524 -0
- package/esm/drivers/mongo/mongo-migration-driver.js.map +1 -0
- package/esm/drivers/mongo/mongo-query-builder.d.ts +922 -0
- package/esm/drivers/mongo/mongo-query-builder.d.ts.map +1 -0
- package/esm/drivers/mongo/mongo-query-builder.js +1740 -0
- package/esm/drivers/mongo/mongo-query-builder.js.map +1 -0
- package/esm/drivers/mongo/mongo-query-operations.d.ts +226 -0
- package/esm/drivers/mongo/mongo-query-operations.d.ts.map +1 -0
- package/esm/drivers/mongo/mongo-query-operations.js +270 -0
- package/esm/drivers/mongo/mongo-query-operations.js.map +1 -0
- package/esm/drivers/mongo/mongo-query-parser.d.ts +262 -0
- package/esm/drivers/mongo/mongo-query-parser.d.ts.map +1 -0
- package/esm/drivers/mongo/mongo-query-parser.js +1351 -0
- package/esm/drivers/mongo/mongo-query-parser.js.map +1 -0
- package/esm/drivers/mongo/mongo-sync-adapter.d.ts +79 -0
- package/esm/drivers/mongo/mongo-sync-adapter.d.ts.map +1 -0
- package/esm/drivers/mongo/mongo-sync-adapter.js +146 -0
- package/esm/drivers/mongo/mongo-sync-adapter.js.map +1 -0
- package/esm/drivers/mongo/mongodb-blueprint.d.ts +30 -0
- package/esm/drivers/mongo/mongodb-blueprint.d.ts.map +1 -0
- package/esm/drivers/mongo/mongodb-blueprint.js +51 -0
- package/esm/drivers/mongo/mongodb-blueprint.js.map +1 -0
- package/esm/drivers/mongo/mongodb-driver.d.ts +188 -0
- package/esm/drivers/mongo/mongodb-driver.d.ts.map +1 -0
- package/esm/drivers/mongo/mongodb-driver.js +411 -0
- package/esm/drivers/mongo/mongodb-driver.js.map +1 -0
- package/esm/drivers/mongo/types.d.ts +43 -0
- package/esm/drivers/mongo/types.d.ts.map +1 -0
- package/esm/errors/missing-data-source.error.d.ts +22 -0
- package/esm/errors/missing-data-source.error.d.ts.map +1 -0
- package/esm/errors/missing-data-source.error.js +29 -0
- package/esm/errors/missing-data-source.error.js.map +1 -0
- package/esm/events/model-events.d.ts +231 -0
- package/esm/events/model-events.d.ts.map +1 -0
- package/esm/events/model-events.js +259 -0
- package/esm/events/model-events.js.map +1 -0
- package/esm/expressions/aggregate-expressions.d.ts +215 -0
- package/esm/expressions/aggregate-expressions.d.ts.map +1 -0
- package/esm/expressions/aggregate-expressions.js +221 -0
- package/esm/expressions/aggregate-expressions.js.map +1 -0
- package/esm/expressions/index.d.ts +2 -0
- package/esm/expressions/index.d.ts.map +1 -0
- package/esm/index.d.ts +41 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +1 -40
- package/esm/index.js.map +1 -1
- package/esm/migration/column-builder.d.ts +167 -0
- package/esm/migration/column-builder.d.ts.map +1 -0
- package/esm/migration/column-builder.js +217 -0
- package/esm/migration/column-builder.js.map +1 -0
- package/esm/migration/foreign-key-builder.d.ts +110 -0
- package/esm/migration/foreign-key-builder.d.ts.map +1 -0
- package/esm/migration/foreign-key-builder.js +129 -0
- package/esm/migration/foreign-key-builder.js.map +1 -0
- package/esm/migration/index.d.ts +6 -0
- package/esm/migration/index.d.ts.map +1 -0
- package/esm/migration/migration-runner.d.ts +231 -0
- package/esm/migration/migration-runner.d.ts.map +1 -0
- package/esm/migration/migration-runner.js +443 -0
- package/esm/migration/migration-runner.js.map +1 -0
- package/esm/migration/migration.js +1346 -0
- package/esm/migration/migration.js.map +1 -0
- package/esm/migration/types.d.ts +132 -0
- package/esm/migration/types.d.ts.map +1 -0
- package/esm/model/model.d.ts +1267 -0
- package/esm/model/model.d.ts.map +1 -0
- package/esm/model/model.js +1463 -0
- package/esm/model/model.js.map +1 -0
- package/esm/model/register-model.d.ts +80 -0
- package/esm/model/register-model.d.ts.map +1 -0
- package/esm/model/register-model.js +91 -0
- package/esm/model/register-model.js.map +1 -0
- package/esm/remover/database-remover.d.ts +100 -0
- package/esm/remover/database-remover.d.ts.map +1 -0
- package/esm/remover/database-remover.js +209 -0
- package/esm/remover/database-remover.js.map +1 -0
- package/esm/restorer/database-restorer.d.ts +131 -0
- package/esm/restorer/database-restorer.d.ts.map +1 -0
- package/esm/restorer/database-restorer.js +425 -0
- package/esm/restorer/database-restorer.js.map +1 -0
- package/esm/sync/index.d.ts +12 -0
- package/esm/sync/index.d.ts.map +1 -0
- package/esm/sync/model-events.d.ts +62 -0
- package/esm/sync/model-events.d.ts.map +1 -0
- package/esm/sync/model-events.js +49 -0
- package/esm/sync/model-events.js.map +1 -0
- package/esm/sync/model-sync-operation.d.ts +163 -0
- package/esm/sync/model-sync-operation.d.ts.map +1 -0
- package/esm/sync/model-sync-operation.js +292 -0
- package/esm/sync/model-sync-operation.js.map +1 -0
- package/esm/sync/model-sync.d.ts +130 -0
- package/esm/sync/model-sync.d.ts.map +1 -0
- package/esm/sync/model-sync.js +178 -0
- package/esm/sync/model-sync.js.map +1 -0
- package/esm/sync/sync-context.d.ts +70 -0
- package/esm/sync/sync-context.d.ts.map +1 -0
- package/esm/sync/sync-context.js +101 -0
- package/esm/sync/sync-context.js.map +1 -0
- package/esm/sync/sync-manager.d.ts +213 -0
- package/esm/sync/sync-manager.d.ts.map +1 -0
- package/esm/sync/sync-manager.js +689 -0
- package/esm/sync/sync-manager.js.map +1 -0
- package/esm/sync/types.d.ts +289 -0
- package/esm/sync/types.d.ts.map +1 -0
- package/esm/types.d.ts +45 -0
- package/esm/types.d.ts.map +1 -0
- package/esm/utils/connect-to-database.d.ts +246 -0
- package/esm/utils/connect-to-database.d.ts.map +1 -0
- package/esm/utils/connect-to-database.js +92 -0
- package/esm/utils/connect-to-database.js.map +1 -0
- package/esm/utils/database-writer.utils.d.ts +15 -0
- package/esm/utils/database-writer.utils.d.ts.map +1 -0
- package/esm/utils/database-writer.utils.js +14 -0
- package/esm/utils/database-writer.utils.js.map +1 -0
- package/esm/utils/define-model.js +100 -0
- package/esm/utils/define-model.js.map +1 -0
- package/esm/utils/once-connected.d.ts +146 -0
- package/esm/utils/once-connected.d.ts.map +1 -0
- package/esm/utils/once-connected.js +252 -0
- package/esm/utils/once-connected.js.map +1 -0
- package/esm/validation/database-seal-plugins.d.ts +2 -0
- package/esm/validation/database-seal-plugins.d.ts.map +1 -0
- package/esm/validation/database-seal-plugins.js +4 -0
- package/esm/validation/database-seal-plugins.js.map +1 -0
- package/esm/validation/database-writer-validation-error.d.ts +97 -0
- package/esm/validation/database-writer-validation-error.d.ts.map +1 -0
- package/esm/validation/database-writer-validation-error.js +160 -0
- package/esm/validation/database-writer-validation-error.js.map +1 -0
- package/esm/validation/index.d.ts +3 -0
- package/esm/validation/index.d.ts.map +1 -0
- package/esm/validation/mutators/embed-mutator.d.ts +9 -0
- package/esm/validation/mutators/embed-mutator.d.ts.map +1 -0
- package/esm/validation/mutators/embed-mutator.js +33 -0
- package/esm/validation/mutators/embed-mutator.js.map +1 -0
- package/esm/validation/plugins/embed-validator-plugin.d.ts +24 -0
- package/esm/validation/plugins/embed-validator-plugin.d.ts.map +1 -0
- package/esm/validation/plugins/embed-validator-plugin.js +18 -0
- package/esm/validation/plugins/embed-validator-plugin.js.map +1 -0
- package/esm/validation/rules/database-model-rule.d.ts +7 -0
- package/esm/validation/rules/database-model-rule.d.ts.map +1 -0
- package/esm/validation/rules/database-model-rule.js +27 -0
- package/esm/validation/rules/database-model-rule.js.map +1 -0
- package/esm/validation/transformers/embed-model-transformer.d.ts +3 -0
- package/esm/validation/transformers/embed-model-transformer.d.ts.map +1 -0
- package/esm/validation/transformers/embed-model-transformer.js +18 -0
- package/esm/validation/transformers/embed-model-transformer.js.map +1 -0
- package/esm/validation/validators/embed-validator.d.ts +21 -0
- package/esm/validation/validators/embed-validator.d.ts.map +1 -0
- package/esm/validation/validators/embed-validator.js +42 -0
- package/esm/validation/validators/embed-validator.js.map +1 -0
- package/esm/writer/database-writer.d.ts +181 -0
- package/esm/writer/database-writer.d.ts.map +1 -0
- package/esm/writer/database-writer.js +402 -0
- package/esm/writer/database-writer.js.map +1 -0
- package/package.json +61 -52
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-builder.contract.d.ts","sourceRoot":"","sources":["../../src/contracts/query-builder.contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instruction for a sync operation.
|
|
3
|
+
* Contains all information needed to perform a sync update.
|
|
4
|
+
*/
|
|
5
|
+
export type SyncInstruction = {
|
|
6
|
+
/** Target table/collection name */
|
|
7
|
+
targetTable: string;
|
|
8
|
+
/** Target model name */
|
|
9
|
+
targetModel: string;
|
|
10
|
+
/** Filter to identify documents to update */
|
|
11
|
+
filter: Record<string, unknown>;
|
|
12
|
+
/** Update operations to apply */
|
|
13
|
+
update: Record<string, unknown>;
|
|
14
|
+
/** Current depth in the sync chain */
|
|
15
|
+
depth: number;
|
|
16
|
+
/** Chain of model names leading to this instruction */
|
|
17
|
+
chain: string[];
|
|
18
|
+
/** Source model name */
|
|
19
|
+
sourceModel: string;
|
|
20
|
+
/** Source model ID */
|
|
21
|
+
sourceId: string | number;
|
|
22
|
+
/** Whether this is an array update (requires positional operator) */
|
|
23
|
+
isArrayUpdate?: boolean;
|
|
24
|
+
/** Array field path for positional updates */
|
|
25
|
+
arrayField?: string;
|
|
26
|
+
/** Identifier field for array matching */
|
|
27
|
+
identifierField?: string;
|
|
28
|
+
/** Identifier value for array matching */
|
|
29
|
+
identifierValue?: string | number;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Contract for database-specific sync adapters.
|
|
33
|
+
* Handles the execution of sync operations at the driver level.
|
|
34
|
+
*/
|
|
35
|
+
export interface SyncAdapterContract {
|
|
36
|
+
/**
|
|
37
|
+
* Executes a batch of sync instructions.
|
|
38
|
+
*
|
|
39
|
+
* @param instructions - Array of sync instructions to execute
|
|
40
|
+
* @returns Number of documents affected
|
|
41
|
+
*/
|
|
42
|
+
executeBatch(instructions: SyncInstruction[]): Promise<number>;
|
|
43
|
+
/**
|
|
44
|
+
* Executes a single sync instruction.
|
|
45
|
+
*
|
|
46
|
+
* @param instruction - The sync instruction to execute
|
|
47
|
+
* @returns Number of documents affected
|
|
48
|
+
*/
|
|
49
|
+
executeOne(instruction: SyncInstruction): Promise<number>;
|
|
50
|
+
/**
|
|
51
|
+
* Executes an array update instruction with positional operators.
|
|
52
|
+
*
|
|
53
|
+
* @param instruction - The sync instruction with array update info
|
|
54
|
+
* @returns Number of documents affected
|
|
55
|
+
*/
|
|
56
|
+
executeArrayUpdate(instruction: SyncInstruction): Promise<number>;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=sync-adapter.contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-adapter.contract.d.ts","sourceRoot":"","sources":["../../src/contracts/sync-adapter.contract.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IAEpB,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IAEpB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEhC,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEhC,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IAEd,uDAAuD;IACvD,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IAEpB,sBAAsB;IACtB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B,qEAAqE;IACrE,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,0CAA0C;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,0CAA0C;IAC1C,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,YAAY,CAAC,YAAY,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE/D;;;;;OAKG;IACH,UAAU,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1D;;;;;OAKG;IACH,kBAAkB,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACnE"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { DataSource, type DataSourceOptions } from "./data-source";
|
|
2
|
+
/**
|
|
3
|
+
* Event types emitted by the DataSourceRegistry.
|
|
4
|
+
*
|
|
5
|
+
* - `registered`: Emitted when any data source is registered
|
|
6
|
+
* - `default-registered`: Emitted when a default data source is registered
|
|
7
|
+
* - `connected`: Emitted when a data source's driver connects
|
|
8
|
+
* - `disconnected`: Emitted when a data source's driver disconnects
|
|
9
|
+
*/
|
|
10
|
+
export type DataSourceRegistryEvent = "registered" | "default-registered" | "connected" | "disconnected";
|
|
11
|
+
/**
|
|
12
|
+
* Callback signature for registry events.
|
|
13
|
+
*/
|
|
14
|
+
export type DataSourceRegistryListener = (dataSource: DataSource) => void;
|
|
15
|
+
/** Maintains registry of named data sources. */
|
|
16
|
+
declare class DataSourceRegistry {
|
|
17
|
+
private readonly sources;
|
|
18
|
+
private defaultSource?;
|
|
19
|
+
private readonly events;
|
|
20
|
+
/**
|
|
21
|
+
* Register a new data source definition.
|
|
22
|
+
*
|
|
23
|
+
* Sets up event forwarding from the driver to the registry, allowing
|
|
24
|
+
* centralized listening for connection state changes.
|
|
25
|
+
*
|
|
26
|
+
* **Emits:**
|
|
27
|
+
* - `registered` - When the data source is registered
|
|
28
|
+
* - `default-registered` - If this becomes the default data source
|
|
29
|
+
* - `connected` - When the driver connects (forwarded from driver)
|
|
30
|
+
* - `disconnected` - When the driver disconnects (forwarded from driver)
|
|
31
|
+
*
|
|
32
|
+
* @param options - Data source configuration
|
|
33
|
+
* @returns The registered data source instance
|
|
34
|
+
*/
|
|
35
|
+
register(options: DataSourceOptions): DataSource;
|
|
36
|
+
/**
|
|
37
|
+
* Listen for data source registry events.
|
|
38
|
+
*
|
|
39
|
+
* @param event - The event to listen for
|
|
40
|
+
* @param listener - Callback to execute when event fires
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* // Listen for registration
|
|
45
|
+
* dataSourceRegistry.on("registered", (ds) => {
|
|
46
|
+
* console.log(`Data source "${ds.name}" registered`);
|
|
47
|
+
* console.log(`Driver: ${ds.driver.name}`); // e.g., "mongodb"
|
|
48
|
+
* });
|
|
49
|
+
*
|
|
50
|
+
* // Listen for default data source
|
|
51
|
+
* dataSourceRegistry.on("default-registered", (ds) => {
|
|
52
|
+
* console.log(`Default data source set to "${ds.name}"`);
|
|
53
|
+
* });
|
|
54
|
+
*
|
|
55
|
+
* // Listen for connection events (forwarded from drivers)
|
|
56
|
+
* dataSourceRegistry.on("connected", (ds) => {
|
|
57
|
+
* console.log(`${ds.driver.name} data source "${ds.name}" connected`);
|
|
58
|
+
* });
|
|
59
|
+
*
|
|
60
|
+
* dataSourceRegistry.on("disconnected", (ds) => {
|
|
61
|
+
* console.log(`${ds.driver.name} data source "${ds.name}" disconnected`);
|
|
62
|
+
* });
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
on(event: DataSourceRegistryEvent, listener: DataSourceRegistryListener): void;
|
|
66
|
+
/**
|
|
67
|
+
* Listen for a data source registration event once.
|
|
68
|
+
*
|
|
69
|
+
* The listener is automatically removed after being called once.
|
|
70
|
+
*
|
|
71
|
+
* @param event - The event to listen for
|
|
72
|
+
* @param listener - Callback to execute when event fires
|
|
73
|
+
*/
|
|
74
|
+
once(event: DataSourceRegistryEvent, listener: DataSourceRegistryListener): void;
|
|
75
|
+
/**
|
|
76
|
+
* Remove a listener for a data source registration event.
|
|
77
|
+
*
|
|
78
|
+
* @param event - The event to stop listening for
|
|
79
|
+
* @param listener - The listener to remove
|
|
80
|
+
*/
|
|
81
|
+
off(event: DataSourceRegistryEvent, listener: DataSourceRegistryListener): void;
|
|
82
|
+
/** Retrieve a data source either by name or the default one. */
|
|
83
|
+
get(name?: string): DataSource;
|
|
84
|
+
/**
|
|
85
|
+
* Get all registered data sources.
|
|
86
|
+
*
|
|
87
|
+
* Useful for operations that need to iterate over all sources,
|
|
88
|
+
* such as shutting down all connections.
|
|
89
|
+
*
|
|
90
|
+
* @returns Array of all registered data sources
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```typescript
|
|
94
|
+
* // Shutdown all data sources
|
|
95
|
+
* for (const dataSource of dataSourceRegistry.getAllDataSources()) {
|
|
96
|
+
* await dataSource.driver.disconnect();
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
getAllDataSources(): DataSource[];
|
|
101
|
+
}
|
|
102
|
+
export declare const dataSourceRegistry: DataSourceRegistry;
|
|
103
|
+
export {};
|
|
104
|
+
//# sourceMappingURL=data-source-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-source-registry.d.ts","sourceRoot":"","sources":["../../src/data-source/data-source-registry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEnE;;;;;;;GAOG;AACH,MAAM,MAAM,uBAAuB,GAC/B,YAAY,GACZ,oBAAoB,GACpB,WAAW,GACX,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;AAE1E,gDAAgD;AAChD,cAAM,kBAAkB;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,OAAO,CAAC,aAAa,CAAC,CAAa;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C;;;;;;;;;;;;;;OAcG;IACI,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,UAAU;IA4BvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACI,EAAE,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAIrF;;;;;;;OAOG;IACI,IAAI,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAIvF;;;;;OAKG;IACI,GAAG,CAAC,KAAK,EAAE,uBAAuB,EAAE,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAItF,gEAAgE;IACzD,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU;IAmCrC;;;;;;;;;;;;;;;OAeG;IACI,iBAAiB,IAAI,UAAU,EAAE;CAGzC;AAED,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
'use strict';var node_events=require('node:events'),databaseDataSourceContext=require('../context/database-data-source-context.js'),missingDataSource_error=require('../errors/missing-data-source.error.js'),dataSource=require('./data-source.js');/** Maintains registry of named data sources. */
|
|
2
|
+
class DataSourceRegistry {
|
|
3
|
+
sources = new Map();
|
|
4
|
+
defaultSource;
|
|
5
|
+
events = new node_events.EventEmitter();
|
|
6
|
+
/**
|
|
7
|
+
* Register a new data source definition.
|
|
8
|
+
*
|
|
9
|
+
* Sets up event forwarding from the driver to the registry, allowing
|
|
10
|
+
* centralized listening for connection state changes.
|
|
11
|
+
*
|
|
12
|
+
* **Emits:**
|
|
13
|
+
* - `registered` - When the data source is registered
|
|
14
|
+
* - `default-registered` - If this becomes the default data source
|
|
15
|
+
* - `connected` - When the driver connects (forwarded from driver)
|
|
16
|
+
* - `disconnected` - When the driver disconnects (forwarded from driver)
|
|
17
|
+
*
|
|
18
|
+
* @param options - Data source configuration
|
|
19
|
+
* @returns The registered data source instance
|
|
20
|
+
*/
|
|
21
|
+
register(options) {
|
|
22
|
+
const source = new dataSource.DataSource(options);
|
|
23
|
+
this.sources.set(source.name, source);
|
|
24
|
+
const isNewDefault = source.isDefault || !this.defaultSource;
|
|
25
|
+
if (isNewDefault) {
|
|
26
|
+
this.defaultSource = source;
|
|
27
|
+
}
|
|
28
|
+
// Emit registration events
|
|
29
|
+
this.events.emit("registered", source);
|
|
30
|
+
if (isNewDefault) {
|
|
31
|
+
this.events.emit("default-registered", source);
|
|
32
|
+
}
|
|
33
|
+
source.driver.on("connected", () => {
|
|
34
|
+
this.events.emit("connected", source);
|
|
35
|
+
});
|
|
36
|
+
source.driver.on("disconnected", () => {
|
|
37
|
+
this.events.emit("disconnected", source);
|
|
38
|
+
});
|
|
39
|
+
return source;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Listen for data source registry events.
|
|
43
|
+
*
|
|
44
|
+
* @param event - The event to listen for
|
|
45
|
+
* @param listener - Callback to execute when event fires
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```typescript
|
|
49
|
+
* // Listen for registration
|
|
50
|
+
* dataSourceRegistry.on("registered", (ds) => {
|
|
51
|
+
* console.log(`Data source "${ds.name}" registered`);
|
|
52
|
+
* console.log(`Driver: ${ds.driver.name}`); // e.g., "mongodb"
|
|
53
|
+
* });
|
|
54
|
+
*
|
|
55
|
+
* // Listen for default data source
|
|
56
|
+
* dataSourceRegistry.on("default-registered", (ds) => {
|
|
57
|
+
* console.log(`Default data source set to "${ds.name}"`);
|
|
58
|
+
* });
|
|
59
|
+
*
|
|
60
|
+
* // Listen for connection events (forwarded from drivers)
|
|
61
|
+
* dataSourceRegistry.on("connected", (ds) => {
|
|
62
|
+
* console.log(`${ds.driver.name} data source "${ds.name}" connected`);
|
|
63
|
+
* });
|
|
64
|
+
*
|
|
65
|
+
* dataSourceRegistry.on("disconnected", (ds) => {
|
|
66
|
+
* console.log(`${ds.driver.name} data source "${ds.name}" disconnected`);
|
|
67
|
+
* });
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
on(event, listener) {
|
|
71
|
+
this.events.on(event, listener);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Listen for a data source registration event once.
|
|
75
|
+
*
|
|
76
|
+
* The listener is automatically removed after being called once.
|
|
77
|
+
*
|
|
78
|
+
* @param event - The event to listen for
|
|
79
|
+
* @param listener - Callback to execute when event fires
|
|
80
|
+
*/
|
|
81
|
+
once(event, listener) {
|
|
82
|
+
this.events.once(event, listener);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Remove a listener for a data source registration event.
|
|
86
|
+
*
|
|
87
|
+
* @param event - The event to stop listening for
|
|
88
|
+
* @param listener - The listener to remove
|
|
89
|
+
*/
|
|
90
|
+
off(event, listener) {
|
|
91
|
+
this.events.off(event, listener);
|
|
92
|
+
}
|
|
93
|
+
/** Retrieve a data source either by name or the default one. */
|
|
94
|
+
get(name) {
|
|
95
|
+
const contextSource = name == null ? databaseDataSourceContext.databaseDataSourceContext.getDataSource() : null;
|
|
96
|
+
if (contextSource) {
|
|
97
|
+
if (contextSource instanceof dataSource.DataSource) {
|
|
98
|
+
return contextSource;
|
|
99
|
+
}
|
|
100
|
+
const override = this.sources.get(contextSource);
|
|
101
|
+
if (!override) {
|
|
102
|
+
throw new missingDataSource_error.MissingDataSourceError(`Data source "${contextSource}" is not registered (context override).`, contextSource);
|
|
103
|
+
}
|
|
104
|
+
return override;
|
|
105
|
+
}
|
|
106
|
+
if (name != null) {
|
|
107
|
+
const source = this.sources.get(name);
|
|
108
|
+
if (!source) {
|
|
109
|
+
throw new missingDataSource_error.MissingDataSourceError(`Data source "${name}" is not registered.`, name);
|
|
110
|
+
}
|
|
111
|
+
return source;
|
|
112
|
+
}
|
|
113
|
+
if (!this.defaultSource) {
|
|
114
|
+
throw new missingDataSource_error.MissingDataSourceError("No default data source registered.");
|
|
115
|
+
}
|
|
116
|
+
return this.defaultSource;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Get all registered data sources.
|
|
120
|
+
*
|
|
121
|
+
* Useful for operations that need to iterate over all sources,
|
|
122
|
+
* such as shutting down all connections.
|
|
123
|
+
*
|
|
124
|
+
* @returns Array of all registered data sources
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```typescript
|
|
128
|
+
* // Shutdown all data sources
|
|
129
|
+
* for (const dataSource of dataSourceRegistry.getAllDataSources()) {
|
|
130
|
+
* await dataSource.driver.disconnect();
|
|
131
|
+
* }
|
|
132
|
+
* ```
|
|
133
|
+
*/
|
|
134
|
+
getAllDataSources() {
|
|
135
|
+
return Array.from(this.sources.values());
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
const dataSourceRegistry = new DataSourceRegistry();exports.dataSourceRegistry=dataSourceRegistry;//# sourceMappingURL=data-source-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-source-registry.js","sources":["../../src/data-source/data-source-registry.ts"],"sourcesContent":[null],"names":["EventEmitter","DataSource","databaseDataSourceContext","MissingDataSourceError"],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import type { DriverContract, IdGeneratorContract } from "../contracts";
|
|
2
|
+
import type { DeleteStrategy } from "../types";
|
|
3
|
+
import type { ModelDefaultConfig } from "../utils/connect-to-database";
|
|
4
|
+
/**
|
|
5
|
+
* Configuration options used when registering a data source.
|
|
6
|
+
*/
|
|
7
|
+
export type DataSourceOptions = {
|
|
8
|
+
/** Unique name identifying the data source. */
|
|
9
|
+
name: string;
|
|
10
|
+
/** Driver bound to the data source. */
|
|
11
|
+
driver: DriverContract;
|
|
12
|
+
/** Whether this data source should be considered the default one. */
|
|
13
|
+
isDefault?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Default delete strategy for models using this data source.
|
|
16
|
+
*
|
|
17
|
+
* - MongoDB: Typically `"trash"` (uses RecycleBin collection)
|
|
18
|
+
* - PostgreSQL: Typically `"permanent"` or `"soft"`
|
|
19
|
+
*
|
|
20
|
+
* Can be overridden by model static property or destroy() options.
|
|
21
|
+
*
|
|
22
|
+
* @default undefined (falls back to "permanent")
|
|
23
|
+
*/
|
|
24
|
+
defaultDeleteStrategy?: DeleteStrategy;
|
|
25
|
+
/**
|
|
26
|
+
* Default trash table/collection name for "trash" delete strategy.
|
|
27
|
+
*
|
|
28
|
+
* - MongoDB: Typically `"RecycleBin"`
|
|
29
|
+
* - If not set, defaults to `{table}Trash` pattern
|
|
30
|
+
*
|
|
31
|
+
* Can be overridden by Model.trashTable static property.
|
|
32
|
+
*
|
|
33
|
+
* @default undefined (uses {table}Trash pattern)
|
|
34
|
+
*/
|
|
35
|
+
defaultTrashTable?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Default model configuration for all models using this data source.
|
|
38
|
+
*
|
|
39
|
+
* @default undefined
|
|
40
|
+
*/
|
|
41
|
+
modelDefaults?: ModelDefaultConfig;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Wrapper that couples a driver with its metadata.
|
|
45
|
+
*
|
|
46
|
+
* A data source represents a database connection with all its associated services.
|
|
47
|
+
* The ID generator (if needed) is provided by the driver itself.
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* // MongoDB with auto ID generation
|
|
52
|
+
* const mongoDriver = new MongoDbDriver({
|
|
53
|
+
* host: "localhost",
|
|
54
|
+
* port: 27017,
|
|
55
|
+
* database: "myapp",
|
|
56
|
+
* autoGenerateId: true, // Driver creates its own ID generator
|
|
57
|
+
* });
|
|
58
|
+
*
|
|
59
|
+
* const dataSource = new DataSource({
|
|
60
|
+
* name: "primary",
|
|
61
|
+
* driver: mongoDriver,
|
|
62
|
+
* isDefault: true,
|
|
63
|
+
* });
|
|
64
|
+
*
|
|
65
|
+
* // Access ID generator from driver
|
|
66
|
+
* const idGenerator = dataSource.idGenerator;
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export declare class DataSource {
|
|
70
|
+
/** Unique name identifying this data source. */
|
|
71
|
+
readonly name: string;
|
|
72
|
+
/** Database driver for executing queries. */
|
|
73
|
+
readonly driver: DriverContract;
|
|
74
|
+
/** Whether this is the default data source. */
|
|
75
|
+
readonly isDefault: boolean;
|
|
76
|
+
/** Default delete strategy for models using this data source. */
|
|
77
|
+
readonly defaultDeleteStrategy?: DeleteStrategy;
|
|
78
|
+
/** Default trash table/collection name for "trash" delete strategy. */
|
|
79
|
+
readonly defaultTrashTable?: string;
|
|
80
|
+
/** Default model configuration for all models using this data source. */
|
|
81
|
+
readonly modelDefaults?: ModelDefaultConfig;
|
|
82
|
+
/**
|
|
83
|
+
* Create a new data source.
|
|
84
|
+
*
|
|
85
|
+
* @param options - Configuration options
|
|
86
|
+
*/
|
|
87
|
+
constructor(options: DataSourceOptions);
|
|
88
|
+
/**
|
|
89
|
+
* Get the ID generator from the driver (if available).
|
|
90
|
+
*
|
|
91
|
+
* NoSQL drivers like MongoDB can provide their own ID generator.
|
|
92
|
+
* SQL drivers return undefined as they use native AUTO_INCREMENT.
|
|
93
|
+
*
|
|
94
|
+
* @returns The ID generator instance, or undefined
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```typescript
|
|
98
|
+
* const idGenerator = dataSource.idGenerator;
|
|
99
|
+
* if (idGenerator) {
|
|
100
|
+
* const id = await idGenerator.generateNextId({ table: "users" });
|
|
101
|
+
* }
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
get idGenerator(): IdGeneratorContract | undefined;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=data-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-source.d.ts","sourceRoot":"","sources":["../../src/data-source/data-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,cAAc,CAAC;IACvB,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;OAIG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACpC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,UAAU;IACrB,gDAAgD;IAChD,SAAgB,IAAI,EAAE,MAAM,CAAC;IAE7B,6CAA6C;IAC7C,SAAgB,MAAM,EAAE,cAAc,CAAC;IAEvC,+CAA+C;IAC/C,SAAgB,SAAS,EAAE,OAAO,CAAC;IAEnC,iEAAiE;IACjE,SAAgB,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvD,uEAAuE;IACvE,SAAgB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3C,yEAAyE;IACzE,SAAgB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IAEnD;;;;OAIG;gBACgB,OAAO,EAAE,iBAAiB;IAS7C;;;;;;;;;;;;;;;OAeG;IACH,IAAW,WAAW,IAAI,mBAAmB,GAAG,SAAS,CAOxD;CACF"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
'use strict';/**
|
|
2
|
+
* Wrapper that couples a driver with its metadata.
|
|
3
|
+
*
|
|
4
|
+
* A data source represents a database connection with all its associated services.
|
|
5
|
+
* The ID generator (if needed) is provided by the driver itself.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* // MongoDB with auto ID generation
|
|
10
|
+
* const mongoDriver = new MongoDbDriver({
|
|
11
|
+
* host: "localhost",
|
|
12
|
+
* port: 27017,
|
|
13
|
+
* database: "myapp",
|
|
14
|
+
* autoGenerateId: true, // Driver creates its own ID generator
|
|
15
|
+
* });
|
|
16
|
+
*
|
|
17
|
+
* const dataSource = new DataSource({
|
|
18
|
+
* name: "primary",
|
|
19
|
+
* driver: mongoDriver,
|
|
20
|
+
* isDefault: true,
|
|
21
|
+
* });
|
|
22
|
+
*
|
|
23
|
+
* // Access ID generator from driver
|
|
24
|
+
* const idGenerator = dataSource.idGenerator;
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
class DataSource {
|
|
28
|
+
/** Unique name identifying this data source. */
|
|
29
|
+
name;
|
|
30
|
+
/** Database driver for executing queries. */
|
|
31
|
+
driver;
|
|
32
|
+
/** Whether this is the default data source. */
|
|
33
|
+
isDefault;
|
|
34
|
+
/** Default delete strategy for models using this data source. */
|
|
35
|
+
defaultDeleteStrategy;
|
|
36
|
+
/** Default trash table/collection name for "trash" delete strategy. */
|
|
37
|
+
defaultTrashTable;
|
|
38
|
+
/** Default model configuration for all models using this data source. */
|
|
39
|
+
modelDefaults;
|
|
40
|
+
/**
|
|
41
|
+
* Create a new data source.
|
|
42
|
+
*
|
|
43
|
+
* @param options - Configuration options
|
|
44
|
+
*/
|
|
45
|
+
constructor(options) {
|
|
46
|
+
this.name = options.name;
|
|
47
|
+
this.driver = options.driver;
|
|
48
|
+
this.isDefault = Boolean(options.isDefault);
|
|
49
|
+
this.defaultDeleteStrategy = options.defaultDeleteStrategy;
|
|
50
|
+
this.defaultTrashTable = options.defaultTrashTable;
|
|
51
|
+
this.modelDefaults = options.modelDefaults;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Get the ID generator from the driver (if available).
|
|
55
|
+
*
|
|
56
|
+
* NoSQL drivers like MongoDB can provide their own ID generator.
|
|
57
|
+
* SQL drivers return undefined as they use native AUTO_INCREMENT.
|
|
58
|
+
*
|
|
59
|
+
* @returns The ID generator instance, or undefined
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const idGenerator = dataSource.idGenerator;
|
|
64
|
+
* if (idGenerator) {
|
|
65
|
+
* const id = await idGenerator.generateNextId({ table: "users" });
|
|
66
|
+
* }
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
get idGenerator() {
|
|
70
|
+
// Check if driver has a getIdGenerator method (duck typing)
|
|
71
|
+
const driver = this.driver;
|
|
72
|
+
if (typeof driver.getIdGenerator === "function") {
|
|
73
|
+
return driver.getIdGenerator();
|
|
74
|
+
}
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
}exports.DataSource=DataSource;//# sourceMappingURL=data-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-source.js","sources":["../../src/data-source/data-source.ts"],"sourcesContent":[null],"names":[],"mappings":"aA8CA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;MACU,UAAU,CAAA;;AAEL,IAAA,IAAI,CAAS;;AAGb,IAAA,MAAM,CAAiB;;AAGvB,IAAA,SAAS,CAAU;;AAGnB,IAAA,qBAAqB,CAAkB;;AAGvC,IAAA,iBAAiB,CAAU;;AAG3B,IAAA,aAAa,CAAsB;AAEnD;;;;AAIG;AACH,IAAA,WAAA,CAAmB,OAA0B,EAAA;AAC3C,QAAA,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAC5C,QAAA,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AAC3D,QAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;AACnD,QAAA,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;KAC5C;AAED;;;;;;;;;;;;;;;AAeG;AACH,IAAA,IAAW,WAAW,GAAA;;AAEpB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAa,CAAC;AAClC,QAAA,IAAI,OAAO,MAAM,CAAC,cAAc,KAAK,UAAU,EAAE;AAC/C,YAAA,OAAO,MAAM,CAAC,cAAc,EAAE,CAAC;AAChC,SAAA;AACD,QAAA,OAAO,SAAS,CAAC;KAClB;AACF"}
|