Member area: loading spinner instead of flashing the sign-in card
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
+4
-1
@@ -486,7 +486,10 @@
|
||||
document.getElementById('memberArea').classList.toggle('side-open'));
|
||||
|
||||
async function render() {
|
||||
const me = await IAP.refreshNavWallet();
|
||||
// while /api/me answers, show a spinner instead of flashing the sign-in card at a signed-in member
|
||||
let me = null;
|
||||
try { me = await IAP.refreshNavWallet(); } catch (e) { me = null; }
|
||||
if ($('bootSpin')) $('bootSpin').hidden = true;
|
||||
// one way in: email. A wallet-only session (no account) is sent back to the
|
||||
// email card with a finish-setup note; verifying the code links that wallet.
|
||||
const walletOnly = !!(me && me.signedIn && !me.email);
|
||||
|
||||
@@ -210,6 +210,9 @@ tr:last-child td{border-bottom:0}
|
||||
.spend-banner .sub{color:var(--ink);font-size:15px}
|
||||
.spend-banner .rates{display:flex;gap:8px 18px;flex-wrap:wrap;justify-content:center;margin-top:12px;font-size:12.5px;color:var(--muted)}
|
||||
.spend-banner .rates b{color:var(--ink)}
|
||||
.boot-spin{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:60vh}
|
||||
.boot-spin .ring{width:46px;height:46px;border-radius:50%;border:4px solid rgba(67,232,195,.18);border-top-color:var(--mint);animation:bootspin .9s linear infinite}
|
||||
@keyframes bootspin{to{transform:rotate(360deg)}}
|
||||
.done-big{display:flex;flex-direction:column;align-items:center;gap:6px;padding:26px 16px;text-align:center}
|
||||
.done-big .tick{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;font-size:48px;font-weight:800;color:var(--mint-ink);background:var(--mint);box-shadow:0 0 0 10px rgba(67,232,195,.15),0 10px 30px rgba(67,232,195,.35)}
|
||||
.done-big b{font-family:var(--disp);font-size:22px;margin-top:8px}
|
||||
|
||||
Reference in New Issue
Block a user