next 16.1.1-canary.23 → 16.1.1-canary.25

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 (106) hide show
  1. package/dist/.build-commit +1 -1
  2. package/dist/bin/next +2 -2
  3. package/dist/build/index.js +3 -3
  4. package/dist/build/swc/index.js +1 -1
  5. package/dist/build/templates/app-page.js +8 -16
  6. package/dist/build/templates/app-page.js.map +1 -1
  7. package/dist/build/templates/app-route.js +1 -1
  8. package/dist/build/templates/app-route.js.map +1 -1
  9. package/dist/build/webpack-config.js +3 -3
  10. package/dist/bundle-analyzer/404.html +2 -2
  11. package/dist/bundle-analyzer/__next.__PAGE__.txt +1 -1
  12. package/dist/bundle-analyzer/__next._full.txt +1 -1
  13. package/dist/bundle-analyzer/__next._head.txt +1 -1
  14. package/dist/bundle-analyzer/__next._index.txt +1 -1
  15. package/dist/bundle-analyzer/__next._tree.txt +1 -1
  16. package/dist/bundle-analyzer/_not-found/__next._full.txt +1 -1
  17. package/dist/bundle-analyzer/_not-found/__next._head.txt +1 -1
  18. package/dist/bundle-analyzer/_not-found/__next._index.txt +1 -1
  19. package/dist/bundle-analyzer/_not-found/__next._not-found.__PAGE__.txt +1 -1
  20. package/dist/bundle-analyzer/_not-found/__next._not-found.txt +1 -1
  21. package/dist/bundle-analyzer/_not-found/__next._tree.txt +1 -1
  22. package/dist/bundle-analyzer/_not-found.html +2 -2
  23. package/dist/bundle-analyzer/_not-found.txt +1 -1
  24. package/dist/bundle-analyzer/index.html +2 -2
  25. package/dist/bundle-analyzer/index.txt +1 -1
  26. package/dist/client/app-bootstrap.js +1 -1
  27. package/dist/client/index.js +1 -1
  28. package/dist/compiled/next-server/pages-api-turbo.runtime.dev.js.map +1 -1
  29. package/dist/compiled/next-server/pages-api-turbo.runtime.prod.js.map +1 -1
  30. package/dist/compiled/next-server/pages-api.runtime.dev.js.map +1 -1
  31. package/dist/compiled/next-server/pages-api.runtime.prod.js.map +1 -1
  32. package/dist/compiled/next-server/pages-turbo.runtime.dev.js +2 -2
  33. package/dist/compiled/next-server/pages-turbo.runtime.dev.js.map +1 -1
  34. package/dist/compiled/next-server/pages-turbo.runtime.prod.js +8 -8
  35. package/dist/compiled/next-server/pages-turbo.runtime.prod.js.map +1 -1
  36. package/dist/compiled/next-server/pages.runtime.dev.js +2 -2
  37. package/dist/compiled/next-server/pages.runtime.dev.js.map +1 -1
  38. package/dist/compiled/next-server/pages.runtime.prod.js +8 -8
  39. package/dist/compiled/next-server/pages.runtime.prod.js.map +1 -1
  40. package/dist/compiled/next-server/server.runtime.prod.js +4 -4
  41. package/dist/compiled/next-server/server.runtime.prod.js.map +1 -1
  42. package/dist/esm/build/index.js +3 -3
  43. package/dist/esm/build/swc/index.js +1 -1
  44. package/dist/esm/build/templates/app-page.js +8 -16
  45. package/dist/esm/build/templates/app-page.js.map +1 -1
  46. package/dist/esm/build/templates/app-route.js +2 -2
  47. package/dist/esm/build/templates/app-route.js.map +1 -1
  48. package/dist/esm/build/webpack-config.js +3 -3
  49. package/dist/esm/client/app-bootstrap.js +1 -1
  50. package/dist/esm/client/index.js +1 -1
  51. package/dist/esm/server/base-server.js +1 -3
  52. package/dist/esm/server/base-server.js.map +1 -1
  53. package/dist/esm/server/config-schema.js +0 -1
  54. package/dist/esm/server/config-schema.js.map +1 -1
  55. package/dist/esm/server/config-shared.js +0 -2
  56. package/dist/esm/server/config-shared.js.map +1 -1
  57. package/dist/esm/server/dev/hot-reloader-turbopack.js +1 -1
  58. package/dist/esm/server/dev/hot-reloader-webpack.js +1 -1
  59. package/dist/esm/server/lib/app-info-log.js +1 -1
  60. package/dist/esm/server/lib/cache-control.js +4 -45
  61. package/dist/esm/server/lib/cache-control.js.map +1 -1
  62. package/dist/esm/server/lib/start-server.js +1 -1
  63. package/dist/esm/server/next-server.js +1 -2
  64. package/dist/esm/server/next-server.js.map +1 -1
  65. package/dist/esm/server/render.js +3 -3
  66. package/dist/esm/server/render.js.map +1 -1
  67. package/dist/esm/server/route-modules/pages/pages-handler.js +3 -4
  68. package/dist/esm/server/route-modules/pages/pages-handler.js.map +1 -1
  69. package/dist/esm/server/send-payload.js +3 -3
  70. package/dist/esm/server/send-payload.js.map +1 -1
  71. package/dist/esm/shared/lib/errors/canary-only-config-error.js +1 -1
  72. package/dist/server/base-server.d.ts +0 -1
  73. package/dist/server/base-server.js +1 -3
  74. package/dist/server/base-server.js.map +1 -1
  75. package/dist/server/config-schema.d.ts +0 -1
  76. package/dist/server/config-schema.js +0 -1
  77. package/dist/server/config-schema.js.map +1 -1
  78. package/dist/server/config-shared.d.ts +1 -8
  79. package/dist/server/config-shared.js +0 -2
  80. package/dist/server/config-shared.js.map +1 -1
  81. package/dist/server/dev/hot-reloader-turbopack.js +1 -1
  82. package/dist/server/dev/hot-reloader-webpack.js +1 -1
  83. package/dist/server/lib/app-info-log.js +1 -1
  84. package/dist/server/lib/cache-control.d.ts +1 -28
  85. package/dist/server/lib/cache-control.js +7 -52
  86. package/dist/server/lib/cache-control.js.map +1 -1
  87. package/dist/server/lib/start-server.js +1 -1
  88. package/dist/server/next-server.d.ts +0 -1
  89. package/dist/server/next-server.js +1 -2
  90. package/dist/server/next-server.js.map +1 -1
  91. package/dist/server/render.d.ts +0 -1
  92. package/dist/server/render.js +2 -2
  93. package/dist/server/render.js.map +1 -1
  94. package/dist/server/route-modules/pages/pages-handler.js +2 -3
  95. package/dist/server/route-modules/pages/pages-handler.js.map +1 -1
  96. package/dist/server/send-payload.d.ts +1 -2
  97. package/dist/server/send-payload.js +2 -2
  98. package/dist/server/send-payload.js.map +1 -1
  99. package/dist/shared/lib/errors/canary-only-config-error.js +1 -1
  100. package/dist/telemetry/anonymous-meta.js +1 -1
  101. package/dist/telemetry/events/session-stopped.js +2 -2
  102. package/dist/telemetry/events/version.js +2 -2
  103. package/package.json +15 -15
  104. /package/dist/bundle-analyzer/_next/static/{nbQP50dTiki8WHJ2QEq8j → TRyTnzVJfQWPDn0Frxod5}/_buildManifest.js +0 -0
  105. /package/dist/bundle-analyzer/_next/static/{nbQP50dTiki8WHJ2QEq8j → TRyTnzVJfQWPDn0Frxod5}/_clientMiddlewareManifest.json +0 -0
  106. /package/dist/bundle-analyzer/_next/static/{nbQP50dTiki8WHJ2QEq8j → TRyTnzVJfQWPDn0Frxod5}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/build/templates/app-route.ts"],"sourcesContent":["import {\n AppRouteRouteModule,\n type AppRouteRouteHandlerContext,\n type AppRouteRouteModuleOptions,\n} from '../../server/route-modules/app-route/module.compiled'\nimport { RouteKind } from '../../server/route-kind'\nimport { patchFetch as _patchFetch } from '../../server/lib/patch-fetch'\nimport type { IncomingMessage, ServerResponse } from 'node:http'\nimport {\n addRequestMeta,\n getRequestMeta,\n setRequestMeta,\n type RequestMeta,\n} from '../../server/request-meta'\nimport { getTracer, type Span, SpanKind } from '../../server/lib/trace/tracer'\nimport { setManifestsSingleton } from '../../server/app-render/manifests-singleton'\nimport { normalizeAppPath } from '../../shared/lib/router/utils/app-paths'\nimport { NodeNextRequest, NodeNextResponse } from '../../server/base-http/node'\nimport {\n NextRequestAdapter,\n signalFromNodeResponse,\n} from '../../server/web/spec-extension/adapters/next-request'\nimport { BaseServerSpan } from '../../server/lib/trace/constants'\nimport { getRevalidateReason } from '../../server/instrumentation/utils'\nimport { sendResponse } from '../../server/send-response'\nimport {\n fromNodeOutgoingHttpHeaders,\n toNodeOutgoingHttpHeaders,\n} from '../../server/web/utils'\nimport { setCacheControlHeaders } from '../../server/lib/cache-control'\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from '../../lib/constants'\nimport { NoFallbackError } from '../../shared/lib/no-fallback-error.external'\nimport {\n CachedRouteKind,\n type ResponseCacheEntry,\n type ResponseGenerator,\n} from '../../server/response-cache'\n\nimport * as userland from 'VAR_USERLAND'\n\n// These are injected by the loader afterwards. This is injected as a variable\n// instead of a replacement because this could also be `undefined` instead of\n// an empty string.\ndeclare const nextConfigOutput: AppRouteRouteModuleOptions['nextConfigOutput']\n\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\n// INJECT:nextConfigOutput\n\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: 'VAR_DEFINITION_PAGE',\n pathname: 'VAR_DEFINITION_PATHNAME',\n filename: 'VAR_DEFINITION_FILENAME',\n bundlePath: 'VAR_DEFINITION_BUNDLE_PATH',\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: 'VAR_RESOLVED_PAGE_PATH',\n nextConfigOutput,\n userland,\n})\n\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule\n\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage,\n })\n}\n\nexport {\n routeModule,\n workAsyncStorage,\n workUnitAsyncStorage,\n serverHooks,\n patchFetch,\n}\n\nexport async function handler(\n req: IncomingMessage,\n res: ServerResponse,\n ctx: {\n waitUntil?: (prom: Promise<void>) => void\n requestMeta?: RequestMeta\n }\n) {\n if (ctx.requestMeta) {\n setRequestMeta(req, ctx.requestMeta)\n }\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint())\n }\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 null\n }\n\n const {\n buildId,\n params,\n nextConfig,\n parsedUrl,\n isDraftMode,\n prerenderManifest,\n routerServerContext,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n resolvedPathname,\n clientReferenceManifest,\n serverActionsManifest,\n } = prepareResult\n\n const normalizedSrcPage = normalizeAppPath(srcPage)\n\n let isIsr = Boolean(\n prerenderManifest.dynamicRoutes[normalizedSrcPage] ||\n prerenderManifest.routes[resolvedPathname]\n )\n\n const render404 = async () => {\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 null\n }\n\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname])\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage]\n\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.experimental.adapterPath) {\n return await render404()\n }\n throw new NoFallbackError()\n }\n }\n }\n\n let cacheKey: string | null = null\n\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey\n }\n\n const supportsDynamicResponse: boolean =\n // If we're in development, we always support dynamic HTML\n routeModule.isDev === true ||\n // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr\n\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse\n\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest,\n })\n }\n\n const method = req.method || 'GET'\n const tracer = getTracer()\n const activeSpan = tracer.getActiveScopeSpan()\n\n const context: AppRouteRouteHandlerContext = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts),\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb) => {\n res.on('close', cb)\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (\n error,\n _request,\n errorContext,\n silenceLog\n ) =>\n routeModule.onRequestError(\n req,\n error,\n errorContext,\n silenceLog,\n routerServerContext\n ),\n },\n sharedContext: {\n buildId,\n },\n }\n const nodeNextReq = new NodeNextRequest(req)\n const nodeNextRes = new NodeNextResponse(res)\n\n const nextReq = NextRequestAdapter.fromNodeNextRequest(\n nodeNextReq,\n signalFromNodeResponse(res)\n )\n\n try {\n const invokeRouteModule = async (span?: Span) => {\n return routeModule.handle(nextReq, context).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} ${srcPage}`)\n }\n })\n }\n const isMinimalMode = Boolean(getRequestMeta(req, 'minimalMode'))\n\n const handleResponse = async (currentSpan?: Span) => {\n const responseGenerator: ResponseGenerator = async ({\n previousCacheEntry,\n }) => {\n try {\n if (\n !isMinimalMode &&\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 const response = await invokeRouteModule(currentSpan)\n\n ;(req as any).fetchMetrics = (context.renderOpts as any).fetchMetrics\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil\n\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil)\n pendingWaitUntil = undefined\n }\n }\n const cacheTags = context.renderOpts.collectedTags\n\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob()\n\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers)\n\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags\n }\n\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type\n }\n\n const revalidate =\n typeof context.renderOpts.collectedRevalidate === 'undefined' ||\n context.renderOpts.collectedRevalidate >= INFINITE_CACHE\n ? false\n : context.renderOpts.collectedRevalidate\n\n const expire =\n typeof context.renderOpts.collectedExpire === 'undefined' ||\n context.renderOpts.collectedExpire >= INFINITE_CACHE\n ? undefined\n : context.renderOpts.collectedExpire\n\n // Create the cache entry for the response.\n const cacheEntry: ResponseCacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers,\n },\n cacheControl: { revalidate, expire },\n }\n\n return cacheEntry\n } else {\n // send response without caching if not ISR\n await sendResponse(\n nodeNextReq,\n nodeNextRes,\n response,\n context.renderOpts.pendingWaitUntil\n )\n return null\n }\n } catch (err) {\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 const silenceLog = false\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate,\n }),\n },\n silenceLog,\n routerServerContext\n )\n }\n throw err\n }\n }\n\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode,\n })\n\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null\n }\n\n if (cacheEntry?.value?.kind !== CachedRouteKind.APP_ROUTE) {\n throw new Error(\n `Invariant: app-route received invalid cache entry ${cacheEntry?.value?.kind}`\n )\n }\n\n if (!isMinimalMode) {\n res.setHeader(\n 'x-nextjs-cache',\n isOnDemandRevalidate\n ? 'REVALIDATED'\n : cacheEntry.isMiss\n ? 'MISS'\n : cacheEntry.isStale\n ? 'STALE'\n : 'HIT'\n )\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 const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers)\n\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER)\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 (\n cacheEntry.cacheControl &&\n !res.getHeader('Cache-Control') &&\n !headers.get('Cache-Control')\n ) {\n setCacheControlHeaders(\n headers,\n cacheEntry.cacheControl,\n nextConfig.experimental.cdnCacheControlHeader\n )\n }\n\n await sendResponse(\n nodeNextReq,\n nodeNextRes,\n // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200,\n })\n )\n return null\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(activeSpan)\n } else {\n await tracer.withPropagatedContext(req.headers, () =>\n tracer.trace(\n BaseServerSpan.handleRequest,\n {\n spanName: `${method} ${srcPage}`,\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 const silenceLog = false\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate,\n }),\n },\n silenceLog,\n routerServerContext\n )\n }\n\n // rethrow so that we can handle serving error page\n\n // If this is during static generation, throw the error again.\n if (isIsr) throw err\n\n // Otherwise, send a 500 response.\n await sendResponse(\n nodeNextReq,\n nodeNextRes,\n new Response(null, { status: 500 })\n )\n return null\n }\n}\n"],"names":["AppRouteRouteModule","RouteKind","patchFetch","_patchFetch","addRequestMeta","getRequestMeta","setRequestMeta","getTracer","SpanKind","setManifestsSingleton","normalizeAppPath","NodeNextRequest","NodeNextResponse","NextRequestAdapter","signalFromNodeResponse","BaseServerSpan","getRevalidateReason","sendResponse","fromNodeOutgoingHttpHeaders","toNodeOutgoingHttpHeaders","setCacheControlHeaders","INFINITE_CACHE","NEXT_CACHE_TAGS_HEADER","NoFallbackError","CachedRouteKind","userland","routeModule","definition","kind","APP_ROUTE","page","pathname","filename","bundlePath","distDir","process","env","__NEXT_RELATIVE_DIST_DIR","relativeProjectDir","__NEXT_RELATIVE_PROJECT_DIR","resolvedPagePath","nextConfigOutput","workAsyncStorage","workUnitAsyncStorage","serverHooks","handler","req","res","ctx","requestMeta","isDev","hrtime","bigint","srcPage","TURBOPACK","replace","multiZoneDraftMode","__NEXT_MULTI_ZONE_DRAFT_MODE","prepareResult","prepare","statusCode","end","waitUntil","Promise","resolve","buildId","params","nextConfig","parsedUrl","isDraftMode","prerenderManifest","routerServerContext","isOnDemandRevalidate","revalidateOnlyGenerated","resolvedPathname","clientReferenceManifest","serverActionsManifest","normalizedSrcPage","isIsr","Boolean","dynamicRoutes","routes","render404","isPrerendered","prerenderInfo","fallback","experimental","adapterPath","cacheKey","supportsDynamicResponse","isStaticGeneration","method","tracer","activeSpan","getActiveScopeSpan","context","renderOpts","authInterrupts","cacheComponents","incrementalCache","cacheLifeProfiles","cacheLife","onClose","cb","on","onAfterTaskError","undefined","onInstrumentationRequestError","error","_request","errorContext","silenceLog","onRequestError","sharedContext","nodeNextReq","nodeNextRes","nextReq","fromNodeNextRequest","invokeRouteModule","span","handle","finally","setAttributes","rootSpanAttributes","getRootSpanAttributes","get","handleRequest","console","warn","route","name","updateName","isMinimalMode","handleResponse","currentSpan","cacheEntry","responseGenerator","previousCacheEntry","setHeader","response","fetchMetrics","pendingWaitUntil","cacheTags","collectedTags","blob","headers","type","revalidate","collectedRevalidate","expire","collectedExpire","value","status","body","Buffer","from","arrayBuffer","cacheControl","err","isStale","routerKind","routePath","routeType","revalidateReason","routeKind","isFallback","isRoutePPREnabled","Error","isMiss","delete","getHeader","cdnCacheControlHeader","Response","withPropagatedContext","trace","spanName","SERVER","attributes","url"],"mappings":"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","ignoreList":[0]}
1
+ {"version":3,"sources":["../../../../src/build/templates/app-route.ts"],"sourcesContent":["import {\n AppRouteRouteModule,\n type AppRouteRouteHandlerContext,\n type AppRouteRouteModuleOptions,\n} from '../../server/route-modules/app-route/module.compiled'\nimport { RouteKind } from '../../server/route-kind'\nimport { patchFetch as _patchFetch } from '../../server/lib/patch-fetch'\nimport type { IncomingMessage, ServerResponse } from 'node:http'\nimport {\n addRequestMeta,\n getRequestMeta,\n setRequestMeta,\n type RequestMeta,\n} from '../../server/request-meta'\nimport { getTracer, type Span, SpanKind } from '../../server/lib/trace/tracer'\nimport { setManifestsSingleton } from '../../server/app-render/manifests-singleton'\nimport { normalizeAppPath } from '../../shared/lib/router/utils/app-paths'\nimport { NodeNextRequest, NodeNextResponse } from '../../server/base-http/node'\nimport {\n NextRequestAdapter,\n signalFromNodeResponse,\n} from '../../server/web/spec-extension/adapters/next-request'\nimport { BaseServerSpan } from '../../server/lib/trace/constants'\nimport { getRevalidateReason } from '../../server/instrumentation/utils'\nimport { sendResponse } from '../../server/send-response'\nimport {\n fromNodeOutgoingHttpHeaders,\n toNodeOutgoingHttpHeaders,\n} from '../../server/web/utils'\nimport { getCacheControlHeader } from '../../server/lib/cache-control'\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from '../../lib/constants'\nimport { NoFallbackError } from '../../shared/lib/no-fallback-error.external'\nimport {\n CachedRouteKind,\n type ResponseCacheEntry,\n type ResponseGenerator,\n} from '../../server/response-cache'\n\nimport * as userland from 'VAR_USERLAND'\n\n// These are injected by the loader afterwards. This is injected as a variable\n// instead of a replacement because this could also be `undefined` instead of\n// an empty string.\ndeclare const nextConfigOutput: AppRouteRouteModuleOptions['nextConfigOutput']\n\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\n// INJECT:nextConfigOutput\n\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: 'VAR_DEFINITION_PAGE',\n pathname: 'VAR_DEFINITION_PATHNAME',\n filename: 'VAR_DEFINITION_FILENAME',\n bundlePath: 'VAR_DEFINITION_BUNDLE_PATH',\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: 'VAR_RESOLVED_PAGE_PATH',\n nextConfigOutput,\n userland,\n})\n\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule\n\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage,\n })\n}\n\nexport {\n routeModule,\n workAsyncStorage,\n workUnitAsyncStorage,\n serverHooks,\n patchFetch,\n}\n\nexport async function handler(\n req: IncomingMessage,\n res: ServerResponse,\n ctx: {\n waitUntil?: (prom: Promise<void>) => void\n requestMeta?: RequestMeta\n }\n) {\n if (ctx.requestMeta) {\n setRequestMeta(req, ctx.requestMeta)\n }\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint())\n }\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 null\n }\n\n const {\n buildId,\n params,\n nextConfig,\n parsedUrl,\n isDraftMode,\n prerenderManifest,\n routerServerContext,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n resolvedPathname,\n clientReferenceManifest,\n serverActionsManifest,\n } = prepareResult\n\n const normalizedSrcPage = normalizeAppPath(srcPage)\n\n let isIsr = Boolean(\n prerenderManifest.dynamicRoutes[normalizedSrcPage] ||\n prerenderManifest.routes[resolvedPathname]\n )\n\n const render404 = async () => {\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 null\n }\n\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname])\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage]\n\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.experimental.adapterPath) {\n return await render404()\n }\n throw new NoFallbackError()\n }\n }\n }\n\n let cacheKey: string | null = null\n\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey\n }\n\n const supportsDynamicResponse: boolean =\n // If we're in development, we always support dynamic HTML\n routeModule.isDev === true ||\n // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr\n\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse\n\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest,\n })\n }\n\n const method = req.method || 'GET'\n const tracer = getTracer()\n const activeSpan = tracer.getActiveScopeSpan()\n\n const context: AppRouteRouteHandlerContext = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts),\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb) => {\n res.on('close', cb)\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (\n error,\n _request,\n errorContext,\n silenceLog\n ) =>\n routeModule.onRequestError(\n req,\n error,\n errorContext,\n silenceLog,\n routerServerContext\n ),\n },\n sharedContext: {\n buildId,\n },\n }\n const nodeNextReq = new NodeNextRequest(req)\n const nodeNextRes = new NodeNextResponse(res)\n\n const nextReq = NextRequestAdapter.fromNodeNextRequest(\n nodeNextReq,\n signalFromNodeResponse(res)\n )\n\n try {\n const invokeRouteModule = async (span?: Span) => {\n return routeModule.handle(nextReq, context).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} ${srcPage}`)\n }\n })\n }\n const isMinimalMode = Boolean(getRequestMeta(req, 'minimalMode'))\n\n const handleResponse = async (currentSpan?: Span) => {\n const responseGenerator: ResponseGenerator = async ({\n previousCacheEntry,\n }) => {\n try {\n if (\n !isMinimalMode &&\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 const response = await invokeRouteModule(currentSpan)\n\n ;(req as any).fetchMetrics = (context.renderOpts as any).fetchMetrics\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil\n\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil)\n pendingWaitUntil = undefined\n }\n }\n const cacheTags = context.renderOpts.collectedTags\n\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob()\n\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers)\n\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags\n }\n\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type\n }\n\n const revalidate =\n typeof context.renderOpts.collectedRevalidate === 'undefined' ||\n context.renderOpts.collectedRevalidate >= INFINITE_CACHE\n ? false\n : context.renderOpts.collectedRevalidate\n\n const expire =\n typeof context.renderOpts.collectedExpire === 'undefined' ||\n context.renderOpts.collectedExpire >= INFINITE_CACHE\n ? undefined\n : context.renderOpts.collectedExpire\n\n // Create the cache entry for the response.\n const cacheEntry: ResponseCacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers,\n },\n cacheControl: { revalidate, expire },\n }\n\n return cacheEntry\n } else {\n // send response without caching if not ISR\n await sendResponse(\n nodeNextReq,\n nodeNextRes,\n response,\n context.renderOpts.pendingWaitUntil\n )\n return null\n }\n } catch (err) {\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 const silenceLog = false\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate,\n }),\n },\n silenceLog,\n routerServerContext\n )\n }\n throw err\n }\n }\n\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode,\n })\n\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null\n }\n\n if (cacheEntry?.value?.kind !== CachedRouteKind.APP_ROUTE) {\n throw new Error(\n `Invariant: app-route received invalid cache entry ${cacheEntry?.value?.kind}`\n )\n }\n\n if (!isMinimalMode) {\n res.setHeader(\n 'x-nextjs-cache',\n isOnDemandRevalidate\n ? 'REVALIDATED'\n : cacheEntry.isMiss\n ? 'MISS'\n : cacheEntry.isStale\n ? 'STALE'\n : 'HIT'\n )\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 const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers)\n\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER)\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 (\n cacheEntry.cacheControl &&\n !res.getHeader('Cache-Control') &&\n !headers.get('Cache-Control')\n ) {\n headers.set(\n 'Cache-Control',\n getCacheControlHeader(cacheEntry.cacheControl)\n )\n }\n\n await sendResponse(\n nodeNextReq,\n nodeNextRes,\n // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200,\n })\n )\n return null\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(activeSpan)\n } else {\n await tracer.withPropagatedContext(req.headers, () =>\n tracer.trace(\n BaseServerSpan.handleRequest,\n {\n spanName: `${method} ${srcPage}`,\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 const silenceLog = false\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate,\n }),\n },\n silenceLog,\n routerServerContext\n )\n }\n\n // rethrow so that we can handle serving error page\n\n // If this is during static generation, throw the error again.\n if (isIsr) throw err\n\n // Otherwise, send a 500 response.\n await sendResponse(\n nodeNextReq,\n nodeNextRes,\n new Response(null, { status: 500 })\n )\n return null\n }\n}\n"],"names":["AppRouteRouteModule","RouteKind","patchFetch","_patchFetch","addRequestMeta","getRequestMeta","setRequestMeta","getTracer","SpanKind","setManifestsSingleton","normalizeAppPath","NodeNextRequest","NodeNextResponse","NextRequestAdapter","signalFromNodeResponse","BaseServerSpan","getRevalidateReason","sendResponse","fromNodeOutgoingHttpHeaders","toNodeOutgoingHttpHeaders","getCacheControlHeader","INFINITE_CACHE","NEXT_CACHE_TAGS_HEADER","NoFallbackError","CachedRouteKind","userland","routeModule","definition","kind","APP_ROUTE","page","pathname","filename","bundlePath","distDir","process","env","__NEXT_RELATIVE_DIST_DIR","relativeProjectDir","__NEXT_RELATIVE_PROJECT_DIR","resolvedPagePath","nextConfigOutput","workAsyncStorage","workUnitAsyncStorage","serverHooks","handler","req","res","ctx","requestMeta","isDev","hrtime","bigint","srcPage","TURBOPACK","replace","multiZoneDraftMode","__NEXT_MULTI_ZONE_DRAFT_MODE","prepareResult","prepare","statusCode","end","waitUntil","Promise","resolve","buildId","params","nextConfig","parsedUrl","isDraftMode","prerenderManifest","routerServerContext","isOnDemandRevalidate","revalidateOnlyGenerated","resolvedPathname","clientReferenceManifest","serverActionsManifest","normalizedSrcPage","isIsr","Boolean","dynamicRoutes","routes","render404","isPrerendered","prerenderInfo","fallback","experimental","adapterPath","cacheKey","supportsDynamicResponse","isStaticGeneration","method","tracer","activeSpan","getActiveScopeSpan","context","renderOpts","authInterrupts","cacheComponents","incrementalCache","cacheLifeProfiles","cacheLife","onClose","cb","on","onAfterTaskError","undefined","onInstrumentationRequestError","error","_request","errorContext","silenceLog","onRequestError","sharedContext","nodeNextReq","nodeNextRes","nextReq","fromNodeNextRequest","invokeRouteModule","span","handle","finally","setAttributes","rootSpanAttributes","getRootSpanAttributes","get","handleRequest","console","warn","route","name","updateName","isMinimalMode","handleResponse","currentSpan","cacheEntry","responseGenerator","previousCacheEntry","setHeader","response","fetchMetrics","pendingWaitUntil","cacheTags","collectedTags","blob","headers","type","revalidate","collectedRevalidate","expire","collectedExpire","value","status","body","Buffer","from","arrayBuffer","cacheControl","err","isStale","routerKind","routePath","routeType","revalidateReason","routeKind","isFallback","isRoutePPREnabled","Error","isMiss","delete","getHeader","set","Response","withPropagatedContext","trace","spanName","SERVER","attributes","url"],"mappings":"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","ignoreList":[0]}
@@ -1622,7 +1622,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
1622
1622
  isClient && new CopyFilePlugin({
1623
1623
  // file path to build output of `@next/polyfill-nomodule`
1624
1624
  filePath: require.resolve('./polyfills/polyfill-nomodule'),
1625
- cacheKey: "16.1.1-canary.23",
1625
+ cacheKey: "16.1.1-canary.25",
1626
1626
  name: `static/chunks/polyfills${dev ? '' : '-[hash]'}.js`,
1627
1627
  minimize: false,
1628
1628
  info: {
@@ -1816,7 +1816,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
1816
1816
  // - Next.js location on disk (some loaders use absolute paths and some resolve options depend on absolute paths)
1817
1817
  // - Next.js version
1818
1818
  // - next.config.js keys that affect compilation
1819
- version: `${__dirname}|${"16.1.1-canary.23"}|${configVars}`,
1819
+ version: `${__dirname}|${"16.1.1-canary.25"}|${configVars}`,
1820
1820
  cacheDirectory: path.join(distDir, 'cache', 'webpack'),
1821
1821
  // For production builds, it's more efficient to compress all cache files together instead of compression each one individually.
1822
1822
  // So we disable compression here and allow the build runner to take care of compressing the cache as a whole.
@@ -1872,7 +1872,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
1872
1872
  type: 'filesystem',
1873
1873
  directory: cache.cacheDirectory
1874
1874
  },
1875
- version: `${__dirname}|${"16.1.1-canary.23"}|${configVars}`
1875
+ version: `${__dirname}|${"16.1.1-canary.25"}|${configVars}`
1876
1876
  };
1877
1877
  }
1878
1878
  if (process.env.NEXT_WEBPACK_LOGGING) {
@@ -5,7 +5,7 @@
5
5
  * - next/script with `beforeInteractive` strategy
6
6
  */ import { getAssetPrefix } from './asset-prefix';
7
7
  import { setAttributesFromProps } from './set-attributes-from-props';
8
- const version = "16.1.1-canary.23";
8
+ const version = "16.1.1-canary.25";
9
9
  window.next = {
10
10
  version,
11
11
  appDir: true
@@ -25,7 +25,7 @@ import { SearchParamsContext, PathParamsContext } from '../shared/lib/hooks-clie
25
25
  import { onRecoverableError } from './react-client-callbacks/on-recoverable-error';
26
26
  import tracer from './tracing/tracer';
27
27
  import { isNextRouterError } from './components/is-next-router-error';
28
- export const version = "16.1.1-canary.23";
28
+ export const version = "16.1.1-canary.25";
29
29
  export let router;
30
30
  export const emitter = mitt();
31
31
  const looseToArray = (input)=>[].slice.call(input);
@@ -324,7 +324,6 @@ export default class Server {
324
324
  dynamicOnHover: this.nextConfig.experimental.dynamicOnHover ?? false,
325
325
  inlineCss: this.nextConfig.experimental.inlineCss ?? false,
326
326
  authInterrupts: !!this.nextConfig.experimental.authInterrupts,
327
- cdnCacheControlHeader: this.nextConfig.experimental.cdnCacheControlHeader,
328
327
  maxPostponedStateSizeBytes: parseMaxPostponedStateSize(this.nextConfig.experimental.maxPostponedStateSize)
329
328
  },
330
329
  onInstrumentationRequestError: this.instrumentationOnRequestError.bind(this),
@@ -993,8 +992,7 @@ export default class Server {
993
992
  result: body,
994
993
  generateEtags,
995
994
  poweredByHeader,
996
- cacheControl,
997
- cdnCacheControlHeader: this.nextConfig.experimental.cdnCacheControlHeader
995
+ cacheControl
998
996
  });
999
997
  res.statusCode = originalStatus;
1000
998
  }