Put the given block into Active state (cursor inside, edit mode). Pass null to clear.
Synchronous read of a single block by id. Narrow on block.type.
Synchronous read of all blocks (or the blocks on one page). Narrow on block.type.
OptionalpageIndex: numberStyle at the cursor / selection inside the active block, or null if no block is active.
True iff any session — UI or programmatic — is live.
Opening a UI session programmatically: call
instance.setViewState(vs => vs.set('interactionMode', NutrientViewer.InteractionMode.CONTENT_EDITOR)).
Closing: call Instance#saveContentEditingSession or
Instance#discardContentEditingSession.
Redo the last undone change in the active text block.
Put the given block into Selected state (clicked, but not in edit mode). Pass null to clear.
Apply layout properties to a specific text block in the active UI session.
Apply style to the current UI selection (or to the cursor for next-typed text).
Undo the last change in the active text block (text-input scoped today).
The
instance.contentEditornamespace exposes the headless APIs that let a custom toolbar read state from and write state to the live UI content editor session.Session save/discard/dirty-flag/export and starting a programmatic session stay on
Instanceitself — see Instance#saveContentEditingSession, Instance#discardContentEditingSession, Instance#hasUnsavedContentEditingChanges, Instance#exportContentEditorPDF, and Instance#beginContentEditingSession. This namespace fills the gaps those methods do not cover.The read methods expose the live session — UI or programmatic, whichever is currently active. UI state methods such as selection, focus, text styling, undo, redo, and layout changes require an active UI session. Programmatic sessions should use the ContentEditing.Session returned by Instance#beginContentEditingSession for mutations.
Subscribe to "contentEditor.stateChange" to keep a custom toolbar in sync with state changes.