diff --git a/.changeset/wild-singers-confess.md b/.changeset/wild-singers-confess.md new file mode 100644 index 000000000..ab9b17108 --- /dev/null +++ b/.changeset/wild-singers-confess.md @@ -0,0 +1,5 @@ +--- +'slate': patch +--- + +Revert to previous position behavior around inline voids diff --git a/packages/slate/src/interfaces/editor.ts b/packages/slate/src/interfaces/editor.ts index 4d2b4aa1d..14d90e1d6 100644 --- a/packages/slate/src/interfaces/editor.ts +++ b/packages/slate/src/interfaces/editor.ts @@ -1306,9 +1306,6 @@ export const Editor: EditorInterface = { // then we will iterate over their content. if (!voids && editor.isVoid(node)) { yield Editor.start(editor, path) - // It's possible the start of the range we're iterating over is in a void, in which case - // we want to make sure we don't incorrectly yield the start of a subsequent text node for unit !== 'offset' - isNewBlock = false continue } diff --git a/packages/slate/test/interfaces/Editor/positions/range/start-in-void.tsx b/packages/slate/test/interfaces/Editor/positions/range/start-in-void.tsx deleted file mode 100644 index 5fdf97b66..000000000 --- a/packages/slate/test/interfaces/Editor/positions/range/start-in-void.tsx +++ /dev/null @@ -1,31 +0,0 @@ -/** @jsx jsx */ -import { Editor } from 'slate' -import { jsx } from '../../../..' - -export const input = ( - - - one - - - - two - - -) -export const test = editor => { - return Array.from( - Editor.positions(editor, { - at: { - anchor: { path: [0, 1, 0], offset: 0 }, - focus: { path: [0, 2], offset: 2 }, - }, - unit: 'character', - }) - ) -} -export const output = [ - { path: [0, 1, 0], offset: 0 }, - { path: [0, 2], offset: 1 }, - { path: [0, 2], offset: 2 }, -]