This commit is contained in:
janisslsm committed 2026-11-01 12:12:55 +02:00
1 parent 1781d25a15
commit 732c0ad767
33051 files changed
+2591613 -3019689

No files matched your search

+250
View File
@@ -0,0 +1,250 @@
// Metro module 1016 (f1017).
import { isHermesEnabled } from "./Module1002";
import { RN_GLOBAL_OBJ } from "./Module816";
import { debug, captureException, getClient, getCurrentScope, addExceptionMechanism } from "./Module817";
import { isErrorLike, createSyntheticError } from "./Module813";
import { requireRejectionTracking } from "./getPromisePolyfill";
function $mk117576($env) {
return function(a0) {
a0($env[0]);
};
}
function $mk119073($env) {
return () => {
const r1 = $env;
(0, $env.$parent[1])(r1[0], r1[1]);
};
}
function $mk119074($env) {
return (a0) => {
debug.error("[ReactNativeErrorHandlers] Error while flushing the event cache after uncaught error.", a0);
};
}
let c833_3;
let env833 = {};
const c833_2 = (this ? this.__awaiter : this) || function(c12625_0, c12625_1, a2, c12625_3) {
let r2 = a2;
let Promise2 = a2;
if (!a2) {
Promise2 = Promise;
r2 = Promise2;
}
return new r2(function(a0, c23983_1) {
let rejected2, step2;
let c23983_0 = a0;
const fulfilled2 = function fulfilled(a0) {
try {
step2(c12625_3.next(a0));
} catch ($e) {
c23983_1($e);
}
};
rejected2 = function rejected(a0) {
try {
step2(c12625_3.throw(a0));
} catch ($e) {
c23983_1($e);
}
};
step2 = function step(a0) {
if (a0.done) {
c23983_0(a0.value);
} else {
let env28718;
let value = a0.value;
const r10 = env28718 = {};
env28718[0] = value;
if (!(value instanceof Promise2)) {
value = new Promise2($mk117576(r10));
}
value.then(fulfilled2, rejected2);
}
};
const r16 = c12625_3.apply(c12625_0, c12625_1 || []);
c12625_3 = r16;
const r18 = r16.next();
const { done, value } = r18;
if (done) {
a0(value);
} else {
let env23984;
const r21 = env23984 = {};
env23984[0] = value;
(value instanceof Promise2 ? value : new Promise2($mk117576(r21))).then(fulfilled2, rejected2);
}
});
};
c833_3 = {
onUnhandled: (a0, a1) => {
captureException(a1, {
data: {
id: a0
},
originalException: a1,
syntheticException: isErrorLike(a1) ? void 0 : createSyntheticError(),
mechanism: {
handled: true,
type: "onunhandledrejection"
}
});
},
onHandled: (a0) => {}
};
export const reactNativeErrorHandlersIntegration = function(r1 = {}) {
let c12626_0 = r1;
return {
name: "ReactNativeErrorHandlers",
setupOnce: () => {
const r10 = {
onerror: true,
onunhandledrejection: true,
patchGlobalPromise: true,
...c12626_0
};
if (r10.onunhandledrejection) {
(function setupUnhandledRejectionsTracking(a0) {
L27: {
try {
if (isHermesEnabled()) {
const HermesInternal2 = require(dependencyMap[1]).RN_GLOBAL_OBJ.HermesInternal;
if (HermesInternal2 !== null ? HermesInternal2 !== void 0 ? HermesInternal2.enablePromiseRejectionTracker : void 0 : void 0) {
const r29 = require(dependencyMap[1]).RN_GLOBAL_OBJ !== null ? require(dependencyMap[1]).RN_GLOBAL_OBJ !== void 0 ? require(dependencyMap[1]).RN_GLOBAL_OBJ.HermesInternal : void 0 : void 0;
const r41 = r29 !== null ? r29 !== void 0 ? r29.hasPromise : void 0 : void 0;
if (r41 !== null ? r41 !== void 0 ? r41.call(r29) : void 0 : void 0) {
require(dependencyMap[2]).debug.log("Using Hermes native promise rejection tracking");
const HermesInternal3 = require(dependencyMap[1]).RN_GLOBAL_OBJ.HermesInternal;
HermesInternal3.enablePromiseRejectionTracker({
allRejections: true,
onUnhandled: c833_3.onUnhandled,
onHandled: c833_3.onHandled
});
require(dependencyMap[2]).debug.log("Unhandled promise rejections will be caught by Sentry.");
break L27;
}
}
}
const isWeb = require(dependencyMap[0]).isWeb();
if (isWeb) {
require(dependencyMap[2]).debug.log("Using Browser JS promise rejection tracking for React Native Web");
require(dependencyMap[2]).addGlobalUnhandledRejectionInstrumentationHandler((a0) => {
captureException(a0, {
originalException: a0,
syntheticException: isErrorLike(a0) ? void 0 : createSyntheticError(),
mechanism: {
handled: false,
type: "onunhandledrejection"
}
});
});
} else if (a0) {
require(dependencyMap[4]).polyfillPromise();
(function attachUnhandledRejectionHandler() {
const r3 = requireRejectionTracking();
r3.enable({
allRejections: true,
onUnhandled: c833_3.onUnhandled,
onHandled: c833_3.onHandled
});
})();
require(dependencyMap[4]).checkPromiseAndWarn();
} else {
require(dependencyMap[2]).debug.log("Unhandled promise rejections will not be caught by Sentry.");
}
} catch ($e) {
debug.warn("Failed to set up promise rejection tracking. Unhandled promise rejections will not be caught by Sentry.See https://docs.sentry.io/platforms/react-native/troubleshooting/ for more details.");
}
}
})(r10.patchGlobalPromise);
}
if (r10.onerror) {
let env23985 = {
$parent: env833
};
env23985[0] = false;
const ErrorUtils = RN_GLOBAL_OBJ.ErrorUtils;
if (ErrorUtils) {
const getGlobalHandler = ErrorUtils.getGlobalHandler;
env23985[1] = getGlobalHandler !== null ? getGlobalHandler !== void 0 ? getGlobalHandler.call(ErrorUtils) : void 0 : void 0;
ErrorUtils.setGlobalHandler(async (a0, a1) => {
let env31866 = {
$parent: env23985
};
env31866[0] = a0;
env31866[1] = a1;
let c32090_0, c32090_1;
L23: {
L14: {
L11: {
let env32157;
const r28 = env31866;
c32090_1 = r28;
const r10 = env32157 = {
$parent: r28
};
c32090_0 = r10;
env32157[0] = void 0;
env32157[1] = void 0;
env32157[2] = void 0;
if (env31866[1]) {
if (env23985[0]) {
debug.log("Encountered multiple fatals in a row. The latest:", env31866[0]);
break L11;
}
env23985[0] = true;
}
const client = getClient();
env32157[0] = client;
if (client) {
const originalException = env31866[0];
const r57 = {
originalException,
attachments: getCurrentScope().getScopeData().attachments
};
env32157[1] = r57;
env32157[2] = await client.eventFromException(originalException, r57);
const r89 = env31866[1];
const r90 = env32157[2];
if (r89) {
r90.level = "fatal";
addExceptionMechanism(env32157[2], {
handled: false,
type: "onerror"
});
} else {
r90.level = "error";
addExceptionMechanism(env32157[2], {
handled: true,
type: "generic"
});
}
env32157[0].captureEvent(env32157[2], env32157[1]);
const r119 = env32157[0];
const shutdownTimeout = env32157[0].getOptions().shutdownTimeout;
if (shutdownTimeout) {
const r126 = r119.flush(shutdownTimeout);
const r129 = $mk119074(env23985.$parent);
r126.then($mk119073(env31866), r129);
break L23;
}
const r136 = r119.flush(2000);
const r139 = $mk119074(env23985.$parent);
r136.then($mk119073(env31866), r139);
break L23;
}
const r66 = env31866[0];
debug.error("Sentry client is missing, the error event might be lost.", r66);
(0, env23985[1])(r66, env31866[1]);
break L14;
}
return void 0;
}
return void 0;
}
});
} else {
debug.warn("ErrorUtils not found. Can be caused by different environment for example react-native-web.");
}
}
}
};
};