NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4968 most downloaded on npm
This package contains misc utilities for Lexical.
Last release 2 days ago
02 Oct 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
5 years old
696 releases · first in 2022
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
v0.43.0 is a monthly release with a minor breaking change, new features, and a number of bug fixes across selection, tables, markdown, and extensions.…
v0.43.0 is a monthly release with a minor breaking change, new features, and a number of bug fixes across selection, tables, markdown, and extensions. Notable highlights include a new useExtensionSignalValue hook, and CSS theme options for Yjs collaboration cursors.
Outside of the release artifact, we've refreshed the lexical.dev website thanks to @m-santanna (and inspired by design mockups from @ixahmedxi). Importantly this refresh includes a set of modern examples (examples/website-* and examples/agent-example) that are embedded on the front page and showcase current best practices.
@lexical/react nested editors now use asynchronous parent editor delegation when needed to match pre-0.42.0 legacy behavior.
@lexical/react - useExtensionSignalValue #8286A new @lexical/react/useExtensionSignalValue module is available for reading signal values from extension output within React components
Core:
IS_SAFARI browser detectionTextNodes when __state contains a different number of default values$insertNodes with $insertNodeIntoLeaf for consistent DecoratorNode behavior inside MarkNodeCode:
skipTransforms in CodeHighlighterPrism and CodeHighlighterShikiExtension:
@lexical/react/useExtensionSignalValue module for reading signals from ReactExamples:
Headless:
window.happyDOM.close() to ensure proper cleanupLink:
Markdown:
Playground:
isExactShortcutMatch for Dvorak keyboard compatibilitySelection:
$getSelectionStyleValueForProperty direction-independentTable:
Utils:
$insertNodeIntoLeaf edge case; update @preact/signals-core, hermes, and flow dependenciesYjs:
Infrastructure:
^7.3.2flow-bin to 0.306.0 and add incompatible-variance workaroundusing)Full Changelog: https://github.com/facebook/lexical/compare/v0.42.0...v0.43.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[lexical] Chore: Fix minimatch CVE-2026-26996 in example projects by @thatmichael85 in https://github.com/facebook/lexical/pull/8169
v0.42.0 is a monthly release with a huge number of fixes and features from a lot of new contributors. The most notable fixes are related to tables, links, extensions, and markdown. @lexical/eslint-plugin is now fully compatible with eslint 9+. The production builds are also now generated in an ascii-only format which may considerably reduce memory usage in some deployment environments.
@lexical/code #8198Prism highlighting now lives in @lexical/code-prism and the Prism related functionality in @lexical/code is now deprecated. Transitionally, there is a @lexical/code-core package which has the implementation of Lexical's code functionality without a Prism dependency.
Due to its experimental nature and incomplete implementation, the in-progress hasFitNestedTables functionality has been moved to the playground
lexical - $copyNode + LexicalNode.resetOnCopyNodeFrom & NodeState resetOnCopyNodeAfter $copyNode is used it now calls copiedNode.resetOnCopyNodeFrom(originalNode) which will reset every NodeState that has resetOnCopyNode: true in its configuration. Subclasses can override this method to reset other "ephemeral" state such as whether a ListNodeItem is checked or not.
Note that this does not influence serialization or copy and paste operations, it only affects calls to $copyNode.
@lexical/utils - $insertNodeIntoLeafThe current behavior RangeSelection.insertNodes can split an inline ElementNode (e.g. a LinkNode) when inserting content, even if that content is also inline and could be a child of the given node. $insertNodeIntoLeaf is now provided to insert a node without splitting any containing nodes.
Core:
Code:
@lexical/code-prism and add @lexical/code-core to provide a dependency that does not include Prism. @lexical/code remains backwards compatible with Prism included, but you should migrate to using highlighting from @lexical/code-shiki or @lexical/code-prism.Devtools:
Extension:
Markdown:
Link:
Eslint Plugin:
@lexical/eslint-pluginList:
React:
Table:
SELECTION_CHANGE_COMMAND and deselection handlerUtils:
Misc:
Infrastructure
Playground:
EditorThemeClasses by @levensta in https://github.com/facebook/lexical/pull/8190afterCloneFrom method to LinkNode/AutoLinkNode by @levensta in https://github.com/facebook/lexical/pull/8226Full Changelog: https://github.com/facebook/lexical/compare/v0.41.0...v0.42.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
⚠️ #8132 Breaking Change: Fix --lexical-indent-base-value CSS variable override
v0.41.0 is a monthly release with a huge number of fixes and features from a lot of new contributors. The most notable fixes are related to IME, non-ascii keyboard layouts, and markdown.
--lexical-indent-base-value CSS moved to root element #8132The --lexical-indent-base-value CSS custom property is now only read from the root element of the editor, so any CSS or code to set this value must target that rather than an indented element in the document. This allows the indent to be computed while the document is being rendered without layout thrashing.
Core
Extension
Rich Text
Link
$toggleLink should remove the whole link when selection is collapsedTable
Markdown
Playground
Full Changelog: https://github.com/facebook/lexical/compare/v0.40.0...v0.41.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
v0.40.0 is a monthly release primarily focusing on bug fixes and infrastructure such as the move from npm to pnpm.
v0.40.0 is a monthly release primarily focusing on bug fixes and infrastructure such as the move from npm to pnpm.
Some very notable changes include:
mergeRegister, addClassNames, removeClassNames) #8106RootNode.getTextContent() was fixed #8099Monorepo:
Link:
List:
Markdown:
Core:
Table:
Utils:
mergeRegister, addClassNames, removeClassNames to lexical packageReact:
Playground:
Full Changelog: https://github.com/facebook/lexical/compare/v0.39.0...v0.40.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →