From 0fa7dcd58b9c96c12660c04fc4a5be063cfaaae6 Mon Sep 17 00:00:00 2001 From: Nick the Sick Date: Mon, 29 Jul 2024 13:00:06 +0200 Subject: [PATCH] fix(core): use correct position for getMarksBetween --- .changeset/real-kiwis-double.md | 5 +++++ packages/core/src/helpers/getMarksBetween.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/real-kiwis-double.md diff --git a/.changeset/real-kiwis-double.md b/.changeset/real-kiwis-double.md new file mode 100644 index 0000000000..d10f60149c --- /dev/null +++ b/.changeset/real-kiwis-double.md @@ -0,0 +1,5 @@ +--- +"@tiptap/core": patch +--- + +This fixes a discrepency between `getMarksBetween` and `isActive(markName)` where the position used for getMarksBetween was off by one diff --git a/packages/core/src/helpers/getMarksBetween.ts b/packages/core/src/helpers/getMarksBetween.ts index 177b9bbcee..99c85940a0 100644 --- a/packages/core/src/helpers/getMarksBetween.ts +++ b/packages/core/src/helpers/getMarksBetween.ts @@ -12,7 +12,7 @@ export function getMarksBetween(from: number, to: number, doc: ProseMirrorNode): .resolve(from) .marks() .forEach(mark => { - const $pos = doc.resolve(from - 1) + const $pos = doc.resolve(from) const range = getMarkRange($pos, mark.type) if (!range) {