212 lines
6.8 KiB
TypeScript
212 lines
6.8 KiB
TypeScript
// Metro module 4075 (f4076).
|
|
import GuildPowerupsStore from "../premium/powerups/GuildPowerupsStore";
|
|
import GuildStore from "../../stores/GuildStore";
|
|
import SelectedGuildStore from "../../stores/SelectedGuildStore";
|
|
import { GuildFeatures } from "../../Constants";
|
|
import { GUILD_POWERUP_GUILD_THEME_SKU_ID } from "../../_bundle/Module4080";
|
|
import { cloneGuildTheme } from "./guildThemeSerialization";
|
|
import { isEqual } from "../../_bundle/Module12";
|
|
import Module589 from "../../_bundle/Module589";
|
|
import Dispatcher from "../../Dispatcher";
|
|
let c2343_6, guildId;
|
|
const snapshotSelectedGuildId = function snapshotSelectedGuildId(a0) {
|
|
let r28;
|
|
if (a0 == null) {
|
|
let r40 = c2343_6 != null;
|
|
if (r40) {
|
|
c2343_6 = null;
|
|
r40 = true;
|
|
}
|
|
r28 = r40;
|
|
} else {
|
|
const guildTheme = cloneGuildTheme(GuildStore.getGuild(a0)?.guildTheme);
|
|
const guild = GuildStore.getGuild(a0);
|
|
const r20 = guild == null ? void 0 : guild.features.has(GuildFeatures.GUILD_THEME);
|
|
r28 = c2343_6?.guildId !== a0 || !isEqual(c2343_6.guildTheme, guildTheme);
|
|
const hasThemeFeature = r20 === true;
|
|
if (!r28) {
|
|
r28 = c2343_6.hasThemeFeature !== hasThemeFeature;
|
|
}
|
|
if (r28) {
|
|
c2343_6 = {
|
|
guildId: a0,
|
|
guildTheme,
|
|
hasThemeFeature
|
|
};
|
|
r28 = true;
|
|
}
|
|
}
|
|
return r28;
|
|
};
|
|
const snapshotSelectedGuild = function snapshotSelectedGuild() {
|
|
return snapshotSelectedGuildId(SelectedGuildStore.getGuildId());
|
|
};
|
|
const handleSavedGuildTheme = function handleSavedGuildTheme({ guildId: guildId2, guildTheme }) {
|
|
let r1 = guildId2 === SelectedGuildStore.getGuildId();
|
|
if (r1) {
|
|
const guildTheme2 = cloneGuildTheme(guildTheme);
|
|
const guild = GuildStore.getGuild(guildId2);
|
|
const r23 = guild == null ? void 0 : guild.features.has(GuildFeatures.GUILD_THEME);
|
|
let r29 = c2343_6?.guildId !== guildId2 || !isEqual(c2343_6.guildTheme, guildTheme2);
|
|
const hasThemeFeature = r23 === true;
|
|
if (!r29) {
|
|
r29 = c2343_6.hasThemeFeature !== hasThemeFeature;
|
|
}
|
|
if (r29) {
|
|
c2343_6 = {
|
|
guildId: guildId2,
|
|
guildTheme: guildTheme2,
|
|
hasThemeFeature
|
|
};
|
|
r29 = true;
|
|
}
|
|
r1 = r29;
|
|
}
|
|
return r1;
|
|
};
|
|
c2343_6 = null;
|
|
guildId = null;
|
|
class GuildThemeRuntimeStore extends Module589.Store {
|
|
static displayName = "GuildThemeRuntimeStore";
|
|
initialize() {
|
|
this.waitFor(GuildPowerupsStore, GuildStore, SelectedGuildStore);
|
|
}
|
|
getGuildThemeSnapshot(a0) {
|
|
return a0 !== guildId ? a0 === c2343_6?.guildId ? c2343_6.guildTheme : void 0 : null;
|
|
}
|
|
}
|
|
const guildThemeRuntimeStore = new GuildThemeRuntimeStore(Dispatcher, {
|
|
CACHE_LOADED: snapshotSelectedGuild,
|
|
CACHE_LOADED_LAZY: snapshotSelectedGuild,
|
|
CHANNEL_SELECT: function handleChannelSelect({ guildId: guildId2 }) {
|
|
let r9;
|
|
if (guildId2 == null) {
|
|
let r2 = c2343_6 != null;
|
|
if (r2) {
|
|
c2343_6 = null;
|
|
r2 = true;
|
|
}
|
|
r9 = r2;
|
|
} else {
|
|
r9 = guildId2 !== c2343_6?.guildId && snapshotSelectedGuildId(guildId2);
|
|
}
|
|
return r9;
|
|
},
|
|
CONNECTION_OPEN: snapshotSelectedGuild,
|
|
GUILD_DELETE: function handleGuildDelete(a0) {
|
|
const id = a0.guild.id;
|
|
const guildId2 = c2343_6?.guildId;
|
|
let r11 = false;
|
|
if (guildId2 === id) {
|
|
const guildId3 = SelectedGuildStore.getGuildId();
|
|
r11 = guildId3 !== id && snapshotSelectedGuildId(guildId3);
|
|
}
|
|
return r11;
|
|
},
|
|
GUILD_MEMBER_REMOVE: function handleGuildMemberRemove({ guildId: guildId2 }) {
|
|
const guildId3 = c2343_6?.guildId;
|
|
let r10 = false;
|
|
if (guildId3 === guildId2) {
|
|
const guildId4 = SelectedGuildStore.getGuildId();
|
|
r10 = guildId4 !== guildId2 && snapshotSelectedGuildId(guildId4);
|
|
}
|
|
return r10;
|
|
},
|
|
GUILD_UPDATE: function handleGuildUpdate({ guild }) {
|
|
let r1 = guild.id !== guildId;
|
|
if (!r1) {
|
|
const guild2 = GuildStore.getGuild(guild.id);
|
|
r1 = (guild2 == null ? void 0 : guild2.features.has(GuildFeatures.GUILD_THEME)) === true;
|
|
}
|
|
let r27 = false;
|
|
if (!r1) {
|
|
guildId = null;
|
|
r27 = true;
|
|
}
|
|
const id = guild.id;
|
|
const r30 = c2343_6;
|
|
const r6 = r30 == null;
|
|
let r31 = false;
|
|
if (!r6) {
|
|
const guildId2 = r30.guildId;
|
|
r31 = false;
|
|
if (id === guildId2) {
|
|
const guild3 = GuildStore.getGuild(id);
|
|
const hasThemeFeature2 = (guild3 == null ? void 0 : guild3.features.has(GuildFeatures.GUILD_THEME)) === true;
|
|
const hasThemeFeature = r30.hasThemeFeature;
|
|
r31 = false;
|
|
if (hasThemeFeature2 !== hasThemeFeature) {
|
|
let r3 = !hasThemeFeature2;
|
|
if (hasThemeFeature2) {
|
|
const stateForGuild = GuildPowerupsStore.getStateForGuild(id);
|
|
const r4 = stateForGuild == null;
|
|
let r45 = void 0;
|
|
if (!r4) {
|
|
const unlockedPowerups = stateForGuild.unlockedPowerups;
|
|
r45 = unlockedPowerups == null ? void 0 : unlockedPowerups[GUILD_POWERUP_GUILD_THEME_SKU_ID];
|
|
}
|
|
r3 = r45 != null && !(r30.guildTheme?.enabled === true);
|
|
}
|
|
const guildTheme = r3 ? cloneGuildTheme(GuildStore.getGuild(id)?.guildTheme) : r30.guildTheme;
|
|
let r70 = c2343_6?.guildId !== id || !isEqual(c2343_6.guildTheme, guildTheme) || c2343_6.hasThemeFeature !== hasThemeFeature2;
|
|
if (r70) {
|
|
c2343_6 = {
|
|
guildId: id,
|
|
guildTheme,
|
|
hasThemeFeature: hasThemeFeature2
|
|
};
|
|
r70 = true;
|
|
}
|
|
r31 = r70;
|
|
}
|
|
}
|
|
}
|
|
if (r31) {
|
|
r27 = true;
|
|
}
|
|
return r27;
|
|
},
|
|
GUILD_POWERUP_ENTITLEMENTS_CREATE: function handleThemePowerupAdded({ guildId: guildId2, entitlements }) {
|
|
let r1 = guildId === guildId2;
|
|
if (r1) {
|
|
let r11 = !!entitlements.some((entitlement) => entitlement.sku_id === GUILD_POWERUP_GUILD_THEME_SKU_ID);
|
|
if (r11) {
|
|
guildId = null;
|
|
r11 = true;
|
|
}
|
|
r1 = r11;
|
|
}
|
|
return r1;
|
|
},
|
|
GUILD_POWERUP_ENTITLEMENTS_DELETE: function handleThemePowerupRemoved(a0) {
|
|
const guildId2 = a0.guildId;
|
|
let r10 = !!a0.entitlements.some((entitlement) => entitlement.sku_id === GUILD_POWERUP_GUILD_THEME_SKU_ID);
|
|
if (r10) {
|
|
let r14 = guildId2 === c2343_6?.guildId && guildId !== guildId2;
|
|
if (r14) {
|
|
guildId = guildId2;
|
|
r14 = true;
|
|
}
|
|
r10 = r14;
|
|
}
|
|
return r10;
|
|
},
|
|
GUILD_SETTINGS_GUILD_THEME_SAVE_SUCCESS: handleSavedGuildTheme,
|
|
GUILD_THEME_PREVIEW_SAVE_SUCCESS: handleSavedGuildTheme,
|
|
OVERLAY_INITIALIZE: snapshotSelectedGuild,
|
|
LOGOUT: function handleConnectionReset() {
|
|
const r2 = guildId != null;
|
|
guildId = null;
|
|
let r0 = c2343_6 != null;
|
|
if (r0) {
|
|
c2343_6 = null;
|
|
r0 = true;
|
|
}
|
|
if (!r0) {
|
|
r0 = r2;
|
|
}
|
|
return r0;
|
|
}
|
|
});
|
|
export default guildThemeRuntimeStore;
|