mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 11:28:15 +00:00
28 lines
934 B
TypeScript
28 lines
934 B
TypeScript
import { applicationId } from "../../bot.ts";
|
|
import { rest } from "../../rest/rest.ts";
|
|
import { EditGlobalApplicationCommand } from "../../types/interactions/edit_global_application_command.ts";
|
|
import { endpoints } from "../../util/constants.ts";
|
|
import { validateSlashCommands } from "../../util/utils.ts";
|
|
|
|
/**
|
|
* Bulk edit existing slash commands. If a command does not exist, it will create it.
|
|
*
|
|
* **NOTE:** Any slash commands that are not specified in this function will be **deleted**. If you don't provide the commandId and rename your command, the command gets a new Id.
|
|
*/
|
|
export async function upsertSlashCommands(
|
|
options: EditGlobalApplicationCommand[],
|
|
guildId?: string,
|
|
) {
|
|
validateSlashCommands(options);
|
|
|
|
const result = await rest.runMethod(
|
|
"put",
|
|
guildId
|
|
? endpoints.COMMANDS_GUILD(applicationId, guildId)
|
|
: endpoints.COMMANDS(applicationId),
|
|
options,
|
|
);
|
|
|
|
return result;
|
|
}
|