-
Notifications
You must be signed in to change notification settings - Fork 0
/
next.config.js
41 lines (39 loc) · 944 Bytes
/
next.config.js
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
/** @type {import('next').NextConfig} */
const nextConfig = {
env: getEnvConfig(),
/** `exportPathMap` is exclusive to `next export`, see https://nextjs.org/docs/api-reference/next.config.js/exportPathMap */
exportPathMap: async function () {
return {
'/': { page: '/' },
}
},
reactStrictMode: true,
swcMinify: true,
trailingSlash: true,
webpack(config) {
config.module.rules.push({
test: /\.svg$/i,
issuer: /\.[jt]sx?$/,
use: [
{
loader: '@svgr/webpack',
options: {
expandProps: 'start',
icon: true,
removeDimensions: true,
},
},
],
})
return config
},
}
module.exports = nextConfig
function getEnvConfig() {
const environment = process.env.TARGET_ENV || process.env.NODE_ENV
try {
return require(`./env-${environment}.json`)
} catch (err) {
return require('./env.json')
}
}