@aochuang/client-sdk 1.0.297 → 1.0.299
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/chat-editor/chat-editor.vue +11 -2
- package/components/chat-editor/utils.js +24 -10
- package/components/chat-panel/chat-panel-box.vue +33 -7
- package/components/wechat-chat-control/quote-message/quote-message.vue +1 -1
- package/components/wechat-chat-panel/chat-panel-item.vue +103 -40
- package/components/wechat-chat-panel/chat-panel.vue +4 -1
- package/package.json +1 -1
|
@@ -243,9 +243,10 @@ export default {
|
|
|
243
243
|
const cursorPos = this.cacheInputRange ? this.cacheInputRange.start : 0
|
|
244
244
|
const nearsetInfo = getNearestString(inputValue, cursorPos)
|
|
245
245
|
this.suggestionsNearsetInfo = nearsetInfo
|
|
246
|
-
const nearest = (nearsetInfo
|
|
246
|
+
const nearest = this.normalizeSuggestionsKeyword(nearsetInfo)
|
|
247
247
|
if (!nearest) {
|
|
248
248
|
this.closeSuggestions()
|
|
249
|
+
return
|
|
249
250
|
}
|
|
250
251
|
this.loadSuggestions(nearest, nearsetInfo)
|
|
251
252
|
}, 200)
|
|
@@ -254,7 +255,7 @@ export default {
|
|
|
254
255
|
if (!this.fetchSuggestionsMethod) {
|
|
255
256
|
return
|
|
256
257
|
}
|
|
257
|
-
keyword =
|
|
258
|
+
keyword = this.normalizeSuggestionsKeyword(nearestInfo, keyword)
|
|
258
259
|
this.suggestioning = true
|
|
259
260
|
this.suggestionsKeyword = keyword
|
|
260
261
|
clearTimeout(this._loadSuggestionsTimer)
|
|
@@ -268,6 +269,14 @@ export default {
|
|
|
268
269
|
this.suggestioning = false
|
|
269
270
|
})
|
|
270
271
|
},
|
|
272
|
+
normalizeSuggestionsKeyword (nearestInfo, keyword) {
|
|
273
|
+
const nearest = keyword === undefined
|
|
274
|
+
? (nearestInfo && nearestInfo.nearest) || ''
|
|
275
|
+
: keyword || ''
|
|
276
|
+
return nearestInfo && nearestInfo.isAtContext
|
|
277
|
+
? nearest.trim()
|
|
278
|
+
: nearest.replace(/^\s+/, '')
|
|
279
|
+
},
|
|
271
280
|
closeSuggestions () {
|
|
272
281
|
this.$refs.suggestions && this.$refs.suggestions.close()
|
|
273
282
|
},
|
|
@@ -38,19 +38,33 @@ export function getNearestString (inputStr, cursorPos) {
|
|
|
38
38
|
break;
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
+
|
|
42
|
+
if (!isAtContext) {
|
|
43
|
+
let wordCursor = safeCursorPos - 1;
|
|
44
|
+
while (wordCursor >= 0 && /\s/.test(inputStr[wordCursor])) {
|
|
45
|
+
wordCursor--;
|
|
46
|
+
}
|
|
47
|
+
if (wordCursor < 0) {
|
|
48
|
+
return { nearest: '', start: safeCursorPos, end: safeCursorPos, isAtContext: false };
|
|
49
|
+
}
|
|
50
|
+
let start = wordCursor;
|
|
51
|
+
while (start > 0 && !/\s/.test(inputStr[start - 1])) {
|
|
52
|
+
start--;
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
nearest: inputStr.slice(start, safeCursorPos),
|
|
56
|
+
start,
|
|
57
|
+
end: safeCursorPos,
|
|
58
|
+
isAtContext: false
|
|
59
|
+
};
|
|
60
|
+
}
|
|
41
61
|
|
|
42
62
|
// 2. 根据上下文选择拆分模式
|
|
43
63
|
let splitRegex, isSeparator;
|
|
44
64
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
isSeparator = (part) => part === '@';
|
|
49
|
-
} else {
|
|
50
|
-
// 普通输入场景:按空白字符拆分
|
|
51
|
-
splitRegex = /(\s+)/;
|
|
52
|
-
isSeparator = (part) => /\s+/.test(part);
|
|
53
|
-
}
|
|
65
|
+
// @ 成员场景:按 @ 字符拆分
|
|
66
|
+
splitRegex = /(@)/;
|
|
67
|
+
isSeparator = (part) => part === '@';
|
|
54
68
|
|
|
55
69
|
// 拆分字符串(保留分隔符,用于定位)
|
|
56
70
|
const parts = inputStr.split(splitRegex);
|
|
@@ -186,4 +200,4 @@ export function getNearestString (inputStr, cursorPos) {
|
|
|
186
200
|
}
|
|
187
201
|
}
|
|
188
202
|
return { nearest, start, end, isAtContext };
|
|
189
|
-
}
|
|
203
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="sdk-chat-panel-box" :class="[dir ? 'is-dir-' + dir : '', {'is-blank': blank, 'is-recalled': recalled}]">
|
|
2
|
+
<div class="sdk-chat-panel-box" :class="[dir ? 'is-dir-' + dir : '', {'is-blank': blank, 'is-recalled': recalled}]" @mouseenter="handleMouseEnter" @mouseleave="handleMouseLeave">
|
|
3
3
|
<div class="sdk-chat-panel-box__avatar" @contextmenu="handleUserAvatarContextmenu" @click="handleUserAvatarClick">
|
|
4
4
|
<template v-if="userData && userData.avatar">
|
|
5
5
|
<sdk-user-avatar :src="userData.avatar"></sdk-user-avatar>
|
|
@@ -32,11 +32,18 @@
|
|
|
32
32
|
</div>
|
|
33
33
|
</div>
|
|
34
34
|
<div class="sdk-chat-panel-box__foot">
|
|
35
|
-
<
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
<div class="sdk-chat-panel-box__foot-row" v-if="inner_foot_vnode">
|
|
36
|
+
<component :is="inner_foot_vnode"></component>
|
|
37
|
+
</div>
|
|
38
|
+
<div class="sdk-chat-panel-box__foot-row" v-if="$slots.foot">
|
|
39
|
+
<slot name="foot"></slot>
|
|
40
|
+
</div>
|
|
41
|
+
<div class="sdk-chat-panel-box__foot-row is-last">
|
|
42
|
+
<slot name="foot-bottom" :hover="hover"></slot>
|
|
43
|
+
<span class="sdk-chat-panel-box__date">
|
|
44
|
+
{{ sendTime }}
|
|
45
|
+
</span>
|
|
46
|
+
</div>
|
|
40
47
|
</div>
|
|
41
48
|
</div>
|
|
42
49
|
</div>
|
|
@@ -111,6 +118,7 @@ export default {
|
|
|
111
118
|
* }
|
|
112
119
|
*/
|
|
113
120
|
userData: null,
|
|
121
|
+
hover: false,
|
|
114
122
|
inner_href: this.href,
|
|
115
123
|
inner_foot_vnode: null,
|
|
116
124
|
inner_bg_color: this.bgColor,
|
|
@@ -236,6 +244,12 @@ export default {
|
|
|
236
244
|
},
|
|
237
245
|
handleBodyContextMenu (evt) {
|
|
238
246
|
this.SdkChatPanelChat && this.SdkChatPanelChat.triggerMessageContentContextMenu(evt)
|
|
247
|
+
},
|
|
248
|
+
handleMouseEnter () {
|
|
249
|
+
this.hover = true
|
|
250
|
+
},
|
|
251
|
+
handleMouseLeave () {
|
|
252
|
+
this.hover = false
|
|
239
253
|
}
|
|
240
254
|
}
|
|
241
255
|
}
|
|
@@ -257,6 +271,10 @@ export default {
|
|
|
257
271
|
.sdk-chat-panel-box__msg-arrow-main{
|
|
258
272
|
left: 2px;
|
|
259
273
|
}
|
|
274
|
+
.sdk-chat-panel-box__foot-row{
|
|
275
|
+
flex-direction: row-reverse;
|
|
276
|
+
justify-content: flex-end;
|
|
277
|
+
}
|
|
260
278
|
}
|
|
261
279
|
&.is-dir-right {
|
|
262
280
|
flex-direction: row-reverse;
|
|
@@ -278,6 +296,10 @@ export default {
|
|
|
278
296
|
.sdk-chat-panel-box__msg-arrow-main{
|
|
279
297
|
right: 2px;
|
|
280
298
|
}
|
|
299
|
+
.sdk-chat-panel-box__foot-row{
|
|
300
|
+
flex-direction: row;
|
|
301
|
+
justify-content: flex-end;
|
|
302
|
+
}
|
|
281
303
|
}
|
|
282
304
|
&.is-recalled{
|
|
283
305
|
.sdk-chat-panel-box__msg{
|
|
@@ -308,9 +330,13 @@ export default {
|
|
|
308
330
|
flex-direction: row;
|
|
309
331
|
align-items: center;
|
|
310
332
|
}
|
|
311
|
-
.sdk-chat-panel-box__foot{
|
|
333
|
+
.sdk-chat-panel-box__foot-row{
|
|
312
334
|
line-height: 24px;
|
|
313
335
|
}
|
|
336
|
+
.sdk-chat-panel-box__foot-row{
|
|
337
|
+
display: flex;
|
|
338
|
+
flex-direction: row;
|
|
339
|
+
}
|
|
314
340
|
.sdk-chat-panel-box__date{
|
|
315
341
|
font-size: 12px;
|
|
316
342
|
color: #888;
|
|
@@ -20,6 +20,9 @@
|
|
|
20
20
|
<template slot="foot">
|
|
21
21
|
<slot name="box-append" :item="item"></slot>
|
|
22
22
|
</template>
|
|
23
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
24
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
25
|
+
</template>
|
|
23
26
|
<sdk-chat-control-text
|
|
24
27
|
v-bind="configData"
|
|
25
28
|
:id="item.id"
|
|
@@ -40,8 +43,11 @@
|
|
|
40
43
|
@user-avatar-click="handleUserAvatarClick"
|
|
41
44
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
42
45
|
>
|
|
43
|
-
<template slot="foot">
|
|
44
|
-
<slot name="box-append" :item="item"></slot>
|
|
46
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
47
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
48
|
+
</template>
|
|
49
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
50
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
45
51
|
</template>
|
|
46
52
|
<sdk-chat-control-image
|
|
47
53
|
v-bind="configData"
|
|
@@ -63,8 +69,11 @@
|
|
|
63
69
|
@user-avatar-click="handleUserAvatarClick"
|
|
64
70
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
65
71
|
>
|
|
66
|
-
<template slot="foot">
|
|
67
|
-
<slot name="box-append" :item="item"></slot>
|
|
72
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
73
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
74
|
+
</template>
|
|
75
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
76
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
68
77
|
</template>
|
|
69
78
|
<sdk-chat-control-video
|
|
70
79
|
v-bind="configData"
|
|
@@ -86,8 +95,11 @@
|
|
|
86
95
|
@user-avatar-click="handleUserAvatarClick"
|
|
87
96
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
88
97
|
>
|
|
89
|
-
<template slot="foot">
|
|
90
|
-
<slot name="box-append" :item="item"></slot>
|
|
98
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
99
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
100
|
+
</template>
|
|
101
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
102
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
91
103
|
</template>
|
|
92
104
|
<sdk-chat-control-voice
|
|
93
105
|
v-bind="configData"
|
|
@@ -111,8 +123,11 @@
|
|
|
111
123
|
@user-avatar-click="handleUserAvatarClick"
|
|
112
124
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
113
125
|
>
|
|
114
|
-
<template slot="foot">
|
|
115
|
-
<slot name="box-append" :item="item"></slot>
|
|
126
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
127
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
128
|
+
</template>
|
|
129
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
130
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
116
131
|
</template>
|
|
117
132
|
<sdk-chat-control-music
|
|
118
133
|
v-bind="configData"
|
|
@@ -135,8 +150,11 @@
|
|
|
135
150
|
@user-avatar-click="handleUserAvatarClick"
|
|
136
151
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
137
152
|
>
|
|
138
|
-
<template slot="foot">
|
|
139
|
-
<slot name="box-append" :item="item"></slot>
|
|
153
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
154
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
155
|
+
</template>
|
|
156
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
157
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
140
158
|
</template>
|
|
141
159
|
<sdk-chat-control-share-card
|
|
142
160
|
v-bind="configData"
|
|
@@ -160,8 +178,11 @@
|
|
|
160
178
|
@user-avatar-click="handleUserAvatarClick"
|
|
161
179
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
162
180
|
>
|
|
163
|
-
<template slot="foot">
|
|
164
|
-
<slot name="box-append" :item="item"></slot>
|
|
181
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
182
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
183
|
+
</template>
|
|
184
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
185
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
165
186
|
</template>
|
|
166
187
|
<template slot-scope="{ updateProp }">
|
|
167
188
|
<sdk-chat-control-location
|
|
@@ -185,8 +206,11 @@
|
|
|
185
206
|
@user-avatar-click="handleUserAvatarClick"
|
|
186
207
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
187
208
|
>
|
|
188
|
-
<template slot="foot">
|
|
189
|
-
<slot name="box-append" :item="item"></slot>
|
|
209
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
210
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
211
|
+
</template>
|
|
212
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
213
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
190
214
|
</template>
|
|
191
215
|
<sdk-chat-control-real-time-position
|
|
192
216
|
v-bind="configData"
|
|
@@ -209,8 +233,11 @@
|
|
|
209
233
|
@user-avatar-click="handleUserAvatarClick"
|
|
210
234
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
211
235
|
>
|
|
212
|
-
<template slot="foot">
|
|
213
|
-
<slot name="box-append" :item="item"></slot>
|
|
236
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
237
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
238
|
+
</template>
|
|
239
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
240
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
214
241
|
</template>
|
|
215
242
|
<template slot-scope="{ updateStyle }">
|
|
216
243
|
<sdk-chat-control-transfer
|
|
@@ -236,8 +263,11 @@
|
|
|
236
263
|
@user-avatar-click="handleUserAvatarClick"
|
|
237
264
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
238
265
|
>
|
|
239
|
-
<template slot="foot">
|
|
240
|
-
<slot name="box-append" :item="item"></slot>
|
|
266
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
267
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
268
|
+
</template>
|
|
269
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
270
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
241
271
|
</template>
|
|
242
272
|
<sdk-chat-control-red-envelopes
|
|
243
273
|
v-bind="configData"
|
|
@@ -260,8 +290,11 @@
|
|
|
260
290
|
@user-avatar-click="handleUserAvatarClick"
|
|
261
291
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
262
292
|
>
|
|
263
|
-
<template slot="foot">
|
|
264
|
-
<slot name="box-append" :item="item"></slot>
|
|
293
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
294
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
295
|
+
</template>
|
|
296
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
297
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
265
298
|
</template>
|
|
266
299
|
<sdk-chat-control-company-card
|
|
267
300
|
v-bind="configData"
|
|
@@ -284,8 +317,11 @@
|
|
|
284
317
|
@user-avatar-click="handleUserAvatarClick"
|
|
285
318
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
286
319
|
>
|
|
287
|
-
<template slot="foot">
|
|
288
|
-
<slot name="box-append" :item="item"></slot>
|
|
320
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
321
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
322
|
+
</template>
|
|
323
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
324
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
289
325
|
</template>
|
|
290
326
|
<sdk-chat-control-channel-video
|
|
291
327
|
v-bind="configData"
|
|
@@ -308,8 +344,11 @@
|
|
|
308
344
|
@user-avatar-click="handleUserAvatarClick"
|
|
309
345
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
310
346
|
>
|
|
311
|
-
<template slot="foot">
|
|
312
|
-
<slot name="box-append" :item="item"></slot>
|
|
347
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
348
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
349
|
+
</template>
|
|
350
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
351
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
313
352
|
</template>
|
|
314
353
|
<sdk-chat-control-channel-video-card
|
|
315
354
|
v-bind="configData"
|
|
@@ -332,8 +371,11 @@
|
|
|
332
371
|
@user-avatar-click="handleUserAvatarClick"
|
|
333
372
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
334
373
|
>
|
|
335
|
-
<template slot="foot">
|
|
336
|
-
<slot name="box-append" :item="item"></slot>
|
|
374
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
375
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
376
|
+
</template>
|
|
377
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
378
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
337
379
|
</template>
|
|
338
380
|
<sdk-chat-control-channel-live
|
|
339
381
|
v-bind="configData"
|
|
@@ -356,8 +398,11 @@
|
|
|
356
398
|
@user-avatar-click="handleUserAvatarClick"
|
|
357
399
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
358
400
|
>
|
|
359
|
-
<template slot="foot">
|
|
360
|
-
<slot name="box-append" :item="item"></slot>
|
|
401
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
402
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
403
|
+
</template>
|
|
404
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
405
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
361
406
|
</template>
|
|
362
407
|
<template slot-scope="{ updateProp }">
|
|
363
408
|
<sdk-chat-control-url
|
|
@@ -383,8 +428,11 @@
|
|
|
383
428
|
@user-avatar-click="handleUserAvatarClick"
|
|
384
429
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
385
430
|
>
|
|
386
|
-
<template slot="foot">
|
|
387
|
-
<slot name="box-append" :item="item"></slot>
|
|
431
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
432
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
433
|
+
</template>
|
|
434
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
435
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
388
436
|
</template>
|
|
389
437
|
<template slot-scope="{ updateProp }">
|
|
390
438
|
<sdk-chat-control-file-url
|
|
@@ -408,8 +456,11 @@
|
|
|
408
456
|
@user-avatar-click="handleUserAvatarClick"
|
|
409
457
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
410
458
|
>
|
|
411
|
-
<template slot="foot">
|
|
412
|
-
<slot name="box-append" :item="item"></slot>
|
|
459
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
460
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
461
|
+
</template>
|
|
462
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
463
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
413
464
|
</template>
|
|
414
465
|
<sdk-chat-control-custom-expression
|
|
415
466
|
v-bind="configData"
|
|
@@ -432,8 +483,11 @@
|
|
|
432
483
|
@user-avatar-click="handleUserAvatarClick"
|
|
433
484
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
434
485
|
>
|
|
435
|
-
<template slot="foot">
|
|
436
|
-
<slot name="box-append" :item="item"></slot>
|
|
486
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
487
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
488
|
+
</template>
|
|
489
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
490
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
437
491
|
</template>
|
|
438
492
|
<sdk-chat-control-calling
|
|
439
493
|
v-bind="configData"
|
|
@@ -465,8 +519,11 @@
|
|
|
465
519
|
@user-avatar-click="handleUserAvatarClick"
|
|
466
520
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
467
521
|
>
|
|
468
|
-
<template slot="foot">
|
|
469
|
-
<slot name="box-append" :item="item"></slot>
|
|
522
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
523
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
524
|
+
</template>
|
|
525
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
526
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
470
527
|
</template>
|
|
471
528
|
<sdk-chat-control-text-with-at
|
|
472
529
|
v-bind="configData"
|
|
@@ -543,8 +600,11 @@
|
|
|
543
600
|
@user-avatar-click="handleUserAvatarClick"
|
|
544
601
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
545
602
|
>
|
|
546
|
-
<template slot="foot">
|
|
547
|
-
<slot name="box-append" :item="item"></slot>
|
|
603
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
604
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
605
|
+
</template>
|
|
606
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
607
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
548
608
|
</template>
|
|
549
609
|
<template slot-scope="{ setFootVnode }">
|
|
550
610
|
<sdk-chat-control-quote-message
|
|
@@ -581,8 +641,11 @@
|
|
|
581
641
|
@user-avatar-click="handleUserAvatarClick"
|
|
582
642
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
583
643
|
>
|
|
584
|
-
<template slot="foot">
|
|
585
|
-
<slot name="box-append" :item="item"></slot>
|
|
644
|
+
<template slot="foot" slot-scope="{ hover }">
|
|
645
|
+
<slot name="box-append" :item="item" :hover="hover"></slot>
|
|
646
|
+
</template>
|
|
647
|
+
<template slot="foot-bottom" slot-scope="{ hover }">
|
|
648
|
+
<slot name="box-append-bottom" :item="item" :hover="hover"></slot>
|
|
586
649
|
</template>
|
|
587
650
|
<sdk-chat-control-unknow
|
|
588
651
|
:id="item.id"
|
|
@@ -24,9 +24,12 @@
|
|
|
24
24
|
@user-avatar-click="handleUserAvatarClick"
|
|
25
25
|
@user-avatar-contextmenu="handleUserAvatarContextmenu"
|
|
26
26
|
>
|
|
27
|
-
<template slot="box-append"
|
|
27
|
+
<template slot="box-append">
|
|
28
28
|
<slot name="box-append" :item="item"></slot>
|
|
29
29
|
</template>
|
|
30
|
+
<template slot="box-append-bottom" slot-scope="scope">
|
|
31
|
+
<slot name="box-append-bottom" :item="item" :hover="scope.hover"></slot>
|
|
32
|
+
</template>
|
|
30
33
|
<template slot="chat-append" slot-scope="{ item, updateProp }">
|
|
31
34
|
<chat-panel-chat-status
|
|
32
35
|
:data="item"
|