From 824874c2b96225638632793d905c7ae4508bb3f3 Mon Sep 17 00:00:00 2001 From: Shigma <1700011071@pku.edu.cn> Date: Wed, 12 May 2021 03:11:12 +0800 Subject: [PATCH] revert(core): remove session.mention --- packages/adapter-discord/src/utils.ts | 11 ----------- packages/adapter-kaiheila/src/utils.ts | 12 ++---------- packages/adapter-onebot/src/utils.ts | 7 ------- packages/koishi-core/src/adapter.ts | 8 -------- 4 files changed, 2 insertions(+), 36 deletions(-) diff --git a/packages/adapter-discord/src/utils.ts b/packages/adapter-discord/src/utils.ts index 2eeb1d2604..93150583a4 100644 --- a/packages/adapter-discord/src/utils.ts +++ b/packages/adapter-discord/src/utils.ts @@ -39,17 +39,6 @@ export async function adaptMessage(bot: DiscordBot, meta: DC.Message, session: P session.author.nickname = meta.member?.nick } - session.mention = { - everyone: meta.mention_everyone, - users: meta.mentions.map(adaptUser), - roles: meta.mention_roles.map(id => ({ id })), - channels: (meta.mention_channels || []).map(data => ({ - channelId: data.id, - channelName: data.name, - groupId: data.guild_id, - })), - } - // TODO remove in a future version session.discord = { webhook_id: meta.webhook_id, diff --git a/packages/adapter-kaiheila/src/utils.ts b/packages/adapter-kaiheila/src/utils.ts index 18df30ac2d..b62f5f843e 100644 --- a/packages/adapter-kaiheila/src/utils.ts +++ b/packages/adapter-kaiheila/src/utils.ts @@ -26,20 +26,12 @@ function adaptMessage(base: KHL.MessageBase, meta: KHL.MessageMeta, session: Mes session.userId = meta.author.id } if (base.type === KHL.Type.text) { - const users = new Map() - const channels = new Set() session.content = base.content - .replace(/@(.+?)#(\d+)/, (_, $1, $2) => (users.set($2, $1), `[CQ:at,id=${$2}]`)) + .replace(/@(.+?)#(\d+)/, (_, $1, $2) => segment.at($2, { name: $1 })) .replace(/@全体成员/, () => `[CQ:at,type=all]`) .replace(/@在线成员/, () => `[CQ:at,type=here]`) .replace(/@role:(\d+);/, (_, $1) => `[CQ:at,role=${$1}]`) - .replace(/#channel:(\d+);/, (_, $1) => (channels.add($1), `[CQ:sharp,id=${$1}]`)) - session.mention = { - everyone: meta.mentionAll || meta.mentionHere, - roles: meta.mentionRoles.map(id => ({ id })), - channels: [...channels].map(channelId => ({ channelId })), - users: [...users].map(([userId, username]) => ({ userId, username })), - } + .replace(/#channel:(\d+);/, (_, $1) => segment.sharp($1)) } else if (base.type === KHL.Type.image) { session.content = segment('image', { url: base.content, file: meta.attachments.name }) } diff --git a/packages/adapter-onebot/src/utils.ts b/packages/adapter-onebot/src/utils.ts index 4032663b20..35a40edd09 100644 --- a/packages/adapter-onebot/src/utils.ts +++ b/packages/adapter-onebot/src/utils.ts @@ -27,20 +27,13 @@ export const adaptAuthor = (user: OneBot.SenderInfo, anonymous?: OneBot.Anonymou }) export function adaptMessage(message: OneBot.Message): Koishi.MessageInfo { - const mention = { - roles: [], - channels: [], - } as Koishi.MentionInfo - return { - mention, messageId: message.messageId.toString(), timestamp: message.time * 1000, author: adaptAuthor(message.sender, message.anonymous), content: segment.transform(message.message, { at({ qq }) { if (qq !== 'all') return segment.at(qq) - mention.everyone = true return segment('at', { type: 'all' }) }, face: ({ id }) => segment('face', { id, url: qface.getUrl(id) }), diff --git a/packages/koishi-core/src/adapter.ts b/packages/koishi-core/src/adapter.ts index a449ca3bb8..34ecf9bc25 100644 --- a/packages/koishi-core/src/adapter.ts +++ b/packages/koishi-core/src/adapter.ts @@ -329,13 +329,6 @@ export interface RoleInfo { id: string } -export interface MentionInfo { - everyone: boolean - users: UserInfo[] - roles: RoleInfo[] - channels: ChannelInfo[] -} - export interface MessageBase { messageId?: string channelId?: string @@ -345,7 +338,6 @@ export interface MessageBase { timestamp?: number author?: AuthorInfo quote?: MessageInfo - mention?: MentionInfo } export interface MessageInfo extends MessageBase {