@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,92 @@
|
|
|
1
|
+
import {DataSource}from'../data-source/data-source.js';import {dataSourceRegistry}from'../data-source/data-source-registry.js';import {MongoDbDriver}from'../drivers/mongo/mongodb-driver.js';/**
|
|
2
|
+
* Connect to a database and register the data source.
|
|
3
|
+
*
|
|
4
|
+
* This is a high-level utility function that simplifies database connection
|
|
5
|
+
* for small to medium projects. It handles driver instantiation, connection,
|
|
6
|
+
* data source creation, and automatic registration.
|
|
7
|
+
*
|
|
8
|
+
* **Supported Drivers:**
|
|
9
|
+
* - `mongodb` (default) - MongoDB driver with optional auto ID generation
|
|
10
|
+
* - `postgres` - PostgreSQL driver (not yet implemented)
|
|
11
|
+
* - `mysql` - MySQL driver (not yet implemented)
|
|
12
|
+
*
|
|
13
|
+
* **Features:**
|
|
14
|
+
* - Automatic driver instantiation based on driver name
|
|
15
|
+
* - Connection establishment and error handling
|
|
16
|
+
* - DataSource creation and registration
|
|
17
|
+
* - Support for MongoDB-specific features (ID generation, transactions)
|
|
18
|
+
*
|
|
19
|
+
* @param options - Connection configuration options
|
|
20
|
+
* @returns A connected and registered DataSource instance
|
|
21
|
+
* @throws {Error} If connection fails or driver is not implemented
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* // MongoDB with new structure
|
|
26
|
+
* const dataSource = await connectToDatabase({
|
|
27
|
+
* driver: "mongodb",
|
|
28
|
+
* database: "myapp",
|
|
29
|
+
* host: "localhost",
|
|
30
|
+
* port: 27017,
|
|
31
|
+
* driverOptions: {
|
|
32
|
+
* autoGenerateId: true,
|
|
33
|
+
* },
|
|
34
|
+
* clientOptions: {
|
|
35
|
+
* minPoolSize: 5,
|
|
36
|
+
* maxPoolSize: 10,
|
|
37
|
+
* },
|
|
38
|
+
* modelOptions: {
|
|
39
|
+
* randomIncrement: true,
|
|
40
|
+
* initialId: 1000,
|
|
41
|
+
* },
|
|
42
|
+
* });
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
async function connectToDatabase(options) {
|
|
46
|
+
// Default values
|
|
47
|
+
const driverType = options.driver ?? "mongodb";
|
|
48
|
+
const dataSourceName = options.name ?? "default";
|
|
49
|
+
const isDefault = options.isDefault ?? true;
|
|
50
|
+
// Create driver based on type
|
|
51
|
+
let driver;
|
|
52
|
+
switch (driverType) {
|
|
53
|
+
case "mongodb": {
|
|
54
|
+
driver = new MongoDbDriver({
|
|
55
|
+
database: options.database,
|
|
56
|
+
uri: options.uri,
|
|
57
|
+
host: options.host,
|
|
58
|
+
port: options.port,
|
|
59
|
+
username: options.username,
|
|
60
|
+
password: options.password,
|
|
61
|
+
authSource: options.authSource,
|
|
62
|
+
clientOptions: options.clientOptions,
|
|
63
|
+
}, options.driverOptions);
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
case "postgres":
|
|
67
|
+
throw new Error("PostgreSQL driver is not yet implemented. Coming soon!");
|
|
68
|
+
case "mysql":
|
|
69
|
+
throw new Error("MySQL driver is not yet implemented. Coming soon!");
|
|
70
|
+
default:
|
|
71
|
+
throw new Error(`Unknown driver: "${driverType}". Supported drivers: mongodb, postgres, mysql`);
|
|
72
|
+
}
|
|
73
|
+
// Create data source
|
|
74
|
+
const dataSource = new DataSource({
|
|
75
|
+
name: dataSourceName,
|
|
76
|
+
driver,
|
|
77
|
+
isDefault,
|
|
78
|
+
defaultDeleteStrategy: options.defaultDeleteStrategy,
|
|
79
|
+
defaultTrashTable: options.defaultTrashTable,
|
|
80
|
+
modelDefaults: options.modelOptions,
|
|
81
|
+
});
|
|
82
|
+
// Register data source
|
|
83
|
+
dataSourceRegistry.register(dataSource);
|
|
84
|
+
// Connect to the database
|
|
85
|
+
try {
|
|
86
|
+
await driver.connect();
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
throw new Error(`Failed to connect to ${driverType} database: ${error instanceof Error ? error.message : String(error)}`);
|
|
90
|
+
}
|
|
91
|
+
return dataSource;
|
|
92
|
+
}export{connectToDatabase};//# sourceMappingURL=connect-to-database.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-to-database.js","sources":["../../src/utils/connect-to-database.ts"],"sourcesContent":[null],"names":[],"mappings":"8LA0PA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CG;AACI,eAAe,iBAAiB,CACrC,OAA0D,EAAA;;AAG1D,IAAA,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC;AAC/C,IAAA,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;AACjD,IAAA,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;;AAG5C,IAAA,IAAI,MAAsB,CAAC;AAE3B,IAAA,QAAQ,UAAU;QAChB,KAAK,SAAS,EAAE;YACd,MAAM,GAAG,IAAI,aAAa,CACxB;gBACE,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,aAAa,EAAE,OAAO,CAAC,aAAoB;AAC5C,aAAA,EACD,OAAO,CAAC,aAAoB,CAC7B,CAAC;YACF,MAAM;AACP,SAAA;AAED,QAAA,KAAK,UAAU;AACb,YAAA,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;AAE5E,QAAA,KAAK,OAAO;AACV,YAAA,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;AAEvE,QAAA;AACE,YAAA,MAAM,IAAI,KAAK,CACb,oBAAoB,UAAU,CAAA,8CAAA,CAAgD,CAC/E,CAAC;AACL,KAAA;;AAGD,IAAA,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;AAChC,QAAA,IAAI,EAAE,cAAc;QACpB,MAAM;QACN,SAAS;QACT,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,aAAa,EAAE,OAAO,CAAC,YAAY;AACpC,KAAA,CAAC,CAAC;;AAGH,IAAA,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;;IAGxC,IAAI;AACF,QAAA,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;AACxB,KAAA;AAAC,IAAA,OAAO,KAAK,EAAE;QACd,MAAM,IAAI,KAAK,CACb,CAAwB,qBAAA,EAAA,UAAU,cAAc,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAE,CAAA,CACzG,CAAC;AACH,KAAA;AAED,IAAA,OAAO,UAAU,CAAC;AACpB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type Model } from "../model/model";
|
|
2
|
+
type transformCallbackOptions = {
|
|
3
|
+
model: Model;
|
|
4
|
+
column: string;
|
|
5
|
+
value: any;
|
|
6
|
+
isChanged: boolean;
|
|
7
|
+
isNew: boolean;
|
|
8
|
+
};
|
|
9
|
+
type ModelTransformCallback = (options: transformCallbackOptions) => string;
|
|
10
|
+
/**
|
|
11
|
+
* Transfer value before saving it into the database
|
|
12
|
+
*/
|
|
13
|
+
export declare function useModelTransformer(callback: ModelTransformCallback): TransformerCallback;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=database-writer.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-writer.utils.d.ts","sourceRoot":"","sources":["../../src/utils/database-writer.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC;IACX,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,KAAK,sBAAsB,GAAG,CAAC,OAAO,EAAE,wBAAwB,KAAK,MAAM,CAAC;AAE5E;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,sBAAsB,uBAWnE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transfer value before saving it into the database
|
|
3
|
+
*/
|
|
4
|
+
function useModelTransformer(callback) {
|
|
5
|
+
const transformCallback = (data, { context }) => {
|
|
6
|
+
const model = context.rootContext?.model;
|
|
7
|
+
const column = context.key;
|
|
8
|
+
const value = data;
|
|
9
|
+
const isChanged = model.isDirty(column);
|
|
10
|
+
const isNew = model.isNew;
|
|
11
|
+
return callback({ model, column, value, isChanged, isNew });
|
|
12
|
+
};
|
|
13
|
+
return transformCallback;
|
|
14
|
+
}export{useModelTransformer};//# sourceMappingURL=database-writer.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-writer.utils.js","sources":["../../src/utils/database-writer.utils.ts"],"sourcesContent":[null],"names":[],"mappings":"AAaA;;AAEG;AACG,SAAU,mBAAmB,CAAC,QAAgC,EAAA;IAClE,MAAM,iBAAiB,GAAwB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,KAAI;AACnE,QAAA,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,KAAc,CAAC;AAClD,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AACxC,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;AAC1B,QAAA,OAAO,QAAQ,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AAC9D,KAAC,CAAC;AAEF,IAAA,OAAO,iBAAiB,CAAC;AAC3B"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import {Model}from'../model/model.js';import {registerModelInRegistry}from'../model/register-model.js';/**
|
|
2
|
+
* Define a model with a clean, concise API.
|
|
3
|
+
*
|
|
4
|
+
* This utility function creates a Model class with the specified configuration,
|
|
5
|
+
* reducing boilerplate and providing a more declarative way to define models.
|
|
6
|
+
*
|
|
7
|
+
* @param options - Model configuration options
|
|
8
|
+
* @returns A Model class with the specified configuration
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import { defineModel } from "@warlock.js/cascade";
|
|
13
|
+
* import { v } from "@warlock.js/seal";
|
|
14
|
+
*
|
|
15
|
+
* export const User = defineModel({
|
|
16
|
+
* table: "users",
|
|
17
|
+
* schema: v.object({
|
|
18
|
+
* name: v.string().required().trim(),
|
|
19
|
+
* email: v.string().email().required().lowercase(),
|
|
20
|
+
* password: v.string().required().min(6),
|
|
21
|
+
* role: v.string().default("user"),
|
|
22
|
+
* }),
|
|
23
|
+
* deleteStrategy: "soft",
|
|
24
|
+
* });
|
|
25
|
+
*
|
|
26
|
+
* // Usage
|
|
27
|
+
* const user = await User.create({
|
|
28
|
+
* name: "John Doe",
|
|
29
|
+
* email: "john@example.com",
|
|
30
|
+
* password: "secret123",
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* // With type inference
|
|
37
|
+
* export const Post = defineModel({
|
|
38
|
+
* table: "posts",
|
|
39
|
+
* schema: v.object({
|
|
40
|
+
* title: v.string().required(),
|
|
41
|
+
* content: v.string().required(),
|
|
42
|
+
* authorId: v.number().required(),
|
|
43
|
+
* published: v.boolean().default(false),
|
|
44
|
+
* }),
|
|
45
|
+
* });
|
|
46
|
+
*
|
|
47
|
+
* // TypeScript knows the exact type!
|
|
48
|
+
* const post = await Post.create({
|
|
49
|
+
* title: "Hello World",
|
|
50
|
+
* content: "My first post",
|
|
51
|
+
* authorId: 1,
|
|
52
|
+
* });
|
|
53
|
+
*
|
|
54
|
+
* console.log(post.title); // ✅ Type-safe!
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
function defineModel(options) {
|
|
58
|
+
class DefinedModel extends Model {
|
|
59
|
+
/**
|
|
60
|
+
* Table/collection name
|
|
61
|
+
*/
|
|
62
|
+
static table = options.table;
|
|
63
|
+
/**
|
|
64
|
+
* Validation schema
|
|
65
|
+
*/
|
|
66
|
+
static schema = options.schema;
|
|
67
|
+
/**
|
|
68
|
+
* Delete strategy
|
|
69
|
+
*/
|
|
70
|
+
static deleteStrategy = options.deleteStrategy || "trash";
|
|
71
|
+
/**
|
|
72
|
+
* Strict mode
|
|
73
|
+
*/
|
|
74
|
+
static strictMode = options.strictMode || "strip";
|
|
75
|
+
/**
|
|
76
|
+
* Auto-generate ID
|
|
77
|
+
*/
|
|
78
|
+
static autoGenerateId = options.autoGenerateId || false;
|
|
79
|
+
/**
|
|
80
|
+
* Random increment
|
|
81
|
+
*/
|
|
82
|
+
static randomIncrement = options.randomIncrement || false;
|
|
83
|
+
/**
|
|
84
|
+
* Initial ID
|
|
85
|
+
*/
|
|
86
|
+
static initialId = options.initialId || 1;
|
|
87
|
+
}
|
|
88
|
+
// Apply custom instance properties (getters/setters/methods)
|
|
89
|
+
if (options.properties) {
|
|
90
|
+
Object.defineProperties(DefinedModel.prototype, Object.getOwnPropertyDescriptors(options.properties));
|
|
91
|
+
}
|
|
92
|
+
if (options.name) {
|
|
93
|
+
registerModelInRegistry(options.name, DefinedModel);
|
|
94
|
+
}
|
|
95
|
+
// Apply custom static methods
|
|
96
|
+
if (options.statics) {
|
|
97
|
+
Object.defineProperties(DefinedModel, Object.getOwnPropertyDescriptors(options.statics));
|
|
98
|
+
}
|
|
99
|
+
return DefinedModel;
|
|
100
|
+
}export{defineModel};//# sourceMappingURL=define-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define-model.js","sources":["../../src/utils/define-model.ts"],"sourcesContent":[null],"names":[],"mappings":"uGAuGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuDG;AACG,SAAU,WAAW,CAMzB,OAIC,EAAA;IAID,MAAM,YAAa,SAAQ,KAAqB,CAAA;AAC9C;;AAEG;AACI,QAAA,OAAO,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AAEpC;;AAEG;AACI,QAAA,OAAO,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AAEtC;;AAEG;QACI,OAAO,cAAc,GAAmB,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC;AAEjF;;AAEG;QACI,OAAO,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC;AAEzD;;AAEG;QACI,OAAO,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,KAAK,CAAC;AAE/D;;AAEG;QACI,OAAO,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,KAAK,CAAC;AAEjE;;AAEG;QACI,OAAO,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;;;IAInD,IAAI,OAAO,CAAC,UAAU,EAAE;AACtB,QAAA,MAAM,CAAC,gBAAgB,CACrB,YAAY,CAAC,SAAS,EACtB,MAAM,CAAC,yBAAyB,CAAC,OAAO,CAAC,UAAU,CAAC,CACrD,CAAC;AACH,KAAA;IAED,IAAI,OAAO,CAAC,IAAI,EAAE;AAChB,QAAA,uBAAuB,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AACrD,KAAA;;IAGD,IAAI,OAAO,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAC1F,KAAA;AAQD,IAAA,OAAO,YAAqC,CAAC;AAC/C"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import type { DataSource } from "../data-source/data-source";
|
|
2
|
+
/**
|
|
3
|
+
* Execute a callback once the driver is connected.
|
|
4
|
+
*
|
|
5
|
+
* If the driver is already connected, the callback is executed immediately.
|
|
6
|
+
* Otherwise, it waits for the "connected" event.
|
|
7
|
+
*
|
|
8
|
+
* **Use Case:**
|
|
9
|
+
* Useful for ensuring database-dependent operations only run after connection
|
|
10
|
+
* is established, especially in small to medium projects with a single data source.
|
|
11
|
+
*
|
|
12
|
+
* @param dataSourceOrNameOrCallback - Data source instance, name, or callback function
|
|
13
|
+
* @param callback - Function to execute once connected (optional if first param is callback)
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* // With default data source (just callback)
|
|
18
|
+
* await connectToDatabase({ database: "myapp" });
|
|
19
|
+
*
|
|
20
|
+
* onceConnected((ds) => {
|
|
21
|
+
* console.log("Database is ready!");
|
|
22
|
+
* console.log("Connected to:", ds.name);
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* // With data source name
|
|
29
|
+
* onceConnected("primary", (ds) => {
|
|
30
|
+
* console.log("Primary database is ready!");
|
|
31
|
+
* });
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* // With data source instance
|
|
37
|
+
* const dataSource = await connectToDatabase({ database: "myapp" });
|
|
38
|
+
*
|
|
39
|
+
* onceConnected(dataSource, (ds) => {
|
|
40
|
+
* console.log("Database is ready!");
|
|
41
|
+
* });
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* // With driver instance
|
|
47
|
+
* const driver = new MongoDbDriver(config);
|
|
48
|
+
* const dataSource = new DataSource({ name: "primary", driver });
|
|
49
|
+
*
|
|
50
|
+
* onceConnected(dataSource, () => {
|
|
51
|
+
* // Start application server
|
|
52
|
+
* app.listen(3000);
|
|
53
|
+
* });
|
|
54
|
+
*
|
|
55
|
+
* // Connect after setting up the callback
|
|
56
|
+
* await driver.connect();
|
|
57
|
+
* ```
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* // Chaining operations
|
|
62
|
+
* onceConnected(async (ds) => {
|
|
63
|
+
* // Seed database
|
|
64
|
+
* await seedDatabase();
|
|
65
|
+
*
|
|
66
|
+
* // Run migrations
|
|
67
|
+
* await runMigrations();
|
|
68
|
+
*
|
|
69
|
+
* console.log("Database ready!");
|
|
70
|
+
* });
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
export declare function onceConnected(dataSourceOrNameOrCallback: DataSource | string | ((dataSource: DataSource) => void), callback?: (dataSource: DataSource) => void): void;
|
|
74
|
+
/**
|
|
75
|
+
* Execute a callback once the driver is disconnected.
|
|
76
|
+
*
|
|
77
|
+
* If the driver is already disconnected, the callback is executed immediately.
|
|
78
|
+
* Otherwise, it waits for the "disconnected" event.
|
|
79
|
+
*
|
|
80
|
+
* **Use Case:**
|
|
81
|
+
* Useful for cleanup operations, graceful shutdown, or reconnection logic.
|
|
82
|
+
*
|
|
83
|
+
* @param dataSourceOrNameOrCallback - Data source instance, name, or callback function
|
|
84
|
+
* @param callback - Function to execute once disconnected (optional if first param is callback)
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* ```typescript
|
|
88
|
+
* // With default data source (just callback)
|
|
89
|
+
* await connectToDatabase({ database: "myapp" });
|
|
90
|
+
*
|
|
91
|
+
* onceDisconnected((ds) => {
|
|
92
|
+
* console.log("Database disconnected!");
|
|
93
|
+
* console.log("Attempting reconnection...");
|
|
94
|
+
* });
|
|
95
|
+
* ```
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```typescript
|
|
99
|
+
* // With data source name
|
|
100
|
+
* onceDisconnected("primary", (ds) => {
|
|
101
|
+
* console.log("Primary database disconnected!");
|
|
102
|
+
* });
|
|
103
|
+
* ```
|
|
104
|
+
*
|
|
105
|
+
* @example
|
|
106
|
+
* ```typescript
|
|
107
|
+
* // With data source instance
|
|
108
|
+
* const dataSource = await connectToDatabase({ database: "myapp" });
|
|
109
|
+
*
|
|
110
|
+
* onceDisconnected(dataSource, (ds) => {
|
|
111
|
+
* console.log("Database disconnected!");
|
|
112
|
+
* });
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* // Graceful shutdown with default data source
|
|
118
|
+
* process.on("SIGTERM", async () => {
|
|
119
|
+
* console.log("Shutting down...");
|
|
120
|
+
*
|
|
121
|
+
* onceDisconnected(() => {
|
|
122
|
+
* console.log("Database closed, exiting process");
|
|
123
|
+
* process.exit(0);
|
|
124
|
+
* });
|
|
125
|
+
*
|
|
126
|
+
* const dataSource = DataSourceRegistry.getDefault();
|
|
127
|
+
* await dataSource?.driver.disconnect();
|
|
128
|
+
* });
|
|
129
|
+
* ```
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* ```typescript
|
|
133
|
+
* // Cleanup resources on disconnect
|
|
134
|
+
* onceDisconnected(async (ds) => {
|
|
135
|
+
* // Close file handles
|
|
136
|
+
* await closeFileHandles();
|
|
137
|
+
*
|
|
138
|
+
* // Clear caches
|
|
139
|
+
* clearCaches();
|
|
140
|
+
*
|
|
141
|
+
* console.log("Cleanup complete");
|
|
142
|
+
* });
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
export declare function onceDisconnected(dataSourceOrNameOrCallback: DataSource | string | ((dataSource: DataSource) => void), callback?: (dataSource: DataSource) => void): void;
|
|
146
|
+
//# sourceMappingURL=once-connected.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"once-connected.d.ts","sourceRoot":"","sources":["../../src/utils/once-connected.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAG7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,wBAAgB,aAAa,CAC3B,0BAA0B,EACtB,UAAU,GACV,MAAM,GACN,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC,EACtC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,GAC1C,IAAI,CA2DN;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,wBAAgB,gBAAgB,CAC9B,0BAA0B,EACtB,UAAU,GACV,MAAM,GACN,CAAC,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC,EACtC,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,GAC1C,IAAI,CA2DN"}
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
import {dataSourceRegistry}from'../data-source/data-source-registry.js';/**
|
|
2
|
+
* Execute a callback once the driver is connected.
|
|
3
|
+
*
|
|
4
|
+
* If the driver is already connected, the callback is executed immediately.
|
|
5
|
+
* Otherwise, it waits for the "connected" event.
|
|
6
|
+
*
|
|
7
|
+
* **Use Case:**
|
|
8
|
+
* Useful for ensuring database-dependent operations only run after connection
|
|
9
|
+
* is established, especially in small to medium projects with a single data source.
|
|
10
|
+
*
|
|
11
|
+
* @param dataSourceOrNameOrCallback - Data source instance, name, or callback function
|
|
12
|
+
* @param callback - Function to execute once connected (optional if first param is callback)
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // With default data source (just callback)
|
|
17
|
+
* await connectToDatabase({ database: "myapp" });
|
|
18
|
+
*
|
|
19
|
+
* onceConnected((ds) => {
|
|
20
|
+
* console.log("Database is ready!");
|
|
21
|
+
* console.log("Connected to:", ds.name);
|
|
22
|
+
* });
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // With data source name
|
|
28
|
+
* onceConnected("primary", (ds) => {
|
|
29
|
+
* console.log("Primary database is ready!");
|
|
30
|
+
* });
|
|
31
|
+
* ```
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```typescript
|
|
35
|
+
* // With data source instance
|
|
36
|
+
* const dataSource = await connectToDatabase({ database: "myapp" });
|
|
37
|
+
*
|
|
38
|
+
* onceConnected(dataSource, (ds) => {
|
|
39
|
+
* console.log("Database is ready!");
|
|
40
|
+
* });
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* // With driver instance
|
|
46
|
+
* const driver = new MongoDbDriver(config);
|
|
47
|
+
* const dataSource = new DataSource({ name: "primary", driver });
|
|
48
|
+
*
|
|
49
|
+
* onceConnected(dataSource, () => {
|
|
50
|
+
* // Start application server
|
|
51
|
+
* app.listen(3000);
|
|
52
|
+
* });
|
|
53
|
+
*
|
|
54
|
+
* // Connect after setting up the callback
|
|
55
|
+
* await driver.connect();
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* // Chaining operations
|
|
61
|
+
* onceConnected(async (ds) => {
|
|
62
|
+
* // Seed database
|
|
63
|
+
* await seedDatabase();
|
|
64
|
+
*
|
|
65
|
+
* // Run migrations
|
|
66
|
+
* await runMigrations();
|
|
67
|
+
*
|
|
68
|
+
* console.log("Database ready!");
|
|
69
|
+
* });
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
function onceConnected(dataSourceOrNameOrCallback, callback) {
|
|
73
|
+
// Determine if first parameter is a callback
|
|
74
|
+
let targetDataSource;
|
|
75
|
+
let actualCallback;
|
|
76
|
+
if (typeof dataSourceOrNameOrCallback === "function") {
|
|
77
|
+
// First param is callback, use default data source
|
|
78
|
+
actualCallback = dataSourceOrNameOrCallback;
|
|
79
|
+
targetDataSource = "default";
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
// First param is data source name or instance
|
|
83
|
+
if (!callback) {
|
|
84
|
+
throw new Error("Callback is required when providing a data source name or instance.");
|
|
85
|
+
}
|
|
86
|
+
actualCallback = callback;
|
|
87
|
+
targetDataSource = dataSourceOrNameOrCallback;
|
|
88
|
+
}
|
|
89
|
+
// Try to get the data source if it's a string
|
|
90
|
+
let resolvedDataSource;
|
|
91
|
+
if (typeof targetDataSource === "string") {
|
|
92
|
+
try {
|
|
93
|
+
resolvedDataSource =
|
|
94
|
+
targetDataSource === "default"
|
|
95
|
+
? dataSourceRegistry.get()
|
|
96
|
+
: dataSourceRegistry.get(targetDataSource);
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
// Data source not registered yet, will wait for event
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
resolvedDataSource = targetDataSource;
|
|
104
|
+
}
|
|
105
|
+
// If data source is resolved and already connected, fire immediately
|
|
106
|
+
if (resolvedDataSource && resolvedDataSource.driver.isConnected) {
|
|
107
|
+
actualCallback(resolvedDataSource);
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
// Otherwise, wait for the connected event
|
|
111
|
+
const listener = (ds) => {
|
|
112
|
+
const matches = typeof targetDataSource === "string"
|
|
113
|
+
? targetDataSource === "default"
|
|
114
|
+
? ds.isDefault
|
|
115
|
+
: ds.name === targetDataSource
|
|
116
|
+
: ds === targetDataSource;
|
|
117
|
+
if (matches) {
|
|
118
|
+
actualCallback(ds);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
// Not the one we're looking for, keep listening
|
|
122
|
+
dataSourceRegistry.once("connected", listener);
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
dataSourceRegistry.once("connected", listener);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Execute a callback once the driver is disconnected.
|
|
129
|
+
*
|
|
130
|
+
* If the driver is already disconnected, the callback is executed immediately.
|
|
131
|
+
* Otherwise, it waits for the "disconnected" event.
|
|
132
|
+
*
|
|
133
|
+
* **Use Case:**
|
|
134
|
+
* Useful for cleanup operations, graceful shutdown, or reconnection logic.
|
|
135
|
+
*
|
|
136
|
+
* @param dataSourceOrNameOrCallback - Data source instance, name, or callback function
|
|
137
|
+
* @param callback - Function to execute once disconnected (optional if first param is callback)
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```typescript
|
|
141
|
+
* // With default data source (just callback)
|
|
142
|
+
* await connectToDatabase({ database: "myapp" });
|
|
143
|
+
*
|
|
144
|
+
* onceDisconnected((ds) => {
|
|
145
|
+
* console.log("Database disconnected!");
|
|
146
|
+
* console.log("Attempting reconnection...");
|
|
147
|
+
* });
|
|
148
|
+
* ```
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```typescript
|
|
152
|
+
* // With data source name
|
|
153
|
+
* onceDisconnected("primary", (ds) => {
|
|
154
|
+
* console.log("Primary database disconnected!");
|
|
155
|
+
* });
|
|
156
|
+
* ```
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```typescript
|
|
160
|
+
* // With data source instance
|
|
161
|
+
* const dataSource = await connectToDatabase({ database: "myapp" });
|
|
162
|
+
*
|
|
163
|
+
* onceDisconnected(dataSource, (ds) => {
|
|
164
|
+
* console.log("Database disconnected!");
|
|
165
|
+
* });
|
|
166
|
+
* ```
|
|
167
|
+
*
|
|
168
|
+
* @example
|
|
169
|
+
* ```typescript
|
|
170
|
+
* // Graceful shutdown with default data source
|
|
171
|
+
* process.on("SIGTERM", async () => {
|
|
172
|
+
* console.log("Shutting down...");
|
|
173
|
+
*
|
|
174
|
+
* onceDisconnected(() => {
|
|
175
|
+
* console.log("Database closed, exiting process");
|
|
176
|
+
* process.exit(0);
|
|
177
|
+
* });
|
|
178
|
+
*
|
|
179
|
+
* const dataSource = DataSourceRegistry.getDefault();
|
|
180
|
+
* await dataSource?.driver.disconnect();
|
|
181
|
+
* });
|
|
182
|
+
* ```
|
|
183
|
+
*
|
|
184
|
+
* @example
|
|
185
|
+
* ```typescript
|
|
186
|
+
* // Cleanup resources on disconnect
|
|
187
|
+
* onceDisconnected(async (ds) => {
|
|
188
|
+
* // Close file handles
|
|
189
|
+
* await closeFileHandles();
|
|
190
|
+
*
|
|
191
|
+
* // Clear caches
|
|
192
|
+
* clearCaches();
|
|
193
|
+
*
|
|
194
|
+
* console.log("Cleanup complete");
|
|
195
|
+
* });
|
|
196
|
+
* ```
|
|
197
|
+
*/
|
|
198
|
+
function onceDisconnected(dataSourceOrNameOrCallback, callback) {
|
|
199
|
+
// Determine if first parameter is a callback
|
|
200
|
+
let targetDataSource;
|
|
201
|
+
let actualCallback;
|
|
202
|
+
if (typeof dataSourceOrNameOrCallback === "function") {
|
|
203
|
+
// First param is callback, use default data source
|
|
204
|
+
actualCallback = dataSourceOrNameOrCallback;
|
|
205
|
+
targetDataSource = "default";
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
// First param is data source name or instance
|
|
209
|
+
if (!callback) {
|
|
210
|
+
throw new Error("Callback is required when providing a data source name or instance.");
|
|
211
|
+
}
|
|
212
|
+
actualCallback = callback;
|
|
213
|
+
targetDataSource = dataSourceOrNameOrCallback;
|
|
214
|
+
}
|
|
215
|
+
// Try to get the data source if it's a string
|
|
216
|
+
let resolvedDataSource;
|
|
217
|
+
if (typeof targetDataSource === "string") {
|
|
218
|
+
try {
|
|
219
|
+
resolvedDataSource =
|
|
220
|
+
targetDataSource === "default"
|
|
221
|
+
? dataSourceRegistry.get()
|
|
222
|
+
: dataSourceRegistry.get(targetDataSource);
|
|
223
|
+
}
|
|
224
|
+
catch {
|
|
225
|
+
// Data source not registered yet, will wait for event
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
resolvedDataSource = targetDataSource;
|
|
230
|
+
}
|
|
231
|
+
// If data source is resolved and already disconnected, fire immediately
|
|
232
|
+
if (resolvedDataSource && !resolvedDataSource.driver.isConnected) {
|
|
233
|
+
actualCallback(resolvedDataSource);
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
// Otherwise, wait for the disconnected event
|
|
237
|
+
const listener = (ds) => {
|
|
238
|
+
const matches = typeof targetDataSource === "string"
|
|
239
|
+
? targetDataSource === "default"
|
|
240
|
+
? ds.isDefault
|
|
241
|
+
: ds.name === targetDataSource
|
|
242
|
+
: ds === targetDataSource;
|
|
243
|
+
if (matches) {
|
|
244
|
+
actualCallback(ds);
|
|
245
|
+
}
|
|
246
|
+
else {
|
|
247
|
+
// Not the one we're looking for, keep listening
|
|
248
|
+
dataSourceRegistry.once("disconnected", listener);
|
|
249
|
+
}
|
|
250
|
+
};
|
|
251
|
+
dataSourceRegistry.once("disconnected", listener);
|
|
252
|
+
}export{onceConnected,onceDisconnected};//# sourceMappingURL=once-connected.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"once-connected.js","sources":["../../src/utils/once-connected.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-seal-plugins.d.ts","sourceRoot":"","sources":["../../src/validation/database-seal-plugins.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import {registerPlugin}from'@warlock.js/seal';import {embedValidator}from'./plugins/embed-validator-plugin.js';// We need to introduce new validators
|
|
2
|
+
// 1. v.embed(model: typeof Model, options: EmbedOptions)
|
|
3
|
+
// 2. v.embedMany(model: typeof Model, options: EmbedManyOptions)
|
|
4
|
+
registerPlugin(embedValidator);//# sourceMappingURL=database-seal-plugins.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database-seal-plugins.js","sources":["../../src/validation/database-seal-plugins.ts"],"sourcesContent":[null],"names":[],"mappings":"+GAGA;AACA;AACA;AAEA,cAAc,CAAC,cAAc,CAAC"}
|