mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 17:35:10 +03:00
* 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>
145 lines
3.5 KiB
JavaScript
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
|