decord/source/modules/instant_invite/native/useMobileInviteSuggestions.tsx
github-actions f0f877e8ce chore: update source for alpha 347.1
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4824.js (118.4 MB)
2026-09-15 14:23:42 +00:00

86 lines
3.5 KiB
TypeScript

// Module ID: 9964
// Function ID: 9965
// Name: useMobileInviteSuggestions
// Dependencies: [32, 19, 2022, 1980, 9965, 4663, 7841, 1074, 1085, 504, 1241, 9978, 9979, 2]
// Exports: default
// Module 9964 (useMobileInviteSuggestions)
import AnalyticsUtilsDefault from "AnalyticsUtils" /* 1241 */;
import _slicedToArray from "module_32" /* 32 */;
import noop from "module_19" /* 19 */;
import GuildMemberStore from "GuildMemberStore" /* 2022 */;
import GuildStore from "GuildStore" /* 1980 */;
import InviteSuggestionsStore from "InviteSuggestionsStore" /* 9965 */;
import SortedVoiceStateStore from "SortedVoiceStateStore" /* 4663 */;
const require = globalThis.__r;
const require = fn;
const InviteTargetTypes = fn(7841).InviteTargetTypes;
const AnalyticEvents = fn(1074).AnalyticEvents;
const NOOP_NULL = fn(1085).NOOP_NULL;
const size = fn(2);
const result = size.fileFinishedImporting("modules/instant_invite/native/useMobileInviteSuggestions.tsx");
export default function useMobileInviteSuggestions(arg0, _location, arg2, application_id) {
_require = arg0;
dependencyMap = arg2;
_slicedToArray = application_id;
let items = [closure_7, SortedVoiceStateStore];
[rows, closure_5] = require("initialize").useStateFromStoresArray(items, () => {
const items = [InviteSuggestionsStore.getInviteSuggestionRows(), ];
let voiceStatesForChannel = null;
if (null != closure_0) {
voiceStatesForChannel = SortedVoiceStateStore.getVoiceStatesForChannel(tmp);
}
items[1] = voiceStatesForChannel;
return items;
});
[isFetchingRows, closure_7] = rows.useState(true);
const items1 = [rows, arg0, isFetchingRows, application_id, _location];
const effect = rows.useEffect(() => {
if (!isFetchingRows) {
const initialCounts = InviteSuggestionsStore.getInitialCounts();
const obj3 = { location: _location, num_suggestions: rows.length, guild_id: closure_0.guild_id, num_friends: null, num_dms: null, num_group_dms: null, application_id: null };
({ numFriends: obj2.num_friends, numDms: obj2.num_dms, numGroupDms: obj2.num_group_dms } = initialCounts);
obj3.application_id = application_id;
AnalyticsUtilsDefault.track(AnalyticEvents.INVITE_SUGGESTION_OPENED, obj3);
}
}, items1);
const items2 = [arg0, arg2];
const effect1 = rows.useEffect(() => {
closure_7(true);
let isGuildVoiceResult = !tmp3;
if (dependencyMap !== constants.EMBEDDED_APPLICATION) {
isGuildVoiceResult = set.isGuildVoice();
}
if (isGuildVoiceResult) {
const obj2 = { location: "useMobileInviteSuggestions", guildId: set.guild_id };
isGuildVoiceResult = closure_0(9978).getGuildMembersInMobileVCInvitesExperiment(obj2);
const obj = closure_0(9978);
}
if (dependencyMap !== constants.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);
});
}
const obj4 = { omitUserIds: set, guild: isFetchingRows.getGuild(set.guild_id), channel: set, inviteTargetType: dependencyMap };
const inviteSuggestions = closure_0(9979).loadInviteSuggestions(obj4);
const obj3 = closure_0(9979);
inviteSuggestions.catch(NOOP_NULL).finally(() => {
closure_1_7(false);
});
}
memberIds = [];
}, items2);
return { rows, isFetchingRows };
};