decord/source/modules/guild_communication_disabled/useCanToggleCommunicationDisableOnUser.tsx
github-actions ecf26fc058 chore: update source for alpha 347.2
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4823.js (118.4 MB)
2026-09-16 07:03:15 +00:00

61 lines
2.2 KiB
TypeScript

// Module ID: 9546
// Function ID: 9547
// Name: useCanToggleCommunicationDisableOnUser
// Dependencies: [1976, 1980, 4276, 1372, 1074, 4281, 504, 2]
// Exports: default
// Module 9546 (useCanToggleCommunicationDisableOnUser)
import Constants from "Constants" /* 1074 */;
import GuildRecord from "GuildRecord" /* 1976 */;
import PermissionUtilsAll from "PermissionUtils" /* 4281 */;
import GuildStore from "GuildStore" /* 1980 */;
import PermissionStore from "PermissionStore" /* 4276 */;
import UserStore from "UserStore" /* 1372 */;
import size from "module_2" /* 2 */;
const require = globalThis.__r;
function canToggleCommunicationDisableOnUser(id, id2, items) {
let tmp = items;
if (items === undefined) {
items = [UserStore, GuildStore, PermissionStore];
tmp = items;
}
[obj, obj2, obj3] = tmp;
const guild = obj2.getGuild(id);
const user = obj.getUser(id2);
let tmp6 = null != guild && null != user;
if (tmp6) {
const isNonUserBotResult = user.isNonUserBot();
let tmp8 = !isNonUserBotResult;
if (!isNonUserBotResult) {
let canResult = isGuildOwner(guild, user);
if (!canResult) {
const obj4 = { permission: Permissions.ADMINISTRATOR, user, context: guild };
canResult = PermissionUtilsAll.can(obj4);
}
let canManageUserResult = !canResult;
if (!canResult) {
canManageUserResult = obj3.canManageUser(Permissions.MODERATE_MEMBERS, user, guild);
}
tmp8 = canManageUserResult;
}
tmp6 = tmp8;
}
return tmp6;
}
const isGuildOwner = GuildRecord.isGuildOwner;
const Permissions = Constants.Permissions;
const result = size.fileFinishedImporting("modules/guild_communication_disabled/useCanToggleCommunicationDisableOnUser.tsx");
export default function useCanToggleCommunicationDisableOnUser(arg0, arg1) {
_require = arg0;
closure_1 = arg1;
let items = [UserStore, GuildStore, PermissionStore];
const items1 = [arg0, arg1];
return require("initialize").useStateFromStores(items, () => {
const items = [UserStore, GuildStore, PermissionStore];
return canToggleCommunicationDisableOnUser(closure_0, closure_1, items);
}, items1);
};
export { canToggleCommunicationDisableOnUser };