From 8833e578f1d226ee3ae64260b755a699243cefe8 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Thu, 21 Sep 2023 21:16:59 -0400 Subject: [PATCH] fix: JS error hitting up or down with entire document selection closes #5863 --- shared/editor/extensions/Mermaid.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/shared/editor/extensions/Mermaid.ts b/shared/editor/extensions/Mermaid.ts index 302936cd7..a0c960113 100644 --- a/shared/editor/extensions/Mermaid.ts +++ b/shared/editor/extensions/Mermaid.ts @@ -205,7 +205,9 @@ export default function Mermaid({ switch (event.key) { case "ArrowDown": { const { selection } = view.state; - const $pos = view.state.doc.resolve(selection.from + 1); + const $pos = view.state.doc.resolve( + Math.min(selection.from + 1, view.state.doc.nodeSize) + ); const nextBlock = $pos.nodeAfter; if ( @@ -229,7 +231,9 @@ export default function Mermaid({ } case "ArrowUp": { const { selection } = view.state; - const $pos = view.state.doc.resolve(selection.from - 1); + const $pos = view.state.doc.resolve( + Math.max(0, selection.from - 1) + ); const prevBlock = $pos.nodeBefore; if (