Files
discord-decomp/modules/hub/HubJoinManager.tsx
T
2026-11-01 12:12:55 +02:00

33 lines
1.0 KiB
TypeScript

// Metro module 11842 (f11843).
import GuildStore from "../../stores/GuildStore";
import { GuildFeatures } from "../../Constants";
import LifecycleManager from "../../lib/LifecycleManager";
import Dispatcher from "../../Dispatcher";
import { transitionToGuild } from "../routing/transitionToGuild.native";
class HubJoinManager extends LifecycleManager {
handleGuildCreate = (a0) => {
const guild = GuildStore.getGuild(a0.guild.id);
let r12 = guild != null;
if (r12) {
const features = guild.features;
r12 = features == null ? void 0 : features.has(GuildFeatures.HUB);
}
if (r12) {
const onClose = this.onClose;
if (onClose != null) {
onClose.call(this);
}
transitionToGuild(guild.id);
}
};
_initialize(a0) {
this.onClose = a0;
Dispatcher.subscribe("GUILD_CREATE", this.handleGuildCreate);
}
_terminate() {
Dispatcher.unsubscribe("GUILD_CREATE", this.handleGuildCreate);
}
}
const hubJoinManager = new HubJoinManager();
export default hubJoinManager;