'use client'; // <--- 必须加这行

import { useEffect } from 'react';
import api from '@/lib/api';

export default function AutoRegistrar() {
  useEffect(() => {
    const runAutoRegister = async () => {
      // 1. 检查本地是否有 Token
      const token = localStorage.getItem('rsid');
      
      // 调试日志：让你知道为什么没跑
      if (token) {
        console.log("AutoRegistrar: 检测到已有 Token，跳过自动注册");
        return;
      }

      console.log("AutoRegistrar: 未检测到 Token，开始自动注册...");

      try {
        // 2. 调用自动注册接口
        const res = await api.post('/api/auth/auto-register', {
          register_ip: 'client-init'
        });

        const data = res.data.data || res.data;
        const newToken = data.token || data.access_token;

        // 3. 保存 Token
        if (newToken) {
          localStorage.setItem('rsid', newToken);
          if (data.user) {
            localStorage.setItem('user_info', JSON.stringify(data.user));
          }
          console.log("AutoRegistrar: 自动注册成功！Token 已保存。");
          
          // 通知 Navbar 更新状态
          window.dispatchEvent(new Event('storage'));
        }
      } catch (error) {
        console.error("AutoRegistrar: 自动注册失败", error);
      }
    };

    runAutoRegister();
  }, []);

  return null; // 这个组件不需要渲染任何 HTML
}