Skip to content

mcp-v0.15.0

Choose a tag to compare

@superdoc-bot superdoc-bot released this 23 Jun 15:22

What's New

Footnotes and endnotes β€” Double-click reference markers to navigate between notes and body text; delete from either side removes both marker and note; insert via editor.commands.insertFootnote(); caret and arrow navigation track correctly in multi-paragraph notes; font sizing respects document defaults.

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

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

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

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

Document API β€” block operations β€” merge preserves first paragraph properties; split and move return affected ranges and transaction IDs for transaction tracking.

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 REF or NOTEREF fields pointing at footnotes or endnotes to jump to those notes.

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

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

Vector shape shadows β€” Outer shadow effects on preset and custom shapes; shadows respect blur radius, distance, direction, and color; rendering via SVG filters with Word-compatible paint extents.

Vector shape group transforms β€” Shape-group transforms now support rotation and flipping; nested groups compose correctly with child-local orientation and affine transformation.

Shape-clipped images β€” Images masked by preset shape geometry carry shape clipping and object-fit properties; stretched fills map correctly to cover or fill modes.

Improvements

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

Footnote performance β€” Warm-start reserve convergence reduces keystroke cost on 25-footnote documents from 75ms to 12ms; single 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 to eliminate redundant rebuilds.

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

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

Track changes β€” 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 β€” Auto-linking now requires explicit URL intent (www., http(s)://, mailto:, tel:, sms:) to prevent plain text or relative paths from being mistakenly linked.

Paragraph spacing in shapes β€” Textbox paragraph spacing (before/after) renders per logical paragraph; line breaks distinguish paragraph breaks from intra-paragraph breaks.

Vector shape geometry β€” Arrow shapes regenerated with Word-compatible proportions; roundRect paths generated in target coordinate space; stroke width preserved on large-coordinate-scale shapes.

Anchored object positioning β€” Page-relative anchors now participate in text wrap; section-marker paragraphs preserve anchored objects at marker origin; header/footer anchored wrapNone media render as page-level overlays.

Z-order stacking β€” Page-background decorations stack by authored OOXML z-index instead of document order.

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 arrow presses.

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

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

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

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

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

List export β€” Document XML syncs before numbering pruning to preserve list definitions.

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

Link popover rendering β€” Popovers mount outside overflow:hidden containers to prevent clipping.

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

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