'Admin', self::Operator => 'Operator', self::Viewer => 'Viewer', }; } public function badgeClass(): string { return match($this) { self::Admin => 'role-badge-admin', self::Operator => 'role-badge-op', self::Viewer => 'mbx-badge-mute', }; } public static function values(): array { return array_column(self::cases(), 'value'); } public static function options(): array { return array_map(fn($r) => ['value' => $r->value, 'label' => $r->label()], self::cases()); } }