UNPKG

posthog-js

Version:

Posthog-js allows you to automatically capture usage and send events to PostHog.

2 lines • 4.71 kB
!function(){const e=Object.prototype.toString,t=Array.isArray||function(t){return"[object Array]"===e.call(t)},n=e=>"function"==typeof e,r=e=>null===e;function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function i(e,t,n){return(t=function(e){var t=function(e){if("object"!=o(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==o(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function u(e){for(var t=1;arguments.length>t;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach(function(t){i(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}const f=()=>{},l=e=>{var t;if(n(e))return null!==(t=e.__posthog_layer__)&&void 0!==t?t:e.__rrweb_layer__};function s(e,t,r){try{if(!(t in e))return f;const o={next:e[t]},i=r(function(...e){return o.next.apply(this,e)});return n(i)&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:o}})),e[t]=i,()=>{if(e[t]===i)return void(e[t]=o.next);let n=e[t],r=l(n);for(;r;){if(r.next===i)return void(r.next=o.next);n=r.next,r=l(n)}}}catch(e){return f}}const a="u">typeof window?window:void 0,b="u">typeof globalThis?globalThis:a;null!=b&&b.XMLHttpRequest&&new b.XMLHttpRequest;const y="undefined"!=typeof globalThis?globalThis:a;y&&"undefined"==typeof self&&(y.self=y),y&&"undefined"==typeof File&&(y.File=function(){});const d=null!=a?a:{},p="X-POSTHOG-SESSION-ID",h="X-POSTHOG-WINDOW-ID",v="X-POSTHOG-DISTINCT-ID",O=[p,h,v],w=["attributionReporting","body","browsingTopics","cache","credentials","dispatcher","duplex","integrity","keepalive","method","mode","priority","redirect","referrer","referrerPolicy","signal","window"],g=(e,t)=>({}.hasOwnProperty.call(e,t)),j=e=>"object"==typeof e&&!r(e)||n(e),m=e=>"undefined"!=typeof Request&&(e instanceof Request||"[object Request]"==={}.toString.call(e)),R=e=>{try{var t;return m(e)?e.url:new URL(e instanceof URL?e.toString():String(e),null==a||null===(t=a.location)||void 0===t?void 0:t.href).toString()}catch(e){return}},S=(e,r,o,i,c)=>{let u;try{u=new URL(i).hostname}catch(e){return!1}if(!e)return!1;if(t(e)&&!e.includes(u))return!1;let f=!1;if(o){const{sessionId:e,windowId:t}=o.checkAndGetSessionAndWindowId(!0);c.set(p,e),c.set(h,t),f=!0}const l=(e=>n(e)?e():e)(r);return l&&"$posthog_cookieless"!==l&&(c.set(v,l),f=!0),f};d.__PosthogExtensions__=d.__PosthogExtensions__||{};const _={_patchFetch:(e,t,n)=>s(a,"fetch",o=>function(i,c){const f=arguments.length>1?[i,c]:[i];let l=f;try{const o=R(i);if(o)if(m(i)){const r=new Request(i,c);S(e,t,n,r.url,r.headers),l=[r]}else{const f=new Headers(j(c)?c.headers:void 0);if(S(e,t,n,o,f)){const e=((e,t)=>{if(void 0===e||r(e))return{headers:t};if(!j(e))return;const n=e;if("undefined"==typeof Proxy||"undefined"==typeof Reflect){const e=Object.create(n);return Object.defineProperty(e,"headers",{configurable:!0,enumerable:!0,value:t,writable:!0}),e}return new Proxy({headers:t},{get:(e,t)=>g(e,t)?Reflect.get(e,t):Reflect.get(n,t,n),has:(e,t)=>g(e,t)||t in n,ownKeys(e){const t=new Set(Reflect.ownKeys(e));return Reflect.ownKeys(n).forEach(e=>t.add(e)),w.forEach(e=>{e in n&&t.add(e)}),Array.from(t)},getOwnPropertyDescriptor(e,t){const r=Reflect.getOwnPropertyDescriptor(e,t);if(r)return r;if("string"==typeof t&&w.includes(t)&&t in n)return{configurable:!0,enumerable:!0,get(){return Reflect.get(n,t,n)}};const o=Reflect.getOwnPropertyDescriptor(n,t);return o?u(u({},o),{},{configurable:!0}):void 0},getPrototypeOf:()=>Object.getPrototypeOf(n)})})(c,f);e&&(l=[i,e])}}}catch(e){l=f}return o.apply(this,l)}),_patchXHR:(e,t,n)=>s(a.XMLHttpRequest.prototype,"open",r=>function(o,i,c=!0,u,f){const l=this,s=new Headers,a=R(i);a&&S(e,t,n,a,s);const b=r.call(l,o,i,c,u,f);return O.forEach(e=>{const t=s.get(e);if(t)try{l.setRequestHeader(e,t)}catch(e){}}),b})};d.__PosthogExtensions__.tracingHeadersPatchFns=_,d.postHogTracingHeadersPatchFns=_}(); //# sourceMappingURL=tracing-headers.js.map