v0.15.0
Summary
This release extracts LiteXML clipboard handling from the editor core into a standalone plugin and reworks @haklex/rich-litexml to ship platform-specific entries (browser uses native DOMParser, node uses linkedom for SSR). Numerous internal refactors migrate to /static sub-path imports and the build pipeline moves to unplugin-dts.
Breaking Changes
-
@haklex/rich-editor'sMarkdownPastePluginno longer detects LiteXML on paste. Downstream consumers that relied on pasting Haklex XML now MUST install and render the new plugin.Migration:
pnpm add @haklex/rich-plugin-litexml-paste@^0.15.0
import { LiteXmlPastePlugin } from '@haklex/rich-plugin-litexml-paste' <RichEditor ...> <LiteXmlPastePlugin /> {/* other plugins */} </RichEditor>
-
@haklex/rich-litexml.export is now conditional (browser/node). Consumers with bundlers that don't support package exports conditions (very old setups) may pick up thenodeentry which depends onlinkedom. Modern Vite / Next.js / esbuild handle this automatically.
Features
- NEW package
@haklex/rich-plugin-litexml-paste— standalone LiteXML paste plugin withdetectLiteXml/parseLiteXmlSerializedNodeshelpers. @haklex/rich-litexmlships split entries:dist/browser.mjs(nativeDOMParser) anddist/node.mjs(linkedomfor server-side parsing).
Other
- Migrate to
/staticsub-path imports acrossrich-ext-*andrich-renderer-*packages — slimmer trees for read-only renderer paths. - Bump dependencies to latest (
@base-ui/react@1.5.0,shiki@4.1.0,vitest@4.1.7, etc.) and migrate build pipeline fromvite-plugin-dts→unplugin-dts. release-orchestratorskill: surface draft edit URL instead of tag view.
Bump rationale
| Package | Signal | Bump |
|---|---|---|
@haklex/rich-litexml |
New conditional . export (browser/node) |
minor |
@haklex/rich-editor |
MarkdownPastePlugin loses LiteXML detection (extracted) |
minor |
@haklex/rich-plugin-litexml-paste |
NEW package — first publish | (new) |
@haklex/rich-renderer-mermaid |
useMermaidRender internal refactor |
patch |
Other rich-ext-* / rich-renderer-* |
/static import migration |
patch |
Highest-wins across the shared version → minor (0.14.1 → 0.15.0).