feat(auth): clarify breach-row label and polish the password strip #272
No reviewers
Labels
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
psa-systems/bunyip!272
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/BUNYIP-240-inline-password-feedback"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
BUNYIP-250 (BUNYIP-240 follow-up): the live breach row showed
✗next to a static "Not found in a known data breach" label whenever HIBP reported the password as leaked, which read as "the validator is broken" instead of "your password is compromised". Pair the indicator with a dynamic label and a one-line follow-up so the user has a path forward.Each
<li>now carriesdata-label-{pass,fail,pending}; the inlinesetStateruns asyncRowLabelstep that flips the visible.pw-labeltext per state. The breach row reads "Found in a known data breach. Pick a different password." on fail and keeps the existing copy on pass / pending. The other rows omit the dataset attributes so their labels stay static (length / case / digit do not change meaning per state).A
#pw-breach-helpparagraph rendered hidden under the strip is revealed only when the breach row entersfail, explaining the constraint in one sentence so the user knows the right action is "pick a fresh password", not "type a stronger one".Visual rhythm: glyphs now use Font Awesome (
fa-regular fa-circle,fa-solid fa-circle-check,fa-solid fa-circle-xmark) via the kit already loaded under the bunyip-web CSP; each<li>isflex items-center gap-2; the strip lifts fromtext-xstotext-smwithspace-y-1.5so it reads as form copy instead of fine print. Same treatment for#pw-confirm-msg. No new CSP origins.The server-side
password_ok()backstop is untouched; this is presentation only.#BUNYIP-250
BUNYIP-250 (BUNYIP-240 follow-up): the live breach row showed `✗` next to a static "Not found in a known data breach" label whenever HIBP reported the password as leaked, which read as "the validator is broken" instead of "your password is compromised". Pair the indicator with a dynamic label and a one-line follow-up so the user has a path forward. Each `<li>` now carries `data-label-{pass,fail,pending}`; the inline `setState` runs a `syncRowLabel` step that flips the visible `.pw-label` text per state. The breach row reads "Found in a known data breach. Pick a different password." on fail and keeps the existing copy on pass / pending. The other rows omit the dataset attributes so their labels stay static (length / case / digit do not change meaning per state). A `#pw-breach-help` paragraph rendered hidden under the strip is revealed only when the breach row enters `fail`, explaining the constraint in one sentence so the user knows the right action is "pick a fresh password", not "type a stronger one". Visual rhythm: glyphs now use Font Awesome (`fa-regular fa-circle`, `fa-solid fa-circle-check`, `fa-solid fa-circle-xmark`) via the kit already loaded under the bunyip-web CSP; each `<li>` is `flex items-center gap-2`; the strip lifts from `text-xs` to `text-sm` with `space-y-1.5` so it reads as form copy instead of fine print. Same treatment for `#pw-confirm-msg`. No new CSP origins. The server-side `password_ok()` backstop is untouched; this is presentation only. #BUNYIP-250