-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnext.config.mjs
54 lines (48 loc) · 1.21 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
import createBundleAnalyzer from '@next/bundle-analyzer'
import metadata from './config/metadata.json' assert { type: 'json' }
const withBundleAnalyzer = createBundleAnalyzer({
enabled: process.env['BUNDLE_ANALYZER'] === 'enabled',
})
const locales = Object.keys(metadata)
const defaultLocale = /** @type {string} */ (locales[0])
/** @type {import('next').NextConfig} */
const nextConfig = {
eslint: {
dirs: ['.'],
ignoreDuringBuilds: true,
},
async headers() {
return [
{
source: '/assets/fonts/inter-var-latin.woff2',
headers: [
{
key: 'Cache-Control',
value: 'public, max-age=31536000, immutable',
},
],
},
]
},
i18n: {
locales,
defaultLocale,
},
output: 'standalone',
pageExtensions: ['api.ts', 'page.tsx'],
poweredByHeader: false,
reactStrictMode: true,
async rewrites() {
return [
{ source: '/sitemap.xml', destination: '/api/sitemap' },
{ source: '/admin', destination: '/admin/index.html' },
]
},
typescript: {
ignoreBuildErrors: true,
},
}
const plugins = [withBundleAnalyzer]
export default plugins.reduce((acc, plugin) => {
return plugin(acc)
}, nextConfig)