decord/source/stores/GamePartyStore.tsx

312 lines
8.4 KiB
TypeScript
Raw Normal View History

2026-08-24 06:08:38 +00:00
// Module ID: 12835
// Function ID: 12836
2026-07-29 08:29:29 +00:00
// Name: updateParty
2026-08-24 06:08:38 +00:00
// Dependencies: [1218, 4033, 7288, 676, 12, 589, 709, 2]
2026-07-20 16:05:17 +00:00
2026-08-24 06:08:38 +00:00
// Module 12835 (updateParty)
import applyDefault from "apply" /* 12 */;
import initializeDefault from "initialize" /* 589 */;
import dispatcherDefault from "dispatcher" /* 709 */;
import closure_2 from "fetchFingerprint" /* 1218 */;
import closure_3 from "markAllUserIdListsStale" /* 4033 */;
import closure_4 from "filterPlayingActivities" /* 7288 */;
import ME from "ME" /* 676 */;
2026-07-23 10:11:24 +00:00
2026-07-29 08:29:29 +00:00
function updateParty(closure_6, id, activities, status) {
const found = activities.find((party) => {
let BooleanResult = null != party.party;
if (BooleanResult) {
const _Boolean = Boolean;
BooleanResult = Boolean(party.party.id);
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return BooleanResult;
});
2026-07-20 16:05:17 +00:00
id = null;
if (null != found) {
id = null;
if (null != found.party) {
id = found.party.id;
}
}
2026-07-29 08:29:29 +00:00
let obj = dependencyMap[id];
if (obj == null) {
obj = {};
}
2026-07-20 16:05:17 +00:00
if (null != id) {
2026-07-23 10:11:24 +00:00
if (status !== constants.OFFLINE) {
2026-07-29 08:29:29 +00:00
if (null != tmp8) {
if (tmp8 === id) {
2026-07-20 16:05:17 +00:00
return false;
} else {
2026-07-29 08:29:29 +00:00
obj = dependencyMap[id];
if (obj == null) {
obj = {};
}
if (null != obj[closure_6]) {
delete tmp5[tmp];
if (obj3.isEmpty(dependencyMap[id])) {
delete tmp2[tmp3];
}
let value = map.get(tmp9);
if (null != value) {
value.delete(id);
if (0 === value.size) {
map.delete(tmp9);
}
}
2026-08-24 06:08:38 +00:00
obj3 = applyDefault;
2026-07-29 08:29:29 +00:00
}
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
let tmp19 = dependencyMap[id];
if (null == tmp19) {
obj = {};
2026-07-23 10:11:24 +00:00
dependencyMap[id] = obj;
2026-07-29 08:29:29 +00:00
tmp19 = obj;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
tmp19[closure_6] = id;
2026-08-24 06:08:38 +00:00
if (!closure_3.isBlocked(id)) {
if (!closure_3.isIgnored(id)) {
2026-07-29 08:29:29 +00:00
value = map.get(id);
if (value == null) {
2026-07-20 16:05:17 +00:00
const _Set = Set;
2026-07-29 08:29:29 +00:00
value = new Set();
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
const result = map.set(id, value);
value.add(id);
2026-07-20 16:05:17 +00:00
}
}
return true;
}
}
2026-07-29 08:29:29 +00:00
let flag3 = null != tmp8;
2026-07-20 16:05:17 +00:00
if (flag3) {
2026-08-24 06:08:38 +00:00
obj1 = dependencyMap[id];
2026-07-29 08:29:29 +00:00
if (obj1 == null) {
obj1 = {};
}
2026-07-20 16:05:17 +00:00
flag3 = true;
2026-07-29 08:29:29 +00:00
if (null != obj1[closure_6]) {
delete tmp4[tmp];
if (obj9.isEmpty(dependencyMap[id])) {
delete tmp[tmp3];
}
const value1 = map.get(tmp29);
flag3 = true;
if (null != value1) {
value1.delete(id);
flag3 = true;
if (0 === value1.size) {
map.delete(tmp29);
flag3 = true;
}
}
2026-08-24 06:08:38 +00:00
obj9 = applyDefault;
2026-07-29 08:29:29 +00:00
}
2026-07-20 16:05:17 +00:00
}
return flag3;
}
function handleGuildCreate(guild) {
guild = guild.guild;
let flag = false;
2026-07-29 08:29:29 +00:00
for (const item10009 of tmp) {
let tmp2 = updateParty;
let num = 0;
if (false !== updateParty(guild.id, item10009.user.id, item10009.activities, item10009.status)) {
flag = true;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
continue;
}
return flag;
2026-07-20 16:05:17 +00:00
}
function handleLocalPresenceUpdate() {
2026-07-23 10:11:24 +00:00
id = id.getId();
2026-07-29 08:29:29 +00:00
return updateParty(closure_6, id, activities.getActivities());
2026-07-20 16:05:17 +00:00
}
function handleRelationshipAddOrUpdate(relationship) {
relationship = relationship.relationship;
2026-08-24 06:08:38 +00:00
if (!closure_3.isBlocked(relationship.id)) {
2026-07-29 08:29:29 +00:00
if (!obj.isIgnored(relationship.id)) {
2026-07-20 16:05:17 +00:00
return false;
}
}
2026-07-23 10:11:24 +00:00
if (null == dependencyMap[relationship.id]) {
2026-07-20 16:05:17 +00:00
return false;
} else {
2026-08-24 06:08:38 +00:00
const values = applyDefault.values(tmp);
2026-07-29 08:29:29 +00:00
for (const item10025 of values) {
let tmp7 = map;
let value = map.get(item10025);
let obj3 = value;
if (null != value) {
let tmp9 = value;
let deleteResult = obj3.delete(relationship.id);
}
continue;
2026-07-20 16:05:17 +00:00
}
}
2026-08-24 06:08:38 +00:00
obj = closure_3;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
({ StatusTypes: c5, ME: closure_6 } = ME);
let closure_7 = {};
2026-07-23 10:11:24 +00:00
let map = new Map();
2026-08-24 06:08:38 +00:00
const Store = initializeDefault.Store;
2026-07-29 08:29:29 +00:00
class GamePartyStore extends Store {
}
const prototype = GamePartyStore.prototype;
prototype["initialize"] = function initialize() {
2026-08-24 06:08:38 +00:00
const items = [closure_4];
2026-07-29 08:29:29 +00:00
this.syncWith(items, handleLocalPresenceUpdate);
2026-08-24 06:08:38 +00:00
this.waitFor(closure_2, closure_3, closure_4);
2026-07-29 08:29:29 +00:00
};
prototype["getParty"] = function getParty(id) {
let value = null;
if (null != id) {
value = null;
if (map.has(id)) {
value = map.get(id);
2026-07-20 16:05:17 +00:00
}
}
2026-07-29 08:29:29 +00:00
return value;
};
prototype["getUserParties"] = function getUserParties() {
return closure_7;
};
prototype["getParties"] = function getParties() {
return map;
};
GamePartyStore.displayName = "GamePartyStore";
2026-08-24 06:08:38 +00:00
const gamePartyStore = new GamePartyStore(dispatcherDefault, {
2026-07-29 08:29:29 +00:00
CONNECTION_OPEN_SUPPLEMENTAL: function handleConnectionOpenSupplemental(arg0) {
({ guilds, presences } = arg0);
2026-07-20 16:05:17 +00:00
let flag = false;
2026-07-29 08:29:29 +00:00
const iter = presences[Symbol.iterator]();
while (iter !== undefined) {
({ user, status, activities } = nextResult);
let tmp3 = null != user;
if (tmp3) {
let tmp4 = updateParty;
let tmp5 = closure_6;
let tmp6 = user;
let tmp7 = activities;
let tmp8 = status;
let num = 0;
tmp3 = false !== updateParty(closure_6, tmp2.id, activities, status);
}
if (tmp3) {
flag = true;
}
continue;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
for (const item10032 of guilds) {
let tmp9 = handleGuildCreate;
let obj = { guild: null };
obj[0] = item10032;
if (false !== handleGuildCreate(obj)) {
flag = true;
}
continue;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return flag;
2026-07-20 16:05:17 +00:00
},
OVERLAY_INITIALIZE: function handleOverlayInitialize(parties) {
parties = parties.parties;
2026-08-24 06:08:38 +00:00
map = new Map();
2026-07-23 10:11:24 +00:00
const obj = {};
2026-07-20 16:05:17 +00:00
const merged = Object.assign(parties.userParties);
const keys = Object.keys(parties);
const item = keys.forEach((arg0) => map.set(arg0, new Set(parties[arg0])));
},
GUILD_CREATE: handleGuildCreate,
2026-07-29 08:29:29 +00:00
PRESENCES_REPLACE: function handlePresenceReplace(arg0) {
2026-07-20 16:05:17 +00:00
let flag = false;
2026-07-29 08:29:29 +00:00
const iter = arg0.presences[Symbol.iterator]();
while (iter !== undefined) {
({ user, activities } = nextResult);
let tmp3 = null != user;
if (tmp3) {
let tmp4 = updateParty;
let tmp5 = closure_6;
let tmp6 = user;
let tmp7 = activities;
tmp3 = false !== updateParty(closure_6, tmp2.id, activities);
}
if (tmp3) {
flag = true;
}
continue;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return flag;
2026-07-20 16:05:17 +00:00
},
PRESENCE_UPDATES: function handlePresenceUpdates(updates) {
updates = updates.updates;
const mapped = updates.map((user) => {
({ guildId, status, activities } = user);
2026-07-29 08:29:29 +00:00
if (guildId == null) {
guildId = closure_6;
2026-07-20 16:05:17 +00:00
}
2026-07-29 08:29:29 +00:00
return closure_9(guildId, user.user.id, activities, status);
2026-07-20 16:05:17 +00:00
});
return mapped.some((arg0) => arg0);
},
THREAD_MEMBER_LIST_UPDATE: function handleThreadMemberListUpdate(members) {
members = members.members;
2026-07-29 08:29:29 +00:00
const mapped = members.map((presence) => presence.presence);
const guildId = members.guildId;
2026-08-24 06:08:38 +00:00
c1 = false;
2026-07-29 08:29:29 +00:00
const item = mapped.forEach((user) => {
let tmp = null != user;
if (tmp) {
2026-08-24 06:08:38 +00:00
tmp = closure_1_9(closure_0, user.user.id, user.activities, user.status);
2026-07-29 08:29:29 +00:00
}
if (tmp) {
2026-08-24 06:08:38 +00:00
c1 = true;
2026-07-29 08:29:29 +00:00
}
});
return c1;
2026-07-20 16:05:17 +00:00
},
THREAD_MEMBERS_UPDATE: function handleThreadMembersUpdate(addedMembers) {
addedMembers = addedMembers.addedMembers;
let tmp2 = null != addedMembers;
if (tmp2) {
2026-07-29 08:29:29 +00:00
const mapped = addedMembers.map((presence) => presence.presence);
2026-08-24 06:08:38 +00:00
importDefault = tmp;
c1 = false;
2026-07-29 08:29:29 +00:00
const item = mapped.forEach((user) => {
let tmp = null != user;
if (tmp) {
2026-08-24 06:08:38 +00:00
tmp = closure_1_9(closure_0, user.user.id, user.activities, user.status);
2026-07-29 08:29:29 +00:00
}
if (tmp) {
2026-08-24 06:08:38 +00:00
c1 = true;
2026-07-29 08:29:29 +00:00
}
});
tmp2 = c1;
2026-07-20 16:05:17 +00:00
}
return tmp2;
},
RELATIONSHIP_ADD: handleRelationshipAddOrUpdate,
RELATIONSHIP_UPDATE: handleRelationshipAddOrUpdate,
RELATIONSHIP_REMOVE: function handleRelationshipRemove(relationship) {
relationship = relationship.relationship;
2026-07-23 10:11:24 +00:00
if (null == dependencyMap[relationship.id]) {
2026-07-20 16:05:17 +00:00
return false;
} else {
2026-08-24 06:08:38 +00:00
const values = applyDefault.values(tmp);
2026-07-29 08:29:29 +00:00
for (const item10017 of values) {
let tmp7 = map;
let value = map.get(item10017);
let obj2 = value;
if (null != value) {
let tmp9 = value;
let addResult = obj2.add(relationship.id);
}
continue;
2026-07-20 16:05:17 +00:00
}
}
}
});
2026-08-24 06:08:38 +00:00
let result = require("set").fileFinishedImporting("stores/GamePartyStore.tsx");
2026-07-20 16:05:17 +00:00
2026-07-29 08:29:29 +00:00
export default gamePartyStore;