import React, { memo, useEffect, useState } from 'react'; import { View } from 'react-native'; import { CustomIcon } from '../../lib/Icons'; import styles from './styles'; import { themes } from '../../constants/colors'; import I18n from '../../i18n'; import Markdown from '../markdown'; export interface IMessageRepliedThread { tmid: string; tmsg: string; id: string; isHeader: boolean; theme: string; fetchThreadName: Function; isEncrypted: boolean; } const RepliedThread = memo(({ tmid, tmsg, isHeader, fetchThreadName, id, isEncrypted, theme }: IMessageRepliedThread) => { if (!tmid || !isHeader) { return null; } const [msg, setMsg] = useState(isEncrypted ? I18n.t('Encrypted_message') : tmsg); const fetch = async() => { const threadName = await fetchThreadName(tmid, id); setMsg(threadName); }; useEffect(() => { if (!msg) { fetch(); } }, []); if (!msg) { return null; } return ( {/*@ts-ignore*/} ); }); RepliedThread.displayName = 'MessageRepliedThread'; export default RepliedThread;