Skip to content

fix: arrow key navigation through and out of tables (SD-2236)#2476

Merged
harbournick merged 13 commits intomainfrom
luccas/sd-2236-bug-arrow-key-navigation-through-and-out-of-tables-is
Mar 20, 2026
Merged

fix: arrow key navigation through and out of tables (SD-2236)#2476
harbournick merged 13 commits intomainfrom
luccas/sd-2236-bug-arrow-key-navigation-through-and-out-of-tables-is

Conversation

@luccas-harbour
Copy link
Contributor

Fix arrow key navigation through and out of tables

Problem

Arrow key navigation around tables was broken in several ways:

  • Horizontal (Left/Right): Pressing ArrowRight at the end of the last table cell or ArrowLeft at the start of the first cell did not exit the table. Similarly, pressing ArrowRight/Left from a paragraph adjacent to a table did not enter it.
  • Vertical (Up/Down): Pressing ArrowUp/Down inside a table navigated by DOM order (cell-by-cell) instead of by visual geometry, causing the cursor to jump to the wrong column.
  • Table insertion: Inserting a table at the end of a document left no trailing paragraph, making it impossible to place the cursor after the table. The cursor also landed at the wrong position after insertion.
  • Protected paragraph: The trailing separator paragraph required after a final table could be deleted with Backspace/Delete, breaking the document structure.

Solution

Horizontal boundary navigation (tableBoundaryNavigation.js — new file)

  • New ProseMirror plugin that intercepts ArrowLeft/ArrowRight at table boundaries.
  • Exits the table when the caret is at the effective start/end of the first/last cell.
  • Enters the table when the caret is at the edge of an adjacent paragraph.
  • Run-aware: treats the end of the final run node as the effective paragraph boundary.
  • Blocks Backspace/Delete inside the protected trailing paragraph after a final table.

Vertical geometry-based navigation (vertical-navigation.js)

  • Replaced DOM-order-based line traversal (findAdjacentLineElement) with visual-geometry-based matching using getBoundingClientRect.
  • New helpers (getLineMetrics, findClosestLineInDirection, chooseLineClosestToX) select the nearest line by Y-distance first, then X-proximity — correctly navigating across table columns.

Table insertion fixes (table.js)

  • insertTable now replaces the current empty paragraph instead of inserting after it, and places the cursor in the first cell.
  • Extracted insertTopLevelTableWithSeparators to deduplicate separator logic between insertTable and the import path.
  • Always ensures a trailing separator paragraph when a table is inserted at the document end.

@linear
Copy link

linear bot commented Mar 19, 2026

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a8d86b7a79

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

luccas-harbour and others added 12 commits March 19, 2026 18:19
Refactors `findAdjacentLineElement` to select the next line based on spatial position (center Y + closest X) rather than DOM order, so that ArrowUp/ArrowDown navigate within the same visual table column instead of jumping to DOM-adjacent cells.
Adds a Playwright behavior test verifying that pressing ArrowRight at the end of the bottom-right table cell moves the cursor to the paragraph after the table.
Introduces the `tableBoundaryNavigation` plugin that handles ArrowLeft/ArrowRight at table boundaries — exiting from the first/last cell and entering from an adjacent paragraph. Includes unit tests and a behavior test for ArrowLeft re-entry.
…tion

Extracts shared helpers (`findParagraphDepth`, `getCellRect`, `findSelectionNearBoundary`, `getDirectionHelpers`) to consolidate the mirrored forward/backward boundary navigation code paths.
…lace cursor in first cell

Refactors `insertTable` to replace an empty paragraph at the insertion point, add a trailing separator paragraph when the table would otherwise be the last node, and place the selection inside the first cell.
…fter a final table

Prevents the user from deleting the trailing empty paragraph that separates the last table from the document boundary, which would leave the table without an exit point for horizontal navigation.
… table

Adds a Playwright test verifying that Backspace and Delete are no-ops when the cursor is in the protected trailing paragraph following the last table in the document.
… insertTable

When the selection is at depth 0 (e.g. Ctrl+A or a selected top-level
block like documentSection), $from.end() + 1 overflowed past
doc.content.size, causing a RangeError in insertTopLevelTableWithSeparators.

Guard on $from.depth === 0 and replace the selected range directly so
the table is inserted correctly with a trailing separator paragraph and
the cursor lands in the first cell.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… key navigation

Paragraphs in imported documents can contain invisible inline markers
(bookmarkStart, bookmarkEnd, permEnd, commentRangeEnd, etc.) adjacent
to runs. The boundary detection functions treated these as meaningful
content, preventing ArrowRight/ArrowLeft from exiting or entering the
table when the cursor was at the edge of a run followed or preceded by
such markers.

Replace the strict last-child/first-child index check with
allInlineMarkersBetween, which skips over inline non-run nodes that
carry no text content.
The trailing separator paragraph added after tables caused the
synthetic drop at viewport center to land outside the cell. Target
the rendered `.superdoc-table-fragment` element so the drop
coordinates are inside the cell and getMaxContentSize() picks up the
cell context.
@luccas-harbour luccas-harbour force-pushed the luccas/sd-2236-bug-arrow-key-navigation-through-and-out-of-tables-is branch from 3a8f9c8 to c82e383 Compare March 19, 2026 21:35
Copy link
Contributor

@caio-pizzol caio-pizzol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@luccas-harbour nice work — tested this in the browser and everything works: arrow keys exit/enter tables, up/down moves through rows visually, trailing paragraph gets created and can't be deleted. both prior review items are fixed. no bugs found. left a few small cleanup suggestions inline.

- Remove unused NodeSelection import from table.js
- Remove dead trailingParagraphPos from insertTopLevelTableWithSeparators
- Remove redundant .map() in findClosestLineInDirection
- Pass pre-computed currentMetrics instead of measuring the element twice
Copy link
Collaborator

@harbournick harbournick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@harbournick harbournick merged commit d5317ef into main Mar 20, 2026
43 checks passed
@harbournick harbournick deleted the luccas/sd-2236-bug-arrow-key-navigation-through-and-out-of-tables-is branch March 20, 2026 14:58
@superdoc-bot
Copy link
Contributor

superdoc-bot bot commented Mar 20, 2026

🎉 This PR is included in superdoc v1.21.0-next.26

The release is available on GitHub release

@superdoc-bot
Copy link
Contributor

superdoc-bot bot commented Mar 20, 2026

🎉 This PR is included in superdoc-cli v0.3.0-next.55

The release is available on GitHub release

superdoc-bot bot pushed a commit that referenced this pull request Mar 20, 2026
# [0.3.0](cli-v0.2.0...cli-v0.3.0) (2026-03-20)

### Bug Fixes

* arrow key navigation through and out of tables (SD-2236) ([#2476](#2476)) ([d5317ef](d5317ef))
* behavior tests ([#2436](#2436)) ([2d087f2](2d087f2))
* bug text edit commands fail on targets returned by find ([#2488](#2488)) ([7a9a448](7a9a448))
* change default link protocol ([#2319](#2319)) ([1deda06](1deda06))
* clear linked style for the next paragraph ([#2344](#2344)) ([9714ffb](9714ffb))
* clear selection on undo/redo ([#2385](#2385)) ([6473acf](6473acf))
* cli skills install ([ed7436a](ed7436a))
* **cli:** include allowed values in oneOf const validation errors ([#2455](#2455)) ([8802f90](8802f90))
* **cli:** restore tracked diff redline roundtrip ([#2438](#2438)) ([f609371](f609371))
* close toolbar overflow menu on click outside ([#2377](#2377)) ([ba74245](ba74245))
* **collaboration:** preserve body section properties across Yjs sync ([#2356](#2356)) ([ea702d6](ea702d6))
* **comments:** keep floating comment bubbles aligned with the selected thread (SD-2210 and SD-2223) ([#2390](#2390)) ([b014618](b014618))
* **comments:** resolve double-click activation and edit mode issues (SD-2035) ([#2259](#2259)) ([d9465aa](d9465aa))
* declare w15 namespace when bootstrapping numbering.xml ([#2470](#2470)) ([a14004d](a14004d))
* **diffing:** ignore volatile OOXML attrs in image and paragraph diff comparison ([#2421](#2421)) ([ca91225](ca91225))
* disable table resizing UI in viewing mode ([#2403](#2403)) ([697e799](697e799))
* doc-api story regressions and export app.xml stats ([#2478](#2478)) ([d06ff4e](d06ff4e))
* **doc-api:** gate textStyle attrs and sync reference coverage ([#2430](#2430)) ([e2d6ca6](e2d6ca6))
* **docs:** coherence pass on doc api, clean up dead code, update CLI SKILL.md ([#2424](#2424)) ([bf0d4b8](bf0d4b8))
* **document-api:** add document diff API and fix tracked diff replay in CLI host session ([#2418](#2418)) ([2a804f7](2a804f7))
* **document-api:** add mutation-ready cell addresses to tables.getCells ([#2461](#2461)) ([99bd4e5](99bd4e5))
* **document-api:** clear styles before paragraph.setStyle ([#2449](#2449)) ([bce4bb8](bce4bb8))
* **document-api:** make find/get treat content controls as sdt ([6688b8c](6688b8c))
* **document-api:** rename atRowIndex to rowIndex in tables.split ([#2473](#2473)) ([7de2864](7de2864))
* **document-api:** return fresh table ref in mutation responses ([#2453](#2453)) ([af6de73](af6de73))
* **document-api:** return NodeAddress from find and getNode instead of SDAddress (SD-2168) ([#2342](#2342)) ([edcb3c6](edcb3c6))
* **editor:** arrow key navigation across page boundaries and auto-scroll (SD-1950) ([#2191](#2191)) ([f7961d7](f7961d7)), closes [#scrollCaretIntoViewIfNeeded](https://github.com/superdoc-dev/superdoc/issues/scrollCaretIntoViewIfNeeded) [this.#painterHost](https://github.com/this./issues/painterHost) [#scrollScreenRectIntoView](https://github.com/superdoc-dev/superdoc/issues/scrollScreenRectIntoView) [#scrollCaretIntoViewIfNeeded](https://github.com/superdoc-dev/superdoc/issues/scrollCaretIntoViewIfNeeded) [#scrollActiveEndIntoView](https://github.com/superdoc-dev/superdoc/issues/scrollActiveEndIntoView)
* **editor:** prevent scroll-to-top when clicking toolbar buttons ([#2236](#2236)) ([ab30a36](ab30a36))
* ensure ruler 0 is visible ([#2487](#2487)) ([096d9f0](096d9f0))
* **export:** prevent DOCX corruption from UTF-16 XML parts and schema violations (SD-2170) ([#2349](#2349)) ([fed1d6b](fed1d6b))
* faulty TOC import/export (SD-2183) ([#2371](#2371)) ([45b4452](45b4452))
* guard drawing export against invalid structures and zero IDs (SD-824) ([#2363](#2363)) ([9c7fc2e](9c7fc2e))
* **header-footer:** normalize page-relative anchor layout ([#2484](#2484)) ([6e62198](6e62198))
* **image:** sync headless image media to Y.Doc for collab persistence ([#2313](#2313)) ([72c64ed](72c64ed))
* import regression ([#2452](#2452)) ([cac5e24](cac5e24))
* improve document API dry runs, query matching, and reference block mutations ([#2498](#2498)) ([5959c5f](5959c5f))
* improve multi-column rendering ([#2369](#2369)) ([d231640](d231640))
* isolate document surface and toolbar/ruler stacking contexts ([#2491](#2491)) ([976ce14](976ce14))
* issue with vertical cells merging ([#2387](#2387)) ([e8f1c10](e8f1c10))
* **layout-engine:** match partial-row split height to renderer semantics ([#2486](#2486)) ([e0982da](e0982da))
* **layout-engine:** require bilateral opt-in for contextual spacing ([#2475](#2475)) ([40e04c2](40e04c2))
* **layout-engine:** skip redundant pageBreakBefore after page-forcing section breaks ([a950ed2](a950ed2))
* **lists:** stabilize list item addresses for docs without paraIds ([#2429](#2429)) ([0070de6](0070de6))
* match Word list marker geometry and section-carrier pagination ([#2358](#2358)) ([36d562f](36d562f))
* merged table cells owning outer borders in DOM painter ([c55f65a](c55f65a))
* newline formatting inheritance without serializing style-derived formatting (SD-2228) ([#2417](#2417)) ([5a3318f](5a3318f))
* open links in view mode ([#2350](#2350)) ([25f0aad](25f0aad))
* **painter-dom:** skip non-scrollable scroll container in virtualization (SD-2199) ([#2383](#2383)) ([1e075f6](1e075f6))
* **presentation-editor:** arrow key scroll-into-view with unconstrained containers (SD-1950) ([#2411](#2411)) ([fa8afc8](fa8afc8)), closes [#findScrollableAncestor](https://github.com/superdoc-dev/superdoc/issues/findScrollableAncestor)
* preserve imported letter spacing through editor and layout ([ca9cf6a](ca9cf6a))
* preserve tracked format changes through DOCX export roundtrip ([#2395](#2395)) ([0ee9fa0](0ee9fa0))
* register DOCX numbering metadata for lists.create ([#2432](#2432)) ([129772f](129772f))
* remove syncing of runProperties with paragraph (SD-2143) ([#2343](#2343)) ([3e74426](3e74426))
* **rendering:** apply superscript/subscript font-size scaling during layout ([#2340](#2340)) ([7e9c24f](7e9c24f))
* **rendering:** show comment highlight on text with Word highlight formatting (SD-2188) ([#2370](#2370)) ([8fe0afd](8fe0afd)), closes [#ffff00](https://github.com/superdoc-dev/superdoc/issues/ffff00)
* replace file running twice ([#2396](#2396)) ([a79fcaa](a79fcaa))
* **sdk:** improve agent tool definitions for better LLM accuracy ([#2494](#2494)) ([e914af7](e914af7)), closes [#8](#8) [#9](#9) [#10](#10)
* seed base docx package for collaboration exports ([#2416](#2416)) ([df36853](df36853))
* show correct paragraph font in toolbar when selection is empty (SD-2145) ([#2402](#2402)) ([39e1477](39e1477))
* **super-editor:** guard against style definition nodes without elements ([#2379](#2379)) ([7dd57f8](7dd57f8))
* **super-editor:** make notes-part mutations canonical for footnotes ([#2361](#2361)) ([e232129](e232129))
* **super-editor:** preserve fontFamily in runProperties when set via document API (SD-2249) ([#2433](#2433)) ([491c3fe](491c3fe))
* **super-editor:** preserve root doc attrs during collaboration seeding ([#2359](#2359)) ([018469a](018469a))
* **super-editor:** prevent cursor jump when changing font from toolbar ([#2468](#2468)) ([c315599](c315599))
* **super-editor:** reconcile OPC package metadata during DOCX export ([#2357](#2357)) ([863254a](863254a))
* **superdoc:** expose header/footer edits in update callbacks ([#2368](#2368)) ([78d0056](78d0056))
* **superdoc:** prevent duplicate prosemirror-view bundles in dist ([32c1045](32c1045))
* surface hyperlink tracked changes in comments ([#2485](#2485)) ([ae55118](ae55118))
* **tables:** handle insertColumn right of last column ([#2451](#2451)) ([74c37ff](74c37ff))
* **tables:** prevent resize overlay artifacts during drag ([#2479](#2479)) ([1b1e712](1b1e712))
* text selection inside headers/footers ([#2404](#2404)) ([09677dc](09677dc))
* **toc:** anchor scroll precision within pages navigation (SD-2186) ([#2372](#2372)) ([cfb9a72](cfb9a72)), closes [#scrollContainer](https://github.com/superdoc-dev/superdoc/issues/scrollContainer)
* **toc:** inject _Toc bookmarks so exported DOCX TOC links work without manual Update Table ([#2431](#2431)) ([54c5aa7](54c5aa7))
* toolbar state after document load (SD-2145) ([#2448](#2448)) ([6347ffe](6347ffe))
* **track-changes:** allow linked style changes in suggesting mode (SD-2182) ([#2373](#2373)) ([6400a1f](6400a1f))
* **track-changes:** cancel tracked format changes when reverted to original (SD-2181) ([#2365](#2365)) ([72077b2](72077b2))
* **track-changes:** remove logic that combines adjacent TCs with different IDs ([#2326](#2326)) ([b2f088b](b2f088b))
* **tracked-changes:** do not render empty space in TC within lists ([#2316](#2316)) ([00672dc](00672dc))
* **tracked-changes:** sync tracked changes store on undo and redo ([#2164](#2164)) ([94f0056](94f0056))
* **tracked-changes:** undo/redo applies to both document and comment bubbles ([#2437](#2437)) ([bc7cba3](bc7cba3))
* **types:** fix broken .d.ts imports in published superdoc package (SD-2227) ([#2392](#2392)) ([77807e5](77807e5))
* update list marker font before adding list item ([#2312](#2312)) ([8721614](8721614))
* update skill file ([240fb66](240fb66))
* watermark shading mismatch (SD-2147) ([#2353](#2353)) ([c94320c](c94320c))

### Features

* charts ([#2322](#2322)) ([dff2edc](dff2edc))
* cli improvements, block deletion ([#2360](#2360)) ([26972ff](26972ff))
* **cli:** add --version flag ([6199a9c](6199a9c))
* **collab:** wait for Y fragment settling before initializing editor ([b75ee17](b75ee17))
* **comments:** add scrollToComment API ([#2440](#2440)) ([0132d0e](0132d0e))
* diffing extension for comparing documents (SD-1324 and SD-89) ([#2306](#2306)) ([33e2ce6](33e2ce6))
* **doc-info:** add live page counts to doc.info ([#2435](#2435)) ([e631f4b](e631f4b))
* **doc-info:** live doc.info counts for characters, tracked changes, SDT fields, and lists ([#2428](#2428)) ([2978507](2978507))
* **document-api:** accept table coordinates in unmergeCells ([#2462](#2462)) ([5eca65b](5eca65b))
* **document-api:** add 'story' targeting for parts targeting with main api functions ([#2477](#2477)) ([49dc4ef](49dc4ef))
* **document-api:** add paragraph direction ops and clarify format.rtl ([#2474](#2474)) ([86600ac](86600ac))
* **document-api:** add table convenience ops and sync reference doc ([#2471](#2471)) ([137b1d9](137b1d9))
* **document-api:** content controls ([#2320](#2320)) ([2747e81](2747e81))
* **document-api:** headers & footers ([#2323](#2323)) ([b6511ca](b6511ca))
* **document-api:** improve cross block selection and deleting ([#2391](#2391)) ([cb8fedd](cb8fedd))
* **document-api:** insert/replace structural content ([#2305](#2305)) ([ce0c719](ce0c719))
* **document-api:** list creation and style edit commands ([#2457](#2457)) ([1d6d4bb](1d6d4bb))
* **document-api:** references ([#2321](#2321)) ([6da4d9c](6da4d9c))
* **docx:** support Word document statistic fields and F9 field updates ([#2460](#2460)) ([57b3ecc](57b3ecc))
* **headless:** collaborative comment and tracked-change parity ([#2315](#2315)) ([4dc1be1](4dc1be1))
* **layout:** implement AutoFit table layout algorithm (SD-2174) ([#2355](#2355)) ([5c05535](5c05535))
* llm tools beta ([#2393](#2393)) ([f725f36](f725f36))
* make images uploaded into table cell adjust to width of cell ([#2317](#2317)) ([c79b1d1](c79b1d1))
* parts sync system including yjs ([#2325](#2325)) ([84d8945](84d8945))
* **presentation-editor:** enhance zoom functionality in web layout ([#2408](#2408)) ([d44de69](d44de69)), closes [#applyZoom](https://github.com/superdoc-dev/superdoc/issues/applyZoom)
* remove naive ui ([#2240](#2240)) ([fd5444f](fd5444f))
* **sdk:** ensure sdk clients are not global, change open() to return document handle ([#2497](#2497)) ([3b6eede](3b6eede))
* **sdk:** improve AI tool definitions for LLM accuracy (25% → 95% pass rate) ([#2446](#2446)) ([2e10e26](2e10e26))
* seed blank docx parts when loading JSON into editor ([#2401](#2401)) ([89c982f](89c982f))
* **super-editor:** bridge editor selection into Document API commands ([#2458](#2458)) ([26cef26](26cef26))
* support paragraph between borders (w:pBdr/w:between) ([#2324](#2324)) ([03f8207](03f8207)), closes [#2074](#2074)
* **tables:** support lastRow style options with OOXML roundtrip parity ([#2467](#2467)) ([e84f695](e84f695))
* theming with css variables ([#2386](#2386)) ([529c500](529c500)), closes [#2441](#2441) [#ffffff](https://github.com/superdoc-dev/superdoc/issues/ffffff) [#dbdbdb](https://github.com/superdoc-dev/superdoc/issues/dbdbdb) [hi#level](https://github.com/hi/issues/level) [hi#contrast](https://github.com/hi/issues/contrast) [#f3f6fd](https://github.com/superdoc-dev/superdoc/issues/f3f6fd) [hi#level](https://github.com/hi/issues/level) [#2445](#2445) [#2469](#2469) [#ffffff](https://github.com/superdoc-dev/superdoc/issues/ffffff)

### Performance Improvements

* **test:** move one-time setup to beforeAll in contract-conformance ([#2483](#2483)) ([ed4839b](ed4839b))
* **test:** speed up unit tests and migrate to bun ([#2492](#2492)) ([af44051](af44051))

### Reverts

* Revert "fix(types): fix broken .d.ts imports in published superdoc package (S…" ([#2443](#2443)) ([33215ee](33215ee))
* Revert "fix(types): fix broken .d.ts imports in published superdoc package (S…" ([#2443](#2443)) ([#2444](#2444)) ([2bde895](2bde895))
@superdoc-bot
Copy link
Contributor

superdoc-bot bot commented Mar 20, 2026

🎉 This PR is included in superdoc-cli v0.3.0

The release is available on GitHub release

harbournick pushed a commit that referenced this pull request Mar 20, 2026
# [1.21.0](v1.20.0...v1.21.0) (2026-03-20)

### Bug Fixes

* arrow key navigation through and out of tables (SD-2236) ([#2476](#2476)) ([d5317ef](d5317ef))
* bug text edit commands fail on targets returned by find ([#2488](#2488)) ([7a9a448](7a9a448))
* declare w15 namespace when bootstrapping numbering.xml ([#2470](#2470)) ([a14004d](a14004d))
* doc-api story regressions and export app.xml stats ([#2478](#2478)) ([d06ff4e](d06ff4e))
* **document-api:** add mutation-ready cell addresses to tables.getCells ([#2461](#2461)) ([99bd4e5](99bd4e5))
* **document-api:** clear styles before paragraph.setStyle ([#2449](#2449)) ([bce4bb8](bce4bb8))
* **document-api:** rename atRowIndex to rowIndex in tables.split ([#2473](#2473)) ([7de2864](7de2864))
* **document-api:** return fresh table ref in mutation responses ([#2453](#2453)) ([af6de73](af6de73))
* ensure ruler 0 is visible ([#2487](#2487)) ([096d9f0](096d9f0))
* **header-footer:** normalize page-relative anchor layout ([#2484](#2484)) ([6e62198](6e62198))
* import regression ([#2452](#2452)) ([cac5e24](cac5e24))
* improve document API dry runs, query matching, and reference block mutations ([#2498](#2498)) ([5959c5f](5959c5f))
* isolate document surface and toolbar/ruler stacking contexts ([#2491](#2491)) ([976ce14](976ce14))
* issue with vertical cells merging ([#2387](#2387)) ([e8f1c10](e8f1c10))
* **layout-engine:** match partial-row split height to renderer semantics ([#2486](#2486)) ([e0982da](e0982da))
* **layout-engine:** require bilateral opt-in for contextual spacing ([#2475](#2475)) ([40e04c2](40e04c2))
* **sdk:** improve agent tool definitions for better LLM accuracy ([#2494](#2494)) ([e914af7](e914af7)), closes [#8](#8) [#9](#9) [#10](#10)
* **super-editor:** preserve fontFamily in runProperties when set via document API (SD-2249) ([#2433](#2433)) ([491c3fe](491c3fe))
* **super-editor:** prevent cursor jump when changing font from toolbar ([#2468](#2468)) ([c315599](c315599))
* surface hyperlink tracked changes in comments ([#2485](#2485)) ([ae55118](ae55118))
* **tables:** handle insertColumn right of last column ([#2451](#2451)) ([74c37ff](74c37ff))
* **tables:** prevent resize overlay artifacts during drag ([#2479](#2479)) ([1b1e712](1b1e712))
* toolbar state after document load (SD-2145) ([#2448](#2448)) ([6347ffe](6347ffe))
* **track-changes:** allow linked style changes in suggesting mode (SD-2182) ([#2373](#2373)) ([6400a1f](6400a1f))
* **tracked-changes:** undo/redo applies to both document and comment bubbles ([#2437](#2437)) ([bc7cba3](bc7cba3))
* update list marker font before adding list item ([#2312](#2312)) ([8721614](8721614))

### Features

* **document-api:** accept table coordinates in unmergeCells ([#2462](#2462)) ([5eca65b](5eca65b))
* **document-api:** add 'story' targeting for parts targeting with main api functions ([#2477](#2477)) ([49dc4ef](49dc4ef))
* **document-api:** add paragraph direction ops and clarify format.rtl ([#2474](#2474)) ([86600ac](86600ac))
* **document-api:** add table convenience ops and sync reference doc ([#2471](#2471)) ([137b1d9](137b1d9))
* **document-api:** list creation and style edit commands ([#2457](#2457)) ([1d6d4bb](1d6d4bb))
* **docx:** support Word document statistic fields and F9 field updates ([#2460](#2460)) ([57b3ecc](57b3ecc))
* make images uploaded into table cell adjust to width of cell ([#2317](#2317)) ([c79b1d1](c79b1d1))
* **super-editor:** bridge editor selection into Document API commands ([#2458](#2458)) ([26cef26](26cef26))
* **tables:** support lastRow style options with OOXML roundtrip parity ([#2467](#2467)) ([e84f695](e84f695))
* theming with css variables ([#2386](#2386)) ([529c500](529c500)), closes [#2441](#2441) [#ffffff](https://github.com/superdoc-dev/superdoc/issues/ffffff) [#dbdbdb](https://github.com/superdoc-dev/superdoc/issues/dbdbdb) [hi#level](https://github.com/hi/issues/level) [hi#contrast](https://github.com/hi/issues/contrast) [#f3f6fd](https://github.com/superdoc-dev/superdoc/issues/f3f6fd) [hi#level](https://github.com/hi/issues/level) [#2445](#2445) [#2469](#2469) [#ffffff](https://github.com/superdoc-dev/superdoc/issues/ffffff)

### Performance Improvements

* **test:** move one-time setup to beforeAll in contract-conformance ([#2483](#2483)) ([ed4839b](ed4839b))
* **test:** speed up unit tests and migrate to bun ([#2492](#2492)) ([af44051](af44051))
@harbournick
Copy link
Collaborator

🎉 This PR is included in superdoc v1.21.0

The release is available on GitHub release

harbournick pushed a commit that referenced this pull request Mar 20, 2026
# 1.0.0 (2026-03-20)

### Bug Fixes

* account for indentation when drawing paragraph borders ([#1655](https://github.com/superdoc-dev/superdoc/issues/1655)) ([01a8d39](https://github.com/superdoc-dev/superdoc/commit/01a8d394784d714c539963430abc712dc360a0cd))
* active track change ([#2163](https://github.com/superdoc-dev/superdoc/issues/2163)) ([108c14d](https://github.com/superdoc-dev/superdoc/commit/108c14d30fad847e3604d285806823ff9485c2f6))
* add addToHistory to new insertTrackedChange command ([#1767](https://github.com/superdoc-dev/superdoc/issues/1767)) ([e5081be](https://github.com/superdoc-dev/superdoc/commit/e5081be4abdc108f348ea91b95092ae643567c91))
* add ai icons to commons ([9ab0fa4](https://github.com/superdoc-dev/superdoc/commit/9ab0fa42b3f5c1f7f5b2c66cab0c96f240ec786c))
* add another ai selection helper ([d180f4d](https://github.com/superdoc-dev/superdoc/commit/d180f4d97f4b450a55f4feeb5f5fbdee0b24de3b))
* add check for missing var ([539b49b](https://github.com/superdoc-dev/superdoc/commit/539b49b59bbd61fa3d366e5dda4b631ea9a10028))
* add checking for block content or inline when pasting ([4491969](https://github.com/superdoc-dev/superdoc/commit/4491969f38efbddb62cbd4c80654727e8953b694))
* add column balancing and INDEX field support ([#1753](https://github.com/superdoc-dev/superdoc/issues/1753)) ([b2a6f6b](https://github.com/superdoc-dev/superdoc/commit/b2a6f6b931c505751f54ff0fe6cc1b8f7071fbbf))
* add currentTotalPages getter and pagination-update event ([#2202](https://github.com/superdoc-dev/superdoc/issues/2202)) ([95b4579](https://github.com/superdoc-dev/superdoc/commit/95b45793cc7ad4acf714eac2f6f9ac010a62e8ea)), closes [#958](https://github.com/superdoc-dev/superdoc/issues/958)
* add destroyed to flag to abort init ([#1616](https://github.com/superdoc-dev/superdoc/issues/1616)) ([4b5fa87](https://github.com/superdoc-dev/superdoc/commit/4b5fa871549a0a1ae721df82f430a1434fd6140f))
* add destroyed to flag to abort init [stable] ([#1617](https://github.com/superdoc-dev/superdoc/issues/1617)) ([337b452](https://github.com/superdoc-dev/superdoc/commit/337b4520d0e6e68da50855e6e5dd6f476df2ebd0))
* add dispatch method type and mark view as optional for headless mode ([#1728](https://github.com/superdoc-dev/superdoc/issues/1728)) ([45195d7](https://github.com/superdoc-dev/superdoc/commit/45195d78b4eb5b7b879ce4837393ce83f03ba595))
* add double click event for annotation ([#1803](https://github.com/superdoc-dev/superdoc/issues/1803)) ([509c882](https://github.com/superdoc-dev/superdoc/commit/509c8821d4222130c68d99ef65f22aaf4796159b))
* add error notice if invalid docx is opened, fallback to blank ([0af7a7d](https://github.com/superdoc-dev/superdoc/commit/0af7a7df20a0163798b9f5489781375aa63192c5))
* add in safety check for dispatch ([3550f80](https://github.com/superdoc-dev/superdoc/commit/3550f8033776bab508d6c83d81d8c28d85c128ac))
* add missing DrawingML namespaces ([#1719](https://github.com/superdoc-dev/superdoc/issues/1719)) ([9bfd977](https://github.com/superdoc-dev/superdoc/commit/9bfd977837fa2c6137eed3149794292580ddb2ac))
* add missing id generation call to image validator, fix tests for image validator ([c337647](https://github.com/superdoc-dev/superdoc/commit/c337647525cf3b98e7e313e42cdbc59d84b40da8))
* add pm exports ([#1146](https://github.com/superdoc-dev/superdoc/issues/1146)) ([0bf371a](https://github.com/superdoc-dev/superdoc/commit/0bf371a0936c416cfed9309a61ec77f841afd207))
* add processing for line-height defined in px ([#880](https://github.com/superdoc-dev/superdoc/issues/880)) ([3b61275](https://github.com/superdoc-dev/superdoc/commit/3b61275eccce054cf88fdb9251780018d9e09575))
* add relationship and rId ([#776](https://github.com/superdoc-dev/superdoc/issues/776)) ([46beadb](https://github.com/superdoc-dev/superdoc/commit/46beadb7a2a89f07ad71709340a2f017ba2e104f))
* add safety check for clipboard usage ([#859](https://github.com/superdoc-dev/superdoc/issues/859)) ([bfca96e](https://github.com/superdoc-dev/superdoc/commit/bfca96ea30f60d68229a6648152fb1d49c8de277))
* add support for vrect nodes ([#758](https://github.com/superdoc-dev/superdoc/issues/758)) ([acabf81](https://github.com/superdoc-dev/superdoc/commit/acabf81489d42dc48ec5a32051a65ac04e7075bc))
* add tooltip to table actions ([#1093](https://github.com/superdoc-dev/superdoc/issues/1093)) ([983f0de](https://github.com/superdoc-dev/superdoc/commit/983f0de9fa7e1bf7e885eb30b26f74fc4d63e546))
* add type declaration for Editor.loadXmlData and Editor.open ([#1727](https://github.com/superdoc-dev/superdoc/issues/1727)) ([ae452a9](https://github.com/superdoc-dev/superdoc/commit/ae452a98409e6c34c9d08b1ba12e2c21e0f9f0ab))
* add type definitions for PresentationEditor ([#2271](https://github.com/superdoc-dev/superdoc/issues/2271)) ([5402196](https://github.com/superdoc-dev/superdoc/commit/5402196e73997b83ddd1d4f270c82e3a85c3365f))
* add typesVersions for TypeScript subpath exports ([#1851](https://github.com/superdoc-dev/superdoc/issues/1851)) ([923ab29](https://github.com/superdoc-dev/superdoc/commit/923ab293329f94a04df43cc337bab4e29149e518))
* adding table to sdt ([#1709](https://github.com/superdoc-dev/superdoc/issues/1709)) ([260b987](https://github.com/superdoc-dev/superdoc/commit/260b987e1a20ff3405f41b16d02ef936db023578))
* additional comments fixes ([#1248](https://github.com/superdoc-dev/superdoc/issues/1248)) ([d8d6e52](https://github.com/superdoc-dev/superdoc/commit/d8d6e526faa0bd7cd1b7970d3fac5fc8d25f74af))
* additional comments fixes ([#1248](https://github.com/superdoc-dev/superdoc/issues/1248)) ([#1249](https://github.com/superdoc-dev/superdoc/issues/1249)) ([911f17c](https://github.com/superdoc-dev/superdoc/commit/911f17cdf1df8496b3b93c52398f453aa873e260))
* additional fixes for view mode ([#1676](https://github.com/superdoc-dev/superdoc/issues/1676)) ([fc2b7d6](https://github.com/superdoc-dev/superdoc/commit/fc2b7d6436229b88453ddf7589fdfca333957c74))
* additional fixes to list indent/outdent, split list, toggle list, types and more tests ([02e6cd9](https://github.com/superdoc-dev/superdoc/commit/02e6cd971b672adc7a27ee6f4c3e491ea6582927))
* adjust pagination spacer height range in tests ([029c838](https://github.com/superdoc-dev/superdoc/commit/029c838c3bc8ff40d94d02ec5652fa46acc31c4b))
* adjusted row height not preserved when table doesn't fit current page ([#1642](https://github.com/superdoc-dev/superdoc/issues/1642)) ([edcab55](https://github.com/superdoc-dev/superdoc/commit/edcab5507ee92d56ab25079b7345928c8dd7839a))
* **ai-actions:** preserve html/markdown insertion and prevent repeated formatted replacement ([#2117](https://github.com/superdoc-dev/superdoc/issues/2117)) ([9f685e9](https://github.com/superdoc-dev/superdoc/commit/9f685e964b5156d0d177e2fa0a72a4129d2a0443))
* **ai:** support headless mode in EditorAdapter.applyPatch ([#1859](https://github.com/superdoc-dev/superdoc/issues/1859)) ([cf9275d](https://github.com/superdoc-dev/superdoc/commit/cf9275d3bffd144491701508103af4c7b8f1708e))
* **ai:** use semver range for superdoc peer dependency ([#1684](https://github.com/superdoc-dev/superdoc/issues/1684)) ([f9f9e20](https://github.com/superdoc-dev/superdoc/commit/f9f9e20ed0c340b3bf009aa3598f98640a4971eb))
* allow .5 font sizes ([#1060](https://github.com/superdoc-dev/superdoc/issues/1060)) ([4747145](https://github.com/superdoc-dev/superdoc/commit/47471457a54193f6eea02e5bce20ebd03e5108b0))
* allow both leading and trailing spaces ([#1100](https://github.com/superdoc-dev/superdoc/issues/1100)) ([b74bbd5](https://github.com/superdoc-dev/superdoc/commit/b74bbd517024388ed0779f023f7a296cc2774551))
* allow both leading and trailing spaces ([#1100](https://github.com/superdoc-dev/superdoc/issues/1100)) ([#1103](https://github.com/superdoc-dev/superdoc/issues/1103)) ([315d3e2](https://github.com/superdoc-dev/superdoc/commit/315d3e2b177619af25d7b68619fdd8908a9e8afc))
* allow override row borders ([#1672](https://github.com/superdoc-dev/superdoc/issues/1672)) ([a4bb109](https://github.com/superdoc-dev/superdoc/commit/a4bb109fde65f02442c4ee5e1930fe90877bc107))
* allow paste from context menu ([#1910](https://github.com/superdoc-dev/superdoc/issues/1910)) ([b6666bf](https://github.com/superdoc-dev/superdoc/commit/b6666bf94a3bc6a4f8a71a49e95136e2e5e9e2ae))
* allow programmatic tracked change skipping undo history ([#1202](https://github.com/superdoc-dev/superdoc/issues/1202)) ([826b620](https://github.com/superdoc-dev/superdoc/commit/826b6202ee242e004f9302f58ff6f5c06cfe7cd6))
* allow regex search across docx run wrappers ([#1021](https://github.com/superdoc-dev/superdoc/issues/1021)) ([053fedc](https://github.com/superdoc-dev/superdoc/commit/053fedcf2f6b611ea5b4bb431fcb306c299d73a0))
* allow toolbar when typing font size ([0cac27c](https://github.com/superdoc-dev/superdoc/commit/0cac27cc5b30d6e05a862dd4f35fed6fb2a9e15b))
* allow top/bottom images to float right and left ([#1203](https://github.com/superdoc-dev/superdoc/issues/1203)) ([d3f1e47](https://github.com/superdoc-dev/superdoc/commit/d3f1e4742af0982d616382b155056119029a84c3))
* always call resolveComment after custom TC bubble handlers (SD-2049) ([#2204](https://github.com/superdoc-dev/superdoc/issues/2204)) ([34fb4e0](https://github.com/superdoc-dev/superdoc/commit/34fb4e07e32c76d6c53580c9046db19e5024bb08))
* anchor images in table cells ([#1742](https://github.com/superdoc-dev/superdoc/issues/1742)) ([f77e7bd](https://github.com/superdoc-dev/superdoc/commit/f77e7bd538fc013d7de0bfc66c1c4880761c61b7))
* anchor table overlaps text ([#1995](https://github.com/superdoc-dev/superdoc/issues/1995)) ([fc05e29](https://github.com/superdoc-dev/superdoc/commit/fc05e295efef9e02db9d7cccafc771d3d00da3e6))
* **anchor-nav:** use correct scroll container for sub-page bookmark navigation ([a300536](https://github.com/superdoc-dev/superdoc/commit/a300536111890565c6b53b0842551a5c2f4c191a)), closes [#scrollContainer](https://github.com/superdoc-dev/superdoc/issues/scrollContainer)
* annotation and interaction issues ([#1847](https://github.com/superdoc-dev/superdoc/issues/1847)) ([ffb1055](https://github.com/superdoc-dev/superdoc/commit/ffb1055dcf21916a23b221655a9eff8828d49fa0))
* annotation drop ([#1789](https://github.com/superdoc-dev/superdoc/issues/1789)) ([f384213](https://github.com/superdoc-dev/superdoc/commit/f3842134ab2648fc46752688350dbebb88f58f5a))
* annotation events in layout engine ([#1685](https://github.com/superdoc-dev/superdoc/issues/1685)) ([db24ff8](https://github.com/superdoc-dev/superdoc/commit/db24ff80afb9c048899060e3121e6b4d3e2edfac))
* annotation formatting ([0ac67b2](https://github.com/superdoc-dev/superdoc/commit/0ac67b20e6dca1aebe077eaf5e7e116ad61b2135))
* annotation issues ([#1752](https://github.com/superdoc-dev/superdoc/issues/1752)) ([9b13ce0](https://github.com/superdoc-dev/superdoc/commit/9b13ce0141f9f526bdaa6cfc5ea18616290b0688))
* annotation selection ([#1762](https://github.com/superdoc-dev/superdoc/issues/1762)) ([1c831cc](https://github.com/superdoc-dev/superdoc/commit/1c831cca106584d094f9d07c00f22fd51374ef1e))
* annotation selection, applying formatting ([#1784](https://github.com/superdoc-dev/superdoc/issues/1784)) ([924af4b](https://github.com/superdoc-dev/superdoc/commit/924af4be941717c202821ba10d9372dbe78a1954))
* annotations import ([#755](https://github.com/superdoc-dev/superdoc/issues/755)) ([b6135ac](https://github.com/superdoc-dev/superdoc/commit/b6135ac08fbbcc29d5e3f33519620ac7789450cf))
* apply correct style to inserted links ([#1871](https://github.com/superdoc-dev/superdoc/issues/1871)) ([36e3c4b](https://github.com/superdoc-dev/superdoc/commit/36e3c4b066a02fbcac4e53cc3df2c3cefaf207fb))
* arrow key navigation through and out of tables (SD-2236) ([#2476](https://github.com/superdoc-dev/superdoc/issues/2476)) ([d5317ef](https://github.com/superdoc-dev/superdoc/commit/d5317efaf3e75cb5af60078fbdb154564f45457e))
* auto color in tables with dark cells ([#1644](https://github.com/superdoc-dev/superdoc/issues/1644)) ([f498a03](https://github.com/superdoc-dev/superdoc/commit/f498a03dff563e7e24aaed78cbbb3b93bedf23a8))
* backspaceNextToList, toggleList and tests ([8b33258](https://github.com/superdoc-dev/superdoc/commit/8b33258aa9a09cd566191083de2095377f532de5))
* backward replace insert text ([#2172](https://github.com/superdoc-dev/superdoc/issues/2172)) ([66f0849](https://github.com/superdoc-dev/superdoc/commit/66f08497dd5642db2be6b8729c9bbc84a862ae20))
* before paragraph spacing inside table cells ([#1842](https://github.com/superdoc-dev/superdoc/issues/1842)) ([c7efa85](https://github.com/superdoc-dev/superdoc/commit/c7efa857abdfa6a0f129f73e3c5654b573c1028c))
* behavior tests ([#2436](https://github.com/superdoc-dev/superdoc/issues/2436)) ([2d087f2](https://github.com/superdoc-dev/superdoc/commit/2d087f2e0df6bac519f5868b0f45d8a84911ee1b))
* block ID collisions and missing positions in paragraph converter ([3e75a98](https://github.com/superdoc-dev/superdoc/commit/3e75a9827fdb8b1847632e6a5b7f8f5dcabcabd1))
* block keyboard, paste, and drop events in view mode during collab ([#1471](https://github.com/superdoc-dev/superdoc/issues/1471)) ([48b2555](https://github.com/superdoc-dev/superdoc/commit/48b2555552ca124d23444d1569b47c43746050da))
* bookmarks inside table cells break import ([#1133](https://github.com/superdoc-dev/superdoc/issues/1133)) ([a090084](https://github.com/superdoc-dev/superdoc/commit/a090084d4eac56f49c82684bca64fcf10fb2ee8d))
* bookmarkStart custom round trip, tests, add example doc with round trip tests ([#1014](https://github.com/superdoc-dev/superdoc/issues/1014)) ([0849157](https://github.com/superdoc-dev/superdoc/commit/0849157933eda9bf4c0917620e28cac8a9f34cab))
* breaking structured document node import ([a470070](https://github.com/superdoc-dev/superdoc/commit/a47007029ce0ff44008b67f1bcac6d489273793a))
* bug - page number format from first section overrides number ([#1654](https://github.com/superdoc-dev/superdoc/issues/1654)) ([c45ecfa](https://github.com/superdoc-dev/superdoc/commit/c45ecfae71be17953e88662e8e646dab173b4c61))
* bug text edit commands fail on targets returned by find ([#2488](https://github.com/superdoc-dev/superdoc/issues/2488)) ([7a9a448](https://github.com/superdoc-dev/superdoc/commit/7a9a448954e8cf36a4773e834df57a8bf02289fa))
* bug watermarks render darker than they should [SD-1469] ([#1737](https://github.com/superdoc-dev/superdoc/issues/1737)) ([7ce423d](https://github.com/superdoc-dev/superdoc/commit/7ce423d445366c0e400b4143bec3cdd9d8b28e88))
* **build:** add node polyfills to UMD bundle and angular to CI matrix ([13fa579](https://github.com/superdoc-dev/superdoc/commit/13fa579c5e10a5da26c7308887e82123d914659c))
* **build:** remove dead vite-plugin-node-polyfills from UMD externals ([91de1fc](https://github.com/superdoc-dev/superdoc/commit/91de1fc2e47b0061d088db5d46b0da4cc07dc837))
* can't add deletion track change when selected content has link/another track change ([#1591](https://github.com/superdoc-dev/superdoc/issues/1591)) ([63121e8](https://github.com/superdoc-dev/superdoc/commit/63121e8dd810b8a05f3e6b8688ef5a1769849225))
* capitalize InputRule in broken import ([73e16cb](https://github.com/superdoc-dev/superdoc/commit/73e16cb209006dddd0e7bd4546529f55bd3b908a))
* caret in lists ([#1683](https://github.com/superdoc-dev/superdoc/issues/1683)) ([c7b9847](https://github.com/superdoc-dev/superdoc/commit/c7b984783eee79698d74617e26c5f6eeb76d4a6d))
* change default link protocol ([#2319](https://github.com/superdoc-dev/superdoc/issues/2319)) ([1deda06](https://github.com/superdoc-dev/superdoc/commit/1deda06897787ae7f14641a5580fa5e1c5881217))
* changed hard break file ([ebc27da](https://github.com/superdoc-dev/superdoc/commit/ebc27da52a749ac065bf1a085899c5ab12a360b7))
* **ci:** include sub-package commits in superdoc release filter ([a2c237b](https://github.com/superdoc-dev/superdoc/commit/a2c237bb631130de5ae345209ca109f1ff645519))
* **ci:** move superdoc releaserc to package dir for proper commit filtering ([688f8e0](https://github.com/superdoc-dev/superdoc/commit/688f8e09df258d7279e7364c03d08e217c742c3d))
* clean up lint warnings and remove unused code ([#754](https://github.com/superdoc-dev/superdoc/issues/754)) ([df73156](https://github.com/superdoc-dev/superdoc/commit/df7315657dc56b6dfc59d18029c010b39d4deb30))
* clear linked style for the next paragraph ([#2344](https://github.com/superdoc-dev/superdoc/issues/2344)) ([9714ffb](https://github.com/superdoc-dev/superdoc/commit/9714ffbaa6a8a589fc257756cb7fd2eb2de81515))
* clear selection on undo/redo ([#2385](https://github.com/superdoc-dev/superdoc/issues/2385)) ([6473acf](https://github.com/superdoc-dev/superdoc/commit/6473acf4e846c481975554024d514a5b9480e97f))
* cli package public ([7dad84d](https://github.com/superdoc-dev/superdoc/commit/7dad84da35c78f45072907dfde94ec782b362a8f))
* cli skills install ([ed7436a](https://github.com/superdoc-dev/superdoc/commit/ed7436ab550b11d9eb1b205bce31dfa358243d29))
* **cli:** add jsdoc params to formatReplaceResult ([#1923](https://github.com/superdoc-dev/superdoc/issues/1923)) ([e52ddf9](https://github.com/superdoc-dev/superdoc/commit/e52ddf9bf010947d9435b788ab7753d136a801f1))
* **cli:** add param jsdoc to expandGlobs ([df8c3c6](https://github.com/superdoc-dev/superdoc/commit/df8c3c625be5901f4551d99318a43f47e3dfb7fb))
* **cli:** add returns jsdoc to formatSearchResult ([d0a0438](https://github.com/superdoc-dev/superdoc/commit/d0a04389b05d1f79d1c5111ed82e4feaf5b1af20))
* **cli:** document -h flag in help text ([020c4a0](https://github.com/superdoc-dev/superdoc/commit/020c4a0d58e079e1912c0773c095806bbc51eafa))
* **cli:** document -h flag in help text ([68fa42f](https://github.com/superdoc-dev/superdoc/commit/68fa42fabbbc44b41d644b9010a12fa2573e7e8c))
* **cli:** include allowed values in oneOf const validation errors ([#2455](https://github.com/superdoc-dev/superdoc/issues/2455)) ([8802f90](https://github.com/superdoc-dev/superdoc/commit/8802f90798c5c2c632b6eb6b418fc46b63e52093))
* **cli:** lowercase docx in help text ([#1928](https://github.com/superdoc-dev/superdoc/issues/1928)) ([13f9db6](https://github.com/superdoc-dev/superdoc/commit/13f9db6897a070525fe2ea4ccaf98c3be245faeb))
* **cli:** move bundled deps to devDependencies ([6a362ed](https://github.com/superdoc-dev/superdoc/commit/6a362ed87baad3d08cec2298980290ea2183c1ac))
* **cli:** normalize dash in help text ([b2e7d36](https://github.com/superdoc-dev/superdoc/commit/b2e7d36631db90863ce6ba263daff55d32220b99))
* **cli:** prevent collab reopen from overwriting existing ydoc with blank document (SD-2138) ([#2296](https://github.com/superdoc-dev/superdoc/issues/2296)) ([41b0345](https://github.com/superdoc-dev/superdoc/commit/41b0345367e32d0f053825c9f8733f1351f52760))
* **cli:** remove bundled deps from package.json ([f90d4af](https://github.com/superdoc-dev/superdoc/commit/f90d4af095a8e4cf5fca34774855a28559dec5de))
* **cli:** restore tracked diff redline roundtrip ([#2438](https://github.com/superdoc-dev/superdoc/issues/2438)) ([f609371](https://github.com/superdoc-dev/superdoc/commit/f60937167d02270646ea73f2a8474cb21e514094))
* close toolbar overflow menu on click outside ([#2377](https://github.com/superdoc-dev/superdoc/issues/2377)) ([ba74245](https://github.com/superdoc-dev/superdoc/commit/ba7424521cd003e1a6001902fc524d34e3005b3f))
* closing dropdown after clicking again ([#835](https://github.com/superdoc-dev/superdoc/issues/835)) ([88ff88d](https://github.com/superdoc-dev/superdoc/commit/88ff88d06568716d78be4fcdc311cbba0e6ba3fd))
* collaboratio tests and more scenarios ([4153017](https://github.com/superdoc-dev/superdoc/commit/4153017da205a32c853da3cbafad57fda881cc94))
* collaboration cursor styles fix ([fd6db10](https://github.com/superdoc-dev/superdoc/commit/fd6db10558caa4136da262ad10b751dbb4bdac2c))
* **collaboration:** add debouncing to header/footer Y.Doc updates ([#1861](https://github.com/superdoc-dev/superdoc/issues/1861)) ([90d0f65](https://github.com/superdoc-dev/superdoc/commit/90d0f6549e9c207e127da72466a41c63035c7c85))
* **collaboration:** deduplicate updateYdocDocxData during replaceFile (SD-1920) ([#2162](https://github.com/superdoc-dev/superdoc/issues/2162)) ([52962fc](https://github.com/superdoc-dev/superdoc/commit/52962fc139734130a6882c9fcbd1856ff72d1c3d))
* **collaboration:** memory leaks, Vue stack overflow, and Liveblocks stability (SD-1924) ([#2030](https://github.com/superdoc-dev/superdoc/issues/2030)) ([a6827fd](https://github.com/superdoc-dev/superdoc/commit/a6827fdda860171124aae4838d354dd68d52d017)), closes [#prepareDocumentForExport](https://github.com/superdoc-dev/superdoc/issues/prepareDocumentForExport)
* **collaboration:** preserve body section properties across Yjs sync ([#2356](https://github.com/superdoc-dev/superdoc/issues/2356)) ([ea702d6](https://github.com/superdoc-dev/superdoc/commit/ea702d6dd7d8c96f6d0dac83e34f24924d1f9fa7))
* **collab:** prevent stale view when remote Y.js changes bypass sdBlockRev increment ([#2099](https://github.com/superdoc-dev/superdoc/issues/2099)) ([0895a93](https://github.com/superdoc-dev/superdoc/commit/0895a93bb9e718f4f533a55e8f4022ed0ebc97bc))
* comment text after enter break is dropped on render and export ([#1853](https://github.com/superdoc-dev/superdoc/issues/1853)) ([ce7f553](https://github.com/superdoc-dev/superdoc/commit/ce7f5534afaa8e46cb4d4e41fb6478575dea26e3))
* comments focus ([cbd3d3e](https://github.com/superdoc-dev/superdoc/commit/cbd3d3ee35a4b6758702b3893e95c5a77dd404ca))
* comments module typedef for disable [stable] ([#1494](https://github.com/superdoc-dev/superdoc/issues/1494)) ([bdac63c](https://github.com/superdoc-dev/superdoc/commit/bdac63c05f8f8ae122023d4eee70450ac12695a5))
* comments not exporting ([e3647a7](https://github.com/superdoc-dev/superdoc/commit/e3647a7e3d6a8db7e00f10616b01304e9ca77a39))
* comments not exporting ([#1246](https://github.com/superdoc-dev/superdoc/issues/1246)) ([d967d5e](https://github.com/superdoc-dev/superdoc/commit/d967d5eb88833f1c77f3be667cf831ce0191b067))
* comments not repositioning after you add comment to existing dialog ([ffa51ae](https://github.com/superdoc-dev/superdoc/commit/ffa51ae37913c6674431b94f56081b9d7adb36f2))
* **comments:** create dynamic comment export system based on document origin type ([#1733](https://github.com/superdoc-dev/superdoc/issues/1733)) ([b55fddf](https://github.com/superdoc-dev/superdoc/commit/b55fddf429549f462e1b61747c89e2ab85ad4d45)), closes [#1618](https://github.com/superdoc-dev/superdoc/issues/1618)
* **comments:** cross-page collision avoidance for floating comment bubbles (SD-1998) ([#2180](https://github.com/superdoc-dev/superdoc/issues/2180)) ([6cfbeca](https://github.com/superdoc-dev/superdoc/commit/6cfbecae5e8579556a377b7a35168cbb7cfce31f))
* **comments:** emit empty comment positions so undo clears orphan bubbles ([#2235](https://github.com/superdoc-dev/superdoc/issues/2235)) ([12ba727](https://github.com/superdoc-dev/superdoc/commit/12ba72709fc37f207c97305852f40ef4e393893b))
* **comments:** improve comments on tracked changes imported from google docs and word [SD-1033] ([#1631](https://github.com/superdoc-dev/superdoc/issues/1631)) ([1d8873a](https://github.com/superdoc-dev/superdoc/commit/1d8873ae372a65d16c5f46c4dee9980e8159c6e2))
* **comments:** improve multiline comment input styling ([#2242](https://github.com/superdoc-dev/superdoc/issues/2242)) ([e6a0dab](https://github.com/superdoc-dev/superdoc/commit/e6a0dab8abca8a24c5e0c8a9096c357df28eaf8a))
* **comments:** keep floating comment bubbles aligned with the selected thread (SD-2210 and SD-2223) ([#2390](https://github.com/superdoc-dev/superdoc/issues/2390)) ([b014618](https://github.com/superdoc-dev/superdoc/commit/b014618d70ffd92d587033212cd965fe49dfe730))
* **comments:** pass superdoc instance when canceling pending comment ([#1862](https://github.com/superdoc-dev/superdoc/issues/1862)) ([4982bac](https://github.com/superdoc-dev/superdoc/commit/4982bac97c5f7e141d7029b9ba7b832ee509e165))
* **comments:** preserve resolved comment status and range on export ([#1674](https://github.com/superdoc-dev/superdoc/issues/1674)) ([390e40a](https://github.com/superdoc-dev/superdoc/commit/390e40afc2358e7ad4f1f90e9c6ea3044f94ec73))
* **comments:** prevent comment mark from extending to adjacent typed text ([#2241](https://github.com/superdoc-dev/superdoc/issues/2241)) ([07fecd8](https://github.com/superdoc-dev/superdoc/commit/07fecd8f0f6c88f338b59fca6105467cf66cc7ab))
* **comments:** reduce sidebar jitter when clicking comments (SD-2034) ([#2250](https://github.com/superdoc-dev/superdoc/issues/2250)) ([c3568d2](https://github.com/superdoc-dev/superdoc/commit/c3568d2d6fc4d91125cede042084ed124a9b2072))
* **comments:** remove synchronous dispatch from plugin apply() (SD-1940) ([#2157](https://github.com/superdoc-dev/superdoc/issues/2157)) ([887175b](https://github.com/superdoc-dev/superdoc/commit/887175bf29b3dc86cf56865311d488b377b36aaf))
* **comments:** resolve double-click activation and edit mode issues (SD-2035) ([#2259](https://github.com/superdoc-dev/superdoc/issues/2259)) ([d9465aa](https://github.com/superdoc-dev/superdoc/commit/d9465aad87bc3fcd2c263faf06e6ecc94cd68ea0))
* **comments:** use last paragraph paraId for threading ([#1671](https://github.com/superdoc-dev/superdoc/issues/1671)) ([50ffea6](https://github.com/superdoc-dev/superdoc/commit/50ffea69cfe167f895b65d0b36f0d9d41e15e6f7))
* consider code feedback ([a5c1147](https://github.com/superdoc-dev/superdoc/commit/a5c11472681c46ebe9726773acb8d4d90c5a9b6b))
* consider code review comments ([4360b4d](https://github.com/superdoc-dev/superdoc/commit/4360b4da2e340ea0088afc208de85d493bf4a0fd))
* console log ([4b64109](https://github.com/superdoc-dev/superdoc/commit/4b64109b92623cfb7582774c45f96cac47a8280f))
* consolidate deletions under new replacement ([#2094](https://github.com/superdoc-dev/superdoc/issues/2094)) ([0a84b86](https://github.com/superdoc-dev/superdoc/commit/0a84b8604c9a30ed2755cfd0ecc7694e1999c6eb))
* content not editable on safari ([#1304](https://github.com/superdoc-dev/superdoc/issues/1304)) ([9972b1f](https://github.com/superdoc-dev/superdoc/commit/9972b1f9da7a4a7d090488aab159a85fb1c81a96))
* content-block node ext wrong schema and rendering rules ([#965](https://github.com/superdoc-dev/superdoc/issues/965)) ([64fa2fc](https://github.com/superdoc-dev/superdoc/commit/64fa2fc2a1a52d2700c0e820b6384b87e8d3bf35))
* content-block node ext wrong schema and rendering rules ([#965](https://github.com/superdoc-dev/superdoc/issues/965)) ([#966](https://github.com/superdoc-dev/superdoc/issues/966)) ([f037f44](https://github.com/superdoc-dev/superdoc/commit/f037f44eddfa3fd31cd36f4f8b4dbfb6300437ee))
* context menu bypass standards ([#1029](https://github.com/superdoc-dev/superdoc/issues/1029)) ([99e6bf7](https://github.com/superdoc-dev/superdoc/commit/99e6bf70244116f5be464737dc03d7e1b2dc4f83))
* context menu bypass standards ([#1032](https://github.com/superdoc-dev/superdoc/issues/1032)) ([8c80c2c](https://github.com/superdoc-dev/superdoc/commit/8c80c2cc92a531e2296de9d7d03c8a85ea415da6))
* context menu clicks would change selection position ([#1889](https://github.com/superdoc-dev/superdoc/issues/1889)) ([ace0daf](https://github.com/superdoc-dev/superdoc/commit/ace0dafcf58535ec0ba6ff48efcd7ee113b021ce))
* **context-menu:** paste via context menu inserts at wrong position (SD-1302) ([#2110](https://github.com/superdoc-dev/superdoc/issues/2110)) ([30f03f9](https://github.com/superdoc-dev/superdoc/commit/30f03f93b59261a7fce55e7d62cc83897b457afd))
* contextual spacing in layout engine ([#1587](https://github.com/superdoc-dev/superdoc/issues/1587)) ([52188ca](https://github.com/superdoc-dev/superdoc/commit/52188ca89d879f7081ff8c6bb8e8d1cb8ea28ef8))
* convert var to zero when undefined ([ccf3478](https://github.com/superdoc-dev/superdoc/commit/ccf34784007e7faea0c2e64d25a466d4648637e3))
* **converter:** handle absolute paths in header/footer relationship targets ([#1945](https://github.com/superdoc-dev/superdoc/issues/1945)) ([9d82632](https://github.com/superdoc-dev/superdoc/commit/9d82632c62a70cc6cb19015f9fca89b3f28a4323))
* **converter:** handle empty rPrChange run properties without dropping tracked-style runs ([c25d24d](https://github.com/superdoc-dev/superdoc/commit/c25d24d35534c39836c3251ee9baf1b908a6c78c))
* **converter:** handle null list lvlText and always clear numbering cache ([#2113](https://github.com/superdoc-dev/superdoc/issues/2113)) ([336958c](https://github.com/superdoc-dev/superdoc/commit/336958ca9b39ebcc436fc77fb1daae82ddbd8b0c))
* correct cursor position when typing after fully track-deleted content ([#1828](https://github.com/superdoc-dev/superdoc/issues/1828)) ([8de1c5f](https://github.com/superdoc-dev/superdoc/commit/8de1c5f142fae6b2362d3640b698fe6277ab45d7))
* correct indentation for table cells with explicit tab positioning ([#1743](https://github.com/superdoc-dev/superdoc/issues/1743)) ([1fd6b74](https://github.com/superdoc-dev/superdoc/commit/1fd6b74a95c0eae8b1b23c27e7046ae529c95fc3))
* correct typeof comparison in list migration ([6a75ef7](https://github.com/superdoc-dev/superdoc/commit/6a75ef79dc4aaced07fcdd0537b53fed99cb35e7))
* correct typo in exporter debug parameter ([eb7c45d](https://github.com/superdoc-dev/superdoc/commit/eb7c45d5ac9b3d666c130598848398949c225c34)), closes [#generate_xml_as_list](https://github.com/superdoc-dev/superdoc/issues/generate_xml_as_list)
* correctly pass table info when deriving inline run properties (SD-1865) ([#2007](https://github.com/superdoc-dev/superdoc/issues/2007)) ([d752aff](https://github.com/superdoc-dev/superdoc/commit/d752afff9dc11041798ea2a28d487cc190e13383))
* correctly position vector shape relative to paragraph ([#1687](https://github.com/superdoc-dev/superdoc/issues/1687)) ([4c38cb9](https://github.com/superdoc-dev/superdoc/commit/4c38cb9145c2256f2ff289338fb5cf58ecf3a4c7))
* correctly set color and highlight of pasted text ([#2033](https://github.com/superdoc-dev/superdoc/issues/2033)) ([41058b5](https://github.com/superdoc-dev/superdoc/commit/41058b5bfadbc34d83891afe88c6b8c24505f83c))
* create document section node selection ([dfd2e81](https://github.com/superdoc-dev/superdoc/commit/dfd2e81beaacd676099e43a5a65d42d55a89b462))
* create document section node selection ([60b7b26](https://github.com/superdoc-dev/superdoc/commit/60b7b26dd7c1f31b4824ddd4339c6d54db32484c))
* createNewList in input rule to fix new list in tables, lint ([aa79655](https://github.com/superdoc-dev/superdoc/commit/aa796558d84a9dda9177181d547281e668500b6e))
* creating list definitions with null ids ([#804](https://github.com/superdoc-dev/superdoc/issues/804)) ([e6511b9](https://github.com/superdoc-dev/superdoc/commit/e6511b973026f28a26ff1d25a71df2df69d99488))
* css style isolation after shape groups ([c428122](https://github.com/superdoc-dev/superdoc/commit/c428122218187c70ad54e9e8a870898993b40354))
* **css:** scope ProseMirror CSS to prevent bleeding into host apps (SD-1850) ([#2134](https://github.com/superdoc-dev/superdoc/issues/2134)) ([b9d98fa](https://github.com/superdoc-dev/superdoc/commit/b9d98fa926532f63c71c55ed8bb5b89019ee4246))
* cursor delay when dragging over a document ([#1802](https://github.com/superdoc-dev/superdoc/issues/1802)) ([58691f1](https://github.com/superdoc-dev/superdoc/commit/58691f1f1573fb18ad724a78db454d33d3c3e99f))
* cursor drift during vertical arrow navigation (SD-1689) ([#1918](https://github.com/superdoc-dev/superdoc/issues/1918)) ([982118d](https://github.com/superdoc-dev/superdoc/commit/982118df475b3178351713f0c00f6fe447853c61))
* declare w15 namespace when bootstrapping numbering.xml ([#2470](https://github.com/superdoc-dev/superdoc/issues/2470)) ([a14004d](https://github.com/superdoc-dev/superdoc/commit/a14004def510008cd70994ce6e82916986a673f7))
* default field export background transparent, allow config on export ([#770](https://github.com/superdoc-dev/superdoc/issues/770)) ([1ab87d1](https://github.com/superdoc-dev/superdoc/commit/1ab87d1daa3c878dd1ca4461a003e826d5760b6b))
* definition possibly missing name key, add jsdoc ([bb714f1](https://github.com/superdoc-dev/superdoc/commit/bb714f14635239301ed6931bb06259b299b11fa8))
* delete decoration widget blocks parent list item ([#1200](https://github.com/superdoc-dev/superdoc/issues/1200)) ([4b58fd6](https://github.com/superdoc-dev/superdoc/commit/4b58fd62471dbef99a36972963fb3403b621b118))
* deleting tracked change in suggestion to match word ([#1710](https://github.com/superdoc-dev/superdoc/issues/1710)) ([d6e780f](https://github.com/superdoc-dev/superdoc/commit/d6e780f8fc753cb6cd94d4317f482c997b9bc9a5))
* **diffing:** ignore volatile OOXML attrs in image and paragraph diff comparison ([#2421](https://github.com/superdoc-dev/superdoc/issues/2421)) ([ca91225](https://github.com/superdoc-dev/superdoc/commit/ca912256f5f66a2504372b8ebced154f8bbcb695))
* disable footnotes typing ([#1974](https://github.com/superdoc-dev/superdoc/issues/1974)) ([92b4d62](https://github.com/superdoc-dev/superdoc/commit/92b4d6288a48275435660ae2a848b064506390f6))
* disable setDocumentMode for header/footer editors ([#1149](https://github.com/superdoc-dev/superdoc/issues/1149)) ([ab75952](https://github.com/superdoc-dev/superdoc/commit/ab75952e9a90b3c28484054517fb91f0935b2b56))
* disable table resizing UI in viewing mode ([#2403](https://github.com/superdoc-dev/superdoc/issues/2403)) ([697e799](https://github.com/superdoc-dev/superdoc/commit/697e799a472527c84414327189025f65d9f3d30b))
* dispatch tracked changes transaction only once at import ([31ecec7](https://github.com/superdoc-dev/superdoc/commit/31ecec70ba08d9668f45e9a33b724d7e60cc4b66))
* do not open context menu in view only mode ([3a0ae6a](https://github.com/superdoc-dev/superdoc/commit/3a0ae6a51a95489de816fe1e3b59b5893272ece7))
* do not reposition floating comments when selected ([5edfff8](https://github.com/superdoc-dev/superdoc/commit/5edfff8a1b02f499a9f9219e1e1d1bd7b1c49b75))
* do not track the annotation deletion on table generation ([#1036](https://github.com/superdoc-dev/superdoc/issues/1036)) ([5e77dd4](https://github.com/superdoc-dev/superdoc/commit/5e77dd419ae71514b1c68f96ef4907f250c199b1))
* doc-api story regressions and export app.xml stats ([#2478](https://github.com/superdoc-dev/superdoc/issues/2478)) ([d06ff4e](https://github.com/superdoc-dev/superdoc/commit/d06ff4e953538be2e54f9a8d54bacac0a0233cea))
* **doc-api:** gate textStyle attrs and sync reference coverage ([#2430](https://github.com/superdoc-dev/superdoc/issues/2430)) ([e2d6ca6](https://github.com/superdoc-dev/superdoc/commit/e2d6ca60a6c268e83dc74d84d9211cb7c5891574))
* **doc-api:** stabilize create composability and expand SDK surface ([fc17167](https://github.com/superdoc-dev/superdoc/commit/fc1716721b7c15b3fd1ac5724e48cc709a9fd986))
* **docs:** coherence pass on doc api, clean up dead code, update CLI SKILL.md ([#2424](https://github.com/superdoc-dev/superdoc/issues/2424)) ([bf0d4b8](https://github.com/superdoc-dev/superdoc/commit/bf0d4b8ff127d27e2604720f215f39ec9c2a23ce))
* document dropdown resets ([#1883](https://github.com/superdoc-dev/superdoc/issues/1883)) ([b552d2e](https://github.com/superdoc-dev/superdoc/commit/b552d2e272d7f8b19e1bf2400c58fec9fed30f16))
* document margins corner cases ([#1589](https://github.com/superdoc-dev/superdoc/issues/1589)) ([3dcc97c](https://github.com/superdoc-dev/superdoc/commit/3dcc97c3ced541fe647aa3926cad65e7508dd6f6))
* document-api improvements, plan mode, query.match, mutations ([6221580](https://github.com/superdoc-dev/superdoc/commit/62215805c969a80445f9e410fd5fb2478b8c38a5))
* **document-api:** add document diff API and fix tracked diff replay in CLI host session ([#2418](https://github.com/superdoc-dev/superdoc/issues/2418)) ([2a804f7](https://github.com/superdoc-dev/superdoc/commit/2a804f790fbc131578df7256eac137f3d1f320c3))
* **document-api:** add friendlier insert at node id with offset, or pos ([#2128](https://github.com/superdoc-dev/superdoc/issues/2128)) ([c1d3682](https://github.com/superdoc-dev/superdoc/commit/c1d3682e15dc7c99b1450c2f008f6f937729fc39))
* **document-api:** add mutation-ready cell addresses to tables.getCells ([#2461](https://github.com/superdoc-dev/superdoc/issues/2461)) ([99bd4e5](https://github.com/superdoc-dev/superdoc/commit/99bd4e56f5e344437688d53ac4ed010cafed0e8d))
* **document-api:** add nodeId shorthand resolution across all operations ([#2131](https://github.com/superdoc-dev/superdoc/issues/2131)) ([8abdaad](https://github.com/superdoc-dev/superdoc/commit/8abdaadd7dda2ef4751d040527adab61c06f3c48))
* **document-api:** clear styles before paragraph.setStyle ([#2449](https://github.com/superdoc-dev/superdoc/issues/2449)) ([bce4bb8](https://github.com/superdoc-dev/superdoc/commit/bce4bb85bf8be54d6c6312ea184d7ea6bfd26e4e))
* **document-api:** delete table cell fix ([#2209](https://github.com/superdoc-dev/superdoc/issues/2209)) ([5e5c43f](https://github.com/superdoc-dev/superdoc/commit/5e5c43fe1b63703308cdbd3a1dd01d121ea5465c))
* **document-api:** distribute columns command fixes ([#2207](https://github.com/superdoc-dev/superdoc/issues/2207)) ([8f4eaf7](https://github.com/superdoc-dev/superdoc/commit/8f4eaf7efde73e26c919f77a71d180c763d636ce))
* **document-api:** fix cell shading in document api ([#2215](https://github.com/superdoc-dev/superdoc/issues/2215)) ([456f60e](https://github.com/superdoc-dev/superdoc/commit/456f60e41605a2d94c5194052cf1982bed02d1c3))
* **document-api:** fix markdown to image ([bf0e664](https://github.com/superdoc-dev/superdoc/commit/bf0e6647820c3987b4100f8f9804e413cfb33511))
* **document-api:** insert table cell ([#2210](https://github.com/superdoc-dev/superdoc/issues/2210)) ([357ee90](https://github.com/superdoc-dev/superdoc/commit/357ee9018451f7a22bc1383aed7af6149da1d8e8))
* **document-api:** make find/get treat content controls as sdt ([6688b8c](https://github.com/superdoc-dev/superdoc/commit/6688b8ccfaa3bdda53ba1a96a08a7df63ab14aef))
* **document-api:** make lists.setType preserve sequence continuity ([#2304](https://github.com/superdoc-dev/superdoc/issues/2304)) ([da09826](https://github.com/superdoc-dev/superdoc/commit/da0982647cd57b4e775794af52e1a23b3d6f2afe))
* **document-api:** plan-engine reliability fixes and error diagnostics ([#2185](https://github.com/superdoc-dev/superdoc/issues/2185)) ([abfd81b](https://github.com/superdoc-dev/superdoc/commit/abfd81b753035bfaa4429748318af1eb51ac14e3))
* **document-api:** remove search match cap and validate moveComment bounds ([6d3de67](https://github.com/superdoc-dev/superdoc/commit/6d3de67ee398f5bbdd55a589e86a5c2bf321268a))
* **document-api:** rename atRowIndex to rowIndex in tables.split ([#2473](https://github.com/superdoc-dev/superdoc/issues/2473)) ([7de2864](https://github.com/superdoc-dev/superdoc/commit/7de2864466fd582d0e6b0ffcf739c2c2dba5fa76))
* **document-api:** return fresh table ref in mutation responses ([#2453](https://github.com/superdoc-dev/superdoc/issues/2453)) ([af6de73](https://github.com/superdoc-dev/superdoc/commit/af6de73f480c061d632277e34f0c9bd8681e0a5a))
* **document-api:** return NodeAddress from find and getNode instead of SDAddress (SD-2168) ([#2342](https://github.com/superdoc-dev/superdoc/issues/2342)) ([edcb3c6](https://github.com/superdoc-dev/superdoc/commit/edcb3c6a9d85666d20b30608cf8ac6793fc2830a))
* **document-api:** split table cell command ([#2217](https://github.com/superdoc-dev/superdoc/issues/2217)) ([0b3e2b4](https://github.com/superdoc-dev/superdoc/commit/0b3e2b4fcc50c1a30dec593c0aa41e69c9b809ff))
* **document-api:** split table command ([#2214](https://github.com/superdoc-dev/superdoc/issues/2214)) ([ec31699](https://github.com/superdoc-dev/superdoc/commit/ec31699d665cd4b4f4da7e2646d77ec828604568))
* don't prevent default from CMD+F when no search icon in toolbar ([ce5dc2b](https://github.com/superdoc-dev/superdoc/commit/ce5dc2b5bb4b575197becd368f3408766039c545))
* e2e tests to run headless no CI/CD ([f1479f7](https://github.com/superdoc-dev/superdoc/commit/f1479f7521b864f35e0b7d8b017b1a91bd12703e))
* editor bundling in python CLI regression ([db0d130](https://github.com/superdoc-dev/superdoc/commit/db0d130d0296bb40deed19a8d70a5ab0fbafadbb))
* editor type ([#1702](https://github.com/superdoc-dev/superdoc/issues/1702)) ([902e745](https://github.com/superdoc-dev/superdoc/commit/902e7456c3b8ac957d19c0b7d65fd3451ce48bd6))
* **editor:** arrow key navigation across page boundaries and auto-scroll (SD-1950) ([#2191](https://github.com/superdoc-dev/superdoc/issues/2191)) ([f7961d7](https://github.com/superdoc-dev/superdoc/commit/f7961d7c2d891e4a0e9c032274abcedbf3330643)), closes [#scrollCaretIntoViewIfNeeded](https://github.com/superdoc-dev/superdoc/issues/scrollCaretIntoViewIfNeeded) [this.#painterHost](https://github.com/this./issues/painterHost) [#scrollScreenRectIntoView](https://github.com/superdoc-dev/superdoc/issues/scrollScreenRectIntoView) [#scrollCaretIntoViewIfNeeded](https://github.com/superdoc-dev/superdoc/issues/scrollCaretIntoViewIfNeeded) [#scrollActiveEndIntoView](https://github.com/superdoc-dev/superdoc/issues/scrollActiveEndIntoView)
* **editor:** prevent focus loss when typing in header/footer editors (SD-1993) ([#2238](https://github.com/superdoc-dev/superdoc/issues/2238)) ([e1b8007](https://github.com/superdoc-dev/superdoc/commit/e1b80074377b221873158ce5befc8fa2a908d1a8)), closes [PresentationEditor.#flushRerenderQueue](https://github.com/PresentationEditor./issues/flushRerenderQueue)
* **editor:** prevent scroll-to-top when clicking toolbar buttons ([#2236](https://github.com/superdoc-dev/superdoc/issues/2236)) ([ab30a36](https://github.com/superdoc-dev/superdoc/commit/ab30a362e5aad17db9daa5208cbef71b5bb6dd72))
* **editor:** render styles applied inside SDT fields (SD-2011) ([#2188](https://github.com/superdoc-dev/superdoc/issues/2188)) ([9c34be3](https://github.com/superdoc-dev/superdoc/commit/9c34be39cfeb1ab77ebcd91343aaf9681a3f9b9a))
* **editor:** selection highlight flickers when dragging across mark boundaries (SD-2024) ([#2205](https://github.com/superdoc-dev/superdoc/issues/2205)) ([ba03e76](https://github.com/superdoc-dev/superdoc/commit/ba03e768fae837e4f5b8dd856ca765f76957e83c))
* effective gap ([580b52b](https://github.com/superdoc-dev/superdoc/commit/580b52b1996088cdf0bc8005ec079f909a55b840))
* emit editor exception on import/export errors ([#963](https://github.com/superdoc-dev/superdoc/issues/963)) ([700dec6](https://github.com/superdoc-dev/superdoc/commit/700dec60a36937dc7f9975c5d4bf5e3a0540133e))
* empty display label and default label ([#1621](https://github.com/superdoc-dev/superdoc/issues/1621)) ([e29e14f](https://github.com/superdoc-dev/superdoc/commit/e29e14f37c27fbad19c87c3571fa26f901d8ced4))
* empty line heights ([#1748](https://github.com/superdoc-dev/superdoc/issues/1748)) ([31ce45c](https://github.com/superdoc-dev/superdoc/commit/31ce45c9fbcc7c7e630f48a877791ea94a63c960))
* enhance AI text animation and processing ([91e2c73](https://github.com/superdoc-dev/superdoc/commit/91e2c735f1de748af974fda6ab570ba684f66311))
* ensure ruler 0 is visible ([#2487](https://github.com/superdoc-dev/superdoc/issues/2487)) ([096d9f0](https://github.com/superdoc-dev/superdoc/commit/096d9f033ccadf598a47126bc19b28a9d7990a4d))
* ensure updateListSync meta is added to run list sync plugin after list clean up ([8485e9a](https://github.com/superdoc-dev/superdoc/commit/8485e9afb134754a2c73afbfebba2db8971d0cc2))
* ensure we do not duplicate bubble text ([#1934](https://github.com/superdoc-dev/superdoc/issues/1934)) ([c41cf9e](https://github.com/superdoc-dev/superdoc/commit/c41cf9e21d763aa08546eb3445c54a078bf66d33))
* error when importing wp:anchor drawing that is an unsupported shape drawing ([dfd17ab](https://github.com/superdoc-dev/superdoc/commit/dfd17ab1673905a9c8e1812c04807ed6a8286296))
* **evals:** update evals to use updated intent based llm tools ([#2409](https://github.com/superdoc-dev/superdoc/issues/2409)) ([2d38d43](https://github.com/superdoc-dev/superdoc/commit/2d38d43f4e7ee941777a754d1a18160f97da7221))
* export docx blobs with docx mime type ([#1849](https://github.com/superdoc-dev/superdoc/issues/1849)) ([1bc466d](https://github.com/superdoc-dev/superdoc/commit/1bc466d25fc01618fa4a54f6e3c4120e43a7e89e))
* export table annotation images with sanitized media paths, add tests ([a270b2a](https://github.com/superdoc-dev/superdoc/commit/a270b2a3639adc17922ead9791088622bce3232f))
* export types ([5fc3526](https://github.com/superdoc-dev/superdoc/commit/5fc3526f1510b330d48d0c55b0b1192db17f36f1))
* exported annotations are suppressed in Google Docs ([#1061](https://github.com/superdoc-dev/superdoc/issues/1061)) ([3f8dea6](https://github.com/superdoc-dev/superdoc/commit/3f8dea65598b5e98655ad9dea79f59596c7f1c1c))
* **export:** prefix Relationship IDs with rId for valid xsd:ID ([#1855](https://github.com/superdoc-dev/superdoc/issues/1855)) ([11e67e1](https://github.com/superdoc-dev/superdoc/commit/11e67e1e4332976df279edf62f1aa33177004f9e))
* **export:** prevent DOCX corruption from entity encoding and orphaned delInstrText (SD-1943) ([#2102](https://github.com/superdoc-dev/superdoc/issues/2102)) ([56e917f](https://github.com/superdoc-dev/superdoc/commit/56e917fff93175b27529afc2c8e744b21ea3bc29)), closes [#replaceSpecialCharacters](https://github.com/superdoc-dev/superdoc/issues/replaceSpecialCharacters) [#1988](https://github.com/superdoc-dev/superdoc/issues/1988)
* **export:** prevent DOCX corruption from UTF-16 XML parts and schema violations (SD-2170) ([#2349](https://github.com/superdoc-dev/superdoc/issues/2349)) ([f6dbb40](https://github.com/superdoc-dev/superdoc/commit/f6dbb404ad998e502a49df7e0ffded9f2a236321))
* **export:** prevent DOCX corruption from UTF-16 XML parts and schema violations (SD-2170) ([#2349](https://github.com/superdoc-dev/superdoc/issues/2349)) ([fed1d6b](https://github.com/superdoc-dev/superdoc/commit/fed1d6b233fd56c699038d50788c5c1c32f6d092))
* **export:** sync document XML before numbering pruning to preserve list definitions ([36058c3](https://github.com/superdoc-dev/superdoc/commit/36058c3640d12eeba8a3cf671d4cb2b46786d1d1))
* extend custom selection plugin again to fix font size, context menu and linked styles cases ([f906f23](https://github.com/superdoc-dev/superdoc/commit/f906f233609e01555ed671b95e47f0ea074078f7))
* extract duplicate block identity normalization from docxImporter ([7f7ff93](https://github.com/superdoc-dev/superdoc/commit/7f7ff9338786ed251323fc7986e6e30cf699b3b6))
* fallback to converter titlePg if no metadata ([#1612](https://github.com/superdoc-dev/superdoc/issues/1612)) ([d5d16e9](https://github.com/superdoc-dev/superdoc/commit/d5d16e96fab02a43a9828f7332bcdbf38c1cedbe)), closes [#1639](https://github.com/superdoc-dev/superdoc/issues/1639)
* fallback to text for floating objects and show placeholder for emf image ([#916](https://github.com/superdoc-dev/superdoc/issues/916)) ([d121cd9](https://github.com/superdoc-dev/superdoc/commit/d121cd92608bb41e84d09997792e5512a9ca6faa))
* faulty TOC import/export (SD-2183) ([#2371](https://github.com/superdoc-dev/superdoc/issues/2371)) ([45b4452](https://github.com/superdoc-dev/superdoc/commit/45b4452e926cf193c662b304e24384164cbced56))
* field annotation drag and drop ([#1668](https://github.com/superdoc-dev/superdoc/issues/1668)) ([659d152](https://github.com/superdoc-dev/superdoc/commit/659d152fa5349cde16800016680d3bef92ae548e))
* field annotation export test ([f0a68f4](https://github.com/superdoc-dev/superdoc/commit/f0a68f4fa7e5563ead5479d1658daffc7417d849))
* field vs sdt import issue is fixed with new tests, fix issue in test module with comments ([825e647](https://github.com/superdoc-dev/superdoc/commit/825e64725d55d84781f1fcf74543817dea225ecb))
* filter out .rels files from header/footer processing ([b16f183](https://github.com/superdoc-dev/superdoc/commit/b16f18366a4178f9d885c50f9d0e13016a5e0df1))
* filter out invalid inline nodes in root level ([#938](https://github.com/superdoc-dev/superdoc/issues/938)) ([4d77b35](https://github.com/superdoc-dev/superdoc/commit/4d77b3512542e4548156fcee1d2cd7334e9f1a0f))
* filter out invalid inline nodes in root level ([#938](https://github.com/superdoc-dev/superdoc/issues/938)) ([#939](https://github.com/superdoc-dev/superdoc/issues/939)) ([9e1b911](https://github.com/superdoc-dev/superdoc/commit/9e1b911809cd2e713b9ba8a38b88c9558f552ee0))
* find tracked change for firefox ([#1899](https://github.com/superdoc-dev/superdoc/issues/1899)) ([a39cb68](https://github.com/superdoc-dev/superdoc/commit/a39cb683df898ca9a41b4c7f54d3d2f8e48ea8f1))
* first page multi section logic, other numbering ([#1641](https://github.com/superdoc-dev/superdoc/issues/1641)) ([48856ea](https://github.com/superdoc-dev/superdoc/commit/48856ea536d5f73e25b8f20a7c4476e388d2156d))
* fix issue with moved cleanUpListsWithAnnotations, move both clean up functions ([72689cd](https://github.com/superdoc-dev/superdoc/commit/72689cd4d17faf3303e458692eff14cab8a0fae7))
* flatten find result ([#2299](https://github.com/superdoc-dev/superdoc/issues/2299)) ([bf4f3cd](https://github.com/superdoc-dev/superdoc/commit/bf4f3cdef1fce558bf0f3444eab5e839e1bf9d09))
* floating comments not appearing on first load ([#1221](https://github.com/superdoc-dev/superdoc/issues/1221)) ([b3e72d0](https://github.com/superdoc-dev/superdoc/commit/b3e72d0dbeefaa88a8614d889665668c95269d98))
* floating comments not appearing on first load ([#1221](https://github.com/superdoc-dev/superdoc/issues/1221)) ([c8656ca](https://github.com/superdoc-dev/superdoc/commit/c8656ca4cdeca1bc484fdaaf9c7ea584915a6c24))
* footer formatting issues(HAR-10117) ([5018e9a](https://github.com/superdoc-dev/superdoc/commit/5018e9aa6249bb2242b5d3ee94001bf1627dedfc))
* force track changes if input type is programmatic ([#1199](https://github.com/superdoc-dev/superdoc/issues/1199)) ([c6e2a17](https://github.com/superdoc-dev/superdoc/commit/c6e2a173a40624a1d8c6d87cb9cb2007588eacf1))
* format conditional ([28d5ade](https://github.com/superdoc-dev/superdoc/commit/28d5adebfcd787710c23f2cc059d5d221cc35097))
* **format:** route format.caps through textTransform so w:caps persists on export ([#2297](https://github.com/superdoc-dev/superdoc/issues/2297)) ([8e771e2](https://github.com/superdoc-dev/superdoc/commit/8e771e2d2ea75d4bc72bc7f589fd9279f8027478))
* formatting issues ([#773](https://github.com/superdoc-dev/superdoc/issues/773)) ([a992f68](https://github.com/superdoc-dev/superdoc/commit/a992f68cd323d02e6cf60f0609d039996c40a462))
* grab tracked change from inline node for contextMenu ([#1113](https://github.com/superdoc-dev/superdoc/issues/1113)) ([ff20085](https://github.com/superdoc-dev/superdoc/commit/ff200851eab4fb2a961b8749c010a40f1d20953a))
* guard against null editor ref in telemetry handler ([#1763](https://github.com/superdoc-dev/superdoc/issues/1763)) ([16b3a9a](https://github.com/superdoc-dev/superdoc/commit/16b3a9a2d4f5155ea967b4bbe6c2aadb996daef0))
* guard drawing export against invalid structures and zero IDs (SD-824) ([#2363](https://github.com/superdoc-dev/superdoc/issues/2363)) ([9c7fc2e](https://github.com/superdoc-dev/superdoc/commit/9c7fc2e61144365fc33f64fefd324ec894429a51))
* guarding against component init when ref is null ([#1746](https://github.com/superdoc-dev/superdoc/issues/1746)) ([253eeea](https://github.com/superdoc-dev/superdoc/commit/253eeeab9a28d5c2b771385d0d812e501f20ac55))
* guarding replaceSpecialCharacters against non-strings ([#794](https://github.com/superdoc-dev/superdoc/issues/794)) ([7f18834](https://github.com/superdoc-dev/superdoc/commit/7f188349896273093b9237e9bf58b7a18ddfe046))
* handle fldSimple syntax for page number fields ([#1755](https://github.com/superdoc-dev/superdoc/issues/1755)) ([8325783](https://github.com/superdoc-dev/superdoc/commit/83257837cc3123e6696a8fd231e96a4b31411c1b))
* handle table cell borders from styles ([#1722](https://github.com/superdoc-dev/superdoc/issues/1722)) ([6ef1a11](https://github.com/superdoc-dev/superdoc/commit/6ef1a1138adf23e9873a642aa63327f20724396b))
* handle Uint8Array media values from persistence layers ([#2298](https://github.com/superdoc-dev/superdoc/issues/2298)) ([0d4505c](https://github.com/superdoc-dev/superdoc/commit/0d4505c77ac1c44939e8f7874a08f827a7a8e08c))
* handling absolute paths for relationships ([#1811](https://github.com/superdoc-dev/superdoc/issues/1811)) ([8647358](https://github.com/superdoc-dev/superdoc/commit/864735874e93a8570e83372213f6d7ae96557a32))
* hanging indent in tables ([#1647](https://github.com/superdoc-dev/superdoc/issues/1647)) ([ee8a206](https://github.com/superdoc-dev/superdoc/commit/ee8a206378f0941fb2fa4ea02842fd3629f43350))
* **har-10122:** toolbar styles are missing ([08365df](https://github.com/superdoc-dev/superdoc/commit/08365df5c9f73d7f215d9f18a4fcccd32f06cc3f))
* **har-10122:** toolbar styles are missing ([eb7a599](https://github.com/superdoc-dev/superdoc/commit/eb7a5997b570814d50255794ce27ad834f6c4ff9))
* **har-10122:** update compiler options ([2e108f0](https://github.com/superdoc-dev/superdoc/commit/2e108f04414a787d8a2f76f2ac421fd822afe147))
* **har-10122:** update compiler options ([a434993](https://github.com/superdoc-dev/superdoc/commit/a434993f4927a747c4e66a25c035d86ec5ef5876))
* har-10158 - fix comments highlighting and identify ([3dfae1c](https://github.com/superdoc-dev/superdoc/commit/3dfae1cd16a9099ec768c58c836fd3e630f551dd))
* har-10195 highlight tracked changes comment ([1c7be69](https://github.com/superdoc-dev/superdoc/commit/1c7be6904f809477874092f5e1a1aa59afc07b93))
* harden markdown image conversion ([4ba1c25](https://github.com/superdoc-dev/superdoc/commit/4ba1c254c77aaa37f552f2ad9fd06ec55e802b23))
* header images that extend past area should be behind content ([#1669](https://github.com/superdoc-dev/superdoc/issues/1669)) ([bf7d679](https://github.com/superdoc-dev/superdoc/commit/bf7d6798c7698b884734b32b70993acb0bfa0cd0))
* **header-footer:** normalize page-relative anchor layout ([#2484](https://github.com/superdoc-dev/superdoc/issues/2484)) ([6e62198](https://github.com/superdoc-dev/superdoc/commit/6e6219876f54625f17ef7db87cbfa71547472970))
* header/footer collapsing from image placement ([#1575](https://github.com/superdoc-dev/superdoc/issues/1575)) ([1ca9165](https://github.com/superdoc-dev/superdoc/commit/1ca91659205b3cfd200f8b11c8a4ade143a452d7))
* header/footer collapsing from image placement ([#1575](https://github.com/superdoc-dev/superdoc/issues/1575)) ([2a443d8](https://github.com/superdoc-dev/superdoc/commit/2a443d86b0b3e25256d5389e41a0f2833f6f9f91))
* header/footer double click to edit ([#1814](https://github.com/superdoc-dev/superdoc/issues/1814)) ([b4041d5](https://github.com/superdoc-dev/superdoc/commit/b4041d55773d39feba3f3bb606f3723e63495a60))
* header/footer sizes ([#1666](https://github.com/superdoc-dev/superdoc/issues/1666)) ([9cd0cce](https://github.com/superdoc-dev/superdoc/commit/9cd0ccebe0b07dbdace54a8a2c7fb06fdd225b01))
* headers/footers that extend past their size are clipped ([#1630](https://github.com/superdoc-dev/superdoc/issues/1630)) ([3e689fb](https://github.com/superdoc-dev/superdoc/commit/3e689fbbeaf156cdba6ff3a0c8dd6d2391b7d23a))
* headless mode crash ([#1002](https://github.com/superdoc-dev/superdoc/issues/1002)) ([08a72cb](https://github.com/superdoc-dev/superdoc/commit/08a72cbf0005804e746eea98caf19b658a597a6d))
* headless yjs ([#1913](https://github.com/superdoc-dev/superdoc/issues/1913)) ([4cdecf7](https://github.com/superdoc-dev/superdoc/commit/4cdecf7c592f8fbf23655b05200c36b9edfb6d7e))
* hide tools bubble on cursor change ([#1678](https://github.com/superdoc-dev/superdoc/issues/1678)) ([1fb865d](https://github.com/superdoc-dev/superdoc/commit/1fb865d48d40045ed5be2dcd0692334a8aa5bdc7))
* highlight selected value in font dropdowns ([#869](https://github.com/superdoc-dev/superdoc/issues/869)) ([4a30f59](https://github.com/superdoc-dev/superdoc/commit/4a30f59b3efbdbf3abbeca0e12af38fe980ed03b))
* horizontal rule ([#1875](https://github.com/superdoc-dev/superdoc/issues/1875)) ([4b3b92e](https://github.com/superdoc-dev/superdoc/commit/4b3b92ee168adcc06c7c4c927716ebcfec94311e))
* html import parse styleId attr for round-trip fidelity ([#974](https://github.com/superdoc-dev/superdoc/issues/974)) ([929fffa](https://github.com/superdoc-dev/superdoc/commit/929fffa511faeff18ddedb63eb039971c430949c))
* html paste processing ([1777394](https://github.com/superdoc-dev/superdoc/commit/177739490dff0ce4a9980effc834ef9fd2c71ac1))
* hyperlink export causes issues in Word ([#1121](https://github.com/superdoc-dev/superdoc/issues/1121)) ([8c61646](https://github.com/superdoc-dev/superdoc/commit/8c6164625dba72b0bc8d53dfdd254c18de3f9a50))
* ignore sdBlockId when pasting content ([#2010](https://github.com/superdoc-dev/superdoc/issues/2010)) ([1b08572](https://github.com/superdoc-dev/superdoc/commit/1b08572ef696dfe9fb45cd079c4381bd86c3b2d3))
* image annotation export in tables ([#1004](https://github.com/superdoc-dev/superdoc/issues/1004)) ([1e36934](https://github.com/superdoc-dev/superdoc/commit/1e3693438031b7d315d4b94e246a355d3c378a65))
* **image annotations:** missed image on export ([077cea6](https://github.com/superdoc-dev/superdoc/commit/077cea62d618a95d844255876350eac542b70157))
* image node resizer ([#1603](https://github.com/superdoc-dev/superdoc/issues/1603)) ([1946578](https://github.com/superdoc-dev/superdoc/commit/1946578ff5821733ce344a502fa647c28f5d8521))
* image z-index and overlaps ([#1950](https://github.com/superdoc-dev/superdoc/issues/1950)) ([39875ac](https://github.com/superdoc-dev/superdoc/commit/39875acda1a1799f52d433d463739926e73eea61))
* **image:** preserve anchored rotation margins and add coverage ([#1013](https://github.com/superdoc-dev/superdoc/issues/1013)) ([15aaba7](https://github.com/superdoc-dev/superdoc/commit/15aaba7725b233b27c22d0ceb70113cd0aada779))
* images are missing for the document in edit mode ([#831](https://github.com/superdoc-dev/superdoc/issues/831)) ([a9af47e](https://github.com/superdoc-dev/superdoc/commit/a9af47ed4def516900b14460218e476374c69a80))
* images breaking on export ([#1182](https://github.com/superdoc-dev/superdoc/issues/1182)) ([82af973](https://github.com/superdoc-dev/superdoc/commit/82af973a0388091ad5fbb90cbefc6c9699faadd5))
* images uploaded are dropped on export ([#1186](https://github.com/superdoc-dev/superdoc/issues/1186)) ([77922c6](https://github.com/superdoc-dev/superdoc/commit/77922c66f2261b8ff9856dd265fe8124fa6717c9))
* **images:** restore image TopAndBottom centering and column-left float ([94e02bd](https://github.com/superdoc-dev/superdoc/commit/94e02bd54968bc8340c384165a9b63e0249012b4))
* **image:** sync headless image media to Y.Doc for collab persistence ([#2313](https://github.com/superdoc-dev/superdoc/issues/2313)) ([72c64ed](https://github.com/superdoc-dev/superdoc/commit/72c64ed11e031cee4f15413eee403d93b08c1ec7))
* import alignment from injected html ([#1068](https://github.com/superdoc-dev/superdoc/issues/1068)) ([0cdb9ea](https://github.com/superdoc-dev/superdoc/commit/0cdb9eab72bc68ba64996348bb701bacf4fbfbf4))
* import alignment from injected html ([#1068](https://github.com/superdoc-dev/superdoc/issues/1068)) ([#1069](https://github.com/superdoc-dev/superdoc/issues/1069)) ([38f44a9](https://github.com/superdoc-dev/superdoc/commit/38f44a954d8044754d4d5d978d3f7ce58c4e122f))
* import issue falling back to wrong abstratId ([#930](https://github.com/superdoc-dev/superdoc/issues/930)) ([94b0679](https://github.com/superdoc-dev/superdoc/commit/94b067924d0311b8433e24e2c98cdd9da61d39ae))
* import issue falling back to wrong abstratId ([#930](https://github.com/superdoc-dev/superdoc/issues/930)) ([a5b43d0](https://github.com/superdoc-dev/superdoc/commit/a5b43d036133217d6f15661f3b1666d621fee049))
* import regression ([#2452](https://github.com/superdoc-dev/superdoc/issues/2452)) ([cac5e24](https://github.com/superdoc-dev/superdoc/commit/cac5e2426edf5b747ed9dd6231e5d080ef1923c3))
* import/export of missing pict separators ([#1048](https://github.com/superdoc-dev/superdoc/issues/1048)) ([8320a2c](https://github.com/superdoc-dev/superdoc/commit/8320a2c92f81cde20db871828f9daf14a9b3e40e))
* **importer:** retain gdocs comments without extended metadata ([#1017](https://github.com/superdoc-dev/superdoc/issues/1017)) ([c232308](https://github.com/superdoc-dev/superdoc/commit/c232308289473b41f071326cf8edd1d658e7310e))
* **importer:** wrap root-level inline nodes in paragraphs and disallow marks on passthroughInline ([#1804](https://github.com/superdoc-dev/superdoc/issues/1804)) ([7d0a752](https://github.com/superdoc-dev/superdoc/commit/7d0a7528493c2c7cea96ac72632db1f14f1f7fbc))
* imports encoded in utf-16 break DocxZipper ([#860](https://github.com/superdoc-dev/superdoc/issues/860)) ([3a1be24](https://github.com/superdoc-dev/superdoc/commit/3a1be24798490147dad3d39fc66e1bcac86d7875))
* improve backspace behavior near run boundaries for tracked changes ([#2175](https://github.com/superdoc-dev/superdoc/issues/2175)) ([6c9c7a3](https://github.com/superdoc-dev/superdoc/commit/6c9c7a3d72ed78717297cd48530f4629c9c680c4))
* improve document API dry runs, query matching, and reference block mutations ([#2498](https://github.com/superdoc-dev/superdoc/issues/2498)) ([5959c5f](https://github.com/superdoc-dev/superdoc/commit/5959c5f9fa7696ce34025c175a05ee610f7e12f4))
* improve floating comments offset calculation and scrolling behavior ([2ae0b62](https://github.com/superdoc-dev/superdoc/commit/2ae0b62def80c0acf52ad84389914a6324250bb9))
* improve index mapping for text nodes and handle transparent inline nodes ([#1216](https://github.com/superdoc-dev/superdoc/issues/1216)) ([2ed5d3a](https://github.com/superdoc-dev/superdoc/commit/2ed5d3a7401c90e0a4fd02294c66b34bc7da9af2))
* improve marker width calculation for server-side rendering ([#801](https://github.com/superdoc-dev/superdoc/issues/801)) ([85205c1](https://github.com/superdoc-dev/superdoc/commit/85205c1aa014fc0dfae37e2f3d4624b1a2abe743)), closes [#log](https://github.com/superdoc-dev/superdoc/issues/log)
* improve multi-column rendering ([#2369](https://github.com/superdoc-dev/superdoc/issues/2369)) ([d231640](https://github.com/superdoc-dev/superdoc/commit/d2316402dcbdf66d9a3c879ad3af80b3fa6f6a62))
* improve null handling and clean up code in translateList and related functions ([09c88e4](https://github.com/superdoc-dev/superdoc/commit/09c88e447d6d4956616e0fe6af0d5ae1c609437c))
* improve performance ([#1169](https://github.com/superdoc-dev/superdoc/issues/1169)) ([e626e28](https://github.com/superdoc-dev/superdoc/commit/e626e283f160b55e2ccacda1273d3d347bbef99b))
* improve selection bounds calculation for floating comments ([7d9306d](https://github.com/superdoc-dev/superdoc/commit/7d9306d8b6c1505ffaf906db6298e07810ff01c1))
* include doc default fonts and stabilize linked-style run properties ([b2d9fc9](https://github.com/superdoc-dev/superdoc/commit/b2d9fc977198ee3c131659ec312e0fdb4309af2e))
* include tracked change date fix ([#1384](https://github.com/superdoc-dev/superdoc/issues/1384)) ([10dbd16](https://github.com/superdoc-dev/superdoc/commit/10dbd16e071522ed3f5a6c8be7f2d36d605e9bba))
* incorrect list counter calculation (SD-1658) ([#1867](https://github.com/superdoc-dev/superdoc/issues/1867)) ([a960a65](https://github.com/superdoc-dev/superdoc/commit/a960a656235d2c4daa7b5f169e79bfba5f057ff6))
* increase/decrease indent for all selected list items ([#1192](https://github.com/superdoc-dev/superdoc/issues/1192)) ([0bcee03](https://github.com/superdoc-dev/superdoc/commit/0bcee0315113e9804d7c80d3e50281307143c70e))
* indents from linked styles ([#1679](https://github.com/superdoc-dev/superdoc/issues/1679)) ([70bc68c](https://github.com/superdoc-dev/superdoc/commit/70bc68c07f7603f6f4845febe562f5fd6b72b5a1))
* infinite loop when paginating if top margin = header margin, zero margins ([84f7623](https://github.com/superdoc-dev/superdoc/commit/84f7623c57234385f2c7d47bc3ee96ee93c1e9a5))
* infinite loop when paginating if top margin = header margin, zero margins ([#1610](https://github.com/superdoc-dev/superdoc/issues/1610)) ([f6448e4](https://github.com/superdoc-dev/superdoc/commit/f6448e45feae535dd1e982c1d5fd87f26f578416))
* initial line drift fix ([#1590](https://github.com/superdoc-dev/superdoc/issues/1590)) ([f6af6e6](https://github.com/superdoc-dev/superdoc/commit/f6af6e6603e9dc76a5be909274ac37ebc7c04143))
* insertComment does not emit to SuperDoc ([#1065](https://github.com/superdoc-dev/superdoc/issues/1065)) ([b95cd42](https://github.com/superdoc-dev/superdoc/commit/b95cd42ff5be9c2314e60a7c4a38ea8c1470ecb9))
* insertContentAt fails if new line characters (\n) inserted ([dd60d91](https://github.com/superdoc-dev/superdoc/commit/dd60d91711e63741e2d6ca2ced02251f2a4e0465))
* insertContentAt for html ([f6c53d3](https://github.com/superdoc-dev/superdoc/commit/f6c53d396bbc9745aa8e6c86c950bd68bb24216a))
* inserting html with heading tags does not render as expected (HAR-10430) ([#874](https://github.com/superdoc-dev/superdoc/issues/874)) ([bba5074](https://github.com/superdoc-dev/superdoc/commit/bba5074692c8fcdba7d6f6c0ef2960ce7c2d7b6a))
* instrtext bug with unhandled angled brackets ([#1051](https://github.com/superdoc-dev/superdoc/issues/1051)) ([71cf182](https://github.com/superdoc-dev/superdoc/commit/71cf1825b46832da1039269a1c727d3a7c74ffaf))
* instrtext bug with unhandled an…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants