@warlock.js/cascade 4.0.138 → 4.0.140

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/index.js CHANGED
@@ -1 +1 @@
1
- 'use strict';var databaseDataSourceContext=require('./context/database-data-source-context.js'),databaseTransactionContext=require('./context/database-transaction-context.js'),dataSource=require('./data-source/data-source.js'),dataSourceRegistry=require('./data-source/data-source-registry.js'),missingDataSource_error=require('./errors/missing-data-source.error.js'),transactionRollback_error=require('./errors/transaction-rollback.error.js'),databaseDirtyTracker=require('./database-dirty-tracker.js'),modelEvents=require('./events/model-events.js'),model=require('./model/model.js'),registerModel=require('./model/register-model.js'),databaseRemover=require('./remover/database-remover.js'),databaseRestorer=require('./restorer/database-restorer.js'),databaseWriterValidationError=require('./validation/database-writer-validation-error.js');require('./validation/database-seal-plugins.js');var databaseWriter=require('./writer/database-writer.js'),helpers=require('./relations/helpers.js'),relationLoader=require('./relations/relation-loader.js'),relationHydrator=require('./relations/relation-hydrator.js'),pivotOperations=require('./relations/pivot-operations.js'),aggregateExpressions=require('./expressions/aggregate-expressions.js'),mongodbDriver=require('./drivers/mongodb/mongodb-driver.js'),mongodbIdGenerator=require('./drivers/mongodb/mongodb-id-generator.js'),mongodbQueryBuilder=require('./drivers/mongodb/mongodb-query-builder.js'),mongodbSyncAdapter=require('./drivers/mongodb/mongodb-sync-adapter.js'),modelSync=require('./sync/model-sync.js'),modelSyncOperation=require('./sync/model-sync-operation.js'),syncContext=require('./sync/sync-context.js'),syncManager=require('./sync/sync-manager.js'),connectToDatabase=require('./utils/connect-to-database.js'),databaseWriter_utils=require('./utils/database-writer.utils.js'),defineModel=require('./utils/define-model.js'),onceConnected=require('./utils/once-connected.js'),columnBuilder=require('./migration/column-builder.js'),foreignKeyBuilder=require('./migration/foreign-key-builder.js'),migration=require('./migration/migration.js'),migrationRunner=require('./migration/migration-runner.js'),mongodbMigrationDriver=require('./drivers/mongodb/mongodb-migration-driver.js'),postgresBlueprint=require('./drivers/postgres/postgres-blueprint.js'),postgresDialect=require('./drivers/postgres/postgres-dialect.js'),postgresDriver=require('./drivers/postgres/postgres-driver.js'),postgresMigrationDriver=require('./drivers/postgres/postgres-migration-driver.js'),postgresQueryBuilder=require('./drivers/postgres/postgres-query-builder.js'),postgresQueryParser=require('./drivers/postgres/postgres-query-parser.js'),postgresSyncAdapter=require('./drivers/postgres/postgres-sync-adapter.js');exports.databaseDataSourceContext=databaseDataSourceContext.databaseDataSourceContext;exports.databaseTransactionContext=databaseTransactionContext.databaseTransactionContext;exports.DataSource=dataSource.DataSource;exports.dataSourceRegistry=dataSourceRegistry.dataSourceRegistry;exports.MissingDataSourceError=missingDataSource_error.MissingDataSourceError;exports.TransactionRollbackError=transactionRollback_error.TransactionRollbackError;exports.DatabaseDirtyTracker=databaseDirtyTracker.DatabaseDirtyTracker;exports.ModelEvents=modelEvents.ModelEvents;exports.globalModelEvents=modelEvents.globalModelEvents;exports.Model=model.Model;exports.RegisterModel=registerModel.RegisterModel;exports.cleanupModelsRegistery=registerModel.cleanupModelsRegistery;exports.getAllModelsFromRegistry=registerModel.getAllModelsFromRegistry;exports.getModelFromRegistry=registerModel.getModelFromRegistry;exports.registerModelInRegistry=registerModel.registerModelInRegistry;exports.removeModelFromRegistery=registerModel.removeModelFromRegistery;exports.resolveModelClass=registerModel.resolveModelClass;exports.DatabaseRemover=databaseRemover.DatabaseRemover;exports.DatabaseRestorer=databaseRestorer.DatabaseRestorer;exports.DatabaseWriterValidationError=databaseWriterValidationError.DatabaseWriterValidationError;exports.DatabaseWriter=databaseWriter.DatabaseWriter;exports.belongsTo=helpers.belongsTo;exports.belongsToMany=helpers.belongsToMany;exports.hasMany=helpers.hasMany;exports.hasOne=helpers.hasOne;exports.RelationLoader=relationLoader.RelationLoader;exports.RelationHydrator=relationHydrator.RelationHydrator;exports.PivotOperations=pivotOperations.PivotOperations;exports.createPivotOperations=pivotOperations.createPivotOperations;exports.$agg=aggregateExpressions.$agg;exports.isAggregateExpression=aggregateExpressions.isAggregateExpression;exports.MongoDbDriver=mongodbDriver.MongoDbDriver;exports.isMongoDBDriverLoaded=mongodbDriver.isMongoDBDriverLoaded;exports.MongoIdGenerator=mongodbIdGenerator.MongoIdGenerator;exports.MongoQueryBuilder=mongodbQueryBuilder.MongoQueryBuilder;exports.MongoSyncAdapter=mongodbSyncAdapter.MongoSyncAdapter;exports.modelSync=modelSync.modelSync;exports.ModelSyncOperation=modelSyncOperation.ModelSyncOperation;exports.DEFAULT_MAX_SYNC_DEPTH=syncContext.DEFAULT_MAX_SYNC_DEPTH;exports.SyncContextManager=syncContext.SyncContextManager;exports.SyncManager=syncManager.SyncManager;exports.connectToDatabase=connectToDatabase.connectToDatabase;exports.currentDatabaseDriver=connectToDatabase.currentDatabaseDriver;exports.transaction=connectToDatabase.transaction;exports.useModelTransformer=databaseWriter_utils.useModelTransformer;exports.defineModel=defineModel.defineModel;exports.onceConnected=onceConnected.onceConnected;exports.onceDisconnected=onceConnected.onceDisconnected;exports.ColumnBuilder=columnBuilder.ColumnBuilder;exports.ForeignKeyBuilder=foreignKeyBuilder.ForeignKeyBuilder;exports.Migration=migration.Migration;exports.migrate=migration.migrate;exports.MigrationRunner=migrationRunner.MigrationRunner;exports.migrationRunner=migrationRunner.migrationRunner;exports.MongoMigrationDriver=mongodbMigrationDriver.MongoMigrationDriver;exports.PostgresBlueprint=postgresBlueprint.PostgresBlueprint;exports.PostgresDialect=postgresDialect.PostgresDialect;exports.PostgresDriver=postgresDriver.PostgresDriver;exports.PostgresMigrationDriver=postgresMigrationDriver.PostgresMigrationDriver;exports.PostgresQueryBuilder=postgresQueryBuilder.PostgresQueryBuilder;exports.PostgresQueryParser=postgresQueryParser.PostgresQueryParser;exports.PostgresSyncAdapter=postgresSyncAdapter.PostgresSyncAdapter;//# sourceMappingURL=index.js.map
1
+ 'use strict';var databaseDataSourceContext=require('./context/database-data-source-context.js'),databaseTransactionContext=require('./context/database-transaction-context.js'),dataSource=require('./data-source/data-source.js'),dataSourceRegistry=require('./data-source/data-source-registry.js'),missingDataSource_error=require('./errors/missing-data-source.error.js'),transactionRollback_error=require('./errors/transaction-rollback.error.js'),databaseDirtyTracker=require('./database-dirty-tracker.js'),modelEvents=require('./events/model-events.js'),model=require('./model/model.js'),registerModel=require('./model/register-model.js'),databaseRemover=require('./remover/database-remover.js'),databaseRestorer=require('./restorer/database-restorer.js'),databaseWriterValidationError=require('./validation/database-writer-validation-error.js');require('./validation/database-seal-plugins.js');var databaseWriter=require('./writer/database-writer.js'),helpers=require('./relations/helpers.js'),relationLoader=require('./relations/relation-loader.js'),relationHydrator=require('./relations/relation-hydrator.js'),pivotOperations=require('./relations/pivot-operations.js'),aggregateExpressions=require('./expressions/aggregate-expressions.js'),mongodbDriver=require('./drivers/mongodb/mongodb-driver.js'),mongodbIdGenerator=require('./drivers/mongodb/mongodb-id-generator.js'),mongodbQueryBuilder=require('./drivers/mongodb/mongodb-query-builder.js'),mongodbSyncAdapter=require('./drivers/mongodb/mongodb-sync-adapter.js'),modelSync=require('./sync/model-sync.js'),modelSyncOperation=require('./sync/model-sync-operation.js'),syncContext=require('./sync/sync-context.js'),syncManager=require('./sync/sync-manager.js'),connectToDatabase=require('./utils/connect-to-database.js'),databaseWriter_utils=require('./utils/database-writer.utils.js'),defineModel=require('./utils/define-model.js'),onceConnected=require('./utils/once-connected.js'),columnBuilder=require('./migration/column-builder.js'),foreignKeyBuilder=require('./migration/foreign-key-builder.js'),migration=require('./migration/migration.js'),migrationRunner=require('./migration/migration-runner.js'),mongodbMigrationDriver=require('./drivers/mongodb/mongodb-migration-driver.js'),postgresBlueprint=require('./drivers/postgres/postgres-blueprint.js'),postgresDialect=require('./drivers/postgres/postgres-dialect.js'),postgresDriver=require('./drivers/postgres/postgres-driver.js'),postgresMigrationDriver=require('./drivers/postgres/postgres-migration-driver.js'),postgresQueryBuilder=require('./drivers/postgres/postgres-query-builder.js'),postgresQueryParser=require('./drivers/postgres/postgres-query-parser.js'),postgresSyncAdapter=require('./drivers/postgres/postgres-sync-adapter.js');exports.databaseDataSourceContext=databaseDataSourceContext.databaseDataSourceContext;exports.databaseTransactionContext=databaseTransactionContext.databaseTransactionContext;exports.DataSource=dataSource.DataSource;exports.dataSourceRegistry=dataSourceRegistry.dataSourceRegistry;exports.MissingDataSourceError=missingDataSource_error.MissingDataSourceError;exports.TransactionRollbackError=transactionRollback_error.TransactionRollbackError;exports.DatabaseDirtyTracker=databaseDirtyTracker.DatabaseDirtyTracker;exports.ModelEvents=modelEvents.ModelEvents;exports.globalModelEvents=modelEvents.globalModelEvents;exports.Model=model.Model;exports.RegisterModel=registerModel.RegisterModel;exports.cleanupModelsRegistery=registerModel.cleanupModelsRegistery;exports.getAllModelsFromRegistry=registerModel.getAllModelsFromRegistry;exports.getModelFromRegistry=registerModel.getModelFromRegistry;exports.registerModelInRegistry=registerModel.registerModelInRegistry;exports.removeModelFromRegistery=registerModel.removeModelFromRegistery;exports.resolveModelClass=registerModel.resolveModelClass;exports.DatabaseRemover=databaseRemover.DatabaseRemover;exports.DatabaseRestorer=databaseRestorer.DatabaseRestorer;exports.DatabaseWriterValidationError=databaseWriterValidationError.DatabaseWriterValidationError;exports.DatabaseWriter=databaseWriter.DatabaseWriter;exports.belongsTo=helpers.belongsTo;exports.belongsToMany=helpers.belongsToMany;exports.hasMany=helpers.hasMany;exports.hasOne=helpers.hasOne;exports.RelationLoader=relationLoader.RelationLoader;exports.RelationHydrator=relationHydrator.RelationHydrator;exports.PivotOperations=pivotOperations.PivotOperations;exports.createPivotOperations=pivotOperations.createPivotOperations;exports.$agg=aggregateExpressions.$agg;exports.isAggregateExpression=aggregateExpressions.isAggregateExpression;exports.MongoDbDriver=mongodbDriver.MongoDbDriver;exports.isMongoDBDriverLoaded=mongodbDriver.isMongoDBDriverLoaded;exports.MongoIdGenerator=mongodbIdGenerator.MongoIdGenerator;exports.MongoQueryBuilder=mongodbQueryBuilder.MongoQueryBuilder;exports.MongoSyncAdapter=mongodbSyncAdapter.MongoSyncAdapter;exports.modelSync=modelSync.modelSync;exports.ModelSyncOperation=modelSyncOperation.ModelSyncOperation;exports.DEFAULT_MAX_SYNC_DEPTH=syncContext.DEFAULT_MAX_SYNC_DEPTH;exports.SyncContextManager=syncContext.SyncContextManager;exports.SyncManager=syncManager.SyncManager;exports.connectToDatabase=connectToDatabase.connectToDatabase;exports.getDatabaseDriver=connectToDatabase.getDatabaseDriver;exports.transaction=connectToDatabase.transaction;exports.useModelTransformer=databaseWriter_utils.useModelTransformer;exports.defineModel=defineModel.defineModel;exports.onceConnected=onceConnected.onceConnected;exports.onceDisconnected=onceConnected.onceDisconnected;exports.ColumnBuilder=columnBuilder.ColumnBuilder;exports.ForeignKeyBuilder=foreignKeyBuilder.ForeignKeyBuilder;exports.Migration=migration.Migration;exports.migrate=migration.migrate;exports.MigrationRunner=migrationRunner.MigrationRunner;exports.migrationRunner=migrationRunner.migrationRunner;exports.MongoMigrationDriver=mongodbMigrationDriver.MongoMigrationDriver;exports.PostgresBlueprint=postgresBlueprint.PostgresBlueprint;exports.PostgresDialect=postgresDialect.PostgresDialect;exports.PostgresDriver=postgresDriver.PostgresDriver;exports.PostgresMigrationDriver=postgresMigrationDriver.PostgresMigrationDriver;exports.PostgresQueryBuilder=postgresQueryBuilder.PostgresQueryBuilder;exports.PostgresQueryParser=postgresQueryParser.PostgresQueryParser;exports.PostgresSyncAdapter=postgresSyncAdapter.PostgresSyncAdapter;//# sourceMappingURL=index.js.map
@@ -281,9 +281,17 @@ export type ConnectionOptions<TDriverOptions = any, TClientOptions = any> = {
281
281
  */
282
282
  export declare function connectToDatabase<TDriverOptions = any, TClientOptions = any>(options: ConnectionOptions<TDriverOptions, TClientOptions>): Promise<DataSource>;
283
283
  /**
284
- * Get current driver instance
284
+ * Get current driver instance.
285
+ *
286
+ * @example
287
+ * ```typescript
288
+ * const driver = getDatabaseDriver();
289
+ *
290
+ * // Pass type to return Postgres driver type
291
+ * const pgDriver = getDatabaseDriver<PostgresDriver>();
292
+ * ```
285
293
  */
286
- export declare const currentDatabaseDriver: () => DriverContract;
294
+ export declare function getDatabaseDriver<T extends DriverContract = any>(): T;
287
295
  /**
288
296
  * Perform database transaction(s)
289
297
  * Shorthand to `dataSourceRegister.get().driver.transaction
@@ -1 +1 @@
1
- {"version":3,"file":"connect-to-database.d.ts","sourceRoot":"","sources":["../../src/utils/connect-to-database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;AAE9D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,MAAM,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,IAAI;IAK1E;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAMjB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAMrC;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAM3B;;OAEG;IACH,UAAU,CAAC,EAAE;QACX;;;;;;;;;;WAUG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAsB,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,EAChF,OAAO,EAAE,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,GACzD,OAAO,CAAC,UAAU,CAAC,CA6ErB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,sBAAwC,CAAC;AAE3E;;;GAGG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,GAAG,EACvC,EAAE,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
1
+ {"version":3,"file":"connect-to-database.d.ts","sourceRoot":"","sources":["../../src/utils/connect-to-database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;AAE9D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,MAAM,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,IAAI;IAK1E;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAMjB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAMrC;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAM3B;;OAEG;IACH,UAAU,CAAC,EAAE;QACX;;;;;;;;;;WAUG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAsB,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,EAChF,OAAO,EAAE,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,GACzD,OAAO,CAAC,UAAU,CAAC,CA6ErB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,cAAc,GAAG,GAAG,KAAK,CAAC,CAIrE;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,GAAG,EACvC,EAAE,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
@@ -105,13 +105,24 @@ async function connectToDatabase(options) {
105
105
  return dataSource$1;
106
106
  }
107
107
  /**
108
- * Get current driver instance
108
+ * Get current driver instance.
109
+ *
110
+ * @example
111
+ * ```typescript
112
+ * const driver = getDatabaseDriver();
113
+ *
114
+ * // Pass type to return Postgres driver type
115
+ * const pgDriver = getDatabaseDriver<PostgresDriver>();
116
+ * ```
109
117
  */
110
- const currentDatabaseDriver = () => dataSourceRegistry.dataSourceRegistry.get().driver;
118
+ function getDatabaseDriver() {
119
+ const driver = dataSourceRegistry.dataSourceRegistry.get().driver;
120
+ return driver;
121
+ }
111
122
  /**
112
123
  * Perform database transaction(s)
113
124
  * Shorthand to `dataSourceRegister.get().driver.transaction
114
125
  */
115
126
  async function transaction(fn, options) {
116
- return currentDatabaseDriver().transaction(fn, options);
117
- }exports.connectToDatabase=connectToDatabase;exports.currentDatabaseDriver=currentDatabaseDriver;exports.transaction=transaction;//# sourceMappingURL=connect-to-database.js.map
127
+ return getDatabaseDriver().transaction(fn, options);
128
+ }exports.connectToDatabase=connectToDatabase;exports.getDatabaseDriver=getDatabaseDriver;exports.transaction=transaction;//# sourceMappingURL=connect-to-database.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connect-to-database.js","sources":["../../src/utils/connect-to-database.ts"],"sourcesContent":[null],"names":["MongoDbDriver","PostgresDriver","dataSource","DataSource","dataSourceRegistry"],"mappings":"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"}
1
+ {"version":3,"file":"connect-to-database.js","sources":["../../src/utils/connect-to-database.ts"],"sourcesContent":[null],"names":["MongoDbDriver","PostgresDriver","dataSource","DataSource","dataSourceRegistry"],"mappings":"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"}
@@ -8,14 +8,14 @@ export declare class EmbedModelValidator extends BaseValidator {
8
8
  /**
9
9
  * Mutate the value to be a model, also fail if the mutated value is not a valid model
10
10
  */
11
- model(model: ChildModel<any> | string): this;
11
+ model(model: ChildModel<any> | string, errorMessage?: string): EmbedModelValidator;
12
12
  /**
13
13
  * Validate the value is a list of models
14
14
  */
15
- models(model: ChildModel<any> | string): this;
15
+ models(model: ChildModel<any> | string, errorMessage?: string): EmbedModelValidator;
16
16
  /**
17
17
  * Determine how the data will be stored as an embedded document
18
18
  */
19
- embed(embed?: string | string[]): this;
19
+ embed(embed?: string | string[]): EmbedModelValidator;
20
20
  }
21
21
  //# sourceMappingURL=embed-validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"embed-validator.d.ts","sourceRoot":"","sources":["../../../src/validation/validators/embed-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK3D,qBAAa,mBAAoB,SAAQ,aAAa;IACpD;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAQvC;;OAEG;IACI,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM;IAY5C;;OAEG;IACI,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM;IAa7C;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;CAOvC"}
1
+ {"version":3,"file":"embed-validator.d.ts","sourceRoot":"","sources":["../../../src/validation/validators/embed-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK3D,qBAAa,mBAAoB,SAAQ,aAAa;IACpD;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAQvC;;OAEG;IACI,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAUzF;;OAEG;IACI,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAc1F;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,mBAAmB;CAK7D"}
@@ -10,33 +10,34 @@
10
10
  /**
11
11
  * Mutate the value to be a model, also fail if the mutated value is not a valid model
12
12
  */
13
- model(model) {
13
+ model(model, errorMessage) {
14
14
  this.addMutator(embedMutator.databaseModelMutator, {
15
15
  model,
16
16
  });
17
- const rule = this.addRule(databaseModelRule.databaseModelRule);
18
- rule.context.options.model = model;
19
- return this;
17
+ return this.addRule(databaseModelRule.databaseModelRule, errorMessage, {
18
+ model,
19
+ });
20
20
  }
21
21
  /**
22
22
  * Validate the value is a list of models
23
23
  */
24
- models(model) {
25
- this.addMutator(embedMutator.databaseModelsMutator, {
24
+ models(model, errorMessage) {
25
+ const instance = this.instance;
26
+ instance.addMutator(embedMutator.databaseModelsMutator, {
27
+ model,
28
+ });
29
+ instance.addMutableRule(seal.arrayRule);
30
+ instance.addMutableRule(databaseModelRule.databaseModelsRule, errorMessage, {
26
31
  model,
27
32
  });
28
- this.addRule(seal.arrayRule);
29
- const rule = this.addRule(databaseModelRule.databaseModelsRule);
30
- rule.context.options.model = model;
31
- return this;
33
+ return instance;
32
34
  }
33
35
  /**
34
36
  * Determine how the data will be stored as an embedded document
35
37
  */
36
38
  embed(embed) {
37
- this.addTransformer(embedModelTransformer.databaseModelTransformer, {
39
+ return this.addTransformer(embedModelTransformer.databaseModelTransformer, {
38
40
  embed,
39
41
  });
40
- return this;
41
42
  }
42
43
  }exports.EmbedModelValidator=EmbedModelValidator;//# sourceMappingURL=embed-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"embed-validator.js","sources":["../../../src/validation/validators/embed-validator.ts"],"sourcesContent":[null],"names":["BaseValidator","Model","databaseModelMutator","databaseModelRule","databaseModelsMutator","arrayRule","databaseModelsRule","databaseModelTransformer"],"mappings":"sRAMM,MAAO,mBAAoB,SAAQA,kBAAa,CAAA;AACpD;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;QAC3B,QACE,KAAK,YAAYC,WAAK;YACtB,OAAO,KAAK,KAAK,QAAQ;aACxB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,YAAYA,WAAK,CAAC,CAAC,EACtE;KACH;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,KAA+B,EAAA;AAC1C,QAAA,IAAI,CAAC,UAAU,CAACC,iCAAoB,EAAE;YACpC,KAAK;AACN,SAAA,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAACC,mCAAiB,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAEnC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,MAAM,CAAC,KAA+B,EAAA;AAC3C,QAAA,IAAI,CAAC,UAAU,CAACC,kCAAqB,EAAE;YACrC,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,OAAO,CAACC,cAAS,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAACC,oCAAkB,CAAC,CAAC;QAE9C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAEnC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,KAAyB,EAAA;AACpC,QAAA,IAAI,CAAC,cAAc,CAACC,8CAAwB,EAAE;YAC5C,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC;KACb;AACF"}
1
+ {"version":3,"file":"embed-validator.js","sources":["../../../src/validation/validators/embed-validator.ts"],"sourcesContent":[null],"names":["BaseValidator","Model","databaseModelMutator","databaseModelRule","databaseModelsMutator","arrayRule","databaseModelsRule","databaseModelTransformer"],"mappings":"sRAMM,MAAO,mBAAoB,SAAQA,kBAAa,CAAA;AACpD;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;QAC3B,QACE,KAAK,YAAYC,WAAK;YACtB,OAAO,KAAK,KAAK,QAAQ;aACxB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,YAAYA,WAAK,CAAC,CAAC,EACtE;KACH;AAED;;AAEG;IACI,KAAK,CAAC,KAA+B,EAAE,YAAqB,EAAA;AACjE,QAAA,IAAI,CAAC,UAAU,CAACC,iCAAoB,EAAE;YACpC,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC,OAAO,CAACC,mCAAiB,EAAE,YAAY,EAAE;YACnD,KAAK;AACN,SAAA,CAAC,CAAC;KACJ;AAED;;AAEG;IACI,MAAM,CAAC,KAA+B,EAAE,YAAqB,EAAA;AAClE,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC/B,QAAA,QAAQ,CAAC,UAAU,CAACC,kCAAqB,EAAE;YACzC,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,QAAQ,CAAC,cAAc,CAACC,cAAS,CAAC,CAAC;AACnC,QAAA,QAAQ,CAAC,cAAc,CAACC,oCAAkB,EAAE,YAAY,EAAE;YACxD,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,QAAQ,CAAC;KACjB;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,KAAyB,EAAA;AACpC,QAAA,OAAO,IAAI,CAAC,cAAc,CAACC,8CAAwB,EAAE;YACnD,KAAK;AACN,SAAA,CAAC,CAAC;KACJ;AACF"}
package/esm/index.js CHANGED
@@ -1 +1 @@
1
- export{databaseDataSourceContext}from'./context/database-data-source-context.js';export{databaseTransactionContext}from'./context/database-transaction-context.js';export{DataSource}from'./data-source/data-source.js';export{dataSourceRegistry}from'./data-source/data-source-registry.js';export{MissingDataSourceError}from'./errors/missing-data-source.error.js';export{TransactionRollbackError}from'./errors/transaction-rollback.error.js';export{DatabaseDirtyTracker}from'./database-dirty-tracker.js';export{ModelEvents,globalModelEvents}from'./events/model-events.js';export{Model}from'./model/model.js';export{RegisterModel,cleanupModelsRegistery,getAllModelsFromRegistry,getModelFromRegistry,registerModelInRegistry,removeModelFromRegistery,resolveModelClass}from'./model/register-model.js';export{DatabaseRemover}from'./remover/database-remover.js';export{DatabaseRestorer}from'./restorer/database-restorer.js';export{DatabaseWriterValidationError}from'./validation/database-writer-validation-error.js';import'./validation/database-seal-plugins.js';export{DatabaseWriter}from'./writer/database-writer.js';export{belongsTo,belongsToMany,hasMany,hasOne}from'./relations/helpers.js';export{RelationLoader}from'./relations/relation-loader.js';export{RelationHydrator}from'./relations/relation-hydrator.js';export{PivotOperations,createPivotOperations}from'./relations/pivot-operations.js';export{$agg,isAggregateExpression}from'./expressions/aggregate-expressions.js';export{MongoDbDriver,isMongoDBDriverLoaded}from'./drivers/mongodb/mongodb-driver.js';export{MongoIdGenerator}from'./drivers/mongodb/mongodb-id-generator.js';export{MongoQueryBuilder}from'./drivers/mongodb/mongodb-query-builder.js';export{MongoSyncAdapter}from'./drivers/mongodb/mongodb-sync-adapter.js';export{modelSync}from'./sync/model-sync.js';export{ModelSyncOperation}from'./sync/model-sync-operation.js';export{DEFAULT_MAX_SYNC_DEPTH,SyncContextManager}from'./sync/sync-context.js';export{SyncManager}from'./sync/sync-manager.js';export{connectToDatabase,currentDatabaseDriver,transaction}from'./utils/connect-to-database.js';export{useModelTransformer}from'./utils/database-writer.utils.js';export{defineModel}from'./utils/define-model.js';export{onceConnected,onceDisconnected}from'./utils/once-connected.js';export{ColumnBuilder}from'./migration/column-builder.js';export{ForeignKeyBuilder}from'./migration/foreign-key-builder.js';export{Migration,migrate}from'./migration/migration.js';export{MigrationRunner,migrationRunner}from'./migration/migration-runner.js';export{MongoMigrationDriver}from'./drivers/mongodb/mongodb-migration-driver.js';export{PostgresBlueprint}from'./drivers/postgres/postgres-blueprint.js';export{PostgresDialect}from'./drivers/postgres/postgres-dialect.js';export{PostgresDriver}from'./drivers/postgres/postgres-driver.js';export{PostgresMigrationDriver}from'./drivers/postgres/postgres-migration-driver.js';export{PostgresQueryBuilder}from'./drivers/postgres/postgres-query-builder.js';export{PostgresQueryParser}from'./drivers/postgres/postgres-query-parser.js';export{PostgresSyncAdapter}from'./drivers/postgres/postgres-sync-adapter.js';//# sourceMappingURL=index.js.map
1
+ export{databaseDataSourceContext}from'./context/database-data-source-context.js';export{databaseTransactionContext}from'./context/database-transaction-context.js';export{DataSource}from'./data-source/data-source.js';export{dataSourceRegistry}from'./data-source/data-source-registry.js';export{MissingDataSourceError}from'./errors/missing-data-source.error.js';export{TransactionRollbackError}from'./errors/transaction-rollback.error.js';export{DatabaseDirtyTracker}from'./database-dirty-tracker.js';export{ModelEvents,globalModelEvents}from'./events/model-events.js';export{Model}from'./model/model.js';export{RegisterModel,cleanupModelsRegistery,getAllModelsFromRegistry,getModelFromRegistry,registerModelInRegistry,removeModelFromRegistery,resolveModelClass}from'./model/register-model.js';export{DatabaseRemover}from'./remover/database-remover.js';export{DatabaseRestorer}from'./restorer/database-restorer.js';export{DatabaseWriterValidationError}from'./validation/database-writer-validation-error.js';import'./validation/database-seal-plugins.js';export{DatabaseWriter}from'./writer/database-writer.js';export{belongsTo,belongsToMany,hasMany,hasOne}from'./relations/helpers.js';export{RelationLoader}from'./relations/relation-loader.js';export{RelationHydrator}from'./relations/relation-hydrator.js';export{PivotOperations,createPivotOperations}from'./relations/pivot-operations.js';export{$agg,isAggregateExpression}from'./expressions/aggregate-expressions.js';export{MongoDbDriver,isMongoDBDriverLoaded}from'./drivers/mongodb/mongodb-driver.js';export{MongoIdGenerator}from'./drivers/mongodb/mongodb-id-generator.js';export{MongoQueryBuilder}from'./drivers/mongodb/mongodb-query-builder.js';export{MongoSyncAdapter}from'./drivers/mongodb/mongodb-sync-adapter.js';export{modelSync}from'./sync/model-sync.js';export{ModelSyncOperation}from'./sync/model-sync-operation.js';export{DEFAULT_MAX_SYNC_DEPTH,SyncContextManager}from'./sync/sync-context.js';export{SyncManager}from'./sync/sync-manager.js';export{connectToDatabase,getDatabaseDriver,transaction}from'./utils/connect-to-database.js';export{useModelTransformer}from'./utils/database-writer.utils.js';export{defineModel}from'./utils/define-model.js';export{onceConnected,onceDisconnected}from'./utils/once-connected.js';export{ColumnBuilder}from'./migration/column-builder.js';export{ForeignKeyBuilder}from'./migration/foreign-key-builder.js';export{Migration,migrate}from'./migration/migration.js';export{MigrationRunner,migrationRunner}from'./migration/migration-runner.js';export{MongoMigrationDriver}from'./drivers/mongodb/mongodb-migration-driver.js';export{PostgresBlueprint}from'./drivers/postgres/postgres-blueprint.js';export{PostgresDialect}from'./drivers/postgres/postgres-dialect.js';export{PostgresDriver}from'./drivers/postgres/postgres-driver.js';export{PostgresMigrationDriver}from'./drivers/postgres/postgres-migration-driver.js';export{PostgresQueryBuilder}from'./drivers/postgres/postgres-query-builder.js';export{PostgresQueryParser}from'./drivers/postgres/postgres-query-parser.js';export{PostgresSyncAdapter}from'./drivers/postgres/postgres-sync-adapter.js';//# sourceMappingURL=index.js.map
@@ -281,9 +281,17 @@ export type ConnectionOptions<TDriverOptions = any, TClientOptions = any> = {
281
281
  */
282
282
  export declare function connectToDatabase<TDriverOptions = any, TClientOptions = any>(options: ConnectionOptions<TDriverOptions, TClientOptions>): Promise<DataSource>;
283
283
  /**
284
- * Get current driver instance
284
+ * Get current driver instance.
285
+ *
286
+ * @example
287
+ * ```typescript
288
+ * const driver = getDatabaseDriver();
289
+ *
290
+ * // Pass type to return Postgres driver type
291
+ * const pgDriver = getDatabaseDriver<PostgresDriver>();
292
+ * ```
285
293
  */
286
- export declare const currentDatabaseDriver: () => DriverContract;
294
+ export declare function getDatabaseDriver<T extends DriverContract = any>(): T;
287
295
  /**
288
296
  * Perform database transaction(s)
289
297
  * Shorthand to `dataSourceRegister.get().driver.transaction
@@ -1 +1 @@
1
- {"version":3,"file":"connect-to-database.d.ts","sourceRoot":"","sources":["../../src/utils/connect-to-database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;AAE9D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,MAAM,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,IAAI;IAK1E;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAMjB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAMrC;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAM3B;;OAEG;IACH,UAAU,CAAC,EAAE;QACX;;;;;;;;;;WAUG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAsB,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,EAChF,OAAO,EAAE,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,GACzD,OAAO,CAAC,UAAU,CAAC,CA6ErB;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,sBAAwC,CAAC;AAE3E;;;GAGG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,GAAG,EACvC,EAAE,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
1
+ {"version":3,"file":"connect-to-database.d.ts","sourceRoot":"","sources":["../../src/utils/connect-to-database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;AAE9D;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,MAAM,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,IAAI;IAK1E;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAMjB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAM/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IAMrC;;;;;;;;;OASG;IACH,qBAAqB,CAAC,EAAE,cAAc,CAAC;IAEvC;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAM3B;;OAEG;IACH,UAAU,CAAC,EAAE;QACX;;;;;;;;;;WAUG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB;;;;WAIG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAsB,iBAAiB,CAAC,cAAc,GAAG,GAAG,EAAE,cAAc,GAAG,GAAG,EAChF,OAAO,EAAE,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,GACzD,OAAO,CAAC,UAAU,CAAC,CA6ErB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,cAAc,GAAG,GAAG,KAAK,CAAC,CAIrE;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,CAAC,GAAG,GAAG,EACvC,EAAE,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,CAAC,CAAC,EAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
@@ -105,13 +105,24 @@ async function connectToDatabase(options) {
105
105
  return dataSource;
106
106
  }
107
107
  /**
108
- * Get current driver instance
108
+ * Get current driver instance.
109
+ *
110
+ * @example
111
+ * ```typescript
112
+ * const driver = getDatabaseDriver();
113
+ *
114
+ * // Pass type to return Postgres driver type
115
+ * const pgDriver = getDatabaseDriver<PostgresDriver>();
116
+ * ```
109
117
  */
110
- const currentDatabaseDriver = () => dataSourceRegistry.get().driver;
118
+ function getDatabaseDriver() {
119
+ const driver = dataSourceRegistry.get().driver;
120
+ return driver;
121
+ }
111
122
  /**
112
123
  * Perform database transaction(s)
113
124
  * Shorthand to `dataSourceRegister.get().driver.transaction
114
125
  */
115
126
  async function transaction(fn, options) {
116
- return currentDatabaseDriver().transaction(fn, options);
117
- }export{connectToDatabase,currentDatabaseDriver,transaction};//# sourceMappingURL=connect-to-database.js.map
127
+ return getDatabaseDriver().transaction(fn, options);
128
+ }export{connectToDatabase,getDatabaseDriver,transaction};//# sourceMappingURL=connect-to-database.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connect-to-database.js","sources":["../../src/utils/connect-to-database.ts"],"sourcesContent":[null],"names":[],"mappings":"uTAiSA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;QAED,KAAK,UAAU,EAAE;YACf,MAAM,GAAG,IAAI,cAAc,CAAC;gBAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,gBAAgB,EAAE,OAAO,CAAC,GAAG;gBAC7B,IAAI,EAAE,OAAO,CAAC,IAAI;AAClB,gBAAA,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;gBAC1B,IAAI,EAAE,OAAO,CAAC,QAAQ;gBACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;;gBAE1B,GAAI,OAAO,CAAC,aAAwB;AACrC,aAAA,CAAC,CAAC;YACH,MAAM;AACP,SAAA;AAED,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;QACnC,iBAAiB,EAAE,OAAO,CAAC,gBAAgB;QAC3C,UAAU,EAAE,OAAO,CAAC,UAAU;AAC/B,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;AACd,QAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEnB,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,CAAC;AAED;;AAEG;AACI,MAAM,qBAAqB,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,CAAC,OAAO;AAE3E;;;AAGG;AACI,eAAe,WAAW,CAC/B,EAA2C,EAC3C,OAAiC,EAAA;IAEjC,OAAO,qBAAqB,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AAC1D"}
1
+ {"version":3,"file":"connect-to-database.js","sources":["../../src/utils/connect-to-database.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -8,14 +8,14 @@ export declare class EmbedModelValidator extends BaseValidator {
8
8
  /**
9
9
  * Mutate the value to be a model, also fail if the mutated value is not a valid model
10
10
  */
11
- model(model: ChildModel<any> | string): this;
11
+ model(model: ChildModel<any> | string, errorMessage?: string): EmbedModelValidator;
12
12
  /**
13
13
  * Validate the value is a list of models
14
14
  */
15
- models(model: ChildModel<any> | string): this;
15
+ models(model: ChildModel<any> | string, errorMessage?: string): EmbedModelValidator;
16
16
  /**
17
17
  * Determine how the data will be stored as an embedded document
18
18
  */
19
- embed(embed?: string | string[]): this;
19
+ embed(embed?: string | string[]): EmbedModelValidator;
20
20
  }
21
21
  //# sourceMappingURL=embed-validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"embed-validator.d.ts","sourceRoot":"","sources":["../../../src/validation/validators/embed-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK3D,qBAAa,mBAAoB,SAAQ,aAAa;IACpD;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAQvC;;OAEG;IACI,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM;IAY5C;;OAEG;IACI,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM;IAa7C;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;CAOvC"}
1
+ {"version":3,"file":"embed-validator.d.ts","sourceRoot":"","sources":["../../../src/validation/validators/embed-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK3D,qBAAa,mBAAoB,SAAQ,aAAa;IACpD;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO;IAQvC;;OAEG;IACI,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAUzF;;OAEG;IACI,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAc1F;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,mBAAmB;CAK7D"}
@@ -10,33 +10,34 @@ import {BaseValidator,arrayRule}from'@warlock.js/seal';import {Model}from'../../
10
10
  /**
11
11
  * Mutate the value to be a model, also fail if the mutated value is not a valid model
12
12
  */
13
- model(model) {
13
+ model(model, errorMessage) {
14
14
  this.addMutator(databaseModelMutator, {
15
15
  model,
16
16
  });
17
- const rule = this.addRule(databaseModelRule);
18
- rule.context.options.model = model;
19
- return this;
17
+ return this.addRule(databaseModelRule, errorMessage, {
18
+ model,
19
+ });
20
20
  }
21
21
  /**
22
22
  * Validate the value is a list of models
23
23
  */
24
- models(model) {
25
- this.addMutator(databaseModelsMutator, {
24
+ models(model, errorMessage) {
25
+ const instance = this.instance;
26
+ instance.addMutator(databaseModelsMutator, {
27
+ model,
28
+ });
29
+ instance.addMutableRule(arrayRule);
30
+ instance.addMutableRule(databaseModelsRule, errorMessage, {
26
31
  model,
27
32
  });
28
- this.addRule(arrayRule);
29
- const rule = this.addRule(databaseModelsRule);
30
- rule.context.options.model = model;
31
- return this;
33
+ return instance;
32
34
  }
33
35
  /**
34
36
  * Determine how the data will be stored as an embedded document
35
37
  */
36
38
  embed(embed) {
37
- this.addTransformer(databaseModelTransformer, {
39
+ return this.addTransformer(databaseModelTransformer, {
38
40
  embed,
39
41
  });
40
- return this;
41
42
  }
42
43
  }export{EmbedModelValidator};//# sourceMappingURL=embed-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"embed-validator.js","sources":["../../../src/validation/validators/embed-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"2VAMM,MAAO,mBAAoB,SAAQ,aAAa,CAAA;AACpD;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;QAC3B,QACE,KAAK,YAAY,KAAK;YACtB,OAAO,KAAK,KAAK,QAAQ;aACxB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,YAAY,KAAK,CAAC,CAAC,EACtE;KACH;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,KAA+B,EAAA;AAC1C,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE;YACpC,KAAK;AACN,SAAA,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAE7C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAEnC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,MAAM,CAAC,KAA+B,EAAA;AAC3C,QAAA,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE;YACrC,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAE9C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;AAEnC,QAAA,OAAO,IAAI,CAAC;KACb;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,KAAyB,EAAA;AACpC,QAAA,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE;YAC5C,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC;KACb;AACF"}
1
+ {"version":3,"file":"embed-validator.js","sources":["../../../src/validation/validators/embed-validator.ts"],"sourcesContent":[null],"names":[],"mappings":"2VAMM,MAAO,mBAAoB,SAAQ,aAAa,CAAA;AACpD;;AAEG;AACI,IAAA,WAAW,CAAC,KAAU,EAAA;QAC3B,QACE,KAAK,YAAY,KAAK;YACtB,OAAO,KAAK,KAAK,QAAQ;aACxB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,YAAY,KAAK,CAAC,CAAC,EACtE;KACH;AAED;;AAEG;IACI,KAAK,CAAC,KAA+B,EAAE,YAAqB,EAAA;AACjE,QAAA,IAAI,CAAC,UAAU,CAAC,oBAAoB,EAAE;YACpC,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,YAAY,EAAE;YACnD,KAAK;AACN,SAAA,CAAC,CAAC;KACJ;AAED;;AAEG;IACI,MAAM,CAAC,KAA+B,EAAE,YAAqB,EAAA;AAClE,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC/B,QAAA,QAAQ,CAAC,UAAU,CAAC,qBAAqB,EAAE;YACzC,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;AACnC,QAAA,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,YAAY,EAAE;YACxD,KAAK;AACN,SAAA,CAAC,CAAC;AAEH,QAAA,OAAO,QAAQ,CAAC;KACjB;AAED;;AAEG;AACI,IAAA,KAAK,CAAC,KAAyB,EAAA;AACpC,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,wBAAwB,EAAE;YACnD,KAAK;AACN,SAAA,CAAC,CAAC;KACJ;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warlock.js/cascade",
3
- "version": "4.0.138",
3
+ "version": "4.0.140",
4
4
  "description": "ORM for managing databases",
5
5
  "main": "./esm/index.js",
6
6
  "dependencies": {
@@ -8,9 +8,9 @@
8
8
  "@mongez/events": "^2.1.0",
9
9
  "@mongez/reinforcements": "^2.3.17",
10
10
  "@mongez/supportive-is": "^2.0.0",
11
- "@warlock.js/context": "4.0.138",
12
- "@warlock.js/logger": "4.0.138",
13
- "@warlock.js/seal": "4.0.138"
11
+ "@warlock.js/context": "4.0.140",
12
+ "@warlock.js/logger": "4.0.140",
13
+ "@warlock.js/seal": "4.0.140"
14
14
  },
15
15
  "scripts": {
16
16
  "update": "npx ncu -u",