cnhis-design-vue 3.2.16-beta.7 → 3.2.17-beta.2
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/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
- package/es/components/classification/src/components/table-modal/index.vue.d.ts +3 -0
- package/es/components/expand-field/index.d.ts +28 -1
- package/es/components/expand-field/src/components/FormItemPerson.vue.d.ts +28 -1
- package/es/components/expand-field/src/components/PersonModal.vue.d.ts +28 -1
- package/es/components/expand-field/src/components/form.vue.d.ts +28 -1
- package/es/components/expand-field/src/index.vue.d.ts +28 -1
- package/es/components/fabric-chart/src/hooks/birthProcess/useBirthProcess.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useCenter.js +1 -1
- package/es/components/fabric-chart/src/hooks/temperature/useTemperatureChart.js +1 -1
- package/es/components/fabric-chart/src/hooks/useGrid.js +1 -1
- package/es/components/fabric-chart/src/interface.d.ts +1 -0
- package/es/components/field-set/src/FieldColor.vue.d.ts +1 -1
- package/es/components/field-set/src/FieldFilter.vue.d.ts +1 -1
- package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
- package/es/components/field-set/src/components/table-row.vue.d.ts +1 -1
- package/es/components/form-config/index.d.ts +147 -24
- package/es/components/form-config/src/FormConfig.vue.d.ts +147 -24
- package/es/components/form-config/src/FormConfig.vue2.js +1 -1
- package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +8 -0
- package/es/components/form-config/src/components/FormConfigEventSetting.vue.d.ts +210 -95
- package/es/components/form-config/src/components/FormConfigEventSetting.vue2.js +1 -1
- package/es/components/form-render/src/FormRender.vue2.js +1 -1
- package/es/components/form-render/src/components/renderer/formItem.js +1 -1
- package/es/components/form-render/src/components/renderer/text.js +1 -1
- package/es/components/form-render/src/hooks/useFieldNormalize.js +1 -1
- package/es/components/form-render/src/types/fieldItem.d.ts +3 -1
- package/es/components/iho-chat/index.d.ts +321 -365
- package/es/components/iho-chat/src/Index.vue.d.ts +321 -365
- package/es/components/iho-chat/src/Index.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +9 -0
- package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +18 -0
- package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +18 -0
- package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +65 -182
- package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +94 -182
- package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +9 -0
- package/es/components/iho-chat/src/components/ChatSearch.vue.d.ts +37 -20
- package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +19 -91
- package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
- package/es/components/iho-chat/src/components/MessageEvent.vue.d.ts +10 -91
- package/es/components/iho-chat/src/components/MessageEvent.vue2.js +1 -1
- package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +18 -0
- package/es/components/iho-chat/src/components/PersonProfile.vue.d.ts +12 -46
- package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
- package/es/components/iho-chat/src/components/SelectLabel.vue.d.ts +54 -0
- package/es/components/iho-chat/src/components/SelectLabel.vue.js +1 -0
- package/es/components/iho-chat/src/components/SelectLabel.vue2.js +1 -0
- package/es/components/iho-chat/src/components/SiderList.vue.d.ts +9 -0
- package/es/components/iho-chat/src/components/Video.vue.d.ts +9 -0
- package/es/components/iho-chat/src/hooks/useData.d.ts +30 -0
- package/es/components/iho-chat/src/hooks/useData.js +1 -1
- package/es/components/iho-chat/src/hooks/useVideo.d.ts +9 -0
- package/es/components/iho-chat/src/types/index.d.ts +9 -0
- package/es/components/iho-chat/style/index.css +1 -1
- package/es/components/iho-table/src/plugins/filterTextPlugin/filter.vue.d.ts +1 -0
- package/es/components/iho-table/src/plugins/filterTextPlugin/filter.vue2.js +1 -1
- package/es/components/iho-table/src/types/index.d.ts +3 -0
- package/es/components/index.css +1 -1
- package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
- package/es/components/select-person/index.d.ts +28 -1
- package/es/components/select-person/src/SelectPerson.vue.d.ts +15 -1
- package/es/components/select-person/src/SelectPerson.vue2.js +1 -1
- package/es/components/select-person/src/index.vue.d.ts +28 -1
- package/es/components/select-person/src/index.vue2.js +1 -1
- package/es/components/shortcut-setter/index.d.ts +2 -0
- package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +2 -0
- package/es/env.d.ts +25 -25
- package/es/shared/package.json.js +1 -1
- package/package.json +2 -2
@@ -23,6 +23,15 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
23
23
|
currentAVMsg: AnyObject;
|
24
24
|
currentGroupUser: AnyObject[];
|
25
25
|
showMultipleVideo: boolean;
|
26
|
+
userDetail: {
|
27
|
+
show: boolean;
|
28
|
+
position: {
|
29
|
+
x: number;
|
30
|
+
y: number;
|
31
|
+
};
|
32
|
+
userId: string;
|
33
|
+
info: AnyObject | null;
|
34
|
+
};
|
26
35
|
};
|
27
36
|
setMsgList: (list?: AnyObject[]) => void;
|
28
37
|
relayMessage: (param: {
|
@@ -31,12 +40,23 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
31
40
|
content: AnyObject;
|
32
41
|
}) => Promise<void>;
|
33
42
|
setCurrentSessionItem: (item: AnyObject) => void;
|
43
|
+
setMessageLabel: (params: {
|
44
|
+
type: "text" | "emoji";
|
45
|
+
labelItem: string | AnyObject;
|
46
|
+
msgId: string;
|
47
|
+
}) => void;
|
48
|
+
setUserDetail: (event: MouseEvent, userDetail: AnyObject) => void;
|
34
49
|
isGroupChat: import("vue").ComputedRef<boolean>;
|
35
50
|
contextmenuRef: import("vue").Ref<any>;
|
36
51
|
showMenu: import("vue").Ref<boolean>;
|
37
52
|
menuPosition: any;
|
38
53
|
menuMsgId: import("vue").Ref<any>;
|
39
54
|
relayTriggerRef: import("vue").Ref<any>;
|
55
|
+
showLabel: import("vue").Ref<boolean>;
|
56
|
+
labelPosition: {
|
57
|
+
x: number;
|
58
|
+
y: number;
|
59
|
+
};
|
40
60
|
pageInfo: {
|
41
61
|
page: number;
|
42
62
|
hasMore: boolean;
|
@@ -50,6 +70,7 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
50
70
|
[key: string]: any;
|
51
71
|
}>[];
|
52
72
|
getHistoryRecord: () => Promise<void>;
|
73
|
+
handleSelectLabel: (event: MouseEvent, msgId: string) => void;
|
53
74
|
handleContextmenu: (event: MouseEvent, msgId: string) => Promise<void>;
|
54
75
|
setMenuPosition: (event: MouseEvent) => Promise<void>;
|
55
76
|
showMessage: (item: AnyObject) => boolean;
|
@@ -75,97 +96,6 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
75
96
|
NButtonGroup: any;
|
76
97
|
NButton: any;
|
77
98
|
NSpace: any;
|
78
|
-
PersonProfile: import("vue").DefineComponent<{
|
79
|
-
userId: {
|
80
|
-
type: (NumberConstructor | StringConstructor)[];
|
81
|
-
};
|
82
|
-
disabled: {
|
83
|
-
type: BooleanConstructor;
|
84
|
-
default: boolean;
|
85
|
-
};
|
86
|
-
userInfo: {
|
87
|
-
type: import("vue").PropType<AnyObject>;
|
88
|
-
};
|
89
|
-
}, {
|
90
|
-
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
91
|
-
userId: {
|
92
|
-
type: (NumberConstructor | StringConstructor)[];
|
93
|
-
};
|
94
|
-
disabled: {
|
95
|
-
type: BooleanConstructor;
|
96
|
-
default: boolean;
|
97
|
-
};
|
98
|
-
userInfo: {
|
99
|
-
type: import("vue").PropType<AnyObject>;
|
100
|
-
};
|
101
|
-
}>> & {
|
102
|
-
onClose?: ((...args: any[]) => any) | undefined;
|
103
|
-
}>>;
|
104
|
-
emit: (event: "close", ...args: any[]) => void;
|
105
|
-
state: {
|
106
|
-
orgId: string | number;
|
107
|
-
currentSessionItem: AnyObject;
|
108
|
-
id: string;
|
109
|
-
userInfo: AnyObject;
|
110
|
-
msgList: AnyObject[];
|
111
|
-
currentMsg: AnyObject;
|
112
|
-
isAppendMsg: boolean;
|
113
|
-
sessionList: AnyObject[];
|
114
|
-
isChangeSession: boolean;
|
115
|
-
updateSessionItem: AnyObject;
|
116
|
-
isUpdateSession: boolean;
|
117
|
-
currentReferenceMsg: AnyObject | null;
|
118
|
-
currentReEditMsg: AnyObject | null;
|
119
|
-
showVideo: boolean;
|
120
|
-
currentAVMsg: AnyObject;
|
121
|
-
currentGroupUser: AnyObject[];
|
122
|
-
showMultipleVideo: boolean;
|
123
|
-
};
|
124
|
-
openSession: (session: string | AnyObject) => Promise<void>;
|
125
|
-
showUserDetail: import("vue").Ref<boolean>;
|
126
|
-
showLargeAvatar: import("vue").Ref<boolean>;
|
127
|
-
showPhone: import("vue").Ref<boolean>;
|
128
|
-
userDetail: AnyObject;
|
129
|
-
info: {
|
130
|
-
label: string;
|
131
|
-
value: string;
|
132
|
-
key: string;
|
133
|
-
}[];
|
134
|
-
personInfo: import("vue").ComputedRef<{
|
135
|
-
label: string;
|
136
|
-
value: string;
|
137
|
-
key: string;
|
138
|
-
}[]>;
|
139
|
-
toOpenSession: () => Promise<void>;
|
140
|
-
updateShow: (value: boolean) => Promise<void>;
|
141
|
-
getContent: (info: AnyObject) => any;
|
142
|
-
onChange: (options: {
|
143
|
-
file: import("naive-ui").UploadFileInfo;
|
144
|
-
}) => Promise<void>;
|
145
|
-
NAvatar: any;
|
146
|
-
NPopover: any;
|
147
|
-
NButton: any;
|
148
|
-
NIcon: any;
|
149
|
-
ChatbubbleEllipses: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
150
|
-
Close: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
151
|
-
EyeOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
152
|
-
EyeOffOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
153
|
-
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "close"[], "close", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
154
|
-
userId: {
|
155
|
-
type: (NumberConstructor | StringConstructor)[];
|
156
|
-
};
|
157
|
-
disabled: {
|
158
|
-
type: BooleanConstructor;
|
159
|
-
default: boolean;
|
160
|
-
};
|
161
|
-
userInfo: {
|
162
|
-
type: import("vue").PropType<AnyObject>;
|
163
|
-
};
|
164
|
-
}>> & {
|
165
|
-
onClose?: ((...args: any[]) => any) | undefined;
|
166
|
-
}, {
|
167
|
-
disabled: boolean;
|
168
|
-
}>;
|
169
99
|
MessageTemplate: import("vue").DefineComponent<{
|
170
100
|
data: {
|
171
101
|
type: import("vue").PropType<AnyObject>;
|
@@ -274,110 +204,82 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
274
204
|
currentAVMsg: AnyObject;
|
275
205
|
currentGroupUser: AnyObject[];
|
276
206
|
showMultipleVideo: boolean;
|
207
|
+
userDetail: {
|
208
|
+
show: boolean;
|
209
|
+
position: {
|
210
|
+
x: number;
|
211
|
+
y: number;
|
212
|
+
};
|
213
|
+
userId: string;
|
214
|
+
info: AnyObject | null;
|
215
|
+
};
|
277
216
|
};
|
217
|
+
setUserDetail: (event: MouseEvent, userDetail: AnyObject) => void;
|
278
218
|
inviter: import("vue").Ref<any>;
|
279
219
|
invitee: import("vue").Ref<any[]>;
|
280
220
|
isValidJSON: (str: string) => boolean;
|
281
221
|
getTask: (_id: string | number, arrRes: AnyObject[]) => () => Promise<unknown>;
|
282
222
|
getEventContent: (data: AnyObject) => Promise<void>;
|
283
223
|
NButton: any;
|
284
|
-
PersonProfile: import("vue").DefineComponent<{
|
285
|
-
userId: {
|
286
|
-
type: (NumberConstructor | StringConstructor)[];
|
287
|
-
};
|
288
|
-
disabled: {
|
289
|
-
type: BooleanConstructor;
|
290
|
-
default: boolean;
|
291
|
-
};
|
292
|
-
userInfo: {
|
293
|
-
type: import("vue").PropType<AnyObject>;
|
294
|
-
};
|
295
|
-
}, {
|
296
|
-
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
297
|
-
userId: {
|
298
|
-
type: (NumberConstructor | StringConstructor)[];
|
299
|
-
};
|
300
|
-
disabled: {
|
301
|
-
type: BooleanConstructor;
|
302
|
-
default: boolean;
|
303
|
-
};
|
304
|
-
userInfo: {
|
305
|
-
type: import("vue").PropType<AnyObject>;
|
306
|
-
};
|
307
|
-
}>> & {
|
308
|
-
onClose?: ((...args: any[]) => any) | undefined;
|
309
|
-
}>>;
|
310
|
-
emit: (event: "close", ...args: any[]) => void;
|
311
|
-
state: {
|
312
|
-
orgId: string | number;
|
313
|
-
currentSessionItem: AnyObject;
|
314
|
-
id: string;
|
315
|
-
userInfo: AnyObject;
|
316
|
-
msgList: AnyObject[];
|
317
|
-
currentMsg: AnyObject;
|
318
|
-
isAppendMsg: boolean;
|
319
|
-
sessionList: AnyObject[];
|
320
|
-
isChangeSession: boolean;
|
321
|
-
updateSessionItem: AnyObject;
|
322
|
-
isUpdateSession: boolean;
|
323
|
-
currentReferenceMsg: AnyObject | null;
|
324
|
-
currentReEditMsg: AnyObject | null;
|
325
|
-
showVideo: boolean;
|
326
|
-
currentAVMsg: AnyObject;
|
327
|
-
currentGroupUser: AnyObject[];
|
328
|
-
showMultipleVideo: boolean;
|
329
|
-
};
|
330
|
-
openSession: (session: string | AnyObject) => Promise<void>;
|
331
|
-
showUserDetail: import("vue").Ref<boolean>;
|
332
|
-
showLargeAvatar: import("vue").Ref<boolean>;
|
333
|
-
showPhone: import("vue").Ref<boolean>;
|
334
|
-
userDetail: AnyObject;
|
335
|
-
info: {
|
336
|
-
label: string;
|
337
|
-
value: string;
|
338
|
-
key: string;
|
339
|
-
}[];
|
340
|
-
personInfo: import("vue").ComputedRef<{
|
341
|
-
label: string;
|
342
|
-
value: string;
|
343
|
-
key: string;
|
344
|
-
}[]>;
|
345
|
-
toOpenSession: () => Promise<void>;
|
346
|
-
updateShow: (value: boolean) => Promise<void>;
|
347
|
-
getContent: (info: AnyObject) => any;
|
348
|
-
onChange: (options: {
|
349
|
-
file: import("naive-ui").UploadFileInfo;
|
350
|
-
}) => Promise<void>;
|
351
|
-
NAvatar: any;
|
352
|
-
NPopover: any;
|
353
|
-
NButton: any;
|
354
|
-
NIcon: any;
|
355
|
-
ChatbubbleEllipses: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
356
|
-
Close: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
357
|
-
EyeOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
358
|
-
EyeOffOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
359
|
-
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "close"[], "close", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
360
|
-
userId: {
|
361
|
-
type: (NumberConstructor | StringConstructor)[];
|
362
|
-
};
|
363
|
-
disabled: {
|
364
|
-
type: BooleanConstructor;
|
365
|
-
default: boolean;
|
366
|
-
};
|
367
|
-
userInfo: {
|
368
|
-
type: import("vue").PropType<AnyObject>;
|
369
|
-
};
|
370
|
-
}>> & {
|
371
|
-
onClose?: ((...args: any[]) => any) | undefined;
|
372
|
-
}, {
|
373
|
-
disabled: boolean;
|
374
|
-
}>;
|
375
224
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
376
225
|
data: {
|
377
226
|
type: import("vue").PropType<AnyObject>;
|
378
227
|
required: true;
|
379
228
|
};
|
380
229
|
}>>, {}>;
|
230
|
+
SelectLabel: import("vue").DefineComponent<{
|
231
|
+
id: {
|
232
|
+
type: StringConstructor;
|
233
|
+
required: true;
|
234
|
+
};
|
235
|
+
show: {
|
236
|
+
type: BooleanConstructor;
|
237
|
+
};
|
238
|
+
}, {
|
239
|
+
labelList: {
|
240
|
+
type: string;
|
241
|
+
label: string;
|
242
|
+
}[];
|
243
|
+
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
244
|
+
id: {
|
245
|
+
type: StringConstructor;
|
246
|
+
required: true;
|
247
|
+
};
|
248
|
+
show: {
|
249
|
+
type: BooleanConstructor;
|
250
|
+
};
|
251
|
+
}>> & {
|
252
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
253
|
+
}>>;
|
254
|
+
emit: (event: "update:show", ...args: any[]) => void;
|
255
|
+
setMessageLabel: (params: {
|
256
|
+
type: "text" | "emoji";
|
257
|
+
labelItem: string | AnyObject;
|
258
|
+
msgId: string;
|
259
|
+
}) => void;
|
260
|
+
handleMessageLabel: (type: "text" | "emoji", item: any) => void;
|
261
|
+
NButton: any;
|
262
|
+
NPopover: any;
|
263
|
+
NTabs: any;
|
264
|
+
NTabPane: any;
|
265
|
+
NTooltip: any;
|
266
|
+
emojis: {
|
267
|
+
default: string[][];
|
268
|
+
findEmoji(name: string): any;
|
269
|
+
};
|
270
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:show"[], "update:show", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
271
|
+
id: {
|
272
|
+
type: StringConstructor;
|
273
|
+
required: true;
|
274
|
+
};
|
275
|
+
show: {
|
276
|
+
type: BooleanConstructor;
|
277
|
+
};
|
278
|
+
}>> & {
|
279
|
+
"onUpdate:show"?: ((...args: any[]) => any) | undefined;
|
280
|
+
}, {
|
281
|
+
show: boolean;
|
282
|
+
}>;
|
381
283
|
emojis: {
|
382
284
|
default: string[][];
|
383
285
|
findEmoji(name: string): any;
|
@@ -495,6 +397,15 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
495
397
|
currentAVMsg: AnyObject;
|
496
398
|
currentGroupUser: AnyObject[];
|
497
399
|
showMultipleVideo: boolean;
|
400
|
+
userDetail: {
|
401
|
+
show: boolean;
|
402
|
+
position: {
|
403
|
+
x: number;
|
404
|
+
y: number;
|
405
|
+
};
|
406
|
+
userId: string;
|
407
|
+
info: AnyObject | null;
|
408
|
+
};
|
498
409
|
};
|
499
410
|
setCurrentSessionItem: (item: AnyObject) => void;
|
500
411
|
listRef: import("vue").Ref<any>;
|
@@ -597,5 +508,6 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
597
508
|
CallOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
598
509
|
VideocamOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
599
510
|
DocumentSharp: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
511
|
+
HappyOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
600
512
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
601
513
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,ref as t,computed as n,watch as o,openBlock as s,createElementBlock as i,normalizeClass as r,unref as a,normalizeStyle as l,createVNode as c,withCtx as u,Fragment as m,renderList as d,toDisplayString as p,createCommentVNode as g,createBlock as v,createElementVNode as f,createTextVNode as y,withModifiers as h,nextTick as T}from"vue";import{NImageGroup as M,NButton as w,NAvatar as k,NImage as _,NIcon as C,NSpace as x,NButtonGroup as I,NTooltip as L}from"naive-ui";import{format as j}from"date-fns";import{getHistoryRecordApi as E,readMessageApi as S}from"../api/index.js";import{useData as b}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import{isAudioOrVideoMessage as z,simplifyMessage as D,getAVTime as H,downloadFile as R}from"../utils/index.js";import{first as N,last as B,toString as O}from"lodash-es";import"trtc-sdk-v5";import P from"./PersonProfile.vue.js";import q from"./MessageTemplate.vue.js";import J from"./MessageEvent.vue.js";import{emojis as W}from"../utils/emoji.js";import U from"./ContextMenu.js";import X from"./ChatAdd.vue.js";import"../../../../shared/utils/index.js";import"@vueuse/core";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{CallOutline as F,VideocamOutline as G,DocumentSharp as K,ChatbubbleEllipsesOutline as V,EllipsisHorizontal as Y,ArrowDownSharp as $}from"@vicons/ionicons5";import{useScrollLoading as Q}from"../../../../shared/hooks/useScrollLoading.js";const Z={key:0,class:"tip-text"},ee={key:1,class:"tip-text"},te={key:2,class:"message-box"},ne={key:0,class:"content-box"},oe={class:"name-box"},se=["data-time"],ie=["onContextmenu"],re={key:0,class:"reference-content"},ae=["innerHTML"],le=["src"],ce=["innerHTML"],ue=["innerHTML"],me={style:{"margin-left":"8px"}},de={class:"size"};var pe=e({__name:"ChatMain",setup(e){const pe=t(),{state:ge,setMsgList:ve,relayMessage:fe,setCurrentSessionItem:ye,isGroupChat:he}=b(),Te=t(),Me=t(!1),we=t({left:0,top:0}),ke=t(),_e=t(),Ce={page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")},xe=n((()=>({"--c-tip-top":he.value?"1px":"-20px","--c-tip-gap":he.value?"10px":"0px"})));function Ie({nodes:e}){var t,n;const{_ctx:o}=null==(t=e.download)?void 0:t.children,s=o?null==(n=null==o?void 0:o.proxy)?void 0:n.previewSrc:"";return[e.prev,e.next,e.rotateCounterclockwise,e.rotateClockwise,e.resizeToOriginalSize,e.zoomOut,e.zoomIn,c(L,null,{trigger:()=>c(C,{style:"cursor: pointer",color:"rgba(255, 255, 255, 0.75",size:24,component:$,onClick:()=>s&&R(s,"img")},null),default:()=>{var e;return(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.102"))||"下载"}}),e.close]}async function Le(){try{if(!Ce.hasMore)return;Ce.page++;const e=await E({sessionKey:ge.currentSessionItem.sessionKey,page:Ce.page,lastSendTime:Ce.lastSendTime});if(!Array.isArray(e)||0===e.length)return Ce.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=N(e).id;Ce.lastSendTime=B(e).sendTime,ve(Ce.page>1?[...ge.msgList,...e]:e),1===Ce.page&&ge.currentSessionItem.unreadNum&&(await S({chatType:ge.currentSessionItem.chatType,messageIdSet:[t],receiver:ge.userInfo.id,sender:ge.currentSessionItem.receiver}),ye({unreadNum:0}))}catch(e){console.log(e)}}async function je(e,t){ke.value=t,async function(e){var t,n,o,s,i,r;Me.value=!0,await T();const{clientX:a,clientY:l}=e,{width:c=0,height:u=0,left:m=0,top:d=0}=(null==(t=pe.value)?void 0:t.getBoundingClientRect())||{},p=null!=(s=null==(o=null==(n=Te.value)?void 0:n.$el)?void 0:o.getBoundingClientRect().height)?s:220,g=null!=(r=null==(i=pe.value)?void 0:i.scrollTop)?r:0,v=5,f={};a<=m+c/2?f.left=a-m+v+"px":f.right=m+c-a-v+"px";l-d<p/2?f.top=g+v+"px":d+u-l<=p/2?f.bottom=Math.abs(g)+v+"px":f.top=g+l-d-p/2+"px";we.value=f}(e)}function Ee(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==A.TEMPLATE||!!n}function Se(e){const{chatMessageType:t}=e.content;return e.sender===ge.userInfo.id&&Date.now()-new Date(e.sendTime).getTime()<864e5&&[A.TEXT,A.EMOJI].includes(t)}function be(e){const{chatMessageType:t,msg:n=""}=e.content;if(t===A.BLEND){const e=O(n).match(/<img[^>]*>/gi);return!e||!e.length}return t&&[A.TEXT,A.EMOJI].includes(t)}function Ae(e){const{chatMessageType:t,msg:n=""}=e.content,o=O(n).match(/<img[^>]*>/gi);return t===A.BLEND&&o&&o.length}function ze(e,t){var n,o;const{chatMessageType:s,messageTemplate:i}=e.content;if(s===A.TEMPLATE)return"system"===t?2==(null==(n=null==i?void 0:i.setting)?void 0:n.style.id):2!=(null==(o=null==i?void 0:i.setting)?void 0:o.style.id)}function De(e){var t,n;const{chatMessageType:o,messageTemplate:s}=e;return o===A.TEMPLATE&&3==(null==(n=null==(t=null==s?void 0:s.setting)?void 0:t.style)?void 0:n.id)}function He(e,t){var n;const o=new Date(e.sendTime).getTime(),s=null==(n=ge.msgList[t+1])?void 0:n.sendTime;if(s){return o-new Date(s).getTime()>3e5}return!0}function Re(e){ge.currentReferenceMsg=e,ge.currentReferenceMsg.content.referenceContent=null,Object.assign(ge.currentReferenceMsg,{chatType:ge.currentSessionItem.chatType,receiver:ge.currentSessionItem.receiver,receiverAvatar:ge.currentSessionItem.avatar,receiverName:ge.currentSessionItem.name})}function Ne(e,t){var n;"reply"!==e?"relay"===e&&(null==(n=_e.value)||n.click()):Re(t)}function Be({checkedIds:e,remark:t}){const n=ge.msgList.find((e=>e.id===ke.value));fe({checkedIds:e,remark:t,content:n.content})}return Q(pe,(()=>{Le()}),"top",(()=>{Me.value=!1})),o((()=>ge.id),(e=>{e&&(ge.currentReferenceMsg=null,Object.assign(Ce,{page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")}),Le())}),{immediate:!0}),o((()=>ge.isAppendMsg),(e=>{e&&(ve([ge.currentMsg,...ge.msgList]),async function(){var e;null==(e=pe.value)||e.scrollTo({top:0,behavior:"auto"})}(),ge.isAppendMsg=!1)}),{immediate:!0}),(e,t)=>{var n;return s(),i("div",{class:r(["chat-main",{"home-bg":!a(ge).id}]),ref_key:"chatMainRef",ref:pe,style:l(a(xe))},[c(a(M),{"show-toolbar-tooltip":"","render-toolbar":Ie},{default:u((()=>[(s(!0),i(m,null,d(a(ge).msgList,((e,t)=>{var n,o,l;return s(),i(m,{key:e.id},[Ee(e)?(s(),i("div",{key:0,class:r(["message-item",{"message-item--mine":e.sender==a(ge).userInfo.id}])},[He(e,t)?(s(),i("p",Z,p(e.__sendTime),1)):g("v-if",!0),ze(e,"system")||"WITHDRAWN"===e.status||(null==(n=e.content)?void 0:n.chatMessageType)===a(A).EVENT?(s(),i(m,{key:1},[ze(e,"system")?(s(),v(q,{key:0,data:e},null,8,["data"])):g("v-if",!0),"WITHDRAWN"===e.status?(s(),i("p",ee,[f("span",null,p(e.sender==a(ge).userInfo.id?(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.67"))||"你":e.senderName)+((null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.68"))||"撤回了一条消息"),1),Se(e)?(s(),v(a(w),{key:0,size:"tiny",style:{color:"var(--c-primary-color)","margin-left":"5px"},text:"",onClick:()=>function(e){ge.currentReEditMsg=e}(e)},{default:u((()=>{var e;return[y((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.69"))||"重新编辑")]})),_:2},1032,["onClick"])):g("v-if",!0)])):(s(),v(J,{key:2,data:e},null,8,["data"]))],64)):(s(),i("div",te,[c(P,{"user-id":e.sender,placement:e.sender==a(ge).userInfo.id?"left":"right"},{trigger:u((()=>[c(a(k),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id","placement"]),e.content?(s(),i("div",ne,[f("div",oe,[f("span",{class:"name","data-time":e.__time},p(a(he)?e.senderName:""),9,se)]),f("div",{class:r(["content",{emoji:e.content.chatMessageType===a(A).EMOJI&&!e.content.referenceContent,template:e.content.chatMessageType===a(A).TEMPLATE,"template--3":De(e.content),"audio-video":a(z)(e.content),file:e.content.chatMessageType===a(A).FILE}]),onContextmenu:h((t=>je(t,e.id)),["prevent"])},[be(e)?(s(),i(m,{key:0},[e.content.referenceContent?(s(),i("div",re,[f("span",null,p(e.content.referenceContent.senderName)+":",1),f("pre",{innerHTML:a(D)(e.content.referenceContent.content)},null,8,ae)])):g("v-if",!0),e.content.chatMessageType===a(A).EMOJI?(s(),i("img",{key:1,class:r([e.content.referenceContent?"emoji--min":"emoji--big"]),src:a(W).findEmoji(e.__content)},null,10,le)):(s(),i("pre",{key:2,innerHTML:e.__content},null,8,ce))],64)):g("v-if",!0),Ae(e)?(s(),i("pre",{key:1,innerHTML:e.__content},null,8,ue)):g("v-if",!0),ze(e,"template")?(s(),v(q,{key:2,data:e},null,8,["data"])):g("v-if",!0),e.content.chatMessageType===a(A).IMAGE?(s(),v(a(_),{key:3,width:"240",src:e.__content},null,8,["src"])):g("v-if",!0),a(z)(e.content)?(s(),i(m,{key:4},[c(a(C),{class:r({"is-audio":e.content.chatMessageType===a(A).AUDIO}),component:e.content.chatMessageType===a(A).AUDIO?a(F):a(G)},null,8,["class","component"]),f("span",me,p(a(H)(e.__content)),1)],64)):g("v-if",!0),e.content.chatMessageType===a(A).FILE?(s(),v(a(x),{key:5,"wrap-item":!1},{default:u((()=>[c(a(C),{class:"icon-file",size:"40",component:a(K)},null,8,["component"]),c(a(x),{"wrap-item":!1,vertical:"",justify:"space-between",style:{"row-gap":"0"}},{default:u((()=>[f("span",null,p(e.__content),1),f("span",de,p(e.__size),1)])),_:2},1024)])),_:2},1024)):g("v-if",!0),c(a(I),{class:"quick-menu"},{default:u((()=>[a(z)(e.content)?g("v-if",!0):(s(),i(m,{key:0},[g(' <n-button quaternary size="tiny">\n\t\t\t\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\n\t\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t\t</n-button> '),c(a(w),{quaternary:"",size:"tiny",onClick:()=>Re(e)},{icon:u((()=>[c(a(C),{size:"17",component:a(V)},null,8,["component"])])),_:2},1032,["onClick"])],64)),c(a(w),{quaternary:"",size:"tiny",onClick:t=>je(t,e.id)},{icon:u((()=>[c(a(C),{size:"14",component:a(Y)},null,8,["component"])])),_:2},1032,["onClick"])])),_:2},1024)],42,ie)])):g("v-if",!0)]))],2)):g("v-if",!0)],64)})),128))])),_:1}),c(a(U),{ref_key:"contextmenuRef",ref:Te,show:Me.value,"onUpdate:show":t[0]||(t[0]=e=>Me.value=e),position:we.value,id:ke.value,onSelect:Ne},null,8,["show","position","id"]),c(X,{title:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.44"))||"转发消息",mode:"relay",onComfirm:Be},{trigger:u((()=>{var e;return[f("span",{style:{display:"none"},ref_key:"relayTriggerRef",ref:_e},(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.45"))||"转发",512)]})),_:1})],6)}}});export{pe as default};
|
1
|
+
import{defineComponent as e,ref as n,reactive as t,computed as o,watch as s,openBlock as i,createElementBlock as a,normalizeClass as l,unref as r,normalizeStyle as c,createVNode as u,withCtx as d,Fragment as m,renderList as p,toDisplayString as y,createCommentVNode as g,createBlock as v,createElementVNode as f,createTextVNode as h,withModifiers as k,nextTick as T}from"vue";import{NImageGroup as M,NButton as w,NAvatar as C,NImage as _,NIcon as x,NSpace as I,NButtonGroup as L,NTooltip as b}from"naive-ui";import{format as j}from"date-fns";import{getHistoryRecordApi as E,readMessageApi as S}from"../api/index.js";import{useData as z}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import{isAudioOrVideoMessage as D,simplifyMessage as H,getAVTime as R,downloadFile as N}from"../utils/index.js";import{first as B,last as O,toString as q}from"lodash-es";import"trtc-sdk-v5";import U from"./MessageTemplate.vue.js";import J from"./MessageEvent.vue.js";import P from"./SelectLabel.vue.js";import{emojis as W}from"../utils/emoji.js";import X from"./ContextMenu.js";import F from"./ChatAdd.vue.js";import"../../../../shared/utils/index.js";import"@vueuse/core";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{CallOutline as G,VideocamOutline as K,DocumentSharp as Y,HappyOutline as V,ChatbubbleEllipsesOutline as $,EllipsisHorizontal as Q,ArrowDownSharp as Z}from"@vicons/ionicons5";import{useScrollLoading as ee}from"../../../../shared/hooks/useScrollLoading.js";const ne={key:0,class:"tip-text"},te={key:1,class:"tip-text"},oe={key:2,class:"message-box"},se={key:0,class:"content-box"},ie={class:"name-box"},ae=["data-time"],le=["onContextmenu"],re={key:0,class:"reference-content"},ce=["innerHTML"],ue=["src"],de=["innerHTML"],me=["innerHTML"],pe={style:{"margin-left":"8px"}},ye={class:"size"},ge=["src"],ve={key:0};var fe=e({__name:"ChatMain",setup(e){const fe=n(),{state:he,setMsgList:ke,relayMessage:Te,setCurrentSessionItem:Me,setMessageLabel:we,setUserDetail:Ce,isGroupChat:_e}=z(),xe=n(),Ie=n(!1),Le=n({left:0,top:0}),be=n(),je=n(),Ee=n(!1),Se=t({x:0,y:0}),ze={page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")},Ae=o((()=>({"--c-tip-top":_e.value?"1px":"-20px","--c-tip-gap":_e.value?"10px":"0px"})));function De({nodes:e}){var n,t;const{_ctx:o}=null==(n=e.download)?void 0:n.children,s=o?null==(t=null==o?void 0:o.proxy)?void 0:t.previewSrc:"";return[e.prev,e.next,e.rotateCounterclockwise,e.rotateClockwise,e.resizeToOriginalSize,e.zoomOut,e.zoomIn,u(b,null,{trigger:()=>u(x,{style:"cursor: pointer",color:"rgba(255, 255, 255, 0.75",size:24,component:Z,onClick:()=>s&&N(s,"img")},null),default:()=>{var e;return(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.102"))||"下载"}}),e.close]}async function He(){try{if(!ze.hasMore)return;ze.page++;const e=await E({sessionKey:he.currentSessionItem.sessionKey,page:ze.page,lastSendTime:ze.lastSendTime});if(!Array.isArray(e)||0===e.length)return ze.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const n=B(e).id;ze.lastSendTime=O(e).sendTime,ke(ze.page>1?[...he.msgList,...e]:e),1===ze.page&&he.currentSessionItem.unreadNum&&(await S({chatType:he.currentSessionItem.chatType,messageIdSet:[n],receiver:he.userInfo.id,sender:he.currentSessionItem.receiver}),Me({unreadNum:0}))}catch(e){console.log(e)}}async function Re(e,n){be.value=n,async function(e){var n,t,o,s,i,a;Ie.value=!0,await T();const{clientX:l,clientY:r}=e,{width:c=0,height:u=0,left:d=0,top:m=0}=(null==(n=fe.value)?void 0:n.getBoundingClientRect())||{},p=null!=(s=null==(o=null==(t=xe.value)?void 0:t.$el)?void 0:o.getBoundingClientRect().height)?s:220,y=null!=(a=null==(i=fe.value)?void 0:i.scrollTop)?a:0,g=5,v={};l<=d+c/2?v.left=l-d+g+"px":v.right=d+c-l-g+"px";r-m<p/2?v.top=y+g+"px":m+u-r<=p/2?v.bottom=Math.abs(y)+g+"px":v.top=y+r-m-p/2+"px";Le.value=v}(e)}function Ne(e){const{chatMessageType:n,messageTemplate:t}=e.content;return n!==A.TEMPLATE||!!t}function Be(e){const{chatMessageType:n}=e.content;return e.sender===he.userInfo.id&&Date.now()-new Date(e.sendTime).getTime()<864e5&&[A.TEXT,A.EMOJI].includes(n)}function Oe(e){const{chatMessageType:n,msg:t=""}=e.content;if(n===A.BLEND){const e=q(t).match(/<img[^>]*>/gi);return!e||!e.length}return n&&[A.TEXT,A.EMOJI].includes(n)}function qe(e){const{chatMessageType:n,msg:t=""}=e.content,o=q(t).match(/<img[^>]*>/gi);return n===A.BLEND&&o&&o.length}function Ue(e,n){var t,o;const{chatMessageType:s,messageTemplate:i}=e.content;if(s===A.TEMPLATE)return"system"===n?2==(null==(t=null==i?void 0:i.setting)?void 0:t.style.id):2!=(null==(o=null==i?void 0:i.setting)?void 0:o.style.id)}function Je(e){var n,t;const{chatMessageType:o,messageTemplate:s}=e;return o===A.TEMPLATE&&3==(null==(t=null==(n=null==s?void 0:s.setting)?void 0:n.style)?void 0:t.id)}function Pe(e,n){var t;const o=new Date(e.sendTime).getTime(),s=null==(t=he.msgList[n+1])?void 0:t.sendTime;if(s){return o-new Date(s).getTime()>3e5}return!0}function We(e){he.currentReferenceMsg=e,he.currentReferenceMsg.content.referenceContent=null,Object.assign(he.currentReferenceMsg,{chatType:he.currentSessionItem.chatType,receiver:he.currentSessionItem.receiver,receiverAvatar:he.currentSessionItem.avatar,receiverName:he.currentSessionItem.name})}function Xe(e,n){var t;"reply"!==e?"relay"===e&&(null==(t=je.value)||t.click()):We(n)}function Fe({checkedIds:e,remark:n}){const t=he.msgList.find((e=>e.id===be.value));Te({checkedIds:e,remark:n,content:t.content})}return ee(fe,(()=>{He()}),"top",(()=>{Ee.value=Ie.value=!1})),s((()=>he.id),(e=>{e&&(he.currentReferenceMsg=null,Object.assign(ze,{page:0,hasMore:!0,lastSendTime:j(new Date,"yyyy-MM-dd HH:mm:ss")}),He())}),{immediate:!0}),s((()=>he.isAppendMsg),(e=>{e&&(ke([he.currentMsg,...he.msgList]),async function(){var e;null==(e=fe.value)||e.scrollTo({top:0,behavior:"auto"})}(),he.isAppendMsg=!1)}),{immediate:!0}),(e,n)=>{var t;return i(),a("div",{class:l(["chat-main",{"home-bg":!r(he).id}]),ref_key:"chatMainRef",ref:fe,style:c(r(Ae))},[u(r(M),{"show-toolbar-tooltip":"","render-toolbar":De},{default:d((()=>[(i(!0),a(m,null,p(r(he).msgList,((e,n)=>{var t,o,s;return i(),a(m,{key:e.id},[Ne(e)?(i(),a("div",{key:0,class:l(["message-item",{"message-item--mine":e.sender==r(he).userInfo.id}])},[Pe(e,n)?(i(),a("p",ne,y(e.__sendTime),1)):g("v-if",!0),Ue(e,"system")||"WITHDRAWN"===e.status||(null==(t=e.content)?void 0:t.chatMessageType)===r(A).EVENT?(i(),a(m,{key:1},[Ue(e,"system")?(i(),v(U,{key:0,data:e},null,8,["data"])):g("v-if",!0),"WITHDRAWN"===e.status?(i(),a("p",te,[f("span",null,y(e.sender==r(he).userInfo.id?(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.67"))||"你":e.senderName)+((null==(s=window.getLanguageByCode)?void 0:s.call(window,"10010.1.68"))||"撤回了一条消息"),1),Be(e)?(i(),v(r(w),{key:0,size:"tiny",style:{color:"var(--c-primary-color)","margin-left":"5px"},text:"",onClick:()=>function(e){he.currentReEditMsg=e}(e)},{default:d((()=>{var e;return[h((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.69"))||"重新编辑")]})),_:2},1032,["onClick"])):g("v-if",!0)])):(i(),v(J,{key:2,data:e},null,8,["data"]))],64)):(i(),a("div",oe,[u(r(C),{round:"",size:38,src:e.senderAvatar,onClick:n=>r(Ce)(n,{show:!0,userId:e.sender})},null,8,["src","onClick"]),e.content?(i(),a("div",se,[f("div",ie,[f("span",{class:"name","data-time":e.__time},y(r(_e)?e.senderName:""),9,ae)]),f("div",{class:l(["content",{emoji:e.content.chatMessageType===r(A).EMOJI&&!e.content.referenceContent,template:e.content.chatMessageType===r(A).TEMPLATE,"template--3":Je(e.content),"audio-video":r(D)(e.content),file:e.content.chatMessageType===r(A).FILE}]),onContextmenu:k((n=>Re(n,e.id)),["prevent"])},[Oe(e)?(i(),a(m,{key:0},[e.content.referenceContent?(i(),a("div",re,[f("span",null,y(e.content.referenceContent.senderName)+":",1),f("pre",{innerHTML:r(H)(e.content.referenceContent.content)},null,8,ce)])):g("v-if",!0),e.content.chatMessageType===r(A).EMOJI?(i(),a("img",{key:1,class:l([e.content.referenceContent?"emoji--min":"emoji--big"]),src:r(W).findEmoji(e.__content)},null,10,ue)):(i(),a("pre",{key:2,innerHTML:e.__content},null,8,de))],64)):g("v-if",!0),qe(e)?(i(),a("pre",{key:1,innerHTML:e.__content},null,8,me)):g("v-if",!0),Ue(e,"template")?(i(),v(U,{key:2,data:e},null,8,["data"])):g("v-if",!0),e.content.chatMessageType===r(A).IMAGE?(i(),v(r(_),{key:3,width:"240",src:e.__content},null,8,["src"])):g("v-if",!0),r(D)(e.content)?(i(),a(m,{key:4},[u(r(x),{class:l({"is-audio":e.content.chatMessageType===r(A).AUDIO}),component:e.content.chatMessageType===r(A).AUDIO?r(G):r(K)},null,8,["class","component"]),f("span",pe,y(r(R)(e.__content)),1)],64)):g("v-if",!0),e.content.chatMessageType===r(A).FILE?(i(),v(r(I),{key:5,"wrap-item":!1},{default:d((()=>[u(r(x),{class:"icon-file",size:"40",component:r(Y)},null,8,["component"]),u(r(I),{"wrap-item":!1,vertical:"",justify:"space-between",style:{"row-gap":"0"}},{default:d((()=>[f("span",null,y(e.__content),1),f("span",ye,y(e.__size),1)])),_:2},1024)])),_:2},1024)):g("v-if",!0),!r(D)(e.content)&&e.content.labelList?(i(),v(r(I),{key:6,"wrap-item":!1},{default:d((()=>[(i(!0),a(m,null,p(e.content.labelList,((n,t)=>(i(),a("div",{key:t,class:"label-item"},["text"===n.type?(i(),v(r(w),{key:0,type:n.label.type,secondary:"",size:"tiny",onClick:()=>r(we)({type:n.type,labelItem:n.label,msgId:e.id})},{default:d((()=>[h(y(n.label.label),1)])),_:2},1032,["type","onClick"])):(i(),v(r(w),{key:1,quaternary:"",size:"tiny",onClick:()=>r(we)({type:n.type,labelItem:n.label,msgId:e.id})},{icon:d((()=>[f("img",{class:"emoji--min",src:r(W).findEmoji(n.label)},null,8,ge)])),_:2},1032,["onClick"])),(i(!0),a(m,null,p(n.userList,((e,t)=>(i(),a(m,{key:e.id},[u(r(w),{quaternary:"",type:"tertiary",size:"tiny",onClick:n=>r(Ce)(n,{show:!0,info:e})},{default:d((()=>[h(y(e.name),1)])),_:2},1032,["onClick"]),t<n.userList.length-1?(i(),a("span",ve,",")):g("v-if",!0)],64)))),128))])))),128))])),_:2},1024)):g("v-if",!0),u(r(L),{class:"quick-menu"},{default:d((()=>[r(D)(e.content)?g("v-if",!0):(i(),a(m,{key:0},[u(r(w),{quaternary:"",size:"tiny",onClick:n=>function(e,n){Ee.value=!0,Se.x=e.clientX,Se.y=e.clientY,be.value=n}(n,e.id)},{icon:d((()=>[u(r(x),{size:"17",component:r(V)},null,8,["component"])])),_:2},1032,["onClick"]),u(r(w),{quaternary:"",size:"tiny",onClick:()=>We(e)},{icon:d((()=>[u(r(x),{size:"17",component:r($)},null,8,["component"])])),_:2},1032,["onClick"])],64)),u(r(w),{quaternary:"",size:"tiny",onClick:n=>Re(n,e.id)},{icon:d((()=>[u(r(x),{size:"14",component:r(Q)},null,8,["component"])])),_:2},1032,["onClick"])])),_:2},1024)],42,le)])):g("v-if",!0)]))],2)):g("v-if",!0)],64)})),128))])),_:1}),u(r(X),{ref_key:"contextmenuRef",ref:xe,show:Ie.value,"onUpdate:show":n[0]||(n[0]=e=>Ie.value=e),position:Le.value,id:be.value,onSelect:Xe},null,8,["show","position","id"]),u(F,{title:(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.44"))||"转发消息",mode:"relay",onComfirm:Fe},{trigger:d((()=>{var e;return[f("span",{style:{display:"none"},ref_key:"relayTriggerRef",ref:je},(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.45"))||"转发",512)]})),_:1}),be.value?(i(),v(P,{key:0,show:Ee.value,"onUpdate:show":n[1]||(n[1]=e=>Ee.value=e),x:Se.x,y:Se.y,id:be.value},null,8,["show","x","y","id"])):g("v-if",!0)],6)}}});export{fe as default};
|
@@ -34,6 +34,15 @@ declare const _default: import("vue").DefineComponent<{
|
|
34
34
|
currentAVMsg: AnyObject;
|
35
35
|
currentGroupUser: AnyObject[];
|
36
36
|
showMultipleVideo: boolean;
|
37
|
+
userDetail: {
|
38
|
+
show: boolean;
|
39
|
+
position: {
|
40
|
+
x: number;
|
41
|
+
y: number;
|
42
|
+
};
|
43
|
+
userId: string;
|
44
|
+
info: AnyObject | null;
|
45
|
+
};
|
37
46
|
};
|
38
47
|
recordRef: import("vue").Ref<any>;
|
39
48
|
recordList: import("vue").Ref<AnyObject[]>;
|
@@ -1,35 +1,52 @@
|
|
1
|
+
import { AnyObject } from '../../../../shared/types';
|
1
2
|
declare const _default: import("vue").DefineComponent<{}, {
|
2
3
|
listRef: import("vue").Ref<any>;
|
3
4
|
inputRef: import("vue").Ref<any>;
|
4
5
|
showSearch: import("vue").Ref<boolean>;
|
5
6
|
keyword: import("vue").Ref<string>;
|
6
|
-
cssVars: import("vue").ComputedRef<
|
7
|
+
cssVars: import("vue").ComputedRef<AnyObject>;
|
7
8
|
state: {
|
8
9
|
orgId: string | number;
|
9
|
-
currentSessionItem:
|
10
|
+
currentSessionItem: AnyObject;
|
10
11
|
id: string;
|
11
|
-
userInfo:
|
12
|
-
msgList:
|
13
|
-
currentMsg:
|
12
|
+
userInfo: AnyObject;
|
13
|
+
msgList: AnyObject[];
|
14
|
+
currentMsg: AnyObject;
|
14
15
|
isAppendMsg: boolean;
|
15
|
-
sessionList:
|
16
|
+
sessionList: AnyObject[];
|
16
17
|
isChangeSession: boolean;
|
17
|
-
updateSessionItem:
|
18
|
+
updateSessionItem: AnyObject;
|
18
19
|
isUpdateSession: boolean;
|
19
|
-
currentReferenceMsg:
|
20
|
-
currentReEditMsg:
|
20
|
+
currentReferenceMsg: AnyObject | null;
|
21
|
+
currentReEditMsg: AnyObject | null;
|
21
22
|
showVideo: boolean;
|
22
|
-
currentAVMsg:
|
23
|
-
currentGroupUser:
|
23
|
+
currentAVMsg: AnyObject;
|
24
|
+
currentGroupUser: AnyObject[];
|
24
25
|
showMultipleVideo: boolean;
|
26
|
+
userDetail: {
|
27
|
+
show: boolean;
|
28
|
+
position: {
|
29
|
+
x: number;
|
30
|
+
y: number;
|
31
|
+
};
|
32
|
+
userId: string;
|
33
|
+
info: AnyObject | null;
|
34
|
+
};
|
25
35
|
};
|
26
|
-
|
36
|
+
openSession: (session: string | AnyObject) => Promise<void>;
|
37
|
+
userList: import("vue").Ref<AnyObject[]>;
|
27
38
|
handleInput: () => void;
|
28
39
|
currentTabValue: import("vue").Ref<string>;
|
29
|
-
|
40
|
+
currentIndex: import("vue").Ref<number>;
|
41
|
+
groupList: import("vue").ComputedRef<AnyObject[]>;
|
30
42
|
showNoData: import("vue").ComputedRef<boolean>;
|
31
43
|
showAllNoData: import("vue").ComputedRef<boolean>;
|
32
44
|
showGroupNoData: import("vue").ComputedRef<boolean>;
|
45
|
+
groupStartIndex: import("vue").ComputedRef<number>;
|
46
|
+
currentList: import("vue").ComputedRef<AnyObject[]>;
|
47
|
+
handleKeyDown: (event: KeyboardEvent) => void;
|
48
|
+
addSession: (id: string) => Promise<void>;
|
49
|
+
handleTabChange: () => void;
|
33
50
|
handleClose: () => void;
|
34
51
|
NPopover: any;
|
35
52
|
NButton: any;
|
@@ -45,7 +62,7 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
45
62
|
default: string;
|
46
63
|
};
|
47
64
|
config: {
|
48
|
-
type: import("vue").PropType<
|
65
|
+
type: import("vue").PropType<AnyObject>;
|
49
66
|
default: () => {
|
50
67
|
title: string;
|
51
68
|
content: string;
|
@@ -58,7 +75,7 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
58
75
|
default: string;
|
59
76
|
};
|
60
77
|
config: {
|
61
|
-
type: import("vue").PropType<
|
78
|
+
type: import("vue").PropType<AnyObject>;
|
62
79
|
default: () => {
|
63
80
|
title: string;
|
64
81
|
content: string;
|
@@ -82,7 +99,7 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
82
99
|
default: string;
|
83
100
|
};
|
84
101
|
config: {
|
85
|
-
type: import("vue").PropType<
|
102
|
+
type: import("vue").PropType<AnyObject>;
|
86
103
|
default: () => {
|
87
104
|
title: string;
|
88
105
|
content: string;
|
@@ -92,22 +109,22 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
92
109
|
onReloadPage?: ((...args: any[]) => any) | undefined;
|
93
110
|
}, {
|
94
111
|
type: string;
|
95
|
-
config:
|
112
|
+
config: AnyObject;
|
96
113
|
}>>;
|
97
114
|
userItemRender: import("vue").DefineComponent<{
|
98
115
|
item: {
|
99
|
-
type: import("vue").PropType<
|
116
|
+
type: import("vue").PropType<AnyObject>;
|
100
117
|
default: () => {};
|
101
118
|
};
|
102
119
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "item-click"[], "item-click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
103
120
|
item: {
|
104
|
-
type: import("vue").PropType<
|
121
|
+
type: import("vue").PropType<AnyObject>;
|
105
122
|
default: () => {};
|
106
123
|
};
|
107
124
|
}>> & {
|
108
125
|
"onItem-click"?: ((...args: any[]) => any) | undefined;
|
109
126
|
}, {
|
110
|
-
item:
|
127
|
+
item: AnyObject;
|
111
128
|
}>;
|
112
129
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
113
130
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
import{createElementVNode as e,defineComponent as l,ref as
|
1
|
+
import{createElementVNode as e,defineComponent as l,ref as o,computed as n,watch as t,nextTick as a,openBlock as u,createBlock as s,unref as i,normalizeStyle as r,withCtx as v,createVNode as c,createTextVNode as d,withModifiers as p,createElementBlock as f,Fragment as g,renderList as w,normalizeClass as m,createCommentVNode as y,withDirectives as h,vShow as k}from"vue";import{NPopover as C,NButton as L,NIcon as _,NInput as B,NTabs as j,NTabPane as M,NDivider as x}from"naive-ui";import{SearchOutline as I}from"@vicons/ionicons5";import{useData as U}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{openSessionApi as D}from"../api/index.js";import{isGroup as b}from"../utils/index.js";import{trim as R}from"lodash-es";import"trtc-sdk-v5";import{useSearchUserList as A}from"../hooks/useSearchUserList.js";import S from"../../../default-page/index.js";import z from"./userItemRender.js";var E,K;const G=e("div",{class:"title"},(null==(E=window.getLanguageByCode)?void 0:E.call(window,"10010.1.510"))||"联系人",-1),N=e("div",{class:"title"},(null==(K=window.getLanguageByCode)?void 0:K.call(window,"10010.1.575"))||"我的群组",-1),T={class:"user-list-wrapper"};var V=l({__name:"ChatSearch",setup(l){const E=o(),K=o(),V=o(!1),$=o(""),{cssVars:q,state:F,openSession:H}=U(),{userList:J,handleInput:O}=A({wrapperRef:E,keywordRef:$}),P=o("all"),Q=o(0),W=n((()=>($.value||"").replace(/^\s+|\s+$/g,"")?F.sessionList.filter((e=>b(e)&&(null==e?void 0:e.name.includes($.value)))):[])),X=n((()=>!J.value.length&&!!R($.value||""))),Y=n((()=>!J.value.length&&!W.value.length&&!!R($.value||""))),Z=n((()=>!W.value.length&&!!R($.value||""))),ee=n((()=>J.value.length>3?4:J.value.length)),le=n((()=>{switch(P.value){case"user":return J.value;case"group":return W.value;default:{const e=[],l=J.value.length,o=W.value.length;return l>0&&(l>3?e.push(...J.value.slice(0,3),{id:"user"}):e.push(...J.value)),o>0&&(o>3?e.push(...W.value.slice(0,3),{id:"group"}):e.push(...W.value)),e}}}));function oe(e){if(["ArrowUp","ArrowDown"].includes(e.key)){e.preventDefault();const l=i(Q);if("ArrowUp"===e.key){const e=l>0?l-1:le.value.length-1;Q.value=e}else if("ArrowDown"===e.key){const e=l<le.value.length-1?l+1:0;Q.value=e}}else if(["Enter"].includes(e.key)){e.preventDefault();const l=le.value.find(((e,l)=>Q.value===l)).id;["user","group"].includes(l)?P.value=l:async function(e){V.value=!1;const l=F.sessionList.find((l=>e&&[l.receiver,l.id].includes(e)));let o=l;if(!l){o=await D({chatType:"SINGLE",receiver:e,sender:F.userInfo.id})}H(o)}(l)}}function ne(){K.value.focus(),Q.value=0}function te(){V.value=!1}return t((()=>V.value),(async e=>{var l;e&&(await a(),null==(l=K.value)||l.focus())})),(l,o)=>(u(),s(i(C),{raw:"","content-class":"search-content",class:"search-wrapper",style:r(i(q)),show:V.value,"onUpdate:show":o[6]||(o[6]=e=>V.value=e),placement:"top",trigger:"click","display-directive":"show","show-arrow":!1,delay:0,overlap:""},{trigger:v((()=>[c(i(L),{color:"#ffffff4D",class:"search-trigger-btn"},{icon:v((()=>[c(i(_),{component:i(I),color:"#ffffff80"},null,8,["component"])])),default:v((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.80"))||"搜索联系人")]})),_:1})])),default:v((()=>[c(i(B),{ref_key:"inputRef",ref:K,size:"small",clearable:"",autofocus:"",value:$.value,"onUpdate:value":[o[0]||(o[0]=e=>$.value=e),i(O)],onKeydown:p(oe,["stop"])},{prefix:v((()=>[c(i(_),{color:"#ffffff80",component:i(I)},null,8,["component"])])),_:1},8,["value","onUpdate:value","onKeydown"]),c(i(j),{type:"line",animated:"",value:P.value,"onUpdate:value":[o[5]||(o[5]=e=>P.value=e),ne]},{default:v((()=>{var l,n,t;return[c(i(M),{name:"all",tab:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.571"))||"综合","display-directive":"show",style:{padding:"0 10px 10px"}},{default:v((()=>{var e;return[i(J).length>0?(u(),f(g,{key:0},[G,(u(!0),f(g,null,w(i(J),((e,l)=>(u(),f(g,{key:e.id},[l<3?(u(),s(i(z),{key:0,item:e,class:m({last:i(J).length<4?l===i(J).length-1:2===l,selected:Q.value===l}),onItemClick:te,onMouseover:p((()=>Q.value=l),["stop"])},null,8,["item","class","onMouseover"])):y("v-if",!0)],64)))),128)),i(J).length>3?(u(),f("div",{key:0,onClick:o[1]||(o[1]=()=>P.value="user"),class:m(["user-item",3===Q.value?"selected":""]),onMouseover:o[2]||(o[2]=p((()=>Q.value=3),["stop"]))},[c(i(L),{text:"",type:"primary"},{icon:v((()=>[c(i(_),{component:i(I),size:"16"},null,8,["component"])])),default:v((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.573"))||"查看更多联系人")]})),_:1})],34)):y("v-if",!0)],64)):y("v-if",!0),i(J).length&&i(W).length?(u(),s(i(x),{key:1})):y("v-if",!0),i(W).length>0?(u(),f(g,{key:2},[N,(u(!0),f(g,null,w(i(W),((e,l)=>(u(),f(g,{key:e.id},[l<3?(u(),s(i(z),{key:0,item:e,class:m({last:i(W).length<4?l===i(W).length-1:2===l,selected:Q.value===i(ee)+l}),onItemClick:te,onMouseover:p((()=>Q.value=i(ee)+l),["stop"])},null,8,["item","class","onMouseover"])):y("v-if",!0)],64)))),128)),i(W).length>3?(u(),f("div",{key:0,onClick:o[3]||(o[3]=()=>P.value="group"),class:m(["user-item",Q.value===i(ee)+3?"selected":""]),onMouseover:o[4]||(o[4]=p((()=>Q.value=i(ee)+3),["stop"]))},[c(i(L),{text:"",type:"primary"},{icon:v((()=>[c(i(_),{component:i(I),size:"16"},null,8,["component"])])),default:v((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.574"))||"查看更多群组")]})),_:1})],34)):y("v-if",!0)],64)):y("v-if",!0),h(c(i(S),{config:{title:" ",content:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[k,i(Y)]])]})),_:1}),c(i(M),{name:"user",tab:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.510"))||"联系人","display-directive":"show"},{default:v((()=>{var l;return[e("div",{class:"user-list-wrapper",ref_key:"listRef",ref:E},[(u(!0),f(g,null,w(i(J),((e,l)=>(u(),s(i(z),{key:e.id,item:e,onItemClick:te,class:m({selected:Q.value===l}),onMouseover:p((()=>Q.value=l),["stop"])},null,8,["item","class","onMouseover"])))),128)),h(c(i(S),{config:{title:" ",content:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[k,i(X)]])],512)]})),_:1}),c(i(M),{name:"group",tab:(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.572"))||"群组","display-directive":"show"},{default:v((()=>{var l;return[e("div",T,[(u(!0),f(g,null,w(i(W),((e,l)=>(u(),s(i(z),{key:e.id,item:e,onItemClick:te,class:m({selected:Q.value===l}),onMouseover:p((()=>Q.value=l),["stop"])},null,8,["item","class","onMouseover"])))),128)),h(c(i(S),{config:{title:" ",content:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.81"))||"找不到相关的结果"},type:"5"},null,512),[[k,i(Z)]])])]})),_:1})]})),_:1},8,["value"])])),_:1},8,["style","show"]))}});export{V as default};
|