1042 lines
45 KiB
TypeScript
1042 lines
45 KiB
TypeScript
/* Metro module 4096; source: modules/coded_links/findCodedLinks.tsx; dependencies: [4097, 661, 663, 4100, 1473, 3855, 44, 4101, 1471, 4102, 4105, 4098, 4116, 4120, 4122, 4126, 4123, 2] */
|
|
function _fun33548(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#33548, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:6, offset: 0x01033a19, size: 1253 bytes, params: 8, frame: 36
|
|
var RegExp;
|
|
const env0_0 = require;
|
|
const _arrayLikeToArray_33551 = 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;
|
|
};
|
|
let closure = getHost;
|
|
const isHostMatch = function(a0, {host}) {
|
|
return host?.replace(RegExp('^www[.]', 'i'), '') === a0.host;
|
|
};
|
|
const closure2 = getPathsFromURL;
|
|
const closure3 = findCodedLinks;
|
|
const closure4 = parseQuestsEmbedCode;
|
|
const closure5 = parseURLSafely;
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
let value = undefined;
|
|
const inviteStore = importDefault(4097) /* metro dependency 4097: InviteStore */;
|
|
const PRIMARY_DOMAIN = (require(661) /* metro dependency 661: Constants */).PRIMARY_DOMAIN;
|
|
const env0_4 = (require(663) /* metro dependency 663: CollectiblesShopConstants */).CollectibleShopTab;
|
|
const env0_5 = RegExp('^\\/([a-zA-Z0-9-]+)$', '');
|
|
const env0_6 = RegExp('^\\/channels\\/([0-9]+|@me)\\/([0-9]+)$', '');
|
|
const env0_7 = RegExp('^\\/(invite|template)\\/([a-zA-Z0-9-]+)\\/?\\.?$', '');
|
|
RegExp = global.RegExp;
|
|
let regExp = new RegExp('^/events/(\\d+)(?:/)(\\d+)?((?:/)(\\d+))?');
|
|
const env0_9 = RegExp('^\\/(application-directory|discovery\\/applications)\\/([0-9-]+)\\/?((about|images|privacy)\\/?)?$',
|
|
'');
|
|
const env0_10 = RegExp('^\\/(application-directory|discovery\\/applications)\\/([0-9-]+)\\/store\\/?([0-9-]+)?\\/?$',
|
|
'');
|
|
const env0_11 = RegExp('^\\/activities\\/([0-9-]+)\\/?$', '');
|
|
const env0_12 = RegExp('^\\/channels\\/([0-9]+)\\/shop\\/([0-9]+)$', '');
|
|
const env0_13 = RegExp('^(?:\\/game-shop\\/([0-9]+)|\\/channels\\/([0-9]+)\\/game-shop\\/(?:[0-9]+))\\/([0-9]+)(?:\\/([^\\/]+))?$',
|
|
'');
|
|
const env0_14 = RegExp('^\\/channels\\/([0-9]+)\\/shop$', '');
|
|
const env0_15 = RegExp('^\\/quests\\/([0-9-]+)\\/?$', '');
|
|
const env0_16 = RegExp('^\\/oauth2\\/authorize', '');
|
|
const env0_17 = RegExp('^#itemSkuId=([0-9]+)$', '');
|
|
const regexp = RegExp("dev:\\/\\/[\\w-.~:\\/?#\\[\\]@!$&'()*+,;=%]+", 'i');
|
|
let GLOBAL_ENV = global.window.GLOBAL_ENV;
|
|
const INVITE_HOST = GLOBAL_ENV.INVITE_HOST;
|
|
let value4 = closure(INVITE_HOST);
|
|
GLOBAL_ENV = global.window.GLOBAL_ENV;
|
|
const GUILD_TEMPLATE_HOST = GLOBAL_ENV.GUILD_TEMPLATE_HOST;
|
|
let value5 = closure(GUILD_TEMPLATE_HOST);
|
|
GLOBAL_ENV = global.window.GLOBAL_ENV;
|
|
const WEBAPP_ENDPOINT = GLOBAL_ENV.WEBAPP_ENDPOINT;
|
|
const value7 = closure(WEBAPP_ENDPOINT ?? '//canary.' + PRIMARY_DOMAIN);
|
|
const env0_22 = closure('//canary.' + PRIMARY_DOMAIN);
|
|
const env0_23 = closure('//ptb.' + PRIMARY_DOMAIN);
|
|
const value8 = closure('discordapp.com');
|
|
const value9 = closure('discord.com');
|
|
const regexUtils = importDefault(4100) /* metro dependency 4100: RegexUtils */;
|
|
let escape = regexUtils.escape;
|
|
const host = value4.host;
|
|
const value11 = '';
|
|
items = [Reflect.apply(escape, regexUtils, [host ?? value11])];
|
|
const value13 = regexUtils;
|
|
items[1] = value13.escape(value5.host ?? value11);
|
|
const value14 = regexUtils;
|
|
items[2] = value14.escape(value7.host ?? value11);
|
|
const value15 = regexUtils;
|
|
escape = value15.escape;
|
|
let r13 = value8.host ?? value11;
|
|
items[3] = Reflect.apply(escape, value15, [r13]);
|
|
const value16 = regexUtils;
|
|
items[4] = value16.escape(value9.host ?? value11);
|
|
const filter = items.filter;
|
|
const Boolean = global.Boolean;
|
|
const value17 = Reflect.apply(filter, items, [Boolean]);
|
|
RegExp = global.RegExp;
|
|
regExp = new RegExp('((https?://[^ ]*)|^|[^/][^/.])(' + value17.join('|') + ')', 'g');
|
|
closure = stripMarkdownLinkSyntax;
|
|
const link = (importDefault(3855) /* metro dependency 3855 */).defaultRules.link;
|
|
const source = link == null || link.match == null || link.match.regex == null ? value : link.match.regex.source;
|
|
(importDefault(44) /* metro dependency 44 */)(source, 'SimpleMarkdown link regex is not set.');
|
|
r13 = source[0] !== '^' ? source : source.substring(1);
|
|
RegExp = global.RegExp;
|
|
regExp = new RegExp(r13, 'g');
|
|
(require(2) /* metro dependency 2 */).fileFinishedImporting('modules/coded_links/findCodedLinks.tsx');
|
|
exports.default = closure3;
|
|
exports.DEVLINK_REGEX = regexp;
|
|
exports.stripMarkdownLinkSyntax = closure;
|
|
exports.remainingPathFromDiscordHostMatch = remainingPathFromDiscordHostMatch;
|
|
exports.getPathsFromURL = closure2;
|
|
exports.isSuspiciousCodedLink = isSuspiciousCodedLink;
|
|
exports.parseQuestsEmbedCode = closure4;
|
|
exports.parseURLSafely = closure5;
|
|
exports.findCodedLink = findCodedLink;
|
|
return value;
|
|
}
|
|
|
|
function _createForOfIteratorHelperLoose_33549(a0, a1) { // fn#33549, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:184, offset: 0x01033efe, size: 370 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 _fun33550;
|
|
}
|
|
value = undefined;
|
|
if (a0) {
|
|
if (typeof a0 === 'string') {
|
|
value = _arrayLikeToArray_33551(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_33551(a0, value);
|
|
r6 = value;
|
|
} else {
|
|
regexp = RegExp('^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$', '');
|
|
if (regexp.test(r9)) {
|
|
value = _arrayLikeToArray_33551(a0, value);
|
|
r6 = value;
|
|
} else {
|
|
r6 = value;
|
|
}
|
|
}
|
|
r5 = r6;
|
|
}
|
|
} else {
|
|
r5 = value;
|
|
}
|
|
if (r5) {
|
|
if (r5) {
|
|
}
|
|
return _fun33550;
|
|
}
|
|
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 getHost(a0) { // fn#33552, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:2336, offset: 0x01034070, size: 126 bytes, params: 2, frame: 15
|
|
if (a0 == null) {
|
|
return {'host': null, 'pathPrefix': null};
|
|
}
|
|
let value = a0.indexOf('/');
|
|
if (value >= 0) {
|
|
value = require(1473) /* metro dependency 1473 */;
|
|
value = value.parse(a0, undefined, true);
|
|
return {host: value.host, pathPrefix: value.pathname};
|
|
}
|
|
return {host: a0, pathPrefix: null};
|
|
}
|
|
|
|
function remainingPathFromHostMatch(a0, a1) { // fn#33554, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:2880, offset: 0x0103412e, size: 113 bytes, params: 3, frame: 15
|
|
var r4;
|
|
var r1;
|
|
var pathname;
|
|
var pathPrefix;
|
|
var value3;
|
|
let value = isHostMatch(a0, a1);
|
|
const value2 = null;
|
|
if (value) {
|
|
pathname = a1.pathname;
|
|
value = '';
|
|
r4 = value2 != pathname ? pathname : value;
|
|
pathPrefix = a0.pathPrefix;
|
|
r1 = value2 != pathPrefix ? pathPrefix : value;
|
|
if (r4.startsWith(r1)) {
|
|
value3 = r4.substring(r1.length);
|
|
return value === value3 ? value2 : value3;
|
|
}
|
|
}
|
|
return value2;
|
|
}
|
|
|
|
function getPathsFromURL(a0) { // fn#33555, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:3104, offset: 0x0103419f, size: 180 bytes, params: 2, frame: 17
|
|
var r1;
|
|
var r0;
|
|
var object2;
|
|
var remainingPathFromHostMatchBinding;
|
|
const uRLSafely = parseURLSafely(a0);
|
|
if (uRLSafely == null) {
|
|
r0 = {'url': null, 'inviteHostRemainingPath': null, 'templateHostRemainingPath': null,
|
|
'primaryHostRemainingPath': null};
|
|
} else if (uRLSafely.pathname == null) {
|
|
r0 = {'url': null, 'inviteHostRemainingPath': null, 'templateHostRemainingPath': null,
|
|
'primaryHostRemainingPath': null};
|
|
} else {
|
|
object2 = {url: uRLSafely};
|
|
remainingPathFromHostMatchBinding = remainingPathFromHostMatch;
|
|
object2.inviteHostRemainingPath = remainingPathFromHostMatchBinding(env0_19, uRLSafely);
|
|
object2.templateHostRemainingPath = remainingPathFromHostMatchBinding(env0_20, uRLSafely);
|
|
r1 = remainingPathFromHostMatchBinding(env0_21, uRLSafely) ?? remainingPathFromHostMatch(env0_22, uRLSafely);
|
|
r1 = r1 ?? remainingPathFromHostMatch(env0_23, uRLSafely);
|
|
r1 = r1 ?? remainingPathFromHostMatch(env0_24, uRLSafely);
|
|
r1 = r1 ?? remainingPathFromHostMatch(env0_25, uRLSafely);
|
|
object2.primaryHostRemainingPath = r1;
|
|
r0 = object2;
|
|
}
|
|
return r0;
|
|
}
|
|
|
|
function findCodedLinks(a0) { // fn#33556, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:3653, offset: 0x01034253, size: 253 bytes, params: 2, frame: 20
|
|
var value8;
|
|
var value9;
|
|
if (a0 != null) {
|
|
var Set = global.Set;
|
|
var set = new Set();
|
|
var value2 = a0.replace(env0_26, function(a0, a1, a2, a3) {
|
|
return a2 != null ? a0 : '' + a1 + 'http://' + a3;
|
|
});
|
|
var value3 = stripMarkdownLinkSyntax(value2);
|
|
var match = value3.match;
|
|
var URL_REGEX = (importDefault(1471) /* metro dependency 1471: URLUtils */).URL_REGEX;
|
|
var value4 = Reflect.apply(match, value3, [URL_REGEX]);
|
|
var value5 = value2.match(env0_18);
|
|
var r7 = value4 ?? [];
|
|
var concat = r7.concat;
|
|
var r2 = value5 ?? [];
|
|
var value6 = Reflect.apply(concat, r7, [r2]);
|
|
if (value6 == null) {
|
|
return [];
|
|
}
|
|
if (value6.length === 0) {
|
|
return [];
|
|
}
|
|
var closure = findCodedLinks_loop;
|
|
set = _createForOfIteratorHelperLoose_33549(value6);
|
|
var value7 = set();
|
|
var done = value7.done;
|
|
if (!done) {
|
|
r2 = value7;
|
|
while (true) {
|
|
value8 = r2.value;
|
|
if (closure(value8) === 0) {
|
|
break;
|
|
}
|
|
value9 = set();
|
|
done = value9.done;
|
|
if (done) {
|
|
break;
|
|
}
|
|
r2 = value9;
|
|
continue;
|
|
}
|
|
}
|
|
}
|
|
return [];
|
|
}
|
|
|
|
function parseQuestsEmbedCode(a0) { // fn#33561, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:7226, offset: 0x01034d30, size: 88 bytes, params: 2, frame: 14
|
|
const getPathsFromURLBinding = getPathsFromURL;
|
|
const value2 = undefined;
|
|
const pathsFromURLBinding = getPathsFromURLBinding(a0);
|
|
const value4 = null;
|
|
const r3 = value4 == pathsFromURLBinding || value4 == pathsFromURLBinding.primaryHostRemainingPath ? value2 : pathsFromURLBinding.primaryHostRemainingPath.match(env0_15);
|
|
const r1 = value4 == r3 ? value2 : r3[1];
|
|
return value4 != r1 ? r1 : value4;
|
|
}
|
|
|
|
function parseURLSafely(a0) { // fn#33562, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:7398, offset: 0x01034d88, size: 47 bytes, params: 2, frame: 12
|
|
var value;
|
|
var property;
|
|
var error;
|
|
try {
|
|
value = environment;
|
|
property = dependencyMap[4];
|
|
value = require(property);
|
|
value = value.parse(a0);
|
|
} catch (error) {
|
|
return null;
|
|
}
|
|
return value;
|
|
}
|
|
|
|
function stripMarkdownLinkSyntax(a0) { // fn#33563, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:2558, offset: 0x01034db7, size: 30 bytes, params: 2, frame: 13
|
|
return a0.replaceAll(env0_28, ' $2 ');
|
|
}
|
|
|
|
function remainingPathFromDiscordHostMatch(a0) { // fn#33564, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:7683, offset: 0x01034dd5, size: 98 bytes, params: 2, frame: 16
|
|
let r0 = remainingPathFromHostMatch(env0_21, a0) ?? remainingPathFromHostMatch(env0_22, a0);
|
|
r0 = r0 ?? remainingPathFromHostMatch(env0_23, a0);
|
|
r0 = r0 ?? remainingPathFromHostMatch(env0_24, a0);
|
|
r0 = r0 ?? remainingPathFromHostMatch(env0_25, a0);
|
|
return r0;
|
|
}
|
|
|
|
function isSuspiciousCodedLink(a0) { // fn#33565, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:8017, offset: 0x01034e37, size: 223 bytes, params: 2, frame: 17
|
|
var r1;
|
|
var parseURLSafelyBinding;
|
|
var value2;
|
|
var uRLSafely;
|
|
var items2;
|
|
var pathname;
|
|
var value3;
|
|
if (a0.includes('\\')) {
|
|
parseURLSafelyBinding = parseURLSafely;
|
|
value2 = undefined;
|
|
uRLSafely = parseURLSafelyBinding(a0);
|
|
if (uRLSafely == null) {
|
|
return false;
|
|
}
|
|
if (isHostMatch(env0_19, uRLSafely)) {
|
|
return true;
|
|
}
|
|
items2 = [env0_21, env0_22, env0_23, env0_24, env0_25];
|
|
if (items2.some(_fun33566)) {
|
|
pathname = uRLSafely.pathname;
|
|
if (pathname == null) {
|
|
r1 = value2;
|
|
} else {
|
|
value3 = pathname.toUpperCase();
|
|
r1 = value3.includes((require(4101) /* metro dependency 4101: CodedLink */).CodedLinkType.INVITE);
|
|
}
|
|
return r1 != null && r1;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function findCodedLink(a0) { // fn#33567, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:8401, offset: 0x01034f31, size: 25 bytes, params: 2, frame: 11
|
|
return findCodedLinks(a0)[0];
|
|
}
|
|
|
|
function findCodedLinks_loop(a0) { // fn#33558, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:3934, owner: findCodedLinks._loop, offset: 0x01034382, size: 2353 bytes, params: 2, frame: 27
|
|
var environment;
|
|
var r0;
|
|
var r13;
|
|
var r3;
|
|
var r10;
|
|
var r9;
|
|
var r12;
|
|
var tab;
|
|
var applicationId;
|
|
var skuId;
|
|
var r11;
|
|
var r5;
|
|
var r8;
|
|
var pathname;
|
|
var closure;
|
|
var moduleValue;
|
|
var isBuildOverrideLink;
|
|
const CodedLinkType = (require(4101) /* metro dependency 4101: CodedLink */).CodedLinkType;
|
|
var BUILD_OVERRIDE;
|
|
var moduleValue2;
|
|
var isManualBuildOverrideLink;
|
|
var MANUAL_BUILD_OVERRIDE;
|
|
var moduleValue3;
|
|
var isExperimentEmbedURL;
|
|
var EXPERIMENT;
|
|
var match;
|
|
var value5;
|
|
var protocol;
|
|
var moduleValue4;
|
|
var generateInviteKeyFromUrlParams;
|
|
var substring;
|
|
var value6;
|
|
var search;
|
|
var value7;
|
|
var getInvite;
|
|
var value8;
|
|
var moduleValue5;
|
|
var isEmbeddedApplicationInvite;
|
|
var includes;
|
|
var INVITE;
|
|
var EMBEDDED_ACTIVITY_INVITE;
|
|
var value9;
|
|
var TEMPLATE;
|
|
var value10;
|
|
var property;
|
|
var toUpperCase;
|
|
var value11;
|
|
var moduleValue6;
|
|
var value12;
|
|
var value13;
|
|
var CHANNEL_LINK;
|
|
var replace;
|
|
var value14;
|
|
var EVENT;
|
|
var guildId;
|
|
var guildEventId;
|
|
var HermesInternal;
|
|
var concat;
|
|
var value15;
|
|
var value16;
|
|
var recurrenceId;
|
|
var value17;
|
|
var value18;
|
|
var query;
|
|
var moduleValue7;
|
|
var parseOAuth2AuthorizeProps;
|
|
var oAuth2AuthorizeProps;
|
|
var clientId;
|
|
var value19;
|
|
var value20;
|
|
var scopes;
|
|
var value21;
|
|
var some;
|
|
var value22;
|
|
var APP_OAUTH2_LINK;
|
|
var value23;
|
|
var APP_DIRECTORY_PROFILE;
|
|
var value24;
|
|
var property2;
|
|
var APP_DIRECTORY_STOREFRONT;
|
|
var moduleValue8;
|
|
var makeStorefrontSKUCodedLink;
|
|
var storefrontSKUCodedLink;
|
|
var APP_DIRECTORY_STOREFRONT_SKU;
|
|
var value25;
|
|
var ACTIVITY_BOOKMARK;
|
|
var value26;
|
|
var GUILD_PRODUCT;
|
|
var property3;
|
|
var value27;
|
|
var SERVER_SHOP;
|
|
var value28;
|
|
var SOCIAL_LAYER_STOREFRONT;
|
|
var property4;
|
|
var property5;
|
|
var questsEmbedCode;
|
|
var QUESTS_EMBED;
|
|
var moduleValue9;
|
|
var parse;
|
|
var value29;
|
|
var GAME_SHOPS;
|
|
var hash;
|
|
var value30;
|
|
var COLLECTIBLES_SHOP;
|
|
var value31;
|
|
var value32;
|
|
var SOCIAL_LAYER_STOREFRONT_APP;
|
|
const env0_0 = a0;
|
|
let length = env0_1.length;
|
|
if (length >= 10) {
|
|
return 0;
|
|
}
|
|
let value = environment.__proto__;
|
|
const getPathsFromURLBinding = getPathsFromURL;
|
|
const value2 = undefined;
|
|
const {url, inviteHostRemainingPath, templateHostRemainingPath,
|
|
primaryHostRemainingPath} = getPathsFromURLBinding(a0);
|
|
const value4 = null;
|
|
if (value4 != url) {
|
|
pathname = url.pathname;
|
|
reducibleJoin111: while (true) {
|
|
if (value4 != pathname) {
|
|
closure = _loopAdd;
|
|
moduleValue = require(4102) /* metro dependency 4102: BuildOverrideUtils */;
|
|
isBuildOverrideLink = moduleValue.isBuildOverrideLink;
|
|
reducibleJoin5: while (true) {
|
|
if (Reflect.apply(isBuildOverrideLink, moduleValue, [a0])) {
|
|
BUILD_OVERRIDE = CodedLinkType.BUILD_OVERRIDE;
|
|
closure(BUILD_OVERRIDE, a0);
|
|
break reducibleJoin5;
|
|
}
|
|
break reducibleJoin5;
|
|
}
|
|
moduleValue2 = require(4102) /* metro dependency 4102: BuildOverrideUtils */;
|
|
isManualBuildOverrideLink = moduleValue2.isManualBuildOverrideLink;
|
|
reducibleJoin7: while (true) {
|
|
if (Reflect.apply(isManualBuildOverrideLink, moduleValue2, [a0])) {
|
|
MANUAL_BUILD_OVERRIDE = CodedLinkType.MANUAL_BUILD_OVERRIDE;
|
|
closure(MANUAL_BUILD_OVERRIDE, a0);
|
|
break reducibleJoin7;
|
|
}
|
|
break reducibleJoin7;
|
|
}
|
|
moduleValue3 = require(4105) /* metro dependency 4105: ExperimentEmbedUtils */;
|
|
isExperimentEmbedURL = moduleValue3.isExperimentEmbedURL;
|
|
reducibleJoin9: while (true) {
|
|
if (Reflect.apply(isExperimentEmbedURL, moduleValue3, [a0])) {
|
|
EXPERIMENT = CodedLinkType.EXPERIMENT;
|
|
closure(EXPERIMENT, a0);
|
|
break reducibleJoin9;
|
|
}
|
|
break reducibleJoin9;
|
|
}
|
|
reducibleJoin11: while (true) {
|
|
if (value4 == inviteHostRemainingPath) {
|
|
r0 = value2;
|
|
break reducibleJoin11;
|
|
}
|
|
match = inviteHostRemainingPath.match;
|
|
value5 = Reflect.apply(match, inviteHostRemainingPath, [env1_5]);
|
|
r0 = value5;
|
|
break reducibleJoin11;
|
|
}
|
|
if (value4 != r0) {
|
|
protocol = url.protocol;
|
|
reducibleJoin20: while (true) {
|
|
reducibleJoin16: while (true) {
|
|
if (protocol === 'https:') {
|
|
moduleValue4 = require(4098) /* metro dependency 4098: InviteCodeUtils */;
|
|
value7 = moduleValue4.generateInviteKeyFromUrlParams(inviteHostRemainingPath.substring(1),
|
|
|
|
url.search);
|
|
value8 = InviteStore.getInvite(value7);
|
|
if (value4 == value8) {
|
|
break reducibleJoin16;
|
|
}
|
|
moduleValue5 = require(4116) /* metro dependency 4116: InviteTypeUtils */;
|
|
if (moduleValue5.isEmbeddedApplicationInvite(value8)) {
|
|
EMBEDDED_ACTIVITY_INVITE = CodedLinkType.EMBEDDED_ACTIVITY_INVITE;
|
|
closure(EMBEDDED_ACTIVITY_INVITE, value7);
|
|
break reducibleJoin20;
|
|
}
|
|
break reducibleJoin16;
|
|
}
|
|
protocol = url.protocol;
|
|
if (protocol !== 'http:') {
|
|
break reducibleJoin20;
|
|
}
|
|
moduleValue4 = require(4098) /* metro dependency 4098: InviteCodeUtils */;
|
|
generateInviteKeyFromUrlParams = moduleValue4.generateInviteKeyFromUrlParams;
|
|
substring = inviteHostRemainingPath.substring;
|
|
value6 = Reflect.apply(substring, inviteHostRemainingPath, [1]);
|
|
search = url.search;
|
|
value7 = Reflect.apply(generateInviteKeyFromUrlParams, moduleValue4, [value6, search]);
|
|
getInvite = InviteStore.getInvite;
|
|
value8 = Reflect.apply(getInvite, InviteStore, [value7]);
|
|
if (value4 == value8) {
|
|
break reducibleJoin16;
|
|
}
|
|
moduleValue5 = require(4116) /* metro dependency 4116: InviteTypeUtils */;
|
|
isEmbeddedApplicationInvite = moduleValue5.isEmbeddedApplicationInvite;
|
|
if (Reflect.apply(isEmbeddedApplicationInvite, moduleValue5, [value8])) {
|
|
EMBEDDED_ACTIVITY_INVITE = CodedLinkType.EMBEDDED_ACTIVITY_INVITE;
|
|
closure(EMBEDDED_ACTIVITY_INVITE, value7);
|
|
break reducibleJoin20;
|
|
}
|
|
break reducibleJoin16;
|
|
}
|
|
includes = a0.includes;
|
|
if (Reflect.apply(includes, a0, ['\\'])) {
|
|
return 1;
|
|
}
|
|
INVITE = CodedLinkType.INVITE;
|
|
closure(INVITE, value7);
|
|
break reducibleJoin20;
|
|
}
|
|
}
|
|
reducibleJoin22: while (true) {
|
|
if (value4 == templateHostRemainingPath) {
|
|
r0 = value2;
|
|
break reducibleJoin22;
|
|
}
|
|
match = templateHostRemainingPath.match;
|
|
value9 = Reflect.apply(match, templateHostRemainingPath, [env1_5]);
|
|
r0 = value9;
|
|
break reducibleJoin22;
|
|
}
|
|
reducibleJoin24: while (true) {
|
|
if (value4 == r0) {
|
|
break reducibleJoin24;
|
|
}
|
|
TEMPLATE = CodedLinkType.TEMPLATE;
|
|
substring = templateHostRemainingPath.substring;
|
|
closure(TEMPLATE, Reflect.apply(substring, templateHostRemainingPath, [1]));
|
|
break reducibleJoin24;
|
|
}
|
|
reducibleJoin26: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r13 = value2;
|
|
break reducibleJoin26;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value10 = Reflect.apply(match, primaryHostRemainingPath, [env1_7]);
|
|
r13 = value10;
|
|
break reducibleJoin26;
|
|
}
|
|
if (value4 != r13) {
|
|
property = r13[1];
|
|
toUpperCase = property.toUpperCase;
|
|
value11 = Reflect.apply(toUpperCase, property, []);
|
|
INVITE = CodedLinkType.INVITE;
|
|
if (value11 === INVITE) {
|
|
includes = a0.includes;
|
|
if (Reflect.apply(includes, a0, ['\\'])) {
|
|
return 1;
|
|
}
|
|
moduleValue6 = require(4098) /* metro dependency 4098: InviteCodeUtils */;
|
|
generateInviteKeyFromUrlParams = moduleValue6.generateInviteKeyFromUrlParams;
|
|
property = r13[2];
|
|
search = url.search;
|
|
value12 = Reflect.apply(generateInviteKeyFromUrlParams, moduleValue6, [property, search]);
|
|
INVITE = CodedLinkType.INVITE;
|
|
closure(INVITE, value12);
|
|
} else {
|
|
closure(value11, r13[2]);
|
|
}
|
|
}
|
|
reducibleJoin33: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r3 = value2;
|
|
break reducibleJoin33;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value13 = Reflect.apply(match, primaryHostRemainingPath, [env1_6]);
|
|
r3 = value13;
|
|
break reducibleJoin33;
|
|
}
|
|
reducibleJoin35: while (true) {
|
|
if (value4 == r3) {
|
|
break reducibleJoin35;
|
|
}
|
|
CHANNEL_LINK = CodedLinkType.CHANNEL_LINK;
|
|
replace = primaryHostRemainingPath.replace;
|
|
closure(CHANNEL_LINK, Reflect.apply(replace, primaryHostRemainingPath, ['/channels/', '']));
|
|
break reducibleJoin35;
|
|
}
|
|
pathname = url.pathname;
|
|
reducibleJoin40: while (true) {
|
|
if (value4 == pathname) {
|
|
r13 = value4;
|
|
break reducibleJoin40;
|
|
}
|
|
match = pathname.match;
|
|
value14 = Reflect.apply(match, pathname, [env1_8]);
|
|
reducibleJoin39: while (true) {
|
|
if (value4 != value14) {
|
|
length = value14.length;
|
|
if (length >= 4) {
|
|
r3 = {guildId: value14[1], guildEventId: value14[2], recurrenceId: value14[4]};
|
|
break reducibleJoin39;
|
|
}
|
|
r3 = value4;
|
|
break reducibleJoin39;
|
|
}
|
|
r3 = value4;
|
|
break reducibleJoin39;
|
|
}
|
|
r13 = r3;
|
|
break reducibleJoin40;
|
|
}
|
|
reducibleJoin44: while (true) {
|
|
if (value4 == r13) {
|
|
break reducibleJoin44;
|
|
}
|
|
EVENT = CodedLinkType.EVENT;
|
|
guildId = r13.guildId;
|
|
guildEventId = r13.guildEventId;
|
|
HermesInternal = global.HermesInternal;
|
|
concat = HermesInternal.concat;
|
|
value15 = '';
|
|
value16 = value15 + guildId + '-' + guildEventId;
|
|
recurrenceId = r13.recurrenceId;
|
|
reducibleJoin43: while (true) {
|
|
if (value4 != recurrenceId) {
|
|
recurrenceId = r13.recurrenceId;
|
|
HermesInternal = global.HermesInternal;
|
|
concat = HermesInternal.concat;
|
|
value17 = '-' + recurrenceId;
|
|
r3 = value17;
|
|
break reducibleJoin43;
|
|
}
|
|
r3 = value15;
|
|
break reducibleJoin43;
|
|
}
|
|
closure(EVENT, value16 + r3);
|
|
break reducibleJoin44;
|
|
}
|
|
reducibleJoin46: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r3 = value2;
|
|
break reducibleJoin46;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value18 = Reflect.apply(match, primaryHostRemainingPath, [env1_16]);
|
|
r3 = value18;
|
|
break reducibleJoin46;
|
|
}
|
|
reducibleJoin56: while (true) {
|
|
if (value4 == r3) {
|
|
break reducibleJoin56;
|
|
}
|
|
query = url.query;
|
|
if (value4 == query) {
|
|
break reducibleJoin56;
|
|
}
|
|
moduleValue7 = require(4120) /* metro dependency 4120: Authorize */;
|
|
parseOAuth2AuthorizeProps = moduleValue7.parseOAuth2AuthorizeProps;
|
|
query = url.query;
|
|
oAuth2AuthorizeProps = Reflect.apply(parseOAuth2AuthorizeProps, moduleValue7, [query]);
|
|
clientId = oAuth2AuthorizeProps.clientId;
|
|
value19 = value4 == clientId;
|
|
reducibleJoin50: while (true) {
|
|
if (value19) {
|
|
r3 = value19;
|
|
break reducibleJoin50;
|
|
}
|
|
value20 = clientId === '';
|
|
r3 = value20;
|
|
break reducibleJoin50;
|
|
}
|
|
reducibleJoin54: while (true) {
|
|
if (r3) {
|
|
break reducibleJoin54;
|
|
}
|
|
scopes = oAuth2AuthorizeProps.scopes;
|
|
value21 = value4 != scopes;
|
|
reducibleJoin53: while (true) {
|
|
if (value21) {
|
|
some = scopes.some;
|
|
value22 = Reflect.apply(some, scopes, [function(a0) {
|
|
var APPLICATIONS_COMMANDS = require(dependencyMap[14]).OAuth2Scopes.APPLICATIONS_COMMANDS;
|
|
return a0 !== APPLICATIONS_COMMANDS;
|
|
}]);
|
|
r10 = value22;
|
|
break reducibleJoin53;
|
|
}
|
|
r10 = value21;
|
|
break reducibleJoin53;
|
|
}
|
|
r3 = r10;
|
|
break reducibleJoin54;
|
|
}
|
|
if (r3) {
|
|
break reducibleJoin56;
|
|
}
|
|
APP_OAUTH2_LINK = CodedLinkType.APP_OAUTH2_LINK;
|
|
closure(APP_OAUTH2_LINK, clientId);
|
|
break reducibleJoin56;
|
|
}
|
|
reducibleJoin58: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r9 = value2;
|
|
break reducibleJoin58;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value23 = Reflect.apply(match, primaryHostRemainingPath, [env1_9]);
|
|
r9 = value23;
|
|
break reducibleJoin58;
|
|
}
|
|
reducibleJoin60: while (true) {
|
|
if (value4 == r9) {
|
|
break reducibleJoin60;
|
|
}
|
|
property = r9[2];
|
|
APP_DIRECTORY_PROFILE = CodedLinkType.APP_DIRECTORY_PROFILE;
|
|
closure(APP_DIRECTORY_PROFILE, property);
|
|
break reducibleJoin60;
|
|
}
|
|
reducibleJoin62: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r9 = value2;
|
|
break reducibleJoin62;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value24 = Reflect.apply(match, primaryHostRemainingPath, [env1_10]);
|
|
r9 = value24;
|
|
break reducibleJoin62;
|
|
}
|
|
reducibleJoin66: while (true) {
|
|
if (value4 == r9) {
|
|
break reducibleJoin66;
|
|
}
|
|
property = r9[2];
|
|
property2 = r9[3];
|
|
if (value4 != property2) {
|
|
moduleValue8 = require(4126) /* metro dependency 4126: storefrontMessageEmbedCodedLink */;
|
|
makeStorefrontSKUCodedLink = moduleValue8.makeStorefrontSKUCodedLink;
|
|
storefrontSKUCodedLink = Reflect.apply(makeStorefrontSKUCodedLink, moduleValue8, [property,
|
|
property2]);
|
|
APP_DIRECTORY_STOREFRONT_SKU = CodedLinkType.APP_DIRECTORY_STOREFRONT_SKU;
|
|
closure(APP_DIRECTORY_STOREFRONT_SKU, storefrontSKUCodedLink);
|
|
break reducibleJoin66;
|
|
}
|
|
APP_DIRECTORY_STOREFRONT = CodedLinkType.APP_DIRECTORY_STOREFRONT;
|
|
closure(APP_DIRECTORY_STOREFRONT, property);
|
|
break reducibleJoin66;
|
|
}
|
|
reducibleJoin68: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r9 = value2;
|
|
break reducibleJoin68;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value25 = Reflect.apply(match, primaryHostRemainingPath, [env1_11]);
|
|
r9 = value25;
|
|
break reducibleJoin68;
|
|
}
|
|
reducibleJoin70: while (true) {
|
|
if (value4 == r9) {
|
|
break reducibleJoin70;
|
|
}
|
|
property = r9[1];
|
|
ACTIVITY_BOOKMARK = CodedLinkType.ACTIVITY_BOOKMARK;
|
|
closure(ACTIVITY_BOOKMARK, property);
|
|
break reducibleJoin70;
|
|
}
|
|
reducibleJoin72: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r10 = value2;
|
|
break reducibleJoin72;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value26 = Reflect.apply(match, primaryHostRemainingPath, [env1_12]);
|
|
r10 = value26;
|
|
break reducibleJoin72;
|
|
}
|
|
reducibleJoin74: while (true) {
|
|
if (value4 == r10) {
|
|
break reducibleJoin74;
|
|
}
|
|
GUILD_PRODUCT = CodedLinkType.GUILD_PRODUCT;
|
|
property = r10[1];
|
|
property3 = r10[2];
|
|
HermesInternal = global.HermesInternal;
|
|
concat = HermesInternal.concat;
|
|
closure(GUILD_PRODUCT, '' + property + '-' + property3);
|
|
break reducibleJoin74;
|
|
}
|
|
reducibleJoin76: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r10 = value2;
|
|
break reducibleJoin76;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value27 = Reflect.apply(match, primaryHostRemainingPath, [env1_14]);
|
|
r10 = value27;
|
|
break reducibleJoin76;
|
|
}
|
|
reducibleJoin78: while (true) {
|
|
if (value4 == r10) {
|
|
break reducibleJoin78;
|
|
}
|
|
SERVER_SHOP = CodedLinkType.SERVER_SHOP;
|
|
closure(SERVER_SHOP, r10[1]);
|
|
break reducibleJoin78;
|
|
}
|
|
reducibleJoin80: while (true) {
|
|
if (value4 == primaryHostRemainingPath) {
|
|
r10 = value2;
|
|
break reducibleJoin80;
|
|
}
|
|
match = primaryHostRemainingPath.match;
|
|
value28 = Reflect.apply(match, primaryHostRemainingPath, [env1_13]);
|
|
r10 = value28;
|
|
break reducibleJoin80;
|
|
}
|
|
reducibleJoin84: while (true) {
|
|
if (value4 == r10) {
|
|
break reducibleJoin84;
|
|
}
|
|
SOCIAL_LAYER_STOREFRONT = CodedLinkType.SOCIAL_LAYER_STOREFRONT;
|
|
property = r10[3];
|
|
property4 = r10[1];
|
|
reducibleJoin83: while (true) {
|
|
if (value4 != property4) {
|
|
r12 = property4;
|
|
break reducibleJoin83;
|
|
}
|
|
property5 = r10[2];
|
|
r12 = property5;
|
|
break reducibleJoin83;
|
|
}
|
|
HermesInternal = global.HermesInternal;
|
|
concat = HermesInternal.concat;
|
|
closure(SOCIAL_LAYER_STOREFRONT, '' + property + '-' + r12);
|
|
break reducibleJoin84;
|
|
}
|
|
questsEmbedCode = parseQuestsEmbedCode(a0);
|
|
reducibleJoin86: while (true) {
|
|
if (value4 == questsEmbedCode) {
|
|
break reducibleJoin86;
|
|
}
|
|
QUESTS_EMBED = CodedLinkType.QUESTS_EMBED;
|
|
closure(QUESTS_EMBED, questsEmbedCode);
|
|
break reducibleJoin86;
|
|
}
|
|
reducibleJoin109: while (true) {
|
|
if (primaryHostRemainingPath !== '/shop') {
|
|
break reducibleJoin109;
|
|
}
|
|
query = url.query;
|
|
reducibleJoin89: while (true) {
|
|
if (value4 != query) {
|
|
moduleValue9 = require(4123) /* metro dependency 4123 */;
|
|
parse = moduleValue9.parse;
|
|
query = url.query;
|
|
value29 = Reflect.apply(parse, moduleValue9, [query]);
|
|
r3 = value29;
|
|
break reducibleJoin89;
|
|
}
|
|
r3 = value4;
|
|
break reducibleJoin89;
|
|
}
|
|
reducibleJoin91: while (true) {
|
|
if (value4 == r3) {
|
|
tab = value2;
|
|
break reducibleJoin91;
|
|
}
|
|
tab = r3.tab;
|
|
break reducibleJoin91;
|
|
}
|
|
GAME_SHOPS = CollectibleShopTab.GAME_SHOPS;
|
|
if (tab === GAME_SHOPS) {
|
|
reducibleJoin94: while (true) {
|
|
if (value4 == r3) {
|
|
applicationId = value2;
|
|
break reducibleJoin94;
|
|
}
|
|
applicationId = r3.applicationId;
|
|
break reducibleJoin94;
|
|
}
|
|
if (value4 != applicationId) {
|
|
reducibleJoin97: while (true) {
|
|
if (value4 == r3) {
|
|
skuId = value2;
|
|
break reducibleJoin97;
|
|
}
|
|
skuId = r3.skuId;
|
|
break reducibleJoin97;
|
|
}
|
|
if (value4 != skuId) {
|
|
applicationId = r3.applicationId;
|
|
skuId = r3.skuId;
|
|
value31 = typeof applicationId === 'string';
|
|
reducibleJoin107: while (true) {
|
|
if (value31) {
|
|
value32 = typeof skuId === 'string';
|
|
r3 = value32;
|
|
break reducibleJoin107;
|
|
}
|
|
r3 = value31;
|
|
break reducibleJoin107;
|
|
}
|
|
if (r3) {
|
|
SOCIAL_LAYER_STOREFRONT_APP = CodedLinkType.SOCIAL_LAYER_STOREFRONT_APP;
|
|
concat = global.HermesInternal.concat;
|
|
closure(SOCIAL_LAYER_STOREFRONT_APP, '' + skuId + '-' + applicationId);
|
|
break reducibleJoin109;
|
|
}
|
|
break reducibleJoin109;
|
|
}
|
|
}
|
|
}
|
|
hash = url.hash;
|
|
reducibleJoin100: while (true) {
|
|
if (value4 == hash) {
|
|
r11 = value2;
|
|
break reducibleJoin100;
|
|
}
|
|
match = hash.match;
|
|
value30 = Reflect.apply(match, hash, [env1_17]);
|
|
r11 = value30;
|
|
break reducibleJoin100;
|
|
}
|
|
COLLECTIBLES_SHOP = CodedLinkType.COLLECTIBLES_SHOP;
|
|
value = '';
|
|
r9 = value4 != tab ? tab : value;
|
|
reducibleJoin103: while (true) {
|
|
if (value4 == r11) {
|
|
r5 = value2;
|
|
break reducibleJoin103;
|
|
}
|
|
property = r11[1];
|
|
r5 = property;
|
|
break reducibleJoin103;
|
|
}
|
|
r8 = value4 != r5 ? r5 : value;
|
|
HermesInternal = global.HermesInternal;
|
|
concat = HermesInternal.concat;
|
|
closure(COLLECTIBLES_SHOP, value + r9 + '-' + r8);
|
|
break reducibleJoin109;
|
|
}
|
|
return value2;
|
|
}
|
|
break reducibleJoin111;
|
|
}
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
function _fun33566(a0) { // fn#33566, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:8170, offset: 0x01034f16, size: 27 bytes, params: 2, frame: 13
|
|
return isHostMatch(a0, env0_0);
|
|
}
|
|
|
|
function _loopAdd(a0, a1) { // fn#33559, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:4254:4137, owner: findCodedLinks._loop.add, offset: 0x01034cb3, size: 79 bytes, params: 3, frame: 13
|
|
let binding = env1_0;
|
|
if (!binding.has(a1)) {
|
|
binding = env1_0;
|
|
binding.add(a1);
|
|
binding = env1_1;
|
|
binding.push({type: a0, code: a1, url: env0_0});
|
|
}
|
|
}
|
|
|