import type { NextConfig } from "next"; import { withWorkflow } from "workflow/next"; // Set only by build-docker.mjs after the separate type check has succeeded. const dockerTypechecked = process.env.MINEGEO_DOCKER_TYPECHECKED === "1"; const config: NextConfig = { poweredByHeader: false, cacheMaxMemorySize: 16 * 1024 * 1024, enablePrerenderSourceMaps: false, typescript: { ignoreBuildErrors: dockerTypechecked }, experimental: { cpus: 1, preloadEntriesOnStart: false, ...(dockerTypechecked ? { webpackBuildWorker: true, webpackMemoryOptimizations: true } : {}), }, outputFileTracingIncludes: { "/downloads": ["./public/tools/**/*.jar"] }, serverExternalPackages: ["pg"], turbopack: { root: process.cwd() }, async headers() { return [ { source: "/:path*", headers: [ { key: "X-Content-Type-Options", value: "nosniff" }, { key: "X-Frame-Options", value: "DENY" }, { key: "Referrer-Policy", value: "same-origin" }, { key: "Permissions-Policy", value: "camera=(), microphone=(), geolocation=()", }, { key: "Content-Security-Policy", value: "frame-ancestors 'none'; base-uri 'self'; object-src 'none'", }, ], }, ]; }, allowedDevOrigins: ["192.168.0.120", "minegeotest.12345em.ru"], }; export default withWorkflow(config);