/** 与 `router/index.js` 中 BroadcastChannel 监听使用同一频道名 */
export const AUTH_LOGOUT_CHANNEL = "risk_monitor_auth";

/**
 * 通知同源其它标签页/窗口：用户已退出，应立即进入登录页。
 * 与 localStorage `force_login=1` 配合；发起退出的标签页在写入后调用一次即可。
 */
export function broadcastAuthLogout() {
	try {
		if (typeof BroadcastChannel === "undefined") {
			return;
		}
		const ch = new BroadcastChannel(AUTH_LOGOUT_CHANNEL);
		ch.postMessage({ type: "force_logout" });
		ch.close();
	} catch {
		// ignore
	}
}
