// REQ-USR-004: 受保护路由守卫(BR1)。三态:unauthenticated / authResolving / ready。
import { Navigate, Outlet, useLocation } from 'react-router-dom';
import { Spin } from 'antd';
import { useAppSelector } from '../store/hooks';
/**
* 布局守卫:
* - 无 token → 重定向 /login,携带 state.from(来源路径,登录后可回跳,BR1)
* - 有 token 但 user 未就绪 → 渲染 Spin 占位(authResolving,token 已存在但用户信息尚未拉取)
* - token + user 均就绪 → 放行(ready),渲染