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

75 lines
2.2 KiB
TypeScript

// Metro module 5111 (f5112).
import { ME } from "../../Constants";
import Module589 from "../../_bundle/Module589";
import { isFavoritesGuildId } from "../favorites/FavoritesUtils";
import Dispatcher from "../../Dispatcher";
let c3076_3 = {
STARTED: "started",
READY: "ready",
COMPLETED: "completed",
NOT_APPLICABLE: "not_applicable"
};
let c3076_4 = {};
let c3076_5 = {};
class GuildOnboardingStore extends Module589.Store {
static displayName = "GuildOnboardingStore";
shouldShowOnboarding(a0) {
let r0 = a0 !== ME && !isFavoritesGuildId(a0);
if (r0) {
const r13 = c3076_4[a0];
r0 = !!(r13 != null && [c3076_3.STARTED, c3076_3.READY].includes(r13));
}
return r0;
}
getOnboardingStatus(a0) {
return c3076_4[a0];
}
resetOnboardingStatus(a0) {
c3076_4[a0] = c3076_3.STARTED;
c3076_5[a0] = "cover";
}
getCurrentOnboardingStep(a0) {
let r4 = c3076_5[a0];
if (r4 == null) {
r4 = "cover";
}
return r4;
}
}
const guildOnboardingStore = new GuildOnboardingStore(Dispatcher, {
LOGOUT: function handleReset() {
c3076_4 = {};
c3076_5 = {};
},
GUILD_DELETE: function handleDelete({ guild }) {
delete c3076_4[guild.id];
delete c3076_5[guild.id];
},
GUILD_ONBOARDING_START: function handleOnboardingStart(a0) {
c3076_4[a0.guildId] = c3076_3.STARTED;
},
GUILD_ONBOARDING_PROMPTS_FETCH_SUCCESS: function handlePromptsFetchSuccess({ guildId, enabled }) {
if (c3076_4[guildId] !== c3076_3.STARTED) {
return false;
}
c3076_4[guildId] = enabled ? c3076_3.READY : c3076_3.NOT_APPLICABLE;
},
GUILD_ONBOARDING_PROMPTS_FETCH_FAILURE: function handlePromptsFetchFailure(a0) {
c3076_4[a0.guildId] = c3076_3.NOT_APPLICABLE;
},
GUILD_ONBOARDING_COMPLETE: function handleCompleteOnboarding(a0) {
c3076_4[a0.guildId] = c3076_3.COMPLETED;
},
GUILD_ONBOARDING_SET_STEP: function handleOnboardingStep(a0) {
c3076_5[a0.guildId] = a0.step;
},
CONNECTION_OPEN: function handleResetOnboardingStep() {
c3076_5 = {};
}
});
export default guildOnboardingStore;
export { c3076_3 as GuildOnboardingStatus };
export function isOnboarding(a0) {
return a0 != null && [c3076_3.STARTED, c3076_3.READY].includes(a0);
}