Simplify query cleanup effect

cgen-3a6d80a8f6cb438082499733ce835449
This commit is contained in:
Builder.io 2025-09-30 21:09:55 +00:00
parent 19c71bcf48
commit 37fabcd9bb

View file

@ -110,8 +110,7 @@ export default function Dashboard() {
if (typeof window === "undefined" || !user) { if (typeof window === "undefined" || !user) {
return; return;
} }
const currentUrl = new URL(window.location.href); const sanitized = new URLSearchParams(window.location.search);
const preservedTab = currentUrl.searchParams.get("tab");
const keysToStrip = [ const keysToStrip = [
"code", "code",
"state", "state",
@ -126,23 +125,16 @@ export default function Dashboard() {
]; ];
let mutated = false; let mutated = false;
keysToStrip.forEach((key) => { keysToStrip.forEach((key) => {
if (currentUrl.searchParams.has(key)) { if (sanitized.has(key)) {
currentUrl.searchParams.delete(key); sanitized.delete(key);
mutated = true; mutated = true;
} }
}); });
if (mutated) { if (mutated) {
if (preservedTab) { setSearchParams(sanitized, { replace: true });
currentUrl.searchParams.set("tab", preservedTab);
} else {
currentUrl.searchParams.delete("tab");
}
const nextSearch = currentUrl.searchParams.toString();
const nextUrl = `${currentUrl.pathname}${nextSearch ? `?${nextSearch}` : ""}${currentUrl.hash}`;
window.history.replaceState(null, "", nextUrl);
} }
}, [user?.id]); }, [user?.id, setSearchParams]);
const handleTabChange = (value: string) => { const handleTabChange = (value: string) => {
setActiveTab(value); setActiveTab(value);