import { Image as Img, Bubble, FileCard, ScrollView, Typing } from '@samagra-x/stencil-chatui'; import moment from 'moment'; import { JsonToTable } from '../json-to-table'; import SpeakerIcon from './assets/speaker.svg'; import MsgThumbsUp from './assets/msg-thumbs-up'; import MsgThumbsDown from './assets/msg-thumbs-down'; import styles from './index.module.css'; export const UpdatedBubble = ({ message, themeColor, chatUi, theme, handleAudio, feedbackHandler, getLists, reaction, }: any) => { const { content, type } = message; switch (type) { case 'loader': return ; case 'text': return (
{content?.text}{' '} {/* { content?.data?.position === 'right' ? null : !content?.data?.isEnd && } */}
{moment(content?.data?.sentTimestamp || content?.data?.repliedTimestamp).format( 'hh:mm A DD/MM/YYYY', )}
{content?.data?.btns ? (
) : ( content?.data?.position === 'left' && (
{chatUi.allowTextToSpeech && (

{chatUi.textToSpeechLabel}

)} {chatUi.allowFeedback && (
feedbackHandler({ like: 1, msgId: content?.data?.messageId, }) } >

{chatUi.positiveFeedbackText}

feedbackHandler({ like: -1, msgId: content?.data?.messageId, }) } >

{chatUi.negativeFeedbackText}

)}
) )}
); case 'image': { const url = content?.data?.payload?.media?.url || content?.data?.imageUrl; return ; } case 'file': { const url = content?.data?.payload?.media?.url || content?.data?.fileUrl; return ; } case 'video': { const url = content?.data?.payload?.media?.url || content?.data?.videoUrl; const videoId = url.split('=')[1]; return ( <>
{moment(content?.data?.sentTimestamp || content?.data?.repliedTimestamp).format( 'hh:mm A DD/MM/YYYY', )}
); } case 'options': { return ( <>
{content?.data?.payload?.text}
{getLists({ choices: content?.data?.payload?.buttonChoices ?? content?.data?.choices, })}
); } case 'table': { return (
{`\n` + JSON.parse(content?.text)?.generalAdvice + `\n\n` + JSON.parse(content?.text)?.buttonDescription} {getLists({ choices: JSON.parse(content?.text)?.buttons, })}
); } default: return ( // @ts-ignore