MOON
Server: Apache
System: Linux e2e-78-16.ssdcloudindia.net 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
User: imensosw (1005)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/imensosw/.trash/node_modules/error-stack-parser/dist/error-stack-parser.min.js.map
{"version":3,"sources":["stackframe.js","error-stack-parser.js"],"names":["root","factory","define","amd","exports","module","StackFrame","this","_isNumber","n","isNaN","parseFloat","isFinite","_capitalize","str","charAt","toUpperCase","substring","_getter","p","obj","Object","i","props","length","hasOwnProperty","undefined","booleanProps","numericProps","stringProps","arrayProps","concat","prototype","getArgs","args","setArgs","v","toString","call","TypeError","getEvalOrigin","evalOrigin","setEvalOrigin","fileName","getFileName","lineNumber","getLineNumber","columnNumber","getColumnNumber","functionName","getFunctionName","getIsEval","fromString","argsStartIndex","indexOf","argsEndIndex","lastIndexOf","split","locationString","parts","exec","Boolean","j","Number","k","String","require","ErrorStackParser","FIREFOX_SAFARI_STACK_REGEXP","CHROME_IE_STACK_REGEXP","SAFARI_NATIVE_CODE_REGEXP","parse","error","stacktrace","parseOpera","stack","match","parseV8OrIE","parseFFOrSafari","Error","extractLocation","urlLike","regExp","replace","filtered","filter","line","map","sanitizedLine","location","tokens","slice","locationParts","pop","join","source","functionNameRegex","matches","e","message","parseOpera9","parseOpera11","parseOpera10","lineRE","lines","result","len","push","argsRaw","functionCall","shift"],"mappings":"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","file":"error-stack-parser.min.js","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('stackframe', [], factory);\n    } else if (typeof exports === 'object') {\n        module.exports = factory();\n    } else {\n        root.StackFrame = factory();\n    }\n}(this, function() {\n    'use strict';\n    function _isNumber(n) {\n        return !isNaN(parseFloat(n)) && isFinite(n);\n    }\n\n    function _capitalize(str) {\n        return str.charAt(0).toUpperCase() + str.substring(1);\n    }\n\n    function _getter(p) {\n        return function() {\n            return this[p];\n        };\n    }\n\n    var booleanProps = ['isConstructor', 'isEval', 'isNative', 'isToplevel'];\n    var numericProps = ['columnNumber', 'lineNumber'];\n    var stringProps = ['fileName', 'functionName', 'source'];\n    var arrayProps = ['args'];\n\n    var props = booleanProps.concat(numericProps, stringProps, arrayProps);\n\n    function StackFrame(obj) {\n        if (obj instanceof Object) {\n            for (var i = 0; i < props.length; i++) {\n                if (obj.hasOwnProperty(props[i]) && obj[props[i]] !== undefined) {\n                    this['set' + _capitalize(props[i])](obj[props[i]]);\n                }\n            }\n        }\n    }\n\n    StackFrame.prototype = {\n        getArgs: function() {\n            return this.args;\n        },\n        setArgs: function(v) {\n            if (Object.prototype.toString.call(v) !== '[object Array]') {\n                throw new TypeError('Args must be an Array');\n            }\n            this.args = v;\n        },\n\n        getEvalOrigin: function() {\n            return this.evalOrigin;\n        },\n        setEvalOrigin: function(v) {\n            if (v instanceof StackFrame) {\n                this.evalOrigin = v;\n            } else if (v instanceof Object) {\n                this.evalOrigin = new StackFrame(v);\n            } else {\n                throw new TypeError('Eval Origin must be an Object or StackFrame');\n            }\n        },\n\n        toString: function() {\n            var fileName = this.getFileName() || '';\n            var lineNumber = this.getLineNumber() || '';\n            var columnNumber = this.getColumnNumber() || '';\n            var functionName = this.getFunctionName() || '';\n            if (this.getIsEval()) {\n                if (fileName) {\n                    return '[eval] (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n                }\n                return '[eval]:' + lineNumber + ':' + columnNumber;\n            }\n            if (functionName) {\n                return functionName + ' (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n            }\n            return fileName + ':' + lineNumber + ':' + columnNumber;\n        }\n    };\n\n    StackFrame.fromString = function StackFrame$$fromString(str) {\n        var argsStartIndex = str.indexOf('(');\n        var argsEndIndex = str.lastIndexOf(')');\n\n        var functionName = str.substring(0, argsStartIndex);\n        var args = str.substring(argsStartIndex + 1, argsEndIndex).split(',');\n        var locationString = str.substring(argsEndIndex + 1);\n\n        if (locationString.indexOf('@') === 0) {\n            var parts = /@(.+?)(?::(\\d+))?(?::(\\d+))?$/.exec(locationString, '');\n            var fileName = parts[1];\n            var lineNumber = parts[2];\n            var columnNumber = parts[3];\n        }\n\n        return new StackFrame({\n            functionName: functionName,\n            args: args || undefined,\n            fileName: fileName,\n            lineNumber: lineNumber || undefined,\n            columnNumber: columnNumber || undefined\n        });\n    };\n\n    for (var i = 0; i < booleanProps.length; i++) {\n        StackFrame.prototype['get' + _capitalize(booleanProps[i])] = _getter(booleanProps[i]);\n        StackFrame.prototype['set' + _capitalize(booleanProps[i])] = (function(p) {\n            return function(v) {\n                this[p] = Boolean(v);\n            };\n        })(booleanProps[i]);\n    }\n\n    for (var j = 0; j < numericProps.length; j++) {\n        StackFrame.prototype['get' + _capitalize(numericProps[j])] = _getter(numericProps[j]);\n        StackFrame.prototype['set' + _capitalize(numericProps[j])] = (function(p) {\n            return function(v) {\n                if (!_isNumber(v)) {\n                    throw new TypeError(p + ' must be a Number');\n                }\n                this[p] = Number(v);\n            };\n        })(numericProps[j]);\n    }\n\n    for (var k = 0; k < stringProps.length; k++) {\n        StackFrame.prototype['get' + _capitalize(stringProps[k])] = _getter(stringProps[k]);\n        StackFrame.prototype['set' + _capitalize(stringProps[k])] = (function(p) {\n            return function(v) {\n                this[p] = String(v);\n            };\n        })(stringProps[k]);\n    }\n\n    return StackFrame;\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    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    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 = error.stack.split('\\n').filter(function(line) {\n                return !!line.match(CHROME_IE_STACK_REGEXP);\n            }, this);\n\n            return filtered.map(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 sanitizedLine = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(');\n\n                // capture and preseve the parenthesized location \"(/foo/my bar.js:12:87)\" in\n                // case it has spaces in it, as the string is split on \\s+ later on\n                var location = sanitizedLine.match(/ (\\((.+):(\\d+):(\\d+)\\)$)/);\n\n                // remove the parenthesized location from the line, if it was matched\n                sanitizedLine = location ? sanitizedLine.replace(location[0], '') : sanitizedLine;\n\n                var tokens = sanitizedLine.split(/\\s+/).slice(1);\n                // if a location was matched, pass it to extractLocation() otherwise pop the last token\n                var locationParts = this.extractLocation(location ? location[1] : tokens.pop());\n                var functionName = tokens.join(' ') || undefined;\n                var fileName = ['eval', '<anonymous>'].indexOf(locationParts[0]) > -1 ? undefined : locationParts[0];\n\n                return new StackFrame({\n                    functionName: functionName,\n                    fileName: fileName,\n                    lineNumber: locationParts[1],\n                    columnNumber: locationParts[2],\n                    source: line\n                });\n            }, this);\n        },\n\n        parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n            var filtered = error.stack.split('\\n').filter(function(line) {\n                return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n            }, this);\n\n            return filtered.map(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({\n                        functionName: line\n                    });\n                } else {\n                    var functionNameRegex = /((.*\".+\"[^@]*)?[^@]*)(?:@)/;\n                    var matches = line.match(functionNameRegex);\n                    var functionName = matches && matches[1] ? matches[1] : undefined;\n                    var locationParts = this.extractLocation(line.replace(functionNameRegex, ''));\n\n                    return new StackFrame({\n                        functionName: functionName,\n                        fileName: locationParts[0],\n                        lineNumber: locationParts[1],\n                        columnNumber: locationParts[2],\n                        source: line\n                    });\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({\n                        fileName: match[2],\n                        lineNumber: match[1],\n                        source: lines[i]\n                    }));\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                            functionName: match[3] || undefined,\n                            fileName: match[2],\n                            lineNumber: match[1],\n                            source: 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 = error.stack.split('\\n').filter(function(line) {\n                return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n            }, this);\n\n            return filtered.map(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\n                return new StackFrame({\n                    functionName: functionName,\n                    args: args,\n                    fileName: locationParts[0],\n                    lineNumber: locationParts[1],\n                    columnNumber: locationParts[2],\n                    source: line\n                });\n            }, this);\n        }\n    };\n}));\n"]}