feat(ui): Formular-Karten, Backup-Codes als Kacheln, Gutschein zum Kopieren
- Gemeinsame FormPanel-Karte fuer Passwort- und Zwei-Faktor-Seiten - Zwei-Faktor-Code: grosses, zentriertes Ziffernfeld - Backup-Codes als nummerierte Kacheln statt langer Liste - Newsletter-Bestaetigung: Willkommensrabatt als Gutschein mit gestricheltem Rand und Kopier-Knopf (bestaetigt "Kopiert") Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
1 parent
76be1292ed
commit
ee854bd77b
12 files changed
+130
-23
No files matched your search
@@ -1,6 +1,6 @@
|
||||
import type { Metadata } from "next";
|
||||
import { redirect } from "next/navigation";
|
||||
import { Container, SectionHeading, Button } from "@/components/ui";
|
||||
import { Container, SectionHeading, Button, FormPanel } from "@/components/ui";
|
||||
import { BackLink } from "@/components/back-link";
|
||||
import { TurnstileField } from "@/components/turnstile-widget";
|
||||
import { getTwoFactorChallengeCustomerId } from "@/lib/auth";
|
||||
@@ -19,7 +19,8 @@ export default async function ZweiFaktorCodePage() {
|
||||
|
||||
return (
|
||||
<div className="py-20">
|
||||
<Container className="max-w-md">
|
||||
<Container className="max-w-lg">
|
||||
<FormPanel>
|
||||
<BackLink href="/konto" label={t.twoFactorCodePage.cancelLabel} />
|
||||
<SectionHeading
|
||||
eyebrow={t.twoFactorCodePage.eyebrow}
|
||||
@@ -38,7 +39,7 @@ export default async function ZweiFaktorCodePage() {
|
||||
autoComplete="one-time-code"
|
||||
autoFocus
|
||||
required
|
||||
className="mt-1 w-full border border-ink/20 bg-background px-4 py-3 tracking-widest focus:outline-none focus:border-forest"
|
||||
className="mt-2 w-full border border-ink/20 bg-background px-4 py-4 text-center font-serif text-3xl tracking-[0.4em] tabular-nums focus:outline-none focus:border-forest"
|
||||
/>
|
||||
</label>
|
||||
{process.env.NEXT_PUBLIC_TURNSTILE_SITE_KEY ? (
|
||||
@@ -46,6 +47,7 @@ export default async function ZweiFaktorCodePage() {
|
||||
) : null}
|
||||
<Button type="submit">{t.twoFactorCodePage.confirm}</Button>
|
||||
</form>
|
||||
</FormPanel>
|
||||
</Container>
|
||||
</div>
|
||||
);
|
||||
|
||||
Reference in new issue
Block a user