const LOGGED_IN_KEY = 'is_logged_in'
const DEFAULT_LOGIN_PATH = '/login'

export function setLoggedIn() {
  localStorage.setItem(LOGGED_IN_KEY, 'true')
}

export function isLoggedIn() {
  return localStorage.getItem(LOGGED_IN_KEY) === 'true'
}

export function clearLoggedIn() {
  localStorage.removeItem(LOGGED_IN_KEY)
}

// 保持旧接口兼容
export function clearTokens() {
  clearLoggedIn()
}

// 检查是否已认证
export function isAuthenticated() {
  return isLoggedIn()
}

export function isTokenExpired() {
  return false
}

/**
 * 触发强制登出：
 *   1. 清理本地登录态
 *   2. 跳转登录页（用 location.href 触发整页刷新，保证所有内存状态被清空）
 * 避免在 base.js 这种不依赖路由的纯工具层直接 import router。
 */
export function triggerLogout(redirectTo = DEFAULT_LOGIN_PATH) {
  try { clearLoggedIn() } catch (_) { /* noop */ }
  // 如果当前已经在登录页，就不再重复跳转
  if (typeof window !== 'undefined' && window.location.pathname !== redirectTo) {
    window.location.href = redirectTo
  }
}