bpms_site/.svn/pristine/04/04477c4b87f5c83732c5436354876b002b6ae7e3.svn-base
2025-11-02 16:38:49 +03:30

18 lines
722 B
Plaintext

import { isAbsoluteUrl, getLocationOrigin } from "../../utils";
import { hasBasePath } from "../../../../client/has-base-path";
/**
* Detects whether a given url is routable by the Next.js router (browser only).
*/ export function isLocalURL(url) {
// prevent a hydration mismatch on href for url with anchor refs
if (!isAbsoluteUrl(url)) return true;
try {
// absolute urls can be local if they are on the same origin
const locationOrigin = getLocationOrigin();
const resolved = new URL(url, locationOrigin);
return resolved.origin === locationOrigin && hasBasePath(resolved.pathname);
} catch (_) {
return false;
}
}
//# sourceMappingURL=is-local-url.js.map