Merge branch 'only-emoji-fix' into 'main'

StatusContent: fix isOnlyEmoji on multiple lines

See merge request soapbox-pub/soapbox!3267
This commit is contained in:
Alex Gleason 2024-11-19 04:17:06 +00:00
commit 9e74900296
2 changed files with 3 additions and 3 deletions

View File

@ -53,7 +53,7 @@ const StatusContent: React.FC<IStatusContent> = ({
const node = useRef<HTMLDivElement>(null); const node = useRef<HTMLDivElement>(null);
const isOnlyEmoji = useMemo(() => { const isOnlyEmoji = useMemo(() => {
const textContent = new DOMParser().parseFromString(status.content, 'text/html').body.firstChild?.textContent ?? ''; const textContent = new DOMParser().parseFromString(status.content, 'text/html').body.textContent ?? '';
return Boolean(/^\p{Extended_Pictographic}+$/u.test(textContent) && (graphemesplit(textContent).length <= BIG_EMOJI_LIMIT)); return Boolean(/^\p{Extended_Pictographic}+$/u.test(textContent) && (graphemesplit(textContent).length <= BIG_EMOJI_LIMIT));
}, [status.content]); }, [status.content]);

View File

@ -99,8 +99,8 @@ const ChatMessage = (props: IChatMessage) => {
&& lastReadMessageTimestamp >= new Date(chatMessage.created_at); && lastReadMessageTimestamp >= new Date(chatMessage.created_at);
const isOnlyEmoji = useMemo(() => { const isOnlyEmoji = useMemo(() => {
const textContent = new DOMParser().parseFromString(content, 'text/html').body.firstChild?.textContent; const textContent = new DOMParser().parseFromString(content, 'text/html').body.textContent ?? '';
return Boolean(textContent && /^\p{Extended_Pictographic}+$/u.test(textContent) && (graphemesplit(textContent).length <= BIG_EMOJI_LIMIT)); return Boolean(/^\p{Extended_Pictographic}+$/u.test(textContent) && (graphemesplit(textContent).length <= BIG_EMOJI_LIMIT));
}, [content]); }, [content]);
const emojiReactionRows = useMemo(() => { const emojiReactionRows = useMemo(() => {