decord/source/modules/reactions/canReactToMessage.tsx

80 lines
2.7 KiB
TypeScript
Raw Normal View History

2026-08-05 07:35:12 +00:00
// Module ID: 7860
// Function ID: 7861
2026-07-20 16:05:17 +00:00
// Name: canReactToMessageInternal
2026-08-05 07:35:12 +00:00
// Dependencies: [1942, 5083, 3883, 1874, 676, 1384, 3872, 589, 2]
2026-07-20 16:05:17 +00:00
// Exports: canReactToMessage, useCanReactToMessage
2026-08-05 07:35:12 +00:00
// Module 7860 (canReactToMessageInternal)
2026-07-29 08:29:29 +00:00
import trackCommunicationDisabled from "trackCommunicationDisabled";
import recomputeGuild from "recomputeGuild";
import getUncachedChannelPermissions from "getUncachedChannelPermissions";
import mergeGuildAvatar from "mergeGuildAvatar";
2026-07-23 10:11:24 +00:00
import ME from "ME";
2026-07-29 08:29:29 +00:00
let c9;
2026-07-23 10:11:24 +00:00
let closure_6;
2026-07-29 08:29:29 +00:00
let error;
let metroImportAll;
2026-07-23 10:11:24 +00:00
const require = arg1;
2026-07-20 16:05:17 +00:00
function canReactToMessageInternal(state, getGuildId, items) {
let obj;
let obj2;
let obj3;
let obj4;
[obj, obj2, obj3, obj4] = items;
const guildId = getGuildId.getGuildId();
const currentUser = obj.getCurrentUser();
let member = null;
if (null != guildId) {
let id;
2026-07-29 08:29:29 +00:00
if (currentUser != null) {
2026-07-20 16:05:17 +00:00
id = currentUser.id;
}
member = null;
if (null != id) {
member = obj2.getMember(guildId, currentUser.id);
}
}
let canResult = null != guildId && obj3.canChatInGuild(guildId);
if (canResult) {
canResult = obj4.can(constants.ADD_REACTIONS, getGuildId);
}
if (!canResult) {
canResult = getGuildId.isPrivate();
}
if (canResult) {
canResult = !getGuildId.isArchivedLockedThread();
}
if (canResult) {
canResult = state.state !== constants2.SEND_FAILED;
}
if (canResult) {
canResult = state.type !== constants3.THREAD_STARTER_MESSAGE;
}
if (canResult) {
2026-07-29 08:29:29 +00:00
canResult = !require(1384) /* hasFlag */.hasFlag(state.flags, constants4.EPHEMERAL);
const obj5 = require(1384) /* hasFlag */;
2026-07-20 16:05:17 +00:00
}
if (canResult) {
2026-08-05 07:35:12 +00:00
canResult = !require(3872) /* isCommunicationDisabled */.isMemberCommunicationDisabled(member);
const obj6 = require(3872) /* isCommunicationDisabled */;
2026-07-20 16:05:17 +00:00
}
return canResult;
}
2026-07-29 08:29:29 +00:00
({ Permissions: closure_6, MessageStates: error, MessageTypes: metroImportAll, MessageFlags: c9 } = ME);
const result = require("getUncachedChannelPermissions").fileFinishedImporting("modules/reactions/canReactToMessage.tsx");
2026-07-20 16:05:17 +00:00
export const canReactToMessage = function canReactToMessage(message, channel) {
2026-07-29 08:29:29 +00:00
const items = [mergeGuildAvatar, trackCommunicationDisabled, recomputeGuild, getUncachedChannelPermissions];
2026-07-20 16:05:17 +00:00
return canReactToMessageInternal(message, channel, items);
};
export const useCanReactToMessage = function useCanReactToMessage(arg0, arg1) {
2026-07-23 10:11:24 +00:00
const _require = arg0;
2026-07-20 16:05:17 +00:00
const dependencyMap = arg1;
2026-07-29 08:29:29 +00:00
let items = [mergeGuildAvatar, trackCommunicationDisabled, recomputeGuild, getUncachedChannelPermissions];
return _require(589).useStateFromStores(items, () => {
2026-07-23 10:11:24 +00:00
const items = [outer1_5, outer1_2, outer1_3, outer1_4];
return outer1_10(closure_0, closure_1, items);
2026-07-20 16:05:17 +00:00
});
};