Form / foldkit-form
Did an edit change anything?
authoredChanged(before, after) answers whether a completed transition changed
what the author wrote:
ts
const next = RenameForm.bundle.update(model, message, undefined)
if (RenameForm.authoredChanged(model, next.model)) scheduleAutosave()It compares the two Models, not the Message: validation state, search text, the
edited subject, and row bookkeeping are not authored content, so a blur, a
refused edit, or a repeated value reports false while a changed draft, an
added or removed row, or a changed row reports true. Nested rows recurse
through their own forms, and a control whose output is written back into the
Model composes for the same reason — which is what lets a consumer such as
foldkit-cms autosave without knowing the form's Message
tags.