Skip to content

Commit 9cc785c

Browse files
committed
(refactor) add message file css helper
1 parent 2a0457b commit 9cc785c

File tree

7 files changed

+57
-38
lines changed

7 files changed

+57
-38
lines changed
Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,8 @@
11
.vac-image-container {
2-
.vac-file-message {
2+
.vac-file-container {
33
height: 60px;
44
width: 60px;
5-
display: flex;
6-
align-content: center;
7-
justify-content: center;
8-
flex-wrap: wrap;
9-
text-align: center;
10-
background: var(--chat-bg-color-input);
11-
border: var(--chat-border-style-input);
12-
border-radius: 4px;
135
margin: 3px 0 5px;
14-
padding: 10px;
156
cursor: pointer;
167
transition: all 0.6s;
178

@@ -23,11 +14,5 @@
2314
height: 30px;
2415
width: 30px;
2516
}
26-
27-
.vac-text-extension {
28-
font-size: 12px;
29-
color: var(--chat-message-color-file-extension);
30-
margin-top: -2px;
31-
}
3217
}
3318
}

src/lib/Message/MessageFiles/MessageFiles.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
</div>
1616

1717
<div v-for="(file, idx) in otherFiles" :key="idx + 'a'">
18-
<div class="vac-file-message" @click.stop="openFile(file, 'download')">
18+
<div class="vac-file-container" @click.stop="openFile(file, 'download')">
1919
<div class="vac-svg-button">
2020
<slot name="document-icon">
2121
<svg-icon name="document" />

src/lib/Room/RoomFiles/RoomFiles.scss

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -36,26 +36,6 @@
3636
.vac-file-container {
3737
height: 80px;
3838
width: 80px;
39-
display: flex;
40-
align-content: center;
41-
justify-content: center;
42-
flex-wrap: wrap;
43-
text-align: center;
44-
background: var(--chat-bg-color-input);
45-
border: var(--chat-border-style-input);
46-
border-radius: 4px;
47-
padding: 10px;
48-
49-
svg {
50-
height: 28px;
51-
width: 28px;
52-
}
53-
54-
.vac-text-extension {
55-
font-size: 14px;
56-
color: var(--chat-message-color-file-extension);
57-
margin-top: -2px;
58-
}
5939
}
6040

6141
.vac-icon-remove {

src/lib/Room/RoomFiles/RoomFiles.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
<source :src="file.localUrl || file.url" />
3030
</video>
3131

32-
<div v-else-if="file" class="vac-file-container">
32+
<div v-else class="vac-file-container">
3333
<div class="vac-icon-file">
3434
<slot name="file-icon">
3535
<svg-icon name="file" />

src/lib/Room/RoomMessageReply/RoomMessageReply.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,10 @@
5050
.vac-audio-reply {
5151
margin-right: 10px;
5252
}
53+
54+
.vac-file-container {
55+
max-width: 80px;
56+
}
5357
}
5458

5559
@media only screen and (max-width: 768px) {

src/lib/Room/RoomMessageReply/RoomMessageReply.vue

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,11 @@
2626
</div>
2727

2828
<img v-if="isImageFile" :src="firstFile.url" class="vac-image-reply" />
29+
2930
<video v-else-if="isVideoFile" controls class="vac-image-reply">
3031
<source :src="firstFile.url" />
3132
</video>
33+
3234
<audio-player
3335
v-else-if="isAudioFile"
3436
:src="firstFile.url"
@@ -38,6 +40,23 @@
3840
<slot :name="name" v-bind="data" />
3941
</template>
4042
</audio-player>
43+
44+
<div v-else-if="isOtherFile" class="vac-image-reply vac-file-container">
45+
<div class="vac-icon-file">
46+
<slot name="file-icon">
47+
<svg-icon name="file" />
48+
</slot>
49+
</div>
50+
<div class="vac-text-ellipsis">
51+
{{ firstFile.name }}
52+
</div>
53+
<div
54+
v-if="firstFile.extension"
55+
class="vac-text-ellipsis vac-text-extension"
56+
>
57+
{{ firstFile.extension }}
58+
</div>
59+
</div>
4160
</div>
4261

4362
<div class="vac-icon-reply">
@@ -92,6 +111,14 @@ export default {
92111
},
93112
isAudioFile() {
94113
return isAudioFile(this.firstFile)
114+
},
115+
isOtherFile() {
116+
return (
117+
this.messageReply.files &&
118+
!this.isAudioFile &&
119+
!this.isVideoFile &&
120+
!this.isAudioFile
121+
)
95122
}
96123
}
97124
}

src/styles/helper.scss

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,3 +121,26 @@
121121
color: var(--chat-message-color-tag);
122122
cursor: pointer;
123123
}
124+
125+
.vac-file-container {
126+
display: flex;
127+
align-content: center;
128+
justify-content: center;
129+
flex-wrap: wrap;
130+
text-align: center;
131+
background: var(--chat-bg-color-input);
132+
border: var(--chat-border-style-input);
133+
border-radius: 4px;
134+
padding: 10px;
135+
136+
svg {
137+
height: 28px;
138+
width: 28px;
139+
}
140+
141+
.vac-text-extension {
142+
font-size: 14px;
143+
color: var(--chat-message-color-file-extension);
144+
margin-top: -2px;
145+
}
146+
}

0 commit comments

Comments
 (0)