/
home
/
techb158
/
balavpn.abdallabala.com
/
node_modules
/
next
/
dist
/
server
/
web
/
/home/techb158/balavpn.abdallabala.com/node_modules/next/dist/server/web
mkdir
upload
Name
Size
Mode
Actions
exports/
-
0777
rm
sandbox/
-
0777
rm
spec-extension/
-
0777
rm
adapter.d.ts
1021
0666
edit
dl
rm
adapter.js
18661
0666
edit
dl
rm
adapter.js.map
28520
0666
edit
dl
rm
edge-route-module-wrapper.d.ts
1367
0666
edit
dl
rm
edge-route-module-wrapper.js
5184
0666
edit
dl
rm
edge-route-module-wrapper.js.map
8522
0666
edit
dl
rm
error.d.ts
264
0666
edit
dl
rm
error.js
1423
0666
edit
dl
rm
error.js.map
1396
0666
edit
dl
rm
get-edge-preview-props.d.ts
387
0666
edit
dl
rm
get-edge-preview-props.js
802
0666
edit
dl
rm
get-edge-preview-props.js.map
1067
0666
edit
dl
rm
globals.d.ts
402
0666
edit
dl
rm
globals.js
4830
0666
edit
dl
rm
globals.js.map
6158
0666
edit
dl
rm
http.d.ts
674
0666
edit
dl
rm
http.js
795
0666
edit
dl
rm
http.js.map
1124
0666
edit
dl
rm
internal-edge-wait-until.d.ts
156
0666
edit
dl
rm
internal-edge-wait-until.js
2172
0666
edit
dl
rm
internal-edge-wait-until.js.map
2932
0666
edit
dl
rm
next-url.d.ts
1752
0666
edit
dl
rm
next-url.js
7440
0666
edit
dl
rm
next-url.js.map
13248
0666
edit
dl
rm
types.d.ts
1941
0666
edit
dl
rm
types.js
115
0666
edit
dl
rm
types.js.map
67
0666
edit
dl
rm
utils.d.ts
1249
0666
edit
dl
rm
utils.js
4914
0666
edit
dl
rm
utils.js.map
8365
0666
edit
dl
rm
web-on-close.d.ts
542
0666
edit
dl
rm
web-on-close.js
2785
0666
edit
dl
rm
web-on-close.js.map
3406
0666
edit
dl
rm
Edit:
/home/techb158/balavpn.abdallabala.com/node_modules/next/dist/server/web/adapter.js.map
(28520B)
{"version":3,"sources":["../../../src/server/web/adapter.ts"],"sourcesContent":["import type { RequestData, FetchEventResult } from './types'\nimport type { RequestInit } from './spec-extension/request'\nimport { PageSignatureError } from './error'\nimport { fromNodeOutgoingHttpHeaders, normalizeNextQueryParam } from './utils'\nimport {\n NextFetchEvent,\n getWaitUntilPromiseFromEvent,\n} from './spec-extension/fetch-event'\nimport { NextRequest } from './spec-extension/request'\nimport { NextResponse } from './spec-extension/response'\nimport {\n parseRelativeURL,\n getRelativeURL,\n} from '../../shared/lib/router/utils/relativize-url'\nimport { NextURL } from './next-url'\nimport { stripInternalSearchParams } from '../internal-utils'\nimport { normalizeRscURL } from '../../shared/lib/router/utils/app-paths'\nimport {\n FLIGHT_HEADERS,\n NEXT_REWRITTEN_PATH_HEADER,\n NEXT_REWRITTEN_QUERY_HEADER,\n NEXT_RSC_UNION_QUERY,\n RSC_HEADER,\n} from '../../client/components/app-router-headers'\nimport { ensureInstrumentationRegistered } from './globals'\nimport { createRequestStoreForAPI } from '../async-storage/request-store'\nimport { workUnitAsyncStorage } from '../app-render/work-unit-async-storage.external'\nimport { createWorkStore } from '../async-storage/work-store'\nimport { workAsyncStorage } from '../app-render/work-async-storage.external'\nimport { NEXT_ROUTER_PREFETCH_HEADER } from '../../client/components/app-router-headers'\nimport { getTracer } from '../lib/trace/tracer'\nimport type { TextMapGetter } from 'next/dist/compiled/@opentelemetry/api'\nimport { MiddlewareSpan } from '../lib/trace/constants'\nimport { CloseController } from './web-on-close'\nimport { getEdgePreviewProps } from './get-edge-preview-props'\nimport { getBuiltinRequestContext } from '../after/builtin-request-context'\nimport { getImplicitTags } from '../lib/implicit-tags'\nimport { isRSCRequestHeader } from '../lib/is-rsc-request'\n\nexport class NextRequestHint extends NextRequest {\n sourcePage: string\n fetchMetrics: FetchEventResult['fetchMetrics'] | undefined\n\n constructor(params: {\n init: RequestInit\n input: Request | string\n page: string\n }) {\n super(params.input, params.init)\n this.sourcePage = params.page\n }\n\n get request() {\n throw new PageSignatureError({ page: this.sourcePage })\n }\n\n respondWith() {\n throw new PageSignatureError({ page: this.sourcePage })\n }\n\n waitUntil() {\n throw new PageSignatureError({ page: this.sourcePage })\n }\n}\n\nconst headersGetter: TextMapGetter<Headers> = {\n keys: (headers) => Array.from(headers.keys()),\n get: (headers, key) => headers.get(key) ?? undefined,\n}\n\nexport type AdapterOptions = {\n handler: (req: NextRequestHint, event: NextFetchEvent) => Promise<Response>\n page: string\n request: RequestData\n IncrementalCache?: typeof import('../lib/incremental-cache').IncrementalCache\n incrementalCacheHandler?: typeof import('../lib/incremental-cache').CacheHandler\n bypassNextUrl?: boolean\n}\n\nlet propagator: <T>(request: NextRequestHint, fn: () => T) => T = (\n request,\n fn\n) => {\n const tracer = getTracer()\n return tracer.withPropagatedContext(request.headers, fn, headersGetter)\n}\n\nlet testApisIntercepted = false\n\nfunction ensureTestApisIntercepted() {\n if (!testApisIntercepted) {\n testApisIntercepted = true\n if (process.env.NEXT_PRIVATE_TEST_PROXY === 'true') {\n const { interceptTestApis, wrapRequestHandler } =\n // eslint-disable-next-line @next/internal/typechecked-require -- experimental/testmode is not built ins next/dist/esm\n require('next/dist/experimental/testmode/server-edge') as typeof import('../../experimental/testmode/server-edge')\n interceptTestApis()\n propagator = wrapRequestHandler(propagator)\n }\n }\n}\n\nexport async function adapter(\n params: AdapterOptions\n): Promise<FetchEventResult> {\n ensureTestApisIntercepted()\n await ensureInstrumentationRegistered()\n\n // TODO-APP: use explicit marker for this\n const isEdgeRendering =\n typeof (globalThis as any).__BUILD_MANIFEST !== 'undefined'\n\n params.request.url = normalizeRscURL(params.request.url)\n\n const requestURL = params.bypassNextUrl\n ? new URL(params.request.url)\n : new NextURL(params.request.url, {\n headers: params.request.headers,\n nextConfig: params.request.nextConfig,\n })\n\n // Iterator uses an index to keep track of the current iteration. Because of deleting and appending below we can't just use the iterator.\n // Instead we use the keys before iteration.\n const keys = [...requestURL.searchParams.keys()]\n for (const key of keys) {\n const value = requestURL.searchParams.getAll(key)\n\n const normalizedKey = normalizeNextQueryParam(key)\n if (normalizedKey) {\n requestURL.searchParams.delete(normalizedKey)\n for (const val of value) {\n requestURL.searchParams.append(normalizedKey, val)\n }\n requestURL.searchParams.delete(key)\n }\n }\n\n // Ensure users only see page requests, never data requests.\n let buildId = process.env.__NEXT_BUILD_ID || ''\n if ('buildId' in requestURL) {\n buildId = (requestURL as NextURL).buildId || ''\n requestURL.buildId = ''\n }\n\n const requestHeaders = fromNodeOutgoingHttpHeaders(params.request.headers)\n const isNextDataRequest = requestHeaders.has('x-nextjs-data')\n const isRSCRequest = isRSCRequestHeader(requestHeaders.get(RSC_HEADER))\n\n if (isNextDataRequest && requestURL.pathname === '/index') {\n requestURL.pathname = '/'\n }\n\n const flightHeaders = new Map()\n\n // Headers should only be stripped for middleware\n if (!isEdgeRendering) {\n for (const header of FLIGHT_HEADERS) {\n const value = requestHeaders.get(header)\n if (value !== null) {\n flightHeaders.set(header, value)\n requestHeaders.delete(header)\n }\n }\n }\n\n const normalizeURL = process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE\n ? new URL(params.request.url)\n : requestURL\n\n const rscHash = normalizeURL.searchParams.get(NEXT_RSC_UNION_QUERY)\n\n const request = new NextRequestHint({\n page: params.page,\n // Strip internal query parameters off the request.\n input: stripInternalSearchParams(normalizeURL).toString(),\n init: {\n body: params.request.body,\n headers: requestHeaders,\n method: params.request.method,\n nextConfig: params.request.nextConfig,\n signal: params.request.signal,\n },\n })\n\n /**\n * This allows to identify the request as a data request. The user doesn't\n * need to know about this property neither use it. We add it for testing\n * purposes.\n */\n if (isNextDataRequest) {\n Object.defineProperty(request, '__isData', {\n enumerable: false,\n value: true,\n })\n }\n\n if (\n // If we are inside of the next start sandbox\n // leverage the shared instance if not we need\n // to create a fresh cache instance each time\n !(globalThis as any).__incrementalCacheShared &&\n (params as any).IncrementalCache\n ) {\n ;(globalThis as any).__incrementalCache = new (\n params as {\n IncrementalCache: typeof import('../lib/incremental-cache').IncrementalCache\n }\n ).IncrementalCache({\n CurCacheHandler: params.incrementalCacheHandler,\n minimalMode: process.env.NODE_ENV !== 'development',\n fetchCacheKeyPrefix: process.env.__NEXT_FETCH_CACHE_KEY_PREFIX,\n dev: process.env.NODE_ENV === 'development',\n requestHeaders: params.request.headers as any,\n\n getPrerenderManifest: () => {\n return {\n version: -1 as any, // letting us know this doesn't conform to spec\n routes: {},\n dynamicRoutes: {},\n notFoundRoutes: [],\n preview: getEdgePreviewProps(),\n }\n },\n })\n }\n\n // if we're in an edge runtime sandbox, we should use the waitUntil\n // that we receive from the enclosing NextServer\n const outerWaitUntil =\n params.request.waitUntil ?? getBuiltinRequestContext()?.waitUntil\n\n const event = new NextFetchEvent({\n request,\n page: params.page,\n context: outerWaitUntil ? { waitUntil: outerWaitUntil } : undefined,\n })\n let response\n let cookiesFromResponse\n\n response = await propagator(request, () => {\n // we only care to make async storage available for middleware\n const isMiddleware =\n params.page === '/middleware' || params.page === '/src/middleware'\n\n if (isMiddleware) {\n // if we're in an edge function, we only get a subset of `nextConfig` (no `experimental`),\n // so we have to inject it via DefinePlugin.\n // in `next start` this will be passed normally (see `NextNodeServer.runMiddleware`).\n\n const waitUntil = event.waitUntil.bind(event)\n const closeController = new CloseController()\n\n return getTracer().trace(\n MiddlewareSpan.execute,\n {\n spanName: `middleware ${request.method} ${request.nextUrl.pathname}`,\n attributes: {\n 'http.target': request.nextUrl.pathname,\n 'http.method': request.method,\n },\n },\n async () => {\n try {\n const onUpdateCookies = (cookies: Array<string>) => {\n cookiesFromResponse = cookies\n }\n const previewProps = getEdgePreviewProps()\n const page = '/' // Fake Work\n const fallbackRouteParams = null\n\n const implicitTags = await getImplicitTags(\n page,\n request.nextUrl,\n fallbackRouteParams\n )\n\n const requestStore = createRequestStoreForAPI(\n request,\n request.nextUrl,\n implicitTags,\n onUpdateCookies,\n previewProps\n )\n\n const workStore = createWorkStore({\n page,\n renderOpts: {\n cacheLifeProfiles:\n params.request.nextConfig?.experimental?.cacheLife,\n experimental: {\n isRoutePPREnabled: false,\n cacheComponents: false,\n authInterrupts:\n !!params.request.nextConfig?.experimental?.authInterrupts,\n },\n supportsDynamicResponse: true,\n waitUntil,\n onClose: closeController.onClose.bind(closeController),\n onAfterTaskError: undefined,\n },\n isPrefetchRequest:\n request.headers.get(NEXT_ROUTER_PREFETCH_HEADER) === '1',\n buildId: buildId ?? '',\n previouslyRevalidatedTags: [],\n })\n\n return await workAsyncStorage.run(workStore, () =>\n workUnitAsyncStorage.run(\n requestStore,\n params.handler,\n request,\n event\n )\n )\n } finally {\n // middleware cannot stream, so we can consider the response closed\n // as soon as the handler returns.\n // we can delay running it until a bit later --\n // if it's needed, we'll have a `waitUntil` lock anyway.\n setTimeout(() => {\n closeController.dispatchClose()\n }, 0)\n }\n }\n )\n }\n return params.handler(request, event)\n })\n\n // check if response is a Response object\n if (response && !(response instanceof Response)) {\n throw new TypeError('Expected an instance of Response to be returned')\n }\n\n if (response && cookiesFromResponse) {\n response.headers.set('set-cookie', cookiesFromResponse)\n }\n\n /**\n * For rewrites we must always include the locale in the final pathname\n * so we re-create the NextURL forcing it to include it when the it is\n * an internal rewrite. Also we make sure the outgoing rewrite URL is\n * a data URL if the request was a data request.\n */\n const rewrite = response?.headers.get('x-middleware-rewrite')\n if (response && rewrite && (isRSCRequest || !isEdgeRendering)) {\n const destination = new NextURL(rewrite, {\n forceLocale: true,\n headers: params.request.headers,\n nextConfig: params.request.nextConfig,\n })\n\n if (!process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE && !isEdgeRendering) {\n if (destination.host === request.nextUrl.host) {\n destination.buildId = buildId || destination.buildId\n response.headers.set('x-middleware-rewrite', String(destination))\n }\n }\n\n /**\n * When the request is a data request we must show if there was a rewrite\n * with an internal header so the client knows which component to load\n * from the data request.\n */\n const { url: relativeDestination, isRelative } = parseRelativeURL(\n destination.toString(),\n requestURL.toString()\n )\n\n if (\n !isEdgeRendering &&\n isNextDataRequest &&\n // if the rewrite is external and external rewrite\n // resolving config is enabled don't add this header\n // so the upstream app can set it instead\n !(\n process.env.__NEXT_EXTERNAL_MIDDLEWARE_REWRITE_RESOLVE &&\n relativeDestination.match(/http(s)?:\\/\\//)\n )\n ) {\n response.headers.set('x-nextjs-rewrite', relativeDestination)\n }\n\n // If this is an RSC request, and the pathname or search has changed, and\n // this isn't an external rewrite, we need to set the rewritten pathname and\n // query headers.\n if (isRSCRequest && isRelative) {\n if (requestURL.pathname !== destination.pathname) {\n response.headers.set(NEXT_REWRITTEN_PATH_HEADER, destination.pathname)\n }\n if (requestURL.search !== destination.search) {\n response.headers.set(\n NEXT_REWRITTEN_QUERY_HEADER,\n // remove the leading ? from the search string\n destination.search.slice(1)\n )\n }\n }\n }\n\n /**\n * Always forward the `_rsc` search parameter to the rewritten URL for RSC requests,\n * unless it's already present. This is necessary to ensure that RSC hash validation\n * works correctly after a rewrite. For internal rewrites, the server can validate the\n * RSC hash using the original URL, so forwarding the `_rsc` parameter is less critical.\n * However, for external rewrites (where the request is proxied to another Next.js server),\n * the external server does not have access to the original URL or its search parameters.\n * In these cases, forwarding the `_rsc` parameter is essential so that the external server\n * can perform the correct RSC hash validation.\n */\n if (response && rewrite && isRSCRequest && rscHash) {\n const rewriteURL = new URL(rewrite)\n if (!rewriteURL.searchParams.has(NEXT_RSC_UNION_QUERY)) {\n rewriteURL.searchParams.set(NEXT_RSC_UNION_QUERY, rscHash)\n response.headers.set('x-middleware-rewrite', rewriteURL.toString())\n }\n }\n\n /**\n * For redirects we will not include the locale in case when it is the\n * default and we must also make sure the outgoing URL is a data one if\n * the incoming request was a data request.\n */\n const redirect = response?.headers.get('Location')\n if (response && redirect && !isEdgeRendering) {\n const redirectURL = new NextURL(redirect, {\n forceLocale: false,\n headers: params.request.headers,\n nextConfig: params.request.nextConfig,\n })\n\n /**\n * Responses created from redirects have immutable headers so we have\n * to clone the response to be able to modify it.\n */\n response = new Response(response.body, response)\n\n if (!process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE) {\n if (redirectURL.host === requestURL.host) {\n redirectURL.buildId = buildId || redirectURL.buildId\n response.headers.set('Location', redirectURL.toString())\n }\n }\n\n /**\n * When the request is a data request we can't use the location header as\n * it may end up with CORS error. Instead we map to an internal header so\n * the client knows the destination.\n */\n if (isNextDataRequest) {\n response.headers.delete('Location')\n response.headers.set(\n 'x-nextjs-redirect',\n getRelativeURL(redirectURL.toString(), requestURL.toString())\n )\n }\n }\n\n const finalResponse = response ? response : NextResponse.next()\n\n // Flight headers are not overridable / removable so they are applied at the end.\n const middlewareOverrideHeaders = finalResponse.headers.get(\n 'x-middleware-override-headers'\n )\n const overwrittenHeaders: string[] = []\n if (middlewareOverrideHeaders) {\n for (const [key, value] of flightHeaders) {\n finalResponse.headers.set(`x-middleware-request-${key}`, value)\n overwrittenHeaders.push(key)\n }\n\n if (overwrittenHeaders.length > 0) {\n finalResponse.headers.set(\n 'x-middleware-override-headers',\n middlewareOverrideHeaders + ',' + overwrittenHeaders.join(',')\n )\n }\n }\n\n return {\n response: finalResponse,\n waitUntil: getWaitUntilPromiseFromEvent(event) ?? Promise.resolve(),\n fetchMetrics: request.fetchMetrics,\n }\n}\n"],"names":["NextRequestHint","adapter","NextRequest","constructor","params","input","init","sourcePage","page","request","PageSignatureError","respondWith","waitUntil","headersGetter","keys","headers","Array","from","get","key","undefined","propagator","fn","tracer","getTracer","withPropagatedContext","testApisIntercepted","ensureTestApisIntercepted","process","env","NEXT_PRIVATE_TEST_PROXY","interceptTestApis","wrapRequestHandler","require","getBuiltinRequestContext","ensureInstrumentationRegistered","isEdgeRendering","globalThis","__BUILD_MANIFEST","url","normalizeRscURL","requestURL","bypassNextUrl","URL","NextURL","nextConfig","searchParams","value","getAll","normalizedKey","normalizeNextQueryParam","delete","val","append","buildId","__NEXT_BUILD_ID","requestHeaders","fromNodeOutgoingHttpHeaders","isNextDataRequest","has","isRSCRequest","isRSCRequestHeader","RSC_HEADER","pathname","flightHeaders","Map","header","FLIGHT_HEADERS","set","normalizeURL","__NEXT_NO_MIDDLEWARE_URL_NORMALIZE","rscHash","NEXT_RSC_UNION_QUERY","stripInternalSearchParams","toString","body","method","signal","Object","defineProperty","enumerable","__incrementalCacheShared","IncrementalCache","__incrementalCache","CurCacheHandler","incrementalCacheHandler","minimalMode","NODE_ENV","fetchCacheKeyPrefix","__NEXT_FETCH_CACHE_KEY_PREFIX","dev","getPrerenderManifest","version","routes","dynamicRoutes","notFoundRoutes","preview","getEdgePreviewProps","outerWaitUntil","event","NextFetchEvent","context","response","cookiesFromResponse","isMiddleware","bind","closeController","CloseController","trace","MiddlewareSpan","execute","spanName","nextUrl","attributes","onUpdateCookies","cookies","previewProps","fallbackRouteParams","implicitTags","getImplicitTags","requestStore","createRequestStoreForAPI","workStore","createWorkStore","renderOpts","cacheLifeProfiles","experimental","cacheLife","isRoutePPREnabled","cacheComponents","authInterrupts","supportsDynamicResponse","onClose","onAfterTaskError","isPrefetchRequest","NEXT_ROUTER_PREFETCH_HEADER","previouslyRevalidatedTags","workAsyncStorage","run","workUnitAsyncStorage","handler","setTimeout","dispatchClose","Response","TypeError","rewrite","destination","forceLocale","host","String","relativeDestination","isRelative","parseRelativeURL","__NEXT_EXTERNAL_MIDDLEWARE_REWRITE_RESOLVE","match","NEXT_REWRITTEN_PATH_HEADER","search","NEXT_REWRITTEN_QUERY_HEADER","slice","rewriteURL","redirect","redirectURL","getRelativeURL","finalResponse","NextResponse","next","middlewareOverrideHeaders","overwrittenHeaders","push","length","join","getWaitUntilPromiseFromEvent","Promise","resolve","fetchMetrics"],"mappings":"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","ignoreList":[0]}
Save
cmd:
run