@zhin.js/adapter-discord 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @zhin.js/adapter-discord
2
2
 
3
+ ## 1.0.4
4
+
5
+ ### Patch Changes
6
+
7
+ - zhin.js@1.0.4
8
+
9
+ ## 1.0.3
10
+
11
+ ### Patch Changes
12
+
13
+ - 89bc676: fix: 类型反射优化
14
+ - Updated dependencies [89bc676]
15
+ - @zhin.js/types@1.0.2
16
+ - zhin.js@1.0.3
17
+
3
18
  ## 1.0.2
4
19
 
5
20
  ### Patch Changes
package/lib/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Client, GatewayIntentBits, Message as DiscordMessage, TextChannel, DMChannel, NewsChannel, ThreadChannel, EmbedBuilder, AttachmentBuilder, MessageCreateOptions, ApplicationCommandData, ChatInputCommandInteraction } from 'discord.js';
2
2
  import { Bot, BotConfig, Adapter, Plugin, Message, SendOptions, SendContent, MessageSegment } from "zhin.js";
3
- declare module 'zhin.js' {
3
+ declare module '@zhin.js/types' {
4
4
  interface RegisteredAdapters {
5
5
  discord: Adapter<DiscordBot>;
6
6
  'discord-interactions': Adapter<DiscordInteractionsBot>;
@@ -58,8 +58,9 @@ export declare class DiscordBot extends Client implements Bot<DiscordChannelMess
58
58
  parseMessageContent(msg: DiscordChannelMessage): MessageSegment[];
59
59
  parseTextContent(content: string, msg: DiscordChannelMessage): MessageSegment[];
60
60
  parseAttachment(attachment: any): MessageSegment[];
61
- $sendMessage(options: SendOptions): Promise<void>;
62
- sendContentToChannel(channel: TextChannel | DMChannel | NewsChannel | ThreadChannel, content: SendContent, extraOptions?: MessageCreateOptions): Promise<void>;
61
+ $sendMessage(options: SendOptions): Promise<string>;
62
+ sendContentToChannel(channel: TextChannel | DMChannel | NewsChannel | ThreadChannel, content: SendContent, extraOptions?: MessageCreateOptions): Promise<DiscordMessage<boolean>>;
63
+ $recallMessage(id: string): Promise<void>;
63
64
  handleFileSegment(data: any, files: AttachmentBuilder[], textContent: string): Promise<void>;
64
65
  createEmbedFromData(data: any): EmbedBuilder;
65
66
  private getActivityType;
@@ -90,7 +91,8 @@ export declare class DiscordInteractionsBot extends Client implements Bot<any, D
90
91
  removeSlashCommandHandler(commandName: string): boolean;
91
92
  private getActivityType;
92
93
  $formatMessage(msg: any): Message<any>;
93
- $sendMessage(options: SendOptions): Promise<void>;
94
+ $sendMessage(options: SendOptions): Promise<string>;
95
+ $recallMessage(id: string): Promise<void>;
94
96
  }
95
97
  export {};
96
98
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,MAAM,EACN,iBAAiB,EACjB,OAAO,IAAI,cAAc,EACzB,WAAW,EACX,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EAQpB,sBAAsB,EACtB,2BAA2B,EAG9B,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,GAAG,EACH,SAAS,EACT,OAAO,EACP,MAAM,EAEN,OAAO,EACP,WAAW,EACX,WAAW,EACX,cAAc,EAGjB,MAAM,SAAS,CAAC;AAOjB,OAAO,QAAQ,SAAS,CAAC;IACrB,UAAU,kBAAkB;QACxB,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;QAC5B,sBAAsB,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAA;KAC1D;CACJ;AAGD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG;IACvC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAE7B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAA;QACtE,GAAG,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IAED,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAA;CAC3C,CAAA;AAGD,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IACxD,OAAO,EAAE,sBAAsB,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,MAAM,CAAA;IAExB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAE7B,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAA;IACxC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAA;QACtE,GAAG,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;CACJ;AAGD,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,yBAAyB,CAAA;CACrC;AAGD,KAAK,qBAAqB,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;AAGrD,qBAAa,UAAW,SAAQ,MAAO,YAAW,GAAG,CAAC,qBAAqB,EAAE,gBAAgB,CAAC;IAI9E,OAAO,CAAC,MAAM;IAAiB,OAAO,EAAE,gBAAgB;IAHpE,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,oBAAoB,CAAsF;gBAE9F,MAAM,EAAE,MAAM,EAAS,OAAO,EAAE,gBAAgB;YActD,oBAAoB;YAUpB,kBAAkB;IA6B1B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAWlC,cAAc,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA0D1E,mBAAmB,CAAC,GAAG,EAAE,qBAAqB,GAAG,cAAc,EAAE;IA8DjE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,cAAc,EAAE;IA0H/E,eAAe,CAAC,UAAU,EAAE,GAAG,GAAG,cAAc,EAAE;IA4D5C,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBjD,oBAAoB,CACtB,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,EAC9D,OAAO,EAAE,WAAW,EACpB,YAAY,GAAE,oBAAyB,GACxC,OAAO,CAAC,IAAI,CAAC;IAwEV,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBlG,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,YAAY;IAoB5C,OAAO,CAAC,eAAe;YAYT,qBAAqB;IA6BnC,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC;IAKhH,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;YAKzC,UAAU;IAUxB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM;CAgC3D;AAQD,qBAAa,sBAAuB,SAAQ,MAAO,YAAW,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC;IAKjF,OAAO,CAAC,MAAM;IAA8B,OAAO,EAAE,yBAAyB;IAJ1F,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,oBAAoB,CAA8D;gBAEtE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAS,OAAO,EAAE,yBAAyB;IAe1F,OAAO,CAAC,yBAAyB;YAOnB,iBAAiB;IAqC/B,OAAO,CAAC,sBAAsB;YAahB,wBAAwB;IA4BtC,OAAO,CAAC,0BAA0B;YAkCpB,YAAY;IAc1B,OAAO,CAAC,iBAAiB;IAuCnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;YAapB,qBAAqB;IAqBnC,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAK/F,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAKvD,OAAO,CAAC,eAAe;IAYvB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhC,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAc1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,MAAM,EACN,iBAAiB,EACjB,OAAO,IAAI,cAAc,EACzB,WAAW,EACX,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EAIpB,sBAAsB,EACtB,2BAA2B,EAG9B,MAAM,YAAY,CAAC;AACpB,OAAO,EACH,GAAG,EACH,SAAS,EACT,OAAO,EACP,MAAM,EAEN,OAAO,EACP,WAAW,EACX,WAAW,EACX,cAAc,EAGjB,MAAM,SAAS,CAAC;AAOjB,OAAO,QAAQ,gBAAgB,CAAA;IAC3B,UAAU,kBAAkB;QACxB,OAAO,EAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC3B,sBAAsB,EAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;KACzD;CACJ;AAGD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG;IACvC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAE7B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAA;QACtE,GAAG,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IAED,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAA;CAC3C,CAAA;AAGD,MAAM,WAAW,yBAA0B,SAAQ,SAAS;IACxD,OAAO,EAAE,sBAAsB,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,MAAM,CAAA;IAExB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAE7B,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAA;IACxC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAA;QACtE,GAAG,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;CACJ;AAGD,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,OAAO,EAAE,yBAAyB,CAAA;CACrC;AAGD,KAAK,qBAAqB,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;AAGrD,qBAAa,UAAW,SAAQ,MAAO,YAAW,GAAG,CAAC,qBAAqB,EAAE,gBAAgB,CAAC;IAI9E,OAAO,CAAC,MAAM;IAAiB,OAAO,EAAE,gBAAgB;IAHpE,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,oBAAoB,CAAsF;gBAE9F,MAAM,EAAE,MAAM,EAAS,OAAO,EAAE,gBAAgB;YActD,oBAAoB;YAUpB,kBAAkB;IA6B1B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAWlC,cAAc,CAAC,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA2D1E,mBAAmB,CAAC,GAAG,EAAE,qBAAqB,GAAG,cAAc,EAAE;IA8DjE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,cAAc,EAAE;IA0H/E,eAAe,CAAC,UAAU,EAAE,GAAG,GAAG,cAAc,EAAE;IA4D5C,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBnD,oBAAoB,CACtB,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,EAC9D,OAAO,EAAE,WAAW,EACpB,YAAY,GAAE,oBAAyB,GACxC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAsE7B,cAAc,CAAC,EAAE,EAAC,MAAM,GAAE,OAAO,CAAC,IAAI,CAAC;IAIvC,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBlG,mBAAmB,CAAC,IAAI,EAAE,GAAG,GAAG,YAAY;IAoB5C,OAAO,CAAC,eAAe;YAYT,qBAAqB;IA6BnC,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,2BAA2B,KAAK,OAAO,CAAC,IAAI,CAAC;IAKhH,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;YAKzC,UAAU;IAUxB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM;CAgC3D;AAQD,qBAAa,sBAAuB,SAAQ,MAAO,YAAW,GAAG,CAAC,GAAG,EAAE,yBAAyB,CAAC;IAKjF,OAAO,CAAC,MAAM;IAA8B,OAAO,EAAE,yBAAyB;IAJ1F,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,oBAAoB,CAA8D;gBAEtE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAS,OAAO,EAAE,yBAAyB;IAe1F,OAAO,CAAC,yBAAyB;YAOnB,iBAAiB;IAqC/B,OAAO,CAAC,sBAAsB;YAahB,wBAAwB;IA4BtC,OAAO,CAAC,0BAA0B;YAmCpB,YAAY;IAgB1B,OAAO,CAAC,iBAAiB;IAuCnB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BzB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;YAapB,qBAAqB;IAqBnC,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAK/F,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAKvD,OAAO,CAAC,eAAe;IAYvB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhC,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAenD,cAAc,CAAC,EAAE,EAAC,MAAM,GAAE,OAAO,CAAC,IAAI,CAAC;CAGhD"}
package/lib/index.js CHANGED
@@ -163,7 +163,8 @@ export class DiscordBot extends Client {
163
163
  this.plugin.logger.warn(`Could not find message to reply to: ${replyId}`);
164
164
  }
165
165
  }
166
- await this.sendContentToChannel(msg.channel, content, sendOptions);
166
+ const res = await this.sendContentToChannel(msg.channel, content, sendOptions);
167
+ return res.id;
167
168
  }
168
169
  });
169
170
  return result;
@@ -396,8 +397,9 @@ export class DiscordBot extends Client {
396
397
  if (!channel || !channel.isTextBased()) {
397
398
  throw new Error(`Channel ${options.id} is not a text channel`);
398
399
  }
399
- await this.sendContentToChannel(channel, options.content);
400
+ const result = await this.sendContentToChannel(channel, options.content);
400
401
  this.plugin.logger.info(`send ${options.type}(${options.id}): ${segment.raw(options.content)}`);
402
+ return result.id;
401
403
  }
402
404
  catch (error) {
403
405
  this.plugin.logger.error('Failed to send Discord message:', error);
@@ -459,7 +461,9 @@ export class DiscordBot extends Client {
459
461
  messageOptions.files = files;
460
462
  }
461
463
  // 发送消息
462
- await channel.send(messageOptions);
464
+ return await channel.send(messageOptions);
465
+ }
466
+ async $recallMessage(id) {
463
467
  }
464
468
  // 处理文件段
465
469
  async handleFileSegment(data, files, textContent) {
@@ -722,7 +726,8 @@ export class DiscordInteractionsBot extends Client {
722
726
  $content: content,
723
727
  $reply: async (content) => {
724
728
  // 通过 REST API 发送后续消息
725
- await this.sendFollowUp(interaction, content);
729
+ const res = await this.sendFollowUp(interaction, content);
730
+ return res.id;
726
731
  }
727
732
  });
728
733
  }
@@ -730,10 +735,12 @@ export class DiscordInteractionsBot extends Client {
730
735
  try {
731
736
  const rest = new REST({ version: '10' }).setToken(this.$config.token);
732
737
  const messageContent = this.formatSendContent(content);
733
- await rest.post(`/webhooks/${this.$config.applicationId}/${interaction.token}`, { body: messageContent });
738
+ const res = await rest.post(`/webhooks/${this.$config.applicationId}/${interaction.token}`, { body: messageContent });
739
+ return res;
734
740
  }
735
741
  catch (error) {
736
742
  this.plugin.logger.error('Failed to send follow-up message:', error);
743
+ throw error;
737
744
  }
738
745
  }
739
746
  formatSendContent(content) {
@@ -859,6 +866,9 @@ export class DiscordInteractionsBot extends Client {
859
866
  catch (error) {
860
867
  this.plugin.logger.error('Failed to send message:', error);
861
868
  }
869
+ return '';
870
+ }
871
+ async $recallMessage(id) {
862
872
  }
863
873
  }
864
874
  // 注册 Gateway 模式适配器
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhin.js/adapter-discord",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "zhin adapter for discord",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -26,8 +26,8 @@
26
26
  "typescript": "^5.3.0"
27
27
  },
28
28
  "peerDependencies": {
29
- "@zhin.js/types": "1.0.1",
30
- "zhin.js": "1.0.2"
29
+ "@zhin.js/types": "1.0.2",
30
+ "zhin.js": "1.0.4"
31
31
  },
32
32
  "peerDependenciesMeta": {
33
33
  "@zhin.js/types": {
package/src/index.ts CHANGED
@@ -10,10 +10,6 @@ import {
10
10
  AttachmentBuilder,
11
11
  MessageCreateOptions,
12
12
  ChannelType,
13
- User,
14
- GuildMember,
15
- SlashCommandBuilder,
16
- CommandInteraction,
17
13
  REST,
18
14
  Routes,
19
15
  ApplicationCommandData,
@@ -40,10 +36,10 @@ import { promises as fs } from 'fs';
40
36
  import path from 'path';
41
37
 
42
38
  // 声明模块,注册 discord 适配器类型
43
- declare module 'zhin.js' {
44
- interface RegisteredAdapters {
45
- discord: Adapter<DiscordBot>
46
- 'discord-interactions': Adapter<DiscordInteractionsBot>
39
+ declare module '@zhin.js/types'{
40
+ interface RegisteredAdapters{
41
+ discord:Adapter<DiscordBot>
42
+ 'discord-interactions':Adapter<DiscordInteractionsBot>
47
43
  }
48
44
  }
49
45
 
@@ -252,7 +248,7 @@ export class DiscordBot extends Client implements Bot<DiscordChannelMessage, Dis
252
248
  $content: content,
253
249
  $raw: msg.content,
254
250
  $timestamp: msg.createdTimestamp,
255
- $reply: async (content: SendContent, quote?: boolean | string): Promise<void> => {
251
+ $reply: async (content: SendContent, quote?: boolean | string): Promise<string> => {
256
252
  if (!Array.isArray(content)) content = [content];
257
253
 
258
254
  const sendOptions: MessageCreateOptions = {};
@@ -268,7 +264,8 @@ export class DiscordBot extends Client implements Bot<DiscordChannelMessage, Dis
268
264
  }
269
265
  }
270
266
 
271
- await this.sendContentToChannel(msg.channel as any, content, sendOptions);
267
+ const res = await this.sendContentToChannel(msg.channel as any, content, sendOptions);
268
+ return res.id;
272
269
  }
273
270
  });
274
271
 
@@ -520,7 +517,7 @@ export class DiscordBot extends Client implements Bot<DiscordChannelMessage, Dis
520
517
  return segments;
521
518
  }
522
519
 
523
- async $sendMessage(options: SendOptions): Promise<void> {
520
+ async $sendMessage(options: SendOptions): Promise<string> {
524
521
  options = await this.plugin.app.handleBeforeSend(options);
525
522
 
526
523
  try {
@@ -529,8 +526,9 @@ export class DiscordBot extends Client implements Bot<DiscordChannelMessage, Dis
529
526
  throw new Error(`Channel ${options.id} is not a text channel`);
530
527
  }
531
528
 
532
- await this.sendContentToChannel(channel as any, options.content);
529
+ const result = await this.sendContentToChannel(channel as any, options.content);
533
530
  this.plugin.logger.info(`send ${options.type}(${options.id}): ${segment.raw(options.content)}`);
531
+ return result.id;
534
532
  } catch (error) {
535
533
  this.plugin.logger.error('Failed to send Discord message:', error);
536
534
  throw error;
@@ -542,7 +540,7 @@ export class DiscordBot extends Client implements Bot<DiscordChannelMessage, Dis
542
540
  channel: TextChannel | DMChannel | NewsChannel | ThreadChannel,
543
541
  content: SendContent,
544
542
  extraOptions: MessageCreateOptions = {}
545
- ): Promise<void> {
543
+ ): Promise<DiscordMessage<boolean>> {
546
544
  if (!Array.isArray(content)) content = [content];
547
545
 
548
546
  const messageOptions: MessageCreateOptions = { ...extraOptions };
@@ -610,9 +608,11 @@ export class DiscordBot extends Client implements Bot<DiscordChannelMessage, Dis
610
608
  }
611
609
 
612
610
  // 发送消息
613
- await channel.send(messageOptions);
611
+ return await channel.send(messageOptions);
612
+ }
613
+ async $recallMessage(id:string):Promise<void> {
614
+
614
615
  }
615
-
616
616
  // 处理文件段
617
617
  async handleFileSegment(data: any, files: AttachmentBuilder[], textContent: string): Promise<void> {
618
618
  if (data.file && await this.fileExists(data.file)) {
@@ -887,24 +887,27 @@ export class DiscordInteractionsBot extends Client implements Bot<any, DiscordIn
887
887
  $raw: JSON.stringify(interaction),
888
888
  $timestamp: Date.now(),
889
889
  $content: content,
890
- $reply: async (content: SendContent): Promise<void> => {
890
+ $reply: async (content: SendContent): Promise<string> => {
891
891
  // 通过 REST API 发送后续消息
892
- await this.sendFollowUp(interaction, content);
892
+ const res = await this.sendFollowUp(interaction, content);
893
+ return res.id;
893
894
  }
894
895
  });
895
896
  }
896
897
 
897
- private async sendFollowUp(interaction: any, content: SendContent): Promise<void> {
898
+ private async sendFollowUp(interaction: any, content: SendContent): Promise<DiscordMessage<boolean>> {
898
899
  try {
899
900
  const rest = new REST({ version: '10' }).setToken(this.$config.token);
900
901
  const messageContent = this.formatSendContent(content);
901
902
 
902
- await rest.post(
903
+ const res = await rest.post(
903
904
  `/webhooks/${this.$config.applicationId}/${interaction.token}`,
904
905
  { body: messageContent }
905
906
  );
907
+ return res as DiscordMessage<boolean>;
906
908
  } catch (error) {
907
909
  this.plugin.logger.error('Failed to send follow-up message:', error);
910
+ throw error;
908
911
  }
909
912
  }
910
913
 
@@ -1037,7 +1040,7 @@ export class DiscordInteractionsBot extends Client implements Bot<any, DiscordIn
1037
1040
  return this.formatInteractionAsMessage(msg);
1038
1041
  }
1039
1042
 
1040
- async $sendMessage(options: SendOptions): Promise<void> {
1043
+ async $sendMessage(options: SendOptions): Promise<string> {
1041
1044
  // 简化实现 - 通过 REST API 发送消息
1042
1045
  try {
1043
1046
  const rest = new REST({ version: '10' }).setToken(this.$config.token);
@@ -1050,6 +1053,10 @@ export class DiscordInteractionsBot extends Client implements Bot<any, DiscordIn
1050
1053
  } catch (error) {
1051
1054
  this.plugin.logger.error('Failed to send message:', error);
1052
1055
  }
1056
+ return ''
1057
+ }
1058
+ async $recallMessage(id:string):Promise<void> {
1059
+
1053
1060
  }
1054
1061
  }
1055
1062