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

969 lines
29 KiB
TypeScript

// Metro module 5985 (f5986).
import _slicedToArray from "../../_bundle/_slicedToArray";
import ConsoleQuestUIStore from "./ConsoleQuestUIStore";
import VideoQuestUIStore from "./VideoQuestUIStore";
import { QuestsExperimentLocations } from "./QuestConstants";
import Durations from "../../utils/Durations";
import { isNil } from "../../_bundle/Module12";
import { FirstPartyQuestTaskTypesSets } from "../../_bundle/Module5040";
import { QuestRewardTypes } from "../../_bundle/Module5990";
import SentryUtils_native from "../../utils/SentryUtils.native";
import * as _QuestDataUtils from "./utils/QuestDataUtils";
import { findNextUpcomingExpirationEpochMs } from "./utils/QuestDataUtils";
import { QuestContent } from "./QuestTypes";
import { getQuestLogger } from "./lib/getQuestLogger";
import { questWithUserStatusFromServer, questUserStatusFromServer } from "./utils/QuestServerUtils";
import NewAdRequestBehaviorExperiment from "./experiments/NewAdRequestBehaviorExperiment";
import { resolveResponseTtl } from "../ads/utils/AdDecisionUtils";
import Backoff from "../../_bundle/Backoff";
import Module589 from "../../_bundle/Module589";
import Dispatcher from "../../Dispatcher";
let c3780_3, c3780_4, c3780_5, c3780_6, c3780_7, c3780_8, c3780_9, c3780_10, c3780_11, c3780_12, c3780_13, c3780_14, c3780_15, c3780_16, c3780_17, c3780_18, c3780_19, c3780_20, c3780_21, c3780_22, c3780_23, c3780_24, c3780_25, c3780_26, c3780_27, c3780_28, c3780_29, c3780_30, c3780_31, c3780_32, c3780_37, c3780_38, c3780_39, c3780_40, c3780_41, c3780_42, questHomeHero, c3780_44, updateQuestData, _runExpirationCheck, c3780_48, $mk77561 = function() {
return function syncQuestProgressingOnDesktop(a0, a1) {
if (a1.userStatus != null) {
const r7 = Object;
let r25 = a1.userStatus?.progress;
if (r25 == null) {
r25 = {};
}
for (const item of r7.values(r25)) {
if (!isNil(item) && FirstPartyQuestTaskTypesSets.DESKTOP.has(item.eventName)) {
if (item.heartbeat?.lastBeatAt != null) {
c3780_19.add(a0);
} else if (item.heartbeat?.lastBeatAt == null) {
c3780_19.delete(a0);
}
}
}
}
};
};
const initializeState = function initializeState() {
c3780_3 = false;
c3780_4 = false;
c3780_5 = new Map();
c3780_6 = false;
c3780_7 = false;
c3780_8 = new Map();
c3780_9 = new Map();
c3780_10 = new Map();
c3780_11 = new Map();
c3780_12 = 0;
c3780_13 = 0;
c3780_14 = new Set();
c3780_15 = new Set();
c3780_16 = new Set();
c3780_17 = new Set();
c3780_18 = new Set();
c3780_37 = new Map();
c3780_20 = new Map();
c3780_21 = new Map();
c3780_22 = new Map();
c3780_23 = new Map();
c3780_24 = new Map();
c3780_19 = new Set();
c3780_25 = new Map();
c3780_26 = new Map();
c3780_27 = new Map();
if (c3780_38 != null) {
clearTimeout(c3780_38);
c3780_38 = null;
}
c3780_28 = null;
c3780_32 = new Map();
c3780_44 = new Map();
c3780_29 = new Map();
c3780_30 = new Map();
c3780_31 = new Map();
c3780_41 = null;
questHomeHero = null;
};
updateQuestData = function updateQuestData(a0, a1) {
const map = new Map(c3780_9);
c3780_9 = map;
const r15 = map.get(a0);
if (r15 != null) {
const r9 = {
...r15,
...a1
};
$mk77561()(a0, a1);
c3780_9.set(a0, r9);
if (c3780_32.has(a0)) {
const r31 = c3780_32.get(a0);
if (r31 != null) {
const map2 = new Map(c3780_32);
c3780_32 = map2;
map2.set(a0, {
...r31,
...a1
});
}
}
}
};
_runExpirationCheck = function _runExpirationCheck() {
let c15344_0 = false;
const map = new Map(c3780_27);
let c15344_1 = map;
c3780_9.forEach((item, index) => {
if (c15344_1.get(index) !== true) {
if (_QuestDataUtils.isQuestExpired(item)) {
c15344_1.set(index, true);
c15344_0 = true;
} else if (!c15344_1.has(index)) {
c15344_1.set(index, false);
}
}
});
if (c15344_0) {
c3780_27 = map;
c3780_48.emitChange();
}
const r34 = findNextUpcomingExpirationEpochMs(Array.from(c3780_9.values()));
if (r34 != null) {
const r42 = Math.max(5000, r34 - Date.now() + 2000);
if (!(r42 > 864000000)) {
c3780_38 = setTimeout(() => {
_runExpirationCheck();
}, r42);
}
}
};
c3780_37 = new Map();
c3780_38 = null;
c3780_39 = 30 * Durations.Millis.SECOND;
c3780_40 = 10 * Durations.Millis.MINUTE;
c3780_41 = null;
c3780_42 = false;
questHomeHero = null;
c3780_44 = new Map();
initializeState();
class QuestStore extends Module589.Store {
static displayName = "QuestStore";
get quests() {
return c3780_9;
}
get excludedQuests() {
return c3780_10;
}
get claimedQuests() {
return c3780_11;
}
get isFetchingCurrentQuests() {
return c3780_3;
}
get isFetchingClaimedQuests() {
return c3780_6;
}
isFetchingQuestPreview(a0) {
return c3780_18.has(a0);
}
get lastFetchedCurrentQuests() {
return c3780_12;
}
get lastFetchedQuestToDeliver() {
return c3780_13;
}
get isFetchingQuestToDeliver() {
return c3780_4;
}
isFetchingQuestToDeliverByPlacement(a0) {
let r6 = c3780_5 == null ? void 0 : c3780_5.get(a0);
if (r6 == null) {
r6 = false;
}
return r6;
}
canRefreshAd(a0) {
const r3 = c3780_31 == null ? void 0 : c3780_31.get(a0);
return r3 == null || Date.now() >= r3;
}
getQuestPreviewOverride(a0) {
const r5 = c3780_23.get(a0);
return r5 == null ? void 0 : c3780_9.get(r5);
}
get questToDeliverForPlacement() {
return c3780_25;
}
get questEnrollmentBlockedUntil() {
return c3780_28;
}
get questAdDecisionByPlacement() {
return c3780_29;
}
getFetchQuestPreviewError(a0) {
return c3780_44.get(a0);
}
isEnrolling(a0) {
return c3780_14.has(a0);
}
isClaimingReward(a0) {
return c3780_15.has(a0);
}
isFetchingRewardCode(a0) {
return c3780_16.has(a0);
}
isDismissingContent(a0) {
return c3780_17.has(a0);
}
getRewardCode(a0) {
return c3780_20.get(a0);
}
getRewards(a0) {
return c3780_21.get(a0);
}
getStreamHeartbeatFailure(a0) {
return c3780_22.get(a0);
}
getQuest(a0) {
return c3780_9.get(a0);
}
getQuestConfig(a0) {
return this.getQuest(a0)?.config;
}
isProgressingOnDesktop(a0) {
return c3780_19.has(a0);
}
selectedTaskPlatform(a0) {
let r5 = c3780_24.get(a0);
if (r5 == null) {
r5 = null;
}
return r5;
}
getOptimisticProgress(a0, a1) {
const r4 = c3780_37.get(a0);
return r4 == null ? void 0 : r4.get(a1);
}
getExpiredQuestsMap() {
return c3780_27;
}
isQuestExpired(a0) {
let r5 = c3780_27.get(a0);
if (r5 == null) {
r5 = false;
}
return r5;
}
getQuestLoadedViaPreview(a0) {
return c3780_32.get(a0);
}
isFetchingQuestHomeHero() {
return c3780_42;
}
getQuestHomeHero() {
return questHomeHero;
}
getLastFetchedQuestHomeHero() {
return c3780_41;
}
get isFetchingEarnedQuestToDeliver() {
return c3780_7;
}
isFetchingEarnedQuestToDeliverByPlacement(a0) {
let r6 = c3780_8 == null ? void 0 : c3780_8.get(a0);
if (r6 == null) {
r6 = false;
}
return r6;
}
get earnedQuestForPlacement() {
return c3780_26;
}
}
c3780_48 = new QuestStore(Dispatcher, {
LOGOUT: function handleLogout() {
if (c3780_38 != null) {
clearTimeout(c3780_38);
c3780_38 = null;
}
initializeState();
VideoQuestUIStore.getState().clearState();
ConsoleQuestUIStore.getState().reset();
},
QUESTS_FETCH_CURRENT_QUESTS_BEGIN: function handleFetchCurrentQuestsBegin() {
c3780_3 = true;
},
QUESTS_FETCH_CURRENT_QUESTS_SUCCESS: function handleFetchCurrentQuestsSuccess({ quests: quests2, excludedQuests: excludedQuests2, questEnrollmentBlockedUntil: questEnrollmentBlockedUntil2 }) {
let r36;
let c15345_0;
c15345_0 = void 0;
const prevQuestIds = [...c3780_9.keys()];
const nextQuestIds = quests2.map((item) => item.id);
c15345_0 = nextQuestIds;
const removedIds = prevQuestIds.filter((prevQuestId) => !c15345_0.includes(prevQuestId));
if (removedIds.length > 0) {
SentryUtils_native.addBreadcrumb({
category: "quests.store",
message: `handleFetchCurrentQuestsSuccess: ${removedIds.length} quest(s) removed during rebuild`,
data: {
prevQuestIds,
nextQuestIds,
removedIds
}
});
}
c3780_12 = Date.now();
c3780_3 = false;
c3780_9 = new Map();
const map = new Map();
let r72 = quests2[Symbol.iterator]();
const next = r72.next;
while (true) {
const r78 = r72 === void 0 ? void 0 : (r36 = next.call(r72)).done ? r72 = void 0 : r36.value;
if (r72 === void 0) {
c3780_10 = new Map();
for (const item of excludedQuests2) {
c3780_10.set(item.id, item);
}
const r140 = c3780_32 == null ? void 0 : c3780_32.values();
for (const item2 of r140) {
if (!c3780_9.has(item2.id)) {
const r153 = c3780_9;
r153.set(item2.id, item2);
map.set(item2.id, _QuestDataUtils.isQuestExpired(item2));
}
}
c3780_27 = map;
(function _startExpirationChecker() {
if (c3780_38 != null) {
clearTimeout(c3780_38);
c3780_38 = null;
}
_runExpirationCheck();
})();
c3780_28 = questEnrollmentBlockedUntil2 != null ? new Date(questEnrollmentBlockedUntil2) : null;
return void 0;
} else {
try {
c3780_9.set(r78.id, r78);
map.set(r78.id, _QuestDataUtils.isQuestExpired(r78));
if (r78.targetedContent.includes(QuestContent.QUEST_BAR)) {
const questLogger = getQuestLogger({
location: QuestsExperimentLocations.QUESTS_STORE
});
questLogger.log(`Delivered ${r78.config.messages.questName} (${r78.id})`);
}
} catch (r120) {
if (r72 !== void 0 && typeof r72.return === "function") {
try {
r72.return();
} catch {}
}
throw r120;
}
}
}
},
QUESTS_FETCH_CURRENT_QUESTS_FAILURE: function handleFetchCurrentQuestsFailure() {
c3780_12 = 0;
c3780_3 = false;
},
QUESTS_FETCH_CLAIMED_QUESTS_BEGIN: function handleFetchClaimedQuestsBegin() {
c3780_6 = true;
},
QUESTS_FETCH_CLAIMED_QUESTS_SUCCESS: function handleFetchClaimedQuestsSuccess({ quests: quests2 }) {
c3780_6 = false;
c3780_11 = new Map();
for (const item of quests2) {
c3780_11.set(item.id, item);
}
},
QUESTS_FETCH_CLAIMED_QUESTS_FAILURE: function handleFetchClaimedQuestsFailure() {
c3780_6 = false;
},
QUESTS_FETCH_QUEST_TO_DELIVER_BEGIN: function handleFetchQuestToDeliverBegin({ placement }) {
c3780_4 = true;
const map = new Map(c3780_5);
c3780_5 = map;
map.set(placement, true);
},
QUESTS_FETCH_QUEST_TO_DELIVER_SUCCESS: function handleFetchQuestToDeliverSuccess({ quest, placement, adDecisionData, adContext, responseTtlSeconds, metadataSealed, trafficMetadataSealed, fetchedAt }) {
c3780_13 = Date.now();
c3780_4 = false;
const map = new Map(c3780_5);
c3780_5 = map;
map.set(placement, false);
const r29 = c3780_30.get(placement);
if (r29 != null) {
r29.succeed();
}
c3780_31.delete(placement);
if (NewAdRequestBehaviorExperiment.getConfig({
location: "handleFetchQuestToDeliverSuccess"
}).enableNewRequestBehavior) {
let questId = quest?.id;
if (questId == null) {
questId = null;
}
let adCreativeId = quest?.id;
if (adCreativeId == null) {
adCreativeId = null;
}
const r51 = {
questId,
adCreativeId,
fetchedAt,
ttlMillis: resolveResponseTtl(responseTtlSeconds),
adDecisionData,
adContext,
metadataSealed,
trafficMetadataSealed
};
const map2 = new Map(c3780_29);
c3780_29 = map2;
map2.set(placement, r51);
} else if (quest == null) {
c3780_25.delete(placement);
} else {
c3780_25.set(placement, {
quest,
adDecisionData,
adContext,
metadataSealed,
trafficMetadataSealed
});
}
},
QUESTS_FETCH_QUEST_TO_DELIVER_FAILURE: function handleFetchQuestToDeliverFailure({ placement }) {
c3780_25.delete(placement);
c3780_13 = Date.now();
c3780_4 = false;
const map = new Map(c3780_5);
c3780_5 = map;
map.set(placement, false);
let r24 = c3780_30.get(placement);
if (r24 == null) {
const backoff = new Backoff(c3780_39, c3780_40);
c3780_30.set(placement, backoff);
r24 = backoff;
}
c3780_31.set(placement, Date.now() + r24.fail());
},
QUESTS_CLEAR_EXPIRED_QUEST_TO_DELIVER: function handleClearExpiredQuestToDeliver({ placement, responseTtlSeconds, fetchedAt }) {
if (NewAdRequestBehaviorExperiment.getConfig({
location: "handleClearExpiredQuestToDeliver"
}).enableNewRequestBehavior) {
c3780_4 = false;
const map = new Map(c3780_5);
c3780_5 = map;
map.set(placement, false);
const r25 = {
questId: null,
adCreativeId: null,
fetchedAt,
ttlMillis: resolveResponseTtl(responseTtlSeconds)
};
const map2 = new Map(c3780_29);
c3780_29 = map2;
map2.set(placement, r25);
return void 0;
}
return false;
},
QUESTS_FETCH_EARNED_QUEST_TO_DELIVER_BEGIN: function handleFetchEarnedQuestToDeliverBegin({ content }) {
c3780_7 = true;
const map = new Map(c3780_8);
c3780_8 = map;
map.set(content, true);
},
QUESTS_FETCH_EARNED_QUEST_TO_DELIVER_SUCCESS: function handleFetchEarnedQuestToDeliverSuccess({ serverQuests, content, fetchedAt, responseTtlSeconds }) {
c3780_7 = false;
const map = new Map(c3780_8);
c3780_8 = map;
map.set(content, false);
const ttlMillis = resolveResponseTtl(responseTtlSeconds);
const map2 = new Map(c3780_26.get(content)?.earnedDecisionByQuestId);
for (const item of serverQuests) {
const [r20, r65] = item;
map2.set(r20, {
fetchedAt,
ttlMillis,
shouldDeliver: r65 != null
});
if (r65 != null) {
const r72 = c3780_9.get(r20);
const r81 = questWithUserStatusFromServer(r65);
if (r72 != null) {
updateQuestData(r20, r81);
} else {
const map3 = new Map(c3780_9);
c3780_9 = map3;
map3.set(r20, r81);
const map4 = new Map(c3780_27);
c3780_27 = map4;
map4.set(r20, _QuestDataUtils.isQuestExpired(r81));
}
}
}
c3780_26.set(content, {
earnedDecisionByQuestId: map2
});
},
QUESTS_FETCH_EARNED_QUEST_TO_DELIVER_FAILURE: function handleFetchEarnedQuestToDeliverFailure({ content }) {
c3780_7 = false;
const map = new Map(c3780_8);
c3780_8 = map;
map.set(content, false);
},
QUESTS_FETCH_PREVIEW_BEGIN: function handleFetchQuestPreviewBegin({ questId }) {
const set = new Set(c3780_18);
c3780_18 = set;
set.add(questId);
const map = new Map(c3780_44);
c3780_44 = map;
map.delete(questId);
},
QUESTS_FETCH_PREVIEW_SUCCESS: function handleFetchQuestPreviewSuccess({ questId, quest }) {
const set = new Set(c3780_18);
c3780_18 = set;
set.delete(questId);
const map = new Map(c3780_32);
c3780_32 = map;
map.set(questId, quest);
const map2 = new Map(c3780_9);
c3780_9 = map2;
map2.set(questId, quest);
const map3 = new Map(c3780_44);
c3780_44 = map3;
map3.delete(questId);
},
QUESTS_FETCH_PREVIEW_FAILURE: function handleFetchQuestPreviewFailure({ questId, error }) {
const set = new Set(c3780_18);
c3780_18 = set;
set.delete(questId);
const map = new Map(c3780_44);
c3780_44 = map;
map.set(questId, error);
},
QUESTS_SEND_HEARTBEAT_SUCCESS: function handleSendHeartbeatSuccess({ questId, streamKey, userStatus }) {
c3780_19.add(questId);
const r10 = {
userStatus
};
const map = new Map(c3780_9);
c3780_9 = map;
const r22 = map.get(questId);
if (r22 != null) {
const r23 = {
...r22,
...r10
};
$mk77561()(questId, r10);
c3780_9.set(questId, r23);
if (c3780_32.has(questId)) {
const r11 = c3780_32.get(questId);
if (r11 != null) {
const map2 = new Map(c3780_32);
c3780_32 = map2;
map2.set(questId, {
...r11,
...r10
});
}
}
}
if (streamKey != null && c3780_22.get(streamKey) != null) {
const map3 = new Map(c3780_22);
c3780_22 = map3;
map3.delete(streamKey);
}
},
QUESTS_SEND_HEARTBEAT_FAILURE: function handleSendHeartbeatFailure({ questId, streamKey }) {
if (streamKey != null && c3780_22.get(streamKey) == null) {
const map = new Map(c3780_22);
c3780_22 = map;
map.set(streamKey, {
questId,
streamKey,
firstFailedAt: Date.now()
});
}
},
QUESTS_ENROLL_BEGIN: function handleEnrollBegin({ questId }) {
const set = new Set(c3780_14);
set.add(questId);
c3780_14 = set;
},
QUESTS_ENROLL_SUCCESS: function handleEnrollSuccess({ enrolledQuestUserStatus }) {
const questId = enrolledQuestUserStatus.questId;
const r10 = {
userStatus: enrolledQuestUserStatus
};
const map = new Map(c3780_9);
c3780_9 = map;
const r18 = map.get(questId);
if (r18 != null) {
const r19 = {
...r18,
...r10
};
$mk77561()(questId, r10);
c3780_9.set(questId, r19);
if (c3780_32.has(questId)) {
const r11 = c3780_32.get(questId);
if (r11 != null) {
const map2 = new Map(c3780_32);
c3780_32 = map2;
map2.set(questId, {
...r11,
...r10
});
}
}
}
const questId2 = enrolledQuestUserStatus.questId;
const set = new Set(c3780_14);
set.delete(questId2);
c3780_14 = set;
},
QUESTS_ENROLL_FAILURE: function handleEnrollFailure({ questId }) {
const set = new Set(c3780_14);
set.delete(questId);
c3780_14 = set;
},
QUESTS_FETCH_REWARD_CODE_BEGIN: function handleFetchRewardCodeBegin({ questId }) {
const set = new Set(c3780_16);
set.add(questId);
c3780_16 = set;
},
QUESTS_FETCH_REWARD_CODE_SUCCESS: function handleFetchRewardCodeSuccess({ questId, rewardCode }) {
const set = new Set(c3780_16);
set.delete(questId);
c3780_16 = set;
const map = new Map(c3780_20);
map.set(questId, rewardCode);
c3780_20 = map;
const userStatus = c3780_9.get(questId)?.userStatus;
if (userStatus != null && userStatus.claimedAt == null) {
const r37 = {
userStatus: {
...userStatus,
claimedAt: rewardCode.claimedAt
}
};
const map2 = new Map(c3780_9);
c3780_9 = map2;
const r45 = map2.get(questId);
if (r45 != null) {
const r46 = {
...r45,
...r37
};
$mk77561()(questId, r37);
c3780_9.set(questId, r46);
if (c3780_32.has(questId)) {
const r63 = c3780_32.get(questId);
if (r63 != null) {
const map3 = new Map(c3780_32);
c3780_32 = map3;
map3.set(questId, {
...r63,
...r37
});
}
}
}
}
},
QUESTS_FETCH_REWARD_CODE_FAILURE: function handleFetchRewardCodeFailure({ questId }) {
const set = new Set(c3780_16);
set.delete(questId);
c3780_16 = set;
},
QUESTS_CLAIM_REWARD_BEGIN: function handleClaimRewardBegin({ questId }) {
const set = new Set(c3780_15);
set.add(questId);
c3780_15 = set;
},
QUESTS_CLAIM_REWARD_SUCCESS: function handleClaimRewardSuccess({ questId, entitlements }) {
const set = new Set(c3780_15);
set.delete(questId);
c3780_15 = set;
const map = new Map(c3780_21);
map.set(questId, entitlements.items);
c3780_21 = map;
const userStatus = c3780_9.get(questId)?.userStatus;
if (userStatus != null && userStatus.claimedAt == null) {
const tenantMetadata = entitlements.items[0].tenantMetadata;
const r38 = tenantMetadata == null ? void 0 : tenantMetadata.questRewards.reward;
const r46 = r38?.tag === QuestRewardTypes.REWARD_CODE ? r38.rewardCode : null;
if (r46 != null) {
const map2 = new Map(c3780_20);
map2.set(questId, r46);
c3780_20 = map2;
}
let claimedTier = r46?.tier;
if (claimedTier == null) {
claimedTier = null;
}
const r61 = {
userStatus: {
...userStatus,
claimedAt: entitlements.claimedAt,
claimedTier
}
};
const map3 = new Map(c3780_9);
c3780_9 = map3;
const r69 = map3.get(questId);
if (r69 != null) {
const r70 = {
...r69,
...r61
};
$mk77561()(questId, r61);
c3780_9.set(questId, r70);
if (c3780_32.has(questId)) {
const r87 = c3780_32.get(questId);
if (r87 != null) {
const map4 = new Map(c3780_32);
c3780_32 = map4;
map4.set(questId, {
...r87,
...r61
});
}
}
}
}
},
QUESTS_CLAIM_REWARD_FAILURE: function handleClaimRewardFailure({ questId }) {
const set = new Set(c3780_15);
set.delete(questId);
c3780_15 = set;
},
QUESTS_DISMISS_CONTENT_BEGIN: function handleDismissContentBegin({ questId }) {
const set = new Set(c3780_17);
set.add(questId);
c3780_17 = set;
const map = new Map(c3780_23);
let r34 = false;
for (const item of map) {
const r40 = _slicedToArray(item, 2);
const r41 = r40[0];
if (r40[1] === questId) {
map.delete(r41);
r34 = true;
}
}
if (r34) {
c3780_23 = map;
}
},
QUESTS_DISMISS_CONTENT_SUCCESS: function handleDismissContentSuccess({ dismissedQuestUserStatus }) {
const questId = dismissedQuestUserStatus.questId;
const r10 = {
userStatus: dismissedQuestUserStatus
};
const map = new Map(c3780_9);
c3780_9 = map;
const r18 = map.get(questId);
if (r18 != null) {
const r19 = {
...r18,
...r10
};
$mk77561()(questId, r10);
c3780_9.set(questId, r19);
if (c3780_32.has(questId)) {
const r11 = c3780_32.get(questId);
if (r11 != null) {
const map2 = new Map(c3780_32);
c3780_32 = map2;
map2.set(questId, {
...r11,
...r10
});
}
}
}
const questId2 = dismissedQuestUserStatus.questId;
const set = new Set(c3780_17);
set.delete(questId2);
c3780_17 = set;
},
QUESTS_DISMISS_CONTENT_FAILURE: function handleDismissContentFailure({ questId }) {
const set = new Set(c3780_17);
set.delete(questId);
c3780_17 = set;
},
QUESTS_USER_STATUS_UPDATE: function handleQuestUserStatusUpdate({ user_status }) {
const questLogger = getQuestLogger({
location: QuestsExperimentLocations.QUESTS_STORE
});
questLogger.log(`Received user status update for ${user_status.quest_id}`, user_status);
const userStatus = questUserStatusFromServer(user_status);
const quest_id = user_status.quest_id;
const r15 = {
userStatus
};
const map = new Map(c3780_9);
c3780_9 = map;
const r39 = map.get(quest_id);
if (r39 != null) {
const r40 = {
...r39,
...r15
};
$mk77561()(quest_id, r15);
c3780_9.set(quest_id, r40);
if (c3780_32.has(quest_id)) {
const r16 = c3780_32.get(quest_id);
if (r16 != null) {
const map2 = new Map(c3780_32);
c3780_32 = map2;
map2.set(quest_id, {
...r16,
...r15
});
}
}
}
const r73 = c3780_9.get(user_status.quest_id);
if (r73 != null) {
const isQuestExpired2 = _QuestDataUtils.isQuestExpired(r73);
if (c3780_27.get(user_status.quest_id) !== isQuestExpired2) {
c3780_27 = new Map(c3780_27).set(user_status.quest_id, isQuestExpired2);
}
}
if (Object.keys(userStatus.progress).length === 0 && c3780_37.has(userStatus.questId)) {
questLogger.log(`Removing optimistic progress for ${userStatus.questId}`);
c3780_37.delete(userStatus.questId);
}
},
STREAM_CLOSE: function handleStreamClose({ streamKey }) {
if (c3780_22.get(streamKey) != null) {
const map = new Map(c3780_22);
c3780_22 = map;
map.delete(streamKey);
}
},
QUESTS_DISMISS_PROGRESS_TRACKING_FAILURE_NOTICE: function handleDismissProgressTrackingFailureNotice({ streamKey }) {
if (c3780_22.get(streamKey) != null) {
const map = new Map(c3780_22);
c3780_22 = map;
map.delete(streamKey);
}
},
QUESTS_PREVIEW_UPDATE_SUCCESS: function handlePreviewUpdateSuccess({ previewQuestUserStatus }) {
const questId = previewQuestUserStatus.questId;
const r10 = {
userStatus: previewQuestUserStatus
};
const map = new Map(c3780_9);
c3780_9 = map;
const r18 = map.get(questId);
if (r18 != null) {
const r19 = {
...r18,
...r10
};
$mk77561()(questId, r10);
c3780_9.set(questId, r19);
if (c3780_32.has(questId)) {
const r11 = c3780_32.get(questId);
if (r11 != null) {
const map2 = new Map(c3780_32);
c3780_32 = map2;
map2.set(questId, {
...r11,
...r10
});
}
}
}
if (previewQuestUserStatus.claimedAt == null) {
const map3 = new Map(c3780_20);
c3780_20 = map3;
map3.delete(previewQuestUserStatus.questId);
}
if (previewQuestUserStatus.enrolledAt == null) {
const map4 = new Map(c3780_24);
c3780_24 = map4;
map4.delete(previewQuestUserStatus.questId);
VideoQuestUIStore.getState().resetQuest(previewQuestUserStatus.questId);
}
const r78 = c3780_9.get(previewQuestUserStatus.questId);
if (r78 != null) {
const isQuestExpired2 = _QuestDataUtils.isQuestExpired(r78);
if (c3780_27.get(previewQuestUserStatus.questId) !== isQuestExpired2) {
c3780_27 = new Map(c3780_27).set(previewQuestUserStatus.questId, isQuestExpired2);
}
}
},
QUESTS_PREVIEW_OVERRIDE: function handlePreviewOverride({ placement, questId }) {
const map = new Map(c3780_23);
if (map.get(placement) === questId) {
map.delete(placement);
} else {
map.set(placement, questId);
}
c3780_23 = map;
},
QUESTS_SELECT_TASK_PLATFORM: function handleSelectTaskPlatform({ questId, platform: platform2 }) {
c3780_24 = new Map(c3780_24);
if (platform2 == null) {
c3780_24.delete(questId);
} else {
c3780_24.set(questId, platform2);
}
},
QUESTS_UPDATE_OPTIMISTIC_PROGRESS: function handleUpdateOptimisticProgress({ questId, taskEventName, progress }) {
let r12 = c3780_37.get(questId);
if (r12 == null) {
r12 = new Map();
}
r12.set(taskEventName, progress);
c3780_37.set(questId, r12);
},
QUESTS_RESET_OPTIMISTIC_PROGRESS: function handleResetOptimisticProgress({ questId }) {
if (c3780_37.has(questId)) {
c3780_37.delete(questId);
}
VideoQuestUIStore.getState().resetQuest(questId);
},
QUESTS_USER_COMPLETION_UPDATE: function handleUserCompletionUpdate({ quest_enrollment_blocked_until }) {
c3780_28 = quest_enrollment_blocked_until != null ? new Date(quest_enrollment_blocked_until) : null;
},
QUESTS_FETCH_QUEST_HOME_HERO_BEGIN: function handleFetchQuestHomeHeroBegin({ placement }) {
c3780_42 = true;
const map = new Map(c3780_5);
c3780_5 = map;
map.set(placement, true);
},
QUESTS_FETCH_QUEST_HOME_HERO_SUCCESS: function handleFetchQuestHomeHeroSuccess(a0) {
c3780_42 = false;
c3780_41 = Date.now();
const map = new Map(c3780_5);
c3780_5 = map;
map.set(a0.placement, false);
questHomeHero = a0.questHomeHero;
let adCreativeId = a0.questHomeHero?.id;
if (adCreativeId == null) {
adCreativeId = null;
}
const r24 = {
questId: null,
adCreativeId,
fetchedAt: a0.fetchedAt,
ttlMillis: resolveResponseTtl(a0.responseTtlSeconds),
adDecisionData: a0.adDecisionData,
adContext: a0.adContext,
metadataSealed: a0.metadataSealed,
trafficMetadataSealed: a0.trafficMetadataSealed
};
const map2 = new Map(c3780_29);
c3780_29 = map2;
map2.set(a0.placement, r24);
},
QUESTS_FETCH_QUEST_HOME_HERO_FAILURE: function handleFetchQuestHomeHeroFailure({ placement }) {
c3780_42 = false;
const map = new Map(c3780_5);
c3780_5 = map;
map.set(placement, false);
}
});
export default c3780_48;