diff --git a/src/views/im/home/pages/conversation/components/message/ReplyPreview.vue b/src/views/im/home/pages/conversation/components/message/ReplyPreview.vue
index 463590bf1..0495fa019 100644
--- a/src/views/im/home/pages/conversation/components/message/ReplyPreview.vue
+++ b/src/views/im/home/pages/conversation/components/message/ReplyPreview.vue
@@ -68,7 +68,15 @@
-
+
+
+ [频道]
+
+ {{ parsedPayload.title }}
+
+
+
+
{
/** quote.content 解析一次缓存,让多个 computed 复用,长会话每条引用气泡少一次 JSON.parse */
type AnyQuotePayload = Partial<
- TextMessage & ImageMessage & FileMessage & AudioMessage & VideoMessage & CardMessage & FaceMessage
+ TextMessage &
+ ImageMessage &
+ FileMessage &
+ AudioMessage &
+ VideoMessage &
+ CardMessage &
+ FaceMessage &
+ MaterialMessage
>
const parsedPayload = computed(() => parseMessage(props.quote.content))
@@ -172,6 +188,7 @@ const isFile = computed(() => props.quote.type === ImMessageType.FILE)
const isVoice = computed(() => props.quote.type === ImMessageType.VOICE)
const isCard = computed(() => props.quote.type === ImMessageType.CARD)
const isFace = computed(() => props.quote.type === ImMessageType.FACE)
+const isMaterial = computed(() => props.quote.type === ImMessageType.MATERIAL)
/** 文本超过 MAX_TEXT_PREVIEW_LEN 截断,长内容不撑爆引用块 */
const textPreview = computed(() => {
@@ -184,7 +201,7 @@ const textPreview = computed(() => {
/** 文件 icon:按扩展名挑色,跟主气泡渲染同源 */
const fileIcon = computed(() => getFileIconInfo(parsedPayload.value?.name))
-/** 缩略图 URL:图片 / 视频 / 表情贴图从 quote.content 直接取,不依赖本地缓存 */
+/** 缩略图 URL:图片 / 视频 / 表情贴图 / 频道素材封面从 quote.content 直接取,不依赖本地缓存 */
const thumbnailUrl = computed(() => {
if (isRecalled.value) {
return undefined
@@ -193,7 +210,7 @@ const thumbnailUrl = computed(() => {
if (type === ImMessageType.IMAGE) {
return parsedPayload.value?.thumbnailUrl || parsedPayload.value?.url
}
- if (type === ImMessageType.VIDEO) {
+ if (type === ImMessageType.VIDEO || type === ImMessageType.MATERIAL) {
return parsedPayload.value?.coverUrl
}
if (type === ImMessageType.FACE) {
diff --git a/src/views/im/manager/channel/message/index.vue b/src/views/im/manager/channel/message/index.vue
index 8e132db70..cdff73f99 100644
--- a/src/views/im/manager/channel/message/index.vue
+++ b/src/views/im/manager/channel/message/index.vue
@@ -38,6 +38,16 @@
+
+
+
+
+