Skip to content

Commit 811570f

Browse files
chore(react): 1.3.0 [skip ci]
### What's New - **Right-to-left language support** β€” ECMA-376-compliant direction resolver chain for section, table, cell, and paragraph contexts; fixes v1.2.1 bug where section bidi leaked to paragraphs. - **No-break hyphen (U+2011)** β€” Atomic inline leaf with backspace/forward-delete support and tracked-change preservation. - **Column balancing at continuous breaks** β€” Multi-page tables split at row boundaries per ECMA-376 Β§17.18.77. - **Page tokens in table cells** β€” PAGE/NUMPAGES now resolve per-page with deep-cloned cell isolation inside footer tables. - **SDT-wrapped content** β€” Handles `<w:docPartObj>` wrappers transparently in tables and structured content blocks. - **LLM table tools** β€” `tables.applyPreset` for visual styling; `lists.delete` removes entire list sequences. - **Formatting marks toggle** β€” Render paragraph/line/space/list markers with correct RTL positioning. - **10 new list styles** β€” Square and circle bullets plus 7 ordered variants (upper-alpha with paren, etc.) with full OOXML round-trip. - **List context menus** β€” Inline style switching and numbering control; changes apply to full list level including children. - **Custom UI expansion** β€” `ui.viewport.getHost()`, `positionAt()`, `contextAt()` for coordinate resolution; `ui.selection.getRects()`, `getAnchorRect()` for geometry; `ui.commands.has()`, `require()` for typed registry; context-menu contribution API; `ui.selection.restore(capture)` with story-scoping; `ui.createScope()` for lifecycle management; `observe()` aliases on all handles; shortcut binding at registration. - **Type surface centralization** β€” Single `type-surface.config.cjs` source of truth; 53 consumer-typecheck scenarios with skipLibCheck:false; drained 6 shims; explicit `types` on converter/docx-zipper/file-zipper subpaths. ### Improvements - **Tab positioning for hanging indents** β€” Left-margin returns work correctly; extends to wrapped body lines; right-aligned tabs no longer double-compensate. - **Column separators** β€” Suppressed over empty columns, matching Word behavior. - **Field preservation in tracked changes** β€” Detects and preserves `<w:del>`/`<w:ins>` wrappers on split fields. - **TOC display in SDTs** β€” Recurses into custom-gallery children for instruction preference. - **Painter architecture** β€” DomPainter consumes only ResolvedLayout; dropped legacy paint(Layout) paths; eliminated paint-time DOM measurement. - **Presentation editor** β€” Bails on inter-page gap clicks; re-reads session state after header/footer exit. - **Table operations** β€” Merge geometry preserved on cloned cells/rows; identity attrs respect imported rsid family; setCellText NO_OP checks mark values; dryRun mirrors live behavior. - **Custom-selection right-click** β€” Respects `disableContextMenu: true` so browser menus work. - **Draggable internal objects** β€” Locked SDTs refuse drag; table-wrapped labels now draggable. - **Declaration reachability** β€” 442/2012 declarations reachable from 11 typed exports; super-editor identified as primary trim target. - **PM adapter include** β€” Narrowed to precise files, preventing internal style-engine leakage. ### Fixes - **Section break ordering** β€” Tables, drawings, and SDTs now emit breaks before content (fixes 2-col table in wrong section). - **RTL export cascading** β€” Style-inherited w:rtl no longer force-pushed onto every run; CS companions survive docDefaults overrides. - **Document render crashes** β€” Eliminated crashes from anchored content measurement issues. - **Hyperlink ampersands** β€” XML entities in OPC attributes now properly escaped on export. - **List style nesting** β€” Changes apply to full list level including children; undo works correctly. - **Tracked-change atoms** β€” No-break-hyphen exports inside w:ins/w:del; del-translator handles non-text content. - **Type safety** β€” Fixed implicit-any on SuperDoc members; widened optional provider/User types; removed 14 stale .d.ts shadow files. - **Stale handles** β€” ContextMenuItem.invoke() refuses dispatch when entry is replaced by later register(). - **Story-aware selection** β€” Restore returns 'stale' on story mismatch; captures scoped to active surface. - **Context-menu suggestions** β€” Display correctly after typecheck. - **Comment flicker** β€” Non-collapsed selections no longer flash active comment when clicking tracked changes inside comments. - **Line break rendering** β€” Manual line breaks now render faithfully in all contexts. - **Table gap clicks** β€” No longer jump cursor to different page or select wrong paragraph. - **Footer alignment** β€” Page numbers and footer content align correctly even with malformed spacing metadata. - **Floating textboxes** β€” DrawingML shapes that re-prefix namespaces now render. - **Bullet style export** β€” Square/circle styles export to DOCX with matching `w:lvlText` markers. - **Comments export** β€” Word-native range-based files export in correct format instead of merging incorrectly. - **Symbol font stripping** β€” Transitioning from bullet to ordered lists strips symbol fonts so numbered markers render without interference. - **Wide table rendering** β€” Tables wider than margins now render outside bounds with proper x-positioning for centered/right-aligned layouts. - **AutoFit table columns** β€” Column widths recalculate based on content demand while respecting authored grids. - **Tracked change anchors** β€” `extract()` includes `block.textSpans` mapping each change to exact text plus `blockIds` and `wordRevisionIds` for navigation. ### Breaking Changes - **ui.review removed** β€” Merged comments + tracked-changes feed replaced by separate `ui.comments` and `ui.trackChanges` surfaces.
1 parent 4857a93 commit 811570f

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

β€Žpackages/react/package.jsonβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@superdoc-dev/react",
3-
"version": "1.2.1",
3+
"version": "1.3.0",
44
"description": "Official React wrapper for the SuperDoc document editor",
55
"type": "module",
66
"main": "./dist/index.cjs",

0 commit comments

Comments
Β (0)