@dash0/sdk-web 0.14.1 → 0.16.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 (38) hide show
  1. package/README.md +77 -6
  2. package/dist/dash0.iife.js +1 -1
  3. package/dist/dash0.iife.js.map +1 -1
  4. package/dist/dash0.js +1 -1
  5. package/dist/dash0.js.map +1 -1
  6. package/dist/dash0.umd.cjs +1 -1
  7. package/dist/dash0.umd.cjs.map +1 -1
  8. package/dist/modules/api/init.js +30 -0
  9. package/dist/modules/api/init_test.js +102 -6
  10. package/dist/modules/instrumentations/http/fetch.js +47 -5
  11. package/dist/modules/instrumentations/http/fetch_test.js +170 -0
  12. package/dist/modules/instrumentations/http/propagator-integration_test.js +77 -0
  13. package/dist/modules/transport/index.js +1 -3
  14. package/dist/modules/utils/otel/trace-context.js +24 -1
  15. package/dist/modules/utils/otel/trace-context_test.js +40 -0
  16. package/dist/modules/utils/rate-limit.js +1 -5
  17. package/dist/tsconfig.tsbuildinfo +1 -1
  18. package/dist/types/entrypoint/npm-package.d.ts +1 -1
  19. package/dist/types/instrumentations/http/fetch_test.d.ts +1 -0
  20. package/dist/types/instrumentations/http/propagator-integration_test.d.ts +1 -0
  21. package/dist/types/types/options.d.ts +6 -1
  22. package/dist/types/utils/otel/trace-context.d.ts +2 -1
  23. package/dist/types/utils/otel/trace-context_test.d.ts +1 -0
  24. package/dist/types/utils/rate-limit.d.ts +0 -1
  25. package/dist/types/vars.d.ts +11 -0
  26. package/package.json +1 -1
  27. package/src/api/init.ts +34 -0
  28. package/src/api/init_test.ts +130 -9
  29. package/src/entrypoint/npm-package.ts +1 -1
  30. package/src/instrumentations/http/fetch.ts +59 -6
  31. package/src/instrumentations/http/fetch_test.ts +191 -0
  32. package/src/instrumentations/http/propagator-integration_test.ts +93 -0
  33. package/src/transport/index.ts +1 -3
  34. package/src/types/options.ts +7 -1
  35. package/src/utils/otel/trace-context.ts +30 -1
  36. package/src/utils/otel/trace-context_test.ts +59 -0
  37. package/src/utils/rate-limit.ts +2 -12
  38. package/src/vars.ts +14 -0
package/README.md CHANGED
@@ -64,16 +64,53 @@ These can all be passed via the sdk's `init` call.
64
64
 
65
65
  ### Backend Correlation
66
66
 
67
- Backend Correlation for HTTP requests is by default only enabled for endpoints that share the same origin as the website.
67
+ The SDK supports trace context propagation to correlate frontend requests with backend services. You can configure different header types (`traceparent`, `X-Amzn-Trace-Id`) for different endpoints using the `propagators` configuration.
68
68
 
69
69
  > [!NOTE]
70
70
  > Misconfiguration of cross origin trace correlation can lead to request failures. Please make sure to carefully validate
71
71
  > the configuration provided in the next steps
72
72
 
73
- If you want to enable correlation for cross-origin requests you have to follow these steps:
73
+ #### Propagators Configuration (Recommended)
74
+
75
+ Configure trace context propagators for different URL patterns:
76
+
77
+ ```js
78
+ init({
79
+ propagators: [
80
+ // W3C traceparent headers for internal APIs
81
+ { type: "traceparent", match: [/.*\/api\/internal.*/] },
82
+ // AWS X-Ray headers for AWS services
83
+ { type: "xray", match: [/.*\.amazonaws\.com.*/] },
84
+ // Send both headers to specific endpoints
85
+ { type: "traceparent", match: [/.*\/api\/special.*/] },
86
+ { type: "xray", match: [/.*\/api\/special.*/] },
87
+ ],
88
+ });
89
+ ```
90
+
91
+ **Supported propagator types:**
92
+
93
+ - `"traceparent"`: W3C Trace Context headers for OpenTelemetry-compatible services
94
+ - `"xray"`: AWS X-Ray trace headers for AWS services
95
+
96
+ **Same-origin requests**: All same-origin requests automatically receive `traceparent` headers plus headers for ALL other configured propagator types, regardless of match patterns. This ensures consistent trace correlation within your application.
97
+
98
+ **Match patterns for cross-origin requests:**
99
+
100
+ - `RegExp`: Regular expressions to match against full URLs
101
+
102
+ **Multiple Headers**: When multiple propagators match the same URL, both headers will be added to the request. This is useful when you need to support multiple tracing systems simultaneously.
103
+
104
+ **Backend setup**
105
+
106
+ - Make sure the endpoints respond to `OPTIONS` requests and include the appropriate headers in their `Access-Control-Allow-Headers` response header:
107
+ - `traceparent` for W3C trace context
108
+ - `X-Amzn-Trace-Id` for AWS X-Ray
109
+
110
+ #### Legacy Configuration (Deprecated)
111
+
112
+ The legacy `propagateTraceHeadersCorsURLs` configuration is still supported but deprecated:
74
113
 
75
- - Make sure the endpoints respond to `OPTIONS` requests and include `traceparent` in their `Access-Control-Allow-Headers`
76
- response header.
77
114
  - Include a regex matching the endpoint you want to enable in the [propagateTraceHeadersCorsURLs](#http-request-instrumentation) configuration option.
78
115
 
79
116
  ### Configuration auto detection
@@ -232,12 +269,46 @@ This currently also requires the use of Next.js
232
269
 
233
270
  #### HTTP request instrumentation
234
271
 
235
- - **Propagate Trace Header Cors URLs**<br>
272
+ - **Propagators**<br>
273
+ key: `propagators`<br>
274
+ type: `PropagatorConfig[]`<br>
275
+ optional: `true`<br>
276
+ default: `undefined`<br>
277
+ Configure trace context propagators for different URL patterns. Each propagator defines which header type to send for matching URLs.
278
+
279
+ ```typescript
280
+ type PropagatorConfig = {
281
+ type: "traceparent" | "xray";
282
+ match: RegExp[];
283
+ };
284
+ ```
285
+
286
+ Example:
287
+
288
+ ```js
289
+ propagators: [
290
+ // Use RegExp for specific cross-origin URL patterns
291
+ { type: "traceparent", match: [/.*\/api\/internal.*/] },
292
+ { type: "xray", match: [/.*\.amazonaws\.com.*/] },
293
+ // Multiple propagators can match the same URL to send both headers
294
+ { type: "traceparent", match: [/.*\/api\/both.*/] },
295
+ { type: "xray", match: [/.*\/api\/both.*/] },
296
+ ];
297
+ ```
298
+
299
+ **Same-origin behavior**: All same-origin requests automatically get `traceparent` headers plus headers for ALL other configured propagator types, regardless of match patterns.
300
+
301
+ **Cross-origin behavior**: When multiple propagators match the same cross-origin URL, both headers will be sent. Duplicate propagator types for the same URL are automatically deduplicated.
302
+
303
+ NOTE: Any cross origin endpoints allowed via this option need to include the appropriate headers in the `Access-Control-Allow-Headers`
304
+ response header (`traceparent` for W3C, `X-Amzn-Trace-Id` for X-Ray). Misconfiguration will cause request failures!
305
+
306
+ - **Propagate Trace Header Cors URLs** ⚠️ **DEPRECATED**<br>
236
307
  key: `propagateTraceHeadersCorsURLs`<br>
237
308
  type: `Array<RegExp>`<br>
238
309
  optional: `true`<br>
239
310
  default: `undefined`<br>
240
- An array of URL regular expressions for which trace context headers should be sent across origins by http client instrumentations.
311
+ **DEPRECATED: Use `propagators` instead.** An array of URL regular expressions for which trace context headers should be sent across origins by http client instrumentations.
241
312
  NOTE: Any cross origin endpoints allowed via this option need to include `traceparent` in the `Access-Control-Allow-Headers`
242
313
  response header. Misconfiguration will cause request failures!
243
314
  - **Max Wait For Resource Timings**<br>
@@ -1,2 +1,2 @@
1
- !function(){"use strict";function t(){}function e(t){return t}var n={debug:0,info:1,warn:2,error:3},r=n.warn;var i=s("info"),o=s("warn"),a=s("error"),u=s("debug");function s(e){if("undefined"!=typeof console&&console[e]&&"function"==typeof console[e].apply){var i=n[e];return function(){i>=r&&console[e].apply(console,arguments)}}return t}var c=Object.prototype.hasOwnProperty;function l(t,e){return c.call(t,e)}var f="undefined"!=typeof window?window:void 0,d=null==f?void 0:f.document,v=null==f?void 0:f.navigator,p="undefined"!=typeof location?location:void 0,h=(null==f?void 0:f.performance)||(null==f?void 0:f.webkitPerformance)||(null==f?void 0:f.msPerformance)||(null==f?void 0:f.mozPerformance);null==f||f.encodeURIComponent;var m=null==f?void 0:f.fetch,y=function(){try{var t;return null!==(t=null==f?void 0:f.localStorage)&&void 0!==t?t:null}catch(t){return null}}(),g=function(){try{var t;return null!==(t=null==f?void 0:f.sessionStorage)&&void 0!==t?t:null}catch(t){return null}}(),b=Array(32);function T(t){for(var e=0;e<2*t;e++)b[e]=Math.floor(16*Math.random())+48,b[e]>=58&&(b[e]+=39);return String.fromCharCode.apply(null,b.slice(0,2*t))}function E(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent&&t.attachEvent("on"+e,n)}var w=null!=y&&"function"==typeof y.getItem&&"function"==typeof y.setItem;function S(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function A(t,e,n,r,i,o,a){try{var u=t[o](a),s=u.value}catch(t){return void n(t)}u.done?e(s):Promise.resolve(s).then(r,i)}function O(t){return function(){var e=this,n=arguments;return new Promise((function(r,i){var o=t.apply(e,n);function a(t){A(o,r,i,a,u,"next",t)}function u(t){A(o,r,i,a,u,"throw",t)}a(void 0)}))}}function I(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function N(t,e,n){return e&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,P(r.key),r)}}(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t}function L(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=j(t))||e){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}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 o,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw o}}}}function _(t,e,n){return(e=P(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function C(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function R(){R=function(){return e};var t,e={},n=Object.prototype,r=n.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",u=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,n){return t[e]=n}}function l(t,e,n,r){var o=e&&e.prototype instanceof y?e:y,a=Object.create(o.prototype),u=new C(r||[]);return i(a,"_invoke",{value:I(t,n,u)}),a}function f(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var d="suspendedStart",v="suspendedYield",p="executing",h="completed",m={};function y(){}function g(){}function b(){}var T={};c(T,a,(function(){return this}));var E=Object.getPrototypeOf,w=E&&E(E(x([])));w&&w!==n&&r.call(w,a)&&(T=w);var S=b.prototype=y.prototype=Object.create(T);function A(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function O(t,e){function n(i,o,a,u){var s=f(t[i],t,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l&&"object"==typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):e.resolve(l).then((function(t){c.value=t,a(c)}),(function(t){return n("throw",t,a,u)}))}u(s.arg)}var o;i(this,"_invoke",{value:function(t,r){function i(){return new e((function(e,i){n(t,r,e,i)}))}return o=o?o.then(i,i):i()}})}function I(e,n,r){var i=d;return function(o,a){if(i===p)throw Error("Generator is already running");if(i===h){if("throw"===o)throw a;return{value:t,done:!0}}for(r.method=o,r.arg=a;;){var u=r.delegate;if(u){var s=N(u,r);if(s){if(s===m)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===d)throw i=h,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=p;var c=f(e,n,r);if("normal"===c.type){if(i=r.done?h:v,c.arg===m)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(i=h,r.method="throw",r.arg=c.arg)}}}function N(e,n){var r=n.method,i=e.iterator[r];if(i===t)return n.delegate=null,"throw"===r&&e.iterator.return&&(n.method="return",n.arg=t,N(e,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),m;var o=f(i,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,m;var a=o.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,m):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,m)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function C(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function x(e){if(e||""===e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var i=-1,o=function n(){for(;++i<e.length;)if(r.call(e,i))return n.value=e[i],n.done=!1,n;return n.value=t,n.done=!0,n};return o.next=o}}throw new TypeError(typeof e+" is not iterable")}return g.prototype=b,i(S,"constructor",{value:b,configurable:!0}),i(b,"constructor",{value:g,configurable:!0}),g.displayName=c(b,s,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,b):(t.__proto__=b,c(t,s,"GeneratorFunction")),t.prototype=Object.create(S),t},e.awrap=function(t){return{__await:t}},A(O.prototype),c(O.prototype,u,(function(){return this})),e.AsyncIterator=O,e.async=function(t,n,r,i,o){void 0===o&&(o=Promise);var a=new O(l(t,n,r,i),o);return e.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},A(S),c(S,s,"Generator"),c(S,a,(function(){return this})),c(S,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},e.values=x,C.prototype={constructor:C,reset:function(e){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(_),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function i(r,i){return u.type="throw",u.arg=e,n.next=r,i&&(n.method="next",n.arg=t),!!i}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],u=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(s&&c){if(this.prev<a.catchLoc)return i(a.catchLoc,!0);if(this.prev<a.finallyLoc)return i(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return i(a.catchLoc,!0)}else{if(!c)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return i(a.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,m):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;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),m},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),_(n),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;_(n)}return i}}throw Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:x(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),m}},e}function x(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,i,o,a,u=[],s=!0,c=!1;try{if(o=(n=n.call(t)).next,0===e);else for(;!(s=(r=o.call(n)).done)&&(u.push(r.value),u.length!==e);s=!0);}catch(t){c=!0,i=t}finally{try{if(!s&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw i}}return u}}(t,e)||j(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(t){return function(t){if(Array.isArray(t))return S(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||j(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(t){var e=function(t,e){if("object"!=typeof t||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==typeof e?e:e+""}function D(t){return D="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},D(t)}function j(t,e){if(t){if("string"==typeof t)return S(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?S(t,e):void 0}}function M(){return(new Date).getTime()}function U(){var t=V();return t?String(1e6*(h.now()+t)):F(new Date)}function F(t){return"object"===D(t)?F(t.getTime()):String(t)+"000000"}function V(){var t,e=null==h?void 0:h.timeOrigin;"number"!=typeof e&&(e=null==h||null===(t=h.timing)||void 0===t?void 0:t.fetchStart);return e}var B={setTimeout:null==f?void 0:f.setTimeout,clearTimeout:null==f?void 0:f.clearTimeout,setInterval:null==f?void 0:f.setInterval,clearInterval:null==f?void 0:f.clearInterval},W=null!=f&&null!=f.Zone&&null!=f.Zone.root&&"function"==typeof f.Zone.root.run;function q(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return z.apply("setTimeout",arguments)}function H(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return z.apply("setInterval",arguments)}function z(){var t,e=this;if(W)try{var n=Array.prototype.slice.apply(arguments);return f.Zone.root.run(B[e],f,n)}catch(t){o("Failed to execute %s inside of zone (via Zone.js). Falling back to execution inside currently active zone.",e,t)}return null===(t=B[e])||void 0===t?void 0:t.apply(f,arguments)}W&&u("Discovered Zone.js globals. Will attempt to register all timers inside the root Zone.");h&&h.getEntriesByType;var G=h&&"function"==typeof f.PerformanceObserver&&"function"==typeof h.now,K=Object.freeze({CONNECT_END:"connectEnd",CONNECT_START:"connectStart",DECODED_BODY_SIZE:"decodedBodySize",DOM_COMPLETE:"domComplete",DOM_CONTENT_LOADED_EVENT_END:"domContentLoadedEventEnd",DOM_CONTENT_LOADED_EVENT_START:"domContentLoadedEventStart",DOM_INTERACTIVE:"domInteractive",DOMAIN_LOOKUP_END:"domainLookupEnd",DOMAIN_LOOKUP_START:"domainLookupStart",ENCODED_BODY_SIZE:"encodedBodySize",FETCH_START:"fetchStart",LOAD_EVENT_END:"loadEventEnd",LOAD_EVENT_START:"loadEventStart",NAVIGATION_START:"navigationStart",REDIRECT_END:"redirectEnd",REDIRECT_START:"redirectStart",REQUEST_START:"requestStart",RESPONSE_END:"responseEnd",RESPONSE_START:"responseStart",SECURE_CONNECTION_START:"secureConnectionStart",START_TIME:"startTime",UNLOAD_EVENT_END:"unloadEventEnd",UNLOAD_EVENT_START:"unloadEventStart"}),Z=new WeakSet;function Y(e){if(!G)return function(e){var n=0;return{start:function(){n=M()},end:function(){return e({duration:M()-n})},cancel:t}}(e.onEnd);var n,r,i,o,a,u=[];return{start:function(){n=h.now();try{var t,e=null==f?void 0:f.PerformanceObserver;if(e)null===(t=i=new e(c))||void 0===t||t.observe({type:"resource"})}catch(t){}a=q(v,6e5)},end:function(){if(r=h.now(),p(),!Q())return s();q((function(){return s()}),Math.min(300,e.maxWaitForResourceMillis)),E(d,"visibilitychange",l),o=q(s,e.maxWaitForResourceMillis)},cancel:v};function s(){v();var t=function(){if(!u.length)return;var t,i,o=u.filter((function(t){return t.responseEnd<=r+e.maxToleranceForResourceTimingsMillis&&!Z.has(t)}));if(!o.length)return;1===o.length&&(t=o[0]);if(!t){var a,s=L(o);try{for(s.s();!(a=s.n()).done;){var c=a.value,l=Math.abs(r-n-c.duration)+Math.abs(c.responseEnd-r);(void 0===i||l<i)&&(i=l,t=c)}}catch(t){s.e(t)}finally{s.f()}}if(!t)return;return Z.add(t),t}();null!=t&&t.duration&&t.duration<864e5?e.onEnd({resource:t,duration:t.duration}):e.onEnd({resource:t,duration:r-n})}function c(t){t.getEntriesByType("resource").filter((function(t){var r=t;return r.startTime>=n&&e.resourceMatcher(r)})).forEach((function(t){return u.push(t)}))}function l(){Q()||s()}function v(){!function(){if(i){try{var t;null===(t=i)||void 0===t||t.disconnect()}catch(t){}i=void 0}}(),o&&(clearTimeout(o),o=void 0),p(),function(){if(!d)return;t=d,e="visibilitychange",n=l,t.removeEventListener?t.removeEventListener(e,n,!1):t.detachEvent&&t.detachEvent("on"+e,n);var t,e,n}()}function p(){a&&(clearTimeout(a),a=void 0)}}function Q(){return"visible"===(null==d?void 0:d.visibilityState)||"prerender"===(null==d?void 0:d.visibilityState)}var X="undefined";function $(t){return Math.round(100*t)/100}function J(t){var e;return"string"!=typeof t?t:new URL(t,null!==(e=null==d?void 0:d.baseURI)&&void 0!==e?e:null==p?void 0:p.href)}function tt(t){try{return J(t).origin===("undefined"!=typeof location?location.origin:void 0)}catch(t){return!1}}var et=Symbol.for("INSTRUMENTED_BY_DASH0");function nt(t,e,n){var r=t[e];r?(!0===r[et]&&u("".concat(String(e)," has already been instrumented, skipping")),function(t){t[et]=!0}(r),t[e]=n(r)):u("".concat(String(e)," is not defined, unable to instrument"))}var rt={endpoints:[],resource:{attributes:[]},scope:{name:"dash0-web-sdk",version:"0.14.1",attributes:[]},signalAttributes:[],ignoreUrls:[],ignoreErrorMessages:[],wrapEventHandlers:!0,wrapTimers:!0,propagateTraceHeadersCorsURLs:[],maxWaitForResourceTimingsMillis:1e4,maxToleranceForResourceTimingsMillis:50,headersToCapture:[],urlAttributeScrubber:e,pageViewInstrumentation:{trackVirtualPageViews:!0,includeParts:[]}};function it(t,e){for(var n=0,r=t.length;n<r;n++)if(t[n].test(e))return!0;return!1}var ot="data:";function at(t){return!t||(!(t=String(t))||(null==t.substring||t.substring(0,5).toLowerCase()===ot||(!!function(t){for(var e=t.toLowerCase(),n=0,r=rt.endpoints.length;n<r;n++){var i=rt.endpoints[n];if(e.startsWith(i.url))return!0}return!1}(t)||it(rt.ignoreUrls,t))))}var ut=!1;function st(t){var e,n,r=[];return n=i,ut&&n(),d&&f&&(E(d,"visibilitychange",(function(){"visible"!==d.visibilityState&&n()})),E(f,"pagehide",(function(){ut=!0,n()})),E(f,"beforeunload",(function(){ut=!0,n()}))),{send:function(n){"visible"===(null==d?void 0:d.visibilityState)?(r.push(n),r.length>=15?i():null==e&&(e=q(i,1e3))):t([n])}};function i(){null!=e&&(clearTimeout(e),e=null),r.length>0&&(t(r.slice()),r.length=0)}}function ct(t,e){return lt.apply(this,arguments)}function lt(){return lt=O(R().mark((function e(n,r){var i,a,s,c;return R().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u("Transmitting telemetry to endpoints",r),i=JSON.stringify(r),a=i,s=i.length,c=!1,"undefined"==typeof CompressionStream){e.next=11;break}return e.next=8,ft(i);case 8:a=e.sent,s=a.byteLength,c=!0;case 11:return e.next=13,Promise.all(rt.endpoints.map(function(){var e=O(R().mark((function e(r){var i,u,l;return R().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,(i=new URL(r.url)).pathname=i.pathname+(i.pathname.endsWith("/")?n.substring(1):n),u={"Content-Type":"application/json",Authorization:"Bearer ".concat(r.authToken)},r.dataset&&(u["Dash0-Dataset"]=r.dataset),c&&(u["Content-Encoding"]="gzip"),m){e.next=9;break}return o("Unable to send telemetry, fetch is not defined"),e.abrupt("return");case 9:return e.next=11,m(i,{method:"POST",headers:u,body:a,keepalive:s<=6e4});case 11:(l=e.sent).text().catch(t),l.ok||o("Failed to send telemetry to ".concat(i,": ").concat(l.status," ").concat(l.statusText)),e.next=19;break;case 16:e.prev=16,e.t0=e.catch(0),o("Error sending telemetry to ".concat(r.url).concat(n,":"),e.t0);case 19:case"end":return e.stop()}}),e,null,[[0,16]])})));return function(t){return e.apply(this,arguments)}}()));case 13:case"end":return e.stop()}}),e)}))),lt.apply(this,arguments)}function ft(t){return dt.apply(this,arguments)}function dt(){return(dt=O(R().mark((function t(e){var n,r,i;return R().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=new Blob([e]),r=n.stream(),i=r.pipeThrough(new CompressionStream("gzip")),t.abrupt("return",new Response(i).arrayBuffer());case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var vt,pt=st((function(t){ct("/v1/logs",{resourceLogs:[{resource:rt.resource,scopeLogs:[{scope:rt.scope,logRecords:t}]}]}).catch((function(t){a("Failed to transmit logs",t)}))})),ht=st((function(t){ct("/v1/traces",{resourceSpans:[{resource:rt.resource,scopeSpans:[{scope:rt.scope,spans:t}]}]}).catch((function(t){a("Failed to transmit spans",t)}))}));function mt(){var t,e,n,r,i,o,a;return vt||(e=(t={maxCalls:8096,maxCallsPerTenMinutes:4096,maxCallsPerTenSeconds:128}).maxCalls,n=t.maxCallsPerTenMinutes,r=t.maxCallsPerTenSeconds,i=0,o=0,a=0,H((function(){o=0}),6e5),H((function(){a=0}),1e4),vt=function(){return++i>e||++o>n||++a>r}),vt()}function yt(t){mt()?u("Transport rate limit. Will not send item.",t):pt.send(t)}function gt(t){mt()?u("Transport rate limit. Will not send item.",t):ht.send(t)}var bt="service.name",Tt="service.version",Et="deployment.environment.name",wt="deployment.name",St="deployment.id",At="event.name",Ot="dash0.web.event.id",It="page.load.id",Nt="user_agent.original",Lt="user.id",_t="user.name",Ct="user.full_name",Rt="user.email",xt="user.hash",kt="user.roles",Pt="exception.message",Dt="exception.type",jt="exception.stacktrace",Mt="url.full",Ut={PAGE_VIEW:"browser.page_view",NAVIGATION_TIMING:"browser.navigation_timing",WEB_VITAL:"browser.web_vital",ERROR:"browser.error"},Ft={UNSPECIFIED:0,TRACE:1,DEBUG:5,INFO:9,WARN:13,ERROR:17,FATAL:21},Vt=0,Bt=1,Wt="pushState",qt="replaceState",Ht=["stringValue","boolValue","intValue","doubleValue","arrayValue","kvlistValue","bytesValue"];function zt(t){if(null!=t){var e={};return Array.isArray(t)?e.arrayValue={values:t.map((function(t){return zt(t)}))}:"string"==typeof t?e.stringValue=t:"number"==typeof t?e.doubleValue=t:"boolean"==typeof t?e.boolValue=t:!function(t){if(null==t||"object"!==D(t))return!1;var e=Object.keys(t);return 1===e.length&&Ht.includes(e[0])}(t)?"object"===D(t)&&(e.kvlistValue={values:Object.entries(t).map((function(t){var e=x(t,2);return Gt(e[0],e[1])}))}):e=t,e}}function Gt(t,e){return{key:t,value:zt(e)}}function Kt(t,e,n){e&&t.push(Gt(e,n))}function Zt(t,e){var n=t.findIndex((function(t){return t.key===e}));-1!==n&&t.splice(n,1)}var Yt="traceparent",Qt=/^00-([a-f0-9]{32})-([a-f0-9]{16})-[0-9]{1,2}$/;function Xt(){var t,e,n=((null===(t=Array.from(null!==(e=null==d?void 0:d.getElementsByTagName("meta"))&&void 0!==e?e:[]).find((function(t){var e;return(null===(e=t.getAttribute("name"))||void 0===e?void 0:e.toLowerCase())===Yt})))||void 0===t?void 0:t.content.trim())||"").match(Qt)||function(){var t=h.getEntriesByType("navigation")[0];if(!t)return"";if(!t.serverTiming)return"";return function(t){var e,n=L(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;if(r.name===Yt)return r.description.trim()}}catch(t){n.e(t)}finally{n.f()}return""}(t.serverTiming)}().match(Qt);if(n)return{traceId:n[1],spanId:n[2]}}function $t(t,e,n){t.call(e,"traceparent","00-".concat(n.traceId,"-").concat(n.spanId,"-01"))}var Jt=1;function te(){var t,e;return"".concat((t={ephemeralSession:!w},e=0,t.ephemeralSession&&(e|=Jt),e.toString(16).padStart(2,"0"))).concat(T(7))}var ee="d0_session",ne="#",re=864e5,ie=null;function oe(t,e){if(!w)return u("Storage API is not available and session tracking is therefore not supported."),void(ie=te());t||(t=108e5),e||(e=216e5),t=Math.min(t,re),e=Math.min(e,re);try{var n=function(t){return w&&y?y.getItem(t):null}(ee),r=function(t){if(!t)return null;var e=t.split(ne);if(e.length<3)return null;var n=e[0],r=parseInt(e[1],10),i=parseInt(e[2],10);if(!n||isNaN(r)||isNaN(i))return null;return{id:n,startTime:r,lastActivityTime:i}}(n);r&&!function(t,e,n){var r=M()-e;if(t.lastActivityTime<r)return!1;var i=M()-n;return t.startTime>=i}(r,t,e)&&(r=null),r?r.lastActivityTime=M():r={id:te(),startTime:M(),lastActivityTime:M()},function(t,e){w&&y&&y.setItem(t,e)}(ee,function(t){return t.id+ne+t.startTime+ne+t.lastActivityTime}(r)),ie=r.id}catch(t){o("Failed to record session information",t)}}var ae="d042",ue=1;function se(t){var e=0;return t.withoutSession&&(e|=ue),e.toString(16).padStart(2,"0")}for(var ce=new Uint32Array(256),le=0;le<256;le++){for(var fe=le,de=0;de<8;de++)fe=1&fe?3988292384^fe>>>1:fe>>>1;ce[le]=fe>>>0}function ve(t){var e=function(t){for(var e=new Uint8Array(t.length/2),n=0;n<t.length;n+=2)e[n/2]=parseInt(t.substring(n,n+2),16);for(var r=4294967295,i=0;i<e.length;i++){var o=e[i];r=r>>>8^ce[255&(r^o)]}return(4294967295^r)>>>0}(t).toString(16).padStart(8,"0");return"".concat(e).concat(T(4))}function pe(t){var e=function(t){return t?"".concat(ae).concat(se({withoutSession:!1})).concat(t).concat(T(5)):"".concat(ae).concat(se({withoutSession:!0})).concat(T(13))}(ie),n=ve(e),r=[];return Kt(r,Ot,n),{traceId:e,spanId:n,name:t,kind:3,startTimeUnixNano:U(),attributes:r,events:[],links:[],status:{code:0}}}function he(t,e,n){var r=t;return e&&(r.status=e),r.endTimeUnixNano=null!=n?String(Math.round(parseInt(r.startTimeUnixNano)+n)):U(),r}function me(t,e,n,r){var i=void 0,o=void 0;"string"==typeof n?i=n:Array.isArray(n)&&(o=n),t.events.push({name:e,timeUnixNano:null!=i?i:U(),attributes:null!=o?o:[]})}function ye(t,n,r){var i=function(t){return t?Array.isArray(t)?function(e){return[].concat(k(t),[e]).join(".")}:function(e){return"".concat(t,".").concat(e)}:function(t){return t}}(r);try{var o=J(n);o.username&&(o.username="REDACTED"),o.password&&(o.password="REDACTED");var a=rt.urlAttributeScrubber(_(_(_(_(_(_({},Mt,o.href),"url.path",o.pathname),"url.domain",o.hostname),"url.scheme",o.protocol.replace(":","")),"url.fragment",o.hash?o.hash.replace("#",""):void 0),"url.query",o.search?o.search.replace("?",""):void 0));Object.entries(a).forEach((function(e){var n=x(e,2),r=n[0],o=n[1];void 0!==o&&Kt(t,i(r),o)}))}catch(r){rt.urlAttributeScrubber===e&&Kt(t,i(Mt),String(n))}}var ge=null!=g&&"function"==typeof g.getItem&&"function"==typeof g.setItem;var be="d0_tab",Te=null;function Ee(){if(ge)try{var t=function(t){return ge&&g?g.getItem(t):null}(be);if(t)return void(Te=t);Te=T(8),function(t,e){ge&&g&&g.setItem(t,e)}(be,Te)}catch(t){o("Failed to record tab ID information",t)}else u("Storage API is not available and tab tracking is therefore not supported.")}function we(t,e){var n,r,i,o,a;void 0===t.find((function(t){return t.key===Ot}))&&Kt(t,Ot,T(8));for(var u=0;u<rt.signalAttributes.length;u++)t.push(rt.signalAttributes[u]);ye(t,null!==(n=null!==(r=null==e?void 0:e.url)&&void 0!==r?r:null==f?void 0:f.location.href)&&void 0!==n?n:X,"page"),ie&&Kt(t,"session.id",ie),Te&&Kt(t,"browser.tab.id",Te),Kt(t,"browser.window.width",null!==(i=null==f?void 0:f.innerWidth)&&void 0!==i?i:X),Kt(t,"browser.window.height",null!==(o=null==f?void 0:f.innerHeight)&&void 0!==o?o:X);var s=null==v||null===(a=v.connection)||void 0===a?void 0:a.effectiveType;s&&Kt(t,"network.connection.subtype",s)}var Se,Ae=0,Oe=0,Ie={},Ne=!1;function Le(){Ne=!0}function _e(t,e){t&&Ce("string"==typeof t?{message:t,opts:e}:{message:t.message,type:t.name,stack:t.stack,opts:e})}function Ce(t){var e=t.message,n=t.type,r=t.stack,i=t.opts;if(e&&!(Ae>100)&&!function(t){return!t||it(rt.ignoreErrorMessages,t)}(e)){Oe>=20&&(Ie={},Oe=0);var o=(e=String(e).substring(0,300))+(r=function(t){return String(t||"").split("\n").slice(0,30).join("\n")}(r))+(null==f?void 0:f.location.href),a=Ie[o];if(a)a.seenCount++;else{var u=[];Kt(u,At,Ut.ERROR),Kt(u,Pt,e),n&&Kt(u,Dt,n),r&&Kt(u,jt,r),null!=i&&i.componentStack&&Kt(u,"exception.component_stack",null==i?void 0:i.componentStack.substring(0,2048)),we(u),a={seenCount:1,transmittedCount:0,log:{timeUnixNano:U(),attributes:u,severityNumber:Ft.ERROR,severityText:"ERROR",body:{stringValue:e}}},Ie[o]=a,Oe++}!function(){if(Se)return;Se=setTimeout(Re,1e3)}()}}function Re(){for(var t in Se&&(clearTimeout(Se),Se=null),Ie)if(l(Ie,t)){var e=Ie[t];e.seenCount>e.transmittedCount&&(yt(e.log),Ae++)}Ie={},Oe=0}var xe=-1,ke=function(t){addEventListener("pageshow",(function(e){e.persisted&&(xe=e.timeStamp,t(e))}),!0)},Pe=function(t,e,n,r){var i,o;return function(a){e.value>=0&&(a||r)&&(((o=e.value-(null!=i?i:0))||void 0===i)&&(i=e.value,e.delta=o,e.rating=function(t,e){return t>e[1]?"poor":t>e[0]?"needs-improvement":"good"}(e.value,n),t(e)))}},De=function(t){requestAnimationFrame((function(){return requestAnimationFrame((function(){return t()}))}))},je=function(){var t=performance.getEntriesByType("navigation")[0];if(t&&t.responseStart>0&&t.responseStart<performance.now())return t},Me=function(){var t,e=je();return null!==(t=null==e?void 0:e.activationStart)&&void 0!==t?t:0},Ue=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,n=je(),r="navigate";return xe>=0?r="back-forward-cache":n&&(document.prerendering||Me()>0?r="prerender":document.wasDiscarded?r="restore":n.type&&(r=n.type.replace(/_/g,"-"))),{name:t,value:e,rating:"good",delta:0,entries:[],id:"v5-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:r}},Fe=new WeakMap;function Ve(t,e){return Fe.get(t)||Fe.set(t,new e),Fe.get(t)}var Be,We=function(){return N((function t(){I(this,t),_(this,"t",void 0),_(this,"i",0),_(this,"o",[])}),[{key:"h",value:function(t){var e;if(!t.hadRecentInput){var n=this.o[0],r=this.o.at(-1);this.i&&n&&r&&t.startTime-r.startTime<1e3&&t.startTime-n.startTime<5e3?(this.i+=t.value,this.o.push(t)):(this.i=t.value,this.o=[t]),null===(e=this.t)||void 0===e||e.call(this,t)}}}])}(),qe=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};try{if(PerformanceObserver.supportedEntryTypes.includes(t)){var r=new PerformanceObserver((function(t){Promise.resolve().then((function(){e(t.getEntries())}))}));return r.observe(function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?C(Object(n),!0).forEach((function(e){_(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({type:t,buffered:!0},n)),r}}catch(t){}},He=function(t){var e=!1;return function(){e||(t(),e=!0)}},ze=-1,Ge=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},Ke=function(t){"hidden"===document.visibilityState&&ze>-1&&(ze="visibilitychange"===t.type?t.timeStamp:0,Ye())},Ze=function(){addEventListener("visibilitychange",Ke,!0),addEventListener("prerenderingchange",Ke,!0)},Ye=function(){removeEventListener("visibilitychange",Ke,!0),removeEventListener("prerenderingchange",Ke,!0)},Qe=function(){if(ze<0){var t,e=Me(),n=document.prerendering||null===(t=globalThis.performance.getEntriesByType("visibility-state").filter((function(t){return"hidden"===t.name&&t.startTime>e}))[0])||void 0===t?void 0:t.startTime;ze=null!=n?n:Ge(),Ze(),ke((function(){setTimeout((function(){ze=Ge(),Ze()}))}))}return{get firstHiddenTime(){return ze}}},Xe=function(t){document.prerendering?addEventListener("prerenderingchange",(function(){return t()}),!0):t()},$e=[1800,3e3],Je=[.1,.25],tn=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Xe((function(){var n,r=Qe(),i=Ue("FCP"),o=qe("paint",(function(t){var e,a=L(t);try{for(a.s();!(e=a.n()).done;){var u=e.value;"first-contentful-paint"===u.name&&(o.disconnect(),u.startTime<r.firstHiddenTime&&(i.value=Math.max(u.startTime-Me(),0),i.entries.push(u),n(!0)))}}catch(t){a.e(t)}finally{a.f()}}));o&&(n=Pe(t,i,$e,e.reportAllChanges),ke((function(r){i=Ue("FCP"),n=Pe(t,i,$e,e.reportAllChanges),De((function(){i.value=performance.now()-r.timeStamp,n(!0)}))})))}))}(He((function(){var n,r=Ue("CLS",0),i=Ve(e,We),o=function(t){var e,o=L(t);try{for(o.s();!(e=o.n()).done;){var a=e.value;i.h(a)}}catch(t){o.e(t)}finally{o.f()}i.i>r.value&&(r.value=i.i,r.entries=i.o,n())},a=qe("layout-shift",o);a&&(n=Pe(t,r,Je,e.reportAllChanges),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&(o(a.takeRecords()),n(!0))})),ke((function(){i.i=0,r=Ue("CLS",0),n=Pe(t,r,Je,e.reportAllChanges),De((function(){return n()}))})),setTimeout(n))})))},en=0,nn=1/0,rn=0,on=function(t){var e,n=L(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;r.interactionId&&(nn=Math.min(nn,r.interactionId),rn=Math.max(rn,r.interactionId),en=rn?(rn-nn)/7+1:0)}}catch(t){n.e(t)}finally{n.f()}},an=function(){var t;return Be?en:null!==(t=performance.interactionCount)&&void 0!==t?t:0},un=0,sn=function(){return N((function t(){I(this,t),_(this,"u",[]),_(this,"l",new Map),_(this,"m",void 0),_(this,"v",void 0)}),[{key:"p",value:function(){un=an(),this.u.length=0,this.l.clear()}},{key:"P",value:function(){var t=Math.min(this.u.length-1,Math.floor((an()-un)/50));return this.u[t]}},{key:"h",value:function(t){var e;if(null!==(e=this.m)&&void 0!==e&&e.call(this,t),t.interactionId||"first-input"===t.entryType){var n=this.u.at(-1),r=this.l.get(t.interactionId);if(r||this.u.length<10||t.duration>n.T){var i;if(r?t.duration>r.T?(r.entries=[t],r.T=t.duration):t.duration===r.T&&t.startTime===r.entries[0].startTime&&r.entries.push(t):(r={id:t.interactionId,entries:[t],T:t.duration},this.l.set(r.id,r),this.u.push(r)),this.u.sort((function(t,e){return e.T-t.T})),this.u.length>10){var o,a=L(this.u.splice(10));try{for(a.s();!(o=a.n()).done;){var u=o.value;this.l.delete(u.id)}}catch(t){a.e(t)}finally{a.f()}}null===(i=this.v)||void 0===i||i.call(this,r)}}}}])}(),cn=function(t){var e=globalThis.requestIdleCallback||setTimeout;"hidden"===document.visibilityState?t():(t=He(t),document.addEventListener("visibilitychange",t,{once:!0}),e((function(){t(),document.removeEventListener("visibilitychange",t)})))},ln=[200,500],fn=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};globalThis.PerformanceEventTiming&&"interactionId"in PerformanceEventTiming.prototype&&Xe((function(){var n;"interactionCount"in performance||Be||(Be=qe("event",on,{type:"event",buffered:!0,durationThreshold:0}));var r,i=Ue("INP"),o=Ve(e,sn),a=function(t){cn((function(){var e,n=L(t);try{for(n.s();!(e=n.n()).done;){var a=e.value;o.h(a)}}catch(t){n.e(t)}finally{n.f()}var u=o.P();u&&u.T!==i.value&&(i.value=u.T,i.entries=u.entries,r())}))},u=qe("event",a,{durationThreshold:null!==(n=e.durationThreshold)&&void 0!==n?n:40});r=Pe(t,i,ln,e.reportAllChanges),u&&(u.observe({type:"first-input",buffered:!0}),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&(a(u.takeRecords()),r(!0))})),ke((function(){o.p(),i=Ue("INP"),r=Pe(t,i,ln,e.reportAllChanges)})))}))},dn=function(){return N((function t(){I(this,t),_(this,"m",void 0)}),[{key:"h",value:function(t){var e;null===(e=this.m)||void 0===e||e.call(this,t)}}])}(),vn=[2500,4e3];function pn(){!function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Xe((function(){var n,r=Qe(),i=Ue("LCP"),o=Ve(e,dn),a=function(t){e.reportAllChanges||(t=t.slice(-1));var a,u=L(t);try{for(u.s();!(a=u.n()).done;){var s=a.value;o.h(s),s.startTime<r.firstHiddenTime&&(i.value=Math.max(s.startTime-Me(),0),i.entries=[s],n())}}catch(t){u.e(t)}finally{u.f()}},u=qe("largest-contentful-paint",a);if(u){n=Pe(t,i,vn,e.reportAllChanges);for(var s=He((function(){a(u.takeRecords()),u.disconnect(),n(!0)})),c=0,l=["keydown","click","visibilitychange"];c<l.length;c++)addEventListener(l[c],(function(){return cn(s)}),{capture:!0,once:!0});ke((function(r){i=Ue("LCP"),n=Pe(t,i,vn,e.reportAllChanges),De((function(){i.value=performance.now()-r.timeStamp,n(!0)}))}))}}))}(hn,{reportAllChanges:!0}),fn(hn,{reportAllChanges:!0}),tn(hn,{reportAllChanges:!0})}function hn(t){var e=[];Kt(e,At,Ut.WEB_VITAL);var n=[];Kt(n,"name",t.name),Kt(n,"value",$(t.value)),Kt(n,"delta",$(t.delta));var r={timeUnixNano:U(),attributes:e,severityNumber:Ft.INFO,severityText:"INFO",body:{kvlistValue:{values:n}}};we(r.attributes),yt(r)}var mn="Unhandled promise rejection: ",yn="<unavailable because Promise wasn't rejected with an Error object>";function gn(t){null==t.reason?_e({message:mn+"<no reason defined>",stack:yn}):"string"==typeof t.reason.message?_e({message:mn+t.reason.message,stack:"string"==typeof t.reason.stack?t.reason.stack:yn}):"object"!==D(t.reason)&&_e({message:mn+t.reason,stack:yn})}var bn="__dash0OriginalFunctions";function Tn(t,e){for(var n=t[bn],r=0;r<n.length;r++){if(En(n[r].valuesForEqualityCheck,e))return r}return-1}function En(t,e){if(t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}function wn(t,e,n,r,i){return function(t,e,n){if(!t)return e;var r=t[bn]=t[bn]||[],i=Tn(t,n);return-1!==i?r[i].wrappedFunction:(r.push({wrappedFunction:e,valuesForEqualityCheck:n}),e)}(t,e,Sn(n,r,i))}function Sn(t,e,n){return[t,e,An(n)]}function An(t){return null!=t&&("object"===D(t)?Boolean(t.capture):Boolean(t))}function On(t,e,n,r,i){return function(t,e,n){var r=null==t?void 0:t[bn];if(null==r)return n;var i=Tn(t,e);if(-1===i)return n;var o=r[i];return r.splice(i,1),o.wrappedFunction}(t,Sn(e,n,r),i)}function In(){rt.wrapEventHandlers&&function(t){if(!t||"function"!=typeof t.prototype.addEventListener||"function"!=typeof t.prototype.removeEventListener)return;var e=t.prototype.addEventListener,n=t.prototype.removeEventListener;t.prototype.addEventListener=function(t,n,r){if("function"!=typeof n)return e.apply(this,arguments);for(var i=new Array(arguments.length),o=0;o<arguments.length;o++)i[o]=arguments[o];return i[1]=function(){try{return n.apply(this,arguments)}catch(t){throw reportError(t),Le(),t}},i[1]=wn(this,i[1],t,n,r),e.apply(this,i)},t.prototype.removeEventListener=function(t,e,r){if("function"!=typeof e)return n.apply(this,arguments);for(var i=new Array(arguments.length),o=0;o<arguments.length;o++)i[o]=arguments[o];return i[1]=On(this,t,e,r,e),n.apply(this,i)}}(null==f?void 0:f.EventTarget)}function Nn(t){var e=null==f?void 0:f[t];"function"==typeof e&&(f[t]=function(t){for(var n=new Array(arguments.length),r=0;r<arguments.length;r++)n[r]=arguments[r];return n[0]=function(t){if("function"!=typeof t)return t;return function(){try{return t.apply(this,arguments)}catch(t){throw reportError(t),Le(),t}}}(t),e.apply(this,n)})}function Ln(){!function(){if(f){var t=f.onerror;f.onerror=function(e,n,r,i,o){if(Ne)return Ne=!1,"function"==typeof t?t.apply(this,arguments):void 0;var a=o&&o.stack;return a||(a="at "+n+" "+r,null!=i&&(a+=":"+i)),Ce({message:String(e),stack:a}),"function"==typeof t?t.apply(this,arguments):void 0}}}(),"function"==typeof(null==f?void 0:f.addEventListener)&&f.addEventListener("unhandledrejection",gn),In(),function(){if(rt.wrapTimers){if(W)return void o("We discovered a usage of Zone.js. In order to avoid any incompatibility issues timer wrapping is not going to be enabled.");Nn("setTimeout"),Nn("setInterval")}}()}var _n=["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"];function Cn(t){return _n.includes(t)}function Rn(t,e){var n=0!==e.startTime;xn(t,K.FETCH_START,e,n),xn(t,K.DOMAIN_LOOKUP_START,e,n),xn(t,K.DOMAIN_LOOKUP_END,e,n),xn(t,K.CONNECT_START,e,n),xn(t,K.SECURE_CONNECTION_START,e,n),xn(t,K.CONNECT_END,e,n),xn(t,K.REQUEST_START,e,n),xn(t,K.RESPONSE_START,e,n),xn(t,K.RESPONSE_END,e,n)}function xn(t,e,n){var r,i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];!(e in n)||"number"!=typeof n[e]||i&&0===n[e]||me(t,e,(r=n[e],String(Math.round(1e6*(r+V())))))}function kn(t,e){var n=e.encodedBodySize;null!=n&&Kt(t.attributes,"http.response.body.size",n)}function Pn(t){return function(){var e=O(R().mark((function e(n,r){var i,o,a,s,c,l,f,d,v,p,h,m,y,g;return R().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=r?Object.assign({},r):r,s=null,null!==(i=a)&&void 0!==i&&i.body&&(s=a.body,a.body=void 0),c=new Request(n,a),s&&a&&(a.body=s),!at(l=c.url)){e.next=9;break}return u("Not creating span for fetch call because the url is ignored, URL: ".concat(l)),e.abrupt("return",t(n instanceof Request?c:n,r));case 9:return f=null!==(o=c.method)&&void 0!==o?o:"GET",d=Cn(f),v=Cn(f.toUpperCase()),p=v?f.toUpperCase():"_OTHER",we((h=pe("HTTP ".concat(p))).attributes),ye(h.attributes,l),Dn(n,r),Kt(h.attributes,"http.request.method",p),d||Kt(h.attributes,"http.request.method_original",f),(tt(l)||it(rt.propagateTraceHeadersCorsURLs,l))&&(null!==(m=a)&&void 0!==m&&m.headers?(a.headers=new Headers(a.headers),$t(a.headers.append,a.headers,h)):n instanceof Request?$t(c.headers.append,c.headers,h):(a||(a={}),a.headers=new Headers,$t(a.headers.append,a.headers,h))),jn(c.headers,h,(function(t){return e=t,"".concat("http.request.header",".").concat(e.toLowerCase());var e})),(y=Y({resourceMatcher:function(t){var e=t.initiatorType,n=t.name;return("fetch"===e||"xmlhttprequest"===e)&&n===J(l).href},maxWaitForResourceMillis:rt.maxWaitForResourceTimingsMillis,maxToleranceForResourceTimingsMillis:rt.maxToleranceForResourceTimingsMillis,onEnd:function(t){var e=t.duration,n=t.resource;n&&(Rn(h,n),kn(h,n)),gt(he(h,void 0,1e6*e))}})).start(),e.prev=24,e.next=27,t(n instanceof Request?c:n,a);case 27:return g=e.sent,Mn(h,g),Un(g).then((function(){return y.end()})).catch((function(t){y.cancel(),Fn(h,t)})),e.abrupt("return",g);case 33:throw e.prev=33,e.t0=e.catch(24),y.cancel(),Fn(h,e.t0),e.t0;case 38:case"end":return e.stop()}}),e,null,[[24,33]])})));return function(t,n){return e.apply(this,arguments)}}()}function Dn(t,e,n){try{return void 0}catch(n){u("failed to analyze request for GraphQL insights",n,t,e)}}function jn(t,e,n){try{t.forEach((function(t,r){rt.headersToCapture.some((function(t){return t.test(r)}))&&Kt(e.attributes,n(r),t)}))}catch(t){u("unable to capture http headers due to CORS policy")}}function Mn(t,e){var n=e.status;!function(t,e,n){t.status={code:e,message:n}}(t,n>=200&&n<400?0:2),0===n&&Kt(t.attributes,"error.type",e.type),Kt(t.attributes,"http.response.status_code",String(n)),jn(e.headers,t,(function(t){return e=t,"".concat("http.response.header",".").concat(e.toLowerCase());var e}))}function Un(t){return new Promise((function(e){var n=t.clone().body;if(!n)return e();var r=n.getReader(),i=function(){var t=O(R().mark((function t(){var n;return R().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,r.read();case 2:if(n=t.sent,!n.done){t.next=6;break}return t.abrupt("return",e());case 6:return t.abrupt("return",i());case 7:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();return i()}))}function Fn(t,e){!function(t,e){var n=[];"string"==typeof e?Kt(n,Pt,e):e&&(e.code?Kt(n,Dt,e.code.toString()):e.name&&Kt(n,Dt,e.name),e.message&&Kt(n,Pt,e.message),e.stack&&Kt(n,jt,e.stack),me(t,"exception",n))}(t,e),gt(he(t,function(t){return{code:2,message:t&&"object"===D(t)&&"message"in t?t.message:String(t)}}(e),void 0))}function Vn(t,e,n,r){var i,o,a=function(t){var e,n,r;return t&&null!==(e=null===(n=(r=rt.pageViewInstrumentation).generateMetadata)||void 0===n?void 0:n.call(r,t))&&void 0!==e?e:{}}(e),u=[];Kt(u,At,Ut.PAGE_VIEW),a.attributes&&Object.entries(a.attributes).forEach((function(t){var e=x(t,2),n=e[0],r=e[1];return Kt(u,n,r)})),we(u,{url:e});var s=[];Kt(s,"title",null!==(i=null!==(o=a.title)&&void 0!==o?o:null==d?void 0:d.title)&&void 0!==i?i:X),null!=d&&d.referrer&&Kt(s,"referrer",d.referrer),Kt(s,"type",n?Bt:Vt),Kt(s,"change_state",r?qt:Wt);var c={timeUnixNano:t,attributes:u,severityNumber:Ft.INFO,severityText:"INFO",body:{kvlistValue:{values:s}}},l=Xt();l&&(c.traceId=l.traceId,c.spanId=l.spanId),yt(c)}function Bn(){var t=null==f?void 0:f.performance.getEntriesByType("navigation")[0];if(t){var e=[];Kt(e,At,Ut.NAVIGATION_TIMING);var n=[];Kt(n,"name",t.name),Wn(n,t,"responseStatus"),Wn(n,t,"fetchStart"),Wn(n,t,"requestStart"),Wn(n,t,"responseStart"),Wn(n,t,"domInteractive"),Wn(n,t,"domContentLoadedEventEnd"),Wn(n,t,"domComplete"),Wn(n,t,"loadEventEnd"),Wn(n,t,"transferSize"),Wn(n,t,"encodedBodySize"),Wn(n,t,"decodedBodySize");var r={timeUnixNano:qn(),attributes:e,severityNumber:Ft.INFO,severityText:"INFO",body:{kvlistValue:{values:n}}};we(r.attributes);var i=Xt();i&&(r.traceId=i.traceId,r.spanId=i.spanId),yt(r)}else u("Navigation timings not available. Cannot emit navigation timing log")}function Wn(t,e,n){var r=e[n];"number"!=typeof r||isNaN(r)||Kt(t,n,Number.isInteger(r)?r:$(r))}function qn(){return F(Math.round(V()))}var Hn={},zn=!1,Gn=!1;function Kn(){Yn(null==f?void 0:f.location.href)}function Zn(t){Yn(t.newURL)}function Yn(t,e){var n;if(t)try{var r=new URL(t,null==f?void 0:f.location.href);((n=r).pathname!==Hn.path||Gn&&n.search!==Hn.search||zn&&n.hash!==Hn.hash)&&(Qn(r),Vn(U(),r,!0,Boolean(e)))}catch(t){u("Failed to handle url change",t)}}function Qn(t){Hn.path=t.pathname,Hn.search=t.search,Hn.hash=t.hash}function Xn(){!function(){try{Vn(qn(),null!=f&&f.location.href?new URL(null==f?void 0:f.location.href):void 0)}catch(t){a("Failed to transmit initial page view event",t)}if("complete"===(null==d?void 0:d.readyState))return Bn();f&&E(f,"load",(function(){setTimeout(Bn,0)}))}(),function(){var t,e,n,r;if(f&&f.history){if(rt.pageViewInstrumentation.trackVirtualPageViews){Gn=null!==(t=null===(e=rt.pageViewInstrumentation.includeParts)||void 0===e?void 0:e.includes("SEARCH"))&&void 0!==t&&t,zn=null!==(n=null===(r=rt.pageViewInstrumentation.includeParts)||void 0===r?void 0:r.includes("HASH"))&&void 0!==n&&n,nt(f.history,"replaceState",(function(t){return function(e,n,r){return Yn(r?String(r):void 0,!0),t.apply(this,[e,n,r])}})),nt(f.history,"pushState",(function(t){return function(e,n,r){return Yn(r?String(r):void 0),t.apply(this,[e,n,r])}})),f.addEventListener("hashchange",Zn),f.addEventListener("popstate",Kn);try{Qn(new URL(f.location.href))}catch(t){}}}else u("Browser does not support history API, skipping instrumentation")}()}var $n=function(t){if("object"===D(t)&&null!==t){if("function"==typeof Object.getPrototypeOf){var e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1},Jn=function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return e.reduce((function(t,e){if(void 0===e)return t;if(Array.isArray(e))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(e).forEach((function(n){["__proto__","constructor","prototype"].includes(n)||(Array.isArray(t[n])&&Array.isArray(e[n])?t[n]=Jn.options.mergeArrays?Jn.options.uniqueArrayItems?Array.from(new Set(t[n].concat(e[n]))):[].concat(k(t[n]),k(e[n])):e[n]:$n(t[n])&&$n(e[n])?t[n]=Jn(t[n],e[n]):!$n(t[n])&&$n(e[n])?t[n]=Jn(e[n],void 0):t[n]=void 0===e[n]?Jn.options.allowUndefinedOverrides?e[n]:t[n]:e[n])})),t}),{})},tr={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};Jn.options=tr,Jn.withOptions=function(t){Jn.options=Object.assign(Object.assign({},tr),t);for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var i=Jn.apply(void 0,n);return Jn.options=tr,i};var er=!1;function nr(t,e){var n=e.enabledInstrumentations;return!n||n.includes(t)}var rr={init:function(t){er?u("Dash0 SDK is being reinitialized, skipping ..."):null!=f?"function"==typeof m&&h&&h.getEntriesByType?(rt.endpoints=t.endpoint instanceof Array?t.endpoint:[t.endpoint],0!==rt.endpoints.length?(Object.assign(rt,Jn(rt,function(t,e){var n,r={},i=L(e);try{for(i.s();!(n=i.n()).done;){var o=n.value;o in t&&(r[o]=t[o])}}catch(t){i.e(t)}finally{i.f()}return r}(t,["ignoreUrls","ignoreErrorMessages","wrapEventHandlers","wrapTimers","propagateTraceHeadersCorsURLs","maxWaitForResourceTimingsMillis","maxToleranceForResourceTimingsMillis","headersToCapture","urlAttributeScrubber","pageViewInstrumentation"]))),function(t){Kt(rt.resource.attributes,bt,t.serviceName),t.serviceVersion&&Kt(rt.resource.attributes,Tt,t.serviceVersion);var e=function(t){if(t.environment)return t.environment;try{var e;return null===(e=process)||void 0===e||null===(e=e.env)||void 0===e?void 0:e.NEXT_PUBLIC_VERCEL_ENV}catch(t){return}}(t);e&&Kt(rt.resource.attributes,Et,e);var n=function(t){if(t.deploymentName)return t.deploymentName;try{var e;return null===(e=process)||void 0===e||null===(e=e.env)||void 0===e?void 0:e.NEXT_PUBLIC_VERCEL_TARGET_ENV}catch(t){return}}(t);n&&Kt(rt.resource.attributes,wt,n);var r=function(t){if(t.deploymentId)return t.deploymentId;try{var e;return null===(e=process)||void 0===e||null===(e=e.env)||void 0===e?void 0:e.NEXT_PUBLIC_VERCEL_BRANCH_URL}catch(t){return}}(t);r&&Kt(rt.resource.attributes,St,r)}(t),function(t){var e;Kt(rt.signalAttributes,It,T(16)),Kt(rt.signalAttributes,Nt,null!==(e=null==v?void 0:v.userAgent)&&void 0!==e?e:X),t.additionalSignalAttributes&&Object.entries(t.additionalSignalAttributes).forEach((function(t){var e=x(t,2),n=e[0],r=e[1];Kt(rt.signalAttributes,n,r)}))}(t),Ee(),oe(t.sessionInactivityTimeoutMillis,t.sessionTerminationTimeoutMillis),nr("@dash0/navigation",t)&&Xn(),nr("@dash0/web-vitals",t)&&pn(),nr("@dash0/error",t)&&Ln(),nr("@dash0/fetch",t)&&(f&&f.fetch&&f.Request?nt(f,"fetch",Pn):u("Browser does not support the Fetch API, skipping instrumentation")),er=!0):o("No telemetry endpoint configured. Aborting Dash0 Web SDK initialization process.")):u("Stopping Dash0 Web SDK initialization. This browser does not support the necessary APIs"):u("Looks like we are not running in a browser context. Stopping Dash0 Web SDK initialization.")},debug:function(){u("Dash0 Web SDK configuration state:",rt)},identify:function(t,e){Zt(rt.signalAttributes,Lt),null!=t&&Kt(rt.signalAttributes,Lt,t),Zt(rt.signalAttributes,_t),null!=(null==e?void 0:e.name)&&Kt(rt.signalAttributes,_t,e.name),Zt(rt.signalAttributes,Ct),null!=(null==e?void 0:e.fullName)&&Kt(rt.signalAttributes,Ct,e.fullName),Zt(rt.signalAttributes,Rt),null!=(null==e?void 0:e.email)&&Kt(rt.signalAttributes,Rt,e.email),Zt(rt.signalAttributes,xt),null!=(null==e?void 0:e.hash)&&Kt(rt.signalAttributes,xt,e.hash),Zt(rt.signalAttributes,kt),null!=(null==e?void 0:e.roles)&&Kt(rt.signalAttributes,kt,e.roles)},terminateSession:function(){if(w)try{!function(t){w&&y&&y.removeItem(t)}(ee)}catch(t){i("Failed to terminate session",t)}},reportError:function(t,e){_e(t,e)},addSignalAttribute:function(t,e){Kt(rt.signalAttributes,t,e)},removeSignalAttribute:function(t){Zt(rt.signalAttributes,t)},setActiveLogLevel:function(t){var e;r=null!==(e=n[t])&&void 0!==e?e:n.warn},sendEvent:function(t,e){var n;if(Object.values(Ut).includes(t))o("Unable to send custom event ".concat(t,". You are not allowed to use an internal event name while sending a custom event. Dropping event..."));else{var r=[];we(r),Object.entries(null!==(n=null==e?void 0:e.attributes)&&void 0!==n?n:{}).forEach((function(t){var e=x(t,2),n=e[0],i=e[1];return Kt(r,n,i)})),Kt(r,At,t),null!=e&&e.title&&Kt(r,"dash0.web.event.title",e.title),yt({timeUnixNano:null!=(null==e?void 0:e.timestamp)?F(e.timestamp):U(),attributes:r,body:zt(null==e?void 0:e.data),severityText:null==e?void 0:e.severity,severityNumber:null!=e&&e.severity?Ft[e.severity]:void 0})}}};function ir(t){var e=t[0],n=rr[e];if(n){for(var r=[],i=1;i<t.length;i++)r.push(t[i]);n.apply(null,r)}else o("Unsupported Dash0 Web SDK api: ",t[0])}!function(){u("".concat("Initializing Dash0 Web SDK"," (via Script)"));var t=f.dash0;if(!t)return void o("global 'dash0' not found. Did you use the correct Dash0 Web SDK initializer?");if(!t._q)return void o("Dash0 Web SDK command queue not defined. Did you add the script tag multiple times to your website?");(function(t){for(var e=0,n=t.length;e<n;e++)ir(t[e])})(t._q),f.dash0=function(){return ir(arguments)}}()}();
1
+ !function(){"use strict";function t(){}function e(t){return t}var n={debug:0,info:1,warn:2,error:3},r=n.warn;var i=s("info"),o=s("warn"),a=s("error"),u=s("debug");function s(e){if("undefined"!=typeof console&&console[e]&&"function"==typeof console[e].apply){var i=n[e];return function(){i>=r&&console[e].apply(console,arguments)}}return t}var c=Object.prototype.hasOwnProperty;function l(t,e){return c.call(t,e)}var f="undefined"!=typeof window?window:void 0,d=null==f?void 0:f.document,v=null==f?void 0:f.navigator,p="undefined"!=typeof location?location:void 0,h=(null==f?void 0:f.performance)||(null==f?void 0:f.webkitPerformance)||(null==f?void 0:f.msPerformance)||(null==f?void 0:f.mozPerformance);null==f||f.encodeURIComponent;var y=null==f?void 0:f.fetch,m=function(){try{var t;return null!==(t=null==f?void 0:f.localStorage)&&void 0!==t?t:null}catch(t){return null}}(),g=function(){try{var t;return null!==(t=null==f?void 0:f.sessionStorage)&&void 0!==t?t:null}catch(t){return null}}(),b=Array(32);function T(t){for(var e=0;e<2*t;e++)b[e]=Math.floor(16*Math.random())+48,b[e]>=58&&(b[e]+=39);return String.fromCharCode.apply(null,b.slice(0,2*t))}function E(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent&&t.attachEvent("on"+e,n)}var w=null!=m&&"function"==typeof m.getItem&&"function"==typeof m.setItem;function S(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function A(t,e,n,r,i,o,a){try{var u=t[o](a),s=u.value}catch(t){return void n(t)}u.done?e(s):Promise.resolve(s).then(r,i)}function O(t){return function(){var e=this,n=arguments;return new Promise((function(r,i){var o=t.apply(e,n);function a(t){A(o,r,i,a,u,"next",t)}function u(t){A(o,r,i,a,u,"throw",t)}a(void 0)}))}}function I(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function N(t,e,n){return e&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,k(r.key),r)}}(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t}function L(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=j(t))||e){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}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 o,a=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){u=!0,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(u)throw o}}}}function C(t,e,n){return(e=k(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function _(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function R(){R=function(){return e};var t,e={},n=Object.prototype,r=n.hasOwnProperty,i=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",u=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function c(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,n){return t[e]=n}}function l(t,e,n,r){var o=e&&e.prototype instanceof m?e:m,a=Object.create(o.prototype),u=new _(r||[]);return i(a,"_invoke",{value:I(t,n,u)}),a}function f(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var d="suspendedStart",v="suspendedYield",p="executing",h="completed",y={};function m(){}function g(){}function b(){}var T={};c(T,a,(function(){return this}));var E=Object.getPrototypeOf,w=E&&E(E(x([])));w&&w!==n&&r.call(w,a)&&(T=w);var S=b.prototype=m.prototype=Object.create(T);function A(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function O(t,e){function n(i,o,a,u){var s=f(t[i],t,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l&&"object"==typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):e.resolve(l).then((function(t){c.value=t,a(c)}),(function(t){return n("throw",t,a,u)}))}u(s.arg)}var o;i(this,"_invoke",{value:function(t,r){function i(){return new e((function(e,i){n(t,r,e,i)}))}return o=o?o.then(i,i):i()}})}function I(e,n,r){var i=d;return function(o,a){if(i===p)throw Error("Generator is already running");if(i===h){if("throw"===o)throw a;return{value:t,done:!0}}for(r.method=o,r.arg=a;;){var u=r.delegate;if(u){var s=N(u,r);if(s){if(s===y)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(i===d)throw i=h,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);i=p;var c=f(e,n,r);if("normal"===c.type){if(i=r.done?h:v,c.arg===y)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(i=h,r.method="throw",r.arg=c.arg)}}}function N(e,n){var r=n.method,i=e.iterator[r];if(i===t)return n.delegate=null,"throw"===r&&e.iterator.return&&(n.method="return",n.arg=t,N(e,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),y;var o=f(i,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,y;var a=o.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,y):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,y)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function C(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function _(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function x(e){if(e||""===e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var i=-1,o=function n(){for(;++i<e.length;)if(r.call(e,i))return n.value=e[i],n.done=!1,n;return n.value=t,n.done=!0,n};return o.next=o}}throw new TypeError(typeof e+" is not iterable")}return g.prototype=b,i(S,"constructor",{value:b,configurable:!0}),i(b,"constructor",{value:g,configurable:!0}),g.displayName=c(b,s,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,b):(t.__proto__=b,c(t,s,"GeneratorFunction")),t.prototype=Object.create(S),t},e.awrap=function(t){return{__await:t}},A(O.prototype),c(O.prototype,u,(function(){return this})),e.AsyncIterator=O,e.async=function(t,n,r,i,o){void 0===o&&(o=Promise);var a=new O(l(t,n,r,i),o);return e.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},A(S),c(S,s,"Generator"),c(S,a,(function(){return this})),c(S,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},e.values=x,_.prototype={constructor:_,reset:function(e){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(C),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function i(r,i){return u.type="throw",u.arg=e,n.next=r,i&&(n.method="next",n.arg=t),!!i}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],u=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(s&&c){if(this.prev<a.catchLoc)return i(a.catchLoc,!0);if(this.prev<a.finallyLoc)return i(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return i(a.catchLoc,!0)}else{if(!c)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return i(a.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,y):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;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},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),C(n),y}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var i=r.arg;C(n)}return i}}throw Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:x(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),y}},e}function x(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,i,o,a,u=[],s=!0,c=!1;try{if(o=(n=n.call(t)).next,0===e);else for(;!(s=(r=o.call(n)).done)&&(u.push(r.value),u.length!==e);s=!0);}catch(t){c=!0,i=t}finally{try{if(!s&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw i}}return u}}(t,e)||j(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(t){return function(t){if(Array.isArray(t))return S(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||j(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(t){var e=function(t,e){if("object"!=typeof t||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==typeof e?e:e+""}function D(t){return D="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},D(t)}function j(t,e){if(t){if("string"==typeof t)return S(t,e);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?S(t,e):void 0}}function U(){return(new Date).getTime()}function M(){var t=V();return t?String(1e6*(h.now()+t)):F(new Date)}function F(t){return"object"===D(t)?F(t.getTime()):String(t)+"000000"}function V(){var t,e=null==h?void 0:h.timeOrigin;"number"!=typeof e&&(e=null==h||null===(t=h.timing)||void 0===t?void 0:t.fetchStart);return e}var B={setTimeout:null==f?void 0:f.setTimeout,clearTimeout:null==f?void 0:f.clearTimeout,setInterval:null==f?void 0:f.setInterval,clearInterval:null==f?void 0:f.clearInterval},H=null!=f&&null!=f.Zone&&null!=f.Zone.root&&"function"==typeof f.Zone.root.run;function W(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return z.apply("setTimeout",arguments)}function q(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return z.apply("setInterval",arguments)}function z(){var t,e=this;if(H)try{var n=Array.prototype.slice.apply(arguments);return f.Zone.root.run(B[e],f,n)}catch(t){o("Failed to execute %s inside of zone (via Zone.js). Falling back to execution inside currently active zone.",e,t)}return null===(t=B[e])||void 0===t?void 0:t.apply(f,arguments)}H&&u("Discovered Zone.js globals. Will attempt to register all timers inside the root Zone.");h&&h.getEntriesByType;var G=h&&"function"==typeof f.PerformanceObserver&&"function"==typeof h.now,K=Object.freeze({CONNECT_END:"connectEnd",CONNECT_START:"connectStart",DECODED_BODY_SIZE:"decodedBodySize",DOM_COMPLETE:"domComplete",DOM_CONTENT_LOADED_EVENT_END:"domContentLoadedEventEnd",DOM_CONTENT_LOADED_EVENT_START:"domContentLoadedEventStart",DOM_INTERACTIVE:"domInteractive",DOMAIN_LOOKUP_END:"domainLookupEnd",DOMAIN_LOOKUP_START:"domainLookupStart",ENCODED_BODY_SIZE:"encodedBodySize",FETCH_START:"fetchStart",LOAD_EVENT_END:"loadEventEnd",LOAD_EVENT_START:"loadEventStart",NAVIGATION_START:"navigationStart",REDIRECT_END:"redirectEnd",REDIRECT_START:"redirectStart",REQUEST_START:"requestStart",RESPONSE_END:"responseEnd",RESPONSE_START:"responseStart",SECURE_CONNECTION_START:"secureConnectionStart",START_TIME:"startTime",UNLOAD_EVENT_END:"unloadEventEnd",UNLOAD_EVENT_START:"unloadEventStart"}),Z=new WeakSet;function Y(e){if(!G)return function(e){var n=0;return{start:function(){n=U()},end:function(){return e({duration:U()-n})},cancel:t}}(e.onEnd);var n,r,i,o,a,u=[];return{start:function(){n=h.now();try{var t,e=null==f?void 0:f.PerformanceObserver;if(e)null===(t=i=new e(c))||void 0===t||t.observe({type:"resource"})}catch(t){}a=W(v,6e5)},end:function(){if(r=h.now(),p(),!X())return s();W((function(){return s()}),Math.min(300,e.maxWaitForResourceMillis)),E(d,"visibilitychange",l),o=W(s,e.maxWaitForResourceMillis)},cancel:v};function s(){v();var t=function(){if(!u.length)return;var t,i,o=u.filter((function(t){return t.responseEnd<=r+e.maxToleranceForResourceTimingsMillis&&!Z.has(t)}));if(!o.length)return;1===o.length&&(t=o[0]);if(!t){var a,s=L(o);try{for(s.s();!(a=s.n()).done;){var c=a.value,l=Math.abs(r-n-c.duration)+Math.abs(c.responseEnd-r);(void 0===i||l<i)&&(i=l,t=c)}}catch(t){s.e(t)}finally{s.f()}}if(!t)return;return Z.add(t),t}();null!=t&&t.duration&&t.duration<864e5?e.onEnd({resource:t,duration:t.duration}):e.onEnd({resource:t,duration:r-n})}function c(t){t.getEntriesByType("resource").filter((function(t){var r=t;return r.startTime>=n&&e.resourceMatcher(r)})).forEach((function(t){return u.push(t)}))}function l(){X()||s()}function v(){!function(){if(i){try{var t;null===(t=i)||void 0===t||t.disconnect()}catch(t){}i=void 0}}(),o&&(clearTimeout(o),o=void 0),p(),function(){if(!d)return;t=d,e="visibilitychange",n=l,t.removeEventListener?t.removeEventListener(e,n,!1):t.detachEvent&&t.detachEvent("on"+e,n);var t,e,n}()}function p(){a&&(clearTimeout(a),a=void 0)}}function X(){return"visible"===(null==d?void 0:d.visibilityState)||"prerender"===(null==d?void 0:d.visibilityState)}var Q="undefined";function $(t){return Math.round(100*t)/100}function J(t){var e;return"string"!=typeof t?t:new URL(t,null!==(e=null==d?void 0:d.baseURI)&&void 0!==e?e:null==p?void 0:p.href)}function tt(t){try{return J(t).origin===("undefined"!=typeof location?location.origin:void 0)}catch(t){return!1}}var et=Symbol.for("INSTRUMENTED_BY_DASH0");function nt(t,e,n){var r=t[e];r?(!0===r[et]&&u("".concat(String(e)," has already been instrumented, skipping")),function(t){t[et]=!0}(r),t[e]=n(r)):u("".concat(String(e)," is not defined, unable to instrument"))}var rt={endpoints:[],resource:{attributes:[]},scope:{name:"dash0-web-sdk",version:"0.16.0",attributes:[]},signalAttributes:[],ignoreUrls:[],ignoreErrorMessages:[],wrapEventHandlers:!0,wrapTimers:!0,propagateTraceHeadersCorsURLs:[],maxWaitForResourceTimingsMillis:1e4,maxToleranceForResourceTimingsMillis:50,headersToCapture:[],urlAttributeScrubber:e,pageViewInstrumentation:{trackVirtualPageViews:!0,includeParts:[]}};function it(t,e){for(var n=0,r=t.length;n<r;n++)if(t[n].test(e))return!0;return!1}var ot="data:";function at(t){return!t||(!(t=String(t))||(null==t.substring||t.substring(0,5).toLowerCase()===ot||(!!function(t){for(var e=t.toLowerCase(),n=0,r=rt.endpoints.length;n<r;n++){var i=rt.endpoints[n];if(e.startsWith(i.url))return!0}return!1}(t)||it(rt.ignoreUrls,t))))}var ut=!1;function st(t){var e,n,r=[];return n=i,ut&&n(),d&&f&&(E(d,"visibilitychange",(function(){"visible"!==d.visibilityState&&n()})),E(f,"pagehide",(function(){ut=!0,n()})),E(f,"beforeunload",(function(){ut=!0,n()}))),{send:function(n){"visible"===(null==d?void 0:d.visibilityState)?(r.push(n),r.length>=15?i():null==e&&(e=W(i,1e3))):t([n])}};function i(){null!=e&&(clearTimeout(e),e=null),r.length>0&&(t(r.slice()),r.length=0)}}function ct(t,e){return lt.apply(this,arguments)}function lt(){return lt=O(R().mark((function e(n,r){var i,a,s,c;return R().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u("Transmitting telemetry to endpoints",r),i=JSON.stringify(r),a=i,s=i.length,c=!1,"undefined"==typeof CompressionStream){e.next=11;break}return e.next=8,ft(i);case 8:a=e.sent,s=a.byteLength,c=!0;case 11:return e.next=13,Promise.all(rt.endpoints.map(function(){var e=O(R().mark((function e(r){var i,u,l;return R().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,(i=new URL(r.url)).pathname=i.pathname+(i.pathname.endsWith("/")?n.substring(1):n),u={"Content-Type":"application/json",Authorization:"Bearer ".concat(r.authToken)},r.dataset&&(u["Dash0-Dataset"]=r.dataset),c&&(u["Content-Encoding"]="gzip"),y){e.next=9;break}return o("Unable to send telemetry, fetch is not defined"),e.abrupt("return");case 9:return e.next=11,y(i,{method:"POST",headers:u,body:a,keepalive:s<=6e4});case 11:(l=e.sent).text().catch(t),l.ok||o("Failed to send telemetry to ".concat(i,": ").concat(l.status," ").concat(l.statusText)),e.next=19;break;case 16:e.prev=16,e.t0=e.catch(0),o("Error sending telemetry to ".concat(r.url).concat(n,":"),e.t0);case 19:case"end":return e.stop()}}),e,null,[[0,16]])})));return function(t){return e.apply(this,arguments)}}()));case 13:case"end":return e.stop()}}),e)}))),lt.apply(this,arguments)}function ft(t){return dt.apply(this,arguments)}function dt(){return(dt=O(R().mark((function t(e){var n,r,i;return R().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=new Blob([e]),r=n.stream(),i=r.pipeThrough(new CompressionStream("gzip")),t.abrupt("return",new Response(i).arrayBuffer());case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var vt,pt=st((function(t){ct("/v1/logs",{resourceLogs:[{resource:rt.resource,scopeLogs:[{scope:rt.scope,logRecords:t}]}]}).catch((function(t){a("Failed to transmit logs",t)}))})),ht=st((function(t){ct("/v1/traces",{resourceSpans:[{resource:rt.resource,scopeSpans:[{scope:rt.scope,spans:t}]}]}).catch((function(t){a("Failed to transmit spans",t)}))}));function yt(){var t,e,n,r,i;return vt||(e=(t={maxCallsPerTenMinutes:4096,maxCallsPerTenSeconds:128}).maxCallsPerTenMinutes,n=t.maxCallsPerTenSeconds,r=0,i=0,q((function(){r=0}),6e5),q((function(){i=0}),1e4),vt=function(){return++r>e||++i>n}),vt()}function mt(t){yt()?u("Transport rate limit. Will not send item.",t):pt.send(t)}function gt(t){yt()?u("Transport rate limit. Will not send item.",t):ht.send(t)}var bt="service.name",Tt="service.version",Et="deployment.environment.name",wt="deployment.name",St="deployment.id",At="event.name",Ot="dash0.web.event.id",It="page.load.id",Nt="user_agent.original",Lt="user.id",Ct="user.name",_t="user.full_name",Rt="user.email",xt="user.hash",Pt="user.roles",kt="exception.message",Dt="exception.type",jt="exception.stacktrace",Ut="url.full",Mt={PAGE_VIEW:"browser.page_view",NAVIGATION_TIMING:"browser.navigation_timing",WEB_VITAL:"browser.web_vital",ERROR:"browser.error"},Ft={UNSPECIFIED:0,TRACE:1,DEBUG:5,INFO:9,WARN:13,ERROR:17,FATAL:21},Vt=0,Bt=1,Ht="pushState",Wt="replaceState",qt=["stringValue","boolValue","intValue","doubleValue","arrayValue","kvlistValue","bytesValue"];function zt(t){if(null!=t){var e={};return Array.isArray(t)?e.arrayValue={values:t.map((function(t){return zt(t)}))}:"string"==typeof t?e.stringValue=t:"number"==typeof t?e.doubleValue=t:"boolean"==typeof t?e.boolValue=t:!function(t){if(null==t||"object"!==D(t))return!1;var e=Object.keys(t);return 1===e.length&&qt.includes(e[0])}(t)?"object"===D(t)&&(e.kvlistValue={values:Object.entries(t).map((function(t){var e=x(t,2);return Gt(e[0],e[1])}))}):e=t,e}}function Gt(t,e){return{key:t,value:zt(e)}}function Kt(t,e,n){e&&t.push(Gt(e,n))}function Zt(t,e){var n=t.findIndex((function(t){return t.key===e}));-1!==n&&t.splice(n,1)}var Yt="traceparent",Xt=/^00-([a-f0-9]{32})-([a-f0-9]{16})-[0-9]{1,2}$/;function Qt(){var t,e,n=((null===(t=Array.from(null!==(e=null==d?void 0:d.getElementsByTagName("meta"))&&void 0!==e?e:[]).find((function(t){var e;return(null===(e=t.getAttribute("name"))||void 0===e?void 0:e.toLowerCase())===Yt})))||void 0===t?void 0:t.content.trim())||"").match(Xt)||function(){var t=h.getEntriesByType("navigation")[0];if(!t)return"";if(!t.serverTiming)return"";return function(t){var e,n=L(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;if(r.name===Yt)return r.description.trim()}}catch(t){n.e(t)}finally{n.f()}return""}(t.serverTiming)}().match(Xt);if(n)return{traceId:n[1],spanId:n[2]}}function $t(t,e,n){t.call(e,"traceparent","00-".concat(n.traceId,"-").concat(n.spanId,"-01"))}function Jt(t,e,n){var r,i,o,a=(r=n.traceId,i=r.substring(0,8),o=r.substring(8,32),"1-".concat(i,"-").concat(o)),u="Root=".concat(a,";Parent=").concat(n.spanId,";Sampled=1");t.call(e,"X-Amzn-Trace-Id",u)}var te=1;function ee(){var t,e;return"".concat((t={ephemeralSession:!w},e=0,t.ephemeralSession&&(e|=te),e.toString(16).padStart(2,"0"))).concat(T(7))}var ne="d0_session",re="#",ie=864e5,oe=null;function ae(t,e){if(!w)return u("Storage API is not available and session tracking is therefore not supported."),void(oe=ee());t||(t=108e5),e||(e=216e5),t=Math.min(t,ie),e=Math.min(e,ie);try{var n=function(t){return w&&m?m.getItem(t):null}(ne),r=function(t){if(!t)return null;var e=t.split(re);if(e.length<3)return null;var n=e[0],r=parseInt(e[1],10),i=parseInt(e[2],10);if(!n||isNaN(r)||isNaN(i))return null;return{id:n,startTime:r,lastActivityTime:i}}(n);r&&!function(t,e,n){var r=U()-e;if(t.lastActivityTime<r)return!1;var i=U()-n;return t.startTime>=i}(r,t,e)&&(r=null),r?r.lastActivityTime=U():r={id:ee(),startTime:U(),lastActivityTime:U()},function(t,e){w&&m&&m.setItem(t,e)}(ne,function(t){return t.id+re+t.startTime+re+t.lastActivityTime}(r)),oe=r.id}catch(t){o("Failed to record session information",t)}}var ue="d042",se=1;function ce(t){var e=0;return t.withoutSession&&(e|=se),e.toString(16).padStart(2,"0")}for(var le=new Uint32Array(256),fe=0;fe<256;fe++){for(var de=fe,ve=0;ve<8;ve++)de=1&de?3988292384^de>>>1:de>>>1;le[fe]=de>>>0}function pe(t){var e=function(t){for(var e=new Uint8Array(t.length/2),n=0;n<t.length;n+=2)e[n/2]=parseInt(t.substring(n,n+2),16);for(var r=4294967295,i=0;i<e.length;i++){var o=e[i];r=r>>>8^le[255&(r^o)]}return(4294967295^r)>>>0}(t).toString(16).padStart(8,"0");return"".concat(e).concat(T(4))}function he(t){var e=function(t){return t?"".concat(ue).concat(ce({withoutSession:!1})).concat(t).concat(T(5)):"".concat(ue).concat(ce({withoutSession:!0})).concat(T(13))}(oe),n=pe(e),r=[];return Kt(r,Ot,n),{traceId:e,spanId:n,name:t,kind:3,startTimeUnixNano:M(),attributes:r,events:[],links:[],status:{code:0}}}function ye(t,e,n){var r=t;return e&&(r.status=e),r.endTimeUnixNano=null!=n?String(Math.round(parseInt(r.startTimeUnixNano)+n)):M(),r}function me(t,e,n,r){var i=void 0,o=void 0;"string"==typeof n?i=n:Array.isArray(n)&&(o=n),t.events.push({name:e,timeUnixNano:null!=i?i:M(),attributes:null!=o?o:[]})}function ge(t,n,r){var i=function(t){return t?Array.isArray(t)?function(e){return[].concat(P(t),[e]).join(".")}:function(e){return"".concat(t,".").concat(e)}:function(t){return t}}(r);try{var o=J(n);o.username&&(o.username="REDACTED"),o.password&&(o.password="REDACTED");var a=rt.urlAttributeScrubber(C(C(C(C(C(C({},Ut,o.href),"url.path",o.pathname),"url.domain",o.hostname),"url.scheme",o.protocol.replace(":","")),"url.fragment",o.hash?o.hash.replace("#",""):void 0),"url.query",o.search?o.search.replace("?",""):void 0));Object.entries(a).forEach((function(e){var n=x(e,2),r=n[0],o=n[1];void 0!==o&&Kt(t,i(r),o)}))}catch(r){rt.urlAttributeScrubber===e&&Kt(t,i(Ut),String(n))}}var be=null!=g&&"function"==typeof g.getItem&&"function"==typeof g.setItem;var Te="d0_tab",Ee=null;function we(){if(be)try{var t=function(t){return be&&g?g.getItem(t):null}(Te);if(t)return void(Ee=t);Ee=T(8),function(t,e){be&&g&&g.setItem(t,e)}(Te,Ee)}catch(t){o("Failed to record tab ID information",t)}else u("Storage API is not available and tab tracking is therefore not supported.")}function Se(t,e){var n,r,i,o,a;void 0===t.find((function(t){return t.key===Ot}))&&Kt(t,Ot,T(8));for(var u=0;u<rt.signalAttributes.length;u++)t.push(rt.signalAttributes[u]);ge(t,null!==(n=null!==(r=null==e?void 0:e.url)&&void 0!==r?r:null==f?void 0:f.location.href)&&void 0!==n?n:Q,"page"),oe&&Kt(t,"session.id",oe),Ee&&Kt(t,"browser.tab.id",Ee),Kt(t,"browser.window.width",null!==(i=null==f?void 0:f.innerWidth)&&void 0!==i?i:Q),Kt(t,"browser.window.height",null!==(o=null==f?void 0:f.innerHeight)&&void 0!==o?o:Q);var s=null==v||null===(a=v.connection)||void 0===a?void 0:a.effectiveType;s&&Kt(t,"network.connection.subtype",s)}var Ae,Oe=0,Ie=0,Ne={},Le=!1;function Ce(){Le=!0}function _e(t,e){t&&Re("string"==typeof t?{message:t,opts:e}:{message:t.message,type:t.name,stack:t.stack,opts:e})}function Re(t){var e=t.message,n=t.type,r=t.stack,i=t.opts;if(e&&!(Oe>100)&&!function(t){return!t||it(rt.ignoreErrorMessages,t)}(e)){Ie>=20&&(Ne={},Ie=0);var o=(e=String(e).substring(0,300))+(r=function(t){return String(t||"").split("\n").slice(0,30).join("\n")}(r))+(null==f?void 0:f.location.href),a=Ne[o];if(a)a.seenCount++;else{var u=[];Kt(u,At,Mt.ERROR),Kt(u,kt,e),n&&Kt(u,Dt,n),r&&Kt(u,jt,r),null!=i&&i.componentStack&&Kt(u,"exception.component_stack",null==i?void 0:i.componentStack.substring(0,2048)),Se(u),a={seenCount:1,transmittedCount:0,log:{timeUnixNano:M(),attributes:u,severityNumber:Ft.ERROR,severityText:"ERROR",body:{stringValue:e}}},Ne[o]=a,Ie++}!function(){if(Ae)return;Ae=setTimeout(xe,1e3)}()}}function xe(){for(var t in Ae&&(clearTimeout(Ae),Ae=null),Ne)if(l(Ne,t)){var e=Ne[t];e.seenCount>e.transmittedCount&&(mt(e.log),Oe++)}Ne={},Ie=0}var Pe=-1,ke=function(t){addEventListener("pageshow",(function(e){e.persisted&&(Pe=e.timeStamp,t(e))}),!0)},De=function(t,e,n,r){var i,o;return function(a){e.value>=0&&(a||r)&&(((o=e.value-(null!=i?i:0))||void 0===i)&&(i=e.value,e.delta=o,e.rating=function(t,e){return t>e[1]?"poor":t>e[0]?"needs-improvement":"good"}(e.value,n),t(e)))}},je=function(t){requestAnimationFrame((function(){return requestAnimationFrame((function(){return t()}))}))},Ue=function(){var t=performance.getEntriesByType("navigation")[0];if(t&&t.responseStart>0&&t.responseStart<performance.now())return t},Me=function(){var t,e=Ue();return null!==(t=null==e?void 0:e.activationStart)&&void 0!==t?t:0},Fe=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1,n=Ue(),r="navigate";return Pe>=0?r="back-forward-cache":n&&(document.prerendering||Me()>0?r="prerender":document.wasDiscarded?r="restore":n.type&&(r=n.type.replace(/_/g,"-"))),{name:t,value:e,rating:"good",delta:0,entries:[],id:"v5-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:r}},Ve=new WeakMap;function Be(t,e){return Ve.get(t)||Ve.set(t,new e),Ve.get(t)}var He,We=function(){return N((function t(){I(this,t),C(this,"t",void 0),C(this,"i",0),C(this,"o",[])}),[{key:"h",value:function(t){var e;if(!t.hadRecentInput){var n=this.o[0],r=this.o.at(-1);this.i&&n&&r&&t.startTime-r.startTime<1e3&&t.startTime-n.startTime<5e3?(this.i+=t.value,this.o.push(t)):(this.i=t.value,this.o=[t]),null===(e=this.t)||void 0===e||e.call(this,t)}}}])}(),qe=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};try{if(PerformanceObserver.supportedEntryTypes.includes(t)){var r=new PerformanceObserver((function(t){Promise.resolve().then((function(){e(t.getEntries())}))}));return r.observe(function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?_(Object(n),!0).forEach((function(e){C(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({type:t,buffered:!0},n)),r}}catch(t){}},ze=function(t){var e=!1;return function(){e||(t(),e=!0)}},Ge=-1,Ke=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},Ze=function(t){"hidden"===document.visibilityState&&Ge>-1&&(Ge="visibilitychange"===t.type?t.timeStamp:0,Xe())},Ye=function(){addEventListener("visibilitychange",Ze,!0),addEventListener("prerenderingchange",Ze,!0)},Xe=function(){removeEventListener("visibilitychange",Ze,!0),removeEventListener("prerenderingchange",Ze,!0)},Qe=function(){if(Ge<0){var t,e=Me(),n=document.prerendering||null===(t=globalThis.performance.getEntriesByType("visibility-state").filter((function(t){return"hidden"===t.name&&t.startTime>e}))[0])||void 0===t?void 0:t.startTime;Ge=null!=n?n:Ke(),Ye(),ke((function(){setTimeout((function(){Ge=Ke(),Ye()}))}))}return{get firstHiddenTime(){return Ge}}},$e=function(t){document.prerendering?addEventListener("prerenderingchange",(function(){return t()}),!0):t()},Je=[1800,3e3],tn=[.1,.25],en=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};$e((function(){var n,r=Qe(),i=Fe("FCP"),o=qe("paint",(function(t){var e,a=L(t);try{for(a.s();!(e=a.n()).done;){var u=e.value;"first-contentful-paint"===u.name&&(o.disconnect(),u.startTime<r.firstHiddenTime&&(i.value=Math.max(u.startTime-Me(),0),i.entries.push(u),n(!0)))}}catch(t){a.e(t)}finally{a.f()}}));o&&(n=De(t,i,Je,e.reportAllChanges),ke((function(r){i=Fe("FCP"),n=De(t,i,Je,e.reportAllChanges),je((function(){i.value=performance.now()-r.timeStamp,n(!0)}))})))}))}(ze((function(){var n,r=Fe("CLS",0),i=Be(e,We),o=function(t){var e,o=L(t);try{for(o.s();!(e=o.n()).done;){var a=e.value;i.h(a)}}catch(t){o.e(t)}finally{o.f()}i.i>r.value&&(r.value=i.i,r.entries=i.o,n())},a=qe("layout-shift",o);a&&(n=De(t,r,tn,e.reportAllChanges),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&(o(a.takeRecords()),n(!0))})),ke((function(){i.i=0,r=Fe("CLS",0),n=De(t,r,tn,e.reportAllChanges),je((function(){return n()}))})),setTimeout(n))})))},nn=0,rn=1/0,on=0,an=function(t){var e,n=L(t);try{for(n.s();!(e=n.n()).done;){var r=e.value;r.interactionId&&(rn=Math.min(rn,r.interactionId),on=Math.max(on,r.interactionId),nn=on?(on-rn)/7+1:0)}}catch(t){n.e(t)}finally{n.f()}},un=function(){var t;return He?nn:null!==(t=performance.interactionCount)&&void 0!==t?t:0},sn=0,cn=function(){return N((function t(){I(this,t),C(this,"u",[]),C(this,"l",new Map),C(this,"m",void 0),C(this,"v",void 0)}),[{key:"p",value:function(){sn=un(),this.u.length=0,this.l.clear()}},{key:"P",value:function(){var t=Math.min(this.u.length-1,Math.floor((un()-sn)/50));return this.u[t]}},{key:"h",value:function(t){var e;if(null!==(e=this.m)&&void 0!==e&&e.call(this,t),t.interactionId||"first-input"===t.entryType){var n=this.u.at(-1),r=this.l.get(t.interactionId);if(r||this.u.length<10||t.duration>n.T){var i;if(r?t.duration>r.T?(r.entries=[t],r.T=t.duration):t.duration===r.T&&t.startTime===r.entries[0].startTime&&r.entries.push(t):(r={id:t.interactionId,entries:[t],T:t.duration},this.l.set(r.id,r),this.u.push(r)),this.u.sort((function(t,e){return e.T-t.T})),this.u.length>10){var o,a=L(this.u.splice(10));try{for(a.s();!(o=a.n()).done;){var u=o.value;this.l.delete(u.id)}}catch(t){a.e(t)}finally{a.f()}}null===(i=this.v)||void 0===i||i.call(this,r)}}}}])}(),ln=function(t){var e=globalThis.requestIdleCallback||setTimeout;"hidden"===document.visibilityState?t():(t=ze(t),document.addEventListener("visibilitychange",t,{once:!0}),e((function(){t(),document.removeEventListener("visibilitychange",t)})))},fn=[200,500],dn=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};globalThis.PerformanceEventTiming&&"interactionId"in PerformanceEventTiming.prototype&&$e((function(){var n;"interactionCount"in performance||He||(He=qe("event",an,{type:"event",buffered:!0,durationThreshold:0}));var r,i=Fe("INP"),o=Be(e,cn),a=function(t){ln((function(){var e,n=L(t);try{for(n.s();!(e=n.n()).done;){var a=e.value;o.h(a)}}catch(t){n.e(t)}finally{n.f()}var u=o.P();u&&u.T!==i.value&&(i.value=u.T,i.entries=u.entries,r())}))},u=qe("event",a,{durationThreshold:null!==(n=e.durationThreshold)&&void 0!==n?n:40});r=De(t,i,fn,e.reportAllChanges),u&&(u.observe({type:"first-input",buffered:!0}),document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&(a(u.takeRecords()),r(!0))})),ke((function(){o.p(),i=Fe("INP"),r=De(t,i,fn,e.reportAllChanges)})))}))},vn=function(){return N((function t(){I(this,t),C(this,"m",void 0)}),[{key:"h",value:function(t){var e;null===(e=this.m)||void 0===e||e.call(this,t)}}])}(),pn=[2500,4e3];function hn(){!function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};$e((function(){var n,r=Qe(),i=Fe("LCP"),o=Be(e,vn),a=function(t){e.reportAllChanges||(t=t.slice(-1));var a,u=L(t);try{for(u.s();!(a=u.n()).done;){var s=a.value;o.h(s),s.startTime<r.firstHiddenTime&&(i.value=Math.max(s.startTime-Me(),0),i.entries=[s],n())}}catch(t){u.e(t)}finally{u.f()}},u=qe("largest-contentful-paint",a);if(u){n=De(t,i,pn,e.reportAllChanges);for(var s=ze((function(){a(u.takeRecords()),u.disconnect(),n(!0)})),c=0,l=["keydown","click","visibilitychange"];c<l.length;c++)addEventListener(l[c],(function(){return ln(s)}),{capture:!0,once:!0});ke((function(r){i=Fe("LCP"),n=De(t,i,pn,e.reportAllChanges),je((function(){i.value=performance.now()-r.timeStamp,n(!0)}))}))}}))}(yn,{reportAllChanges:!0}),dn(yn,{reportAllChanges:!0}),en(yn,{reportAllChanges:!0})}function yn(t){var e=[];Kt(e,At,Mt.WEB_VITAL);var n=[];Kt(n,"name",t.name),Kt(n,"value",$(t.value)),Kt(n,"delta",$(t.delta));var r={timeUnixNano:M(),attributes:e,severityNumber:Ft.INFO,severityText:"INFO",body:{kvlistValue:{values:n}}};Se(r.attributes),mt(r)}var mn="Unhandled promise rejection: ",gn="<unavailable because Promise wasn't rejected with an Error object>";function bn(t){null==t.reason?_e({message:mn+"<no reason defined>",stack:gn}):"string"==typeof t.reason.message?_e({message:mn+t.reason.message,stack:"string"==typeof t.reason.stack?t.reason.stack:gn}):"object"!==D(t.reason)&&_e({message:mn+t.reason,stack:gn})}var Tn="__dash0OriginalFunctions";function En(t,e){for(var n=t[Tn],r=0;r<n.length;r++){if(wn(n[r].valuesForEqualityCheck,e))return r}return-1}function wn(t,e){if(t.length!==e.length)return!1;for(var n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}function Sn(t,e,n,r,i){return function(t,e,n){if(!t)return e;var r=t[Tn]=t[Tn]||[],i=En(t,n);return-1!==i?r[i].wrappedFunction:(r.push({wrappedFunction:e,valuesForEqualityCheck:n}),e)}(t,e,An(n,r,i))}function An(t,e,n){return[t,e,On(n)]}function On(t){return null!=t&&("object"===D(t)?Boolean(t.capture):Boolean(t))}function In(t,e,n,r,i){return function(t,e,n){var r=null==t?void 0:t[Tn];if(null==r)return n;var i=En(t,e);if(-1===i)return n;var o=r[i];return r.splice(i,1),o.wrappedFunction}(t,An(e,n,r),i)}function Nn(){rt.wrapEventHandlers&&function(t){if(!t||"function"!=typeof t.prototype.addEventListener||"function"!=typeof t.prototype.removeEventListener)return;var e=t.prototype.addEventListener,n=t.prototype.removeEventListener;t.prototype.addEventListener=function(t,n,r){if("function"!=typeof n)return e.apply(this,arguments);for(var i=new Array(arguments.length),o=0;o<arguments.length;o++)i[o]=arguments[o];return i[1]=function(){try{return n.apply(this,arguments)}catch(t){throw reportError(t),Ce(),t}},i[1]=Sn(this,i[1],t,n,r),e.apply(this,i)},t.prototype.removeEventListener=function(t,e,r){if("function"!=typeof e)return n.apply(this,arguments);for(var i=new Array(arguments.length),o=0;o<arguments.length;o++)i[o]=arguments[o];return i[1]=In(this,t,e,r,e),n.apply(this,i)}}(null==f?void 0:f.EventTarget)}function Ln(t){var e=null==f?void 0:f[t];"function"==typeof e&&(f[t]=function(t){for(var n=new Array(arguments.length),r=0;r<arguments.length;r++)n[r]=arguments[r];return n[0]=function(t){if("function"!=typeof t)return t;return function(){try{return t.apply(this,arguments)}catch(t){throw reportError(t),Ce(),t}}}(t),e.apply(this,n)})}function Cn(){!function(){if(f){var t=f.onerror;f.onerror=function(e,n,r,i,o){if(Le)return Le=!1,"function"==typeof t?t.apply(this,arguments):void 0;var a=o&&o.stack;return a||(a="at "+n+" "+r,null!=i&&(a+=":"+i)),Re({message:String(e),stack:a}),"function"==typeof t?t.apply(this,arguments):void 0}}}(),"function"==typeof(null==f?void 0:f.addEventListener)&&f.addEventListener("unhandledrejection",bn),Nn(),function(){if(rt.wrapTimers){if(H)return void o("We discovered a usage of Zone.js. In order to avoid any incompatibility issues timer wrapping is not going to be enabled.");Ln("setTimeout"),Ln("setInterval")}}()}var _n=["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"];function Rn(t){return _n.includes(t)}function xn(t,e){var n=0!==e.startTime;Pn(t,K.FETCH_START,e,n),Pn(t,K.DOMAIN_LOOKUP_START,e,n),Pn(t,K.DOMAIN_LOOKUP_END,e,n),Pn(t,K.CONNECT_START,e,n),Pn(t,K.SECURE_CONNECTION_START,e,n),Pn(t,K.CONNECT_END,e,n),Pn(t,K.REQUEST_START,e,n),Pn(t,K.RESPONSE_START,e,n),Pn(t,K.RESPONSE_END,e,n)}function Pn(t,e,n){var r,i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];!(e in n)||"number"!=typeof n[e]||i&&0===n[e]||me(t,e,(r=n[e],String(Math.round(1e6*(r+V())))))}function kn(t,e){var n=e.encodedBodySize;null!=n&&Kt(t.attributes,"http.response.body.size",n)}function Dn(t){return function(){var e=O(R().mark((function e(n,r){var i,o,a,s,c,l,f,d,v,p,h,y,m,g,b;return R().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=r?Object.assign({},r):r,s=null,null!==(i=a)&&void 0!==i&&i.body&&(s=a.body,a.body=void 0),c=new Request(n,a),s&&a&&(a.body=s),!at(l=c.url)){e.next=9;break}return u("Not creating span for fetch call because the url is ignored, URL: ".concat(l)),e.abrupt("return",t(n instanceof Request?c:n,r));case 9:return f=null!==(o=c.method)&&void 0!==o?o:"GET",d=Rn(f),v=Rn(f.toUpperCase()),p=v?f.toUpperCase():"_OTHER",Se((h=he("HTTP ".concat(p))).attributes),ge(h.attributes,l),jn(n,r),Kt(h.attributes,"http.request.method",p),d||Kt(h.attributes,"http.request.method_original",f),y=Bn(l),y.length>0&&(null!==(m=a)&&void 0!==m&&m.headers?(a.headers=new Headers(a.headers),Hn(a.headers.append,a.headers,h,y)):n instanceof Request?Hn(c.headers.append,c.headers,h,y):(a||(a={}),a.headers=new Headers,Hn(a.headers.append,a.headers,h,y))),Un(c.headers,h,(function(t){return e=t,"".concat("http.request.header",".").concat(e.toLowerCase());var e})),(g=Y({resourceMatcher:function(t){var e=t.initiatorType,n=t.name;return("fetch"===e||"xmlhttprequest"===e)&&n===J(l).href},maxWaitForResourceMillis:rt.maxWaitForResourceTimingsMillis,maxToleranceForResourceTimingsMillis:rt.maxToleranceForResourceTimingsMillis,onEnd:function(t){var e=t.duration,n=t.resource;n&&(xn(h,n),kn(h,n)),gt(ye(h,void 0,1e6*e))}})).start(),e.prev=25,e.next=28,t(n instanceof Request?c:n,a);case 28:return b=e.sent,Mn(h,b),Fn(b).then((function(){return g.end()})).catch((function(t){g.cancel(),Vn(h,t)})),e.abrupt("return",b);case 34:throw e.prev=34,e.t0=e.catch(25),g.cancel(),Vn(h,e.t0),e.t0;case 39:case"end":return e.stop()}}),e,null,[[25,34]])})));return function(t,n){return e.apply(this,arguments)}}()}function jn(t,e,n){try{return void 0}catch(n){u("failed to analyze request for GraphQL insights",n,t,e)}}function Un(t,e,n){try{t.forEach((function(t,r){rt.headersToCapture.some((function(t){return t.test(r)}))&&Kt(e.attributes,n(r),t)}))}catch(t){u("unable to capture http headers due to CORS policy")}}function Mn(t,e){var n=e.status;!function(t,e,n){t.status={code:e,message:n}}(t,n>=200&&n<400?0:2),0===n&&Kt(t.attributes,"error.type",e.type),Kt(t.attributes,"http.response.status_code",String(n)),Un(e.headers,t,(function(t){return e=t,"".concat("http.response.header",".").concat(e.toLowerCase());var e}))}function Fn(t){return new Promise((function(e){var n=t.clone().body;if(!n)return e();var r=n.getReader(),i=function(){var t=O(R().mark((function t(){var n;return R().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,r.read();case 2:if(n=t.sent,!n.done){t.next=6;break}return t.abrupt("return",e());case 6:return t.abrupt("return",i());case 7:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();return i()}))}function Vn(t,e){!function(t,e){var n=[];"string"==typeof e?Kt(n,kt,e):e&&(e.code?Kt(n,Dt,e.code.toString()):e.name&&Kt(n,Dt,e.name),e.message&&Kt(n,kt,e.message),e.stack&&Kt(n,jt,e.stack),me(t,"exception",n))}(t,e),gt(ye(t,function(t){return{code:2,message:t&&"object"===D(t)&&"message"in t?t.message:String(t)}}(e),void 0))}function Bn(t){var e=[];if(tt(t)){if(e.push("traceparent"),rt.propagators){var n,r=L(rt.propagators);try{for(r.s();!(n=r.n()).done;){var i=n.value;"traceparent"===i.type||e.includes(i.type)||e.push(i.type)}}catch(t){r.e(t)}finally{r.f()}}return e}if(rt.propagators){var o,a=L(rt.propagators);try{for(a.s();!(o=a.n()).done;){var u=o.value;it(u.match,t)&&(e.includes(u.type)||e.push(u.type))}}catch(t){a.e(t)}finally{a.f()}return e}return[]}function Hn(t,e,n,r){var i,o=L(r);try{for(o.s();!(i=o.n()).done;){"xray"===i.value?Jt(t,e,n):$t(t,e,n)}}catch(t){o.e(t)}finally{o.f()}}function Wn(t,e,n,r){var i,o,a=function(t){var e,n,r;return t&&null!==(e=null===(n=(r=rt.pageViewInstrumentation).generateMetadata)||void 0===n?void 0:n.call(r,t))&&void 0!==e?e:{}}(e),u=[];Kt(u,At,Mt.PAGE_VIEW),a.attributes&&Object.entries(a.attributes).forEach((function(t){var e=x(t,2),n=e[0],r=e[1];return Kt(u,n,r)})),Se(u,{url:e});var s=[];Kt(s,"title",null!==(i=null!==(o=a.title)&&void 0!==o?o:null==d?void 0:d.title)&&void 0!==i?i:Q),null!=d&&d.referrer&&Kt(s,"referrer",d.referrer),Kt(s,"type",n?Bt:Vt),Kt(s,"change_state",r?Wt:Ht);var c={timeUnixNano:t,attributes:u,severityNumber:Ft.INFO,severityText:"INFO",body:{kvlistValue:{values:s}}},l=Qt();l&&(c.traceId=l.traceId,c.spanId=l.spanId),mt(c)}function qn(){var t=null==f?void 0:f.performance.getEntriesByType("navigation")[0];if(t){var e=[];Kt(e,At,Mt.NAVIGATION_TIMING);var n=[];Kt(n,"name",t.name),zn(n,t,"responseStatus"),zn(n,t,"fetchStart"),zn(n,t,"requestStart"),zn(n,t,"responseStart"),zn(n,t,"domInteractive"),zn(n,t,"domContentLoadedEventEnd"),zn(n,t,"domComplete"),zn(n,t,"loadEventEnd"),zn(n,t,"transferSize"),zn(n,t,"encodedBodySize"),zn(n,t,"decodedBodySize");var r={timeUnixNano:Gn(),attributes:e,severityNumber:Ft.INFO,severityText:"INFO",body:{kvlistValue:{values:n}}};Se(r.attributes);var i=Qt();i&&(r.traceId=i.traceId,r.spanId=i.spanId),mt(r)}else u("Navigation timings not available. Cannot emit navigation timing log")}function zn(t,e,n){var r=e[n];"number"!=typeof r||isNaN(r)||Kt(t,n,Number.isInteger(r)?r:$(r))}function Gn(){return F(Math.round(V()))}var Kn={},Zn=!1,Yn=!1;function Xn(){$n(null==f?void 0:f.location.href)}function Qn(t){$n(t.newURL)}function $n(t,e){var n;if(t)try{var r=new URL(t,null==f?void 0:f.location.href);((n=r).pathname!==Kn.path||Yn&&n.search!==Kn.search||Zn&&n.hash!==Kn.hash)&&(Jn(r),Wn(M(),r,!0,Boolean(e)))}catch(t){u("Failed to handle url change",t)}}function Jn(t){Kn.path=t.pathname,Kn.search=t.search,Kn.hash=t.hash}function tr(){!function(){try{Wn(Gn(),null!=f&&f.location.href?new URL(null==f?void 0:f.location.href):void 0)}catch(t){a("Failed to transmit initial page view event",t)}if("complete"===(null==d?void 0:d.readyState))return qn();f&&E(f,"load",(function(){setTimeout(qn,0)}))}(),function(){var t,e,n,r;if(f&&f.history){if(rt.pageViewInstrumentation.trackVirtualPageViews){Yn=null!==(t=null===(e=rt.pageViewInstrumentation.includeParts)||void 0===e?void 0:e.includes("SEARCH"))&&void 0!==t&&t,Zn=null!==(n=null===(r=rt.pageViewInstrumentation.includeParts)||void 0===r?void 0:r.includes("HASH"))&&void 0!==n&&n,nt(f.history,"replaceState",(function(t){return function(e,n,r){return $n(r?String(r):void 0,!0),t.apply(this,[e,n,r])}})),nt(f.history,"pushState",(function(t){return function(e,n,r){return $n(r?String(r):void 0),t.apply(this,[e,n,r])}})),f.addEventListener("hashchange",Qn),f.addEventListener("popstate",Xn);try{Jn(new URL(f.location.href))}catch(t){}}}else u("Browser does not support history API, skipping instrumentation")}()}var er=function(t){if("object"===D(t)&&null!==t){if("function"==typeof Object.getPrototypeOf){var e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1},nr=function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return e.reduce((function(t,e){if(void 0===e)return t;if(Array.isArray(e))throw new TypeError("Arguments provided to ts-deepmerge must be objects, not arrays.");return Object.keys(e).forEach((function(n){["__proto__","constructor","prototype"].includes(n)||(Array.isArray(t[n])&&Array.isArray(e[n])?t[n]=nr.options.mergeArrays?nr.options.uniqueArrayItems?Array.from(new Set(t[n].concat(e[n]))):[].concat(P(t[n]),P(e[n])):e[n]:er(t[n])&&er(e[n])?t[n]=nr(t[n],e[n]):!er(t[n])&&er(e[n])?t[n]=nr(e[n],void 0):t[n]=void 0===e[n]?nr.options.allowUndefinedOverrides?e[n]:t[n]:e[n])})),t}),{})},rr={allowUndefinedOverrides:!0,mergeArrays:!0,uniqueArrayItems:!0};nr.options=rr,nr.withOptions=function(t){nr.options=Object.assign(Object.assign({},rr),t);for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];var i=nr.apply(void 0,n);return nr.options=rr,i};var ir=!1;function or(t,e){var n=e.enabledInstrumentations;return!n||n.includes(t)}var ar={init:function(t){ir?u("Dash0 SDK is being reinitialized, skipping ..."):null!=f?"function"==typeof y&&h&&h.getEntriesByType?(rt.endpoints=t.endpoint instanceof Array?t.endpoint:[t.endpoint],0!==rt.endpoints.length?(Object.assign(rt,nr(rt,function(t,e){var n,r={},i=L(e);try{for(i.s();!(n=i.n()).done;){var o=n.value;o in t&&(r[o]=t[o])}}catch(t){i.e(t)}finally{i.f()}return r}(t,["ignoreUrls","ignoreErrorMessages","wrapEventHandlers","wrapTimers","propagateTraceHeadersCorsURLs","maxWaitForResourceTimingsMillis","maxToleranceForResourceTimingsMillis","headersToCapture","urlAttributeScrubber","pageViewInstrumentation"]))),function(t){t.propagators?(t.propagateTraceHeadersCorsURLs&&o("Both 'propagators' and deprecated 'propagateTraceHeadersCorsURLs' were provided. Using 'propagators' configuration. Please migrate to the new 'propagators' config."),rt.propagators=t.propagators):t.propagateTraceHeadersCorsURLs&&t.propagateTraceHeadersCorsURLs.length>0?(o("'propagateTraceHeadersCorsURLs' is deprecated. Please use the new 'propagators' configuration."),rt.propagators=[{type:"traceparent",match:P(t.propagateTraceHeadersCorsURLs)}]):rt.propagators=[{type:"traceparent",match:[]}]}(t),function(t){Kt(rt.resource.attributes,bt,t.serviceName),t.serviceVersion&&Kt(rt.resource.attributes,Tt,t.serviceVersion);var e=function(t){if(t.environment)return t.environment;try{var e;return null===(e=process)||void 0===e||null===(e=e.env)||void 0===e?void 0:e.NEXT_PUBLIC_VERCEL_ENV}catch(t){return}}(t);e&&Kt(rt.resource.attributes,Et,e);var n=function(t){if(t.deploymentName)return t.deploymentName;try{var e;return null===(e=process)||void 0===e||null===(e=e.env)||void 0===e?void 0:e.NEXT_PUBLIC_VERCEL_TARGET_ENV}catch(t){return}}(t);n&&Kt(rt.resource.attributes,wt,n);var r=function(t){if(t.deploymentId)return t.deploymentId;try{var e;return null===(e=process)||void 0===e||null===(e=e.env)||void 0===e?void 0:e.NEXT_PUBLIC_VERCEL_BRANCH_URL}catch(t){return}}(t);r&&Kt(rt.resource.attributes,St,r)}(t),function(t){var e;Kt(rt.signalAttributes,It,T(16)),Kt(rt.signalAttributes,Nt,null!==(e=null==v?void 0:v.userAgent)&&void 0!==e?e:Q),t.additionalSignalAttributes&&Object.entries(t.additionalSignalAttributes).forEach((function(t){var e=x(t,2),n=e[0],r=e[1];Kt(rt.signalAttributes,n,r)}))}(t),we(),ae(t.sessionInactivityTimeoutMillis,t.sessionTerminationTimeoutMillis),or("@dash0/navigation",t)&&tr(),or("@dash0/web-vitals",t)&&hn(),or("@dash0/error",t)&&Cn(),or("@dash0/fetch",t)&&(f&&f.fetch&&f.Request?nt(f,"fetch",Dn):u("Browser does not support the Fetch API, skipping instrumentation")),ir=!0):o("No telemetry endpoint configured. Aborting Dash0 Web SDK initialization process.")):u("Stopping Dash0 Web SDK initialization. This browser does not support the necessary APIs"):u("Looks like we are not running in a browser context. Stopping Dash0 Web SDK initialization.")},debug:function(){u("Dash0 Web SDK configuration state:",rt)},identify:function(t,e){Zt(rt.signalAttributes,Lt),null!=t&&Kt(rt.signalAttributes,Lt,t),Zt(rt.signalAttributes,Ct),null!=(null==e?void 0:e.name)&&Kt(rt.signalAttributes,Ct,e.name),Zt(rt.signalAttributes,_t),null!=(null==e?void 0:e.fullName)&&Kt(rt.signalAttributes,_t,e.fullName),Zt(rt.signalAttributes,Rt),null!=(null==e?void 0:e.email)&&Kt(rt.signalAttributes,Rt,e.email),Zt(rt.signalAttributes,xt),null!=(null==e?void 0:e.hash)&&Kt(rt.signalAttributes,xt,e.hash),Zt(rt.signalAttributes,Pt),null!=(null==e?void 0:e.roles)&&Kt(rt.signalAttributes,Pt,e.roles)},terminateSession:function(){if(w)try{!function(t){w&&m&&m.removeItem(t)}(ne)}catch(t){i("Failed to terminate session",t)}},reportError:function(t,e){_e(t,e)},addSignalAttribute:function(t,e){Kt(rt.signalAttributes,t,e)},removeSignalAttribute:function(t){Zt(rt.signalAttributes,t)},setActiveLogLevel:function(t){var e;r=null!==(e=n[t])&&void 0!==e?e:n.warn},sendEvent:function(t,e){var n;if(Object.values(Mt).includes(t))o("Unable to send custom event ".concat(t,". You are not allowed to use an internal event name while sending a custom event. Dropping event..."));else{var r=[];Se(r),Object.entries(null!==(n=null==e?void 0:e.attributes)&&void 0!==n?n:{}).forEach((function(t){var e=x(t,2),n=e[0],i=e[1];return Kt(r,n,i)})),Kt(r,At,t),null!=e&&e.title&&Kt(r,"dash0.web.event.title",e.title),mt({timeUnixNano:null!=(null==e?void 0:e.timestamp)?F(e.timestamp):M(),attributes:r,body:zt(null==e?void 0:e.data),severityText:null==e?void 0:e.severity,severityNumber:null!=e&&e.severity?Ft[e.severity]:void 0})}}};function ur(t){var e=t[0],n=ar[e];if(n){for(var r=[],i=1;i<t.length;i++)r.push(t[i]);n.apply(null,r)}else o("Unsupported Dash0 Web SDK api: ",t[0])}!function(){u("".concat("Initializing Dash0 Web SDK"," (via Script)"));var t=f.dash0;if(!t)return void o("global 'dash0' not found. Did you use the correct Dash0 Web SDK initializer?");if(!t._q)return void o("Dash0 Web SDK command queue not defined. Did you add the script tag multiple times to your website?");(function(t){for(var e=0,n=t.length;e<n;e++)ur(t[e])})(t._q),f.dash0=function(){return ur(arguments)}}()}();
2
2
  //# sourceMappingURL=dash0.iife.js.map