next 15.4.2 → 15.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/bin/next +1 -1
  2. package/dist/build/index.js +2 -2
  3. package/dist/build/swc/generated-native.d.ts +21 -10
  4. package/dist/build/swc/index.js +3 -3
  5. package/dist/build/swc/index.js.map +1 -1
  6. package/dist/build/swc/types.d.ts +8 -4
  7. package/dist/build/templates/app-page.js +1 -1
  8. package/dist/build/templates/app-page.js.map +1 -1
  9. package/dist/build/templates/app-route.js +1 -1
  10. package/dist/build/templates/app-route.js.map +1 -1
  11. package/dist/build/templates/pages.js +11 -9
  12. package/dist/build/templates/pages.js.map +1 -1
  13. package/dist/build/turbopack-build/impl.js +5 -3
  14. package/dist/build/turbopack-build/impl.js.map +1 -1
  15. package/dist/build/webpack/loaders/css-loader/src/utils.js +3 -5
  16. package/dist/build/webpack/loaders/css-loader/src/utils.js.map +1 -1
  17. package/dist/build/webpack/loaders/metadata/resolve-route-data.js +4 -4
  18. package/dist/build/webpack/loaders/metadata/resolve-route-data.js.map +1 -1
  19. package/dist/build/webpack-config.js +2 -2
  20. package/dist/client/app-bootstrap.js +1 -1
  21. package/dist/client/index.js +1 -1
  22. package/dist/compiled/next-server/pages-api-turbo.runtime.dev.js +1 -1
  23. package/dist/compiled/next-server/pages-api-turbo.runtime.dev.js.map +1 -1
  24. package/dist/compiled/next-server/pages-turbo.runtime.dev.js +1 -1
  25. package/dist/compiled/next-server/pages-turbo.runtime.dev.js.map +1 -1
  26. package/dist/esm/build/index.js +2 -2
  27. package/dist/esm/build/swc/generated-native.d.ts +21 -10
  28. package/dist/esm/build/swc/index.js +3 -3
  29. package/dist/esm/build/swc/index.js.map +1 -1
  30. package/dist/esm/build/swc/types.js.map +1 -1
  31. package/dist/esm/build/templates/app-page.js +1 -1
  32. package/dist/esm/build/templates/app-page.js.map +1 -1
  33. package/dist/esm/build/templates/app-route.js +1 -1
  34. package/dist/esm/build/templates/app-route.js.map +1 -1
  35. package/dist/esm/build/templates/pages.js +11 -9
  36. package/dist/esm/build/templates/pages.js.map +1 -1
  37. package/dist/esm/build/turbopack-build/impl.js +5 -3
  38. package/dist/esm/build/turbopack-build/impl.js.map +1 -1
  39. package/dist/esm/build/webpack/loaders/css-loader/src/utils.js +1 -3
  40. package/dist/esm/build/webpack/loaders/css-loader/src/utils.js.map +1 -1
  41. package/dist/esm/build/webpack/loaders/metadata/resolve-route-data.js +4 -4
  42. package/dist/esm/build/webpack/loaders/metadata/resolve-route-data.js.map +1 -1
  43. package/dist/esm/build/webpack-config.js +2 -2
  44. package/dist/esm/client/app-bootstrap.js +1 -1
  45. package/dist/esm/client/index.js +1 -1
  46. package/dist/esm/lib/normalize-path.js +6 -0
  47. package/dist/esm/lib/normalize-path.js.map +1 -0
  48. package/dist/esm/server/dev/hot-reloader-turbopack.js +6 -4
  49. package/dist/esm/server/dev/hot-reloader-turbopack.js.map +1 -1
  50. package/dist/esm/server/dev/hot-reloader-webpack.js +1 -1
  51. package/dist/esm/server/dev/next-dev-server.js +3 -1
  52. package/dist/esm/server/dev/next-dev-server.js.map +1 -1
  53. package/dist/esm/server/lib/app-info-log.js +1 -1
  54. package/dist/esm/server/lib/router-utils/setup-dev-bundler.js +6 -1
  55. package/dist/esm/server/lib/router-utils/setup-dev-bundler.js.map +1 -1
  56. package/dist/esm/server/lib/start-server.js +1 -1
  57. package/dist/esm/shared/lib/canary-only.js +1 -1
  58. package/dist/lib/normalize-path.d.ts +1 -0
  59. package/dist/lib/normalize-path.js +21 -0
  60. package/dist/lib/normalize-path.js.map +1 -0
  61. package/dist/server/dev/hot-reloader-turbopack.js +5 -3
  62. package/dist/server/dev/hot-reloader-turbopack.js.map +1 -1
  63. package/dist/server/dev/hot-reloader-webpack.js +1 -1
  64. package/dist/server/dev/next-dev-server.js +3 -1
  65. package/dist/server/dev/next-dev-server.js.map +1 -1
  66. package/dist/server/lib/app-info-log.js +1 -1
  67. package/dist/server/lib/router-utils/setup-dev-bundler.js +6 -1
  68. package/dist/server/lib/router-utils/setup-dev-bundler.js.map +1 -1
  69. package/dist/server/lib/start-server.js +1 -1
  70. package/dist/shared/lib/canary-only.js +1 -1
  71. package/dist/telemetry/anonymous-meta.js +1 -1
  72. package/dist/telemetry/events/session-stopped.js +2 -2
  73. package/dist/telemetry/events/version.js +2 -2
  74. package/package.json +15 -15
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/build/templates/pages.ts"],"sourcesContent":["import type { IncomingMessage, ServerResponse } from 'node:http'\nimport type { ParsedUrlQuery } from 'node:querystring'\nimport { PagesRouteModule } from '../../server/route-modules/pages/module.compiled'\nimport { RouteKind } from '../../server/route-kind'\nimport { BaseServerSpan } from '../../server/lib/trace/constants'\nimport { getTracer, SpanKind, type Span } from '../../server/lib/trace/tracer'\nimport { formatUrl } from '../../shared/lib/router/utils/format-url'\nimport { addRequestMeta, getRequestMeta } from '../../server/request-meta'\nimport { interopDefault } from '../../server/app-render/interop-default'\nimport { getRevalidateReason } from '../../server/instrumentation/utils'\nimport { normalizeDataPath } from '../../shared/lib/page-path/normalize-data-path'\nimport {\n CachedRouteKind,\n type CachedPageValue,\n type CachedRedirectValue,\n type ResponseCacheEntry,\n type ResponseGenerator,\n} from '../../server/response-cache'\n\nimport { hoist } from './helpers'\n\n// Import the app and document modules.\nimport * as document from 'VAR_MODULE_DOCUMENT'\nimport * as app from 'VAR_MODULE_APP'\n\n// Import the userland code.\nimport * as userland from 'VAR_USERLAND'\nimport {\n getCacheControlHeader,\n type CacheControl,\n} from '../../server/lib/cache-control'\nimport { normalizeRepeatedSlashes } from '../../shared/lib/utils'\nimport { getRedirectStatus } from '../../lib/redirect-status'\nimport { CACHE_ONE_YEAR } from '../../lib/constants'\nimport { sendRenderResult } from '../../server/send-payload'\nimport RenderResult from '../../server/render-result'\nimport { toResponseCacheEntry } from '../../server/response-cache/utils'\nimport { NoFallbackError } from '../../shared/lib/no-fallback-error.external'\nimport { RedirectStatusCode } from '../../client/components/redirect-status-code'\nimport { isBot } from '../../shared/lib/router/utils/is-bot'\nimport { addPathPrefix } from '../../shared/lib/router/utils/add-path-prefix'\nimport { removeTrailingSlash } from '../../shared/lib/router/utils/remove-trailing-slash'\n\n// Re-export the component (should be the default export).\nexport default hoist(userland, 'default')\n\n// Re-export methods.\nexport const getStaticProps = hoist(userland, 'getStaticProps')\nexport const getStaticPaths = hoist(userland, 'getStaticPaths')\nexport const getServerSideProps = hoist(userland, 'getServerSideProps')\nexport const config = hoist(userland, 'config')\nexport const reportWebVitals = hoist(userland, 'reportWebVitals')\n\n// Re-export legacy methods.\nexport const unstable_getStaticProps = hoist(\n userland,\n 'unstable_getStaticProps'\n)\nexport const unstable_getStaticPaths = hoist(\n userland,\n 'unstable_getStaticPaths'\n)\nexport const unstable_getStaticParams = hoist(\n userland,\n 'unstable_getStaticParams'\n)\nexport const unstable_getServerProps = hoist(\n userland,\n 'unstable_getServerProps'\n)\nexport const unstable_getServerSideProps = hoist(\n userland,\n 'unstable_getServerSideProps'\n)\n\n// Create and export the route module that will be consumed.\nexport const routeModule = new PagesRouteModule({\n definition: {\n kind: RouteKind.PAGES,\n page: 'VAR_DEFINITION_PAGE',\n pathname: 'VAR_DEFINITION_PATHNAME',\n // The following aren't used in production.\n bundlePath: '',\n filename: '',\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n projectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n components: {\n // default export might not exist when optimized for data only\n App: app.default,\n Document: document.default,\n },\n userland,\n})\n\nexport async function handler(\n req: IncomingMessage,\n res: ServerResponse,\n ctx: {\n waitUntil: (prom: Promise<void>) => void\n }\n): Promise<void> {\n let srcPage = 'VAR_DEFINITION_PAGE'\n\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/'\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/'\n }\n const multiZoneDraftMode = process.env\n .__NEXT_MULTI_ZONE_DRAFT_MODE as any as boolean\n\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode,\n })\n\n if (!prepareResult) {\n res.statusCode = 400\n res.end('Bad Request')\n ctx.waitUntil?.(Promise.resolve())\n return\n }\n\n const {\n buildId,\n query,\n params,\n parsedUrl,\n originalQuery,\n originalPathname,\n buildManifest,\n nextFontManifest,\n serverFilesManifest,\n reactLoadableManifest,\n prerenderManifest,\n isDraftMode,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n locale,\n locales,\n defaultLocale,\n routerServerContext,\n nextConfig,\n resolvedPathname,\n } = prepareResult\n\n const isExperimentalCompile =\n serverFilesManifest?.config?.experimental?.isExperimentalCompile\n\n const hasServerProps = Boolean(getServerSideProps)\n const hasStaticProps = Boolean(getStaticProps)\n const hasStaticPaths = Boolean(getStaticPaths)\n const hasGetInitialProps = Boolean(\n (userland.default || userland).getInitialProps\n )\n const isAmp = query.amp && config.amp\n let cacheKey: null | string = null\n let isIsrFallback = false\n let isNextDataRequest =\n prepareResult.isNextDataRequest && (hasStaticProps || hasServerProps)\n\n const is404Page = srcPage === '/404'\n const is500Page = srcPage === '/500'\n const isErrorPage = srcPage === '/_error'\n\n if (!routeModule.isDev && !isDraftMode && hasStaticProps) {\n cacheKey = `${locale ? `/${locale}` : ''}${\n (srcPage === '/' || resolvedPathname === '/') && locale\n ? ''\n : resolvedPathname\n }${isAmp ? '.amp' : ''}`\n\n if (is404Page || is500Page || isErrorPage) {\n cacheKey = `${locale ? `/${locale}` : ''}${srcPage}${isAmp ? '.amp' : ''}`\n }\n\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey\n }\n\n if (hasStaticPaths && !isDraftMode) {\n const decodedPathname = removeTrailingSlash(\n locale ? addPathPrefix(resolvedPathname, `/${locale}`) : resolvedPathname\n )\n const isPrerendered =\n Boolean(prerenderManifest.routes[decodedPathname]) ||\n prerenderManifest.notFoundRoutes.includes(decodedPathname)\n\n const prerenderInfo = prerenderManifest.dynamicRoutes[srcPage]\n\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n throw new NoFallbackError()\n }\n\n if (\n typeof prerenderInfo.fallback === 'string' &&\n !isPrerendered &&\n !isNextDataRequest\n ) {\n isIsrFallback = true\n }\n }\n }\n\n // When serving a bot request, we want to serve a blocking render and not\n // the prerendered page. This ensures that the correct content is served\n // to the bot in the head.\n if (\n (isIsrFallback && isBot(req.headers['user-agent'] || '')) ||\n getRequestMeta(req, 'minimalMode')\n ) {\n isIsrFallback = false\n }\n\n const tracer = getTracer()\n const activeSpan = tracer.getActiveScopeSpan()\n\n try {\n const method = req.method || 'GET'\n\n const resolvedUrl = formatUrl({\n pathname: nextConfig.trailingSlash\n ? parsedUrl.pathname\n : removeTrailingSlash(parsedUrl.pathname || '/'),\n // make sure to only add query values from original URL\n query: hasStaticProps ? {} : originalQuery,\n })\n\n const publicRuntimeConfig: Record<string, string> =\n routerServerContext?.publicRuntimeConfig || nextConfig.publicRuntimeConfig\n\n const handleResponse = async (span?: Span) => {\n const responseGenerator: ResponseGenerator = async ({\n previousCacheEntry,\n }) => {\n const doRender = async () => {\n try {\n return await routeModule\n .render(req, res, {\n query:\n hasStaticProps && !isExperimentalCompile\n ? ({\n ...params,\n ...(isAmp\n ? {\n amp: query.amp,\n }\n : {}),\n } as ParsedUrlQuery)\n : {\n ...query,\n ...params,\n },\n params,\n page: srcPage,\n renderContext: {\n isDraftMode,\n isFallback: isIsrFallback,\n developmentNotFoundSourcePage: getRequestMeta(\n req,\n 'developmentNotFoundSourcePage'\n ),\n },\n sharedContext: {\n buildId,\n customServer:\n Boolean(routerServerContext?.isCustomServer) || undefined,\n deploymentId: process.env.NEXT_DEPLOYMENT_ID,\n },\n renderOpts: {\n params,\n routeModule,\n page: srcPage,\n pageConfig: config || {},\n Component: interopDefault(userland),\n ComponentMod: userland,\n getStaticProps,\n getStaticPaths,\n getServerSideProps,\n supportsDynamicResponse: !hasStaticProps,\n buildManifest,\n nextFontManifest,\n reactLoadableManifest,\n\n assetPrefix: nextConfig.assetPrefix,\n strictNextHead:\n nextConfig.experimental.strictNextHead ?? true,\n previewProps: prerenderManifest.preview,\n images: nextConfig.images as any,\n nextConfigOutput: nextConfig.output,\n optimizeCss: Boolean(nextConfig.experimental.optimizeCss),\n nextScriptWorkers: Boolean(\n nextConfig.experimental.nextScriptWorkers\n ),\n domainLocales: nextConfig.i18n?.domains,\n crossOrigin: nextConfig.crossOrigin,\n\n multiZoneDraftMode,\n basePath: nextConfig.basePath,\n canonicalBase: nextConfig.amp.canonicalBase || '',\n ampOptimizerConfig: nextConfig.experimental.amp?.optimizer,\n disableOptimizedLoading:\n nextConfig.experimental.disableOptimizedLoading,\n largePageDataBytes:\n nextConfig.experimental.largePageDataBytes,\n // Only the `publicRuntimeConfig` key is exposed to the client side\n // It'll be rendered as part of __NEXT_DATA__ on the client side\n runtimeConfig:\n Object.keys(publicRuntimeConfig).length > 0\n ? publicRuntimeConfig\n : undefined,\n\n isExperimentalCompile,\n\n experimental: {\n clientTraceMetadata:\n nextConfig.experimental.clientTraceMetadata ||\n ([] as any),\n },\n\n locale,\n locales,\n defaultLocale,\n setIsrStatus: routerServerContext?.setIsrStatus,\n\n isNextDataRequest:\n isNextDataRequest && (hasServerProps || hasStaticProps),\n\n resolvedUrl,\n // For getServerSideProps and getInitialProps we need to ensure we use the original URL\n // and not the resolved URL to prevent a hydration mismatch on\n // asPath\n resolvedAsPath:\n hasServerProps || hasGetInitialProps\n ? formatUrl({\n // we use the original URL pathname less the _next/data prefix if\n // present\n pathname: isNextDataRequest\n ? normalizeDataPath(originalPathname)\n : originalPathname,\n query: originalQuery,\n })\n : resolvedUrl,\n\n isOnDemandRevalidate,\n\n ErrorDebug: getRequestMeta(req, 'PagesErrorDebug'),\n err: getRequestMeta(req, 'invokeError'),\n dev: routeModule.isDev,\n\n // needed for experimental.optimizeCss feature\n distDir: `${routeModule.projectDir}/${routeModule.distDir}`,\n\n ampSkipValidation:\n nextConfig.experimental.amp?.skipValidation,\n ampValidator: getRequestMeta(req, 'ampValidator'),\n },\n })\n .then((renderResult): ResponseCacheEntry => {\n const { metadata } = renderResult\n\n let cacheControl: CacheControl | undefined =\n metadata.cacheControl\n\n if ('isNotFound' in metadata && metadata.isNotFound) {\n return {\n value: null,\n cacheControl,\n } satisfies ResponseCacheEntry\n }\n\n // Handle `isRedirect`.\n if (metadata.isRedirect) {\n return {\n value: {\n kind: CachedRouteKind.REDIRECT,\n props: metadata.pageData ?? metadata.flightData,\n } satisfies CachedRedirectValue,\n cacheControl,\n } satisfies ResponseCacheEntry\n }\n\n return {\n value: {\n kind: CachedRouteKind.PAGES,\n html: renderResult,\n pageData: renderResult.metadata.pageData,\n headers: renderResult.metadata.headers,\n status: renderResult.metadata.statusCode,\n },\n cacheControl,\n }\n })\n .finally(() => {\n if (!span) return\n\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false,\n })\n\n const rootSpanAttributes = tracer.getRootSpanAttributes()\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return\n }\n\n if (\n rootSpanAttributes.get('next.span_type') !==\n BaseServerSpan.handleRequest\n ) {\n console.warn(\n `Unexpected root span type '${rootSpanAttributes.get(\n 'next.span_type'\n )}'. Please report this Next.js issue https://github.com/vercel/next.js`\n )\n return\n }\n\n const route = rootSpanAttributes.get('next.route')\n if (route) {\n const name = `${method} ${route}`\n\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name,\n })\n span.updateName(name)\n } else {\n span.updateName(`${method} ${req.url}`)\n }\n })\n } catch (err: unknown) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry?.isStale) {\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'Pages Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isRevalidate: hasStaticProps,\n isOnDemandRevalidate,\n }),\n },\n routerServerContext\n )\n }\n throw err\n }\n }\n\n // if we've already generated this page we no longer\n // serve the fallback\n if (previousCacheEntry) {\n isIsrFallback = false\n }\n\n if (isIsrFallback) {\n const fallbackResponse = await routeModule.getResponseCache(req).get(\n routeModule.isDev\n ? null\n : locale\n ? `/${locale}${srcPage}`\n : srcPage,\n async ({\n previousCacheEntry: previousFallbackCacheEntry = null,\n }) => {\n if (!routeModule.isDev) {\n return toResponseCacheEntry(previousFallbackCacheEntry)\n }\n return doRender()\n },\n {\n routeKind: RouteKind.PAGES,\n isFallback: true,\n isRoutePPREnabled: false,\n isOnDemandRevalidate: false,\n incrementalCache: await routeModule.getIncrementalCache(\n req,\n nextConfig,\n prerenderManifest\n ),\n waitUntil: ctx.waitUntil,\n }\n )\n if (fallbackResponse) {\n // Remove the cache control from the response to prevent it from being\n // used in the surrounding cache.\n delete fallbackResponse.cacheControl\n fallbackResponse.isMiss = true\n return fallbackResponse\n }\n }\n\n if (\n !getRequestMeta(req, 'minimalMode') &&\n isOnDemandRevalidate &&\n revalidateOnlyGenerated &&\n !previousCacheEntry\n ) {\n res.statusCode = 404\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED')\n res.end('This page could not be found')\n return null\n }\n\n if (\n isIsrFallback &&\n previousCacheEntry?.value?.kind === CachedRouteKind.PAGES\n ) {\n return {\n value: {\n kind: CachedRouteKind.PAGES,\n html: new RenderResult(\n Buffer.from(previousCacheEntry.value.html),\n {\n contentType: 'text/html;utf-8',\n metadata: {\n statusCode: previousCacheEntry.value.status,\n headers: previousCacheEntry.value.headers,\n },\n }\n ),\n pageData: {},\n status: previousCacheEntry.value.status,\n headers: previousCacheEntry.value.headers,\n } satisfies CachedPageValue,\n cacheControl: { revalidate: 0, expire: undefined },\n } satisfies ResponseCacheEntry\n }\n return doRender()\n }\n\n const result = await routeModule.handleResponse({\n cacheKey,\n req,\n nextConfig,\n routeKind: RouteKind.PAGES,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n waitUntil: ctx.waitUntil,\n responseGenerator: responseGenerator,\n prerenderManifest,\n })\n\n // if we got a cache hit this wasn't an ISR fallback\n // but it wasn't generated during build so isn't in the\n // prerender-manifest\n if (isIsrFallback && !result?.isMiss) {\n isIsrFallback = false\n }\n\n // response is finished is no cache entry\n if (!result) {\n return\n }\n\n if (hasStaticProps && !getRequestMeta(req, 'minimalMode')) {\n res.setHeader(\n 'x-nextjs-cache',\n isOnDemandRevalidate\n ? 'REVALIDATED'\n : result.isMiss\n ? 'MISS'\n : result.isStale\n ? 'STALE'\n : 'HIT'\n )\n }\n\n let cacheControl: CacheControl | undefined\n\n if (!hasStaticProps || isIsrFallback) {\n if (!res.getHeader('Cache-Control')) {\n cacheControl = { revalidate: 0, expire: undefined }\n }\n } else if (is404Page) {\n const notFoundRevalidate = getRequestMeta(req, 'notFoundRevalidate')\n\n cacheControl = {\n revalidate:\n typeof notFoundRevalidate === 'undefined' ? 0 : notFoundRevalidate,\n expire: undefined,\n }\n } else if (is500Page) {\n cacheControl = { revalidate: 0, expire: undefined }\n } else if (result.cacheControl) {\n // If the cache entry has a cache control with a revalidate value that's\n // a number, use it.\n if (typeof result.cacheControl.revalidate === 'number') {\n if (result.cacheControl.revalidate < 1) {\n throw new Error(\n `Invalid revalidate configuration provided: ${result.cacheControl.revalidate} < 1`\n )\n }\n cacheControl = {\n revalidate: result.cacheControl.revalidate,\n expire: result.cacheControl?.expire ?? nextConfig.expireTime,\n }\n } else {\n // revalidate: false\n cacheControl = {\n revalidate: CACHE_ONE_YEAR,\n expire: undefined,\n }\n }\n }\n\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheControl && !res.getHeader('Cache-Control')) {\n res.setHeader('Cache-Control', getCacheControlHeader(cacheControl))\n }\n\n // notFound: true case\n if (!result.value) {\n // add revalidate metadata before rendering 404 page\n // so that we can use this as source of truth for the\n // cache-control header instead of what the 404 page returns\n // for the revalidate value\n addRequestMeta(\n req,\n 'notFoundRevalidate',\n result.cacheControl?.revalidate\n )\n\n res.statusCode = 404\n\n if (isNextDataRequest) {\n res.end('{\"notFound\":true}')\n return\n }\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext?.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false)\n } else {\n res.end('This page could not be found')\n }\n return\n }\n\n if (result.value.kind === CachedRouteKind.REDIRECT) {\n if (isNextDataRequest) {\n res.setHeader('content-type', 'application/json')\n res.end(JSON.stringify(result.value.props))\n return\n } else {\n const handleRedirect = (pageData: any) => {\n const redirect = {\n destination: pageData.pageProps.__N_REDIRECT,\n statusCode: pageData.pageProps.__N_REDIRECT_STATUS,\n basePath: pageData.pageProps.__N_REDIRECT_BASE_PATH,\n }\n const statusCode = getRedirectStatus(redirect)\n const { basePath } = nextConfig\n\n if (\n basePath &&\n redirect.basePath !== false &&\n redirect.destination.startsWith('/')\n ) {\n redirect.destination = `${basePath}${redirect.destination}`\n }\n\n if (redirect.destination.startsWith('/')) {\n redirect.destination = normalizeRepeatedSlashes(\n redirect.destination\n )\n }\n\n res.statusCode = statusCode\n res.setHeader('Location', redirect.destination)\n if (statusCode === RedirectStatusCode.PermanentRedirect) {\n res.setHeader('Refresh', `0;url=${redirect.destination}`)\n }\n res.end(redirect.destination)\n }\n await handleRedirect(result.value.props)\n return null\n }\n }\n\n if (result.value.kind !== CachedRouteKind.PAGES) {\n throw new Error(\n `Invariant: received non-pages cache entry in pages handler`\n )\n }\n\n // In dev, we should not cache pages for any reason.\n if (routeModule.isDev) {\n res.setHeader('Cache-Control', 'no-store, must-revalidate')\n }\n\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader(\n 'Cache-Control',\n 'private, no-cache, no-store, max-age=0, must-revalidate'\n )\n }\n\n // when invoking _error before pages/500 we don't actually\n // send the _error response\n if (\n getRequestMeta(req, 'customErrorRender') ||\n (isErrorPage &&\n getRequestMeta(req, 'minimalMode') &&\n res.statusCode === 500)\n ) {\n return null\n }\n\n await sendRenderResult({\n req,\n res,\n // If we are rendering the error page it's not a data request\n // anymore\n result:\n isNextDataRequest && !isErrorPage && !is500Page\n ? new RenderResult(\n Buffer.from(JSON.stringify(result.value.pageData)),\n {\n contentType: 'application/json',\n metadata: result.value.html.metadata,\n }\n )\n : result.value.html,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n cacheControl: routeModule.isDev ? undefined : cacheControl,\n type: isNextDataRequest ? 'json' : 'html',\n })\n }\n\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse()\n } else {\n await tracer.withPropagatedContext(req.headers, () =>\n tracer.trace(\n BaseServerSpan.handleRequest,\n {\n spanName: `${method} ${req.url}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url,\n },\n },\n handleResponse\n )\n )\n }\n } catch (err) {\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'Pages Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isRevalidate: hasStaticProps,\n isOnDemandRevalidate,\n }),\n },\n routerServerContext\n )\n\n // rethrow so that we can handle serving error page\n throw err\n }\n}\n"],"names":["PagesRouteModule","RouteKind","BaseServerSpan","getTracer","SpanKind","formatUrl","addRequestMeta","getRequestMeta","interopDefault","getRevalidateReason","normalizeDataPath","CachedRouteKind","hoist","document","app","userland","getCacheControlHeader","normalizeRepeatedSlashes","getRedirectStatus","CACHE_ONE_YEAR","sendRenderResult","RenderResult","toResponseCacheEntry","NoFallbackError","RedirectStatusCode","isBot","addPathPrefix","removeTrailingSlash","getStaticProps","getStaticPaths","getServerSideProps","config","reportWebVitals","unstable_getStaticProps","unstable_getStaticPaths","unstable_getStaticParams","unstable_getServerProps","unstable_getServerSideProps","routeModule","definition","kind","PAGES","page","pathname","bundlePath","filename","distDir","process","env","__NEXT_RELATIVE_DIST_DIR","projectDir","__NEXT_RELATIVE_PROJECT_DIR","components","App","default","Document","handler","req","res","ctx","serverFilesManifest","srcPage","TURBOPACK","replace","multiZoneDraftMode","__NEXT_MULTI_ZONE_DRAFT_MODE","prepareResult","prepare","statusCode","end","waitUntil","Promise","resolve","buildId","query","params","parsedUrl","originalQuery","originalPathname","buildManifest","nextFontManifest","reactLoadableManifest","prerenderManifest","isDraftMode","isOnDemandRevalidate","revalidateOnlyGenerated","locale","locales","defaultLocale","routerServerContext","nextConfig","resolvedPathname","isExperimentalCompile","experimental","hasServerProps","Boolean","hasStaticProps","hasStaticPaths","hasGetInitialProps","getInitialProps","isAmp","amp","cacheKey","isIsrFallback","isNextDataRequest","is404Page","is500Page","isErrorPage","isDev","decodedPathname","isPrerendered","routes","notFoundRoutes","includes","prerenderInfo","dynamicRoutes","fallback","headers","tracer","activeSpan","getActiveScopeSpan","method","resolvedUrl","trailingSlash","publicRuntimeConfig","handleResponse","span","responseGenerator","previousCacheEntry","doRender","render","renderContext","isFallback","developmentNotFoundSourcePage","sharedContext","customServer","isCustomServer","undefined","deploymentId","NEXT_DEPLOYMENT_ID","renderOpts","pageConfig","Component","ComponentMod","supportsDynamicResponse","assetPrefix","strictNextHead","previewProps","preview","images","nextConfigOutput","output","optimizeCss","nextScriptWorkers","domainLocales","i18n","domains","crossOrigin","basePath","canonicalBase","ampOptimizerConfig","optimizer","disableOptimizedLoading","largePageDataBytes","runtimeConfig","Object","keys","length","clientTraceMetadata","setIsrStatus","resolvedAsPath","ErrorDebug","err","dev","ampSkipValidation","skipValidation","ampValidator","then","renderResult","metadata","cacheControl","isNotFound","value","isRedirect","REDIRECT","props","pageData","flightData","html","status","finally","setAttributes","rootSpanAttributes","getRootSpanAttributes","get","handleRequest","console","warn","route","name","updateName","url","isStale","onRequestError","routerKind","routePath","routeType","revalidateReason","isRevalidate","fallbackResponse","getResponseCache","previousFallbackCacheEntry","routeKind","isRoutePPREnabled","incrementalCache","getIncrementalCache","isMiss","setHeader","Buffer","from","contentType","revalidate","expire","result","getHeader","notFoundRevalidate","Error","expireTime","render404","JSON","stringify","handleRedirect","redirect","destination","pageProps","__N_REDIRECT","__N_REDIRECT_STATUS","__N_REDIRECT_BASE_PATH","startsWith","PermanentRedirect","generateEtags","poweredByHeader","type","withPropagatedContext","trace","spanName","SERVER","attributes"],"mappings":"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","ignoreList":[0]}
1
+ {"version":3,"sources":["../../../src/build/templates/pages.ts"],"sourcesContent":["import type { IncomingMessage, ServerResponse } from 'node:http'\nimport type { ParsedUrlQuery } from 'node:querystring'\nimport { PagesRouteModule } from '../../server/route-modules/pages/module.compiled'\nimport { RouteKind } from '../../server/route-kind'\nimport { BaseServerSpan } from '../../server/lib/trace/constants'\nimport { getTracer, SpanKind, type Span } from '../../server/lib/trace/tracer'\nimport { formatUrl } from '../../shared/lib/router/utils/format-url'\nimport { addRequestMeta, getRequestMeta } from '../../server/request-meta'\nimport { interopDefault } from '../../server/app-render/interop-default'\nimport { getRevalidateReason } from '../../server/instrumentation/utils'\nimport { normalizeDataPath } from '../../shared/lib/page-path/normalize-data-path'\nimport {\n CachedRouteKind,\n type CachedPageValue,\n type CachedRedirectValue,\n type ResponseCacheEntry,\n type ResponseGenerator,\n} from '../../server/response-cache'\n\nimport { hoist } from './helpers'\n\n// Import the app and document modules.\nimport * as document from 'VAR_MODULE_DOCUMENT'\nimport * as app from 'VAR_MODULE_APP'\n\n// Import the userland code.\nimport * as userland from 'VAR_USERLAND'\nimport {\n getCacheControlHeader,\n type CacheControl,\n} from '../../server/lib/cache-control'\nimport { normalizeRepeatedSlashes } from '../../shared/lib/utils'\nimport { getRedirectStatus } from '../../lib/redirect-status'\nimport { CACHE_ONE_YEAR } from '../../lib/constants'\nimport { sendRenderResult } from '../../server/send-payload'\nimport RenderResult from '../../server/render-result'\nimport { toResponseCacheEntry } from '../../server/response-cache/utils'\nimport { NoFallbackError } from '../../shared/lib/no-fallback-error.external'\nimport { RedirectStatusCode } from '../../client/components/redirect-status-code'\nimport { isBot } from '../../shared/lib/router/utils/is-bot'\nimport { addPathPrefix } from '../../shared/lib/router/utils/add-path-prefix'\nimport { removeTrailingSlash } from '../../shared/lib/router/utils/remove-trailing-slash'\n\n// Re-export the component (should be the default export).\nexport default hoist(userland, 'default')\n\n// Re-export methods.\nexport const getStaticProps = hoist(userland, 'getStaticProps')\nexport const getStaticPaths = hoist(userland, 'getStaticPaths')\nexport const getServerSideProps = hoist(userland, 'getServerSideProps')\nexport const config = hoist(userland, 'config')\nexport const reportWebVitals = hoist(userland, 'reportWebVitals')\n\n// Re-export legacy methods.\nexport const unstable_getStaticProps = hoist(\n userland,\n 'unstable_getStaticProps'\n)\nexport const unstable_getStaticPaths = hoist(\n userland,\n 'unstable_getStaticPaths'\n)\nexport const unstable_getStaticParams = hoist(\n userland,\n 'unstable_getStaticParams'\n)\nexport const unstable_getServerProps = hoist(\n userland,\n 'unstable_getServerProps'\n)\nexport const unstable_getServerSideProps = hoist(\n userland,\n 'unstable_getServerSideProps'\n)\n\n// Create and export the route module that will be consumed.\nexport const routeModule = new PagesRouteModule({\n definition: {\n kind: RouteKind.PAGES,\n page: 'VAR_DEFINITION_PAGE',\n pathname: 'VAR_DEFINITION_PATHNAME',\n // The following aren't used in production.\n bundlePath: '',\n filename: '',\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n projectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n components: {\n // default export might not exist when optimized for data only\n App: app.default,\n Document: document.default,\n },\n userland,\n})\n\nexport async function handler(\n req: IncomingMessage,\n res: ServerResponse,\n ctx: {\n waitUntil: (prom: Promise<void>) => void\n }\n): Promise<void> {\n let srcPage = 'VAR_DEFINITION_PAGE'\n\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/'\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/'\n }\n const multiZoneDraftMode = process.env\n .__NEXT_MULTI_ZONE_DRAFT_MODE as any as boolean\n\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode,\n })\n\n if (!prepareResult) {\n res.statusCode = 400\n res.end('Bad Request')\n ctx.waitUntil?.(Promise.resolve())\n return\n }\n\n const {\n buildId,\n query,\n params,\n parsedUrl,\n originalQuery,\n originalPathname,\n buildManifest,\n nextFontManifest,\n serverFilesManifest,\n reactLoadableManifest,\n prerenderManifest,\n isDraftMode,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n locale,\n locales,\n defaultLocale,\n routerServerContext,\n nextConfig,\n resolvedPathname,\n } = prepareResult\n\n const isExperimentalCompile =\n serverFilesManifest?.config?.experimental?.isExperimentalCompile\n\n const hasServerProps = Boolean(getServerSideProps)\n const hasStaticProps = Boolean(getStaticProps)\n const hasStaticPaths = Boolean(getStaticPaths)\n const hasGetInitialProps = Boolean(\n (userland.default || userland).getInitialProps\n )\n const isAmp = query.amp && config.amp\n let cacheKey: null | string = null\n let isIsrFallback = false\n let isNextDataRequest =\n prepareResult.isNextDataRequest && (hasStaticProps || hasServerProps)\n\n const is404Page = srcPage === '/404'\n const is500Page = srcPage === '/500'\n const isErrorPage = srcPage === '/_error'\n\n if (!routeModule.isDev && !isDraftMode && hasStaticProps) {\n cacheKey = `${locale ? `/${locale}` : ''}${\n (srcPage === '/' || resolvedPathname === '/') && locale\n ? ''\n : resolvedPathname\n }${isAmp ? '.amp' : ''}`\n\n if (is404Page || is500Page || isErrorPage) {\n cacheKey = `${locale ? `/${locale}` : ''}${srcPage}${isAmp ? '.amp' : ''}`\n }\n\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey\n }\n\n if (hasStaticPaths && !isDraftMode) {\n const decodedPathname = removeTrailingSlash(\n locale ? addPathPrefix(resolvedPathname, `/${locale}`) : resolvedPathname\n )\n const isPrerendered =\n Boolean(prerenderManifest.routes[decodedPathname]) ||\n prerenderManifest.notFoundRoutes.includes(decodedPathname)\n\n const prerenderInfo = prerenderManifest.dynamicRoutes[srcPage]\n\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n throw new NoFallbackError()\n }\n\n if (\n typeof prerenderInfo.fallback === 'string' &&\n !isPrerendered &&\n !isNextDataRequest\n ) {\n isIsrFallback = true\n }\n }\n }\n\n // When serving a bot request, we want to serve a blocking render and not\n // the prerendered page. This ensures that the correct content is served\n // to the bot in the head.\n if (\n (isIsrFallback && isBot(req.headers['user-agent'] || '')) ||\n getRequestMeta(req, 'minimalMode')\n ) {\n isIsrFallback = false\n }\n\n const tracer = getTracer()\n const activeSpan = tracer.getActiveScopeSpan()\n\n try {\n const method = req.method || 'GET'\n\n const resolvedUrl = formatUrl({\n pathname: nextConfig.trailingSlash\n ? parsedUrl.pathname\n : removeTrailingSlash(parsedUrl.pathname || '/'),\n // make sure to only add query values from original URL\n query: hasStaticProps ? {} : originalQuery,\n })\n\n const publicRuntimeConfig: Record<string, string> =\n routerServerContext?.publicRuntimeConfig || nextConfig.publicRuntimeConfig\n\n const handleResponse = async (span?: Span) => {\n const responseGenerator: ResponseGenerator = async ({\n previousCacheEntry,\n }) => {\n const doRender = async () => {\n try {\n return await routeModule\n .render(req, res, {\n query:\n hasStaticProps && !isExperimentalCompile\n ? ({\n ...params,\n ...(isAmp\n ? {\n amp: query.amp,\n }\n : {}),\n } as ParsedUrlQuery)\n : {\n ...query,\n ...params,\n },\n params,\n page: srcPage,\n renderContext: {\n isDraftMode,\n isFallback: isIsrFallback,\n developmentNotFoundSourcePage: getRequestMeta(\n req,\n 'developmentNotFoundSourcePage'\n ),\n },\n sharedContext: {\n buildId,\n customServer:\n Boolean(routerServerContext?.isCustomServer) || undefined,\n deploymentId: process.env.NEXT_DEPLOYMENT_ID,\n },\n renderOpts: {\n params,\n routeModule,\n page: srcPage,\n pageConfig: config || {},\n Component: interopDefault(userland),\n ComponentMod: userland,\n getStaticProps,\n getStaticPaths,\n getServerSideProps,\n supportsDynamicResponse: !hasStaticProps,\n buildManifest,\n nextFontManifest,\n reactLoadableManifest,\n\n assetPrefix: nextConfig.assetPrefix,\n strictNextHead:\n nextConfig.experimental.strictNextHead ?? true,\n previewProps: prerenderManifest.preview,\n images: nextConfig.images as any,\n nextConfigOutput: nextConfig.output,\n optimizeCss: Boolean(nextConfig.experimental.optimizeCss),\n nextScriptWorkers: Boolean(\n nextConfig.experimental.nextScriptWorkers\n ),\n domainLocales: nextConfig.i18n?.domains,\n crossOrigin: nextConfig.crossOrigin,\n\n multiZoneDraftMode,\n basePath: nextConfig.basePath,\n canonicalBase: nextConfig.amp.canonicalBase || '',\n ampOptimizerConfig: nextConfig.experimental.amp?.optimizer,\n disableOptimizedLoading:\n nextConfig.experimental.disableOptimizedLoading,\n largePageDataBytes:\n nextConfig.experimental.largePageDataBytes,\n // Only the `publicRuntimeConfig` key is exposed to the client side\n // It'll be rendered as part of __NEXT_DATA__ on the client side\n runtimeConfig:\n Object.keys(publicRuntimeConfig).length > 0\n ? publicRuntimeConfig\n : undefined,\n\n isExperimentalCompile,\n\n experimental: {\n clientTraceMetadata:\n nextConfig.experimental.clientTraceMetadata ||\n ([] as any),\n },\n\n locale,\n locales,\n defaultLocale,\n setIsrStatus: routerServerContext?.setIsrStatus,\n\n isNextDataRequest:\n isNextDataRequest && (hasServerProps || hasStaticProps),\n\n resolvedUrl,\n // For getServerSideProps and getInitialProps we need to ensure we use the original URL\n // and not the resolved URL to prevent a hydration mismatch on\n // asPath\n resolvedAsPath:\n hasServerProps || hasGetInitialProps\n ? formatUrl({\n // we use the original URL pathname less the _next/data prefix if\n // present\n pathname: isNextDataRequest\n ? normalizeDataPath(originalPathname)\n : originalPathname,\n query: originalQuery,\n })\n : resolvedUrl,\n\n isOnDemandRevalidate,\n\n ErrorDebug: getRequestMeta(req, 'PagesErrorDebug'),\n err: getRequestMeta(req, 'invokeError'),\n dev: routeModule.isDev,\n\n // needed for experimental.optimizeCss feature\n distDir: `${routeModule.projectDir}/${routeModule.distDir}`,\n\n ampSkipValidation:\n nextConfig.experimental.amp?.skipValidation,\n ampValidator: getRequestMeta(req, 'ampValidator'),\n },\n })\n .then((renderResult): ResponseCacheEntry => {\n const { metadata } = renderResult\n\n let cacheControl: CacheControl | undefined =\n metadata.cacheControl\n\n if ('isNotFound' in metadata && metadata.isNotFound) {\n return {\n value: null,\n cacheControl,\n } satisfies ResponseCacheEntry\n }\n\n // Handle `isRedirect`.\n if (metadata.isRedirect) {\n return {\n value: {\n kind: CachedRouteKind.REDIRECT,\n props: metadata.pageData ?? metadata.flightData,\n } satisfies CachedRedirectValue,\n cacheControl,\n } satisfies ResponseCacheEntry\n }\n\n return {\n value: {\n kind: CachedRouteKind.PAGES,\n html: renderResult,\n pageData: renderResult.metadata.pageData,\n headers: renderResult.metadata.headers,\n status: renderResult.metadata.statusCode,\n },\n cacheControl,\n }\n })\n .finally(() => {\n if (!span) return\n\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false,\n })\n\n const rootSpanAttributes = tracer.getRootSpanAttributes()\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return\n }\n\n if (\n rootSpanAttributes.get('next.span_type') !==\n BaseServerSpan.handleRequest\n ) {\n console.warn(\n `Unexpected root span type '${rootSpanAttributes.get(\n 'next.span_type'\n )}'. Please report this Next.js issue https://github.com/vercel/next.js`\n )\n return\n }\n\n const route = rootSpanAttributes.get('next.route')\n if (route) {\n const name = `${method} ${route}`\n\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name,\n })\n span.updateName(name)\n } else {\n span.updateName(`${method} ${req.url}`)\n }\n })\n } catch (err: unknown) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry?.isStale) {\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'Pages Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isRevalidate: hasStaticProps,\n isOnDemandRevalidate,\n }),\n },\n routerServerContext\n )\n }\n throw err\n }\n }\n\n // if we've already generated this page we no longer\n // serve the fallback\n if (previousCacheEntry) {\n isIsrFallback = false\n }\n\n if (isIsrFallback) {\n const fallbackResponse = await routeModule.getResponseCache(req).get(\n routeModule.isDev\n ? null\n : locale\n ? `/${locale}${srcPage}`\n : srcPage,\n async ({\n previousCacheEntry: previousFallbackCacheEntry = null,\n }) => {\n if (!routeModule.isDev) {\n return toResponseCacheEntry(previousFallbackCacheEntry)\n }\n return doRender()\n },\n {\n routeKind: RouteKind.PAGES,\n isFallback: true,\n isRoutePPREnabled: false,\n isOnDemandRevalidate: false,\n incrementalCache: await routeModule.getIncrementalCache(\n req,\n nextConfig,\n prerenderManifest\n ),\n waitUntil: ctx.waitUntil,\n }\n )\n if (fallbackResponse) {\n // Remove the cache control from the response to prevent it from being\n // used in the surrounding cache.\n delete fallbackResponse.cacheControl\n fallbackResponse.isMiss = true\n return fallbackResponse\n }\n }\n\n if (\n !getRequestMeta(req, 'minimalMode') &&\n isOnDemandRevalidate &&\n revalidateOnlyGenerated &&\n !previousCacheEntry\n ) {\n res.statusCode = 404\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED')\n res.end('This page could not be found')\n return null\n }\n\n if (\n isIsrFallback &&\n previousCacheEntry?.value?.kind === CachedRouteKind.PAGES\n ) {\n return {\n value: {\n kind: CachedRouteKind.PAGES,\n html: new RenderResult(\n Buffer.from(previousCacheEntry.value.html),\n {\n contentType: 'text/html;utf-8',\n metadata: {\n statusCode: previousCacheEntry.value.status,\n headers: previousCacheEntry.value.headers,\n },\n }\n ),\n pageData: {},\n status: previousCacheEntry.value.status,\n headers: previousCacheEntry.value.headers,\n } satisfies CachedPageValue,\n cacheControl: { revalidate: 0, expire: undefined },\n } satisfies ResponseCacheEntry\n }\n return doRender()\n }\n\n const result = await routeModule.handleResponse({\n cacheKey,\n req,\n nextConfig,\n routeKind: RouteKind.PAGES,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n waitUntil: ctx.waitUntil,\n responseGenerator: responseGenerator,\n prerenderManifest,\n })\n\n // if we got a cache hit this wasn't an ISR fallback\n // but it wasn't generated during build so isn't in the\n // prerender-manifest\n if (isIsrFallback && !result?.isMiss) {\n isIsrFallback = false\n }\n\n // response is finished is no cache entry\n if (!result) {\n return\n }\n\n if (hasStaticProps && !getRequestMeta(req, 'minimalMode')) {\n res.setHeader(\n 'x-nextjs-cache',\n isOnDemandRevalidate\n ? 'REVALIDATED'\n : result.isMiss\n ? 'MISS'\n : result.isStale\n ? 'STALE'\n : 'HIT'\n )\n }\n\n let cacheControl: CacheControl | undefined\n\n if (!hasStaticProps || isIsrFallback) {\n if (!res.getHeader('Cache-Control')) {\n cacheControl = { revalidate: 0, expire: undefined }\n }\n } else if (is404Page) {\n const notFoundRevalidate = getRequestMeta(req, 'notFoundRevalidate')\n\n cacheControl = {\n revalidate:\n typeof notFoundRevalidate === 'undefined' ? 0 : notFoundRevalidate,\n expire: undefined,\n }\n } else if (is500Page) {\n cacheControl = { revalidate: 0, expire: undefined }\n } else if (result.cacheControl) {\n // If the cache entry has a cache control with a revalidate value that's\n // a number, use it.\n if (typeof result.cacheControl.revalidate === 'number') {\n if (result.cacheControl.revalidate < 1) {\n throw new Error(\n `Invalid revalidate configuration provided: ${result.cacheControl.revalidate} < 1`\n )\n }\n cacheControl = {\n revalidate: result.cacheControl.revalidate,\n expire: result.cacheControl?.expire ?? nextConfig.expireTime,\n }\n } else {\n // revalidate: false\n cacheControl = {\n revalidate: CACHE_ONE_YEAR,\n expire: undefined,\n }\n }\n }\n\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheControl && !res.getHeader('Cache-Control')) {\n res.setHeader('Cache-Control', getCacheControlHeader(cacheControl))\n }\n\n // notFound: true case\n if (!result.value) {\n // add revalidate metadata before rendering 404 page\n // so that we can use this as source of truth for the\n // cache-control header instead of what the 404 page returns\n // for the revalidate value\n addRequestMeta(\n req,\n 'notFoundRevalidate',\n result.cacheControl?.revalidate\n )\n\n res.statusCode = 404\n\n if (isNextDataRequest) {\n res.end('{\"notFound\":true}')\n return\n }\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext?.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false)\n } else {\n res.end('This page could not be found')\n }\n return\n }\n\n if (result.value.kind === CachedRouteKind.REDIRECT) {\n if (isNextDataRequest) {\n res.setHeader('content-type', 'application/json')\n res.end(JSON.stringify(result.value.props))\n return\n } else {\n const handleRedirect = (pageData: any) => {\n const redirect = {\n destination: pageData.pageProps.__N_REDIRECT,\n statusCode: pageData.pageProps.__N_REDIRECT_STATUS,\n basePath: pageData.pageProps.__N_REDIRECT_BASE_PATH,\n }\n const statusCode = getRedirectStatus(redirect)\n const { basePath } = nextConfig\n\n if (\n basePath &&\n redirect.basePath !== false &&\n redirect.destination.startsWith('/')\n ) {\n redirect.destination = `${basePath}${redirect.destination}`\n }\n\n if (redirect.destination.startsWith('/')) {\n redirect.destination = normalizeRepeatedSlashes(\n redirect.destination\n )\n }\n\n res.statusCode = statusCode\n res.setHeader('Location', redirect.destination)\n if (statusCode === RedirectStatusCode.PermanentRedirect) {\n res.setHeader('Refresh', `0;url=${redirect.destination}`)\n }\n res.end(redirect.destination)\n }\n await handleRedirect(result.value.props)\n return null\n }\n }\n\n if (result.value.kind !== CachedRouteKind.PAGES) {\n throw new Error(\n `Invariant: received non-pages cache entry in pages handler`\n )\n }\n\n // In dev, we should not cache pages for any reason.\n if (routeModule.isDev) {\n res.setHeader('Cache-Control', 'no-store, must-revalidate')\n }\n\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader(\n 'Cache-Control',\n 'private, no-cache, no-store, max-age=0, must-revalidate'\n )\n }\n\n // when invoking _error before pages/500 we don't actually\n // send the _error response\n if (\n getRequestMeta(req, 'customErrorRender') ||\n (isErrorPage &&\n getRequestMeta(req, 'minimalMode') &&\n res.statusCode === 500)\n ) {\n return null\n }\n\n await sendRenderResult({\n req,\n res,\n // If we are rendering the error page it's not a data request\n // anymore\n result:\n isNextDataRequest && !isErrorPage && !is500Page\n ? new RenderResult(\n Buffer.from(JSON.stringify(result.value.pageData)),\n {\n contentType: 'application/json',\n metadata: result.value.html.metadata,\n }\n )\n : result.value.html,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n cacheControl: routeModule.isDev ? undefined : cacheControl,\n type: isNextDataRequest ? 'json' : 'html',\n })\n }\n\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse()\n } else {\n await tracer.withPropagatedContext(req.headers, () =>\n tracer.trace(\n BaseServerSpan.handleRequest,\n {\n spanName: `${method} ${req.url}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url,\n },\n },\n handleResponse\n )\n )\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'Pages Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isRevalidate: hasStaticProps,\n isOnDemandRevalidate,\n }),\n },\n routerServerContext\n )\n }\n // rethrow so that we can handle serving error page\n throw err\n }\n}\n"],"names":["PagesRouteModule","RouteKind","BaseServerSpan","getTracer","SpanKind","formatUrl","addRequestMeta","getRequestMeta","interopDefault","getRevalidateReason","normalizeDataPath","CachedRouteKind","hoist","document","app","userland","getCacheControlHeader","normalizeRepeatedSlashes","getRedirectStatus","CACHE_ONE_YEAR","sendRenderResult","RenderResult","toResponseCacheEntry","NoFallbackError","RedirectStatusCode","isBot","addPathPrefix","removeTrailingSlash","getStaticProps","getStaticPaths","getServerSideProps","config","reportWebVitals","unstable_getStaticProps","unstable_getStaticPaths","unstable_getStaticParams","unstable_getServerProps","unstable_getServerSideProps","routeModule","definition","kind","PAGES","page","pathname","bundlePath","filename","distDir","process","env","__NEXT_RELATIVE_DIST_DIR","projectDir","__NEXT_RELATIVE_PROJECT_DIR","components","App","default","Document","handler","req","res","ctx","serverFilesManifest","srcPage","TURBOPACK","replace","multiZoneDraftMode","__NEXT_MULTI_ZONE_DRAFT_MODE","prepareResult","prepare","statusCode","end","waitUntil","Promise","resolve","buildId","query","params","parsedUrl","originalQuery","originalPathname","buildManifest","nextFontManifest","reactLoadableManifest","prerenderManifest","isDraftMode","isOnDemandRevalidate","revalidateOnlyGenerated","locale","locales","defaultLocale","routerServerContext","nextConfig","resolvedPathname","isExperimentalCompile","experimental","hasServerProps","Boolean","hasStaticProps","hasStaticPaths","hasGetInitialProps","getInitialProps","isAmp","amp","cacheKey","isIsrFallback","isNextDataRequest","is404Page","is500Page","isErrorPage","isDev","decodedPathname","isPrerendered","routes","notFoundRoutes","includes","prerenderInfo","dynamicRoutes","fallback","headers","tracer","activeSpan","getActiveScopeSpan","method","resolvedUrl","trailingSlash","publicRuntimeConfig","handleResponse","span","responseGenerator","previousCacheEntry","doRender","render","renderContext","isFallback","developmentNotFoundSourcePage","sharedContext","customServer","isCustomServer","undefined","deploymentId","NEXT_DEPLOYMENT_ID","renderOpts","pageConfig","Component","ComponentMod","supportsDynamicResponse","assetPrefix","strictNextHead","previewProps","preview","images","nextConfigOutput","output","optimizeCss","nextScriptWorkers","domainLocales","i18n","domains","crossOrigin","basePath","canonicalBase","ampOptimizerConfig","optimizer","disableOptimizedLoading","largePageDataBytes","runtimeConfig","Object","keys","length","clientTraceMetadata","setIsrStatus","resolvedAsPath","ErrorDebug","err","dev","ampSkipValidation","skipValidation","ampValidator","then","renderResult","metadata","cacheControl","isNotFound","value","isRedirect","REDIRECT","props","pageData","flightData","html","status","finally","setAttributes","rootSpanAttributes","getRootSpanAttributes","get","handleRequest","console","warn","route","name","updateName","url","isStale","onRequestError","routerKind","routePath","routeType","revalidateReason","isRevalidate","fallbackResponse","getResponseCache","previousFallbackCacheEntry","routeKind","isRoutePPREnabled","incrementalCache","getIncrementalCache","isMiss","setHeader","Buffer","from","contentType","revalidate","expire","result","getHeader","notFoundRevalidate","Error","expireTime","render404","JSON","stringify","handleRedirect","redirect","destination","pageProps","__N_REDIRECT","__N_REDIRECT_STATUS","__N_REDIRECT_BASE_PATH","startsWith","PermanentRedirect","generateEtags","poweredByHeader","type","withPropagatedContext","trace","spanName","SERVER","attributes"],"mappings":"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","ignoreList":[0]}
@@ -14,8 +14,9 @@ import { setGlobal } from '../../trace';
14
14
  import { isCI } from '../../server/ci-info';
15
15
  import { backgroundLogCompilationEvents } from '../../shared/lib/turbopack/compilation-events';
16
16
  import { getSupportedBrowsers } from '../utils';
17
+ import { normalizePath } from '../../lib/normalize-path';
17
18
  export async function turbopackBuild() {
18
- var _config_experimental, _config_turbopack, _config_experimental1;
19
+ var _config_experimental, _config_turbopack, _config_turbopack1, _config_experimental1;
19
20
  await validateTurboNextConfig({
20
21
  dir: NextBuildContext.dir,
21
22
  isDev: false
@@ -36,9 +37,10 @@ export async function turbopackBuild() {
36
37
  const dev = false;
37
38
  const supportedBrowsers = await getSupportedBrowsers(dir, dev);
38
39
  const persistentCaching = isPersistentCachingEnabled(config);
40
+ const rootPath = ((_config_turbopack = config.turbopack) == null ? void 0 : _config_turbopack.root) || config.outputFileTracingRoot || dir;
39
41
  const project = await bindings.turbo.createProject({
40
- projectPath: dir,
41
- rootPath: ((_config_turbopack = config.turbopack) == null ? void 0 : _config_turbopack.root) || config.outputFileTracingRoot || dir,
42
+ rootPath: ((_config_turbopack1 = config.turbopack) == null ? void 0 : _config_turbopack1.root) || config.outputFileTracingRoot || dir,
43
+ projectPath: normalizePath(path.relative(rootPath, dir) || '.'),
42
44
  distDir,
43
45
  nextConfig: config,
44
46
  jsConfig: await getTurbopackJsConfig(dir, config),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/build/turbopack-build/impl.ts"],"sourcesContent":["import path from 'path'\nimport { validateTurboNextConfig } from '../../lib/turbopack-warning'\nimport {\n formatIssue,\n getTurbopackJsConfig,\n isPersistentCachingEnabled,\n isRelevantWarning,\n} from '../../shared/lib/turbopack/utils'\nimport { NextBuildContext } from '../build-context'\nimport { createDefineEnv, loadBindings } from '../swc'\nimport {\n rawEntrypointsToEntrypoints,\n handleRouteType,\n} from '../handle-entrypoints'\nimport { TurbopackManifestLoader } from '../../shared/lib/turbopack/manifest-loader'\nimport { promises as fs } from 'fs'\nimport { PHASE_PRODUCTION_BUILD } from '../../shared/lib/constants'\nimport loadConfig from '../../server/config'\nimport { hasCustomExportOutput } from '../../export/utils'\nimport { Telemetry } from '../../telemetry/storage'\nimport { setGlobal } from '../../trace'\nimport { isCI } from '../../server/ci-info'\nimport { backgroundLogCompilationEvents } from '../../shared/lib/turbopack/compilation-events'\nimport { getSupportedBrowsers } from '../utils'\n\nexport async function turbopackBuild(): Promise<{\n duration: number\n buildTraceContext: undefined\n shutdownPromise: Promise<void>\n}> {\n await validateTurboNextConfig({\n dir: NextBuildContext.dir!,\n isDev: false,\n })\n\n const config = NextBuildContext.config!\n const dir = NextBuildContext.dir!\n const distDir = NextBuildContext.distDir!\n const buildId = NextBuildContext.buildId!\n const encryptionKey = NextBuildContext.encryptionKey!\n const previewProps = NextBuildContext.previewProps!\n const hasRewrites = NextBuildContext.hasRewrites!\n const rewrites = NextBuildContext.rewrites!\n const appDirOnly = NextBuildContext.appDirOnly!\n const noMangling = NextBuildContext.noMangling!\n const currentNodeJsVersion = process.versions.node\n\n const startTime = process.hrtime()\n const bindings = await loadBindings(config?.experimental?.useWasmBinary)\n const dev = false\n\n const supportedBrowsers = await getSupportedBrowsers(dir, dev)\n\n const persistentCaching = isPersistentCachingEnabled(config)\n const project = await bindings.turbo.createProject(\n {\n projectPath: dir,\n rootPath: config.turbopack?.root || config.outputFileTracingRoot || dir,\n distDir,\n nextConfig: config,\n jsConfig: await getTurbopackJsConfig(dir, config),\n watch: {\n enable: false,\n },\n dev,\n env: process.env as Record<string, string>,\n defineEnv: createDefineEnv({\n isTurbopack: true,\n clientRouterFilters: NextBuildContext.clientRouterFilters!,\n config,\n dev,\n distDir,\n projectPath: dir,\n fetchCacheKeyPrefix: config.experimental.fetchCacheKeyPrefix,\n hasRewrites,\n // Implemented separately in Turbopack, doesn't have to be passed here.\n middlewareMatchers: undefined,\n rewrites,\n }),\n buildId,\n encryptionKey,\n previewProps,\n browserslistQuery: supportedBrowsers.join(', '),\n noMangling,\n currentNodeJsVersion,\n },\n {\n persistentCaching,\n memoryLimit: config.experimental?.turbopackMemoryLimit,\n dependencyTracking: persistentCaching,\n isCi: isCI,\n }\n )\n try {\n backgroundLogCompilationEvents(project)\n\n // Write an empty file in a known location to signal this was built with Turbopack\n await fs.writeFile(path.join(distDir, 'turbopack'), '')\n\n await fs.mkdir(path.join(distDir, 'server'), { recursive: true })\n await fs.mkdir(path.join(distDir, 'static', buildId), {\n recursive: true,\n })\n await fs.writeFile(\n path.join(distDir, 'package.json'),\n JSON.stringify(\n {\n type: 'commonjs',\n },\n null,\n 2\n )\n )\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const entrypoints = await project.writeAllEntrypointsToDisk(appDirOnly)\n\n const manifestLoader = new TurbopackManifestLoader({\n buildId,\n distDir,\n encryptionKey,\n })\n\n const topLevelErrors = []\n const topLevelWarnings = []\n for (const issue of entrypoints.issues) {\n if (issue.severity === 'error' || issue.severity === 'fatal') {\n topLevelErrors.push(formatIssue(issue))\n } else if (isRelevantWarning(issue)) {\n topLevelWarnings.push(formatIssue(issue))\n }\n }\n\n if (topLevelWarnings.length > 0) {\n console.warn(\n `Turbopack build encountered ${\n topLevelWarnings.length\n } warnings:\\n${topLevelWarnings.join('\\n')}`\n )\n }\n\n if (topLevelErrors.length > 0) {\n throw new Error(\n `Turbopack build failed with ${\n topLevelErrors.length\n } errors:\\n${topLevelErrors.join('\\n')}`\n )\n }\n\n const currentEntrypoints = await rawEntrypointsToEntrypoints(entrypoints)\n\n const promises: Promise<any>[] = []\n\n if (!appDirOnly) {\n for (const [page, route] of currentEntrypoints.page) {\n promises.push(\n handleRouteType({\n page,\n route,\n manifestLoader,\n })\n )\n }\n }\n\n for (const [page, route] of currentEntrypoints.app) {\n promises.push(\n handleRouteType({\n page,\n route,\n manifestLoader,\n })\n )\n }\n\n await Promise.all(promises)\n\n await Promise.all([\n manifestLoader.loadBuildManifest('_app'),\n manifestLoader.loadPagesManifest('_app'),\n manifestLoader.loadFontManifest('_app'),\n manifestLoader.loadPagesManifest('_document'),\n manifestLoader.loadBuildManifest('_error'),\n manifestLoader.loadPagesManifest('_error'),\n manifestLoader.loadFontManifest('_error'),\n entrypoints.instrumentation &&\n manifestLoader.loadMiddlewareManifest(\n 'instrumentation',\n 'instrumentation'\n ),\n entrypoints.middleware &&\n (await manifestLoader.loadMiddlewareManifest(\n 'middleware',\n 'middleware'\n )),\n ])\n\n await manifestLoader.writeManifests({\n devRewrites: undefined,\n productionRewrites: rewrites,\n entrypoints: currentEntrypoints,\n })\n\n const shutdownPromise = project.shutdown()\n\n const time = process.hrtime(startTime)\n return {\n duration: time[0] + time[1] / 1e9,\n buildTraceContext: undefined,\n shutdownPromise,\n }\n } catch (err) {\n await project.shutdown()\n throw err\n }\n}\n\nlet shutdownPromise: Promise<void> | undefined\nexport async function workerMain(workerData: {\n buildContext: typeof NextBuildContext\n}): Promise<Awaited<ReturnType<typeof turbopackBuild>>> {\n // setup new build context from the serialized data passed from the parent\n Object.assign(NextBuildContext, workerData.buildContext)\n\n /// load the config because it's not serializable\n NextBuildContext.config = await loadConfig(\n PHASE_PRODUCTION_BUILD,\n NextBuildContext.dir!,\n { debugPrerender: NextBuildContext.debugPrerender }\n )\n\n // Matches handling in build/index.ts\n // https://github.com/vercel/next.js/blob/84f347fc86f4efc4ec9f13615c215e4b9fb6f8f0/packages/next/src/build/index.ts#L815-L818\n // Ensures the `config.distDir` option is matched.\n if (hasCustomExportOutput(NextBuildContext.config)) {\n NextBuildContext.config.distDir = '.next'\n }\n\n // Clone the telemetry for worker\n const telemetry = new Telemetry({\n distDir: NextBuildContext.config.distDir,\n })\n setGlobal('telemetry', telemetry)\n\n const result = await turbopackBuild()\n shutdownPromise = result.shutdownPromise\n return result\n}\n\nexport async function waitForShutdown(): Promise<void> {\n if (shutdownPromise) {\n await shutdownPromise\n }\n}\n"],"names":["path","validateTurboNextConfig","formatIssue","getTurbopackJsConfig","isPersistentCachingEnabled","isRelevantWarning","NextBuildContext","createDefineEnv","loadBindings","rawEntrypointsToEntrypoints","handleRouteType","TurbopackManifestLoader","promises","fs","PHASE_PRODUCTION_BUILD","loadConfig","hasCustomExportOutput","Telemetry","setGlobal","isCI","backgroundLogCompilationEvents","getSupportedBrowsers","turbopackBuild","config","dir","isDev","distDir","buildId","encryptionKey","previewProps","hasRewrites","rewrites","appDirOnly","noMangling","currentNodeJsVersion","process","versions","node","startTime","hrtime","bindings","experimental","useWasmBinary","dev","supportedBrowsers","persistentCaching","project","turbo","createProject","projectPath","rootPath","turbopack","root","outputFileTracingRoot","nextConfig","jsConfig","watch","enable","env","defineEnv","isTurbopack","clientRouterFilters","fetchCacheKeyPrefix","middlewareMatchers","undefined","browserslistQuery","join","memoryLimit","turbopackMemoryLimit","dependencyTracking","isCi","writeFile","mkdir","recursive","JSON","stringify","type","entrypoints","writeAllEntrypointsToDisk","manifestLoader","topLevelErrors","topLevelWarnings","issue","issues","severity","push","length","console","warn","Error","currentEntrypoints","page","route","app","Promise","all","loadBuildManifest","loadPagesManifest","loadFontManifest","instrumentation","loadMiddlewareManifest","middleware","writeManifests","devRewrites","productionRewrites","shutdownPromise","shutdown","time","duration","buildTraceContext","err","workerMain","workerData","Object","assign","buildContext","debugPrerender","telemetry","result","waitForShutdown"],"mappings":"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","ignoreList":[0]}
1
+ {"version":3,"sources":["../../../src/build/turbopack-build/impl.ts"],"sourcesContent":["import path from 'path'\nimport { validateTurboNextConfig } from '../../lib/turbopack-warning'\nimport {\n formatIssue,\n getTurbopackJsConfig,\n isPersistentCachingEnabled,\n isRelevantWarning,\n} from '../../shared/lib/turbopack/utils'\nimport { NextBuildContext } from '../build-context'\nimport { createDefineEnv, loadBindings } from '../swc'\nimport {\n rawEntrypointsToEntrypoints,\n handleRouteType,\n} from '../handle-entrypoints'\nimport { TurbopackManifestLoader } from '../../shared/lib/turbopack/manifest-loader'\nimport { promises as fs } from 'fs'\nimport { PHASE_PRODUCTION_BUILD } from '../../shared/lib/constants'\nimport loadConfig from '../../server/config'\nimport { hasCustomExportOutput } from '../../export/utils'\nimport { Telemetry } from '../../telemetry/storage'\nimport { setGlobal } from '../../trace'\nimport { isCI } from '../../server/ci-info'\nimport { backgroundLogCompilationEvents } from '../../shared/lib/turbopack/compilation-events'\nimport { getSupportedBrowsers } from '../utils'\nimport { normalizePath } from '../../lib/normalize-path'\n\nexport async function turbopackBuild(): Promise<{\n duration: number\n buildTraceContext: undefined\n shutdownPromise: Promise<void>\n}> {\n await validateTurboNextConfig({\n dir: NextBuildContext.dir!,\n isDev: false,\n })\n\n const config = NextBuildContext.config!\n const dir = NextBuildContext.dir!\n const distDir = NextBuildContext.distDir!\n const buildId = NextBuildContext.buildId!\n const encryptionKey = NextBuildContext.encryptionKey!\n const previewProps = NextBuildContext.previewProps!\n const hasRewrites = NextBuildContext.hasRewrites!\n const rewrites = NextBuildContext.rewrites!\n const appDirOnly = NextBuildContext.appDirOnly!\n const noMangling = NextBuildContext.noMangling!\n const currentNodeJsVersion = process.versions.node\n\n const startTime = process.hrtime()\n const bindings = await loadBindings(config?.experimental?.useWasmBinary)\n const dev = false\n\n const supportedBrowsers = await getSupportedBrowsers(dir, dev)\n\n const persistentCaching = isPersistentCachingEnabled(config)\n const rootPath = config.turbopack?.root || config.outputFileTracingRoot || dir\n const project = await bindings.turbo.createProject(\n {\n rootPath: config.turbopack?.root || config.outputFileTracingRoot || dir,\n projectPath: normalizePath(path.relative(rootPath, dir) || '.'),\n distDir,\n nextConfig: config,\n jsConfig: await getTurbopackJsConfig(dir, config),\n watch: {\n enable: false,\n },\n dev,\n env: process.env as Record<string, string>,\n defineEnv: createDefineEnv({\n isTurbopack: true,\n clientRouterFilters: NextBuildContext.clientRouterFilters!,\n config,\n dev,\n distDir,\n projectPath: dir,\n fetchCacheKeyPrefix: config.experimental.fetchCacheKeyPrefix,\n hasRewrites,\n // Implemented separately in Turbopack, doesn't have to be passed here.\n middlewareMatchers: undefined,\n rewrites,\n }),\n buildId,\n encryptionKey,\n previewProps,\n browserslistQuery: supportedBrowsers.join(', '),\n noMangling,\n currentNodeJsVersion,\n },\n {\n persistentCaching,\n memoryLimit: config.experimental?.turbopackMemoryLimit,\n dependencyTracking: persistentCaching,\n isCi: isCI,\n }\n )\n try {\n backgroundLogCompilationEvents(project)\n\n // Write an empty file in a known location to signal this was built with Turbopack\n await fs.writeFile(path.join(distDir, 'turbopack'), '')\n\n await fs.mkdir(path.join(distDir, 'server'), { recursive: true })\n await fs.mkdir(path.join(distDir, 'static', buildId), {\n recursive: true,\n })\n await fs.writeFile(\n path.join(distDir, 'package.json'),\n JSON.stringify(\n {\n type: 'commonjs',\n },\n null,\n 2\n )\n )\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const entrypoints = await project.writeAllEntrypointsToDisk(appDirOnly)\n\n const manifestLoader = new TurbopackManifestLoader({\n buildId,\n distDir,\n encryptionKey,\n })\n\n const topLevelErrors = []\n const topLevelWarnings = []\n for (const issue of entrypoints.issues) {\n if (issue.severity === 'error' || issue.severity === 'fatal') {\n topLevelErrors.push(formatIssue(issue))\n } else if (isRelevantWarning(issue)) {\n topLevelWarnings.push(formatIssue(issue))\n }\n }\n\n if (topLevelWarnings.length > 0) {\n console.warn(\n `Turbopack build encountered ${\n topLevelWarnings.length\n } warnings:\\n${topLevelWarnings.join('\\n')}`\n )\n }\n\n if (topLevelErrors.length > 0) {\n throw new Error(\n `Turbopack build failed with ${\n topLevelErrors.length\n } errors:\\n${topLevelErrors.join('\\n')}`\n )\n }\n\n const currentEntrypoints = await rawEntrypointsToEntrypoints(entrypoints)\n\n const promises: Promise<any>[] = []\n\n if (!appDirOnly) {\n for (const [page, route] of currentEntrypoints.page) {\n promises.push(\n handleRouteType({\n page,\n route,\n manifestLoader,\n })\n )\n }\n }\n\n for (const [page, route] of currentEntrypoints.app) {\n promises.push(\n handleRouteType({\n page,\n route,\n manifestLoader,\n })\n )\n }\n\n await Promise.all(promises)\n\n await Promise.all([\n manifestLoader.loadBuildManifest('_app'),\n manifestLoader.loadPagesManifest('_app'),\n manifestLoader.loadFontManifest('_app'),\n manifestLoader.loadPagesManifest('_document'),\n manifestLoader.loadBuildManifest('_error'),\n manifestLoader.loadPagesManifest('_error'),\n manifestLoader.loadFontManifest('_error'),\n entrypoints.instrumentation &&\n manifestLoader.loadMiddlewareManifest(\n 'instrumentation',\n 'instrumentation'\n ),\n entrypoints.middleware &&\n (await manifestLoader.loadMiddlewareManifest(\n 'middleware',\n 'middleware'\n )),\n ])\n\n await manifestLoader.writeManifests({\n devRewrites: undefined,\n productionRewrites: rewrites,\n entrypoints: currentEntrypoints,\n })\n\n const shutdownPromise = project.shutdown()\n\n const time = process.hrtime(startTime)\n return {\n duration: time[0] + time[1] / 1e9,\n buildTraceContext: undefined,\n shutdownPromise,\n }\n } catch (err) {\n await project.shutdown()\n throw err\n }\n}\n\nlet shutdownPromise: Promise<void> | undefined\nexport async function workerMain(workerData: {\n buildContext: typeof NextBuildContext\n}): Promise<Awaited<ReturnType<typeof turbopackBuild>>> {\n // setup new build context from the serialized data passed from the parent\n Object.assign(NextBuildContext, workerData.buildContext)\n\n /// load the config because it's not serializable\n NextBuildContext.config = await loadConfig(\n PHASE_PRODUCTION_BUILD,\n NextBuildContext.dir!,\n { debugPrerender: NextBuildContext.debugPrerender }\n )\n\n // Matches handling in build/index.ts\n // https://github.com/vercel/next.js/blob/84f347fc86f4efc4ec9f13615c215e4b9fb6f8f0/packages/next/src/build/index.ts#L815-L818\n // Ensures the `config.distDir` option is matched.\n if (hasCustomExportOutput(NextBuildContext.config)) {\n NextBuildContext.config.distDir = '.next'\n }\n\n // Clone the telemetry for worker\n const telemetry = new Telemetry({\n distDir: NextBuildContext.config.distDir,\n })\n setGlobal('telemetry', telemetry)\n\n const result = await turbopackBuild()\n shutdownPromise = result.shutdownPromise\n return result\n}\n\nexport async function waitForShutdown(): Promise<void> {\n if (shutdownPromise) {\n await shutdownPromise\n }\n}\n"],"names":["path","validateTurboNextConfig","formatIssue","getTurbopackJsConfig","isPersistentCachingEnabled","isRelevantWarning","NextBuildContext","createDefineEnv","loadBindings","rawEntrypointsToEntrypoints","handleRouteType","TurbopackManifestLoader","promises","fs","PHASE_PRODUCTION_BUILD","loadConfig","hasCustomExportOutput","Telemetry","setGlobal","isCI","backgroundLogCompilationEvents","getSupportedBrowsers","normalizePath","turbopackBuild","config","dir","isDev","distDir","buildId","encryptionKey","previewProps","hasRewrites","rewrites","appDirOnly","noMangling","currentNodeJsVersion","process","versions","node","startTime","hrtime","bindings","experimental","useWasmBinary","dev","supportedBrowsers","persistentCaching","rootPath","turbopack","root","outputFileTracingRoot","project","turbo","createProject","projectPath","relative","nextConfig","jsConfig","watch","enable","env","defineEnv","isTurbopack","clientRouterFilters","fetchCacheKeyPrefix","middlewareMatchers","undefined","browserslistQuery","join","memoryLimit","turbopackMemoryLimit","dependencyTracking","isCi","writeFile","mkdir","recursive","JSON","stringify","type","entrypoints","writeAllEntrypointsToDisk","manifestLoader","topLevelErrors","topLevelWarnings","issue","issues","severity","push","length","console","warn","Error","currentEntrypoints","page","route","app","Promise","all","loadBuildManifest","loadPagesManifest","loadFontManifest","instrumentation","loadMiddlewareManifest","middleware","writeManifests","devRewrites","productionRewrites","shutdownPromise","shutdown","time","duration","buildTraceContext","err","workerMain","workerData","Object","assign","buildContext","debugPrerender","telemetry","result","waitForShutdown"],"mappings":"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","ignoreList":[0]}
@@ -9,6 +9,7 @@ import localByDefault from 'next/dist/compiled/postcss-modules-local-by-default'
9
9
  import extractImports from 'next/dist/compiled/postcss-modules-extract-imports';
10
10
  import modulesScope from 'next/dist/compiled/postcss-modules-scope';
11
11
  import camelCase from './camelcase';
12
+ import { normalizePath } from '../../../../../lib/normalize-path';
12
13
  const whitespace = '[\\x20\\t\\r\\n\\f]';
13
14
  const unescapeRegExp = new RegExp(`\\\\([\\da-f]{1,6}${whitespace}?|(${whitespace})|.)`, 'ig');
14
15
  const matchNativeWin32Path = /^[A-Z]:[/\\]|^\\\\/i;
@@ -22,9 +23,6 @@ function unescape(str) {
22
23
  String.fromCharCode(high >> 10 | 0xd800, high & 0x3ff | 0xdc00);
23
24
  /* eslint-enable line-comment-position */ });
24
25
  }
25
- function normalizePath(file) {
26
- return path.sep === '\\' ? file.replace(/\\/g, '/') : file;
27
- }
28
26
  function fixedEncodeURIComponent(str) {
29
27
  return str.replace(/[!'()*]/g, (c)=>`%${c.charCodeAt(0).toString(16)}`);
30
28
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/build/webpack/loaders/css-loader/src/utils.ts"],"sourcesContent":["/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nimport { fileURLToPath } from 'url'\nimport path from 'path'\n\nimport { urlToRequest } from 'next/dist/compiled/loader-utils3'\nimport modulesValues from 'next/dist/compiled/postcss-modules-values'\nimport localByDefault from 'next/dist/compiled/postcss-modules-local-by-default'\nimport extractImports from 'next/dist/compiled/postcss-modules-extract-imports'\nimport modulesScope from 'next/dist/compiled/postcss-modules-scope'\nimport camelCase from './camelcase'\n\nconst whitespace = '[\\\\x20\\\\t\\\\r\\\\n\\\\f]'\nconst unescapeRegExp = new RegExp(\n `\\\\\\\\([\\\\da-f]{1,6}${whitespace}?|(${whitespace})|.)`,\n 'ig'\n)\nconst matchNativeWin32Path = /^[A-Z]:[/\\\\]|^\\\\\\\\/i\n\nfunction unescape(str: string) {\n return str.replace(unescapeRegExp, (_, escaped, escapedWhitespace) => {\n const high = (`0x${escaped}` as any) - 0x10000\n\n /* eslint-disable line-comment-position */\n // NaN means non-codepoint\n // Workaround erroneous numeric interpretation of +\"0x\"\n // eslint-disable-next-line no-self-compare\n return high !== high || escapedWhitespace\n ? escaped\n : high < 0\n ? // BMP codepoint\n String.fromCharCode(high + 0x10000)\n : // Supplemental Plane codepoint (surrogate pair)\n // eslint-disable-next-line no-bitwise\n String.fromCharCode((high >> 10) | 0xd800, (high & 0x3ff) | 0xdc00)\n /* eslint-enable line-comment-position */\n })\n}\n\nfunction normalizePath(file: string) {\n return path.sep === '\\\\' ? file.replace(/\\\\/g, '/') : file\n}\n\nfunction fixedEncodeURIComponent(str: string) {\n return str.replace(/[!'()*]/g, (c) => `%${c.charCodeAt(0).toString(16)}`)\n}\n\nfunction normalizeUrl(url: string, isStringValue: boolean) {\n let normalizedUrl = url\n\n if (isStringValue && /\\\\(\\n|\\r\\n|\\r|\\f)/.test(normalizedUrl)) {\n normalizedUrl = normalizedUrl.replace(/\\\\(\\n|\\r\\n|\\r|\\f)/g, '')\n }\n\n if (matchNativeWin32Path.test(url)) {\n try {\n normalizedUrl = decodeURIComponent(normalizedUrl)\n } catch (error) {\n // Ignores invalid and broken URLs and try to resolve them as is\n }\n\n return normalizedUrl\n }\n\n normalizedUrl = unescape(normalizedUrl)\n\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n if (isDataUrl(url)) {\n return fixedEncodeURIComponent(normalizedUrl)\n }\n\n try {\n normalizedUrl = decodeURI(normalizedUrl)\n } catch (error) {\n // Ignores invalid and broken URLs and try to resolve them as is\n }\n\n return normalizedUrl\n}\n\nfunction requestify(url: string, rootContext: string) {\n if (/^file:/i.test(url)) {\n return fileURLToPath(url)\n }\n\n if (/^[a-z][a-z0-9+.-]*:/i.test(url)) {\n return url\n }\n\n return url.charAt(0) === '/'\n ? urlToRequest(url, rootContext)\n : urlToRequest(url)\n}\n\nfunction getFilter(filter: any, resourcePath: string) {\n return (...args: any[]) => {\n if (typeof filter === 'function') {\n return filter(...args, resourcePath)\n }\n\n return true\n }\n}\n\nfunction shouldUseImportPlugin(options: any) {\n if (options.modules.exportOnlyLocals) {\n return false\n }\n\n if (typeof options.import === 'boolean') {\n return options.import\n }\n\n return true\n}\n\nfunction shouldUseURLPlugin(options: any) {\n if (options.modules.exportOnlyLocals) {\n return false\n }\n\n if (typeof options.url === 'boolean') {\n return options.url\n }\n\n return true\n}\n\nfunction shouldUseModulesPlugins(options: any) {\n return options.modules.compileType === 'module'\n}\n\nfunction shouldUseIcssPlugin(options: any) {\n return options.icss === true || Boolean(options.modules)\n}\n\nfunction getModulesPlugins(options: any, loaderContext: any, meta: any) {\n const {\n mode,\n getLocalIdent,\n localIdentName,\n localIdentContext,\n localIdentHashPrefix,\n localIdentRegExp,\n } = options.modules\n\n let plugins: any[] = []\n\n try {\n plugins = [\n modulesValues,\n localByDefault({ mode }),\n extractImports(),\n modulesScope({\n generateScopedName(exportName: any) {\n return getLocalIdent(\n loaderContext,\n localIdentName,\n exportName,\n {\n context: localIdentContext,\n hashPrefix: localIdentHashPrefix,\n regExp: localIdentRegExp,\n },\n meta\n )\n },\n exportGlobals: options.modules.exportGlobals,\n }),\n ]\n } catch (error) {\n loaderContext.emitError(error)\n }\n\n return plugins\n}\n\nconst IS_NATIVE_WIN32_PATH = /^[a-z]:[/\\\\]|^\\\\\\\\/i\nconst ABSOLUTE_SCHEME = /^[a-z0-9+\\-.]+:/i\n\nfunction getURLType(source: string) {\n if (source[0] === '/') {\n if (source[1] === '/') {\n return 'scheme-relative'\n }\n\n return 'path-absolute'\n }\n\n if (IS_NATIVE_WIN32_PATH.test(source)) {\n return 'path-absolute'\n }\n\n return ABSOLUTE_SCHEME.test(source) ? 'absolute' : 'path-relative'\n}\n\nfunction normalizeSourceMap(map: any, resourcePath: string) {\n let newMap = map\n\n // Some loader emit source map as string\n // Strip any JSON XSSI avoidance prefix from the string (as documented in the source maps specification), and then parse the string as JSON.\n if (typeof newMap === 'string') {\n newMap = JSON.parse(newMap)\n }\n\n delete newMap.file\n\n const { sourceRoot } = newMap\n\n delete newMap.sourceRoot\n\n if (newMap.sources) {\n // Source maps should use forward slash because it is URLs (https://github.com/mozilla/source-map/issues/91)\n // We should normalize path because previous loaders like `sass-loader` using backslash when generate source map\n newMap.sources = newMap.sources.map((source: string) => {\n // Non-standard syntax from `postcss`\n if (source.startsWith('<')) {\n return source\n }\n\n const sourceType = getURLType(source)\n\n // Do no touch `scheme-relative` and `absolute` URLs\n if (sourceType === 'path-relative' || sourceType === 'path-absolute') {\n const absoluteSource =\n sourceType === 'path-relative' && sourceRoot\n ? path.resolve(sourceRoot, normalizePath(source))\n : normalizePath(source)\n\n return path.relative(path.dirname(resourcePath), absoluteSource)\n }\n\n return source\n })\n }\n\n return newMap\n}\n\nfunction getPreRequester({ loaders, loaderIndex }: any) {\n const cache = Object.create(null)\n\n return (number: any) => {\n if (cache[number]) {\n return cache[number]\n }\n\n if (number === false) {\n cache[number] = ''\n } else {\n const loadersRequest = loaders\n .slice(\n loaderIndex,\n loaderIndex + 1 + (typeof number !== 'number' ? 0 : number)\n )\n .map((x: any) => x.request)\n .join('!')\n\n cache[number] = `-!${loadersRequest}!`\n }\n\n return cache[number]\n }\n}\n\nfunction getImportCode(imports: any, options: any) {\n let code = ''\n\n for (const item of imports) {\n const { importName, url, icss } = item\n\n if (options.esModule) {\n if (icss && options.modules.namedExport) {\n code += `import ${\n options.modules.exportOnlyLocals ? '' : `${importName}, `\n }* as ${importName}_NAMED___ from ${url};\\n`\n } else {\n code += `import ${importName} from ${url};\\n`\n }\n } else {\n code += `var ${importName} = require(${url});\\n`\n }\n }\n\n return code ? `// Imports\\n${code}` : ''\n}\n\nfunction normalizeSourceMapForRuntime(map: any, loaderContext: any) {\n const resultMap = map ? map.toJSON() : null\n\n if (resultMap) {\n delete resultMap.file\n\n resultMap.sourceRoot = ''\n\n resultMap.sources = resultMap.sources.map((source: string) => {\n // Non-standard syntax from `postcss`\n if (source.startsWith('<')) {\n return source\n }\n\n const sourceType = getURLType(source)\n\n if (sourceType !== 'path-relative') {\n return source\n }\n\n const resourceDirname = path.dirname(loaderContext.resourcePath)\n const absoluteSource = path.resolve(resourceDirname, source)\n const contextifyPath = normalizePath(\n path.relative(loaderContext.rootContext, absoluteSource)\n )\n\n return `webpack://${contextifyPath}`\n })\n }\n\n return JSON.stringify(resultMap)\n}\n\nfunction getModuleCode(\n result: { map: any; css: any },\n api: any,\n replacements: any,\n options: {\n modules: { exportOnlyLocals: boolean; namedExport: any }\n sourceMap: any\n },\n loaderContext: any\n) {\n if (options.modules.exportOnlyLocals === true) {\n return ''\n }\n\n const sourceMapValue = options.sourceMap\n ? `,${normalizeSourceMapForRuntime(result.map, loaderContext)}`\n : ''\n\n let code = JSON.stringify(result.css)\n let beforeCode = `var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(${options.sourceMap});\\n`\n\n for (const item of api) {\n const { url, media, dedupe } = item\n\n beforeCode += url\n ? `___CSS_LOADER_EXPORT___.push([module.id, ${JSON.stringify(\n `@import url(${url});`\n )}${media ? `, ${JSON.stringify(media)}` : ''}]);\\n`\n : `___CSS_LOADER_EXPORT___.i(${item.importName}${\n media ? `, ${JSON.stringify(media)}` : dedupe ? ', \"\"' : ''\n }${dedupe ? ', true' : ''});\\n`\n }\n\n for (const item of replacements) {\n const { replacementName, importName, localName } = item\n\n if (localName) {\n code = code.replace(new RegExp(replacementName, 'g'), () =>\n options.modules.namedExport\n ? `\" + ${importName}_NAMED___[${JSON.stringify(\n camelCase(localName)\n )}] + \"`\n : `\" + ${importName}.locals[${JSON.stringify(localName)}] + \"`\n )\n } else {\n const { hash, needQuotes } = item\n const getUrlOptions = [\n ...(hash ? [`hash: ${JSON.stringify(hash)}`] : []),\n ...(needQuotes ? 'needQuotes: true' : []),\n ]\n const preparedOptions =\n getUrlOptions.length > 0 ? `, { ${getUrlOptions.join(', ')} }` : ''\n\n beforeCode += `var ${replacementName} = ___CSS_LOADER_GET_URL_IMPORT___(${importName}${preparedOptions});\\n`\n code = code.replace(\n new RegExp(replacementName, 'g'),\n () => `\" + ${replacementName} + \"`\n )\n }\n }\n\n return `${beforeCode}// Module\\n___CSS_LOADER_EXPORT___.push([module.id, ${code}, \"\"${sourceMapValue}]);\\n`\n}\n\nfunction dashesCamelCase(str: string) {\n return str.replace(/-+(\\w)/g, (_match: any, firstLetter: string) =>\n firstLetter.toUpperCase()\n )\n}\n\nfunction getExportCode(\n exports: any,\n replacements: any,\n options: {\n modules: {\n namedExport: any\n exportLocalsConvention: any\n exportOnlyLocals: any\n }\n esModule: any\n }\n) {\n let code = '// Exports\\n'\n let localsCode = ''\n\n const addExportToLocalsCode = (name: string, value: any) => {\n if (options.modules.namedExport) {\n localsCode += `export const ${camelCase(name)} = ${JSON.stringify(\n value\n )};\\n`\n } else {\n if (localsCode) {\n localsCode += `,\\n`\n }\n\n localsCode += `\\t${JSON.stringify(name)}: ${JSON.stringify(value)}`\n }\n }\n\n for (const { name, value } of exports) {\n switch (options.modules.exportLocalsConvention) {\n case 'camelCase': {\n addExportToLocalsCode(name, value)\n\n const modifiedName = camelCase(name)\n\n if (modifiedName !== name) {\n addExportToLocalsCode(modifiedName, value)\n }\n break\n }\n case 'camelCaseOnly': {\n addExportToLocalsCode(camelCase(name), value)\n break\n }\n case 'dashes': {\n addExportToLocalsCode(name, value)\n\n const modifiedName = dashesCamelCase(name)\n\n if (modifiedName !== name) {\n addExportToLocalsCode(modifiedName, value)\n }\n break\n }\n case 'dashesOnly': {\n addExportToLocalsCode(dashesCamelCase(name), value)\n break\n }\n case 'asIs':\n default:\n addExportToLocalsCode(name, value)\n break\n }\n }\n\n for (const item of replacements) {\n const { replacementName, localName } = item\n\n if (localName) {\n const { importName } = item\n\n localsCode = localsCode.replace(new RegExp(replacementName, 'g'), () => {\n if (options.modules.namedExport) {\n return `\" + ${importName}_NAMED___[${JSON.stringify(\n camelCase(localName)\n )}] + \"`\n } else if (options.modules.exportOnlyLocals) {\n return `\" + ${importName}[${JSON.stringify(localName)}] + \"`\n }\n\n return `\" + ${importName}.locals[${JSON.stringify(localName)}] + \"`\n })\n } else {\n localsCode = localsCode.replace(\n new RegExp(replacementName, 'g'),\n () => `\" + ${replacementName} + \"`\n )\n }\n }\n\n if (options.modules.exportOnlyLocals) {\n code += options.modules.namedExport\n ? localsCode\n : `${\n options.esModule ? 'export default' : 'module.exports ='\n } {\\n${localsCode}\\n};\\n`\n\n return code\n }\n\n if (localsCode) {\n code += options.modules.namedExport\n ? localsCode\n : `___CSS_LOADER_EXPORT___.locals = {\\n${localsCode}\\n};\\n`\n }\n\n code += `${\n options.esModule ? 'export default' : 'module.exports ='\n } ___CSS_LOADER_EXPORT___;\\n`\n\n return code\n}\n\nasync function resolveRequests(\n resolve: (arg0: any, arg1: any) => Promise<any>,\n context: any,\n possibleRequests: any[]\n): Promise<any> {\n return resolve(context, possibleRequests[0])\n .then((result: any) => {\n return result\n })\n .catch((error: any) => {\n const [, ...tailPossibleRequests] = possibleRequests\n\n if (tailPossibleRequests.length === 0) {\n throw error\n }\n\n return resolveRequests(resolve, context, tailPossibleRequests)\n })\n}\n\nfunction isUrlRequestable(url: string) {\n // Protocol-relative URLs\n if (/^\\/\\//.test(url)) {\n return false\n }\n\n // `file:` protocol\n if (/^file:/i.test(url)) {\n return true\n }\n\n // Absolute URLs\n if (/^[a-z][a-z0-9+.-]*:/i.test(url)) {\n return true\n }\n\n // `#` URLs\n if (/^#/.test(url)) {\n return false\n }\n\n return true\n}\n\nfunction sort(a: { index: number }, b: { index: number }) {\n return a.index - b.index\n}\n\nfunction isDataUrl(url: string) {\n if (/^data:/i.test(url)) {\n return true\n }\n\n return false\n}\n\nexport {\n isDataUrl,\n shouldUseModulesPlugins,\n shouldUseImportPlugin,\n shouldUseURLPlugin,\n shouldUseIcssPlugin,\n normalizeUrl,\n requestify,\n getFilter,\n getModulesPlugins,\n normalizeSourceMap,\n getPreRequester,\n getImportCode,\n getModuleCode,\n getExportCode,\n resolveRequests,\n isUrlRequestable,\n sort,\n // For lightningcss-loader\n normalizeSourceMapForRuntime,\n dashesCamelCase,\n}\n"],"names":["fileURLToPath","path","urlToRequest","modulesValues","localByDefault","extractImports","modulesScope","camelCase","whitespace","unescapeRegExp","RegExp","matchNativeWin32Path","unescape","str","replace","_","escaped","escapedWhitespace","high","String","fromCharCode","normalizePath","file","sep","fixedEncodeURIComponent","c","charCodeAt","toString","normalizeUrl","url","isStringValue","normalizedUrl","test","decodeURIComponent","error","isDataUrl","decodeURI","requestify","rootContext","charAt","getFilter","filter","resourcePath","args","shouldUseImportPlugin","options","modules","exportOnlyLocals","import","shouldUseURLPlugin","shouldUseModulesPlugins","compileType","shouldUseIcssPlugin","icss","Boolean","getModulesPlugins","loaderContext","meta","mode","getLocalIdent","localIdentName","localIdentContext","localIdentHashPrefix","localIdentRegExp","plugins","generateScopedName","exportName","context","hashPrefix","regExp","exportGlobals","emitError","IS_NATIVE_WIN32_PATH","ABSOLUTE_SCHEME","getURLType","source","normalizeSourceMap","map","newMap","JSON","parse","sourceRoot","sources","startsWith","sourceType","absoluteSource","resolve","relative","dirname","getPreRequester","loaders","loaderIndex","cache","Object","create","number","loadersRequest","slice","x","request","join","getImportCode","imports","code","item","importName","esModule","namedExport","normalizeSourceMapForRuntime","resultMap","toJSON","resourceDirname","contextifyPath","stringify","getModuleCode","result","api","replacements","sourceMapValue","sourceMap","css","beforeCode","media","dedupe","replacementName","localName","hash","needQuotes","getUrlOptions","preparedOptions","length","dashesCamelCase","_match","firstLetter","toUpperCase","getExportCode","exports","localsCode","addExportToLocalsCode","name","value","exportLocalsConvention","modifiedName","resolveRequests","possibleRequests","then","catch","tailPossibleRequests","isUrlRequestable","sort","a","b","index"],"mappings":"AAAA;;;AAGA,GACA,SAASA,aAAa,QAAQ,MAAK;AACnC,OAAOC,UAAU,OAAM;AAEvB,SAASC,YAAY,QAAQ,mCAAkC;AAC/D,OAAOC,mBAAmB,4CAA2C;AACrE,OAAOC,oBAAoB,sDAAqD;AAChF,OAAOC,oBAAoB,qDAAoD;AAC/E,OAAOC,kBAAkB,2CAA0C;AACnE,OAAOC,eAAe,cAAa;AAEnC,MAAMC,aAAa;AACnB,MAAMC,iBAAiB,IAAIC,OACzB,CAAC,kBAAkB,EAAEF,WAAW,GAAG,EAAEA,WAAW,IAAI,CAAC,EACrD;AAEF,MAAMG,uBAAuB;AAE7B,SAASC,SAASC,GAAW;IAC3B,OAAOA,IAAIC,OAAO,CAACL,gBAAgB,CAACM,GAAGC,SAASC;QAC9C,MAAMC,OAAO,AAAC,CAAC,EAAE,EAAEF,SAAS,GAAW;QAEvC,wCAAwC,GACxC,0BAA0B;QAC1B,uDAAuD;QACvD,2CAA2C;QAC3C,OAAOE,SAASA,QAAQD,oBACpBD,UACAE,OAAO,IAELC,OAAOC,YAAY,CAACF,OAAO,WAE3B,sCAAsC;QACtCC,OAAOC,YAAY,CAAC,AAACF,QAAQ,KAAM,QAAQ,AAACA,OAAO,QAAS;IAClE,uCAAuC,GACzC;AACF;AAEA,SAASG,cAAcC,IAAY;IACjC,OAAOrB,KAAKsB,GAAG,KAAK,OAAOD,KAAKR,OAAO,CAAC,OAAO,OAAOQ;AACxD;AAEA,SAASE,wBAAwBX,GAAW;IAC1C,OAAOA,IAAIC,OAAO,CAAC,YAAY,CAACW,IAAM,CAAC,CAAC,EAAEA,EAAEC,UAAU,CAAC,GAAGC,QAAQ,CAAC,KAAK;AAC1E;AAEA,SAASC,aAAaC,GAAW,EAAEC,aAAsB;IACvD,IAAIC,gBAAgBF;IAEpB,IAAIC,iBAAiB,oBAAoBE,IAAI,CAACD,gBAAgB;QAC5DA,gBAAgBA,cAAcjB,OAAO,CAAC,sBAAsB;IAC9D;IAEA,IAAIH,qBAAqBqB,IAAI,CAACH,MAAM;QAClC,IAAI;YACFE,gBAAgBE,mBAAmBF;QACrC,EAAE,OAAOG,OAAO;QACd,gEAAgE;QAClE;QAEA,OAAOH;IACT;IAEAA,gBAAgBnB,SAASmB;IAEzB,mEAAmE;IACnE,IAAII,UAAUN,MAAM;QAClB,OAAOL,wBAAwBO;IACjC;IAEA,IAAI;QACFA,gBAAgBK,UAAUL;IAC5B,EAAE,OAAOG,OAAO;IACd,gEAAgE;IAClE;IAEA,OAAOH;AACT;AAEA,SAASM,WAAWR,GAAW,EAAES,WAAmB;IAClD,IAAI,UAAUN,IAAI,CAACH,MAAM;QACvB,OAAO7B,cAAc6B;IACvB;IAEA,IAAI,uBAAuBG,IAAI,CAACH,MAAM;QACpC,OAAOA;IACT;IAEA,OAAOA,IAAIU,MAAM,CAAC,OAAO,MACrBrC,aAAa2B,KAAKS,eAClBpC,aAAa2B;AACnB;AAEA,SAASW,UAAUC,MAAW,EAAEC,YAAoB;IAClD,OAAO,CAAC,GAAGC;QACT,IAAI,OAAOF,WAAW,YAAY;YAChC,OAAOA,UAAUE,MAAMD;QACzB;QAEA,OAAO;IACT;AACF;AAEA,SAASE,sBAAsBC,OAAY;IACzC,IAAIA,QAAQC,OAAO,CAACC,gBAAgB,EAAE;QACpC,OAAO;IACT;IAEA,IAAI,OAAOF,QAAQG,MAAM,KAAK,WAAW;QACvC,OAAOH,QAAQG,MAAM;IACvB;IAEA,OAAO;AACT;AAEA,SAASC,mBAAmBJ,OAAY;IACtC,IAAIA,QAAQC,OAAO,CAACC,gBAAgB,EAAE;QACpC,OAAO;IACT;IAEA,IAAI,OAAOF,QAAQhB,GAAG,KAAK,WAAW;QACpC,OAAOgB,QAAQhB,GAAG;IACpB;IAEA,OAAO;AACT;AAEA,SAASqB,wBAAwBL,OAAY;IAC3C,OAAOA,QAAQC,OAAO,CAACK,WAAW,KAAK;AACzC;AAEA,SAASC,oBAAoBP,OAAY;IACvC,OAAOA,QAAQQ,IAAI,KAAK,QAAQC,QAAQT,QAAQC,OAAO;AACzD;AAEA,SAASS,kBAAkBV,OAAY,EAAEW,aAAkB,EAAEC,IAAS;IACpE,MAAM,EACJC,IAAI,EACJC,aAAa,EACbC,cAAc,EACdC,iBAAiB,EACjBC,oBAAoB,EACpBC,gBAAgB,EACjB,GAAGlB,QAAQC,OAAO;IAEnB,IAAIkB,UAAiB,EAAE;IAEvB,IAAI;QACFA,UAAU;YACR7D;YACAC,eAAe;gBAAEsD;YAAK;YACtBrD;YACAC,aAAa;gBACX2D,oBAAmBC,UAAe;oBAChC,OAAOP,cACLH,eACAI,gBACAM,YACA;wBACEC,SAASN;wBACTO,YAAYN;wBACZO,QAAQN;oBACV,GACAN;gBAEJ;gBACAa,eAAezB,QAAQC,OAAO,CAACwB,aAAa;YAC9C;SACD;IACH,EAAE,OAAOpC,OAAO;QACdsB,cAAce,SAAS,CAACrC;IAC1B;IAEA,OAAO8B;AACT;AAEA,MAAMQ,uBAAuB;AAC7B,MAAMC,kBAAkB;AAExB,SAASC,WAAWC,MAAc;IAChC,IAAIA,MAAM,CAAC,EAAE,KAAK,KAAK;QACrB,IAAIA,MAAM,CAAC,EAAE,KAAK,KAAK;YACrB,OAAO;QACT;QAEA,OAAO;IACT;IAEA,IAAIH,qBAAqBxC,IAAI,CAAC2C,SAAS;QACrC,OAAO;IACT;IAEA,OAAOF,gBAAgBzC,IAAI,CAAC2C,UAAU,aAAa;AACrD;AAEA,SAASC,mBAAmBC,GAAQ,EAAEnC,YAAoB;IACxD,IAAIoC,SAASD;IAEb,wCAAwC;IACxC,4IAA4I;IAC5I,IAAI,OAAOC,WAAW,UAAU;QAC9BA,SAASC,KAAKC,KAAK,CAACF;IACtB;IAEA,OAAOA,OAAOxD,IAAI;IAElB,MAAM,EAAE2D,UAAU,EAAE,GAAGH;IAEvB,OAAOA,OAAOG,UAAU;IAExB,IAAIH,OAAOI,OAAO,EAAE;QAClB,4GAA4G;QAC5G,gHAAgH;QAChHJ,OAAOI,OAAO,GAAGJ,OAAOI,OAAO,CAACL,GAAG,CAAC,CAACF;YACnC,qCAAqC;YACrC,IAAIA,OAAOQ,UAAU,CAAC,MAAM;gBAC1B,OAAOR;YACT;YAEA,MAAMS,aAAaV,WAAWC;YAE9B,oDAAoD;YACpD,IAAIS,eAAe,mBAAmBA,eAAe,iBAAiB;gBACpE,MAAMC,iBACJD,eAAe,mBAAmBH,aAC9BhF,KAAKqF,OAAO,CAACL,YAAY5D,cAAcsD,WACvCtD,cAAcsD;gBAEpB,OAAO1E,KAAKsF,QAAQ,CAACtF,KAAKuF,OAAO,CAAC9C,eAAe2C;YACnD;YAEA,OAAOV;QACT;IACF;IAEA,OAAOG;AACT;AAEA,SAASW,gBAAgB,EAAEC,OAAO,EAAEC,WAAW,EAAO;IACpD,MAAMC,QAAQC,OAAOC,MAAM,CAAC;IAE5B,OAAO,CAACC;QACN,IAAIH,KAAK,CAACG,OAAO,EAAE;YACjB,OAAOH,KAAK,CAACG,OAAO;QACtB;QAEA,IAAIA,WAAW,OAAO;YACpBH,KAAK,CAACG,OAAO,GAAG;QAClB,OAAO;YACL,MAAMC,iBAAiBN,QACpBO,KAAK,CACJN,aACAA,cAAc,IAAK,CAAA,OAAOI,WAAW,WAAW,IAAIA,MAAK,GAE1DlB,GAAG,CAAC,CAACqB,IAAWA,EAAEC,OAAO,EACzBC,IAAI,CAAC;YAERR,KAAK,CAACG,OAAO,GAAG,CAAC,EAAE,EAAEC,eAAe,CAAC,CAAC;QACxC;QAEA,OAAOJ,KAAK,CAACG,OAAO;IACtB;AACF;AAEA,SAASM,cAAcC,OAAY,EAAEzD,OAAY;IAC/C,IAAI0D,OAAO;IAEX,KAAK,MAAMC,QAAQF,QAAS;QAC1B,MAAM,EAAEG,UAAU,EAAE5E,GAAG,EAAEwB,IAAI,EAAE,GAAGmD;QAElC,IAAI3D,QAAQ6D,QAAQ,EAAE;YACpB,IAAIrD,QAAQR,QAAQC,OAAO,CAAC6D,WAAW,EAAE;gBACvCJ,QAAQ,CAAC,OAAO,EACd1D,QAAQC,OAAO,CAACC,gBAAgB,GAAG,KAAK,GAAG0D,WAAW,EAAE,CAAC,CAC1D,KAAK,EAAEA,WAAW,eAAe,EAAE5E,IAAI,GAAG,CAAC;YAC9C,OAAO;gBACL0E,QAAQ,CAAC,OAAO,EAAEE,WAAW,MAAM,EAAE5E,IAAI,GAAG,CAAC;YAC/C;QACF,OAAO;YACL0E,QAAQ,CAAC,IAAI,EAAEE,WAAW,WAAW,EAAE5E,IAAI,IAAI,CAAC;QAClD;IACF;IAEA,OAAO0E,OAAO,CAAC,YAAY,EAAEA,MAAM,GAAG;AACxC;AAEA,SAASK,6BAA6B/B,GAAQ,EAAErB,aAAkB;IAChE,MAAMqD,YAAYhC,MAAMA,IAAIiC,MAAM,KAAK;IAEvC,IAAID,WAAW;QACb,OAAOA,UAAUvF,IAAI;QAErBuF,UAAU5B,UAAU,GAAG;QAEvB4B,UAAU3B,OAAO,GAAG2B,UAAU3B,OAAO,CAACL,GAAG,CAAC,CAACF;YACzC,qCAAqC;YACrC,IAAIA,OAAOQ,UAAU,CAAC,MAAM;gBAC1B,OAAOR;YACT;YAEA,MAAMS,aAAaV,WAAWC;YAE9B,IAAIS,eAAe,iBAAiB;gBAClC,OAAOT;YACT;YAEA,MAAMoC,kBAAkB9G,KAAKuF,OAAO,CAAChC,cAAcd,YAAY;YAC/D,MAAM2C,iBAAiBpF,KAAKqF,OAAO,CAACyB,iBAAiBpC;YACrD,MAAMqC,iBAAiB3F,cACrBpB,KAAKsF,QAAQ,CAAC/B,cAAclB,WAAW,EAAE+C;YAG3C,OAAO,CAAC,UAAU,EAAE2B,gBAAgB;QACtC;IACF;IAEA,OAAOjC,KAAKkC,SAAS,CAACJ;AACxB;AAEA,SAASK,cACPC,MAA8B,EAC9BC,GAAQ,EACRC,YAAiB,EACjBxE,OAGC,EACDW,aAAkB;IAElB,IAAIX,QAAQC,OAAO,CAACC,gBAAgB,KAAK,MAAM;QAC7C,OAAO;IACT;IAEA,MAAMuE,iBAAiBzE,QAAQ0E,SAAS,GACpC,CAAC,CAAC,EAAEX,6BAA6BO,OAAOtC,GAAG,EAAErB,gBAAgB,GAC7D;IAEJ,IAAI+C,OAAOxB,KAAKkC,SAAS,CAACE,OAAOK,GAAG;IACpC,IAAIC,aAAa,CAAC,0DAA0D,EAAE5E,QAAQ0E,SAAS,CAAC,IAAI,CAAC;IAErG,KAAK,MAAMf,QAAQY,IAAK;QACtB,MAAM,EAAEvF,GAAG,EAAE6F,KAAK,EAAEC,MAAM,EAAE,GAAGnB;QAE/BiB,cAAc5F,MACV,CAAC,yCAAyC,EAAEkD,KAAKkC,SAAS,CACxD,CAAC,YAAY,EAAEpF,IAAI,EAAE,CAAC,IACpB6F,QAAQ,CAAC,EAAE,EAAE3C,KAAKkC,SAAS,CAACS,QAAQ,GAAG,GAAG,KAAK,CAAC,GACpD,CAAC,0BAA0B,EAAElB,KAAKC,UAAU,GAC1CiB,QAAQ,CAAC,EAAE,EAAE3C,KAAKkC,SAAS,CAACS,QAAQ,GAAGC,SAAS,SAAS,KACxDA,SAAS,WAAW,GAAG,IAAI,CAAC;IACrC;IAEA,KAAK,MAAMnB,QAAQa,aAAc;QAC/B,MAAM,EAAEO,eAAe,EAAEnB,UAAU,EAAEoB,SAAS,EAAE,GAAGrB;QAEnD,IAAIqB,WAAW;YACbtB,OAAOA,KAAKzF,OAAO,CAAC,IAAIJ,OAAOkH,iBAAiB,MAAM,IACpD/E,QAAQC,OAAO,CAAC6D,WAAW,GACvB,CAAC,IAAI,EAAEF,WAAW,UAAU,EAAE1B,KAAKkC,SAAS,CAC1C1G,UAAUsH,YACV,KAAK,CAAC,GACR,CAAC,IAAI,EAAEpB,WAAW,QAAQ,EAAE1B,KAAKkC,SAAS,CAACY,WAAW,KAAK,CAAC;QAEpE,OAAO;YACL,MAAM,EAAEC,IAAI,EAAEC,UAAU,EAAE,GAAGvB;YAC7B,MAAMwB,gBAAgB;mBAChBF,OAAO;oBAAC,CAAC,MAAM,EAAE/C,KAAKkC,SAAS,CAACa,OAAO;iBAAC,GAAG,EAAE;mBAC7CC,aAAa,qBAAqB,EAAE;aACzC;YACD,MAAME,kBACJD,cAAcE,MAAM,GAAG,IAAI,CAAC,IAAI,EAAEF,cAAc5B,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG;YAEnEqB,cAAc,CAAC,IAAI,EAAEG,gBAAgB,mCAAmC,EAAEnB,aAAawB,gBAAgB,IAAI,CAAC;YAC5G1B,OAAOA,KAAKzF,OAAO,CACjB,IAAIJ,OAAOkH,iBAAiB,MAC5B,IAAM,CAAC,IAAI,EAAEA,gBAAgB,IAAI,CAAC;QAEtC;IACF;IAEA,OAAO,GAAGH,WAAW,oDAAoD,EAAElB,KAAK,IAAI,EAAEe,eAAe,KAAK,CAAC;AAC7G;AAEA,SAASa,gBAAgBtH,GAAW;IAClC,OAAOA,IAAIC,OAAO,CAAC,WAAW,CAACsH,QAAaC,cAC1CA,YAAYC,WAAW;AAE3B;AAEA,SAASC,cACPC,OAAY,EACZnB,YAAiB,EACjBxE,OAOC;IAED,IAAI0D,OAAO;IACX,IAAIkC,aAAa;IAEjB,MAAMC,wBAAwB,CAACC,MAAcC;QAC3C,IAAI/F,QAAQC,OAAO,CAAC6D,WAAW,EAAE;YAC/B8B,cAAc,CAAC,aAAa,EAAElI,UAAUoI,MAAM,GAAG,EAAE5D,KAAKkC,SAAS,CAC/D2B,OACA,GAAG,CAAC;QACR,OAAO;YACL,IAAIH,YAAY;gBACdA,cAAc,CAAC,GAAG,CAAC;YACrB;YAEAA,cAAc,CAAC,EAAE,EAAE1D,KAAKkC,SAAS,CAAC0B,MAAM,EAAE,EAAE5D,KAAKkC,SAAS,CAAC2B,QAAQ;QACrE;IACF;IAEA,KAAK,MAAM,EAAED,IAAI,EAAEC,KAAK,EAAE,IAAIJ,QAAS;QACrC,OAAQ3F,QAAQC,OAAO,CAAC+F,sBAAsB;YAC5C,KAAK;gBAAa;oBAChBH,sBAAsBC,MAAMC;oBAE5B,MAAME,eAAevI,UAAUoI;oBAE/B,IAAIG,iBAAiBH,MAAM;wBACzBD,sBAAsBI,cAAcF;oBACtC;oBACA;gBACF;YACA,KAAK;gBAAiB;oBACpBF,sBAAsBnI,UAAUoI,OAAOC;oBACvC;gBACF;YACA,KAAK;gBAAU;oBACbF,sBAAsBC,MAAMC;oBAE5B,MAAME,eAAeX,gBAAgBQ;oBAErC,IAAIG,iBAAiBH,MAAM;wBACzBD,sBAAsBI,cAAcF;oBACtC;oBACA;gBACF;YACA,KAAK;gBAAc;oBACjBF,sBAAsBP,gBAAgBQ,OAAOC;oBAC7C;gBACF;YACA,KAAK;YACL;gBACEF,sBAAsBC,MAAMC;gBAC5B;QACJ;IACF;IAEA,KAAK,MAAMpC,QAAQa,aAAc;QAC/B,MAAM,EAAEO,eAAe,EAAEC,SAAS,EAAE,GAAGrB;QAEvC,IAAIqB,WAAW;YACb,MAAM,EAAEpB,UAAU,EAAE,GAAGD;YAEvBiC,aAAaA,WAAW3H,OAAO,CAAC,IAAIJ,OAAOkH,iBAAiB,MAAM;gBAChE,IAAI/E,QAAQC,OAAO,CAAC6D,WAAW,EAAE;oBAC/B,OAAO,CAAC,IAAI,EAAEF,WAAW,UAAU,EAAE1B,KAAKkC,SAAS,CACjD1G,UAAUsH,YACV,KAAK,CAAC;gBACV,OAAO,IAAIhF,QAAQC,OAAO,CAACC,gBAAgB,EAAE;oBAC3C,OAAO,CAAC,IAAI,EAAE0D,WAAW,CAAC,EAAE1B,KAAKkC,SAAS,CAACY,WAAW,KAAK,CAAC;gBAC9D;gBAEA,OAAO,CAAC,IAAI,EAAEpB,WAAW,QAAQ,EAAE1B,KAAKkC,SAAS,CAACY,WAAW,KAAK,CAAC;YACrE;QACF,OAAO;YACLY,aAAaA,WAAW3H,OAAO,CAC7B,IAAIJ,OAAOkH,iBAAiB,MAC5B,IAAM,CAAC,IAAI,EAAEA,gBAAgB,IAAI,CAAC;QAEtC;IACF;IAEA,IAAI/E,QAAQC,OAAO,CAACC,gBAAgB,EAAE;QACpCwD,QAAQ1D,QAAQC,OAAO,CAAC6D,WAAW,GAC/B8B,aACA,GACE5F,QAAQ6D,QAAQ,GAAG,mBAAmB,mBACvC,IAAI,EAAE+B,WAAW,MAAM,CAAC;QAE7B,OAAOlC;IACT;IAEA,IAAIkC,YAAY;QACdlC,QAAQ1D,QAAQC,OAAO,CAAC6D,WAAW,GAC/B8B,aACA,CAAC,oCAAoC,EAAEA,WAAW,MAAM,CAAC;IAC/D;IAEAlC,QAAQ,GACN1D,QAAQ6D,QAAQ,GAAG,mBAAmB,mBACvC,2BAA2B,CAAC;IAE7B,OAAOH;AACT;AAEA,eAAewC,gBACbzD,OAA+C,EAC/CnB,OAAY,EACZ6E,gBAAuB;IAEvB,OAAO1D,QAAQnB,SAAS6E,gBAAgB,CAAC,EAAE,EACxCC,IAAI,CAAC,CAAC9B;QACL,OAAOA;IACT,GACC+B,KAAK,CAAC,CAAChH;QACN,MAAM,GAAG,GAAGiH,qBAAqB,GAAGH;QAEpC,IAAIG,qBAAqBjB,MAAM,KAAK,GAAG;YACrC,MAAMhG;QACR;QAEA,OAAO6G,gBAAgBzD,SAASnB,SAASgF;IAC3C;AACJ;AAEA,SAASC,iBAAiBvH,GAAW;IACnC,yBAAyB;IACzB,IAAI,QAAQG,IAAI,CAACH,MAAM;QACrB,OAAO;IACT;IAEA,mBAAmB;IACnB,IAAI,UAAUG,IAAI,CAACH,MAAM;QACvB,OAAO;IACT;IAEA,gBAAgB;IAChB,IAAI,uBAAuBG,IAAI,CAACH,MAAM;QACpC,OAAO;IACT;IAEA,WAAW;IACX,IAAI,KAAKG,IAAI,CAACH,MAAM;QAClB,OAAO;IACT;IAEA,OAAO;AACT;AAEA,SAASwH,KAAKC,CAAoB,EAAEC,CAAoB;IACtD,OAAOD,EAAEE,KAAK,GAAGD,EAAEC,KAAK;AAC1B;AAEA,SAASrH,UAAUN,GAAW;IAC5B,IAAI,UAAUG,IAAI,CAACH,MAAM;QACvB,OAAO;IACT;IAEA,OAAO;AACT;AAEA,SACEM,SAAS,EACTe,uBAAuB,EACvBN,qBAAqB,EACrBK,kBAAkB,EAClBG,mBAAmB,EACnBxB,YAAY,EACZS,UAAU,EACVG,SAAS,EACTe,iBAAiB,EACjBqB,kBAAkB,EAClBa,eAAe,EACfY,aAAa,EACba,aAAa,EACbqB,aAAa,EACbQ,eAAe,EACfK,gBAAgB,EAChBC,IAAI,EACJ,0BAA0B;AAC1BzC,4BAA4B,EAC5BuB,eAAe,KAChB","ignoreList":[0]}
1
+ {"version":3,"sources":["../../../../../../src/build/webpack/loaders/css-loader/src/utils.ts"],"sourcesContent":["/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nimport { fileURLToPath } from 'url'\nimport path from 'path'\n\nimport { urlToRequest } from 'next/dist/compiled/loader-utils3'\nimport modulesValues from 'next/dist/compiled/postcss-modules-values'\nimport localByDefault from 'next/dist/compiled/postcss-modules-local-by-default'\nimport extractImports from 'next/dist/compiled/postcss-modules-extract-imports'\nimport modulesScope from 'next/dist/compiled/postcss-modules-scope'\nimport camelCase from './camelcase'\nimport { normalizePath } from '../../../../../lib/normalize-path'\n\nconst whitespace = '[\\\\x20\\\\t\\\\r\\\\n\\\\f]'\nconst unescapeRegExp = new RegExp(\n `\\\\\\\\([\\\\da-f]{1,6}${whitespace}?|(${whitespace})|.)`,\n 'ig'\n)\nconst matchNativeWin32Path = /^[A-Z]:[/\\\\]|^\\\\\\\\/i\n\nfunction unescape(str: string) {\n return str.replace(unescapeRegExp, (_, escaped, escapedWhitespace) => {\n const high = (`0x${escaped}` as any) - 0x10000\n\n /* eslint-disable line-comment-position */\n // NaN means non-codepoint\n // Workaround erroneous numeric interpretation of +\"0x\"\n // eslint-disable-next-line no-self-compare\n return high !== high || escapedWhitespace\n ? escaped\n : high < 0\n ? // BMP codepoint\n String.fromCharCode(high + 0x10000)\n : // Supplemental Plane codepoint (surrogate pair)\n // eslint-disable-next-line no-bitwise\n String.fromCharCode((high >> 10) | 0xd800, (high & 0x3ff) | 0xdc00)\n /* eslint-enable line-comment-position */\n })\n}\n\nfunction fixedEncodeURIComponent(str: string) {\n return str.replace(/[!'()*]/g, (c) => `%${c.charCodeAt(0).toString(16)}`)\n}\n\nfunction normalizeUrl(url: string, isStringValue: boolean) {\n let normalizedUrl = url\n\n if (isStringValue && /\\\\(\\n|\\r\\n|\\r|\\f)/.test(normalizedUrl)) {\n normalizedUrl = normalizedUrl.replace(/\\\\(\\n|\\r\\n|\\r|\\f)/g, '')\n }\n\n if (matchNativeWin32Path.test(url)) {\n try {\n normalizedUrl = decodeURIComponent(normalizedUrl)\n } catch (error) {\n // Ignores invalid and broken URLs and try to resolve them as is\n }\n\n return normalizedUrl\n }\n\n normalizedUrl = unescape(normalizedUrl)\n\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n if (isDataUrl(url)) {\n return fixedEncodeURIComponent(normalizedUrl)\n }\n\n try {\n normalizedUrl = decodeURI(normalizedUrl)\n } catch (error) {\n // Ignores invalid and broken URLs and try to resolve them as is\n }\n\n return normalizedUrl\n}\n\nfunction requestify(url: string, rootContext: string) {\n if (/^file:/i.test(url)) {\n return fileURLToPath(url)\n }\n\n if (/^[a-z][a-z0-9+.-]*:/i.test(url)) {\n return url\n }\n\n return url.charAt(0) === '/'\n ? urlToRequest(url, rootContext)\n : urlToRequest(url)\n}\n\nfunction getFilter(filter: any, resourcePath: string) {\n return (...args: any[]) => {\n if (typeof filter === 'function') {\n return filter(...args, resourcePath)\n }\n\n return true\n }\n}\n\nfunction shouldUseImportPlugin(options: any) {\n if (options.modules.exportOnlyLocals) {\n return false\n }\n\n if (typeof options.import === 'boolean') {\n return options.import\n }\n\n return true\n}\n\nfunction shouldUseURLPlugin(options: any) {\n if (options.modules.exportOnlyLocals) {\n return false\n }\n\n if (typeof options.url === 'boolean') {\n return options.url\n }\n\n return true\n}\n\nfunction shouldUseModulesPlugins(options: any) {\n return options.modules.compileType === 'module'\n}\n\nfunction shouldUseIcssPlugin(options: any) {\n return options.icss === true || Boolean(options.modules)\n}\n\nfunction getModulesPlugins(options: any, loaderContext: any, meta: any) {\n const {\n mode,\n getLocalIdent,\n localIdentName,\n localIdentContext,\n localIdentHashPrefix,\n localIdentRegExp,\n } = options.modules\n\n let plugins: any[] = []\n\n try {\n plugins = [\n modulesValues,\n localByDefault({ mode }),\n extractImports(),\n modulesScope({\n generateScopedName(exportName: any) {\n return getLocalIdent(\n loaderContext,\n localIdentName,\n exportName,\n {\n context: localIdentContext,\n hashPrefix: localIdentHashPrefix,\n regExp: localIdentRegExp,\n },\n meta\n )\n },\n exportGlobals: options.modules.exportGlobals,\n }),\n ]\n } catch (error) {\n loaderContext.emitError(error)\n }\n\n return plugins\n}\n\nconst IS_NATIVE_WIN32_PATH = /^[a-z]:[/\\\\]|^\\\\\\\\/i\nconst ABSOLUTE_SCHEME = /^[a-z0-9+\\-.]+:/i\n\nfunction getURLType(source: string) {\n if (source[0] === '/') {\n if (source[1] === '/') {\n return 'scheme-relative'\n }\n\n return 'path-absolute'\n }\n\n if (IS_NATIVE_WIN32_PATH.test(source)) {\n return 'path-absolute'\n }\n\n return ABSOLUTE_SCHEME.test(source) ? 'absolute' : 'path-relative'\n}\n\nfunction normalizeSourceMap(map: any, resourcePath: string) {\n let newMap = map\n\n // Some loader emit source map as string\n // Strip any JSON XSSI avoidance prefix from the string (as documented in the source maps specification), and then parse the string as JSON.\n if (typeof newMap === 'string') {\n newMap = JSON.parse(newMap)\n }\n\n delete newMap.file\n\n const { sourceRoot } = newMap\n\n delete newMap.sourceRoot\n\n if (newMap.sources) {\n // Source maps should use forward slash because it is URLs (https://github.com/mozilla/source-map/issues/91)\n // We should normalize path because previous loaders like `sass-loader` using backslash when generate source map\n newMap.sources = newMap.sources.map((source: string) => {\n // Non-standard syntax from `postcss`\n if (source.startsWith('<')) {\n return source\n }\n\n const sourceType = getURLType(source)\n\n // Do no touch `scheme-relative` and `absolute` URLs\n if (sourceType === 'path-relative' || sourceType === 'path-absolute') {\n const absoluteSource =\n sourceType === 'path-relative' && sourceRoot\n ? path.resolve(sourceRoot, normalizePath(source))\n : normalizePath(source)\n\n return path.relative(path.dirname(resourcePath), absoluteSource)\n }\n\n return source\n })\n }\n\n return newMap\n}\n\nfunction getPreRequester({ loaders, loaderIndex }: any) {\n const cache = Object.create(null)\n\n return (number: any) => {\n if (cache[number]) {\n return cache[number]\n }\n\n if (number === false) {\n cache[number] = ''\n } else {\n const loadersRequest = loaders\n .slice(\n loaderIndex,\n loaderIndex + 1 + (typeof number !== 'number' ? 0 : number)\n )\n .map((x: any) => x.request)\n .join('!')\n\n cache[number] = `-!${loadersRequest}!`\n }\n\n return cache[number]\n }\n}\n\nfunction getImportCode(imports: any, options: any) {\n let code = ''\n\n for (const item of imports) {\n const { importName, url, icss } = item\n\n if (options.esModule) {\n if (icss && options.modules.namedExport) {\n code += `import ${\n options.modules.exportOnlyLocals ? '' : `${importName}, `\n }* as ${importName}_NAMED___ from ${url};\\n`\n } else {\n code += `import ${importName} from ${url};\\n`\n }\n } else {\n code += `var ${importName} = require(${url});\\n`\n }\n }\n\n return code ? `// Imports\\n${code}` : ''\n}\n\nfunction normalizeSourceMapForRuntime(map: any, loaderContext: any) {\n const resultMap = map ? map.toJSON() : null\n\n if (resultMap) {\n delete resultMap.file\n\n resultMap.sourceRoot = ''\n\n resultMap.sources = resultMap.sources.map((source: string) => {\n // Non-standard syntax from `postcss`\n if (source.startsWith('<')) {\n return source\n }\n\n const sourceType = getURLType(source)\n\n if (sourceType !== 'path-relative') {\n return source\n }\n\n const resourceDirname = path.dirname(loaderContext.resourcePath)\n const absoluteSource = path.resolve(resourceDirname, source)\n const contextifyPath = normalizePath(\n path.relative(loaderContext.rootContext, absoluteSource)\n )\n\n return `webpack://${contextifyPath}`\n })\n }\n\n return JSON.stringify(resultMap)\n}\n\nfunction getModuleCode(\n result: { map: any; css: any },\n api: any,\n replacements: any,\n options: {\n modules: { exportOnlyLocals: boolean; namedExport: any }\n sourceMap: any\n },\n loaderContext: any\n) {\n if (options.modules.exportOnlyLocals === true) {\n return ''\n }\n\n const sourceMapValue = options.sourceMap\n ? `,${normalizeSourceMapForRuntime(result.map, loaderContext)}`\n : ''\n\n let code = JSON.stringify(result.css)\n let beforeCode = `var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(${options.sourceMap});\\n`\n\n for (const item of api) {\n const { url, media, dedupe } = item\n\n beforeCode += url\n ? `___CSS_LOADER_EXPORT___.push([module.id, ${JSON.stringify(\n `@import url(${url});`\n )}${media ? `, ${JSON.stringify(media)}` : ''}]);\\n`\n : `___CSS_LOADER_EXPORT___.i(${item.importName}${\n media ? `, ${JSON.stringify(media)}` : dedupe ? ', \"\"' : ''\n }${dedupe ? ', true' : ''});\\n`\n }\n\n for (const item of replacements) {\n const { replacementName, importName, localName } = item\n\n if (localName) {\n code = code.replace(new RegExp(replacementName, 'g'), () =>\n options.modules.namedExport\n ? `\" + ${importName}_NAMED___[${JSON.stringify(\n camelCase(localName)\n )}] + \"`\n : `\" + ${importName}.locals[${JSON.stringify(localName)}] + \"`\n )\n } else {\n const { hash, needQuotes } = item\n const getUrlOptions = [\n ...(hash ? [`hash: ${JSON.stringify(hash)}`] : []),\n ...(needQuotes ? 'needQuotes: true' : []),\n ]\n const preparedOptions =\n getUrlOptions.length > 0 ? `, { ${getUrlOptions.join(', ')} }` : ''\n\n beforeCode += `var ${replacementName} = ___CSS_LOADER_GET_URL_IMPORT___(${importName}${preparedOptions});\\n`\n code = code.replace(\n new RegExp(replacementName, 'g'),\n () => `\" + ${replacementName} + \"`\n )\n }\n }\n\n return `${beforeCode}// Module\\n___CSS_LOADER_EXPORT___.push([module.id, ${code}, \"\"${sourceMapValue}]);\\n`\n}\n\nfunction dashesCamelCase(str: string) {\n return str.replace(/-+(\\w)/g, (_match: any, firstLetter: string) =>\n firstLetter.toUpperCase()\n )\n}\n\nfunction getExportCode(\n exports: any,\n replacements: any,\n options: {\n modules: {\n namedExport: any\n exportLocalsConvention: any\n exportOnlyLocals: any\n }\n esModule: any\n }\n) {\n let code = '// Exports\\n'\n let localsCode = ''\n\n const addExportToLocalsCode = (name: string, value: any) => {\n if (options.modules.namedExport) {\n localsCode += `export const ${camelCase(name)} = ${JSON.stringify(\n value\n )};\\n`\n } else {\n if (localsCode) {\n localsCode += `,\\n`\n }\n\n localsCode += `\\t${JSON.stringify(name)}: ${JSON.stringify(value)}`\n }\n }\n\n for (const { name, value } of exports) {\n switch (options.modules.exportLocalsConvention) {\n case 'camelCase': {\n addExportToLocalsCode(name, value)\n\n const modifiedName = camelCase(name)\n\n if (modifiedName !== name) {\n addExportToLocalsCode(modifiedName, value)\n }\n break\n }\n case 'camelCaseOnly': {\n addExportToLocalsCode(camelCase(name), value)\n break\n }\n case 'dashes': {\n addExportToLocalsCode(name, value)\n\n const modifiedName = dashesCamelCase(name)\n\n if (modifiedName !== name) {\n addExportToLocalsCode(modifiedName, value)\n }\n break\n }\n case 'dashesOnly': {\n addExportToLocalsCode(dashesCamelCase(name), value)\n break\n }\n case 'asIs':\n default:\n addExportToLocalsCode(name, value)\n break\n }\n }\n\n for (const item of replacements) {\n const { replacementName, localName } = item\n\n if (localName) {\n const { importName } = item\n\n localsCode = localsCode.replace(new RegExp(replacementName, 'g'), () => {\n if (options.modules.namedExport) {\n return `\" + ${importName}_NAMED___[${JSON.stringify(\n camelCase(localName)\n )}] + \"`\n } else if (options.modules.exportOnlyLocals) {\n return `\" + ${importName}[${JSON.stringify(localName)}] + \"`\n }\n\n return `\" + ${importName}.locals[${JSON.stringify(localName)}] + \"`\n })\n } else {\n localsCode = localsCode.replace(\n new RegExp(replacementName, 'g'),\n () => `\" + ${replacementName} + \"`\n )\n }\n }\n\n if (options.modules.exportOnlyLocals) {\n code += options.modules.namedExport\n ? localsCode\n : `${\n options.esModule ? 'export default' : 'module.exports ='\n } {\\n${localsCode}\\n};\\n`\n\n return code\n }\n\n if (localsCode) {\n code += options.modules.namedExport\n ? localsCode\n : `___CSS_LOADER_EXPORT___.locals = {\\n${localsCode}\\n};\\n`\n }\n\n code += `${\n options.esModule ? 'export default' : 'module.exports ='\n } ___CSS_LOADER_EXPORT___;\\n`\n\n return code\n}\n\nasync function resolveRequests(\n resolve: (arg0: any, arg1: any) => Promise<any>,\n context: any,\n possibleRequests: any[]\n): Promise<any> {\n return resolve(context, possibleRequests[0])\n .then((result: any) => {\n return result\n })\n .catch((error: any) => {\n const [, ...tailPossibleRequests] = possibleRequests\n\n if (tailPossibleRequests.length === 0) {\n throw error\n }\n\n return resolveRequests(resolve, context, tailPossibleRequests)\n })\n}\n\nfunction isUrlRequestable(url: string) {\n // Protocol-relative URLs\n if (/^\\/\\//.test(url)) {\n return false\n }\n\n // `file:` protocol\n if (/^file:/i.test(url)) {\n return true\n }\n\n // Absolute URLs\n if (/^[a-z][a-z0-9+.-]*:/i.test(url)) {\n return true\n }\n\n // `#` URLs\n if (/^#/.test(url)) {\n return false\n }\n\n return true\n}\n\nfunction sort(a: { index: number }, b: { index: number }) {\n return a.index - b.index\n}\n\nfunction isDataUrl(url: string) {\n if (/^data:/i.test(url)) {\n return true\n }\n\n return false\n}\n\nexport {\n isDataUrl,\n shouldUseModulesPlugins,\n shouldUseImportPlugin,\n shouldUseURLPlugin,\n shouldUseIcssPlugin,\n normalizeUrl,\n requestify,\n getFilter,\n getModulesPlugins,\n normalizeSourceMap,\n getPreRequester,\n getImportCode,\n getModuleCode,\n getExportCode,\n resolveRequests,\n isUrlRequestable,\n sort,\n // For lightningcss-loader\n normalizeSourceMapForRuntime,\n dashesCamelCase,\n}\n"],"names":["fileURLToPath","path","urlToRequest","modulesValues","localByDefault","extractImports","modulesScope","camelCase","normalizePath","whitespace","unescapeRegExp","RegExp","matchNativeWin32Path","unescape","str","replace","_","escaped","escapedWhitespace","high","String","fromCharCode","fixedEncodeURIComponent","c","charCodeAt","toString","normalizeUrl","url","isStringValue","normalizedUrl","test","decodeURIComponent","error","isDataUrl","decodeURI","requestify","rootContext","charAt","getFilter","filter","resourcePath","args","shouldUseImportPlugin","options","modules","exportOnlyLocals","import","shouldUseURLPlugin","shouldUseModulesPlugins","compileType","shouldUseIcssPlugin","icss","Boolean","getModulesPlugins","loaderContext","meta","mode","getLocalIdent","localIdentName","localIdentContext","localIdentHashPrefix","localIdentRegExp","plugins","generateScopedName","exportName","context","hashPrefix","regExp","exportGlobals","emitError","IS_NATIVE_WIN32_PATH","ABSOLUTE_SCHEME","getURLType","source","normalizeSourceMap","map","newMap","JSON","parse","file","sourceRoot","sources","startsWith","sourceType","absoluteSource","resolve","relative","dirname","getPreRequester","loaders","loaderIndex","cache","Object","create","number","loadersRequest","slice","x","request","join","getImportCode","imports","code","item","importName","esModule","namedExport","normalizeSourceMapForRuntime","resultMap","toJSON","resourceDirname","contextifyPath","stringify","getModuleCode","result","api","replacements","sourceMapValue","sourceMap","css","beforeCode","media","dedupe","replacementName","localName","hash","needQuotes","getUrlOptions","preparedOptions","length","dashesCamelCase","_match","firstLetter","toUpperCase","getExportCode","exports","localsCode","addExportToLocalsCode","name","value","exportLocalsConvention","modifiedName","resolveRequests","possibleRequests","then","catch","tailPossibleRequests","isUrlRequestable","sort","a","b","index"],"mappings":"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","ignoreList":[0]}
@@ -55,15 +55,15 @@ export function resolveSitemap(data) {
55
55
  });
56
56
  let content = '';
57
57
  content += '<?xml version="1.0" encoding="UTF-8"?>\n';
58
- content += '<urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9"';
58
+ content += '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"';
59
59
  if (hasImages) {
60
- content += ' xmlns:image="https://www.google.com/schemas/sitemap-image/1.1"';
60
+ content += ' xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"';
61
61
  }
62
62
  if (hasVideos) {
63
- content += ' xmlns:video="https://www.google.com/schemas/sitemap-video/1.1"';
63
+ content += ' xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"';
64
64
  }
65
65
  if (hasAlternates) {
66
- content += ' xmlns:xhtml="https://www.w3.org/1999/xhtml">\n';
66
+ content += ' xmlns:xhtml="http://www.w3.org/1999/xhtml">\n';
67
67
  } else {
68
68
  content += '>\n';
69
69
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/build/webpack/loaders/metadata/resolve-route-data.ts"],"sourcesContent":["import type { MetadataRoute } from '../../../../lib/metadata/types/metadata-interface'\nimport { resolveArray } from '../../../../lib/metadata/generate/utils'\n\n// convert robots data to txt string\nexport function resolveRobots(data: MetadataRoute.Robots): string {\n let content = ''\n const rules = Array.isArray(data.rules) ? data.rules : [data.rules]\n for (const rule of rules) {\n const userAgent = resolveArray(rule.userAgent || ['*'])\n for (const agent of userAgent) {\n content += `User-Agent: ${agent}\\n`\n }\n if (rule.allow) {\n const allow = resolveArray(rule.allow)\n for (const item of allow) {\n content += `Allow: ${item}\\n`\n }\n }\n if (rule.disallow) {\n const disallow = resolveArray(rule.disallow)\n for (const item of disallow) {\n content += `Disallow: ${item}\\n`\n }\n }\n if (rule.crawlDelay) {\n content += `Crawl-delay: ${rule.crawlDelay}\\n`\n }\n content += '\\n'\n }\n if (data.host) {\n content += `Host: ${data.host}\\n`\n }\n if (data.sitemap) {\n const sitemap = resolveArray(data.sitemap)\n // TODO-METADATA: support injecting sitemap url into robots.txt\n sitemap.forEach((item) => {\n content += `Sitemap: ${item}\\n`\n })\n }\n\n return content\n}\n\n// TODO-METADATA: support multi sitemap files\n// convert sitemap data to xml string\nexport function resolveSitemap(data: MetadataRoute.Sitemap): string {\n const hasAlternates = data.some(\n (item) => Object.keys(item.alternates ?? {}).length > 0\n )\n const hasImages = data.some((item) => Boolean(item.images?.length))\n const hasVideos = data.some((item) => Boolean(item.videos?.length))\n\n let content = ''\n content += '<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n'\n content += '<urlset xmlns=\"https://www.sitemaps.org/schemas/sitemap/0.9\"'\n if (hasImages) {\n content += ' xmlns:image=\"https://www.google.com/schemas/sitemap-image/1.1\"'\n }\n if (hasVideos) {\n content += ' xmlns:video=\"https://www.google.com/schemas/sitemap-video/1.1\"'\n }\n if (hasAlternates) {\n content += ' xmlns:xhtml=\"https://www.w3.org/1999/xhtml\">\\n'\n } else {\n content += '>\\n'\n }\n for (const item of data) {\n content += '<url>\\n'\n content += `<loc>${item.url}</loc>\\n`\n\n const languages = item.alternates?.languages\n if (languages && Object.keys(languages).length) {\n // Since sitemap is separated from the page rendering, there's not metadataBase accessible yet.\n // we give the default setting that won't effect the languages resolving.\n for (const language in languages) {\n content += `<xhtml:link rel=\"alternate\" hreflang=\"${language}\" href=\"${\n languages[language as keyof typeof languages]\n }\" />\\n`\n }\n }\n if (item.images?.length) {\n for (const image of item.images) {\n content += `<image:image>\\n<image:loc>${image}</image:loc>\\n</image:image>\\n`\n }\n }\n if (item.videos?.length) {\n for (const video of item.videos) {\n let videoFields = [\n `<video:video>`,\n `<video:title>${video.title}</video:title>`,\n `<video:thumbnail_loc>${video.thumbnail_loc}</video:thumbnail_loc>`,\n `<video:description>${video.description}</video:description>`,\n video.content_loc &&\n `<video:content_loc>${video.content_loc}</video:content_loc>`,\n video.player_loc &&\n `<video:player_loc>${video.player_loc}</video:player_loc>`,\n video.duration &&\n `<video:duration>${video.duration}</video:duration>`,\n video.view_count &&\n `<video:view_count>${video.view_count}</video:view_count>`,\n video.tag && `<video:tag>${video.tag}</video:tag>`,\n video.rating && `<video:rating>${video.rating}</video:rating>`,\n video.expiration_date &&\n `<video:expiration_date>${video.expiration_date}</video:expiration_date>`,\n video.publication_date &&\n `<video:publication_date>${video.publication_date}</video:publication_date>`,\n video.family_friendly &&\n `<video:family_friendly>${video.family_friendly}</video:family_friendly>`,\n video.requires_subscription &&\n `<video:requires_subscription>${video.requires_subscription}</video:requires_subscription>`,\n video.live && `<video:live>${video.live}</video:live>`,\n video.restriction &&\n `<video:restriction relationship=\"${video.restriction.relationship}\">${video.restriction.content}</video:restriction>`,\n video.platform &&\n `<video:platform relationship=\"${video.platform.relationship}\">${video.platform.content}</video:platform>`,\n video.uploader &&\n `<video:uploader${video.uploader.info && ` info=\"${video.uploader.info}\"`}>${video.uploader.content}</video:uploader>`,\n `</video:video>\\n`,\n ].filter(Boolean)\n content += videoFields.join('\\n')\n }\n }\n if (item.lastModified) {\n const serializedDate =\n item.lastModified instanceof Date\n ? item.lastModified.toISOString()\n : item.lastModified\n\n content += `<lastmod>${serializedDate}</lastmod>\\n`\n }\n\n if (item.changeFrequency) {\n content += `<changefreq>${item.changeFrequency}</changefreq>\\n`\n }\n\n if (typeof item.priority === 'number') {\n content += `<priority>${item.priority}</priority>\\n`\n }\n\n content += '</url>\\n'\n }\n\n content += '</urlset>\\n'\n\n return content\n}\n\nexport function resolveManifest(data: MetadataRoute.Manifest): string {\n return JSON.stringify(data)\n}\n\nexport function resolveRouteData(\n data: MetadataRoute.Robots | MetadataRoute.Sitemap | MetadataRoute.Manifest,\n fileType: 'robots' | 'sitemap' | 'manifest'\n): string {\n if (fileType === 'robots') {\n return resolveRobots(data as MetadataRoute.Robots)\n }\n if (fileType === 'sitemap') {\n return resolveSitemap(data as MetadataRoute.Sitemap)\n }\n if (fileType === 'manifest') {\n return resolveManifest(data as MetadataRoute.Manifest)\n }\n return ''\n}\n"],"names":["resolveArray","resolveRobots","data","content","rules","Array","isArray","rule","userAgent","agent","allow","item","disallow","crawlDelay","host","sitemap","forEach","resolveSitemap","hasAlternates","some","Object","keys","alternates","length","hasImages","Boolean","images","hasVideos","videos","url","languages","language","image","video","videoFields","title","thumbnail_loc","description","content_loc","player_loc","duration","view_count","tag","rating","expiration_date","publication_date","family_friendly","requires_subscription","live","restriction","relationship","platform","uploader","info","filter","join","lastModified","serializedDate","Date","toISOString","changeFrequency","priority","resolveManifest","JSON","stringify","resolveRouteData","fileType"],"mappings":"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","ignoreList":[0]}
1
+ {"version":3,"sources":["../../../../../src/build/webpack/loaders/metadata/resolve-route-data.ts"],"sourcesContent":["import type { MetadataRoute } from '../../../../lib/metadata/types/metadata-interface'\nimport { resolveArray } from '../../../../lib/metadata/generate/utils'\n\n// convert robots data to txt string\nexport function resolveRobots(data: MetadataRoute.Robots): string {\n let content = ''\n const rules = Array.isArray(data.rules) ? data.rules : [data.rules]\n for (const rule of rules) {\n const userAgent = resolveArray(rule.userAgent || ['*'])\n for (const agent of userAgent) {\n content += `User-Agent: ${agent}\\n`\n }\n if (rule.allow) {\n const allow = resolveArray(rule.allow)\n for (const item of allow) {\n content += `Allow: ${item}\\n`\n }\n }\n if (rule.disallow) {\n const disallow = resolveArray(rule.disallow)\n for (const item of disallow) {\n content += `Disallow: ${item}\\n`\n }\n }\n if (rule.crawlDelay) {\n content += `Crawl-delay: ${rule.crawlDelay}\\n`\n }\n content += '\\n'\n }\n if (data.host) {\n content += `Host: ${data.host}\\n`\n }\n if (data.sitemap) {\n const sitemap = resolveArray(data.sitemap)\n // TODO-METADATA: support injecting sitemap url into robots.txt\n sitemap.forEach((item) => {\n content += `Sitemap: ${item}\\n`\n })\n }\n\n return content\n}\n\n// TODO-METADATA: support multi sitemap files\n// convert sitemap data to xml string\nexport function resolveSitemap(data: MetadataRoute.Sitemap): string {\n const hasAlternates = data.some(\n (item) => Object.keys(item.alternates ?? {}).length > 0\n )\n const hasImages = data.some((item) => Boolean(item.images?.length))\n const hasVideos = data.some((item) => Boolean(item.videos?.length))\n\n let content = ''\n content += '<?xml version=\"1.0\" encoding=\"UTF-8\"?>\\n'\n content += '<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"'\n if (hasImages) {\n content += ' xmlns:image=\"http://www.google.com/schemas/sitemap-image/1.1\"'\n }\n if (hasVideos) {\n content += ' xmlns:video=\"http://www.google.com/schemas/sitemap-video/1.1\"'\n }\n if (hasAlternates) {\n content += ' xmlns:xhtml=\"http://www.w3.org/1999/xhtml\">\\n'\n } else {\n content += '>\\n'\n }\n for (const item of data) {\n content += '<url>\\n'\n content += `<loc>${item.url}</loc>\\n`\n\n const languages = item.alternates?.languages\n if (languages && Object.keys(languages).length) {\n // Since sitemap is separated from the page rendering, there's not metadataBase accessible yet.\n // we give the default setting that won't effect the languages resolving.\n for (const language in languages) {\n content += `<xhtml:link rel=\"alternate\" hreflang=\"${language}\" href=\"${\n languages[language as keyof typeof languages]\n }\" />\\n`\n }\n }\n if (item.images?.length) {\n for (const image of item.images) {\n content += `<image:image>\\n<image:loc>${image}</image:loc>\\n</image:image>\\n`\n }\n }\n if (item.videos?.length) {\n for (const video of item.videos) {\n let videoFields = [\n `<video:video>`,\n `<video:title>${video.title}</video:title>`,\n `<video:thumbnail_loc>${video.thumbnail_loc}</video:thumbnail_loc>`,\n `<video:description>${video.description}</video:description>`,\n video.content_loc &&\n `<video:content_loc>${video.content_loc}</video:content_loc>`,\n video.player_loc &&\n `<video:player_loc>${video.player_loc}</video:player_loc>`,\n video.duration &&\n `<video:duration>${video.duration}</video:duration>`,\n video.view_count &&\n `<video:view_count>${video.view_count}</video:view_count>`,\n video.tag && `<video:tag>${video.tag}</video:tag>`,\n video.rating && `<video:rating>${video.rating}</video:rating>`,\n video.expiration_date &&\n `<video:expiration_date>${video.expiration_date}</video:expiration_date>`,\n video.publication_date &&\n `<video:publication_date>${video.publication_date}</video:publication_date>`,\n video.family_friendly &&\n `<video:family_friendly>${video.family_friendly}</video:family_friendly>`,\n video.requires_subscription &&\n `<video:requires_subscription>${video.requires_subscription}</video:requires_subscription>`,\n video.live && `<video:live>${video.live}</video:live>`,\n video.restriction &&\n `<video:restriction relationship=\"${video.restriction.relationship}\">${video.restriction.content}</video:restriction>`,\n video.platform &&\n `<video:platform relationship=\"${video.platform.relationship}\">${video.platform.content}</video:platform>`,\n video.uploader &&\n `<video:uploader${video.uploader.info && ` info=\"${video.uploader.info}\"`}>${video.uploader.content}</video:uploader>`,\n `</video:video>\\n`,\n ].filter(Boolean)\n content += videoFields.join('\\n')\n }\n }\n if (item.lastModified) {\n const serializedDate =\n item.lastModified instanceof Date\n ? item.lastModified.toISOString()\n : item.lastModified\n\n content += `<lastmod>${serializedDate}</lastmod>\\n`\n }\n\n if (item.changeFrequency) {\n content += `<changefreq>${item.changeFrequency}</changefreq>\\n`\n }\n\n if (typeof item.priority === 'number') {\n content += `<priority>${item.priority}</priority>\\n`\n }\n\n content += '</url>\\n'\n }\n\n content += '</urlset>\\n'\n\n return content\n}\n\nexport function resolveManifest(data: MetadataRoute.Manifest): string {\n return JSON.stringify(data)\n}\n\nexport function resolveRouteData(\n data: MetadataRoute.Robots | MetadataRoute.Sitemap | MetadataRoute.Manifest,\n fileType: 'robots' | 'sitemap' | 'manifest'\n): string {\n if (fileType === 'robots') {\n return resolveRobots(data as MetadataRoute.Robots)\n }\n if (fileType === 'sitemap') {\n return resolveSitemap(data as MetadataRoute.Sitemap)\n }\n if (fileType === 'manifest') {\n return resolveManifest(data as MetadataRoute.Manifest)\n }\n return ''\n}\n"],"names":["resolveArray","resolveRobots","data","content","rules","Array","isArray","rule","userAgent","agent","allow","item","disallow","crawlDelay","host","sitemap","forEach","resolveSitemap","hasAlternates","some","Object","keys","alternates","length","hasImages","Boolean","images","hasVideos","videos","url","languages","language","image","video","videoFields","title","thumbnail_loc","description","content_loc","player_loc","duration","view_count","tag","rating","expiration_date","publication_date","family_friendly","requires_subscription","live","restriction","relationship","platform","uploader","info","filter","join","lastModified","serializedDate","Date","toISOString","changeFrequency","priority","resolveManifest","JSON","stringify","resolveRouteData","fileType"],"mappings":"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","ignoreList":[0]}