stream-chat-react-native-core
Version:
The official React Native and Expo components for Stream Chat, a service for building chat applications
46 lines • 1.96 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.BetterSqlite = void 0;
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _betterSqlite = _interopRequireDefault(require("better-sqlite3"));
var _schema = require("../store/schema");
var _process$env$JEST_WOR;
var testDbName = `foobar-${(_process$env$JEST_WOR = process.env.JEST_WORKER_ID) != null ? _process$env$JEST_WOR : '0'}.db`;
class BetterSqlite {
static db = null;
static openDB = () => {
BetterSqlite.db = new _betterSqlite.default(testDbName);
};
static closeDB = () => {
var _BetterSqlite$db;
(_BetterSqlite$db = BetterSqlite.db) == null || _BetterSqlite$db.close();
};
static getTables = (0, _asyncToGenerator2.default)(function* () {
var _BetterSqlite$db2;
var tablesInDb = yield (_BetterSqlite$db2 = BetterSqlite.db) == null ? void 0 : _BetterSqlite$db2.pragma('table_list;');
return tablesInDb;
});
static dropAllTables = () => {
var tableNames = Object.keys(_schema.tables);
tableNames.forEach(name => {
var _BetterSqlite$db3;
var stmt = (_BetterSqlite$db3 = BetterSqlite.db) == null ? void 0 : _BetterSqlite$db3.prepare(`DROP TABLE IF EXISTS ${name}`);
stmt == null || stmt.run();
});
};
static selectFromTable = function () {
var _ref2 = (0, _asyncToGenerator2.default)(function* (table) {
var _BetterSqlite$db4, _stmt$all;
var stmt = yield (_BetterSqlite$db4 = BetterSqlite.db) == null ? void 0 : _BetterSqlite$db4.prepare(`SELECT * FROM ${table}`);
var result = (_stmt$all = stmt == null ? void 0 : stmt.all()) != null ? _stmt$all : [];
return result;
});
return function (_x) {
return _ref2.apply(this, arguments);
};
}();
}
exports.BetterSqlite = BetterSqlite;
//# sourceMappingURL=BetterSqlite.js.map