116 lines
3.4 KiB
TypeScript
116 lines
3.4 KiB
TypeScript
// Metro module 14112 (f14113).
|
|
import _slicedToArray from "../../_bundle/_slicedToArray";
|
|
import QuestStore from "./QuestStore";
|
|
import { AdCreativeType } from "../../_bundle/Module6013";
|
|
import { isQuestExpired } from "./utils/QuestDataUtils";
|
|
import Module589 from "../../_bundle/Module589";
|
|
import Dispatcher from "../../Dispatcher";
|
|
let c9876_4, syncWithQuestStore;
|
|
const getOrCreateSet = function getOrCreateSet(adCreativeType) {
|
|
let r9 = c9876_4.get(adCreativeType);
|
|
if (r9 == null) {
|
|
const set = new Set();
|
|
c9876_4.set(adCreativeType, set);
|
|
r9 = set;
|
|
}
|
|
return r9;
|
|
};
|
|
syncWithQuestStore = function syncWithQuestStore() {
|
|
const orCreateSet = getOrCreateSet(AdCreativeType.QUEST);
|
|
let r41 = false;
|
|
for (const quest of QuestStore.quests) {
|
|
const [r48, r50] = quest;
|
|
let r52 = orCreateSet.has(r48) || isQuestExpired(r50);
|
|
if (!r52) {
|
|
const userStatus = r50.userStatus;
|
|
r52 = userStatus == null || userStatus.enrolledAt == null && userStatus.completedAt == null && userStatus.claimedAt == null && userStatus.dismissedQuestContent === 0;
|
|
}
|
|
if (!r52) {
|
|
orCreateSet.add(r48);
|
|
r41 = true;
|
|
}
|
|
}
|
|
if (QuestStore.lastFetchedCurrentQuests !== 0 && QuestStore.quests.size > 0) {
|
|
for (const item of orCreateSet) {
|
|
const r85 = QuestStore.quests.get(item);
|
|
if (r85 == null || isQuestExpired(r85)) {
|
|
orCreateSet.delete(item);
|
|
r41 = true;
|
|
}
|
|
}
|
|
}
|
|
const orCreateSet2 = getOrCreateSet(AdCreativeType.QUEST_HOME_HERO);
|
|
if (QuestStore.getLastFetchedQuestHomeHero() != null && orCreateSet2.size > 0) {
|
|
const questHomeHero = QuestStore.getQuestHomeHero();
|
|
for (const item2 of orCreateSet2) {
|
|
if (!(questHomeHero != null && item2 === questHomeHero.id)) {
|
|
orCreateSet2.delete(item2);
|
|
r41 = true;
|
|
}
|
|
}
|
|
}
|
|
return r41;
|
|
};
|
|
c9876_4 = new Map();
|
|
class AdContentSeenStore extends Module589.PersistedStore {
|
|
static displayName = "AdContentSeenStore";
|
|
static persistKey = "AdContentSeenStore";
|
|
initialize(a0) {
|
|
this.waitFor(QuestStore);
|
|
c9876_4 = new Map();
|
|
if (a0 != null) {
|
|
for (const item of Object.entries(a0.seenContentIds)) {
|
|
const [r42, r12] = item;
|
|
c9876_4.set(Number(r42), new Set(r12));
|
|
}
|
|
}
|
|
this.syncWith([QuestStore], syncWithQuestStore);
|
|
}
|
|
getState() {
|
|
const seenContentIds = {};
|
|
for (const item of c9876_4) {
|
|
const r27 = _slicedToArray(item, 2);
|
|
seenContentIds[r27[0]] = Array.from(r27[1]);
|
|
}
|
|
return {
|
|
seenContentIds
|
|
};
|
|
}
|
|
hasSeen(a0, a1) {
|
|
const r5 = c9876_4.get(a0);
|
|
let r7 = r5 == null ? void 0 : r5.has(a1);
|
|
if (r7 == null) {
|
|
r7 = false;
|
|
}
|
|
return r7;
|
|
}
|
|
}
|
|
const adContentSeenStore = new AdContentSeenStore(Dispatcher, {
|
|
AD_CONTENT_MARK_SEEN: function handleMarkSeen(a0) {
|
|
const orCreateSet = getOrCreateSet(a0.adCreativeType);
|
|
let r22 = false;
|
|
for (const contentId of a0.contentIds) {
|
|
if (!orCreateSet.has(contentId)) {
|
|
orCreateSet.add(contentId);
|
|
r22 = true;
|
|
}
|
|
}
|
|
return r22;
|
|
},
|
|
AD_CONTENT_MARK_UNSEEN: function handleMarkUnseen(a0) {
|
|
const r21 = c9876_4.get(a0.adCreativeType);
|
|
if (r21 == null) {
|
|
return false;
|
|
}
|
|
let r23 = false;
|
|
for (const contentId of a0.contentIds) {
|
|
if (r21.has(contentId)) {
|
|
r21.delete(contentId);
|
|
r23 = true;
|
|
}
|
|
}
|
|
return r23;
|
|
}
|
|
});
|
|
export default adContentSeenStore;
|