UNPKG

@tf2pickup-org/mumble-client

Version:
62 lines 1.47 kB
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