127 lines
4.3 KiB
TypeScript
127 lines
4.3 KiB
TypeScript
// Metro module 5114 (f5115).
|
|
import AuthenticationStore from "../../stores/AuthenticationStore";
|
|
import GuildMemberStore from "../../stores/GuildMemberStore";
|
|
import GuildStore from "../../stores/GuildStore";
|
|
import GuildOnboardingPromptsStore from "./GuildOnboardingPromptsStore";
|
|
import { serverApiResponseToClientState } from "./GuildOnboardingPromptsConstants";
|
|
import { AnalyticEvents, Endpoints, GuildFeatures } from "../../Constants";
|
|
import { GuildMemberFlags } from "../guild_member/GuildMemberConstants";
|
|
import AnalyticsUtils from "../../utils/AnalyticsUtils";
|
|
import { collectGuildAnalyticsMetadata } from "../app_analytics/AppAnalyticsUtils";
|
|
import Dispatcher from "../../Dispatcher";
|
|
import { HTTP } from "../../_bundle/sendRequest";
|
|
import * as _Module1384 from "../../_bundle/Module1384";
|
|
let startOnboarding, step, _trackOnboardingDirectJoin;
|
|
const fetchOnboardingPrompts = function fetchOnboardingPrompts(guildId5) {
|
|
const guildId = guildId5;
|
|
Dispatcher.dispatch({
|
|
type: "GUILD_ONBOARDING_PROMPTS_FETCH_START",
|
|
guildId: guildId5
|
|
});
|
|
return HTTP.get({
|
|
url: Endpoints.GUILD_ONBOARDING(guildId5),
|
|
rejectWithError: false
|
|
}).then(({ body }) => {
|
|
const r5 = serverApiResponseToClientState(body);
|
|
let c25349_0 = r5;
|
|
return Dispatcher.dispatch({
|
|
type: "GUILD_ONBOARDING_PROMPTS_FETCH_SUCCESS",
|
|
guildId,
|
|
...r5
|
|
}).then(() => c25349_0.prompts);
|
|
}, (a0) => {
|
|
Dispatcher.dispatch({
|
|
type: "GUILD_ONBOARDING_PROMPTS_FETCH_FAILURE",
|
|
guildId
|
|
});
|
|
return a0;
|
|
});
|
|
};
|
|
startOnboarding = function startOnboarding(a0) {
|
|
Dispatcher.dispatch({
|
|
type: "GUILD_ONBOARDING_START",
|
|
guildId: a0
|
|
});
|
|
};
|
|
_trackOnboardingDirectJoin = function _trackOnboardingDirectJoin(a0) {
|
|
AnalyticsUtils.track(AnalyticEvents.GUILD_ONBOARDING_STEP_VIEWED, {
|
|
...collectGuildAnalyticsMetadata(a0),
|
|
step,
|
|
required: true
|
|
});
|
|
AnalyticsUtils.track(AnalyticEvents.GUILD_ONBOARDING_STEP_COMPLETED, {
|
|
...collectGuildAnalyticsMetadata(a0),
|
|
step,
|
|
skipped: false,
|
|
is_final_step: true,
|
|
in_onboarding: true
|
|
});
|
|
};
|
|
step = -2;
|
|
export function loadOnboardingPrompts(a0) {
|
|
AnalyticsUtils.track(AnalyticEvents.GUILD_ONBOARDING_LOADED, {
|
|
...collectGuildAnalyticsMetadata(a0),
|
|
has_new_prompts: false,
|
|
number_of_prompts: 0
|
|
});
|
|
}
|
|
export { fetchOnboardingPrompts };
|
|
export async function maybeFetchOnboardingPrompts(c25350_0) {
|
|
let r48, r72, r112;
|
|
let flags, c25350_2, c25350_3;
|
|
L32: {
|
|
L29: {
|
|
L22: {
|
|
let env29462;
|
|
c25350_3 = void 0;
|
|
const r13 = env29462 = {};
|
|
c25350_2 = r13;
|
|
env29462[0] = c25350_0;
|
|
env29462[1] = void 0;
|
|
env29462[2] = void 0;
|
|
flags = GuildMemberStore.getMember(c25350_0, AuthenticationStore.getId())?.flags;
|
|
if (flags == null) {
|
|
flags = 0;
|
|
}
|
|
const hasFlag = _Module1384.hasFlag(flags, GuildMemberFlags.COMPLETED_ONBOARDING);
|
|
env29462[1] = hasFlag;
|
|
const guild = GuildStore.getGuild(c25350_0);
|
|
if (guild != null && guild.features.has(GuildFeatures.GUILD_ONBOARDING)) {
|
|
const shouldFetchPrompts = GuildOnboardingPromptsStore.shouldFetchPrompts(c25350_0);
|
|
const onboardingPrompts = GuildOnboardingPromptsStore.getOnboardingPrompts(c25350_0);
|
|
if (!shouldFetchPrompts && onboardingPrompts.length > 0) {
|
|
if (onboardingPrompts.every((onboardingPrompt) => !onboardingPrompt.inOnboarding)) {
|
|
_trackOnboardingDirectJoin(c25350_0);
|
|
r72 = Promise.resolve();
|
|
break L22;
|
|
}
|
|
if (!hasFlag) {
|
|
startOnboarding(c25350_0);
|
|
}
|
|
r72 = Promise.resolve();
|
|
break L22;
|
|
}
|
|
env29462[2] = await fetchOnboardingPrompts(c25350_0);
|
|
if (Array.isArray(env29462[2]) && env29462[2].every((item) => !item.inOnboarding)) {
|
|
(0, _trackOnboardingDirectJoin)(env29462[0]);
|
|
r112 = Promise.resolve();
|
|
break L29;
|
|
}
|
|
if (!env29462[1]) {
|
|
(0, startOnboarding)(env29462[0]);
|
|
}
|
|
r112 = env29462[2];
|
|
break L29;
|
|
}
|
|
r48 = Promise.resolve();
|
|
break L32;
|
|
}
|
|
return r72;
|
|
}
|
|
return r112;
|
|
}
|
|
return r48;
|
|
}
|
|
export { startOnboarding };
|
|
export const CONNECTIONS_STEP = -3;
|