292 lines
14 KiB
TypeScript
292 lines
14 KiB
TypeScript
// Module ID: 13632
|
|
// Function ID: 13633
|
|
// Name: _initialize
|
|
// Dependencies: [17, 1212, 11700, 12896, 1218, 13633, 676, 4463, 709, 10695, 13636, 13637, 1208, 1236, 2578, 500, 13638, 698, 11699, 2]
|
|
|
|
// Module 13632 (_initialize)
|
|
import { NativeModules } from "expandEventProperties";
|
|
import initialize from "initialize";
|
|
import closure_5 from "initialize";
|
|
import closure_6 from "initialize";
|
|
import fetchFingerprint from "fetchFingerprint";
|
|
import { NOTIF_SETTINGS } from "items2";
|
|
import { AnalyticEvents } from "ME";
|
|
import "initialize";
|
|
|
|
class NotificationTokenManager extends tmp2 {
|
|
constructor() {
|
|
applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target);
|
|
closure_0 = applyArgumentsResult;
|
|
applyArgumentsResult._experimentUnsubscribe = null;
|
|
applyArgumentsResult.token = null;
|
|
applyArgumentsResult.hasRegisterEventListener = false;
|
|
applyArgumentsResult.hasTrackedDisabledAndroidNotifChannels = false;
|
|
applyArgumentsResult.postConnectionOpenTimeoutID = null;
|
|
applyArgumentsResult._handleExperimentsUpdated = function _handleExperimentsUpdated() {
|
|
return applyArgumentsResult.registerNotificationCategories();
|
|
};
|
|
applyArgumentsResult.handleToken = function handleToken(token) {
|
|
applyArgumentsResult.token = token;
|
|
if (applyArgumentsResult.canSync) {
|
|
applyArgumentsResult.registerToken();
|
|
}
|
|
};
|
|
applyArgumentsResult.registerToken = function registerToken() {
|
|
if (null != applyArgumentsResult.token) {
|
|
const DCDNotificationCategoryUtils = outer1_3.DCDNotificationCategoryUtils;
|
|
const intl = applyArgumentsResult(outer1_2[13]).intl;
|
|
const stringResult = intl.string(applyArgumentsResult(outer1_2[13]).t.TBA5Xg);
|
|
const intl2 = applyArgumentsResult(outer1_2[13]).intl;
|
|
const intl3 = applyArgumentsResult(outer1_2[13]).intl;
|
|
const result = DCDNotificationCategoryUtils.registerNotificationReplyCategories(stringResult, intl2.string(applyArgumentsResult(outer1_2[13]).t.TXNS7S), intl3.string(applyArgumentsResult(outer1_2[13]).t.TBA5Xg), () => {
|
|
|
|
});
|
|
if (outer1_3.PushNotificationAndroid) {
|
|
const PushNotificationAndroid = tmp5.PushNotificationAndroid;
|
|
const result1 = PushNotificationAndroid.onRegisterNotificationToken();
|
|
}
|
|
const stringResult1 = intl2.string(applyArgumentsResult(outer1_2[13]).t.TXNS7S);
|
|
tmp5 = outer1_3;
|
|
const tmp7 = outer1_2;
|
|
outer1_1(outer1_2[18]).registerDevice(tmp.token);
|
|
const obj = outer1_1(outer1_2[18]);
|
|
}
|
|
};
|
|
applyArgumentsResult.handleSyncNoMultiAccountOnLoginSuccess = function handleSyncNoMultiAccountOnLoginSuccess() {
|
|
const result = applyArgumentsResult.handleSyncNoMultiAccount();
|
|
};
|
|
applyArgumentsResult.handleSyncNoMultiAccountOnRegisterSuccess = function handleSyncNoMultiAccountOnRegisterSuccess() {
|
|
applyArgumentsResult.postConnectionOpenTimeoutID = setTimeout(applyArgumentsResult.handleSyncNoMultiAccountOnPostConnectionOpen, 5000);
|
|
};
|
|
applyArgumentsResult.handleSyncNoMultiAccountOnPostConnectionOpen = function handleSyncNoMultiAccountOnPostConnectionOpen() {
|
|
if (null != applyArgumentsResult.postConnectionOpenTimeoutID) {
|
|
const _clearTimeout = clearTimeout;
|
|
clearTimeout(obj.postConnectionOpenTimeoutID);
|
|
obj.postConnectionOpenTimeoutID = null;
|
|
const result = obj.handleSyncNoMultiAccount();
|
|
}
|
|
};
|
|
applyArgumentsResult.handleSyncNoMultiAccount = function handleSyncNoMultiAccount() {
|
|
let canSync = applyArgumentsResult.canSync;
|
|
if (canSync) {
|
|
canSync = !outer1_5.canUseMultiAccountNotifications;
|
|
}
|
|
if (canSync) {
|
|
applyArgumentsResult.registerToken();
|
|
}
|
|
};
|
|
applyArgumentsResult.handleSyncWithMultiAccount = function handleSyncWithMultiAccount() {
|
|
let canUseMultiAccountNotifications = applyArgumentsResult.canSync;
|
|
if (canUseMultiAccountNotifications) {
|
|
canUseMultiAccountNotifications = outer1_5.canUseMultiAccountNotifications;
|
|
}
|
|
if (canUseMultiAccountNotifications) {
|
|
applyArgumentsResult.registerToken();
|
|
}
|
|
};
|
|
return applyArgumentsResult;
|
|
}
|
|
}
|
|
const prototype = NotificationTokenManager.prototype;
|
|
prototype["_initialize"] = function _initialize() {
|
|
let self = this;
|
|
self = this;
|
|
if (null != this.token) {
|
|
self.handleToken(self.token);
|
|
}
|
|
initialize.addChangeListener(self._handleExperimentsUpdated);
|
|
self._experimentUnsubscribe = () => {
|
|
outer1_4.removeChangeListener(self._handleExperimentsUpdated);
|
|
};
|
|
const subscription = importDefault(709).subscribe("LOGIN_SUCCESS", self.handleSyncNoMultiAccountOnLoginSuccess);
|
|
const obj = importDefault(709);
|
|
const subscription1 = importDefault(709).subscribe("REGISTER_SUCCESS", self.handleSyncNoMultiAccountOnRegisterSuccess);
|
|
const obj2 = importDefault(709);
|
|
const subscription2 = importDefault(709).subscribe("POST_CONNECTION_OPEN", self.handleSyncNoMultiAccountOnPostConnectionOpen);
|
|
const obj3 = importDefault(709);
|
|
const subscription3 = importDefault(709).subscribe("POST_CONNECTION_OPEN", self.handleSyncWithMultiAccount);
|
|
const obj4 = importDefault(709);
|
|
const subscription4 = importDefault(709).subscribe("MULTI_ACCOUNT_REMOVE_ACCOUNT", self.handleSyncWithMultiAccount);
|
|
};
|
|
prototype["_terminate"] = function _terminate() {
|
|
const self = this;
|
|
importDefault(709).unsubscribe("LOGIN_SUCCESS", this.handleSyncNoMultiAccountOnLoginSuccess);
|
|
const obj = importDefault(709);
|
|
importDefault(709).unsubscribe("REGISTER_SUCCESS", this.handleSyncNoMultiAccountOnRegisterSuccess);
|
|
const obj2 = importDefault(709);
|
|
importDefault(709).unsubscribe("POST_CONNECTION_OPEN", this.handleSyncNoMultiAccountOnPostConnectionOpen);
|
|
const obj3 = importDefault(709);
|
|
importDefault(709).unsubscribe("POST_CONNECTION_OPEN", this.handleSyncWithMultiAccount);
|
|
const obj4 = importDefault(709);
|
|
importDefault(709).unsubscribe("MULTI_ACCOUNT_REMOVE_ACCOUNT", this.handleSyncWithMultiAccount);
|
|
if (null != this._experimentUnsubscribe) {
|
|
const result = self._experimentUnsubscribe();
|
|
self._experimentUnsubscribe = null;
|
|
}
|
|
};
|
|
prototype["registerListener"] = function registerListener() {
|
|
const self = this;
|
|
if (this.hasRegisterEventListener) {
|
|
const _Error = Error;
|
|
const error = new Error("Device token listener already registered.");
|
|
throw error;
|
|
} else {
|
|
self.hasRegisterEventListener = true;
|
|
const result = importDefault(10695).addRegisterEventListener(self.handleToken);
|
|
}
|
|
};
|
|
prototype["registerNotificationCategories"] = function registerNotificationCategories(arg0) {
|
|
const declarativeNotifSettingsExperiment = require(13636) /* apexExperiment */.declarativeNotifSettingsExperiment;
|
|
const config = declarativeNotifSettingsExperiment.getConfig({ location: "registerNotificationCategories" });
|
|
let flag = false;
|
|
try {
|
|
if (config.enabled) {
|
|
flag = importDefault(13637).registerDeclarativeNotificationCategories();
|
|
const obj = importDefault(13637);
|
|
}
|
|
const self = this;
|
|
if (flag) {
|
|
const result = self.trackDisabledAndroidNotifChannels();
|
|
} else {
|
|
try {
|
|
if (config.clearDeclarative) {
|
|
importDefault(1208).addBreadcrumb({ message: "Clearing declarative notification categories" });
|
|
const obj3 = importDefault(1208);
|
|
importDefault(13637).clear();
|
|
const obj4 = importDefault(13637);
|
|
}
|
|
const result1 = self.registerLegacyNotificationCategories();
|
|
} catch (tmp12) {
|
|
importDefault(result1[12]).captureException(tmp12);
|
|
const obj5 = importDefault(result1[12]);
|
|
}
|
|
}
|
|
} catch (tmp6) {
|
|
importDefault(tmp2[12]).captureException(tmp6);
|
|
const obj2 = importDefault(tmp2[12]);
|
|
}
|
|
};
|
|
prototype["registerLegacyNotificationCategories"] = function registerLegacyNotificationCategories() {
|
|
const registerNotificationCategories = NativeModules.DCDNotificationCategoryUtils.registerNotificationCategories;
|
|
const registerNotificationCategoriesAndGroups = NativeModules.DCDNotificationCategoryUtils.registerNotificationCategoriesAndGroups;
|
|
if (null != registerNotificationCategoriesAndGroups) {
|
|
let obj = { calls: null, mediaConnections: null, messages: null, directMessages: null, friendRequests: null, polls: null, social: null, stageLive: null, guildEventLive: null, guildHighlights: null, forumThreadCreated: null, systemMessages: null, other: null, default: null, reactions: null };
|
|
const intl = require(1236) /* getSystemLocale */.intl;
|
|
obj[0] = intl.string(importDefault(2578)["IUH/Oe"]);
|
|
const intl2 = require(1236) /* getSystemLocale */.intl;
|
|
obj[1] = intl2.string(importDefault(2578).VeBD1N);
|
|
const intl3 = require(1236) /* getSystemLocale */.intl;
|
|
obj[2] = intl3.string(importDefault(2578)["4qWUAO"]);
|
|
const intl4 = require(1236) /* getSystemLocale */.intl;
|
|
obj[3] = intl4.string(importDefault(2578).NGdNZb);
|
|
const intl5 = require(1236) /* getSystemLocale */.intl;
|
|
obj[4] = intl5.string(importDefault(2578).NxgGZA);
|
|
const intl6 = require(1236) /* getSystemLocale */.intl;
|
|
obj[5] = intl6.string(importDefault(2578).MOjygY);
|
|
const intl7 = require(1236) /* getSystemLocale */.intl;
|
|
obj[6] = intl7.string(importDefault(2578)["UzRF+8"]);
|
|
const intl8 = require(1236) /* getSystemLocale */.intl;
|
|
obj[7] = intl8.string(importDefault(2578)["4n388K"]);
|
|
const intl9 = require(1236) /* getSystemLocale */.intl;
|
|
obj[8] = intl9.string(importDefault(2578)["40TIqW"]);
|
|
const intl10 = require(1236) /* getSystemLocale */.intl;
|
|
obj[9] = intl10.string(require(1236) /* getSystemLocale */.t.p5jg9S);
|
|
const intl11 = require(1236) /* getSystemLocale */.intl;
|
|
obj[10] = intl11.string(importDefault(2578).HibKoy);
|
|
const intl12 = require(1236) /* getSystemLocale */.intl;
|
|
obj[11] = intl12.string(importDefault(2578).zJlwvV);
|
|
const intl13 = require(1236) /* getSystemLocale */.intl;
|
|
obj[12] = intl13.string(importDefault(2578).kIrLfg);
|
|
const intl14 = require(1236) /* getSystemLocale */.intl;
|
|
obj[13] = intl14.string(importDefault(2578)["T+79Eo"]);
|
|
const intl15 = require(1236) /* getSystemLocale */.intl;
|
|
obj[14] = intl15.string(require(1236) /* getSystemLocale */.t.gHp0C4);
|
|
obj = { realtime: null, social: null, server: null, other: null };
|
|
const intl16 = require(1236) /* getSystemLocale */.intl;
|
|
obj[0] = intl16.string(importDefault(2578).S5cB9e);
|
|
const intl17 = require(1236) /* getSystemLocale */.intl;
|
|
obj[1] = intl17.string(importDefault(2578)["UzRF+8"]);
|
|
const intl18 = require(1236) /* getSystemLocale */.intl;
|
|
obj[2] = intl18.string(importDefault(2578).zRKbpz);
|
|
const intl19 = require(1236) /* getSystemLocale */.intl;
|
|
obj[3] = intl19.string(importDefault(2578).q5M7HV);
|
|
const result = registerNotificationCategoriesAndGroups(obj, obj);
|
|
} else if (null != registerNotificationCategories) {
|
|
obj = { calls: null, mediaConnections: null, messages: null, directMessages: null, social: null, gameDetection: null, stageLive: null, guildEventLive: null, guildHighlights: null, forumThreadCreated: null, other: null, otherHighPriority: null };
|
|
const intl20 = require(1236) /* getSystemLocale */.intl;
|
|
obj[0] = intl20.string(require(1236) /* getSystemLocale */.t.JJogjm);
|
|
const intl21 = require(1236) /* getSystemLocale */.intl;
|
|
obj[1] = intl21.string(require(1236) /* getSystemLocale */.t.K3lovD);
|
|
const intl22 = require(1236) /* getSystemLocale */.intl;
|
|
obj[2] = intl22.string(require(1236) /* getSystemLocale */.t.OIgYlQ);
|
|
const intl23 = require(1236) /* getSystemLocale */.intl;
|
|
obj[3] = intl23.string(require(1236) /* getSystemLocale */.t.YUU0RF);
|
|
const intl24 = require(1236) /* getSystemLocale */.intl;
|
|
obj[4] = intl24.string(require(1236) /* getSystemLocale */.t.TdEu5X);
|
|
const intl25 = require(1236) /* getSystemLocale */.intl;
|
|
obj[5] = intl25.string(require(1236) /* getSystemLocale */.t["A/4saf"]);
|
|
const intl26 = require(1236) /* getSystemLocale */.intl;
|
|
obj[6] = intl26.string(require(1236) /* getSystemLocale */.t.qGRagm);
|
|
const intl27 = require(1236) /* getSystemLocale */.intl;
|
|
obj[7] = intl27.string(require(1236) /* getSystemLocale */.t.MfGr0a);
|
|
const intl28 = require(1236) /* getSystemLocale */.intl;
|
|
obj[8] = intl28.string(require(1236) /* getSystemLocale */.t.p5jg9S);
|
|
const intl29 = require(1236) /* getSystemLocale */.intl;
|
|
obj[9] = intl29.string(require(1236) /* getSystemLocale */.t.dl57ho);
|
|
const intl30 = require(1236) /* getSystemLocale */.intl;
|
|
obj[10] = intl30.string(require(1236) /* getSystemLocale */.t.BcZTKu);
|
|
const intl31 = require(1236) /* getSystemLocale */.intl;
|
|
obj[11] = intl31.string(require(1236) /* getSystemLocale */.t.bcv3rp);
|
|
const result1 = registerNotificationCategories(obj);
|
|
}
|
|
};
|
|
prototype["trackDisabledAndroidNotifChannels"] = function trackDisabledAndroidNotifChannels() {
|
|
if (!this.hasTrackedDisabledAndroidNotifChannels) {
|
|
tmp.hasTrackedDisabledAndroidNotifChannels = true;
|
|
let obj = set(500);
|
|
if (obj.isAndroid()) {
|
|
const tmp5 = importDefault(13638);
|
|
let prop;
|
|
if (tmp5 != null) {
|
|
prop = tmp5.getAndroidNotifChannelStates;
|
|
}
|
|
if (null != prop) {
|
|
const _Set = Set;
|
|
set = new Set(NOTIF_SETTINGS.map((string_id) => string_id.string_id));
|
|
const found = prop().filter((importance) => {
|
|
let hasItem = 0 === importance.importance;
|
|
if (hasItem) {
|
|
hasItem = set.has(importance.channelId);
|
|
}
|
|
return hasItem;
|
|
});
|
|
const propResult = prop();
|
|
obj = { disabled_channels: null };
|
|
obj[0] = found.map((channelId) => channelId.channelId);
|
|
tmp4(698).track(AnalyticEvents.ANDROID_NOTIFICATION_CHANNELS_SYNCED, obj);
|
|
const tmp4Result = tmp4(698);
|
|
}
|
|
tmp4 = importDefault;
|
|
}
|
|
}
|
|
};
|
|
prototype["getToken"] = function getToken() {
|
|
return this.token;
|
|
};
|
|
Object.defineProperty(prototype, "canSync", {
|
|
get: function canSync() {
|
|
let isInitialized = this.isInitialized;
|
|
if (isInitialized) {
|
|
isInitialized = authenticated.isAuthenticated();
|
|
}
|
|
if (isInitialized) {
|
|
isInitialized = !isSwitchingAccount.getIsSwitchingAccount();
|
|
}
|
|
return isInitialized;
|
|
},
|
|
set: undefined
|
|
});
|
|
const notificationTokenManager = new NotificationTokenManager();
|
|
let result = require("initialize").fileFinishedImporting("modules/notifications/native/NotificationTokenManager.tsx");
|
|
|
|
export default notificationTokenManager;
|