create-eth
Version:
Create a Scaffold-ETH-2 app
41 lines (31 loc) • 1.03 kB
JavaScript
import { stringify, withDefaults, deepMerge } from '../../../utils.js'
const defaultConfig = {
reactStrictMode: true,
devIndicators: false,
typescript: {
ignoreBuildErrors: '$$process.env.NEXT_PUBLIC_IGNORE_BUILD_ERROR === "true"$$',
},
}
const contents = ({ preContent, configOverrides, postConfigContent, finalNextConfigName }) => {
// Merge the default config with any overrides
const finalConfig = deepMerge(defaultConfig, configOverrides[0] || {});
return `import type { NextConfig } from "next";
${preContent[0] || ''}
const nextConfig: NextConfig = ${stringify(finalConfig)};
const isIpfs = process.env.NEXT_PUBLIC_IPFS_BUILD === "true";
if (isIpfs) {
nextConfig.output = "export";
nextConfig.trailingSlash = true;
nextConfig.images = {
unoptimized: true,
};
}
${postConfigContent[0] || ''}
module.exports = ${finalNextConfigName[0]};`
}
export default withDefaults(contents, {
preContent: "",
configOverrides: {},
postConfigContent: "",
finalNextConfigName: "nextConfig",
})