This release adds 2 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+7 more
ReleasePort's take
Light signalEigenpal docx-editor 1.0.1 fixes floating table and image margin collapse that produces single-character line layouts. Adds DOCX parser improvements for text-box preservation and TOC rendering with Word fidelity.
Why it matters: Floating margin clamps prevent layout collapse in documents with wide floating elements. DOCX text-box extraction and TOC rendering now preserve Word fidelity. Schedule for next patch cycle.
Summary
AI summaryFloating table and image wrap margins are clamped to prevent collapsed single-glyph line layout after near-full-width floating elements.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
TOC entries rendered with Word fidelity, preserving tabs and paragraph color. TOC entries rendered with Word fidelity, preserving tabs and paragraph color. Source: llm_adapter@2026-05-22 Confidence: high |
— |
| Feature | Medium |
Per-locale subpath imports added to `@eigenpal/docx-editor-i18n` for code-splitting. Per-locale subpath imports added to `@eigenpal/docx-editor-i18n` for code-splitting. Source: llm_adapter@2026-05-22 Confidence: high |
— |
| Feature | Medium |
Add per-locale subpath imports to @eigenpal/docx-editor-i18n for code-splitting. Add per-locale subpath imports to @eigenpal/docx-editor-i18n for code-splitting. Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
| Feature | Medium |
Render TOC entries with Word fidelity, preserving tabs inside hyperlinks and inheriting paragraph color. Render TOC entries with Word fidelity, preserving tabs inside hyperlinks and inheriting paragraph color. Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
| Feature | Medium |
Re-export Comment, CommentRangeStart, CommentRangeEnd, TrackedChangeInfo, TrackedRunChange, Insertion, Deletion, MoveFrom, MoveTo, ParagraphContent from @eigenpal/docx-editor-core. Re-export Comment, CommentRangeStart, CommentRangeEnd, TrackedChangeInfo, TrackedRunChange, Insertion, Deletion, MoveFrom, MoveTo, ParagraphContent from @eigenpal/docx-editor-core. Source: granite4.1:30b@2026-05-22-audit Confidence: low |
— |
| Feature | Medium |
`createEmptyDocument`, `createDocumentWithText`, and related options re-exported from adapters. `createEmptyDocument`, `createDocumentWithText`, and related options re-exported from adapters. Source: llm_adapter@2026-05-22 Confidence: low |
— |
| Feature | Medium |
Documented core comment and tracked change types exposed from main entry point. Documented core comment and tracked change types exposed from main entry point. Source: llm_adapter@2026-05-22 Confidence: low |
— |
| Feature | Medium |
Adjust hyperlink anchor styling to inherit color and underline from wrapping span. Adjust hyperlink anchor styling to inherit color and underline from wrapping span. Source: granite4.1:30b@2026-05-22-audit Confidence: low |
— |
| Bugfix | Medium |
WPS text-box drawings wrapped in `<mc:AlternateContent>` now round-trip through the parser. WPS text-box drawings wrapped in `<mc:AlternateContent>` now round-trip through the parser. Source: llm_adapter@2026-05-22 Confidence: high |
— |
| Bugfix | Medium |
Floating table and image wrap margins clamped when exceeding content width. Floating table and image wrap margins clamped when exceeding content width. Source: llm_adapter@2026-05-22 Confidence: high |
— |
| Bugfix | Medium |
Extract WPS text-box drawings wrapped in <mc:AlternateContent> to preserve floating text boxes. Extract WPS text-box drawings wrapped in <mc:AlternateContent> to preserve floating text boxes. Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
| Bugfix | Medium |
Clamp floating table and image wrap margins when they exceed the content width. Clamp floating table and image wrap margins when they exceed the content width. Source: granite4.1:30b@2026-05-22-audit Confidence: high |
— |
Full changelog
Patch Changes
-
8d60d65: Extract WPS text-box drawings wrapped in
<mc:AlternateContent>so floating text boxes from real Word docs (org-chart cards, callouts, etc.) round-trip through the parser instead of being silently dropped. The parser now walks both the direct<w:drawing>child of<w:r>and the<mc:Choice>/<mc:Fallback>branches of an<mc:AlternateContent>wrapper (preferringChoice). -
7806b78: Clamp floating table and image wrap margins when they exceed the content width, fixing collapsed single-glyph line layout after near-full-width floating tables. Same fix applied at both wrap-zone sites:
rectsToFloatingZones(page paint) and the React adapter'sextractFloatingZones(pre-measurement scan). -
a193caa: Render TOC entries with Word fidelity: preserve tabs inside
<w:hyperlink>(dot leaders no longer collapse) and inherit the TOCx paragraph color instead of the Hyperlink character style's blue + underline. Right-aligned tabs at line edges promote the line to flex layout so trailing page numbers land flush against the right margin without canvas-vs-DOM measurement drift.Also adjusts hyperlink anchor styling: anchors now inherit color and underline from the wrapping span (which
applyRunStylesalready styles fromrun.color/run.underline). The Word-default blue + underline fallback only fires when neither is resolved on the run. Documents with hyperlinks that explicitly set a non-default color or remove the underline will now reflect that, where previously the painter overrode them. -
fe4cb94: Add per-locale subpath imports to
@eigenpal/docx-editor-i18nso dynamic
locale loading can code-split a single locale instead of bundling the whole
set:// Static — bundler ships only this locale's strings import pl from '@eigenpal/docx-editor-i18n/pl'; // Dynamic — splits into its own chunk, loaded on demand const pl = (await import('@eigenpal/docx-editor-i18n/pl')).default;Subpaths ship for every locale:
/en,/de,/he,/pl,/pt-BR,/tr,
/zh-CN. The named exports on the package root still work — pick the
ergonomic path for static lists, the subpath for runtime locale switching.Also re-export
createEmptyDocument,createDocumentWithText, and
CreateEmptyDocumentOptionsfrom@eigenpal/docx-editor-reactand
@eigenpal/docx-editor-vueso the common "spawn a blank editor"
affordance no longer requires installing-corealongside the adapter.Surface
Comment,CommentRangeStart,CommentRangeEnd,
TrackedChangeInfo,TrackedRunChange,Insertion,Deletion,
MoveFrom,MoveTo, andParagraphContentfrom the main
@eigenpal/docx-editor-coreentry. They were already public via
@eigenpal/docx-editor-core/headless; the main entry just hadn't been
re-exporting them.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Docx Editor
All releases →Related context
Related tools
Earlier breaking changes
- v@eigenpal/[email protected] Shared i18n package extracted into @eigenpal/docx-editor-i18n.
- v@eigenpal/[email protected] `showPrintButton` prop removed from `<DocxEditor>` and toolbar components.
- v@eigenpal/[email protected] Toolbar naming unified across React and Vue adapters; classic toolbar removed.
- v@eigenpal/[email protected] Agent UI components relocated to new agent packages and API changed.
- v@eigenpal/[email protected] Shared i18n package extracted from adapters into dedicated locale bundle.
Beta — feedback welcome: [email protected]