WorkshopTasker/server/api/firstRun.get.ts
Wroclaw 90932a49c8 Add database initialization
now, when the project is ran without configured database,
it will prompt for the first user to configure
the database and add the first user
2023-06-14 13:00:19 +02:00

15 lines
561 B
TypeScript

/* global defineEventHandler */
import { data, database } from "../utils/database";
export async function isFirstRun() {
const [tables] = await database.query({ sql: "SHOW TABLES", rowsAsArray: true }, []) as data<[string]>;
if (tables.length === 0) return true;
if (!tables.find(a => a[0] === "users")) return true;
const [[users]] = await database.query("SELECT COUNT(*) as `count` FROM `users`") as data<{count: number}>;
if (users.count === 0) return true;
return false;
}
export default defineEventHandler((e) => {
return isFirstRun();
});