@turystack/nestjs-database 0.0.1 → 0.0.5

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.
Files changed (57) hide show
  1. package/dist/database.module.d.ts.map +1 -1
  2. package/dist/database.module.js +21 -4
  3. package/dist/database.module.js.map +1 -1
  4. package/dist/database.types.d.ts +4 -4
  5. package/dist/database.types.d.ts.map +1 -1
  6. package/dist/drizzle/client.drizzle.d.ts.map +1 -1
  7. package/dist/drizzle/client.drizzle.js +23 -5
  8. package/dist/drizzle/client.drizzle.js.map +1 -1
  9. package/dist/drizzle/schema-builder.drizzle.d.ts +5 -2
  10. package/dist/drizzle/schema-builder.drizzle.d.ts.map +1 -1
  11. package/dist/drizzle/schema-builder.drizzle.js +29 -18
  12. package/dist/drizzle/schema-builder.drizzle.js.map +1 -1
  13. package/dist/drizzle/schema-builder.types.drizzle.d.ts +9 -1
  14. package/dist/drizzle/schema-builder.types.drizzle.d.ts.map +1 -1
  15. package/dist/drizzle/transaction-context.drizzle.d.ts.map +1 -1
  16. package/dist/drizzle/transaction-context.drizzle.js +2 -1
  17. package/dist/drizzle/transaction-context.drizzle.js.map +1 -1
  18. package/dist/drizzle/transactional.drizzle.d.ts.map +1 -1
  19. package/dist/drizzle/transactional.drizzle.js +6 -2
  20. package/dist/drizzle/transactional.drizzle.js.map +1 -1
  21. package/package.json +70 -69
  22. package/dist/drizzle/client.d.ts +0 -12
  23. package/dist/drizzle/client.d.ts.map +0 -1
  24. package/dist/drizzle/client.js +0 -34
  25. package/dist/drizzle/client.js.map +0 -1
  26. package/dist/drizzle/index.d.ts +0 -4
  27. package/dist/drizzle/index.d.ts.map +0 -1
  28. package/dist/drizzle/index.js +0 -4
  29. package/dist/drizzle/index.js.map +0 -1
  30. package/dist/drizzle/transaction-context.d.ts +0 -9
  31. package/dist/drizzle/transaction-context.d.ts.map +0 -1
  32. package/dist/drizzle/transaction-context.js +0 -15
  33. package/dist/drizzle/transaction-context.js.map +0 -1
  34. package/dist/drizzle/transactional.decorator.d.ts +0 -3
  35. package/dist/drizzle/transactional.decorator.d.ts.map +0 -1
  36. package/dist/drizzle/transactional.decorator.js +0 -15
  37. package/dist/drizzle/transactional.decorator.js.map +0 -1
  38. package/dist/prisma/index.d.ts +0 -3
  39. package/dist/prisma/index.d.ts.map +0 -1
  40. package/dist/prisma/index.js +0 -3
  41. package/dist/prisma/index.js.map +0 -1
  42. package/dist/prisma/prisma.client.d.ts +0 -2
  43. package/dist/prisma/prisma.client.d.ts.map +0 -1
  44. package/dist/prisma/prisma.client.js +0 -13
  45. package/dist/prisma/prisma.client.js.map +0 -1
  46. package/dist/prisma/transactional.decorator.d.ts +0 -2
  47. package/dist/prisma/transactional.decorator.d.ts.map +0 -1
  48. package/dist/prisma/transactional.decorator.js +0 -3
  49. package/dist/prisma/transactional.decorator.js.map +0 -1
  50. package/dist/schema-builder.d.ts +0 -7
  51. package/dist/schema-builder.d.ts.map +0 -1
  52. package/dist/schema-builder.js +0 -32
  53. package/dist/schema-builder.js.map +0 -1
  54. package/dist/schema-builder.types.d.ts +0 -8
  55. package/dist/schema-builder.types.d.ts.map +0 -1
  56. package/dist/schema-builder.types.js +0 -2
  57. package/dist/schema-builder.types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"database.module.d.ts","sourceRoot":"","sources":["../src/database.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAyB,MAAM,gBAAgB,CAAA;AAI1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAOhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAGrF,qBACa,cAAc;IAC1B,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAS,oBAAoB,EACnD,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACrC,aAAa;IAUhB,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAmBhC"}
1
+ {"version":3,"file":"database.module.d.ts","sourceRoot":"","sources":["../src/database.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAyB,MAAM,gBAAgB,CAAA;AAI1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAOhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAGrF,qBACa,cAAc;IAC1B,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAS,oBAAoB,EACnD,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,GACrC,aAAa;IAWhB,OAAO,CAAC,MAAM,CAAC,iBAAiB;CA6ChC"}
@@ -15,6 +15,7 @@ let DatabaseModule = DatabaseModule_1 = class DatabaseModule {
15
15
  static register(options) {
16
16
  return {
17
17
  exports: [
18
+ DatabaseService,
18
19
  DATABASE_SERVICE,
19
20
  ],
20
21
  module: DatabaseModule_1,
@@ -24,16 +25,32 @@ let DatabaseModule = DatabaseModule_1 = class DatabaseModule {
24
25
  static _resolveProviders(options) {
25
26
  return [
26
27
  {
27
- provide: DATABASE_SERVICE,
28
+ provide: DatabaseService,
28
29
  useFactory: () => {
29
30
  const { db, strategy } = createDrizzleClient(options);
30
31
  registerDb(db);
31
- const builder = createSchemaBuilder();
32
- const resolverResult = options.schemaResolver(builder);
33
- const schema = materializeSchema(options.adapter, resolverResult);
32
+ let schema;
33
+ switch (options.adapter) {
34
+ case 'postgresql': {
35
+ schema = materializeSchema('postgresql', options.schemaResolver(createSchemaBuilder('postgresql')));
36
+ break;
37
+ }
38
+ case 'mysql': {
39
+ schema = materializeSchema('mysql', options.schemaResolver(createSchemaBuilder('mysql')));
40
+ break;
41
+ }
42
+ case 'sqlite': {
43
+ schema = materializeSchema('sqlite', options.schemaResolver(createSchemaBuilder('sqlite')));
44
+ break;
45
+ }
46
+ }
34
47
  return new DatabaseService(db, schema, strategy);
35
48
  },
36
49
  },
50
+ {
51
+ provide: DATABASE_SERVICE,
52
+ useExisting: DatabaseService,
53
+ },
37
54
  ];
38
55
  }
39
56
  };
@@ -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,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,gBAAgB;gBACzB,UAAU,EAAE,GAAG,EAAE;oBAChB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;oBACrD,UAAU,CAAC,EAAE,CAAC,CAAA;oBAEd,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAA;oBACrC,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;oBACtD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;oBAEjE,OAAO,IAAI,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;gBACjD,CAAC;aACD;SACD,CAAA;IACF,CAAC;CACD,CAAA;AAhCY,cAAc;IAD1B,MAAM,CAAC,EAAE,CAAC;GACE,cAAc,CAgC1B"}
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,GAAG,EAAE;oBAChB,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;oBACrD,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,22 +1,22 @@
1
- import type { SchemaBuilder, SchemaResolverResult } from './drizzle/schema-builder.types.drizzle.js';
1
+ import type { MysqlSchemaBuilder, PgSchemaBuilder, SchemaResolverResult, SqliteSchemaBuilder } from './drizzle/schema-builder.types.drizzle.js';
2
2
  export type DatabaseAdapter = 'postgresql' | 'mysql' | 'sqlite';
3
3
  export type DatabaseModuleOptions<TResult extends SchemaResolverResult = SchemaResolverResult> = {
4
4
  adapter: 'postgresql';
5
5
  postgresql: {
6
6
  url: string;
7
7
  };
8
- schemaResolver: (schema: SchemaBuilder) => TResult;
8
+ schemaResolver: (schema: PgSchemaBuilder) => TResult;
9
9
  } | {
10
10
  adapter: 'mysql';
11
11
  mysql: {
12
12
  url: string;
13
13
  };
14
- schemaResolver: (schema: SchemaBuilder) => TResult;
14
+ schemaResolver: (schema: MysqlSchemaBuilder) => TResult;
15
15
  } | {
16
16
  adapter: 'sqlite';
17
17
  sqlite: {
18
18
  url: string;
19
19
  };
20
- schemaResolver: (schema: SchemaBuilder) => TResult;
20
+ schemaResolver: (schema: SqliteSchemaBuilder) => TResult;
21
21
  };
22
22
  //# 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,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAGpG,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAA;AAsB/D,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,oBAAoB,GAAG,oBAAoB,IACzF;IACE,OAAO,EAAE,YAAY,CAAA;IACrB,UAAU,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3B,cAAc,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAA;CACnD,GACD;IACE,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACtB,cAAc,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAA;CACnD,GACD;IACE,OAAO,EAAE,QAAQ,CAAA;IACjB,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACvB,cAAc,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAA;CACnD,CAAA"}
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 +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;AAGhE,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,MAAM,WAAW,eAAe;IAC/B,cAAc,CACb,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,EACnC,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAAA;CACnB;AA+CD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG;IACpE,EAAE,EAAE,KAAK,CAAA;IACT,QAAQ,EAAE,eAAe,CAAA;CACzB,CAuBA"}
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;AAGhE,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,MAAM,WAAW,eAAe;IAC/B,cAAc,CACb,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,EACnC,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,OAAO,CAAC,CAAA;CACnB;AA2DD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG;IACpE,EAAE,EAAE,KAAK,CAAA;IACT,QAAQ,EAAE,eAAe,CAAA;CACzB,CA6BA"}
@@ -1,28 +1,46 @@
1
1
  class PostgresqlStrategy {
2
2
  async runTransaction(db, fn, isolationLevel) {
3
- return db.transaction(fn, isolationLevel ? { isolationLevel } : undefined);
3
+ return db.transaction(fn, isolationLevel
4
+ ? {
5
+ isolationLevel,
6
+ }
7
+ : undefined);
4
8
  }
5
9
  }
6
10
  class MysqlStrategy {
7
11
  async runTransaction(db, fn, isolationLevel) {
8
- return db.transaction(fn, isolationLevel ? { isolationLevel } : undefined);
12
+ return db.transaction(fn, isolationLevel
13
+ ? {
14
+ isolationLevel,
15
+ }
16
+ : undefined);
9
17
  }
10
18
  }
11
19
  class SqliteStrategy {
12
20
  async runTransaction(db, fn, isolationLevel) {
13
21
  const behavior = isolationLevel;
14
- return db.transaction(fn, behavior ? { behavior } : undefined);
22
+ return db.transaction(fn, behavior
23
+ ? {
24
+ behavior,
25
+ }
26
+ : undefined);
15
27
  }
16
28
  }
17
29
  export function createDrizzleClient(options) {
18
30
  switch (options.adapter) {
19
31
  case 'postgresql': {
20
32
  const { drizzle } = require('drizzle-orm/node-postgres');
21
- return { db: drizzle(options.postgresql.url), strategy: new PostgresqlStrategy() };
33
+ return {
34
+ db: drizzle(options.postgresql.url),
35
+ strategy: new PostgresqlStrategy(),
36
+ };
22
37
  }
23
38
  case 'mysql': {
24
39
  const { drizzle } = require('drizzle-orm/mysql2');
25
- return { db: drizzle(options.mysql.url), strategy: new MysqlStrategy() };
40
+ return {
41
+ db: drizzle(options.mysql.url),
42
+ strategy: new MysqlStrategy(),
43
+ };
26
44
  }
27
45
  case 'sqlite': {
28
46
  const { drizzle } = require('drizzle-orm/better-sqlite3');
@@ -1 +1 @@
1
- {"version":3,"file":"client.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/client.drizzle.ts"],"names":[],"mappings":"AAeA,MAAM,kBAAkB;IACvB,KAAK,CAAC,cAAc,CACnB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAEvB,OAAO,EAAE,CAAC,WAAW,CACpB,EAAE,EACF,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAC/C,CAAA;IACF,CAAC;CACD;AAED,MAAM,aAAa;IAClB,KAAK,CAAC,cAAc,CACnB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAEvB,OAAO,EAAE,CAAC,WAAW,CACpB,EAAE,EACF,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAC/C,CAAA;IACF,CAAC;CACD;AAED,MAAM,cAAc;IACnB,KAAK,CAAC,cAAc,CACnB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAGvB,MAAM,QAAQ,GAAG,cAIL,CAAA;QACZ,OAAO,EAAE,CAAC,WAAW,CACpB,EAAE,EACF,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CACnC,CAAA;IACF,CAAC;CACD;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA8B;IAIjE,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;QACzB,KAAK,YAAY,CAAC,CAAC,CAAC;YAEnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,2BAA2B,CAAQ,CAAA;YAC/D,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,kBAAkB,EAAE,EAAE,CAAA;QACnF,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YAEd,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAQ,CAAA;YACxD,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,aAAa,EAAE,EAAE,CAAA;QACzE,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YAEf,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAQ,CAAA;YAEhE,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAQ,CAAA;YACjD,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":"AAeA,MAAM,kBAAkB;IACvB,KAAK,CAAC,cAAc,CACnB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAEvB,OAAO,EAAE,CAAC,WAAW,CACpB,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,EAAS,EACT,EAAmC,EACnC,cAAuB;QAEvB,OAAO,EAAE,CAAC,WAAW,CACpB,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,EAAS,EACT,EAAmC,EACnC,cAAuB;QAGvB,MAAM,QAAQ,GAAG,cAIL,CAAA;QACZ,OAAO,EAAE,CAAC,WAAW,CACpB,EAAE,EACF,QAAQ;YACP,CAAC,CAAC;gBACA,QAAQ;aACR;YACF,CAAC,CAAC,SAAS,CACZ,CAAA;IACF,CAAC;CACD;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA8B;IAIjE,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;QACzB,KAAK,YAAY,CAAC,CAAC,CAAC;YAEnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,2BAA2B,CAAQ,CAAA;YAC/D,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;YAEd,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAQ,CAAA;YACxD,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;YAEf,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAQ,CAAA;YAEhE,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAQ,CAAA;YACjD,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,7 +1,10 @@
1
1
  import type { DatabaseAdapter } from '../database.types.js';
2
- import type { SchemaBuilder, SchemaResolverResult } from '../drizzle/schema-builder.types.drizzle.js';
3
- export declare function createSchemaBuilder(): SchemaBuilder;
2
+ import type { MysqlSchemaBuilder, PgSchemaBuilder, SchemaResolverResult, SqliteSchemaBuilder } from '../drizzle/schema-builder.types.drizzle.js';
4
3
  type AnyTable = any;
4
+ export declare function createSchemaBuilder(adapter: 'postgresql'): PgSchemaBuilder;
5
+ export declare function createSchemaBuilder(adapter: 'mysql'): MysqlSchemaBuilder;
6
+ export declare function createSchemaBuilder(adapter: 'sqlite'): SqliteSchemaBuilder;
7
+ export declare function createSchemaBuilder(adapter: DatabaseAdapter): PgSchemaBuilder | MysqlSchemaBuilder | SqliteSchemaBuilder;
5
8
  export declare function materializeSchema(adapter: DatabaseAdapter, resolverResult: SchemaResolverResult): Record<string, AnyTable>;
6
9
  export {};
7
10
  //# 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,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAEX,aAAa,EACb,oBAAoB,EACpB,MAAM,2CAA2C,CAAA;AAElD,wBAAgB,mBAAmB,IAAI,aAAa,CAQnD;AAGD,KAAK,QAAQ,GAAG,GAAG,CAAA;AA2BnB,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,oBAAoB,GAClC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAO1B"}
1
+ {"version":3,"file":"schema-builder.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D,OAAO,KAAK,EAEX,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,MAAM,2CAA2C,CAAA;AAGlD,KAAK,QAAQ,GAAG,GAAG,CAAA;AAUnB,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;AAoC7D,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,oBAAoB,GAClC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAO1B"}
@@ -1,30 +1,41 @@
1
- export function createSchemaBuilder() {
2
- return {
3
- table(columns) {
4
- return { __columns: columns };
5
- },
6
- };
7
- }
8
- function createTable(adapter, tableName, columns) {
1
+ import * as mysqlCore from 'drizzle-orm/mysql-core';
2
+ import * as pgCore from 'drizzle-orm/pg-core';
3
+ import * as sqliteCore from 'drizzle-orm/sqlite-core';
4
+ const tableBuilder = {
5
+ table(columns) {
6
+ return { __columns: columns };
7
+ },
8
+ };
9
+ export function createSchemaBuilder(adapter) {
9
10
  switch (adapter) {
10
11
  case 'postgresql': {
11
- const { pgTable } = require('drizzle-orm/pg-core');
12
- return pgTable(tableName, columns);
12
+ const { pgTable: _pgTable, ...pgColumns } = pgCore;
13
+ return { ...tableBuilder, ...pgColumns };
13
14
  }
14
15
  case 'mysql': {
15
- const { mysqlTable } = require('drizzle-orm/mysql-core');
16
- return mysqlTable(tableName, columns);
16
+ const { mysqlTable: _mysqlTable, ...mysqlColumns } = mysqlCore;
17
+ return { ...tableBuilder, ...mysqlColumns };
17
18
  }
18
19
  case 'sqlite': {
19
- const { sqliteTable } = require('drizzle-orm/sqlite-core');
20
- return sqliteTable(tableName, columns);
20
+ const { sqliteTable: _sqliteTable, ...sqliteColumns } = sqliteCore;
21
+ return { ...tableBuilder, ...sqliteColumns };
21
22
  }
22
23
  }
23
24
  }
25
+ function createTable(adapter, tableName, columns) {
26
+ switch (adapter) {
27
+ case 'postgresql':
28
+ return pgCore.pgTable(tableName, columns);
29
+ case 'mysql':
30
+ return mysqlCore.mysqlTable(tableName, columns);
31
+ case 'sqlite':
32
+ return sqliteCore.sqliteTable(tableName, columns);
33
+ }
34
+ }
24
35
  export function materializeSchema(adapter, resolverResult) {
25
- return Object.fromEntries(Object.entries(resolverResult).map(([tableName, columnMap]) => {
26
- const columns = columnMap.__columns;
27
- return [tableName, createTable(adapter, tableName, columns)];
28
- }));
36
+ return Object.fromEntries(Object.entries(resolverResult).map(([tableName, columnMap]) => [
37
+ tableName,
38
+ createTable(adapter, tableName, columnMap.__columns),
39
+ ]));
29
40
  }
30
41
  //# sourceMappingURL=schema-builder.drizzle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-builder.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,KAAK,CACJ,OAAiB;YAEjB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAA;QAC9B,CAAC;KACD,CAAA;AACF,CAAC;AAKD,SAAS,WAAW,CACnB,OAAwB,EACxB,SAAiB,EAEjB,OAA4B;IAE5B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY,CAAC,CAAC,CAAC;YAEnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAQ,CAAA;YACzD,OAAO,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YAEd,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,wBAAwB,CAAQ,CAAA;YAC/D,OAAO,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACtC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YAEf,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAQ,CAAA;YACjE,OAAO,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACvC,CAAC;IACF,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;QAC7D,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAA;QACnC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAC7D,CAAC,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;AAerD,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,EAEjB,OAA4B;IAE5B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY;YAChB,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAC1C,KAAK,OAAO;YACX,OAAO,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAChD,KAAK,QAAQ;YACZ,OAAO,UAAU,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACnD,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,8 +1,16 @@
1
+ import type * as MysqlCore from 'drizzle-orm/mysql-core';
2
+ import type * as PgCore from 'drizzle-orm/pg-core';
3
+ import type * as SqliteCore from 'drizzle-orm/sqlite-core';
1
4
  export type ColumnMap<TColumns extends Record<string, unknown>> = {
2
5
  readonly __columns: TColumns;
3
6
  };
4
- export interface SchemaBuilder {
7
+ interface SchemaTableBuilder {
5
8
  table<TColumns extends Record<string, unknown>>(columns: TColumns): ColumnMap<TColumns>;
6
9
  }
10
+ export type PgSchemaBuilder = SchemaTableBuilder & Omit<typeof PgCore, 'pgTable'>;
11
+ export type MysqlSchemaBuilder = SchemaTableBuilder & Omit<typeof MysqlCore, 'mysqlTable'>;
12
+ export type SqliteSchemaBuilder = SchemaTableBuilder & Omit<typeof SqliteCore, 'sqliteTable'>;
13
+ export type SchemaBuilder = PgSchemaBuilder | MysqlSchemaBuilder | SqliteSchemaBuilder;
7
14
  export type SchemaResolverResult = Record<string, ColumnMap<Record<string, unknown>>>;
15
+ export {};
8
16
  //# 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":"AAKA,MAAM,MAAM,SAAS,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACjE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAA;CAC5B,CAAA;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,OAAO,EAAE,QAAQ,GACf,SAAS,CAAC,QAAQ,CAAC,CAAA;CACtB;AAED,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,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 +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;AAGpD,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,eAAO,MAAM,kBAAkB,wBAAiC,CAAA;AAEhE,wBAAgB,YAAY,IAAI,KAAK,GAAG,SAAS,CAEhD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,KAAK,GAAG,IAAI,CAE1C;AAED,wBAAgB,KAAK,IAAI,KAAK,CAM7B"}
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;AAGpD,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,eAAO,MAAM,kBAAkB,wBAAiC,CAAA;AAEhE,wBAAgB,YAAY,IAAI,KAAK,GAAG,SAAS,CAEhD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,KAAK,GAAG,IAAI,CAE1C;AAED,wBAAgB,KAAK,IAAI,KAAK,CAQ7B"}
@@ -8,8 +8,9 @@ export function registerDb(db) {
8
8
  _db = db;
9
9
  }
10
10
  export function getDb() {
11
- if (!_db)
11
+ if (!_db) {
12
12
  throw new Error('[DatabaseModule] db not initialized — was DatabaseModule.register() called?');
13
+ }
13
14
  return _db;
14
15
  }
15
16
  //# sourceMappingURL=transaction-context.drizzle.js.map
@@ -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;AAOpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAS,CAAA;AAEhE,MAAM,UAAU,YAAY;IAC3B,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAA;AACrC,CAAC;AAED,IAAI,GAAsB,CAAA;AAE1B,MAAM,UAAU,UAAU,CAAC,EAAS;IACnC,GAAG,GAAG,EAAE,CAAA;AACT,CAAC;AAED,MAAM,UAAU,KAAK;IACpB,IAAI,CAAC,GAAG;QACP,MAAM,IAAI,KAAK,CACd,6EAA6E,CAC7E,CAAA;IACF,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;AAOpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAS,CAAA;AAEhE,MAAM,UAAU,YAAY;IAC3B,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAA;AACrC,CAAC;AAED,IAAI,GAAsB,CAAA;AAE1B,MAAM,UAAU,UAAU,CAAC,EAAS;IACnC,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 +1 @@
1
- {"version":3,"file":"transactional.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/transactional.drizzle.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,cAAc,GACvB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,cAAc,GACd,UAAU,GACV,WAAW,GACX,WAAW,CAAA;AAEd,wBAAgB,aAAa,CAAC,cAAc,CAAC,EAAE,cAAc,IAE3D,SAAS,MAAM,EACf,cAAc,MAAM,GAAG,MAAM,EAC7B,YAAY,kBAAkB,KAC5B,kBAAkB,CAmBrB"}
1
+ {"version":3,"file":"transactional.drizzle.d.ts","sourceRoot":"","sources":["../../src/drizzle/transactional.drizzle.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,cAAc,GACvB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,cAAc,GACd,UAAU,GACV,WAAW,GACX,WAAW,CAAA;AAEd,wBAAgB,aAAa,CAAC,cAAc,CAAC,EAAE,cAAc,IAE3D,SAAS,MAAM,EACf,cAAc,MAAM,GAAG,MAAM,EAC7B,YAAY,kBAAkB,KAC5B,kBAAkB,CAyBrB"}
@@ -1,13 +1,17 @@
1
1
  import { getCurrentTx, getDb, transactionStorage, } from '../drizzle/transaction-context.drizzle.js';
2
2
  export function Transactional(isolationLevel) {
3
- return function (_target, _propertyKey, descriptor) {
3
+ return (_target, _propertyKey, descriptor) => {
4
4
  const original = descriptor.value;
5
5
  descriptor.value = async function (...args) {
6
6
  if (getCurrentTx() !== undefined) {
7
7
  return original.apply(this, args);
8
8
  }
9
9
  const db = getDb();
10
- return db.transaction((tx) => transactionStorage.run(tx, () => original.apply(this, args)), isolationLevel ? { isolationLevel } : undefined);
10
+ return db.transaction((tx) => transactionStorage.run(tx, () => original.apply(this, args)), isolationLevel
11
+ ? {
12
+ isolationLevel,
13
+ }
14
+ : undefined);
11
15
  };
12
16
  return descriptor;
13
17
  };
@@ -1 +1 @@
1
- {"version":3,"file":"transactional.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/transactional.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EACZ,KAAK,EACL,kBAAkB,GAClB,MAAM,0CAA0C,CAAA;AAWjD,MAAM,UAAU,aAAa,CAAC,cAA+B;IAC5D,OAAO,UACN,OAAe,EACf,YAA6B,EAC7B,UAA8B;QAE9B,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAiD,CAAA;QAE7E,UAAU,CAAC,KAAK,GAAG,KAAK,WAA0B,GAAG,IAAe;YACnE,IAAI,YAAY,EAAE,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAClC,CAAC;YAED,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;YAElB,OAAO,EAAE,CAAC,WAAW,CACpB,CAAC,EAAW,EAAE,EAAE,CACf,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAC7D,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAC/C,CAAA;QACF,CAAC,CAAA;QAED,OAAO,UAAU,CAAA;IAClB,CAAC,CAAA;AACF,CAAC"}
1
+ {"version":3,"file":"transactional.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/transactional.drizzle.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EACZ,KAAK,EACL,kBAAkB,GAClB,MAAM,0CAA0C,CAAA;AAWjD,MAAM,UAAU,aAAa,CAAC,cAA+B;IAC5D,OAAO,CACN,OAAe,EACf,YAA6B,EAC7B,UAA8B,EACT,EAAE;QACvB,MAAM,QAAQ,GAAG,UAAU,CAAC,KAEP,CAAA;QAErB,UAAU,CAAC,KAAK,GAAG,KAAK,WAA0B,GAAG,IAAe;YACnE,IAAI,YAAY,EAAE,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAClC,CAAC;YAED,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;YAElB,OAAO,EAAE,CAAC,WAAW,CACpB,CAAC,EAAW,EAAE,EAAE,CACf,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAC7D,cAAc;gBACb,CAAC,CAAC;oBACA,cAAc;iBACd;gBACF,CAAC,CAAC,SAAS,CACZ,CAAA;QACF,CAAC,CAAA;QAED,OAAO,UAAU,CAAA;IAClB,CAAC,CAAA;AACF,CAAC"}
package/package.json CHANGED
@@ -1,70 +1,71 @@
1
1
  {
2
- "name": "@turystack/nestjs-database",
3
- "private": false,
4
- "version": "0.0.1",
5
- "type": "module",
6
- "main": "./dist/index.js",
7
- "module": "./dist/index.js",
8
- "types": "./dist/index.d.ts",
9
- "exports": {
10
- ".": {
11
- "types": "./dist/index.d.ts",
12
- "import": "./dist/index.js",
13
- "default": "./dist/index.js"
14
- }
15
- },
16
- "publishConfig": {
17
- "access": "public"
18
- },
19
- "files": [
20
- "dist"
21
- ],
22
- "scripts": {
23
- "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
24
- "test": "vitest run",
25
- "test:cov": "vitest run --coverage",
26
- "lint": "biome lint ./src",
27
- "format": "biome format --write ./src",
28
- "check": "biome check --write ./src"
29
- },
30
- "repository": {
31
- "type": "git",
32
- "url": "https://github.com/turystack/nestjs-database.git"
33
- },
34
- "peerDependencies": {
35
- "@nestjs/common": "^11.0.0",
36
- "@nestjs/core": "^11.0.0",
37
- "better-sqlite3": "^11.0.0",
38
- "drizzle-orm": "^0.44.0",
39
- "mysql2": "^3.0.0",
40
- "pg": "^8.0.0",
41
- "reflect-metadata": "^0.2.0"
42
- },
43
- "peerDependenciesMeta": {
44
- "pg": {
45
- "optional": true
46
- },
47
- "mysql2": {
48
- "optional": true
49
- },
50
- "better-sqlite3": {
51
- "optional": true
52
- }
53
- },
54
- "devDependencies": {
55
- "@biomejs/biome": "2.2.2",
56
- "@nestjs/common": "^11.0.0",
57
- "@nestjs/core": "^11.0.0",
58
- "@types/better-sqlite3": "^7.0.0",
59
- "@types/node": "^22.19.15",
60
- "@types/pg": "^8.0.0",
61
- "@vitest/coverage-v8": "^2.1.0",
62
- "better-sqlite3": "^11.0.0",
63
- "drizzle-orm": "^0.44.0",
64
- "pg": "^8.0.0",
65
- "reflect-metadata": "^0.2.2",
66
- "tsc-alias": "^1.8.16",
67
- "typescript": "^5.5.0",
68
- "vitest": "^2.1.0"
69
- }
70
- }
2
+ "name": "@turystack/nestjs-database",
3
+ "private": false,
4
+ "version": "0.0.5",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js",
13
+ "default": "./dist/index.js"
14
+ }
15
+ },
16
+ "publishConfig": {
17
+ "access": "public"
18
+ },
19
+ "files": [
20
+ "dist"
21
+ ],
22
+ "repository": {
23
+ "type": "git",
24
+ "url": "https://github.com/turystack/nestjs-database.git"
25
+ },
26
+ "dependencies": {
27
+ "drizzle-orm": "^0.44.0"
28
+ },
29
+ "peerDependencies": {
30
+ "@nestjs/common": "^11.0.0",
31
+ "@nestjs/core": "^11.0.0",
32
+ "better-sqlite3": "^11.0.0",
33
+ "mysql2": "^3.0.0",
34
+ "pg": "^8.0.0",
35
+ "reflect-metadata": "^0.2.0"
36
+ },
37
+ "peerDependenciesMeta": {
38
+ "pg": {
39
+ "optional": true
40
+ },
41
+ "mysql2": {
42
+ "optional": true
43
+ },
44
+ "better-sqlite3": {
45
+ "optional": true
46
+ }
47
+ },
48
+ "devDependencies": {
49
+ "@biomejs/biome": "2.2.2",
50
+ "@nestjs/common": "^11.0.0",
51
+ "@nestjs/core": "^11.0.0",
52
+ "@types/better-sqlite3": "^7.0.0",
53
+ "@types/node": "^22.19.15",
54
+ "@types/pg": "^8.0.0",
55
+ "@vitest/coverage-v8": "^2.1.0",
56
+ "better-sqlite3": "^11.0.0",
57
+ "pg": "^8.0.0",
58
+ "reflect-metadata": "^0.2.2",
59
+ "tsc-alias": "^1.8.16",
60
+ "typescript": "^5.5.0",
61
+ "vitest": "^2.1.0"
62
+ },
63
+ "scripts": {
64
+ "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
65
+ "test": "vitest run",
66
+ "test:cov": "vitest run --coverage",
67
+ "lint": "biome lint ./src",
68
+ "format": "biome format --write ./src",
69
+ "check": "biome check --write ./src"
70
+ }
71
+ }
@@ -1,12 +0,0 @@
1
- import type { DatabaseModuleOptions } from '../database.types.js';
2
- type AnyDb = any;
3
- type AnyTx = any;
4
- export interface AdapterStrategy {
5
- runTransaction(db: AnyDb, fn: (tx: AnyTx) => Promise<unknown>, isolationLevel?: string): Promise<unknown>;
6
- }
7
- export declare function createDrizzleClient(options: DatabaseModuleOptions): {
8
- db: AnyDb;
9
- strategy: AdapterStrategy;
10
- };
11
- export {};
12
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/drizzle/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAGhE,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,MAAM,WAAW,eAAe;IAC9B,cAAc,CACZ,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC,OAAO,CAAC,EACnC,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CAAA;CACpB;AAkCD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG;IACnE,EAAE,EAAE,KAAK,CAAA;IACT,QAAQ,EAAE,eAAe,CAAA;CAC1B,CAoBA"}
@@ -1,34 +0,0 @@
1
- class PostgresqlStrategy {
2
- async runTransaction(db, fn, isolationLevel) {
3
- return db.transaction(fn, isolationLevel ? { isolationLevel } : undefined);
4
- }
5
- }
6
- class MysqlStrategy {
7
- async runTransaction(db, fn, isolationLevel) {
8
- return db.transaction(fn, isolationLevel ? { isolationLevel } : undefined);
9
- }
10
- }
11
- class SqliteStrategy {
12
- async runTransaction(db, fn, isolationLevel) {
13
- const behavior = isolationLevel;
14
- return db.transaction(fn, behavior ? { behavior } : undefined);
15
- }
16
- }
17
- export function createDrizzleClient(options) {
18
- switch (options.adapter) {
19
- case 'postgresql': {
20
- const { drizzle } = require('drizzle-orm/node-postgres');
21
- return { db: drizzle(options.postgresql.url), strategy: new PostgresqlStrategy() };
22
- }
23
- case 'mysql': {
24
- const { drizzle } = require('drizzle-orm/mysql2');
25
- return { db: drizzle(options.mysql.url), strategy: new MysqlStrategy() };
26
- }
27
- case 'sqlite': {
28
- const { drizzle } = require('drizzle-orm/better-sqlite3');
29
- const Database = require('better-sqlite3');
30
- return { db: drizzle(new Database(options.sqlite.url)), strategy: new SqliteStrategy() };
31
- }
32
- }
33
- }
34
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/drizzle/client.ts"],"names":[],"mappings":"AAeA,MAAM,kBAAkB;IACtB,KAAK,CAAC,cAAc,CAClB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAEvB,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC5E,CAAC;CACF;AAED,MAAM,aAAa;IACjB,KAAK,CAAC,cAAc,CAClB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAEvB,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC5E,CAAC;CACF;AAED,MAAM,cAAc;IAClB,KAAK,CAAC,cAAc,CAClB,EAAS,EACT,EAAmC,EACnC,cAAuB;QAGvB,MAAM,QAAQ,GAAG,cAAoE,CAAA;QACrF,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAChE,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA8B;IAIhE,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,KAAK,YAAY,CAAC,CAAC,CAAC;YAElB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,2BAA2B,CAAQ,CAAA;YAC/D,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,kBAAkB,EAAE,EAAE,CAAA;QACpF,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YAEb,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAQ,CAAA;YACxD,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,aAAa,EAAE,EAAE,CAAA;QAC1E,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YAEd,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAQ,CAAA;YAEhE,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAQ,CAAA;YACjD,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,cAAc,EAAE,EAAE,CAAA;QAC1F,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from '../drizzle/client.js';
2
- export * from '../drizzle/transaction-context.js';
3
- export * from '../drizzle/transactional.decorator.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/drizzle/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sCAAsC,CAAA"}
@@ -1,4 +0,0 @@
1
- export * from '../drizzle/client.js';
2
- export * from '../drizzle/transaction-context.js';
3
- export * from '../drizzle/transactional.decorator.js';
4
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/drizzle/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sCAAsC,CAAA"}
@@ -1,9 +0,0 @@
1
- import { AsyncLocalStorage } from 'node:async_hooks';
2
- type AnyTx = any;
3
- type AnyDb = any;
4
- export declare const transactionStorage: AsyncLocalStorage<any>;
5
- export declare function getCurrentTx(): AnyTx | undefined;
6
- export declare function registerDb(db: AnyDb): void;
7
- export declare function getDb(): AnyDb;
8
- export {};
9
- //# sourceMappingURL=transaction-context.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transaction-context.d.ts","sourceRoot":"","sources":["../../src/drizzle/transaction-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,KAAK,KAAK,GAAG,GAAG,CAAA;AAEhB,eAAO,MAAM,kBAAkB,wBAAiC,CAAA;AAEhE,wBAAgB,YAAY,IAAI,KAAK,GAAG,SAAS,CAEhD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,KAAK,GAAG,IAAI,CAE1C;AAED,wBAAgB,KAAK,IAAI,KAAK,CAG7B"}
@@ -1,15 +0,0 @@
1
- import { AsyncLocalStorage } from 'node:async_hooks';
2
- export const transactionStorage = new AsyncLocalStorage();
3
- export function getCurrentTx() {
4
- return transactionStorage.getStore();
5
- }
6
- let _db;
7
- export function registerDb(db) {
8
- _db = db;
9
- }
10
- export function getDb() {
11
- if (!_db)
12
- throw new Error('[DatabaseModule] db not initialized — was DatabaseModule.register() called?');
13
- return _db;
14
- }
15
- //# sourceMappingURL=transaction-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transaction-context.js","sourceRoot":"","sources":["../../src/drizzle/transaction-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAOpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAS,CAAA;AAEhE,MAAM,UAAU,YAAY;IAC1B,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAA;AACtC,CAAC;AAED,IAAI,GAAsB,CAAA;AAE1B,MAAM,UAAU,UAAU,CAAC,EAAS;IAClC,GAAG,GAAG,EAAE,CAAA;AACV,CAAC;AAED,MAAM,UAAU,KAAK;IACnB,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAA;IACxG,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -1,3 +0,0 @@
1
- export type IsolationLevel = 'read uncommitted' | 'read committed' | 'repeatable read' | 'serializable' | 'deferred' | 'immediate' | 'exclusive';
2
- export declare function Transactional(isolationLevel?: IsolationLevel): (_target: object, _propertyKey: string | symbol, descriptor: PropertyDescriptor) => PropertyDescriptor;
3
- //# sourceMappingURL=transactional.decorator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transactional.decorator.d.ts","sourceRoot":"","sources":["../../src/drizzle/transactional.decorator.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GACtB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,cAAc,GACd,UAAU,GACV,WAAW,GACX,WAAW,CAAA;AAEf,wBAAgB,aAAa,CAAC,cAAc,CAAC,EAAE,cAAc,IAEzD,SAAS,MAAM,EACf,cAAc,MAAM,GAAG,MAAM,EAC7B,YAAY,kBAAkB,KAC7B,kBAAkB,CAkBtB"}
@@ -1,15 +0,0 @@
1
- import { getCurrentTx, getDb, transactionStorage } from '../drizzle/transaction-context.js';
2
- export function Transactional(isolationLevel) {
3
- return function (_target, _propertyKey, descriptor) {
4
- const original = descriptor.value;
5
- descriptor.value = async function (...args) {
6
- if (getCurrentTx() !== undefined) {
7
- return original.apply(this, args);
8
- }
9
- const db = getDb();
10
- return db.transaction((tx) => transactionStorage.run(tx, () => original.apply(this, args)), isolationLevel ? { isolationLevel } : undefined);
11
- };
12
- return descriptor;
13
- };
14
- }
15
- //# sourceMappingURL=transactional.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transactional.decorator.js","sourceRoot":"","sources":["../../src/drizzle/transactional.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAW1F,MAAM,UAAU,aAAa,CAAC,cAA+B;IAC3D,OAAO,UACL,OAAe,EACf,YAA6B,EAC7B,UAA8B;QAE9B,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAiD,CAAA;QAE7E,UAAU,CAAC,KAAK,GAAG,KAAK,WAA0B,GAAG,IAAe;YAClE,IAAI,YAAY,EAAE,KAAK,SAAS,EAAE,CAAC;gBACjC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACnC,CAAC;YAED,MAAM,EAAE,GAAG,KAAK,EAAE,CAAA;YAElB,OAAO,EAAE,CAAC,WAAW,CACnB,CAAC,EAAW,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAC7E,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAChD,CAAA;QACH,CAAC,CAAA;QAED,OAAO,UAAU,CAAA;IACnB,CAAC,CAAA;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from '../prisma/prisma.client.js';
2
- export * from '../prisma/transactional.decorator.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,qCAAqC,CAAA"}
@@ -1,3 +0,0 @@
1
- export * from '../prisma/prisma.client.js';
2
- export * from '../prisma/transactional.decorator.js';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA;AACzC,cAAc,qCAAqC,CAAA"}
@@ -1,2 +0,0 @@
1
- export declare function createPrismaClient(databaseUrl: string): any;
2
- //# sourceMappingURL=prisma.client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prisma.client.d.ts","sourceRoot":"","sources":["../../src/prisma/prisma.client.ts"],"names":[],"mappings":"AAUA,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,OAcrD"}
@@ -1,13 +0,0 @@
1
- import { patchPrismaTx } from '@myfunc/prisma-transactional';
2
- import { PrismaPg } from '@prisma/adapter-pg';
3
- export function createPrismaClient(databaseUrl) {
4
- const { PrismaClient } = require('@prisma/client');
5
- const adapter = new PrismaPg({
6
- connectionString: databaseUrl,
7
- });
8
- const client = new PrismaClient({
9
- adapter,
10
- });
11
- return patchPrismaTx(client);
12
- }
13
- //# sourceMappingURL=prisma.client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prisma.client.js","sourceRoot":"","sources":["../../src/prisma/prisma.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAS7C,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IAGpD,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAElD,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC;QAC3B,gBAAgB,EAAE,WAAW;KAC9B,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC;QAC9B,OAAO;KACR,CAAC,CAAA;IAEF,OAAO,aAAa,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const Transactional: (isolationLevel?: string) => MethodDecorator;
2
- //# sourceMappingURL=transactional.decorator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transactional.decorator.d.ts","sourceRoot":"","sources":["../../src/prisma/transactional.decorator.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,aAAa,GAAI,iBAAiB,MAAM,oBAChB,CAAA"}
@@ -1,3 +0,0 @@
1
- import { PrismaTransactional } from '@myfunc/prisma-transactional';
2
- export const Transactional = (isolationLevel) => PrismaTransactional(isolationLevel);
3
- //# sourceMappingURL=transactional.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transactional.decorator.js","sourceRoot":"","sources":["../../src/prisma/transactional.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAA;AAoBlE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,cAAuB,EAAE,EAAE,CACvD,mBAAmB,CAAC,cAAc,CAAC,CAAA"}
@@ -1,7 +0,0 @@
1
- import type { DatabaseAdapter } from './database.types.js';
2
- import type { SchemaBuilder, SchemaResolverResult } from './schema-builder.types.js';
3
- export declare function createSchemaBuilder(): SchemaBuilder;
4
- type AnyTable = any;
5
- export declare function materializeSchema(adapter: DatabaseAdapter, resolverResult: SchemaResolverResult): Record<string, AnyTable>;
6
- export {};
7
- //# sourceMappingURL=schema-builder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-builder.d.ts","sourceRoot":"","sources":["../src/schema-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAEX,aAAa,EACb,oBAAoB,EACpB,MAAM,2BAA2B,CAAA;AAElC,wBAAgB,mBAAmB,IAAI,aAAa,CAUnD;AAGD,KAAK,QAAQ,GAAG,GAAG,CAAA;AA2BnB,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,oBAAoB,GAClC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAO1B"}
@@ -1,32 +0,0 @@
1
- export function createSchemaBuilder() {
2
- return {
3
- table(columns) {
4
- return {
5
- __columns: columns,
6
- };
7
- },
8
- };
9
- }
10
- function createTable(adapter, tableName, columns) {
11
- switch (adapter) {
12
- case 'postgresql': {
13
- const { pgTable } = require('drizzle-orm/pg-core');
14
- return pgTable(tableName, columns);
15
- }
16
- case 'mysql': {
17
- const { mysqlTable } = require('drizzle-orm/mysql-core');
18
- return mysqlTable(tableName, columns);
19
- }
20
- case 'sqlite': {
21
- const { sqliteTable } = require('drizzle-orm/sqlite-core');
22
- return sqliteTable(tableName, columns);
23
- }
24
- }
25
- }
26
- export function materializeSchema(adapter, resolverResult) {
27
- return Object.fromEntries(Object.entries(resolverResult).map(([tableName, columnMap]) => {
28
- const columns = columnMap.__columns;
29
- return [tableName, createTable(adapter, tableName, columns)];
30
- }));
31
- }
32
- //# sourceMappingURL=schema-builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-builder.js","sourceRoot":"","sources":["../src/schema-builder.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,mBAAmB;IAClC,OAAO;QACN,KAAK,CACJ,OAAiB;YAEjB,OAAO;gBACN,SAAS,EAAE,OAAO;aAClB,CAAA;QACF,CAAC;KACD,CAAA;AACF,CAAC;AAKD,SAAS,WAAW,CACnB,OAAwB,EACxB,SAAiB,EAEjB,OAA4B;IAE5B,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,YAAY,CAAC,CAAC,CAAC;YAEnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAQ,CAAA;YACzD,OAAO,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YAEd,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,wBAAwB,CAAQ,CAAA;YAC/D,OAAO,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACtC,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YAEf,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAQ,CAAA;YACjE,OAAO,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACvC,CAAC;IACF,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;QAC7D,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAA;QACnC,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;IAC7D,CAAC,CAAC,CACF,CAAA;AACF,CAAC"}
@@ -1,8 +0,0 @@
1
- export type ColumnMap<TColumns extends Record<string, unknown>> = {
2
- readonly __columns: TColumns;
3
- };
4
- export interface SchemaBuilder {
5
- table<TColumns extends Record<string, unknown>>(columns: TColumns): ColumnMap<TColumns>;
6
- }
7
- export type SchemaResolverResult = Record<string, ColumnMap<Record<string, unknown>>>;
8
- //# sourceMappingURL=schema-builder.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-builder.types.d.ts","sourceRoot":"","sources":["../src/schema-builder.types.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,SAAS,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACjE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAA;CAC5B,CAAA;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,OAAO,EAAE,QAAQ,GACf,SAAS,CAAC,QAAQ,CAAC,CAAA;CACtB;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,CACxC,MAAM,EACN,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAClC,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=schema-builder.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-builder.types.js","sourceRoot":"","sources":["../src/schema-builder.types.ts"],"names":[],"mappings":""}