Files
discord-decomp/stores/RegionStore.tsx
T
2026-11-01 12:12:55 +02:00

56 lines
1.5 KiB
TypeScript

// Metro module 15640 (f15641).
import GuildStore from "./GuildStore";
import Module12 from "../_bundle/Module12";
import Module589 from "../_bundle/Module589";
import Dispatcher from "../Dispatcher";
let c11163_3 = null;
let c11163_4 = {};
class RegionStore extends Module589.Store {
static displayName = "RegionStore";
initialize() {
this.waitFor(GuildStore);
}
getOptimalRegion(r5 = null) {
const regions = this.getRegions(r5);
const r2 = regions != null;
let r8 = null;
if (r2) {
let r11 = regions.find((region) => region.optimal);
if (r11 == null) {
r11 = Module12.sample(regions);
}
r8 = r11;
}
return r8;
}
getOptimalRegionId(r3 = null) {
const optimalRegion = this.getOptimalRegion(r3);
return optimalRegion != null ? optimalRegion.id : null;
}
getRandomRegion(r4 = null) {
const regions = this.getRegions(r4);
return regions != null ? Module12.sample(regions) : null;
}
getRandomRegionId(r3 = null) {
const randomRegion = this.getRandomRegion(r3);
return randomRegion != null ? randomRegion.id : null;
}
getRegions(a0) {
return a0 != null ? c11163_4[a0] : c11163_3;
}
}
const regionStore = new RegionStore(Dispatcher, {
LOAD_REGIONS: function handleLoadRegions(a0) {
const r11 = Module12.sortBy(a0.regions, (a0) => a0.name);
if (a0.guildId != null) {
c11163_4[a0.guildId] = r11;
} else {
c11163_3 = r11;
}
},
GUILD_DELETE: function handleDeleteGuild(a0) {
delete c11163_4[a0.guild.id];
}
});
export default regionStore;