decord/alpha/source/modules/instant_invite/useInviteAssignableRoles.tsx
github-actions 6eea20b8e1 chore: update source for alpha 348.3
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/05xxx/module_5014.js (118.4 MB)
2026-09-24 10:59:02 +00:00

77 lines
2.7 KiB
TypeScript

// Module ID: 18361
// Function ID: 18362
// Name: useInviteAssignableRoles
// Dependencies: [19, 2102, 2101, 4464, 1372, 1074, 504, 4469, 2]
// Exports: default
// Module 18361 (useInviteAssignableRoles)
import PermissionUtilsAll from "PermissionUtils" /* 4469 */;
import noop from "module_19" /* 19 */;
import GuildRoleStore from "GuildRoleStore" /* 2101 */;
import PermissionStore from "PermissionStore" /* 4464 */;
import UserStore from "UserStore" /* 1372 */;
const require = globalThis.__r;
const require = fn;
const isEveryoneRole = fn(2102).isEveryoneRole;
const Permissions = fn(1074).Permissions;
const size = fn(2);
const result = size.fileFinishedImporting("modules/instant_invite/useInviteAssignableRoles.tsx");
export default function useInviteAssignableRoles(arg0) {
_require = arg0;
const items = [GuildRoleStore, UserStore, PermissionStore];
const items1 = [arg0];
const stateFromStoresObject = require("initialize").useStateFromStoresObject(items, () => {
if (null != closure_0) {
sortedRoles = GuildRoleStore.getSortedRoles(tmp.id);
} else {
sortedRoles = [];
}
const obj = { sortedRoles, currentUser: UserStore.getCurrentUser(), canManageRoles: null };
let canResult = null != tmp;
if (canResult) {
canResult = PermissionStore.can(Permissions.MANAGE_ROLES, tmp);
}
obj.canManageRoles = canResult;
return obj;
}, items1);
let sortedRoles = stateFromStoresObject.sortedRoles;
currentUser = stateFromStoresObject.currentUser;
const canManageRoles = stateFromStoresObject.canManageRoles;
const items2 = [arg0, currentUser, canManageRoles, sortedRoles];
return canManageRoles.useMemo(() => {
if (null != highestRole) {
if (null != currentUser) {
if (canManageRoles) {
highestRole = sortedRoles(currentUser[7]).getHighestRole(tmp, tmp2.id);
return sortedRoles.filter((managed) => {
const tmp = isEveryoneRole(managed);
let tmp2 = !tmp;
if (!tmp) {
managed = managed.managed;
let tmp3 = !managed;
if (!managed) {
const tags = managed.tags;
let guild_connections;
if (tags != null) {
guild_connections = tags.guild_connections;
}
let isRoleHigherResult = undefined === guild_connections;
if (isRoleHigherResult) {
const obj = PermissionUtilsAll;
isRoleHigherResult = obj.isRoleHigher(closure_0, currentUser.id, closure_0, managed);
}
tmp3 = isRoleHigherResult;
}
tmp2 = tmp3;
}
return tmp2;
});
}
}
}
return [];
}, items2);
};