
const API_URL = process.env.API_INTERNAL_URL || 'http://localhost:8000';

const nextConfig = {
  reactStrictMode: false,
  distDir: ".next-build",


  // Proxy API and static asset requests to FastAPI backend.
  //
  // The /api/v1/* rewrite uses a `missing` condition on the Accept header so
  // it does NOT match SSE requests (EventSource always sends Accept: text/event-stream).
  // SSE paths have explicit route handlers in app/api/v1/*/stream/[id]/route.ts
  // that stream events properly. Normal JSON requests go through the rewrite as before.
  async rewrites() {
    return [
      {
        source: '/api/v1/:path*',
        missing: [
          { type: 'header', key: 'accept', value: 'text/event-stream' },
        ],
        destination: `${API_URL}/api/v1/:path*`,
      },
      {
        source: '/app_data/:path*',
        destination: `${API_URL}/app_data/:path*`,
      },
      {
        source: '/static/:path*',
        destination: `${API_URL}/static/:path*`,
      },
    ];
  },

  images: {
    remotePatterns: [
      {
        protocol: "https",
        hostname: "pub-7c765f3726084c52bcd5d180d51f1255.r2.dev",
      },
      {
        protocol: "https",
        hostname: "pptgen-public.ap-south-1.amazonaws.com",
      },
      {
        protocol: "https",
        hostname: "pptgen-public.s3.ap-south-1.amazonaws.com",
      },
      {
        protocol: "https",
        hostname: "img.icons8.com",
      },
      {
        protocol: "https",
        hostname: "present-for-me.s3.amazonaws.com",
      },
      {
        protocol: "https",
        hostname: "yefhrkuqbjcblofdcpnr.supabase.co",
      },
      {
        protocol: "https",
        hostname: "images.unsplash.com",
      },
      {
        protocol: "https",
        hostname: "picsum.photos",
      },
      {
        protocol: "https",
        hostname: "unsplash.com",
      },
    ],
  },
  
};

export default nextConfig;
