cross-caller
Version:
Gets the caller function, file and line number in all browsers and server environments
3 lines (2 loc) • 537 B
JavaScript
var e=/at\s+(.*?)\s+\((.*):(\d*):(\d*)\)/i,t=/at\s+()(.*):(\d*):(\d*)/i,r=/(.*?)(?:\(\))?@(?:(.*?):(\d+)(?::(\d+))?)?/i,i=/at\s*(.*)\s+\((.*):(\d*)()\)/i;function n(n,l){for(var s=n.trim().split("\n"),a=0,o=0;a<s.length;a++){var c=s[a],d=e.exec(c)||t.exec(c)||r.exec(c)||i.exec(c);if(d&&5===d.length&&o++===l)return{function:d[1]||"",file:d[2]||"",line:d[3]||"",position:d[4]||""}}return null}exports.getCaller=function(e){return void 0===e&&(e=0),n((new Error).stack||"",e+2)},exports.parseCallSite=n;
//# sourceMappingURL=index.js.map