rollbar 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/rollbar.cjs +260 -3
  2. package/dist/rollbar.js +88 -2
  3. package/dist/rollbar.js.map +1 -1
  4. package/dist/rollbar.min.cjs +1 -1
  5. package/dist/rollbar.min.js +1 -1
  6. package/dist/rollbar.min.js.map +1 -1
  7. package/dist/rollbar.named-amd.js +88 -2
  8. package/dist/rollbar.named-amd.js.map +1 -1
  9. package/dist/rollbar.named-amd.min.js +1 -1
  10. package/dist/rollbar.named-amd.min.js.map +1 -1
  11. package/dist/rollbar.noconflict.umd.js +88 -2
  12. package/dist/rollbar.noconflict.umd.js.map +1 -1
  13. package/dist/rollbar.noconflict.umd.min.js +1 -1
  14. package/dist/rollbar.noconflict.umd.min.js.map +1 -1
  15. package/dist/rollbar.replay.js +88 -2
  16. package/dist/rollbar.replay.js.map +1 -1
  17. package/dist/rollbar.replay.min.js +1 -1
  18. package/dist/rollbar.replay.min.js.map +1 -1
  19. package/dist/rollbar.replay.noconflict.umd.js +88 -2
  20. package/dist/rollbar.replay.noconflict.umd.js.map +1 -1
  21. package/dist/rollbar.replay.noconflict.umd.min.js +1 -1
  22. package/dist/rollbar.replay.noconflict.umd.min.js.map +1 -1
  23. package/dist/rollbar.replay.umd.js +88 -2
  24. package/dist/rollbar.replay.umd.js.map +1 -1
  25. package/dist/rollbar.replay.umd.min.js +1 -1
  26. package/dist/rollbar.replay.umd.min.js.map +1 -1
  27. package/dist/rollbar.snippet.js +1 -1
  28. package/dist/rollbar.umd.js +88 -2
  29. package/dist/rollbar.umd.js.map +1 -1
  30. package/dist/rollbar.umd.min.js +1 -1
  31. package/dist/rollbar.umd.min.js.map +1 -1
  32. package/index.d.ts +15 -0
  33. package/package.json +2 -1
  34. package/src/browser/telemetry.js +25 -0
  35. package/src/defaults.js +1 -1
  36. package/src/rollbar.js +3 -1
  37. package/src/server/middleware/rollbarExpressMiddleware.js +63 -0
  38. package/src/server/rollbar.js +13 -0
  39. package/src/server/telemetry.js +120 -1
  40. package/src/utility.js +70 -0
@@ -1 +1 @@
1
- !function(){"use strict";var r=function(){},n={debug:0,info:1,warn:2,error:3,disable:4},o={error:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("error",o)},warn:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("warn",o)},info:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("info",o)},debug:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("debug",o)},log:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("info",o)},init:function(o){var e=o.logLevel;r=function(r,o){n[r]<n[e]||(o.unshift("Rollbar:"),console[r].apply(console,o))}}},e=o;function t(r,n){return null!=r&&(Object.hasOwn?Object.hasOwn(r,n):Object.prototype.hasOwnProperty.call(r,n))}function a(r,n){(null==n||n>r.length)&&(n=r.length);for(var o=0,e=Array(n);o<n;o++)e[o]=r[o];return e}function l(r,n){this.impl=r(n,this),this.options=n,function(r){var n,o=function(r){return function(){var n=Array.prototype.slice.call(arguments,0);if(this.impl[r])return this.impl[r].apply(this.impl,n)}},e=function(r,n){var o="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!o){if(Array.isArray(r)||(o=function(r,n){if(r){if("string"==typeof r)return a(r,n);var o={}.toString.call(r).slice(8,-1);return"Object"===o&&r.constructor&&(o=r.constructor.name),"Map"===o||"Set"===o?Array.from(r):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?a(r,n):void 0}}(r))||n&&r&&"number"==typeof r.length){o&&(r=o);var e=0,t=function(){};return{s:t,n:function(){return e>=r.length?{done:!0}:{done:!1,value:r[e++]}},e:function(r){throw r},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,i=!0,c=!1;return{s:function(){o=o.call(r)},n:function(){var r=o.next();return i=r.done,r},e:function(r){c=!0,l=r},f:function(){try{i||null==o.return||o.return()}finally{if(c)throw l}}}}("log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,_createItem,wrap,loadFull,shimId,captureEvent,captureDomContentLoaded,captureLoad".split(","));try{for(e.s();!(n=e.n()).done;){var t=n.value;r[t]=o(t)}}catch(r){e.e(r)}finally{e.f()}}(l.prototype)}l.prototype._swapAndProcessMessages=function(r,n){var o,e,t;for(this.impl=r(this.options);o=n.shift();)e=o.method,t=o.args,this[e]&&"function"==typeof this[e]&&("captureDomContentLoaded"===e||"captureLoad"===e?this[e].apply(this,[t[0],o.ts]):this[e].apply(this,t));return this};var i=l;function c(r,n,o){if(t(n,"addEventListener")){for(var e=n.addEventListener;e._rollbarOldAdd&&e.belongsToShim;)e=e._rollbarOldAdd;var a=function(n,o,t){e.call(this,n,r.wrap(o),t)};a._rollbarOldAdd=e,a.belongsToShim=o,n.addEventListener=a;for(var l=n.removeEventListener;l._rollbarOldRemove&&l.belongsToShim;)l=l._rollbarOldRemove;var i=function(r,n,o){l.call(this,r,n&&n._rollbar_wrapped||n,o)};i._rollbarOldRemove=l,i.belongsToShim=o,n.removeEventListener=i}}function u(r,n){(null==n||n>r.length)&&(n=r.length);for(var o=0,e=Array(n);o<n;o++)e[o]=r[o];return e}function s(r){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},s(r)}function d(r){return function(){try{return r.apply(this,arguments)}catch(r){try{e.error("[Rollbar]: Internal error",r)}catch(r){}}}}var f=0;function p(r,n){this.options=r,this._rollbarOldOnError=null;var o=f++;this.shimId=function(){return o},"undefined"!=typeof window&&window._rollbarShims&&(window._rollbarShims[o]={handler:n,messages:[]})}var b=function(r,n){return new p(r,n)},h=function(r){return new i(b,r)};function y(r){return d(function(){var n=Array.prototype.slice.call(arguments,0),o={shim:this,method:r,args:n,ts:new Date};window._rollbarShims[this.shimId()].messages.push(o)})}p.prototype.loadFull=function(r,n,o,e,t){var a=!1,l=n.createElement("script"),i=n.getElementsByTagName("script")[0],c=i.parentNode;l.crossOrigin="",l.src=e.rollbarJsUrl,o||(l.async=!0),l.onload=l.onreadystatechange=d(function(){if(!(a||this.readyState&&"loaded"!==this.readyState&&"complete"!==this.readyState)){l.onload=l.onreadystatechange=null;try{c.removeChild(l)}catch(r){}a=!0,function(){var n;if(void 0===r._rollbarDidLoad){n=new Error("rollbar.js did not load");for(var o,e,a,l,i=0;o=r._rollbarShims[i++];)for(o=o.messages||[];e=o.shift();)for(a=e.args||[],i=0;i<a.length;++i)if("function"==typeof(l=a[i])){l(n);break}}"function"==typeof t&&t(n)}()}}),c.insertBefore(l,i)},p.prototype.wrap=function(r,n,o){try{var e;if(e="function"==typeof n?n:function(){return n||{}},"function"!=typeof r)return r;if(r._isWrap)return r;if(!r._rollbar_wrapped)for(var a in r._rollbar_wrapped=function(){o&&"function"==typeof o&&o.apply(this,arguments);try{return r.apply(this,arguments)}catch(o){var n=o;throw n&&("string"==typeof n&&(n=new String(n)),n._rollbarContext=e()||{},n._rollbarContext._wrappedSource=r.toString(),window._rollbarWrappedError=n),n}},r._rollbar_wrapped._isWrap=!0,r)t(r,a)&&(r._rollbar_wrapped[a]=r[a]);return r._rollbar_wrapped}catch(n){return r}};var v,m=function(r){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=function(r,n){if(r){if("string"==typeof r)return u(r,n);var o={}.toString.call(r).slice(8,-1);return"Object"===o&&r.constructor&&(o=r.constructor.name),"Map"===o||"Set"===o?Array.from(r):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?u(r,n):void 0}}(r))){n&&(r=n);var o=0,e=function(){};return{s:e,n:function(){return o>=r.length?{done:!0}:{done:!1,value:r[o++]}},e:function(r){throw r},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var t,a=!0,l=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return a=r.done,r},e:function(r){l=!0,t=r},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw t}}}}("log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,captureEvent,captureDomContentLoaded,captureLoad".split(","));try{for(m.s();!(v=m.n()).done;){var g=v.value;p.prototype[g]=y(g)}}catch(r){m.e(r)}finally{m.f()}var w="https://cdn.rollbar.com/rollbarjs/refs/tags/v3.0.0/rollbar.min.js";if(_rollbarConfig=_rollbarConfig||{},!_rollbarConfig.rollbarJsUrl){var _="replay"in _rollbarConfig;_rollbarConfig.rollbarJsUrl=_?w.replace("rollbar.min.js","rollbar.replay.min.js"):w}_rollbarConfig.async=void 0===_rollbarConfig.async||_rollbarConfig.async;var E,S=function(r,n){if(r){var o=n.globalAlias||"Rollbar";if("object"===s(r[o]))return r[o];r._rollbarShims={},r._rollbarWrappedError=null;var e=new h(n);return d(function(){n.captureUncaught&&(e._rollbarOldOnError=r.onerror,function(r,n){if(r){var o;if("function"==typeof n._rollbarOldOnError)o=n._rollbarOldOnError;else if(r.onerror){for(o=r.onerror;o._rollbarOldOnError;)o=o._rollbarOldOnError;n._rollbarOldOnError=o}n.handleAnonymousErrors();var e=function(){var e=Array.prototype.slice.call(arguments,0);!function(r,n,o,e){r._rollbarWrappedError&&(e[4]||(e[4]=r._rollbarWrappedError),e[5]||(e[5]=r._rollbarWrappedError._rollbarContext),r._rollbarWrappedError=null);var t=n.handleUncaughtException.apply(n,e);o&&o.apply(r,e),"anonymous"===t&&(n.anonymousErrorsPending+=1)}(r,n,o,e)};e._rollbarOldOnError=o,r.onerror=e}}(r,e),n.wrapGlobalEventHandlers&&function(r,n,o){if(r){var e,t,a="EventTarget,Window,Node,ApplicationCache,AudioTrackList,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(",");for(e=0;e<a.length;++e)r[t=a[e]]&&r[t].prototype&&c(n,r[t].prototype,o)}}(r,e,!0)),n.captureUnhandledRejections&&function(r,n){if(r){"function"==typeof r._rollbarURH&&r._rollbarURH.belongsToShim&&r.removeEventListener("unhandledrejection",r._rollbarURH);var o=function(r){var o,e,t;try{o=r.reason}catch(r){o=void 0}try{e=r.promise}catch(r){e="[unhandledrejection] error getting `promise` from event"}try{t=r.detail,!o&&t&&(o=t.reason,e=t.promise)}catch(r){}o||(o="[unhandledrejection] error getting `reason` from event"),n&&n.handleUnhandledRejection&&n.handleUnhandledRejection(o,e)};o.belongsToShim=!0,r._rollbarURH=o,r.addEventListener("unhandledrejection",o)}}(r,e);var t=n.autoInstrument;return!1!==n.enabled&&(void 0===t||!0===t||function(r){return!("object"!==s(r)||void 0!==r.page&&!r.page)}(t))&&r.addEventListener&&(r.addEventListener("load",e.captureLoad.bind(e)),r.addEventListener("DOMContentLoaded",e.captureDomContentLoaded.bind(e))),r[o]=e,e})()}}(window,_rollbarConfig),O=(E=_rollbarConfig,function(r){if(!r&&!window._rollbarInitialized){for(var n,o,e=(E=E||{}).globalAlias||"Rollbar",t=window.rollbar,a=function(r){return new t(r)},l=0;n=window._rollbarShims[l++];)o||(o=n.handler),n.handler._swapAndProcessMessages(a,n.messages);window[e]=o,window._rollbarInitialized=!0}});window.rollbar=h,S.loadFull(window,document,!_rollbarConfig.async,_rollbarConfig,O)}();
1
+ !function(){"use strict";var r=function(){},n={debug:0,info:1,warn:2,error:3,disable:4},o={error:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("error",o)},warn:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("warn",o)},info:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("info",o)},debug:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("debug",o)},log:function(){for(var n=arguments.length,o=new Array(n),e=0;e<n;e++)o[e]=arguments[e];return r("info",o)},init:function(o){var e=o.logLevel;r=function(r,o){n[r]<n[e]||(o.unshift("Rollbar:"),console[r].apply(console,o))}}},e=o;function t(r,n){return null!=r&&(Object.hasOwn?Object.hasOwn(r,n):Object.prototype.hasOwnProperty.call(r,n))}function a(r,n){(null==n||n>r.length)&&(n=r.length);for(var o=0,e=Array(n);o<n;o++)e[o]=r[o];return e}function l(r,n){this.impl=r(n,this),this.options=n,function(r){var n,o=function(r){return function(){var n=Array.prototype.slice.call(arguments,0);if(this.impl[r])return this.impl[r].apply(this.impl,n)}},e=function(r,n){var o="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!o){if(Array.isArray(r)||(o=function(r,n){if(r){if("string"==typeof r)return a(r,n);var o={}.toString.call(r).slice(8,-1);return"Object"===o&&r.constructor&&(o=r.constructor.name),"Map"===o||"Set"===o?Array.from(r):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?a(r,n):void 0}}(r))||n&&r&&"number"==typeof r.length){o&&(r=o);var e=0,t=function(){};return{s:t,n:function(){return e>=r.length?{done:!0}:{done:!1,value:r[e++]}},e:function(r){throw r},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,i=!0,c=!1;return{s:function(){o=o.call(r)},n:function(){var r=o.next();return i=r.done,r},e:function(r){c=!0,l=r},f:function(){try{i||null==o.return||o.return()}finally{if(c)throw l}}}}("log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,_createItem,wrap,loadFull,shimId,captureEvent,captureDomContentLoaded,captureLoad".split(","));try{for(e.s();!(n=e.n()).done;){var t=n.value;r[t]=o(t)}}catch(r){e.e(r)}finally{e.f()}}(l.prototype)}l.prototype._swapAndProcessMessages=function(r,n){var o,e,t;for(this.impl=r(this.options);o=n.shift();)e=o.method,t=o.args,this[e]&&"function"==typeof this[e]&&("captureDomContentLoaded"===e||"captureLoad"===e?this[e].apply(this,[t[0],o.ts]):this[e].apply(this,t));return this};var i=l;function c(r,n,o){if(t(n,"addEventListener")){for(var e=n.addEventListener;e._rollbarOldAdd&&e.belongsToShim;)e=e._rollbarOldAdd;var a=function(n,o,t){e.call(this,n,r.wrap(o),t)};a._rollbarOldAdd=e,a.belongsToShim=o,n.addEventListener=a;for(var l=n.removeEventListener;l._rollbarOldRemove&&l.belongsToShim;)l=l._rollbarOldRemove;var i=function(r,n,o){l.call(this,r,n&&n._rollbar_wrapped||n,o)};i._rollbarOldRemove=l,i.belongsToShim=o,n.removeEventListener=i}}function u(r,n){(null==n||n>r.length)&&(n=r.length);for(var o=0,e=Array(n);o<n;o++)e[o]=r[o];return e}function s(r){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},s(r)}function d(r){return function(){try{return r.apply(this,arguments)}catch(r){try{e.error("[Rollbar]: Internal error",r)}catch(r){}}}}var f=0;function p(r,n){this.options=r,this._rollbarOldOnError=null;var o=f++;this.shimId=function(){return o},"undefined"!=typeof window&&window._rollbarShims&&(window._rollbarShims[o]={handler:n,messages:[]})}var b=function(r,n){return new p(r,n)},h=function(r){return new i(b,r)};function y(r){return d(function(){var n=Array.prototype.slice.call(arguments,0),o={shim:this,method:r,args:n,ts:new Date};window._rollbarShims[this.shimId()].messages.push(o)})}p.prototype.loadFull=function(r,n,o,e,t){var a=!1,l=n.createElement("script"),i=n.getElementsByTagName("script")[0],c=i.parentNode;l.crossOrigin="",l.src=e.rollbarJsUrl,o||(l.async=!0),l.onload=l.onreadystatechange=d(function(){if(!(a||this.readyState&&"loaded"!==this.readyState&&"complete"!==this.readyState)){l.onload=l.onreadystatechange=null;try{c.removeChild(l)}catch(r){}a=!0,function(){var n;if(void 0===r._rollbarDidLoad){n=new Error("rollbar.js did not load");for(var o,e,a,l,i=0;o=r._rollbarShims[i++];)for(o=o.messages||[];e=o.shift();)for(a=e.args||[],i=0;i<a.length;++i)if("function"==typeof(l=a[i])){l(n);break}}"function"==typeof t&&t(n)}()}}),c.insertBefore(l,i)},p.prototype.wrap=function(r,n,o){try{var e;if(e="function"==typeof n?n:function(){return n||{}},"function"!=typeof r)return r;if(r._isWrap)return r;if(!r._rollbar_wrapped)for(var a in r._rollbar_wrapped=function(){o&&"function"==typeof o&&o.apply(this,arguments);try{return r.apply(this,arguments)}catch(o){var n=o;throw n&&("string"==typeof n&&(n=new String(n)),n._rollbarContext=e()||{},n._rollbarContext._wrappedSource=r.toString(),window._rollbarWrappedError=n),n}},r._rollbar_wrapped._isWrap=!0,r)t(r,a)&&(r._rollbar_wrapped[a]=r[a]);return r._rollbar_wrapped}catch(n){return r}};var v,m=function(r){var n="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=function(r,n){if(r){if("string"==typeof r)return u(r,n);var o={}.toString.call(r).slice(8,-1);return"Object"===o&&r.constructor&&(o=r.constructor.name),"Map"===o||"Set"===o?Array.from(r):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?u(r,n):void 0}}(r))){n&&(r=n);var o=0,e=function(){};return{s:e,n:function(){return o>=r.length?{done:!0}:{done:!1,value:r[o++]}},e:function(r){throw r},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var t,a=!0,l=!1;return{s:function(){n=n.call(r)},n:function(){var r=n.next();return a=r.done,r},e:function(r){l=!0,t=r},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw t}}}}("log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleAnonymousErrors,handleUnhandledRejection,captureEvent,captureDomContentLoaded,captureLoad".split(","));try{for(m.s();!(v=m.n()).done;){var g=v.value;p.prototype[g]=y(g)}}catch(r){m.e(r)}finally{m.f()}var w="https://cdn.rollbar.com/rollbarjs/refs/tags/v3.1.0/rollbar.min.js";if(_rollbarConfig=_rollbarConfig||{},!_rollbarConfig.rollbarJsUrl){var _="replay"in _rollbarConfig;_rollbarConfig.rollbarJsUrl=_?w.replace("rollbar.min.js","rollbar.replay.min.js"):w}_rollbarConfig.async=void 0===_rollbarConfig.async||_rollbarConfig.async;var E,S=function(r,n){if(r){var o=n.globalAlias||"Rollbar";if("object"===s(r[o]))return r[o];r._rollbarShims={},r._rollbarWrappedError=null;var e=new h(n);return d(function(){n.captureUncaught&&(e._rollbarOldOnError=r.onerror,function(r,n){if(r){var o;if("function"==typeof n._rollbarOldOnError)o=n._rollbarOldOnError;else if(r.onerror){for(o=r.onerror;o._rollbarOldOnError;)o=o._rollbarOldOnError;n._rollbarOldOnError=o}n.handleAnonymousErrors();var e=function(){var e=Array.prototype.slice.call(arguments,0);!function(r,n,o,e){r._rollbarWrappedError&&(e[4]||(e[4]=r._rollbarWrappedError),e[5]||(e[5]=r._rollbarWrappedError._rollbarContext),r._rollbarWrappedError=null);var t=n.handleUncaughtException.apply(n,e);o&&o.apply(r,e),"anonymous"===t&&(n.anonymousErrorsPending+=1)}(r,n,o,e)};e._rollbarOldOnError=o,r.onerror=e}}(r,e),n.wrapGlobalEventHandlers&&function(r,n,o){if(r){var e,t,a="EventTarget,Window,Node,ApplicationCache,AudioTrackList,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(",");for(e=0;e<a.length;++e)r[t=a[e]]&&r[t].prototype&&c(n,r[t].prototype,o)}}(r,e,!0)),n.captureUnhandledRejections&&function(r,n){if(r){"function"==typeof r._rollbarURH&&r._rollbarURH.belongsToShim&&r.removeEventListener("unhandledrejection",r._rollbarURH);var o=function(r){var o,e,t;try{o=r.reason}catch(r){o=void 0}try{e=r.promise}catch(r){e="[unhandledrejection] error getting `promise` from event"}try{t=r.detail,!o&&t&&(o=t.reason,e=t.promise)}catch(r){}o||(o="[unhandledrejection] error getting `reason` from event"),n&&n.handleUnhandledRejection&&n.handleUnhandledRejection(o,e)};o.belongsToShim=!0,r._rollbarURH=o,r.addEventListener("unhandledrejection",o)}}(r,e);var t=n.autoInstrument;return!1!==n.enabled&&(void 0===t||!0===t||function(r){return!("object"!==s(r)||void 0!==r.page&&!r.page)}(t))&&r.addEventListener&&(r.addEventListener("load",e.captureLoad.bind(e)),r.addEventListener("DOMContentLoaded",e.captureDomContentLoaded.bind(e))),r[o]=e,e})()}}(window,_rollbarConfig),O=(E=_rollbarConfig,function(r){if(!r&&!window._rollbarInitialized){for(var n,o,e=(E=E||{}).globalAlias||"Rollbar",t=window.rollbar,a=function(r){return new t(r)},l=0;n=window._rollbarShims[l++];)o||(o=n.handler),n.handler._swapAndProcessMessages(a,n.messages);window[e]=o,window._rollbarInitialized=!0}});window.rollbar=h,S.loadFull(window,document,!_rollbarConfig.async,_rollbarConfig,O)}();
@@ -201,6 +201,9 @@ function isPromise(p) {
201
201
  function isBrowser() {
202
202
  return typeof window !== 'undefined';
203
203
  }
204
+ function isRequestObject(input) {
205
+ return typeof Request !== 'undefined' && input instanceof Request;
206
+ }
204
207
  function redact() {
205
208
  return '********';
206
209
  }
@@ -845,6 +848,70 @@ function merge() {
845
848
  }
846
849
  return result;
847
850
  }
851
+ function shouldAddBaggageHeader(options, tracing, url) {
852
+ var _options$tracing;
853
+ if (!(tracing !== null && tracing !== void 0 && tracing.sessionId) || !url) {
854
+ return false;
855
+ }
856
+ var propagation = options === null || options === void 0 || (_options$tracing = options.tracing) === null || _options$tracing === void 0 ? void 0 : _options$tracing.propagation;
857
+ var enabledHeaders = propagation === null || propagation === void 0 ? void 0 : propagation.enabledHeaders;
858
+ if (!Array.isArray(enabledHeaders) || !enabledHeaders.includes('baggage')) {
859
+ return false;
860
+ }
861
+ var enabledCorsUrls = propagation === null || propagation === void 0 ? void 0 : propagation.enabledCorsUrls;
862
+ if (!Array.isArray(enabledCorsUrls) || enabledCorsUrls.length === 0) {
863
+ return false;
864
+ }
865
+ return enabledCorsUrls.some(function (pattern) {
866
+ if (isType(pattern, 'string')) {
867
+ return url === pattern;
868
+ }
869
+ if (isType(pattern, 'regexp')) {
870
+ return pattern.test(url);
871
+ }
872
+ return false;
873
+ });
874
+ }
875
+ function addHeadersToFetch(args, newHeaders) {
876
+ var _init;
877
+ // Headers may be in the request object or the init object.
878
+ // If present in both places, the init object must be used.
879
+ //
880
+ var init = args[1];
881
+ var initHeaders = (_init = init) === null || _init === void 0 ? void 0 : _init.headers;
882
+ var reqHeaders = isRequestObject(args[0]) && args[0].headers;
883
+ var headers = initHeaders || reqHeaders;
884
+
885
+ // If headers are not present in either place, they are added to the init object.
886
+ // If there is no init object, one must be created and added to args.
887
+ if (!headers) {
888
+ if (!init) {
889
+ args[1] = init = {};
890
+ }
891
+ headers = init.headers = {};
892
+ }
893
+
894
+ // `headers` may be a Headers object or a plain object.
895
+ if (headers instanceof Headers) {
896
+ for (var _i = 0, _Object$keys = Object.keys(newHeaders); _i < _Object$keys.length; _i++) {
897
+ var key = _Object$keys[_i];
898
+ headers.append(key, newHeaders[key]);
899
+ }
900
+ } else if (isObject(headers)) {
901
+ for (var _i2 = 0, _Object$keys2 = Object.keys(newHeaders); _i2 < _Object$keys2.length; _i2++) {
902
+ var _key = _Object$keys2[_i2];
903
+ headers[_key] = newHeaders[_key];
904
+ }
905
+ }
906
+ }
907
+ function getSessionIdFromAsyncLocalStorage(client) {
908
+ var storage = client.asyncLocalStorage;
909
+ if (!storage || typeof storage.getStore !== 'function') {
910
+ return null;
911
+ }
912
+ var store = storage.getStore();
913
+ return (store === null || store === void 0 ? void 0 : store.sessionId) || null;
914
+ }
848
915
 
849
916
  ;// ./src/utility/traverse.js
850
917
 
@@ -2994,7 +3061,7 @@ function _getOTLPTransport(options, url) {
2994
3061
  /**
2995
3062
  * Default options shared across platforms
2996
3063
  */
2997
- var version = '3.0.0';
3064
+ var version = '3.1.0';
2998
3065
  var endpoint = 'api.rollbar.com/api/1/item/';
2999
3066
  var logLevel = 'debug';
3000
3067
  var reportLevel = 'debug';
@@ -4257,9 +4324,11 @@ Rollbar.prototype._log = function (defaultLevel, item) {
4257
4324
  Rollbar.prototype._addItemAttributes = function (item) {
4258
4325
  var _this$tracing, _this$tracing2;
4259
4326
  var span = (_this$tracing = this.tracing) === null || _this$tracing === void 0 ? void 0 : _this$tracing.getSpan();
4327
+ var asyncLocalSessionId = getSessionIdFromAsyncLocalStorage(this);
4328
+ var sessionId = asyncLocalSessionId || ((_this$tracing2 = this.tracing) === null || _this$tracing2 === void 0 ? void 0 : _this$tracing2.sessionId);
4260
4329
  var attributes = [{
4261
4330
  key: 'session_id',
4262
- value: (_this$tracing2 = this.tracing) === null || _this$tracing2 === void 0 ? void 0 : _this$tracing2.sessionId
4331
+ value: sessionId
4263
4332
  }, {
4264
4333
  key: 'span_id',
4265
4334
  value: span === null || span === void 0 ? void 0 : span.spanId
@@ -6647,7 +6716,16 @@ var Instrumenter = /*#__PURE__*/function () {
6647
6716
  }, this.replacements, 'network');
6648
6717
  utility_replace(xhrp, 'send', function (orig) {
6649
6718
  return function (data) {
6719
+ var _self$rollbar, _xhr$__rollbar_xhr;
6650
6720
  var xhr = this;
6721
+ var tracing = (_self$rollbar = self.rollbar) === null || _self$rollbar === void 0 ? void 0 : _self$rollbar.tracing;
6722
+ if (shouldAddBaggageHeader(self.options, tracing, (_xhr$__rollbar_xhr = xhr.__rollbar_xhr) === null || _xhr$__rollbar_xhr === void 0 ? void 0 : _xhr$__rollbar_xhr.url)) {
6723
+ try {
6724
+ xhr.setRequestHeader('baggage', "rollbar.session.id=".concat(tracing.sessionId));
6725
+ } catch (_e) {
6726
+ /* ignore errors from adding baggage header */
6727
+ }
6728
+ }
6651
6729
  function onreadystatechangeHandler() {
6652
6730
  if (xhr.__rollbar_xhr) {
6653
6731
  if (xhr.__rollbar_xhr.status_code === null) {
@@ -6768,6 +6846,7 @@ var Instrumenter = /*#__PURE__*/function () {
6768
6846
  if ('fetch' in this._window) {
6769
6847
  utility_replace(this._window, 'fetch', function (orig) {
6770
6848
  return function (_fn, _t) {
6849
+ var _self$rollbar2;
6771
6850
  var args = Array.prototype.slice.call(arguments);
6772
6851
  var input = args[0];
6773
6852
  var method = 'GET';
@@ -6784,6 +6863,13 @@ var Instrumenter = /*#__PURE__*/function () {
6784
6863
  if (args[1] && args[1].method) {
6785
6864
  method = args[1].method;
6786
6865
  }
6866
+ var tracing = (_self$rollbar2 = self.rollbar) === null || _self$rollbar2 === void 0 ? void 0 : _self$rollbar2.tracing;
6867
+ if (shouldAddBaggageHeader(self.options, tracing, url)) {
6868
+ var _headers2 = {
6869
+ baggage: "rollbar.session.id=".concat(tracing.sessionId)
6870
+ };
6871
+ addHeadersToFetch(args, _headers2);
6872
+ }
6787
6873
  var metadata = {
6788
6874
  method: method,
6789
6875
  url: url,