decord/source/components_native/channel_settings/ChannelSettingsPermissionsOverrides.tsx
2026-07-21 22:01:30 +00:00

203 lines
7.9 KiB
TypeScript

// Module ID: 15388
// Function ID: 117391
// Name: ChannelSettingsPermissionsOverrides
// Dependencies: []
// Exports: default
// Module 15388 (ChannelSettingsPermissionsOverrides)
let closure_4 = importDefault(dependencyMap[0]);
let closure_5 = importDefault(dependencyMap[1]);
let closure_6 = importAll(dependencyMap[2]);
({ View: closure_7, ScrollView: closure_8 } = arg1(dependencyMap[3]));
const isGuildOwner = arg1(dependencyMap[4]).isGuildOwner;
let closure_10 = importDefault(dependencyMap[5]);
let closure_11 = importDefault(dependencyMap[6]);
let closure_12 = importDefault(dependencyMap[7]);
let closure_13 = importDefault(dependencyMap[8]);
let closure_14 = importDefault(dependencyMap[9]);
let closure_15 = importDefault(dependencyMap[10]);
const tmp2 = arg1(dependencyMap[3]);
({ PermissionOverrideType: closure_16, HelpdeskArticles: closure_17, Permissions: closure_18 } = arg1(dependencyMap[11]));
const tmp3 = arg1(dependencyMap[11]);
({ jsx: closure_19, jsxs: closure_20 } = arg1(dependencyMap[12]));
let obj = arg1(dependencyMap[13]);
obj = {};
obj = { backgroundColor: importDefault(dependencyMap[14]).colors.BACKGROUND_BASE_LOWER };
obj.container = obj;
const tmp4 = arg1(dependencyMap[12]);
obj.containerContent = { paddingTop: importDefault(dependencyMap[14]).space.PX_16, paddingBottom: importDefault(dependencyMap[14]).space.PX_16, paddingHorizontal: importDefault(dependencyMap[14]).space.PX_12 };
const obj1 = { paddingTop: importDefault(dependencyMap[14]).space.PX_16, paddingBottom: importDefault(dependencyMap[14]).space.PX_16, paddingHorizontal: importDefault(dependencyMap[14]).space.PX_12 };
obj.section = { marginBottom: importDefault(dependencyMap[14]).space.PX_16 };
let closure_21 = obj.createStyles(obj);
const obj2 = { marginBottom: importDefault(dependencyMap[14]).space.PX_16 };
const result = arg1(dependencyMap[38]).fileFinishedImporting("components_native/channel_settings/ChannelSettingsPermissionsOverrides.tsx");
export default function ChannelSettingsPermissionsOverrides(fromCreate) {
let id;
({ channelId: closure_0, id } = fromCreate);
const importDefault = id;
fromCreate = fromCreate.fromCreate;
const importAll = fromCreate;
let React;
const tmp = callback4();
const dependencyMap = tmp;
let obj = arg1(dependencyMap[15]);
const navigation = obj.useNavigation();
const callback = navigation;
let obj1 = arg1(dependencyMap[17]);
const items = [closure_10];
const stateFromStores = obj1.useStateFromStores(items, () => channel.getChannel(closure_0));
let closure_5 = stateFromStores;
const items1 = [stateFromStores, id];
React = React.useCallback(() => {
// CreateGeneratorClosureLongIndex (0x67)
let closure_0 = stateFromStores(tmp);
return function() {
return callback(...arguments);
};
}(), items1);
const items2 = [stateFromStores];
let closure_7 = React.useCallback((VIEW_CHANNEL) => {
const guild = guild.getGuild(stateFromStores.guild_id);
const currentUser = currentUser.getCurrentUser();
if (null != guild) {
if (null != currentUser) {
let canResult = first(guild, currentUser);
if (!canResult) {
canResult = closure_13.can(constants.ADMINISTRATOR, guild);
}
if (!canResult) {
canResult = closure_13.can(constants.MANAGE_ROLES, stateFromStores, undefined, undefined, true);
}
if (stateFromStores.isGuildStageVoice()) {
const STAGE_CHANNEL_DISABLED_PERMISSIONS = callback(tmp[28]).STAGE_CHANNEL_DISABLED_PERMISSIONS;
if (STAGE_CHANNEL_DISABLED_PERMISSIONS.has(VIEW_CHANNEL)) {
const intl2 = callback(tmp[25]).intl;
let stringResult = intl2.string(callback(tmp[25]).t.bTS5lf);
}
return stringResult;
}
stringResult = VIEW_CHANNEL === constants.MANAGE_ROLES && !canResult;
if (!stringResult) {
let tmp15 = null != VIEW_CHANNEL;
if (tmp15) {
tmp15 = !closure_13.can(VIEW_CHANNEL, guild);
}
if (tmp15) {
tmp15 = !canResult;
}
stringResult = tmp15;
}
if (stringResult) {
const intl = callback(tmp[25]).intl;
stringResult = intl.string(callback(tmp[25]).t.nOtPMM);
}
}
}
return false;
}, items2);
const items3 = [stateFromStores, id];
let closure_8 = React.useCallback((arg0) => {
let allow;
if (null != stateFromStores.permissionOverwrites[closure_1]) {
allow = tmp.allow;
}
if (obj.has(allow, arg0)) {
let ALLOW = callback(tmp[18]).ALLOW;
} else {
let deny;
if (null != tmp) {
deny = tmp.deny;
}
const hasItem = fromCreate(tmp[19]).has(deny, arg0);
const tmp9 = callback(tmp[18]);
ALLOW = hasItem ? tmp9.DENY : tmp9.PASSTHROUGH;
const obj2 = fromCreate(tmp[19]);
}
return ALLOW;
}, items3);
const first = callback(React.useState(() => id(tmp[29]).generateChannelPermissionSpec(stateFromStores.guild_id, stateFromStores, id === stateFromStores.guild_id)), 2)[0];
const isGuildOwner = first;
const items4 = [fromCreate, navigation];
const effect = React.useEffect(() => {
if (fromCreate) {
const obj = {
headerRight() {
const obj = {
onPress() {
}
};
const intl = callback(closure_3[25]).intl;
obj.label = intl.string(callback(closure_3[25]).t.i4jeWR);
return callback2(callback(closure_3[30]).HeaderTextButton, obj);
}
};
navigation.setOptions(obj);
}
}, items4);
obj = {};
let obj3 = arg1(dependencyMap[32]);
obj.children = obj3.computeChannelName(stateFromStores, closure_15, closure_14, true);
const tmp6 = callback2(arg1(dependencyMap[31]).Text, obj);
if (fromCreate.type === constants.MEMBER) {
obj = { userId: id, guildId: stateFromStores.guild_id, start: true, end: true, trailing: tmp6 };
let tmp7Result = callback2(importDefault(dependencyMap[33]), obj);
} else {
obj1 = {};
const role = role.getRole(stateFromStores.guild_id, id);
let name;
if (null != role) {
name = role.name;
}
let str = "";
if (null != name) {
str = name;
}
obj1.label = str;
obj1.trailing = tmp6;
tmp7Result = callback2(arg1(dependencyMap[34]).TableRow, obj1);
const tmp7 = callback2;
}
const obj2 = { style: tmp.container, contentContainerStyle: items5 };
const items5 = [tmp.containerContent, { paddingBottom: tmp.containerContent.paddingBottom + importDefault(dependencyMap[16])().bottom }];
obj3 = { style: tmp.section, children: tmp7Result };
const items6 = [
callback2(closure_7, obj3),
first.map((permissions) => {
permissions = permissions.permissions;
let obj = { style: tmp.section };
obj = {};
let title;
if (first.length > 1) {
title = permissions.title;
}
obj.title = title;
obj.hasIcons = false;
obj.children = permissions.map((flag) => {
let description;
let title;
flag = flag.flag;
({ title, description } = flag);
const tmp = callback2(flag);
let obj = { children: flag(closure_3[36]).renderDescription(description) };
const obj2 = flag(closure_3[36]);
const tmp2 = null != tmp && tmp;
obj = { disabled: tmp4, label: title, subLabel: callback4(flag(closure_3[31]).Text, obj) };
obj = {};
const tmp3 = callback4(flag(closure_3[31]).Text, obj);
obj.value = callback3(flag);
obj.disabled = false !== tmp2;
obj.onValueChange = function onValueChange(arg0) {
callback(flag, arg0);
};
obj.trailing = callback4(callback(closure_3[37]), obj);
return callback4(flag(closure_3[34]).TableRow, obj, "row-" + arg1);
});
obj.children = closure_19(callback(closure_19[35]).TableRowGroup, obj);
return closure_19(closure_7, obj, "section-" + arg1);
})
];
obj2.children = items6;
return callback3(closure_8, obj2);
};