g(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","var camel2hyphen = function (str) {\n return str\n .replace(/[A-Z]/g, function (match) {\n return '-' + match.toLowerCase();\n })\n .toLowerCase();\n};\n\nmodule.exports = camel2hyphen;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nmodule.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nmodule.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nmodule.exports = _classCallCheck, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nmodule.exports = _createClass, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var getPrototypeOf = require(\"./getPrototypeOf.js\");\nvar isNativeReflectConstruct = require(\"./isNativeReflectConstruct.js\");\nvar possibleConstructorReturn = require(\"./possibleConstructorReturn.js\");\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return possibleConstructorReturn(this, result);\n };\n}\nmodule.exports = _createSuper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _extends() {\n module.exports = _extends = Object.assign ? Object.assign.bind() : 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 }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _extends.apply(this, arguments);\n}\nmodule.exports = _extends, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _getPrototypeOf(o);\n}\nmodule.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var setPrototypeOf = require(\"./setPrototypeOf.js\");\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\nmodule.exports = _inherits, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _getRequireWildcardCache(e) {\n if (\"function\" != typeof WeakMap) return null;\n var r = new WeakMap(),\n t = new WeakMap();\n return (_getRequireWildcardCache = function _getRequireWildcardCache(e) {\n return e ? t : r;\n })(e);\n}\nfunction _interopRequireWildcard(e, r) {\n if (!r && e && e.__esModule) return e;\n if (null === e || \"object\" != _typeof(e) && \"function\" != typeof e) return {\n \"default\": e\n };\n var t = _getRequireWildcardCache(r);\n if (t && t.has(e)) return t.get(e);\n var n = {\n __proto__: null\n },\n a = Object.defineProperty && Object.getOwnPropertyDescriptor;\n for (var u in e) if (\"default\" !== u && Object.prototype.hasOwnProperty.call(e, u)) {\n var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;\n i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];\n }\n return n[\"default\"] = e, t && t.set(e, n), n;\n}\nmodule.exports = _interopRequireWildcard, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nmodule.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var defineProperty = require(\"./defineProperty.js\");\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nmodule.exports = _objectSpread2, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nmodule.exports = _objectWithoutProperties, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nmodule.exports = _objectWithoutPropertiesLoose, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar assertThisInitialized = require(\"./assertThisInitialized.js\");\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}\nmodule.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n return _setPrototypeOf(o, p);\n}\nmodule.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableRest = require(\"./nonIterableRest.js\");\nfunction _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}\nmodule.exports = _toArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\nvar iterableToArray = require(\"./iterableToArray.js\");\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nmodule.exports = toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}\nmodule.exports = toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nexport default function _construct(Parent, args, Class) {\n if (isNativeReflectConstruct()) {\n _construct = Reflect.construct.bind();\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n return _construct.apply(null, arguments);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n var F = function F() {};\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return possibleConstructorReturn(this, result);\n };\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : 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 return _extends.apply(this, arguments);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nexport default function _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n };\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t[\"return\"] && (u = t[\"return\"](), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : String(i);\n}","import _typeof from \"./typeof.js\";\nexport default function toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport setPrototypeOf from \"./setPrototypeOf.js\";\nimport isNativeFunction from \"./isNativeFunction.js\";\nimport construct from \"./construct.js\";\nexport default function _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return construct(Class, arguments, getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return setPrototypeOf(Wrapper, Class);\n };\n return _wrapNativeSuper(Class);\n}","export default function _isNativeFunction(fn) {\n try {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n } catch (e) {\n return typeof fn === \"function\";\n }\n}","import superPropBase from \"./superPropBase.js\";\nexport default function _get() {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n _get = Reflect.get.bind();\n } else {\n _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n if (desc.get) {\n return desc.get.call(arguments.length < 3 ? target : receiver);\n }\n return desc.value;\n };\n }\n return _get.apply(this, arguments);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nexport default function _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n return object;\n}","// @ts-nocheck\nimport type { MixpanelIntegrationOptions } from '@highlight-run/client/src/types/client'\nimport type { Integration } from '@highlight-run/client/src/types/types'\n\ninterface Window {\n\tmixpanel?: MixpanelAPI\n}\n\ndeclare var window: Window\n\nexport const setupMixpanelIntegration: Integration = ({\n\tprojectToken,\n}: MixpanelIntegrationOptions) => {\n\tif (window.mixpanel) {\n\t\treturn\n\t}\n\n\t;(function (f, b) {\n\t\tif (!b.__SV) {\n\t\t\tvar i, h\n\t\t\twindow.mixpanel = b\n\t\t\tb._i = []\n\t\t\tb.init = function (e, f, c) {\n\t\t\t\tfunction g(a, d) {\n\t\t\t\t\tvar b = d.split('.')\n\t\t\t\t\t2 == b.length && ((a = a[b[0]]), (d = b[1]))\n\t\t\t\t\ta[d] = function () {\n\t\t\t\t\t\ta.push(\n\t\t\t\t\t\t\t[d].concat(\n\t\t\t\t\t\t\t\tArray.prototype.slice.call(arguments, 0),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvar a = b\n\t\t\t\t'undefined' !== typeof c ? (a = b[c] = []) : (c = 'mixpanel')\n\t\t\t\ta.people = a.people || []\n\t\t\t\ta.toString = function (a) {\n\t\t\t\t\tvar d = 'mixpanel'\n\t\t\t\t\t'mixpanel' !== c && (d += '.' + c)\n\t\t\t\t\ta || (d += ' (stub)')\n\t\t\t\t\treturn d\n\t\t\t\t}\n\t\t\t\ta.people.toString = function () {\n\t\t\t\t\treturn a.toString(1) + '.people (stub)'\n\t\t\t\t}\n\t\t\t\ti =\n\t\t\t\t\t'disable time_event track track_pageview track_links track_forms track_with_groups add_group set_group remove_group register register_once alias unregister identify name_tag set_config reset opt_in_tracking opt_out_tracking has_opted_in_tracking has_opted_out_tracking clear_opt_in_out_tracking start_batch_senders people.set people.set_once people.unset people.increment people.append people.union people.track_charge people.clear_charges people.delete_user people.remove'.split(\n\t\t\t\t\t\t' ',\n\t\t\t\t\t)\n\t\t\t\tfor (h = 0; h < i.length; h++) g(a, i[h])\n\t\t\t\tvar j = 'set set_once union unset remove delete'.split(' ')\n\t\t\t\ta.get_group = function () {\n\t\t\t\t\tfunction b(c) {\n\t\t\t\t\t\td[c] = function () {\n\t\t\t\t\t\t\tcall2_args = arguments\n\t\t\t\t\t\t\tcall2 = [c].concat(\n\t\t\t\t\t\t\t\tArray.prototype.slice.call(call2_args, 0),\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\ta.push([e, call2])\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tfor (\n\t\t\t\t\t\tvar d = {},\n\t\t\t\t\t\t\te = ['get_group'].concat(\n\t\t\t\t\t\t\t\tArray.prototype.slice.call(arguments, 0),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tc = 0;\n\t\t\t\t\t\tc < j.length;\n\t\t\t\t\t\tc++\n\t\t\t\t\t)\n\t\t\t\t\t\tb(j[c])\n\t\t\t\t\treturn d\n\t\t\t\t}\n\t\t\t\tb._i.push([e, f, c])\n\t\t\t}\n\t\t\tb.__SV = 1.2\n\t\t}\n\t})(document, window.mixpanel || [])\n\tconst script = document.createElement('script')\n\tscript.src = MixpanelBundle\n\tdocument.head.appendChild(script)\n\n\tscript.addEventListener('load', () => {\n\t\twindow.mixpanel?.init(projectToken)\n\t})\n}\n\nconst MixpanelBundle = 'https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js'\n\nexport interface MixpanelPeopleAPI {\n\tset: (metadata: { [k: string]: any }) => void\n}\n\nexport interface MixpanelAPI {\n\tinit: (token: string, config?: any, name?: string) => void\n\ttrack: (event_name: string, properties?: any, options?: any) => void\n\tidentify: (unique_id: string) => void\n\tpeople: MixpanelPeopleAPI\n}\n","import { StringifyOptions } from '../listeners/console-listener'\n\nexport function patch(\n\t// tslint:disable-next-line:no-any\n\tsource: { [key: string]: any },\n\tname: string,\n\t// tslint:disable-next-line:no-any\n\treplacement: (...args: any[]) => any,\n): () => void {\n\ttry {\n\t\tif (!(name in source)) {\n\t\t\treturn () => {}\n\t\t}\n\n\t\tconst original = source[name] as () => unknown\n\t\tconst wrapped = replacement(original)\n\n\t\t// Make sure it's a function first, as we need to attach an empty prototype for `defineProperties` to work\n\t\t// otherwise it'll throw \"TypeError: Object.defineProperties called on non-object\"\n\t\t// tslint:disable-next-line:strict-type-predicates\n\t\tif (typeof wrapped === 'function') {\n\t\t\twrapped.prototype = wrapped.prototype || {}\n\t\t\tObject.defineProperties(wrapped, {\n\t\t\t\t__rrweb_original__: {\n\t\t\t\t\tenumerable: false,\n\t\t\t\t\tvalue: original,\n\t\t\t\t},\n\t\t\t})\n\t\t}\n\n\t\tsource[name] = wrapped\n\n\t\treturn () => {\n\t\t\tsource[name] = original\n\t\t}\n\t} catch {\n\t\treturn () => {}\n\t}\n}\n\n/**\n * transfer the node path in Event to string\n * @param node the first node in a node path array\n */\nfunction pathToSelector(node: HTMLElement): string | '' {\n\tif (!node || !node.outerHTML) {\n\t\treturn ''\n\t}\n\n\tlet path = ''\n\twhile (node.parentElement) {\n\t\tlet name = node.localName\n\t\tif (!name) {\n\t\t\tbreak\n\t\t}\n\t\tname = name.toLowerCase()\n\t\tlet parent = node.parentElement\n\n\t\tlet domSiblings = []\n\n\t\tif (parent.children && parent.children.length > 0) {\n\t\t\t// tslint:disable-next-line:prefer-for-of\n\t\t\tfor (let i = 0; i < parent.children.length; i++) {\n\t\t\t\tlet sibling = parent.children[i]\n\t\t\t\tif (sibling.localName && sibling.localName.toLowerCase) {\n\t\t\t\t\tif (sibling.localName.toLowerCase() === name) {\n\t\t\t\t\t\tdomSiblings.push(sibling)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (domSiblings.length > 1) {\n\t\t\tname += ':eq(' + domSiblings.indexOf(node) + ')'\n\t\t}\n\t\tpath = name + (path ? '>' + path : '')\n\t\tnode = parent\n\t}\n\n\treturn path\n}\n\n/**\n * judge is object\n */\nfunction isObject(obj: any): boolean {\n\treturn Object.prototype.toString.call(obj) === '[object Object]'\n}\n\n/**\n * judge the object's depth\n */\nfunction isObjTooDeep(obj: any, limit: number): boolean {\n\tif (limit === 0) {\n\t\treturn true\n\t}\n\n\tconst keys = Object.keys(obj)\n\tfor (const key of keys) {\n\t\tif (isObject(obj[key]) && isObjTooDeep(obj[key], limit - 1)) {\n\t\t\treturn true\n\t\t}\n\t}\n\n\treturn false\n}\n\n/**\n * stringify any js object\n * @param obj the object to stringify\n */\nexport function stringify(\n\tobj: any,\n\tstringifyOptions?: StringifyOptions,\n): string {\n\tconst options: StringifyOptions = {\n\t\tnumOfKeysLimit: 50,\n\t\tdepthOfLimit: 4,\n\t}\n\tObject.assign(options, stringifyOptions)\n\tconst stack: any[] = []\n\tconst keys: any[] = []\n\treturn JSON.stringify(obj, function (key, value) {\n\t\t/**\n\t\t * forked from https://github.com/moll/json-stringify-safe/blob/master/stringify.js\n\t\t * to deCycle the object\n\t\t */\n\t\tif (stack.length > 0) {\n\t\t\tconst thisPos = stack.indexOf(this)\n\t\t\t~thisPos ? stack.splice(thisPos + 1) : stack.push(this)\n\t\t\t~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key)\n\t\t\tif (~stack.indexOf(value)) {\n\t\t\t\tif (stack[0] === value) {\n\t\t\t\t\tvalue = '[Circular ~]'\n\t\t\t\t} else {\n\t\t\t\t\tvalue =\n\t\t\t\t\t\t'[Circular ~.' +\n\t\t\t\t\t\tkeys.slice(0, stack.indexOf(value)).join('.') +\n\t\t\t\t\t\t']'\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tstack.push(value)\n\t\t}\n\t\t/* END of the FORK */\n\n\t\tif (value === null || value === undefined) {\n\t\t\treturn value\n\t\t}\n\t\tif (shouldIgnore(value)) {\n\t\t\treturn toString(value)\n\t\t}\n\t\tif (value instanceof Event) {\n\t\t\tconst eventResult: any = {}\n\t\t\tfor (const eventKey in value) {\n\t\t\t\tconst eventValue = (value as any)[eventKey]\n\t\t\t\tif (Array.isArray(eventValue)) {\n\t\t\t\t\teventResult[eventKey] = pathToSelector(\n\t\t\t\t\t\teventValue.length ? eventValue[0] : null,\n\t\t\t\t\t)\n\t\t\t\t} else {\n\t\t\t\t\teventResult[eventKey] = eventValue\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn eventResult\n\t\t} else if (value instanceof Node) {\n\t\t\tif (value instanceof HTMLElement) {\n\t\t\t\treturn value ? value.outerHTML : ''\n\t\t\t}\n\t\t\treturn value.nodeName\n\t\t} else if (value instanceof Error) {\n\t\t\treturn value.name + ': ' + value.message\n\t\t}\n\t\treturn value\n\t})\n\n\t/**\n\t * whether we should ignore obj's info and call toString() function instead\n\t */\n\tfunction shouldIgnore(_obj: object): boolean {\n\t\t// outof keys limit\n\t\tif (\n\t\t\tisObject(_obj) &&\n\t\t\tObject.keys(_obj).length > options.numOfKeysLimit\n\t\t) {\n\t\t\treturn true\n\t\t}\n\n\t\t// is function\n\t\tif (typeof _obj === 'function') {\n\t\t\treturn true\n\t\t}\n\n\t\t// if a non-user event with only the `isTrusted` key\n\t\t// We ignore this because some frameworks/library can output these non-stop.\n\t\t// There's no value in recording/showing these to the end user so we ignore.\n\t\tif (_obj instanceof Event && _obj.isTrusted === false) {\n\t\t\tconst eventKeys = Object.keys(_obj)\n\n\t\t\treturn eventKeys.length === 1\n\t\t}\n\n\t\t/**\n\t\t * judge object's depth to avoid browser's OOM\n\t\t *\n\t\t * issues: https://github.com/rrweb-io/rrweb/issues/653\n\t\t */\n\t\tif (isObject(_obj) && isObjTooDeep(_obj, options.depthOfLimit)) {\n\t\t\treturn true\n\t\t}\n\n\t\treturn false\n\t}\n\n\t/**\n\t * limit the toString() result according to option\n\t */\n\tfunction toString(_obj: object): string {\n\t\tlet str = _obj.toString()\n\t\tif (\n\t\t\toptions.stringLengthLimit &&\n\t\t\tstr.length > options.stringLengthLimit\n\t\t) {\n\t\t\tstr = `${str.slice(0, options.stringLengthLimit)}...`\n\t\t}\n\t\treturn str\n\t}\n}\n\nfunction supportsWebP(): boolean {\n\tvar elem = document.createElement('canvas')\n\tif (!!(elem.getContext && elem.getContext('2d'))) {\n\t\treturn elem.toDataURL('image/webp').indexOf('data:image/webp') == 0\n\t}\n\treturn false\n}\n\nexport function getDefaultDataURLOptions(): {\n\ttype: string\n\tquality: number\n} {\n\tif (supportsWebP()) {\n\t\treturn {\n\t\t\ttype: 'image/webp',\n\t\t\tquality: 0.9,\n\t\t}\n\t}\n\treturn {\n\t\ttype: 'image/jpeg',\n\t\tquality: 0.6,\n\t}\n}\n","(function(root, factory) {\n 'use strict';\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (typeof define === 'function' && define.amd) {\n define('stackframe', [], factory);\n } else if (typeof exports === 'object') {\n module.exports = factory();\n } else {\n root.StackFrame = factory();\n }\n}(this, function() {\n 'use strict';\n function _isNumber(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n }\n\n function _capitalize(str) {\n return str.charAt(0).toUpperCase() + str.substring(1);\n }\n\n function _getter(p) {\n return function() {\n return this[p];\n };\n }\n\n var booleanProps = ['isConstructor', 'isEval', 'isNative', 'isToplevel'];\n var numericProps = ['columnNumber', 'lineNumber'];\n var stringProps = ['fileName', 'functionName', 'source'];\n var arrayProps = ['args'];\n var objectProps = ['evalOrigin'];\n\n var props = booleanProps.concat(numericProps, stringProps, arrayProps, objectProps);\n\n function StackFrame(obj) {\n if (!obj) return;\n for (var i = 0; i < props.length; i++) {\n if (obj[props[i]] !== undefined) {\n this['set' + _capitalize(props[i])](obj[props[i]]);\n }\n }\n }\n\n StackFrame.prototype = {\n getArgs: function() {\n return this.args;\n },\n setArgs: function(v) {\n if (Object.prototype.toString.call(v) !== '[object Array]') {\n throw new TypeError('Args must be an Array');\n }\n this.args = v;\n },\n\n getEvalOrigin: function() {\n return this.evalOrigin;\n },\n setEvalOrigin: function(v) {\n if (v instanceof StackFrame) {\n this.evalOrigin = v;\n } else if (v instanceof Object) {\n this.evalOrigin = new StackFrame(v);\n } else {\n throw new TypeError('Eval Origin must be an Object or StackFrame');\n }\n },\n\n toString: function() {\n var fileName = this.getFileName() || '';\n var lineNumber = this.getLineNumber() || '';\n var columnNumber = this.getColumnNumber() || '';\n var functionName = this.getFunctionName() || '';\n if (this.getIsEval()) {\n if (fileName) {\n return '[eval] (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n }\n return '[eval]:' + lineNumber + ':' + columnNumber;\n }\n if (functionName) {\n return functionName + ' (' + fileName + ':' + lineNumber + ':' + columnNumber + ')';\n }\n return fileName + ':' + lineNumber + ':' + columnNumber;\n }\n };\n\n StackFrame.fromString = function StackFrame$$fromString(str) {\n var argsStartIndex = str.indexOf('(');\n var argsEndIndex = str.lastIndexOf(')');\n\n var functionName = str.substring(0, argsStartIndex);\n var args = str.substring(argsStartIndex + 1, argsEndIndex).split(',');\n var locationString = str.substring(argsEndIndex + 1);\n\n if (locationString.indexOf('@') === 0) {\n var parts = /@(.+?)(?::(\\d+))?(?::(\\d+))?$/.exec(locationString, '');\n var fileName = parts[1];\n var lineNumber = parts[2];\n var columnNumber = parts[3];\n }\n\n return new StackFrame({\n functionName: functionName,\n args: args || undefined,\n fileName: fileName,\n lineNumber: lineNumber || undefined,\n columnNumber: columnNumber || undefined\n });\n };\n\n for (var i = 0; i < booleanProps.length; i++) {\n StackFrame.prototype['get' + _capitalize(booleanProps[i])] = _getter(booleanProps[i]);\n StackFrame.prototype['set' + _capitalize(booleanProps[i])] = (function(p) {\n return function(v) {\n this[p] = Boolean(v);\n };\n })(booleanProps[i]);\n }\n\n for (var j = 0; j < numericProps.length; j++) {\n StackFrame.prototype['get' + _capitalize(numericProps[j])] = _getter(numericProps[j]);\n StackFrame.prototype['set' + _capitalize(numericProps[j])] = (function(p) {\n return function(v) {\n if (!_isNumber(v)) {\n throw new TypeError(p + ' must be a Number');\n }\n this[p] = Number(v);\n };\n })(numericProps[j]);\n }\n\n for (var k = 0; k < stringProps.length; k++) {\n StackFrame.prototype['get' + _capitalize(stringProps[k])] = _getter(stringProps[k]);\n StackFrame.prototype['set' + _capitalize(stringProps[k])] = (function(p) {\n return function(v) {\n this[p] = String(v);\n };\n })(stringProps[k]);\n }\n\n return StackFrame;\n}));\n","(function(root, factory) {\n 'use strict';\n // Universal Module Definition (UMD) to support AMD, CommonJS/Node.js, Rhino, and browsers.\n\n /* istanbul ignore next */\n if (typeof define === 'function' && define.amd) {\n define('error-stack-parser', ['stackframe'], factory);\n } else if (typeof exports === 'object') {\n module.exports = factory(require('stackframe'));\n } else {\n root.ErrorStackParser = factory(root.StackFrame);\n }\n}(this, function ErrorStackParser(StackFrame) {\n 'use strict';\n\n var FIREFOX_SAFARI_STACK_REGEXP = /(^|@)\\S+:\\d+/;\n var CHROME_IE_STACK_REGEXP = /^\\s*at .*(\\S+:\\d+|\\(native\\))/m;\n var SAFARI_NATIVE_CODE_REGEXP = /^(eval@)?(\\[native code])?$/;\n\n return {\n /**\n * Given an Error object, extract the most information from it.\n *\n * @param {Error} error object\n * @return {Array} of StackFrames\n */\n parse: function ErrorStackParser$$parse(error) {\n if (typeof error.stacktrace !== 'undefined' || typeof error['opera#sourceloc'] !== 'undefined') {\n return this.parseOpera(error);\n } else if (error.stack && error.stack.match(CHROME_IE_STACK_REGEXP)) {\n return this.parseV8OrIE(error);\n } else if (error.stack) {\n return this.parseFFOrSafari(error);\n } else {\n throw new Error('Cannot parse given Error object');\n }\n },\n\n // Separate line and column numbers from a string of the form: (URI:Line:Column)\n extractLocation: function ErrorStackParser$$extractLocation(urlLike) {\n // Fail-fast but return locations like \"(native)\"\n if (urlLike.indexOf(':') === -1) {\n return [urlLike];\n }\n\n var regExp = /(.+?)(?::(\\d+))?(?::(\\d+))?$/;\n var parts = regExp.exec(urlLike.replace(/[()]/g, ''));\n return [parts[1], parts[2] || undefined, parts[3] || undefined];\n },\n\n parseV8OrIE: function ErrorStackParser$$parseV8OrIE(error) {\n var filtered = error.stack.split('\\n').filter(function(line) {\n return !!line.match(CHROME_IE_STACK_REGEXP);\n }, this);\n\n return filtered.map(function(line) {\n if (line.indexOf('(eval ') > -1) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n line = line.replace(/eval code/g, 'eval').replace(/(\\(eval at [^()]*)|(\\),.*$)/g, '');\n }\n var sanitizedLine = line.replace(/^\\s+/, '').replace(/\\(eval code/g, '(');\n\n // capture and preseve the parenthesized location \"(/foo/my bar.js:12:87)\" in\n // case it has spaces in it, as the string is split on \\s+ later on\n var location = sanitizedLine.match(/ (\\((.+):(\\d+):(\\d+)\\)$)/);\n\n // remove the parenthesized location from the line, if it was matched\n sanitizedLine = location ? sanitizedLine.replace(location[0], '') : sanitizedLine;\n\n var tokens = sanitizedLine.split(/\\s+/).slice(1);\n // if a location was matched, pass it to extractLocation() otherwise pop the last token\n var locationParts = this.extractLocation(location ? location[1] : tokens.pop());\n var functionName = tokens.join(' ') || undefined;\n var fileName = ['eval', ''].indexOf(locationParts[0]) > -1 ? undefined : locationParts[0];\n\n return new StackFrame({\n functionName: functionName,\n fileName: fileName,\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n },\n\n parseFFOrSafari: function ErrorStackParser$$parseFFOrSafari(error) {\n var filtered = error.stack.split('\\n').filter(function(line) {\n return !line.match(SAFARI_NATIVE_CODE_REGEXP);\n }, this);\n\n return filtered.map(function(line) {\n // Throw away eval information until we implement stacktrace.js/stackframe#8\n if (line.indexOf(' > eval') > -1) {\n line = line.replace(/ line (\\d+)(?: > eval line \\d+)* > eval:\\d+:\\d+/g, ':$1');\n }\n\n if (line.indexOf('@') === -1 && line.indexOf(':') === -1) {\n // Safari eval frames only have function names and nothing else\n return new StackFrame({\n functionName: line\n });\n } else {\n var functionNameRegex = /((.*\".+\"[^@]*)?[^@]*)(?:@)/;\n var matches = line.match(functionNameRegex);\n var functionName = matches && matches[1] ? matches[1] : undefined;\n var locationParts = this.extractLocation(line.replace(functionNameRegex, ''));\n\n return new StackFrame({\n functionName: functionName,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }\n }, this);\n },\n\n parseOpera: function ErrorStackParser$$parseOpera(e) {\n if (!e.stacktrace || (e.message.indexOf('\\n') > -1 &&\n e.message.split('\\n').length > e.stacktrace.split('\\n').length)) {\n return this.parseOpera9(e);\n } else if (!e.stack) {\n return this.parseOpera10(e);\n } else {\n return this.parseOpera11(e);\n }\n },\n\n parseOpera9: function ErrorStackParser$$parseOpera9(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)/i;\n var lines = e.message.split('\\n');\n var result = [];\n\n for (var i = 2, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(new StackFrame({\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n }));\n }\n }\n\n return result;\n },\n\n parseOpera10: function ErrorStackParser$$parseOpera10(e) {\n var lineRE = /Line (\\d+).*script (?:in )?(\\S+)(?:: In function (\\S+))?$/i;\n var lines = e.stacktrace.split('\\n');\n var result = [];\n\n for (var i = 0, len = lines.length; i < len; i += 2) {\n var match = lineRE.exec(lines[i]);\n if (match) {\n result.push(\n new StackFrame({\n functionName: match[3] || undefined,\n fileName: match[2],\n lineNumber: match[1],\n source: lines[i]\n })\n );\n }\n }\n\n return result;\n },\n\n // Opera 10.65+ Error.stack very similar to FF/Safari\n parseOpera11: function ErrorStackParser$$parseOpera11(error) {\n var filtered = error.stack.split('\\n').filter(function(line) {\n return !!line.match(FIREFOX_SAFARI_STACK_REGEXP) && !line.match(/^Error created at/);\n }, this);\n\n return filtered.map(function(line) {\n var tokens = line.split('@');\n var locationParts = this.extractLocation(tokens.pop());\n var functionCall = (tokens.shift() || '');\n var functionName = functionCall\n .replace(//, '$2')\n .replace(/\\([^)]*\\)/g, '') || undefined;\n var argsRaw;\n if (functionCall.match(/\\(([^)]*)\\)/)) {\n argsRaw = functionCall.replace(/^[^(]+\\(([^)]*)\\)$/, '$1');\n }\n var args = (argsRaw === undefined || argsRaw === '[arguments not available]') ?\n undefined : argsRaw.split(',');\n\n return new StackFrame({\n functionName: functionName,\n args: args,\n fileName: locationParts[0],\n lineNumber: locationParts[1],\n columnNumber: locationParts[2],\n source: line\n });\n }, this);\n }\n };\n}));\n","import { ConsoleMessage } from '../types/shared-types'\nimport { ConsoleMethods } from '../types/client'\nimport { patch, stringify } from '../utils/utils'\nimport ErrorStackParser from 'error-stack-parser'\n\nexport type StringifyOptions = {\n\t// limit of string length\n\tstringLengthLimit?: number\n\t/**\n\t * limit of number of keys in an object\n\t * if an object contains more keys than this limit, we would call its toString function directly\n\t */\n\tnumOfKeysLimit: number\n\t/**\n\t * limit number of depth in an object\n\t * if an object is too deep, toString process may cause browser OOM\n\t */\n\tdepthOfLimit: number\n}\n\nexport type LogRecordOptions = {\n\tlevel: ConsoleMethods[]\n\tstringifyOptions: StringifyOptions\n\t/**\n\t * Set to try to serialize console object arguments into the message body.\n\t */\n\tserializeConsoleAttributes?: boolean\n\tlogger: Logger | 'console'\n}\n\nexport type Logger = {\n\tassert?: typeof console.assert\n\tclear?: typeof console.clear\n\tcount?: typeof console.count\n\tcountReset?: typeof console.countReset\n\tdebug?: typeof console.debug\n\tdir?: typeof console.dir\n\tdirxml?: typeof console.dirxml\n\terror?: typeof console.error\n\tgroup?: typeof console.group\n\tgroupCollapsed?: typeof console.groupCollapsed\n\tgroupEnd?: () => void\n\tinfo?: typeof console.info\n\tlog?: typeof console.log\n\ttable?: typeof console.table\n\ttime?: typeof console.time\n\ttimeEnd?: typeof console.timeEnd\n\ttimeLog?: typeof console.timeLog\n\ttrace?: typeof console.trace\n\twarn?: typeof console.warn\n}\n\nexport function ConsoleListener(\n\tcallback: (c: ConsoleMessage) => void,\n\tlogOptions: LogRecordOptions,\n) {\n\tconst loggerType = logOptions.logger\n\tif (!loggerType) {\n\t\treturn () => {}\n\t}\n\tlet logger: Logger\n\tif (typeof loggerType === 'string') {\n\t\tlogger = window[loggerType]\n\t} else {\n\t\tlogger = loggerType\n\t}\n\tconst cancelHandlers: (() => void)[] = []\n\n\t// add listener to thrown errors\n\tif (logOptions.level.includes('error')) {\n\t\tif (window) {\n\t\t\tconst errorHandler = (event: ErrorEvent) => {\n\t\t\t\tconst { message, error } = event\n\t\t\t\tlet trace: any[] = []\n\t\t\t\tif (error) {\n\t\t\t\t\ttrace = ErrorStackParser.parse(error)\n\t\t\t\t}\n\t\t\t\tconst payload = [\n\t\t\t\t\tstringify(message, logOptions.stringifyOptions),\n\t\t\t\t]\n\t\t\t\tcallback({\n\t\t\t\t\ttype: 'Error',\n\t\t\t\t\ttrace,\n\t\t\t\t\ttime: Date.now(),\n\t\t\t\t\tvalue: payload,\n\t\t\t\t})\n\t\t\t}\n\t\t\twindow.addEventListener('error', errorHandler)\n\t\t\tcancelHandlers.push(() => {\n\t\t\t\tif (window) window.removeEventListener('error', errorHandler)\n\t\t\t})\n\t\t}\n\t}\n\n\tfor (const levelType of logOptions.level) {\n\t\tcancelHandlers.push(replace(logger, levelType))\n\t}\n\treturn () => {\n\t\tcancelHandlers.forEach((h) => h())\n\t}\n\n\t/**\n\t * replace the original console function and record logs\n\t * @param logger the logger object such as Console\n\t * @param level the name of log function to be replaced\n\t */\n\tfunction replace(_logger: Logger, level: ConsoleMethods) {\n\t\tif (!_logger[level]) {\n\t\t\treturn () => {}\n\t\t}\n\t\t// replace the logger.{level}. return a restore function\n\t\treturn patch(_logger, level, (original) => {\n\t\t\treturn (...data: Array) => {\n\t\t\t\t// @ts-expect-error\n\t\t\t\toriginal.apply(this, data)\n\t\t\t\ttry {\n\t\t\t\t\tconst trace = ErrorStackParser.parse(new Error())\n\t\t\t\t\tconst message = logOptions.serializeConsoleAttributes\n\t\t\t\t\t\t? data.map((o) =>\n\t\t\t\t\t\t\t\ttypeof o === 'object'\n\t\t\t\t\t\t\t\t\t? stringify(o, logOptions.stringifyOptions)\n\t\t\t\t\t\t\t\t\t: o,\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: data\n\t\t\t\t\t\t\t\t.filter((o) => typeof o !== 'object')\n\t\t\t\t\t\t\t\t.map((o) => `${o}`)\n\t\t\t\t\tcallback({\n\t\t\t\t\t\ttype: level,\n\t\t\t\t\t\ttrace: trace.slice(1),\n\t\t\t\t\t\tvalue: message,\n\t\t\t\t\t\tattributes: stringify(\n\t\t\t\t\t\t\tdata\n\t\t\t\t\t\t\t\t.filter((d) => typeof d === 'object')\n\t\t\t\t\t\t\t\t.reduce((a, b) => ({ ...a, ...b }), {}),\n\t\t\t\t\t\t\tlogOptions.stringifyOptions,\n\t\t\t\t\t\t),\n\t\t\t\t\t\ttime: Date.now(),\n\t\t\t\t\t})\n\t\t\t\t} catch (error) {\n\t\t\t\t\toriginal('highlight logger error:', error, ...data)\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t}\n}\n","exports = module.exports = stringify\nexports.getSerialize = serializer\n\nfunction stringify(obj, replacer, spaces, cycleReplacer) {\n return JSON.stringify(obj, serializer(replacer, cycleReplacer), spaces)\n}\n\nfunction serializer(replacer, cycleReplacer) {\n var stack = [], keys = []\n\n if (cycleReplacer == null) cycleReplacer = function(key, value) {\n if (stack[0] === value) return \"[Circular ~]\"\n return \"[Circular ~.\" + keys.slice(0, stack.indexOf(value)).join(\".\") + \"]\"\n }\n\n return function(key, value) {\n if (stack.length > 0) {\n var thisPos = stack.indexOf(this)\n ~thisPos ? stack.splice(thisPos + 1) : stack.push(this)\n ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key)\n if (~stack.indexOf(value)) value = cycleReplacer.call(this, key, value)\n }\n else stack.push(value)\n\n return replacer == null ? value : replacer.call(this, key, value)\n }\n}\n","import { ErrorMessage } from '../types/shared-types'\nimport stringify from 'json-stringify-safe'\nimport ErrorStackParser from 'error-stack-parser'\nimport { HighlightOptions } from '../types/types'\nimport { HighlightClassOptions } from '../index'\n\ninterface HighlightPromise extends Promise {\n\tpromiseCreationError: Error\n\tgetStack(): Error | undefined\n}\n\nfunction handleError(\n\tcallback: (e: ErrorMessage) => void,\n\tevent: any,\n\tsource: string | undefined,\n\terror?: Error,\n) {\n\tlet res: ErrorStackParser.StackFrame[] = []\n\ttry {\n\t\tres = ErrorStackParser.parse(error ?? event)\n\t} catch (e) {\n\t\tres = ErrorStackParser.parse(new Error())\n\t}\n\tlet payload: Object = {}\n\tif (event instanceof Error) {\n\t\tevent = event.message\n\t\tif (event.cause) {\n\t\t\tpayload = { 'exception.cause': event.cause }\n\t\t}\n\t}\n\tconst framesToUse = removeHighlightFrameIfExists(res)\n\tcallback({\n\t\tevent: stringify(event),\n\t\ttype: 'window.onerror',\n\t\turl: window.location.href,\n\t\tsource: source ?? '',\n\t\tlineNumber: framesToUse[0]?.lineNumber ? framesToUse[0]?.lineNumber : 0,\n\t\tcolumnNumber: framesToUse[0]?.columnNumber\n\t\t\t? framesToUse[0]?.columnNumber\n\t\t\t: 0,\n\t\tstackTrace: framesToUse,\n\t\ttimestamp: new Date().toISOString(),\n\t\tpayload: payload ? stringify(payload) : undefined,\n\t})\n}\n\nexport const ErrorListener = (\n\tcallback: (e: ErrorMessage) => void,\n\t{ enablePromisePatch }: { enablePromisePatch: boolean },\n) => {\n\tif (typeof window === 'undefined') return () => {}\n\n\tconst initialOnError = (window.onerror = (\n\t\tevent: any,\n\t\tsource: string | undefined,\n\t\tlineno: number | undefined,\n\t\tcolno: number | undefined,\n\t\terror: Error | undefined,\n\t): void => {\n\t\thandleError(callback, event, source, error)\n\t})\n\n\tconst initialOnUnhandledRejection = (window.onunhandledrejection = (\n\t\tevent: PromiseRejectionEvent,\n\t) => {\n\t\tif (event.reason) {\n\t\t\tconst hPromise = event.promise as HighlightPromise\n\t\t\tif (hPromise.getStack) {\n\t\t\t\thandleError(\n\t\t\t\t\tcallback,\n\t\t\t\t\tevent.reason,\n\t\t\t\t\tevent.type,\n\t\t\t\t\thPromise.getStack(),\n\t\t\t\t)\n\t\t\t} else {\n\t\t\t\thandleError(callback, event.reason, event.type)\n\t\t\t}\n\t\t}\n\t})\n\n\tconst initialPromise = window.Promise\n\tconst highlightPromise = class Promise extends initialPromise {\n\t\tprivate readonly promiseCreationError: Error\n\n\t\tconstructor(\n\t\t\texecutor: (\n\t\t\t\tresolve: (value: T | PromiseLike) => void,\n\t\t\t\treject: (reason?: Error) => void,\n\t\t\t) => void,\n\t\t) {\n\t\t\tsuper(executor)\n\t\t\tthis.promiseCreationError = new Error()\n\t\t}\n\n\t\tgetStack() {\n\t\t\treturn this.promiseCreationError\n\t\t}\n\n\t\tstatic shouldPatch() {\n\t\t\t// @ts-ignore\n\t\t\tconst zoneUndefined = typeof window.Zone === 'undefined'\n\t\t\treturn enablePromisePatch && zoneUndefined\n\t\t}\n\t}\n\tif (highlightPromise.shouldPatch()) {\n\t\twindow.Promise = highlightPromise\n\t}\n\treturn () => {\n\t\twindow.Promise = initialPromise\n\t\twindow.onunhandledrejection = initialOnUnhandledRejection\n\t\twindow.onerror = initialOnError\n\t}\n}\n\nconst removeHighlightFrameIfExists = (\n\tframes: ErrorStackParser.StackFrame[],\n): ErrorStackParser.StackFrame[] => {\n\tif (frames.length === 0) {\n\t\treturn frames\n\t}\n\n\tconst firstFrame = frames[0]\n\tif (\n\t\tfirstFrame.fileName?.includes('highlight.run') ||\n\t\tfirstFrame.fileName?.includes('highlight.io') ||\n\t\tfirstFrame.functionName === 'new highlightPromise'\n\t) {\n\t\treturn frames.slice(1)\n\t}\n\treturn frames\n}\n","// @ts-nocheck\nimport type { AmplitudeIntegrationOptions } from '@highlight-run/client/src/types/client'\nimport type { Integration } from '@highlight-run/client/src/types/types'\n\ninterface Window {\n\tamplitude?: AmplitudeAPI\n}\n\ndeclare var window: Window\n\nexport const setupAmplitudeIntegration: Integration = ({\n\tapiKey,\n}: AmplitudeIntegrationOptions) => {\n\t;(function (e, t) {\n\t\tvar n = e.amplitude || { _q: [], _iq: {} }\n\t\tvar r = t.createElement('script')\n\t\tr.type = 'text/javascript'\n\t\tr.integrity =\n\t\t\t'sha384-+EO59vL/X7v6VE2s6/F4HxfHlK0nDUVWKVg8K9oUlvffAeeaShVBmbORTC2D3UF+'\n\t\tr.crossOrigin = 'anonymous'\n\t\tr.async = true\n\t\tr.src = 'https://cdn.amplitude.com/libs/amplitude-8.17.0-min.gz.js'\n\t\tr.onload = function () {\n\t\t\tif (!e.amplitude.runQueuedFunctions) {\n\t\t\t\tconsole.log('[Amplitude] Error: could not load SDK')\n\t\t\t}\n\t\t\tamplitude.getInstance().init(apiKey)\n\t\t}\n\t\tvar i = t.getElementsByTagName('script')[0]\n\t\ti.parentNode.insertBefore(r, i)\n\t\tfunction s(e, t) {\n\t\t\te.prototype[t] = function () {\n\t\t\t\tthis._q.push(\n\t\t\t\t\t[t].concat(Array.prototype.slice.call(arguments, 0)),\n\t\t\t\t)\n\t\t\t\treturn this\n\t\t\t}\n\t\t}\n\t\tvar o = function () {\n\t\t\tthis._q = []\n\t\t\treturn this\n\t\t}\n\t\tvar a = [\n\t\t\t'add',\n\t\t\t'append',\n\t\t\t'clearAll',\n\t\t\t'prepend',\n\t\t\t'set',\n\t\t\t'setOnce',\n\t\t\t'unset',\n\t\t\t'preInsert',\n\t\t\t'postInsert',\n\t\t\t'remove',\n\t\t]\n\t\tfor (var c = 0; c < a.length; c++) {\n\t\t\ts(o, a[c])\n\t\t}\n\t\tn.Identify = o\n\t\tvar u = function () {\n\t\t\tthis._q = []\n\t\t\treturn this\n\t\t}\n\t\tvar l = [\n\t\t\t'setProductId',\n\t\t\t'setQuantity',\n\t\t\t'setPrice',\n\t\t\t'setRevenueType',\n\t\t\t'setEventProperties',\n\t\t]\n\t\tfor (var p = 0; p < l.length; p++) {\n\t\t\ts(u, l[p])\n\t\t}\n\t\tn.Revenue = u\n\t\tvar d = [\n\t\t\t'init',\n\t\t\t'logEvent',\n\t\t\t'logRevenue',\n\t\t\t'setUserId',\n\t\t\t'setUserProperties',\n\t\t\t'setOptOut',\n\t\t\t'setVersionName',\n\t\t\t'setDomain',\n\t\t\t'setDeviceId',\n\t\t\t'enableTracking',\n\t\t\t'setGlobalUserProperties',\n\t\t\t'identify',\n\t\t\t'clearUserProperties',\n\t\t\t'setGroup',\n\t\t\t'logRevenueV2',\n\t\t\t'regenerateDeviceId',\n\t\t\t'groupIdentify',\n\t\t\t'onInit',\n\t\t\t'logEventWithTimestamp',\n\t\t\t'logEventWithGroups',\n\t\t\t'setSessionId',\n\t\t\t'resetSessionId',\n\t\t]\n\t\tfunction v(e) {\n\t\t\tfunction t(t) {\n\t\t\t\te[t] = function () {\n\t\t\t\t\te._q.push(\n\t\t\t\t\t\t[t].concat(Array.prototype.slice.call(arguments, 0)),\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (var n = 0; n < d.length; n++) {\n\t\t\t\tt(d[n])\n\t\t\t}\n\t\t}\n\t\tv(n)\n\t\tn.getInstance = function (e) {\n\t\t\te = (!e || e.length === 0 ? '$default_instance' : e).toLowerCase()\n\t\t\tif (!Object.prototype.hasOwnProperty.call(n._iq, e)) {\n\t\t\t\tn._iq[e] = { _q: [] }\n\t\t\t\tv(n._iq[e])\n\t\t\t}\n\t\t\treturn n._iq[e]\n\t\t}\n\t\te.amplitude = n\n\t})(window, document)\n}\n\nexport interface AmplitudeAPI {\n\tinit: (token: string) => void\n\ttrack: (event_name: string, properties?: any, options?: any) => void\n\tidentify: (unique_id: string) => void\n\tIdentify: any\n\tgetInstance: () => any\n}\n","import { RequestResponsePair } from '../listeners/network-listener/utils/models'\n\nexport const ALL_CONSOLE_METHODS = [\n\t'assert',\n\t'count',\n\t'countReset',\n\t'debug',\n\t'dir',\n\t'dirxml',\n\t'error',\n\t'group',\n\t'groupCollapsed',\n\t'groupEnd',\n\t'info',\n\t'log',\n\t'table',\n\t'time',\n\t'timeEnd',\n\t'timeLog',\n\t'trace',\n\t'warn',\n] as const\ntype ConsoleMethodsTuple = typeof ALL_CONSOLE_METHODS\nexport declare type ConsoleMethods = ConsoleMethodsTuple[number]\n\nexport declare type DebugOptions = {\n\tclientInteractions?: boolean\n\tdomRecording?: boolean\n}\n\nexport declare type NetworkRecordingOptions = {\n\t/**\n\t * Enables recording of network requests.\n\t * The data includes the URLs, the size of the request, and how long the request took.\n\t * @default true\n\t */\n\tenabled?: boolean\n\t/**\n\t * This enables recording XMLHttpRequest and Fetch headers and bodies.\n\t * @default false\n\t */\n\trecordHeadersAndBody?: boolean\n\t/**\n\t * This disables recording WebSocket events.\n\t * WebSocket events are recorded by default if recordHeadersAndBody is set.\n\t * @default false\n\t */\n\tdisableWebSocketEventRecordings?: boolean\n\t/**\n\t * Request and response headers where the value is not recorded.\n\t * The header value is replaced with '[REDACTED]'.\n\t * These headers are case-insensitive.\n\t * `recordHeadersAndBody` needs to be enabled.\n\t * This option will be ignored if `headerKeysToRecord` is set.\n\t * @example\n\t * networkHeadersToRedact: ['Secret-Header', 'Plain-Text-Password']\n\t */\n\tnetworkHeadersToRedact?: string[]\n\t/**\n\t * Specifies the keys for request/response JSON body that should not be recorded.\n\t * The body value is replaced with '[REDACTED]'.\n\t * These keys are case-insensitive.\n\t * `enabled` and `recordHeadersAndBody` need to be `true`. Otherwise this option will be ignored.\n\t * @example bodyKeysToRedact: ['secret-token', 'plain-text-password']\n\t * // Only `body.id` and `body.pageNumber` will be recorded.\n\t * body = {\n\t * 'id': '123',\n\t * 'pageNumber': '1',\n\t * 'secret-token': 'super-sensitive-value',\n\t * 'plain-text-password': 'password123',\n\t * }\n\t */\n\tnetworkBodyKeysToRedact?: string[]\n\t/**\n\t * URLs to not record headers and bodies for.\n\t * To disable recording headers and bodies for all URLs, set `recordHeadersAndBody` to `false`.\n\t * @default ['https://www.googleapis.com/identitytoolkit', 'https://securetoken.googleapis.com']\n\t */\n\turlBlocklist?: string[]\n\t/**\n\t * Specifies the keys for request/response headers to record.\n\t * This option will override `networkHeadersToRedact` if specified.\n\t * `enabled` and `recordHeadersAndBody` need to be `true`. Otherwise this option will be ignored.\n\t * @example headerKeysToRecord: ['id', 'pageNumber']\n\t * // Only `headers.id` and `headers.pageNumber` will be recorded.\n\t * headers = {\n\t * 'id': '123',\n\t * 'pageNumber': '1',\n\t * 'secret-token': 'super-sensitive-value',\n\t * 'plain-text-password': 'password123',\n\t * }\n\t */\n\theaderKeysToRecord?: string[]\n\t/**\n\t * Specifies the keys for request/response JSON body to record.\n\t * This option will override `networkBodyKeysToRedact` if specified.\n\t * `enabled` and `recordHeadersAndBody` need to be `true`. Otherwise this option will be ignored.\n\t * @example bodyKeysToRecord: ['id', 'pageNumber']\n\t * // Only `body.id` and `body.pageNumber` will be recorded.\n\t * body = {\n\t * 'id': '123',\n\t * 'pageNumber': '1',\n\t * 'secret-token': 'super-sensitive-value',\n\t * 'plain-text-password': 'password123',\n\t * }\n\t */\n\tbodyKeysToRecord?: string[]\n\t/**\n\t * Record frontend network request metrics that are sent to\n\t * the following list of domains. A domain substring match is used to\n\t * determine if a network request matches one of the following values.\n\t * @example destinationDomains: ['backend.example.com']\n\t * // if your frontend makes requests to `backend.example.com` that you would like to record\n\t */\n\tdestinationDomains?: string[]\n\t/**\n\t * Function to edit/remove data in request/response pairs or ignore the pair entirely.\n\t * @example\n\t * ```\n\t * requestResponseSanitizer: pair => {\n\t * if (pair.request.url.toLowerCase().indexOf('ignore') !== -1) {\n\t * // ignore the entire request/response pair (no network logs)\n\t * return null\n\t * }\n\t *\n\t * if (pair.response.body.indexOf('secret') !== -1) {\n\t * // remove the body in the response\n\t * \t\t\t\tdelete pair.response.body;\n\t * }\n\t *\n\t * return pair\n\t * }\n\t * ```\n\t *\n\t */\n\trequestResponseSanitizer?: (\n\t\tpair: RequestResponsePair,\n\t) => RequestResponsePair | null\n}\n\nexport declare type IntegrationOptions = {\n\tamplitude?: AmplitudeIntegrationOptions\n\tintercom?: IntercomIntegrationOptions\n\tmixpanel?: MixpanelIntegrationOptions\n}\n\nexport declare type SessionShortcutOptions = false | string\n\ntype DefaultIntegrationOptions = {\n\tdisabled?: boolean\n}\n\nexport declare interface MixpanelIntegrationOptions\n\textends DefaultIntegrationOptions {\n\tprojectToken?: string\n}\n\nexport declare interface AmplitudeIntegrationOptions\n\textends DefaultIntegrationOptions {\n\tapiKey?: string\n}\n\nexport declare interface IntercomIntegrationOptions\n\textends DefaultIntegrationOptions {}\n\nexport enum MetricName {\n\tDeviceMemory = 'DeviceMemory',\n\tViewportHeight = 'ViewportHeight',\n\tViewportWidth = 'ViewportWidth',\n\tScreenHeight = 'ScreenHeight',\n\tScreenWidth = 'ScreenWidth',\n\tViewportArea = 'ViewportArea',\n}\nexport enum MetricCategory {\n\tDevice = 'Device',\n\tWebVital = 'WebVital',\n\tPerformance = 'Performance',\n\tFrontend = 'Frontend',\n\tBackend = 'Backend',\n}\n","export const ERRORS_TO_IGNORE = [\n\t'[\"\\\\\"Script error.\\\\\"\"]' /** This is an error that happens from a script that is on a different origin than the origin that Highlight is running on. See: https://sentry.io/answers/script-error/*/,\n\t'\"Script error.\"' /** This is an error that happens from a script that is on a different origin than the origin that Highlight is running on. See: https://sentry.io/answers/script-error/*/,\n\t'[\"\\\\\"Load failed.\\\\\"\"]',\n\t'\"Load failed.\"',\n\t'[\"\\\\\"Network request failed.\\\\\"\"]',\n\t'\"Network request failed.\"',\n\t'[\"\\\\\"Document is not focused.\\\\\"\"]',\n\t'\"Document is not focused.\"',\n\t'[\"\\\\\"Failed to fetch\\\\\"\"]',\n\t'\"Failed to fetch\"',\n\t'[{\"isTrusted\":true}]' /** Cross-origin errors: https://stackoverflow.com/questions/44815172/log-shows-error-object-istrustedtrue-instead-of-actual-error-data */,\n\t'{\"isTrusted\":true}' /** Cross-origin errors: https://stackoverflow.com/questions/44815172/log-shows-error-object-istrustedtrue-instead-of-actual-error-data */,\n\t'[\"{}\"]',\n\t'\"{}\"',\n\t'[\"\"]',\n\t'\"\"',\n\t'[\"\\\\\"\\\\\"\"]',\n\t'\"\"',\n]\n\nexport const ERROR_PATTERNS_TO_IGNORE = [\n\t'websocket error',\n\t'\\\\\"ResizeObserver loop',\n]\n","export enum SESSION_STORAGE_KEYS {\n\tSEGMENT_LAST_SENT_HASH_KEY = 'HIGHLIGHT_SEGMENT_LAST_SENT_HASH_KEY',\n\tSESSION_ID = 'sessionID',\n\tSESSION_DATA = 'sessionData',\n\tUSER_IDENTIFIER = 'highlightIdentifier',\n\tUSER_OBJECT = 'highlightUserObject',\n}\n","import { Request, Response, Headers } from './models'\n\nexport const sanitizeResource = (\n\tresource: T,\n\theadersToRedact: string[],\n\theadersToRecord?: string[],\n): T => {\n\tconst newHeaders = sanitizeHeaders(\n\t\theadersToRedact,\n\t\tresource.headers,\n\t\theadersToRecord,\n\t)\n\n\treturn {\n\t\t...resource,\n\t\theaders: newHeaders,\n\t}\n}\n\nexport const sanitizeHeaders = (\n\theadersToRedact: string[],\n\theaders?: Headers,\n\theadersToRecord?: string[],\n) => {\n\tconst newHeaders = { ...headers }\n\n\t// `headersToRecord` overrides `headersToRedact`.\n\tif (headersToRecord) {\n\t\tObject.keys(newHeaders)?.forEach((header: string) => {\n\t\t\t// Only keep the keys that are specified in `headersToRecord`.\n\t\t\tif (![...headersToRecord].includes(header?.toLowerCase())) {\n\t\t\t\tnewHeaders[header] = '[REDACTED]'\n\t\t\t}\n\t\t})\n\n\t\treturn newHeaders\n\t}\n\n\tObject.keys(newHeaders)?.forEach((header: string) => {\n\t\t// Redact all the keys in `headersToRedact`.\n\t\tif (\n\t\t\t[...SENSITIVE_HEADERS, ...headersToRedact].includes(\n\t\t\t\theader?.toLowerCase(),\n\t\t\t)\n\t\t) {\n\t\t\tnewHeaders[header] = '[REDACTED]'\n\t\t}\n\t})\n\n\treturn newHeaders\n}\n\n/** These are known headers that are secrets. */\nconst SENSITIVE_HEADERS = [\n\t'authorization',\n\t'cookie',\n\t'proxy-authorization',\n\t'token',\n]\n\n/** Known URLs that contains secrets. */\nexport const DEFAULT_URL_BLOCKLIST = [\n\t'https://www.googleapis.com/identitytoolkit',\n\t'https://securetoken.googleapis.com',\n]\n","/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n","/**\n * The amount of time to wait until sending the first payload.\n */\nexport const FIRST_SEND_FREQUENCY = 1000\n/**\n * The amount of time between sending the client-side payload to Highlight backend client.\n * In milliseconds.\n */\nexport const SEND_FREQUENCY = 1000 * 2\n\n/**\n * Maximum length of a session\n */\nexport const MAX_SESSION_LENGTH = 4 * 60 * 60 * 1000\n\n/**\n * The amount of time allowed after the last push before creating a new session.\n * In milliseconds.\n */\nexport const SESSION_PUSH_THRESHOLD = 15 * 60 * 1000\n\n/*\n * Don't take another full snapshot unless it's been at least\n * 4 minutes AND the cumulative payload size since the last\n * snapshot is > 10MB.\n */\nexport const SNAPSHOT_SETTINGS = {\n\tnormal: {\n\t\tbytes: 10e6,\n\t\ttime: 4 * 60 * 1000,\n\t},\n\tcanvas: {\n\t\tbytes: 16e6,\n\t\ttime: 5000,\n\t},\n} as const\n\n// Debounce duplicate visibility events\nexport const VISIBILITY_DEBOUNCE_MS = 100\n\n// Max allowed time to upload to public graph before triggering recording kill switch\nexport const UPLOAD_TIMEOUT = 1000 * 15\n\nexport const HIGHLIGHT_URL = 'app.highlight.io'\n","import Cookies from 'js-cookie'\nimport { SESSION_PUSH_THRESHOLD } from '../constants/sessions'\n\ntype Mode = 'localStorage' | 'sessionStorage'\n\nlet mode: Mode = 'localStorage'\nlet cookieWriteEnabled: boolean = true\n\nclass Storage {\n\tprivate storage: { [key: string]: string } = {}\n\tpublic getItem(key: string) {\n\t\treturn this.storage[key] ?? ''\n\t}\n\tpublic setItem(key: string, value: string) {\n\t\tthis.storage[key] = value\n\t}\n\tpublic removeItem(key: string) {\n\t\tdelete this.storage[key]\n\t}\n}\n\nexport class CookieStorage {\n\tpublic getItem(key: string) {\n\t\treturn Cookies.get(key) ?? ''\n\t}\n\n\tpublic setItem(key: string, value: string) {\n\t\tif (!cookieWriteEnabled) {\n\t\t\treturn\n\t\t}\n\t\tconst expires = new Date()\n\t\texpires.setTime(expires.getTime() + SESSION_PUSH_THRESHOLD)\n\t\tCookies.set(key, value, { expires })\n\t}\n\n\tpublic removeItem(key: string) {\n\t\tif (!cookieWriteEnabled) {\n\t\t\treturn\n\t\t}\n\t\tCookies.remove(key)\n\t}\n}\n\nlet globalStorage = new Storage()\nexport const cookieStorage = new CookieStorage()\n\nconst getPersistentStorage = () => {\n\ttry {\n\t\tswitch (mode) {\n\t\t\tcase 'localStorage':\n\t\t\t\treturn window.localStorage\n\t\t\tcase 'sessionStorage':\n\t\t\t\treturn window.sessionStorage\n\t\t}\n\t} catch (e) {\n\t\treturn globalStorage\n\t}\n}\n\nexport const setStorageMode = (m: Mode) => {\n\tmode = m\n}\n\nexport const setCookieWriteEnabled = (enabled: boolean) => {\n\tcookieWriteEnabled = enabled\n}\n\nexport const getItem = (key: string) => {\n\treturn getPersistentStorage().getItem(key)\n}\n\nexport const setItem = (key: string, value: string) => {\n\tcookieStorage.setItem(key, value)\n\treturn getPersistentStorage().setItem(key, value)\n}\n\nexport const removeItem = (key: string) => {\n\tcookieStorage.removeItem(key)\n\treturn getPersistentStorage().removeItem(key)\n}\n\nexport const monkeyPatchLocalStorage = (\n\tonSetItemHandler: ({\n\t\tkeyName,\n\t\tkeyValue,\n\t}: {\n\t\tkeyName: string\n\t\tkeyValue: string\n\t}) => void,\n) => {\n\tif (mode === 'sessionStorage') {\n\t\tconsole.warn(\n\t\t\t`highlight.io cannot use local storage; segment integration will not work`,\n\t\t)\n\t\treturn\n\t}\n\n\tconst originalSetItem = window.localStorage.setItem\n\twindow.localStorage.setItem = function () {\n\t\tconst [keyName, keyValue] = arguments as unknown as [\n\t\t\tkey: string,\n\t\t\tvalue: string,\n\t\t]\n\t\tonSetItemHandler({ keyName, keyValue })\n\t\toriginalSetItem.apply(this, [keyName, keyValue])\n\t}\n}\n","import { SESSION_STORAGE_KEYS } from './sessionStorageKeys'\nimport { cookieStorage, getItem, removeItem, setItem } from '../storage'\nimport { SESSION_PUSH_THRESHOLD } from '../../constants/sessions'\n\nexport type SessionData = {\n\tsessionSecureID: string\n\tprojectID: number\n\tpayloadID: number\n\tsessionStartTime?: number\n\tlastPushTime?: number\n\tuserIdentifier?: string\n\tuserObject?: Object\n}\n\nconst getSessionDataKey = (sessionID: string): string => {\n\treturn `${SESSION_STORAGE_KEYS.SESSION_DATA}_${sessionID}`\n}\n\nlet sessionSecureID: string = ''\n\nexport const getSessionSecureID = (props?: { local?: true }): string => {\n\tif (props?.local) {\n\t\treturn sessionSecureID\n\t}\n\treturn getItem(SESSION_STORAGE_KEYS.SESSION_ID) ?? ''\n}\n\nexport const setSessionSecureID = (secureID: string) => {\n\tsessionSecureID = secureID\n\tsetItem(SESSION_STORAGE_KEYS.SESSION_ID, sessionSecureID)\n}\n\nconst getSessionData = (sessionID: string): SessionData | undefined => {\n\tconst key = getSessionDataKey(sessionID)\n\tlet storedSessionData = JSON.parse(getItem(key) || '{}')\n\treturn storedSessionData as SessionData\n}\n\nexport const getPreviousSessionData = (\n\tsessionID?: string,\n): SessionData | undefined => {\n\tif (!sessionID) {\n\t\tsessionID = getSessionSecureID()\n\t}\n\tlet storedSessionData = getSessionData(sessionID)\n\tif (\n\t\tstoredSessionData &&\n\t\tstoredSessionData.lastPushTime &&\n\t\tDate.now() - storedSessionData.lastPushTime < SESSION_PUSH_THRESHOLD\n\t) {\n\t\treturn storedSessionData as SessionData\n\t} else {\n\t\tremoveItem(getSessionDataKey(sessionID))\n\t}\n}\n\nexport const setSessionData = function (sessionData?: SessionData) {\n\tif (!sessionData?.sessionSecureID) return\n\tconst secureID = sessionData.sessionSecureID!\n\tsetItem(getSessionDataKey(secureID), JSON.stringify(sessionData))\n}\n\nexport const loadCookieSessionData = function () {\n\tconst sessionSecureID = cookieStorage.getItem(\n\t\tSESSION_STORAGE_KEYS.SESSION_ID,\n\t)\n\tsetSessionSecureID(sessionSecureID)\n\tconst sessionDataKey = getSessionDataKey(sessionSecureID)\n\tconst sessionDataStr = cookieStorage.getItem(sessionDataKey)\n\ttry {\n\t\tsetSessionData(JSON.parse(sessionDataStr) as SessionData)\n\t} catch (e) {}\n}\n","/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n// Updates to this file should also be replicated to @opentelemetry/core too.\n/**\n * - globalThis (New standard)\n * - self (Will return the current window instance for supported browsers)\n * - window (fallback for older browser implementations)\n * - global (NodeJS implementation)\n * -