import { createRouteHandlerClient } from "@supabase/auth-helpers-nextjs"; import { cookies } from "next/headers"; import { NextResponse, NextRequest } from "next/server"; import { Database } from "@/types/supabase"; import prisma from "@/lib/prisma"; async function getSession(supabase: any) { const { data: { session }, } = await supabase.auth.getSession(); return session; } // create task export async function POST( req: NextRequest, { params: { projectID } }: { params: { projectID: string } } ) { const supabase = createRouteHandlerClient({ cookies }); const session = await getSession(supabase); if (!session) return NextResponse.redirect("/auth"); try { // TODO: add task const req_data = await req.json(); const tasks = req_data.tasks; console.log("TASKS IN ADD TASKS ROUTE ===>", tasks); const tasks_with_project_id = tasks.map((task: any) => { return { ...task, project_id: BigInt(projectID), feature_id: BigInt(task.feature_id), }; }); await prisma.task.createMany({ data: tasks_with_project_id, skipDuplicates: true, }); return NextResponse.json({ success: true }, { status: 200 }); } catch (err) { console.error(err); return NextResponse.json({ error: err }, { status: 500 }); } }