Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4745.js (118.4 MB)
77 lines
2.7 KiB
TypeScript
77 lines
2.7 KiB
TypeScript
// Module ID: 17800
|
|
// Function ID: 17801
|
|
// Name: useInviteAssignableRoles
|
|
// Dependencies: [19, 2016, 2015, 4199, 1371, 1074, 504, 4204, 2]
|
|
// Exports: default
|
|
|
|
// Module 17800 (useInviteAssignableRoles)
|
|
import PermissionUtilsAll from "PermissionUtils" /* 4204 */;
|
|
import noop from "module_19" /* 19 */;
|
|
import GuildRoleStore from "GuildRoleStore" /* 2015 */;
|
|
import PermissionStore from "PermissionStore" /* 4199 */;
|
|
import UserStore from "UserStore" /* 1371 */;
|
|
|
|
const require = globalThis.__r;
|
|
|
|
const require = fn;
|
|
const isEveryoneRole = fn(2016).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);
|
|
};
|