@discordeno/bot 19.0.0-next.f15ef49 → 19.0.0-next.f1f4322
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/dist/bot.d.ts +64 -64
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +4 -4
- package/dist/bot.js.map +1 -1
- package/package.json +15 -15
package/dist/bot.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { CreateGatewayManagerOptions, GatewayManager
|
|
1
|
+
import type { CreateGatewayManagerOptions, GatewayManager } from '@discordeno/gateway';
|
|
2
2
|
import type { CreateRestManagerOptions, RestManager } from '@discordeno/rest';
|
|
3
|
-
import type { Camelize, DiscordAuditLogEntry, DiscordAutoModerationActionExecution, DiscordAutoModerationRule, DiscordChannel, DiscordChannelPinsUpdate, DiscordGatewayPayload, DiscordGuild, DiscordGuildApplicationCommandPermissions, DiscordGuildBanAddRemove, DiscordGuildEmojisUpdate, DiscordGuildMemberAdd, DiscordGuildMemberRemove,
|
|
3
|
+
import type { Camelize, DiscordAuditLogEntry, DiscordAutoModerationActionExecution, DiscordAutoModerationRule, DiscordChannel, DiscordChannelPinsUpdate, DiscordGatewayPayload, DiscordGuild, DiscordGuildApplicationCommandPermissions, DiscordGuildBanAddRemove, DiscordGuildEmojisUpdate, DiscordGuildMemberAdd, DiscordGuildMemberRemove, DiscordGuildMemberUpdate, DiscordGuildMembersChunk, DiscordGuildRoleCreate, DiscordGuildRoleDelete, DiscordGuildRoleUpdate, DiscordGuildStickersUpdate, DiscordIntegrationCreateUpdate, DiscordIntegrationDelete, DiscordInteraction, DiscordInviteCreate, DiscordInviteDelete, DiscordMessage, DiscordMessageDelete, DiscordMessageDeleteBulk, DiscordMessageReactionAdd, DiscordMessageReactionRemove, DiscordMessageReactionRemoveAll, DiscordMessageReactionRemoveEmoji, DiscordPresenceUpdate, DiscordReady, DiscordScheduledEvent, DiscordScheduledEventUserAdd, DiscordScheduledEventUserRemove, DiscordStageInstance, DiscordThreadListSync, DiscordThreadMemberUpdate, DiscordThreadMembersUpdate, DiscordTypingStart, DiscordUnavailableGuild, DiscordUser, DiscordVoiceServerUpdate, DiscordVoiceState, DiscordWebhookUpdate, GatewayIntents } from '@discordeno/types';
|
|
4
4
|
import { createLogger } from '@discordeno/utils';
|
|
5
5
|
/**
|
|
6
6
|
* Create a bot object that will maintain the rest and gateway connection.
|
|
@@ -36,67 +36,67 @@ export interface Bot {
|
|
|
36
36
|
shutdown: () => Promise<void>;
|
|
37
37
|
}
|
|
38
38
|
export interface EventHandlers {
|
|
39
|
-
dispatchRequirements: (payload: Camelize<DiscordGatewayPayload>,
|
|
40
|
-
raw: (payload: Camelize<DiscordGatewayPayload>,
|
|
41
|
-
applicationCommandPermissionsUpdate: (payload: Camelize<DiscordGuildApplicationCommandPermissions>,
|
|
42
|
-
auditLogEntryCreate: (payload: Camelize<DiscordAuditLogEntry>,
|
|
43
|
-
autoModerationRuleCreate: (payload: Camelize<DiscordAutoModerationRule>,
|
|
44
|
-
autoModerationRuleUpdate: (payload: Camelize<DiscordAutoModerationRule>,
|
|
45
|
-
autoModerationRuleDelete: (payload: Camelize<DiscordAutoModerationRule>,
|
|
46
|
-
autoModerationActionExecution: (payload: Camelize<DiscordAutoModerationActionExecution>,
|
|
47
|
-
channelCreate: (payload: Camelize<DiscordChannel>,
|
|
48
|
-
channelUpdate: (payload: Camelize<DiscordChannel>,
|
|
49
|
-
channelDelete: (payload: Camelize<DiscordChannel>,
|
|
50
|
-
channelPinsUpdate: (payload: Camelize<DiscordChannelPinsUpdate>,
|
|
51
|
-
threadCreate: (payload: Camelize<DiscordChannel>,
|
|
52
|
-
threadUpdate: (payload: Camelize<DiscordChannel>,
|
|
53
|
-
threadDelete: (payload: Camelize<DiscordChannel>,
|
|
54
|
-
threadListSync: (payload: Camelize<DiscordThreadListSync>,
|
|
55
|
-
threadMemberUpdate: (payload: Camelize<DiscordThreadMemberUpdate>,
|
|
56
|
-
threadMembersUpdate: (payload: Camelize<DiscordThreadMembersUpdate>,
|
|
57
|
-
guildCreate: (payload: Camelize<DiscordGuild>,
|
|
58
|
-
guildUpdate: (payload: Camelize<DiscordGuild>,
|
|
59
|
-
guildDelete: (payload: Camelize<DiscordUnavailableGuild>,
|
|
60
|
-
guildBanAdd: (payload: Camelize<DiscordGuildBanAddRemove>,
|
|
61
|
-
guildBanRemove: (payload: Camelize<DiscordGuildBanAddRemove>,
|
|
62
|
-
guildEmojisUpdate: (payload: Camelize<DiscordGuildEmojisUpdate>,
|
|
63
|
-
guildStickersUpdate: (payload: Camelize<DiscordGuildStickersUpdate>,
|
|
64
|
-
guildIntegrationsUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>,
|
|
65
|
-
guildMemberAdd: (payload: Camelize<DiscordGuildMemberAdd>,
|
|
66
|
-
guildMemberRemove: (payload: Camelize<DiscordGuildMemberRemove>,
|
|
67
|
-
guildMemberUpdate: (payload: Camelize<DiscordGuildMemberUpdate>,
|
|
68
|
-
guildMembersChunk: (payload: Camelize<DiscordGuildMembersChunk>,
|
|
69
|
-
guildRoleCreate: (payload: Camelize<DiscordGuildRoleCreate>,
|
|
70
|
-
guildRoleUpdate: (payload: Camelize<DiscordGuildRoleUpdate>,
|
|
71
|
-
guildRoleDelete: (payload: Camelize<DiscordGuildRoleDelete>,
|
|
72
|
-
guildScheduledEventCreate: (payload: Camelize<DiscordScheduledEvent>,
|
|
73
|
-
guildScheduledEventUpdate: (payload: Camelize<DiscordScheduledEvent>,
|
|
74
|
-
guildScheduledEventDelete: (payload: Camelize<DiscordScheduledEvent>,
|
|
75
|
-
guildScheduledEventUserAdd: (payload: Camelize<DiscordScheduledEventUserAdd>,
|
|
76
|
-
guildScheduledEventUserRemove: (payload: Camelize<DiscordScheduledEventUserRemove>,
|
|
77
|
-
integrationCreate: (payload: Camelize<DiscordIntegrationCreateUpdate>,
|
|
78
|
-
integrationUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>,
|
|
79
|
-
integrationDelete: (payload: Camelize<DiscordIntegrationDelete>,
|
|
80
|
-
interactionCreate: (payload: Camelize<DiscordInteraction>,
|
|
81
|
-
inviteCreate: (payload: Camelize<DiscordInviteCreate>,
|
|
82
|
-
inviteDelete: (payload: Camelize<DiscordInviteDelete>,
|
|
83
|
-
messageCreate: (payload: Camelize<DiscordMessage>,
|
|
84
|
-
messageUpdate: (payload: Camelize<DiscordMessage>,
|
|
85
|
-
messageDelete: (payload: Camelize<DiscordMessageDelete>,
|
|
86
|
-
messageDeleteBulk: (payload: Camelize<DiscordMessageDeleteBulk>,
|
|
87
|
-
messageReactionAdd: (payload: Camelize<DiscordMessageReactionAdd>,
|
|
88
|
-
messageReactionRemove: (payload: Camelize<DiscordMessageReactionRemove>,
|
|
89
|
-
messageReactionRemoveAll: (payload: Camelize<DiscordMessageReactionRemoveAll>,
|
|
90
|
-
messageReactionRemoveEmoji: (payload: Camelize<DiscordMessageReactionRemoveEmoji>,
|
|
91
|
-
presenceUpdate: (payload: Camelize<DiscordPresenceUpdate>,
|
|
92
|
-
ready: (payload: Camelize<DiscordReady>,
|
|
93
|
-
stageInstanceCreate: (payload: Camelize<DiscordStageInstance>,
|
|
94
|
-
stageInstanceUpdate: (payload: Camelize<DiscordStageInstance>,
|
|
95
|
-
stageInstanceDelete: (payload: Camelize<DiscordStageInstance>,
|
|
96
|
-
typingStart: (payload: Camelize<DiscordTypingStart>,
|
|
97
|
-
userUpdate: (payload: Camelize<DiscordUser>,
|
|
98
|
-
voiceStateUpdate: (payload: Camelize<DiscordVoiceState>,
|
|
99
|
-
voiceServerUpdate: (payload: Camelize<DiscordVoiceServerUpdate>,
|
|
100
|
-
webhooksUpdate: (payload: Camelize<DiscordWebhookUpdate>,
|
|
39
|
+
dispatchRequirements: (payload: Camelize<DiscordGatewayPayload>, shardId: number) => unknown;
|
|
40
|
+
raw: (payload: Camelize<DiscordGatewayPayload>, shardId: number) => unknown;
|
|
41
|
+
applicationCommandPermissionsUpdate: (payload: Camelize<DiscordGuildApplicationCommandPermissions>, shardId: number) => unknown;
|
|
42
|
+
auditLogEntryCreate: (payload: Camelize<DiscordAuditLogEntry>, shardId: number) => unknown;
|
|
43
|
+
autoModerationRuleCreate: (payload: Camelize<DiscordAutoModerationRule>, shardId: number) => unknown;
|
|
44
|
+
autoModerationRuleUpdate: (payload: Camelize<DiscordAutoModerationRule>, shardId: number) => unknown;
|
|
45
|
+
autoModerationRuleDelete: (payload: Camelize<DiscordAutoModerationRule>, shardId: number) => unknown;
|
|
46
|
+
autoModerationActionExecution: (payload: Camelize<DiscordAutoModerationActionExecution>, shardId: number) => unknown;
|
|
47
|
+
channelCreate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown;
|
|
48
|
+
channelUpdate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown;
|
|
49
|
+
channelDelete: (payload: Camelize<DiscordChannel>, shardId: number) => unknown;
|
|
50
|
+
channelPinsUpdate: (payload: Camelize<DiscordChannelPinsUpdate>, shardId: number) => unknown;
|
|
51
|
+
threadCreate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown;
|
|
52
|
+
threadUpdate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown;
|
|
53
|
+
threadDelete: (payload: Camelize<DiscordChannel>, shardId: number) => unknown;
|
|
54
|
+
threadListSync: (payload: Camelize<DiscordThreadListSync>, shardId: number) => unknown;
|
|
55
|
+
threadMemberUpdate: (payload: Camelize<DiscordThreadMemberUpdate>, shardId: number) => unknown;
|
|
56
|
+
threadMembersUpdate: (payload: Camelize<DiscordThreadMembersUpdate>, shardId: number) => unknown;
|
|
57
|
+
guildCreate: (payload: Camelize<DiscordGuild>, shardId: number) => unknown;
|
|
58
|
+
guildUpdate: (payload: Camelize<DiscordGuild>, shardId: number) => unknown;
|
|
59
|
+
guildDelete: (payload: Camelize<DiscordUnavailableGuild>, shardId: number) => unknown;
|
|
60
|
+
guildBanAdd: (payload: Camelize<DiscordGuildBanAddRemove>, shardId: number) => unknown;
|
|
61
|
+
guildBanRemove: (payload: Camelize<DiscordGuildBanAddRemove>, shardId: number) => unknown;
|
|
62
|
+
guildEmojisUpdate: (payload: Camelize<DiscordGuildEmojisUpdate>, shardId: number) => unknown;
|
|
63
|
+
guildStickersUpdate: (payload: Camelize<DiscordGuildStickersUpdate>, shardId: number) => unknown;
|
|
64
|
+
guildIntegrationsUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shardId: number) => unknown;
|
|
65
|
+
guildMemberAdd: (payload: Camelize<DiscordGuildMemberAdd>, shardId: number) => unknown;
|
|
66
|
+
guildMemberRemove: (payload: Camelize<DiscordGuildMemberRemove>, shardId: number) => unknown;
|
|
67
|
+
guildMemberUpdate: (payload: Camelize<DiscordGuildMemberUpdate>, shardId: number) => unknown;
|
|
68
|
+
guildMembersChunk: (payload: Camelize<DiscordGuildMembersChunk>, shardId: number) => unknown;
|
|
69
|
+
guildRoleCreate: (payload: Camelize<DiscordGuildRoleCreate>, shardId: number) => unknown;
|
|
70
|
+
guildRoleUpdate: (payload: Camelize<DiscordGuildRoleUpdate>, shardId: number) => unknown;
|
|
71
|
+
guildRoleDelete: (payload: Camelize<DiscordGuildRoleDelete>, shardId: number) => unknown;
|
|
72
|
+
guildScheduledEventCreate: (payload: Camelize<DiscordScheduledEvent>, shardId: number) => unknown;
|
|
73
|
+
guildScheduledEventUpdate: (payload: Camelize<DiscordScheduledEvent>, shardId: number) => unknown;
|
|
74
|
+
guildScheduledEventDelete: (payload: Camelize<DiscordScheduledEvent>, shardId: number) => unknown;
|
|
75
|
+
guildScheduledEventUserAdd: (payload: Camelize<DiscordScheduledEventUserAdd>, shardId: number) => unknown;
|
|
76
|
+
guildScheduledEventUserRemove: (payload: Camelize<DiscordScheduledEventUserRemove>, shardId: number) => unknown;
|
|
77
|
+
integrationCreate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shardId: number) => unknown;
|
|
78
|
+
integrationUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shardId: number) => unknown;
|
|
79
|
+
integrationDelete: (payload: Camelize<DiscordIntegrationDelete>, shardId: number) => unknown;
|
|
80
|
+
interactionCreate: (payload: Camelize<DiscordInteraction>, shardId: number) => unknown;
|
|
81
|
+
inviteCreate: (payload: Camelize<DiscordInviteCreate>, shardId: number) => unknown;
|
|
82
|
+
inviteDelete: (payload: Camelize<DiscordInviteDelete>, shardId: number) => unknown;
|
|
83
|
+
messageCreate: (payload: Camelize<DiscordMessage>, shardId: number) => unknown;
|
|
84
|
+
messageUpdate: (payload: Camelize<DiscordMessage>, shardId: number) => unknown;
|
|
85
|
+
messageDelete: (payload: Camelize<DiscordMessageDelete>, shardId: number) => unknown;
|
|
86
|
+
messageDeleteBulk: (payload: Camelize<DiscordMessageDeleteBulk>, shardId: number) => unknown;
|
|
87
|
+
messageReactionAdd: (payload: Camelize<DiscordMessageReactionAdd>, shardId: number) => unknown;
|
|
88
|
+
messageReactionRemove: (payload: Camelize<DiscordMessageReactionRemove>, shardId: number) => unknown;
|
|
89
|
+
messageReactionRemoveAll: (payload: Camelize<DiscordMessageReactionRemoveAll>, shardId: number) => unknown;
|
|
90
|
+
messageReactionRemoveEmoji: (payload: Camelize<DiscordMessageReactionRemoveEmoji>, shardId: number) => unknown;
|
|
91
|
+
presenceUpdate: (payload: Camelize<DiscordPresenceUpdate>, shardId: number) => unknown;
|
|
92
|
+
ready: (payload: Camelize<DiscordReady>, shardId: number) => unknown;
|
|
93
|
+
stageInstanceCreate: (payload: Camelize<DiscordStageInstance>, shardId: number) => unknown;
|
|
94
|
+
stageInstanceUpdate: (payload: Camelize<DiscordStageInstance>, shardId: number) => unknown;
|
|
95
|
+
stageInstanceDelete: (payload: Camelize<DiscordStageInstance>, shardId: number) => unknown;
|
|
96
|
+
typingStart: (payload: Camelize<DiscordTypingStart>, shardId: number) => unknown;
|
|
97
|
+
userUpdate: (payload: Camelize<DiscordUser>, shardId: number) => unknown;
|
|
98
|
+
voiceStateUpdate: (payload: Camelize<DiscordVoiceState>, shardId: number) => unknown;
|
|
99
|
+
voiceServerUpdate: (payload: Camelize<DiscordVoiceServerUpdate>, shardId: number) => unknown;
|
|
100
|
+
webhooksUpdate: (payload: Camelize<DiscordWebhookUpdate>, shardId: number) => unknown;
|
|
101
101
|
}
|
|
102
102
|
//# sourceMappingURL=bot.d.ts.map
|
package/dist/bot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
|
package/dist/bot.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ShardSocketCloseCodes, createGatewayManager } from '@discordeno/gateway';
|
|
2
2
|
import { createRestManager } from '@discordeno/rest';
|
|
3
3
|
import { createLogger } from '@discordeno/utils';
|
|
4
4
|
/**
|
|
@@ -17,13 +17,13 @@ import { createLogger } from '@discordeno/utils';
|
|
|
17
17
|
if (!options.gateway.events.message) {
|
|
18
18
|
options.gateway.events.message = async (shard, data)=>{
|
|
19
19
|
// TRIGGER RAW EVENT
|
|
20
|
-
bot.events.raw?.(data, shard);
|
|
20
|
+
bot.events.raw?.(data, shard.id);
|
|
21
21
|
if (!data.t) return;
|
|
22
22
|
// RUN DISPATCH CHECK
|
|
23
|
-
await bot.events.dispatchRequirements?.(data, shard);
|
|
23
|
+
await bot.events.dispatchRequirements?.(data, shard.id);
|
|
24
24
|
bot.events[data.t.toLowerCase().replace(/_([a-z])/g, function(g) {
|
|
25
25
|
return g[1].toUpperCase();
|
|
26
|
-
})]?.(data.d, shard);
|
|
26
|
+
})]?.(data.d, shard.id);
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
29
|
options.rest.token = options.token;
|
package/dist/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bot.ts"],"sourcesContent":["import type { CreateGatewayManagerOptions, GatewayManager, DiscordenoShard } from '@discordeno/gateway'\nimport { createGatewayManager, ShardSocketCloseCodes } from '@discordeno/gateway'\nimport type { CreateRestManagerOptions, RestManager } from '@discordeno/rest'\nimport { createRestManager } from '@discordeno/rest'\nimport type {\n Camelize,\n DiscordAuditLogEntry,\n DiscordAutoModerationActionExecution,\n DiscordAutoModerationRule,\n DiscordChannel,\n DiscordChannelPinsUpdate,\n DiscordGatewayPayload,\n DiscordGuild,\n DiscordGuildApplicationCommandPermissions,\n DiscordGuildBanAddRemove,\n DiscordGuildEmojisUpdate,\n DiscordGuildMemberAdd,\n DiscordGuildMemberRemove,\n DiscordGuildMembersChunk,\n DiscordGuildMemberUpdate,\n DiscordGuildRoleCreate,\n DiscordGuildRoleDelete,\n DiscordGuildRoleUpdate,\n DiscordGuildStickersUpdate,\n DiscordIntegrationCreateUpdate,\n DiscordIntegrationDelete,\n DiscordInteraction,\n DiscordInviteCreate,\n DiscordInviteDelete,\n DiscordMessage,\n DiscordMessageDelete,\n DiscordMessageDeleteBulk,\n DiscordMessageReactionAdd,\n DiscordMessageReactionRemove,\n DiscordMessageReactionRemoveAll,\n DiscordMessageReactionRemoveEmoji,\n DiscordPresenceUpdate,\n DiscordReady,\n DiscordScheduledEvent,\n DiscordScheduledEventUserAdd,\n DiscordScheduledEventUserRemove,\n DiscordStageInstance,\n DiscordThreadListSync,\n DiscordThreadMembersUpdate,\n DiscordThreadMemberUpdate,\n DiscordTypingStart,\n DiscordUnavailableGuild,\n DiscordUser,\n DiscordVoiceServerUpdate,\n DiscordVoiceState,\n DiscordWebhookUpdate,\n GatewayIntents,\n} from '@discordeno/types'\nimport { createLogger } from '@discordeno/utils'\n\n/**\n * Create a bot object that will maintain the rest and gateway connection.\n *\n * @param options Configurations options used to manage this bot.\n * @returns Bot\n */\nexport function createBot(options: CreateBotOptions): Bot {\n if (!options.rest) options.rest = { token: options.token }\n if (!options.gateway) options.gateway = { token: options.token, events: {} }\n if (!options.gateway.events.message) {\n options.gateway.events.message = async (shard, data) => {\n // TRIGGER RAW EVENT\n bot.events.raw?.(data, shard)\n\n if (!data.t) return\n\n // RUN DISPATCH CHECK\n await bot.events.dispatchRequirements?.(data, shard)\n bot.events[\n data.t.toLowerCase().replace(/_([a-z])/g, function (g) {\n return g[1].toUpperCase()\n }) as keyof EventHandlers\n // @ts-expect-error as any gets removed by linter\n ]?.(data.d, shard)\n }\n }\n\n options.rest.token = options.token\n options.gateway.intents = options.intents\n\n const bot: Bot = {\n rest: createRestManager(options.rest),\n gateway: createGatewayManager(options.gateway),\n events: options.events ?? {},\n logger: createLogger({ name: 'BOT' }),\n\n async start() {\n if (!options.gateway?.connection) {\n bot.gateway.connection = await bot.rest.getSessionInfo()\n }\n return await bot.gateway.spawnShards()\n },\n\n async shutdown() {\n return await bot.gateway.shutdown(ShardSocketCloseCodes.Shutdown, 'User requested bot stop')\n },\n }\n\n return bot\n}\n\nexport interface CreateBotOptions {\n /** The bot's token. */\n token: string\n /** The bot's intents that will be used to make a connection with discords gateway. */\n intents?: GatewayIntents\n /** Any options you wish to provide to the rest manager. */\n rest?: CreateRestManagerOptions\n /** Any options you wish to provide to the gateway manager. */\n gateway?: CreateGatewayManagerOptions\n /** The event handlers. */\n events: Partial<EventHandlers>\n}\n\nexport interface Bot {\n /** The rest manager. */\n rest: RestManager\n /** The gateway manager. */\n gateway: GatewayManager\n /** The event handlers. */\n events: Partial<EventHandlers>\n /** A logger utility to make it easy to log nice and useful things in the bot code. */\n logger: ReturnType<typeof createLogger>\n /** Start the bot connection to the gateway. */\n start: () => Promise<void>\n /** Shuts down all the bot connections to the gateway. */\n shutdown: () => Promise<void>\n}\n\nexport interface EventHandlers {\n // Custom events here\n dispatchRequirements: (payload: Camelize<DiscordGatewayPayload>, shard: DiscordenoShard) => unknown\n raw: (payload: Camelize<DiscordGatewayPayload>, shard: DiscordenoShard) => unknown\n\n // Gateway events below this\n applicationCommandPermissionsUpdate: (payload: Camelize<DiscordGuildApplicationCommandPermissions>, shard: DiscordenoShard) => unknown\n auditLogEntryCreate: (payload: Camelize<DiscordAuditLogEntry>, shard: DiscordenoShard) => unknown\n autoModerationRuleCreate: (payload: Camelize<DiscordAutoModerationRule>, shard: DiscordenoShard) => unknown\n autoModerationRuleUpdate: (payload: Camelize<DiscordAutoModerationRule>, shard: DiscordenoShard) => unknown\n autoModerationRuleDelete: (payload: Camelize<DiscordAutoModerationRule>, shard: DiscordenoShard) => unknown\n autoModerationActionExecution: (payload: Camelize<DiscordAutoModerationActionExecution>, shard: DiscordenoShard) => unknown\n channelCreate: (payload: Camelize<DiscordChannel>, shard: DiscordenoShard) => unknown\n channelUpdate: (payload: Camelize<DiscordChannel>, shard: DiscordenoShard) => unknown\n channelDelete: (payload: Camelize<DiscordChannel>, shard: DiscordenoShard) => unknown\n channelPinsUpdate: (payload: Camelize<DiscordChannelPinsUpdate>, shard: DiscordenoShard) => unknown\n threadCreate: (payload: Camelize<DiscordChannel>, shard: DiscordenoShard) => unknown\n threadUpdate: (payload: Camelize<DiscordChannel>, shard: DiscordenoShard) => unknown\n threadDelete: (payload: Camelize<DiscordChannel>, shard: DiscordenoShard) => unknown\n threadListSync: (payload: Camelize<DiscordThreadListSync>, shard: DiscordenoShard) => unknown\n threadMemberUpdate: (payload: Camelize<DiscordThreadMemberUpdate>, shard: DiscordenoShard) => unknown\n threadMembersUpdate: (payload: Camelize<DiscordThreadMembersUpdate>, shard: DiscordenoShard) => unknown\n guildCreate: (payload: Camelize<DiscordGuild>, shard: DiscordenoShard) => unknown\n guildUpdate: (payload: Camelize<DiscordGuild>, shard: DiscordenoShard) => unknown\n guildDelete: (payload: Camelize<DiscordUnavailableGuild>, shard: DiscordenoShard) => unknown\n guildBanAdd: (payload: Camelize<DiscordGuildBanAddRemove>, shard: DiscordenoShard) => unknown\n guildBanRemove: (payload: Camelize<DiscordGuildBanAddRemove>, shard: DiscordenoShard) => unknown\n guildEmojisUpdate: (payload: Camelize<DiscordGuildEmojisUpdate>, shard: DiscordenoShard) => unknown\n guildStickersUpdate: (payload: Camelize<DiscordGuildStickersUpdate>, shard: DiscordenoShard) => unknown\n guildIntegrationsUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shard: DiscordenoShard) => unknown\n guildMemberAdd: (payload: Camelize<DiscordGuildMemberAdd>, shard: DiscordenoShard) => unknown\n guildMemberRemove: (payload: Camelize<DiscordGuildMemberRemove>, shard: DiscordenoShard) => unknown\n guildMemberUpdate: (payload: Camelize<DiscordGuildMemberUpdate>, shard: DiscordenoShard) => unknown\n guildMembersChunk: (payload: Camelize<DiscordGuildMembersChunk>, shard: DiscordenoShard) => unknown\n guildRoleCreate: (payload: Camelize<DiscordGuildRoleCreate>, shard: DiscordenoShard) => unknown\n guildRoleUpdate: (payload: Camelize<DiscordGuildRoleUpdate>, shard: DiscordenoShard) => unknown\n guildRoleDelete: (payload: Camelize<DiscordGuildRoleDelete>, shard: DiscordenoShard) => unknown\n guildScheduledEventCreate: (payload: Camelize<DiscordScheduledEvent>, shard: DiscordenoShard) => unknown\n guildScheduledEventUpdate: (payload: Camelize<DiscordScheduledEvent>, shard: DiscordenoShard) => unknown\n guildScheduledEventDelete: (payload: Camelize<DiscordScheduledEvent>, shard: DiscordenoShard) => unknown\n guildScheduledEventUserAdd: (payload: Camelize<DiscordScheduledEventUserAdd>, shard: DiscordenoShard) => unknown\n guildScheduledEventUserRemove: (payload: Camelize<DiscordScheduledEventUserRemove>, shard: DiscordenoShard) => unknown\n integrationCreate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shard: DiscordenoShard) => unknown\n integrationUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shard: DiscordenoShard) => unknown\n integrationDelete: (payload: Camelize<DiscordIntegrationDelete>, shard: DiscordenoShard) => unknown\n interactionCreate: (payload: Camelize<DiscordInteraction>, shard: DiscordenoShard) => unknown\n inviteCreate: (payload: Camelize<DiscordInviteCreate>, shard: DiscordenoShard) => unknown\n inviteDelete: (payload: Camelize<DiscordInviteDelete>, shard: DiscordenoShard) => unknown\n messageCreate: (payload: Camelize<DiscordMessage>, shard: DiscordenoShard) => unknown\n messageUpdate: (payload: Camelize<DiscordMessage>, shard: DiscordenoShard) => unknown\n messageDelete: (payload: Camelize<DiscordMessageDelete>, shard: DiscordenoShard) => unknown\n messageDeleteBulk: (payload: Camelize<DiscordMessageDeleteBulk>, shard: DiscordenoShard) => unknown\n messageReactionAdd: (payload: Camelize<DiscordMessageReactionAdd>, shard: DiscordenoShard) => unknown\n messageReactionRemove: (payload: Camelize<DiscordMessageReactionRemove>, shard: DiscordenoShard) => unknown\n messageReactionRemoveAll: (payload: Camelize<DiscordMessageReactionRemoveAll>, shard: DiscordenoShard) => unknown\n messageReactionRemoveEmoji: (payload: Camelize<DiscordMessageReactionRemoveEmoji>, shard: DiscordenoShard) => unknown\n presenceUpdate: (payload: Camelize<DiscordPresenceUpdate>, shard: DiscordenoShard) => unknown\n ready: (payload: Camelize<DiscordReady>, shard: DiscordenoShard) => unknown\n stageInstanceCreate: (payload: Camelize<DiscordStageInstance>, shard: DiscordenoShard) => unknown\n stageInstanceUpdate: (payload: Camelize<DiscordStageInstance>, shard: DiscordenoShard) => unknown\n stageInstanceDelete: (payload: Camelize<DiscordStageInstance>, shard: DiscordenoShard) => unknown\n typingStart: (payload: Camelize<DiscordTypingStart>, shard: DiscordenoShard) => unknown\n userUpdate: (payload: Camelize<DiscordUser>, shard: DiscordenoShard) => unknown\n voiceStateUpdate: (payload: Camelize<DiscordVoiceState>, shard: DiscordenoShard) => unknown\n voiceServerUpdate: (payload: Camelize<DiscordVoiceServerUpdate>, shard: DiscordenoShard) => unknown\n webhooksUpdate: (payload: Camelize<DiscordWebhookUpdate>, shard: DiscordenoShard) => unknown\n}\n"],"names":["createGatewayManager","ShardSocketCloseCodes","createRestManager","createLogger","createBot","options","rest","token","gateway","events","message","shard","data","bot","raw","t","dispatchRequirements","toLowerCase","replace","g","toUpperCase","d","intents","logger","name","start","connection","getSessionInfo","spawnShards","shutdown","Shutdown"],"mappings":"AACA,SAASA,oBAAoB,EAAEC,qBAAqB,QAAQ,sBAAqB;AAEjF,SAASC,iBAAiB,QAAQ,mBAAkB;AAkDpD,SAASC,YAAY,QAAQ,oBAAmB;AAEhD;;;;;CAKC,GACD,OAAO,SAASC,UAAUC,OAAyB,EAAO;IACxD,IAAI,CAACA,QAAQC,IAAI,EAAED,QAAQC,IAAI,GAAG;QAAEC,OAAOF,QAAQE,KAAK;IAAC;IACzD,IAAI,CAACF,QAAQG,OAAO,EAAEH,QAAQG,OAAO,GAAG;QAAED,OAAOF,QAAQE,KAAK;QAAEE,QAAQ,CAAC;IAAE;IAC3E,IAAI,CAACJ,QAAQG,OAAO,CAACC,MAAM,CAACC,OAAO,EAAE;QACnCL,QAAQG,OAAO,CAACC,MAAM,CAACC,OAAO,GAAG,OAAOC,OAAOC,OAAS;YACtD,oBAAoB;YACpBC,IAAIJ,MAAM,CAACK,GAAG,GAAGF,MAAMD;YAEvB,IAAI,CAACC,KAAKG,CAAC,EAAE;YAEb,qBAAqB;YACrB,MAAMF,IAAIJ,MAAM,CAACO,oBAAoB,GAAGJ,MAAMD;YAC9CE,IAAIJ,MAAM,CACRG,KAAKG,CAAC,CAACE,WAAW,GAAGC,OAAO,CAAC,aAAa,SAAUC,CAAC,EAAE;gBACrD,OAAOA,CAAC,CAAC,EAAE,CAACC,WAAW;YACzB,GAED,GAAGR,KAAKS,CAAC,EAAEV;QACd;IACF,CAAC;IAEDN,QAAQC,IAAI,CAACC,KAAK,GAAGF,QAAQE,KAAK;IAClCF,QAAQG,OAAO,CAACc,OAAO,GAAGjB,QAAQiB,OAAO;IAEzC,MAAMT,MAAW;QACfP,MAAMJ,kBAAkBG,QAAQC,IAAI;QACpCE,SAASR,qBAAqBK,QAAQG,OAAO;QAC7CC,QAAQJ,QAAQI,MAAM,IAAI,CAAC;QAC3Bc,QAAQpB,aAAa;YAAEqB,MAAM;QAAM;QAEnC,MAAMC,SAAQ;YACZ,IAAI,CAACpB,QAAQG,OAAO,EAAEkB,YAAY;gBAChCb,IAAIL,OAAO,CAACkB,UAAU,GAAG,MAAMb,IAAIP,IAAI,CAACqB,cAAc;YACxD,CAAC;YACD,OAAO,MAAMd,IAAIL,OAAO,CAACoB,WAAW;QACtC;QAEA,MAAMC,YAAW;YACf,OAAO,MAAMhB,IAAIL,OAAO,CAACqB,QAAQ,CAAC5B,sBAAsB6B,QAAQ,EAAE;QACpE;IACF;IAEA,OAAOjB;AACT,CAAC"}
|
|
1
|
+
{"version":3,"sources":["../src/bot.ts"],"sourcesContent":["import type { CreateGatewayManagerOptions, GatewayManager } from '@discordeno/gateway'\nimport { ShardSocketCloseCodes, createGatewayManager } from '@discordeno/gateway'\nimport type { CreateRestManagerOptions, RestManager } from '@discordeno/rest'\nimport { createRestManager } from '@discordeno/rest'\nimport type {\n Camelize,\n DiscordAuditLogEntry,\n DiscordAutoModerationActionExecution,\n DiscordAutoModerationRule,\n DiscordChannel,\n DiscordChannelPinsUpdate,\n DiscordGatewayPayload,\n DiscordGuild,\n DiscordGuildApplicationCommandPermissions,\n DiscordGuildBanAddRemove,\n DiscordGuildEmojisUpdate,\n DiscordGuildMemberAdd,\n DiscordGuildMemberRemove,\n DiscordGuildMemberUpdate,\n DiscordGuildMembersChunk,\n DiscordGuildRoleCreate,\n DiscordGuildRoleDelete,\n DiscordGuildRoleUpdate,\n DiscordGuildStickersUpdate,\n DiscordIntegrationCreateUpdate,\n DiscordIntegrationDelete,\n DiscordInteraction,\n DiscordInviteCreate,\n DiscordInviteDelete,\n DiscordMessage,\n DiscordMessageDelete,\n DiscordMessageDeleteBulk,\n DiscordMessageReactionAdd,\n DiscordMessageReactionRemove,\n DiscordMessageReactionRemoveAll,\n DiscordMessageReactionRemoveEmoji,\n DiscordPresenceUpdate,\n DiscordReady,\n DiscordScheduledEvent,\n DiscordScheduledEventUserAdd,\n DiscordScheduledEventUserRemove,\n DiscordStageInstance,\n DiscordThreadListSync,\n DiscordThreadMemberUpdate,\n DiscordThreadMembersUpdate,\n DiscordTypingStart,\n DiscordUnavailableGuild,\n DiscordUser,\n DiscordVoiceServerUpdate,\n DiscordVoiceState,\n DiscordWebhookUpdate,\n GatewayIntents,\n} from '@discordeno/types'\nimport { createLogger } from '@discordeno/utils'\n\n/**\n * Create a bot object that will maintain the rest and gateway connection.\n *\n * @param options Configurations options used to manage this bot.\n * @returns Bot\n */\nexport function createBot(options: CreateBotOptions): Bot {\n if (!options.rest) options.rest = { token: options.token }\n if (!options.gateway) options.gateway = { token: options.token, events: {} }\n if (!options.gateway.events.message) {\n options.gateway.events.message = async (shard, data) => {\n // TRIGGER RAW EVENT\n bot.events.raw?.(data, shard.id)\n\n if (!data.t) return\n\n // RUN DISPATCH CHECK\n await bot.events.dispatchRequirements?.(data, shard.id)\n bot.events[\n data.t.toLowerCase().replace(/_([a-z])/g, function (g) {\n return g[1].toUpperCase()\n }) as keyof EventHandlers\n // @ts-expect-error as any gets removed by linter\n ]?.(data.d, shard.id)\n }\n }\n\n options.rest.token = options.token\n options.gateway.intents = options.intents\n\n const bot: Bot = {\n rest: createRestManager(options.rest),\n gateway: createGatewayManager(options.gateway),\n events: options.events ?? {},\n logger: createLogger({ name: 'BOT' }),\n\n async start() {\n if (!options.gateway?.connection) {\n bot.gateway.connection = await bot.rest.getSessionInfo()\n }\n return await bot.gateway.spawnShards()\n },\n\n async shutdown() {\n return await bot.gateway.shutdown(ShardSocketCloseCodes.Shutdown, 'User requested bot stop')\n },\n }\n\n return bot\n}\n\nexport interface CreateBotOptions {\n /** The bot's token. */\n token: string\n /** The bot's intents that will be used to make a connection with discords gateway. */\n intents?: GatewayIntents\n /** Any options you wish to provide to the rest manager. */\n rest?: CreateRestManagerOptions\n /** Any options you wish to provide to the gateway manager. */\n gateway?: CreateGatewayManagerOptions\n /** The event handlers. */\n events: Partial<EventHandlers>\n}\n\nexport interface Bot {\n /** The rest manager. */\n rest: RestManager\n /** The gateway manager. */\n gateway: GatewayManager\n /** The event handlers. */\n events: Partial<EventHandlers>\n /** A logger utility to make it easy to log nice and useful things in the bot code. */\n logger: ReturnType<typeof createLogger>\n /** Start the bot connection to the gateway. */\n start: () => Promise<void>\n /** Shuts down all the bot connections to the gateway. */\n shutdown: () => Promise<void>\n}\n\nexport interface EventHandlers {\n // Custom events here\n dispatchRequirements: (payload: Camelize<DiscordGatewayPayload>, shardId: number) => unknown\n raw: (payload: Camelize<DiscordGatewayPayload>, shardId: number) => unknown\n\n // Gateway events below this\n applicationCommandPermissionsUpdate: (payload: Camelize<DiscordGuildApplicationCommandPermissions>, shardId: number) => unknown\n auditLogEntryCreate: (payload: Camelize<DiscordAuditLogEntry>, shardId: number) => unknown\n autoModerationRuleCreate: (payload: Camelize<DiscordAutoModerationRule>, shardId: number) => unknown\n autoModerationRuleUpdate: (payload: Camelize<DiscordAutoModerationRule>, shardId: number) => unknown\n autoModerationRuleDelete: (payload: Camelize<DiscordAutoModerationRule>, shardId: number) => unknown\n autoModerationActionExecution: (payload: Camelize<DiscordAutoModerationActionExecution>, shardId: number) => unknown\n channelCreate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown\n channelUpdate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown\n channelDelete: (payload: Camelize<DiscordChannel>, shardId: number) => unknown\n channelPinsUpdate: (payload: Camelize<DiscordChannelPinsUpdate>, shardId: number) => unknown\n threadCreate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown\n threadUpdate: (payload: Camelize<DiscordChannel>, shardId: number) => unknown\n threadDelete: (payload: Camelize<DiscordChannel>, shardId: number) => unknown\n threadListSync: (payload: Camelize<DiscordThreadListSync>, shardId: number) => unknown\n threadMemberUpdate: (payload: Camelize<DiscordThreadMemberUpdate>, shardId: number) => unknown\n threadMembersUpdate: (payload: Camelize<DiscordThreadMembersUpdate>, shardId: number) => unknown\n guildCreate: (payload: Camelize<DiscordGuild>, shardId: number) => unknown\n guildUpdate: (payload: Camelize<DiscordGuild>, shardId: number) => unknown\n guildDelete: (payload: Camelize<DiscordUnavailableGuild>, shardId: number) => unknown\n guildBanAdd: (payload: Camelize<DiscordGuildBanAddRemove>, shardId: number) => unknown\n guildBanRemove: (payload: Camelize<DiscordGuildBanAddRemove>, shardId: number) => unknown\n guildEmojisUpdate: (payload: Camelize<DiscordGuildEmojisUpdate>, shardId: number) => unknown\n guildStickersUpdate: (payload: Camelize<DiscordGuildStickersUpdate>, shardId: number) => unknown\n guildIntegrationsUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shardId: number) => unknown\n guildMemberAdd: (payload: Camelize<DiscordGuildMemberAdd>, shardId: number) => unknown\n guildMemberRemove: (payload: Camelize<DiscordGuildMemberRemove>, shardId: number) => unknown\n guildMemberUpdate: (payload: Camelize<DiscordGuildMemberUpdate>, shardId: number) => unknown\n guildMembersChunk: (payload: Camelize<DiscordGuildMembersChunk>, shardId: number) => unknown\n guildRoleCreate: (payload: Camelize<DiscordGuildRoleCreate>, shardId: number) => unknown\n guildRoleUpdate: (payload: Camelize<DiscordGuildRoleUpdate>, shardId: number) => unknown\n guildRoleDelete: (payload: Camelize<DiscordGuildRoleDelete>, shardId: number) => unknown\n guildScheduledEventCreate: (payload: Camelize<DiscordScheduledEvent>, shardId: number) => unknown\n guildScheduledEventUpdate: (payload: Camelize<DiscordScheduledEvent>, shardId: number) => unknown\n guildScheduledEventDelete: (payload: Camelize<DiscordScheduledEvent>, shardId: number) => unknown\n guildScheduledEventUserAdd: (payload: Camelize<DiscordScheduledEventUserAdd>, shardId: number) => unknown\n guildScheduledEventUserRemove: (payload: Camelize<DiscordScheduledEventUserRemove>, shardId: number) => unknown\n integrationCreate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shardId: number) => unknown\n integrationUpdate: (payload: Camelize<DiscordIntegrationCreateUpdate>, shardId: number) => unknown\n integrationDelete: (payload: Camelize<DiscordIntegrationDelete>, shardId: number) => unknown\n interactionCreate: (payload: Camelize<DiscordInteraction>, shardId: number) => unknown\n inviteCreate: (payload: Camelize<DiscordInviteCreate>, shardId: number) => unknown\n inviteDelete: (payload: Camelize<DiscordInviteDelete>, shardId: number) => unknown\n messageCreate: (payload: Camelize<DiscordMessage>, shardId: number) => unknown\n messageUpdate: (payload: Camelize<DiscordMessage>, shardId: number) => unknown\n messageDelete: (payload: Camelize<DiscordMessageDelete>, shardId: number) => unknown\n messageDeleteBulk: (payload: Camelize<DiscordMessageDeleteBulk>, shardId: number) => unknown\n messageReactionAdd: (payload: Camelize<DiscordMessageReactionAdd>, shardId: number) => unknown\n messageReactionRemove: (payload: Camelize<DiscordMessageReactionRemove>, shardId: number) => unknown\n messageReactionRemoveAll: (payload: Camelize<DiscordMessageReactionRemoveAll>, shardId: number) => unknown\n messageReactionRemoveEmoji: (payload: Camelize<DiscordMessageReactionRemoveEmoji>, shardId: number) => unknown\n presenceUpdate: (payload: Camelize<DiscordPresenceUpdate>, shardId: number) => unknown\n ready: (payload: Camelize<DiscordReady>, shardId: number) => unknown\n stageInstanceCreate: (payload: Camelize<DiscordStageInstance>, shardId: number) => unknown\n stageInstanceUpdate: (payload: Camelize<DiscordStageInstance>, shardId: number) => unknown\n stageInstanceDelete: (payload: Camelize<DiscordStageInstance>, shardId: number) => unknown\n typingStart: (payload: Camelize<DiscordTypingStart>, shardId: number) => unknown\n userUpdate: (payload: Camelize<DiscordUser>, shardId: number) => unknown\n voiceStateUpdate: (payload: Camelize<DiscordVoiceState>, shardId: number) => unknown\n voiceServerUpdate: (payload: Camelize<DiscordVoiceServerUpdate>, shardId: number) => unknown\n webhooksUpdate: (payload: Camelize<DiscordWebhookUpdate>, shardId: number) => unknown\n}\n"],"names":["ShardSocketCloseCodes","createGatewayManager","createRestManager","createLogger","createBot","options","rest","token","gateway","events","message","shard","data","bot","raw","id","t","dispatchRequirements","toLowerCase","replace","g","toUpperCase","d","intents","logger","name","start","connection","getSessionInfo","spawnShards","shutdown","Shutdown"],"mappings":"AACA,SAASA,qBAAqB,EAAEC,oBAAoB,QAAQ,sBAAqB;AAEjF,SAASC,iBAAiB,QAAQ,mBAAkB;AAkDpD,SAASC,YAAY,QAAQ,oBAAmB;AAEhD;;;;;CAKC,GACD,OAAO,SAASC,UAAUC,OAAyB,EAAO;IACxD,IAAI,CAACA,QAAQC,IAAI,EAAED,QAAQC,IAAI,GAAG;QAAEC,OAAOF,QAAQE,KAAK;IAAC;IACzD,IAAI,CAACF,QAAQG,OAAO,EAAEH,QAAQG,OAAO,GAAG;QAAED,OAAOF,QAAQE,KAAK;QAAEE,QAAQ,CAAC;IAAE;IAC3E,IAAI,CAACJ,QAAQG,OAAO,CAACC,MAAM,CAACC,OAAO,EAAE;QACnCL,QAAQG,OAAO,CAACC,MAAM,CAACC,OAAO,GAAG,OAAOC,OAAOC,OAAS;YACtD,oBAAoB;YACpBC,IAAIJ,MAAM,CAACK,GAAG,GAAGF,MAAMD,MAAMI,EAAE;YAE/B,IAAI,CAACH,KAAKI,CAAC,EAAE;YAEb,qBAAqB;YACrB,MAAMH,IAAIJ,MAAM,CAACQ,oBAAoB,GAAGL,MAAMD,MAAMI,EAAE;YACtDF,IAAIJ,MAAM,CACRG,KAAKI,CAAC,CAACE,WAAW,GAAGC,OAAO,CAAC,aAAa,SAAUC,CAAC,EAAE;gBACrD,OAAOA,CAAC,CAAC,EAAE,CAACC,WAAW;YACzB,GAED,GAAGT,KAAKU,CAAC,EAAEX,MAAMI,EAAE;QACtB;IACF,CAAC;IAEDV,QAAQC,IAAI,CAACC,KAAK,GAAGF,QAAQE,KAAK;IAClCF,QAAQG,OAAO,CAACe,OAAO,GAAGlB,QAAQkB,OAAO;IAEzC,MAAMV,MAAW;QACfP,MAAMJ,kBAAkBG,QAAQC,IAAI;QACpCE,SAASP,qBAAqBI,QAAQG,OAAO;QAC7CC,QAAQJ,QAAQI,MAAM,IAAI,CAAC;QAC3Be,QAAQrB,aAAa;YAAEsB,MAAM;QAAM;QAEnC,MAAMC,SAAQ;YACZ,IAAI,CAACrB,QAAQG,OAAO,EAAEmB,YAAY;gBAChCd,IAAIL,OAAO,CAACmB,UAAU,GAAG,MAAMd,IAAIP,IAAI,CAACsB,cAAc;YACxD,CAAC;YACD,OAAO,MAAMf,IAAIL,OAAO,CAACqB,WAAW;QACtC;QAEA,MAAMC,YAAW;YACf,OAAO,MAAMjB,IAAIL,OAAO,CAACsB,QAAQ,CAAC9B,sBAAsB+B,QAAQ,EAAE;QACpE;IACF;IAEA,OAAOlB;AACT,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@discordeno/bot",
|
|
3
|
-
"version": "19.0.0-next.
|
|
3
|
+
"version": "19.0.0-next.f1f4322",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"types": "./dist/index.d.ts",
|
|
6
6
|
"type": "module",
|
|
@@ -24,26 +24,26 @@
|
|
|
24
24
|
"test:test-type": "tsc --project tsconfig.test.json"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@discordeno/gateway": "19.0.0-next.
|
|
28
|
-
"@discordeno/rest": "19.0.0-next.
|
|
29
|
-
"@discordeno/types": "19.0.0-next.
|
|
30
|
-
"@discordeno/utils": "19.0.0-next.
|
|
27
|
+
"@discordeno/gateway": "19.0.0-next.f1f4322",
|
|
28
|
+
"@discordeno/rest": "19.0.0-next.f1f4322",
|
|
29
|
+
"@discordeno/types": "19.0.0-next.f1f4322",
|
|
30
|
+
"@discordeno/utils": "19.0.0-next.f1f4322"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@swc/cli": "^0.1.
|
|
34
|
-
"@swc/core": "^1.3.
|
|
35
|
-
"@types/chai": "^4",
|
|
36
|
-
"@types/mocha": "^10",
|
|
37
|
-
"@types/node": "^18.
|
|
33
|
+
"@swc/cli": "^0.1.62",
|
|
34
|
+
"@swc/core": "^1.3.40",
|
|
35
|
+
"@types/chai": "^4.3.4",
|
|
36
|
+
"@types/mocha": "^10.0.1",
|
|
37
|
+
"@types/node": "^18.15.3",
|
|
38
38
|
"@types/sinon": "^10.0.13",
|
|
39
|
-
"c8": "^7.
|
|
39
|
+
"c8": "^7.13.0",
|
|
40
40
|
"chai": "^4.3.7",
|
|
41
|
-
"eslint": "^8.0
|
|
41
|
+
"eslint": "^8.36.0",
|
|
42
42
|
"eslint-config-discordeno": "*",
|
|
43
|
-
"mocha": "^10.
|
|
44
|
-
"sinon": "^15.0.
|
|
43
|
+
"mocha": "^10.2.0",
|
|
44
|
+
"sinon": "^15.0.2",
|
|
45
45
|
"ts-node": "^10.9.1",
|
|
46
46
|
"tsconfig": "*",
|
|
47
|
-
"typescript": "^4.9.
|
|
47
|
+
"typescript": "^4.9.5"
|
|
48
48
|
}
|
|
49
49
|
}
|