/opt/canhelp/node_modules/next/dist/esm/shared/lib/router/utils
NameSizeModeActions
add-locale.js10200644editdlrm
add-locale.js.map17200644editdlrm
add-path-prefix.js4320644editdlrm
add-path-prefix.js.map8880644editdlrm
add-path-suffix.js4900644editdlrm
add-path-suffix.js.map9480644editdlrm
app-paths.js17680644editdlrm
app-paths.js.map27220644editdlrm
as-path-to-search-params.js2620644editdlrm
as-path-to-search-params.js.map5490644editdlrm
cache-busting-search-param.js5800644editdlrm
cache-busting-search-param.js.map13070644editdlrm
compare-states.js8500644editdlrm
compare-states.js.map19140644editdlrm
disable-smooth-scroll.js23760644editdlrm
disable-smooth-scroll.js.map36260644editdlrm
escape-path-delimiters.js3070644editdlrm
escape-path-delimiters.js.map7370644editdlrm
format-next-pathname-info.js9080644editdlrm
format-next-pathname-info.js.map20790644editdlrm
format-url.js32690644editdlrm
format-url.js.map56970644editdlrm
get-asset-path-from-route.js4370644editdlrm
get-asset-path-from-route.js.map8300644editdlrm
get-dynamic-param.js53080644editdlrm
get-dynamic-param.js.map74360644editdlrm
get-next-pathname-info.js21580644editdlrm
get-next-pathname-info.js.map51770644editdlrm
get-route-from-asset-path.js7160644editdlrm
get-route-from-asset-path.js.map13160644editdlrm
html-bots.js9090644editdlrm
html-bots.js.map11360644editdlrm
index.js1550644editdlrm
index.js.map3890644editdlrm
interception-routes.js37080644editdlrm
interception-routes.js.map50160644editdlrm
interpolate-as.js20000644editdlrm
interpolate-as.js.map38050644editdlrm
is-bot.js11000644editdlrm
is-bot.js.map19470644editdlrm
is-dynamic.js8840644editdlrm
is-dynamic.js.map15040644editdlrm
is-local-url.js7220644editdlrm
is-local-url.js.map12820644editdlrm
middleware-route-matcher.js6780644editdlrm
middleware-route-matcher.js.map17550644editdlrm
omit.js2500644editdlrm
omit.js.map7610644editdlrm
parse-path.js8410644editdlrm
parse-path.js.map14950644editdlrm
parse-relative-url.js12510644editdlrm
parse-relative-url.js.map30150644editdlrm
parse-url.js7220644editdlrm
parse-url.js.map18500644editdlrm
path-has-prefix.js5950644editdlrm
path-has-prefix.js.map10020644editdlrm
path-match.js19700644editdlrm
path-match.js.map37910644editdlrm
prepare-destination.js98280644editdlrm
prepare-destination.js.map171430644editdlrm
querystring.js17030644editdlrm
querystring.js.map32240644editdlrm
relativize-url.js8510644editdlrm
relativize-url.js.map18390644editdlrm
remove-path-prefix.js13340644editdlrm
remove-path-prefix.js.map20090644editdlrm
remove-trailing-slash.js3320644editdlrm
remove-trailing-slash.js.map5830644editdlrm
resolve-rewrites.js42400644editdlrm
resolve-rewrites.js.map78050644editdlrm
route-match-utils.js33610644editdlrm
route-match-utils.js.map56600644editdlrm
route-matcher.js12710644editdlrm
route-matcher.js.map25670644editdlrm
route-regex.js93150644editdlrm
route-regex.js.map175260644editdlrm
sortable-routes.js85020644editdlrm
sortable-routes.js.map125360644editdlrm
sorted-routes.js113320644editdlrm
sorted-routes.js.map147570644editdlrm
Edit: /opt/canhelp/node_modules/next/dist/esm/shared/lib/router/utils/resolve-rewrites.js (4240B)
import { getPathMatch } from './path-match'; import { matchHas, prepareDestination } from './prepare-destination'; import { removeTrailingSlash } from './remove-trailing-slash'; import { normalizeLocalePath } from '../../i18n/normalize-locale-path'; import { removeBasePath } from '../../../../client/remove-base-path'; import { parseRelativeUrl } from './parse-relative-url'; export default function resolveRewrites(asPath, pages, rewrites, query, resolveHref, locales) { let matchedPage = false; let externalDest = false; let parsedAs = parseRelativeUrl(asPath); let fsPathname = removeTrailingSlash(normalizeLocalePath(removeBasePath(parsedAs.pathname), locales).pathname); let resolvedHref; const handleRewrite = (rewrite)=>{ const matcher = getPathMatch(rewrite.source + (process.env.__NEXT_TRAILING_SLASH ? '(/)?' : ''), { removeUnnamedParams: true, strict: true }); let params = matcher(parsedAs.pathname); if ((rewrite.has || rewrite.missing) && params) { const hasParams = matchHas({ headers: { host: document.location.hostname, 'user-agent': navigator.userAgent }, cookies: document.cookie.split('; ').reduce((acc, item)=>{ const [key, ...value] = item.split('='); acc[key] = value.join('='); return acc; }, {}) }, parsedAs.query, rewrite.has, rewrite.missing); if (hasParams) { Object.assign(params, hasParams); } else { params = false; } } if (params) { if (!rewrite.destination) { // this is a proxied rewrite which isn't handled on the client externalDest = true; return true; } const destRes = prepareDestination({ appendParamsToQuery: true, destination: rewrite.destination, params: params, query: query }); parsedAs = destRes.parsedDestination; asPath = destRes.newUrl; Object.assign(query, destRes.parsedDestination.query); fsPathname = removeTrailingSlash(normalizeLocalePath(removeBasePath(asPath), locales).pathname); if (pages.includes(fsPathname)) { // check if we now match a page as this means we are done // resolving the rewrites matchedPage = true; resolvedHref = fsPathname; return true; } // check if we match a dynamic-route, if so we break the rewrites chain resolvedHref = resolveHref(fsPathname); if (resolvedHref !== asPath && pages.includes(resolvedHref)) { matchedPage = true; return true; } } }; let finished = false; for(let i = 0; i < rewrites.beforeFiles.length; i++){ // we don't end after match in beforeFiles to allow // continuing through all beforeFiles rewrites handleRewrite(rewrites.beforeFiles[i]); } matchedPage = pages.includes(fsPathname); if (!matchedPage) { if (!finished) { for(let i = 0; i < rewrites.afterFiles.length; i++){ if (handleRewrite(rewrites.afterFiles[i])) { finished = true; break; } } } // check dynamic route before processing fallback rewrites if (!finished) { resolvedHref = resolveHref(fsPathname); matchedPage = pages.includes(resolvedHref); finished = matchedPage; } if (!finished) { for(let i = 0; i < rewrites.fallback.length; i++){ if (handleRewrite(rewrites.fallback[i])) { finished = true; break; } } } } return { asPath, parsedAs, matchedPage, resolvedHref, externalDest }; } //# sourceMappingURL=resolve-rewrites.js.map