posthog-js
Version:
Posthog-js allows you to automatically capture usage and send events to PostHog.
3 lines • 155 kB
JavaScript
function t(t,i,e,r,s,n,a){try{var o=t[n](a),l=o.value}catch(t){return void e(t)}o.done?i(l):Promise.resolve(l).then(r,s)}function i(i){return function(){var e=this,r=arguments;return new Promise((function(s,n){var a=i.apply(e,r);function o(i){t(a,s,n,o,l,"next",i)}function l(i){t(a,s,n,o,l,"throw",i)}o(void 0)}))}}function e(){return e=Object.assign?Object.assign.bind():function(t){for(var i=1;arguments.length>i;i++){var e=arguments[i];for(var r in e)({}).hasOwnProperty.call(e,r)&&(t[r]=e[r])}return t},e.apply(null,arguments)}var r=t=>{if("string"!=typeof t)return t;try{return JSON.parse(t)}catch(i){return t}};function s(t){return"string"==typeof t||t}function n(t){return"string"==typeof t?t:void 0}var a=function(t){return t.AnonymousId="anonymous_id",t.DistinctId="distinct_id",t.Props="props",t.EnablePersonProcessing="enable_person_processing",t.PersonMode="person_mode",t.FeatureFlagDetails="feature_flag_details",t.FeatureFlags="feature_flags",t.FeatureFlagPayloads="feature_flag_payloads",t.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",t.BootstrapFeatureFlags="bootstrap_feature_flags",t.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",t.OverrideFeatureFlags="override_feature_flags",t.Queue="queue",t.AiQueue="ai_queue",t.AiCaptureQueue="ai_capture_queue",t.LogsQueue="logs_queue",t.OptedOut="opted_out",t.SessionId="session_id",t.SessionStartTimestamp="session_start_timestamp",t.SessionLastTimestamp="session_timestamp",t.PersonProperties="person_properties",t.GroupProperties="group_properties",t.InstalledAppBuild="installed_app_build",t.InstalledAppVersion="installed_app_version",t.SessionReplay="session_replay",t.PushRegistered="push_registered",t.SessionReplayEventTriggerActivatedSession="session_replay_event_trigger_activated_session",t.SurveyLastSeenDate="survey_last_seen_date",t.SurveysSeen="surveys_seen",t.Surveys="surveys",t.RemoteConfig="remote_config",t.FlagsEndpointWasHit="flags_endpoint_was_hit",t.DeviceId="device_id",t}({}),o=20,l=1e3,u=1e4,h="[Circular]",v="[Truncated]",d="[Unserializable]",c="[Function]";function f(t){for(var i="",e=0;t.length>e;e++){var r=t.charCodeAt(e);if(55296>r||r>56319)i+=56320>r||r>57343?t[e]:"�";else{var s=t.charCodeAt(e+1);56320>s||s>57343?i+="�":(i+=t[e]+t[e+1],e++)}}return i}var p=["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","hubspot","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"],g=function(t,i){if(void 0===i&&(i=[]),!t)return!1;var e=t.toLowerCase();return p.concat(i).some((t=>{var i=t.toLowerCase();return-1!==e.indexOf(i)}))};function _(t,i){return-1!==t.indexOf(i)}var b=function(t){return t.trim()},m=Object.prototype,y=m.hasOwnProperty,w=m.toString,S=Array.isArray||function(t){return"[object Array]"===w.call(t)},x=t=>"function"==typeof t,k=t=>t===Object(t)&&!S(t),E=t=>{if(k(t)){for(var i in t)if(y.call(t,i))return!1;return!0}return!1},F=t=>void 0===t,P=t=>"[object String]"==w.call(t),C=t=>P(t)&&0===t.trim().length,T=t=>null===t,A=t=>F(t)||T(t),R=t=>"[object Number]"==w.call(t)&&t==t,O=t=>"[object Boolean]"===w.call(t),M=t=>t instanceof FormData;function I(t){return null===t||"object"!=typeof t}function j(t,i){return{}.toString.call(t)==="[object "+i+"]"}function L(t){switch({}.toString.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object DOMError]":case"[object WebAssembly.Exception]":return!0;default:return N(t,Error)}}function D(t){return"undefined"!=typeof Event&&N(t,Event)}function N(t,i){try{return t instanceof i}catch(t){return!1}}function z(t,i,e,r,s){return i>e&&(r.warn("min cannot be greater than max."),i=e),R(t)?t>e?(r.warn(" cannot be greater than max: "+e+". Using max value instead."),e):i>t?(r.warn(" cannot be less than min: "+i+". Using min value instead."),i):t:(r.warn(" must be a number. using max or fallback. max: "+e+", fallback: "+s),z(e,i,e,r))}class B{constructor(t){this.C={},this.I=t.I,this.R=z(t.bucketSize,0,100,t.A),this.O=z(t.refillRate,0,this.R,t.A),this.N=z(t.refillInterval,0,864e5,t.A)}F(t,i){var e=Math.floor((i-t.lastAccess)/this.N);e>0&&(t.tokens=Math.min(t.tokens+e*this.O,this.R),t.lastAccess=t.lastAccess+e*this.N)}consumeRateLimit(t){var i,e=Date.now(),r=String(t),s=this.C[r];return s?this.F(s,e):this.C[r]=s={tokens:this.R,lastAccess:e},0===s.tokens||(s.tokens--,0===s.tokens&&(null==(i=this.I)||i.call(this,t)),0===s.tokens)}stop(){this.C={}}}var H="Mobile",U="Android",V="BlackBerry",q="Nintendo",W="PlayStation",K="Xbox",J="Windows",G=J+" Phone",X=new RegExp(V+"|PlayBook|BB10","i"),Z={"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"},Q=[[new RegExp(K+"; "+K+" (.*?)[);]","i"),t=>[K,t&&t[1]||""]],[new RegExp(q,"i"),[q,""]],[new RegExp(W,"i"),[W,""]],[X,[V,""]],[new RegExp(J,"i"),(t,i)=>{if(/Phone/.test(i)||/WPDesktop/.test(i))return[G,""];if(new RegExp(H).test(i)&&!/IEMobile\b/.test(i))return[J+" "+H,""];var e=/Windows NT ([0-9.]+)/i.exec(i);if(e&&e[1]){var r=Z[e[1]]||"";return/arm/i.test(i)&&(r="RT"),[J,r]}return[J,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,t=>t&&t[3]?["iOS",[t[3],t[4],t[5]||"0"].join(".")]:["iOS",""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,t=>{var i="";return t&&t.length>=3&&(i=F(t[2])?t[3]:t[2]),["watchOS",i]}],[new RegExp("("+U+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+U+")","i"),t=>t&&t[2]?[U,[t[2],t[3],t[4]||"0"].join(".")]:[U,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,t=>{var i=["Mac OS X",""];return t&&t[1]&&(i[1]=[t[1],t[2],t[3]||"0"].join(".")),i}],[/Mac/i,["Mac OS X",""]],[/CrOS/,["Chrome OS",""]],[/Linux|debian/i,["Linux",""]]];function Y(t){return t?t.split("#")[0]:t}function tt(t,i){var e=setTimeout(t,i);return(null==e?void 0:e.unref)&&(null==e||e.unref()),e}function it(t,i,e){return et.apply(this,arguments)}function et(){return(et=i((function*(t,i,e){var r;try{return yield Promise.race([t,new Promise(((t,s)=>{r=tt((()=>{try{null==e||e(),t()}catch(t){s(t)}}),i)}))])}finally{clearTimeout(r)}}))).apply(this,arguments)}var rt=0x8000000000000000,st="9223372036854775808",nt={}.propertyIsEnumerable;function at(t,i){try{return ut(t,i,{ancestors:new WeakSet,remainingNodes:u},0)}catch(t){return[]}}function ot(t,i,e,r){if(0>=e.remainingNodes)return{stringValue:v};if(e.remainingNodes--,O(t))return{boolValue:t};if("bigint"==typeof t)return function(t,i){var e=t.toString(),r=BigInt(st);return t>=r||-r>t?(null==i||i.debug("Attribute "+e+" is outside the int64 range; encoding it as a string"),{stringValue:e}):{intValue:e}}(t,i);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("undefined"==typeof BigInt)return{stringValue:String(t)};var s=BigInt(t).toString();return t>=rt||-rt>t?(null==i||i.debug("Attribute "+s+" is outside the int64 range; encoding it as a string"),{stringValue:s}):{intValue:s}}return{doubleValue:t}}if("string"==typeof t)return{stringValue:f(t)};if("function"==typeof t)return{stringValue:c};if("symbol"==typeof t)return{stringValue:String(t)};if("object"==typeof t&&null!==t){if(e.ancestors.has(t))return{stringValue:h};if(r>=o)return{stringValue:v};if(t instanceof Date){var n=t.getTime(),a=Number.isFinite(n)?t.toISOString():String(t);return{stringValue:"string"==typeof a?f(a):String(a)}}e.ancestors.add(t);try{try{var l=t.toJSON;if("function"==typeof l)return ot(l.call(t),i,e,r+1)}catch(t){}return S(t)?{arrayValue:{values:lt(t,i,e,r+1)}}:{kvlistValue:{values:ut(t,i,e,r+1)}}}finally{e.ancestors.delete(t)}}return{stringValue:f(String(t))}}function lt(t,i,e,r){for(var s=[],n=Math.min(t.length,l),a=0;n>a&&e.remainingNodes>0;a++)try{var o=a in t?t[a]:void 0;if(A(o))continue;s.push(ot(o,i,e,r))}catch(t){s.push({stringValue:d})}return t.length>a&&s.push({stringValue:v}),s}function ut(t,i,e,r){var s=[];for(var n in t)if(nt.call(t,n)){if(!n){null==i||i.debug("Dropping an attribute with an empty key");continue}if(s.length>=l||0>=e.remainingNodes){null==i||i.debug("Attributes truncated: the value exceeds the OTLP encoder budget");break}try{var a=t[n];if(T(a)||F(a))continue;s.push({key:f(n),value:ot(a,i,e,r)})}catch(t){s.push({key:f(n),value:{stringValue:d}})}}return s}function ht(t,i,r){return e({},t.resourceAttributes,{"service.name":t.serviceName||"unknown_service"},t.environment&&{"deployment.environment":t.environment},t.serviceVersion&&{"service.version":t.serviceVersion},{"telemetry.sdk.name":i,"telemetry.sdk.version":r})}var vt={darwin:"macOS",win32:"Windows",linux:"Linux",android:"Android",freebsd:"FreeBSD",openbsd:"OpenBSD",sunos:"SunOS",aix:"AIX","Mac OS X":"macOS"};var dt={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}},ct=dt.info;function ft(t){try{return f(String(t))}catch(t){return d}}function pt(t,i,r,s){var n,a=dt[t.level||"info"]||ct,o=a.text,l=a.number,u=(void 0===(n=R(s)?s:void 0)&&(n=Date.now()),String(n)+"000000"),h={};i.distinctId&&(h.posthogDistinctId=i.distinctId),i.sessionId&&(h.sessionId=i.sessionId),i.windowId&&(h["window.id"]=i.windowId),A(i.sessionStartTimestamp)||(h.sessionStartTimestamp=String(i.sessionStartTimestamp)),A(i.lastActivityTimestamp)||(h.lastActivityTimestamp=String(i.lastActivityTimestamp)),i.currentUrl&&(h["url.full"]=i.currentUrl),i.screenName&&(h["screen.name"]=i.screenName),i.appState&&(h["app.state"]=i.appState),i.activeFeatureFlags&&i.activeFeatureFlags.length>0&&(h.feature_flags=i.activeFeatureFlags);var v=e({},h),c=t.attributes;if(c){var f=[];try{f=Object.keys(c)}catch(t){f=[]}for(var p of f){var g=void 0;try{g=c[p]}catch(t){g=d}Object.defineProperty(v,p,{value:g,enumerable:!0,writable:!0,configurable:!0})}}var _={timeUnixNano:u,observedTimeUnixNano:u,severityNumber:l,severityText:o,body:{stringValue:ft(t.body)},attributes:at(v,r)};return t.trace_id&&(_.traceId=t.trace_id),t.span_id&&(_.spanId=t.span_id),F(t.trace_flags)||(_.flags=t.trace_flags),_}function gt(t,i,e){return ht(t,i,e)}function _t(t,i,e,r){return{resourceLogs:[{resource:{attributes:at(i)},scopeLogs:[{scope:{name:e,version:r},logRecords:t}]}]}}let bt=class{constructor(t,i,e,r,s,n,a){var o;void 0===n&&(n=()=>Promise.resolve()),this._instance=t,this.gn=i,this.A=e,this.Pn=r,this.Fn=s,this.Dn=n,this.$n=a,this.Nn=null,this.qn=0,this.jn=0,this.Bn=0,this.Hn=0,this.zn=0,this.Un=!1,this.Wn=i.maxBufferSize,this.Vn=Math.max(null!==(o=i.maxQueueSize)&&void 0!==o?o:i.maxBufferSize,i.maxBufferSize),this.Gn=i.flushIntervalMs,this.Zn=i.maxBatchRecordsPerPost,this.Qn=i.rateCapWindowMs,this.Jn=i.maxLogsPerInterval}clearQueue(){this.jn++,this._instance.setPersistedProperty(a.LogsQueue,[])}reset(){this.Kn(),this.Hn=0,this.zn=0,this.Un=!1,this.Bn=0,this.Zn=this.gn.maxBatchRecordsPerPost}onReconnect(){this.Bn=0,this.Yn()}captureLog(t,i){var e;if(!this._instance.isDisabled&&!this._instance.optedOut&&null!=t&&t.body){var r=this.Xn(t);if(null!==r)if(r.body){if(this.ts()){var s={record:pt(r,null!==(e=null==i?void 0:i.context)&&void 0!==e?e:this.Pn(),this.A,null==i?void 0:i.occurredAtMs)};this.Fn((()=>this.es(s)))}}else this.A.info("Log was rejected in beforeSend function")}}Xn(t){var i=this.gn.beforeSend;if(!i)return t;var e=S(i)?i:[i],r=t;for(var s of e)try{var n=s(r);if(!n)return this.A.info("Log was rejected in beforeSend function"),null;r=n}catch(t){return this.A.error("Error in beforeSend function for log:",t),null}return r}ts(){if(void 0===this.Jn)return!0;var t=Date.now(),i=t-this.Hn;return this.Qn>i&&i>=0||(this.Hn=t,this.zn=0,this.Un=!1),this.Jn>this.zn?(this.zn++,!0):(this.Un||(this.A.warn("captureLog dropping logs: exceeded "+this.Jn+" logs per "+this.Qn+"ms"),this.Un=!0),!1)}flush(){var t=this;return i((function*(){if(!t._instance.isDisabled)return t.Nn||(t.Nn=t.rs().finally((()=>{t.Nn=null}))),t.Nn}))()}rs(){var t=this;return i((function*(){var i;t.Kn();var e=null!==(i=t._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];if(0!==e.length)for(var r=e.length,s=0;e.length>0&&r>s;){var n,o,l=t.jn;t.qn=0;var u=Math.min(e.length,t.Zn),h=e.slice(0,u),v=_t(h.map((t=>t.record)),t.ns(),null!==(n=t.$n)&&void 0!==n?n:t._instance.getLibraryId(),t._instance.getLibraryVersion()),d=yield t._instance.ss(v);if(t.jn!==l)return;if("too-large"===d.kind&&h.length>1)t.Zn=Math.max(1,Math.floor(h.length/2)),t.A.warn("Received 413 when sending logs batch of size "+h.length+", reducing batch size to "+t.Zn);else{if("retry-later"===d.kind)throw d.error;if("too-large"===d.kind?t.A.warn("Dropping a single log record after 413 with batch size 1 — the record is larger than the server cap and cannot be split further."):"ok"===d.kind&&t.gn.maxBatchRecordsPerPost>t.Zn&&(t.Zn=Math.min(t.gn.maxBatchRecordsPerPost,t.Zn+1)),yield t.os(h.length),e=null!==(o=t._instance.getPersistedProperty(a.LogsQueue))&&void 0!==o?o:[],s+=h.length,"fatal"===d.kind)throw d.error}}}))()}os(t){var e=this;return i((function*(){var i,r=Math.max(0,t-e.qn),s=null!==(i=e._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];e._instance.setPersistedProperty(a.LogsQueue,s.slice(r)),yield e.Dn()}))()}ns(){return gt(this.gn,this._instance.getLibraryId(),this._instance.getLibraryVersion())}es(t){var i;if(!this._instance.optedOut){var e=null!==(i=this._instance.getPersistedProperty(a.LogsQueue))&&void 0!==i?i:[];this.Vn>e.length||(e.shift(),this.qn++,this.A.info("Logs queue is full, dropping oldest record.")),e.push(t),this._instance.setPersistedProperty(a.LogsQueue,e),this.Wn>e.length?this.ls():this.Yn()}}ls(t){void 0===t&&(t=this.Gn),this.us||(this.us=tt((()=>{this.us=void 0,this.Yn()}),t))}hs(){var t=Math.min(Math.max(0,this.Bn-1),6);return this.Gn*Math.pow(2,t)}ds(){var t=this._instance.getPersistedProperty(a.LogsQueue);return!!t&&t.length>0}shutdown(t){var e=this;return i((function*(){e.Kn();var i=e.flush().catch((()=>{}));void 0!==t?yield it(i,t):yield i}))()}flushWithTimeout(t){var e=this;return i((function*(){var i=e.flush();yield it(i,t,(()=>{i.catch((()=>{}))}))}))()}Yn(){this.flush().then((()=>{this.Bn=0}),(t=>{this.Bn++,this.A.error("PostHog logs flush failed:",t)})).finally((()=>{!this._instance.isDisabled&&this.ds()&&this.ls(this.hs())}))}Kn(){this.us&&(clearTimeout(this.us),this.us=void 0)}};var mt=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function yt(t){return String(t)+"000000"}function wt(t,i,e,r){var s="";return r&&(s=Object.keys(r).sort().map((t=>JSON.stringify(t)+":"+JSON.stringify(r[t]))).join(",")),t+"\0"+i+"\0"+(null!=e?e:"")+"\0"+s}let St=class{constructor(t,i,e){this._instance=t,this.gn=i,this.A=e,this.vs=new Map,this.Nn=null,this.cs=!1,this.fs=new Map,this.ps=new Set,this.gs=0}count(t,i,e){void 0===i&&(i=1),this.ys({name:t,type:"count",value:i,unit:null==e?void 0:e.unit,attributes:null==e?void 0:e.attributes})}gauge(t,i,e){this.ys({name:t,type:"gauge",value:i,unit:null==e?void 0:e.unit,attributes:null==e?void 0:e.attributes})}histogram(t,i,e){this.ys({name:t,type:"histogram",value:i,unit:null==e?void 0:e.unit,attributes:null==e?void 0:e.attributes})}flush(){var t=this,e=this.Nn,r=function(){var r=i((function*(){e&&(yield e.catch((()=>{}))),yield t.bs()}));return function(){return r.apply(this,arguments)}}(),s=r().finally((()=>{this.Nn===s&&(this.Nn=null)}));return this.Nn=s,s}drainWindow(){if(0===this.vs.size)return null;var t=this.vs;return this.vs=new Map,this.cs=!1,this.fs=new Map,this.ps=new Set,this._s(t)}reset(){this.gs++,this.Kn(),this.vs=new Map,this.Nn=null,this.cs=!1,this.fs=new Map,this.ps=new Set}ys(t){if(!this._instance.isDisabled&&!this._instance.optedOut){var i=this.Xn(t);if(null!==i)if(i.name&&"string"==typeof i.name)if("number"==typeof i.value&&Number.isFinite(i.value))if("count"===i.type&&0>i.value)this.A.warn("Dropping count '"+i.name+"': counters are monotonic, value must be >= 0");else{var r,s;try{r=i.attributes?e({},i.attributes):void 0,s=wt(i.type,i.name,i.unit,r)}catch(t){return void this.A.warn("Dropping metric '"+i.name+"': attributes could not be serialized",t)}var n=this.vs.get(s);if(!n){if(!this.ws())return;n={name:i.name,type:i.type,unit:i.unit,attributes:r,windowStartMs:Date.now()},this.vs.set(s,n)}var a=this.fs.get(i.name);void 0===a?this.fs.set(i.name,i.type):a===i.type||this.ps.has(i.name)||(this.ps.add(i.name),this.A.warn("Metric name '"+i.name+"' is already used as a "+a+"; recording it as a "+i.type+" too will blend both series in charts. Use a distinct name.")),this.ks(n,i.value),this.ls()}else this.A.warn("Dropping metric '"+i.name+"': value must be a finite number");else this.A.warn("Dropping metric with empty name")}}ws(){return this.gn.maxSeriesPerFlush>this.vs.size||(this.cs||(this.cs=!0,this.A.warn("Metric series cap reached ("+this.gn.maxSeriesPerFlush+" per flush window); dropping new series until the next flush. Reduce attribute cardinality.")),!1)}ks(t,i){var e;switch(t.type){case"count":t.total=(null!==(e=t.total)&&void 0!==e?e:0)+i;break;case"gauge":t.last=i;break;case"histogram":t.hist||(t.hist={count:0,sum:0,min:i,max:i,bucketCounts:new Array(mt.length+1).fill(0)});var r=t.hist;r.count+=1,r.sum+=i,r.min=Math.min(r.min,i),r.max=Math.max(r.max,i),r.bucketCounts[function(t,i){for(var e=0;i.length>e;e++)if(i[e]>=t)return e;return i.length}(i,mt)]+=1}}Xn(t){var i=this.gn.beforeSend;if(!i)return t;var e=S(i)?i:[i],r=t;for(var s of e)try{var n=s(r);if(!n)return this.A.info("Metric was rejected in beforeSend function"),null;r=n}catch(t){return this.A.error("Error in beforeSend function for metric:",t),null}return r}ls(){this.us||(this.us=tt((()=>{this.us=void 0,this.flush().catch((t=>{this.A.error("Metrics flush failed:",t)}))}),this.gn.flushIntervalMs))}Kn(){this.us&&(clearTimeout(this.us),this.us=void 0)}bs(){var t=this;return i((function*(){if(0!==t.vs.size){var i=t.vs;t.vs=new Map,t.cs=!1,t.fs=new Map,t.ps=new Set;var e=t.gs,r=yield t._instance.Ss(t._s(i));if(e===t.gs)switch(r.kind){case"ok":return;case"retry-later":return t.xs(i),void t.ls();case"too-large":return void t.A.warn("Metrics batch exceeded the server size limit and was dropped");case"fatal":return void t.A.error("Failed to send metrics batch:",r.error)}}}))()}_s(t){return i=this.Cs(t),e=function(t,i,e){return ht(t,i,e)}(this.gn,this._instance.getLibraryId(),this._instance.getLibraryVersion()),r=this._instance.getLibraryId(),s=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:at(e)},scopeMetrics:[{scope:{name:r,version:s},metrics:i}]}]};var i,e,r,s}Cs(t){var i=yt(Date.now()),r=new Map;for(var s of t.values()){var n,a=wt(s.type,s.name,s.unit,void 0),o=r.get(a);o||(o=e({name:s.name},s.unit&&{unit:s.unit}),"count"===s.type?o.sum={aggregationTemporality:1,isMonotonic:!0,dataPoints:[]}:"gauge"===s.type?o.gauge={dataPoints:[]}:o.histogram={aggregationTemporality:1,dataPoints:[]},r.set(a,o));var l=at(null!==(n=s.attributes)&&void 0!==n?n:{},this.A),u=yt(s.windowStartMs);if("count"===s.type){var h,v={attributes:l,startTimeUnixNano:u,timeUnixNano:i,asDouble:null!==(h=s.total)&&void 0!==h?h:0};o.sum.dataPoints.push(v)}else if("gauge"===s.type){var d,c={attributes:l,timeUnixNano:i,asDouble:null!==(d=s.last)&&void 0!==d?d:0};o.gauge.dataPoints.push(c)}else s.hist&&o.histogram.dataPoints.push({attributes:l,startTimeUnixNano:u,timeUnixNano:i,count:s.hist.count,sum:s.hist.sum,min:s.hist.min,max:s.hist.max,bucketCounts:s.hist.bucketCounts,explicitBounds:mt})}return Array.from(r.values())}xs(t){var i,e;for(var r of t){var s=r[0],n=r[1],a=this.vs.get(s);if(a)switch(a.windowStartMs=Math.min(a.windowStartMs,n.windowStartMs),a.type){case"count":a.total=(null!==(i=a.total)&&void 0!==i?i:0)+(null!==(e=n.total)&&void 0!==e?e:0);break;case"gauge":break;case"histogram":if(n.hist)if(a.hist){a.hist.count+=n.hist.count,a.hist.sum+=n.hist.sum,a.hist.min=Math.min(a.hist.min,n.hist.min),a.hist.max=Math.max(a.hist.max,n.hist.max);for(var o=0;a.hist.bucketCounts.length>o;o++)a.hist.bucketCounts[o]+=n.hist.bucketCounts[o]}else a.hist=n.hist}else this.ws()&&this.vs.set(s,n)}}};var xt,kt,Et;function Ft(t){var i=globalThis._posthogChunkIds;if(i){var e=Object.keys(i);return Et&&e.length===kt?Et:(kt=e.length,Et=e.reduce(((e,r)=>{xt||(xt={});var s=xt[r];if(s)e[s[0]]=s[1];else for(var n=t(r),a=n.length-1;a>=0;a--){var o=n[a],l=null==o?void 0:o.filename,u=i[r];if(l&&u){e[l]=u,xt[r]=[l,u];break}}return e}),{}))}}class Pt{constructor(t,i,e){void 0===e&&(e=[]),this.coercers=t,this.stackParser=i,this.modifiers=e}buildFromUnknown(t,i){void 0===i&&(i={});var e=i&&i.mechanism||{handled:!0,type:"generic"},r=this.buildCoercingContext(e,i,0).apply(t),s=this.buildParsingContext(i),n=this.parseStacktrace(r,s);return{$exception_list:this.convertToExceptionList(n,e),$exception_level:"error"}}modifyFrames(t){var e=this;return i((function*(){for(var i of t)i.stacktrace&&i.stacktrace.frames&&S(i.stacktrace.frames)&&(i.stacktrace.frames=yield e.applyModifiers(i.stacktrace.frames));return t}))()}coerceFallback(t){var i;return{type:"Error",value:"Unknown error",stack:null==(i=t.syntheticException)?void 0:i.stack,synthetic:!0}}parseStacktrace(t,i){var r,s;return null!=t.cause&&(r=this.parseStacktrace(t.cause,i)),""!=t.stack&&null!=t.stack&&(s=this.applyChunkIds(this.stackParser(t.stack,t.synthetic?i.skipFirstLines:0),i.chunkIdMap)),e({},t,{cause:r,stack:s})}applyChunkIds(t,i){return t.map((t=>(t.filename&&i&&(t.chunk_id=i[t.filename]),t)))}applyCoercers(t,i){for(var e of this.coercers)if(e.match(t))return e.coerce(t,i);return this.coerceFallback(i)}applyModifiers(t){var e=this;return i((function*(){var i=t;for(var r of e.modifiers)i=yield r(i);return i}))()}convertToExceptionList(t,i){var r,s,n,a={type:t.type,value:t.value,mechanism:{type:null!==(r=i.type)&&void 0!==r?r:"generic",handled:null===(s=i.handled)||void 0===s||s,synthetic:null!==(n=t.synthetic)&&void 0!==n&&n}};t.stack&&(a.stacktrace={type:"raw",frames:t.stack});var o=[a];return null!=t.cause&&o.push(...this.convertToExceptionList(t.cause,e({},i,{handled:!0}))),o}buildParsingContext(t){var i;return{chunkIdMap:Ft(this.stackParser),skipFirstLines:null!==(i=t.skipFirstLines)&&void 0!==i?i:1}}buildCoercingContext(t,i,r){void 0===r&&(r=0);var s=(e,r)=>{if(4>=r){var s=this.buildCoercingContext(t,i,r);return this.applyCoercers(e,s)}};return e({},i,{syntheticException:0==r?i.syntheticException:void 0,mechanism:t,apply:t=>s(t,r),next:t=>s(t,r+1)})}}var Ct="?";function Tt(t,i,e,r,s){var n={platform:t,filename:i,function:"<anonymous>"===e?Ct:e,in_app:!(null!=i&&i.startsWith("webkit-masked-url://"))&&"<anonymous>"!==i};return F(r)||(n.lineno=r),F(s)||(n.colno=s),n}var At=(t,i)=>{var e=-1!==t.indexOf("safari-extension"),r=-1!==t.indexOf("safari-web-extension");return e||r?[-1!==t.indexOf("@")?t.split("@")[0]:Ct,e?"safari-extension:"+i:"safari-web-extension:"+i]:[t,i]},Rt=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,Ot=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Mt=/\((\S*)(?::(\d+))(?::(\d+))\)/,It=(t,i)=>{var e=Rt.exec(t);if(e)return Tt(i,e[1],Ct,+e[2],+e[3]);var r=Ot.exec(t);if(r){if(r[2]&&0===r[2].indexOf("eval")){var s=Mt.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3])}var n=At(r[1]||Ct,r[2]);return Tt(i,n[1],n[0],r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},$t=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,jt=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Lt=(t,i)=>{var e=$t.exec(t);if(e){if(e[3]&&e[3].indexOf(" > eval")>-1){var r=jt.exec(e[3]);r&&(e[1]=e[1]||"eval",e[3]=r[1],e[4]=r[2],e[5]="")}var s=e[3],n=e[1]||Ct,a=At(n,s);return Tt(i,s=a[1],n=a[0],e[4]?+e[4]:void 0,e[5]?+e[5]:void 0)}},Dt=/\(error: (.*)\)/;class Nt{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,i){var e=P(t.stack);return{type:this.getType(t),value:this.getValue(t),stack:e?t.stack:void 0,cause:t.cause?i.next(t.cause):void 0,synthetic:!1}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){var i=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?i+": "+t.message:i}isDOMException(t){return j(t,"DOMException")}isDOMError(t){return j(t,"DOMError")}}class zt{match(t){return L(t)}coerce(t,i){var e,r=this.getStack(t),s=void 0===r;return{type:this.getType(t),value:this.getMessage(t,i),stack:null!=r?r:null==(e=i.syntheticException)?void 0:e.stack,cause:t.cause?i.next(t.cause):void 0,synthetic:s}}getType(t){return t.name||t.constructor.name}getMessage(t,i){var e=t.message;return String(e.error&&"string"==typeof e.error.message?e.error.message:e)}getStack(t){return t.stacktrace||t.stack||void 0}}class Bt{constructor(){}match(t){return!!j(t,"ErrorEvent")&&(null!=t.error||this.Wi(t))}coerce(t,i){var r;if(null!=t.error)return i.apply(t.error);var s=i.apply(t.message);return e({},s,{stack:null!==(r=this.Vi(t))&&void 0!==r?r:s.stack,synthetic:!0})}Wi(t){return P(t.message)&&t.message.length>0}Vi(t){var i,e,r=t,s=null!==(i=r.lineno)&&void 0!==i?i:0,n=null!==(e=r.colno)&&void 0!==e?e:0;if(P(r.filename)&&0!==r.filename.length&&0!==s)return"Error\n at "+r.filename+":"+s+":"+n}}var Ht=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;class Ut{match(t){return"string"==typeof t}coerce(t,i){var e,r=this.getInfos(t),s=r[0],n=r[1];return{type:null!=s?s:"Error",value:null!=n?n:t,stack:null==(e=i.syntheticException)?void 0:e.stack,synthetic:!0}}getInfos(t){var i="Error",e=t,r=t.match(Ht);return r&&(i=r[1],e=r[2]),[i,e]}}var Vt=["fatal","error","warning","log","info","debug"];function qt(t,i){void 0===i&&(i=40);var e=Object.keys(t);if(e.sort(),!e.length)return"[object has no keys]";for(var r=e.length;r>0;r--){var s=e.slice(0,r).join(", ");if(i>=s.length)return r===e.length?s:s.length>i?s.slice(0,i)+"...":s}return""}class Wt{match(t){return"object"==typeof t&&null!==t}coerce(t,i){var e,r,s=this.getErrorPropertyFromObject(t);return s?i.apply(s):{type:this.getType(t),value:this.getValue(t),stack:null!==(e=this.getStack(t))&&void 0!==e?e:null==(r=i.syntheticException)?void 0:r.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:!0}}getType(t){if(D(t))return t.constructor.name;var i="name"in t?t.name:void 0;return P(i)&&!C(i)?i:"Error"}getValue(t){if("name"in t&&"string"==typeof t.name){var i="'"+t.name+"' captured as exception";return"message"in t&&"string"==typeof t.message&&(i+=" with message: '"+t.message+"'"),i}if("message"in t&&"string"==typeof t.message)return t.message;var e=this.getObjectClassName(t);return(e&&"Object"!==e?"'"+e+"'":"Object")+" captured as exception with keys: "+qt(t)}isSeverityLevel(t){return P(t)&&!C(t)&&Vt.indexOf(t)>=0}getStack(t){try{return P(t.stacktrace)&&t.stacktrace.length>0?t.stacktrace:P(t.stack)&&t.stack.length>0?t.stack:void 0}catch(t){return}}getErrorPropertyFromObject(t){for(var i in t)if({}.hasOwnProperty.call(t,i)){var e=t[i];if(L(e))return e}}getObjectClassName(t){try{var i=Object.getPrototypeOf(t);return i?i.constructor.name:void 0}catch(t){return}}}class Kt{match(t){return D(t)}coerce(t,i){var e,r=t.constructor.name;return{type:r,value:r+" captured as exception with keys: "+qt(t),stack:null==(e=i.syntheticException)?void 0:e.stack,synthetic:!0}}}class Jt{match(t){return I(t)}coerce(t,i){var e;return{type:"Error",value:"Primitive value captured as exception: "+String(t),stack:null==(e=i.syntheticException)?void 0:e.stack,synthetic:!0}}}class Gt{match(t){return j(t,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(t)}isCustomEventWrappingRejection(t){if(!D(t))return!1;try{var i=t.detail;return null!=i&&"object"==typeof i&&"reason"in i}catch(t){return!1}}coerce(t,i){var e,r=this.getUnhandledRejectionReason(t);return I(r)?{type:"UnhandledRejection",value:"Non-Error promise rejection captured with value: "+String(r),stack:null==(e=i.syntheticException)?void 0:e.stack,synthetic:!0}:i.apply(r)}getUnhandledRejectionReason(t){try{if("reason"in t)return t.reason;if("detail"in t&&null!=t.detail&&"object"==typeof t.detail&&"reason"in t.detail)return t.detail.reason}catch(t){}return t}}var Xt="$message",Zt="$timestamp",Qt=new Set([Xt,Zt]),Yt={enabled:!0,max_bytes:32768};function ti(t){var i;return t?{enabled:null!==(i=t.enabled)&&void 0!==i?i:Yt.enabled,max_bytes:ei(t.max_bytes,Yt.max_bytes)}:e({},Yt)}class ii{constructor(t){this.Ts=[],this.Ms=0,this.gn=ti(t)}setConfig(t){this.gn=ti(t),this.Es()}add(t){var i=function(t){var i,e,r;try{r=[],i=null!==(e=JSON.stringify(t,(function(t,i){if("bigint"==typeof i)return i.toString();if("function"!=typeof i&&"symbol"!=typeof i){if(i instanceof Error)return{name:i.name,message:i.message,stack:i.stack};if(i&&"object"==typeof i){for(;r.length>0&&r[r.length-1]!==this;)r.pop();if(r.includes(i))return"[Circular]";r.push(i)}return i}})))&&void 0!==e?e:"null"}catch(t){return}try{var s=JSON.parse(i);if(!k(s))return;var n=s,a=n[Xt],o=n[Zt];if(!P(a)||0===a.trim().length)return;if(!P(o)&&!R(o))return;return{step:n,json:i}}catch(t){return}}(t);if(i){var e=function(t){if("undefined"!=typeof TextEncoder)return(new TextEncoder).encode(t).length;for(var i=encodeURIComponent(t),e=0,r=0;i.length>r;r++)"%"===i[r]?(e+=1,r+=2):e+=1;return e}(i.json);e>this.gn.max_bytes||(this.Ts.push({step:i.step,bytes:e}),this.Ms+=e,this.Es())}}getAttachable(){return this.Ts.map((t=>t.step))}clear(){this.Ts=[],this.Ms=0}size(){return this.Ts.length}Es(){for(;this.Ms>this.gn.max_bytes&&this.Ts.length>0;){var t=this.Ts.shift();t&&(this.Ms-=t.bytes)}}}function ei(t,i){if(!R(t)||t===1/0||t===-1/0)return i;var e=Math.floor(t);return 0>e?i:e}var ri={DEBUG:!1,LIB_VERSION:"0.7.1",LIB_NAME:"browser-common"},si="undefined"!=typeof window?window:void 0,ni="undefined"!=typeof globalThis?globalThis:si,ai=null==ni?void 0:ni.navigator,oi=null==ni?void 0:ni.document,li=null==ni?void 0:ni.location;function ui(){return!(!si||!1===si.navigator.onLine)}null!=ni&&ni.XMLHttpRequest&&new ni.XMLHttpRequest;var hi=function(t,i){var e=(void 0===i?{}:i).debugEnabled,r={q(i){if(si&&(ri.DEBUG||si.POSTHOG_DEBUG||e)&&!F(si.console)&&si.console){for(var r=("__rrweb_original__"in si.console[i]?si.console[i].__rrweb_original__:si.console[i]),s=arguments.length,n=new Array(s>1?s-1:0),a=1;s>a;a++)n[a-1]=arguments[a];r(t,...n)}},debug(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.q("debug",...i)},info(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.q("log",...i)},warn(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.q("warn",...i)},error(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];r.q("error",...i)},critical(){for(var i=arguments.length,e=new Array(i),r=0;i>r;r++)e[r]=arguments[r];console.error(t,...e)},uninitializedWarning(t){r.error("You must initialize PostHog before calling "+t)},createLogger:(i,e)=>hi(t+" "+i,e)};return r},vi=hi("[PostHog.js]"),di=vi.createLogger;function ci(t,i){if(!A(t))if(S(t))t.forEach(i);else if(M(t))t.forEach(((t,e)=>i(t,e)));else for(var e in t)y.call(t,e)&&i(t[e],e)}var fi=function(t){for(var i=arguments.length,e=new Array(i>1?i-1:0),r=1;i>r;r++)e[r-1]=arguments[r];for(var s of e)for(var n in s)void 0!==s[n]&&(t[n]=s[n]);return t};function pi(t){for(var i=Object.keys(t),e=i.length,r=new Array(e);e--;)r[e]=[i[e],t[i[e]]];return r}var gi=function(t){try{return t()}catch(t){return}};function _i(t,i,e,r){var s=null!=r?r:{},n=s.capture,a=s.passive;null==t||t.addEventListener(i,e,{capture:void 0!==n&&n,passive:void 0===a||a})}function bi(t){return"ph_toolbar_internal"===t.name}function mi(t,i){var e,r=null==t||null==(e=t.config)?void 0:e.get_current_url;if(!x(r))return i;try{var s=r(i);return P(s)&&s?s:i}catch(t){return vi.error("Error in get_current_url, falling back to window.location.href",t),i}}var yi="__POSTHOG_TOOLBAR__",wi=1,Si=3,xi=11;function ki(t){return t instanceof Element&&(t.id===yi||!(null==t.closest||!t.closest(".toolbar-global-fade-container")))}function Ei(t){return!!t&&t.nodeType===wi}function Fi(t,i){return!!t&&!!t.tagName&&t.tagName.toLowerCase()===i.toLowerCase()}function Pi(t){return!!t&&t.nodeType===Si}function Ci(t){return!!t&&t.nodeType===xi&&Ei(t.host)}var Ti=1e3;function Ai(t){return t?b(t).split(/\s+/):[]}function Ri(t,i){var e=function(t){var i,e=null==si||null==(i=si.location)?void 0:i.href;return F(e)?void 0:mi(t,e)}(i);return!!(e&&t&&t.some((t=>e.match(t))))}function Oi(t){var i="";switch(typeof t.className){case"string":i=t.className;break;case"object":i=(t.className&&"baseVal"in t.className?t.className.baseVal:null)||t.getAttribute("class")||"";break;default:i=""}return Ai(i)}function Mi(t){return A(t)?null:b(t).split(/(\s+)/).filter((t=>ee(t))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function Ii(t){var i="";return Ki(t)&&!Ji(t)&&t.childNodes&&t.childNodes.length&&ci(t.childNodes,(function(t){var e;Pi(t)&&t.textContent&&(i+=null!==(e=Mi(t.textContent))&&void 0!==e?e:"")})),b(i)}function $i(t){var i;return F(t.target)?t.srcElement||null:null!=(i=t.target)&&i.shadowRoot?t.composedPath()[0]||null:t.target||null}var ji=["a","button","form","input","select","textarea","label"];function Li(t,i){if(F(i))return!0;var e,r=function(t){if(i.some((i=>function(t,i){var e=t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector;try{return!!e&&e.call(t,i)}catch(t){return!1}}(t,i))))return{v:!0}};for(var s of t)if(e=r(s))return e.v;return!1}function Di(t){var i=t.parentNode;return!(!i||!Ei(i))&&i}var Ni=[".ph-no-autocapture","[data-ph-no-autocapture]"],zi=["next","previous","prev",">","<"],Bi=(t,i)=>/[a-z0-9]/i.test(i)?t.includes(i):t===i,Hi=[".ph-no-rageclick",".ph-no-capture"],Ui=["","text","search","email","password","url","tel","number"];function Vi(t,i){if(!si||qi(t))return!1;var e,r,s,n,a;if(O(i)?(e=!!i&&Hi,r=void 0,s=!1):(e=null!==(n=null==i?void 0:i.css_selector_ignorelist)&&void 0!==n?n:Hi,r=null==i?void 0:i.content_ignorelist,s=null!==(a=null==i?void 0:i.ignore_text_selection)&&void 0!==a&&a),!1===e)return!1;if(s&&function(t){return!(!t||!Ei(t))&&(!!Fi(t,"textarea")||(Fi(t,"input")?_(Ui,(t.getAttribute("type")||"").toLowerCase()):function(t){if(t.isContentEditable)return!0;var i=null==t.getAttribute?void 0:t.getAttribute("contenteditable");return"true"===i||""===i}(t)))}(t))return!1;var o=Wi(t,!1).targetElementList;return!function(t,i){if(!1===t||F(t))return!1;var e;if(!0===t)e=zi;else{if(!S(t))return!1;if(t.length>10)return vi.error("[PostHog] content_ignorelist array cannot exceed 10 items. Use css_selector_ignorelist for more complex matching."),!1;e=t.map((t=>t.toLowerCase()))}return i.some((t=>{var i=t.safeText,r=t.ariaLabel;return e.some((t=>Bi(i,t)||Bi(r,t)))}))}(r,o.map((t=>{var i;return{safeText:Ii(t).toLowerCase(),ariaLabel:(null==(i=t.getAttribute("aria-label"))?void 0:i.toLowerCase().trim())||""}})))&&!Li(o,e)}var qi=t=>!t||Fi(t,"html")||!Ei(t),Wi=(t,i)=>{if(!si||qi(t))return{parentIsUsefulElement:!1,targetElementList:[]};for(var e=!1,r=[t],s=t;s.parentNode&&!Fi(s,"body");)if(Ci(s.parentNode))r.push(s.parentNode.host),s=s.parentNode.host;else{var n=Di(s);if(!n)break;if(i||ji.indexOf(n.tagName.toLowerCase())>-1)e=!0;else try{var a=si.getComputedStyle(n);a&&"pointer"===a.getPropertyValue("cursor")&&(e=!0)}catch(t){}r.push(n),s=n}return{parentIsUsefulElement:e,targetElementList:r}};function Ki(t){for(var i=new Set,e=0,r=t;r.parentNode&&!Fi(r,"body");r=r.parentNode){if(e++>=Ti||i.has(r))return!1;i.add(r);var s=Oi(r);if(_(s,"ph-sensitive")||_(s,"ph-no-capture"))return!1}if(_(Oi(t),"ph-include"))return!0;var n=t.type||"";if(P(n))switch(n.toLowerCase()){case"hidden":case"password":return!1}var a=t.name||t.id||"";return!P(a)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(a.replace(/[^a-zA-Z0-9]/g,""))}function Ji(t){return!!(Fi(t,"input")&&!["button","checkbox","submit","reset"].includes(t.type)||Fi(t,"select")||Fi(t,"textarea")||"true"===t.getAttribute("contenteditable"))}var Gi=new 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}))$"),Xi=/(^|[^0-9A-Za-z_])([0-9][0-9 -]*[0-9])(?=$|[^0-9A-Za-z_])/g,Zi=[16,15,14,13],Qi=new RegExp("^(\\d{3}-?\\d{2}-?\\d{4})$"),Yi=new RegExp("(^|[^0-9])((?!000|666)[0-9]{3}-?(?!00)[0-9]{2}-?(?!0000)[0-9]{4})(?=$|([^0-9]))","g"),te=/[0-9A-Za-z_]/;function ie(t){for(var i=0,e=!1,r=t.length-1;r>=0;r--){var s=t.charCodeAt(r)-48;e&&(s*=2)>9&&(s-=9),i+=s,e=!e}return i%10==0}function ee(t,i){if(void 0===i&&(i=!0),A(t))return!1;if(P(t)){t=b(t);var e=i?Gi.test((t||"").replace(/[- ]/g,"")):function(t){var i;for(Xi.lastIndex=0;i=Xi.exec(t);){var e=i[2];if(e)for(var r=e.replace(/[- ]/g,""),s=0;r.length>s;s++)for(var n of Zi){var a=s+n;if(r.length>=a){var o=r.slice(s,a);if(Gi.test(o)&&ie(o))return!0}}}return!1}(t);if(e)return!1;var r=i?Qi.test(t):function(t){var i;for(Yi.lastIndex=0;i=Yi.exec(t);){var e=i[1],r=i[3];if(!(e&&r&&te.test(e)&&te.test(r)))return!0}return!1}(t);if(r)return!1}return!0}function re(t){var i=Ii(t);return ee(i=(i+" "+se(t)).trim())?i:""}function se(t){var i="";return t&&t.childNodes&&t.childNodes.length&&ci(t.childNodes,(function(t){var e;if(t&&"span"===(null==(e=t.tagName)?void 0:e.toLowerCase()))try{var r=Ii(t);i=(i+" "+r).trim(),t.childNodes&&t.childNodes.length&&(i=(i+" "+se(t)).trim())}catch(t){vi.error("[AutoCapture]",t)}})),i}function ne(t){return t.replace(/"|\\"/g,'\\"')}function ae(t){var i=t.attr__class;if(i)return S(i)?i:Ai(i)}class oe{constructor(t){this.disabled=!1===t;var i=k(t)?t:{};this.thresholdPx=i.threshold_px||30,this.timeoutMs=i.timeout_ms||1e3,this.clickCount=i.click_count||3,this.clicks=[]}isRageClick(t,i,e){if(this.disabled)return!1;var r=this.clicks[this.clicks.length-1];if(r&&Math.abs(t-r.x)+Math.abs(i-r.y)<this.thresholdPx&&this.timeoutMs>e-r.timestamp){if(this.clicks.push({x:t,y:i,timestamp:e}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:t,y:i,timestamp:e}];return!1}}var le="$autocapture_disabled_server_side",ue="$heatmaps_enabled_server_side",he="$exception_capture_enabled_server_side",ve="$error_tracking_suppression_rules",de="$error_tracking_capture_extension_exceptions",ce="$web_vitals_enabled_server_side",fe="$product_tours_enabled_server_side",pe="$logs_capture_enabled_server_side",ge="$web_vitals_allowed_metrics",_e="$session_recording_remote_config",be="$enabled_feature_flags",me="$active_feature_flags",ye="$early_access_features",we="$feature_flag_details",Se="$feature_flag_payloads",xe="$feature_flag_request_id",ke="$minimal_flag_called_events",Ee="$override_feature_flags",Fe="$override_feature_flag_payloads",Pe="$stored_person_properties",Ce="$stored_group_properties",Te="$surveys",Ae="$surveys_loaded_at",Re="$surveys_activated",Oe="$surveys_activated_session",Me="$surveys_activated_timestamps",Ie="ph_product_tours",$e="$flag_call_reported",je="$flag_call_reported_session_id",Le="$feature_flag_errors",De="$feature_flag_evaluated_at",Ne="$sdk_debug_recording_script_not_loaded",ze="PostHog loadExternalDependency extension not found.",Be="visibilitychange",He="beforeunload",Ue=function(t,i){for(var e,r=((t.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&"),s=0;r.length>s;s++){var n=r[s].split("=");if(n[0]===i){e=n;break}}if(!S(e)||2>e.length)return"";var a=e[1];try{a=decodeURIComponent(a)}catch(t){vi.error("Skipping decoding for malformed query param: "+a)}return a.replace(/\+/g," ")},Ve=function(t,i,e){if(!t||!i||!i.length)return t;for(var r=t.split("#"),s=r[1],n=(r[0]||"").split("?"),a=n[1],o=n[0],l=(a||"").split("&"),u=[],h=0;l.length>h;h++){var v=l[h].split("=");S(v)&&(i.includes(v[0])?u.push(v[0]+"="+e):u.push(l[h]))}var d=o;return null!=a&&(d+="?"+u.join("&")),null!=s&&(d+="#"+s),d},qe=function(t,i){var e=t.match(new RegExp(i+"=([^&]*)"));return e?e[1]:null},We=(t,i)=>t>=i&&ui(),Ke=(t,i,e,r)=>{if(0===t){if(ui()){var s=i+1;return s===e&&r(),s}return i}return 0},Je="$copy_autocapture",Ge=di("[AutoCapture]");function Xe(t,i){return i.length>t?i.slice(0,t)+"...":i}function Ze(t){if(t.previousElementSibling)return t.previousElementSibling;var i=t;do{i=i.previousSibling}while(i&&!Ei(i));return i}function Qe(t,i){var r,s,n=i.e,a=i.maskAllElementAttributes,o=i.maskAllText,l=i.elementAttributeIgnoreList,u=i.elementsChainAsString,h=i.disableCaptureUrlHashes;if(!Ei(t))return{props:{}};for(var v=[t],d=new Set([t]),c=t;c.parentNode&&!Fi(c,"body")&&Ti>v.length;)if(Ci(c.parentNode)){var f=c.parentNode.host;if(d.has(f))break;d.add(f),v.push(f),c=f}else{if(!Ei(c.parentNode))break;if(d.has(c.parentNode))break;d.add(c.parentNode),v.push(c.parentNode),c=c.parentNode}var p,g,b=[],m={},y=!1,w=!1;if(ci(v,(t=>{var i=Ki(t);if(Fi(t,"a")){var e=t.getAttribute("href");y=!!(i&&e&&ee(e))&&(h?Y(e):e)}_(Oi(t),"ph-no-capture")&&(w=!0),b.push(function(t,i,e,r,s){void 0===s&&(s=!1);var n=t.tagName.toLowerCase(),a={tag_name:n};ji.indexOf(n)>-1&&!e&&(a.$el_text="a"===n.toLowerCase()||"button"===n.toLowerCase()?Xe(1024,re(t)):Xe(1024,Ii(t)));var o=Oi(t);o.length>0&&(a.classes=o.filter((function(t){return""!==t}))),ci(t.attributes,(function(e){var n;if((!Ji(t)||-1!==["name","id","class","aria-label"].indexOf(e.name))&&(null==r||!r.includes(e.name))&&!i&&ee(e.value)&&(!P(n=e.name)||"_ngcontent"!==n.substring(0,10)&&"_nghost"!==n.substring(0,7))){var o=e.value;"class"===e.name&&(o=Ai(o).join(" ")),a["attr__"+e.name]=Xe(1024,"href"===e.name&&s?Y(o):o)}}));for(var l=1,u=1,h=t;h=Ze(h);)l++,h.tagName===t.tagName&&u++;return a.nth_child=l,a.nth_of_type=u,a}(t,a,o,l,h));var r=function(t){if(!Ki(t))return{};var i={};return ci(t.attributes,(function(t){if(t.name&&0===t.name.indexOf("data-ph-capture-attribute")){var e=t.name.replace("data-ph-capture-attribute-",""),r=t.value;e&&r&&ee(r)&&(i[e]=r)}})),i}(t);ci(r,((t,i)=>{({}).hasOwnProperty.call(m,i)||(m[i]=t)}))})),w)return{props:{},explicitNoCapture:w};if(o||(b[0].$el_text=Fi(t,"a")||Fi(t,"button")?re(t):Ii(t)),y){var x,k;b[0].attr__href=y;var E=null==(x=(t=>{var i=null==oi?void 0:oi.createElement("a");return F(i)?null:(i.href=t,i)})(y))?void 0:x.host,C=null==si||null==(k=si.location)?void 0:k.host;E&&C&&E!==C&&(p=y)}return{props:fi({$event_type:n.type,$ce_version:1},u?{}:{$elements:b},{$elements_chain:(g=b,S(g)?function(t){return t.map((t=>{var i,r,s="";if(t.tag_name&&(s+=t.tag_name),t.attr_class)for(var n of(t.attr_class.sort(),t.attr_class))s+="."+n.replace(/"/g,"");var a=e({},t.text?{text:t.text}:{},{"nth-child":null!==(i=t.nth_child)&&void 0!==i?i:0,"nth-of-type":null!==(r=t.nth_of_type)&&void 0!==r?r:0},t.href?{href:t.href}:{},t.attr_id?{attr_id:t.attr_id}:{},t.attributes),o={};return pi(a).sort(((t,i)=>{return(r=i[0])>(e=t[0])?-1:e>r?1:0;var e,r})).forEach((t=>{var i=t[1];return o[ne(t[0].toString())]=ne(i.toString())})),(s+=":")+pi(o).map((t=>t[0]+'="'+t[1]+'"')).join("")})).join(";")}(function(t){return t.map((t=>{var i,e,r={text:null==(i=t.$el_text)?void 0:i.slice(0,400),tag_name:t.tag_name,href:null==(e=t.attr__href)?void 0:e.slice(0,2048),attr_class:ae(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return pi(t).filter((t=>0===t[0].indexOf("attr__"))).forEach((t=>r.attributes[t[0]]=t[1])),r}))}(g)):"")},null!=(r=b[0])&&r.$el_text?{$el_text:null==(s=b[0])?void 0:s.$el_text}:{},p&&"click"===n.type?{$external_click_url:p}:{},m)}}class Ye{constructor(t){this.name="autocapture",this.Is=!1,this.Rs=null,this.Ps=!1,this.As=!1,this.gn={enabled:!1,rageclick:!1,maskAllElementAttributes:!1,maskAllText:!1,disableCaptureUrlHashes:!1,remoteRequestsDisabled:!1},this.Fs=!1,this.Os=t,this.Os.refresh(this.gn),this.rageclicks=new oe(this.gn.rageclick),this.Ls=null}setup(t){this.Ds(),this.$s=t;var i=t.onRemoteConfig(this.onRemoteConfig.bind(this));this.Fs?i.dispose():(this.Ns=i,this.startIfEnabled())}dispose(){var t;this.Fs||(this.Fs=!0,this.$s=void 0,null==(t=this.Ns)||t.dispose(),this.Ns=void 0,this.qs())}js(){return this.Os.refresh(this.gn),this.gn}Ds(){var t,i;return this.js(),this.gn.url_allowlist=null==(t=this.gn.url_allowlist)?void 0:t.map((t=>new RegExp(t))),this.gn.url_ignorelist=null==(i=this.gn.url_ignorelist)?void 0:i.map((t=>new RegExp(t))),this.gn}Bs(){if(this.isBrowserSupported()){if(si&&oi){var t=this.Hs=t=>{t=t||(null==si?void 0:si.event);try{this.zs(t)}catch(t){Ge.error("Failed to capture event",t)}};if(_i(oi,"submit",t,{capture:!0}),_i(oi,"change",t,{capture:!0}),_i(oi,"click",t,{capture:!0}),this.js().capture_copied_text){var i=this.Us=t=>{t=t||(null==si?void 0:si.event);try{this.zs(t,Je)}catch(t){Ge.error("Failed to capture clipboard event",t)}};_i(oi,"copy",i,{capture:!0}),_i(oi,"cut",i,{capture:!0}),_i(oi,"paste",i,{capture:!0})}}}else Ge.info("Disabling Automatic Event Collection because this browser is not supported")}qs(){this.Hs&&(null==oi||oi.removeEventListener("submit",this.Hs,!0),null==oi||oi.removeEventListener("change",this.Hs,!0),null==oi||oi.removeEventListener("click",this.Hs,!0),this.Hs=void 0),this.Us&&(null==oi||oi.removeEventListener("copy",this.Us,!0),null==oi||oi.removeEventListener("cut",this.Us,!0),null==oi||oi.removeEventListener("paste",this.Us,!0),this.Us=void 0),this.Is=!1}startIfEnabled(){!this.Fs&&this.$s&&this.isEnabled&&!this.Is&&(this.Bs(),this.Is=!0)}onRemoteConfig(t){if(!this.Fs)if(this.Ps=!0,t.ok){var i=t.config;i.elementsChainAsString&&(this.As=i.elementsChainAsString);var e,r=i.autocapture_opt_out;O(r)&&(null==(e=this.$s)||e.kv.set(le,r),this.Rs=r),this.startIfEnabled()}else this.startIfEnabled()}setElementSelectors(t){this.Ls=t}getElementSelectors(t){var i,e=[];return null==(i=this.Ls)||i.forEach((i=>{var r=null==oi?void 0:oi.querySelectorAll(i);null==r||r.forEach((r=>{t===r&&e.push(i)}))})),e}get isEnabled(){var t,i;if(this.Fs)return!1;var e=null==(t=this.$s)?void 0:t.kv.get(le),r=this.Rs,s=this.js(),n=s.remoteRequestsDisabled&&!this.Ps;if(T(r)&&!O(e)&&!n)return!1;var a=null!==(i=this.Rs)&&void 0!==i?i:!!e;return!!s.enabled&&!a}zs(t,i){if(void 0===i&&(i="$autocapture"),this.isEnabled){var r=$i(t);Pi(r)&&(r=r.parentNode||null);var s,n=this.Ds();"$autocapture"===i&&"click"===t.type&&t instanceof MouseEvent&&n.rageclick&&null!=(s=this.rageclicks)&&s.isRageClick(t.clientX,t.clientY,t.timeStamp||(new Date).getTime())&&Vi(r,n.rageclick)&&this.zs(t,"$rageclick");var a=i===Je,o=a?e({},n,{dom_event_allowlist:void 0}):n;if(r&&function(t,i,e,r,s,n){var a;if(!si||qi(t))return!1;if(null!=e&&e.url_allowlist&&!Ri(e.url_allowlist,n))return!1;if(null!=e&&e.url_ignorelist&&Ri(e.url_ignorelist,n))return!1;if(null!=e&&e.dom_event_allowlist){var o=e.dom_event_allowlist;if(o&&!o.some((t=>i.type===t)))return!1}var l=Wi(t,r),u=l.parentIsUsefulElement,h=l.targetElementList;if(!function(t,i){var e=null==i?void 0:i.element_allowlist;if(F(e))return!0;var r,s=function(t){if(e.some((i=>t.tagName.toLowerCase()===i)))return{v:!0}};for(var n of t)if(r=s(n))return r.v;return!1}(h,e))return!1;if(!Li(h,null==e?void 0:e.css_selector_allowlist))return!1;if(Li(h,null!==(a=null==e?void 0:e.css_selector_ignorelist)&&void 0!==a?a:Ni))return!1;try{var v=si.getComputedStyle(t);if(v&&"pointer"===v.getPropertyValue("cursor")&&"click"===i.type)return!0}catch(t){}var d=t.tagName.toLowerCase();switch(d){case"html":return!1;case"form":return(s||["submit"]).indexOf(i.type)>=0;case"input":case"select":case"textarea":return(s||["change","click"]).indexOf(i.type)>=0;default:return u?(s||["click"]).indexOf(i.type)>=0:(s||["click"]).indexOf(i.type)>=0&&(ji.indexOf(d)>-1||"true"===t.getAttribute("contenteditable"))}}(r,t,o,a,a?["copy","cut","paste"]:void 0,{config:{get_current_url:n.getCurrentUrl}})){var l,u=Qe(r,{e:t,maskAllElementAttributes:n.maskAllElementAttributes,maskAllText:n.maskAllText,elementAttributeIgnoreList:n.element_attribute_ignorelist,elementsChainAsString:this.As,disableCaptureUrlHashes:n.disableCaptureUrlHashes}),h=u.props;if(u.explicitNoCapture)return!1;var v=this.getElementSelectors(r);if(v&&v.length>0&&(h.$element_selectors=v),i===Je){var d=t.type||"clipboard";if("paste"!==d){var c,f,p=null==si||null==(c=si.getSelection())?void 0:c.toString(),g=Mi(p);if(!g)return!1;h.$selected_content=g,h.$clipboard_text_length=null!==(f=null==p?void 0:p.length)&&void 0!==f?f:0}h.$copy_type=d}return null==(l=this.$s)||l.capture(i,h).catch((t=>Ge.error("Failed to capture event",t))),!0}}}isBrowserSupported(){return x(null==oi?void 0:oi.querySelectorAll)}}class tr{constructor(t){this._instance=t}refresh(t){var i=this._instance.config,e=k(i.autocapture)?i.autocapture:void 0;t.enabled=!!i.autocapture,t.rageclick=i.rageclick,t.maskAllElementAttributes=i.mask_all_element_attributes,t.maskAllText=i.mask_all_text,t.disableCaptureUrlHashes=i.disable_capture_url_hashes,t.getCurrentUrl=i.get_current_url,t.remoteRequestsDisabled=this._instance._shouldDisableFlags(),t.url_allowlist=null==e?void 0:e.url_allowlist,t.url_ignorelist=null==e?void 0:e.url_ignorelist,t.dom_event_allowlist=null==e?void 0:e.dom_event_allowlist,t.element_allowlist=null==e?void 0:e.element_allowlist,t.css_selector_allowlist=null==e?void 0:e.css_selector_allowlist,t.css_selector_ignorelist=null==e?void 0:e.css_selector_ignorelist,t.element_attribute_ignorelist=null==e?void 0:e.element_attribute_ignorelist,t.capture_copied_text=null==e?void 0:e.capture_copied_text}}var ir="undefined"!=typeof globalThis?globalThis:si;ir&&"undefined"==typeof self&&(ir.self=ir),ir&&"undefined"==typeof File&&(ir.File=function(){});var er=null!=si?si:{},rr=di("[Dead Clicks]"),sr=()=>!0;class nr{get lazyLoadedDeadClicksAutocapture(){return this.Js}constructor(t,i,e){this.instance=t,this.isEnabled=i,this.onCapture=e,this.startIfEnabledOrStop()}onRemoteConfig(t){if(t.ok){var i=t.config;"captureDeadClicks"in i&&(this.instance.persistence&&this.instance.persistence.register({$dead_clicks_enabled_server_side:i.captureDeadClicks}),this.startIfEnabledOrStop())}}startIfEnabledOrStop(){this.isEnabled(this)?this.Ks((()=>{this.Ys()})):this.stop()}Ks(t){var i,e;null!=(i=er.__PosthogExtensions__)&&i.initDeadClicksAutocapture?t():null==(e=er.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this.instance,"dead-clicks-autocapture",(i=>{i?rr.error("failed to load script",i):t()}))}Ys(){var t;if(oi){if(!this.Js&&null!=(t=er.__PosthogExtensions__)&&t.initDeadClicksAutocapture){var i=k(this.instance.config.capture_dead_clicks)?e({},this.instance.config.capture_dead_clicks):{};i.__onCapture=this.onCapture,this.onCapture&&(i.capture_dead_swipes=!1),this.Js=er.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,i),this.Js.start(oi),rr.info("starting...")}}else rr.error("`document` not found. Cannot start.")}stop(){this.Js&&(this.Js.stop(),this.Js=void 0,rr.info("stopping..."))}}var ar=di("[ExceptionAutocapture]"),or=()=>{},lr=t=>{var i;if(x(t))return null!==(i=t.__posthog_layer__)&&void 0!==i?i:t.__rrweb_layer__};function ur(t,i,e){try{if(!(i in t))return or;var r={next:t[i]},s=e((function(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];return r.next.apply(this,i)}));return x(s)&&(s.prototype=s.prototype||{},Object.defineProperties(s,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:r}})),t[i]=s,()=>{if(t[i]!==s)for(var e=t[i],n=lr(e);n;){if(n.next===s)return void(n.next=r.next);n=lr(e=n.next)}else t[i]=r.next}}catch(t){return or}}var hr=di("[TracingHeaders]"),vr=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],dr=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...vr],cr="<masked>",fr=["li_fat_id"];function pr(t,i,e){if(!oi)return{};var r,s,n,a=(r=Ve(oi.URL,[],cr),s=dr.concat([]),n={},ci(s,(function(t){var i=Ue(r,t);n[t]=i||null})),n),o=function(){var t={};return ci(fr,(function(i){var e=(t=>{if(oi){try{for(var i=t+"=",e=oi.cookie.split(";").filter((t=>t.length)),r=0;e.length>r;r++){for(var s=e[r];" "==s.charAt(0);)s=s.substring(1,s.length);if(0===s.indexOf(i))return decodeURIComponent(s.substring(i.length,s.length))}}catch(t){}return null}})(i);t[i]=e||null})),t}();return fi(o,a)}function gr(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return}}var _r=di("[Web Vitals]"),br=9e5,mr=["CLS","FCP","INP","LCP"],yr=["INP","LCP"],wr=["interactionTarget","interactionType","inputDelay","processingDuration","presentationDelay","loadState","target","url","timeToFirstByte","resourceLoadDelay","resourceLoadDuration","elementRenderDelay","largestShiftTarget","largestShiftTime","largestShiftValue","firstByteToFCP"],Sr=di("[RemoteConfig]");class xr{constructor(t){this._instance=t}get remoteConfig(){var t;return null==(t=er._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.config}oo(t){var i,e;null!=(i=er.__PosthogExtensions__)&&i.loadExternalDependency?null==(e=er.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"remote-config",(()=>t(this.remoteConfig))):t()}lo(t){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets","/array/"+this._instance.config.token+"/config"),callback:t})}load(){try{if(this.remoteConfig)return Sr.info("Using preloaded remote config",this.remoteConfig),void this.uo(this.remoteConfig);if(this._instance._shouldDisableFlags())return void Sr.warn("Remote config is disabled. Falling back to local config.");this.oo((t=>{if(!t)return Sr.info("No config found after loading remote JS config. Falling back to JSON."),void this.lo((t=>{this.uo(t.json,t)}));this.uo(t)}))}catch(t){Sr.error("Error loading remote config",t),this.uo()}}uo(t,i){!t&&i&&(0===i.statusCode?i.error||Sr.warn("Failed to fetch remote config from PostHog."):Sr.error("Failed to fetch remote config from PostHog."));try{this._instance.uo(t?{ok:!0,config:t}:{ok:!1})}catch(t){Sr.error("Error applying remote config",t)}if(!1!==(null==t?void 0:t.hasFeatureFlags)&&!this._instance.config.advanced_disable_feature_flags_on_first_load)try{var e;null==(e=this._instance.featureFlags)||e.ensureFlagsLoaded()}catch(t){Sr.error("Error loading feature flags",t)}}}var kr="disabled",Er="lazy_loading",Fr="awaiting_config",Pr="missing_config";function Cr(t){var i;return!(null==(i=t.conditions)||null==(i=i.events)||null==(i=i.values)||!i.length)}ri.DEBUG=!1,ri.LIB_VERSION="1.424.1",ri.LIB_NAME="web";var Tr=(t,i)=>{if(!(t=>{try{new RegExp(t)}catch(t){return!1}return!0})(i))return!1;try{return new RegExp(i).test(t)}catch(t){return!1}},Ar=t=>t.toLowerCase(),Rr={exact:(t,i)=>i.some((i=>t.some((t=>i===t)))),is_not:(t,i)=>i.every((i=>t.every((t=>i!==t)))),regex:(t,i)=>i.some((i=>t.some((t=>Tr(i,t))))),not_regex:(t,i)=>i.every((i=>t.every((t=>!Tr(i,t))))),icontains:(t,i)=>i.map(Ar).some((i=>t.map(Ar).some((t=>i.includes(t))))),not_icontains:(t,i)=>i.map(Ar).every((i=>t.map(Ar).every((t=>!i.includes(t))))),gt:(t,i)=>i.some((i=>{var e=parseFloat(i);return!isNaN(e)&&t.some((t=>e>parseFloat(t)))})),lt:(t,i)=>i.some((i=>{var e=parseFloat(i);return!isNaN(e)&&t.some((t=>e<parseFloat(t)))}))};function Or(t,i){return!t||Object.entries(t).every((t=>{var e=t[1],r=null==i?void 0:i[t[0]];if(null==r)return!1;var s=Rr[e.operator];return!!s&&s(e.values,[String(r)])}))}di("[SessionRecording]"),di("[SessionRecording]");var Mr="[SessionRecording]",Ir=di(Mr),$r=di("[Heatmaps]");function jr(t){return k(t)&&"clientX"in t&&"clientY"in t&&R(t.clientX)&&R(t.clientY)}var Lr=di("[Product Tours]"),Dr=t=>{var i;return!t.config.disable_product_tours&&!(null==(i=t.persistence)||!i.get_property(fe))},Nr=["$set_once","$set"],zr=di("[SiteApps]"),Br="Error while initializing PostHog app with config id ",Hr=(t,i)=>null!=t&&t.then?t.then(i):i(t),Ur="events",Vr="cancelEvents",qr="survey shown",Wr=di("[Surveys]"),Kr="seenSurvey_",Jr=["popover","widget","api"],Gr="SDK is not enabled or survey functionality is not yet loaded",Xr="Disabled. Not loading surveys.";class Zr{constructor(t,i){this.name="surveys",this._surveyEventReceiver=null,this._surveyManager=null,this.ku=!1,this.Su=[],this.xu=null,this.Cu=null,this.Fs=!1,this.Tu=new Set,this.onRemoteConfig=t=>{if(!this.Fs&&!this.gn.disableSurveys){if(!t.ok)return Wr.warn("Remote config unavailable. Not loading surveys.");var i=t.config.surveys;if(A(i))return Wr.warn("Flags not loaded yet. Not loading surveys.");this.Mu=O(i)?i:i.length>0,Wr.info("flags response received, isSurveysEnabled: "+this.Mu),this.loadIfEnabled()}},this.Os=t,this.Eu=i}setup(t){if(!this.Fs)return this.Iu=t,Hr(t.kv.initialize(),(()=>{if(this.Iu===t&&!this.Fs){this.Iu=void 0,this.$s=t;var i=t.onRemoteConfig(this.onRemoteConfig);this.Fs?i.dispose():(this.Ns=i,this.loadIfEnabled())}}))}dispose(){var t,i,e;this.Fs||(this.Fs=!0,this.Iu=void 0,this.$s=void 0,null==(t=this.Ns)||t.dispose(),this.Ns=void 0,null==(i=this._surveyEventReceiver)||i.dispose(),this._surveyEventReceiver=null,null==(e=this._surveyManager)||null==e.dispose||e.dispose(),this._surveyManager=null,this.Su=[],this.xu=null,this.Tu.forEach((t=>clearTimeout(t))),this.Tu.clear())}get gn(){return this.Os.get()}initialize(){this.loadIfEnabled()}reset(){try{var t;null==(t=this._surveyEventReceiver)||t.reset(),localStorage.removeItem("lastSeenSurveyDate");for(var i=[],e=0;e<localStorage.length;e++){var r=localStorage.key(e);(null!=r&&r.startsWith(Kr)||null!=r&&r.startsWith("inProgressSurvey_"))&&i.push(r)}i.forEach((t=>localStorage.removeItem(t)))}catch(t){}}loadIfEnabled(){if(!this.Fs&&this.$s){var t=this.gn;if(!this._surveyManager)if(this.ku)Wr.info("Already initializing surveys, skipping...");else if(t.disableSurveys)Wr.info(Xr);else if(t.cookielessMode&&this.Os.isOptedOut())Wr.info("Not loading surveys in cookieless mode without consent.");else{var i=this.Os.getExtensions();if(i){if(!F(this.Mu)||t.advancedEnableSurveys){var e=this.Mu||t.advancedEnableSurveys;this.ku=!0;try{var r=i.generateSurveys;if(r)return this.Ru(r,e),void(this.ku=!1);var s=i.loadExternalDependency;if(!s)return this.Pu(ze),void(this.ku=!1);s((t=>{try{if(this.Fs)return;var i=this.Os.getExtensions();t||null==i||!i.generateSurveys?this.Pu("Could not load surveys script",t):this.Ru(i.generateSurveys,e)}finally{this.ku=!1}}))}catch(t){throw this.ku=!1,this.Pu("Error initializing surveys",t),t}}}else Wr.error("PostHog Extensions not found.")}}}Ru(t,i){this.Fs||(this._surveyManager=t(i),this._surveyEventReceiver=this.Os.createEventReceiver(),Wr.info("Surveys loaded successfully"),this.Au({isLoaded:!0}))}Pu(t,i){Wr.error(t,i),this.Au({isLoaded:!1,error:t})}onSurveysLoaded(t){return this.Su.push(t),this._surveyManager&&this.Au({isLoaded:!0}),()=>{this.Su=this.Su.filter((i=>i!==t))}}getSurveys(t,i){var e;void 0===i&&(i=!1);var r=null!==(e=this.$s)&&void 0!==e?e:this.Eu;if(r&&!this.Fs){if(this.gn.disableSurveys)return Wr.info(Xr),t([]);var s=r.kv.get(Te);if(s&&!i)return t(s,{isLoaded:!0}),void(this.Fu()&&this.getSurveys((()=>{}),!0));if(this.xu)this.xu.then((i=>{this.Fs||t(i.surveys,i.context)})).catch((t=>Wr.error("Error in survey callback",t)));else{var n=this.Ou("/api/surveys/",{method:"GET",query:{token:r.projectToken},sentAt:"query",timeoutMs:this.gn.requestTimeoutMs}).then((t=>{try{return this.Lu(r,t)}catch(t){return Wr.error("Error processing surveys response",t),this.Lu(r,{statusCode:0,error:t})}}),(t=>this.Lu(r,{statusCode:0,error:t})));this.xu=n;var a=()=>{this.xu===n&&(this.xu=null)};n.then((i=>{a(),this.Fs||t(i.surveys,i.context)}),a).catch((t=>Wr.error("Error in survey callback",t)))}}}Ou(t,i){var e=this.$s;return e?e.sendRequest(t,i):new Promise((t=>t({statusCode:0,error:new Error(Gr)})))}Lu(t,i){if(this.Fs)return{surveys:[],context:{isLoaded:!1,error:Gr}};var e=i.statusCode;if(200!==e||!i.json){var r="Surveys API could not be loaded, status: "+e;return 0!==e?Wr.error(r):i.error||Wr.warn(r),this.Cu=Date.now(),{surveys:[],context:{isLoaded:!1,error:r}}}this.Cu=null;var s,n=i.json.surveys||[],a=n.filter((t=>function(t){return!(!t.start_date||t.end_date)}(t)&&(Cr(t)||function(t){var i;return!(null==(i=t.conditions)||null==(i=i.actions)||null==(i=i.values)||!i.length)}(t))));return a.length>0&&(null==(s=this._surveyEventReceiver)||s.register(a)),t.kv.set({[Te]:n,[Ae]:Date.now()}),{surveys:n,context:{isLoaded:!0}}}Fu(){return this.Du()&&!this.xu&&!this.$u()}Du(){var t,i,e=null==(t=null!==(i=this.$s)&&void 0!==i?i:this.Eu)?void 0:t.kv.get(Ae);return R(e)&&Date.now()-e>3e5}$u(){return R(this.Cu)&&3e5>Date.now()-this.Cu}markSurveyAsSeen(t,i){var e;(t=>{try{var i=(t=>((t,i)=>""+Kr+function(t){return t.current_iteration&&t.current_iteration>0?t.id+"_"+t.current_iteration:t.id}(i))(0,t))(t);if(localStorage.getItem(i))return;localStorage.setItem(i,"true")}catch(t){Wr.error("Failed to persist survey seen state",t)}})({id:t,current_iteration:null!==(e=null==i?void 0:i.iteration)&&void 0!==e?e:null});try{localStorage.setItem("lastSeenSurveyDate",(new Date).toISOString())}catch(t){}}Au(t){for(var i of this.Su)try{if(!t.isLoaded)return i([],t);this.getSurveys(i)}catch(t){Wr.error("Error in survey callback",t)}}getActiveMatchingSurveys(t,i){if(void 0===i&&(i=!1),!A(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(t,i);Wr.warn("init was not called")}Nu(t){var i=null;return this.getSurveys((e=>{var r;i=null!==(r=e.find((i=>i.id===t)))&&void 0!==r?r:null})),i}qu(t){if(A(this._surveyManager))return{eligible:!1,reason:Gr};var i="string"==typeof t?this.Nu(t):t;return i?this._surveyManager.checkSurveyEligibility(i):{eligible:!1,reason:"Survey not found"}}ju(t){if(A(this._surveyManager))return{eligible:!1,reason:Gr};var i="string"==typeof t?this.Nu(t):t;return i?this._surveyManager.checkSurveyRenderability(i):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(t){if(A(this._surveyManager))return Wr.warn("init was not called"),{visible:!1,disabledReason:Gr};var i=this.ju(t);return{visible:i.eligible,disabledReason:i.reason}}canRenderSurveyAsync(t,i){return A(this._surveyManager)?(Wr.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:Gr})):new Promise((e=>{this.getSurveys((i=>{var r,s=null!==(r=i.find((i=>i.id===t)))&&void 0!==r?r:null;if(s){var n=this.ju(s);e({visible:n.eligible,disabledReason:n.reason})}else e({visible:!1,disabledReason:"Survey not found"})}),i)}))}renderSurvey(t,i,e){var r;if(A(this._surveyManager))Wr.warn("init was not called");else{var s="string"==typeof t?this.Nu(t):t;if(null!=s&&s.id)if(Jr.includes(s.type)){var n=null==oi?void 0:oi.querySelector(i);if(n)if(null!=(r=s.appearance)&&r.surveyPopupDelaySeconds){Wr.info("Rendering survey "+s.id+" with delay of "+s.appearance.surveyPopupDelaySeconds+" seconds");var a=setTimeout((()=>{var t,i;this.Tu.delete(a),this.Fs||(Wr.info("Rendering survey "+s.id+" with delay of "+(null==(t=s.appearance)?void 0:t.surveyPopupDelaySeconds)+" seconds"),null==(i=this._surveyManager)||i.renderSurvey(s,n,e),Wr.info("Survey "+s.id+" rendered"))}),1e3*s.appearance.surveyPopupDelaySeconds);this.Tu.add(a)}else this._surveyManager.renderSurvey(s,n,e);else Wr.warn("Survey element not found")}else Wr.warn("Surveys of type "+s.type+" cannot be rendered in the app");else Wr.warn("Survey not found")}}displaySurvey(t,i){var r;if(A(this._surveyManager))Wr.warn("init was not called");else{var s=this.Nu(t);if(s){var n=s;if(null!=(r=s.appearance)&&r.surveyPopupDelaySeconds&&i.ignoreDelay&&(n=e({},s,{appearance:e({},s.appearance,{surveyPopupDelaySeconds:0})})),"popover"!==i.displayType&&i.initialResponses&&Wr.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),!1===i.ignoreConditions){var a=this.qu(s);if(!a.eligible)return void Wr.warn("Survey is not eligible to be displayed: ",a.reason)}"inline"!==i.displayType?this._surveyManager.handlePopoverSurvey(n,i):this.renderSurvey(n,i.selector,i.properties)}else Wr.warn("Survey not found")}}cancelPendingSurvey(t){A(this._surveyManager)?Wr.warn("init was not called"):this._surveyManager.cancelSurvey(t)}handlePageUnload(){var t;null==(t=this._surveyManager)||null==t.handlePageUnload||t.handlePageUnload()}}class Qr{on(t,i){return this.qo[t]||(this.qo[t]=[]),this.qo[t].push(i),()=>{this.qo[t]=this.qo[t].filter((t=>t!==i))}}emit(t,i){for(var e of this.qo[t]||[])e(i);for(var r of this.qo["*"]||[])r(t,i)}constructor(){this.qo={}}}function Yr(t,i,e){if(A(t))return!1;switch(e){case"exact":return t===i;case"contains":var r=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(r,"i").test(t);case"regex":try{return new RegExp(i).test(t)}catch(t){return!1}default:return!1}}class ts{constructor(t){this.Bu=new Set,this.Hu=new Set,this.zu=new Qr,this.Uu=(t,i)=>this.Wu(t,i)&&this.Vu(t,i)&&this.Gu(t,i)&&this.Zu(t,i),this.Wu=(t,i)=>null==i||!i.event||(null==t?void 0:t.event)===(null==i?void 0:i.event),this._instance=t}init(){var t,i;F(null==(t=this._instance)?void 0:t._addCaptureHook)||(this.Qu=null==(i=this._instance)?void 0:i._addCaptureHook(((t,i)=>{this.on(t,i)})))}dispose(){var t;null==(t=this.Qu)||t.call(this),this.Qu=void 0,this.zu=new Qr}register(t){var i,e;if(!F(null==(i=this._instance)?void 0:i._addCaptureHook)&&(t.forEach((t=>{var i;this.Bu.add(t),null==(i=t.steps)||i.forEach((t=>{this.Hu.add((null==t?void 0:t.event)||"")}))})),null!=(e=this._instance)&&e.autocapture)){var r=new Set;this.Bu.forEach((t=>{var i;null==(i=t.steps)||i.forEach((t=>{null!=t&&t.selector&&r.add(t.selector)}))})),this._instance.autocapture.setElementSelectors(r)}}replace(t){this.Bu.clear(),this.Hu.clear(),this.register(t)}on(t,i){null!=i&&0!=t.length&&(this.Hu.has(t)||this.Hu.has(i.event))&&this.Bu.forEach((t=>{this.Ju(i,t)&&this.zu.emit("actionCaptured",t.name)}))}Ku(t){this.onAction("actionCaptured",(i=>t(i)))}Ju(t,i){if(null==(null==i?void 0:i.steps))return!1;for(var e of i.steps)if(this.Uu(t,e))return!0;return!1}onAction(t,i){return this.zu.on(t,i)}Vu(t,i){if(null!=i&&i.url){var e,r=null==t||null==(e=t.properties)?void 0:e.$current_url;if(!r||"string"!=typeof r)return!1;if(!Yr(r,i.url,i.url_matching||"contains"))return!1}return!0}Gu(t,i){return!!this.Yu(t,i)&&!!this.Xu(t,i)&&!!this.th(t,i)}Yu(t,i){var e;if(null==i||!i.href)return!0;var r=this.eh(t);if(r.length>0)return r.some((t=>Yr(t.href,i.href,i.href_matching||"exact")));var s,n=(null==t||null==(e=t.properties)?void 0:e.$elements_chain)||"";return!!n&&Yr((s=n.match(/(?::|")href="(.*?)"/))?s[1]:"",i.href,i.href_matching||"exact")}Xu(t,i){var e;if(null==i||!i.text)return!0;var r=this.eh(t);if(r.length>0)return r.some((t=>Yr(t.text,i.text,i.text_matching||"exact")||Yr(t.$el_text,i.text,i.text_matching||"exact")));var s,n,a,o=(null==t||null==(e=t.properties)?void 0:e.$elements_chain)||"";return!!o&&(s=function(t){for(var i,e=[],r=/(?::|")text="(.*?)"/g;!A(i=r.exec(t));)e.includes(i[1])||e.push(i[1]);return e}(o),n=i.text,a=i.text_matching||"exact",s.some((t=>Yr(t,n,a))))}th(t,i){var e,r;if(null==i||!i.selector)return!0;var s=null==t||null==(e=t.properties)?void 0:e.$element_selectors;if(null!=s&&s.includes(i.selector))return!0;var n=(null==t||null==(r=t.properties)?void 0:r.$elements_chain)||"";if(i.selector_regex&&n)try{return new RegExp(i.selector_regex).test(n)}catch(t){return!1}return!1}eh(t){var i;return null==(null==t||null==(i=t.properties)?void 0:i.$elements)?[]:null==t?void 0:t.properties.$elements}Zu(t,i){return null==i||!i.properties||0===i.properties.length||Or(i.properties.reduce(((t,i)=>{var e=S(i.value)?i.value.map(String):null!=i.value?[String(i.value)]:[];return t[i.key]={values:e,operator:i.operator||"exact"},t}),{}),null==t?void 0:t.properties)}}class is{constructor(t){var i;this.ih=[],this._instance=t,this.rh=new Map,this.nh=new Map,this.sh=new Map,this.ah=null==(i=this._instance)||null==i.onSessionId?void 0:i.onSessionId((t=>this.oh(t)))}lh(t){return!1}uh(){return null}hh(t){}dh(){}fh(t,i){return!!t&&Or(t.propertyFilters,null==i?void 0:i.properties)}ph(t,i){var e=new Map;return t.forEach((t=>{var r;null==(r=t.conditions)||null==(r=r[i])||null==(r=r.values)||r.forEach((i=>{if(null!=i&&i.name){var r=e.get(i.name)||[];r.push(t.id),e.set(i.name,r)}}))})),e}gh(t,i,e){var r=(e===Ur?this.rh:this.nh).get(t),s=[];return this.mh((t=>{s=t.filter((t=>null==r?void 0:r.includes(t.id)))})),s.filter((r=>{var s,n=null==(s=r.conditions)||null==(s=s[e])||null==(s=s.values)?void 0:s.find((i=>i.name===t));return this.fh(n,i)}))}register(t){this.yh(t,!1)}replace(t){this.yh(t,!0)}yh(t,i){var e;F(null==(e=this._instance)?void 0:e._addCaptureHook)||(this.bh(t,i),this._h(t,i))}_h(t,i){var e=t.filter((t=>{var i;return null==(i=t.conditions)||null==(i=i.actions)||null==(i=i.values)?void 0:i.length}));if(i&&this.sh.clear(),0!==e.length){this.wh||(this.wh=new ts(this._instance),this.wh.init(),this.wh.Ku((t=>this.onAction(t))));var r=[];e.forEach((t=>{var i;null==(i=t.conditions)||null==(i=i.actions)||i.values.forEach((i=>{if(r.push(i),i.name){var e,s=null!==(e=this.sh.get(i.name))&&void 0!==e?e:[];s.includes(t.id)||s.push(t.id),this.sh.set(i.name,s)}}))})),i?this.wh.replace(r):this.wh.register(r)}else{var s;i&&(null==(s=this.wh)||s.replace([]))}}kh(t,i){i.forEach(((i,e)=>{var r,s=null!==(r=t.get(e))&&void 0!==r?r:[];i.forEach((t=>{s.includes(t)||s.push(t)})),t.set(e,s)}))}bh(t,i){var e,r,s=t.filter((t=>{var i,e;return(null==(i=t.conditions)?void 0:i.events)&&(null==(e=t.conditions)||null==(e=e.events)||null==(e=e.values)?void 0:e.length)>0})),n=t.filter((t=>{var i,e;return(null==(i=t.conditions)?void 0:i.cancelEvents)&&(null==(e=t.conditions)||null==(e=e.cancelEvents)||null==(e=e.values)?void 0:e.length)>0})),a=this.ph(t,Ur),o=this.ph(t,Vr);i?(this.rh=a,this.nh=o):(this.kh(this.rh,a),this.kh(this.nh,o)),(0!==s.length||0!==n.length)&&(null!==(e=this.Qu)&&void 0!==e||(this.Qu=null==(r=this._instance)?void 0:r._addCaptureHook(((t,i)=>{this.onEvent(t,i)}))))}onEvent(t,i){var e,r,s=this.Sh(),n=(null==i||null==(e=i.properties)?void 0:e.$survey_id)||(null==i||null==(r=i.properties)?void 0:r.$product_tour_id);if(n&&this.getActivatedIds().includes(n)){var a=this.xh(t,n);if("consume"===a)return s.info("event consumed activated item, removing it",{event:t,itemId:n}),void this.Ch([n]);if("persist"===a)return s.info("shown item promoted to persisted activation",{event:t,itemId:n}),this.Th(n),void this.Mh([n])}if(this.nh.has(t)){var o=this.gh(t,i,Vr);o.length>0&&(s.info("cancel event matched, cancelling items",{event:t,itemsToCancel:o.map((t=>t.id))}),this.Ch(o.map((t=>t.id))),o.forEach((t=>this.Eh(t.id))))}if(this.rh.has(t)){s.info("event name matched",{event:t,eventPayload:i,items:this.rh.get(t)});var l=this.gh(t,i,Ur);this.Ih(l.map((t=>t.id)))}}onAction(t){this.sh.has(t)&&this.Ih(this.sh.get(t)||[])}Ih(t){var i;if(0!==t.length){var e=!(null==(i=this._instance)||null==i.get_session_id||!i.get_session_id()),r=[];for(var s of t)e&&this.lh(s)?this.Th(s)&&this.Rh(s):r.push(s);r.length>0&&(this.ih=[...new Set([...this.ih,...r])]),this.Sh().info("updating activated items",{activatedItems:this.getActivatedIds()})}}Th(t){this.ih=this.ih.filter((i=>i!==t));var i=this.Ph();return!i.includes(t)&&(this.Ah([...i,t]),this.Fh(),!0)}Ch(t){var i=new Set(t);this.ih=this.ih.filter((t=>!i.has(t)));var e=this.Oh(),r=e.filter((t=>!i.has(t)));r.length!==e.length&&(this.Ah(r),0===r.length&&this.Lh()),this.Mh(t)}Dh(){var t,i=this.uh();if(!i)return{};var e=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[i];return e&&"object"==typeof e?e:{}}Rh(t){if(this.uh()){var i=this.Dh();this.hh(e({},i,{[t]:Date.now()}))}}Mh(t){if(this.uh()){var i=this.Dh(),e={},r=!1;for(var s of Object.entries(i)){var n=s[0],a=s[1];t.includes(n)?r=!0:e[n]=a}r&&(E(e)?this.dh():this.hh(e))}}$h(){this.uh()&&this.dh()}getActivationTimestamp(t){if(this.Ph().includes(t)){var i=this.Dh()[t];return R(i)?i:void 0}}Oh(){var t,i=this.Nh();return(null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[i])||[]}Ph(){var t,i,e=this.Oh();if(0===e.length)return[];var r=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[this.qh()],s=null==(i=this._instance)||null==i.get_session_id?void 0:i.get_session_id();return s&&r===s?e:[]}Fh(){var t,i=null==(t=this._instance)||null==t.get_session_id?void 0:t.get_session_id();i&&this.jh(i)}Lh(){this.Bh()}oh(t){var i,e=null==(i=this._instance)||null==(i=i.persistence)?void 0:i.props[this.qh()];if(e&&e!==t){var r=this.Oh(),s=this.Dh();r.length>0&&(this.Ah([]),r.filter((t=>R(s[t]))).forEach((t=>this.Eh(t)))),this.Lh(),this.$h()}}getActivatedIds(){return[...new Set([...this.Ph(),...this.ih])].filter((t=>!this.Hh(t)))}dispose(){var t,i,e;null==(t=this.ah)||t.call(this),this.ah=void 0,null==(i=this.Qu)||i.call(this),this.Qu=void 0,null==(e=this.wh)||e.dispose(),this.wh=void 0}reset(){this.ih=[],this.Oh().length>0&&this.Ah([]),this.Lh(),this.$h()}getEventToItemsMap(){return this.rh}zh(){return this.wh}}class es extends is{constructor(t){super(t)}Nh(){return Re}qh(){return Oe}uh(){return Me}hh(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[Me]:t})}dh(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(Me)}lh(t){var i,e;this.mh((i=>{e=i.find((i=>i.id===t))}));var r=null==(i=e)||null==(i=i.appearance)?void 0:i.surveyPopupDelaySeconds;return R(r)&&r>0}Uh(){return qr}mh(t){var i;null==(i=this._instance)||i.getSurveys(t)}Eh(t){var i;null==(i=this._instance)||i.cancelPendingSurvey(t)}Sh(){return Wr}Ah(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[Re]:t})}jh(t){var i;null==(i=this._instance)||null==(i=i.persistence)||i.register({[Oe]:t})}Bh(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(Oe)}Hh(){return!1}xh(t,i){var e;this.mh((t=>{e=t.find((t=>t.id===i))}));var r=!e||function(t){var i;return Cr(t)&&!(null==(i=t.conditions)||null==(i=i.events)||!i.repeatedActivation)||"always"===t.schedule}(e);return r?t===qr?"consume":"ignore":t===qr?"persist":"survey dismissed"===t||"survey sent"===t?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}}class rs{constructor(t){this._instance=t}initialize(){}get(t){if("string"==typeof t)return this._instance.get_property(t);var i={};for(var e of t){var r=this._instance.get_property(e);F(r)||(i[e]=r)}return i}set(t,i){this._instance.register("string"==typeof t?{[t]:i}:t)}remove(t){"string"!=typeof t?t.forEach((t=>this._instance.unregister(t))):this._instance.unregister(t)}}class ss{constructor(t){this._instance=t}get(){var t=this._instance.config;return{disableSurveys:t.disable_surveys,cookielessMode:!!t.cookieless_mode,advancedEnableSurveys:t.advanced_enable_surveys,requestTimeoutMs:t.surveys_request_timeout_ms}}isOptedOut(){return this._instance.consent.isOptedOut()}getExtensions(){var t=null==er?void 0:er.__PosthogExtensions__;if(t){var i=t.generateSurveys,e=t.loadExternalDependency;return{generateSurveys:i?t=>i(this._instance,t):void 0,loadExternalDependency:e?t=>e(this._instance,"surveys",t):void 0}}}createEventReceiver(){return new es(this._instance)}}var ns=null!=si&&si.location?qe(si.location.hash,"__posthog")||qe(location.hash,"state"):null,as="_postHogToolbarParams",os=di("[Toolbar]"),ls=di("[FeatureFlags]");class us{constructor(t,i){void 0===i&&(i=!1),this.Wh=!1,this.update(t,i)}update(t,i){this.Vh=((t,i)=>{var e,r,s,n,a;return{bootstrap:{featureFlags:null==(e=t.bootstrap)?void 0:e.featureFlags,featureFlagPayloads:null==(r=t.bootstrap)?void 0:r.featureFlagPayloads},remoteRequestsDisabled:i,featureFlagsDisabled:!!t.advanced_disable_feature_flags,onlyEvaluateSurveyFeatureFlags:!!t.advanced_only_evaluate_survey_feature_flags,deduplicateCallsPerSession:!!t.advanced_feature_flags_dedup_per_session,cacheTtlMs:t.feature_flag_cache_ttl_ms,refreshIntervalMs:null!==(s=t.remote_config_refresh_interval_ms)&&void 0!==s?s:3e5,requestTimeoutMs:t.feature_flag_request_timeout_ms,compression:t.disable_compression?void 0:"best-available",evaluationContexts:null!==(n=null!==(a=t.evaluation_contexts)&&void 0!==a?a:t.evaluation_environments)&&void 0!==n?n:[],flagKeys:S(t.flag_keys)?t.flag_keys:void 0}})(t,i),!t.evaluation_environments||t.evaluation_contexts||this.Wh||(ls.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.Wh=!0),F(t.flag_keys)||S(t.flag_keys)||ls.error("Invalid flag_keys found:",t.flag_keys,"Expected array of non-empty strings")}get(){return this.Vh}}var hs=di("[FeatureFlags]"),vs=di("[FeatureFlags]",{debugEnabled:!0}),ds="\" failed. Feature flags didn't load in time.",cs="connection_error",fs=t=>{for(var i={},e=0;t.length>e;e++)i[t[e]]=!0;return i},ps=t=>{var i={};for(var e of pi(t||{})){var r=e[1];r&&(i[e[0]]=r)}return i},gs=di("[Error tracking]"),_s="webkit-masked-url:",bs=["chrome-extension://","moz-extension://","safari-extension:","safari-web-extension:",_s],ms=["__firefox__","__gCrWeb"],ys="Refusing to render web experiment since the viewer is a likely bot",ws={icontains:(t,i)=>i.toLowerCase().indexOf(t.toLowerCase())>-1,not_icontains:(t,i)=>-1===i.toLowerCase().indexOf(t.toLowerCase()),regex:(t,i)=>Tr(i,t),not_regex:(t,i)=>!Tr(i,t),exact:(t,i)=>i===t,is_not:(t,i)=>i!==t};class Ss{get gn(){return this._instance.config}constructor(t){var i=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(t){void 0===t&&(t=!1),i.getWebExperiments((t=>{Ss.Gh("retrieved web experiments from the server"),i.Zh=new Map,t.forEach((t=>{if(t.feature_flag_key){var e;i.Zh&&(Ss.Gh("setting flag key ",t.feature_flag_key," to web experiment ",t),null==(e=i.Zh)||e.set(t.feature_flag_key,t));var r=i._instance.getFeatureFlag(t.feature_flag_key);P(r)&&t.variants[r]&&i.Qh(t.name,r,t.variants[r].transforms)}else if(t.variants)for(var s in t.variants){var n=t.variants[s];Ss.Jh(n,i._instance)&&i.Qh(t.name,s,n.transforms)}}))}),t)},this._instance=t,this._instance.onFeatureFlags((t=>{this.onFeatureFlags(t)}))}initialize(){}onFeatureFlags(t){if(this._is_bot())Ss.Gh(ys);else if(!this.gn.disable_web_experiments){if(A(this.Zh))return this.Zh=new Map,this.loadIfEnabled(),void this.previewWebExperiment();Ss.Gh("applying feature flags",t),t.forEach((t=>{var i;if(this.Zh&&null!=(i=this.Zh)&&i.has(t)){var e,r=this._instance.getFeatureFlag(t),s=null==(e=this.Zh)?void 0:e.get(t);r&&null!=s&&s.variants[r]&&this.Qh(s.name,r,s.variants[r].transforms)}}))}}previewWebExperiment(){var t=Ss.getWindowLocation();if(null!=t&&t.search){var i=Ue(null==t?void 0:t.search,"__experiment_id"),e=Ue(null==t?void 0:t.search,"__experiment_variant");i&&e&&(Ss.Gh("previewing web experiments "+i+" && "+e),this.getWebExperiments((t=>{this.Kh(parseInt(i),e,t)}),!1,!0))}}loadIfEnabled(){this.gn.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(t,i,e){if(this.gn.disable_web_experiments&&!e)return t([]);var r=this._instance.get_property("$web_experiments");if(r&&!i)return t(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/web_experiments/?token="+this.gn.token),method:"GET",timestampMode:"query",callback:i=>t(200===i.statusCode&&i.json&&i.json.experiments||[])})}Kh(t,i,e){var r=e.filter((i=>i.id===t));r&&r.length>0&&(Ss.Gh("Previewing web experiment ["+r[0].name+"] with variant ["+i+"]"),this.Qh(r[0].name,i,r[0].variants[i].transforms))}static Jh(t,i){return!A(t.conditions)&&Ss.Yh(t,i)&&Ss.Xh(t)}static Yh(t,i){var e;if(A(t.conditions)||A(null==(e=t.conditions)?void 0:e.url))return!0;var r=Ss.getWindowLocation();if(r){var s,n,a,o=mi(i,r.href);return null==(s=t.conditions)||!s.url||ws[null!==(n=null==(a=t.conditions)?void 0:a.urlMatchType)&&void 0!==n?n:"icontains"](t.conditions.url,o)}return!1}static getWindowLocation(){return null==si?void 0:si.location}static Xh(t){var i;if(A(t.conditions)||A(null==(i=t.conditions)?void 0:i.utm))return!0;var e=pr();if(e.utm_source){var r,s,n,a,o,l,u,h,v=null==(r=t.conditions)||null==(r=r.utm)||!r.utm_campaign||(null==(s=t.conditions)||null==(s=s.utm)?void 0:s.utm_campaign)==e.utm_campaign,d=null==(n=t.conditions)||null==(n=n.utm)||!n.utm_source||(null==(a=t.conditions)||null==(a=a.utm)?void 0:a.utm_source)==e.utm_source,c=null==(o=t.conditions)||null==(o=o.utm)||!o.utm_medium||(null==(l=t.conditions)||null==(l=l.utm)?void 0:l.utm_medium)==e.utm_medium,f=null==(u=t.conditions)||null==(u=u.utm)||!u.utm_term||(null==(h=t.conditions)||null==(h=h.utm)?void 0:h.utm_term)==e.utm_term;return v&&c&&f&&d}return!1}static Gh(t){for(var i=arguments.length,e=new Array(i>1?i-1:0),r=1;i>r;r++)e[r-1]=arguments[r];vi.info("[WebExperiments] "+t,e)}Qh(t,i,e){this._is_bot()?Ss.Gh(ys):"control"!==i?e.forEach((e=>{if(e.selector){var r;Ss.Gh("applying transform of variant "+i+" for experiment "+t+" ",e);var s=null==(r=document)?void 0:r.querySelectorAll(e.selector);null==s||s.forEach((t=>{var i=t;e.html&&(i.innerHTML=e.html),e.css&&i.setAttribute("style",e.css)}))}})):Ss.Gh("Control variants leave the page unmodified.")}_is_bot(){return ai&&this._instance?function(t,i){if(!t)return!1;var e=t.userAgent;if(e&&g(e,i))return!0;try{var r=null==t?void 0:t.userAgentData;if(null!=r&&r.brands&&r.brands.some((t=>g(null==t?void 0:t.brand,i))))return!0}catch(t){}return!!t.webdriver}(ai,this.gn.custom_blocked_useragents):void 0}}var xs=di("[Conversations]"),ks="Conversations not available yet.";function Es(t,i){var r,s,n,a,o,l,u,h=null!==(r=null==t?void 0:t.flushIntervalMs)&&void 0!==r?r:3e3,v=null!==(s=null==t?void 0:t.maxBufferSize)&&void 0!==s?s:100,d=null!=i&&i.consoleCapture?void 0:null!==(n=null==t?void 0:t.maxLogsPerInterval)&&void 0!==n?n:1e3,c=F(d)?Math.max(v,2048):Math.max(v,d),f=e({},function(){var t="",i="";try{var r=null==ai?void 0:ai.userAgent;if(r){var s=function(t){for(var i=0;Q.length>i;i++){var e=Q[i],r=e[1],s=e[0].exec(t),n=s&&(x(r)?r(s,t):r);if(n)return n}return["",""]}(r);t=s[0],i=s[1]}}catch(t){}return function(t,i){var r=function(t){if(t)return{}.hasOwnProperty.call(vt,t)?vt[t]:t}(t);return e({},r?{"os.name":r}:{},i?{"os.version":i}:{})}(t,i)}(),null==t?void 0:t.resourceAttributes);return{serviceName:null!==(a=null!==(o=null==f?void 0:f["service.name"])&&void 0!==o?o:null==t?void 0:t.serviceName)&&void 0!==a?a:null==i?void 0:i.serviceNameDefault,serviceVersion:null!==(l=null==f?void 0:f["service.version"])&&void 0!==l?l:null==t?void 0:t.serviceVersion,environment:null!==(u=null==f?void 0:f["deployment.environment"])&&void 0!==u?u:null==t?void 0:t.environment,resourceAttributes:f,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:h,maxBufferSize:v,maxQueueSize:c,maxBatchRecordsPerPost:100,rateCapWindowMs:h,maxLogsPerInterval:d,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}var Fs=["debug","log","warn","error","info"],Ps="console",Cs="__posthogHandledLogsRequestError",Ts=(t,i)=>{var e=t instanceof Error?t:new Error(i);return e[Cs]=!0,e},As=t=>!!t&&"object"==typeof t&&!0===t[Cs],Rs={featureFlags:class{constructor(t){this.name="featureFlags",this.td=!1,this.featureFlagEventHandlers=[],this.A=hs,this.ed={},this.rd={},this.nd=[],this.sd=!1,this.ad=!1,this.od=0,this.ld=!1,this.ud=!1,this.hd=!1,this.dd=!1,this.vd=0,this.zt=()=>{var t=this.fd();this.vd=0,t&&this.reloadFeatureFlags()},this.pd=()=>{var t,i=this.gd;F(i)||this.gn.remoteRequestsDisabled||!oi||"hidden"===oi.visibilityState||Date.now()-(null!==(t=this.md)&&void 0!==t?t:0)<i||(this.reloadFeatureFlags(),this.yd())},this.Wt=()=>{"visible"===(null==oi?void 0:oi.visibilityState)&&this.pd()},"get"in t?this.Os=t:(this._instance=t,this.bd=new us(t.config,t._shouldDisableFlags()),this.Os=this.bd)}updateConfig(t,i){var e;null==(e=this.bd)||e.update(t,i),this.$s&&this._d()}setup(t){return this.Iu=t,this.A=t.logger.createLogger("[FeatureFlags]"),Hr(t.kv.initialize(),(()=>{this.Iu===t&&(this.Iu=void 0,this.$s=t,this.wd(t))}))}wd(t){var i;if(this.$s===t)return si&&_i(si,"online",this.zt),this._d(),this.kd=t.registerDynamicEventProperties((()=>this.Sd()?this.ed:this.rd)),this.xd=null==(i=this._instance)||null==(i=i.persistence)?void 0:i.onCrossTabFeatureFlagChange((()=>{this.Cd(),this.Td()})),this.Cd(),this.initialize()}_d(){var t=this.gn.refreshIntervalMs,i=!this.gn.remoteRequestsDisabled&&oi&&!F(t)&&t>0?t:void 0;i!==this.gd&&(this.Md(),F(i)||(this.gd=i,this.yd(),null!=oi&&oi.addEventListener&&_i(oi,Be,this.Wt)))}yd(){F(this.gd)||(F(this.Ed)||clearInterval(this.Ed),this.md=Date.now(),this.Ed=setInterval(this.pd,this.gd))}Md(){F(this.Ed)||(clearInterval(this.Ed),this.Ed=void 0,null==oi||null==oi.removeEventListener||oi.removeEventListener(Be,this.Wt)),this.gd=void 0,this.md=void 0}destroy(){this.Id()}dispose(){this.Id()}Id(){var t,i;this.Md(),this.od++,this.ud=!1,this.Iu=void 0,this.$s&&(this.Rd(),null==(t=this.kd)||t.dispose(),this.kd=void 0,null==(i=this.xd)||i.call(this),this.xd=void 0,this.nd=[],null==si||si.removeEventListener("online",this.zt),this.$s=void 0)}get gn(){return this.Os.get()}Pd(t){var i;return null==(i=this.$s)?void 0:i.kv.get(t)}ii(t){this.Ad((()=>{var i;return null==(i=this.$s)?void 0:i.kv.set(t)}))}Fd(t,i,e){var r;if(null!=(r=this._instance)&&r.persistence&&t[be]){var s=this.Pd(be)||{},n=t[be]||{},a=i.flags||i.featureFlags,o=i.flags?Object.entries(i.flags).filter((t=>{var i=t[1];return!(null!=i&&i.failed)})).map((t=>t[0])):[],l=!!i.errorsWhileComputingFlags&&!!i.flags,u=l?o:e&&!S(a)?Object.keys(a||{}):Array.from(new Set([...Object.keys(s),...Object.keys(n)])),h=this.Pd(Se)||{},v=t[Se]||{},d=l||e?u:Array.from(new Set([...Object.keys(h),...Object.keys(v)])),c=!l&&!e,f=!!c||u,p={[me]:f,[be]:f,[Se]:!!c||d};for(var g of(t[we]&&(p[we]=f),[xe,De,ke]))F(t[g])||(p[g]=!0);this._instance.persistence.markCrossTabFeatureFlagChanges(p)}}ai(t){this.Ad((()=>{var i;return null==(i=this.$s)?void 0:i.kv.remove(t)}))}Ad(t){try{t()}catch(t){this.A.error("Failed to update feature flag persistence",t)}}Cd(){var t={};for(var i of[me,Se,xe,Ee]){var r=this.Pd(i);F(r)||(t[i]=r)}this.ed=t;var s=e({},t),n=this.Pd(be);if(n)for(var a of Object.entries(n))s["$feature/"+a[0]]=a[1];this.rd=s}Sd(){var t=this.gn.cacheTtlMs;if(!t||0>=t)return!1;var i=this.Pd(De);return"number"!=typeof i||Date.now()-i>t}Od(){return!!this.Sd()&&(this.dd||this.ad||(this.dd=!0,this.A.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}Ld(){var t=this.gn.evaluationContexts;return null!=t&&t.length?t.filter((t=>{var i=t&&"string"==typeof t&&t.trim().length>0;return i||this.A.error("Invalid evaluation context found:",t,"Expected non-empty string"),i})):[]}Dd(){var t=this.gn.flagKeys;if(!F(t))return t.filter((t=>{var i=t&&"string"==typeof t&&t.trim().length>0;return i||this.A.error("Invalid flag key found:",t,"Expected non-empty string"),i}))}initialize(){var t,i,e=this.gn,r=null!==(t=null==(i=e.bootstrap)?void 0:i.featureFlags)&&void 0!==t?t:{};if(Object.keys(r).length){var s,n,a=null!==(s=null==(n=e.bootstrap)?void 0:n.featureFlagPayloads)&&void 0!==s?s:{},o=Object.keys(r).filter((t=>!!r[t])).reduce(((t,i)=>(t[i]=r[i]||!1,t)),{}),l=Object.keys(a).filter((t=>o[t])).reduce(((t,i)=>(t[i]=a[i],t)),{});return this.$d({featureFlags:o,featureFlagPayloads:l})}}updateFlags(t,i,r){var a,o,l=null!=r&&r.merge&&null!==(a=this.Pd(be))&&void 0!==a?a:{},u=null!=r&&r.merge&&null!==(o=this.Pd(Se))&&void 0!==o?o:{},h=e({},l,t),v=e({},u,i),d={};for(var c of Object.entries(h)){var f=c[0],p=c[1];d[f]={key:f,enabled:s(p),variant:n(p),reason:void 0,metadata:F(null==v?void 0:v[f])?void 0:{id:0,version:void 0,description:void 0,payload:v[f]}}}this.$d({flags:d})}get hasLoadedFlags(){return this.sd}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var t=this.Pd(we),i=this.Pd(Ee),r=this.Pd(Fe);if(!r&&!i)return t||{};var s=fi({},t||{}),n=[...new Set([...Object.keys(r||{}),...Object.keys(i||{})])];for(var a of n){var o,l,u=s[a],h=null==i?void 0:i[a],v=F(h)?null!==(o=null==u?void 0:u.enabled)&&void 0!==o&&o:!!h,d=F(h)?null==u?void 0:u.variant:"string"==typeof h?h:void 0,c=null==r?void 0:r[a],f=e({},u,{enabled:v,variant:v?null!=d?d:null==u?void 0:u.variant:void 0});v!==(null==u?void 0:u.enabled)&&(f.original_enabled=null==u?void 0:u.enabled),d!==(null==u?void 0:u.variant)&&(f.original_variant=null==u?void 0:u.variant),c&&(f.metadata=e({},null==u?void 0:u.metadata,{payload:c,original_payload:null==u||null==(l=u.metadata)?void 0:l.payload})),s[a]=f}return this.td||(this.A.warn(" Overriding feature flag details!",{flagDetails:t,overriddenPayloads:r,finalDetails:s}),this.td=!0),s}getAllFeatureFlags(){var t=this.getFlagVariants(),i=this.getFlagPayloads();return Object.keys(t).map((e=>{var a=t[e];return{key:e,enabled:s(a),variant:n(a),payload:r(i[e])}}))}getFlagVariants(){var t=this.Pd(be),i=this.Pd(Ee);if(!i)return t||{};for(var e=fi({},t||{}),r=Object.keys(i),s=0;r.length>s;s++)e[r[s]]=i[r[s]];return this.td||(this.A.warn(" Overriding feature flags!",{enabledFlags:t,overriddenFlags:i,finalFlags:e}),this.td=!0),e}getFlagPayloads(){var t=this.Pd(Se),i=this.Pd(Fe);if(!i)return t||{};for(var e=fi({},t||{}),r=Object.keys(i),s=0;r.length>s;s++)e[r[s]]=i[r[s]];return this.td||(this.A.warn(" Overriding feature flag payloads!",{flagPayloads:t,overriddenPayloads:i,finalPayloads:e}),this.td=!0),e}reloadFeatureFlags(){this.ld||this.gn.featureFlagsDisabled||this.fd()||this.Nd||(this.nd.slice().forEach((t=>{try{t()}catch(t){this.A.error("Error while running feature flags reloading callback",t)}})),this.Nd=setTimeout((()=>{this.qd()}),5))}Rd(){clearTimeout(this.Nd),this.Nd=void 0}onReloading(t){return this.nd.push(t),()=>{this.nd=this.nd.filter((i=>i!==t))}}ensureFlagsLoaded(){this.sd||this.ad||this.Nd||this.reloadFeatureFlags()}setAnonymousDistinctId(t){this.$anon_distinct_id=t}setReloadingPaused(t){this.ld=t}resetFlagCallReported(){this.ai($e)}qd(t){this.Rd();var i=this.$s;if(i&&!this.gn.remoteRequestsDisabled&&!this.fd())if(this.ad)this.ud=!0;else{var r={token:i.projectToken,distinct_id:i.distinctId,groups:i.groups,$anon_distinct_id:this.$anon_distinct_id,person_properties:e({},i.initialPersonProperties,this.Pd(Pe)||{},{$lib:i.library.name,$lib_version:i.library.version}),group_properties:this.Pd(Ce),timezone:gr()};F(i.deviceId)||(r.$device_id=i.deviceId),(null!=t&&t.disableFlags||this.gn.featureFlagsDisabled)&&(r.disable_flags=!0);var s=this.Ld();s.length&&(r.evaluation_contexts=s);var n=this.Dd();F(n)||(r.flag_keys=n);var a=this.gn.onlyEvaluateSurveyFeatureFlags,o="/flags/?v=2"+(a?"&only_evaluate_survey_feature_flags=true":""),l=this.od;this.ad=!0;var u=()=>{this.ud&&(this.ud=!1,this.qd())},h=t=>{this.ad=!1,l===this.od?(this.ii({[Le]:[cs]}),this.A.error("Feature flag request failed",t),u()):u()};try{i.sendRequest(o,{target:"flags",method:"POST",body:r,compression:this.gn.compression,sentAt:"body",timeoutMs:this.gn.requestTimeoutMs}).then((t=>{var i,e,s=null!==(i=t.json)&&void 0!==i?i:{},n=200!==t.statusCode;if(this.ad=!1,l===this.od){if(this.jd(t.statusCode),n||this.ud||(this.$anon_distinct_id=void 0),!r.disable_flags||this.ud){this.hd=!n;var o=[];t.error?o.push(t.error instanceof Error&&"AbortError"===t.error.name?"timeout":t.error instanceof Error?cs:"unknown_error"):200!==t.statusCode&&o.push("api_error_"+t.statusCode),s.errorsWhileComputingFlags&&o.push("errors_while_computing_flags");var h=!(null==(e=s.quotaLimited)||!e.includes("feature_flags"));h&&o.push("quota_limited"),this.ii({[Le]:o}),h?this.A.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."):r.disable_flags||this.$d(s,n,{partialResponse:a}),u()}}else u()})).catch(h)}catch(t){h(t)}}}fd(){return We(this.vd,3)}jd(t){this.vd=Ke(t,this.vd,3,(()=>this.A.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(t,i){var e;if(void 0===i&&(i={}),!i.fresh||this.hd)if(this.sd||this.getFlags()&&this.getFlags().length>0){if(!this.Od()){var r=this.getFeatureFlagResult(t,i);return null!==(e=null==r?void 0:r.variant)&&void 0!==e?e:null==r?void 0:r.enabled}}else this.A.warn('getFeatureFlag for key "'+t+ds)}getFeatureFlagDetails(t){return this.getFlagsWithDetails()[t]}getFeatureFlagPayload(t){var i=this.getFeatureFlagResult(t,{send_event:!1});return null==i?void 0:i.payload}getFeatureFlagResult(t,i){if(void 0===i&&(i={}),!i.fresh||this.hd)if(this.sd||this.getFlags()&&this.getFlags().length>0){if(!this.Od()){var s,n=this.getFlagVariants(),a=t in n,o=n[t],l=this.getFlagPayloads()[t],u=String(o),h=this.Pd(xe)||void 0,v=this.Pd(De)||void 0,d=this.Pd($e)||{};if(this.gn.deduplicateCallsPerSession){var c,f=null==(c=this.$s)?void 0:c.session.sessionId,p=this.Pd(je);f&&f!==p&&(d={},s=f)}if(i.send_event||!("send_event"in i))if(t in d&&d[t].includes(u))s&&this.ii({[$e]:d,[je]:s});else{var g,_,b,m,y,w,x,k,E,P,C,T;S(d[t])?d[t].push(u):d[t]=[u],this.ii(e({[$e]:d},s?{[je]:s}:{}));var A=this.getFeatureFlagDetails(t),R=[...null!==(g=this.Pd(Le))&&void 0!==g?g:[]];F(o)&&R.push("flag_missing");var O={$feature_flag:t,$feature_flag_response:o,$feature_flag_payload:null!=l?l:null,$feature_flag_request_id:h,$feature_flag_evaluated_at:v,$feature_flag_bootstrapped_response:null!==(_=null==(b=this.gn.bootstrap)||null==(b=b.featureFlags)?void 0:b[t])&&void 0!==_?_:null,$feature_flag_bootstrapped_payload:null!==(m=null==(y=this.gn.bootstrap)||null==(y=y.featureFlagPayloads)?void 0:y[t])&&void 0!==m?m:null,$used_bootstrap_value:!this.hd};F(null==A||null==(w=A.metadata)?void 0:w.has_experiment)||(O.$feature_flag_has_experiment=A.metadata.has_experiment),F(null==A||null==(x=A.metadata)?void 0:x.version)||(O.$feature_flag_version=A.metadata.version);var M,I=null!==(k=null==A||null==(E=A.reason)?void 0:E.description)&&void 0!==k?k:null==A||null==(P=A.reason)?void 0:P.code;I&&(O.$feature_flag_reason=I),null!=A&&null!=(C=A.metadata)&&C.id&&(O.$feature_flag_id=A.metadata.id),F(null==A?void 0:A.original_variant)&&F(null==A?void 0:A.original_enabled)||(O.$feature_flag_original_response=F(A.original_variant)?A.original_enabled:A.original_variant),null!=A&&null!=(T=A.metadata)&&T.original_payload&&(O.$feature_flag_original_payload=null==A||null==(M=A.metadata)?void 0:M.original_payload),R.length&&(O.$feature_flag_error=R.join(",")),this.Bd(O)}else s&&this.ii({[$e]:d,[je]:s});if(a)return{key:t,enabled:!!o,variant:"string"==typeof o?o:void 0,payload:r(l)}}}else this.A.warn('getFeatureFlagResult for key "'+t+ds)}Bd(t){try{var i;null==(i=this.$s)||i.capture("$feature_flag_called",t).catch((t=>{this.A.error("Failed to capture feature flag call",t)}))}catch(t){this.A.error("Failed to capture feature flag call",t)}}getRemoteConfigPayload(t,i){this.Hd(t,i)}Hd(t,e){var r=this;return i((function*(){var i=r.$s;if(i){var s={distinct_id:i.distinctId,token:i.projectToken,person_properties:{$lib:i.library.name,$lib_version:i.library.version}},n=r.Ld();n.length&&(s.evaluation_contexts=n);var a,o=r.Dd();F(o)||(s.flag_keys=o);try{var l,u=null==(l=(yield i.sendRequest("/flags/?v=2",{target:"flags",method:"POST",body:s,compression:r.gn.compression,sentAt:"body",timeoutMs:r.gn.requestTimeoutMs})).json)?void 0:l.featureFlagPayloads;a=(null==u?void 0:u[t])||void 0}catch(t){return void r.A.error("Remote config feature flag request failed",t)}try{e(a)}catch(t){r.A.error("Remote config feature flag callback failed",t)}}}))()}isFeatureEnabled(t,i){if(void 0===i&&(i={}),i.fresh&&!this.hd)return i.defaultValue;if(!(this.sd||this.getFlags()&&this.getFlags().length>0))return this.A.warn('isFeatureEnabled for key "'+t+ds),i.defaultValue;var e=this.getFeatureFlag(t,i);return F(e)?i.defaultValue:!!e}addFeatureFlagsHandler(t){this.featureFlagEventHandlers.push(t)}removeFeatureFlagsHandler(t){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter((i=>i!==t))}receivedFeatureFlags(t,i,e){this.$d(t,i,e)}$d(t,i,r){if(this.$s){this.sd=!0;var s=function(t,i,r,s,n,a){void 0===i&&(i={}),void 0===r&&(r={}),void 0===s&&(s={}),void 0===a&&(a=hs);var o=((t,i)=>{var r=t.flags;return r?e({},t,{featureFlags:Object.fromEntries(Object.keys(r).map((t=>{var i;return[t,null!==(i=r[t].variant)&&void 0!==i?i:r[t].enabled]}))),featureFlagPayloads:Object.fromEntries(Object.keys(r).filter((t=>r[t].enabled)).filter((t=>{var i;return!F(null==(i=r[t].metadata)?void 0:i.payload)})).map((t=>{var i;return[t,null==(i=r[t].metadata)?void 0:i.payload]})))}):(t.featureFlags&&i.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),t)})(t,a),l=o.flags,u=o.featureFlags,h=o.featureFlagPayloads;if(u){var v=t.requestId,d=t.evaluatedAt;if(S(u)){a.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");var c={};if(u)for(var f=0;u.length>f;f++)c[u[f]]=!0;return{[me]:u,[be]:c,[ke]:!1}}var p=u,g=h,_=l;if(null!=n&&n.partialResponse){var b=Object.keys(p),m=g||{};p=e({},i,p),g=e({},r,m),b.forEach((t=>{var i;t in m||null==(i=g)||delete i[t]})),_=e({},s,_)}else if(t.errorsWhileComputingFlags)if(l){var y=new Set(Object.keys(l).filter((t=>{var i;return!(null!=(i=l[t])&&i.failed)})));p=e({},i,Object.fromEntries(Object.entries(p).filter((t=>y.has(t[0])))));var w=Object.fromEntries(Object.entries(g||{}).filter((t=>y.has(t[0]))));g=e({},r,w),y.forEach((t=>{var i;t in w||null==(i=g)||delete i[t]})),_=e({},s,Object.fromEntries(Object.entries(_||{}).filter((t=>y.has(t[0])))))}else p=e({},i,p),g=e({},r,g),_=e({},s,_);return e({[me]:Object.keys(ps(p)),[be]:p||{},[Se]:g||{},[we]:_||{},[ke]:!0===t.minimalFlagCalledEvents},v?{[xe]:v}:{},d?{[De]:d}:{})}}(t,this.getFlagVariants(),this.getFlagPayloads(),this.getFlagsWithDetails(),r,this.A);s&&(this.Fd(s,t,!(null==r||!r.partialResponse)),this.ii(s)),i||(this.dd=!1),this.Td(i)}}override(t,i){void 0===i&&(i=!1),this.A.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:t,suppressWarning:i})}overrideFeatureFlags(t){this.zd(t)}zd(t){if(this.$s){if(!1===t)return this.ai([Ee,Fe]),this.Td(),void vs.info("All overrides cleared");if(S(t))return this.ii({[Ee]:fs(t)}),this.Td(),void vs.info("Flag overrides set",{flags:t});if(t&&"object"==typeof t&&("flags"in t||"payloads"in t)){var i,e=t;this.td=Boolean(null!==(i=e.suppressWarning)&&void 0!==i&&i);var r={},s=e.flags,n=e.payloads;return s&&(r[Ee]=S(s)?fs(s):s),n&&(r[Fe]=n),Object.keys(r).length&&this.ii(r),!1===s&&!1===n?this.ai([Ee,Fe]):!1===s?this.ai(Ee):!1===n&&this.ai(Fe),this.Td(),!1===s?vs.info("Flag overrides cleared"):s&&vs.info("Flag overrides set",{flags:s}),void(!1===n?vs.info("Payload overrides cleared"):n&&vs.info("Payload overrides set",{payloads:n}))}if(t&&"object"==typeof t)return this.ii({[Ee]:t}),this.Td(),void vs.info("Flag overrides set",{flags:t});this.A.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:t})}else this.A.warn("posthog.featureFlags.overrideFeatureFlags called before feature flags were ready")}onFeatureFlags(t){if(this.addFeatureFlagsHandler(t),this.sd){var i=this.Ud(),e=i.flags,r=i.flagVariants;try{t(e,r)}catch(t){this.A.error("Error while running feature flags callback",t)}}return()=>this.removeFeatureFlagsHandler(t)}updateEarlyAccessFeatureEnrollment(t,i,r){var s,n=(this.Pd(ye)||[]).find((i=>i.flagKey===t)),a={["$feature_enrollment/"+t]:i},o={$feature_flag:t,$feature_enrollment:i,$set:a};n&&(o.$early_access_feature_name=n.name),r&&(o.$feature_enrollment_stage=r);var l=e({},this.getFlagVariants(),{[t]:i});null==(s=this._instance)||null==(s=s.persistence)||s.markCrossTabFeatureFlagChanges({[me]:[t],[be]:[t],[Pe]:Object.keys(a)}),this.ii({[me]:Object.keys(ps(l)),[be]:l,[Pe]:e({},this.Pd(Pe)||{},a)}),this.Td();try{var u;null==(u=this.$s)||u.capture("$feature_enrollment_update",o).catch((t=>{this.A.error("Failed to capture early access feature enrollment",t)}))}catch(t){this.A.error("Failed to capture early access feature enrollment",t)}}getEarlyAccessFeatures(t,i,e){void 0===i&&(i=!1);var r=this.Pd(ye);!r||i?this.Wd(t,e):t(r)}Wd(t,e){var r=this;return i((function*(){var i=r.$s;if(i){var s,n=e?"&"+e.map((t=>"stage="+t)).join("&"):"";try{var a=yield i.sendRequest("/api/early_access_features/?token="+i.projectToken+n,{target:"api",method:"GET",sentAt:"query"});if(!a.json)return;r.ii({[ye]:s=a.json.earlyAccessFeatures})}catch(t){return void r.A.error("Early access feature request failed",t)}try{t(s)}catch(t){r.A.error("Early access feature callback failed",t)}}}))()}Ud(){var t=this.getFlags(),i=this.getFlagVariants();return{flags:t.filter((t=>i[t])),flagVariants:Object.keys(i).filter((t=>i[t])).reduce(((t,e)=>(t[e]=i[e],t)),{})}}Td(t){this.Cd();var i=this.Ud(),e=i.flags,r=i.flagVariants;this.featureFlagEventHandlers.forEach((i=>{try{i(e,r,{errorsLoading:t})}catch(t){this.A.error("Error while running feature flags callback",t)}}))}setPersonPropertiesForFlags(t,i){void 0===i&&(i=!0),this.Vd(t,i)}Vd(t,i){void 0===i&&(i=!0);var r=this.Pd(Pe)||{},s=(null==t?void 0:t.$set)||(null!=t&&t.$set_once?{}:t),n=null==t?void 0:t.$set_once,a={};if(n)for(var o in n)({}).hasOwnProperty.call(n,o)&&(o in r||(a[o]=n[o]));this.ii({[Pe]:e({},r,a,s)}),i&&this.reloadFeatureFlags()}unsetPersonPropertiesForFlags(t,i){void 0===i&&(i=!0);var r=e({},this.Pd(Pe)||{});t.forEach((t=>{delete r[t]})),this.ii({[Pe]:r}),i&&this.reloadFeatureFlags()}resetPersonPropertiesForFlags(t){void 0===t&&(t=!0),this.ai(Pe),t&&this.reloadFeatureFlags()}setGroupPropertiesForFlags(t,i){void 0===i&&(i=!0);var r=this.Pd(Ce)||{},s=e({},r);for(var n of Object.keys(t))s[n]=e({},r[n],t[n]);this.ii({[Ce]:s}),i&&this.reloadFeatureFlags()}resetGroupPropertiesForFlags(t){if(t){var i=this.Pd(Ce)||{};this.ii({[Ce]:e({},i,{[t]:{}})})}else this.ai(Ce)}reset(){this.od++,this.ud=!1,this.ed={},this.rd={},this.sd=!1,this.ld=!1,this.hd=!1,this.$anon_distinct_id=void 0,this.Rd(),this.td=!1,this.vd=0}}},Os={sessionRecording:class{get gn(){return this._instance.config}get $o(){return this._instance.persistence}get started(){var t;return!(null==(t=this.Gd)||!t.isStarted)}get status(){var t,i;return this.Zd===Fr||this.Zd===Pr?this.Zd:null!==(t=null==(i=this.Gd)?void 0:i.status)&&void 0!==t?t:this.Zd}constructor(t){if(this._forceAllowLocalhostNetworkCapture=!1,this.Zd=kr,this.Qd=void 0,this.Jd=!1,this.qt=(()=>{var t;if(null==oi||!oi.visibilityState||"visible"===oi.visibilityState)return!0;var i=null==si||null==(t=si.performance)||null==t.getEntriesByType?void 0:t.getEntriesByType("visibility-state");return!(null!=i&&i.length)||i.some((t=>"visible"===t.name))})(),this.Wt=()=>{var t;"visible"===(null==oi?void 0:oi.visibilityState)&&(this.qt=!0,null==(t=this.Gd)||null==t.setDocumentWasEverVisible||t.setDocumentWasEverVisible(!0))},this._instance=t,!this._instance.sessionManager)throw Ir.error("started without valid sessionManager"),new Error(Mr+" started without valid sessionManager. This is a bug.");if("always"===this.gn.cookieless_mode)throw new Error(Mr+' cannot be used with cookieless_mode="always"');null!=oi&&oi.addEventListener&&_i(oi,"visibilitychange",this.Wt)}initialize(){this.startIfEnabledOrStop()}dispose(t){var i=(void 0===t?{}:t).discardBufferedEvents,e=void 0!==i&&i;this.Jd=!0,null==oi||null==oi.removeEventListener||oi.removeEventListener("visibilitychange",this.Wt),e?this.Kd(!0):this.stopRecording()}get Yd(){var t,i=!(null==(t=this._instance.get_property(_e))||!t.enabled),e=!this.gn.disable_session_recording,r=this.gn.disable_session_recording||this._instance.consent.isOptedOut();return si&&i&&e&&!r}startIfEnabledOrStop(t){var i;if(!(this.Jd||this.Yd&&null!=(i=this.Gd)&&i.isStarted)){var e=!F(Object.assign)&&!F(Array.from);this.Yd&&e?(this.Xd(t),Ir.info("starting")):(this.Zd=kr,this.stopRecording())}}Xd(t){var i,e;if(this.Yd)if(this.Zd!==Fr&&this.Zd!==Pr&&(this.Zd=Er),null!=er&&null!=(i=er.__PosthogExtensions__)&&null!=(i=i.rrweb)&&i.record&&null!=(e=er.__PosthogExtensions__)&&e.initSessionRecording)this.tv(t);else{var r,s=this._instance.sessionManager;null==(r=er.__PosthogExtensions__)||null==r.loadExternalDependency||r.loadExternalDependency(this._instance,this.ev,(i=>{if(!this.Jd&&this.Yd&&this._instance.sessionManager===s)return i?(this._instance.register_for_session({[Ne]:!0}),Ir.error("could not load recorder",i)):void this.tv(t);this.Zd=kr}))}}stopRecording(){var t,i;null==(t=this.Qd)||t.call(this),this.Qd=void 0,null==(i=this.Gd)||i.stop()}Kd(t){var i,e;void 0===t&&(t=!1),null==(i=this.Qd)||i.call(this),this.Qd=void 0,null==(e=this.Gd)||e.discard({discardProducerEvents:t})}iv(){var t,i;null==(t=this.$o)||t.unregister("$session_is_sampled"),null==(i=this.$o)||i.unregister("$replay_sample_rate")}rv(t,i){if(A(t))return null;var e,r=R(t)?t:parseFloat(t);return"number"!=typeof(e=r)||!Number.isFinite(e)||0>e||e>1?(Ir.warn(i+" must be between 0 and 1. Ignoring invalid value:",t),null):r}nv(t){if(this.$o){var i,r,s=this.$o,n=()=>{var i,r=!1===t.sessionRecording?void 0:t.sessionRecording,n=this.rv(null==(i=this.gn.session_recording)?void 0:i.sampleRate,"session_recording.sampleRate"),a=this.rv(null==r?void 0:r.sampleRate,"remote config sampleRate"),o=null!=n?n:a;A(o)&&this.iv();var l=null==r?void 0:r.minimumDurationMilliseconds;s.register({[_e]:e({cache_timestamp:Date.now(),enabled:!!r},r,{networkPayloadCapture:e({capturePerformance:t.capturePerformance},null==r?void 0:r.networkPayloadCapture),canvasRecording:{enabled:null==r?void 0:r.recordCanvas,fps:null==r?void 0:r.canvasFps,quality:null==r?void 0:r.canvasQuality},sampleRate:o,minimumDurationMilliseconds:F(l)?null:l,endpoint:null==r?void 0:r.endpoint,triggerMatchType:null==r?void 0:r.triggerMatchType,masking:null==r?void 0:r.masking,urlTriggers:null==r?void 0:r.urlTriggers,version:null==r?void 0:r.version,triggerGroups:null==r?void 0:r.triggerGroups})})};n(),null==(i=this.Qd)||i.call(this),this.Qd=null==(r=this._instance.sessionManager)?void 0:r.onSessionId(n)}}onRemoteConfig(t){var i=t.ok?t.config:void 0;return i&&"sessionRecording"in i?!1===i.sessionRecording?(this.nv(i),void this.Kd()):(this.nv(i),void this.startIfEnabledOrStop()):(this.Zd===Fr&&(this.Zd=Pr,Ir.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(t,i){var e;void 0===i&&(i="log"),null!=(e=this.Gd)&&e.log?this.Gd.log(t,i):Ir.warn("log called before recorder was ready")}get ev(){var t,i,e=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.get_property(_e);return(null==e||null==(i=e.scriptConfig)?void 0:i.script)||"lazy-recorder"}sv(){var t,i=this._instance.get_property(_e);if(!i)return!1;try{t="object"==typeof i?i:JSON.parse(i)}catch(t){return Ir.warn("persisted remote config for session recording is invalid and will be ignored",t),!1}return!A(t.cache_timestamp)&&36e5>=Date.now()-t.cache_timestamp}tv(t){var i,e,r;if(!this.Jd&&this.Yd&&this._instance.sessionManager){if(null==(i=er.__PosthogExtensions__)||!i.initSessionRecording)return Ir.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[Ne]:!0});var s;if(this.Gd||(this.Gd=null==(s=er.__PosthogExtensions__)?void 0:s.initSessionRecording(this._instance,this.qt),this.Gd._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.sv()){if(this.Zd===Pr||this.Zd===Fr)return;return this.Zd=Fr,Ir.info("persisted remote config is stale, requesting fresh config before starting"),void new xr(this._instance).load()}this.Zd=Er,null==(e=(r=this.Gd).setDocumentWasEverVisible)||e.call(r,this.qt),this.Gd.start(t)}else this.Zd=kr}onRRwebEmit(t){var i;null==(i=this.Gd)||null==i.onRRwebEmit||i.onRRwebEmit(t)}overrideLinkedFlag(){var t,i;this.Gd||null==(i=this.$o)||i.register({$replay_override_linked_flag:!0}),null==(t=this.Gd)||t.overrideLinkedFlag()}overrideSampling(){var t,i;this.Gd||null==(i=this.$o)||i.register({$replay_override_sampling:!0}),null==(t=this.Gd)||t.overrideSampling()}overrideTrigger(t){var i,e;this.Gd||null==(e=this.$o)||e.register({["url"===t?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),null==(i=this.Gd)||i.overrideTrigger(t)}get sdkDebugProperties(){var t;return(null==(t=this.Gd)?void 0:t.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(t,i){var e;return!(null==(e=this.Gd)||!e.tryAddCustomEvent(t,i))}}},Ms={autocapture:class extends Ye{constructor(t){super(new tr(t)),this.instance=t}},historyAutocapture:class{constructor(t){this._instance=t,this.av=this.ov()}initialize(){this.startIfEnabled()}get isEnabled(){var t=this.lv();return!!(t.path||t.search||this.uv(t))}startIfEnabled(){this.isEnabled&&(vi.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}startIfEnabledOrStop(){this.stop(),this.av=this.ov(),this.startIfEnabled()}stop(){this.hv&&this.hv(),this.hv=void 0,this.dv&&this.dv(),this.dv=void 0,vi.info("History API monitoring stopped")}monitorHistoryChanges(){si&&si.history&&(this.vv("pushState"),this.vv("replaceState"),this.fv(),this.uv()&&this.pv())}vv(t){var i;if(si&&(null==(i=si.history[t])||!i.__posthog_wrapped__)){var e=this;ur(si.history,t,(i=>function(r,s,n){i.call(this,r,s,n),e.gv(t)}))}}ov(){var t=null==si?void 0:si.location;if(null!=t&&t.pathname)return{pathname:t.pathname,search:t.search,hash:t.hash}}lv(){var t=this._instance.config.capture_pageview;return"history_change"===t?{path:!0}:k(t)?t:{}}uv(t){return void 0===t&&(t=this.lv()),!!t.hash&&!this._instance.config.disable_capture_url_hashes}mv(t){var i=this.lv(),e=this.av;return!(!e||!(i.path&&t.pathname!==e.pathname||i.search&&t.search!==e.search||this.uv(i)&&t.hash!==e.hash))}gv(t){try{var i=this.ov();if(!i)return;this.mv(i)&&this._instance.capture("$pageview",{navigation_type:t}),this.av=i}catch(i){vi.error("Error capturing "+t+" pageview",i)}}fv(){if(!this.hv){var t=()=>{this.gv("popstate")};_i(si,"popstate",t),this.hv=()=>{si&&si.removeEventListener("popstate",t)}}}pv(){if(!this.dv){var t=()=>{this.gv("hashchange")};_i(si,"hashchange",t),this.dv=()=>{si&&si.removeEventListener("hashchange",t)}}}},heatmaps:class{get gn(){return this.instance.config}constructor(t){var i;this.yv=!1,this.Is=!1,this.bv=null,this.instance=t,this.yv=!(null==(i=this.instance.persistence)||!i.props[ue]),this.rageclicks=new oe(t.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){var t=5e3;return k(this.gn.capture_heatmaps)&&this.gn.capture_heatmaps.flush_interval_milliseconds&&(t=this.gn.capture_heatmaps.flush_interval_milliseconds),t}get isEnabled(){return A(this.gn.capture_heatmaps)?A(this.gn.enable_heatmaps)?this.yv:this.gn.enable_heatmaps:!1!==this.gn.capture_heatmaps}startIfEnabled(){if(this.isEnabled){if(this.Is)return;$r.info("starting..."),this._v(),this.Wt()}else{var t;clearInterval(null!==(t=this.bv)&&void 0!==t?t:void 0),this.wv(),this.getAndClearBuffer()}}onRemoteConfig(t){if(t.ok){var i=t.config;if("heatmaps"in i){var e=!!i.heatmaps;this.instance.persistence&&this.instance.persistence.register({[ue]:e}),this.yv=e,this.startIfEnabled()}}}getAndClearBuffer(){var t=this.Dt;return this.Dt=void 0,t}Sv(t){jr(t.originalEvent)&&this.Ki(t.originalEvent,"deadclick")}Wt(){this.bv&&clearInterval(this.bv),this.bv="visible"===(null==oi?void 0:oi.visibilityState)?setInterval(this.Mo.bind(this),this.flushIntervalMilliseconds):null}_v(){si&&oi&&(this.xv=this.Mo.bind(this),_i(si,He,this.xv),this.Cv=t=>this.Ki(t||(null==si?void 0:si.event)),_i(oi,"click",this.Cv,{capture:!0}),this.Tv=t=>this.Mv(t||(null==si?void 0:si.event)),_i(oi,"mousemove",this.Tv,{capture:!0}),this.Ev=new nr(this.instance,sr,this.Sv.bind(this)),this.Ev.startIfEnabledOrStop(),this.Iv=this.Wt.bind(this),_i(oi,Be,this.Iv),this.Is=!0)}wv(){var t;si&&oi&&(this.xv&&si.removeEventListener(He,this.xv),this.Cv&&oi.removeEventListener("click",this.Cv,{capture:!0}),this.Tv&&oi.removeEventListener("mousemove",this.Tv,{capture:!0}),this.Iv&&oi.removeEventListener(Be,this.Iv),clearTimeout(this.Rv),null==(t=this.Ev)||t.stop(),this.Is=!1)}Pv(t,i){var e=this.instance.scrollManager.scrollY(),r=this.instance.scrollManager.scrollX(),s=this.instance.scrollManager.scrollElement(),n=function(t,i,e){for(var r=t;r&&Ei(r)&&!Fi(r,"body");){if(r===e)return!1;var s=void 0;try{var n,a,o;s=null==(n=null!==(a=null==(o=r.ownerDocument)?void 0:o.defaultView)&&void 0!==a?a:si)?void 0:n.getComputedStyle(r).position}catch(t){return!1}if(_(i,s))return!0;r=Di(r)}return!1}($i(t),["fixed","sticky"],s);return{x:t.clientX+(n?0:r),y:t.clientY+(n?0:e),target_fixed:n,type:i}}Ki(t,i){var r;if(void 0===i&&(i="click"),!ki(t.target)&&jr(t)){var s=this.Pv(t,i);null!=(r=this.rageclicks)&&r.isRageClick(t.clientX,t.clientY,(new Date).getTime())&&Vi($i(t),this.instance.config.rageclick)&&this.ys(e({},s,{type:"rageclick"})),this.ys(s)}}Mv(t){!ki(t.target)&&jr(t)&&(clearTimeout(this.Rv),this.Rv=setTimeout((()=>{this.ys(this.Pv(t,"mousemove"))}),500))}ys(t){if(si){var i=this.gn.disable_capture_url_hashes?Y(si.location.href):si.location.href,e=this.gn.custom_personal_data_properties,r=this.gn.mask_personal_data_properties?[...vr,...e||[]]:[],s=Ve(i,r,cr);this.Dt=this.Dt||{},this.Dt[s]||(this.Dt[s]=[]),this.Dt[s].push(t)}}Mo(){this.Dt&&!E(this.Dt)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:nr,webVitalsAutocapture:class{constructor(t){var i;this.yv=!1,this.Is=!1,this.Dt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Av=()=>{clearTimeout(this.Fv),this.Fv=void 0,0!==this.Dt.metrics.length&&(this._instance.capture("$web_vitals",e({$current_url:this.Dt.url},this.Dt.metrics.reduce(((t,i)=>e({},t,{["$web_vitals_"+i.name+"_event"]:e({},i),["$web_vitals_"+i.name+"_value"]:i.value})),{}))),this.Dt={navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.Ov=t=>{var i;if(this.Dt=this.Dt||{navigationKey:void 0,url:void 0,metrics:[],firstMetricTimestamp:void 0},A(null==t?void 0:t.name)||A(null==t?void 0:t.value))_r.error("Invalid metric received",t);else{var r="string"==typeof t.navigationURL?t.navigationURL:void 0,s=this.Lv(r);if(!F(s)){var n=R(t.navigationId)||"string"==typeof t.navigationId?"navigation:"+t.navigationId:"url:"+s;if(!this.Dv||this.Dv>t.value){this.Dt.navigationKey!==n&&(this.Av(),this.Fv=setTimeout(this.Av,this.flushToCaptureTimeoutMs)),F(this.Dt.navigationKey)&&(this.Dt.navigationKey=n,this.Dt.url=s),this.Dt.firstMetricTimestamp=F(this.Dt.firstMetricTimestamp)?Date.now():this.Dt.firstMetricTimestamp;var a=null==(i=this._instance.sessionManager)?void 0:i.checkAndGetSessionAndWindowId(!0),o=e({},t,r?{navigationURL:s}:{},{$current_url:s,timestamp:Date.now()});if(delete o.entries,k(t.attribution)&&this.attributionMetrics.indexOf(t.name)>-1){var l={};for(var u of wr){var h="url"===u&&"string"==typeof t.attribution[u]?this.Lv(t.attribution[u]):t.attribution[u];F(h)||(l[u]=h)}o.attribution=l}else delete o.attribution;F(a)||(o.$session_id=a.sessionId,o.$window_id=a.windowId),this.Dt.metrics.push(o),this.Dt.metrics.length===this.allowedMetrics.length&&this.Av()}else _r.error("Ignoring metric with value >= "+this.Dv,t)}}},this.$v=()=>{if(!this.Is){var t,i,r,s,n=!1,a=er.__PosthogExtensions__,o=null==a?void 0:a.postHogWebVitalsCallbacksByFlavor,l=(null==o?void 0:o[this.Nv])||("web-vitals"===this.Nv&&F(o)?null==a?void 0:a.postHogWebVitalsCallbacks:void 0);if(!F(l)){var u=l.withoutAttribution,h=this.attributionMetrics;n=!F(u),t=h.indexOf("LCP")>-1?l.onLCP:(null==u?void 0:u.onLCP)||l.onLCP,i=h.indexOf("CLS")>-1?l.onCLS:(null==u?void 0:u.onCLS)||l.onCLS,r=h.indexOf("FCP")>-1?l.onFCP:(null==u?void 0:u.onFCP)||l.onFCP,s=h.indexOf("INP")>-1?l.onINP:(null==u?void 0:u.onINP)||l.onINP}if(t&&i&&r&&s){var v={reportSoftNavs:this.useSoftNavs},d=n&&this.attributionMetrics.indexOf("INP")>-1?e({},v,{includeProcessedEventEntries:!1}):v;this.allowedMetrics.indexOf("LCP")>-1&&t(this.Ov.bind(this),v),this.allowedMetrics.indexOf("CLS")>-1&&i(this.Ov.bind(this),v),this.allowedMetrics.indexOf("FCP")>-1&&r(this.Ov.bind(this),v),this.allowedMetrics.indexOf("INP")>-1&&s(this.Ov.bind(this),d),this.Is=!0}else _r.error("web vitals callbacks not loaded - not starting")}},this._instance=t,this.yv=!(null==(i=this._instance.persistence)||!i.props[ce]),this.startIfEnabled()}get qv(){return this._instance.config.capture_performance}get allowedMetrics(){var t,i,e=k(this.qv)?null==(t=this.qv)?void 0:t.web_vitals_allowed_metrics:void 0;return A(e)?(null==(i=this._instance.persistence)?void 0:i.props[ge])||mr:e}get flushToCaptureTimeoutMs(){return(k(this.qv)?this.qv.web_vitals_delayed_flush_ms:void 0)||5e3}get attributionMetrics(){var t=k(this.qv)?this.qv.web_vitals_attribution:void 0;return O(t)?t?mr:[]:S(t)?t:yr}get useAttribution(){return this.attributionMetrics.length>0}get useSoftNavs(){var t=k(this.qv)?this.qv.__preview_web_vitals_soft_navs:void 0;return null!=t&&t}get Dv(){var t=k(this.qv)&&R(this.qv.__web_vitals_max_value)?this.qv.__web_vitals_max_value:br;return t>0&&6e4>=t?br:t}get isEnabled(){var t=null==li?void 0:li.protocol;if("http:"!==t&&"https:"!==t)return _r.info("Web Vitals are disabled on non-http/https protocols"),!1;var i=k(this.qv)?this.qv.web_vitals:O(this.qv)?this.qv:void 0;return O(i)?i:this.yv}startIfEnabled(){this.isEnabled&&!this.Is&&(_r.info("enabled, starting..."),this.Ks(this.$v))}onRemoteConfig(t){if(t.ok){var i=t.config;if("capturePerformance"in i){var e=k(i.capturePerformance)&&!!i.capturePerformance.web_vitals,r=k(i.capturePerformance)?i.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[ce]:e}),this._instance.persistence.register({[ge]:r})),this.yv=e,this.startIfEnabled()}}}get Nv(){return this.useSoftNavs?this.useAttribution?"web-vitals-with-attribution-soft-navs":"web-vitals-soft-navs":this.useAttribution?"web-vitals-with-attribution":"web-vitals"}Ks(t){var i=er.__PosthogExtensions__,e=this.Nv,r=null==i?void 0:i.postHogWebVitalsCallbacksByFlavor;null!=r&&r[e]||"web-vitals"===e&&F(r)&&null!=i&&i.postHogWebVitalsCallbacks?t():null==i||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,e,(i=>{i?_r.error("failed to load script",i):t()}))}Lv(t){var i=t||(null==si?void 0:si.location.href);if(i){var e=this._instance.config.disable_capture_url_hashes?Y(i):i,r=this._instance.config.custom_personal_data_properties,s=this._instance.config.mask_personal_data_properties?[...vr,...r||[]]:[];return Ve(e,s,cr)}_r.error("Could not determine current URL")}}},Is={exceptionObserver:class{constructor(t){var i;this.$v=()=>{var t;if(si&&this.isEnabled&&null!=(t=er.__PosthogExtensions__)&&t.errorWrappingFunctions){var i=er.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,e=er.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,r=er.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.jv&&this.gn.capture_unhandled_errors&&(this.jv=i(this.captureException.bind(this))),!this.Bv&&this.gn.capture_unhandled_rejections&&(this.Bv=e(this.captureException.bind(this))),!this.Hv&&this.gn.capture_console_errors&&(this.Hv=r(this.captureException.bind(this)))}catch(t){ar.error("failed to start",t),this.zv()}}},this._instance=t,this.Uv=!(null==(i=this._instance.persistence)||!i.props[he]),this.pe=new B(e({},function(t){var i,e,r,s;return void 0===t&&(t={}),{refillRate:null!==(i=null!==(e=t.exceptionRateLimiterRefillRate)&&void 0!==e?e:t.__exceptionRateLimiterRefillRate)&&void 0!==i?i:1,bucketSize:null!==(r=null!==(s=t.exceptionRateLimiterBucketSize)&&void 0!==s?s:t.__exceptionRateLimiterBucketSize)&&void 0!==r?r:10}}(this._instance.config.error_tracking),{refillInterval:1e4,A:ar})),this.gn=this.Wv(),this.startIfEnabledOrStop()}Wv(){var t=this._instance.config.capture_exceptions,i={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return k(t)?i=e({},i,t):(F(t)?this.Uv:t)&&(i=e({},i,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),i}get isEnabled(){return this.gn.capture_console_errors||this.gn.capture_unhandled_errors||this.gn.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(ar.info("enabled"),this.zv(),this.Ks(this.$v)):this.zv()}Ks(t){var i,e;null!=(i=er.__PosthogExtensions__)&&i.errorWrappingFunctions?t():null==(e=er.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"exception-autocapture",(i=>{if(i)return ar.error("failed to load script",i);t()}))}zv(){var t,i,e;null==(t=this.jv)||t.call(this),this.jv=void 0,null==(i=this.Bv)||i.call(this),this.Bv=void 0,null==(e=this.Hv)||e.call(this),this.Hv=void 0}onRemoteConfig(t){if(t.ok){var i=t.config;"autocaptureExceptions"in i&&(this.Uv=!!i.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[he]:this.Uv}),this.gn=this.Wv(),this.startIfEnabledOrStop())}}onConfigChange(){this.gn=this.Wv()}captureException(t){var i,e,r,s=null!==(i=null==t||null==(e=t.$exception_list)||null==(e=e[0])?void 0:e.type)&&void 0!==i?i:"Exception";this.pe.consumeRateLimit(s)?ar.info("Skipping exception capture because of client rate limiting.",{exception:s}):null==(r=this._instance.exceptions)||r.sendExceptionEvent(t)}},exceptions:class{constructor(t){var i,r;this.Vv=[],this.Gv=new Pt([new Nt,new Gt,new Bt,new zt,new Kt,new Wt,new Ut,new Jt],function(t){for(var i=arguments.length,r=new Array(i>1?i-1:0),s=1;i>s;s++)r[s-1]=arguments[s];return function(i,s){void 0===s&&(s=0);for(var n=[],a=i.split("\n"),o=s;a.length>o;o++){var l=a[o];if(1024>=l.length){var u=Dt.test(l)?l.replace(Dt,"$1"):l;if(!u.match(/\S*Error: /)){for(var h of r){var v=h(u,t);if(v){n.push(v);break}}if(n.length>=50)break}}}return function(t){if(!t.length)return[];var i=Array.from(t);return i.reverse(),i.slice(0,50).map((t=>{return e({},t,{filename:t.filename||(r=i,r[r.length-1]||{}).filename,function:t.function||Ct});var r}))}(n)}}("web:javascript",It,Lt)),this._instance=t,this.Vv=null!==(i=null==(r=this._instance.persistence)?void 0:r.get_property(ve))&&void 0!==i?i:[],this.Zv=ti(this.Qv()),this.Jv=new ii(this.Zv)}onConfigChange(){this.Zv=ti(this.Qv()),this.Jv.setConfig(this.Zv)}onRemoteConfig(t){var i,e,r;if(t.ok){var s=t.config;if("errorTracking"in s){var n=null!==(i=null==(e=s.errorTracking)?void 0:e.suppressionRules)&&void 0!==i?i:[],a=null==(r=s.errorTracking)?void 0:r.captureExtensionExceptions;this.Vv=n,this._instance.persistence&&this._instance.persistence.register({[ve]:this.Vv,[de]:a})}}}get Kv(){var t,i=!!this._instance.get_property(de),e=this._instance.config.error_tracking.captureExtensionExceptions;return null!==(t=null!=e?e:i)&&void 0!==t&&t}buildProperties(t,i){return this.Gv.buildFromUnknown(t,{syntheticException:null==i?void 0:i.syntheticException,mechanism:{handled:null==i?void 0:i.handled}})}addExceptionStep(t,i){if(this.Zv.enabled)try{if(!P(t)||0===t.trim().length)return void gs.warn("Ignoring exception step because message must be a non-empty string");var r=function(t){if(!t)return{sanitizedProperties:{},droppedKeys:[]};var i=[];return{sanitizedProperties:Object.keys(t).reduce(((e,r)=>Qt.has(r)?(i.push(r),e):(e[r]=t[r],e)),{}),droppedKeys:i}}(this.Yv(i)),s=r.sanitizedProperties,n=r.droppedKeys;n.length>0&&gs.warn("Ignoring reserved exception step fields",{droppedKeys:n}),this.Jv.add(e({[Xt]:t,[Zt]:(new Date).toISOString()},s))}catch(t){gs.error("Failed to add exception step. Ignoring breadcrumb.",t)}}sendExceptionEvent(t){try{var i=t.$exception_list;if(this.Xv(i)){if(this.tc(i))return this.ec("Exception dropped: matched a suppression rule"),void gs.info("Skipping exception capture because a suppression rule matched");if(!this.Kv&&this.ic(i))return this.ec("Exception dropped: thrown by a browser extension"),void gs.info("Skipping exception capture because it was thrown by an extension");if(!this.Kv&&this.rc(i))return this.ec("Exception dropped: thrown by an injected browser script"),void gs.info("Skipping exception capture because it was thrown by an injected browser script");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.nc(i))return this.ec("Exception dropped: thrown by the PostHog SDK"),void gs.info("Skipping exception capture because it was thrown by the PostHog SDK")}var e=this.Zv.enabled&&A(t.$exception_steps)?this.sc(t):t,r="string"==typeof(n=globalThis._posthogReleaseId)&&n.length>0?n:void 0;r&&(e.$release_id=r);try{var s=this._instance.capture("$exception",e,{_noTruncate:!0,_batchKey:"exceptionEvent",_originatedFromCaptureException:!0});return s&&this.Jv.clear(),s}catch(t){return gs.error("Failed to capture exception event. Dropping this exception.",t),void this.Jv.clear()}}catch(t){return void gs.error("Failed to process exception event. Ignoring this exception.",t)}var n}sc(t){try{var i=this.Jv.getAttachable();return 0===i.length?t:e({},t,{$exception_steps:i})}catch(i){return gs.error("Failed to read buffered exception steps. Capturing exception without steps.",i),t}}ec(t){this.Zv.enabled&&this.Jv.add({[Xt]:t,[Zt]:(new Date).toISOString()})}Yv(t){return k(t)?e({},t):{}}Qv(){var t,i;return null!==(t=null==(i=this._instance.config.error_tracking)?void 0:i.exception_steps)&&void 0!==t?t:{}}tc(t){if(0===t.length)return!1;try{var i=t.reduce(((t,i)=>{var e=i.type,r=i.value;return P(e)&&e.length>0&&t.$exception_types.push(e),P(r)&&r.length>0&&t.$exception_values.push(r),t}),{$exception_types:[],$exception_values:[]});return this.Vv.some((t=>{var e=t.values.map((t=>{var e=Rr[t.operator],r=i[t.key];if(!e||!r)return!1;var s=S(t.value)?t.value:[t.value];return s.length>0&&e(s,r)}));return"OR"===t.type?e.some(Boolean):e.every(Boolean)}))}catch(t){return gs.warn("Failed to evaluate suppression rules. Capturing the exception.",t),!1}}ic(t){var i=t.flatMap((t=>{var i,e;return null!==(i=null==(e=t.stacktrace)?void 0:e.frames)&&void 0!==i?i:[]})),e=i.filter((t=>{var i=t.filename;return!!i&&bs.some((t=>i.startsWith(t)))}));return 0!==e.length&&(!e.every((t=>{var i=t.filename;return!!i&&i.startsWith(_s)}))||t.some((t=>{var i=t.value;return P(i)&&i.includes("isolatedAPI.contexts.topHostname")}))&&!i.some((t=>{var i=t.filename;return t.in_app&&!(null!=i&&i.startsWith(_s))})))}rc(t){return t.some((t=>{var i=t.value;return P(i)&&ms.some((t=>i.includes(t)))}))}nc(t){if(t.length>0){var i,e,r,s,n=null!==(i=null==(e=t[0].stacktrace)?void 0:e.frames)&&void 0!==i?i:[],a=n[n.length-1];return null!==(r=null==a||null==(s=a.filename)?void 0:s.includes("posthog.com/static"))&&void 0!==r&&r}return!1}Xv(t){return!A(t)&&S(t)}}},$s=e({productTours:class{get $o(){return this._instance.persistence}constructor(t){this.ac=null,this.oc=null,this._instance=t}initialize(){this.loadIfEnabled()}onRemoteConfig(t){if(t.ok){var i=t.config;if("productTours"in i){var e,r;if(this.$o&&this.$o.register({[fe]:!!i.productTours}),!Dr(this._instance))return!this.ac&&A(null==(e=this.$o)?void 0:e.props[Ie])||Lr.info("product tours disabled; stopping and clearing cached tours"),null==(r=this.ac)||r.stop(),this.ac=null,void this.clearCache();this.loadIfEnabled()}}}loadIfEnabled(){!this.ac&&Dr(this._instance)&&this.Ks((()=>this.lc()))}Ks(t){var i,e;null!=(i=er.__PosthogExtensions__)&&i.generateProductTours?t():null==(e=er.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"product-tours",(i=>{i?Lr.error("Could not load product tours script",i):t()}))}lc(){var t;!this.ac&&null!=(t=er.__PosthogExtensions__)&&t.generateProductTours&&(this.ac=er.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(t,i){if(void 0===i&&(i=!1),!S(this.oc)||i){var e=this.$o;if(e){var r=e.props[Ie];if(S(r)&&!i)return this.oc=r,void t(r,{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:i=>{if(Dr(this._instance)){var r=i.statusCode;if(200!==r||!i.json){var s="Product Tours API could not be loaded, status: "+r;return 0===r?i.error||Lr.warn(s):Lr.error(s),void t([],{isLoaded:!1,error:s})}var n=S(i.json.product_tours)?i.json.product_tours:[];this.oc=n,e&&e.register({[Ie]:n}),t(n,{isLoaded:!0})}else t([],{isLoaded:!0})}})}else t(this.oc,{isLoaded:!0})}getActiveProductTours(t){A(this.ac)?t([],{isLoaded:!1,error:"Product tours not loaded"}):this.ac.getActiveProductTours(t)}showProductTour(t){var i;null==(i=this.ac)||i.showTourById(t)}previewTour(t){this.ac?this.ac.previewTour(t):this.Ks((()=>{var i;this.lc(),null==(i=this.ac)||i.previewTour(t)}))}dismissProductTour(){var t;null==(t=this.ac)||t.dismissTour("user_clicked_skip")}nextStep(){var t;null==(t=this.ac)||t.nextStep()}previousStep(){var t;null==(t=this.ac)||t.previousStep()}clearCache(){var t;this.oc=null,null==(t=this.$o)||t.unregister(Ie)}resetTour(t){var i;null==(i=this.ac)||i.resetTour(t)}resetAllTours(){var t;null==(t=this.ac)||t.resetAllTours()}cancelPendingTour(t){var i;null==(i=this.ac)||i.cancelPendingTour(t)}}},Rs),js={siteApps:class{constructor(t){this.uc=0,this._instance=t,this.hc=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}dc(t,i){if(i){var e=this.globalsForEvent(i);this.hc.push(e),this.hc.length>1e3&&(this.hc=this.hc.slice(10))}}get siteAppLoaders(){var t;return null==(t=er._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.siteApps}initialize(){if(this.isEnabled){var t=this._instance._addCaptureHook(this.dc.bind(this));this.vc=()=>{t(),this.hc=[],this.vc=void 0}}}globalsForEvent(t){var i,r,s,n,a,o,l;if(!t)throw new Error("Event payload is required");var u={},h=this._instance.get_property("$groups")||[],v=this._instance.get_property("$stored_group_properties")||{};for(var d of Object.entries(v)){var c=d[0];u[c]={id:h[c],type:c,properties:d[1]}}var f=t.$set_once,p=t.$set;return{event:e({},function(t,i){if(null==t)return{};var e={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(-1!==i.indexOf(r))continue;e[r]=t[r]}return e}(t,Nr),{properties:e({},t.properties,p?{$set:e({},null!==(i=null==(r=t.properties)?void 0:r.$set)&&void 0!==i?i:{},p)}:{},f?{$set_once:e({},null!==(s=null==(n=t.properties)?void 0:n.$set_once)&&void 0!==s?s:{},f)}:{}),elements_chain:null!==(a=null==(o=t.properties)?void 0:o.$elements_chain)&&void 0!==a?a:"",distinct_id:null==(l=t.properties)?void 0:l.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:u}}cc(t){var i,e=null==(i=t.tagName)?void 0:i.toLowerCase();return"style"===e&&this._instance.config.prepare_external_dependency_stylesheet?this._instance.config.prepare_external_dependency_stylesheet(t)||(zr.error("prepare_external_dependency_stylesheet returned null"),null):"script"===e&&this._instance.config.prepare_external_dependency_script?this._instance.config.prepare_external_dependency_script(t)||(zr.error("prepare_external_dependency_script returned null"),null):t}fc(){var t,i,e,r,s,n,a,o;if(!this._instance.config.prepare_external_dependency_stylesheet&&!this._instance.config.prepare_external_dependency_script)return()=>{};var l=null==oi?void 0:oi.defaultView,u=null==l||null==(t=l.Node)?void 0:t.prototype;if(!l||!u)return()=>{};if(this.uc++,this.gc)return this.mc();var h=[],v=this,d=new WeakSet,c=(t,i,e)=>{if(null!=t&&t[i]){var r=t[i];t[i]=e(r),h.push((()=>{t[i]=r}))}},f=t=>{if(d.has(t))return t;var i=v.cc(t);return i&&d.add(i),i},p=t=>t.map((t=>"string"==typeof t?t:f(t))).filter((t=>!T(t)));return c(u,"appendChild",(t=>function(i){var e=f(i);return e?t.call(this,e):i})),c(u,"insertBefore",(t=>function(i,e){var r=f(i);return r?t.call(this,r,e):i})),c(u,"replaceChild",(t=>function(i,e){var r=f(i);return r?t.call(this,r,e):e})),[null==(i=l.Element)?void 0:i.prototype,null==(e=l.Document)?void 0:e.prototype,null==(r=l.DocumentFragment)?void 0:r.prototype].forEach((t=>{c(t,"append",(t=>function(){for(var i=arguments.length,e=new Array(i),r=0;i>r;r++)e[r]=arguments[r];return t.apply(this,p(e))})),c(t,"prepend",(t=>function(){for(var i=arguments.length,e=new Array(i),r=0;i>r;r++)e[r]=arguments[r];return t.apply(this,p(e))}))})),[null==(s=l.Element)?void 0:s.prototype,null==(n=l.CharacterData)?void 0:n.prototype,null==(a=l.DocumentType)?void 0:a.prototype].forEach((t=>{c(t,"before",(t=>function(){for(var i=arguments.length,e=new Array(i),r=0;i>r;r++)e[r]=arguments[r];return t.apply(this,p(e))})),c(t,"after",(t=>function(){for(var i=arguments.length,e=new Array(i),r=0;i>r;r++)e[r]=arguments[r];return t.apply(this,p(e))})),c(t,"replaceWith",(t=>function(){for(var i=arguments.length,e=new Array(i),r=0;i>r;r++)e[r]=arguments[r];var s=p(e);return e.length&&!s.length?void 0:t.apply(this,s)}))})),c(null==(o=l.Element)?void 0:o.prototype,"insertAdjacentElement",(t=>function(i,e){var r=f(e);return r?t.call(this,i,r):null})),this.gc=()=>{h.forEach((t=>t())),this.gc=void 0},this.mc()}mc(){var t=!1;return()=>{var i;t||(t=!0,this.uc--,0===this.uc&&(null==(i=this.gc)||i.call(this)))}}yc(t,i){void 0===i&&(i=!0);var e=this.fc();try{var r=t(e);return i&&e(),r}catch(t){throw e(),t}}setupSiteApp(t){var i=this.apps[t.id],e=()=>{var e;!i.errored&&this.hc.length&&(zr.info("Processing "+this.hc.length+" events for site app with id "+t.id),this.hc.forEach((t=>this.yc((()=>null==i.processEvent?void 0:i.processEvent(t))))),i.processedBuffer=!0),Object.values(this.apps).every((t=>t.processedBuffer||t.errored))&&(null==(e=this.vc)||e.call(this))},r=!1,s=s=>{i.errored=!s,i.loaded=!0,zr.info("Site app with id "+t.id+" "+(s?"loaded":"errored")),r&&e()};try{var n=this.yc((i=>t.init({posthog:this._instance,callback(t){i(),s(t)}})),!1).processEvent;n&&(i.processEvent=n),r=!0}catch(i){zr.error(Br+t.id,i),s(!1)}if(r&&i.loaded)try{e()}catch(e){zr.error("Error while processing buffered events PostHog app with config id "+t.id,e),i.errored=!0}}bc(){var t=this.siteAppLoaders||[];for(var i of t)this.apps[i.id]={id:i.id,loaded:!1,errored:!1,processedBuffer:!1};for(var e of t)this.setupSiteApp(e)}_c(t){var i=this;if(0!==Object.keys(this.apps).length){var e=this.globalsForEvent(t),r=function(r){try{i.yc((()=>null==r.processEvent?void 0:r.processEvent(e)))}catch(i){zr.error("Error while processing event "+t.event+" for site app "+r.id,i)}};for(var s of Object.values(this.apps))r(s)}}onRemoteConfig(t){var i,e,r,s=this;if(null!=(i=this.siteAppLoaders)&&i.length)return this.isEnabled?(this.bc(),void this._instance.on("eventCaptured",(t=>this._c(t)))):void zr.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if(null==(e=this.vc)||e.call(this),t.ok){var n=t.config;if(null!=(r=n.siteApps)&&r.length)if(this.isEnabled){var a=function(){var t,i=o.id,e=o.url;er["__$$ph_site_app_"+i]=s._instance,null==(t=er.__PosthogExtensions__)||null==t.loadSiteApp||t.loadSiteApp(s._instance,e,(t=>{if(t)return zr.error(Br+i,t)}))};for(var o of n.siteApps)a()}else zr.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}}}},Ls={tracingHeaders:class{constructor(t){this.wc=void 0,this.kc=void 0,this.Sc=void 0,this.$v=()=>{var t,i,e=this.xc();e?(F(this.wc)&&(this.wc=null==(t=er.__PosthogExtensions__)||null==(t=t.tracingHeadersPatchFns)?void 0:t._patchXHR(e,(()=>this._instance.get_distinct_id()),this._instance.sessionManager)),F(this.kc)&&(this.kc=null==(i=er.__PosthogExtensions__)||null==(i=i.tracingHeadersPatchFns)?void 0:i._patchFetch(e,(()=>this._instance.get_distinct_id()),this._instance.sessionManager))):this.zv()},this._instance=t}initialize(){this.startIfEnabledOrStop()}Ks(t){var i,e;null!=(i=er.__PosthogExtensions__)&&i.tracingHeadersPatchFns?t():null==(e=er.__PosthogExtensions__)||null==e.loadExternalDependency||e.loadExternalDependency(this._instance,"tracing-headers",(i=>{if(i)return hr.error("failed to load script",i);t()}))}Cc(){var t,i;return null!==(t=null!==(i=this._instance.config.tracing_headers)&&void 0!==i?i:this._instance.config.addTracingHeaders)&&void 0!==t?t:this._instance.config.__add_tracing_headers}xc(){var t=this.Cc();return S(t)?(S(this.Sc)?this.Sc.splice(0,this.Sc.length,...t):this.Sc=[...t],t.length>0?this.Sc:void 0):(S(this.Sc)&&this.Sc.splice(0),this.Sc=t||void 0,this.Sc)}zv(){var t,i;null==(t=this.wc)||t.call(this),null==(i=this.kc)||i.call(this),this.wc=void 0,this.kc=void 0}startIfEnabledOrStop(){this.xc()?this.Ks(this.$v):this.zv()}}},Ds=e({surveys:class extends Zr{constructor(t){var i;super(new ss(t),{get projectToken(){return i.config.token},kv:new rs(i=t)}),this._instance=t}Ou(t,i){var r=i.query?function(t,i,r){var s;void 0===r&&(r=!0);var n=t.split("?"),a=n[0],o=n[1],l=e({},i),u=null!==(s=null==o?void 0:o.split("&").map((t=>{var i,e=t.split("="),s=e[0],n=r&&null!==(i=l[s])&&void 0!==i?i:e[1];return delete l[s],s+"="+n})))&&void 0!==s?s:[],h=function(t,i){var e,r;void 0===i&&(i="&");var s=[];return ci(t,(function(t,i){F(t)||F(i)||"undefined"===i||(e=encodeURIComponent(t instanceof File?t.name:t.toString()),r=encodeURIComponent(i),s[s.length]=r+"="+e)})),s.join(i)}(l);return h&&u.push(h),u.length>0?a+"?"+u.join("&"):a}(t,i.query):t;return new Promise((t=>{var e;this._instance._send_request({method:i.method,url:this._instance.requestRouter.endpointFor(null!==(e=i.target)&&void 0!==e?e:"api",r),data:i.body,headers:i.headers,timeout:i.timeoutMs,fireCallbackOnDrop:!0,transport:i.transport,compression:i.compression,timestampMode:i.sentAt,callback:t})}))}}},Rs),Ns={toolbar:class{constructor(t){this.instance=t}Tc(t){er.ph_toolbar_state=t}Mc(){var t;return null!==(t=er.ph_toolbar_state)&&void 0!==t?t:0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(t,i,e){if(void 0===t&&(t=void 0),void 0===i&&(i=void 0),void 0===e&&(e=void 0),bi(this.instance.config))return!1;if(!si||!oi)return!1;t=null!=t?t:si.location,e=null!=e?e:si.history;try{if(!i){try{si.localStorage.setItem("test","test"),si.localStorage.removeItem("test")}catch(t){return!1}i=null==si?void 0:si.localStorage}var r,s=ns||qe(t.hash,"__posthog")||qe(t.hash,"state"),n=s?gi((()=>JSON.parse(atob(decodeURIComponent(s)))))||gi((()=>JSON.parse(decodeURIComponent(s)))):null;return n&&"ph_authorize"===n.action?((r=n).source="url",r&&Object.keys(r).length>0&&(n.desiredHash?t.hash=n.desiredHash:e?e.replaceState(e.state,"",t.pathname+t.search):t.hash="")):((r=JSON.parse(i.getItem(as)||"{}")).source="localstorage",delete r.userIntent),!(!r.token||this.instance.config.token!==r.token||(this.loadToolbar(r),0))}catch(t){return!1}}Ec(t){var i=er.ph_load_toolbar||er.ph_load_editor;!A(i)&&x(i)?i(t,this.instance):os.warn("No toolbar load function found")}loadToolbar(t){var i=!(null==oi||!oi.getElementById(yi));if(!si||i)return!1;var r="custom"===this.instance.requestRouter.region&&this.instance.config.advanced_disable_toolbar_metrics,s=e({token:this.instance.config.token},t,{apiURL:this.instance.requestRouter.endpointFor("ui")},r?{instrument:!1}:{});if(si.localStorage.setItem(as,JSON.stringify(e({},s,{source:void 0}))),2===this.Mc())this.Ec(s);else if(0===this.Mc()){var n;this.Tc(1),null==(n=er.__PosthogExtensions__)||null==n.loadExternalDependency||n.loadExternalDependency(this.instance,"toolbar",(t=>{if(t)return os.error("[Toolbar] Failed to load",t),void this.Tc(0);this.Tc(2),this.Ec(s)})),_i(si,"turbolinks:load",(()=>{this.Tc(0),this.loadToolbar(s)}))}return!0}Ic(t){return this.loadToolbar(t)}maybeLoadEditor(t,i,e){return void 0===t&&(t=void 0),void 0===i&&(i=void 0),void 0===e&&(e=void 0),this.maybeLoadToolbar(t,i,e)}}},zs=e({experiments:Ss},Rs),Bs={conversations:class{constructor(t){this.Rc=void 0,this._conversationsManager=null,this.Pc=!1,this.je=null,this.Ac=!1,this._instance=t}initialize(){this.loadIfEnabled()}onRemoteConfig(t){if(!this._instance.config.disable_conversations&&(this.Fc=t.ok,t.ok)){var i=t.config.conversations;A(i)||(O(i)?this.Rc=i:(this.Rc=i.enabled,this.je=i),this.loadIfEnabled())}}reset(){var t;null==(t=this._conversationsManager)||t.reset(),this._conversationsManager=null,this.Rc=void 0,this.je=null,this.Fc=void 0,this.Ac=!1}loadIfEnabled(){if(!(this._conversationsManager||this.Pc||this._instance.config.disable_conversations||bi(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var t=null==er?void 0:er.__PosthogExtensions__;if(t&&!F(this.Rc)&&this.Rc)if(this.je&&this.je.token){this.Pc=!0;try{var i=t.initConversations;if(i)return this.Oc(i),void(this.Pc=!1);var e=t.loadExternalDependency;if(!e)return void this.Lc(ze);e(this._instance,"conversations",(i=>{i||!t.initConversations?this.Lc("Could not load conversations script",i):this.Oc(t.initConversations),this.Pc=!1}))}catch(t){this.Lc("Error initializing conversations",t),this.Pc=!1}}else xs.error("Conversations enabled but missing token in remote config.")}}Oc(t){if(this.je)try{this._conversationsManager=t(this.je,this._instance),this.Ac=!1,xs.info("Conversations loaded successfully")}catch(t){this.Lc("Error completing conversations initialization",t)}else xs.error("Cannot complete initialization: remote config is null")}Lc(t,i){xs.error(t,i),this._conversationsManager=null,this.Pc=!1,this.Ac=!0}show(){this._conversationsManager?this._conversationsManager.show():xs.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return!0===this.Rc&&!T(this._conversationsManager)}getUnavailableReason(){return this.isAvailable()?null:this._instance.config.disable_conversations?"disabled_by_config":bi(this._instance.config)?"disabled_for_toolbar":this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut()?"consent_opted_out":!1===this.Fc?"remote_config_failed":F(this.Rc)?this.Fc?"disabled_in_project":"remote_config_pending":this.Rc?A(this.je)||!this.je.token?"missing_token":null!=er&&er.__PosthogExtensions__?this.Pc?"initializing":this.Ac?"load_failed":"not_loaded":"extensions_unavailable":"disabled_in_project"}isVisible(){var t,i;return null!==(t=null==(i=this._conversationsManager)?void 0:i.isVisible())&&void 0!==t&&t}sendMessage(t,e,r){var s=this;return i((function*(){return s._conversationsManager?s._conversationsManager.sendMessage(t,e,r):(xs.warn(ks),null)}))()}getMessages(t,e){var r=this;return i((function*(){return r._conversationsManager?r._conversationsManager.getMessages(t,e):(xs.warn(ks),null)}))()}markAsRead(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.markAsRead(t):(xs.warn(ks),null)}))()}getTickets(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.getTickets(t):(xs.warn(ks),null)}))()}requestRestoreLink(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.requestRestoreLink(t):(xs.warn(ks),null)}))()}restoreFromToken(t){var e=this;return i((function*(){return e._conversationsManager?e._conversationsManager.restoreFromToken(t):(xs.warn(ks),null)}))()}restoreFromUrlToken(){var t=this;return i((function*(){return t._conversationsManager?t._conversationsManager.restoreFromUrlToken():(xs.warn(ks),null)}))()}getCurrentTicketId(){var t,i;return null!==(t=null==(i=this._conversationsManager)?void 0:i.getCurrentTicketId())&&void 0!==t?t:null}getWidgetSessionId(){var t,i;return null!==(t=null==(i=this._conversationsManager)?void 0:i.getWidgetSessionId())&&void 0!==t?t:null}_onIdentityChanged(){var t;null==(t=this._conversationsManager)||t.setIdentity()}_onIdentityCleared(){var t;null==(t=this._conversationsManager)||t.clearIdentity()}}},Hs={logs:class{constructor(t){var i,r=this;this.name="logs",this.Dc=!1,this.$c=!1,this.Nc=!1,this.A=di("[logs]"),this.qc=e({},this.A,{error(){for(var t=arguments.length,i=new Array(t),e=0;t>e;e++)i[e]=arguments[e];i.some(As)||r.A.error(...i)}}),this.fo=[],this.jc=[],this.vd=0,this.Fs=!1,this.Bc=[],this.Hc=[],this.zc=!1,this.Uc=!1,this.Wc=()=>{var t,i;this.Fs||(this.vd=0,null==(t=this.Vc)||t.onReconnect(),null==(i=this.Gc)||i.onReconnect())},this._instance=t,this._instance&&null!=(i=this._instance.config.logs)&&i.captureConsoleLogs&&(this.Dc=!0),si&&_i(si,"online",this.Wc)}Zc(t,i,e,r){var s,n=Es(null==(s=this._instance)||null==(s=s.config)?void 0:s.logs,e);return[new bt(this.Qc(t,i),n,this.qc,(()=>this.Jc()),(t=>t()),void 0,r),n]}Kc(){var t,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.Vc||this.Yc!==i){var e;null==(e=this.Vc)||e.reset(),this.Yc=i;var r=this.Zc((()=>this.fo),(t=>{this.fo=t}));this.Vc=r[0],this.Xc=r[1]}return this.Vc}tf(){var t,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.Gc||this.ef!==i){var e;null==(e=this.Gc)||e.reset(),this.ef=i;var r=this.Zc((()=>this.jc),(t=>{this.jc=t}),{serviceNameDefault:"posthog-browser-logs",consoleCapture:!0},Ps);this.Gc=r[0],this.if=r[1]}return this.Gc}setup(t){var i;if(!this.Fs){this.$s=t,null!=(i=this._instance)&&null!=(i=i.config)&&null!=(i=i.logs)&&i.captureConsoleLogs&&(this.Dc=!0),(this.Dc||this.rf()&&this.nf())&&this.sf();var e=!1,r=t.onRemoteConfig((t=>{var i;e=t.ok&&!0===(null==(i=t.config.logs)?void 0:i.captureConsoleLogs),this.onRemoteConfig(t)}));this.Fs?r.dispose():(this.Ns=r,e||this.loadIfEnabled())}}dispose(){var t,i,e,r;this.Fs||(this.Fs=!0,this.af(),null==(t=this.Ns)||t.dispose(),this.Ns=void 0,this.$s=void 0,this.Nc=!1,null==si||si.removeEventListener("online",this.Wc),null==(i=this.lf)||i.call(this),this.lf=void 0,null==(e=this.Vc)||e.reset(),null==(r=this.Gc)||r.reset())}onRemoteConfig(t){var i,e;if(!this.Fs){var r=t.ok?null==(i=t.config.logs)?void 0:i.captureConsoleLogs:void 0;A(r)?this.uf():(null==(e=this._instance)||null==(e=e.persistence)||e.register({[pe]:!!r}),r?(this.Dc=!0,this.$c||this.sf(),this.loadIfEnabled()):this.uf())}}reset(){var t,i,e,r;this.af(),null==(t=this.Vc)||t.clearQueue(),this.fo=[],null==(i=this.Vc)||i.reset(),null==(e=this.Gc)||e.clearQueue(),this.jc=[],null==(r=this.Gc)||r.reset(),this.vd=0}captureLog(t){this.Fs||this.Kc().captureLog(t)}captureConsoleLog(t){this.Fs||this.tf().captureLog(t)}captureBufferedConsoleLog(t,i,e){this.Fs||this.tf().captureLog(t,{context:i,occurredAtMs:e})}nf(){var t;return!(null==(t=this._instance)||null==(t=t.persistence)||null==(t=t.props)||!t[pe])}rf(){var t,i;return null==(t=this._instance)||null==t._shouldDisableFlags||!t._shouldDisableFlags()||!(null==(i=er._POSTHOG_REMOTE_CONFIG)||null==(i=i[this._instance.config.token])||!i.config)}_onOptOut(){var t;this.af(),null==(t=this.Gc)||t.clearQueue(),this.jc=[]}uf(){this.Dc||this.af()}sf(){var t,i=this;if(!this.zc&&null!=er&&er.console){var e=Es(null==(t=this._instance)||null==(t=t.config)?void 0:t.logs).maxBufferSize,r=function(t){var r;try{r=(t=>{for(;null!=(i=t)&&i.__rrweb_original__;){var i;t=t.__rrweb_original__}return t})(er.console[t])}catch(t){return 0}if(!r)return 0;i.Hc.push(ur(er.console,t,(s=>{var n=function(){for(var r=arguments.length,n=new Array(r),a=0;r>a;a++)n[a]=arguments[a];try{i.hf(t,n,e)}catch(t){}return s.apply(er.console,n)};return n.__rrweb_original__=r,n})))};for(var s of Fs)r(s);this.zc=!0,this.df=setTimeout((()=>{this.af()}),3e4)}}hf(t,i,e){var r;if(this.zc&&!this.Uc&&0!==i.length)if(null!=(r=this._instance)&&r.is_capturing()){if(e>this.Bc.length){this.Uc=!0;try{this.Bc.push({level:t,args:i,occurredAtMs:Date.now(),context:this.Jc()})}finally{this.Uc=!1}}}else this.af()}af(){if(this.Bc=[],this.zc){for(var t of(this.zc=!1,this.df&&(clearTimeout(this.df),this.df=void 0),this.Hc))t();this.Hc=[]}}vf(){var t=this.Bc;return this.af(),t}get logger(){return this.cf||(this.cf={trace:(t,i)=>this.captureLog({body:t,level:"trace",attributes:i}),debug:(t,i)=>this.captureLog({body:t,level:"debug",attributes:i}),info:(t,i)=>this.captureLog({body:t,level:"info",attributes:i}),warn:(t,i)=>this.captureLog({body:t,level:"warn",attributes:i}),error:(t,i)=>this.captureLog({body:t,level:"error",attributes:i}),fatal:(t,i)=>this.captureLog({body:t,level:"fatal",attributes:i})}),this.cf}flushLogs(t){t?this.ff(t):(this.Vc&&this.Vc.flush().catch((t=>this.pf(t))),this.Gc&&this.Gc.flush().catch((t=>this.pf(t))))}pf(t){As(t)||this.A.error("PostHog logs flush failed:",t)}loadIfEnabled(){if(!this.Fs&&this.Dc&&!this.$c&&!this.Nc){var t=null==er?void 0:er.__PosthogExtensions__;if(!t)return this.A.error("PostHog Extensions not found."),void this.af();var i=t.loadExternalDependency;if(!i)return this.A.error(ze),void this.af();this.Nc=!0;try{i(this._instance,"logs",(i=>{if(this.Nc=!1,!this.Fs&&this.Dc){var e=t.logs;if(i||null==e||!e.initializeLogs)this.A.error("Could not load logs script",i),this.af();else{var r,s,n=this.vf();this.lf=e.initializeLogs(null!==(r=this.$s)&&void 0!==r?r:this._instance),this.$c=!0,n.length>0&&(null==e.replayConsoleBuffer||e.replayConsoleBuffer(null!==(s=this.$s)&&void 0!==s?s:this._instance,n))}}}))}catch(t){throw this.Nc=!1,t}}}Qc(t,i){var e=this._instance;return{get isDisabled(){return!1},get optedOut(){return!e.is_capturing()},getPersistedProperty:i=>i===a.LogsQueue?t():void 0,setPersistedProperty(t,e){var r;t===a.LogsQueue&&i(null!==(r=e)&&void 0!==r?r:[])},ss:t=>this.ss(t),getLibraryId:()=>ri.LIB_NAME,getLibraryVersion:()=>ri.LIB_VERSION}}ss(t){return new Promise((i=>{if(We(this.vd,3))i({kind:"fatal",error:Ts(void 0,"logs endpoint is unreachable, dropping batch")});else{var e=!1,r=t=>{e||(e=!0,clearTimeout(s),i(t))},s=setTimeout((()=>{this.A.warn("Logs request timed out before receiving a response"),r({kind:"retry-later",error:Ts(void 0,"logs request timed out")})}),9e4);this._instance._send_request({method:"POST",url:this.gf(),data:t,compression:"best-available",batchKey:"logs",fireCallbackOnDrop:!0,callback:t=>{var i=t.statusCode;if(this.mf(i),i>=200&&300>i)r({kind:"ok"});else if(413===i)r({kind:"too-large"});else if(0!==i&&408!==i&&429!==i&&500>i)r({kind:"fatal",error:new Error("logs request failed with status "+i)});else{var e;0===i?(t.error||this.A.warn("Logs request failed before receiving an HTTP response"),r({kind:"retry-later",error:Ts(t.error,"logs request failed before receiving an HTTP response")})):r({kind:"retry-later",error:null!==(e=t.error)&&void 0!==e?e:new Error("logs request failed with status "+i)})}}})}}))}mf(t){(0!==t||this._instance.__loaded)&&(this.vd=Ke(t,this.vd,3,(()=>this.A.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."))))}ff(t){this.fo.length>0&&this.yf(t,this.fo,this.Xc,ri.LIB_NAME,(t=>{this.fo=t})),this.jc.length>0&&this.yf(t,this.jc,this.if,Ps,(t=>{this.jc=t}))}yf(t,i,e,r,s){if(0!==i.length){var n=i.map((t=>t.record));s([]);var a=_t(n,gt(e,ri.LIB_NAME,ri.LIB_VERSION),r,ri.LIB_VERSION);this._instance._send_request({method:"POST",url:this.gf(),data:a,compression:"best-available",batchKey:"logs",transport:t})}}gf(){return this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token)}Jc(){var t,i={};if(i.distinctId=this._instance.get_distinct_id(),this._instance.sessionManager){var e=this._instance.sessionManager.checkAndGetSessionAndWindowId(!0),r=e.windowId,s=e.sessionStartTimestamp,n=e.lastActivityTimestamp;i.sessionId=e.sessionId,i.windowId=r,A(s)||(i.sessionStartTimestamp=s),A(n)||(i.lastActivityTimestamp=n)}if(null!=er&&null!=(t=er.location)&&t.href&&(i.currentUrl=this._instance.config.disable_capture_url_hashes?Y(er.location.href):er.location.href),this._instance.featureFlags){var a=this._instance.featureFlags.getFlags();a&&a.length>0&&(i.activeFeatureFlags=a)}return i}}},Us={metrics:class{constructor(t){this.A=di("[metrics]"),this._instance=t}initialize(){}Kc(){var t,i,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.metrics;return this.Vc&&this.Yc===e||(null==(i=this.Vc)||i.reset(),this.Yc=e,this.Vc=new St(this.Qc(),function(t){var i,e,r,s,n,a=null==t?void 0:t.resourceAttributes;return{serviceName:null!==(i=null==a?void 0:a["service.name"])&&void 0!==i?i:null==t?void 0:t.serviceName,serviceVersion:null!==(e=null==a?void 0:a["service.version"])&&void 0!==e?e:null==t?void 0:t.serviceVersion,environment:null!==(r=null==a?void 0:a["deployment.environment"])&&void 0!==r?r:null==t?void 0:t.environment,resourceAttributes:a,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:null!==(s=null==t?void 0:t.flushIntervalMs)&&void 0!==s?s:1e4,maxSeriesPerFlush:null!==(n=null==t?void 0:t.maxSeriesPerFlush)&&void 0!==n?n:1e3}}(e),this.A)),this.Vc}count(t,i,e){void 0===i&&(i=1),this.Kc().count(t,i,e)}gauge(t,i,e){this.Kc().gauge(t,i,e)}histogram(t,i,e){this.Kc().histogram(t,i,e)}flush(t){if(!this.Vc)return Promise.resolve();if(t){var i=this.Vc.drainWindow();return i&&this.Ss(i,t),Promise.resolve()}return this.Vc.flush().catch((t=>this.A.error("PostHog metrics flush failed:",t)))}reset(){var t;null==(t=this.Vc)||t.reset()}Qc(){var t=this._instance,i=this;return{get isDisabled(){return!1},get optedOut(){return!t.is_capturing()},Ss:t=>i.Ss(t),getLibraryId:()=>ri.LIB_NAME,getLibraryVersion:()=>ri.LIB_VERSION}}Ss(t,i){return new Promise((r=>{var s=!1,n=t=>{s||(s=!0,clearTimeout(a),r(t))},a=setTimeout((()=>n({kind:"retry-later",error:new Error("metrics request timed out")})),9e4);this._instance._send_request(e({method:"POST",url:this.bf(),data:t,compression:"best-available",batchKey:"metrics"},i&&{transport:i},{fireCallbackOnDrop:!0,callback(t){var i=t.statusCode;if(i>=200&&300>i)n({kind:"ok"});else if(413===i)n({kind:"too-large"});else if(0!==i&&408!==i&&429!==i&&500>i)n({kind:"fatal",error:new Error("metrics request failed with status "+i)});else{var e;n({kind:"retry-later",error:null!==(e=t.error)&&void 0!==e?e:new Error("metrics request failed with status "+i)})}}}))}))}bf(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}},Vs=e({},Rs,Os,Ms,Is,$s,js,Ds,Ls,Ns,zs,Bs,Hs,Us),qs=Rs,Ws=Os,Ks=Ms,Js=Is,Gs=$s,Xs=js,Zs=Ds,Qs=Ls,Ys=Ns,tn=zs,en=Bs,rn=Hs,sn=Us;export{Vs as AllExtensions,Ks as AnalyticsExtensions,en as ConversationsExtensions,Js as ErrorTrackingExtensions,tn as ExperimentsExtensions,qs as FeatureFlagsExtensions,rn as LogsExtensions,sn as MetricsExtensions,Gs as ProductToursExtensions,Ws as SessionReplayExtensions,Xs as SiteAppsExtensions,Zs as SurveysExtensions,Ys as ToolbarExtensions,Qs as TracingExtensions};
//# sourceMappingURL=extension-bundles.js.map