33 lines
1.0 KiB
TypeScript
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;
|