Skip to content

react-v1.13.0

Choose a tag to compare

@superdoc-bot superdoc-bot released this 20 Jun 16:42

What's New

Footnotes and endnotes β€” full editor integration β€” Double-click a reference marker to navigate to the note; delete from either side removes both marker and note; staged Backspace selects then removes; insert via editor.commands.insertFootnote(); caret and arrow navigation track correctly in multi-paragraph notes; font sizing respects document defaults.

Textbox selection, resize, and move β€” Click within 6px of a textbox border to select it (ProseMirror NodeSelection); resize via corner handles with live feedback; drag to move with margin-offset preservation; works in body, headers, and footers.

Document API β€” image manipulation β€” images.crop, images.rotate, images.scale, images.flip, images.replace-source for full control over alt text, captions, z-order, wrapping, and anchor; TIFF support added.

Document API β€” hyperlinks β€” hyperlinks.insert, hyperlinks.wrap, hyperlinks.list, hyperlinks.patch, hyperlinks.remove; pasted URLs automatically convert to real DOCX link elements.

Document API β€” list operations β€” lists.apply, lists.continue, lists.restart, lists.remove, lists.getState with level-specific formatting; control bullets, numbering, alignment, marker fonts, and indentation.

Document API β€” block operations (v2 sessions) β€” blocks.merge preserves first paragraph properties; blocks.split; blocks.move; returns affected ranges and transaction IDs.

Document API β€” paragraph numbering β€” format.paragraph.setNumbering attaches numbering to paragraphs; blocks.list surfaces list state; format.paragraph.setMarkRunProps controls marker appearance.

Search in tracked deletions β€” Find & Replace now searches text within deleted tracked changes, not just insertions.

Cross-reference navigation β€” Double-click a REF or NOTEREF field pointing at a footnote or endnote to navigate to that note.

Mutations planning β€” mutations.planExecute plans and executes mutations in a single operation with per-entry transactions and failure semantics.

HTML extraction β€” New getHtml operation to read document content as HTML.

V2 package and runtime β€” Unified v2 editor runtime with improved performance; v1 compatibility wiring for backward compatibility.

Improvements

List rendering fidelity β€” First-line indent lists now compute marker suffix tab width from actual rendered tab stops instead of stale targets; justified text width is now correct.

Footnote performance β€” Warm-start reserve convergence reduces keystroke cost on 25-footnote documents from 75ms to 12ms; one pagination per keystroke instead of nine.

Editor performance β€” Block-node metadata transactions no longer trigger full-document numbering diffs; saves ~16ms per keystroke on 776-paragraph documents.

Toolbar refresh β€” Coalesce headless toolbar snapshots per microtask; eliminates redundant rebuilds on transaction + selectionUpdate bursts.

IME composition β€” Defer layout rerender and track-changes rewriting during input method editing to prevent conflicts.

Font configuration robustness β€” Malformed fonts.bundled configuration no longer crashes; defaults to full bundled pack with warning.

Track changes β€” deletion handling β€” Cross-paragraph deletes no longer split paragraphs in suggesting mode; position mapping no longer crashes; accept/reject now reports which decision was taken.

URL paste intent detection β€” Auto-linking now requires explicit URL intent (www., http(s)://, mailto:, tel:, sms:) to prevent plain text or relative paths from being mistakenly linked.

Passthrough nodes β€” Inline passthrough nodes no longer attach content; instruction text lives in attrs.originalXml to fix MERGEFIELD export.

Fixes

Footnotes rendering β€” Terminal-page reserve bump ensures footnotes render when body fills last page.

Note caret and selection β€” Multi-paragraph notes now track caret and selection correctly; arrow navigation no longer skips lines; goal-column preserved across presses.

Note paragraph styles β€” FootnoteText style now preserved on Enter, paste, and every paragraph-creation path.

Header/footer activation β€” Double-click resolves note references only in body fragments; behindDoc textboxes no longer break activation.

Tracked-change review navigation β€” Navigation no longer jumps and leaves the UI in inconsistent states.

Comment behavior regressions β€” Repaired regression in comment behavior after recent refactors.

Format persistence β€” w:caps now persists on export via text transform.

List export β€” Sync document XML before numbering pruning to preserve list definitions on export.

Image resize handles β€” Alignment corrected to match actual image position.

Link popover rendering β€” Mount external popovers outside overflow:hidden containers to prevent clipping.

Orphan references β€” Removed orphan function calls that left the codebase in an inconsistent state.

Security β€” Remediated critical and high penetration test findings.