/** @type {import("next").NextConfig} */
let nextConfig
nextConfig = {
  experimental: { serverActions: { allowedOrigins: ["app.codeflash.ai", "localhost:3000"] } },
  typescript: {
    ignoreBuildErrors: false,
  },
}

// module.exports = nextConfig

import { withSentryConfig } from "@sentry/nextjs"

// nextConfig.webpack = (config) => {
//   config.module.rules.push({
//     test: /\.tsx?$/,
//     use: [
//       {
//         loader: 'ts-loader',
//         options: {
//           transpileOnly: true,
//         },
//       },
//     ],
//     exclude: /node_modules/,
//   });
//   return config;
// };

export default withSentryConfig(
  nextConfig,
  {
    // For all available options, see:
    // https://github.com/getsentry/sentry-webpack-plugin#options

    // Suppresses source map uploading logs during build
    silent: true,
    org: "codeflash-ai",
    project: "webapp",
  },
  {
    // For all available options, see:
    // https://docs.sentry.io/platforms/javascript/guides/nextjs/manual-setup/

    // Upload a larger set of source maps for prettier stack traces (increases build time)
    widenClientFileUpload: true,

    // Transpiles SDK to be compatible with IE11 (increases bundle size)
    transpileClientSDK: true,

    // Routes browser requests to Sentry through a Next.js rewrite to circumvent ad-blockers (increases server load)
    tunnelRoute: "/monitoring",

    // Hides source maps from generated client bundles
    hideSourceMaps: true,

    // Automatically tree-shake Sentry logger statements to reduce bundle size
    disableLogger: true,

    // Enables automatic instrumentation of Vercel Cron Monitors.
    // See the following for more information:
    // https://docs.sentry.io/product/crons/
    // https://vercel.com/docs/cron-jobs
    automaticVercelMonitors: true,
  },
)
