import React, { useCallback, useMemo, forwardRef } from 'react'; import { Modal, Box } from '@rocket.chat/fuselage'; import { useTranslation } from '../../../../client/contexts/TranslationContext'; import VerticalBar from '../../../../client/components/VerticalBar'; type ThreadViewProps = { title: string; expanded: boolean; following: boolean; onToggleExpand: (expanded: boolean) => void; onToggleFollow: (following: boolean) => void; onClose: () => void; }; const ThreadView = forwardRef(({ title, expanded, following, onToggleExpand, onToggleFollow, onClose, }, ref) => { const style = useMemo(() => (document.dir === 'rtl' ? { left: 0, borderTopRightRadius: 4, } : { right: 0, borderTopLeftRadius: 4, }), []); const t = useTranslation(); const expandLabel = expanded ? t('collapse') : t('expand'); const expandIcon = expanded ? 'arrow-collapse' : 'arrow-expand'; const handleExpandActionClick = useCallback(() => { onToggleExpand(expanded); }, [expanded, onToggleExpand]); const followLabel = following ? t('Following') : t('Not_Following'); const followIcon = following ? 'bell' : 'bell-off'; const handleFollowActionClick = useCallback(() => { onToggleFollow(following); }, [following, onToggleFollow]); return <> {expanded && } ; }); export default ThreadView;