Skip to content

fix(snd): replace legacy blue cloud on expired-link screen with Vault hero#25

Merged
jaschadub merged 1 commit into
masterfrom
fix/snd-expired-vault-hero
May 23, 2026
Merged

fix(snd): replace legacy blue cloud on expired-link screen with Vault hero#25
jaschadub merged 1 commit into
masterfrom
fix/snd-expired-vault-hero

Conversation

@jaschadub

Copy link
Copy Markdown
Member

What

`app/ui/notFound.js` (rendered when a share link has expired or 404s) was still using `assets/notFound.svg` — a Mozilla Firefox Send-era illustration: saturated blue, soft cloud-with-strike-through glyph, decorative. Same off-brand carryover that `downloadCompleted.js` had before PR #18 fixed it.

Visual

Before After
Blue cloud-disabled illustration mid-page Three nested squares (concentric, hairline outer pair, mute inner with a diagonal slash) + EXPIRED tag eyebrow + >-prefixed mono caption

The replacement mirrors the download-complete hero from #18 so the encrypt / decrypt / expired moments visually rhyme — same three-nested-square primitive, different inner glyph and color to communicate state:

  • download-complete → inner square sage, checkmark inside, "DECRYPTED" tag
  • expired → inner square mute, diagonal slash inside, "EXPIRED" tag

`mute` chosen over `danger` deliberately — expired is an absent condition (file is gone, no recovery), not a destructive one warranting the terracotta danger color reserved for "delete share" / "attempt-exceeded" per the spec.

Other cleanup

Test plan

  • `npm run build` — succeeds
  • Manual: hit an expired share URL (/dl/<garbage>) and confirm the new hero renders

… hero

app/ui/notFound.js (rendered when a share link has expired or 404s)
was still using assets/notFound.svg -- a Mozilla Firefox Send-era
illustration: saturated blue, soft cloud-with-strike-through glyph,
decorative. Same off-brand carryover that downloadCompleted.js had
before PR #18 fixed it.

Replacement uses the existing Vault visual vocabulary, mirroring the
download-complete hero from PR #18 so the encrypt/decrypt/expired
moments visually rhyme:

- Three nested squares (concentric, hairline outer pair).
- Inner square in `--snd-mute` (not danger -- expired is not a
  destructive condition, it's an absent one).
- Diagonal slash from corner to corner of the inner square, in mute.
- EXPIRED tag eyebrow above the headline.
- A `>`-prefixed mono caption -- "share no longer available · file
  removed from server" -- echoing the Vault comment-line motif.

assets/notFound.svg is no longer referenced. Leaving the file in
place for now; webpack still emits it but no template loads it.

The `assets` import is also dropped since it's no longer used.
@jaschadub
jaschadub merged commit 0410ad9 into master May 23, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant