UNPKG

@n8n/typeorm

Version:

Data-Mapper ORM for TypeScript, ES7, ES6, ES5. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, MongoDB databases.

92 lines (90 loc) 3.4 kB
import { MissingDriverError } from "../error/MissingDriverError"; const getDriver = async (type) => { switch (type) { case "mysql": case "mariadb": return (await import("./mysql/MysqlDriver")).MysqlDriver; case "postgres": return (await import("./postgres/PostgresDriver")).PostgresDriver; case "cockroachdb": return (await import("./cockroachdb/CockroachDriver")) .CockroachDriver; case "sap": return (await import("./sap/SapDriver")).SapDriver; case "sqlite": return (await import("./sqlite/SqliteDriver")).SqliteDriver; case "sqlite-pooled": return (await import("./sqlite-pooled/SqliteReadWriteDriver")) .SqliteReadWriteDriver; case "better-sqlite3": return (await import("./better-sqlite3/BetterSqlite3Driver")) .BetterSqlite3Driver; case "cordova": return (await import("./cordova/CordovaDriver")).CordovaDriver; case "nativescript": return (await import("./nativescript/NativescriptDriver")) .NativescriptDriver; case "react-native": return (await import("./react-native/ReactNativeDriver")) .ReactNativeDriver; case "sqljs": return (await import("./sqljs/SqljsDriver")).SqljsDriver; case "oracle": return (await import("./oracle/OracleDriver")).OracleDriver; case "mssql": return (await import("./sqlserver/SqlServerDriver")).SqlServerDriver; case "mongodb": return (await import("./mongodb/MongoDriver")).MongoDriver; case "expo": return (await import("./expo/ExpoDriver")).ExpoDriver; case "aurora-mysql": return (await import("./aurora-mysql/AuroraMysqlDriver")) .AuroraMysqlDriver; case "aurora-postgres": return (await import("./aurora-postgres/AuroraPostgresDriver")) .AuroraPostgresDriver; case "capacitor": return (await import("./capacitor/CapacitorDriver")).CapacitorDriver; case "spanner": return (await import("./spanner/SpannerDriver")).SpannerDriver; case "libsql": return (await import("./libsql/LibSqlDriver")).LibSqlDriver; default: throw new MissingDriverError(type, [ "aurora-mysql", "aurora-postgres", "better-sqlite3", "capacitor", "cockroachdb", "cordova", "expo", "mariadb", "mongodb", "mssql", "mysql", "nativescript", "oracle", "postgres", "react-native", "sap", "sqlite", "sqlite-pooled", "sqljs", "spanner", "libsql", ]); } }; /** * Helps to create drivers. */ export class DriverFactory { /** * Creates a new driver depend on a given connection's driver type. */ static async create(connection) { const { type } = connection.options; return new (await getDriver(type))(connection); } } //# sourceMappingURL=DriverFactory.js.map