-
Notifications
You must be signed in to change notification settings - Fork 7
/
next.config.mjs
67 lines (63 loc) · 1.75 KB
/
next.config.mjs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
// /** @type {import('next').NextConfig} */
// const nextConfig = {
// images: {
// remotePatterns: [
// {
// protocol: "https",
// hostname: "cdn.sanity.io",
// },
// ],
// },
// experimental: {
// taint: true,
// serverMinification: false,
// },
// compress: false,
// webpack: (config, { buildId, dev, isServer, defaultLoaders, nextRuntime, webpack }) => {
// if (!dev) {
// // Ensure that other optimization settings are preserved
// config.optimization = {
// ...config.optimization,
// config.optimization.minimizer: [],
// };
// }
// // Important: return the modified config
// return config;
// },
// swcMinify: false,
// };
// export default nextConfig;
/** @type {import('next').NextConfig} */
const nextConfig = {
images: {
remotePatterns: [
{
protocol: "https",
hostname: "cdn.sanity.io",
},
],
},
compress: false, // Disable built-in compression
webpack: (config, { buildId, dev, isServer, defaultLoaders, nextRuntime, webpack }) => {
if (!dev) {
// Disable minification and other optimizations in production
config.optimization.minimize = false;
config.optimization.splitChunks = {
chunks: 'async',
minSize: 0,
minChunks: 1,
cacheGroups: {
default: false,
vendors: false,
},
};
// Remove TerserPlugin to avoid JS minification
config.optimization.minimizer = config.optimization.minimizer.filter(
(plugin) => plugin.constructor.name !== 'TerserPlugin'
);
}
// Important: return the modified config
return config;
},
};
export default nextConfig;