/home/techb158/balavpn.abdallabala.com/node_modules/next/dist/server
NameSizeModeActions
after/-0777rm
api-utils/-0777rm
app-render/-0777rm
async-storage/-0777rm
base-http/-0777rm
dev/-0777rm
instrumentation/-0777rm
lib/-0777rm
node-environment-extensions/-0777rm
normalizers/-0777rm
og/-0777rm
request/-0777rm
response-cache/-0777rm
resume-data-cache/-0777rm
route-definitions/-0777rm
route-matcher-managers/-0777rm
route-matcher-providers/-0777rm
route-matchers/-0777rm
route-matches/-0777rm
route-modules/-0777rm
stream-utils/-0777rm
typescript/-0777rm
use-cache/-0777rm
web/-0777rm
accept-header.d.ts980666editdlrm
accept-header.js40620666editdlrm
accept-header.js.map64740666editdlrm
base-server.d.ts148180666editdlrm
base-server.js1024910666editdlrm
base-server.js.map1637210666editdlrm
body-streams.d.ts4740666editdlrm
body-streams.js36550666editdlrm
body-streams.js.map54420666editdlrm
cache-dir.d.ts820666editdlrm
cache-dir.js7570666editdlrm
cache-dir.js.map7030666editdlrm
capsize-font-metrics.json43016220666editdlrm
ci-info.d.ts1240666editdlrm
ci-info.js11420666editdlrm
ci-info.js.map13140666editdlrm
client-component-renderer-logger.d.ts4050666editdlrm
client-component-renderer-logger.js22870666editdlrm
client-component-renderer-logger.js.map30360666editdlrm
config-schema.d.ts1510666editdlrm
config-schema.js303360666editdlrm
config-schema.js.map567480666editdlrm
config-shared.d.ts492800666editdlrm
config-shared.js72780666editdlrm
config-shared.js.map580640666editdlrm
config-utils.d.ts490666editdlrm
config-utils.js58880666editdlrm
config-utils.js.map66000666editdlrm
config.d.ts11590666editdlrm
config.js743130666editdlrm
config.js.map995600666editdlrm
create-deduped-by-callsite-server-error-logger.d.ts5910666editdlrm
create-deduped-by-callsite-server-error-logger.js35840666editdlrm
create-deduped-by-callsite-server-error-logger.js.map36670666editdlrm
crypto-utils.d.ts1710666editdlrm
crypto-utils.js30260666editdlrm
crypto-utils.js.map43690666editdlrm
dynamic-rendering-utils.d.ts4250666editdlrm
dynamic-rendering-utils.js33880666editdlrm
dynamic-rendering-utils.js.map49390666editdlrm
font-utils.d.ts1770666editdlrm
font-utils.js17760666editdlrm
font-utils.js.map30600666editdlrm
get-app-route-from-entrypoint.d.ts850666editdlrm
get-app-route-from-entrypoint.js8320666editdlrm
get-app-route-from-entrypoint.js.map8650666editdlrm
get-page-files.d.ts5360666editdlrm
get-page-files.js8070666editdlrm
get-page-files.js.map16920666editdlrm
get-route-from-entrypoint.d.ts970666editdlrm
get-route-from-entrypoint.js12450666editdlrm
get-route-from-entrypoint.js.map14150666editdlrm
image-optimizer.d.ts47210666editdlrm
image-optimizer.js380460666editdlrm
image-optimizer.js.map566470666editdlrm
internal-utils.d.ts2230666editdlrm
internal-utils.js11270666editdlrm
internal-utils.js.map13470666editdlrm
load-components.d.ts29880666editdlrm
load-components.js70160666editdlrm
load-components.js.map131700666editdlrm
load-default-error-components.d.ts13520666editdlrm
load-default-error-components.js18870666editdlrm
load-default-error-components.js.map38260666editdlrm
load-manifest.external.d.ts18080666editdlrm
load-manifest.external.js30510666editdlrm
load-manifest.external.js.map58270666editdlrm
match-bundle.d.ts820666editdlrm
match-bundle.js6860666editdlrm
match-bundle.js.map7180666editdlrm
next-server.d.ts114480666editdlrm
next-server.js700380666editdlrm
next-server.js.map1103260666editdlrm
next-typescript.d.ts470666editdlrm
next-typescript.js3180666editdlrm
next-typescript.js.map2220666editdlrm
next.d.ts36460666editdlrm
next.js157070666editdlrm
next.js.map268160666editdlrm
node-environment-baseline.d.ts00666editdlrm
node-environment-baseline.js8900666editdlrm
node-environment-baseline.js.map15550666editdlrm
node-environment.d.ts2870666editdlrm
node-environment.js6480666editdlrm
node-environment.js.map10650666editdlrm
node-polyfill-crypto.d.ts00666editdlrm
node-polyfill-crypto.js5580666editdlrm
node-polyfill-crypto.js.map10140666editdlrm
optimize-amp.d.ts780666editdlrm
optimize-amp.js5490666editdlrm
optimize-amp.js.map8390666editdlrm
patch-error-inspect.d.ts4670666editdlrm
patch-error-inspect.js196530666editdlrm
patch-error-inspect.js.map285010666editdlrm
pipe-readable.d.ts2910666editdlrm
pipe-readable.js55980666editdlrm
pipe-readable.js.map76770666editdlrm
post-process.d.ts3720666editdlrm
post-process.js20060666editdlrm
post-process.js.map39830666editdlrm
ReactDOMServerPages.d.ts380666editdlrm
ReactDOMServerPages.js5980666editdlrm
ReactDOMServerPages.js.map9570666editdlrm
render-result.d.ts62410666editdlrm
render-result.js75550666editdlrm
render-result.js.map142430666editdlrm
render.d.ts48870666editdlrm
render.js557840666editdlrm
render.js.map850560666editdlrm
request-meta.d.ts80310666editdlrm
request-meta.js14650666editdlrm
request-meta.js.map94610666editdlrm
require-hook.d.ts2660666editdlrm
require-hook.js28400666editdlrm
require-hook.js.map44530666editdlrm
require.d.ts3770666editdlrm
require.js39220666editdlrm
require.js.map60480666editdlrm
revalidation-utils.d.ts5410666editdlrm
revalidation-utils.js33410666editdlrm
revalidation-utils.js.map57330666editdlrm
route-kind.d.ts7200666editdlrm
route-kind.js10290666editdlrm
route-kind.js.map9370666editdlrm
send-payload.d.ts5970666editdlrm
send-payload.js28490666editdlrm
send-payload.js.map42140666editdlrm
send-response.d.ts4200666editdlrm
send-response.js30650666editdlrm
send-response.js.map45590666editdlrm
serve-static.d.ts4030666editdlrm
serve-static.js21100666editdlrm
serve-static.js.map26800666editdlrm
server-route-utils.d.ts1970666editdlrm
server-route-utils.js11300666editdlrm
server-route-utils.js.map19350666editdlrm
server-utils.d.ts31340666editdlrm
server-utils.js165420666editdlrm
server-utils.js.map260640666editdlrm
setup-http-agent-env.d.ts1720666editdlrm
setup-http-agent-env.js10500666editdlrm
setup-http-agent-env.js.map14060666editdlrm
utils.d.ts3320666editdlrm
utils.js32080666editdlrm
utils.js.map41810666editdlrm
Edit: /home/techb158/balavpn.abdallabala.com/node_modules/next/dist/server/server-utils.js (16542B)
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); 0 && (module.exports = { getPreviouslyRevalidatedTags: null, getServerUtils: null, interpolateDynamicPath: null, normalizeCdnUrl: null, normalizeDynamicRouteParams: null }); function _export(target, all) { for(var name in all)Object.defineProperty(target, name, { enumerable: true, get: all[name] }); } _export(exports, { getPreviouslyRevalidatedTags: function() { return getPreviouslyRevalidatedTags; }, getServerUtils: function() { return getServerUtils; }, interpolateDynamicPath: function() { return interpolateDynamicPath; }, normalizeCdnUrl: function() { return normalizeCdnUrl; }, normalizeDynamicRouteParams: function() { return normalizeDynamicRouteParams; } }); const _normalizelocalepath = require("../shared/lib/i18n/normalize-locale-path"); const _pathmatch = require("../shared/lib/router/utils/path-match"); const _routeregex = require("../shared/lib/router/utils/route-regex"); const _routematcher = require("../shared/lib/router/utils/route-matcher"); const _preparedestination = require("../shared/lib/router/utils/prepare-destination"); const _removetrailingslash = require("../shared/lib/router/utils/remove-trailing-slash"); const _apppaths = require("../shared/lib/router/utils/app-paths"); const _constants = require("../lib/constants"); const _utils = require("./web/utils"); const _decodequerypathparameter = require("./lib/decode-query-path-parameter"); const _url = require("../lib/url"); const _formaturl = require("../shared/lib/router/utils/format-url"); const _parseandvalidateflightrouterstate = require("./app-render/parse-and-validate-flight-router-state"); const _generateinterceptionroutesrewrites = require("../lib/generate-interception-routes-rewrites"); const _approuterheaders = require("../client/components/app-router-headers"); const _computechangedpath = require("../client/components/router-reducer/compute-changed-path"); function filterInternalQuery(query, paramKeys) { // this is used to pass query information in rewrites // but should not be exposed in final query delete query['nextInternalLocale']; for(const key in query){ const isNextQueryPrefix = key !== _constants.NEXT_QUERY_PARAM_PREFIX && key.startsWith(_constants.NEXT_QUERY_PARAM_PREFIX); const isNextInterceptionMarkerPrefix = key !== _constants.NEXT_INTERCEPTION_MARKER_PREFIX && key.startsWith(_constants.NEXT_INTERCEPTION_MARKER_PREFIX); if (isNextQueryPrefix || isNextInterceptionMarkerPrefix || paramKeys.includes(key)) { delete query[key]; } } } function normalizeCdnUrl(req, paramKeys) { // make sure to normalize req.url from CDNs to strip dynamic and rewrite // params from the query which are added during routing const _parsedUrl = (0, _url.parseReqUrl)(req.url); // we can't normalize if we can't parse if (!_parsedUrl) { return req.url; } delete _parsedUrl.search; filterInternalQuery(_parsedUrl.query, paramKeys); req.url = (0, _formaturl.formatUrl)(_parsedUrl); } function interpolateDynamicPath(pathname, params, defaultRouteRegex) { if (!defaultRouteRegex) return pathname; for (const param of Object.keys(defaultRouteRegex.groups)){ const { optional, repeat } = defaultRouteRegex.groups[param]; let builtParam = `[${repeat ? '...' : ''}${param}]`; if (optional) { builtParam = `[${builtParam}]`; } let paramValue; const value = params[param]; if (Array.isArray(value)) { paramValue = value.map((v)=>v && encodeURIComponent(v)).join('/'); } else if (value) { paramValue = encodeURIComponent(value); } else { paramValue = ''; } if (paramValue || optional) { pathname = pathname.replaceAll(builtParam, paramValue); } } return pathname; } function normalizeDynamicRouteParams(query, defaultRouteRegex, defaultRouteMatches, ignoreMissingOptional) { let hasValidParams = true; let params = {}; for (const key of Object.keys(defaultRouteRegex.groups)){ let value = query[key]; if (typeof value === 'string') { value = (0, _apppaths.normalizeRscURL)(value); } else if (Array.isArray(value)) { value = value.map(_apppaths.normalizeRscURL); } // if the value matches the default value we can't rely // on the parsed params, this is used to signal if we need // to parse x-now-route-matches or not const defaultValue = defaultRouteMatches[key]; const isOptional = defaultRouteRegex.groups[key].optional; const isDefaultValue = Array.isArray(defaultValue) ? defaultValue.some((defaultVal)=>{ return Array.isArray(value) ? value.some((val)=>val.includes(defaultVal)) : value == null ? void 0 : value.includes(defaultVal); }) : value == null ? void 0 : value.includes(defaultValue); if (isDefaultValue || typeof value === 'undefined' && !(isOptional && ignoreMissingOptional)) { return { params: {}, hasValidParams: false }; } // non-provided optional values should be undefined so normalize // them to undefined if (isOptional && (!value || Array.isArray(value) && value.length === 1 && // fallback optional catch-all SSG pages have // [[...paramName]] for the root path on Vercel (value[0] === 'index' || value[0] === `[[...${key}]]`))) { value = undefined; delete query[key]; } // query values from the proxy aren't already split into arrays // so make sure to normalize catch-all values if (value && typeof value === 'string' && defaultRouteRegex.groups[key].repeat) { value = value.split('/'); } if (value) { params[key] = value; } } return { params, hasValidParams }; } function getServerUtils({ page, i18n, basePath, rewrites, pageIsDynamic, trailingSlash, caseSensitive }) { let defaultRouteRegex; let dynamicRouteMatcher; let defaultRouteMatches; if (pageIsDynamic) { defaultRouteRegex = (0, _routeregex.getNamedRouteRegex)(page, { prefixRouteKeys: false }); dynamicRouteMatcher = (0, _routematcher.getRouteMatcher)(defaultRouteRegex); defaultRouteMatches = dynamicRouteMatcher(page); } function handleRewrites(req, parsedUrl) { const rewriteParams = {}; let fsPathname = parsedUrl.pathname; const matchesPage = ()=>{ const fsPathnameNoSlash = (0, _removetrailingslash.removeTrailingSlash)(fsPathname || ''); return fsPathnameNoSlash === (0, _removetrailingslash.removeTrailingSlash)(page) || (dynamicRouteMatcher == null ? void 0 : dynamicRouteMatcher(fsPathnameNoSlash)); }; const checkRewrite = (rewrite)=>{ const matcher = (0, _pathmatch.getPathMatch)(rewrite.source + (trailingSlash ? '(/)?' : ''), { removeUnnamedParams: true, strict: true, sensitive: !!caseSensitive }); if (!parsedUrl.pathname) return false; let params = matcher(parsedUrl.pathname); if ((rewrite.has || rewrite.missing) && params) { const hasParams = (0, _preparedestination.matchHas)(req, parsedUrl.query, rewrite.has, rewrite.missing); if (hasParams) { Object.assign(params, hasParams); } else { params = false; } } if (params) { try { // An interception rewrite might reference a dynamic param for a route the user // is currently on, which wouldn't be extractable from the matched route params. // This attempts to extract the dynamic params from the provided router state. if ((0, _generateinterceptionroutesrewrites.isInterceptionRouteRewrite)(rewrite)) { const stateHeader = req.headers[_approuterheaders.NEXT_ROUTER_STATE_TREE_HEADER]; if (stateHeader) { params = { ...(0, _computechangedpath.getSelectedParams)((0, _parseandvalidateflightrouterstate.parseAndValidateFlightRouterState)(stateHeader)), ...params }; } } } catch (err) { // this is a no-op -- we couldn't extract dynamic params from the provided router state, // so we'll just use the params from the route matcher } const { parsedDestination, destQuery } = (0, _preparedestination.prepareDestination)({ appendParamsToQuery: true, destination: rewrite.destination, params: params, query: parsedUrl.query }); // if the rewrite destination is external break rewrite chain if (parsedDestination.protocol) { return true; } Object.assign(rewriteParams, destQuery, params); Object.assign(parsedUrl.query, parsedDestination.query); delete parsedDestination.query; // for each property in parsedUrl.query, if the value is parametrized (eg :foo), look up the value // in rewriteParams and replace the parametrized value with the actual value // this is used when the rewrite destination does not contain the original source param // and so the value is still parametrized and needs to be replaced with the actual rewrite param Object.entries(parsedUrl.query).forEach(([key, value])=>{ if (value && typeof value === 'string' && value.startsWith(':')) { const paramName = value.slice(1); const actualValue = rewriteParams[paramName]; if (actualValue) { parsedUrl.query[key] = actualValue; } } }); Object.assign(parsedUrl, parsedDestination); fsPathname = parsedUrl.pathname; if (!fsPathname) return false; if (basePath) { fsPathname = fsPathname.replace(new RegExp(`^${basePath}`), '') || '/'; } if (i18n) { const result = (0, _normalizelocalepath.normalizeLocalePath)(fsPathname, i18n.locales); fsPathname = result.pathname; parsedUrl.query.nextInternalLocale = result.detectedLocale || params.nextInternalLocale; } if (fsPathname === page) { return true; } if (pageIsDynamic && dynamicRouteMatcher) { const dynamicParams = dynamicRouteMatcher(fsPathname); if (dynamicParams) { parsedUrl.query = { ...parsedUrl.query, ...dynamicParams }; return true; } } } return false; }; for (const rewrite of rewrites.beforeFiles || []){ checkRewrite(rewrite); } if (fsPathname !== page) { let finished = false; for (const rewrite of rewrites.afterFiles || []){ finished = checkRewrite(rewrite); if (finished) break; } if (!finished && !matchesPage()) { for (const rewrite of rewrites.fallback || []){ finished = checkRewrite(rewrite); if (finished) break; } } } return rewriteParams; } function getParamsFromRouteMatches(routeMatchesHeader) { // If we don't have a default route regex, we can't get params from route // matches if (!defaultRouteRegex) return null; const { groups, routeKeys } = defaultRouteRegex; const matcher = (0, _routematcher.getRouteMatcher)({ re: { // Simulate a RegExp match from the \`req.url\` input exec: (str)=>{ // Normalize all the prefixed query params. const obj = Object.fromEntries(new URLSearchParams(str)); for (const [key, value] of Object.entries(obj)){ const normalizedKey = (0, _utils.normalizeNextQueryParam)(key); if (!normalizedKey) continue; obj[normalizedKey] = value; delete obj[key]; } // Use all the named route keys. const result = {}; for (const keyName of Object.keys(routeKeys)){ const paramName = routeKeys[keyName]; // If this param name is not a valid parameter name, then skip it. if (!paramName) continue; const group = groups[paramName]; const value = obj[keyName]; // When we're missing a required param, we can't match the route. if (!group.optional && !value) return null; result[group.pos] = value; } return result; } }, groups }); const routeMatches = matcher(routeMatchesHeader); if (!routeMatches) return null; return routeMatches; } function normalizeQueryParams(query, routeParamKeys) { // this is used to pass query information in rewrites // but should not be exposed in final query delete query['nextInternalLocale']; for (const [key, value] of Object.entries(query)){ const normalizedKey = (0, _utils.normalizeNextQueryParam)(key); if (!normalizedKey) continue; // Remove the prefixed key from the query params because we want // to consume it for the dynamic route matcher. delete query[key]; routeParamKeys.add(normalizedKey); if (typeof value === 'undefined') continue; query[normalizedKey] = Array.isArray(value) ? value.map((v)=>(0, _decodequerypathparameter.decodeQueryPathParameter)(v)) : (0, _decodequerypathparameter.decodeQueryPathParameter)(value); } } return { handleRewrites, defaultRouteRegex, dynamicRouteMatcher, defaultRouteMatches, normalizeQueryParams, getParamsFromRouteMatches, /** * Normalize dynamic route params. * * @param query - The query params to normalize. * @param ignoreMissingOptional - Whether to ignore missing optional params. * @returns The normalized params and whether they are valid. */ normalizeDynamicRouteParams: (query, ignoreMissingOptional)=>{ if (!defaultRouteRegex || !defaultRouteMatches) { return { params: {}, hasValidParams: false }; } return normalizeDynamicRouteParams(query, defaultRouteRegex, defaultRouteMatches, ignoreMissingOptional); }, normalizeCdnUrl: (req, paramKeys)=>normalizeCdnUrl(req, paramKeys), interpolateDynamicPath: (pathname, params)=>interpolateDynamicPath(pathname, params, defaultRouteRegex), filterInternalQuery: (query, paramKeys)=>filterInternalQuery(query, paramKeys) }; } function getPreviouslyRevalidatedTags(headers, previewModeId) { return typeof headers[_constants.NEXT_CACHE_REVALIDATED_TAGS_HEADER] === 'string' && headers[_constants.NEXT_CACHE_REVALIDATE_TAG_TOKEN_HEADER] === previewModeId ? headers[_constants.NEXT_CACHE_REVALIDATED_TAGS_HEADER].split(',') : []; } //# sourceMappingURL=server-utils.js.map