decord/stable/source/modules/quests/managers/QuestFetchManager.tsx
2026-10-06 22:12:49 +00:00

144 lines
6.8 KiB
TypeScript

// Module ID: 17643
// Function ID: 17644
// Name: QuestFetchManager
// Dependencies: [7120, 1103, 6540, 10671, 1243, 9765, 1370, 9786, 17644, 2]
// Module 17643 (QuestFetchManager)
import DurationsDefault from "Durations" /* 1103 */;
import SentryUtilsDefault from "SentryUtils" /* 1243 */;
import PlatformUtils from "PlatformUtils" /* 1370 */;
import QuestActionCreators from "QuestActionCreators" /* 9765 */;
import QuestsEligibility from "QuestsEligibility" /* 10671 */;
import QuestFetchReconnectJitterExperiment from "QuestFetchReconnectJitterExperiment" /* 17644 */;
import QuestStore from "QuestStore" /* 7120 */;
import AutomaticLifecycleManager from "AutomaticLifecycleManager" /* 6540 */;
import size from "module_2" /* 2 */;
const DAY = DurationsDefault.Millis.DAY;
let closure_5 = 30 * DurationsDefault.Millis.MINUTE;
let closure_6 = 5 * DurationsDefault.Millis.MINUTE;
const HOUR = DurationsDefault.Millis.HOUR;
let closure_7 = 5 * DurationsDefault.Millis.MINUTE;
class QuestFetchManager extends AutomaticLifecycleManager {
constructor() {
const applyArgumentsResult = HermesBuiltin.applyArguments(this, new.target);
require = applyArgumentsResult;
applyArgumentsResult.instantiatedAt = Date.now();
applyArgumentsResult.initialFetchTimerId = null;
applyArgumentsResult.initialQuestHomeHeroFetchTimerId = null;
applyArgumentsResult.recurringFetchTimerId = null;
applyArgumentsResult.lastFetchAttemptedAt = 0;
applyArgumentsResult.lastFetchedQuestForLocaleChangeAt = 0;
applyArgumentsResult.hasHandledConnectionOpen = false;
applyArgumentsResult.handleQuestsFetchCurrentQuestsBegin = function handleQuestsFetchCurrentQuestsBegin() {
require.lastFetchAttemptedAt = Date.now();
};
applyArgumentsResult.handlePostConnectionOpen = function handlePostConnectionOpen() {
let questFetchJitterMs;
let questHomeHeroJitterMs;
window.clearTimeout(require.initialFetchTimerId);
window.clearTimeout(require.initialQuestHomeHeroFetchTimerId);
window.clearTimeout(require.recurringFetchTimerId);
require.recurringFetchTimerId = window.setInterval(() => {
const obj = closure_1_0;
if (Date.now() - closure_1_0.lastFetchAttemptedAt > DAY) {
obj._fetch("post_connect_recurring");
}
}, closure_5);
let obj = QuestsEligibility;
const isEligibleForQuests = obj.getIsEligibleForQuests();
require.hasHandledConnectionOpen = true;
if (require.hasHandledConnectionOpen) {
let DEFAULT_QUEST_FETCH_JITTER_CONFIG;
if (isEligibleForQuests) {
const tmp5Result = QuestFetchReconnectJitterExperiment;
DEFAULT_QUEST_FETCH_JITTER_CONFIG = tmp5Result.getQuestFetchReconnectJitterConfig({ location: "QuestFetchManager" });
}
const _Math = Math;
const _Math2 = Math;
({ questFetchJitterMs, questHomeHeroJitterMs } = DEFAULT_QUEST_FETCH_JITTER_CONFIG);
const rounded = Math.floor(Math.random() * questFetchJitterMs);
const _window = window;
require.initialFetchTimerId = window.setTimeout(() => {
if (Date.now() - QuestStore.lastFetchedCurrentQuests > closure_2_7) {
closure_1_0._fetch("post_connect_initial");
}
}, rounded);
if (isEligibleForQuests) {
const _Math3 = Math;
const _Math4 = Math;
const _window2 = window;
require.initialQuestHomeHeroFetchTimerId = window.setTimeout(() => {
try {
const obj = closure_1_0(closure_1_2[5]);
const questHomeHero = obj.fetchQuestHomeHero();
} catch (err) {
}
}, rounded + Math.floor(Math.random() * questHomeHeroJitterMs));
}
}
DEFAULT_QUEST_FETCH_JITTER_CONFIG = tmp5(17644).DEFAULT_QUEST_FETCH_JITTER_CONFIG;
};
applyArgumentsResult.handleRunningGamesChange = function handleRunningGamesChange() {
};
applyArgumentsResult.handleUserSettingsProtoUpdate = function handleUserSettingsProtoUpdate(settings) {
let tmp = !("localization" in settings.settings.proto);
const wasSaved = settings.wasSaved;
if (!tmp) {
tmp = !settings.partial;
}
if (!tmp) {
tmp = wasSaved;
}
if (!tmp) {
const _Date = Date;
tmp = Date.now() - require.lastFetchedQuestForLocaleChangeAt <= closure_6;
}
if (!tmp) {
const _Date2 = Date;
require.lastFetchedQuestForLocaleChangeAt = Date.now();
require._fetch("user_settings");
}
};
applyArgumentsResult.handleStartSession = function handleStartSession() {
require.hasHandledConnectionOpen = false;
};
applyArgumentsResult.handleLogout = function handleLogout() {
window.clearTimeout(require.initialFetchTimerId);
window.clearTimeout(require.initialQuestHomeHeroFetchTimerId);
window.clearTimeout(require.recurringFetchTimerId);
require.lastFetchAttemptedAt = 0;
require.lastFetchedQuestForLocaleChangeAt = 0;
require.hasHandledConnectionOpen = false;
};
applyArgumentsResult.actions = { QUESTS_FETCH_CURRENT_QUESTS_BEGIN: applyArgumentsResult.handleQuestsFetchCurrentQuestsBegin, POST_CONNECTION_OPEN: applyArgumentsResult.handlePostConnectionOpen, RUNNING_GAMES_CHANGE: applyArgumentsResult.handleRunningGamesChange, RUNNING_NON_GAMES_CHANGE: applyArgumentsResult.handleRunningGamesChange, USER_SETTINGS_PROTO_UPDATE: applyArgumentsResult.handleUserSettingsProtoUpdate, START_SESSION: applyArgumentsResult.handleStartSession, LOGOUT: applyArgumentsResult.handleLogout };
return applyArgumentsResult;
}
_fetch(combined) {
let obj3;
const obj = QuestsEligibility;
const isEligibleForQuests = obj.getIsEligibleForQuests() && !QuestStore.isFetchingCurrentQuests;
if (isEligibleForQuests) {
const obj2 = { category: "quests.fetch", message: "QuestFetchManager._fetch triggered", data: obj3 };
const _Date = Date;
obj3 = { callerSource: combined, storeSize: QuestStore.quests.size, lastFetchedCurrentQuests: QuestStore.lastFetchedCurrentQuests, msSinceLastFetch: Date.now() - QuestStore.lastFetchedCurrentQuests, isFetchingCurrentQuests: QuestStore.isFetchingCurrentQuests };
const addBreadcrumb = SentryUtilsDefault.addBreadcrumb;
SentryUtilsDefault;
addBreadcrumb(obj2);
const tmpResult = QuestActionCreators;
const currentQuests = tmpResult.fetchCurrentQuests();
const tmp6 = importDefault;
const tmpResult2 = PlatformUtils;
if (tmpResult2.isMac()) {
const tmp6Result = tmp6(9786);
const state = tmp6Result.getState();
}
}
}
}
const prototype = QuestFetchManager.prototype;
const questFetchManager = new QuestFetchManager();
const result = size.fileFinishedImporting("modules/quests/managers/QuestFetchManager.tsx");
export default questFetchManager;