unstale

npm / slate-dom

slate-dom

What changed in slate-dom 0.119 to 0.146, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.

5 breaking1 security14 new APIs and options1 performance2 behavior and defaults22 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

slate-dom 0.1462 changes

New APIs and options 1

  • Adds a tree-walking API to find a node's path, returning undefined when the node is absent; it works without slate-react.

    0.146.0release notes

Fixes and other changes 1

  • Uses Node.findPath as a fallback when rendered node maps are stale.

    0.146.0release notes

slate-dom 0.1429 changes

Breaking changes 2

  • Multi-line plain-text paste now emits an insert_node per middle line instead of a split_node per line, affecting code that matches operation types in apply.

    0.142.0release notes

  • Multi-line plain-text paste outside inlines now calls insertFragment once, so overrides receive these pastes instead of insertText overrides; single-line pastes still use insertText.

    0.142.0release notes

New APIs and options 4

  • Adds a DOM point lookup that returns null instead of throwing when a point cannot be found.

    0.142.0release notes

  • Adds a DOM range lookup that returns null instead of throwing when a range cannot be found.

    0.142.0release notes

  • Adds an event range lookup that returns null instead of throwing when a range cannot be found.

    0.142.0release notes

  • Adds an error handler for broken DOM rendering contracts; errors are passed to the browser's reportError by default.

    0.142.0release notes

Performance 1

  • When pasting multiple lines inside an inline, the middle lines are inserted with one insertNodes call instead of one split per line.

    0.142.0release notes

Behavior and default changes 1

  • Every pasted line now receives the block properties and marks at the caret, including pending editor.marks.

    0.142.0release notes

Fixes and other changes 1

  • Fixes the beforeinput support check so legacy Chrome 75 and older uses the intended beforeinput fallback.

    0.142.0release notes

slate-dom 0.1402 changes

Breaking changes 1

  • When the browser resolves a drop position outside the editor, dropped data goes to the current selection, or the end of the document if there is no selection; internally dragged content stays where it is.

    0.140.0release notes

New APIs and options 1

  • Gained a suppressThrow option that returns null when the range cannot be resolved.

    0.140.0release notes

slate-dom 0.1364 changes

Breaking changes 1

  • Includes text that an input method is still composing.

    0.136.0release notes

New APIs and options 2

  • Returns the range of the word around a point within its block; words can cross mark changes and inline links but stop at voids.

    0.136.0release notes

  • Lets you define your own word characters for word detection.

    0.136.0release notes

Behavior and default changes 1

  • Word deletion, movement, and Editor.before/after/positions use Intl.Segmenter where available, so Chinese, Japanese, and Thai text without spaces is handled one word at a time.

    0.136.0release notes

slate-dom 0.1343 changes

New APIs and options 1

  • Adds Editor.hasRange to core; DOMEditor.hasRange and ReactEditor.hasRange use it, falling back to the path check with older Slate versions.

    0.134.0release notes

Fixes and other changes 2

  • Fixes typing immediately after toggling a mark with a collapsed selection: the caret no longer moves past the previous leaf, closing the soft keyboard, and composition into the new marked text is no longer interrupted.

    0.134.0release notes

  • Copies preserve list containers and list items when a selection spans list items, including nested lists and inline void boundaries; copies within one item retain their existing HTML and plain text.

    0.134.0release notes

slate-dom 0.1335 changes

Breaking changes 1

  • Input, selection, and history events from native contenteditable regions nested inside non-editable containers no longer reach the surrounding Slate editor; Slate text and event hosts remain preserved inside custom editable islands.

    0.133.5release notes

Fixes and other changes 4

  • Returns the correct path when called after an operation but before the editor re-renders, such as in onChange, instead of throwing or returning the old path.

    0.133.6release notes

  • Nodes shared through initialValue are copied so two Slate components given the same value render and edit independently instead of throwing.

    0.133.6release notes

  • Keeps the Firefox caret on the new line without adding zero-width characters to the document, while preserving selection offsets and copied text around the extra rendering newline.

    0.133.5release notes

  • When deleting to the start of a line produces an empty range, deletion falls back to deleting backward by character, allowing empty blocks and block starts to merge with preceding content.

    0.133.1release notes

slate-dom 0.1321 changes

Fixes and other changes 1

  • Copying text containing inline voids, such as mentions, no longer puts each void on its own line in plain text.

    0.132.0release notes

slate-dom 0.1312 changes

Fixes and other changes 2

  • Copying an empty line now produces one blank line in plain text instead of two.

    0.131.0release notes

  • Copying text inside an inline element now keeps that element in the copied HTML, preserving links when pasting into other apps or HTML-based paste handlers.

    0.131.0release notes

slate-dom 0.1302 changes

Fixes and other changes 2

  • Empty blocks are preserved as <br> in copied HTML, preventing pasted content from losing empty lines in Word and other rich-text targets.

    0.130.1release notes

  • Copies node objects already in a document or inserted before, so each position gets its own object and key; the first insertion keeps its object identity.

    0.130.0release notes

slate-dom 0.1296 changes

New APIs and options 1

  • Adds a check for whether the editor has a DOM element.

    0.129.0release notes

Fixes and other changes 5

  • Reads data-slate-fragment from an HTML attribute only when pasting, so pasted text containing that string no longer makes the paste fail.

    0.129.0release notes

  • Keeps the editor's selection when focusing with a void selected by applying the DOM selection after focusing the editable.

    0.129.0release notes

  • Returns false for an editor that is not mounted instead of throwing.

    0.129.0release notes

  • Resolves drop positions inside shadow DOM by passing the editor's shadow root to caretPositionFromPoint where supported.

    0.129.0release notes

  • Keeps a forward DOM selection ending inside a block void instead of unhanging it to the end of the previous block.

    0.129.0release notes

slate-dom 0.1261 changes

Fixes and other changes 1

  • toSlatePoint now respects suppressThrow when toSlateNode throws, preventing those errors from propagating when suppression is enabled.

    0.126.0release notes

slate-dom 0.1243 changes

Security 1

  • Property accessors are hardened against untrusted keys.

    0.124.1release notes

Fixes and other changes 2

  • Corrects the argument types for the compare and merge options.

    0.124.1release notes

  • Fixes text node lookup for toSlatePoint.

    0.124.0release notes

slate-dom 0.1234 changes

New APIs and options 4

  • Adds an efficient type discriminator for paths; use it instead of Path.isPath whenever possible.

    0.123.0release notes

  • Adds an efficient type discriminator for points; use it instead of Point.isPoint whenever possible.

    0.123.0release notes

  • Adds an efficient type discriminator for ranges; use it instead of Range.isRange whenever possible.

    0.123.0release notes

  • Adds an efficient type discriminator for spans; use it instead of Span.isSpan whenever possible.

    0.123.0release notes

slate-dom 0.1191 changes

Fixes and other changes 1

  • Fixes an editor crash when the editor is inside Shadow DOM and the user types on Android.

    0.119.0release notes