entries.js.map 9.91 KB
Newer Older
1
{"version":3,"sources":["../../build/entries.ts"],"names":["createPagesMapping","pagePaths","extensions","previousPages","pages","reduce","result","pagePath","page","replace","RegExp","join","pageKey","chalk","cyan","PAGES_DIR_ALIAS","createEntrypoints","target","buildId","previewMode","config","loadedEnvFiles","client","server","hasRuntimeConfig","Object","keys","publicRuntimeConfig","length","serverRuntimeConfig","defaultServerlessOptions","absoluteAppPath","absoluteDocumentPath","absoluteErrorPath","absolute404Path","distDir","DOT_NEXT_ALIAS","assetPrefix","generateEtags","poweredByHeader","canonicalBase","amp","basePath","runtimeConfig","JSON","stringify","previewProps","Buffer","from","toString","i18n","forEach","absolutePagePath","bundleFile","isApiRoute","match","API_ROUTE","clientBundlePath","posix","serverBundlePath","isLikeServerless","serverlessLoaderOptions","pageLoaderOpts","pageLoader","require","resolve"],"mappings":"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","sourcesContent":["import chalk from 'chalk'\nimport { posix, join } from 'path'\nimport { stringify } from 'querystring'\nimport { API_ROUTE, DOT_NEXT_ALIAS, PAGES_DIR_ALIAS } from '../lib/constants'\nimport { __ApiPreviewProps } from '../next-server/server/api-utils'\nimport { isTargetLikeServerless } from '../next-server/server/config'\nimport { normalizePagePath } from '../next-server/server/normalize-page-path'\nimport { warn } from './output/log'\nimport { ClientPagesLoaderOptions } from './webpack/loaders/next-client-pages-loader'\nimport { ServerlessLoaderQuery } from './webpack/loaders/next-serverless-loader'\nimport { LoadedEnvFiles } from '@next/env'\nimport { NextConfig } from '../next-server/server/config'\n\ntype PagesMapping = {\n  [page: string]: string\n}\n\nexport function createPagesMapping(\n  pagePaths: string[],\n  extensions: string[]\n): PagesMapping {\n  const previousPages: PagesMapping = {}\n  const pages: PagesMapping = pagePaths.reduce(\n    (result: PagesMapping, pagePath): PagesMapping => {\n      let page = `${pagePath\n        .replace(new RegExp(`\\\\.+(${extensions.join('|')})$`), '')\n        .replace(/\\\\/g, '/')}`.replace(/\\/index$/, '')\n\n      const pageKey = page === '' ? '/' : page\n\n      if (pageKey in result) {\n        warn(\n          `Duplicate page detected. ${chalk.cyan(\n            join('pages', previousPages[pageKey])\n          )} and ${chalk.cyan(\n            join('pages', pagePath)\n          )} both resolve to ${chalk.cyan(pageKey)}.`\n        )\n      } else {\n        previousPages[pageKey] = pagePath\n      }\n      result[pageKey] = join(PAGES_DIR_ALIAS, pagePath).replace(/\\\\/g, '/')\n      return result\n    },\n    {}\n  )\n\n  pages['/_app'] = pages['/_app'] || 'next/dist/pages/_app'\n  pages['/_error'] = pages['/_error'] || 'next/dist/pages/_error'\n  pages['/_document'] = pages['/_document'] || 'next/dist/pages/_document'\n\n  return pages\n}\n\nexport type WebpackEntrypoints = {\n  [bundle: string]:\n    | string\n    | string[]\n    | {\n        import: string | string[]\n        dependOn?: string | string[]\n      }\n}\n\ntype Entrypoints = {\n  client: WebpackEntrypoints\n  server: WebpackEntrypoints\n}\n\nexport function createEntrypoints(\n  pages: PagesMapping,\n  target: 'server' | 'serverless' | 'experimental-serverless-trace',\n  buildId: string,\n  previewMode: __ApiPreviewProps,\n  config: NextConfig,\n  loadedEnvFiles: LoadedEnvFiles\n): Entrypoints {\n  const client: WebpackEntrypoints = {}\n  const server: WebpackEntrypoints = {}\n\n  const hasRuntimeConfig =\n    Object.keys(config.publicRuntimeConfig).length > 0 ||\n    Object.keys(config.serverRuntimeConfig).length > 0\n\n  const defaultServerlessOptions = {\n    absoluteAppPath: pages['/_app'],\n    absoluteDocumentPath: pages['/_document'],\n    absoluteErrorPath: pages['/_error'],\n    absolute404Path: pages['/404'] || '',\n    distDir: DOT_NEXT_ALIAS,\n    buildId,\n    assetPrefix: config.assetPrefix,\n    generateEtags: config.generateEtags,\n    poweredByHeader: config.poweredByHeader,\n    canonicalBase: config.amp.canonicalBase,\n    basePath: config.basePath,\n    runtimeConfig: hasRuntimeConfig\n      ? JSON.stringify({\n          publicRuntimeConfig: config.publicRuntimeConfig,\n          serverRuntimeConfig: config.serverRuntimeConfig,\n        })\n      : '',\n    previewProps: JSON.stringify(previewMode),\n    // base64 encode to make sure contents don't break webpack URL loading\n    loadedEnvFiles: Buffer.from(JSON.stringify(loadedEnvFiles)).toString(\n      'base64'\n    ),\n    i18n: config.i18n ? JSON.stringify(config.i18n) : '',\n  }\n\n  Object.keys(pages).forEach((page) => {\n    const absolutePagePath = pages[page]\n    const bundleFile = normalizePagePath(page)\n    const isApiRoute = page.match(API_ROUTE)\n\n    const clientBundlePath = posix.join('pages', bundleFile)\n    const serverBundlePath = posix.join('pages', bundleFile)\n\n    const isLikeServerless = isTargetLikeServerless(target)\n\n    if (isApiRoute && isLikeServerless) {\n      const serverlessLoaderOptions: ServerlessLoaderQuery = {\n        page,\n        absolutePagePath,\n        ...defaultServerlessOptions,\n      }\n      server[serverBundlePath] = `next-serverless-loader?${stringify(\n        serverlessLoaderOptions\n      )}!`\n    } else if (isApiRoute || target === 'server') {\n      server[serverBundlePath] = [absolutePagePath]\n    } else if (isLikeServerless && page !== '/_app' && page !== '/_document') {\n      const serverlessLoaderOptions: ServerlessLoaderQuery = {\n        page,\n        absolutePagePath,\n        ...defaultServerlessOptions,\n      }\n      server[serverBundlePath] = `next-serverless-loader?${stringify(\n        serverlessLoaderOptions\n      )}!`\n    }\n\n    if (page === '/_document') {\n      return\n    }\n\n    if (!isApiRoute) {\n      const pageLoaderOpts: ClientPagesLoaderOptions = {\n        page,\n        absolutePagePath,\n      }\n      const pageLoader = `next-client-pages-loader?${stringify(\n        pageLoaderOpts\n      )}!`\n\n      // Make sure next/router is a dependency of _app or else chunk splitting\n      // might cause the router to not be able to load causing hydration\n      // to fail\n\n      client[clientBundlePath] =\n        page === '/_app'\n          ? [pageLoader, require.resolve('../client/router')]\n          : pageLoader\n    }\n  })\n\n  return {\n    client,\n    server,\n  }\n}\n"]}