refactor(helpers): separate functions into files (#667)

* refactor(helpers): separate functions into files

* idk

* idk
This commit is contained in:
ayntee
2021-03-13 08:10:31 -05:00
committed by GitHub
parent 88ce4da555
commit e9cbbbff7c
143 changed files with 3362 additions and 2915 deletions
+31
View File
@@ -0,0 +1,31 @@
import { cacheHandlers } from "../../cache.ts";
import { RequestManager } from "../../rest/request_manager.ts";
import { structures } from "../../structures/mod.ts";
import { CreateRoleOptions, RoleData } from "../../types/mod.ts";
import { endpoints } from "../../util/constants.ts";
import {
calculateBits,
requireBotGuildPermissions,
} from "../../util/permissions.ts";
/** Create a new role for the guild. Requires the MANAGE_ROLES permission. */
export async function createRole(
guildID: string,
options: CreateRoleOptions,
reason?: string,
) {
await requireBotGuildPermissions(guildID, ["MANAGE_ROLES"]);
const result = await RequestManager.post(endpoints.GUILD_ROLES(guildID), {
...options,
permissions: calculateBits(options?.permissions || []),
reason,
});
const roleData = result as RoleData;
const role = await structures.createRoleStruct(roleData);
const guild = await cacheHandlers.get("guilds", guildID);
guild?.roles.set(role.id, role);
return role;
}