From 3cc3b623cc4e1e41e882f498f0d5e60c5e7eca50 Mon Sep 17 00:00:00 2001 From: "shakespeare.diy" Date: Wed, 9 Sep 2026 11:30:06 +0700 Subject: [PATCH] Redesign signup "done" step to lead with recovery (1.3.15) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reworked the final signup step so saving your login key is the hero, not an afterthought: - Celebration shrunk to a compact bar ("You're in! One quick thing…") so it no longer steals focus from the safety step. - "Save your login key" card is now the centerpiece with a loud amber primary CTA (Reveal & save), a skater-native framing ("keys to your board", "only way back in β€” no email, no password reset"). - Download button flips to a green "Saved βœ“" state for clear feedback. - "Skate now" is intentionally quieter and honest: reads "Skip for now, skate" with a reassuring note until the key is saved, then becomes a confident lime "Let's skate" once done. Never blocks the user. Co-authored-by: shakespeare.diy --- src/components/auth/SignupDialog.tsx | 122 ++++++++++++++++----------- 1 file changed, 73 insertions(+), 49 deletions(-) diff --git a/src/components/auth/SignupDialog.tsx b/src/components/auth/SignupDialog.tsx index d8b2d2f..889dacb 100644 --- a/src/components/auth/SignupDialog.tsx +++ b/src/components/auth/SignupDialog.tsx @@ -512,51 +512,48 @@ const SignupDialog: React.FC = ({ isOpen, onClose, onComplete )} - {/* Done Step - Account created, gentle optional backup */} + {/* Done Step β€” recovery FIRST. Saving your key is the hero action; + skating is one tap away but never competes with the safety step. */} {step === 'done' && ( -
- - -
πŸ›Ή
-

- You're all set! -

-

- Your account is ready. Go find some spots. -

- -
-
+
+ {/* Compact celebration β€” acknowledges success without stealing the + spotlight from the one thing that actually matters right now. */} +
+ +
+

You're in! πŸ›Ή

+

One quick thing before you drop in…

+
+
- {/* Optional backup β€” no pressure, no jargon */} - + {/* THE KEY β€” framed like a skate metaphor: this is your session pass. + Lose it, no bail-out. Saving it is the primary, loud action. */} + -
-
- +
+
+
-
-

Save a backup (optional)

-

So you never lose access to your account

+
+

Save your login key

+

+ This is the only way back into your account β€” + no email, no password reset. Save it now and you can log in on any device, anywhere you skate. +

-

- Your account lives on your device. Save a recovery code somewhere safe and - you'll be able to log back in on any device. You can also do this later from Settings. -

{!showNsec ? ( ) : (
-
+
{nsec}
@@ -570,36 +567,63 @@ const SignupDialog: React.FC = ({ isOpen, onClose, onComplete toast({ title: 'Copied!', description: 'Recovery code copied. Keep it somewhere safe.' }); }} > + Copy
-

⚠️ Anyone with this code can access your account. Never share it.

+

+ + Treat it like the keys to your board β€” anyone with this code controls your account. Never share it. +

)} - - - - - + + {/* Skate now β€” clearly available, intentionally quieter than "save". + Copy adapts: once saved, it's a confident go; if not, it's an + honest "you can do this later" so we never trap the user. */} +
+ + {keySecured !== 'downloaded' && ( +

+ No stress β€” we'll remind you, and you can save it anytime from Settings. +

+ )} + + + +
)}