index.js.map 93.3 KB
Newer Older
1
{"version":3,"sources":["../../build/index.ts"],"names":["staticCheckWorker","require","resolve","build","dir","conf","reactProductionProfiling","debugOutput","nextBuildSpan","traceAsyncFn","loadedEnvFiles","traceChild","traceFn","Log","config","PHASE_PRODUCTION_BUILD","target","buildId","generateBuildId","nanoid","distDir","path","join","customRoutes","headers","rewrites","redirects","cacheDir","ciEnvironment","isCI","hasNextSupport","hasCache","console","log","prefixes","warn","telemetry","Telemetry","publicDir","pagesDir","hasPublicDir","record","webpackVersion","isWebpack5","cliCommand","isSrcDir","relative","startsWith","hasNowJson","cwd","isCustomServer","then","events","ignoreTypeScriptErrors","Boolean","typescript","ignoreBuildErrors","typeCheckStart","process","hrtime","typeCheckingSpinner","prefixText","info","verifyResult","typeCheckEnd","durationInSeconds","typescriptVersion","version","inputFilesCount","result","totalFilesCount","incremental","stopAndPersist","experimental","eslint","cpus","workerThreads","buildSpinner","isLikeServerless","pagePaths","pageExtensions","allStaticPages","Set","allPageInfos","Map","previewProps","previewModeId","crypto","randomBytes","toString","previewModeSigningKey","previewModeEncryptionKey","mappedPages","entrypoints","pageKeys","Object","keys","conflictingPublicFiles","hasCustomErrorPage","hasPages404","hasPublicUnderScoreNextDir","Error","PUBLIC_DIR_MIDDLEWARE_CONFLICT","page","hasPublicPageFile","push","numConflicting","length","nestedReservedPages","filter","match","dirname","buildCustomRoute","r","type","routeRegex","source","strict","sensitive","delimiter","statusCode","permanent","undefined","regex","routesManifestPath","ROUTES_MANIFEST","routesManifest","pages404","basePath","map","dynamicRoutes","isDynamicRoute","re","routeKeys","namedRegex","dataRoutes","i18n","beforeFiles","fallback","afterFiles","combinedRewrites","distDirCreated","promises","mkdir","recursive","err","code","writeFile","JSON","stringify","manifestPath","SERVERLESS_DIRECTORY","SERVER_DIRECTORY","PAGES_MANIFEST","requiredServerFiles","compress","configFile","appDir","files","BUILD_MANIFEST","PRERENDER_MANIFEST","REACT_LOADABLE_MANIFEST","optimizeFonts","FONT_MANIFEST","BUILD_ID_FILE","nonNullable","file","ignore","configs","Promise","all","isServer","client","server","clientConfig","optimization","minimize","minimizer","webpackBuildStart","warnings","errors","serialWebpackBuild","clientResult","serverResult","webpackBuildEnd","error","chalk","red","indexOf","page_name_regex","parsed","exec","page_name","groups","postCompileSpinner","buildManifestPath","ssgPages","ssgStaticFallbackPages","ssgBlockingFallbackPages","staticPages","invalidPages","hybridAmpPages","serverPropsPages","additionalSsgPaths","additionalSsgPathsEncoded","pageInfos","pagesManifest","parse","readFile","buildManifest","analysisBegin","staticCheckSpan","customAppGetInitialProps","namedExports","isNextImageImported","hasSsrAmpPages","hasNonStaticErrorPage","env","NEXT_PHASE","staticCheckWorkers","Worker","numWorkers","enableWorkerThreads","getStdout","pipe","stdout","getStderr","stderr","runtimeEnvConfig","publicRuntimeConfig","serverRuntimeConfig","nonStaticErrorPageSpan","nonStaticErrorPagePromise","hasCustomGetInitialProps","appPageToCheck","customAppGetInitialPropsPromise","namedExportsPromise","getNamedExports","computedManifestData","gzipSize","checkPageSpan","actualPage","selfSize","allSize","isSsg","isStatic","isHybridAmp","ssgPageRoutes","nonReservedPage","isPageStaticSpan","workerResult","isPageStatic","locales","defaultLocale","id","isAmpOnly","add","hasStaticProps","prerenderRoutes","encodedPrerenderRoutes","set","prerenderFallback","hasServerProps","STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR","delete","STATIC_STATUS_PAGES","includes","message","size","totalSize","static","initialRevalidateSeconds","returnValue","end","bold","yellow","pagePath","dataRoute","posix","dataRouteRegex","namedDataRouteRegex","replace","RegExp","useStatic404","pg","optimizeCss","cssFilePaths","filePath","SERVER_FILES_MANIFEST","finalPrerenderRoutes","tbdPrerenderRoutes","ssgNotFoundPaths","usedStaticStatusPages","forEach","has","hasPages500","useDefaultStatic500","combinedPages","staticGenerationSpan","exportApp","default","exportOptions","silent","buildExport","threads","pages","outdir","statusMessage","exportConfig","initialPageRevalidationMap","exportPathMap","defaultMap","query","__nextFallback","routes","encodedRoutes","get","route","routeIdx","__nextSsgPath","isDynamic","isFallback","locale","outputPath","__nextLocale","postBuildSpinner","serverBundle","unlink","serverOutputDir","moveExportedPage","originPage","ext","additionalSsgFile","orig","relativeDest","substr","split","dest","isNotFound","rename","curPath","localeExt","extname","relativeDestNoPages","updatedRelativeDest","updatedOrig","updatedDest","isStaticSsgFallback","hasAmp","hasHtmlOutput","ampPage","localePage","srcRoute","pageInfo","extraRoutes","pageFile","rmdir","analysisEnd","staticPageCount","staticPropsPageCount","serverPropsPageCount","ssrPageCount","hasStatic404","hasReportWebVitals","rewritesCount","headersCount","redirectsCount","headersWithHasCount","rewritesWithHasCount","redirectsWithHasCount","finalDynamicRoutes","tbdRoute","normalizedRoute","prerenderManifest","notFoundRoutes","preview","generateClientSsgManifest","images","deviceSizes","imageSizes","sizes","IMAGES_MANIFEST","EXPORT_MARKER","hasExportPathMap","exportTrailingSlash","trailingSlash","EXPORT_DETAIL","catch","reject","key","distPath","analyticsId","green","flush","entries","pathname","clientSsgManifestContent","CLIENT_STATIC_FILES_PATH"],"mappings":"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","sourcesContent":["import { loadEnvConfig } from '@next/env'\nimport chalk from 'chalk'\nimport crypto from 'crypto'\nimport { promises, writeFileSync } from 'fs'\nimport { Worker } from 'jest-worker'\nimport devalue from 'next/dist/compiled/devalue'\nimport escapeStringRegexp from 'next/dist/compiled/escape-string-regexp'\nimport findUp from 'next/dist/compiled/find-up'\nimport { nanoid } from 'next/dist/compiled/nanoid/index.cjs'\nimport { pathToRegexp } from 'next/dist/compiled/path-to-regexp'\nimport path from 'path'\nimport formatWebpackMessages from '../client/dev/error-overlay/format-webpack-messages'\nimport {\n  STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR,\n  PUBLIC_DIR_MIDDLEWARE_CONFLICT,\n} from '../lib/constants'\nimport { fileExists } from '../lib/file-exists'\nimport { findPagesDir } from '../lib/find-pages-dir'\nimport loadCustomRoutes, {\n  CustomRoutes,\n  getRedirectStatus,\n  normalizeRouteRegex,\n  Redirect,\n  Rewrite,\n  RouteType,\n} from '../lib/load-custom-routes'\nimport { nonNullable } from '../lib/non-nullable'\nimport { recursiveDelete } from '../lib/recursive-delete'\nimport { verifyAndLint } from '../lib/verifyAndLint'\nimport { verifyTypeScriptSetup } from '../lib/verifyTypeScriptSetup'\nimport {\n  BUILD_ID_FILE,\n  BUILD_MANIFEST,\n  CLIENT_STATIC_FILES_PATH,\n  EXPORT_DETAIL,\n  EXPORT_MARKER,\n  FONT_MANIFEST,\n  IMAGES_MANIFEST,\n  PAGES_MANIFEST,\n  PHASE_PRODUCTION_BUILD,\n  PRERENDER_MANIFEST,\n  REACT_LOADABLE_MANIFEST,\n  ROUTES_MANIFEST,\n  SERVERLESS_DIRECTORY,\n  SERVER_DIRECTORY,\n  SERVER_FILES_MANIFEST,\n  STATIC_STATUS_PAGES,\n} from '../next-server/lib/constants'\nimport {\n  getRouteRegex,\n  getSortedRoutes,\n  isDynamicRoute,\n} from '../next-server/lib/router/utils'\nimport { __ApiPreviewProps } from '../next-server/server/api-utils'\nimport loadConfig, {\n  isTargetLikeServerless,\n  NextConfig,\n} from '../next-server/server/config'\nimport { BuildManifest } from '../next-server/server/get-page-files'\nimport '../next-server/server/node-polyfill-fetch'\nimport { normalizePagePath } from '../next-server/server/normalize-page-path'\nimport { getPagePath } from '../next-server/server/require'\nimport * as ciEnvironment from '../telemetry/ci-info'\nimport {\n  eventBuildCompleted,\n  eventBuildOptimize,\n  eventCliSession,\n  eventNextPlugins,\n  eventTypeCheckCompleted,\n} from '../telemetry/events'\nimport { Telemetry } from '../telemetry/storage'\nimport { CompilerResult, runCompiler } from './compiler'\nimport { createEntrypoints, createPagesMapping } from './entries'\nimport { generateBuildId } from './generate-build-id'\nimport { isWriteable } from './is-writeable'\nimport * as Log from './output/log'\nimport createSpinner from './spinner'\nimport { trace, setGlobal } from '../telemetry/trace'\nimport {\n  collectPages,\n  detectConflictingPaths,\n  computeFromManifest,\n  getJsPageSizeInKb,\n  PageInfo,\n  printCustomRoutes,\n  printTreeView,\n  getCssFilePaths,\n} from './utils'\nimport getBaseWebpackConfig from './webpack-config'\nimport { PagesManifest } from './webpack/plugins/pages-manifest-plugin'\nimport { writeBuildId } from './write-build-id'\nimport { normalizeLocalePath } from '../next-server/lib/i18n/normalize-locale-path'\nimport { isWebpack5 } from 'next/dist/compiled/webpack/webpack'\n\nconst staticCheckWorker = require.resolve('./utils')\n\nexport type SsgRoute = {\n  initialRevalidateSeconds: number | false\n  srcRoute: string | null\n  dataRoute: string\n}\n\nexport type DynamicSsgRoute = {\n  routeRegex: string\n  fallback: string | null | false\n  dataRoute: string\n  dataRouteRegex: string\n}\n\nexport type PrerenderManifest = {\n  version: 3\n  routes: { [route: string]: SsgRoute }\n  dynamicRoutes: { [route: string]: DynamicSsgRoute }\n  notFoundRoutes: string[]\n  preview: __ApiPreviewProps\n}\n\nexport default async function build(\n  dir: string,\n  conf = null,\n  reactProductionProfiling = false,\n  debugOutput = false\n): Promise<void> {\n  const nextBuildSpan = trace('next-build')\n\n  return nextBuildSpan.traceAsyncFn(async () => {\n    // attempt to load global env values so they are available in next.config.js\n    const { loadedEnvFiles } = nextBuildSpan\n      .traceChild('load-dotenv')\n      .traceFn(() => loadEnvConfig(dir, false, Log))\n\n    const config: NextConfig = await nextBuildSpan\n      .traceChild('load-next-config')\n      .traceAsyncFn(() => loadConfig(PHASE_PRODUCTION_BUILD, dir, conf))\n    const { target } = config\n    const buildId: string = await nextBuildSpan\n      .traceChild('generate-buildid')\n      .traceAsyncFn(() => generateBuildId(config.generateBuildId, nanoid))\n    const distDir = path.join(dir, config.distDir)\n\n    const customRoutes: CustomRoutes = await nextBuildSpan\n      .traceChild('load-custom-routes')\n      .traceAsyncFn(() => loadCustomRoutes(config))\n\n    const { headers, rewrites, redirects } = customRoutes\n\n    const cacheDir = path.join(distDir, 'cache')\n    if (ciEnvironment.isCI && !ciEnvironment.hasNextSupport) {\n      const hasCache = await fileExists(cacheDir)\n\n      if (!hasCache) {\n        // Intentionally not piping to stderr in case people fail in CI when\n        // stderr is detected.\n        console.log(\n          `${Log.prefixes.warn} No build cache found. Please configure build caching for faster rebuilds. Read more: https://nextjs.org/docs/messages/no-cache`\n        )\n      }\n    }\n\n    const telemetry = new Telemetry({ distDir })\n    setGlobal('telemetry', telemetry)\n\n    const publicDir = path.join(dir, 'public')\n    const pagesDir = findPagesDir(dir)\n    const hasPublicDir = await fileExists(publicDir)\n\n    telemetry.record(\n      eventCliSession(PHASE_PRODUCTION_BUILD, dir, {\n        webpackVersion: isWebpack5 ? 5 : 4,\n        cliCommand: 'build',\n        isSrcDir: path.relative(dir, pagesDir!).startsWith('src'),\n        hasNowJson: !!(await findUp('now.json', { cwd: dir })),\n        isCustomServer: null,\n      })\n    )\n\n    eventNextPlugins(path.resolve(dir)).then((events) =>\n      telemetry.record(events)\n    )\n\n    const ignoreTypeScriptErrors = Boolean(config.typescript?.ignoreBuildErrors)\n    const typeCheckStart = process.hrtime()\n    const typeCheckingSpinner = createSpinner({\n      prefixText: `${Log.prefixes.info} ${\n        ignoreTypeScriptErrors\n          ? 'Skipping validation of types'\n          : 'Checking validity of types'\n      }`,\n    })\n\n    const verifyResult = await nextBuildSpan\n      .traceChild('verify-typescript-setup')\n      .traceAsyncFn(() =>\n        verifyTypeScriptSetup(dir, pagesDir, !ignoreTypeScriptErrors, cacheDir)\n      )\n\n    const typeCheckEnd = process.hrtime(typeCheckStart)\n\n    if (!ignoreTypeScriptErrors) {\n      telemetry.record(\n        eventTypeCheckCompleted({\n          durationInSeconds: typeCheckEnd[0],\n          typescriptVersion: verifyResult.version,\n          inputFilesCount: verifyResult.result?.inputFilesCount,\n          totalFilesCount: verifyResult.result?.totalFilesCount,\n          incremental: verifyResult.result?.incremental,\n        })\n      )\n    }\n\n    if (typeCheckingSpinner) {\n      typeCheckingSpinner.stopAndPersist()\n    }\n\n    if (config.experimental.eslint) {\n      await nextBuildSpan\n        .traceChild('verify-and-lint')\n        .traceAsyncFn(async () => {\n          await verifyAndLint(\n            dir,\n            pagesDir,\n            config.experimental.cpus,\n            config.experimental.workerThreads\n          )\n        })\n    }\n\n    const buildSpinner = createSpinner({\n      prefixText: `${Log.prefixes.info} Creating an optimized production build`,\n    })\n\n    const isLikeServerless = isTargetLikeServerless(target)\n\n    const pagePaths: string[] = await nextBuildSpan\n      .traceChild('collect-pages')\n      .traceAsyncFn(() => collectPages(pagesDir, config.pageExtensions))\n\n    // needed for static exporting since we want to replace with HTML\n    // files\n    const allStaticPages = new Set<string>()\n    let allPageInfos = new Map<string, PageInfo>()\n\n    const previewProps: __ApiPreviewProps = {\n      previewModeId: crypto.randomBytes(16).toString('hex'),\n      previewModeSigningKey: crypto.randomBytes(32).toString('hex'),\n      previewModeEncryptionKey: crypto.randomBytes(32).toString('hex'),\n    }\n\n    const mappedPages = nextBuildSpan\n      .traceChild('create-pages-mapping')\n      .traceFn(() => createPagesMapping(pagePaths, config.pageExtensions))\n    const entrypoints = nextBuildSpan\n      .traceChild('create-entrypoints')\n      .traceFn(() =>\n        createEntrypoints(\n          mappedPages,\n          target,\n          buildId,\n          previewProps,\n          config,\n          loadedEnvFiles\n        )\n      )\n    const pageKeys = Object.keys(mappedPages)\n    const conflictingPublicFiles: string[] = []\n    const hasCustomErrorPage: boolean = mappedPages['/_error'].startsWith(\n      'private-next-pages'\n    )\n    const hasPages404 = Boolean(\n      mappedPages['/404'] &&\n        mappedPages['/404'].startsWith('private-next-pages')\n    )\n\n    if (hasPublicDir) {\n      const hasPublicUnderScoreNextDir = await fileExists(\n        path.join(publicDir, '_next')\n      )\n      if (hasPublicUnderScoreNextDir) {\n        throw new Error(PUBLIC_DIR_MIDDLEWARE_CONFLICT)\n      }\n    }\n\n    await nextBuildSpan\n      .traceChild('public-dir-conflict-check')\n      .traceAsyncFn(async () => {\n        // Check if pages conflict with files in `public`\n        // Only a page of public file can be served, not both.\n        for (const page in mappedPages) {\n          const hasPublicPageFile = await fileExists(\n            path.join(publicDir, page === '/' ? '/index' : page),\n            'file'\n          )\n          if (hasPublicPageFile) {\n            conflictingPublicFiles.push(page)\n          }\n        }\n\n        const numConflicting = conflictingPublicFiles.length\n\n        if (numConflicting) {\n          throw new Error(\n            `Conflicting public and page file${\n              numConflicting === 1 ? ' was' : 's were'\n            } found. https://nextjs.org/docs/messages/conflicting-public-file-page\\n${conflictingPublicFiles.join(\n              '\\n'\n            )}`\n          )\n        }\n      })\n\n    const nestedReservedPages = pageKeys.filter((page) => {\n      return (\n        page.match(/\\/(_app|_document|_error)$/) && path.dirname(page) !== '/'\n      )\n    })\n\n    if (nestedReservedPages.length) {\n      Log.warn(\n        `The following reserved Next.js pages were detected not directly under the pages directory:\\n` +\n          nestedReservedPages.join('\\n') +\n          `\\nSee more info here: https://nextjs.org/docs/messages/nested-reserved-page\\n`\n      )\n    }\n\n    const buildCustomRoute = (\n      r: {\n        source: string\n        locale?: false\n        basePath?: false\n        statusCode?: number\n        destination?: string\n      },\n      type: RouteType\n    ) => {\n      const keys: any[] = []\n\n      const routeRegex = pathToRegexp(r.source, keys, {\n        strict: true,\n        sensitive: false,\n        delimiter: '/', // default is `/#?`, but Next does not pass query info\n      })\n\n      return {\n        ...r,\n        ...(type === 'redirect'\n          ? {\n              statusCode: getRedirectStatus(r as Redirect),\n              permanent: undefined,\n            }\n          : {}),\n        regex: normalizeRouteRegex(routeRegex.source),\n      }\n    }\n\n    const routesManifestPath = path.join(distDir, ROUTES_MANIFEST)\n    const routesManifest: {\n      version: number\n      pages404: boolean\n      basePath: string\n      redirects: Array<ReturnType<typeof buildCustomRoute>>\n      rewrites:\n        | Array<ReturnType<typeof buildCustomRoute>>\n        | {\n            beforeFiles: Array<ReturnType<typeof buildCustomRoute>>\n            afterFiles: Array<ReturnType<typeof buildCustomRoute>>\n            fallback: Array<ReturnType<typeof buildCustomRoute>>\n          }\n      headers: Array<ReturnType<typeof buildCustomRoute>>\n      dynamicRoutes: Array<{\n        page: string\n        regex: string\n        namedRegex?: string\n        routeKeys?: { [key: string]: string }\n      }>\n      dataRoutes: Array<{\n        page: string\n        routeKeys?: { [key: string]: string }\n        dataRouteRegex: string\n        namedDataRouteRegex?: string\n      }>\n      i18n?: {\n        domains?: Array<{\n          http?: true\n          domain: string\n          locales?: string[]\n          defaultLocale: string\n        }>\n        locales: string[]\n        defaultLocale: string\n        localeDetection?: false\n      }\n    } = nextBuildSpan.traceChild('generate-routes-manifest').traceFn(() => ({\n      version: 3,\n      pages404: true,\n      basePath: config.basePath,\n      redirects: redirects.map((r: any) => buildCustomRoute(r, 'redirect')),\n      headers: headers.map((r: any) => buildCustomRoute(r, 'header')),\n      dynamicRoutes: getSortedRoutes(pageKeys)\n        .filter(isDynamicRoute)\n        .map((page) => {\n          const routeRegex = getRouteRegex(page)\n          return {\n            page,\n            regex: normalizeRouteRegex(routeRegex.re.source),\n            routeKeys: routeRegex.routeKeys,\n            namedRegex: routeRegex.namedRegex,\n          }\n        }),\n      dataRoutes: [],\n      i18n: config.i18n || undefined,\n    }))\n\n    if (rewrites.beforeFiles.length === 0 && rewrites.fallback.length === 0) {\n      routesManifest.rewrites = rewrites.afterFiles.map((r: any) =>\n        buildCustomRoute(r, 'rewrite')\n      )\n    } else {\n      routesManifest.rewrites = {\n        beforeFiles: rewrites.beforeFiles.map((r: any) =>\n          buildCustomRoute(r, 'rewrite')\n        ),\n        afterFiles: rewrites.afterFiles.map((r: any) =>\n          buildCustomRoute(r, 'rewrite')\n        ),\n        fallback: rewrites.fallback.map((r: any) =>\n          buildCustomRoute(r, 'rewrite')\n        ),\n      }\n    }\n    const combinedRewrites: Rewrite[] = [\n      ...rewrites.beforeFiles,\n      ...rewrites.afterFiles,\n      ...rewrites.fallback,\n    ]\n\n    const distDirCreated = await nextBuildSpan\n      .traceChild('create-dist-dir')\n      .traceAsyncFn(async () => {\n        try {\n          await promises.mkdir(distDir, { recursive: true })\n          return true\n        } catch (err) {\n          if (err.code === 'EPERM') {\n            return false\n          }\n          throw err\n        }\n      })\n\n    if (!distDirCreated || !(await isWriteable(distDir))) {\n      throw new Error(\n        '> Build directory is not writeable. https://nextjs.org/docs/messages/build-dir-not-writeable'\n      )\n    }\n\n    // We need to write the manifest with rewrites before build\n    // so serverless can import the manifest\n    await nextBuildSpan\n      .traceChild('write-routes-manifest')\n      .traceAsyncFn(() =>\n        promises.writeFile(\n          routesManifestPath,\n          JSON.stringify(routesManifest),\n          'utf8'\n        )\n      )\n\n    const manifestPath = path.join(\n      distDir,\n      isLikeServerless ? SERVERLESS_DIRECTORY : SERVER_DIRECTORY,\n      PAGES_MANIFEST\n    )\n\n    const requiredServerFiles = nextBuildSpan\n      .traceChild('generate-required-server-files')\n      .traceFn(() => ({\n        version: 1,\n        config: {\n          ...config,\n          compress: false,\n          configFile: undefined,\n        },\n        appDir: dir,\n        files: [\n          ROUTES_MANIFEST,\n          path.relative(distDir, manifestPath),\n          BUILD_MANIFEST,\n          PRERENDER_MANIFEST,\n          REACT_LOADABLE_MANIFEST,\n          config.optimizeFonts\n            ? path.join(\n                isLikeServerless ? SERVERLESS_DIRECTORY : SERVER_DIRECTORY,\n                FONT_MANIFEST\n              )\n            : null,\n          BUILD_ID_FILE,\n        ]\n          .filter(nonNullable)\n          .map((file) => path.join(config.distDir, file)),\n        ignore: [] as string[],\n      }))\n\n    const configs = await nextBuildSpan\n      .traceChild('generate-webpack-config')\n      .traceAsyncFn(() =>\n        Promise.all([\n          getBaseWebpackConfig(dir, {\n            buildId,\n            reactProductionProfiling,\n            isServer: false,\n            config,\n            target,\n            pagesDir,\n            entrypoints: entrypoints.client,\n            rewrites,\n          }),\n          getBaseWebpackConfig(dir, {\n            buildId,\n            reactProductionProfiling,\n            isServer: true,\n            config,\n            target,\n            pagesDir,\n            entrypoints: entrypoints.server,\n            rewrites,\n          }),\n        ])\n      )\n\n    const clientConfig = configs[0]\n\n    if (\n      clientConfig.optimization &&\n      (clientConfig.optimization.minimize !== true ||\n        (clientConfig.optimization.minimizer &&\n          clientConfig.optimization.minimizer.length === 0))\n    ) {\n      Log.warn(\n        `Production code optimization has been disabled in your project. Read more: https://nextjs.org/docs/messages/minification-disabled`\n      )\n    }\n\n    const webpackBuildStart = process.hrtime()\n\n    let result: CompilerResult = { warnings: [], errors: [] }\n    // We run client and server compilation separately when configured for\n    // memory constraint and for serverless to be able to load manifests\n    // produced in the client build\n    if (isLikeServerless || config.experimental.serialWebpackBuild) {\n      await nextBuildSpan\n        .traceChild('run-webpack-compiler')\n        .traceAsyncFn(async () => {\n          const clientResult = await runCompiler(clientConfig)\n          // Fail build if clientResult contains errors\n          if (clientResult.errors.length > 0) {\n            result = {\n              warnings: [...clientResult.warnings],\n              errors: [...clientResult.errors],\n            }\n          } else {\n            const serverResult = await runCompiler(configs[1])\n            result = {\n              warnings: [...clientResult.warnings, ...serverResult.warnings],\n              errors: [...clientResult.errors, ...serverResult.errors],\n            }\n          }\n        })\n    } else {\n      result = await nextBuildSpan\n        .traceChild('run-webpack-compiler')\n        .traceAsyncFn(() => runCompiler(configs))\n    }\n\n    const webpackBuildEnd = process.hrtime(webpackBuildStart)\n    if (buildSpinner) {\n      buildSpinner.stopAndPersist()\n    }\n\n    result = nextBuildSpan\n      .traceChild('format-webpack-messages')\n      .traceFn(() => formatWebpackMessages(result))\n\n    if (result.errors.length > 0) {\n      // Only keep the first error. Others are often indicative\n      // of the same problem, but confuse the reader with noise.\n      if (result.errors.length > 1) {\n        result.errors.length = 1\n      }\n      const error = result.errors.join('\\n\\n')\n\n      console.error(chalk.red('Failed to compile.\\n'))\n\n      if (\n        error.indexOf('private-next-pages') > -1 &&\n        error.indexOf('does not contain a default export') > -1\n      ) {\n        const page_name_regex = /'private-next-pages\\/(?<page_name>[^']*)'/\n        const parsed = page_name_regex.exec(error)\n        const page_name = parsed && parsed.groups && parsed.groups.page_name\n        throw new Error(\n          `webpack build failed: found page without a React Component as default export in pages/${page_name}\\n\\nSee https://nextjs.org/docs/messages/page-without-valid-component for more info.`\n        )\n      }\n\n      console.error(error)\n      console.error()\n\n      if (\n        error.indexOf('private-next-pages') > -1 ||\n        error.indexOf('__next_polyfill__') > -1\n      ) {\n        throw new Error(\n          '> webpack config.resolve.alias was incorrectly overridden. https://nextjs.org/docs/messages/invalid-resolve-alias'\n        )\n      }\n      throw new Error('> Build failed because of webpack errors')\n    } else {\n      telemetry.record(\n        eventBuildCompleted(pagePaths, {\n          durationInSeconds: webpackBuildEnd[0],\n        })\n      )\n\n      if (result.warnings.length > 0) {\n        Log.warn('Compiled with warnings\\n')\n        console.warn(result.warnings.join('\\n\\n'))\n        console.warn()\n      } else {\n        Log.info('Compiled successfully')\n      }\n    }\n\n    const postCompileSpinner = createSpinner({\n      prefixText: `${Log.prefixes.info} Collecting page data`,\n    })\n\n    const buildManifestPath = path.join(distDir, BUILD_MANIFEST)\n\n    const ssgPages = new Set<string>()\n    const ssgStaticFallbackPages = new Set<string>()\n    const ssgBlockingFallbackPages = new Set<string>()\n    const staticPages = new Set<string>()\n    const invalidPages = new Set<string>()\n    const hybridAmpPages = new Set<string>()\n    const serverPropsPages = new Set<string>()\n    const additionalSsgPaths = new Map<string, Array<string>>()\n    const additionalSsgPathsEncoded = new Map<string, Array<string>>()\n    const pageInfos = new Map<string, PageInfo>()\n    const pagesManifest = JSON.parse(\n      await promises.readFile(manifestPath, 'utf8')\n    ) as PagesManifest\n    const buildManifest = JSON.parse(\n      await promises.readFile(buildManifestPath, 'utf8')\n    ) as BuildManifest\n\n    const analysisBegin = process.hrtime()\n\n    const staticCheckSpan = nextBuildSpan.traceChild('static-check')\n    const {\n      customAppGetInitialProps,\n      namedExports,\n      isNextImageImported,\n      hasSsrAmpPages,\n      hasNonStaticErrorPage,\n    } = await staticCheckSpan.traceAsyncFn(async () => {\n      process.env.NEXT_PHASE = PHASE_PRODUCTION_BUILD\n\n      const staticCheckWorkers = new Worker(staticCheckWorker, {\n        numWorkers: config.experimental.cpus,\n        enableWorkerThreads: config.experimental.workerThreads,\n      }) as Worker & typeof import('./utils')\n\n      staticCheckWorkers.getStdout().pipe(process.stdout)\n      staticCheckWorkers.getStderr().pipe(process.stderr)\n\n      const runtimeEnvConfig = {\n        publicRuntimeConfig: config.publicRuntimeConfig,\n        serverRuntimeConfig: config.serverRuntimeConfig,\n      }\n\n      const nonStaticErrorPageSpan = staticCheckSpan.traceChild(\n        'check-static-error-page'\n      )\n      const nonStaticErrorPagePromise = nonStaticErrorPageSpan.traceAsyncFn(\n        async () =>\n          hasCustomErrorPage &&\n          (await staticCheckWorkers.hasCustomGetInitialProps(\n            '/_error',\n            distDir,\n            isLikeServerless,\n            runtimeEnvConfig,\n            false\n          ))\n      )\n      // we don't output _app in serverless mode so use _app export\n      // from _error instead\n      const appPageToCheck = isLikeServerless ? '/_error' : '/_app'\n\n      const customAppGetInitialPropsPromise = staticCheckWorkers.hasCustomGetInitialProps(\n        appPageToCheck,\n        distDir,\n        isLikeServerless,\n        runtimeEnvConfig,\n        true\n      )\n\n      const namedExportsPromise = staticCheckWorkers.getNamedExports(\n        appPageToCheck,\n        distDir,\n        isLikeServerless,\n        runtimeEnvConfig\n      )\n\n      // eslint-disable-next-line no-shadow\n      let isNextImageImported: boolean | undefined\n      // eslint-disable-next-line no-shadow\n      let hasSsrAmpPages = false\n\n      const computedManifestData = await computeFromManifest(\n        buildManifest,\n        distDir,\n        config.experimental.gzipSize\n      )\n      await Promise.all(\n        pageKeys.map(async (page) => {\n          const checkPageSpan = staticCheckSpan.traceChild('check-page', {\n            page,\n          })\n          return checkPageSpan.traceAsyncFn(async () => {\n            const actualPage = normalizePagePath(page)\n            const [selfSize, allSize] = await getJsPageSizeInKb(\n              actualPage,\n              distDir,\n              buildManifest,\n              config.experimental.gzipSize,\n              computedManifestData\n            )\n\n            let isSsg = false\n            let isStatic = false\n            let isHybridAmp = false\n            let ssgPageRoutes: string[] | null = null\n\n            const nonReservedPage = !page.match(\n              /^\\/(_app|_error|_document|api(\\/|$))/\n            )\n\n            if (nonReservedPage) {\n              try {\n                let isPageStaticSpan = checkPageSpan.traceChild(\n                  'is-page-static'\n                )\n                let workerResult = await isPageStaticSpan.traceAsyncFn(() => {\n                  return staticCheckWorkers.isPageStatic(\n                    page,\n                    distDir,\n                    isLikeServerless,\n                    runtimeEnvConfig,\n                    config.i18n?.locales,\n                    config.i18n?.defaultLocale,\n                    isPageStaticSpan.id\n                  )\n                })\n\n                if (\n                  workerResult.isStatic === false &&\n                  (workerResult.isHybridAmp || workerResult.isAmpOnly)\n                ) {\n                  hasSsrAmpPages = true\n                }\n\n                if (workerResult.isHybridAmp) {\n                  isHybridAmp = true\n                  hybridAmpPages.add(page)\n                }\n\n                if (workerResult.isNextImageImported) {\n                  isNextImageImported = true\n                }\n\n                if (workerResult.hasStaticProps) {\n                  ssgPages.add(page)\n                  isSsg = true\n\n                  if (\n                    workerResult.prerenderRoutes &&\n                    workerResult.encodedPrerenderRoutes\n                  ) {\n                    additionalSsgPaths.set(page, workerResult.prerenderRoutes)\n                    additionalSsgPathsEncoded.set(\n                      page,\n                      workerResult.encodedPrerenderRoutes\n                    )\n                    ssgPageRoutes = workerResult.prerenderRoutes\n                  }\n\n                  if (workerResult.prerenderFallback === 'blocking') {\n                    ssgBlockingFallbackPages.add(page)\n                  } else if (workerResult.prerenderFallback === true) {\n                    ssgStaticFallbackPages.add(page)\n                  }\n                } else if (workerResult.hasServerProps) {\n                  serverPropsPages.add(page)\n                } else if (\n                  workerResult.isStatic &&\n                  (await customAppGetInitialPropsPromise) === false\n                ) {\n                  staticPages.add(page)\n                  isStatic = true\n                }\n\n                if (hasPages404 && page === '/404') {\n                  if (!workerResult.isStatic && !workerResult.hasStaticProps) {\n                    throw new Error(\n                      `\\`pages/404\\` ${STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR}`\n                    )\n                  }\n                  // we need to ensure the 404 lambda is present since we use\n                  // it when _app has getInitialProps\n                  if (\n                    (await customAppGetInitialPropsPromise) &&\n                    !workerResult.hasStaticProps\n                  ) {\n                    staticPages.delete(page)\n                  }\n                }\n\n                if (\n                  STATIC_STATUS_PAGES.includes(page) &&\n                  !workerResult.isStatic &&\n                  !workerResult.hasStaticProps\n                ) {\n                  throw new Error(\n                    `\\`pages${page}\\` ${STATIC_STATUS_PAGE_GET_INITIAL_PROPS_ERROR}`\n                  )\n                }\n              } catch (err) {\n                if (err.message !== 'INVALID_DEFAULT_EXPORT') throw err\n                invalidPages.add(page)\n              }\n            }\n\n            pageInfos.set(page, {\n              size: selfSize,\n              totalSize: allSize,\n              static: isStatic,\n              isSsg,\n              isHybridAmp,\n              ssgPageRoutes,\n              initialRevalidateSeconds: false,\n            })\n          })\n        })\n      )\n      const returnValue = {\n        customAppGetInitialProps: await customAppGetInitialPropsPromise,\n        namedExports: await namedExportsPromise,\n        isNextImageImported,\n        hasSsrAmpPages,\n        hasNonStaticErrorPage: await nonStaticErrorPagePromise,\n      }\n\n      staticCheckWorkers.end()\n      return returnValue\n    })\n\n    if (customAppGetInitialProps) {\n      console.warn(\n        chalk.bold.yellow(`Warning: `) +\n          chalk.yellow(\n            `You have opted-out of Automatic Static Optimization due to \\`getInitialProps\\` in \\`pages/_app\\`. This does not opt-out pages with \\`getStaticProps\\``\n          )\n      )\n      console.warn(\n        'Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization\\n'\n      )\n    }\n\n    if (!hasSsrAmpPages) {\n      requiredServerFiles.ignore.push(\n        path.relative(\n          dir,\n          path.join(\n            path.dirname(\n              require.resolve(\n                'next/dist/compiled/@ampproject/toolbox-optimizer'\n              )\n            ),\n            '**/*'\n          )\n        )\n      )\n    }\n\n    if (serverPropsPages.size > 0 || ssgPages.size > 0) {\n      // We update the routes manifest after the build with the\n      // data routes since we can't determine these until after build\n      routesManifest.dataRoutes = getSortedRoutes([\n        ...serverPropsPages,\n        ...ssgPages,\n      ]).map((page) => {\n        const pagePath = normalizePagePath(page)\n        const dataRoute = path.posix.join(\n          '/_next/data',\n          buildId,\n          `${pagePath}.json`\n        )\n\n        let dataRouteRegex: string\n        let namedDataRouteRegex: string | undefined\n        let routeKeys: { [named: string]: string } | undefined\n\n        if (isDynamicRoute(page)) {\n          const routeRegex = getRouteRegex(dataRoute.replace(/\\.json$/, ''))\n\n          dataRouteRegex = normalizeRouteRegex(\n            routeRegex.re.source.replace(/\\(\\?:\\\\\\/\\)\\?\\$$/, '\\\\.json$')\n          )\n          namedDataRouteRegex = routeRegex.namedRegex!.replace(\n            /\\(\\?:\\/\\)\\?\\$$/,\n            '\\\\.json$'\n          )\n          routeKeys = routeRegex.routeKeys\n        } else {\n          dataRouteRegex = normalizeRouteRegex(\n            new RegExp(\n              `^${path.posix.join(\n                '/_next/data',\n                escapeStringRegexp(buildId),\n                `${pagePath}.json`\n              )}$`\n            ).source\n          )\n        }\n\n        return {\n          page,\n          routeKeys,\n          dataRouteRegex,\n          namedDataRouteRegex,\n        }\n      })\n\n      await promises.writeFile(\n        routesManifestPath,\n        JSON.stringify(routesManifest),\n        'utf8'\n      )\n    }\n\n    // Since custom _app.js can wrap the 404 page we have to opt-out of static optimization if it has getInitialProps\n    // Only export the static 404 when there is no /_error present\n    const useStatic404 =\n      !customAppGetInitialProps && (!hasNonStaticErrorPage || hasPages404)\n\n    if (invalidPages.size > 0) {\n      throw new Error(\n        `Build optimization failed: found page${\n          invalidPages.size === 1 ? '' : 's'\n        } without a React Component as default export in \\n${[...invalidPages]\n          .map((pg) => `pages${pg}`)\n          .join(\n            '\\n'\n          )}\\n\\nSee https://nextjs.org/docs/messages/page-without-valid-component for more info.\\n`\n      )\n    }\n\n    await writeBuildId(distDir, buildId)\n\n    if (config.experimental.optimizeCss) {\n      const cssFilePaths = getCssFilePaths(buildManifest)\n\n      requiredServerFiles.files.push(\n        ...cssFilePaths.map((filePath) => path.join(config.distDir, filePath))\n      )\n    }\n\n    await promises.writeFile(\n      path.join(distDir, SERVER_FILES_MANIFEST),\n      JSON.stringify(requiredServerFiles),\n      'utf8'\n    )\n\n    const finalPrerenderRoutes: { [route: string]: SsgRoute } = {}\n    const tbdPrerenderRoutes: string[] = []\n    let ssgNotFoundPaths: string[] = []\n\n    if (postCompileSpinner) postCompileSpinner.stopAndPersist()\n\n    const { i18n } = config\n\n    const usedStaticStatusPages = STATIC_STATUS_PAGES.filter(\n      (page) =>\n        mappedPages[page] && mappedPages[page].startsWith('private-next-pages')\n    )\n    usedStaticStatusPages.forEach((page) => {\n      if (!ssgPages.has(page)) {\n        staticPages.add(page)\n      }\n    })\n\n    const hasPages500 = usedStaticStatusPages.includes('/500')\n    const useDefaultStatic500 = !hasPages500 && !hasNonStaticErrorPage\n    const combinedPages = [...staticPages, ...ssgPages]\n\n    if (combinedPages.length > 0 || useStatic404 || useDefaultStatic500) {\n      const staticGenerationSpan = nextBuildSpan.traceChild('static-generation')\n      await staticGenerationSpan.traceAsyncFn(async () => {\n        detectConflictingPaths(\n          [\n            ...combinedPages,\n            ...pageKeys.filter((page) => !combinedPages.includes(page)),\n          ],\n          ssgPages,\n          additionalSsgPaths\n        )\n        const exportApp = require('../export').default\n        const exportOptions = {\n          silent: false,\n          buildExport: true,\n          threads: config.experimental.cpus,\n          pages: combinedPages,\n          outdir: path.join(distDir, 'export'),\n          statusMessage: 'Generating static pages',\n        }\n        const exportConfig: any = {\n          ...config,\n          initialPageRevalidationMap: {},\n          ssgNotFoundPaths: [] as string[],\n          // Default map will be the collection of automatic statically exported\n          // pages and incremental pages.\n          // n.b. we cannot handle this above in combinedPages because the dynamic\n          // page must be in the `pages` array, but not in the mapping.\n          exportPathMap: (defaultMap: any) => {\n            // Dynamically routed pages should be prerendered to be used as\n            // a client-side skeleton (fallback) while data is being fetched.\n            // This ensures the end-user never sees a 500 or slow response from the\n            // server.\n            //\n            // Note: prerendering disables automatic static optimization.\n            ssgPages.forEach((page) => {\n              if (isDynamicRoute(page)) {\n                tbdPrerenderRoutes.push(page)\n\n                if (ssgStaticFallbackPages.has(page)) {\n                  // Override the rendering for the dynamic page to be treated as a\n                  // fallback render.\n                  if (i18n) {\n                    defaultMap[`/${i18n.defaultLocale}${page}`] = {\n                      page,\n                      query: { __nextFallback: true },\n                    }\n                  } else {\n                    defaultMap[page] = { page, query: { __nextFallback: true } }\n                  }\n                } else {\n                  // Remove dynamically routed pages from the default path map when\n                  // fallback behavior is disabled.\n                  delete defaultMap[page]\n                }\n              }\n            })\n            // Append the \"well-known\" routes we should prerender for, e.g. blog\n            // post slugs.\n            additionalSsgPaths.forEach((routes, page) => {\n              const encodedRoutes = additionalSsgPathsEncoded.get(page)\n\n              routes.forEach((route, routeIdx) => {\n                defaultMap[route] = {\n                  page,\n                  query: { __nextSsgPath: encodedRoutes?.[routeIdx] },\n                }\n              })\n            })\n\n            if (useStatic404) {\n              defaultMap['/404'] = {\n                page: hasPages404 ? '/404' : '/_error',\n              }\n            }\n\n            if (useDefaultStatic500) {\n              defaultMap['/500'] = {\n                page: '/_error',\n              }\n            }\n\n            if (i18n) {\n              for (const page of [\n                ...staticPages,\n                ...ssgPages,\n                ...(useStatic404 ? ['/404'] : []),\n                ...(useDefaultStatic500 ? ['/500'] : []),\n              ]) {\n                const isSsg = ssgPages.has(page)\n                const isDynamic = isDynamicRoute(page)\n                const isFallback = isSsg && ssgStaticFallbackPages.has(page)\n\n                for (const locale of i18n.locales) {\n                  // skip fallback generation for SSG pages without fallback mode\n                  if (isSsg && isDynamic && !isFallback) continue\n                  const outputPath = `/${locale}${page === '/' ? '' : page}`\n\n                  defaultMap[outputPath] = {\n                    page: defaultMap[page]?.page || page,\n                    query: { __nextLocale: locale },\n                  }\n\n                  if (isFallback) {\n                    defaultMap[outputPath].query.__nextFallback = true\n                  }\n                }\n\n                if (isSsg) {\n                  // remove non-locale prefixed variant from defaultMap\n                  delete defaultMap[page]\n                }\n              }\n            }\n            return defaultMap\n          },\n        }\n\n        await exportApp(dir, exportOptions, exportConfig)\n\n        const postBuildSpinner = createSpinner({\n          prefixText: `${Log.prefixes.info} Finalizing page optimization`,\n        })\n        ssgNotFoundPaths = exportConfig.ssgNotFoundPaths\n\n        // remove server bundles that were exported\n        for (const page of staticPages) {\n          const serverBundle = getPagePath(page, distDir, isLikeServerless)\n          await promises.unlink(serverBundle)\n        }\n        const serverOutputDir = path.join(\n          distDir,\n          isLikeServerless ? SERVERLESS_DIRECTORY : SERVER_DIRECTORY\n        )\n\n        const moveExportedPage = async (\n          originPage: string,\n          page: string,\n          file: string,\n          isSsg: boolean,\n          ext: 'html' | 'json',\n          additionalSsgFile = false\n        ) => {\n          return staticGenerationSpan\n            .traceChild('move-exported-page')\n            .traceAsyncFn(async () => {\n              file = `${file}.${ext}`\n              const orig = path.join(exportOptions.outdir, file)\n              const pagePath = getPagePath(\n                originPage,\n                distDir,\n                isLikeServerless\n              )\n\n              const relativeDest = path\n                .relative(\n                  serverOutputDir,\n                  path.join(\n                    path.join(\n                      pagePath,\n                      // strip leading / and then recurse number of nested dirs\n                      // to place from base folder\n                      originPage\n                        .substr(1)\n                        .split('/')\n                        .map(() => '..')\n                        .join('/')\n                    ),\n                    file\n                  )\n                )\n                .replace(/\\\\/g, '/')\n\n              const dest = path.join(\n                distDir,\n                isLikeServerless ? SERVERLESS_DIRECTORY : SERVER_DIRECTORY,\n                relativeDest\n              )\n\n              if (\n                !isSsg &&\n                !(\n                  // don't add static status page to manifest if it's\n                  // the default generated version e.g. no pages/500\n                  (\n                    STATIC_STATUS_PAGES.includes(page) &&\n                    !usedStaticStatusPages.includes(page)\n                  )\n                )\n              ) {\n                pagesManifest[page] = relativeDest\n              }\n\n              const isNotFound = ssgNotFoundPaths.includes(page)\n\n              // for SSG files with i18n the non-prerendered variants are\n              // output with the locale prefixed so don't attempt moving\n              // without the prefix\n              if ((!i18n || additionalSsgFile) && !isNotFound) {\n                await promises.mkdir(path.dirname(dest), { recursive: true })\n                await promises.rename(orig, dest)\n              } else if (i18n && !isSsg) {\n                // this will be updated with the locale prefixed variant\n                // since all files are output with the locale prefix\n                delete pagesManifest[page]\n              }\n\n              if (i18n) {\n                if (additionalSsgFile) return\n\n                for (const locale of i18n.locales) {\n                  const curPath = `/${locale}${page === '/' ? '' : page}`\n                  const localeExt = page === '/' ? path.extname(file) : ''\n                  const relativeDestNoPages = relativeDest.substr(\n                    'pages/'.length\n                  )\n\n                  if (isSsg && ssgNotFoundPaths.includes(curPath)) {\n                    continue\n                  }\n\n                  const updatedRelativeDest = path\n                    .join(\n                      'pages',\n                      locale + localeExt,\n                      // if it's the top-most index page we want it to be locale.EXT\n                      // instead of locale/index.html\n                      page === '/' ? '' : relativeDestNoPages\n                    )\n                    .replace(/\\\\/g, '/')\n\n                  const updatedOrig = path.join(\n                    exportOptions.outdir,\n                    locale + localeExt,\n                    page === '/' ? '' : file\n                  )\n                  const updatedDest = path.join(\n                    distDir,\n                    isLikeServerless ? SERVERLESS_DIRECTORY : SERVER_DIRECTORY,\n                    updatedRelativeDest\n                  )\n\n                  if (!isSsg) {\n                    pagesManifest[curPath] = updatedRelativeDest\n                  }\n                  await promises.mkdir(path.dirname(updatedDest), {\n                    recursive: true,\n                  })\n                  await promises.rename(updatedOrig, updatedDest)\n                }\n              }\n            })\n        }\n\n        // Only move /404 to /404 when there is no custom 404 as in that case we don't know about the 404 page\n        if (!hasPages404 && useStatic404) {\n          await moveExportedPage('/_error', '/404', '/404', false, 'html')\n        }\n\n        if (useDefaultStatic500) {\n          await moveExportedPage('/_error', '/500', '/500', false, 'html')\n        }\n\n        for (const page of combinedPages) {\n          const isSsg = ssgPages.has(page)\n          const isStaticSsgFallback = ssgStaticFallbackPages.has(page)\n          const isDynamic = isDynamicRoute(page)\n          const hasAmp = hybridAmpPages.has(page)\n          const file = normalizePagePath(page)\n\n          // The dynamic version of SSG pages are only prerendered if the\n          // fallback is enabled. Below, we handle the specific prerenders\n          // of these.\n          const hasHtmlOutput = !(isSsg && isDynamic && !isStaticSsgFallback)\n\n          if (hasHtmlOutput) {\n            await moveExportedPage(page, page, file, isSsg, 'html')\n          }\n\n          if (hasAmp && (!isSsg || (isSsg && !isDynamic))) {\n            const ampPage = `${file}.amp`\n            await moveExportedPage(page, ampPage, ampPage, isSsg, 'html')\n\n            if (isSsg) {\n              await moveExportedPage(page, ampPage, ampPage, isSsg, 'json')\n            }\n          }\n\n          if (isSsg) {\n            // For a non-dynamic SSG page, we must copy its data file\n            // from export, we already moved the HTML file above\n            if (!isDynamic) {\n              await moveExportedPage(page, page, file, isSsg, 'json')\n\n              if (i18n) {\n                // TODO: do we want to show all locale variants in build output\n                for (const locale of i18n.locales) {\n                  const localePage = `/${locale}${page === '/' ? '' : page}`\n\n                  if (!ssgNotFoundPaths.includes(localePage)) {\n                    finalPrerenderRoutes[localePage] = {\n                      initialRevalidateSeconds:\n                        exportConfig.initialPageRevalidationMap[localePage],\n                      srcRoute: null,\n                      dataRoute: path.posix.join(\n                        '/_next/data',\n                        buildId,\n                        `${file}.json`\n                      ),\n                    }\n                  }\n                }\n              } else {\n                finalPrerenderRoutes[page] = {\n                  initialRevalidateSeconds:\n                    exportConfig.initialPageRevalidationMap[page],\n                  srcRoute: null,\n                  dataRoute: path.posix.join(\n                    '/_next/data',\n                    buildId,\n                    `${file}.json`\n                  ),\n                }\n              }\n              // Set Page Revalidation Interval\n              const pageInfo = pageInfos.get(page)\n              if (pageInfo) {\n                pageInfo.initialRevalidateSeconds =\n                  exportConfig.initialPageRevalidationMap[page]\n                pageInfos.set(page, pageInfo)\n              }\n            } else {\n              // For a dynamic SSG page, we did not copy its data exports and only\n              // copy the fallback HTML file (if present).\n              // We must also copy specific versions of this page as defined by\n              // `getStaticPaths` (additionalSsgPaths).\n              const extraRoutes = additionalSsgPaths.get(page) || []\n              for (const route of extraRoutes) {\n                const pageFile = normalizePagePath(route)\n                await moveExportedPage(\n                  page,\n                  route,\n                  pageFile,\n                  isSsg,\n                  'html',\n                  true\n                )\n                await moveExportedPage(\n                  page,\n                  route,\n                  pageFile,\n                  isSsg,\n                  'json',\n                  true\n                )\n\n                if (hasAmp) {\n                  const ampPage = `${pageFile}.amp`\n                  await moveExportedPage(\n                    page,\n                    ampPage,\n                    ampPage,\n                    isSsg,\n                    'html',\n                    true\n                  )\n                  await moveExportedPage(\n                    page,\n                    ampPage,\n                    ampPage,\n                    isSsg,\n                    'json',\n                    true\n                  )\n                }\n\n                finalPrerenderRoutes[route] = {\n                  initialRevalidateSeconds:\n                    exportConfig.initialPageRevalidationMap[route],\n                  srcRoute: page,\n                  dataRoute: path.posix.join(\n                    '/_next/data',\n                    buildId,\n                    `${normalizePagePath(route)}.json`\n                  ),\n                }\n\n                // Set route Revalidation Interval\n                const pageInfo = pageInfos.get(route)\n                if (pageInfo) {\n                  pageInfo.initialRevalidateSeconds =\n                    exportConfig.initialPageRevalidationMap[route]\n                  pageInfos.set(route, pageInfo)\n                }\n              }\n            }\n          }\n        }\n\n        // remove temporary export folder\n        await recursiveDelete(exportOptions.outdir)\n        await promises.rmdir(exportOptions.outdir)\n        await promises.writeFile(\n          manifestPath,\n          JSON.stringify(pagesManifest, null, 2),\n          'utf8'\n        )\n\n        if (postBuildSpinner) postBuildSpinner.stopAndPersist()\n        console.log()\n      })\n    }\n\n    const analysisEnd = process.hrtime(analysisBegin)\n    telemetry.record(\n      eventBuildOptimize(pagePaths, {\n        durationInSeconds: analysisEnd[0],\n        staticPageCount: staticPages.size,\n        staticPropsPageCount: ssgPages.size,\n        serverPropsPageCount: serverPropsPages.size,\n        ssrPageCount:\n          pagePaths.length -\n          (staticPages.size + ssgPages.size + serverPropsPages.size),\n        hasStatic404: useStatic404,\n        hasReportWebVitals: namedExports?.includes('reportWebVitals') ?? false,\n        rewritesCount: combinedRewrites.length,\n        headersCount: headers.length,\n        redirectsCount: redirects.length - 1, // reduce one for trailing slash\n        headersWithHasCount: headers.filter((r: any) => !!r.has).length,\n        rewritesWithHasCount: combinedRewrites.filter((r: any) => !!r.has)\n          .length,\n        redirectsWithHasCount: redirects.filter((r: any) => !!r.has).length,\n      })\n    )\n\n    if (ssgPages.size > 0) {\n      const finalDynamicRoutes: PrerenderManifest['dynamicRoutes'] = {}\n      tbdPrerenderRoutes.forEach((tbdRoute) => {\n        const normalizedRoute = normalizePagePath(tbdRoute)\n        const dataRoute = path.posix.join(\n          '/_next/data',\n          buildId,\n          `${normalizedRoute}.json`\n        )\n\n        finalDynamicRoutes[tbdRoute] = {\n          routeRegex: normalizeRouteRegex(getRouteRegex(tbdRoute).re.source),\n          dataRoute,\n          fallback: ssgBlockingFallbackPages.has(tbdRoute)\n            ? null\n            : ssgStaticFallbackPages.has(tbdRoute)\n            ? `${normalizedRoute}.html`\n            : false,\n          dataRouteRegex: normalizeRouteRegex(\n            getRouteRegex(dataRoute.replace(/\\.json$/, '')).re.source.replace(\n              /\\(\\?:\\\\\\/\\)\\?\\$$/,\n              '\\\\.json$'\n            )\n          ),\n        }\n      })\n      const prerenderManifest: PrerenderManifest = {\n        version: 3,\n        routes: finalPrerenderRoutes,\n        dynamicRoutes: finalDynamicRoutes,\n        notFoundRoutes: ssgNotFoundPaths,\n        preview: previewProps,\n      }\n\n      await promises.writeFile(\n        path.join(distDir, PRERENDER_MANIFEST),\n        JSON.stringify(prerenderManifest),\n        'utf8'\n      )\n      await generateClientSsgManifest(prerenderManifest, {\n        distDir,\n        buildId,\n        locales: config.i18n?.locales || [],\n      })\n    } else {\n      const prerenderManifest: PrerenderManifest = {\n        version: 3,\n        routes: {},\n        dynamicRoutes: {},\n        preview: previewProps,\n        notFoundRoutes: [],\n      }\n      await promises.writeFile(\n        path.join(distDir, PRERENDER_MANIFEST),\n        JSON.stringify(prerenderManifest),\n        'utf8'\n      )\n    }\n\n    const images = { ...config.images }\n    const { deviceSizes, imageSizes } = images\n    images.sizes = [...deviceSizes, ...imageSizes]\n\n    await promises.writeFile(\n      path.join(distDir, IMAGES_MANIFEST),\n      JSON.stringify({\n        version: 1,\n        images,\n      }),\n      'utf8'\n    )\n    await promises.writeFile(\n      path.join(distDir, EXPORT_MARKER),\n      JSON.stringify({\n        version: 1,\n        hasExportPathMap: typeof config.exportPathMap === 'function',\n        exportTrailingSlash: config.trailingSlash === true,\n        isNextImageImported: isNextImageImported === true,\n      }),\n      'utf8'\n    )\n    await promises.unlink(path.join(distDir, EXPORT_DETAIL)).catch((err) => {\n      if (err.code === 'ENOENT') {\n        return Promise.resolve()\n      }\n      return Promise.reject(err)\n    })\n\n    staticPages.forEach((pg) => allStaticPages.add(pg))\n    pageInfos.forEach((info: PageInfo, key: string) => {\n      allPageInfos.set(key, info)\n    })\n\n    await nextBuildSpan.traceChild('print-tree-view').traceAsyncFn(() =>\n      printTreeView(Object.keys(mappedPages), allPageInfos, isLikeServerless, {\n        distPath: distDir,\n        buildId: buildId,\n        pagesDir,\n        useStatic404,\n        pageExtensions: config.pageExtensions,\n        buildManifest,\n        gzipSize: config.experimental.gzipSize,\n      })\n    )\n\n    if (debugOutput) {\n      nextBuildSpan\n        .traceChild('print-custom-routes')\n        .traceFn(() => printCustomRoutes({ redirects, rewrites, headers }))\n    }\n\n    if (config.analyticsId) {\n      console.log(\n        chalk.bold.green('Next.js Analytics') +\n          ' is enabled for this production build. ' +\n          \"You'll receive a Real Experience Score computed by all of your visitors.\"\n      )\n      console.log('')\n    }\n\n    await nextBuildSpan\n      .traceChild('telemetry-flush')\n      .traceAsyncFn(() => telemetry.flush())\n  })\n}\n\nexport type ClientSsgManifest = Set<string>\n\nfunction generateClientSsgManifest(\n  prerenderManifest: PrerenderManifest,\n  {\n    buildId,\n    distDir,\n    locales,\n  }: { buildId: string; distDir: string; locales: string[] }\n) {\n  const ssgPages: ClientSsgManifest = new Set<string>([\n    ...Object.entries(prerenderManifest.routes)\n      // Filter out dynamic routes\n      .filter(([, { srcRoute }]) => srcRoute == null)\n      .map(([route]) => normalizeLocalePath(route, locales).pathname),\n    ...Object.keys(prerenderManifest.dynamicRoutes),\n  ])\n\n  const clientSsgManifestContent = `self.__SSG_MANIFEST=${devalue(\n    ssgPages\n  )};self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB()`\n\n  writeFileSync(\n    path.join(distDir, CLIENT_STATIC_FILES_PATH, buildId, '_ssgManifest.js'),\n    clientSsgManifestContent\n  )\n}\n"]}