293 lines
9 KiB
TypeScript
293 lines
9 KiB
TypeScript
// Module ID: 4657
|
|
// Function ID: 4658
|
|
// Name: SelectedGuildStore
|
|
// Dependencies: [4658, 502, 4661, 2073, 1086, 1113, 504, 4662, 4675, 585, 2]
|
|
|
|
// Module 4657 (SelectedGuildStore)
|
|
import get_initializedDefault from "get initialized" /* 504 */;
|
|
import DispatcherDefault from "Dispatcher" /* 585 */;
|
|
import router_utils from "router_utils" /* 1113 */;
|
|
import matchPathCompat from "matchPathCompat" /* 4662 */;
|
|
import RouteUtils from "RouteUtils" /* 4675 */;
|
|
import UserGuildJoinRequestStore from "UserGuildJoinRequestStore" /* 4658 */;
|
|
import AuthenticationStore from "AuthenticationStore" /* 502 */;
|
|
import DefaultRouteStore from "DefaultRouteStore" /* 4661 */;
|
|
import GuildStore from "GuildStore" /* 2073 */;
|
|
import Constants from "Constants" /* 1086 */;
|
|
import size from "module_2" /* 2 */;
|
|
|
|
let metroImportDefault;
|
|
let metroRequire;
|
|
function handleConnectionOpen() {
|
|
const tmp = null != selectedGuildId && null == GuildStore.getGuild(selectedGuildId) && null == UserGuildJoinRequestStore.getRequest(selectedGuildId);
|
|
if (tmp) {
|
|
selectedGuildId = null;
|
|
}
|
|
const tmp6 = null != lastSelectedGuildId && null == GuildStore.getGuild(lastSelectedGuildId) && null == UserGuildJoinRequestStore.getRequest(lastSelectedGuildId);
|
|
if (tmp6) {
|
|
lastSelectedGuildId = null;
|
|
}
|
|
if (null != selectedGuildId) {
|
|
const _Date = Date;
|
|
prop[tmp11] = Date.now();
|
|
}
|
|
}
|
|
({ ME: metroRequire, Routes: metroImportDefault } = Constants);
|
|
let selectedGuildId = null;
|
|
let lastSelectedGuildId = null;
|
|
let prop = {};
|
|
const PersistedStore = get_initializedDefault.PersistedStore;
|
|
class SelectedGuildStore extends PersistedStore {
|
|
initialize(selectedGuildTimestampMillis) {
|
|
let CHANNEL;
|
|
let RouteParam;
|
|
this.mustEmitChanges((type) => "CONNECTION_OPEN" !== type.type);
|
|
this.waitFor(AuthenticationStore, DefaultRouteStore, GuildStore, UserGuildJoinRequestStore);
|
|
prop = undefined;
|
|
const tmp2 = DefaultRouteStore;
|
|
if (selectedGuildTimestampMillis != null) {
|
|
prop = selectedGuildTimestampMillis.selectedGuildTimestampMillis;
|
|
}
|
|
if (prop == null) {
|
|
prop = {};
|
|
}
|
|
selectedGuildId = undefined;
|
|
if (selectedGuildTimestampMillis != null) {
|
|
selectedGuildId = selectedGuildTimestampMillis.selectedGuildId;
|
|
}
|
|
if (selectedGuildId == null) {
|
|
selectedGuildId = null;
|
|
}
|
|
lastSelectedGuildId = undefined;
|
|
if (selectedGuildTimestampMillis != null) {
|
|
lastSelectedGuildId = selectedGuildTimestampMillis.lastSelectedGuildId;
|
|
}
|
|
if (lastSelectedGuildId == null) {
|
|
lastSelectedGuildId = null;
|
|
}
|
|
const lastNonVoiceRoute = tmp2.lastNonVoiceRoute;
|
|
const obj = { path: CHANNEL(RouteParam.guildId()) };
|
|
const matchPath = matchPathCompat.matchPath;
|
|
CHANNEL = metroImportDefault.CHANNEL;
|
|
matchPathCompat;
|
|
RouteParam = RouteUtils.RouteParam;
|
|
const matchPathResult = matchPath(lastNonVoiceRoute, obj);
|
|
let guildId;
|
|
if (matchPathResult != null) {
|
|
const params = matchPathResult.params;
|
|
if (params != null) {
|
|
guildId = params.guildId;
|
|
}
|
|
}
|
|
let tmp9 = null;
|
|
if (guildId !== metroRequire) {
|
|
if (guildId == null) {
|
|
guildId = null;
|
|
}
|
|
tmp9 = guildId;
|
|
}
|
|
const tmp10 = null != tmp9 && tmp9 !== selectedGuildId;
|
|
if (tmp10) {
|
|
selectedGuildId = tmp9;
|
|
}
|
|
}
|
|
getState() {
|
|
return { selectedGuildTimestampMillis: prop, selectedGuildId, lastSelectedGuildId };
|
|
}
|
|
getGuildId() {
|
|
return selectedGuildId;
|
|
}
|
|
getLastSelectedGuildId() {
|
|
return lastSelectedGuildId;
|
|
}
|
|
getLastSelectedTimestamp(arg0) {
|
|
let num = -1;
|
|
if (selectedGuildId !== arg0) {
|
|
num = prop[arg0];
|
|
}
|
|
return num;
|
|
}
|
|
}
|
|
const prototype = SelectedGuildStore.prototype;
|
|
SelectedGuildStore.displayName = "SelectedGuildStore";
|
|
SelectedGuildStore.persistKey = "SelectedGuildStore";
|
|
let obj = {
|
|
CONNECTION_OPEN: handleConnectionOpen,
|
|
OVERLAY_INITIALIZE: function handleOverlayInitialize(selectedGuildId) {
|
|
selectedGuildId = selectedGuildId.selectedGuildId;
|
|
lastSelectedGuildId = undefined;
|
|
handleConnectionOpen();
|
|
},
|
|
CHANNEL_SELECT: function handleChannelSelect(guildId) {
|
|
guildId = guildId.guildId;
|
|
if (selectedGuildId === guildId) {
|
|
return false;
|
|
} else {
|
|
if (null != selectedGuildId) {
|
|
const _Date = Date;
|
|
prop[selectedGuildId] = Date.now();
|
|
}
|
|
if (null != guildId) {
|
|
const _Date2 = Date;
|
|
prop[guildId] = Date.now();
|
|
}
|
|
if (null != guildId) {
|
|
lastSelectedGuildId = guildId;
|
|
}
|
|
selectedGuildId = guildId;
|
|
}
|
|
},
|
|
GUILD_MEMBER_REMOVE: function handleGuildMemberRemove(guildId) {
|
|
guildId = guildId.guildId;
|
|
let tmp = guildId.user.id === AuthenticationStore.getId();
|
|
if (tmp) {
|
|
delete prop[guildId];
|
|
let flag = false;
|
|
if (lastSelectedGuildId === guildId) {
|
|
lastSelectedGuildId = null;
|
|
flag = true;
|
|
}
|
|
if (selectedGuildId === guildId) {
|
|
const tmp5 = (function pickFallbackGuildId(guildId) {
|
|
let closure_0 = guildId;
|
|
if (null != lastSelectedGuildId) {
|
|
if (null != GuildStore.getGuild(lastSelectedGuildId)) {
|
|
return lastSelectedGuildId;
|
|
}
|
|
}
|
|
let tmp3 = null;
|
|
let num = 0;
|
|
const keys = Object.keys(prop);
|
|
for (const item10022 of keys) {
|
|
let tmp5 = item10022;
|
|
if (item10022 !== guildId) {
|
|
let tmp8 = prop[tmp5];
|
|
let tmp11 = tmp8 > num;
|
|
if (tmp11) {
|
|
tmp11 = null != GuildStore.getGuild(tmp5);
|
|
}
|
|
if (tmp11) {
|
|
tmp3 = item10022;
|
|
num = tmp8;
|
|
}
|
|
}
|
|
continue;
|
|
}
|
|
if (null != tmp3) {
|
|
return tmp3;
|
|
} else {
|
|
const guildsArray = GuildStore.getGuildsArray();
|
|
const found = guildsArray.find((id) => id.id !== closure_0);
|
|
let id;
|
|
if (found != null) {
|
|
id = found.id;
|
|
}
|
|
if (id == null) {
|
|
id = null;
|
|
}
|
|
return id;
|
|
}
|
|
})(guildId);
|
|
if (null != tmp5) {
|
|
selectedGuildId = tmp5;
|
|
const obj2 = router_utils;
|
|
obj2.replaceWith(metroImportDefault.CHANNEL(tmp5));
|
|
flag = true;
|
|
} else {
|
|
selectedGuildId = null;
|
|
const obj = router_utils;
|
|
obj.replaceWith(metroImportDefault.ME);
|
|
flag = true;
|
|
}
|
|
}
|
|
tmp = flag;
|
|
}
|
|
return tmp;
|
|
},
|
|
GUILD_DELETE: function handleGuildDelete(guild) {
|
|
guild = guild.guild;
|
|
let id = guild.id;
|
|
let tmp = true !== guild.unavailable;
|
|
if (tmp) {
|
|
delete prop[id];
|
|
let flag = false;
|
|
if (lastSelectedGuildId === id) {
|
|
let tmp3 = null;
|
|
lastSelectedGuildId = null;
|
|
flag = true;
|
|
}
|
|
if (selectedGuildId === id) {
|
|
let num = 0;
|
|
let tmp5 = (function pickFallbackGuildId(guildId) {
|
|
let closure_0 = guildId;
|
|
if (null != lastSelectedGuildId) {
|
|
if (null != GuildStore.getGuild(lastSelectedGuildId)) {
|
|
return lastSelectedGuildId;
|
|
}
|
|
}
|
|
let tmp3 = null;
|
|
let num = 0;
|
|
const keys = Object.keys(prop);
|
|
for (const item10022 of keys) {
|
|
let tmp5 = item10022;
|
|
if (item10022 !== guildId) {
|
|
let tmp8 = prop[tmp5];
|
|
let tmp11 = tmp8 > num;
|
|
if (tmp11) {
|
|
tmp11 = null != GuildStore.getGuild(tmp5);
|
|
}
|
|
if (tmp11) {
|
|
tmp3 = item10022;
|
|
num = tmp8;
|
|
}
|
|
}
|
|
continue;
|
|
}
|
|
if (null != tmp3) {
|
|
return tmp3;
|
|
} else {
|
|
const guildsArray = GuildStore.getGuildsArray();
|
|
const found = guildsArray.find((id) => id.id !== closure_0);
|
|
let id;
|
|
if (found != null) {
|
|
id = found.id;
|
|
}
|
|
if (id == null) {
|
|
id = null;
|
|
}
|
|
return id;
|
|
}
|
|
})(id);
|
|
let tmp6 = null;
|
|
if (null != tmp5) {
|
|
selectedGuildId = tmp5;
|
|
let tmp11 = require;
|
|
let tmp12 = dependencyMap;
|
|
let tmp13 = metroImportDefault;
|
|
const obj2 = router_utils;
|
|
obj2.replaceWith(metroImportDefault.CHANNEL(tmp5));
|
|
flag = true;
|
|
} else {
|
|
selectedGuildId = null;
|
|
let tmp7 = require;
|
|
let tmp8 = dependencyMap;
|
|
let tmp9 = metroImportDefault;
|
|
const obj = router_utils;
|
|
obj.replaceWith(metroImportDefault.ME);
|
|
flag = true;
|
|
}
|
|
}
|
|
tmp = flag;
|
|
}
|
|
return tmp;
|
|
},
|
|
LOGOUT: function handleLogout() {
|
|
selectedGuildId = null;
|
|
lastSelectedGuildId = null;
|
|
}
|
|
};
|
|
const selectedGuildStore = new SelectedGuildStore(DispatcherDefault, obj);
|
|
const result = size.fileFinishedImporting("stores/SelectedGuildStore.tsx");
|
|
|
|
export default selectedGuildStore;
|
|
export const SELECTED_GUILD_TIMESTAMP_NOW = -1;
|