Files
2026-07-28 01:06:53 +03:00

479 lines
21 KiB
JavaScript

/* Metro module 7481; source: unknown; dependencies: [7370, 7368, 7369] */
import * as DEBUG_BUILDModule from './module-07368-DEBUG_BUILD.js'; /* Metro dependency 7368 */
import * as Module07369Module from './module-07369.js'; /* Metro dependency 7369 */
import * as Module07370Module from './module-07370.js'; /* Metro dependency 7370 */
function _fun60350(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#60350, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7659:6, offset: 0x01701b3a, size: 151 bytes, params: 8, frame: 18
const env0_0 = require;
const closure = function() {
var prototype;
var prototype2;
var prototype3;
var error;
var property = require(dependencyMap[0]).GLOBAL_OBJ;
if ('fetch' in property) {
try {
property = global.Headers;
prototype = property.prototype;
Object.create(prototype, {constructor: {value: property}});
new property();
property = global.Request;
prototype2 = property.prototype;
Object.create(prototype2, {constructor: {value: property}});
new property('http://www.example.com');
property = global.Response;
prototype3 = property.prototype;
Object.create(prototype3, {constructor: {value: property}});
new property();
} catch (error) {
return false;
}
return true;
}
return false;
};
const closure2 = function(a0) {
var r0;
var value = a0;
if (value) {
value = RegExp('^function\\s+\\w+\\(\\)\\s+\\{\\s+\\[native code\\]\\s+\\}$', '').test(value.toString());
r0 = value;
} else {
r0 = value;
}
return r0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
exports.isNativeFunction = closure2;
exports.supportsDOMError = function() {
var DOMError;
var prototype;
var error;
try {
DOMError = global.DOMError;
prototype = DOMError.prototype;
Object.create(prototype, {constructor: {value: DOMError}});
new DOMError('');
} catch (error) {
return false;
}
return true;
};
exports.supportsDOMException = function() {
var DOMException;
var prototype;
var error;
try {
DOMException = global.DOMException;
prototype = DOMException.prototype;
Object.create(prototype, {constructor: {value: DOMException}});
new DOMException('');
} catch (error) {
return false;
}
return true;
};
exports.supportsErrorEvent = function() {
var ErrorEvent;
var prototype;
var error;
try {
ErrorEvent = global.ErrorEvent;
prototype = ErrorEvent.prototype;
Object.create(prototype, {constructor: {value: ErrorEvent}});
new ErrorEvent('');
} catch (error) {
return false;
}
return true;
};
exports.supportsFetch = closure;
exports.supportsNativeFetch = supportsNativeFetch_60356;
exports.supportsReferrerPolicy = function() {
var Request;
var prototype;
var error;
if (supportsFetch_60351()) {
try {
Request = global.Request;
prototype = Request.prototype;
Object.create(prototype, {constructor: {value: Request}});
new Request('_', {referrerPolicy: 'origin'});
} catch (error) {
return false;
}
return true;
}
return false;
};
exports.supportsReportingObserver = function() {
var GLOBAL_OBJ = require(dependencyMap[0]).GLOBAL_OBJ;
return 'ReportingObserver' in GLOBAL_OBJ;
};
function supportsNativeFetch_60356() { // fn#60356, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:7659:761, offset: 0x01701c49, size: 363 bytes, params: 1, frame: 19
var r6;
var r0;
var isNativeFunction_60352Binding;
const GLOBAL_OBJ = (Module07370Module).GLOBAL_OBJ;
var fetch;
var value2;
var document;
var createElement;
var element;
var head;
var appendChild;
var contentWindow;
var isNativeFunction_603522;
var removeChild;
var error;
const DEBUG_BUILD = (DEBUG_BUILDModule).DEBUG_BUILD;
const logger = (Module07369Module).logger;
const EdgeRuntime = global.EdgeRuntime;
if (typeof EdgeRuntime === 'string') {
return true;
}
if (supportsFetch_60351()) {
isNativeFunction_60352Binding = isNativeFunction_60352;
fetch = GLOBAL_OBJ.fetch;
if (isNativeFunction_60352Binding(fetch)) {
return true;
}
value2 = false;
document = GLOBAL_OBJ.document;
if (document) {
createElement = document.createElement;
if (typeof createElement !== 'function') {
r0 = value2;
} else {
try {
createElement = document.createElement;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
element = Reflect.apply(createElement, document, ['iframe']);
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
element.hidden = true;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
head = document.head;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
appendChild = head.appendChild;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
Reflect.apply(appendChild, head, [element]);
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
contentWindow = element.contentWindow;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
if (contentWindow) {
try {
contentWindow = element.contentWindow;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
fetch = contentWindow.fetch;
r6 = fetch;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
if (r6) {
try {
isNativeFunction_60352Binding = isNativeFunction_60352;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
contentWindow = element.contentWindow;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
fetch = contentWindow.fetch;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
isNativeFunction_603522 = isNativeFunction_60352Binding(fetch);
r0 = isNativeFunction_603522;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
head = document.head;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
removeChild = head.removeChild;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
Reflect.apply(removeChild, head, [element]);
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
}
} else {
r0 = value2;
try {
head = document.head;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
removeChild = head.removeChild;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
Reflect.apply(removeChild, head, [element]);
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
}
}
} else if (contentWindow) {
try {
isNativeFunction_60352Binding = isNativeFunction_60352;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
contentWindow = element.contentWindow;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
fetch = contentWindow.fetch;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
isNativeFunction_603522 = isNativeFunction_60352Binding(fetch);
r0 = isNativeFunction_603522;
} catch (error) {
r0 = value2;
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
head = document.head;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
removeChild = head.removeChild;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
Reflect.apply(removeChild, head, [element]);
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
}
} else {
r0 = value2;
try {
head = document.head;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
removeChild = head.removeChild;
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
return r0;
}
try {
Reflect.apply(removeChild, head, [element]);
} catch (error) {
if (DEBUG_BUILD) {
logger.warn('Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ',
error);
}
}
}
}
} else {
r0 = value2;
}
return r0;
}
return false;
}
}
global.__d(_fun60350, 7481, [7370, 7368, 7369]) /* metro module 7481, dependencies: [7370, 7368, 7369] */;