decord/source/modules/guild_settings/native/GuildSettingsModalInstantInvites.tsx
github-actions e510164e6b chore: update source for alpha 346.2
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4759.js (118.4 MB)
2026-09-10 05:38:07 +00:00

225 lines
8.9 KiB
TypeScript

// Module ID: 17682
// Function ID: 17683
// Name: GuildSettingsModalInstantInvites
// Dependencies: [32, 19, 17, 10112, 8408, 1957, 1979, 9096, 1074, 21, 4574, 1114, 2024, 5618, 4570, 5625, 5611, 12401, 504, 12, 8031, 8029, 4541, 11860, 1896, 4272, 10964, 7053, 1178, 17683, 7054, 2]
// Exports: default
// Module 17682 (GuildSettingsModalInstantInvites)
import _modDef12 from "module_12" /* 12 */;
import util from "util" /* 1114 */;
import asyncRequireImpl from "asyncRequireImpl" /* 1896 */;
import HelpdeskUtilsDefault from "HelpdeskUtils" /* 2024 */;
import ActionSheetActionCreatorsDefault from "ActionSheetActionCreators" /* 4541 */;
import Text_Text from "Text/Text" /* 4570 */;
import _modDef5611 from "module_5611" /* 5611 */;
import TableCheckboxRow from "TableCheckboxRow" /* 5618 */;
import GuildAntiRaidUtils from "GuildAntiRaidUtils" /* 8029 */;
import GuildAntiRaidTypes from "GuildAntiRaidTypes" /* 8031 */;
import InstantInvite from "InstantInvite" /* 10964 */;
import _slicedToArray from "module_32" /* 32 */;
import noop from "module_19" /* 19 */;
import GuildIncidentsStore from "GuildIncidentsStore" /* 10112 */;
import InviteRecord from "InviteRecord" /* 8408 */;
import ChannelStore from "ChannelStore" /* 1957 */;
import GuildStore from "GuildStore" /* 1979 */;
import GuildSettingsStore from "GuildSettingsStore" /* 9096 */;
require = fn;
class InvitesDisabledRow {
constructor(arg0) {
invitesDisabled = global.invitesDisabled;
tmp = closure_0;
tmp2 = closure_2;
intl = closure_0(closure_2[11]).intl;
stringResult = intl.string(closure_0(closure_2[11]).t.Uwsjn6);
intl2 = closure_0(closure_2[11]).intl;
if (invitesDisabled) {
stringResult1 = intl2.string(tmp(tmp2[11]).t["2LLbj9"]);
} else {
obj = { helpArticleUrl: null };
tmp4 = closure_1;
obj2 = closure_1(tmp2[12]);
tmp5 = HelpdeskArticles;
obj.helpArticleUrl = obj2.getArticleURL(HelpdeskArticles.INVITE_DISABLED);
stringResult1 = intl2.format(tmp(tmp2[11]).t.IFBHag, obj);
}
tmp7 = jsx;
obj1 = { label: stringResult, subLabel: jsx(tmp(tmp2[14]).Text, { variant: "text-xs/medium", children: stringResult1 }), icon: null, checked: null, onPress: null, start: true, end: true };
tmp7Result = null;
if (invitesDisabled) {
obj5 = { source: null };
tmp9 = closure_1;
obj5.source = closure_1(tmp2[16]);
tmp7Result = tmp7(tmp(tmp2[15]).TableRowIcon, obj5);
}
obj1.icon = tmp7Result;
obj1.checked = invitesDisabled;
obj1.onPress = global.onPauseInvites;
return tmp7(tmp(tmp2[13]).TableCheckboxRow, obj1);
}
}
function GuildSettingsModalInstantInvites(invites) {
invites = invites.invites;
const guild = invites.guild;
let flag = invites.showChannel;
if (flag === undefined) {
flag = false;
}
let invitesDisabledLoading;
closure_7 = undefined;
closure_8 = undefined;
let memo;
let stateFromStoresArray;
let callback1;
const tmp = closure_15();
const invitesDisabledPermission = invites(flag[17]).useInvitesDisabledPermission(guild);
let obj = invites(flag[17]);
let items = [invitesDisabledLoading];
const stateFromStores = invites(flag[18]).useStateFromStores(items, () => GuildIncidentsStore.getGuildIncident(guild.id));
const features = guild.features;
let hasItem = features.has(stateFromStoresArray.INVITES_DISABLED);
if (!hasItem) {
let invitesDisabledUntil;
if (stateFromStores != null) {
invitesDisabledUntil = stateFromStores.invitesDisabledUntil;
}
let BooleanResult = null != invitesDisabledUntil;
if (BooleanResult) {
const _Boolean = Boolean;
const _Date = Date;
const date = new Date(stateFromStores.invitesDisabledUntil);
const _Date2 = Date;
const date1 = new Date();
BooleanResult = Boolean(date > date1);
}
hasItem = BooleanResult;
}
const tmp19 = invitesDisabledPermission(stateFromStores.useState(false), 2);
invitesDisabledLoading = tmp19[0];
closure_7 = tmp19[1];
const tmp21 = invitesDisabledPermission(stateFromStores.useState(21), 2);
closure_8 = tmp21[1];
const items1 = [invites, invitesDisabledPermission, flag];
memo = stateFromStores.useMemo(() => {
const sortByResult = _modDef12.sortBy(invites, (channel) => {
if (flag) {
channel = channel.channel;
let formatted;
if (channel != null) {
formatted = channel.name.toLowerCase();
}
let str = formatted;
} else {
const inviter = channel.inviter;
str = undefined;
if (inviter != null) {
if (inviter.username != null) {
str = str2.toLowerCase();
}
}
if (str == null) {
str = "";
}
}
return str;
});
if (invitesDisabledPermission) {
sortByResult.unshift(importDefaultResult1);
}
return sortByResult;
}, items1);
let obj2 = invites(flag[18]);
const items2 = [closure_7];
stateFromStoresArray = invites(flag[18]).useStateFromStoresArray(items2, () => ChannelStore.getSortedLinkedChannelsForGuild(guild.id));
const items3 = [memo, stateFromStoresArray];
const memo1 = stateFromStores.useMemo(() => {
const items = [...memo.map((data) => ({ type: "invite", data })), ...stateFromStoresArray.map((data) => ({ type: "channel", data }))];
return items;
}, items3);
const effect = stateFromStores.useEffect(() => {
closure_8(21);
}, []);
const items4 = [invitesDisabledLoading, stateFromStores, guild];
const callback = stateFromStores.useCallback((type) => {
if ("invite" === type.type) {
let id = type.data.code;
} else {
id = type.data.id;
}
return id;
}, []);
callback1 = stateFromStores.useCallback(() => {
if (!first) {
closure_7(true);
try {
const obj = { source: GuildAntiRaidTypes.GuildIncidentActionSources.MESSAGE, alertType: GuildAntiRaidUtils.getIncidentAlertType(stateFromStores) };
const obj4 = { guild, analyticsData: obj };
ActionSheetActionCreatorsDefault.openLazy(asyncRequireImpl(11860, dependencyMap.paths), "GuildIncidentActionsActionSheet", obj4);
tmp3(false);
} catch (tmp17) {
tmp2(false);
throw tmp17;
}
tmp3 = closure_7;
}
}, items4);
const items5 = [hasItem, callback1, invitesDisabledLoading];
if (null == invites) {
let tmp28 = closure_12(tmp2(tmp3[27]).SceneLoadingIndicator, {});
} else if (0 === memo1.length) {
let obj3 = { children: null };
let obj4 = { onPauseInvites: callback1, invitesDisabled: hasItem, invitesDisabledLoading };
const items6 = [closure_12(InvitesDisabledRow, obj4), ];
const obj5 = { Illustration: tmp2(tmp3[29]).InviteEmpty, title: null, body: null };
const intl = tmp2(tmp3[11]).intl;
obj5.title = intl.string(tmp2(tmp3[11]).t["+nLJkZ"]);
const intl2 = tmp2(tmp3[11]).intl;
obj5.body = intl2.string(tmp2(tmp3[11]).t.F53CAc);
items6[1] = closure_12(tmp2(tmp3[28]).EmptyState, obj5);
obj3.children = items6;
tmp28 = closure_14(closure_13, obj3);
} else {
const obj6 = { style: null, data: null, keyExtractor: null, renderItem: null, initialNumToRender: 10, windowSize: null, contentContainerStyle: null };
const items7 = [invitesDisabledPermission ? tmp.listWithPause : tmp.list];
obj6.style = items7;
obj6.data = memo1;
obj6.keyExtractor = callback;
obj6.renderItem = tmp27;
obj6.windowSize = tmp21[0];
const items8 = [invites.contentContainerStyle, tmp.content];
obj6.contentContainerStyle = items8;
tmp28 = closure_12(hasItem, obj6);
}
return tmp28;
}
get_ActivityIndicator = fn(17);
({ Platform, FlatList: hasOwnProperty } = get_ActivityIndicator);
const Constants = fn(1074);
({ GuildFeatures: c10, HelpdeskArticles: closure_11 } = Constants);
const jsxProd = fn(21);
({ jsx: closure_12, Fragment: map1, jsxs: closure_14 } = jsxProd);
const createStyles = fn(4574);
let closure_15 = createStyles.createStyles({ list: { paddingTop: 8 }, content: { padding: 16, gap: 24 }, listWithPause: { paddingTop: 0 } });
const pause_invites = "pause_invites";
const importDefaultResult1 = new InviteRecord({ code: "pause_invites" });
let closure_18 = {};
const size = fn(2);
const result = size.fileFinishedImporting("modules/guild_settings/native/GuildSettingsModalInstantInvites.tsx");
export default function ConnectedGuildSettingsModalInstantInvites(guildId) {
guildId = guildId.guildId;
const items = [GuildStore];
const stateFromStores = guildId(504).useStateFromStores(items, () => GuildStore.getGuild(guildId));
guildId(504);
[][0] = GuildSettingsStore;
let tmp6 = null;
if (null != stateFromStores) {
const obj2 = { children: null };
const obj3 = { guild: stateFromStores, invites: tmp5, contentContainerStyle: guildId.contentContainerStyle, showChannel: true };
const items1 = [closure_12(GuildSettingsModalInstantInvites, obj3), closure_12(guildId(7054).NavScrim, {})];
obj2.children = items1;
tmp6 = closure_14(closure_13, obj2);
}
return tmp6;
};
export { InvitesDisabledRow };