"use client";

export function readSessionIdFromUrl() {
	if (typeof window === "undefined") return null;
	const match = window.location.pathname.match(/^\/session\/([^/]+)$/);
	if (!match?.[1]) return null;
	try {
		return decodeURIComponent(match[1]).trim() || null;
	} catch {
		return match[1].trim() || null;
	}
}

export function pushSessionUrl(sessionId: string) {
	if (typeof window === "undefined") return;
	const target = `/session/${encodeURIComponent(sessionId)}`;
	if (window.location.pathname === target) return;
	window.history.pushState(null, "", target);
}

export function pushHomeUrl() {
	if (typeof window === "undefined") return;
	if (window.location.pathname === "/") return;
	window.history.pushState(null, "", "/");
}
