bigly-chat/db.js

30 lines
1.1 KiB
JavaScript
Raw Normal View History

2024-11-25 14:12:43 -05:00
import sqlite3 from 'sqlite3'
import { open } from 'sqlite'
let db;
async function initDb() {
if (db) return db;
db = await open({
filename: `${process.cwd()}/db/main.db`,
driver: sqlite3.Database
});
await db.run(`CREATE TABLE IF NOT EXISTS auth (username TEXT, password TEXT);`);
await db.run(`CREATE TABLE IF NOT EXISTS token (username TEXT, token TEXT);`);
2024-11-25 14:12:43 -05:00
await db.run(`CREATE TABLE IF NOT EXISTS video (id TEXT, title TEXT, desc TEXT, username TEXT, date REAL);`);
2024-11-25 14:12:43 -05:00
await db.run('CREATE TABLE IF NOT EXISTS comment (username TEXT, targetType TEXT, targetId TEXT, date REAL, content TEXT, id TEXT);');
2024-11-25 14:12:43 -05:00
2024-11-25 14:12:43 -05:00
await db.run('CREATE TABLE IF NOT EXISTS follow (username TEXT, target TEXT);');
2024-11-25 14:12:44 -05:00
await db.run(`CREATE TABLE IF NOT EXISTS user (username TEXT, bio TEXT);`);
2024-11-25 14:12:44 -05:00
await db.run(`CREATE TABLE IF NOT EXISTS captcha (key TEXT, solution TEXT);`);
2024-11-25 14:12:44 -05:00
2024-11-25 14:12:44 -05:00
await db.run(`CREATE TABLE IF NOT EXISTS message (username TEXT, targetType TEXT, targetId TEXT, date REAL, content TEXT, read TEXT);`);
2024-11-25 14:12:43 -05:00
return db;
}
export default initDb;