summaryrefslogtreecommitdiff
path: root/nodejs/database/db.ts
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--nodejs/database/db.ts (renamed from nodejs/database/db.js)13
1 files changed, 7 insertions, 6 deletions
diff --git a/nodejs/database/db.js b/nodejs/database/db.ts
index 4438fec..247ee5a 100644
--- a/nodejs/database/db.js
+++ b/nodejs/database/db.ts
@@ -11,7 +11,7 @@ const allMigrations = [
const db = new Database(
process.env.NODE_ENV === 'test' ? 'test.db' : 'spacetraders.db',
- process.env.NODE_ENV === 'development' ? { verbose: console.log } : null
+ process.env.NODE_ENV === 'development' ? { verbose: console.log } : undefined
);
db.pragma('foreign_keys = ON');
db.pragma('journal_mode = WAL');
@@ -20,7 +20,8 @@ function init() {
db.transaction(function migrate() {
let version;
try {
- version = db.prepare('SELECT version FROM schema_version').get().version;
+ const res = db.prepare('SELECT version FROM schema_version').get() as {version: number};
+ version = res.version;
} catch {
version = 0;
}
@@ -34,10 +35,10 @@ function init() {
}
export function reset() {
- const indices = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'index';`).all();
- const tables = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'table';`).all();
- const triggers = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'trigger';`).all();
- const views = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'view';`).all();
+ const indices = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'index';`).all() as Array<{name: string}>;
+ const tables = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'table';`).all() as Array<{name: string}>;
+ const triggers = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'trigger';`).all() as Array<{name: string}>;
+ const views = db.prepare(`SELECT name FROM sqlite_master WHERE type = 'view';`).all() as Array<{name: string}>;
indices.forEach(elt => db.exec(`DROP INDEX ${elt.name};`));
tables.forEach(elt => db.exec(`DROP TABLE ${elt.name};`));
triggers.forEach(elt => db.exec(`DROP TRIGGER ${elt.name};`));