import { NextRequest, NextResponse } from 'next/server'; import { getAuthHeaders } from '../../../../lib/auth-headers'; const API_BASE = process.env.NEXT_PUBLIC_API_URL_INTERNAL || 'http://recipe-api:8080'; export async function GET( _request: NextRequest, { params }: { params: Promise<{ id: string }> }, ) { const { id } = await params; const authHeaders = await getAuthHeaders(); const res = await fetch(`${API_BASE}/api/recipes/${id}`, { headers: { ...authHeaders }, cache: 'no-store', }); const text = await res.text(); return new NextResponse(text, { status: res.status, headers: { 'Content-Type': 'application/json' }, }); } export async function PATCH( request: NextRequest, { params }: { params: Promise<{ id: string }> }, ) { const { id } = await params; const authHeaders = await getAuthHeaders(); const body = await request.json(); const res = await fetch(`${API_BASE}/api/recipes/${id}`, { method: 'PATCH', headers: { 'Content-Type': 'application/json', ...authHeaders }, body: JSON.stringify(body), cache: 'no-store', }); const text = await res.text(); return new NextResponse(text, { status: res.status, headers: { 'Content-Type': 'application/json' }, }); } export async function DELETE( _request: NextRequest, { params }: { params: Promise<{ id: string }> }, ) { const { id } = await params; const authHeaders = await getAuthHeaders(); const res = await fetch(`${API_BASE}/api/recipes/${id}`, { method: 'DELETE', headers: { ...authHeaders }, cache: 'no-store', }); return new NextResponse(null, { status: res.status }); }