@dangao/bun-server 3.1.0 → 3.2.0
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/database/connection-manager.d.ts +2 -2
- package/dist/database/connection-manager.d.ts.map +1 -1
- package/dist/database/connection-pool.d.ts +4 -4
- package/dist/database/connection-pool.d.ts.map +1 -1
- package/dist/database/database-module.d.ts.map +1 -1
- package/dist/database/db-proxy.d.ts.map +1 -1
- package/dist/database/driver.d.ts +83 -0
- package/dist/database/driver.d.ts.map +1 -0
- package/dist/database/index.d.ts +2 -1
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/service.d.ts +0 -10
- package/dist/database/service.d.ts.map +1 -1
- package/dist/database/sql-manager.d.ts.map +1 -1
- package/dist/database/types.d.ts +26 -0
- package/dist/database/types.d.ts.map +1 -1
- package/dist/index.js +5882 -5789
- package/dist/index.node.mjs +247 -114
- package/docs/database.md +44 -0
- package/docs/zh/database.md +44 -0
- package/package.json +1 -1
- package/src/database/connection-manager.ts +5 -46
- package/src/database/connection-pool.ts +26 -49
- package/src/database/database-module.ts +6 -0
- package/src/database/db-proxy.ts +3 -2
- package/src/database/driver.ts +368 -0
- package/src/database/index.ts +8 -0
- package/src/database/service.ts +3 -74
- package/src/database/sql-manager.ts +38 -24
- package/src/database/types.ts +27 -2
- package/tests/database/database-module.test.ts +4 -0
- package/tests/database/driver-mysql2.test.ts +95 -0
- package/tests/database/driver.test.ts +234 -0
- package/tests/database/orm.test.ts +4 -0
|
@@ -61,11 +61,11 @@ export declare class DatabaseConnectionManager {
|
|
|
61
61
|
*/
|
|
62
62
|
private healthCheckSqlite;
|
|
63
63
|
/**
|
|
64
|
-
* PostgreSQL
|
|
64
|
+
* PostgreSQL 健康检查(按连接 driver tag 分流)
|
|
65
65
|
*/
|
|
66
66
|
private healthCheckPostgres;
|
|
67
67
|
/**
|
|
68
|
-
* MySQL
|
|
68
|
+
* MySQL 健康检查(按连接 driver tag 分流)
|
|
69
69
|
*/
|
|
70
70
|
private healthCheckMysql;
|
|
71
71
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/database/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EAErB,cAAc,EACd,YAAY,EACb,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/database/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EAErB,cAAc,EACd,YAAY,EACb,MAAM,SAAS,CAAC;AAKjB;;;GAGG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,iBAAiB,CAAwB;IACjD,OAAO,CAAC,MAAM,CAAoC;IAClD,OAAO,CAAC,KAAK,CAAqB;gBAGhC,MAAM,EAAE,cAAc,EACtB,WAAW,GAAE,qBAA0B;IAYzC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBrC;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBxC;;OAEG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAOvC;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAmB5C;;OAEG;IACI,YAAY;;;;;;IAInB;;OAEG;IACI,iBAAiB,IAAI,cAAc;IAQ1C;;OAEG;IACI,aAAa,IAAI,OAAO;IAI/B;;OAEG;IACU,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIlD;;OAEG;IACI,iBAAiB,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAInD;;OAEG;IACI,eAAe,IAAI,YAAY;IAItC;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;YACW,mBAAmB;IAIjC;;OAEG;YACW,gBAAgB;CAG/B"}
|
|
@@ -54,11 +54,11 @@ export declare class ConnectionPool {
|
|
|
54
54
|
*/
|
|
55
55
|
private createSqliteConnection;
|
|
56
56
|
/**
|
|
57
|
-
* 创建 PostgreSQL
|
|
57
|
+
* 创建 PostgreSQL 连接(按所选 driver 分流,与运行时平台解耦)
|
|
58
58
|
*/
|
|
59
59
|
private createPostgresConnection;
|
|
60
60
|
/**
|
|
61
|
-
* 创建 MySQL
|
|
61
|
+
* 创建 MySQL 连接(按所选 driver 分流,与运行时平台解耦)
|
|
62
62
|
*/
|
|
63
63
|
private createMysqlConnection;
|
|
64
64
|
/**
|
|
@@ -70,11 +70,11 @@ export declare class ConnectionPool {
|
|
|
70
70
|
*/
|
|
71
71
|
private closeSqliteConnection;
|
|
72
72
|
/**
|
|
73
|
-
* 关闭 PostgreSQL
|
|
73
|
+
* 关闭 PostgreSQL 连接(按连接 driver tag 分流:bun-sql → close(),postgres → end())
|
|
74
74
|
*/
|
|
75
75
|
private closePostgresConnection;
|
|
76
76
|
/**
|
|
77
|
-
* 关闭 MySQL
|
|
77
|
+
* 关闭 MySQL 连接(按连接 driver tag 分流:bun-sql → close(),mysql2 → end())
|
|
78
78
|
*/
|
|
79
79
|
private closeMysqlConnection;
|
|
80
80
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-pool.d.ts","sourceRoot":"","sources":["../../src/database/connection-pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EAEf,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"connection-pool.d.ts","sourceRoot":"","sources":["../../src/database/connection-pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,cAAc,EAEf,MAAM,SAAS,CAAC;AA+BjB;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,kBAAkB,CAAoC;IAC9D,OAAO,CAAC,SAAS,CAAS;gBAGxB,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,qBAA0B;IAWrC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IA8BxC;;OAEG;IACI,OAAO,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAUzC;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBnC;;;;;;OAMG;IACU,iBAAiB,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,GAAG,UAAU,CAAC;IAQ/E;;OAEG;IACI,YAAY,IAAI;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;KACxB;IAUD;;OAEG;YACW,gBAAgB;IAY9B;;OAEG;YACW,yBAAyB;IAuBvC;;OAEG;YACW,sBAAsB;IAqBpC;;OAEG;YACW,wBAAwB;IAkBtC;;OAEG;YACW,qBAAqB;IAiBnC;;OAEG;YACW,eAAe;IAW7B;;OAEG;YACW,qBAAqB;IAWnC;;OAEG;YACW,uBAAuB;IAIrC;;OAEG;YACW,oBAAoB;IAIlC;;OAEG;YACW,iBAAiB;IAoB/B;;OAEG;IACH,OAAO,CAAC,KAAK;CAGd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database-module.d.ts","sourceRoot":"","sources":["../../src/database/database-module.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAA0B,MAAM,oBAAoB,CAAC;AAKrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAI7D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAML,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AASjB,qBAGa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,YAAY;WAMb,eAAe,CAC3B,OAAO,EAAE,qBAAqB,GAC7B,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"database-module.d.ts","sourceRoot":"","sources":["../../src/database/database-module.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAA0B,MAAM,oBAAoB,CAAC;AAKrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAI7D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAML,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AASjB,qBAGa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,YAAY;WAMb,eAAe,CAC3B,OAAO,EAAE,qBAAqB,GAC7B,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAAA;KAAE,CAAC;IA6FrE,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAyEvC;;;OAGG;WACW,OAAO,CACnB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,cAAc;IAkJxB;;;;OAIG;WACW,YAAY,CACxB,YAAY,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,GACtD,OAAO,cAAc;IAYxB;;;;;OAKG;WACW,qBAAqB,CACjC,eAAe,EAAE,eAAe,GAC/B,uBAAuB;CAG3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-proxy.d.ts","sourceRoot":"","sources":["../../src/database/db-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"db-proxy.d.ts","sourceRoot":"","sources":["../../src/database/db-proxy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,KAAK,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEjC,MAAM,WAAW,OAAO;IACtB,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAChE,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACjD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CACnC;AAKD,wBAAgB,WAAW,CACzB,UAAU,EAAE,aAAa,EACzB,SAAS,EAAE,kBAAkB,GAC5B,IAAI,CAGN;AAoDD,eAAO,MAAM,EAAE,EAAE,OAAoB,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { DatabaseDriver, MysqlConfig, PostgresConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* 已解析的具体驱动类型(连接级别 tag)
|
|
4
|
+
* - `'bun-sql'`:Bun 内建 `Bun.SQL`
|
|
5
|
+
* - `'mysql2'`:纯 JS `mysql2` 驱动
|
|
6
|
+
* - `'postgres'`:纯 JS `postgres` 驱动
|
|
7
|
+
*/
|
|
8
|
+
export type ResolvedDriver = 'bun-sql' | 'mysql2' | 'postgres';
|
|
9
|
+
/**
|
|
10
|
+
* 运行时引擎(来自 platform/runtime)
|
|
11
|
+
*/
|
|
12
|
+
export type RuntimeEngine = 'bun' | 'node';
|
|
13
|
+
/**
|
|
14
|
+
* 将驱动选项(含 'auto')解析为具体驱动。
|
|
15
|
+
*
|
|
16
|
+
* - `'auto'`:Bun → `bun-sql`,Node → `mysql2`(MySQL)/ `postgres`(PostgreSQL),保持历史行为。
|
|
17
|
+
* - `'bun-sql'`:强制 `Bun.SQL`,仅 Bun 合法,Node 抛清晰错误。
|
|
18
|
+
* - `'mysql2'`:强制 `mysql2`,仅 `type: 'mysql'` 合法。
|
|
19
|
+
* - `'postgres'`:强制 `postgres`,仅 `type: 'postgres'` 合法。
|
|
20
|
+
*
|
|
21
|
+
* @param dbType 数据库类型(postgres / mysql)
|
|
22
|
+
* @param option 用户配置的 driver(默认 'auto')
|
|
23
|
+
* @param engine 当前运行时引擎
|
|
24
|
+
*/
|
|
25
|
+
export declare function resolveDriver(dbType: 'postgres' | 'mysql', option: DatabaseDriver | undefined, engine: RuntimeEngine): ResolvedDriver;
|
|
26
|
+
/**
|
|
27
|
+
* 给连接对象/函数打上驱动 tag(返回同一引用,保证池内 identity 比较不被破坏)。
|
|
28
|
+
*/
|
|
29
|
+
export declare function tagConnection<T>(connection: T, driver: ResolvedDriver): T;
|
|
30
|
+
/**
|
|
31
|
+
* 读取连接 tag;若无显式 tag 则按结构启发式推断(向后兼容未打 tag 的连接,
|
|
32
|
+
* 例如 `sql.reserve()` 返回的 reserved 连接)。
|
|
33
|
+
*/
|
|
34
|
+
export declare function getConnectionDriver(connection: unknown): ResolvedDriver | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* 创建 PostgreSQL 连接(按所选 driver 分流,并打 tag)。
|
|
37
|
+
*/
|
|
38
|
+
export declare function createPostgresConnection(config: PostgresConfig, driver: ResolvedDriver): Promise<unknown>;
|
|
39
|
+
/**
|
|
40
|
+
* 创建 MySQL 连接(按所选 driver 分流,并打 tag)。
|
|
41
|
+
*
|
|
42
|
+
* Bun.SQL 走 options-object 形式而非连接字符串,绕开 oven-sh/bun#26648
|
|
43
|
+
* (MySQL 连接串被误判为 postgres)。
|
|
44
|
+
*/
|
|
45
|
+
export declare function createMysqlConnection(config: MysqlConfig & {
|
|
46
|
+
ssl?: boolean;
|
|
47
|
+
}, driver: ResolvedDriver): Promise<unknown>;
|
|
48
|
+
/**
|
|
49
|
+
* 执行参数化查询(按连接 tag 分流),统一返回行数组。
|
|
50
|
+
*
|
|
51
|
+
* - `bun-sql`:通过模板字符串调用,参数走 Bun.SQL 的 values 通道。
|
|
52
|
+
* - `mysql2`:`conn.query(sql, params)`,返回 `[rows, fields]`,取 rows。
|
|
53
|
+
* - `postgres`:`sql.unsafe(sql, params)`,直接返回行数组。
|
|
54
|
+
*/
|
|
55
|
+
export declare function queryViaDriver<T = unknown>(connection: unknown, sql: string, params?: unknown[]): Promise<T[]>;
|
|
56
|
+
/**
|
|
57
|
+
* 通过 tagged template 执行查询(供 db proxy 使用),按连接 tag 分流。
|
|
58
|
+
*
|
|
59
|
+
* - `mysql2`:把模板片段拼成 `?` 占位 SQL,走 `conn.query(sql, values)`。
|
|
60
|
+
* - 其余(bun-sql / postgres / reserved):连接本身即可作为 tagged template 调用。
|
|
61
|
+
*/
|
|
62
|
+
export declare function templateQueryViaDriver(connection: unknown, strings: TemplateStringsArray, values: unknown[]): Promise<unknown>;
|
|
63
|
+
/**
|
|
64
|
+
* 健康检查(按连接 tag 分流)。
|
|
65
|
+
*/
|
|
66
|
+
export declare function healthCheckViaDriver(connection: unknown): Promise<boolean>;
|
|
67
|
+
/**
|
|
68
|
+
* 关闭连接(按连接 tag 分流)。
|
|
69
|
+
*
|
|
70
|
+
* - `bun-sql`:`.close()`
|
|
71
|
+
* - `mysql2` / `postgres`:`.end()`
|
|
72
|
+
* - 兜底:可用的 `.close()` 或 `.end()`
|
|
73
|
+
*/
|
|
74
|
+
export declare function closeViaDriver(connection: unknown): Promise<void>;
|
|
75
|
+
/**
|
|
76
|
+
* 将 `SELECT ... ?` 占位符 SQL + 参数转换为模板字符串片段,
|
|
77
|
+
* 让参数通过 Bun.SQL 的 values 通道注入。
|
|
78
|
+
*/
|
|
79
|
+
export declare function buildTemplateFromSql(sql: string, params?: unknown[]): {
|
|
80
|
+
strings: string[];
|
|
81
|
+
values: unknown[];
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=driver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../src/database/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE3E;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAS3C;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,OAAO,EAC5B,MAAM,EAAE,cAAc,GAAG,SAAS,EAClC,MAAM,EAAE,aAAa,GACpB,cAAc,CAsChB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,cAAc,GAAG,CAAC,CAczE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAenF;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,CAAC,CA6BlB;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,WAAW,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,EACvC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,CAAC,CA+BlB;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,CAAC,GAAG,OAAO,EAC9C,UAAU,EAAE,OAAO,EACnB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,CAAC,EAAE,CAAC,CAkDd;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,OAAO,CAAC,CAkBlB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAOhF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BvE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAW1C"}
|
package/dist/database/index.d.ts
CHANGED
|
@@ -5,10 +5,11 @@ export { ConnectionPool } from './connection-pool';
|
|
|
5
5
|
export { DatabaseHealthIndicator } from './health-indicator';
|
|
6
6
|
export { DatabaseExtension } from './database-extension';
|
|
7
7
|
export { BunSQLManager } from './sql-manager';
|
|
8
|
+
export { resolveDriver, tagConnection, getConnectionDriver, type ResolvedDriver, type RuntimeEngine, } from './driver';
|
|
8
9
|
export { SqliteAdapter, SqliteManager, Semaphore } from './sqlite-adapter';
|
|
9
10
|
export { db, initDbProxy, type DbProxy, } from './db-proxy';
|
|
10
11
|
export { DbStrategy, Session as DbSession, DB_STRATEGY_KEY, getDbStrategy, type DbStrategyType, } from './strategy-decorator';
|
|
11
12
|
export { databaseSessionStore, getCurrentSession, runWithSession, type DatabaseSession, type TransactionState, type ReservedSqlSession, } from './database-context';
|
|
12
|
-
export { BUN_SQL_MANAGER_TOKEN, DB_TOKEN, DATABASE_OPTIONS_TOKEN, DATABASE_SERVICE_TOKEN, SQLITE_MANAGER_TOKEN, type BunSQLConfig, type BunSQLPoolOptions, type ConnectionInfo, type ConnectionPoolOptions, type DatabaseConfig, type DatabaseModuleOptions, type DatabaseType, type MysqlConfig, type PostgresConfig, type SqliteV2Config, type SqliteConfig, type TenantConfig, } from './types';
|
|
13
|
+
export { BUN_SQL_MANAGER_TOKEN, DB_TOKEN, DATABASE_OPTIONS_TOKEN, DATABASE_SERVICE_TOKEN, SQLITE_MANAGER_TOKEN, type BunSQLConfig, type BunSQLPoolOptions, type ConnectionInfo, type ConnectionPoolOptions, type DatabaseConfig, type DatabaseDriver, type DatabaseModuleOptions, type DatabaseType, type MysqlConfig, type PostgresConfig, type SqliteV2Config, type SqliteConfig, type TenantConfig, } from './types';
|
|
13
14
|
export { Entity, Column, PrimaryKey, Repository, BaseRepository, DrizzleBaseRepository, OrmService, ORM_SERVICE_TOKEN, getEntityMetadata, getColumnMetadata, getRepositoryMetadata, type OrmModuleOptions, type BaseRepository as BaseRepositoryInterface, type EntityMetadata, type ColumnMetadata, Transactional, TransactionManager, TransactionInterceptor, Propagation, IsolationLevel, TransactionStatus, TRANSACTION_SERVICE_TOKEN, getTransactionMetadata, type TransactionOptions, type TransactionContext, } from './orm';
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EACL,EAAE,EACF,WAAW,EACX,KAAK,OAAO,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EACV,OAAO,IAAI,SAAS,EACpB,eAAe,EACf,aAAa,EACb,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,QAAQ,EACR,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,MAAM,EACN,MAAM,EACN,UAAU,EACV,UAAU,EACV,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,KAAK,cAAc,IAAI,uBAAuB,EAC9C,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EACL,EAAE,EACF,WAAW,EACX,KAAK,OAAO,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EACV,OAAO,IAAI,SAAS,EACpB,eAAe,EACf,aAAa,EACb,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,qBAAqB,EACrB,QAAQ,EACR,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,MAAM,EACN,MAAM,EACN,UAAU,EACV,UAAU,EACV,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,KAAK,cAAc,IAAI,uBAAuB,EAC9C,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,OAAO,CAAC"}
|
|
@@ -58,15 +58,5 @@ export declare class DatabaseService {
|
|
|
58
58
|
* bun:sqlite 使用同步 .query().all();@vscode/sqlite3 使用异步 callback .all()
|
|
59
59
|
*/
|
|
60
60
|
private querySqlite;
|
|
61
|
-
/**
|
|
62
|
-
* Bun.SQL 查询实现(PostgreSQL/MySQL)
|
|
63
|
-
* 通过模板字符串调用 Bun.SQL,确保参数走 Bun.SQL 转义逻辑
|
|
64
|
-
*/
|
|
65
|
-
private queryBunSQL;
|
|
66
|
-
/**
|
|
67
|
-
* 将 SQL 与 ? 占位符参数转换为模板字符串片段
|
|
68
|
-
* 让参数通过 Bun.SQL 的 values 通道注入,避免手工拼接 SQL
|
|
69
|
-
*/
|
|
70
|
-
private buildTemplateFromSql;
|
|
71
61
|
}
|
|
72
62
|
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/database/service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/database/service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,cAAc,EACd,cAAc,EACd,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,qBACa,eAAe;IAC1B,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,OAAO,CAAwB;gBAEpB,OAAO,EAAE,qBAAqB;IA2BjD;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxC;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC;;OAEG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;OAEG;IACI,YAAY;;;;;;IAInB;;OAEG;IACI,aAAa,IAAI,OAAO;IAI/B;;OAEG;IACH,IAAW,MAAM,IAAI,qBAAqB,CAEzC;IAED;;OAEG;IACI,eAAe,IAAI,cAAc,CAAC,MAAM,CAAC;IAIhD;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ5C;;OAEG;IACI,iBAAiB,IAAI,cAAc;IAI1C;;;OAGG;IACI,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAuB9E;;;OAGG;IACH,OAAO,CAAC,WAAW;CA2CpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-manager.d.ts","sourceRoot":"","sources":["../../src/database/sql-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"sql-manager.d.ts","sourceRoot":"","sources":["../../src/database/sql-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C;;;;GAIG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,eAAe,CAAa;IAE7B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO;IAyD5D,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIpC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIxC,UAAU,IAAI,OAAO;IAUf,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,SAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD,UAAU,CAAC,OAAO,SAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CAIrD"}
|
package/dist/database/types.d.ts
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
* 数据库类型
|
|
3
3
|
*/
|
|
4
4
|
export type DatabaseType = 'sqlite' | 'postgres' | 'mysql';
|
|
5
|
+
/**
|
|
6
|
+
* SQL 驱动选择
|
|
7
|
+
*
|
|
8
|
+
* 与运行时平台(fs/crypto/http server 等)解耦,仅决定 Postgres/MySQL 连接走哪套底层驱动。
|
|
9
|
+
*
|
|
10
|
+
* - `'auto'`(默认):Bun 运行时使用内建 `Bun.SQL`,Node.js 运行时使用 `mysql2` / `postgres` 纯 JS 驱动(保持历史行为)。
|
|
11
|
+
* - `'mysql2'`:无论运行时是 Bun 还是 Node,都使用 `mysql2`(仅适用于 `type: 'mysql'`)。
|
|
12
|
+
* 适合 `bun build --compile` 场景,绕开编译二进制内焊死的 `Bun.SQL` MySQL 适配 bug。
|
|
13
|
+
* - `'postgres'`:无论运行时如何,都使用 `postgres` 纯 JS 驱动(仅适用于 `type: 'postgres'`)。
|
|
14
|
+
* - `'bun-sql'`:强制使用 `Bun.SQL`(仅在 Bun 运行时合法,Node.js 下会抛出清晰错误)。
|
|
15
|
+
*/
|
|
16
|
+
export type DatabaseDriver = 'auto' | 'bun-sql' | 'mysql2' | 'postgres';
|
|
5
17
|
/**
|
|
6
18
|
* SQLite 配置
|
|
7
19
|
*/
|
|
@@ -68,6 +80,8 @@ export interface MysqlConfig {
|
|
|
68
80
|
}
|
|
69
81
|
/**
|
|
70
82
|
* 数据库配置(联合类型)
|
|
83
|
+
*
|
|
84
|
+
* Postgres/MySQL 支持可选的 `driver` 字段,用于显式选择底层驱动(与运行时平台解耦)。
|
|
71
85
|
*/
|
|
72
86
|
export type DatabaseConfig = {
|
|
73
87
|
type: 'sqlite';
|
|
@@ -75,9 +89,11 @@ export type DatabaseConfig = {
|
|
|
75
89
|
} | {
|
|
76
90
|
type: 'postgres';
|
|
77
91
|
config: PostgresConfig;
|
|
92
|
+
driver?: DatabaseDriver;
|
|
78
93
|
} | {
|
|
79
94
|
type: 'mysql';
|
|
80
95
|
config: MysqlConfig;
|
|
96
|
+
driver?: DatabaseDriver;
|
|
81
97
|
};
|
|
82
98
|
/**
|
|
83
99
|
* Bun.SQL 连接池配置
|
|
@@ -111,6 +127,11 @@ export interface BunSQLConfig {
|
|
|
111
127
|
type: 'postgres' | 'mysql';
|
|
112
128
|
url: string;
|
|
113
129
|
pool?: BunSQLPoolOptions;
|
|
130
|
+
/**
|
|
131
|
+
* 显式选择底层驱动(与运行时平台解耦)。
|
|
132
|
+
* @default 'auto'
|
|
133
|
+
*/
|
|
134
|
+
driver?: DatabaseDriver;
|
|
114
135
|
}
|
|
115
136
|
/**
|
|
116
137
|
* SQLite V2 配置
|
|
@@ -177,6 +198,11 @@ export interface DatabaseModuleOptions {
|
|
|
177
198
|
* 单租户:数据库类型(V2)
|
|
178
199
|
*/
|
|
179
200
|
type?: DatabaseType;
|
|
201
|
+
/**
|
|
202
|
+
* 单租户:显式选择底层驱动(V2,与运行时平台解耦)
|
|
203
|
+
* @default 'auto'
|
|
204
|
+
*/
|
|
205
|
+
driver?: DatabaseDriver;
|
|
180
206
|
/**
|
|
181
207
|
* 单租户:Postgres/MySQL URL(V2)
|
|
182
208
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/database/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/database/types.ts"],"names":[],"mappings":"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"}
|