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