// Metro module 12773 (f12774). import SelfPresenceStore from "../../stores/SelfPresenceStore"; import { StatusTypes } from "../../Constants"; import Durations from "../../utils/Durations"; import { StatusExpiresAtSetting } from "../user_settings/UserSettings"; import Dispatcher from "../../Dispatcher"; import Module589 from "../../_bundle/Module589"; let $mk90389 = function() { return (a0) => a0 < Date.now() - 3 * Durations.Millis.DAY; }; let sessionStartsWithDND = []; let c8804_6 = false; class HabitualDNDStore extends Module589.PersistedStore { static displayName = "HabitualDNDStore"; static persistKey = "habitualDND"; initialize(a0) { this.waitFor(SelfPresenceStore); if (a0 != null && Array.isArray(a0.sessionStartsWithDND)) { sessionStartsWithDND = a0.sessionStartsWithDND; } } showNagBar() { return c8804_6; } getState() { return { sessionStartsWithDND }; } getTemp() { return { x: StatusExpiresAtSetting.getSetting() }; } } const habitualDNDStore = new HabitualDNDStore(Dispatcher, { POST_CONNECTION_OPEN: function handleConnect() { L7: { if (SelfPresenceStore.getStatus() === StatusTypes.DND && StatusExpiresAtSetting.getSetting() === "0") { sessionStartsWithDND.push(Date.now()); const r27 = sessionStartsWithDND.filter((item) => item > Date.now() - 5 * Durations.Millis.DAY); sessionStartsWithDND = r27; if (!(r27.length >= 4 && sessionStartsWithDND.some($mk90389()))) { break L7; } setTimeout(() => { Dispatcher.dispatch({ type: "HABITUAL_DND_CLEAR" }); }, 15 * Durations.Millis.SECOND); } else { sessionStartsWithDND = []; } } }, HABITUAL_DND_CLEAR: function handleDNDClear() { c8804_6 = !!(sessionStartsWithDND.length >= 4 && sessionStartsWithDND.some($mk90389())); sessionStartsWithDND = []; } }); export default habitualDNDStore;