kaneo (minimalist kanban) fork to experiment adding a tangled integration
github.com/usekaneo/kaneo
1import { eq, max } from "drizzle-orm";
2import db from "../../database";
3import { taskTable } from "../../database/schema";
4
5type DbOrTx = typeof db | Parameters<Parameters<typeof db.transaction>[0]>[0];
6
7async function getNextTaskNumber(projectId: string, dbOrTx: DbOrTx = db) {
8 const [result] = await dbOrTx
9 .select({ maxNumber: max(taskTable.number) })
10 .from(taskTable)
11 .where(eq(taskTable.projectId, projectId));
12
13 return result?.maxNumber ?? 0;
14}
15
16export default getNextTaskNumber;