UNPKG

astro

Version:

Astro is a modern site builder with web best practices, performance, and DX front-of-mind.

22 lines (21 loc) 535 B
import { collapseDuplicateSlashes } from "@astrojs/internal-helpers/path"; import { validateAndDecodePathname } from "./pathname.js"; function createNormalizedUrl(requestUrl) { return normalizeUrl(new URL(requestUrl)); } function normalizeUrl(url) { try { url.pathname = validateAndDecodePathname(url.pathname); } catch { try { url.pathname = decodeURI(url.pathname); } catch { } } url.pathname = collapseDuplicateSlashes(url.pathname); return url; } export { createNormalizedUrl, normalizeUrl };