mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-15 10:58:16 +00:00
feat(types): add premiumSubscriber to RoleToggles (#2141)
In the role tags discord sends a `premium_subscriber` field. It seems that this has been forgotten to add. Reference: https://discord.com/developers/docs/topics/permissions#role-object-role-tags-structure
This commit is contained in:
@@ -8,6 +8,8 @@ export const RoleToggle = {
|
||||
managed: 1 << 1,
|
||||
/** Whether this role is mentionable */
|
||||
mentionable: 1 << 2,
|
||||
/** Whether this is the guilds premium subscriber role */
|
||||
premiumSubscriber: 1 << 3,
|
||||
};
|
||||
|
||||
export class RoleToggles extends ToggleBitfield {
|
||||
@@ -17,6 +19,7 @@ export class RoleToggles extends ToggleBitfield {
|
||||
if (role.hoist) this.add(RoleToggle.hoist);
|
||||
if (role.managed) this.add(RoleToggle.managed);
|
||||
if (role.mentionable) this.add(RoleToggle.mentionable);
|
||||
if (role.tags?.premium_subscriber === null) this.add(RoleToggle.premiumSubscriber);
|
||||
}
|
||||
|
||||
/** If this role is showed seperately in the user listing */
|
||||
@@ -34,6 +37,11 @@ export class RoleToggles extends ToggleBitfield {
|
||||
return this.has("mentionable");
|
||||
}
|
||||
|
||||
/** Whether this is the guilds premium subscriber role */
|
||||
get premiumSubscriber() {
|
||||
return this.has("premiumSubscriber");
|
||||
}
|
||||
|
||||
/** Checks whether or not the permissions exist in this */
|
||||
has(permissions: RoleToggleKeys | RoleToggleKeys[]) {
|
||||
if (!Array.isArray(permissions)) return super.contains(RoleToggle[permissions]);
|
||||
|
||||
Reference in New Issue
Block a user