1070 lines
41 KiB
TypeScript
1070 lines
41 KiB
TypeScript
/* 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();
|
|
}
|
|
|