-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathnext.config.js
106 lines (101 loc) · 2.67 KB
/
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
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
const withMDX = require('@next/mdx')({
extension: /\.mdx?$/,
options: {
// If you use remark-gfm, you'll need to use next.config.mjs
// as the package is ESM only
// https://github.com/remarkjs/remark-gfm#install
remarkPlugins: [],
rehypePlugins: [],
// If you use `MDXProvider`, uncomment the following line.
// providerImportSource: "@mdx-js/react",
},
});
/**
* @type {import('next').NextConfig}
*/
const nextConfig = {
i18n: {
// These are all the locales you want to support in
// your application
locales: ['en', 'fr', 'es'],
// This is the default locale you want to be used when visiting
// a non-locale prefixed path e.g. `/hello`
defaultLocale: 'en',
localeDetection: false,
},
publicRuntimeConfig: {
TxNativePublicToken: process.env.NEXT_PUBLIC_TRANSIFEX_API_KEY,
},
// Configure pageExtensions to include md and mdx
pageExtensions: ['ts', 'tsx', 'js', 'jsx', 'md', 'mdx'],
// ? https://nextjs.org/docs/advanced-features/output-file-tracing#automatically-copying-traced-files
output: 'standalone',
poweredByHeader: false,
async redirects() {
return [
{
source: '/custom-area',
destination: '/',
permanent: true,
},
];
},
images: {
remotePatterns: [
{
protocol: 'https',
hostname: 'www.wetlands.org',
port: '',
pathname: '/wp-content/uploads/**',
},
],
},
async rewrites() {
return [
// planet APi to get tiles
{
source: '/planet/:path*',
destination: `https://tiles.planet.com/basemaps/v1/planet-tiles/:path*?api_key=${process.env.NEXT_PUBLIC_PLANET_API_KEY}`,
},
// Planet API get mosaics
{
source: '/planet-api/:path*',
destination: `https://api.planet.com/basemaps/v1/:path*?api_key=${process.env.NEXT_PUBLIC_PLANET_API_KEY}`,
},
// Wetlands Blog
{
source: '/blog/:path*',
destination: `https://www.wetlands.org/:path*`,
},
];
},
/** @param {import('webpack').Configuration} config */
webpack(config) {
config.module.rules.push({
test: /\.svg$/,
use: [
{
loader: 'svg-sprite-loader',
},
{
loader: 'svgo-loader',
options: {
plugins: [
{
name: 'preset-default',
params: {
overrides: {
convertColors: { shorthex: false },
convertPathData: false,
},
},
},
],
},
},
],
});
return config;
},
};
module.exports = withMDX(nextConfig);