const fs = require('fs'); const path = require('path'); const envSchema = require('./config/schema/env'); const urls = require('./constants/urls'); const env = envSchema.parse(process.env); const favicons = fs.readdirSync('./public/favicon/prod'); const faviconSubPath = env.USE_DEV_COLORS ? '/favicon/dev' : '/favicon/prod'; function buildFaviconRewrite(source) { return { destination: String.prototype.concat(faviconSubPath, source), source, }; } /** @type {import('next').NextConfig} */ const nextConfig = { output: 'standalone', eslint: { ignoreDuringBuilds: true, }, experimental: { outputFileTracingRoot: path.join(__dirname, '../../'), }, reactStrictMode: true, transpilePackages: ['@repo/ui', 'radash'], async rewrites() { return [ { destination: env.URL_IUS_DIRECT + '/:path*', source: urls.URL_IUS_PROXY + '/:path*', }, ...favicons.map((fileName) => buildFaviconRewrite(`/${fileName}`)), ]; }, }; module.exports = nextConfig;