chore: new design for invitations accept
This commit is contained in:
1 parent
6afffc1984
commit
310cfd528e
8 files changed
+148
-34
No files matched your search
+10
-2
@@ -97,7 +97,12 @@ Every state is drawn at desktop and mobile on the screen boards, with final copy
|
||||
| Profile | `/profile` | Saving, saved, save failed | PATCH in flight, 200, 500 or network | [profile](screens/profile.md) |
|
||||
| Profile | `/profile` | Reset: sending, sent, 429, failed | POST /v1/auth/password-reset | [profile](screens/profile.md) |
|
||||
| Profile | `/profile` | Display names in the Users list | Accounts with a display name | [profile](screens/profile.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Not designed | Opened from the invitation email | [accept-invite](screens/accept-invite.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Checking the link | On load: GET invite | [accept-invite](screens/accept-invite.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Default, validation errors, filled, submitting | Valid, unused code; email read-only | [accept-invite](screens/accept-invite.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Username taken | 409 | [accept-invite](screens/accept-invite.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Invalid or used, expired | 404 or no c parameter, 410 | [accept-invite](screens/accept-invite.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Server error | 500 or network | [accept-invite](screens/accept-invite.md) |
|
||||
| Accept invite | `/invite/accept?c=` | Success | 200: logged in, /home with toast | [accept-invite](screens/accept-invite.md) |
|
||||
|
||||
## HTTP status to copy
|
||||
|
||||
@@ -115,6 +120,9 @@ Response bodies are plain text and are never shown. `useApi` throws an `ApiError
|
||||
| 403 | Cancel registration | "Your account is already verified." Goes to /home | Toast |
|
||||
| 403 | Reset confirm | "This reset link has expired." Offers Request a new link | ResultPanel |
|
||||
| 409 | Invite | "This address already has an account." or, for a live invite, "There's already a pending invite for this address." | Field error |
|
||||
| 404 | Accept invite | "This invite link doesn't work." Offers Go to log in | ResultPanel |
|
||||
| 409 | Accept invite | "That username is taken. Try another." | Field |
|
||||
| 410 | Accept invite | "This invite has expired. Ask the person who invited you to send a new one." | ResultPanel |
|
||||
| 404 | Editor load | "This article doesn't exist." Offers All articles | ErrorView |
|
||||
| 404 | Row or editor action | "That article no longer exists." The row is removed | Toast |
|
||||
| 404 | Unknown route | "Page not found" | ErrorView |
|
||||
@@ -139,7 +147,7 @@ Added by the Users and Profile screens, none of which exist yet:
|
||||
- `GET /v1/user/`: the users and their invites, newest first.
|
||||
- `POST /v1/user/invite`: sends an invitation email. 201, 409 for an existing account or a live pending invite.
|
||||
- `PATCH /v1/user/me`: saves the display name. `GET /v1/auth/me` returns it.
|
||||
- The endpoint behind the Accept invite screen, which is not designed.
|
||||
- `GET /v1/auth/invite?c=CODE`: looks up the invite on load, returns `{ email }`, 404 or 410. `POST /v1/auth/invite/accept` takes `{ code, username, password }` and returns 200 with the session cookie, 409 for a taken username, 404 or 410.
|
||||
|
||||
Still not supported, so shown disabled or omitted:
|
||||
|
||||
|
||||
Reference in new issue
Block a user