opennms
Version:
Client API for the OpenNMS network monitoring platform
1 lines • 26.1 kB
JSON
{"remainingRequest":"/data/node_modules/babel-loader/lib/index.js!/data/node_modules/error-stack-parser/error-stack-parser.js","dependencies":[{"path":"/data/node_modules/error-stack-parser/error-stack-parser.js","mtime":1553611386452},{"path":"/data/.babelrc","mtime":1553611371556},{"path":"/data/node_modules/cache-loader/dist/cjs.js","mtime":1553611387012},{"path":"/data/node_modules/babel-loader/lib/index.js","mtime":1553611386992}],"contextDependencies":[],"result":["'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n(function (root, factory) {\n 'use strict';\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n\n if (typeof define === 'function' && define.amd) {\n define('error-stack-parser', ['stackframe'], factory);\n } else if ((typeof exports === 'undefined' ? 'undefined' : _typeof(exports)) === 'object') {\n module.exports = factory(require('stackframe'));\n } else {\n root.ErrorStackParser = factory(root.StackFrame);\n }\n})(undefined, function ErrorStackParser(StackFrame) {\n 'use strict';\n\n var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\\S+\\:\\d+/;\n var CHROME_IE_STACK_REGEXP = /^\\s*at .*(\\S+\\:\\d+|\\(native\\))/m;\n var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\\[native code\\])?$/;\n\n function _map(array, fn, thisArg) {\n if (typeof Array.prototype.map === 'function') {\n return array.map(fn, thisArg);\n } else {\n var output = new Array(array.length);\n for (var i = 0; i < array.length; i++) {\n output[i] = fn.call(thisArg, array[i]);\n }\n return output;\n }\n }\n\n function _filter(array, fn, thisArg) {\n if (typeof Array.prototype.filter === 'function') {\n return array.filter(fn, thisArg);\n } else {\n var output = [];\n for (var i = 0; i < array.length; i++) {\n if (fn.call(thisArg, array[i])) {\n output.push(array[i]);\n }\n }\n return output;\n }\n }\n\n function _indexOf(array, target) {\n if (typeof Array.prototype.indexOf === 'function') {\n return array.indexOf(target);\n } else {\n for (var i = 0; i < array.length; i++) {\n if (array[i] === target) {\n return i;\n }\n }\n return -1;\n }\n }\n\n return {\n /**\n * Given an Error object, extract the most information from it.\n *\n * @param {Error} error object\n * @return {Array} of StackFrames\n */\n parse: function ErrorStackParser$$parse(error) {\n if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') {\n return this.parseOpera(error);\n } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) {\n return this.parseV8OrIE(error);\n } else if (error.stack) {\n return this.parseFFOrSafari(error);\n } else {\n throw new Error('Cannot parse given Error object');\n }\n },\n\n // Separate line and column numbers from a string of the form: (URI:Line:Column)\n extractLocation: function ErrorStackParser$$extractLocation(urlLike) {\n // Fail-fast but return locations like \"(native)\"\n if (urlLike.indexOf(':') === -1) {\n return [urlLike];\n }\n\n var regExp = /(.+?)(?:\\:(\\d+))?(?:\\:(\\d+))?$/;\n var parts = regExp.exec(urlLike.replace(/[\\(\\)]/g, ''));\n return [parts[1], parts[2] || undefined, parts[3] || undefined];\n },\n\n parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) {\n var filtered = _filter(error.stack.split('\\n'), function (line) {\n return !!line.match(CHROME_IE_STACK_REGEXP);\n }, this);\n\n return _map(filtered, function (line) {\n if (line.indexOf('(eval ') > -1) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n line = line.replace(/eval code/g, 'eval').replace(/(\\(eval at [^\\()]*)|(\\)\\,.*$)/g, '');\n }\n var tokens = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(').split(/\\s+/).slice(1);\n var locationParts = this.extractLocation(tokens.pop());\n var functionName = tokens.join(' ') || undefined;\n var fileName = _indexOf(['eval', '<anonymous>'], locationParts[0]) > -1 ? undefined : locationParts[0];\n\n return new StackFrame(functionName, undefined, fileName, locationParts[1], locationParts[2], line);\n }, this);\n },\n\n parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n var filtered = _filter(error.stack.split('\\n'), function (line) {\n return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n }, this);\n\n return _map(filtered, function (line) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n if (line.indexOf(' > eval') > -1) {\n line = line.replace(/ line (\\d+)(?: > eval line \\d+)* > eval\\:\\d+\\:\\d+/g, ':$1');\n }\n\n if (line.indexOf('@') === -1 && line.indexOf(':') === -1) {\n // Safari eval frames only have function names and nothing else\n return new StackFrame(line);\n } else {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionName = tokens.join('@') || undefined;\n return new StackFrame(functionName, undefined, locationParts[0], locationParts[1], locationParts[2], line);\n }\n }, this);\n },\n\n parseOpera: function ErrorStackParser$$parseOpera(e) {\n if (!e.stacktrace || e.message.indexOf('\\n') > -1 && e.message.split('\\n').length > e.stacktrace.split('\\n').length) {\n return this.parseOpera9(e);\n } else if (!e.stack) {\n return this.parseOpera10(e);\n } else {\n return this.parseOpera11(e);\n }\n },\n\n parseOpera9: function ErrorStackParser$$parseOpera9(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)/i;\n var lines = e.message.split('\\n');\n var result = [];\n\n for (var i = 2, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame(undefined, undefined, match[2], match[1], undefined, lines[i]));\n }\n }\n\n return result;\n },\n\n parseOpera10: function ErrorStackParser$$parseOpera10(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$/i;\n var lines = e.stacktrace.split('\\n');\n var result = [];\n\n for (var i = 0, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame(match[3] || undefined, undefined, match[2], match[1], undefined, lines[i]));\n }\n }\n\n return result;\n },\n\n // Opera 10.65+ Error.stack very similar to FF/Safari\n parseOpera11: function ErrorStackParser$$parseOpera11(error) {\n var filtered = _filter(error.stack.split('\\n'), function (line) {\n return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n }, this);\n\n return _map(filtered, function (line) {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionCall = tokens.shift() || '';\n var functionName = functionCall.replace(/<anonymous function(: (\\w+))?>/, '$2').replace(/\\([^\\)]*\\)/g, '') || undefined;\n var argsRaw;\n if (functionCall.match(/\\(([^\\)]*)\\)/)) {\n argsRaw = functionCall.replace(/^[^\\(]+\\(([^\\)]*)\\)$/, '$1');\n }\n var args = argsRaw === undefined || argsRaw === '[arguments not available]' ? undefined : argsRaw.split(',');\n return new StackFrame(functionName, args, locationParts[0], locationParts[1], locationParts[2], line);\n }, this);\n }\n };\n});",{"version":3,"sources":["node_modules/error-stack-parser/error-stack-parser.js"],"names":["root","factory","define","amd","exports","module","require","ErrorStackParser","StackFrame","FIREFOX_SAFARI_STACK_REGEXP","CHROME_IE_STACK_REGEXP","SAFARI_NATIVE_CODE_REGEXP","_map","array","fn","thisArg","Array","prototype","map","output","length","i","call","_filter","filter","push","_indexOf","target","indexOf","parse","ErrorStackParser$$parse","error","stacktrace","parseOpera","stack","match","parseV8OrIE","parseFFOrSafari","Error","extractLocation","ErrorStackParser$$extractLocation","urlLike","regExp","parts","exec","replace","undefined","ErrorStackParser$$parseV8OrIE","filtered","split","line","tokens","slice","locationParts","pop","functionName","join","fileName","ErrorStackParser$$parseFFOrSafari","ErrorStackParser$$parseOpera","e","message","parseOpera9","parseOpera10","parseOpera11","ErrorStackParser$$parseOpera9","lineRE","lines","result","len","ErrorStackParser$$parseOpera10","ErrorStackParser$$parseOpera11","functionCall","shift","argsRaw","args"],"mappings":";;;;AAAC,WAASA,IAAT,EAAeC,OAAf,EAAwB;AACrB;AACA;;AAEA;;AACA,QAAI,OAAOC,MAAP,KAAkB,UAAlB,IAAgCA,OAAOC,GAA3C,EAAgD;AAC5CD,eAAO,oBAAP,EAA6B,CAAC,YAAD,CAA7B,EAA6CD,OAA7C;AACH,KAFD,MAEO,IAAI,QAAOG,OAAP,yCAAOA,OAAP,OAAmB,QAAvB,EAAiC;AACpCC,eAAOD,OAAP,GAAiBH,QAAQK,QAAQ,YAAR,CAAR,CAAjB;AACH,KAFM,MAEA;AACHN,aAAKO,gBAAL,GAAwBN,QAAQD,KAAKQ,UAAb,CAAxB;AACH;AACJ,CAZA,aAYO,SAASD,gBAAT,CAA0BC,UAA1B,EAAsC;AAC1C;;AAEA,QAAIC,8BAA8B,eAAlC;AACA,QAAIC,yBAAyB,iCAA7B;AACA,QAAIC,4BAA4B,8BAAhC;;AAEA,aAASC,IAAT,CAAcC,KAAd,EAAqBC,EAArB,EAAyBC,OAAzB,EAAkC;AAC9B,YAAI,OAAOC,MAAMC,SAAN,CAAgBC,GAAvB,KAA+B,UAAnC,EAA+C;AAC3C,mBAAOL,MAAMK,GAAN,CAAUJ,EAAV,EAAcC,OAAd,CAAP;AACH,SAFD,MAEO;AACH,gBAAII,SAAS,IAAIH,KAAJ,CAAUH,MAAMO,MAAhB,CAAb;AACA,iBAAK,IAAIC,IAAI,CAAb,EAAgBA,IAAIR,MAAMO,MAA1B,EAAkCC,GAAlC,EAAuC;AACnCF,uBAAOE,CAAP,IAAYP,GAAGQ,IAAH,CAAQP,OAAR,EAAiBF,MAAMQ,CAAN,CAAjB,CAAZ;AACH;AACD,mBAAOF,MAAP;AACH;AACJ;;AAED,aAASI,OAAT,CAAiBV,KAAjB,EAAwBC,EAAxB,EAA4BC,OAA5B,EAAqC;AACjC,YAAI,OAAOC,MAAMC,SAAN,CAAgBO,MAAvB,KAAkC,UAAtC,EAAkD;AAC9C,mBAAOX,MAAMW,MAAN,CAAaV,EAAb,EAAiBC,OAAjB,CAAP;AACH,SAFD,MAEO;AACH,gBAAII,SAAS,EAAb;AACA,iBAAK,IAAIE,IAAI,CAAb,EAAgBA,IAAIR,MAAMO,MAA1B,EAAkCC,GAAlC,EAAuC;AACnC,oBAAIP,GAAGQ,IAAH,CAAQP,OAAR,EAAiBF,MAAMQ,CAAN,CAAjB,CAAJ,EAAgC;AAC5BF,2BAAOM,IAAP,CAAYZ,MAAMQ,CAAN,CAAZ;AACH;AACJ;AACD,mBAAOF,MAAP;AACH;AACJ;;AAED,aAASO,QAAT,CAAkBb,KAAlB,EAAyBc,MAAzB,EAAiC;AAC7B,YAAI,OAAOX,MAAMC,SAAN,CAAgBW,OAAvB,KAAmC,UAAvC,EAAmD;AAC/C,mBAAOf,MAAMe,OAAN,CAAcD,MAAd,CAAP;AACH,SAFD,MAEO;AACH,iBAAK,IAAIN,IAAI,CAAb,EAAgBA,IAAIR,MAAMO,MAA1B,EAAkCC,GAAlC,EAAuC;AACnC,oBAAIR,MAAMQ,CAAN,MAAaM,MAAjB,EAAyB;AACrB,2BAAON,CAAP;AACH;AACJ;AACD,mBAAO,CAAC,CAAR;AACH;AACJ;;AAED,WAAO;AACH;;;;;;AAMAQ,eAAO,SAASC,uBAAT,CAAiCC,KAAjC,EAAwC;AAC3C,gBAAI,OAAOA,MAAMC,UAAb,KAA4B,WAA5B,IAA2C,OAAOD,MAAM,iBAAN,CAAP,KAAoC,WAAnF,EAAgG;AAC5F,uBAAO,KAAKE,UAAL,CAAgBF,KAAhB,CAAP;AACH,aAFD,MAEO,IAAIA,MAAMG,KAAN,IAAeH,MAAMG,KAAN,CAAYC,KAAZ,CAAkBzB,sBAAlB,CAAnB,EAA8D;AACjE,uBAAO,KAAK0B,WAAL,CAAiBL,KAAjB,CAAP;AACH,aAFM,MAEA,IAAIA,MAAMG,KAAV,EAAiB;AACpB,uBAAO,KAAKG,eAAL,CAAqBN,KAArB,CAAP;AACH,aAFM,MAEA;AACH,sBAAM,IAAIO,KAAJ,CAAU,iCAAV,CAAN;AACH;AACJ,SAjBE;;AAmBH;AACAC,yBAAiB,SAASC,iCAAT,CAA2CC,OAA3C,EAAoD;AACjE;AACA,gBAAIA,QAAQb,OAAR,CAAgB,GAAhB,MAAyB,CAAC,CAA9B,EAAiC;AAC7B,uBAAO,CAACa,OAAD,CAAP;AACH;;AAED,gBAAIC,SAAS,gCAAb;AACA,gBAAIC,QAAQD,OAAOE,IAAP,CAAYH,QAAQI,OAAR,CAAgB,SAAhB,EAA2B,EAA3B,CAAZ,CAAZ;AACA,mBAAO,CAACF,MAAM,CAAN,CAAD,EAAWA,MAAM,CAAN,KAAYG,SAAvB,EAAkCH,MAAM,CAAN,KAAYG,SAA9C,CAAP;AACH,SA7BE;;AA+BHV,qBAAa,SAASW,6BAAT,CAAuChB,KAAvC,EAA8C;AACvD,gBAAIiB,WAAWzB,QAAQQ,MAAMG,KAAN,CAAYe,KAAZ,CAAkB,IAAlB,CAAR,EAAiC,UAASC,IAAT,EAAe;AAC3D,uBAAO,CAAC,CAACA,KAAKf,KAAL,CAAWzB,sBAAX,CAAT;AACH,aAFc,EAEZ,IAFY,CAAf;;AAIA,mBAAOE,KAAKoC,QAAL,EAAe,UAASE,IAAT,EAAe;AACjC,oBAAIA,KAAKtB,OAAL,CAAa,QAAb,IAAyB,CAAC,CAA9B,EAAiC;AAC7B;AACAsB,2BAAOA,KAAKL,OAAL,CAAa,YAAb,EAA2B,MAA3B,EAAmCA,OAAnC,CAA2C,gCAA3C,EAA6E,EAA7E,CAAP;AACH;AACD,oBAAIM,SAASD,KAAKL,OAAL,CAAa,MAAb,EAAqB,EAArB,EAAyBA,OAAzB,CAAiC,cAAjC,EAAiD,GAAjD,EAAsDI,KAAtD,CAA4D,KAA5D,EAAmEG,KAAnE,CAAyE,CAAzE,CAAb;AACA,oBAAIC,gBAAgB,KAAKd,eAAL,CAAqBY,OAAOG,GAAP,EAArB,CAApB;AACA,oBAAIC,eAAeJ,OAAOK,IAAP,CAAY,GAAZ,KAAoBV,SAAvC;AACA,oBAAIW,WAAW/B,SAAS,CAAC,MAAD,EAAS,aAAT,CAAT,EAAkC2B,cAAc,CAAd,CAAlC,IAAsD,CAAC,CAAvD,GAA2DP,SAA3D,GAAuEO,cAAc,CAAd,CAAtF;;AAEA,uBAAO,IAAI7C,UAAJ,CAAe+C,YAAf,EAA6BT,SAA7B,EAAwCW,QAAxC,EAAkDJ,cAAc,CAAd,CAAlD,EAAoEA,cAAc,CAAd,CAApE,EAAsFH,IAAtF,CAAP;AACH,aAXM,EAWJ,IAXI,CAAP;AAYH,SAhDE;;AAkDHb,yBAAiB,SAASqB,iCAAT,CAA2C3B,KAA3C,EAAkD;AAC/D,gBAAIiB,WAAWzB,QAAQQ,MAAMG,KAAN,CAAYe,KAAZ,CAAkB,IAAlB,CAAR,EAAiC,UAASC,IAAT,EAAe;AAC3D,uBAAO,CAACA,KAAKf,KAAL,CAAWxB,yBAAX,CAAR;AACH,aAFc,EAEZ,IAFY,CAAf;;AAIA,mBAAOC,KAAKoC,QAAL,EAAe,UAASE,IAAT,EAAe;AACjC;AACA,oBAAIA,KAAKtB,OAAL,CAAa,SAAb,IAA0B,CAAC,CAA/B,EAAkC;AAC9BsB,2BAAOA,KAAKL,OAAL,CAAa,oDAAb,EAAmE,KAAnE,CAAP;AACH;;AAED,oBAAIK,KAAKtB,OAAL,CAAa,GAAb,MAAsB,CAAC,CAAvB,IAA4BsB,KAAKtB,OAAL,CAAa,GAAb,MAAsB,CAAC,CAAvD,EAA0D;AACtD;AACA,2BAAO,IAAIpB,UAAJ,CAAe0C,IAAf,CAAP;AACH,iBAHD,MAGO;AACH,wBAAIC,SAASD,KAAKD,KAAL,CAAW,GAAX,CAAb;AACA,wBAAII,gBAAgB,KAAKd,eAAL,CAAqBY,OAAOG,GAAP,EAArB,CAApB;AACA,wBAAIC,eAAeJ,OAAOK,IAAP,CAAY,GAAZ,KAAoBV,SAAvC;AACA,2BAAO,IAAItC,UAAJ,CAAe+C,YAAf,EACHT,SADG,EAEHO,cAAc,CAAd,CAFG,EAGHA,cAAc,CAAd,CAHG,EAIHA,cAAc,CAAd,CAJG,EAKHH,IALG,CAAP;AAMH;AACJ,aApBM,EAoBJ,IApBI,CAAP;AAqBH,SA5EE;;AA8EHjB,oBAAY,SAAS0B,4BAAT,CAAsCC,CAAtC,EAAyC;AACjD,gBAAI,CAACA,EAAE5B,UAAH,IAAkB4B,EAAEC,OAAF,CAAUjC,OAAV,CAAkB,IAAlB,IAA0B,CAAC,CAA3B,IAClBgC,EAAEC,OAAF,CAAUZ,KAAV,CAAgB,IAAhB,EAAsB7B,MAAtB,GAA+BwC,EAAE5B,UAAF,CAAaiB,KAAb,CAAmB,IAAnB,EAAyB7B,MAD5D,EACqE;AACjE,uBAAO,KAAK0C,WAAL,CAAiBF,CAAjB,CAAP;AACH,aAHD,MAGO,IAAI,CAACA,EAAE1B,KAAP,EAAc;AACjB,uBAAO,KAAK6B,YAAL,CAAkBH,CAAlB,CAAP;AACH,aAFM,MAEA;AACH,uBAAO,KAAKI,YAAL,CAAkBJ,CAAlB,CAAP;AACH;AACJ,SAvFE;;AAyFHE,qBAAa,SAASG,6BAAT,CAAuCL,CAAvC,EAA0C;AACnD,gBAAIM,SAAS,mCAAb;AACA,gBAAIC,QAAQP,EAAEC,OAAF,CAAUZ,KAAV,CAAgB,IAAhB,CAAZ;AACA,gBAAImB,SAAS,EAAb;;AAEA,iBAAK,IAAI/C,IAAI,CAAR,EAAWgD,MAAMF,MAAM/C,MAA5B,EAAoCC,IAAIgD,GAAxC,EAA6ChD,KAAK,CAAlD,EAAqD;AACjD,oBAAIc,QAAQ+B,OAAOtB,IAAP,CAAYuB,MAAM9C,CAAN,CAAZ,CAAZ;AACA,oBAAIc,KAAJ,EAAW;AACPiC,2BAAO3C,IAAP,CAAY,IAAIjB,UAAJ,CAAesC,SAAf,EAA0BA,SAA1B,EAAqCX,MAAM,CAAN,CAArC,EAA+CA,MAAM,CAAN,CAA/C,EAAyDW,SAAzD,EAAoEqB,MAAM9C,CAAN,CAApE,CAAZ;AACH;AACJ;;AAED,mBAAO+C,MAAP;AACH,SAtGE;;AAwGHL,sBAAc,SAASO,8BAAT,CAAwCV,CAAxC,EAA2C;AACrD,gBAAIM,SAAS,4DAAb;AACA,gBAAIC,QAAQP,EAAE5B,UAAF,CAAaiB,KAAb,CAAmB,IAAnB,CAAZ;AACA,gBAAImB,SAAS,EAAb;;AAEA,iBAAK,IAAI/C,IAAI,CAAR,EAAWgD,MAAMF,MAAM/C,MAA5B,EAAoCC,IAAIgD,GAAxC,EAA6ChD,KAAK,CAAlD,EAAqD;AACjD,oBAAIc,QAAQ+B,OAAOtB,IAAP,CAAYuB,MAAM9C,CAAN,CAAZ,CAAZ;AACA,oBAAIc,KAAJ,EAAW;AACPiC,2BAAO3C,IAAP,CACI,IAAIjB,UAAJ,CACI2B,MAAM,CAAN,KAAYW,SADhB,EAEIA,SAFJ,EAGIX,MAAM,CAAN,CAHJ,EAIIA,MAAM,CAAN,CAJJ,EAKIW,SALJ,EAMIqB,MAAM9C,CAAN,CANJ,CADJ;AAUH;AACJ;;AAED,mBAAO+C,MAAP;AACH,SA9HE;;AAgIH;AACAJ,sBAAc,SAASO,8BAAT,CAAwCxC,KAAxC,EAA+C;AACzD,gBAAIiB,WAAWzB,QAAQQ,MAAMG,KAAN,CAAYe,KAAZ,CAAkB,IAAlB,CAAR,EAAiC,UAASC,IAAT,EAAe;AAC3D,uBAAO,CAAC,CAACA,KAAKf,KAAL,CAAW1B,2BAAX,CAAF,IAA6C,CAACyC,KAAKf,KAAL,CAAW,mBAAX,CAArD;AACH,aAFc,EAEZ,IAFY,CAAf;;AAIA,mBAAOvB,KAAKoC,QAAL,EAAe,UAASE,IAAT,EAAe;AACjC,oBAAIC,SAASD,KAAKD,KAAL,CAAW,GAAX,CAAb;AACA,oBAAII,gBAAgB,KAAKd,eAAL,CAAqBY,OAAOG,GAAP,EAArB,CAApB;AACA,oBAAIkB,eAAgBrB,OAAOsB,KAAP,MAAkB,EAAtC;AACA,oBAAIlB,eAAeiB,aACV3B,OADU,CACF,gCADE,EACgC,IADhC,EAEVA,OAFU,CAEF,aAFE,EAEa,EAFb,KAEoBC,SAFvC;AAGA,oBAAI4B,OAAJ;AACA,oBAAIF,aAAarC,KAAb,CAAmB,cAAnB,CAAJ,EAAwC;AACpCuC,8BAAUF,aAAa3B,OAAb,CAAqB,sBAArB,EAA6C,IAA7C,CAAV;AACH;AACD,oBAAI8B,OAAQD,YAAY5B,SAAZ,IAAyB4B,YAAY,2BAAtC,GACP5B,SADO,GACK4B,QAAQzB,KAAR,CAAc,GAAd,CADhB;AAEA,uBAAO,IAAIzC,UAAJ,CACH+C,YADG,EAEHoB,IAFG,EAGHtB,cAAc,CAAd,CAHG,EAIHA,cAAc,CAAd,CAJG,EAKHA,cAAc,CAAd,CALG,EAMHH,IANG,CAAP;AAOH,aApBM,EAoBJ,IApBI,CAAP;AAqBH;AA3JE,KAAP;AA6JH,CAvNA,CAAD","file":"error-stack-parser.js","sourceRoot":"/data","sourcesContent":["(function(root, factory) {\n 'use strict';\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (typeof define === 'function' && define.amd) {\n define('error-stack-parser', ['stackframe'], factory);\n } else if (typeof exports === 'object') {\n module.exports = factory(require('stackframe'));\n } else {\n root.ErrorStackParser = factory(root.StackFrame);\n }\n}(this, function ErrorStackParser(StackFrame) {\n 'use strict';\n\n var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\\S+\\:\\d+/;\n var CHROME_IE_STACK_REGEXP = /^\\s*at .*(\\S+\\:\\d+|\\(native\\))/m;\n var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\\[native code\\])?$/;\n\n function _map(array, fn, thisArg) {\n if (typeof Array.prototype.map === 'function') {\n return array.map(fn, thisArg);\n } else {\n var output = new Array(array.length);\n for (var i = 0; i < array.length; i++) {\n output[i] = fn.call(thisArg, array[i]);\n }\n return output;\n }\n }\n\n function _filter(array, fn, thisArg) {\n if (typeof Array.prototype.filter === 'function') {\n return array.filter(fn, thisArg);\n } else {\n var output = [];\n for (var i = 0; i < array.length; i++) {\n if (fn.call(thisArg, array[i])) {\n output.push(array[i]);\n }\n }\n return output;\n }\n }\n\n function _indexOf(array, target) {\n if (typeof Array.prototype.indexOf === 'function') {\n return array.indexOf(target);\n } else {\n for (var i = 0; i < array.length; i++) {\n if (array[i] === target) {\n return i;\n }\n }\n return -1;\n }\n }\n\n return {\n /**\n * Given an Error object, extract the most information from it.\n *\n * @param {Error} error object\n * @return {Array} of StackFrames\n */\n parse: function ErrorStackParser$$parse(error) {\n if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') {\n return this.parseOpera(error);\n } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) {\n return this.parseV8OrIE(error);\n } else if (error.stack) {\n return this.parseFFOrSafari(error);\n } else {\n throw new Error('Cannot parse given Error object');\n }\n },\n\n // Separate line and column numbers from a string of the form: (URI:Line:Column)\n extractLocation: function ErrorStackParser$$extractLocation(urlLike) {\n // Fail-fast but return locations like \"(native)\"\n if (urlLike.indexOf(':') === -1) {\n return [urlLike];\n }\n\n var regExp = /(.+?)(?:\\:(\\d+))?(?:\\:(\\d+))?$/;\n var parts = regExp.exec(urlLike.replace(/[\\(\\)]/g, ''));\n return [parts[1], parts[2] || undefined, parts[3] || undefined];\n },\n\n parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) {\n var filtered = _filter(error.stack.split('\\n'), function(line) {\n return !!line.match(CHROME_IE_STACK_REGEXP);\n }, this);\n\n return _map(filtered, function(line) {\n if (line.indexOf('(eval ') > -1) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n line = line.replace(/eval code/g, 'eval').replace(/(\\(eval at [^\\()]*)|(\\)\\,.*$)/g, '');\n }\n var tokens = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(').split(/\\s+/).slice(1);\n var locationParts = this.extractLocation(tokens.pop());\n var functionName = tokens.join(' ') || undefined;\n var fileName = _indexOf(['eval', '<anonymous>'], locationParts[0]) > -1 ? undefined : locationParts[0];\n\n return new StackFrame(functionName, undefined, fileName, locationParts[1], locationParts[2], line);\n }, this);\n },\n\n parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n var filtered = _filter(error.stack.split('\\n'), function(line) {\n return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n }, this);\n\n return _map(filtered, function(line) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n if (line.indexOf(' > eval') > -1) {\n line = line.replace(/ line (\\d+)(?: > eval line \\d+)* > eval\\:\\d+\\:\\d+/g, ':$1');\n }\n\n if (line.indexOf('@') === -1 && line.indexOf(':') === -1) {\n // Safari eval frames only have function names and nothing else\n return new StackFrame(line);\n } else {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionName = tokens.join('@') || undefined;\n return new StackFrame(functionName,\n undefined,\n locationParts[0],\n locationParts[1],\n locationParts[2],\n line);\n }\n }, this);\n },\n\n parseOpera: function ErrorStackParser$$parseOpera(e) {\n if (!e.stacktrace || (e.message.indexOf('\\n') > -1 &&\n e.message.split('\\n').length > e.stacktrace.split('\\n').length)) {\n return this.parseOpera9(e);\n } else if (!e.stack) {\n return this.parseOpera10(e);\n } else {\n return this.parseOpera11(e);\n }\n },\n\n parseOpera9: function ErrorStackParser$$parseOpera9(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)/i;\n var lines = e.message.split('\\n');\n var result = [];\n\n for (var i = 2, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame(undefined, undefined, match[2], match[1], undefined, lines[i]));\n }\n }\n\n return result;\n },\n\n parseOpera10: function ErrorStackParser$$parseOpera10(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$/i;\n var lines = e.stacktrace.split('\\n');\n var result = [];\n\n for (var i = 0, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(\n new StackFrame(\n match[3] || undefined,\n undefined,\n match[2],\n match[1],\n undefined,\n lines[i]\n )\n );\n }\n }\n\n return result;\n },\n\n // Opera 10.65+ Error.stack very similar to FF/Safari\n parseOpera11: function ErrorStackParser$$parseOpera11(error) {\n var filtered = _filter(error.stack.split('\\n'), function(line) {\n return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n }, this);\n\n return _map(filtered, function(line) {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionCall = (tokens.shift() || '');\n var functionName = functionCall\n .replace(/<anonymous function(: (\\w+))?>/, '$2')\n .replace(/\\([^\\)]*\\)/g, '') || undefined;\n var argsRaw;\n if (functionCall.match(/\\(([^\\)]*)\\)/)) {\n argsRaw = functionCall.replace(/^[^\\(]+\\(([^\\)]*)\\)$/, '$1');\n }\n var args = (argsRaw === undefined || argsRaw === '[arguments not available]') ?\n undefined : argsRaw.split(',');\n return new StackFrame(\n functionName,\n args,\n locationParts[0],\n locationParts[1],\n locationParts[2],\n line);\n }, this);\n }\n };\n}));\n\n"]}]}