522 lines
17 KiB
TypeScript
522 lines
17 KiB
TypeScript
// Module ID: 12894
|
|
// Function ID: 12895
|
|
// Name: performQuery
|
|
// Dependencies: [4169, 7014, 1376, 1372, 5723, 5179, 1942, 1862, 3892, 1874, 676, 12895, 5184, 1856, 4094, 3928, 7206, 589, 709, 2]
|
|
|
|
// Module 12894 (performQuery)
|
|
import getHash from "getHash";
|
|
import recomputeAffinities from "recomputeAffinities";
|
|
import { PrivateChannelRecord } from "createChannelRecord";
|
|
import ensureGuildLoaded from "ensureGuildLoaded";
|
|
import hasConsented from "hasConsented";
|
|
import handleChannelSelect from "handleChannelSelect";
|
|
import trackCommunicationDisabled from "trackCommunicationDisabled";
|
|
import createGuildRecordFromRust from "createGuildRecordFromRust";
|
|
import upsertRelationship from "upsertRelationship";
|
|
import mergeGuildAvatar from "mergeGuildAvatar";
|
|
import ME from "ME";
|
|
import { Store } from "initialize";
|
|
import set from "createChannelRecord";
|
|
|
|
let Consents;
|
|
let closure_14;
|
|
const require = arg1;
|
|
function performQuery() {
|
|
if (c15) {
|
|
channel = channel.getChannel(c22);
|
|
if (0 === _var.trim().length) {
|
|
if (null != set1) {
|
|
set1.clearQuery();
|
|
}
|
|
let _require = channel;
|
|
const currentUser = authStore.getCurrentUser();
|
|
let obj1 = currentUser;
|
|
frictionlessGDMsEnabled = _require(frictionlessGDMsEnabled[11]).getFrictionlessGDMsEnabled("PrivateChannelRecipientsInviteStore");
|
|
const items = [];
|
|
HermesBuiltin.arraySpread(store2.getFriendIDs(), 0);
|
|
let isStaffResult;
|
|
if (currentUser != null) {
|
|
isStaffResult = currentUser.isStaff();
|
|
}
|
|
let arr = items;
|
|
if (isStaffResult) {
|
|
const found = authStore.filter((isStaff) => {
|
|
let isStaffResult = isStaff.isStaff();
|
|
if (isStaffResult) {
|
|
isStaffResult = isStaff.id !== obj1.id;
|
|
}
|
|
return isStaffResult;
|
|
}, false);
|
|
const mapped = found.map((id) => id.id);
|
|
const _Array = Array;
|
|
const _Set = Set;
|
|
const items1 = [];
|
|
HermesBuiltin.arraySpread(mapped, HermesBuiltin.arraySpread(items, 0));
|
|
const set = new Set(items1);
|
|
arr = Array.from(set);
|
|
}
|
|
set1 = null;
|
|
if (frictionlessGDMsEnabled) {
|
|
const _Set2 = Set;
|
|
set1 = new Set(store.getGuildIds());
|
|
userAffinities = userAffinities.getUserAffinities();
|
|
const mapped1 = userAffinities.map((otherUserId) => otherUserId.otherUserId);
|
|
const found1 = mapped1.filter((arg0) => {
|
|
let id;
|
|
if (obj1 != null) {
|
|
id = obj1.id;
|
|
}
|
|
return arg0 !== id;
|
|
});
|
|
const found2 = found1.filter((id) => !upsertRelationship.isBlockedOrIgnored(id));
|
|
const found3 = found2.filter((id) => !upsertRelationship.isFriend(id));
|
|
const _Array2 = Array;
|
|
const _Set3 = Set;
|
|
const items2 = [];
|
|
HermesBuiltin.arraySpread(found3, HermesBuiltin.arraySpread(arr, 0));
|
|
const set2 = new Set(items2);
|
|
arr = Array.from(set2);
|
|
}
|
|
let isGroupDMResult;
|
|
if (channel != null) {
|
|
isGroupDMResult = channel.isGroupDM();
|
|
}
|
|
let found4 = arr;
|
|
if (isGroupDMResult) {
|
|
found4 = arr.filter((arg0) => {
|
|
recipients = recipients.recipients;
|
|
return !recipients.includes(arg0);
|
|
});
|
|
}
|
|
const reduced = found4.reduce((arr) => {
|
|
const user = outer1_13.getUser(arg1);
|
|
if (null != user) {
|
|
if (!user.isProvisional) {
|
|
if (user.bot) {
|
|
if (user.isStaff()) {
|
|
let isStaffResult;
|
|
if (obj1 != null) {
|
|
isStaffResult = obj2.isStaff();
|
|
}
|
|
obj2 = obj1;
|
|
}
|
|
}
|
|
const obj = { user: null, comparator: null };
|
|
obj[0] = user;
|
|
obj[1] = obj1(frictionlessGDMsEnabled[14]).getName(user);
|
|
if (frictionlessGDMsEnabled) {
|
|
if (null != set1) {
|
|
if (!outer1_12.isFriend(user.id)) {
|
|
arr = outer1_26(user.id, tmp5);
|
|
if (0 === arr.length) {
|
|
if (user.isStaff()) {
|
|
let isStaffResult1;
|
|
if (obj1 != null) {
|
|
isStaffResult1 = obj5.isStaff();
|
|
}
|
|
obj5 = obj1;
|
|
}
|
|
return arr;
|
|
}
|
|
if (arr.length > 0) {
|
|
obj.mutualGuilds = arr;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
arr = arr.push(obj);
|
|
return arr;
|
|
}
|
|
}
|
|
return arr;
|
|
}, []);
|
|
let closure_18 = reduced.sort(sortUserList);
|
|
if (c20 !== false) {
|
|
c20 = false;
|
|
}
|
|
return true;
|
|
} else {
|
|
const currentUser1 = authStore.getCurrentUser();
|
|
let flag2;
|
|
if (currentUser1 != null) {
|
|
flag2 = currentUser1.isStaff();
|
|
}
|
|
if (flag2 == null) {
|
|
flag2 = false;
|
|
}
|
|
obj1 = _require(frictionlessGDMsEnabled[11]);
|
|
const frictionlessGDMsEnabled1 = obj1.getFrictionlessGDMsEnabled("PrivateChannelRecipientsInviteStore");
|
|
if (frictionlessGDMsEnabled1) {
|
|
const members = obj1(frictionlessGDMsEnabled[12]).requestMembers(null, _var);
|
|
const obj3 = obj1(frictionlessGDMsEnabled[12]);
|
|
}
|
|
if (null != set1) {
|
|
let obj = { query: null, filters: null, blacklist: null, boosters: null };
|
|
obj[0] = _var;
|
|
let tmp12;
|
|
if (!frictionlessGDMsEnabled1) {
|
|
obj = { friends: true, staff: null, provisional: false };
|
|
obj[1] = flag2;
|
|
tmp12 = obj;
|
|
}
|
|
obj[1] = tmp12;
|
|
obj[2] = tmp10;
|
|
frequentlyWithoutFetchingLatest = frequentlyWithoutFetchingLatest.getFrequentlyWithoutFetchingLatest();
|
|
const found5 = frequentlyWithoutFetchingLatest.filter((isDM) => isDM instanceof closure_6 && isDM.isDM());
|
|
const _Math = Math;
|
|
const items3 = [];
|
|
HermesBuiltin.arraySpread(found5.map((id) => scoreWithoutFetchingLatest.getScoreWithoutFetchingLatest(id.id)), 0);
|
|
const _Math2 = Math;
|
|
_require = HermesBuiltin.apply(items3, Math);
|
|
obj1 = {};
|
|
const item = found5.forEach((id) => {
|
|
const scoreWithoutFetchingLatest = outer1_9.getScoreWithoutFetchingLatest(id.id);
|
|
const recipientId = id.getRecipientId();
|
|
let num = 0;
|
|
if (outer1_12.isFriend(recipientId)) {
|
|
num = 0.2;
|
|
}
|
|
let num2 = 0;
|
|
if (null != outer1_7.getDMFromUserId(recipientId)) {
|
|
num2 = 0.1;
|
|
}
|
|
obj1[recipientId] = 1 + scoreWithoutFetchingLatest / closure_0 + num + num2;
|
|
});
|
|
obj[3] = obj1;
|
|
set1.setQuery(obj);
|
|
}
|
|
return false;
|
|
}
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
function updateHasFriends() {
|
|
if (c15) {
|
|
const tmp3 = store2.getFriendCount() > 0;
|
|
let c19 = tmp3;
|
|
return tmp3 !== c19;
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
function sortUserList(user, user2) {
|
|
const obj = require(1856) /* isNullOrEmpty */;
|
|
const name = importDefault(4094).getName(user.user);
|
|
const obj2 = importDefault(4094);
|
|
const stripDiacriticsResult = obj.stripDiacritics(name.toLocaleLowerCase());
|
|
const obj5 = require(1856) /* isNullOrEmpty */;
|
|
const name1 = importDefault(4094).getName(user2.user);
|
|
return stripDiacriticsResult.localeCompare(obj5.stripDiacritics(name1.toLocaleLowerCase()));
|
|
}
|
|
function getMutualGuildsWithCurrentUser(id, set) {
|
|
const RestrictedGuildIds = require(3928) /* explicitContentFromProto */.RestrictedGuildIds;
|
|
const setting = RestrictedGuildIds.getSetting();
|
|
const items = [];
|
|
const iter = set[Symbol.iterator]();
|
|
const nextResult = iter.next();
|
|
while (iter !== undefined) {
|
|
let tmp2 = nextResult;
|
|
if (!setting.includes(nextResult)) {
|
|
let tmp3 = member;
|
|
let tmp4 = nextResult;
|
|
if (member.isMember(tmp2, id)) {
|
|
let tmp5 = store;
|
|
let tmp6 = nextResult;
|
|
let guild = store.getGuild(tmp2);
|
|
if (null != guild) {
|
|
let tmp9 = guild;
|
|
let arr = items.push(tmp8);
|
|
}
|
|
}
|
|
}
|
|
continue;
|
|
}
|
|
return items;
|
|
}
|
|
function parseUserResults(results) {
|
|
let comparator;
|
|
let id;
|
|
results = results.results;
|
|
if (c15) {
|
|
if ("" !== c16) {
|
|
const currentUser = authStore.getCurrentUser();
|
|
const frictionlessGDMsEnabled = require(12895) /* getFrictionlessGDMsEnabled */.getFrictionlessGDMsEnabled("PrivateChannelRecipientsInviteStore");
|
|
let set = null;
|
|
if (frictionlessGDMsEnabled) {
|
|
const _Set = Set;
|
|
set = new Set(store.getGuildIds());
|
|
}
|
|
const items = [];
|
|
const iter = results[Symbol.iterator]();
|
|
const obj4 = require(12895) /* getFrictionlessGDMsEnabled */;
|
|
while (iter !== undefined) {
|
|
({ id, comparator } = nextResult);
|
|
if (null == currentUser) {
|
|
let tmp12 = authStore;
|
|
let tmp13 = id;
|
|
let user = authStore.getUser(id);
|
|
let obj = user;
|
|
if (null != user) {
|
|
let tmp37 = user;
|
|
if (!obj.isProvisional) {
|
|
let tmp15 = user;
|
|
if (!obj.bot) {
|
|
obj = { user: null, comparator: null };
|
|
let tmp18 = user;
|
|
obj[0] = obj;
|
|
let tmp19 = comparator;
|
|
obj[1] = comparator;
|
|
let tmp20 = obj;
|
|
if (frictionlessGDMsEnabled) {
|
|
if (null != set) {
|
|
let tmp38 = store2;
|
|
let tmp39 = user;
|
|
if (!store2.isFriend(obj.id)) {
|
|
let tmp21 = getMutualGuildsWithCurrentUser;
|
|
let tmp22 = user;
|
|
let arr2 = getMutualGuildsWithCurrentUser(obj.id, set);
|
|
let arr3 = arr2;
|
|
if (0 !== arr2.length) {
|
|
let tmp25 = arr2;
|
|
if (arr3.length > 0) {
|
|
let tmp26 = obj;
|
|
let tmp27 = arr2;
|
|
tmp20.mutualGuilds = arr3;
|
|
}
|
|
} else {
|
|
let tmp23 = user;
|
|
if (!obj.isStaff()) {
|
|
continue;
|
|
} else {
|
|
let isStaffResult;
|
|
if (currentUser != null) {
|
|
isStaffResult = currentUser.isStaff();
|
|
}
|
|
}
|
|
}
|
|
continue;
|
|
}
|
|
}
|
|
}
|
|
let tmp28 = obj;
|
|
let arr = items.push(tmp20);
|
|
} else {
|
|
let tmp16 = user;
|
|
if (obj.isStaff()) {
|
|
let isStaffResult1;
|
|
if (currentUser != null) {
|
|
isStaffResult1 = currentUser.isStaff();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
let tmp11 = id;
|
|
}
|
|
continue;
|
|
}
|
|
privateChannelRecipientsInviteStoreClass.emitChange();
|
|
nextResult = iter.next();
|
|
}
|
|
}
|
|
}
|
|
function handleModalActionSheetOpen(key) {
|
|
if (key.key !== closure_14) {
|
|
return false;
|
|
} else {
|
|
let c15 = true;
|
|
let closure_19 = store2.getFriendCount() > 0;
|
|
if (null != userSearchContext) {
|
|
userSearchContext.destroy();
|
|
userSearchContext = null;
|
|
}
|
|
userSearchContext = importDefault(7206).getUserSearchContext(parseUserResults, 1000);
|
|
let c22 = null;
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
performQuery();
|
|
}
|
|
}
|
|
function handleActionSheetDismiss(key) {
|
|
if (key.key !== closure_14) {
|
|
return false;
|
|
} else {
|
|
if (null != c3) {
|
|
c3.destroy();
|
|
c3 = null;
|
|
}
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
let closure_18 = [];
|
|
const _Set = Set;
|
|
const set = new Set();
|
|
let c15 = false;
|
|
let c22 = null;
|
|
let c20 = false;
|
|
}
|
|
}
|
|
function performQueryOnAffinityChange() {
|
|
let tmp = !c15;
|
|
if (c15) {
|
|
tmp = !require(12895) /* getFrictionlessGDMsEnabled */.getFrictionlessGDMsEnabled("PrivateChannelRecipientsInviteStore");
|
|
const obj = require(12895) /* getFrictionlessGDMsEnabled */;
|
|
}
|
|
let tmp4 = !tmp;
|
|
if (!tmp) {
|
|
tmp4 = performQuery();
|
|
}
|
|
return tmp4;
|
|
}
|
|
({ NEW_GROUP_DM_POPOUT_ID: closure_14, Consents } = ME);
|
|
let c15 = false;
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
let closure_18 = [];
|
|
let c19 = false;
|
|
let c20 = false;
|
|
let set = new Set();
|
|
let c22 = null;
|
|
class PrivateChannelRecipientsInviteStoreClass extends Store {
|
|
}
|
|
const prototype = PrivateChannelRecipientsInviteStoreClass.prototype;
|
|
prototype["initialize"] = function initialize() {
|
|
this.waitFor(ensureGuildLoaded, hasConsented, getHash, handleChannelSelect, trackCommunicationDisabled, createGuildRecordFromRust, upsertRelationship, recomputeAffinities, mergeGuildAvatar);
|
|
const items = [mergeGuildAvatar, ensureGuildLoaded];
|
|
this.syncWith(items, performQuery);
|
|
const items1 = [recomputeAffinities];
|
|
this.syncWith(items1, performQueryOnAffinityChange);
|
|
const items2 = [upsertRelationship];
|
|
this.syncWith(items2, updateHasFriends);
|
|
};
|
|
prototype["getResults"] = function getResults() {
|
|
return closure_18;
|
|
};
|
|
prototype["hasFriends"] = function hasFriends() {
|
|
return c19;
|
|
};
|
|
prototype["getSelectedUsers"] = function getSelectedUsers() {
|
|
return set;
|
|
};
|
|
prototype["getQuery"] = function getQuery() {
|
|
return c16;
|
|
};
|
|
prototype["getState"] = function getState() {
|
|
return { query: c16, selectedRow: c17, selectedUsers: set, results: closure_18, hasFriends: c19, isLoading: c20 };
|
|
};
|
|
PrivateChannelRecipientsInviteStoreClass.displayName = "PrivateChannelRecipientsInviteStore";
|
|
const privateChannelRecipientsInviteStoreClass = new PrivateChannelRecipientsInviteStoreClass(require("dispatcher"), {
|
|
CONNECTION_OPEN: function handleConnectionOpen() {
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
let closure_18 = [];
|
|
const set = new Set();
|
|
let c15 = false;
|
|
let c22 = null;
|
|
let c20 = false;
|
|
},
|
|
GUILD_MEMBERS_CHUNK_BATCH: function handleGuildMembersChunkBatch() {
|
|
let tmp = !c15;
|
|
if (c15) {
|
|
tmp = !require(12895) /* getFrictionlessGDMsEnabled */.getFrictionlessGDMsEnabled("PrivateChannelRecipientsInviteStore");
|
|
const obj = require(12895) /* getFrictionlessGDMsEnabled */;
|
|
}
|
|
let tmp4 = !tmp;
|
|
if (!tmp) {
|
|
let flag2 = c20 !== false;
|
|
if (flag2) {
|
|
c20 = false;
|
|
flag2 = true;
|
|
}
|
|
tmp4 = flag2;
|
|
}
|
|
return tmp4;
|
|
},
|
|
GUILD_MEMBERS_REQUEST: function handleGuildMembersRequest(query) {
|
|
let tmp = !c15;
|
|
if (c15) {
|
|
tmp = !require(12895) /* getFrictionlessGDMsEnabled */.getFrictionlessGDMsEnabled("PrivateChannelRecipientsInviteStore");
|
|
const obj = require(12895) /* getFrictionlessGDMsEnabled */;
|
|
}
|
|
let tmp4 = !tmp;
|
|
if (!tmp) {
|
|
let tmp6 = query.query === _var.toLocaleLowerCase();
|
|
if (tmp6) {
|
|
let flag2 = c20 !== true;
|
|
if (flag2) {
|
|
c20 = true;
|
|
flag2 = true;
|
|
}
|
|
tmp6 = flag2;
|
|
}
|
|
tmp4 = tmp6;
|
|
}
|
|
return tmp4;
|
|
},
|
|
CHANNEL_SELECT: function handleChannelSelect(guildId) {
|
|
if (null != guildId.guildId) {
|
|
return false;
|
|
} else {
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
let closure_18 = [];
|
|
const _Set = Set;
|
|
const set = new Set();
|
|
let c20 = false;
|
|
let c22 = tmp;
|
|
return performQuery();
|
|
}
|
|
},
|
|
MODAL_PUSH: handleModalActionSheetOpen,
|
|
SHOW_ACTION_SHEET: handleModalActionSheetOpen,
|
|
PRIVATE_CHANNEL_RECIPIENTS_INVITE_OPEN: function handleInviteOpen(channelId) {
|
|
let c15 = true;
|
|
let closure_19 = store2.getFriendCount() > 0;
|
|
if (null != userSearchContext) {
|
|
userSearchContext.destroy();
|
|
userSearchContext = null;
|
|
}
|
|
userSearchContext = importDefault(7206).getUserSearchContext(parseUserResults, 1000);
|
|
channelId = channelId.channelId;
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
performQuery();
|
|
},
|
|
MODAL_POP: handleActionSheetDismiss,
|
|
HIDE_ACTION_SHEET: handleActionSheetDismiss,
|
|
PRIVATE_CHANNEL_RECIPIENTS_INVITE_CLOSE: function handleClose() {
|
|
if (null != c3) {
|
|
c3.destroy();
|
|
c3 = null;
|
|
}
|
|
let c16 = "";
|
|
let c17 = 0;
|
|
let closure_18 = [];
|
|
const set = new Set();
|
|
let c15 = false;
|
|
let c22 = null;
|
|
let c20 = false;
|
|
},
|
|
PRIVATE_CHANNEL_RECIPIENTS_INVITE_QUERY: function handleQuery(arg0) {
|
|
let c16;
|
|
let c22;
|
|
({ channelId: c22, query: c16 } = arg0);
|
|
let c17 = 0;
|
|
performQuery();
|
|
},
|
|
PRIVATE_CHANNEL_RECIPIENTS_INVITE_SELECT: function handleSelect(row) {
|
|
row = row.row;
|
|
},
|
|
PRIVATE_CHANNEL_RECIPIENTS_ADD_USER: function handleAddUser(userId) {
|
|
set.add(userId.userId);
|
|
set = new Set(set);
|
|
},
|
|
PRIVATE_CHANNEL_RECIPIENTS_REMOVE_USER: function handleRemoveUser(userId) {
|
|
set.delete(userId.userId);
|
|
set = new Set(set);
|
|
}
|
|
});
|
|
const result = set.fileFinishedImporting("stores/PrivateChannelRecipientsInviteStore.tsx");
|
|
|
|
export default privateChannelRecipientsInviteStoreClass;
|