Files
supabase/apps/docs/next.config.mjs
T
Jonathan Summers-MuirandCharis c222513546 [Docs] [Branching] Chore/branching docs (#18762)
* chore: initial branching docs added

* updated docs

* more changes

* Update tailwind.config.js

* Update branching.mdx

* Update tailwind.config.js

* more changes

* Update branching.mdx

* update images

* image refresh

* Delete example.jpg

* reword the top section

* Update branching.mdx

* image changeover

* Update next.config.mjs

* Apply suggestions from code review

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* Apply suggestions from code review

* Apply suggestions from code review

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2023-11-15 12:19:19 +00:00

145 lines
3.5 KiB
JavaScript

// @ts-check
import nextMdx from '@next/mdx'
import remarkGfm from 'remark-gfm'
import rehypeSlug from 'rehype-slug'
import { remarkCodeHike } from '@code-hike/mdx'
import withYaml from 'next-plugin-yaml'
import configureBundleAnalyzer from '@next/bundle-analyzer'
import codeHikeTheme from 'config/code-hike.theme.json' assert { type: 'json' }
const withBundleAnalyzer = configureBundleAnalyzer({
enabled: process.env.ANALYZE === 'true',
})
const withMDX = nextMdx({
extension: /\.mdx?$/,
options: {
remarkPlugins: [
[
remarkCodeHike,
{
theme: codeHikeTheme,
lineNumbers: true,
showCopyButton: true,
},
],
remarkGfm,
],
rehypePlugins: [rehypeSlug],
providerImportSource: '@mdx-js/react',
},
})
/** @type {import('next').NextConfig} nextConfig */
const nextConfig = {
outputFileTracing: true,
experimental: {
// Storybook 7.5 upgrade seems to causes dev deps to be included in build output, removing it here
outputFileTracingExcludes: {
'*': [
'./node_modules/@swc/core-linux-x64-gnu',
'./node_modules/@swc/core-linux-x64-musl',
'./node_modules/esbuild/**/*',
'./node_modules/webpack/**/*',
'./node_modules/rollup/**/*',
],
},
},
// Append the default value with md extensions
pageExtensions: ['ts', 'tsx', 'js', 'jsx', 'md', 'mdx'],
// reactStrictMode: true,
// swcMinify: true,
basePath: '/docs',
images: {
dangerouslyAllowSVG: true,
domains: [
'avatars.githubusercontent.com',
'github.com',
'supabase.github.io',
'user-images.githubusercontent.com',
'raw.githubusercontent.com',
'weweb-changelog.ghost.io',
'img.youtube.com',
'archbee-image-uploads.s3.amazonaws.com',
'obuldanrptloktxcffvn.supabase.co'
],
},
// TODO: @next/mdx ^13.0.2 only supports experimental mdxRs flag. next ^13.0.2 will stop warning about this being unsupported.
// mdxRs: true,
modularizeImports: {
lodash: {
transform: 'lodash/{{member}}',
},
},
transpilePackages: ['ui', 'common', 'mermaid', 'mdx-mermaid', 'dayjs', 'shared-data'],
async headers() {
return [
{
source: '/:path*',
headers: [
{
key: 'Strict-Transport-Security',
value: '',
},
{
key: 'X-Robots-Tag',
value: 'all',
},
{
key: 'X-Frame-Options',
value: 'DENY',
},
],
},
]
},
/**
* Doc rewrites and redirects are
* handled by the `www` nextjs config:
*
* ./apps/www/lib/redirects.js
*
* Only add dev/preview specific redirects
* in this config.
*/
async redirects() {
return [
// Redirect root to docs base path in dev/preview envs
{
source: '/',
destination: '/docs',
basePath: false,
permanent: false,
},
// Redirect dashboard links in dev/preview envs
{
source: '/dashboard/:path*',
destination: 'https://supabase.com/dashboard/:path*',
basePath: false,
permanent: false,
},
// Redirect blog links in dev/preview envs
{
source: '/blog/:path*',
destination: 'https://supabase.com/blog/:path*',
basePath: false,
permanent: false,
},
]
},
}
const configExport = () => {
const plugins = [withMDX, withYaml, withBundleAnalyzer]
// @ts-ignore
return plugins.reduce((acc, next) => next(acc), nextConfig)
}
export default configExport