import type { NextConfig } from 'next';

const nextConfig: NextConfig = {
  output: 'standalone',
  transpilePackages: ['@mosaicstack/design-tokens'],

  // Enable gzip/brotli compression for all responses.
  compress: true,

  // Reduce bundle size: disable source maps in production builds.
  productionBrowserSourceMaps: false,

  // Image optimisation: allow the gateway origin as an external image source.
  images: {
    formats: ['image/avif', 'image/webp'],
    remotePatterns: [
      {
        protocol: 'https',
        hostname: '**',
      },
    ],
  },

  // Experimental: enable React compiler for automatic memoisation (Next 15+).
  // Falls back gracefully if the compiler plugin is not installed.
  experimental: {
    // Turbopack is the default in dev for Next 15; keep it opt-in for now.
    // turbo: {},
  },
};

export default nextConfig;
