drizzle-orm 1.0.0-beta.11-88ca292 → 1.0.0-beta.11-dc50dee

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 (74) hide show
  1. package/aws-data-api/pg/migrator.d.cts +2 -2
  2. package/aws-data-api/pg/migrator.d.ts +2 -2
  3. package/better-sqlite3/migrator.d.cts +2 -2
  4. package/better-sqlite3/migrator.d.ts +2 -2
  5. package/bun-sql/migrator.d.cts +5 -5
  6. package/bun-sql/migrator.d.ts +5 -5
  7. package/bun-sql/mysql/migrator.d.cts +2 -2
  8. package/bun-sql/mysql/migrator.d.ts +2 -2
  9. package/bun-sql/postgres/migrator.d.cts +2 -2
  10. package/bun-sql/postgres/migrator.d.ts +2 -2
  11. package/bun-sql/sqlite/migrator.d.cts +2 -2
  12. package/bun-sql/sqlite/migrator.d.ts +2 -2
  13. package/bun-sqlite/migrator.cjs +11 -0
  14. package/bun-sqlite/migrator.cjs.map +1 -1
  15. package/bun-sqlite/migrator.d.cts +3 -3
  16. package/bun-sqlite/migrator.d.ts +3 -3
  17. package/bun-sqlite/migrator.js +11 -0
  18. package/bun-sqlite/migrator.js.map +1 -1
  19. package/bun-sqlite/session.cjs +6 -2
  20. package/bun-sqlite/session.cjs.map +1 -1
  21. package/bun-sqlite/session.js +6 -2
  22. package/bun-sqlite/session.js.map +1 -1
  23. package/cockroach/migrator.d.cts +2 -2
  24. package/cockroach/migrator.d.ts +2 -2
  25. package/cockroach-core/columns/date.common.d.cts +2 -2
  26. package/effect-postgres/driver.cjs +1 -4
  27. package/effect-postgres/driver.cjs.map +1 -1
  28. package/effect-postgres/driver.js +1 -4
  29. package/effect-postgres/driver.js.map +1 -1
  30. package/effect-postgres/migrator.d.ts +2 -2
  31. package/effect-postgres/session.cjs +2 -2
  32. package/effect-postgres/session.cjs.map +1 -1
  33. package/effect-postgres/session.js +2 -2
  34. package/effect-postgres/session.js.map +1 -1
  35. package/gel-core/utils.d.ts +3 -3
  36. package/migrator.cjs.map +1 -1
  37. package/migrator.d.cts +9 -1
  38. package/migrator.d.ts +9 -1
  39. package/migrator.js.map +1 -1
  40. package/mssql-core/columns/date.common.d.cts +2 -2
  41. package/mysql-core/utils.d.cts +2 -2
  42. package/mysql-core/utils.d.ts +2 -2
  43. package/mysql2/migrator.d.ts +2 -2
  44. package/neon/neon-auth.d.ts +9 -9
  45. package/neon/rls.d.ts +2 -2
  46. package/neon-serverless/migrator.d.cts +2 -2
  47. package/neon-serverless/migrator.d.ts +2 -2
  48. package/node-mssql/migrator.d.cts +2 -2
  49. package/node-mssql/migrator.d.ts +2 -2
  50. package/node-postgres/migrator.d.cts +2 -2
  51. package/node-postgres/migrator.d.ts +2 -2
  52. package/op-sqlite/migrator.d.ts +2 -2
  53. package/package.json +1 -1
  54. package/pg-core/utils.d.cts +3 -3
  55. package/pg-core/utils.d.ts +3 -3
  56. package/pglite/migrator.d.cts +2 -2
  57. package/pglite/migrator.d.ts +2 -2
  58. package/planetscale-serverless/migrator.d.ts +2 -2
  59. package/postgres-js/migrator.d.cts +2 -2
  60. package/postgres-js/migrator.d.ts +2 -2
  61. package/singlestore/migrator.d.ts +2 -2
  62. package/sql-js/migrator.d.ts +2 -2
  63. package/sqlite-core/dialect.cjs.map +1 -1
  64. package/sqlite-core/dialect.d.cts +2 -2
  65. package/sqlite-core/dialect.d.ts +2 -2
  66. package/sqlite-core/dialect.js.map +1 -1
  67. package/sqlite-core/query-builders/raw.d.cts +2 -2
  68. package/sqlite-core/query-builders/raw.d.ts +2 -2
  69. package/sqlite-core/utils.d.cts +2 -2
  70. package/sqlite-core/utils.d.ts +2 -2
  71. package/supabase/rls.d.ts +17 -17
  72. package/tidb-serverless/migrator.d.cts +2 -2
  73. package/tidb-serverless/migrator.d.ts +2 -2
  74. package/vercel-postgres/migrator.d.ts +2 -2
@@ -1,10 +1,10 @@
1
1
  import { AwsDataApiPgDatabase } from "./driver.cjs";
2
- import * as __migrator_ts18 from "../../migrator.cjs";
2
+ import * as __migrator_ts12 from "../../migrator.cjs";
3
3
  import { MigrationConfig } from "../../migrator.cjs";
4
4
  import { AnyRelations } from "../../relations.cjs";
5
5
 
6
6
  //#region src/aws-data-api/pg/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: AwsDataApiPgDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts18.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: AwsDataApiPgDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts12.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,10 +1,10 @@
1
1
  import { AwsDataApiPgDatabase } from "./driver.js";
2
- import * as __migrator_ts6 from "../../migrator.js";
2
+ import * as __migrator_ts9 from "../../migrator.js";
3
3
  import { MigrationConfig } from "../../migrator.js";
4
4
  import { AnyRelations } from "../../relations.js";
5
5
 
6
6
  //#region src/aws-data-api/pg/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: AwsDataApiPgDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts6.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: AwsDataApiPgDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts9.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.ts.map
@@ -1,10 +1,10 @@
1
1
  import { BetterSQLite3Database } from "./driver.cjs";
2
- import * as __migrator_ts20 from "../migrator.cjs";
2
+ import * as __migrator_ts9 from "../migrator.cjs";
3
3
  import { MigrationConfig } from "../migrator.cjs";
4
4
  import { AnyRelations } from "../relations.cjs";
5
5
 
6
6
  //#region src/better-sqlite3/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BetterSQLite3Database<TSchema, TRelations>, config: MigrationConfig): void | __migrator_ts20.MigratorInitFailResponse;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BetterSQLite3Database<TSchema, TRelations>, config: MigrationConfig): void | __migrator_ts9.MigratorInitFailResponse;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,10 +1,10 @@
1
1
  import { BetterSQLite3Database } from "./driver.js";
2
- import * as __migrator_ts10 from "../migrator.js";
2
+ import * as __migrator_ts13 from "../migrator.js";
3
3
  import { MigrationConfig } from "../migrator.js";
4
4
  import { AnyRelations } from "../relations.js";
5
5
 
6
6
  //#region src/better-sqlite3/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BetterSQLite3Database<TSchema, TRelations>, config: MigrationConfig): void | __migrator_ts10.MigratorInitFailResponse;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BetterSQLite3Database<TSchema, TRelations>, config: MigrationConfig): void | __migrator_ts13.MigratorInitFailResponse;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.ts.map
@@ -1,16 +1,16 @@
1
1
  import { BunMySqlDatabase } from "./mysql/driver.cjs";
2
2
  import { BunSQLDatabase } from "./postgres/driver.cjs";
3
3
  import { BunSQLiteDatabase } from "./sqlite/driver.cjs";
4
- import * as __migrator_ts11 from "../migrator.cjs";
4
+ import * as __migrator_ts17 from "../migrator.cjs";
5
5
  import { MigrationConfig } from "../migrator.cjs";
6
6
  import { AnyRelations } from "../relations.cjs";
7
7
 
8
8
  //#region src/bun-sql/migrator.d.ts
9
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts11.MigratorInitFailResponse>;
9
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts17.MigratorInitFailResponse>;
10
10
  declare namespace migrate {
11
- function postgres<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts11.MigratorInitFailResponse>;
12
- function sqlite<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts11.MigratorInitFailResponse>;
13
- function mysql<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts11.MigratorInitFailResponse>;
11
+ function postgres<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts17.MigratorInitFailResponse>;
12
+ function sqlite<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts17.MigratorInitFailResponse>;
13
+ function mysql<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts17.MigratorInitFailResponse>;
14
14
  }
15
15
  //#endregion
16
16
  export { migrate };
@@ -1,16 +1,16 @@
1
1
  import { BunMySqlDatabase } from "./mysql/driver.js";
2
2
  import { BunSQLDatabase } from "./postgres/driver.js";
3
3
  import { BunSQLiteDatabase } from "./sqlite/driver.js";
4
- import * as __migrator_ts13 from "../migrator.js";
4
+ import * as __migrator_ts14 from "../migrator.js";
5
5
  import { MigrationConfig } from "../migrator.js";
6
6
  import { AnyRelations } from "../relations.js";
7
7
 
8
8
  //#region src/bun-sql/migrator.d.ts
9
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts13.MigratorInitFailResponse>;
9
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts14.MigratorInitFailResponse>;
10
10
  declare namespace migrate {
11
- function postgres<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts13.MigratorInitFailResponse>;
12
- function sqlite<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts13.MigratorInitFailResponse>;
13
- function mysql<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts13.MigratorInitFailResponse>;
11
+ function postgres<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts14.MigratorInitFailResponse>;
12
+ function sqlite<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts14.MigratorInitFailResponse>;
13
+ function mysql<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts14.MigratorInitFailResponse>;
14
14
  }
15
15
  //#endregion
16
16
  export { migrate };
@@ -1,10 +1,10 @@
1
1
  import { BunMySqlDatabase } from "./driver.cjs";
2
- import * as __migrator_ts17 from "../../migrator.cjs";
2
+ import * as __migrator_ts21 from "../../migrator.cjs";
3
3
  import { MigrationConfig } from "../../migrator.cjs";
4
4
  import { AnyRelations } from "../../relations.cjs";
5
5
 
6
6
  //#region src/bun-sql/mysql/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts17.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts21.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,10 +1,10 @@
1
1
  import { BunMySqlDatabase } from "./driver.js";
2
- import * as __migrator_ts11 from "../../migrator.js";
2
+ import * as __migrator_ts19 from "../../migrator.js";
3
3
  import { MigrationConfig } from "../../migrator.js";
4
4
  import { AnyRelations } from "../../relations.js";
5
5
 
6
6
  //#region src/bun-sql/mysql/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts11.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunMySqlDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts19.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.ts.map
@@ -1,10 +1,10 @@
1
1
  import { BunSQLDatabase } from "./driver.cjs";
2
- import * as __migrator_ts15 from "../../migrator.cjs";
2
+ import * as __migrator_ts10 from "../../migrator.cjs";
3
3
  import { MigrationConfig } from "../../migrator.cjs";
4
4
  import { AnyRelations } from "../../relations.cjs";
5
5
 
6
6
  //#region src/bun-sql/postgres/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts15.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts10.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,10 +1,10 @@
1
1
  import { BunSQLDatabase } from "./driver.js";
2
- import * as __migrator_ts17 from "../../migrator.js";
2
+ import * as __migrator_ts22 from "../../migrator.js";
3
3
  import { MigrationConfig } from "../../migrator.js";
4
4
  import { AnyRelations } from "../../relations.js";
5
5
 
6
6
  //#region src/bun-sql/postgres/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts17.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts22.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.ts.map
@@ -1,10 +1,10 @@
1
1
  import { BunSQLiteDatabase } from "./driver.cjs";
2
- import * as __migrator_ts16 from "../../migrator.cjs";
2
+ import * as __migrator_ts22 from "../../migrator.cjs";
3
3
  import { MigrationConfig } from "../../migrator.cjs";
4
4
  import { AnyRelations } from "../../relations.cjs";
5
5
 
6
6
  //#region src/bun-sql/sqlite/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts16.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts22.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,10 +1,10 @@
1
1
  import { BunSQLiteDatabase } from "./driver.js";
2
- import * as __migrator_ts12 from "../../migrator.js";
2
+ import * as __migrator_ts18 from "../../migrator.js";
3
3
  import { MigrationConfig } from "../../migrator.js";
4
4
  import { AnyRelations } from "../../relations.js";
5
5
 
6
6
  //#region src/bun-sql/sqlite/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts12.MigratorInitFailResponse>;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: BunSQLiteDatabase<TSchema, TRelations>, config: MigrationConfig): Promise<void | __migrator_ts18.MigratorInitFailResponse>;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.ts.map
@@ -3,6 +3,17 @@ let __migrator_ts = require("../migrator.cjs");
3
3
 
4
4
  //#region src/bun-sqlite/migrator.ts
5
5
  function migrate(db, config) {
6
+ if ("migrationsJournal" in config) {
7
+ const journal = config.migrationsJournal;
8
+ const migrationsTable = config.migrationsTable;
9
+ const migrations$1 = journal.map((d) => ({
10
+ sql: d.sql.split("--> statement-breakpoint"),
11
+ folderMillis: d.timestamp,
12
+ hash: "",
13
+ bps: true
14
+ }));
15
+ return db.dialect.migrate(migrations$1, db.session, { migrationsTable });
16
+ }
6
17
  const migrations = (0, __migrator_ts.readMigrationFiles)(config);
7
18
  return db.dialect.migrate(migrations, db.session, config);
8
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"migrator.cjs","names":[],"sources":["../../src/bun-sqlite/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { SQLiteBunDatabase } from './driver.ts';\n\nexport function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\treturn db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":";;;;AAKA,SAAgB,QACf,IACA,QACC;CACD,MAAM,mDAAgC,OAAO;AAC7C,QAAO,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,OAAO"}
1
+ {"version":3,"file":"migrator.cjs","names":["migrations: MigrationMeta[]","migrations"],"sources":["../../src/bun-sqlite/migrator.ts"],"sourcesContent":["import type {\n\tMigrationConfig,\n\tMigrationFromJournalConfig,\n\tMigrationMeta,\n\tMigrationsJournal,\n\tMigratorInitFailResponse,\n} from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { SQLiteBunDatabase } from './driver.ts';\n\nexport function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n): void | MigratorInitFailResponse;\nexport function migrate<\n\tTSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationFromJournalConfig | MigrationsJournal,\n): void;\nexport function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig | MigrationFromJournalConfig | MigrationsJournal,\n): void | MigratorInitFailResponse {\n\tif ('migrationsJournal' in config) {\n\t\tconst journal = config.migrationsJournal;\n\t\tconst migrationsTable = config.migrationsTable;\n\n\t\tconst migrations: MigrationMeta[] = journal.map((d) => ({\n\t\t\tsql: d.sql.split('--> statement-breakpoint'),\n\t\t\tfolderMillis: d.timestamp,\n\t\t\thash: '',\n\t\t\tbps: true,\n\t\t}));\n\n\t\treturn db.dialect.migrate(migrations, db.session, {\n\t\t\tmigrationsTable,\n\t\t});\n\t}\n\n\tconst migrations = readMigrationFiles(config as MigrationConfig);\n\treturn db.dialect.migrate(migrations, db.session, config as MigrationConfig);\n}\n"],"mappings":";;;;AAsBA,SAAgB,QACf,IACA,QACkC;AAClC,KAAI,uBAAuB,QAAQ;EAClC,MAAM,UAAU,OAAO;EACvB,MAAM,kBAAkB,OAAO;EAE/B,MAAMA,eAA8B,QAAQ,KAAK,OAAO;GACvD,KAAK,EAAE,IAAI,MAAM,2BAA2B;GAC5C,cAAc,EAAE;GAChB,MAAM;GACN,KAAK;GACL,EAAE;AAEH,SAAO,GAAG,QAAQ,QAAQC,cAAY,GAAG,SAAS,EACjD,iBACA,CAAC;;CAGH,MAAM,mDAAgC,OAA0B;AAChE,QAAO,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,OAA0B"}
@@ -1,10 +1,10 @@
1
1
  import { SQLiteBunDatabase } from "./driver.cjs";
2
- import * as __migrator_ts19 from "../migrator.cjs";
3
- import { MigrationConfig } from "../migrator.cjs";
2
+ import { MigrationConfig, MigrationFromJournalConfig, MigrationsJournal, MigratorInitFailResponse } from "../migrator.cjs";
4
3
  import { AnyRelations, EmptyRelations } from "../relations.cjs";
5
4
 
6
5
  //#region src/bun-sqlite/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(db: SQLiteBunDatabase<TSchema, TRelations>, config: MigrationConfig): void | __migrator_ts19.MigratorInitFailResponse;
6
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(db: SQLiteBunDatabase<TSchema, TRelations>, config: MigrationConfig): void | MigratorInitFailResponse;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(db: SQLiteBunDatabase<TSchema, TRelations>, config: MigrationFromJournalConfig | MigrationsJournal): void;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,10 +1,10 @@
1
1
  import { SQLiteBunDatabase } from "./driver.js";
2
- import * as __migrator_ts7 from "../migrator.js";
3
- import { MigrationConfig } from "../migrator.js";
2
+ import { MigrationConfig, MigrationFromJournalConfig, MigrationsJournal, MigratorInitFailResponse } from "../migrator.js";
4
3
  import { AnyRelations, EmptyRelations } from "../relations.js";
5
4
 
6
5
  //#region src/bun-sqlite/migrator.d.ts
7
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(db: SQLiteBunDatabase<TSchema, TRelations>, config: MigrationConfig): void | __migrator_ts7.MigratorInitFailResponse;
6
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(db: SQLiteBunDatabase<TSchema, TRelations>, config: MigrationConfig): void | MigratorInitFailResponse;
7
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(db: SQLiteBunDatabase<TSchema, TRelations>, config: MigrationFromJournalConfig | MigrationsJournal): void;
8
8
  //#endregion
9
9
  export { migrate };
10
10
  //# sourceMappingURL=migrator.d.ts.map
@@ -2,6 +2,17 @@ import { readMigrationFiles } from "../migrator.js";
2
2
 
3
3
  //#region src/bun-sqlite/migrator.ts
4
4
  function migrate(db, config) {
5
+ if ("migrationsJournal" in config) {
6
+ const journal = config.migrationsJournal;
7
+ const migrationsTable = config.migrationsTable;
8
+ const migrations$1 = journal.map((d) => ({
9
+ sql: d.sql.split("--> statement-breakpoint"),
10
+ folderMillis: d.timestamp,
11
+ hash: "",
12
+ bps: true
13
+ }));
14
+ return db.dialect.migrate(migrations$1, db.session, { migrationsTable });
15
+ }
5
16
  const migrations = readMigrationFiles(config);
6
17
  return db.dialect.migrate(migrations, db.session, config);
7
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"migrator.js","names":[],"sources":["../../src/bun-sqlite/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { SQLiteBunDatabase } from './driver.ts';\n\nexport function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\treturn db.dialect.migrate(migrations, db.session, config);\n}\n"],"mappings":";;;AAKA,SAAgB,QACf,IACA,QACC;CACD,MAAM,aAAa,mBAAmB,OAAO;AAC7C,QAAO,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,OAAO"}
1
+ {"version":3,"file":"migrator.js","names":["migrations: MigrationMeta[]","migrations"],"sources":["../../src/bun-sqlite/migrator.ts"],"sourcesContent":["import type {\n\tMigrationConfig,\n\tMigrationFromJournalConfig,\n\tMigrationMeta,\n\tMigrationsJournal,\n\tMigratorInitFailResponse,\n} from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { SQLiteBunDatabase } from './driver.ts';\n\nexport function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig,\n): void | MigratorInitFailResponse;\nexport function migrate<\n\tTSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationFromJournalConfig | MigrationsJournal,\n): void;\nexport function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations = EmptyRelations>(\n\tdb: SQLiteBunDatabase<TSchema, TRelations>,\n\tconfig: MigrationConfig | MigrationFromJournalConfig | MigrationsJournal,\n): void | MigratorInitFailResponse {\n\tif ('migrationsJournal' in config) {\n\t\tconst journal = config.migrationsJournal;\n\t\tconst migrationsTable = config.migrationsTable;\n\n\t\tconst migrations: MigrationMeta[] = journal.map((d) => ({\n\t\t\tsql: d.sql.split('--> statement-breakpoint'),\n\t\t\tfolderMillis: d.timestamp,\n\t\t\thash: '',\n\t\t\tbps: true,\n\t\t}));\n\n\t\treturn db.dialect.migrate(migrations, db.session, {\n\t\t\tmigrationsTable,\n\t\t});\n\t}\n\n\tconst migrations = readMigrationFiles(config as MigrationConfig);\n\treturn db.dialect.migrate(migrations, db.session, config as MigrationConfig);\n}\n"],"mappings":";;;AAsBA,SAAgB,QACf,IACA,QACkC;AAClC,KAAI,uBAAuB,QAAQ;EAClC,MAAM,UAAU,OAAO;EACvB,MAAM,kBAAkB,OAAO;EAE/B,MAAMA,eAA8B,QAAQ,KAAK,OAAO;GACvD,KAAK,EAAE,IAAI,MAAM,2BAA2B;GAC5C,cAAc,EAAE;GAChB,MAAM;GACN,KAAK;GACL,EAAE;AAEH,SAAO,GAAG,QAAQ,QAAQC,cAAY,GAAG,SAAS,EACjD,iBACA,CAAC;;CAGH,MAAM,aAAa,mBAAmB,OAA0B;AAChE,QAAO,GAAG,QAAQ,QAAQ,YAAY,GAAG,SAAS,OAA0B"}
@@ -83,10 +83,14 @@ var PreparedQuery = class extends __sqlite_core_session_ts.SQLitePreparedQuery {
83
83
  if (this.isRqbV2Query) return this.getRqbV2(placeholderValues);
84
84
  const params = (0, __sql_sql_ts.fillPlaceholders)(this.query.params, placeholderValues ?? {});
85
85
  this.logger.logQuery(this.query.sql, params);
86
+ const { fields, joinsNotNullableMap, customResultMapper } = this;
87
+ if (!fields && !customResultMapper) {
88
+ const row$1 = this.stmt.get(...params);
89
+ if (!row$1) return void 0;
90
+ return row$1;
91
+ }
86
92
  const row = this.stmt.values(...params)[0];
87
93
  if (!row) return;
88
- const { fields, joinsNotNullableMap, customResultMapper } = this;
89
- if (!fields && !customResultMapper) return row;
90
94
  if (customResultMapper) return customResultMapper([row]);
91
95
  return (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap);
92
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session.cjs","names":["SQLiteSession","entityKind","client: Database","relations: TRelations","schema: V1.RelationalSchemaConfig<TSchema> | undefined","NoopLogger","result: T | undefined","SQLiteTransaction","sql","PreparedQueryBase","stmt: Statement","logger: Logger","fields: SelectedFieldsOrdered | undefined","_isResponseInArrayMode: boolean","customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown","isRqbV2Query?: TIsRqbV2"],"sources":["../../src/bun-sqlite/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { Database, Statement as BunStatement } from 'bun:sqlite';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryConfig as PreparedQueryConfigBase,\n\tSQLiteExecuteMethod,\n\tSQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery as PreparedQueryBase, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteBunSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\ntype Statement = BunStatement<any>;\n\nexport class SQLiteBunSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteBunSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\texec(query: string): void {\n\t\tthis.client.exec(query);\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): PreparedQuery<T, true> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new SQLiteBunTransaction('sync', this.dialect, this, this.relations, this.schema);\n\t\tlet result: T | undefined;\n\t\tconst nativeTx = this.client.transaction(() => {\n\t\t\tresult = transaction(tx);\n\t\t});\n\t\tnativeTx[config.behavior ?? 'deferred']();\n\t\treturn result!;\n\t}\n}\n\nexport class SQLiteBunTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new SQLiteBunTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends PreparedQueryBase<\n\t\t{ type: 'sync'; run: void; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteBunPreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper('sync', executeMethod, query);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>) {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, query, logger, joinsNotNullableMap, stmt, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\tconst row = this.stmt.values(...params)[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst { fields, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn row;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, stmt, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\n\t\tlogger.logQuery(query.sql, params);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\tstmt.all(...params) as Record<string, unknown>[],\n\t\t);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { stmt, customResultMapper } = this;\n\n\t\tconst row = stmt.get(...params) as Record<string, unknown>;\n\t\tif (!row) return undefined;\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\t[row],\n\t\t);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.values(...params);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.cjs","names":["SQLiteSession","entityKind","client: Database","relations: TRelations","schema: V1.RelationalSchemaConfig<TSchema> | undefined","NoopLogger","result: T | undefined","SQLiteTransaction","sql","PreparedQueryBase","stmt: Statement","logger: Logger","fields: SelectedFieldsOrdered | undefined","_isResponseInArrayMode: boolean","customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown","isRqbV2Query?: TIsRqbV2","row"],"sources":["../../src/bun-sqlite/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { Database, Statement as BunStatement } from 'bun:sqlite';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryConfig as PreparedQueryConfigBase,\n\tSQLiteExecuteMethod,\n\tSQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery as PreparedQueryBase, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteBunSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\ntype Statement = BunStatement<any>;\n\nexport class SQLiteBunSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteBunSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\texec(query: string): void {\n\t\tthis.client.exec(query);\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): PreparedQuery<T, true> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new SQLiteBunTransaction('sync', this.dialect, this, this.relations, this.schema);\n\t\tlet result: T | undefined;\n\t\tconst nativeTx = this.client.transaction(() => {\n\t\t\tresult = transaction(tx);\n\t\t});\n\t\tnativeTx[config.behavior ?? 'deferred']();\n\t\treturn result!;\n\t}\n}\n\nexport class SQLiteBunTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new SQLiteBunTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends PreparedQueryBase<\n\t\t{ type: 'sync'; run: void; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteBunPreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper('sync', executeMethod, query);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>) {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, query, logger, joinsNotNullableMap, stmt, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst row = this.stmt.get(...params);\n\t\t\tif (!row) return undefined;\n\n\t\t\treturn row;\n\t\t}\n\n\t\tconst row = this.stmt.values(...params)[0];\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, stmt, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\n\t\tlogger.logQuery(query.sql, params);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\tstmt.all(...params) as Record<string, unknown>[],\n\t\t);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { stmt, customResultMapper } = this;\n\n\t\tconst row = stmt.get(...params) as Record<string, unknown>;\n\t\tif (!row) return undefined;\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\t[row],\n\t\t);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.values(...params);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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"}
@@ -82,10 +82,14 @@ var PreparedQuery = class extends SQLitePreparedQuery$1 {
82
82
  if (this.isRqbV2Query) return this.getRqbV2(placeholderValues);
83
83
  const params = fillPlaceholders(this.query.params, placeholderValues ?? {});
84
84
  this.logger.logQuery(this.query.sql, params);
85
+ const { fields, joinsNotNullableMap, customResultMapper } = this;
86
+ if (!fields && !customResultMapper) {
87
+ const row$1 = this.stmt.get(...params);
88
+ if (!row$1) return void 0;
89
+ return row$1;
90
+ }
85
91
  const row = this.stmt.values(...params)[0];
86
92
  if (!row) return;
87
- const { fields, joinsNotNullableMap, customResultMapper } = this;
88
- if (!fields && !customResultMapper) return row;
89
93
  if (customResultMapper) return customResultMapper([row]);
90
94
  return mapResultRow(fields, row, joinsNotNullableMap);
91
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","names":["SQLiteSession","client: Database","relations: TRelations","schema: V1.RelationalSchemaConfig<TSchema> | undefined","result: T | undefined","PreparedQueryBase","stmt: Statement","logger: Logger","fields: SelectedFieldsOrdered | undefined","_isResponseInArrayMode: boolean","customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown","isRqbV2Query?: TIsRqbV2"],"sources":["../../src/bun-sqlite/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { Database, Statement as BunStatement } from 'bun:sqlite';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryConfig as PreparedQueryConfigBase,\n\tSQLiteExecuteMethod,\n\tSQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery as PreparedQueryBase, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteBunSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\ntype Statement = BunStatement<any>;\n\nexport class SQLiteBunSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteBunSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\texec(query: string): void {\n\t\tthis.client.exec(query);\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): PreparedQuery<T, true> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new SQLiteBunTransaction('sync', this.dialect, this, this.relations, this.schema);\n\t\tlet result: T | undefined;\n\t\tconst nativeTx = this.client.transaction(() => {\n\t\t\tresult = transaction(tx);\n\t\t});\n\t\tnativeTx[config.behavior ?? 'deferred']();\n\t\treturn result!;\n\t}\n}\n\nexport class SQLiteBunTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new SQLiteBunTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends PreparedQueryBase<\n\t\t{ type: 'sync'; run: void; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteBunPreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper('sync', executeMethod, query);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>) {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, query, logger, joinsNotNullableMap, stmt, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\tconst row = this.stmt.values(...params)[0];\n\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst { fields, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn row;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, stmt, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\n\t\tlogger.logQuery(query.sql, params);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\tstmt.all(...params) as Record<string, unknown>[],\n\t\t);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { stmt, customResultMapper } = this;\n\n\t\tconst row = stmt.get(...params) as Record<string, unknown>;\n\t\tif (!row) return undefined;\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\t[row],\n\t\t);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.values(...params);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"session.js","names":["SQLiteSession","client: Database","relations: TRelations","schema: V1.RelationalSchemaConfig<TSchema> | undefined","result: T | undefined","PreparedQueryBase","stmt: Statement","logger: Logger","fields: SelectedFieldsOrdered | undefined","_isResponseInArrayMode: boolean","customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown","isRqbV2Query?: TIsRqbV2","row"],"sources":["../../src/bun-sqlite/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { Database, Statement as BunStatement } from 'bun:sqlite';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders, type Query, sql } from '~/sql/sql.ts';\nimport type { SQLiteSyncDialect } from '~/sqlite-core/dialect.ts';\nimport { SQLiteTransaction } from '~/sqlite-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/sqlite-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryConfig as PreparedQueryConfigBase,\n\tSQLiteExecuteMethod,\n\tSQLiteTransactionConfig,\n} from '~/sqlite-core/session.ts';\nimport { SQLitePreparedQuery as PreparedQueryBase, SQLiteSession } from '~/sqlite-core/session.ts';\nimport { mapResultRow } from '~/utils.ts';\n\nexport interface SQLiteBunSessionOptions {\n\tlogger?: Logger;\n}\n\ntype PreparedQueryConfig = Omit<PreparedQueryConfigBase, 'statement' | 'run'>;\ntype Statement = BunStatement<any>;\n\nexport class SQLiteBunSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteSession<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: Database,\n\t\tdialect: SQLiteSyncDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SQLiteBunSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\texec(query: string): void {\n\t\tthis.client.exec(query);\n\t}\n\n\tprepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => unknown,\n\t): PreparedQuery<T> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\tprepareRelationalQuery<T extends Omit<PreparedQueryConfig, 'run'>>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => unknown,\n\t): PreparedQuery<T, true> {\n\t\tconst stmt = this.client.prepare(query.sql);\n\t\treturn new PreparedQuery(\n\t\t\tstmt,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\texecuteMethod,\n\t\t\tfalse,\n\t\t\tcustomResultMapper,\n\t\t\ttrue,\n\t\t);\n\t}\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t\tconfig: SQLiteTransactionConfig = {},\n\t): T {\n\t\tconst tx = new SQLiteBunTransaction('sync', this.dialect, this, this.relations, this.schema);\n\t\tlet result: T | undefined;\n\t\tconst nativeTx = this.client.transaction(() => {\n\t\t\tresult = transaction(tx);\n\t\t});\n\t\tnativeTx[config.behavior ?? 'deferred']();\n\t\treturn result!;\n\t}\n}\n\nexport class SQLiteBunTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends SQLiteTransaction<'sync', void, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBunTransaction';\n\n\toverride transaction<T>(\n\t\ttransaction: (tx: SQLiteBunTransaction<TFullSchema, TRelations, TSchema>) => T,\n\t): T {\n\t\tconst savepointName = `sp${this.nestedIndex}`;\n\t\tconst tx = new SQLiteBunTransaction(\n\t\t\t'sync',\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.relations,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tthis.session.run(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = transaction(tx);\n\t\t\tthis.session.run(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tthis.session.run(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends PreparedQueryBase<\n\t\t{ type: 'sync'; run: void; all: T['all']; get: T['get']; values: T['values']; execute: T['execute'] }\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'SQLiteBunPreparedQuery';\n\n\tconstructor(\n\t\tprivate stmt: Statement,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\texecuteMethod: SQLiteExecuteMethod,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => unknown,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper('sync', executeMethod, query);\n\t}\n\n\trun(placeholderValues?: Record<string, unknown>) {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.run(...params);\n\t}\n\n\tall(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tif (this.isRqbV2Query) return this.allRqbV2(placeholderValues);\n\n\t\tconst { fields, query, logger, joinsNotNullableMap, stmt, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\t\t\tlogger.logQuery(query.sql, params);\n\t\t\treturn stmt.all(...params);\n\t\t}\n\n\t\tconst rows = this.values(placeholderValues) as unknown[][];\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)(rows) as T['all'];\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tget(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tif (this.isRqbV2Query) return this.getRqbV2(placeholderValues);\n\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { fields, joinsNotNullableMap, customResultMapper } = this;\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst row = this.stmt.get(...params);\n\t\t\tif (!row) return undefined;\n\n\t\t\treturn row;\n\t\t}\n\n\t\tconst row = this.stmt.values(...params)[0];\n\t\tif (!row) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tif (customResultMapper) {\n\t\t\treturn (customResultMapper as (rows: unknown[][]) => unknown)([row]) as T['get'];\n\t\t}\n\n\t\treturn mapResultRow(fields!, row, joinsNotNullableMap);\n\t}\n\n\tprivate allRqbV2(placeholderValues?: Record<string, unknown>): T['all'] {\n\t\tconst { query, logger, stmt, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues ?? {});\n\n\t\tlogger.logQuery(query.sql, params);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\tstmt.all(...params) as Record<string, unknown>[],\n\t\t);\n\t}\n\n\tprivate getRqbV2(placeholderValues?: Record<string, unknown>): T['get'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { stmt, customResultMapper } = this;\n\n\t\tconst row = stmt.get(...params) as Record<string, unknown>;\n\t\tif (!row) return undefined;\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => unknown)(\n\t\t\t[row],\n\t\t);\n\t}\n\n\tvalues(placeholderValues?: Record<string, unknown>): T['values'] {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues ?? {});\n\t\tthis.logger.logQuery(this.query.sql, params);\n\t\treturn this.stmt.values(...params);\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { NodeCockroachDatabase } from "./driver.cjs";
2
- import * as __migrator_ts9 from "../migrator.cjs";
2
+ import * as __migrator_ts14 from "../migrator.cjs";
3
3
  import { MigrationConfig } from "../migrator.cjs";
4
4
 
5
5
  //#region src/cockroach/migrator.d.ts
6
- declare function migrate<TSchema extends Record<string, unknown>>(db: NodeCockroachDatabase<TSchema>, config: MigrationConfig): Promise<void | __migrator_ts9.MigratorInitFailResponse>;
6
+ declare function migrate<TSchema extends Record<string, unknown>>(db: NodeCockroachDatabase<TSchema>, config: MigrationConfig): Promise<void | __migrator_ts14.MigratorInitFailResponse>;
7
7
  //#endregion
8
8
  export { migrate };
9
9
  //# sourceMappingURL=migrator.d.cts.map
@@ -1,9 +1,9 @@
1
1
  import { NodeCockroachDatabase } from "./driver.js";
2
- import * as __migrator_ts18 from "../migrator.js";
2
+ import * as __migrator_ts20 from "../migrator.js";
3
3
  import { MigrationConfig } from "../migrator.js";
4
4
 
5
5
  //#region src/cockroach/migrator.d.ts
6
- declare function migrate<TSchema extends Record<string, unknown>>(db: NodeCockroachDatabase<TSchema>, config: MigrationConfig): Promise<void | __migrator_ts18.MigratorInitFailResponse>;
6
+ declare function migrate<TSchema extends Record<string, unknown>>(db: NodeCockroachDatabase<TSchema>, config: MigrationConfig): Promise<void | __migrator_ts20.MigratorInitFailResponse>;
7
7
  //#endregion
8
8
  export { migrate };
9
9
  //# sourceMappingURL=migrator.d.ts.map
@@ -1,12 +1,12 @@
1
1
  import { CockroachColumnWithArrayBuilder } from "./common.cjs";
2
2
  import { entityKind } from "../../entity.cjs";
3
- import * as __column_builder_ts0 from "../../column-builder.cjs";
3
+ import * as __column_builder_ts1 from "../../column-builder.cjs";
4
4
  import { ColumnBuilderBaseConfig, ColumnType } from "../../column-builder.cjs";
5
5
 
6
6
  //#region src/cockroach-core/columns/date.common.d.ts
7
7
  declare abstract class CockroachDateColumnBaseBuilder<T extends ColumnBuilderBaseConfig<ColumnType>, TRuntimeConfig extends object = object> extends CockroachColumnWithArrayBuilder<T, TRuntimeConfig> {
8
8
  static readonly [entityKind]: string;
9
- defaultNow(): __column_builder_ts0.HasDefault<this>;
9
+ defaultNow(): __column_builder_ts1.HasDefault<this>;
10
10
  }
11
11
  //#endregion
12
12
  export { CockroachDateColumnBaseBuilder };
@@ -26,10 +26,7 @@ function construct(client, config = {}) {
26
26
  };
27
27
  }
28
28
  const relations = config.relations ?? {};
29
- const db = new EffectPgDatabase(dialect, new require_effect_postgres_session.EffectPgSession(client, dialect, relations, schema, {
30
- logger,
31
- cache: config.cache
32
- }), relations, schema);
29
+ const db = new EffectPgDatabase(dialect, new require_effect_postgres_session.EffectPgSession(client, dialect, relations, schema, { logger }), relations, schema);
33
30
  db.$client = client;
34
31
  db.$cache = config.cache;
35
32
  if (db.$cache) db.$cache["invalidate"] = config.cache?.onMutate;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.cjs","names":["PgEffectDatabase","entityKind","PgDialect","DefaultLogger","schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined","V1","EffectPgSession"],"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport type { EffectCache } from '~/cache/core/cache-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nexport type EffectDrizzleConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> =\n\t& Omit<DrizzleConfig<TSchema, TRelations>, 'cache'>\n\t& {\n\t\tcache?: EffectCache;\n\t};\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: EffectDrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\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: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\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 relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger, cache: config.cache });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: EffectDrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;AAYA,IAAa,mBAAb,cAGUA,wCAAkE;CAC3E,QAA0BC,0BAAsB;;AAYjD,SAAS,UAKR,QACA,SAAmD,EAAE,EAGpD;CACD,MAAM,UAAU,IAAIC,+BAAU,EAAE,QAAQ,OAAO,QAAQ,CAAC;CAGxD,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAIC;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAeC,gBAAG,8BACvB,OAAO,QACPA,gBAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAExC,MAAM,KAAK,IAAI,iBACd,SAFe,IAAIC,gDAAgB,QAAQ,SAAS,WAAW,QAAQ;EAAE;EAAQ,OAAO,OAAO;EAAO,CAAC,EAIvG,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAGjD,QAAO;;AAGR,SAAgB,QAGd,QAAkB,QAElB;AACD,QAAO,UAAU,QAAQ,OAAO;;;CAIzB,SAAS,KAIf,QACwC;AACxC,SAAO,UAAU,EAAE,EAAS,OAAO"}
1
+ {"version":3,"file":"driver.cjs","names":["PgEffectDatabase","entityKind","PgDialect","DefaultLogger","schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined","V1","EffectPgSession"],"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport type { EffectCache } from '~/cache/core/cache-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nexport type EffectDrizzleConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> =\n\t& Omit<DrizzleConfig<TSchema, TRelations>, 'cache'>\n\t& {\n\t\tcache?: EffectCache;\n\t};\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: EffectDrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\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: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\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 relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: EffectDrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;AAYA,IAAa,mBAAb,cAGUA,wCAAkE;CAC3E,QAA0BC,0BAAsB;;AAYjD,SAAS,UAKR,QACA,SAAmD,EAAE,EAGpD;CACD,MAAM,UAAU,IAAIC,+BAAU,EAAE,QAAQ,OAAO,QAAQ,CAAC;CAGxD,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAIC;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAeC,gBAAG,8BACvB,OAAO,QACPA,gBAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAExC,MAAM,KAAK,IAAI,iBACd,SAFe,IAAIC,gDAAgB,QAAQ,SAAS,WAAW,QAAQ,EAAE,QAAQ,CAAC,EAIlF,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAGjD,QAAO;;AAGR,SAAgB,QAGd,QAAkB,QAElB;AACD,QAAO,UAAU,QAAQ,OAAO;;;CAIzB,SAAS,KAIf,QACwC;AACxC,SAAO,UAAU,EAAE,EAAS,OAAO"}
@@ -24,10 +24,7 @@ function construct(client, config = {}) {
24
24
  };
25
25
  }
26
26
  const relations = config.relations ?? {};
27
- const db = new EffectPgDatabase(dialect, new EffectPgSession(client, dialect, relations, schema, {
28
- logger,
29
- cache: config.cache
30
- }), relations, schema);
27
+ const db = new EffectPgDatabase(dialect, new EffectPgSession(client, dialect, relations, schema, { logger }), relations, schema);
31
28
  db.$client = client;
32
29
  db.$cache = config.cache;
33
30
  if (db.$cache) db.$cache["invalidate"] = config.cache?.onMutate;
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","names":["schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined"],"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport type { EffectCache } from '~/cache/core/cache-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nexport type EffectDrizzleConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> =\n\t& Omit<DrizzleConfig<TSchema, TRelations>, 'cache'>\n\t& {\n\t\tcache?: EffectCache;\n\t};\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: EffectDrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\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: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\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 relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger, cache: config.cache });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: EffectDrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;AAYA,IAAa,mBAAb,cAGU,iBAAkE;CAC3E,QAA0B,cAAsB;;AAYjD,SAAS,UAKR,QACA,SAAmD,EAAE,EAGpD;CACD,MAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,QAAQ,CAAC;CAGxD,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAIA;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,GAAG,8BACvB,OAAO,QACP,GAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAExC,MAAM,KAAK,IAAI,iBACd,SAFe,IAAI,gBAAgB,QAAQ,SAAS,WAAW,QAAQ;EAAE;EAAQ,OAAO,OAAO;EAAO,CAAC,EAIvG,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAGjD,QAAO;;AAGR,SAAgB,QAGd,QAAkB,QAElB;AACD,QAAO,UAAU,QAAQ,OAAO;;;CAIzB,SAAS,KAIf,QACwC;AACxC,SAAO,UAAU,EAAE,EAAS,OAAO"}
1
+ {"version":3,"file":"driver.js","names":["schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined"],"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport type { EffectCache } from '~/cache/core/cache-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nexport type EffectDrizzleConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> =\n\t& Omit<DrizzleConfig<TSchema, TRelations>, 'cache'>\n\t& {\n\t\tcache?: EffectCache;\n\t};\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: EffectDrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\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: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\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 relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: EffectDrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;AAYA,IAAa,mBAAb,cAGU,iBAAkE;CAC3E,QAA0B,cAAsB;;AAYjD,SAAS,UAKR,QACA,SAAmD,EAAE,EAGpD;CACD,MAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,QAAQ,CAAC;CAGxD,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAIA;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,GAAG,8BACvB,OAAO,QACP,GAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAExC,MAAM,KAAK,IAAI,iBACd,SAFe,IAAI,gBAAgB,QAAQ,SAAS,WAAW,QAAQ,EAAE,QAAQ,CAAC,EAIlF,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAGjD,QAAO;;AAGR,SAAgB,QAGd,QAAkB,QAElB;AACD,QAAO,UAAU,QAAQ,OAAO;;;CAIzB,SAAS,KAIf,QACwC;AACxC,SAAO,UAAU,EAAE,EAAS,OAAO"}
@@ -1,12 +1,12 @@
1
1
  import { TaggedDrizzleQueryError } from "../effect-core/errors.js";
2
2
  import { EffectPgDatabase } from "./driver.js";
3
- import * as __migrator_ts9 from "../migrator.js";
3
+ import * as __migrator_ts6 from "../migrator.js";
4
4
  import { MigrationConfig } from "../migrator.js";
5
5
  import { AnyRelations } from "../relations.js";
6
6
  import * as effect_Effect0 from "effect/Effect";
7
7
 
8
8
  //#region src/effect-postgres/migrator.d.ts
9
- declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: EffectPgDatabase<TSchema, TRelations>, config: MigrationConfig): effect_Effect0.Effect<void | __migrator_ts9.MigratorInitFailResponse, TaggedDrizzleQueryError, never>;
9
+ declare function migrate<TSchema extends Record<string, unknown>, TRelations extends AnyRelations>(db: EffectPgDatabase<TSchema, TRelations>, config: MigrationConfig): effect_Effect0.Effect<void | __migrator_ts6.MigratorInitFailResponse, TaggedDrizzleQueryError, never>;
10
10
  //#endregion
11
11
  export { migrate };
12
12
  //# sourceMappingURL=migrator.d.ts.map
@@ -30,10 +30,10 @@ var EffectPgPreparedQuery = class extends __pg_core_effect_session_ts.PgEffectPr
30
30
  const params = (0, __sql_sql_ts.fillPlaceholders)(query.params, placeholderValues ?? {});
31
31
  logger.logQuery(query.sql, params);
32
32
  if (!fields && !customResultMapper) return this.queryWithCache(query.sql, params, this.client.unsafe(query.sql, params).withoutTransform);
33
- return this.queryWithCache(query.sql, params, client.unsafe(query.sql, params).values).pipe(effect.Effect.andThen((rows) => {
33
+ return this.queryWithCache(query.sql, params, client.unsafe(query.sql, params).values.pipe(effect.Effect.andThen((rows) => {
34
34
  if (customResultMapper) return customResultMapper(rows);
35
35
  return rows.map((row) => (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap));
36
- }));
36
+ })));
37
37
  }
38
38
  executeRqbV2(placeholderValues) {
39
39
  const { query, logger, customResultMapper, client } = this;