drizzle-orm 0.33.0-ab3b46d → 0.33.0-ad58316

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 (131) hide show
  1. package/better-sqlite3/driver.cjs +7 -1
  2. package/better-sqlite3/driver.cjs.map +1 -1
  3. package/better-sqlite3/driver.d.cts +4 -1
  4. package/better-sqlite3/driver.d.ts +4 -1
  5. package/better-sqlite3/driver.js +6 -1
  6. package/better-sqlite3/driver.js.map +1 -1
  7. package/bun-sqlite/driver.cjs +7 -1
  8. package/bun-sqlite/driver.cjs.map +1 -1
  9. package/bun-sqlite/driver.d.cts +4 -1
  10. package/bun-sqlite/driver.d.ts +4 -1
  11. package/bun-sqlite/driver.js +6 -1
  12. package/bun-sqlite/driver.js.map +1 -1
  13. package/expo-sqlite/driver.cjs +7 -1
  14. package/expo-sqlite/driver.cjs.map +1 -1
  15. package/expo-sqlite/driver.d.cts +4 -1
  16. package/expo-sqlite/driver.d.ts +4 -1
  17. package/expo-sqlite/driver.js +6 -1
  18. package/expo-sqlite/driver.js.map +1 -1
  19. package/libsql/migrator.cjs +1 -1
  20. package/libsql/migrator.cjs.map +1 -1
  21. package/libsql/migrator.d.cts +1 -1
  22. package/libsql/migrator.d.ts +1 -1
  23. package/libsql/migrator.js +1 -1
  24. package/libsql/migrator.js.map +1 -1
  25. package/libsql/session.cjs +12 -0
  26. package/libsql/session.cjs.map +1 -1
  27. package/libsql/session.d.cts +1 -0
  28. package/libsql/session.d.ts +1 -0
  29. package/libsql/session.js +12 -0
  30. package/libsql/session.js.map +1 -1
  31. package/monodriver.cjs +54 -20
  32. package/monodriver.cjs.map +1 -1
  33. package/monodriver.d.cts +79 -58
  34. package/monodriver.d.ts +79 -58
  35. package/monodriver.js +54 -20
  36. package/monodriver.js.map +1 -1
  37. package/monomigrator.cjs +29 -57
  38. package/monomigrator.cjs.map +1 -1
  39. package/monomigrator.d.cts +3 -53
  40. package/monomigrator.d.ts +3 -53
  41. package/monomigrator.js +29 -57
  42. package/monomigrator.js.map +1 -1
  43. package/mysql-proxy/driver.cjs +7 -1
  44. package/mysql-proxy/driver.cjs.map +1 -1
  45. package/mysql-proxy/driver.d.cts +4 -1
  46. package/mysql-proxy/driver.d.ts +4 -1
  47. package/mysql-proxy/driver.js +6 -1
  48. package/mysql-proxy/driver.js.map +1 -1
  49. package/mysql2/driver.cjs +6 -1
  50. package/mysql2/driver.cjs.map +1 -1
  51. package/mysql2/driver.d.cts +3 -1
  52. package/mysql2/driver.d.ts +3 -1
  53. package/mysql2/driver.js +5 -1
  54. package/mysql2/driver.js.map +1 -1
  55. package/mysql2/migrator.cjs +4 -1
  56. package/mysql2/migrator.cjs.map +1 -1
  57. package/mysql2/migrator.d.cts +1 -1
  58. package/mysql2/migrator.d.ts +1 -1
  59. package/mysql2/migrator.js +4 -1
  60. package/mysql2/migrator.js.map +1 -1
  61. package/neon-serverless/driver.cjs +6 -1
  62. package/neon-serverless/driver.cjs.map +1 -1
  63. package/neon-serverless/driver.d.cts +3 -1
  64. package/neon-serverless/driver.d.ts +3 -1
  65. package/neon-serverless/driver.js +5 -1
  66. package/neon-serverless/driver.js.map +1 -1
  67. package/node-postgres/driver.cjs +6 -1
  68. package/node-postgres/driver.cjs.map +1 -1
  69. package/node-postgres/driver.d.cts +3 -1
  70. package/node-postgres/driver.d.ts +3 -1
  71. package/node-postgres/driver.js +5 -1
  72. package/node-postgres/driver.js.map +1 -1
  73. package/op-sqlite/driver.cjs +7 -1
  74. package/op-sqlite/driver.cjs.map +1 -1
  75. package/op-sqlite/driver.d.cts +4 -1
  76. package/op-sqlite/driver.d.ts +4 -1
  77. package/op-sqlite/driver.js +6 -1
  78. package/op-sqlite/driver.js.map +1 -1
  79. package/package.json +51 -51
  80. package/pg-core/db.cjs.map +1 -1
  81. package/pg-core/db.d.cts +1 -1
  82. package/pg-core/db.d.ts +1 -1
  83. package/pg-core/db.js.map +1 -1
  84. package/pg-proxy/driver.cjs +7 -1
  85. package/pg-proxy/driver.cjs.map +1 -1
  86. package/pg-proxy/driver.d.cts +4 -1
  87. package/pg-proxy/driver.d.ts +4 -1
  88. package/pg-proxy/driver.js +6 -1
  89. package/pg-proxy/driver.js.map +1 -1
  90. package/pglite/driver.cjs +6 -1
  91. package/pglite/driver.cjs.map +1 -1
  92. package/pglite/driver.d.cts +3 -1
  93. package/pglite/driver.d.ts +3 -1
  94. package/pglite/driver.js +5 -1
  95. package/pglite/driver.js.map +1 -1
  96. package/planetscale-serverless/driver.cjs +7 -1
  97. package/planetscale-serverless/driver.cjs.map +1 -1
  98. package/planetscale-serverless/driver.d.cts +4 -1
  99. package/planetscale-serverless/driver.d.ts +4 -1
  100. package/planetscale-serverless/driver.js +6 -1
  101. package/planetscale-serverless/driver.js.map +1 -1
  102. package/planetscale-serverless/migrator.cjs +4 -1
  103. package/planetscale-serverless/migrator.cjs.map +1 -1
  104. package/planetscale-serverless/migrator.d.cts +1 -1
  105. package/planetscale-serverless/migrator.d.ts +1 -1
  106. package/planetscale-serverless/migrator.js +4 -1
  107. package/planetscale-serverless/migrator.js.map +1 -1
  108. package/postgres-js/driver.cjs +7 -1
  109. package/postgres-js/driver.cjs.map +1 -1
  110. package/postgres-js/driver.d.cts +4 -1
  111. package/postgres-js/driver.d.ts +4 -1
  112. package/postgres-js/driver.js +6 -1
  113. package/postgres-js/driver.js.map +1 -1
  114. package/tidb-serverless/driver.cjs +7 -1
  115. package/tidb-serverless/driver.cjs.map +1 -1
  116. package/tidb-serverless/driver.d.cts +4 -1
  117. package/tidb-serverless/driver.d.ts +4 -1
  118. package/tidb-serverless/driver.js +6 -1
  119. package/tidb-serverless/driver.js.map +1 -1
  120. package/vercel-postgres/driver.cjs +6 -1
  121. package/vercel-postgres/driver.cjs.map +1 -1
  122. package/vercel-postgres/driver.d.cts +3 -1
  123. package/vercel-postgres/driver.d.ts +3 -1
  124. package/vercel-postgres/driver.js +5 -1
  125. package/vercel-postgres/driver.js.map +1 -1
  126. package/version.cjs +2 -2
  127. package/version.cjs.map +1 -1
  128. package/version.d.cts +2 -2
  129. package/version.d.ts +2 -2
  130. package/version.js +2 -2
  131. package/version.js.map +1 -1
@@ -2,64 +2,14 @@ import type { AwsDataApiPgDatabase } from "./aws-data-api/pg/index.cjs";
2
2
  import type { BetterSQLite3Database } from "./better-sqlite3/index.cjs";
3
3
  import type { BunSQLiteDatabase } from "./bun-sqlite/index.cjs";
4
4
  import type { DrizzleD1Database } from "./d1/index.cjs";
5
- import type { ExpoSQLiteDatabase } from "./expo-sqlite/index.cjs";
6
5
  import type { LibSQLDatabase } from "./libsql/index.cjs";
7
6
  import type { MigrationConfig } from "./migrator.cjs";
8
- import type { MySqlRemoteDatabase } from "./mysql-proxy/index.cjs";
9
- import type { ProxyMigrator as MySqlProxyMigrator } from "./mysql-proxy/migrator.cjs";
10
7
  import type { MySql2Database } from "./mysql2/index.cjs";
11
8
  import type { NeonHttpDatabase } from "./neon-http/index.cjs";
12
9
  import type { NeonDatabase } from "./neon-serverless/index.cjs";
13
10
  import type { NodePgDatabase } from "./node-postgres/index.cjs";
14
- import type { OPSQLiteDatabase } from "./op-sqlite/index.cjs";
15
- import type { PgRemoteDatabase } from "./pg-proxy/index.cjs";
16
- import type { ProxyMigrator as PgProxyMigrator } from "./pg-proxy/migrator.cjs";
17
- import type { PgliteDatabase } from "./pglite/index.cjs";
18
11
  import type { PlanetScaleDatabase } from "./planetscale-serverless/index.cjs";
19
- import type { ProxyMigrator as SQLiteProxyMigrator } from "./sqlite-proxy/migrator.cjs";
12
+ import type { PostgresJsDatabase } from "./postgres-js/index.cjs";
13
+ import type { TiDBServerlessDatabase } from "./tidb-serverless/index.cjs";
20
14
  import type { VercelPgDatabase } from "./vercel-postgres/index.cjs";
21
- import type { XataHttpDatabase } from "./xata-http/index.cjs";
22
- import type { MigrationConfig as XataHttpMigrationConfig } from "./xata-http/migrator.cjs";
23
- type OPSQLiteMigrationConfig = {
24
- journal: {
25
- entries: {
26
- idx: number;
27
- when: number;
28
- tag: string;
29
- breakpoints: boolean;
30
- }[];
31
- };
32
- migrations: Record<string, string>;
33
- };
34
- type ExpoSQLiteMigrationConfig = {
35
- journal: {
36
- entries: {
37
- idx: number;
38
- when: number;
39
- tag: string;
40
- breakpoints: boolean;
41
- }[];
42
- };
43
- migrations: Record<string, string>;
44
- };
45
- export declare function migrate(type: 'aws-data-api-pg', db: AwsDataApiPgDatabase<any>, config: string | MigrationConfig): Promise<void>;
46
- export declare function migrate(type: 'better-sqlite3', db: BetterSQLite3Database<any>, config: string | MigrationConfig): Promise<void>;
47
- export declare function migrate(type: 'bun:sqlite', db: BunSQLiteDatabase<any>, config: string | MigrationConfig): Promise<void>;
48
- export declare function migrate(type: 'd1', db: DrizzleD1Database<any>, config: string | MigrationConfig): Promise<void>;
49
- export declare function migrate(type: 'expo-sqlite', db: ExpoSQLiteDatabase<any>, config: ExpoSQLiteMigrationConfig): Promise<void>;
50
- export declare function migrate(type: 'libsql', db: LibSQLDatabase<any>, config: MigrationConfig): Promise<void>;
51
- export declare function migrate(type: 'mysql-proxy', db: MySqlRemoteDatabase<any>, callback: MySqlProxyMigrator, config: MigrationConfig): Promise<void>;
52
- export declare function migrate(type: 'mysql2', db: MySql2Database<any>, config: MigrationConfig): Promise<void>;
53
- export declare function migrate(type: 'neon-http', db: NeonHttpDatabase<any>, config: string | MigrationConfig): Promise<void>;
54
- export declare function migrate(type: 'neon-serverless', db: NeonDatabase<any>, config: string | MigrationConfig): Promise<void>;
55
- export declare function migrate(type: 'node-postgres', db: NodePgDatabase<any>, config: string | MigrationConfig): Promise<void>;
56
- export declare function migrate(type: 'op-sqlite', db: OPSQLiteDatabase<any>, config: OPSQLiteMigrationConfig): Promise<void>;
57
- export declare function migrate(type: 'pg-proxy', db: PgRemoteDatabase<any>, callback: PgProxyMigrator, config: string | MigrationConfig): Promise<void>;
58
- export declare function migrate(type: 'pglite', db: PgliteDatabase<any>, config: string | MigrationConfig): Promise<void>;
59
- export declare function migrate(type: 'planetscale', db: PlanetScaleDatabase<any>, config: MigrationConfig): Promise<void>;
60
- export declare function migrate(type: 'postgres-js', db: PlanetScaleDatabase<any>, config: string | MigrationConfig): Promise<void>;
61
- export declare function migrate(type: 'sqlite-proxy', db: PgRemoteDatabase<any>, callback: SQLiteProxyMigrator, config: string | MigrationConfig): Promise<void>;
62
- export declare function migrate(type: 'tidb-serverless', db: PlanetScaleDatabase<any>, config: MigrationConfig): Promise<void>;
63
- export declare function migrate(type: 'vercel-postgres', db: VercelPgDatabase<any>, config: string | MigrationConfig): Promise<void>;
64
- export declare function migrate(type: 'xata-http', db: XataHttpDatabase<any>, config: string | XataHttpMigrationConfig): Promise<void>;
65
- export {};
15
+ export declare function migrate(db: AwsDataApiPgDatabase<any> | BetterSQLite3Database<any> | BunSQLiteDatabase<any> | DrizzleD1Database<any> | LibSQLDatabase<any> | MySql2Database<any> | NeonHttpDatabase<any> | NeonDatabase<any> | NodePgDatabase<any> | PlanetScaleDatabase<any> | PostgresJsDatabase<any> | VercelPgDatabase<any> | TiDBServerlessDatabase<any>, config: string | MigrationConfig): Promise<void>;
package/monomigrator.d.ts CHANGED
@@ -2,64 +2,14 @@ import type { AwsDataApiPgDatabase } from "./aws-data-api/pg/index.js";
2
2
  import type { BetterSQLite3Database } from "./better-sqlite3/index.js";
3
3
  import type { BunSQLiteDatabase } from "./bun-sqlite/index.js";
4
4
  import type { DrizzleD1Database } from "./d1/index.js";
5
- import type { ExpoSQLiteDatabase } from "./expo-sqlite/index.js";
6
5
  import type { LibSQLDatabase } from "./libsql/index.js";
7
6
  import type { MigrationConfig } from "./migrator.js";
8
- import type { MySqlRemoteDatabase } from "./mysql-proxy/index.js";
9
- import type { ProxyMigrator as MySqlProxyMigrator } from "./mysql-proxy/migrator.js";
10
7
  import type { MySql2Database } from "./mysql2/index.js";
11
8
  import type { NeonHttpDatabase } from "./neon-http/index.js";
12
9
  import type { NeonDatabase } from "./neon-serverless/index.js";
13
10
  import type { NodePgDatabase } from "./node-postgres/index.js";
14
- import type { OPSQLiteDatabase } from "./op-sqlite/index.js";
15
- import type { PgRemoteDatabase } from "./pg-proxy/index.js";
16
- import type { ProxyMigrator as PgProxyMigrator } from "./pg-proxy/migrator.js";
17
- import type { PgliteDatabase } from "./pglite/index.js";
18
11
  import type { PlanetScaleDatabase } from "./planetscale-serverless/index.js";
19
- import type { ProxyMigrator as SQLiteProxyMigrator } from "./sqlite-proxy/migrator.js";
12
+ import type { PostgresJsDatabase } from "./postgres-js/index.js";
13
+ import type { TiDBServerlessDatabase } from "./tidb-serverless/index.js";
20
14
  import type { VercelPgDatabase } from "./vercel-postgres/index.js";
21
- import type { XataHttpDatabase } from "./xata-http/index.js";
22
- import type { MigrationConfig as XataHttpMigrationConfig } from "./xata-http/migrator.js";
23
- type OPSQLiteMigrationConfig = {
24
- journal: {
25
- entries: {
26
- idx: number;
27
- when: number;
28
- tag: string;
29
- breakpoints: boolean;
30
- }[];
31
- };
32
- migrations: Record<string, string>;
33
- };
34
- type ExpoSQLiteMigrationConfig = {
35
- journal: {
36
- entries: {
37
- idx: number;
38
- when: number;
39
- tag: string;
40
- breakpoints: boolean;
41
- }[];
42
- };
43
- migrations: Record<string, string>;
44
- };
45
- export declare function migrate(type: 'aws-data-api-pg', db: AwsDataApiPgDatabase<any>, config: string | MigrationConfig): Promise<void>;
46
- export declare function migrate(type: 'better-sqlite3', db: BetterSQLite3Database<any>, config: string | MigrationConfig): Promise<void>;
47
- export declare function migrate(type: 'bun:sqlite', db: BunSQLiteDatabase<any>, config: string | MigrationConfig): Promise<void>;
48
- export declare function migrate(type: 'd1', db: DrizzleD1Database<any>, config: string | MigrationConfig): Promise<void>;
49
- export declare function migrate(type: 'expo-sqlite', db: ExpoSQLiteDatabase<any>, config: ExpoSQLiteMigrationConfig): Promise<void>;
50
- export declare function migrate(type: 'libsql', db: LibSQLDatabase<any>, config: MigrationConfig): Promise<void>;
51
- export declare function migrate(type: 'mysql-proxy', db: MySqlRemoteDatabase<any>, callback: MySqlProxyMigrator, config: MigrationConfig): Promise<void>;
52
- export declare function migrate(type: 'mysql2', db: MySql2Database<any>, config: MigrationConfig): Promise<void>;
53
- export declare function migrate(type: 'neon-http', db: NeonHttpDatabase<any>, config: string | MigrationConfig): Promise<void>;
54
- export declare function migrate(type: 'neon-serverless', db: NeonDatabase<any>, config: string | MigrationConfig): Promise<void>;
55
- export declare function migrate(type: 'node-postgres', db: NodePgDatabase<any>, config: string | MigrationConfig): Promise<void>;
56
- export declare function migrate(type: 'op-sqlite', db: OPSQLiteDatabase<any>, config: OPSQLiteMigrationConfig): Promise<void>;
57
- export declare function migrate(type: 'pg-proxy', db: PgRemoteDatabase<any>, callback: PgProxyMigrator, config: string | MigrationConfig): Promise<void>;
58
- export declare function migrate(type: 'pglite', db: PgliteDatabase<any>, config: string | MigrationConfig): Promise<void>;
59
- export declare function migrate(type: 'planetscale', db: PlanetScaleDatabase<any>, config: MigrationConfig): Promise<void>;
60
- export declare function migrate(type: 'postgres-js', db: PlanetScaleDatabase<any>, config: string | MigrationConfig): Promise<void>;
61
- export declare function migrate(type: 'sqlite-proxy', db: PgRemoteDatabase<any>, callback: SQLiteProxyMigrator, config: string | MigrationConfig): Promise<void>;
62
- export declare function migrate(type: 'tidb-serverless', db: PlanetScaleDatabase<any>, config: MigrationConfig): Promise<void>;
63
- export declare function migrate(type: 'vercel-postgres', db: VercelPgDatabase<any>, config: string | MigrationConfig): Promise<void>;
64
- export declare function migrate(type: 'xata-http', db: XataHttpDatabase<any>, config: string | XataHttpMigrationConfig): Promise<void>;
65
- export {};
15
+ export declare function migrate(db: AwsDataApiPgDatabase<any> | BetterSQLite3Database<any> | BunSQLiteDatabase<any> | DrizzleD1Database<any> | LibSQLDatabase<any> | MySql2Database<any> | NeonHttpDatabase<any> | NeonDatabase<any> | NodePgDatabase<any> | PlanetScaleDatabase<any> | PostgresJsDatabase<any> | VercelPgDatabase<any> | TiDBServerlessDatabase<any>, config: string | MigrationConfig): Promise<void>;
package/monomigrator.js CHANGED
@@ -1,85 +1,57 @@
1
- async function migrate(type, db, config, extraConfig) {
2
- const rest = [db, config, extraConfig];
3
- switch (type) {
4
- case "aws-data-api-pg": {
1
+ import { entityKind } from "./entity.js";
2
+ async function migrate(db, config) {
3
+ switch (db.constructor[entityKind]) {
4
+ case "AwsDataApiPgDatabase": {
5
5
  const { migrate: migrate2 } = await import("./aws-data-api/pg/migrator");
6
- return migrate2(rest[0], rest[1]);
6
+ return migrate2(db, config);
7
7
  }
8
- case "better-sqlite3": {
8
+ case "BetterSQLite3Database": {
9
9
  const { migrate: migrate2 } = await import("./better-sqlite3/migrator");
10
- return migrate2(rest[0], rest[1]);
10
+ return migrate2(db, config);
11
11
  }
12
- case "bun:sqlite": {
12
+ case "BunSQLiteDatabase": {
13
13
  const { migrate: migrate2 } = await import("./bun-sqlite/migrator");
14
- return migrate2(rest[0], rest[1]);
14
+ return migrate2(db, config);
15
15
  }
16
- case "d1": {
16
+ case "D1Database": {
17
17
  const { migrate: migrate2 } = await import("./d1/migrator");
18
- return migrate2(rest[0], rest[1]);
18
+ return migrate2(db, config);
19
19
  }
20
- case "expo-sqlite": {
21
- const { migrate: migrate2 } = await import("./expo-sqlite/migrator");
22
- return migrate2(rest[0], rest[1]);
23
- }
24
- case "libsql": {
20
+ case "LibSQLDatabase": {
25
21
  const { migrate: migrate2 } = await import("./libsql/migrator");
26
- return migrate2(rest[0], rest[1]);
27
- }
28
- case "mysql-proxy": {
29
- const { migrate: migrate2 } = await import("./mysql-proxy/migrator");
30
- return migrate2(rest[0], rest[1], rest[2]);
22
+ return migrate2(db, config);
31
23
  }
32
- case "mysql2": {
24
+ case "MySql2Database": {
33
25
  const { migrate: migrate2 } = await import("./mysql2/migrator");
34
- return migrate2(rest[0], rest[1]);
26
+ return migrate2(db, config);
35
27
  }
36
- case "neon-http": {
28
+ case "NeonHttpDatabase": {
37
29
  const { migrate: migrate2 } = await import("./neon-http/migrator");
38
- return migrate2(rest[0], rest[1]);
30
+ return migrate2(db, config);
39
31
  }
40
- case "neon-serverless": {
32
+ case "NeonServerlessDatabase": {
41
33
  const { migrate: migrate2 } = await import("./neon-serverless/migrator");
42
- return migrate2(rest[0], rest[1]);
34
+ return migrate2(db, config);
43
35
  }
44
- case "node-postgres": {
36
+ case "NodePgDatabase": {
45
37
  const { migrate: migrate2 } = await import("./node-postgres/migrator");
46
- return migrate2(rest[0], rest[1]);
47
- }
48
- case "op-sqlite": {
49
- const { migrate: migrate2 } = await import("./op-sqlite/migrator");
50
- return migrate2(rest[0], rest[1]);
51
- }
52
- case "pg-proxy": {
53
- const { migrate: migrate2 } = await import("./pg-proxy/migrator");
54
- return migrate2(rest[0], rest[1], rest[2]);
38
+ return migrate2(db, config);
55
39
  }
56
- case "pglite": {
57
- const { migrate: migrate2 } = await import("./pglite/migrator");
58
- return migrate2(rest[0], rest[1]);
59
- }
60
- case "planetscale": {
40
+ case "PlanetScaleDatabase": {
61
41
  const { migrate: migrate2 } = await import("./planetscale-serverless/migrator");
62
- return migrate2(rest[0], rest[1]);
42
+ return migrate2(db, config);
63
43
  }
64
- case "postgres-js": {
44
+ case "PostgresJsDatabase": {
65
45
  const { migrate: migrate2 } = await import("./postgres-js/migrator");
66
- return migrate2(rest[0], rest[1]);
67
- }
68
- case "sqlite-proxy": {
69
- const { migrate: migrate2 } = await import("./sqlite-proxy/migrator");
70
- return migrate2(rest[0], rest[1], rest[2]);
46
+ return migrate2(db, config);
71
47
  }
72
- case "tidb-serverless": {
48
+ case "TiDBServerlessDatabase": {
73
49
  const { migrate: migrate2 } = await import("./tidb-serverless/migrator");
74
- return migrate2(rest[0], rest[1]);
50
+ return migrate2(db, config);
75
51
  }
76
- case "vercel-postgres": {
52
+ case "VercelPgDatabase": {
77
53
  const { migrate: migrate2 } = await import("./vercel-postgres/migrator");
78
- return migrate2(rest[0], rest[1]);
79
- }
80
- case "xata-http": {
81
- const { migrate: migrate2 } = await import("./xata-http/migrator");
82
- return migrate2(rest[0], rest[1]);
54
+ return migrate2(db, config);
83
55
  }
84
56
  }
85
57
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/monomigrator.ts"],"sourcesContent":["/* eslint-disable import/extensions */\nimport type { AwsDataApiPgDatabase } from './aws-data-api/pg/index.ts';\nimport type { BetterSQLite3Database } from './better-sqlite3/index.ts';\nimport type { BunSQLiteDatabase } from './bun-sqlite/index.ts';\nimport type { DrizzleD1Database } from './d1/index.ts';\nimport type { ExpoSQLiteDatabase } from './expo-sqlite/index.ts';\nimport type { LibSQLDatabase } from './libsql/index.ts';\nimport type { MigrationConfig } from './migrator.ts';\nimport type { MySqlRemoteDatabase } from './mysql-proxy/index.ts';\nimport type { ProxyMigrator as MySqlProxyMigrator } from './mysql-proxy/migrator.ts';\nimport type { MySql2Database } from './mysql2/index.ts';\nimport type { NeonHttpDatabase } from './neon-http/index.ts';\nimport type { NeonDatabase } from './neon-serverless/index.ts';\nimport type { NodePgDatabase } from './node-postgres/index.ts';\nimport type { OPSQLiteDatabase } from './op-sqlite/index.ts';\nimport type { PgRemoteDatabase } from './pg-proxy/index.ts';\nimport type { ProxyMigrator as PgProxyMigrator } from './pg-proxy/migrator.ts';\nimport type { PgliteDatabase } from './pglite/index.ts';\nimport type { PlanetScaleDatabase } from './planetscale-serverless/index.ts';\nimport type { ProxyMigrator as SQLiteProxyMigrator } from './sqlite-proxy/migrator.ts';\nimport type { VercelPgDatabase } from './vercel-postgres/index.ts';\nimport type { XataHttpDatabase } from './xata-http/index.ts';\nimport type { MigrationConfig as XataHttpMigrationConfig } from './xata-http/migrator.ts';\n\ntype OPSQLiteMigrationConfig = {\n\tjournal: {\n\t\tentries: { idx: number; when: number; tag: string; breakpoints: boolean }[];\n\t};\n\tmigrations: Record<string, string>;\n};\n\ntype ExpoSQLiteMigrationConfig = {\n\tjournal: {\n\t\tentries: { idx: number; when: number; tag: string; breakpoints: boolean }[];\n\t};\n\tmigrations: Record<string, string>;\n};\n\ntype DatabaseType =\n\t| 'aws-data-api-pg'\n\t| 'better-sqlite3'\n\t| 'bun:sqlite'\n\t| 'd1'\n\t| 'expo-sqlite'\n\t| 'libsql'\n\t| 'mysql-proxy'\n\t| 'mysql2'\n\t| 'neon-http'\n\t| 'neon-serverless'\n\t| 'node-postgres'\n\t| 'op-sqlite'\n\t| 'pg-proxy'\n\t| 'pglite'\n\t| 'planetscale'\n\t| 'postgres-js'\n\t| 'sqlite-proxy'\n\t| 'tidb-serverless'\n\t| 'vercel-postgres'\n\t| 'xata-http';\n\nexport async function migrate(\n\ttype: 'aws-data-api-pg',\n\tdb: AwsDataApiPgDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'better-sqlite3',\n\tdb: BetterSQLite3Database<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'bun:sqlite',\n\tdb: BunSQLiteDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(type: 'd1', db: DrizzleD1Database<any>, config: string | MigrationConfig): Promise<void>;\nexport async function migrate(\n\ttype: 'expo-sqlite',\n\tdb: ExpoSQLiteDatabase<any>,\n\tconfig: ExpoSQLiteMigrationConfig,\n): Promise<void>;\nexport async function migrate(type: 'libsql', db: LibSQLDatabase<any>, config: MigrationConfig): Promise<void>;\nexport async function migrate(\n\ttype: 'mysql-proxy',\n\tdb: MySqlRemoteDatabase<any>,\n\tcallback: MySqlProxyMigrator,\n\tconfig: MigrationConfig,\n): Promise<void>;\nexport async function migrate(type: 'mysql2', db: MySql2Database<any>, config: MigrationConfig): Promise<void>;\nexport async function migrate(\n\ttype: 'neon-http',\n\tdb: NeonHttpDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'neon-serverless',\n\tdb: NeonDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'node-postgres',\n\tdb: NodePgDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'op-sqlite',\n\tdb: OPSQLiteDatabase<any>,\n\tconfig: OPSQLiteMigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'pg-proxy',\n\tdb: PgRemoteDatabase<any>,\n\tcallback: PgProxyMigrator,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(type: 'pglite', db: PgliteDatabase<any>, config: string | MigrationConfig): Promise<void>;\nexport async function migrate(\n\ttype: 'planetscale',\n\tdb: PlanetScaleDatabase<any>,\n\tconfig: MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'postgres-js',\n\tdb: PlanetScaleDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'sqlite-proxy',\n\tdb: PgRemoteDatabase<any>,\n\tcallback: SQLiteProxyMigrator,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'tidb-serverless',\n\tdb: PlanetScaleDatabase<any>,\n\tconfig: MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'vercel-postgres',\n\tdb: VercelPgDatabase<any>,\n\tconfig: string | MigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: 'xata-http',\n\tdb: XataHttpDatabase<any>,\n\tconfig: string | XataHttpMigrationConfig,\n): Promise<void>;\nexport async function migrate(\n\ttype: DatabaseType,\n\tdb: any,\n\tconfig:\n\t\t| string\n\t\t| MigrationConfig\n\t\t| ExpoSQLiteMigrationConfig\n\t\t| OPSQLiteMigrationConfig\n\t\t| XataHttpMigrationConfig\n\t\t| PgProxyMigrator\n\t\t| MySqlProxyMigrator\n\t\t| SQLiteProxyMigrator,\n\textraConfig?: string | MigrationConfig | undefined,\n) {\n\tconst rest = [db, config, extraConfig];\n\n\tswitch (type) {\n\t\tcase 'aws-data-api-pg': {\n\t\t\tconst { migrate } = await import('./aws-data-api/pg/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'better-sqlite3': {\n\t\t\tconst { migrate } = await import('./better-sqlite3/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'bun:sqlite': {\n\t\t\tconst { migrate } = await import('./bun-sqlite/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'd1': {\n\t\t\tconst { migrate } = await import('./d1/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'expo-sqlite': {\n\t\t\tconst { migrate } = await import('./expo-sqlite/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as ExpoSQLiteMigrationConfig);\n\t\t}\n\t\tcase 'libsql': {\n\t\t\tconst { migrate } = await import('./libsql/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as MigrationConfig);\n\t\t}\n\t\tcase 'mysql-proxy': {\n\t\t\tconst { migrate } = await import('./mysql-proxy/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as MySqlProxyMigrator, rest[2] as MigrationConfig);\n\t\t}\n\t\tcase 'mysql2': {\n\t\t\tconst { migrate } = await import('./mysql2/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as MigrationConfig);\n\t\t}\n\t\tcase 'neon-http': {\n\t\t\tconst { migrate } = await import('./neon-http/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'neon-serverless': {\n\t\t\tconst { migrate } = await import('./neon-serverless/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'node-postgres': {\n\t\t\tconst { migrate } = await import('./node-postgres/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'op-sqlite': {\n\t\t\tconst { migrate } = await import('./op-sqlite/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as OPSQLiteMigrationConfig);\n\t\t}\n\t\tcase 'pg-proxy': {\n\t\t\tconst { migrate } = await import('./pg-proxy/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as PgProxyMigrator, rest[2] as string | MigrationConfig);\n\t\t}\n\t\tcase 'pglite': {\n\t\t\tconst { migrate } = await import('./pglite/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'planetscale': {\n\t\t\tconst { migrate } = await import('./planetscale-serverless/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as MigrationConfig);\n\t\t}\n\t\tcase 'postgres-js': {\n\t\t\tconst { migrate } = await import('./postgres-js/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'sqlite-proxy': {\n\t\t\tconst { migrate } = await import('./sqlite-proxy/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as SQLiteProxyMigrator, rest[2] as string | MigrationConfig);\n\t\t}\n\t\tcase 'tidb-serverless': {\n\t\t\tconst { migrate } = await import('./tidb-serverless/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as MigrationConfig);\n\t\t}\n\t\tcase 'vercel-postgres': {\n\t\t\tconst { migrate } = await import('./vercel-postgres/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t\tcase 'xata-http': {\n\t\t\tconst { migrate } = await import('./xata-http/migrator');\n\n\t\t\treturn migrate(rest[0], rest[1] as string | MigrationConfig);\n\t\t}\n\t}\n}\n"],"mappings":"AAmJA,eAAsB,QACrB,MACA,IACA,QASA,aACC;AACD,QAAM,OAAO,CAAC,IAAI,QAAQ,WAAW;AAErC,UAAQ,MAAM;AAAA,IACb,KAAK,mBAAmB;AACvB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,kBAAkB;AACtB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,2BAA2B;AAE5D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,cAAc;AAClB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,uBAAuB;AAExD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,MAAM;AACV,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,eAAe;AAEhD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,eAAe;AACnB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,wBAAwB;AAEzD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA8B;AAAA,IAC7D;AAAA,IACA,KAAK,UAAU;AACd,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mBAAmB;AAEpD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAAoB;AAAA,IACnD;AAAA,IACA,KAAK,eAAe;AACnB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,wBAAwB;AAEzD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,GAAyB,KAAK,CAAC,CAAoB;AAAA,IAClF;AAAA,IACA,KAAK,UAAU;AACd,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mBAAmB;AAEpD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAAoB;AAAA,IACnD;AAAA,IACA,KAAK,aAAa;AACjB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,sBAAsB;AAEvD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,mBAAmB;AACvB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,iBAAiB;AACrB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,0BAA0B;AAE3D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,aAAa;AACjB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,sBAAsB;AAEvD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA4B;AAAA,IAC3D;AAAA,IACA,KAAK,YAAY;AAChB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,qBAAqB;AAEtD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,GAAsB,KAAK,CAAC,CAA6B;AAAA,IACxF;AAAA,IACA,KAAK,UAAU;AACd,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mBAAmB;AAEpD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,eAAe;AACnB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mCAAmC;AAEpE,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAAoB;AAAA,IACnD;AAAA,IACA,KAAK,eAAe;AACnB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,wBAAwB;AAEzD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,gBAAgB;AACpB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,yBAAyB;AAE1D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,GAA0B,KAAK,CAAC,CAA6B;AAAA,IAC5F;AAAA,IACA,KAAK,mBAAmB;AACvB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAAoB;AAAA,IACnD;AAAA,IACA,KAAK,mBAAmB;AACvB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,IACA,KAAK,aAAa;AACjB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,sBAAsB;AAEvD,aAAOA,SAAQ,KAAK,CAAC,GAAG,KAAK,CAAC,CAA6B;AAAA,IAC5D;AAAA,EACD;AACD;","names":["migrate"]}
1
+ {"version":3,"sources":["../src/monomigrator.ts"],"sourcesContent":["/* eslint-disable import/extensions */\nimport type { AwsDataApiPgDatabase } from './aws-data-api/pg/index.ts';\nimport type { BetterSQLite3Database } from './better-sqlite3/index.ts';\nimport type { BunSQLiteDatabase } from './bun-sqlite/index.ts';\nimport type { DrizzleD1Database } from './d1/index.ts';\nimport { entityKind } from './entity.ts';\nimport type { LibSQLDatabase } from './libsql/index.ts';\nimport type { MigrationConfig } from './migrator.ts';\nimport type { MySql2Database } from './mysql2/index.ts';\nimport type { NeonHttpDatabase } from './neon-http/index.ts';\nimport type { NeonDatabase } from './neon-serverless/index.ts';\nimport type { NodePgDatabase } from './node-postgres/index.ts';\nimport type { PlanetScaleDatabase } from './planetscale-serverless/index.ts';\nimport type { PostgresJsDatabase } from './postgres-js/index.ts';\nimport type { TiDBServerlessDatabase } from './tidb-serverless/index.ts';\nimport type { VercelPgDatabase } from './vercel-postgres/index.ts';\n\nexport async function migrate(\n\tdb:\n\t\t| AwsDataApiPgDatabase<any>\n\t\t| BetterSQLite3Database<any>\n\t\t| BunSQLiteDatabase<any>\n\t\t| DrizzleD1Database<any>\n\t\t| LibSQLDatabase<any>\n\t\t| MySql2Database<any>\n\t\t| NeonHttpDatabase<any>\n\t\t| NeonDatabase<any>\n\t\t| NodePgDatabase<any>\n\t\t| PlanetScaleDatabase<any>\n\t\t| PostgresJsDatabase<any>\n\t\t| VercelPgDatabase<any>\n\t\t| TiDBServerlessDatabase<any>,\n\tconfig:\n\t\t| string\n\t\t| MigrationConfig,\n) {\n\tswitch ((<any> db).constructor[entityKind]) {\n\t\tcase 'AwsDataApiPgDatabase': {\n\t\t\tconst { migrate } = await import('./aws-data-api/pg/migrator');\n\n\t\t\treturn migrate(db as AwsDataApiPgDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'BetterSQLite3Database': {\n\t\t\tconst { migrate } = await import('./better-sqlite3/migrator');\n\n\t\t\treturn migrate(db as BetterSQLite3Database, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'BunSQLiteDatabase': {\n\t\t\tconst { migrate } = await import('./bun-sqlite/migrator');\n\n\t\t\treturn migrate(db as BunSQLiteDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'D1Database': {\n\t\t\tconst { migrate } = await import('./d1/migrator');\n\n\t\t\treturn migrate(db as DrizzleD1Database, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'LibSQLDatabase': {\n\t\t\tconst { migrate } = await import('./libsql/migrator');\n\n\t\t\treturn migrate(db as LibSQLDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'MySql2Database': {\n\t\t\tconst { migrate } = await import('./mysql2/migrator');\n\n\t\t\treturn migrate(db as MySql2Database, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'NeonHttpDatabase': {\n\t\t\tconst { migrate } = await import('./neon-http/migrator');\n\n\t\t\treturn migrate(db as NeonHttpDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'NeonServerlessDatabase': {\n\t\t\tconst { migrate } = await import('./neon-serverless/migrator');\n\n\t\t\treturn migrate(db as NeonDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'NodePgDatabase': {\n\t\t\tconst { migrate } = await import('./node-postgres/migrator');\n\n\t\t\treturn migrate(db as NodePgDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'PlanetScaleDatabase': {\n\t\t\tconst { migrate } = await import('./planetscale-serverless/migrator');\n\n\t\t\treturn migrate(db as PlanetScaleDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'PostgresJsDatabase': {\n\t\t\tconst { migrate } = await import('./postgres-js/migrator');\n\n\t\t\treturn migrate(db as PostgresJsDatabase, config as string | MigrationConfig);\n\t\t}\n\t\tcase 'TiDBServerlessDatabase': {\n\t\t\tconst { migrate } = await import('./tidb-serverless/migrator');\n\n\t\t\treturn migrate(db as TiDBServerlessDatabase, config as MigrationConfig);\n\t\t}\n\t\tcase 'VercelPgDatabase': {\n\t\t\tconst { migrate } = await import('./vercel-postgres/migrator');\n\n\t\t\treturn migrate(db as VercelPgDatabase, config as string | MigrationConfig);\n\t\t}\n\t}\n}\n"],"mappings":"AAKA,SAAS,kBAAkB;AAY3B,eAAsB,QACrB,IAcA,QAGC;AACD,UAAe,GAAI,YAAY,UAAU,GAAG;AAAA,IAC3C,KAAK,wBAAwB;AAC5B,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,IAA4B,MAAkC;AAAA,IAC9E;AAAA,IACA,KAAK,yBAAyB;AAC7B,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,2BAA2B;AAE5D,aAAOA,SAAQ,IAA6B,MAAkC;AAAA,IAC/E;AAAA,IACA,KAAK,qBAAqB;AACzB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,uBAAuB;AAExD,aAAOA,SAAQ,IAAyB,MAAkC;AAAA,IAC3E;AAAA,IACA,KAAK,cAAc;AAClB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,eAAe;AAEhD,aAAOA,SAAQ,IAAyB,MAAkC;AAAA,IAC3E;AAAA,IACA,KAAK,kBAAkB;AACtB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mBAAmB;AAEpD,aAAOA,SAAQ,IAAsB,MAAkC;AAAA,IACxE;AAAA,IACA,KAAK,kBAAkB;AACtB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mBAAmB;AAEpD,aAAOA,SAAQ,IAAsB,MAAkC;AAAA,IACxE;AAAA,IACA,KAAK,oBAAoB;AACxB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,sBAAsB;AAEvD,aAAOA,SAAQ,IAAwB,MAAkC;AAAA,IAC1E;AAAA,IACA,KAAK,0BAA0B;AAC9B,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,IAAoB,MAAkC;AAAA,IACtE;AAAA,IACA,KAAK,kBAAkB;AACtB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,0BAA0B;AAE3D,aAAOA,SAAQ,IAAsB,MAAkC;AAAA,IACxE;AAAA,IACA,KAAK,uBAAuB;AAC3B,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,mCAAmC;AAEpE,aAAOA,SAAQ,IAA2B,MAAkC;AAAA,IAC7E;AAAA,IACA,KAAK,sBAAsB;AAC1B,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,wBAAwB;AAEzD,aAAOA,SAAQ,IAA0B,MAAkC;AAAA,IAC5E;AAAA,IACA,KAAK,0BAA0B;AAC9B,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,IAA8B,MAAyB;AAAA,IACvE;AAAA,IACA,KAAK,oBAAoB;AACxB,YAAM,EAAE,SAAAA,SAAQ,IAAI,MAAM,OAAO,4BAA4B;AAE7D,aAAOA,SAAQ,IAAwB,MAAkC;AAAA,IAC1E;AAAA,EACD;AACD;","names":["migrate"]}
@@ -18,14 +18,19 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var driver_exports = {};
20
20
  __export(driver_exports, {
21
+ MySqlRemoteDatabase: () => MySqlRemoteDatabase,
21
22
  drizzle: () => drizzle
22
23
  });
23
24
  module.exports = __toCommonJS(driver_exports);
25
+ var import_entity = require("../entity.cjs");
24
26
  var import_logger = require("../logger.cjs");
25
27
  var import_db = require("../mysql-core/db.cjs");
26
28
  var import_dialect = require("../mysql-core/dialect.cjs");
27
29
  var import_relations = require("../relations.cjs");
28
30
  var import_session = require("./session.cjs");
31
+ class MySqlRemoteDatabase extends import_db.MySqlDatabase {
32
+ static [import_entity.entityKind] = "MySqlRemoteDatabase";
33
+ }
29
34
  function drizzle(callback, config = {}) {
30
35
  const dialect = new import_dialect.MySqlDialect();
31
36
  let logger;
@@ -47,10 +52,11 @@ function drizzle(callback, config = {}) {
47
52
  };
48
53
  }
49
54
  const session = new import_session.MySqlRemoteSession(callback, dialect, schema, { logger });
50
- return new import_db.MySqlDatabase(dialect, session, schema, "default");
55
+ return new MySqlRemoteDatabase(dialect, session, schema, "default");
51
56
  }
52
57
  // Annotate the CommonJS export names for ESM import in node:
53
58
  0 && (module.exports = {
59
+ MySqlRemoteDatabase,
54
60
  drizzle
55
61
  });
56
62
  //# sourceMappingURL=driver.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql-proxy/driver.ts"],"sourcesContent":["import { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type MySqlRemotePreparedQueryHKT, type MySqlRemoteQueryResultHKT, MySqlRemoteSession } from './session.ts';\n\nexport type MySqlRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> = MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema>;\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema> = {},\n): MySqlRemoteDatabase<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new MySqlRemoteSession(callback, dialect, schema, { logger });\n\treturn new MySqlDatabase(dialect, session, schema, 'default') as MySqlRemoteDatabase<TSchema>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA8B;AAC9B,gBAA8B;AAC9B,qBAA6B;AAC7B,uBAKO;AAEP,qBAAqG;AAY9F,SAAS,QACf,UACA,SAAiC,CAAC,GACH;AAC/B,QAAM,UAAU,IAAI,4BAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,kCAAmB,UAAU,SAAS,QAAQ,EAAE,OAAO,CAAC;AAC5E,SAAO,IAAI,wBAAc,SAAS,SAAS,QAAQ,SAAS;AAC7D;","names":[]}
1
+ {"version":3,"sources":["../../src/mysql-proxy/driver.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type MySqlRemotePreparedQueryHKT, type MySqlRemoteQueryResultHKT, MySqlRemoteSession } from './session.ts';\n\nexport class MySqlRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema> {\n\tstatic readonly [entityKind]: string = 'MySqlRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema> = {},\n): MySqlRemoteDatabase<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new MySqlRemoteSession(callback, dialect, schema, { logger });\n\treturn new MySqlRemoteDatabase(dialect, session, schema as any, 'default') as MySqlRemoteDatabase<TSchema>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAC3B,oBAA8B;AAC9B,gBAA8B;AAC9B,qBAA6B;AAC7B,uBAKO;AAEP,qBAAqG;AAE9F,MAAM,4BAEH,wBAA+E;AAAA,EACxF,QAAiB,wBAAU,IAAY;AACxC;AAQO,SAAS,QACf,UACA,SAAiC,CAAC,GACH;AAC/B,QAAM,UAAU,IAAI,4BAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,kCAAmB,UAAU,SAAS,QAAQ,EAAE,OAAO,CAAC;AAC5E,SAAO,IAAI,oBAAoB,SAAS,SAAS,QAAe,SAAS;AAC1E;","names":[]}
@@ -1,7 +1,10 @@
1
+ import { entityKind } from "../entity.cjs";
1
2
  import { MySqlDatabase } from "../mysql-core/db.cjs";
2
3
  import type { DrizzleConfig } from "../utils.cjs";
3
4
  import { type MySqlRemotePreparedQueryHKT, type MySqlRemoteQueryResultHKT } from "./session.cjs";
4
- export type MySqlRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> = MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema>;
5
+ export declare class MySqlRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema> {
6
+ static readonly [entityKind]: string;
7
+ }
5
8
  export type RemoteCallback = (sql: string, params: any[], method: 'all' | 'execute') => Promise<{
6
9
  rows: any[];
7
10
  insertId?: number;
@@ -1,7 +1,10 @@
1
+ import { entityKind } from "../entity.js";
1
2
  import { MySqlDatabase } from "../mysql-core/db.js";
2
3
  import type { DrizzleConfig } from "../utils.js";
3
4
  import { type MySqlRemotePreparedQueryHKT, type MySqlRemoteQueryResultHKT } from "./session.js";
4
- export type MySqlRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> = MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema>;
5
+ export declare class MySqlRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema> {
6
+ static readonly [entityKind]: string;
7
+ }
5
8
  export type RemoteCallback = (sql: string, params: any[], method: 'all' | 'execute') => Promise<{
6
9
  rows: any[];
7
10
  insertId?: number;
@@ -1,3 +1,4 @@
1
+ import { entityKind } from "../entity.js";
1
2
  import { DefaultLogger } from "../logger.js";
2
3
  import { MySqlDatabase } from "../mysql-core/db.js";
3
4
  import { MySqlDialect } from "../mysql-core/dialect.js";
@@ -6,6 +7,9 @@ import {
6
7
  extractTablesRelationalConfig
7
8
  } from "../relations.js";
8
9
  import { MySqlRemoteSession } from "./session.js";
10
+ class MySqlRemoteDatabase extends MySqlDatabase {
11
+ static [entityKind] = "MySqlRemoteDatabase";
12
+ }
9
13
  function drizzle(callback, config = {}) {
10
14
  const dialect = new MySqlDialect();
11
15
  let logger;
@@ -27,9 +31,10 @@ function drizzle(callback, config = {}) {
27
31
  };
28
32
  }
29
33
  const session = new MySqlRemoteSession(callback, dialect, schema, { logger });
30
- return new MySqlDatabase(dialect, session, schema, "default");
34
+ return new MySqlRemoteDatabase(dialect, session, schema, "default");
31
35
  }
32
36
  export {
37
+ MySqlRemoteDatabase,
33
38
  drizzle
34
39
  };
35
40
  //# sourceMappingURL=driver.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql-proxy/driver.ts"],"sourcesContent":["import { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type MySqlRemotePreparedQueryHKT, type MySqlRemoteQueryResultHKT, MySqlRemoteSession } from './session.ts';\n\nexport type MySqlRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> = MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema>;\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema> = {},\n): MySqlRemoteDatabase<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new MySqlRemoteSession(callback, dialect, schema, { logger });\n\treturn new MySqlDatabase(dialect, session, schema, 'default') as MySqlRemoteDatabase<TSchema>;\n}\n"],"mappings":"AAAA,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AAEP,SAA2E,0BAA0B;AAY9F,SAAS,QACf,UACA,SAAiC,CAAC,GACH;AAC/B,QAAM,UAAU,IAAI,aAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,mBAAmB,UAAU,SAAS,QAAQ,EAAE,OAAO,CAAC;AAC5E,SAAO,IAAI,cAAc,SAAS,SAAS,QAAQ,SAAS;AAC7D;","names":[]}
1
+ {"version":3,"sources":["../../src/mysql-proxy/driver.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type MySqlRemotePreparedQueryHKT, type MySqlRemoteQueryResultHKT, MySqlRemoteSession } from './session.ts';\n\nexport class MySqlRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends MySqlDatabase<MySqlRemoteQueryResultHKT, MySqlRemotePreparedQueryHKT, TSchema> {\n\tstatic readonly [entityKind]: string = 'MySqlRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema> = {},\n): MySqlRemoteDatabase<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst session = new MySqlRemoteSession(callback, dialect, schema, { logger });\n\treturn new MySqlRemoteDatabase(dialect, session, schema as any, 'default') as MySqlRemoteDatabase<TSchema>;\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAC7B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AAEP,SAA2E,0BAA0B;AAE9F,MAAM,4BAEH,cAA+E;AAAA,EACxF,QAAiB,UAAU,IAAY;AACxC;AAQO,SAAS,QACf,UACA,SAAiC,CAAC,GACH;AAC/B,QAAM,UAAU,IAAI,aAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,mBAAmB,UAAU,SAAS,QAAQ,EAAE,OAAO,CAAC;AAC5E,SAAO,IAAI,oBAAoB,SAAS,SAAS,QAAe,SAAS;AAC1E;","names":[]}
package/mysql2/driver.cjs CHANGED
@@ -18,6 +18,7 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var driver_exports = {};
20
20
  __export(driver_exports, {
21
+ MySql2Database: () => MySql2Database,
21
22
  MySql2Driver: () => MySql2Driver,
22
23
  MySqlDatabase: () => import_db2.MySqlDatabase,
23
24
  drizzle: () => drizzle
@@ -42,6 +43,9 @@ class MySql2Driver {
42
43
  return new import_session.MySql2Session(this.client, this.dialect, schema, { logger: this.options.logger, mode });
43
44
  }
44
45
  }
46
+ class MySql2Database extends import_db.MySqlDatabase {
47
+ static [import_entity.entityKind] = "MySql2Database";
48
+ }
45
49
  function drizzle(client, config = {}) {
46
50
  const dialect = new import_dialect.MySqlDialect();
47
51
  let logger;
@@ -73,13 +77,14 @@ function drizzle(client, config = {}) {
73
77
  const mode = config.mode ?? "default";
74
78
  const driver = new MySql2Driver(client, dialect, { logger });
75
79
  const session = driver.createSession(schema, mode);
76
- return new import_db.MySqlDatabase(dialect, session, schema, mode);
80
+ return new MySql2Database(dialect, session, schema, mode);
77
81
  }
78
82
  function isCallbackClient(client) {
79
83
  return typeof client.promise === "function";
80
84
  }
81
85
  // Annotate the CommonJS export names for ESM import in node:
82
86
  0 && (module.exports = {
87
+ MySql2Database,
83
88
  MySql2Driver,
84
89
  MySqlDatabase,
85
90
  drizzle
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql2/driver.ts"],"sourcesContent":["import type { Connection as CallbackConnection, Pool as CallbackPool } from 'mysql2';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { Mode } from '~/mysql-core/session.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { DrizzleError } from '../index.ts';\nimport type { MySql2Client, MySql2PreparedQueryHKT, MySql2QueryResultHKT } from './session.ts';\nimport { MySql2Session } from './session.ts';\n\nexport interface MySqlDriverOptions {\n\tlogger?: Logger;\n}\n\nexport class MySql2Driver {\n\tstatic readonly [entityKind]: string = 'MySql2Driver';\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate options: MySqlDriverOptions = {},\n\t) {\n\t}\n\n\tcreateSession(\n\t\tschema: RelationalSchemaConfig<TablesRelationalConfig> | undefined,\n\t\tmode: Mode,\n\t): MySql2Session<Record<string, unknown>, TablesRelationalConfig> {\n\t\treturn new MySql2Session(this.client, this.dialect, schema, { logger: this.options.logger, mode });\n\t}\n}\n\nexport { MySqlDatabase } from '~/mysql-core/db.ts';\n\nexport type MySql2Database<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> = MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema>;\n\nexport type MySql2DrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> =\n\t& Omit<DrizzleConfig<TSchema>, 'schema'>\n\t& ({ schema: TSchema; mode: Mode } | { schema?: undefined; mode?: Mode });\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: MySql2Client | CallbackConnection | CallbackPool,\n\tconfig: MySql2DrizzleConfig<TSchema> = {},\n): MySql2Database<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\tif (isCallbackClient(client)) {\n\t\tclient = client.promise();\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tif (config.mode === undefined) {\n\t\t\tthrow new DrizzleError({\n\t\t\t\tmessage:\n\t\t\t\t\t'You need to specify \"mode\": \"planetscale\" or \"default\" when providing a schema. Read more: https://orm.drizzle.team/docs/rqb#modes',\n\t\t\t});\n\t\t}\n\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst mode = config.mode ?? 'default';\n\n\tconst driver = new MySql2Driver(client as MySql2Client, dialect, { logger });\n\tconst session = driver.createSession(schema, mode);\n\treturn new MySqlDatabase(dialect, session, schema, mode) as MySql2Database<TSchema>;\n}\n\ninterface CallbackClient {\n\tpromise(): MySql2Client;\n}\n\nfunction isCallbackClient(client: any): client is CallbackClient {\n\treturn typeof client.promise === 'function';\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA8B;AAC9B,gBAA8B;AAC9B,qBAA6B;AAE7B,uBAKO;AAEP,eAA6B;AAE7B,qBAA8B;AAwB9B,IAAAA,aAA8B;AAlBvB,MAAM,aAAa;AAAA,EAGzB,YACS,QACA,SACA,UAA8B,CAAC,GACtC;AAHO;AACA;AACA;AAAA,EAET;AAAA,EAPA,QAAiB,wBAAU,IAAY;AAAA,EASvC,cACC,QACA,MACiE;AACjE,WAAO,IAAI,6BAAc,KAAK,QAAQ,KAAK,SAAS,QAAQ,EAAE,QAAQ,KAAK,QAAQ,QAAQ,KAAK,CAAC;AAAA,EAClG;AACD;AAYO,SAAS,QACf,QACA,SAAuC,CAAC,GACd;AAC1B,QAAM,UAAU,IAAI,4BAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AACA,MAAI,iBAAiB,MAAM,GAAG;AAC7B,aAAS,OAAO,QAAQ;AAAA,EACzB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,QAAI,OAAO,SAAS,QAAW;AAC9B,YAAM,IAAI,sBAAa;AAAA,QACtB,SACC;AAAA,MACF,CAAC;AAAA,IACF;AAEA,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,OAAO,OAAO,QAAQ;AAE5B,QAAM,SAAS,IAAI,aAAa,QAAwB,SAAS,EAAE,OAAO,CAAC;AAC3E,QAAM,UAAU,OAAO,cAAc,QAAQ,IAAI;AACjD,SAAO,IAAI,wBAAc,SAAS,SAAS,QAAQ,IAAI;AACxD;AAMA,SAAS,iBAAiB,QAAuC;AAChE,SAAO,OAAO,OAAO,YAAY;AAClC;","names":["import_db"]}
1
+ {"version":3,"sources":["../../src/mysql2/driver.ts"],"sourcesContent":["import type { Connection as CallbackConnection, Pool as CallbackPool } from 'mysql2';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { Mode } from '~/mysql-core/session.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { DrizzleError } from '../index.ts';\nimport type { MySql2Client, MySql2PreparedQueryHKT, MySql2QueryResultHKT } from './session.ts';\nimport { MySql2Session } from './session.ts';\n\nexport interface MySqlDriverOptions {\n\tlogger?: Logger;\n}\n\nexport class MySql2Driver {\n\tstatic readonly [entityKind]: string = 'MySql2Driver';\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate options: MySqlDriverOptions = {},\n\t) {\n\t}\n\n\tcreateSession(\n\t\tschema: RelationalSchemaConfig<TablesRelationalConfig> | undefined,\n\t\tmode: Mode,\n\t): MySql2Session<Record<string, unknown>, TablesRelationalConfig> {\n\t\treturn new MySql2Session(this.client, this.dialect, schema, { logger: this.options.logger, mode });\n\t}\n}\n\nexport { MySqlDatabase } from '~/mysql-core/db.ts';\n\nexport class MySql2Database<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema> {\n\tstatic readonly [entityKind]: string = 'MySql2Database';\n}\n\nexport type MySql2DrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> =\n\t& Omit<DrizzleConfig<TSchema>, 'schema'>\n\t& ({ schema: TSchema; mode: Mode } | { schema?: undefined; mode?: Mode });\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: MySql2Client | CallbackConnection | CallbackPool,\n\tconfig: MySql2DrizzleConfig<TSchema> = {},\n): MySql2Database<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\tif (isCallbackClient(client)) {\n\t\tclient = client.promise();\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tif (config.mode === undefined) {\n\t\t\tthrow new DrizzleError({\n\t\t\t\tmessage:\n\t\t\t\t\t'You need to specify \"mode\": \"planetscale\" or \"default\" when providing a schema. Read more: https://orm.drizzle.team/docs/rqb#modes',\n\t\t\t});\n\t\t}\n\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst mode = config.mode ?? 'default';\n\n\tconst driver = new MySql2Driver(client as MySql2Client, dialect, { logger });\n\tconst session = driver.createSession(schema, mode);\n\treturn new MySql2Database(dialect, session, schema as any, mode) as MySql2Database<TSchema>;\n}\n\ninterface CallbackClient {\n\tpromise(): MySql2Client;\n}\n\nfunction isCallbackClient(client: any): client is CallbackClient {\n\treturn typeof client.promise === 'function';\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,oBAA8B;AAC9B,gBAA8B;AAC9B,qBAA6B;AAE7B,uBAKO;AAEP,eAA6B;AAE7B,qBAA8B;AAwB9B,IAAAA,aAA8B;AAlBvB,MAAM,aAAa;AAAA,EAGzB,YACS,QACA,SACA,UAA8B,CAAC,GACtC;AAHO;AACA;AACA;AAAA,EAET;AAAA,EAPA,QAAiB,wBAAU,IAAY;AAAA,EASvC,cACC,QACA,MACiE;AACjE,WAAO,IAAI,6BAAc,KAAK,QAAQ,KAAK,SAAS,QAAQ,EAAE,QAAQ,KAAK,QAAQ,QAAQ,KAAK,CAAC;AAAA,EAClG;AACD;AAIO,MAAM,uBAEH,wBAAqE;AAAA,EAC9E,QAAiB,wBAAU,IAAY;AACxC;AAMO,SAAS,QACf,QACA,SAAuC,CAAC,GACd;AAC1B,QAAM,UAAU,IAAI,4BAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AACA,MAAI,iBAAiB,MAAM,GAAG;AAC7B,aAAS,OAAO,QAAQ;AAAA,EACzB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,QAAI,OAAO,SAAS,QAAW;AAC9B,YAAM,IAAI,sBAAa;AAAA,QACtB,SACC;AAAA,MACF,CAAC;AAAA,IACF;AAEA,UAAM,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,OAAO,OAAO,QAAQ;AAE5B,QAAM,SAAS,IAAI,aAAa,QAAwB,SAAS,EAAE,OAAO,CAAC;AAC3E,QAAM,UAAU,OAAO,cAAc,QAAQ,IAAI;AACjD,SAAO,IAAI,eAAe,SAAS,SAAS,QAAe,IAAI;AAChE;AAMA,SAAS,iBAAiB,QAAuC;AAChE,SAAO,OAAO,OAAO,YAAY;AAClC;","names":["import_db"]}
@@ -20,7 +20,9 @@ export declare class MySql2Driver {
20
20
  createSession(schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined, mode: Mode): MySql2Session<Record<string, unknown>, TablesRelationalConfig>;
21
21
  }
22
22
  export { MySqlDatabase } from "../mysql-core/db.cjs";
23
- export type MySql2Database<TSchema extends Record<string, unknown> = Record<string, never>> = MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema>;
23
+ export declare class MySql2Database<TSchema extends Record<string, unknown> = Record<string, never>> extends MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema> {
24
+ static readonly [entityKind]: string;
25
+ }
24
26
  export type MySql2DrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> = Omit<DrizzleConfig<TSchema>, 'schema'> & ({
25
27
  schema: TSchema;
26
28
  mode: Mode;
@@ -20,7 +20,9 @@ export declare class MySql2Driver {
20
20
  createSession(schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined, mode: Mode): MySql2Session<Record<string, unknown>, TablesRelationalConfig>;
21
21
  }
22
22
  export { MySqlDatabase } from "../mysql-core/db.js";
23
- export type MySql2Database<TSchema extends Record<string, unknown> = Record<string, never>> = MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema>;
23
+ export declare class MySql2Database<TSchema extends Record<string, unknown> = Record<string, never>> extends MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema> {
24
+ static readonly [entityKind]: string;
25
+ }
24
26
  export type MySql2DrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> = Omit<DrizzleConfig<TSchema>, 'schema'> & ({
25
27
  schema: TSchema;
26
28
  mode: Mode;
package/mysql2/driver.js CHANGED
@@ -20,6 +20,9 @@ class MySql2Driver {
20
20
  }
21
21
  }
22
22
  import { MySqlDatabase as MySqlDatabase2 } from "../mysql-core/db.js";
23
+ class MySql2Database extends MySqlDatabase {
24
+ static [entityKind] = "MySql2Database";
25
+ }
23
26
  function drizzle(client, config = {}) {
24
27
  const dialect = new MySqlDialect();
25
28
  let logger;
@@ -51,12 +54,13 @@ function drizzle(client, config = {}) {
51
54
  const mode = config.mode ?? "default";
52
55
  const driver = new MySql2Driver(client, dialect, { logger });
53
56
  const session = driver.createSession(schema, mode);
54
- return new MySqlDatabase(dialect, session, schema, mode);
57
+ return new MySql2Database(dialect, session, schema, mode);
55
58
  }
56
59
  function isCallbackClient(client) {
57
60
  return typeof client.promise === "function";
58
61
  }
59
62
  export {
63
+ MySql2Database,
60
64
  MySql2Driver,
61
65
  MySqlDatabase2 as MySqlDatabase,
62
66
  drizzle
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql2/driver.ts"],"sourcesContent":["import type { Connection as CallbackConnection, Pool as CallbackPool } from 'mysql2';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { Mode } from '~/mysql-core/session.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { DrizzleError } from '../index.ts';\nimport type { MySql2Client, MySql2PreparedQueryHKT, MySql2QueryResultHKT } from './session.ts';\nimport { MySql2Session } from './session.ts';\n\nexport interface MySqlDriverOptions {\n\tlogger?: Logger;\n}\n\nexport class MySql2Driver {\n\tstatic readonly [entityKind]: string = 'MySql2Driver';\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate options: MySqlDriverOptions = {},\n\t) {\n\t}\n\n\tcreateSession(\n\t\tschema: RelationalSchemaConfig<TablesRelationalConfig> | undefined,\n\t\tmode: Mode,\n\t): MySql2Session<Record<string, unknown>, TablesRelationalConfig> {\n\t\treturn new MySql2Session(this.client, this.dialect, schema, { logger: this.options.logger, mode });\n\t}\n}\n\nexport { MySqlDatabase } from '~/mysql-core/db.ts';\n\nexport type MySql2Database<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> = MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema>;\n\nexport type MySql2DrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> =\n\t& Omit<DrizzleConfig<TSchema>, 'schema'>\n\t& ({ schema: TSchema; mode: Mode } | { schema?: undefined; mode?: Mode });\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: MySql2Client | CallbackConnection | CallbackPool,\n\tconfig: MySql2DrizzleConfig<TSchema> = {},\n): MySql2Database<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\tif (isCallbackClient(client)) {\n\t\tclient = client.promise();\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tif (config.mode === undefined) {\n\t\t\tthrow new DrizzleError({\n\t\t\t\tmessage:\n\t\t\t\t\t'You need to specify \"mode\": \"planetscale\" or \"default\" when providing a schema. Read more: https://orm.drizzle.team/docs/rqb#modes',\n\t\t\t});\n\t\t}\n\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst mode = config.mode ?? 'default';\n\n\tconst driver = new MySql2Driver(client as MySql2Client, dialect, { logger });\n\tconst session = driver.createSession(schema, mode);\n\treturn new MySqlDatabase(dialect, session, schema, mode) as MySql2Database<TSchema>;\n}\n\ninterface CallbackClient {\n\tpromise(): MySql2Client;\n}\n\nfunction isCallbackClient(client: any): client is CallbackClient {\n\treturn typeof client.promise === 'function';\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAE7B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AAEP,SAAS,oBAAoB;AAE7B,SAAS,qBAAqB;AAMvB,MAAM,aAAa;AAAA,EAGzB,YACS,QACA,SACA,UAA8B,CAAC,GACtC;AAHO;AACA;AACA;AAAA,EAET;AAAA,EAPA,QAAiB,UAAU,IAAY;AAAA,EASvC,cACC,QACA,MACiE;AACjE,WAAO,IAAI,cAAc,KAAK,QAAQ,KAAK,SAAS,QAAQ,EAAE,QAAQ,KAAK,QAAQ,QAAQ,KAAK,CAAC;AAAA,EAClG;AACD;AAEA,SAAS,iBAAAA,sBAAqB;AAUvB,SAAS,QACf,QACA,SAAuC,CAAC,GACd;AAC1B,QAAM,UAAU,IAAI,aAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AACA,MAAI,iBAAiB,MAAM,GAAG;AAC7B,aAAS,OAAO,QAAQ;AAAA,EACzB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,QAAI,OAAO,SAAS,QAAW;AAC9B,YAAM,IAAI,aAAa;AAAA,QACtB,SACC;AAAA,MACF,CAAC;AAAA,IACF;AAEA,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,OAAO,OAAO,QAAQ;AAE5B,QAAM,SAAS,IAAI,aAAa,QAAwB,SAAS,EAAE,OAAO,CAAC;AAC3E,QAAM,UAAU,OAAO,cAAc,QAAQ,IAAI;AACjD,SAAO,IAAI,cAAc,SAAS,SAAS,QAAQ,IAAI;AACxD;AAMA,SAAS,iBAAiB,QAAuC;AAChE,SAAO,OAAO,OAAO,YAAY;AAClC;","names":["MySqlDatabase"]}
1
+ {"version":3,"sources":["../../src/mysql2/driver.ts"],"sourcesContent":["import type { Connection as CallbackConnection, Pool as CallbackPool } from 'mysql2';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MySqlDatabase } from '~/mysql-core/db.ts';\nimport { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { Mode } from '~/mysql-core/session.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { DrizzleError } from '../index.ts';\nimport type { MySql2Client, MySql2PreparedQueryHKT, MySql2QueryResultHKT } from './session.ts';\nimport { MySql2Session } from './session.ts';\n\nexport interface MySqlDriverOptions {\n\tlogger?: Logger;\n}\n\nexport class MySql2Driver {\n\tstatic readonly [entityKind]: string = 'MySql2Driver';\n\n\tconstructor(\n\t\tprivate client: MySql2Client,\n\t\tprivate dialect: MySqlDialect,\n\t\tprivate options: MySqlDriverOptions = {},\n\t) {\n\t}\n\n\tcreateSession(\n\t\tschema: RelationalSchemaConfig<TablesRelationalConfig> | undefined,\n\t\tmode: Mode,\n\t): MySql2Session<Record<string, unknown>, TablesRelationalConfig> {\n\t\treturn new MySql2Session(this.client, this.dialect, schema, { logger: this.options.logger, mode });\n\t}\n}\n\nexport { MySqlDatabase } from '~/mysql-core/db.ts';\n\nexport class MySql2Database<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends MySqlDatabase<MySql2QueryResultHKT, MySql2PreparedQueryHKT, TSchema> {\n\tstatic readonly [entityKind]: string = 'MySql2Database';\n}\n\nexport type MySql2DrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> =\n\t& Omit<DrizzleConfig<TSchema>, 'schema'>\n\t& ({ schema: TSchema; mode: Mode } | { schema?: undefined; mode?: Mode });\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tclient: MySql2Client | CallbackConnection | CallbackPool,\n\tconfig: MySql2DrizzleConfig<TSchema> = {},\n): MySql2Database<TSchema> {\n\tconst dialect = new MySqlDialect();\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\tif (isCallbackClient(client)) {\n\t\tclient = client.promise();\n\t}\n\n\tlet schema: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tif (config.mode === undefined) {\n\t\t\tthrow new DrizzleError({\n\t\t\t\tmessage:\n\t\t\t\t\t'You need to specify \"mode\": \"planetscale\" or \"default\" when providing a schema. Read more: https://orm.drizzle.team/docs/rqb#modes',\n\t\t\t});\n\t\t}\n\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst mode = config.mode ?? 'default';\n\n\tconst driver = new MySql2Driver(client as MySql2Client, dialect, { logger });\n\tconst session = driver.createSession(schema, mode);\n\treturn new MySql2Database(dialect, session, schema as any, mode) as MySql2Database<TSchema>;\n}\n\ninterface CallbackClient {\n\tpromise(): MySql2Client;\n}\n\nfunction isCallbackClient(client: any): client is CallbackClient {\n\treturn typeof client.promise === 'function';\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,oBAAoB;AAE7B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AAEP,SAAS,oBAAoB;AAE7B,SAAS,qBAAqB;AAMvB,MAAM,aAAa;AAAA,EAGzB,YACS,QACA,SACA,UAA8B,CAAC,GACtC;AAHO;AACA;AACA;AAAA,EAET;AAAA,EAPA,QAAiB,UAAU,IAAY;AAAA,EASvC,cACC,QACA,MACiE;AACjE,WAAO,IAAI,cAAc,KAAK,QAAQ,KAAK,SAAS,QAAQ,EAAE,QAAQ,KAAK,QAAQ,QAAQ,KAAK,CAAC;AAAA,EAClG;AACD;AAEA,SAAS,iBAAAA,sBAAqB;AAEvB,MAAM,uBAEH,cAAqE;AAAA,EAC9E,QAAiB,UAAU,IAAY;AACxC;AAMO,SAAS,QACf,QACA,SAAuC,CAAC,GACd;AAC1B,QAAM,UAAU,IAAI,aAAa;AACjC,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AACA,MAAI,iBAAiB,MAAM,GAAG;AAC7B,aAAS,OAAO,QAAQ;AAAA,EACzB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,QAAI,OAAO,SAAS,QAAW;AAC9B,YAAM,IAAI,aAAa;AAAA,QACtB,SACC;AAAA,MACF,CAAC;AAAA,IACF;AAEA,UAAM,eAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,OAAO,OAAO,QAAQ;AAE5B,QAAM,SAAS,IAAI,aAAa,QAAwB,SAAS,EAAE,OAAO,CAAC;AAC3E,QAAM,UAAU,OAAO,cAAc,QAAQ,IAAI;AACjD,SAAO,IAAI,eAAe,SAAS,SAAS,QAAe,IAAI;AAChE;AAMA,SAAS,iBAAiB,QAAuC;AAChE,SAAO,OAAO,OAAO,YAAY;AAClC;","names":["MySqlDatabase"]}
@@ -24,7 +24,10 @@ module.exports = __toCommonJS(migrator_exports);
24
24
  var import_migrator = require("../migrator.cjs");
25
25
  async function migrate(db, config) {
26
26
  const migrations = (0, import_migrator.readMigrationFiles)(config);
27
- await db.dialect.migrate(migrations, db.session, config);
27
+ const preparedConfig = typeof config === "string" ? {
28
+ migrationsFolder: config
29
+ } : config;
30
+ await db.dialect.migrate(migrations, db.session, preparedConfig);
28
31
  }
29
32
  // Annotate the CommonJS export names for ESM import in node:
30
33
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql2/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { MySql2Database } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: MySql2Database<TSchema>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\tawait db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AAGnC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAC5C,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,MAAM;AACxD;","names":[]}
1
+ {"version":3,"sources":["../../src/mysql2/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { MySql2Database } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: MySql2Database<TSchema>,\n\tconfig: MigrationConfig | string,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst preparedConfig = typeof config === 'string'\n\t\t? {\n\t\t\tmigrationsFolder: config,\n\t\t}\n\t\t: config;\n\n\tawait db.dialect.migrate(migrations, db.session, preparedConfig);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AAGnC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAE5C,QAAM,iBAAiB,OAAO,WAAW,WACtC;AAAA,IACD,kBAAkB;AAAA,EACnB,IACE;AAEH,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,cAAc;AAChE;","names":[]}
@@ -1,3 +1,3 @@
1
1
  import type { MigrationConfig } from "../migrator.cjs";
2
2
  import type { MySql2Database } from "./driver.cjs";
3
- export declare function migrate<TSchema extends Record<string, unknown>>(db: MySql2Database<TSchema>, config: MigrationConfig): Promise<void>;
3
+ export declare function migrate<TSchema extends Record<string, unknown>>(db: MySql2Database<TSchema>, config: MigrationConfig | string): Promise<void>;
@@ -1,3 +1,3 @@
1
1
  import type { MigrationConfig } from "../migrator.js";
2
2
  import type { MySql2Database } from "./driver.js";
3
- export declare function migrate<TSchema extends Record<string, unknown>>(db: MySql2Database<TSchema>, config: MigrationConfig): Promise<void>;
3
+ export declare function migrate<TSchema extends Record<string, unknown>>(db: MySql2Database<TSchema>, config: MigrationConfig | string): Promise<void>;
@@ -1,7 +1,10 @@
1
1
  import { readMigrationFiles } from "../migrator.js";
2
2
  async function migrate(db, config) {
3
3
  const migrations = readMigrationFiles(config);
4
- await db.dialect.migrate(migrations, db.session, config);
4
+ const preparedConfig = typeof config === "string" ? {
5
+ migrationsFolder: config
6
+ } : config;
7
+ await db.dialect.migrate(migrations, db.session, preparedConfig);
5
8
  }
6
9
  export {
7
10
  migrate
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mysql2/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { MySql2Database } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: MySql2Database<TSchema>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\tawait db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AAGnC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAC5C,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,MAAM;AACxD;","names":[]}
1
+ {"version":3,"sources":["../../src/mysql2/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { MySql2Database } from './driver.ts';\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: MySql2Database<TSchema>,\n\tconfig: MigrationConfig | string,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst preparedConfig = typeof config === 'string'\n\t\t? {\n\t\t\tmigrationsFolder: config,\n\t\t}\n\t\t: config;\n\n\tawait db.dialect.migrate(migrations, db.session, preparedConfig);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AAGnC,eAAsB,QACrB,IACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAE5C,QAAM,iBAAiB,OAAO,WAAW,WACtC;AAAA,IACD,kBAAkB;AAAA,EACnB,IACE;AAEH,QAAM,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,cAAc;AAChE;","names":[]}