@discordeno/bot 19.0.0-next.c9c510b → 19.0.0-next.cd29c5f

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.
Files changed (57) hide show
  1. package/dist/bot.d.ts +10 -2
  2. package/dist/bot.d.ts.map +1 -1
  3. package/dist/bot.js +6 -1
  4. package/dist/bot.js.map +1 -1
  5. package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts.map +1 -1
  6. package/dist/handlers/channels/THREAD_LIST_SYNC.js +4 -3
  7. package/dist/handlers/channels/THREAD_LIST_SYNC.js.map +1 -1
  8. package/dist/handlers/guilds/GUILD_DELETE.d.ts.map +1 -1
  9. package/dist/handlers/guilds/GUILD_DELETE.js +4 -0
  10. package/dist/handlers/guilds/GUILD_DELETE.js.map +1 -1
  11. package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -1
  12. package/dist/handlers/messages/MESSAGE_REACTION_ADD.js +2 -1
  13. package/dist/handlers/messages/MESSAGE_REACTION_ADD.js.map +1 -1
  14. package/dist/handlers.js +1 -1
  15. package/dist/handlers.js.map +1 -1
  16. package/dist/transformers/application.d.ts +1 -0
  17. package/dist/transformers/application.d.ts.map +1 -1
  18. package/dist/transformers/auditLogEntry.d.ts +1 -1
  19. package/dist/transformers/auditLogEntry.d.ts.map +1 -1
  20. package/dist/transformers/auditLogEntry.js +12 -6
  21. package/dist/transformers/auditLogEntry.js.map +1 -1
  22. package/dist/transformers/channel.js +1 -1
  23. package/dist/transformers/channel.js.map +1 -1
  24. package/dist/transformers/emoji.d.ts +1 -0
  25. package/dist/transformers/emoji.d.ts.map +1 -1
  26. package/dist/transformers/integration.d.ts +2 -0
  27. package/dist/transformers/integration.d.ts.map +1 -1
  28. package/dist/transformers/invite.d.ts +3 -0
  29. package/dist/transformers/invite.d.ts.map +1 -1
  30. package/dist/transformers/message.d.ts +1 -1
  31. package/dist/transformers/message.d.ts.map +1 -1
  32. package/dist/transformers/message.js +0 -1
  33. package/dist/transformers/message.js.map +1 -1
  34. package/dist/transformers/reverse/auditLogEntry.d.ts +1 -1
  35. package/dist/transformers/reverse/auditLogEntry.d.ts.map +1 -1
  36. package/dist/transformers/reverse/auditLogEntry.js +12 -6
  37. package/dist/transformers/reverse/auditLogEntry.js.map +1 -1
  38. package/dist/transformers/reverse/member.d.ts.map +1 -1
  39. package/dist/transformers/reverse/member.js +1 -0
  40. package/dist/transformers/reverse/member.js.map +1 -1
  41. package/dist/transformers/scheduledEvent.d.ts +1 -0
  42. package/dist/transformers/scheduledEvent.d.ts.map +1 -1
  43. package/dist/transformers/sticker.d.ts +1 -0
  44. package/dist/transformers/sticker.d.ts.map +1 -1
  45. package/dist/transformers/template.d.ts +6 -0
  46. package/dist/transformers/template.d.ts.map +1 -1
  47. package/dist/transformers/user.d.ts +3 -1
  48. package/dist/transformers/user.d.ts.map +1 -1
  49. package/dist/transformers/user.js +1 -0
  50. package/dist/transformers/user.js.map +1 -1
  51. package/dist/transformers/webhook.d.ts +1 -0
  52. package/dist/transformers/webhook.d.ts.map +1 -1
  53. package/dist/transformers.d.ts +1 -0
  54. package/dist/transformers.d.ts.map +1 -1
  55. package/dist/transformers.js +1 -0
  56. package/dist/transformers.js.map +1 -1
  57. package/package.json +5 -5
package/dist/bot.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { CreateGatewayManagerOptions, GatewayManager } from '@discordeno/gateway';
2
2
  import type { CreateRestManagerOptions, RestManager } from '@discordeno/rest';
3
- import type { DiscordEmoji, DiscordGatewayPayload, DiscordReady, GatewayIntents } from '@discordeno/types';
3
+ import type { BigString, DiscordEmoji, DiscordGatewayPayload, DiscordReady, GatewayIntents } from '@discordeno/types';
4
4
  import { createLogger, type Collection } from '@discordeno/utils';
5
5
  import { createBotGatewayHandlers } from './handlers.js';
6
6
  import { type BotHelpers } from './helpers.js';
@@ -35,7 +35,7 @@ export interface CreateBotOptions {
35
35
  /** The bot's token. */
36
36
  token: string;
37
37
  /** Application Id of the bot incase it is an old bot token. */
38
- applicationId?: bigint;
38
+ applicationId?: BigString;
39
39
  /** The bot's intents that will be used to make a connection with discords gateway. */
40
40
  intents?: GatewayIntents;
41
41
  /** Any options you wish to provide to the rest manager. */
@@ -78,6 +78,12 @@ export interface EventHandlers {
78
78
  automodActionExecution: (payload: AutoModerationActionExecution) => unknown;
79
79
  threadCreate: (thread: Channel) => unknown;
80
80
  threadDelete: (thread: Channel) => unknown;
81
+ threadListSync: (payload: {
82
+ guildId: bigint;
83
+ channelIds?: bigint[];
84
+ threads: Channel[];
85
+ members: ThreadMember[];
86
+ }) => unknown;
81
87
  threadMemberUpdate: (payload: {
82
88
  id: bigint;
83
89
  guildId: bigint;
@@ -155,6 +161,7 @@ export interface EventHandlers {
155
161
  member?: Member;
156
162
  user?: User;
157
163
  emoji: Emoji;
164
+ messageAuthorId?: bigint;
158
165
  }) => unknown;
159
166
  reactionRemove: (payload: {
160
167
  userId: bigint;
@@ -216,6 +223,7 @@ export interface EventHandlers {
216
223
  guildBanRemove: (user: User, guildId: bigint) => unknown;
217
224
  guildCreate: (guild: Guild) => unknown;
218
225
  guildDelete: (id: bigint, shardId: number) => unknown;
226
+ guildUnavailable: (id: bigint, shardId: number) => unknown;
219
227
  guildUpdate: (guild: Guild) => unknown;
220
228
  raw: (data: DiscordGatewayPayload, shardId: number) => unknown;
221
229
  roleCreate: (role: Role) => unknown;
package/dist/bot.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
package/dist/bot.js CHANGED
@@ -48,14 +48,19 @@ import { createTransformers } from './transformers.js';
48
48
  async start () {
49
49
  if (!options.gateway?.connection) {
50
50
  bot.gateway.connection = await bot.rest.getSessionInfo();
51
+ // Check for overrides in the configuration
52
+ if (!options.gateway?.url) bot.gateway.url = bot.gateway.connection.url;
53
+ if (!options.gateway?.totalShards) bot.gateway.totalShards = bot.gateway.connection.shards;
54
+ if (!options.gateway?.lastShardId) bot.gateway.lastShardId = bot.gateway.connection.shards - 1;
51
55
  }
52
- return await bot.gateway.spawnShards();
56
+ await bot.gateway.spawnShards();
53
57
  },
54
58
  async shutdown () {
55
59
  return await bot.gateway.shutdown(ShardSocketCloseCodes.Shutdown, 'User requested bot stop');
56
60
  }
57
61
  };
58
62
  bot.helpers = createBotHelpers(bot);
63
+ if (options.applicationId) bot.applicationId = bot.transformers.snowflake(options.applicationId);
59
64
  return bot;
60
65
  }
61
66
 
package/dist/bot.js.map CHANGED
@@ -1 +1 @@
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 { DiscordEmoji, DiscordGatewayPayload, DiscordReady, GatewayIntents } from '@discordeno/types'\nimport { createLogger, getBotIdFromToken, type Collection } from '@discordeno/utils'\nimport { createBotGatewayHandlers } from './handlers.js'\nimport { createBotHelpers, type BotHelpers } from './helpers.js'\nimport { createTransformers, type Transformers } from './transformers.js'\nimport type { ApplicationCommandPermission } from './transformers/applicationCommandPermission.js'\nimport type { AuditLogEntry } from './transformers/auditLogEntry.js'\nimport type { AutoModerationActionExecution } from './transformers/automodActionExecution.js'\nimport type { AutoModerationRule } from './transformers/automodRule.js'\nimport type { Channel } from './transformers/channel.js'\nimport type { Emoji } from './transformers/emoji.js'\nimport type { Guild } from './transformers/guild.js'\nimport type { Integration } from './transformers/integration.js'\nimport type { Interaction } from './transformers/interaction.js'\nimport type { Invite } from './transformers/invite.js'\nimport type { Member } from './transformers/member.js'\nimport type { Message } from './transformers/message.js'\nimport type { PresenceUpdate } from './transformers/presence.js'\nimport type { Role } from './transformers/role.js'\nimport type { ScheduledEvent } from './transformers/scheduledEvent.js'\nimport type { Sticker } from './transformers/sticker.js'\nimport type { ThreadMember } from './transformers/threadMember.js'\nimport type { User } from './transformers/user.js'\nimport type { VoiceState } from './transformers/voiceState.js'\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, applicationId: options.applicationId }\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.handlers[data.t as keyof ReturnType<typeof createBotGatewayHandlers>]?.(bot, data, shard.id)\n }\n }\n\n options.rest.token = options.token\n options.gateway.intents = options.intents\n options.gateway.preferSnakeCase = true\n\n const id = getBotIdFromToken(options.token)\n\n const bot: Bot = {\n id,\n applicationId: id,\n transformers: createTransformers({}),\n handlers: createBotGatewayHandlers({}),\n rest: createRestManager(options.rest),\n gateway: createGatewayManager(options.gateway),\n events: options.events ?? {},\n logger: createLogger({ name: 'BOT' }),\n // Set up helpers below.\n helpers: {} as BotHelpers,\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 bot.helpers = createBotHelpers(bot)\n\n return bot\n}\n\nexport interface CreateBotOptions {\n /** The bot's token. */\n token: string\n /** Application Id of the bot incase it is an old bot token. */\n applicationId?: bigint\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 id of the bot. */\n id: bigint\n /** The application id of the bot. This is usually the same as id but in the case of old bots can be different. */\n applicationId: bigint\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 /** The functions that should transform discord objects to discordeno shaped objects. */\n transformers: Transformers\n /** The handler functions that should handle incoming discord payloads from gateway and call an event. */\n handlers: ReturnType<typeof createBotGatewayHandlers>\n helpers: BotHelpers\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 debug: (text: string, ...args: any[]) => unknown\n applicationCommandPermissionsUpdate: (command: ApplicationCommandPermission) => unknown\n guildAuditLogEntryCreate: (log: AuditLogEntry, guildId: bigint) => unknown\n automodRuleCreate: (rule: AutoModerationRule) => unknown\n automodRuleUpdate: (rule: AutoModerationRule) => unknown\n automodRuleDelete: (rule: AutoModerationRule) => unknown\n automodActionExecution: (payload: AutoModerationActionExecution) => unknown\n threadCreate: (thread: Channel) => unknown\n threadDelete: (thread: Channel) => unknown\n threadMemberUpdate: (payload: { id: bigint; guildId: bigint; joinedAt: number; flags: number }) => unknown\n threadMembersUpdate: (payload: { id: bigint; guildId: bigint; addedMembers?: ThreadMember[]; removedMemberIds?: bigint[] }) => unknown\n threadUpdate: (thread: Channel) => unknown\n scheduledEventCreate: (event: ScheduledEvent) => unknown\n scheduledEventUpdate: (event: ScheduledEvent) => unknown\n scheduledEventDelete: (event: ScheduledEvent) => unknown\n /** Sent when a user has subscribed to a guild scheduled event. EXPERIMENTAL! */\n scheduledEventUserAdd: (payload: { guildScheduledEventId: bigint; guildId: bigint; userId: bigint }) => unknown\n /** Sent when a user has unsubscribed to a guild scheduled event. EXPERIMENTAL! */\n scheduledEventUserRemove: (payload: { guildScheduledEventId: bigint; guildId: bigint; userId: bigint }) => unknown\n ready: (\n payload: {\n shardId: number\n v: number\n user: User\n guilds: bigint[]\n sessionId: string\n shard?: number[]\n applicationId: bigint\n },\n rawPayload: DiscordReady,\n ) => unknown\n interactionCreate: (interaction: Interaction) => unknown\n integrationCreate: (integration: Integration) => unknown\n integrationDelete: (payload: { id: bigint; guildId: bigint; applicationId?: bigint }) => unknown\n integrationUpdate: (payload: { guildId: bigint }) => unknown\n inviteCreate: (invite: Invite) => unknown\n inviteDelete: (payload: { channelId: bigint; guildId?: bigint; code: string }) => unknown\n guildMemberAdd: (member: Member, user: User) => unknown\n guildMemberRemove: (user: User, guildId: bigint) => unknown\n guildMemberUpdate: (member: Member, user: User) => unknown\n guildStickersUpdate: (stickers: Sticker[]) => unknown\n messageCreate: (message: Message) => unknown\n messageDelete: (payload: { id: bigint; channelId: bigint; guildId?: bigint }, message?: Message) => unknown\n messageDeleteBulk: (payload: { ids: bigint[]; channelId: bigint; guildId?: bigint }) => unknown\n messageUpdate: (message: Message, oldMessage?: Message) => unknown\n reactionAdd: (payload: {\n userId: bigint\n channelId: bigint\n messageId: bigint\n guildId?: bigint\n member?: Member\n user?: User\n emoji: Emoji\n }) => unknown\n reactionRemove: (payload: { userId: bigint; channelId: bigint; messageId: bigint; guildId?: bigint; emoji: Emoji }) => unknown\n reactionRemoveEmoji: (payload: { channelId: bigint; messageId: bigint; guildId?: bigint; emoji: Emoji }) => unknown\n reactionRemoveAll: (payload: { channelId: bigint; messageId: bigint; guildId?: bigint }) => unknown\n presenceUpdate: (presence: PresenceUpdate, oldPresence?: PresenceUpdate) => unknown\n voiceServerUpdate: (payload: { token: string; endpoint?: string; guildId: bigint }) => unknown\n voiceStateUpdate: (voiceState: VoiceState) => unknown\n channelCreate: (channel: Channel) => unknown\n dispatchRequirements: (data: DiscordGatewayPayload, shardId: number) => unknown\n channelDelete: (channel: Channel) => unknown\n channelPinsUpdate: (data: { guildId?: bigint; channelId: bigint; lastPinTimestamp?: number }) => unknown\n channelUpdate: (channel: Channel) => unknown\n stageInstanceCreate: (data: { id: bigint; guildId: bigint; channelId: bigint; topic: string }) => unknown\n stageInstanceDelete: (data: { id: bigint; guildId: bigint; channelId: bigint; topic: string }) => unknown\n stageInstanceUpdate: (data: { id: bigint; guildId: bigint; channelId: bigint; topic: string }) => unknown\n guildEmojisUpdate: (payload: { guildId: bigint; emojis: Collection<bigint, DiscordEmoji> }) => unknown\n guildBanAdd: (user: User, guildId: bigint) => unknown\n guildBanRemove: (user: User, guildId: bigint) => unknown\n guildCreate: (guild: Guild) => unknown\n guildDelete: (id: bigint, shardId: number) => unknown\n guildUpdate: (guild: Guild) => unknown\n raw: (data: DiscordGatewayPayload, shardId: number) => unknown\n roleCreate: (role: Role) => unknown\n roleDelete: (payload: { guildId: bigint; roleId: bigint }) => unknown\n roleUpdate: (role: Role) => unknown\n webhooksUpdate: (payload: { channelId: bigint; guildId: bigint }) => unknown\n botUpdate: (user: User) => unknown\n typingStart: (payload: { guildId: bigint | undefined; channelId: bigint; userId: bigint; timestamp: number; member: Member | undefined }) => unknown\n}\n"],"names":["ShardSocketCloseCodes","createGatewayManager","createRestManager","createLogger","getBotIdFromToken","createBotGatewayHandlers","createBotHelpers","createTransformers","createBot","options","rest","token","applicationId","gateway","events","message","shard","data","bot","raw","id","t","dispatchRequirements","handlers","intents","preferSnakeCase","transformers","logger","name","helpers","start","connection","getSessionInfo","spawnShards","shutdown","Shutdown"],"mappings":"AACA,SAASA,qBAAqB,EAAEC,oBAAoB,QAAQ,sBAAqB;AAEjF,SAASC,iBAAiB,QAAQ,mBAAkB;AAEpD,SAASC,YAAY,EAAEC,iBAAiB,QAAyB,oBAAmB;AACpF,SAASC,wBAAwB,QAAQ,gBAAe;AACxD,SAASC,gBAAgB,QAAyB,eAAc;AAChE,SAASC,kBAAkB,QAA2B,oBAAmB;AAqBzE;;;;;CAKC,GACD,OAAO,SAASC,UAAUC,OAAyB,EAAO;IACxD,IAAI,CAACA,QAAQC,IAAI,EAAED,QAAQC,IAAI,GAAG;QAAEC,OAAOF,QAAQE,KAAK;QAAEC,eAAeH,QAAQG,aAAa;IAAC;IAC/F,IAAI,CAACH,QAAQI,OAAO,EAAEJ,QAAQI,OAAO,GAAG;QAAEF,OAAOF,QAAQE,KAAK;QAAEG,QAAQ,CAAC;IAAE;IAC3E,IAAI,CAACL,QAAQI,OAAO,CAACC,MAAM,CAACC,OAAO,EAAE;QACnCN,QAAQI,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,IAAIK,QAAQ,CAACN,KAAKI,CAAC,CAAsD,GAAGH,KAAKD,MAAMD,MAAMI,EAAE;QACjG;IACF,CAAC;IAEDX,QAAQC,IAAI,CAACC,KAAK,GAAGF,QAAQE,KAAK;IAClCF,QAAQI,OAAO,CAACW,OAAO,GAAGf,QAAQe,OAAO;IACzCf,QAAQI,OAAO,CAACY,eAAe,GAAG,IAAI;IAEtC,MAAML,KAAKhB,kBAAkBK,QAAQE,KAAK;IAE1C,MAAMO,MAAW;QACfE;QACAR,eAAeQ;QACfM,cAAcnB,mBAAmB,CAAC;QAClCgB,UAAUlB,yBAAyB,CAAC;QACpCK,MAAMR,kBAAkBO,QAAQC,IAAI;QACpCG,SAASZ,qBAAqBQ,QAAQI,OAAO;QAC7CC,QAAQL,QAAQK,MAAM,IAAI,CAAC;QAC3Ba,QAAQxB,aAAa;YAAEyB,MAAM;QAAM;QACnC,wBAAwB;QACxBC,SAAS,CAAC;QACV,MAAMC,SAAQ;YACZ,IAAI,CAACrB,QAAQI,OAAO,EAAEkB,YAAY;gBAChCb,IAAIL,OAAO,CAACkB,UAAU,GAAG,MAAMb,IAAIR,IAAI,CAACsB,cAAc;YACxD,CAAC;YACD,OAAO,MAAMd,IAAIL,OAAO,CAACoB,WAAW;QACtC;QAEA,MAAMC,YAAW;YACf,OAAO,MAAMhB,IAAIL,OAAO,CAACqB,QAAQ,CAAClC,sBAAsBmC,QAAQ,EAAE;QACpE;IACF;IAEAjB,IAAIW,OAAO,GAAGvB,iBAAiBY;IAE/B,OAAOA;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 { BigString, DiscordEmoji, DiscordGatewayPayload, DiscordReady, GatewayIntents } from '@discordeno/types'\nimport { createLogger, getBotIdFromToken, type Collection } from '@discordeno/utils'\nimport { createBotGatewayHandlers } from './handlers.js'\nimport { createBotHelpers, type BotHelpers } from './helpers.js'\nimport { createTransformers, type Transformers } from './transformers.js'\nimport type { ApplicationCommandPermission } from './transformers/applicationCommandPermission.js'\nimport type { AuditLogEntry } from './transformers/auditLogEntry.js'\nimport type { AutoModerationActionExecution } from './transformers/automodActionExecution.js'\nimport type { AutoModerationRule } from './transformers/automodRule.js'\nimport type { Channel } from './transformers/channel.js'\nimport type { Emoji } from './transformers/emoji.js'\nimport type { Guild } from './transformers/guild.js'\nimport type { Integration } from './transformers/integration.js'\nimport type { Interaction } from './transformers/interaction.js'\nimport type { Invite } from './transformers/invite.js'\nimport type { Member } from './transformers/member.js'\nimport type { Message } from './transformers/message.js'\nimport type { PresenceUpdate } from './transformers/presence.js'\nimport type { Role } from './transformers/role.js'\nimport type { ScheduledEvent } from './transformers/scheduledEvent.js'\nimport type { Sticker } from './transformers/sticker.js'\nimport type { ThreadMember } from './transformers/threadMember.js'\nimport type { User } from './transformers/user.js'\nimport type { VoiceState } from './transformers/voiceState.js'\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, applicationId: options.applicationId }\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.handlers[data.t as keyof ReturnType<typeof createBotGatewayHandlers>]?.(bot, data, shard.id)\n }\n }\n\n options.rest.token = options.token\n options.gateway.intents = options.intents\n options.gateway.preferSnakeCase = true\n\n const id = getBotIdFromToken(options.token)\n\n const bot: Bot = {\n id,\n applicationId: id,\n transformers: createTransformers({}),\n handlers: createBotGatewayHandlers({}),\n rest: createRestManager(options.rest),\n gateway: createGatewayManager(options.gateway),\n events: options.events ?? {},\n logger: createLogger({ name: 'BOT' }),\n // Set up helpers below.\n helpers: {} as BotHelpers,\n async start() {\n if (!options.gateway?.connection) {\n bot.gateway.connection = await bot.rest.getSessionInfo()\n\n // Check for overrides in the configuration\n if (!options.gateway?.url) bot.gateway.url = bot.gateway.connection.url\n\n if (!options.gateway?.totalShards) bot.gateway.totalShards = bot.gateway.connection.shards\n\n if (!options.gateway?.lastShardId) bot.gateway.lastShardId = bot.gateway.connection.shards - 1\n }\n\n 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 bot.helpers = createBotHelpers(bot)\n if (options.applicationId) bot.applicationId = bot.transformers.snowflake(options.applicationId)\n\n return bot\n}\n\nexport interface CreateBotOptions {\n /** The bot's token. */\n token: string\n /** Application Id of the bot incase it is an old bot token. */\n applicationId?: BigString\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 id of the bot. */\n id: bigint\n /** The application id of the bot. This is usually the same as id but in the case of old bots can be different. */\n applicationId: bigint\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 /** The functions that should transform discord objects to discordeno shaped objects. */\n transformers: Transformers\n /** The handler functions that should handle incoming discord payloads from gateway and call an event. */\n handlers: ReturnType<typeof createBotGatewayHandlers>\n helpers: BotHelpers\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 debug: (text: string, ...args: any[]) => unknown\n applicationCommandPermissionsUpdate: (command: ApplicationCommandPermission) => unknown\n guildAuditLogEntryCreate: (log: AuditLogEntry, guildId: bigint) => unknown\n automodRuleCreate: (rule: AutoModerationRule) => unknown\n automodRuleUpdate: (rule: AutoModerationRule) => unknown\n automodRuleDelete: (rule: AutoModerationRule) => unknown\n automodActionExecution: (payload: AutoModerationActionExecution) => unknown\n threadCreate: (thread: Channel) => unknown\n threadDelete: (thread: Channel) => unknown\n threadListSync: (payload: { guildId: bigint; channelIds?: bigint[]; threads: Channel[]; members: ThreadMember[] }) => unknown\n threadMemberUpdate: (payload: { id: bigint; guildId: bigint; joinedAt: number; flags: number }) => unknown\n threadMembersUpdate: (payload: { id: bigint; guildId: bigint; addedMembers?: ThreadMember[]; removedMemberIds?: bigint[] }) => unknown\n threadUpdate: (thread: Channel) => unknown\n scheduledEventCreate: (event: ScheduledEvent) => unknown\n scheduledEventUpdate: (event: ScheduledEvent) => unknown\n scheduledEventDelete: (event: ScheduledEvent) => unknown\n /** Sent when a user has subscribed to a guild scheduled event. EXPERIMENTAL! */\n scheduledEventUserAdd: (payload: { guildScheduledEventId: bigint; guildId: bigint; userId: bigint }) => unknown\n /** Sent when a user has unsubscribed to a guild scheduled event. EXPERIMENTAL! */\n scheduledEventUserRemove: (payload: { guildScheduledEventId: bigint; guildId: bigint; userId: bigint }) => unknown\n ready: (\n payload: {\n shardId: number\n v: number\n user: User\n guilds: bigint[]\n sessionId: string\n shard?: number[]\n applicationId: bigint\n },\n rawPayload: DiscordReady,\n ) => unknown\n interactionCreate: (interaction: Interaction) => unknown\n integrationCreate: (integration: Integration) => unknown\n integrationDelete: (payload: { id: bigint; guildId: bigint; applicationId?: bigint }) => unknown\n integrationUpdate: (payload: { guildId: bigint }) => unknown\n inviteCreate: (invite: Invite) => unknown\n inviteDelete: (payload: { channelId: bigint; guildId?: bigint; code: string }) => unknown\n guildMemberAdd: (member: Member, user: User) => unknown\n guildMemberRemove: (user: User, guildId: bigint) => unknown\n guildMemberUpdate: (member: Member, user: User) => unknown\n guildStickersUpdate: (stickers: Sticker[]) => unknown\n messageCreate: (message: Message) => unknown\n messageDelete: (payload: { id: bigint; channelId: bigint; guildId?: bigint }, message?: Message) => unknown\n messageDeleteBulk: (payload: { ids: bigint[]; channelId: bigint; guildId?: bigint }) => unknown\n messageUpdate: (message: Message, oldMessage?: Message) => unknown\n reactionAdd: (payload: {\n userId: bigint\n channelId: bigint\n messageId: bigint\n guildId?: bigint\n member?: Member\n user?: User\n emoji: Emoji\n messageAuthorId?: bigint\n }) => unknown\n reactionRemove: (payload: { userId: bigint; channelId: bigint; messageId: bigint; guildId?: bigint; emoji: Emoji }) => unknown\n reactionRemoveEmoji: (payload: { channelId: bigint; messageId: bigint; guildId?: bigint; emoji: Emoji }) => unknown\n reactionRemoveAll: (payload: { channelId: bigint; messageId: bigint; guildId?: bigint }) => unknown\n presenceUpdate: (presence: PresenceUpdate, oldPresence?: PresenceUpdate) => unknown\n voiceServerUpdate: (payload: { token: string; endpoint?: string; guildId: bigint }) => unknown\n voiceStateUpdate: (voiceState: VoiceState) => unknown\n channelCreate: (channel: Channel) => unknown\n dispatchRequirements: (data: DiscordGatewayPayload, shardId: number) => unknown\n channelDelete: (channel: Channel) => unknown\n channelPinsUpdate: (data: { guildId?: bigint; channelId: bigint; lastPinTimestamp?: number }) => unknown\n channelUpdate: (channel: Channel) => unknown\n stageInstanceCreate: (data: { id: bigint; guildId: bigint; channelId: bigint; topic: string }) => unknown\n stageInstanceDelete: (data: { id: bigint; guildId: bigint; channelId: bigint; topic: string }) => unknown\n stageInstanceUpdate: (data: { id: bigint; guildId: bigint; channelId: bigint; topic: string }) => unknown\n guildEmojisUpdate: (payload: { guildId: bigint; emojis: Collection<bigint, DiscordEmoji> }) => unknown\n guildBanAdd: (user: User, guildId: bigint) => unknown\n guildBanRemove: (user: User, guildId: bigint) => unknown\n guildCreate: (guild: Guild) => unknown\n guildDelete: (id: bigint, shardId: number) => unknown\n guildUnavailable: (id: bigint, shardId: number) => unknown\n guildUpdate: (guild: Guild) => unknown\n raw: (data: DiscordGatewayPayload, shardId: number) => unknown\n roleCreate: (role: Role) => unknown\n roleDelete: (payload: { guildId: bigint; roleId: bigint }) => unknown\n roleUpdate: (role: Role) => unknown\n webhooksUpdate: (payload: { channelId: bigint; guildId: bigint }) => unknown\n botUpdate: (user: User) => unknown\n typingStart: (payload: { guildId: bigint | undefined; channelId: bigint; userId: bigint; timestamp: number; member: Member | undefined }) => unknown\n}\n"],"names":["ShardSocketCloseCodes","createGatewayManager","createRestManager","createLogger","getBotIdFromToken","createBotGatewayHandlers","createBotHelpers","createTransformers","createBot","options","rest","token","applicationId","gateway","events","message","shard","data","bot","raw","id","t","dispatchRequirements","handlers","intents","preferSnakeCase","transformers","logger","name","helpers","start","connection","getSessionInfo","url","totalShards","shards","lastShardId","spawnShards","shutdown","Shutdown","snowflake"],"mappings":"AACA,SAASA,qBAAqB,EAAEC,oBAAoB,QAAQ,sBAAqB;AAEjF,SAASC,iBAAiB,QAAQ,mBAAkB;AAEpD,SAASC,YAAY,EAAEC,iBAAiB,QAAyB,oBAAmB;AACpF,SAASC,wBAAwB,QAAQ,gBAAe;AACxD,SAASC,gBAAgB,QAAyB,eAAc;AAChE,SAASC,kBAAkB,QAA2B,oBAAmB;AAqBzE;;;;;CAKC,GACD,OAAO,SAASC,UAAUC,OAAyB,EAAO;IACxD,IAAI,CAACA,QAAQC,IAAI,EAAED,QAAQC,IAAI,GAAG;QAAEC,OAAOF,QAAQE,KAAK;QAAEC,eAAeH,QAAQG,aAAa;IAAC;IAC/F,IAAI,CAACH,QAAQI,OAAO,EAAEJ,QAAQI,OAAO,GAAG;QAAEF,OAAOF,QAAQE,KAAK;QAAEG,QAAQ,CAAC;IAAE;IAC3E,IAAI,CAACL,QAAQI,OAAO,CAACC,MAAM,CAACC,OAAO,EAAE;QACnCN,QAAQI,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,IAAIK,QAAQ,CAACN,KAAKI,CAAC,CAAsD,GAAGH,KAAKD,MAAMD,MAAMI,EAAE;QACjG;IACF,CAAC;IAEDX,QAAQC,IAAI,CAACC,KAAK,GAAGF,QAAQE,KAAK;IAClCF,QAAQI,OAAO,CAACW,OAAO,GAAGf,QAAQe,OAAO;IACzCf,QAAQI,OAAO,CAACY,eAAe,GAAG,IAAI;IAEtC,MAAML,KAAKhB,kBAAkBK,QAAQE,KAAK;IAE1C,MAAMO,MAAW;QACfE;QACAR,eAAeQ;QACfM,cAAcnB,mBAAmB,CAAC;QAClCgB,UAAUlB,yBAAyB,CAAC;QACpCK,MAAMR,kBAAkBO,QAAQC,IAAI;QACpCG,SAASZ,qBAAqBQ,QAAQI,OAAO;QAC7CC,QAAQL,QAAQK,MAAM,IAAI,CAAC;QAC3Ba,QAAQxB,aAAa;YAAEyB,MAAM;QAAM;QACnC,wBAAwB;QACxBC,SAAS,CAAC;QACV,MAAMC,SAAQ;YACZ,IAAI,CAACrB,QAAQI,OAAO,EAAEkB,YAAY;gBAChCb,IAAIL,OAAO,CAACkB,UAAU,GAAG,MAAMb,IAAIR,IAAI,CAACsB,cAAc;gBAEtD,2CAA2C;gBAC3C,IAAI,CAACvB,QAAQI,OAAO,EAAEoB,KAAKf,IAAIL,OAAO,CAACoB,GAAG,GAAGf,IAAIL,OAAO,CAACkB,UAAU,CAACE,GAAG;gBAEvE,IAAI,CAACxB,QAAQI,OAAO,EAAEqB,aAAahB,IAAIL,OAAO,CAACqB,WAAW,GAAGhB,IAAIL,OAAO,CAACkB,UAAU,CAACI,MAAM;gBAE1F,IAAI,CAAC1B,QAAQI,OAAO,EAAEuB,aAAalB,IAAIL,OAAO,CAACuB,WAAW,GAAGlB,IAAIL,OAAO,CAACkB,UAAU,CAACI,MAAM,GAAG;YAC/F,CAAC;YAED,MAAMjB,IAAIL,OAAO,CAACwB,WAAW;QAC/B;QAEA,MAAMC,YAAW;YACf,OAAO,MAAMpB,IAAIL,OAAO,CAACyB,QAAQ,CAACtC,sBAAsBuC,QAAQ,EAAE;QACpE;IACF;IAEArB,IAAIW,OAAO,GAAGvB,iBAAiBY;IAC/B,IAAIT,QAAQG,aAAa,EAAEM,IAAIN,aAAa,GAAGM,IAAIQ,YAAY,CAACc,SAAS,CAAC/B,QAAQG,aAAa;IAE/F,OAAOM;AACT,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"THREAD_LIST_SYNC.d.ts","sourceRoot":"","sources":["../../../src/handlers/channels/THREAD_LIST_SYNC.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAyB,MAAM,mBAAmB,CAAA;AACrF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAEzC,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAe9F"}
1
+ {"version":3,"file":"THREAD_LIST_SYNC.d.ts","sourceRoot":"","sources":["../../../src/handlers/channels/THREAD_LIST_SYNC.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAyB,MAAM,mBAAmB,CAAA;AACrF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAEzC,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,CAgB9F"}
@@ -1,7 +1,7 @@
1
1
  export async function handleThreadListSync(bot, data) {
2
2
  const payload = data.d;
3
3
  const guildId = bot.transformers.snowflake(payload.guild_id);
4
- return {
4
+ bot.events.threadListSync?.({
5
5
  guildId,
6
6
  channelIds: payload.channel_ids?.map((id)=>bot.transformers.snowflake(id)),
7
7
  threads: payload.threads.map((thread)=>bot.transformers.channel(bot, {
@@ -11,9 +11,10 @@ export async function handleThreadListSync(bot, data) {
11
11
  members: payload.members.map((member)=>({
12
12
  id: member.id ? bot.transformers.snowflake(member.id) : undefined,
13
13
  userId: member.user_id ? bot.transformers.snowflake(member.user_id) : undefined,
14
- joinTimestamp: Date.parse(member.join_timestamp)
14
+ joinTimestamp: Date.parse(member.join_timestamp),
15
+ flags: member.flags
15
16
  }))
16
- };
17
+ });
17
18
  }
18
19
 
19
20
  //# sourceMappingURL=THREAD_LIST_SYNC.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/handlers/channels/THREAD_LIST_SYNC.ts"],"sourcesContent":["import type { DiscordGatewayPayload, DiscordThreadListSync } from '@discordeno/types'\nimport type { Bot } from '../../index.js'\n\nexport async function handleThreadListSync(bot: Bot, data: DiscordGatewayPayload): Promise<any> {\n const payload = data.d as DiscordThreadListSync\n\n const guildId = bot.transformers.snowflake(payload.guild_id)\n\n return {\n guildId,\n channelIds: payload.channel_ids?.map((id) => bot.transformers.snowflake(id)),\n threads: payload.threads.map((thread) => bot.transformers.channel(bot, { channel: thread, guildId })),\n members: payload.members.map((member) => ({\n id: member.id ? bot.transformers.snowflake(member.id) : undefined,\n userId: member.user_id ? bot.transformers.snowflake(member.user_id) : undefined,\n joinTimestamp: Date.parse(member.join_timestamp),\n })),\n }\n}\n"],"names":["handleThreadListSync","bot","data","payload","d","guildId","transformers","snowflake","guild_id","channelIds","channel_ids","map","id","threads","thread","channel","members","member","undefined","userId","user_id","joinTimestamp","Date","parse","join_timestamp"],"mappings":"AAGA,OAAO,eAAeA,qBAAqBC,GAAQ,EAAEC,IAA2B,EAAgB;IAC9F,MAAMC,UAAUD,KAAKE,CAAC;IAEtB,MAAMC,UAAUJ,IAAIK,YAAY,CAACC,SAAS,CAACJ,QAAQK,QAAQ;IAE3D,OAAO;QACLH;QACAI,YAAYN,QAAQO,WAAW,EAAEC,IAAI,CAACC,KAAOX,IAAIK,YAAY,CAACC,SAAS,CAACK;QACxEC,SAASV,QAAQU,OAAO,CAACF,GAAG,CAAC,CAACG,SAAWb,IAAIK,YAAY,CAACS,OAAO,CAACd,KAAK;gBAAEc,SAASD;gBAAQT;YAAQ;QAClGW,SAASb,QAAQa,OAAO,CAACL,GAAG,CAAC,CAACM,SAAY,CAAA;gBACxCL,IAAIK,OAAOL,EAAE,GAAGX,IAAIK,YAAY,CAACC,SAAS,CAACU,OAAOL,EAAE,IAAIM,SAAS;gBACjEC,QAAQF,OAAOG,OAAO,GAAGnB,IAAIK,YAAY,CAACC,SAAS,CAACU,OAAOG,OAAO,IAAIF,SAAS;gBAC/EG,eAAeC,KAAKC,KAAK,CAACN,OAAOO,cAAc;YACjD,CAAA;IACF;AACF,CAAC"}
1
+ {"version":3,"sources":["../../../src/handlers/channels/THREAD_LIST_SYNC.ts"],"sourcesContent":["import type { DiscordGatewayPayload, DiscordThreadListSync } from '@discordeno/types'\nimport type { Bot } from '../../index.js'\n\nexport async function handleThreadListSync(bot: Bot, data: DiscordGatewayPayload): Promise<any> {\n const payload = data.d as DiscordThreadListSync\n\n const guildId = bot.transformers.snowflake(payload.guild_id)\n\n bot.events.threadListSync?.({\n guildId,\n channelIds: payload.channel_ids?.map((id) => bot.transformers.snowflake(id)),\n threads: payload.threads.map((thread) => bot.transformers.channel(bot, { channel: thread, guildId })),\n members: payload.members.map((member) => ({\n id: member.id ? bot.transformers.snowflake(member.id) : undefined,\n userId: member.user_id ? bot.transformers.snowflake(member.user_id) : undefined,\n joinTimestamp: Date.parse(member.join_timestamp),\n flags: member.flags,\n })),\n })\n}\n"],"names":["handleThreadListSync","bot","data","payload","d","guildId","transformers","snowflake","guild_id","events","threadListSync","channelIds","channel_ids","map","id","threads","thread","channel","members","member","undefined","userId","user_id","joinTimestamp","Date","parse","join_timestamp","flags"],"mappings":"AAGA,OAAO,eAAeA,qBAAqBC,GAAQ,EAAEC,IAA2B,EAAgB;IAC9F,MAAMC,UAAUD,KAAKE,CAAC;IAEtB,MAAMC,UAAUJ,IAAIK,YAAY,CAACC,SAAS,CAACJ,QAAQK,QAAQ;IAE3DP,IAAIQ,MAAM,CAACC,cAAc,GAAG;QAC1BL;QACAM,YAAYR,QAAQS,WAAW,EAAEC,IAAI,CAACC,KAAOb,IAAIK,YAAY,CAACC,SAAS,CAACO;QACxEC,SAASZ,QAAQY,OAAO,CAACF,GAAG,CAAC,CAACG,SAAWf,IAAIK,YAAY,CAACW,OAAO,CAAChB,KAAK;gBAAEgB,SAASD;gBAAQX;YAAQ;QAClGa,SAASf,QAAQe,OAAO,CAACL,GAAG,CAAC,CAACM,SAAY,CAAA;gBACxCL,IAAIK,OAAOL,EAAE,GAAGb,IAAIK,YAAY,CAACC,SAAS,CAACY,OAAOL,EAAE,IAAIM,SAAS;gBACjEC,QAAQF,OAAOG,OAAO,GAAGrB,IAAIK,YAAY,CAACC,SAAS,CAACY,OAAOG,OAAO,IAAIF,SAAS;gBAC/EG,eAAeC,KAAKC,KAAK,CAACN,OAAOO,cAAc;gBAC/CC,OAAOR,OAAOQ,KAAK;YACrB,CAAA;IACF;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GUILD_DELETE.d.ts","sourceRoot":"","sources":["../../../src/handlers/guilds/GUILD_DELETE.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAA2B,MAAM,mBAAmB,CAAA;AACvF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAEvC,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7G"}
1
+ {"version":3,"file":"GUILD_DELETE.d.ts","sourceRoot":"","sources":["../../../src/handlers/guilds/GUILD_DELETE.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAA2B,MAAM,mBAAmB,CAAA;AACvF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAEvC,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS7G"}
@@ -1,5 +1,9 @@
1
1
  export async function handleGuildDelete(bot, data, shardId) {
2
2
  const payload = data.d;
3
+ if (payload.unavailable) {
4
+ bot.events.guildUnavailable?.(bot.transformers.snowflake(payload.id), shardId);
5
+ return;
6
+ }
3
7
  bot.events.guildDelete?.(bot.transformers.snowflake(payload.id), shardId);
4
8
  }
5
9
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/handlers/guilds/GUILD_DELETE.ts"],"sourcesContent":["import type { DiscordGatewayPayload, DiscordUnavailableGuild } from '@discordeno/types'\nimport type { Bot } from '../../bot.js'\n\nexport async function handleGuildDelete(bot: Bot, data: DiscordGatewayPayload, shardId: number): Promise<void> {\n const payload = data.d as DiscordUnavailableGuild\n bot.events.guildDelete?.(bot.transformers.snowflake(payload.id), shardId)\n}\n"],"names":["handleGuildDelete","bot","data","shardId","payload","d","events","guildDelete","transformers","snowflake","id"],"mappings":"AAGA,OAAO,eAAeA,kBAAkBC,GAAQ,EAAEC,IAA2B,EAAEC,OAAe,EAAiB;IAC7G,MAAMC,UAAUF,KAAKG,CAAC;IACtBJ,IAAIK,MAAM,CAACC,WAAW,GAAGN,IAAIO,YAAY,CAACC,SAAS,CAACL,QAAQM,EAAE,GAAGP;AACnE,CAAC"}
1
+ {"version":3,"sources":["../../../src/handlers/guilds/GUILD_DELETE.ts"],"sourcesContent":["import type { DiscordGatewayPayload, DiscordUnavailableGuild } from '@discordeno/types'\nimport type { Bot } from '../../bot.js'\n\nexport async function handleGuildDelete(bot: Bot, data: DiscordGatewayPayload, shardId: number): Promise<void> {\n const payload = data.d as DiscordUnavailableGuild\n\n if (payload.unavailable) {\n bot.events.guildUnavailable?.(bot.transformers.snowflake(payload.id), shardId)\n return\n }\n\n bot.events.guildDelete?.(bot.transformers.snowflake(payload.id), shardId)\n}\n"],"names":["handleGuildDelete","bot","data","shardId","payload","d","unavailable","events","guildUnavailable","transformers","snowflake","id","guildDelete"],"mappings":"AAGA,OAAO,eAAeA,kBAAkBC,GAAQ,EAAEC,IAA2B,EAAEC,OAAe,EAAiB;IAC7G,MAAMC,UAAUF,KAAKG,CAAC;IAEtB,IAAID,QAAQE,WAAW,EAAE;QACvBL,IAAIM,MAAM,CAACC,gBAAgB,GAAGP,IAAIQ,YAAY,CAACC,SAAS,CAACN,QAAQO,EAAE,GAAGR;QACtE;IACF,CAAC;IAEDF,IAAIM,MAAM,CAACK,WAAW,GAAGX,IAAIQ,YAAY,CAACC,SAAS,CAACN,QAAQO,EAAE,GAAGR;AACnE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MESSAGE_REACTION_ADD.d.ts","sourceRoot":"","sources":["../../../src/handlers/messages/MESSAGE_REACTION_ADD.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAA6B,MAAM,mBAAmB,CAAA;AACzF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAEzC,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAcnG"}
1
+ {"version":3,"file":"MESSAGE_REACTION_ADD.d.ts","sourceRoot":"","sources":["../../../src/handlers/messages/MESSAGE_REACTION_ADD.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAA6B,MAAM,mBAAmB,CAAA;AACzF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AAEzC,wBAAsB,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAenG"}
@@ -9,7 +9,8 @@ export async function handleMessageReactionAdd(bot, data) {
9
9
  guildId,
10
10
  member: payload.member && guildId ? bot.transformers.member(bot, payload.member, guildId, userId) : undefined,
11
11
  user: payload.member ? bot.transformers.user(bot, payload.member.user) : undefined,
12
- emoji: bot.transformers.emoji(bot, payload.emoji)
12
+ emoji: bot.transformers.emoji(bot, payload.emoji),
13
+ messageAuthorId: payload.message_author_id ? bot.transformers.snowflake(payload.message_author_id) : undefined
13
14
  });
14
15
  }
15
16
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/handlers/messages/MESSAGE_REACTION_ADD.ts"],"sourcesContent":["import type { DiscordGatewayPayload, DiscordMessageReactionAdd } from '@discordeno/types'\nimport type { Bot } from '../../index.js'\n\nexport async function handleMessageReactionAdd(bot: Bot, data: DiscordGatewayPayload): Promise<void> {\n const payload = data.d as DiscordMessageReactionAdd\n\n const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined\n const userId = bot.transformers.snowflake(payload.user_id)\n bot.events.reactionAdd?.({\n userId,\n channelId: bot.transformers.snowflake(payload.channel_id),\n messageId: bot.transformers.snowflake(payload.message_id),\n guildId,\n member: payload.member && guildId ? bot.transformers.member(bot, payload.member, guildId, userId) : undefined,\n user: payload.member ? bot.transformers.user(bot, payload.member.user) : undefined,\n emoji: bot.transformers.emoji(bot, payload.emoji),\n })\n}\n"],"names":["handleMessageReactionAdd","bot","data","payload","d","guildId","guild_id","transformers","snowflake","undefined","userId","user_id","events","reactionAdd","channelId","channel_id","messageId","message_id","member","user","emoji"],"mappings":"AAGA,OAAO,eAAeA,yBAAyBC,GAAQ,EAAEC,IAA2B,EAAiB;IACnG,MAAMC,UAAUD,KAAKE,CAAC;IAEtB,MAAMC,UAAUF,QAAQG,QAAQ,GAAGL,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQG,QAAQ,IAAIG,SAAS;IAC3F,MAAMC,SAAST,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQQ,OAAO;IACzDV,IAAIW,MAAM,CAACC,WAAW,GAAG;QACvBH;QACAI,WAAWb,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQY,UAAU;QACxDC,WAAWf,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQc,UAAU;QACxDZ;QACAa,QAAQf,QAAQe,MAAM,IAAIb,UAAUJ,IAAIM,YAAY,CAACW,MAAM,CAACjB,KAAKE,QAAQe,MAAM,EAAEb,SAASK,UAAUD,SAAS;QAC7GU,MAAMhB,QAAQe,MAAM,GAAGjB,IAAIM,YAAY,CAACY,IAAI,CAAClB,KAAKE,QAAQe,MAAM,CAACC,IAAI,IAAIV,SAAS;QAClFW,OAAOnB,IAAIM,YAAY,CAACa,KAAK,CAACnB,KAAKE,QAAQiB,KAAK;IAClD;AACF,CAAC"}
1
+ {"version":3,"sources":["../../../src/handlers/messages/MESSAGE_REACTION_ADD.ts"],"sourcesContent":["import type { DiscordGatewayPayload, DiscordMessageReactionAdd } from '@discordeno/types'\nimport type { Bot } from '../../index.js'\n\nexport async function handleMessageReactionAdd(bot: Bot, data: DiscordGatewayPayload): Promise<void> {\n const payload = data.d as DiscordMessageReactionAdd\n\n const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined\n const userId = bot.transformers.snowflake(payload.user_id)\n bot.events.reactionAdd?.({\n userId,\n channelId: bot.transformers.snowflake(payload.channel_id),\n messageId: bot.transformers.snowflake(payload.message_id),\n guildId,\n member: payload.member && guildId ? bot.transformers.member(bot, payload.member, guildId, userId) : undefined,\n user: payload.member ? bot.transformers.user(bot, payload.member.user) : undefined,\n emoji: bot.transformers.emoji(bot, payload.emoji),\n messageAuthorId: payload.message_author_id ? bot.transformers.snowflake(payload.message_author_id) : undefined,\n })\n}\n"],"names":["handleMessageReactionAdd","bot","data","payload","d","guildId","guild_id","transformers","snowflake","undefined","userId","user_id","events","reactionAdd","channelId","channel_id","messageId","message_id","member","user","emoji","messageAuthorId","message_author_id"],"mappings":"AAGA,OAAO,eAAeA,yBAAyBC,GAAQ,EAAEC,IAA2B,EAAiB;IACnG,MAAMC,UAAUD,KAAKE,CAAC;IAEtB,MAAMC,UAAUF,QAAQG,QAAQ,GAAGL,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQG,QAAQ,IAAIG,SAAS;IAC3F,MAAMC,SAAST,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQQ,OAAO;IACzDV,IAAIW,MAAM,CAACC,WAAW,GAAG;QACvBH;QACAI,WAAWb,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQY,UAAU;QACxDC,WAAWf,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQc,UAAU;QACxDZ;QACAa,QAAQf,QAAQe,MAAM,IAAIb,UAAUJ,IAAIM,YAAY,CAACW,MAAM,CAACjB,KAAKE,QAAQe,MAAM,EAAEb,SAASK,UAAUD,SAAS;QAC7GU,MAAMhB,QAAQe,MAAM,GAAGjB,IAAIM,YAAY,CAACY,IAAI,CAAClB,KAAKE,QAAQe,MAAM,CAACC,IAAI,IAAIV,SAAS;QAClFW,OAAOnB,IAAIM,YAAY,CAACa,KAAK,CAACnB,KAAKE,QAAQiB,KAAK;QAChDC,iBAAiBlB,QAAQmB,iBAAiB,GAAGrB,IAAIM,YAAY,CAACC,SAAS,CAACL,QAAQmB,iBAAiB,IAAIb,SAAS;IAChH;AACF,CAAC"}
package/dist/handlers.js CHANGED
@@ -36,7 +36,7 @@ export function createBotGatewayHandlers(options) {
36
36
  INTEGRATION_UPDATE: options.INTEGRATION_UPDATE ?? handlers.handleIntegrationUpdate,
37
37
  INTEGRATION_DELETE: options.INTEGRATION_DELETE ?? handlers.handleIntegrationDelete,
38
38
  INVITE_CREATE: options.INVITE_CREATE ?? handlers.handleInviteCreate,
39
- INVITE_DELETE: options.INVITE_DELETE ?? handlers.handleInviteCreate,
39
+ INVITE_DELETE: options.INVITE_DELETE ?? handlers.handleInviteDelete,
40
40
  MESSAGE_CREATE: options.MESSAGE_CREATE ?? handlers.handleMessageCreate,
41
41
  MESSAGE_DELETE_BULK: options.MESSAGE_DELETE_BULK ?? handlers.handleMessageDeleteBulk,
42
42
  MESSAGE_DELETE: options.MESSAGE_DELETE ?? handlers.handleMessageDelete,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/handlers.ts"],"sourcesContent":["import * as handlers from './handlers/index.js'\nimport type { Bot, DiscordGatewayPayload, GatewayDispatchEventNames } from './index.js'\nimport type { BotGatewayHandlerOptions } from './typings.js'\n\nexport function createBotGatewayHandlers(\n options: Partial<BotGatewayHandlerOptions>,\n): Record<GatewayDispatchEventNames, (bot: Bot, data: DiscordGatewayPayload, shardId: number) => any> {\n return {\n APPLICATION_COMMAND_PERMISSIONS_UPDATE: options.APPLICATION_COMMAND_PERMISSIONS_UPDATE ?? handlers.handleApplicationCommandPermissionsUpdate,\n AUTO_MODERATION_ACTION_EXECUTION: options.AUTO_MODERATION_ACTION_EXECUTION ?? handlers.handleAutoModerationActionExecution,\n AUTO_MODERATION_RULE_CREATE: options.AUTO_MODERATION_RULE_CREATE ?? handlers.handleAutoModerationRuleCreate,\n AUTO_MODERATION_RULE_DELETE: options.AUTO_MODERATION_RULE_DELETE ?? handlers.handleAutoModerationRuleDelete,\n AUTO_MODERATION_RULE_UPDATE: options.AUTO_MODERATION_RULE_UPDATE ?? handlers.handleAutoModerationRuleUpdate,\n CHANNEL_CREATE: options.CHANNEL_CREATE ?? handlers.handleChannelCreate,\n CHANNEL_DELETE: options.CHANNEL_DELETE ?? handlers.handleChannelDelete,\n CHANNEL_PINS_UPDATE: options.CHANNEL_PINS_UPDATE ?? handlers.handleChannelPinsUpdate,\n CHANNEL_UPDATE: options.CHANNEL_UPDATE ?? handlers.handleChannelUpdate,\n GUILD_AUDIT_LOG_ENTRY_CREATE: options.GUILD_AUDIT_LOG_ENTRY_CREATE ?? handlers.handleGuildAuditLogEntryCreate,\n GUILD_BAN_ADD: options.GUILD_BAN_ADD ?? handlers.handleGuildBanAdd,\n GUILD_BAN_REMOVE: options.GUILD_BAN_REMOVE ?? handlers.handleGuildBanRemove,\n GUILD_CREATE: options.GUILD_CREATE ?? handlers.handleGuildCreate,\n GUILD_DELETE: options.GUILD_DELETE ?? handlers.handleGuildDelete,\n GUILD_EMOJIS_UPDATE: options.GUILD_EMOJIS_UPDATE ?? handlers.handleGuildEmojisUpdate,\n GUILD_INTEGRATIONS_UPDATE: options.GUILD_INTEGRATIONS_UPDATE ?? handlers.handleGuildIntegrationsUpdate,\n GUILD_MEMBER_ADD: options.GUILD_MEMBER_ADD ?? handlers.handleGuildMemberAdd,\n GUILD_MEMBER_REMOVE: options.GUILD_MEMBER_REMOVE ?? handlers.handleGuildMemberRemove,\n GUILD_MEMBER_UPDATE: options.GUILD_MEMBER_UPDATE ?? handlers.handleGuildMemberUpdate,\n GUILD_MEMBERS_CHUNK: options.GUILD_MEMBERS_CHUNK ?? handlers.handleGuildMembersChunk,\n GUILD_ROLE_CREATE: options.GUILD_ROLE_CREATE ?? handlers.handleGuildRoleCreate,\n GUILD_ROLE_DELETE: options.GUILD_ROLE_DELETE ?? handlers.handleGuildRoleDelete,\n GUILD_ROLE_UPDATE: options.GUILD_ROLE_UPDATE ?? handlers.handleGuildRoleUpdate,\n GUILD_SCHEDULED_EVENT_CREATE: options.GUILD_SCHEDULED_EVENT_CREATE ?? handlers.handleGuildScheduledEventCreate,\n GUILD_SCHEDULED_EVENT_DELETE: options.GUILD_SCHEDULED_EVENT_DELETE ?? handlers.handleGuildScheduledEventDelete,\n GUILD_SCHEDULED_EVENT_UPDATE: options.GUILD_SCHEDULED_EVENT_UPDATE ?? handlers.handleGuildScheduledEventUpdate,\n GUILD_SCHEDULED_EVENT_USER_ADD: options.GUILD_SCHEDULED_EVENT_USER_ADD ?? handlers.handleGuildScheduledEventUserAdd,\n GUILD_SCHEDULED_EVENT_USER_REMOVE: options.GUILD_SCHEDULED_EVENT_USER_REMOVE ?? handlers.handleGuildScheduledEventUserRemove,\n GUILD_STICKERS_UPDATE: options.GUILD_STICKERS_UPDATE ?? handlers.handleGuildStickersUpdate,\n GUILD_UPDATE: options.GUILD_UPDATE ?? handlers.handleGuildUpdate,\n INTERACTION_CREATE: options.INTERACTION_CREATE ?? handlers.handleInteractionCreate,\n INTEGRATION_CREATE: options.INTEGRATION_CREATE ?? handlers.handleIntegrationCreate,\n INTEGRATION_UPDATE: options.INTEGRATION_UPDATE ?? handlers.handleIntegrationUpdate,\n INTEGRATION_DELETE: options.INTEGRATION_DELETE ?? handlers.handleIntegrationDelete,\n INVITE_CREATE: options.INVITE_CREATE ?? handlers.handleInviteCreate,\n INVITE_DELETE: options.INVITE_DELETE ?? handlers.handleInviteCreate,\n MESSAGE_CREATE: options.MESSAGE_CREATE ?? handlers.handleMessageCreate,\n MESSAGE_DELETE_BULK: options.MESSAGE_DELETE_BULK ?? handlers.handleMessageDeleteBulk,\n MESSAGE_DELETE: options.MESSAGE_DELETE ?? handlers.handleMessageDelete,\n MESSAGE_REACTION_ADD: options.MESSAGE_REACTION_ADD ?? handlers.handleMessageReactionAdd,\n MESSAGE_REACTION_REMOVE_ALL: options.MESSAGE_REACTION_REMOVE_ALL ?? handlers.handleMessageReactionRemoveAll,\n MESSAGE_REACTION_REMOVE_EMOJI: options.MESSAGE_REACTION_REMOVE_EMOJI ?? handlers.handleMessageReactionRemoveEmoji,\n MESSAGE_REACTION_REMOVE: options.MESSAGE_REACTION_REMOVE ?? handlers.handleMessageReactionRemove,\n MESSAGE_UPDATE: options.MESSAGE_UPDATE ?? handlers.handleMessageUpdate,\n PRESENCE_UPDATE: options.PRESENCE_UPDATE ?? handlers.handlePresenceUpdate,\n READY: options.READY ?? handlers.handleReady,\n STAGE_INSTANCE_CREATE: options.STAGE_INSTANCE_CREATE ?? handlers.handleStageInstanceCreate,\n STAGE_INSTANCE_DELETE: options.STAGE_INSTANCE_DELETE ?? handlers.handleStageInstanceDelete,\n STAGE_INSTANCE_UPDATE: options.STAGE_INSTANCE_UPDATE ?? handlers.handleStageInstanceUpdate,\n THREAD_CREATE: options.THREAD_CREATE ?? handlers.handleThreadCreate,\n THREAD_DELETE: options.THREAD_DELETE ?? handlers.handleThreadDelete,\n THREAD_UPDATE: options.THREAD_UPDATE ?? handlers.handleThreadUpdate,\n THREAD_LIST_SYNC: options.THREAD_LIST_SYNC ?? handlers.handleThreadListSync,\n THREAD_MEMBER_UPDATE: options.THREAD_MEMBERS_UPDATE ?? handlers.handleThreadMembersUpdate,\n THREAD_MEMBERS_UPDATE: options.THREAD_MEMBERS_UPDATE ?? handlers.handleThreadMembersUpdate,\n TYPING_START: options.TYPING_START ?? handlers.handleTypingStart,\n USER_UPDATE: options.USER_UPDATE ?? handlers.handleUserUpdate,\n VOICE_SERVER_UPDATE: options.VOICE_SERVER_UPDATE ?? handlers.handleVoiceServerUpdate,\n VOICE_STATE_UPDATE: options.VOICE_STATE_UPDATE ?? handlers.handleVoiceStateUpdate,\n WEBHOOKS_UPDATE: options.WEBHOOKS_UPDATE ?? handlers.handleWebhooksUpdate,\n }\n}\n\nexport interface GatewayHandlers extends ReturnType<typeof createBotGatewayHandlers> {}\n"],"names":["handlers","createBotGatewayHandlers","options","APPLICATION_COMMAND_PERMISSIONS_UPDATE","handleApplicationCommandPermissionsUpdate","AUTO_MODERATION_ACTION_EXECUTION","handleAutoModerationActionExecution","AUTO_MODERATION_RULE_CREATE","handleAutoModerationRuleCreate","AUTO_MODERATION_RULE_DELETE","handleAutoModerationRuleDelete","AUTO_MODERATION_RULE_UPDATE","handleAutoModerationRuleUpdate","CHANNEL_CREATE","handleChannelCreate","CHANNEL_DELETE","handleChannelDelete","CHANNEL_PINS_UPDATE","handleChannelPinsUpdate","CHANNEL_UPDATE","handleChannelUpdate","GUILD_AUDIT_LOG_ENTRY_CREATE","handleGuildAuditLogEntryCreate","GUILD_BAN_ADD","handleGuildBanAdd","GUILD_BAN_REMOVE","handleGuildBanRemove","GUILD_CREATE","handleGuildCreate","GUILD_DELETE","handleGuildDelete","GUILD_EMOJIS_UPDATE","handleGuildEmojisUpdate","GUILD_INTEGRATIONS_UPDATE","handleGuildIntegrationsUpdate","GUILD_MEMBER_ADD","handleGuildMemberAdd","GUILD_MEMBER_REMOVE","handleGuildMemberRemove","GUILD_MEMBER_UPDATE","handleGuildMemberUpdate","GUILD_MEMBERS_CHUNK","handleGuildMembersChunk","GUILD_ROLE_CREATE","handleGuildRoleCreate","GUILD_ROLE_DELETE","handleGuildRoleDelete","GUILD_ROLE_UPDATE","handleGuildRoleUpdate","GUILD_SCHEDULED_EVENT_CREATE","handleGuildScheduledEventCreate","GUILD_SCHEDULED_EVENT_DELETE","handleGuildScheduledEventDelete","GUILD_SCHEDULED_EVENT_UPDATE","handleGuildScheduledEventUpdate","GUILD_SCHEDULED_EVENT_USER_ADD","handleGuildScheduledEventUserAdd","GUILD_SCHEDULED_EVENT_USER_REMOVE","handleGuildScheduledEventUserRemove","GUILD_STICKERS_UPDATE","handleGuildStickersUpdate","GUILD_UPDATE","handleGuildUpdate","INTERACTION_CREATE","handleInteractionCreate","INTEGRATION_CREATE","handleIntegrationCreate","INTEGRATION_UPDATE","handleIntegrationUpdate","INTEGRATION_DELETE","handleIntegrationDelete","INVITE_CREATE","handleInviteCreate","INVITE_DELETE","MESSAGE_CREATE","handleMessageCreate","MESSAGE_DELETE_BULK","handleMessageDeleteBulk","MESSAGE_DELETE","handleMessageDelete","MESSAGE_REACTION_ADD","handleMessageReactionAdd","MESSAGE_REACTION_REMOVE_ALL","handleMessageReactionRemoveAll","MESSAGE_REACTION_REMOVE_EMOJI","handleMessageReactionRemoveEmoji","MESSAGE_REACTION_REMOVE","handleMessageReactionRemove","MESSAGE_UPDATE","handleMessageUpdate","PRESENCE_UPDATE","handlePresenceUpdate","READY","handleReady","STAGE_INSTANCE_CREATE","handleStageInstanceCreate","STAGE_INSTANCE_DELETE","handleStageInstanceDelete","STAGE_INSTANCE_UPDATE","handleStageInstanceUpdate","THREAD_CREATE","handleThreadCreate","THREAD_DELETE","handleThreadDelete","THREAD_UPDATE","handleThreadUpdate","THREAD_LIST_SYNC","handleThreadListSync","THREAD_MEMBER_UPDATE","THREAD_MEMBERS_UPDATE","handleThreadMembersUpdate","TYPING_START","handleTypingStart","USER_UPDATE","handleUserUpdate","VOICE_SERVER_UPDATE","handleVoiceServerUpdate","VOICE_STATE_UPDATE","handleVoiceStateUpdate","WEBHOOKS_UPDATE","handleWebhooksUpdate"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/handlers.ts"],"sourcesContent":["import * as handlers from './handlers/index.js'\nimport type { Bot, DiscordGatewayPayload, GatewayDispatchEventNames } from './index.js'\nimport type { BotGatewayHandlerOptions } from './typings.js'\n\nexport function createBotGatewayHandlers(\n options: Partial<BotGatewayHandlerOptions>,\n): Record<GatewayDispatchEventNames, (bot: Bot, data: DiscordGatewayPayload, shardId: number) => any> {\n return {\n APPLICATION_COMMAND_PERMISSIONS_UPDATE: options.APPLICATION_COMMAND_PERMISSIONS_UPDATE ?? handlers.handleApplicationCommandPermissionsUpdate,\n AUTO_MODERATION_ACTION_EXECUTION: options.AUTO_MODERATION_ACTION_EXECUTION ?? handlers.handleAutoModerationActionExecution,\n AUTO_MODERATION_RULE_CREATE: options.AUTO_MODERATION_RULE_CREATE ?? handlers.handleAutoModerationRuleCreate,\n AUTO_MODERATION_RULE_DELETE: options.AUTO_MODERATION_RULE_DELETE ?? handlers.handleAutoModerationRuleDelete,\n AUTO_MODERATION_RULE_UPDATE: options.AUTO_MODERATION_RULE_UPDATE ?? handlers.handleAutoModerationRuleUpdate,\n CHANNEL_CREATE: options.CHANNEL_CREATE ?? handlers.handleChannelCreate,\n CHANNEL_DELETE: options.CHANNEL_DELETE ?? handlers.handleChannelDelete,\n CHANNEL_PINS_UPDATE: options.CHANNEL_PINS_UPDATE ?? handlers.handleChannelPinsUpdate,\n CHANNEL_UPDATE: options.CHANNEL_UPDATE ?? handlers.handleChannelUpdate,\n GUILD_AUDIT_LOG_ENTRY_CREATE: options.GUILD_AUDIT_LOG_ENTRY_CREATE ?? handlers.handleGuildAuditLogEntryCreate,\n GUILD_BAN_ADD: options.GUILD_BAN_ADD ?? handlers.handleGuildBanAdd,\n GUILD_BAN_REMOVE: options.GUILD_BAN_REMOVE ?? handlers.handleGuildBanRemove,\n GUILD_CREATE: options.GUILD_CREATE ?? handlers.handleGuildCreate,\n GUILD_DELETE: options.GUILD_DELETE ?? handlers.handleGuildDelete,\n GUILD_EMOJIS_UPDATE: options.GUILD_EMOJIS_UPDATE ?? handlers.handleGuildEmojisUpdate,\n GUILD_INTEGRATIONS_UPDATE: options.GUILD_INTEGRATIONS_UPDATE ?? handlers.handleGuildIntegrationsUpdate,\n GUILD_MEMBER_ADD: options.GUILD_MEMBER_ADD ?? handlers.handleGuildMemberAdd,\n GUILD_MEMBER_REMOVE: options.GUILD_MEMBER_REMOVE ?? handlers.handleGuildMemberRemove,\n GUILD_MEMBER_UPDATE: options.GUILD_MEMBER_UPDATE ?? handlers.handleGuildMemberUpdate,\n GUILD_MEMBERS_CHUNK: options.GUILD_MEMBERS_CHUNK ?? handlers.handleGuildMembersChunk,\n GUILD_ROLE_CREATE: options.GUILD_ROLE_CREATE ?? handlers.handleGuildRoleCreate,\n GUILD_ROLE_DELETE: options.GUILD_ROLE_DELETE ?? handlers.handleGuildRoleDelete,\n GUILD_ROLE_UPDATE: options.GUILD_ROLE_UPDATE ?? handlers.handleGuildRoleUpdate,\n GUILD_SCHEDULED_EVENT_CREATE: options.GUILD_SCHEDULED_EVENT_CREATE ?? handlers.handleGuildScheduledEventCreate,\n GUILD_SCHEDULED_EVENT_DELETE: options.GUILD_SCHEDULED_EVENT_DELETE ?? handlers.handleGuildScheduledEventDelete,\n GUILD_SCHEDULED_EVENT_UPDATE: options.GUILD_SCHEDULED_EVENT_UPDATE ?? handlers.handleGuildScheduledEventUpdate,\n GUILD_SCHEDULED_EVENT_USER_ADD: options.GUILD_SCHEDULED_EVENT_USER_ADD ?? handlers.handleGuildScheduledEventUserAdd,\n GUILD_SCHEDULED_EVENT_USER_REMOVE: options.GUILD_SCHEDULED_EVENT_USER_REMOVE ?? handlers.handleGuildScheduledEventUserRemove,\n GUILD_STICKERS_UPDATE: options.GUILD_STICKERS_UPDATE ?? handlers.handleGuildStickersUpdate,\n GUILD_UPDATE: options.GUILD_UPDATE ?? handlers.handleGuildUpdate,\n INTERACTION_CREATE: options.INTERACTION_CREATE ?? handlers.handleInteractionCreate,\n INTEGRATION_CREATE: options.INTEGRATION_CREATE ?? handlers.handleIntegrationCreate,\n INTEGRATION_UPDATE: options.INTEGRATION_UPDATE ?? handlers.handleIntegrationUpdate,\n INTEGRATION_DELETE: options.INTEGRATION_DELETE ?? handlers.handleIntegrationDelete,\n INVITE_CREATE: options.INVITE_CREATE ?? handlers.handleInviteCreate,\n INVITE_DELETE: options.INVITE_DELETE ?? handlers.handleInviteDelete,\n MESSAGE_CREATE: options.MESSAGE_CREATE ?? handlers.handleMessageCreate,\n MESSAGE_DELETE_BULK: options.MESSAGE_DELETE_BULK ?? handlers.handleMessageDeleteBulk,\n MESSAGE_DELETE: options.MESSAGE_DELETE ?? handlers.handleMessageDelete,\n MESSAGE_REACTION_ADD: options.MESSAGE_REACTION_ADD ?? handlers.handleMessageReactionAdd,\n MESSAGE_REACTION_REMOVE_ALL: options.MESSAGE_REACTION_REMOVE_ALL ?? handlers.handleMessageReactionRemoveAll,\n MESSAGE_REACTION_REMOVE_EMOJI: options.MESSAGE_REACTION_REMOVE_EMOJI ?? handlers.handleMessageReactionRemoveEmoji,\n MESSAGE_REACTION_REMOVE: options.MESSAGE_REACTION_REMOVE ?? handlers.handleMessageReactionRemove,\n MESSAGE_UPDATE: options.MESSAGE_UPDATE ?? handlers.handleMessageUpdate,\n PRESENCE_UPDATE: options.PRESENCE_UPDATE ?? handlers.handlePresenceUpdate,\n READY: options.READY ?? handlers.handleReady,\n STAGE_INSTANCE_CREATE: options.STAGE_INSTANCE_CREATE ?? handlers.handleStageInstanceCreate,\n STAGE_INSTANCE_DELETE: options.STAGE_INSTANCE_DELETE ?? handlers.handleStageInstanceDelete,\n STAGE_INSTANCE_UPDATE: options.STAGE_INSTANCE_UPDATE ?? handlers.handleStageInstanceUpdate,\n THREAD_CREATE: options.THREAD_CREATE ?? handlers.handleThreadCreate,\n THREAD_DELETE: options.THREAD_DELETE ?? handlers.handleThreadDelete,\n THREAD_UPDATE: options.THREAD_UPDATE ?? handlers.handleThreadUpdate,\n THREAD_LIST_SYNC: options.THREAD_LIST_SYNC ?? handlers.handleThreadListSync,\n THREAD_MEMBER_UPDATE: options.THREAD_MEMBERS_UPDATE ?? handlers.handleThreadMembersUpdate,\n THREAD_MEMBERS_UPDATE: options.THREAD_MEMBERS_UPDATE ?? handlers.handleThreadMembersUpdate,\n TYPING_START: options.TYPING_START ?? handlers.handleTypingStart,\n USER_UPDATE: options.USER_UPDATE ?? handlers.handleUserUpdate,\n VOICE_SERVER_UPDATE: options.VOICE_SERVER_UPDATE ?? handlers.handleVoiceServerUpdate,\n VOICE_STATE_UPDATE: options.VOICE_STATE_UPDATE ?? handlers.handleVoiceStateUpdate,\n WEBHOOKS_UPDATE: options.WEBHOOKS_UPDATE ?? handlers.handleWebhooksUpdate,\n }\n}\n\nexport interface GatewayHandlers extends ReturnType<typeof createBotGatewayHandlers> {}\n"],"names":["handlers","createBotGatewayHandlers","options","APPLICATION_COMMAND_PERMISSIONS_UPDATE","handleApplicationCommandPermissionsUpdate","AUTO_MODERATION_ACTION_EXECUTION","handleAutoModerationActionExecution","AUTO_MODERATION_RULE_CREATE","handleAutoModerationRuleCreate","AUTO_MODERATION_RULE_DELETE","handleAutoModerationRuleDelete","AUTO_MODERATION_RULE_UPDATE","handleAutoModerationRuleUpdate","CHANNEL_CREATE","handleChannelCreate","CHANNEL_DELETE","handleChannelDelete","CHANNEL_PINS_UPDATE","handleChannelPinsUpdate","CHANNEL_UPDATE","handleChannelUpdate","GUILD_AUDIT_LOG_ENTRY_CREATE","handleGuildAuditLogEntryCreate","GUILD_BAN_ADD","handleGuildBanAdd","GUILD_BAN_REMOVE","handleGuildBanRemove","GUILD_CREATE","handleGuildCreate","GUILD_DELETE","handleGuildDelete","GUILD_EMOJIS_UPDATE","handleGuildEmojisUpdate","GUILD_INTEGRATIONS_UPDATE","handleGuildIntegrationsUpdate","GUILD_MEMBER_ADD","handleGuildMemberAdd","GUILD_MEMBER_REMOVE","handleGuildMemberRemove","GUILD_MEMBER_UPDATE","handleGuildMemberUpdate","GUILD_MEMBERS_CHUNK","handleGuildMembersChunk","GUILD_ROLE_CREATE","handleGuildRoleCreate","GUILD_ROLE_DELETE","handleGuildRoleDelete","GUILD_ROLE_UPDATE","handleGuildRoleUpdate","GUILD_SCHEDULED_EVENT_CREATE","handleGuildScheduledEventCreate","GUILD_SCHEDULED_EVENT_DELETE","handleGuildScheduledEventDelete","GUILD_SCHEDULED_EVENT_UPDATE","handleGuildScheduledEventUpdate","GUILD_SCHEDULED_EVENT_USER_ADD","handleGuildScheduledEventUserAdd","GUILD_SCHEDULED_EVENT_USER_REMOVE","handleGuildScheduledEventUserRemove","GUILD_STICKERS_UPDATE","handleGuildStickersUpdate","GUILD_UPDATE","handleGuildUpdate","INTERACTION_CREATE","handleInteractionCreate","INTEGRATION_CREATE","handleIntegrationCreate","INTEGRATION_UPDATE","handleIntegrationUpdate","INTEGRATION_DELETE","handleIntegrationDelete","INVITE_CREATE","handleInviteCreate","INVITE_DELETE","handleInviteDelete","MESSAGE_CREATE","handleMessageCreate","MESSAGE_DELETE_BULK","handleMessageDeleteBulk","MESSAGE_DELETE","handleMessageDelete","MESSAGE_REACTION_ADD","handleMessageReactionAdd","MESSAGE_REACTION_REMOVE_ALL","handleMessageReactionRemoveAll","MESSAGE_REACTION_REMOVE_EMOJI","handleMessageReactionRemoveEmoji","MESSAGE_REACTION_REMOVE","handleMessageReactionRemove","MESSAGE_UPDATE","handleMessageUpdate","PRESENCE_UPDATE","handlePresenceUpdate","READY","handleReady","STAGE_INSTANCE_CREATE","handleStageInstanceCreate","STAGE_INSTANCE_DELETE","handleStageInstanceDelete","STAGE_INSTANCE_UPDATE","handleStageInstanceUpdate","THREAD_CREATE","handleThreadCreate","THREAD_DELETE","handleThreadDelete","THREAD_UPDATE","handleThreadUpdate","THREAD_LIST_SYNC","handleThreadListSync","THREAD_MEMBER_UPDATE","THREAD_MEMBERS_UPDATE","handleThreadMembersUpdate","TYPING_START","handleTypingStart","USER_UPDATE","handleUserUpdate","VOICE_SERVER_UPDATE","handleVoiceServerUpdate","VOICE_STATE_UPDATE","handleVoiceStateUpdate","WEBHOOKS_UPDATE","handleWebhooksUpdate"],"mappings":"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"}
@@ -33,6 +33,7 @@ export declare function transformApplication(bot: Bot, payload: DiscordApplicati
33
33
  remove: (bits: number) => import("./toggles/user.js").UserToggles;
34
34
  toJSON: () => number;
35
35
  } | undefined;
36
+ globalName?: string | undefined;
36
37
  premiumType?: import("@discordeno/types/dist/shared.js").PremiumTypes | undefined;
37
38
  publicFlags?: {
38
39
  bitfield: number;
@@ -1 +1 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/transformers/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,GAAG,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAIjF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BzE;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU,CAAC,OAAO,oBAAoB,CAAC;CAAG"}
1
+ {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/transformers/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,GAAG,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAIjF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0BzE;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU,CAAC,OAAO,oBAAoB,CAAC;CAAG"}
@@ -1,5 +1,5 @@
1
1
  import type { DiscordAuditLogEntry } from '@discordeno/types';
2
- import type { Bot } from '../index.js';
2
+ import { type Bot } from '../index.js';
3
3
  export declare function transformAuditLogEntry(bot: Bot, payload: DiscordAuditLogEntry): {
4
4
  options?: {
5
5
  id?: bigint | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"auditLogEntry.d.ts","sourceRoot":"","sources":["../../src/transformers/auditLogEntry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAItC,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgI7E;AAED,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,OAAO,sBAAsB,CAAC;CAAG"}
1
+ {"version":3,"file":"auditLogEntry.d.ts","sourceRoot":"","sources":["../../src/transformers/auditLogEntry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAoB,KAAK,GAAG,EAAE,MAAM,aAAa,CAAA;AAIxD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqI7E;AAED,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,OAAO,sBAAsB,CAAC;CAAG"}
@@ -1,3 +1,4 @@
1
+ import { iconHashToBigInt } from '../index.js';
1
2
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
2
3
  export function transformAuditLogEntry(bot, payload) {
3
4
  const auditLogEntry = {
@@ -17,13 +18,8 @@ export function transformAuditLogEntry(bot, payload) {
17
18
  name: val?.name
18
19
  }))
19
20
  };
20
- case 'discovery_splash_hash':
21
- case 'banner_hash':
22
21
  case 'rules_channel_id':
23
22
  case 'public_updates_channel_id':
24
- case 'icon_hash':
25
- case 'image_hash':
26
- case 'splash_hash':
27
23
  case 'owner_id':
28
24
  case 'widget_channel_id':
29
25
  case 'system_channel_id':
@@ -33,13 +29,23 @@ export function transformAuditLogEntry(bot, payload) {
33
29
  case 'deny':
34
30
  case 'channel_id':
35
31
  case 'inviter_id':
36
- case 'avatar_hash':
37
32
  case 'id':
38
33
  return {
39
34
  key: change.key,
40
35
  old: change.old_value ? bot.transformers.snowflake(change.old_value) : undefined,
41
36
  new: change.new_value ? bot.transformers.snowflake(change.new_value) : undefined
42
37
  };
38
+ case 'discovery_splash_hash':
39
+ case 'banner_hash':
40
+ case 'icon_hash':
41
+ case 'image_hash':
42
+ case 'splash_hash':
43
+ case 'avatar_hash':
44
+ return {
45
+ key: change.key,
46
+ old: change.old_value ? iconHashToBigInt(change.old_value) : undefined,
47
+ new: change.new_value ? iconHashToBigInt(change.new_value) : undefined
48
+ };
43
49
  case 'name':
44
50
  case 'description':
45
51
  case 'preferred_locale':
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/transformers/auditLogEntry.ts"],"sourcesContent":["import type { DiscordAuditLogEntry } from '@discordeno/types'\nimport type { Bot } from '../index.js'\nimport type { Optionalize } from '../optionalize.js'\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function transformAuditLogEntry(bot: Bot, payload: DiscordAuditLogEntry) {\n const auditLogEntry = {\n id: bot.transformers.snowflake(payload.id),\n changes: payload.changes?.map((change) => {\n switch (change.key) {\n case '$add':\n case '$remove':\n return {\n key: change.key,\n new: change.new_value?.map((val) => ({\n id: val.id ? bot.transformers.snowflake(val.id) : undefined,\n name: val.name,\n })),\n old: change.old_value?.map((val) => ({\n id: val?.id ? bot.transformers.snowflake(val.id) : undefined,\n name: val?.name,\n })),\n }\n case 'discovery_splash_hash':\n case 'banner_hash':\n case 'rules_channel_id':\n case 'public_updates_channel_id':\n case 'icon_hash':\n case 'image_hash':\n case 'splash_hash':\n case 'owner_id':\n case 'widget_channel_id':\n case 'system_channel_id':\n case 'application_id':\n case 'permissions':\n case 'allow':\n case 'deny':\n case 'channel_id':\n case 'inviter_id':\n case 'avatar_hash':\n case 'id':\n return {\n key: change.key,\n old: change.old_value ? bot.transformers.snowflake(change.old_value) : undefined,\n new: change.new_value ? bot.transformers.snowflake(change.new_value) : undefined,\n }\n case 'name':\n case 'description':\n case 'preferred_locale':\n case 'region':\n case 'afk_channel_id':\n case 'vanity_url_code':\n case 'topic':\n case 'code':\n case 'nick':\n case 'location':\n return {\n key: change.key,\n old: change.old_value,\n new: change.new_value,\n }\n case 'afk_timeout':\n case 'mfa_level':\n case 'verification_level':\n case 'explicit_content_filter':\n case 'default_message_notifications':\n case 'prune_delete_days':\n case 'position':\n case 'bitrate':\n case 'rate_limit_per_user':\n case 'color':\n case 'max_uses':\n case 'uses':\n case 'max_age':\n case 'expire_behavior':\n case 'expire_grace_period':\n case 'user_limit':\n case 'privacy_level':\n case 'entity_type':\n case 'status':\n return {\n key: change.key,\n old: change.old_value ? Number(change.old_value) : undefined,\n new: change.new_value ? Number(change.new_value) : undefined,\n }\n case 'widget_enabled':\n case 'nsfw':\n case 'hoist':\n case 'mentionable':\n case 'temporary':\n case 'deaf':\n case 'mute':\n case 'enable_emoticons':\n return {\n key: change.key,\n old: change.old_value ?? false,\n new: change.new_value ?? false,\n }\n case 'permission_overwrites':\n return {\n key: change.key,\n old: change.old_value,\n new: change.new_value,\n }\n default:\n return {\n key: change.key,\n old: change.old_value,\n new: change.new_value,\n }\n }\n }),\n userId: payload.user_id ? bot.transformers.snowflake(payload.user_id) : undefined,\n targetId: payload.target_id ? bot.transformers.snowflake(payload.target_id) : undefined,\n actionType: payload.action_type,\n options: payload.options\n ? {\n deleteMemberDays: payload.options.delete_member_days ? Number(payload.options.delete_member_days) : 0,\n membersRemoved: payload.options.members_removed ? Number(payload.options.members_removed) : 0,\n channelId: payload.options.channel_id ? bot.transformers.snowflake(payload.options.channel_id) : undefined,\n messageId: payload.options.message_id ? bot.transformers.snowflake(payload.options.message_id) : undefined,\n count: payload.options.count ? Number(payload.options.count) : 0,\n id: payload.options.id ? bot.transformers.snowflake(payload.options.id) : undefined,\n type: Number(payload.options.type),\n roleName: payload.options.role_name,\n autoModerationRuleName: payload.options.auto_moderation_rule_name,\n autoModerationRuleTriggerType: payload.options.auto_moderation_rule_trigger_type,\n }\n : undefined,\n reason: payload.reason,\n }\n\n return auditLogEntry as Optionalize<typeof auditLogEntry>\n}\n\nexport interface AuditLogEntry extends ReturnType<typeof transformAuditLogEntry> {}\n"],"names":["transformAuditLogEntry","bot","payload","auditLogEntry","id","transformers","snowflake","changes","map","change","key","new","new_value","val","undefined","name","old","old_value","Number","userId","user_id","targetId","target_id","actionType","action_type","options","deleteMemberDays","delete_member_days","membersRemoved","members_removed","channelId","channel_id","messageId","message_id","count","type","roleName","role_name","autoModerationRuleName","auto_moderation_rule_name","autoModerationRuleTriggerType","auto_moderation_rule_trigger_type","reason"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/transformers/auditLogEntry.ts"],"sourcesContent":["import type { DiscordAuditLogEntry } from '@discordeno/types'\nimport { iconHashToBigInt, type Bot } from '../index.js'\nimport type { Optionalize } from '../optionalize.js'\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function transformAuditLogEntry(bot: Bot, payload: DiscordAuditLogEntry) {\n const auditLogEntry = {\n id: bot.transformers.snowflake(payload.id),\n changes: payload.changes?.map((change) => {\n switch (change.key) {\n case '$add':\n case '$remove':\n return {\n key: change.key,\n new: change.new_value?.map((val) => ({\n id: val.id ? bot.transformers.snowflake(val.id) : undefined,\n name: val.name,\n })),\n old: change.old_value?.map((val) => ({\n id: val?.id ? bot.transformers.snowflake(val.id) : undefined,\n name: val?.name,\n })),\n }\n case 'rules_channel_id':\n case 'public_updates_channel_id':\n case 'owner_id':\n case 'widget_channel_id':\n case 'system_channel_id':\n case 'application_id':\n case 'permissions':\n case 'allow':\n case 'deny':\n case 'channel_id':\n case 'inviter_id':\n case 'id':\n return {\n key: change.key,\n old: change.old_value ? bot.transformers.snowflake(change.old_value) : undefined,\n new: change.new_value ? bot.transformers.snowflake(change.new_value) : undefined,\n }\n case 'discovery_splash_hash':\n case 'banner_hash':\n case 'icon_hash':\n case 'image_hash':\n case 'splash_hash':\n case 'avatar_hash':\n return {\n key: change.key,\n old: change.old_value ? iconHashToBigInt(change.old_value) : undefined,\n new: change.new_value ? iconHashToBigInt(change.new_value) : undefined,\n }\n case 'name':\n case 'description':\n case 'preferred_locale':\n case 'region':\n case 'afk_channel_id':\n case 'vanity_url_code':\n case 'topic':\n case 'code':\n case 'nick':\n case 'location':\n return {\n key: change.key,\n old: change.old_value,\n new: change.new_value,\n }\n case 'afk_timeout':\n case 'mfa_level':\n case 'verification_level':\n case 'explicit_content_filter':\n case 'default_message_notifications':\n case 'prune_delete_days':\n case 'position':\n case 'bitrate':\n case 'rate_limit_per_user':\n case 'color':\n case 'max_uses':\n case 'uses':\n case 'max_age':\n case 'expire_behavior':\n case 'expire_grace_period':\n case 'user_limit':\n case 'privacy_level':\n case 'entity_type':\n case 'status':\n return {\n key: change.key,\n old: change.old_value ? Number(change.old_value) : undefined,\n new: change.new_value ? Number(change.new_value) : undefined,\n }\n case 'widget_enabled':\n case 'nsfw':\n case 'hoist':\n case 'mentionable':\n case 'temporary':\n case 'deaf':\n case 'mute':\n case 'enable_emoticons':\n return {\n key: change.key,\n old: change.old_value ?? false,\n new: change.new_value ?? false,\n }\n case 'permission_overwrites':\n return {\n key: change.key,\n old: change.old_value,\n new: change.new_value,\n }\n default:\n return {\n key: change.key,\n old: change.old_value,\n new: change.new_value,\n }\n }\n }),\n userId: payload.user_id ? bot.transformers.snowflake(payload.user_id) : undefined,\n targetId: payload.target_id ? bot.transformers.snowflake(payload.target_id) : undefined,\n actionType: payload.action_type,\n options: payload.options\n ? {\n deleteMemberDays: payload.options.delete_member_days ? Number(payload.options.delete_member_days) : 0,\n membersRemoved: payload.options.members_removed ? Number(payload.options.members_removed) : 0,\n channelId: payload.options.channel_id ? bot.transformers.snowflake(payload.options.channel_id) : undefined,\n messageId: payload.options.message_id ? bot.transformers.snowflake(payload.options.message_id) : undefined,\n count: payload.options.count ? Number(payload.options.count) : 0,\n id: payload.options.id ? bot.transformers.snowflake(payload.options.id) : undefined,\n type: Number(payload.options.type),\n roleName: payload.options.role_name,\n autoModerationRuleName: payload.options.auto_moderation_rule_name,\n autoModerationRuleTriggerType: payload.options.auto_moderation_rule_trigger_type,\n }\n : undefined,\n reason: payload.reason,\n }\n\n return auditLogEntry as Optionalize<typeof auditLogEntry>\n}\n\nexport interface AuditLogEntry extends ReturnType<typeof transformAuditLogEntry> {}\n"],"names":["iconHashToBigInt","transformAuditLogEntry","bot","payload","auditLogEntry","id","transformers","snowflake","changes","map","change","key","new","new_value","val","undefined","name","old","old_value","Number","userId","user_id","targetId","target_id","actionType","action_type","options","deleteMemberDays","delete_member_days","membersRemoved","members_removed","channelId","channel_id","messageId","message_id","count","type","roleName","role_name","autoModerationRuleName","auto_moderation_rule_name","autoModerationRuleTriggerType","auto_moderation_rule_trigger_type","reason"],"mappings":"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"}
@@ -70,7 +70,7 @@ export function transformChannel(bot, payload) {
70
70
  if (payload.channel.name && props.name) channel.name = payload.channel.name;
71
71
  if (payload.channel.topic && props.topic) channel.topic = payload.channel.topic;
72
72
  if (payload.channel.last_message_id && props.lastMessageId) channel.lastMessageId = bot.transformers.snowflake(payload.channel.last_message_id);
73
- if (payload.channel.bitrate && props.bitrate) channel.bitrate = props.bitrate;
73
+ if (payload.channel.bitrate && props.bitrate) channel.bitrate = payload.channel.bitrate;
74
74
  if (props.userLimit) channel.userLimit = payload.channel.user_limit;
75
75
  if (props.rateLimitPerUser) channel.rateLimitPerUser = payload.channel.rate_limit_per_user;
76
76
  if (payload.channel.owner_id && props.ownerId) channel.ownerId = bot.transformers.snowflake(payload.channel.owner_id);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/transformers/channel.ts"],"sourcesContent":["import type { BigString, ChannelTypes, DiscordChannel, DiscordThreadMember, OverwriteReadable, VideoQualityModes } from '@discordeno/types'\nimport { calculatePermissions, type Bot } from '../index.js'\nimport { Permissions } from './toggles/Permissions.js'\nimport { ChannelToggles } from './toggles/channel.js'\n\nconst Mask = (1n << 64n) - 1n\n\nexport function packOverwrites(allow: string, deny: string, id: string, type: number): bigint {\n return pack64(allow, 0) | pack64(deny, 1) | pack64(id, 2) | pack64(type, 3)\n}\nfunction unpack64(v: bigint, shift: number): bigint {\n return (v >> BigInt(shift * 64)) & Mask\n}\nfunction pack64(v: string | number, shift: number): bigint {\n const b = BigInt(v)\n if (b < 0 || b > Mask) throw new Error('should have been a 64 bit unsigned integer: ' + v.toString())\n return b << BigInt(shift * 64)\n}\nexport function separateOverwrites(v: bigint): [number, bigint, bigint, bigint] {\n return [Number(unpack64(v, 3)), unpack64(v, 2), unpack64(v, 0), unpack64(v, 1)] as [number, bigint, bigint, bigint]\n}\n\nexport const baseChannel: Partial<Channel> & BaseChannel = {\n get archived() {\n return !!this.toggles?.archived\n },\n get invitable() {\n return !!this.toggles?.invitable\n },\n get locked() {\n return !!this.toggles?.locked\n },\n get nsfw() {\n return !!this.toggles?.nsfw\n },\n get newlyCreated() {\n return !!this.toggles?.newlyCreated\n },\n get permissionOverwrites() {\n return (\n this.internalOverwrites?.map((overwrite) => {\n const [type, id, allow, deny] = separateOverwrites(overwrite)\n return {\n type,\n id,\n allow: calculatePermissions(allow),\n deny: calculatePermissions(deny),\n }\n }) ?? []\n )\n },\n get threadMetadata() {\n return {\n archiveTimestamp: this.internalThreadMetadata?.archiveTimestamp,\n createTimestamp: this.internalThreadMetadata?.createTimestamp,\n autoArchiveDuration: this.internalThreadMetadata?.autoArchiveDuration,\n locked: this.locked,\n invitable: this.invitable,\n archived: this.archived,\n }\n },\n}\n\nexport function transformChannel(bot: Bot, payload: { channel: DiscordChannel } & { guildId?: BigString }): Channel {\n const channel = Object.create(baseChannel)\n const props = bot.transformers.desiredProperties.channel\n channel.toggles = new ChannelToggles(payload.channel)\n\n if (payload.channel.id && props.id) channel.id = bot.transformers.snowflake(payload.channel.id)\n if ((payload.guildId ?? payload.channel.guild_id) && props.guildId) channel.guildId = payload.guildId ?? bot.transformers.snowflake(payload.channel.guild_id!)\n if (props.type) channel.type = payload.channel.type\n if (props.position) channel.position = payload.channel.position\n if (payload.channel.name && props.name) channel.name = payload.channel.name\n if (payload.channel.topic && props.topic) channel.topic = payload.channel.topic\n if (payload.channel.last_message_id && props.lastMessageId) channel.lastMessageId = bot.transformers.snowflake(payload.channel.last_message_id)\n if (payload.channel.bitrate && props.bitrate) channel.bitrate = props.bitrate\n if (props.userLimit) channel.userLimit = payload.channel.user_limit\n if (props.rateLimitPerUser) channel.rateLimitPerUser = payload.channel.rate_limit_per_user\n if (payload.channel.owner_id && props.ownerId) channel.ownerId = bot.transformers.snowflake(payload.channel.owner_id)\n if (payload.channel.last_pin_timestamp && props.lastPinTimestamp) channel.lastPinTimestamp = Date.parse(payload.channel.last_pin_timestamp)\n if (payload.channel.rtc_region && props.rtcRegion) channel.rtcRegion = payload.channel.rtc_region\n if (payload.channel.video_quality_mode && props.videoQualityMode) channel.videoQualityMode = payload.channel.video_quality_mode\n if (payload.channel.message_count && props.messageCount) channel.messageCount = payload.channel.message_count\n if (payload.channel.member_count && props.memberCount) channel.memberCount = payload.channel.member_count\n if (props.archiveTimestamp || props.createTimestamp || props.autoArchiveDuration) {\n channel.internalThreadMetadata = {}\n if (payload.channel.thread_metadata?.archive_timestamp && props.archiveTimestamp)\n channel.internalThreadMetadata.archiveTimestamp = Date.parse(payload.channel.thread_metadata.archive_timestamp)\n if (payload.channel.thread_metadata?.create_timestamp && props.createTimestamp)\n channel.internalThreadMetadata.createTimestamp = Date.parse(payload.channel.thread_metadata.create_timestamp)\n if (payload.channel.thread_metadata?.auto_archive_duration && props.autoArchiveDuration)\n channel.internalThreadMetadata.autoArchiveDuration = payload.channel.thread_metadata.auto_archive_duration\n }\n if (payload.channel.default_auto_archive_duration && props.autoArchiveDuration)\n channel.autoArchiveDuration = payload.channel.default_auto_archive_duration\n if (payload.channel.permissions && props.permissions) channel.permissions = new Permissions(payload.channel.permissions)\n if (payload.channel.flags && props.flags) channel.flags = payload.channel.flags\n if (payload.channel.permission_overwrites && props.permissionOverwrites) {\n channel.internalOverwrites = payload.channel.permission_overwrites.map((o) => packOverwrites(o.allow ?? '0', o.deny ?? '0', o.id, o.type))\n }\n if (props.parentId && payload.channel.parent_id) channel.parentId = bot.transformers.snowflake(payload.channel.parent_id);\n\n return bot.transformers.customizers.channel(bot, payload.channel, channel);\n}\n\nexport interface BaseChannel {\n /** Whether the channel is nsfw */\n nsfw: boolean\n /** Thread-specific fields not needed by other channels */\n threadMetadata?: {\n /** Timestamp when the thread's archive status was last changed, used for calculating recent activity */\n archiveTimestamp?: number\n /** Timestamp when the thread was created; only populated for threads created after 2022-01-09 */\n createTimestamp?: number\n /** Duration in minutes to automatically archive the thread after recent activity */\n autoArchiveDuration?: 60 | 1440 | 4320 | 10080\n /** When a thread is locked, only users with `MANAGE_THREADS` can unarchive it */\n locked: boolean\n /** whether non-moderators can add other non-moderators to a thread; only available on private threads */\n invitable: boolean\n /** Whether the thread is archived */\n archived: boolean\n }\n /** When a thread is created this will be true on that channel payload for the thread. */\n newlyCreated: boolean\n /** When a thread is locked, only users with `MANAGE_THREADS` can unarchive it */\n locked: boolean\n /** whether non-moderators can add other non-moderators to a thread; only available on private threads */\n invitable: boolean\n /** Whether the thread is archived */\n archived: boolean\n /** Explicit permission overwrites for members and roles. */\n permissionOverwrites: OverwriteReadable[]\n}\n\nexport interface Channel extends BaseChannel {\n /** The id of the channel */\n id: bigint\n /** The compressed form of all the boolean values on this channel. */\n toggles: ChannelToggles\n /** The type of channel */\n type: ChannelTypes\n /** The id of the guild */\n guildId?: bigint\n /** Sorting position of the channel */\n position?: number\n /** The name of the channel (1-100 characters) */\n name?: string\n /** The channel topic (0-4096 characters for GUILD_FORUM channels, 0-1024 characters for all others) */\n topic?: string\n /** The id of the last message sent in this channel (may not point to an existing or valid message) */\n lastMessageId?: bigint\n /** The bitrate (in bits) of the voice or stage channel */\n bitrate?: number\n /** The user limit of the voice or stage channel */\n userLimit?: number\n /** Amount of seconds a user has to wait before sending another message (0-21600); bots, as well as users with the permission `manage_messages` or `manage_channel`, are unaffected */\n rateLimitPerUser?: number\n /** Id of the creator of the thread */\n ownerId?: bigint\n /** For guild channels: Id of the parent category for a channel (each parent category can contain up to 50 channels), for threads: id of the text channel this thread was created */\n parentId?: bigint\n /** When the last pinned message was pinned. This may be null in events such as GUILD_CREATE when a message is not pinned. */\n lastPinTimestamp?: string\n /** Voice region id for the voice or stage channel, automatic when set to null */\n rtcRegion?: string\n /** The camera video quality mode of the voice channel, 1 when not present */\n videoQualityMode?: VideoQualityModes\n /** An approximate count of messages in a thread, stops counting at 50 */\n messageCount?: number\n /** An approximate count of users in a thread, stops counting at 50 */\n memberCount?: number\n /**\n * Thread-specific fields not needed by other channels.\n * @deprecated Use channel.threadMetadata\n * @private This field is an internal field, subject to breaking changes.\n */\n internalThreadMetadata?: {\n /** Timestamp when the thread's archive status was last changed, used for calculating recent activity */\n archiveTimestamp: number\n /** Timestamp when the thread was created; only populated for threads created after 2022-01-09 */\n createTimestamp?: number\n /** Duration in minutes to automatically archive the thread after recent activity */\n autoArchiveDuration: 60 | 1440 | 4320 | 10080\n }\n /** Thread member object for the current user, if they have joined the thread, only included on certain API endpoints */\n member?: DiscordThreadMember\n /** Default duration for newly created threads, in minutes, to automatically archive the thread after recent activity, can be set to: 60, 1440, 4320, 10080 */\n default_auto_archive_duration?: number\n /** computed permissions for the invoking user in the channel, including overwrites, only included when part of the resolved data received on a application command interaction */\n permissions?: Permissions\n /** The flags of the channel */\n flags?: number\n /**\n * Explicit permission overwrites for members and roles\n * @deprecated Use channel.permissionOverwrites\n * @private This is for internal use only, and prone to breaking changes.\n */\n internalOverwrites?: bigint[]\n}\n"],"names":["calculatePermissions","Permissions","ChannelToggles","Mask","packOverwrites","allow","deny","id","type","pack64","unpack64","v","shift","BigInt","b","Error","toString","separateOverwrites","Number","baseChannel","archived","toggles","invitable","locked","nsfw","newlyCreated","permissionOverwrites","internalOverwrites","map","overwrite","threadMetadata","archiveTimestamp","internalThreadMetadata","createTimestamp","autoArchiveDuration","transformChannel","bot","payload","channel","Object","create","props","transformers","desiredProperties","snowflake","guildId","guild_id","position","name","topic","last_message_id","lastMessageId","bitrate","userLimit","user_limit","rateLimitPerUser","rate_limit_per_user","owner_id","ownerId","last_pin_timestamp","lastPinTimestamp","Date","parse","rtc_region","rtcRegion","video_quality_mode","videoQualityMode","message_count","messageCount","member_count","memberCount","thread_metadata","archive_timestamp","create_timestamp","auto_archive_duration","default_auto_archive_duration","permissions","flags","permission_overwrites","o","parentId","parent_id","customizers"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/transformers/channel.ts"],"sourcesContent":["import type { BigString, ChannelTypes, DiscordChannel, DiscordThreadMember, OverwriteReadable, VideoQualityModes } from '@discordeno/types'\nimport { calculatePermissions, type Bot } from '../index.js'\nimport { Permissions } from './toggles/Permissions.js'\nimport { ChannelToggles } from './toggles/channel.js'\n\nconst Mask = (1n << 64n) - 1n\n\nexport function packOverwrites(allow: string, deny: string, id: string, type: number): bigint {\n return pack64(allow, 0) | pack64(deny, 1) | pack64(id, 2) | pack64(type, 3)\n}\nfunction unpack64(v: bigint, shift: number): bigint {\n return (v >> BigInt(shift * 64)) & Mask\n}\nfunction pack64(v: string | number, shift: number): bigint {\n const b = BigInt(v)\n if (b < 0 || b > Mask) throw new Error('should have been a 64 bit unsigned integer: ' + v.toString())\n return b << BigInt(shift * 64)\n}\nexport function separateOverwrites(v: bigint): [number, bigint, bigint, bigint] {\n return [Number(unpack64(v, 3)), unpack64(v, 2), unpack64(v, 0), unpack64(v, 1)] as [number, bigint, bigint, bigint]\n}\n\nexport const baseChannel: Partial<Channel> & BaseChannel = {\n get archived() {\n return !!this.toggles?.archived\n },\n get invitable() {\n return !!this.toggles?.invitable\n },\n get locked() {\n return !!this.toggles?.locked\n },\n get nsfw() {\n return !!this.toggles?.nsfw\n },\n get newlyCreated() {\n return !!this.toggles?.newlyCreated\n },\n get permissionOverwrites() {\n return (\n this.internalOverwrites?.map((overwrite) => {\n const [type, id, allow, deny] = separateOverwrites(overwrite)\n return {\n type,\n id,\n allow: calculatePermissions(allow),\n deny: calculatePermissions(deny),\n }\n }) ?? []\n )\n },\n get threadMetadata() {\n return {\n archiveTimestamp: this.internalThreadMetadata?.archiveTimestamp,\n createTimestamp: this.internalThreadMetadata?.createTimestamp,\n autoArchiveDuration: this.internalThreadMetadata?.autoArchiveDuration,\n locked: this.locked,\n invitable: this.invitable,\n archived: this.archived,\n }\n },\n}\n\nexport function transformChannel(bot: Bot, payload: { channel: DiscordChannel } & { guildId?: BigString }): Channel {\n const channel = Object.create(baseChannel)\n const props = bot.transformers.desiredProperties.channel\n channel.toggles = new ChannelToggles(payload.channel)\n\n if (payload.channel.id && props.id) channel.id = bot.transformers.snowflake(payload.channel.id)\n if ((payload.guildId ?? payload.channel.guild_id) && props.guildId) channel.guildId = payload.guildId ?? bot.transformers.snowflake(payload.channel.guild_id!)\n if (props.type) channel.type = payload.channel.type\n if (props.position) channel.position = payload.channel.position\n if (payload.channel.name && props.name) channel.name = payload.channel.name\n if (payload.channel.topic && props.topic) channel.topic = payload.channel.topic\n if (payload.channel.last_message_id && props.lastMessageId) channel.lastMessageId = bot.transformers.snowflake(payload.channel.last_message_id)\n if (payload.channel.bitrate && props.bitrate) channel.bitrate = payload.channel.bitrate\n if (props.userLimit) channel.userLimit = payload.channel.user_limit\n if (props.rateLimitPerUser) channel.rateLimitPerUser = payload.channel.rate_limit_per_user\n if (payload.channel.owner_id && props.ownerId) channel.ownerId = bot.transformers.snowflake(payload.channel.owner_id)\n if (payload.channel.last_pin_timestamp && props.lastPinTimestamp) channel.lastPinTimestamp = Date.parse(payload.channel.last_pin_timestamp)\n if (payload.channel.rtc_region && props.rtcRegion) channel.rtcRegion = payload.channel.rtc_region\n if (payload.channel.video_quality_mode && props.videoQualityMode) channel.videoQualityMode = payload.channel.video_quality_mode\n if (payload.channel.message_count && props.messageCount) channel.messageCount = payload.channel.message_count\n if (payload.channel.member_count && props.memberCount) channel.memberCount = payload.channel.member_count\n if (props.archiveTimestamp || props.createTimestamp || props.autoArchiveDuration) {\n channel.internalThreadMetadata = {}\n if (payload.channel.thread_metadata?.archive_timestamp && props.archiveTimestamp)\n channel.internalThreadMetadata.archiveTimestamp = Date.parse(payload.channel.thread_metadata.archive_timestamp)\n if (payload.channel.thread_metadata?.create_timestamp && props.createTimestamp)\n channel.internalThreadMetadata.createTimestamp = Date.parse(payload.channel.thread_metadata.create_timestamp)\n if (payload.channel.thread_metadata?.auto_archive_duration && props.autoArchiveDuration)\n channel.internalThreadMetadata.autoArchiveDuration = payload.channel.thread_metadata.auto_archive_duration\n }\n if (payload.channel.default_auto_archive_duration && props.autoArchiveDuration)\n channel.autoArchiveDuration = payload.channel.default_auto_archive_duration\n if (payload.channel.permissions && props.permissions) channel.permissions = new Permissions(payload.channel.permissions)\n if (payload.channel.flags && props.flags) channel.flags = payload.channel.flags\n if (payload.channel.permission_overwrites && props.permissionOverwrites) {\n channel.internalOverwrites = payload.channel.permission_overwrites.map((o) => packOverwrites(o.allow ?? '0', o.deny ?? '0', o.id, o.type))\n }\n if (props.parentId && payload.channel.parent_id) channel.parentId = bot.transformers.snowflake(payload.channel.parent_id);\n\n return bot.transformers.customizers.channel(bot, payload.channel, channel);\n}\n\nexport interface BaseChannel {\n /** Whether the channel is nsfw */\n nsfw: boolean\n /** Thread-specific fields not needed by other channels */\n threadMetadata?: {\n /** Timestamp when the thread's archive status was last changed, used for calculating recent activity */\n archiveTimestamp?: number\n /** Timestamp when the thread was created; only populated for threads created after 2022-01-09 */\n createTimestamp?: number\n /** Duration in minutes to automatically archive the thread after recent activity */\n autoArchiveDuration?: 60 | 1440 | 4320 | 10080\n /** When a thread is locked, only users with `MANAGE_THREADS` can unarchive it */\n locked: boolean\n /** whether non-moderators can add other non-moderators to a thread; only available on private threads */\n invitable: boolean\n /** Whether the thread is archived */\n archived: boolean\n }\n /** When a thread is created this will be true on that channel payload for the thread. */\n newlyCreated: boolean\n /** When a thread is locked, only users with `MANAGE_THREADS` can unarchive it */\n locked: boolean\n /** whether non-moderators can add other non-moderators to a thread; only available on private threads */\n invitable: boolean\n /** Whether the thread is archived */\n archived: boolean\n /** Explicit permission overwrites for members and roles. */\n permissionOverwrites: OverwriteReadable[]\n}\n\nexport interface Channel extends BaseChannel {\n /** The id of the channel */\n id: bigint\n /** The compressed form of all the boolean values on this channel. */\n toggles: ChannelToggles\n /** The type of channel */\n type: ChannelTypes\n /** The id of the guild */\n guildId?: bigint\n /** Sorting position of the channel */\n position?: number\n /** The name of the channel (1-100 characters) */\n name?: string\n /** The channel topic (0-4096 characters for GUILD_FORUM channels, 0-1024 characters for all others) */\n topic?: string\n /** The id of the last message sent in this channel (may not point to an existing or valid message) */\n lastMessageId?: bigint\n /** The bitrate (in bits) of the voice or stage channel */\n bitrate?: number\n /** The user limit of the voice or stage channel */\n userLimit?: number\n /** Amount of seconds a user has to wait before sending another message (0-21600); bots, as well as users with the permission `manage_messages` or `manage_channel`, are unaffected */\n rateLimitPerUser?: number\n /** Id of the creator of the thread */\n ownerId?: bigint\n /** For guild channels: Id of the parent category for a channel (each parent category can contain up to 50 channels), for threads: id of the text channel this thread was created */\n parentId?: bigint\n /** When the last pinned message was pinned. This may be null in events such as GUILD_CREATE when a message is not pinned. */\n lastPinTimestamp?: string\n /** Voice region id for the voice or stage channel, automatic when set to null */\n rtcRegion?: string\n /** The camera video quality mode of the voice channel, 1 when not present */\n videoQualityMode?: VideoQualityModes\n /** An approximate count of messages in a thread, stops counting at 50 */\n messageCount?: number\n /** An approximate count of users in a thread, stops counting at 50 */\n memberCount?: number\n /**\n * Thread-specific fields not needed by other channels.\n * @deprecated Use channel.threadMetadata\n * @private This field is an internal field, subject to breaking changes.\n */\n internalThreadMetadata?: {\n /** Timestamp when the thread's archive status was last changed, used for calculating recent activity */\n archiveTimestamp: number\n /** Timestamp when the thread was created; only populated for threads created after 2022-01-09 */\n createTimestamp?: number\n /** Duration in minutes to automatically archive the thread after recent activity */\n autoArchiveDuration: 60 | 1440 | 4320 | 10080\n }\n /** Thread member object for the current user, if they have joined the thread, only included on certain API endpoints */\n member?: DiscordThreadMember\n /** Default duration for newly created threads, in minutes, to automatically archive the thread after recent activity, can be set to: 60, 1440, 4320, 10080 */\n default_auto_archive_duration?: number\n /** computed permissions for the invoking user in the channel, including overwrites, only included when part of the resolved data received on a application command interaction */\n permissions?: Permissions\n /** The flags of the channel */\n flags?: number\n /**\n * Explicit permission overwrites for members and roles\n * @deprecated Use channel.permissionOverwrites\n * @private This is for internal use only, and prone to breaking changes.\n */\n internalOverwrites?: bigint[]\n}\n"],"names":["calculatePermissions","Permissions","ChannelToggles","Mask","packOverwrites","allow","deny","id","type","pack64","unpack64","v","shift","BigInt","b","Error","toString","separateOverwrites","Number","baseChannel","archived","toggles","invitable","locked","nsfw","newlyCreated","permissionOverwrites","internalOverwrites","map","overwrite","threadMetadata","archiveTimestamp","internalThreadMetadata","createTimestamp","autoArchiveDuration","transformChannel","bot","payload","channel","Object","create","props","transformers","desiredProperties","snowflake","guildId","guild_id","position","name","topic","last_message_id","lastMessageId","bitrate","userLimit","user_limit","rateLimitPerUser","rate_limit_per_user","owner_id","ownerId","last_pin_timestamp","lastPinTimestamp","Date","parse","rtc_region","rtcRegion","video_quality_mode","videoQualityMode","message_count","messageCount","member_count","memberCount","thread_metadata","archive_timestamp","create_timestamp","auto_archive_duration","default_auto_archive_duration","permissions","flags","permission_overwrites","o","parentId","parent_id","customizers"],"mappings":"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"}
@@ -30,6 +30,7 @@ export declare function transformEmoji(bot: Bot, payload: DiscordEmoji): {
30
30
  remove: (bits: number) => import("./toggles/user.js").UserToggles;
31
31
  toJSON: () => number;
32
32
  } | undefined;
33
+ globalName?: string | undefined;
33
34
  premiumType?: import("@discordeno/types").PremiumTypes | undefined;
34
35
  publicFlags?: {
35
36
  bitfield: number;
@@ -1 +1 @@
1
- {"version":3,"file":"emoji.d.ts","sourceRoot":"","sources":["../../src/transformers/emoji.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGjD,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU7D;AAED,MAAM,WAAW,KAAM,SAAQ,UAAU,CAAC,OAAO,cAAc,CAAC;CAAG"}
1
+ {"version":3,"file":"emoji.d.ts","sourceRoot":"","sources":["../../src/transformers/emoji.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGjD,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU7D;AAED,MAAM,WAAW,KAAM,SAAQ,UAAU,CAAC,OAAO,cAAc,CAAC;CAAG"}