decord/source/modules/replies/canReplyToMessage.tsx

116 lines
3.6 KiB
TypeScript
Raw Normal View History

2026-07-29 08:29:29 +00:00
// Module ID: 7757
// Function ID: 7758
// Name: useCanReplyToMessage
// Dependencies: [32, 3817, 1874, 676, 505, 686, 6048, 7758, 589, 2]
2026-07-20 16:05:17 +00:00
// Exports: canReplyToMessage, useCanReplyToMessage
2026-07-29 08:29:29 +00:00
// Module 7757 (useCanReplyToMessage)
2026-07-23 10:11:24 +00:00
import _slicedToArray from "_slicedToArray";
2026-07-29 08:29:29 +00:00
import getUncachedChannelPermissions from "getUncachedChannelPermissions";
import mergeGuildAvatar from "mergeGuildAvatar";
2026-07-23 10:11:24 +00:00
import ME from "ME";
import { Permissions } from "sum";
2026-07-29 08:29:29 +00:00
let c5;
2026-07-23 10:11:24 +00:00
let closure_6;
const require = arg1;
2026-07-29 08:29:29 +00:00
({ MessageFlags: c5, MessageStates: closure_6 } = ME);
const result = require("mergeGuildAvatar").fileFinishedImporting("modules/replies/canReplyToMessage.tsx");
2026-07-20 16:05:17 +00:00
2026-07-29 08:29:29 +00:00
export const useCanReplyToMessage = function useCanReplyToMessage(channel, message) {
const _require = channel;
2026-07-20 16:05:17 +00:00
const dependencyMap = message;
2026-07-29 08:29:29 +00:00
const canUnarchiveThread = _require(6048).useCanUnarchiveThread(channel);
const obj = _require(6048);
let tmp = _require;
2026-07-20 16:05:17 +00:00
let guildId;
2026-07-29 08:29:29 +00:00
if (channel != null) {
guildId = channel.getGuildId();
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
const obj2 = _require(7758);
const items = [getUncachedChannelPermissions];
let stateFromStores = tmp(589).useStateFromStores(items, () => {
let tmp = null != channel;
2026-07-20 16:05:17 +00:00
if (tmp) {
2026-07-29 08:29:29 +00:00
tmp = null != message;
2026-07-20 16:05:17 +00:00
}
if (tmp) {
2026-07-29 08:29:29 +00:00
if (obj.isPrivate()) {
let hasItem = !obj.isSystemDM();
} else {
hasItem = obj2.can(outer1_7.SEND_MESSAGES, obj) && obj2.can(outer1_7.READ_MESSAGE_HISTORY, obj);
const tmp4 = outer1_7;
}
if (hasItem) {
const REPLYABLE = channel(message[5]).MessageTypesSets.REPLYABLE;
hasItem = REPLYABLE.has(tmp3.type);
}
tmp = hasItem;
tmp3 = message;
2026-07-20 16:05:17 +00:00
}
return tmp;
});
2026-07-29 08:29:29 +00:00
let tmp6 = null != channel && null != message;
2026-07-20 16:05:17 +00:00
if (tmp6) {
2026-07-29 08:29:29 +00:00
const isArchivedThreadResult = channel.isArchivedThread();
let tmp11 = !isArchivedThreadResult;
if (isArchivedThreadResult) {
tmp11 = canUnarchiveThread;
}
if (stateFromStores) {
stateFromStores = message.state === constants2.SENT;
}
if (stateFromStores) {
stateFromStores = !hasFlagResult;
}
if (stateFromStores) {
stateFromStores = !callback(obj2.useCurrentUserCommunicationDisabled(guildId), 2)[1];
}
if (stateFromStores) {
stateFromStores = tmp11;
}
tmp6 = stateFromStores;
hasFlagResult = message.hasFlag(constants.EPHEMERAL);
2026-07-20 16:05:17 +00:00
}
return tmp6;
};
export const canReplyToMessage = function canReplyToMessage(channel, message) {
2026-07-29 08:29:29 +00:00
const obj = require(6048) /* useCanUnarchiveThread */;
if (channel.isPrivate()) {
let hasItem = !channel.isSystemDM();
} else {
hasItem = obj2.can(Permissions.SEND_MESSAGES, channel) && obj2.can(Permissions.READ_MESSAGE_HISTORY, channel);
const tmp4 = Permissions;
}
if (hasItem) {
const REPLYABLE = tmp(686).MessageTypesSets.REPLYABLE;
hasItem = REPLYABLE.has(message.type);
}
2026-07-23 10:11:24 +00:00
currentUser = currentUser.getCurrentUser();
2026-07-29 08:29:29 +00:00
const canUnarchiveThreadResult = require(6048) /* useCanUnarchiveThread */.canUnarchiveThread(channel);
2026-07-20 16:05:17 +00:00
let id;
2026-07-29 08:29:29 +00:00
if (currentUser != null) {
2026-07-20 16:05:17 +00:00
id = currentUser.id;
}
const guildId = channel.getGuildId();
2026-07-29 08:29:29 +00:00
const tmpResult = require(7758) /* useUserCommunicationDisabled */;
const isArchivedThreadResult = channel.isArchivedThread();
let tmp11 = !isArchivedThreadResult;
if (isArchivedThreadResult) {
tmp11 = canUnarchiveThreadResult;
}
if (hasItem) {
hasItem = message.state === constants2.SENT;
}
if (hasItem) {
hasItem = !hasFlagResult;
}
if (hasItem) {
hasItem = !callback(tmpResult.userCommunicationDisabled(id, guildId), 2)[1];
}
if (hasItem) {
hasItem = tmp11;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return hasItem;
2026-07-20 16:05:17 +00:00
};