import { db as defaultDb } from '$lib/server/db'; import { projects } from '$lib/server/db/schema'; import { asc, eq } from 'drizzle-orm'; import type { AppDatabase } from './groceries'; import type { Project } from './types'; export async function loadAll(db = defaultDb): Promise { return db .select() .from(projects) .where(eq(projects.archived, false)) .orderBy(asc(projects.name)); } export async function add(name: string, db = defaultDb): Promise { const [inserted] = await db.insert(projects).values({ name }).returning(); return inserted; } export async function rename( id: number, name: string, db = defaultDb, ): Promise { await db.update(projects).set({ name }).where(eq(projects.id, id)); } export async function archive(id: number, db = defaultDb): Promise { await db.update(projects).set({ archived: true }).where(eq(projects.id, id)); } export async function getById( id: number, db = defaultDb, ): Promise { const [project] = await db.select().from(projects).where(eq(projects.id, id)); return project; }