Skip to content

Commit 771c9cf

Browse files
committed
(fix) message replies with other files
1 parent ff9f4a9 commit 771c9cf

File tree

3 files changed

+35
-4
lines changed

3 files changed

+35
-4
lines changed

src/lib/Message/MessageReply/MessageReply.scss

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,9 @@
3434
font-size: 12px;
3535
color: var(--chat-message-color-reply-content);
3636
}
37+
38+
.vac-file-container {
39+
height: 60px;
40+
width: 60px;
41+
}
3742
}

src/lib/Message/MessageReply/MessageReply.vue

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,23 @@
3030
</template>
3131
</audio-player>
3232

33+
<div v-else-if="isOtherFile" class="vac-file-container">
34+
<div>
35+
<slot name="file-icon">
36+
<svg-icon name="file" />
37+
</slot>
38+
</div>
39+
<div class="vac-text-ellipsis">
40+
{{ firstFile.name }}
41+
</div>
42+
<div
43+
v-if="firstFile.extension"
44+
class="vac-text-ellipsis vac-text-extension"
45+
>
46+
{{ firstFile.extension }}
47+
</div>
48+
</div>
49+
3350
<div class="vac-reply-content">
3451
<format-message
3552
:content="message.replyMessage.content"
@@ -47,6 +64,7 @@
4764
</template>
4865

4966
<script>
67+
import SvgIcon from '../../../components/SvgIcon/SvgIcon'
5068
import FormatMessage from '../../../components/FormatMessage/FormatMessage'
5169
5270
import AudioPlayer from '../AudioPlayer/AudioPlayer'
@@ -59,7 +77,7 @@ const {
5977
6078
export default {
6179
name: 'MessageReply',
62-
components: { AudioPlayer, FormatMessage },
80+
components: { AudioPlayer, SvgIcon, FormatMessage },
6381
6482
props: {
6583
message: { type: Object, required: true },
@@ -75,7 +93,7 @@ export default {
7593
return replyUser ? replyUser.username : ''
7694
},
7795
firstFile() {
78-
return this.message.replyMessage.files
96+
return this.message.replyMessage.files?.length
7997
? this.message.replyMessage.files[0]
8098
: {}
8199
},
@@ -87,6 +105,14 @@ export default {
87105
},
88106
isVideo() {
89107
return isVideoFile(this.firstFile)
108+
},
109+
isOtherFile() {
110+
return (
111+
this.message.replyMessage.files?.length &&
112+
!this.isAudio &&
113+
!this.isVideo &&
114+
!this.isImage
115+
)
90116
}
91117
}
92118
}

src/lib/Room/RoomMessageReply/RoomMessageReply.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ export default {
101101
102102
computed: {
103103
firstFile() {
104-
return this.messageReply.files ? this.messageReply.files[0] : {}
104+
return this.messageReply.files?.length ? this.messageReply.files[0] : {}
105105
},
106106
isImage() {
107107
return isImageFile(this.firstFile)
@@ -114,7 +114,7 @@ export default {
114114
},
115115
isOtherFile() {
116116
return (
117-
this.messageReply.files &&
117+
this.messageReply.files?.length &&
118118
!this.isAudio &&
119119
!this.isVideo &&
120120
!this.isImage

0 commit comments

Comments
 (0)