提交 9f44bac4 编写于 作者: Huan (李卓桓)'s avatar Huan (李卓桓)

#104

上级 e8638457
......@@ -120,6 +120,8 @@ export class Room extends EventEmitter implements Sayable {
}
await Promise.all(this.obj.memberList.map(c => c.ready(contactGetter)))
this.obj.nickMap = this.parseNickMap(this.obj.memberList)
return
} catch (e) {
......@@ -186,14 +188,16 @@ export class Room extends EventEmitter implements Sayable {
log.warn('Room', 'parse() on a empty rawObj?')
return null
}
const memberList = this.parseMemberList(rawObj.MemberList)
return {
id: rawObj.UserName
, encryId: rawObj.EncryChatRoomId // ???
, topic: rawObj.NickName
, ownerUin: rawObj.OwnerUin
, memberList: this.parseMemberList(rawObj.MemberList)
, nickMap: this.parseNickMap(rawObj.MemberList)
, memberList
}
}
......@@ -204,19 +208,16 @@ export class Room extends EventEmitter implements Sayable {
return rawMemberList.map(m => Contact.load(m.UserName))
}
private parseNickMap(memberList): Map<string, string> {
private parseNickMap(memberList: Contact[]): Map<string, string> {
const nickMap: Map<string, string> = new Map<string, string>()
let contact
if (memberList && memberList.map) {
memberList.forEach(m => {
contact = Contact.load(m.UserName)
memberList.forEach(contact => {
/**
* ISSUE #64 emoji need to be striped
* ISSUE #104 never use remark name because sys group message will never use that
*/
nickMap[m.UserName] = UtilLib.stripEmoji(
m.DisplayName || m.NickName
nickMap[contact.UserName] = UtilLib.stripEmoji(
contact.DisplayName || contact.NickName
)
})
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册