Download Latest Version v0.35.0 source code.tar.gz (5.7 MB)
Email in envelope

Get an email when there's a new version of Lexical

Home / v0.35.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2025-09-05 5.1 kB
v0.35.0 source code.tar.gz 2025-09-05 5.7 MB
v0.35.0 source code.zip 2025-09-05 6.4 MB
Totals: 3 Items   12.1 MB 5

v0.35.0 is a monthly release with much improved RTL bidirectional text support (#7727) and several bug fixes

Breaking Changes

All of the breaking changes in this release are related to the improved RTL bidirectional text support in [#7727]

ltr and rtl theme CSS classes removed

ltr and rtl theme CSS classes are no longer added to DOM elements. If you have custom CSS to set text-align (or any other properties) for bidirectional text, this can be removed. You can target elements that have customized their dir by targeting the attr in CSS, for example:

:::css
[dir=rtl] { text-align: right; }

$isParentElementRTL requires an active editor

$isParentElementRTL now relies on accessing the DOM to determine element direction, meaning there must be an active editor when calling the function. If you have code that calls $isParentElementRTL inside editorState.read(), you will need to pass in an editor argument. For example:

:::ts
const isRTL = editorState.read(
  () => {
    const selection = $getSelection();
    return $isRangeSelection(selection) && $isParentElementRTL(selection);
  },
  {editor}
);

__dir property is synced to/from Yjs (again)

Prior to [#7330], the text direction of nodes (as determined by the reconciler) was synced to Yjs, even though this value was ignored on other clients. This property is now used for any manually-set direction attribute on ElementNode.

If you have documents that were created prior to v0.30.0, the previously-reconciled direction will now be read and applied to nodes in the editor. This may lead to unexpected behaviour if, for example, your document contains a paragraph that contained RTL text but content changed to LTR in >= v0.30.0.

Highlights

Core:

  • 🆕 [#7727] Allow ElementNode direction to be overridden (RTL)
  • ✅ [#7772] Correct exit direction from decorator nodes in RTL
  • ✅ [#7794] Fix insert into existing paragraph node if selection is on parent element

Markdown:

  • ✅ [#7769] Formatted textmatch fix
  • 🆕 [#7735] Allow any characters in markdown link text

React:

  • ✅ [#7757] Add $config $transform inheritance to LexicalNestedComposer
  • ✅ [#7778] Fix the context menu event listener element

Internal:

  • 🧹 [#7770] Update flow suppressions to use error code
  • 🧹 [#7785] flow-bin updated to 0.280.0
  • 🧹 [#7796] Replace jest with vitest for unit tests

What's Changed

New Contributors

Full Changelog: https://github.com/facebook/lexical/compare/v0.34.0...v0.35.0

Source: README.md, updated 2025-09-05