@sentry/core
Version:
Base implementation for all Sentry JavaScript SDKs
36 lines (28 loc) • 1.02 kB
JavaScript
Object.defineProperty(exports, '__esModule', { value: true });
const utils = require('@sentry/utils');
let originalFunctionToString;
/** Patch toString calls to return proper name for wrapped functions */
class FunctionToString {constructor() { FunctionToString.prototype.__init.call(this); }
/**
* @inheritDoc
*/
static __initStatic() {this.id = 'FunctionToString';}
/**
* @inheritDoc
*/
__init() {this.name = FunctionToString.id;}
/**
* @inheritDoc
*/
setupOnce() {
// eslint-disable-next-line @typescript-eslint/unbound-method
originalFunctionToString = Function.prototype.toString;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
Function.prototype.toString = function ( ...args) {
const context = utils.getOriginalFunction(this) || this;
return originalFunctionToString.apply(context, args);
};
}
} FunctionToString.__initStatic();
exports.FunctionToString = FunctionToString;
//# sourceMappingURL=functiontostring.js.map