????
Current Path : C:/inetpub/vhost/invest.gdtsolutions.vn/api/node_modules/typeorm/driver/expo/ |
Current File : C:/inetpub/vhost/invest.gdtsolutions.vn/api/node_modules/typeorm/driver/expo/ExpoDriver.js |
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ExpoDriver = void 0; const AbstractSqliteDriver_1 = require("../sqlite-abstract/AbstractSqliteDriver"); const ExpoQueryRunner_1 = require("./ExpoQueryRunner"); class ExpoDriver extends AbstractSqliteDriver_1.AbstractSqliteDriver { // ------------------------------------------------------------------------- // Constructor // ------------------------------------------------------------------------- constructor(connection) { super(connection); this.database = this.options.database; // load sqlite package this.sqlite = this.options.driver; } // ------------------------------------------------------------------------- // Public Methods // ------------------------------------------------------------------------- /** * Closes connection with database. */ async disconnect() { return new Promise((ok, fail) => { try { this.queryRunner = undefined; this.databaseConnection._db.close(); this.databaseConnection = undefined; ok(); } catch (error) { fail(error); } }); } /** * Creates a query runner used to execute database queries. */ createQueryRunner(mode) { if (!this.queryRunner) this.queryRunner = new ExpoQueryRunner_1.ExpoQueryRunner(this); return this.queryRunner; } // ------------------------------------------------------------------------- // Protected Methods // ------------------------------------------------------------------------- /** * Creates connection with the database. */ createDatabaseConnection() { return new Promise((ok, fail) => { try { const databaseConnection = this.sqlite.openDatabase(this.options.database); /* // we need to enable foreign keys in sqlite to make sure all foreign key related features // working properly. this also makes onDelete work with sqlite. */ databaseConnection.transaction((tsx) => { tsx.executeSql(`PRAGMA foreign_keys = ON`, [], (t, result) => { ok(databaseConnection); }, (t, err) => { fail({ transaction: t, error: err }); }); }, (err) => { fail(err); }); } catch (error) { fail(error); } }); } } exports.ExpoDriver = ExpoDriver; //# sourceMappingURL=ExpoDriver.js.map