UNPKG

typeorm

Version:

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

54 lines (52 loc) 2.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var MissingDriverError_1 = require("../error/MissingDriverError"); var MongoDriver_1 = require("./mongodb/MongoDriver"); var SqlServerDriver_1 = require("./sqlserver/SqlServerDriver"); var OracleDriver_1 = require("./oracle/OracleDriver"); var SqliteDriver_1 = require("./sqlite/SqliteDriver"); var CordovaDriver_1 = require("./cordova/CordovaDriver"); var ReactNativeDriver_1 = require("./react-native/ReactNativeDriver"); var SqljsDriver_1 = require("./sqljs/SqljsDriver"); var MysqlDriver_1 = require("./mysql/MysqlDriver"); var PostgresDriver_1 = require("./postgres/PostgresDriver"); /** * Helps to create drivers. */ var DriverFactory = /** @class */ (function () { function DriverFactory() { } /** * Creates a new driver depend on a given connection's driver type. */ DriverFactory.prototype.create = function (connection) { var type = connection.options.type; switch (type) { case "mysql": return new MysqlDriver_1.MysqlDriver(connection); case "postgres": return new PostgresDriver_1.PostgresDriver(connection); case "mariadb": return new MysqlDriver_1.MysqlDriver(connection); case "sqlite": return new SqliteDriver_1.SqliteDriver(connection); case "cordova": return new CordovaDriver_1.CordovaDriver(connection); case "react-native": return new ReactNativeDriver_1.ReactNativeDriver(connection); case "sqljs": return new SqljsDriver_1.SqljsDriver(connection); case "oracle": return new OracleDriver_1.OracleDriver(connection); case "mssql": return new SqlServerDriver_1.SqlServerDriver(connection); case "mongodb": return new MongoDriver_1.MongoDriver(connection); default: throw new MissingDriverError_1.MissingDriverError(type); } }; return DriverFactory; }()); exports.DriverFactory = DriverFactory; //# sourceMappingURL=DriverFactory.js.map