@better-auth/kysely-adapter 1.7.0-rc.1 → 1.7.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,5 @@
1
- import { CompiledQuery, DEFAULT_MIGRATION_LOCK_TABLE, DEFAULT_MIGRATION_TABLE, DefaultQueryCompiler, sql } from "kysely";
1
+ import { n as DEFAULT_MIGRATION_TABLE, t as DEFAULT_MIGRATION_LOCK_TABLE } from "./kysely-migration-tables-BeiUPJ_e.mjs";
2
+ import { CompiledQuery, DefaultQueryCompiler, sql } from "kysely";
2
3
  //#region src/bun-sqlite-dialect.ts
3
4
  var BunSqliteAdapter = class {
4
5
  get supportsCreateIfNotExists() {
@@ -1,4 +1,5 @@
1
- import { DEFAULT_MIGRATION_LOCK_TABLE, DEFAULT_MIGRATION_TABLE, SqliteAdapter, SqliteQueryCompiler } from "kysely";
1
+ import { n as DEFAULT_MIGRATION_TABLE, t as DEFAULT_MIGRATION_LOCK_TABLE } from "./kysely-migration-tables-BeiUPJ_e.mjs";
2
+ import { SqliteAdapter, SqliteQueryCompiler } from "kysely";
2
3
  //#region src/d1-sqlite-dialect.ts
3
4
  var D1SqliteAdapter = class extends SqliteAdapter {};
4
5
  var D1SqliteDriver = class {
package/dist/index.d.mts CHANGED
@@ -1,20 +1,15 @@
1
1
  import { Kysely } from "kysely";
2
2
  import { DBAdapter, DBAdapterDebugLogOption } from "@better-auth/core/db/adapter";
3
3
  import { BetterAuthOptions } from "@better-auth/core";
4
-
5
4
  //#region src/types.d.ts
6
5
  type KyselyDatabaseType = "postgres" | "mysql" | "sqlite" | "mssql";
7
6
  //#endregion
8
7
  //#region src/dialect.d.ts
9
8
  declare function getKyselyDatabaseType(db: BetterAuthOptions["database"]): KyselyDatabaseType | null;
10
9
  declare const createKyselyAdapter: (config: BetterAuthOptions) => Promise<{
11
- kysely: Kysely<any>;
12
- databaseType: "postgres" | "mysql" | "sqlite" | "mssql";
13
- transaction: boolean | undefined;
14
- } | {
15
10
  kysely: Kysely<any> | null;
16
11
  databaseType: KyselyDatabaseType | null;
17
- transaction: undefined;
12
+ transaction: boolean | undefined;
18
13
  }>;
19
14
  //#endregion
20
15
  //#region src/kysely-adapter.d.ts
package/dist/index.mjs CHANGED
@@ -38,14 +38,25 @@ const createKyselyAdapter = async (config) => {
38
38
  transaction: db.transaction
39
39
  };
40
40
  let dialect = void 0;
41
+ let transaction = void 0;
41
42
  const databaseType = getKyselyDatabaseType(db);
42
43
  if ("createDriver" in db) dialect = db;
43
- if ("aggregate" in db && !("createSession" in db)) dialect = new SqliteDialect({ database: db });
44
- if ("getConnection" in db) dialect = new MysqlDialect(db);
45
- if ("connect" in db) dialect = new PostgresDialect({ pool: db });
44
+ if ("aggregate" in db && !("createSession" in db)) {
45
+ dialect = new SqliteDialect({ database: db });
46
+ transaction = true;
47
+ }
48
+ if ("getConnection" in db) {
49
+ dialect = new MysqlDialect(db);
50
+ transaction = true;
51
+ }
52
+ if ("connect" in db) {
53
+ dialect = new PostgresDialect({ pool: db });
54
+ transaction = true;
55
+ }
46
56
  if ("fileControl" in db) {
47
- const { BunSqliteDialect } = await import("./bun-sqlite-dialect-PuE7pPr-.mjs");
57
+ const { BunSqliteDialect } = await import("./bun-sqlite-dialect-ChDhLV_M.mjs");
48
58
  dialect = new BunSqliteDialect({ database: db });
59
+ transaction = true;
49
60
  }
50
61
  if ("createSession" in db) {
51
62
  let DatabaseSync = void 0;
@@ -62,16 +73,18 @@ const createKyselyAdapter = async (config) => {
62
73
  if (DatabaseSync && db instanceof DatabaseSync) {
63
74
  const { NodeSqliteDialect } = await import("./node-sqlite-dialect.mjs");
64
75
  dialect = new NodeSqliteDialect({ database: db });
76
+ transaction = true;
65
77
  }
66
78
  }
67
79
  if ("batch" in db && "exec" in db && "prepare" in db) {
68
- const { D1SqliteDialect } = await import("./d1-sqlite-dialect-C2B7YsIT.mjs");
80
+ const { D1SqliteDialect } = await import("./d1-sqlite-dialect-zindL8uv.mjs");
69
81
  dialect = new D1SqliteDialect({ database: db });
82
+ transaction = false;
70
83
  }
71
84
  return {
72
85
  kysely: dialect ? new Kysely({ dialect }) : null,
73
86
  databaseType,
74
- transaction: void 0
87
+ transaction
75
88
  };
76
89
  };
77
90
  //#endregion
@@ -358,7 +371,8 @@ const kyselyAdapter = (db, config) => {
358
371
  }
359
372
  return {
360
373
  async create({ data, model }) {
361
- return await withReturning(data, db.insertInto(model).values(data), model, []);
374
+ const builder = db.insertInto(model).values(data);
375
+ return await withReturning(data, builder, model, []);
362
376
  },
363
377
  async findOne({ model, where, select, join }) {
364
378
  const { and, or } = convertWhereClause(model, where);
@@ -0,0 +1,17 @@
1
+ //#region src/kysely-migration-tables.ts
2
+ /**
3
+ * Kysely's internal migration table names, mirrored as local constants.
4
+ *
5
+ * Kysely 0.29 moved these from its main entry to the `kysely/migration`
6
+ * subpath (which 0.28 lacks), and the main entry now exports only type stubs
7
+ * with no runtime value, which breaks strict ESM bundlers.
8
+ *
9
+ * The values are stable parts of Kysely's public migration contract. Mirroring
10
+ * them allows the SQLite dialects to support both Kysely 0.28 and 0.29.
11
+ *
12
+ * TODO: Import these from `kysely/migration` after dropping Kysely 0.28.
13
+ */
14
+ const DEFAULT_MIGRATION_TABLE = "kysely_migration";
15
+ const DEFAULT_MIGRATION_LOCK_TABLE = "kysely_migration_lock";
16
+ //#endregion
17
+ export { DEFAULT_MIGRATION_TABLE as n, DEFAULT_MIGRATION_LOCK_TABLE as t };
@@ -1,6 +1,5 @@
1
1
  import { DatabaseConnection, DatabaseIntrospector, Dialect, DialectAdapter, Driver, Kysely, QueryCompiler } from "kysely";
2
2
  import { DatabaseSync } from "node:sqlite";
3
-
4
3
  //#region src/node-sqlite-dialect.d.ts
5
4
  /**
6
5
  * Config for the SQLite dialect.
@@ -1,4 +1,5 @@
1
- import { CompiledQuery, DEFAULT_MIGRATION_LOCK_TABLE, DEFAULT_MIGRATION_TABLE, DefaultQueryCompiler, sql } from "kysely";
1
+ import { n as DEFAULT_MIGRATION_TABLE, t as DEFAULT_MIGRATION_LOCK_TABLE } from "./kysely-migration-tables-BeiUPJ_e.mjs";
2
+ import { CompiledQuery, DefaultQueryCompiler, sql } from "kysely";
2
3
  //#region src/node-sqlite-dialect.ts
3
4
  var NodeSqliteAdapter = class {
4
5
  get supportsCreateIfNotExists() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@better-auth/kysely-adapter",
3
- "version": "1.7.0-rc.1",
3
+ "version": "1.7.0-rc.3",
4
4
  "description": "Kysely adapter for Better Auth",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -42,7 +42,7 @@
42
42
  "peerDependencies": {
43
43
  "@better-auth/utils": "0.4.2",
44
44
  "kysely": "^0.28.17 || ^0.29.0",
45
- "@better-auth/core": "^1.7.0-rc.1"
45
+ "@better-auth/core": "^1.7.0-rc.3"
46
46
  },
47
47
  "peerDependenciesMeta": {
48
48
  "kysely": {
@@ -53,9 +53,9 @@
53
53
  "@better-auth/utils": "0.4.2",
54
54
  "@cloudflare/workers-types": "^4.20250121.0",
55
55
  "kysely": "^0.28.17 || ^0.29.0",
56
- "tsdown": "0.21.1",
57
- "typescript": "^5.9.3",
58
- "@better-auth/core": "1.7.0-rc.1"
56
+ "tsdown": "0.22.7",
57
+ "typescript": "^6.0.3",
58
+ "@better-auth/core": "1.7.0-rc.3"
59
59
  },
60
60
  "scripts": {
61
61
  "build": "tsdown",
@@ -63,6 +63,7 @@
63
63
  "lint:package": "publint run --strict --pack false",
64
64
  "lint:types": "attw --profile esm-only --pack .",
65
65
  "typecheck": "tsc --noEmit",
66
- "test": "vitest"
66
+ "test": "vitest",
67
+ "coverage": "vitest run --coverage --coverage.provider=istanbul"
67
68
  }
68
69
  }