diff options
author | Eric Bailey <git@esb.lol> | 2023-09-27 11:15:50 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-27 09:15:50 -0700 |
commit | b030d94a64e46ae9ac8bf0f4c2ad502b99d4adc1 (patch) | |
tree | 9eeaac27a61d152fd21ea59a514946d075b07dc6 /src/view/com/composer/text-input/web | |
parent | 6d4ad59416e81f437cbfc9f9a75eff2c8e1d8442 (diff) | |
download | voidsky-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.ts | 13 |
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) } |