A whole category accepted in one click, and one undo

Five article fixes were five clicks, five confetti bursts and five undo
steps. "Accept all Tidy-up (5)" makes them one of each.

The single undo decided the implementation: every replacement goes into one
Tiptap chain, which applies as one transaction and so undoes as one history
event. That only works if the spans can't move under each other, so the
plan resolves every span against the document as it stands and applies them
last-first.

Three outcomes rather than one, because a batch that quietly dropped a card
would be reporting edits it never made: a span she already fixed herself is
settled without an edit (what a single Accept does too), and a card quoting
the same words as one already taken is left on screen, since findRange
would resolve both to the same place.

The control sits on the first card of its kind — the rail can't carry a
category header, its cards are anchored to their own sentences — and only
when the category has company. It is outlined rather than filled: it acts
on cards she can't see from where she's standing.
This commit is contained in:
prosolis
2026-07-28 17:30:44 -07:00
parent 1acc23244e
commit bd92cdc9b6
9 changed files with 508 additions and 27 deletions
+13
View File
@@ -314,6 +314,19 @@ button, a, input {
color: var(--color-plum);
}
/* Accept-all: the quieter sibling of Accept, on both card surfaces. It's outlined
in its category's own colour rather than filled like Accept, because it acts on
cards she can't see from here — an equally loud button for a larger action would
invite the click she meant to give the one suggestion in front of her. */
.petal-accept-all {
border: 1px solid;
background: transparent;
transition: background-color 120ms ease;
}
.petal-accept-all:hover {
background: var(--color-surface-alt);
}
/* --- Find & Replace ---------------------------------------------------------
In-document search (Ctrl/Cmd+F). Every match gets a soft honey wash; the
current match is brighter with a rose ring so it stands out as you step