mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 11:28:15 +00:00
3d39b3878a
* p1 of bigints change * shtuff fixes and bits * Commit from GitHub Actions (Lint) * finish bigint structs * typings fixes * Commit from GitHub Actions (Lint) * more fixes * Commit from GitHub Actions (Lint) * more fixes * Commit from GitHub Actions (Lint) * blame wolf * Commit from GitHub Actions (Lint) * foxed * Commit from GitHub Actions (Lint) * fix unit tests * Commit from GitHub Actions (Lint) * change: guildUpdate guild ID can't change * delete server has been renamed to delete guild * fixes Co-authored-by: Skillz4Killz <Skillz4Killz@users.noreply.github.com> Co-authored-by: ITOH <72305210+itohatweb@users.noreply.github.com>
36 lines
832 B
TypeScript
36 lines
832 B
TypeScript
import { botId } from "../../bot.ts";
|
|
import { rest } from "../../rest/rest.ts";
|
|
import { Errors } from "../../types/misc/errors.ts";
|
|
import { endpoints } from "../../util/constants.ts";
|
|
import {
|
|
isHigherPosition,
|
|
requireBotGuildPermissions,
|
|
} from "../../util/permissions.ts";
|
|
|
|
/** Remove a role from the member */
|
|
export async function removeRole(
|
|
guildId: bigint,
|
|
memberId: bigint,
|
|
roleId: bigint,
|
|
reason?: string,
|
|
) {
|
|
const isHigherRolePosition = await isHigherPosition(
|
|
guildId,
|
|
botId,
|
|
roleId,
|
|
);
|
|
if (
|
|
!isHigherRolePosition
|
|
) {
|
|
throw new Error(Errors.BOTS_HIGHEST_ROLE_TOO_LOW);
|
|
}
|
|
|
|
await requireBotGuildPermissions(guildId, ["MANAGE_ROLES"]);
|
|
|
|
return await rest.runMethod<undefined>(
|
|
"delete",
|
|
endpoints.GUILD_MEMBER_ROLE(guildId, memberId, roleId),
|
|
{ reason },
|
|
);
|
|
}
|