first commit

Made-with: Cursor
This commit is contained in:
Michilis
2026-04-01 02:46:53 +00:00
commit 76210db03d
126 changed files with 20208 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
import { NextResponse } from 'next/server';
const API_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:4000/api';
export async function GET() {
let upstream: Response;
try {
upstream = await fetch(`${API_URL}/calendar/ics`, {
headers: { Accept: 'text/calendar' },
cache: 'no-store',
});
} catch {
return new NextResponse('Calendar service unavailable', { status: 502 });
}
if (!upstream.ok) {
return new NextResponse('Failed to fetch calendar', { status: upstream.status });
}
const body = await upstream.text();
return new NextResponse(body, {
status: 200,
headers: {
'Content-Type': 'text/calendar; charset=utf-8',
'Cache-Control': 'public, max-age=300',
'Content-Disposition': 'inline; filename="bbe-events.ics"',
},
});
}