@turystack/nestjs-database 0.0.1 → 0.0.3
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/dist/drizzle/client.drizzle.d.ts.map +1 -1
- package/dist/drizzle/client.drizzle.js +23 -5
- package/dist/drizzle/client.drizzle.js.map +1 -1
- package/dist/drizzle/schema-builder.drizzle.d.ts.map +1 -1
- package/dist/drizzle/schema-builder.drizzle.js +7 -2
- package/dist/drizzle/schema-builder.drizzle.js.map +1 -1
- package/dist/drizzle/transaction-context.drizzle.d.ts.map +1 -1
- package/dist/drizzle/transaction-context.drizzle.js +2 -1
- package/dist/drizzle/transaction-context.drizzle.js.map +1 -1
- package/dist/drizzle/transactional.drizzle.d.ts.map +1 -1
- package/dist/drizzle/transactional.drizzle.js +6 -2
- package/dist/drizzle/transactional.drizzle.js.map +1 -1
- package/package.json +69 -69
- package/dist/drizzle/client.d.ts +0 -12
- package/dist/drizzle/client.d.ts.map +0 -1
- package/dist/drizzle/client.js +0 -34
- package/dist/drizzle/client.js.map +0 -1
- package/dist/drizzle/index.d.ts +0 -4
- package/dist/drizzle/index.d.ts.map +0 -1
- package/dist/drizzle/index.js +0 -4
- package/dist/drizzle/index.js.map +0 -1
- package/dist/drizzle/transaction-context.d.ts +0 -9
- package/dist/drizzle/transaction-context.d.ts.map +0 -1
- package/dist/drizzle/transaction-context.js +0 -15
- package/dist/drizzle/transaction-context.js.map +0 -1
- package/dist/drizzle/transactional.decorator.d.ts +0 -3
- package/dist/drizzle/transactional.decorator.d.ts.map +0 -1
- package/dist/drizzle/transactional.decorator.js +0 -15
- package/dist/drizzle/transactional.decorator.js.map +0 -1
- package/dist/prisma/index.d.ts +0 -3
- package/dist/prisma/index.d.ts.map +0 -1
- package/dist/prisma/index.js +0 -3
- package/dist/prisma/index.js.map +0 -1
- package/dist/prisma/prisma.client.d.ts +0 -2
- package/dist/prisma/prisma.client.d.ts.map +0 -1
- package/dist/prisma/prisma.client.js +0 -13
- package/dist/prisma/prisma.client.js.map +0 -1
- package/dist/prisma/transactional.decorator.d.ts +0 -2
- package/dist/prisma/transactional.decorator.d.ts.map +0 -1
- package/dist/prisma/transactional.decorator.js +0 -3
- package/dist/prisma/transactional.decorator.js.map +0 -1
- package/dist/schema-builder.d.ts +0 -7
- package/dist/schema-builder.d.ts.map +0 -1
- package/dist/schema-builder.js +0 -32
- package/dist/schema-builder.js.map +0 -1
- package/dist/schema-builder.types.d.ts +0 -8
- package/dist/schema-builder.types.d.ts.map +0 -1
- package/dist/schema-builder.types.js +0 -2
- package/dist/schema-builder.types.js.map +0 -1
|
@@ -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;
|
|
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
|
|
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
|
|
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
|
|
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 {
|
|
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 {
|
|
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,
|
|
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 +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;
|
|
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;AAE1D,OAAO,KAAK,EAEX,aAAa,EACb,oBAAoB,EACpB,MAAM,2CAA2C,CAAA;AAElD,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,CAU1B"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export function createSchemaBuilder() {
|
|
2
2
|
return {
|
|
3
3
|
table(columns) {
|
|
4
|
-
return {
|
|
4
|
+
return {
|
|
5
|
+
__columns: columns,
|
|
6
|
+
};
|
|
5
7
|
},
|
|
6
8
|
};
|
|
7
9
|
}
|
|
@@ -24,7 +26,10 @@ function createTable(adapter, tableName, columns) {
|
|
|
24
26
|
export function materializeSchema(adapter, resolverResult) {
|
|
25
27
|
return Object.fromEntries(Object.entries(resolverResult).map(([tableName, columnMap]) => {
|
|
26
28
|
const columns = columnMap.__columns;
|
|
27
|
-
return [
|
|
29
|
+
return [
|
|
30
|
+
tableName,
|
|
31
|
+
createTable(adapter, tableName, columns),
|
|
32
|
+
];
|
|
28
33
|
}));
|
|
29
34
|
}
|
|
30
35
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"schema-builder.drizzle.js","sourceRoot":"","sources":["../../src/drizzle/schema-builder.drizzle.ts"],"names":[],"mappings":"AAQA,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;YACN,SAAS;YACT,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;SACxC,CAAA;IACF,CAAC,CAAC,CACF,CAAA;AACF,CAAC"}
|
|
@@ -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,
|
|
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;
|
|
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,
|
|
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
|
|
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
|
|
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,
|
|
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,70 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
2
|
+
"name": "@turystack/nestjs-database",
|
|
3
|
+
"private": false,
|
|
4
|
+
"version": "0.0.3",
|
|
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
|
+
"peerDependencies": {
|
|
27
|
+
"@nestjs/common": "^11.0.0",
|
|
28
|
+
"@nestjs/core": "^11.0.0",
|
|
29
|
+
"better-sqlite3": "^11.0.0",
|
|
30
|
+
"drizzle-orm": "^0.44.0",
|
|
31
|
+
"mysql2": "^3.0.0",
|
|
32
|
+
"pg": "^8.0.0",
|
|
33
|
+
"reflect-metadata": "^0.2.0"
|
|
34
|
+
},
|
|
35
|
+
"peerDependenciesMeta": {
|
|
36
|
+
"pg": {
|
|
37
|
+
"optional": true
|
|
38
|
+
},
|
|
39
|
+
"mysql2": {
|
|
40
|
+
"optional": true
|
|
41
|
+
},
|
|
42
|
+
"better-sqlite3": {
|
|
43
|
+
"optional": true
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@biomejs/biome": "2.2.2",
|
|
48
|
+
"@nestjs/common": "^11.0.0",
|
|
49
|
+
"@nestjs/core": "^11.0.0",
|
|
50
|
+
"@types/better-sqlite3": "^7.0.0",
|
|
51
|
+
"@types/node": "^22.19.15",
|
|
52
|
+
"@types/pg": "^8.0.0",
|
|
53
|
+
"@vitest/coverage-v8": "^2.1.0",
|
|
54
|
+
"better-sqlite3": "^11.0.0",
|
|
55
|
+
"drizzle-orm": "^0.44.0",
|
|
56
|
+
"pg": "^8.0.0",
|
|
57
|
+
"reflect-metadata": "^0.2.2",
|
|
58
|
+
"tsc-alias": "^1.8.16",
|
|
59
|
+
"typescript": "^5.5.0",
|
|
60
|
+
"vitest": "^2.1.0"
|
|
61
|
+
},
|
|
62
|
+
"scripts": {
|
|
63
|
+
"build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
|
|
64
|
+
"test": "vitest run",
|
|
65
|
+
"test:cov": "vitest run --coverage",
|
|
66
|
+
"lint": "biome lint ./src",
|
|
67
|
+
"format": "biome format --write ./src",
|
|
68
|
+
"check": "biome check --write ./src"
|
|
69
|
+
}
|
|
70
|
+
}
|
package/dist/drizzle/client.d.ts
DELETED
|
@@ -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"}
|
package/dist/drizzle/client.js
DELETED
|
@@ -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"}
|
package/dist/drizzle/index.d.ts
DELETED
|
@@ -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"}
|
package/dist/drizzle/index.js
DELETED
|
@@ -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"}
|
package/dist/prisma/index.d.ts
DELETED
|
@@ -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"}
|
package/dist/prisma/index.js
DELETED
package/dist/prisma/index.js.map
DELETED
|
@@ -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 +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 +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 +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"}
|
package/dist/schema-builder.d.ts
DELETED
|
@@ -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"}
|
package/dist/schema-builder.js
DELETED
|
@@ -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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema-builder.types.js","sourceRoot":"","sources":["../src/schema-builder.types.ts"],"names":[],"mappings":""}
|