chore: setup design references
This commit is contained in:
1 parent
2a64991916
commit
64f50074bd
38 files changed
+8443
No files matched your search
@@ -0,0 +1,76 @@
|
||||
# Choose a new password
|
||||
|
||||
- **Route:** `/register/reset/validate?c=CODE&email=EMAIL`
|
||||
- **API:** POST /v1/auth/password-reset/confirm
|
||||
- **Visual reference:** `source/RenewCMS Screens Auth.dc.html`, group "Reset password" (open it in a browser; each state is drawn at desktop and mobile, with a light/dark toggle).
|
||||
|
||||
Opened from the reset email. The email comes from the URL and is read-only. The confirm field is checked only in the browser.
|
||||
|
||||
## States
|
||||
|
||||
### Default
|
||||
|
||||
**Trigger:** Both parameters are present.
|
||||
|
||||
- Heading: **Choose a new password**
|
||||
- Description: "Pick something you haven't used here before. You'll log in with it next."
|
||||
- Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; read-only; help "From your reset link."
|
||||
- Field `New password`: password with show/hide; checklist "At least 8 characters" (unmet)
|
||||
- Field `Confirm new password`: password with show/hide; checklist "Passwords match" (unmet)
|
||||
- Submit button: "Change password"
|
||||
|
||||
### Too short
|
||||
|
||||
**Trigger:** On submit, with fewer than 8 characters.
|
||||
|
||||
- Heading: **Choose a new password**
|
||||
- Description: "Pick something you haven't used here before. You'll log in with it next."
|
||||
- Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; read-only; help "From your reset link."
|
||||
- Field `New password`: value "lime"; password with show/hide; checklist "At least 8 characters" (err)
|
||||
- Field `Confirm new password`: value "lime"; password with show/hide; checklist "Passwords match" (met)
|
||||
- Submit button: "Change password"
|
||||
|
||||
### Mismatch
|
||||
|
||||
**Trigger:** On blur of the confirm field, or on submit.
|
||||
|
||||
- Heading: **Choose a new password**
|
||||
- Description: "Pick something you haven't used here before. You'll log in with it next."
|
||||
- Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; read-only; help "From your reset link."
|
||||
- Field `New password`: value "limewash2026"; password with show/hide; checklist "At least 8 characters" (met)
|
||||
- Field `Confirm new password`: value "limewash2025"; password with show/hide; **error "The passwords don't match."**; checklist "Passwords match" (err)
|
||||
- Submit button: "Change password"
|
||||
|
||||
### Submitting
|
||||
|
||||
**Trigger:** Request in flight.
|
||||
|
||||
- Heading: **Choose a new password**
|
||||
- Description: "Pick something you haven't used here before. You'll log in with it next."
|
||||
- Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; read-only; help "From your reset link."
|
||||
- Field `New password`: value "limewash2026"; password with show/hide; checklist "At least 8 characters" (met)
|
||||
- Field `Confirm new password`: value "limewash2026"; password with show/hide; checklist "Passwords match" (met)
|
||||
- Submit button: "Changing password…", loading
|
||||
|
||||
### Success
|
||||
|
||||
**Trigger:** 200 → /login?reason=password-changed.
|
||||
|
||||
- Alert (success, circle-check): **Password changed** "Log in with your new password."
|
||||
- Heading: **Log in**
|
||||
- Description: "Welcome back. Log in to manage your articles."
|
||||
- Field `Username`: placeholder "Your username"
|
||||
- Field `Password`: password with show/hide; link "Forgot password?"
|
||||
- Submit button: "Log in"
|
||||
|
||||
### Invalid or expired (403)
|
||||
|
||||
**Trigger:** The code is wrong, used, or older than 1 hour.
|
||||
|
||||
- ResultPanel (error, link-2-off): **This reset link has expired**; text "Reset links work once, for 1 hour. Request a new one and use it within the hour."; actions "Request a new link" (primary), "Back to log in" (secondary)
|
||||
|
||||
### Missing parameters
|
||||
|
||||
**Trigger:** The link has no c or no email. No request is made.
|
||||
|
||||
- ResultPanel (error, link-2-off): **This link is incomplete**; text "Part of the reset link is missing. Open it from your email again, or request a new one."; actions "Request a new link" (primary)
|
||||
Reference in new issue
Block a user