UNPKG

nodejs-schema-rules

Version:

The CLI tool automatically generates basic validation rules for popular libraries such as JOI, ValidatorJS and @vinejs/vine based on your database table schema!

55 lines (49 loc) 1.15 kB
import * as sqlite3 from 'sqlite3' import { IDatabase } from '../contacts/Database' export class SqliteDatabase implements IDatabase { private db: sqlite3.Database constructor(config: any) { this.db = new sqlite3.Database(config.database) } async connect(): Promise<void> { return new Promise<void>((resolve, reject) => { try { this.db.serialize(() => { resolve() }) } catch (error: any) { reject(error) } }) } async query(sql: string): Promise<any> { return new Promise<any>((resolve, reject) => { try { this.db.all(sql, (err: any, rows: any) => { if (err) { reject(err) } else { resolve(rows) } }) } catch (error: any) { reject(error) } }) } async end(): Promise<void> { return new Promise<void>((resolve, reject) => { try { this.db.close((err: any) => { if (err) { reject(err) } else { resolve() } }) } catch (error: any) { reject(error) } }) } }