in packages/better-auth/src/adapters/kysely-adapter/dialect.ts [11:48]
function getDatabaseType(
db: BetterAuthOptions["database"],
): KyselyDatabaseType | null {
if (!db) {
return null;
}
if ("dialect" in db) {
return getDatabaseType(db.dialect as Dialect);
}
if ("createDriver" in db) {
if (db instanceof SqliteDialect) {
return "sqlite";
}
if (db instanceof MysqlDialect) {
return "mysql";
}
if (db instanceof PostgresDialect) {
return "postgres";
}
if (db instanceof MssqlDialect) {
return "mssql";
}
}
if ("aggregate" in db) {
return "sqlite";
}
if ("getConnection" in db) {
return "mysql";
}
if ("connect" in db) {
return "postgres";
}
if ("fileControl" in db) {
return "sqlite";
}
return null;
}