plane/web/next.config.js
2024-04-30 20:19:01 +05:30

60 lines
1.4 KiB
JavaScript

/* eslint-disable @typescript-eslint/no-var-requires */
/** @type {import("next").NextConfig} */
require("dotenv").config({ path: ".env" });
const { withSentryConfig } = require("@sentry/nextjs");
const nextConfig = {
reactStrictMode: false,
swcMinify: true,
output: "standalone",
async headers() {
return [
{
source: "/(.*)?",
headers: [
{ key: "X-Frame-Options", value: "SAMEORIGIN" },
{
key: "Referrer-Policy",
value: "origin-when-cross-origin",
},
],
},
];
},
images: {
remotePatterns: [
{
protocol: "https",
hostname: "**",
},
],
unoptimized: true,
},
async rewrites() {
return [
{
source: "/ingest/static/:path*",
destination: "https://us-assets.i.posthog.com/static/:path*",
},
{
source: "/ingest/:path*",
destination: "https://us.i.posthog.com/:path*",
},
{
source: "/god-mode/:path*",
destination: `${process.env.NEXT_PUBLIC_GOD_MODE_URL || ""}/:path*`,
},
];
},
};
if (parseInt(process.env.NEXT_PUBLIC_ENABLE_SENTRY || "0", 10)) {
module.exports = withSentryConfig(
nextConfig,
{ silent: true, authToken: process.env.SENTRY_AUTH_TOKEN },
{ hideSourceMaps: true }
);
} else {
module.exports = nextConfig;
}