18 lines
760 B
JavaScript
18 lines
760 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const tracker_1 = require("@openreplay/tracker/cjs");
|
|
function default_1() {
|
|
return (app) => {
|
|
if (app === null) {
|
|
return (name) => (fn, thisArg) => thisArg === undefined ? fn : fn.bind(thisArg);
|
|
}
|
|
return (name) => (fn, thisArg) => (...args) => {
|
|
const startTime = performance.now();
|
|
const result = thisArg === undefined ? fn.apply(this, args) : fn.apply(thisArg, args);
|
|
const duration = performance.now() - startTime;
|
|
app.send(tracker_1.Messages.Profiler(name, duration, args.map(String).join(', '), String(result)));
|
|
return result;
|
|
};
|
|
};
|
|
}
|
|
exports.default = default_1;
|