96 lines
3.5 KiB
TypeScript
96 lines
3.5 KiB
TypeScript
// Module ID: 9225
|
|
// Function ID: 9226
|
|
// Name: useMobileInviteSuggestions
|
|
// Dependencies: [32, 19, 1992, 1910, 9226, 4455, 7340, 676, 505, 589, 698, 9227, 9228, 2]
|
|
// Exports: default
|
|
|
|
// Module 9225 (useMobileInviteSuggestions)
|
|
import closure_3 from "_slicedToArray" /* 32 */;
|
|
import closure_4 from "noop" /* 19 */;
|
|
import closure_5 from "trackCommunicationDisabled" /* 1992 */;
|
|
import closure_6 from "createGuildRecordFromRust" /* 1910 */;
|
|
import closure_7 from "_computeRows" /* 9226 */;
|
|
import closure_8 from "getVoiceStatesForGuild" /* 4455 */;
|
|
import { InviteTargetTypes } from "InviteSendStates" /* 7340 */;
|
|
import { AnalyticEvents } from "ME" /* 676 */;
|
|
import { NOOP_NULL } from "sum" /* 505 */;
|
|
|
|
const require = arg1;
|
|
const result = require("set").fileFinishedImporting("modules/instant_invite/native/useMobileInviteSuggestions.tsx");
|
|
|
|
export default function useMobileInviteSuggestions(arg0, arg1, arg2, arg3) {
|
|
const _require = arg0;
|
|
closure_1 = arg1;
|
|
dependencyMap = arg2;
|
|
const callback = arg3;
|
|
let items = [closure_7, closure_8];
|
|
const tmp = callback(_require(589).useStateFromStoresArray(items, () => {
|
|
const items = [store.getInviteSuggestionRows(), ];
|
|
let voiceStatesForChannel = null;
|
|
if (null != closure_0) {
|
|
voiceStatesForChannel = closure_1_8.getVoiceStatesForChannel(tmp);
|
|
}
|
|
items[1] = voiceStatesForChannel;
|
|
return items;
|
|
}), 2);
|
|
const rows = tmp[0];
|
|
closure_5 = tmp[1];
|
|
const tmp3 = callback(rows.useState(true), 2);
|
|
const isFetchingRows = tmp3[0];
|
|
closure_7 = tmp3[1];
|
|
const items1 = [rows, arg0, isFetchingRows, arg3, arg1];
|
|
const effect = rows.useEffect(() => {
|
|
if (!isFetchingRows) {
|
|
const initialCounts = store.getInitialCounts();
|
|
let obj = callback(698);
|
|
obj = { location: null, num_suggestions: null, guild_id: null, num_friends: null, num_dms: null, num_group_dms: null, application_id: null };
|
|
obj[0] = callback;
|
|
obj[1] = rows.length;
|
|
obj[2] = lib.guild_id;
|
|
({ numFriends: obj2[3], numDms: obj2[4], numGroupDms: obj2[5] } = initialCounts);
|
|
obj[6] = closure_3;
|
|
obj.track(closure_1_10.INVITE_SUGGESTION_OPENED, obj);
|
|
}
|
|
}, items1);
|
|
const items2 = [arg0, arg2];
|
|
const effect1 = rows.useEffect(() => {
|
|
store(true);
|
|
let isGuildVoiceResult = !tmp3;
|
|
if (dependencyMap !== closure_1_9.EMBEDDED_APPLICATION) {
|
|
isGuildVoiceResult = set.isGuildVoice();
|
|
}
|
|
if (isGuildVoiceResult) {
|
|
let obj = lib(9227);
|
|
obj = { location: "useMobileInviteSuggestions", guildId: null };
|
|
obj[1] = set.guild_id;
|
|
isGuildVoiceResult = obj.getGuildMembersInMobileVCInvitesExperiment(obj);
|
|
}
|
|
if (dependencyMap !== closure_1_9.EMBEDDED_APPLICATION) {
|
|
if (!isGuildVoiceResult) {
|
|
let memberIds = closure_5.getMemberIds(set.guild_id);
|
|
}
|
|
const _Set = Set;
|
|
set = new Set(memberIds);
|
|
if (isGuildVoiceResult) {
|
|
isGuildVoiceResult = null != closure_5;
|
|
}
|
|
if (isGuildVoiceResult) {
|
|
const item = closure_5.forEach((user) => {
|
|
set.add(user.user.id);
|
|
});
|
|
}
|
|
obj = { omitUserIds: null, guild: null, channel: null, inviteTargetType: null };
|
|
obj[0] = set;
|
|
obj[1] = isFetchingRows.getGuild(set.guild_id);
|
|
obj[2] = set;
|
|
obj[3] = dependencyMap;
|
|
const inviteSuggestions = lib(9228).loadInviteSuggestions(obj);
|
|
const obj3 = lib(9228);
|
|
inviteSuggestions.catch(closure_1_11).finally(() => {
|
|
callback(false);
|
|
});
|
|
}
|
|
memberIds = [];
|
|
}, items2);
|
|
return { rows, isFetchingRows };
|
|
};
|