UNPKG

yhtml5-test

Version:

A test framework for front-end projects

42 lines (36 loc) 1.04 kB
/** * Copyright (c) 2015-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ var boundErrorHandler = null; function errorHandler(callback, e) { if (!e.error) { return; } // $FlowFixMe var error = e.error; if (error instanceof Error) { callback(error); } else { // A non-error was thrown, we don't have a trace. :( // Look in your browser's devtools for more information callback(new Error(error)); } } function registerUnhandledError(target, callback) { if (boundErrorHandler !== null) { return; } boundErrorHandler = errorHandler.bind(undefined, callback); target.addEventListener('error', boundErrorHandler); } function unregisterUnhandledError(target) { if (boundErrorHandler === null) { return; } target.removeEventListener('error', boundErrorHandler); boundErrorHandler = null; } export { registerUnhandledError as register, unregisterUnhandledError as unregister };