Files
discord-decomp/sources/by-id/module-01528.js
T
2026-07-28 01:06:53 +03:00

1064 lines
40 KiB
JavaScript

/* Metro module 1528; source: unknown; dependencies: [77, 65, 1521, 1529, 1503, 1523] */
import Module00065 from './module-00065.js'; /* Metro dependency 65 */
import Module00077 from './module-00077.js'; /* Metro dependency 77 */
import * as Module01523Module from './module-01523.js'; /* Metro dependency 1523 */
function _fun17286(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#17286, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:6, offset: 0x00e68cf3, size: 176 bytes, params: 8, frame: 18
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
exports.default = getStateFromPath;
function joinPaths_17287() { // fn#17287, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:126, offset: 0x00e68da3, size: 143 bytes, params: 1, frame: 18
var r1;
var value5;
let value = arguments.length;
const Array = global.Array;
const array = new Array(value);
const value4 = 0;
if (value4 < value) {
for (r1 = value4; true; r1 = value5) {
array[r1] = arguments[r1];
value5 = typeof r1 === 'bigint' ? r1 + 1n : +r1 + 1;
if (!(value5 < value)) {
break;
}
}
}
const items2 = [];
const concat = items2.concat;
const filter = concat.apply(items2, Module00065(array.map(function(a0) {
return a0.split('/');
}))).filter;
const Boolean = global.Boolean;
value = Reflect.apply(filter, value, [Boolean]);
return value.join('/');
}
function matchAgainstConfigs(a0, a1) { // fn#17289, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:324, offset: 0x00e68e32, size: 108 bytes, params: 3, frame: 17
var value;
var value2;
var error;
const env0_0 = a1;
const env0_2 = a0;
const matchAgainstConfigs_loop2 = matchAgainstConfigs_loop;
const iterator = a1[Symbol.iterator]();
const iterator2 = iterator.next;
let r2 = iterator;
let item2 = Reflect.apply(iterator2, r2, []);
let item = item2.value;
item2 = item2.done ? undefined : r2;
reducibleJoin2: while (true) {
if (item2 === undefined) {
return {routes: env0_1, remainingPath: env0_2};
}
break reducibleJoin2;
}
reducibleLoop2: while (true) {
try {
var env0_3 = item;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value = matchAgainstConfigs_loop2();
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value2 = value === 0;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
if (value2) {
r2 = item2;
} else {
try {
value = value === 1;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
reducibleJoin1: while (true) {
if (value) {
item2.return();
break reducibleLoop2;
}
r2 = item2;
break reducibleJoin1;
}
}
item2 = Reflect.apply(iterator2, r2, []);
item = item2.value;
item2 = item2.done ? undefined : r2;
if (item2 === undefined) {
break reducibleLoop2;
}
continue reducibleLoop2;
}
return {routes: env0_1, remainingPath: env0_2};
function matchAgainstConfigs_loop() { // fn#17290, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:372, owner: matchAgainstConfigs._loop, offset: 0x00e68e9e, size: 192 bytes, params: 1, frame: 17
var binding;
var value2;
var pattern;
var value6;
if (env0_3.regex) {
binding = env0_2;
value2 = binding.match(env0_3.regex);
if (value2) {
pattern = env0_3.pattern;
if (pattern != null) {
value6 = pattern.split('/').filter(function(a0) {
return a0.startsWith(':');
}).reduce(_fun17292, {});
}
var env0_1;
env0_1 = env0_3.routeNames.map(_fun17293);
env0_2 = env0_2.replace(value2[1], '');
return 1;
}
return undefined;
}
return 0;
function _fun17292(a0, a1, a2) { // fn#17292, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:543, offset: 0x00e68f5e, size: 102 bytes, params: 4, frame: 17
const Object = global.Object;
const assign = Object.assign;
let value = environment.__proto__.__proto__;
const binding = env2_3;
value = env0_0[2 * (a2 + 1)].replace(RegExp('\\/', ''), '');
value = binding({}, a1, value);
return Reflect.apply(assign, Object, [a0, value]);
}
function _fun17293(a0) { // fn#17293, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:652, offset: 0x00e68fc4, size: 163 bytes, params: 2, frame: 16
var environment;
var r2;
var path;
const env0_0 = a0;
let value = environment.__proto__;
value = require.find(_fun17294);
const value2 = undefined;
if (value == null) {
r2 = value2;
} else {
path = value.path;
if (path == null) {
r2 = value2;
} else {
value = path.split('/');
value = value.filter(function(a0) {
return a0.startsWith(':');
});
value = value.reduce(_fun17296, {});
r2 = value;
}
}
return r2 && global.Object.keys(r2).length ? {name: a0, params: r2} : {name: a0};
function _fun17294({screen}) { // fn#17294, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:680, offset: 0x00e69067, size: 22 bytes, params: 2, frame: 2
return screen === env0_0;
}
function _fun17296(a0, a1) { // fn#17296, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:819, offset: 0x00e6907d, size: 131 bytes, params: 3, frame: 16
var parse;
let value = environment.__proto__;
const property = env1_1[a1];
if (property) {
value = a1.replace(RegExp('^:', ''), '');
value = value.replace(RegExp('\\?$', ''), '');
parse = env0_1.parse;
a0[value] = parse == null ? property : parse[value] ? env0_1.parse[value](property) : property;
}
return a0;
}
}
}
}
function createNormalizedConfigs_17297(a0, a1) { // fn#17297, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:1121, offset: 0x00e69100, size: 515 bytes, params: 3, frame: 26
var r8;
var r13;
var joinPaths_17287Binding;
var createConfigItem_17299Binding;
var Object;
const value = undefined;
const r2 = arguments.length > 2 && value !== arguments[2] ? arguments[2] : [];
const r9 = arguments.length > 3 ? arguments[3] : value;
const r10 = arguments.length > 4 ? arguments[4] : value;
const r3 = arguments.length > 5 ? arguments[5] : value;
const items2 = [];
let push = r2.push;
Reflect.apply(push, r2, [a0]);
r10.push(a0);
const property = a1[a0];
const value6 = typeof property;
if (value6 === 'string') {
items2.push(createConfigItem_17299(a0, r2, r3 ? joinPaths_17287(r3, property) : property, property));
} else {
if (value6 !== 'object') {
r2.pop();
return items2;
}
var path = property.path;
if (typeof path !== 'string') {
if (property.screens) {
if (property.initialRouteName) {
r9.push({initialRouteName: property.initialRouteName, parentScreens: r10});
}
Object = global.Object;
Object.keys(property.screens).forEach(_fun17298);
}
r2.pop();
return items2;
}
if (property.exact) {
path = property.path;
if (value === path) {
throw new global.Error("A 'path' needs to be specified when specifying 'exact: true'. If you don't want this screen in the URL, specify it as empty string, e.g. `path: ''`.");
}
if (property.exact !== true) {
joinPaths_17287Binding = joinPaths_17287;
r8 = r3 || '';
path = property.path;
path = !path ? '' : path;
r13 = joinPaths_17287Binding(r8, path);
} else {
path = property.path;
path = !path ? '' : path;
r13 = path;
}
push = items2.push;
createConfigItem_17299Binding = createConfigItem_17299;
path = property.path;
Reflect.apply(push, items2, [createConfigItem_17299Binding(a0, r2, r13, path, property.parse)]);
if (property.screens) {
if (property.initialRouteName) {
r9.push({initialRouteName: property.initialRouteName, parentScreens: r10});
}
Object = global.Object;
Object.keys(property.screens).forEach(_fun17298);
}
r2.pop();
return items2;
}
if (property.exact !== true) {
joinPaths_17287Binding = joinPaths_17287;
r8 = r3 || '';
path = property.path;
path = !path ? '' : path;
r13 = joinPaths_17287Binding(r8, path);
} else {
path = property.path;
path = !path ? '' : path;
r13 = path;
}
items2.push(createConfigItem_17299(a0, r2, r13, property.path, property.parse));
if (property.screens) {
if (property.initialRouteName) {
r9.push({initialRouteName: property.initialRouteName, parentScreens: r10});
}
Object = global.Object;
Object.keys(property.screens).forEach(_fun17298);
}
}
r2.pop();
return items2;
function _fun17298(a0) { // fn#17298, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:1903, offset: 0x00e69303, size: 122 bytes, params: 2, frame: 23
const normalizedConfigs_17297 = createNormalizedConfigs_17297(a0, env0_5.screens, env0_0, env0_1, env1_4(env0_2),
env0_6 ?? Module00077);
const push = Module00065.push;
push.apply(Module00065, env1_4(normalizedConfigs_17297));
}
}
function createConfigItem_17299(a0, a1, a2, a3, a4) { // fn#17299, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:2002, offset: 0x00e6937d, size: 206 bytes, params: 6, frame: 18
var r2;
var RegExp;
var value6;
var regExp;
const object = {screen: a0};
let value = a2.split('/');
const filter = value.filter;
const Boolean = global.Boolean;
value = Reflect.apply(filter, value, [Boolean]);
value = value.join('/');
if (value) {
RegExp = global.RegExp;
value6 = '^(' + value.split('/').map(_fun17300).join('') + ')';
regExp = new RegExp();
} else {
r2 = undefined;
}
object.regex = r2;
object.pattern = value;
object.path = a3;
object.routeNames = Module00065(a1);
object.parse = a4;
return object;
function _fun17300(a0) { // fn#17300, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:2138, offset: 0x00e6944b, size: 156 bytes, params: 2, frame: 14
var r4;
var r0;
var value;
if (a0.startsWith(':')) {
value = '?';
value = '(([^/]+\\/)' + (a0.endsWith(value) ? value : '') + ')';
r0 = value;
} else {
value = '.*';
if (a0 === '*') {
r4 = value;
} else {
value = environment.__proto__;
value = (importDefault(1529) /* metro dependency 1529 */)(a0);
r4 = value;
}
value = '' + r4 + '\\/';
r0 = value;
}
return r0;
}
}
function createNestedStateObject(a0, a1, a2, a3) { // fn#17303, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:2769, offset: 0x00e69674, size: 432 bytes, params: 5, frame: 27
var r2;
var r3;
var r14;
var r13;
var r8;
var r6;
var r1;
var shift;
var value;
var items2;
var value2;
var findInitialRouteBinding;
var name;
var value3;
var initialRoute;
var push;
var createStateObjectBinding;
var length;
var value4;
var initialRoute2;
var index;
var routes;
var value5;
var property;
var state;
var value6;
var value7;
var parseQueryParamsBinding;
var iterator;
var iterator2;
var item;
var item2;
var routeNames;
var routeNames2;
var value8;
var value9;
var parse;
var error;
var queryParams;
var Object;
var assign;
var params;
exceptionSkip19: while (true) {
exceptionLanding19: while (true) {
shift = a1.shift;
value = Reflect.apply(shift, a1, []);
items2 = [];
value2 = environment;
findInitialRouteBinding = findInitialRoute;
name = value.name;
value3 = undefined;
initialRoute = findInitialRouteBinding(name, items2, a2);
push = items2.push;
name = value.name;
Reflect.apply(push, items2, [name]);
createStateObjectBinding = createStateObject;
length = a1.length;
value = createStateObjectBinding(initialRoute, value, length === 0);
length = a1.length;
if (length > 0) {
shift = a1.shift;
value4 = Reflect.apply(shift, a1, []);
if (!value4) {
break;
}
r2 = value4;
r3 = value;
while (true) {
findInitialRouteBinding = findInitialRoute;
name = r2.name;
initialRoute2 = findInitialRouteBinding(name, items2, a2);
index = r3.index;
if (index) {
r14 = index;
} else {
value5 = r3.routes.length - 1;
r14 = value5;
}
routes = r3.routes;
property = routes[r14];
createStateObjectBinding = createStateObject;
length = a1.length;
property.state = createStateObjectBinding(initialRoute2, r2, length === 0);
length = a1.length;
if (!(length > 0)) {
r13 = r3;
continue;
}
routes = r3.routes;
state = routes[r14].state;
r13 = state;
push = items2.push;
name = r2.name;
Reflect.apply(push, items2, [name]);
shift = a1.shift;
value6 = Reflect.apply(shift, a1, []);
if (value6) {
r2 = value6;
r3 = r13;
continue;
}
break;
}
}
value7 = (importDefault(1503) /* metro dependency 1503 */)(value);
value7.path = a0;
parseQueryParamsBinding = parseQueryParams;
if (a3) {
name = value7.name;
iterator = a3[Symbol.iterator]();
iterator2 = iterator.next;
r8 = iterator;
loopExit9: while (true) {
item2 = Reflect.apply(iterator2, r8, []);
item = item2.value;
item2 = item2.done ? undefined : r8;
if (item2 === value3) {
r6 = value3;
break loopExit9;
}
try {
routeNames = item.routeNames;
} catch (error) {
break exceptionLanding19;
}
try {
routeNames2 = item.routeNames;
} catch (error) {
break exceptionLanding19;
}
try {
length = routeNames2.length;
} catch (error) {
break exceptionLanding19;
}
try {
value8 = length - 1;
} catch (error) {
break exceptionLanding19;
}
try {
property = routeNames[value8];
} catch (error) {
break exceptionLanding19;
}
try {
value9 = name === property;
} catch (error) {
break exceptionLanding19;
}
if (value9) {
try {
parse = item.parse;
} catch (error) {
break exceptionLanding19;
}
item2.return();
r6 = parse;
break loopExit9;
}
r8 = item2;
continue;
}
r1 = r6;
} else {
r1 = value3;
}
queryParams = parseQueryParamsBinding(a0, r1);
if (queryParams) {
Object = global.Object;
assign = Object.assign;
params = value7.params;
value7.params = Reflect.apply(assign, Object, [{}, params, queryParams]);
}
return value;
break exceptionSkip19;
}
try {
item2.return();
} catch {
}
throw error;
break exceptionSkip19;
}
}
function parseQueryParams(a0, a1) { // fn#17304, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:3283, offset: 0x00e69824, size: 144 bytes, params: 3, frame: 14
const env0_0 = a1;
const property = a0.split('?')[1];
value = undefined;
const value2 = (Module01523Module).parse(property);
if (a1) {
global.Object.keys(value2).forEach(_fun17305);
}
const Object = global.Object;
return Object.keys(value2).length ? value2 : value;
function _fun17305(a0) { // fn#17305, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:3390, offset: 0x00e698b4, size: 89 bytes, params: 2, frame: 14
var binding;
const Object = global.Object;
if (Object.hasOwnProperty.call(require, a0) && typeof env0_1[a0] === 'string') {
binding = env0_1;
binding[a0] = require[a0](binding[a0]);
}
}
}
function getStateFromPath(a0, a1) { // fn#17306, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:3521, offset: 0x00e6990d, size: 568 bytes, params: 3, frame: 26
var r1;
var r10;
var nestedStateObject;
var value11;
var value12;
var value14;
if (a1) {
(importDefault(1521) /* metro dependency 1521 */)(a1);
}
const items3 = [];
if (a1 != null && a1.initialRouteName) {
items3.push({initialRouteName: a1.initialRouteName, parentScreens: []});
}
let value = undefined;
const screens = a1 == null ? value : a1.screens;
const value4 = a0.replace(RegExp('\\/+', 'g'), '/').replace(RegExp('^\\/', ''), '').replace(RegExp('\\?.*$', ''),
'');
const r2 = value4.endsWith('/') ? value4 : '' + value4 + '/';
if (value === screens) {
value12 = r2.split('/');
value14 = value12.filter(global.Boolean).map(function(a0) {
return {name: (0, global.decodeURIComponent)(a0)};
});
return value14.length ? createNestedStateObject(a0, value14, items3) : value;
}
const items2 = [];
const concat = items2.concat;
const apply = concat.apply;
let Object = global.Object;
const value7 = Object.keys(screens);
const value9 = Reflect.apply(apply, concat, [items2, Module00065(value7.map(_fun17308))]).sort(_fun17309);
value9.reduce(_fun17310, {});
if (r2 === '/') {
value11 = value9.find(function(a0) {
return a0.path === '' && a0.routeNames.every(_fun17314);
});
return value11 ? createNestedStateObject(a0, value11.routeNames.map(_fun17316), items3, value9) : value;
}
const value10 = matchAgainstConfigs(r2, value9.map(function(a0) {
var r0;
var RegExp;
var Object = global.Object;
var assign = Object.assign;
var value = undefined;
if (a0.regex) {
RegExp = global.RegExp;
value = a0.regex.source + '$';
value = new RegExp(value);
r0 = value;
} else {
r0 = value;
}
return Reflect.apply(assign, Object, [{}, a0, {regex: r0}]);
}));
const routes = value10.routes;
value10.remainingPath;
if (value === routes) {
r1 = value;
r10 = value;
} else {
nestedStateObject = createNestedStateObject(a0, routes, items3, value9);
r1 = nestedStateObject;
r10 = nestedStateObject;
}
if (r10 == null) {
return value;
}
return r1 ?? value;
function _fun17308(a0) { // fn#17308, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:3986, offset: 0x00e69b5f, size: 37 bytes, params: 2, frame: 19
return createNormalizedConfigs_17297(a0, screens, [], env0_0, []);
}
function _fun17310(a0, a1) { // fn#17310, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:4520, offset: 0x00e69d11, size: 254 bytes, params: 3, frame: 24
var environment;
var routeNames;
var routeNames2;
var value;
var Error;
var Object;
var assign;
let pattern = a1.pattern;
if (a0[pattern]) {
pattern = a1.pattern;
routeNames = a0[pattern].routeNames;
routeNames2 = a1.routeNames;
if (routeNames.length > routeNames2.length ? routeNames2.every(function(a0, a1) {
return routeNames[a1] === a0;
}) : routeNames.every(_fun17312)) {
Object = global.Object;
assign = Object.assign;
value = environment.__proto__;
return Reflect.apply(assign, Object, [a0, env1_3({}, a1.pattern, a1)]);
}
Error = global.Error;
pattern = a1.pattern;
value = routeNames.join(' > ');
value = "Found conflicting screens with the same pattern. The pattern '" + pattern + "' resolves to both '" + value + "' and '" + routeNames2.join(' > ') + "'. Patterns must be unique and cannot resolve to more than one screen.";
throw new Error();
}
Object = global.Object;
assign = Object.assign;
value = environment.__proto__;
return Reflect.apply(assign, Object, [a0, env1_3({}, a1.pattern, a1)]);
function _fun17312(a0, a1) { // fn#17312, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:4670, offset: 0x00d3a3ab, size: 23 bytes, params: 3, frame: 2
return routeNames[a1] === a0;
}
}
function _fun17313(a0) { // fn#17313, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:4998, offset: 0x00e69e0f, size: 46 bytes, params: 2, frame: 12
return a0.path === '' && a0.routeNames.every(_fun17314);
function _fun17314(a0) { // fn#17314, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:5049, offset: 0x00e69e3d, size: 52 bytes, params: 2, frame: 11
var environment;
const env0_0 = a0;
let value = environment.__proto__;
value = env1_2.find(_fun17315);
return !(value != null && value.path);
function _fun17315({screen}) { // fn#17315, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:5092, offset: 0x00e69067, size: 22 bytes, params: 2, frame: 2
return screen === env0_0;
}
}
}
}
}
function findInitialRoute(a0, a1, a2) { // fn#17301, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:2316, offset: 0x00e694e7, size: 187 bytes, params: 4, frame: 23
var r10;
var r9;
var initialRouteName;
var length;
var parentScreens;
var length2;
var value3;
var value4;
var value5;
var property;
var localeCompare;
var property2;
var value6;
var value7;
var value8;
var value9;
var value10;
var value11;
var error;
const value = undefined;
const iterator = a2[Symbol.iterator]();
const iterator2 = iterator.next;
const value2 = 0;
let r2 = iterator;
let item2 = Reflect.apply(iterator2, r2, []);
let item = item2.value;
item2 = item2.done ? undefined : r2;
reducibleJoin2: while (true) {
if (item2 === value) {
return value;
}
break reducibleJoin2;
}
reducibleLoop2: while (true) {
try {
length = a1.length;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
parentScreens = item.parentScreens;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
length2 = parentScreens.length;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value3 = length !== length2;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
if (value3) {
r2 = item2;
} else {
value4 = true;
try {
length = a1.length;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value5 = value2 < length;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
if (value5) {
r10 = value2;
reducibleLoop10: while (true) {
try {
property = a1[r10];
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
localeCompare = property.localeCompare;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
parentScreens = item.parentScreens;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
property2 = parentScreens[r10];
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value6 = Reflect.apply(localeCompare, property, [property2]);
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value7 = value2 !== value6;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
if (value7) {
value10 = false;
r9 = value10;
break reducibleLoop10;
}
try {
value8 = typeof r10 === 'bigint' ? r10 + 1n : +r10 + 1;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
length = a1.length;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value9 = value8 < length;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
if (value9) {
r10 = value8;
continue reducibleLoop10;
}
r9 = value4;
break reducibleLoop10;
}
} else {
r9 = value4;
}
reducibleJoin1: while (true) {
if (r9) {
break reducibleLoop2;
}
r2 = item2;
break reducibleJoin1;
}
}
item2 = Reflect.apply(iterator2, r2, []);
item = item2.value;
item2 = item2.done ? undefined : r2;
if (item2 === value) {
return value;
}
continue reducibleLoop2;
}
try {
initialRouteName = item.initialRouteName;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
try {
value11 = a0 === initialRouteName;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
reducibleJoin31: while (true) {
if (value11) {
initialRouteName = value;
break reducibleJoin31;
}
try {
initialRouteName = item.initialRouteName;
} catch (error) {
try {
item2.return();
} catch {
}
throw error;
}
break reducibleJoin31;
}
item2.return();
return initialRouteName;
}
function createStateObject(a0, a1, a2) { // fn#17302, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:2557, offset: 0x00e695a2, size: 210 bytes, params: 4, frame: 21
var r0;
var r1;
var Object;
const object = {};
if (a2) {
if (a0) {
object.name = a0;
r1 = {index: 1, routes: [object, a1]};
} else {
object.routes = [a1];
r1 = object;
}
r0 = r1;
} else if (a0) {
object.name = a0;
Object = global.Object;
r0 = {index: 1, routes: [object, Object.assign({}, a1, {state: {routes: []}})]};
} else {
Object = global.Object;
object.routes = [Object.assign({}, a1, {state: {routes: []}})];
r0 = object;
}
return r0;
}
function _fun17309(a0, a1) { // fn#17309, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:4031, offset: 0x00e69b84, size: 397 bytes, params: 3, frame: 22
var r8;
var r10;
var r4;
var value;
var value5;
var property;
var value6;
var value7;
var value8;
var value9;
var length3;
var routeNames;
var localeCompare;
let pattern = a0.pattern;
if (pattern === a1.pattern) {
routeNames = a1.routeNames;
value = routeNames.join('>');
localeCompare = value.localeCompare;
routeNames = a0.routeNames;
return Reflect.apply(localeCompare, value, [routeNames.join('>')]);
}
pattern = a0.pattern;
let startsWith = pattern.startsWith;
if (Reflect.apply(startsWith, pattern, [a1.pattern])) {
return -1;
}
pattern = a1.pattern;
if (pattern.startsWith(a0.pattern)) {
return 1;
}
value = a0.pattern.split('/');
const value2 = a1.pattern.split('/');
let Math = global.Math;
let max = Math.max;
let length = value.length;
const value3 = Reflect.apply(max, Math, [length, value2.length]);
const value4 = 0;
if (value4 < value3) {
r8 = value4;
reducibleLoop4: while (true) {
if (value[r8] == null) {
return 1;
}
if (value2[r8] == null) {
return -1;
}
value5 = value[r8] === '*';
reducibleJoin8: while (true) {
if (value5) {
r10 = value5;
break reducibleJoin8;
}
property = value[r8];
startsWith = property.startsWith;
value6 = Reflect.apply(startsWith, property, [':']);
r10 = value6;
break reducibleJoin8;
}
value7 = value2[r8] === '*';
reducibleJoin10: while (true) {
if (value7) {
r4 = value7;
break reducibleJoin10;
}
property = value2[r8];
startsWith = property.startsWith;
value8 = Reflect.apply(startsWith, property, [':']);
r4 = value8;
break reducibleJoin10;
}
if (r10) {
reducibleJoin12: while (true) {
if (r4) {
value9 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
Math = global.Math;
max = Math.max;
length = value.length;
length3 = value2.length;
if (!(value9 < Reflect.apply(max, Math, [length, length3]))) {
return value2.length - value.length;
}
r8 = value9;
continue reducibleLoop4;
}
break reducibleJoin12;
}
}
if (r10) {
return 1;
}
if (r4) {
return -1;
}
value9 = typeof r8 === 'bigint' ? r8 + 1n : +r8 + 1;
Math = global.Math;
max = Math.max;
length = value.length;
length3 = value2.length;
if (!(value9 < Reflect.apply(max, Math, [length, length3]))) {
return value2.length - value.length;
}
r8 = value9;
continue reducibleLoop4;
}
}
return value2.length - value.length;
}
function _fun17316(a0) { // fn#17316, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1655:5174, offset: 0x00e69e71, size: 11 bytes, params: 2, frame: 2
return {name: a0};
}
global.__d(_fun17286, 1528, [77, 65, 1521, 1529, 1503,
1523]) /* metro module 1528, dependencies: [77, 65, 1521, 1529, 1503, 1523] */;