| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- import dotenv from 'dotenv';
- import { getThemeVariables } from 'antd/dist/theme';
- import supportedLanguages from './src/utils/i18n/supportedLanguages';
- import antdThemeOverrides from './src/AntdTheme';
- dotenv.config({
- path: `.env.${process.env.NODE_ENV}`,
- });
- const languages = supportedLanguages.map(language => language.languageTag);
- const plugins = [
- 'gatsby-plugin-react-helmet',
- 'gatsby-plugin-typescript',
- 'gatsby-plugin-remove-serviceworker',
- 'gatsby-plugin-svgr',
- {
- resolve: 'gatsby-plugin-intl',
- options: {
- path: `${__dirname}/src/locales`,
- languages,
- defaultLanguage: 'en',
- redirect: true,
- },
- },
- {
- resolve: 'gatsby-plugin-antd',
- options: {
- style: true,
- },
- },
- {
- resolve: `gatsby-plugin-less`,
- options: {
- lessOptions: {
- javascriptEnabled: true,
- modifyVars: {
- ...getThemeVariables({
- dark: true, // Enable dark mode
- compact: true, // Enable compact mode,
- }),
- ...antdThemeOverrides,
- },
- },
- },
- },
- {
- resolve: 'gatsby-plugin-robots-txt',
- options: {
- host: process.env.GATSBY_SITE_URL,
- sitemap: `${process.env.GATSBY_SITE_URL}/sitemap.xml`,
- env: {
- development: {
- policy: [{ userAgent: '*', disallow: ['/'] }]
- },
- production: {
- policy: [{ userAgent: '*', allow: '/' }]
- }
- }
- }
- },
- {
- resolve: "gatsby-plugin-sitemap",
- options: {
- serialize: ({ site, allSitePage }) => {
- // filter out pages that do not include a locale, along with locale specific 404 pages.
- const edges = allSitePage.edges.filter(page => languages.some(lang => page.node.path.includes(lang)) && !page.node.path.includes('404'))
- // return sitemap entries
- return edges.map(page => {
- return {
- url: `${site.siteMetadata.siteUrl}${page.node.path}`,
- // changefreq: `daily`,
- // priority: 0.7,
- // lastmod: modifiedGmt,
- }
- })
- },
- exclude: [
- process.env.ENABLE_NETWORK_PAGE !== 'true' ? '/*/network/' : '/',
- process.env.ENABLE_EXPLORER_PAGE !== 'true' ? '/*/explorer/' : '/',
- ]
- },
- },
- {
- resolve: `gatsby-plugin-google-gtag`,
- options: {
- trackingIds: [String(process.env.GATSBY_GA_TAG)],
- },
- },
- ];
- // Bundle analyzer, dev only
- if (process.env.ENABLE_BUNDLE_ANALYZER === '1') {
- plugins.push('gatsby-plugin-webpack-bundle-analyser-v2');
- }
- const siteMetadata = {
- siteUrl: process.env.GATSBY_SITE_URL,
- }
- export { plugins, siteMetadata };
|