From f446dadb20fdff9336ddb67e2b2b678927a8bccc Mon Sep 17 00:00:00 2001 From: Shigma Date: Sat, 21 Oct 2023 22:43:56 +0800 Subject: [PATCH] feat(protocol): user.nick, member.nick --- adapters/discord/src/utils.ts | 2 +- adapters/kook/src/utils.ts | 2 +- adapters/qq/src/utils.ts | 2 +- adapters/telegram/src/utils.ts | 4 +--- packages/core/src/message.ts | 4 ++++ packages/protocol/src/index.ts | 2 ++ 6 files changed, 10 insertions(+), 6 deletions(-) diff --git a/adapters/discord/src/utils.ts b/adapters/discord/src/utils.ts index da5b0423..dd142200 100644 --- a/adapters/discord/src/utils.ts +++ b/adapters/discord/src/utils.ts @@ -22,7 +22,7 @@ export const decodeUser = (user: Discord.User): Universal.User => ({ export const decodeGuildMember = (member: Partial): Universal.GuildMember => ({ user: member.user && decodeUser(member.user), - name: member.nick, + nick: member.nick, roles: member.roles, joinedAt: member.joined_at && new Date(member.joined_at).valueOf(), }) diff --git a/adapters/kook/src/utils.ts b/adapters/kook/src/utils.ts index ff684e9e..6388fd71 100644 --- a/adapters/kook/src/utils.ts +++ b/adapters/kook/src/utils.ts @@ -19,7 +19,7 @@ export const adaptUser = (user: Kook.User): Universal.User => ({ export const decodeGuildMember = (member: Kook.Author): Universal.GuildMember => ({ user: adaptUser(member), - name: member.nickname, + nick: member.nickname, }) export const decodeRole = (role: Kook.GuildRole): Universal.GuildRole => ({ diff --git a/adapters/qq/src/utils.ts b/adapters/qq/src/utils.ts index c7a812c7..b6bf0477 100644 --- a/adapters/qq/src/utils.ts +++ b/adapters/qq/src/utils.ts @@ -24,7 +24,7 @@ export const decodeUser = (user: QQ.User): Universal.User => ({ export const decodeGuildMember = (member: QQ.Member): Universal.GuildMember => ({ user: decodeUser(member.user), - name: member.nick, + nick: member.nick, roles: member.roles, }) diff --git a/adapters/telegram/src/utils.ts b/adapters/telegram/src/utils.ts index 2ad12a0c..b0d3f756 100644 --- a/adapters/telegram/src/utils.ts +++ b/adapters/telegram/src/utils.ts @@ -9,10 +9,8 @@ const logger = new Logger('telegram') export const decodeUser = (data: Telegram.User): Universal.User => ({ id: data.id.toString(), name: data.username, - nickname: data.first_name + (data.last_name ? ' ' + data.last_name : ''), + nick: data.first_name + (data.last_name ? ' ' + data.last_name : ''), isBot: data.is_bot, - userId: data.id.toString(), - username: data.username, }) export const decodeGuildMember = (data: Telegram.ChatMember): Universal.GuildMember => ({ diff --git a/packages/core/src/message.ts b/packages/core/src/message.ts index 75cdcb75..1a5cd686 100644 --- a/packages/core/src/message.ts +++ b/packages/core/src/message.ts @@ -38,6 +38,10 @@ export abstract class MessageEncoder { guild: { id: this.guildId }, subtype: isDirect ? 'private' : 'group', }) + for (const key in this.options.session || {}) { + if (key in this.session) continue + this.session[key] = this.options.session[key] + } await this.prepare() this.session.elements = h.normalize(content) const btns = h.select(this.session.elements, 'button').filter(v => v.attrs.type !== 'link' && !v.attrs.id) diff --git a/packages/protocol/src/index.ts b/packages/protocol/src/index.ts index f6b78155..9cd92946 100644 --- a/packages/protocol/src/index.ts +++ b/packages/protocol/src/index.ts @@ -172,6 +172,7 @@ export interface GuildRole { export interface User { id: string name?: string + nick?: string /** @deprecated */ userId?: string /** @deprecated */ @@ -186,6 +187,7 @@ export interface User { export interface GuildMember { user?: User name?: string + nick?: string avatar?: string title?: string roles?: string[]