easemob-chat-uikit 1.0.0 → 1.0.1
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/ChatUI.esm.js +130 -64
- package/ChatUI.js +130 -64
- package/ChatUI.umd.js +130 -64
- package/package.json +1 -1
- package/style/chatroomMessage/style/style.scss +1 -1
- package/style/imageMessage/style/style.scss +1 -0
- package/style.css +3 -0
- package/types/component/icon/const.d.ts +3 -1
- package/types/module/combinedMessage/CombinedMessage.d.ts +10 -1
- package/types/module/{groupSetting/GroupSetting.d.ts → groupDetail/GroupDetail.d.ts} +2 -2
- package/types/module/groupDetail/index.d.ts +3 -0
- package/types/module/groupMember/GroupMember.d.ts +2 -1
- package/types/module/index.d.ts +3 -3
- package/types/module/messageInput/textarea/Textarea.d.ts +1 -1
- package/types/module/reaction/index.d.ts +1 -1
- package/types/module/recalledMessage/RecalledMessage.d.ts +2 -2
- package/types/module/repliedMessage/RepliedMsg.d.ts +2 -2
- package/types/module/store/MessageStore.d.ts +3 -1
- package/types/module/textMessage/TextMessage.d.ts +2 -1
- package/types/module/utils/index.d.ts +1 -1
- package/types/module/videoMessage/VideoMessage.d.ts +3 -3
- package/types/module/groupSetting/index.d.ts +0 -3
- /package/style/{groupSetting → groupDetail}/style/style.scss +0 -0
package/ChatUI.esm.js
CHANGED
|
@@ -19159,22 +19159,18 @@ const SvgImg = (props) => /* @__PURE__ */ React$6.createElement("svg", {
|
|
|
19159
19159
|
width: "1em",
|
|
19160
19160
|
height: "1em",
|
|
19161
19161
|
viewBox: "0 0 24 24",
|
|
19162
|
-
fill: "none",
|
|
19163
19162
|
xmlns: "http://www.w3.org/2000/svg",
|
|
19164
19163
|
...props
|
|
19165
19164
|
}, /* @__PURE__ */ React$6.createElement("path", {
|
|
19166
19165
|
fillRule: "evenodd",
|
|
19167
19166
|
clipRule: "evenodd",
|
|
19168
|
-
d: "M18.5 6.5H5.5C5.22386 6.5 5 6.72386 5 7V17C5 17.2761 5.22386 17.5 5.5 17.5H18.5C18.7761 17.5 19 17.2761 19 17V7C19 6.72386 18.7761 6.5 18.5 6.5ZM5.5 5C4.39543 5 3.5 5.89543 3.5 7V17C3.5 18.1046 4.39543 19 5.5 19H18.5C19.6046 19 20.5 18.1046 20.5 17V7C20.5 5.89543 19.6046 5 18.5 5H5.5Z"
|
|
19169
|
-
fill: "#464E53"
|
|
19167
|
+
d: "M18.5 6.5H5.5C5.22386 6.5 5 6.72386 5 7V17C5 17.2761 5.22386 17.5 5.5 17.5H18.5C18.7761 17.5 19 17.2761 19 17V7C19 6.72386 18.7761 6.5 18.5 6.5ZM5.5 5C4.39543 5 3.5 5.89543 3.5 7V17C3.5 18.1046 4.39543 19 5.5 19H18.5C19.6046 19 20.5 18.1046 20.5 17V7C20.5 5.89543 19.6046 5 18.5 5H5.5Z"
|
|
19170
19168
|
}), /* @__PURE__ */ React$6.createElement("path", {
|
|
19171
|
-
d: "M12.692 11.907L6.78174 17.6209H19.0786V15.5129L15.4963 11.9306C14.7246 11.1589 13.4766 11.1484 12.692 11.907Z"
|
|
19172
|
-
fill: "#464E53"
|
|
19169
|
+
d: "M12.692 11.907L6.78174 17.6209H19.0786V15.5129L15.4963 11.9306C14.7246 11.1589 13.4766 11.1484 12.692 11.907Z"
|
|
19173
19170
|
}), /* @__PURE__ */ React$6.createElement("circle", {
|
|
19174
19171
|
cx: 8.5,
|
|
19175
19172
|
cy: 9.5,
|
|
19176
|
-
r: 1.5
|
|
19177
|
-
fill: "#464E53"
|
|
19173
|
+
r: 1.5
|
|
19178
19174
|
}));
|
|
19179
19175
|
const SvgArrowTurnLeft = (props) => /* @__PURE__ */ React$6.createElement("svg", {
|
|
19180
19176
|
width: "1em",
|
|
@@ -19346,12 +19342,10 @@ const SvgPersonSingleFill = (props) => /* @__PURE__ */ React$6.createElement("sv
|
|
|
19346
19342
|
width: "1em",
|
|
19347
19343
|
height: "1em",
|
|
19348
19344
|
viewBox: "0 0 24 24",
|
|
19349
|
-
fill: "none",
|
|
19350
19345
|
xmlns: "http://www.w3.org/2000/svg",
|
|
19351
19346
|
...props
|
|
19352
19347
|
}, /* @__PURE__ */ React$6.createElement("path", {
|
|
19353
|
-
d: "M12 4C11.4318 4 10.9088 4.15338 10.431 4.46013C9.95315 4.75294 9.5722 5.1573 9.2881 5.6732C9.01691 6.18911 8.88132 6.75381 8.88132 7.36732V9.39608C8.88132 9.99564 9.01691 10.5534 9.2881 11.0693C9.5722 11.5852 9.95315 11.9965 10.431 12.3033C10.9088 12.61 11.4318 12.7634 12 12.7634C12.5682 12.7634 13.0912 12.61 13.569 12.3033C14.0468 11.9965 14.4213 11.5852 14.6925 11.0693C14.9766 10.5534 15.1186 9.99564 15.1186 9.39608V7.36732C15.1186 6.75381 14.9766 6.18911 14.6925 5.6732C14.4213 5.1573 14.0468 4.75294 13.569 4.46013C13.0912 4.15338 12.5682 4 12 4ZM12 20H6.76994C6.31796 20 5.93055 19.8257 5.60771 19.4771C5.29779 19.1285 5.14282 18.7172 5.14282 18.2431C5.14282 17.7691 5.2203 17.3856 5.37527 17.0928C5.64645 16.6187 6.03386 16.1795 6.5375 15.7752C7.14444 15.2732 7.86114 14.8828 8.68762 14.6039C9.66905 14.2693 10.7732 14.102 12 14.102C13.2268 14.102 14.3309 14.2693 15.3123 14.6039C16.1388 14.8828 16.8555 15.2732 17.4624 15.7752C17.9661 16.1795 18.3535 16.6187 18.6247 17.0928C18.7796 17.3856 18.8571 17.7691 18.8571 18.2431C18.8571 18.7172 18.6957 19.1285 18.3728 19.4771C18.0629 19.8257 17.682 20 17.23 20H12Z"
|
|
19354
|
-
fill: "#464E53"
|
|
19348
|
+
d: "M12 4C11.4318 4 10.9088 4.15338 10.431 4.46013C9.95315 4.75294 9.5722 5.1573 9.2881 5.6732C9.01691 6.18911 8.88132 6.75381 8.88132 7.36732V9.39608C8.88132 9.99564 9.01691 10.5534 9.2881 11.0693C9.5722 11.5852 9.95315 11.9965 10.431 12.3033C10.9088 12.61 11.4318 12.7634 12 12.7634C12.5682 12.7634 13.0912 12.61 13.569 12.3033C14.0468 11.9965 14.4213 11.5852 14.6925 11.0693C14.9766 10.5534 15.1186 9.99564 15.1186 9.39608V7.36732C15.1186 6.75381 14.9766 6.18911 14.6925 5.6732C14.4213 5.1573 14.0468 4.75294 13.569 4.46013C13.0912 4.15338 12.5682 4 12 4ZM12 20H6.76994C6.31796 20 5.93055 19.8257 5.60771 19.4771C5.29779 19.1285 5.14282 18.7172 5.14282 18.2431C5.14282 17.7691 5.2203 17.3856 5.37527 17.0928C5.64645 16.6187 6.03386 16.1795 6.5375 15.7752C7.14444 15.2732 7.86114 14.8828 8.68762 14.6039C9.66905 14.2693 10.7732 14.102 12 14.102C13.2268 14.102 14.3309 14.2693 15.3123 14.6039C16.1388 14.8828 16.8555 15.2732 17.4624 15.7752C17.9661 16.1795 18.3535 16.6187 18.6247 17.0928C18.7796 17.3856 18.8571 17.7691 18.8571 18.2431C18.8571 18.7172 18.6957 19.1285 18.3728 19.4771C18.0629 19.8257 17.682 20 17.23 20H12Z"
|
|
19355
19349
|
}));
|
|
19356
19350
|
const SvgHashtagInBubble = (props) => /* @__PURE__ */ React$6.createElement("svg", {
|
|
19357
19351
|
width: "1em",
|
|
@@ -19999,6 +19993,30 @@ const SvgRoundArrowThick = (props) => /* @__PURE__ */ React$6.createElement("svg
|
|
|
19999
19993
|
clipRule: "evenodd",
|
|
20000
19994
|
d: "M3.96953 4.93916C1.17122 8.27406 1.60621 13.246 4.9411 16.0443C8.12357 18.7147 12.7971 18.4406 15.6493 15.5117C15.7942 15.363 15.7808 15.1139 15.6067 14.9677C15.4389 14.8269 15.176 14.8426 15.0053 15.0133C12.4397 17.5795 8.29268 17.8012 5.46077 15.425C2.46792 12.9137 2.07755 8.45169 4.58885 5.45883C7.0567 2.51776 11.4083 2.0899 14.3983 4.45916L14.9182 3.83962C11.5859 1.18349 6.7244 1.65604 3.96953 4.93916ZM4.68127 16.354C1.17535 13.4122 0.718059 8.18524 3.65987 4.67933C6.60168 1.17342 11.8286 0.716122 15.3345 3.65793L15.4893 3.78785L14.45 5.02649L14.2952 4.89657C11.4733 2.52877 7.2663 2.89684 4.89851 5.71867C2.53071 8.5405 2.89878 12.7475 5.72061 15.1153C8.39053 17.3557 12.3008 17.1468 14.7194 14.7275C15.0223 14.4246 15.5212 14.3684 15.8665 14.6581C16.2054 14.9424 16.2614 15.4627 15.9389 15.7938C12.9401 18.8731 8.02709 19.1614 4.68127 16.354Z"
|
|
20001
19995
|
}));
|
|
19996
|
+
const SvgTriangleInRectangle = (props) => /* @__PURE__ */ React$6.createElement("svg", {
|
|
19997
|
+
width: "1em",
|
|
19998
|
+
height: "1em",
|
|
19999
|
+
viewBox: "0 0 24 24",
|
|
20000
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
20001
|
+
...props
|
|
20002
|
+
}, /* @__PURE__ */ React$6.createElement("path", {
|
|
20003
|
+
fillRule: "evenodd",
|
|
20004
|
+
clipRule: "evenodd",
|
|
20005
|
+
d: "M18.5 6.5H5.5C5.22386 6.5 5 6.72386 5 7V17C5 17.2761 5.22386 17.5 5.5 17.5H18.5C18.7761 17.5 19 17.2761 19 17V7C19 6.72386 18.7761 6.5 18.5 6.5ZM5.5 5C4.39543 5 3.5 5.89543 3.5 7V17C3.5 18.1046 4.39543 19 5.5 19H18.5C19.6046 19 20.5 18.1046 20.5 17V7C20.5 5.89543 19.6046 5 18.5 5H5.5Z"
|
|
20006
|
+
}), /* @__PURE__ */ React$6.createElement("path", {
|
|
20007
|
+
d: "M9.5 15.0184V8.98159C9.5 8.61236 9.8833 8.38088 10.1914 8.56407L15.2672 11.5825C15.5776 11.7671 15.5776 12.2329 15.2672 12.4175L10.1914 15.4359C9.8833 15.6191 9.5 15.3876 9.5 15.0184Z"
|
|
20008
|
+
}));
|
|
20009
|
+
const SvgFolder = (props) => /* @__PURE__ */ React$6.createElement("svg", {
|
|
20010
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
20011
|
+
width: "1em",
|
|
20012
|
+
height: "1em",
|
|
20013
|
+
viewBox: "0 0 18 18",
|
|
20014
|
+
...props
|
|
20015
|
+
}, /* @__PURE__ */ React$6.createElement("path", {
|
|
20016
|
+
fillRule: "evenodd",
|
|
20017
|
+
clipRule: "evenodd",
|
|
20018
|
+
d: "M3.25 3C2.69772 3 2.25 3.44772 2.25 4V13.5C2.25 14.3284 2.92157 15 3.75 15L14.25 15C15.0784 15 15.75 14.3284 15.75 13.5V6C15.75 5.17157 15.0784 4.5 14.25 4.5L7.95235 4.5C7.56874 4.5 7.21893 4.28056 7.052 3.93517L6.873 3.56483C6.70607 3.21945 6.35626 3 5.97265 3H3.25ZM4.185 6.75C3.94476 6.75 3.75 6.94476 3.75 7.185C3.75 7.42524 3.94476 7.62 4.185 7.62H13.815C14.0552 7.62 14.25 7.42524 14.25 7.185C14.25 6.94476 14.0552 6.75 13.815 6.75H4.185Z"
|
|
20019
|
+
}));
|
|
20002
20020
|
const getIconNode = (type) => {
|
|
20003
20021
|
switch (type) {
|
|
20004
20022
|
case "SHUT_DOWN":
|
|
@@ -20151,6 +20169,10 @@ const getIconNode = (type) => {
|
|
|
20151
20169
|
return /* @__PURE__ */ React__default$1.createElement(SvgSpkeakerNVerticalBar, null);
|
|
20152
20170
|
case "ROUND_ARROW_THICK":
|
|
20153
20171
|
return /* @__PURE__ */ React__default$1.createElement(SvgRoundArrowThick, null);
|
|
20172
|
+
case "TRIANGLE_IN_RECTANGLE":
|
|
20173
|
+
return /* @__PURE__ */ React__default$1.createElement(SvgTriangleInRectangle, null);
|
|
20174
|
+
case "FOLDER":
|
|
20175
|
+
return /* @__PURE__ */ React__default$1.createElement(SvgFolder, null);
|
|
20154
20176
|
default:
|
|
20155
20177
|
return "";
|
|
20156
20178
|
}
|
|
@@ -20375,8 +20397,7 @@ class MessageStore {
|
|
|
20375
20397
|
};
|
|
20376
20398
|
this.selectedMessage = {
|
|
20377
20399
|
singleChat: {},
|
|
20378
|
-
groupChat: {}
|
|
20379
|
-
chatRoom: {}
|
|
20400
|
+
groupChat: {}
|
|
20380
20401
|
};
|
|
20381
20402
|
this.currentCVS = {};
|
|
20382
20403
|
this.repliedMessage = null;
|
|
@@ -20538,7 +20559,7 @@ class MessageStore {
|
|
|
20538
20559
|
}
|
|
20539
20560
|
}
|
|
20540
20561
|
}
|
|
20541
|
-
const msg = this.message.byId[message2.id];
|
|
20562
|
+
const msg = this.message.byId[message2.id] || {};
|
|
20542
20563
|
msg.status = "sent";
|
|
20543
20564
|
msg.mid = data2.serverMsgId;
|
|
20544
20565
|
if (message2.type == "combine") {
|
|
@@ -20553,7 +20574,7 @@ class MessageStore {
|
|
|
20553
20574
|
if (message2.url) {
|
|
20554
20575
|
msg.url = message2.url;
|
|
20555
20576
|
if (msg && msg.file) {
|
|
20556
|
-
msg.file.url = message2.url;
|
|
20577
|
+
msg.file.url = message2.url || "";
|
|
20557
20578
|
}
|
|
20558
20579
|
}
|
|
20559
20580
|
this.message.byId[data2.serverMsgId] = this.message.byId[message2.id];
|
|
@@ -20582,7 +20603,6 @@ class MessageStore {
|
|
|
20582
20603
|
this.rootStore.conversationStore.modifyConversation({ ...cvs });
|
|
20583
20604
|
eventHandler.dispatchSuccess("sendMessage");
|
|
20584
20605
|
}).catch((error2) => {
|
|
20585
|
-
console.warn("send fail", error2);
|
|
20586
20606
|
this.updateMessageStatus(message2.id, "failed");
|
|
20587
20607
|
eventHandler.dispatchError("sendMessage", error2);
|
|
20588
20608
|
});
|
|
@@ -20876,7 +20896,10 @@ class MessageStore {
|
|
|
20876
20896
|
if (reaction2) {
|
|
20877
20897
|
reaction2.count -= 1;
|
|
20878
20898
|
if (reaction2.count <= 0) {
|
|
20879
|
-
(_b = message2.reactions) == null ? void 0 : _b.splice(
|
|
20899
|
+
(_b = message2.reactions) == null ? void 0 : _b.splice(
|
|
20900
|
+
(_a3 = message2.reactions) == null ? void 0 : _a3.indexOf(reaction2),
|
|
20901
|
+
1
|
|
20902
|
+
);
|
|
20880
20903
|
}
|
|
20881
20904
|
const index2 = (_c = reaction2.userList) == null ? void 0 : _c.indexOf(this.rootStore.client.user);
|
|
20882
20905
|
if (index2 > -1) {
|
|
@@ -21057,6 +21080,18 @@ class MessageStore {
|
|
|
21057
21080
|
shiftBroadcastMessage() {
|
|
21058
21081
|
this.message.broadcast.shift();
|
|
21059
21082
|
}
|
|
21083
|
+
sendReadAck(messageId, to) {
|
|
21084
|
+
if (!messageId || !to) {
|
|
21085
|
+
return console.error(`Invalid parameter, messageId: ${messageId}, to: ${to}`);
|
|
21086
|
+
}
|
|
21087
|
+
const readMsg = chatSDK.message.create({
|
|
21088
|
+
type: "read",
|
|
21089
|
+
chatType: "singleChat",
|
|
21090
|
+
to,
|
|
21091
|
+
id: messageId
|
|
21092
|
+
});
|
|
21093
|
+
this.rootStore.client.send(readMsg);
|
|
21094
|
+
}
|
|
21060
21095
|
clear() {
|
|
21061
21096
|
this.message = {
|
|
21062
21097
|
singleChat: {},
|
|
@@ -47361,7 +47396,10 @@ class ThreadStore {
|
|
|
47361
47396
|
originalMessage: {}
|
|
47362
47397
|
});
|
|
47363
47398
|
this.setThreadVisible(false);
|
|
47364
|
-
(_e = this.threadList[parentId]) == null ? void 0 : _e.splice(
|
|
47399
|
+
(_e = this.threadList[parentId]) == null ? void 0 : _e.splice(
|
|
47400
|
+
(_d = this.threadList[parentId]) == null ? void 0 : _d.indexOf(foundThread),
|
|
47401
|
+
1
|
|
47402
|
+
);
|
|
47365
47403
|
}
|
|
47366
47404
|
break;
|
|
47367
47405
|
}
|
|
@@ -47465,20 +47503,21 @@ class ThreadStore {
|
|
|
47465
47503
|
pageSize: 20,
|
|
47466
47504
|
cursor
|
|
47467
47505
|
}).then((res) => {
|
|
47468
|
-
const threads = res.entities;
|
|
47506
|
+
const threads = res.entities || [];
|
|
47469
47507
|
let list2 = this.threadList[parentId] || [];
|
|
47470
47508
|
if (!cursor) {
|
|
47471
47509
|
list2 = [];
|
|
47472
47510
|
}
|
|
47473
|
-
const chatThreadIds = threads.map((item) => {
|
|
47511
|
+
const chatThreadIds = threads == null ? void 0 : threads.map((item) => {
|
|
47474
47512
|
return item.id;
|
|
47475
47513
|
});
|
|
47476
47514
|
eventHandler.dispatchSuccess("getChatThreads");
|
|
47477
47515
|
return this.rootStore.client.getChatThreadLastMessage({
|
|
47478
47516
|
chatThreadIds
|
|
47479
47517
|
}).then((data2) => {
|
|
47480
|
-
|
|
47481
|
-
|
|
47518
|
+
var _a3;
|
|
47519
|
+
(_a3 = data2.entities) == null ? void 0 : _a3.forEach((item) => {
|
|
47520
|
+
let idx = threads == null ? void 0 : threads.findIndex((thread2) => item.chatThreadId === thread2.id);
|
|
47482
47521
|
item.lastMessage.chatType = "groupChat";
|
|
47483
47522
|
threads[idx].lastMessage = item.lastMessage;
|
|
47484
47523
|
});
|
|
@@ -82956,7 +82995,7 @@ const TextMessage = (props) => {
|
|
|
82956
82995
|
className: modifyPrefix,
|
|
82957
82996
|
ref: textareaRef,
|
|
82958
82997
|
enableEnterSend: false,
|
|
82959
|
-
|
|
82998
|
+
enabledMention: false
|
|
82960
82999
|
}))));
|
|
82961
83000
|
};
|
|
82962
83001
|
const TextMessage$1 = observer(TextMessage);
|
|
@@ -83215,7 +83254,7 @@ let ImageMessage = (props) => {
|
|
|
83215
83254
|
...others
|
|
83216
83255
|
} = props;
|
|
83217
83256
|
let type = props.type;
|
|
83218
|
-
let { bySelf, from, reactions } = message2;
|
|
83257
|
+
let { bySelf, from, reactions, status } = message2;
|
|
83219
83258
|
const { getPrefixCls } = React__default$1.useContext(ConfigContext);
|
|
83220
83259
|
const prefixCls = getPrefixCls("message-img", prefix2);
|
|
83221
83260
|
const context = useContext(RootContext);
|
|
@@ -83439,6 +83478,7 @@ let ImageMessage = (props) => {
|
|
|
83439
83478
|
onClickThreadTitle: handleClickThreadTitle,
|
|
83440
83479
|
bubbleStyle: { background: "transparent", padding: 0 },
|
|
83441
83480
|
shape,
|
|
83481
|
+
status,
|
|
83442
83482
|
...others
|
|
83443
83483
|
}, /* @__PURE__ */ React__default$1.createElement("div", {
|
|
83444
83484
|
className: classString,
|
|
@@ -83491,7 +83531,7 @@ const FileMessage = (props) => {
|
|
|
83491
83531
|
thread: thread2,
|
|
83492
83532
|
...baseMsgProps
|
|
83493
83533
|
} = props;
|
|
83494
|
-
const { filename, file_length, from, reactions } = fileMessage;
|
|
83534
|
+
const { filename, file_length, from, reactions, status } = fileMessage;
|
|
83495
83535
|
const { getPrefixCls } = React__default$1.useContext(ConfigContext);
|
|
83496
83536
|
const prefixCls = getPrefixCls("message-file", customizePrefixCls);
|
|
83497
83537
|
let { bySelf } = fileMessage;
|
|
@@ -83513,6 +83553,9 @@ const FileMessage = (props) => {
|
|
|
83513
83553
|
return res.blob();
|
|
83514
83554
|
}).then((blob) => {
|
|
83515
83555
|
download(blob, filename);
|
|
83556
|
+
if (fileMessage.chatType == "singleChat" && fileMessage.from != rootStore.client.context.userId && fileMessage.status != "read" && !fileMessage.isChatThread && fileMessage.to == rootStore.client.context.userId) {
|
|
83557
|
+
rootStore.messageStore.sendReadAck(fileMessage.id, fileMessage.from || "");
|
|
83558
|
+
}
|
|
83516
83559
|
}).catch((err) => {
|
|
83517
83560
|
return false;
|
|
83518
83561
|
});
|
|
@@ -83677,6 +83720,7 @@ const FileMessage = (props) => {
|
|
|
83677
83720
|
thread: _thread,
|
|
83678
83721
|
chatThreadOverview: fileMessage.chatThreadOverview,
|
|
83679
83722
|
onClickThreadTitle: handleClickThreadTitle,
|
|
83723
|
+
status,
|
|
83680
83724
|
...baseMsgProps
|
|
83681
83725
|
}, /* @__PURE__ */ React__default$1.createElement("div", {
|
|
83682
83726
|
className: classString,
|
|
@@ -83709,7 +83753,7 @@ const UserCardMessage = (props) => {
|
|
|
83709
83753
|
onUserIdCopied,
|
|
83710
83754
|
...others
|
|
83711
83755
|
} = props;
|
|
83712
|
-
let { bySelf, from, reactions } = message2;
|
|
83756
|
+
let { bySelf, from, reactions, status } = message2;
|
|
83713
83757
|
const { conversationStore, addressStore } = rootStore;
|
|
83714
83758
|
const { getPrefixCls } = React__default$1.useContext(ConfigContext);
|
|
83715
83759
|
const prefixCls = getPrefixCls("message-card", prefix2);
|
|
@@ -83928,6 +83972,7 @@ const UserCardMessage = (props) => {
|
|
|
83928
83972
|
chatThreadOverview: message2.chatThreadOverview,
|
|
83929
83973
|
onClickThreadTitle: handleClickThreadTitle,
|
|
83930
83974
|
bubbleStyle: { padding: "0" },
|
|
83975
|
+
status,
|
|
83931
83976
|
...others
|
|
83932
83977
|
}, /* @__PURE__ */ React__default$1.createElement("div", {
|
|
83933
83978
|
className: classString,
|
|
@@ -84002,8 +84047,7 @@ const VideoMessage = (props) => {
|
|
|
84002
84047
|
videoProps,
|
|
84003
84048
|
...baseMsgProps
|
|
84004
84049
|
} = props;
|
|
84005
|
-
let { bySelf, from, reactions } = videoMessage;
|
|
84006
|
-
console.log("videoMessage --->", videoMessage);
|
|
84050
|
+
let { bySelf, from, reactions, status } = videoMessage;
|
|
84007
84051
|
const { getPrefixCls } = React__default$1.useContext(ConfigContext);
|
|
84008
84052
|
const prefixCls = getPrefixCls("message-video", prefix2);
|
|
84009
84053
|
const context = useContext(RootContext);
|
|
@@ -84158,6 +84202,12 @@ const VideoMessage = (props) => {
|
|
|
84158
84202
|
rootStore.threadStore.setThreadVisible(true);
|
|
84159
84203
|
rootStore.threadStore.getChatThreadDetail(((_b = videoMessage == null ? void 0 : videoMessage.chatThreadOverview) == null ? void 0 : _b.id) || "");
|
|
84160
84204
|
};
|
|
84205
|
+
const handlePlayVideo = () => {
|
|
84206
|
+
if (videoMessage.chatType == "singleChat" && videoMessage.from != rootStore.client.context.userId && videoMessage.status != "read" && !videoMessage.isChatThread && videoMessage.to == rootStore.client.context.userId) {
|
|
84207
|
+
console.log("onPlay", videoMessage);
|
|
84208
|
+
rootStore.messageStore.sendReadAck(videoMessage.id, videoMessage.from || "");
|
|
84209
|
+
}
|
|
84210
|
+
};
|
|
84161
84211
|
return /* @__PURE__ */ React__default$1.createElement(BaseMessage, {
|
|
84162
84212
|
id: videoMessage.id,
|
|
84163
84213
|
message: videoMessage,
|
|
@@ -84183,6 +84233,7 @@ const VideoMessage = (props) => {
|
|
|
84183
84233
|
thread: _thread,
|
|
84184
84234
|
chatThreadOverview: videoMessage.chatThreadOverview,
|
|
84185
84235
|
onClickThreadTitle: handleClickThreadTitle,
|
|
84236
|
+
status,
|
|
84186
84237
|
...baseMsgProps
|
|
84187
84238
|
}, /* @__PURE__ */ React__default$1.createElement("div", {
|
|
84188
84239
|
className: classString
|
|
@@ -84193,6 +84244,7 @@ const VideoMessage = (props) => {
|
|
|
84193
84244
|
controls: true,
|
|
84194
84245
|
crossOrigin: "anonymous",
|
|
84195
84246
|
preload: "metadata",
|
|
84247
|
+
onPlay: handlePlayVideo,
|
|
84196
84248
|
src: videoMessage.url || videoMessage.file.url,
|
|
84197
84249
|
...videoProps
|
|
84198
84250
|
})));
|
|
@@ -84454,11 +84506,14 @@ const CombinedMessage = (props) => {
|
|
|
84454
84506
|
return;
|
|
84455
84507
|
}
|
|
84456
84508
|
rootStore.client.downloadAndParseCombineMessage({
|
|
84457
|
-
url: combinedMessage.url,
|
|
84458
|
-
secret: combinedMessage.secret
|
|
84509
|
+
url: combinedMessage.url || "",
|
|
84510
|
+
secret: combinedMessage.secret || ""
|
|
84459
84511
|
}).then((data2) => {
|
|
84460
84512
|
combinedMessage.messages = data2;
|
|
84461
84513
|
createDetailContent(data2);
|
|
84514
|
+
if (combinedMessage.chatType == "singleChat" && combinedMessage.from != rootStore.client.context.userId && combinedMessage.status != "read" && !combinedMessage.isChatThread && combinedMessage.to == rootStore.client.context.userId) {
|
|
84515
|
+
rootStore.messageStore.sendReadAck(combinedMessage.id, combinedMessage.from || "");
|
|
84516
|
+
}
|
|
84462
84517
|
}).catch(() => {
|
|
84463
84518
|
setDetailContent(/* @__PURE__ */ React__default$1.createElement("div", null, "download message failed"));
|
|
84464
84519
|
});
|
|
@@ -85404,8 +85459,8 @@ let BaseMessage$1 = (props) => {
|
|
|
85404
85459
|
};
|
|
85405
85460
|
const threadNode = () => {
|
|
85406
85461
|
var _a4, _b2, _c2;
|
|
85407
|
-
let { name: name2, messageCount, lastMessage = {} } = chatThreadOverview;
|
|
85408
|
-
const { from, type, time: time2 } = lastMessage
|
|
85462
|
+
let { name: name2, messageCount, lastMessage = {} } = chatThreadOverview || {};
|
|
85463
|
+
const { from, type, time: time2 } = lastMessage;
|
|
85409
85464
|
let msgContent = "";
|
|
85410
85465
|
switch (type) {
|
|
85411
85466
|
case "txt":
|
|
@@ -85445,7 +85500,7 @@ let BaseMessage$1 = (props) => {
|
|
|
85445
85500
|
height: 20,
|
|
85446
85501
|
type: "THREAD",
|
|
85447
85502
|
className: `${prefixCls}-thread-name-icon`
|
|
85448
|
-
}), /* @__PURE__ */ React__default$1.createElement("span", null, name2)), /* @__PURE__ */ React__default$1.createElement("div", null, /* @__PURE__ */ React__default$1.createElement("span", null, messageCount > 100 ? "100 +" : messageCount), /* @__PURE__ */ React__default$1.createElement(Icon$1, {
|
|
85503
|
+
}), /* @__PURE__ */ React__default$1.createElement("span", null, name2)), /* @__PURE__ */ React__default$1.createElement("div", null, /* @__PURE__ */ React__default$1.createElement("span", null, (messageCount != null ? messageCount : 0 > 100) ? "100 +" : messageCount), /* @__PURE__ */ React__default$1.createElement(Icon$1, {
|
|
85449
85504
|
width: 16,
|
|
85450
85505
|
height: 16,
|
|
85451
85506
|
type: "ARROW_RIGHT",
|
|
@@ -85824,6 +85879,9 @@ const AudioMessage = (props) => {
|
|
|
85824
85879
|
audioRef.current.play().then((res) => {
|
|
85825
85880
|
}).catch((err) => {
|
|
85826
85881
|
});
|
|
85882
|
+
if (audioMessage.chatType == "singleChat" && audioMessage.from != rootStore.client.context.userId && audioMessage.status != "read" && !audioMessage.isChatThread && audioMessage.to == rootStore.client.context.userId) {
|
|
85883
|
+
rootStore.messageStore.sendReadAck(audioMessage.id, audioMessage.from);
|
|
85884
|
+
}
|
|
85827
85885
|
};
|
|
85828
85886
|
const handlePlayEnd = () => {
|
|
85829
85887
|
setPlayStatus(false);
|
|
@@ -86780,7 +86838,6 @@ const ContactGroup = (props) => {
|
|
|
86780
86838
|
};
|
|
86781
86839
|
useEffect(() => {
|
|
86782
86840
|
if (childrenVisible) {
|
|
86783
|
-
console.log("\u51B2\u6D17\u7532\u9178");
|
|
86784
86841
|
setHeight(`auto`);
|
|
86785
86842
|
}
|
|
86786
86843
|
}, [itemCount]);
|
|
@@ -87198,7 +87255,6 @@ let ContactList = (props) => {
|
|
|
87198
87255
|
}, [addressStore.searchList, itemActiveKey, checkedList == null ? void 0 : checkedList.length]);
|
|
87199
87256
|
const getNameAndType = (id) => {
|
|
87200
87257
|
var _a3, _b;
|
|
87201
|
-
console.log("###", itemActiveKey);
|
|
87202
87258
|
let name2;
|
|
87203
87259
|
let type = "contact";
|
|
87204
87260
|
const findUser = addressStore.contacts.find((item) => item.userId == id);
|
|
@@ -87279,7 +87335,6 @@ const ContactDetail = (props) => {
|
|
|
87279
87335
|
document.body.removeChild(textArea);
|
|
87280
87336
|
onUserIdCopied == null ? void 0 : onUserIdCopied(id);
|
|
87281
87337
|
};
|
|
87282
|
-
console.log("avatarUrl", avatarUrl);
|
|
87283
87338
|
const handleClickMessage = () => {
|
|
87284
87339
|
const result = onMessageBtnClick == null ? void 0 : onMessageBtnClick();
|
|
87285
87340
|
if (result == false)
|
|
@@ -87307,9 +87362,7 @@ const ContactDetail = (props) => {
|
|
|
87307
87362
|
const addContact2 = () => {
|
|
87308
87363
|
addressStore.acceptContactInvite(data2.id);
|
|
87309
87364
|
};
|
|
87310
|
-
console.log(">>>>>", requestData, data2);
|
|
87311
87365
|
const isContact = addressStore.contacts.findIndex((item) => item.userId === data2.id) >= 0;
|
|
87312
|
-
console.log("isContact", isContact);
|
|
87313
87366
|
return /* @__PURE__ */ React__default$1.createElement("div", {
|
|
87314
87367
|
className: classString,
|
|
87315
87368
|
style: { ...style2 }
|
|
@@ -87466,10 +87519,6 @@ const UserSelect = (props) => {
|
|
|
87466
87519
|
type: "contact",
|
|
87467
87520
|
name: user2.nickname
|
|
87468
87521
|
}));
|
|
87469
|
-
const createGroup = () => {
|
|
87470
|
-
console.log("createGroup");
|
|
87471
|
-
};
|
|
87472
|
-
console.log("%%%%%%%", checkedUsers);
|
|
87473
87522
|
const defaultCheckedUsers = checkedUsers == null ? void 0 : checkedUsers.map((user2) => ({
|
|
87474
87523
|
type: "contact",
|
|
87475
87524
|
id: user2.userId
|
|
@@ -87531,7 +87580,6 @@ const UserSelect = (props) => {
|
|
|
87531
87580
|
style: { marginRight: "24px", width: "68px" },
|
|
87532
87581
|
type: "primary",
|
|
87533
87582
|
onClick: (e) => {
|
|
87534
|
-
createGroup();
|
|
87535
87583
|
onOk == null ? void 0 : onOk(e);
|
|
87536
87584
|
},
|
|
87537
87585
|
disabled: selectedUsers.length === 0
|
|
@@ -87658,7 +87706,11 @@ let MoreAction$1 = (props) => {
|
|
|
87658
87706
|
sendImage();
|
|
87659
87707
|
},
|
|
87660
87708
|
key: item.content || index2
|
|
87661
|
-
},
|
|
87709
|
+
}, /* @__PURE__ */ React__default$1.createElement(Icon$1, {
|
|
87710
|
+
type: "IMG",
|
|
87711
|
+
width: 18,
|
|
87712
|
+
height: 18
|
|
87713
|
+
}), t2("image"));
|
|
87662
87714
|
} else if (item.content == "FILE") {
|
|
87663
87715
|
return /* @__PURE__ */ React__default$1.createElement("li", {
|
|
87664
87716
|
className: themeMode == "dark" ? "cui-li-dark" : "",
|
|
@@ -87667,7 +87719,11 @@ let MoreAction$1 = (props) => {
|
|
|
87667
87719
|
sendFile();
|
|
87668
87720
|
},
|
|
87669
87721
|
key: item.content || index2
|
|
87670
|
-
},
|
|
87722
|
+
}, /* @__PURE__ */ React__default$1.createElement(Icon$1, {
|
|
87723
|
+
type: "FOLDER",
|
|
87724
|
+
width: 18,
|
|
87725
|
+
height: 18
|
|
87726
|
+
}), t2("file"));
|
|
87671
87727
|
} else if (item.content == "CARD") {
|
|
87672
87728
|
return /* @__PURE__ */ React__default$1.createElement("li", {
|
|
87673
87729
|
className: themeMode == "dark" ? "cui-li-dark" : "",
|
|
@@ -87676,7 +87732,11 @@ let MoreAction$1 = (props) => {
|
|
|
87676
87732
|
sendCard();
|
|
87677
87733
|
},
|
|
87678
87734
|
key: item.content || index2
|
|
87679
|
-
},
|
|
87735
|
+
}, /* @__PURE__ */ React__default$1.createElement(Icon$1, {
|
|
87736
|
+
type: "PERSON_SINGLE_FILL",
|
|
87737
|
+
width: 18,
|
|
87738
|
+
height: 18
|
|
87739
|
+
}), t2("userCard"));
|
|
87680
87740
|
} else if (item.content == "VIDEO") {
|
|
87681
87741
|
return /* @__PURE__ */ React__default$1.createElement("li", {
|
|
87682
87742
|
className: themeMode == "dark" ? "cui-li-dark" : "",
|
|
@@ -87685,7 +87745,11 @@ let MoreAction$1 = (props) => {
|
|
|
87685
87745
|
sendVideo();
|
|
87686
87746
|
},
|
|
87687
87747
|
key: item.content || index2
|
|
87688
|
-
},
|
|
87748
|
+
}, /* @__PURE__ */ React__default$1.createElement(Icon$1, {
|
|
87749
|
+
type: "TRIANGLE_IN_RECTANGLE",
|
|
87750
|
+
width: 18,
|
|
87751
|
+
height: 18
|
|
87752
|
+
}), t2("videoBtn"));
|
|
87689
87753
|
}
|
|
87690
87754
|
return /* @__PURE__ */ React__default$1.createElement("li", {
|
|
87691
87755
|
className: themeMode == "dark" ? "cui-li-dark" : "",
|
|
@@ -88981,7 +89045,6 @@ let MessageList = (props) => {
|
|
|
88981
89045
|
message: messageData[data2.index]
|
|
88982
89046
|
}, messageData[data2.index].msg);
|
|
88983
89047
|
} else if (messageData[data2.index].type == "custom" && messageData[data2.index].customEvent == "userCard") {
|
|
88984
|
-
console.log("@@@@@", isThread);
|
|
88985
89048
|
return /* @__PURE__ */ React__default$1.createElement(UserCardMessage$1, {
|
|
88986
89049
|
style: data2.style,
|
|
88987
89050
|
key: messageData[data2.index].id,
|
|
@@ -89218,7 +89281,10 @@ const ThreadModal = (props) => {
|
|
|
89218
89281
|
},
|
|
89219
89282
|
className
|
|
89220
89283
|
);
|
|
89221
|
-
const [position, setPosition] = useState$1({
|
|
89284
|
+
const [position, setPosition] = useState$1({
|
|
89285
|
+
top: 0,
|
|
89286
|
+
left: 0
|
|
89287
|
+
});
|
|
89222
89288
|
const popupRef = useRef(null);
|
|
89223
89289
|
useEffect(() => {
|
|
89224
89290
|
const calculatePosition = () => {
|
|
@@ -89741,7 +89807,7 @@ const Thread = (props) => {
|
|
|
89741
89807
|
}), /* @__PURE__ */ React__default$1.createElement(MessageInput$1, {
|
|
89742
89808
|
disabled: threadStore.currentThread.creating && editorDisable,
|
|
89743
89809
|
isChatThread: true,
|
|
89744
|
-
|
|
89810
|
+
enabledMention: false,
|
|
89745
89811
|
onBeforeSendMessage: handleSendMessage,
|
|
89746
89812
|
conversation,
|
|
89747
89813
|
...messageInputProps
|
|
@@ -129832,14 +129898,14 @@ const Chat = (props) => {
|
|
|
129832
129898
|
const [cursor, setCursor] = useState$1();
|
|
129833
129899
|
const threadScrollRef = useRef(null);
|
|
129834
129900
|
const pagingGetThreadList = () => {
|
|
129835
|
-
var _a4
|
|
129836
|
-
(_a4 = threadScrollRef == null ? void 0 : threadScrollRef.current) == null ? void 0 : _a4.scrollHeight;
|
|
129901
|
+
var _a4;
|
|
129837
129902
|
if (cursor === null)
|
|
129838
129903
|
return;
|
|
129839
|
-
(
|
|
129904
|
+
(_a4 = rootStore2.threadStore.getGroupChatThreads(CVS.conversationId, cursor)) == null ? void 0 : _a4.then((res) => {
|
|
129840
129905
|
setCursor(res);
|
|
129841
129906
|
setTimeout(() => {
|
|
129842
|
-
|
|
129907
|
+
var _a5, _b2;
|
|
129908
|
+
(_b2 = (_a5 = threadScrollRef == null ? void 0 : threadScrollRef.current) == null ? void 0 : _a5.scrollTo) == null ? void 0 : _b2.call(_a5, threadList.length * 56);
|
|
129843
129909
|
}, 100);
|
|
129844
129910
|
});
|
|
129845
129911
|
};
|
|
@@ -129900,7 +129966,10 @@ const Chat = (props) => {
|
|
|
129900
129966
|
src: (_f2 = appUsersInfo == null ? void 0 : appUsersInfo[(_e2 = item.lastMessage) == null ? void 0 : _e2.from]) == null ? void 0 : _f2.avatarurl
|
|
129901
129967
|
}, ((_h2 = appUsersInfo == null ? void 0 : appUsersInfo[(_g2 = item.lastMessage) == null ? void 0 : _g2.from]) == null ? void 0 : _h2.nickname) || ((_i2 = item.lastMessage) == null ? void 0 : _i2.from)), /* @__PURE__ */ React__default$1.createElement("div", {
|
|
129902
129968
|
className: `${prefixCls}-thread-item-msgBox-name`
|
|
129903
|
-
}, getMsgSenderNickname(
|
|
129969
|
+
}, getMsgSenderNickname(
|
|
129970
|
+
item.lastMessage,
|
|
129971
|
+
item.parentId
|
|
129972
|
+
)), /* @__PURE__ */ React__default$1.createElement("div", null, lastMsg), /* @__PURE__ */ React__default$1.createElement("div", null, getConversationTime((_j2 = item.lastMessage) == null ? void 0 : _j2.time))));
|
|
129904
129973
|
};
|
|
129905
129974
|
const dom = /* @__PURE__ */ React__default$1.createElement(ThreadScrollList, {
|
|
129906
129975
|
ref: threadScrollRef,
|
|
@@ -130067,13 +130136,13 @@ const Chat = (props) => {
|
|
|
130067
130136
|
content: "IMAGE"
|
|
130068
130137
|
},
|
|
130069
130138
|
{
|
|
130070
|
-
content: "
|
|
130139
|
+
content: "VIDEO"
|
|
130071
130140
|
},
|
|
130072
130141
|
{
|
|
130073
|
-
content: "
|
|
130142
|
+
content: "FILE"
|
|
130074
130143
|
},
|
|
130075
130144
|
{
|
|
130076
|
-
content: "
|
|
130145
|
+
content: "CARD"
|
|
130077
130146
|
}
|
|
130078
130147
|
]
|
|
130079
130148
|
};
|
|
@@ -130111,12 +130180,10 @@ const Chat = (props) => {
|
|
|
130111
130180
|
const [currentCall, setCurrentCall] = useState$1({});
|
|
130112
130181
|
const showInvite = async (conf) => {
|
|
130113
130182
|
var _a4;
|
|
130114
|
-
console.log("\u6DFB\u52A0\u4EBA", conf);
|
|
130115
130183
|
const members2 = await ((_a4 = rtcConfig == null ? void 0 : rtcConfig.onAddPerson) == null ? void 0 : _a4.call(rtcConfig, conf));
|
|
130116
130184
|
const rtcMembers = members2 == null ? void 0 : members2.map((item) => {
|
|
130117
130185
|
return item.id;
|
|
130118
130186
|
});
|
|
130119
|
-
console.log("\u6DFB\u52A0\u4EBA2", members2, rtcMembers);
|
|
130120
130187
|
let options2 = {
|
|
130121
130188
|
callType: currentCall.callType,
|
|
130122
130189
|
chatType: "groupChat",
|
|
@@ -131398,7 +131465,7 @@ const GroupMember = (props) => {
|
|
|
131398
131465
|
}));
|
|
131399
131466
|
};
|
|
131400
131467
|
const GroupMember$1 = observer(GroupMember);
|
|
131401
|
-
const
|
|
131468
|
+
const GroupDetail = (props) => {
|
|
131402
131469
|
var _a3, _b;
|
|
131403
131470
|
const {
|
|
131404
131471
|
conversation,
|
|
@@ -131758,7 +131825,6 @@ const GroupSetting = (props) => {
|
|
|
131758
131825
|
groupMembers: groupData == null ? void 0 : groupData.members,
|
|
131759
131826
|
groupId: (infoData == null ? void 0 : infoData.id) || "",
|
|
131760
131827
|
onUserSelect: (userInfo, selectedUsers) => {
|
|
131761
|
-
console.log("======", userInfo, selectedUsers);
|
|
131762
131828
|
if (userInfo.type == "add") {
|
|
131763
131829
|
setSelectedOwner(userInfo);
|
|
131764
131830
|
} else {
|
|
@@ -131785,7 +131851,7 @@ const GroupSetting = (props) => {
|
|
|
131785
131851
|
onOk: transferOwner2
|
|
131786
131852
|
}, /* @__PURE__ */ React__default$1.createElement("div", null, selectedOwner ? `${t2("Want to transfer group ownership to")} \u201C${selectedOwner.nickname || selectedOwner.userId}\u201D?` : t2("Please select the person to be transferred")))));
|
|
131787
131853
|
};
|
|
131788
|
-
const
|
|
131854
|
+
const GroupDetail$1 = observer(GroupDetail);
|
|
131789
131855
|
const useEventHandler = () => {
|
|
131790
131856
|
const rootStore2 = getStore();
|
|
131791
131857
|
const { messageStore, threadStore, conversationStore, addressStore } = rootStore2;
|
|
@@ -136590,7 +136656,7 @@ const Chatroom = (props) => {
|
|
|
136590
136656
|
}),
|
|
136591
136657
|
...headerProps
|
|
136592
136658
|
}), /* @__PURE__ */ React__default$1.createElement("p", null), /* @__PURE__ */ React__default$1.createElement("div", {
|
|
136593
|
-
style: { position: "relative", flex: "1" }
|
|
136659
|
+
style: { position: "relative", flex: "1", overflow: "hidden", display: "flex" }
|
|
136594
136660
|
}, typeof renderBroadcast == "function" ? renderBroadcast() : broadcast.length > 0 && /* @__PURE__ */ React__default$1.createElement(Broadcast, {
|
|
136595
136661
|
loop: 0,
|
|
136596
136662
|
delay: 1,
|
|
@@ -138105,8 +138171,8 @@ export {
|
|
|
138105
138171
|
Dropdown,
|
|
138106
138172
|
Empty,
|
|
138107
138173
|
FileMessage$1 as FileMessage,
|
|
138174
|
+
GroupDetail$1 as GroupDetail,
|
|
138108
138175
|
GroupMember$1 as GroupMember,
|
|
138109
|
-
GroupSetting$1 as GroupSetting,
|
|
138110
138176
|
Header$1 as Header,
|
|
138111
138177
|
Icon$1 as Icon,
|
|
138112
138178
|
ImageMessage$1 as ImageMessage,
|