diff --git a/helpers/interactions/commands/createApplicationCommand.ts b/helpers/interactions/commands/createApplicationCommand.ts index a6c9c50af..603f138c5 100644 --- a/helpers/interactions/commands/createApplicationCommand.ts +++ b/helpers/interactions/commands/createApplicationCommand.ts @@ -16,7 +16,7 @@ import { AtLeastOne, PermissionStrings } from "../../../types/shared.ts"; */ export async function createApplicationCommand( bot: Bot, - options: CreateApplicationCommand | CreateContextApplicationCommand, + command: CreateApplicationCommand | CreateContextApplicationCommand, guildId?: bigint, ): Promise { const result = await bot.rest.runMethod( @@ -25,19 +25,27 @@ export async function createApplicationCommand( guildId ? bot.constants.routes.COMMANDS_GUILD(bot.applicationId, guildId) : bot.constants.routes.COMMANDS(bot.applicationId), - isContextApplicationCommand(options) - ? { name: options.name, name_localizations: options.nameLocalizations, type: options.type } - : { - name: options.name, - name_localizations: options.nameLocalizations, - description: options.description, - description_localizations: options.descriptionLocalizations, - type: options.type, - options: options.options ? makeOptionsForCommand(options.options) : undefined, - default_member_permissions: options.defaultMemberPermissions - ? bot.utils.calculateBits(options.defaultMemberPermissions) + isContextApplicationCommand(command) + ? { + name: command.name, + name_localizations: command.nameLocalizations, + type: command.type, + default_member_permissions: command.defaultMemberPermissions + ? bot.utils.calculateBits(command.defaultMemberPermissions) : undefined, - dm_permission: options.dmPermission, + dm_permission: command.dmPermission, + } + : { + name: command.name, + name_localizations: command.nameLocalizations, + description: command.description, + description_localizations: command.descriptionLocalizations, + type: command.type, + options: command.options ? makeOptionsForCommand(command.options) : undefined, + default_member_permissions: command.defaultMemberPermissions + ? bot.utils.calculateBits(command.defaultMemberPermissions) + : undefined, + dm_permission: command.dmPermission, }, ); @@ -94,7 +102,8 @@ export interface CreateApplicationCommand { } /** https://discord.com/developers/docs/interactions/application-commands#endpoints-json-params */ -export interface CreateContextApplicationCommand extends Omit { +export interface CreateContextApplicationCommand + extends Omit { /** The type of the command */ type: ApplicationCommandTypes.Message | ApplicationCommandTypes.User; } diff --git a/helpers/interactions/commands/upsertApplicationCommand.ts b/helpers/interactions/commands/upsertApplicationCommand.ts index bd99ee30b..5913d437f 100644 --- a/helpers/interactions/commands/upsertApplicationCommand.ts +++ b/helpers/interactions/commands/upsertApplicationCommand.ts @@ -15,7 +15,7 @@ import { export async function upsertApplicationCommand( bot: Bot, commandId: bigint, - options: AtLeastOne | AtLeastOne, + command: AtLeastOne | AtLeastOne, guildId?: bigint, ): Promise { const result = await bot.rest.runMethod( @@ -24,16 +24,27 @@ export async function upsertApplicationCommand( guildId ? bot.constants.routes.COMMANDS_GUILD_ID(bot.applicationId, guildId, commandId) : bot.constants.routes.COMMANDS_ID(bot.applicationId, commandId), - isContextApplicationCommand(options) + isContextApplicationCommand(command) ? { - name: options.name, - type: options.type, + name: command.name, + name_localizations: command.nameLocalizations, + type: command.type, + default_member_permissions: command.defaultMemberPermissions + ? bot.utils.calculateBits(command.defaultMemberPermissions) + : undefined, + dm_permission: command.dmPermission, } : { - name: options.name, - description: options.description, - type: options.type, - options: options.options ? makeOptionsForCommand(options.options) : undefined, + name: command.name, + name_localizations: command.nameLocalizations, + description: command.description, + description_localizations: command.descriptionLocalizations, + type: command.type, + options: command.options ? makeOptionsForCommand(command.options) : undefined, + default_member_permissions: command.defaultMemberPermissions + ? bot.utils.calculateBits(command.defaultMemberPermissions) + : undefined, + dm_permission: command.dmPermission, }, ); diff --git a/helpers/interactions/commands/upsertApplicationCommands.ts b/helpers/interactions/commands/upsertApplicationCommands.ts index 9d06e60db..a24c76105 100644 --- a/helpers/interactions/commands/upsertApplicationCommands.ts +++ b/helpers/interactions/commands/upsertApplicationCommands.ts @@ -16,7 +16,7 @@ import { */ export async function upsertApplicationCommands( bot: Bot, - options: (UpsertApplicationCommands | CreateContextApplicationCommand)[], + commands: (UpsertApplicationCommands | CreateContextApplicationCommand)[], guildId?: bigint, ): Promise> { const results = await bot.rest.runMethod( @@ -25,16 +25,27 @@ export async function upsertApplicationCommands( guildId ? bot.constants.routes.COMMANDS_GUILD(bot.applicationId, guildId) : bot.constants.routes.COMMANDS(bot.applicationId), - options.map((option) => (isContextApplicationCommand(option) + commands.map((command) => (isContextApplicationCommand(command) ? { - name: option.name, - type: option.type, + name: command.name, + name_localizations: command.nameLocalizations, + type: command.type, + default_member_permissions: command.defaultMemberPermissions + ? bot.utils.calculateBits(command.defaultMemberPermissions) + : undefined, + dm_permission: command.dmPermission, } : { - name: option.name, - description: option.description, - type: option.type, - options: option.options ? makeOptionsForCommand(option.options) : undefined, + name: command.name, + name_localizations: command.nameLocalizations, + description: command.description, + description_localizations: command.descriptionLocalizations, + type: command.type, + options: command.options ? makeOptionsForCommand(command.options) : undefined, + default_member_permissions: command.defaultMemberPermissions + ? bot.utils.calculateBits(command.defaultMemberPermissions) + : undefined, + dm_permission: command.dmPermission, }) ), );