import { AUTH_USER_CACHE_KEY } from '@/lib/api'; const PIN_IDLE_WATCH_KEY = 'auth:pin-idle-watch-user'; function readCachedUserId(): string | null { if (typeof window === 'undefined') return null; const raw = window.localStorage.getItem(AUTH_USER_CACHE_KEY); if (!raw) return null; try { const parsed = JSON.parse(raw) as { id?: string }; return parsed.id ?? null; } catch { return null; } } export function markPinIdleWatch(userId?: string | null) { if (typeof window === 'undefined') return; const resolvedUserId = userId ?? readCachedUserId(); if (!resolvedUserId) return; window.localStorage.setItem(PIN_IDLE_WATCH_KEY, resolvedUserId); } export function clearPinIdleWatch() { if (typeof window === 'undefined') return; window.localStorage.removeItem(PIN_IDLE_WATCH_KEY); } export function isPinIdleWatchActive(userId?: string | null) { if (typeof window === 'undefined') return false; const stored = window.localStorage.getItem(PIN_IDLE_WATCH_KEY); if (!stored) return false; const resolvedUserId = userId ?? readCachedUserId(); return Boolean(resolvedUserId && stored === resolvedUserId); }