@turystack/nestjs-database 0.0.6 → 0.0.8

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.
@@ -27,8 +27,6 @@ let DatabaseModule = DatabaseModule_1 = class DatabaseModule {
27
27
  {
28
28
  provide: DatabaseService,
29
29
  useFactory: async () => {
30
- const { db, strategy } = await createDrizzleClient(options);
31
- registerDb(db);
32
30
  let schema;
33
31
  switch (options.adapter) {
34
32
  case 'postgresql': {
@@ -44,6 +42,8 @@ let DatabaseModule = DatabaseModule_1 = class DatabaseModule {
44
42
  break;
45
43
  }
46
44
  }
45
+ const { db, strategy } = await createDrizzleClient(options, schema);
46
+ registerDb(db);
47
47
  return new DatabaseService(db, schema, strategy);
48
48
  },
49
49
  },
@@ -1 +1 @@
1
- {"version":3,"file":"database.module.js","sourceRoot":"","sources":["../src/database.module.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAsB,MAAM,EAAiB,MAAM,gBAAgB,CAAA;AAE1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAGvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EACN,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,qCAAqC,CAAA;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAA;AAG9D,IAAM,cAAc,sBAApB,MAAM,cAAc;IAC1B,MAAM,CAAC,QAAQ,CACd,OAAuC;QAEvC,OAAO;YACN,OAAO,EAAE;gBACR,eAAe;gBACf,gBAAgB;aAChB;YACD,MAAM,EAAE,gBAAc;YACtB,SAAS,EAAE,gBAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC;SACpD,CAAA;IACF,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAC/B,OAAuC;QAEvC,OAAO;YACN;gBACC,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,KAAK,IAAI,EAAE;oBACtB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAA;oBAC3D,UAAU,CAAC,EAAE,CAAC,CAAA;oBAEd,IAAI,MAA+B,CAAA;oBAEnC,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;wBACzB,KAAK,YAAY,CAAC,CAAC,CAAC;4BACnB,MAAM,GAAG,iBAAiB,CACzB,YAAY,EACZ,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,CACzD,CAAA;4BACD,MAAK;wBACN,CAAC;wBACD,KAAK,OAAO,CAAC,CAAC,CAAC;4BACd,MAAM,GAAG,iBAAiB,CACzB,OAAO,EACP,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CACpD,CAAA;4BACD,MAAK;wBACN,CAAC;wBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACf,MAAM,GAAG,iBAAiB,CACzB,QAAQ,EACR,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CACrD,CAAA;4BACD,MAAK;wBACN,CAAC;oBACF,CAAC;oBAED,OAAO,IAAI,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;gBACjD,CAAC;aACD;YACD;gBACC,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,eAAe;aAC5B;SACD,CAAA;IACF,CAAC;CACD,CAAA;AA3DY,cAAc;IAD1B,MAAM,CAAC,EAAE,CAAC;GACE,cAAc,CA2D1B"}
1
+ {"version":3,"file":"database.module.js","sourceRoot":"","sources":["../src/database.module.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAsB,MAAM,EAAiB,MAAM,gBAAgB,CAAA;AAE1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAGvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EACN,mBAAmB,EACnB,iBAAiB,GACjB,MAAM,qCAAqC,CAAA;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAA;AAG9D,IAAM,cAAc,sBAApB,MAAM,cAAc;IAC1B,MAAM,CAAC,QAAQ,CACd,OAAuC;QAEvC,OAAO;YACN,OAAO,EAAE;gBACR,eAAe;gBACf,gBAAgB;aAChB;YACD,MAAM,EAAE,gBAAc;YACtB,SAAS,EAAE,gBAAc,CAAC,iBAAiB,CAAC,OAAO,CAAC;SACpD,CAAA;IACF,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAC/B,OAAuC;QAEvC,OAAO;YACN;gBACC,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,KAAK,IAAI,EAAE;oBACtB,IAAI,MAA+B,CAAA;oBAEnC,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;wBACzB,KAAK,YAAY,CAAC,CAAC,CAAC;4BACnB,MAAM,GAAG,iBAAiB,CACzB,YAAY,EACZ,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,CACzD,CAAA;4BACD,MAAK;wBACN,CAAC;wBACD,KAAK,OAAO,CAAC,CAAC,CAAC;4BACd,MAAM,GAAG,iBAAiB,CACzB,OAAO,EACP,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CACpD,CAAA;4BACD,MAAK;wBACN,CAAC;wBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;4BACf,MAAM,GAAG,iBAAiB,CACzB,QAAQ,EACR,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CACrD,CAAA;4BACD,MAAK;wBACN,CAAC;oBACF,CAAC;oBAED,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;oBACnE,UAAU,CAAC,EAAE,CAAC,CAAA;oBAEd,OAAO,IAAI,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;gBACjD,CAAC;aACD;YACD;gBACC,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,eAAe;aAC5B;SACD,CAAA;IACF,CAAC;CACD,CAAA;AA3DY,cAAc;IAD1B,MAAM,CAAC,EAAE,CAAC;GACE,cAAc,CA2D1B"}
@@ -1,8 +1,9 @@
1
+ import type { ResolvedDatabase } from './database.types.js';
1
2
  import type { AdapterStrategy } from './drizzle/client.drizzle.js';
2
3
  export declare class DatabaseService<TSchema extends Record<string, unknown> = Record<string, unknown>> {
3
4
  private readonly _db;
4
5
  readonly _strategy: AdapterStrategy;
5
- constructor(db: unknown, schema: TSchema, strategy: AdapterStrategy);
6
- get db(): unknown;
6
+ constructor(db: ResolvedDatabase, schema: TSchema, strategy: AdapterStrategy);
7
+ get db(): ResolvedDatabase;
7
8
  }
8
9
  //# sourceMappingURL=database.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.service.d.ts","sourceRoot":"","sources":["../src/database.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AA0BlE,qBACa,eAAe,CAC3B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEjE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAA;gBAEvB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe;IAUnE,IAAI,EAAE,IAAI,OAAO,CAEhB;CACD"}
1
+ {"version":3,"file":"database.service.d.ts","sourceRoot":"","sources":["../src/database.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AA0BlE,qBACa,eAAe,CAC3B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEjE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAkB;IACtC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAA;gBAGlC,EAAE,EAAE,gBAAgB,EACpB,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,eAAe;IAW1B,IAAI,EAAE,IAAI,gBAAgB,CAEzB;CACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"database.service.js","sourceRoot":"","sources":["../src/database.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAA;AA0BhE,IAAM,eAAe,GAArB,MAAM,eAAe;IAGV,GAAG,CAAS;IACpB,SAAS,CAAiB;IAEnC,YAAY,EAAW,EAAE,MAAe,EAAE,QAAyB;QAClE,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QACzB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC5B,CAAC;IAMD,IAAI,EAAE;QACL,OAAO,YAAY,EAAE,IAAI,IAAI,CAAC,GAAG,CAAA;IAClC,CAAC;CACD,CAAA;AAnBY,eAAe;IAD3B,UAAU,EAAE;;GACA,eAAe,CAmB3B"}
1
+ {"version":3,"file":"database.service.js","sourceRoot":"","sources":["../src/database.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAA;AA0BhE,IAAM,eAAe,GAArB,MAAM,eAAe;IAGV,GAAG,CAAkB;IAC7B,SAAS,CAAiB;IAEnC,YACC,EAAoB,EACpB,MAAe,EACf,QAAyB;QAEzB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACb,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QACzB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC5B,CAAC;IAMD,IAAI,EAAE;QACL,OAAO,YAAY,EAAE,IAAI,IAAI,CAAC,GAAG,CAAA;IAClC,CAAC;CACD,CAAA;AAvBY,eAAe;IAD3B,UAAU,EAAE;;GACA,eAAe,CAuB3B"}
@@ -1,4 +1,8 @@
1
+ import type { NodePgDatabase } from 'drizzle-orm/node-postgres';
2
+ import type { MySql2Database } from 'drizzle-orm/mysql2';
3
+ import type { BetterSQLite3Database } from 'drizzle-orm/better-sqlite3';
1
4
  import type { MysqlSchemaBuilder, PgSchemaBuilder, SchemaResolverResult, SqliteSchemaBuilder } from './drizzle/schema-builder.types.drizzle.js';
5
+ import type { MaterializeSchema } from './drizzle/schema-builder.drizzle.js';
2
6
  export type DatabaseAdapter = 'postgresql' | 'mysql' | 'sqlite';
3
7
  export type DatabaseModuleOptions<TResult extends SchemaResolverResult = SchemaResolverResult> = {
4
8
  adapter: 'postgresql';
@@ -19,4 +23,19 @@ export type DatabaseModuleOptions<TResult extends SchemaResolverResult = SchemaR
19
23
  };
20
24
  schemaResolver: (schema: SqliteSchemaBuilder) => TResult;
21
25
  };
26
+ export interface DatabaseServiceRegistry {
27
+ }
28
+ export type ResolvedDatabase = DatabaseServiceRegistry extends {
29
+ db: infer TDb;
30
+ } ? TDb : unknown;
31
+ export type InferDatabase<T extends DatabaseModuleOptions> = T extends {
32
+ adapter: 'postgresql';
33
+ schemaResolver: (schema: PgSchemaBuilder) => infer R;
34
+ } ? R extends SchemaResolverResult ? NodePgDatabase<MaterializeSchema<'postgresql', R>> : never : T extends {
35
+ adapter: 'mysql';
36
+ schemaResolver: (schema: MysqlSchemaBuilder) => infer R;
37
+ } ? R extends SchemaResolverResult ? MySql2Database<MaterializeSchema<'mysql', R>> : never : T extends {
38
+ adapter: 'sqlite';
39
+ schemaResolver: (schema: SqliteSchemaBuilder) => infer R;
40
+ } ? R extends SchemaResolverResult ? BetterSQLite3Database<MaterializeSchema<'sqlite', R>> : never : never;
22
41
  //# sourceMappingURL=database.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.types.d.ts","sourceRoot":"","sources":["../src/database.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,MAAM,2CAA2C,CAAA;AAGlD,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAA;AAuB/D,MAAM,MAAM,qBAAqB,CAChC,OAAO,SAAS,oBAAoB,GAAG,oBAAoB,IAEzD;IACA,OAAO,EAAE,YAAY,CAAA;IACrB,UAAU,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3B,cAAc,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAA;CACnD,GACD;IACA,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACtB,cAAc,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAA;CACtD,GACD;IACA,OAAO,EAAE,QAAQ,CAAA;IACjB,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACvB,cAAc,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAA;CACvD,CAAA"}
1
+ {"version":3,"file":"database.types.d.ts","sourceRoot":"","sources":["../src/database.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE,OAAO,KAAK,EACX,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,MAAM,2CAA2C,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAG5E,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAA;AAuB/D,MAAM,MAAM,qBAAqB,CAChC,OAAO,SAAS,oBAAoB,GAAG,oBAAoB,IAEzD;IACA,OAAO,EAAE,YAAY,CAAA;IACrB,UAAU,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3B,cAAc,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAA;CACnD,GACD;IACA,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACtB,cAAc,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAA;CACtD,GACD;IACA,OAAO,EAAE,QAAQ,CAAA;IACjB,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACvB,cAAc,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAA;CACvD,CAAA;AAmBJ,MAAM,WAAW,uBAAuB;CAAG;AAG3C,MAAM,MAAM,gBAAgB,GAC3B,uBAAuB,SAAS;IAAE,EAAE,EAAE,MAAM,GAAG,CAAA;CAAE,GAAG,GAAG,GAAG,OAAO,CAAA;AAQlE,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,qBAAqB,IACxD,CAAC,SAAS;IACT,OAAO,EAAE,YAAY,CAAA;IACrB,cAAc,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,MAAM,CAAC,CAAA;CACpD,GACE,CAAC,SAAS,oBAAoB,GAC7B,cAAc,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,GAClD,KAAK,GACN,CAAC,SAAS;IACT,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,MAAM,CAAC,CAAA;CACvD,GACA,CAAC,SAAS,oBAAoB,GAC7B,cAAc,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAC7C,KAAK,GACN,CAAC,SAAS;IACT,OAAO,EAAE,QAAQ,CAAA;IACjB,cAAc,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,MAAM,CAAC,CAAA;CACxD,GACA,CAAC,SAAS,oBAAoB,GAC7B,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GACrD,KAAK,GACN,KAAK,CAAA"}
@@ -2,7 +2,7 @@ import type { DatabaseModuleOptions } from '../database.types.js';
2
2
  export interface AdapterStrategy {
3
3
  runTransaction(db: unknown, fn: (tx: unknown) => Promise<unknown>, isolationLevel?: string): Promise<unknown>;
4
4
  }
5
- export declare function createDrizzleClient(options: DatabaseModuleOptions): Promise<{
5
+ export declare function createDrizzleClient(options: DatabaseModuleOptions, schema: Record<string, unknown>): Promise<{
6
6
  db: unknown;
7
7
  strategy: AdapterStrategy;
8
8
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/client.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAEhE,MAAM,WAAW,eAAe;IAC/B,cAAc,CACb,EAAE,EAAE,OAAO,EACX,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EACrC,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAAA;CACnB;AA6DD,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC;IAClF,EAAE,EAAE,OAAO,CAAA;IACX,QAAQ,EAAE,eAAe,CAAA;CACzB,CAAC,CAyBD"}
1
+ {"version":3,"file":"client.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/client.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAEhE,MAAM,WAAW,eAAe;IAC/B,cAAc,CACb,EAAE,EAAE,OAAO,EACX,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,EACrC,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAAA;CACnB;AA6DD,wBAAsB,mBAAmB,CACxC,OAAO,EAAE,qBAAqB,EAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC;IACV,EAAE,EAAE,OAAO,CAAA;IACX,QAAQ,EAAE,eAAe,CAAA;CACzB,CAAC,CAyBD"}
@@ -29,19 +29,19 @@ class SqliteStrategy {
29
29
  : undefined);
30
30
  }
31
31
  }
32
- export async function createDrizzleClient(options) {
32
+ export async function createDrizzleClient(options, schema) {
33
33
  switch (options.adapter) {
34
34
  case 'postgresql': {
35
35
  const { drizzle } = await import('drizzle-orm/node-postgres');
36
36
  return {
37
- db: drizzle(options.postgresql.url),
37
+ db: drizzle(options.postgresql.url, { schema }),
38
38
  strategy: new PostgresqlStrategy(),
39
39
  };
40
40
  }
41
41
  case 'mysql': {
42
42
  const { drizzle } = await import('drizzle-orm/mysql2');
43
43
  return {
44
- db: drizzle(options.mysql.url),
44
+ db: drizzle(options.mysql.url, { schema, mode: 'default' }),
45
45
  strategy: new MysqlStrategy(),
46
46
  };
47
47
  }
@@ -49,7 +49,7 @@ export async function createDrizzleClient(options) {
49
49
  const { drizzle } = await import('drizzle-orm/better-sqlite3');
50
50
  const Database = (await import('better-sqlite3')).default;
51
51
  return {
52
- db: drizzle(new Database(options.sqlite.url)),
52
+ db: drizzle(new Database(options.sqlite.url), { schema }),
53
53
  strategy: new SqliteStrategy(),
54
54
  };
55
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/client.drizzle.ts"],"names":[],"mappings":"AAUA,MAAM,kBAAkB;IACvB,KAAK,CAAC,cAAc,CACnB,EAAW,EACX,EAAqC,EACrC,cAAuB;QAEvB,MAAM,IAAI,GAAG,EAAuH,CAAA;QACpI,OAAO,IAAI,CAAC,WAAW,CACtB,EAAE,EACF,cAAc;YACb,CAAC,CAAC;gBACA,cAAc;aACd;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,aAAa;IAClB,KAAK,CAAC,cAAc,CACnB,EAAW,EACX,EAAqC,EACrC,cAAuB;QAEvB,MAAM,OAAO,GAAG,EAAuH,CAAA;QACvI,OAAO,OAAO,CAAC,WAAW,CACzB,EAAE,EACF,cAAc;YACb,CAAC,CAAC;gBACA,cAAc;aACd;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,cAAc;IACnB,KAAK,CAAC,cAAc,CACnB,EAAW,EACX,EAAqC,EACrC,cAAuB;QAEvB,MAAM,QAAQ,GAAG,EAAiH,CAAA;QAClI,MAAM,QAAQ,GAAG,cAIL,CAAA;QACZ,OAAO,QAAQ,CAAC,WAAW,CAC1B,EAAE,EACF,QAAQ;YACP,CAAC,CAAC;gBACA,QAAQ;aACR;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAA8B;IAIvE,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;QACzB,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAA;YAC7D,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;gBACnC,QAAQ,EAAE,IAAI,kBAAkB,EAAE;aAClC,CAAA;QACF,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;YACtD,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC9B,QAAQ,EAAE,IAAI,aAAa,EAAE;aAC7B,CAAA;QACF,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAA;YAC9D,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAA;YACzD,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7C,QAAQ,EAAE,IAAI,cAAc,EAAE;aAC9B,CAAA;QACF,CAAC;IACF,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"client.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/client.drizzle.ts"],"names":[],"mappings":"AAUA,MAAM,kBAAkB;IACvB,KAAK,CAAC,cAAc,CACnB,EAAW,EACX,EAAqC,EACrC,cAAuB;QAEvB,MAAM,IAAI,GAAG,EAAuH,CAAA;QACpI,OAAO,IAAI,CAAC,WAAW,CACtB,EAAE,EACF,cAAc;YACb,CAAC,CAAC;gBACA,cAAc;aACd;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,aAAa;IAClB,KAAK,CAAC,cAAc,CACnB,EAAW,EACX,EAAqC,EACrC,cAAuB;QAEvB,MAAM,OAAO,GAAG,EAAuH,CAAA;QACvI,OAAO,OAAO,CAAC,WAAW,CACzB,EAAE,EACF,cAAc;YACb,CAAC,CAAC;gBACA,cAAc;aACd;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,cAAc;IACnB,KAAK,CAAC,cAAc,CACnB,EAAW,EACX,EAAqC,EACrC,cAAuB;QAEvB,MAAM,QAAQ,GAAG,EAAiH,CAAA;QAClI,MAAM,QAAQ,GAAG,cAIL,CAAA;QACZ,OAAO,QAAQ,CAAC,WAAW,CAC1B,EAAE,EACF,QAAQ;YACP,CAAC,CAAC;gBACA,QAAQ;aACR;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,OAA8B,EAC9B,MAA+B;IAK/B,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;QACzB,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAA;YAC7D,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC;gBAC/C,QAAQ,EAAE,IAAI,kBAAkB,EAAE;aAClC,CAAA;QACF,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;YACtD,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;gBAC3D,QAAQ,EAAE,IAAI,aAAa,EAAE;aAC7B,CAAA;QACF,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAA;YAC9D,MAAM,QAAQ,GAAG,CAAC,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAA;YACzD,OAAO;gBACN,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;gBACzD,QAAQ,EAAE,IAAI,cAAc,EAAE;aAC9B,CAAA;QACF,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -1,9 +1,40 @@
1
- import type { Table } from 'drizzle-orm';
1
+ import type { BuildColumns } from 'drizzle-orm';
2
+ import type { PgColumnBuilderBase, PgTableWithColumns } from 'drizzle-orm/pg-core';
3
+ import type { MySqlColumnBuilderBase, MySqlTableWithColumns } from 'drizzle-orm/mysql-core';
4
+ import type { SQLiteColumnBuilderBase, SQLiteTableWithColumns } from 'drizzle-orm/sqlite-core';
2
5
  import type { DatabaseAdapter } from '../database.types.js';
3
- import type { MysqlSchemaBuilder, PgSchemaBuilder, SchemaResolverResult, SqliteSchemaBuilder } from '../drizzle/schema-builder.types.drizzle.js';
6
+ import type { ColumnMap, MysqlSchemaBuilder, PgSchemaBuilder, SchemaResolverResult, SqliteSchemaBuilder } from '../drizzle/schema-builder.types.drizzle.js';
4
7
  export declare function createSchemaBuilder(adapter: 'postgresql'): PgSchemaBuilder;
5
8
  export declare function createSchemaBuilder(adapter: 'mysql'): MysqlSchemaBuilder;
6
9
  export declare function createSchemaBuilder(adapter: 'sqlite'): SqliteSchemaBuilder;
7
10
  export declare function createSchemaBuilder(adapter: DatabaseAdapter): PgSchemaBuilder | MysqlSchemaBuilder | SqliteSchemaBuilder;
8
- export declare function materializeSchema(adapter: DatabaseAdapter, resolverResult: SchemaResolverResult): Record<string, Table>;
11
+ type MaterializePg<TResult extends SchemaResolverResult> = {
12
+ [K in keyof TResult & string]: TResult[K] extends ColumnMap<infer C> ? PgTableWithColumns<{
13
+ name: K;
14
+ schema: undefined;
15
+ columns: BuildColumns<K, C & Record<string, PgColumnBuilderBase>, 'pg'>;
16
+ dialect: 'pg';
17
+ }> : never;
18
+ };
19
+ type MaterializeMysql<TResult extends SchemaResolverResult> = {
20
+ [K in keyof TResult & string]: TResult[K] extends ColumnMap<infer C> ? MySqlTableWithColumns<{
21
+ name: K;
22
+ schema: undefined;
23
+ columns: BuildColumns<K, C & Record<string, MySqlColumnBuilderBase>, 'mysql'>;
24
+ dialect: 'mysql';
25
+ }> : never;
26
+ };
27
+ type MaterializeSqlite<TResult extends SchemaResolverResult> = {
28
+ [K in keyof TResult & string]: TResult[K] extends ColumnMap<infer C> ? SQLiteTableWithColumns<{
29
+ name: K;
30
+ schema: undefined;
31
+ columns: BuildColumns<K, C & Record<string, SQLiteColumnBuilderBase>, 'sqlite'>;
32
+ dialect: 'sqlite';
33
+ }> : never;
34
+ };
35
+ export type MaterializeSchema<TAdapter extends DatabaseAdapter, TResult extends SchemaResolverResult> = TAdapter extends 'postgresql' ? MaterializePg<TResult> : TAdapter extends 'mysql' ? MaterializeMysql<TResult> : TAdapter extends 'sqlite' ? MaterializeSqlite<TResult> : never;
36
+ export declare function materializeSchema<TResult extends SchemaResolverResult>(adapter: 'postgresql', resolverResult: TResult): MaterializePg<TResult>;
37
+ export declare function materializeSchema<TResult extends SchemaResolverResult>(adapter: 'mysql', resolverResult: TResult): MaterializeMysql<TResult>;
38
+ export declare function materializeSchema<TResult extends SchemaResolverResult>(adapter: 'sqlite', resolverResult: TResult): MaterializeSqlite<TResult>;
39
+ export {};
9
40
  //# sourceMappingURL=schema-builder.drizzle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-builder.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAKxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D,OAAO,KAAK,EAEX,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,MAAM,2CAA2C,CAAA;AAUlD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,eAAe,CAAA;AAC3E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,CAAA;AACzE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,QAAQ,GAAG,mBAAmB,CAAA;AAC3E,wBAAgB,mBAAmB,CAClC,OAAO,EAAE,eAAe,GACtB,eAAe,GAAG,kBAAkB,GAAG,mBAAmB,CAAA;AA4C7D,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,oBAAoB,GAClC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAOvB"}
1
+ {"version":3,"file":"schema-builder.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema-builder.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAYrD,MAAM,YAAY,GAAG;IACpB,KAAK,CACJ,OAAiB;QAEjB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAA;IAC9B,CAAC;CACD,CAAA;AAQD,MAAM,UAAU,mBAAmB,CAClC,OAAwB;IAExB,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,MAAM,CAAA;YAClD,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,EAAqB,CAAA;QAC5D,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,CAAA;YAC9D,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAwB,CAAA;QAClE,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,aAAa,EAAE,GAAG,UAAU,CAAA;YAClE,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,aAAa,EAAyB,CAAA;QACpE,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,WAAW,CACnB,OAAwB,EACxB,SAAiB,EACjB,OAAgC;IAEhC,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY;YAChB,OAAO,MAAM,CAAC,OAAO,CACpB,SAAS,EACT,OAAqD,CACrD,CAAA;QACF,KAAK,OAAO;YACX,OAAO,SAAS,CAAC,UAAU,CAC1B,SAAS,EACT,OAA2D,CAC3D,CAAA;QACF,KAAK,QAAQ;YACZ,OAAO,UAAU,CAAC,WAAW,CAC5B,SAAS,EACT,OAA6D,CAC7D,CAAA;IACH,CAAC;AACF,CAAC;AAED,MAAM,UAAU,iBAAiB,CAChC,OAAwB,EACxB,cAAoC;IAEpC,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;QAC9D,SAAS;QACT,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC;KACpD,CAAC,CACF,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"schema-builder.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAYrD,MAAM,YAAY,GAAG;IACpB,KAAK,CACJ,OAAiB;QAEjB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAA;IAC9B,CAAC;CACD,CAAA;AAQD,MAAM,UAAU,mBAAmB,CAClC,OAAwB;IAExB,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY,CAAC,CAAC,CAAC;YACnB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,MAAM,CAAA;YAClD,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,EAAqB,CAAA;QAC5D,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACd,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS,CAAA;YAC9D,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAwB,CAAA;QAClE,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,aAAa,EAAE,GAAG,UAAU,CAAA;YAClE,OAAO,EAAE,GAAG,YAAY,EAAE,GAAG,aAAa,EAAyB,CAAA;QACpE,CAAC;IACF,CAAC;AACF,CAAC;AAED,SAAS,WAAW,CACnB,OAAwB,EACxB,SAAiB,EACjB,OAAgC;IAEhC,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY;YAChB,OAAO,MAAM,CAAC,OAAO,CACpB,SAAS,EACT,OAAqD,CACrD,CAAA;QACF,KAAK,OAAO;YACX,OAAO,SAAS,CAAC,UAAU,CAC1B,SAAS,EACT,OAA2D,CAC3D,CAAA;QACF,KAAK,QAAQ;YACZ,OAAO,UAAU,CAAC,WAAW,CAC5B,SAAS,EACT,OAA6D,CAC7D,CAAA;IACH,CAAC;AACF,CAAC;AAsED,MAAM,UAAU,iBAAiB,CAChC,OAAwB,EACxB,cAAoC;IAEpC,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;QAC9D,SAAS;QACT,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC;KACpD,CAAC,CACF,CAAA;AACF,CAAC"}
@@ -1,16 +1,17 @@
1
+ import type { ColumnBuilderBase } from 'drizzle-orm';
1
2
  import type * as MysqlCore from 'drizzle-orm/mysql-core';
2
3
  import type * as PgCore from 'drizzle-orm/pg-core';
3
4
  import type * as SqliteCore from 'drizzle-orm/sqlite-core';
4
- export type ColumnMap<TColumns extends Record<string, unknown>> = {
5
+ export type ColumnMap<TColumns extends Record<string, ColumnBuilderBase>> = {
5
6
  readonly __columns: TColumns;
6
7
  };
7
8
  interface SchemaTableBuilder {
8
- table<TColumns extends Record<string, unknown>>(columns: TColumns): ColumnMap<TColumns>;
9
+ table<TColumns extends Record<string, ColumnBuilderBase>>(columns: TColumns): ColumnMap<TColumns>;
9
10
  }
10
11
  export type PgSchemaBuilder = SchemaTableBuilder & Omit<typeof PgCore, 'pgTable'>;
11
12
  export type MysqlSchemaBuilder = SchemaTableBuilder & Omit<typeof MysqlCore, 'mysqlTable'>;
12
13
  export type SqliteSchemaBuilder = SchemaTableBuilder & Omit<typeof SqliteCore, 'sqliteTable'>;
13
14
  export type SchemaBuilder = PgSchemaBuilder | MysqlSchemaBuilder | SqliteSchemaBuilder;
14
- export type SchemaResolverResult = Record<string, ColumnMap<Record<string, unknown>>>;
15
+ export type SchemaResolverResult = Record<string, ColumnMap<Record<string, ColumnBuilderBase>>>;
15
16
  export {};
16
17
  //# sourceMappingURL=schema-builder.types.drizzle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-builder.types.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/schema-builder.types.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAO1D,MAAM,MAAM,SAAS,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACjE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAA;CAC5B,CAAA;AAED,UAAU,kBAAkB;IAC3B,KAAK,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,OAAO,EAAE,QAAQ,GACf,SAAS,CAAC,QAAQ,CAAC,CAAA;CACtB;AAGD,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAC/C,IAAI,CAAC,OAAO,MAAM,EAAE,SAAS,CAAC,CAAA;AAG/B,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAClD,IAAI,CAAC,OAAO,SAAS,EAAE,YAAY,CAAC,CAAA;AAGrC,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GACnD,IAAI,CAAC,OAAO,UAAU,EAAE,aAAa,CAAC,CAAA;AAEvC,MAAM,MAAM,aAAa,GACtB,eAAe,GACf,kBAAkB,GAClB,mBAAmB,CAAA;AAEtB,MAAM,MAAM,oBAAoB,GAAG,MAAM,CACxC,MAAM,EACN,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAClC,CAAA"}
1
+ {"version":3,"file":"schema-builder.types.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/schema-builder.types.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAO1D,MAAM,MAAM,SAAS,CACpB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAC/C;IACH,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAA;CAC5B,CAAA;AAED,UAAU,kBAAkB;IAC3B,KAAK,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,EACvD,OAAO,EAAE,QAAQ,GACf,SAAS,CAAC,QAAQ,CAAC,CAAA;CACtB;AAGD,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAC/C,IAAI,CAAC,OAAO,MAAM,EAAE,SAAS,CAAC,CAAA;AAG/B,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAClD,IAAI,CAAC,OAAO,SAAS,EAAE,YAAY,CAAC,CAAA;AAGrC,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GACnD,IAAI,CAAC,OAAO,UAAU,EAAE,aAAa,CAAC,CAAA;AAEvC,MAAM,MAAM,aAAa,GACtB,eAAe,GACf,kBAAkB,GAClB,mBAAmB,CAAA;AAEtB,MAAM,MAAM,oBAAoB,GAAG,MAAM,CACxC,MAAM,EACN,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAC5C,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import { AsyncLocalStorage } from 'node:async_hooks';
2
+ import type { ResolvedDatabase } from '../database.types.js';
2
3
  export declare const transactionStorage: AsyncLocalStorage<unknown>;
3
- export declare function getCurrentTx(): unknown | undefined;
4
- export declare function registerDb(db: unknown): void;
5
- export declare function getDb(): unknown;
4
+ export declare function getCurrentTx(): ResolvedDatabase | undefined;
5
+ export declare function registerDb(db: ResolvedDatabase): void;
6
+ export declare function getDb(): ResolvedDatabase;
6
7
  //# sourceMappingURL=transaction-context.drizzle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-context.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/transaction-context.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,eAAO,MAAM,kBAAkB,4BAAmC,CAAA;AAElE,wBAAgB,YAAY,IAAI,OAAO,GAAG,SAAS,CAElD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI,CAE5C;AAED,wBAAgB,KAAK,IAAI,OAAO,CAQ/B"}
1
+ {"version":3,"file":"transaction-context.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/transaction-context.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D,eAAO,MAAM,kBAAkB,4BACW,CAAA;AAE1C,wBAAgB,YAAY,IAAI,gBAAgB,GAAG,SAAS,CAE3D;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,gBAAgB,GAAG,IAAI,CAErD;AAED,wBAAgB,KAAK,IAAI,gBAAgB,CAQxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-context.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/transaction-context.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAW,CAAA;AAElE,MAAM,UAAU,YAAY;IAC3B,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAA;AACrC,CAAC;AAED,IAAI,GAAwB,CAAA;AAE5B,MAAM,UAAU,UAAU,CAAC,EAAW;IACrC,GAAG,GAAG,EAAE,CAAA;AACT,CAAC;AAED,MAAM,UAAU,KAAK;IACpB,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CACd,6EAA6E,CAC7E,CAAA;IACF,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC"}
1
+ {"version":3,"file":"transaction-context.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/transaction-context.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAIpD,MAAM,CAAC,MAAM,kBAAkB,GAC9B,IAAI,iBAAiB,EAAoB,CAAA;AAE1C,MAAM,UAAU,YAAY;IAC3B,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAA;AACrC,CAAC;AAED,IAAI,GAAiC,CAAA;AAErC,MAAM,UAAU,UAAU,CAAC,EAAoB;IAC9C,GAAG,GAAG,EAAE,CAAA;AACT,CAAC;AAED,MAAM,UAAU,KAAK;IACpB,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CACd,6EAA6E,CAC7E,CAAA;IACF,CAAC;IAED,OAAO,GAAG,CAAA;AACX,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ export * from './database.constants.js';
2
2
  export * from './database.module.js';
3
3
  export * from './database.service.js';
4
4
  export * from './database.types.js';
5
+ export type { MaterializeSchema } from './drizzle/schema-builder.drizzle.js';
5
6
  export type { ColumnMap, SchemaBuilder, SchemaResolverResult, } from './drizzle/schema-builder.types.drizzle.js';
6
7
  export type { IsolationLevel } from './drizzle/transactional.drizzle.js';
7
8
  export { Transactional } from './drizzle/transactional.drizzle.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AAEnC,YAAY,EACX,SAAS,EACT,aAAa,EACb,oBAAoB,GACpB,MAAM,2CAA2C,CAAA;AAClD,YAAY,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AAEnC,YAAY,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;AAC5E,YAAY,EACX,SAAS,EACT,aAAa,EACb,oBAAoB,GACpB,MAAM,2CAA2C,CAAA;AAClD,YAAY,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AAQnC,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AASnC,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@turystack/nestjs-database",
3
3
  "private": false,
4
- "version": "0.0.6",
4
+ "version": "0.0.8",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",