/* Metro module 9275; source: modules/rtc/SecureFramesUtils.tsx; dependencies: [57, 5, 1226, 4259, 4294, 4395, 1878, 9276, 9277, 661, 1948, 9278, 9284, 9260, 9279, 1244, 3995, 3738, 672, 44, 206, 507, 1216, 4647, 4617, 2] */ function _fun72497(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#72497, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:6, offset: 0x01d47cec, size: 669 bytes, params: 8, frame: 24 const env0_0 = require; const _arrayLikeToArray_72500 = function(a0, a1) { var r0; var r1; var r2; var value3; var length; var value5; var value = undefined; var value2 = value == null; reducibleJoin2: while (true) { if (value2) { r0 = value2; break reducibleJoin2; } value3 = value > a0.length; r0 = value3; break reducibleJoin2; } reducibleJoin4: while (true) { if (r0) { length = a0.length; r1 = length; break reducibleJoin4; } r1 = value; break reducibleJoin4; } value = (0, global.Array)(r1); var value4 = 0; if (value4 < r1) { r2 = value4; reducibleLoop5: while (true) { value[r2] = a0[r2]; value5 = typeof r2 === 'bigint' ? r2 + 1n : +r2 + 1; if (value5 < r1) { r2 = value5; continue reducibleLoop5; } break reducibleLoop5; } } return value; }; const closure = function() { return importDefault(dependencyMap[10]).getArticleURL(HelpdeskArticles.END_TO_END_ENCRYPTION); }; const closure2 = function() { return _getCurrentUserSigningKey.apply(this, arguments); }; const closure3 = function() { return _isPublicKeyMatch.apply(this, arguments); }; const uploadCurrentUserPublicKey = function() { return _uploadCurrentUserPublicKey.apply(this, arguments); }; const closure4 = getIsSecureFramesKeyInconsistent; const closure5 = showSecureFramesKeyInconsistentAlert; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = importDefault(57) /* metro dependency 57 */; const env0_4 = importDefault(5) /* metro dependency 5 */; const authenticationStore = importDefault(1226) /* metro dependency 1226: AuthenticationStore */; const mediaEngineStore = importDefault(4259) /* metro dependency 4259: MediaEngineStore */; const rtcConnectionStore = importDefault(4294) /* metro dependency 4294: RTCConnectionStore */; const streamRTCConnectionStore = importDefault(4395) /* metro dependency 4395: StreamRTCConnectionStore */; const userStore = importDefault(1878) /* metro dependency 1878: UserStore */; const secureFramesPersistedStore = importDefault(9276) /* metro dependency 9276: SecureFramesPersistedStore */; let value = require(9277) /* metro dependency 9277: SecureFramesConstants */; const env0_11 = value.AnalyticsSecureFramesUserVerification; const env0_12 = value.SECURE_FRAMES_PUBLIC_KEY_VERSION; value = require(661) /* metro dependency 661: Constants */; const env0_13 = value.LinkingTypes; const env0_14 = value.Routes; const env0_15 = value.Endpoints; const env0_16 = value.HelpdeskArticles; (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/rtc/SecureFramesUtils.tsx'); exports.getSecureFramesHelpdeskArticle = closure; exports.getSecureFramesPersistentCodesHelpdeskArticle = function() { return importDefault(dependencyMap[10]).getArticleURL(HelpdeskArticles.END_TO_END_ENCRYPTION); }; exports.getSecureFramesVerifiedDevicesHelpdeskArticle = function() { return importDefault(dependencyMap[10]).getArticleURL(HelpdeskArticles.END_TO_END_ENCRYPTION); }; exports.addVerification = addVerification; exports.deleteVerification = deleteVerification; exports.deletePersistentVerification = deletePersistentVerification; exports.deleteUserPersistentVerifications = deleteUserPersistentVerifications; exports.getSecureFramesUserVerifiedTimestamp = getSecureFramesUserVerifiedTimestamp; exports.getUserVerificationDeeplink = getUserVerificationDeeplink; exports.getUserVerifyStateText = getUserVerifyStateText; exports.getUserVerificationFooterText = getUserVerificationFooterText; exports.getCurrentUserSigningKey = closure2; exports.isPublicKeyMatch = closure3; exports.ensureCurrentUserPublicKey = function() { return _ensureCurrentUserPublicKey.apply(this, arguments); }; exports.isCurrentUserPublicKeyMatch = function() { return _isCurrentUserPublicKeyMatch.apply(this, arguments); }; exports.getIsSecureFramesKeyInconsistent = closure4; exports.showSecureFramesKeyInconsistentAlert = closure5; exports.validateSecureFramesKeyConsistent = validateSecureFramesKeyConsistent; } function _createForOfIteratorHelperLoose_72498(a0, a1) { // fn#72498, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:353, offset: 0x01d47f89, size: 372 bytes, params: 3, frame: 20 var r6; var r9; var r5; var value3; var regexp; const env0_0 = a0; const Symbol = global.Symbol; let value = typeof Symbol !== 'undefined'; let r1 = value && a0[global.Symbol.iterator]; r1 = !r1 ? a0['@@iterator'] : r1; if (r1) { value = r1.call(a0); return value.next.bind(value); } const Array = global.Array; if (Array.isArray(a0)) { if (r1) { } return _fun72499; } value = undefined; if (a0) { if (typeof a0 === 'string') { value = _arrayLikeToArray_72500(a0, value); r5 = value; } else { value3 = ({}).toString.call(a0).slice(8, -1); r6 = value3 === 'Object' && a0.constructor; r9 = r6 ? a0.constructor.name : value3; if (r9 === 'Map') { r6 = global.Array.from(a0); } else if (r9 === 'Set') { r6 = global.Array.from(a0); } else if (r9 === 'Arguments') { value = _arrayLikeToArray_72500(a0, value); r6 = value; } else { regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', ''); if (regexp.test(r9)) { value = _arrayLikeToArray_72500(a0, value); r6 = value; } else { r6 = value; } } r5 = r6; } } else { r5 = value; } if (r5) { if (r5) { } return _fun72499; } const TypeError = global.TypeError; throw new TypeError('Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.'); } function _getCurrentUserSigningKey() { // fn#72503, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:1452, offset: 0x01d4812d, size: 50 bytes, params: 1, frame: 14 return env0_4(_fun72505).apply(this, arguments); } function toBase64DataUri(a0) { // fn#72506, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:1711, offset: 0x01d481d0, size: 91 bytes, params: 2, frame: 14 var value; const fromByteArray = (importDefault(206) /* metro dependency 206 */).fromByteArray; const Uint8Array = global.Uint8Array; const value2 = Object.create(Uint8Array.prototype, {constructor: {value: Uint8Array}}); const uint8Array = new Uint8Array(a0); value = Reflect.apply(fromByteArray, value, [uint8Array instanceof Object ? uint8Array : value2]); return 'data:application/octet-stream;base64,' + value; } function _isPublicKeyMatch() { // fn#72508, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:1905, offset: 0x01d4822b, size: 50 bytes, params: 1, frame: 14 return env0_4(_fun72510).apply(this, arguments); } function _uploadCurrentUserPublicKey() { // fn#72512, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:2305, offset: 0x01d48320, size: 50 bytes, params: 1, frame: 14 return env0_4(_fun72514).apply(this, arguments); } function isKeyVersionUploaded(a0) { // fn#72515, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:2723, offset: 0x01d48453, size: 34 bytes, params: 2, frame: 11 return SecureFramesPersistedStore.getUploadedKeyVersionsCached().includes(a0); } function _ensureCurrentUserPublicKey() { // fn#72516, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:2808, offset: 0x01d48475, size: 50 bytes, params: 1, frame: 14 return env0_4(_fun72518).apply(this, arguments); } function _isCurrentUserPublicKeyMatch() { // fn#72519, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:2987, offset: 0x01d484e9, size: 50 bytes, params: 1, frame: 14 return env0_4(_fun72521).apply(this, arguments); } function getIsSecureFramesKeyInconsistent(a0, a1) { // fn#72522, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:3321, offset: 0x01d485c8, size: 309 bytes, params: 3, frame: 27 var r4; var r14; var getSecureFramesRosterMapEntry; var Uint8Array; var prototype; var value5; var uint8Array; var value6; var value7; var value8; var done; var value9; var value10; var value11; var value12; var length; var value13; var value14; const value2 = env0_3(a1, 2); const value3 = 0; let property = value2[value3]; const property2 = value2[1]; let isUserConnected = property.isUserConnected; if (Reflect.apply(isUserConnected, property, [a0])) { if (property.getSecureFramesRosterMapEntry(a0) == null) { return false; } Uint8Array = global.Uint8Array; prototype = Uint8Array.prototype; value5 = Object.create(prototype, {constructor: {value: Uint8Array}}); uint8Array = new Uint8Array(); value6 = uint8Array instanceof Object ? uint8Array : value5; value7 = _createForOfIteratorHelperLoose_72498(property2.getAllActiveStreamKeys()); value8 = value7(); done = value8.done; if (!done) { r4 = value8; reducibleLoop4: while (true) { value9 = r4.value; isUserConnected = property2.isUserConnected; if (Reflect.apply(isUserConnected, property2, [value9, a0])) { getSecureFramesRosterMapEntry = StreamRTCConnectionStore.getSecureFramesRosterMapEntry; value10 = Reflect.apply(getSecureFramesRosterMapEntry, StreamRTCConnectionStore, [value9, a0]); if (value10 == null) { return true; } Uint8Array = global.Uint8Array; prototype = Uint8Array.prototype; value11 = Object.create(prototype, {constructor: {value: Uint8Array}}); uint8Array = new Uint8Array(); value12 = uint8Array instanceof Object ? uint8Array : value11; length = value6.length; if (value3 < length) { r14 = value3; reducibleLoop7: while (true) { property = value6[r14]; if (property !== value12[r14]) { return true; } value13 = typeof r14 === 'bigint' ? r14 + 1n : +r14 + 1; length = value6.length; if (value13 < length) { r14 = value13; continue reducibleLoop7; } break reducibleLoop7; } } } value14 = value7(); done = value14.done; if (done) { return false; } r4 = value14; continue reducibleLoop4; } } } return false; } function showSecureFramesKeyInconsistentAlert({userId, channelId, nickname}) { // fn#72523, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:3783, offset: 0x01d486fd, size: 229 bytes, params: 2, frame: 20 const secureFramesTrackingModule = require(9284) /* metro dependency 9284: SecureFramesTracking */; const trackE2EEUserVerificationFailed = secureFramesTrackingModule.trackE2EEUserVerificationFailed; const OTHER_USER_INCONSISTENT_KEYS = AnalyticsSecureFramesUserVerification.OTHER_USER_INCONSISTENT_KEYS; Reflect.apply(trackE2EEUserVerificationFailed, secureFramesTrackingModule, [{userId: userId, channelId: channelId, keyVersion: SECURE_FRAMES_PUBLIC_KEY_VERSION, reason: OTHER_USER_INCONSISTENT_KEYS}]); const alertActionCreators = importDefault(4647) /* metro dependency 4647: AlertActionCreators */; const show = alertActionCreators.show; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const string = intl.string; const t = (require(1244) /* metro dependency 1244: indexNative */).t; const format = intl.format; const WY6IKb = t.WY6IKb; Reflect.apply(show, alertActionCreators, [{title: Reflect.apply(string, intl, [t.mznLyR]), body: Reflect.apply(format, intl, [WY6IKb, {username: nickname}])}]); } function addVerification(a0, a1, a2, a3, a4) { // fn#72526, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:4586, offset: 0x01d487e2, size: 117 bytes, params: 6, frame: 15 const defaultImport = importDefault(9278) /* metro dependency 9278: SecureFramesActionCreators */; if (a2) { defaultImport.createSecureFramesVerifiedKey(a0, a1); } else { defaultImport.createSecureFramesTransientKey(a0, a1); } (require(9284) /* metro dependency 9284: SecureFramesTracking */).trackE2EEUserVerified({channelId: a3, userId: a0, analyticsLocation: a4}); } function deleteVerification(a0, a1, a2) { // fn#72527, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:4814, offset: 0x01d48857, size: 143 bytes, params: 4, frame: 18 var moduleValue; var serializeKey; var Uint8Array; var value2; var uint8Array; if (a2) { moduleValue = require(9260) /* metro dependency 9260: libdave */; serializeKey = moduleValue.serializeKey; Uint8Array = global.Uint8Array; value2 = Object.create(Uint8Array.prototype, {constructor: {value: Uint8Array}}); uint8Array = new Uint8Array(a1); (importDefault(9278) /* metro dependency 9278: SecureFramesActionCreators */).deleteSecureFramesVerifiedKey(a0, Reflect.apply(serializeKey, moduleValue, [uint8Array instanceof Object ? uint8Array : value2])); } else { (importDefault(9278) /* metro dependency 9278: SecureFramesActionCreators */).deleteSecureFramesTransientKey(a0); } } function deletePersistentVerification(a0, a1) { // fn#72528, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:5030, offset: 0x01d488e6, size: 176 bytes, params: 3, frame: 19 const env0_0 = a0; const env0_1 = a1; const defaultImport = importDefault(9279) /* metro dependency 9279: SecureFramesPlatformUtilsNative */; const openSecureFramesUpdateConfirmation = defaultImport.openSecureFramesUpdateConfirmation; const object2 = {}; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const string = intl.string; const t = (require(1244) /* metro dependency 1244: indexNative */).t; object2.title = Reflect.apply(string, intl, [t.hdL152]); object2.subtitle = intl.string(t['8VGYKg']); object2.onConfirm = onConfirm; Reflect.apply(openSecureFramesUpdateConfirmation, defaultImport, [object2]); } function deleteUserPersistentVerifications(a0) { // fn#72530, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:5364, offset: 0x01d489e2, size: 215 bytes, params: 2, frame: 22 const env0_0 = a0; const name = (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(UserStore.getUser(a0)); const defaultImport2 = importDefault(9279) /* metro dependency 9279: SecureFramesPlatformUtilsNative */; const openSecureFramesUpdateConfirmation = defaultImport2.openSecureFramesUpdateConfirmation; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const formatToPlainString = intl.formatToPlainString; const t = (require(1244) /* metro dependency 1244: indexNative */).t; const K6NGBy = t.K6NGBy; const string = intl.string; const F1BQK3 = t.F1BQK3; Reflect.apply(openSecureFramesUpdateConfirmation, defaultImport2, [{title: Reflect.apply(formatToPlainString, intl, [K6NGBy, {username: name}]), subtitle: Reflect.apply(string, intl, [F1BQK3]), onConfirm: onConfirm}]); } function getSecureFramesUserVerifiedTimestamp(a0) { // fn#72532, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:5770, offset: 0x01d48b00, size: 1036 bytes, params: 2, frame: 21 const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var Math; const value4 = (importDefault(3738) /* metro dependency 3738 */)().diff((importDefault(3738) /* metro dependency 3738 */)(a0), 's'); let Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds; let DAYS_30 = Seconds.DAYS_30; if (value4 > 12 * DAYS_30) { Math = global.Math; return intl.formatToPlainString(t.F1wqkD, {count: Math.round(value4 / (12 * (importDefault(672) /* metro dependency 672: Durations */).Seconds.DAYS_30))}); } Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds; DAYS_30 = Seconds.DAYS_30; if (value4 > DAYS_30) { Math = global.Math; return intl.formatToPlainString(t['iT+b+2'], {count: Math.round(value4 / (importDefault(672) /* metro dependency 672: Durations */).Seconds.DAYS_30)}); } Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds; let DAY = Seconds.DAY; if (value4 > 7 * DAY) { Math = global.Math; return intl.formatToPlainString(t.dLurKZ, {count: Math.round(value4 / (7 * (importDefault(672) /* metro dependency 672: Durations */).Seconds.DAY))}); } Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds; DAY = Seconds.DAY; if (value4 > DAY) { Math = global.Math; return intl.formatToPlainString(t.LE8a2H, {count: Math.round(value4 / (importDefault(672) /* metro dependency 672: Durations */).Seconds.DAY)}); } Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds; const HOUR = Seconds.HOUR; if (value4 > HOUR) { Math = global.Math; return intl.formatToPlainString(t.KULxVS, {count: Math.round(value4 / (importDefault(672) /* metro dependency 672: Durations */).Seconds.HOUR)}); } Seconds = (importDefault(672) /* metro dependency 672: Durations */).Seconds; const MINUTE = Seconds.MINUTE; if (value4 > MINUTE) { Math = global.Math; return intl.formatToPlainString(t.ws6rWq, {count: Math.round(value4 / (importDefault(672) /* metro dependency 672: Durations */).Seconds.MINUTE)}); } return intl.formatToPlainString(t['/w0Qpw'], {count: value4}); } function getUserVerificationDeeplink(a0, a1) { // fn#72533, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:6864, offset: 0x01d48f0c, size: 115 bytes, params: 3, frame: 25 const FEATURE = Routes.FEATURE; const DAVE_PROTOCOL_VERIFICATION = LinkingTypes.DAVE_PROTOCOL_VERIFICATION; return '' + global.location.protocol + '//' + global.location.host + Reflect.apply(FEATURE, Routes, [DAVE_PROTOCOL_VERIFICATION]) + '?userId=' + a0 + '&fingerprint=' + global.encodeURIComponent(a1); } function getUserVerifyStateText(a0, a1) { // fn#72534, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:7079, offset: 0x01d48f7f, size: 1004 bytes, params: 3, frame: 18 const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var items2; const OTHER_USER_DISCONNECTED = AnalyticsSecureFramesUserVerification.OTHER_USER_DISCONNECTED; if (OTHER_USER_DISCONNECTED === a0) { return [intl.string(t.ZBHDM9), intl.format(t['+rIdOd'], {username: a1})]; } const CURRENT_USER_DISCONNECTED = AnalyticsSecureFramesUserVerification.CURRENT_USER_DISCONNECTED; if (CURRENT_USER_DISCONNECTED === a0) { items2 = [intl.string(t['5ICxE6'])]; items2[1] = intl.string(t['v1eXp/']); return items2; } const UNABLE_TO_VERIFY = AnalyticsSecureFramesUserVerification.UNABLE_TO_VERIFY; if (UNABLE_TO_VERIFY === a0) { items2 = [intl.string(t['+no/a7'])]; items2[1] = intl.format(t.Mft7iJ, {username: a1}); return items2; } const FINGERPRINT_MISMATCH = AnalyticsSecureFramesUserVerification.FINGERPRINT_MISMATCH; if (FINGERPRINT_MISMATCH === a0) { return [intl.string(t.HTJ76H), intl.format(t.tc6aAc, {username: a1})]; } const OTHER_USER_ALREADY_VERIFIED = AnalyticsSecureFramesUserVerification.OTHER_USER_ALREADY_VERIFIED; if (OTHER_USER_ALREADY_VERIFIED === a0) { items2 = [intl.string(t['9lw+J+'])]; items2[1] = intl.format(t.TvBS1w, {username: a1}); return items2; } const MATCH = AnalyticsSecureFramesUserVerification.MATCH; if (MATCH === a0) { items2 = [intl.string(t['xyE+Dn'])]; items2[1] = intl.format(t.znsPl5, {username: a1}); return items2; } const OTHER_USER_INCONSISTENT_KEYS = AnalyticsSecureFramesUserVerification.OTHER_USER_INCONSISTENT_KEYS; if (OTHER_USER_INCONSISTENT_KEYS === a0) { return [intl.string(t.im1uUi), intl.format(t.WY6IKb, {username: a1})]; } } function getUserVerificationFooterText({isCurrentUserKeyPersistent, isOtherUserKeyPersistent, otherUserNickname}) { // fn#72535, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:8101, offset: 0x01d4936b, size: 263 bytes, params: 2, frame: 19 var r0; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; var format; const t = (require(1244) /* metro dependency 1244: indexNative */).t; var property; var object2; var qT5z87; if (isCurrentUserKeyPersistent) { if (isOtherUserKeyPersistent) { format = intl.format; property = t['FJN+kh']; object2 = {}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [property, object2]); } else { format = intl.format; if (isCurrentUserKeyPersistent) { property = t['p/9PGp']; object2 = {username: otherUserNickname}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [property, object2]); } else if (isOtherUserKeyPersistent) { qT5z87 = t.qT5z87; object2 = {}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [qT5z87, object2]); } else { property = t['6JLy+i']; object2 = {}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [property, object2]); } } } else { format = intl.format; if (isCurrentUserKeyPersistent) { property = t['p/9PGp']; object2 = {username: otherUserNickname}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [property, object2]); } else if (isOtherUserKeyPersistent) { qT5z87 = t.qT5z87; object2 = {}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [qT5z87, object2]); } else { property = t['6JLy+i']; object2 = {}; object2.helpArticle = getSecureFramesHelpdeskArticle(); r0 = Reflect.apply(format, intl, [property, object2]); } } return r0; } function validateSecureFramesKeyConsistent({userId, guildId, channelId}) { // fn#72538, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:9140, offset: 0x01d49472, size: 136 bytes, params: 2, frame: 19 var user; var showSecureFramesKeyInconsistentAlertBinding; const getIsSecureFramesKeyInconsistentBinding = getIsSecureFramesKeyInconsistent; let object = [RTCConnectionStore]; object[1] = StreamRTCConnectionStore; if (getIsSecureFramesKeyInconsistentBinding(userId, object)) { user = UserStore.getUser(userId); showSecureFramesKeyInconsistentAlertBinding = showSecureFramesKeyInconsistentAlert; object = {userId: userId, channelId: channelId}; object.nickname = (importDefault(4617) /* metro dependency 4617: NicknameUtils */).getName(guildId, channelId, user); showSecureFramesKeyInconsistentAlertBinding(object); return false; } return true; } function* _fun72505(a0) { // fn#72505, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:1525, offset: 0x01d4816a, size: 102 bytes, params: 2, frame: 16 if (true) { value = environment.__proto__.__proto__; var binding = env2_5; var staticAuthSessionId = binding.getStaticAuthSessionId(); env2_1(env2_2[19])(staticAuthSessionId != null, '[getCurrentUserPublicKey] session id should not be null'); binding = env2_6; var getMLSSigningKey = binding.getMLSSigningKey; yield Reflect.apply(getMLSSigningKey, binding, [staticAuthSessionId, a0]); } } function* _fun72510(a0, a1, a2) { // fn#72510, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:1962, offset: 0x01d48268, size: 184 bytes, params: 4, frame: 19 var binding; var binding2; var property; var value3; var HTTP; var post; var object3; var VOICE_MATCH_PUBLIC_KEY; var value4; var object4; var value5; var value6; var value7; var value8; var body; var is_match; var error; if (false) { return undefined; } value = environment.__proto__.__proto__; try { binding = env2_0; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding2 = env2_2; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { property = binding2[21]; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value3 = binding(property); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { HTTP = value3.HTTP; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { post = HTTP.post; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3 = {}; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding = env2_15; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { VOICE_MATCH_PUBLIC_KEY = binding.VOICE_MATCH_PUBLIC_KEY; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value4 = Reflect.apply(VOICE_MATCH_PUBLIC_KEY, binding, [a0]); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3.url = value4; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4 = {}; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding = env2_22; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value5 = binding(a1); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4.public_key = value5; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4.key_version = a2; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3.body = object4; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3.rejectWithError = false; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value6 = Reflect.apply(post, HTTP, [object3]); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } yield value6; try { value7 = undefined; value8 = false; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } if (value8) { return value7; } try { body = value7.body; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { is_match = body.is_match; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } return is_match; } function* _fun72514(a0) { // fn#72514, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:2382, offset: 0x01d4835d, size: 246 bytes, params: 2, frame: 20 var binding; var binding2; var property; var value5; var HTTP; var put; var object3; var VOICE_PUBLIC_KEYS; var value6; var object4; var value7; var value8; var value9; var value10; var value11; var binding3; var value12; var addUploadedKeyVersion; var error; if (true) { value = environment.__proto__.__proto__; yield env2_20(a0); var value3 = undefined; if (false) { return value3; } var key = value3.key; var signature = value3.signature; try { binding = env2_0; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding2 = env2_2; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { property = binding2[21]; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value5 = binding(property); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { HTTP = value5.HTTP; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { put = HTTP.put; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3 = {}; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding = env2_15; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { VOICE_PUBLIC_KEYS = binding.VOICE_PUBLIC_KEYS; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value6 = Reflect.apply(VOICE_PUBLIC_KEYS, binding, []); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3.url = value6; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4 = {}; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding = env2_22; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value7 = binding(key); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4.public_key = value7; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value8 = binding(signature); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4.signature = value8; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object4.key_version = a0; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3.body = object4; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { object3.rejectWithError = false; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value9 = Reflect.apply(put, HTTP, [object3]); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } yield value9; try { value10 = undefined; value11 = false; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } if (value11) { return value10; } try { binding = env2_1; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { binding3 = env2_2; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { property = binding3[11]; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { value12 = binding(property); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { addUploadedKeyVersion = value12.addUploadedKeyVersion; } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } try { Reflect.apply(addUploadedKeyVersion, value12, [a0]); } catch (error) { binding = env2_1; value = binding(env2_2[22]); value.captureException(error); throw error; } } } function* _fun72518(a0) { // fn#72518, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:2885, offset: 0x01d484b2, size: 55 bytes, params: 2, frame: 13 if (true) { value = environment.__proto__.__proto__; if (env2_27(a0)) { return undefined; } yield env2_25(a0); } } function* _fun72521(a0) { // fn#72521, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:3066, offset: 0x01d48526, size: 162 bytes, params: 2, frame: 18 var id; var value5; var value7; if (false) { return undefined; } value = environment.__proto__.__proto__; if (env2_27(a0)) { id = env2_5.getId(); yield env2_20(a0); value5 = undefined; if (false) { return value5; } yield env2_23(id, value5.key, a0); value7 = undefined; if (false) { return value7; } if (!value7) { env2_0(env2_2[12]).trackE2EEPublicKeyMismatch(a0); } return value7; } yield env2_25(a0); if (false) { return undefined; } return true; } function deletePersistentVerificationOnConfirm() { // fn#72529, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:5231, owner: deletePersistentVerification.onConfirm, offset: 0x01d48996, size: 76 bytes, params: 1, frame: 16 const value = environment.__proto__; const defaultImport = importDefault(9278) /* metro dependency 9278: SecureFramesActionCreators */; defaultImport.deleteSecureFramesVerifiedKey(env0_0, require); (require(9284) /* metro dependency 9284: SecureFramesTracking */).trackE2EESettingsDeviceDelete(); } function deleteUserPersistentVerificationsOnConfirm() { // fn#72531, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:9461:5633, owner: deleteUserPersistentVerifications.onConfirm, offset: 0x01d48ab9, size: 71 bytes, params: 1, frame: 14 const value = environment.__proto__; (importDefault(9278) /* metro dependency 9278: SecureFramesActionCreators */).deleteSecureFramesUserVerifiedKeys(env0_0); (require(9284) /* metro dependency 9284: SecureFramesTracking */).trackE2EESettingsUserDelete(); }