import type { NextConfig } from "next"; const nextConfig: NextConfig = { output: "standalone", cacheComponents: false, poweredByHeader: false, async headers() { return [ { source: '/:path*', headers: [ { key: 'X-Frame-Options', value: 'SAMEORIGIN', }, { key: 'X-Content-Type-Options', value: 'nosniff', }, { key: 'Content-Security-Policy', value: "default-src 'self'; script-src 'self' 'unsafe-eval' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' blob: data:; font-src 'self' data:; connect-src 'self' https://*.supabase.co wss://*.supabase.co https://*.supabase.net wss://*.supabase.net; frame-ancestors 'self'; form-action 'self';", }, ], }, ]; }, async rewrites() { const supabaseUrl = (process.env.SUPABASE_URL || "http://supabase-kong:8000").replace(/\/$/, ""); return [ { source: '/auth/v1/:path*', destination: `${supabaseUrl}/auth/v1/:path*`, }, { source: '/rest/v1/:path*', destination: `${supabaseUrl}/rest/v1/:path*`, }, { source: '/storage/v1/:path*', destination: `${supabaseUrl}/storage/v1/:path*`, }, ]; }, }; export default nextConfig;