You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
726 B
28 lines
726 B
import { config } from '../config';
|
|
let context = null;
|
|
export function errorContext(cb) {
|
|
if (config.useDeprecatedSynchronousErrorHandling) {
|
|
const isRoot = !context;
|
|
if (isRoot) {
|
|
context = { errorThrown: false, error: null };
|
|
}
|
|
cb();
|
|
if (isRoot) {
|
|
const { errorThrown, error } = context;
|
|
context = null;
|
|
if (errorThrown) {
|
|
throw error;
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
cb();
|
|
}
|
|
}
|
|
export function captureError(err) {
|
|
if (config.useDeprecatedSynchronousErrorHandling && context) {
|
|
context.errorThrown = true;
|
|
context.error = err;
|
|
}
|
|
}
|
|
//# sourceMappingURL=errorContext.js.map
|