From bac979784548abdd91748812968dd8d496ddd2ce Mon Sep 17 00:00:00 2001 From: root Date: Mon, 26 Jan 2026 10:31:46 -0500 Subject: [PATCH] fix: update API route params for Next.js 15+ async params Next.js 15+ changed dynamic route params to be async Promises. Updated all schedule API routes to await params before accessing id. Changes: - GET /api/sync/schedules/[id] - await params - PATCH /api/sync/schedules/[id] - await params - DELETE /api/sync/schedules/[id] - await params - POST /api/sync/schedules/[id]/trigger - await params This fixes TypeScript compilation errors during Docker build. --- app/api/sync/schedules/[id]/route.ts | 15 +++++++++------ app/api/sync/schedules/[id]/trigger/route.ts | 5 +++-- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/app/api/sync/schedules/[id]/route.ts b/app/api/sync/schedules/[id]/route.ts index 6012456..9ad32d7 100644 --- a/app/api/sync/schedules/[id]/route.ts +++ b/app/api/sync/schedules/[id]/route.ts @@ -12,10 +12,11 @@ import { syncScheduler } from '@/lib/services/sync-scheduler'; */ export async function GET( request: NextRequest, - { params }: { params: { id: string } } + { params }: { params: Promise<{ id: string }> } ) { try { - const schedule = await syncScheduler.getSchedule(params.id); + const { id } = await params; + const schedule = await syncScheduler.getSchedule(id); if (!schedule) { return NextResponse.json( @@ -45,12 +46,13 @@ export async function GET( */ export async function PATCH( request: NextRequest, - { params }: { params: { id: string } } + { params }: { params: Promise<{ id: string }> } ) { try { + const { id } = await params; const body = await request.json(); - const schedule = await syncScheduler.updateSchedule(params.id, body); + const schedule = await syncScheduler.updateSchedule(id, body); return NextResponse.json({ success: true, @@ -73,10 +75,11 @@ export async function PATCH( */ export async function DELETE( request: NextRequest, - { params }: { params: { id: string } } + { params }: { params: Promise<{ id: string }> } ) { try { - await syncScheduler.deleteSchedule(params.id); + const { id } = await params; + await syncScheduler.deleteSchedule(id); return NextResponse.json({ success: true, diff --git a/app/api/sync/schedules/[id]/trigger/route.ts b/app/api/sync/schedules/[id]/trigger/route.ts index 9763b72..c7738bb 100644 --- a/app/api/sync/schedules/[id]/trigger/route.ts +++ b/app/api/sync/schedules/[id]/trigger/route.ts @@ -12,10 +12,11 @@ import { syncScheduler } from '@/lib/services/sync-scheduler'; */ export async function POST( request: NextRequest, - { params }: { params: { id: string } } + { params }: { params: Promise<{ id: string }> } ) { try { - await syncScheduler.triggerSchedule(params.id); + const { id } = await params; + await syncScheduler.triggerSchedule(id); return NextResponse.json({ success: true,