getReplyImageHolder function
dynamic
getReplyImageHolder(
- BuildContext context,
- ChatMessageModel chatMessageModel,
- ReplyParentChatMessage? replyChatMessageModel,
- MediaChatMessage? mediaChatMessage,
- double size,
- bool isNotChatItem,
- LocationChatMessage? locationChatMessage,
Implementation
getReplyImageHolder(
BuildContext context,
ChatMessageModel chatMessageModel,
ReplyParentChatMessage? replyChatMessageModel,
MediaChatMessage? mediaChatMessage,
double size,
bool isNotChatItem,
LocationChatMessage? locationChatMessage) {
var isReply = false;
if (mediaChatMessage != null || locationChatMessage != null) {
isReply = true;
}
switch (isReply
? mediaChatMessage == null
? Constants.mLocation
: mediaChatMessage.messageType.checkNull().toUpperCase()
: replyChatMessageModel?.messageType ??
chatMessageModel.messageType.checkNull().toUpperCase()) {
case Constants.mImage:
// debugPrint("reply header--> IMAGE");
return ClipRRect(
borderRadius: const BorderRadius.only(
topRight: Radius.circular(5), bottomRight: Radius.circular(5)),
child: imageFromBase64String(
isReply
? mediaChatMessage!.mediaThumbImage
: replyChatMessageModel?.mediaChatMessage?.mediaThumbImage ??
chatMessageModel.mediaChatMessage!.mediaThumbImage
.checkNull(),
context,
size,
size),
);
case Constants.mLocation:
// debugPrint("location mesg--> ${locationChatMessage?.toJson().toString()}");
// debugPrint("location mesg--> ${chatMessageModel.locationChatMessage?.toJson().toString()}");
return getLocationImage(
isReply
? locationChatMessage
: replyChatMessageModel?.locationChatMessage ??
chatMessageModel.locationChatMessage,
size,
size,
isSelected: true);
case Constants.mVideo:
return ClipRRect(
borderRadius: const BorderRadius.only(
topRight: Radius.circular(5), bottomRight: Radius.circular(5)),
child: imageFromBase64String(
isReply
? mediaChatMessage!.mediaThumbImage
: replyChatMessageModel?.mediaChatMessage?.mediaThumbImage ??
chatMessageModel.mediaChatMessage!.mediaThumbImage,
context,
size,
size),
);
case Constants.mDocument:
return isNotChatItem
? SizedBox(height: size)
: Container(
width: size,
height: size,
decoration: const BoxDecoration(
borderRadius: BorderRadius.only(
topRight: Radius.circular(10),
bottomRight: Radius.circular(10)),
color: Colors.white,
),
child: Center(
child: getImageHolder(
isReply
? mediaChatMessage!.mediaFileName
: replyChatMessageModel
?.mediaChatMessage?.mediaFileName ??
chatMessageModel.mediaChatMessage!.mediaFileName,
30),
));
case Constants.mAudio:
return isNotChatItem
? SizedBox(height: size)
: ClipRRect(
borderRadius: const BorderRadius.only(
topRight: Radius.circular(5),
bottomRight: Radius.circular(5)),
child: Container(
height: size,
width: size,
color: audioBgColor,
child: Center(
child: SvgPicture.asset(
package: package,
(mediaChatMessage?.isAudioRecorded).checkNull()
? mAudioRecordIcon
: mAudioIcon,
fit: BoxFit.contain,
colorFilter:
const ColorFilter.mode(Colors.white, BlendMode.srcIn),
height: 18,
),
),
),
);
default:
// debugPrint("reply header--> DEFAULT");
return SizedBox(
height: size,
);
}
}