decord/beta/source/modules/messages/isMessagePinnable.tsx
github-actions 30c0bb2ec3 chore: update source for beta 347.10
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4975.js (118.4 MB)
2026-09-24 16:03:38 +00:00

44 lines
1.8 KiB
TypeScript

// Module ID: 11822
// Function ID: 11823
// Name: isMessagePinnable
// Dependencies: [4431, 1078, 7546, 7545, 2]
// Exports: default
// Module 11822 (isMessagePinnable)
import ThreadHooks from "ThreadHooks" /* 7545 */;
import isSystemMessageDefault from "isSystemMessage" /* 7546 */;
import PermissionStore from "PermissionStore" /* 4431 */;
require = fn;
const Constants = fn(1078);
({ ChannelTypes: closure_4, Permissions: hasOwnProperty } = Constants);
const size = fn(2);
const result = size.fileFinishedImporting("modules/messages/isMessagePinnable.tsx");
export default function isMessagePinnable(arg0, isSystemDM) {
const isSystemDMResult = isSystemDM.isSystemDM();
let isActiveChannelOrUnarchivableThread = !isSystemDMResult;
if (!isSystemDMResult) {
isActiveChannelOrUnarchivableThread = !isSystemMessageDefault(arg0);
}
let isPrivateResult = PermissionStore.can(constants2.PIN_MESSAGES, isSystemDM) && PermissionStore.can(constants2.READ_MESSAGE_HISTORY, isSystemDM);
if (isActiveChannelOrUnarchivableThread) {
if (!isPrivateResult) {
isPrivateResult = isSystemDM.isPrivate();
}
isActiveChannelOrUnarchivableThread = isPrivateResult;
}
if (isActiveChannelOrUnarchivableThread) {
isActiveChannelOrUnarchivableThread = ThreadHooks.getIsActiveChannelOrUnarchivableThread(isSystemDM);
}
if (isActiveChannelOrUnarchivableThread) {
isActiveChannelOrUnarchivableThread = isSystemDM.type !== constants.GUILD_VOICE;
}
if (isActiveChannelOrUnarchivableThread) {
isActiveChannelOrUnarchivableThread = isSystemDM.type !== constants.GUILD_STAGE_VOICE;
}
if (isActiveChannelOrUnarchivableThread) {
isActiveChannelOrUnarchivableThread = isSystemDM.type !== constants.MEDIA_THREAD;
}
return isActiveChannelOrUnarchivableThread;
};