fixed build performance issues; optimized queries

This commit is contained in:
2025-03-15 20:31:38 +01:00
parent cff9dad54c
commit 324451e082
27 changed files with 289 additions and 208 deletions
+23 -2
View File
@@ -1,8 +1,9 @@
import "dotenv/config";
import { env } from "@/env";
import { db } from "../src/server/db";
import { articles, categories, users } from "../src/server/db/schema";
async function seed() {
async function developmentSeed() {
const usersData = Array.from({ length: 100 }).map((_, i) => ({
name: `User ${i + 1}`,
email: `user${i + 1}@example.com`,
@@ -37,9 +38,29 @@ async function seed() {
console.log("Seeded " + a.length + " articles");
}
async function productionSeed() {
const user = await db.query.users.findFirst();
if (user) {
console.log("Skipped seeding, user already exists");
return;
}
const initialUser = {
name: "Admin",
email: "payblot@gmail.com",
role: 7,
};
await db.insert(users).values(initialUser);
console.log("Seeded user");
}
async function init() {
try {
await seed();
if (env.NODE_ENV === "development") await developmentSeed();
else if (env.NODE_ENV === "production") await productionSeed();
else
console.log(
"Skipped seeding, NODE_ENV is not set to development or production",
);
} catch (error) {
console.error(error);
} finally {