Files
mintel.me/apps/web/next.config.mjs
Marc Mintel b2f6627ec5
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 6s
Build & Deploy / 🧪 QA (push) Failing after 1m24s
Build & Deploy / 🏗️ Build (push) Has been skipped
Build & Deploy / 🚀 Deploy (push) Has been skipped
Build & Deploy / 🧪 Post-Deploy Verification (push) Has been skipped
Build & Deploy / 🔔 Notify (push) Successful in 2s
refactor(payload): extract ai extensions to @mintel/payload-ai package
2026-03-02 23:00:50 +01:00

58 lines
1.4 KiB
JavaScript

import withMintelConfig from "@mintel/next-config";
import { withPayload } from '@payloadcms/next/withPayload';
import createMDX from '@next/mdx';
import path from 'path';
import { fileURLToPath } from 'url';
const filename = fileURLToPath(import.meta.url);
const dirname = path.dirname(filename);
/** @type {import('next').NextConfig} */
const nextConfig = {
serverExternalPackages: [
'@mintel/content-engine',
'@mintel/concept-engine',
'@mintel/estimation-engine',
'@mintel/payload-ai',
'@mintel/pdf',
'canvas',
'sharp',
'puppeteer',
'require-in-the-middle',
'import-in-the-middle' // Sentry 10+ instrumentation dependencies
],
images: {
remotePatterns: [
{
protocol: 'https',
hostname: '*.your-objectstorage.com',
},
{
protocol: 'https',
hostname: 'fsn1.your-objectstorage.com',
},
],
},
async rewrites() {
return [
// Umami proxy rewrite handled in app/stats/api/send/route.ts
// Sentry relay handled in app/errors/api/relay/route.ts
];
},
async redirects() {
return [
{
source: '/case-studies/klz',
destination: '/case-studies/klz-cables',
permanent: true,
},
];
},
outputFileTracingRoot: path.join(dirname, '../../'),
};
const withMDX = createMDX({
// Add markdown plugins here, as desired
});
export default withPayload(withMintelConfig(withMDX(nextConfig)));