50 lines
910 B
JavaScript
50 lines
910 B
JavaScript
|
let userConfig = undefined
|
||
|
try {
|
||
|
userConfig = await import('./v0-user-next.config')
|
||
|
} catch (e) {
|
||
|
// ignore error
|
||
|
}
|
||
|
|
||
|
/** @type {import('next').NextConfig} */
|
||
|
const nextConfig = {
|
||
|
reactStrictMode: false,
|
||
|
eslint: {
|
||
|
ignoreDuringBuilds: true,
|
||
|
},
|
||
|
typescript: {
|
||
|
ignoreBuildErrors: true,
|
||
|
},
|
||
|
images: {
|
||
|
unoptimized: true,
|
||
|
},
|
||
|
experimental: {
|
||
|
webpackBuildWorker: true,
|
||
|
parallelServerBuildTraces: true,
|
||
|
parallelServerCompiles: true,
|
||
|
},
|
||
|
}
|
||
|
|
||
|
mergeConfig(nextConfig, userConfig)
|
||
|
|
||
|
function mergeConfig(nextConfig, userConfig) {
|
||
|
if (!userConfig) {
|
||
|
return
|
||
|
}
|
||
|
|
||
|
for (const key in userConfig) {
|
||
|
if (
|
||
|
typeof nextConfig[key] === 'object' &&
|
||
|
!Array.isArray(nextConfig[key])
|
||
|
) {
|
||
|
nextConfig[key] = {
|
||
|
...nextConfig[key],
|
||
|
...userConfig[key],
|
||
|
}
|
||
|
} else {
|
||
|
nextConfig[key] = userConfig[key]
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export default nextConfig
|