five-on-it / apps/client/src/ui/AccountBar
apps/client/src/ui/AccountBar
Who the player is on the platform, and the way to change it: the device's guest, or the account they signed in to with an email and a password (and can sign out of), the form saying that signing in accepts the terms and linking them and the privacy policy (the terms' version goes with the sign-in, legal.ts), and for an admin's account (/me says so) a link to the admins' page (?admin); beside a signed-in account's name its Respect tier and total, a link to its standing's page (RespectParts.tsx' StandingSummary). Where the platform signs in through Steam (its /info), "Sign in through Steam" (the OpenID round trip, steam.ts) and, for an e-mail account, "Link to Steam"; on a platform for the game's owners the e-mail form gives way to linking an e-mail account (its e-mail and password asked once Steam said who the player is), and a Steam account the platform refused is told why, with "Get it on Steam". In the desktop app the same buttons go through the app (steam.ts): its Steam ticket, else Steam's page in a window of the app's; once it signed in through Steam on this device it signs in again by itself with the ticket where its session is gone. The legend's Games tab and the game pages both show it; its element ids start with the prefix each gives (games-account, browse-email, browse-admin, browse-steam…), the end-to-end tests' contract.