diff --git a/app/components/remove_markdown/index.tsx b/app/components/remove_markdown/index.tsx index af9a3e7e1..d01e9a368 100644 --- a/app/components/remove_markdown/index.tsx +++ b/app/components/remove_markdown/index.tsx @@ -9,21 +9,24 @@ import {type StyleProp, Text, type TextStyle} from 'react-native'; import Emoji from '@components/emoji'; import {computeTextStyle} from '@utils/markdown'; +import ChannelMention from '../markdown/channel_mention'; + import AtMention from './at_mention'; -import type {MarkdownBaseRenderer, MarkdownEmojiRenderer, MarkdownTextStyles} from '@typings/global/markdown'; +import type {MarkdownBaseRenderer, MarkdownChannelMentionRenderer, MarkdownEmojiRenderer, MarkdownTextStyles} from '@typings/global/markdown'; type Props = { enableEmoji?: boolean; enableCodeSpan?: boolean; enableHardBreak?: boolean; enableSoftBreak?: boolean; + enableChannelLink?: boolean; baseStyle?: StyleProp; textStyle?: MarkdownTextStyles; value: string; }; -const RemoveMarkdown = ({enableEmoji, enableHardBreak, enableSoftBreak, enableCodeSpan, baseStyle, textStyle = {}, value}: Props) => { +const RemoveMarkdown = ({enableEmoji, enableChannelLink, enableHardBreak, enableSoftBreak, enableCodeSpan, baseStyle, textStyle = {}, value}: Props) => { const renderEmoji = useCallback(({emojiName, literal}: MarkdownEmojiRenderer) => { if (!enableEmoji) { return renderText({literal}); @@ -56,6 +59,16 @@ const RemoveMarkdown = ({enableEmoji, enableHardBreak, enableSoftBreak, enableCo ); }; + const renderChannelLink = ({context, channelName}: MarkdownChannelMentionRenderer) => { + return ( + + ); + }; + const renderCodeSpan = useCallback(({context, literal}: MarkdownBaseRenderer) => { if (!enableCodeSpan) { return renderText({literal}); @@ -88,7 +101,7 @@ const RemoveMarkdown = ({enableEmoji, enableHardBreak, enableSoftBreak, enableCo link: Renderer.forwardChildren, image: renderNull, atMention: renderAtMention, - channelLink: Renderer.forwardChildren, + channelLink: enableChannelLink ? renderChannelLink : Renderer.forwardChildren, emoji: renderEmoji, hashtag: Renderer.forwardChildren, latexinline: Renderer.forwardChildren, diff --git a/app/screens/global_threads/threads_list/thread/thread.tsx b/app/screens/global_threads/threads_list/thread/thread.tsx index a96197f58..c85a1e11b 100644 --- a/app/screens/global_threads/threads_list/thread/thread.tsx +++ b/app/screens/global_threads/threads_list/thread/thread.tsx @@ -219,6 +219,7 @@ const Thread = ({author, channel, location, post, teammateNameDisplay, testID, t