368 lines
16 KiB
TypeScript
368 lines
16 KiB
TypeScript
/* Metro module 11875; source: actions/native/PushNotificationActionCreators.tsx; dependencies: [5, 11876, 1226, 661, 5079, 3, 692, 507, 1216, 11880, 587, 5046, 477, 480, 1360, 694, 2] */
|
|
import Module00005 from '../../by-id/module-00005.js'; /* Metro dependency 5 */
|
|
import Dispatcher from '../../Dispatcher.tsx'; /* Metro dependency 694 */
|
|
import AuthenticationStore from '../../stores/AuthenticationStore.tsx'; /* Metro dependency 1226 */
|
|
import TrackedHTTPUtils from '../../utils/TrackedHTTPUtils.tsx'; /* Metro dependency 5046 */
|
|
import MultiAccountStore from '../../modules/multi_account/MultiAccountStore.tsx'; /* Metro dependency 11876 */
|
|
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
|
|
import * as AnalyticsUtilsModule from '../../external/discord_common/js/packages/analytics-utils/AnalyticsUtils.tsx'; /* Metro dependency 480 */
|
|
import * as StorageModule from '../../external/discord_common/js/packages/storage/Storage.tsx'; /* Metro dependency 587 */
|
|
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */
|
|
|
|
function _fun91078(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#91078, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:6, offset: 0x020523dc, size: 400 bytes, params: 8, frame: 19
|
|
const env0_0 = require;
|
|
const getOrRefreshPushSyncToken = function() {
|
|
return _getOrRefreshPushSyncToken.apply(this, arguments);
|
|
};
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
let value = ConstantsModule;
|
|
const env0_7 = value.DEVICE_TOKEN;
|
|
const env0_8 = value.DEVICE_VOIP_TOKEN;
|
|
const env0_9 = value.Endpoints;
|
|
value = require(5079) /* metro dependency 5079: PushNotificationConstants */;
|
|
const env0_10 = value.BUNDLE_ID;
|
|
const env0_11 = value.DEVICE_PUSH_VOIP_PROVIDER;
|
|
const env0_12 = value.getDevicePushProvider;
|
|
const env0_13 = value.IS_QUEST_RELEASE;
|
|
value = importDefault(3) /* metro dependency 3: Logger */;
|
|
value = new value('PushNotificationActionCreators');
|
|
object = {registerDevice: registerDevice, syncDevice: syncDevice, unregisterDevice: unregisterDevice};
|
|
(FileImportTrackerModule).fileFinishedImporting('actions/native/PushNotificationActionCreators.tsx');
|
|
exports.default = object;
|
|
exports.setPushPermissionState = setPushPermissionState;
|
|
exports.setPushPermissionReactivationSeen = setPushPermissionReactivationSeen;
|
|
exports.setPushNotificationPermissionEligibleForPrompt = setPushNotificationPermissionEligibleForPrompt;
|
|
exports.updateNotificationAuthorizationStatus = updateNotificationAuthorizationStatus;
|
|
function _getOrRefreshPushSyncToken() { // fn#91080, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:433, offset: 0x0205256c, size: 50 bytes, params: 1, frame: 14
|
|
return Module00005(_fun91082).apply(this, arguments);
|
|
function* _fun91082(a0) { // fn#91082, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:508, offset: 0x020525a9, size: 273 bytes, params: 2, frame: 20
|
|
var binding2;
|
|
var property;
|
|
var value5;
|
|
var HTTP;
|
|
var get;
|
|
var object;
|
|
var DEVICES_SYNC_TOKEN;
|
|
var object2;
|
|
var value6;
|
|
var value7;
|
|
var value8;
|
|
var body;
|
|
var token;
|
|
var error;
|
|
if (false) {
|
|
return undefined;
|
|
}
|
|
if (a0.pushSyncToken != null) {
|
|
return a0.pushSyncToken;
|
|
}
|
|
value = environment.__proto__.__proto__;
|
|
let binding = env2_2;
|
|
const token2 = binding(env2_3[6]).getToken(a0.id);
|
|
if (token2 == null) {
|
|
return null;
|
|
}
|
|
try {
|
|
binding = env2_0;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
binding2 = env2_3;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
property = binding2[7];
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
value5 = binding(property);
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
HTTP = value5.HTTP;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
get = HTTP.get;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
object = {};
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
binding = env2_9;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
DEVICES_SYNC_TOKEN = binding.DEVICES_SYNC_TOKEN;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
object.url = DEVICES_SYNC_TOKEN;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
object2 = {};
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
object2.authorization = token2;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
object.headers = object2;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
object.rejectWithError = false;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
value6 = Reflect.apply(get, HTTP, [object]);
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
yield value6;
|
|
try {
|
|
value7 = undefined;
|
|
value8 = false;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
if (value8) {
|
|
return value7;
|
|
}
|
|
try {
|
|
body = value7.body;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
try {
|
|
token = body.token;
|
|
} catch (error) {
|
|
binding = env2_1;
|
|
value = binding(env2_3[8]);
|
|
value.captureException(error);
|
|
return null;
|
|
}
|
|
value = env2_2(env2_3[9]);
|
|
value.updatePushSyncToken(a0.id, token);
|
|
return token;
|
|
}
|
|
|
|
}
|
|
|
|
function registerDevice(a0) { // fn#91083, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:868, offset: 0x020526ba, size: 355 bytes, params: 2, frame: 24
|
|
var r8;
|
|
var r0;
|
|
var defaultImport;
|
|
var post;
|
|
var object;
|
|
var object2;
|
|
var object3;
|
|
const value = a1;
|
|
const r1 = value !== undefined ? value : false;
|
|
const canUseMultiAccountNotifications = MultiAccountStore.canUseMultiAccountNotifications;
|
|
env0_14.log('Registering push notification token: ' + a0 + ', is voip:' + r1 + ', multi-account:' + canUseMultiAccountNotifications);
|
|
const Storage = (StorageModule).Storage;
|
|
Storage.set(r1 ? DEVICE_VOIP_TOKEN : DEVICE_TOKEN, a0);
|
|
if (canUseMultiAccountNotifications) {
|
|
r0 = this.syncDevice(a0, r1);
|
|
} else {
|
|
defaultImport = importDefault(5046) /* metro dependency 5046: TrackedHTTPUtils */;
|
|
post = defaultImport.post;
|
|
object = {};
|
|
object.url = Endpoints.DEVICES;
|
|
object2 = {};
|
|
r8 = r1 ? DEVICE_PUSH_VOIP_PROVIDER : getDevicePushProvider();
|
|
object2.provider = r8;
|
|
object2.token = a0;
|
|
r8 = (require(477) /* metro dependency 477: PlatformUtils */).isAndroid() && !IS_QUEST_RELEASE;
|
|
object2.bypass_server_throttling_supported = r8;
|
|
object2.bundle_id = BUNDLE_ID;
|
|
object.body = object2;
|
|
object.oldFormErrors = true;
|
|
object3 = {};
|
|
object3.event = (require(480) /* metro dependency 480: AnalyticsUtils */).NetworkActionNames.USER_REGISTER_DEVICE_TOKEN;
|
|
object.trackedActionData = object3;
|
|
object.rejectWithError = false;
|
|
r0 = Reflect.apply(post, defaultImport, [object]);
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
function syncDevice(a0) { // fn#91084, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:1340, offset: 0x0205281d, size: 49 bytes, params: 2, frame: 12
|
|
const value = a1;
|
|
const env0_0 = a0;
|
|
const env0_1 = value !== undefined ? value : false;
|
|
return Module00005(_fun91086)();
|
|
function* _fun91086() { // fn#91086, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:1353, offset: 0x02052859, size: 424 bytes, params: 1, frame: 21
|
|
var environment;
|
|
if (true) {
|
|
var env0_0;
|
|
value = environment.__proto__.__proto__;
|
|
var binding = env2_6;
|
|
env0_0 = binding.getId();
|
|
var Promise = global.Promise;
|
|
var all = Promise.all;
|
|
var value4 = env2_5.getValidUsers().sort(_fun91087);
|
|
yield Reflect.apply(all, Promise, [value4.map(env2_15)]);
|
|
var value5 = undefined;
|
|
if (false) {
|
|
return value5;
|
|
}
|
|
if (!(value5.length < 1)) {
|
|
if (value5[0] == null) {
|
|
return undefined;
|
|
}
|
|
binding = env2_0;
|
|
var HTTP = binding(env2_3[7]).HTTP;
|
|
var put = HTTP.put;
|
|
var object = {};
|
|
var DEVICES_SYNC = env2_9.DEVICES_SYNC;
|
|
object.url = DEVICES_SYNC;
|
|
var object2 = {};
|
|
object2.provider = importDefault ? env2_11 : env2_12();
|
|
object2.token = require;
|
|
var filter = value5.filter;
|
|
binding = env2_0;
|
|
var binding2 = env2_3;
|
|
object2.push_sync_tokens = Reflect.apply(filter, value5, [binding(binding2[14]).isNotNullish]);
|
|
object2.bypass_server_throttling_supported = binding(binding2[12]).isAndroid() && !env2_13;
|
|
object2.bundle_id = env2_10;
|
|
object.body = object2;
|
|
object.rejectWithError = false;
|
|
yield Reflect.apply(put, HTTP, [object]);
|
|
var value11 = undefined;
|
|
if (false) {
|
|
return value11;
|
|
}
|
|
if (value11.body.invalid_push_sync_tokens.length > 0) {
|
|
value = env2_2(env2_3[9]);
|
|
value.invalidatePushSyncTokens(value11.body.invalid_push_sync_tokens);
|
|
}
|
|
}
|
|
}
|
|
function _fun91087({id}, a1) { // fn#91087, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:1425, offset: 0x02052a01, size: 51 bytes, params: 3, frame: 4
|
|
return id === env0_0 ? -1 : a1.id !== env0_0 ? 0 : 1;
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
function unregisterDevice(a0) { // fn#91088, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:1891, offset: 0x02052a34, size: 165 bytes, params: 2, frame: 17
|
|
env0_14.log('Unregistering push notification token: ' + a0);
|
|
const defaultImport = TrackedHTTPUtils;
|
|
const object = {};
|
|
const DEVICES = Endpoints.DEVICES;
|
|
object.url = DEVICES;
|
|
const object2 = {};
|
|
object2.provider = getDevicePushProvider();
|
|
object2.token = a0;
|
|
object.body = object2;
|
|
const NetworkActionNames = (AnalyticsUtilsModule).NetworkActionNames;
|
|
const USER_UNREGISTER_DEVICE_TOKEN = NetworkActionNames.USER_UNREGISTER_DEVICE_TOKEN;
|
|
object.trackedActionData = {event: USER_UNREGISTER_DEVICE_TOKEN};
|
|
object.rejectWithError = false;
|
|
return defaultImport.delete(object);
|
|
}
|
|
|
|
function setPushPermissionState(a0) { // fn#91089, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:2234, offset: 0x02052ad9, size: 54 bytes, params: 2, frame: 12
|
|
const env0_0 = a0;
|
|
(Dispatcher).wait(_fun91090);
|
|
function _fun91090() { // fn#91090, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:2284, offset: 0x02052b0f, size: 61 bytes, params: 1, frame: 13
|
|
const value = environment.__proto__;
|
|
(Dispatcher).dispatch({type: 'PUSH_NOTIFICATION_PERMISSION_SET_STATE',
|
|
permissionState: env0_0});
|
|
}
|
|
|
|
}
|
|
|
|
function setPushPermissionReactivationSeen(a0) { // fn#91091, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:2414, offset: 0x02052b4c, size: 57 bytes, params: 2, frame: 13
|
|
(Dispatcher).dispatch({type: 'PUSH_NOTIFICATION_PERMISSION_REACTIVATION_SEEN',
|
|
promptType: a0});
|
|
}
|
|
|
|
function setPushNotificationPermissionEligibleForPrompt(a0) { // fn#91092, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:2598, offset: 0x02052b85, size: 57 bytes, params: 2, frame: 13
|
|
(Dispatcher).dispatch({type: 'PUSH_NOTIFICATION_PERMISSION_SET_ELIGIBLE',
|
|
promptType: a0});
|
|
}
|
|
|
|
function updateNotificationAuthorizationStatus(a0) { // fn#91093, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:12061:2781, offset: 0x02052bbe, size: 57 bytes, params: 2, frame: 13
|
|
(Dispatcher).dispatch({type: 'PUSH_NOTIFICATION_AUTHORIZATION_STATUS_UPDATE',
|
|
authorizationStatus: a0});
|
|
}
|
|
|
|
}
|
|
|
|
global.__d(_fun91078, 11875, [5, 11876, 1226, 661, 5079, 3, 692, 507, 1216, 11880, 587, 5046, 477, 480, 1360, 694,
|
|
2]) /* metro module 11875, dependencies: [5, 11876, 1226, 661, 5079, 3, 692, 507, 1216, 11880, 587, 5046, 477, 480, 1360, 694, 2] */;
|