Move passkey enrollment prompt to post-login dedicated page

After password login, users are routed through /Passkey/EnrollPrompt
before reaching the dashboard. The page shows an Enable / Maybe later
choice using the auth layout for a clean full-screen experience.
Users who already have a passkey are skipped past instantly.

Removes the floating bottom-right card from _Layout — the dedicated
page is a better UX touchpoint (one moment, right after login, rather
than a floating card on every page).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-25 16:41:01 -04:00
parent 92f71f62d0
commit edce8e8c4a
6 changed files with 144 additions and 84 deletions
@@ -210,7 +210,14 @@
</div>
}
@{
var _origReturn = Request.Query["ReturnUrl"].FirstOrDefault() ?? "/";
var _enrollUrl = string.IsNullOrEmpty(_origReturn) || _origReturn == "/"
? "/Passkey/EnrollPrompt"
: "/Passkey/EnrollPrompt?returnUrl=" + Uri.EscapeDataString(_origReturn);
}
<form id="account" method="post">
<input type="hidden" name="ReturnUrl" value="@_enrollUrl" />
<div asp-validation-summary="ModelOnly" class="alert alert-danger py-2 mb-3" role="alert" style="display:@(ViewContext.ViewData.ModelState.IsValid ? "none" : "block")"></div>
<div class="mb-3">