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

288 lines
17 KiB
JavaScript

"use strict";
const common_vendor = require("../../../../common/vendor.js");
require("../../../adapter-vue.js");
const TUIKit_utils_env = require("../../../utils/env.js");
const TUIKit_components_TUIContact_utils_index = require("../utils/index.js");
const TUIKit_components_TUIContact_contactInfo_contactInfoConfig = require("./contact-info-config.js");
const common_assets = require("../../../../common/assets.js");
const TUIKit_constant = require("../../../constant.js");
const TUIKit_components_TUIChat_utils_utils = require("../../TUIChat/utils/utils.js");
if (!Math) {
(Icon + SwitchBar)();
}
const Icon = () => "../../common/Icon.js";
const SwitchBar = () => "../../common/SwitchBar/index.js";
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "index",
emits: ["switchConversation"],
setup(__props, { emit: __emit }) {
const emits = __emit;
const contactInfoData = common_vendor.ref({});
const contactInfoBasicList = common_vendor.ref([]);
const contactInfoMoreList = common_vendor.ref([]);
const contactInfoButtonList = common_vendor.ref([]);
const setEditing = (item) => {
item.editing = true;
};
const isGroup = common_vendor.computed(
() => {
var _a;
return ((_a = contactInfoData.value) == null ? void 0 : _a.groupID) ? true : false;
}
);
const isApplication = common_vendor.computed(() => {
return TUIKit_components_TUIContact_utils_index.isApplicationType(contactInfoData == null ? void 0 : contactInfoData.value);
});
const isBothFriend = common_vendor.ref(false);
const isGroupMember = common_vendor.computed(() => {
var _a, _b;
return ((_b = (_a = contactInfoData.value) == null ? void 0 : _a.selfInfo) == null ? void 0 : _b.userID) ? true : false;
});
const isInBlackList = common_vendor.computed(() => {
var _a;
return !isGroup.value && ((_a = blackList.value) == null ? void 0 : _a.findIndex(
(item) => {
var _a2;
return (item == null ? void 0 : item.userID) === ((_a2 = contactInfoData.value) == null ? void 0 : _a2.userID);
}
)) >= 0;
});
const blackList = common_vendor.ref([]);
common_vendor.onMounted(() => {
common_vendor.Jt.watch(common_vendor.o.CUSTOM, {
currentContactInfo: onCurrentContactInfoUpdated
});
common_vendor.Jt.watch(common_vendor.o.USER, {
userBlacklist: onUserBlacklistUpdated
});
});
common_vendor.onUnmounted(() => {
common_vendor.Jt.unwatch(common_vendor.o.CUSTOM, {
currentContactInfo: onCurrentContactInfoUpdated
});
common_vendor.Jt.unwatch(common_vendor.o.USER, {
userBlacklist: onUserBlacklistUpdated
});
});
const resetContactInfoUIData = () => {
contactInfoData.value = {};
contactInfoBasicList.value = [];
contactInfoMoreList.value = [];
contactInfoButtonList.value = [];
};
const resetContactSearchingUIData = () => {
var _a, _b;
common_vendor.Jt.update(common_vendor.o.CUSTOM, "currentContactInfo", {});
common_vendor.Jt.update(common_vendor.o.CUSTOM, "currentContactSearchingStatus", false);
((_a = common_vendor.i) == null ? void 0 : _a.closeSearching) && ((_b = common_vendor.i) == null ? void 0 : _b.closeSearching());
};
const onContactInfoEmitSubmit = (item) => {
item.editSubmitHandler && item.editSubmitHandler({
item,
contactInfoData: contactInfoData.value,
isBothFriend: isBothFriend.value,
isInBlackList: isInBlackList.value
});
};
const onContactInfoButtonClicked = (item) => {
item.onClick && item.onClick({
contactInfoData: contactInfoData.value,
contactInfoMoreList: contactInfoMoreList.value
});
if (item.key === "enterGroupConversation" || item.key === "enterC2CConversation") {
emits("switchConversation", contactInfoData.value);
resetContactSearchingUIData();
}
};
const generateMoreInfo = async () => {
var _a, _b, _c, _d, _e;
if (!isApplication.value) {
if (!isGroup.value && !isBothFriend.value && !isInBlackList.value || isGroup.value && !isGroupMember.value && ((_a = contactInfoData.value) == null ? void 0 : _a.type) !== ((_c = (_b = common_vendor.qt) == null ? void 0 : _b.TYPES) == null ? void 0 : _c.GRP_AVCHATROOM)) {
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.setWords.data = "";
contactInfoMoreList.value.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.setWords);
}
if (!isGroup.value && !isInBlackList.value) {
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.setRemark.data = ((_d = contactInfoData.value) == null ? void 0 : _d.remark) || "";
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.setRemark.editing = false;
contactInfoMoreList.value.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.setRemark);
}
if (!isGroup.value && (isBothFriend.value || isInBlackList.value)) {
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.blackList.data = isInBlackList.value || false;
contactInfoMoreList.value.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.blackList);
}
} else {
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.displayWords.data = ((_e = contactInfoData.value) == null ? void 0 : _e.wording) || "";
contactInfoMoreList.value.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig.displayWords);
}
};
const generateButton = () => {
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
if (isInBlackList.value) {
return;
}
if (isApplication.value) {
if (((_a = contactInfoData.value) == null ? void 0 : _a.type) === ((_c = (_b = common_vendor.qt) == null ? void 0 : _b.TYPES) == null ? void 0 : _c.SNS_APPLICATION_SENT_TO_ME)) {
(_d = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _d.push(
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.refuseFriendApplication
);
(_e = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _e.push(
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.acceptFriendApplication
);
}
} else {
if (isGroup.value && isGroupMember.value) {
switch ((_g = (_f = contactInfoData.value) == null ? void 0 : _f.selfInfo) == null ? void 0 : _g.role) {
case "Owner":
(_h = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _h.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.dismissGroup);
break;
default:
(_i = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _i.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.quitGroup);
break;
}
(_j = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _j.push(
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.enterGroupConversation
);
} else if (!isGroup.value && isBothFriend.value) {
(_k = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _k.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.deleteFriend);
(_l = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _l.push(
TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.enterC2CConversation
);
} else {
if (isGroup.value) {
(_p = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _p.push(
((_m = contactInfoData.value) == null ? void 0 : _m.type) === ((_o = (_n = common_vendor.qt) == null ? void 0 : _n.TYPES) == null ? void 0 : _o.GRP_AVCHATROOM) ? TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.joinAVChatGroup : TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.joinGroup
);
} else {
(_q = contactInfoButtonList == null ? void 0 : contactInfoButtonList.value) == null ? void 0 : _q.push(TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig.addFriend);
}
}
}
};
function onUserBlacklistUpdated(userBlacklist) {
blackList.value = userBlacklist;
}
async function onCurrentContactInfoUpdated(contactInfo) {
var _a;
if (contactInfoData.value && contactInfo && JSON.stringify(contactInfoData.value) === JSON.stringify(contactInfo)) {
return;
}
resetContactInfoUIData();
contactInfoData.value = TUIKit_components_TUIChat_utils_utils.deepCopy(contactInfo) || {};
if (!contactInfoData.value || ((_a = Object.keys(contactInfoData.value)) == null ? void 0 : _a.length) === 0) {
return;
}
contactInfoBasicList.value = TUIKit_components_TUIContact_utils_index.generateContactInfoBasic(
contactInfoData.value
);
isBothFriend.value = await TUIKit_components_TUIContact_utils_index.isFriend(contactInfoData.value);
generateMoreInfo();
generateButton();
if (contactInfo.infoKeyList) {
contactInfoMoreList.value = contactInfo.infoKeyList.map((key) => {
return TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactMoreInfoConfig[key];
});
}
if (contactInfo.btnKeyList) {
contactInfoButtonList.value = contactInfo.btnKeyList.map((key) => {
return TUIKit_components_TUIContact_contactInfo_contactInfoConfig.contactButtonConfig[key];
});
}
}
return (_ctx, _cache) => {
return common_vendor.e({
a: typeof common_vendor.unref(contactInfoData) === "object" && Object.keys(common_vendor.unref(contactInfoData)).length
}, typeof common_vendor.unref(contactInfoData) === "object" && Object.keys(common_vendor.unref(contactInfoData)).length ? common_vendor.e({
b: !common_vendor.unref(TUIKit_utils_env.isPC)
}, !common_vendor.unref(TUIKit_utils_env.isPC) ? {
c: common_vendor.p({
file: common_vendor.unref(common_assets.backIcon)
}),
d: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-header-icon"),
e: common_vendor.o$1(resetContactSearchingUIData),
f: common_vendor.t(common_vendor.unref(common_vendor.Wt).t("TUIContact.添加好友/群聊")),
g: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-header-title"),
h: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-header")
} : {}, {
i: common_vendor.t(common_vendor.unref(TUIKit_components_TUIContact_utils_index.generateContactInfoName)(common_vendor.unref(contactInfoData))),
j: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-basic-text-name"),
k: common_vendor.f(common_vendor.unref(contactInfoBasicList), (item, k0, i0) => {
return {
a: common_vendor.t(`${common_vendor.unref(common_vendor.Wt).t(`TUIContact.${item.label}`)}:
${item.data}`),
b: item.label
};
}),
l: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-basic-text-other"),
m: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-basic-text"),
n: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-basic-avatar"),
o: common_vendor.unref(TUIKit_components_TUIContact_utils_index.generateAvatar)(common_vendor.unref(contactInfoData)),
p: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-basic"),
q: common_vendor.unref(contactInfoMoreList)[0]
}, common_vendor.unref(contactInfoMoreList)[0] ? {
r: common_vendor.f(common_vendor.unref(contactInfoMoreList), (item, k0, i0) => {
return common_vendor.e({
a: common_vendor.t(`${common_vendor.unref(common_vendor.Wt).t(`TUIContact.${item.label}`)}`),
b: !item.editing
}, !item.editing ? common_vendor.e({
c: common_vendor.t(item.data),
d: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-content-text-data"),
e: item.editable
}, item.editable ? {
f: "e2a6c8d8-1-" + i0,
g: common_vendor.p({
file: common_vendor.unref(common_assets.editIcon),
width: "14px",
height: "14px"
}),
h: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-content-text-icon"),
i: common_vendor.o$1(($event) => setEditing(item), item.key)
} : {}, {
j: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-content-text")
}) : item.editType === common_vendor.unref(TUIKit_constant.CONTACT_INFO_MORE_EDIT_TYPE).INPUT ? {
l: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-content-input"),
m: common_vendor.o$1(($event) => onContactInfoEmitSubmit(item), item.key),
n: common_vendor.o$1(($event) => onContactInfoEmitSubmit(item), item.key),
o: item.data,
p: common_vendor.o$1(($event) => item.data = $event.detail.value, item.key)
} : item.editType === common_vendor.unref(TUIKit_constant.CONTACT_INFO_MORE_EDIT_TYPE).TEXTAREA ? {
r: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-content-textarea"),
s: item.data,
t: common_vendor.o$1(($event) => item.data = $event.detail.value, item.key)
} : item.editType === common_vendor.unref(TUIKit_constant.CONTACT_INFO_MORE_EDIT_TYPE).SWITCH ? {
w: "e2a6c8d8-2-" + i0,
x: common_vendor.p({
value: item.data
}),
y: common_vendor.o$1(($event) => onContactInfoEmitSubmit(item), item.key)
} : {}, {
k: item.editType === common_vendor.unref(TUIKit_constant.CONTACT_INFO_MORE_EDIT_TYPE).INPUT,
q: item.editType === common_vendor.unref(TUIKit_constant.CONTACT_INFO_MORE_EDIT_TYPE).TEXTAREA,
v: item.editType === common_vendor.unref(TUIKit_constant.CONTACT_INFO_MORE_EDIT_TYPE).SWITCH,
z: item.key,
A: common_vendor.n(item.labelPosition === common_vendor.unref(TUIKit_constant.CONTACT_INFO_LABEL_POSITION).TOP ? "tui-contact-info-more-item-top" : "tui-contact-info-more-item-left")
});
}),
s: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-label"),
t: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item-content"),
v: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more-item"),
w: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-more")
} : {}, {
x: common_vendor.f(common_vendor.unref(contactInfoButtonList), (item, k0, i0) => {
return {
a: common_vendor.t(common_vendor.unref(common_vendor.Wt).t(`TUIContact.${item.label}`)),
b: item.key,
c: common_vendor.n(item.type === common_vendor.unref(TUIKit_constant.CONTACT_INFO_BUTTON_TYPE).CANCEL ? `tui-contact-info-button-item-cancel` : `tui-contact-info-button-item-submit`),
d: common_vendor.o$1(($event) => onContactInfoButtonClicked(item), item.key)
};
}),
y: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-button-item"),
z: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5-button"),
A: common_vendor.n(!common_vendor.unref(TUIKit_utils_env.isPC) && "tui-contact-info-h5")
}) : {});
};
}
});
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-e2a6c8d8"]]);
wx.createComponent(Component);
//# sourceMappingURL=../../../../../.sourcemap/mp-weixin/TUIKit/components/TUIContact/contact-info/index.js.map