{"version":3,"mappings":"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","names":["compose","funcs","_i","arg","a","b","args","__spreadArray","__read","toHashMapString","obj","k","toHashMap","isError","error","getStacktrace","_a","stacktrace","line","_b","stack","urlEncode","object","key","isNodeEnv","getGlobalObject","Serializable","data","VERSION","Environment","globals","resolve","r","XDomainTransport","url","_this","reject","req","rx","e","XHRTransport","req_1","FetchTransport","headers","__awaiter","res","statusText","ok","__generator","NodeTransport","options","https","reason","PushApi","span","auth","Span","_super","__extends","__assign","name","tags","params","breadcrumbs","Queue","item","Dispatcher","queue","api","time","BACKOFF_FACTOR","cb","expDuration","e_2_1","e_2","_c","_d","__values","limit","initialDuration","Appsignal","uri","revision","ignoreErrors","tagsOrFn","namespace","el","error_1","callback","plugin","fn","e_1","decorator","override","breadcrumb","crumb","event","pathDecoratorPlugin","t","s","i","n","p","DEFAULTS","networkBreadcrumbsPlugin","opts","xhrEnabled","fetchEnabled","ignoreUrls","isXhrEnabled","isFetchEnabled","appsignal","xhrPatch","prevOpen","open","method","metadata","onXhrLoad","onXhrError","fetchPatch","originalFetch","fetch","input","init","response","statusCode","windowEventsPlugin","ctx","self","prev","_onErrorHandler","source","lineno","colno","_onUnhandledRejectionHandler","_reasonFromEvent","circularReplacer","seenValue","seenKey","value","instance","AppsignalInstance","windowEventPlugin"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19],"sources":["../../../node_modules/@appsignal/core/dist/esm/utils/functional.js","../../../node_modules/@appsignal/core/dist/esm/utils/hashmap.js","../../../node_modules/@appsignal/core/dist/esm/utils/error.js","../../../node_modules/@appsignal/core/dist/esm/utils/url.js","../../../node_modules/@appsignal/core/dist/esm/utils/environment.js","../../../node_modules/@appsignal/core/dist/esm/serializable.js","../../../node_modules/@appsignal/javascript/dist/esm/version.js","../../../node_modules/@appsignal/javascript/dist/esm/environment.js","../../../node_modules/@appsignal/javascript/dist/esm/transports/xdomain.js","../../../node_modules/@appsignal/javascript/dist/esm/transports/xhr.js","../../../node_modules/@appsignal/javascript/dist/esm/transports/fetch.js","../../../node_modules/@appsignal/javascript/dist/esm/transports/node.js","../../../node_modules/@appsignal/javascript/dist/esm/api.js","../../../node_modules/@appsignal/javascript/dist/esm/span.js","../../../node_modules/@appsignal/javascript/dist/esm/queue.js","../../../node_modules/@appsignal/javascript/dist/esm/dispatcher.js","../../../node_modules/@appsignal/javascript/dist/esm/index.js","../../../node_modules/@appsignal/plugin-path-decorator/dist/esm/index.js","../../../node_modules/@appsignal/plugin-breadcrumbs-network/dist/esm/index.js","../../../node_modules/@appsignal/plugin-window-events/dist/esm/index.js","../../../app/javascript/utils/Appsignal.js"],"sourcesContent":["import { __read, __spreadArray } from \"tslib\";\nexport function compose() {\n var funcs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n funcs[_i] = arguments[_i];\n }\n if (funcs.length === 0) {\n return function (arg) { return arg; };\n }\n if (funcs.length === 1) {\n return funcs[0];\n }\n return funcs.reduce(function (a, b) { return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n return a(b.apply(void 0, __spreadArray([], __read(args), false)));\n }; });\n}\n//# sourceMappingURL=functional.js.map","export function toHashMapString(obj) {\n if (!obj)\n return;\n Object.keys(obj).forEach(function (k) {\n if (typeof obj[k] === \"object\") {\n obj[k] = JSON.stringify(obj[k]);\n }\n obj[k] = String(obj[k]);\n });\n return obj;\n}\nexport function toHashMap(obj) {\n if (!obj)\n return;\n Object.keys(obj).forEach(function (k) {\n if (typeof obj[k] === \"string\" ||\n typeof obj[k] === \"boolean\" ||\n typeof obj[k] === \"number\") {\n return;\n }\n obj[k] = JSON.stringify(obj[k]);\n });\n return obj;\n}\n//# sourceMappingURL=hashmap.js.map","export function isError(error) {\n return (typeof error === \"object\" && typeof error.message !== \"undefined\");\n}\nexport function getStacktrace(error) {\n if (typeof error.stacktrace !== \"undefined\" ||\n typeof error[\"opera#sourceloc\"] !== \"undefined\") {\n var _a = error.stacktrace, stacktrace = _a === void 0 ? \"\" : _a;\n return stacktrace\n .split(\"\\n\")\n .filter(function (line) { return line !== \"\"; });\n }\n else if (error.stack) {\n var _b = error.stack, stack = _b === void 0 ? \"\" : _b;\n return stack.split(\"\\n\").filter(function (line) { return line !== \"\"; });\n }\n else {\n return [\"No stacktrace available\"];\n }\n}\n//# sourceMappingURL=error.js.map","export function urlEncode(object) {\n return Object.keys(object)\n .map(function (key) { return \"\".concat(encodeURIComponent(key), \"=\").concat(encodeURIComponent(object[key])); })\n .join(\"&\");\n}\n//# sourceMappingURL=url.js.map","export function isNodeEnv() {\n return (Object.prototype.toString.call(typeof process !== \"undefined\" ? process : 0) === \"[object process]\");\n}\nexport function getGlobalObject() {\n return (isNodeEnv()\n ? global\n : typeof window !== \"undefined\"\n ? window\n : typeof self !== \"undefined\"\n ? self\n : {});\n}\n//# sourceMappingURL=environment.js.map","var Serializable = (function () {\n function Serializable(data) {\n this._data = data;\n }\n Serializable.prototype.toJSON = function () {\n return JSON.stringify(this._data);\n };\n Serializable.prototype.serialize = function () {\n return this._data;\n };\n return Serializable;\n}());\nexport { Serializable };\n//# sourceMappingURL=serializable.js.map","export var VERSION = \"1.3.29\";\n//# sourceMappingURL=version.js.map","import { getGlobalObject, isNodeEnv } from \"@appsignal/core\";\nvar Environment = (function () {\n function Environment() {\n }\n Environment.serialize = function () {\n return {\n transport: this.transport(),\n origin: this.origin()\n };\n };\n Environment.origin = function () {\n var globals = getGlobalObject();\n if (!globals.location) {\n return \"\";\n }\n return (globals.location.origin ||\n \"\".concat(globals.location.protocol, \"//\").concat(globals.location.hostname));\n };\n Environment.transport = function () {\n var globals = getGlobalObject();\n if (isNodeEnv() && typeof jest === \"undefined\") {\n return \"NodeHTTP\";\n }\n else if (globals.XDomainRequest) {\n return \"XDomainRequest\";\n }\n else if (globals.XMLHttpRequest && !globals.fetch) {\n return \"XMLHttpRequest\";\n }\n else {\n return \"fetch\";\n }\n };\n Environment.supportsPromises = function () {\n var globals = getGlobalObject();\n return (\"Promise\" in globals &&\n \"resolve\" in globals.Promise &&\n \"reject\" in globals.Promise &&\n \"all\" in globals.Promise &&\n \"race\" in globals.Promise &&\n (function () {\n var resolve;\n new globals.Promise(function (r) {\n resolve = r;\n });\n return typeof resolve === \"function\";\n })());\n };\n return Environment;\n}());\nexport { Environment };\n//# sourceMappingURL=environment.js.map","var XDomainTransport = (function () {\n function XDomainTransport(url) {\n this.url = url;\n }\n XDomainTransport.prototype.send = function (data) {\n var _this = this;\n return new Promise(function (resolve, reject) {\n var _a;\n var req = new XDomainRequest();\n var rx = new RegExp(\"^https?:\");\n req.onload = function () { return resolve({}); };\n req.open(\"POST\", _this.url.replace(rx, (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.protocol));\n setTimeout(function () {\n try {\n req.send(data);\n }\n catch (e) {\n reject(e);\n }\n }, 0);\n });\n };\n return XDomainTransport;\n}());\nexport { XDomainTransport };\n//# sourceMappingURL=xdomain.js.map","var XHRTransport = (function () {\n function XHRTransport(url) {\n this.url = url;\n }\n XHRTransport.prototype.send = function (data) {\n var _this = this;\n return new Promise(function (resolve, reject) {\n try {\n var req_1 = new XMLHttpRequest();\n req_1.onreadystatechange = function () {\n if (req_1.readyState === XMLHttpRequest.DONE) {\n resolve({});\n }\n };\n req_1.open(\"POST\", _this.url);\n req_1.send(data);\n }\n catch (e) {\n reject(e);\n }\n });\n };\n return XHRTransport;\n}());\nexport { XHRTransport };\n//# sourceMappingURL=xhr.js.map","import { __awaiter, __generator } from \"tslib\";\nvar FetchTransport = (function () {\n function FetchTransport(url, headers) {\n this.url = url;\n }\n FetchTransport.prototype.send = function (data) {\n return __awaiter(this, void 0, void 0, function () {\n var res, statusText, ok;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, fetch(this.url, {\n method: \"POST\",\n body: data\n })];\n case 1:\n res = _a.sent();\n statusText = res.statusText, ok = res.ok;\n return [2, ok ? Promise.resolve({}) : Promise.reject({ statusText: statusText })];\n }\n });\n });\n };\n return FetchTransport;\n}());\nexport { FetchTransport };\n//# sourceMappingURL=fetch.js.map","var NodeTransport = (function () {\n function NodeTransport(url) {\n this.url = url;\n this.https = import(\"https\");\n }\n NodeTransport.prototype.send = function (data) {\n var _this = this;\n var options = {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"Content-Length\": data.length\n }\n };\n return new Promise(function (resolve, reject) {\n _this.https\n .then(function (https) {\n var req = https\n .request(_this.url, options, function () { })\n .on(\"error\", function (error) { return reject(error); });\n req.write(data);\n req.end();\n resolve({});\n })\n .catch(function (reason) {\n console.warn(\"NodeTransport is being used, but the HTTPS module could not be imported. No data will be sent to AppSignal.\");\n reject(reason);\n });\n });\n };\n return NodeTransport;\n}());\nexport { NodeTransport };\n//# sourceMappingURL=node.js.map","import { __awaiter, __generator } from \"tslib\";\nimport { urlEncode } from \"@appsignal/core\";\nimport { Environment } from \"./environment\";\nimport { XDomainTransport } from \"./transports/xdomain\";\nimport { XHRTransport } from \"./transports/xhr\";\nimport { FetchTransport } from \"./transports/fetch\";\nimport { NodeTransport } from \"./transports/node\";\nvar PushApi = (function () {\n function PushApi(options) {\n this._uri = options.uri || \"https://appsignal-endpoint.net/collect\";\n this._apiKey = options.key;\n this._clientVersion = options.version;\n this._transport = this._createTransport(this._url());\n }\n PushApi.prototype.push = function (span) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, this._transport.send(span.toJSON())];\n case 1:\n _a.sent();\n return [2, span];\n }\n });\n });\n };\n PushApi.prototype._createTransport = function (url) {\n switch (Environment.transport()) {\n case \"XDomainRequest\":\n return new XDomainTransport(url);\n case \"XMLHttpRequest\":\n return new XHRTransport(url);\n case \"NodeHTTP\":\n return new NodeTransport(url);\n default:\n return new FetchTransport(url);\n }\n };\n PushApi.prototype._url = function () {\n var auth = this._authorization();\n return \"\".concat(this._uri, \"?\").concat(urlEncode(auth));\n };\n PushApi.prototype._authorization = function () {\n return {\n api_key: this._apiKey,\n version: this._clientVersion\n };\n };\n return PushApi;\n}());\nexport { PushApi };\n//# sourceMappingURL=api.js.map","import { __assign, __extends } from \"tslib\";\nimport { Serializable, getStacktrace, toHashMapString, isError } from \"@appsignal/core\";\nvar Span = (function (_super) {\n __extends(Span, _super);\n function Span(span) {\n return _super.call(this, __assign({ timestamp: Math.round(new Date().getTime() / 1000), namespace: \"frontend\", error: {\n name: \"NullError\",\n message: \"No error has been set\",\n backtrace: []\n } }, span)) || this;\n }\n Span.prototype.setAction = function (name) {\n if (!name || typeof name !== \"string\") {\n return this;\n }\n this._data.action = name;\n return this;\n };\n Span.prototype.setNamespace = function (name) {\n if (!name || typeof name !== \"string\") {\n return this;\n }\n this._data.namespace = name;\n return this;\n };\n Span.prototype.setError = function (error) {\n if (!error || !isError(error))\n return this;\n this._data.error = {\n name: error.name || \"[unknown]\",\n message: error.message,\n backtrace: getStacktrace(error)\n };\n return this;\n };\n Span.prototype.setTags = function (tags) {\n this._data.tags = __assign(__assign({}, this._data.tags), toHashMapString(tags));\n return this;\n };\n Span.prototype.setParams = function (params) {\n this._data.params = __assign(__assign({}, this._data.params), params);\n return this;\n };\n Span.prototype.setBreadcrumbs = function (breadcrumbs) {\n this._data.breadcrumbs = breadcrumbs;\n return this;\n };\n return Span;\n}(Serializable));\nexport { Span };\n//# sourceMappingURL=span.js.map","import { __generator, __read, __spreadArray } from \"tslib\";\nvar Queue = (function () {\n function Queue(data) {\n this._data = data || [];\n }\n Queue.prototype.clear = function () {\n this._data = [];\n };\n Queue.prototype.values = function () {\n return this._data;\n };\n Queue.prototype.push = function (item) {\n var _a;\n return Array.isArray(item)\n ? (_a = this._data).push.apply(_a, __spreadArray([], __read(item), false)) : this._data.push(item);\n };\n Queue.prototype.drain = function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!(this._data.length > 0)) return [3, 2];\n return [4, this._data.shift()];\n case 1:\n _a.sent();\n return [3, 0];\n case 2: return [2];\n }\n });\n };\n return Queue;\n}());\nexport { Queue };\n//# sourceMappingURL=queue.js.map","import { __assign, __awaiter, __generator, __values } from \"tslib\";\nimport { getGlobalObject } from \"@appsignal/core\";\nvar Dispatcher = (function () {\n function Dispatcher(queue, api, options) {\n this._retries = 0;\n this._timerID = 0;\n this._duration = 0;\n this._api = api;\n this._queue = queue;\n this.options = __assign({ limit: 5, initialDuration: 1000 }, options);\n this.reset();\n }\n Dispatcher.prototype.schedule = function (time) {\n var _this = this;\n if (time === void 0) { time = this._duration; }\n var globals = getGlobalObject();\n var BACKOFF_FACTOR = 1.3;\n var cb = function () { return __awaiter(_this, void 0, void 0, function () {\n var _a, _b, span, e_1, expDuration, e_2_1;\n var e_2, _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n _d.trys.push([0, 7, 8, 9]);\n _a = __values(this._queue.drain()), _b = _a.next();\n _d.label = 1;\n case 1:\n if (!!_b.done) return [3, 6];\n span = _b.value;\n if (!span)\n return [2];\n _d.label = 2;\n case 2:\n _d.trys.push([2, 4, , 5]);\n return [4, this._api.push(span)];\n case 3:\n _d.sent();\n return [3, 5];\n case 4:\n e_1 = _d.sent();\n expDuration = Math.floor(Math.pow(time, BACKOFF_FACTOR));\n this._retries = this._retries - 1;\n if (this._retries === 0) {\n this.reset();\n }\n else {\n this._queue.push(span);\n this._timerID = this.schedule(expDuration);\n }\n return [2];\n case 5:\n _b = _a.next();\n return [3, 1];\n case 6: return [3, 9];\n case 7:\n e_2_1 = _d.sent();\n e_2 = { error: e_2_1 };\n return [3, 9];\n case 8:\n try {\n if (_b && !_b.done && (_c = _a.return)) _c.call(_a);\n }\n finally { if (e_2) throw e_2.error; }\n return [7];\n case 9:\n this.reset();\n return [2];\n }\n });\n }); };\n return globals.setTimeout(cb, time);\n };\n Dispatcher.prototype.reset = function () {\n var _a = this.options, limit = _a.limit, initialDuration = _a.initialDuration;\n this._retries = limit;\n this._duration = initialDuration;\n };\n return Dispatcher;\n}());\nexport { Dispatcher };\n//# sourceMappingURL=dispatcher.js.map","import { __assign, __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { compose, toHashMap } from \"@appsignal/core\";\nimport { VERSION } from \"./version\";\nimport { PushApi } from \"./api\";\nimport { Environment } from \"./environment\";\nimport { Span } from \"./span\";\nimport { Queue } from \"./queue\";\nimport { Dispatcher } from \"./dispatcher\";\nvar Appsignal = (function () {\n function Appsignal(options) {\n this.VERSION = VERSION;\n this.ignored = [];\n this._breadcrumbs = [];\n this._hooks = {\n decorators: Array(),\n overrides: Array()\n };\n this._env = Environment.serialize();\n this._queue = new Queue([]);\n var _a = options.key, key = _a === void 0 ? \"\" : _a, uri = options.uri, revision = options.revision, ignoreErrors = options.ignoreErrors;\n if (revision && typeof revision !== \"string\") {\n options.revision = String(revision);\n }\n if (key === \"\") {\n console.info(\"[APPSIGNAL]: Started in development mode.\");\n }\n this._api = new PushApi({\n key: key,\n uri: uri,\n version: this.VERSION\n });\n if (ignoreErrors && Array.isArray(ignoreErrors)) {\n this.ignored = ignoreErrors;\n }\n this._dispatcher = new Dispatcher(this._queue, this._api);\n this._options = options;\n }\n Appsignal.prototype.send = function (data, tagsOrFn, namespace) {\n var _this = this;\n if (!(data instanceof Error) && !(data instanceof Span)) {\n console.error(\"[APPSIGNAL]: Can't send error, given error is not a valid type\");\n return;\n }\n if (this.ignored.length !== 0) {\n if (data instanceof Error &&\n this.ignored.some(function (el) { return el.test(data.message); })) {\n console.warn(\"[APPSIGNAL]: Ignored an error: \".concat(data.message));\n return;\n }\n if (data instanceof Span) {\n var error_1 = data.serialize().error;\n if (error_1.message && this.ignored.some(function (el) { return el.test(error_1.message); })) {\n console.warn(\"[APPSIGNAL]: Ignored a span: \".concat(error_1.message));\n return;\n }\n }\n }\n var span = data instanceof Span ? data : this._createSpanFromError(data);\n if (this._hooks.decorators.length > 0) {\n compose.apply(void 0, __spreadArray([], __read(this._hooks.decorators), false))(span);\n }\n if (tagsOrFn) {\n if (typeof tagsOrFn === \"function\") {\n var callback = tagsOrFn;\n callback(span);\n }\n else {\n console.warn(\"[APPSIGNAL]: DEPRECATED: Calling the `send`/`sendError` function with a tags object is deprecated. Use the callback argument instead.\");\n var tags = (toHashMap(tagsOrFn) || {});\n span.setTags(tags);\n }\n }\n if (namespace) {\n console.warn(\"[APPSIGNAL]: DEPRECATED: Calling the `send`/`sendError` function with a namespace is deprecated. Use the callback argument instead.\");\n span.setNamespace(namespace);\n }\n if (this._breadcrumbs.length > 0)\n span.setBreadcrumbs(this._breadcrumbs);\n if (this._hooks.overrides.length > 0) {\n compose.apply(void 0, __spreadArray([], __read(this._hooks.overrides), false))(span);\n }\n if (Environment.supportsPromises()) {\n this._breadcrumbs = [];\n if (!this._options.key) {\n console.warn(\"[APPSIGNAL]: Span not sent because we're in development mode:\", span);\n if (data instanceof Error) {\n throw data;\n }\n }\n else {\n return this._api.push(span).catch(function () {\n _this._queue.push(span);\n setTimeout(function () { return _this._dispatcher.schedule(); }, 0);\n });\n }\n }\n else {\n console.error(\"[APPSIGNAL]: Error not sent. A Promise polyfill is required.\");\n return;\n }\n };\n Appsignal.prototype.sendError = function (error, tagsOrFn, namespace) {\n return this.send(error, tagsOrFn, namespace);\n };\n Appsignal.prototype.use = function (plugin) {\n plugin.call(this);\n };\n Appsignal.prototype.createSpan = function (fn) {\n var _a = this._options, _b = _a.revision, revision = _b === void 0 ? \"\" : _b, namespace = _a.namespace;\n var span = new Span({\n environment: this._env,\n revision: revision\n });\n if (namespace)\n span.setNamespace(namespace);\n if (fn && typeof fn === \"function\")\n fn(span);\n return span;\n };\n Appsignal.prototype.wrap = function (fn, tagsOrFn, namespace) {\n return __awaiter(this, void 0, void 0, function () {\n var e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 4]);\n return [4, fn()];\n case 1: return [2, _a.sent()];\n case 2:\n e_1 = _a.sent();\n return [4, this.sendError(e_1, tagsOrFn, namespace)];\n case 3:\n _a.sent();\n return [2, Promise.reject(e_1)];\n case 4: return [2];\n }\n });\n });\n };\n Appsignal.prototype.addDecorator = function (decorator) {\n this._hooks.decorators.push(decorator);\n };\n Appsignal.prototype.addOverride = function (override) {\n this._hooks.overrides.push(override);\n };\n Appsignal.prototype.demo = function () {\n var span = this._createSpanFromError(new Error(\"Hello world! This is an error used for demonstration purposes.\"));\n span\n .setAction(\"TestAction\")\n .setParams({\n path: \"/hello\",\n method: \"GET\"\n })\n .setTags({\n demo_sample: \"true\"\n });\n this.send(span);\n };\n Appsignal.prototype.addBreadcrumb = function (breadcrumb) {\n var crumb = __assign(__assign({ timestamp: Math.round(new Date().getTime() / 1000) }, breadcrumb), { metadata: toHashMap(breadcrumb.metadata) });\n if (!crumb.category) {\n console.warn(\"[APPSIGNAL]: Breadcrumb not added. `category` is missing.\");\n return;\n }\n if (!crumb.action) {\n console.warn(\"[APPSIGNAL]: Breadcrumb not added. `action` is missing.\");\n return;\n }\n if (this._breadcrumbs.length === 20) {\n this._breadcrumbs.pop();\n }\n this._breadcrumbs.unshift(crumb);\n };\n Appsignal.prototype._createSpanFromError = function (error) {\n var event = this.createSpan();\n event.setError(error);\n return event;\n };\n return Appsignal;\n}());\nexport default Appsignal;\n//# sourceMappingURL=index.js.map","function pathDecoratorPlugin(options) {\n return function () {\n var decorator = function (span) {\n return span.setTags({ path: window.location.pathname });\n };\n this.addDecorator(decorator);\n };\n}\nexport var plugin = pathDecoratorPlugin;\n//# sourceMappingURL=index.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar DEFAULTS = {\n xhrEnabled: true,\n fetchEnabled: true,\n ignoreUrls: []\n};\nfunction networkBreadcrumbsPlugin(options) {\n var opts = __assign(__assign({}, DEFAULTS), options);\n var xhrEnabled = opts.xhrEnabled, fetchEnabled = opts.fetchEnabled, ignoreUrls = opts.ignoreUrls;\n var isXhrEnabled = xhrEnabled ? \"XMLHttpRequest\" in window : false;\n var isFetchEnabled = fetchEnabled ? \"fetch\" in window : false;\n return function () {\n var appsignal = this;\n var xhrPatch = function () {\n var prevOpen = XMLHttpRequest.prototype.open;\n function open(method, url) {\n var metadata = { method: method, url: url };\n function onXhrLoad() {\n if (!ignoreUrls.some(function (el) { return el.test(url); })) {\n appsignal.addBreadcrumb({\n action: this.status >= 400\n ? \"Request failed with code \".concat(this.status)\n : \"Received a response with code \".concat(this.status),\n category: \"XMLHttpRequest\",\n metadata: metadata\n });\n }\n }\n function onXhrError() {\n if (!ignoreUrls.some(function (el) { return el.test(url); })) {\n appsignal.addBreadcrumb({\n action: \"Request failed\",\n category: \"XMLHttpRequest\",\n metadata: metadata\n });\n }\n }\n this.addEventListener(\"load\", onXhrLoad);\n this.addEventListener(\"error\", onXhrError);\n prevOpen.apply(this, arguments);\n }\n XMLHttpRequest.prototype.open = open;\n };\n var fetchPatch = function () {\n var originalFetch = window.fetch;\n function fetch(input, init) {\n var url = typeof input === \"string\" ? input : input.url;\n var method = (typeof input !== \"string\" && input.method) ||\n (init && init.method) ||\n \"GET\";\n var metadata = {\n method: method,\n url: url\n };\n if (ignoreUrls.some(function (el) { return el.test(url); })) {\n return originalFetch.apply(window, arguments);\n }\n return originalFetch\n .apply(window, arguments)\n .then(function (response) {\n var statusCode = response.status;\n appsignal.addBreadcrumb({\n action: \"Received a response with code \".concat(statusCode),\n category: \"Fetch\",\n metadata: metadata\n });\n return response;\n })\n .catch(function (error) {\n appsignal.addBreadcrumb({\n action: \"Request failed\",\n category: \"Fetch\",\n metadata: metadata\n });\n throw error;\n });\n }\n window.fetch = fetch;\n };\n if (isXhrEnabled)\n xhrPatch();\n if (isFetchEnabled)\n fetchPatch();\n };\n}\nexport var plugin = networkBreadcrumbsPlugin;\n//# sourceMappingURL=index.js.map","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nimport { isError } from \"@appsignal/core\";\nfunction windowEventsPlugin(options) {\n var ctx = window;\n var opts = __assign({ onerror: true, onunhandledrejection: true }, options);\n return function () {\n var self = this;\n var prev = {\n onError: ctx.onerror,\n unhandledRejection: ctx.onunhandledrejection\n };\n function _onErrorHandler(event, source, lineno, colno, error) {\n var span = self.createSpan();\n if (typeof event === \"string\" &&\n lineno === 0 &&\n /Script error\\.?/.test(event)) {\n console.warn(\"[APPSIGNAL]: Cross-domain or eval script error detected, error ignored\");\n }\n else {\n if (error) {\n span.setError(error);\n }\n else {\n span.setError({\n name: \"Error\",\n message: typeof event === \"string\"\n ? event\n : 'An HTML onerror=\"\" handler failed to execute',\n stack: \"at \".concat(source, \":\").concat(lineno).concat(colno ? \":\".concat(colno) : \"\")\n });\n }\n self.send(span);\n }\n if (typeof prev.onError === \"function\") {\n prev.onError.apply(this, arguments);\n }\n }\n function _onUnhandledRejectionHandler(event) {\n var span = self.createSpan();\n var error;\n if (event && event.reason && isError(event.reason)) {\n error = event.reason;\n }\n else {\n error = {\n name: \"UnhandledPromiseRejectionError\",\n message: _reasonFromEvent(event)\n };\n }\n span.setError(error);\n self.send(span);\n if (typeof prev.unhandledRejection === \"function\") {\n prev.unhandledRejection.apply(this, arguments);\n }\n }\n if (opts.onerror) {\n ctx.onerror = _onErrorHandler;\n }\n if (opts.onunhandledrejection) {\n ctx.onunhandledrejection = _onUnhandledRejectionHandler;\n }\n };\n function _reasonFromEvent(event) {\n if (!event || !event.reason) {\n return \"\";\n }\n if (typeof event.reason === \"string\") {\n return event.reason;\n }\n return JSON.stringify(event.reason, circularReplacer());\n }\n function circularReplacer() {\n var seenValue = [];\n var seenKey = [];\n return function (key, value) {\n if (typeof value === \"object\" && value !== null) {\n var i = seenValue.indexOf(value);\n if (i !== -1) {\n return \"[cyclic value: \".concat(seenKey[i] || \"root object\", \"]\");\n }\n else {\n seenValue.push(value);\n seenKey.push(key);\n }\n }\n return value;\n };\n }\n}\nexport var plugin = windowEventsPlugin;\n//# sourceMappingURL=index.js.map","import Appsignal from '@appsignal/javascript';\nimport { plugin as pathDecoratorPlugin } from '@appsignal/plugin-path-decorator';\nimport { plugin as networkBreadcrumbsPlugin } from '@appsignal/plugin-breadcrumbs-network';\nimport { plugin as windowEventPlugin } from '@appsignal/plugin-window-events';\nlet instance = null;\n\nexport default function AppsignalInstance(key) {\n if (!instance && key) {\n instance = new Appsignal({ key });\n instance.use(pathDecoratorPlugin()); // Get the path from the browser\n instance.use(windowEventPlugin({ onunhandledrejection: false })); // Capture all uncaught errors (NOT rejections)\n instance.use(networkBreadcrumbsPlugin({ ignoreUrls: [/\\/mini-profiler-resources*/] })); // Capture XHR as breadcrumbs\n }\n return instance;\n};"],"file":"assets/Appsignal-Z-O49V3Q.js"}