@satorijs/adapter-discord 3.2.7 → 3.3.0
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/lib/bot.d.ts +14 -14
- package/lib/index.d.ts +1 -1
- package/lib/index.js +158 -179
- package/lib/index.js.map +4 -4
- package/lib/modulator.d.ts +35 -0
- package/lib/utils.d.ts +7 -7
- package/package.json +2 -2
package/lib/index.js
CHANGED
|
@@ -23,12 +23,12 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
23
23
|
));
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
25
|
|
|
26
|
-
//
|
|
26
|
+
// adapters/discord/src/index.ts
|
|
27
27
|
var src_exports = {};
|
|
28
28
|
__export(src_exports, {
|
|
29
29
|
Discord: () => types_exports,
|
|
30
30
|
DiscordBot: () => DiscordBot,
|
|
31
|
-
|
|
31
|
+
DiscordModulator: () => DiscordModulator,
|
|
32
32
|
WsClient: () => WsClient,
|
|
33
33
|
adaptAuthor: () => adaptAuthor,
|
|
34
34
|
adaptChannel: () => adaptChannel,
|
|
@@ -41,10 +41,10 @@ __export(src_exports, {
|
|
|
41
41
|
});
|
|
42
42
|
module.exports = __toCommonJS(src_exports);
|
|
43
43
|
|
|
44
|
-
//
|
|
44
|
+
// adapters/discord/src/bot.ts
|
|
45
45
|
var import_satori4 = require("@satorijs/satori");
|
|
46
46
|
|
|
47
|
-
//
|
|
47
|
+
// adapters/discord/src/utils.ts
|
|
48
48
|
var import_satori = require("@satorijs/satori");
|
|
49
49
|
var adaptUser = /* @__PURE__ */ __name((user) => ({
|
|
50
50
|
userId: user.id,
|
|
@@ -200,23 +200,13 @@ async function adaptSession(bot, input) {
|
|
|
200
200
|
}
|
|
201
201
|
__name(adaptSession, "adaptSession");
|
|
202
202
|
|
|
203
|
-
//
|
|
203
|
+
// adapters/discord/src/modulator.ts
|
|
204
204
|
var import_satori2 = require("@satorijs/satori");
|
|
205
205
|
var import_file_type = require("file-type");
|
|
206
206
|
var import_form_data = __toESM(require("form-data"));
|
|
207
|
-
var
|
|
208
|
-
constructor(
|
|
209
|
-
super(
|
|
210
|
-
this.errors = errors;
|
|
211
|
-
}
|
|
212
|
-
};
|
|
213
|
-
__name(AggregateError, "AggregateError");
|
|
214
|
-
var Sender = class {
|
|
215
|
-
constructor(bot, url) {
|
|
216
|
-
this.bot = bot;
|
|
217
|
-
this.url = url;
|
|
218
|
-
this.results = [];
|
|
219
|
-
this.errors = [];
|
|
207
|
+
var DiscordModulator = class extends import_satori2.Modulator {
|
|
208
|
+
constructor() {
|
|
209
|
+
super(...arguments);
|
|
220
210
|
this.buffer = "";
|
|
221
211
|
this.addition = {};
|
|
222
212
|
this.figure = null;
|
|
@@ -224,8 +214,11 @@ var Sender = class {
|
|
|
224
214
|
}
|
|
225
215
|
async post(data, headers) {
|
|
226
216
|
try {
|
|
227
|
-
const result = await this.bot.http.post(this.
|
|
228
|
-
this.
|
|
217
|
+
const result = await this.bot.http.post(`/channels/${this.channelId}/messages`, data, { headers });
|
|
218
|
+
const session = this.bot.session();
|
|
219
|
+
await adaptMessage(this.bot, result, session);
|
|
220
|
+
session.app.emit(session, "send", session);
|
|
221
|
+
this.results.push(session);
|
|
229
222
|
} catch (e) {
|
|
230
223
|
this.errors.push(e);
|
|
231
224
|
}
|
|
@@ -279,7 +272,7 @@ var Sender = class {
|
|
|
279
272
|
}
|
|
280
273
|
}, sendDownload);
|
|
281
274
|
}
|
|
282
|
-
async
|
|
275
|
+
async flush() {
|
|
283
276
|
const content = this.buffer.trim();
|
|
284
277
|
if (!content)
|
|
285
278
|
return;
|
|
@@ -287,97 +280,105 @@ var Sender = class {
|
|
|
287
280
|
this.buffer = "";
|
|
288
281
|
this.addition = {};
|
|
289
282
|
}
|
|
290
|
-
async
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
283
|
+
async visit(element) {
|
|
284
|
+
const { type, attrs, children } = element;
|
|
285
|
+
if (type === "text") {
|
|
286
|
+
this.buffer += attrs.content.replace(/[\\*_`~|()]/g, "\\$&");
|
|
287
|
+
} else if (type === "b" || type === "strong") {
|
|
288
|
+
this.buffer += "**";
|
|
289
|
+
await this.render(children);
|
|
290
|
+
this.buffer += "**";
|
|
291
|
+
} else if (type === "i" || type === "em") {
|
|
292
|
+
this.buffer += "*";
|
|
293
|
+
await this.render(children);
|
|
294
|
+
this.buffer += "*";
|
|
295
|
+
} else if (type === "u" || type === "ins") {
|
|
296
|
+
this.buffer += "__";
|
|
297
|
+
await this.render(children);
|
|
298
|
+
this.buffer += "__";
|
|
299
|
+
} else if (type === "s" || type === "del") {
|
|
300
|
+
this.buffer += "~~";
|
|
301
|
+
await this.render(children);
|
|
302
|
+
this.buffer += "~~";
|
|
303
|
+
} else if (type === "spl") {
|
|
304
|
+
this.buffer += "||";
|
|
305
|
+
await this.render(children);
|
|
306
|
+
this.buffer += "||";
|
|
307
|
+
} else if (type === "code") {
|
|
308
|
+
this.buffer += "`";
|
|
309
|
+
await this.render(children);
|
|
310
|
+
this.buffer += "`";
|
|
311
|
+
} else if (type === "a") {
|
|
312
|
+
await this.render(children);
|
|
313
|
+
this.buffer += ` (${attrs.href}) `;
|
|
314
|
+
} else if (type === "p") {
|
|
315
|
+
await this.render(children);
|
|
316
|
+
this.buffer += "\n";
|
|
317
|
+
} else if (type === "at") {
|
|
318
|
+
if (attrs.id) {
|
|
319
|
+
this.buffer += `<@${attrs.id}>`;
|
|
320
|
+
} else if (attrs.type === "all") {
|
|
321
|
+
this.buffer += `@everyone`;
|
|
322
|
+
} else if (attrs.type === "here") {
|
|
323
|
+
this.buffer += `@here`;
|
|
324
|
+
}
|
|
325
|
+
} else if (type === "sharp" && attrs.id) {
|
|
326
|
+
this.buffer += `<#${attrs.id}>`;
|
|
327
|
+
} else if (type === "face" && attrs.name && attrs.id) {
|
|
328
|
+
this.buffer += `<:${attrs.name}:${attrs.id}>`;
|
|
329
|
+
} else if ((type === "image" || type === "video") && attrs.url) {
|
|
330
|
+
if (this.mode === "figure") {
|
|
331
|
+
this.figure = element;
|
|
332
|
+
} else {
|
|
333
|
+
await this.sendAsset(type, attrs, {
|
|
328
334
|
...this.addition,
|
|
329
335
|
content: this.buffer.trim()
|
|
330
336
|
});
|
|
331
337
|
this.buffer = "";
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
|
|
338
|
+
}
|
|
339
|
+
} else if (type === "share") {
|
|
340
|
+
await this.flush();
|
|
341
|
+
await this.post({
|
|
342
|
+
...this.addition,
|
|
343
|
+
embeds: [{ ...attrs }]
|
|
344
|
+
});
|
|
345
|
+
} else if (type === "record") {
|
|
346
|
+
await this.sendAsset("file", attrs, {
|
|
347
|
+
...this.addition,
|
|
348
|
+
content: this.buffer.trim()
|
|
349
|
+
});
|
|
350
|
+
this.buffer = "";
|
|
351
|
+
} else if (type === "figure") {
|
|
352
|
+
await this.flush();
|
|
353
|
+
this.mode = "figure";
|
|
354
|
+
await this.render(children);
|
|
355
|
+
await this.sendAsset(this.figure.type, this.figure.attrs, {
|
|
356
|
+
...this.addition,
|
|
357
|
+
content: this.buffer.trim()
|
|
358
|
+
});
|
|
359
|
+
this.buffer = "";
|
|
360
|
+
this.mode = "default";
|
|
361
|
+
} else if (type === "quote") {
|
|
362
|
+
await this.flush();
|
|
363
|
+
this.addition.message_reference = {
|
|
364
|
+
message_id: attrs.id
|
|
365
|
+
};
|
|
366
|
+
} else if (type === "message") {
|
|
367
|
+
if (this.mode === "figure") {
|
|
335
368
|
await this.render(children);
|
|
336
|
-
|
|
337
|
-
...this.addition,
|
|
338
|
-
content: this.buffer.trim()
|
|
339
|
-
});
|
|
340
|
-
this.buffer = "";
|
|
341
|
-
this.mode = "default";
|
|
342
|
-
} else if (type === "quote") {
|
|
343
|
-
await this.sendBuffer();
|
|
344
|
-
this.addition.message_reference = {
|
|
345
|
-
message_id: attrs.id
|
|
346
|
-
};
|
|
347
|
-
} else if (type === "message") {
|
|
348
|
-
if (this.mode === "figure") {
|
|
349
|
-
await this.render(children);
|
|
350
|
-
this.buffer += "\n";
|
|
351
|
-
} else {
|
|
352
|
-
await this.sendBuffer();
|
|
353
|
-
if ("quote" in attrs) {
|
|
354
|
-
this.addition.message_reference = {
|
|
355
|
-
message_id: attrs.id
|
|
356
|
-
};
|
|
357
|
-
} else {
|
|
358
|
-
await this.sendMessage(children);
|
|
359
|
-
}
|
|
360
|
-
}
|
|
369
|
+
this.buffer += "\n";
|
|
361
370
|
} else {
|
|
362
|
-
await this.
|
|
371
|
+
await this.flush();
|
|
372
|
+
await this.render(children, true);
|
|
363
373
|
}
|
|
374
|
+
} else {
|
|
375
|
+
await this.render(children);
|
|
364
376
|
}
|
|
365
377
|
}
|
|
366
|
-
async sendMessage(elements) {
|
|
367
|
-
await this.render(elements);
|
|
368
|
-
await this.sendBuffer();
|
|
369
|
-
}
|
|
370
|
-
async send(content) {
|
|
371
|
-
const elements = import_satori2.segment.parse(content);
|
|
372
|
-
await this.sendMessage(elements);
|
|
373
|
-
if (!this.errors.length)
|
|
374
|
-
return this.results;
|
|
375
|
-
throw new AggregateError(this.errors);
|
|
376
|
-
}
|
|
377
378
|
};
|
|
378
|
-
__name(
|
|
379
|
-
((
|
|
380
|
-
|
|
379
|
+
__name(DiscordModulator, "DiscordModulator");
|
|
380
|
+
((DiscordModulator2) => {
|
|
381
|
+
DiscordModulator2.Config = import_satori2.Schema.object({
|
|
381
382
|
handleExternalAsset: import_satori2.Schema.union([
|
|
382
383
|
import_satori2.Schema.const("download").description("先下载后发送"),
|
|
383
384
|
import_satori2.Schema.const("direct").description("直接发送链接"),
|
|
@@ -389,9 +390,9 @@ __name(Sender, "Sender");
|
|
|
389
390
|
import_satori2.Schema.const("auto").description("如果图片本身采用直接发送则与前面的文本分开,否则将文本作为图片的附带信息发送")
|
|
390
391
|
]).role("radio").description("发送图文等混合内容时采用的方式。").default("auto")
|
|
391
392
|
}).description("发送设置");
|
|
392
|
-
})(
|
|
393
|
+
})(DiscordModulator || (DiscordModulator = {}));
|
|
393
394
|
|
|
394
|
-
//
|
|
395
|
+
// adapters/discord/src/types/index.ts
|
|
395
396
|
var types_exports = {};
|
|
396
397
|
__export(types_exports, {
|
|
397
398
|
ActivityFlag: () => ActivityFlag,
|
|
@@ -402,12 +403,12 @@ __export(types_exports, {
|
|
|
402
403
|
AuditLog: () => AuditLog,
|
|
403
404
|
AutoModerationAction: () => AutoModerationAction,
|
|
404
405
|
AutoModerationRule: () => AutoModerationRule,
|
|
405
|
-
Channel: () =>
|
|
406
|
+
Channel: () => Channel2,
|
|
406
407
|
ComponentType: () => ComponentType,
|
|
407
408
|
DeviceType: () => DeviceType,
|
|
408
409
|
GatewayIntent: () => GatewayIntent,
|
|
409
410
|
GatewayOpcode: () => GatewayOpcode,
|
|
410
|
-
Guild: () =>
|
|
411
|
+
Guild: () => Guild3,
|
|
411
412
|
GuildFeature: () => GuildFeature,
|
|
412
413
|
GuildScheduledEvent: () => GuildScheduledEvent,
|
|
413
414
|
IntegrationExpireBehavior: () => IntegrationExpireBehavior,
|
|
@@ -417,7 +418,7 @@ __export(types_exports, {
|
|
|
417
418
|
Internal: () => Internal,
|
|
418
419
|
Invite: () => Invite,
|
|
419
420
|
MembershipState: () => MembershipState,
|
|
420
|
-
Message: () =>
|
|
421
|
+
Message: () => Message2,
|
|
421
422
|
Permission: () => Permission,
|
|
422
423
|
StatusType: () => StatusType2,
|
|
423
424
|
Sticker: () => Sticker3,
|
|
@@ -428,7 +429,7 @@ __export(types_exports, {
|
|
|
428
429
|
Webhook: () => Webhook2
|
|
429
430
|
});
|
|
430
431
|
|
|
431
|
-
//
|
|
432
|
+
// adapters/discord/src/types/internal.ts
|
|
432
433
|
var import_cosmokit = require("cosmokit");
|
|
433
434
|
var Internal = class {
|
|
434
435
|
constructor(http) {
|
|
@@ -468,7 +469,7 @@ var Internal = class {
|
|
|
468
469
|
};
|
|
469
470
|
__name(Internal, "Internal");
|
|
470
471
|
|
|
471
|
-
//
|
|
472
|
+
// adapters/discord/src/types/application.ts
|
|
472
473
|
var ApplicationFlag = /* @__PURE__ */ ((ApplicationFlag2) => {
|
|
473
474
|
ApplicationFlag2[ApplicationFlag2["GATEWAY_PRESENCE"] = 4096] = "GATEWAY_PRESENCE";
|
|
474
475
|
ApplicationFlag2[ApplicationFlag2["GATEWAY_PRESENCE_LIMITED"] = 8192] = "GATEWAY_PRESENCE_LIMITED";
|
|
@@ -487,7 +488,7 @@ Internal.define({
|
|
|
487
488
|
}
|
|
488
489
|
});
|
|
489
490
|
|
|
490
|
-
//
|
|
491
|
+
// adapters/discord/src/types/audit-log.ts
|
|
491
492
|
var AuditLog;
|
|
492
493
|
((AuditLog2) => {
|
|
493
494
|
let Type;
|
|
@@ -554,7 +555,7 @@ Internal.define({
|
|
|
554
555
|
}
|
|
555
556
|
});
|
|
556
557
|
|
|
557
|
-
//
|
|
558
|
+
// adapters/discord/src/types/auto-moderation.ts
|
|
558
559
|
var AutoModerationRule;
|
|
559
560
|
((AutoModerationRule2) => {
|
|
560
561
|
let EventType;
|
|
@@ -596,7 +597,7 @@ Internal.define({
|
|
|
596
597
|
}
|
|
597
598
|
});
|
|
598
599
|
|
|
599
|
-
//
|
|
600
|
+
// adapters/discord/src/types/ban.ts
|
|
600
601
|
Internal.define({
|
|
601
602
|
"/guilds/{guild.id}/bans": {
|
|
602
603
|
GET: "getGuildBans"
|
|
@@ -608,9 +609,9 @@ Internal.define({
|
|
|
608
609
|
}
|
|
609
610
|
});
|
|
610
611
|
|
|
611
|
-
//
|
|
612
|
-
var
|
|
613
|
-
((
|
|
612
|
+
// adapters/discord/src/types/channel.ts
|
|
613
|
+
var Channel2;
|
|
614
|
+
((Channel10) => {
|
|
614
615
|
let Type;
|
|
615
616
|
((Type2) => {
|
|
616
617
|
Type2[Type2["GUILD_TEXT"] = 0] = "GUILD_TEXT";
|
|
@@ -626,8 +627,8 @@ var Channel3;
|
|
|
626
627
|
Type2[Type2["GUILD_STAGE_VOICE"] = 13] = "GUILD_STAGE_VOICE";
|
|
627
628
|
Type2[Type2["GUILD_DIRECTORY"] = 14] = "GUILD_DIRECTORY";
|
|
628
629
|
Type2[Type2["GUILD_FORUM"] = 15] = "GUILD_FORUM";
|
|
629
|
-
})(Type =
|
|
630
|
-
})(
|
|
630
|
+
})(Type = Channel10.Type || (Channel10.Type = {}));
|
|
631
|
+
})(Channel2 || (Channel2 = {}));
|
|
631
632
|
var AllowedMentionType = /* @__PURE__ */ ((AllowedMentionType2) => {
|
|
632
633
|
AllowedMentionType2["ROLE_MENTIONS"] = "roles";
|
|
633
634
|
AllowedMentionType2["USER_MENTIONS"] = "users";
|
|
@@ -668,7 +669,7 @@ Internal.define({
|
|
|
668
669
|
}
|
|
669
670
|
});
|
|
670
671
|
|
|
671
|
-
//
|
|
672
|
+
// adapters/discord/src/types/command.ts
|
|
672
673
|
var ApplicationCommand;
|
|
673
674
|
((ApplicationCommand3) => {
|
|
674
675
|
let Type;
|
|
@@ -727,7 +728,7 @@ Internal.define({
|
|
|
727
728
|
}
|
|
728
729
|
});
|
|
729
730
|
|
|
730
|
-
//
|
|
731
|
+
// adapters/discord/src/types/component.ts
|
|
731
732
|
var ComponentType = /* @__PURE__ */ ((ComponentType2) => {
|
|
732
733
|
ComponentType2[ComponentType2["ACTION_ROW"] = 1] = "ACTION_ROW";
|
|
733
734
|
ComponentType2[ComponentType2["BUTTON"] = 2] = "BUTTON";
|
|
@@ -741,7 +742,7 @@ var TextInputStyles = /* @__PURE__ */ ((TextInputStyles2) => {
|
|
|
741
742
|
return TextInputStyles2;
|
|
742
743
|
})(TextInputStyles || {});
|
|
743
744
|
|
|
744
|
-
//
|
|
745
|
+
// adapters/discord/src/types/device.ts
|
|
745
746
|
var DeviceType = /* @__PURE__ */ ((DeviceType2) => {
|
|
746
747
|
DeviceType2["AUDIO_INPUT"] = "audioinput";
|
|
747
748
|
DeviceType2["AUDIO_OUTPUT"] = "audiooutput";
|
|
@@ -749,7 +750,7 @@ var DeviceType = /* @__PURE__ */ ((DeviceType2) => {
|
|
|
749
750
|
return DeviceType2;
|
|
750
751
|
})(DeviceType || {});
|
|
751
752
|
|
|
752
|
-
//
|
|
753
|
+
// adapters/discord/src/types/emoji.ts
|
|
753
754
|
Internal.define({
|
|
754
755
|
"/guilds/{guild.id}/emojis": {
|
|
755
756
|
GET: "listGuildEmojis",
|
|
@@ -762,7 +763,7 @@ Internal.define({
|
|
|
762
763
|
}
|
|
763
764
|
});
|
|
764
765
|
|
|
765
|
-
//
|
|
766
|
+
// adapters/discord/src/types/gateway.ts
|
|
766
767
|
var GatewayOpcode = /* @__PURE__ */ ((GatewayOpcode2) => {
|
|
767
768
|
GatewayOpcode2[GatewayOpcode2["DISPATCH"] = 0] = "DISPATCH";
|
|
768
769
|
GatewayOpcode2[GatewayOpcode2["HEARTBEAT"] = 1] = "HEARTBEAT";
|
|
@@ -808,7 +809,7 @@ Internal.define({
|
|
|
808
809
|
}
|
|
809
810
|
});
|
|
810
811
|
|
|
811
|
-
//
|
|
812
|
+
// adapters/discord/src/types/guild-member.ts
|
|
812
813
|
Internal.define({
|
|
813
814
|
"/guilds/{guild.id}/members/{user.id}": {
|
|
814
815
|
GET: "getGuildMember",
|
|
@@ -835,7 +836,7 @@ Internal.define({
|
|
|
835
836
|
}
|
|
836
837
|
});
|
|
837
838
|
|
|
838
|
-
//
|
|
839
|
+
// adapters/discord/src/types/guild-template.ts
|
|
839
840
|
Internal.define({
|
|
840
841
|
"/guilds/templates/{template.code}": {
|
|
841
842
|
GET: "getGuildTemplate",
|
|
@@ -852,9 +853,9 @@ Internal.define({
|
|
|
852
853
|
}
|
|
853
854
|
});
|
|
854
855
|
|
|
855
|
-
//
|
|
856
|
-
var
|
|
857
|
-
((
|
|
856
|
+
// adapters/discord/src/types/guild.ts
|
|
857
|
+
var Guild3;
|
|
858
|
+
((Guild6) => {
|
|
858
859
|
let Params;
|
|
859
860
|
((Params2) => {
|
|
860
861
|
let WidgetStyleOptions;
|
|
@@ -865,8 +866,8 @@ var Guild4;
|
|
|
865
866
|
WidgetStyleOptions2["banner3"] = "banner3";
|
|
866
867
|
WidgetStyleOptions2["banner4"] = "banner4";
|
|
867
868
|
})(WidgetStyleOptions = Params2.WidgetStyleOptions || (Params2.WidgetStyleOptions = {}));
|
|
868
|
-
})(Params =
|
|
869
|
-
})(
|
|
869
|
+
})(Params = Guild6.Params || (Guild6.Params = {}));
|
|
870
|
+
})(Guild3 || (Guild3 = {}));
|
|
870
871
|
var SystemChannelFlag = /* @__PURE__ */ ((SystemChannelFlag2) => {
|
|
871
872
|
SystemChannelFlag2[SystemChannelFlag2["SUPPRESS_JOIN_NOTIFICATIONS"] = 1] = "SUPPRESS_JOIN_NOTIFICATIONS";
|
|
872
873
|
SystemChannelFlag2[SystemChannelFlag2["SUPPRESS_PREMIUM_SUBSCRIPTIONS"] = 2] = "SUPPRESS_PREMIUM_SUBSCRIPTIONS";
|
|
@@ -937,7 +938,7 @@ Internal.define({
|
|
|
937
938
|
}
|
|
938
939
|
});
|
|
939
940
|
|
|
940
|
-
//
|
|
941
|
+
// adapters/discord/src/types/integration.ts
|
|
941
942
|
var IntegrationExpireBehavior = /* @__PURE__ */ ((IntegrationExpireBehavior2) => {
|
|
942
943
|
IntegrationExpireBehavior2[IntegrationExpireBehavior2["REMOVE_ROLE"] = 0] = "REMOVE_ROLE";
|
|
943
944
|
IntegrationExpireBehavior2[IntegrationExpireBehavior2["KICK"] = 1] = "KICK";
|
|
@@ -952,7 +953,7 @@ Internal.define({
|
|
|
952
953
|
}
|
|
953
954
|
});
|
|
954
955
|
|
|
955
|
-
//
|
|
956
|
+
// adapters/discord/src/types/interaction.ts
|
|
956
957
|
var InteractionType = /* @__PURE__ */ ((InteractionType2) => {
|
|
957
958
|
InteractionType2[InteractionType2["PING"] = 1] = "PING";
|
|
958
959
|
InteractionType2[InteractionType2["APPLICATION_COMMAND"] = 2] = "APPLICATION_COMMAND";
|
|
@@ -992,7 +993,7 @@ Internal.define({
|
|
|
992
993
|
}
|
|
993
994
|
});
|
|
994
995
|
|
|
995
|
-
//
|
|
996
|
+
// adapters/discord/src/types/invite.ts
|
|
996
997
|
var Invite;
|
|
997
998
|
((Invite2) => {
|
|
998
999
|
let TargetType;
|
|
@@ -1018,9 +1019,9 @@ Internal.define({
|
|
|
1018
1019
|
}
|
|
1019
1020
|
});
|
|
1020
1021
|
|
|
1021
|
-
//
|
|
1022
|
-
var
|
|
1023
|
-
((
|
|
1022
|
+
// adapters/discord/src/types/message.ts
|
|
1023
|
+
var Message2;
|
|
1024
|
+
((Message4) => {
|
|
1024
1025
|
let Type;
|
|
1025
1026
|
((Type2) => {
|
|
1026
1027
|
Type2[Type2["DEFAULT"] = 0] = "DEFAULT";
|
|
@@ -1046,14 +1047,14 @@ var Message3;
|
|
|
1046
1047
|
Type2[Type2["THREAD_STARTER_MESSAGE"] = 21] = "THREAD_STARTER_MESSAGE";
|
|
1047
1048
|
Type2[Type2["GUILD_INVITE_REMINDER"] = 22] = "GUILD_INVITE_REMINDER";
|
|
1048
1049
|
Type2[Type2["CONTEXT_MENU_COMMAND"] = 23] = "CONTEXT_MENU_COMMAND";
|
|
1049
|
-
})(Type =
|
|
1050
|
+
})(Type = Message4.Type || (Message4.Type = {}));
|
|
1050
1051
|
let ActivityType2;
|
|
1051
1052
|
((ActivityType3) => {
|
|
1052
1053
|
ActivityType3[ActivityType3["JOIN"] = 1] = "JOIN";
|
|
1053
1054
|
ActivityType3[ActivityType3["SPECTATE"] = 2] = "SPECTATE";
|
|
1054
1055
|
ActivityType3[ActivityType3["LISTEN"] = 3] = "LISTEN";
|
|
1055
1056
|
ActivityType3[ActivityType3["JOIN_REQUEST"] = 5] = "JOIN_REQUEST";
|
|
1056
|
-
})(ActivityType2 =
|
|
1057
|
+
})(ActivityType2 = Message4.ActivityType || (Message4.ActivityType = {}));
|
|
1057
1058
|
let Flag;
|
|
1058
1059
|
((Flag2) => {
|
|
1059
1060
|
Flag2[Flag2["CROSSPOSTED"] = 1] = "CROSSPOSTED";
|
|
@@ -1064,8 +1065,8 @@ var Message3;
|
|
|
1064
1065
|
Flag2[Flag2["HAS_THREAD"] = 32] = "HAS_THREAD";
|
|
1065
1066
|
Flag2[Flag2["EPHEMERAL"] = 64] = "EPHEMERAL";
|
|
1066
1067
|
Flag2[Flag2["LOADING"] = 128] = "LOADING";
|
|
1067
|
-
})(Flag =
|
|
1068
|
-
})(
|
|
1068
|
+
})(Flag = Message4.Flag || (Message4.Flag = {}));
|
|
1069
|
+
})(Message2 || (Message2 = {}));
|
|
1069
1070
|
Internal.define({
|
|
1070
1071
|
"/channels/{channel.id}/messages": {
|
|
1071
1072
|
GET: "getChannelMessages",
|
|
@@ -1091,7 +1092,7 @@ Internal.define({
|
|
|
1091
1092
|
}
|
|
1092
1093
|
});
|
|
1093
1094
|
|
|
1094
|
-
//
|
|
1095
|
+
// adapters/discord/src/types/presence.ts
|
|
1095
1096
|
var StatusType2 = /* @__PURE__ */ ((StatusType3) => {
|
|
1096
1097
|
StatusType3["ONLINE"] = "ONLINE";
|
|
1097
1098
|
StatusType3["DND"] = "DND";
|
|
@@ -1119,7 +1120,7 @@ var ActivityFlag = /* @__PURE__ */ ((ActivityFlag2) => {
|
|
|
1119
1120
|
return ActivityFlag2;
|
|
1120
1121
|
})(ActivityFlag || {});
|
|
1121
1122
|
|
|
1122
|
-
//
|
|
1123
|
+
// adapters/discord/src/types/reaction.ts
|
|
1123
1124
|
Internal.define({
|
|
1124
1125
|
"/channels/{channel.id}/messages/{message.id}/reactions/{emoji}/@me": {
|
|
1125
1126
|
PUT: "createReaction",
|
|
@@ -1137,7 +1138,7 @@ Internal.define({
|
|
|
1137
1138
|
}
|
|
1138
1139
|
});
|
|
1139
1140
|
|
|
1140
|
-
//
|
|
1141
|
+
// adapters/discord/src/types/role.ts
|
|
1141
1142
|
var Permission = /* @__PURE__ */ ((Permission2) => {
|
|
1142
1143
|
Permission2[Permission2["CREATE_INSTANT_INVITE"] = 1] = "CREATE_INSTANT_INVITE";
|
|
1143
1144
|
Permission2[Permission2["KICK_MEMBERS"] = 2] = "KICK_MEMBERS";
|
|
@@ -1192,7 +1193,7 @@ Internal.define({
|
|
|
1192
1193
|
}
|
|
1193
1194
|
});
|
|
1194
1195
|
|
|
1195
|
-
//
|
|
1196
|
+
// adapters/discord/src/types/scheduled-event.ts
|
|
1196
1197
|
var GuildScheduledEvent;
|
|
1197
1198
|
((GuildScheduledEvent2) => {
|
|
1198
1199
|
let PrivacyLevel;
|
|
@@ -1228,7 +1229,7 @@ Internal.define({
|
|
|
1228
1229
|
}
|
|
1229
1230
|
});
|
|
1230
1231
|
|
|
1231
|
-
//
|
|
1232
|
+
// adapters/discord/src/types/stage-instance.ts
|
|
1232
1233
|
Internal.define({
|
|
1233
1234
|
"/stage-instances": {
|
|
1234
1235
|
POST: "createStageInstance"
|
|
@@ -1240,7 +1241,7 @@ Internal.define({
|
|
|
1240
1241
|
}
|
|
1241
1242
|
});
|
|
1242
1243
|
|
|
1243
|
-
//
|
|
1244
|
+
// adapters/discord/src/types/sticker.ts
|
|
1244
1245
|
var Sticker3;
|
|
1245
1246
|
((Sticker4) => {
|
|
1246
1247
|
let Type;
|
|
@@ -1273,14 +1274,14 @@ Internal.define({
|
|
|
1273
1274
|
}
|
|
1274
1275
|
});
|
|
1275
1276
|
|
|
1276
|
-
//
|
|
1277
|
+
// adapters/discord/src/types/team.ts
|
|
1277
1278
|
var MembershipState = /* @__PURE__ */ ((MembershipState2) => {
|
|
1278
1279
|
MembershipState2[MembershipState2["INVITED"] = 1] = "INVITED";
|
|
1279
1280
|
MembershipState2[MembershipState2["ACCEPTED"] = 2] = "ACCEPTED";
|
|
1280
1281
|
return MembershipState2;
|
|
1281
1282
|
})(MembershipState || {});
|
|
1282
1283
|
|
|
1283
|
-
//
|
|
1284
|
+
// adapters/discord/src/types/thread.ts
|
|
1284
1285
|
Internal.define({
|
|
1285
1286
|
"/guilds/{guild.id}/threads/active": {
|
|
1286
1287
|
GET: "listActiveGuildThreads"
|
|
@@ -1317,7 +1318,7 @@ Internal.define({
|
|
|
1317
1318
|
}
|
|
1318
1319
|
});
|
|
1319
1320
|
|
|
1320
|
-
//
|
|
1321
|
+
// adapters/discord/src/types/user.ts
|
|
1321
1322
|
var UserFlag = /* @__PURE__ */ ((UserFlag2) => {
|
|
1322
1323
|
UserFlag2[UserFlag2["NONE"] = 0] = "NONE";
|
|
1323
1324
|
UserFlag2[UserFlag2["DISCORD_EMPLOYEE"] = 1] = "DISCORD_EMPLOYEE";
|
|
@@ -1353,7 +1354,7 @@ Internal.define({
|
|
|
1353
1354
|
}
|
|
1354
1355
|
});
|
|
1355
1356
|
|
|
1356
|
-
//
|
|
1357
|
+
// adapters/discord/src/types/voice.ts
|
|
1357
1358
|
Internal.define({
|
|
1358
1359
|
"/voice/regions": {
|
|
1359
1360
|
GET: "listVoiceRegions"
|
|
@@ -1369,7 +1370,7 @@ Internal.define({
|
|
|
1369
1370
|
}
|
|
1370
1371
|
});
|
|
1371
1372
|
|
|
1372
|
-
//
|
|
1373
|
+
// adapters/discord/src/types/webhook.ts
|
|
1373
1374
|
var Webhook2;
|
|
1374
1375
|
((Webhook3) => {
|
|
1375
1376
|
let Type;
|
|
@@ -1411,7 +1412,7 @@ Internal.define({
|
|
|
1411
1412
|
}
|
|
1412
1413
|
});
|
|
1413
1414
|
|
|
1414
|
-
//
|
|
1415
|
+
// adapters/discord/src/ws.ts
|
|
1415
1416
|
var import_satori3 = require("@satorijs/satori");
|
|
1416
1417
|
var logger = new import_satori3.Logger("discord");
|
|
1417
1418
|
var WsClient = class extends import_satori3.Adapter.WsClient {
|
|
@@ -1499,7 +1500,7 @@ __name(WsClient, "WsClient");
|
|
|
1499
1500
|
]);
|
|
1500
1501
|
})(WsClient || (WsClient = {}));
|
|
1501
1502
|
|
|
1502
|
-
//
|
|
1503
|
+
// adapters/discord/src/bot.ts
|
|
1503
1504
|
var DiscordBot = class extends import_satori4.Bot {
|
|
1504
1505
|
constructor(ctx, config) {
|
|
1505
1506
|
super(ctx, config);
|
|
@@ -1518,32 +1519,10 @@ var DiscordBot = class extends import_satori4.Bot {
|
|
|
1518
1519
|
return adaptUser(data);
|
|
1519
1520
|
}
|
|
1520
1521
|
async sendMessage(channelId, content, guildId) {
|
|
1521
|
-
|
|
1522
|
-
const elements = fragment.children;
|
|
1523
|
-
content = fragment.toString();
|
|
1524
|
-
const session = this.session({
|
|
1525
|
-
type: "send",
|
|
1526
|
-
author: this,
|
|
1527
|
-
channelId,
|
|
1528
|
-
elements,
|
|
1529
|
-
content,
|
|
1530
|
-
guildId,
|
|
1531
|
-
subtype: guildId ? "group" : "private"
|
|
1532
|
-
});
|
|
1533
|
-
if (await this.context.serial(session, "before-send", session))
|
|
1534
|
-
return;
|
|
1535
|
-
if (!session.content)
|
|
1536
|
-
return [];
|
|
1537
|
-
const sender = new Sender(this, `/channels/${channelId}/messages`);
|
|
1538
|
-
const results = await sender.send(session.content);
|
|
1539
|
-
for (const id of results) {
|
|
1540
|
-
session.messageId = id;
|
|
1541
|
-
this.context.emit(session, "send", session);
|
|
1542
|
-
}
|
|
1543
|
-
return results;
|
|
1522
|
+
return new DiscordModulator(this, channelId, guildId).send(content);
|
|
1544
1523
|
}
|
|
1545
1524
|
async sendPrivateMessage(channelId, content) {
|
|
1546
|
-
return this.
|
|
1525
|
+
return new DiscordModulator(this, channelId).send(content);
|
|
1547
1526
|
}
|
|
1548
1527
|
async deleteMessage(channelId, messageId) {
|
|
1549
1528
|
await this.internal.deleteMessage(channelId, messageId);
|
|
@@ -1610,19 +1589,19 @@ __name(DiscordBot, "DiscordBot");
|
|
|
1610
1589
|
token: import_satori4.Schema.string().description("机器人的用户令牌。").role("secret").required()
|
|
1611
1590
|
}),
|
|
1612
1591
|
WsClient.Config,
|
|
1613
|
-
|
|
1592
|
+
DiscordModulator.Config,
|
|
1614
1593
|
import_satori4.Quester.createConfig("https://discord.com/api/v10")
|
|
1615
1594
|
]);
|
|
1616
1595
|
})(DiscordBot || (DiscordBot = {}));
|
|
1617
1596
|
DiscordBot.prototype.platform = "discord";
|
|
1618
1597
|
|
|
1619
|
-
//
|
|
1598
|
+
// adapters/discord/src/index.ts
|
|
1620
1599
|
var src_default = DiscordBot;
|
|
1621
1600
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1622
1601
|
0 && (module.exports = {
|
|
1623
1602
|
Discord,
|
|
1624
1603
|
DiscordBot,
|
|
1625
|
-
|
|
1604
|
+
DiscordModulator,
|
|
1626
1605
|
WsClient,
|
|
1627
1606
|
adaptAuthor,
|
|
1628
1607
|
adaptChannel,
|