fix(Message): check if in voice based channel for pinnable (#11215)

* fix(Message): check if in voice based channel for `pinnable`

* chore: changes from main

---------

Co-authored-by: Jiralite <33201955+Jiralite@users.noreply.github.com>
This commit is contained in:
Danial Raza
2025-10-28 15:59:42 +01:00
committed by GitHub
parent abb84ce88f
commit c2c8cce1d7

View File

@@ -781,17 +781,16 @@ class Message extends Base {
*/
get pinnable() {
const { channel } = this;
if (this.system) return false;
if (!this.guild) return true;
if (!channel?.viewable) return false;
if (!channel || channel.isVoiceBased() || !channel.viewable) return false;
const permissions = channel?.permissionsFor(this.client.user);
if (!permissions) return false;
return (
permissions.has([PermissionFlagsBits.ReadMessageHistory, PermissionFlagsBits.PinMessages]) ||
permissions.has([PermissionFlagsBits.ReadMessageHistory, PermissionFlagsBits.ManageMessages])
permissions.has(PermissionFlagsBits.ReadMessageHistory | PermissionFlagsBits.PinMessages) ||
permissions.has(PermissionFlagsBits.ReadMessageHistory | PermissionFlagsBits.ManageMessages)
);
}