Skip to content

Prototype: Single modal image upload and confirm navigation#3222

Open
benjaminleonard wants to merge 1 commit into
mainfrom
one-modal-image-upload
Open

Prototype: Single modal image upload and confirm navigation#3222
benjaminleonard wants to merge 1 commit into
mainfrom
one-modal-image-upload

Conversation

@benjaminleonard
Copy link
Copy Markdown
Contributor

@benjaminleonard benjaminleonard commented May 19, 2026

The image upload flow has long been need of updating. I can excuse the poor UX, but ugliness?!

This replaces that with a single modal that has two states. It's still possible to return back to the form from the upload state, like before. It also adds a notice whilst cleanup is happening (though note a pre-existing issue #1788).

Before:
image

After:
CleanShot 2026-05-19 at 12 34 09


Now for the nav guard block modal when a user leaves the form. The UX I think is fine, it's just the visual treatment that is awkward. The relationship between the regular modal and the side one. Here's my alternative proposal:

CleanShot 2026-05-19 at 12 46 39

@vercel
Copy link
Copy Markdown

vercel Bot commented May 19, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
console Ready Ready Preview May 22, 2026 10:03pm

Request Review

@david-crespo
Copy link
Copy Markdown
Collaborator

Working on this to close #1859, which Jatinder ran into on colo.

image

david-crespo added a commit that referenced this pull request May 22, 2026
Closes #1859. Will merge this into main and then merge main into #3222.

<img width="773" height="442" alt="image"
src="https://github.com/user-attachments/assets/2443b3e6-a994-4b2a-8491-3cabc134e1bd"
/>
@david-crespo
Copy link
Copy Markdown
Collaborator

Did that in #3227 and rebased this on main to incorporate it.

david-crespo added a commit that referenced this pull request May 23, 2026
A small bug the robot caught while looking at #3222.

At the end of a successful image upload, we delete the temporary
snapshot and disk. If snapshot deletion succeeded but disk deletion
failed, the catch path called `cleanup()` while `snapshot.current` still
pointed at the already-deleted snapshot. Cleanup would then try to
delete that snapshot again, fail with 404, and never reach the remaining
disk cleanup.

Fix: Clear each ref immediately after its successful delete so later
cleanup only retries resources that still exist.

It would be nice to have a test for this but it would be pretty
elaborate for little gain.
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.

2 participants