Files
tk-mini-program/unpackage/dist/dev/mp-weixin/TUIKit/components/TUIContact/utils/index.js
pengxiaolong c006a8e63d 消息
2025-05-13 19:39:53 +08:00

290 lines
13 KiB
JavaScript

"use strict";
const common_vendor = require("../../../../common/vendor.js");
const TUIKit_components_common_Toast_index = require("../../common/Toast/index.js");
const TUIKit_components_common_Toast_type = require("../../common/Toast/type.js");
const generateAvatar = (item) => {
var _a;
return (item == null ? void 0 : item.avatar) || ((_a = item == null ? void 0 : item.profile) == null ? void 0 : _a.avatar) || (item == null ? void 0 : item.groupID) && "https://web.sdk.qcloud.com/im/assets/images/Public.svg" || "https://web.sdk.qcloud.com/component/TUIKit/assets/avatar_21.png";
};
const generateName = (item) => {
var _a;
return (item == null ? void 0 : item.remark) || (item == null ? void 0 : item.name) || ((_a = item == null ? void 0 : item.profile) == null ? void 0 : _a.nick) || (item == null ? void 0 : item.nick) || (item == null ? void 0 : item.groupID) || (item == null ? void 0 : item.userID) || "";
};
const generateContactInfoName = (item) => {
var _a;
return (item == null ? void 0 : item.name) || ((_a = item == null ? void 0 : item.profile) == null ? void 0 : _a.nick) || (item == null ? void 0 : item.nick) || (item == null ? void 0 : item.groupID) || (item == null ? void 0 : item.userID) || "";
};
const generateContactInfoBasic = (contactInfo) => {
var _a;
const res = [
{
label: (contactInfo == null ? void 0 : contactInfo.groupID) ? "群ID" : "ID",
data: (contactInfo == null ? void 0 : contactInfo.groupID) || (contactInfo == null ? void 0 : contactInfo.userID) || ""
}
];
if (!isApplicationType(contactInfo)) {
res.push({
label: (contactInfo == null ? void 0 : contactInfo.groupID) ? "群类型" : "个性签名",
data: (contactInfo == null ? void 0 : contactInfo.type) || ((_a = contactInfo == null ? void 0 : contactInfo.profile) == null ? void 0 : _a.selfSignature) || ""
});
}
return res;
};
const isApplicationType = (info) => {
var _a, _b, _c, _d;
return (info == null ? void 0 : info.type) === ((_b = (_a = common_vendor.qt) == null ? void 0 : _a.TYPES) == null ? void 0 : _b.SNS_APPLICATION_SENT_TO_ME) || (info == null ? void 0 : info.type) === ((_d = (_c = common_vendor.qt) == null ? void 0 : _c.TYPES) == null ? void 0 : _d.SNS_APPLICATION_SENT_BY_ME);
};
const isFriend = (info) => {
return new Promise((resolve, reject) => {
if ((info == null ? void 0 : info.groupID) || !(info == null ? void 0 : info.userID)) {
resolve(false);
return;
}
if (info == null ? void 0 : info.addTime) {
resolve(true);
return;
}
common_vendor.ts.checkFriend({
userIDList: [info == null ? void 0 : info.userID],
type: common_vendor.qt.TYPES.SNS_CHECK_TYPE_BOTH
}).then((res) => {
var _a, _b;
switch ((_b = (_a = res == null ? void 0 : res.data) == null ? void 0 : _a.successUserIDList[0]) == null ? void 0 : _b.relation) {
case common_vendor.qt.TYPES.SNS_TYPE_NO_RELATION:
resolve(false);
break;
case common_vendor.qt.TYPES.SNS_TYPE_A_WITH_B:
resolve(false);
break;
case common_vendor.qt.TYPES.SNS_TYPE_B_WITH_A:
resolve(false);
break;
case common_vendor.qt.TYPES.SNS_TYPE_BOTH_WAY:
resolve(true);
break;
default:
resolve(false);
break;
}
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:111", "checkFriend error", error);
reject(error);
});
});
};
const updateFriendRemark = (userID, remark) => {
var _a;
if (((_a = remark == null ? void 0 : remark.replace(/[^\u0000-\u00ff]/g, "aa")) == null ? void 0 : _a.length) > 96) {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.修改备注失败: 备注长度不得超过 96 字节"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
return;
}
common_vendor.ts.updateFriend({
userID,
remark
}).then(() => {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.修改备注成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:138", "update friend remark failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.修改备注失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const deleteFriend = (userID) => {
common_vendor.ts.deleteFriend({
userIDList: [userID],
type: common_vendor.qt.TYPES.SNS_DELETE_TYPE_BOTH
}).then((res) => {
const { successUserIDList } = res.data;
if (successUserIDList[0].userID === userID) {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.删除好友成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
} else {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.删除好友失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
}
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:167", "delete friend failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.删除好友失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const addFriend = (params) => {
common_vendor.ts.addFriend(params).then(() => {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.申请已发送"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:185", "delete friend failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.申请发送失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const enterConversation = (item) => {
const conversationID = (item == null ? void 0 : item.groupID) ? `GROUP${item == null ? void 0 : item.groupID}` : `C2C${item == null ? void 0 : item.userID}`;
common_vendor.Xt.switchConversation(conversationID).catch(
(error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:200", "switch conversation failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.进入会话失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
}
);
};
const acceptFriendApplication = (userID) => {
common_vendor.ts.acceptFriendApplication({
userID,
type: common_vendor.qt.TYPES.SNS_APPLICATION_AGREE_AND_ADD
}).then(() => {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.添加好友成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:222", "accept friend application failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.同意好友申请失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const refuseFriendApplication = (userID) => {
common_vendor.ts.refuseFriendApplication(userID).then(() => {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.拒绝成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:240", "accept friend application failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.拒绝好友申请失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const dismissGroup = (groupID) => {
common_vendor.es.dismissGroup(groupID).then(() => {
var _a, _b;
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.解散群聊成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
((_a = common_vendor.i) == null ? void 0 : _a.updateContactSearch) && ((_b = common_vendor.i) == null ? void 0 : _b.updateContactSearch());
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:259", "dismiss group failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.解散群聊失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const quitGroup = (groupID) => {
common_vendor.es.quitGroup(groupID).then(() => {
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.退出群组成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:277", "quit group failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.退出群组失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const joinGroup = (groupID, applyMessage) => {
common_vendor.es.joinGroup({
groupID,
applyMessage
}).then((imResponse) => {
var _a;
switch ((_a = imResponse == null ? void 0 : imResponse.data) == null ? void 0 : _a.status) {
case common_vendor.qt.TYPES.JOIN_STATUS_WAIT_APPROVAL:
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.等待管理员同意"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
break;
case common_vendor.qt.TYPES.JOIN_STATUS_SUCCESS:
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.加群成功"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
break;
case common_vendor.qt.TYPES.JOIN_STATUS_ALREADY_IN_GROUP:
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.您已是群成员"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.SUCCESS
});
break;
}
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:316", "join group failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: "申请入群失败",
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const addToBlacklist = (userID, successCallBack) => {
common_vendor.Zt.addToBlacklist({
userIDList: [userID]
}).then(() => {
successCallBack && successCallBack();
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:333", "add to blacklist failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.加入黑名单失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
const removeFromBlacklist = (userID, successCallBack) => {
common_vendor.Zt.removeFromBlacklist({
userIDList: [userID]
}).then(() => {
successCallBack && successCallBack();
}).catch((error) => {
common_vendor.index.__f__("warn", "at TUIKit/components/TUIContact/utils/index.ts:353", "remove from blacklist failed:", error);
TUIKit_components_common_Toast_index.Toast({
message: common_vendor.Wt.t("TUIContact.移除黑名单失败"),
type: TUIKit_components_common_Toast_type.TOAST_TYPE.ERROR
});
});
};
exports.acceptFriendApplication = acceptFriendApplication;
exports.addFriend = addFriend;
exports.addToBlacklist = addToBlacklist;
exports.deleteFriend = deleteFriend;
exports.dismissGroup = dismissGroup;
exports.enterConversation = enterConversation;
exports.generateAvatar = generateAvatar;
exports.generateContactInfoBasic = generateContactInfoBasic;
exports.generateContactInfoName = generateContactInfoName;
exports.generateName = generateName;
exports.isApplicationType = isApplicationType;
exports.isFriend = isFriend;
exports.joinGroup = joinGroup;
exports.quitGroup = quitGroup;
exports.refuseFriendApplication = refuseFriendApplication;
exports.removeFromBlacklist = removeFromBlacklist;
exports.updateFriendRemark = updateFriendRemark;
//# sourceMappingURL=../../../../../.sourcemap/mp-weixin/TUIKit/components/TUIContact/utils/index.js.map