{"version":3,"file":"bugsnag-09646091f18e0328247f.js","mappings":"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","sources":["webpack://learning_platform/./app/javascript/shared/utils/user-agent.js","webpack://learning_platform/./app/javascript/shared/utils/bugsnag_client.js","webpack://learning_platform/./app/javascript/shared/utils/keymap.js","webpack://learning_platform/./node_modules/bugsnag-js/dist/bugsnag.js","webpack://learning_platform/./node_modules/lodash.camelcase/index.js","webpack://learning_platform/./node_modules/lodash.isarray/index.js","webpack://learning_platform/./node_modules/lodash.isplainobject/index.js","webpack://learning_platform/./node_modules/lodash.snakecase/index.js","webpack://learning_platform/./app/javascript/shared/utils/config.erb","webpack://learning_platform/./node_modules/ua-parser-js/src/ua-parser.js"],"sourcesContent":["import { UAParser } from 'ua-parser-js';\n\nclass UserAgentDetectionError extends Error {\n constructor(uaParserResult, cause) {\n super('failed to detect user agent');\n this.name = 'UserAgentDetectionError';\n this.uaParserResult = uaParserResult;\n this.cause = cause;\n }\n}\n\nexport const detectUserAgent = () => {\n const ok = { outdated: false, error: null };\n let result = null;\n\n try {\n result = new UAParser().getResult();\n\n if (result.ua.includes('jsdom')) return ok;\n\n const {\n browser: { name, major }\n } = result;\n const majorInt = parseInt(major, 10);\n\n // Browser baseline: Latest (long-term support) release in 2020\n\n // Firefox ESR 78.0 released 2020-06-30\n if (name === 'Firefox' && majorInt < 78) return { ...ok, outdated: true };\n\n // Chrome Stable 87 released 2020-12-02\n if (name === 'Chrome' && majorInt < 87) return { ...ok, outdated: true };\n\n // Safari 14 (for MacOS and iOS) was released 2020-09-16\n if (name.includes('Safari') && majorInt < 14)\n return { ...ok, outdated: true };\n\n // Any detected, but unknown (= not on the disallow-list) browser is not outdated.\n return ok;\n } catch (err) {\n // Any browser that failed to detect is not outdated, but we store the error to report it.\n return { ...ok, error: new UserAgentDetectionError(result, err) };\n }\n};\n\nexport default detectUserAgent();\n","import bugsnag from 'bugsnag-js';\n\nimport config from './config.erb';\nimport userAgent from './user-agent';\n\nconst apiKey = config.bugsnagApiKey;\nconst notifyReleaseStages = ['production', 'staging'];\nconst releaseStage = process.env.RAILS_ENV;\n\nexport const beforeSend = report => {\n if (userAgent.outdated) {\n // eslint-disable-next-line no-console\n console.log('Bugsnag disabled due to outdated user-agent.');\n report.ignore();\n } else {\n const userId = window.current_user_id;\n\n if (userId) {\n report.user = { id: userId }; // eslint-disable-line no-param-reassign\n }\n }\n};\n\nconst instance = bugsnag({\n apiKey,\n notifyReleaseStages,\n releaseStage,\n beforeSend\n});\n\nif (userAgent.error) {\n instance.notify(userAgent.detectionError);\n}\n\nexport default instance;\n","import isArray from 'lodash.isarray';\nimport isPlainObject from 'lodash.isplainobject';\nimport camelCaseString from 'lodash.camelcase';\nimport snakeCaseString from 'lodash.snakecase';\n\nfunction keymap(value, fn) {\n if (isArray(value)) {\n return value.map(val => keymap(val, fn));\n }\n\n if (isPlainObject(value)) {\n const transform = (object, key) =>\n Object.assign(object, { [fn(key)]: keymap(value[key], fn) });\n return Object.keys(value).reduce(transform, {});\n }\n\n return value;\n}\n\nfunction snakecase(value) {\n return keymap(value, snakeCaseString);\n}\n\nfunction camelcase(value) {\n return keymap(value, camelCaseString);\n}\n\nexport { camelcase, snakecase };\n","(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.bugsnag = f()}})(function(){var define,module,exports;\n// minimal implementations of useful ES functionality\n\n// all we really need for arrays is reduce – everything else is just sugar!\n\n// Array#reduce\nvar reduce = function (arr, fn, accum) {\n var val = accum;\n for (var i = 0, len = arr.length; i < len; i++) {\n val = fn(val, arr[i], i, arr);\n }return val;\n};\n\n// Array#filter\nvar filter = function (arr, fn) {\n return reduce(arr, function (accum, item, i, arr) {\n return !fn(item, i, arr) ? accum : accum.concat(item);\n }, []);\n};\n\n// Array#map\nvar map = function (arr, fn) {\n return reduce(arr, function (accum, item, i, arr) {\n return accum.concat(fn(item, i, arr));\n }, []);\n};\n\n// Array#includes\nvar includes = function (arr, x) {\n return reduce(arr, function (accum, item, i, arr) {\n return accum === true || item === x;\n }, false);\n};\n\nvar _hasDontEnumBug = !{ toString: null }.propertyIsEnumerable('toString');\nvar _dontEnums = ['toString', 'toLocaleString', 'valueOf', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'constructor'];\n\n// Object#keys\nvar keys = function (obj) {\n // stripped down version of\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/Keys\n var result = [];\n var prop = void 0;\n for (prop in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, prop)) result.push(prop);\n }\n if (!_hasDontEnumBug) return result;\n for (var i = 0, len = _dontEnums.length; i < len; i++) {\n if (Object.prototype.hasOwnProperty.call(obj, _dontEnums[i])) result.push(_dontEnums[i]);\n }\n return result;\n};\n\n// Array#isArray\nvar isArray = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n};\n\nvar _pad = function (n) {\n return n < 10 ? '0' + n : n;\n};\n\n// Date#toISOString\nvar isoDate = function () {\n // from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString\n var d = new Date();\n return d.getUTCFullYear() + '-' + _pad(d.getUTCMonth() + 1) + '-' + _pad(d.getUTCDate()) + 'T' + _pad(d.getUTCHours()) + ':' + _pad(d.getUTCMinutes()) + ':' + _pad(d.getUTCSeconds()) + '.' + (d.getUTCMilliseconds() / 1000).toFixed(3).slice(2, 5) + 'Z';\n};\n\nvar _$esUtils_4 = { map: map, reduce: reduce, filter: filter, includes: includes, keys: keys, isArray: isArray, isoDate: isoDate };\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar __dummy_1$0 = 0,\n __isoDate_1 = _$esUtils_4.isoDate;\n\nvar BugsnagBreadcrumb = function () {\n function BugsnagBreadcrumb() {\n var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '[anonymous]';\n var metaData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'manual';\n var timestamp = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : __isoDate_1();\n\n _classCallCheck(this, BugsnagBreadcrumb);\n\n this.type = type;\n this.name = name;\n this.metaData = metaData;\n this.timestamp = timestamp;\n }\n\n BugsnagBreadcrumb.prototype.toJSON = function toJSON() {\n return {\n type: this.type,\n name: this.name,\n timestamp: this.timestamp,\n metaData: this.metaData\n };\n };\n\n return BugsnagBreadcrumb;\n}();\n\nvar _$BugsnagBreadcrumb_1 = BugsnagBreadcrumb;\n\nvar _$validators_7 = {};\nvar __dummy_7$0 = 0,\n __includes_7 = _$esUtils_4.includes;\n\n_$validators_7.positiveIntIfDefined = function (value) {\n return __includes_7(['undefined', 'number'], typeof value) && parseInt('' + value, 10) === value && value > 0;\n};\n\n_$validators_7.stringWithLength = function (value) {\n return typeof value === 'string' && !!value.length;\n};\n\nvar _$config_3 = {};\nvar __dummy_3$0 = 0,\n __filter_3 = _$esUtils_4.filter,\n __reduce_3 = _$esUtils_4.reduce,\n __keys_3 = _$esUtils_4.keys,\n __isArray_3 = _$esUtils_4.isArray,\n __includes_3 = _$esUtils_4.includes;\n\nvar __dummy_3$1 = 0,\n positiveIntIfDefined = _$validators_7.positiveIntIfDefined,\n stringWithLength = _$validators_7.stringWithLength;\n\n_$config_3.schema = {\n apiKey: {\n defaultValue: function () {\n return null;\n },\n message: 'is required',\n validate: stringWithLength\n },\n appVersion: {\n defaultValue: function () {\n return null;\n },\n message: 'should be a string',\n validate: function (value) {\n return value === null || stringWithLength(value);\n }\n },\n autoNotify: {\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false',\n validate: function (value) {\n return value === true || value === false;\n }\n },\n beforeSend: {\n defaultValue: function () {\n return [];\n },\n message: 'should be a function or array of functions',\n validate: function (value) {\n return typeof value === 'function' || __isArray_3(value) && __filter_3(value, function (f) {\n return typeof f === 'function';\n }).length === value.length;\n }\n },\n endpoints: {\n defaultValue: function () {\n return {\n notify: 'https://notify.bugsnag.com',\n sessions: 'https://sessions.bugsnag.com'\n };\n },\n message: 'should be an object containing endpoint URLs { notify, sessions }. sessions is optional if autoCaptureSessions=false',\n validate: function (val, obj) {\n return (\n // first, ensure it's an object\n val && typeof val === 'object' &&\n // endpoints.notify must always be set\n stringWithLength(val.notify) && (\n // endpoints.sessions must be set unless session tracking is explicitly off\n obj.autoCaptureSessions === false || stringWithLength(val.sessions)) &&\n // ensure no keys other than notify/session are set on endpoints object\n __filter_3(__keys_3(val), function (k) {\n return !__includes_3(['notify', 'sessions'], k);\n }).length === 0\n );\n }\n },\n autoCaptureSessions: {\n defaultValue: function (val, opts) {\n return opts.endpoints === undefined || !!opts.endpoints && !!opts.endpoints.sessions;\n },\n message: 'should be true|false',\n validate: function (val) {\n return val === true || val === false;\n }\n },\n notifyReleaseStages: {\n defaultValue: function () {\n return null;\n },\n message: 'should be an array of strings',\n validate: function (value) {\n return value === null || __isArray_3(value) && __filter_3(value, function (f) {\n return typeof f === 'string';\n }).length === value.length;\n }\n },\n releaseStage: {\n defaultValue: function () {\n return 'production';\n },\n message: 'should be a string',\n validate: function (value) {\n return typeof value === 'string' && value.length;\n }\n },\n maxBreadcrumbs: {\n defaultValue: function () {\n return 20;\n },\n message: 'should be a number ≤40',\n validate: function (value) {\n return value === 0 || positiveIntIfDefined(value) && (value === undefined || value <= 40);\n }\n },\n autoBreadcrumbs: {\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false',\n validate: function (value) {\n return typeof value === 'boolean';\n }\n },\n user: {\n defaultValue: function () {\n return null;\n },\n message: '(object) user should be an object',\n validate: function (value) {\n return typeof value === 'object';\n }\n },\n metaData: {\n defaultValue: function () {\n return null;\n },\n message: 'should be an object',\n validate: function (value) {\n return typeof value === 'object';\n }\n },\n logger: {\n defaultValue: function () {\n return undefined;\n },\n message: 'should be null or an object with methods { debug, info, warn, error }',\n validate: function (value) {\n return !value || value && __reduce_3(['debug', 'info', 'warn', 'error'], function (accum, method) {\n return accum && typeof value[method] === 'function';\n }, true);\n }\n }\n};\n\n_$config_3.mergeDefaults = function (opts, schema) {\n if (!opts || !schema) throw new Error('opts and schema objects are required');\n return __reduce_3(__keys_3(schema), function (accum, key) {\n accum[key] = opts[key] !== undefined ? opts[key] : schema[key].defaultValue(opts[key], opts);\n return accum;\n }, {});\n};\n\n_$config_3.validate = function (opts, schema) {\n if (!opts || !schema) throw new Error('opts and schema objects are required');\n var errors = __reduce_3(__keys_3(schema), function (accum, key) {\n if (schema[key].validate(opts[key], opts)) return accum;\n return accum.concat({ key: key, message: schema[key].message, value: opts[key] });\n }, []);\n return { valid: !errors.length, errors: errors };\n};\n\nvar _$inferReleaseStage_6 = function (client) {\n return client.app && typeof client.app.releaseStage === 'string' ? client.app.releaseStage : client.config.releaseStage;\n};\n\n// Given `err` which may be an error, does it have a stack property which is a string?\nvar _$hasStack_5 = function (err) {\n return !!err && (!!err.stack || !!err.stacktrace || !!err['opera#sourceloc']) && typeof (err.stack || err.stacktrace || err['opera#sourceloc']) === 'string' && err.stack !== err.name + ': ' + err.message;\n};\n\nvar _$stackframe_36 = {};\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('stackframe', [], factory);\n } else if (typeof _$stackframe_36 === 'object') {\n _$stackframe_36 = factory();\n } else {\n root.StackFrame = factory();\n }\n})(this, function () {\n 'use strict';\n\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 functionName = this.getFunctionName() || '{anonymous}';\n var args = '(' + (this.getArgs() || []).join(',') + ')';\n var fileName = this.getFileName() ? '@' + this.getFileName() : '';\n var lineNumber = _isNumber(this.getLineNumber()) ? ':' + this.getLineNumber() : '';\n var columnNumber = _isNumber(this.getColumnNumber()) ? ':' + this.getColumnNumber() : '';\n return functionName + args + fileName + lineNumber + columnNumber;\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\nvar _$errorStackParser_33 = {};\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 _$errorStackParser_33 === 'object') {\n _$errorStackParser_33 = factory(_$stackframe_36);\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 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 = ['eval', ''].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 && 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(new StackFrame({\n functionName: match[3] || undefined,\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\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.replace(//, '$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\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\nvar _$stackGenerator_35 = {};\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('stack-generator', ['stackframe'], factory);\n } else if (typeof _$stackGenerator_35 === 'object') {\n _$stackGenerator_35 = factory(_$stackframe_36);\n } else {\n root.StackGenerator = factory(root.StackFrame);\n }\n})(this, function (StackFrame) {\n return {\n backtrace: function StackGenerator$$backtrace(opts) {\n var stack = [];\n var maxStackSize = 10;\n\n if (typeof opts === 'object' && typeof opts.maxStackSize === 'number') {\n maxStackSize = opts.maxStackSize;\n }\n\n var curr = arguments.callee;\n while (curr && stack.length < maxStackSize && curr['arguments']) {\n // Allow V8 optimizations\n var args = new Array(curr['arguments'].length);\n for (var i = 0; i < args.length; ++i) {\n args[i] = curr['arguments'][i];\n }\n if (/function(?:\\s+([\\w$]+))+\\s*\\(/.test(curr.toString())) {\n stack.push(new StackFrame({ functionName: RegExp.$1 || undefined, args: args }));\n } else {\n stack.push(new StackFrame({ args: args }));\n }\n\n try {\n curr = curr.caller;\n } catch (e) {\n break;\n }\n }\n return stack;\n }\n };\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction ___classCallCheck_9(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* removed: var _$errorStackParser_33 = require('error-stack-parser'); */;\n/* removed: var _$stackGenerator_35 = require('stack-generator'); */;\n/* removed: var _$hasStack_5 = require('./lib/has-stack'); */;\n\nvar __dummy_9$0 = 0,\n __reduce_9 = _$esUtils_4.reduce,\n __filter_9 = _$esUtils_4.filter;\n\nvar BugsnagReport = function () {\n function BugsnagReport(errorClass, errorMessage) {\n var stacktrace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n var handledState = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : defaultHandledState();\n\n ___classCallCheck_9(this, BugsnagReport);\n\n // duck-typing ftw >_<\n this.__isBugsnagReport = true;\n\n this._ignored = false;\n\n // private (un)handled state\n this._handledState = handledState;\n\n // setable props\n this.app = undefined;\n this.apiKey = undefined;\n this.breadcrumbs = [];\n this.context = undefined;\n this.device = undefined;\n this.errorClass = stringOrFallback(errorClass, '[no error class]');\n this.errorMessage = stringOrFallback(errorMessage, '[no error message]');\n this.groupingHash = undefined;\n this.metaData = {};\n this.request = undefined;\n this.severity = this._handledState.severity;\n this.stacktrace = __reduce_9(stacktrace, function (accum, frame) {\n var f = formatStackframe(frame);\n // don't include a stackframe if none of its properties are defined\n try {\n if (JSON.stringify(f) === '{}') return accum;\n return accum.concat(f);\n } catch (e) {\n return accum;\n }\n }, []);\n this.user = undefined;\n this.session = undefined;\n }\n\n BugsnagReport.prototype.ignore = function ignore() {\n this._ignored = true;\n };\n\n BugsnagReport.prototype.isIgnored = function isIgnored() {\n return this._ignored;\n };\n\n BugsnagReport.prototype.updateMetaData = function updateMetaData(section) {\n var _updates;\n\n if (!section) return this;\n var updates = void 0;\n\n // updateMetaData(\"section\", null) -> removes section\n if ((arguments.length <= 1 ? undefined : arguments[1]) === null) return this.removeMetaData(section);\n\n // updateMetaData(\"section\", \"property\", null) -> removes property from section\n if ((arguments.length <= 2 ? undefined : arguments[2]) === null) return this.removeMetaData(section, arguments.length <= 1 ? undefined : arguments[1], arguments.length <= 2 ? undefined : arguments[2]);\n\n // normalise the two supported input types into object form\n if (typeof (arguments.length <= 1 ? undefined : arguments[1]) === 'object') updates = arguments.length <= 1 ? undefined : arguments[1];\n if (typeof (arguments.length <= 1 ? undefined : arguments[1]) === 'string') updates = (_updates = {}, _updates[arguments.length <= 1 ? undefined : arguments[1]] = arguments.length <= 2 ? undefined : arguments[2], _updates);\n\n // exit if we don't have an updates object at this point\n if (!updates) return this;\n\n // ensure a section with this name exists\n if (!this.metaData[section]) this.metaData[section] = {};\n\n // merge the updates with the existing section\n this.metaData[section] = _extends({}, this.metaData[section], updates);\n\n return this;\n };\n\n BugsnagReport.prototype.removeMetaData = function removeMetaData(section, property) {\n if (typeof section !== 'string') return this;\n\n // remove an entire section\n if (!property) {\n delete this.metaData[section];\n return this;\n }\n\n // remove a single property from a section\n if (this.metaData[section]) {\n delete this.metaData[section][property];\n return this;\n }\n\n return this;\n };\n\n BugsnagReport.prototype.toJSON = function toJSON() {\n return {\n payloadVersion: '4',\n exceptions: [{\n errorClass: this.errorClass,\n message: this.errorMessage,\n stacktrace: this.stacktrace,\n type: 'browserjs'\n }],\n severity: this.severity,\n unhandled: this._handledState.unhandled,\n severityReason: this._handledState.severityReason,\n app: this.app,\n device: this.device,\n breadcrumbs: this.breadcrumbs,\n context: this.context,\n user: this.user,\n metaData: this.metaData,\n groupingHash: this.groupingHash,\n request: this.request,\n session: this.session\n };\n };\n\n return BugsnagReport;\n}();\n\n// takes a stacktrace.js style stackframe (https://github.com/stacktracejs/stackframe)\n// and returns a Bugsnag compatible stackframe (https://docs.bugsnag.com/api/error-reporting/#json-payload)\n\n\nvar formatStackframe = function (frame) {\n var f = {\n file: frame.fileName,\n method: normaliseFunctionName(frame.functionName),\n lineNumber: frame.lineNumber,\n columnNumber: frame.columnNumber,\n code: undefined,\n inProject: undefined\n // Some instances result in no file:\n // - calling notify() from chrome's terminal results in no file/method.\n // - non-error exception thrown from global code in FF\n // This adds one.\n };if (f.lineNumber > -1 && !f.file && !f.method) {\n f.file = 'global code';\n }\n return f;\n};\n\nvar normaliseFunctionName = function (name) {\n return (/^global code$/i.test(name) ? 'global code' : name\n );\n};\n\nvar defaultHandledState = function () {\n return {\n unhandled: false,\n severity: 'warning',\n severityReason: { type: 'handledException' }\n };\n};\n\nvar stringOrFallback = function (str, fallback) {\n return typeof str === 'string' && str ? str : fallback;\n};\n\n// Helpers\n\nBugsnagReport.getStacktrace = function (error) {\n var errorFramesToSkip = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var generatedFramesToSkip = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n\n if (_$hasStack_5(error)) return _$errorStackParser_33.parse(error).slice(errorFramesToSkip);\n // error wasn't provided or didn't have a stacktrace so try to walk the callstack\n return __filter_9(_$stackGenerator_35.backtrace(), function (frame) {\n return (frame.functionName || '').indexOf('StackGenerator$$') === -1;\n }).slice(1 + generatedFramesToSkip);\n};\n\nBugsnagReport.ensureReport = function (reportOrError) {\n var errorFramesToSkip = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var generatedFramesToSkip = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;\n\n // notify() can be called with a Report object. In this case no action is required\n if (reportOrError.__isBugsnagReport) return reportOrError;\n try {\n var stacktrace = BugsnagReport.getStacktrace(reportOrError, errorFramesToSkip, 1 + generatedFramesToSkip);\n return new BugsnagReport(reportOrError.name, reportOrError.message, stacktrace);\n } catch (e) {\n return new BugsnagReport(reportOrError.name, reportOrError.message, []);\n }\n};\n\nvar _$BugsnagReport_9 = BugsnagReport;\n\nvar _$pad_31 = function pad(num, size) {\n var s = '000000000' + num;\n return s.substr(s.length - size);\n};\n\n/* removed: var _$pad_31 = require('./pad.js'); */;\n\nvar env = typeof window === 'object' ? window : self;\nvar globalCount = 0;\nfor (var prop in env) {\n if (Object.hasOwnProperty.call(env, prop)) globalCount++;\n}\nvar mimeTypesLength = navigator.mimeTypes ? navigator.mimeTypes.length : 0;\nvar clientId = _$pad_31((mimeTypesLength + navigator.userAgent.length).toString(36) + globalCount.toString(36), 4);\n\nvar _$fingerprint_30 = function fingerprint() {\n return clientId;\n};\n\n/**\n * cuid.js\n * Collision-resistant UID generator for browsers and node.\n * Sequential for fast db lookups and recency sorting.\n * Safe for element IDs and server-side lookups.\n *\n * Extracted from CLCTR\n *\n * Copyright (c) Eric Elliott 2012\n * MIT License\n */\n\n/* removed: var _$fingerprint_30 = require('./lib/fingerprint.js'); */;\n/* removed: var _$pad_31 = require('./lib/pad.js'); */;\n\nvar c = 0,\n blockSize = 4,\n base = 36,\n discreteValues = Math.pow(base, blockSize);\n\nfunction randomBlock() {\n return _$pad_31((Math.random() * discreteValues << 0).toString(base), blockSize);\n}\n\nfunction safeCounter() {\n c = c < discreteValues ? c : 0;\n c++; // this is not subliminal\n return c - 1;\n}\n\nfunction cuid() {\n // Starting with a lowercase letter makes\n // it HTML element ID friendly.\n var letter = 'c',\n // hard-coded allows for sequential access\n\n // timestamp\n // warning: this exposes the exact date and time\n // that the uid was created.\n timestamp = new Date().getTime().toString(base),\n\n\n // Prevent same-machine collisions.\n counter = _$pad_31(safeCounter().toString(base), blockSize),\n\n\n // A few chars to generate distinct ids for different\n // clients (so different computers are far less\n // likely to generate the same id)\n print = _$fingerprint_30(),\n\n\n // Grab some more chars from Math.random()\n random = randomBlock() + randomBlock();\n\n return letter + timestamp + counter + print + random;\n}\n\ncuid.fingerprint = _$fingerprint_30;\n\nvar _$cuid_29 = cuid;\n\nfunction ___classCallCheck_10(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar __dummy_10$0 = 0,\n __isoDate_10 = _$esUtils_4.isoDate;\n\n/* removed: var _$cuid_29 = require('@bugsnag/cuid'); */;\n\nvar Session = function () {\n function Session() {\n ___classCallCheck_10(this, Session);\n\n this.id = _$cuid_29();\n this.startedAt = __isoDate_10();\n this._handled = 0;\n this._unhandled = 0;\n }\n\n Session.prototype.toJSON = function toJSON() {\n return {\n id: this.id,\n startedAt: this.startedAt,\n events: { handled: this._handled, unhandled: this._unhandled }\n };\n };\n\n Session.prototype.trackError = function trackError(report) {\n this[report._handledState.unhandled ? '_unhandled' : '_handled'] += 1;\n };\n\n return Session;\n}();\n\nvar _$Session_10 = Session;\n\n\n/**\n * Expose `isError`.\n */\n\nvar _$isError_34 = isError;\n\n/**\n * Test whether `value` is error object.\n *\n * @param {*} value\n * @returns {boolean}\n */\n\nfunction isError(value) {\n switch (Object.prototype.toString.call(value)) {\n case '[object Error]':\n return true;\n case '[object Exception]':\n return true;\n case '[object DOMException]':\n return true;\n default:\n return value instanceof Error;\n }\n}\n\nvar ___extends_2 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction ___classCallCheck_2(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/* removed: var _$config_3 = require('./config'); */;\n/* removed: var _$BugsnagReport_9 = require('./report'); */;\n/* removed: var _$BugsnagBreadcrumb_1 = require('./breadcrumb'); */;\n/* removed: var _$Session_10 = require('./session'); */;\n\nvar __dummy_2$0 = 0,\n __map_2 = _$esUtils_4.map,\n __reduce_2 = _$esUtils_4.reduce,\n __includes_2 = _$esUtils_4.includes,\n __isArray_2 = _$esUtils_4.isArray;\n\n/* removed: var _$inferReleaseStage_6 = require('./lib/infer-release-stage'); */;\n/* removed: var _$isError_34 = require('iserror'); */;\n\nvar LOG_USAGE_ERR_PREFIX = 'Usage error.';\nvar REPORT_USAGE_ERR_PREFIX = 'Bugsnag usage error.';\n\nvar noop = function () {};\n\nvar BugsnagClient = function () {\n function BugsnagClient(notifier) {\n var configSchema = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _$config_3.schema;\n var session = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n ___classCallCheck_2(this, BugsnagClient);\n\n if (!notifier || !notifier.name || !notifier.version || !notifier.url) {\n throw new Error('`notifier` argument is required');\n }\n\n // notifier id\n this.notifier = notifier;\n\n // config\n this.configSchema = configSchema;\n\n // configure() should be called before notify()\n this._configured = false;\n\n // i/o\n this._transport = { sendSession: noop, sendReport: noop };\n this._logger = { debug: noop, info: noop, warn: noop, error: noop\n\n // plugins\n };this.plugins = [];\n\n this.session = session;\n this.beforeSession = [];\n\n this.breadcrumbs = [];\n\n // setable props\n this.app = {};\n this.context = undefined;\n this.device = undefined;\n this.metaData = undefined;\n this.request = undefined;\n this.user = {};\n\n // expose internal constructors\n this.BugsnagReport = _$BugsnagReport_9;\n this.BugsnagBreadcrumb = _$BugsnagBreadcrumb_1;\n this.BugsnagSession = _$Session_10;\n }\n\n BugsnagClient.prototype.configure = function configure() {\n var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n this.config = _$config_3.mergeDefaults(___extends_2({}, this.config, opts), this.configSchema);\n var validity = _$config_3.validate(this.config, this.configSchema);\n if (!validity.valid === true) throw new Error(generateConfigErrorMessage(validity.errors));\n if (typeof this.config.beforeSend === 'function') this.config.beforeSend = [this.config.beforeSend];\n if (this.config.appVersion !== null) this.app.version = this.config.appVersion;\n if (this.config.metaData) this.metaData = this.config.metaData;\n if (this.config.user) this.user = this.config.user;\n if (this.config.logger) this.logger(this.config.logger);\n this._configured = true;\n this._logger.debug('Loaded!');\n return this;\n };\n\n BugsnagClient.prototype.use = function use(plugin) {\n this.plugins.push(plugin);\n return plugin.init(this);\n };\n\n BugsnagClient.prototype.transport = function transport(t) {\n this._transport = t;\n return this;\n };\n\n BugsnagClient.prototype.logger = function logger(l, sid) {\n this._logger = l;\n return this;\n };\n\n BugsnagClient.prototype.sessionDelegate = function sessionDelegate(s) {\n this._sessionDelegate = s;\n return this;\n };\n\n BugsnagClient.prototype.startSession = function startSession() {\n if (!this._sessionDelegate) {\n this._logger.warn('No session implementation is installed');\n return this;\n }\n return this._sessionDelegate.startSession(this);\n };\n\n BugsnagClient.prototype.leaveBreadcrumb = function leaveBreadcrumb(name, metaData, type, timestamp) {\n if (!this._configured) throw new Error('client not configured');\n\n // coerce bad values so that the defaults get set\n name = name || undefined;\n type = typeof type === 'string' ? type : undefined;\n timestamp = typeof timestamp === 'string' ? timestamp : undefined;\n metaData = typeof metaData === 'object' && metaData !== null ? metaData : undefined;\n\n // if no name and no metaData, usefulness of this crumb is questionable at best so discard\n if (typeof name !== 'string' && !metaData) return;\n\n var crumb = new _$BugsnagBreadcrumb_1(name, metaData, type, timestamp);\n\n // push the valid crumb onto the queue and maintain the length\n this.breadcrumbs.push(crumb);\n if (this.breadcrumbs.length > this.config.maxBreadcrumbs) {\n this.breadcrumbs = this.breadcrumbs.slice(this.breadcrumbs.length - this.config.maxBreadcrumbs);\n }\n\n return this;\n };\n\n BugsnagClient.prototype.notify = function notify(error) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!this._configured) throw new Error('client not configured');\n\n // releaseStage can be set via config.releaseStage or client.app.releaseStage\n var releaseStage = _$inferReleaseStage_6(this);\n\n // ensure we have an error (or a reasonable object representation of an error)\n\n var _normaliseError = normaliseError(error, opts, this._logger),\n err = _normaliseError.err,\n errorFramesToSkip = _normaliseError.errorFramesToSkip,\n _opts = _normaliseError._opts;\n\n if (_opts) opts = _opts;\n\n // if we have something falsey at this point, report usage error\n if (!err) {\n var msg = generateNotifyUsageMessage('nothing');\n this._logger.warn(LOG_USAGE_ERR_PREFIX + ' ' + msg);\n err = new Error(REPORT_USAGE_ERR_PREFIX + ' ' + msg);\n }\n\n // ensure opts is an object\n if (typeof opts !== 'object' || opts === null) opts = {};\n\n // create a report from the error, if it isn't one already\n var report = _$BugsnagReport_9.ensureReport(err, errorFramesToSkip, 1);\n\n report.app = ___extends_2({ releaseStage: releaseStage }, report.app, this.app);\n report.context = report.context || opts.context || this.context || undefined;\n report.device = ___extends_2({}, report.device, this.device, opts.device);\n report.request = ___extends_2({}, report.request, this.request, opts.request);\n report.user = ___extends_2({}, report.user, this.user, opts.user);\n report.metaData = ___extends_2({}, report.metaData, this.metaData, opts.metaData);\n report.breadcrumbs = this.breadcrumbs.slice(0);\n\n if (this.session) {\n this.session.trackError(report);\n report.session = this.session;\n }\n\n // set severity if supplied\n if (opts.severity !== undefined) {\n report.severity = opts.severity;\n report._handledState.severityReason = { type: 'userSpecifiedSeverity' };\n }\n\n // exit early if the reports should not be sent on the current releaseStage\n if (__isArray_2(this.config.notifyReleaseStages) && !__includes_2(this.config.notifyReleaseStages, releaseStage)) {\n this._logger.warn('Report not sent due to releaseStage/notifyReleaseStages configuration');\n return false;\n }\n\n var originalSeverity = report.severity;\n\n var beforeSend = [].concat(opts.beforeSend).concat(this.config.beforeSend);\n var preventSend = __reduce_2(beforeSend, function (accum, fn) {\n if (accum === true) return true;\n if (typeof fn === 'function' && fn(report) === false) return true;\n if (report.isIgnored()) return true;\n return false;\n }, false);\n\n if (preventSend) {\n this._logger.debug('Report not sent due to beforeSend callback');\n return false;\n }\n\n // only leave a crumb for the error if actually got sent\n if (this.config.autoBreadcrumbs) {\n this.leaveBreadcrumb(report.errorClass, {\n errorClass: report.errorClass,\n errorMessage: report.errorMessage,\n severity: report.severity\n }, 'error');\n }\n\n if (originalSeverity !== report.severity) {\n report._handledState.severityReason = { type: 'userCallbackSetSeverity' };\n }\n\n this._transport.sendReport(this._logger, this.config, {\n apiKey: report.apiKey || this.config.apiKey,\n notifier: this.notifier,\n events: [report]\n });\n\n return true;\n };\n\n return BugsnagClient;\n}();\n\nvar normaliseError = function (error, opts, logger) {\n var err = void 0;\n var errorFramesToSkip = 0;\n var _opts = void 0;\n switch (typeof error) {\n case 'string':\n if (typeof opts === 'string') {\n // ≤v3 used to have a notify('ErrorName', 'Error message') interface\n // report usage/deprecation errors if this function is called like that\n var _msg = generateNotifyUsageMessage('string/string');\n logger.warn(LOG_USAGE_ERR_PREFIX + ' ' + _msg);\n err = new Error(REPORT_USAGE_ERR_PREFIX + ' ' + _msg);\n _opts = { metaData: { notifier: { notifyArgs: [error, opts] } } };\n } else {\n err = new Error(String(error));\n errorFramesToSkip += 2;\n }\n break;\n case 'number':\n case 'boolean':\n err = new Error(String(error));\n break;\n case 'function':\n var msg = generateNotifyUsageMessage('function');\n logger.warn(LOG_USAGE_ERR_PREFIX + ' ' + msg);\n err = new Error(REPORT_USAGE_ERR_PREFIX + ' ' + msg);\n break;\n case 'object':\n if (error !== null && (_$isError_34(error) || error.__isBugsnagReport)) {\n err = error;\n } else if (error !== null && hasNecessaryFields(error)) {\n err = new Error(error.message || error.errorMessage);\n err.name = error.name || error.errorClass;\n errorFramesToSkip += 2;\n } else {\n var _msg2 = generateNotifyUsageMessage('unsupported object');\n logger.warn(LOG_USAGE_ERR_PREFIX + ' ' + _msg2);\n err = new Error(REPORT_USAGE_ERR_PREFIX + ' ' + _msg2);\n }\n break;\n }\n return { err: err, errorFramesToSkip: errorFramesToSkip, _opts: _opts };\n};\n\nvar hasNecessaryFields = function (error) {\n return (typeof error.name === 'string' || typeof error.errorClass === 'string') && (typeof error.message === 'string' || typeof error.errorMessage === 'string');\n};\n\nvar generateConfigErrorMessage = function (errors) {\n return 'Bugsnag configuration error\\n' + __map_2(errors, function (err) {\n return '\"' + err.key + '\" ' + err.message + ' \\n got ' + stringify(err.value);\n }).join('\\n\\n');\n};\n\nvar generateNotifyUsageMessage = function (actual) {\n return 'notify() expected error/opts parameters, got ' + actual;\n};\n\nvar stringify = function (val) {\n return typeof val === 'object' ? JSON.stringify(val) : String(val);\n};\n\nvar _$BugsnagClient_2 = BugsnagClient;\n\nvar __dummy_8$0 = 0,\n __positiveIntIfDefined_8 = _$validators_7.positiveIntIfDefined;\n\n/*\n * Throttles and dedupes error reports\n */\n\nvar _$throttle_8 = {\n init: function (client) {\n // track sent events for each init of the plugin\n var n = 0;\n\n // add beforeSend hook\n client.config.beforeSend.push(function (report) {\n // have max events been sent already?\n if (n >= client.config.maxEvents) return report.ignore();\n n++;\n });\n\n client.refresh = function () {\n n = 0;\n };\n },\n configSchema: {\n maxEvents: {\n defaultValue: function () {\n return 10;\n },\n message: 'should be a positive integer ≤100',\n validate: function (val) {\n return __positiveIntIfDefined_8(val) && val < 100;\n }\n }\n }\n};\n\nvar ___extends_11 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar __dummy_11$0 = 0,\n schema = _$config_3.schema;\n\nvar __dummy_11$1 = 0,\n __map_11 = _$esUtils_4.map;\n\nvar __dummy_11$2 = 0,\n __stringWithLength_11 = _$validators_7.stringWithLength;\n\nvar _$config_11 = {\n releaseStage: {\n defaultValue: function () {\n if (/^localhost(:\\d+)?$/.test(window.location.host)) return 'development';\n return 'production';\n },\n message: 'should be set',\n validate: __stringWithLength_11\n },\n collectUserIp: {\n defaultValue: function () {\n return true;\n },\n message: 'should be true|false',\n validate: function (value) {\n return value === true || value === false;\n }\n },\n logger: ___extends_11({}, schema.logger, {\n defaultValue: function () {\n return (\n // set logger based on browser capability\n typeof console !== 'undefined' && typeof console.debug === 'function' ? getPrefixedConsole() : undefined\n );\n }\n })\n};\n\nvar getPrefixedConsole = function () {\n var logger = {};\n var consoleLog = console['log'];\n __map_11(['debug', 'info', 'warn', 'error'], function (method) {\n var consoleMethod = console[method];\n logger[method] = typeof consoleMethod === 'function' ? consoleMethod.bind(console, '[bugsnag]') : consoleLog.bind(console, '[bugsnag]');\n });\n return logger;\n};\n\nvar _$consoleBreadcrumbs_13 = {};\nvar __dummy_13$0 = 0,\n __map_13 = _$esUtils_4.map,\n __reduce_13 = _$esUtils_4.reduce,\n __filter_13 = _$esUtils_4.filter;\n\n/*\n * Leaves breadcrumbs when console log methods are called\n */\n\n\n_$consoleBreadcrumbs_13.init = function (client) {\n __map_13(CONSOLE_LOG_METHODS, function (method) {\n var original = console[method];\n console[method] = function () {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n client.leaveBreadcrumb('Console output', __reduce_13(args, function (accum, arg, i) {\n // do the best/simplest stringification of each argument\n var stringified = String(arg);\n // if it stringifies to [object Object] attempt to JSON stringify\n if (stringified === '[object Object]') {\n // catch stringify errors and fallback to [object Object]\n try {\n stringified = JSON.stringify(arg);\n } catch (e) {}\n }\n accum['[' + i + ']'] = stringified;\n return accum;\n }, {\n severity: method.indexOf('group') === 0 ? 'log' : method\n }), 'log');\n original.apply(console, args);\n };\n console[method]._restore = function () {\n console[method] = original;\n };\n });\n};\n\n_$consoleBreadcrumbs_13.configSchema = {\n consoleBreadcrumbsEnabled: {\n defaultValue: function () {\n return undefined;\n },\n validate: function (value) {\n return value === true || value === false || value === undefined;\n },\n message: 'should be true|false'\n }\n};\n\nif (\"production\" !== 'production') {\n _$consoleBreadcrumbs_13.destroy = function () {\n return CONSOLE_LOG_METHODS.forEach(function (method) {\n if (typeof console[method]._restore === 'function') console[method]._restore();\n });\n };\n}\n\nvar CONSOLE_LOG_METHODS = __filter_13(['log', 'debug', 'info', 'warn', 'error'], function (method) {\n return typeof console !== 'undefined' && typeof console[method] === 'function';\n});\n\n/*\n * Sets the default context to be the current URL\n */\nvar _$context_14 = {\n init: function (client) {\n client.config.beforeSend.unshift(function (report) {\n if (report.context) return;\n report.context = window.location.pathname;\n });\n }\n};\n\nvar ___extends_15 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar __dummy_15$0 = 0,\n __isoDate_15 = _$esUtils_4.isoDate;\n/*\n * Automatically detects browser device details\n */\n\n\nvar _$device_15 = {\n init: function (client) {\n client.config.beforeSend.unshift(function (report) {\n report.device = ___extends_15({\n time: __isoDate_15(),\n locale: navigator.browserLanguage || navigator.systemLanguage || navigator.userLanguage || navigator.language,\n userAgent: navigator.userAgent\n }, report.device);\n });\n\n client.beforeSession.push(function (session) {\n session.device = { userAgent: navigator.userAgent };\n });\n }\n};\n\nvar _$inlineScriptContent_16 = {};\nvar __dummy_16$0 = 0,\n __reduce_16 = _$esUtils_4.reduce;\n\n_$inlineScriptContent_16 = {\n init: function (client) {\n var html = '';\n var DOMContentLoaded = false;\n var getHtml = function () {\n return document.documentElement.outerHTML;\n };\n var originalLocation = window.location.href;\n\n var addInlineContent = function (report) {\n var frame = report.stacktrace[0];\n if (!frame || !frame.file || !frame.lineNumber) return frame;\n if (frame.file.replace(/#.*$/, '') !== originalLocation.replace(/#.*$/, '')) return frame;\n if (!DOMContentLoaded || !html) html = getHtml();\n var htmlLines = [''].concat(html.split('\\n'));\n\n var _extractScriptContent = extractScriptContent(htmlLines, frame.lineNumber - 1),\n script = _extractScriptContent.script,\n start = _extractScriptContent.start;\n\n var code = __reduce_16(script, function (accum, line, i) {\n if (Math.abs(start + i + 1 - frame.lineNumber) > 10) return accum;\n accum['' + (start + i + 1)] = line;\n return accum;\n }, {});\n frame.code = code;\n report.updateMetaData('script', { content: script.join('\\n') });\n };\n\n // get whatever HTML exists at this point in time\n html = getHtml();\n\n // then update it when the DOM content has loaded\n document.onreadystatechange = function () {\n // IE8 compatible alternative to document#DOMContentLoaded\n if (document.readyState === 'interactive') {\n html = getHtml();\n DOMContentLoaded = true;\n }\n };\n\n client.config.beforeSend.unshift(addInlineContent);\n }\n};\n\nvar scriptStartRe = /^.*/;\nvar scriptEndRe = /<\\/script>.*$/;\nvar extractScriptContent = _$inlineScriptContent_16.extractScriptContent = function (lines, startLine) {\n // search down for \n var line = startLine;\n while (line < lines.length && !scriptEndRe.test(lines[line])) {\n line++;\n } // search up for