forked from Goutam/lynkeduppro-crm
feat(auth): Google-only social; sign-up email/password only; phone login entry
- SocialButtons: only Google (Microsoft/Apple hidden). - Sign-up: remove all social (email/password only). - Login: keep Google + email/password (single step) + email/SMS OTP; add a direct 'Sign in with a phone number' entry (SMS OTP), and rename the OTP link to 'Sign in with a one-time code'. All Supabase-supported; no mandatory 2FA.
This commit is contained in:
@@ -5,7 +5,7 @@ import { useRouter } from "next/navigation";
|
||||
import { Icon, Avatar } from "./icons";
|
||||
import {
|
||||
StepBack, FlashNote, Badge, OtpBoxes, ResendLink, RememberDevice,
|
||||
SocialButtons, startSocial, PasswordStrength, LegalModal,
|
||||
PasswordStrength, LegalModal,
|
||||
} from "./bits";
|
||||
import {
|
||||
countryCodes, relationshipOptions, addressCountries,
|
||||
@@ -158,23 +158,13 @@ function StepAccount(p: {
|
||||
const [phase, setPhase] = useState<"sso" | "profile">("sso");
|
||||
const [modal, setModal] = useState<null | "terms" | "privacy">(null);
|
||||
|
||||
function pickSso(provider: "google" | "microsoft" | "apple") {
|
||||
if (startSocial(provider)) return;
|
||||
const mockEmail = `you@${provider === "microsoft" ? "outlook.com" : provider + ".com"}`;
|
||||
p.setSso({ provider, email: mockEmail });
|
||||
p.setEmail(mockEmail);
|
||||
setPhase("profile");
|
||||
}
|
||||
|
||||
if (phase === "sso") {
|
||||
const valid = EMAIL_RE.test(p.email);
|
||||
return (
|
||||
<div>
|
||||
<h1>Create your account</h1>
|
||||
<p className="sub">Sign up with a provider or your email to get started.</p>
|
||||
<p className="sub">Enter your email to get started.</p>
|
||||
<div style={{ marginTop: 20 }}>
|
||||
<SocialButtons onPick={pickSso} verb="Sign up" />
|
||||
<div className="divider">or continue with email</div>
|
||||
<form onSubmit={(e) => { e.preventDefault(); if (valid) { p.setSso(null); setPhase("profile"); } }}>
|
||||
<div className="field">
|
||||
<label className="label">Email address</label>
|
||||
|
||||
Reference in New Issue
Block a user