|
|
|
|
@ -1,5 +1,5 @@
|
|
|
|
|
import { useRef, useEffect, useState, forwardRef, memo } from 'react';
|
|
|
|
|
import { App, Flex, List, Button, } from 'antd';
|
|
|
|
|
import { App, Flex, List, Button, Image } from 'antd';
|
|
|
|
|
import { LoadingOutlined } from '@ant-design/icons';
|
|
|
|
|
import { MessageBox } from 'react-chat-elements';
|
|
|
|
|
import { MESSAGE_PAGE_SIZE, fetchMessagesHistory } from '@/actions/ConversationActions';
|
|
|
|
|
@ -9,6 +9,7 @@ import { useShallow } from 'zustand/react/shallow';
|
|
|
|
|
import MergeConversationTo from './MergeConversationTo';
|
|
|
|
|
import BubbleIM from '../Online/Components/BubbleIM';
|
|
|
|
|
import BubbleEmail from '../Online/Components/BubbleEmail';
|
|
|
|
|
import { ERROR_IMG } from '@/config';
|
|
|
|
|
|
|
|
|
|
const BIG_PAGE_SIZE = MESSAGE_PAGE_SIZE * 20;
|
|
|
|
|
const MessagesList = ({ ...listProps }) => {
|
|
|
|
|
@ -173,7 +174,7 @@ const MessagesList = ({ ...listProps }) => {
|
|
|
|
|
{headerObj ? (
|
|
|
|
|
<div className='text-neutral-500 text-center'>
|
|
|
|
|
{'text' === (headerObj?.parameters?.[0]?.type || '').toLowerCase() && <div>{headerObj.text}</div>}
|
|
|
|
|
{'image' === (headerObj?.parameters?.[0]?.type || '').toLowerCase() && <img src={headerObj.parameters[0].image.link} height={100}></img>}
|
|
|
|
|
{'image' === (headerObj?.parameters?.[0]?.type || '').toLowerCase() && <Image src={headerObj.parameters[0].image.link} height={100} fallback={ERROR_IMG}></Image>}
|
|
|
|
|
{['document', 'video'].includes((headerObj?.parameters?.[0]?.type || '').toLowerCase()) && (
|
|
|
|
|
<a href={headerObj.parameters[0][headerObj.parameters[0].type].link} target='_blank' key={headerObj.format} rel='noreferrer' className='text-sm'>
|
|
|
|
|
[ {headerObj.parameters[0].type} ]
|
|
|
|
|
|