feat: add undo button to page delete toast (#1163)#1166
Merged
Conversation
Co-authored-by: Ona <no-reply@ona.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Collaborator
Author
|
✅ UI verification passed — design spec compliance confirmed. Summary:
|
Collaborator
Author
|
✅ Post-merge verification passed. E2E tests against live site (
¹ New undo tests (from this PR) both pass:
Ad-hoc smoke tests:
Interaction smoke test (undo feature):
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1163
What
Adds an "Undo" action button to the "Page moved to trash" toast notification. Clicking Undo calls the existing
restore_pageRPC to restore the soft-deleted page and re-inserts it into the sidebar tree. If the user was navigated away (because they were viewing the deleted page), Undo navigates back to the restored page.How
handleDeleteinuse-page-tree-actions.tsto snapshot removed pages before deletion and pass anactionwith label "Undo" to the toast callrestore_pageRPC, re-adds pages to state, dispatchespages-changedandtrash-changedevents, and navigates back if neededTesting
use-page-tree-actions.test.ts: toast has Undo action with 5s duration, undo calls restore_page RPC, undo navigates back when user was on deleted page, undo shows error toast on failuree2e/trash.spec.ts: undo restores page to sidebar tree, undo navigates back to restored pagepnpm lint && pnpm typecheck && pnpm testall pass (0 errors, 1975 tests)