v0.3.0 — ManaTwoFactorChallengeView
Apps mit aktivem 2FA bekommen jetzt eine native Challenge-View nach Email/Password-Login. ManaLoginView schaltet automatisch um wenn AuthClient.status auf .twoFactorRequired wechselt. Components: - ManaTwoFactorChallengeView — Scaffold-View mit 6-stelligem Code- Input, Backup-Code-Toggle, Cancel zurück zum Login - TwoFactorChallengeViewModel — @Observable State-Maschine, wraps AuthClient.verifyTotp/verifyBackupCode - LoginViewModel.Status.twoFactorRequired(email:) als neuer Case; submit() routet automatisch dorthin wenn der AuthClient den Challenge-Status zurückgibt 6 neue Tests, 39/39 grün. Setzt mana-swift-core ≥ 1.3.0 voraus. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
6417b4cd33
commit
c1555565b6
7 changed files with 348 additions and 4 deletions
22
CHANGELOG.md
22
CHANGELOG.md
|
|
@ -6,6 +6,28 @@ Alle Änderungen werden hier dokumentiert. Format orientiert an
|
|||
|
||||
## [Unreleased]
|
||||
|
||||
## [0.3.0] — 2026-05-14
|
||||
|
||||
Minor — `ManaTwoFactorChallengeView` für 2FA-Login. Setzt
|
||||
mana-swift-core ≥ 1.3.0 voraus (Status `.twoFactorRequired`).
|
||||
|
||||
### Neu
|
||||
|
||||
- `ManaTwoFactorChallengeView` + `TwoFactorChallengeViewModel` —
|
||||
6-stelliger TOTP-Code-Input (Number-Pad auf iOS), Fallback auf
|
||||
Backup-Codes via Toggle, "Abbrechen" routet via
|
||||
`auth.signOut(keepGuestMode:)` zurück zum Login.
|
||||
- `LoginViewModel.Status.twoFactorRequired(email:)` als neuer Case.
|
||||
- `ManaLoginView` schaltet bei `.twoFactorRequired` automatisch auf
|
||||
`ManaTwoFactorChallengeView` um (analog zu `.emailNotVerified`).
|
||||
|
||||
### Tests
|
||||
|
||||
- 6 neue Tests für `TwoFactorChallengeViewModel`: canSubmit-Guards
|
||||
(TOTP 6 Ziffern, Backup beliebig), toggleMode-State-Reset, submit
|
||||
bei Erfolg/Fehler, Backup-Code-Routing.
|
||||
- 39/39 grün.
|
||||
|
||||
## [0.2.0] — 2026-05-13
|
||||
|
||||
Minor — Action-Level-Gate für Apps mit Guest-/Login-optional-Modus.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue