2023-10-20 10:54:20 +00:00
|
|
|
const nextBuildId = require("next-build-id");
|
2023-10-23 07:37:18 +00:00
|
|
|
const withBundleAnalyzer = require("@next/bundle-analyzer")({
|
|
|
|
enabled: false,
|
|
|
|
});
|
2023-10-20 10:54:20 +00:00
|
|
|
|
2023-10-18 06:58:40 +00:00
|
|
|
/** @type {import('next').NextConfig} */
|
2023-10-19 04:21:35 +00:00
|
|
|
const nextConfig = {
|
2023-10-19 13:17:55 +00:00
|
|
|
generateEtags: true,
|
|
|
|
compress: true,
|
2023-10-20 10:54:20 +00:00
|
|
|
env: {
|
2023-10-20 11:00:41 +00:00
|
|
|
NEXT_PUBLIC_BUILD_ID:
|
|
|
|
process.env.GIT_REV || nextBuildId.sync({ dir: __dirname }),
|
2023-11-06 17:40:54 +00:00
|
|
|
NEXT_PUBLIC_BUILD_TIME: new Date().toLocaleDateString("en-US", {
|
|
|
|
year: "numeric",
|
|
|
|
month: "long",
|
|
|
|
day: "numeric",
|
|
|
|
hour: "numeric",
|
|
|
|
minute: "numeric",
|
|
|
|
}),
|
2023-10-20 10:54:20 +00:00
|
|
|
},
|
2023-10-19 04:21:35 +00:00
|
|
|
images: {
|
|
|
|
remotePatterns: [
|
|
|
|
{
|
|
|
|
protocol: "https",
|
|
|
|
hostname: "cdn.fascinated.cc",
|
|
|
|
port: "",
|
|
|
|
pathname: "/**",
|
|
|
|
},
|
2023-10-19 13:17:55 +00:00
|
|
|
{
|
|
|
|
protocol: "https",
|
|
|
|
hostname: "cdn.scoresaber.com",
|
|
|
|
port: "",
|
|
|
|
pathname: "/**",
|
|
|
|
},
|
2023-10-27 22:37:57 +00:00
|
|
|
{
|
|
|
|
protocol: "https",
|
|
|
|
hostname: "cdn.jsdelivr.net",
|
|
|
|
port: "",
|
|
|
|
pathname: "/**",
|
|
|
|
},
|
2023-11-05 20:56:19 +00:00
|
|
|
{
|
|
|
|
protocol: "https",
|
|
|
|
hostname: "eu.cdn.beatsaver.com",
|
|
|
|
port: "",
|
|
|
|
pathname: "/**",
|
|
|
|
},
|
2023-11-05 20:59:57 +00:00
|
|
|
{
|
|
|
|
protocol: "https",
|
|
|
|
hostname: "na.cdn.beatsaver.com",
|
|
|
|
port: "",
|
|
|
|
pathname: "/**",
|
|
|
|
},
|
2023-11-05 23:06:28 +00:00
|
|
|
{
|
|
|
|
protocol: "https",
|
|
|
|
hostname: "avatars.akamai.steamstatic.com",
|
|
|
|
port: "",
|
|
|
|
pathname: "/**",
|
|
|
|
},
|
2023-10-19 04:21:35 +00:00
|
|
|
],
|
|
|
|
},
|
|
|
|
};
|
2023-10-18 06:58:40 +00:00
|
|
|
|
2023-10-23 07:37:18 +00:00
|
|
|
module.exports = withBundleAnalyzer(nextConfig);
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-23 07:37:18 +00:00
|
|
|
// // Injected content via Sentry wizard below
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
const { withSentryConfig } = require("@sentry/nextjs");
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
module.exports = withSentryConfig(
|
|
|
|
module.exports,
|
|
|
|
{
|
|
|
|
// For all available options, see:
|
|
|
|
// https://github.com/getsentry/sentry-webpack-plugin#options
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
// Suppresses source map uploading logs during build
|
|
|
|
silent: true,
|
|
|
|
org: "sentry",
|
|
|
|
project: "scoresaber-reloaded",
|
|
|
|
url: "https://sentry.fascinated.cc/",
|
|
|
|
},
|
|
|
|
{
|
|
|
|
// For all available options, see:
|
|
|
|
// https://docs.sentry.io/platforms/javascript/guides/nextjs/manual-setup/
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
// Upload a larger set of source maps for prettier stack traces (increases build time)
|
|
|
|
widenClientFileUpload: false,
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
// Transpiles SDK to be compatible with IE11 (increases bundle size)
|
|
|
|
transpileClientSDK: false,
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
// Routes browser requests to Sentry through a Next.js rewrite to circumvent ad-blockers (increases server load)
|
|
|
|
tunnelRoute: "/monitoring",
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
// Hides source maps from generated client bundles
|
|
|
|
hideSourceMaps: true,
|
2023-10-20 15:18:24 +00:00
|
|
|
|
2023-10-24 11:10:07 +00:00
|
|
|
// Automatically tree-shake Sentry logger statements to reduce bundle size
|
|
|
|
disableLogger: true,
|
|
|
|
},
|
|
|
|
);
|