secondme-api / lpm_frontend /next.config.js
Gemini
feat: add detailed logging
01d5a5d
const nextConfig = {
reactStrictMode: false,
async rewrites() {
const dockerApiBaseUrl = process.env.DOCKER_API_BASE_URL;
const localApiBaseUrl = `${process.env.HOST_ADDRESS || 'http://127.0.0.1'}:${process.env.LOCAL_APP_PORT || 8002}`;
return [
{
source: '/',
destination: '/home'
},
{
source: '/api/:path*',
destination: dockerApiBaseUrl
? `${dockerApiBaseUrl}/api/:path*`
: `${localApiBaseUrl}/api/:path*`
}
];
},
async headers() {
return [
{
source: '/api/:path*',
headers: [
{ key: 'Access-Control-Allow-Credentials', value: 'true' },
{ key: 'Access-Control-Allow-Origin', value: '*' },
{
key: 'Access-Control-Allow-Methods',
value: 'GET,DELETE,PATCH,POST,PUT'
},
{
key: 'Access-Control-Allow-Headers',
value: 'Accept, Accept-Version, Content-Length, Content-MD5, Content-Type, Date'
},
{ key: 'Accept', value: 'text/event-stream' },
{ key: 'Cache-Control', value: 'no-cache' },
{ key: 'Connection', value: 'keep-alive' }
]
}
];
},
experimental: {
proxyTimeout: 0
},
compiler: {
styledComponents: true
},
webpack: (config) => {
config.externals = [...(config.externals || []), 'canvas', 'jsdom'];
config.watchOptions = {
poll: 1000,
aggregateTimeout: 300
};
return config;
}
};
module.exports = nextConfig;