@discordeno/bot 19.0.0-next.0b02607 → 19.0.0-next.0b8cb1e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bot.d.ts +2 -1
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +2 -2
- package/dist/bot.js.map +1 -1
- package/dist/transformers/application.d.ts +35 -4
- package/dist/transformers/application.d.ts.map +1 -1
- package/dist/transformers/automodRule.d.ts +3 -2
- package/dist/transformers/automodRule.d.ts.map +1 -1
- package/dist/transformers/automodRule.js +1 -0
- package/dist/transformers/automodRule.js.map +1 -1
- package/dist/transformers/channel.d.ts +98 -35
- package/dist/transformers/channel.d.ts.map +1 -1
- package/dist/transformers/channel.js +72 -36
- package/dist/transformers/channel.js.map +1 -1
- package/dist/transformers/emoji.d.ts +34 -3
- package/dist/transformers/emoji.d.ts.map +1 -1
- package/dist/transformers/guild.d.ts +2 -2
- package/dist/transformers/integration.d.ts +68 -6
- package/dist/transformers/integration.d.ts.map +1 -1
- package/dist/transformers/interaction.d.ts +65 -377
- package/dist/transformers/interaction.d.ts.map +1 -1
- package/dist/transformers/interaction.js +20 -25
- package/dist/transformers/interaction.js.map +1 -1
- package/dist/transformers/invite.d.ts +103 -10
- package/dist/transformers/invite.d.ts.map +1 -1
- package/dist/transformers/member.d.ts +31 -37
- package/dist/transformers/member.d.ts.map +1 -1
- package/dist/transformers/member.js +27 -31
- package/dist/transformers/member.js.map +1 -1
- package/dist/transformers/message.d.ts +2 -1
- package/dist/transformers/message.d.ts.map +1 -1
- package/dist/transformers/message.js.map +1 -1
- package/dist/transformers/presence.d.ts +2 -14
- package/dist/transformers/presence.d.ts.map +1 -1
- package/dist/transformers/presence.js +1 -14
- package/dist/transformers/presence.js.map +1 -1
- package/dist/transformers/reverse/member.d.ts +2 -1
- package/dist/transformers/reverse/member.d.ts.map +1 -1
- package/dist/transformers/reverse/member.js +9 -9
- package/dist/transformers/reverse/member.js.map +1 -1
- package/dist/transformers/role.d.ts +65 -11
- package/dist/transformers/role.d.ts.map +1 -1
- package/dist/transformers/role.js +50 -14
- package/dist/transformers/role.js.map +1 -1
- package/dist/transformers/scheduledEvent.d.ts +34 -3
- package/dist/transformers/scheduledEvent.d.ts.map +1 -1
- package/dist/transformers/sticker.d.ts +34 -3
- package/dist/transformers/sticker.d.ts.map +1 -1
- package/dist/transformers/team.d.ts +1 -1
- package/dist/transformers/template.d.ts +26 -37
- package/dist/transformers/template.d.ts.map +1 -1
- package/dist/transformers/toggles/Permissions.d.ts +9 -0
- package/dist/transformers/toggles/Permissions.d.ts.map +1 -0
- package/dist/transformers/toggles/Permissions.js +18 -0
- package/dist/transformers/toggles/Permissions.js.map +1 -0
- package/dist/transformers/toggles/ToggleBitfield.d.ts +1 -0
- package/dist/transformers/toggles/ToggleBitfield.d.ts.map +1 -1
- package/dist/transformers/toggles/ToggleBitfield.js +3 -0
- package/dist/transformers/toggles/ToggleBitfield.js.map +1 -1
- package/dist/transformers/toggles/channel.d.ts +33 -0
- package/dist/transformers/toggles/channel.d.ts.map +1 -0
- package/dist/transformers/toggles/channel.js +50 -0
- package/dist/transformers/toggles/channel.js.map +1 -0
- package/dist/transformers/toggles/guild.d.ts +0 -4
- package/dist/transformers/toggles/guild.d.ts.map +1 -1
- package/dist/transformers/toggles/guild.js +0 -6
- package/dist/transformers/toggles/guild.js.map +1 -1
- package/dist/transformers/toggles/role.d.ts +4 -0
- package/dist/transformers/toggles/role.d.ts.map +1 -1
- package/dist/transformers/toggles/role.js +6 -0
- package/dist/transformers/toggles/role.js.map +1 -1
- package/dist/transformers/user.d.ts +42 -0
- package/dist/transformers/user.d.ts.map +1 -0
- package/dist/transformers/user.js +41 -0
- package/dist/transformers/user.js.map +1 -0
- package/dist/transformers/voiceState.d.ts +1 -1
- package/dist/transformers/webhook.d.ts +34 -3
- package/dist/transformers/webhook.d.ts.map +1 -1
- package/dist/transformers.d.ts +43 -1
- package/dist/transformers.d.ts.map +1 -1
- package/dist/transformers.js +47 -3
- package/dist/transformers.js.map +1 -1
- package/package.json +5 -5
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
import { Collection } from '@discordeno/utils';
|
|
2
|
-
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
3
2
|
export function transformInteraction(bot, payload) {
|
|
4
3
|
const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined;
|
|
5
4
|
const user = bot.transformers.user(bot, payload.member?.user ?? payload.user);
|
|
6
|
-
const interaction = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
5
|
+
const interaction = Object.create({});
|
|
6
|
+
const props = bot.transformers.desiredProperties.interaction;
|
|
7
|
+
if (payload.id && props.id) interaction.id = bot.transformers.snowflake(payload.id);
|
|
8
|
+
if (payload.application_id && props.applicationId) interaction.applicationId = bot.transformers.snowflake(payload.application_id);
|
|
9
|
+
if (payload.type && props.type) interaction.type = payload.type;
|
|
10
|
+
if (payload.token && props.token) interaction.token = payload.token;
|
|
11
|
+
if (payload.version && props.version) interaction.version = payload.version;
|
|
12
|
+
if (payload.locale && props.locale) interaction.locale = payload.locale;
|
|
13
|
+
if (payload.guild_locale && props.guildLocale) interaction.guildLocale = payload.guild_locale;
|
|
14
|
+
if (guildId && props.guildId) interaction.guildId = guildId;
|
|
15
|
+
if (props.user) interaction.user = user;
|
|
16
|
+
if (payload.app_permissions && props.appPermissions) interaction.appPermissions = bot.transformers.snowflake(payload.app_permissions);
|
|
17
|
+
if (payload.message && props.message) interaction.message = bot.transformers.message(bot, payload.message);
|
|
18
|
+
if (payload.channel_id && props.channelId) interaction.channelId = bot.transformers.snowflake(payload.channel_id);
|
|
19
|
+
if (payload.member && guildId && props.member) interaction.member = bot.transformers.member(bot, payload.member, guildId, user.id);
|
|
20
|
+
if (payload.data && props.data) {
|
|
21
|
+
interaction.data = {
|
|
23
22
|
componentType: payload.data.component_type,
|
|
24
23
|
customId: payload.data.custom_id,
|
|
25
24
|
components: payload.data.components?.map((component)=>bot.transformers.component(bot, component)),
|
|
@@ -30,11 +29,10 @@ export function transformInteraction(bot, payload) {
|
|
|
30
29
|
options: payload.data.options?.map((opt)=>bot.transformers.interactionDataOptions(bot, opt)),
|
|
31
30
|
targetId: payload.data.target_id ? bot.transformers.snowflake(payload.data.target_id) : undefined,
|
|
32
31
|
guildId: payload.data.guild_id ? bot.transformers.snowflake(payload.data.guild_id) : undefined
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return interaction;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
return bot.transformers.customizers.interaction(bot, payload, interaction);
|
|
36
35
|
}
|
|
37
|
-
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
38
36
|
export function transformInteractionDataOption(bot, option) {
|
|
39
37
|
const opt = {
|
|
40
38
|
name: option.name,
|
|
@@ -45,7 +43,6 @@ export function transformInteractionDataOption(bot, option) {
|
|
|
45
43
|
};
|
|
46
44
|
return opt;
|
|
47
45
|
}
|
|
48
|
-
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
49
46
|
export function transformInteractionDataResolved(bot, resolved, guildId) {
|
|
50
47
|
const transformed = {};
|
|
51
48
|
if (resolved.messages) {
|
|
@@ -111,8 +108,6 @@ export function transformInteractionDataResolved(bot, resolved, guildId) {
|
|
|
111
108
|
];
|
|
112
109
|
}));
|
|
113
110
|
}
|
|
114
|
-
// TODO: fix
|
|
115
|
-
// return transformed as Optionalize<typeof transformed>
|
|
116
111
|
return transformed;
|
|
117
112
|
}
|
|
118
113
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/transformers/interaction.ts"],"sourcesContent":["import type { ChannelTypes, DiscordInteraction, DiscordInteractionDataOption } from '@discordeno/types'\nimport { Collection } from '@discordeno/utils'\nimport type { Bot } from '../index.js'\nimport type { Optionalize } from '../optionalize.js'\nimport type { DiscordInteractionDataResolved } from '../typings.js'\nimport type { Attachment } from './attachment.js'\nimport type { Member, User } from './member.js'\nimport type { Message } from './message.js'\nimport type { Role } from './role.js'\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function transformInteraction(bot: Bot, payload: DiscordInteraction) {\n const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined\n const user = bot.transformers.user(bot, payload.member?.user ?? payload.user!)\n\n const interaction = {\n // UNTRANSFORMED STUFF HERE\n type: payload.type,\n token: payload.token,\n version: payload.version,\n locale: payload.locale,\n guildLocale: payload.guild_locale,\n\n // TRANSFORMED STUFF BELOW\n guildId,\n user,\n id: bot.transformers.snowflake(payload.id),\n applicationId: bot.transformers.snowflake(payload.application_id),\n appPermissions: payload.app_permissions ? bot.transformers.snowflake(payload.app_permissions) : undefined,\n message: payload.message ? bot.transformers.message(bot, payload.message) : undefined,\n channelId: payload.channel_id ? bot.transformers.snowflake(payload.channel_id) : undefined,\n member: payload.member && guildId ? bot.transformers.member(bot, payload.member, guildId, user.id) : undefined,\n\n data: payload.data\n ? {\n componentType: payload.data.component_type,\n customId: payload.data.custom_id,\n components: payload.data.components?.map((component) => bot.transformers.component(bot, component)),\n values: payload.data.values,\n id: payload.data.id ? bot.transformers.snowflake(payload.data.id) : undefined,\n name: payload.data.name,\n resolved: payload.data.resolved ? transformInteractionDataResolved(bot, payload.data.resolved, guildId) : undefined,\n options: payload.data.options?.map((opt) => bot.transformers.interactionDataOptions(bot, opt)),\n targetId: payload.data.target_id ? bot.transformers.snowflake(payload.data.target_id) : undefined,\n guildId: payload.data.guild_id ? bot.transformers.snowflake(payload.data.guild_id) : undefined,\n }\n : undefined,\n }\n\n return interaction as Optionalize<typeof interaction>\n}\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function transformInteractionDataOption(bot: Bot, option: DiscordInteractionDataOption) {\n const opt = {\n name: option.name,\n type: option.type,\n value: option.value,\n options: option.options,\n focused: option.focused,\n }\n\n return opt as Optionalize<typeof opt>\n}\n\n// eslint-disable-next-line @typescript-eslint/explicit-function-return-type\nexport function transformInteractionDataResolved(bot: Bot, resolved: DiscordInteractionDataResolved, guildId?: bigint) {\n const transformed: {\n messages?: Collection<bigint, Message>\n users?: Collection<bigint, User>\n members?: Collection<bigint, Member>\n roles?: Collection<bigint, Role>\n channels?: Collection<bigint, { id: bigint; name: string; type: ChannelTypes; permissions: bigint }>\n attachments?: Collection<bigint, Attachment>\n } = {}\n\n if (resolved.messages) {\n transformed.messages = new Collection(\n Object.entries(resolved.messages).map(([id, value]) => {\n const message: Message = bot.transformers.message(bot, value)\n return [message.id, message]\n }),\n )\n }\n\n if (resolved.users) {\n transformed.users = new Collection(\n Object.entries(resolved.users).map(([id, value]) => {\n const user = bot.transformers.user(bot, value)\n return [user.id, user]\n }),\n )\n }\n\n if (guildId && resolved.members) {\n transformed.members = new Collection(\n Object.entries(resolved.members).map(([id, value]) => {\n const member: Member = bot.transformers.member(bot, value, guildId, bot.transformers.snowflake(id))\n return [member.id, member]\n }),\n )\n }\n\n if (guildId && resolved.roles) {\n transformed.roles = new Collection(\n Object.entries(resolved.roles).map(([id, value]) => {\n const role = bot.transformers.role(bot, { role: value, guildId })\n return [role.id, role]\n }),\n )\n }\n\n if (resolved.channels) {\n transformed.channels = new Collection(\n Object.entries(resolved.channels).map(([key, value]) => {\n const id = bot.transformers.snowflake(key)\n const channel = value as {\n id: string\n name: string\n type: ChannelTypes\n permissions: string\n }\n return [\n id,\n {\n id,\n name: channel.name,\n type: channel.type,\n permissions: bot.transformers.snowflake(channel.permissions),\n },\n ]\n }),\n )\n }\n\n if (resolved.attachments) {\n transformed.attachments = new Collection(\n Object.entries(resolved.attachments).map(([key, value]) => {\n const id = bot.transformers.snowflake(key)\n return [id, bot.transformers.attachment(bot, value)]\n }),\n )\n }\n\n // TODO: fix\n // return transformed as Optionalize<typeof transformed>\n return transformed as any\n}\n\nexport interface Interaction extends ReturnType<typeof transformInteraction> {}\nexport interface InteractionDataResolved extends ReturnType<typeof transformInteractionDataResolved> {}\nexport interface InteractionDataOption extends ReturnType<typeof transformInteractionDataOption> {}\n"],"names":["Collection","transformInteraction","bot","payload","guildId","guild_id","transformers","snowflake","undefined","user","member","interaction","type","token","version","locale","guildLocale","guild_locale","id","applicationId","application_id","appPermissions","app_permissions","message","channelId","channel_id","data","componentType","component_type","customId","custom_id","components","map","component","values","name","resolved","transformInteractionDataResolved","options","opt","interactionDataOptions","targetId","target_id","transformInteractionDataOption","option","value","focused","transformed","messages","Object","entries","users","members","roles","role","channels","key","channel","permissions","attachments","attachment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/transformers/interaction.ts"],"sourcesContent":["import type {\n ApplicationCommandOptionTypes,\n ChannelTypes,\n DiscordInteraction,\n DiscordInteractionDataOption,\n InteractionTypes,\n MessageComponentTypes,\n} from '@discordeno/types'\nimport { Collection } from '@discordeno/utils'\nimport type { Bot, Component } from '../index.js'\nimport type { DiscordInteractionDataResolved } from '../typings.js'\nimport type { Attachment } from './attachment.js'\nimport type { Member } from './member.js'\nimport type { Message } from './message.js'\nimport type { Role } from './role.js'\nimport type { User } from './user.js'\n\nexport interface Interaction {\n /** Id of the interaction */\n id: bigint\n /** Id of the application this interaction is for */\n applicationId: bigint\n /** The type of interaction */\n type: InteractionTypes\n /** The guild it was sent from */\n guildId?: bigint\n /** The channel it was sent from */\n channelId?: bigint\n /** Guild member data for the invoking user, including permissions */\n member?: Member\n /** User object for the invoking user, if invoked in a DM */\n user: User\n /** A continuation token for responding to the interaction */\n token: string\n /** Read-only property, always `1` */\n version: 1\n /** For the message the button was attached to */\n message?: Message\n /** the command data payload */\n data?: {\n componentType?: MessageComponentTypes\n customId?: string\n components?: Component[]\n values?: string[]\n name: string\n resolved?: InteractionDataResolved\n options?: InteractionDataOption[]\n id?: bigint\n targetId?: bigint\n guildId?: bigint\n }\n /** The selected language of the invoking user */\n locale?: string\n /** The guild's preferred locale, if invoked in a guild */\n guildLocale?: string\n /** The computed permissions for a bot or app in the context of a specific interaction (including channel overwrites) */\n appPermissions: bigint\n}\n\nexport function transformInteraction(bot: Bot, payload: DiscordInteraction): Interaction {\n const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined\n const user = bot.transformers.user(bot, payload.member?.user ?? payload.user!)\n\n const interaction: Interaction = Object.create({})\n const props = bot.transformers.desiredProperties.interaction\n\n if (payload.id && props.id) interaction.id = bot.transformers.snowflake(payload.id)\n if (payload.application_id && props.applicationId) interaction.applicationId = bot.transformers.snowflake(payload.application_id)\n if (payload.type && props.type) interaction.type = payload.type\n if (payload.token && props.token) interaction.token = payload.token\n if (payload.version && props.version) interaction.version = payload.version\n if (payload.locale && props.locale) interaction.locale = payload.locale\n if (payload.guild_locale && props.guildLocale) interaction.guildLocale = payload.guild_locale\n if (guildId && props.guildId) interaction.guildId = guildId\n if (props.user) interaction.user = user\n if (payload.app_permissions && props.appPermissions) interaction.appPermissions = bot.transformers.snowflake(payload.app_permissions)\n if (payload.message && props.message) interaction.message = bot.transformers.message(bot, payload.message)\n if (payload.channel_id && props.channelId) interaction.channelId = bot.transformers.snowflake(payload.channel_id)\n if (payload.member && guildId && props.member) interaction.member = bot.transformers.member(bot, payload.member, guildId, user.id)\n if (payload.data && props.data) {\n interaction.data = {\n componentType: payload.data.component_type,\n customId: payload.data.custom_id,\n components: payload.data.components?.map((component) => bot.transformers.component(bot, component)),\n values: payload.data.values,\n id: payload.data.id ? bot.transformers.snowflake(payload.data.id) : undefined,\n name: payload.data.name,\n resolved: payload.data.resolved ? transformInteractionDataResolved(bot, payload.data.resolved, guildId) : undefined,\n options: payload.data.options?.map((opt) => bot.transformers.interactionDataOptions(bot, opt)),\n targetId: payload.data.target_id ? bot.transformers.snowflake(payload.data.target_id) : undefined,\n guildId: payload.data.guild_id ? bot.transformers.snowflake(payload.data.guild_id) : undefined,\n }\n }\n\n return bot.transformers.customizers.interaction(bot, payload, interaction)\n}\n\nexport function transformInteractionDataOption(bot: Bot, option: DiscordInteractionDataOption): InteractionDataOption {\n const opt = {\n name: option.name,\n type: option.type,\n value: option.value,\n options: option.options,\n focused: option.focused,\n }\n\n return opt\n}\n\nexport function transformInteractionDataResolved(bot: Bot, resolved: DiscordInteractionDataResolved, guildId?: bigint): InteractionDataResolved {\n const transformed: InteractionDataResolved = {}\n\n if (resolved.messages) {\n transformed.messages = new Collection(\n Object.entries(resolved.messages).map(([id, value]) => {\n const message: Message = bot.transformers.message(bot, value)\n return [message.id, message]\n }),\n )\n }\n\n if (resolved.users) {\n transformed.users = new Collection(\n Object.entries(resolved.users).map(([id, value]) => {\n const user = bot.transformers.user(bot, value)\n return [user.id, user]\n }),\n )\n }\n\n if (guildId && resolved.members) {\n transformed.members = new Collection(\n Object.entries(resolved.members).map(([id, value]) => {\n const member: Member = bot.transformers.member(bot, value, guildId, bot.transformers.snowflake(id))\n return [member.id, member]\n }),\n )\n }\n\n if (guildId && resolved.roles) {\n transformed.roles = new Collection(\n Object.entries(resolved.roles).map(([id, value]) => {\n const role = bot.transformers.role(bot, { role: value, guildId })\n return [role.id, role]\n }),\n )\n }\n\n if (resolved.channels) {\n transformed.channels = new Collection(\n Object.entries(resolved.channels).map(([key, value]) => {\n const id = bot.transformers.snowflake(key)\n const channel = value as {\n id: string\n name: string\n type: ChannelTypes\n permissions: string\n }\n return [\n id,\n {\n id,\n name: channel.name,\n type: channel.type,\n permissions: bot.transformers.snowflake(channel.permissions),\n },\n ]\n }),\n )\n }\n\n if (resolved.attachments) {\n transformed.attachments = new Collection(\n Object.entries(resolved.attachments).map(([key, value]) => {\n const id = bot.transformers.snowflake(key)\n return [id, bot.transformers.attachment(bot, value)]\n }),\n )\n }\n\n return transformed\n}\n\nexport interface InteractionDataResolved {\n messages?: Collection<bigint, Message>\n users?: Collection<bigint, User>\n members?: Collection<bigint, Member>\n roles?: Collection<bigint, Role>\n channels?: Collection<bigint, { id: bigint; name: string; type: ChannelTypes; permissions: bigint }>\n attachments?: Collection<bigint, Attachment>\n}\n\nexport interface InteractionDataOption {\n name: string\n type: ApplicationCommandOptionTypes\n value?: string | number | boolean\n options?: InteractionDataOption[]\n focused?: boolean\n}\n"],"names":["Collection","transformInteraction","bot","payload","guildId","guild_id","transformers","snowflake","undefined","user","member","interaction","Object","create","props","desiredProperties","id","application_id","applicationId","type","token","version","locale","guild_locale","guildLocale","app_permissions","appPermissions","message","channel_id","channelId","data","componentType","component_type","customId","custom_id","components","map","component","values","name","resolved","transformInteractionDataResolved","options","opt","interactionDataOptions","targetId","target_id","customizers","transformInteractionDataOption","option","value","focused","transformed","messages","entries","users","members","roles","role","channels","key","channel","permissions","attachments","attachment"],"mappings":"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"}
|
|
@@ -3,28 +3,90 @@ import type { Bot } from '../index.js';
|
|
|
3
3
|
export declare function transformInvite(bot: Bot, invite: DiscordInviteCreate): {
|
|
4
4
|
guildId?: bigint | undefined;
|
|
5
5
|
inviter?: {
|
|
6
|
-
flags?:
|
|
6
|
+
flags?: {
|
|
7
|
+
bitfield: number;
|
|
8
|
+
contains: (bits: number) => boolean;
|
|
9
|
+
add: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
10
|
+
remove: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
11
|
+
toJSON: () => number;
|
|
12
|
+
} | undefined;
|
|
7
13
|
locale?: string | undefined;
|
|
8
14
|
avatar?: bigint | undefined;
|
|
9
15
|
email?: string | undefined;
|
|
16
|
+
banner?: bigint | undefined;
|
|
17
|
+
toggles?: {
|
|
18
|
+
bot: boolean;
|
|
19
|
+
system: boolean;
|
|
20
|
+
verified: boolean;
|
|
21
|
+
mfaEnabled: boolean;
|
|
22
|
+
bitfield: number;
|
|
23
|
+
has: (permissions: "bot" | "system" | "verified" | "mfaEnabled" | ("bot" | "system" | "verified" | "mfaEnabled")[]) => boolean;
|
|
24
|
+
list: () => Record<"bot" | "system" | "verified" | "mfaEnabled", boolean>;
|
|
25
|
+
contains: (bits: number) => boolean;
|
|
26
|
+
add: (bits: number) => import("./toggles/user.js").UserToggles;
|
|
27
|
+
remove: (bits: number) => import("./toggles/user.js").UserToggles;
|
|
28
|
+
toJSON: () => number;
|
|
29
|
+
} | undefined;
|
|
10
30
|
premiumType?: import("@discordeno/types").PremiumTypes | undefined;
|
|
11
|
-
publicFlags?:
|
|
31
|
+
publicFlags?: {
|
|
32
|
+
bitfield: number;
|
|
33
|
+
contains: (bits: number) => boolean;
|
|
34
|
+
add: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
35
|
+
remove: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
36
|
+
toJSON: () => number;
|
|
37
|
+
} | undefined;
|
|
38
|
+
accentColor?: number | undefined;
|
|
12
39
|
id: bigint;
|
|
13
40
|
username: string;
|
|
14
41
|
discriminator: string;
|
|
15
|
-
|
|
42
|
+
bot: boolean;
|
|
43
|
+
system: boolean;
|
|
44
|
+
verified: boolean;
|
|
45
|
+
tag: string;
|
|
46
|
+
mfaEnabled: boolean;
|
|
16
47
|
} | undefined;
|
|
17
48
|
targetUser?: {
|
|
18
|
-
flags?:
|
|
49
|
+
flags?: {
|
|
50
|
+
bitfield: number;
|
|
51
|
+
contains: (bits: number) => boolean;
|
|
52
|
+
add: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
53
|
+
remove: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
54
|
+
toJSON: () => number;
|
|
55
|
+
} | undefined;
|
|
19
56
|
locale?: string | undefined;
|
|
20
57
|
avatar?: bigint | undefined;
|
|
21
58
|
email?: string | undefined;
|
|
59
|
+
banner?: bigint | undefined;
|
|
60
|
+
toggles?: {
|
|
61
|
+
bot: boolean;
|
|
62
|
+
system: boolean;
|
|
63
|
+
verified: boolean;
|
|
64
|
+
mfaEnabled: boolean;
|
|
65
|
+
bitfield: number;
|
|
66
|
+
has: (permissions: "bot" | "system" | "verified" | "mfaEnabled" | ("bot" | "system" | "verified" | "mfaEnabled")[]) => boolean;
|
|
67
|
+
list: () => Record<"bot" | "system" | "verified" | "mfaEnabled", boolean>;
|
|
68
|
+
contains: (bits: number) => boolean;
|
|
69
|
+
add: (bits: number) => import("./toggles/user.js").UserToggles;
|
|
70
|
+
remove: (bits: number) => import("./toggles/user.js").UserToggles;
|
|
71
|
+
toJSON: () => number;
|
|
72
|
+
} | undefined;
|
|
22
73
|
premiumType?: import("@discordeno/types").PremiumTypes | undefined;
|
|
23
|
-
publicFlags?:
|
|
74
|
+
publicFlags?: {
|
|
75
|
+
bitfield: number;
|
|
76
|
+
contains: (bits: number) => boolean;
|
|
77
|
+
add: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
78
|
+
remove: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
79
|
+
toJSON: () => number;
|
|
80
|
+
} | undefined;
|
|
81
|
+
accentColor?: number | undefined;
|
|
24
82
|
id: bigint;
|
|
25
83
|
username: string;
|
|
26
84
|
discriminator: string;
|
|
27
|
-
|
|
85
|
+
bot: boolean;
|
|
86
|
+
system: boolean;
|
|
87
|
+
verified: boolean;
|
|
88
|
+
tag: string;
|
|
89
|
+
mfaEnabled: boolean;
|
|
28
90
|
} | undefined;
|
|
29
91
|
targetApplication?: {
|
|
30
92
|
flags?: import("@discordeno/types").ApplicationFlags | undefined;
|
|
@@ -36,16 +98,47 @@ export declare function transformInvite(bot: Bot, invite: DiscordInviteCreate):
|
|
|
36
98
|
slug?: string | undefined;
|
|
37
99
|
coverImage?: bigint | undefined;
|
|
38
100
|
owner?: {
|
|
39
|
-
flags?:
|
|
101
|
+
flags?: {
|
|
102
|
+
bitfield: number;
|
|
103
|
+
contains: (bits: number) => boolean;
|
|
104
|
+
add: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
105
|
+
remove: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
106
|
+
toJSON: () => number;
|
|
107
|
+
} | undefined;
|
|
40
108
|
locale?: string | undefined;
|
|
41
109
|
avatar?: bigint | undefined;
|
|
42
110
|
email?: string | undefined;
|
|
111
|
+
banner?: bigint | undefined;
|
|
112
|
+
toggles?: {
|
|
113
|
+
bot: boolean;
|
|
114
|
+
system: boolean;
|
|
115
|
+
verified: boolean;
|
|
116
|
+
mfaEnabled: boolean;
|
|
117
|
+
bitfield: number;
|
|
118
|
+
has: (permissions: "bot" | "system" | "verified" | "mfaEnabled" | ("bot" | "system" | "verified" | "mfaEnabled")[]) => boolean;
|
|
119
|
+
list: () => Record<"bot" | "system" | "verified" | "mfaEnabled", boolean>;
|
|
120
|
+
contains: (bits: number) => boolean;
|
|
121
|
+
add: (bits: number) => import("./toggles/user.js").UserToggles;
|
|
122
|
+
remove: (bits: number) => import("./toggles/user.js").UserToggles;
|
|
123
|
+
toJSON: () => number;
|
|
124
|
+
} | undefined;
|
|
43
125
|
premiumType?: import("@discordeno/types").PremiumTypes | undefined;
|
|
44
|
-
publicFlags?:
|
|
126
|
+
publicFlags?: {
|
|
127
|
+
bitfield: number;
|
|
128
|
+
contains: (bits: number) => boolean;
|
|
129
|
+
add: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
130
|
+
remove: (bits: number) => import("./toggles/ToggleBitfield.js").ToggleBitfield;
|
|
131
|
+
toJSON: () => number;
|
|
132
|
+
} | undefined;
|
|
133
|
+
accentColor?: number | undefined;
|
|
45
134
|
id: bigint;
|
|
46
135
|
username: string;
|
|
47
136
|
discriminator: string;
|
|
48
|
-
|
|
137
|
+
bot: boolean;
|
|
138
|
+
system: boolean;
|
|
139
|
+
verified: boolean;
|
|
140
|
+
tag: string;
|
|
141
|
+
mfaEnabled: boolean;
|
|
49
142
|
} | undefined;
|
|
50
143
|
team?: {
|
|
51
144
|
icon?: bigint | undefined;
|
|
@@ -56,7 +149,7 @@ export declare function transformInvite(bot: Bot, invite: DiscordInviteCreate):
|
|
|
56
149
|
membershipState: import("@discordeno/types").TeamMembershipStates;
|
|
57
150
|
permissions: "*"[];
|
|
58
151
|
teamId: bigint;
|
|
59
|
-
user: import("./
|
|
152
|
+
user: import("./user.js").User;
|
|
60
153
|
}[];
|
|
61
154
|
} | undefined;
|
|
62
155
|
guildId?: bigint | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../src/transformers/invite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAItC,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,mBAAmB
|
|
1
|
+
{"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../src/transformers/invite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAItC,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCpE;AAED,MAAM,WAAW,MAAO,SAAQ,UAAU,CAAC,OAAO,eAAe,CAAC;CAAG"}
|
|
@@ -1,45 +1,39 @@
|
|
|
1
|
-
import type { DiscordMember
|
|
1
|
+
import type { DiscordMember } from '@discordeno/types';
|
|
2
2
|
import type { Bot } from '../bot.js';
|
|
3
|
+
import { Permissions } from './toggles/Permissions.js';
|
|
3
4
|
import { MemberToggles } from './toggles/member.js';
|
|
4
|
-
import {
|
|
5
|
-
export declare function
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
};
|
|
17
|
-
export declare function transformMember(bot: Bot, payload: DiscordMember, guildId: bigint, userId: bigint): {
|
|
18
|
-
avatar?: bigint | undefined;
|
|
19
|
-
permissions?: bigint | undefined;
|
|
20
|
-
nick?: string | undefined;
|
|
21
|
-
user?: {
|
|
22
|
-
flags?: import("@discordeno/types").UserFlags | undefined;
|
|
23
|
-
locale?: string | undefined;
|
|
24
|
-
avatar?: bigint | undefined;
|
|
25
|
-
email?: string | undefined;
|
|
26
|
-
premiumType?: import("@discordeno/types").PremiumTypes | undefined;
|
|
27
|
-
publicFlags?: import("@discordeno/types").UserFlags | undefined;
|
|
28
|
-
id: bigint;
|
|
29
|
-
username: string;
|
|
30
|
-
discriminator: string;
|
|
31
|
-
toggles: UserToggles;
|
|
32
|
-
} | undefined;
|
|
33
|
-
premiumSince?: number | undefined;
|
|
34
|
-
communicationDisabledUntil?: number | undefined;
|
|
5
|
+
import type { User } from './user.js';
|
|
6
|
+
export declare function transformMember(bot: Bot, payload: DiscordMember, guildId: bigint, userId: bigint): Member;
|
|
7
|
+
export interface BaseMember {
|
|
8
|
+
/** Whether the user is deafened in voice channels */
|
|
9
|
+
deaf?: boolean;
|
|
10
|
+
/** Whether the user is muted in voice channels */
|
|
11
|
+
mute?: boolean;
|
|
12
|
+
/** Whether the user has not yet passed the guild's Membership Screening requirements */
|
|
13
|
+
pending?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface Member extends BaseMember {
|
|
16
|
+
/** The user id of the member. */
|
|
35
17
|
id: bigint;
|
|
36
|
-
|
|
18
|
+
/** The compressed form of all the boolean values on this user. */
|
|
19
|
+
toggles?: MemberToggles;
|
|
20
|
+
/** The guild id where this member is. */
|
|
37
21
|
guildId: bigint;
|
|
22
|
+
/** The user this guild member represents */
|
|
23
|
+
user?: User;
|
|
24
|
+
/** This users guild nickname */
|
|
25
|
+
nick?: string;
|
|
26
|
+
/** The members custom avatar for this server. */
|
|
27
|
+
avatar?: bigint;
|
|
28
|
+
/** Array of role object ids */
|
|
38
29
|
roles: bigint[];
|
|
30
|
+
/** When the user joined the guild */
|
|
39
31
|
joinedAt: number;
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
32
|
+
/** When the user started boosting the guild */
|
|
33
|
+
premiumSince?: number;
|
|
34
|
+
/** The permissions this member has in the guild. Only present on interaction events. */
|
|
35
|
+
permissions?: Permissions;
|
|
36
|
+
/** when the user's timeout will expire and the user will be able to communicate in the guild again (set null to remove timeout), null or a time in the past if the user is not timed out */
|
|
37
|
+
communicationDisabledUntil?: number;
|
|
44
38
|
}
|
|
45
39
|
//# sourceMappingURL=member.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../src/transformers/member.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../src/transformers/member.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAcrC,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAoBzG;AAED,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,MAAO,SAAQ,UAAU;IACxC,iCAAiC;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,kEAAkE;IAClE,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAA;IACf,4CAA4C;IAC5C,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+BAA+B;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,wFAAwF;IACxF,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,4LAA4L;IAC5L,0BAA0B,CAAC,EAAE,MAAM,CAAA;CACpC"}
|
|
@@ -1,37 +1,33 @@
|
|
|
1
1
|
import { iconHashToBigInt } from '@discordeno/utils';
|
|
2
|
+
import { Permissions } from './toggles/Permissions.js';
|
|
2
3
|
import { MemberToggles } from './toggles/member.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
premiumType: payload.premium_type,
|
|
15
|
-
publicFlags: payload.public_flags,
|
|
16
|
-
toggles: new UserToggles(payload)
|
|
17
|
-
};
|
|
18
|
-
return user;
|
|
19
|
-
}
|
|
20
|
-
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
4
|
+
const baseMember = {
|
|
5
|
+
get deaf () {
|
|
6
|
+
return !!this.toggles?.has('deaf');
|
|
7
|
+
},
|
|
8
|
+
get mute () {
|
|
9
|
+
return !!this.toggles?.has('mute');
|
|
10
|
+
},
|
|
11
|
+
get pending () {
|
|
12
|
+
return !!this.toggles?.has('pending');
|
|
13
|
+
}
|
|
14
|
+
};
|
|
21
15
|
export function transformMember(bot, payload, guildId, userId) {
|
|
22
|
-
const member =
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
16
|
+
const member = Object.create(baseMember);
|
|
17
|
+
const props = bot.transformers.desiredProperties.member;
|
|
18
|
+
if (userId && props.id) member.id = userId;
|
|
19
|
+
if (guildId && props.guildId) member.guildId = guildId;
|
|
20
|
+
if (payload.user && props.user) member.user = bot.transformers.user(bot, payload.user);
|
|
21
|
+
if (payload.nick && props.nick) member.nick = payload.nick;
|
|
22
|
+
if (payload.roles && props.roles) member.roles = payload.roles.map((id)=>bot.transformers.snowflake(id));
|
|
23
|
+
if (payload.joined_at && props.joinedAt) member.joinedAt = Date.parse(payload.joined_at);
|
|
24
|
+
if (payload.premium_since && props.premiumSince) member.premiumSince = Date.parse(payload.premium_since);
|
|
25
|
+
if (payload.communication_disabled_until && props.communicationDisabledUntil) member.communicationDisabledUntil = Date.parse(payload.communication_disabled_until);
|
|
26
|
+
if (payload.avatar && props.avatar) member.avatar = iconHashToBigInt(payload.avatar);
|
|
27
|
+
if (payload.permissions && props.permissions) member.permissions = new Permissions(payload.permissions);
|
|
28
|
+
if (props.deaf || props.mute || props.pending) {
|
|
29
|
+
member.toggles = new MemberToggles(payload);
|
|
30
|
+
}
|
|
35
31
|
return member;
|
|
36
32
|
}
|
|
37
33
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/transformers/member.ts"],"sourcesContent":["import type { DiscordMember
|
|
1
|
+
{"version":3,"sources":["../../src/transformers/member.ts"],"sourcesContent":["import type { DiscordMember } from '@discordeno/types'\nimport { iconHashToBigInt } from '@discordeno/utils'\nimport type { Bot } from '../bot.js'\nimport { Permissions } from './toggles/Permissions.js'\nimport { MemberToggles } from './toggles/member.js'\nimport type { User } from './user.js'\n\nconst baseMember: Partial<Member> & BaseMember = {\n get deaf() {\n return !!this.toggles?.has('deaf')\n },\n get mute() {\n return !!this.toggles?.has('mute')\n },\n get pending() {\n return !!this.toggles?.has('pending')\n },\n}\n\nexport function transformMember(bot: Bot, payload: DiscordMember, guildId: bigint, userId: bigint): Member {\n const member: Member = Object.create(baseMember)\n const props = bot.transformers.desiredProperties.member\n\n if (userId && props.id) member.id = userId\n if (guildId && props.guildId) member.guildId = guildId\n if (payload.user && props.user) member.user = bot.transformers.user(bot, payload.user)\n if (payload.nick && props.nick) member.nick = payload.nick\n if (payload.roles && props.roles) member.roles = payload.roles.map((id) => bot.transformers.snowflake(id))\n if (payload.joined_at && props.joinedAt) member.joinedAt = Date.parse(payload.joined_at)\n if (payload.premium_since && props.premiumSince) member.premiumSince = Date.parse(payload.premium_since)\n if (payload.communication_disabled_until && props.communicationDisabledUntil)\n member.communicationDisabledUntil = Date.parse(payload.communication_disabled_until)\n if (payload.avatar && props.avatar) member.avatar = iconHashToBigInt(payload.avatar)\n if (payload.permissions && props.permissions) member.permissions = new Permissions(payload.permissions)\n if (props.deaf || props.mute || props.pending) {\n member.toggles = new MemberToggles(payload)\n }\n\n return member\n}\n\nexport interface BaseMember {\n /** Whether the user is deafened in voice channels */\n deaf?: boolean\n /** Whether the user is muted in voice channels */\n mute?: boolean\n /** Whether the user has not yet passed the guild's Membership Screening requirements */\n pending?: boolean\n}\n\nexport interface Member extends BaseMember {\n /** The user id of the member. */\n id: bigint\n /** The compressed form of all the boolean values on this user. */\n toggles?: MemberToggles\n /** The guild id where this member is. */\n guildId: bigint\n /** The user this guild member represents */\n user?: User\n /** This users guild nickname */\n nick?: string\n /** The members custom avatar for this server. */\n avatar?: bigint\n /** Array of role object ids */\n roles: bigint[]\n /** When the user joined the guild */\n joinedAt: number\n /** When the user started boosting the guild */\n premiumSince?: number\n /** The permissions this member has in the guild. Only present on interaction events. */\n permissions?: Permissions\n /** when the user's timeout will expire and the user will be able to communicate in the guild again (set null to remove timeout), null or a time in the past if the user is not timed out */\n communicationDisabledUntil?: number\n}\n"],"names":["iconHashToBigInt","Permissions","MemberToggles","baseMember","deaf","toggles","has","mute","pending","transformMember","bot","payload","guildId","userId","member","Object","create","props","transformers","desiredProperties","id","user","nick","roles","map","snowflake","joined_at","joinedAt","Date","parse","premium_since","premiumSince","communication_disabled_until","communicationDisabledUntil","avatar","permissions"],"mappings":"AACA,SAASA,gBAAgB,QAAQ,oBAAmB;AAEpD,SAASC,WAAW,QAAQ,2BAA0B;AACtD,SAASC,aAAa,QAAQ,sBAAqB;AAGnD,MAAMC,aAA2C;IAC/C,IAAIC,QAAO;QACT,OAAO,CAAC,CAAC,IAAI,CAACC,OAAO,EAAEC,IAAI;IAC7B;IACA,IAAIC,QAAO;QACT,OAAO,CAAC,CAAC,IAAI,CAACF,OAAO,EAAEC,IAAI;IAC7B;IACA,IAAIE,WAAU;QACZ,OAAO,CAAC,CAAC,IAAI,CAACH,OAAO,EAAEC,IAAI;IAC7B;AACF;AAEA,OAAO,SAASG,gBAAgBC,GAAQ,EAAEC,OAAsB,EAAEC,OAAe,EAAEC,MAAc,EAAU;IACzG,MAAMC,SAAiBC,OAAOC,MAAM,CAACb;IACrC,MAAMc,QAAQP,IAAIQ,YAAY,CAACC,iBAAiB,CAACL,MAAM;IAEvD,IAAID,UAAUI,MAAMG,EAAE,EAAEN,OAAOM,EAAE,GAAGP;IACpC,IAAID,WAAWK,MAAML,OAAO,EAAEE,OAAOF,OAAO,GAAGA;IAC/C,IAAID,QAAQU,IAAI,IAAIJ,MAAMI,IAAI,EAAEP,OAAOO,IAAI,GAAGX,IAAIQ,YAAY,CAACG,IAAI,CAACX,KAAKC,QAAQU,IAAI;IACrF,IAAIV,QAAQW,IAAI,IAAIL,MAAMK,IAAI,EAAER,OAAOQ,IAAI,GAAGX,QAAQW,IAAI;IAC1D,IAAIX,QAAQY,KAAK,IAAIN,MAAMM,KAAK,EAAET,OAAOS,KAAK,GAAGZ,QAAQY,KAAK,CAACC,GAAG,CAAC,CAACJ,KAAOV,IAAIQ,YAAY,CAACO,SAAS,CAACL;IACtG,IAAIT,QAAQe,SAAS,IAAIT,MAAMU,QAAQ,EAAEb,OAAOa,QAAQ,GAAGC,KAAKC,KAAK,CAAClB,QAAQe,SAAS;IACvF,IAAIf,QAAQmB,aAAa,IAAIb,MAAMc,YAAY,EAAEjB,OAAOiB,YAAY,GAAGH,KAAKC,KAAK,CAAClB,QAAQmB,aAAa;IACvG,IAAInB,QAAQqB,4BAA4B,IAAIf,MAAMgB,0BAA0B,EAC1EnB,OAAOmB,0BAA0B,GAAGL,KAAKC,KAAK,CAAClB,QAAQqB,4BAA4B;IACrF,IAAIrB,QAAQuB,MAAM,IAAIjB,MAAMiB,MAAM,EAAEpB,OAAOoB,MAAM,GAAGlC,iBAAiBW,QAAQuB,MAAM;IACnF,IAAIvB,QAAQwB,WAAW,IAAIlB,MAAMkB,WAAW,EAAErB,OAAOqB,WAAW,GAAG,IAAIlC,YAAYU,QAAQwB,WAAW;IACtG,IAAIlB,MAAMb,IAAI,IAAIa,MAAMV,IAAI,IAAIU,MAAMT,OAAO,EAAE;QAC7CM,OAAOT,OAAO,GAAG,IAAIH,cAAcS;IACrC,CAAC;IAED,OAAOG;AACT,CAAC"}
|
|
@@ -5,8 +5,9 @@ import type { Channel } from './channel.js';
|
|
|
5
5
|
import type { Component } from './component.js';
|
|
6
6
|
import type { Embed } from './embed.js';
|
|
7
7
|
import type { Emoji } from './emoji.js';
|
|
8
|
-
import type { Member
|
|
8
|
+
import type { Member } from './member.js';
|
|
9
9
|
import { ToggleBitfield } from './toggles/ToggleBitfield.js';
|
|
10
|
+
import type { User } from './user.js';
|
|
10
11
|
export interface MessageBase {
|
|
11
12
|
/** Holds all the boolean values on this message. */
|
|
12
13
|
bitfield?: ToggleBitfield;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/transformers/message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEjI,OAAO,EAAwB,KAAK,GAAG,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/transformers/message.ts"],"names":[],"mappings":"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"}
|