const Router = { getParam(key) { return new URLSearchParams(window.location.search).get(key); }, setParam(key, value) { const url = new URL(window.location); if (value != null) { url.searchParams.set(key, value); } else { url.searchParams.delete(key); } history.pushState({}, "", url); }, }; window.addEventListener("popstate", () => { window.dispatchEvent(new CustomEvent("routechange")); });