69 lines
2.6 KiB
JavaScript
69 lines
2.6 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
0 && (module.exports = {
|
|
originConsoleError: null,
|
|
patchConsoleError: null
|
|
});
|
|
function _export(target, all) {
|
|
for(var name in all)Object.defineProperty(target, name, {
|
|
enumerable: true,
|
|
get: all[name]
|
|
});
|
|
}
|
|
_export(exports, {
|
|
originConsoleError: function() {
|
|
return originConsoleError;
|
|
},
|
|
patchConsoleError: function() {
|
|
return patchConsoleError;
|
|
}
|
|
});
|
|
const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
const _iserror = /*#__PURE__*/ _interop_require_default._(require("../../../lib/is-error"));
|
|
const _isnextroutererror = require("../is-next-router-error");
|
|
const _useerrorhandler = require("../errors/use-error-handler");
|
|
const _console = require("../../lib/console");
|
|
const originConsoleError = globalThis.console.error;
|
|
function patchConsoleError() {
|
|
// Ensure it's only patched once
|
|
if (typeof window === 'undefined') {
|
|
return;
|
|
}
|
|
window.console.error = function error() {
|
|
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
args[_key] = arguments[_key];
|
|
}
|
|
let maybeError;
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
const { error: replayedError } = (0, _console.parseConsoleArgs)(args);
|
|
if (replayedError) {
|
|
maybeError = replayedError;
|
|
} else if ((0, _iserror.default)(args[0])) {
|
|
maybeError = args[0];
|
|
} else {
|
|
// See https://github.com/facebook/react/blob/d50323eb845c5fde0d720cae888bf35dedd05506/packages/react-reconciler/src/ReactFiberErrorLogger.js#L78
|
|
maybeError = args[1];
|
|
}
|
|
} else {
|
|
maybeError = args[0];
|
|
}
|
|
if (!(0, _isnextroutererror.isNextRouterError)(maybeError)) {
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
(0, _useerrorhandler.handleConsoleError)(// replayed errors have their own complex format string that should be used,
|
|
// but if we pass the error directly, `handleClientError` will ignore it
|
|
maybeError, args);
|
|
}
|
|
originConsoleError.apply(window.console, args);
|
|
}
|
|
};
|
|
}
|
|
|
|
if ((typeof exports.default === 'function' || (typeof exports.default === 'object' && exports.default !== null)) && typeof exports.default.__esModule === 'undefined') {
|
|
Object.defineProperty(exports.default, '__esModule', { value: true });
|
|
Object.assign(exports.default, exports);
|
|
module.exports = exports.default;
|
|
}
|
|
|
|
//# sourceMappingURL=intercept-console-error.js.map
|