v0.20.0

facebook/lexicalv0.20.0Nov 8, 2024by etrepum

AI Summary

Focuses on Markdown improvements, including an `onUpdate` callback for editor updates, control over TextMatchTransformer end nodes, and fixes for collaboration (Yjs) and pasting styles.

Key Highlights

  • New `$onUpdate` callback for editor updates
  • Enhanced Markdown import with control over TextMatchTransformer end nodes
  • Fixes for collaboration cleanup and pasting HTML styles
  • Added more keyboard shortcuts to the playground
  • Docusaurus upgrade to v3.6

New Features

  • $onUpdate function
  • Control over TextMatchTransformer end nodes
  • Preserve styles when pasting HTML

Full Release Notes

## Highlights

Highlights since [v0.19.0](https://github.com/facebook/lexical/releases/tag/v0.19.0)

Lexical Core:

* 🆕 `$onUpdate` to add an "onUpdate" callback while processing an `editor.update`
  https://github.com/facebook/lexical/pull/6773

Markdown:

* 🆕 Add ability to control finding the end of a node matched by TextMatchTransformer
  https://github.com/facebook/lexical/pull/6681
* ✅ Avoid infinite markdown shortcut matchers
  https://github.com/facebook/lexical/pull/6778

Collab / Yjs:

* ✅ Clean up dangling text after undo in collaboration
  https://github.com/facebook/lexical/pull/6670

Playground & Docs:

* 🆕 Demonstrate how to preserve more styles when pasting HTML
  https://github.com/facebook/lexical/pull/6780
  https://github.com/facebook/lexical/pull/6770
* 🆕 Add more keyboard shortcuts
  https://github.com/facebook/lexical/pull/6754

## What's Changed

* [lexical] Feature: Add onUpdate function during update with $onUpdate (correct baselline) by @landisdesign in https://github.com/facebook/lexical/pull/6773
* #6768 fix to avoid infinite markdown shortcut matchers run by @fantactuka in https://github.com/facebook/lexical/pull/6778
* [lexical-playground] Fix: the placement of the fontSize button in the ToolbarPlugin  and hide the vertical scroll (Bug Fix) by @vantage-ola in https://github.com/facebook/lexical/pull/6786
* Bug Fix:  ContextMenu Paste option not preserving style  by @citruscai in https://github.com/facebook/lexical/pull/6780
* [lexical-website] Chore: upgrade to Docusaurus v3.6 - Docusaurus Faster by @slorber in https://github.com/facebook/lexical/pull/6761
* [lexical-react] Bug Fix: LexicalTypeaheadMenuPlugin SSR error: ReferenceError: document is not defined by @bedre7 in https://github.com/facebook/lexical/pull/6794
* [lexical-markdown] Feature: add ability to control finding the end of a node matched by TextMatchTransformer by @AlessioGr in https://github.com/facebook/lexical/pull/6681
* [Lexical-website] BugFix: Change button text colour to improve visibility by @Shopiley in https://github.com/facebook/lexical/pull/6796
* [lexical-yjs] Bug Fix: clean up dangling text after undo in collaboration by @mike-atticus in https://github.com/facebook/lexical/pull/6670
* [lexical-website] Documentation Update: Add Documentation for html Property in Lexical Editor Configuration by @Kingscliq in https://github.com/facebook/lexical/pull/6770
* [lexical-playground] Feature: Add more keyboard shortcuts by @bedre7 in https://github.com/facebook/lexical/pull/6754
* Fix importDOM for Layout plugin by @ivailop7 in https://github.com/facebook/lexical/pull/6799
* Add optional selection argument to $getHtmlContent flow type by @rajivanisetti in https://github.com/facebook/lexical/pull/6803
* [lexical] Chore: Add export of DOMExportOutputMap from lexical by @Kingscliq in https://github.com/facebook/lexical/pull/6805

## New Contributors
* @landisdesign made their first contribution in https://github.com/facebook/lexical/pull/6773
* @vantage-ola made their first contribution in https://github.com/facebook/lexical/pull/6786
* @citruscai made their first contribution in https://github.com/facebook/lexical/pull/6780
* @slorber made their first contribution in https://github.com/facebook/lexical/pull/6761
* @Shopiley made their first contribution in https://github.com/facebook/lexical/pull/6796
* @mike-atticus made their first contribution in https://github.com/facebook/lexical/pull/6670
* @Kingscliq made their first contribution in https://github.com/facebook/lexical/pull/6770

**Full Changelog**: https://github.com/facebook/lexical/compare/v0.19.0...v0.20.0