/* Pagina /cancel-password-reset — clicada via link do email "nao fui eu".
   Pega ?token=... do hash, chama backend, mostra resultado. */

const { useState: cpr_useState, useEffect: cpr_useEffect } = React;


window.C7_CancelPasswordResetPage = function CancelPasswordResetPage() {
    const [state, setState] = cpr_useState('verifying');   // verifying | ok | err
    const [msg, setMsg]     = cpr_useState(null);
    const [err, setErr]     = cpr_useState(null);

    cpr_useEffect(() => {
        const route = window.C7_ROUTER.current();
        const token = (route.query && route.query.token) || '';
        if (!token) { setState('err'); setErr('token ausente'); return; }
        (async () => {
            try {
                const r = await window.C7_API.post('/auth/cancel-password-reset',
                    { token });
                setMsg(r && r.message);
                setState('ok');
            } catch (e) {
                setState('err');
                setErr(e.message || 'falha na operacao');
            }
        })();
    }, []);

    const AppFooter = (window.C7_Layout && window.C7_Layout.AppFooter) || null;
    return (
        <div className="standalone-shell">
            <div className="standalone-center">
                <div className="forgot-card">
                    <h1>Cancelar troca de senha</h1>
                    {state === 'verifying' && <p>Processando…</p>}
                    {state === 'ok' && (
                        <>
                            <p style={{color: '#51cf66'}}>
                                ✓ {msg || 'Sua senha anterior foi restaurada.'}
                            </p>
                            <p style={{fontSize: 13, marginTop: 14}}>
                                Por segurança, todas as suas sessões ativas
                                foram encerradas. Faça login novamente com sua
                                senha original.
                            </p>
                            <a href="#/login" className="forgot-btn">
                                Ir pro login
                            </a>
                        </>
                    )}
                    {state === 'err' && (
                        <>
                            <div className="forgot-error" style={{marginTop: 12}}>
                                {err}
                            </div>
                            <p style={{marginTop: 14, fontSize: 13}}>
                                O link pode ter expirado (validade de 15 min) ou
                                a senha já foi alterada manualmente. Se você
                                não fez essa solicitação, contate o suporte:
                                {' '}
                                <a href="mailto:suporte@core7cap.com">
                                    suporte@core7cap.com
                                </a>.
                            </p>
                            <a href="#/login" className="forgot-btn">
                                Voltar pro login
                            </a>
                        </>
                    )}
                </div>
            </div>
            {AppFooter && <AppFooter />}
        </div>
    );
};
