yx-web-sdk 0.0.18 → 0.0.20
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/dist/ait-person-popover/index.js +1 -1
- package/dist/chat-card/index.js +1 -1
- package/dist/chat-content/index.js +1 -1
- package/dist/chat-page/index.js +1 -1
- package/dist/chat-room/index.js +1 -1
- package/dist/common-avatar/index.js +1 -1
- package/dist/components/chat-card/index.vue.d.ts +2 -0
- package/dist/components/img-info-wrapper/index.d.ts +0 -0
- package/dist/{chat-page → components/img-info-wrapper}/index.vue.d.ts +2 -2
- package/dist/img-info-wrapper/index.js +1 -0
- package/dist/index/style2.css +30 -162
- package/dist/index/style4.css +177 -120
- package/dist/index/style6.css +513 -25
- package/dist/index/style7.css +143 -466
- package/dist/{index-0o2Mn1Jl.mjs → index-BPnLB3av.mjs} +1 -1
- package/dist/{index-C14AY1pk.mjs → index-DME8_VYv.mjs} +7 -6
- package/dist/{index-sJcDnl5D.mjs → index-Dwglj7_M.mjs} +1 -1
- package/dist/index-entry/index.js +5 -5
- package/dist/index-entry/style.css +19 -19
- package/dist/{index.vue_vue_type_script_setup_true_lang-0YeDxfed.mjs → index.vue_vue_type_script_setup_true_lang-C18d9C8W.mjs} +9 -3
- package/dist/{index.vue_vue_type_style_index_0_lang-UfvEW_0n.mjs → index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs} +137 -57
- package/dist/index.vue_vue_type_style_index_0_lang-CBpDXwwP.mjs +589 -0
- package/dist/{index.vue_vue_type_style_index_0_lang-BxxUcry3.mjs → index.vue_vue_type_style_index_0_lang-E3PcX8MA.mjs} +3 -3
- package/dist/{index.vue_vue_type_style_index_0_lang-BdIDeEyF.mjs → index.vue_vue_type_style_index_0_lang-QCNj8WyS.mjs} +171 -40
- package/dist/members-sidebar/index.js +1 -1
- package/dist/notice-box/index.js +1 -1
- package/dist/server-channel-sidebar/index.js +1 -1
- package/dist/stores/channel.d.ts +50 -14
- package/dist/stores/qchat.d.ts +3 -3
- package/dist/stores/sdk.d.ts +0 -8
- package/dist/stores/server.d.ts +26 -26
- package/dist/style.css +180 -90
- package/dist/types/qchat-server.d.ts +1 -1
- package/dist/utils/index.d.ts +10 -2
- package/dist/yx-web-sdk.es.js +644 -296
- package/dist/yx-web-sdk.umd.js +643 -295
- package/package.json +1 -1
- package/dist/ait-person-popover/index.d.ts +0 -3
- package/dist/ait-person-popover/index.vue.d.ts +0 -39
- package/dist/chat-card/index.d.ts +0 -3
- package/dist/chat-card/index.vue.d.ts +0 -25
- package/dist/chat-content/index.d.ts +0 -3
- package/dist/chat-content/index.vue.d.ts +0 -51
- package/dist/chat-page/index.d.ts +0 -3
- package/dist/chat-room/index.d.ts +0 -3
- package/dist/chat-room/index.vue.d.ts +0 -9
- package/dist/common-avatar/index.d.ts +0 -3
- package/dist/common-avatar/index.vue.d.ts +0 -17
- package/dist/icon-font/index.d.ts +0 -48
- package/dist/index-entry/index.d.ts +0 -2
- package/dist/index-entry/index.vue.d.ts +0 -24
- package/dist/index.vue_vue_type_style_index_0_lang-oO4NDv0U.mjs +0 -456
- package/dist/members-sidebar/index.d.ts +0 -3
- package/dist/members-sidebar/index.vue.d.ts +0 -4
- package/dist/notice-box/index.d.ts +0 -3
- package/dist/notice-box/index.vue.d.ts +0 -13
- package/dist/server-channel-sidebar/index.d.ts +0 -3
- package/dist/server-channel-sidebar/index.vue.d.ts +0 -21
- /package/dist/{index.vue_vue_type_style_index_0_lang-B2YRkoln.mjs → index.vue_vue_type_style_index_0_lang-BxXBf_VA.mjs} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createVNode, defineComponent, ref, computed, watch, onUnmounted, openBlock, createElementBlock, normalizeClass, createElementVNode, unref, Fragment, renderList, withCtx, toDisplayString, createBlock, createCommentVNode, normalizeStyle, withModifiers, createTextVNode } from "vue";
|
|
2
2
|
import { Form, Tooltip, Badge, Modal, Input, Button, message } from "ant-design-vue";
|
|
3
|
-
import {
|
|
3
|
+
import { c as useImSdkStore, a as useServerStore, u as useChannelStore, b as useUserStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
|
|
4
4
|
import { I as IconFont } from "./index-L_drmZir.mjs";
|
|
5
5
|
import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
|
|
6
6
|
import { C as CloseOutlined } from "./CloseOutlined-BEcmJaCc.mjs";
|
|
@@ -187,6 +187,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
187
187
|
};
|
|
188
188
|
const getChannelUnread = (channelId) => {
|
|
189
189
|
const channel = channelList.value.find((c) => c.channelId === channelId);
|
|
190
|
+
console.log("channel", channel);
|
|
190
191
|
return (channel == null ? void 0 : channel.unreadCount) || 0;
|
|
191
192
|
};
|
|
192
193
|
const handleSelectServer = async (server) => {
|
|
@@ -276,11 +277,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
276
277
|
cancelText: "取消",
|
|
277
278
|
wrapClassName: "delete-channel-modal",
|
|
278
279
|
async onOk() {
|
|
279
|
-
var _a;
|
|
280
|
+
var _a, _b;
|
|
280
281
|
try {
|
|
281
|
-
await window.qchat.qchatChannel.deleteChannel({
|
|
282
|
+
await ((_a = window.qchat) == null ? void 0 : _a.qchatChannel.deleteChannel({
|
|
282
283
|
channelId: channelForm.value.channelId
|
|
283
|
-
});
|
|
284
|
+
}));
|
|
284
285
|
message.success("删除成功");
|
|
285
286
|
channelModalVisible.value = false;
|
|
286
287
|
await channelStore.getChannelsByPage({
|
|
@@ -288,7 +289,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
288
289
|
timetag: 0,
|
|
289
290
|
limit
|
|
290
291
|
});
|
|
291
|
-
if (((
|
|
292
|
+
if (((_b = currentChannel.value) == null ? void 0 : _b.channelId) === channelForm.value.channelId) {
|
|
292
293
|
if (channelStore.channelList.length > 0) {
|
|
293
294
|
emit("selectChannel", channelStore.channelList[0]);
|
|
294
295
|
} else {
|
|
@@ -637,7 +638,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
637
638
|
};
|
|
638
639
|
}
|
|
639
640
|
});
|
|
640
|
-
const ServerChannelSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
641
|
+
const ServerChannelSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-961f30d7"]]);
|
|
641
642
|
export {
|
|
642
643
|
ServerChannelSidebar as S
|
|
643
644
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, ref, watch, onBeforeUnmount, computed, openBlock, createBlock, Teleport, withDirectives, createElementVNode, normalizeStyle, createElementBlock, withModifiers, normalizeClass, toDisplayString, createCommentVNode, Fragment, renderList, createVNode, vShow } from "vue";
|
|
2
2
|
import { autoUpdate, computePosition, offset, flip, shift } from "@floating-ui/dom";
|
|
3
|
-
import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-
|
|
3
|
+
import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
|
|
4
4
|
import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
5
5
|
const _hoisted_1 = { class: "ait-person-popover-content" };
|
|
6
6
|
const _hoisted_2 = ["onMousedown"];
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { defineComponent, computed, ref, onMounted, onUnmounted, openBlock, createElementBlock, createVNode, unref, withCtx, createTextVNode, createElementVNode, Fragment, createBlock, createCommentVNode } from "vue";
|
|
2
2
|
import { useRouter } from "vue-router";
|
|
3
3
|
import { Spin, Result, Button, Empty, message } from "ant-design-vue";
|
|
4
|
-
import { s as setGlobalRequest,
|
|
5
|
-
import { _ as _sfc_main$1 } from "../index.vue_vue_type_style_index_0_lang-
|
|
6
|
-
import { S as ServerChannelSidebar } from "../index-
|
|
7
|
-
import { M as MembersSidebar } from "../index-
|
|
4
|
+
import { s as setGlobalRequest, c as useImSdkStore, a as useServerStore, u as useChannelStore, b as useUserStore, d as useGlobalStore } from "../index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
|
|
5
|
+
import { _ as _sfc_main$1 } from "../index.vue_vue_type_style_index_0_lang-E3PcX8MA.mjs";
|
|
6
|
+
import { S as ServerChannelSidebar } from "../index-DME8_VYv.mjs";
|
|
7
|
+
import { M as MembersSidebar } from "../index-BPnLB3av.mjs";
|
|
8
8
|
import { _ as _export_sfc } from "../_plugin-vue_export-helper-1tPrXgE0.mjs";
|
|
9
9
|
const _imports_0 = "data:image/png;base64,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";
|
|
10
10
|
const _hoisted_1 = { class: "qchat-container" };
|
|
@@ -341,7 +341,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
341
341
|
};
|
|
342
342
|
}
|
|
343
343
|
});
|
|
344
|
-
const IndexEntry = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
344
|
+
const IndexEntry = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-240f366f"]]);
|
|
345
345
|
export {
|
|
346
346
|
IndexEntry as default
|
|
347
347
|
};
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
.qchat-container[data-v-
|
|
1
|
+
.qchat-container[data-v-240f366f] {
|
|
2
2
|
display: flex;
|
|
3
3
|
height: 100%;
|
|
4
4
|
width: 100%;
|
|
5
5
|
color: var(--theme-text);
|
|
6
6
|
font-family: "Whitney", "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
7
7
|
}
|
|
8
|
-
.loading-wrap[data-v-
|
|
9
|
-
.error-wrap[data-v-
|
|
10
|
-
.init-wrap[data-v-
|
|
8
|
+
.loading-wrap[data-v-240f366f],
|
|
9
|
+
.error-wrap[data-v-240f366f],
|
|
10
|
+
.init-wrap[data-v-240f366f] {
|
|
11
11
|
display: flex;
|
|
12
12
|
align-items: center;
|
|
13
13
|
justify-content: center;
|
|
14
14
|
width: 100%;
|
|
15
15
|
height: 100%;
|
|
16
16
|
}
|
|
17
|
-
.loading-wrap[data-v-
|
|
18
|
-
.error-wrap[data-v-
|
|
19
|
-
.init-wrap[data-v-
|
|
17
|
+
.loading-wrap[data-v-240f366f] .ant-spin-text,
|
|
18
|
+
.error-wrap[data-v-240f366f] .ant-spin-text,
|
|
19
|
+
.init-wrap[data-v-240f366f] .ant-spin-text {
|
|
20
20
|
color: #dcddde;
|
|
21
21
|
}
|
|
22
|
-
.loading-wrap[data-v-
|
|
23
|
-
.loading-wrap[data-v-
|
|
24
|
-
.error-wrap[data-v-
|
|
25
|
-
.error-wrap[data-v-
|
|
26
|
-
.init-wrap[data-v-
|
|
27
|
-
.init-wrap[data-v-
|
|
22
|
+
.loading-wrap[data-v-240f366f] .ant-result-title,
|
|
23
|
+
.loading-wrap[data-v-240f366f] .ant-result-subtitle,
|
|
24
|
+
.error-wrap[data-v-240f366f] .ant-result-title,
|
|
25
|
+
.error-wrap[data-v-240f366f] .ant-result-subtitle,
|
|
26
|
+
.init-wrap[data-v-240f366f] .ant-result-title,
|
|
27
|
+
.init-wrap[data-v-240f366f] .ant-result-subtitle {
|
|
28
28
|
color: #dcddde;
|
|
29
29
|
}
|
|
30
|
-
.loading-wrap[data-v-
|
|
31
|
-
.error-wrap[data-v-
|
|
32
|
-
.init-wrap[data-v-
|
|
30
|
+
.loading-wrap[data-v-240f366f] .ant-empty-description,
|
|
31
|
+
.error-wrap[data-v-240f366f] .ant-empty-description,
|
|
32
|
+
.init-wrap[data-v-240f366f] .ant-empty-description {
|
|
33
33
|
color: #72767d;
|
|
34
34
|
}
|
|
35
|
-
.chat-main[data-v-
|
|
35
|
+
.chat-main[data-v-240f366f] {
|
|
36
36
|
flex: 1;
|
|
37
37
|
display: flex;
|
|
38
38
|
flex-direction: column;
|
|
@@ -40,12 +40,12 @@
|
|
|
40
40
|
overflow: hidden;
|
|
41
41
|
min-width: 300px;
|
|
42
42
|
}
|
|
43
|
-
.chat-main .no-channel[data-v-
|
|
43
|
+
.chat-main .no-channel[data-v-240f366f] {
|
|
44
44
|
display: flex;
|
|
45
45
|
align-items: center;
|
|
46
46
|
justify-content: center;
|
|
47
47
|
height: 100%;
|
|
48
48
|
}
|
|
49
|
-
.chat-main .no-channel[data-v-
|
|
49
|
+
.chat-main .no-channel[data-v-240f366f] .ant-empty-description {
|
|
50
50
|
color: #72767d;
|
|
51
51
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, watch, openBlock, createBlock, createElementBlock } from "vue";
|
|
2
|
-
import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-
|
|
3
|
-
import {
|
|
2
|
+
import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-QCNj8WyS.mjs";
|
|
3
|
+
import { u as useChannelStore, a as useServerStore, b as useUserStore } from "./index.vue_vue_type_style_index_0_lang-BaKNB-4q.mjs";
|
|
4
4
|
const _hoisted_1 = { key: 1 };
|
|
5
5
|
const HISTORY_LIMIT = 100;
|
|
6
6
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
@@ -54,7 +54,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
54
54
|
);
|
|
55
55
|
const sendMessage = (type, file, option) => {
|
|
56
56
|
if (type === "textMsg") {
|
|
57
|
-
channelStore.sendTextMsg({
|
|
57
|
+
channelStore.sendTextMsg({
|
|
58
|
+
body: file,
|
|
59
|
+
ext: option == null ? void 0 : option.ext,
|
|
60
|
+
mentionAccids: option == null ? void 0 : option.mentionAccids,
|
|
61
|
+
attach: option == null ? void 0 : option.attach
|
|
62
|
+
// 传递附件
|
|
63
|
+
});
|
|
58
64
|
return;
|
|
59
65
|
}
|
|
60
66
|
if (type === "SendImg") {
|
|
@@ -86,12 +86,12 @@ const promiseDebounce = (func, wait) => {
|
|
|
86
86
|
return function(...args) {
|
|
87
87
|
return new Promise((resolve, reject) => {
|
|
88
88
|
queue.push([resolve, reject]);
|
|
89
|
-
clearTimeout(timer);
|
|
89
|
+
clearTimeout(timer ?? void 0);
|
|
90
90
|
timer = setTimeout(() => {
|
|
91
91
|
func.apply(this, args).then((res) => {
|
|
92
|
-
queue.
|
|
92
|
+
queue.forEach(([resolver]) => resolver(res));
|
|
93
93
|
}).catch((err) => {
|
|
94
|
-
queue.
|
|
94
|
+
queue.forEach(([, rejecter]) => rejecter(err));
|
|
95
95
|
}).finally(() => {
|
|
96
96
|
queue.length = 0;
|
|
97
97
|
timer = null;
|
|
@@ -119,6 +119,9 @@ function getImageMsgDisplaySize(attach) {
|
|
|
119
119
|
h = Math.min(IMG_MSG_SIDE_MAX, h0 * scale);
|
|
120
120
|
return { width: Math.round(w), height: Math.round(h) };
|
|
121
121
|
}
|
|
122
|
+
const getMByteSize = (size) => {
|
|
123
|
+
return (size / 1024 / 1024).toFixed(2);
|
|
124
|
+
};
|
|
122
125
|
const useGlobalStore = defineStore("global", {
|
|
123
126
|
state: () => ({
|
|
124
127
|
loginStatus: false
|
|
@@ -36065,7 +36068,6 @@ const useServerStore = defineStore("server", {
|
|
|
36065
36068
|
async getSeverList(options) {
|
|
36066
36069
|
if (window.qchat) {
|
|
36067
36070
|
const res = await window.qchat.qchatServer.getServersByPage(options);
|
|
36068
|
-
console.log("getSeverList", res);
|
|
36069
36071
|
this.setSeverList(res);
|
|
36070
36072
|
}
|
|
36071
36073
|
},
|
|
@@ -36365,8 +36367,11 @@ const useChannelStore = defineStore("channel", {
|
|
|
36365
36367
|
serverUnReadCountList: []
|
|
36366
36368
|
}),
|
|
36367
36369
|
actions: {
|
|
36368
|
-
|
|
36369
|
-
|
|
36370
|
+
/**
|
|
36371
|
+
* 设置频道列表并获取未读数
|
|
36372
|
+
* @param payload 频道列表数据
|
|
36373
|
+
*/
|
|
36374
|
+
async setChannelList(payload) {
|
|
36370
36375
|
const serverStore = useServerStore();
|
|
36371
36376
|
serverStore.resetServerUnReadCount();
|
|
36372
36377
|
this.channelList = payload.datas;
|
|
@@ -36382,65 +36387,89 @@ const useChannelStore = defineStore("channel", {
|
|
|
36382
36387
|
});
|
|
36383
36388
|
}
|
|
36384
36389
|
this.channelListQueryTag = payload.listQueryTag;
|
|
36390
|
+
await this.subscribleChannels();
|
|
36385
36391
|
},
|
|
36386
|
-
|
|
36387
|
-
|
|
36392
|
+
/**
|
|
36393
|
+
* 订阅频道并获取未读数
|
|
36394
|
+
* @description 先使用 getChannelUnreadInfos 主动查询未读数(获取登录前积累的未读),再订阅频道接收实时更新
|
|
36395
|
+
*/
|
|
36396
|
+
async subscribleChannels() {
|
|
36397
|
+
var _a, _b;
|
|
36388
36398
|
this.channelUnReadInfoList = [];
|
|
36389
36399
|
const channels = [];
|
|
36390
36400
|
this.channelList.forEach((item) => {
|
|
36391
36401
|
channels.push({ serverId: item.serverId, channelId: item.channelId });
|
|
36392
36402
|
});
|
|
36393
|
-
|
|
36403
|
+
if (channels.length === 0) {
|
|
36404
|
+
return;
|
|
36405
|
+
}
|
|
36406
|
+
try {
|
|
36407
|
+
const unreadInfos = await ((_a = window.qchat) == null ? void 0 : _a.qchatChannel.getChannelUnreadInfos({
|
|
36408
|
+
channels
|
|
36409
|
+
}));
|
|
36410
|
+
this.applyUnreadInfosToChannels(unreadInfos);
|
|
36411
|
+
} catch (error) {
|
|
36412
|
+
console.error("[subscribleChannels] 查询未读数失败:", error);
|
|
36413
|
+
}
|
|
36414
|
+
(_b = window.qchat) == null ? void 0 : _b.qchatChannel.subscribeChannel({
|
|
36394
36415
|
type: 2,
|
|
36395
36416
|
opeType: 1,
|
|
36396
36417
|
channels
|
|
36397
|
-
}).
|
|
36398
|
-
|
|
36399
|
-
|
|
36400
|
-
|
|
36401
|
-
|
|
36402
|
-
|
|
36403
|
-
|
|
36404
|
-
|
|
36405
|
-
|
|
36406
|
-
|
|
36407
|
-
|
|
36408
|
-
|
|
36409
|
-
|
|
36410
|
-
|
|
36411
|
-
});
|
|
36412
|
-
});
|
|
36413
|
-
this.serverUnReadCountList = [];
|
|
36414
|
-
this.channelUnReadInfoList.forEach((item) => {
|
|
36415
|
-
let existsFlag = false;
|
|
36416
|
-
for (let index = 0; index < this.serverUnReadCountList.length; index++) {
|
|
36417
|
-
const serverCount = this.serverUnReadCountList[index];
|
|
36418
|
-
if (serverCount.serverId === item.serverId) {
|
|
36419
|
-
existsFlag = true;
|
|
36420
|
-
break;
|
|
36421
|
-
}
|
|
36422
|
-
}
|
|
36423
|
-
if (!existsFlag) {
|
|
36424
|
-
this.serverUnReadCountList.push({
|
|
36425
|
-
serverId: item.serverId,
|
|
36426
|
-
unreadCount: item.unreadCount
|
|
36427
|
-
});
|
|
36428
|
-
} else {
|
|
36429
|
-
for (let index = 0; index < this.serverUnReadCountList.length; index++) {
|
|
36430
|
-
const serverUnReadCountAgg = this.serverUnReadCountList[index];
|
|
36431
|
-
if (serverUnReadCountAgg.serverId == item.serverId) {
|
|
36432
|
-
serverUnReadCountAgg.unreadCount = serverUnReadCountAgg.unreadCount + item.unreadCount;
|
|
36433
|
-
break;
|
|
36434
|
-
}
|
|
36418
|
+
}).catch((error) => {
|
|
36419
|
+
console.error("[subscribleChannels] 订阅频道失败:", error);
|
|
36420
|
+
});
|
|
36421
|
+
},
|
|
36422
|
+
/**
|
|
36423
|
+
* 将未读信息应用到频道列表
|
|
36424
|
+
* @param unreadInfos 未读信息列表
|
|
36425
|
+
*/
|
|
36426
|
+
applyUnreadInfosToChannels(unreadInfos) {
|
|
36427
|
+
unreadInfos.forEach((item) => {
|
|
36428
|
+
if (this.channelList && this.channelList.length > 0) {
|
|
36429
|
+
this.channelList.forEach((channelItem) => {
|
|
36430
|
+
if (channelItem.channelId === item.channelId) {
|
|
36431
|
+
channelItem["unreadCount"] = item.unreadCount;
|
|
36435
36432
|
}
|
|
36436
|
-
}
|
|
36433
|
+
});
|
|
36434
|
+
}
|
|
36435
|
+
this.channelUnReadInfoList.push({
|
|
36436
|
+
channelId: item.channelId,
|
|
36437
|
+
unreadCount: item.unreadCount,
|
|
36438
|
+
serverId: item.serverId
|
|
36437
36439
|
});
|
|
36438
|
-
const serverStore = useServerStore();
|
|
36439
|
-
serverStore.setUnReadInfo(this.serverUnReadCountList);
|
|
36440
36440
|
});
|
|
36441
|
+
this.serverUnReadCountList = [];
|
|
36442
|
+
this.channelUnReadInfoList.forEach((item) => {
|
|
36443
|
+
const existingServer = this.serverUnReadCountList.find(
|
|
36444
|
+
(s) => s.serverId === item.serverId
|
|
36445
|
+
);
|
|
36446
|
+
if (existingServer) {
|
|
36447
|
+
existingServer.unreadCount += item.unreadCount;
|
|
36448
|
+
} else {
|
|
36449
|
+
this.serverUnReadCountList.push({
|
|
36450
|
+
serverId: item.serverId,
|
|
36451
|
+
unreadCount: item.unreadCount
|
|
36452
|
+
});
|
|
36453
|
+
}
|
|
36454
|
+
});
|
|
36455
|
+
const serverStore = useServerStore();
|
|
36456
|
+
serverStore.setUnReadInfo(this.serverUnReadCountList);
|
|
36441
36457
|
},
|
|
36442
|
-
|
|
36458
|
+
/**
|
|
36459
|
+
* 设置 channel 的未读消息数
|
|
36460
|
+
* @param payload 未读信息
|
|
36461
|
+
* @description 如果是当前频道的未读更新,会忽略(因为用户正在查看该频道)
|
|
36462
|
+
*/
|
|
36443
36463
|
setUnReadNum(payload) {
|
|
36464
|
+
var _a;
|
|
36465
|
+
if (this.currentChannel && this.currentChannel.channelId === payload.channelId) {
|
|
36466
|
+
(_a = window.qchat) == null ? void 0 : _a.qchatMsg.markMessageRead({
|
|
36467
|
+
serverId: payload.serverId,
|
|
36468
|
+
channelId: payload.channelId,
|
|
36469
|
+
time: Date.now()
|
|
36470
|
+
});
|
|
36471
|
+
return;
|
|
36472
|
+
}
|
|
36444
36473
|
if (this.channelList && this.channelList.length > 0) {
|
|
36445
36474
|
this.channelList.forEach((channelItem) => {
|
|
36446
36475
|
if (channelItem.channelId === payload.channelId) {
|
|
@@ -36517,6 +36546,7 @@ const useChannelStore = defineStore("channel", {
|
|
|
36517
36546
|
},
|
|
36518
36547
|
// 重置频道未读计数(原 mutations 转为 actions)
|
|
36519
36548
|
resetChannelUnReadCount() {
|
|
36549
|
+
var _a;
|
|
36520
36550
|
if (this.currentChannel) {
|
|
36521
36551
|
if (this.channelUnReadInfoList) {
|
|
36522
36552
|
let finalIndex = -1;
|
|
@@ -36550,7 +36580,7 @@ const useChannelStore = defineStore("channel", {
|
|
|
36550
36580
|
maxCount: 99,
|
|
36551
36581
|
lastMsgTime: (/* @__PURE__ */ new Date()).getTime()
|
|
36552
36582
|
};
|
|
36553
|
-
window.qchat.qchatMsg.markMessageRead(markMessageReadOption);
|
|
36583
|
+
(_a = window.qchat) == null ? void 0 : _a.qchatMsg.markMessageRead(markMessageReadOption);
|
|
36554
36584
|
this.currentChannel["unreadCount"] = 0;
|
|
36555
36585
|
}
|
|
36556
36586
|
},
|
|
@@ -36599,6 +36629,15 @@ const useChannelStore = defineStore("channel", {
|
|
|
36599
36629
|
(i) => payload.every((j) => j.msgIdClient !== i.msgIdClient)
|
|
36600
36630
|
);
|
|
36601
36631
|
},
|
|
36632
|
+
// 更新当前频道消息
|
|
36633
|
+
updateCurChannelMsgs(msg) {
|
|
36634
|
+
this.currentChannelMsgs = this.currentChannelMsgs.map((msgItem) => {
|
|
36635
|
+
if (msgItem.msgIdClient === msg.msgIdClient) {
|
|
36636
|
+
return msg;
|
|
36637
|
+
}
|
|
36638
|
+
return msgItem;
|
|
36639
|
+
});
|
|
36640
|
+
},
|
|
36602
36641
|
// 设置当前频道消息(原 mutations 转为 actions)
|
|
36603
36642
|
setCurChannelMsgs(payload) {
|
|
36604
36643
|
this.currentChannelMsgs = payload;
|
|
@@ -36615,7 +36654,7 @@ const useChannelStore = defineStore("channel", {
|
|
|
36615
36654
|
throw new Error("QChat no login");
|
|
36616
36655
|
}
|
|
36617
36656
|
const res = await window.qchat.qchatChannel.getChannelsByPage(options);
|
|
36618
|
-
this.setChannelList(res);
|
|
36657
|
+
await this.setChannelList(res);
|
|
36619
36658
|
},
|
|
36620
36659
|
1e3
|
|
36621
36660
|
);
|
|
@@ -36691,7 +36730,27 @@ const useChannelStore = defineStore("channel", {
|
|
|
36691
36730
|
});
|
|
36692
36731
|
return msgs;
|
|
36693
36732
|
},
|
|
36694
|
-
|
|
36733
|
+
/**
|
|
36734
|
+
* 上传图片
|
|
36735
|
+
* @param options - 上传选项,包含图片文件和回调函数
|
|
36736
|
+
* @returns Promise<UploadFileResult> 返回上传结果,包含图片URL、宽高等信息
|
|
36737
|
+
*/
|
|
36738
|
+
async uploadImage(options) {
|
|
36739
|
+
if (!window.qchat) {
|
|
36740
|
+
throw new Error("QChat no login");
|
|
36741
|
+
}
|
|
36742
|
+
const uploadResult = await window.qchat.cloudStorage.uploadFile({
|
|
36743
|
+
type: "image",
|
|
36744
|
+
file: options.file,
|
|
36745
|
+
onUploadStart: options.onUploadStart,
|
|
36746
|
+
onUploadDone: options.onUploadDone
|
|
36747
|
+
});
|
|
36748
|
+
return uploadResult;
|
|
36749
|
+
},
|
|
36750
|
+
/**
|
|
36751
|
+
* 发送文本消息
|
|
36752
|
+
* @param options - 发送选项,包含消息内容和可选附件
|
|
36753
|
+
*/
|
|
36695
36754
|
async sendTextMsg(options) {
|
|
36696
36755
|
var _a;
|
|
36697
36756
|
if (!window.qchat) {
|
|
@@ -36706,6 +36765,8 @@ const useChannelStore = defineStore("channel", {
|
|
|
36706
36765
|
channelId: this.currentChannel.channelId,
|
|
36707
36766
|
type: "text",
|
|
36708
36767
|
body: options.body,
|
|
36768
|
+
attach: options == null ? void 0 : options.attach,
|
|
36769
|
+
// 如果有附件,塞到attach字段
|
|
36709
36770
|
ext: (options == null ? void 0 : options.ext) ? JSON.stringify(options == null ? void 0 : options.ext) : void 0,
|
|
36710
36771
|
mentionAccids: options == null ? void 0 : options.mentionAccids,
|
|
36711
36772
|
onSendBefore: (msg2) => {
|
|
@@ -36852,6 +36913,15 @@ const useChannelStore = defineStore("channel", {
|
|
|
36852
36913
|
this.addCurChannelMsgs({ data: [msg], isUnShift: false });
|
|
36853
36914
|
}
|
|
36854
36915
|
},
|
|
36916
|
+
// 撤回消息
|
|
36917
|
+
async revokeMessage(options) {
|
|
36918
|
+
if (!window.qchat) {
|
|
36919
|
+
throw new Error("QChat no login");
|
|
36920
|
+
}
|
|
36921
|
+
window.qchat.qchatMsg.revokeMessage(options).then((res) => {
|
|
36922
|
+
this.updateCurChannelMsgs(res);
|
|
36923
|
+
});
|
|
36924
|
+
},
|
|
36855
36925
|
// 获取频道黑白名单
|
|
36856
36926
|
async getWhiteBlackMembersPage(options) {
|
|
36857
36927
|
if (!window.qchat) {
|
|
@@ -36892,6 +36962,9 @@ const useChannelStore = defineStore("channel", {
|
|
|
36892
36962
|
},
|
|
36893
36963
|
// 获取频道身份组
|
|
36894
36964
|
async getChannelRoles(options) {
|
|
36965
|
+
if (!window.qchat) {
|
|
36966
|
+
throw new Error("QChat no login");
|
|
36967
|
+
}
|
|
36895
36968
|
const res = await window.qchat.qchatRole.getChannelRoles(options);
|
|
36896
36969
|
return res;
|
|
36897
36970
|
},
|
|
@@ -36951,11 +37024,17 @@ const useChannelStore = defineStore("channel", {
|
|
|
36951
37024
|
},
|
|
36952
37025
|
// 获取成员角色
|
|
36953
37026
|
async getMemberRoles(options) {
|
|
37027
|
+
if (!window.qchat) {
|
|
37028
|
+
throw new Error("QChat no login");
|
|
37029
|
+
}
|
|
36954
37030
|
const res = await window.qchat.qchatRole.getMemberRoles(options);
|
|
36955
37031
|
return res;
|
|
36956
37032
|
},
|
|
36957
37033
|
// 获取已存在的成员角色 accids
|
|
36958
37034
|
async getExistingAccidsOfMemberRoles(options) {
|
|
37035
|
+
if (!window.qchat) {
|
|
37036
|
+
throw new Error("QChat no login");
|
|
37037
|
+
}
|
|
36959
37038
|
const res = await window.qchat.qchatRole.getExistingAccidsOfMemberRoles(
|
|
36960
37039
|
options
|
|
36961
37040
|
);
|
|
@@ -37064,15 +37143,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
37064
37143
|
export {
|
|
37065
37144
|
_sfc_main as _,
|
|
37066
37145
|
useServerStore as a,
|
|
37067
|
-
|
|
37068
|
-
|
|
37146
|
+
useUserStore as b,
|
|
37147
|
+
useImSdkStore as c,
|
|
37069
37148
|
useGlobalStore as d,
|
|
37070
37149
|
getImageMsgDisplaySize as e,
|
|
37071
37150
|
filterStr as f,
|
|
37072
37151
|
getServerMembersByAccids as g,
|
|
37152
|
+
getMByteSize as h,
|
|
37073
37153
|
isLt as i,
|
|
37074
37154
|
matchExt as m,
|
|
37075
37155
|
parseFileSize as p,
|
|
37076
37156
|
setGlobalRequest as s,
|
|
37077
|
-
|
|
37157
|
+
useChannelStore as u
|
|
37078
37158
|
};
|