() => ICell — a live cell getter (not a captured value), so a cell-aware input
reads the cell's formula/format/style/fill through to the model even if the handle is replaced.range.setValue(text, { autoFit, autoSelectRestore }) — the SDK
coerces the string to a formula / number / date / text. autoSelectRestore without autoSelect: the
write leaves the selection as it is (a block typed into stays selected for Enter to move within),
and an undo or a redo of it lands on the cell.null ⇒ the cell is not editable (protected / read-only), via ICell.isEditAllowed.coords.scope (a sheet name) picks the sheet to edit, via workbook.getSheet,
falling back to sheet. This is what makes a commit write back to the session's origin sheet even
if a different sheet is currently displayed — coords here is the session's own (fixed) coords, not
whatever the anchor currently reports.Construct the editable with it: new DefaultEditable(anchor, createSheetCreateEdit(sheet)) — or use
the createEditable factory, which wires both.
A write the model REFUSES (an ExpectedError such as "You can't change part of an array") throws
out of commit, which rejects it; the editable fans the error out to
IEditable.subscribeCommitError, where the host shows it.
An
ISheet-backed CreateEdit for the new DefaultEditable / EditorLayer.