65 lines
2.3 KiB
TypeScript
65 lines
2.3 KiB
TypeScript
// Metro module 16207 (f16208).
|
|
import ApexExperimentStore from "../experiments/apex/ApexExperimentStore";
|
|
import SoundpackStore from "../soundpacks/SoundpackStore";
|
|
import { Soundpacks } from "../soundpacks/Constants";
|
|
import AutomaticLifecycleManager from "../../lib/AutomaticLifecycleManager";
|
|
import HolidayEventsConfig from "./HolidayEventsConfig";
|
|
import HolidayEventsUtils from "./HolidayEventsUtils";
|
|
import { setSoundpack } from "../soundpacks/SoundpackActions";
|
|
import { setIncomingRingtone } from "./setIncomingRingtone.android";
|
|
import getSoundsForPack from "../soundpacks/getSoundsForPack";
|
|
class HolidayEventsManager extends AutomaticLifecycleManager {
|
|
stores = new Map().set(ApexExperimentStore, () => this.handleExperimentUpdated());
|
|
actions = {
|
|
NOTIFICATIONS_SET_DISABLED_SOUNDS: this.updateRingtone
|
|
};
|
|
handleExperimentUpdated = () => {
|
|
if (!HolidayEventsConfig.isDesktopOnly) {
|
|
this.updateSoundpack();
|
|
this.updateRingtone();
|
|
}
|
|
};
|
|
updateSoundpack() {
|
|
let r21;
|
|
const soundpack = SoundpackStore.getSoundpack();
|
|
const lastSoundpackExperimentId = SoundpackStore.getLastSoundpackExperimentId();
|
|
const r6 = HolidayEventsConfig.experiment == null ? void 0 : HolidayEventsConfig.experiment.definition.name;
|
|
L14: {
|
|
L6: {
|
|
r21 = HolidayEventsUtils.isEligible();
|
|
if (!r21) {
|
|
if (lastSoundpackExperimentId == null && soundpack === Soundpacks.CLASSIC) {
|
|
break L6;
|
|
}
|
|
setSoundpack(Soundpacks.CLASSIC, null);
|
|
break L14;
|
|
}
|
|
}
|
|
if (r21) {
|
|
r21 = HolidayEventsConfig.soundpack != null;
|
|
}
|
|
if (r21) {
|
|
r21 = r6 !== lastSoundpackExperimentId;
|
|
}
|
|
if (r21) {
|
|
r21 = soundpack !== HolidayEventsConfig.soundpack;
|
|
}
|
|
if (r21) {
|
|
setSoundpack(HolidayEventsConfig.soundpack, r6);
|
|
}
|
|
}
|
|
}
|
|
updateRingtone() {
|
|
if (HolidayEventsUtils.isEligible()) {
|
|
const soundsForPack = getSoundsForPack(SoundpackStore.getSoundpack());
|
|
if (soundsForPack.call_ringing != null) {
|
|
setIncomingRingtone("call_ringing", soundsForPack.call_ringing + ".mp3");
|
|
}
|
|
} else {
|
|
setIncomingRingtone("call_ringing", "call_ringing.mp3");
|
|
}
|
|
}
|
|
}
|
|
const holidayEventsManager = new HolidayEventsManager();
|
|
export default holidayEventsManager;
|