feat(frontend): migrate render jobs off Supabase to V2 render orchestrator; drop all Supabase lib files
- render-jobs.ts: replace Supabase client with V2 gateway calls POST /v1/renders (saved_project_id + quality + resolution + frame_rate) GET /v1/renders/:id/progress for status polling GET /v1/renders/:id + /v1/exports/:id/download-url for completed output URL triggerRenderWorker is now a no-op (V2 dispatches internally) - render/route.ts: add getAccessToken() guard, pass token to createRenderJob - render/[jobId]/status/route.ts: add getAccessToken() guard, pass token to getRenderJob - Delete src/lib/supabase/, src/lib/supabase.ts — no remaining consumers Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import { NextResponse } from "next/server";
|
||||
|
||||
import { getAccessToken } from "@/lib/auth/session";
|
||||
import { getRenderJob } from "@/lib/render-jobs";
|
||||
|
||||
export const runtime = "nodejs";
|
||||
@@ -15,7 +16,12 @@ export async function GET(_request: Request, context: RouteContext) {
|
||||
return NextResponse.json({ error: "jobId required" }, { status: 400 });
|
||||
}
|
||||
|
||||
const job = await getRenderJob(jobId);
|
||||
const token = await getAccessToken();
|
||||
if (!token) {
|
||||
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
|
||||
}
|
||||
|
||||
const job = await getRenderJob(jobId, token);
|
||||
if (!job) {
|
||||
return NextResponse.json({ error: "Job not found" }, { status: 404 });
|
||||
}
|
||||
|
||||
@@ -1,11 +1,17 @@
|
||||
import { NextResponse } from "next/server";
|
||||
|
||||
import { getAccessToken } from "@/lib/auth/session";
|
||||
import { createRenderJob } from "@/lib/render-jobs";
|
||||
import { renderRequestSchema } from "@/lib/render-schemas";
|
||||
import { createRenderJob, triggerRenderWorker } from "@/lib/render-jobs";
|
||||
|
||||
export const runtime = "nodejs";
|
||||
|
||||
export async function POST(request: Request) {
|
||||
const token = await getAccessToken();
|
||||
if (!token) {
|
||||
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
|
||||
}
|
||||
|
||||
let body: unknown;
|
||||
try {
|
||||
body = await request.json();
|
||||
@@ -21,12 +27,10 @@ export async function POST(request: Request) {
|
||||
);
|
||||
}
|
||||
|
||||
const result = await createRenderJob(parsed.data);
|
||||
const result = await createRenderJob(parsed.data, token);
|
||||
if ("error" in result) {
|
||||
return NextResponse.json({ error: result.error }, { status: 500 });
|
||||
}
|
||||
|
||||
await triggerRenderWorker(result.jobId);
|
||||
|
||||
return NextResponse.json({ jobId: result.jobId });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user