![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/vreg/node_modules/@bugsnag/node/dist/ |
{ "version": 3, "sources": [ "../../node_modules/browser-pack-flat/_prelude", "../core/breadcrumb.js", "../core/lib/breadcrumb-types.js", "../core/lib/es-utils/reduce.js", "../core/lib/es-utils/filter.js", "../core/lib/es-utils/includes.js", "../core/lib/es-utils/is-array.js", "../core/lib/es-utils/keys.js", "../core/lib/validators/int-range.js", "../core/lib/validators/list-of-functions.js", "../core/lib/validators/string-with-length.js", "../core/config.js", "../core/lib/error-stack-parser.js", "../core/lib/es-utils/assign.js", "../core/lib/es-utils/map.js", "../core/lib/has-stack.js", "../core/lib/iserror.js", "../core/lib/metadata-delegate.js", "../core/event.js", "../core/lib/async-every.js", "../core/lib/callback-runner.js", "../core/lib/sync-callback-runner.js", "../core/node_modules/@bugsnag/cuid/lib/pad.js", "../core/node_modules/@bugsnag/cuid/lib/fingerprint.js", "../core/node_modules/@bugsnag/cuid/index.js", "../core/session.js", "../core/client.js", "../core/node_modules/@bugsnag/safe-json-stringify/index.js", "../core/lib/json-payload.js", "../delivery-node/request.js", "../delivery-node/delivery.js", "src/config.js", "../plugin-app-duration/app.js", "../core/lib/node-fallback-stack.js", "../plugin-contextualize/contextualize.js", "../plugin-intercept/intercept.js", "../plugin-node-device/device.js", "../core/lib/path-normalizer.js", "../plugin-node-in-project/in-project.js", "../plugin-node-surrounding-code/surrounding-code.js", "../plugin-node-uncaught-exception/uncaught-exception.js", "../plugin-node-unhandled-rejection/unhandled-rejection.js", "../core/lib/clone-client.js", "../plugin-server-session/node_modules/backo/index.js", "../plugin-server-session/tracker.js", "../plugin-server-session/session.js", "../plugin-stackframe-path-normaliser/path-normaliser.js", "../plugin-strip-project-root/strip-project-root.js", "src/notifier.js", "../../node_modules/browser-pack-flat/_postlude" ], "names": [], "mappings": "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", "file": "generated.js", "sourceRoot": "", "sourcesContent": [ "(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", "class Breadcrumb {\n constructor (message, metadata, type, timestamp = new Date()) {\n this.type = type\n this.message = message\n this.metadata = metadata\n this.timestamp = timestamp\n }\n\n toJSON () {\n return {\n type: this.type,\n name: this.message,\n timestamp: this.timestamp,\n metaData: this.metadata\n }\n }\n}\n\nmodule.exports = Breadcrumb\n", "module.exports = ['navigation', 'request', 'process', 'log', 'user', 'state', 'error', 'manual']\n", "// Array#reduce\nmodule.exports = (arr, fn, accum) => {\n let val = accum\n for (let i = 0, len = arr.length; i < len; i++) val = fn(val, arr[i], i, arr)\n return val\n}\n", "const reduce = require('./reduce')\n\n// Array#filter\nmodule.exports = (arr, fn) =>\n reduce(arr, (accum, item, i, arr) => !fn(item, i, arr) ? accum : accum.concat(item), [])\n", "const reduce = require('./reduce')\n// Array#includes\nmodule.exports = (arr, x) =>\n reduce(arr, (accum, item, i, arr) => accum === true || item === x, false)\n", "// Array#isArray\nmodule.exports = obj => Object.prototype.toString.call(obj) === '[object Array]'\n", "/* eslint-disable-next-line no-prototype-builtins */\nconst _hasDontEnumBug = !({ toString: null }).propertyIsEnumerable('toString')\nconst _dontEnums = [\n 'toString', 'toLocaleString', 'valueOf', 'hasOwnProperty',\n 'isPrototypeOf', 'propertyIsEnumerable', 'constructor'\n]\n\n// Object#keys\nmodule.exports = obj => {\n // stripped down version of\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/Keys\n const result = []\n let prop\n for (prop in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, prop)) result.push(prop)\n }\n if (!_hasDontEnumBug) return result\n for (let 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", "module.exports = (min = 1, max = Infinity) => value =>\n typeof value === 'number' &&\n parseInt('' + value, 10) === value &&\n value >= min && value <= max\n", "const filter = require('../es-utils/filter')\nconst isArray = require('../es-utils/is-array')\n\nmodule.exports = value => typeof value === 'function' || (isArray(value) && filter(value, f => typeof f === 'function').length === value.length)\n", "module.exports = value => typeof value === 'string' && !!value.length\n", "const filter = require('./lib/es-utils/filter')\nconst reduce = require('./lib/es-utils/reduce')\nconst keys = require('./lib/es-utils/keys')\nconst isArray = require('./lib/es-utils/is-array')\nconst includes = require('./lib/es-utils/includes')\nconst intRange = require('./lib/validators/int-range')\nconst stringWithLength = require('./lib/validators/string-with-length')\nconst listOfFunctions = require('./lib/validators/list-of-functions')\n\nconst BREADCRUMB_TYPES = require('./lib/breadcrumb-types')\nconst defaultErrorTypes = () => ({ unhandledExceptions: true, unhandledRejections: true })\n\nmodule.exports.schema = {\n apiKey: {\n defaultValue: () => null,\n message: 'is required',\n validate: stringWithLength\n },\n appVersion: {\n defaultValue: () => undefined,\n message: 'should be a string',\n validate: value => value === undefined || stringWithLength(value)\n },\n appType: {\n defaultValue: () => undefined,\n message: 'should be a string',\n validate: value => value === undefined || stringWithLength(value)\n },\n autoDetectErrors: {\n defaultValue: () => true,\n message: 'should be true|false',\n validate: value => value === true || value === false\n },\n enabledErrorTypes: {\n defaultValue: () => defaultErrorTypes(),\n message: 'should be an object containing the flags { unhandledExceptions:true|false, unhandledRejections:true|false }',\n allowPartialObject: true,\n validate: value => {\n // ensure we have an object\n if (typeof value !== 'object' || !value) return false\n const providedKeys = keys(value)\n const defaultKeys = keys(defaultErrorTypes())\n // ensure it only has a subset of the allowed keys\n if (filter(providedKeys, k => includes(defaultKeys, k)).length < providedKeys.length) return false\n // ensure all of the values are boolean\n if (filter(keys(value), k => typeof value[k] !== 'boolean').length > 0) return false\n return true\n }\n },\n onError: {\n defaultValue: () => [],\n message: 'should be a function or array of functions',\n validate: listOfFunctions\n },\n onSession: {\n defaultValue: () => [],\n message: 'should be a function or array of functions',\n validate: listOfFunctions\n },\n onBreadcrumb: {\n defaultValue: () => [],\n message: 'should be a function or array of functions',\n validate: listOfFunctions\n },\n endpoints: {\n defaultValue: () => ({\n notify: 'https://notify.bugsnag.com',\n sessions: 'https://sessions.bugsnag.com'\n }),\n message: 'should be an object containing endpoint URLs { notify, sessions }',\n validate: val =>\n // first, ensure it's an object\n (val && typeof val === 'object') &&\n (\n // notify and sessions must always be set\n stringWithLength(val.notify) && stringWithLength(val.sessions)\n ) &&\n // ensure no keys other than notify/session are set on endpoints object\n filter(keys(val), k => !includes(['notify', 'sessions'], k)).length === 0\n },\n autoTrackSessions: {\n defaultValue: val => true,\n message: 'should be true|false',\n validate: val => val === true || val === false\n },\n enabledReleaseStages: {\n defaultValue: () => null,\n message: 'should be an array of strings',\n validate: value => value === null || (isArray(value) && filter(value, f => typeof f === 'string').length === value.length)\n },\n releaseStage: {\n defaultValue: () => 'production',\n message: 'should be a string',\n validate: value => typeof value === 'string' && value.length\n },\n maxBreadcrumbs: {\n defaultValue: () => 25,\n message: 'should be a number ≤100',\n validate: value => intRange(0, 100)(value)\n },\n enabledBreadcrumbTypes: {\n defaultValue: () => BREADCRUMB_TYPES,\n message: `should be null or a list of available breadcrumb types (${BREADCRUMB_TYPES.join(',')})`,\n validate: value => value === null || (isArray(value) && reduce(value, (accum, maybeType) => {\n if (accum === false) return accum\n return includes(BREADCRUMB_TYPES, maybeType)\n }, true))\n },\n context: {\n defaultValue: () => undefined,\n message: 'should be a string',\n validate: value => value === undefined || typeof value === 'string'\n },\n user: {\n defaultValue: () => ({}),\n message: 'should be an object with { id, email, name } properties',\n validate: value =>\n (value === null) ||\n (value && reduce(\n keys(value),\n (accum, key) => accum && includes(['id', 'email', 'name'], key),\n true\n ))\n },\n metadata: {\n defaultValue: () => ({}),\n message: 'should be an object',\n validate: (value) => typeof value === 'object' && value !== null\n },\n logger: {\n defaultValue: () => undefined,\n message: 'should be null or an object with methods { debug, info, warn, error }',\n validate: value =>\n (!value) ||\n (value && reduce(\n ['debug', 'info', 'warn', 'error'],\n (accum, method) => accum && typeof value[method] === 'function',\n true\n ))\n },\n redactedKeys: {\n defaultValue: () => ['password'],\n message: 'should be an array of strings|regexes',\n validate: value =>\n isArray(value) && value.length === filter(value, s =>\n (typeof s === 'string' || (s && typeof s.test === 'function'))\n ).length\n },\n plugins: {\n defaultValue: () => ([]),\n message: 'should be an array of plugin objects',\n validate: value =>\n isArray(value) && value.length === filter(value, p =>\n (p && typeof p === 'object' && typeof p.load === 'function')\n ).length\n }\n}\n", "module.exports = require('error-stack-parser')\n", "// extends helper from babel\n// https://github.com/babel/babel/blob/916429b516e6466fd06588ee820e40e025d7f3a3/packages/babel-helpers/src/helpers.js#L377-L393\nmodule.exports = function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i]\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key]\n }\n }\n }\n return target\n}\n", "const reduce = require('./reduce')\n\n// Array#map\nmodule.exports = (arr, fn) =>\n reduce(arr, (accum, item, i, arr) => accum.concat(fn(item, i, arr)), [])\n", "// Given `err` which may be an error, does it have a stack property which is a string?\nmodule.exports = err =>\n !!err &&\n (!!err.stack || !!err.stacktrace || !!err['opera#sourceloc']) &&\n typeof (err.stack || err.stacktrace || err['opera#sourceloc']) === 'string' &&\n err.stack !== `${err.name}: ${err.message}`\n", "module.exports = require('iserror')\n", "const assign = require('./es-utils/assign')\n\nconst add = (state, section, keyOrObj, maybeVal) => {\n if (!section) return\n let updates\n\n // addMetadata(\"section\", null) -> clears section\n if (keyOrObj === null) return clear(state, section)\n\n // normalise the two supported input types into object form\n if (typeof keyOrObj === 'object') updates = keyOrObj\n if (typeof keyOrObj === 'string') updates = { [keyOrObj]: maybeVal }\n\n // exit if we don't have an updates object at this point\n if (!updates) return\n\n // ensure a section with this name exists\n if (!state[section]) state[section] = {}\n\n // merge the updates with the existing section\n state[section] = assign({}, state[section], updates)\n}\n\nconst get = (state, section, key) => {\n if (typeof section !== 'string') return undefined\n if (!key) {\n return state[section]\n }\n if (state[section]) {\n return state[section][key]\n }\n return undefined\n}\n\nconst clear = (state, section, key) => {\n if (typeof section !== 'string') return\n\n // clear an entire section\n if (!key) {\n delete state[section]\n return\n }\n\n // clear a single value from a section\n if (state[section]) {\n delete state[section][key]\n }\n}\n\nmodule.exports = { add, get, clear }\n", "const ErrorStackParser = require('./lib/error-stack-parser')\nconst StackGenerator = require('stack-generator')\nconst hasStack = require('./lib/has-stack')\nconst map = require('./lib/es-utils/map')\nconst reduce = require('./lib/es-utils/reduce')\nconst filter = require('./lib/es-utils/filter')\nconst assign = require('./lib/es-utils/assign')\nconst metadataDelegate = require('./lib/metadata-delegate')\nconst isError = require('./lib/iserror')\n\nclass Event {\n constructor (errorClass, errorMessage, stacktrace = [], handledState = defaultHandledState(), originalError) {\n this.apiKey = undefined\n this.context = undefined\n this.groupingHash = undefined\n this.originalError = originalError\n\n this._handledState = handledState\n this.severity = this._handledState.severity\n this.unhandled = this._handledState.unhandled\n\n this.app = {}\n this.device = {}\n this.request = {}\n\n this.breadcrumbs = []\n this.threads = []\n\n this._metadata = {}\n this._user = {}\n this._session = undefined\n\n this.errors = [\n {\n errorClass: ensureString(errorClass),\n errorMessage: ensureString(errorMessage),\n type: Event.__type,\n stacktrace: reduce(stacktrace, (accum, frame) => {\n const 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 }\n ]\n\n // Flags.\n // Note these are not initialised unless they are used\n // to save unnecessary bytes in the browser bundle\n\n /* this.attemptImmediateDelivery, default: true */\n }\n\n addMetadata (section, keyOrObj, maybeVal) {\n return metadataDelegate.add(this._metadata, section, keyOrObj, maybeVal)\n }\n\n getMetadata (section, key) {\n return metadataDelegate.get(this._metadata, section, key)\n }\n\n clearMetadata (section, key) {\n return metadataDelegate.clear(this._metadata, section, key)\n }\n\n getUser () {\n return this._user\n }\n\n setUser (id, email, name) {\n this._user = { id, email, name }\n }\n\n toJSON () {\n return {\n payloadVersion: '4',\n exceptions: map(this.errors, er => assign({}, er, { message: er.errorMessage })),\n severity: this.severity,\n unhandled: this._handledState.unhandled,\n severityReason: this._handledState.severityReason,\n app: this.app,\n device: this.device,\n request: this.request,\n breadcrumbs: this.breadcrumbs,\n context: this.context,\n groupingHash: this.groupingHash,\n metaData: this._metadata,\n user: this._user,\n session: this._session\n }\n }\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)\nconst formatStackframe = frame => {\n const 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 }\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\nconst normaliseFunctionName = name => /^global code$/i.test(name) ? 'global code' : name\n\nconst defaultHandledState = () => ({\n unhandled: false,\n severity: 'warning',\n severityReason: { type: 'handledException' }\n})\n\nconst ensureString = (str) => typeof str === 'string' ? str : ''\n\n// Helpers\n\nEvent.getStacktrace = function (error, errorFramesToSkip, backtraceFramesToSkip) {\n if (hasStack(error)) return ErrorStackParser.parse(error).slice(errorFramesToSkip)\n // error wasn't provided or didn't have a stacktrace so try to walk the callstack\n try {\n return filter(StackGenerator.backtrace(), frame =>\n (frame.functionName || '').indexOf('StackGenerator$$') === -1\n ).slice(1 + backtraceFramesToSkip)\n } catch (e) {\n return []\n }\n}\n\nEvent.create = function (maybeError, tolerateNonErrors, handledState, component, errorFramesToSkip = 0, logger) {\n const [error, internalFrames] = normaliseError(maybeError, tolerateNonErrors, component, logger)\n let event\n try {\n const stacktrace = Event.getStacktrace(\n error,\n // if an error was created/throw in the normaliseError() function, we need to\n // tell the getStacktrace() function to skip the number of frames we know will\n // be from our own functions. This is added to the number of frames deep we\n // were told about\n internalFrames > 0 ? 1 + internalFrames + errorFramesToSkip : 0,\n // if there's no stacktrace, the callstack may be walked to generated one.\n // this is how many frames should be removed because they come from our library\n 1 + errorFramesToSkip\n )\n event = new Event(error.name, error.message, stacktrace, handledState, maybeError)\n } catch (e) {\n event = new Event(error.name, error.message, [], handledState, maybeError)\n }\n if (error.name === 'InvalidError') {\n event.addMetadata(`${component}`, 'non-error parameter', makeSerialisable(maybeError))\n }\n return event\n}\n\nconst makeSerialisable = (err) => {\n if (err === null) return 'null'\n if (err === undefined) return 'undefined'\n return err\n}\n\nconst normaliseError = (maybeError, tolerateNonErrors, component, logger) => {\n let error\n let internalFrames = 0\n\n const createAndLogInputError = (reason) => {\n if (logger) logger.warn(`${component} received a non-error: \"${reason}\"`)\n const err = new Error(`${component} received a non-error. See \"${component}\" tab for more detail.`)\n err.name = 'InvalidError'\n return err\n }\n\n // In some cases:\n //\n // - the promise rejection handler (both in the browser and node)\n // - the node uncaughtException handler\n //\n // We are really limited in what we can do to get a stacktrace. So we use the\n // tolerateNonErrors option to ensure that the resulting error communicates as\n // such.\n if (!tolerateNonErrors) {\n if (isError(maybeError)) {\n error = maybeError\n } else {\n error = createAndLogInputError(typeof maybeError)\n internalFrames += 2\n }\n } else {\n switch (typeof maybeError) {\n case 'string':\n case 'number':\n case 'boolean':\n error = new Error(String(maybeError))\n internalFrames += 1\n break\n case 'function':\n error = createAndLogInputError('function')\n internalFrames += 2\n break\n case 'object':\n if (maybeError !== null && isError(maybeError)) {\n error = maybeError\n } else if (maybeError !== null && hasNecessaryFields(maybeError)) {\n error = new Error(maybeError.message || maybeError.errorMessage)\n error.name = maybeError.name || maybeError.errorClass\n internalFrames += 1\n } else {\n error = createAndLogInputError(maybeError === null ? 'null' : 'unsupported object')\n internalFrames += 2\n }\n break\n default:\n error = createAndLogInputError('nothing')\n internalFrames += 2\n }\n }\n\n if (!hasStack(error)) {\n // in IE10/11 a new Error() doesn't have a stacktrace until you throw it, so try that here\n try {\n throw error\n } catch (e) {\n if (hasStack(e)) {\n error = e\n // if the error only got a stacktrace after we threw it here, we know it\n // will only have one extra internal frame from this function, regardless\n // of whether it went through createAndLogInputError() or not\n internalFrames = 1\n }\n }\n }\n\n return [error, internalFrames]\n}\n\n// default value for stacktrace.type\nEvent.__type = 'browserjs'\n\nconst hasNecessaryFields = error =>\n (typeof error.name === 'string' || typeof error.errorClass === 'string') &&\n (typeof error.message === 'string' || typeof error.errorMessage === 'string')\n\nmodule.exports = Event\n", "// This is a heavily modified/simplified version of\n// https://github.com/othiym23/async-some\n// with the logic flipped so that it is akin to the\n// synchronous \"every\" method instead of \"some\".\n\n// run the asynchronous test function (fn) over each item in the array (arr)\n// in series until:\n// - fn(item, cb) => calls cb(null, false)\n// - or the end of the array is reached\n// the callback (cb) will be passed (null, false) if any of the items in arr\n// caused fn to call back with false, otherwise it will be passed (null, true)\nmodule.exports = (arr, fn, cb) => {\n let index = 0\n\n const next = () => {\n if (index >= arr.length) return cb(null, true)\n fn(arr[index], (err, result) => {\n if (err) return cb(err)\n if (result === false) return cb(null, false)\n index++\n next()\n })\n }\n\n next()\n}\n", "const some = require('./async-every')\n\nmodule.exports = (callbacks, event, onCallbackError, cb) => {\n // This function is how we support different kinds of callback:\n // - synchronous - return value\n // - node-style async with callback - cb(err, value)\n // - promise/thenable - resolve(value)\n // It normalises each of these into the lowest common denominator – a node-style callback\n const runMaybeAsyncCallback = (fn, cb) => {\n if (typeof fn !== 'function') return cb(null)\n try {\n // if function appears sync…\n if (fn.length !== 2) {\n const ret = fn(event)\n // check if it returned a \"thenable\" (promise)\n if (ret && typeof ret.then === 'function') {\n return ret.then(\n // resolve\n val => setTimeout(() => cb(null, val)),\n // reject\n err => {\n setTimeout(() => {\n onCallbackError(err)\n return cb(null, true)\n })\n }\n )\n }\n return cb(null, ret)\n }\n // if function is async…\n fn(event, (err, result) => {\n if (err) {\n onCallbackError(err)\n return cb(null)\n }\n cb(null, result)\n })\n } catch (e) {\n onCallbackError(e)\n cb(null)\n }\n }\n\n some(callbacks, runMaybeAsyncCallback, cb)\n}\n", "module.exports = (callbacks, callbackArg, callbackType, logger) => {\n let ignore = false\n const cbs = callbacks.slice()\n while (!ignore) {\n if (!cbs.length) break\n try {\n ignore = cbs.pop()(callbackArg) === false\n } catch (e) {\n logger.error(`Error occurred in ${callbackType} callback, continuing anyway…`)\n logger.error(e)\n }\n }\n return ignore\n}\n", "module.exports = function pad (num, size) {\n var s = '000000000' + num;\n return s.substr(s.length - size);\n};\n", "var pad = require('./pad.js');\n\nvar os = require('os'),\n padding = 2,\n pid = pad(process.pid.toString(36), padding),\n hostname = os.hostname(),\n length = hostname.length,\n hostId = pad(hostname\n .split('')\n .reduce(function (prev, char) {\n return +prev + char.charCodeAt(0);\n }, +length + 36)\n .toString(36),\n padding);\n\nmodule.exports = function fingerprint () {\n return pid + hostId;\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\nvar fingerprint = require('./lib/fingerprint.js');\nvar pad = 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((Math.random() *\n discreteValues << 0)\n .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', // 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 // Prevent same-machine collisions.\n counter = pad(safeCounter().toString(base), blockSize),\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(),\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;\n\nmodule.exports = cuid;\n", "const cuid = require('@bugsnag/cuid')\n\nclass Session {\n constructor () {\n this.id = cuid()\n this.startedAt = new Date()\n this._handled = 0\n this._unhandled = 0\n this._user = {}\n this.app = {}\n this.device = {}\n }\n\n getUser () {\n return this._user\n }\n\n setUser (id, email, name) {\n this._user = { id, email, name }\n }\n\n toJSON () {\n return {\n id: this.id,\n startedAt: this.startedAt,\n events: { handled: this._handled, unhandled: this._unhandled }\n }\n }\n\n _track (event) {\n this[event._handledState.unhandled ? '_unhandled' : '_handled'] += 1\n }\n}\n\nmodule.exports = Session\n", "const config = require('./config')\nconst Event = require('./event')\nconst Breadcrumb = require('./breadcrumb')\nconst Session = require('./session')\nconst map = require('./lib/es-utils/map')\nconst includes = require('./lib/es-utils/includes')\nconst filter = require('./lib/es-utils/filter')\nconst reduce = require('./lib/es-utils/reduce')\nconst keys = require('./lib/es-utils/keys')\nconst assign = require('./lib/es-utils/assign')\nconst runCallbacks = require('./lib/callback-runner')\nconst metadataDelegate = require('./lib/metadata-delegate')\nconst runSyncCallbacks = require('./lib/sync-callback-runner')\nconst BREADCRUMB_TYPES = require('./lib/breadcrumb-types')\n\nconst noop = () => {}\n\nclass Client {\n constructor (configuration, schema = config.schema, internalPlugins = [], notifier) {\n // notifier id\n this._notifier = notifier\n\n // intialise opts and config\n this._config = {}\n this._schema = schema\n\n // i/o\n this._delivery = { sendSession: noop, sendEvent: noop }\n this._logger = { debug: noop, info: noop, warn: noop, error: noop }\n\n // plugins\n this._plugins = {}\n\n // state\n this._breadcrumbs = []\n this._session = null\n this._metadata = {}\n this._context = undefined\n this._user = {}\n\n // callbacks:\n // e: onError\n // s: onSession\n // sp: onSessionPayload\n // b: onBreadcrumb\n // (note these names are minified by hand because object\n // properties are not safe to minify automatically)\n this._cbs = {\n e: [],\n s: [],\n sp: [],\n b: []\n }\n\n // expose internal constructors\n this.Client = Client\n this.Event = Event\n this.Breadcrumb = Breadcrumb\n this.Session = Session\n\n this._config = this._configure(configuration, internalPlugins)\n map(internalPlugins.concat(this._config.plugins), pl => {\n if (pl) this._loadPlugin(pl)\n })\n\n // when notify() is called we need to know how many frames are from our own source\n // this inital value is 1 not 0 because we wrap notify() to ensure it is always\n // bound to have the client as its `this` value – see below.\n this._depth = 1\n\n const self = this\n const notify = this.notify\n this.notify = function () {\n return notify.apply(self, arguments)\n }\n }\n\n addMetadata (section, keyOrObj, maybeVal) {\n return metadataDelegate.add(this._metadata, section, keyOrObj, maybeVal)\n }\n\n getMetadata (section, key) {\n return metadataDelegate.get(this._metadata, section, key)\n }\n\n clearMetadata (section, key) {\n return metadataDelegate.clear(this._metadata, section, key)\n }\n\n getContext () {\n return this._context\n }\n\n setContext (c) {\n this._context = c\n }\n\n _configure (opts, internalPlugins) {\n const schema = reduce(internalPlugins, (schema, plugin) => {\n if (plugin && plugin.configSchema) return assign({}, schema, plugin.configSchema)\n return schema\n }, this._schema)\n\n // accumulate configuration and error messages\n const { errors, config } = reduce(keys(schema), (accum, key) => {\n const defaultValue = schema[key].defaultValue(opts[key])\n\n if (opts[key] !== undefined) {\n const valid = schema[key].validate(opts[key])\n if (!valid) {\n accum.errors[key] = schema[key].message\n accum.config[key] = defaultValue\n } else {\n if (schema[key].allowPartialObject) {\n accum.config[key] = assign(defaultValue, opts[key])\n } else {\n accum.config[key] = opts[key]\n }\n }\n } else {\n accum.config[key] = defaultValue\n }\n\n return accum\n }, { errors: {}, config: {} })\n\n if (schema.apiKey) {\n // missing api key is the only fatal error\n if (!config.apiKey) throw new Error('No Bugsnag API Key set')\n // warn about an apikey that is not of the expected format\n if (!/^[0-9a-f]{32}$/i.test(config.apiKey)) errors.apiKey = 'should be a string of 32 hexadecimal characters'\n }\n\n // update and elevate some options\n this._metadata = assign({}, config.metadata)\n this._user = assign({}, config.user)\n this._context = config.context\n if (config.logger) this._logger = config.logger\n\n // add callbacks\n if (config.onError) this._cbs.e = this._cbs.e.concat(config.onError)\n if (config.onBreadcrumb) this._cbs.b = this._cbs.b.concat(config.onBreadcrumb)\n if (config.onSession) this._cbs.s = this._cbs.s.concat(config.onSession)\n\n // finally warn about any invalid config where we fell back to the default\n if (keys(errors).length) {\n this._logger.warn(generateConfigErrorMessage(errors, opts))\n }\n\n return config\n }\n\n getUser () {\n return this._user\n }\n\n setUser (id, email, name) {\n this._user = { id, email, name }\n }\n\n _loadPlugin (plugin) {\n const result = plugin.load(this)\n // JS objects are not the safest way to store arbitrarily keyed values,\n // so bookend the key with some characters that prevent tampering with\n // stuff like __proto__ etc. (only store the result if the plugin had a\n // name)\n if (plugin.name) this._plugins[`~${plugin.name}~`] = result\n return this\n }\n\n getPlugin (name) {\n return this._plugins[`~${name}~`]\n }\n\n _setDelivery (d) {\n this._delivery = d(this)\n }\n\n startSession () {\n const session = new Session()\n\n session.app.releaseStage = this._config.releaseStage\n session.app.version = this._config.appVersion\n session.app.type = this._config.appType\n\n session._user = assign({}, this._user)\n\n // run onSession callbacks\n const ignore = runSyncCallbacks(this._cbs.s, session, 'onSession', this._logger)\n\n if (ignore) {\n this._logger.debug('Session not started due to onSession callback')\n return this\n }\n return this._sessionDelegate.startSession(this, session)\n }\n\n addOnError (fn, front = false) {\n this._cbs.e[front ? 'unshift' : 'push'](fn)\n }\n\n removeOnError (fn) {\n this._cbs.e = filter(this._cbs.e, f => f !== fn)\n }\n\n _addOnSessionPayload (fn) {\n this._cbs.sp.push(fn)\n }\n\n addOnSession (fn) {\n this._cbs.s.push(fn)\n }\n\n removeOnSession (fn) {\n this._cbs.s = filter(this._cbs.s, f => f !== fn)\n }\n\n addOnBreadcrumb (fn, front = false) {\n this._cbs.b[front ? 'unshift' : 'push'](fn)\n }\n\n removeOnBreadcrumb (fn) {\n this._cbs.b = filter(this._cbs.b, f => f !== fn)\n }\n\n pauseSession () {\n return this._sessionDelegate.pauseSession(this)\n }\n\n resumeSession () {\n return this._sessionDelegate.resumeSession(this)\n }\n\n leaveBreadcrumb (message, metadata, type) {\n // coerce bad values so that the defaults get set\n message = typeof message === 'string' ? message : ''\n type = (typeof type === 'string' && includes(BREADCRUMB_TYPES, type)) ? type : 'manual'\n metadata = typeof metadata === 'object' && metadata !== null ? metadata : {}\n\n // if no message, discard\n if (!message) return\n\n const crumb = new Breadcrumb(message, metadata, type)\n\n // run onBreadcrumb callbacks\n const ignore = runSyncCallbacks(this._cbs.b, crumb, 'onBreadcrumb', this._logger)\n\n if (ignore) {\n this._logger.debug('Breadcrumb not attached due to onBreadcrumb callback')\n return\n }\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\n _isBreadcrumbTypeEnabled (type) {\n const types = this._config.enabledBreadcrumbTypes\n\n return types === null || includes(types, type)\n }\n\n notify (maybeError, onError, cb = noop) {\n const event = Event.create(maybeError, true, undefined, 'notify()', this._depth + 1, this._logger)\n this._notify(event, onError, cb)\n }\n\n _notify (event, onError, cb = noop) {\n event.app = assign({}, event.app, {\n releaseStage: this._config.releaseStage,\n version: this._config.appVersion,\n type: this._config.appType\n })\n event.context = event.context || this._context\n event._metadata = assign({}, event._metadata, this._metadata)\n event._user = assign({}, event._user, this._user)\n event.breadcrumbs = this._breadcrumbs.slice()\n\n // exit early if events should not be sent on the current releaseStage\n if (this._config.enabledReleaseStages !== null && !includes(this._config.enabledReleaseStages, this._config.releaseStage)) {\n this._logger.warn('Event not sent due to releaseStage/enabledReleaseStages configuration')\n return cb(null, event)\n }\n\n const originalSeverity = event.severity\n\n const onCallbackError = err => {\n // errors in callbacks are tolerated but we want to log them out\n this._logger.error('Error occurred in onError callback, continuing anyway…')\n this._logger.error(err)\n }\n\n const callbacks = [].concat(this._cbs.e).concat(onError)\n runCallbacks(callbacks, event, onCallbackError, (err, shouldSend) => {\n if (err) onCallbackError(err)\n\n if (!shouldSend) {\n this._logger.debug('Event not sent due to onError callback')\n return cb(null, event)\n }\n\n if (this._isBreadcrumbTypeEnabled('error')) {\n // only leave a crumb for the error if actually got sent\n Client.prototype.leaveBreadcrumb.call(this, event.errors[0].errorClass, {\n errorClass: event.errors[0].errorClass,\n errorMessage: event.errors[0].errorMessage,\n severity: event.severity\n }, 'error')\n }\n\n if (originalSeverity !== event.severity) {\n event._handledState.severityReason = { type: 'userCallbackSetSeverity' }\n }\n\n if (event.unhandled !== event._handledState.unhandled) {\n event._handledState.severityReason.unhandledOverridden = true\n event._handledState.unhandled = event.unhandled\n }\n\n if (this._session) {\n this._session._track(event)\n event._session = this._session\n }\n\n this._delivery.sendEvent({\n apiKey: event.apiKey || this._config.apiKey,\n notifier: this._notifier,\n events: [event]\n }, (err) => cb(err, event))\n })\n }\n}\n\nconst generateConfigErrorMessage = (errors, rawInput) => {\n const er = new Error(\n `Invalid configuration\\n${map(keys(errors), key => ` - ${key} ${errors[key]}, got ${stringify(rawInput[key])}`).join('\\n\\n')}`)\n return er\n}\n\nconst stringify = val => {\n switch (typeof val) {\n case 'string':\n case 'number':\n case 'object':\n return JSON.stringify(val)\n default: return String(val)\n }\n}\n\nmodule.exports = Client\n", "module.exports = function (data, replacer, space, opts) {\n var redactedKeys = opts && opts.redactedKeys ? opts.redactedKeys : []\n var redactedPaths = opts && opts.redactedPaths ? opts.redactedPaths : []\n return JSON.stringify(\n prepareObjForSerialization(data, redactedKeys, redactedPaths),\n replacer,\n space\n )\n}\n\nvar MAX_DEPTH = 20\nvar MAX_EDGES = 25000\nvar MIN_PRESERVED_DEPTH = 8\n\nvar REPLACEMENT_NODE = '...'\n\nfunction isError (o) {\n return o instanceof Error ||\n /^\\[object (Error|(Dom)?Exception)\\]$/.test(Object.prototype.toString.call(o))\n}\n\nfunction throwsMessage (err) {\n return '[Throws: ' + (err ? err.message : '?') + ']'\n}\n\nfunction find (haystack, needle) {\n for (var i = 0, len = haystack.length; i < len; i++) {\n if (haystack[i] === needle) return true\n }\n return false\n}\n\n// returns true if the string `path` starts with any of the provided `paths`\nfunction isDescendent (paths, path) {\n for (var i = 0, len = paths.length; i < len; i++) {\n if (path.indexOf(paths[i]) === 0) return true\n }\n return false\n}\n\nfunction shouldRedact (patterns, key) {\n for (var i = 0, len = patterns.length; i < len; i++) {\n if (typeof patterns[i] === 'string' && patterns[i].toLowerCase() === key.toLowerCase()) return true\n if (patterns[i] && typeof patterns[i].test === 'function' && patterns[i].test(key)) return true\n }\n return false\n}\n\nfunction isArray (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]'\n}\n\nfunction safelyGetProp (obj, prop) {\n try {\n return obj[prop]\n } catch (err) {\n return throwsMessage(err)\n }\n}\n\nfunction prepareObjForSerialization (obj, redactedKeys, redactedPaths) {\n var seen = [] // store references to objects we have seen before\n var edges = 0\n\n function visit (obj, path) {\n function edgesExceeded () {\n return path.length > MIN_PRESERVED_DEPTH && edges > MAX_EDGES\n }\n\n edges++\n\n if (path.length > MAX_DEPTH) return REPLACEMENT_NODE\n if (edgesExceeded()) return REPLACEMENT_NODE\n if (obj === null || typeof obj !== 'object') return obj\n if (find(seen, obj)) return '[Circular]'\n\n seen.push(obj)\n\n if (typeof obj.toJSON === 'function') {\n try {\n // we're not going to count this as an edge because it\n // replaces the value of the currently visited object\n edges--\n var fResult = visit(obj.toJSON(), path)\n seen.pop()\n return fResult\n } catch (err) {\n return throwsMessage(err)\n }\n }\n\n var er = isError(obj)\n if (er) {\n edges--\n var eResult = visit({ name: obj.name, message: obj.message }, path)\n seen.pop()\n return eResult\n }\n\n if (isArray(obj)) {\n var aResult = []\n for (var i = 0, len = obj.length; i < len; i++) {\n if (edgesExceeded()) {\n aResult.push(REPLACEMENT_NODE)\n break\n }\n aResult.push(visit(obj[i], path.concat('[]')))\n }\n seen.pop()\n return aResult\n }\n\n var result = {}\n try {\n for (var prop in obj) {\n if (!Object.prototype.hasOwnProperty.call(obj, prop)) continue\n if (isDescendent(redactedPaths, path.join('.')) && shouldRedact(redactedKeys, prop)) {\n result[prop] = '[REDACTED]'\n continue\n }\n if (edgesExceeded()) {\n result[prop] = REPLACEMENT_NODE\n break\n }\n result[prop] = visit(safelyGetProp(obj, prop), path.concat(prop))\n }\n } catch (e) {}\n seen.pop()\n return result\n }\n\n return visit(obj, [])\n}\n", "const jsonStringify = require('@bugsnag/safe-json-stringify')\nconst EVENT_REDACTION_PATHS = [\n 'events.[].metaData',\n 'events.[].breadcrumbs.[].metaData',\n 'events.[].request'\n]\n\nmodule.exports.event = (event, redactedKeys) => {\n let payload = jsonStringify(event, null, null, { redactedPaths: EVENT_REDACTION_PATHS, redactedKeys })\n if (payload.length > 10e5) {\n event.events[0]._metadata = {\n notifier:\n`WARNING!\nSerialized payload was ${payload.length / 10e5}MB (limit = 1MB)\nmetadata was removed`\n }\n payload = jsonStringify(event, null, null, { redactedPaths: EVENT_REDACTION_PATHS, redactedKeys })\n if (payload.length > 10e5) throw new Error('payload exceeded 1MB limit')\n }\n return payload\n}\n\nmodule.exports.session = (event, redactedKeys) => {\n const payload = jsonStringify(event, null, null)\n if (payload.length > 10e5) throw new Error('payload exceeded 1MB limit')\n return payload\n}\n", "const http = require('http')\nconst https = require('https')\n// eslint-disable-next-line node/no-deprecated-api\nconst { parse } = require('url')\n\nmodule.exports = ({ url, headers, body, agent }, cb) => {\n let didError = false\n const onError = (err) => {\n if (didError) return\n didError = true\n cb(err)\n }\n\n const parsedUrl = parse(url)\n const secure = parsedUrl.protocol === 'https:'\n const transport = secure ? https : http\n const req = transport.request({\n method: 'POST',\n hostname: parsedUrl.hostname,\n port: parsedUrl.port,\n path: parsedUrl.path,\n headers,\n agent\n })\n req.on('error', onError)\n req.on('response', res => {\n bufferResponse(res, (err, body) => {\n if (err) return onError(err)\n if (res.statusCode < 200 || res.statusCode >= 300) {\n return onError(new Error(`Bad statusCode from API: ${res.statusCode}\\n${body}`))\n }\n cb(null, body)\n })\n })\n req.write(body)\n req.end()\n}\n\nconst bufferResponse = (stream, cb) => {\n let data = ''\n stream.on('error', cb)\n stream.setEncoding('utf8')\n stream.on('data', d => { data += d })\n stream.on('end', () => cb(null, data))\n}\n", "const payload = require('@bugsnag/core/lib/json-payload')\nconst request = require('./request')\n\nmodule.exports = (client) => ({\n sendEvent: (event, cb = () => {}) => {\n const _cb = err => {\n if (err) client._logger.error(`Event failed to send…\\n${(err && err.stack) ? err.stack : err}`, err)\n cb(err)\n }\n\n try {\n request({\n url: client._config.endpoints.notify,\n headers: {\n 'Content-Type': 'application/json',\n 'Bugsnag-Api-Key': event.apiKey || client._config.apiKey,\n 'Bugsnag-Payload-Version': '4',\n 'Bugsnag-Sent-At': (new Date()).toISOString()\n },\n body: payload.event(event, client._config.redactedKeys),\n agent: client._config.agent\n }, (err, body) => _cb(err))\n } catch (e) {\n _cb(e)\n }\n },\n sendSession: (session, cb = () => {}) => {\n const _cb = err => {\n if (err) client._logger.error(`Session failed to send…\\n${(err && err.stack) ? err.stack : err}`, err)\n cb(err)\n }\n\n try {\n request({\n url: client._config.endpoints.sessions,\n headers: {\n 'Content-Type': 'application/json',\n 'Bugsnag-Api-Key': client._config.apiKey,\n 'Bugsnag-Payload-Version': '1',\n 'Bugsnag-Sent-At': (new Date()).toISOString()\n },\n body: payload.session(session, client._config.redactedKeys),\n agent: client._config.agent\n }, err => _cb(err))\n } catch (e) {\n _cb(e)\n }\n }\n})\n", "const { schema } = require('@bugsnag/core/config')\nconst stringWithLength = require('@bugsnag/core/lib/validators/string-with-length')\nconst os = require('os')\nconst { inspect } = require('util')\n\nmodule.exports = {\n appType: {\n ...schema.appType,\n defaultValue: () => 'node'\n },\n projectRoot: {\n defaultValue: () => process.cwd(),\n validate: value => value === null || stringWithLength(value),\n message: 'should be string'\n },\n hostname: {\n defaultValue: () => os.hostname(),\n message: 'should be a string',\n validate: value => value === null || stringWithLength(value)\n },\n logger: {\n ...schema.logger,\n defaultValue: () => getPrefixedConsole()\n },\n releaseStage: {\n ...schema.releaseStage,\n defaultValue: () => process.env.NODE_ENV || 'production'\n },\n agent: {\n defaultValue: () => undefined,\n message: 'should be an HTTP(s) agent',\n validate: value => value === undefined || isAgent(value)\n },\n onUncaughtException: {\n defaultValue: () => (err, event, logger) => {\n logger.error(`Uncaught exception${getContext(event)}, the process will now terminate…\\n${printError(err)}`)\n process.exit(1)\n },\n message: 'should be a function',\n validate: value => typeof value === 'function'\n },\n onUnhandledRejection: {\n defaultValue: () => (err, event, logger) => {\n logger.error(`Unhandled rejection${getContext(event)}…\\n${printError(err)}`)\n },\n message: 'should be a function',\n validate: value => typeof value === 'function'\n }\n}\n\nconst printError = err => err && err.stack ? err.stack : inspect(err)\n\nconst getPrefixedConsole = () => {\n return ['debug', 'info', 'warn', 'error'].reduce((accum, method) => {\n const consoleMethod = console[method] || console.log\n accum[method] = consoleMethod.bind(console, '[bugsnag]')\n return accum\n }, {})\n}\n\nconst getContext = event =>\n event.request && Object.keys(event.request).length\n ? ` at ${event.request.httpMethod} ${event.request.path || event.request.url}`\n : ''\n\nconst isAgent = value => (typeof value === 'object' && value !== null) || typeof value === 'boolean'\n", "let appStart = new Date()\nconst reset = () => { appStart = new Date() }\n\nmodule.exports = {\n name: 'appDuration',\n load: client => {\n client.addOnError(event => {\n const now = new Date()\n\n event.app.duration = now - appStart\n }, true)\n\n return { reset }\n }\n}\n", "// The utilities in this file are used to save the stackframes from a known execution context\n// to use when a subsequent error has no stack frames. This happens with a lot of\n// node's builtin async callbacks when they return from the native layer with no context\n// for example:\n//\n// fs.readFile('does not exist', (err) => {\n// /* node 8 */\n// err.stack = \"ENOENT: no such file or directory, open 'nope'\"\n// /* node 4,6 */\n// err.stack = \"Error: ENOENT: no such file or directory, open 'nope'\\n at Error (native)\"\n// })\n\n// Gets the stack string for the current execution context\nexports.getStack = () => {\n // slice(3) removes the first line + this function's frame + the caller's frame,\n // so the stack begins with the caller of this function\n return (new Error()).stack.split('\\n').slice(3).join('\\n')\n}\n\n// Given an Error and a fallbackStack from getStack(), use the fallbackStack\n// if error.stack has no genuine stackframes (according to the example above)\nexports.maybeUseFallbackStack = (err, fallbackStack) => {\n const lines = err.stack.split('\\n')\n if (lines.length === 1 || (lines.length === 2 && /at Error \\(native\\)/.test(lines[1]))) {\n err.stack = `${lines[0]}\\n${fallbackStack}`\n }\n return err\n}\n", "/* eslint node/no-deprecated-api: [error, {ignoreModuleItems: [\"domain\"]}] */\nconst domain = require('domain')\nconst { getStack, maybeUseFallbackStack } = require('@bugsnag/core/lib/node-fallback-stack')\n\nmodule.exports = {\n name: 'contextualize',\n load: client => {\n const contextualize = (fn, onError) => {\n // capture a stacktrace in case a resulting error has nothing\n const fallbackStack = getStack()\n\n const dom = domain.create()\n dom.on('error', err => {\n // check if the stacktrace has no context, if so, if so append the frames we created earlier\n if (err.stack) maybeUseFallbackStack(err, fallbackStack)\n const event = client.Event.create(err, true, {\n severity: 'error',\n unhandled: true,\n severityReason: { type: 'unhandledException' }\n }, 'contextualize()', 1)\n client._notify(event, onError, (e, event) => {\n if (e) client._logger.error('Failed to send event to Bugsnag')\n client._config.onUncaughtException(err, event, client._logger)\n })\n })\n process.nextTick(() => dom.run(fn))\n }\n\n return contextualize\n }\n}\n", "const { getStack, maybeUseFallbackStack } = require('@bugsnag/core/lib/node-fallback-stack')\n\nmodule.exports = {\n name: 'intercept',\n load: client => {\n const intercept = (onError = () => {}, cb) => {\n if (typeof cb !== 'function') {\n cb = onError\n onError = () => {}\n }\n\n // capture a stacktrace in case a resulting error has nothing\n const fallbackStack = getStack()\n\n return (err, ...data) => {\n if (err) {\n // check if the stacktrace has no context, if so, if so append the frames we created earlier\n if (err.stack) maybeUseFallbackStack(err, fallbackStack)\n const event = client.Event.create(err, true, {\n severity: 'warning',\n unhandled: false,\n severityReason: { type: 'callbackErrorIntercept' }\n }, 'intercept()', 1)\n client._notify(event, onError)\n return\n }\n cb(...data) // eslint-disable-line\n }\n }\n\n return intercept\n }\n}\n", "const os = require('os')\n\n/*\n * Automatically detects Node server details ('device' in the API)\n */\nmodule.exports = {\n load: (client) => {\n const device = {\n osName: `${os.platform()} (${os.arch()})`,\n osVersion: os.release(),\n totalMemory: os.totalmem(),\n hostname: client._config.hostname,\n runtimeVersions: { node: process.versions.node }\n }\n\n client._addOnSessionPayload(sp => {\n sp.device = {\n ...sp.device,\n ...device\n }\n })\n\n // add time just as the event is sent\n client.addOnError((event) => {\n event.device = {\n ...event.device,\n ...device,\n freeMemory: os.freemem(),\n time: new Date()\n }\n }, true)\n }\n}\n", "const { join, resolve } = require('path')\n\n// normalise a path to a directory, adding a trailing slash if it doesn't already\n// have one and resolve it to make it absolute (e.g. get rid of any \"..\"s)\nmodule.exports = p => join(resolve(p), '/')\n", "const normalizePath = require('@bugsnag/core/lib/path-normalizer')\n\nmodule.exports = {\n load: client => client.addOnError(event => {\n if (!client._config.projectRoot) return\n const projectRoot = normalizePath(client._config.projectRoot)\n const allFrames = event.errors.reduce((accum, er) => accum.concat(er.stacktrace), [])\n allFrames.map(stackframe => {\n stackframe.inProject = typeof stackframe.file === 'string' &&\n stackframe.file.indexOf(projectRoot) === 0 &&\n !/\\/node_modules\\//.test(stackframe.file)\n })\n })\n}\n", "const SURROUNDING_LINES = 3\nconst MAX_LINE_LENGTH = 200\n\nconst { createReadStream } = require('fs')\nconst { Writable } = require('stream')\nconst pump = require('pump')\nconst byline = require('byline')\nconst path = require('path')\n\nmodule.exports = {\n load: client => {\n if (!client._config.sendCode) return\n\n const loadSurroundingCode = (stackframe, cache) => new Promise((resolve, reject) => {\n try {\n if (!stackframe.lineNumber || !stackframe.file) return resolve(stackframe)\n const file = path.resolve(client._config.projectRoot, stackframe.file)\n const cacheKey = `${file}@${stackframe.lineNumber}`\n if (cacheKey in cache) {\n stackframe.code = cache[cacheKey]\n return resolve(stackframe)\n }\n getSurroundingCode(file, stackframe.lineNumber, (err, code) => {\n if (err) return resolve(stackframe)\n stackframe.code = cache[cacheKey] = code\n return resolve(stackframe)\n })\n } catch (e) {\n return resolve(stackframe)\n }\n })\n\n client.addOnError(event => new Promise((resolve, reject) => {\n const cache = Object.create(null)\n const allFrames = event.errors.reduce((accum, er) => accum.concat(er.stacktrace), [])\n pMapSeries(allFrames.map(stackframe => () => loadSurroundingCode(stackframe, cache)))\n .then(resolve)\n .catch(reject)\n }))\n },\n configSchema: {\n sendCode: {\n defaultValue: () => true,\n validate: value => value === true || value === false,\n message: 'should be true or false'\n }\n }\n}\n\nconst getSurroundingCode = (file, lineNumber, cb) => {\n const start = lineNumber - SURROUNDING_LINES\n const end = lineNumber + SURROUNDING_LINES\n\n const reader = createReadStream(file, { encoding: 'utf8' })\n const splitter = new byline.LineStream({ keepEmptyLines: true })\n const slicer = new CodeRange({ start, end })\n\n // if the slicer has enough lines already, no need to keep reading from the file\n slicer.on('done', () => reader.destroy())\n\n pump(reader, splitter, slicer, (err) => {\n // reader.destroy() causes a \"premature close\" error which we can tolerate\n if (err && err.message !== 'premature close') return cb(err)\n cb(null, slicer.getCode())\n })\n}\n\n// This writable stream takes { start, end } options specifying the\n// range of lines that should be extracted from a file. Pipe a readable\n// stream to it that provides source lines as each chunk. If the range\n// is satisfied before the end of the readable stream, it will emit the\n// 'done' event. Once a 'done' or 'finish' event has been seen, call getCode()\n// to get the range in the following format:\n// {\n// '10': 'function getSquare (cb) {',\n// '11': ' rectangles.find({',\n// '12': ' length: 12',\n// '13': ' width: 12',\n// '14': ' }, err => cb)',\n// '15': '}'\n// }\nclass CodeRange extends Writable {\n constructor (opts) {\n super({ ...opts, decodeStrings: false })\n this._start = opts.start\n this._end = opts.end\n this._n = 0\n this._code = {}\n }\n\n _write (chunk, enc, cb) {\n this._n++\n if (this._n < this._start) return cb(null)\n if (this._n <= this._end) {\n this._code[String(this._n)] = chunk.length <= MAX_LINE_LENGTH ? chunk : chunk.substr(0, MAX_LINE_LENGTH)\n return cb(null)\n }\n this.emit('done')\n return cb(null)\n }\n\n getCode () {\n return this._code\n }\n}\n\nconst pMapSeries = (ps) => {\n return new Promise((resolve, reject) => {\n const res = []\n ps\n .reduce((accum, p) => {\n return accum.then(r => {\n res.push(r)\n return p()\n })\n }, Promise.resolve())\n .then(r => { res.push(r) })\n .then(() => { resolve(res.slice(1)) })\n })\n}\n", "let _handler\nmodule.exports = {\n load: client => {\n if (!client._config.autoDetectErrors) return\n if (!client._config.enabledErrorTypes.unhandledExceptions) return\n _handler = err => {\n const event = client.Event.create(err, false, {\n severity: 'error',\n unhandled: true,\n severityReason: { type: 'unhandledException' }\n }, 'uncaughtException handler', 1)\n client._notify(event, () => {}, (e, event) => {\n if (e) client._logger.error('Failed to send event to Bugsnag')\n client._config.onUncaughtException(err, event, client._logger)\n })\n }\n process.on('uncaughtException', _handler)\n },\n destroy: () => {\n process.removeListener('uncaughtException', _handler)\n }\n}\n", "let _handler\nmodule.exports = {\n load: client => {\n if (!client._config.autoDetectErrors || !client._config.enabledErrorTypes.unhandledRejections) return\n _handler = err => {\n const event = client.Event.create(err, false, {\n severity: 'error',\n unhandled: true,\n severityReason: { type: 'unhandledPromiseRejection' }\n }, 'unhandledRejection handler', 1)\n\n return new Promise(resolve => {\n client._notify(event, () => {}, (e, event) => {\n if (e) client._logger.error('Failed to send event to Bugsnag')\n client._config.onUnhandledRejection(err, event, client._logger)\n resolve()\n })\n })\n }\n\n // Prepend the listener if we can (Node 6+)\n if (process.prependListener) {\n process.prependListener('unhandledRejection', _handler)\n } else {\n process.on('unhandledRejection', _handler)\n }\n },\n destroy: () => {\n process.removeListener('unhandledRejection', _handler)\n }\n}\n", "const assign = require('./es-utils/assign')\n\nmodule.exports = (client) => {\n const clone = new client.Client({}, {}, [], client._notifier)\n\n clone._config = client._config\n\n // changes to these properties should not be reflected in the original client,\n // so ensure they are are (shallow) cloned\n clone._breadcrumbs = client._breadcrumbs.slice()\n clone._metadata = assign({}, client._metadata)\n clone._user = assign({}, client._user)\n clone._context = client._context\n\n clone._cbs = {\n e: client._cbs.e.slice(),\n s: client._cbs.s.slice(),\n sp: client._cbs.sp.slice(),\n b: client._cbs.b.slice()\n }\n\n clone._logger = client._logger\n clone._delivery = client._delivery\n clone._sessionDelegate = client._sessionDelegate\n\n return clone\n}\n", "\n/**\n * Expose `Backoff`.\n */\n\nmodule.exports = Backoff;\n\n/**\n * Initialize backoff timer with `opts`.\n *\n * - `min` initial timeout in milliseconds [100]\n * - `max` max timeout [10000]\n * - `jitter` [0]\n * - `factor` [2]\n *\n * @param {Object} opts\n * @api public\n */\n\nfunction Backoff(opts) {\n opts = opts || {};\n this.ms = opts.min || 100;\n this.max = opts.max || 10000;\n this.factor = opts.factor || 2;\n this.jitter = opts.jitter > 0 && opts.jitter <= 1 ? opts.jitter : 0;\n this.attempts = 0;\n}\n\n/**\n * Return the backoff duration.\n *\n * @return {Number}\n * @api public\n */\n\nBackoff.prototype.duration = function(){\n var ms = this.ms * Math.pow(this.factor, this.attempts++);\n if (this.jitter) {\n var rand = Math.random();\n var deviation = Math.floor(rand * this.jitter * ms);\n ms = (Math.floor(rand * 10) & 1) == 0 ? ms - deviation : ms + deviation;\n }\n return Math.min(ms, this.max) | 0;\n};\n\n/**\n * Reset the number of attempts.\n *\n * @api public\n */\n\nBackoff.prototype.reset = function(){\n this.attempts = 0;\n};\n", "const DEFAULT_SUMMARY_INTERVAL = 10 * 1000\nconst Emitter = require('events').EventEmitter\n\nmodule.exports = class SessionTracker extends Emitter {\n constructor (intervalLength) {\n super()\n this._sessions = new Map()\n this._interval = null\n this._intervalLength = intervalLength || DEFAULT_SUMMARY_INTERVAL\n\n this._summarize = this._summarize.bind(this)\n }\n\n start () {\n if (!this._interval) {\n this._interval = setInterval(this._summarize, this._intervalLength).unref()\n }\n }\n\n stop () {\n clearInterval(this._interval)\n this._interval = null\n }\n\n track (session) {\n const key = dateToMsKey(session.startedAt)\n const cur = this._sessions.get(key)\n this._sessions.set(key, typeof cur === 'undefined' ? 1 : cur + 1)\n return session\n }\n\n _summarize () {\n const summary = []\n this._sessions.forEach((val, key) => {\n summary.push({ startedAt: key, sessionsStarted: val })\n this._sessions.delete(key)\n })\n if (!summary.length) return\n this.emit('summary', summary)\n }\n}\n\nconst dateToMsKey = (d) => {\n const dk = new Date(d)\n dk.setSeconds(0)\n dk.setMilliseconds(0)\n return dk.toISOString()\n}\n", "const intRange = require('@bugsnag/core/lib/validators/int-range')\nconst clone = require('@bugsnag/core/lib/clone-client')\nconst SessionTracker = require('./tracker')\nconst Backoff = require('backo')\nconst runSyncCallbacks = require('@bugsnag/core/lib/sync-callback-runner')\n\nmodule.exports = {\n load: (client) => {\n const sessionTracker = new SessionTracker(client._config.sessionSummaryInterval)\n sessionTracker.on('summary', sendSessionSummary(client))\n sessionTracker.start()\n client._sessionDelegate = {\n startSession: (client, session) => {\n const sessionClient = clone(client)\n sessionClient._session = session\n sessionClient._pausedSession = null\n sessionTracker.track(sessionClient._session)\n return sessionClient\n },\n pauseSession: (client) => {\n client._pausedSession = client._session\n client._session = null\n },\n resumeSession: (client) => {\n // Do nothing if there's already an active session\n if (client._session) {\n return client\n }\n\n // If we have a paused session then make it the active session\n if (client._pausedSession) {\n client._session = client._pausedSession\n client._pausedSession = null\n\n return client\n }\n\n // Otherwise start a new session\n return client.startSession()\n }\n }\n },\n configSchema: {\n sessionSummaryInterval: {\n defaultValue: () => undefined,\n validate: value => value === undefined || intRange()(value),\n message: 'should be a positive integer'\n }\n }\n}\n\nconst sendSessionSummary = client => sessionCounts => {\n // exit early if the current releaseStage is not enabled\n if (client._config.enabledReleaseStages !== null && !client._config.enabledReleaseStages.includes(client._config.releaseStage)) {\n client._logger.warn('Session not sent due to releaseStage/enabledReleaseStages configuration')\n return\n }\n\n if (!sessionCounts.length) return\n\n const backoff = new Backoff({ min: 1000, max: 10000 })\n const maxAttempts = 10\n req(handleRes)\n\n function handleRes (err) {\n if (!err) {\n const sessionCount = sessionCounts.reduce((accum, s) => accum + s.sessionsStarted, 0)\n return client._logger.debug(`${sessionCount} session(s) reported`)\n }\n if (backoff.attempts === 10) {\n client._logger.error('Session delivery failed, max retries exceeded', err)\n return\n }\n client._logger.debug('Session delivery failed, retry #' + (backoff.attempts + 1) + '/' + maxAttempts, err)\n setTimeout(() => req(handleRes), backoff.duration())\n }\n\n function req (cb) {\n const payload = {\n notifier: client._notifier,\n device: {},\n app: {\n releaseStage: client._config.releaseStage,\n version: client._config.appVersion,\n type: client._config.appType\n },\n sessionCounts\n }\n\n const ignore = runSyncCallbacks(client._cbs.sp, payload, 'onSessionPayload', client._logger)\n if (ignore) {\n client._logger.debug('Session not sent due to onSessionPayload callback')\n return cb(null)\n }\n\n client._delivery.sendSession(payload, cb)\n }\n}\n", "module.exports = {\n load (client) {\n client.addOnError(event => {\n const allFrames = event.errors.reduce((accum, er) => accum.concat(er.stacktrace), [])\n\n allFrames.forEach(stackframe => {\n if (typeof stackframe.file !== 'string') {\n return\n }\n\n stackframe.file = stackframe.file.replace(/\\\\/g, '/')\n })\n })\n }\n}\n", "const normalizePath = require('@bugsnag/core/lib/path-normalizer')\n\nmodule.exports = {\n load: client => client.addOnError(event => {\n if (!client._config.projectRoot) return\n const projectRoot = normalizePath(client._config.projectRoot)\n const allFrames = event.errors.reduce((accum, er) => accum.concat(er.stacktrace), [])\n allFrames.map(stackframe => {\n if (typeof stackframe.file === 'string' && stackframe.file.indexOf(projectRoot) === 0) {\n stackframe.file = stackframe.file.replace(projectRoot, '')\n }\n })\n })\n}\n", "const name = 'Bugsnag Node'\nconst version = '7.11.0'\nconst url = 'https://github.com/bugsnag/bugsnag-js'\n\nconst Client = require('@bugsnag/core/client')\nconst Event = require('@bugsnag/core/event')\nconst Session = require('@bugsnag/core/session')\nconst Breadcrumb = require('@bugsnag/core/breadcrumb')\n\nEvent.__type = 'nodejs'\n\nconst delivery = require('@bugsnag/delivery-node')\n\n// extend the base config schema with some node-specific options\nconst schema = { ...require('@bugsnag/core/config').schema, ...require('./config') }\n\n// remove enabledBreadcrumbTypes from the config schema\ndelete schema.enabledBreadcrumbTypes\n\nconst pluginApp = require('@bugsnag/plugin-app-duration')\nconst pluginSurroundingCode = require('@bugsnag/plugin-node-surrounding-code')\nconst pluginInProject = require('@bugsnag/plugin-node-in-project')\nconst pluginStripProjectRoot = require('@bugsnag/plugin-strip-project-root')\nconst pluginServerSession = require('@bugsnag/plugin-server-session')\nconst pluginNodeDevice = require('@bugsnag/plugin-node-device')\nconst pluginNodeUncaughtException = require('@bugsnag/plugin-node-uncaught-exception')\nconst pluginNodeUnhandledRejection = require('@bugsnag/plugin-node-unhandled-rejection')\nconst pluginIntercept = require('@bugsnag/plugin-intercept')\nconst pluginContextualize = require('@bugsnag/plugin-contextualize')\nconst pluginStackframePathNormaliser = require('@bugsnag/plugin-stackframe-path-normaliser')\n\nconst internalPlugins = [\n pluginApp,\n pluginSurroundingCode,\n pluginInProject,\n pluginStripProjectRoot,\n pluginServerSession,\n pluginNodeDevice,\n pluginNodeUncaughtException,\n pluginNodeUnhandledRejection,\n pluginIntercept,\n pluginContextualize,\n pluginStackframePathNormaliser\n]\n\nconst Bugsnag = {\n _client: null,\n createClient: (opts) => {\n // handle very simple use case where user supplies just the api key as a string\n if (typeof opts === 'string') opts = { apiKey: opts }\n if (!opts) opts = {}\n\n const bugsnag = new Client(opts, schema, internalPlugins, { name, version, url })\n\n bugsnag._setDelivery(delivery)\n\n bugsnag._logger.debug('Loaded!')\n\n bugsnag.leaveBreadcrumb = function () {\n bugsnag._logger.warn('Breadcrumbs are not supported in Node.js yet')\n }\n\n bugsnag._config.enabledBreadcrumbTypes = []\n\n return bugsnag\n },\n start: (opts) => {\n if (Bugsnag._client) {\n Bugsnag._client._logger.warn('Bugsnag.start() was called more than once. Ignoring.')\n return Bugsnag._client\n }\n Bugsnag._client = Bugsnag.createClient(opts)\n return Bugsnag._client\n }\n}\n\nObject.keys(Client.prototype).forEach((m) => {\n if (/^_/.test(m)) return\n Bugsnag[m] = function () {\n if (!Bugsnag._client) return console.error(`Bugsnag.${m}() was called before Bugsnag.start()`)\n Bugsnag._client._depth += 1\n const ret = Bugsnag._client[m].apply(Bugsnag._client, arguments)\n Bugsnag._client._depth -= 1\n return ret\n }\n})\n\nmodule.exports = Bugsnag\n\nmodule.exports.Client = Client\nmodule.exports.Event = Event\nmodule.exports.Session = Session\nmodule.exports.Breadcrumb = Breadcrumb\n\n// Export a \"default\" property for compatibility with ESM imports\nmodule.exports.default = Bugsnag\n", "\nreturn _$notifier_35;\n\n});\n" ] }