about summary refs log tree commit diff
path: root/src/view/com/composer/text-input/web
diff options
context:
space:
mode:
authorEric Bailey <git@esb.lol>2023-09-27 11:15:50 -0500
committerGitHub <noreply@github.com>2023-09-27 09:15:50 -0700
commitb030d94a64e46ae9ac8bf0f4c2ad502b99d4adc1 (patch)
tree9eeaac27a61d152fd21ea59a514946d075b07dc6 /src/view/com/composer/text-input/web
parent6d4ad59416e81f437cbfc9f9a75eff2c8e1d8442 (diff)
downloadvoidsky-b030d94a64e46ae9ac8bf0f4c2ad502b99d4adc1.tar.zst
fix link highlighting with mention present (#1544)
Diffstat (limited to 'src/view/com/composer/text-input/web')
-rw-r--r--src/view/com/composer/text-input/web/LinkDecorator.ts13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/view/com/composer/text-input/web/LinkDecorator.ts b/src/view/com/composer/text-input/web/LinkDecorator.ts
index 531e8d5a0..19945de08 100644
--- a/src/view/com/composer/text-input/web/LinkDecorator.ts
+++ b/src/view/com/composer/text-input/web/LinkDecorator.ts
@@ -16,7 +16,6 @@
 
 import {Mark} from '@tiptap/core'
 import {Plugin, PluginKey} from '@tiptap/pm/state'
-import {findChildren} from '@tiptap/core'
 import {Node as ProsemirrorNode} from '@tiptap/pm/model'
 import {Decoration, DecorationSet} from '@tiptap/pm/view'
 import {isValidDomain} from 'lib/strings/url-helpers'
@@ -36,20 +35,20 @@ export const LinkDecorator = Mark.create({
 function getDecorations(doc: ProsemirrorNode) {
   const decorations: Decoration[] = []
 
-  findChildren(doc, node => node.type.name === 'paragraph').forEach(
-    paragraphNode => {
-      const textContent = paragraphNode.node.textContent
+  doc.descendants((node, pos) => {
+    if (node.isText && node.text) {
+      const textContent = node.textContent
 
       // links
       iterateUris(textContent, (from, to) => {
         decorations.push(
-          Decoration.inline(paragraphNode.pos + from, paragraphNode.pos + to, {
+          Decoration.inline(pos + from, pos + to, {
             class: 'autolink',
           }),
         )
       })
-    },
-  )
+    }
+  })
 
   return DecorationSet.create(doc, decorations)
 }