@tf2pickup-org/mumble-client
Version:
A simple bot for managing mumble servers
62 lines • 1.47 kB
JavaScript
const write = 0x1;
const traverse = 0x2;
const enter = 0x4;
const speak = 0x8;
const muteDeafen = 0x10;
const move = 0x20;
const makeChannel = 0x40;
const linkChannel = 0x80;
const whisper = 0x100;
const textMessage = 0x200;
const makeTempChannel = 0x400;
const listen = 0x800;
const kick = 0x10000;
const ban = 0x20000;
const register = 0x40000;
const selfRegister = 0x80000;
const resetUserContent = 0x100000;
const all = write +
traverse +
enter +
speak +
muteDeafen +
move +
makeChannel +
linkChannel +
whisper +
textMessage +
makeTempChannel +
listen +
kick +
ban +
register +
selfRegister +
resetUserContent;
export class Permissions {
permissions;
static superUser() {
return new Permissions(all & ~(speak | whisper));
}
constructor(permissions) {
this.permissions = permissions;
}
get canJoinChannel() {
return !!(this.permissions & (write | enter));
}
get canCreateChannel() {
return !!(this.permissions & (write | makeChannel));
}
get canRemoveChannel() {
return !!(this.permissions & write);
}
get canLinkChannel() {
return !!(this.permissions & (write | linkChannel));
}
get canSelfRegister() {
return !!(this.permissions & (selfRegister | write));
}
get canRegister() {
return !!(this.permissions & (register | write));
}
}
//# sourceMappingURL=permissions.js.map