1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,720565,669430,e=>{"use strict";let t,i,s,r,n,o,a,l,u="u">typeof window?window:void 0,h="u">typeof globalThis?globalThis:u,c=null==h?void 0:h.navigator,d=null==h?void 0:h.document,p=null==h?void 0:h.location,f=null==h?void 0:h.fetch,g=(null==h?void 0:h.XMLHttpRequest)&&"withCredentials"in new h.XMLHttpRequest?h.XMLHttpRequest:void 0,v=null==h?void 0:h.AbortController,_=null==h?void 0:h.CompressionStream,m=null==c?void 0:c.userAgent;function y(){return!(!u||!1===u.navigator.onLine)}let b="u">typeof globalThis?globalThis:u;b&&"u"<typeof self&&(b.self=b),b&&"u"<typeof File&&(b.File=function(){});let w=null!=u?u:{},x="0.9.0",k={DEBUG:!1,LIB_VERSION:x,LIB_NAME:"browser-common",JS_SDK_VERSION:x};var $,E,S,P,R,F,I,O,C,M,T=((R={}).AnonymousId="anonymous_id",R.DistinctId="distinct_id",R.Props="props",R.EnablePersonProcessing="enable_person_processing",R.PersonMode="person_mode",R.FeatureFlagDetails="feature_flag_details",R.FeatureFlags="feature_flags",R.FeatureFlagPayloads="feature_flag_payloads",R.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",R.BootstrapFeatureFlags="bootstrap_feature_flags",R.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",R.OverrideFeatureFlags="override_feature_flags",R.Queue="queue",R.AiQueue="ai_queue",R.AiCaptureQueue="ai_capture_queue",R.LogsQueue="logs_queue",R.OptedOut="opted_out",R.SessionId="session_id",R.SessionStartTimestamp="session_start_timestamp",R.SessionLastTimestamp="session_timestamp",R.PersonProperties="person_properties",R.GroupProperties="group_properties",R.InstalledAppBuild="installed_app_build",R.InstalledAppVersion="installed_app_version",R.SessionReplay="session_replay",R.PushRegistered="push_registered",R.SessionReplayEventTriggerActivatedSession="session_replay_event_trigger_activated_session",R.SurveyLastSeenDate="survey_last_seen_date",R.SurveysInProgress="surveys_in_progress",R.SurveysSeen="surveys_seen",R.Surveys="surveys",R.RemoteConfig="remote_config",R.FlagsEndpointWasHit="flags_endpoint_was_hit",R.DeviceId="device_id",R),A=((F={}).GZipJS="gzip-js",F.Base64="base64",F);let L=["$snapshot","$pageview","$pageleave","$set","survey dismissed","survey sent","survey shown","$identify","$groupidentify","$create_alias","$$client_ingestion_warning","$web_experiment_applied","$feature_enrollment_update","$feature_flag_called"],D=["token"];function j(e,t){return -1!==e.indexOf(t)}let N=function(e){return e.trim()},H=function(e){return e.replace(/^\$/,"")};function q(e){var t;let i=[];return null!=(t=JSON.stringify(e,function(e,t){if("bigint"==typeof t)return t.toString();if("function"!=typeof t&&"symbol"!=typeof t){if(t instanceof Error)return{name:t.name,message:t.message,stack:t.stack};if(t&&"object"==typeof t){for(;i.length>0&&i[i.length-1]!==this;)i.pop();if(i.includes(t))return"[Circular]";i.push(t)}return t}}))?t:"null"}let B=Object.prototype,z=B.hasOwnProperty,U=B.toString,V=Array.isArray||function(e){return"[object Array]"===U.call(e)},W=e=>"function"==typeof e,G=e=>e===Object(e)&&!V(e),X=e=>{if(G(e)){for(let t in e)if(z.call(e,t))return!1;return!0}return!1},Y=e=>void 0===e,K=e=>"[object String]"==U.call(e),J=e=>K(e)&&0===e.trim().length,Z=e=>null===e,Q=e=>Y(e)||Z(e),ee=e=>"[object Number]"==U.call(e)&&e==e,et=e=>ee(e)&&e>0,ei=e=>"[object Boolean]"===U.call(e),es=e=>j(L,e),er=e=>j(D,e);function en(e){return null===e||"object"!=typeof e}function eo(e,t){return({}).toString.call(e)===`[object ${t}]`}function ea(e){switch(({}).toString.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object DOMError]":case"[object WebAssembly.Exception]":return!0;default:return eu(e,Error)}}function el(e){return"u">typeof Event&&eu(e,Event)}function eu(e,t){try{return e instanceof t}catch(e){return!1}}let eh=[!0,"true",1,"1","yes"],ec=[!1,"false",0,"0","no"];function ed(e,t,i,s,r,n,o){try{var a=e[n](o),l=a.value}catch(e){return void i(e)}a.done?t(l):Promise.resolve(l).then(s,r)}function ep(e){return function(){var t=this,i=arguments;return new Promise(function(s,r){var n=e.apply(t,i);function o(e){ed(n,s,r,o,a,"next",e)}function a(e){ed(n,s,r,o,a,"throw",e)}o(void 0)})}}let ef=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hub
1spot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterestbot","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],eg=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(!e)return!1;let i=e.toLowerCase();return ef.concat(t).some(e=>{let t=e.toLowerCase();return -1!==i.indexOf(t)})};function ev(e,t,i,s,r){return t>i&&(s.warn("min cannot be greater than max."),t=i),ee(e)?e>i?(s.warn(" cannot be greater than max: "+i+". Using max value instead."),i):t>e?(s.warn(" cannot be less than min: "+t+". Using min value instead."),t):e:(s.warn(" must be a number. using max or fallback. max: "+i+", fallback: "+r),ev(null!=r?r:i,t,i,s))}var e_=class{constructor(e){this.C={},this.I=e.I,this.R=ev(e.bucketSize,0,100,e.$),this.A=ev(e.refillRate,0,this.R,e.$),this.O=ev(e.refillInterval,0,864e5,e.$)}F(e,t){let i=Math.floor((t-e.lastAccess)/this.O);i>0&&(e.tokens=Math.min(e.tokens+i*this.A,this.R),e.lastAccess=e.lastAccess+i*this.O)}consumeRateLimit(e){var t;let i=Date.now(),s=String(e),r=this.C[s];return r?this.F(r,i):(r={tokens:this.R,lastAccess:i},this.C[s]=r),0===r.tokens||(r.tokens--,0===r.tokens&&(null==(t=this.I)||t.call(this,e)),0===r.tokens)}stop(){this.C={}}};let em="Mobile",ey="Android",eb="Tablet",ew="Android Tablet",ex="iPad",ek="Apple Watch",e$="Safari",eE="BlackBerry",eS="Samsung Internet",eP="Chrome",eR="Chrome iOS",eF="Internet Explorer",eI="Internet Explorer Mobile",eO="Opera",eC="Microsoft Edge",eM="Firefox",eT="Firefox iOS",eA="Nintendo",eL="PlayStation",eD="Xbox",ej="Android Mobile",eN="Mobile Safari",eH="Windows",eq="Windows Phone",eB="Nokia",ez="Ouya",eU="Generic "+em.toLowerCase(),eV="Generic "+eb.toLowerCase(),eW="Konqueror",eG="Oculus Browser",eX="Vivaldi",eY="Yandex",eK="Whale",eJ="DuckDuckGo",eZ="Pale Moon",eQ="Waterfox",e0="Brave",e1="Claude",e2="Codex",e3="ChatGPT",e5="Google Search App",e4=RegExp("Version/(\\d+(\\.\\d+)?)"),e6=RegExp("(Claude|Codex|ChatGPT)\\/(\\d+(\\.\\d+)?)"),e8=RegExp(eD,"i"),e9=RegExp("PlayStation \\w+","i"),e7=RegExp("Nintendo \\w+","i"),te=RegExp("BlackBerry|PlayBook|BB10","i"),tt={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000",5.1:"XP",5.2:"XP","6.0":"Vista",6.1:"7",6.2:"8",6.3:"8.1",6.4:"10","10.0":"10"},ti=function(e,t,i,s){var r;return t=t||"",((null==i?void 0:i.brave)?e0:null)||((null==s?void 0:s.detectGoogleSearchApp)&&j(e,"GSA/")?e5:j(e," OPR/")&&j(e,"Mini")?"Opera Mini":j(e," OPR/")?eO:te.test(e)?eE:j(e,"IEMobile")||j(e,"WPDesktop")?eI:j(e,"OculusBrowser")?eG:j(e,"SamsungBrowser")?eS:j(e,"Edge")||j(e,"Edg/")?eC:j(e,"Vivaldi/")?eX:j(e,"YaBrowser/")?eY:j(e,"Whale/")?eK:j(e,"DuckDuckGo/")||j(e,"Ddg/")?eJ:j(e,"Claude/")?e1:j(e,"Codex/")?e2:j(e,"ChatGPT/")?e3:j(e,"FBIOS")?"Facebook Mobile":j(e,"UCWEB")||j(e,"UCBrowser")?"UC Browser":j(e,"CriOS")?eR:j(e,"CrMo")||j(e,eP)?eP:j(e,ey)&&j(e,e$)?ej:j(e,"FxiOS")?eT:j(e.toLowerCase(),eW.toLowerCase())?eW:j(e,"Brave/")?e0:(r=t)&&j(r,"Apple")||j(e,e$)&&!j(e,eP)&&!j(e,ey)?j(e,em)?eN:e$:j(e,"PaleMoon/")?eZ:j(e,"Waterfox/")?eQ:j(e,eM)?eM:j(e,"MSIE")||j(e,"Trident/")?eF:j(e,"Gecko")?eM:"")},ts={[eI]:[RegExp("rv:(\\d+(\\.\\d+)?)")],[eC]:[RegExp("Edge?\\/(\\d+(\\.\\d+)?)")],[eP]:[RegExp("(Chrome|CrMo)\\/(\\d+(\\.\\d+)?)")],[eR]:[RegExp("CriOS\\/(\\d+(\\.\\d+)?)")],"UC Browser":[RegExp("(UCBrowser|UCWEB)\\/(\\d+(\\.\\d+)?)")],[e$]:[e4],[eN]:[e4],[eO]:[RegExp("(Opera|OPR)\\/(\\d+(\\.\\d+)?)")],[eM]:[RegExp("Firefox\\/(\\d+(\\.\\d+)?)")],[eT]:[RegExp("FxiOS\\/(\\d+(\\.\\d+)?)")],[eW]:[RegExp("Konqueror[:/]?(\\d+(\\.\\d+)?)","i")],[eE]:[RegExp("BlackBerry (\\d+(\\.\\d+)?)"),e4],[ej]:[RegExp("android\\s(\\d+(\\.\\d+)?)","i")],[eS]:[RegExp("SamsungBrowser\\/(\\d+(\\.\\d+)?)")],[eG]:[RegExp("OculusBrowser\\/(\\d+(\\.\\d+)?)")],[eX]:[RegExp("Vivaldi\\/(\\d+(\\.\\d+)?)")],[eY]:[RegExp("YaBrowser\\/(\\d+(\\.\\d+)?)")],[eK]:[RegExp("Whale\\/(\\d+(\\.\\d+)?)")],[e0]:[RegExp("Brave\\/(\\d+(\\.\\d+)?)")],[e1]:[e6],[e2]:[e6],[e3]:[e6],[eJ]:[RegExp("(DuckDuckGo|Ddg)\\/(\\d+(\\.\\d+)?)")],[eZ]:[RegExp("PaleMoon\\/(\\d+(\\.\\d+)?)")],[eQ]:[RegExp("Waterfox\\/(\\d+(\\.\\d+)?)")],[e5]:[RegExp("GSA\\/(\\d+(\\.\\d+)?)")],[eF]:[RegExp("(rv:|MSIE )(\\d+(\\.\\d+)?)")],Mozilla:[RegExp("rv:(\\d+(\\.\\d+)?)")]},tr=function(e,t,i,s){let r=ts[ti(e,t,i,s)];if(Y(r))return null;for(let t=0;r.length>t;t++){let i=e.match(r[t]);if(i)return parseFloat(i[i.length-2])}return null},tn=[[RegExp("Xbox; Xbox (.*?)[);]","i"),e=>[eD,e&&e[1]||""]],[RegExp(eA,"i"),[eA,""]],[RegExp(eL,"i"),[eL,""]],[te,[eE,""]],[RegExp(eH,"i"),(e,t)=>{if(/Phone/.test(t)||/WPDesktop/.test(t))return[eq,""];if(new RegExp(em).test(t)&&!/IEMobile\b/.test(t))return["Windows Mobile",""];let i=/Windows NT ([0-9.]+)/i.exec(t);if(i&&i[1]){let e=tt[i[1]]||"";return/arm/i.test(t)&&(e="RT"),[eH,e]}return[eH,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,e=>e&&e[3]?["iOS",[e[3],e[4],e[5]||"0"].join(".")]:["iOS",""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,e=>{let t="";return e&&e.length>=3&&(t=Y(e[2])?e[3]:e[2]),["watchOS",t]}],[RegExp("(Android (\\d+)\\.(\\d+)\\.?(\\d+)?|Android)","i"),e=>e&&e[2]?[ey,[e[2],e[3],e[4]||"0"].join(".")]:[ey,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,e=>{let t=["Mac OS X",""];return e&&e[1]&&(t[1]=[e[1],e[2],e[3]||"0"].join(".")),t}],[/Mac/i,["Mac OS X",""]],[/CrOS/,["Chrome OS",""]],[/Linux|debian/i,["Linux",""]]],to=function(e){for(let t=0;tn.length>t;t++){let[i,s]=tn[t],r=i.exec(e),n=r&&(W(s)?s(r,e):s);if(n)return n}return["",""]},ta=function(e){return e7.test(e)?eA:e9.test(e)?eL:e8.test(e)?eD:RegExp(ez,"i").test(e)?ez:RegExp("(Windows Phone|WPDesktop)","i").test(e)?eq:/iPad/.test(e)?ex:/iPod/.test(e)?"iPod Touch":/iPhone/.test(e)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(e)?ek:te.test(e)?eE:/(kobo)\s(ereader|touch)/i.test(e)?"Kobo":RegExp(eB,"i").test(e)?eB:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(e)||/(kf[a-z]+)( bui|\)).+silk\//i.test(e)?"Kindle Fire":/(Android|ZTE)/i.test(e)?new RegExp(em).test(e)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(e)||/pixel[\daxl ]{1,6}/i.test(e)&&!/pixel c/i.test(e)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(e)||/lmy47v/i.test(e)&&!/QTAQZ3/i.test(e)?ey:ew:RegExp("(pda|Mobile)","i").test(e)?eU:RegExp(eb,"i").test(e)&&!RegExp("Tablet pc","i").test(e)?eV:""},tl=function(e,t){var i,s,r,n;let o=ta(e);return o===ex||o===ew||"Kobo"===o||"Kindle Fire"===o||o===eV?eb:o===eA||o===eD||o===eL||o===ez?"Console":o===ek?"Wearable":o?em:"Android"===(null==t?void 0:t.userAgentDataPlatform)&&(null!=(n=null==t?void 0:t.maxTouchPoints)?n:0)>0?600>Math.min(null!=(i=null==t?void 0:t.screenWidth)?i:0,null!=(s=null==t?void 0:t.screenHeight)?s:0)/(null!=(r=null==t?void 0:t.devicePixelRatio)?r:1)?em:eb:"Desktop"},tu=/\bFBAV\/(\d+(?:\.\d+)*)/i,th=[[/\bInstagram(?:[ /](\d+(?:\.\d+)*))?\b/i,"Instagram"],[/\bBarcelona[ /](\d+(?:\.\d+)*)?/i,"Threads"],[/\b(?:MessengerForiOS|(?:FBAN|FB_IAB)\/Orca-Android)\b/i,"Messenger",tu],[/\bFBAN\/EMA\b/i,"Facebook Lite",tu],[/\b(?:FBIOS|(?:FBAN|FB_IAB)\/(?:FB4A|FBIOS))\b/i,"Facebook",tu],[/\bLinkedInApp(?:\]?\/(\d+(?:\.\d+)*))?\b/i,"LinkedIn"],[/\bTwitter(?:Android| for (?:iPhone|iPad|Android))(?
1:\/(\d+(?:\.\d+)*))?\b/i,"Twitter"],[/\b(?:musical_ly|trill)(?:[_/](\d+\.\d+(?:\.\d+)*))?(?=\b|_)/i,"TikTok",/\bapp_version\/(\d+(?:\.\d+)*)/i],[/\b(?:MicroMessenger|WeChat)\/(\d+(?:\.\d+)*)?/i,"WeChat"],[/\bLine\/(\d+(?:\.\d+)*)?/i,"Line"],[/\bGSA\/(\d+(?:\.\d+)*)?/i,"Google"],[/\[Pinterest\/(?:iOS|Android)\b|\bPinterest(?: for (?:Android(?: Tablet)?|iOS))?\/(\d+(?:\.\d+)*)/i,"Pinterest"],[/\b(?:WA4A|WAiOS)\/(\d+(?:\.\d+)*)?/i,"WhatsApp"],[/\bSnapchat[ /](\d+(?:\.\d+)*)?/i,"Snapchat"],[/\bBing(?:Web|Sapphire)\/(\d+(?:\.\d+)*)?/i,"Bing"],[/\bNAVER\(inapp; search;/i,"Naver",/\bNAVER\(inapp; search;[^;)]*; (\d+(?:\.\d+)*)/i],[/\bKAKAOTALK[ /](\d+\.\d+(?:\.\d+)*)?/i,"KakaoTalk"]],tc="[Truncated]",td="[Unserializable]";function tp(e){let t="";for(let i=0;e.length>i;i++){let s=e.charCodeAt(i);if(55296>s||s>56319)t+=56320>s||s>57343?e[i]:"�";else{let s=e.charCodeAt(i+1);56320>s||s>57343?t+="�":(t+=e[i]+e[i+1],i++)}}return t}function tf(e,t){if(!t)return e;let i=[];try{i=Object.keys(t)}catch(e){i=[]}for(let s of i){let i;try{i=t[s]}catch(e){i=td}Object.defineProperty(e,s,{value:i,enumerable:!0,writable:!0,configurable:!0})}return e}var tg=class{record(e){if("too-large"===e.kind)return;if("retry-later"!==e.kind)return void this.reset();if(!e.retryAfterMs)return;let t=this.isOpen(),i=Date.now(),s=Math.min(e.retryAfterMs,3e5);t?this.es=Math.max(this.es,Math.min(i+s,this.ts+3e5)):(this.ts=i,this.es=i+s)}remainingMs(){let e=Date.now();if(this.ts-5e3>e)return this.reset(),0;let t=Math.min(3e5,Math.max(0,this.es-e));return 0===t&&this.reset(),t}isOpen(){return this.remainingMs()>0}reset(){this.es=0,this.ts=0}constructor(){this.es=0,this.ts=0}};let tv=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function t_(e,t){return"string"==typeof e&&tv.test(e)?e:t()}function tm(e,t){let i=Error(t);try{Object.defineProperty(i,"name",{value:e,writable:!0,enumerable:!0,configurable:!0})}catch(e){}return i}function ty(e){return e?e.split("#")[0]:e}function tb(e){try{return e()}catch(e){return}}function tw(e,t){let i=setTimeout(e,t);return null!=i&&i.unref&&(null==i||i.unref()),i}function tx(e,t,i){return tk.apply(this,arguments)}function tk(){return(tk=ep(function*(e,t,i){let s;try{return yield Promise.race([e,new Promise((e,r)=>{s=tw(()=>{try{null==i||i(),e()}catch(e){r(e)}},t)})])}finally{clearTimeout(s)}})).apply(this,arguments)}function t$(e){return(t$="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})(e)}function tE(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,s)}return i}function tS(e){for(var t=1;arguments.length>t;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?tE(Object(i),!0).forEach(function(t){!function(e,t,i){var s;(s=function(e){if("object"!=t$(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var i=t.call(e,"string");if("object"!=t$(i))return i;throw TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(t),(t="symbol"==t$(s)?s:s+"")in e)?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i}(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):tE(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}var tP=class{constructor(e,t,i=[]){this.coercers=e,this.stackParser=t,this.modifiers=i}buildFromUnknown(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=t&&t.mechanism||{handled:!0,type:"generic"},s=this.buildCoercingContext(i,t,0).apply(e),r=this.buildParsingContext(t),n=this.parseStacktrace(s,r);return{$exception_list:this.convertToExceptionList(n,i),$exception_level:"error"}}modifyFrames(e){var t=this;return ep(function*(){for(let i of e)i.stacktrace&&i.stacktrace.frames&&V(i.stacktrace.frames)&&(i.stacktrace.frames=yield t.applyModifiers(i.stacktrace.frames));return e})()}coerceFallback(e){var t;return{type:"Error",value:"Unknown error",stack:null==(t=e.syntheticException)?void 0:t.stack,synthetic:!0}}parseStacktrace(e,t){var i;let s,r;if(null!=e.cause&&(s=this.parseStacktrace(e.cause,t)),""!=e.stack&&null!=e.stack)try{r=this.applyChunkIds(this.stackParser(e.stack,e.synthetic?t.ski
1pFirstLines:0),t.chunkIdMap)}catch(e){}return tS(tS({},e),{},{cause:s,stack:r,errors:null==(i=e.errors)?void 0:i.map(e=>this.parseStacktrace(e,t))})}applyChunkIds(e,t){return e.map(e=>(e.filename&&t&&(e.chunk_id=t[e.filename]),e))}applyCoercers(e,t){for(let i of this.coercers)if(i.match(e))return i.coerce(e,t);return this.coerceFallback(t)}applyModifiers(e){var t=this;return ep(function*(){let i=e;for(let e of t.modifiers)i=yield e(i);return i})()}convertToExceptionList(e,t){let i=[],s=(e,r,n)=>{var o;let a=i.length,l=void 0===r?tS(tS({type:"string"==typeof t.type&&t.type.length>0?t.type:"generic"},"boolean"==typeof t.handled?{handled:t.handled}:void 0===t.handled?{handled:!0}:{}),{},{synthetic:"boolean"==typeof t.synthetic?t.synthetic:e.synthetic,exception_id:a}):{type:"chained",source:n,synthetic:e.synthetic,exception_id:a,parent_id:r},u={type:e.type,value:e.value,mechanism:l};for(let t of(e.stack&&(u.stacktrace={type:"raw",frames:e.stack}),i.push(u),e.cause&&s(e.cause,a,"cause"),null!=(o=e.errors)?o:[]))s(t,a,"member")};return s(e),i}buildParsingContext(e){var r;return{chunkIdMap:function(e){let r=globalThis._posthogChunkIds;if(!r)return;let n=Object.keys(r);return s&&n.length===i||(i=n.length,s=n.reduce((i,s)=>{t||(t={});let n=t[s];if(n)i[n[0]]=n[1];else{let n=e(s);for(let e=n.length-1;e>=0;e--){let o=n[e],a=null==o?void 0:o.filename,l=r[s];if(a&&l){i[a]=l,t[s]=[a,l];break}}}return i},{})),s}(this.stackParser),skipFirstLines:null!=(r=e.skipFirstLines)?r:1}}getAggregateErrors(e){try{if(ea(e)){let i=Object.getPrototypeOf(e);for(let s=0;i&&100>s;s++){var t;let s=null==(t=Object.getOwnPropertyDescriptor(i,"constructor"))?void 0:t.value;if("function"==typeof s&&"AggregateError"===s.name){let t=e.errors;return V(t)?t:void 0}i=Object.getPrototypeOf(i)}}}catch(e){}}buildCoercingContext(e,t){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;var s=this;let r=0,n=0,o=!1,a=new Set,l=[],u={},h=function(e,t){let i,h,d=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,p=c(t,d),f=p.apply;if(p.apply=t=>{l.push(e);try{return f(t)}finally{l.pop()}},d>4||d>
10&&-1!==l.indexOf(e))return s.coerceFallback(p);let g="object"==typeof e&&null!==e||"function"==typeof e;if(0===d&&r>=50||g&&a.has(e))return;g&&a.add(e),0===d&&r++;let v=s.getAggregateErrors(e);o||(o=!!v);try{if(!(i=s.applyCoercers(e,p)))throw u}catch(e){if(e===u)return void(0===d&&r--);if(!o)throw e;i=s.coerceFallback(p)}if(!v||r>=50)return i;try{h=v.length}catch(e){return i}if(!Number.isInteger(h)||0>h||h>0xffffffff)return i;let _=[];for(let e=0;50>r&&1e3>n&&h>e;e++){let i;n++;try{i=p.next(v[e])}catch(e){r++,i=s.coerceFallback(c(t+1))}i&&_.push(i)}return tS(tS({},i),{},{errors:_})},c=function(i){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return tS(tS({},t),{},{syntheticException:0==i?t.syntheticException:void 0,mechanism:0==i?e:{},apply(e){let t=h(e,i,s+1);if(!t)throw u;return t},next:e=>h(e,i+1)})},d=c(i);return tS(tS({},d),{},{apply:e=>{var t;return null!=(t=h(e,i))?t:this.coerceFallback(d)}})}};let tR=/^([a-z][a-z0-9.+-]+):/i,tF=["http","https","file","blob","app","capacitor","ionic","webpack","webpack-internal","ng"];function tI(e,t,i,s,r){let n={platform:e,filename:t,function:"<anonymous>"===i?"?":i,in_app:function(e){if(!e||"<anonymous>"===e)return!1;let t=tR.exec(e);return!t||tF.includes(t[1].toLowerCase())}(t)};return Y(s)||(n.lineno=s),Y(r)||(n.colno=r),n}let tO=(e,t)=>{let i=-1!==e.indexOf("safari-extension"),s=-1!==e.indexOf("safari-web-extension");return i||s?[-1!==e.indexOf("@")?e.split("@")[0]:"?",i?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},tC=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,tM=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,tT=/\((\S*)(?::(\d+))(?::(\d+))\)/,tA=(e,t)=>{let i=tC.exec(e);if(i){let[,e,s,r]=i;return tI(t,e,"?",+s,+r)}let s=tM.exec(e);if(s){if(s[2]&&0===s[2].indexOf("eval")){let e=tT.exec(s[2]);e&&(s[2]=e[1],s[3]=e[2],s[4]=e[3])}let[e,i]=tO(s[1]||"?",s[2]);return tI(t,i,e,s[3]?+s[3]:void 0,s[4]?+s[4]:void 0)}},tL=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,tD=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,tj=(e,t)=>{let i=tL.exec(e);if(i){if(i[3]&&i[3].indexOf(" > eval")>-1){let e=tD.exec(i[3]);e&&(i[1]=i[1]||"eval",i[3]=e[1],i[4]=e[2],i[5]="")}let e=i[3],s=i[1]||"?";return[s,e]=tO(s,e),tI(t,e,s,i[4]?+i[4]:void 0,i[5]?+i[5]:void 0)}},tN=/\(error: (.*)\)/;function tH(e,t){return e.filename===t.filename&&e.function===t.function&&e.module===t.module&&e.lineno===t.lineno&&e.colno===t.colno}function tq(e,t){let i=t.start;for(;i>0&&tH(e[i-1],e[i-1+t.length]);)i--;return t.start-i}function tB(e,t){let i=t.start+t.length,s=i;for(;e.length>s&&tH(e[s],e[s-t.length]);)s++;return s-i}var tz=class{match(e){return this.isDOMException(e)||this.isDOMError(e)}coerce(e,t){let i=K(e.stack);return{type:this.getType(e),value:this.getValue(e),stack:i?e.stack:void 0,cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return this.isDOMError(e)?"DOMError":"DOMException"}getValue(e){let t=e.name||(this.isDOMError(e)?"DOMError":"DOMException");return e.message?`${t}: ${e.message}`:t}isDOMException(e){return eo(e,"DOMException")}isDOMError(e){return eo(e,"DOMError")}},tU=class{match(e){return ea(e)}coerce(e,t){var i;let s=this.getStack(e),r=void 0===s?null==(i=t.syntheticException)?void 0:i.stack:void 0;return{type:this.getType(e),value:this.getMessage(e,t),stack:null!=s?s:r,cause:e.cause?t.next(e.cause):void 0,synthetic:!!r}}getType(e){return e.name||e.constructor.name}getMessage(e,t){let i=e.message;return String(i.error&&"string"==typeof i.error.message?i.error.message:i)}getStack(e){try{let t=e.stacktrace;if("string"==typeof t&&t.length>0)return t;let i=e.stack;return"string"==typeof i&&i.length>0?i:void 0}catch(e){return}}},tV=class{match(e){return!!eo(e,"ErrorEvent")&&(null!=e.error||this.ur(e))}coerce(e,t){var i;if(null!=e.error)return t.apply(e.error);let s=t.apply(e.message);return tS(tS({},s),{},{stack:null!=(i=this.cr(e))?i:s.stack,synthetic:!0})}ur(e){return K(e.message)&&e.message.length>0}cr(e){var t,i;let s=null!=(t=e.lineno)?t:0,r=null!=(i=e.colno)?i:0;if(K(e.filename)&&0!==e.filename.length&&0!==s)return`Error 2 at ${e.filename}:${s}:${r}`}};let tW=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;var tG=class{match(e){return"string"==typeof e}coerce(e,t){var i;let[s,r]=this.getInfos(e);return{type:null!=s?s:"Error",value:null!=r?r:e,stack:null==(i=t.syntheticException)?void 0:i.stack,synthetic:!0}}getInfos(e){let t="Error",i=e,s=e.match(tW);return s&&(t=s[1],i=s[2]),[t,i]}};let tX=["fatal","error","warning","log","info","debug"];function tY(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:40,i=Object.keys(e);if(i.sort(),!i.length)return"[object has no keys]";for(let e=i.length;e>0;e--){let s=i.slice(0,e).join(", ");
2if(t>=s.length)return e===i.length?s:s.length>t?`${s.slice(0,t)}...`:s}return""}var tK=class{match(e){return"object"==typeof e&&null!==e}coerce(e,t){var i,s;let r=this.getErrorPropertyFromObject(e);return r?t.apply(r):{type:this.getType(e),value:this.getValue(e),stack:null!=(i=this.getStack(e))?i:null==(s=t.syntheticException)?void 0:s.stack,level:this.isSeverityLevel(e.level)?e.level:"error",synthetic:!0}}getType(e){if(el(e))return e.constructor.name;let t="name"in e?e.name:void 0;return K(t)&&!J(t)?t:"Error"}getValue(e){if("name"in e&&"string"==typeof e.name){let t=`'${e.name}' captured as exception`;return"message"in e&&"string"==typeof e.message&&(t+=` with message: '${e.message}'`),t}if("message"in e&&"string"==typeof e.message)return e.message;let t=this.getObjectClassName(e);return`${t&&"Object"!==t?`'${t}'`:"Object"} captured as exception with keys: ${tY(e)}`}isSeverityLevel(e){return K(e)&&!J(e)&&tX.indexOf(e)>=0}getStack(e){try{return K(e.stacktrace)&&e.stacktrace.length>0?e.stacktrace:K(e.stack)&&e.stack.length>0?e.stack:void 0}catch(e){return}}getErrorPropertyFromObject(e){for(let t in e)if(({}).hasOwnProperty.call(e,t)){let i=e[t];if(ea(i))return i}}getObjectClassName(e){try{let t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch(e){return}}},tJ=class{match(e){return el(e)}coerce(e,t){var i;let s=e.constructor.name;return{type:s,value:`${s} captured as exception with keys: ${tY(e)}`,stack:null==(i=t.syntheticException)?void 0:i.stack,synthetic:!0}}},tZ=class{match(e){return en(e)}coerce(e,t){var i;return{type:"Error",value:`Primitive value captured as exception: ${String(e)}`,stack:null==(i=t.syntheticException)?void 0:i.stack,synthetic:!0}}},tQ=class{match(e){return eo(e,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(e)}isCustomEventWrappingRejection(e){if(!el(e))return!1;try{let t=e.detail;return null!=t&&"object"==typeof t&&"reason"in t}catch(e){return!1}}coerce(e,t){var i;let s=this.getUnhandledRejectionReason(e);return en(s)?{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(s)}`,stack:null==(i=t.syntheticException)?void 0:i.stack,synthetic:!0}:t.apply(s)}getUnhandledRejectionReason(e){try{if("reason"in e)return e.reason;if("detail"in e&&null!=e.detail&&"object"==typeof e.detail&&"reason"in e.detail)return e.detail.reason}catch(e){}return e}};let t0="$message",t1="$timestamp",t2=new Set([t0,t1]),t3={enabled:!0,max_bytes:32768};function t5(e){var t;return e?{enabled:null!=(t=e.enabled)?t:t3.enabled,max_bytes:function(e,t){if(!ee(e)||1/0===e||-1/0===e)return t;let i=Math.floor(e);return 0>i?t:i}(e.max_bytes,t3.max_bytes)}:tS({},t3)}var t4=class{constructor(e){this.ns=[],this.ss=0,this.Rr=t5(e)}setConfig(e){this.Rr=t5(e),this.rs()}add(e){let t=function(e){let t;try{t=q(e)}catch(e){return}try{let e=JSON.parse(t);if(!G(e))return;let i=e[t0],s=e[t1];if(!K(i)||0===i.trim().length||!K(s)&&!ee(s))return;return{step:e,json:t}}catch(e){return}}(e);if(!t)return;let i=function(e){if("u">typeof TextEncoder)return(new TextEncoder).encode(e).length;let t=encodeURIComponent(e),i=0;for(let e=0;t.length>e;e++)"%"===t[e]?(i+=1,e+=2):i+=1;return i}(t.json);i>this.Rr.max_bytes||(this.ns.push({step:t.step,bytes:i}),this.ss+=i,this.rs())}getAttachable(){return this.ns.map(e=>e.step)}clear(){this.ns=[],this.ss=0}size(){return this.ns.length}rs(){for(;this.ss>this.Rr.max_bytes&&this.ns.length>0;){let e=this.ns.shift();e&&(this.ss-=e.bytes)}}};let t6=e=>{if("string"!=typeof e)return e;try{return JSON.parse(e)}catch(t){return e}};function t8(e){return"string"==typeof e||e}function t9(e){return"string"==typeof e?e:void 0}let t7=["$feature_flag","$feature_flag_response","$feature_flag_has_experiment","$feature_flag_id","$feature_flag_version","$feature_flag_reason","$feature_flag_request_id","$feature_flag_evaluated_at","$feature_flag_error","locally_evaluated","$groups","$process_person_profile","$geoip_disable","$current_url","$pathname","$referring_domain","utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid","gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx","$session_id","$window_id","$lib","$lib_version","$device_id","$is_server"],ie="NativeGzipValidationError",it=e=>e.length>=2&&31===e[0]&&139===e[1],ii=(e,t)=>e===A.GZipJS||t===A.GZipJS||"gzip"===t,is=e=>!(!e||"object"!=typeof e)&&"NotReadableError"===("name"in e?String(e.name):""),ir=e=>
2{throw tm(ie,`Native gzip produced invalid output: ${e}`)},io=(I=ep(function*(e,t){18>e.size&&ir("too-short");let i=new Uint8Array((yield e.slice(0,10).arrayBuffer()));it(i)&&8===i[2]||ir("invalid-header");let s=new DataView((yield e.slice(e.size-8).arrayBuffer()));s.getUint32(0,!0)!==(e=>{let t=(()=>{if(r)return r;r=[];for(let e=0;256>e;e++){let t=e;for(let e=0;8>e;e++)t=1&t?0xedb88320^t>>>1:t>>>1;r[e]=t>>>0}return r})(),i=0xffffffff;for(let s=0;e.length>s;s++)i=t[255&(i^e[s])]^i>>>8;return(0xffffffff^i)>>>0})(t)&&ir("invalid-crc");let n=t.length>>>0;s.getUint32(4,!0)!==n&&ir("invalid-size")}),function(e,t){return I.apply(this,arguments)});function ia(){return(ia=ep(function*(e){var t;let i=!(arguments.length>1)||void 0===arguments[1]||arguments[1],s=arguments.length>2?arguments[2]:void 0;try{let i=(new TextEncoder).encode(e),s=new globalThis.CompressionStream("gzip"),r=s.writable.getWriter(),n=r.write(i).then(()=>r.close()).catch((t=ep(function*(e){try{yield r.abort(e)}catch(e){}throw e}),function(e){return t.apply(this,arguments)})),o=new Response(s.readable).blob(),[a]=yield Promise.all([o,n]);return yield io(a,i),a}catch(e){if(null==s?void 0:s.rethrow)throw e;return i&&console.error("Failed to gzip compress data",e),null}})).apply(this,arguments)}function il(e,t){if(null==e)return{};var i,s,r=function(e,t){if(null==e)return{};var i={};for(var s in e)if(({}).hasOwnProperty.call(e,s)){if(t.includes(s))continue;i[s]=e[s]}return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(s=0;n.length>s;s++)t.includes(i=n[s])||({}).propertyIsEnumerable.call(e,i)&&(r[i]=e[i])}return r}let iu={}.propertyIsEnumerable;function ih(e,t){try{return ic(e,t,{ancestors:new WeakSet,remainingNodes:1e4},0)}catch(e){return[]}}function ic(e,t,i,s){let r=[];for(let n in e)if(iu.call(e,n)){if(!n){null==t||t.debug("Dropping an attribute with an empty key");continue}if(r.length>=1e3||0>=i.remainingNodes){null==t||t.debug("Attributes truncated: the value exceeds the OTLP encoder budget");break}try{let o=e[n];if(Z(o)||Y(o))continue;r.push({key:tp(n),value:function e(t,i,s,r){if(0>=s.remainingNodes)return{stringValue:tc};if(s.remainingNodes--,ei(t))return{boolValue:t};if("bigint"==typeof t){let e,s;return e=t.toString(),t>=(s=BigInt("9223372036854775808"))||-s>t?(null==i||i.debug(`Attribute ${e} is outside the int64 range; encoding it as a string`),{stringValue:e}):{intValue:e}}if("number"==typeof t){if(!Number.isFinite(t))return{stringValue:String(t)};if(Number.isInteger(t)){if(Number.isSafeInteger(t))return{intValue:String(t)};if(typeof BigInt>"u")return{stringValue:String(t)};let e=BigInt(t).toString();return t>=0x8000000000000000||-0x8000000000000000>t?(null==i||i.debug(`Attribute ${e} is outside the int64 range; encoding it as a string`),{stringValue:e}):{intValue:e}}return{doubleValue:t}}if("string"==typeof t)return{stringValue:tp(t)};if("function"==typeof t)return{stringValue:"[Function]"};if("symbol"==typeof t)return{stringValue:String(t)};if("object"==typeof t&&null!==t){if(s.ancestors.has(t))return{stringValue:"[Circular]"};if(r>=20)return{stringValue:tc};if(t instanceof Date){let e=Number.isFinite(t.getTime())?t.toISOString():String(t);return{stringValue:"string"==typeof e?tp(e):String(e)}}s.ancestors.add(t);try{try{let n=t.toJSON;if("function"==typeof n)return e(n.call(t),i,s,r+1)}catch(e){}return V(t)?{arrayValue:{values:function(t,i,s,r){let n=[],o=Math.min(t.length,1e3),a=0;for(;o>a&&s.remainingNodes>0;a++)try{let o=a in t?t[a]:void 0;if(Q(o))continue;n.push(e(o,i,s,r))}catch(e){n.push({stringValue:td})}return t.length>a&&n.push({stringValue:tc}),n}(t,i,s,r+1)}}:{kvlistValue:{values:ic(t,i,s,r+1)}}}finally{s.ancestors.delete(t)}}return{stringValue:tp(String(t))}}(o,t,i,s)})}catch(e){r.push({key:tp(n),value:{stringValue:td}})}}return r}function id(e,t,i){return tS(tS(tS(tS({},tf({},e.resourceAttributes)),{},{"service.name":e.serviceName||"unknown_service"},e.environment&&{"deployment.environment":e.environment}),e.serviceVersion&&{"service.version":e.serviceVersion}),{},{"telemetry.sdk.name":t,"telemetry.sdk.version":i})}let ip=["service.name","deployment.environment","service.version","telemetry.sdk.name","telemetry.sdk.version"];function ig(e,t){let i=tf({},e),s={};for(let e of ip)({}).hasOwnProperty.call(i,e)&&(s[e]=i[e],delete i[e]);return[...ih(i,t),...ih(s,t)]}let iv={darwin:"macOS",win32:"Windows",cygwin:"Windows",linux:"Linux",android:"Android",freebsd:"FreeBSD",openbsd:"OpenBSD",netbsd:"NetBSD",sunos:"SunOS",aix:"AIX",haiku:"Haiku","Mac OS X":"macOS"},i_={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},im=i_.info;function iy(e,t,i,s){return{resourceLogs:[{resource:{attributes:ig(t)}
2,scopeLogs:[{scope:{name:i,version:s},logRecords:e}]}]}}var ib=class{constructor(e){this.ls=e,this.us=0}get pending(){return!!this.hs}arm(e){this.clear(),this.us=Date.now()+e,this.hs=tw(()=>{this.hs=void 0,this.ls()},e)}armNoEarlierThan(e){this.hs&&Date.now()+e<=this.us||this.arm(e)}clear(){this.hs&&(clearTimeout(this.hs),this.hs=void 0)}};function iw(){return .75+.5*Math.random()}function ix(e,t,i,s){let r=e*Math.pow(2,Math.min(Math.max(0,t-1),6));return Math.round((void 0===s?r:Math.min(r,Math.max(s,e)))*i)}var ik=class{constructor(e,t,i,s,r,n=()=>Promise.resolve(),o){var a;this._instance=e,this.Rr=t,this.$=i,this.cs=s,this.ds=r,this.vs=n,this.fs=o,this.ps=new ib(()=>this.gs()),this.ys=null,this.bs=0,this._s=0,this.ws=new tg,this.ks=0,this.Ss=1,this.xs=0,this.Cs=0,this.$s=!1,this.Ts=t.maxBufferSize,this.Is=Math.max(null!=(a=t.maxQueueSize)?a:t.maxBufferSize,t.maxBufferSize),this.Ms=t.flushIntervalMs,this.Es=t.maxBatchRecordsPerPost,this.Ps=t.rateCapWindowMs,this.Rs=t.maxLogsPerInterval}clearQueue(){this._s++,this._instance.setPersistedProperty(T.LogsQueue,[])}reset(){this.ps.clear(),this.xs=0,this.Cs=0,this.$s=!1,this.ks=0,this.Ss=1,this.ws.reset(),this.Es=this.Rr.maxBatchRecordsPerPost}onReconnect(){this.ks=0,this.Ss=1,this.ws.isOpen()?this.As()&&this.Fs():this.gs()}captureLog(e,t){var i;if(this._instance.isDisabled||this._instance.optedOut||!(null==e?void 0:e.body))return;let s=this.Os(e);if(null===s)return;if(!s.body)return void this.$.info("Log was rejected in beforeSend function");if(!this.Ds())return;let r={record:function(e,t,i,s){let{text:r,number:n}=i_[e.level||"info"]||im,o=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Date.now();return String(e)+"000000"}(ee(s)?s:void 0),a={};t.distinctId&&(a.posthogDistinctId=t.distinctId),t.sessionId&&(a.sessionId=t.sessionId),t.windowId&&(a["window.id"]=t.windowId),Q(t.sessionStartTimestamp)||(a.sessionStartTimestamp=String(t.sessionStartTimestamp)),Q(t.lastActivityTimestamp)||(a.lastActivityTimestamp=String(t.lastActivityTimestamp)),t.currentUrl&&(a["url.full"]=t.currentUrl),t.screenName&&(a["screen.name"]=t.screenName),t.appState&&(a["app.state"]=t.appState),t.activeFeatureFlags&&t.activeFeatureFlags.length>0&&(a.feature_flags=t.activeFeatureFlags);let l=tS({},a),u=e.attributes;if(u){let e=[];try{e=Object.keys(u)}catch(t){e=[]}for(let t of e){let e;try{e=u[t]}catch(t){e=td}Object.defineProperty(l,t,{value:e,enumerable:!0,writable:!0,configurable:!0})}}let h={timeUnixNano:o,observedTimeUnixNano:o,severityNumber:n,severityText:r,body:{stringValue:function(e){try{return tp(String(e))}catch(e){return td}}(e.body)},attributes:ih(l,i)};return e.trace_id&&(h.traceId=e.trace_id),e.span_id&&(h.spanId=e.span_id),Y(e.trace_flags)||(h.flags=e.trace_flags),h}(s,null!=(i=null==t?void 0:t.context)?i:this.cs(),this.$,null==t?void 0:t.occurredAtMs)};this.ds(()=>this.Ls(r))}Os(e){let t=this.Rr.beforeSend;if(!t)return e;let i=V(t)?t:[t],s=e;for(let e of i)try{let t=e(s);if(!t)return this.$.info("Log was rejected in beforeSend function"),null;s=t}catch(e){return this.$.error("Error in beforeSend function for log:",e),null}return s}Ds(){if(void 0===this.Rs)return!0;let e=Date.now(),t=e-this.xs;return this.Ps>t&&t>=0||(this.xs=e,this.Cs=0,this.$s=!1),this.Rs>this.Cs?(this.Cs++,!0):(this.$s||(this.$.warn(`captureLog dropping logs: exceeded ${this.Rs} logs per ${this.Ps}ms`),this.$s=!0),!1)}flush(){var e=this;return ep(function*(){if(!e._instance.isDisabled)return e.ys||(e.ys=e.Ns().finally(()=>{e.ys=null})),e.ys})()}Ns(){var e=this;return ep(function*(){var t,i,s;e.ps.clear();let r=null!=(t=e._instance.getPersistedProperty(T.LogsQueue))?t:[];if(0===r.length)return;let n=r.length,o=0;for(;r.length>0&&n>o;){let t=e._s;e.bs=0;let n=Math.min(r.length,e.Es),a=r.slice(0,n),l=iy(a.map(e=>e.record),e.qs(),null!=(i=e.fs)?i:e._instance.getLibraryId(),e._instance.getLibraryVersion()),u=yield e._instance.js(l);if(e._s!==t)return;if("too-large"===u.kind&&a.length>1)e.Es=Math.max(1,Math.floor(a.length/2)),e.$.warn(`Logs batch of size ${a.length} was too large for the ingestion endpoint, reducing batch size to ${e.Es}`);else if(e.ws.record(u),e.ps.pending&&e.ps.arm(Math.max(e.Ms,e.ws.remainingMs())),"retry-later"===u.kind||("too-large"===u.kind?e.$.warn("Dropping a single log record with batch size 1 â the record
2is larger than the server cap and cannot be split further."):"ok"===u.kind&&e.Rr.maxBatchRecordsPerPost>e.Es&&(e.Es=Math.min(e.Rr.maxBatchRecordsPerPost,e.Es+1)),yield e.Bs(a.length),r=null!=(s=e._instance.getPersistedProperty(T.LogsQueue))?s:[],o+=a.length,"fatal"===u.kind))throw u.error}})()}Bs(e){var t=this;return ep(function*(){var i;let s=Math.max(0,e-t.bs),r=null!=(i=t._instance.getPersistedProperty(T.LogsQueue))?i:[];t._instance.setPersistedProperty(T.LogsQueue,r.slice(s)),yield t.vs()})()}qs(){var e;return e=this.Rr,id(e,this._instance.getLibraryId(),this._instance.getLibraryVersion())}Ls(e){var t;if(this._instance.optedOut)return;let i=null!=(t=this._instance.getPersistedProperty(T.LogsQueue))?t:[];this.Is>i.length||(i.shift(),this.bs++,this.$.info("Logs queue is full, dropping oldest record.")),i.push(e),this._instance.setPersistedProperty(T.LogsQueue,i),this.Ts>i.length||this.ws.isOpen()?this.Fs():this.gs()}Fs(){this.ps.pending||this.ps.arm(Math.max(this.Ms,this.ws.remainingMs()))}Hs(){return Math.max(ix(this.Ms,this.ks,this.Ss,3e4),this.ws.remainingMs())}As(){let e=this._instance.getPersistedProperty(T.LogsQueue);return!!e&&e.length>0}shutdown(e){var t=this;return ep(function*(){t.ps.clear();let i=t.flush().catch(()=>{});void 0!==e?yield tx(i,e):yield i})()}flushWithTimeout(e){var t=this;return ep(function*(){let i=t.flush();yield tx(i,e,()=>{i.catch(()=>{})})})()}gs(){this.flush().then(()=>{this.ks=0,this.Ss=1},e=>{this.ks++,this.Ss=iw(),this.$.error("PostHog logs flush failed:",e)}).finally(()=>{!this._instance.isDisabled&&this.As()&&this.ps.armNoEarlierThan(this.Hs())})}};let i$=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function iE(e){return String(e)+"000000"}function iS(e,t,i,s){let r="";return s&&(r=Object.keys(s).sort().map(e=>`${JSON.stringify(e)}:${JSON.stringify(s[e])}`).join(",")),`${e}\0${t}\0${null!=i?i:""}\0${r}`}var iP=class{constructor(e,t,i){this._instance=e,this.Rr=t,this.$=i,this.zs=new Map,this.ps=new ib(()=>this.flush().catch(e=>{this.$.error("Metrics flush failed:",e)})),this.ys=null,this.Us=!1,this.Ws=new Map,this.Vs=new Set,this.ws=new tg,this.ks=0,this.Ss=1,this.Gs=0}count(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=arguments.length>2?arguments[2]:void 0;this.Zs({name:e,type:"count",value:t,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes})}gauge(e,t,i){this.Zs({name:e,type:"gauge",value:t,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes})}histogram(e,t,i){this.Zs({name:e,type:"histogram",value:t,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes})}flush(){var e,t=this;let i=this.ys,s=(e=ep(function*(){i&&(yield i.catch(()=>{})),yield t.Qs()}),function(){return e.apply(this,arguments)})().finally(()=>{this.ys===s&&(this.ys=null)});return this.ys=s,s}drainWindow(){if(0===this.zs.size)return null;let e=this.zs;return this.zs=new Map,this.Us=!1,this.Ws=new Map,this.Vs=new Set,this.Js(e)}reset(){this.Gs++,this.ws.reset(),this.ks=0,this.Ss=1,this.ps.clear(),this.zs=new Map,this.ys=null,this.Us=!1,this.Ws=new Map,this.Vs=new Set}Zs(e){let t,i;if(this._instance.isDisabled||this._instance.optedOut)return;let s=this.Os(e);if(null===s)return;if(!s.name||"string"!=typeof s.name)return void this.$.warn("Dropping metric with empty name");if("number"!=typeof s.value||!Number.isFinite(s.value))return void this.$.warn(`Dropping metric '${s.name}': value must be a finite number`);if("count"===s.type&&0>s.value)return void this.$.warn(`Dropping count '${s.name}': counters are monotonic, value must be >= 0`);try{t=s.attributes?tS({},s.attributes):void 0,i=iS(s.type,s.name,s.unit,t)}catch(e){return void this.$.warn(`Dropping metric '${s.name}': attributes could not be serialized`,e)}let r=this.zs.get(i);if(!r){if(!this.Ks())return;r={name:s.name,type:s.type,unit:s.unit,attributes:t,windowStartMs:Date.now()},this.zs.set(i,r)}let n=this.Ws.get(s.name);void 0===n?this.Ws.set(s.name,s.type):n===s.type||this.Vs.has(s.name)||(this.Vs.add(s.name),this.$.warn(`Metric name '${s.name}' is already used as a ${n}; recording it as a ${s.type} too will blend both series in charts. Use a distinct name.`)),this.Xs(r,s.value),this.Fs()}Ks(){return this.Rr.maxSeriesPerFlush>this.zs.size||(this.Us||(this.Us=!0,this.$.warn(`Metric series cap reached (${this.Rr.maxSeriesPerFlush} per flush window); dropping new series until the next flush. Reduce attribute cardinality.`)),!1)}Xs(e,t){switch(e.type){case"count":var i;e.total=(null!=(i=e.total)?i:0)+t;break;case"gauge":e.last=t;break;case"histogram":{e.hist||(e.hist={count:0,sum:0,min:t,max:t,bucketCounts:Array(i$.length+1).fill(0)});let i=e.hist;i.count+=1,i.sum+=t,i.min=Math.min(i.min,t),i.max=Math.max(i.max,t),i.bucketCounts[function(e,t){for(let i=0;t.length>i;i++)if(t[i]>=e)return i;return t.length}(t,i$)]+=1}}}Os(e){let t=this.Rr.beforeSend;if(!t)return e;let i=V(t)?t:[t],s=e;for(let e of i)try{let t=e(s);if(!t)return this.$.info("Metric was rejected in beforeSend function"),null;s=t}catch(e){return this.$.error("Error in beforeSend function for metric:",e),null}return s}Fs(){this.ps.pending||this.ps.arm(this.Hs())}Hs(){return Math.max(ix(this.Rr.flushIntervalMs,this.ks,this.Ss,3e4),this.ws.remainingMs())}Qs(){var e=this;return ep(function*(){if(e.ps.clear(),0===e.zs.size)return;let t=e.zs;e.zs=new Map,e.Us=!1,e.Ws=new Map,e.Vs=new Set;let i=e.Gs,s=yield e._instance.Ys(e.Js(t));if(i===e.Gs)switch(e.ws.record(s),"retry-later"===s.kind?(e.ks++,e.Ss=iw()):(e.ks=0,e.Ss=1),e.ps.pending&&e.ps.arm(e.Hs()),s.kind){case"ok":return;case"retry-later":return e.ho(t),void e.ps.armNoEarlierThan(e.Hs());case"too-large":return void e.$.warn("Metrics batch exceeded the server size limit and was dropped");case"fatal":return void e.$.error("Failed to send metrics batch:",s.error)}})()}Js(e){var t,i,s,r;return t=this.vo(e),i=id(this.Rr,this._instance.getLibraryId(),this._instance.getLibraryVersion()),s=this._instance.getLibraryId(),r=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:ig(i)},scopeMetrics:[{scope:{name:s,version:r},metrics:t}]}]}}vo(e){let t=iE(Date.now()),i=new Map;for(let o of e.values()){var s,r,n;let e=iS(o.type,o.name,o.unit,void 0),a=i.get(e);a||(a=tS({name:o.name},o.unit&&{unit:o.unit}),"count"===o.type?a.sum={aggregationTemporality:1,isMonotonic:!0,dataPoints:[]}:"gauge"===o.type?a.gauge={dataPoints:[]}:a.histogram={aggregationTemporality:1,dataPoints:[]},i.set(e,a));let l=ih(null!=(s=o.attributes)?s:{},this.$),u=iE(o.windowStartMs);if("count"===o.type){let e={attributes:l,startTimeUnixNano:u,timeUnixNano:t,asDouble:null!=(r=o.total)?r:0};a.sum.dataPoints.push(e)}else if("gauge"===o.type){let e={attributes:l,timeUnixNano:t,asDouble:null!=(n=o.last)?n:0};a.gauge.dataPoints.push(e)}else o.hist&&a.histogram.dataPoints.push({attributes:l,startTimeUnixNano:u,timeUnixNano:t,count:o.hist.count,sum:o.hist.sum,min:o.hist.min,max:o.hist.max,bucketCounts:o.hist.bucketCounts,explicitBounds:i$})}return Array.from(i.values())}ho(e){for(let[s,r]of e){let e=this.zs.get(s);if(e)switch(e.windowStartMs=Math.min(e.windowStartMs,r.windowStartMs),e.type){case"count":var t,i;e.total=(null!=(t=e.total)?t:0)+(null!=(i=r.total)?i:0);break;case"gauge":break;case"histogram":if(r.hist)if(e.hist){e.hist.count+=r.hist.count,e.hist.sum+=r.hist.sum,e.hist.min=Math.min(e.hist.min,r.hist.min),e.hist.max=Math.max(e.hist.max,r.hist.max);for(let t=0;e.hist.bucketCounts.length>t;t++)e.hist.bucketCounts[t]+=r.hist.bucketCounts[t]}else e.hist=r.hist}else this.Ks()&&this.zs.set(s,r)}}};let iR=function(e){let{debugEnabled:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i={N(i){for(var s=arguments.length,r=Array(s>1?s-1:0),n=1;n<s;n++)r[n-1]=arguments[n];u&&(k.DEBUG||u.POSTHOG_DEBUG||t)&&!Y(u.console)&&u.console&&("__rrweb_original__"in u.console[i]?u.console[i].__rrweb_original__:u.console[i])(e,...r)},debug(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];i.N("debug",...t)},info(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];i.N("log",...t)},warn(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];i.N("warn",...t)},error(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];i.N("error",...t)},critical(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];console.error(e,...i)},uninitializedWarning(e){i.error(`You must initialize PostHog before calling ${e}`)},createLogger:(t,i)=>iR(`${e} ${t}`,i)};return i},iF=iR("[PostHog.js]"),iI=iF.createLogger,iO=iI("[ExternalScriptsLoader]"),iC=e=>{let t=null==d?void 0:d.querySelectorAll("script");
2if(t){for(let i=0;t.length>i;i++)if(t[i].src===e||t[i].getAttribute("src")===e)return t[i]}},iM=(e,t,i)=>{if(e.config.disable_external_dependency_loading)return iO.warn(`${t} was requested but loading of external scripts is disabled.`),i("Loading of external scripts is disabled");let s=iC(t);if(s){if(s.__posthog_loading_callback_fired)return i();let e=s.__posthog_loading_error;return e?i(e):(s.addEventListener("load",e=>{s.__posthog_loading_callback_fired=!0,i(void 0,e)}),void s.addEventListener("error",e=>{s.__posthog_loading_error=e,i(e)}))}let r=()=>{if(!d)return i("document not found");if(iC(t))return iM(e,t,i);let s=d.createElement("script");if(s.type="text/javascript",s.crossOrigin="anonymous",s.src=t,s.onload=e=>{s.__posthog_loading_callback_fired=!0,i(void 0,e)},s.onerror=e=>{s.__posthog_loading_error=e,i(e)},e.config.prepare_external_dependency_script&&(s=e.config.prepare_external_dependency_script(s)),!s)return i("prepare_external_dependency_script returned null");if("head"===e.config.external_scripts_inject_target)d.head.appendChild(s);else{var r;let e=d.querySelectorAll("body > script");e.length>0?null==(r=e[0].parentNode)||r.insertBefore(s,e[0]):d.body.appendChild(s)}};(null==d?void 0:d.body)?r():null==d||d.addEventListener("DOMContentLoaded",r)},iT={},iA=(e,t)=>{let i=`/static/${t}.js?v=${e.version}`;return"toolbar"===t&&(i=`${i}&t=${3e5*Math.floor(Date.now()/3e5)}`),e.requestRouter.endpointFor("assets",i)};w.__PosthogExtensions__=w.__PosthogExtensions__||{},w.__PosthogExtensions__.loadExternalDependency=(e,t,i)=>{if("remote-config"===t){let t=e.requestRouter.endpointFor("assets",`/array/${e.config.token}/config.js`);return void iM(e,t,i)}let s=e.config.strict_script_versioning;if(s){let r=e.requestRouter.endpointFor("assets",`/static/${e.version}/${t}.js`),n=iT[r];if("fallback"===s&&n){if(iC(n))return void iM(e,n,i);delete iT[r]}return void iM(e,r,"fallback"===s?(s,n)=>{if(s)if("string"==typeof s)i(s);else{var o;let s=iA(e,t);iT[r]=s;let n=iC(r);null==n||null==(o=n.parentNode)||o.removeChild(n),iM(e,s,i)}else i(void 0,n)}:i)}iM(e,iA(e,t),i)},w.__PosthogExtensions__.loadSiteApp=(e,t,i)=>{let s=e.requestRouter.endpointFor("api",t);iM(e,s,i)},k.DEBUG=!1,k.LIB_VERSION="1.434.14",k.LIB_NAME="web";let iL="distinct_id",iD="$device_id",ij="$device_model",iN="__alias",iH="$fbc",iq="$fbc_persistence",iB="$fbp",iz="$fbp_persistence",iU="__timers",iV="$autocapture_disabled_server_side",iW="$heatmaps_enabled_server_side",iG="$exception_capture_enabled_server_side",iX="$error_tracking_suppression_rules",iY="$error_tracking_capture_extension_exceptions",iK="$web_vitals_enabled_server_side",iJ="$dead_clicks_enabled_server_side",iZ="$product_tours_enabled_server_side",iQ="$logs_capture_enabled_server_side",i0="$web_vitals_allowed_metrics",i1="$session_recording_remote_config",i2="$sesid",i3="$session_is_sampled",i5="$enabled_feature_flags",i4="$active_feature_flags",i6="$early_access_features",i8="$feature_flag_details",i9="$feature_flag_payloads",i7="$feature_flag_request_id",se="$minimal_flag_called_events",st="$override_feature_flags",si="$override_feature_flag_payloads",ss="$stored_person_properties",sr="$stored_group_properties",sn="$groups",so="$surveys",sa="$surveys_loaded_at",sl="$surveys_activated",su="$surveys_activated_session",sh="$surveys_activated_timestamps",sc="ph_product_tours",sd="$flag_call_reported",sp="$flag_call_reported_session_id",sf="$feature_flag_errors",sg="$feature_flag_evaluated_at",sv="$user_state",s_="$client_session_props",sm="$initial_campaign_params",sy="$initial_referrer_info",sb="$initial_person_info",sw="$epp",sx="$posthog_cookieless",sk="$cookieless_mode",s$="$sdk_debug_extensions_init_method",sE="$sdk_debug_extensions_init_time_ms",sS="$sdk_debug_recording_script_not_loaded",sP="$sdk_debug_replay_stale_config",sR="PostHog loadExternalDependency extension not found.",sF="anonymous",sI="identified",sO="identified_only",sC="visibilitychange",sM="beforeunload",sT="$pageview",sA="$pageleave",sL="$identify",sD="$groupidentify";function sj(e,t){V(e)&&e.forEach(t)}function sN(e,t){if(!Q(e))if(V(e))e.forEach(t);else if(e instanceof FormData)e.forEach((e,i)=>t(e,i));else for(let i in e)z.call(e,i)&&t(e[i],i)}let sH=function(e){for(var t=arguments.length,i=Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];for(let t of i)for(let i in t)void 0!==t[i]&&(e[i]=t[i]);return e};function sq(e){let t=Object.keys(e),i=t.length,s=Array(i);for(;i--;)s[i]=[t[i],e[t[i]]];return s}let sB=function(e){return function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];try{return e.apply(this,i)}catch(e){iF.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),iF.critical(e)}}},sz=function(e){let t={};return sN(e,function(e,i){(K(e)&&e.length>0||ee(e))&&(t[i]=e)}),t};function sU(e){let t=tS({},e);for(let i of["name","message","stack","cause","errors"])try{i in e&&(t[i]=e[i])}catch(e){}return t}let sV=["herokuapp.com","vercel.app","netlify.app"];function sW(e,t,i,s){let{capture:r=!1,passive:n=!0}=null!=s?s:{};null==e||e.addEventListener(t,i,{capture:r,passive:n})}function sG(e){return"ph_toolbar_internal"===e.name}let sX=e=>{if(d){try{let t=e+"=",i=d.cookie.split(";").filter(e=>e.length);for(let e=0;i.length>e;e++){let s=i[e];for(;" "==s.charAt(0);)s=s.substring(1,s.length);if(0===s.indexOf(t))return decodeURIComponent(s.substring(t.length,s.length))}}catch(e){}return null}};Math.trunc||(Math.trunc=function(e){return 0>e?Math.ceil(e):Math.floor(e)}),Number.isInteger||(Number.isInteger=function(e){return ee(e)&&isFinite(e)&&Math.floor(e)===e});var sY=class e{constructor(e){if(this.bytes=e,16!==e.length)throw TypeError("not 128-bit length")}static fromFieldsV7(t,i,s,r){if(!Number.isInteger(t)||!Number.isInteger(i)||!Number.isInteger(s)||!Number.isInteger(r)||0>t||0>i||0>s||0>r||t>0xffffffffffff||i>4095||s>0x3fffffff||r>0xffffffff)throw RangeError("invalid field value");let n=new Uint8Array(16);return n[0]=t/0x10000000000,n[1]=t/0x100000000,n[2]=t/0x1000000,n[3]=t/65536,n[4]=t/256,n[5]=t,n[6]=112|i>>>8,n[7]=i,n[8]=128|s>>>24,n[9]=s>
2>>16,n[10]=s>>>8,n[11]=s,n[12]=r>>>24,n[13]=r>>>16,n[14]=r>>>8,n[15]=r,new e(n)}toString(){let e="";for(let t=0;this.bytes.length>t;t++)e=e+(this.bytes[t]>>>4).toString(16)+(15&this.bytes[t]).toString(16),3!==t&&5!==t&&7!==t&&9!==t||(e+="-");if(36!==e.length)throw Error("Invalid UUIDv7 was generated");return e}clone(){return new e(this.bytes.slice(0))}equals(e){return 0===this.compareTo(e)}compareTo(e){for(let t=0;16>t;t++){let i=this.bytes[t]-e.bytes[t];if(0!==i)return Math.sign(i)}return 0}},sK=class{generate(){let e=this.generateOrAbort();if(!Y(e))return e;{this.Ct=0;let e=this.generateOrAbort();if(Y(e))throw Error("Could not generate UUID after timestamp reset");return e}}generateOrAbort(){let e,t=ee(e=Date.now())&&isFinite(e)?Math.min(Math.max(Math.floor(e),0),0xffffffffffff):0;if(t>this.Ct)this.Ct=t,this.Mt();else{if(this.Ct>=t+1e4)return;this.It++,this.It>0x3ffffffffff&&(this.Ct++,this.Mt())}return sY.fromFieldsV7(this.Ct,Math.trunc(this.It/0x40000000),0x3fffffff&this.It,this.Tt.nextUint32())}Mt(){this.It=1024*this.Tt.nextUint32()+(1023&this.Tt.nextUint32())}constructor(){this.Ct=0,this.It=0,this.Tt=new sZ}};let sJ=e=>{if("u">typeof UUIDV7_DENY_WEAK_RNG&&UUIDV7_DENY_WEAK_RNG)throw Error("no cryptographically strong RNG available");for(let t=0;e.length>t;t++)e[t]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return e};u&&!Y(u.crypto)&&crypto.getRandomValues&&(sJ=e=>crypto.getRandomValues(e));var sZ=class{nextUint32(){return this.Rt.length>this.$t||(sJ(this.Rt),this.$t=0),this.Rt[this.$t++]}constructor(){this.Rt=new Uint32Array(8),this.$t=1/0}};let sQ=()=>s0().toString(),s0=()=>(n||(n=new sK)).generate(),s1="",s2=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i,s3=null,s5={Et(){if(!Z(s3))return s3;if(s3=!1,d)try{let e=`__ph_cookie_support_${sQ()}`;s5.At(e,"xyz"),s3='"xyz"'===sX(e),s5.Lt(e)}catch(e){s3=!1}return s3},Pt(e){iF.error("cookieStore error: "+e)},Ot:sX,Dt(e){let t;try{t=JSON.parse(s5.Ot(e))||{}}catch(e){}return t},At(e,t,i,s,r){if(!d)return!1;try{let n="",o="",a=function(e,t){if(t){let t=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d;if(s1)return s1;if(!t||["localhost","127.0.0.1"].includes(e))return"";let i=e.split("."),s=Math.min(i.length,8),r="dmn_chk_"+sQ();for(;!s1&&s--;){let e=i.slice(s).join("."),n=r+"=1;domain=."+e+";path=/";t.cookie=n+";max-age=3",t.cookie.includes(r)&&(t.cookie=n+";max-age=0",s1=e)}return s1}(e);if(!t){let i,s=(i=e.match(s2))?i[0]:"";s!==t&&iF.info("Warning: cookie subdomain discovery mismatch",s,t),t=s}return t?"; domain=."+t:""}return""}(d.location.hostname,s);if(i){let e=new Date;e.setTime(e.getTime()+864e5*i),n="; expires="+e.toUTCString()}r&&(o="; secure");let l=e+"="+encodeURIComponent(JSON.stringify(t))+n+"; SameSite=Lax; path=/"+a+o;return l.length>3686.4&&iF.warn("cookieStore warning: large cookie, len="+l.length),d.cookie=l,!0}catch(e){return!1}},Lt(e,t){if((null==d?void 0:d.cookie)&&(!t||!Z(sX(e))))try{s5.At(e,"",-1,t)}catch(e){return}}},s4=null,s6={Et(){if(!Z(s4))return s4;let e=!0;if(Y(u))e=!1;else try{let t="__mplssupport__";s6.At(t,"xyz"),'"xyz"'!==s6.Ot(t)&&(e=!1),s6.Lt(t)}catch(t){e=!1}return e||iF.error("localStorage unsupported; falling back to cookie store"),s4=e,e},Pt(e){iF.error("localStorage error: "+e)},Ot(e){try{return null==u?void 0:u.localStorage.getItem(e)}catch(e){s6.Pt(e)}return null},Dt(e){try{return JSON.parse(s6.Ot(e))||{}}catch(e){}return null},At(e,t){try{return null==u||u.localStorage.setItem(e,JSON.stringify(t)),!0}catch(e){s6.Pt(e)}return!1},Lt(e){try{null==u||u.localStorage.removeItem(e)}catch(e){s6.Pt(e)}}},s8=[ss,i4,i5,i8,i9,i7,sg,sf,sd],s9=[iD,iL,i2,i3,sw,sb,iq,sv],s7=["__proto__","constructor","prototype"],re=e=>{if(!G(e))return{};let t={};return Object.keys(e).forEach(i=>{-1===s7.indexOf(i)&&(t[i]=e[i])}),t},rt=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i={};return[...s9,...t].forEach(t=>{let s=e[t];Y(s)||Z(s)||""===s||(i[t]=s)}),i},ri=e=>{let t=5381,i=0x811c9dc5;for(let s=0;e.length>s;s++){let r=e.charCodeAt(s);t=33*t^r,i=Math.imul(i^r,0x1000193)}return e.length.toString(36)+"."+(t>>>0).toString(36)+"."+(i>>>0).toString(36)},rs=(e,t)=>({p:t,f:ri(JSON.stringify(e))}),rr=(e,t)=>{if(!t)return{properties:[],isValid:!1};try{let i=s5.Dt(e+"_cpm"),s=(null==i?void 0:i.f)===ri(t)&&V(i.p);return{properties:s?i.p:[],isValid:s}}catch(e){return{properties:[],isValid:!1}}},rn=(e,t)=>t+"|"+(s5.Ot(e+"_cpm")||""),ro={},ra={Et:()=>!0,Pt(e){iF.error("memoryStorage error: "+e)},Ot:e=>e in ro?ro[e]:null,Dt:e=>e in ro?ro[e]:null,At:(e,t)=>(ro[e]=t,!0),Lt(e){delete ro[e]}}
2,rl=null,ru={Et(){if(!Z(rl))return rl;if(rl=!0,Y(u))rl=!1;else try{let e="__support__";ru.At(e,"xyz"),'"xyz"'!==ru.Ot(e)&&(rl=!1),ru.Lt(e)}catch(e){rl=!1}return rl},Pt(e){iF.error("sessionStorage error: ",e)},Ot(e){try{return null==u?void 0:u.sessionStorage.getItem(e)}catch(e){ru.Pt(e)}return null},Dt(e){try{return JSON.parse(ru.Ot(e))||null}catch(e){}return null},At(e,t){try{return null==u||u.sessionStorage.setItem(e,JSON.stringify(t)),!0}catch(e){ru.Pt(e)}return!1},Lt(e){try{null==u||u.sessionStorage.removeItem(e)}catch(e){ru.Pt(e)}}};var rh=class{constructor(e){this._instance=e}get Rr(){return this._instance.config}get consent(){return this.Lo()?0:this.No}isOptedOut(){return"always"===this.Rr.cookieless_mode||this.isRejected()||-1===this.consent&&"on_reject"===this.Rr.cookieless_mode}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return 0===this.consent}isRejected(){return 0===this.consent||-1===this.consent&&this.Rr.opt_out_capturing_by_default}optInOut(e){this.qo.At(this.jo,+!!e,this.Rr.cookie_expiration,this.Rr.cross_subdomain_cookie,this.Rr.secure_cookie)}reset(){this.qo.Lt(this.jo,this.Rr.cross_subdomain_cookie)}get jo(){let{token:e,opt_out_capturing_cookie_prefix:t,consent_persistence_name:i}=this._instance.config;return i||(t?t+e:"__ph_opt_in_out_"+e)}get No(){let e=this.qo.Ot(this.jo);return j(eh,e)?1:j(ec,e)?0:-1}get qo(){let e=this.Rr.opt_out_capturing_persistence_type,t="localStorage"===e?s6:s5,i=t.Et()?t:ra;if(!this.Bo||this.Bo!==i){this.Bo=i;let t="localStorage"===e?s5:s6;t.Ot(this.jo)&&(this.Bo.Ot(this.jo)||this.optInOut(j(eh,t.Ot(this.jo))),t.Lt(this.jo,this.Rr.cross_subdomain_cookie))}return this.Bo}Lo(){return!!this.Rr.respect_dnt&&[null==c?void 0:c.doNotTrack,null==c?void 0:c.msDoNotTrack,w.doNotTrack,null==c?void 0:c.globalPrivacyControl].some(e=>j(eh,e))}};function rc(e,t){var i;let s=null==e||null==(i=e.config)?void 0:i.get_current_url;if(!W(s))return t;try{let e=s(t);return K(e)&&e?e:t}catch(e){return iF.error("Error in get_current_url, falling back to window.location.href",e),t}}function rd(e){var t;return e instanceof Element&&("__POSTHOG_TOOLBAR__"===e.id||!!(null==(t=e.closest)?void 0:t.call(e,".toolbar-global-fade-container")))}function rp(e){return!!e&&1===e.nodeType}function rf(e,t){return!!e&&!!e.tagName&&e.tagName.toLowerCase()===t.toLowerCase()}function rg(e){return!!e&&3===e.nodeType}function rv(e){return!!e&&11===e.nodeType&&rp(e.host)}function r_(e){return e?N(e).split(/\s+/):[]}function rm(e,t){var i;let s,r=Y(s=null==u||null==(i=u.location)?void 0:i.href)?void 0:rc(t,s);return!!(r&&e&&e.some(e=>r.match(e)))}function ry(e){let t="";switch(typeof e.className){case"string":t=e.className;break;case"object":t=(e.className&&"baseVal"in e.className?e.className.baseVal:null)||e.getAttribute("class")||"";break;default:t=""}return r_(t)}function rb(e){return Q(e)?null:N(e).split(/(\s+)/).filter(e=>rU(e)).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function rw(e){let t="";return rL(e)&&!rD(e)&&e.childNodes&&e.childNodes.length&&sN(e.childNodes,function(e){var i;rg(e)&&e.textContent&&(t+=null!=(i=rb(e.textContent))?i:"")}),N(t)}function rx(e){var t;return Y(e.target)?e.srcElement||null:(null==(t=e.target)?void 0:t.shadowRoot)?e.composedPath()[0]||null:e.target||null}let rk=["a","button","form","input","select","textarea","label"];function r$(e,t){let i=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.oMatchesSelector;try{return!!i&&i.call(e,t)}catch(e){return!1}}function rE(e,t){if(Y(t))return!0;for(let i of e)if(t.some(e=>r$(i,e)))return!0;return!1}function rS(e){let t=e.parentNode;return!(!t||!rp(t))&&t}let rP=[".ph-no-autocapture","[data-ph-no-autocapture]"],rR=["next","previous","prev",">","<"],rF=[...rR,"+","-","â","â"],rI=(e,t)=>/[a-z0-9]/i.test(t)?e.includes(t):e===t,rO=[".ph-no-rageclick",".ph-no-capture"],rC=["","text","search","email","password","url","tel","number"];function rM(e,t){var i,s,r;let n,o,a;if(!u||rT(e)||(ei(t)?(n=!!t&&rO,o=void 0,a=!1):(n=null!=(i=null==t?void 0:t.css_selector_ignorelist)?i:rO,o=null==t?void 0:t.content_ignorelist,a=null!=(s=null==t?void 0:t.ignore_text_selection)&&s),!1===n)||a&&!(!(r=e)||!rp(r))&&(rf(r,"textarea")||(rf(r,"input")?j(rC,(r.getAttribute("type")||"").toLowerCase()):function(e){var t;if(e.isContentEditable)return!0;let i=null==(t=e.getAttribute)?void 0:t.call(e,"contenteditable");return"true"===i||""===i}(r))))return!1;let{targetElementList:l}=rA(e,!1);return!function(e,t){let i;if(!1===e||Y(e))return!1;if(!0===e)i=rR;else{if(!V(e))return!1;if(e.length>10)return iF.error("[PostHog] content_ignorelist array cannot exceed 10 items. Use css_selector_ignorelist for more complex matching."),!1;i=e.map(e=>e.toLowerCase())}return t.some(e=>{let{safeText:t,ariaLabel:s}=e;return i.some(e=>rI(t,e)||rI(s,e))})}(o,l.map(e=>{var t;return{safeText:rw(e).toLowerCase(),ariaLabel:(null==(t=e.getAttribute("aria-label"))?void 0:t.toLowerCase().trim())||""}}))&&!rE(l,n)}let rT=e=>!e||rf(e,"html")||!rp(e),rA=(e,t)=>
2{if(!u||rT(e))return{parentIsUsefulElement:!1,targetElementList:[]};let i=!1,s=[e],r=e;for(;r.parentNode&&!rf(r,"body");){if(rv(r.parentNode)){s.push(r.parentNode.host),r=r.parentNode.host;continue}let e=rS(r);if(!e)break;if(t||rk.indexOf(e.tagName.toLowerCase())>-1)i=!0;else try{let t=u.getComputedStyle(e);t&&"pointer"===t.getPropertyValue("cursor")&&(i=!0)}catch(e){}s.push(e),r=e}return{parentIsUsefulElement:i,targetElementList:s}};function rL(e){let t=new Set,i=0;for(let s=e;s.parentNode&&!rf(s,"body");s=s.parentNode){if(i++>=1e3||t.has(s))return!1;t.add(s);let e=ry(s);if(j(e,"ph-sensitive")||j(e,"ph-no-capture"))return!1}if(j(ry(e),"ph-include"))return!0;let s=e.type||"";if(K(s))switch(s.toLowerCase()){case"hidden":case"password":return!1}let r=e.name||e.id||"";return!K(r)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(r.replace(/[^a-zA-Z0-9]/g,""))}function rD(e){return!!(rf(e,"input")&&!["button","checkbox","submit","reset"].includes(e.type)||rf(e,"select")||rf(e,"textarea")||"true"===e.getAttribute("contenteditable"))}let rj=RegExp("^(?:(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11}))$"),rN=/(^|[^0-9A-Za-z_])([0-9][0-9 -]*[0-9])(?=$|[^0-9A-Za-z_])/g,rH=[16,15,14,13],rq=RegExp("^(\\d{3}-?\\d{2}-?\\d{4})$"),rB=RegExp("(^|[^0-9])((?!000|666)[0-9]{3}-?(?!00)[0-9]{2}-?(?!0000)[0-9]{4})(?=$|([^0-9]))","g"),rz=/[0-9A-Za-z_]/;function rU(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return!(Q(e)||K(e)&&(e=N(e),(t?rj.test((e||"").replace(/[- ]/g,"")):function(e){let t;for(rN.lastIndex=0;t=rN.exec(e);){let e=t[2];if(!e)continue;let i=e.replace(/[- ]/g,"");for(let e=0;i.length>e;e++)for(let t of rH){let s=e+t;if(i.length>=s){let t=i.slice(e,s);if(rj.test(t)&&function(e){let t=0,i=!1;for(let s=e.length-1;s>=0;s--){let r=e.charCodeAt(s)-48;i&&(r*=2)>9&&(r-=9),t+=r,i=!i}return t%10==0}(t))return!0}}}return!1}(e))||(t?rq.test(e):function(e){let t;for(rB.lastIndex=0;t=rB.exec(e);){let e=t[1],i=t[3];if(!(e&&i&&rz.test(e)&&rz.test(i)))return!0}return!1}(e))))&&!0}function rV(e){let t=rw(e);return rU(t=`${t} ${(function e(t){let i="";return t&&t.childNodes&&t.childNodes.length&&sN(t.childNodes,function(t){var s;if(t&&"span"===(null==(s=t.tagName)?void 0:s.toLowerCase()))try{let s=rw(t);i=`${i} ${s}`.trim(),t.childNodes&&t.childNodes.length&&(i=`${i} ${e(t)}`.trim())}catch(e){iF.error("[AutoCapture]",e)}}),i})(e)}`.trim())?t:""}function rW(e){return e.replace(/"|\\"/g,'\\"')}let rG=iI("[Dead Clicks]"),rX=()=>!0,rY=e=>{var t;let i=!!(null==(t=e.instance.persistence)?void 0:t.get_property(iJ)),s=e.instance.config.capture_dead_clicks;return ei(s)?s:!!G(s)||i};var rK=class{get lazyLoadedDeadClicksAutocapture(){return this.Ho}constructor(e,t,i){this.instance=e,this.isEnabled=t,this.onCapture=i,this.startIfEnabledOrStop()}onRemoteConfig(e){if(!e.ok)return;let t=e.config;"captureDeadClicks"in t&&(this.instance.persistence&&this.instance.persistence.register({[iJ]:t.captureDeadClicks}),this.startIfEnabledOrStop())}startIfEnabledOrStop(){this.isEnabled(this)?this.zo(()=>{this.Uo()}):this.stop()}zo(e){var t,i,s;(null==(t=w.__PosthogExtensions__)?void 0:t.initDeadClicksAutocapture)?e():null==(i=w.__PosthogExtensions__)||null==(s=i.loadExternalDependency)||s.call(i,this.instance,"dead-clicks-autocapture",t=>{t?rG.error("failed to load script",t):e()})}Uo(){var e;if(d){if(!this.Ho&&(null==(e=w.__PosthogExtensions__)?void 0:e.initDeadClicksAutocapture)){let e=G(this.instance.config.capture_dead_clicks)?tS({},this.instance.config.capture_dead_clicks):{};e.__onCapture=this.onCapture,this.onCapture&&(e.capture_dead_swipes=!1),this.Ho=w.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,e),this.Ho.start(d),rG.info("starting...")}}else rG.error("`document` not found. Cannot start.")}stop(){this.Ho&&(this.Ho.stop(),this.Ho=void 0,rG.info("stopping..."))}};let rJ=iI("[SegmentIntegration]");function rZ(e,t){let i,s,r=!(arguments.length>2)||void 0===arguments[2]||arguments[2],n=e.config.segment;if(!n)return t();let{analytics:o,filterProperties:a}=W(n.register)?{analytics:n}:n;i=i=>{let s=()=>i.anonymousId()||sQ();e.config.get_device_id=s,r&&i.id()&&(e.register({distinct_id:i.id(),$device_id:s()}),e.persistence.set_property(sv,sI)),(i=>{o.register(function(e,t){let{filterProperties:i}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};"u">typeof Promise&&Promise.resolve||rJ.warn("This browser does not have Promise support, and can not use the segment integration");let s=(s,r)=>{if(!r)return s;let n=!!t&&s.event.anonymousId===t&&!s.event.userId;n||s.event.userId||s.event.anonymousId===e.get_distinct_id()||(rJ.info("No userId set, resetting PostHog"),e.reset()),n||(t=void 0),s.event.userId&&s.event.userId!==e.get_distinct_id()&&(rJ.info("UserId set, identifying with PostHog"),e.identify(s.event.userId)
2);let o=e.calculateEventProperties(r,s.event.properties);if(!Q(i)){let e=s.event.properties||{},t={};for(let i of Object.keys(o))z.call(e,i)||(t[i]=o[i]);let r=((e,t)=>{let i=V(e)?e:[e],s=tS({},t);for(let e of i)try{if(s=e(s),Q(s))return null}catch(e){return rJ.error("Error in Segment filterProperties:",e),null}return s})(i,t);if(Q(r))return s;o=r}return s.event.properties=Object.assign({},o,s.event.properties),s};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:()=>!0,load:()=>Promise.resolve(),track:e=>s(e,e.event.event),page:e=>s(e,sT),identify:e=>s(e,sL),screen:e=>s(e,"$screen")}}(e,i,{filterProperties:a})).then(()=>{t()},e=>{rJ.error("Failed to register the Segment integration",e),t()})})(r?void 0:i.anonymousId()||void 0)},"then"in(s=o.user())&&W(s.then)?s.then(i):i(s)}let rQ="posthog-js";function r0(e){let{organization:t,projectId:i,prefix:s,severityAllowList:r=["error"],sendExceptionsToPostHog:n=!0}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return o=>{var a,l,u,h,c,d;if("*"!==r&&!r.includes(o.level)||!e.__loaded)return o;o.tags||(o.tags={});let p=e.requestRouter.endpointFor("ui",`/project/${e.config.token}/person/${e.get_distinct_id()}`);o.tags["PostHog Person URL"]=p,e.sessionRecordingStarted()&&(o.tags["PostHog Recording URL"]=e.get_session_replay_url({withTimestamp:!0}));let f=(null==(a=o.exception)?void 0:a.values)||[],g=f.map(e=>tS(tS({},e),{},{stacktrace:e.stacktrace?tS(tS({},e.stacktrace),{},{type:"raw",frames:(e.stacktrace.frames||[]).map(e=>tS(tS({},e),{},{platform:"web:javascript"}))}):void 0})),v={$exception_message:(null==(l=f[0])?void 0:l.value)||o.message,$exception_type:null==(u=f[0])?void 0:u.type,$exception_level:o.level,$exception_list:g,$sentry_event_id:o.event_id,$sentry_exception:o.exception,$sentry_exception_message:(null==(h=f[0])?void 0:h.value)||o.message,$sentry_exception_type:null==(c=f[0])?void 0:c.type,$sentry_tags:o.tags};return t&&i&&(v.$sentry_url=(s||"https://sentry.io/organizations/")+t+"/issues/?project="+i+"&query="+o.event_id),n&&(null==(d=e.exceptions)||d.sendExceptionEvent(v)),o}}var r1=class{constructor(e,t,i,s,r,n){this.name=rQ,this.setupOnce=function(o){o(r0(e,{organization:t,projectId:i,prefix:s,severityAllowList:r,sendExceptionsToPostHog:null==n||n}))}}},r2=class{constructor(e){this.Wo=(e,t,i)=>{i&&(i.noSessionId||i.activityTimeout||i.sessionPastMaximumLength||i.crossTabAdoption)&&(iF.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:e,changeReason:i}),this.Vo=void 0,this._instance.scrollManager.resetContext())},this._instance=e,this.Go()}Go(){var e;this.Zo=null==(e=this._instance.sessionManager)?void 0:e.onSessionId(this.Wo)}destroy(){var e;null==(e=this.Zo)||e.call(this),this.Zo=void 0}doPageView(e,t){var i;let s=this.Qo(e,t);return this.Vo={pathname:null!=(i=null==u?void 0:u.location.pathname)?i:"",pageViewId:t,timestamp:e},this._instance.scrollManager.resetContext(),s}doPageLeave(e){var t;return this.Qo(e,null==(t=this.Vo)?void 0:t.pageViewId)}doEvent(){var e;return{$pageview_id:null==(e=this.Vo)?void 0:e.pageViewId}}Qo(e,t){let i=this.Vo;if(!i)return{$pageview_id:t};let s={$pageview_id:t,$prev_pageview_id:i.pageViewId},r=this._instance.scrollManager.getContext();if(r&&!this._instance.config.disable_scroll_properties){let{maxScrollHeight:e,lastScrollY:t,maxScrollY:i,maxContentHeight:n,lastContentY:o,maxContentY:a}=r;if(!(Y(e)||Y(t)||Y(i)||Y(n)||Y(o)||Y(a))){e=Math.ceil(e),t=Math.ceil(t),i=Math.ceil(i),n=Math.ceil(n),o=Math.ceil(o),a=Math.ceil(a);let r=e>1?ev(t/e,0,1,iF):1,l=e>1?ev(i/e,0,1,iF):1,u=n>1?ev(o/n,0,1,iF):1,h=n>1?ev(a/n,0,1,iF):1;s=sH(s,{$prev_pageview_last_scroll:t,$prev_pageview_last_scroll_percentage:r,$prev_pageview_max_scroll:i,$prev_pageview_max_scroll_percentage:l,$prev_pageview_last_content:o,$prev_pageview_last_content_percentage:u,$prev_pageview_max_content:a,$prev_pageview_max_content_percentage:h})}}return i.pathname&&(s.$prev_pageview_pathname=i.pathname),i.timestamp&&(s.$prev_pageview_duration=(e.getTime()-i.timestamp.getTime())/1e3),s}};let r3=["flags","surveys"],r5={$people_distinct_id:{exposure:"hidden"},[iN]:{exposure:"hidden"},__cmpns:{exposure:"hidden"},[iU]:{exposure:"hidden"},[iq]:{exposure:"hidden"},[iz]:{exposure:"hidden"},[iV]:{exposure:"event"},[iW]:{exposure:"hidden"}
2,[iQ]:{exposure:"hidden"},[iG]:{exposure:"event"},[iX]:{exposure:"hidden"},[iY]:{exposure:"event"},[iK]:{exposure:"event"},[iJ]:{exposure:"event"},[iZ]:{exposure:"hidden"},[i0]:{exposure:"event"},[i1]:{exposure:"hidden"},$session_recording_enabled_server_side:{exposure:"hidden"},[i2]:{exposure:"hidden"},[i3]:{exposure:"event"},$replay_sample_rate:{exposure:"event",shouldSkipFromEventProperties:e=>Z(e)},$session_past_minimum_duration:{exposure:"event"},$session_recording_url_trigger_activated_session:{exposure:"event"},$session_recording_event_trigger_activated_session:{exposure:"event"},$debug_first_full_snapshot_timestamp:{exposure:"event"},$sess_rec_flush_size:{exposure:"hidden"},[i5]:{exposure:"hidden",storageGroup:"flags"},[i4]:{exposure:"hidden",storageGroup:"flags"},[i6]:{exposure:"hidden"},[i8]:{exposure:"hidden",storageGroup:"flags"},[i9]:{exposure:"hidden",storageGroup:"flags"},[i7]:{exposure:"hidden",storageGroup:"flags",volatile:!0},[se]:{exposure:"hidden",storageGroup:"flags"},[st]:{exposure:"hidden"},[si]:{exposure:"hidden"},[ss]:{exposure:"hidden"},[sr]:{exposure:"hidden"},[so]:{exposure:"hidden",storageGroup:"surveys"},[sa]:{exposure:"hidden",storageGroup:"surveys",volatile:!0},[sl]:{exposure:"event"},[su]:{exposure:"hidden"},[sh]:{exposure:"hidden"},[sc]:{exposure:"hidden"},$product_tours_activated:{exposure:"hidden"},$product_tours_activated_session:{exposure:"hidden"},$conversations_widget_session_id:{exposure:"event"},$conversations_ticket_id:{exposure:"event"},$conversations_widget_state:{exposure:"event"},$conversations_user_traits:{exposure:"event"},[sd]:{exposure:"hidden"},[sp]:{exposure:"hidden"},[sn]:{exposure:"event"},[sf]:{exposure:"hidden"},[sg]:{exposure:"hidden",storageGroup:"flags",volatile:!0},[sv]:{exposure:"hidden"},[s_]:{exposure:"hidden"},$capture_rate_limit:{exposure:"hidden"},[sm]:{exposure:"hidden"},[sy]:{exposure:"hidden"},[sb]:{exposure:"hidden"},[sw]:{exposure:"hidden"},$replay_override_sampling:{exposure:"event"},$replay_override_linked_flag:{exposure:"event"},$replay_override_url_trigger:{exposure:"event"},$replay_override_event_trigger:{exposure:"event"},[s$]:{exposure:"event"},[sE]:{exposure:"event"},[sS]:{exposure:"event"},[sP]:{exposure:"event"},$sdk_debug_replay_event_trigger_status:{exposure:"event"},$sdk_debug_replay_linked_flag_trigger_status:{exposure:"event"},$sdk_debug_replay_matched_recording_trigger_groups:{exposure:"event"}
2,$sdk_debug_replay_pending_trigger_conditions:{exposure:"event"},$sdk_debug_replay_remote_trigger_matching_config:{exposure:"event"},$sdk_debug_replay_trigger_groups_count:{exposure:"event"},$sdk_debug_replay_url_trigger_status:{exposure:"event"},$session_recording_start_reason:{exposure:"event"}},r4=[["$posthog_sr_group_event_trigger_",{exposure:"hidden"}],["$posthog_sr_group_url_trigger_",{exposure:"hidden"}],["$posthog_sr_group_sampling_",{exposure:"hidden"}]],r6=e=>{let t=r5[e];if(t)return t;for(let[t,i]of r4)if(0===e.indexOf(t))return i},r8=(e,t)=>{try{let i;return JSON.stringify(e,(e,t)=>ea(t)?(null!=i||(i=new WeakMap),i.has(t)||i.set(t,sU(t)),i.get(t)):"bigint"==typeof t?t.toString():t,t)}catch(t){return q(e)}},r9=e=>{let t=null==d?void 0:d.createElement("a");return Y(t)?null:(t.href=e,t)},r7=function(e,t){let i,s=((e.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&");for(let e=0;s.length>e;e++){let r=s[e].split("=");if(r[0]===t){i=r;break}}if(!V(i)||2>i.length)return"";{let e=i[1];try{e=decodeURIComponent(e)}catch(t){iF.error("Skipping decoding for malformed query param: "+e)}return e.replace(/\+/g," ")}},ne=function(e,t,i){if(!e||!t||!t.length)return e;let s=e.split("#"),r=s[1],n=(s[0]||"").split("?"),o=n[1],a=n[0],l=(o||"").split("&"),u=[];for(let e=0;l.length>e;e++){let s=l[e].split("=");V(s)&&(t.includes(s[0])?u.push(s[0]+"="+i):u.push(l[e]))}let h=a;return null!=o&&(h+="?"+u.join("&")),null!=r&&(h+="#"+r),h},nt=function(e,t){let i=e.match(RegExp(t+"=([^&]*)"));return i?i[1]:null},ni=(e,t)=>e>=t&&y(),ns=(e,t,i,s)=>{if(0===e){if(y()){let e=t+1;return e===i&&s(),e}return t}return 0},nr=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],nn=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...nr],no="<masked>",na=["li_fat_id"];function nl(e,t,i){let s;if(!d)return{};let r=t?[...nr,...i||[]]:[],n=nu(ne(d.URL,r,no),e);return sH((s={},sN(na,function(e){let t=sX(e);s[e]=t||null}),s),n)}function nu(e,t){let i=nn.concat(t||[]),s={};return sN(i,function(t){let i=r7(e,t);s[t]=i||null}),s}function nh(e){let t=e?0===e.search("https?://(.*)google.([^/?]*)")?"google":0===e.search("https?://(.*)bing.com")?"bing":0===e.search("https?://(.*)yahoo.com")?"yahoo":0===e.search("https?://(.*)duckduckgo.com")?"duckduckgo":null:null,i={};if(!Z(t)){i.$search_engine=t;let e=d?r7(d.referrer,"yahoo"!=t?"q":"p"):"";e.length&&(i.ph_keyword=e)}return i}function nc(){return navigator.language||navigator.userLanguage}let nd="$direct";function np(){return(null==d?void 0:d.referrer)||nd}function nf(e,t){let i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],s=e?[...nr,...t||[]]:[],r=i?ty(null==p?void 0:p.href):null==p?void 0:p.href,n=null==r?void 0:r.substring(0,1e3);return{r:np().substring(0,1e3),u:n?ne(n,s,no):void 0}}function ng(e){var t;let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],{r:s,u:r}=e,n=i?ty(r):r,o={$referrer:s,$referring_domain:null==s?void 0:s==nd?nd:null==(t=r9(s))?void 0:t.host};if(n){o.$current_url=n;let e=r9(n);o.$host=null==e?void 0:e.host,o.$pathname=null==e?void 0:e.pathname,sH(o,nu(n))}return s&&sH(o,nh(s)),o}function nv(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){return}}let n_={flags:sg,surveys:sa},nm=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],ny=e=>`${e}_cookie_identity_change_pending`,nb=e=>{let t="",i=0;for(let s of e){let e=encodeURIComponent(JSON.stringify(s).slice(1,-1)).length;if(i+e>1e3)break;t+=s,i+=e}return t},nw="main",nx=[i5,i4,i8,i9,i7,sg,se,ss],nk=e=>-1!==nx.indexOf(e),n$=[iq,iz],nE=e=>-1!==n$.indexOf(e),nS=(e,t)=>{try{return JSON.stringify(e)===JSON.stringify(t)}catch(i){return e===t}},nP=e=>{if(!e)return{};let t=JSON.parse(e);return G(t)?t:{}},nR=(e,t)=>{sN(e,(i,s)=>{let r=r6(s);r&&"event"!==r.exposure||({}).hasOwnProperty.call(t,s)||delete e[s]})};var nF=class{constructor(e,t,i=!0){if(this.Jo={},this.Ko=!1,this.Xo=!1,this.Yo=!1,this.ta=!1,this.ea=!1,this.ia=new Map,this.na=!1,this.sa=!1,this.ra=!1,this.oa=new Set,this.aa=new Set,this.Rr=e,this.la=i,this.props={},this.ua=void 0,this.ha=(e=>{let t="";return e.token&&(t=e.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),e.persistence_name?"ph_"+e.persistence_name:"ph_"+t+"_posthog"})(e),this.qo=this.ca(e),this.Yo=this.da(e),this.load(),this.va(),e.debug&&iF.info("Persistence loaded",e.persistence,tS({},this.props)),this.update_config(e,e,t),this.save(),u){const e=()=>this.flush();sW(u,"beforeunload",e,{capture:!1}),sW(u,"pagehide",e,{capture:!1}),this.fa=e=>{if(this.Ko&&(!e.storageArea||e.storageArea===(null==u?void 0:u.localStorage))&&e.key)if(e.key!==this.ha){if(this.Yo){let t=r3.find(t=>e.key===this.pa(t));t&&this.ga(e.key,t)}}else this.ga(e.key,nw)},sW(u,"storage",this.fa)}}
2markCrossTabFeatureFlagChanges(e){Object.entries(e).forEach(e=>{let[t,i]=e,s=this.ia.get(t);if(!nk(t)||!0===s)return;if(!0===i)return void this.ma(t,!0);let r=new Set(s||[]);i.forEach(e=>r.add(e)),r.size&&this.ma(t,r)})}onCrossTabFeatureFlagChange(e){return this.aa.add(e),()=>this.aa.delete(e)}destroy(){this.fa&&u&&(u.removeEventListener("storage",this.fa),this.fa=void 0),this.aa.clear()}ga(e,t){let i,s,r=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(this.mi)return!1;try{if(s=s6.Ot(e),Z(s)){let e=this.ya(t);return e.storageValue=null,t!==nw&&(e.persisted=!1),!1}i=nP(s)}catch(e){return!1}let n=t===nw?i:s6.Dt(this.ha);if(n&&this.ba(n))return!1;let o=this._a(i,t,r);return t===nw&&this.Yo&&!nS(this.wa().main,i)||this.ka(i,t,!0,s),o}ba(e){let t=this.props[iL],i=e[iL];return!Y(t)&&!Y(i)&&t!==i}ka(e,t,i,s){let r=this.ya(t);r.storageValue=s,t!==nw&&(r.persisted=i);try{r.fingerprint=this.Sa(e,t)}catch(e){r.fingerprint=void 0}}_a(e,t,i){let s=!1;return nx.forEach(i=>{var r;let n=null==(r=r6(i))?void 0:r.storageGroup;if(t===nw&&this.Yo&&n||t!==nw&&n!==t)return;let o=i in e,a=this.xa(i,o?e[i]:void 0),l=this.ia.has(i)?i in this.props:o;l===i in this.props&&nS(a,this.props[i])||(l?this.Ca(i,a,!1):this.$a(i,!1),s=!0)}),s&&i&&this.aa.forEach(e=>e()),s}Ta(){if(!this.Ko)return!1;try{this.ra=!1;let e=s6.Ot(this.ha),t=this.ya(nw),i,s=!1,r=!1;if(e!==t.storageValue)if(Z(e))t.storageValue=null;else{if(i=nP(e),this.ra=!this.sa&&this.ba(i),this.ra)return!1;r=this._a(i,nw,!1),!this.Yo||nS(this.wa().main,i)?this.ka(i,nw,!0,e):t.storageValue=e,s=!0}return this.Yo&&r3.forEach(e=>{let t=s6.Ot(this.pa(e)),n=this.ya(e),o=i||{},a=s&&nx.some(t=>{var i;return(null==(i=r6(t))?void 0:i.storageGroup)===e&&t in o});if(t===n.storageValue&&!a)return;if(Z(t))return n.storageValue=null,n.persisted=!1,void(a&&(r=this._a(o,e,!1)||r));let l=nP(t);r=this._a(l,e,!1)||r,this.ka(l,e,!0,t)}),r}catch(e){return!1}}ma(e,t){this.ia.set(e,t);let i=r6(e);(null==i?void 0:i.volatile)||(this.ya((this.Yo?null==i?void 0:i.storageGroup:void 0)||nw).fingerprint=void 0,this.Ia(e))}Ma(){nx.forEach(e=>this.ia.set(e,!0))}va(){if(this.Ko)try{let e=s6.Ot(this.ha),t=nP(e);this.ya(nw).storageValue=e,nx.forEach(e=>{var i;let s=this.Yo?null==(i=r6(e))?void 0:i.storageGroup:void 0,r=s?s6.Ot(this.pa(s)):null;if(s){let e=this.ya(s);e.storageValue=r,e.persisted=!Z(r)}let n=s&&!Z(r)?nP(r):t;e in this.props?this.Ea(e,n[e],this.props[e]):e in n&&this.ma(e,!0)})}catch(e){}}xa(e,t){let i=this.ia.get(e);if(!i)return t;if(!0===i)return this.props[e];if("$active_feature_flags"===e){let s=new Set(V(t)?t:[]),r=new Set(V(this.props[e])?this.props[e]:[]);return i.forEach(e=>r.has(e)?s.add(e):s.delete(e)),Array.from(s)}let s=G(t)?tS({},t):{},r=G(this.props[e])?this.props[e]:{};return i.forEach(e=>{e in r?s[e]=r[e]:delete s[e]}),s}Ea(e,t,i){if(!nk(e))return;let s=this.ia.get(e);if(!0===s)return;let r=t;if(this.Ko)try{var n;let t=this.Yo?null==(n=r6(e))?void 0:n.storageGroup:void 0,i=t?this.pa(t):this.ha;r=nP(s6.Ot(i))[e]}catch(e){}let o=new Set(s||[]);if("$active_feature_flags"===e){if(!Y(t)&&!V(t)||!Y(r)&&!V(r)||!V(i))return void this.ma(e,!0);let s=new Set(t||[]),n=new Set(r||[]),a=new Set(i);new Set([...s,...a]).forEach(e=>{s.has(e)!==a.has(e)&&o.add(e)}),o.forEach(e=>{n.has(e)===a.has(e)&&o.delete(e)})}else{if(!G(i))return void(nS(r,i)?this.ia.delete(e):this.ma(e,!0));{if(!Y(t)&&!G(t)||Y(t)&&X(i)&&Y(r))return void this.ma(e,!0);let s=G(t)?t:{},n=G(r)?r:{};new Set([...Object.keys(s),...Object.keys(i)]).forEach(e=>{e in s==e in i&&nS(s[e],i[e])||o.add(e)}),o.forEach(e=>{e in n==e in i&&nS(n[e],i[e])&&o.delete(e)})}}o.size?this.ma(e,o):this.ia.delete(e)}Pa(){var e;let t=null==(e=this.Rr)?void 0:e.persistence_save_debounce_ms;return ee(t)&&t>0?t:0}Ra(e){if(this.Rr.cookieWinsOnConflict&&"localstorage+cookie"===this.Rr.persistence.toLowerCase())if(e)try{let t=rt(e,this.Rr.cookie_persisted_properties||[]),i=rs(t,this.Rr.cookie_persisted_properties||[]),s=JSON.stringify(t)+"|"+JSON.stringify(i),r=s5.Ot(this.ha)||void 0;r&&rn(this.ha,r)===s&&(this.Aa=s,this.Fa=r)}catch(e){}else try{let e=s5.Ot(this.ha)||void 0;this.Aa=e?rn(this.ha,e):void 0,this.Fa=e}catch(e){}}syncCookieProperties(){return this.Oa(this.Rr)}Oa(e){let t,i,s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.mi&&!s||this.ea||!e.cookieWinsOnConflict||"localstorage+cookie"!==e.persistence.toLowerCase())return!1;try{t=s5.Ot(this.ha)||void 0}catch(e){}if(!t||t===this.Fa)return!1;let r=rn(this.ha,t);try{i=re(JSON.parse(t))}catch(e){return!1}if((s5.Ot(this.ha)||void 0)!==t)return!1;this.Aa=r,this.Fa=t;let n=rr(this.ha,t),o=[...s9,...n.properties],a={};
2if(Object.keys(i).forEach(e=>{let t=i[e];(Y(t)||Z(t)||""===t||"$user_state"===e&&"anonymous"!==t&&"identified"!==t)&&(a[e]=!0,delete i[e])}),X(i))return!1;let l="distinct_id"in i||"anonymous"===i.$user_state||"identified"===i.$user_state,u=this.props,h=u[iL],c=u[sv],d=sH({},u);[...s9,...e.cookie_persisted_properties||[]].forEach(e=>{if(-1!==o.indexOf(e)&&!(e in i)&&!a[e]&&(l||"distinct_id"!==e&&"$user_state"!==e)){let t=d[e];(n.isValid||-1===s9.indexOf(e)||!1!==t&&0!==t)&&delete d[e]}}),this.props=sH(d,i),nx.forEach(e=>{let t=e in this.props;e in u===t&&nS(u[e],this.props[e])||(t?this.Ea(e,u[e],this.props[e]):this.ma(e,!0))}),!l||"$user_state"in i||"$user_state"in this.props||this.Ca(sv,sF);let p=this.props[iL],f=this.props[sv];return l&&(p!==h||f!==c)&&(this.sa=!0,this.ta=!0,ru.At(ny(this.ha),!0),this.$a(ss),this.$a(i4),this.$a(i5),this.$a(i8),this.$a(i9),this.$a(i7),this.$a(sg),this.$a(sf),this.$a(sd),"anonymous"!==f||"identified"!==c&&"anonymous"!==i.$user_state&&(Y(h)||p===h)||(nR(this.props,i),this.$a(sr)),"identified"===f?this.props.$user_id=p:delete this.props.$user_id,this.$a(iN)),!0}
2consumeCookieIdentityChange(){let e=ny(this.ha),t=this.ta||!!ru.Ot(e);return this.ta=!1,t&&ru.Lt(e),t}Da(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return!(this.ea||this.mi&&!e||!this.Rr.cookieWinsOnConflict||"localstorage+cookie"!==this.Rr.persistence.toLowerCase()||(this.ea=!0,0))}La(){this.ea&&(Y(this.Na)||(clearTimeout(this.Na),this.Na=void 0),delete this.Jo[nw],this.qa(!0))}ja(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];if(this.ea)try{e?this.La():Y(this.Na)||(clearTimeout(this.Na),this.Na=void 0)}finally{this.ea=!1}}isDisabled(){return!!this.mi}ca(e){-1===nm.indexOf(e.persistence.toLowerCase())&&(iF.critical("Unknown persistence type "+e.persistence+"; falling back to localStorage+cookie"),e.persistence="localStorage+cookie");let t=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=[...s9,...e];return tS(tS({},s6),{},{Dt(e){try{let r,n,o={};try{o=(n=s5.Ot(e)||void 0)?re(JSON.parse(n)):{}}catch(e){}let a=JSON.parse(s6.Ot(e)||"{}");if(t){let t=rr(e,n),l=[...s9,...t.properties],u={};Object.keys(o).forEach(e=>{let t=o[e];Z(t)||""===t||"$user_state"===e&&"anonymous"!==t&&"identified"!==t||(u[e]=t)});let h="distinct_id"in u||"anonymous"===u.$user_state||"identified"===u.$user_state;if(Object.keys(u).length>0){var s;let e=a[iL],r=null!=(s=a.$user_state)?s:sF;i.forEach(e=>{if(-1!==l.indexOf(e)&&!(e in o)&&(h||"distinct_id"!==e&&"$user_state"!==e)){let i=a[e];(t.isValid||-1===s9.indexOf(e)||!1!==i&&0!==i)&&delete a[e]}}),!h||"$user_state"in o||"$user_state"in a||(a[sv]=sF),h&&(("distinct_id"in u?u[iL]:a[iL])!==e||("$user_state"in u?u[sv]:a[sv])!==r)&&(s8.forEach(e=>delete a[e]),"identified"===u.$user_state&&"distinct_id"in u?a.$user_id=u[iL]:delete a.$user_id,"identified"!==u.$user_state&&(delete a[sn],delete a[sr]),delete a.__alias)}r=sH(a,u)}else r=sH(o,a);return s6.At(e,r),r}catch(e){}return null},At(i,s,r,n,o,a){let l=s6.At(i,s,void 0,void 0,a);try{let u=rt(s,e);if(Object.keys(u).length){if(t){let t=i+"_cpm",h=rs(u,e);if(s5.At(t,h,r,n,o,a),s5.Ot(t)!==JSON.stringify(h)){s5.Lt(t,n);let e=rt(s);return s5.At(i,e,r,n,o,a),l}}s5.At(i,u,r,n,o,a)}}catch(e){s6.Pt(e)}return l},Lt(e,t){try{null==u||u.localStorage.removeItem(e),s5.Lt(e,t),s5.Lt(e+"_cpm",t)}catch(e){s6.Pt(e)}}})}(e.cookie_persisted_properties||[],e.cookieWinsOnConflict),i,s=!1,r=!1,n=e.persistence.toLowerCase();return"localstorage"===n&&s6.Et()?(i=s6,r=!0):"localstorage+cookie"===n&&t.Et()?(i=t,r=!0,s=!0):"sessionstorage"===n&&ru.Et()?i=ru:"memory"===n?i=ra:"cookie"===n&&s5.Et()?(i=s5,s=!0):t.Et()?(i=t,r=!0,s=!0):s5.Et()?(i=s5,s=!0):i=ra,this.Ko=r,this.Xo=s,i}pa(e){return`${this.ha}__${e}`}da(e){return this.Ko&&!!e.split_storage}properties(){let e={};return sN(this.props,(t,i)=>{let s=r6(i);if(!s||"event"===s.exposure){var r;if(null==s||null==(r=s.shouldSkipFromEventProperties)?void 0:r.call(s,t))return;e[i]=t}}),e}load(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.mi&&!e)return;let t=this.Rr.cookieWinsOnConflict&&"localstorage+cookie"===this.Rr.persistence.toLowerCase(),i=t?s6.Dt(this.ha):null,s={};if(t)try{s=re(s5.Dt(this.ha)),sN(s,(e,t)=>{(Y(e)||Z(e)||""===e)&&delete s[t]})}catch(e){}let r=this.qo.Dt(this.ha);if(r&&(this.props=sH({},r)),this.Yo&&this.Ba(),t&&r){var n,o;let e=null==i?void 0:i[iL],t=null!=(n=null==i?void 0:i.$user_state)?n:sF,a=r[iL],l=null!=(o=r.$user_state)?o:sF;if(a!==e||l!==t){this.ta=!0,ru.At(ny(this.ha),!0);let i=sH({},this.props);s8.forEach(e=>delete i[e]),"anonymous"!==l||"identified"!==t&&"anonymous"!==s.$user_state&&(Y(e)||a===e)||(nR(i,s),delete i[sr]),this.props=i;let r=new Set;s8.forEach(e=>{var t;let i=null==(t=r6(e))?void 0:t.storageGroup;i&&r.add(i)}),r.forEach(e=>{let t={};sN(this.props,(i,s)=>{var r;(null==(r=r6(s))?void 0:r.storageGroup)===e&&(t[s]=i)}),X(t)?(s6.Lt(this.pa(e)),this.Jo[e]={}):s6.At(this.pa(e),t)&&(this.Jo[e]={persisted:!0,fingerprint:this.Sa(t,e)})})}}ru.Ot(ny(this.ha))&&(this.ta=!0)}Ba(){for(let e of r3){let t=s6.Dt(this.pa(e));if(t&&!X(t)){let i=this.ya(e);i.persisted=!0,this.Ha(e)||(i.fingerprint=this.Sa(t,e)),this.za(e,t)||sH(this.props,t)}}}Ha(e){return Object.keys(this.props).some(t=>{var i;return(null==(i=r6(t))?void 0:i.storageGroup)===e})}za(e,t){let i=n_[e];
2if(!i)return!1;let s=t[i],r=this.props[i];return ee(s)&&ee(r)&&r>s}refreshKey(e){var t;if(this.mi||this.oa.has(e))return;let i=this.Yo?null==(t=r6(e))?void 0:t.storageGroup:void 0,s=i?s6.Dt(this.pa(i)):this.qo.Dt(this.ha);if(s&&e in s)this.Ca(e,s[e],!1);else{if(i){let t=this.qo.Dt(this.ha);if(t&&e in t)return void this.Ca(e,t[e],!1)}this.$a(e,!1)}}save(){if(this.mi)return;let e=this.Pa();e>0?Y(this.Na)&&(this.Na=setTimeout(()=>{this.Na=void 0,this.qa()},e)):this.qa()}flush(){Y(this.Na)||(clearTimeout(this.Na),this.Na=void 0,this.qa())}qa(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.mi||this.ea&&!e)return;e||(this.syncCookieProperties(),this.Rr.cookieWinsOnConflict&&"localstorage+cookie"===this.Rr.persistence.toLowerCase()||n$.forEach(e=>this.refreshKey(e)));let t=!e&&!this.na;t||(this.ra=!1);let i=!!t&&this.Ta();if(this.ra)return void(this.Rr.debug&&iF.warn("skipping persistence write because storage belongs to a different distinct ID"));if(this.Yo)return this.Ua(),void(i&&this.aa.forEach(e=>e()));let s=this.Wa(this.qo,this.ha,this.props,nw);"written"===s&&this.Ra(this.props),"failed"!==s&&(this.ia.clear(),this.sa=!1,this.oa.clear()),i&&this.aa.forEach(e=>e())}Ua(){let{main:e,groups:t}=this.wa(),i=this.Wa(this.qo,this.ha,e,nw);for(let r of("written"===i&&this.Ra(e),"failed"!==i&&(this.sa=!1,this.oa.clear(),nx.forEach(e=>{var t;(null==(t=r6(e))?void 0:t.storageGroup)||this.ia.delete(e)})),r3)){var s;let e=t[r];if(X(e)&&!(null==(s=this.Jo[r])?void 0:s.persisted)){nx.forEach(e=>{var t;(null==(t=r6(e))?void 0:t.storageGroup)===r&&this.ia.delete(e)});continue}let i=this.Wa(s6,this.pa(r),e,r);"failed"!==i&&nx.forEach(e=>{let t=r6(e);(null==t?void 0:t.storageGroup)!==r||"written"!==i&&t.volatile||this.ia.delete(e)})}}wa(){let e={},t={flags:{},surveys:{}};return sN(this.props,(i,s)=>{var r;let n=null==(r=r6(s))?void 0:r.storageGroup;n?t[n][s]=i:e[s]=i}),{main:e,groups:t}}Sa(e,t){if(t===nw)return JSON.stringify(e)+"|"+this.Va+"|"+this.Ga+"|"+this.Za;let i={};return sN(e,(e,t)=>{var s;i[t]=(null==(s=r6(t))?void 0:s.volatile)?"__volatile__":e}),JSON.stringify(i)}Wa(e,t,i,s){let r,n=this.ya(s);if(s!==nw&&!n.dirty&&!Y(n.fingerprint))return"skipped";try{if((r=this.Sa(i,s))===n.fingerprint)return n.dirty=!1,"skipped"}catch(e){r=void 0}return e.At(t,i,this.Va,this.Ga,this.Za,this.Rr.debug)?(n.dirty=!1,s!==nw&&(n.persisted=!0),Y(r)||(n.fingerprint=r),this.Ko&&(n.storageValue=s6.Ot(t)),"written"):(this.Rr.debug&&iF.warn(`failed to persist storage entry "${t}"; will retry on next save`),"failed")}remove(){let{keepGroupEntries:e=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.Ma(),Y(this.Na)||(clearTimeout(this.Na),this.Na=void 0),this.qo.Lt(this.ha,!1),this.qo.Lt(this.ha,!0),!e&&this.la)for(let e of r3)s6.Lt(this.pa(e));e?delete this.Jo[nw]:this.Jo={},this.Aa=void 0,this.Fa=void 0}clear(){this.remove(),this.props={}}register_once(e,t,i){if(G(e)){this.syncCookieProperties(),Y(t)&&(t="None"),this.Va=Y(i)?this.Qa:i;let s=!1;if(sN(e,(e,i)=>{this.props.hasOwnProperty(i)&&this.props[i]!==t||(this.Ca(i,e),s=!0)}),s)return this.save(),!0}return!1}register(e,t){if(G(e)){this.syncCookieProperties(),this.Va=Y(t)?this.Qa:t;let i=!1;if(sN(e,(t,s)=>{e.hasOwnProperty(s)&&(this.props[s]!==t||G(t)||V(t))&&(this.Ca(s,t),i=!0)}),i)return this.save(),!0}return!1}unregister(e){this.syncCookieProperties();let t=!1;for(let i of"string"==typeof e?[e]:e)i in this.props&&(this.$a(i),t=!0);t&&this.save()}update_campaign_params(){let e=null==d?void 0:d.URL;if(e===this.ua)return;let t=nl(this.Rr.custom_campaign_params,this.Rr.mask_personal_data_properties,this.Rr.custom_personal_data_properties),i=!X(sz(t));return i&&this.register(t),this.ua=e,i?t:void 0}update_search_keyword(){let e;this.register((e=null==d?void 0:d.referrer)?nh(e):{})}update_referrer_info(){var e;this.register_once({$referrer:np(),$referring_domain:(null==d?void 0:d.referrer)&&(null==(e=r9(d.referrer))?void 0:e.host)||nd},void 0)}set_initial_person_info(){if(this.props.$initial_campaign_params||this.props.$initial_referrer_info)return;let e=nf(this.Rr.mask_personal_data_properties,this.Rr.custom_personal_data_properties,this.Rr.disable_capture_url_hashes
2);this.register_once({[sb]:this.Xo?{r:nb(e.r),u:e.u?nb(e.u):void 0}:e},void 0)}get_initial_props(){let e={};sN([sy,sm],t=>{let i=this.props[t];i&&sN(i,function(t,i){e["$initial_"+H(i)]=t})});let t=this.props[sb];return t&&sH(e,function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=ng(e,t),s={};return sN(i,function(e,t){s[`$initial_${H(t)}`]=e}),s}(t,this.Rr.disable_capture_url_hashes)),e}safe_merge(e){return sN(this.props,function(t,i){i in e||(e[i]=t)}),e}update_config(e,t,i){let s=e.persistence!==t.persistence,r=!((e,t)=>{if(e.length!==t.length)return!1;let i=[...e].sort(),s=[...t].sort();return i.every((e,t)=>e===s[t])})(e.cookie_persisted_properties||[],t.cookie_persisted_properties||[]),n=s||r,o=e.cookieWinsOnConflict!==t.cookieWinsOnConflict,a=e.disable_persistence||!!i,l=!!this.mi&&!a;a||this.Oa(t,l),this.Rr=e,!a&&(s||r||o)&&(this.Aa=void 0,this.Fa=void 0,this.Oa(tS(tS({},e),{},{cookie_persisted_properties:t.cookie_persisted_properties}),l));let u=n||o?this.ca(e):this.qo;this.Ja();let h=this.da(e),c=n||h!==this.Yo,d=!a&&(c||e.cross_subdomain_cookie!==this.Ga||e.secure_cookie!==this.Za)&&this.Da(l);this.na=c;try{if(this.Qa=this.Va=e.cookie_expiration,this.set_disabled(a),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie),c){let e=this.props;this.clear(),this.qo=u,this.Yo=h,this.props=e,this.save()}else o&&(this.qo=u,a||(delete this.Jo[nw],this.qa()))}finally{this.na=!1,d&&this.ja()}}Ja(){let e=this.props[sb];if(!this.Xo||!G(e)||"string"!=typeof e.r)return;let t=nb(e.r),i="string"==typeof e.u?nb(e.u):e.u;t===e.r&&i===e.u||this.Ca(sb,tS(tS({},e),{},{r:t,u:i}))}set_disabled(e){this.mi=e,this.mi?this.remove():this.save()}set_cross_subdomain(e){e!==this.Ga&&(this.Ga=e,this.remove({keepGroupEntries:!0}),this.save())}set_secure(e){e!==this.Za&&(this.Za=e,this.remove({keepGroupEntries:!0}),this.save())}set_event_timer(e,t){let i=this.props.__timers||{};i[e]=t,this.Ca(iU,i),this.save()}remove_event_timer(e){let t=this.props.__timers||{},i=t[e];return Y(i)||(delete t[e],this.Ca(iU,t),this.save()),i}get_property(e){return this.props[e]}set_property(e,t){this.Ca(e,t),this.save()}Ca(e,t){var i;let s=!(arguments.length>2)||void 0===arguments[2]||arguments[2],r=this.props[e];this.props[e]=t,s&&("distinct_id"!==e&&"$user_state"!==e||r===t||(this.sa=!0),nE(e)&&!nS(r,t)&&this.oa.add(e),this.Ea(e,r,t),(null==(i=r6(e))?void 0:i.volatile)||this.Ia(e))}$a(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];delete this.props[e],t&&(nk(e)&&this.ma(e,!0),nE(e)&&this.oa.add(e),this.Ia(e))}Ia(e){var t;let i=null==(t=r6(e))?void 0:t.storageGroup;i&&(this.ya(i).dirty=!0)}ya(e){return this.Jo[e]||(this.Jo[e]={})}};let nI="gzip-js",nO="base64",nC="events",nM="cancelEvents",nT="survey shown",nA="survey dismissed",nL="survey sent",nD="popover";function nj(e){let t=!0;return{dispose(){if(t){t=!1;let i=e();i&&W(i.then)&&i.then(void 0,()=>{})}}}}let nN=iI("[RateLimiter]");var nH=class{constructor(e){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=e=>{let t=e.text;if(t&&t.length)try{(JSON.parse(t).quota_limited||[]).forEach(e=>{nN.info(`${e||"events"} is quota limited.`),this.serverLimits[e]=(new Date).getTime()+6e4})}catch(e){return void nN.warn(`could not rate limit - continuing. Error: "${null==e?void 0:e.message}"`,{text:t})}},this.instance=e,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){var e;return(null==(e=this.instance.config.rate_limiting)?void 0:e.events_per_second)||10}get captureEventsBurstLimit(){var e;return Math.max((null==(e=this.instance.config.rate_limiting)?void 0:e.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(){var e,t,i;let s=arguments.length>0&&void 0!==arguments[0]&&arguments[0],{captureEventsBurstLimit:r,captureEventsPerSecond:n}=this,o=(new Date).getTime(),a=null!=(e=null==(t=this.instance.persistence)?void 0:t.get_property("$capture_rate_limit"))?e:{tokens:r,last:o};a.tokens+=(o-a.last)/1e3*n,a.last=o,a.tokens>r&&(a.tokens=r);let l=1>a.tokens;if(l||s||(a.tokens=Math.max(0,a.tokens-1)),l&&!s){let e=(ee(a.dropped)?a.dropped:0)+1;a.dropped=e,!this.lastEventRateLimited&&this.Ka(e)&&(a.dropped=0)}return this.lastEventRateLimited=l,null==(i=this.instance.persistence)||i.set_property("$capture_rate_limit",a),{isRateLimited:l,remainingTokens:a.tokens}}Xa(e){let t=this.instance.config.property_denylist;return!V(t)||!t.includes(e)}Ya(){var e;if(this.Xa("$current_url")&&this.Xa("$pathname")&&(null==p?void 0:p.pathname))return`${null!=(e=p.origin)?e:""}${p.pathname}`}Ka(e){var t,i;let{captureEventsBurstLimit:s,captureEventsPerSecond:r}=this,n=this.Ya(),o=this.Xa("$session_id")?null==(t=(i=this.instance).get_session_id)?void 0:t.call(i):void 0,a=[`${e} event(s) dropped since the last warning`,n?`triggered on ${n}`:void 0,o?`session ${o}
2`:void 0].filter(Boolean).join(", ");return!!this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:`posthog-js client rate limited: ${a}. Config is set to ${r} events per second and ${s} events burst limit.`},{skip_client_rate_limiting:!0})}isServerRateLimited(e){let t=this.serverLimits[e||"events"]||!1;return!1!==t&&(new Date).getTime()<t}};let nq=iI("[RemoteConfig]");var nB=class{constructor(e){this._instance=e}get remoteConfig(){var e;return null==(e=w._POSTHOG_REMOTE_CONFIG)||null==(e=e[this._instance.config.token])?void 0:e.config}tl(e){var t,i,s;(null==(t=w.__PosthogExtensions__)?void 0:t.loadExternalDependency)?null==(i=w.__PosthogExtensions__)||null==(s=i.loadExternalDependency)||s.call(i,this._instance,"remote-config",()=>e(this.remoteConfig)):e()}el(e){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets",`/array/${this._instance.config.token}/config`),callback:e})}load(){try{if(this.remoteConfig)return nq.info("Using preloaded remote config",this.remoteConfig),void this.il(this.remoteConfig);if(this._instance.nl())return void nq.warn("Remote config is disabled. Falling back to local config.");this.tl(e=>{e?this.il(e):(nq.info("No config found after loading remote JS config. Falling back to JSON."),this.el(e=>{this.il(e.json,e)}))})}catch(e){nq.error("Error loading remote config",e),this.il()}}il(e,t){!e&&t&&(0===t.statusCode?t.error||nq.warn("Failed to fetch remote config from PostHog."):nq.error("Failed to fetch remote config from PostHog."));try{this._instance.il(e?{ok:!0,config:e}:{ok:!1})}catch(e){nq.error("Error applying remote config",e)}if(!1!==(null==e?void 0:e.hasFeatureFlags)&&!this._instance.config.advanced_disable_feature_flags_on_first_load)try{var i;null==(i=this._instance.featureFlags)||i.ensureFlagsLoaded()}catch(e){nq.error("Error loading feature flags",e)}}},nz=Uint8Array,nU=Uint16Array,nV=Uint32Array,nW=new nz([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),nG=new nz([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),nX=new nz([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),nY=function(e,t){for(var i=new nU(31),s=0;31>s;++s)i[s]=t+=1<<e[s-1];var r=new nV(i[30]);for(s=1;30>s;++s)for(var n=i[s];i[s+1]>n;++n)r[n]=n-i[s]<<5|s;return[i,r]},nK=nY(nW,2),nJ=nK[1];nK[0][28]=258,nJ[258]=28;for(var nZ=nY(nG,0)[1],nQ=new nU(32768),n0=0;32768>n0;++n0){var n1=(43690&n0)>>>1|(21845&n0)<<1;nQ[n0]=((65280&(n1=(61680&(n1=(52428&n1)>>>2|(13107&n1)<<2))>>>4|(3855&n1)<<4))>>>8|(255&n1)<<8)>>>1}var n2=function(e,t,i){for(var s=e.length,r=0,n=new nU(t);s>r;++r)++n[e[r]-1];var o,a=new nU(t);for(r=0;t>r;++r)a[r]=a[r-1]+n[r-1]<<1;if(i){o=new nU(1<<t);var l=15-t;for(r=0;s>r;++r)if(e[r])for(var u=r<<4|e[r],h=t-e[r],c=a[e[r]-1]++<<h,d=c|(1<<h)-1;d>=c;++c)o[nQ[c]>>>l]=u}else for(o=new nU(s),r=0;s>r;++r)o[r]=nQ[a[e[r]-1]++]>>>15-e[r];return o},n3=new nz(288);for(n0=0;144>n0;++n0)n3[n0]=8;for(n0=144;256>n0;++n0)n3[n0]=9;for(n0=256;280>n0;++n0)n3[n0]=7;for(n0=280;288>n0;++n0)n3[n0]=8;var n5=new nz(32);for(n0=0;32>n0;++n0)n5[n0]=5;var n4=n2(n3,9,0),n6=n2(n5,5,0),n8=function(e){return(e/8|0)+(7&e&&1)},n9=function(e,t,i){(null==t||0>t)&&(t=0),(null==i||i>e.length)&&(i=e.length);var s=new(e instanceof nU?nU:e instanceof nV?nV:nz)(i-t);return s.set(e.subarray(t,i)),s},n7=function(e,t,i){var s=t/8|0;e[s]|=i<<=7&t,e[s+1]|=i>>>8},oe=function(e,t,i){var s=t/8|0;e[s]|=i<<=7&t,e[s+1]|=i>>>8,e[s+2]|=i>>>16},ot=function(e,t){for(var i=[],s=0;e.length>s;++s)e[s]&&i.push({s:s,f:e[s]});var r=i.length,n=i.slice();if(!r)return[new nz(0),0];if(1==r){var o=new nz(i[0].s+1);return o[i[0].s]=1,[o,1]}i.sort(function(e,t){return e.f-t.f}),i.push({s:-1,f:25001});var a=i[0],l=i[1],u=0,h=1,c=2;for(i[0]={s:-1,f:a.f+l.f,l:a,r:l};h!=r-1;)a=i[i[c].f>i[u].f?u++:c++],l=i[u!=h&&i[c].f>i[u].f?u++:c++],i[h++]={s:-1,f:a.f+l.f,l:a,r:l};var d=n[0].s;for(s=1;r>s;++s)n[s].s>d&&(d=n[s].s);var p=new nU(d+1),f=oi(i[h-1],p,0);if(f>t){s=0;var g=0,v=f-t,_=1<<v;for(n.sort(function(e,t){return p[t.s]-p[e.s]||e.f-t.f});r>s;++s){var m=n[s].s;if(t>=p[m])break;g+=_-(1<<f-p[m]),p[m]=t}for(g>>>=v;g>0;){var y=n[s].s;t>p[y]?g-=1<<t-p[y]++-1:++s}for(;s>=0&&g;--s){var b=n[s].s;p[b]==t&&(--p[b],++g)}f=t}return[new nz(p),f]},oi=function(e,t,i){return -1==e.s?Math.max(oi(e.l,t,i+1),oi(e.r,t,i+1)):t[e.s]=i},os=function(e){for(var t=e.length;t&&!e[--t];);for(var i=new nU(++t),s=0,r=e[0],n=1,o=function(e){i[s++]=e},a=1;t>=a;++a)if(e[a]==r&&a!=t)++n;else{if(!r&&n>2){for(;n>138;n-=138)o(32754);n>2&&(o(n>10?n-11<<5|28690:n-3<<5|12305),n=0)}else if(n>3){for(o(r),--n;n>6;n-=6)o(8304);n>2&&(o(n-3<<5|8208),n=0)}for(;n--;)o(r);n=1,r=e[a]}return[i.subarray(0,s),t]},or=function(e,t){for(var i=0,s=0;t.length>s;++s)i+=e[s]*t[s];return i},on=function(e,t,i){var s=i.length,r=n8(t+2);e[r]=255&s,e[r+1]=s>>>8,e[r+2]=255^e[r],e[r+3]=255^e[r+1];for(var n=0;s>n;++n)e[r+n+4]=i[n];return 8*(r+4+s)},oo=function(e,t,i,s,r,n,o,a,l,u,h){n7(t,h++,i),++r[256];for(var c=ot(r,15),d=c[0],p=c[1],f=ot(n,15),g=f[0],v=f[1],_=os(d),m=_[0],y=_[1],b=os(g),w=b[0],x=b[1],k=new nU(19),$=0;m.length>$;++$)k[31&m[$]]++;for($=0;w.length>$;++$)k[31&w[$]]++;for(var E=ot(k,7),S=E[0],P=E[1],R=19;R>4&&!S[nX[R-1]];--R);var F,I,O,C,M=u+5<<3,T=or(r,n3)+or(n,n5)+o,A=or(r,d)+or(n,g)+o+14+3*R+or(k,S)+(2*k[16]+3*k[17]+7*k[18]);if(T>=M&&A>=M)return on(t,h,e.subarray(l,l+u));if(n7(t,h,1+(T>A)),h+=2,T>A){F=n2(d,p,0),I=d,O=n2(g,v,0),C=g;var L=n2(S,P,0);for(n7(t,h,y-257),n7(t,h+5,x-1),n7(t,h+10,R-4),h+=14,$=0;R>$;++$)n7(t,h+3*$,S[nX[$]]);h+=3*R;for(var D=[m,w],j=0;2>j;++j){var N=D[j];for($=0;N.length>$;++$)n7(t,h,L[H=31&N[$]]),h+=S[H],H>15&&(n7(t,h,N[$]>>>5&127),h+=N[$]>>>12)}}else F=n4,I=n3,O=n6,C=n5;for($=0;a>$;++$)if(s[$]>255){oe(t,h,F[257+(H=s[$]>>>18&31)]),h+=I[H+257],H>7&&(n7(t,h,s[$]>>>23&31),h+=nW[H]);var H,q=31&s[$];oe(t,h,O[q]),h+=C[q],q>3&&(oe(t,h,s[$]>>>5&8191),h+=nG[q])}else oe(t,h,F[s[$]]),h+=I[s[$]];return oe(t,h,F[256]),h+I[256]},oa=new nV([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),ol=new nz(0),ou=function(){for(var e=new nV(256),t=0;256>t;++t){for(var i=t,s=9;--s;)i=(1&i&&0xedb88320)^i>>>1;e[t]=i}return e}(),oh=function(e,t,i){for(;i;++t)e[t]=i,i>>>=8};let oc=!!g||!!f,od=new WeakMap,op="text/plain",of=0,og=!1,ov=(e,t)=>{let[i,s]=e.split("#"),[r,n]=i.split("?");if(!n)return e;let o=n.split("&").filter(e=>e.split("=")[0]!==t).join("&");return`${r}${o?`?${o}`:""}${s?`#${s}`:""}`},o_=function(e,t){var i;let s=!(arguments.length>2)||void 0===arguments[2]||arguments[2],[r,n]=e.split("?"),o=tS({},t),a=null!=(i=null==n?void 0:n.split("&").map(e=>{var t;let[i,r]=e.split("="),n=s&&null!=(t=o[i])?t:r;return delete o[i],`${i}=${n}`}))?i:[],l=function(e){let t,i,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"&",r=[];return sN(e,function(e,s){Y(e)||Y(s)||"undefined"===s||(t=encodeURIComponent(e instanceof File?e.name:e.toString()),i=encodeURIComponent(s),r[r.length]=i+"="+t)}),r.join(s)}(o);return l&&a.push(l),a.length>0?`${r}?${a.join("&")}`:r},om=e=>{var t,i,s,r,n,o,a,l,u,h;if(e.sl)return e.sl;let{data:c,compression:d}=e;if(!c)return;if(d===nI){let e=(t=function(e){var t=e.length;if("u">typeof TextEncoder)return(new TextEncoder).encode(e);for(var i=new nz(e.length+(e.length>>>1)),s=0,r=function(e){i[s++]=e},n=0;t>n;++n){if(s+5>i.length){var o=new nz(s+8+(t-n<<1));o.set(i),i=o}var a=e.charCodeAt(n);128>a?r(a):(2048>a?r(192|a>>>6):(a>55295&&57344>a?(r(240|(a=65536+(1047552&a)|1023&e.charCodeAt(++n))>>>18),r(128|a>>>12&63)):r(224|a>>>12),r(128|a>>>6&63)),r(128|63&a))}return n9(i,0,s)}(r8(c)),i={mtime:0},s=0xffffffff,r={p(e){for(var t=s,i=0;e.length>i;++i)t=ou[255&t^e[i]]^t>>>8;s=t},d:()=>0xffffffff^s},n=t.length,r.p(t),u=(o=10+(i.filename&&i.filename.length+1||0),l=function(e,t,i,s,r){var n=e.length,o=new nz(s+n+5*(1+Math.floor(n/7e3))+8),a=o.subarray(s,o.length-8),l=0;if(!t||8>n)for(var u=0;n>=u;u+=65535){var h=u+65535;n>h?l=on(a,l,e.subarray(u,h)):(a[u]=r,l=on(a,l,e.subarray(u,n)))}else{for(var c=oa[t-1],d=c>>>13,p=8191&c,f=(1<<i)-1,g=new nU(32768),v=new nU(f+1),_=Math.ceil(i/3),m=2*_,y=function(t){return(e[t]^e[t+1]<<_^e[t+2]<<m)&f},b=new nV(25e3),w=new nU(288),x=new nU(32),k=0,$=0,E=(u=0,0),S=0,P=0;n>u;++u){var R=y(u),F=32767&u,I=v[R];if(g[F]=I,v[R]=F,u>=S){var O=n-u;if((k>7e3||E>24576)&&O>
2423){l=oo(e,a,0,b,w,x,$,E,P,u-P,l),E=k=$=0,P=u;for(var C=0;286>C;++C)w[C]=0;for(C=0;30>C;++C)x[C]=0}var M=2,T=0,A=p,L=F-I&32767;if(O>2&&R==y(u-L))for(var D=Math.min(d,O)-1,j=Math.min(32767,u),N=Math.min(258,O);j>=L&&--A&&F!=I;){if(e[u+M]==e[u+M-L]){for(var H=0;N>H&&e[u+H]==e[u+H-L];++H);if(H>M){if(M=H,T=L,H>D)break;var q=Math.min(L,H-2),B=0;for(C=0;q>C;++C){var z=u-L+C+32768&32767,U=z-g[z]+32768&32767;U>B&&(B=U,I=z)}}}L+=(F=I)-(I=g[F])+32768&32767}if(T){b[E++]=0x10000000|nJ[M]<<18|nZ[T];var V=31&nJ[M],W=31&nZ[T];$+=nW[V]+nG[W],++w[257+V],++x[W],S=u+M,++k}else b[E++]=e[u],++w[e[u]]}}l=oo(e,a,r,b,w,x,$,E,P,u-P,l),r||(l=on(a,l,ol))}return n9(o,0,s+n8(l)+8)}(t,null==i.level?6:i.level,null==i.mem?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(t.length)))):12+i.mem,o,!a)).length,function(e,t){var i=t.filename;if(e[0]=31,e[1]=139,e[2]=8,e[8]=2>t.level?4:2*(9==t.level),e[9]=3,0!=t.mtime&&oh(e,4,Math.floor(new Date(t.mtime||Date.now())/1e3)),i){e[3]=8;for(var s=0;i.length>=s;++s)e[s+10]=i.charCodeAt(s)}}(l,i),oh(l,u-8,r.d()),oh(l,u-4,n),l);return{contentType:op,body:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength),estimatedSize:e.byteLength}}if(d===nO){let e,t="data="+encodeURIComponent("string"==typeof(e=(h=r8(c))?btoa(encodeURIComponent(h).replace(/%([0-9A-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(t,16)))):h)?e:r8(e));return{contentType:"application/x-www-form-urlencoded",body:t,estimatedSize:new Blob([t]).size}}let p=r8(c);return{contentType:"application/json",body:p,estimatedSize:new Blob([p]).size}},oy=e=>{var t;let i,s=()=>"sendBeacon"===e.transport?{url:o_(e.url,{compression:nO}),encodedBody:om(tS(tS({},e),{},{compression:nO,sl:void 0}))}:{url:ov(e.url,"compression"),encodedBody:om(tS(tS({},e),{},{compression:void 0,sl:void 0}))};try{i=om(e)}catch(t){if(ii(e.compression,r7(e.url,"compression")))return iF.error("Failed to gzip request body, sending uncompressed payload",t),s();throw t}return!(i&&ii(e.compression,r7(e.url,"compression")))||((t=i.body)instanceof ArrayBuffer?it(new Uint8Array(t)):ArrayBuffer.isView(t)&&it(new Uint8Array(t.buffer,t.byteOffset,t.byteLength)))?{url:e.url,encodedBody:i}:(og=!0,s())},ob=e=>{try{return oy(e)}catch(i){var t;return iF.error(i),void(null==(t=e.callback)||t.call(e,{statusCode:0,error:i}))}},ow=($=ep(function*(e){let t=yield function(e){return ia.apply(this,arguments)}(r8(e.data),k.DEBUG,{rethrow:!0});if(!t)return e;let i=yield t.arrayBuffer();return tS(tS({},e),{},{sl:{contentType:op,body:i,estimatedSize:i.byteLength}})}),function(e){return $.apply(this,arguments)}),ox=/Failed to fetch|NetworkError|Load failed/i,ok=e=>"TypeError"===(null==e?void 0:e.name)&&ox.test((null==e?void 0:e.message)||""),o$=e=>{try{let t=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Date.now();if("string"!=typeof e||!e)return;let i=e.trim(),s=/^\d+\s*,/.test(i)?i.slice(0,i.indexOf(",")).trim():i;if(/^\d+$/.test(s)){let e=1e3*Math.min(Number(s),300);return e>0?e:void 0}if(!/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)[a-z]*[ ,]/.test(s))return;let r=/^\w{3} \w{3} /.test(s)?s+" GMT":s,n=Date.parse(r)-t;return Number.isFinite(n)&&n>0?Math.min(n,3e5):void 0}(e());return Y(t)?void 0:Math.min(t,3e4)}catch(e){return}},oE=e=>{let t=ob(e);if(!t)return;let i=new g;od.set(i,!0);let{url:s,encodedBody:r}=t;i.open(e.method||"GET",s,!0);let{contentType:n,body:o}=null!=r?r:{};sN(e.headers,function(e,t){i.setRequestHeader(t,e)}),n&&i.setRequestHeader("Content-Type",n),e.timeout&&(i.timeout=e.timeout),i.onreadystatechange=()=>{if(4===i.readyState){var t;let s={statusCode:i.status,text:i.responseText};if(200===i.status)try{s.json=JSON.parse(i.responseText)}catch(e){}null==(t=e.callback)||t.call(e,s,o$(()=>i.getResponseHeader("Retry-After")))}},i.send(o)},oS=e=>{let t=ob(e);if(!t)return;let{url:i,encodedBody:s}=t,{contentType:r,body:n,estimatedSize:o}=null!=s?s:{},a=new Headers;sN(e.headers,function(e,t){a.append(t,e)}),r&&a.append("Content-Type",r);let l=null,u=!1;if(v){let t=new v;l={signal:t.signal,timeout:setTimeout(()=>{var i;u=!0;try{t.abort(tm("AbortError","PostHog request timed out"+((i=e.timeout)?` after ${i}ms`:"")))}catch(e){c(e)}}
2,e.timeout)}}let h=!1,c=t=>{var i;h||(h=!0,u&&"AbortError"===(null==t?void 0:t.name)||ok(t)?iF.warn(t):iF.error(t),null==(i=e.callback)||i.call(e,{statusCode:0,error:t}))},d=0,p=()=>{of-=d,d=0,l&&clearTimeout(l.timeout)};try{let t=tS({method:(null==e?void 0:e.method)||"GET",headers:a,referrerPolicy:"strict-origin",body:n,signal:null==l?void 0:l.signal},e.fetchOptions),s=null!=o?o:Y(n)?0:void 0;t.keepalive="POST"===t.method&&!e.rl&&!1!==t.keepalive&&t.body===n&&!Y(s)&&s>=0&&52428.8>of+s,t.keepalive&&(d=s,of+=d),f(i,t).then(t=>t.text().then(i=>{var s;if(h)return;let r={statusCode:t.status,text:i};if(200===t.status)try{r.json=JSON.parse(i)}catch(e){iF.error(e)}h=!0,p(),null==(s=e.callback)||s.call(e,r,o$(()=>t.headers.get("Retry-After")))})).catch(e=>{p(),c(e)}).finally(p)}catch(e){p(),c(e)}},oP=e=>{try{var t;let{url:i,encodedBody:s}=oy(e),{contentType:r,body:n,estimatedSize:o}=null!=s?s:{};if(!n)return;let a=n instanceof Blob?n:new Blob([n],{type:r});if(c.sendBeacon(i,a))return;let l=V(e.data)?e.data:null==(t=e.data)?void 0:t.batch;if(V(l)&&l.length>1&&(null!=o?o:0)>16384){let t=Math.ceil(l.length/2),i=t=>V(e.data)?t:tS(tS({},e.data),{},{batch:t});return oP(tS(tS({},e),{},{data:i(l.slice(0,t))})),void oP(tS(tS({},e),{},{data:i(l.slice(t))}))}iF.warn(`Beacon of ~${null!=o?o:0} bytes was rejected by the browser, falling back to ${f?"fetch":"XHR"}`),f?oS(tS(tS({},e),{},{rl:!0})):oE(e)}catch(e){iF.warn("Beacon send failed",e)}},oR=(e,t,i,s)=>{let r="query"===s?"POST"===t?"sent_at":"_":void 0;return o_(i===nI?ov(e,"compression"):e,tS(tS({},r?{[r]:Date.now().toString()}:{}),i===nI?{}:{compression:i}))},oF=(o=[],f&&o.push({transport:"fetch",method:oS}),g&&o.push({transport:"XHR",method:oE}),(null==c?void 0:c.sendBeacon)&&o.push({transport:"sendBeacon",method:oP}),o),oI=!oc&&-1===(null==m?void 0:m.indexOf("MSIE"))&&-1===(null==m?void 0:m.indexOf("Mozilla"));function oO(e,t,i){var s,r,n;i&&(t=tS(tS({},t),{},{callback:e=>i(e)})),e.__loaded?oI?e.__request_queue.push(t):e.rateLimiter.isServerRateLimited(t.batchKey)?t.fireCallbackOnDrop&&(null==(r=t.callback)||r.call(t,{statusCode:429})):(t.transport=t.transport||e.config.api_transport,t.headers=tS(tS({},e.config.request_headers),t.headers),t.compression="best-available"===t.compression?null!=(s=e.compression)?s:t.compressionFallback:t.compression,(Y(e.config.disable_beacon)?e.config.__preview_disable_beacon:e.config.disable_beacon)&&(t.disableTransport=["sendBeacon"]),t.fetchOptions=t.fetchOptions||e.config.fetch_options,((e,t)=>{var i,s,r,n,o,a;let l,u,h=tS(tS({},e),{},{callback:null!=t?t:t=>{var i;return null==(i=e.callback)?void 0:i.call(e,t)}});h.timeout=h.timeout||6e4;let c=null!=(i=h.transport)?i:"fetch";"sendBeacon"===c&&Y(h.compression)&&h.data&&(h.compression=nO),"POST"===h.method&&h.data&&("capture-body"===h.timestampMode?(u=(l=(V(n=h.data)?n:[n]).map(e=>tS(tS({},e),e.timestamp instanceof Date&&!isNaN(e.timestamp.getTime())?{timestamp:e.timestamp.toISOString()}:{})))[0],h.data={api_key:null!=(o=null==u||null==(a=u.properties)?void 0:a.token)?o:null==u?void 0:u.token,batch:l,sent_at:(new Date).toISOString()}):"body"===h.timestampMode&&(h.data=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(new Date).toISOString();return V(e)?e.map(e=>tS(tS({},e),{},{sent_at:t})):tS(tS({},e),{},{sent_at:t})}(h.data))),h.url=oR(h.url,h.method,h.compression,h.timestampMode);let d=oF.filter(e=>!h.disableTransport||!e.transport||!h.disableTransport.includes(e.transport)),p=null!=(s=null==(r=function(e,t){for(let i=0;e.length>i;i++)if(t(e[i]))return e[i]}(d,e=>e.transport===c))?void 0:r.method)?s:d[0].method;if(!p)throw Error("No available transport method");let f=e=>{try{p(e)}catch(e){var t;ok(e)?iF.warn(e):iF.error(e),null==(t=h.callback)||t.call(h,{statusCode:0,error:e})}};"sendBeacon"!==c&&!h.preferSyncCompression&&h.data&&h.compression===nI&&_&&"u">typeof Promise&&!og?ow(h).then(e=>{f(e)}).catch(t=>{is(t)?(og=!0,f(tS(tS({},h),{},{compression:void 0,url:oR(e.url,e.method,void 0,e.timestampMode)}))):((e=>{if(!e||"object"!=typeof e)return!1;let t="name"in e?String(e.name):"";return is(e)||t===ie})(t)&&(og=!0),f(h))}):f(h)})(t,(s,r)=>{var n,o,a;e.rateLimiter.checkForLimiting(s),400>s.statusCode||null==(n=(o=e.config).on_request_error)||n.call(o,s),i?i(s,r):null==(a=t.callback)||a.call(t,s)})):t.fireCallbackOnDrop&&(null==(n=t.callback)||n.call(t,{statusCode:0}))}var oC=class{constructor(e,t){this.ol=!0,this.al=[],this.ll=ev((null==t?void 0:t.flush_interval_ms)||3e3,250,5e3,iF.createLogger("flush interval"),3e3),this.ul=e}enqueue(e){this.al.push(e),this.hl||this.cl()}unload(){this.dl();let e=Object.values(this.al.length>0?this.vl():{});[...e.filter(e=>0===e.url.indexOf("/e")),...e.filter(e=>0!==e.url.indexOf("/e"))].map(e=>{this.fl(e,"sendBeacon")})}enable(){this.ol=!1,this.cl()}cl(){this.ol||(this.hl=setTimeout(()=>{if(this.dl(),this.al.length>0){let e=this.vl();for(let t in e)this.fl(e[t])}},this.ll))}fl(e,t){try{this.ul(e,t)}catch(e){iF.error(e)}}dl(){clearTimeout(this.hl),this.hl=void 0}vl(){let e={};return sN(this.al,t=>{var i;let s=((t?t.batchKey:null)||t.url)+(t.batchGroup?`:${t.batchGroup}`:"");Y(e[s])&&(e[s]=tS(tS({},t),{},{data:[]})),null==(i=e[s].data)||i.push(t.data)}),this.al=[],e}};let oM=["retriesPerformedSoFar"];var oT=class{constructor(e){this._instance=e,this.pl=!1,this.gl=3e3,this.al=[],this.al=[],this.ml=!0,this.resume()}resume(){!Y(u)&&"onLine"in u.navigator&&(this.ml=u.navigator.onLine,this.yl||(this.yl=()=>{this.ml=!0,this.bl()},this._l=()=>{this.ml=!1},sW(u,"online",this.yl),sW(u,"offline",this._l)))}get length(){return this.al.length}retriableRequest(e,t){let{retriesPerformedSoFar:i}=e,s=il(e,oM);et(i)&&(s.url=o_(s.url,{retry_count:i})),oO(this._instance,t?tS(tS({},s),{},{transport:t}):s,(e,t)=>{var r;if(200!==e.statusCode&&(400>e.statusCode||e.statusCode>=500)){if((0===e.statusCode?3:10)>(null!=i?i:0))return void this.Ls(tS({retriesPerformedSoFar:i},s),t);0===e.statusCode&&iF.warn(`Request failed before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped retrying after ${null!=i?i:0} retries.`)}null==(r=s.callback)||r.call(s,e)})}Ls(e,t){let i,s,r,n=e.retriesPerformedSoFar||0;e.retriesPerformedSoFar=n+1;let o=Math.max((r=(Math.random()-.5)*((s=Math.min(18e5,i=3e3*Math.pow(2,n)))-i/2),Math.ceil(s+r)),null!=t?t:0),a=Date.now()+o;this.al.push({retryAt:a,requestOptions:e});let l=`Enqueued failed request for retry in ${o}`;navigator.onLine||(l+=" (Browser is offline)"),iF.warn(l),this.pl||(this.pl=!0,this.wl())}wl(){(this.kl&&clearTimeout(this.kl),0===this.al.length)?(this.pl=!1,this.kl=void 0):this.kl=setTimeout(()=>{this.ml&&this.al.length>0&&this.bl(),this.wl()},this.gl)}bl(){let e=Date.now(),t=[],i=this.al.filter(i=>e>i.retryAt||(t.push(i),!1));if(this.al=t,i.length>0)for(let{requestOptions:e}of i)this.retriableRequest(e)}unload(){for(let{requestOptions:e}of(this.kl&&(clearTimeout(this.kl),this.kl=void 0),this.pl=!1,Y(u)||(this.yl&&(u.removeEventListener("online",this.yl),this.yl=void 0),this._l&&(u.removeEventListener("offline",this._l),this._l=void 0)),this.al))try{this._instance._send_request(tS(tS({},e),{},{transport:"sendBeacon"}))}catch(e){iF.error(e)}this.al=[]}},oA=class{constructor(e){this._instance=e,this.Sl=()=>{var e,t,i,s;this.xl||(this.xl={});let r=this.scrollElement(),n=this.scrollY(),o=r?Math.max(0,r.scrollHeight-r.clientHeight):0,a=n+((null==r?void 0:r.clientHeight)||0),l=(null==r?void 0:r.scrollHeight)||0;this.xl.lastScrollY=Math.ceil(n),this.xl.maxScrollY=Math.max(n,null!=(e=this.xl.maxScrollY)?e:0),this.xl.maxScrollHeight=Math.max(o,null!=(t=this.xl.maxScrollHeight)?t:0),this.xl.lastContentY=a,this.xl.maxContentY=Math.max(a,null!=(i=this.xl.maxContentY)?i:0),this.xl.maxContentHeight=Math.max(l,null!=(s=this.xl.maxContentHeight)?s:0)}}get Cl(){return this._instance.config.scroll_root_selector}getContext(){return this.xl}resetContext(){let e=this.xl;return this.xl=void 0,setTimeout(this.Sl,0),e}startMeasuringScrollPosition(){sW(u,"scroll",this.Sl,{capture:!0}),sW(u,"scrollend",this.Sl,{capture:!0}),sW(u,"resize",this.Sl)}scrollElement(){var e,t;if(this.Cl){for(let t of V(this.Cl)?this.Cl:[this.Cl]){let i=null==u||null==(e=u.document)?void 0:e.querySelector(t);if(i)return i}return}return null==u||null==(t=u.document)?void 0:t.documentElement}$l(e){var t,i;if(this.Cl){let t=this.scrollElement();return t&&t["y"===e?"scrollTop":"scrollLeft"]||0}return u?"y"===e?u.scrollY||u.pageYOffset||(null==(t=u.document)||null==(t=t.documentElement)?void 0:t.scrollTop)||0:u.scrollX||u.pageXOffset||(null==(i=u.document)||null==(i=i.documentElement)?void 0:i.scrollLeft)||0:0}scrollY(){return this.$l("y")}scrollX(){return this.$l("x")}};let oL=e=>nf(null==e?void 0:e.config.mask_personal_data_properties,null==e?void 0:e.config.custom_personal_data_properties,null==e?void 0:e.config.disable_capture_url_hashes
2);var oD=class{constructor(e,t,i,s){this.Be=e=>{let t=this.Tl();if(t&&t.sessionId===e)return;let i={sessionId:e,props:this.Il(this._instance)};this.Ml.register({[s_]:i})},this._instance=e,this.El=t,this.Ml=i,this.Il=s||oL,this.El.onSessionId(this.Be)}Tl(){return this.Ml.props[s_]}getSetOnceProps(){var e;let t=null==(e=this.Tl())?void 0:e.props;return t?"r"in t?ng(t,this._instance.config.disable_capture_url_hashes):{$referring_domain:t.referringDomain,$pathname:t.initialPathName,utm_source:t.utm_source,utm_campaign:t.utm_campaign,utm_medium:t.utm_medium,utm_content:t.utm_content,utm_term:t.utm_term}:{}}getSessionProps(){let e={};return sN(sz(this.getSetOnceProps()),(t,i)=>{"$current_url"===i&&(i="url"),e[`$session_entry_${H(i)}`]=t}),e}},oj=class{on(e,t){return this.Pl[e]||(this.Pl[e]=[]),this.Pl[e].push(t),()=>{this.Pl[e]=this.Pl[e].filter(e=>e!==t)}}emit(e,t){for(let i of this.Pl[e]||[])i(t);for(let i of this.Pl["*"]||[])i(e,t)}constructor(){this.Pl={}}};let oN=iI("[SessionId]");var oH=class{on(e,t){return this.Rl.on(e,t)}constructor(e,t,i){var s;if(this.Al=null,this.Fl=null,this.Ol=[],this.Dl=void 0,this.Ll=!1,this.Rl=new oj,this.Nl=(e,t)=>!(!et(e)||!et(t))&&Math.abs(e-t)>this.sessionTimeoutMs,!e.persistence)throw Error("SessionIdManager requires a PostHogPersistence instance");if("always"===e.config.cookieless_mode)throw Error('SessionIdManager cannot be used with cookieless_mode="always"');this.Rr=e.config,this.Ml=e.persistence,this.He=void 0,this.Xt=void 0,this._sessionStartTimestamp=null,this.ql=void 0,this._sessionActivityTimestamp=null,this.jl=t||sQ,this.Bl=i||sQ;const r=this.Rr.persistence_name||this.Rr.token;if(this._sessionTimeoutMs=1e3*ev(this.Rr.session_idle_timeout_seconds||1800,60,36e3,oN.createLogger("session_idle_timeout_seconds"),1800),e.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.Hl(),this.zl="ph_"+r+"_window_id",this.Ul="ph_"+r+"_primary_window_exists",this.Wl()){const e=ru.Dt(this.zl),t=ru.Dt(this.Ul);e&&!t?this.He=e:ru.Lt(this.zl),ru.At(this.Ul,!0)}(null==(s=this.Rr.bootstrap)?void 0:s.sessionID)&&this.setBootstrapSessionId(this.Rr.bootstrap.sessionID),this.Vl()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(e){return Y(this.Ol)&&(this.Ol=[]),this.Ol.push(e),this.Xt&&e(this.Xt,this.He),()=>{this.Ol=this.Ol.filter(t=>t!==e)}}Wl(){return"memory"!==this.Rr.persistence&&!this.Ml.mi&&ru.Et()}Gl(e){e!==this.He&&(this.He=e,this.Wl()&&ru.At(this.zl,e))}Zl(){return this.He?this.He:this.Wl()?ru.Dt(this.zl):null}Ql(e){let t=this.Al;return!Z(t)&&!Z(e)&&5e3>Math.abs(e-t)}Jl(e,t,i){let s=t!==this._sessionActivityTimestamp,r=e===this.Xt&&i===this._sessionStartTimestamp;this._sessionStartTimestamp=i,this._sessionActivityTimestamp=t,this.Xt=e,r&&!s||r&&this.Ql(t)||(this.Al=t,this.Ml.register({[i2]:[t,e,i]}))}Kl(){var e;let t=null==(e=this.Rr)?void 0:e.persistence_save_debounce_ms;return et(t)&&t>0}Xl(){this.Kl()?this.Ml.refreshKey(i2):(this.Ml.flush(),this.Ml.load())}Yl(){var e;if(Z(this._sessionActivityTimestamp)||this._sessionActivityTimestamp===this.Al)return;this.Xl();let[,t,i]=this.tu();t===this.Xt&&i===this._sessionStartTimestamp&&(this.Al=this._sessionActivityTimestamp,this.Ml.register({[i2]:[this._sessionActivityTimestamp,null!=(e=this.Xt)?e:null,this._sessionStartTimestamp]}),this.Ml.flush())}eu(){let[e]=this.tu();return Math.max(et(e)?e:0,et(this._sessionActivityTimestamp)?this._sessionActivityTimestamp:0)}iu(e){return this.Xl(),this.Nl(e,this.eu())}tu(){let e=this.Ml.props[i2];return V(e)&&2===e.length&&e.push(e[0]),e||[0,null,0]}resetSessionId(){this.Al=null,this.ql=void 0,clearTimeout(this.nu),this.nu=void 0,this.Jl(null,null,null)}setBootstrapSessionId(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(new Date).getTime();try{let i=(e=>{let t=e.replace(/-/g,"");if(32!==t.length)throw Error("Not a valid UUID");if("7"!==t[12])throw Error("Not a UUIDv7");return parseInt(t.substring(0,12),16)})(e);return i>t+6e4?void oN.error("Bootstrap sessionID cannot be in the future"):i}catch(e){return void oN.error("Invalid sessionID in bootstrap",e)}}(e);return!Y(i)&&(t?this.ql={sessionId:e,sessionStartTimestamp:i}:this.Jl(e,(new Date).getTime(),i),!0)}destroy(){this.Ll=!0,this.Yl(),clearTimeout(this.nu),this.nu=void 0,this.Dl&&u&&(u.removeEventListener(sM,this.Dl,{capture:!1}),this.Dl=void 0),this.Ol=[]}Vl(){this.Dl=()=>{this.Yl(),this.Wl()&&ru.Lt(this.Ul)},sW(u,sM,this.Dl,{capture:!1})}
2checkAndGetSessionAndWindowId(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if("always"===this.Rr.cookieless_mode)throw Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');let s=t||(new Date).getTime(),r=this.Xt;if(i)this.Fl=s;else if(Z(this.Fl)||this.Fl>s||s-this.Fl>=1e3){var n,o;null==(n=(o=this.Ml).syncCookieProperties)||n.call(o),this.Fl=s}let[,a,l]=this.tu(),u=!Y(r)&&a!==r,h=this.eu(),c=this.Zl(),d=this.ql,p=!!d&&(d.sessionStartTimestamp>s+6e4||s-d.sessionStartTimestamp>864e5),f=d?p:et(l)&&Math.abs(s-l)>864e5,g=!1,v=u,_=!a||!!d,m=a,y=!_&&!e&&this.Nl(s,h);if(y&&((y=this.iu(s))||oN.info("cross-tab refresh kept the session alive",{sessionId:a}),[,a,l]=this.tu(),y||(_=!a||!!d)),_||y||f){v=!1;let e=d&&!p;a=e?d.sessionId:this.jl(),c=this.Bl(),oN.info("new session ID assigned",{sessionId:a,windowId:c,bootstrapped:!!e,changeReason:{noSessionId:_,activityTimeout:y,sessionPastMaximumLength:f}}),l=e?d.sessionStartTimestamp:s,this.ql=void 0,g=!0}else c||(c=this.Bl(),g=!0),(v=v||a!==m)&&(oN.info("adopted cross-tab session id",{sessionId:a,windowId:c}),g=!0);let b=et(h)&&e&&!f?h:s,w=et(l)?l:(new Date).getTime();this.Gl(c),this.Jl(a,b,w),e||this.Hl();let x={noSessionId:_,activityTimeout:y,sessionPastMaximumLength:f,crossTabAdoption:v};return g&&this.Ol.forEach(e=>e(a,c,x)),{sessionId:a,windowId:c,sessionStartTimestamp:w,changeReason:g?x:void 0,lastActivityTimestamp:h}}Hl(){this.Ll||(clearTimeout(this.nu),this.nu=setTimeout(()=>{if(!this.Ll)if(this.iu((new Date).getTime())){let e=this.Xt;this.resetSessionId(),this.Rl.emit("forcedIdleReset",{idleSessionId:e})}else this.Hl()},1.1*this.sessionTimeoutMs))}};let oq=function(e,t){if(!e)return!1;let i=e.userAgent;if(i&&eg(i,t))return!0;try{let i=null==e?void 0:e.userAgentData;if((null==i?void 0:i.brands)&&i.brands.some(e=>eg(null==e?void 0:e.brand,t)))return!0}catch(e){}return!!e.webdriver};function oB(){return(oB=ep(function*(){let e=null==c?void 0:c.userAgentData;if(null==e?void 0:e.getHighEntropyValues)try{let t=yield e.getHighEntropyValues(["model"]),i=null==t?void 0:t.model;return K(i)&&i.length>0?i:void 0}catch(e){return void iF.info("Unable to resolve $device_model from userAgentData.getHighEntropyValues",e)}})).apply(this,arguments)}function oz(e){var t;return!!(null==(t=e.conditions)||null==(t=t.events)||null==(t=t.values)?void 0:t.length)}let oU=(e,t)=>{if(!(e=>{try{new RegExp(e)}catch(e){return!1}return!0})(t))return!1;try{return new RegExp(t).test(e)}catch(e){return!1}},oV=e=>e.toLowerCase(),oW={exact:(e,t)=>t.some(t=>e.some(e=>t===e)),is_not:(e,t)=>t.every(t=>e.every(e=>t!==e)),regex:(e,t)=>t.some(t=>e.some(e=>oU(t,e))),not_regex:(e,t)=>t.every(t=>e.every(e=>!oU(t,e))),icontains:(e,t)=>t.map(oV).some(t=>e.map(oV).some(e=>t.includes(e))),not_icontains:(e,t)=>t.map(oV).every(t=>e.map(oV).every(e=>!t.includes(e))),gt:(e,t)=>t.some(t=>{let i=parseFloat(t);return!isNaN(i)&&e.some(e=>i>parseFloat(e))}),lt:(e,t)=>t.some(t=>{let i=parseFloat(t);return!isNaN(i)&&e.some(e=>i<parseFloat(e))})};function oG(e,t){return!e||Object.entries(e).every(e=>{let[i,s]=e,r=null==t?void 0:t[i];if(null==r)return!1;let n=oW[s.operator];return!!n&&n(s.values.map(String),[String(r)])})}function oX(e,t,i){return r8({distinct_id:e,userPropertiesToSet:t,userPropertiesToSetOnce:i})}let oY="custom",oK="i.posthog.com",oJ=/^\/static\//,oZ=["/s/","/e/","/i/"];var oQ=class{constructor(e){this.su={},this.instance=e}get apiHost(){let e=this.instance.config.api_host.trim().replace(/\/$/,"");return"https://app.posthog.com"===e?"https://us.i.posthog.com":e}get flagsApiHost(){let e=this.instance.config.flags_api_host;return e?e.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var e;let t=null==(e=this.instance.config.ui_host)?void 0:e.replace(/\/$/,"");return t||(t=this.apiHost.replace(`.${oK}`,".posthog.com")),"https://app.posthog.com"===t?"https://us.posthog.com":t}get region(){return this.su[this.apiHost]||(this.su[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"us":/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"eu":
2oY),this.su[this.apiHost]}ru(e){if(!oJ.test(e))return;let t=this.instance.config.asset_host;return"string"==typeof t&&t.trim().replace(/\/$/,"")||void 0}ou(e){let t=r9(e);return t?t.protocol+"//"+t.host+t.pathname:void 0}au(e,t,i){if("ui"===e)return i;let s=i,r=this.instance.config.rewriteRequestPath;if(r){var n;s=r(new URL((null==(n=r9(i))?void 0:n.href)||i)).toString()}if(r&&"api"===e&&oZ.some(e=>0===t.indexOf(e))){let e=this.ou(s);if(e){let t=this.apiHost,i=this.lu;(null==i?void 0:i.apiHost)===t&&i.rewriteRequestPath===r||(i={apiHost:t,rewriteRequestPath:r,urls:new Set},this.lu=i),i.urls.add(e)}}return s}isIngestionEndpoint(e){let t=this.lu,i=this.ou(e);return(null==t?void 0:t.apiHost)===this.apiHost&&t.rewriteRequestPath===this.instance.config.rewriteRequestPath&&!!i&&t.urls.has(i)}endpointFor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(t&&(t="/"===t[0]?t:`/${t}`),"ui"===e)return this.au(e,t,this.uiHost+t);if("flags"===e)return this.au(e,t,this.flagsApiHost+t);if("assets"===e){let i=this.ru(t);if(i)return this.au(e,t,`${i}${t}`)}if(this.region===oY)return this.au(e,t,this.apiHost+t);let i=oK+t;switch(e){case"assets":return this.au(e,t,`https://${this.region}-assets.${i}`);case"api":return this.au(e,t,`https://${this.region}.${i}`)}}};let o0=iI("[Surveys]"),o1=e=>{try{let t=`seenSurvey_${e.current_iteration&&e.current_iteration>0?`${e.id}_${e.current_iteration}`:e.id}`;if(localStorage.getItem(t))return;localStorage.setItem(t,"true")}catch(e){o0.error("Failed to persist survey seen state",e)}},o2=["popover","widget","api"],o3={ignoreConditions:!1,ignoreDelay:!1,displayType:nD},o5=iI("[PostHog ExternalIntegrations]"),o4={intercom:"intercom-integration",crispChat:"crisp-chat-integration"};var o6=class{constructor(e){this._instance=e}zo(e,t){var i,s;null==(i=w.__PosthogExtensions__)||null==(s=i.loadExternalDependency)||s.call(i,this._instance,e,e=>{if(e)return o5.error("failed to load script",e);t()})}startIfEnabledOrStop(){var e,t,i,s;for(let[r,n]of Object.entries(null!=(e=this._instance.config.integrations)?e:{}))!n||(null==(t=w.__PosthogExtensions__)||null==(t=t.integrations)?void 0:t[r])||this.zo(o4[r],()=>{var e;null==(e=w.__PosthogExtensions__)||null==(e=e.integrations)||null==(e=e[r])||e.start(this._instance)}),!n&&(null==(i=w.__PosthogExtensions__)||null==(i=i.integrations)?void 0:i[r])&&(null==(s=w.__PosthogExtensions__)||null==(s=s.integrations)||null==(s=s[r])||s.stop())}},o8=class{constructor(e,t){this.$=e,this.wo=t,this.uu=new Map,this.Io=!1}add(e){var t=this;return ep(function*(){if(t.Io)throw Error("Cannot add an extension to a disposed ExtensionRuntime");if(t.uu.has(e.name))throw Error(`Browser extension "${e.name}" is already registered`);t.uu.set(e.name,e);try{let i=e.setup(t.wo);i&&(yield i)}catch(s){let i=t.uu.get(e.name)===e;i&&t.uu.delete(e.name),t.$.error(`Failed to set up browser extension "${e.name}"`,s),i&&t.hu(e)}})()}getExtension(e){return this.uu.get(e)}dispose(){if(this.Io)return;this.Io=!0;let e=Array.from(this.uu.values()).reverse();for(let t of(this.uu.clear(),e))this.hu(t)}hu(e){try{var t;let i=null==(t=e.dispose)?void 0:t.call(e);i&&W(i.then)&&i.then(void 0,t=>{this.$.error(`Failed to dispose browser extension "${e.name}"`,t)})}catch(t){this.$.error(`Failed to dispose browser extension "${e.name}"`,t)}}},o9=class{constructor(e){this._instance=e}initialize(){}get(e){let t=this._instance.persistence;if("string"==typeof e)return null==t?void 0:t.get_property(e);let i={};for(let s of e){let e=null==t?void 0:t.get_property(s);Y(e)||(i[s]=e)}return i}set(e,t){var i;null==(i=this._instance.persistence)||i.register("string"==typeof e?{[e]:t}:e)}remove(e){var t;null==(t=this._instance.persistence)||t.unregister(e)}};let o7="extensionsRemoteConfig";var ae=class{constructor(e){this.instance=e,this.Io=!1,this.$=iF,this.cu=e.du,this.kv=new o9(e),this.onEvent=e=>nj(this.instance.on("eventCaptured",t=>{try{e({event:t.event,properties:t.properties})}catch(e){this.$.error("Browser extension event listener failed",e)}})),this.onRemoteConfig=e=>{if(this.Io)return nj(()=>{});let t=t=>{try{e(t)}catch(e){this.$.error("Browser extension remote config listener failed",e)}},i=this.instance.vu.on(o7,t);return this.cu&&t(this.cu),nj(i)},this.fu=new o8(iF.createLogger("[BrowserExtensions]"),this)}get logger(){return this.$}get distinctId(){return this.instance.get_distinct_id()}get anonymousId(){var e;return null!=(e=this.instance.get_property("$device_id"))?e:this.distinctId}get deviceId(){let e=this.instance.get_property(iD);return"string"==typeof e?e:void 0}get library(){return{name:k.LIB_NAME,version:k.LIB_VERSION}}get initialPersonProperties(){var e,t;return null!=(e=null==(t=this.instance.persistence)?void 0:t.get_initial_props())?e:{}}get groups(){return this.instance.getGroups()}get session(){try{var e,t,i,s;let r=null==(e=this.instance.sessionManager)?void 0:e.checkAndGetSessionAndWindowId(!0);return{sessionId:null!=(t=null==r?void 0:r.sessionId)?t:"",windowId:null!=(i=null==r?void 0:r.windowId)?i:"",sessionStartTimestamp:null!=(s=null==r?void 0:r.sessionStartTimestamp)?s:0}}catch(e){return{sessionId:"",windowId:"",sessionStartTimestamp:0}}}get canCapture(){return this.instance.is_capturing()}get projectToken(){return this.instance.config.token}add(e){return this.fu.add(e)}getExtension(e){return this.fu.getExtension(e)}capture(e,t,i){i?this.instance.capture(e,t,{timestamp:i.timestamp,uuid:i.uuid,$set:i.set,$set_once:i.setOnce}):this.instance.capture(e,t)}registerDynamicEventProperties(e){return nj(this.instance.pu(e))}handleRemoteConfig(e){this.Io||(this.cu=e,this.instance.vu.emit(o7,e))}sendRequest(e){var t=this;return ep(function*(e){var i;let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.instance.requestRouter.endpointFor(null!=(i=s.target)?i:"api",e),n={method:s.method,url:s.query?o_(r,s.query
2):r,data:s.body,headers:s.headers,timeout:s.timeoutMs,fireCallbackOnDrop:!0,transport:s.transport,compression:s.compression,compressionFallback:"flags"===s.target&&"best-available"===s.compression?A.Base64:void 0,timestampMode:s.sentAt};return"sendBeacon"===s.transport?(t.instance._send_request(n),{statusCode:202}):new Promise(e=>{n.callback=e,t.instance._send_request(n)})}).apply(this,arguments)}dispose(){this.Io||(this.Io=!0,this.fu.dispose())}};let at={},ai=0,as=()=>{},ar='Consent opt in/out is not valid with cookieless_mode="always" and will be ignored',an="Surveys module not available",ao="sanitize_properties is deprecated. Use before_send instead",aa="Invalid value for property_denylist config: ",al=/^[A-Za-z0-9_-]{1,400}$/,au=/^fb\.[0-9]+\.[0-9]+\.[A-Za-z0-9_-]+(?:\.[A-Za-z0-9_-]+)?$/,ah=/^fb\.[0-9]+\.[0-9]+\.[0-9]+$/,ac=["token","distinct_id",sk],ad="posthog",ap=e=>{var t;let i;return tS({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,asset_host:null,token:"",autocapture:!0,cross_subdomain_cookie:function(e){let t=null==e?void 0:e.hostname;if(!K(t))return!1;let i=t.split(".").slice(-2).join(".");for(let e of sV)if(i===e)return!1;return!0}(null==d?void 0:d.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:as,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:"if_capture_pageview",defaults:null!=e?e:"unset",__preview_deferred_init_extensions:!1,__preview_external_dependency_versioned_paths:!1,__preview_cookie_wins_on_conflict:!1,debug:p&&K(null==p?void 0:p.search)&&-1!==p.search.indexOf("__posthog_debug=true")||!1,cookie_expiration:365,upgrade:!1,disable_session_recording:!1,disable_persistence:!1,disable_web_experiments:!0,disable_surveys:!1,disable_surveys_automatic_display:!1,disable_conversations:!1,disable_product_tours:!1,disableDeviceModel:!1,reuseAnonymousId:!1,disable_external_dependency_loading:!1,strict_script_versioning:"fallback",enable_recording_console_log:void 0,secure_cookie:"https:"===(null==u||null==(t=u.location)?void 0:t.protocol),ip:!1,opt_out_capturing_by_default:!1,opt_out_persistence_by_default:!1,opt_out_useragent_filter:!1,opt_out_capturing_persistence_type:"localStorage",consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:!1,property_denylist:[],respect_dnt:!1,sanitize_properties:null,request_headers:{},request_batching:!0,properties_string_max_length:65535,mask_all_element_attributes:!1,mask_all_text:!1,mask_personal_data_properties:!1,custom_personal_data_properties:[],advanced_disable_flags:!1,advanced_disable_decide:!1,advanced_disable_feature_flags:!1,advanced_disable_feature_flags_on_first_load:!1,advanced_only_evaluate_survey_feature_flags:!1,advanced_feature_flags_dedup_per_session:!1,advanced_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,feature_flag_request_max_retries:1,surveys_request_timeout_ms:1e4,on_request_error(e){iF.error("Bad HTTP status: "+e.statusCode+" "+e.text)},get_device_id:e=>e,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:sO,before_send:void 0,get_current_url:void 0,request_queue_config:{flush_interval_ms:3e3},error_tracking:{},_onCapture:as},{rageclick:e&&e>="2026-05-30"?{content_ignorelist:rF,ignore_text_selection:!0}
2:!e||"2025-11-30">e||{content_ignorelist:!0},capture_pageview:!e||"2025-05-24">e||"history_change",session_recording:(i={},e&&"unset"!==e&&("2025-11-30">e||(i.strictMinimumDuration=!0),"2026-05-30">e||(i.canvasCapture={resolutionScale:.6}),"2026-06-25">e||(i.streamNetworkBody=!0),"2026-08-30">e||(i.captureJsonLd=!0)),i),external_scripts_inject_target:e&&e>="2026-01-30"?"head":"body",internal_or_test_user_hostname:e&&e>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0,persistence_save_debounce_ms:e&&e>="2026-05-30"?250:0,split_storage:!(!e||"2026-05-30">e),detect_google_search_app:!(!e||"2026-05-30">e),disable_capture_url_hashes:!(!e||"2026-06-25">e),cookieWinsOnConflict:!(!e||"unset"===e||"2026-08-29">e)})},af=[["process_person","person_profiles"],["xhr_headers","request_headers"],["cookie_name","persistence_name"],["disable_cookie","disable_persistence"],["__preview_disable_beacon","disable_beacon"],["store_google","save_campaign_params"],["verbose","debug"],["__preview_cookie_wins_on_conflict","cookieWinsOnConflict"]],ag=e=>{let t={};
2for(let[i,s]of af)Y(e[i])||(t[s]=e[i]);let i=sH({},t,e),s=e.__preview_external_dependency_versioned_paths;return Y(s)||(Y(e.strict_script_versioning)&&(i.strict_script_versioning=!!s),K(s)&&Y(e.asset_host)&&(i.asset_host=s)),V(e.property_blacklist)&&(Y(e.property_denylist)?i.property_denylist=e.property_blacklist:V(e.property_denylist)?i.property_denylist=[...e.property_blacklist,...e.property_denylist]:iF.error(aa+e.property_denylist)),i};var av=class{constructor(){this.__forceAllowLocalhost=!1}get gu(){return this.__forceAllowLocalhost}set gu(e){iF.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=e}},a_=class e{mu(e){if(!e)return;let t=this.uu.indexOf(e);-1!==t&&this.uu.splice(t,1)}yu(e,t){var i;return this.mu(e),this.uu.push(t),null==(i=t.initialize)||i.call(t),t}bu(){return"always"===this.config.cookieless_mode||"on_reject"===this.config.cookieless_mode&&this.consent.isRejected()}_u(){let e,t,i;if(this.wu||this.config.reuseAnonymousId||this.config.segment||this.bu())return;let s="memory"===this.config.persistence||"sessionStorage"===this.config.persistence;(s||this.config.disable_persistence)&&(this.ku||(s?(e=`persistence is set to '${this.config.persistence}'`,t="memory"===this.config.persistence?"on every page load":"for every new browser tab or window",i="Either set persistence to 'localStorage+cookie', keep this persistence and pass a stable ID through bootstrap.distinctID, or enable reuseAnonymousId."):(e="persistence is disabled (disable_persistence is true)",t="on every page load",i="Either set disable_persistence to false, keep persistence disabled and pass a stable ID through bootstrap.distinctID, or enable reuseAnonymousId."),this.wu=!0,console.warn("[PostHog.js]",`${e} but no bootstrap.distinctID was provided. PostHog will mint a new distinct ID ${t}, so calling identify() merges a new ID onto the person each time. A person can then pass the distinct-ID limit and its events stop appearing on person pages and the session tab. ${i}`)))}Su(){if(this.bu()||"$posthog_cookieless"!==this.get_distinct_id())return;let e=this.persistence;if(!e)return;this.xu()||e.load(!0);let t=this.get_distinct_id();if(!t||"$posthog_cookieless"===t){let t=this.config.get_device_id(sQ());this.register({distinct_id:t,$device_id:t}),e.set_property(sv,sF)}this.Cu()}get decideEndpointWasHit(){var e,t;return null!=(e=null==(t=this.featureFlags)?void 0:t.hasLoadedFlags)&&e}get flagsEndpointWasHit(){var e,t;return null!=(e=null==(t=this.featureFlags)?void 0:t.hasLoadedFlags)&&e}constructor(){var t;this.$u=!1,this.Tu=!1,this.webPerformance=new av,this.Iu=!1,this.version=k.LIB_VERSION,this.Mu=new Set,this.Eu="",this.vu=new oj,this.uu=[],this.Pu=[],this.ku=!1,this.wu=!1,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=ap(),this.SentryIntegration=r1,this.sentryIntegration=e=>{let t;return t=r0(this,e),{name:rQ,processEvent:e=>t(e)}},this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint="/e/",this.Ru=!1,this.Au=null,this.Fu=null,this.Ou=null,this.scrollManager=new oA(this),this.pageViewManager=new r2(this),this.rateLimiter=new nH(this),this.requestRouter=new oQ(this),this.consent=new rh(this),this.externalIntegrations=new o6(this);const i=null!=(t=e.__defaultExtensionClasses)?t:{};this.featureFlags=i.featureFlags&&new i.featureFlags(this),this.toolbar=i.toolbar&&new i.toolbar(this),this.surveys=i.surveys&&new i.surveys(this),this.conversations=i.conversations&&new i.conversations(this),this.logs=i.logs&&new i.logs(this),this.metrics=i.metrics&&new i.metrics(this),this.experiments=i.experiments&&new i.experiments(this),this.exceptions=i.exceptions&&new i.exceptions(this),this.people={set:(e,t,i)=>{let s=K(e)?{[e]:t}:e;this.setPersonProperties(s),null==i||i({})},set_once:(e,t,i)=>{let s=K(e)?{[e]:t}:e;this.setPersonProperties(void 0,s),null==i||i({})}},this.on("eventCaptured",e=>iF.info(`send "${null==e?void 0:e.event}"`,e))}init(t,i,s){if(s&&s!==ad){var r;let n=null!=(r=at[s])?r:new e;return n._init(t,i,s),at[s]=n,at[ad][s]=n,n}return this._init(t,i,s)}_init(e){var t,i,s,r;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2?arguments[2]:void 0,a=K(e)?e.trim():"";if(!a)return iF.critical("PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()"),this;if(this.__loaded)return a!==(null==(r=this.config)?void 0:r.token)?console.warn("[PostHog.js]",`You have already initialized PostHog with a different project token! Re-initializing is a no-op, so events will keep going to the project this instance was initialized with. To capture into a second project, load PostHog once, then initialize a named instance after the SDK has loaded, e.g. posthog.init('${a}', { ... }, 'project2')`):console.warn("[PostHog.js]","You have already initialized PostHog! Re-initializing is a no-op"),this;this.__loaded=!0,this.config=ap(n.defaults),n.debug=this.Du(n.debug),this.Lu=n,this.Nu=[],n.person_profiles?this.Fu=n.person_profiles:n.process_person&&(this.Fu=n.process_person);let l=ap(n.defaults),h=ag(n),c=sH({},l,h,{name:o,token:a});G(l.rageclick)&&G(h.rageclick)&&(c.rageclick=sH({},l.rageclick,h.rageclick)),G(l.session_recording)&&G(h.session_recording)&&(c.session_recording=sH({},l.session_recording,h.session_recording)),this.set_config(c),this.config.on_xhr_error&&iF.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=n.disable_compression?void 0:nI;let d=this.xu();if(this.persistence=new nF(this.config,d),this.sessionPersistence="sessionStorage"===this.config.persistence||"memory"===this.config.persistence?this.persistence:new nF(tS(tS({},this.config),{},{persistence:"sessionStorage"}),d,!1),this.Eu="ph_"+(this.config.persistence_name||this.config.token)+"_session_registered_properties","memory"!==this.config.persistence&&!d&&ru.Et()){let e=ru.Dt(this.Eu);
2V(e)&&e.forEach(e=>{K(e)&&this.Mu.add(e)})}else ru.Lt(this.Eu);let p=tS({},this.persistence.props),f=tS({},this.sessionPersistence.props);this.register({$initialization_time:(new Date).toISOString()}),this.qu=new oC((e,t)=>this.ju(e,t),this.config.request_queue_config),this.Bu=new oT(this),this.__request_queue=[];let g=this.bu();g||(this.sessionManager=new oH(this),this.sessionPropsManager=new oD(this,this.sessionManager,this.persistence),this.sessionManager.onSessionId((e,t,i)=>{((null==i?void 0:i.activityTimeout)||(null==i?void 0:i.sessionPastMaximumLength)||(null==i?void 0:i.crossTabAdoption))&&this.Hu()})),this.zu(),this.config.__preview_deferred_init_extensions?(iF.info("Deferring extension initialization to improve startup performance"),setTimeout(()=>{this.Uu(g)},0)):(iF.info("Initializing extensions synchronously"),this.Uu(g)),k.DEBUG=k.DEBUG||this.config.debug,k.DEBUG&&iF.info("Starting in debug mode",{this:this,config:n,thisC:tS({},this.config),p:p,s:f}),!this.config.identity_distinct_id||(null==(t=n.bootstrap)?void 0:t.distinctID)||(n.bootstrap=tS(tS({},n.bootstrap),{},{distinctID:this.config.identity_distinct_id,isIdentifiedID:!0}));let v=null==(i=n.bootstrap)?void 0:i.distinctID;if(this.ku=!!v&&!J(v),null==(s=n.bootstrap)?void 0:s.distinctID){let e=n.bootstrap.distinctID,t=this.get_distinct_id(),i=this.persistence.get_property(sv);if(n.bootstrap.isIdentifiedID&&null!=t&&t!==e&&"anonymous"===i)this.identify(e);else if(n.bootstrap.isIdentifiedID&&null!=t&&t!==e&&"identified"===i)iF.warn("Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.");else{let t=this.config.get_device_id(sQ()),i=n.bootstrap.isIdentifiedID?t:e;this.persistence.set_property(sv,n.bootstrap.isIdentifiedID?sI:sF),this.register({distinct_id:e,$device_id:i})}}if(g)this.register_once({distinct_id:sx,$device_id:null},"");else if(!this.get_distinct_id()){let e=this.config.get_device_id(sQ());this.register_once({distinct_id:e,$device_id:e},""),this.persistence.set_property(sv,sF)}return sW(u,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),sW(u,"pageshow",()=>{var e;this.$u=!1,this.Tu||null==(e=this.Bu)||e.resume()}),n.segment?rZ(this,()=>this.Wu()):this.Wu(),W(this.config._onCapture)&&this.config._onCapture!==as&&(iF.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",e=>this.config._onCapture(e.event,e))),this.config.ip&&iF.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this.config.disableDeviceModel||(function(){return oB.apply(this,arguments)})().then(e=>{e&&this.register({[ij]:e})}).catch(as),this}Vu(e){return K(e.name)&&W(e.setup)}Gu(e,t){this.Vu(e)?t.push(()=>{this.Zu().add(e).catch(()=>{var t;return null==(t=e.dispose)?void 0:t.call(e)}).catch(t=>{iF.error(`Failed to dispose browser extension "${e.name}"`,t)})}):this.uu.push(e)}zu(){var t,i,s,r,n,o;let a=null!=(t=null==(i=this.config.__extensionClasses)?void 0:i.featureFlags)?t:null==(s=e.__defaultExtensionClasses)?void 0:s.featureFlags;a&&(this.featureFlags&&this.featureFlags instanceof a||(null==(r=this.Qu)||r.call(this),this.Qu=void 0,this.featureFlags=new a(this)),W(this.featureFlags.onReloading)&&W(this.featureFlags.setup)?this.Qu||(this.Qu=this.featureFlags.onReloading(()=>{this.vu.emit("featureFlagsReloading",!0)}),this.Zu().add(this.featureFlags)):null==(n=(o=this.featureFlags).initialize)||n.call(o))}Uu(t){var i,s,r,n,o,a,l;let u=performance.now(),h=tS(tS({},e.__defaultExtensionClasses),this.config.__extensionClasses),c=[];h.exceptions&&this.uu.push(this.exceptions=null!=(i=this.exceptions)?i:new h.exceptions(this)),h.historyAutocapture&&this.uu.push(this.historyAutocapture=new h.historyAutocapture(this)),h.tracingHeaders&&this.uu.push(this.tracingHeaders=new h.tracingHeaders(this)),h.siteApps&&this.uu.push(this.siteApps=new h.siteApps(this)),h.sessionRecording&&!t&&this.uu.push(this.sessionRecording=new h.sessionRecording(this)),this.config.disable_scroll_properties||c.push(()=>{this.scrollManager.startMeasuringScrollPosition()}),h.autocapture&&this.Gu(this.autocapture=new h.autocapture(this),c),h.surveys&&this.Gu(this.surveys=null!=(s=this.surveys)?s:new h.surveys(this),c),h.logs&&this.Gu(this.logs=null!=(r=this.logs)?r:new h.logs(this),c),h.metrics&&this.uu.push(this.metrics=null!=(n=this.metrics)?n:new h.metrics(this)),h.conversations&&this.uu.push(this.conversations=null!=(o=this.conversations)?o:new h.conversations(this)),h.productTours&&this.uu.push(this.productTours=new h.productTours(this)),h.heatmaps&&this.uu.push(this.heatmaps=new h.heatmaps(this)),h.webVitalsAutocapture&&this.uu.push(this.webVitalsAutocapture=new h.webVitalsAutocapture(this)),h.exceptionObserver&&this.uu.push(this.exceptionObserver=new h.exceptionObserver(this)),h.deadClicksAutocapture&&this.uu.push(this.deadClicksAutocapture=new h.deadClicksAutocapture(this,rY)),h.toolbar&&this.uu.push(this.toolbar=null!=(a=this.toolbar)?a:new h.toolbar(this)),h.experiments&&this.uu.push(this.experiments=null!=(l=this.experiments)?l:new h.experiments(this)),this.uu.forEach(e
2=>{e.initialize&&c.push(()=>{var t;null==(t=e.initialize)||t.call(e)})}),c.push(()=>{if(this.Ju){let e=this.Ju;this.Ju=void 0,this.uu.forEach(t=>{var i;return null==(i=t.onRemoteConfig)?void 0:i.call(t,e)})}}),this.Ku(c,u)}Ku(e,t){for(;e.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-t>=30&&e.length>0)return void setTimeout(()=>{this.Ku(e,t)},0);let i=e.shift();if(i)try{i()}catch(e){iF.error("Error initializing extension:",e)}}let i=Math.round(performance.now()-t);this.register_for_session({[s$]:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",[sE]:i}),this.config.__preview_deferred_init_extensions&&iF.info(`PostHog extensions initialized (${i}ms)`)}il(e){var t,i;if(!d||!d.body)return iF.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout(()=>{this.il(e)},500);if(this.config.__preview_deferred_init_extensions&&(this.Ju=e),this.du=e,this.compression=void 0,e.ok){let t=e.config;t.supportedCompression&&!this.config.disable_compression&&(this.compression=j(t.supportedCompression,nI)?nI:j(t.supportedCompression,nO)?nO:void 0),(null==(i=t.analytics)?void 0:i.endpoint)&&(this.analyticsDefaultEndpoint=t.analytics.endpoint)}this.set_config({person_profiles:this.Fu?this.Fu:sO}),null==(t=this.Xu)||t.handleRemoteConfig(e),this.uu.forEach(t=>{var i;return null==(i=t.onRemoteConfig)?void 0:i.call(t,e)})}Wu(){try{this.config.loaded(this)}catch(e){iF.critical("`loaded` function failed",e)}if(this.Yu(),this.config.internal_or_test_user_hostname&&(null==p?void 0:p.hostname)){let e=p.hostname,t=this.config.internal_or_test_user_hostname;("string"==typeof t?e===t:t.test(e))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout(()=>{(this.consent.isOptedIn()||this.bu())&&this.th()},1),this.eh=new nB(this),this.eh.load()}Yu(){var e;this.is_capturing()&&this.config.request_batching&&(null==(e=this.qu)||e.enable())}_dom_loaded(){this.is_capturing()&&sj(this.__request_queue,e=>this.ju(e)),this.__request_queue=[],this.Yu()}_handle_unload(){var e,t,i,s,r,n;this.$u=!0,null==(e=this.surveys)||null==(t=e.handlePageUnload)||t.call(e),null==(i=this.metrics)||i.flush("sendBeacon"),this.config.request_batching?(this.ih()&&this.capture(sA),null==(s=this.logs)||s.flushLogs("sendBeacon"),null==(r=this.qu)||r.unload(),null==(n=this.Bu)||n.unload()):this.ih()&&this.capture(sA,null,{transport:"sendBeacon"})}_send_request(e){oO(this,e)}ju(e,t){this.Bu?this.Bu.retriableRequest(e,t):this._send_request(t?tS(tS({},e),{},{transport:t}):e)}_execute_array(e){ai++;try{let t,i=[],s=[],r=[];sj(e,e=>{if(e)if(t=e[0],V(t))r.push(e);else if(W(e))try{e.call(this)}catch(t){iF.error("Error executing queued PostHog call",e,t)}else V(e)&&"alias"===t?i.push(e):V(e)&&-1!==t.indexOf("capture")&&W(this[t])?r.push(e):s.push(e)});let n=function(e,t){sj(e,function(e){try{if(V(e[0])){let i=t;sN(e,function(e){i=i[e[0]].apply(i,e.slice(1))})}else t[e[0]].apply(t,e.slice(1))}catch(t){iF.error("Error executing queued PostHog call",e,t)}})};n(i,this),n(s,this),n(r,this)}finally{ai--}}push(t){if(ai>0&&V(t)&&K(t[0])){let i=e.prototype[t[0]];return void(W(i)&&i.apply(this,t.slice(1)))}this._execute_array([t])}get nh(){return{property:iH,persistenceKey:iq,cookieName:"_fbc",pattern:au,register:(e,t)=>{var i;return null==(i=this.persistence)?void 0:i.register({[iq]:{value:e,delivered:t}})},unregister:()=>{var e;return null==(e=this.persistence)?void 0:e.unregister(iq)}}}get sh(){return{property:iB,persistenceKey:iz,cookieName:"_fbp",pattern:ah,register:(e,t)=>{var i;return null==(i=this.persistence)?void 0:i.register({[iz]:{value:e,delivered:t}})},unregister:()=>{var e;return null==(e=this.persistence)?void 0:e.unregister(iz)}}}rh(e){var t;let i=null==(t=this.persistence)?void 0:t.get_property(e.persistenceKey);return K(i)&&e.pattern.test(i)?{value:i,delivered:!1}:G(i)&&K(i.value)&&e.pattern.test(i.value)?{value:i.value,delivered:!0===i.delivered}:void 0}oh(e,t,i){return t===(null==i?void 0:i.value)?{value:t,pending:!i.delivered}:(e.register(t,!1),{value:t,pending:!0})}ah(e){if(!this.config.save_campaign_params||this.bu())return;let t=sX(e.cookieName);return K(t)&&e.pattern.test(t)?t:void 0}uh(e,t,i,s){if(!this.persistence)return;let r=this.nh;this.persistence.refreshKey(r.persistenceKey);let n=this.rh(r);if(s)return void r.unregister();if(i)return K(t)&&au.test(t)?this.oh(r,t,n):void r.unregister();let o=K(e)&&al.test(e)?e:void 0,a=this.ah(r);return a&&((e,t,i)=>{let s=e.split(".");if(t)return s[3]===t;if(!i)return!0;let r=i.value.split(".");return s[3]===r[3]||Number(s[2])>Number(r[2])})(a,o,n)?this.oh(r,a,n):o?(null==n?void 0:n.value.split(".")[3])===o?{value:n.value,pending:!n.delivered}:this.oh(r,`fb.1.${Date.now()}.${o}`,n):n?{value:n.value,pending:!n.delivered}:void 0}hh(e,t,i){if(!this.persistence)return;let s=this.sh;this.persistence.refreshKey(s.persistenceKey);let r=this.rh(s);if(i)return void s.unregister();if(t)return K(e)&&ah.test(e)?this.oh(s,e,r):void s.unregister();let n=this.ah(s);return n?this.oh(s,n,r):r?{value:r.value,pending:!r.delivered}:void 0}dh(e,t){if(!this.persistence)return;this.persistence.refreshKey(e.persistenceKey);let i=this.rh(e);(null==i?void 0:i.value)!==t||i.delivered||e.register(t,!0)}capture(e,t,i){var s,r,n,o,a,l,u,h;let c,d;if(!(this.__loaded&&this.persistence&&this.sessionPersistence&&this.qu))return void iF.uninitializedWarning("posthog.capture");
2if(!this.is_capturing())return;if(Y(e)||!K(e))return void iF.error("No event name provided to posthog.capture");this.Su();let p=!this.config.opt_out_useragent_filter&&this._is_bot();if(p&&!this.config.__preview_capture_bot_pageviews)return;let f=(null==i?void 0:i.skip_client_rate_limiting)?void 0:this.rateLimiter.clientRateLimitContext();if(null==f?void 0:f.isRateLimited)return void iF.critical("This capture call is ignored due to client rate limiting.");(null==t?void 0:t.$current_url)&&!K(null==t?void 0:t.$current_url)&&(iF.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),null==t||delete t.$current_url),"$exception"!==e||(null==i?void 0:i.fh)||iF.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&(c=this.sessionPersistence.update_campaign_params()),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();let g=new Date,v=(null==i?void 0:i.timestamp)||g,_=t_(null==i?void 0:i.uuid,sQ),m={uuid:_,event:e,properties:this.calculateEventProperties(e,t||{},v,_)};"$pageview"===e&&this.config.__preview_capture_bot_pageviews&&p&&(m.event="$bot_pageview",m.properties.$browser_type="bot"),f&&(m.properties.$lib_rate_limit_remaining_tokens=f.remainingTokens);let y="$feature_flag_called"===e&&!1===m.properties.$feature_flag_has_experiment&&!0===this.get_property("$minimal_flag_called_events");(null==i?void 0:i.$set)&&!y&&(m.$set=null==i?void 0:i.$set);let b=G(null==t?void 0:t.$set)?t.$set:void 0,w=V(null==t?void 0:t.$unset)?t.$unset:[],x=(null==i?void 0:i.$unset)||[],k=e=>{var t;let s=!!(null==i?void 0:i.$set)&&e in i.$set;return{hasProvided:s||!!b&&e in b,provided:s?null==i||null==(t=i.$set)?void 0:t[e]:null==b?void 0:b[e],unset:-1!==w.indexOf(e)||-1!==x.indexOf(e)}},$=k(iH),E=k(iB),S=[{channel:this.nh,hasProvided:$.hasProvided,update:this.uh(null==c?void 0:c.fbclid,$.provided,$.hasProvided,$.unset)},{channel:this.sh,hasProvided:E.hasProvided,update:this.hh(E.provided,E.hasProvided,E.unset)}];for(let{channel:e,hasProvided:t,update:i}of S)i&&!0===m.properties.$process_person_profile&&i.pending&&!t&&!y&&(m.$set=tS({[e.property]:i.value},m.$set));let P=null==i?void 0:i.$unset;P&&(m.$unset=P);let R=y?void 0:this.ph(null==i?void 0:i.$set_once,e!==sD,e===sL);if(R&&(m.$set_once=R),(null==i?void 0:i._noTruncate)||(n=this.config.properties_string_max_length,a=m,l=e=>K(e)?e.slice(0,n):e,d=new Set,m=function e(t,i){let s;if(t!==Object(t))return l(t);if(!d.has(t)){if(d.add(t),V(t))s=[],sj(t,t=>{s.push(e(t))});else{let i={};sN(ea(t)?sU(t):t,(t,s)=>{d.has(t)||(i[s]=e(t,s))}),s=i}return s}}(a)),m.timestamp=v,Y(null==i?void 0:i.timestamp)||(m.properties.$event_time_override_provided=!0,m.properties.$event_time_override_system_time=g),y&&(m.properties=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i={},s=t=>{void 0!==e[t]&&(i[t]=e[t])};return t7.forEach(s),t.forEach(s),i}(m.properties,ac)),e===nA||e===nL){let i,s=null==t?void 0:t.$survey_id,r=null==t?void 0:t.$survey_iteration;o1({id:s,current_iteration:r}),m.$set=tS(tS({},m.$set),{},{[(u={id:s,current_iteration:r},h=e===nL?"responded":"dismissed",i=`$survey_${h}/${u.id}`,u.current_iteration&&u.current_iteration>0&&(i=`$survey_${h}/${u.id}/${u.current_iteration}`),i)]:!0})}else e===nT&&(m.$set=tS(tS({},m.$set),{},{$survey_last_seen_date:(new Date).toISOString()}));if("product tour shown"===e){let e=null==t?void 0:t.$product_tour_type;e&&(m.$set=tS(tS({},m.$set),{},{[`$product_tour_last_seen_date/${e}`]:(new Date).toISOString()}))}let F=tS(tS({},m.properties.$set),m.$set);if(X(F)||this.setPersonPropertiesForFlags(F),!Q(this.config.before_send)){let e=this.Os(m);if(!e)return;(m=e).uuid=t_(m.uuid,sQ)}let I=S.filter(e=>{var t,i,s;let{channel:r,update:n}=e,o=null!=(t=null==(i=m.$set)?void 0:i[r.property])?t:G(null==(s=m.properties)?void 0:s.$set)?m.properties.$set[r.property]:void 0;return(null==n?void 0:n.pending)&&o===n.value});this.vu.emit("eventCaptured",m);let O=null!=(s=null==i?void 0:i._url)?s:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),C="recordings"===(null==i?void 0:i._batchKey)||/\/s\/(?:\?|$)/.test(O),M=tS(tS(tS({method:"POST",url:O,data:m,compression:"best-available",preferSyncCompression:null==i?void 0:i.send_instantly,timestampMode:C?"body":"capture-body",batchKey:null==i?void 0:i._batchKey},C&&(null==(r=m.properties)?void 0:r.$session_id)?{batchGroup:m.properties.$session_id+(m.properties.$window_id?`-${m.properties.$window_id}`:"")}:{}),(null==i?void 0:i.transport)?{transport:i.transport}:{}),I.length?{fireCallbackOnDrop:!0,callback:e=>{if(e.statusCode>=200&&300>e.statusCode)for(let{channel:e,update:t}of I)this.dh(e,t.value)}}:{});if(!this.config.request_batching||i&&!(null==i?void 0:i._batchKey)||(null==i?void 0:i.send_instantly)||I.length){let e;!M.transport&&!M.callback&&X(null!=(o=this.config.request_headers)?o:{})&&this.$u&&(e="sendBeacon"),this.ju(M,e)}else this.qu.enqueue(M);return m}_addCaptureHook(e){return this.on("eventCaptured",t=>e(t.event,t))}getExtension(e){var t;return null==(t=this.Xu)?void 0:t.getExtension(e)}Zu(){var e;
2return null!=(e=this.Xu)?e:this.Xu=new ae(this)}pu(e){this.Pu.push(e);let t=!0;return()=>{if(!t)return;t=!1;let i=this.Pu.indexOf(e);-1!==i&&this.Pu.splice(i,1)}}gh(){var e,t,i;let s=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return!!(null==(e=this.persistence)?void 0:e.consumeCookieIdentityChange())&&(this.Ou=null,"anonymous"===this.persistence.get_property("$user_state")&&(null==(i=this.sessionPersistence)||i.clear(),this.Mu.clear(),this.mh()),null==(t=this.featureFlags)||t.reset(),s&&this.reloadFeatureFlags(),!0)}calculateEventProperties(e,t,i,s,r){let n;if(i=i||new Date,!this.persistence||!this.sessionPersistence)return t;this.persistence.syncCookieProperties(),this.gh();let o=r?void 0:this.persistence.remove_event_timer(e),a=tS({},t);if(a.token=this.config.token,a.$config_defaults=this.config.defaults,this.bu()&&(a[sk]=!0),"$snapshot"===e){let e=tS(tS({},this.persistence.properties()),this.sessionPersistence.properties());return a.distinct_id=e.distinct_id,(!K(a.distinct_id)&&!ee(a.distinct_id)||J(a.distinct_id))&&iF.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),a}let l=function(e,t,i){var s,r,n,o;let a,l,h=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(!m)return{};let c=e?[...nr,...t||[]]:[],[d,f]=to(m),[g,v]=function(e){for(let t=0;th.length>t;t++){let[i,s,r]=th[t],n=e.match(i);if(n){let t=r&&e.match(r)||n;return[s,(null==t?void 0:t[1])||""]}}return["",""]}(m),_=(null==(a="u">typeof navigator?navigator:void 0)?void 0:a.brave)?{brave:!0}:{},y={};Y(i)||(y.detectGoogleSearchApp=i);let b={},w=null==(s=navigator)||null==(s=s.userAgentData)?void 0:s.platform,x=null==(r=navigator)?void 0:r.maxTouchPoints,$=null==u||null==(n=u.screen)?void 0:n.width,E=null==u||null==(o=u.screen)?void 0:o.height,S=null==u?void 0:u.devicePixelRatio;Y(w)||(b.userAgentDataPlatform=w),Y(x)||(b.maxTouchPoints=x),Y($)||(b.screenWidth=$),Y(E)||(b.screenHeight=E),Y(S)||(b.devicePixelRatio=S);let P=sH(sz({$os:d,$os_version:f,$browser:ti(m,navigator.vendor,_,y),$webview_app:g,$webview_app_version:v,$device:ta(m),$device_type:tl(m,b),$timezone:nv(),$timezone_offset:function(){try{return(new Date).getTimezoneOffset()}catch(e){return}}()}),{$current_url:ne(h?ty(null==p?void 0:p.href):null==p?void 0:p.href,c,no),$host:null==p?void 0:p.host,$pathname:null==p?void 0:p.pathname,$raw_user_agent:m.length>1e3?m.substring(0,997)+"...":m,$browser_version:tr(m,navigator.vendor,_,y),$browser_language:nc(),$browser_language_prefix:"string"==typeof(l=nc())?l.split("-")[0]:void 0,$screen_height:null==u?void 0:u.screen.height,$screen_width:null==u?void 0:u.screen.width,$viewport_height:null==u?void 0:u.innerHeight,$viewport_width:null==u?void 0:u.innerWidth,$lib:k.LIB_NAME,$lib_version:k.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3});return k.SDK_DIST_CHANNEL&&(P.$sdk_dist_channel=k.SDK_DIST_CHANNEL),P}(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties,this.config.detect_google_search_app,this.config.disable_capture_url_hashes);if(this.sessionManager){let{sessionId:e,windowId:t}=this.sessionManager.checkAndGetSessionAndWindowId(r,i.getTime(),!0);a.$session_id=e,a.$window_id=t}this.sessionPropsManager&&sH(a,this.sessionPropsManager.getSessionProps());try{var h;this.sessionRecording&&sH(a,this.sessionRecording.sdkDebugProperties),a.$sdk_debug_retry_queue_size=null==(h=this.Bu)?void 0:h.length}catch(e){a.$sdk_debug_error_capturing_properties=String(e)}if(this.requestRouter.region===oY&&(a.$lib_custom_api_host=this.config.api_host),n="$pageview"!==e||r?"$pageleave"!==e||r?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(i):this.pageViewManager.doPageView(i,s),a=sH(a,n),"$pageview"===e&&d&&(a.title=d.title),!Y(o)){let e=i.getTime()-o;a.$duration=parseFloat((e/1e3).toFixed(3))}m&&this.config.opt_out_useragent_filter&&(a.$browser_type=this._is_bot()?"bot":"browser");let c=this.persistence.properties(),f=this.sessionPersistence.properties(),g=a.$groups,v=c.$groups;G(g)&&!X(g)&&(a.$groups=tS(tS({},G(v)?v:{}),g)),sN(["$referrer","$referring_domain"],e=>{e in c&&delete f[e]});let _={};if(this.Pu.length>0)for(let e of this.Pu.slice())try{sH(_,e())}catch(e){iF.error("Failed to produce browser extension event properties",e)}(a=sH({},l,c,f,tS(tS({},_),a))).$is_identified=this._isIdentified(),V(this.config.property_denylist)?sN(this.config.property_denylist,function(e){delete a[e]}):iF.error(aa+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);let y=this.config.sanitize_properties;y&&(iF.error(ao),a=y(a,e));let b=this.yh();return a.$process_person_profile=b,b&&!r&&this.bh("_calculate_event_properties"),a}ph(e){var t;let i=!(arguments.length>1)||void 0===arguments[1]||arguments[1],s=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!this.persistence||!this.yh()||this.Iu&&!s)return e;let r=sH({},this.persistence.get_initial_props(),(null==(t=this.sessionPropsManager)?void 0:t.getSetOnceProps())||{},e||{}),n=this.config.sanitize_properties;return n&&(iF.error(ao),r=n(r,"$set_once")),i&&(this.Iu=!0),X(r)?void 0:r}register(e,t){var i;null==(i=this.persistence)||i.register(e,t)}register_once(e,t,i){var s;null==(s=this.persistence)||s.register_once(e,t,i)}register_for_session(e){var t,i;null==(t=this.persistence)||t.syncCookieProperties(),this.gh(),null==(i=this.sessionPersistence)||i.register(e),Object.keys(e).forEach(e
2=>this.Mu.add(e)),this.mh()}unregister(e){var t;null==(t=this.persistence)||t.unregister(e)}unregister_for_session(e){var t;null==(t=this.sessionPersistence)||t.unregister(e),this.Mu.delete(e),this.mh()}_h(e,t){this.register({[e]:t})}Hu(){this.Mu.forEach(e=>{var t;null==(t=this.sessionPersistence)||t.unregister(e)}),this.Mu.clear(),this.mh()}mh(){var e;if(!this.Eu)return;if("memory"===this.config.persistence||(null==(e=this.sessionPersistence)?void 0:e.mi)||!ru.Et())return void ru.Lt(this.Eu);let t=[];this.Mu.forEach(e=>t.push(e)),t.length>0?ru.At(this.Eu,t):ru.Lt(this.Eu)}getFeatureFlag(e,t){var i;return null==(i=this.featureFlags)?void 0:i.getFeatureFlag(e,t)}getFeatureFlagPayload(e){var t;return null==(t=this.featureFlags)?void 0:t.getFeatureFlagPayload(e)}getFeatureFlagResult(e,t){var i;return null==(i=this.featureFlags)?void 0:i.getFeatureFlagResult(e,t)}getAllFeatureFlags(){var e,t;return null!=(e=null==(t=this.featureFlags)?void 0:t.getAllFeatureFlags())?e:[]}isFeatureEnabled(e,t){var i,s;return null!=(i=null==(s=this.featureFlags)?void 0:s.isFeatureEnabled(e,t))?i:null==t?void 0:t.defaultValue}reloadFeatureFlags(){var e;null==(e=this.featureFlags)||e.reloadFeatureFlags()}updateFlags(e,t,i){var s;null==(s=this.featureFlags)||s.updateFlags(e,t,i)}updateEarlyAccessFeatureEnrollment(e,t,i){var s;null==(s=this.featureFlags)||s.updateEarlyAccessFeatureEnrollment(e,t,i)}getEarlyAccessFeatures(e){var t;let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=arguments.length>2?arguments[2]:void 0;return null==(t=this.featureFlags)?void 0:t.getEarlyAccessFeatures(e,i,s)}on(e,t){return this.vu.on(e,t)}onFeatureFlags(e){return this.featureFlags?this.featureFlags.onFeatureFlags(e):(e([],{},{errorsLoading:!0}),()=>{})}onSurveysLoaded(e){return this.surveys?this.surveys.onSurveysLoaded(e):(e([],{isLoaded:!1,error:an}),()=>{})}onSessionId(e){var t,i;return null!=(t=null==(i=this.sessionManager)?void 0:i.onSessionId(e))?t:()=>{}}getSurveys(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.surveys?this.surveys.getSurveys(e,t):e([],{isLoaded:!1,error:an})}getActiveMatchingSurveys(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.surveys?this.surveys.getActiveMatchingSurveys(e,t):e([],{isLoaded:!1,error:an})}renderSurvey(e,t){var i;null==(i=this.surveys)||i.renderSurvey(e,t)}displaySurvey(e){var t;let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o3;null==(t=this.surveys)||t.displaySurvey(e,i)}cancelPendingSurvey(e){var t;null==(t=this.surveys)||t.cancelPendingSurvey(e)}canRenderSurvey(e){var t,i;return null!=(t=null==(i=this.surveys)?void 0:i.canRenderSurvey(e))?t:{visible:!1,disabledReason:an}}canRenderSurveyAsync(e){var t,i;let s=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return null!=(t=null==(i=this.surveys)?void 0:i.canRenderSurveyAsync(e,s))?t:Promise.resolve({visible:!1,disabledReason:an})}wh(e){return!e||J(e)?(iF.critical("Unique user id has not been set in posthog.identify"),!1):"$posthog_cookieless"===e?(iF.critical(`The string "${e}" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.`),!1):!["distinct_id","distinctid"].includes(e.toLowerCase())&&!["undefined","null"].includes(e.toLowerCase())||(iF.critical(`The string "${e}" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.`),!1)}identify(e,t,i){if(!this.__loaded||!this.persistence)return iF.uninitializedWarning("posthog.identify");if(ee(e)&&(e=e.toString(),iF.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),!this.wh(e)||!this.bh("posthog.identify"))return;this.Su();let s=this.get_distinct_id(),r=this.persistence.syncCookieProperties()&&this.get_distinct_id()!==s,n=this.gh(!1),o=this.persistence.Da(),a=!1;try{let s=this.get_distinct_id();this.register({$user_id:e}),this.get_property("$device_id")||this.register_once({$had_persisted_distinct_id:!0,$device_id:s},""),e!==s&&e!==this.get_property("__alias")&&(this.unregister(iN),this.register({distinct_id:e}));let o=(this.persistence.get_property("$user_state")||"anonymous")===sF,u=e!==s,h=!u&&o;if(u&&o){var l;let r=this.config.reuseAnonymousId?{distinct_id:e}:{distinct_id:e,$anon_distinct_id:s};this.persistence.set_property(sv,sI),this.setPersonPropertiesForFlags({$set:t||{},$set_once:i||{}},!1),this.config.cookieWinsOnConflict&&this.persistence.La(),this.capture("$identify",r,{$set:t||{},$set_once:i||{}})&&(this.Ou=oX(e,t,i)),null==(l=this.featureFlags)||l.setAnonymousDistinctId(this.config.reuseAnonymousId?void 0:s)}else if(h){this.persistence.set_property(sv,sI);let s=t||{},r=i||{};this.setPersonPropertiesForFlags({$set:s,$set_once:r},!1),this.config.cookieWinsOnConflict&&this.persistence.La(),this.capture("$set",{$set:s,$set_once:r})&&(this.Ou=oX(e,t,i))}else(t||i)&&this.setPersonProperties(t,i);u||r||n?(this.reloadFeatureFlags(),this.featureFlags?this.featureFlags.resetFlagCallReported():this.unregister(sd)):h&&(t||i)&&this.reloadFeatureFlags(),a=!0}finally{o&&this.persistence.ja(a)}}setPersonProperties(e,t){if(!e&&!t||!this.bh("posthog.setPersonProperties"))return;let i=oX(this.get_distinct_id(),e,t);this.Ou!==i?(this.setPersonPropertiesForFlags({$set:e||{},$set_once:t||{}},!0),this.capture("$set",{$set:e||{},$set_once:t||{}})&&(this.Ou=i)):iF.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.")}unsetPersonProperties(e){var t;let i=(V(e)?e:[e]).filter(e=>K(e)&&e.length>0);0!==i.length&&this.bh("posthog.unsetPersonProperties")&&(null==(t=this.featureFlags)||t.unsetPersonPropertiesForFlags(i,!0),this.capture("$set",{$unset:i}),this.Ou=null)}group(e,t,i){var s;if(!e||!t)return void iF.error("posthog.group requires a group type and group key");null==(s=this.persistence)||s.syncCookieProperties(),this.gh();let r=this.getGroups(),n=r[e]!==t;if(n&&this.resetGroupPropertiesForFlags(e),this.register({$groups:tS(tS({},r),{},{[e]:t})}),(n||i)&&this.yh()){let s={$group_type:e,$group_key:t};
2i&&(s.$group_set=i),this.capture(sD,s)}i&&this.setGroupPropertiesForFlags({[e]:i}),n&&!i&&this.reloadFeatureFlags()}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(e){var t;let i=!(arguments.length>1)||void 0===arguments[1]||arguments[1];null==(t=this.featureFlags)||t.setPersonPropertiesForFlags(e,i)}resetPersonPropertiesForFlags(){var e;let t=!(arguments.length>0)||void 0===arguments[0]||arguments[0];null==(e=this.featureFlags)||e.resetPersonPropertiesForFlags(t)}setGroupPropertiesForFlags(e){var t;let i=!(arguments.length>1)||void 0===arguments[1]||arguments[1];this.bh("posthog.setGroupPropertiesForFlags")&&(null==(t=this.featureFlags)||t.setGroupPropertiesForFlags(e,i))}resetGroupPropertiesForFlags(e){var t;null==(t=this.featureFlags)||t.resetGroupPropertiesForFlags(e)}reset(e){let t=ei(e)?e:null==e?void 0:e.resetDeviceID,i=ei(e)||null==e?void 0:e.bootstrap;this.kh(t,!1,i)}kh(e){var t,i,s,r,n,o,a,l,u,h,c,d,p,f,g,v,_,m,y,b,w;let x=arguments.length>1&&void 0!==arguments[1]&&arguments[1],k=arguments.length>2?arguments[2]:void 0;if(iF.info("reset"),!this.__loaded)return iF.uninitializedWarning("posthog.reset");let $=null==k?void 0:k.sessionID;this.config.bootstrap=k||(null==(t=this.Lu)?void 0:t.bootstrap)||{},null==(i=this.featureFlags)||null==(s=i.updateConfig)||s.call(i,this.config,this.nl());let E=this.get_property(iD),S=this.get_property(ij),P=this.get_property(i1);null==(r=this.sessionRecording)||r.flushBeforeIdentityReset();let R=this.is_capturing();this.consent.reset(),x||!R||this.is_capturing()||console.warn("[PostHog.js]","reset() cleared the stored consent, and capturing is now off because of `opt_out_capturing_by_default`. Call opt_in_capturing() again, and prefer calling reset() before opting in rather than after.");let F=null==(n=this.persistence)||null==(o=n.Da)?void 0:o.call(n),I=!1;try{if(null==(a=this.persistence)||a.clear(),null==(l=this.sessionPersistence)||l.clear(),this.Mu.clear(),this.mh(),Y(P)||null==(v=this.persistence)||v.register({$session_recording_remote_config:P}),null==(u=this.surveys)||u.reset(),null==(h=this.featureFlags)||h.reset(),null==(c=this.conversations)||c.reset(),null==(d=this.logs)||d.reset(),null==(p=this.metrics)||p.reset(),null==(f=this.persistence)||f.set_property("$user_state","anonymous"),null==(g=this.sessionManager)||g.resetSessionId(),this.Ou=null,"always"===this.config.cookieless_mode)this.register_once({distinct_id:sx,$device_id:null},"");else{let t=this.config.get_device_id(sQ());this.register_once({distinct_id:t,$device_id:e?t:E},""),e||Y(S)||this.register({[ij]:S})}if(this.register({$last_posthog_reset:(new Date).toISOString()},1),k&&(k.distinctID&&!this.bu()&&(null==(y=this.persistence)||y.set_property("$user_state",k.isIdentifiedID?"identified":"anonymous"),this.register({distinct_id:k.distinctID})),null==(_=this.featureFlags)||_.initialize(),!Q($)&&!(null==(m=this.sessionManager)?void 0:m.setBootstrapSessionId($,!0)))){let e=tS({},k);delete e.sessionID,this.config.bootstrap=e}delete this.config.identity_distinct_id,delete this.config.identity_hash,delete this.config.identity_claims,I=!0}finally{F&&(null==(b=this.persistence)||null==(w=b.ja)||w.call(b,I))}this.reloadFeatureFlags()}shutdown(e){var t=this;return ep(function*(){var e,i,s,r,n,o,a,l,u;if(t.__loaded){t.Tu=!0,t.Zu().dispose(),null==(e=t.sessionRecording)||e.dispose(),null==(i=t.logs)||i.flushLogs("sendBeacon"),null==(s=t.metrics)||s.flush("sendBeacon"),null==(r=t.metrics)||r.dispose(),null==(n=t.qu)||n.unload(),null==(o=t.Bu)||o.unload();try{null==(u=t.featureFlags)||u.destroy()}catch(e){iF.error("Error while destroying feature flags",e)}null==(a=t.persistence)||a.destroy(),null==(l=t.sessionPersistence)||l.destroy()}else iF.uninitializedWarning("posthog.shutdown")})()}setIdentity(e,t){var i;delete this.config.identity_claims,this.config.identity_distinct_id=e,this.config.identity_hash=t,this.alias(e),null==(i=this.conversations)||i.Sh()}clearIdentity(){var e;delete this.config.identity_distinct_id,delete this.config.identity_hash,delete this.config.identity_claims,null==(e=this.conversations)||e.xh()}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var e,t;return null!=(e=null==(t=this.sessionManager)?void 0:t.checkAndGetSessionAndWindowId(!0).sessionId)?e:""}get_session_replay_url(e){if(!this.sessionManager)return"";let{sessionId:t,sessionStartTimestamp:i}=this.sessionManager.checkAndGetSessionAndWindowId(!0),s=this.requestRouter.endpointFor("ui",`/project/${this.config.token}/replay/${t}`);if((null==e?void 0:e.withTimestamp)&&i){var r;let t=null!=(r=e.timestampLookBack)?r:10;if(!i)return s;s+=`?t=${Math.max(Math.floor(((new Date).getTime()-i)/1e3)-t,0)}`}return s}alias(e,t){return e===this.get_property("$people_distinct_id")?(iF.critical("Attempting to create alias for existing People user - aborting."),-2):this.bh("posthog.alias")?(Y(t)&&(t=this.get_distinct_id()),e!==t?(this._h(iN,e),this.capture("$create_alias",{alias:e,distinct_id:t})):(iF.warn("alias matches current distinct_id - skipping api call."),this.identify(e),-1)):void 0}set_config(e){let t=tS({},this.config);if(G(e)){var i,s,r,n,o,a,l,u,h,c,d,p,f,g,v;sH(this.config,ag(e));let _=this.xu();null==(i=this.persistence)||i.update_config(this.config,t,_),this.sessionPersistence="sessionStorage"===this.config.persistence||"memory"===this.config.persistence?this.persistence:new nF(tS(tS({},this.config),{},{persistence:"sessionStorage"}),_,!1);let m=this.Du(this.config.debug);ei(m)&&(this.config.debug=m),ei(this.config.debug)&&(this.config.debug?(k.DEBUG=!0,s6.Et()&&s6.At("ph_debug",!0),iF.info("set_config",{config:e,oldConfig:t,newConfig:tS({},this.config)})):(k.DEBUG=!1,s6.Et()&&s6.Lt("ph_debug"))),null==(s=this.featureFlags)||null==(r=s.updateConfig)||r.call(s,this.config,this.nl()),null==(n=this.exceptionObserver)||n.onConfigChange(),null==(o=this.exceptions)||o.onConfigChange(),null==(a=this.metrics)||a.onConfigChange(),null==(l=this.sessionRecording)||l.startIfEnabledOrStop(),null==(u=this.tracingHeaders)||u.startIfEnabledOrStop(),null==(h=this.autocapture)||h.startIfEnabled(),null==(c=this.heatmaps)||c.startIfEnabled(),("capture_pageview"in e||"disable_capture_url_hashes"in e)&&(null==(v=this.historyAutocapture)||v.startIfEnabledOrStop()),null==(d=this.exceptionObserver)||d.startIfEnabledOrStop(),null==(p=this.deadClicksAutocapture)||p.startIfEnabledOrStop(),null==(f=this.surveys)||f.loadIfEnabled(),this.Cu(),null==(g=this.externalIntegrations)||g.startIfEnabledOrStop(),!t.segment&&this.config.segment&&this.persistence&&rZ(this,as,!1)}}_overrideSDKInfo(e,t){k.LIB_NAME=e,k.LIB_VERSION=t}startSessionRecording(e){var t,i,s,r,n;let o=!0===e,a={sampling:o||!!(null==e?void 0:e.sampling),linked_flag:o||!!(null==e?void 0:e.linked_flag),url_trigger:o||!!(null==e?void 0:e.url_trigger),event_trigger:o||!!(null==e?void 0:e.event_trigger)};Object.values(a).some(Boolean)&&(null==(t=this.sessionManager)||t.checkAndGetSessionAndWindowId(),a.sampling&&(null==(i=this.sessionRecording)||i.overrideSampling()),a.linked_flag&&(null==(s=this.sessionRecording)||s.overrideLinkedFlag()),a.url_trigger&&(null==(r=this.sessionRecording)||r.overrideTrigger("url")),a.event_trigger&&(null==(n=this.sessionRecording)||n.overrideTrigger("event"))),this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var e;return!!(null==(e=this.sessionRecording)?void 0:e.started)}captureException(e,t){try{if(!this.exceptions)return;let i=this.exceptions.buildProperties(e,{handled:!0,syntheticException:Error("PostHog syntheticException")});return this.exceptions.sendExceptionEvent(tS(tS({},i),t))}catch(e){return}}addExceptionStep(e,t){var i;null==(i=this.exceptions)||i.addExceptionStep(e,t)}captureLog(e){var t;null==(t=this.logs)||t.captureLog(e)}get logger(){var t,i;return null!=(t=null==(i=this.logs)?void 0:i.logger)?t:e.Ch}startExceptionAutocapture(e){this.set_config({capture_exceptions:null==e||e})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(e){var t,i;return null!=(t=null==(i=this.toolbar)?void 0:i.loadToolbar(e))&&t}get_property(e){var t;return null==(t=this.persistence)?void 0:t.props[e]}getSessionProperty(e){var t;return null==(t=this.sessionPersistence)?void 0:t.props[e]}toString(){var e;let t=null!=(e=this.config.name)?e:ad;return t!==ad&&(t="posthog."+t),t}_isIdentified(){var e,t;return"identified"===(null==(e=this.persistence)?void 0:e.get_property("$user_state"))||"identified"===(null==(t=this.sessionPersistence)?void 0:t.get_property("$user_state"))}yh(){var e,t;return!("never"===this.config.person_profiles||"identified_only"===this.config.person_profiles&&
2!this._isIdentified()&&X(this.getGroups())&&!(null==(e=this.persistence)||null==(e=e.props)?void 0:e.__alias)&&!(null==(t=this.persistence)||null==(t=t.props)?void 0:t.$epp))}ih(){return!0===this.config.capture_pageleave||"if_capture_pageview"===this.config.capture_pageleave&&!!this.config.capture_pageview}createPersonProfile(){this.yh()||this.bh("posthog.createPersonProfile")&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.bh("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:!0})}bh(e){return"never"===this.config.person_profiles?(iF.error(e+' was called, but process_person is set to "never". This call will be ignored.'),!1):(this._u(),this._h(sw,!0),!0)}xu(){if("always"===this.config.cookieless_mode)return!0;let e=this.consent.isOptedOut();return this.config.disable_persistence||e&&!(!this.config.opt_out_persistence_by_default&&"on_reject"!==this.config.cookieless_mode)}Cu(){var e,t,i,s,r;let n=this.xu();return this.is_capturing()||null==(i=this.logs)||i.$h(),(null==(e=this.persistence)?void 0:e.mi)!==n&&(null==(s=this.persistence)||s.set_disabled(n)),(null==(t=this.sessionPersistence)?void 0:t.mi)!==n&&(null==(r=this.sessionPersistence)||r.set_disabled(n)),n&&(this.Mu.clear(),this.mh()),n}opt_in_capturing(t){var i,s,r,n,o,a,l,u,h,c,d;if("always"!==this.config.cookieless_mode){if(this.bu()){null==(s=this.sessionRecording)||s.dispose({discardBufferedEvents:!0}),this.kh(!0,!0),null==(r=this.sessionManager)||r.destroy(),null==(n=this.pageViewManager)||n.destroy(),this.sessionManager=new oH(this),this.pageViewManager=new r2(this),this.persistence&&(this.sessionPropsManager=new oD(this,this.sessionManager,this.persistence));let t=null!=(o=null==(a=this.config.__extensionClasses)?void 0:a.sessionRecording)?o:null==(l=e.__defaultExtensionClasses)?void 0:l.sessionRecording;t&&(this.sessionRecording=this.yu(this.sessionRecording,new t(this)),this.du&&(null==(u=this.sessionRecording)||null==(h=u.onRemoteConfig)||h.call(u,this.du)))}this.consent.optInOut(!0),this.Cu(),this.Yu(),null==(i=this.sessionRecording)||i.startIfEnabledOrStop(),"on_reject"==this.config.cookieless_mode&&(null==(c=this.surveys)||c.loadIfEnabled()),(Y(null==t?void 0:t.captureEventName)||(null==t?void 0:t.captureEventName))&&this.capture(null!=(d=null==t?void 0:t.captureEventName)?d:"$opt_in",null==t?void 0:t.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.th()}else iF.warn(ar)}opt_out_capturing(){var e,t;if("always"===this.config.cookieless_mode)return void iF.warn(ar);let i="on_reject"===this.config.cookieless_mode?this.sessionRecording:void 0;null==i||i.dispose({discardBufferedEvents:!0}),"on_reject"===this.config.cookieless_mode&&this.consent.isOptedIn()&&this.kh(!0,!0),this.consent.optInOut(!1),this.Cu(),"on_reject"===this.config.cookieless_mode&&(this.register({distinct_id:sx,$device_id:null}),this.mu(i),this.sessionRecording=void 0,null==(e=this.sessionManager)||e.destroy(),null==(t=this.pageViewManager)||t.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,this.config.capture_pageview&&this.th(),this.Yu())}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){let e=this.consent.consent;return 1===e?"granted":0===e?"denied":"pending"}is_capturing(){return"always"===this.config.cookieless_mode||("on_reject"===this.config.cookieless_mode?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this.Cu()}_is_bot(){return c?oq(c,this.config.custom_blocked_useragents):void 0}th(){d&&("visible"===d.visibilityState?this.Ru||(this.Ru=!0,this.capture(sT,{title:d.title},{send_instantly:!0}),this.Au&&(d.removeEventListener(sC,this.Au),this.Au=null)):this.Au||(this.Au=this.th.bind(this),sW(d,sC,this.Au)))}debug(e){!1===e?(null==u||u.console.log("You've disabled debug mode."),this.set_config({debug:!1})):(null==u||u.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:!0}))}nl(){var e,t;let i,s,r=this.Lu||{};return"advanced_disable_flags"in r?!!r.advanced_disable_flags:!1!==this.config.advanced_disable_flags?!!this.config.advanced_disable_flags:!0===this.config.advanced_disable_decide?(iF.warn("Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version."),!0):(t="advanced_disable_decide",i=(e="advanced_disable_flags")in r&&!Q(r[e]),s=t in r&&!Q(r[t]),i?r[e]:!!s&&(iF&&iF.warn(`Config field '${t}' is deprecated. Please use '${e}' instead. The old field will be removed in a future major version.`),r[t]))}Os(e){var t;if(Q(this.config.before_send))return e;let i=Object.keys(null!=(t=e.properties)?t:{}).filter(er),s=V(this.config.before_send)?this.config.before_send:[this.config.before_send],r=e;
2for(let t of s)try{if(r=t(r),Q(r)){let t=`Event '${e.event}' was rejected in beforeSend function`;return es(e.event)?iF.warn(`${t}. This can cause unexpected behavior.`):iF.info(t),null}r.properties&&!X(r.properties)||iF.warn(`Event '${e.event}' has no properties after beforeSend function, this is likely an error.`)}catch(t){return iF.error(`Error in beforeSend function for event '${e.event}':`,t),null}for(let t of i)if(r.properties&&Q(r.properties[t]))return iF.warn(`Event '${e.event}' had its '${t}' property removed in a beforeSend function. This property is required for ingestion, so the event will be dropped.`),null;return r}getPageViewId(){var e;return null==(e=this.pageViewManager.Vo)?void 0:e.pageViewId}captureTraceFeedback(e,t){this.capture("$ai_feedback",{$ai_trace_id:String(e),$ai_feedback_text:t})}captureTraceMetric(e,t,i){this.capture("$ai_metric",{$ai_trace_id:String(e),$ai_metric_name:t,$ai_metric_value:String(i)})}Du(e){let t=ei(e)&&!e,i=s6.Et()&&"true"===s6.Ot("ph_debug");return!t&&(!!i||e)}};a_.__defaultExtensionClasses={},a_.Ch={trace:a=()=>{},debug:a,info:a,warn:a,error:a,fatal:a},function(e,t){for(let i=0;t.length>i;i++)e.prototype[t[i]]=sB(e.prototype[t[i]])}(a_,["identify"]);var am=class{constructor(e){this.disabled=!1===e;const t=G(e)?e:{};this.thresholdPx=t.threshold_px||30,this.timeoutMs=t.timeout_ms||1e3,this.clickCount=t.click_count||3,this.clicks=[]}isRageClick(e,t,i){if(this.disabled)return!1;let s=this.clicks[this.clicks.length-1];if(s&&Math.abs(e-s.x)+Math.abs(t-s.y)<this.thresholdPx&&this.timeoutMs>i-s.timestamp){if(this.clicks.push({x:e,y:t,timestamp:i}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:e,y:t,timestamp:i}];return!1}};let ay="$copy_autocapture",ab=iI("[AutoCapture]");function aw(e,t){return t.length>e?t.slice(0,e)+"...":t}var ax=class{fo(){this.po=void 0,clearTimeout(this.mo),this.mo=void 0}yo(e){var t;if(!rL(e))return!0;let i=null!=(t=this.bo().css_selector_ignorelist)?t:rP,s=new Set,r=e;for(;r;){if(s.size>=1e3||s.has(r))return!0;s.add(r);let e=r,t=ry(e);if(j(t,"ph-no-capture")||j(t,"ph-sensitive")||rD(e)||i.some(t=>r$(e,t)))return!0;let n=r.parentNode;r=rv(n)?n.host:n&&rp(n)?n:null}return!1}_o(e){if(!this.isEnabled||"pointercancel"===e.type)return void this.fo();if("pointerdown"===e.type){var t;this.fo();let i=rx(e);return void(e.isPrimary&&0===e.button&&!e.ctrlKey&&i&&rp(i)&&(this.po={target:i,excluded:this.yo(i),id:e.pointerId,x:e.clientX,y:e.clientY,released:!1,distinctId:null==(t=this.wo)?void 0:t.distinctId}))}let i=this.po;i&&(e.pointerId!==i.id||Math.abs(e.clientX-i.x)>5||Math.abs(e.clientY-i.y)>5?this.fo():"pointerup"===e.type&&(i.released=!0,this.mo=setTimeout(()=>this.fo(),0)))}ko(e){var t,i;let s=this.po;this.fo();let r=rx(e);if((null==s?void 0:s.released)&&s.target.isConnected&&s.distinctId===(null==(t=this.wo)?void 0:t.distinctId)&&e.pointerId===s.id&&(e.detail>0||"touch"===e.pointerType||"pen"===e.pointerType)&&0===e.button&&5>=Math.abs(e.clientX-s.x)&&5>=Math.abs(e.clientY-s.y)&&r&&(rf(r,"html")||rf(r,"body"))){if(s.excluded)return null;let e=null!=(i=this.bo().css_selector_ignorelist)?i:rP;return[r,null==d?void 0:d.documentElement,null==d?void 0:d.body].some(t=>{if(!t)return!1;let i=ry(t);return j(i,"ph-no-capture")||j(i,"ph-sensitive")||!rL(t)||rD(t)||e.some(e=>r$(t,e))})?null:s.target}}constructor(e){this.So=e,this.name="autocapture",this.xo=!1,this.Co=null,this.$o=!1,this.To=!1,this.Rr={enabled:!1,rageclick:!1,maskAllElementAttributes:!1,maskAllText:!1,disableCaptureUrlHashes:!1,remoteRequestsDisabled:!1},this.Io=!1,this.So.refresh(this.Rr),this.rageclicks=new am(this.Rr.rageclick),this.Mo=null}setup(e){this.Eo(),this.wo=e;let t=e.onRemoteConfig(this.onRemoteConfig.bind(this));this.Io?t.dispose():(this.Po=t,this.startIfEnabled())}dispose(){var e;this.Io||(this.Io=!0,this.wo=void 0,null==(e=this.Po)||e.dispose(),this.Po=void 0,this.Ro())}bo(){return this.So.refresh(this.Rr),this.Rr}Eo(){var e,t;return this.bo(),this.Rr.url_allowlist=null==(e=this.Rr.url_allowlist)?void 0:e.map(e=>new RegExp(e)),this.Rr.url_ignorelist=null==(t=this.Rr.url_ignorelist)?void 0:t.map(e=>new RegExp(e)),this.Rr}Ao(){if(!this.isBrowserSupported())return void ab.info("Disabling Automatic Event Collection because this browser is not supported");if(!u||!d)return;let e=this.Fo=e=>{e=e||(null==u?void 0:u.event);try{if("blur"===e.type)return void this.fo();if(0===e.type.indexOf("pointer"))return void this._o(e);let t="click"===e.type?this.ko(e):void 0;if(Z(t))return;this.Oo(e,"$autocapture",t)}catch(e){ab.error("Failed to capture event",e)}};if(sW(u,"blur",e),sW(d,"submit",e,{capture:!0}),sW(d,"change",e,{capture:!0}),sW(d,"click",e,{capture:!0}),sN(["pointerdown","pointermove","pointerup","pointercancel"],t=>{sW(d,t,e,{capture:!0})}),this.bo().capture_copied_text){let e=this.Do=e=>{e=e||(null==u?void 0:u.event);try{this.Oo(e,ay)}catch(e){ab.error("Failed to capture clipboard event",e)}};sW(d,"copy",e,{capture:!0}),sW(d,"cut",e,{capture:!0}),sW(d,"paste",e,{capture:!0})}}Ro(){this.fo(),this.Fo&&(null==u||u.removeEventListener("blur",this.Fo),sN(["pointerdown","pointermove","pointerup","pointercancel"],e=>{null==d||d.removeEventListener(e,this.Fo,!0)}),null==d||d.removeEventListener("submit",this.Fo,!0),null==d||d.removeEventListener("change",this.Fo,!0),null==d||d.removeEventListener("click",this.Fo,!0),this.Fo=void 0),this.Do&&(null==d||d.removeEventListener("copy",this.Do,!0),null==d||d.removeEventListener("cut",this.Do,!0),null==d||d.removeEventListener("paste",this.Do,!0),this.Do=void 0),this.xo=!1}startIfEnabled(){this.isEnabled||this.fo(),!this.Io&&this.wo&&this.isEnabled&&!this.xo&&(this.Ao(),this.xo=!0)}onRemoteConfig(e){var t;if(this.Io)return;if(this.$o=!0,!e.ok)return void this.startIfEnabled();let i=e.config;
2i.elementsChainAsString&&(this.To=i.elementsChainAsString);let s=i.autocapture_opt_out;ei(s)&&(null==(t=this.wo)||t.kv.set("$autocapture_disabled_server_side",s),this.Co=s),this.startIfEnabled()}setElementSelectors(e){this.Mo=e}getElementSelectors(e,t){var i;let s=[];return null==(i=this.Mo)||i.forEach(i=>{let r=null==d?void 0:d.querySelectorAll(i);null==r||r.forEach(r=>{e!==r&&t!==r||j(s,i)||s.push(i)})}),s}get isEnabled(){var e,t;if(this.Io)return!1;let i=null==(e=this.wo)?void 0:e.kv.get(iV),s=this.Co,r=this.bo();if(!r.remoteRequestsDisabled&&!this.$o)return!1;let n=r.remoteRequestsDisabled&&!this.$o;if(Z(s)&&!ei(i)&&!n)return!1;let o=null!=(t=this.Co)?t:!!i;return!!r.enabled&&!o}Oo(e){var t,i,s,r;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"$autocapture",o=arguments.length>2?arguments[2]:void 0;if(!this.isEnabled)return void this.fo();let a=o||rx(e);rg(a)&&(a=a.parentNode||null);let l=this.Eo();"$autocapture"===n&&"click"===e.type&&e instanceof MouseEvent&&l.rageclick&&(null==(t=this.rageclicks)?void 0:t.isRageClick(e.clientX,e.clientY,e.timeStamp||(new Date).getTime()))&&rM(a,l.rageclick)&&this.Oo(e,"$rageclick",o);let h=n===ay,c=h?tS(tS({},l),{},{dom_event_allowlist:void 0}):l;if(a&&function(e,t,i,s,r,n){var o;if(!u||rT(e)||(null==i?void 0:i.url_allowlist)&&!rm(i.url_allowlist,n)||(null==i?void 0:i.url_ignorelist)&&rm(i.url_ignorelist,n))return!1;if(null==i?void 0:i.dom_event_allowlist){let e=i.dom_event_allowlist;if(e&&!e.some(e=>t.type===e))return!1}let{parentIsUsefulElement:a,targetElementList:l}=rA(e,s);if(!function(e,t){let i=null==t?void 0:t.element_allowlist;if(Y(i))return!0;for(let t of e)if(i.some(e=>t.tagName.toLowerCase()===e))return!0;return!1}(l,i)||!rE(l,null==i?void 0:i.css_selector_allowlist)||rE(l,null!=(o=null==i?void 0:i.css_selector_ignorelist)?o:rP))return!1;try{let i=u.getComputedStyle(e);if(i&&"pointer"===i.getPropertyValue("cursor")&&"click"===t.type)return!0}catch(e){}let h=e.tagName.toLowerCase();switch(h){case"html":return!1;case"form":return(r||["submit"]).indexOf(t.type)>=0;case"input":case"select":case"textarea":return(r||["change","click"]).indexOf(t.type)>=0;default:return a?(r||["click"]).indexOf(t.type)>=0:(r||["click"]).indexOf(t.type)>=0&&(rk.indexOf(h)>-1||"true"===e.getAttribute("contenteditable"))}}(a,e,c,h,h?["copy","cut","paste"]:void 0,{config:{get_current_url:l.getCurrentUrl}})){let{props:t,explicitNoCapture:o,target:h}=function(e,t){var i,s,r,n;let{e:o,maskAllElementAttributes:a,maskAllText:l,elementAttributeIgnoreList:h,elementsChainAsString:c,disableCaptureUrlHashes:d}=t;if(!rp(e))return{props:{}};let p=[e],f=new Set([e]),g=e;for(;g.parentNode&&!rf(g,"body")&&1e3>p.length;){if(rv(g.parentNode)){let e=g.parentNode.host;if(f.has(e))break;f.add(e),p.push(e),g=e;continue}if(!rp(g.parentNode)||f.has(g.parentNode))break;f.add(g.parentNode),p.push(g.parentNode),g=g.parentNode}let v="click"===o.type&&"http://www.w3.org/2000/svg"===e.namespaceURI?p.findIndex(e=>rf(e,"button")||rf(e,"a")):-1;v>0&&(l=l||p.slice(0,v+1).some(e=>!rL(e)||rD(e)));let _=[],m={},y,b=!1,w=!1;if(sN(p,e=>{let t=rL(e);if(rf(e,"a")&&!a&&!(null==h?void 0:h.includes("href"))){let i=e.getAttribute("href");b=!!(t&&i&&rU(i))&&(d?ty(i):i)}j(ry(e),"ph-no-capture")&&(w=!0),_.push(function(e,t,i,s){let r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],n=e.tagName.toLowerCase(),o={tag_name:n};rk.indexOf(n)>-1&&!i&&(o.$el_text="a"===n.toLowerCase()||"button"===n.toLowerCase()?aw(1024,rV(e)):aw(1024,rw(e)));let a=ry(e);t||(null==s?void 0:s.includes("class"))||0>=a.length||(o.classes=a.filter(function(e){return""!==e})),sN(e.attributes,function(i){var n;if((!rD(e)||-1!==["name","id","class","aria-label"].indexOf(i.name))&&!(null==s?void 0:s.includes(i.name))&&!t&&rU(i.value)&&(!K(n=i.name)||"_ngcontent"!==n.substring(0,10)&&"_nghost"!==n.substring(0,7))){let e=i.value;"class"===i.name&&(e=r_(e).join(" ")),o["attr__"+i.name]=aw(1024,"href"===i.name&&r?ty(e):e)}});let l=1,u=1,h=e;for(;h=function(e){if(e.previousElementSibling)return e.previousElementSibling;let t=e;do t=t.previousSibling;while(t&&!rp(t))return t}(h);)l++,h.tagName===e.tagName&&u++;return o.nth_child=l,o.nth_of_type=u,o}(e,a,l,h,d)),sN(function(e){if(!rL(e))return{};let t={};return sN(e.attributes,function(e){if(e.name&&0===e.name.indexOf("data-ph-capture-attribute")){let i=e.name.replace("data-ph-capture-attribute-",""),s=e.value;i&&s&&rU(s)&&(t[i]=s)}}),t}(e),(e,t)=>{({}).hasOwnProperty.call(m,t)||(m[t]=e)})}),w)return{props:{},explicitNoCapture:w};if(v>0&&(e=p[v],_.splice(0,v)),l||(_[0].$el_text=rf(e,"a")||rf(e,"button")?rV(e):rw(e)),b){_[0].attr__href=b;let e=null==(r=r9(b))?void 0:r.host,t=null==u||null==(n=u.location)?void 0:n.host;e&&t&&e!==t&&(y=b)}return{props:sH({$event_type:o.type,$ce_version:1},c?{}:{$elements:_},{$elements_chain:V(_)?_.map(e=>{var t,i;let s={text:null==(t=e.$el_text)?void 0:t.slice(0,400),tag_name:e.tag_name,href:null==(i=e.attr__href)?void 0:i.slice(0,2048),attr_class:function(e){let t=e.attr__class;if(t)return V(t)?t:r_(t)}(e),attr_id:e.attr__id,nth_child:e.nth_child,nth_of_type:e.nth_of_type,attributes:{}};return sq(e).filter(e=>{let[t]=e;return 0===t.indexOf("attr__")}
2).forEach(e=>{let[t,i]=e;return s.attributes[t]=i}),s}).map(e=>{var t,i;let s="";if(e.tag_name&&(s+=e.tag_name),e.attr_class)for(let t of(e.attr_class.sort(),e.attr_class))s+=`.${t.replace(/"/g,"")}`;let r=tS(tS(tS(tS({},e.text?{text:e.text}:{}),{},{"nth-child":null!=(t=e.nth_child)?t:0,"nth-of-type":null!=(i=e.nth_of_type)?i:0},e.href?{href:e.href}:{}),e.attr_id?{attr_id:e.attr_id}:{}),e.attributes),n={};return sq(r).sort((e,t)=>{let[i]=e,[s]=t;return s>i?-1:+(i>s)}).forEach(e=>{let[t,i]=e;return n[rW(t.toString())]=rW(i.toString())}),s+=":",s+=sq(n).map(e=>{let[t,i]=e;return`${t}="${i}"`}).join("")}).join(";"):""},(null==(i=_[0])?void 0:i.$el_text)?{$el_text:null==(s=_[0])?void 0:s.$el_text}:{},y&&"click"===o.type?{$external_click_url:y}:{},m),target:e}}(a,{e:e,maskAllElementAttributes:l.maskAllElementAttributes,maskAllText:l.maskAllText,elementAttributeIgnoreList:l.element_attribute_ignorelist,elementsChainAsString:this.To,disableCaptureUrlHashes:l.disableCaptureUrlHashes});if(o)return!1;let c=this.getElementSelectors(a,h);if(c&&c.length>0&&(t.$element_selectors=c),n===ay){let i=e.type||"clipboard";if("paste"!==i){let e=null==u||null==(s=u.getSelection())?void 0:s.toString(),i=rb(e);if(!i)return!1;t.$selected_content=i,t.$clipboard_text_length=null!=(r=null==e?void 0:e.length)?r:0}t.$copy_type=i}return null==(i=this.wo)||i.capture(n,t),!0}}isBrowserSupported(){return W(null==d?void 0:d.querySelectorAll)}},ak=class{constructor(e){this._instance=e}refresh(e){let t=this._instance.config,i=G(t.autocapture)?t.autocapture:void 0;e.enabled=!!t.autocapture,e.rageclick=t.rageclick,e.maskAllElementAttributes=t.mask_all_element_attributes,e.maskAllText=t.mask_all_text,e.disableCaptureUrlHashes=t.disable_capture_url_hashes,e.getCurrentUrl=t.get_current_url,e.remoteRequestsDisabled=this._instance.nl(),e.url_allowlist=null==i?void 0:i.url_allowlist,e.url_ignorelist=null==i?void 0:i.url_ignorelist,e.dom_event_allowlist=null==i?void 0:i.dom_event_allowlist,e.element_allowlist=null==i?void 0:i.element_allowlist,e.css_selector_allowlist=null==i?void 0:i.css_selector_allowlist,e.css_selector_ignorelist=null==i?void 0:i.css_selector_ignorelist,e.element_attribute_ignorelist=null==i?void 0:i.element_attribute_ignorelist,e.capture_copied_text=null==i?void 0:i.capture_copied_text}};let a$=iI("[ExceptionAutocapture]"),aE=()=>{},aS=e=>{var t;if(W(e))return null!=(t=e.__posthog_layer__)?t:e.__rrweb_layer__};function aP(e,t,i){try{if(!(t in e))return aE;let s={next:e[t]},r=i(function(){for(var e=arguments.length,t=Array(e),i=0;i<e;i++)t[i]=arguments[i];return s.next.apply(this,t)});return W(r)&&(r.prototype=r.prototype||{},Object.defineProperties(r,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:s}})),e[t]=r,()=>{if(e[t]===r)return void(e[t]=s.next);let i=e[t],n=aS(i);for(;n;){if(n.next===r)return void(n.next=s.next);i=n.next,n=aS(i)}}}catch(e){return aE}}let aR=iI("[TracingHeaders]"),aF=iI("[Web Vitals]"),aI=["CLS","FCP","INP","LCP"],aO=["INP","LCP"],aC=["interactionTarget","interactionType","inputDelay","processingDuration","presentationDelay","loadState","target","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration","elementRenderDelay","largestShiftTarget","largestShiftTime","largestShiftValue","firstByteToFCP"],aM="disabled",aT="lazy_loading",aA=iI("[SessionRecording]"),aL=iI("[Heatmaps]");function aD(e){return G(e)&&"clientX"in e&&"clientY"in e&&ee(e.clientX)&&ee(e.clientY)}let aj=iI("[Product Tours]"),aN=e=>{var t;return!e.config.disable_product_tours&&!!(null==(t=e.persistence)?void 0:t.get_property(iZ))},aH=["$set_once","$set"],aq=iI("[SiteApps]"),aB="Error while initializing PostHog app with config id ",az=(e,t)=>
2(null==e?void 0:e.then)?e.then(t):t(e),aU="SDK is not enabled or survey functionality is not yet loaded",aV="Disabled. Not loading surveys.";var aW=class{constructor(e,t){this.So=e,this.Th=t,this.name="surveys",this._surveyEventReceiver=null,this._surveyManager=null,this.Ih=!1,this.Mh=[],this.Eh=null,this.Ph=null,this.Io=!1,this.Rh=new Set,this.onRemoteConfig=e=>{if(this.Io||this.Rr.disableSurveys)return;if(!e.ok)return o0.warn("Remote config unavailable. Not loading surveys.");let t=e.config.surveys;if(Q(t))return o0.warn("Flags not loaded yet. Not loading surveys.");this.Ah=ei(t)?t:t.length>0,o0.info(`flags response received, isSurveysEnabled: ${this.Ah}`),this.loadIfEnabled()}}setup(e){if(!this.Io)return this.Fh=e,az(e.kv.initialize(),()=>{if(this.Fh!==e||this.Io)return;this.Fh=void 0,this.wo=e;let t=e.onRemoteConfig(this.onRemoteConfig);this.Io?t.dispose():(this.Po=t,this.loadIfEnabled())})}dispose(){var e,t,i,s;this.Io||(this.Io=!0,this.Fh=void 0,this.wo=void 0,null==(e=this.Po)||e.dispose(),this.Po=void 0,null==(t=this._surveyEventReceiver)||t.dispose(),this._surveyEventReceiver=null,null==(i=this._surveyManager)||null==(s=i.dispose)||s.call(i),this._surveyManager=null,this.Mh=[],this.Eh=null,this.Rh.forEach(e=>clearTimeout(e)),this.Rh.clear())}get Rr(){return this.So.get()}initialize(){this.loadIfEnabled()}reset(){var e,t,i;null==(e=this._surveyManager)||null==(t=e.clearInMemoryInProgressSurveyState)||t.call(e);try{null==(i=this._surveyEventReceiver)||i.reset(),localStorage.removeItem("lastSeenSurveyDate");let e=[];for(let t=0;t<localStorage.length;t++){let i=localStorage.key(t);((null==i?void 0:i.startsWith("seenSurvey_"))||(null==i?void 0:i.startsWith("inProgressSurvey_")))&&e.push(i)}e.forEach(e=>localStorage.removeItem(e))}catch(e){}}loadIfEnabled(){if(this.Io||!this.wo)return;let e=this.Rr;if(this._surveyManager)return;if(this.Ih)return void o0.info("Already initializing surveys, skipping...");if(e.disableSurveys)return void o0.info(aV);if(e.cookielessMode&&this.So.isOptedOut())return void o0.info("Not loading surveys in cookieless mode without consent.");let t=this.So.getExtensions();if(!t)return void o0.error("PostHog Extensions not found.");if(Y(this.Ah)&&!e.advancedEnableSurveys)return;let i=this.Ah||e.advancedEnableSurveys;this.Ih=!0;try{let e=t.generateSurveys;if(e)return this.Oh(e,i),void(this.Ih=!1);let s=t.loadExternalDependency;if(!s)return this.Dh(sR),void(this.Ih=!1);s(e=>{try{if(this.Io)return;let t=this.So.getExtensions();!e&&(null==t?void 0:t.generateSurveys)?this.Oh(t.generateSurveys,i):this.Dh("Could not load surveys script",e)}finally{this.Ih=!1}})}catch(e){throw this.Ih=!1,this.Dh("Error initializing surveys",e),e}}Oh(e,t){this.Io||(this._surveyManager=e(t),this._surveyEventReceiver=this.So.createEventReceiver(),o0.info("Surveys loaded successfully"),this.Lh({isLoaded:!0}))}Dh(e,t){o0.error(e,t),this.Lh({isLoaded:!1,error:e})}onSurveysLoaded(e){return this.Mh.push(e),this._surveyManager&&this.Lh({isLoaded:!0}),()=>{this.Mh=this.Mh.filter(t=>t!==e)}}getSurveys(e){var t;let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=null!=(t=this.wo)?t:this.Th;if(!s||this.Io)return;if(this.Rr.disableSurveys)return o0.info(aV),e([]);let r=s.kv.get(so);if(r&&!i)return e(r,{isLoaded:!0}),void(this.Nh()&&this.getSurveys(()=>{},!0));if(this.Eh)return void this.Eh.then(t=>{let{surveys:i,context:s}=t;this.Io||e(i,s)}).catch(e=>o0.error("Error in survey callback",e));let n=this.qh("/api/surveys/",{method:"GET",query:{token:s.projectToken},sentAt:"query",timeoutMs:this.Rr.requestTimeoutMs}).then(e=>{try{return this.jh(s,e)}catch(e){return o0.error("Error processing surveys response",e),this.jh(s,{statusCode:0,error:e})}},e=>this.jh(s,{statusCode:0,error:e}));this.Eh=n;let o=()=>{this.Eh===n&&(this.Eh=null)};n.then(t=>{o(),this.Io||e(t.surveys,t.context)},o).catch(e=>o0.error("Error in survey callback",e))}qh(e,t){let i=this.wo;return i?i.sendRequest(e,t):new Promise(e=>e({statusCode:0,error:Error(aU)}))}jh(e,t){var i;if(this.Io)return{surveys:[],context:{isLoaded:!1,error:aU}};let s=t.statusCode;if(200!==s||!t.json){let e=`Surveys API could not be loaded, status: ${s}`;return 0!==s?o0.error(e):t.error||o0.warn(e),this.Ph=Date.now(),{surveys:[],context:{isLoaded:!1,error:e}}}this.Ph=null;let r=t.json.surveys||[],n=r.filter(e=>{var t;return!(!e.start_date||e.end_date)&&(oz(e)||!!(null==(t=e.conditions)||null==(t=t.actions)||null==(t=t.values)?void 0:t.length))});return n.length>0&&(null==(i=this._surveyEventReceiver)||i.register(n)),e.kv.set({[so]:r,[sa]:Date.now()}),{surveys:r,context:{isLoaded:!0}}}Nh(){return this.Bh()&&!this.Eh&&!this.Hh()}Bh(){var e,t;let i=null==(e=null!=(t=this.wo)?t:this.Th)?void 0:e.kv.get(sa);return ee(i)&&Date.now()-i>3e5}Hh(){return ee(this.Ph)&&3e5>Date.now()-this.Ph}markSurveyAsSeen(e,t){var i;o1({id:e,current_iteration:null!=(i=null==t?void 0:t.iteration)?i:null});try{localStorage.setItem("lastSeenSurveyDate",(new Date).toISOString())}catch(e){}}
2Lh(e){for(let t of this.Mh)try{if(!e.isLoaded)return t([],e);this.getSurveys(t)}catch(e){o0.error("Error in survey callback",e)}}getActiveMatchingSurveys(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!Q(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(e,t);o0.warn("init was not called")}zh(e){let t=null;return this.getSurveys(i=>{var s;t=null!=(s=i.find(t=>t.id===e))?s:null}),t}Uh(e){if(Q(this._surveyManager))return{eligible:!1,reason:aU};let t="string"==typeof e?this.zh(e):e;return t?this._surveyManager.checkSurveyEligibility(t):{eligible:!1,reason:"Survey not found"}}Wh(e){if(!this.So.isCapturing())return{eligible:!1,reason:"PostHog is not capturing, so a survey response cannot be recorded"};if(Q(this._surveyManager))return{eligible:!1,reason:aU};let t="string"==typeof e?this.zh(e):e;return t?this._surveyManager.checkSurveyRenderability(t):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(e){if(Q(this._surveyManager))return o0.warn("init was not called"),{visible:!1,disabledReason:aU};let t=this.Wh(e);return{visible:t.eligible,disabledReason:t.reason}}canRenderSurveyAsync(e,t){return Q(this._surveyManager)?(o0.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:aU})):new Promise(i=>{this.getSurveys(t=>{var s;let r=null!=(s=t.find(t=>t.id===e))?s:null;if(r){let e=this.Wh(r);i({visible:e.eligible,disabledReason:e.reason})}else i({visible:!1,disabledReason:"Survey not found"})},t)})}renderSurvey(e,t,i){var s;if(!this.So.isCapturing())return;if(Q(this._surveyManager))return void o0.warn("init was not called");let r="string"==typeof e?this.zh(e):e;if(!(null==r?void 0:r.id))return void o0.warn("Survey not found");if(!o2.includes(r.type))return void o0.warn(`Surveys of type ${r.type} cannot be rendered in the app`);let n=null==d?void 0:d.querySelector(t);if(n){if(null==(s=r.appearance)?void 0:s.surveyPopupDelaySeconds){o0.info(`Rendering survey ${r.id} with delay of ${r.appearance.surveyPopupDelaySeconds} seconds`);let e=setTimeout(()=>{var t,s;this.Rh.delete(e),!this.Io&&this.So.isCapturing()&&(o0.info(`Rendering survey ${r.id} with delay of ${null==(t=r.appearance)?void 0:t.surveyPopupDelaySeconds} seconds`),null==(s=this._surveyManager)||s.renderSurvey(r,n,i),o0.info(`Survey ${r.id} rendered`))},1e3*r.appearance.surveyPopupDelaySeconds);return void this.Rh.add(e)}this._surveyManager.renderSurvey(r,n,i)}else o0.warn("Survey element not found")}displaySurvey(e,t){var i;if(!this.So.isCapturing())return;if(Q(this._surveyManager))return void o0.warn("init was not called");let s=this.zh(e);if(!s)return void o0.warn("Survey not found");let r=s;if((null==(i=s.appearance)?void 0:i.surveyPopupDelaySeconds)&&t.ignoreDelay&&(r=tS(tS({},s),{},{appearance:tS(tS({},s.appearance),{},{surveyPopupDelaySeconds:0})})),t.displayType!==nD&&t.initialResponses&&o0.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),!1===t.ignoreConditions){let e=this.Uh(s);if(!e.eligible)return void o0.warn("Survey is not eligible to be displayed: ",e.reason)}"inline"!==t.displayType?this._surveyManager.handlePopoverSurvey(r,t):this.renderSurvey(r,t.selector,t.properties)}cancelPendingSurvey(e){Q(this._surveyManager)?o0.warn("init was not called"):this._surveyManager.cancelSurvey(e)}handlePageUnload(){var e,t;null==(e=this._surveyManager)||null==(t=e.handlePageUnload)||t.call(e)}};function aG(e,t,i){if(Q(e))return!1;switch(i){case"exact":return e===t;case"contains":return RegExp(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*"),"i").test(e);case"regex":try{return new RegExp(t).test(e)}catch(e){return!1}default:return!1}}var aX=class{constructor(e){this._instance=e,this.Vh=new Set,this.Gh=new Set,this.Zh=new oj,this.Qh=(e,t)=>this.Jh(e,t)&&this.Kh(e,t)&&this.Xh(e,t)&&this.Yh(e,t),this.Jh=(e,t)=>!(null==t?void 0:t.event)||(null==e?void 0:e.event)===(null==t?void 0:t.event)}init(){var e,t;Y(null==(e=this._instance)?void 0:e._addCaptureHook)||(this.tc=null==(t=this._instance)?void 0:t._addCaptureHook((e,t)=>{this.on(e,t)}))}dispose(){var e;null==(e=this.tc)||e.call(this),this.tc=void 0,this.Zh=new oj}register(e){var t,i;if(!Y(null==(t=this._instance)?void 0:t._addCaptureHook)&&(e.forEach(e
2=>{var t;this.Vh.add(e),null==(t=e.steps)||t.forEach(e=>{this.Gh.add((null==e?void 0:e.event)||"")})}),null==(i=this._instance)?void 0:i.autocapture)){let e=new Set;this.Vh.forEach(t=>{var i;null==(i=t.steps)||i.forEach(t=>{(null==t?void 0:t.selector)&&e.add(t.selector)})}),this._instance.autocapture.setElementSelectors(e)}}replace(e){this.Vh.clear(),this.Gh.clear(),this.register(e)}on(e,t){null!=t&&0!=e.length&&(this.Gh.has(e)||this.Gh.has(t.event))&&this.Vh.forEach(e=>{this.ec(t,e)&&this.Zh.emit("actionCaptured",e.name)})}nc(e){this.onAction("actionCaptured",t=>e(t))}ec(e,t){if(null==(null==t?void 0:t.steps))return!1;for(let i of t.steps)if(this.Qh(e,i))return!0;return!1}onAction(e,t){return this.Zh.on(e,t)}Kh(e,t){if(null==t?void 0:t.url){var i;let s=null==e||null==(i=e.properties)?void 0:i.$current_url;if(!s||"string"!=typeof s||!aG(s,t.url,t.url_matching||"contains"))return!1}return!0}Xh(e,t){return!!this.sc(e,t)&&!!this.rc(e,t)&&!!this.oc(e,t)}sc(e,t){var i;let s;if(!(null==t?void 0:t.href))return!0;let r=this.ac(e);if(r.length>0)return r.some(e=>aG(e.href,t.href,t.href_matching||"exact"));let n=(null==e||null==(i=e.properties)?void 0:i.$elements_chain)||"";return!!n&&aG((s=n.match(/(?::|")href="(.*?)"/))?s[1]:"",t.href,t.href_matching||"exact")}rc(e,t){var i,s,r,n;if(!(null==t?void 0:t.text))return!0;let o=this.ac(e);if(o.length>0)return o.some(e=>aG(e.text,t.text,t.text_matching||"exact")||aG(e.$el_text,t.text,t.text_matching||"exact"));let a=(null==e||null==(n=e.properties)?void 0:n.$elements_chain)||"";return!!a&&(i=function(e){let t,i=[],s=/(?::|")text="(.*?)"/g;for(;!Q(t=s.exec(e));)i.includes(t[1])||i.push(t[1]);return i}(a),s=t.text,r=t.text_matching||"exact",i.some(e=>aG(e,s,r)))}oc(e,t){var i,s;if(!(null==t?void 0:t.selector))return!0;let r=null==e||null==(i=e.properties)?void 0:i.$element_selectors;if(null==r?void 0:r.includes(t.selector))return!0;let n=(null==e||null==(s=e.properties)?void 0:s.$elements_chain)||"";if(t.selector_regex&&n)try{return new RegExp(t.selector_regex).test(n)}catch(e){}return!1}ac(e){var t;return null==(null==e||null==(t=e.properties)?void 0:t.$elements)?[]:null==e?void 0:e.properties.$elements}Yh(e,t){return!(null==t?void 0:t.properties)||0===t.properties.length||oG(t.properties.reduce((e,t)=>{let i=V(t.value)?t.value.map(String):null!=t.value?[String(t.value)]:[];return e[t.key]={values:i,operator:t.operator||"exact"},e},{}),null==e?void 0:e.properties)}},aY=class{constructor(e){var t,i;this.lc=[],this._instance=e,this.uc=new Map,this.hc=new Map,this.cc=new Map,this.dc=null==(t=this._instance)||null==(i=t.onSessionId)?void 0:i.call(t,e=>this.vc(e))}fc(e){return!1}gc(){return null}mc(e){}yc(){}bc(e,t){return!!e&&oG(e.propertyFilters,null==t?void 0:t.properties)}_c(e,t){let i=new Map;return e.forEach(e=>{var s;null==(s=e.conditions)||null==(s=s[t])||null==(s=s.values)||s.forEach(t=>{if(null==t?void 0:t.name){let s=i.get(t.name)||[];s.push(e.id),i.set(t.name,s)}})}),i}wc(e,t,i){let s=(i===nC?this.uc:this.hc).get(e),r=[];return this.kc(e=>{r=e.filter(e=>null==s?void 0:s.includes(e.id))}),r.filter(s=>{var r;let n=null==(r=s.conditions)||null==(r=r[i])||null==(r=r.values)?void 0:r.find(t=>t.name===e);return this.bc(n,t)})}register(e){this.Sc(e,!1)}replace(e){this.Sc(e,!0)}Sc(e,t){var i;Y(null==(i=this._instance)?void 0:i._addCaptureHook)||(this.xc(e,t),this.Cc(e,t))}Cc(e,t){var i;let s=e.filter(e=>{var t;return null==(t=e.conditions)||null==(t=t.actions)||null==(t=t.values)?void 0:t.length});if(t&&this.cc.clear(),0===s.length)return void(t&&(null==(i=this.$c)||i.replace([])));this.$c||(this.$c=new aX(this._instance),this.$c.init(),this.$c.nc(e=>this.onAction(e)));let r=[];s.forEach(e=>{var t;null==(t=e.conditions)||null==(t=t.actions)||t.values.forEach(t=>{if(r.push(t),t.name){var i;let s=null!=(i=this.cc.get(t.name))?i:[];s.includes(e.id)||s.push(e.id),this.cc.set(t.name,s)}})}),t?this.$c.replace(r):this.$c.register(r)}Tc(e,t){t.forEach((t,i)=>{var s;let r=null!=(s=e.get(i))?s:[];t.forEach(e=>{r.includes(e)||r.push(e)}),e.set(i,r)})}xc(e,t){var i;let s=e.filter(e=>{var t,i;return(null==(t=e.conditions)?void 0:t.events)&&(null==(i=e.conditions)||null==(i=i.events)||null==(i=i.values)?void 0:i.length)>0}),r=e.filter(e=>{var t,i;return(null==(t=e.conditions)?void 0:t.cancelEvents)&&(null==(i=e.conditions)||null==(i=i.cancelEvents)||null==(i=i.values)?void 0:i.length)>0}),n=this._c(e,nC),o=this._c(e,nM);t?(this.uc=n,this.hc=o):(this.Tc(this.uc,n),this.Tc(this.hc,o)),(0!==s.length||0!==r.length)&&(null!=this.tc||(this.tc=null==(i=this._instance)?void 0:i._addCaptureHook((e,t)=>{this.onEvent(e,t)})))}onEvent(e,t){var i,s;let r=this.Ic(),n=(null==t||null==(i=t.properties)?void 0:i.$survey_id)||(null==t||null==(s=t.properties)?void 0:s.$product_tour_id);if(n&&this.getActivatedIds().includes(n)){let t=this.Mc(e,n);if("consume"===t)return r.info("event consumed activated item, remov
2ing it",{event:e,itemId:n}),void this.Ec([n]);if("persist"===t)return r.info("shown item promoted to persisted activation",{event:e,itemId:n}),this.Pc(n),void this.Rc([n])}if(this.hc.has(e)){let i=this.wc(e,t,nM);i.length>0&&(r.info("cancel event matched, cancelling items",{event:e,itemsToCancel:i.map(e=>e.id)}),this.Ec(i.map(e=>e.id)),i.forEach(e=>this.Ac(e.id)))}if(!this.uc.has(e))return;r.info("event name matched",{event:e,eventPayload:t,items:this.uc.get(e)});let o=this.wc(e,t,nC);this.Fc(o.map(e=>e.id))}onAction(e){this.cc.has(e)&&this.Fc(this.cc.get(e)||[])}Fc(e){var t,i;if(0===e.length)return;let s=!!(null==(t=this._instance)||null==(i=t.get_session_id)?void 0:i.call(t)),r=[];for(let t of e)s&&this.fc(t)?this.Pc(t)&&this.Oc(t):r.push(t);r.length>0&&(this.lc=[...new Set([...this.lc,...r])]),this.Ic().info("updating activated items",{activatedItems:this.getActivatedIds()})}Pc(e){this.lc=this.lc.filter(t=>t!==e);let t=this.Dc();return!t.includes(e)&&(this.Lc([...t,e]),this.Nc(),!0)}Ec(e){let t=new Set(e);this.lc=this.lc.filter(e=>!t.has(e));let i=this.qc(),s=i.filter(e=>!t.has(e));s.length!==i.length&&(this.Lc(s),0===s.length&&this.jc()),this.Rc(e)}Bc(){var e;let t=this.gc();if(!t)return{};let i=null==(e=this._instance)||null==(e=e.persistence)?void 0:e.props[t];return i&&"object"==typeof i?i:{}}Oc(e){if(!this.gc())return;let t=this.Bc();this.mc(tS(tS({},t),{},{[e]:Date.now()}))}Rc(e){if(!this.gc())return;let t=this.Bc(),i={},s=!1;for(let[r,n]of Object.entries(t))e.includes(r)?s=!0:i[r]=n;s&&(X(i)?this.yc():this.mc(i))}Hc(){this.gc()&&this.yc()}getActivationTimestamp(e){if(!this.Dc().includes(e))return;let t=this.Bc()[e];return ee(t)?t:void 0}qc(){var e;let t=this.zc();return(null==(e=this._instance)||null==(e=e.persistence)?void 0:e.props[t])||[]}Dc(){var e,t,i;let s=this.qc();if(0===s.length)return[];let r=null==(e=this._instance)||null==(e=e.persistence)?void 0:e.props[this.Uc()],n=null==(t=this._instance)||null==(i=t.get_session_id)?void 0:i.call(t);return n&&r===n?s:[]}Nc(){var e,t;let i=null==(e=this._instance)||null==(t=e.get_session_id)?void 0:t.call(e);i&&this.Wc(i)}jc(){this.Vc()}vc(e){var t;let i=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[this.Uc()];if(i&&i!==e){let e=this.qc(),t=this.Bc();e.length>0&&(this.Lc([]),e.filter(e=>ee(t[e])).forEach(e=>this.Ac(e))),this.jc(),this.Hc()}}getActivatedIds(){return[...new Set([...this.Dc(),...this.lc])].filter(e=>!this.Gc(e))}dispose(){var e,t,i;null==(e=this.dc)||e.call(this),this.dc=void 0,null==(t=this.tc)||t.call(this),this.tc=void 0,null==(i=this.$c)||i.dispose(),this.$c=void 0}reset(){this.lc=[],this.qc().length>0&&this.Lc([]),this.jc(),this.Hc()}getEventToItemsMap(){return this.uc}Zc(){return this.$c}},aK=class extends aY{constructor(e){super(e)}zc(){return sl}Uc(){return su}gc(){return sh}mc(e){var t;null==(t=this._instance)||null==(t=t.persistence)||t.register({$surveys_activated_timestamps:e})}yc(){var e;null==(e=this._instance)||null==(e=e.persistence)||e.unregister("$surveys_activated_timestamps")}fc(e){var t;let i;this.kc(t=>{i=t.find(t=>t.id===e)});let s=null==i||null==(t=i.appearance)?void 0:t.surveyPopupDelaySeconds;return ee(s)&&s>0}Qc(){return nT}kc(e){var t;null==(t=this._instance)||t.getSurveys(e)}Ac(e){var t;null==(t=this._instance)||t.cancelPendingSurvey(e)}Ic(){return o0}Lc(e){var t;null==(t=this._instance)||null==(t=t.persistence)||t.register({$surveys_activated:e})}Wc(e){var t;null==(t=this._instance)||null==(t=t.persistence)||t.register({$surveys_activated_session:e})}Vc(){var e;null==(e=this._instance)||null==(e=e.persistence)||e.unregister("$surveys_activated_session")}Gc(){return!1}Mc(e,t){var i,s;let r;return this.kc(e=>{r=e.find(e=>e.id===t)}),!r||oz(i=r)&&(null==(s=i.conditions)||null==(s=s.events)?void 0:s.repeatedActivation)||"always"===i.schedule?e===nT?"consume":"ignore":e===nT?"persist":e===nA||e===nL?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}},aJ=class{constructor(e){this._instance=e}initialize(){}get(e){if("string"==typeof e)return this._instance.get_property(e);let t={};for(let i of e){let e=this._instance.get_property(i);Y(e)||(t[i]=e)}return t}set(e,t){this._instance.register("string"==typeof e?{[e]:t}:e)}
2remove(e){"string"!=typeof e?e.forEach(e=>this._instance.unregister(e)):this._instance.unregister(e)}},aZ=class{constructor(e){this._instance=e}get(){let e=this._instance.config;return{disableSurveys:e.disable_surveys,cookielessMode:!!e.cookieless_mode,advancedEnableSurveys:e.advanced_enable_surveys,requestTimeoutMs:e.surveys_request_timeout_ms}}isOptedOut(){return this._instance.consent.isOptedOut()}isCapturing(){return this._instance.is_capturing()}getExtensions(){let e=null==w?void 0:w.__PosthogExtensions__;if(!e)return;let{generateSurveys:t,loadExternalDependency:i}=e;return{generateSurveys:t?e=>t(this._instance,e):void 0,loadExternalDependency:i?e=>i(this._instance,"surveys",e):void 0}}createEventReceiver(){return new aK(this._instance)}};let aQ=(null==u?void 0:u.location)?nt(u.location.hash,"__posthog")||nt(location.hash,"state"):null,a0="_postHogToolbarParams",a1=iI("[Toolbar]"),a2=iI("[FeatureFlags]");var a3=class{constructor(e,t=!1){this.Jc=!1,this.update(e,t)}update(e,t){var i,s,r,n,o,a,l,u;this.Kc={bootstrap:{featureFlags:null!=(i=null==(s=e.bootstrap)?void 0:s.featureFlags)?i:void 0,featureFlagPayloads:null!=(r=null==(n=e.bootstrap)?void 0:n.featureFlagPayloads)?r:void 0},remoteRequestsDisabled:t,featureFlagsDisabled:!!e.advanced_disable_feature_flags,onlyEvaluateSurveyFeatureFlags:!!e.advanced_only_evaluate_survey_feature_flags,deduplicateCallsPerSession:!!e.advanced_feature_flags_dedup_per_session,cacheTtlMs:e.feature_flag_cache_ttl_ms,refreshIntervalMs:null!=(o=e.remote_config_refresh_interval_ms)?o:3e5,idleRefreshBackoff:Y(e.remote_config_refresh_interval_ms),requestTimeoutMs:e.feature_flag_request_timeout_ms,requestMaxRetries:Math.max(0,null!=(a=e.feature_flag_request_max_retries)?a:1),compression:e.disable_compression?void 0:"best-available",evaluationContexts:null!=(l=null!=(u=e.evaluation_contexts)?u:e.evaluation_environments)?l:[],flagKeys:V(e.flag_keys)?e.flag_keys:void 0},!e.evaluation_environments||e.evaluation_contexts||this.Jc||(a2.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.Jc=!0),Y(e.flag_keys)||V(e.flag_keys)||a2.error("Invalid flag_keys found:",e.flag_keys,"Expected array of non-empty strings")}get(){return this.Kc}};let a5=iI("[FeatureFlags]"),a4=iI("[FeatureFlags]",{debugEnabled:!0}),a6="\" failed. Feature flags didn't load in time.",a8=[502,504],a9=["click","keydown","wheel","touchstart","pointerdown"],a7="connection_error",le=e=>{let t={};for(let i=0;e.length>i;i++)t[e[i]]=!0;return t},lt=e=>{let t={};for(let[i,s]of sq(e||{}))s&&(t[i]=s);return t},li=e=>ea(e)&&("RangeError"===e.name&&0===e.message.indexOf("Maximum call stack size exceeded")||"InternalError"===e.name&&"too much recursion"===e.message),ls=iI("[Error tracking]"),lr="webkit-masked-url:",ln=[{value:"isolatedAPI.contexts.topHostname",exact:!1},{value:"No response from target",exact:!0}],lo=["chrome-extension://","moz-extension://","safari-extension:","safari-web-extension:",lr],la=["__firefox__","__gCrWeb"],ll="Refusing to render web experiment since the viewer is a likely bot",lu={icontains:(e,t)=>t.toLowerCase().indexOf(e.toLowerCase())>-1,not_icontains:(e,t)=>-1===t.toLowerCase().indexOf(e.toLowerCase()),regex:(e,t)=>oU(t,e),not_regex:(e,t)=>!oU(t,e),exact:(e,t)=>t===e,is_not:(e,t)=>t!==e},lh=iI("[Conversations]"),lc="Conversations not available yet.";function ld(e,t){var i,s,r,n,o,a,l;let u=null!=(i=null==e?void 0:e.flushIntervalMs)?i:3e3,h=null!=(s=null==e?void 0:e.maxBufferSize)?s:100,d=(null==t?void 0:t.consoleCapture)?void 0:null!=(r=null==e?void 0:e.maxLogsPerInterval)?r:1e3,p=Y(d)?Math.max(h,2048):Math.max(h,d),f=tS(tS({},function(){var e,t;let i,s="",r="";try{let e=null==c?void 0:c.userAgent;e&&([s,r]=to(e))}catch(e){}return e=s,t=r,tS(tS({},(i=function(e){if(e)return({}).hasOwnProperty.call(iv,e)?iv[e]:e}(e))?{"os.name":i}:{}),t?{"os.version":t}:{})}()),null==e?void 0:e.resourceAttributes);return{serviceName:null!=(n=null!=(o=null==f?void 0:f["service.name"])?o:null==e?void 0:e.serviceName)?n:null==t?void 0:t.serviceNameDefault,serviceVersion:null!=(a=null==f?void 0:f["service.version"])?a:null==e?void 0:e.serviceVersion,environment:null!=(l=null==f?void 0:f["deployment.environment"])?l:null==e?void 0:e.environment,resourceAttributes:f,beforeSend:null==e?void 0:e.beforeSend,flushIntervalMs:u,maxBufferSize:h,maxQueueSize:p,maxBatchRecordsPerPost:100,rateCapWindowMs:u,maxLogsPerInterval:d,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}
2let lp=["debug","log","warn","error","info"],lf=e=>{for(;null==e?void 0:e.__rrweb_original__;)e=e.__rrweb_original__;return e},lg="console",lv="__posthogHandledLogsRequestError",l_=(e,t)=>{let i=e instanceof Error?e:Error(t);return i[lv]=!0,i},lm=e=>!!e&&"object"==typeof e&&!0===e[lv],ly=iI("[NetworkMetrics]"),lb=()=>{var e;return(null==u||null==(e=u.performance)?void 0:e.now)?u.performance.now():Date.now()},lw={"http:":80,"https:":443},lx=new Set(["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"]),lk=(e,t)=>{var i;let s=String(t);return{method:String(e).toUpperCase(),url:(null==(i=r9(s))?void 0:i.href)||s}},l$=function(e,t,i,s,r,n){let o=arguments.length>6&&void 0!==arguments[6]&&arguments[6];try{var a,l,u;let h,c=r();if(!c)return;let d=i||void 0,p=lb()-s,f=r9(t.url);if(f&&"http:"!==f.protocol&&"https:"!==f.protocol)return;let g={url:(null==f?void 0:f.href)||t.url,method:t.method},v=W(c.name)?c.name(g):K(c.name)?c.name:"http.client.request.duration";if(!v)return;let _=o&&!d?void 0:d?400>d?void 0:String(d):(null==n?void 0:n.name)||"_OTHER",m=tS(tS(tS(tS(tS({},(u=g.method,h=lx.has(u)?u:"_OTHER",tS({"http.request.method":h},"_OTHER"===h&&u!==h?{"http.request.method_original":u}:{}))),f?{"server.address":f.hostname.startsWith("[")&&f.hostname.endsWith("]")?f.hostname.slice(1,-1):f.hostname,"server.port":Number(f.port)||lw[f.protocol],"url.scheme":f.protocol.slice(0,-1),"url.template":f.pathname.split("/").map(e=>/^\d+$/.test(e)||e.length>=8&&/^[0-9a-f-]*\d[0-9a-f-]*$/i.test(e)?":id":e).join("/")}:{}),d?{"http.response.status_code":d}:{}),_?{"error.type":_}:{}),null==(a=c.attributes)?void 0:a.call(c,g,{status:d,durationMs:p}));null==(l=e.metrics)||l.histogram(v,p,{unit:"ms",attributes:m})}catch(e){ly.error("Failed to record network metric",e)}},lE=()=>{},lS={featureFlags:class{constructor(e){this.name="featureFlags",this.Xc=!1,this.featureFlagEventHandlers=[],this.$=a5,this.Yc={},this.td={},this.ed=[],this.nd=!1,this.sd=!1,this.rd=0,this.od=!1,this.ad=!1,this.ld=!1,this.ud=!1,this.hd=0,this.dd=!1,this.an=()=>{let e=this.vd();this.hd=0,e&&this.reloadFeatureFlags()},this.fd=()=>{var e,t;let i=this.pd,s=null!=(e=this.gd)?e:i;Y(i)||Y(s)||this.Rr.remoteRequestsDisabled||!d||"hidden"===d.visibilityState||Date.now()-(null!=(t=this.md)?t:0)<s||(this.gd=this.dd||!this.Rr.idleRefreshBackoff?i:Math.min(2*s,36e5),this.dd=!1,this.reloadFeatureFlags(),this.yd())},this.bd=()=>{this.dd&&this.gd===this.pd||this._d()},this.ln=()=>{"visible"===(null==d?void 0:d.visibilityState)&&this._d()},"get"in e?this.So=e:(this._instance=e,this.wd=new a3(e.config,e.nl()),this.So=this.wd)}updateConfig(e,t){var i;null==(i=this.wd)||i.update(e,t),this.wo&&this.kd()}setup(e){return this.Fh=e,this.$=e.logger.createLogger("[FeatureFlags]"),az(e.kv.initialize(),()=>{this.Fh===e&&(this.Fh=void 0,this.wo=e,this.Sd(e))})}Sd(e){var t;if(this.wo===e)return u&&sW(u,"online",this.an),this.kd(),this.xd=e.registerDynamicEventProperties(()=>this.Cd()?this.Yc:this.td),this.$d=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.onCrossTabFeatureFlagChange(()=>{this.Td(),this.Id(),this.Md()}),this.Id(),this.initialize()}_d(){this.dd=!0,this.gd=this.pd,this.fd()}kd(){let e=this.Rr.refreshIntervalMs,t=!this.Rr.remoteRequestsDisabled&&d&&!Y(e)&&e>0?e:void 0;this.Rr.idleRefreshBackoff||(this.gd=t),t!==this.pd&&(this.Ed(),Y(t)||(this.pd=t,this.gd=t,this.yd(),(null==d?void 0:d.addEventListener)&&(sW(d,sC,this.ln),sj(a9,e=>{sW(d,e,this.bd,{capture:!0})}))))}yd(){Y(this.pd)||(Y(this.Pd)||clearInterval(this.Pd),this.md=Date.now(),this.Pd=setInterval(this.fd,this.pd))}Ed(){var e;Y(this.Pd)||(clearInterval(this.Pd),this.Pd=void 0,null==d||null==(e=d.removeEventListener)||e.call(d,"visibilitychange",this.ln),sj(a9,e=>{var t;null==d||null==(t=d.removeEventListener)||t.call(d,e,this.bd,{capture:!0})})),this.pd=void 0,this.gd=void 0,this.dd=!1,this.md=void 0}destroy(){this.Rd()}dispose(){this.Rd()}Rd(){var e,t;this.Ed(),this.rd++,this.ad=!1,this.Fh=void 0,this.wo&&(this.Ad(),null==(e=this.xd)||e.dispose(),this.xd=void 0,null==(t=this.$d)||t.call(this),this.$d=void 0,this.ed=[],null==u||u.removeEventListener("online",this.an),this.wo=void 0)}get Rr(){return this.So.get()}Fd(e){var t;return this.Od&&e in this.Od?this.Od[e]:null==(t=this.wo)?void 0:t.kv.get(e)}Td(){return!!this.Od&&(this.Od=void 0,!0)}Dd(){var e;return!Y(null==(e=this.wo)?void 0:e.kv.get("$enabled_feature_flags"))&&this.Td()}At(e){this.Ld(()=>{var t;return null==(t=this.wo)?void 0:t.kv.set(e)})}Nd(e,t,i){var s;if(!(null==(s=this._instance)?void 0:s.persistence)||!e.$enabled_feature_flags)return;let r=this.Fd("$enabled_feature_flags")||{},n=e.$enabled_feature_flags||{},o=t.flags||t.featureFlags,a=t.flags?Object.entries(t.flags).filter(e=>{let[,t]=e;return!(null==t?void 0:t.failed)}).map(e=>{let[t]=e;return t}):[],l=!!t.errorsWhileComputingFlags&&!!t.flags,u=l?a:i&&!V(o)?Object.keys(o||{}):Array.from(new Set([...Object.keys(r),...Object.keys(n)])),h=this.Fd("$feature_flag_payloads")||{},c=e.$feature_flag_payloads||{},d=l||i?u:Array.from(new Set([...Object.keys(h),...Object.keys(c)])),p=!l&&!i,f=!!p||u,g={[i4]:f,[i5]:f,[i9]:!!p||d};for(let t of(e.$feature_flag_details&&(g[i8]=f),[i7,sg,se]))Y(e[t])||(g[t]=!0);this._instance.persistence.markCrossTabFeatureFlagChanges(g)}Lt(e){this.Ld(()=>{var t;return null==(t=this.wo)?void 0:t.kv.remove(e)})}Ld(e){try{e()}catch(e){this.$.error("Failed to update feature flag persistence",e)}}Id(){let e={};for(let t of[i4,i9,i7,st]){let i=this.Fd(t);Y(i)||(e[t]=i)}this.Yc=e;let t=tS({},e),i=this.Fd(i5);if(i)for(let[e,s]of Object.entries(i))t[`$feature/${e}`]=s;this.td=t}Cd(){let e=this.Rr.cacheTtlMs;
2if(!e||0>=e)return!1;let t=this.Fd(sg);return"number"!=typeof t||Date.now()-t>e}qd(){return!!this.Cd()&&(this.ud||this.sd||(this.ud=!0,this.$.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}jd(){let e=this.Rr.evaluationContexts;return(null==e?void 0:e.length)?e.filter(e=>{let t=e&&"string"==typeof e&&e.trim().length>0;return t||this.$.error("Invalid evaluation context found:",e,"Expected non-empty string"),t}):[]}Bd(){let e=this.Rr.flagKeys;if(!Y(e))return e.filter(e=>{let t=e&&"string"==typeof e&&e.trim().length>0;return t||this.$.error("Invalid flag key found:",e,"Expected non-empty string"),t})}initialize(){var e,t,i,s;let r=this.Rr,n=null!=(e=null==(t=r.bootstrap)?void 0:t.featureFlags)?e:{};if(Object.keys(n).length){let e=null!=(i=null==(s=r.bootstrap)?void 0:s.featureFlagPayloads)?i:{},t=Object.keys(n).filter(e=>!Y(n[e])).reduce((e,t)=>(e[t]=n[t],e),{}),o=Object.keys(e).filter(e=>t[e]).reduce((t,i)=>(t[i]=e[i],t),{});return this.Hd({featureFlags:t,featureFlagPayloads:o},void 0,{persist:!1})}}updateFlags(e,t,i){var s,r;let n=(null==i?void 0:i.merge)&&null!=(s=this.Fd("$enabled_feature_flags"))?s:{},o=(null==i?void 0:i.merge)&&null!=(r=this.Fd("$feature_flag_payloads"))?r:{},a=tS(tS({},n),e),l=tS(tS({},o),t),u={};for(let[e,t]of Object.entries(a))u[e]={key:e,enabled:t8(t),variant:t9(t),reason:void 0,metadata:Y(null==l?void 0:l[e])?void 0:{id:0,version:void 0,description:void 0,payload:l[e]}};this.Hd({flags:u})}get hasLoadedFlags(){return this.nd}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){let e=this.Fd(i8),t=this.Fd(st),i=this.Fd(si);if(!i&&!t)return e||{};let s=sH({},e||{});for(let e of[...new Set([...Object.keys(i||{}),...Object.keys(t||{})])]){var r,n;let o=s[e],a=null==t?void 0:t[e],l=Y(a)?null!=(r=null==o?void 0:o.enabled)&&r:!!a,u=Y(a)?null==o?void 0:o.variant:"string"==typeof a?a:void 0,h=null==i?void 0:i[e],c=tS(tS({},o),{},{enabled:l,variant:l?null!=u?u:null==o?void 0:o.variant:void 0});l!==(null==o?void 0:o.enabled)&&(c.original_enabled=null==o?void 0:o.enabled),u!==(null==o?void 0:o.variant)&&(c.original_variant=null==o?void 0:o.variant),h&&(c.metadata=tS(tS({},null==o?void 0:o.metadata),{},{payload:h,original_payload:null==o||null==(n=o.metadata)?void 0:n.payload})),s[e]=c}return this.Xc||(this.$.warn(" Overriding feature flag details!",{flagDetails:e,overriddenPayloads:i,finalDetails:s}),this.Xc=!0),s}getAllFeatureFlags(){let e=this.getFlagVariants(),t=this.getFlagPayloads();return Object.keys(e).map(i=>{let s=e[i];return{key:i,enabled:t8(s),variant:t9(s),payload:t6(t[i])}})}getFlagVariants(){let e=this.Fd(i5),t=this.Fd(st);if(!t)return e||{};let i=sH({},e||{}),s=Object.keys(t);for(let e=0;s.length>e;e++)i[s[e]]=t[s[e]];return this.Xc||(this.$.warn(" Overriding feature flags!",{enabledFlags:e,overriddenFlags:t,finalFlags:i}),this.Xc=!0),i}getFlagPayloads(){let e=this.Fd(i9),t=this.Fd(si);if(!t)return e||{};let i=sH({},e||{}),s=Object.keys(t);for(let e=0;s.length>e;e++)i[s[e]]=t[s[e]];return this.Xc||(this.$.warn(" Overriding feature flag payloads!",{flagPayloads:e,overriddenPayloads:t,finalPayloads:i}),this.Xc=!0),i}reloadFeatureFlags(){this.od||this.Rr.featureFlagsDisabled||this.vd()||(this.sd&&(this.ad=!0),this.zd||(this.ed.slice().forEach(e=>{try{e()}catch(e){this.$.error("Error while running feature flags reloading callback",e)}}),this.zd=setTimeout(()=>{this.Ud()},5)))}Ad(){clearTimeout(this.zd),this.zd=void 0}onReloading(e){return this.ed.push(e),()=>{this.ed=this.ed.filter(t=>t!==e)}}ensureFlagsLoaded(){this.nd||this.sd||this.zd||this.reloadFeatureFlags()}setAnonymousDistinctId(e){this.$anon_distinct_id=e}setReloadingPaused(e){this.od=e}resetFlagCallReported(){this.Lt(sd)}Ud(e){this.Ad();let t=this.wo;if(!t||this.Rr.remoteRequestsDisabled||this.vd())return;if(this.sd)return void(this.ad=!0);let i={token:t.projectToken,distinct_id:t.distinctId,groups:t.groups,$anon_distinct_id:this.$anon_distinct_id,person_properties:tS(tS(tS({},t.initialPersonProperties),this.Fd("$stored_person_properties")||{}),{},{$lib:t.library.name,$lib_version:t.library.version}),group_properties:this.Fd(sr),timezone:nv()};Y(t.deviceId)||(i.$device_id=t.deviceId),((null==e?void 0:e.disableFlags)||this.Rr.featureFlagsDisabled)&&(i.disable_flags=!0);let s=this.jd();s.length&&(i.evaluation_contexts=s);let r=this.Bd();Y(r)||(i.flag_keys=r);let n=this.Rr.onlyEvaluateSurveyFeatureFlags,o="/flags/?v=2"+(n?"&only_evaluate_survey_feature_flags=true":""),a=this.rd;this.sd=!0;let l=()=>{this.ad&&(this.ad=!1,this.Ud())},u=e=>{var t,s;let r=null!=(t=e.json)?t:{},o=200!==e.statusCode;if(this.sd=!1,a!==this.rd)return void l();if(this.Wd(e.statusCode),o||this.ad||(this.$anon_distinct_id=void 0),i.disable_flags&&!this.ad)return;this.ld=!o;let u=[];e.error?u.push(e.error instanceof Error&&"AbortError"===e.error.name?"timeout":e.error instanceof Error?a7:"unknown_error"):200!==e.statusCode&&u.push(`api_error_${e.statusCode}`),r.errorsWhileComputingFlags&&u.push("errors_while_computing_flags");let h=!!(null==(s=r.quotaLimited)?void 0:s.includes("feature_flags"));h&&u.push("quota_limited"),this.At({[sf]:u}),h?this.$.warn("You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset. Please visit https://posthog.com/docs/billing/limits-alerts to learn more."):i.disable_flags||this.Hd(r,o,{partialResponse:n}),l()},h=e=>{this.sd=!1,a===this.rd&&(this.At({[sf]:[a7]}),this.$.error("Feature flag request failed",e),this.Dd()&&this.Md(!0)),l()},c=this.Rr.requestMaxRetries,d=()=>c>0&&a===this.rd,p=()=>
2{if(a!==this.rd||!this.wo||this.Rr.remoteRequestsDisabled)return this.sd=!1,void l();try{t.sendRequest(o,{target:"flags",method:"POST",body:i,compression:this.Rr.compression,sentAt:"body",timeoutMs:this.Rr.requestTimeoutMs}).then(e=>{(a8.includes(e.statusCode)||0===e.statusCode&&e.error instanceof Error&&"AbortError"===e.error.name)&&d()?(c--,setTimeout(p,500)):u(e)}).catch(h)}catch(e){h(e)}};p()}vd(){return ni(this.hd,3)}Wd(e){this.hd=ns(e,this.hd,3,()=>this.$.warn("Feature flag requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped refreshing feature flags; will try again when connectivity changes."))}getFeatureFlag(e){var t;let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(i.fresh&&!this.ld)return;if(!(this.nd||this.getFlags()&&this.getFlags().length>0))return void this.$.warn('getFeatureFlag for key "'+e+a6);if(this.qd())return;let s=this.getFeatureFlagResult(e,i);return null!=(t=null==s?void 0:s.variant)?t:null==s?void 0:s.enabled}getFeatureFlagDetails(e){return this.getFlagsWithDetails()[e]}getFeatureFlagPayload(e){let t=this.getFeatureFlagResult(e,{send_event:!1});return null==t?void 0:t.payload}getFeatureFlagResult(e){var t,i,s,r,n,o,a,l,u,h,c,d,p,f;let g=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(g.fresh&&!this.ld)return;if(!(this.nd||this.getFlags()&&this.getFlags().length>0))return void this.$.warn('getFeatureFlagResult for key "'+e+a6);if(this.qd())return;let v=this.getFlagVariants(),_=e in v,m=v[e],y=this.getFlagPayloads()[e],b=String(m),w=this.Fd("$feature_flag_request_id")||void 0,x=this.Fd("$feature_flag_evaluated_at")||void 0,k,$=this.Fd("$flag_call_reported")||{};if(this.Rr.deduplicateCallsPerSession){let e=null==(t=this.wo)?void 0:t.session.sessionId,i=this.Fd(sp);e&&e!==i&&($={},k=e)}if(!g.send_event&&"send_event"in g)k&&this.At({[sd]:$,[sp]:k});else if(e in $&&$[e].includes(b))k&&this.At({[sd]:$,[sp]:k});else{V($[e])?$[e].push(b):$[e]=[b],this.At(tS({[sd]:$},k?{[sp]:k}:{}));let t=this.getFeatureFlagDetails(e),g=[...null!=(i=this.Fd("$feature_flag_errors"))?i:[]];Y(m)&&g.push("flag_missing");let v={$feature_flag:e,$feature_flag_response:m,$feature_flag_payload:null!=y?y:null,$feature_flag_request_id:w,$feature_flag_evaluated_at:x,$feature_flag_bootstrapped_response:null!=(s=null==(r=this.Rr.bootstrap)||null==(r=r.featureFlags)?void 0:r[e])?s:null,$feature_flag_bootstrapped_payload:null!=(n=null==(o=this.Rr.bootstrap)||null==(o=o.featureFlagPayloads)?void 0:o[e])?n:null,$used_bootstrap_value:!this.ld};Y(null==t||null==(a=t.metadata)?void 0:a.has_experiment)||(v.$feature_flag_has_experiment=t.metadata.has_experiment),Y(null==t||null==(l=t.metadata)?void 0:l.version)||(v.$feature_flag_version=t.metadata.version);let _=null!=(u=null==t||null==(h=t.reason)?void 0:h.description)?u:null==t||null==(c=t.reason)?void 0:c.code;_&&(v.$feature_flag_reason=_),(null==t||null==(d=t.metadata)?void 0:d.id)&&(v.$feature_flag_id=t.metadata.id),Y(null==t?void 0:t.original_variant)&&Y(null==t?void 0:t.original_enabled)||(v.$feature_flag_original_response=Y(t.original_variant)?t.original_enabled:t.original_variant),(null==t||null==(p=t.metadata)?void 0:p.original_payload)&&(v.$feature_flag_original_payload=null==t||null==(f=t.metadata)?void 0:f.original_payload),g.length&&(v.$feature_flag_error=g.join(",")),this.Vd(v)}return _?{key:e,enabled:!!m,variant:"string"==typeof m?m:void 0,payload:t6(y)}:void 0}Vd(e){try{var t;null==(t=this.wo)||t.capture("$feature_flag_called",e)}catch(e){this.$.error("Failed to capture feature flag call",e)}}getRemoteConfigPayload(e,t){this.Gd(e,t)}Gd(e,t){var i=this;return ep(function*(){let s,r=i.wo;if(!r)return;let n={distinct_id:r.distinctId,token:r.projectToken,person_properties:{$lib:r.library.name,$lib_version:r.library.version}},o=i.jd();o.length&&(n.evaluation_contexts=o);let a=i.Bd();Y(a)||(n.flag_keys=a);try{var l;let t=null==(l=(yield r.sendRequest("/flags/?v=2",{target:"flags",method:"POST",body:n,compression:i.Rr.compression,sentAt:"body",timeoutMs:i.Rr.requestTimeoutMs})).json)?void 0:l.featureFlagPayloads;s=(null==t?void 0:t[e])||void 0}catch(e){return void i.$.error("Remote config feature flag request failed",e)}try{t(s)}catch(e){i.$.error("Remote config feature flag callback failed",e)}})()}isFeatureEnabled(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(t.fresh&&!this.ld)return t.defaultValue;if(!(this.nd||this.getFlags()&&this.getFlags().length>0))return this.$.warn('isFeatureEnabled for key "'+e+a6),t.defaultValue;let i=this.getFeatureFlag(e,t);return Y(i)?t.defaultValue:!!i}addFeatureFlagsHandler(e){this.featureFlagEventHandlers.push(e)}removeFeatureFlagsHandler(e){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter(t=>t!==e)}receivedFeatureFlags(e,t,i){this.Hd(e,t,i)}Hd(e,t,i){if(!this.wo)return;this.nd=!0;let s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},r=arguments.length>4?arguments[4]:void 0,n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:a5,o=((e,t)=>{let i=e.flags;if(i){let t=Object.fromEntries(Object.keys(i).map(e=>{var t;return[e,null!=(t=i[e].variant)?t:i[e].enabled]})),s=Object.fromEntries(Object.keys(i).filter(e=>i[e].enabled).filter(e=>{var t;return!Y(null==(t=i[e].metadata)?void 0:t.payload)}).map(e=>{var t;return[e,null==(t=i[e].metadata)?void 0:t.payload]}));return tS(tS({},e),{},{featureFlags:t,featureFlagPayloads:s})}return e.featureFlags&&t.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),e})(e,n),a=o.flags,l=o.featureFlags,u=o.featureFlagPayloads;if(!l)return;let h=e.requestId,c=e.evaluatedAt;if(V(l)){n.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");let e={};if(l)for(let t=0;l.length>t;t++)e[l[t]]=!0;return{[i4]:l,[i5]:e,[se]:!1}}let d=l,p=u,f=a;if(null==r?void 0:r.partialResponse){let e=Object.keys(d),r=p||{};d=tS(tS({},t),d),p=tS(tS({}
2,i),r),e.forEach(e=>{e in r||null==p||delete p[e]}),f=tS(tS({},s),f)}else if(e.errorsWhileComputingFlags)if(a){let e=new Set(Object.keys(a).filter(e=>{var t;return!(null==(t=a[e])?void 0:t.failed)}));d=tS(tS({},t),Object.fromEntries(Object.entries(d).filter(t=>{let[i]=t;return e.has(i)})));let r=Object.fromEntries(Object.entries(p||{}).filter(t=>{let[i]=t;return e.has(i)}));p=tS(tS({},i),r),e.forEach(e=>{e in r||null==p||delete p[e]}),f=tS(tS({},s),Object.fromEntries(Object.entries(f||{}).filter(t=>{let[i]=t;return e.has(i)})))}else d=tS(tS({},t),d),p=tS(tS({},i),p),f=tS(tS({},s),f);return tS(tS({[i4]:Object.keys(lt(d)),[i5]:d||{},[i9]:p||{},[i8]:f||{},[se]:!0===e.minimalFlagCalledEvents},h?{[i7]:h}:{}),c?{[sg]:c}:{})}(e,this.getFlagVariants(),this.getFlagPayloads(),this.getFlagsWithDetails(),i,this.$);if(s)if(!1===(null==i?void 0:i.persist)){let e=!Y(this.wo.kv.get(i5));this.Od=s,e||this.At(s)}else this.Td(),this.Nd(s,e,!!(null==i?void 0:i.partialResponse)),this.At(s);else t&&this.Dd();t||(this.ud=!1),this.Md(t)}override(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:e,suppressWarning:t})}overrideFeatureFlags(e){this.Zd(e)}Zd(e){if(this.wo){if(!1===e)return this.Lt([st,si]),this.Md(),void a4.info("All overrides cleared");if(V(e))return this.At({[st]:le(e)}),this.Md(),void a4.info("Flag overrides set",{flags:e});if(e&&"object"==typeof e&&("flags"in e||"payloads"in e)){var t;this.Xc=!!(null!=(t=e.suppressWarning)&&t);let i={},s=e.flags,r=e.payloads;return s&&(i[st]=V(s)?le(s):s),r&&(i[si]=r),Object.keys(i).length&&this.At(i),!1===s&&!1===r?this.Lt([st,si]):!1===s?this.Lt(st):!1===r&&this.Lt(si),this.Md(),!1===s?a4.info("Flag overrides cleared"):s&&a4.info("Flag overrides set",{flags:s}),void(!1===r?a4.info("Payload overrides cleared"):r&&a4.info("Payload overrides set",{payloads:r}))}if(e&&"object"==typeof e)return this.At({[st]:e}),this.Md(),void a4.info("Flag overrides set",{flags:e});this.$.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:e})}else this.$.warn("posthog.featureFlags.overrideFeatureFlags called before feature flags were ready")}onFeatureFlags(e){if(this.addFeatureFlagsHandler(e),this.nd){let{flags:t,flagVariants:i}=this.Qd();try{e(t,i)}catch(e){this.$.error("Error while running feature flags callback",e)}}return()=>this.removeFeatureFlagsHandler(e)}updateEarlyAccessFeatureEnrollment(e,t,i){var s,r;let n=(this.Fd("$early_access_features")||[]).find(t=>t.flagKey===e),o={[`$feature_enrollment/${e}`]:t},a={$feature_flag:e,$feature_enrollment:t,$set:o};n&&(a.$early_access_feature_name=n.name),i&&(a.$feature_enrollment_stage=i);let l=tS(tS({},this.getFlagVariants()),{},{[e]:t});null==(s=this._instance)||null==(s=s.persistence)||s.markCrossTabFeatureFlagChanges({$active_feature_flags:[e],$enabled_feature_flags:[e],$stored_person_properties:Object.keys(o)}),this.At({[i4]:Object.keys(lt(l)),[i5]:l,[ss]:tS(tS({},this.Fd("$stored_person_properties")||{}),o)}),this.Md();try{null==(r=this.wo)||r.capture("$feature_enrollment_update",a)}catch(e){this.$.error("Failed to capture early access feature enrollment",e)}}getEarlyAccessFeatures(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2?arguments[2]:void 0,s=this.Fd(i6);!s||t?this.Jd(e,i):e(s)}Jd(e,t){var i=this;return ep(function*(){let s,r=i.wo;if(!r)return;let n=t?`&${t.map(e=>`stage=${e}`).join("&")}`:"";try{let e=yield r.sendRequest(`/api/early_access_features/?token=${r.projectToken}${n}`,{target:"api",method:"GET",sentAt:"query"});if(!e.json)return;s=e.json.earlyAccessFeatures,i.At({[i6]:s})}catch(e){return void i.$.error("Early access feature request failed",e)}try{e(s)}catch(e){i.$.error("Early access feature callback failed",e)}})()}Qd(){let e=this.getFlags(),t=this.getFlagVariants();return{flags:e.filter(e=>t[e]),flagVariants:Object.keys(t).filter(e=>t[e]).reduce((e,i)=>(e[i]=t[i],e),{})}}Md(e){this.Id();let{flags:t,flagVariants:i}=this.Qd();
2this.featureFlagEventHandlers.forEach(s=>{try{s(t,i,{errorsLoading:e})}catch(e){this.$.error("Error while running feature flags callback",e)}})}setPersonPropertiesForFlags(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];this.Kd(e,t)}Kd(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],i=this.Fd("$stored_person_properties")||{},s=(null==e?void 0:e.$set)||((null==e?void 0:e.$set_once)?{}:e),r=null==e?void 0:e.$set_once,n={};if(r)for(let e in r)({}).hasOwnProperty.call(r,e)&&(e in i||(n[e]=r[e]));this.At({[ss]:tS(tS(tS({},i),n),s)}),t&&this.reloadFeatureFlags()}unsetPersonPropertiesForFlags(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],i=tS({},this.Fd("$stored_person_properties")||{});e.forEach(e=>{delete i[e]}),this.At({[ss]:i}),t&&this.reloadFeatureFlags()}resetPersonPropertiesForFlags(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];this.Lt(ss),e&&this.reloadFeatureFlags()}setGroupPropertiesForFlags(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],i=this.Fd("$stored_group_properties")||{},s=tS({},i);for(let t of Object.keys(e))s[t]=tS(tS({},i[t]),e[t]);this.At({[sr]:s}),t&&this.reloadFeatureFlags()}resetGroupPropertiesForFlags(e){if(e){let t=this.Fd("$stored_group_properties")||{};this.At({[sr]:tS(tS({},t),{},{[e]:{}})})}else this.Lt(sr)}reset(){this.rd++,this.ad=!1,this.Yc={},this.td={},this.Od=void 0,this.nd=!1,this.od=!1,this.ld=!1,this.$anon_distinct_id=void 0,this.Ad(),this.Xc=!1,this.hd=0}}},lP=tS({productTours:class{get Ml(){return this._instance.persistence}constructor(e){this.df=null,this.vf=null,this._instance=e}initialize(){this.loadIfEnabled()}onRemoteConfig(e){if(!e.ok)return;let t=e.config;if("productTours"in t){var i,s;if(this.Ml&&this.Ml.register({[iZ]:!!t.productTours}),!aN(this._instance))return!this.df&&Q(null==(i=this.Ml)?void 0:i.props.ph_product_tours)||aj.info("product tours disabled; stopping and clearing cached tours"),null==(s=this.df)||s.stop(),this.df=null,void this.clearCache();this.loadIfEnabled()}}loadIfEnabled(){!this.df&&aN(this._instance)&&this.zo(()=>this.ff())}zo(e){var t,i,s;(null==(t=w.__PosthogExtensions__)?void 0:t.generateProductTours)?e():null==(i=w.__PosthogExtensions__)||null==(s=i.loadExternalDependency)||s.call(i,this._instance,"product-tours",t=>{t?aj.error("Could not load product tours script",t):e()})}ff(){var e;!this.df&&(null==(e=w.__PosthogExtensions__)?void 0:e.generateProductTours)&&(this.df=w.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(V(this.vf)&&!t)return void e(this.vf,{isLoaded:!0});let i=this.Ml;if(i){let s=i.props[sc];if(V(s)&&!t)return this.vf=s,void e(s,{isLoaded:!0})}this._instance._send_request({url:this._instance.requestRouter.endpointFor("api",`/api/product_tours/?token=${this._instance.config.token}`),method:"GET",timestampMode:"query",callback:t=>{if(!aN(this._instance))return void e([],{isLoaded:!0});let s=t.statusCode;if(200!==s||!t.json){let i=`Product Tours API could not be loaded, status: ${s}`;return 0===s?t.error||aj.warn(i):aj.error(i),void e([],{isLoaded:!1,error:i})}let r=V(t.json.product_tours)?t.json.product_tours:[];this.vf=r,i&&i.register({[sc]:r}),e(r,{isLoaded:!0})}})}getActiveProductTours(e){Q(this.df)?e([],{isLoaded:!1,error:"Product tours not loaded"}):this.df.getActiveProductTours(e)}showProductTour(e){var t;null==(t=this.df)||t.showTourById(e)}previewTour(e){this.df?this.df.previewTour(e):this.zo(()=>{var t;this.ff(),null==(t=this.df)||t.previewTour(e)})}dismissProductTour(){var e;null==(e=this.df)||e.dismissTour("user_clicked_skip")}nextStep(){var e;null==(e=this.df)||e.nextStep()}previousStep(){var e;null==(e=this.df)||e.previousStep()}clearCache(){var e;this.vf=null,null==(e=this.Ml)||e.unregister("ph_product_tours")}resetTour(e){var t;null==(t=this.df)||t.resetTour(e)}resetAllTours(){var e;null==(e=this.df)||e.resetAllTours()}cancelPendingTour(e){var t;null==(t=this.df)||t.cancelPendingTour(e)}}},lS),lR=tS({surveys:class extends aW{constructor(e){super(new aZ(e),{get projectToken(){return e.config.token},kv:new aJ(e)}),this._instance=e}qh(e,t){let i=t.query?o_(e,t.query):e;return new Promise(e=>{var s;this._instance._send_request({method:t.method,url:this._instance.requestRouter.endpointFor(null!=(s=t.target)?s:"api",i),data:t.body,headers:t.headers,timeout:t.timeoutMs,fireCallbackOnDrop:!0,transport:t.transport,compression:t.compression,timestampMode:t.sentAt,callback:e})})}}},lS),lF=tS({experiments:class e{get Rr(){return this._instance.config}constructor(t){var i=this;this._instance=t,this.getWebExperimentsAndEvaluateDisplayLogic=function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];i.getWebExperiments(t=>{e.Of("retrieved web experiments from the server"),i.Df=new Map,t.forEach(t=>
2{if(t.feature_flag_key){var s;i.Df&&(e.Of("setting flag key ",t.feature_flag_key," to web experiment ",t),null==(s=i.Df)||s.set(t.feature_flag_key,t));let r=i._instance.getFeatureFlag(t.feature_flag_key);K(r)&&t.variants[r]&&i.Lf(t.name,r,t.variants[r].transforms)}else if(t.variants)for(let s in t.variants){let r=t.variants[s];e.Nf(r,i._instance)&&i.Lf(t.name,s,r.transforms)}})},t)},this._instance.onFeatureFlags(e=>{this.onFeatureFlags(e)})}initialize(){}onFeatureFlags(t){if(this._is_bot())e.Of(ll);else if(!this.Rr.disable_web_experiments){if(Q(this.Df))return this.Df=new Map,this.loadIfEnabled(),void this.previewWebExperiment();e.Of("applying feature flags",t),t.forEach(e=>{var t,i;if(this.Df&&(null==(t=this.Df)?void 0:t.has(e))){let t=this._instance.getFeatureFlag(e),s=null==(i=this.Df)?void 0:i.get(e);t&&(null==s?void 0:s.variants[t])&&this.Lf(s.name,t,s.variants[t].transforms)}})}}previewWebExperiment(){let t=e.getWindowLocation();if(null==t?void 0:t.search){let i=r7(null==t?void 0:t.search,"__experiment_id"),s=r7(null==t?void 0:t.search,"__experiment_variant");i&&s&&(e.Of(`previewing web experiments ${i} && ${s}`),this.getWebExperiments(e=>{this.qf(parseInt(i),s,e)},!1,!0))}}loadIfEnabled(){this.Rr.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(e,t,i){if(this.Rr.disable_web_experiments&&!i)return e([]);let s=this._instance.get_property("$web_experiments");if(s&&!t)return e(s);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api",`/api/web_experiments/?token=${this.Rr.token}`),method:"GET",timestampMode:"query",callback:t=>e(200===t.statusCode&&t.json&&t.json.experiments||[])})}qf(t,i,s){let r=s.filter(e=>e.id===t);r&&r.length>0&&(e.Of(`Previewing web experiment [${r[0].name}] with variant [${i}]`),this.Lf(r[0].name,i,r[0].variants[i].transforms))}static Nf(t,i){return!Q(t.conditions)&&e.jf(t,i)&&e.Bf(t)}static jf(t,i){var s,r,n,o;if(Q(t.conditions)||Q(null==(s=t.conditions)?void 0:s.url))return!0;let a=e.getWindowLocation();if(a){let e=rc(i,a.href);return!(null==(r=t.conditions)?void 0:r.url)||lu[null!=(n=null==(o=t.conditions)?void 0:o.urlMatchType)?n:"icontains"](t.conditions.url,e)}return!1}
2static getWindowLocation(){return null==u?void 0:u.location}static Bf(e){var t,i,s,r,n,o,a,l,u;if(Q(e.conditions)||Q(null==(t=e.conditions)?void 0:t.utm))return!0;let h=nl();if(h.utm_source){let t=!(null==(i=e.conditions)||null==(i=i.utm)?void 0:i.utm_campaign)||(null==(s=e.conditions)||null==(s=s.utm)?void 0:s.utm_campaign)==h.utm_campaign,c=!(null==(r=e.conditions)||null==(r=r.utm)?void 0:r.utm_source)||(null==(n=e.conditions)||null==(n=n.utm)?void 0:n.utm_source)==h.utm_source,d=!(null==(o=e.conditions)||null==(o=o.utm)?void 0:o.utm_medium)||(null==(a=e.conditions)||null==(a=a.utm)?void 0:a.utm_medium)==h.utm_medium,p=!(null==(l=e.conditions)||null==(l=l.utm)?void 0:l.utm_term)||(null==(u=e.conditions)||null==(u=u.utm)?void 0:u.utm_term)==h.utm_term;return t&&d&&p&&c}return!1}static Of(e){for(var t=arguments.length,i=Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];iF.info(`[WebExperiments] ${e}`,i)}Lf(t,i,s){this._is_bot()?e.Of(ll):"control"!==i?s.forEach(s=>{if(s.selector){var r;e.Of(`applying transform of variant ${i} for experiment ${t} `,s);let n=null==(r=document)?void 0:r.querySelectorAll(s.selector);null==n||n.forEach(e=>{s.html&&(e.innerHTML=s.html),s.css&&e.setAttribute("style",s.css)})}}):e.Of("Control variants leave the page unmodified.")}_is_bot(){return c&&this._instance?oq(c,this.Rr.custom_blocked_useragents):void 0}}},lS);a_.__defaultExtensionClasses=tS({},tS(tS(tS(tS(tS(tS(tS(tS(tS(tS(tS(tS(tS({},lS),{sessionRecording:class{get Rr(){return this._instance.config}get Ml(){return this._instance.persistence}get started(){var e;return!!(null==(e=this.Xd)?void 0:e.isStarted)}get status(){var e,t;return"awaiting_config"===this.Yd||"missing_config"===this.Yd?this.Yd:null!=(e=null==(t=this.Xd)?void 0:t.status)?e:this.Yd}constructor(e){if(this._instance=e,this._forceAllowLocalhostNetworkCapture=!1,this.Yd=aM,this.tv=void 0,this.ev=!1,this.Xe=(()=>{var e,t;if(!(null==d?void 0:d.visibilityState)||"visible"===d.visibilityState)return!0;let i=null==u||null==(e=u.performance)||null==(t=e.getEntriesByType)?void 0:t.call(e,"visibility-state");return!(null==i?void 0:i.length)||i.some(e=>"visible"===e.name)})(),this.ln=()=>{var e,t;"visible"===(null==d?void 0:d.visibilityState)&&(this.Xe=!0,null==(e=this.Xd)||null==(t=e.setDocumentWasEverVisible)||t.call(e,!0))},!this._instance.sessionManager)throw aA.error("started without valid sessionManager"),Error("[SessionRecording] started without valid sessionManager. This is a bug.");if("always"===this.Rr.cookieless_mode)throw Error('[SessionRecording] cannot be used with cookieless_mode="always"');(null==d?void 0:d.addEventListener)&&sW(d,"visibilitychange",this.ln)}initialize(){this.startIfEnabledOrStop()}dispose(){var e;let{discardBufferedEvents:t=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.ev=!0,null==d||null==(e=d.removeEventListener)||e.call(d,"visibilitychange",this.ln),t?this.iv(!0):this.stopRecording()}get nv(){var e;let t=!!(null==(e=this._instance.get_property("$session_recording_remote_config"))?void 0:e.enabled),i=!this.Rr.disable_session_recording,s=this.Rr.disable_session_recording||this._instance.consent.isOptedOut();return u&&t&&i&&!s}startIfEnabledOrStop(e){var t;if(this.ev||this.nv&&(null==(t=this.Xd)?void 0:t.isStarted))return;let i=!Y(Object.assign)&&!Y(Array.from);this.nv&&i?(this.sv(e),aA.info("starting")):(this.Yd=aM,this.stopRecording())}sv(e){var t,i,s,r;if(this.nv)if("awaiting_config"!==this.Yd&&"missing_config"!==this.Yd&&(this.Yd=aT),(null==w||null==(t=w.__PosthogExtensions__)||null==(t=t.rrweb)?void 0:t.record)&&(null==(i=w.__PosthogExtensions__)?void 0:i.initSessionRecording))this.rv(e);else{let t=this._instance.sessionManager;null==(s=w.__PosthogExtensions__)||null==(r=s.loadExternalDependency)||r.call(s,this._instance,this.ov,i=>{if(!this.ev&&this.nv&&this._instance.sessionManager===t)return i?(this._instance.register_for_session({$sdk_debug_recording_script_not_loaded:!0}),aA.error("could not load recorder",i)):void this.rv(e);this.Yd="disabled"})}}stopRecording(){var e,t;null==(e=this.tv)||e.call(this),this.tv=void 0,null==(t=this.Xd)||t.stop()}iv(){var e,t;let i=arguments.length>0&&void 0!==arguments[0]&&arguments[0];null==(e=this.tv)||e.call(this),this.tv=void 0,null==(t=this.Xd)||t.discard({discardProducerEvents:i})}av(){var e,t;null==(e=this.Ml)||e.unregister("$session_is_sampled"),null==(t=this.Ml)||t.unregister("$replay_sample_rate")}lv(e,t){if(Q(e))return null;let i=ee(e)?e:parseFloat(e);return"number"!=typeof i||!Number.isFinite(i)||0>i||i>1?(aA.warn(`${t} must be between 0 and 1. Ignoring invalid value:`,e),null):i}uv(e){if(this.Ml){var t,i;let s=this.Ml,r=()=>{var t;let i=!1===e.sessionRecording?void 0:e.sessionRecording,r=this.lv(null==(t=this.Rr.session_recording)?void 0:t.sampleRate,"session_recording.sampleRate"),n=this.lv(null==i?void 0:i.sampleRate,"remote config sampleRate"),o=null!=r?r:n;Q(o)&&this.av();let a=null==i?void 0:i.minimumDurationMilliseconds;s.register({[i1]:tS(tS({cache_timestamp:Date.now(),enabled:!!i},i),{},{networkPayloadCapture:tS({capturePerformance:e.capturePerformance},null==i?void 0:i.networkPayloadCapture),canvasRecording:{enabled:null==i?void 0:i.recordCanvas,fps:null==i?void 0:i.canvasFps,quality:null==i?void 0:i.canvasQuality},sampleRate:o,minimumDurationMilliseconds:Y(a)?null:a,endpoint:null==i?void 0:i.endpoint,triggerMatchType:null==i?void 0:i.triggerMatchType,masking:null==i?void 0:i.masking,urlTriggers:null==i?void 0:i.urlTriggers,version:null==i?void 0:i.version,triggerGroups:null==i?void 0:i.triggerGroups})})};r(),null==(t=this.tv)||t.call(this),this.tv=null==(i=this._instance.sessionManager)?void 0:i.onSessionId(r)}}onRemoteConfig(e){let t=e.ok?e.config:void 0;return t&&"sessionRecording"in t?!1===t.sessionRecording?(this.uv(t),void this.iv()):(this.uv(t),void this.startIfEnabledOrStop()):("awaiting_config"===this.Yd&&(this.Yd="missing_config",this._instance.register_for_session({[sP]:!0}),aA.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(e){var t;let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"log";(null==(t=this.Xd)?void 0:t.log)?this.Xd.log(e,i):aA.warn("log called before recorder was ready")}get ov(){var e,t;let i=null==(e=this._instance)||null==(e=e.persistence)?void 0:e.get_property(i1);return(null==i||null==(t=i.scriptConfig)?void 0:t.script)||"lazy-recorder"}hv(){let e,t=this._instance.get_property(i1);if(!t)return!1;try{e="object"==typeof t?t:JSON.parse(t)}catch(e){return aA.warn("persisted remote config for session recording is invali
2d and will be ignored",e),!1}return!Q(e.cache_timestamp)&&36e5>=Date.now()-e.cache_timestamp}rv(e){var t,i,s,r;if(!this.ev&&this.nv&&this._instance.sessionManager){if(!(null==(t=w.__PosthogExtensions__)?void 0:t.initSessionRecording))return aA.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[sS]:!0});if(this.Xd||(this.Xd=null==(r=w.__PosthogExtensions__)?void 0:r.initSessionRecording(this._instance,this.Xe),this.Xd._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.hv()){if("missing_config"===this.Yd||"awaiting_config"===this.Yd)return;return this.Yd="awaiting_config",aA.info("persisted remote config is stale, requesting fresh config before starting"),void new nB(this._instance).load()}this.Yd=aT,null==(i=(s=this.Xd).setDocumentWasEverVisible)||i.call(s,this.Xe),this.Xd.start(e)}else this.Yd=aM}onRRwebEmit(e){var t,i;null==(t=this.Xd)||null==(i=t.onRRwebEmit)||i.call(t,e)}overrideLinkedFlag(){var e,t;this.Xd||null==(t=this.Ml)||t.register({$replay_override_linked_flag:!0}),null==(e=this.Xd)||e.overrideLinkedFlag()}overrideSampling(){var e,t;this.Xd||null==(t=this.Ml)||t.register({$replay_override_sampling:!0}),null==(e=this.Xd)||e.overrideSampling()}overrideTrigger(e){var t,i;this.Xd||null==(i=this.Ml)||i.register({["url"===e?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),null==(t=this.Xd)||t.overrideTrigger(e)}get sdkDebugProperties(){var e;return(null==(e=this.Xd)?void 0:e.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(e,t){var i;return!!(null==(i=this.Xd)?void 0:i.tryAddCustomEvent(e,t))}flushBeforeIdentityReset(){var e,t;null==(e=this.Xd)||null==(t=e.flushBeforeIdentityReset)||t.call(e)}}}),{autocapture:class extends ax{constructor(e){super(new ak(e)),this.instance=e}},historyAutocapture:class{constructor(e){this._instance=e,this.dv=this.vv()}initialize(){this.startIfEnabled()}get isEnabled(){let e=this.fv();return!!(e.path||e.search||this.pv(e))}startIfEnabled(){this.isEnabled&&(iF.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}startIfEnabledOrStop(){this.stop(),this.dv=this.vv(),this.startIfEnabled()}stop(){this.gv&&this.gv(),this.gv=void 0,this.mv&&this.mv(),this.mv=void 0,iF.info("History API monitoring stopped")}monitorHistoryChanges(){u&&u.history&&(this.yv("pushState"),this.yv("replaceState"),this.bv(),this.pv()&&this._v())}yv(e){var t;if(!u||(null==(t=u.history[e])?void 0:t.__posthog_wrapped__))return;let i=this;aP(u.history,e,t=>function(s,r,n){t.call(this,s,r,n),i.wv(e)})}vv(){let e=null==u?void 0:u.location;if(null==e?void 0:e.pathname)return{pathname:e.pathname,search:e.search,hash:e.hash}}fv(){let e=this._instance.config.capture_pageview;return"history_change"===e?{path:!0}:G(e)?e:{}}pv(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.fv();return!!e.hash&&!this._instance.config.disable_capture_url_hashes}Sv(e){let t=this.fv(),i=this.dv;return!(!i||!(t.path&&e.pathname!==i.pathname||t.search&&e.search!==i.search||this.pv(t)&&e.hash!==i.hash))}wv(e){try{let t=this.vv();if(!t)return;this.Sv(t)&&this._instance.capture(sT,{navigation_type:e}),this.dv=t}catch(t){iF.error(`Error capturing ${e} pageview`,t)}}bv(){if(this.gv)return;let e=()=>{this.wv("popstate")};sW(u,"popstate",e),this.gv=()=>{u&&u.removeEventListener("popstate",e)}}_v(){if(this.mv)return;let e=()=>{this.wv("hashchange")};sW(u,"hashchange",e),this.mv=()=>{u&&u.removeEventListener("hashchange",e)}}},heatmaps:class{get Rr(){return this.instance.config}constructor(e){var t;this.xv=!1,this.xo=!1,this.Cv=null,this.instance=e,this.xv=!!(null==(t=this.instance.persistence)?void 0:t.props[iW]),this.rageclicks=new am(e.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){let e=5e3;return G(this.Rr.capture_heatmaps)&&this.Rr.capture_heatmaps.flush_interval_milliseconds&&(e=this.Rr.capture_heatmaps.flush_interval_milliseconds),e}get isEnabled(){return Q(this.Rr.capture_heatmaps)?Q(this.Rr.enable_heatmaps)?this.xv:this.Rr.enable_heatmaps:!1!==this.Rr.capture_heatmaps}startIfEnabled(){if(this.isEnabled)this.xo||(aL.info("starting..."),this.$v(),this.ln());else{var e;clearInterval(null!=(e=this.Cv)?e:void 0),this.Tv(),this.getAndClearBuffer()}}onRemoteConfig(e){if(!e.ok)return;let t=e.config;if(!("heatmaps"in t))return;let i=!!t.heatmaps;this.instance.persistence&&this.instance.persistence.register({[iW]:i}),this.xv=i,this.startIfEnabled()}getAndClearBuffer(){let e=this.Rt;return this.Rt=void 0,e}Iv(e){aD(e.originalEvent)&&this.Tr(e.originalEvent,"deadclick")}ln(){this.Cv&&clearInterval(this.Cv),this.Cv="visible"===(null==d?void 0:d.visibilityState)?setInterval(this.bl.bind(this),this.flushIntervalMilliseconds):null}$v(){u&&d&&(this.Mv=this.bl.bind(this),sW(u,sM,this.Mv),this.Ev=e=>this.Tr(e||(null==u?void 0:u.event)),sW(d,"click",this.Ev,{capture:!0}),this.Pv=e=>this.Rv(e||(null==u?void 0:u.event)),sW(d,"mousemove",this.Pv,{capture:!0}),this.Av=new rK(this.instance,rX,this.Iv.bind(this)),this.Av.startIfEnabledOrStop(),this.Fv
2=this.ln.bind(this),sW(d,sC,this.Fv),this.xo=!0)}Tv(){var e;u&&d&&(this.Mv&&u.removeEventListener(sM,this.Mv),this.Ev&&d.removeEventListener("click",this.Ev,{capture:!0}),this.Pv&&d.removeEventListener("mousemove",this.Pv,{capture:!0}),this.Fv&&d.removeEventListener(sC,this.Fv),clearTimeout(this.Ov),null==(e=this.Av)||e.stop(),this.xo=!1)}Dv(e,t){let i=this.instance.scrollManager.scrollY(),s=this.instance.scrollManager.scrollX(),r=this.instance.scrollManager.scrollElement(),n=function(e,t,i){let s=e;for(;s&&rp(s)&&!rf(s,"body");){let e;if(s===i)break;try{var r,n,o;e=null==(r=null!=(n=null==(o=s.ownerDocument)?void 0:o.defaultView)?n:u)?void 0:r.getComputedStyle(s).position}catch(e){break}if(j(t,e))return!0;s=rS(s)}return!1}(rx(e),["fixed","sticky"],r);return{x:e.clientX+(n?0:s),y:e.clientY+(n?0:i),target_fixed:n,type:t}}Tr(e){var t;let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"click";if(rd(e.target)||!aD(e))return;let s=this.Dv(e,i);(null==(t=this.rageclicks)?void 0:t.isRageClick(e.clientX,e.clientY,(new Date).getTime()))&&rM(rx(e),this.instance.config.rageclick)&&this.Zs(tS(tS({},s),{},{type:"rageclick"})),this.Zs(s)}Rv(e){!rd(e.target)&&aD(e)&&(clearTimeout(this.Ov),this.Ov=setTimeout(()=>{this.Zs(this.Dv(e,"mousemove"))},500))}Zs(e){if(!u)return;let t=this.Rr.disable_capture_url_hashes?ty(u.location.href):u.location.href,i=this.Rr.custom_personal_data_properties,s=ne(t,this.Rr.mask_personal_data_properties?[...nr,...i||[]]:[],no);this.Rt=this.Rt||{},this.Rt[s]||(this.Rt[s]=[]),this.Rt[s].push(e)}bl(){this.Rt&&!X(this.Rt)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:rK,webVitalsAutocapture:class{constructor(e){var t;this._instance=e,this.xv=!1,this.xo=!1,this.Rt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Lv=()=>{clearTimeout(this.Nv),this.Nv=void 0,0!==this.Rt.metrics.length&&(this._instance.capture("$web_vitals",tS({$current_url:this.Rt.url},this.Rt.metrics.reduce((e,t)=>tS(tS({},e),{},{[`$web_vitals_${t.name}_event`]:tS({},t),[`$web_vitals_${t.name}_value`]:t.value}),{}))),this.Rt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.qv=e=>{var t;if(this.Rt=this.Rt||{navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},Q(null==e?void 0:e.name)||Q(null==e?void 0:e.value))return void aF.error("Invalid metric received",e);let i="string"==typeof e.navigationURL?e.navigationURL:void 0,s=this.jv(i);if(Y(s))return;let r=ee(e.navigationId)||"string"==typeof e.navigationId?`navigation:${e.navigationId}`:`url:${s}`;if(this.Bv&&e.value>=this.Bv)return void aF.error("Ignoring metric with value >= "+this.Bv,e);this.Rt.navigationKey!==r&&(this.Lv(),this.Nv=setTimeout(this.Lv,this.flushToCaptureTimeoutMs)),Y(this.Rt.navigationKey)&&(this.Rt.navigationKey=r,this.Rt.url=s),this.Rt.firstMetricTimestamp=Y(this.Rt.firstMetricTimestamp)?Date.now():this.Rt.firstMetricTimestamp;let n=null==(t=this._instance.sessionManager)?void 0:t.checkAndGetSessionAndWindowId(!0),o=tS(tS(tS({},e),i?{navigationURL:s}:{}),{},{$current_url:s,timestamp:Date.now()});if(delete o.entries,G(e.attribution)&&this.attributionMetrics.indexOf(e.name)>-1){let t={};for(let i of aC){let s="url"===i&&"string"==typeof e.attribution[i]?this.jv(e.attribution[i]):e.attribution[i];Y(s)||(t[i]=s)}o.attribution=t}else delete o.attribution;Y(n)||(o.$session_id=n.sessionId,o.$window_id=n.windowId),this.Rt.metrics.push(o),this.Rt.metrics.length===this.allowedMetrics.length&&this.Lv()},this.Hv=()=>{if(this.xo)return;let e,t,i,s,r=!1,n=w.__PosthogExtensions__,o=null==n?void 0:n.postHogWebVitalsCallbacksByFlavor,a=(null==o?void 0:o[this.zv])||("web-vitals"===this.zv&&Y(o)?null==n?void 0:n.postHogWebVitalsCallbacks:void 0);if(!Y(a)){let n=a.withoutAttribution,o=this.attributionMetrics;r=!Y(n),e=o.indexOf("LCP")>-1?a.onLCP:(null==n?void 0:n.onLCP)||a.onLCP,t=o.indexOf("CLS")>-1?a.onCLS:(null==n?void 0:n.onCLS)||a.onCLS,i=o.indexOf("FCP")>-1?a.onFCP:(null==n?void 0:n.onFCP)||a.onFCP,s=o.indexOf("INP")>-1?a.onINP:(null==n?void 0:n.onINP)||a.onINP}if(!(e&&t&&i&&s))return void aF.error("web vitals callbacks not loaded - not starting");let l={reportSoftNavs:this.useSoftNavs},u=r&&this.attributionMetrics.indexOf("INP")>-1?tS(tS({},l),{},{includeProcessedEventEntries:!1}):l;this.allowedMetrics.indexOf("LCP")>-1&&e(this.qv.bind(this),l),this.allowedMetrics.indexOf("CLS")>-1&&t(this.qv.bind(this),l),this.allowedMetrics.indexOf("FCP")>-1&&i(this.qv.bind(this),l),this.allowedMetrics.indexOf("INP")>-1&&s(this.qv.bind(this),u),this.xo=!0},this.xv=!!(null==(t=this._instance.persistence)?void 0:t.props[iK]),this.startIfEnabled()}get Uv(){return this._instance.config.capture_performance}get allowedMetrics(){var e,t;let i=G(this.Uv)?null==(e=this.Uv)?void 0:e.web_vitals_allowed_metrics:void 0;return Q(i)?(null==(t=this._instance.persistence)?void 0:t.props.$web_vitals_allowed_metrics)||aI:i}get flushToCaptureTimeoutMs(){return(G(this.Uv)?this.Uv.web_vitals_delayed_flush_ms:void 0)||5e3}get attributionMetrics(){let e=G(this.Uv)?this.Uv.web_vitals_attribution:void 0;return ei(e)?e?aI:[]:V(e)?e:aO}get useAttribution(){return this.attributionMetrics.length>0}get useSoftNavs(){let e=G(this.Uv)?this.Uv.__preview_web_vitals_soft_navs:void 0;return null!=e&&e}get Bv(){let e=G(this.Uv)&&ee(this.Uv.__web_vitals_max_value)?this.Uv.__web_vitals_max_value:9e5;return e>0&&6e4>=e?9e5:e}get isEnabled(){let e=null==p?void 0:p.protocol;if("http:"!==e&&"https:"!==e)return aF.info("Web Vitals are disabled on non-http/https protocols"),!1;let t=G(this.Uv)?this.Uv.web_vitals:ei(this.Uv)?this.Uv:void 0;return ei(t)?t:this.xv}startIfEnabled(){this.isEnabled&&!this.xo&&(aF.info("enabled, starting..."),this.zo(this.Hv))}onRemoteConfig(e){if(!e.ok)return;let t=e.config;if(!("capturePerformance"in t))return;let i=G(t.capturePerformance)&&!!t.capturePerformance.web_vitals,s=G(t.capturePerformance)?t.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[iK]:i}),this._instance.persistence.register({[i0]:s})),this.xv=i,this.startIfEnabled()}get zv(){return this.useSoftNavs?this.useAttribution?"web-vitals-with-attribution-soft-navs":"web-vitals-soft-navs":this.useAttribution?"web-vitals-with-attribution":"web-vitals"}zo(e){var t;let i=w.__PosthogExtensions__,s=this.zv,r=null==i?void 0:i.postHogWebVitalsCallbacksByFlavor;(null==r?void 0:r[s])||"web-vitals"===s&&Y(r)&&(null==i?void 0:i.postHogWebVitalsCallbacks)?e():null==i||null==(t=i.loadExternalDependency)||t.call(i,this._instance,s,t=>{t?aF.error("failed to load script",t):e()})}jv(e){let t=e||(null==u?void 0:u.location.href);if(!t)return void aF.error("Could not determine current URL");let i=this._instance.config.disable_capture_url_hashes?ty(t):t,s=this._instance.config.custom_personal_data_properties;return ne(i,this._instance.config.mask_personal_data_properties?[...nr,...s||[]]:[],no)}}}),{exceptionObserver:class{constructor(e){var t;this.Hv=()=>{var e;if(!u||!this.isEnabled||!(null==(e=w.__PosthogExtensions__)?void 0:e.errorWrappingFunctions))return;let t=w.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,i=w.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,s=w.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.Wv&&this.Rr.capture_unhandled_errors&&(this.Wv=t(this.captureException.bind(this))),!this.Vv&&this.Rr.capture_unhandled_rejections&&(this.Vv=i(this.captureException.bind(this))),!this.Gv&&this.Rr.capture_console_errors&&(this.Gv=s(this.captureException.bind(this)))}catch(e){a$.error("failed to start",e),this.Zv()}},this._instance=e,this.Qv=!!(null==(t=this._instance.persistence)?void 0:t.props[iG]),this.wt=new e_(tS(tS({},function(){var e,t,i,s;let r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{refillRate:null!=(e=null!=(t=r.exceptionRateLimiterRefillRate)?t:r.__exceptionRateLimiterRefillRate)?e:1,bucketSize:null!=(i=null!=(s=r.exceptionRateLimiterBucketSize)?s:r.__exceptionRateLimiterBucketSize)?i:10}}(this._instance.config.error_tracking)),{},{refillInterval:1e4,$:a$})),this.Rr=this.Jv(),this.startIfEnabledOrStop()}Jv(){let e=this._instance.config.capture_exceptions,t={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return G(e)?t=tS(tS({},t),e):(Y(e)?this.Qv:e)&&(t=tS(tS({},t),{},{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),t}get isEnabled(){return this.Rr.capture_console_errors||this.Rr.capture_unhandled_errors||this.Rr.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(a$.info("enabled"),this.Zv(),this.zo(this.Hv)):this.Zv()}zo(e){var t,i,s;(null==(t=w.__PosthogExtensions__)?void 0:t.errorWrappingFunctions)?e():null==(i=w.__PosthogExtensions__)||null==(s=i.loadExternalDependency)||s.call(i,this._instance,"exception-autocapture",t=>{if(t)return a$.error("failed to load script",t);e()})}Zv(){var e,t,i;null==(e=this.Wv)||e.call(this),this.Wv=void 0,null==(t=this.Vv)||t.call(this),this.Vv=void 0,null==(i=this.Gv)||i.call(this),this.Gv=void 0}onRemoteConfig(e){if(!e.ok)return;let t=e.config;"autocaptureExceptions"in t&&(this.Qv=!!t.autocaptureExceptions,this._instance.persistence&&this._instance.persistence.register({[iG]:this.Qv}),this.Rr=this.Jv(),this.startIfEnabledOrStop())}onConfigChange(){this.Rr=this.Jv()}captureException(e){try{var t,i,s;let r=null!=(t=null==e||null==(i=e.$exception_list)||null==(i=i[0])?void 0:i.type)?t:"Exception";if(this.wt.consumeRateLimit(r))return void a$.info("Skipping exception capture because of client rate limiting.",{exception:r});null==(s=this._instance.exceptions)||s.sendExceptionEvent(e)}catch(e){}}},exceptions:class{constructor(e){var t,i;this.Kv=[],this.Xv=new tP([new tz,new tQ,new tV,new tU,new tJ,new tK,new tG,new tZ],function(e){for(var t=arguments.length,i=Array(t>1?t-1:0),s=1;s<t;s++)i[s-1]=arguments[s];return function(t){let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=[],n=t.split("\n"),o=Math.min(n.length,s+1e3),a=[];for(let t=s;o>t;t++){let s=n[t];if(s.length>1024)continue;let o=tN.test(s)?s.replace(tN,"$1"):s;if(!o.match(/\S*Error: /)){for(let t of i){let i=t(o,e);if(i){r.push(i);let e=function(e){for(let t=1;10>=t;t++){let i=e.length-2*t;if(0>i)break;let s=!0;for(let r=0;t>r;r++)if(!tH(e[i+r],e[i+t+r])){s=!1;break}if(s){for(let s=0;t>s;s++)e[i+s]=e[i+t+s];return e.length=i+t,{start:i,length:t}}}}(r);if(e){for(let t=a.length-1;t>=0;t--){let i=a[t];if(e.start>=i.start+i.length)break;a.pop()}a.push(e)}break}}if(function(e,t){let i=t[0],s=e.length-(i?tq(e,i):0);for(let i of t)s-=tB(e,i);return s}(r,a)>=50)break}}let l=[...a].sort((e,t)=>
2t.start-e.start),u=l[l.length-1];if(u){let e=tq(r,u);for(let t of(r.splice(u.start-e,e),l))t.start-=e}for(let e of l)!function(e,t){let i=t.start+t.length,s=tB(e,t);s&&e.splice(i+s===e.length?i:t.start,s)}(r,e);return a.some(e=>0===e.start&&r.length===e.length)&&function(e){let t=e.map(e=>`${e.function}|${e.filename}|${e.lineno}|${e.colno}|${e.module}`),i=0;for(let e=1;t.length>e;e++)(function(e,t,i){for(let s=0;e.length>s;s++){let r=e[(t+s)%e.length],n=e[(i+s)%e.length];if(r!==n)return n>r}return!1})(t,e,i)&&(i=e);e.push(...e.splice(0,i))}(r),function(e){if(!e.length)return[];let t=Array.from(e);return t.reverse(),t.slice(0,50).map(e=>tS(tS({},e),{},{filename:e.filename||(t[t.length-1]||{}).filename,function:e.function||"?"}))}(r)}}("web:javascript",tA,tj)),this._instance=e,this.Kv=null!=(t=null==(i=this._instance.persistence)?void 0:i.get_property("$error_tracking_suppression_rules"))?t:[],this.Yv=t5(this.tf()),this.ef=new t4(this.Yv)}onConfigChange(){this.Yv=t5(this.tf()),this.ef.setConfig(this.Yv)}onRemoteConfig(e){var t,i,s;if(!e.ok)return;let r=e.config;if(!("errorTracking"in r))return;let n=null!=(t=null==(i=r.errorTracking)?void 0:i.suppressionRules)?t:[],o=null==(s=r.errorTracking)?void 0:s.captureExtensionExceptions;this.Kv=n,this._instance.persistence&&this._instance.persistence.register({[iX]:this.Kv,[iY]:o})}get if(){var e;let t=!!this._instance.get_property(iY),i=this._instance.config.error_tracking.captureExtensionExceptions;return null!=(e=null!=i?i:t)&&e}buildProperties(e,t){return this.Xv.buildFromUnknown(e,{syntheticException:null==t?void 0:t.syntheticException,mechanism:{handled:null==t?void 0:t.handled}})}addExceptionStep(e,t){if(this.Yv.enabled)try{if(!K(e)||0===e.trim().length)return void ls.warn("Ignoring exception step because message must be a non-empty string");let{sanitizedProperties:i,droppedKeys:s}=function(e){if(!e)return{sanitizedProperties:{},droppedKeys:[]};let t=[];return{sanitizedProperties:Object.keys(e).reduce((i,s)=>(t2.has(s)?t.push(s):i[s]=e[s],i),{}),droppedKeys:t}}(this.nf(t));s.length>0&&ls.warn("Ignoring reserved exception step fields",{droppedKeys:s}),this.ef.add(tS({[t0]:e,[t1]:(new Date).toISOString()},i))}catch(e){ls.error("Failed to add exception step. Ignoring breadcrumb.",e)}}sendExceptionEvent(e){try{let t,i=e.$exception_list;if(this.sf(i)){if(this.rf(i))return this.af("Exception dropped: matched a suppression rule"),void ls.info("Skipping exception capture because a suppression rule matched");if(!this.if&&this.lf(i))return this.af("Exception dropped: thrown by a browser extension"),void ls.info("Skipping exception capture because it was thrown by an extension");if(!this.if&&this.uf(i))return this.af("Exception dropped: thrown by an injected browser script"),void ls.info("Skipping exception capture because it was thrown by an injected browser script");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.hf(i))return this.af("Exception dropped: thrown by the PostHog SDK"),void ls.info("Skipping exception capture because it was thrown by the PostHog SDK")}let s=this.Yv.enabled&&Q(e.$exception_steps)?this.cf(e):e,r=(t=globalThis._posthogReleaseId,"string"==typeof t&&t.length>0?t:void 0);r&&(s.$release_id=r);try{let e=this._instance.capture("$exception",s,{_noTruncate:!0,_batchKey:"exceptionEvent",fh:!0});return e&&this.ef.clear(),e}catch(e){return li(e)||ls.error("Failed to capture exception event. Dropping this exception.",e),void this.ef.clear()}}catch(e){return void(li(e)||ls.error("Failed to process exception event. Ignoring this exception.",e))}}cf(e){try{let t=this.ef.getAttachable();return 0===t.length?e:tS(tS({},e),{},{$exception_steps:t})}catch(t){return ls.error("Failed to read buffered exception steps. Capturing exception without steps.",t),e}}af(e){this.Yv.enabled&&this.ef.add({[t0]:e,[t1]:(new Date).toISOString()})}nf(e){return G(e)?tS({},e):{}}tf(){var e,t;return null!=(e=null==(t=this._instance.config.error_tracking)?void 0:t.exception_steps)?e:{}}rf(e){if(0===e.length)return!1;try{let t=e.reduce((e,t)=>{let{type:i,value:s}=t;return K(i)&&i.length>0&&e.$exception_types.push(i),K(s)&&s.length>0&&e.$exception_values.push(s),e},{$exception_types:[],$exception_values:[]});return this.Kv.some(e=>{let i=e.values.map(e=>{let i=oW[e.operator],s=t[e.key];if(!i||!s)return!1;let r=V(e.value)?e.value:[e.value];return r.length>0&&i(r,s)});return"OR"===e.type?i.some(Boolean):i.every(Boolean)})}catch(e){return ls.warn("Failed to evaluate suppression rules. Capturing the exception.",e),!1}}lf(e){let t=e.flatMap(e=>{var t,i;return null!=(t=null==(i=e.stacktrace)?void 0:i.frames)?t:[]}),i=t.filter(e=>{let{filename:t}=e;return!!t&&lo.some(e=>
2t.startsWith(e))});return 0!==i.length&&(!i.every(e=>{let{filename:t}=e;return!!t&&t.startsWith(lr)})||e.some(e=>{let{type:t,value:i}=e;return"NoResponse"===t||K(i)&&ln.some(e=>{let{value:t,exact:s}=e;return s?i===t:i.includes(t)})})&&!t.some(e=>{let{in_app:t,filename:i}=e;return t&&!(null==i?void 0:i.startsWith(lr))}))}uf(e){return e.some(e=>{let{value:t}=e;return K(t)&&la.some(e=>t.includes(e))})}hf(e){if(e.length>0){var t,i,s,r;let n=null!=(t=null==(i=e[0].stacktrace)?void 0:i.frames)?t:[],o=n[n.length-1];return null!=(s=null==o||null==(r=o.filename)?void 0:r.includes("posthog.com/static"))&&s}return!1}sf(e){return!Q(e)&&V(e)}}}),lP),{siteApps:class{constructor(e){this._instance=e,this.pf=0,this.gf=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}mf(e,t){if(!t)return;let i=this.globalsForEvent(t);this.gf.push(i),this.gf.length>1e3&&(this.gf=this.gf.slice(10))}get siteAppLoaders(){var e;return null==(e=w._POSTHOG_REMOTE_CONFIG)||null==(e=e[this._instance.config.token])?void 0:e.siteApps}initialize(){if(this.isEnabled){let e=this._instance._addCaptureHook(this.mf.bind(this));this.yf=()=>{e(),this.gf=[],this.yf=void 0}}}globalsForEvent(e){var t,i,s,r,n,o,a;if(!e)throw Error("Event payload is required");let l={},u=this._instance.get_property("$groups")||[];for(let[e,t]of Object.entries(this._instance.get_property("$stored_group_properties")||{}))l[e]={id:u[e],type:e,properties:t};let{$set_once:h,$set:c}=e;return{event:tS(tS({},il(e,aH)),{},{properties:tS(tS(tS({},e.properties),c?{$set:tS(tS({},null!=(t=null==(i=e.properties)?void 0:i.$set)?t:{}),c)}:{}),h?{$set_once:tS(tS({},null!=(s=null==(r=e.properties)?void 0:r.$set_once)?s:{}),h)}:{}),elements_chain:null!=(n=null==(o=e.properties)?void 0:o.$elements_chain)?n:"",distinct_id:null==(a=e.properties)?void 0:a.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:l}}bf(e){var t;let i=null==(t=e.tagName)?void 0:t.toLowerCase();return"style"===i&&this._instance.config.prepare_external_dependency_stylesheet?this._instance.config.prepare_external_dependency_stylesheet(e)||(aq.error("prepare_external_dependency_stylesheet returned null"),null):"script"===i&&this._instance.config.prepare_external_dependency_script?this._instance.config.prepare_external_dependency_script(e)||(aq.error("prepare_external_dependency_script returned null"),null):e}_f(){var e,t,i,s,r,n,o,a;if(!this._instance.config.prepare_external_dependency_stylesheet&&!this._instance.config.prepare_external_dependency_script)return()=>{};let l=null==d?void 0:d.defaultView,u=null==l||null==(e=l.Node)?void 0:e.prototype;if(!l||!u)return()=>{};if(this.pf++,this.wf)return this.kf();let h=[],c=this,p=new WeakSet,f=(e,t,i)=>{if(!(null==e?void 0:e[t]))return;let s=e[t];e[t]=i(s),h.push(()=>{e[t]=s})},g=e=>{if(p.has(e))return e;let t=c.bf(e);return t&&p.add(t),t},v=e=>e.map(e=>"string"==typeof e?e:g(e)).filter(e=>!Z(e));return f(u,"appendChild",e=>function(t){let i=g(t);return i?e.call(this,i):t}),f(u,"insertBefore",e=>function(t,i){let s=g(t);return s?e.call(this,s,i):t}),f(u,"replaceChild",e=>function(t,i){let s=g(t);return s?e.call(this,s,i):i}),[null==(t=l.Element)?void 0:t.prototype,null==(i=l.Document)?void 0:i.prototype,null==(s=l.DocumentFragment)?void 0:s.prototype].forEach(e=>{f(e,"append",e=>function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];return e.apply(this,v(i))}),f(e,"prepend",e=>function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];return e.apply(this,v(i))})}),[null==(r=l.Element)?void 0:r.prototype,null==(n=l.CharacterData)?void 0:n.prototype,null==(o=l.DocumentType)?void 0:o.prototype].forEach(e=>{f(e,"before",e=>function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];return e.apply(this,v(i))}),f(e,"after",e=>function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];return e.apply(this,v(i))}),f(e,"replaceWith",e=>function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];let r=v(i);return i.length&&!r.length?void 0:e.apply(this,r)})}),f(null==(a=l.Element)?void 0:a.prototype,"insertAdjacentElement",e=>function(t,i){let s=g(i);return s?e.call(this,t,s):null}),this.wf=()=>
2{h.forEach(e=>e()),this.wf=void 0},this.kf()}kf(){let e=!1;return()=>{var t;e||(e=!0,this.pf--,0===this.pf&&(null==(t=this.wf)||t.call(this)))}}Sf(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],i=this._f();try{let s=e(i);return t&&i(),s}catch(e){throw i(),e}}setupSiteApp(e){let t=this.apps[e.id],i=()=>{var i;!t.errored&&this.gf.length&&(aq.info(`Processing ${this.gf.length} events for site app with id ${e.id}`),this.gf.forEach(e=>this.Sf(()=>{var i;return null==(i=t.processEvent)?void 0:i.call(t,e)})),t.processedBuffer=!0),Object.values(this.apps).every(e=>e.processedBuffer||e.errored)&&(null==(i=this.yf)||i.call(this))},s=!1,r=r=>{t.errored=!r,t.loaded=!0,aq.info(`Site app with id ${e.id} ${r?"loaded":"errored"}`),s&&i()};try{let{processEvent:i}=this.Sf(t=>e.init({posthog:this._instance,callback(e){t(),r(e)}}),!1);i&&(t.processEvent=i),s=!0}catch(t){aq.error(aB+e.id,t),r(!1)}if(s&&t.loaded)try{i()}catch(i){aq.error(`Error while processing buffered events PostHog app with config id ${e.id}`,i),t.errored=!0}}xf(){let e=this.siteAppLoaders||[];for(let t of e)this.apps[t.id]={id:t.id,loaded:!1,errored:!1,processedBuffer:!1};for(let t of e)this.setupSiteApp(t)}Cf(e){if(0===Object.keys(this.apps).length)return;let t=this.globalsForEvent(e);for(let i of Object.values(this.apps))try{this.Sf(()=>{var e;return null==(e=i.processEvent)?void 0:e.call(i,t)})}catch(t){aq.error(`Error while processing event ${e.event} for site app ${i.id}`,t)}}onRemoteConfig(e){var t,i,s,r,n;if(null==(t=this.siteAppLoaders)?void 0:t.length)return this.isEnabled?(this.xf(),void this._instance.on("eventCaptured",e=>this.Cf(e))):void aq.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if(null==(i=this.yf)||i.call(this),!e.ok)return;let o=e.config;if(null==(s=o.siteApps)?void 0:s.length)if(this.isEnabled)for(let{id:e,url:t}of o.siteApps)w[`__$$ph_site_app_${e}`]=this._instance,null==(r=w.__PosthogExtensions__)||null==(n=r.loadSiteApp)||n.call(r,this._instance,t,t=>{if(t)return aq.error(aB+e,t)});else aq.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}}}),lR),{tracingHeaders:class{constructor(e){this._instance=e,this.$f=void 0,this.Tf=void 0,this.If=void 0,this.Hv=()=>{var e,t;let i=this.Mf();i?(Y(this.$f)&&(this.$f=null==(e=w.__PosthogExtensions__)||null==(e=e.tracingHeadersPatchFns)?void 0:e._patchXHR(i,()=>this._instance.get_distinct_id(),this._instance.sessionManager)),Y(this.Tf)&&(this.Tf=null==(t=w.__PosthogExtensions__)||null==(t=t.tracingHeadersPatchFns)?void 0:t._patchFetch(i,()=>this._instance.get_distinct_id(),this._instance.sessionManager))):this.Zv()}}initialize(){this.startIfEnabledOrStop()}zo(e){var t,i,s;(null==(t=w.__PosthogExtensions__)?void 0:t.tracingHeadersPatchFns)?e():null==(i=w.__PosthogExtensions__)||null==(s=i.loadExternalDependency)||s.call(i,this._instance,"tracing-headers",t=>{if(t)return aR.error("failed to load script",t);e()})}Ef(){var e,t;return null!=(e=null!=(t=this._instance.config.tracing_headers)?t:this._instance.config.addTracingHeaders)?e:this._instance.config.__add_tracing_headers}Mf(){let e=this.Ef();return V(e)?(V(this.If)?this.If.splice(0,this.If.length,...e):this.If=[...e],e.length>0?this.If:void 0):(V(this.If)&&this.If.splice(0),this.If=e||void 0,this.If)}Zv(){var e,t;null==(e=this.$f)||e.call(this),null==(t=this.Tf)||t.call(this),this.$f=void 0,this.Tf=void 0}startIfEnabledOrStop(){this.Mf()?this.zo(this.Hv):this.Zv()}}}),{toolbar:class{constructor(e){this.instance=e}Pf(e){w.ph_toolbar_state=e}Rf(){var e;return null!=(e=w.ph_toolbar_state)?e:0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(){var e,t;let i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;if(sG(this.instance.config)||!u||!d)return!1;i=null!=(e=i)?e:u.location,r=null!=(t=r)?t:u.history;try{let e;if(!s){try{u.localStorage.setItem("test","test"),u.localStorage.removeItem("test")}catch(e){return!1}s=null==u?void 0:u.localStorage}let t=aQ||nt(i.hash,"__posthog")||nt(i.hash,"state"),n=t?tb(()=>JSON.parse(atob(decodeURIComponent(t))))||tb(()=>JSON.parse(decodeURIComponent(t))):null;return n&&"ph_authorize"===n.action?((e=n).source="url",e&&Object.keys(e).length>0&&(n.desiredHash?i.hash=n.desiredHash:r?r.replaceState(r.state,"",i.pathname+i.search):i.hash="")):((e=JSON.parse(s.getItem(a0)||"{}")).source="localstorage",delete e.userIntent),!(!e.token||this.instance.config.token!==e.token||(this.loadToolbar(e),0))}catch(e){return!1}}Af(e){let t=w.ph_load_toolbar||w.ph_load_editor;!Q(t)&&W(t)?t(e,this.instance):a1.warn("No toolbar load function found")}loadToolbar(e){let t=!!(null==d?void 0:d.getElementById("__POSTHOG_TOOLBAR__"));if(!u||t)return!1;let i="custom"===this.instance.requestRouter.region&&this.instance.config.advanced_disable_toolbar_metrics,s=tS(tS({token:this.instance.config.token},e),{},{apiURL:this.instance.requestRouter.endpointFor("ui")},i?{instrument:!1}:{});if(u.localStorage.setItem(a0,JSON.stringify(tS(tS({},s),{},{source:void 0}))),2===this.Rf())this.Af(s);else if(0===this.Rf()){var r,n;this.Pf(1),null==(r=w.__PosthogExtensions__)||null==(n=r.loadExternalDependency)||n.call(r,this.instance,"toolbar",e=>{e?(a1.error("[Toolbar] Failed to load",e),this.Pf(0)):(this.Pf(2),this.Af(s))}),sW(u,"turbolinks:load",()=>{this.Pf(0),this.loadToolbar(s)})}return!0}Ff(e){return this.loadToolbar(e)}maybeLoadEditor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;return this.maybeLoadToolbar(e,t,i)}}}),lF),{conversations:class{constructor(e){this._instance=e,this.Hf=void 0,this._conversationsManager=null,this.zf=!1,this.ne=null,this.Uf=!1}initialize(){this.loadIfEnabled()}onRemoteConfig(e){if(this._instance.config.disable_conversations||(this.Wf=e.ok,!e.ok))return;let t=e.config.conversations;Q(t)||(ei(t)?this.Hf=t:(this.Hf=t.enabled,this.ne=t),this.loadIfEnabled())}reset(){var e;null==(e=this._conversationsManager)||e.reset(),this._conversationsManager=null,this.Hf=void 0,this.ne=null,this.Wf=void 0,this.Uf=!1}loadIfEnabled(){if(this._conversationsManager||this.zf||this._instance.config.disable_conversations||sG(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())return;let e=null==w?void 0:w.__PosthogExtensions__;if(e&&!Y(this.Hf)&&this.Hf)if(this.ne&&this.ne.token){this.zf=!0;try{let t=e.initConversations;
2if(t)return this.Vf(t),void(this.zf=!1);let i=e.loadExternalDependency;if(!i)return void this.Gf(sR);i(this._instance,"conversations",t=>{t||!e.initConversations?this.Gf("Could not load conversations script",t):this.Vf(e.initConversations),this.zf=!1})}catch(e){this.Gf("Error initializing conversations",e),this.zf=!1}}else lh.error("Conversations enabled but missing token in remote config.")}Vf(e){if(this.ne)try{this._conversationsManager=e(this.ne,this._instance),this.Uf=!1,lh.info("Conversations loaded successfully")}catch(e){this.Gf("Error completing conversations initialization",e)}else lh.error("Cannot complete initialization: remote config is null")}Gf(e,t){lh.error(e,t),this._conversationsManager=null,this.zf=!1,this.Uf=!0}show(){this._conversationsManager?this._conversationsManager.show():lh.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return!0===this.Hf&&!Z(this._conversationsManager)}getUnavailableReason(){return this.isAvailable()?null:this._instance.config.disable_conversations?"disabled_by_config":sG(this._instance.config)?"disabled_for_toolbar":this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut()?"consent_opted_out":!1===this.Wf?"remote_config_failed":Y(this.Hf)?this.Wf?"disabled_in_project":"remote_config_pending":this.Hf?Q(this.ne)||!this.ne.token?"missing_token":(null==w?void 0:w.__PosthogExtensions__)?this.zf?"initializing":this.Uf?"load_failed":"not_loaded":"extensions_unavailable":"disabled_in_project"}isVisible(){var e,t;return null!=(e=null==(t=this._conversationsManager)?void 0:t.isVisible())&&e}sendMessage(e,t,i){var s=this;return ep(function*(){return s._conversationsManager?s._conversationsManager.sendMessage(e,t,i):(lh.warn(lc),null)})()}getMessages(e,t){var i=this;return ep(function*(){return i._conversationsManager?i._conversationsManager.getMessages(e,t):(lh.warn(lc),null)})()}markAsRead(e){var t=this;return ep(function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(lh.warn(lc),null)})()}getTickets(e){var t=this;return ep(function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(lh.warn(lc),null)})()}requestRestoreLink(e){var t=this;return ep(function*(){return t._conversationsManager?t._conversationsManager.requestRestoreLink(e):(lh.warn(lc),null)})()}restoreFromToken(e){var t=this;return ep(function*(){return t._conversationsManager?t._conversationsManager.restoreFromToken(e):(lh.warn(lc),null)})()}restoreFromUrlToken(){var e=this;return ep(function*(){return e._conversationsManager?e._conversationsManager.restoreFromUrlToken():(lh.warn(lc),null)})()}getCurrentTicketId(){var e,t;return null!=(e=null==(t=this._conversationsManager)?void 0:t.getCurrentTicketId())?e:null}getWidgetSessionId(){var e,t;return null!=(e=null==(t=this._conversationsManager)?void 0:t.getWidgetSessionId())?e:null}Sh(){var e;null==(e=this._conversationsManager)||e.setIdentity()}xh(){var e;null==(e=this._conversationsManager)||e.clearIdentity()}}}),{logs:class{constructor(e){var t,i=this;this._instance=e,this.name="logs",this.Zf=!1,this.Qf=!1,this.Jf=!1,this.$=iI("[logs]"),this.Kf=tS(tS({},this.$),{},{error:function(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];t.some(lm)||i.$.error(...t)}}),this.al=[],this.Xf=[],this.hd=0,this.Io=!1,this.Yf=[],this.tp=[],this.ep=!1,this.np=!1,this.sp=()=>{var e,t;this.Io||(this.hd=0,null==(e=this.rp)||e.onReconnect(),null==(t=this.op)||t.onReconnect())},this._instance&&(null==(t=this._instance.config.logs)?void 0:t.captureConsoleLogs)&&(this.Zf=!0),u&&sW(u,"online",this.sp)}ap(e,t,i,s){var r;let n=ld(null==(r=this._instance)||null==(r=r.config)?void 0:r.logs,i);return[new ik(this.lp(e,t),n,this.Kf,()=>this.up(),e=>e(),void 0,s),n]}hp(){var e,t;let i=null==(e=this._instance)||null==(e=e.config)?void 0:e.logs;return this.rp&&this.cp===i||(null==(t=this.rp)||t.reset(),this.cp=i,[this.rp,this.dp]=this.ap(()=>this.al,e=>{this.al=e})),this.rp}vp(){var e,t;let i=null==(e=this._instance)||null==(e=e.config)?void 0:e.logs;return this.op&&this.fp===i||(null==(t=this.op)||t.reset(),this.fp=i,[this.op,this.pp]=this.ap(()=>this.Xf,e=>{this.Xf=e},{serviceNameDefault:"posthog-browser-logs",consoleCapture:!0},lg)),this.op}setup(e){var t;if(this.Io)return;this.wo=e,(null==(t=this._instance)||null==(t=t.config)||null==(t=t.logs)?void 0:t.captureConsoleLogs)&&(this.Zf=!0),(this.Zf||this.gp()&&this.mp())&&this.yp();let i=!1,s=e.onRemoteConfig(e=>{var t;i=e.ok&&!0===(null==(t=e.config.logs)?void 0:t.captureConsoleLogs),this.onRemoteConfig(e)});this.Io?s.dispose():(this.Po=s,i||this.loadIfEnabled())}dispose(){var e,t,i,s;this.Io||(this.Io=!0,this.bp(),null==(e=this.Po)||e.dispose(),this.Po=void 0,this.wo=void 0,this.Jf=!1,null==u||u.removeEventListener("online",this.sp),null==(t=this._p)||t.call(this),this._p=void 0,null==(i=this.rp)||i.reset(),null==(s=this.op)||s.reset())}onRemoteConfig(e){var t,i;if(this.Io)return;let s=e.ok?null==(t=e.config.logs)?void 0:t.captureConsoleLogs:void 0;Q(s)?this.wp():(null==(i=this._instance)||null==(i=i.persistence)||i.register({$logs_capture_enabled_server_side:!!s}),s?(this.Zf=!0,this.Qf||this.yp(),this.loadIfEnabled()):this.wp())}reset(){var e,t,i,s;this.bp(),null==(e=this.rp)||e.clearQueue(),this.al=[],null==(t=this.rp)||t.reset(),null==(i=this.op)||i.clearQueue(),this.Xf=[],null==(s=this.op)||s.reset(),this.hd=0}captureLog(e){this.Io||this.hp().captureLog(e)}captureConsoleLog(e){this.Io||this.vp().captureLog(e)}captureBufferedConsoleLog(e,t,i){this.Io||this.vp().captureLog(e,{context:t,occurredAtMs:i})}mp(){var e;return!!(null==(e=this._instance)||null==(e=e.persistence)||null==(e=e.props)?void 0:e[iQ])}gp(){var e,t,i;return!(null==(e=this._instance)||null==(t=e.nl)?void 0:t.call(e))||!!(null==(i=w._POSTHOG_REMOTE_CONFIG)||null==(i=i[this._instance.config.token])?void 0:i.config)}$h(){var e;this.bp(),null==(e=this.op)||e.clearQueue(),this.Xf=[]}wp(){this.Zf||this.bp()}yp(){var e;if(this.ep||!(null==w?void 0:w.console))return;let t=ld(null==(e=this._instance)||null==(e=e.config)?void 0:e.logs).maxBufferSize,i=!0;for(let e of(this.tp.push(()=>{i=!1}),lp)){let s;try{s=lf(w.console[e])}catch(e){continue}s&&this.tp.push(aP(w.console,e,r=>{var n=this;let o=function(){for(var s=arguments.length,o=Array(s),a=0;a<s;a++)o[a]=arguments[a];try{i&&n.kp(e,o,t)}catch(e){}return r.apply(w.console,o)};return o.__rrweb_original__=s,o}))}this.ep=!0,this.Sp=setTimeout(()=>{this.bp()},3e4)}kp(e,t,i){var s;if(this.ep&&!this.np&&0!==t.length)if(null==(s=this._instance)?void 0:s.is_capturing()){if(i>this.Yf.length){this.np=!0;try{this.Yf.push({level:e,args:t,occurredAtMs:Date.now(),context:this.up()})}finally{this.np=!1}}}else this.bp()}bp(){if(this.Yf=[],this.ep){for(let e of(this.ep=!1,this.Sp&&(clearTimeout(this.Sp),this.Sp=void 0),this.tp))e();this.tp=[]}}xp(){let e=this.Yf;return this.bp(),e}get logger(){return this.Cp||(this.Cp={trace:(e,t)=>this.captureLog({body:e,level:"trace",attributes:t}),debug:(e,t)=>this.captureLog({body:e,level:"debug",attributes:t}),info:(e,t)=>this.captureLog({body:e,level:"info",attributes:t}),warn:(e,t)=>this.captureLog({body:e,level:"warn",attributes:t}),error:(e,t)=>
2this.captureLog({body:e,level:"error",attributes:t}),fatal:(e,t)=>this.captureLog({body:e,level:"fatal",attributes:t})}),this.Cp}flushLogs(e){e?this.$p(e):(this.rp&&this.rp.flush().catch(e=>this.Tp(e)),this.op&&this.op.flush().catch(e=>this.Tp(e)))}Tp(e){lm(e)||this.$.error("PostHog logs flush failed:",e)}loadIfEnabled(){if(this.Io||!this.Zf||this.Qf||this.Jf)return;let e=null==w?void 0:w.__PosthogExtensions__;if(!e)return this.$.error("PostHog Extensions not found."),void this.bp();let t=e.loadExternalDependency;if(!t)return this.$.error(sR),void this.bp();this.Jf=!0;try{t(this._instance,"logs",t=>{if(this.Jf=!1,this.Io||!this.Zf)return;let i=e.logs;if(!t&&(null==i?void 0:i.initializeLogs)){var s,r,n;let e=this.xp();this._p=i.initializeLogs(null!=(s=this.wo)?s:this._instance),this.Qf=!0,e.length>0&&(null==(r=i.replayConsoleBuffer)||r.call(i,null!=(n=this.wo)?n:this._instance,e))}else this.$.error("Could not load logs script",t),this.bp()})}catch(e){throw this.Jf=!1,e}}lp(e,t){let i=this._instance;return{get isDisabled(){return!1},get optedOut(){return!i.is_capturing()},getPersistedProperty:t=>t===T.LogsQueue?e():void 0,setPersistedProperty(e,i){e===T.LogsQueue&&t(null!=i?i:[])},js:e=>this.js(e),getLibraryId:()=>k.LIB_NAME,getLibraryVersion:()=>k.LIB_VERSION}}js(e){return new Promise(t=>{if(ni(this.hd,3))return void t({kind:"fatal",error:l_(void 0,"logs endpoint is unreachable, dropping batch")});let i=!1,s=e=>{i||(i=!0,clearTimeout(r),t(e))},r=setTimeout(()=>{this.$.warn("Logs request timed out before receiving a response"),s({kind:"retry-later",error:l_(void 0,"logs request timed out")})},9e4);this._instance._send_request({method:"POST",url:this.Ip(),data:e,compression:"best-available",batchKey:"logs",fireCallbackOnDrop:!0,callback:e=>{let t=e.statusCode;if(this.Mp(t),t>=200&&300>t)s({kind:"ok"});else if(413===t)s({kind:"too-large"});else if(0!==t&&408!==t&&429!==t&&500>t)s({kind:"fatal",error:Error(`logs request failed with status ${t}`)});else{var i;0===t?(e.error||this.$.warn("Logs request failed before receiving an HTTP response"),s({kind:"retry-later",error:l_(e.error,"logs request failed before receiving an HTTP response")})):s({kind:"retry-later",error:null!=(i=e.error)?i:Error(`logs request failed with status ${t}`)})}}})})}Mp(e){(0!==e||this._instance.__loaded)&&(this.hd=ns(e,this.hd,3,()=>this.$.warn("Log requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped sending logs; will try again when connectivity changes.")))}$p(e){this.al.length>0&&this.Ep(e,this.al,this.dp,k.LIB_NAME,e=>{this.al=e}),this.Xf.length>0&&this.Ep(e,this.Xf,this.pp,lg,e=>{this.Xf=e})}Ep(e,t,i,s,r){if(0===t.length)return;let n=t.map(e=>e.record);r([]);let o=iy(n,id(i,k.LIB_NAME,k.LIB_VERSION),s,k.LIB_VERSION);this._instance._send_request({method:"POST",url:this.Ip(),data:o,compression:"best-available",batchKey:"logs",transport:e})}Ip(){return this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token)}up(){var e;let t={};if(t.distinctId=this._instance.get_distinct_id(),this._instance.sessionManager){let{sessionId:e,windowId:i,sessionStartTimestamp:s,lastActivityTimestamp:r}=this._instance.sessionManager.checkAndGetSessionAndWindowId(!0);t.sessionId=e,t.windowId=i,Q(s)||(t.sessionStartTimestamp=s),Q(r)||(t.lastActivityTimestamp=r)}if((null==w||null==(e=w.location)?void 0:e.href)&&(t.currentUrl=this._instance.config.disable_capture_url_hashes?ty(w.location.href):w.location.href),this._instance.featureFlags){let e=this._instance.featureFlags.getFlags();e&&e.length>0&&(t.activeFeatureFlags=e)}return t}}}),{metrics:class{constructor(e){this._instance=e,this.$=iI("[metrics]"),this.Io=!1}initialize(){this.onConfigChange()}onConfigChange(){var e,t;let i,s,r,n;if(this.Io)return;let o=!!(null==(e=this._instance.config.metrics)?void 0:e.network);o&&!this.Pp?this.Pp=(t=this._instance,i=!0,s=()=>{var e;let s;return i?!0===(s=null==(e=t.config.metrics)?void 0:e.network)?{}:s||void 0:void 0},r=W(null==u?void 0:u.fetch)?aP(u,"fetch",e=>function(){for(var i,r,n,o=arguments.length,a=Array(o),l=0;l<o;l++)a[l]=arguments[l];let u=lb(),h=e.apply(this,a);if(!s())return h;try{let[e,o]=a,l=lk(null!=(i=null!=(r=null==o?void 0:o.method)?r:null==e?void 0:e.method)?i:"GET",null!=(n=null==e?void 0:e.url)?n:e);return h.then(e=>
2(l$(t,l,null==e?void 0:e.status,u,s,void 0,!0),e),e=>{throw l$(t,l,void 0,u,s,e),e})}catch(e){return ly.error("Failed to observe fetch",e),h}}):lE,n=((e,t)=>{var i;let s=null==u||null==(i=u.XMLHttpRequest)?void 0:i.prototype;if(!s)return lE;let r=new WeakMap,n=aP(s,"open",e=>function(){for(var t=arguments.length,i=Array(t),s=0;s<t;s++)i[s]=arguments[s];try{od.has(this)||r.set(this,lk(i[0],i[1]))}catch(e){ly.error("Failed to observe XHR open",e)}return e.apply(this,i)}),o=aP(s,"send",i=>function(){let s;for(var n=arguments.length,o=Array(n),a=0;a<n;a++)o[a]=arguments[a];try{let i=r.get(this);if(i&&t()){let r=lb();s=()=>{this.removeEventListener("loadend",s),l$(e,i,this.status,r,t)},sW(this,"loadend",s)}}catch(e){ly.error("Failed to observe XHR send",e)}try{return i.apply(this,o)}catch(e){throw s&&this.removeEventListener("loadend",s),e}});return()=>{n(),o()}})(t,s),()=>{i=!1,r(),n()}):!o&&this.Pp&&(this.Pp(),this.Pp=void 0)}hp(){var e,t,i,s,r,n,o;let a,l=null==(e=this._instance)||null==(e=e.config)?void 0:e.metrics;return this.rp&&this.cp===l||(null==(t=this.rp)||t.reset(),this.cp=l,this.rp=new iP(this.lp(),{serviceName:null!=(i=null==(a=null==l?void 0:l.resourceAttributes)?void 0:a["service.name"])?i:null==l?void 0:l.serviceName,serviceVersion:null!=(s=null==a?void 0:a["service.version"])?s:null==l?void 0:l.serviceVersion,environment:null!=(r=null==a?void 0:a["deployment.environment"])?r:null==l?void 0:l.environment,resourceAttributes:a,beforeSend:null==l?void 0:l.beforeSend,flushIntervalMs:null!=(n=null==l?void 0:l.flushIntervalMs)?n:1e4,maxSeriesPerFlush:null!=(o=null==l?void 0:l.maxSeriesPerFlush)?o:1e3},this.$)),this.rp}count(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=arguments.length>2?arguments[2]:void 0;this.hp().count(e,t,i)}gauge(e,t,i){this.hp().gauge(e,t,i)}histogram(e,t,i){this.hp().histogram(e,t,i)}flush(e){if(!this.rp)return Promise.resolve();if(e){let t=this.rp.drainWindow();return t&&this.Ys(t,e),Promise.resolve()}return this.rp.flush().catch(e=>this.$.error("PostHog metrics flush failed:",e))}reset(){var e;null==(e=this.rp)||e.reset()}dispose(){var e,t;this.Io=!0,null==(e=this.Pp)||e.call(this),this.Pp=void 0,null==(t=this.rp)||t.reset()}lp(){let e=this._instance,t=this;return{get isDisabled(){return!1},get optedOut(){return!e.is_capturing()},Ys:e=>t.Ys(e),getLibraryId:()=>k.LIB_NAME,getLibraryVersion:()=>k.LIB_VERSION}}Ys(e,t){return new Promise(i=>{let s=!1,r=e=>{s||(s=!0,clearTimeout(n),i(e))},n=setTimeout(()=>r({kind:"retry-later",error:Error("metrics request timed out")}),9e4);this._instance._send_request(tS(tS({method:"POST",url:this.Rp(),data:e,compression:"best-available",batchKey:"metrics"},t&&{transport:t}),{},{fireCallbackOnDrop:!0,callback(e){let t=e.statusCode;if(t>=200&&300>t)r({kind:"ok"});else if(413===t)r({kind:"too-large"});else if(0!==t&&408!==t&&429!==t&&500>t)r({kind:"fatal",error:Error(`metrics request failed with status ${t}`)});else{var i;r({kind:"retry-later",error:null!=(i=e.error)?i:Error(`metrics request failed with status ${t}`)})}}}))})}Rp(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}}));let lI=(k.SDK_DIST_CHANNEL="npm",l=at[ad]=new a_,function(){function e(){e.done||(e.done=!0,oI=!1,sN(at,function(e){e._dom_loaded()}))}(null==d?void 0:d.addEventListener)?"complete"===d.readyState?e():sW(d,"DOMContentLoaded",e,{capture:!1}):u&&iF.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")}(),l);e.s(["default",0,lI],669430);var lO=e.i(271645),lC=(E=function(e,t){return(E=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}E(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),lM="__POSTHOG_REACT_SHARED_STATE__",lT="u">typeof globalThis?globalThis:"u">typeof window?window:{};try{C=lT[lM]=lT[lM]||new WeakMap}catch(e){C=new WeakMap}C.has(lO.createContext)||C.set(lO.createContext,{});var lA=C.get(lO.createContext);lA.context||(lA.context=(0,lO.createContext)({get client(){return M||lA.defaultPostHogInstance},bootstrap:void 0}));var lL=lA.context,lD=function(e){return"function"==typeof e},lj=function(e){var t=Object.prototype.toString.call(e);
2return e instanceof Error||"[object Error]"===t||"[object Exception]"===t||"[object DOMException]"===t||"[object DOMError]"===t},lN=function(e,t){try{Object.defineProperty(e,"name",{value:t,writable:!0,enumerable:!0,configurable:!0})}catch(e){}},lH=function(e,t){for(var i=new WeakSet,s=e;!i.has(s);){if(i.add(s),!lj(s.cause)){void 0!==s.cause&&(t.cause=s.cause),s.cause=t;return}s=s.cause}},lq=function(e,t){if(!t)return e;var i=Error(lj(e)?e.message:"Primitive value captured as exception: ".concat(String(e)));return(lN(i,"React ErrorBoundary ".concat(lj(e)?e.name:"Error")),i.stack=t,lj(e))?(lH(e,i),e):i},lB={componentStack:null,exceptionEvent:null,error:null};S=O=function(e){function t(t){var i=e.call(this,t)||this;return i._resetError=function(){i.setState(lB)},i.state=lB,i}return lC(t,e),t.prototype.componentDidCatch=function(e,t){var i,s=this.props.additionalProperties;lD(s)?i=s(e,t):"object"==typeof s&&(i=s);var r=this.context.client,n=t.componentStack,o=r.captureException(lq(e,n),i);this.setState({error:e,componentStack:null!=n?n:null,exceptionEvent:o})},t.prototype.render=function(){var e=this.props,t=e.children,i=e.fallback,s=this.state;if(null==s.componentStack)return lD(t)?t():t;var r=lD(i)?lO.default.createElement(i,{error:s.error,componentStack:s.componentStack,exceptionEvent:s.exceptionEvent,resetError:this._resetError}):i;return lO.default.isValidElement(r)?r:(console.warn("[PostHog.js][PostHogErrorBoundary] Invalid fallback prop, provide a valid React element or a function that returns a valid React element."),lO.default.createElement(lO.default.Fragment,null))},t}(lO.default.Component),"symbol"==typeof(P="PostHogErrorBoundary")&&(P=P.description?"[".concat(P.description,"]"):""),Object.defineProperty(S,"name",{configurable:!0,value:P}),O.contextType=lL,lA.defaultPostHogInstance&&lA.defaultPostHogInstance!==M||(lA.defaultPostHogInstance=lI),M=lI,e.s(["PostHogProvider",0,function(e){var t,i,s=e.children,r=e.client,n=e.apiKey,o=e.options,a=(0,lO.useRef)(null),l=(0,lO.useMemo)(function(){if(r)return n&&console.warn("[PostHog.js] You have provided both `client` and `apiKey` to `PostHogProvider`. `apiKey` will be ignored in favour of `client`."),o&&console.warn("[PostHog.js] You have provided both `client` and `options` to `PostHogProvider`. `options` will be ignored in favour of `client`."),r;var e=M;return n||console.warn("[PostHog.js] No `apiKey` or `client` were provided to `PostHogProvider`. Using default global `window.posthog` instance. You must initialize it manually. This is not recommended behavior."),e},[r,n,JSON.stringify(o)]);return(0,lO.useEffect)(function(){if(!r&&n){var e=M,t=a.current;t?(n!==t.apiKey&&console.warn("[PostHog.js] You have provided a different `apiKey` to `PostHogProvider` than the one that was already initialized. This is not supported by our provider and we'll keep using the previous key. If you need to toggle between API Keys you need to control the `client` yourself and pass it in as a prop rather than an `apiKey` prop."),o&&!function e(t,i,s){if(void 0===s&&(s=new WeakMap),t===i)return!0;if("object"!=typeof t||null===t||"object"!=typeof i||null===i)return!1;if(s.has(t)&&s.get(t)===i)return!0;s.set(t,i);var r=Object.keys(t),n=Object.keys(i);if(r.length!==n.length)return!1;for(var o=0;o<r.length;o++){var a=r[o];if(!n.includes(a)||!e(t[a],i[a],s))return!1}return!0}(o,t.options)&&e.set_config(o)):(e.__loaded&&console.warn("[PostHog.js] `posthog` was already loaded elsewhere. This may cause issues."),e.init(n,o)),a.current={apiKey:n,options:null!=o?o:{}}}},[r,n,JSON.stringify(o)]),lO.default.createElement(lL.Provider,{value:{client:l,bootstrap:null!=(t=null==o?void 0:o.bootstrap)?t:null==(i=null==r?void 0:r.config)?void 0:i.bootstrap}},s)},"usePostHog",0,function(){return(0,lO.useContext)(lL).client}],720565)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.