decord/source/modules/messages/isMessagePinnable.tsx

47 lines
1.8 KiB
TypeScript
Raw Normal View History

2026-07-24 07:16:23 +00:00
// Module ID: 9575
// Function ID: 74494
2026-07-20 16:05:17 +00:00
// Name: isMessagePinnable
2026-07-23 10:11:24 +00:00
// Dependencies: [3758, 653, 5651, 5650, 2]
2026-07-20 16:05:17 +00:00
// Exports: default
2026-07-24 07:16:23 +00:00
// Module 9575 (isMessagePinnable)
2026-07-23 10:11:24 +00:00
import _isNativeReflectConstruct from "_isNativeReflectConstruct";
import ME from "ME";
let closure_4;
let closure_5;
const require = arg1;
({ ChannelTypes: closure_4, Permissions: closure_5 } = ME);
const result = require("isSystemMessage").fileFinishedImporting("modules/messages/isMessagePinnable.tsx");
2026-07-20 16:05:17 +00:00
export default function isMessagePinnable(arg0, isSystemDM) {
let isActiveChannelOrUnarchivableThread = !isSystemDM.isSystemDM();
if (isActiveChannelOrUnarchivableThread) {
2026-07-23 10:11:24 +00:00
isActiveChannelOrUnarchivableThread = !importDefault(5651)(arg0);
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let canResult = _isNativeReflectConstruct.can(constants2.PIN_MESSAGES, isSystemDM);
2026-07-20 16:05:17 +00:00
if (canResult) {
2026-07-23 10:11:24 +00:00
canResult = _isNativeReflectConstruct.can(constants2.READ_MESSAGE_HISTORY, isSystemDM);
2026-07-20 16:05:17 +00:00
}
if (isActiveChannelOrUnarchivableThread) {
if (!canResult) {
canResult = isSystemDM.isPrivate();
}
isActiveChannelOrUnarchivableThread = canResult;
}
if (isActiveChannelOrUnarchivableThread) {
2026-07-23 10:11:24 +00:00
isActiveChannelOrUnarchivableThread = require(5650) /* useCanStartPublicThread */.getIsActiveChannelOrUnarchivableThread(isSystemDM);
const obj = require(5650) /* useCanStartPublicThread */;
2026-07-20 16:05:17 +00:00
}
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;
};