Skip to content

v0.12.0

Choose a tag to compare

@Innei Innei released this 14 May 11:32
· 95 commits to main since this release
9bb9ea2

Summary

Adds first-class quote attribution and surfaces module-name / node-key constants for downstream renderer overrides. Drives the Yohaku rich-content UI rewrite (alert / banner / blockquote / nestdoc).

Breaking Changes

None.

Features

  • @haklex/rich-editor: new RichQuoteNode subclass with an __attribution slot, registered via { replace: QuoteNode } so existing blockquote data continues to parse.
  • @haklex/rich-editor-ui: new QuoteAttributionPlugin — inline bottom-right input rendered into the active blockquote DOM, with full event isolation (key / pointer / IME composition / clipboard / drag) from the contenteditable.
  • @haklex/rich-editor: RichEditorShell auto-mounts QuoteAttributionPlugin.
  • @haklex/rich-compose: per-module entries now export ALERT_MODULE_NAME / BANNER_MODULE_NAME / NESTED_DOC_MODULE_NAME etc. for type-safe RichRendererModule.name.
  • @haklex/rich-ext-nested-doc: exposes NESTED_DOC_NODE_KEY (slot constant), truncateEditorState, hasRenderableEditorState, and NestedDocRendererProps — required for composeRenderer({ overrides }) consumer-side renderer customization. NestedDocStaticDecorator now delegates through RendererWrapper.
  • @haklex/rich-litexml: <blockquote attribution="..."> reader/writer support; litexml-authoring skill updated.

Bug Fixes

None separable from the above features.

Bump rationale

Shared version (highest-wins). All package diffs are additive — new exports, new node subclass via replace, new optional attribute. No removed / renamed exports, no Context shape changes, no public CSS class removals.

pkg level reason
rich-editor-ui minor new export QuoteAttributionPlugin
rich-ext-nested-doc minor new exports NESTED_DOC_NODE_KEY, truncateEditorState, hasRenderableEditorState, NestedDocRendererProps
rich-compose minor new per-module *_MODULE_NAME exports
rich-editor minor new class RichQuoteNode (non-breaking replace)
rich-litexml minor new optional attribution attribute on <blockquote>