import { withSentryConfig } from "@sentry/nextjs"; /** @type {import('next').Config} */ const nextConfig = { output: 'standalone', // Enable source maps for Sentry stack traces in production productionBrowserSourceMaps: !!process.env.GLITCHTIP_DSN, experimental: { serverActions: { bodySizeLimit: '10mb', }, }, images: { remotePatterns: [ { protocol: 'https', hostname: 'supaapi.cloud.fluffigewolke.de', pathname: '/storage/v1/object/public/**', }, ], }, }; // Wrap with Sentry only if DSN is configured const sentryEnabled = !!process.env.GLITCHTIP_DSN || !!process.env.NEXT_PUBLIC_GLITCHTIP_DSN; const sentryWebpackPluginOptions = { // Suppresses source map uploading logs during build silent: true, // Organization and project slugs (optional - for source map upload) org: process.env.GLITCHTIP_ORG, project: process.env.GLITCHTIP_PROJECT, // GlitchTip server URL sentryUrl: process.env.GLITCHTIP_URL, // Auth token for source map upload authToken: process.env.GLITCHTIP_AUTH_TOKEN, // Hides source maps from generated client bundles hideSourceMaps: true, // Automatically tree-shake Sentry logger statements disableLogger: true, // Prevent bundling of native binaries widenClientFileUpload: true, }; export default sentryEnabled ? withSentryConfig(nextConfig, sentryWebpackPluginOptions) : nextConfig;