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

102 lines
2.4 KiB
TypeScript

// Metro module 13898 (f13899).
import Module589 from "../../_bundle/Module589";
import Dispatcher from "../../Dispatcher";
let c9695_3;
const time = null;
const time2 = null;
let warning = null;
class ParentalConsentWarningStore extends Module589.PersistedStore {
static displayName = "ParentalConsentWarningStore";
static persistKey = "ParentalConsentWarningStore";
static migrations = [(a0) => {
let lastWarningFetchDayStart = a0?.lastWarningFetchDayStart;
if (lastWarningFetchDayStart == null) {
lastWarningFetchDayStart = null;
}
let lastModalShownDayStart = a0?.lastModalShownDayStart;
if (lastModalShownDayStart == null) {
lastModalShownDayStart = null;
}
let warning2 = a0?.warning;
if (warning2 == null) {
warning2 = null;
}
return {
lastWarningFetchDayStart,
lastModalShownDayStart,
warning: warning2
};
}];
initialize(a0) {
let r3 = a0?.lastWarningFetchDayStart;
if (r3 == null) {
r3 = null;
}
time = r3;
let r7 = a0?.lastModalShownDayStart;
if (r7 == null) {
r7 = null;
}
time2 = r7;
let r9 = a0?.warning;
if (r9 == null) {
r9 = null;
}
warning = r9;
}
getWarning() {
return warning;
}
shouldFetchToday() {
let r11 = time == null;
if (!r11) {
const date = new Date();
date.setHours(0, 0, 0, 0);
r11 = time !== date.getTime();
}
return r11;
}
hasShownModalToday() {
let r11 = time2 != null;
if (r11) {
const date = new Date();
date.setHours(0, 0, 0, 0);
r11 = time2 === date.getTime();
}
return r11;
}
getState() {
return {
lastWarningFetchDayStart: time,
lastModalShownDayStart: time2,
warning
};
}
}
c9695_3 = new ParentalConsentWarningStore(Dispatcher, {
PARENTAL_CONSENT_WARNING_FETCH_SUCCESS: function handleFetchSuccess(a0) {
warning = a0.warning;
const date = new Date();
date.setHours(0, 0, 0, 0);
time = date.getTime();
c9695_3.persist();
},
PARENTAL_CONSENT_WARNING_MODAL_SHOWN: function handleModalShown() {
const date = new Date();
date.setHours(0, 0, 0, 0);
time2 = date.getTime();
c9695_3.persist();
},
PARENTAL_CONSENT_WARNING_CLEARED: function handleWarningCleared() {
warning = null;
c9695_3.persist();
},
LOGOUT: function handleLogout() {
time = null;
time2 = null;
warning = null;
c9695_3.persist();
}
});
export default c9695_3;